/* BRITO WEB VISUAL SYSTEM · V11.3 CIERRE VISUAL
   Capa puramente visual. No modifica lógica de Editor, Instrumental, Comunidad, MiBrito o Media. */
:root{
  --brito-navy:#0B2D48;
  --brito-navy-2:#123E5B;
  --brito-teal:#0CA89D;
  --brito-teal-dark:#087F88;
  --brito-cyan:#22B8CF;
  --brito-coral:#F05F78;
  --brito-orange:#F59E40;
  --brito-violet:#7C63C7;
  --brito-paper:#FFFCF8;
  --brito-mist:#F3FAF8;
  --brito-ink:#15384B;
  --brito-muted:#657C86;
  --brito-line:#D8E7E3;
  --brito-shadow:0 16px 44px rgba(11,45,72,.09);
  --brito-shadow-soft:0 8px 24px rgba(11,45,72,.07);
  --brito-ui:"Manrope",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --brito-display:"DM Serif Display",Georgia,"Times New Roman",serif;
}
html{scroll-behavior:smooth}
body.brito-page{font-family:var(--brito-ui)}
body.brito-page button,body.brito-page input,body.brito-page select,body.brito-page textarea{font-family:var(--brito-ui)}
body.brito-page *{text-rendering:optimizeLegibility}
body.brito-page a:focus-visible,body.brito-page button:focus-visible,body.brito-page input:focus-visible,body.brito-page select:focus-visible,body.brito-page textarea:focus-visible{outline:3px solid rgba(12,168,157,.22);outline-offset:2px}

/* ---------------- HOME ---------------- */
body.brito-index{background:
  radial-gradient(circle at 8% 3%,rgba(12,168,157,.07),transparent 22rem),
  radial-gradient(circle at 92% 8%,rgba(124,99,199,.06),transparent 22rem),
  var(--brito-paper)!important;color:var(--brito-navy)!important}
