
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--nieve,#F4F6F3)}
a{color:var(--lago,#1D5C6B)}a:hover{color:var(--lenga,#1F3A30)}
.xp{--ink:#161B1A;--lenga:#1F3A30;--lago:#1D5C6B;--glaciar:#9FD3D2;--nieve:#F4F6F3;--piedra:#5A635F;--linea:#D9DFDB;font-family:Barlow,"Segoe UI",system-ui,sans-serif;color:var(--ink);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.xp *{box-sizing:border-box}
.xp h1,.xp h2,.xp h3,.xp .cond{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:800;line-height:.95;margin:0;letter-spacing:.005em}
.wrap{max-width:1240px;margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:999px;border:0;font:600 16px/1 Barlow,sans-serif;text-decoration:none;cursor:pointer;transition:transform .2s ease,background .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn:focus-visible,.chip:focus-visible,.card-btn:focus-visible,.navlink:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px}
.btn-wa{color:var(--ink,#161B1A)}
.btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)}
.btn-ghost:hover,.btn-ghost:focus-visible{background:#fff;color:var(--ink,#161B1A);box-shadow:inset 0 0 0 1.5px #fff}
.btn-wa:hover{color:var(--ink,#161B1A);filter:brightness(1.06)}
.btn-dark{background:var(--lenga);color:#fff}
.btn-dark:hover{color:#fff;background:#163026}

/* header */
.hdr{position:sticky;top:0;z-index:30;background:rgba(18,26,23,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:20px;height:72px}
.logo-h{display:flex;color:#fff;text-decoration:none}
.logo-h svg{height:50px;width:auto}
.nav{display:flex;gap:28px;align-items:center}
.navlink{color:var(--texto-claro,#E6ECE8);text-decoration:none;font-weight:500;font-size:16px}
.navlink:hover{color:#fff}
.menu-btn{display:none;background:none;border:0;color:#fff;width:48px;height:48px;cursor:pointer;border-radius:12px}
.mnav{display:none}

/* hero */
.hero{position:relative;min-height:min(92vh,860px);margin-top:-72px;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--lenga,#1F3A30)}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:slowzoom 18s ease-out both;filter:blur(1.4px) saturate(1.12) contrast(1.08)}
.hero-tint{position:absolute;inset:0;background:linear-gradient(115deg,rgba(31,58,48,.6),rgba(29,92,107,.28) 60%,rgba(31,58,48,.35));mix-blend-mode:multiply;pointer-events:none}
.hero-dots{position:absolute;inset:0;background-image:radial-gradient(rgba(6,12,10,.42) 1px,transparent 1.3px);background-size:3px 3px;pointer-events:none}
.hero-vig{position:absolute;inset:0;background:radial-gradient(ellipse 90% 80% at 30% 55%,rgba(8,14,12,0) 35%,rgba(8,14,12,.6) 100%);pointer-events:none}
.hero-grain{position:absolute;left:-50%;top:-50%;width:200%;height:200%;opacity:.17;mix-blend-mode:overlay;pointer-events:none;animation:grain 1.2s steps(4) infinite}
.hero-mtn{position:absolute;right:-3%;bottom:16%;width:min(60vw,920px);height:auto;color:var(--glaciar,#9FD3D2);opacity:.6;pointer-events:none}
.hero-mtn path{fill:rgba(159,211,210,0);stroke:currentColor;stroke-width:3;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 3.4s .4s cubic-bezier(.6,.1,.2,1) forwards,mtnFill 1.6s 3.4s ease forwards}
.hero-facts{list-style:none;margin:34px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px 26px}
.hero-facts li{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:500;color:var(--texto-claro,#E1EAE5);animation:sheetIn .7s cubic-bezier(.2,.7,.1,1) both}
.hero-facts li:nth-child(1){animation-delay:1.65s}.hero-facts li:nth-child(2){animation-delay:1.77s}.hero-facts li:nth-child(3){animation-delay:1.89s}
.hero-facts svg{color:var(--glaciar,#9FD3D2);flex:none}
.hero h1{text-shadow:0 2px 30px rgba(0,0,0,.25)}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes mtnFill{to{fill:rgba(159,211,210,.08)}}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-4%,3%)}50%{transform:translate(3%,-4%)}75%{transform:translate(-2%,4%)}100%{transform:translate(0,0)}}
@media (max-width:720px){.hero-mtn{width:130vw;right:-40%;bottom:34%;opacity:.35}.hero-facts{gap:8px}}
.hero-ov{position:absolute;inset:0}
.hero-in{position:relative;width:100%;padding-top:150px;padding-bottom:170px}
.hero h1{font-size:clamp(54px,9vw,132px);text-transform:uppercase;max-width:11ch}
.hl{display:block;white-space:nowrap}
.ch{display:inline-block;animation:chIn 1s cubic-bezier(.2,.7,.1,1) both;animation-delay:calc(.25s + var(--i) * .045s)}
@keyframes chIn{from{opacity:0;transform:translateY(.45em) rotate(6deg);filter:blur(12px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes subIn{from{opacity:0;transform:translateY(22px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
.hero-sub{max-width:560px;font-size:clamp(17px,1.6vw,20px);color:#E9EFEB;margin:24px 0 0;animation:subIn 1.1s 1.1s cubic-bezier(.2,.7,.1,1) both}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;animation:subIn .9s 1.4s cubic-bezier(.2,.7,.1,1) both}
.ridge{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(70px,11vw,150px);color:var(--nieve,#F4F6F3);animation:ridgeup 1.4s .3s cubic-bezier(.2,.7,.1,1) both}

/* finder */
.finder{position:relative;z-index:3;margin-top:-56px}
.finder-box{background:#fff;border-radius:22px;box-shadow:0 18px 50px rgba(22,27,26,.14);padding:14px;display:grid;grid-template-columns:1.3fr 1fr .8fr auto;gap:10px;align-items:end}
.fld{display:flex;flex-direction:column;gap:4px;padding:8px 14px;border-radius:14px;background:var(--nieve,#F4F6F3)}
.fld label{font-size:13px;font-weight:600;color:var(--piedra)}
.fld select,.fld input{border:0;background:transparent;font:500 17px Barlow,sans-serif;color:var(--ink);padding:4px 0;min-height:30px;width:100%}
.fld select:focus,.fld input:focus{outline:none}
.fld:focus-within{box-shadow:inset 0 0 0 2px var(--lago)}
.finder-box .btn{min-height:62px;border-radius:16px}

/* sections */
.sec{padding:clamp(72px,10vw,128px) 0}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px}
.sec-head h2{font-size:clamp(42px,6vw,76px);text-transform:uppercase;max-width:14ch}
.sec-head p{max-width:440px;margin:0;color:var(--piedra)}

/* tiles */
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tile{position:relative;display:block;aspect-ratio:3/4;border-radius:20px;overflow:hidden;color:#fff;text-decoration:none}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.1,1)}
.tile:hover img{transform:scale(1.06)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(10,20,16,.78))}
.tile-tx{position:absolute;left:20px;right:20px;bottom:18px;z-index:1}
.tile-tx strong{display:block;font:800 34px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}
.tile-tx .tc{font-size:15px;color:#E2E9E5}
.tile:hover{color:#fff}

/* catalog */
.cat-bg{background:#fff}
.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:30px}
.chip{min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--linea);background:#fff;font:600 15px Barlow,sans-serif;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.chip:hover{border-color:var(--lago)}
.chip.on{background:var(--lenga);border-color:var(--lenga);color:#fff}
.toggle{margin-left:auto;display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px;color:var(--piedra);cursor:pointer;background:none;border:0;min-height:44px}
.sw{width:44px;height:26px;border-radius:99px;background:#C9D2CD;position:relative;transition:background .2s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.toggle.on .sw{background:var(--lago)}
.toggle.on .sw::after{transform:translateX(18px)}
.count{font-size:15px;color:var(--piedra);margin:0 0 18px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.card{display:flex;flex-direction:column;background:var(--nieve,#F4F6F3);border-radius:20px;overflow:hidden}
.card-img{position:relative;aspect-ratio:4/3;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.1,1)}
.card:hover .card-img img{transform:scale(1.05)}
.badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.94);color:var(--ink);font-size:13px;font-weight:600;padding:6px 12px;border-radius:99px}
.badge.off{background:var(--ink);color:#fff}
.card-bd{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.card-cat{font-size:14px;color:var(--lago);font-weight:600}
.card h3{font-size:30px;text-transform:uppercase}
.card p{margin:0;color:var(--texto,#3F4744);font-size:16px}
.meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--piedra)}
.meta span{display:inline-flex;align-items:center;gap:6px}
.card-ft{margin-top:auto;padding-top:14px;border-top:1px solid var(--linea);display:flex;align-items:center;justify-content:space-between;gap:12px}
.price small{display:block;font-size:13px;color:var(--piedra)}
.price strong{font:800 28px/1 "Barlow Condensed",sans-serif}
.card-btn{min-height:44px;padding:0 18px;border-radius:999px;border:0;background:var(--lenga);color:#fff;font:600 15px Barlow,sans-serif;cursor:pointer;transition:background .2s}
.card-btn:hover{background:var(--lago)}
.card.dim .card-img img{filter:grayscale(.55)}

/* steps */
.dark{background:var(--lenga);color:#fff}
.dark .sec-head p{color:var(--texto-claro,#C7D4CD)}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:s}
.step{border-top:2px solid rgba(255,255,255,.22);padding:24px 22px 26px;position:relative;isolation:isolate;cursor:default}
.step::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:0 0 20px 20px;background:linear-gradient(180deg,rgba(159,211,210,.14),rgba(159,211,210,.03) 70%,rgba(159,211,210,0));transform:scaleY(0);transform-origin:top;transition:transform .55s cubic-bezier(.2,.7,.1,1)}
.step:hover::after{transform:scaleY(1)}
.step:hover::before{background:var(--acento,#F0A93B)}
.step-n{transition:color .35s,text-shadow .35s}
.step:hover .step-n{color:#fff;text-shadow:0 0 28px rgba(159,211,210,.55)}
.step h3{transition:transform .45s cubic-bezier(.2,.7,.1,1),color .3s}
.step:hover h3{transform:translateX(6px);color:var(--glaciar,#9FD3D2)}
.step p{transition:color .3s}
.step:hover p{color:#fff}
@keyframes icBounce{0%{transform:none}30%{transform:translateY(-6px) rotate(-10deg)}55%{transform:translateY(2px) rotate(4deg)}80%{transform:translateY(-1px)}100%{transform:none}}
.step::before{content:"";position:absolute;top:-2px;left:0;height:2px;width:0;background:var(--glaciar);transition:width 1.2s cubic-bezier(.2,.7,.1,1)}
.step:hover::before{width:100%}
.step-n{font:800 64px/1 "Barlow Condensed",sans-serif;color:var(--glaciar)}
.step h3{font-size:30px;text-transform:uppercase;margin:10px 0 8px}
.step p{margin:0;color:var(--texto-claro,#D3DED8)}
.step{display:flex;flex-direction:column;gap:0}
.step-top{display:flex;justify-content:space-between;align-items:center}
.step-n{display:block}
.step-ic{width:54px;height:54px;border-radius:50%;border:1.5px solid rgba(159,211,210,.5);color:var(--glaciar);display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s,transform .4s cubic-bezier(.2,.7,.1,1)}
.step:hover .step-ic{background:var(--glaciar);color:var(--lenga);border-color:var(--glaciar);box-shadow:0 0 0 8px rgba(159,211,210,.16)}
.step-ic{transition:background .3s,color .3s,border-color .3s,box-shadow .4s}
.step:hover .step-ic svg{animation:icBounce .7s cubic-bezier(.2,.7,.1,1)}
.step-link{align-self:flex-start;margin-top:16px;color:#fff;font-weight:600;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;padding-bottom:3px;transition:background-size .35s ease}
.step-link:hover{color:#fff;background-size:100% 2px}
.step-link:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px}
.chat{margin-top:16px;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.bubble{max-width:290px;background:#DCF3E4;color:#14302A;font-size:14px;line-height:1.4;padding:10px 12px;border-radius:14px 14px 4px 14px;animation:bubbleIn 9s ease-in-out infinite}
.typing{display:flex;gap:4px;padding:10px 12px;background:rgba(255,255,255,.12);border-radius:14px;animation:typingShow 9s ease-in-out infinite}
.typing i{width:6px;height:6px;border-radius:50%;background:#DCF3E4;animation:dot 1s ease-in-out infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes dot{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@keyframes typingShow{0%,4%{opacity:0}8%,26%{opacity:1}30%,100%{opacity:0}}
@keyframes bubbleIn{0%,28%{opacity:0;transform:translateY(8px) scale(.96)}34%,88%{opacity:1;transform:none}96%,100%{opacity:0}}
.help{margin-top:56px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:26px 30px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.help strong{display:block;font-size:clamp(28px,3vw,36px);text-transform:uppercase;color:#fff;margin-bottom:4px}
.help span{color:var(--texto-claro,#C7D4CD)}
.help-ctas{display:flex;flex-wrap:wrap;gap:12px}
@keyframes numUp{from{clip-path:inset(0 0 100% 0);transform:translateY(40%)}to{clip-path:inset(0 0 0 0);transform:none}}

/* about */
.about{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.about-img{border-radius:24px;overflow:hidden;aspect-ratio:5/4}
.about-img img{width:100%;height:100%;object-fit:cover}
.about h2{font-size:clamp(40px,5vw,64px);text-transform:uppercase;margin-bottom:18px}
.trust{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px}
.trust li{display:flex;gap:14px;align-items:flex-start}
.trust svg{flex:none;margin-top:3px;color:var(--lago)}

/* services */
.svc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.svc-i{background:#fff;border:1px solid var(--linea);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.svc-i h3{font-size:26px;text-transform:uppercase}
.svc-i p{margin:0;font-size:15px;color:var(--texto,#3F4744)}
.svc-i a{margin-top:auto;padding-top:10px;font-weight:600;font-size:15px}

/* blog */
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.post{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--ink)}
.post-img{aspect-ratio:16/10;border-radius:18px;overflow:hidden}
.post-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.post:hover .post-img img{transform:scale(1.05)}
.post small{color:var(--lago);font-weight:600;font-size:14px}
.post h3{font-size:28px;text-transform:uppercase}
.post:hover{color:var(--ink)}

/* faq */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,5vw,80px)}
.faq h2{font-size:clamp(40px,5vw,64px);text-transform:uppercase}
.q{border-bottom:1px solid var(--linea)}
.q button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;background:none;border:0;padding:22px 0;text-align:left;font:600 19px Barlow,sans-serif;color:var(--ink);cursor:pointer;min-height:44px}
.q button svg{flex:none;transition:transform .3s}
.q.open button svg{transform:rotate(45deg)}
.q-a{margin:0;padding:0 0 22px;color:var(--texto,#3F4744);max-width:62ch}

/* cta */
.cta{position:relative;border-radius:28px;overflow:hidden;color:#fff;padding:clamp(48px,8vw,110px) clamp(24px,6vw,80px)}
.cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cta::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(14,30,24,.88) 20%,rgba(14,30,24,.25));z-index:1}
.cta-in{position:relative;z-index:2;max-width:620px}
.cta h2{font-size:clamp(44px,6vw,84px);text-transform:uppercase;margin-bottom:18px}
.cta p{color:var(--texto-claro,#E0E8E3);margin:0 0 26px}

/* footer */
.ftr{background:var(--ink);color:var(--texto-pie,#C9D3CE);position:relative;margin-top:clamp(70px,10vw,120px)}
.ftr .ridge-top{position:absolute;left:0;right:0;top:-1px;transform:translateY(-99%);width:100%;height:clamp(50px,8vw,110px);color:var(--ink,#161B1A)}
.ftr-in{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:30px;padding:30px 0 50px}
.ftr-logo{color:#fff;width:min(260px,70%)}
.ftr h4{margin:0 0 14px;color:#fff;font:700 20px "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.03em}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ftr a{color:var(--texto-pie,#C9D3CE);text-decoration:none}
.ftr a:hover{color:#fff}
.legal{border-top:1px solid rgba(255,255,255,.12);padding:22px 0 30px;font-size:14px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:#93A19A}

/* floating wa */
.fab{position:fixed;right:20px;bottom:20px;z-index:40;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink,#161B1A);box-shadow:0 10px 30px rgba(0,0,0,.25);animation:pop .6s 1.2s both;text-decoration:none}

/* sheet */
.sheet-bg{position:fixed;inset:0;z-index:50;background:rgba(10,16,14,.55);display:flex;justify-content:flex-end;animation:fade .25s both}
.sheet{width:min(640px,100%);height:100%;overflow-y:auto;background:#fff;animation:slidein .45s cubic-bezier(.2,.7,.1,1) both;position:relative}
.sheet-img{position:relative;aspect-ratio:16/10}
.sheet-img img{width:100%;height:100%;object-fit:cover}
.sheet-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,0) 35%,rgba(10,20,16,.75))}
.sheet-tt{position:absolute;left:28px;right:28px;bottom:22px;z-index:1;color:#fff}
.sheet-tt h2{font-size:clamp(36px,6vw,52px);text-transform:uppercase}
.sheet-tt small{font-weight:600;color:var(--glaciar);font-size:15px}
.close{position:absolute;top:16px;right:16px;z-index:2;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.92);cursor:pointer;display:flex;align-items:center;justify-content:center}
.sheet-bd{padding:26px 28px 40px;display:flex;flex-direction:column;gap:28px}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fact{background:var(--nieve,#F4F6F3);border-radius:14px;padding:12px 14px}
.fact small{display:block;color:var(--piedra);font-size:13px;font-weight:600}
.fact span{font-weight:600;font-size:16px}
.sheet h4{margin:0 0 12px;font:800 24px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}
.ptable{width:100%;border-collapse:collapse;font-size:16px}
.ptable td{padding:11px 0;border-bottom:1px solid var(--linea);vertical-align:top}
.ptable td:last-child{text-align:right;font-weight:600;padding-left:16px;white-space:nowrap}
.route{list-style:none;margin:0;padding:0;display:grid;gap:0}
.route li{display:grid;grid-template-columns:34px 1fr;gap:12px;padding-bottom:16px;position:relative}
.route li::before{content:"";position:absolute;left:16px;top:30px;bottom:0;width:2px;background:var(--linea)}
.route li:last-child::before{display:none}
.route b{width:34px;height:34px;border-radius:50%;background:var(--lenga);color:#fff;display:flex;align-items:center;justify-content:center;font:700 16px "Barlow Condensed",sans-serif}
.route strong{display:block;font-weight:600}
.route b *{color:inherit;font:inherit}
.route .rd{margin:2px 0 0;color:var(--texto,#3F4744);font-size:15px}
.route b{font-size:18px;box-shadow:0 0 0 4px #fff}

/* ficha: la información aparece paso a paso */
@keyframes popIn{0%{transform:scale(0)}70%{transform:scale(1.15)}100%{transform:scale(1)}}
@keyframes lineDown{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes slideL{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
.fact{animation:sheetIn .5s cubic-bezier(.2,.7,.1,1) both}
.fact:nth-child(1){animation-delay:.35s}.fact:nth-child(2){animation-delay:.42s}.fact:nth-child(3){animation-delay:.49s}.fact:nth-child(4){animation-delay:.56s}
.ptable tr{animation:slideL .45s cubic-bezier(.2,.7,.1,1) both}
.ptable tr:nth-child(1){animation-delay:.5s}.ptable tr:nth-child(2){animation-delay:.56s}.ptable tr:nth-child(3){animation-delay:.62s}.ptable tr:nth-child(4){animation-delay:.68s}.ptable tr:nth-child(n+5){animation-delay:.74s}
.route li > div{animation:slideL .5s cubic-bezier(.2,.7,.1,1) both}
.route b{animation:popIn .45s cubic-bezier(.2,.7,.1,1) both}
.route li::before{transform-origin:top;animation:lineDown .45s ease-out both}
.route li:nth-child(1) b{animation-delay:.6s}.route li:nth-child(1) > div{animation-delay:.68s}.route li:nth-child(1)::before{animation-delay:.8s}
.route li:nth-child(2) b{animation-delay:.95s}.route li:nth-child(2) > div{animation-delay:1.03s}.route li:nth-child(2)::before{animation-delay:1.15s}
.route li:nth-child(3) b{animation-delay:1.3s}.route li:nth-child(3) > div{animation-delay:1.38s}.route li:nth-child(3)::before{animation-delay:1.5s}
.route li:nth-child(4) b{animation-delay:1.65s}.route li:nth-child(4) > div{animation-delay:1.73s}.route li:nth-child(4)::before{animation-delay:1.85s}
.route li:nth-child(n+5) b{animation-delay:2s}.route li:nth-child(n+5) > div{animation-delay:2.08s}
.route li:hover b{background:var(--lago);transition:background .2s}
.lists li{animation:slideL .4s cubic-bezier(.2,.7,.1,1) both;animation-delay:.9s}
.lists li:nth-child(2){animation-delay:.96s}.lists li:nth-child(3){animation-delay:1.02s}.lists li:nth-child(4){animation-delay:1.08s}.lists li:nth-child(n+5){animation-delay:1.14s}
.lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.lists ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:15px;color:var(--texto,#3F4744)}
.note{background:#EEF6F5;border-radius:14px;padding:14px 16px;font-size:15px;color:#24433F}
.ask{background:var(--lenga);color:#fff;border-radius:18px;padding:20px;display:grid;gap:12px}
.ask .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ask .fld{background:rgba(255,255,255,.1)}
.ask .fld label{color:var(--texto-claro,#C7D4CD)}
.ask .fld input{color:#fff;color-scheme:dark}

@keyframes rise{from{transform:translateY(105%)}to{transform:none}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes slowzoom{from{transform:scale(1.14)}to{transform:scale(1.04)}}
@keyframes ridgeup{from{transform:translateY(60%)}to{transform:none}}
@keyframes slidein{from{transform:translateX(100%)}to{transform:none}}
@keyframes pop{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes rv{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
@keyframes hdrIn{from{background:rgba(18,26,23,0)}to{background:rgba(18,26,23,.9)}}
@keyframes heroOut{to{transform:translateY(-22%);opacity:.15}}
@keyframes titleIn{from{opacity:0;transform:translateY(55%) skewY(3deg)}to{opacity:1;transform:none}}
@keyframes clipUp{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes lineGrow{from{width:0}to{width:100%}}
@keyframes imgPar{from{transform:scale(1.22) translateY(-4%)}to{transform:scale(1.02) translateY(3%)}}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-45%)}}
@keyframes mq2{from{transform:translateX(-45%)}to{transform:translateX(0)}}
@keyframes cardIn{from{opacity:0;transform:translateY(34px) scale(.97)}to{opacity:1;transform:none}}
@keyframes cardIn2{from{opacity:0;transform:translateY(34px) scale(.97)}to{opacity:1;transform:none}}
@keyframes cardRise{from{opacity:0;transform:translateY(80px) scale(.95)}to{opacity:1;transform:none}}
@keyframes clipReveal{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes bdIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes sheetIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes ring{0%{transform:scale(1);opacity:.55}70%,100%{transform:scale(1.7);opacity:0}}

/* carruseles de fotos */
.card-img,.sheet-img{aspect-ratio:10/7}
.gal{position:absolute;inset:0;background-repeat:no-repeat;transition:background-position .6s cubic-bezier(.2,.7,.1,1);animation:fade .35s both}
.gnav{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-22px;border-radius:50%;border:0;background:rgba(255,255,255,.94);color:var(--ink,#161B1A);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .25s,transform .25s;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.gnav.prev{left:12px}.gnav.next{right:12px}
.card:hover .gnav,.gnav:focus-visible,.sheet-img .gnav{opacity:1}
.gnav:hover{transform:scale(1.08)}
.gnav:focus-visible{outline:3px solid var(--glaciar);outline-offset:2px}
@media (hover:none){.gnav{opacity:1}}
.dots{position:absolute;left:0;right:0;bottom:12px;z-index:2;display:flex;justify-content:center;gap:6px;pointer-events:none}
.dot{width:7px;height:7px;border-radius:99px;background:rgba(255,255,255,.55);transition:width .3s,background .3s}
.dot.on{width:20px;background:#fff}
.gcount{position:absolute;top:18px;left:18px;z-index:2;background:rgba(10,16,14,.62);color:#fff;font-weight:600;font-size:14px;padding:6px 12px;border-radius:99px}
.thumbs{display:flex;gap:8px;overflow-x:auto;padding:3px 3px 6px}
.thumb{flex:none;width:92px;aspect-ratio:10/7;border-radius:10px;border:0;padding:0;cursor:pointer;background-repeat:no-repeat;opacity:.55;transition:opacity .2s,box-shadow .2s}
.thumb:hover{opacity:.85}
.thumb.on{opacity:1;box-shadow:0 0 0 2.5px var(--lenga)}
.thumb:focus-visible{outline:3px solid var(--lago);outline-offset:2px}

/* marquesina minimalista */
.mq{overflow:hidden;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);padding:20px 0;margin:0 0 clamp(50px,7vw,90px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.mq-track{display:flex;width:max-content;animation:mqLoop 55s linear infinite}
.mq:hover .mq-track{animation-play-state:paused}
.mq-g{display:flex;align-items:center;gap:30px;padding-right:30px}
.mq-g span{font:600 21px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.09em;color:var(--lenga);white-space:nowrap;transition:color .25s}
.mq-g span:hover{color:var(--lago)}
.mq-dot{display:block;width:10px;height:8px;background:var(--lago);opacity:.55;clip-path:polygon(0 100%,50% 0,100% 100%)}
@keyframes mqLoop{to{transform:translateX(-50%)}}

/* marquee de lugares */
.mq-band{overflow:hidden;padding:0 0 clamp(50px,7vw,90px);display:grid;gap:2px}
.mq-row{white-space:nowrap;font-size:clamp(56px,10vw,150px);text-transform:uppercase;display:flex;gap:.32em;align-items:center;will-change:transform;width:max-content}
.mq-a{color:var(--lenga);animation:mq 70s linear infinite}
.mq-b{color:transparent;-webkit-text-stroke:1.5px var(--lago);animation:mq2 70s linear infinite}
.mq-sep{width:.34em;height:.28em;background:var(--lago);clip-path:polygon(0 100%,38% 18%,52% 42%,70% 0,100% 100%);flex:none}
.mq-a .mq-sep{background:var(--acento,#F0A93B)}

/* filtros: las tarjetas entran escalonadas */
.grid.ga .card{animation:cardIn .65s cubic-bezier(.2,.7,.1,1) both}
.grid.gb .card{animation:cardIn2 .65s cubic-bezier(.2,.7,.1,1) both}
.grid .card:nth-child(2){animation-delay:.06s}.grid .card:nth-child(3){animation-delay:.12s}.grid .card:nth-child(4){animation-delay:.18s}.grid .card:nth-child(5){animation-delay:.24s}.grid .card:nth-child(6){animation-delay:.3s}.grid .card:nth-child(n+7){animation-delay:.36s}
.grid .card.nuevo{animation:cardIn .7s cubic-bezier(.2,.7,.1,1) both;animation-delay:calc(var(--d) * 90ms)}
.more{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:44px}
.more-btn{min-height:52px;padding:0 28px;border-radius:999px;border:1.5px solid var(--lenga);background:transparent;color:var(--lenga);font:600 16px Barlow,sans-serif;display:inline-flex;gap:10px;align-items:center;cursor:pointer;transition:background .25s,color .25s}
.more-btn:hover{background:var(--lenga);color:#fff}
.more-btn:hover svg{animation:nudge .8s ease-in-out infinite}
.more-btn:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px}
.more small{font-size:14px;color:var(--piedra)}
@keyframes nudge{0%,100%{transform:none}50%{transform:translateY(3px)}}

/* ficha: el contenido entra en cascada */
.sheet-bd > *{animation:sheetIn .5s cubic-bezier(.2,.7,.1,1) both}
.sheet-bd > *:nth-child(1){animation-delay:.2s}.sheet-bd > *:nth-child(2){animation-delay:.27s}.sheet-bd > *:nth-child(3){animation-delay:.34s}.sheet-bd > *:nth-child(4){animation-delay:.41s}.sheet-bd > *:nth-child(n+5){animation-delay:.48s}
.sheet-tt{animation:sheetIn .6s .15s both}

/* boton flotante: pulso suave */
.fab::after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;z-index:-1;animation:ring 2.8s 2s ease-out infinite}

/* animaciones ligadas al scroll (Chrome, Edge, Safari 26+) */
@supports (animation-timeline: view()){
  .rv{animation:rv linear both;animation-timeline:view();animation-range:entry 0% entry 60%}
  .hdr{animation:hdrIn linear both;animation-timeline:scroll(root);animation-range:0 320px}
  .hero-in{animation:heroOut linear both;animation-timeline:scroll(root);animation-range:0 85vh}
  .sec-head h2,.about h2,.faq h2,.cta h2{animation:titleIn linear both;animation-timeline:view();animation-range:entry 5% entry 75%}
  .tile img{animation:clipUp linear both;animation-timeline:view();animation-range:entry 0% cover 35%}
  .step{animation:rv linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  .step:nth-child(2){animation-range:entry 12% entry 67%}
  .step:nth-child(3){animation-range:entry 24% entry 79%}
  .step::before{animation:lineGrow linear both;animation-timeline:view();animation-range:entry 20% cover 35%}
  .step-n{animation:numUp linear both;animation-timeline:view();animation-range:entry 25% entry 80%}
  .step-ic{animation:popIn linear both;animation-timeline:view();animation-range:entry 35% entry 90%}
  .help{animation:rv linear both;animation-timeline:view();animation-range:entry 0% entry 60%}
  .about-img img,.cta img,.post-img img{animation:imgPar linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
  .mq-a,.mq-b{display:none}
}

@media (max-width:1024px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .finder-box{grid-template-columns:1fr 1fr}
  .finder-box .btn{grid-column:1/-1}
  .ftr-in{grid-template-columns:1fr 1fr}
  .nav{display:none}
  .menu-btn{display:flex;align-items:center;justify-content:center}
  .mnav{display:grid;gap:4px;padding:8px 0 20px}
  .mnav a{color:#fff;text-decoration:none;font:700 30px "Barlow Condensed",sans-serif;text-transform:uppercase;padding:8px 0}
}
@media (max-width:720px){
  .xp{font-size:16px}
  .grid,.steps,.posts,.about,.faq{grid-template-columns:1fr}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .tile-tx strong{font-size:26px}
  .finder-box{grid-template-columns:1fr}
  .toggle{margin-left:0}
  .svc{grid-template-columns:1fr}
  .facts,.lists,.ask .row{grid-template-columns:1fr}
  .ftr-in{grid-template-columns:1fr}
  .hero-in{padding-bottom:140px}
  .hdr-cta{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .xp *,.xp *::before,.xp *::after{animation:none!important;transition:none!important}
}
/* sobre nosotros */
.about-img{position:relative}
.about-badge{position:absolute;left:18px;bottom:18px;z-index:1;background:rgba(255,255,255,.96);border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:12px;max-width:300px;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.about-badge strong{font-size:54px;line-height:.85;color:var(--lenga)}
.about-badge span{font-size:14px;line-height:1.3;color:var(--texto,#3F4744);font-weight:500}
.about h2{font-size:clamp(38px,4.4vw,58px)}
.about .lead{font-size:20px;font-weight:500;color:var(--ink);margin-top:0}
.about p{color:var(--texto,#3F4744)}
.offer-h{font-size:clamp(30px,3.4vw,42px);text-transform:uppercase;margin:clamp(56px,7vw,90px) 0 26px}
.offer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.off-i{display:flex;gap:16px;align-items:flex-start;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--linea);text-decoration:none;color:var(--ink);transition:transform .35s cubic-bezier(.2,.7,.1,1),box-shadow .35s,border-color .35s}
.off-i:hover{color:var(--ink);transform:translateY(-4px);box-shadow:0 14px 34px rgba(22,27,26,.1);border-color:transparent}
.off-i:focus-visible{outline:3px solid var(--lago);outline-offset:3px}
.off-ic{flex:none;width:50px;height:50px;border-radius:14px;background:#E6F1EF;color:var(--lago);display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s}
.off-i:hover .off-ic{background:var(--lenga);color:#fff}
.off-i strong{display:block;font:800 24px/1.05 "Barlow Condensed",sans-serif;text-transform:uppercase;margin-bottom:4px}
.off-i span span{font-size:15px;color:var(--texto,#3F4744)}
.about-cta{margin-top:36px;display:grid;grid-template-columns:1.4fr auto;gap:18px 40px;align-items:center;padding:clamp(24px,3vw,36px);border-radius:22px;background:var(--lenga);color:#fff}
.about-cta p{margin:0;color:var(--texto-claro,#D3DED8)}
.about-cta .sign{grid-column:1/-1;font:800 clamp(26px,2.8vw,36px)/1 "Barlow Condensed",sans-serif;text-transform:uppercase;color:var(--glaciar,#9FD3D2);padding-top:16px;border-top:1px solid rgba(255,255,255,.14)}
.ftr-tag{margin:16px 0 0;color:var(--glaciar,#9FD3D2);font:700 20px/1.1 "Barlow Condensed",sans-serif;text-transform:uppercase;max-width:260px}
.svc{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1024px){.offer{grid-template-columns:repeat(2,minmax(0,1fr))}.svc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.offer{grid-template-columns:1fr}.about-cta{grid-template-columns:1fr}.svc{grid-template-columns:1fr}}

/* nosotros: mosaico */
@property --n{syntax:"<integer>";inherits:false;initial-value:0}
.mosaic{display:grid;grid-template-columns:1.12fr 1fr;grid-template-rows:auto 1fr;gap:16px;height:clamp(480px,50vw,640px)}
.m-fig{position:relative;margin:0;border-radius:24px;overflow:hidden;background:var(--lenga,#1F3A30)}
.m-a{grid-row:1 / 3;grid-column:1}
.m-b{grid-column:2;grid-row:2}
.m-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.1,1)}
.m-fig:hover img{transform:scale(1.05)}
.m-cap{position:absolute;left:14px;bottom:14px;z-index:1;background:rgba(18,26,23,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:13px;font-weight:600;padding:7px 12px;border-radius:99px;transition:background .3s}
.m-fig:hover .m-cap{background:rgba(18,26,23,.85)}
.m-stat{grid-column:2;grid-row:1;margin-top:clamp(24px,4vw,56px);position:relative;overflow:hidden;background:var(--lenga);color:#fff;border-radius:24px;padding:clamp(22px,2.4vw,32px);display:flex;flex-direction:column;gap:8px}
.m-stat::after{content:"";position:absolute;right:-24px;bottom:-30px;width:170px;height:110px;background:rgba(159,211,210,.13);clip-path:polygon(0 100%,38% 18%,52% 42%,70% 0,100% 100%)}
.m-num{--n:25;counter-reset:n var(--n);font:800 clamp(64px,7vw,100px)/.85 "Barlow Condensed",sans-serif;color:var(--glaciar,#9FD3D2);animation:countUp 2.2s .3s cubic-bezier(.2,.7,.1,1) both}
.m-num::after{content:counter(n) "+"}
.m-tx{position:relative;z-index:1;font-size:16px;line-height:1.4;color:var(--texto-claro,#D3DED8);max-width:22ch}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes countUp{from{--n:0}to{--n:25}}
@keyframes wipeUp{from{clip-path:inset(100% 0 0 0 round 24px)}to{clip-path:inset(0 0 0 0 round 24px)}}
@keyframes wipeL{from{clip-path:inset(0 0 0 100% round 24px)}to{clip-path:inset(0 0 0 0 round 24px)}}
@keyframes zoomOut{from{transform:scale(1.25)}to{transform:scale(1)}}
@supports (animation-timeline: view()){
  .m-a{animation:wipeUp linear both;animation-timeline:view();animation-range:entry 0% entry 70%}
  .m-b{animation:wipeL linear both;animation-timeline:view();animation-range:entry 10% entry 80%}
  .m-fig img{animation:zoomOut linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
  .m-stat{animation:rv linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  .m-num{animation:countUp linear both;animation-timeline:view();animation-range:entry 15% cover 40%}
  .m-cap{animation:bdIn linear both;animation-timeline:view();animation-range:entry 50% cover 45%}
}
@media (max-width:900px){.mosaic{height:clamp(420px,95vw,600px);max-width:640px}}
@media (max-width:520px){.mosaic{height:auto;grid-template-rows:auto auto}.m-a{grid-row:1;grid-column:1 / 3;aspect-ratio:4/3}.m-stat{grid-row:2;grid-column:1;margin-top:0}.m-b{grid-row:2;grid-column:2;min-height:190px}}

/* títulos: aire para tildes y eñes en mayúscula */
.sec-head h2{line-height:1.02;padding-top:.08em}
/* también te ayudamos con */
.svc-sec{padding-top:clamp(80px,10vw,128px)}
.xp .svc-sec .sec-head h2{font-size:clamp(40px,5vw,64px);max-width:none}
.svc-i{padding:26px 24px 24px;gap:10px;transition:transform .35s cubic-bezier(.2,.7,.1,1),box-shadow .35s,border-color .35s}
.svc-i:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(22,27,26,.09);border-color:transparent}
.xp .svc-i h3{font-size:26px;line-height:1.02;padding-top:.06em}
.svc-i p{line-height:1.5}
.svc-i a{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;min-height:44px;text-decoration:none;color:var(--lago);background:linear-gradient(currentColor,currentColor) 0 calc(100% - 10px)/0 2px no-repeat;transition:background-size .35s ease,color .25s}
.svc-i a::after{content:"";width:14px;height:2px;background:currentColor;box-shadow:none;transition:width .3s}
.svc-i a:hover{color:var(--lenga);background-size:100% 2px}
.svc-i a:hover::after{width:22px}
@media (max-width:1180px) and (min-width:1025px){.svc{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v3: botones ámbar con texto blanco */
.btn-wa,.btn-wa:hover,.btn-wa:focus-visible{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);font-weight:700}
.fab{color:#fff}
.btn-line{background:transparent;color:var(--lenga);box-shadow:inset 0 0 0 1.5px var(--lenga)}
.btn-line:hover{background:var(--lenga);color:#fff}
.navlink.on{color:#fff;box-shadow:inset 0 -2px 0 var(--acento,#F0A93B)}

/* carruseles: cambio con fundido y zoom */
.card-img,.sheet-img{background:var(--lenga,#1F3A30)}
.gal{transition:none}
.gal.gs0{animation:gSwapA .65s cubic-bezier(.2,.7,.1,1) both}
.gal.gs1{animation:gSwapB .65s cubic-bezier(.2,.7,.1,1) both}
@keyframes gSwapA{from{opacity:.2;transform:scale(1.07)}to{opacity:1;transform:none}}
@keyframes gSwapB{from{opacity:.2;transform:scale(1.07)}to{opacity:1;transform:none}}
.dot.on{width:22px}

/* bento: qué vas a encontrar */
.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:230px;gap:14px;grid-template-areas:"a a b b" "a a c d" "e e f f"}
.bt{position:relative;display:block;border-radius:22px;overflow:hidden;color:#fff;text-decoration:none;isolation:isolate;background:var(--lenga,#1F3A30)}
.bt:nth-child(1){grid-area:a}.bt:nth-child(2){grid-area:b}.bt:nth-child(3){grid-area:c}.bt:nth-child(4){grid-area:d}.bt:nth-child(5){grid-area:e}.bt:nth-child(6){grid-area:f}
.bt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.1,1)}
.bt::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,16,.05) 25%,rgba(10,20,16,.82));transition:opacity .4s}
.bt::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,20,16,.25),rgba(10,20,16,.92));opacity:0;transition:opacity .45s}
.bt:hover img{transform:scale(1.08)}
.bt:hover::before{opacity:1}
.bt:hover{color:#fff}
.bt:focus-visible{outline:3px solid var(--lago);outline-offset:3px}
.bt-ic{position:absolute;top:18px;left:18px;z-index:2;width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s}
.bt:hover .bt-ic{background:#fff;color:var(--lenga)}
.bt-tx{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;display:flex;flex-direction:column;gap:8px}
.bt strong{font:800 clamp(26px,2.4vw,36px)/.95 "Barlow Condensed",sans-serif;text-transform:uppercase}
.bt:nth-child(1) strong{font-size:clamp(36px,4.2vw,62px)}
.bt-d{font-size:15px;line-height:1.45;color:#E2E9E5;max-width:420px;max-height:0;opacity:0;overflow:hidden;transition:max-height .5s ease,opacity .4s}
.bt:hover .bt-d,.bt:focus-visible .bt-d,.bt:nth-child(1) .bt-d{max-height:90px;opacity:1}
.bt-go{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--glaciar,#9FD3D2)}
.bt-go svg{transition:transform .3s}
.bt:hover .bt-go svg,.feat:hover .bt-go svg,.more-btn:hover svg{transform:translateX(4px)}
@media (hover:none){.bt-d{max-height:90px;opacity:1}}

/* nosotros */
.about2{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(40px,6vw,90px);align-items:center}
.collage{position:relative;padding:0 14% 16% 0}
.collage .col-a{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:24px}
.collage .col-b{position:absolute;right:0;bottom:0;width:50%;aspect-ratio:1;object-fit:cover;border-radius:20px;border:8px solid var(--nieve,#F4F6F3);box-shadow:0 24px 48px rgba(0,0,0,.16)}
.collage .about-badge{top:18px;left:18px;bottom:auto}
.xp .about-tx h2{font-size:clamp(38px,4.4vw,60px);text-transform:uppercase;margin:0 0 22px}
.about-tx .lead{font-size:21px;font-weight:500;color:var(--ink);margin:0 0 16px}
.about-tx p{color:var(--texto,#3F4744);margin:0 0 14px}
.pts{list-style:none;margin:24px 0 28px;padding:0;display:grid;gap:12px}
.pts li{display:flex;align-items:center;gap:12px;font-weight:600}
.pts svg{flex:none;width:32px;height:32px;padding:6px;border-radius:50%;background:#E6F1EF;color:var(--lago)}
.xp .sign{font:800 clamp(24px,2.4vw,32px)/1 "Barlow Condensed",sans-serif;text-transform:uppercase;color:var(--lenga);margin:28px 0 0;padding-top:20px;border-top:1px solid var(--linea)}

/* novedades */
.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.pcard{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink);animation:cardIn .65s cubic-bezier(.2,.7,.1,1) both}
.pcard:nth-child(2){animation-delay:.08s}.pcard:nth-child(3){animation-delay:.16s}.pcard:nth-child(4){animation-delay:.24s}.pcard:nth-child(n+5){animation-delay:.32s}
.ba .pcard{animation-name:cardIn2}
.pcard:hover{color:var(--ink)}
.pcard-img{display:block;aspect-ratio:16/11;border-radius:18px;overflow:hidden;background:#DDE5E1}
.pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.1,1)}
.pcard:hover .pcard-img img{transform:scale(1.06)}
.pcard h3{font-size:28px;text-transform:uppercase;transition:color .25s}
.pcard:hover h3{color:var(--lago)}
.pcard p{margin:0;color:var(--texto,#3F4744);font-size:15px}
.pcard:focus-visible{outline:3px solid var(--lago);outline-offset:4px;border-radius:18px}
.ptag{color:var(--lago);font-weight:600;font-size:14px}
.ptag.light{color:var(--glaciar,#9FD3D2)}
.pmeta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--piedra)}
.pmeta.light{color:var(--texto-claro,#D3DED8)}
.more-btn{text-decoration:none}
a.more-btn:hover{color:#fff}

/* página de novedades */
main.page{animation:pageIn .55s ease both}
@keyframes pageIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.phero{position:relative;margin-top:-72px;background:var(--lenga);color:#fff;padding:150px 0 clamp(120px,14vw,170px);overflow:hidden}
.phero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 85% 0%,rgba(159,211,210,.22),transparent 60%),radial-gradient(ellipse 50% 70% at 0% 100%,rgba(240,169,59,.12),transparent 60%)}
.phero-in{position:relative}
.phero h1{font-size:clamp(50px,8vw,116px);text-transform:uppercase;max-width:12ch;animation:subIn 1s .1s cubic-bezier(.2,.7,.1,1) both}
.phero p{max-width:560px;color:var(--texto-claro,#D3DED8);font-size:19px;margin:20px 0 0;animation:subIn 1s .3s cubic-bezier(.2,.7,.1,1) both}
.crumb{display:inline-flex;align-items:center;gap:8px;margin-bottom:20px;color:var(--glaciar,#9FD3D2);text-decoration:none;font-weight:600;font-size:15px;min-height:44px}
.crumb:hover{color:#fff}
.crumb svg{transition:transform .3s}.crumb:hover svg{transform:translateX(-4px)}
.blog-sec{padding:clamp(30px,5vw,60px) 0 clamp(70px,9vw,120px)}
.feat{display:grid;grid-template-columns:1.25fr 1fr;border-radius:24px;overflow:hidden;background:#fff;text-decoration:none;color:var(--ink);margin-bottom:40px;box-shadow:0 18px 50px rgba(22,27,26,.08);animation:cardIn .7s cubic-bezier(.2,.7,.1,1) both}
.feat.ba{animation-name:cardIn2}
.feat:hover{color:var(--ink)}
.feat:focus-visible{outline:3px solid var(--lago);outline-offset:4px}
.feat-img{position:relative;display:block;min-height:400px;overflow:hidden}
.feat-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.1,1)}
.feat:hover .feat-img img{transform:scale(1.05)}
.feat-tx{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:clamp(26px,4vw,52px)}
.feat h2{font-size:clamp(34px,3.6vw,54px);text-transform:uppercase}
.feat p{margin:0;color:var(--texto,#3F4744);font-size:17px}
.feat .bt-go{color:var(--lago);font-size:15px}

/* nota */
.post-hero{position:relative;margin-top:-72px;min-height:min(80vh,740px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--lenga,#1F3A30)}
.post-hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:slowzoom 16s ease-out both}
.post-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,16,.6),rgba(10,20,16,.1) 40%,rgba(10,20,16,.88))}
.post-hero-in{position:relative;z-index:1;padding-top:140px;padding-bottom:clamp(40px,6vw,70px)}
.xp .post-hero h1{font-size:clamp(42px,6.2vw,92px);text-transform:uppercase;max-width:15ch;margin:12px 0 18px;animation:subIn 1s .15s cubic-bezier(.2,.7,.1,1) both}
.post-hero .pmeta{animation:subIn 1s .35s both}
.post-wrap{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(30px,5vw,80px);padding-top:clamp(50px,7vw,90px);padding-bottom:clamp(50px,7vw,90px);align-items:start}
.prose{font-size:19px;line-height:1.75;max-width:68ch}
.prose .lede{font-size:23px;line-height:1.5;color:var(--ink);font-weight:500;margin:0 0 28px}
.xp .prose h2{font-size:clamp(30px,3vw,40px);text-transform:uppercase;margin:40px 0 12px}
.prose p{margin:0 0 18px;color:var(--texto,#2C3330)}
.rel{position:sticky;top:96px;background:#fff;border-radius:22px;overflow:hidden;border:1px solid var(--linea);box-shadow:0 18px 40px rgba(22,27,26,.06)}
.rel img{display:block;width:100%;aspect-ratio:10/7;object-fit:cover}
.rel-bd{display:grid;gap:10px;padding:20px 22px 24px}
.rel-bd small{color:var(--lago);font-weight:600;font-size:14px}
.rel h3{font-size:28px;text-transform:uppercase}
.rel p{margin:0;font-size:15px;color:var(--texto,#3F4744)}
.rel .btn{width:100%}
.more-posts{padding-bottom:clamp(40px,6vw,70px)}
.xp .more-posts h2{font-size:clamp(36px,4.6vw,60px);text-transform:uppercase;margin:0 0 30px;padding-top:clamp(40px,5vw,60px);border-top:1px solid var(--linea)}

@supports (animation-timeline: view()){
  .bt{animation:btIn linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  .bt:nth-child(2){animation-range:entry 8% entry 63%}.bt:nth-child(3){animation-range:entry 12% entry 67%}.bt:nth-child(4){animation-range:entry 18% entry 73%}.bt:nth-child(5){animation-range:entry 6% entry 61%}.bt:nth-child(6){animation-range:entry 12% entry 67%}
  .collage .col-a{animation:imgPar linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
  .collage .col-b{animation:floatB linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
  .collage .about-badge{animation:popIn linear both;animation-timeline:view();animation-range:entry 40% entry 90%}
  .about-tx > *{animation:bdIn linear both;animation-timeline:view();animation-range:entry 5% entry 50%}
  .prose h2,.prose p{animation:bdIn linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
}
@keyframes btIn{from{opacity:0;clip-path:inset(28% 0 0 0 round 22px);transform:translateY(30px)}to{opacity:1;clip-path:inset(0 0 0 0 round 22px);transform:none}}
@keyframes floatB{from{transform:translateY(50px)}to{transform:translateY(-50px)}}

@media (max-width:1024px){
  .bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"a a" "b b" "c d" "e f";grid-auto-rows:240px}
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .post-wrap{grid-template-columns:1fr}
  .rel{position:static;max-width:460px}
}
@media (max-width:900px){
  .about2{grid-template-columns:1fr}
  .collage{max-width:560px}
  .feat{grid-template-columns:1fr}
  .feat-img{min-height:260px}
}
@media (max-width:720px){
  .bento{grid-template-columns:1fr;grid-template-areas:"a" "b" "c" "d" "e" "f";grid-auto-rows:240px}
  .pgrid{grid-template-columns:1fr}
}

/* nosotros: arco con fotos que se alternan */
.vis{position:relative;max-width:520px;margin:0 auto 0 0;padding:0 0 40px 40px}
.arch{position:relative;aspect-ratio:4/5;border-radius:999px 999px 28px 28px;overflow:hidden;background:var(--lenga,#1F3A30);box-shadow:0 30px 60px rgba(22,27,26,.18)}
.sl{position:absolute;inset:0;margin:0;opacity:0;animation:slideCycle 24s infinite}
.sl img{width:100%;height:100%;object-fit:cover;display:block}
.s1{opacity:1;animation-delay:0s}.s2{animation-delay:6s}.s3{animation-delay:12s}.s4{animation-delay:18s}
.sl .m-cap{left:50%;bottom:20px;transform:translateX(-50%)}
@keyframes slideCycle{0%{opacity:0;transform:scale(1.1)}4%{opacity:1}25%{opacity:1}30%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
.v-stat{position:absolute;left:0;bottom:0;width:min(250px,60%);margin:0;box-shadow:0 20px 44px rgba(22,27,26,.25);z-index:2}
.spin{position:absolute;top:8%;right:-44px;width:132px;height:132px;border-radius:50%;background:var(--nieve,#F4F6F3);color:var(--lenga);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px rgba(22,27,26,.16);z-index:2}
.spin-txt{position:absolute;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);animation:spinR 22s linear infinite}
.spin-txt text{font:700 10.5px "Barlow Condensed",sans-serif;letter-spacing:.22em;fill:currentColor}
.spin-ic{color:var(--acento,#F0A93B)}
@keyframes spinR{to{transform:rotate(360deg)}}
@keyframes archIn{from{opacity:0;transform:translateY(60px) scale(.96)}to{opacity:1;transform:none}}
@keyframes slideInL{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){
  .arch{animation:archIn linear both;animation-timeline:view();animation-range:entry 0% entry 60%}
  .v-stat{animation:slideInL linear both;animation-timeline:view();animation-range:entry 30% entry 90%}
  .spin{animation:popIn linear both;animation-timeline:view();animation-range:entry 30% entry 80%}
}
@media (max-width:900px){.vis{margin:0 auto;max-width:460px}}
@media (max-width:520px){.vis{padding:0 0 30px 20px}.spin{right:-6px;width:104px;height:104px}.spin-txt text{font-size:10px}}
@media (prefers-reduced-motion:reduce){.s1{opacity:1}}

/* bento: hovers y animaciones más limpios */
.bt::before{display:none}
.bt::after{background:linear-gradient(180deg,rgba(10,20,16,0) 38%,rgba(10,20,16,.8) 100%)}
.bt img{transition:transform 1.4s cubic-bezier(.2,.7,.1,1)}
.bt:hover img{transform:scale(1.05)}
.bt-tx{transition:transform .5s cubic-bezier(.2,.7,.1,1)}
.bt:hover .bt-tx{transform:translateY(-6px)}
.bt-d{max-height:none;opacity:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:none}
.bt-go{opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s ease;color:#fff}
.bt:hover .bt-go,.bt:focus-visible .bt-go{opacity:1;transform:none}
.bt-ic{background:rgba(255,255,255,.18);color:#fff;transition:transform .4s cubic-bezier(.2,.7,.1,1)}
.bt:hover .bt-ic{background:rgba(255,255,255,.18);color:#fff;transform:translateY(-3px)}
@media (hover:none){.bt-go{opacity:1;transform:none}}
@keyframes btIn2{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}


.v-stat{margin:0}
@supports (animation-timeline: view()){.bt{animation-name:btIn2}}
/* arreglo: el arco ocupa todo el ancho de su columna */
.vis{width:100%;box-sizing:border-box}
.v-stat{width:min(260px,58%)}

/* arreglo: bento legible y prolijo */
#t-find{font-size:clamp(40px,5vw,72px);max-width:18ch}
.bt::after{background:linear-gradient(180deg,rgba(10,20,16,.18) 0%,rgba(10,20,16,0) 28%,rgba(10,20,16,.5) 58%,rgba(10,20,16,.9) 100%)}
.bt strong,.bt-d{text-shadow:0 2px 18px rgba(0,0,0,.4)}
.bt-d{color:var(--texto-claro,#EEF3F0)}
.bt-ic,.bt:hover .bt-ic{background:rgba(18,26,23,.45);border:1px solid rgba(255,255,255,.2);color:#fff}
.bt:hover .bt-ic{background:rgba(18,26,23,.62)}
/* arreglo: tarjetas chicas del bento sin superposiciones */
.bento{grid-auto-rows:250px}
.bt-ic,.bt:hover .bt-ic{width:42px;height:42px;border-radius:12px;top:16px;left:16px}
.bt-ic svg{width:20px;height:20px}
.bt:nth-child(3) .bt-tx,.bt:nth-child(4) .bt-tx{left:18px;right:18px;bottom:16px;gap:6px}
.bt:nth-child(3) strong,.bt:nth-child(4) strong{font-size:clamp(24px,2vw,30px)}
.bt:nth-child(3) .bt-d,.bt:nth-child(4) .bt-d{display:none}
@media (max-width:720px){.bt:nth-child(3) .bt-d,.bt:nth-child(4) .bt-d{display:-webkit-box}}
/* espacio entre palabras del título animado */
.ch.sp{width:.26em}
/* alquiler de autos y alojamientos */
.rtabs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:5px;border-radius:99px;background:var(--nieve,#F4F6F3);margin-bottom:26px}
.rtab{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 20px;border:0;border-radius:99px;background:transparent;font:600 16px Barlow,sans-serif;color:var(--ink);cursor:pointer;transition:background .3s,color .3s}
.rtab small{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:99px;background:rgba(22,27,26,.08);font-size:13px}
.rtab.on{background:var(--lenga);color:#fff}
.rtab.on small{background:rgba(255,255,255,.18)}
.rtab:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px}
.rslider{display:grid;grid-auto-flow:column;grid-auto-columns:min(390px,82vw);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 26px;margin:0 -4px;scrollbar-width:none;overscroll-behavior-x:contain}
.rslider::-webkit-scrollbar{display:none}
.rslider:focus-visible{outline:3px solid var(--glaciar);outline-offset:4px;border-radius:12px}
.rc{scroll-snap-align:start;display:flex;flex-direction:column;background:var(--nieve,#F4F6F3);border-radius:22px;overflow:hidden;transition:transform .45s cubic-bezier(.2,.7,.1,1),box-shadow .45s}
.rc:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(22,27,26,.11)}
.ra .rc{animation:cardIn .6s cubic-bezier(.2,.7,.1,1) both}.rb .rc{animation:cardIn2 .6s cubic-bezier(.2,.7,.1,1) both}
.rslider .rc:nth-child(2){animation-delay:.08s}.rslider .rc:nth-child(3){animation-delay:.16s}.rslider .rc:nth-child(n+4){animation-delay:.24s}
.rc-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--lenga,#1F3A30)}
.rc-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.1,1)}
.rc:hover .rc-img img{transform:scale(1.05)}
.rc-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,.92);background:radial-gradient(ellipse 80% 70% at 75% 10%,rgba(159,211,210,.28),transparent 60%),linear-gradient(140deg,var(--lenga,#1F3A30),var(--lago,#1D5C6B))}
.rc-ph.alt{background:radial-gradient(ellipse 80% 70% at 20% 10%,rgba(240,169,59,.22),transparent 60%),linear-gradient(140deg,var(--lago,#1D5C6B),var(--lenga,#1F3A30))}
.rc-ph::after{content:"";position:absolute;left:0;right:0;bottom:0;height:36%;background:rgba(255,255,255,.07);clip-path:polygon(0 100%,0 62%,14% 34%,27% 56%,44% 12%,60% 52%,74% 28%,100% 62%,100% 100%)}
.rc-ph svg{width:88px;height:88px;position:relative;z-index:1;transition:transform .6s cubic-bezier(.2,.7,.1,1)}
.rc:hover .rc-ph svg{transform:translateY(-6px) scale(1.06)}
.rc-ph span{position:relative;z-index:1;font-size:13px;font-weight:600;letter-spacing:.05em;opacity:.75}
.rc-bd{display:flex;flex-direction:column;gap:10px;padding:22px 22px 24px;flex:1}
.xp .rc h3{font-size:32px;text-transform:uppercase;line-height:1;padding-top:.06em}
.rc p{margin:0;color:var(--texto,#3F4744);font-size:16px}
.rc-specs{list-style:none;margin:4px 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.rc-specs li{font-size:13px;font-weight:600;color:var(--lenga);background:#fff;border:1px solid var(--linea);border-radius:99px;padding:6px 12px}
.rc .card-ft{margin-top:auto}
.rc .card-ft .btn{min-height:44px;padding:0 20px;font-size:15px}
.rc .price strong{font-size:24px}
.rfoot{display:flex;align-items:center;justify-content:space-between;gap:20px}
.rbar{flex:1;max-width:340px;height:3px;border-radius:3px;background:var(--linea);overflow:hidden}
.rbar i{display:block;height:100%;background:var(--lenga);transform-origin:left;transform:scaleX(var(--p));transition:transform .3s ease}
.rnav{display:flex;gap:10px}
.rbtn{width:50px;height:50px;border-radius:50%;border:1.5px solid var(--linea);background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s}
.rbtn:hover{background:var(--lenga);border-color:var(--lenga);color:#fff;transform:scale(1.05)}
.rbtn:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px}
.rnote{display:flex;gap:12px;align-items:flex-start;margin:24px 0 0;padding:16px 18px;border-radius:16px;background:#EEF6F5;color:#24433F;font-size:15px;max-width:760px}
.rnote svg{flex:none;margin-top:2px;color:var(--lago)}
.svc{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1024px){.svc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.svc{grid-template-columns:1fr}.rtab{padding:0 14px;font-size:15px}}
/* contacto en el footer */
.ftr-contact li{display:flex;align-items:center;gap:10px}
.ftr-contact a{display:inline-flex;align-items:center;gap:10px;word-break:break-word}
.ftr-contact svg{flex:none;color:var(--glaciar,#9FD3D2)}


/* ===================== Theme WordPress ===================== */
[hidden]{display:none!important}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;color:var(--ink,#161B1A);padding:10px 16px;border-radius:8px}
.skip:focus{left:12px}
.admin-bar .hdr{top:32px}
@media (max-width:782px){.admin-bar .hdr{top:46px}}
.hdr.scrolled{background:rgba(18,26,23,.92)}
.logo-h svg,.logo-h img{height:50px;width:auto}
.btn-wa{background:var(--acento,#F0A93B)}
.fab{background:var(--acento,#F0A93B)}
.card-link{color:inherit;text-decoration:none}
.card-link:hover{color:var(--lago)}
.card-link:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px;border-radius:4px}

/* carruseles con fotos reales */
.card-img .slide,.sheet-img .slide,.pq-car .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .6s ease,transform 1s cubic-bezier(.2,.7,.1,1)}
.card-img .slide.on,.sheet-img .slide.on,.pq-car .slide.on{opacity:1;transform:none}
.card:hover .card-img .slide.on{transform:scale(1.05)}
.card-img > img:not(.slide){position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.card-img .badge{z-index:2}
.thumbs{display:flex;gap:8px;overflow-x:auto;padding:3px 3px 6px}
.thumb-img{flex:none;width:92px;aspect-ratio:10/7;border-radius:10px;border:0;padding:0;overflow:hidden;cursor:pointer;opacity:.55;transition:opacity .2s,box-shadow .2s;background:var(--lenga,#1F3A30)}
.thumb-img img{width:100%;height:100%;object-fit:cover;display:block}
.thumb-img:hover{opacity:.85}
.thumb-img.on{opacity:1;box-shadow:0 0 0 2.5px var(--lenga)}
.thumb-img:focus-visible{outline:3px solid var(--lago);outline-offset:2px}
.sheet-link{align-self:flex-start;color:var(--lago);font-weight:600;font-size:15px}
.grid .card.nuevo{animation:cardIn .7s cubic-bezier(.2,.7,.1,1) both;animation-delay:calc(var(--d) * 90ms)}
.grid .card.ga{animation:cardIn .65s cubic-bezier(.2,.7,.1,1) both;animation-delay:calc(var(--d) * 60ms)}
.grid .card.gb{animation:cardIn2 .65s cubic-bezier(.2,.7,.1,1) both;animation-delay:calc(var(--d) * 60ms)}

/* nosotros: alternancia con JS */
.arch .sl{animation:none;opacity:0;transform:scale(1.08);transition:opacity 1.4s ease,transform 7s ease-out}
.arch .sl.on{opacity:1;transform:scale(1)}
.m-num{animation:none!important}
.m-num::after{content:none}

/* preguntas con details */
.q summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font:600 19px Barlow,sans-serif;color:var(--ink);cursor:pointer;min-height:44px}
.q summary::-webkit-details-marker{display:none}
.q summary svg{flex:none;transition:transform .3s}
.q[open] summary svg{transform:rotate(45deg)}
.q summary:focus-visible{outline:3px solid var(--glaciar);outline-offset:3px;border-radius:6px}

/* mosaico con otra cantidad de tarjetas */
.bento:not(.bento-6){grid-template-areas:none;grid-template-columns:repeat(3,minmax(0,1fr))}
.bento:not(.bento-6) .bt{grid-area:auto}
.bento:not(.bento-6) .bt:first-child{grid-column:span 2;grid-row:span 2}
@media (max-width:720px){.bento:not(.bento-6){grid-template-columns:1fr}.bento:not(.bento-6) .bt:first-child{grid-column:auto;grid-row:auto}}
.svc{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}

/* página de excursión */
.pq-hero{min-height:min(78vh,720px)}
.pq-car{position:absolute;inset:0}
.pq-car .gnav{opacity:1;top:auto;bottom:24px;margin-top:0;z-index:3}
.pq-car .gnav.prev{left:auto;right:84px}.pq-car .gnav.next{right:24px}
.pq-car .dots{z-index:3;bottom:40px;justify-content:flex-start;left:24px}
.post-hero .pq-car::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,16,.55),rgba(10,20,16,.1) 40%,rgba(10,20,16,.85));z-index:1;pointer-events:none}
.pq-bd{padding:0}
.lede-pq{font-size:21px;font-weight:500;margin:0}
.post-wrap .ask{position:sticky;top:96px}
.post-wrap .rel .ask{position:static}
.single-col{grid-template-columns:1fr}

/* novedades */
.pagin{margin-top:40px}
.pagin .nav-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pagin .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border-radius:99px;border:1.5px solid var(--linea);color:var(--ink);text-decoration:none;font-weight:600}
.pagin .page-numbers.current,.pagin a.page-numbers:hover{background:var(--lenga);border-color:var(--lenga);color:#fff}
.pagin .screen-reader-text{position:absolute;left:-9999px}
a.chip{display:inline-flex;align-items:center;text-decoration:none}
.prose img{max-width:100%;height:auto;border-radius:16px}
.prose figure{margin:28px 0}
.prose figcaption{font-size:14px;color:var(--piedra);margin-top:8px}
.prose ul,.prose ol{padding-left:22px;margin:0 0 18px}
.prose li{margin-bottom:6px}
.prose blockquote{margin:28px 0;padding:6px 0 6px 22px;border-left:3px solid var(--acento,#F0A93B);font-size:21px;color:var(--ink)}
.prose a{color:var(--lago)}
.prose .wp-block-embed iframe{width:100%;aspect-ratio:16/9;height:auto;border-radius:16px}
.rel .card-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:1024px){.pq-car .gnav{display:none}}

/* Barra de administración: sin franja en blanco arriba (solo se ve logueado) */
html:root{margin-top:0!important}
body.admin-bar{padding-top:32px}
body.admin-bar #wpadminbar{position:fixed!important;top:0!important}
@media screen and (max-width:782px){body.admin-bar{padding-top:46px}}
@media screen and (max-width:600px){body.admin-bar #wpadminbar{position:absolute!important}}

/* Alquileres: entran todas las tarjetas a lo ancho; si hay más, se desliza */
.rslider{grid-auto-columns:calc((100% - 40px) / 3);margin:0;padding:10px 0 26px}
@media (max-width:1024px){.rslider{grid-auto-columns:calc((100% - 20px) / 2)}}
@media (max-width:720px){.rslider{grid-auto-columns:86%}}
.rfoot.sin-desliz{display:none}

/* Ficha de excursión: siempre fija arriba de todo y con desplazamiento propio */
.xp-modal{overflow:visible}
.sheet-bg{position:fixed;inset:0;z-index:100000}
.sheet{overscroll-behavior:contain}

/* Ficha en <dialog> (por encima de todo) */
dialog.sheet-dlg{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(10,16,14,.55);color:inherit;overflow:hidden;display:flex;justify-content:flex-end;align-items:stretch;z-index:100000}
dialog.sheet-dlg:not([open]){display:none}
dialog.sheet-dlg::backdrop{background:transparent}
dialog.sheet-dlg .sheet{height:100%;max-height:100%;overflow-y:auto;overscroll-behavior:contain;background:#fff;color:var(--ink,#161B1A);font-family:Barlow,"Segoe UI",system-ui,sans-serif}

/* Dentro de la ficha: contenido siempre visible (sin animaciones de aparición) */
dialog.sheet-dlg .sheet *{animation:none!important;opacity:1}
dialog.sheet-dlg .sheet .slide{opacity:0}
dialog.sheet-dlg .sheet .slide.on{opacity:1}
dialog.sheet-dlg .sheet .thumb-img{opacity:.55}
dialog.sheet-dlg .sheet .thumb-img.on,dialog.sheet-dlg .sheet .thumb-img img{opacity:1}

/* Ficha: animación de apertura y cierre suave */
dialog.sheet-dlg{background:rgba(10,16,14,0)!important;transition:background-color .45s ease}
dialog.sheet-dlg.is-open{background:rgba(10,16,14,.55)!important}
dialog.sheet-dlg .sheet{transform:translateX(100%);transition:transform .7s cubic-bezier(.22,.8,.16,1);box-shadow:-30px 0 60px rgba(0,0,0,.18)}
dialog.sheet-dlg.is-open .sheet{transform:none}
dialog.sheet-dlg .sheet-img .slide.on{transform:scale(1.1);transition:opacity .6s ease,transform 1.4s cubic-bezier(.22,.8,.16,1)}
dialog.sheet-dlg.is-open .sheet-img .slide.on{transform:none}
dialog.sheet-dlg .sheet-img .gnav,dialog.sheet-dlg .sheet-img .gcount,dialog.sheet-dlg .sheet-img .close{opacity:0;transition:opacity .4s ease}
dialog.sheet-dlg.is-open .sheet-img .gnav,dialog.sheet-dlg.is-open .sheet-img .gcount,dialog.sheet-dlg.is-open .sheet-img .close{opacity:1;transition-delay:.55s}
dialog.sheet-dlg .sheet-tt,dialog.sheet-dlg .sheet-bd > *{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .7s cubic-bezier(.22,.8,.16,1)}
dialog.sheet-dlg.is-open .sheet-tt,dialog.sheet-dlg.is-open .sheet-bd > *{opacity:1;transform:none}
dialog.sheet-dlg.is-open .sheet-tt{transition-delay:.35s}
dialog.sheet-dlg.is-open .sheet-bd > *:nth-child(1){transition-delay:.45s}
dialog.sheet-dlg.is-open .sheet-bd > *:nth-child(2){transition-delay:.53s}
dialog.sheet-dlg.is-open .sheet-bd > *:nth-child(3){transition-delay:.61s}
dialog.sheet-dlg.is-open .sheet-bd > *:nth-child(4){transition-delay:.69s}
dialog.sheet-dlg.is-open .sheet-bd > *:nth-child(5){transition-delay:.77s}
dialog.sheet-dlg.is-open .sheet-bd > *:nth-child(n+6){transition-delay:.85s}
dialog.sheet-dlg .ptable tr{opacity:0;transform:translateX(-14px);transition:opacity .45s ease,transform .5s cubic-bezier(.22,.8,.16,1)}
dialog.sheet-dlg.is-open .ptable tr{opacity:1;transform:none}
dialog.sheet-dlg.is-open .ptable tr:nth-child(1){transition-delay:.8s}
dialog.sheet-dlg.is-open .ptable tr:nth-child(2){transition-delay:.86s}
dialog.sheet-dlg.is-open .ptable tr:nth-child(3){transition-delay:.92s}
dialog.sheet-dlg.is-open .ptable tr:nth-child(4){transition-delay:.98s}
dialog.sheet-dlg.is-open .ptable tr:nth-child(n+5){transition-delay:1.04s}
dialog.sheet-dlg .route b{transform:scale(0);transition:transform .5s cubic-bezier(.3,1.5,.5,1),background .2s}
dialog.sheet-dlg .route li > div{opacity:0;transform:translateX(-14px);transition:opacity .45s ease,transform .5s cubic-bezier(.22,.8,.16,1)}
dialog.sheet-dlg .route li::before{transform:scaleY(0);transform-origin:top;transition:transform .45s ease}
dialog.sheet-dlg.is-open .route b,dialog.sheet-dlg.is-open .route li > div{opacity:1;transform:none}
dialog.sheet-dlg.is-open .route li::before{transform:scaleY(1)}
dialog.sheet-dlg.is-open .route li:nth-child(1) b{transition-delay:1s}dialog.sheet-dlg.is-open .route li:nth-child(1) > div{transition-delay:1.08s}dialog.sheet-dlg.is-open .route li:nth-child(1)::before{transition-delay:1.2s}
dialog.sheet-dlg.is-open .route li:nth-child(2) b{transition-delay:1.3s}dialog.sheet-dlg.is-open .route li:nth-child(2) > div{transition-delay:1.38s}dialog.sheet-dlg.is-open .route li:nth-child(2)::before{transition-delay:1.5s}
dialog.sheet-dlg.is-open .route li:nth-child(3) b{transition-delay:1.6s}dialog.sheet-dlg.is-open .route li:nth-child(3) > div{transition-delay:1.68s}dialog.sheet-dlg.is-open .route li:nth-child(3)::before{transition-delay:1.8s}
dialog.sheet-dlg.is-open .route li:nth-child(4) b{transition-delay:1.9s}dialog.sheet-dlg.is-open .route li:nth-child(4) > div{transition-delay:1.98s}dialog.sheet-dlg.is-open .route li:nth-child(4)::before{transition-delay:2.1s}
dialog.sheet-dlg.is-open .route li:nth-child(n+5) b{transition-delay:2.2s}dialog.sheet-dlg.is-open .route li:nth-child(n+5) > div{transition-delay:2.28s}
dialog.sheet-dlg .lists li{opacity:0;transform:translateX(-12px);transition:opacity .4s ease,transform .45s ease}
dialog.sheet-dlg.is-open .lists li{opacity:1;transform:none;transition-delay:1.1s}
dialog.sheet-dlg.is-open .lists li:nth-child(2){transition-delay:1.16s}dialog.sheet-dlg.is-open .lists li:nth-child(3){transition-delay:1.22s}dialog.sheet-dlg.is-open .lists li:nth-child(n+4){transition-delay:1.28s}
dialog.sheet-dlg:not(.is-open) *,dialog.sheet-dlg:not(.is-open) .sheet{transition-delay:0s!important}
dialog.sheet-dlg:not(.is-open) .sheet{transition-duration:.45s}
@media (prefers-reduced-motion:reduce){dialog.sheet-dlg *,dialog.sheet-dlg{transition:none!important}}

/* ===================== v1.7: espaciados, portada y rendimiento ===================== */
.sec{padding:clamp(64px,8vw,104px) 0}
.svc-sec{padding-top:clamp(64px,8vw,104px)}
.sec-head{margin-bottom:clamp(28px,4vw,44px);gap:16px 48px}
.sec-head h2,.xp .svc-sec .sec-head h2{font-size:clamp(38px,5vw,66px);max-width:18ch}
#t-find{max-width:20ch}
.sec-head p{font-size:17px;line-height:1.6}
.hero{min-height:min(100svh,880px)}
.hero h1{font-size:clamp(50px,min(9vw,13vh),128px)}
.hero-in{padding-top:clamp(110px,16vh,150px);padding-bottom:clamp(120px,17vh,170px)}
.hero-sub{margin-top:clamp(14px,2.4vh,24px)}
.hero-ctas{margin-top:clamp(18px,3vh,30px)}
.hero-facts{margin-top:clamp(18px,3vh,34px)}
.hero-vid{opacity:0;transition:opacity 1.2s ease}
.hero-vid.playing{opacity:1}
.hero-grain{position:absolute;left:-50%;top:-50%;width:200%;height:200%;background:url(grano.png) repeat;opacity:.09;mix-blend-mode:overlay;pointer-events:none;animation:grain 1.4s steps(4) infinite;will-change:transform}
.finder{margin-top:-48px}
.grid{gap:clamp(16px,2vw,24px)}
.card-bd{padding:20px 22px 22px}
.mq{margin-bottom:clamp(40px,6vw,72px)}
.cta{padding:clamp(44px,7vw,96px) clamp(24px,6vw,80px)}
.ftr{margin-top:clamp(64px,9vw,110px)}
@media (max-width:720px){
  .spin{right:8px;top:6%}
  .legal{padding-bottom:96px}
  .hero-in{padding-bottom:120px}
  .sec-head{margin-bottom:24px}
  .filters{gap:8px}
}
/* Apariciones con IntersectionObserver (Safari/Firefox sin animaciones de scroll) */
.no-sda .rv,.no-sda .bt,.no-sda .step,.no-sda .svc-i,.no-sda .rc,.no-sda .pcard{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.1,1)}
.no-sda .rv.in,.no-sda .bt.in,.no-sda .step.in,.no-sda .svc-i.in,.no-sda .rc.in,.no-sda .pcard.in{opacity:1;transform:none}
/* Animaciones ligadas al scroll un poco más suaves y tempranas */
@supports (animation-timeline: view()){
  .rv{animation-range:entry 0% entry 45%}
  .bt{animation-range:entry 0% entry 45%}
}

/* ===== Botón flotante de WhatsApp (en todo el sitio) ===== */
.fab{display:none!important}
.wa-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:9990;display:flex;align-items:center;gap:10px;text-decoration:none;animation:waIn .6s 1s cubic-bezier(.2,.7,.1,1) both}
.wa-fab-ic{position:relative;width:62px;height:62px;border-radius:50%;background:var(--wa,#25D366);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.12);transition:transform .3s cubic-bezier(.2,.7,.1,1),background .3s}
.wa-fab-ic::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--wa,#25D366);z-index:-1;animation:waPulse 2.8s 2s ease-out infinite}
.wa-fab-txt{background:#fff;color:var(--ink,#161B1A);font:600 14px/1 Barlow,"Segoe UI",sans-serif;padding:11px 14px;border-radius:999px;box-shadow:0 8px 22px rgba(0,0,0,.14);white-space:nowrap;opacity:0;transform:translateX(10px);pointer-events:none;transition:opacity .3s ease,transform .3s ease}
.wa-fab:hover .wa-fab-ic,.wa-fab:focus-visible .wa-fab-ic{transform:scale(1.08);background:var(--wa,#1ebe5b)}
.wa-fab:hover .wa-fab-txt,.wa-fab:focus-visible .wa-fab-txt{opacity:1;transform:none}
.wa-fab:hover,.wa-fab:focus{color:var(--ink,#161B1A)}
.wa-fab:focus-visible{outline:none}
.wa-fab:focus-visible .wa-fab-ic{box-shadow:0 0 0 4px #fff,0 0 0 7px var(--wa,#25D366)}
@keyframes waIn{from{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:none}}
@keyframes waPulse{0%{transform:scale(1);opacity:.55}70%,100%{transform:scale(1.65);opacity:0}}
@media (max-width:720px){.wa-fab-ic{width:56px;height:56px}.wa-fab-txt{display:none}}
@media (prefers-reduced-motion:reduce){.wa-fab,.wa-fab-ic::before{animation:none}}

/* El body de WordPress tiene la clase "page": nunca debe animarse ni transformarse
   (si no, los elementos fijos como el botón de WhatsApp dejan de quedar fijos). */
body.page,body{animation:none!important;transform:none!important}

/* Header pegado arriba y fijo al bajar: el contenedor general recorta lo que sobresale a los costados
   sin convertirse en una "caja con scroll" (eso corría el header hacia abajo y le impedía quedar fijo). */
.xp{overflow-x:clip;overflow-y:visible}
body{overflow-x:hidden}
.hdr{top:0}
.admin-bar .hdr{top:32px}
@media screen and (max-width:782px){.admin-bar .hdr{top:46px}}
@media screen and (max-width:600px){.admin-bar .hdr{top:0}}

/* Portada: el texto de abajo nunca queda tapado por la silueta de la montaña.
   El espacio inferior se calcula con el mismo alto que la silueta, más un margen. */
.hero-in{padding-bottom:calc(clamp(70px,11vw,150px) + clamp(28px,4vh,48px))}
.hero-in{position:relative;z-index:2}
.hero .ridge{z-index:1;pointer-events:none}
@media (max-width:720px){.hero-in{padding-bottom:calc(70px + 36px)}}

/* Cabecera de páginas internas con foto o video */
.phero.has-media{min-height:min(70vh,640px);display:flex;align-items:flex-end}
.phero.has-media::before{display:none}
.phero.has-media .phero-in{width:100%}
.phero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;animation:slowzoom 16s ease-out both}
.phero-ov{position:absolute;inset:0;z-index:0}
.phero .phero-in{position:relative;z-index:2}
.phero .ridge{z-index:1}
.phero.has-media h1,.phero.has-media p{text-shadow:0 2px 24px rgba(0,0,0,.3)}

/* Recuadro 25+ con foto de fondo (opcional) */
.m-stat.has-photo{background:var(--lenga,#1F3A30);isolation:isolate}
.m-stat.has-photo::after{display:none}
.m-stat-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.2s cubic-bezier(.2,.7,.1,1)}
.m-stat-ov{position:absolute;inset:0;z-index:-1}
.m-stat.has-photo:hover .m-stat-bg{transform:scale(1.06)}
.m-stat.has-photo .m-num,.m-stat.has-photo .m-tx{text-shadow:0 2px 16px rgba(0,0,0,.35)}
.m-stat.has-photo .m-tx{color:var(--texto-claro,#EEF3F0)}

/* ===================== Secciones personalizadas ===================== */
.xs-bg-blanco{background:#fff}
.xs-bg-oscuro{background:var(--lenga);color:#fff}
.xs-bg-oscuro h2,.xs-bg-oscuro h3{color:#fff}
.xs-txt{color:var(--texto,#3F4744)}
.xs-txt p{margin:0 0 12px}
.xs-txt p:last-child{margin-bottom:0}
.xs-txt a{color:var(--lago)}
.xs-bg-oscuro .xs-txt,.xs-bg-oscuro .sec-head .xs-txt{color:var(--texto-claro,#D3DED8)}
.xs-bg-oscuro .xs-txt a{color:var(--glaciar,#9FD3D2)}
.xs-lead{max-width:460px;font-size:17px}
.xs-split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,80px);align-items:center}
.xs-split.img-der .xs-media{order:2}
.xs-media{border-radius:24px;overflow:hidden;box-shadow:0 24px 50px rgba(22,27,26,.14)}
.xs-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.1,1)}
.xs-media:hover img{transform:scale(1.04)}
.xp .xs-body h2{font-size:clamp(36px,4.4vw,58px);text-transform:uppercase;margin:0 0 18px;line-height:1.02;padding-top:.06em}
.xs-body .xs-txt{font-size:17px;line-height:1.65}
.xs-body .help-ctas{margin-top:24px}
.xs-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,24px)}
.xs-cards.xs-n1{grid-template-columns:minmax(0,520px)}
.xs-cards.xs-n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.xs-cards.xs-n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.xs-card{display:flex;flex-direction:column;background:#fff;border-radius:20px;overflow:hidden;transition:transform .4s cubic-bezier(.2,.7,.1,1),box-shadow .4s}
.xs-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(22,27,26,.1)}
.xs-bg-blanco .xs-card{background:var(--nieve,#F4F6F3)}
.xs-bg-oscuro .xs-card{background:rgba(255,255,255,.07);color:#fff}
.xs-card-img{aspect-ratio:16/11;overflow:hidden;background:var(--lenga,#1F3A30)}
.xs-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.1,1)}
.xs-card:hover .xs-card-img img{transform:scale(1.05)}
.xs-card-bd{display:flex;flex-direction:column;gap:8px;padding:20px 22px 22px;flex:1}
.xp .xs-card h3{font-size:26px;text-transform:uppercase;line-height:1.02;padding-top:.06em}
.xs-card p{margin:0;font-size:15px;color:var(--texto,#3F4744)}
.xs-bg-oscuro .xs-card p{color:var(--texto-claro,#D3DED8)}
.xs-card-btn{align-self:flex-start;margin-top:auto;display:inline-flex;align-items:center;text-decoration:none}
.xs-card .xs-card-btn{margin-top:12px}
.xs-card-btn:hover{color:#fff}
.xs-bg-oscuro .xs-card-btn{background:var(--glaciar,#9FD3D2);color:var(--ink,#161B1A)}
.xs-video{border-radius:22px;overflow:hidden;background:#000;box-shadow:0 24px 50px rgba(22,27,26,.16)}
.xs-video iframe,.xs-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0}
.xs-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(16px,2vw,24px)}
.xs-quote{margin:0;background:#fff;border-radius:20px;padding:26px 24px;display:flex;flex-direction:column;gap:14px}
.xs-bg-blanco .xs-quote{background:var(--nieve,#F4F6F3)}
.xs-bg-oscuro .xs-quote{background:rgba(255,255,255,.07)}
.xs-quote svg{color:var(--acento,#F0A93B)}
.xs-quote blockquote{margin:0;font-size:17px;line-height:1.6;color:var(--texto,#2C3330)}
.xs-bg-oscuro .xs-quote blockquote{color:var(--texto-claro,#EEF3F0)}
.xs-quote figcaption{display:flex;flex-direction:column;gap:2px;margin-top:auto}
.xs-quote figcaption strong{font-weight:700}
.xs-quote figcaption span{font-size:14px;color:var(--piedra)}
.xs-bg-oscuro .xs-quote figcaption span{color:var(--texto-claro,#A9BAB2)}
.xs-more{margin-top:36px}
.xs-banner{padding:clamp(36px,5vw,64px) 0}
.xs-cta::before{display:none}
.xs-cta video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.xs-cta .xs-ov{position:absolute;inset:0;z-index:1}
.xs-cta .cta-in{z-index:2}
.xs-cta .xs-txt{color:var(--texto-claro,#E0E8E3);margin:0 0 26px;font-size:17px}
@media (max-width:1024px){.xs-cards,.xs-cards.xs-n3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.xs-split{grid-template-columns:1fr}.xs-split.img-der .xs-media{order:0}}
@media (max-width:720px){.xs-cards,.xs-cards.xs-n2,.xs-cards.xs-n3{grid-template-columns:1fr}}
@supports not (animation-timeline: view()){.no-sda .xs-card,.no-sda .xs-quote{opacity:1}}

/* Paquete combinado: bloque "Este paquete incluye" */
.combo h4{margin:0 0 10px}
.combo-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.combo-it{display:flex;align-items:center;gap:12px;background:var(--nieve,#F4F6F3);border-radius:14px;padding:8px 12px 8px 8px}
.combo-img{flex:none;width:58px;height:46px;border-radius:10px;overflow:hidden;background:var(--lenga,#1F3A30);color:var(--glaciar,#9FD3D2);display:flex;align-items:center;justify-content:center}
.combo-img img{width:100%;height:100%;object-fit:cover;display:block}
.combo-tx{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.combo-tx small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--lago,#1D5C6B)}
.combo-tx strong{font-size:15px;color:var(--ink,#161B1A)}
.combo-tx em{font-style:normal;font-size:13px;color:var(--piedra,#5A635F)}

/* Paquetes armados */
.combo-it{position:relative}
.combo-pr{margin-left:auto;flex:none;font:700 18px/1 "Barlow Condensed",sans-serif;color:var(--ink,#161B1A);padding-left:10px}
.combo-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:12px 14px;border-radius:14px;background:var(--lenga,#1F3A30);color:#fff}
.combo-total span{display:flex;flex-direction:column;font-weight:600;font-size:14px}
.combo-total small{font-weight:400;font-size:12px;color:var(--texto-claro,#B9CCC3)}
.combo-total strong{font:700 24px/1 "Barlow Condensed",sans-serif;color:var(--glaciar,#9FD3D2)}
.chip-combo{border-color:var(--acento,#F0A93B)}
.chip-combo.on{background:var(--lenga,#1F3A30);border-color:var(--lenga,#1F3A30)}

/* Menú en pantallas medianas (notebooks chicas, tablets horizontales, vistas previas):
   los links nunca se parten en dos renglones ni empujan el botón afuera. */
.navlink{white-space:nowrap}
.hdr-cta{white-space:nowrap;flex:none}
.logo-h{flex:none}
@media (max-width:1320px) and (min-width:1201px){
  .nav{gap:20px}
  .navlink{font-size:15px}
}
@media (max-width:1200px){
  .nav{display:none}
  .menu-btn{display:flex;align-items:center;justify-content:center}
  .mnav{display:grid;gap:4px;padding:8px 0 20px}
  .mnav[hidden]{display:none}
  .mnav a{color:#fff;text-decoration:none;font:700 30px "Barlow Condensed",sans-serif;text-transform:uppercase;padding:8px 0}
  .hdr-in{gap:16px}
  .hdr-cta{margin-left:auto}
}

/* Red de seguridad: si el navegador pausa las animaciones (vistas previas, pestañas en segundo plano),
   el título de la portada igual queda nítido y blanco a los pocos segundos. */
.xp-listo .ch{animation:none!important;opacity:1!important;filter:none!important;transform:none!important}

/* Colores editables (Opciones de Xplora → Colores) */
.btn-wa{color:var(--texto-boton,var(--ink,#161B1A))}

/* Precios con descuento */
.price small s,.ptable s,.combo-total s{opacity:.75;font-weight:500;text-decoration-thickness:1.5px}
.price small s{margin-left:4px;color:var(--piedra,#5A635F)}
.ptable s.pt-antes{color:var(--piedra,#5A635F);font-size:.9em;margin-right:6px}
.combo-total strong s{display:block;font-size:15px;color:#B9CCC3;text-align:right;margin-bottom:2px}
.off-pill{display:inline-block;margin-left:8px;padding:3px 10px;border-radius:999px;background:var(--acento,#F0A93B);color:var(--texto-boton,var(--ink,#161B1A));font:700 12px/1.4 Barlow,sans-serif;letter-spacing:.02em;vertical-align:middle;text-transform:none}
.price .off-pill{margin:6px 0 0;display:inline-block}

/* Aviso de términos y condiciones */
.tyc-aviso{display:flex;gap:8px;align-items:flex-start;margin:22px 0 0;font-size:14px;line-height:1.5;color:var(--piedra,#5A635F);max-width:760px}
.tyc-aviso svg{flex:none;margin-top:2px;color:var(--lago,#1D5C6B)}
.tyc-aviso a{color:var(--lago,#1D5C6B);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.tyc-aviso a:hover{color:var(--ink,#161B1A)}
.tyc-ficha{margin-top:10px;font-size:13px}
.tyc-cierre{margin:16px auto 0;justify-content:center;text-align:left}
.legal a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.tyc-datos{list-style:none;padding:16px 20px!important;margin:16px 0!important;background:var(--nieve,#F4F6F3);border-radius:14px}
.tyc-datos li{margin:4px 0}
