:root{--navy:#04111e;--gold:#c4a26a;--paper:#f3f0ea;--ink:#102033;--muted:#abb6c3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--navy);color:#f8f7f3;font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}img{display:block;width:100%;height:auto}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(4,17,30,.95);position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff15;backdrop-filter:blur(18px)}.brand{font-size:23px;letter-spacing:4px;line-height:1.2}.brand span{display:block;font-size:8px;letter-spacing:6px;margin-top:6px}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav [aria-current]{color:var(--gold)}.nav-contact{border:1px solid #c4a26a66;border-radius:30px;padding:9px 20px}.nav-contact span{margin-left:20px}.progress{height:2px;width:0;background:var(--gold);position:fixed;top:82px;z-index:22}.wrap{width:min(1260px,88%);margin:auto}section{padding:108px 0;overflow:hidden}section[id]{scroll-margin-top:0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:3px;color:var(--gold);margin:0 0 26px}.eyebrow span{font-size:9px;letter-spacing:2px;margin-left:10px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,5.2vw,82px);font-weight:400;line-height:1.06;letter-spacing:-2.7px;margin-bottom:32px}h2{font-weight:400;font-size:clamp(34px,3.5vw,55px);line-height:1.15;letter-spacing:-1.5px;margin-bottom:32px}h3{font-weight:400;font-size:19px;line-height:1.3;margin-bottom:9px}em{font-style:normal;color:var(--gold)}h2 i,.serif,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400}.serif{font-size:29px;line-height:1.35}h2 i{font-size:1.2em;font-weight:400}p{margin-bottom:22px}.lead{font-size:20px;line-height:1.5}.muted{color:var(--muted)}.gold{color:var(--gold)}.hero{position:relative;min-height:calc(100svh - 82px);padding:86px 0 110px;display:flex;align-items:center;isolation:isolate}.hero-art{position:absolute;inset:0 0 0 40%;z-index:-2;background:url(descanso-portada-limpia-v2.png) right top/auto 145% no-repeat}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy),transparent 35%),linear-gradient(0deg,var(--navy) 1%,transparent 65%)}.hero-copy{position:relative}.hero-copy>p,.hero h1{max-width:620px}.hero-lead{font-size:21px}.hero-bottom{position:absolute;bottom:0;width:100%;border-top:1px solid #ffffff18;display:flex;justify-content:center;gap:6vw;padding:22px 5%;font-size:10px;letter-spacing:2px;color:var(--gold)}.next{display:inline-flex;gap:25px;align-items:center;margin-top:35px;font-size:12px;letter-spacing:.5px}.next b{border:1px solid #c4a26a75;border-radius:50%;font-size:20px;font-weight:400;width:44px;height:44px;display:grid;place-items:center;transition:transform .3s,background .3s}.next:hover b{transform:translateY(5px);background:#c4a26a25}.light,.cream{background:var(--paper);color:var(--ink)}.light em,.cream em,.light .eyebrow,.cream .eyebrow{color:#926b35}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.photo{min-height:490px;border-radius:3px}.waking{background:url(descanso-2.jpg) right center/auto 100% no-repeat;align-self:stretch}.life{display:flex;gap:25px;align-items:center;margin:35px 0}.life p{margin:0 0 16px}.life p:last-child{margin:0}.life strong{font-size:13px;letter-spacing:1px}.life small{display:block;font-size:12px}.donut{width:112px;height:112px;flex-shrink:0;background:conic-gradient(var(--gold) 0 33.333%,#132238 33.333% 100%);border-radius:50%;display:grid;place-items:center}.donut span{background:var(--paper);border-radius:50%;height:82px;width:82px;display:grid;align-content:center;text-align:center;font-size:9px;line-height:1.4}.ai{background:url(descanso-3.jpg) 74% center/auto 100% no-repeat;min-height:430px}.technology{background:#030b18}blockquote{font-size:clamp(26px,3vw,42px);text-align:center;line-height:1.35;border-top:1px solid #ffffff16;padding-top:55px;margin:70px 0 0}.comfort{grid-template-columns:1.3fr 1fr;gap:50px}.features article{display:flex;gap:22px;border-bottom:1px solid #ffffff17;padding:18px 0}.features article>span{color:var(--gold);font-size:11px;padding-top:3px}.features p{font-size:14px;color:var(--muted);margin:0}.layers{background:url(descanso-5.jpg) 95% center/auto 100% no-repeat;min-height:425px}.pillars{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.pillars span{font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:7px 10px;border:1px solid #b18c5450;border-radius:25px}.layer-list{margin-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:0 45px;align-items:start}details{border-top:1px solid #10203330;padding:18px 0}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;line-height:1.5;font-size:15px}summary::-webkit-details-marker{display:none}summary:after{content:'+';margin-left:auto;font-size:22px;color:#926b35}details[open] summary:after{content:'−'}summary span{color:#926b35;font-size:11px}details p{font-size:14px;margin:16px 0 0 32px}.cream{background:#e9e4dc}.intro{max-width:700px}.zoom-image{position:relative;display:block;border:0;padding:0;background:none;width:100%;cursor:zoom-in;margin:40px 0}.zoom-image>span{position:absolute;right:20px;bottom:20px;padding:8px 20px;background:var(--navy);color:white;border-radius:30px;font-size:12px}.spec-badges{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #10203330;padding:25px 0;font-size:11px;text-transform:uppercase;letter-spacing:1px}.center{text-align:center;margin-top:60px}.contact{text-align:center;background:radial-gradient(ellipse at top,#142c3e,var(--navy) 70%)}.contact .lead{max-width:650px;margin:0 auto 45px}.contact-art{display:block;border-radius:4px;overflow:hidden;margin-bottom:42px;transition:box-shadow .3s}.contact-art:hover{box-shadow:0 0 0 2px var(--gold)}.cta{display:inline-flex;gap:35px;align-items:center;padding:17px 27px;background:var(--gold);color:var(--navy);border-radius:40px;font-size:14px;transition:transform .3s,background .3s}.cta:hover{transform:translateY(-3px);background:#e0be87}.phone{font-size:12px;color:var(--muted);margin:18px 0 50px}footer{padding:40px 6%;display:flex;align-items:center;gap:35px;border-top:1px solid #ffffff18;font-size:12px}footer p{margin:0 auto 0 0;color:var(--muted)}.skip{position:fixed;top:-100px;left:15px;background:white;color:black;z-index:99;padding:10px}.skip:focus{top:10px}dialog{width:96vw;max-width:1900px;height:94svh;padding:60px 0 0;border:0;background:#e9e4dc}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.close{position:absolute;top:10px;right:20px;background:var(--navy);color:white;border:0;border-radius:24px;padding:8px 22px;cursor:pointer}.zoom-scroll{overflow:auto;height:100%}.zoom-scroll img{min-width:1100px}.motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.motion .reveal.visible{opacity:1;transform:none}@media(min-width:1500px){.hero-art{background-size:auto 155%}}@media(max-width:950px){.split,.comfort{gap:35px}h1{font-size:60px}.hero-art{inset:0 0 0 27%;opacity:.7}.hero-art:after{background:linear-gradient(90deg,var(--navy),#04111e44 65%),linear-gradient(0deg,var(--navy),transparent)}.photo{min-height:380px}.hero-copy>p,.hero h1{max-width:520px}.hero-bottom{gap:4vw;font-size:9px}footer{flex-wrap:wrap}}@media(max-width:650px){header{height:70px;padding:0 6%}.brand{font-size:18px}.brand span{font-size:7px}nav{gap:15px;font-size:12px}nav>a:first-child{display:none}.nav-contact{padding:6px 12px}.nav-contact span{margin-left:5px}.progress{top:70px}html{scroll-padding-top:70px}.wrap{width:88%}section{padding:70px 0}h1{font-size:49px;letter-spacing:-1.8px}h2{font-size:35px;letter-spacing:-1.1px}.hero{min-height:830px;min-height:calc(100svh - 70px);padding:235px 0 110px;align-items:flex-end}.hero-art{inset:0 0 32% 0;opacity:1;background-size:auto 160%;background-position:right top}.hero-art:after{background:linear-gradient(0deg,var(--navy) 1%,#04111e05 90%),linear-gradient(90deg,#04111e66,transparent)}.hero-copy{margin-top:30px}.hero .eyebrow{margin-bottom:18px}.hero-lead{font-size:17px}.hero .muted{font-size:14px}.hero h1{max-width:360px;margin-bottom:22px}.hero .next{margin-top:10px}.hero-bottom{flex-wrap:wrap;gap:10px 20px;padding:16px 4%;font-size:8px;letter-spacing:1px}.split,.comfort{grid-template-columns:1fr;gap:30px}.photo{min-height:350px}.waking{min-height:390px}.ai{min-height:320px;background-size:auto 100%}.layers{min-height:330px}.lead{font-size:18px}.eyebrow{font-size:10px;letter-spacing:2px}.life{gap:20px}.layer-list{grid-template-columns:1fr;margin-top:30px}.features article{padding:15px 0}.comfort{gap:15px}blockquote{margin-top:35px;padding-top:35px}.spec-badges{flex-wrap:wrap;justify-content:center;font-size:9px}.zoom-image{margin:25px 0}.zoom-image>span{right:8px;bottom:8px;font-size:10px;padding:5px 10px}.cta{gap:15px;padding:16px 20px;font-size:12px}.serif{font-size:26px}.contact-art{margin-left:-4%;margin-right:-4%}footer{gap:24px}footer p{width:100%;order:4}.next{margin-top:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.motion .reveal{opacity:1;transform:none}}

/* Versión 2: fotografía limpia, iconos independientes y movimiento. */
.hero{padding-bottom:235px;min-height:max(850px,calc(100svh - 82px))}
.hero-art{background-image:url(descanso-portada-limpia-v2.png);animation:none;opacity:1}
.hero-art:after{background:linear-gradient(90deg,var(--navy),transparent 36%),linear-gradient(0deg,var(--navy),transparent 65%)}
.hero-bottom.benefits{display:block;padding:18px 0 10px;background:#04111ef5;color:#e1bb77;border-top:1px solid #c4a26a40;overflow:hidden}
.benefit-window{overflow:hidden;max-width:1260px;margin:auto;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.benefit-track{display:flex;width:max-content;animation:benefits-travel 34s linear infinite;will-change:transform}
.benefit-group{list-style:none;display:flex;flex:none;gap:0;margin:0;padding:0}
.benefit{width:252px;display:flex;flex-direction:column;align-items:center;gap:13px;font-size:11px;letter-spacing:2px;color:#e1bb77;padding:8px 0 12px;text-transform:uppercase}
.benefit-icon{width:65px;height:65px;display:grid;place-items:center;border:1px solid #d4ae6c;border-radius:50%;background:#0b1b2b;box-shadow:0 0 20px #c4a26a12;animation:icon-wave 4s ease-in-out infinite;animation-delay:var(--phase)}
.benefit-icon svg{width:36px;height:36px;opacity:1}
.benefit-window:hover .benefit-track{animation-play-state:paused}


@keyframes benefits-travel{to{transform:translateX(-50%)}}
@keyframes icon-wave{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes soft-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes gold-trace{0%{transform:translateX(-110%)}100%{transform:translateX(420%)}}
.hero-copy>.eyebrow{animation:copy-in .8s ease both}.hero h1{animation:copy-in 1s .1s ease both}.hero-copy>.hero-lead,.hero-copy>.muted{animation:copy-in 1s .25s ease both}
@keyframes copy-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.technology{position:relative}.technology:before{content:'';position:absolute;top:0;left:0;width:25%;height:1px;background:linear-gradient(90deg,transparent,#d9b778,transparent);animation:gold-trace 9s linear infinite}
.motion .ai.visible,.motion .layers.visible{animation:soft-float 7s ease-in-out infinite;animation-delay:.8s}
.features article{transition:transform .35s ease,border-color .35s ease}.features article:hover{transform:translateX(7px);border-color:#c4a26a88}
.pillars span{transition:transform .3s,background .3s}.pillars span:hover{transform:translateY(-4px);background:#c4a26a25}
.zoom-image img,.contact-art img{transition:transform .7s ease}.zoom-image:hover img,.contact-art:hover img{transform:scale(1.012)}.zoom-image{overflow:hidden}
details[open] p{animation:copy-in .35s ease both}

@media(max-width:950px){.benefit{width:200px}.hero-art{opacity:1}.hero{padding-bottom:230px}.hero-art:after{background:linear-gradient(90deg,var(--navy),#04111e22 70%),linear-gradient(0deg,var(--navy),transparent)}}
@media(max-width:650px){.hero{min-height:920px;padding-top:250px;padding-bottom:215px}.hero-art{inset:0 0 35% 0;background-size:auto 160%;opacity:1}.hero-art:after{background:linear-gradient(0deg,var(--navy) 1%,#04111e05 90%),linear-gradient(90deg,#04111e66,transparent)}.hero-bottom.benefits{padding:16px 0 6px}.benefit{width:164px;font-size:10px;letter-spacing:1px}.benefit-icon{width:60px;height:60px}.benefit-track{animation-duration:28s}.benefit-window{mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}}
@media(prefers-reduced-motion:reduce){.benefit-track{animation:none;width:100%}.benefit-group{width:100%;justify-content:center;flex-wrap:wrap}.benefit-group[aria-hidden]{display:none}.benefit{width:20%;min-width:110px;font-size:9px}.hero-bottom.benefits{position:relative;margin-top:45px;width:100%}.hero{display:block;padding-bottom:0}}

.benefit-window{mask-image:none}

/* Menú completo, con desplegable móvil. */
.descanso-menu{display:none}
header .descanso-nav{display:flex;gap:24px;align-items:center;font-size:13px}
header .descanso-nav a{display:block;white-space:nowrap;padding:8px 0}
header .descanso-nav a:hover{color:var(--gold)}
@media(max-width:1150px){
header{height:82px}.progress{top:82px}
.descanso-menu{display:flex;gap:12px;align-items:center;border:1px solid #c4a26a66;border-radius:24px;padding:9px 16px;background:transparent;color:#f8f7f3;cursor:pointer;font-size:13px}
.descanso-menu span{color:var(--gold)}
header .descanso-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:12px 6% 20px;background:#04111e;border-bottom:1px solid #c4a26a44;max-height:calc(100svh - 82px);overflow:auto}
header .descanso-nav.is-open{display:flex}header .descanso-nav a{display:block;padding:13px 0;border-bottom:1px solid #ffffff12;font-size:14px}
}
@media(max-width:650px){header{height:70px}.progress{top:70px}header .descanso-nav{max-height:calc(100svh - 70px)}}
