@font-face{font-family:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url(fonts/fraunces-500-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/montserrat-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* En Familia · landing · sistema de diseño anclado al logo (coral #F89870, menta, amarillo pálido) y a los estáticos */
:root{
  --paper:#FBF4EC; --paper-2:#F4E9DC; --white:#FFFDFA;
  --ink:#241A16; --ink-2:#5B4A42; --ink-3:#6B5A50;
  --coral:#F89870; --coral-ink:#B8502A; --coral-soft:#FDE4D6;
  --mint:#B8F0E8; --sun:#F8F0B0;
  --dark:#2A1A14; --dark-2:#3A2820; --on-dark:#F6EBE0; --on-dark-2:#D9C6B8;
  --line:rgba(36,26,22,.12); --line-strong:rgba(36,26,22,.22);
  --r:18px; --r-sm:12px;
  --sh:0 1px 2px rgba(36,26,22,.06), 0 14px 40px -18px rgba(36,26,22,.28);
  --display:"Montserrat",system-ui,sans-serif; --serif:"Fraunces",Georgia,serif; --body:"Inter",system-ui,sans-serif;
  --wrap:1200px; --pad:120px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} *{animation:none!important;transition:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.55 var(--body);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
@media (max-width:1200px){:root{--pad:48px}} @media (max-width:768px){:root{--pad:20px}}

/* tipografía */
.h1,.h2{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;line-height:1.05;margin:0;text-wrap:balance}
.h1{font-size:64px} .h2{font-size:40px;line-height:1.1}
.h1 em,.h2 em{font-style:italic;font-family:var(--serif);font-weight:500;text-transform:none;letter-spacing:0;color:var(--coral-ink);font-size:1.02em}
.dark .h2 em{color:var(--coral)}
h3{font-family:var(--display);font-weight:800;font-size:20px;line-height:1.25;margin:0 0 8px;letter-spacing:-.01em}
.lead{font-size:20px;line-height:1.5;color:var(--ink-2);max-width:600px;margin:24px 0 0}
.dark .lead{color:var(--on-dark-2)}
.eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 24px;font:600 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--coral-ink)}
.eyebrow i{width:28px;height:2px;background:var(--coral);border-radius:2px}
.eyebrow--light{color:var(--coral)}
.center{text-align:center;margin:48px 0 0}
@media (max-width:1200px){.h1{font-size:56px}.h2{font-size:36px}}
@media (max-width:768px){body{font-size:16px}.h1{font-size:40px;letter-spacing:-.015em}.h2{font-size:30px}.lead{font-size:18px}h3{font-size:18px}}
@media (max-width:360px){.h1{font-size:34px}}
@media (max-width:768px){.eyebrow{gap:10px;font-size:12px}.eyebrow i{width:16px}.eyebrow span:first-child{white-space:nowrap}}

/* botones: el coral es EXCLUSIVO de la acción */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border:0;border-radius:999px;background:var(--coral);color:var(--ink);font:800 15px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}
.btn:hover{background:#F58A5C;transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(184,80,42,.6)} .btn:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.btn--sm{min-height:44px;padding:0 20px;font-size:13px} .btn--block{width:100%}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;color:var(--ink);font:600 16px/1.3 var(--body);text-decoration:none;cursor:pointer;border-bottom:2px solid var(--coral);padding-bottom:3px;transition:border-color .18s,color .18s}
.btn-ghost:hover{color:var(--coral-ink);border-color:var(--coral-ink)}
.btn-ghost--arrow::after{content:"→";font-family:var(--serif);font-style:italic}
.link{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* cabecera mínima: marca + CTA, sin navegación */
.top{position:sticky;top:0;z-index:20;background:rgba(251,244,236,.86);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line)}
.top__in{display:flex;align-items:center;justify-content:space-between;min-height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:48px;height:48px;border-radius:50%;flex:none}
.brand__t{display:flex;flex-direction:column;line-height:1.05}
.brand__t strong{font:800 15px/1 var(--display);letter-spacing:.08em;color:var(--ink)} .brand__t small{font:400 11px/1.3 var(--body);color:var(--ink-3);letter-spacing:.06em}
@media (max-width:768px){.brand__t small{display:none}.top__in{min-height:60px;gap:12px}.brand img{width:36px;height:36px}.brand__t strong{font-size:13px;white-space:nowrap}.btn--sm{min-height:40px;padding:0 14px;font-size:12px;white-space:nowrap}}

/* hero */
.hero{padding:40px 0 80px;position:relative}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,460px);gap:64px;align-items:start}
.hero__brand{margin:20px 0 0;font-size:16px;color:var(--ink-3);max-width:560px}
.trust{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:16px;color:var(--ink-2)}
.trust li{padding-left:22px;position:relative}
.trust li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--coral)}
.hero__fig{margin:48px 0 0;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);position:relative}
.hero__fig picture img{aspect-ratio:16/10;object-fit:cover;width:100%}
.hero__fig figcaption{position:absolute;right:12px;bottom:10px;font-size:11px;color:#fff;background:rgba(36,26,22,.55);padding:4px 8px;border-radius:6px}
@media (max-width:980px){
  .hero{padding:28px 0 56px}
  .hero__grid{grid-template-columns:1fr;gap:28px}
  .hero__copy{display:contents}
  .eyebrow{order:1;margin-bottom:12px} .h1{order:2} .lead{order:3;margin-top:12px;font-size:17px} .hero__form{order:4;margin-top:4px} .hero__brand{order:5;margin-top:24px} .trust{order:6} .hero__fig{order:7;margin-top:8px}
  .trust{margin-top:16px}
}

/* tarjeta de formulario */
.card{background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:26px 28px}
.dark .card,.dark .card .lead,.dark .card p,.dark .card legend,.dark .card label{color:var(--ink)}
.dark .card .form__sub,.dark .card .done p{color:var(--ink-2)}
.dark .card .form__micro,.dark .card .hint,.dark .card .form__legal,.dark .card .done__note,.dark .card .steps li{color:var(--ink-3)}
.dark .card .steps li.on{color:var(--paper)}
.form{position:relative}
.form__micro{margin:0 0 10px;font-size:13px;color:var(--ink-3);line-height:1.4}
.form__t{font:800 22px/1.15 var(--display);text-transform:uppercase;letter-spacing:-.01em;margin:0}
.form__sub{margin:6px 0 14px;color:var(--ink-2);font-size:15px}
.steps{list-style:none;display:flex;gap:8px;margin:0 0 20px;padding:0;font:600 11px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.steps li{padding:8px 12px;border-radius:999px;border:1px solid var(--line)}
.steps li.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
fieldset{border:0;margin:0 0 14px;padding:0;min-width:0}
.q{font:600 15px/1.35 var(--body);color:var(--ink);margin:0 0 10px;padding:0}
.q--contact{margin-bottom:16px}
.opts{display:flex;flex-direction:column;gap:8px}
.opts--row{flex-direction:row;flex-wrap:wrap}
.opts--row .opt{flex:1 1 150px}
.opt{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer;background:var(--white);font-size:15px;line-height:1.3;transition:border-color .15s,background .15s}
.opt:hover{border-color:var(--ink)}
.opt input{appearance:none;width:18px;height:18px;border:2px solid var(--ink-3);border-radius:50%;margin:0;flex:none;display:grid;place-content:center}
.opt input::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink);transform:scale(0);transition:transform .12s}
.opt input:checked::before{transform:scale(1)} .opt input:checked{border-color:var(--ink)}
.opt:has(input:checked){border-color:var(--ink);background:var(--paper)}
.opt input:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.hint{margin:8px 0 0;font-size:13px;color:var(--ink-3)}
.field{margin:0 0 14px} .field label{display:block;font:600 13px/1 var(--body);letter-spacing:.02em;margin:0 0 6px;color:var(--ink-2)}
.field input{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--r-sm);font:400 16px/1 var(--body);color:var(--ink);background:var(--white);transition:border-color .15s,box-shadow .15s}
.field input:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 3px rgba(248,152,112,.35)}
.field.bad input{border-color:#B3261E}
.err{display:none;margin:6px 0 0;font-size:13px;color:#8E1E17;line-height:1.35}
.field.bad .err,.err:not([hidden]).err--step,.err:not([hidden]).err--send{display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ink-2);margin:4px 0 16px;line-height:1.4}
.consent input{margin:3px 0 0;width:16px;height:16px;flex:none;accent-color:var(--ink)}
.step__nav{margin-top:6px}
.step__nav--2{display:flex;gap:16px;align-items:center}
.step__nav--2 .btn{flex:1}
.form__legal{margin:12px 0 0;font-size:12px;color:var(--ink-3);line-height:1.4}
.form.sending .btn{opacity:.6;pointer-events:none}
.form.sent > :not(.done){display:none!important}
.form.sent .done{display:block}
.done__k{font:600 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--coral-ink);margin:0 0 12px}
.done__t{font:800 22px/1.2 var(--display);text-transform:uppercase;margin:0 0 12px}
.done p{font-size:15px;color:var(--ink-2)} .done .btn{margin-top:8px} .done__note{font-size:13px;color:var(--ink-3);margin:12px 0 0}
@media (max-width:768px){.card{padding:22px 18px}.form__t{font-size:19px}.form__micro{display:none}}
@media (max-width:420px){.brand__t{display:none}}

