
 .uni{min-height:100svh;display:flex;flex-direction:column}
 .uni .hero{flex:1;min-height:0;padding-top:max(var(--e7),calc(env(safe-area-inset-top) + 64px))}
 .cierre{padding:var(--e7) 0 var(--e6)}
 .fila{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));
   gap:clamp(24px,3.4vw,44px)}
 .fila .dato b{white-space:nowrap;font-size:clamp(27px,2.6vw,38px)}
 .pie2{margin-top:var(--e6);padding-top:var(--e5);border-top:1px solid var(--line);
   display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;
   font-size:14.5px;color:var(--mut);line-height:1.6}
 .pie2 b{display:block;color:var(--azul);font-weight:500;font-size:15.5px}
 /* el telefono: una cifra por renglon, si no $1,150,000 y Q4 2027 se enciman */
 .aliados{margin-top:var(--e6);padding-top:var(--e5);
   border-top:1px solid var(--line);display:grid;align-items:start;
   grid-template-columns:repeat(3,1fr);gap:clamp(24px,3.4vw,52px)}
 @media (max-width:760px){ .aliados{grid-template-columns:1fr} }
 .aliados .al{display:flex;flex-direction:column;gap:10px}
 .aliados .pap{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
   color:var(--mut);font-weight:600}
 .aliados img{height:clamp(22px,2.3vw,30px);width:auto;opacity:.58;
   align-self:flex-start}
 .casa{padding:var(--e3) 0 var(--e7)}
 .grupo + .grupo{margin-top:var(--e6)}
 .grupo .rot{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
   color:var(--mut);padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:var(--e3)}
 .gal{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e3)}
 .gal figcaption{margin-top:9px;font-size:12.5px;color:var(--mut);
   letter-spacing:.01em;line-height:1.4}
 .terreno{margin-top:var(--e6);padding-top:var(--e6);border-top:1px solid var(--line)}
 .terreno img{width:100%;display:block;border-radius:var(--r);aspect-ratio:16 / 9;
   object-fit:cover;background:var(--card)}
 .terreno .rot{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
   color:var(--gold);margin-bottom:var(--e2)}
 .terreno figcaption{margin-top:12px;font-size:13.5px;color:var(--mut);line-height:1.5;
   max-width:46em;font-weight:300}
 .pedir{background:var(--azul);padding:var(--e7) 0}
 .pedir .rot{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
   color:#E8C98E;margin-bottom:var(--e2)}
 .pedir h2{color:#F5F0E6;font-size:clamp(23px,2.6vw,33px);line-height:1.15;
   max-width:22em;letter-spacing:-.01em}
 .pedir .lead{color:rgba(245,240,230,.82);font-size:16px;font-weight:300;
   line-height:1.6;max-width:34em;margin-top:var(--e2)}
 .pedir .hform{margin-top:var(--e5)}
 .casa img{width:100%;height:100%;object-fit:cover;border-radius:var(--r);display:block;
   background:var(--card);aspect-ratio:3/2}
 .casa .pie{margin-top:var(--e3);display:flex;flex-wrap:wrap;gap:var(--e2) var(--e4);
   justify-content:space-between;align-items:baseline;font-size:14.5px;color:var(--mut)}
 @media (max-width:760px){ .casa .par{grid-template-columns:1fr} }
 .contacto{border-top:1px solid var(--line);margin-top:var(--e6);padding-top:var(--e5);
   display:flex;flex-wrap:wrap;align-items:center;gap:var(--e3) var(--e5)}
 .contacto .rot{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
   color:var(--mut);opacity:.75;width:100%}
 .vin{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--azul);
   font-size:16px;font-weight:500;transition:opacity .15s}
 .vin:hover{opacity:.66}
 .vin svg{width:21px;height:21px;flex:none}
 .vin.wa svg{fill:#25D366}
 .vin.co svg{stroke:var(--azul);stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
 .vin.pdte{color:var(--mut);opacity:.5;pointer-events:none}
 .acc{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e2) var(--e3);margin-top:var(--e5)}
 .btn.borde{background:rgba(245,240,230,.10);color:#F5F0E6;
   border:1.5px solid rgba(245,240,230,.45)}
 .btn.borde:hover{background:#F5F0E6;color:var(--azul);border-color:#F5F0E6}
 .hform{display:grid;grid-template-columns:repeat(3,minmax(104px,150px)) auto;
   gap:var(--e2) var(--e3);align-items:end}
 .hc label{display:block;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
   color:rgba(245,240,230,.72);margin-bottom:5px}
 .hc input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(245,240,230,.42);
   border-radius:0;padding:7px 0;font-family:Sora;font-size:15.5px;font-weight:300;color:#F5F0E6;
   transition:border-color .18s}
 .hc input:focus{outline:none;border-bottom-color:#E8C98E}
 .hc input::placeholder{color:rgba(245,240,230,.42)}
 .hform button{font-family:Sora;font-size:15px;font-weight:500;white-space:nowrap;
   padding:13px 26px;border-radius:100px;border:1.5px solid rgba(245,240,230,.42);
   background:rgba(245,240,230,.12);color:#F5F0E6;cursor:pointer;
   transition:background .16s,border-color .16s}
 .hform button:hover{background:#F5F0E6;color:var(--azul);border-color:#F5F0E6}
 .hform button:disabled{opacity:.5;cursor:default}
 .herr{display:none;font-size:13.5px;color:#F3C9C1;margin-top:var(--e2);width:100%}
 .hok{display:none;font-size:16px;font-weight:300;color:#F5F0E6;line-height:1.6;margin-top:var(--e4)}
 .hok b{font-weight:500}
 @media (max-width:980px){
   .acc{flex-direction:column;align-items:stretch;gap:var(--e4)}
   .hform{grid-template-columns:1fr 1fr}
   .hform button{grid-column:1 / -1;width:100%}
 }
 @media (max-width:520px){ .hform{grid-template-columns:1fr} }
 .contacto{border-top:1px solid var(--line);margin-top:var(--e6);padding-top:var(--e5);
   display:flex;flex-wrap:wrap;align-items:center;gap:var(--e3) var(--e5)}
 .contacto .rot{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
   color:var(--mut);opacity:.75;width:100%}
 .vin{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--azul);
   font-size:16px;font-weight:500;transition:opacity .15s}
 .vin:hover{opacity:.66}
 .vin svg{width:21px;height:21px;flex:none}
 .vin.wa svg{fill:#25D366}
 .vin.co svg{stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
 .piecon{border-top-color:rgba(245,240,230,.2);margin-top:var(--e5)}
 .piecon .rot{color:rgba(245,240,230,.5)}
 .piecon .vin{color:#F5F0E6}
 .piefin{background:var(--azul);color:rgba(245,240,230,.72);padding:var(--e7) 0 var(--e6);
   margin-top:var(--e7)}
 .piefin .pie2{border-top:0;margin-top:0;padding-top:0;color:rgba(245,240,230,.72)}
 .piefin .pie2 b{color:#F5F0E6}
 .piefin .marca{width:122px;opacity:.95;margin-bottom:var(--e4)}
 .piefin .liga3{display:inline-flex;align-items:center;gap:9px;margin-top:var(--e3);
   color:#E8C98E;text-decoration:none;font-size:15px;font-weight:500}
 .piefin .liga3 svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.9;fill:none;
   stroke-linecap:round;stroke-linejoin:round}
 .form{padding:0 0 var(--e7)}
 .form .marco{border-top:1px solid var(--line);padding-top:var(--e5);
   display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);
   gap:var(--e4) var(--e6);align-items:end}
 .form .dice{font-size:15px;line-height:1.6;color:var(--mut);max-width:min(26em,100%)}
 .form .dice b{display:block;font-family:MoonGet,serif;font-size:clamp(19px,2vw,25px);
   color:var(--azul);font-weight:400;letter-spacing:-.008em;margin-bottom:var(--e1)}
 .campos{display:grid;grid-template-columns:1fr 1fr auto;gap:var(--e3) var(--e4);align-items:end}
 .lin{position:relative}
 .lin label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.2em;
   text-transform:uppercase;color:var(--mut);opacity:.75;margin-bottom:6px}
 .lin input{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);
   border-radius:0;padding:7px 0;font-size:16px;font-weight:300;color:var(--ink);
   transition:border-color .18s}
 .lin input:focus{outline:none;border-bottom-color:var(--gold)}
 .lin input::placeholder{color:var(--mut);opacity:.45}
 .env{width:50px;height:50px;border-radius:999px;border:1.5px solid var(--line);
   background:transparent;cursor:pointer;display:grid;place-items:center;
   transition:background .16s,border-color .16s;flex:none}
 .env:hover{background:var(--azul);border-color:var(--azul)}
 .env:hover svg{stroke:#F5F0E6}
 .env svg{width:19px;height:19px;stroke:var(--azul);stroke-width:1.9;fill:none;
   stroke-linecap:round;stroke-linejoin:round;transition:stroke .16s}
 .env:disabled{opacity:.45;cursor:default}
 @media (max-width:860px){
   .form .marco{grid-template-columns:1fr}
   .campos{grid-template-columns:1fr 1fr}
   .env{grid-column:1 / -1;width:100%;border-radius:100px;height:48px;gap:10px;
     display:flex;align-items:center;justify-content:center;font-family:Sora;
     font-size:15px;font-weight:500;color:var(--azul)}
 }
 @media (max-width:520px){ .campos{grid-template-columns:1fr} }
 .ok{display:none;padding:22px 24px;background:#E6EFE9;border-left:3px solid #2F6B4F;
   border-radius:0 12px 12px 0;font-size:15.5px;line-height:1.6;color:#234C38}
 .ok b{display:block;color:#1D4030;font-weight:600;margin-bottom:4px}
 .err{display:none;font-size:14px;color:#A33A2C;margin-top:12px}
 @media (max-width:640px){
   .casa .gal{grid-template-columns:repeat(2,1fr);gap:var(--e2)}
   .casa .gal figcaption{font-size:12px}
   .fila{grid-template-columns:1fr;gap:24px}
   .fila .dato b{font-size:clamp(28px,8.5vw,38px)}
   .aliados{gap:28px}
 }
.mapab{display:block;margin:var(--e6) 0 0;text-decoration:none;color:inherit;border-top:1px solid var(--line);padding-top:var(--e6)}
.mapab img{display:block;width:100%;height:auto;border-radius:14px}
.mapat{display:flex;flex-direction:column;gap:4px;margin-top:14px}
.mapat b{font-weight:500;font-size:17px}
.mapat span{color:var(--gris);font-size:14.5px;max-width:46em}
.mapab:hover img{opacity:.93}

 /* ---- pestañas ---- */
 .tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);
   margin-bottom:var(--e4);position:sticky;top:0;z-index:20;background:var(--cream);
   padding-top:var(--e2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
 .tb{appearance:none;border:0;background:transparent;cursor:pointer;font-family:Sora;
   font-size:15px;font-weight:300;color:var(--mut);padding:12px 16px 13px;
   border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .16s,border-color .16s;
   white-space:nowrap}
 .tb:hover{color:var(--azul)}
 .tb.on{color:var(--azul);font-weight:500;border-bottom-color:var(--azul)}
 .panel{display:none}
 .panel.on{display:block}

 /* ---- carrusel ---- */
 .carr{position:relative}
 .tira{display:flex;gap:var(--e3);overflow-x:auto;scroll-snap-type:x mandatory;
   scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;
   padding-bottom:4px}
 .tira::-webkit-scrollbar{display:none}
 .tira figure{margin:0;flex:0 0 min(640px,78%);scroll-snap-align:start}
 .tira img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r);
   display:block;background:var(--card)}
 .tira figcaption{margin-top:11px;font-size:14px;color:var(--mut);line-height:1.5}
 .tira figcaption b{display:block;color:var(--azul);font-weight:500;font-size:15.5px;
   margin-bottom:2px}
 .fl{position:absolute;top:calc(50% - 34px);transform:translateY(-50%);z-index:5;
   width:46px;height:46px;border-radius:999px;border:1px solid var(--line);
   background:rgba(247,245,240,.92);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
   cursor:pointer;display:grid;place-items:center;transition:background .16s,opacity .16s}
 .fl svg{width:21px;height:21px;fill:none;stroke:var(--azul);stroke-width:2;
   stroke-linecap:round;stroke-linejoin:round}
 .fl:hover{background:#fff}
 .fl.iz{left:-10px}
 .fl.de{right:-10px}
 .fl[disabled]{opacity:0;pointer-events:none}
 .cbarra{display:flex;gap:var(--e3);align-items:baseline;justify-content:space-between;
   flex-wrap:wrap;margin-top:var(--e3)}
 .cnum{font-size:13px;color:var(--mut);letter-spacing:.06em;font-variant-numeric:tabular-nums;
   flex:none}
 .cnota{margin:0;font-size:13.5px;color:var(--mut);line-height:1.5;max-width:44em}
 @media (max-width:760px){
   .tira figure{flex:0 0 88%}
   .fl{display:none}
   .tabs{gap:0}
   .tb{padding:11px 12px 12px;font-size:14px}
 }

 .expl{max-width:58em}
 .expl section{padding-top:var(--e3);margin-top:var(--e3);border-top:1px solid var(--line)}
 .expl section:first-child{padding-top:0;margin-top:0;border-top:0}
 .expl h3{font-family:MoonGet,serif;font-weight:400;letter-spacing:-.008em;
   font-size:clamp(19px,2vw,24px);margin:0 0 var(--e2);color:var(--azul)}
 .expl p{margin:0 0 var(--e2);font-size:16px;line-height:1.68;color:var(--ink)}
 .expl p b{font-weight:500;color:var(--azul)}
 .expl .fino{font-size:14px;line-height:1.6;color:var(--mut)}
 .expl .cierre2{margin-top:var(--e4);padding-top:var(--e4);border-top:1px solid var(--line)}
 .expl .dos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
   gap:0 var(--e5);margin:0 0 var(--e2)}
 .expl ul{margin:0;padding:0;list-style:none}
 .expl ul li{position:relative;padding-left:18px;font-size:15.5px;line-height:1.9;color:var(--ink)}
 .expl ul li:before{content:"";position:absolute;left:0;top:14px;width:7px;height:1.5px;
   background:var(--gold)}
 .expl ol.pasos{margin:0;padding-left:0;list-style:none;counter-reset:p}
 .expl ol.pasos li{counter-increment:p;position:relative;padding-left:34px;
   margin-bottom:var(--e2);font-size:15.5px;line-height:1.6;color:var(--ink)}
 .expl ol.pasos li:before{content:counter(p,decimal-leading-zero);position:absolute;left:0;top:1px;
   font:600 12px/1.6 Sora,sans-serif;color:var(--gold);letter-spacing:.06em}
 .expl ol.pasos b{font-weight:500;color:var(--azul)}
 .tb2{width:100%;border-collapse:collapse;margin:var(--e2) 0 var(--e2);font-size:15px}
 .tb2 th{text-align:left;font:600 10.5px/1.4 Sora,sans-serif;letter-spacing:.16em;
   text-transform:uppercase;color:var(--mut);padding:0 14px 9px 0;border-bottom:1px solid var(--line)}
 .tb2 td{padding:11px 14px 11px 0;border-bottom:1px solid var(--line);color:var(--ink);
   vertical-align:top}
 .tb2 tr:last-child td{border-bottom:0}
 .tb2 td:last-child,.tb2 th:last-child{padding-right:0;white-space:nowrap}

 .aliados a.al{text-decoration:none;color:inherit;transition:opacity .16s}
 .aliados a.al:hover{opacity:.62}
 .aliados .al{max-width:21em}
 .alq{display:block;margin-top:10px;font-size:13px;line-height:1.5;color:var(--mut)}
 .aliados a.al:after{content:"\2197";font-size:12px;color:var(--gold);margin-left:4px;
   vertical-align:super}
 a.lgx{color:var(--azul);text-decoration:none;border-bottom:1px solid var(--gold);
   padding-bottom:1px}
 a.lgx:hover{border-bottom-color:var(--azul)}

 .escg{grid-template-columns:repeat(2,minmax(0,320px))}

 .filap{margin:var(--e4) 0 0;font-size:13.5px;line-height:1.65;color:var(--mut);max-width:54em}

 .bmov{display:none}
 @media (max-width:760px){
   .bmov{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:7px;align-items:center;
     position:fixed;left:0;right:0;bottom:0;z-index:60;
     padding:10px 12px calc(10px + env(safe-area-inset-bottom));
     background:rgba(247,245,240,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
     border-top:1px solid var(--line)}
   .bmov a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;
     text-decoration:none;font:500 13px Sora,system-ui,sans-serif;color:var(--azul);
     padding:11px 12px;border-radius:100px;border:1px solid var(--line);white-space:nowrap}
   .bmov a.pri{padding:11px 10px;font-size:13.5px}
   .bmov a.pri{background:var(--azul);border-color:var(--azul);color:var(--cream)}
   .bmov svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;
     stroke-linecap:round;stroke-linejoin:round}
   body{padding-bottom:78px}
   .tabs{top:0}
 }
 .idioma{display:flex;justify-content:center;gap:14px;align-items:center;
   padding:var(--e4) 0;font-size:13.5px;letter-spacing:.06em}
 .idioma a{color:var(--mut);text-decoration:none;border-bottom:1px solid var(--line);
   padding-bottom:2px}
 .idioma a:hover{color:var(--azul)}
 .idioma span{color:var(--azul);font-weight:500}
 .idioma{display:flex;justify-content:center;gap:14px;align-items:center;
   padding:var(--e4) 0;font-size:13.5px;letter-spacing:.06em}
 .idioma a{color:var(--mut);text-decoration:none;border-bottom:1px solid var(--line);
   padding-bottom:2px}
 .idioma a:hover{color:var(--azul)}
 .idioma span{color:var(--azul);font-weight:500}
 .tb2 .mx{display:block;font-size:12px;color:var(--mut);font-weight:300;margin-top:3px;
   white-space:nowrap}

/* ─── el sitio partido en páginas ─── */
.encab{position:sticky;top:0;z-index:50;background:rgba(247,245,240,.94);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line)}
.encab .w{display:flex;align-items:center;gap:clamp(18px,3vw,44px);
  padding-top:13px;padding-bottom:13px;flex-wrap:wrap}
.marcah{flex:none;line-height:0}
.marcah img{height:34px;width:auto;display:block}
.encab .tabs{position:static;margin:0;padding:0;border:0;background:none;
  display:flex;gap:clamp(12px,1.8vw,26px);flex-wrap:wrap;overflow:visible}
.encab .tabs .tb{font:500 14px Sora,system-ui,sans-serif;color:var(--mut);
  text-decoration:none;background:none;border:0;padding:4px 0;cursor:pointer;
  border-bottom:1.5px solid transparent;white-space:nowrap}
.encab .tabs .tb:hover{color:var(--azul)}
.encab .tabs .tb.on{color:var(--azul);border-bottom-color:var(--gold)}
.intpag{padding:var(--e6) 0 var(--e4)}
.intpag .kick{font-size:10.5px;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--gold);margin-bottom:var(--e2)}
.intpag h1{font-size:clamp(30px,4.4vw,52px);line-height:1.08;letter-spacing:-.015em;
  color:var(--azul);margin:0}
.intpag .lede{margin-top:var(--e3);font-size:clamp(16px,1.5vw,18.5px);font-weight:300;
  color:var(--mut);line-height:1.6;max-width:46em}
.cuerpo{padding-bottom:var(--e7)}
.cuerpo .panel{display:block}
.siguen{padding:var(--e7) 0 0}
.siguen .rot{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--mut);padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:var(--e4)}
.rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));
  gap:clamp(18px,2.2vw,30px)}
.tarj{display:flex;flex-direction:column;gap:9px;text-decoration:none;color:inherit;
  background:var(--card);border-radius:var(--r);padding:clamp(20px,2vw,28px);
  transition:transform .16s,box-shadow .16s}
.tarj:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(42,42,40,.09)}
.tarj .pap{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold)}
.tarj .th{font-size:19px;font-weight:500;color:var(--azul);line-height:1.25}
.tarj p{font-size:14px;font-weight:300;color:var(--mut);line-height:1.55;margin:0}
.tarj .ir{margin-top:auto;padding-top:8px;font-size:13.5px;font-weight:500;color:var(--azul)}
@media (max-width:640px){
  .encab .w{gap:12px}
  .encab .tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
