/* Otorrinolaringología SOHO La Serena · Dr. Alberto Balut Kong */
:root{
  --navy:#0a2f6e;
  --navy-2:#071f4a;
  --blue:#3a86c8;
  --teal:#2a9aa6;
  --ink:#14213d;
  --muted:#55627a;
  --line:#dde5f0;
  --tint:#f2f6fb;
  --white:#fff;
  --wa:#1fa855;
  --wa-2:#178a45;
  --radius:18px;
  --shadow:0 18px 40px -18px rgba(10,47,110,.35);
  --wrap:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--white);line-height:1.6;font-size:17px}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy)}
h1,h2,h3{line-height:1.15;margin:0 0 .5em;color:var(--navy);letter-spacing:-.02em}
h1{font-size:clamp(2rem,4.6vw,3.4rem);font-weight:800}
h2{font-size:clamp(1.6rem,3.2vw,2.4rem);font-weight:800}
h3{font-size:1.1rem;font-weight:700}
p{margin:0 0 1em}
svg{width:1.2em;height:1.2em;fill:currentColor;flex:none}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:8px 14px;border-radius:8px;z-index:99}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px}

.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;font-weight:700;color:var(--teal);margin-bottom:.8em}
.eyebrow--light{color:#8fd3da}

/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:.85em 1.4em;border-radius:999px;background:var(--navy);color:#fff;font-weight:700;text-decoration:none;border:2px solid var(--navy);transition:transform .15s,background .15s,box-shadow .15s;line-height:1.2;text-align:center}
.btn:hover{background:var(--navy-2);border-color:var(--navy-2);transform:translateY(-2px);box-shadow:var(--shadow)}
.btn--lg{padding:1em 1.6em;font-size:1.05rem}
.btn--sm{padding:.6em 1.1em;font-size:.92rem}
.btn--block{display:flex;width:100%}
.btn--wa{background:var(--wa);border-color:var(--wa)}
.btn--wa:hover{background:var(--wa-2);border-color:var(--wa-2)}
.btn--ghost{background:transparent;color:var(--navy)}
.btn--ghost:hover{background:var(--navy);color:#fff}
.btn--light{background:#fff;color:var(--navy);border-color:#fff}
.btn--light:hover{background:#e7eef8;border-color:#e7eef8}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.1em}
.cta-row--c{justify-content:center}

/* Cabecera */
.top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}
.top.is-scrolled{border-color:var(--line);box-shadow:0 6px 20px -14px rgba(10,47,110,.4)}
.top__in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}
.brand img{width:44px;height:auto}
.brand__txt{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.brand__txt strong{color:var(--navy);font-size:1.02rem}
.brand__txt small{color:var(--muted);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav{display:flex;align-items:center;gap:22px}
.nav a:not(.btn){text-decoration:none;color:var(--ink);font-weight:600;font-size:.94rem}
.nav a:not(.btn):hover{color:var(--teal)}
.burger{display:none;background:none;border:0;padding:10px;margin-right:-10px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0;transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Hero */
.hero{position:relative;overflow:hidden;color:#cfdcf0;background:radial-gradient(900px 520px at 88% -5%,rgba(58,134,200,.55) 0,transparent 60%),radial-gradient(700px 420px at -5% 105%,rgba(42,154,166,.45) 0,transparent 60%),linear-gradient(165deg,var(--navy) 0%,var(--navy-2) 100%)}
.hero h1{color:#fff}
.hero::after{content:"";position:absolute;right:-120px;top:-120px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(143,211,218,.18);box-shadow:0 0 0 60px rgba(143,211,218,.04),0 0 0 120px rgba(143,211,218,.03);pointer-events:none}
.hero__in{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;padding-top:40px;padding-bottom:110px;position:relative;z-index:1}
.hero h1 span{background:linear-gradient(90deg,#7fc1f5,#8fe0e6);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:1.12rem;color:#c4d3ea;max-width:36em}
.hero__facts{list-style:none;padding:0;margin:1.4em 0 0;display:flex;flex-wrap:wrap;gap:12px}
.hero__facts li{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:.7em 1.1em;display:flex;flex-direction:column;line-height:1.25}
.hero__facts strong{color:#fff;font-size:1.08rem}
.hero__facts span{color:#a9bcd9;font-size:.82rem}
.hero__photo{position:relative;margin:0}
.hero__photo>img{border-radius:28px;box-shadow:var(--shadow);aspect-ratio:3/4;object-fit:cover;width:100%;object-position:50% 20%}
.hero__photo::before{content:"";position:absolute;inset:-16px 16px 16px -16px;border-radius:30px;background:linear-gradient(160deg,var(--teal),var(--blue));opacity:.55;z-index:-1}
.hero__photo{z-index:0}
.hero__photo>img{box-shadow:0 30px 60px -25px rgba(0,0,0,.6)}
.badge-card{position:absolute;left:-28px;bottom:28px;display:flex;align-items:center;gap:10px;background:#fff;border-radius:16px;padding:12px 16px;box-shadow:var(--shadow);font-size:.82rem;color:var(--muted);line-height:1.3;max-width:calc(100% - 20px)}
.badge-card img{width:40px}
.badge-card strong{display:block;color:var(--navy);font-size:.95rem}

/* Confianza */
.trust__in{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:18px;padding-bottom:18px}
.trust__in>div{display:flex;align-items:center;gap:12px;font-size:.9rem;line-height:1.35;color:var(--muted)}
.trust__in svg{width:34px;height:34px;fill:var(--teal)}
.trust__in strong{color:var(--navy)}

/* Secciones */
.sec{padding:64px 0}
.sec--tint{background:var(--tint)}
.sec--dark{background:linear-gradient(135deg,var(--navy-2),var(--navy));color:#dbe6f6}
.sec--dark h2{color:#fff}
.sec__head{max-width:720px;margin-bottom:28px}
.sec__head p:last-child{color:var(--muted)}
.sec__head--c{margin-left:auto;margin-right:auto;text-align:center}

/* Especialidades */
.grid-esp{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.esp{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 18px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
.esp:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.esp__ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#e3effb,#dff3f4);color:var(--navy);margin-bottom:12px}
.esp__ico svg{width:26px;height:26px}
.esp p{color:var(--muted);font-size:.95rem;flex:1}
.esp--urg{background:linear-gradient(160deg,var(--navy),var(--navy-2));border-color:var(--navy);color:#dbe6f6}
.esp--urg h3{color:#fff}
.esp--urg p{color:#c4d3ea}
.esp--urg .esp__ico{background:rgba(255,255,255,.12);color:#ffcf6b}

/* CTA WhatsApp de cada especialidad */
.esp__wa{display:flex;align-items:center;justify-content:center;gap:.45em;margin-top:6px;padding:.7em .7em;border-radius:12px;background:var(--wa);color:#fff;font-weight:700;font-size:.86rem;white-space:nowrap;text-decoration:none;box-shadow:0 8px 18px -10px rgba(31,168,85,.9);transition:background .15s,transform .15s,box-shadow .15s}
.esp__wa svg{width:1.25em;height:1.25em}
.esp__wa:hover{background:var(--wa-2);transform:translateY(-2px);box-shadow:0 12px 22px -10px rgba(31,168,85,1)}
.esp:hover .esp__wa{background:var(--wa-2)}
.esp__wa--urg{background:#ffcf6b;color:var(--navy-2);box-shadow:0 8px 18px -10px rgba(255,207,107,.9)}
.esp__wa--urg:hover,.esp--urg:hover .esp__wa--urg{background:#ffc043;color:var(--navy-2)}

/* Agenda abierta */
.live{display:inline-flex;align-items:center;gap:8px;background:rgba(31,168,85,.16);color:#9ff0c0;border:1px solid rgba(31,168,85,.35);font-weight:700;font-size:.82rem;padding:.4em .9em;border-radius:999px;margin-bottom:1em}
.live__dot{width:9px;height:9px;border-radius:50%;background:var(--wa);box-shadow:0 0 0 0 rgba(31,168,85,.6);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(31,168,85,0)}100%{box-shadow:0 0 0 0 rgba(31,168,85,0)}}

/* Síntomas */
.sint{display:grid;grid-template-columns:.75fr 1.25fr;gap:44px;align-items:center}
.sint__media img{border-radius:28px;box-shadow:var(--shadow);width:100%;aspect-ratio:4/5;object-fit:cover}
.check{list-style:none;padding:0;margin:1.2em 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.check li{position:relative;padding-left:34px;font-size:.98rem}
.check li::before{content:"";position:absolute;left:0;top:.15em;width:22px;height:22px;border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9.5 16.2 5.3 12l-1.4 1.4 5.6 5.6L21 7.5l-1.4-1.4z'/%3E%3C/svg%3E") center/15px no-repeat}

.sint__hint{margin:.2em 0 .9em}
.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.chip{font:inherit;font-size:.92rem;font-weight:600;color:var(--navy);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:.5em .95em .5em 2.1em;cursor:pointer;position:relative;transition:background .15s,border-color .15s,color .15s,transform .1s}
.chip::before{content:"";position:absolute;left:.7em;top:50%;width:15px;height:15px;margin-top:-7.5px;border-radius:50%;border:1.5px solid #b7c4d8;transition:all .15s}
.chip:hover{border-color:var(--teal)}
.chip:active{transform:scale(.97)}
.chip[aria-pressed="true"]{background:var(--teal);border-color:var(--teal);color:#fff}
.chip[aria-pressed="true"]::before{border-color:#fff;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%232a9aa6' d='M9.5 16.2 5.3 12l-1.4 1.4 5.6 5.6L21 7.5l-1.4-1.4z'/%3E%3C/svg%3E") center/11px no-repeat}
.sint__bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:1.2em}
.sint__bar .btn--wa.is-ready{animation:nudge .5s}
@keyframes nudge{30%{transform:scale(1.04)}}

/* Botón flotante WhatsApp (escritorio) */
.fab{position:fixed;right:22px;bottom:22px;z-index:55;display:flex;align-items:center;gap:10px;background:var(--wa);color:#fff;text-decoration:none;font-weight:700;padding:12px 18px 12px 14px;border-radius:999px;box-shadow:0 14px 30px -10px rgba(31,168,85,.8);transition:transform .15s,background .15s}
.fab svg{width:28px;height:28px}
.fab::after{content:"";position:absolute;inset:0;border-radius:inherit;animation:ring 2.4s infinite}
.fab:hover{background:var(--wa-2);transform:translateY(-3px)}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(31,168,85,.55)}70%,100%{box-shadow:0 0 0 14px rgba(31,168,85,0)}}

/* Doctor */
.doc{display:grid;grid-template-columns:.75fr 1.25fr;gap:44px;align-items:center}
.doc__photo img{border-radius:28px;box-shadow:var(--shadow);width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 15%}
.doc__role{color:var(--teal);font-weight:700;margin-top:-.3em}
.timeline{list-style:none;padding:0;margin:1.2em 0 1.4em;border-left:2px solid var(--line)}
.timeline li{position:relative;padding:0 0 1em 26px}
.timeline li::before{content:"";position:absolute;left:-8px;top:.35em;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--blue)}
.timeline span{display:block;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.timeline p{margin:.2em 0 0}

/* Pasos */
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:s}
.steps li{background:#fff;border-radius:var(--radius);padding:22px 20px;border:1px solid var(--line)}
.steps__n{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;font-weight:800;font-size:1.2rem;margin-bottom:14px}
.steps p{color:var(--muted);margin:0}
#pasos .cta-row{margin-top:24px}

/* Valor */
.valor{display:grid;grid-template-columns:1fr 400px;gap:44px;align-items:center}
.valor__copy p{color:var(--muted);font-size:1.08rem}
.price{background:#fff;border-radius:24px;padding:28px 26px;box-shadow:var(--shadow);border:1px solid var(--line);position:relative;overflow:hidden}
.price::before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--navy),var(--blue),var(--teal))}
.price__label{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:var(--muted);margin:0}
.price__amount{font-size:clamp(3rem,7vw,4.2rem);font-weight:800;color:var(--navy);letter-spacing:-.03em;line-height:1;margin:.15em 0 .35em}
.price__amount small{font-size:.5em;vertical-align:.7em;margin-right:2px}
.price ul{list-style:none;padding:0;margin:0 0 1.5em}
.price li{padding:.45em 0 .45em 28px;position:relative;border-top:1px dashed var(--line);font-size:.96rem}
.price li::before{content:"";position:absolute;left:0;top:.75em;width:16px;height:16px;border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9.5 16.2 5.3 12l-1.4 1.4 5.6 5.6L21 7.5l-1.4-1.4z'/%3E%3C/svg%3E") center/11px no-repeat}
.price__alt{display:block;text-align:center;margin-top:14px;font-weight:600;font-size:.94rem;color:var(--wa-2)}

/* Ubicación */
.ubi{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center}
.ubi address{font-style:normal;font-size:1.12rem;margin:1em 0;line-height:1.5}
.ubi address strong{color:#fff;font-size:1.25rem}
.ubi__list{list-style:none;padding:0;margin:0}
.ubi__list li{padding:.3em 0 .3em 26px;position:relative}
.ubi__list li::before{content:"";position:absolute;left:0;top:.85em;width:12px;height:12px;border-radius:50%;background:#8fd3da}
.ubi__map{border-radius:24px;overflow:hidden;box-shadow:0 20px 50px -20px rgba(0,0,0,.6);aspect-ratio:4/3;background:#0d2b5e}
.ubi__map iframe{width:100%;height:100%;border:0;display:block}

/* FAQ */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:start}
.faq__list details{border-bottom:1px solid var(--line);padding:4px 0}
.faq__list summary{cursor:pointer;list-style:none;font-weight:700;color:var(--navy);padding:12px 40px 12px 0;position:relative;font-size:1.02rem}
.faq__list summary::-webkit-details-marker{display:none}
.faq__list summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:1.6rem;font-weight:400;color:var(--teal);transition:transform .2s}
.faq__list details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq__list details p{color:var(--muted);margin:0 0 16px}

/* CTA final */
.final{background:linear-gradient(120deg,var(--blue),var(--teal));color:#fff;padding:48px 0}
.final__in{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.final h2{color:#fff}
.final p{font-size:1.15rem;opacity:.95}

/* Footer */
.foot{background:var(--navy-2);color:#b9c7de;padding:40px 0 20px;font-size:.95rem}
.foot__in{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.1)}
.foot__in img{width:140px;background:#fff;border-radius:16px;padding:12px}
.foot h3{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.16em}
.foot a{color:#dbe6f6}
.foot__legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:20px;font-size:.85rem}
.foot__legal p{margin:0}


/* Barra superior */
.topbar{background:var(--navy-2);color:#b9c7de;font-size:.82rem}
.topbar__in{display:flex;justify-content:flex-end;gap:26px;height:36px;align-items:center}
.topbar a{color:#cfdcf0;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.topbar a:first-child{margin-right:auto}
.topbar a:hover{color:#fff}
.topbar svg{width:15px;height:15px;fill:#8fd3da}

/* Consulta rápida (formulario) */
.booking{background:linear-gradient(to bottom,var(--navy-2) 0,var(--navy-2) 70px,var(--tint) 70px);padding-bottom:6px;position:relative;z-index:2}
.booking .qform{margin-top:-70px}
.qform{background:#fff;border-radius:22px;padding:22px 24px 16px;box-shadow:0 30px 60px -30px rgba(7,31,74,.55);border:1px solid var(--line)}
.qform__title{font-size:1.15rem;font-weight:800;color:var(--navy);margin:0 0 12px;display:flex;align-items:center;gap:10px}
.qform__title::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--wa);box-shadow:0 0 0 4px rgba(31,168,85,.18)}
.qform__grid{display:grid;grid-template-columns:1.1fr 1fr 1.2fr auto auto;gap:12px;align-items:end}
.qform label>span,.qform legend{display:block;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;padding:0}
.qform input[type=text],.qform input[type=tel],.qform select{width:100%;font:inherit;font-size:.96rem;color:var(--ink);background:var(--tint);border:1.5px solid var(--line);border-radius:12px;padding:.7em .85em;height:48px;transition:border-color .15s,background .15s;appearance:none;-webkit-appearance:none}
.qform select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2355627a' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:20px;padding-right:34px}
.qform input:focus,.qform select:focus{outline:none;border-color:var(--blue);background:#fff}
.qform .is-bad{border-color:#d9534f!important;background:#fff5f5!important}
.qform__seg{border:0;margin:0;padding:0;min-width:0}
.qform__seg legend{float:left;width:100%}
.qform__seg label{display:inline-block;position:relative}
.qform__seg input{position:absolute;opacity:0;pointer-events:none}
.qform__seg label span{display:inline-flex;align-items:center;height:48px;padding:0 14px;border:1.5px solid var(--line);background:var(--tint);font-weight:600;font-size:.92rem;cursor:pointer;color:var(--ink)}
.qform__seg label:first-of-type span{border-radius:12px 0 0 12px}
.qform__seg label:last-of-type span{border-radius:0 12px 12px 0;margin-left:-1.5px}
.qform__seg input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.qform__seg input:focus-visible+span{outline:3px solid var(--teal);outline-offset:2px}
.qform__btn{height:48px;border-radius:12px;padding:0 22px;font-size:1rem;white-space:nowrap}
.qform__note{font-size:.84rem;color:var(--muted);margin:10px 0 0}
.qform__note a{color:var(--navy);font-weight:700}
.booking .trust__in{padding-top:22px;padding-bottom:22px}

/* Especialidades por zona */
.sec--sky{background:#e9f2fc}
.sec--mint{background:linear-gradient(180deg,#e4f5f3,#f1faf9)}
.sec__head--row{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.sec__head--row>div:first-child{max-width:620px}
.zonas{display:flex;flex-wrap:wrap;gap:8px}
.zona{font:inherit;font-weight:700;font-size:.9rem;padding:.55em 1.1em;border-radius:999px;border:1.5px solid #c9d8ec;background:#fff;color:var(--navy);cursor:pointer;transition:all .15s}
.zona:hover{border-color:var(--navy)}
.zona.is-on{background:var(--navy);border-color:var(--navy);color:#fff}
.zona--nariz.is-on{background:var(--z-nariz);border-color:var(--z-nariz)}
.zona--oido.is-on{background:var(--z-oido);border-color:var(--z-oido)}
.zona--garganta.is-on{background:var(--z-garganta);border-color:var(--z-garganta)}
:root{--z-nariz:#2f78c4;--z-oido:#6656c9;--z-garganta:#1f8f99}
.grid-esp{grid-auto-flow:dense}
.esp{position:relative;--z:var(--navy);border-top:4px solid var(--z)}
.esp--nariz{--z:var(--z-nariz)}
.esp--oido{--z:var(--z-oido)}
.esp--garganta{--z:var(--z-garganta)}
.esp__tag{align-self:flex-start;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--z);background:color-mix(in srgb,var(--z) 12%,#fff);padding:.3em .7em;border-radius:999px;margin-bottom:12px}
.esp .esp__ico{background:color-mix(in srgb,var(--z) 13%,#fff);color:var(--z)}
.esp h3{color:var(--navy)}
.esp--feat{grid-column:span 2;grid-row:span 2;background:radial-gradient(500px 300px at 100% 0,rgba(255,255,255,.18),transparent 60%),linear-gradient(150deg,#3a8fd6,#1f5fae 60%,#123f86);border:0;color:#e3eefb;padding:28px;overflow:hidden}
.esp--feat h3{color:#fff;font-size:1.6rem}
.esp--feat p{color:#d6e5f7;font-size:1.02rem;flex:0}
.esp--feat .esp__tag{background:rgba(255,255,255,.18);color:#fff}
.esp--feat .esp__ico{background:rgba(255,255,255,.16);color:#fff;width:64px;height:64px}
.esp--feat .esp__ico svg{width:32px;height:32px}
.esp--feat .esp__wa{margin-top:auto;align-self:flex-start;padding:.85em 1.4em;font-size:.98rem}
.esp--feat::after{content:"";position:absolute;right:-50px;bottom:-50px;width:220px;height:220px;border-radius:50%;border:30px solid rgba(255,255,255,.07);pointer-events:none}
.esp__list{list-style:none;padding:0;margin:4px 0 20px;display:flex;flex-wrap:wrap;gap:8px}
.esp__list li{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;font-weight:600;font-size:.86rem;padding:.35em .8em;border-radius:999px}
.esp--wide{grid-column:span 2}
.esp--urg{border-top:0}
.esp--urg .esp__tag{background:rgba(255,207,107,.16);color:#ffcf6b}
.esp--urg .esp__ico{background:rgba(255,255,255,.12);color:#ffcf6b}
.esp--urg h3{color:#fff}
.esp--urg .esp__wa{align-self:flex-start;padding:.7em 1.3em}
.esp.is-hidden{display:none}
.grid-esp.is-filtered .esp--feat,.grid-esp.is-filtered .esp--wide{grid-row:auto;grid-column:auto}

/* Doctor con panel de color */
.doc__photo{position:relative}
.doc__photo::before{content:"";position:absolute;left:-22px;top:28px;bottom:-22px;width:75%;border-radius:28px;background:linear-gradient(160deg,var(--blue),var(--teal));z-index:0}
.doc__photo img{position:relative;z-index:1}

/* Pasos en oscuro */
.sec--pasos .steps li{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
.sec--pasos .steps h3{color:#fff}
.sec--pasos .steps p{color:#b9c7de}
.sec--pasos .btn{background:var(--wa);border-color:var(--wa)}
.sec--pasos .btn:hover{background:var(--wa-2);border-color:var(--wa-2)}

/* CTA final con formulario */
.final__copy img{width:120px;margin-bottom:14px}
.final .qform{color:var(--ink)}
.final .qform__grid{grid-template-columns:1fr 1fr}
.final .qform__grid>label:nth-child(3){grid-column:span 2}
.final .qform__btn{grid-column:span 2;width:100%}

/* Barra fija móvil */
.dock{display:none}

/* Animación de entrada */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.live__dot,.fab::after{animation:none}html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.esp{transition:none}}

/* Responsive */
@media (max-width:1080px){
  .qform__grid{grid-template-columns:1fr 1fr}
  .qform__btn{width:100%}
  .esp--feat{grid-row:auto}
  .grid-esp{grid-template-columns:repeat(2,1fr)}
  .trust__in{grid-template-columns:repeat(2,1fr)}
  .nav{gap:16px}
}
@media (max-width:960px){
  .burger{display:block}
  .topbar a:not(:first-child){display:none}
  .topbar a:first-child{margin:0 auto}
  .nav{position:fixed;inset:72px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:8px 20px 20px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px -20px rgba(10,47,110,.35);transform:translateY(-120%);visibility:hidden;transition:transform .25s,visibility .25s}
  .nav.is-open{transform:none;visibility:visible}
  .nav a:not(.btn){padding:14px 0;border-bottom:1px solid var(--line)}
  .nav .btn{margin-top:14px}
  .hero__in{grid-template-columns:1fr;gap:28px;padding-top:22px}
  .hero__photo{max-width:380px;margin:0 auto;width:100%}
  .hero__in{padding-bottom:96px}
  .badge-card{left:12px}
  .sint,.doc,.valor,.ubi,.faq{grid-template-columns:1fr;gap:28px}
  .sint__media,.doc__photo{max-width:440px}
  .valor .price{max-width:480px}
  .final__in{grid-template-columns:1fr;text-align:center;justify-items:center;gap:24px}
  .final .cta-row{justify-content:center}
  .final .qform{width:100%;max-width:520px;text-align:left}
  .sec{padding:52px 0}
}
@media (max-width:760px){
  body{font-size:16px;padding-bottom:68px}
  .wrap{padding:0 16px}
  .steps{grid-template-columns:1fr}
  .check{grid-template-columns:1fr}
  .foot__in{grid-template-columns:1fr}
  .foot__legal{flex-direction:column}
  .fab{display:none}
  .dock{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px -12px rgba(10,47,110,.4);padding-bottom:env(safe-area-inset-bottom)}
  .dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:62px;text-decoration:none;font-weight:700;font-size:.8rem;color:var(--navy)}
  .dock a svg{width:22px;height:22px}
  .dock__wa{background:var(--wa);color:#fff!important}
}
@media (max-width:560px){
  .grid-esp{grid-template-columns:1fr;gap:10px}
  .esp{padding:16px}
  .esp__ico{width:42px;height:42px;margin-bottom:8px}
  .esp--feat,.esp--wide{grid-column:auto}
  .esp--feat h3{font-size:1.3rem}
  .esp__wa{align-self:stretch}
  .qform__grid,.final .qform__grid{grid-template-columns:1fr}
  .final .qform__grid>label:nth-child(3),.final .qform__btn{grid-column:auto}
  .qform{padding:18px 16px 14px}
  .qform__seg{display:flex;flex-wrap:wrap}.qform__seg label{flex:1}.qform__seg label span{width:100%;justify-content:center}
  .doc__photo::before{left:-10px;bottom:-10px}
  .zonas{width:100%}.zona{flex:1 1 auto}
  .esp__ico svg{width:22px;height:22px}
  .esp h3{margin-bottom:.2em}
  .esp p{margin-bottom:.4em}
  .sec{padding:44px 0}
  .trust__in{grid-template-columns:1fr 1fr;gap:16px}
  .trust__in>div{font-size:.82rem;gap:8px}
  .trust svg{width:26px;height:26px}
  .cta-row .btn,.sint__bar .btn{width:100%}
  .chip{font-size:.86rem}
  .hero__facts li{flex:1 1 40%}
  .brand__txt small{font-size:.68rem}
  .badge-card{left:8px;bottom:12px;padding:10px 12px}
  .price{padding:30px 22px}
  .hero__photo::before{display:none}
}
@media (max-width:360px){
  .brand__txt small{display:none}
  .trust__in{grid-template-columns:1fr}
}

/* Tarjeta destacada: marca de agua y acciones */
.esp--feat::after{right:-30px;bottom:-30px;width:300px;height:306px;border:0;border-radius:0;background:url("../img/iso-orl-blanco.webp") center/contain no-repeat;opacity:.13}
.esp--feat p{font-size:1.08rem;max-width:34em}
.esp__acts{margin-top:auto;display:flex;flex-wrap:wrap;gap:10px;align-items:center;position:relative;z-index:1}
.esp--feat .esp__acts .esp__wa{margin-top:0}
.esp__ag{display:inline-flex;align-items:center;padding:.8em 1.3em;border-radius:12px;border:1.5px solid rgba(255,255,255,.55);color:#fff;font-weight:700;font-size:.95rem;text-decoration:none;transition:background .15s}
.esp__ag:hover{background:rgba(255,255,255,.14)}
@media (max-width:560px){.esp--feat::after{width:180px;height:184px}.esp__acts>a{flex:1 1 100%;justify-content:center}}
.final .qform p.qform__note{font-size:.84rem;opacity:1;color:var(--muted)}
.final .qform p.qform__title{font-size:1.15rem;opacity:1}
.valor__copy p.eyebrow{color:var(--teal);font-size:.78rem}
@media (max-width:760px){
  .hero__in{padding-top:26px}
  .hero__photo{max-width:none}
  .hero__photo>img{aspect-ratio:5/4;object-position:50% 18%}
  .hero__photo::before{display:none}
  .zonas{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px 4px;width:auto}
  .zonas::-webkit-scrollbar{display:none}
  .zona{flex:0 0 auto}
}
.topbar__h{display:inline-flex;align-items:center;gap:6px;color:#cfdcf0}
.ubi__hours{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:12px 16px;margin:0 0 1em;color:#dbe6f6}
.ubi__hours strong{color:#8fd3da;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
@media (max-width:960px){.topbar .topbar__h{display:none}}