/* secciones */
.sec{padding:112px 0}
.sec__head{max-width:760px;margin:0 auto 56px;text-align:center}
.sec__head .lead{margin-left:auto;margin-right:auto}
.sec__head--left{margin:0 0 56px;text-align:left}
.dark{background:var(--dark);color:var(--on-dark)}
@media (max-width:768px){.sec{padding:64px 0}.sec__head{margin-bottom:36px}}

/* 2 · situaciones: editorial escalonado */
.sec--problem{background:var(--white);border-top:1px solid var(--line)}
.sits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.sit{display:flex;flex-direction:column;gap:18px}
.sit:nth-child(2){margin-top:48px} .sit:nth-child(3){margin-top:96px}
.sit img{aspect-ratio:9/7;object-fit:cover;border-radius:var(--r);box-shadow:var(--sh)}
.sit__n{font:italic 500 44px/1 var(--serif);color:var(--coral-ink);display:block;margin:0 0 10px}
.sit p{margin:0;color:var(--ink-2);font-size:16px}
.pull{margin:80px auto 0;max-width:720px;border-left:3px solid var(--coral);padding:4px 0 4px 28px}
.pull p{margin:0;font:italic 400 30px/1.3 var(--serif);text-wrap:balance}
@media (max-width:980px){.sits{grid-template-columns:1fr 1fr}.sit:nth-child(3){margin-top:0;grid-column:1/-1}.sit:nth-child(3) img{aspect-ratio:16/8}}
@media (max-width:768px){.sits{grid-template-columns:1fr}.sit:nth-child(n){margin-top:0}.sit img{aspect-ratio:16/10}.pull{margin-top:48px}.pull p{font-size:24px}}