body.brito-index .nav{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-cyan),var(--brito-violet)) 1!important;background:rgba(255,252,248,.94)!important;box-shadow:0 8px 28px rgba(11,45,72,.045)!important}
body.brito-index .nav-links a{position:relative}
body.brito-index .nav-links a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--brito-teal),var(--brito-violet));transition:right .2s ease}
body.brito-index .nav-links a:not(.nav-cta):hover:after{right:0}
body.brito-index .hero{padding:56px 0 58px!important;background:
  radial-gradient(circle at 83% 38%,rgba(12,168,157,.10),transparent 23rem),
  radial-gradient(circle at 76% 42%,rgba(124,99,199,.08),transparent 30rem),
  linear-gradient(180deg,#fffdfa 0%,#fffaf6 62%,#f6fcfa 100%)!important}
body.brito-index .hero:before{content:"♪  ♫  ✦";position:absolute;left:3.5%;bottom:76px;font:800 22px/1 var(--brito-ui);letter-spacing:20px;color:rgba(12,168,157,.12);transform:rotate(-8deg);pointer-events:none}
body.brito-index .hero:after{height:92px!important;opacity:.78}
body.brito-index .hero-grid{grid-template-columns:minmax(0,1fr) minmax(390px,.9fr)!important;gap:56px!important}
body.brito-index .hero h1,body.brito-index section h2{font-family:var(--brito-display)!important;font-weight:400!important}
body.brito-index .hero h1{font-size:clamp(64px,7vw,94px)!important;line-height:.91!important;letter-spacing:-.035em!important}
body.brito-index .hero-lead{font-size:16.5px!important;max-width:570px!important}
body.brito-index .hero-actions .btn{min-height:50px!important;padding:0 19px!important;border-radius:14px!important}
body.brito-index .hero-actions .btn-primary{background:linear-gradient(135deg,#078d8e,#0bb8a7)!important;box-shadow:0 11px 25px rgba(12,168,157,.22)!important}
body.brito-index .hero-actions .btn-primary:before{content:"▶";font-size:10px;margin-right:7px}
body.brito-index .hero-actions .btn-secondary:nth-child(2):before{content:"↗";font-size:15px;margin-right:7px;color:var(--brito-teal)}
body.brito-index .hero-actions .btn-secondary:nth-child(3):before{content:"♫";font-size:14px;margin-right:7px;color:var(--brito-violet)}
body.brito-index .photoSupportCard{border-radius:18px!important;background:linear-gradient(135deg,rgba(236,250,247,.92),rgba(255,250,246,.92))!important;border:1px solid #d3e7e2!important;box-shadow:var(--brito-shadow-soft)!important}

/* Hero product presentation */
body.brito-index .hero-real-stage{position:relative!important;min-height:610px!important;display:grid!important;place-items:center!important;isolation:isolate!important;padding:28px!important;border-radius:38px!important;background:
  radial-gradient(circle at 32% 20%,rgba(255,255,255,.95) 0 5%,transparent 6%),
  radial-gradient(circle at 70% 16%,rgba(245,158,64,.16),transparent 16%),
  radial-gradient(circle at 15% 72%,rgba(240,95,120,.13),transparent 20%),
  radial-gradient(circle at 82% 73%,rgba(124,99,199,.16),transparent 22%),
  linear-gradient(145deg,#eafaf7 0%,#f8fbff 44%,#f7f1ff 72%,#fff4ef 100%)!important;
  border:1px solid rgba(11,45,72,.08)!important;box-shadow:0 25px 70px rgba(11,45,72,.12)!important;overflow:hidden!important}
body.brito-index .hero-real-stage:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:1px solid rgba(12,168,157,.18);box-shadow:0 0 0 32px rgba(12,168,157,.035),0 0 0 70px rgba(124,99,199,.025);z-index:-1}
body.brito-index .hero-real-stage:after{content:"♪";position:absolute;right:25px;top:27px;font:900 46px/1 var(--brito-ui);color:rgba(124,99,199,.18);transform:rotate(10deg)}
body.brito-index .hero-device{position:relative;width:min(292px,78vw);padding:10px 9px 12px;border-radius:46px;background:linear-gradient(155deg,#101b22,#25343b 58%,#0b1419);box-shadow:0 33px 55px rgba(10,33,45,.28),inset 0 0 0 1px rgba(255,255,255,.13);transform:rotate(1.4deg);z-index:3}
body.brito-index .hero-device:before{content:"";position:absolute;top:11px;left:50%;transform:translateX(-50%);width:78px;height:20px;border-radius:0 0 15px 15px;background:#10191e;z-index:5;box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)}
body.brito-index .hero-real-shot{display:block!important;width:100%!important;height:auto!important;max-height:none!important;border:0!important;border-radius:37px!important;box-shadow:none!important;background:#eef7f7!important}
body.brito-index .hero-chip{position:absolute;z-index:4;display:flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid rgba(255,255,255,.75);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 10px 25px rgba(11,45,72,.12);backdrop-filter:blur(12px);color:var(--brito-navy);font-size:11px;font-weight:850;white-space:nowrap}
body.brito-index .hero-chip .chip-dot{width:9px;height:9px;border-radius:50%;background:var(--brito-teal);box-shadow:0 0 0 5px rgba(12,168,157,.10)}
body.brito-index .hero-chip-a{left:16px;top:70px}
body.brito-index .hero-chip-b{right:13px;bottom:88px}
body.brito-index .hero-chip-c{left:20px;bottom:30px;color:#674ca8}.hero-chip-c .chip-dot{background:var(--brito-violet)!important;box-shadow:0 0 0 5px rgba(124,99,199,.10)!important}

body.brito-index .photoQuickAccess{background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%)!important;border-bottom:1px solid rgba(11,45,72,.05)}
body.brito-index .photoQuickCard{border-radius:19px!important;box-shadow:0 7px 22px rgba(11,45,72,.05)!important;transition:.18s ease!important}
body.brito-index .photoQuickCard:hover{transform:translateY(-4px)!important;box-shadow:0 15px 32px rgba(11,45,72,.10)!important}
body.brito-index .photoQuickIcon{border-radius:18px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.66)}
body.brito-index section:not(.photoQuickAccess):not(.free-band){position:relative}
body.brito-index section:not(.photoQuickAccess):not(.free-band):nth-of-type(even){background:linear-gradient(180deg,rgba(244,250,248,.72),rgba(255,252,248,.55))}
body.brito-index .section-kicker{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:7px 11px!important;border-radius:999px!important;background:#eaf8f5!important;border:1px solid #cfe8e2!important;color:#087f88!important;font-size:11px!important;letter-spacing:.055em!important}
body.brito-index .section-kicker:before{content:"✦";font-size:11px;color:var(--brito-coral)}
body.brito-index #galeria .section-kicker:before{content:"▦";color:var(--brito-violet)}
body.brito-index #historia .section-kicker:before{content:"♫";color:var(--brito-orange)}
body.brito-index #descargas .section-kicker:before,body.brito-index #descargar .section-kicker:before{content:"↓";color:var(--brito-teal)}
body.brito-index #proyectos .section-kicker:before{content:"✎";color:var(--brito-cyan)}
body.brito-index #colabora .section-kicker:before{content:"♡";color:var(--brito-coral)}
body.brito-index #preguntas .section-kicker:before{content:"?";display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--brito-navy);color:#fff;font-size:10px}
body.brito-index section h2{color:var(--brito-navy)!important;line-height:1.02!important}
body.brito-index .v11-card,body.brito-index .contact-card{border-radius:24px!important;border-color:#dce9e6!important;box-shadow:0 10px 30px rgba(11,45,72,.06)!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
body.brito-index .v11-card:hover,body.brito-index .contact-card:hover{transform:translateY(-3px);box-shadow:0 17px 38px rgba(11,45,72,.09)!important;border-color:#c9dfda!important}
body.brito-index .v11-card .ico{border-radius:16px!important;background:linear-gradient(145deg,#e9f8f5,#f4efff)!important;color:var(--brito-teal-dark)!important;border:1px solid #d5ebe5!important}
body.brito-index .promo-shot{border-radius:23px!important;box-shadow:0 13px 34px rgba(11,45,72,.08)!important;transition:transform .2s ease,box-shadow .2s ease;position:relative}
body.brito-index .promo-shot:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-violet));z-index:2}
body.brito-index .promo-shot:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(11,45,72,.13)!important}
body.brito-index .feature-wide{border-radius:28px!important}
body.brito-index .story-quote{background:linear-gradient(150deg,#0b314a,#0b7480 65%,#0aa89d)!important;box-shadow:0 20px 48px rgba(11,45,72,.16)!important}
body.brito-index .story-quote:after{content:"♫";position:absolute;right:22px;bottom:16px;font-size:76px;color:rgba(255,255,255,.08)}
body.brito-index .download-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#082f45,#0b6f78 63%,#0ba89d)!important;border:1px solid rgba(255,255,255,.12)!important}
body.brito-index .download-panel:after{content:"♪";position:absolute;right:-8px;top:-20px;font-size:150px;color:rgba(255,255,255,.045);pointer-events:none}
body.brito-index .download-art{border-radius:25px!important;background-color:#fff!important;box-shadow:0 17px 38px rgba(1,31,47,.18)!important}
body.brito-index .play-badge{background:#101a22!important;border:1px solid rgba(255,255,255,.12);transition:.18s ease!important}
body.brito-index .play-badge:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.22)!important}
body.brito-index .contact-form input,body.brito-index .contact-form select,body.brito-index .contact-form textarea{border-radius:14px!important;background:#fcfefe!important;border-color:#d7e6e2!important}
body.brito-index .contact-form input:focus,body.brito-index .contact-form select:focus,body.brito-index .contact-form textarea:focus{border-color:#7acfc7!important;box-shadow:0 0 0 4px rgba(12,168,157,.08)!important;outline:0!important}
body.brito-index .faq-list details{border-radius:18px!important;border:1px solid #dce8e5!important;background:rgba(255,255,255,.82)!important;box-shadow:0 5px 17px rgba(11,45,72,.035)!important}
body.brito-index .faq-list summary{position:relative;padding-left:36px!important}
body.brito-index .faq-list summary:before{content:"+";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#e8f7f4;color:#087f88;font-weight:950;font-size:13px}
body.brito-index .faq-list details[open] summary:before{content:"−";background:#eee9fb;color:#684da7}
body.brito-index footer{background:linear-gradient(180deg,#fff,#f7fbfa)!important;border-top:1px solid #dfe9e6!important}
body.brito-index .footer-inner{position:relative}
body.brito-index .footer-inner:before{content:"";position:absolute;top:-35px;left:0;width:190px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-violet))}

/* ---------------- EDITOR ---------------- */
body.brito-editor{background:linear-gradient(180deg,#f8fcfb,#f0faf8)!important;color:var(--brito-ink)}
body.brito-editor>header{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-cyan),var(--brito-violet)) 1!important;box-shadow:0 9px 28px rgba(11,45,72,.07)!important}
body.brito-editor>header .marca img{background:#fff;border-radius:15px;padding:3px;box-shadow:0 6px 16px rgba(11,45,72,.10)}
body.brito-editor .ecosystem-mini{border-radius:999px!important;padding:3px!important;background:#eef8f6!important;border:1px solid #d7e9e5!important}
body.brito-editor .ecosystem-mini a{border-radius:999px!important}
body.brito-editor .ecosystem-mini a.active{background:linear-gradient(135deg,#0b918f,#0ca89d)!important;color:#fff!important;box-shadow:0 5px 13px rgba(12,168,157,.16)}
body.brito-editor .app>aside,body.brito-editor .app>main,body.brito-editor .panel{box-shadow:var(--brito-shadow-soft)}

/* ---------------- INSTRUMENTAL ---------------- */
body.brito-instrumental{font-family:var(--brito-ui)!important;background:
 radial-gradient(circle at 13% 2%,rgba(12,168,157,.08),transparent 24rem),
 radial-gradient(circle at 92% 8%,rgba(124,99,199,.06),transparent 22rem),#f6f8f5!important}
body.brito-instrumental .topbar{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-cyan),var(--brito-violet)) 1!important;box-shadow:0 9px 26px rgba(11,45,72,.075)!important}
body.brito-instrumental .brand-mark{border-radius:14px!important}
body.brito-instrumental .document-panel{border-radius:25px!important;box-shadow:0 20px 52px rgba(26,65,78,.10)!important}
body.brito-instrumental .instrumental-ecosystem{background:rgba(255,255,255,.84)!important;backdrop-filter:blur(12px)}

/* ---------------- COMMUNITY ---------------- */
body.brito-community{font-family:var(--brito-ui)!important;background:
 radial-gradient(circle at 2% 3%,rgba(12,168,157,.08),transparent 22rem),
 radial-gradient(circle at 98% 8%,rgba(124,99,199,.07),transparent 24rem),#f7fbfa!important}
body.brito-community .top{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-cyan),var(--brito-violet)) 1!important;box-shadow:0 8px 28px rgba(11,45,72,.06)!important}
body.brito-community header{position:relative;overflow:hidden}
body.brito-community header:after{content:"♫";position:absolute;right:4%;bottom:-34px;font-size:160px;color:rgba(12,168,157,.055);pointer-events:none}
body.brito-community .compactHero{position:relative;z-index:2}
body.brito-community .panel{border-radius:24px!important;box-shadow:0 16px 45px rgba(11,45,72,.08)!important}
body.brito-community .brandLogo{background:#fff;border-radius:14px!important;padding:2px}

/* ---------------- MIBRITO ---------------- */
body.brito-mibrito{font-family:var(--brito-ui)!important}
body.brito-mibrito .sidebar{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-cyan),var(--brito-violet)) 1!important}
body.brito-mibrito .brandName{font-family:var(--brito-display)!important;font-weight:400!important}
body.brito-mibrito .profileHero{border-radius:25px!important;box-shadow:0 20px 48px rgba(0,0,0,.16)!important}
body.brito-mibrito .quick,body.brito-mibrito .metric,body.brito-mibrito .panel{border-radius:18px!important}
body.brito-mibrito .mobileNav{border-top:2px solid rgba(12,168,157,.22)!important}

/* ---------------- MEDIA ---------------- */
body.brito-media{font-family:var(--brito-ui)!important;background:#071f28!important}
body.brito-media .app{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),#72d1d5,var(--brito-violet)) 1!important}
body.brito-media .panel,body.brito-media .studioIntro,body.brito-media .style-tools{border-radius:18px!important}

/* ---------------- LEGAL / SMALL PAGES ---------------- */
body.brito-legal{font-family:var(--brito-ui)!important;background:
 radial-gradient(circle at 10% 0%,rgba(12,168,157,.08),transparent 22rem),
 #f7fbfa!important}
body.brito-legal .top{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,var(--brito-coral),var(--brito-orange),var(--brito-teal),var(--brito-violet)) 1!important;box-shadow:0 8px 24px rgba(11,45,72,.06)!important}
body.brito-legal main{max-width:900px}
body.brito-legal article,body.brito-legal .card{border-radius:22px!important;box-shadow:0 13px 34px rgba(11,45,72,.06)!important}
body.brito-small{font-family:var(--brito-ui)!important;background:
 radial-gradient(circle at 18% 15%,rgba(12,168,157,.12),transparent 21rem),
 radial-gradient(circle at 82% 10%,rgba(124,99,199,.09),transparent 23rem),
 linear-gradient(145deg,#f2fbf9,#fff8f4)!important}
body.brito-small main,body.brito-small .card{border-radius:26px!important;border:1px solid #dce9e5!important;box-shadow:0 24px 65px rgba(11,45,72,.13)!important}

@media(max-width:980px){
  body.brito-index .hero-grid{grid-template-columns:1fr 360px!important;gap:26px!important}
  body.brito-index .hero-real-stage{min-height:560px!important;padding:20px!important}
  body.brito-index .hero-device{width:min(265px,75vw)}
  body.brito-index .hero-chip{font-size:10px;padding:0 10px}
}
@media(max-width:760px){
  body.brito-index .hero{padding:38px 0 34px!important}
  body.brito-index .hero-grid{grid-template-columns:1fr!important}
  body.brito-index .hero h1{font-size:54px!important}
  body.brito-index .hero-real-stage{display:grid!important;min-height:480px!important;margin:14px auto 0!important;width:min(100%,420px)!important;border-radius:30px!important;padding:18px!important}
  body.brito-index .hero-device{width:min(225px,65vw);border-radius:38px;padding:8px}
  body.brito-index .hero-device:before{width:60px;height:17px;top:9px}
  body.brito-index .hero-real-shot{border-radius:31px!important}
  body.brito-index .hero-chip-a{left:9px;top:36px}.hero-chip-b{right:8px!important;bottom:66px!important}.hero-chip-c{left:10px!important;bottom:20px!important}
  body.brito-index .hero:before{display:none}
}
@media(max-width:470px){
  body.brito-index .hero h1{font-size:48px!important}
  body.brito-index .hero-real-stage{min-height:450px!important}
  body.brito-index .hero-chip-a{top:24px}.hero-chip-b{bottom:62px!important}.hero-chip-c{display:none!important}
}
