/* Identidad adaptable: el símbolo conserva su paleta y el nombre se compone con contraste. */
.brand-logo{gap:.7rem}.brand-symbol{display:block;width:42px;height:42px;overflow:hidden;position:relative;border-radius:50%;flex:0 0 42px;background:#fff}.brand-symbol .logo-source{display:block;width:88px;max-width:none;position:absolute;left:-23px;top:-9px}.brand-symbol .logo-source-dark{display:none}.brand-wordmark{display:grid;gap:.13rem;font-size:.78rem;font-weight:800;line-height:1;letter-spacing:.08em}.brand-wordmark strong{font-size:.73rem;letter-spacing:.11em;color:#59c63b}.theme-toggle{margin-left:auto;margin-right:.9rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font:700 .78rem var(--sans);padding:.45rem .7rem;cursor:pointer}.theme-toggle:hover{border-color:var(--blue);color:var(--blue)}.brand.light .brand-wordmark>span{color:#fff}.brand.light .brand-symbol{background:#000}.brand.light .brand-symbol .logo-source{display:none}.brand.light .brand-symbol .logo-source-dark{display:block}

/* Logotipos horizontales aprobados: sustituyen los recortes provisionales. */
.brand-logo{gap:0}.brand-lockup{display:block;width:280px;line-height:0}.brand-lockup img{display:block;width:100%;height:auto}.site-footer .brand-lockup{width:320px}
/* Una sola composición por contexto, sin superposición entre claro y oscuro. */
.brand-logo:not(.light) .logo-lockup-light{display:block!important}.brand-logo:not(.light) .logo-lockup-dark{display:none!important}
.brand-logo.light .logo-lockup-light{display:none!important}.brand-logo.light .logo-lockup-dark{display:block!important}

html[data-theme="dark"]{color-scheme:dark;--ink:#f8fafc;--ink-soft:#d1d5db;--mist:#1b1f23;--paper:#111315;--line:#343a40;--text:#d7dce1;--muted:#aeb6bf}html[data-theme="dark"] .site-header{background:#111315;border-color:var(--line)}html[data-theme="dark"] .brand-wordmark>span{color:#fff}html[data-theme="dark"] .brand-symbol{background:#111315}html[data-theme="dark"] .brand-symbol .logo-source-light{display:none}html[data-theme="dark"] .brand-symbol .logo-source-dark{display:block}html[data-theme="dark"] .main-nav a{color:#dce2e8}html[data-theme="dark"] .main-nav .nav-cta{background:#e7edf5;color:#111315}html[data-theme="dark"] .audience-card,html[data-theme="dark"] .service-card{background:#171a1d}html[data-theme="dark"] .audience-card:hover{box-shadow:0 14px 30px rgba(0,0,0,.28)}html[data-theme="dark"] .quote-form input,html[data-theme="dark"] .quote-form select,html[data-theme="dark"] .quote-form textarea{background:#171a1d;color:var(--text);border-color:#4a525a}html[data-theme="dark"] .promise-card{background:#1b1f23}html[data-theme="dark"] .main-nav,html[data-theme="dark"] .site-footer{background:#111315}.site-footer .brand-symbol{background:#111315}
html[data-theme="dark"] .process-band{background:#111315}html[data-theme="dark"] .process-band .inverse h2{color:#fff}html[data-theme="dark"] .process-band .steps p{color:#c5cbd2}
html[data-theme="dark"] .brand-logo:not(.light) .logo-lockup-light{display:none!important}html[data-theme="dark"] .brand-logo:not(.light) .logo-lockup-dark{display:block!important}

@media(max-width:760px){.theme-toggle{margin-left:auto;margin-right:.6rem}.brand-symbol{width:36px;height:36px;flex-basis:36px}.brand-symbol picture,.brand-symbol img{width:76px;left:-20px;top:-8px}.brand-wordmark{font-size:.7rem}.brand-wordmark strong{font-size:.66rem}.main-nav{top:69px}}
@media(max-width:760px){.brand-lockup{width:200px}.site-footer .brand-lockup{width:240px}}

/* Selector compacto: el icono visible indica el tema al que se cambiará. */
.theme-toggle{margin-left:1rem;margin-right:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);width:42px;height:42px;padding:0;display:grid;place-items:center;font:700 1.2rem/1 var(--sans);cursor:pointer}.theme-toggle:hover{border-color:var(--blue);color:var(--blue)}.theme-icon-sun{display:none}.theme-icon-moon{display:block;transform:translateY(-1px)}html[data-theme="dark"] .theme-icon-sun{display:block}html[data-theme="dark"] .theme-icon-moon{display:none}@media(max-width:760px){.theme-toggle{margin-left:.65rem;margin-right:0;width:38px;height:38px}}

/* La marca conserva presencia sin rebasar la altura de la cabecera. */
.site-header .brand-lockup{width:240px}@media(max-width:760px){.site-header .brand-lockup{width:185px}}