/* 3 · valor */
.sec--value{background:var(--paper-2)}
.value__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.value__head .h2{max-width:520px}
.value__list{list-style:none;margin:0;padding:0}
.value__list li{padding:28px 0;border-top:1px solid var(--line-strong)} .value__list li:last-child{border-bottom:1px solid var(--line-strong)}
.value__list .k{display:block;font:800 18px/1.3 var(--display);margin:0 0 8px}
.value__list p{margin:0;color:var(--ink-2);font-size:16px;max-width:520px}
@media (max-width:980px){.value__grid{grid-template-columns:1fr;gap:32px}}

/* 4 · método (sección fuerte) */
.cycle{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;counter-reset:f}
.cycle::before{content:"";position:absolute;left:5%;right:5%;top:30px;height:2px;background:linear-gradient(90deg,var(--sun),var(--coral),var(--mint));opacity:.9}
.cycle__i{position:relative;padding:0 20px 0 0;text-align:left}
.cycle__n{display:grid;place-content:center;width:60px;height:60px;border-radius:50%;background:var(--dark);border:2px solid var(--coral);color:var(--coral);font:italic 500 26px/1 var(--serif);margin:0 0 20px;position:relative;z-index:1}
.cycle__i:nth-child(1) .cycle__n{border-color:var(--sun);color:var(--sun)} .cycle__i:nth-child(4) .cycle__n{border-color:var(--mint);color:var(--mint)}
.cycle__i h3{color:var(--on-dark);text-transform:uppercase;letter-spacing:.04em;font-size:16px}
.cycle__i p{margin:0;color:var(--on-dark-2);font-size:15px;max-width:220px}
.cycle__loop{margin:28px 0 0;font:italic 400 18px/1 var(--serif);color:var(--coral)}
.cycle__loop::before{content:"↻ ";font-style:normal}
.lines{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:72px}
.line{background:var(--dark-2);border:1px solid rgba(246,235,224,.08);border-radius:var(--r);padding:32px 28px}
.line__n{font:italic 500 40px/1 var(--serif);color:var(--coral);display:block;margin:0 0 20px}
.line h3{color:var(--on-dark);text-transform:uppercase;letter-spacing:.04em}
.line p{margin:0;color:var(--on-dark-2);font-size:16px}
@media (max-width:980px){
  .cycle{grid-template-columns:1fr;gap:28px;padding-left:0}
  .cycle::before{left:29px;right:auto;top:0;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,var(--sun),var(--coral),var(--mint))}
  .cycle__i{display:grid;grid-template-columns:60px 1fr;column-gap:20px;align-items:start}
  .cycle__n{margin:0;grid-row:1/3} .cycle__i h3{margin-top:14px}
  .cycle__i p{max-width:none}
  .lines{grid-template-columns:1fr;margin-top:48px}
}

