/* OCASO · below-the-fold styles (non-blocking). The property detail lives in ficha.css. */
.cur{position:fixed;left:0;top:0;z-index:60;pointer-events:none;opacity:0;transition:opacity .35s var(--ease)}
html.cur-on .cur{opacity:1}
html.cur-on body,html.cur-on a,html.cur-on button,html.cur-on summary,html.cur-on label{cursor:none}
.cur b{position:fixed;left:0;top:0;will-change:transform}
.cur-dot{width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--copper-t);transition:opacity .3s,background-color .3s}
.cur-ring,.cur-sun{position:absolute;border-radius:50%;transition:transform .55s var(--ease),opacity .4s var(--ease),border-color .3s,background-color .3s}
.cur-ring{left:-19px;top:-19px;width:38px;height:38px;border:1px solid rgba(28,26,23,.5)}
.cur.dk .cur-ring{border-color:rgba(255,255,255,.92);box-shadow:0 0 0 1px rgba(28,26,23,.1)}
.cur.dk .cur-dot{background:#fff}
.cur-sun{left:-46px;top:-46px;width:92px;height:92px;display:grid;place-items:center;color:#fff;font:400 24px/1 var(--serif);font-style:italic;letter-spacing:.01em;text-shadow:0 1px 8px rgba(122,56,24,.35);background:radial-gradient(circle at 50% 36%,#f8d3aa 0,#e59d6a 46%,#b8633b 100%);box-shadow:0 0 36px 6px rgba(236,152,96,.5),0 0 110px 34px rgba(236,152,96,.2);opacity:0;transform:scale(.3)}
.cur[data-s=view] .cur-ring{transform:scale(2.4);opacity:0}
.cur[data-s=view] .cur-sun{opacity:1;transform:none}
.cur[data-s=view] .cur-dot,.cur[data-s=text] .cur-dot{opacity:0}
.cur[data-s=link] .cur-ring{transform:scale(1.45);border-color:var(--copper);background:rgba(201,130,91,.14)}
.cur[data-s=text] .cur-ring{opacity:0}
.cur.dn .cur-ring{transform:scale(.78)}
.cur.dn .cur-sun{transform:scale(.9)}
.view{position:absolute;inset:0;z-index:1;width:100%;margin:0;padding:0;border:0;border-radius:16px;background:none;cursor:pointer}
.view:focus-visible{outline-offset:-4px}
html:not(.js) .view{display:none}
.glare{position:absolute;left:0;top:0;width:110%;aspect-ratio:1;margin:-55% 0 0 -55%;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,rgba(255,222,186,.55),rgba(255,190,140,.16) 55%,rgba(255,190,140,0));mix-blend-mode:soft-light;opacity:0;transition:opacity .6s var(--ease)}
.home.hot .glare{opacity:1}
.sol{position:relative;height:240vh;height:240svh;margin-top:clamp(72px,11vw,148px)}
.sol-pin{position:sticky;top:0;height:100vh;height:100svh;padding:var(--g) max(var(--g),16px)}
.sol-card{position:relative;height:100%;border-radius:var(--r);overflow:hidden;isolation:isolate;container-type:size;background:#3a2c2a;box-shadow:0 0 0 2px rgba(255,255,255,.4)}
.sol-ph,.sol-ph picture,.sol-ph img{position:absolute;inset:0;width:100%;height:100%}
.sol-ph img{object-fit:cover;object-position:42% 50%;transition:opacity .6s}
.sol-warm{transform:scale(1.06);transform-origin:40% 60%}
.sol-cool{opacity:0}
.sol-cool::after{content:"";position:absolute;inset:0;--y:calc(50cqh + .1054 * max(100cqh,55.78cqw));--k:#36496e;mix-blend-mode:soft-light;background:linear-gradient(gray calc(var(--y) - 24cqh),var(--k) calc(var(--y) - .15cqh),gray calc(var(--y) + .15cqh))}
@media (max-width:767.98px){.sol-cool::after{--y:calc(50cqh + .1054 * max(100cqh,182.8cqw));--k:#305980}}
.sol-glow{position:absolute;inset:0;background:radial-gradient(60% 38% at 78% 58%,rgba(255,196,130,.55),rgba(255,170,110,0) 70%);mix-blend-mode:soft-light;pointer-events:none}
.sol-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,20,.38) 0,rgba(14,12,20,0) 26%,rgba(14,12,20,0) 48%,rgba(12,10,16,.72) 100%);pointer-events:none}
.sol-copy{position:absolute;inset:auto 0 0;z-index:2;display:grid;gap:18px;padding:clamp(20px,4.4cqw,64px);color:#fff7ef}
.sol-copy .eyebrow{color:#ffd9bc;margin:0}
.sol-copy .h2{max-width:16ch;font-size:clamp(34px,min(5.4vw,7.2vh),76px);text-shadow:0 2px 30px rgba(20,12,10,.4)}
.sol-copy .h2 em{color:#ffe1c8}
.sol-copy p.sub{margin:0;color:rgba(255,244,234,.9);max-width:40ch}
.clock{position:absolute;z-index:2;top:clamp(20px,4cqw,56px);right:clamp(20px,4.4cqw,64px);text-align:right;color:#fff7ef;text-shadow:0 2px 24px rgba(20,12,10,.3)}
.clock b{display:block;font-weight:500;font-size:clamp(40px,8cqw,120px);line-height:.9;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.clock small{display:block;margin-top:10px;font:italic 400 19px/1.1 var(--serif);letter-spacing:0;opacity:.9}
.clock .t2{position:absolute;right:0;top:0;opacity:0}
@supports (animation-timeline:view()){
  @keyframes warmOut{to{transform:scale(1)}}
  @keyframes coolIn{to{opacity:1}}
  @keyframes glowOut{to{opacity:0}}
  @keyframes clockA{0%,55%{opacity:1}70%,100%{opacity:0}}
  @keyframes clockB{0%,55%{opacity:0}70%,100%{opacity:1}}
  html:not(.rm):not(.lite) .sol-warm{animation:warmOut linear both;animation-timeline:--sol;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .sol-cool{animation:coolIn linear both;animation-timeline:--sol;animation-range:contain 20% contain 85%}
  html:not(.rm):not(.lite) .sol-glow{animation:glowOut linear both;animation-timeline:--sol;animation-range:contain 10% contain 70%}
  html:not(.rm):not(.lite) .clock .t1{animation:clockA linear both;animation-timeline:--sol;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .clock .t2{animation:clockB linear both;animation-timeline:--sol;animation-range:contain 0% contain 100%}
  .sol{view-timeline:--sol block}
  @keyframes wordOn{from{color:#8d8278}}
  html:not(.rm):not(.lite) .mf-text .w{animation:wordOn linear both;animation-timeline:view();animation-range:cover 18% cover 42%}
}
@supports not (animation-timeline:view()){.sol{height:auto}.sol-pin{position:relative;height:min(100vh,860px)}.sol-warm,.sol-glow{display:none}.sol-cool{opacity:1}.clock .t1{opacity:0}.clock .t2{opacity:1}}
html.rm .sol,html.lite .sol{height:auto}
html.rm .sol-pin,html.lite .sol-pin{position:relative;height:min(100vh,860px)}
html.rm .sol-warm,html.lite .sol-warm,html.rm .sol-glow,html.lite .sol-glow{display:none}
html.rm .sol-cool,html.lite .sol-cool{opacity:1}
html.rm .clock .t1,html.lite .clock .t1{opacity:0}
html.rm .clock .t2,html.lite .clock .t2{opacity:1}
@media (max-width:767.98px){.sol-ph img{object-position:50% 50%}}
@media (max-width:639.98px){.clock b{font-size:56px}.sol-copy .h2{font-size:clamp(34px,10vw,44px)}.sol-glow{background:radial-gradient(80% 30% at 70% 50%,rgba(255,196,130,.5),rgba(255,170,110,0) 70%)}}
@media (orientation:landscape) and (max-height:539.98px){.sol-copy .sub{display:none}}
.mag{translate:var(--tx,0) var(--ty,0);transition:translate .6s var(--ease),background-color .3s var(--ease)}
.mag.on{transition:translate .15s linear,background-color .3s var(--ease)}
.mod{position:relative;height:330vh;height:330svh;margin-top:clamp(72px,11vw,148px);view-timeline:--mod block}
.mod-pin{position:sticky;top:0;height:100vh;height:100svh;padding:var(--g) max(var(--g),16px)}
.mod-card{position:relative;height:100%;border-radius:var(--r);overflow:hidden;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr) auto;
  background:#efe8df;background-image:linear-gradient(rgba(28,26,23,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(28,26,23,.045) 1px,transparent 1px),radial-gradient(90% 70% at 70% 55%,#f7f2ec 0,#ebe3d9 70%);
  background-size:28px 28px,28px 28px,100% 100%;box-shadow:0 0 0 1px rgba(28,26,23,.08)}
.mod-copy{position:relative;z-index:2;padding:clamp(20px,3.4vw,52px) clamp(20px,3.4vw,52px) 0}
.mod-copy .eyebrow{margin-bottom:12px}
.mod-copy .h2{font-size:clamp(32px,4.6vw,64px)}
.mod-steps{list-style:none;margin:18px 0 0;padding:0;display:grid}
.mod-steps li{grid-area:1/1;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:baseline;max-width:44ch}
.mod-steps b{min-width:1.3em;font:italic 400 30px/1 var(--serif);color:var(--copper-t)}
.mod-steps strong{display:block;font-weight:600;font-size:18px;letter-spacing:-.01em}
.mod-steps span{color:var(--ink2);font-size:16px;line-height:1.5}
.mod-bar{position:relative;height:2px;margin-top:22px;max-width:260px;background:rgba(28,26,23,.1);border-radius:2px;overflow:hidden}
.mod-bar i{position:absolute;inset:0;background:var(--copper);transform-origin:0 50%}
.mod-stage{position:relative;overflow:hidden;container-type:size;perspective:2800px;perspective-origin:50% 30%;min-height:0}
.m-rig{--u:min(calc(100cqw / 184),calc(100cqh / 146));position:absolute;left:50%;top:calc(50% + var(--u) * 22);width:0;height:0;transform-style:preserve-3d;transition:transform 1.2s var(--ease)}
.m-cam{position:absolute;left:calc(var(--u) * -65);top:calc(var(--u) * -46);width:calc(var(--u) * 130);height:calc(var(--u) * 92);transform-style:preserve-3d;transform:translateY(0) rotateX(57deg) rotateZ(-34deg) scale(1)}
.m-cam *{position:absolute;transform-style:preserve-3d}
.m-cam .f{transform-style:flat}
.m-plate{left:0;top:0;width:100%;height:100%;border-radius:calc(var(--u) * 3);overflow:hidden}
.m-plate svg{position:absolute;inset:0;width:100%;height:100%}
.m-lv{left:0;top:0;width:100%;height:100%}
.m-l1{translate:0 0 calc(var(--u) * 26)}
.m-rf{translate:0 0 calc(var(--u) * 57)}
.m-cam .top{background:#f3ece3}
.m-cam .l0 .top{background:#efe6da linear-gradient(90deg,rgba(201,130,91,0),rgba(255,190,130,.18))}
.m-cam .edge{background:#cdbfae}
.m-cam .edge.s{background:#d9ccbc}
.m-cam .wall{background:linear-gradient(180deg,#f6efe6,#e7dccd)}
.m-cam .wall.y{background:linear-gradient(180deg,#e2d5c4,#d2c3b0)}
.m-cam .glass{background:linear-gradient(180deg,rgba(255,232,200,.55),rgba(255,190,130,.62) 70%,rgba(255,170,110,.75));box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
  background-image:repeating-linear-gradient(90deg,rgba(60,44,32,.38) 0 1px,transparent 1px calc(var(--u) * 7)),linear-gradient(180deg,rgba(255,236,206,.5),rgba(255,184,124,.7))}
.m-cam .rf .top{background:#e4dbcf linear-gradient(135deg,#ece4d9,#d8cdbf)}
.m-cam .rf .edge{background:#bfb09e}
.m-cam .pool{background:linear-gradient(135deg,#9cc0cc,#5f8b9a);box-shadow:inset 0 0 0 calc(var(--u) * .8) #e9e0d4}
.m-cam .deck{background:repeating-linear-gradient(90deg,#c9ae8c 0 calc(var(--u) * 1.6),#bfa27e calc(var(--u) * 1.6) calc(var(--u) * 1.8))}
.m-cam .plan{background:var(--ink);opacity:.55}
.m-cam .lit{background:radial-gradient(closest-side,rgba(255,196,130,.55),rgba(255,196,130,0))}
.m-cam .shd{background:radial-gradient(closest-side,rgba(60,40,24,.28),rgba(60,40,24,0))}
.m-pin i.m-tree{border-radius:50%;box-shadow:none;background:radial-gradient(circle at 38% 32%,#b4b58e,#7d8259 55%,#5a5f3e 100%)}
.m-pin{width:0;height:0}
.m-pin i{--pz:max(20px,calc(var(--u) * 6.4));left:calc(var(--pz) * -.5);top:calc(var(--pz) * -.5);width:var(--pz);height:var(--pz);display:grid;place-items:center;border-radius:50%;background:var(--ink);color:#fff;
  font:600 max(11px,calc(var(--u) * 3.1))/1 var(--sans);font-style:normal;transform:rotateZ(34deg) rotateX(-57deg);box-shadow:0 0 0 max(2px,calc(var(--u) * .7)) rgba(255,255,255,.85)}
.m-pin.c i{background:var(--copper)}
.mod-key{position:relative;z-index:2;list-style:none;margin:0;padding:0 clamp(20px,3.4vw,52px) clamp(18px,3vw,40px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.mod-key li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink2);min-width:0}
.mod-key li i{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font:600 12px/1 var(--sans);font-style:normal}
.mod-key li.c i{background:var(--copper)}
.mod-tag{position:absolute;z-index:2;right:clamp(16px,2.4vw,32px);top:clamp(16px,2.4vw,32px);display:none;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid rgba(28,26,23,.08);font-size:13px;font-weight:600;color:var(--ink2)}
.mod-tag svg{color:var(--copper-t);font-size:16px}
@media (min-width:980px) and (min-height:600px){
  .mod-card{grid-template-columns:minmax(360px,.52fr) 1fr;grid-template-rows:1fr auto}
  .mod-copy .h2{font-size:clamp(34px,3.5vw,54px)}
  .mod-copy{grid-row:1;grid-column:1;align-self:center;padding-bottom:0}
  .mod-stage{grid-row:1/3;grid-column:2}
  .mod-key{grid-row:2;grid-column:1;grid-template-columns:1fr 1fr}
  .mod-steps strong{font-size:20px}
  .mod-steps span{font-size:17px}
  .mod-tag{display:inline-flex}
}
@media (max-width:979.98px){.mod-copy .h2{max-width:14ch}}
@media (max-width:639.98px){.m-rig{--u:min(calc(100cqw / 154),calc(100cqh / 140))}.mod-bar{margin-top:16px}.mod-copy .h2{font-size:clamp(30px,8.6vw,38px)}.mod-steps{margin-top:14px}.mod-steps span{font-size:15.5px}.mod-key{gap:6px 12px}.mod-key li{font-size:13.5px}.mod-steps b{font-size:26px}}
@media (max-height:700px) and (max-width:979.98px){.mod-key{display:none}}
@supports (animation-timeline:view()){
  @keyframes mCam{0%,18%{transform:translateY(calc(var(--u) * -20)) rotateX(0deg) rotateZ(0deg) scale(.92)}}
  @keyframes mRise{0%,30%{scale:1 1 .02}}
  @keyframes mUp1{0%,50%{translate:0 0 calc(var(--u) * 96)}}
  @keyframes mUpR{0%,58%{translate:0 0 calc(var(--u) * 140)}}
  @keyframes mF1{0%,50%{opacity:0}62%{opacity:1}}
  @keyframes mFR{0%,58%{opacity:0}70%{opacity:1}}
  @keyframes mPins{0%,72%{opacity:0}82%{opacity:1}}
  @keyframes mPlan{0%,24%{opacity:.55}36%,100%{opacity:0}}
  @keyframes mS1{0%,25%{opacity:1;transform:none}30%,100%{opacity:0;transform:translate3d(0,-10px,0)}}
  @keyframes mS2{0%,30%{opacity:0;transform:translate3d(0,10px,0)}35%,53%{opacity:1;transform:none}58%,100%{opacity:0;transform:translate3d(0,-10px,0)}}
  @keyframes mS3{0%,58%{opacity:0;transform:translate3d(0,10px,0)}63%,100%{opacity:1;transform:none}}
  @keyframes mBar{from{transform:scaleX(0)}}
  html:not(.rm):not(.lite) .mod .m-cam{animation:mCam linear both;animation-timeline:--mod;animation-range:contain 0% contain 46%}
  html:not(.rm):not(.lite) .mod .l0 .wall,html:not(.rm):not(.lite) .mod .l0 .glass{animation:mRise linear both;animation-timeline:--mod;animation-range:contain 0% contain 52%}
  html:not(.rm):not(.lite) .mod .m-l1{animation:mUp1 linear both;animation-timeline:--mod;animation-range:contain 0% contain 82%}
  html:not(.rm):not(.lite) .mod .m-rf{animation:mUpR linear both;animation-timeline:--mod;animation-range:contain 0% contain 92%}
  html:not(.rm):not(.lite) .mod .m-l1 .f{animation:mF1 linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod .m-rf .f{animation:mFR linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod .m-pin i{animation:mPins linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod .plan{animation:mPlan linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod-steps li:nth-child(1){animation:mS1 linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod-steps li:nth-child(2){animation:mS2 linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod-steps li:nth-child(3){animation:mS3 linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod-bar i{animation:mBar linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
}
html.rm .mod-steps,html.lite .mod-steps{gap:12px}
@supports not (animation-timeline:view()){.mod{height:auto}.mod-pin{position:relative;height:auto}.mod-card{min-height:min(calc(100vh - 2 * var(--g)),860px)}.mod-stage{height:min(110vw,440px)}.mod-steps li{grid-area:auto}.mod-bar{display:none}}
html.rm .mod,html.lite .mod{height:auto}
html.rm .mod-pin,html.lite .mod-pin{position:relative;height:auto}
html.rm .mod-card,html.lite .mod-card{min-height:min(calc(100vh - 2 * var(--g)),860px)}
html.rm .mod-stage,html.lite .mod-stage{height:min(110vw,440px)}
html.rm .mod-key,html.lite .mod-key{display:grid;padding-top:24px}
@media (min-width:980px) and (min-height:600px){html.rm .mod-stage,html.lite .mod-stage{height:min(calc(100vh - 2 * var(--g)),860px)}}
@supports not (animation-timeline:view()){@media (min-width:980px) and (min-height:600px){.mod-stage{height:min(calc(100vh - 2 * var(--g)),860px)}}}
html.rm .mod-steps li,html.lite .mod-steps li{grid-area:auto}
html.rm .mod-bar,html.lite .mod-bar{display:none}
html.rm .m-cam .plan,html.lite .m-cam .plan{opacity:0}
@supports not (animation-timeline:view()){.m-cam .plan{opacity:0}}
.tag{position:absolute;left:10px;bottom:10px;margin:0;padding:6px 11px;border-radius:999px;background:rgba(28,26,23,.62);color:#fff;font-size:12.5px;font-weight:500;letter-spacing:.01em}
.peek{position:absolute;right:10px;bottom:10px;margin:0;display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.9);color:var(--ink);font-size:12.5px;font-weight:600;pointer-events:none}
.peek svg{font-size:14px}
@media (hover:none),(pointer:coarse){.peek{display:none}}
@media (hover:hover) and (pointer:fine){.peek{opacity:0;translate:0 8px;transition:opacity .45s var(--ease),translate .6s var(--ease)}.home:hover .peek,.home:focus-within .peek{opacity:1;translate:none}}
.home-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.home-top .n{font:italic 400 22px/1 var(--serif);color:var(--copper-t)}
.specs{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--muted);font-size:14px}
.specs li{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.specs svg{font-size:16px;color:var(--ink2)}
.more-link{display:inline-flex;align-items:center;min-height:44px;margin-left:auto;padding:0 2px;white-space:nowrap;flex:none;border:0;background:none;font-weight:600;font-size:14.5px;color:var(--ink);cursor:pointer;position:relative}
.more-link::before,.more-link::after{content:"";position:absolute;left:0;right:0;bottom:11px;height:1px;background:currentColor;opacity:.22}
.more-link::after{opacity:1;transform-origin:100% 50%;transform:scaleX(0);transition:transform .5s var(--ease)}
.more-link:hover::after,.more-link:focus-visible::after{transform:none;transform-origin:0 50%}
.price-row .price{order:-1}
.home .price-row{gap:14px}
@media (min-width:1200px) and (min-height:805px),(min-width:1100px) and (orientation:portrait){.home .price{font-size:22px}}
.rail-ui{display:flex;align-items:center;gap:14px;width:calc(100% - 32px);margin:18px auto 0;font-size:14px;color:var(--muted)}
.rail-ui .trk{position:relative;flex:1;height:2px;border-radius:2px;background:var(--line);overflow:hidden}
.rail-ui .trk i{position:absolute;inset:0;background:var(--ink);transform-origin:0 50%;transform:scaleX(.25)}
@media (min-width:768px){.rail-ui{display:none}}
#residencias{timeline-scope:--rail}
.rail{scroll-timeline:--rail inline}
@supports (animation-timeline:scroll()){@keyframes trk{from{transform:scaleX(.25)}to{transform:scaleX(1)}}.rail-ui .trk i{animation:trk linear both;animation-timeline:--rail}}
.ficha .ficha-more{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font-weight:600;font-size:14.5px;text-decoration:none;border:0;background:none;padding:0;cursor:pointer;color:var(--ink);position:relative}
.ficha .ficha-more::after{content:"";position:absolute;left:0;right:0;bottom:11px;height:1px;background:currentColor;opacity:.35}
.close-card{padding-bottom:clamp(24px,3vw,40px)}
.close-lede{display:flex;flex-wrap:wrap;gap:10px 22px;margin:26px 0 0;padding:0;list-style:none;color:#d9cfc4;font-size:15px}
.close-lede li{display:inline-flex;align-items:center;gap:9px}
.close-lede li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--copper)}
.slots{border:0;margin:0;padding:0;display:grid;gap:8px}
.slots legend{padding:0;margin-bottom:6px;font-size:13px;font-weight:500;color:#d9cfc4;letter-spacing:.02em}
.slot-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.slot{position:relative;display:grid}
.slot input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.slot span{position:relative;display:grid;align-content:center;gap:2px;min-height:64px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.22);font-size:14px;font-weight:500;line-height:1.25;color:#efe6dc;transition:background-color .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease)}
.slot small{font-size:12.5px;font-weight:400;color:#b7aca1;transition:color .35s var(--ease)}
.slot input:checked+span small{color:#6b6157}
.slot span i{position:absolute;right:12px;bottom:15px;width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.3);transition:background-color .35s var(--ease),box-shadow .35s var(--ease)}
.slot input:checked+span{background:#f3eee8;border-color:#f3eee8;color:var(--ink)}
.slot input:checked+span i{background:var(--copper);box-shadow:0 0 0 4px rgba(201,130,91,.25)}
.slot input:focus-visible+span{outline:2px solid var(--copper);outline-offset:3px}
.slot:hover span{border-color:rgba(255,255,255,.5)}
.form{container-type:inline-size}
@container (max-width:359.98px){.row2,.slot-row{grid-template-columns:1fr}.slot span{display:flex;align-items:center;min-height:48px;padding:0 16px;font-size:15px}.slot small{margin-left:auto;padding-right:22px}.slot span i{bottom:auto;top:50%;margin-top:-3.5px;right:16px}}
@container (max-width:279.98px){.form .btn-dm{font-size:14px;gap:7px}}
@media (max-width:479.98px){.form{padding:0;border:0;background:none}}
.btn-dm{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:52px;border-radius:12px;border:1px solid rgba(255,255,255,.26);background:none;color:#f3eee8;font-weight:500;font-size:15px;cursor:pointer;transition:background-color .3s var(--ease),border-color .3s var(--ease)}
.btn-dm:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}
.btn-dm svg{font-size:18px}
.horizon{position:relative;margin:calc(clamp(40px,6vw,88px) - 12cqi) calc(clamp(20px,6vw,88px) * -1) 0;padding-top:12cqi;overflow:hidden;contain:paint;pointer-events:none}
.horizon .word{position:relative;z-index:1;margin:0}
.hz-sun{position:absolute;left:50%;bottom:0;width:min(34cqi,420px);aspect-ratio:1;margin-left:max(-17cqi,-210px);border-radius:50%;pointer-events:none;transform:translate3d(0,40%,0);
  background:radial-gradient(closest-side,rgba(255,214,172,.92) 0,rgba(240,160,108,.8) 44%,rgba(201,130,91,.3) 47%,rgba(201,130,91,.1) 70%,rgba(201,130,91,0) 96%)}
.horizon::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;z-index:2;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(233,199,174,.55),rgba(255,255,255,0))}
@supports (animation-timeline:view()){
  @keyframes hzSet{from{transform:translate3d(0,4%,0)}to{transform:translate3d(0,62%,0)}}
  html:not(.rm):not(.lite) .hz-sun{animation:hzSet linear both;animation-timeline:view();animation-range:entry 30% cover 75%}
}
.word{background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.04) 88%);-webkit-background-clip:text;background-clip:text}
.foot{align-items:flex-start;margin-top:0}
.foot-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px;flex:1 1 520px}
@media (min-width:780px){.foot-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.foot h4{margin:0 0 6px;font:italic 400 19px/1.2 var(--serif);letter-spacing:0;color:#c9a88f}
.foot-cols ul{display:grid;gap:0}
.foot-brand{flex:0 1 300px;display:grid;gap:12px}
.foot-brand p{margin:0;color:#b7aca1;font-size:14.5px;line-height:1.5;max-width:34ch}
@media (max-width:1099.98px){.foot-brand p{font-size:15px}}
.foot .legal{margin-top:8px;color:#9e9286}
.foot .legal,.form .demo{font-size:13px;line-height:1.6}
@media (max-width:767.98px){.foot .legal,.form .demo{font-size:14px}}
/* v3 · editorial pass */
.close-card.lit{background-image:url(img/close-glow.webp)}
.home .chip{left:12px;top:12px}
.home .price-row{border-top-color:rgba(28,26,23,.16)}
.home-top .n{font-size:24px}
.home-img .glare{z-index:0}
@media (min-width:768px){
  .rail .price-row{margin-top:16px}
  .home-img picture{position:absolute;left:0;right:0;top:-9%;bottom:-9%;display:block}
  .home:hover .home-img img{transform:scale(1.04)}
}
@supports (animation-timeline:view()){
  @keyframes hPar{from{transform:translate3d(0,-7%,0)}to{transform:translate3d(0,7%,0)}}
  @media (min-width:768px){html:not(.rm):not(.lite) .home-img picture{animation:hPar linear both;animation-timeline:view();animation-range:cover 0% cover 100%}}
  @keyframes sunArc{from{transform:rotate(-74deg)}to{transform:rotate(74deg)}}
  @keyframes skyIn{0%,6%{opacity:0}16%,100%{opacity:1}}
  html:not(.rm):not(.lite) .mod .m-sunr{animation:sunArc linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
  html:not(.rm):not(.lite) .mod .m-sky{animation:skyIn linear both;animation-timeline:--mod;animation-range:contain 0% contain 100%}
}
.m-sky{position:absolute;z-index:1;left:clamp(14px,3cqw,40px);top:clamp(14px,3cqh,36px);width:clamp(120px,18cqw,190px);aspect-ratio:120/72;pointer-events:none;color:var(--copper-t);container-type:inline-size}
.m-sky svg{position:absolute;left:0;top:0;width:100%;height:auto;overflow:visible;fill:none;stroke:currentColor;stroke-width:.8;stroke-dasharray:1.5 2.5;opacity:.55}
.m-sky svg .hz{stroke-dasharray:none;opacity:.6}
.m-sunr{position:absolute;left:50%;top:80.5%;width:0;height:0;transform:rotate(74deg)}
.m-sunr b{position:absolute;left:-7px;top:-43.33cqw;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#ffe3c4,#e79a63 60%,#c46f43);box-shadow:0 0 0 4px rgba(231,154,99,.18),0 0 24px 6px rgba(231,154,99,.35)}
.m-sky span{position:absolute;top:84%;font-size:12.5px;font-weight:500;color:var(--ink2);white-space:nowrap}
.m-o{left:0;transform:translateX(-20%)}.m-p{right:0;transform:translateX(20%)}
@media (max-width:639.98px){.m-sky{display:none}}
.sum{margin:2px 0 0;padding:12px 14px;border-radius:12px;border:1px dashed rgba(233,199,174,.32);color:#e9dccd;font:italic 400 18px/1.35 var(--serif);text-wrap:pretty}
.field input,.field select{transition:border-color .35s var(--ease),background-color .35s var(--ease)}
.field input:hover,.field select:hover{border-color:rgba(255,255,255,.4)}
.totop{display:inline-flex;align-items:center;gap:8px;min-height:44px;width:max-content;font-weight:500;color:#f3eee8!important}
.totop svg{font-size:15px;transition:transform .45s var(--ease)}
.totop:hover svg{transform:translateY(-3px)}
