/* ===== Essentia Country LP · paleta de marca ===== */
:root{
  --negro:#1a1614;
  --taupe:#574545;        /* Pantone 438C */
  --taupe-d:#3f3232;
  --olivo:#7a7157;        /* Pantone 7497C */
  --olivo-d:#605838;
  --crema:#f3efe9;
  --crema-2:#e9e3d9;
  --blanco:#ffffff;
  --texto:#2b2522;
  --texto-2:#6b6058;
  --linea:#ddd4c8;
  --radius:4px;
  --maxw:1120px;
  --ease:cubic-bezier(.4,0,.2,1);
  font-synthesis:none;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{
  font-family:'Josefin Sans',system-ui,sans-serif;
  color:var(--texto);background:var(--crema);
  font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
strong{font-weight:600}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,48px)}

/* ===== Tipografía ===== */
h1,h2,h3,.eyebrow,.kicker{font-family:'Cinzel',serif}
.eyebrow{font-family:'Josefin Sans',sans-serif;letter-spacing:.32em;text-transform:uppercase;font-size:.72rem;font-weight:500}
.kicker{display:block;font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;color:var(--olivo);margin-bottom:14px;font-weight:500}
.kicker--light{color:#cdbfa6}
.h2{font-size:clamp(1.7rem,4.5vw,2.9rem);line-height:1.12;font-weight:500;letter-spacing:.01em;color:var(--negro)}
.h2--light{color:#fff}
.lead{font-size:clamp(1rem,2.2vw,1.18rem);color:var(--texto-2);max-width:46ch;margin-top:18px;line-height:1.7}
.lead--light{color:#d8cfc4}
.disclaimer{font-size:.78rem;color:var(--texto-2);margin-top:18px;font-style:italic;opacity:.85}

/* ===== Botones ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-family:'Josefin Sans',sans-serif;font-size:.92rem;font-weight:500;letter-spacing:.06em;
  padding:15px 30px;border-radius:var(--radius);border:1.5px solid transparent;
  cursor:pointer;transition:all .22s var(--ease);min-height:48px;text-transform:uppercase;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.btn--sm{padding:12px 22px;font-size:.82rem;min-height:44px}
.btn--primary{background:var(--olivo);color:#fff;border-color:var(--olivo)}
.btn--primary:hover{background:var(--olivo-d);border-color:var(--olivo-d)}
.btn--outline{background:transparent;color:var(--negro);border-color:var(--negro)}
.btn--outline:hover{background:var(--negro);color:#fff}
.btn--ghost{background:transparent;color:var(--negro);border-color:var(--linea)}
.btn--ghost:hover{background:var(--negro);color:#fff;border-color:var(--negro)}
.btn--ghost-light{background:transparent;color:#e9e3d9;border-color:rgba(255,255,255,.4)}
.btn--ghost-light:hover{background:rgba(255,255,255,.12)}
.btn:focus-visible{outline:3px solid var(--olivo);outline-offset:3px}

/* ===== Nav ===== */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px clamp(20px,5vw,48px);
  background:rgba(243,239,233,.96);box-shadow:0 1px 0 var(--linea);backdrop-filter:blur(8px);
  transform:translateY(-100%);opacity:0;pointer-events:none;
  transition:transform .35s var(--ease),opacity .35s var(--ease);
}
.nav.is-stuck{transform:translateY(0);opacity:1;pointer-events:auto}
.nav__logo{height:40px;width:auto;filter:invert(1) brightness(2) drop-shadow(0 1px 6px rgba(0,0,0,.5));transition:filter .3s}
.nav.is-stuck .nav__logo{filter:none}
.nav__cta{padding:10px 20px;min-height:40px;font-size:.78rem;color:#fff;border-color:rgba(255,255,255,.55);text-shadow:0 1px 8px rgba(0,0,0,.5)}
.nav__cta:hover{background:#fff;color:var(--negro);border-color:#fff;text-shadow:none}
.nav.is-stuck .nav__cta{color:var(--negro);border-color:var(--negro);text-shadow:none}
@media(max-width:560px){.nav__cta{display:none}}

/* ===== Hero ===== */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;color:#fff;overflow:hidden}
.hero__media{position:absolute;inset:0;z-index:0}
.hero__media img{width:100%;height:100%;object-fit:cover}
.hero__scrim{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(20,16,14,.88) 0%,rgba(20,16,14,.66) 38%,rgba(20,16,14,.28) 70%,rgba(20,16,14,.12) 100%),
  linear-gradient(180deg,rgba(20,16,14,.5) 0%,rgba(20,16,14,0) 26%,rgba(20,16,14,0) 60%,rgba(20,16,14,.62) 100%)}
.hero__inner{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin:0 auto;padding:120px clamp(20px,5vw,48px) 96px}
.hero__logo{height:66px;width:auto;margin-bottom:28px;filter:drop-shadow(0 2px 12px rgba(0,0,0,.45))}
.hero .eyebrow{color:#ecdfc9;margin-bottom:18px;text-shadow:0 1px 10px rgba(0,0,0,.5)}
.hero__h1{font-size:clamp(2.3rem,7vw,4.6rem);font-weight:500;line-height:1.06;letter-spacing:.01em;text-shadow:0 2px 24px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.4)}
.hero__sub{font-size:clamp(1.02rem,2.4vw,1.3rem);max-width:38ch;margin-top:22px;color:#f2ece2;line-height:1.6;text-shadow:0 1px 14px rgba(0,0,0,.6)}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero__cta-stack{display:inline-flex;flex-direction:column;gap:14px;width:fit-content;max-width:100%}
.hero__cta-row{display:flex;gap:14px;flex-wrap:wrap}
.hero__promo{width:100%}
.hero__cta .btn--outline{color:#fff;border-color:rgba(255,255,255,.6)}
.hero__cta .btn--outline:hover{background:#fff;color:var(--negro)}
.hero__micro{margin-top:18px;font-size:.84rem;color:#ddd3c5;letter-spacing:.02em;text-shadow:0 1px 8px rgba(0,0,0,.6)}
@media(max-width:760px){
  .hero__scrim{background:
    linear-gradient(180deg,rgba(20,16,14,.6) 0%,rgba(20,16,14,.3) 28%,rgba(20,16,14,.5) 66%,rgba(20,16,14,.84) 100%)}
  .hero__inner{padding:64px clamp(20px,5vw,48px) 64px}
  .hero__logo{height:46px;margin-bottom:20px}
  .hero__h1{font-size:2rem;line-height:1.1}
  .hero__sub{font-size:1rem;margin-top:16px}
  .hero__cta{margin-top:24px;gap:10px}
  .hero__cta .btn{width:100%}
  .hero__micro{margin-top:14px}
}
.hero__scroll{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:2;font-size:1.5rem;color:#fff;opacity:.7;animation:bob 2s infinite}
@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

/* ===== Secciones ===== */
.section{padding:clamp(64px,9vw,120px) 0}
.section--light{background:var(--crema)}
.section--cream{background:var(--crema-2)}
.section--dark{background:var(--negro);color:#fff}
.section--brown{background:linear-gradient(160deg,var(--taupe) 0%,var(--taupe-d) 100%);color:#fff}

/* ===== Ubicación ===== */
.poi{list-style:none;margin:36px 0 0;display:grid;gap:14px;max-width:640px}
.poi li{display:flex;align-items:center;gap:14px;font-size:1.02rem;padding-bottom:14px;border-bottom:1px solid var(--linea)}
.zonagal{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:36px}
.zonagal__item{position:relative;margin:0;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3}
.zonagal__item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}
.zonagal__item:hover img{transform:scale(1.04)}
.zonagal__item figcaption{position:absolute;inset:auto 0 0 0;padding:14px 16px;color:#fff;font-family:'Cinzel',serif;font-size:1rem;letter-spacing:.02em;background:linear-gradient(to top,rgba(20,16,14,.8),rgba(20,16,14,0))}
/* Ubicación: lista + carrusel */
.ubic__grid{display:grid;gap:30px;margin-top:36px}
@media(min-width:860px){.ubic__grid{grid-template-columns:0.85fr 1.15fr;align-items:center}.ubic__grid .poi{margin-top:0}}
.zonacar{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 34px rgba(40,30,20,.12)}
.zonacar__viewport{overflow:hidden;border-radius:var(--radius)}
.zonacar__track{display:flex;transition:transform .55s var(--ease)}
.zonacar__slide{position:relative;margin:0;flex:0 0 100%;aspect-ratio:16/10}
.zonacar__slide img{width:100%;height:100%;object-fit:cover;display:block}
.zonacar__slide figcaption{position:absolute;inset:auto 0 0 0;padding:18px 20px;color:#fff;font-family:'Cinzel',serif;font-size:1.15rem;letter-spacing:.02em;background:linear-gradient(to top,rgba(20,16,14,.82),rgba(20,16,14,0))}
.zonacar__nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.85);color:var(--negro);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 12px rgba(0,0,0,.22);transition:background .2s var(--ease)}
.zonacar__nav:hover{background:#fff}
.zonacar__nav--prev{left:12px}
.zonacar__nav--next{right:12px}
.zonacar__dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.zonacar__dot{width:8px;height:8px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0;transition:all .25s var(--ease)}
.zonacar__dot.is-on{background:#fff;width:22px;border-radius:4px}
.ic{width:22px;height:22px;flex:none;fill:none;stroke:var(--olivo);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ic--lg{width:32px;height:32px;stroke-width:1.4}
.ic--xl{width:54px;height:54px;stroke:var(--olivo);stroke-width:1.8}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;margin-top:52px}
.stat{border-left:2px solid var(--olivo);padding-left:20px}
.map{margin-top:44px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--linea);box-shadow:0 12px 34px rgba(40,30,20,.10)}
.map__frame{display:block;width:100%;height:clamp(280px,42vw,440px);border:0}
.stat__n{display:block;font-family:'Cinzel',serif;font-size:2.1rem;font-weight:600;color:var(--negro);line-height:1}
.stat__n small{font-size:.9rem;font-weight:400;color:var(--texto-2)}
.stat__l{display:block;font-size:.92rem;color:var(--texto-2);margin-top:8px}

/* ===== Prueba real ===== */
.proof__grid{display:grid;gap:40px;align-items:center}
.proof__media img{width:100%;border-radius:var(--radius);aspect-ratio:16/10;object-fit:cover}
.proof__pill{display:inline-block;margin-top:24px;padding:12px 20px;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius);font-size:.92rem;color:#e9e3d9}
@media(min-width:860px){.proof__grid{grid-template-columns:1.1fr 1fr}}

/* ===== Amenidades (todas con foto) ===== */
.amen{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.amen__card{position:relative;overflow:hidden;border-radius:var(--radius);aspect-ratio:4/3;background:var(--crema-2);
  display:flex;flex-direction:column;justify-content:flex-end;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.amen__card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(87,69,69,.2)}
.amen__card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.amen__card:hover img{transform:scale(1.05)}
.amen__cap{position:relative;z-index:2;padding:26px 22px 20px;color:#fff;
  background:linear-gradient(0deg,rgba(20,16,14,.9) 0%,rgba(20,16,14,.55) 55%,rgba(20,16,14,0) 100%)}
.amen__cap h3{font-family:'Cinzel',serif;font-size:1.18rem;font-weight:500;color:#fff;margin:0 0 5px;line-height:1.15}
.amen__cap p{font-size:.9rem;color:#ece5db;line-height:1.45}
@media(max-width:900px){.amen{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.amen{grid-template-columns:repeat(2,1fr);gap:12px}.amen__cap{padding:18px 16px 16px}.amen__cap h3{font-size:1.04rem}.amen__cap p{font-size:.82rem}}

/* ===== Tipologías ===== */
.typo{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:44px}
.typo__card{background:#fff;border:1px solid var(--linea);border-radius:var(--radius);padding:28px 24px;display:flex;flex-direction:column}
.typo__card--feat{border-color:var(--linea);box-shadow:none}
.typo__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;min-height:56px;border-bottom:1px solid var(--linea);padding-bottom:14px}
.typo__rec{font-family:'Cinzel',serif;font-size:1.05rem;font-weight:500;color:var(--negro);line-height:1.2}
.typo__m2{font-size:.92rem;color:var(--olivo);font-weight:600}
.typo__feat{list-style:none;margin:16px 0 auto;display:grid;gap:7px}
.typo__feat li{font-size:.9rem;color:var(--texto-2);padding-left:16px;position:relative}
.typo__feat li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--olivo)}
.typo__foot{display:flex;align-items:baseline;gap:8px;margin-top:auto}
.typo__from{font-size:.8rem;color:var(--texto-2);text-transform:uppercase;letter-spacing:.1em}
.typo__price{font-family:'Cinzel',serif;font-size:1.7rem;font-weight:600;color:var(--negro)}
.typo__price small{font-size:.8rem;font-weight:400;color:var(--texto-2)}
.typo__roi{font-size:.86rem;color:var(--olivo-d);font-weight:600;margin-top:6px}
.typo__card .btn{margin-top:16px;width:100%;padding:12px 10px;font-size:.7rem;letter-spacing:.02em;min-height:40px;white-space:nowrap}
.typo__pay{margin-top:34px;text-align:center;font-size:1rem;color:var(--texto);background:#fff;border:1px solid var(--linea);border-radius:var(--radius);padding:16px 22px}
.typo__plano{display:block;width:100%;position:relative;margin-bottom:18px;padding:0;border:1px solid var(--linea);border-radius:var(--radius);background:#fff;cursor:pointer;overflow:hidden;transition:border-color .2s var(--ease)}
.typo__plano:hover{border-color:var(--olivo)}
.typo__plano img{width:100%;height:170px;object-fit:contain;background:#fff;display:block;padding:8px}
.typo__plano-hint{position:absolute;bottom:8px;right:8px;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(26,22,20,.72);padding:4px 9px;border-radius:999px}
.typo__plano:focus-visible{outline:3px solid var(--olivo);outline-offset:2px}
.planobox{position:fixed;inset:0;z-index:200;background:rgba(20,16,14,.9);display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vw,48px)}
.planobox img{max-width:100%;max-height:90vh;object-fit:contain;background:var(--crema);border-radius:var(--radius);box-shadow:0 20px 60px rgba(0,0,0,.5)}
.planobox__close{position:absolute;top:18px;right:22px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:1.15rem;cursor:pointer;line-height:1}
.planobox__close:hover{background:rgba(255,255,255,.26)}

/* ===== Desarrollador ===== */
.dev{display:grid;gap:40px;align-items:center}
.dev__list{list-style:none;margin:24px 0;display:grid;gap:12px}
.dev__list li{font-size:1rem;color:var(--texto);padding-left:18px;border-left:2px solid var(--olivo)}
.dev__track{font-size:.92rem;color:var(--texto-2);font-style:italic}
.dev__stats{display:flex;gap:40px;margin:26px 0 4px}
.dev__stat{display:flex;flex-direction:column}
.dev__n{font-family:'Cinzel',serif;font-size:2.6rem;font-weight:600;color:var(--olivo-d);line-height:1}
.dev__l{font-size:.86rem;color:var(--texto-2);margin-top:6px;max-width:16ch}
.dev__logo{height:44px;width:auto;margin-top:24px}
.dev__media img{width:100%;border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover}
@media(min-width:860px){.dev{grid-template-columns:1fr 1fr}}

/* ===== Form ===== */
.form-wrap{max-width:620px}
.cform{margin-top:30px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:clamp(24px,5vw,40px)}
.cform__progress{height:3px;background:rgba(255,255,255,.16);border-radius:3px;overflow:hidden;margin-bottom:30px}
.cform__bar{display:block;height:100%;width:20%;background:var(--olivo);border-radius:3px;transition:width .4s var(--ease)}
.step{border:0;display:none}
.step.is-active{display:block;animation:fade .35s var(--ease)}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.cform__q{font-family:'Cinzel',serif;font-size:1.3rem;color:#fff;margin-bottom:22px;font-weight:500}
.opts{display:grid;gap:12px}
.opt{
  text-align:left;background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.22);
  color:#f3efe9;padding:16px 20px;border-radius:var(--radius);font-family:inherit;font-size:1rem;
  cursor:pointer;transition:all .2s var(--ease);min-height:48px;touch-action:manipulation;
}
.opt:hover{border-color:var(--olivo);background:rgba(122,113,87,.18)}
.opt.is-sel{background:var(--olivo);border-color:var(--olivo);color:#fff;font-weight:500}
.opt:focus-visible{outline:3px solid #cdbfa6;outline-offset:2px}
.field{margin-bottom:16px}
.field label{display:block;font-size:.86rem;color:#d8cfc4;margin-bottom:7px;letter-spacing:.04em}
.field input{
  width:100%;padding:14px 16px;border-radius:var(--radius);border:1.5px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.95);color:var(--texto);font-family:inherit;font-size:1rem;min-height:48px;
}
.field input:focus{outline:none;border-color:var(--olivo);box-shadow:0 0 0 3px rgba(122,113,87,.3)}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;color:#d8cfc4;margin-top:8px;line-height:1.5}
.check input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--olivo)}
.check a{color:#e4d9c5;text-decoration:underline}
.cform__err{color:#ffb4a8;font-size:.88rem;margin-top:12px}
.cform__nav{display:flex;gap:12px;margin-top:26px}
.cform__nav .btn{flex:1}
.cform__micro{text-align:center;font-size:.82rem;color:#cdbfa6;margin-top:16px}
.cform__done{text-align:center;padding:30px 10px}
.cform__done h3{font-family:'Cinzel',serif;color:#fff;font-size:1.5rem;margin:18px 0 10px;font-weight:500}
.cform__done p{color:#d8cfc4}
.cform__done .ic--xl{stroke:#fff;margin:0 auto}

/* ===== Footer ===== */
.footer{background:var(--negro);color:#cfc6ba;padding:54px 0}
.footer__in{text-align:center}
.footer__logo{height:42px;width:auto;margin:0 auto 20px;filter:brightness(0) invert(1);opacity:.9}
.footer__addr{font-size:.92rem;margin-bottom:10px}
.footer__phone{font-size:.95rem;margin-bottom:12px}
.footer__phone a{color:#ecdfc9;font-weight:500}
.footer__phone a:hover{text-decoration:underline}
.footer__legal{font-size:.82rem;color:#8d8378}
.footer__fine{color:#8d8378;font-size:.76rem;font-style:italic;margin:0 auto 12px;max-width:60ch;opacity:.85}
.footer__legal a{text-decoration:underline}

/* ===== Sticky CTA móvil ===== */
.sticky-cta{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:90;
  display:none;align-items:center;justify-content:center;
  background:var(--olivo);color:#fff;padding:16px;border-radius:var(--radius);
  font-family:'Josefin Sans',sans-serif;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  font-size:.9rem;box-shadow:0 8px 28px rgba(26,22,20,.4);
}
@media(max-width:760px){body.past-hero .sticky-cta{display:flex}body.past-hero .footer{padding-bottom:90px}}

/* ===== Interiores / depa muestra ===== */
.interi{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.interi figure{position:relative;margin:0;overflow:hidden;border-radius:var(--radius);background:#241e1b}
.interi figure img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.interi figure:hover img{transform:scale(1.04)}
.interi figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:22px 20px 16px;color:#fff;font-size:.9rem;letter-spacing:.01em;
  background:linear-gradient(0deg,rgba(20,16,14,.86) 0%,rgba(20,16,14,0) 100%)}
.interi__feat{grid-column:span 3;aspect-ratio:3/2}
.interi__feat figcaption{font-family:'Cinzel',serif;font-size:1.05rem;padding:30px 26px 22px}
.interi__cell{aspect-ratio:4/3}
@media(max-width:680px){
  .interi{grid-template-columns:repeat(2,1fr)}
  .interi__feat{grid-column:span 2;aspect-ratio:3/2}
  .interi__cell:last-child{grid-column:span 2;aspect-ratio:16/9}
}

/* ===== Variante: secciones solo-B ===== */
body[data-variant="a"] .only-b{display:none!important}
.disclaimer--light{color:#bdb3a4}

/* Caso de inversión (B) */
.caso__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:44px}
.caso__stat{background:#fff;border:1px solid var(--linea);border-radius:var(--radius);padding:26px 24px}
.caso__n{display:block;font-family:'Cinzel',serif;font-size:2.3rem;font-weight:600;color:var(--negro);line-height:1}
.caso__n small{font-size:.82rem;font-weight:400;color:var(--texto-2)}
.caso__l{display:block;font-size:.92rem;color:var(--texto-2);margin-top:10px;line-height:1.45}
.caso__return{margin-top:40px;background:#fff;border:1px solid var(--linea);border-radius:var(--radius);padding:30px clamp(22px,4vw,36px)}
.caso__return-title{font-family:'Cinzel',serif;font-size:1.1rem;color:var(--negro);margin-bottom:18px}
.caso__bar{display:flex;gap:6px;height:62px;border-radius:var(--radius);overflow:hidden}
.caso__seg{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 18px;color:#fff;min-width:0}
.caso__seg em{font-style:normal;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;opacity:.92}
.caso__seg b{font-family:'Cinzel',serif;font-size:1.15rem;font-weight:600;white-space:nowrap}
.caso__seg--renta{background:var(--taupe)}
.caso__seg--plus{background:var(--olivo)}
.caso__total{margin-top:20px;font-size:1.15rem;color:var(--texto)}
.caso__total strong{font-family:'Cinzel',serif;color:var(--olivo-d);font-size:1.75rem;font-weight:700;line-height:1}

/* Calculadora (B) */
.calc{margin-top:40px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:clamp(22px,4vw,38px);max-width:680px}
.calc__tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.calc__tab{flex:1 1 auto;min-width:120px;background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.22);color:#ece5db;
  padding:13px 14px;border-radius:var(--radius);font-family:'Josefin Sans',sans-serif;font-size:.92rem;cursor:pointer;
  transition:all .2s var(--ease);min-height:46px;touch-action:manipulation}
.calc__tab:hover{border-color:var(--olivo)}
.calc__tab.is-sel{background:var(--olivo);border-color:var(--olivo);color:#fff;font-weight:500}
.calc__tab:focus-visible{outline:3px solid #cdbfa6;outline-offset:2px}
.calc__grid{display:grid;gap:1px;background:rgba(255,255,255,.12);border-radius:var(--radius);overflow:hidden}
.calc__row{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#241e1b;padding:16px 20px}
.calc__row--head{background:#2c2522}
.calc__row--accent{background:#2a2a1f}
.calc__k{font-size:.94rem;color:#cfc6ba}
.calc__k small{display:block;font-size:.74rem;color:#9d9488;margin-top:2px;letter-spacing:.02em}
.calc__v{font-family:'Cinzel',serif;font-size:1.22rem;font-weight:600;color:#fff;text-align:right;white-space:nowrap}
.calc__row--accent .calc__v{color:#cdbf9c}
.calc__cta{width:100%;margin-top:24px}

/* ===== Cotizador (A) ===== */
.cotz{margin-top:38px}
.cotz__tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}
.cotz__tab{border:1px solid var(--linea);background:#fff;border-radius:var(--radius);padding:15px 14px;cursor:pointer;transition:all .2s var(--ease);text-align:left}
.cotz__tab:hover{border-color:var(--olivo)}
.cotz__tab.is-sel{background:var(--olivo);border-color:var(--olivo)}
.cotz__tab:focus-visible{outline:3px solid var(--olivo);outline-offset:2px}
.cotz__tn{display:block;font-family:'Cinzel',serif;font-size:1.05rem;font-weight:600;color:var(--negro);line-height:1.1}
.cotz__tm{display:block;font-size:.72rem;color:var(--texto-2);margin-top:3px}
.cotz__td{display:block;font-size:.86rem;color:var(--olivo-d);margin-top:8px;font-weight:600}
.cotz__tab.is-sel .cotz__tn,.cotz__tab.is-sel .cotz__td{color:#fff}
.cotz__tab.is-sel .cotz__tm{color:#e4dcce}
.cotz__schemes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cotz__sch{position:relative;border:1px solid var(--linea);background:#fff;border-radius:var(--radius);padding:26px 22px;display:flex;flex-direction:column}
.cotz__sch--promo{border-color:var(--olivo-d);background:linear-gradient(155deg,var(--olivo) 0%,var(--olivo-d) 100%);color:#fff;box-shadow:0 12px 30px rgba(96,88,56,.28)}
.cotz__badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--crema);color:var(--olivo-d);font-size:.7rem;font-weight:700;letter-spacing:.06em;padding:5px 14px;border-radius:999px;white-space:nowrap;box-shadow:0 3px 10px rgba(0,0,0,.18)}
.cotz__sn{font-family:'Cinzel',serif;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--negro)}
.cotz__sch--promo .cotz__sn{color:#fff}
.cotz__pbig{font-family:'Cinzel',serif;font-weight:600;font-size:2.3rem;line-height:1;margin-top:10px;color:var(--negro)}
.cotz__sch--promo .cotz__pbig{color:#fff}
.cotz__plabel{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--texto-2);margin-top:6px}
.cotz__kdiv{height:1px;background:var(--linea);margin:18px 0 14px}
.cotz__rows{display:flex;flex-direction:column;gap:10px}
.cotz__r{display:flex;justify-content:space-between;gap:12px;font-size:.86rem;color:var(--texto-2)}
.cotz__r b{font-weight:600;color:var(--negro)}
.cotz__r.hot b{color:var(--olivo-d);font-weight:700}
.cotz__hint{margin-top:12px;font-size:.76rem;color:var(--texto-2);line-height:1.45}
.cotz__sch--promo .cotz__hint{color:rgba(255,255,255,.85)}
.cotz__sch--promo .cotz__plabel{color:rgba(255,255,255,.72)}
.cotz__sch--promo .cotz__kdiv{background:rgba(255,255,255,.28)}
.cotz__sch--promo .cotz__r{color:rgba(255,255,255,.82)}
.cotz__sch--promo .cotz__r b,.cotz__sch--promo .cotz__r.hot b{color:#fff}
.cotz__step{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--texto-2);font-weight:500;margin:0 0 12px}
.cotz__promo{margin-top:22px;text-align:center;font-size:.92rem;color:var(--texto-2);font-weight:300}
.cotz__promo b{color:var(--olivo-d);font-weight:600}
.cotz__cta{width:100%;margin-top:22px}
#cot-fine{text-align:center}
@media(max-width:820px){.cotz__tabs{grid-template-columns:1fr 1fr}.cotz__schemes{grid-template-columns:1fr}}
@media(max-width:560px){.calc__v{font-size:1.05rem}.caso__seg b{font-size:1rem}}

/* reveal */
.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js [data-reveal].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js [data-reveal]{opacity:1!important;transform:none!important}}