/* 5 · incluye */
.inc__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}
.inc__list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.inc__list li{display:grid;gap:4px;padding:22px 24px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);border-left:4px solid var(--coral)}
.inc__list strong{font:800 16px/1.3 var(--display)} .inc__list span{color:var(--ink-2);font-size:15px}
@media (max-width:980px){.inc__grid{grid-template-columns:1fr;gap:32px}}

/* 6 · cómo empezar */
.sec--how{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.how{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.how__n{display:block;font:italic 500 56px/1 var(--serif);color:var(--coral-ink);margin:0 0 14px}
.how p{margin:0;color:var(--ink-2);font-size:16px;max-width:320px}
@media (max-width:768px){.how{grid-template-columns:1fr;gap:28px}}

/* 7 · experiencias */
.proof__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.proof__box{background:var(--paper-2);border-radius:var(--r);padding:36px;font-size:17px;line-height:1.55}
.proof__wait{margin:0 0 20px;color:var(--ink-2)}
@media (max-width:980px){.proof__grid{grid-template-columns:1fr;gap:28px}}

/* 8 · transparencia */
.sec--clear{background:var(--paper-2);padding:88px 0}
.clear__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.clear__list{list-style:none;margin:0;padding:0}
.clear__list li{padding:14px 0 14px 28px;border-bottom:1px solid var(--line-strong);position:relative;color:var(--ink-2)}
.clear__list li::before{content:"";position:absolute;left:0;top:1.35em;width:12px;height:2px;background:var(--coral-ink)}
@media (max-width:980px){.clear__grid{grid-template-columns:1fr;gap:24px}}

/* 9 · faq */
.faq__grid{display:grid;grid-template-columns:1fr 1.4fr;gap:64px;align-items:start}
.faq details{border-top:1px solid var(--line-strong)} .faq details:last-child{border-bottom:1px solid var(--line-strong)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font:600 17px/1.35 var(--body);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:16px;font:italic 400 28px/1 var(--serif);color:var(--coral-ink);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{margin:0 0 20px;color:var(--ink-2);font-size:16px;max-width:600px}
@media (max-width:980px){.faq__grid{grid-template-columns:1fr;gap:24px}}

/* 10 · cierre */
.sec--close{position:relative;overflow:hidden;padding:120px 0}
.close__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;filter:saturate(.7);z-index:0}
.sec--close::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(42,26,20,.72),rgba(42,26,20,.94))}
.close__grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr minmax(360px,460px);gap:64px;align-items:start}
.close__copy .h2{color:var(--on-dark)}
@media (max-width:980px){.close__grid{grid-template-columns:1fr;gap:32px}.sec--close{padding:72px 0}}

/* pie mínimo */
.foot{background:var(--paper);border-top:1px solid var(--line);padding:40px 0}
.foot__in{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;font-size:13px;color:var(--ink-3)}
.foot__in img{width:56px;height:56px;border-radius:50%}
.foot__links{display:flex;gap:18px;margin:0} .foot__legal{margin:0}
@media (max-width:768px){.foot__in{grid-template-columns:1fr;text-align:center;justify-items:center}}

/* modales legales */
.modal{border:0;border-radius:var(--r);padding:32px;max-width:640px;width:calc(100% - 40px);box-shadow:var(--sh);background:var(--white);color:var(--ink)}
.modal::backdrop{background:rgba(36,26,22,.55)}
.modal h2{font:800 22px/1.2 var(--display);text-transform:uppercase;margin:0 0 16px}
.modal__x{position:absolute;right:12px;top:8px;background:none;border:0;font-size:30px;cursor:pointer;color:var(--ink-3)}
.todo{background:var(--sun);padding:14px 16px;border-radius:var(--r-sm);font-size:15px}

/* revelado robusto: visible por defecto */
.reveal{opacity:1}
html.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}
html.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1;transform:none}}

/* ---- pasada de acabado (28-oct tarde) ---- */
/* banda coral de los anuncios en la frase clave */
.h2 mark{background:var(--coral);color:var(--ink);padding:.02em .18em;border-radius:.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.dark .h2 mark{color:var(--ink)}
/* los tres elefantes del logo: coral · menta · amarillo */
.tres{display:flex;gap:6px;margin:0 0 12px}
.tres i{width:10px;height:10px;border-radius:50%;background:var(--coral)} .tres i:nth-child(2){background:var(--mint)} .tres i:nth-child(3){background:var(--sun)}
/* hero más cálido: luz coral suave detrás del titular, sello del elefante en la foto */
.hero{background:radial-gradient(900px 520px at 12% 0%,rgba(248,152,112,.16),transparent 60%),var(--paper)}
.hero__fig{position:relative}
.hero__fig picture img{aspect-ratio:16/10;object-fit:cover;width:100%}
/* tarjeta del formulario: filete coral arriba, como la banda de los anuncios */
.hero__form .card,.close__grid .card{border-top:5px solid var(--coral)}
/* método: silueta del elefante como marca de agua */
.sec--method{position:relative;overflow:hidden}
/* situaciones: foto que gana al pasar, número en coral sobre la foto */
.sit{position:relative}
.sit picture img{aspect-ratio:9/7;object-fit:cover;border-radius:var(--r);box-shadow:var(--sh);transition:transform .5s ease}
.sit:hover picture img{transform:scale(1.015)}
.sit picture{overflow:hidden;border-radius:var(--r);display:block}
/* cierre */
.close__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.close__bg{position:absolute;inset:0}
/* botones: foco visible en oscuro */
.dark .btn:focus-visible{outline-color:var(--on-dark)}
/* FAQ: apertura suave */
.faq details p{animation:faqin .25s ease}
@keyframes faqin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

