/* Dor Estates design system. Tokens, rhythm and components come from the /invest page:
   dark hero, white sheet, dark band, white. --ob and --oc keep small orange text at WCAG AA. */
@font-face{font-family:'Heebo';src:url('/fonts/heebo-hebrew.woff2') format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:'Heebo';src:url('/fonts/heebo-latin.woff2') format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
[hidden]{display:none!important}
:root{
  --o:#FF6600;--od:#e05500;--oh:#ff8c38;--ol:rgba(255,102,0,.1);--ob:#c94a00;--oc:#b84300;--slider:#ff7600;
  --dark:#0e0e0e;--dark2:#181818;--dark3:#222;--cream:#faf8f5;--white:#fff;--t:#111;--tm:#333;--ts:#666;
  --bdr:rgba(0,0,0,.08);--bdr2:rgba(255,255,255,.1);
  --sh:0 4px 30px rgba(0,0,0,.10);--shl:0 16px 60px rgba(0,0,0,.18);
  --r:16px;--rs:8px;--ease:cubic-bezier(.4,0,.2,1);
  --font:'Heebo',system-ui,'Segoe UI',Arial,sans-serif;
  --gut-s:max(16px,env(safe-area-inset-left,0px));--gut-e:max(16px,env(safe-area-inset-right,0px));
  --nav-h:60px;--gap:36px;
  --glow:radial-gradient(circle at 92% 0%,rgba(255,102,0,.14) 0%,transparent 42%);
  --grad:linear-gradient(90deg,var(--o),#ffb347);
}
@media(min-width:900px){:root{--gut-s:max(1.5rem,env(safe-area-inset-left,0px));--gut-e:max(1.5rem,env(safe-area-inset-right,0px));--gap:52px;--nav-h:62px}}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px);-webkit-text-size-adjust:100%;scrollbar-color:var(--slider) transparent;scrollbar-width:thin}
::-webkit-scrollbar{width:8px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--slider);border-radius:6px}
body{font-family:var(--font);background:var(--white);color:var(--t);overflow-x:clip;-webkit-font-smoothing:antialiased;line-height:1.45}
img,video{max-width:100%;display:block}
ul,ol{list-style:none}
a{color:inherit}
h1,h2,h3{text-wrap:balance}
.num{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.numtext{unicode-bidi:plaintext}
.ic{width:1em;height:1em;display:inline-block;vertical-align:-.125em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:3px solid var(--o);outline-offset:3px}
.skip{position:absolute;inset-inline-start:1rem;top:-100px;z-index:500;background:var(--o);color:#111;font-weight:800;padding:.6rem 1rem;border-radius:var(--rs)}
.skip:focus{top:.6rem}
.hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}


/* USP ticker */
.ticker{position:relative;margin-top:calc(var(--nav-h) + env(safe-area-inset-top,0px));overflow:hidden;direction:ltr;background:var(--dark);border-bottom:1px solid var(--bdr2)}
.ticker-track{display:flex;width:max-content;animation:tick 60s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-track>span{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1.1rem;font-size:.74rem;font-weight:600;color:rgba(255,255,255,.76);white-space:nowrap}
.ticker-track>span::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--o)}
.ticker-track .numtext{color:var(--oh);font-weight:800}
@keyframes tick{to{transform:translateX(-50%)}}

/* Buttons */
.btn-main{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--ob);color:#fff;text-decoration:none;font-family:inherit;font-size:1rem;font-weight:800;padding:.8rem 1.8rem;border-radius:50px;min-height:50px;border:0;cursor:pointer;box-shadow:0 8px 24px rgba(255,102,0,.3);position:relative;overflow:hidden;transition:all .25s var(--ease)}
.btn-main::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.14) 0%,transparent 60%);pointer-events:none}
.btn-main:hover{background:var(--oc);transform:translateY(-2px);box-shadow:0 12px 30px rgba(255,102,0,.4)}
.btn-ghost{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.92);font-size:.92rem;font-weight:600;padding:.7rem 1.4rem;border-radius:50px;min-height:50px;text-decoration:none;transition:background .25s var(--ease)}
.btn-ghost:hover{background:rgba(255,255,255,.18)}

/* Hero */
.hero{position:relative;background:var(--dark);color:#fff;overflow:hidden;padding:24px var(--gut-e) 44px var(--gut-s)}
.hero::before{content:'';position:absolute;inset:0;background:var(--glow);pointer-events:none}
.hero-grid{position:relative;z-index:1;display:grid;gap:1rem;max-width:1100px;margin:0 auto}
.hero-content{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}
.hero-h1{font-size:clamp(1.95rem,8.8vw,2.5rem);font-weight:900;line-height:1.08;letter-spacing:-.03em;margin-bottom:.55rem}
.hero-h1 .hi{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{font-size:clamp(.94rem,2.2vw,1.1rem);color:rgba(255,255,255,.84);line-height:1.5;max-width:560px;margin-bottom:.9rem}
.hero-ctas{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center;width:100%}
.hero-ctas .btn-main{flex:1 1 100%}
.hero-ctas .btn-ghost{display:none}
.hero-price{font-size:1.4rem;font-weight:900;margin-bottom:.8rem}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%}
.stat{position:relative;background:rgba(255,255,255,.06);border:1.5px solid var(--bdr2);border-radius:14px;padding:.7rem .5rem;text-align:center}
.stat b{display:block;font-size:clamp(1.35rem,6.2vw,1.9rem);font-weight:900;line-height:1.1;letter-spacing:-.03em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{display:block;font-size:.74rem;font-weight:500;color:rgba(255,255,255,.68);margin-top:.1rem}
@media(min-width:601px){.hero-ctas .btn-main{flex:0 1 auto}.hero-ctas .btn-ghost{display:inline-flex}}
@media(min-width:900px){
  .hero{padding-block:48px 64px}
  .hero-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:center;column-gap:clamp(2rem,5vw,4rem)}
  .hero-grid:not(.hero-grid--solo) .hero-content{align-items:flex-start;text-align:start}
  .hero-grid:not(.hero-grid--solo) .hero-ctas{justify-content:flex-start}
  .hero-grid--solo{grid-template-columns:minmax(0,760px);justify-content:center}
  .hero-h1{font-size:clamp(2.2rem,4.1vw,3.5rem)}
}

/* Bands */
.band{position:relative;padding:var(--gap) var(--gut-e);overflow:clip}
.band--white{background:var(--white)}
.band--cream{background:var(--cream)}
.band--dark{background:var(--dark);color:#fff}
.band--dark::before{content:'';position:absolute;inset:0;background:var(--glow);pointer-events:none}
.hero+.band{border-radius:24px 24px 0 0;margin-top:-22px;z-index:1}
@media(min-width:900px){.hero+.band{border-radius:0;margin-top:0}}
.band--tight{padding-block:24px 30px}
.container{position:relative;max-width:980px;margin:0 auto}
.sec-head{text-align:center;margin-bottom:1rem}
.sec-tag{display:inline-flex;align-items:center;gap:.5rem;color:var(--oc);font-size:.74rem;font-weight:800;letter-spacing:.08em;margin-bottom:.3rem}
.band--dark .sec-tag{color:var(--oh)}
.sec-title{font-size:clamp(1.5rem,4vw,2.4rem);font-weight:800;line-height:1.15;letter-spacing:-.025em;text-align:center}
.sec-title .hi{color:var(--od)}
.band--dark .sec-title .hi{color:var(--o)}
.sec-body{font-size:.98rem;color:var(--tm);line-height:1.6;max-width:640px;margin:.5rem auto 0;text-align:center}
.band--dark .sec-body{color:rgba(255,255,255,.84)}
.fine{font-size:.74rem;color:rgba(255,255,255,.66);text-align:center;margin-top:.6rem}
.lead-card{max-width:640px;margin:0 auto;font-size:1rem;font-weight:500;line-height:1.55;text-align:center;color:var(--tm)}
mark[data-placeholder]{background:#fff3b0;color:#5a4300;padding:.1rem .35rem;border-radius:4px;font-size:.88em;font-weight:600}

/* Selection bar */
.tabs{display:flex;gap:4px;width:100%;max-width:540px;margin:0 auto 1.1rem;padding:4px;background:#f1ece5;border-radius:14px}
.tabs a{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.5rem;border-radius:10px;font-size:.88rem;font-weight:800;color:var(--ts);text-decoration:none;white-space:nowrap;transition:background .22s var(--ease),color .22s var(--ease),box-shadow .22s var(--ease)}
.tabs a .ic{opacity:.8}
.tabs a:hover{color:var(--t)}
.tabs [aria-current=true]{background:#fff;color:var(--t);box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 16px rgba(0,0,0,.08)}
.tabs [aria-current=true] .ic{color:var(--o);opacity:1}
.band--dark .tabs{background:rgba(255,255,255,.1)}
.band--dark .tabs a{color:rgba(255,255,255,.72)}
.band--dark .tabs [aria-current=true]{color:var(--t)}
.tab-panel{display:none}
.tab-panel--default{display:block}
.tabset[data-ready] .tab-panel{display:none}
.tabset[data-ready] .tab-panel.on{display:block;animation:fadeUp .35s var(--ease)}
.tabset:not([data-ready]):has(.tab-panel:target) .tab-panel--default{display:none}
.tabset:not([data-ready]) .tab-panel:target{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Numbered steps */
.steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.2rem;background:var(--cream);border:1px solid var(--bdr);border-radius:var(--r);padding:.9rem .7rem;min-width:0;color:var(--t);transition:all .28s var(--ease)}
.step:hover{box-shadow:var(--shl);transform:translateY(-3px);border-color:rgba(255,102,0,.25)}
.step:nth-child(odd):last-child{grid-column:1/-1}
.step-n{width:40px;height:40px;border-radius:50%;background:var(--o);color:#111;font-size:.95rem;font-weight:900;display:flex;align-items:center;justify-content:center;margin-bottom:.3rem;box-shadow:0 4px 16px rgba(255,102,0,.4)}
.step b{font-size:.95rem;font-weight:800;line-height:1.2}
.step>span:last-child:not(.step-n){font-size:.8rem;color:var(--ts);line-height:1.45}
.band--dark .step{background:rgba(255,255,255,.06);border-color:var(--bdr2);color:#fff}
.band--dark .step>span:last-child:not(.step-n){color:rgba(255,255,255,.72)}
@media(min-width:900px){.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.step:nth-child(odd):last-child{grid-column:auto}.step:nth-child(3n+1):last-child{grid-column:2}}

/* Feature cards */
.feats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.feat{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.15rem;background:var(--cream);border:1.5px solid var(--bdr);border-radius:var(--r);padding:.85rem .7rem;min-width:0;color:var(--t);text-decoration:none;transition:all .3s var(--ease)}
.feat:hover{border-color:rgba(255,102,0,.3);transform:translateY(-3px);box-shadow:0 12px 36px rgba(0,0,0,.09)}
.feat .ic{font-size:1.35rem;color:var(--o);margin-bottom:.15rem}
.feat b{font-size:.92rem;font-weight:800;line-height:1.2}
.feat span{font-size:.78rem;color:var(--ts);line-height:1.4}
.band--dark .feat{background:rgba(255,255,255,.06);border-color:var(--bdr2);color:#fff}
.band--dark .feat span{color:rgba(255,255,255,.72)}
.feat:nth-child(odd):last-child{grid-column:1/-1}
@media(min-width:900px){.feats{grid-template-columns:repeat(4,minmax(0,1fr))}.feat:nth-child(odd):last-child{grid-column:auto}.feats--three{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* portfolio playground */
.pg{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:2.8rem;align-items:center;max-width:860px;margin:0 auto}
.pg-wheel{position:relative;width:100%;max-width:340px;aspect-ratio:1;margin-inline:auto}
.pg-svg{width:100%;height:100%;display:block;overflow:visible}
.pg-track{fill:none;stroke:#efe9e1;stroke-width:6}
.pg-prog{fill:none;stroke:var(--o);stroke-width:6;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transform-box:view-box;transform-origin:220px 220px;transform:rotate(-90deg);transition:stroke-dashoffset .5s var(--ease),opacity .2s}
.pg-prog.zero{opacity:0}
.pg-prog.snap{transition:none}
.pg-trav{transform-box:view-box;transform-origin:220px 220px;transition:transform .5s var(--ease)}
.pg-trav.snap{transition:none}
.pg-trav-halo{fill:rgba(255,102,0,.22)}
.pg-trav-dot{fill:var(--o)}
.pg-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}
.pg-center b{font-size:clamp(2.8rem,11vw,3.6rem);font-weight:900;line-height:1;color:var(--t);font-variant-numeric:tabular-nums}
.pg-center b.pop{animation:pgPop .55s cubic-bezier(.34,1.56,.64,1)}
.pg-center span{font-size:.82rem;font-weight:700;color:var(--ts);margin-top:.35rem}
@keyframes pgPop{0%{transform:scale(1)}40%{transform:scale(1.35);color:var(--o)}100%{transform:scale(1)}}
.pg-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:2;width:54px;height:54px;border-radius:50%;background:#fff;border:2.5px solid var(--o);color:var(--o);font-family:inherit;font-size:1.2rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s,color .25s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;-webkit-tap-highlight-color:transparent}
.pg-node.done{background:#fff3ea}
.pg-node.on{background:var(--o);color:#fff;transform:translate(-50%,-50%) scale(1.14);box-shadow:0 8px 24px rgba(255,102,0,.45)}
.pg-node.cue::after{content:'';position:absolute;inset:-7px;border-radius:inherit;border:2px solid var(--o);animation:pgCue 1.4s ease-out infinite;pointer-events:none}
@keyframes pgCue{from{transform:scale(.92);opacity:.9}to{transform:scale(1.4);opacity:0}}
.pg-next.cue{animation:pgNudge 1.6s ease-out infinite}
@keyframes pgNudge{0%{box-shadow:0 0 0 0 rgba(255,102,0,.45)}70%,100%{box-shadow:0 0 0 12px rgba(255,102,0,0)}}
.pg-hint{position:absolute;left:86.36%;top:calc(50% + 40px);transform:translateX(-50%);z-index:3;background:var(--t);color:#fff;font-size:.72rem;font-weight:800;padding:.22rem .6rem;border-radius:50px;white-space:nowrap;pointer-events:none;animation:pgBob 1.2s ease-in-out infinite;transition:opacity .3s}
.pg-hint::before{content:'';position:absolute;top:-5px;left:50%;margin-left:-5px;border:5px solid transparent;border-top:0;border-bottom-color:var(--t)}
.pg-hint.off{opacity:0;animation:none}
@keyframes pgBob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-5px)}}
.pg-side{display:flex;flex-direction:column;align-items:stretch;min-width:0;width:100%;max-width:400px;margin-inline:auto}
.pg-street{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:14px;height:132px;padding:0 10px;border-bottom:2px solid #e6dfd5;background:linear-gradient(to top,rgba(255,102,0,.07),transparent 70%);border-radius:16px 16px 0 0}
.pg-b{position:relative;width:46px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}
.pg-b.slot{visibility:hidden}
.pg-b.appear{animation:pgAppear .45s cubic-bezier(.34,1.56,.64,1)}
@keyframes pgAppear{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
.pg-b svg{width:46px;height:auto;display:block;transform-origin:50% 100%;transform:scaleY(0);opacity:0;transition:transform .75s cubic-bezier(.34,1.45,.64,1),opacity .2s,filter .4s}
.pg-b.built svg{transform:scaleY(1);opacity:1}
.pg-body{fill:#1b1b1b;stroke:var(--o);stroke-width:1.5}
.pg-roof{fill:var(--o)}
.pg-w{fill:#3a3a3a;transition:fill .35s;transition-delay:calc(var(--i) * 55ms)}
.pg-door{fill:#3a3a3a}
.pg-b.lit .pg-w{fill:#ffb347}
.pg-b.valued svg{filter:drop-shadow(0 0 9px rgba(255,102,0,.7))}
.pg-plot{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:46px;height:30px;border:2px dashed rgba(255,102,0,.6);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--o);font-weight:900;font-size:1.15rem;line-height:1;transition:opacity .3s}
.pg-b.built .pg-plot{opacity:0}
.pg-tag{position:absolute;left:50%;transform:translate(-50%,6px);white-space:nowrap;font-size:.66rem;font-weight:800;background:var(--o);color:#fff;padding:.14rem .5rem;border-radius:50px;opacity:0;transition:opacity .25s,transform .3s var(--ease);z-index:2}
.pg-tag.show{opacity:1;transform:translate(-50%,0)}
.pg-coin{position:absolute;left:0;top:0;z-index:4;pointer-events:none}
.pg-coin i{display:flex;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;align-items:center;justify-content:center;font-style:normal;font-size:.74rem;font-weight:900;color:#fff;background:radial-gradient(circle at 35% 30%,#ffd08a,var(--o) 70%);box-shadow:0 4px 14px rgba(255,102,0,.55);animation:pgBobY 1.1s ease-in-out infinite}
@keyframes pgBobY{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.pg-spark{position:absolute;width:6px;height:6px;border-radius:2px;background:var(--o);pointer-events:none;animation:pgSpark .8s ease-out forwards}
.pg-spark:nth-child(3n){background:#ffb347}
@keyframes pgSpark{to{transform:translate(var(--dx),var(--dy)) rotate(var(--r));opacity:0}}
.pg-plus{position:absolute;z-index:3;font-size:.86rem;font-weight:900;color:var(--o);white-space:nowrap;pointer-events:none;animation:pgPlus 1.2s ease-out forwards}
@keyframes pgPlus{0%{opacity:0;transform:translate(-50%,8px)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-30px)}}
.pg-card{margin-top:1rem;background:var(--cream);border:1.5px solid var(--bdr);border-radius:16px;padding:.95rem 1.15rem;min-height:106px}
.pg-meta{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:800;color:var(--o);letter-spacing:.04em;margin-bottom:.35rem}
.pg-dots{display:flex;gap:4px}
.pg-dots i{width:18px;height:4px;border-radius:2px;background:#e8e1d8;transition:background .3s}
.pg-dots i.on{background:var(--o)}
.pg-title{display:block;font-size:1.08rem;font-weight:900;margin-bottom:.2rem}
.pg-text{font-size:.88rem;color:var(--tm);line-height:1.55}
.pg-card.swap .pg-title,.pg-card.swap .pg-text{animation:fadeUp .35s var(--ease)}
.pg-next{position:relative;margin-top:.85rem;display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:52px;border-radius:50px;border:2px solid var(--o);background:#fff;color:var(--o);font-family:inherit;font-size:1rem;font-weight:900;cursor:pointer;transition:background .2s,color .2s,transform .15s;-webkit-tap-highlight-color:transparent}
.pg-next:hover{background:var(--o);color:#fff}
.pg-next:active{transform:scale(.97)}
.pg-final{text-align:center;margin-top:1rem;animation:fadeUp .5s var(--ease)}
.pg-final b{display:block;font-size:1.3rem;font-weight:900}
.pg-final p{font-size:.9rem;color:var(--tm);margin:.25rem 0 .9rem}
.pg-final .btn-main{width:100%}
.pg-final .linkbtn{display:inline-block;margin-top:.75rem;font-size:.82rem;min-height:44px}
@media(max-width:900px){.pg{grid-template-columns:1fr;gap:1.4rem}.pg-wheel{max-width:min(76vw,290px)}}
.linkbtn{font:inherit;color:var(--tm);background:none;border:none;padding:0;text-decoration:underline;cursor:pointer;font-size:.78rem}

/* Carousels */
.rail{display:flex;gap:.65rem;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gut-s)) calc(-1 * var(--gut-e));padding:.2rem var(--gut-s) .3rem var(--gut-e);scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail>li{flex:0 0 min(70vw,260px);scroll-snap-align:center}
.rail-progress{height:3px;max-width:120px;margin:.55rem auto 0;background:rgba(127,127,127,.2);border-radius:3px;overflow:hidden}
.rail-progress i{display:block;height:100%;width:30%;background:var(--slider);border-radius:3px}
@media(min-width:900px){.rail--center{justify-content:center;margin-inline:0;padding-inline:0}.rail--center>li{flex-basis:300px}}

/* Opportunity cards: the photo carries the card */
.ocard{position:relative;display:block;aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--dark3);color:#fff;text-decoration:none;box-shadow:var(--sh)}
.ocard img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.ocard:hover img{transform:scale(1.05)}
.ocard::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(10,10,12,.86) 0%,rgba(10,10,12,.32) 38%,transparent 62%)}
.ocard-text{position:absolute;inset:auto 0 0;z-index:1;padding:.9rem;text-align:center}
.ocard-text b{display:block;font-size:1.2rem;font-weight:900;letter-spacing:-.02em}
.ocard-text span{display:block;font-size:.78rem;font-weight:500;color:rgba(255,255,255,.84)}

/* Live deal */
.deal{display:grid;overflow:hidden;background:var(--white);border:1px solid var(--bdr);border-radius:18px;box-shadow:var(--sh);color:var(--t);text-decoration:none;max-width:760px;margin:0 auto}
.deal img{width:100%;height:190px;object-fit:cover}
.deal-body{padding:.9rem 1rem 1rem;text-align:center}
.deal-body h3{font-size:1.3rem;font-weight:900;letter-spacing:-.02em}
.deal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin:.6rem 0 .75rem}
.deal-grid div{background:var(--cream);border-radius:10px;padding:.45rem .25rem}
.deal-grid b{display:block;font-size:1rem;font-weight:900;color:var(--oc)}
.deal-grid span{display:block;font-size:.68rem;color:var(--ts);line-height:1.2}
@media(min-width:760px){.deal{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.deal img{height:100%}}

/* Modules */
.tickets{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.tickets>div{background:rgba(255,255,255,.06);border:1.5px solid var(--bdr2);border-radius:14px;padding:.7rem;text-align:center}
.tickets dt{font-weight:800;color:var(--oh);font-size:.76rem}
.tickets dd{font-size:.82rem;line-height:1.35}
.worlds{display:grid;gap:.5rem;max-width:520px;margin:0 auto}
.world-row{display:flex;flex-direction:column;align-items:center;gap:.05rem;padding:.65rem .9rem;background:var(--cream);border:1.5px solid var(--bdr);border-radius:14px;color:var(--t);text-align:center;text-decoration:none;transition:all .25s var(--ease)}
.world-row:hover{border-color:rgba(255,102,0,.3);transform:translateY(-2px)}
.world-row b{font-weight:900}
.world-row span{font-size:.8rem;color:var(--ts)}
.pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}
.pills li{padding:.3rem .8rem;background:var(--cream);border:1px solid var(--bdr);border-radius:50px;font-size:.78rem;font-weight:700;color:var(--tm)}
.socials,.link-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem}
.socials a,.form-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1rem;border-radius:50px;border:1.5px solid rgba(0,0,0,.14);background:var(--white);color:var(--t);font-size:.84rem;font-weight:700;text-decoration:none}
.form-link--dark{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:#fff}
.form-note{display:flex;justify-content:center;margin-top:.45rem}
.office{display:grid;gap:.4rem;text-align:center;max-width:560px;margin:0 auto}
.office address{font-style:normal;font-weight:800}
.office p{color:var(--tm);font-size:.9rem}
.door-mail{display:flex;align-items:center;justify-content:center;min-height:36px;color:var(--oc);font-size:clamp(.62rem,2.75vw,.8rem);font-weight:700;white-space:nowrap}
.prose{display:grid;gap:.5rem;max-width:640px;margin:0 auto;text-align:center}
.prose h2{font-size:1rem;font-weight:800}
.prose p{color:var(--tm);font-size:.9rem;line-height:1.55}
.cta-band{display:flex;flex-direction:column;align-items:center;gap:.8rem}
.ticks{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}
.ticks li{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;background:var(--cream);border:1px solid var(--bdr);border-radius:50px;font-size:.82rem;font-weight:700;color:var(--tm)}
.ticks .fi{width:16px;height:16px;fill:var(--o);flex-shrink:0}
.ticks a{color:inherit}
.faq{display:grid;gap:.5rem;max-width:760px;margin:0 auto}
.faq details{background:var(--cream);border:1.5px solid var(--bdr);border-radius:14px;padding:.1rem 1rem;transition:border-color .2s}
.faq details[open]{border-color:rgba(255,102,0,.3)}
.faq summary{list-style:none;min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:.8rem;font-weight:800;font-size:.94rem;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--o);font-size:1.4rem;font-weight:700;line-height:1}
.faq details[open] summary::after{content:'−'}
.faq p{color:var(--tm);line-height:1.6;font-size:.9rem;padding-bottom:.8rem}

/* Forms */
.form-card{position:relative;background:var(--white);color:var(--t);border:1.5px solid rgba(0,0,0,.07);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.45);padding:1.1rem 1rem;max-width:480px;margin:0 auto}
.field{display:block;margin-bottom:.6rem}
.field span{display:block;font-size:.8rem;font-weight:700;color:var(--tm);margin-bottom:.2rem}
.field input,.field select,.field textarea{width:100%;min-height:46px;padding:.5rem .9rem;font:inherit;font-size:.95rem;color:var(--t);background:var(--white);border:1.5px solid rgba(0,0,0,.14);border-radius:var(--rs);transition:border-color .2s,box-shadow .2s}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--o);box-shadow:0 0 0 3px rgba(255,102,0,.12)}
.form-card .btn-main{width:100%}
.check{display:flex;gap:.5rem;align-items:flex-start;min-height:44px;font-size:.76rem;line-height:1.4;color:var(--tm);margin-bottom:.5rem}
.check input{width:20px;height:20px;flex-shrink:0;accent-color:var(--o);margin-top:.05rem}
.field-group{border:0;margin-bottom:.6rem}
.field-group legend{font-size:.8rem;font-weight:700;margin-bottom:.2rem}
.field-group .check{margin-bottom:0;align-items:center}
.band.flow{min-height:62vh;padding-top:28px}
.flow .sec-title{color:#fff}
.flow .sec-body{margin-bottom:1rem}

/* Funnel: photo hero, the questionnaire rises as a white sheet */
.hero--funnel{padding:0;background:#07080b}
.funnel-media{position:relative;height:clamp(250px,40svh,340px);background:#07080b url('/img/hero-invest.jpg') 50% 14%/cover no-repeat}
.funnel-media::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,#07080b 4%,rgba(7,8,11,.62) 36%,rgba(7,8,11,0) 66%)}
.funnel-head{position:relative;z-index:1;margin-top:-118px;padding:0 var(--gut-e) .9rem var(--gut-s);text-align:center}
.funnel-head .hero-h1{font-size:clamp(1.8rem,7.8vw,2.3rem);margin-bottom:.35rem}
.funnel-head .hero-sub{margin:0 auto .7rem;font-size:.92rem}
.proof{display:flex;justify-content:center}
.proof div{flex:1 1 0;max-width:120px;padding:0 .4rem;border-inline-start:1px solid var(--bdr2)}
.proof div:first-child{border:0}
.proof b{display:block;font-size:clamp(1.02rem,4.6vw,1.35rem);font-weight:900;line-height:1.1;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.proof span{display:block;font-size:.62rem;line-height:1.15;color:rgba(255,255,255,.7)}
.funnel-sheet{position:relative;z-index:2;padding:0 var(--gut-e) 28px var(--gut-s);background:linear-gradient(to bottom,#07080b 44px,var(--white) 44px)}
.funnel-sheet .form-card{width:100%;max-width:520px;box-shadow:0 18px 50px rgba(0,0,0,.2)}
@media(min-width:900px){
  .hero--funnel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:0 2.5rem;padding:48px max(var(--gut-s),calc((100vw - 1100px)/2)) 60px;background:radial-gradient(circle at 80% 10%,rgba(255,102,0,.13),transparent 46%),#07080b}
  .funnel-media{display:none}
  .funnel-head{margin:0;padding:0;text-align:start}
  .funnel-head .hero-h1{font-size:clamp(2.2rem,3.8vw,3.3rem)}
  .funnel-head .hero-sub{margin-inline:0;font-size:1.06rem}
  .proof{justify-content:flex-start}
  .funnel-sheet{padding:0;background:none}
}
.partner-strip{color:var(--oh);font-size:.82rem;font-weight:600;margin-bottom:.3rem}
.partner-strip b{font-weight:800}
.funnel{color:var(--t)}
.funnel-bar{height:4px;background:#efe9e1;border-radius:4px;overflow:hidden;margin-bottom:.7rem}
.funnel-bar i{display:block;width:16%;height:100%;background:var(--slider);border-radius:4px;transition:width .3s var(--ease)}
.q{display:none;border:0}
.q.on{display:block;animation:fadeUp .3s var(--ease)}
.q legend{width:100%;text-align:center;font-size:1.12rem;font-weight:900;line-height:1.25;margin-bottom:.55rem}
.tile{display:block;margin-bottom:.38rem;cursor:pointer}
.tile input{position:absolute;opacity:0;width:1px;height:1px}
.tile span{display:flex;align-items:center;justify-content:center;min-height:46px;padding:.4rem .9rem;background:var(--cream);border:1.5px solid var(--bdr);border-radius:12px;font-weight:700;font-size:.95rem;transition:all .18s var(--ease)}
.tile:hover span{border-color:var(--o);background:#fff8f3}
.tile input:checked+span{background:var(--o);border-color:var(--o);color:#111}
.tile input:focus-visible+span{outline:3px solid var(--o);outline-offset:2px}
.q-back{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;background:none;border:0;font:inherit;font-size:.8rem;font-weight:700;color:var(--ts);cursor:pointer}

/* Property cards */
.pcard{position:relative;display:block;height:100%;background:#fff;border:1px solid var(--bdr);border-radius:16px;overflow:hidden;color:var(--t);text-decoration:none;box-shadow:var(--sh);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shl)}
.pcard-img{position:relative;aspect-ratio:16/11;overflow:hidden;background:var(--dark3)}
.pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.pcard:hover .pcard-img img{transform:scale(1.05)}
.pcard-tag{position:absolute;top:.5rem;inset-inline-start:.5rem;padding:.14rem .55rem;background:rgba(14,14,14,.72);border-radius:50px;font-size:.68rem;font-weight:800;color:#fff}
.pcard-price{position:absolute;bottom:.5rem;inset-inline-end:.5rem;padding:.18rem .65rem;background:rgba(14,14,14,.82);border-radius:50px;font-size:.86rem;font-weight:800;color:#fff}
.pcard-body{padding:.55rem .7rem .65rem;text-align:center}
.pcard-body b{display:block;font-size:.94rem;font-weight:800;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pcard-specs{display:flex;justify-content:center;gap:.65rem;margin-top:.2rem;font-size:.76rem;font-weight:600;color:var(--ts)}
.pcard-specs span{display:inline-flex;align-items:center;gap:.2rem}
.pcard-specs .ic{color:var(--o)}
.rail-head{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin:1rem 0 .45rem}
.rail-head:first-child{margin-top:0}
.rail-head h2{font-size:1.2rem;font-weight:900;letter-spacing:-.02em}
.rail-head span{font-size:.76rem;font-weight:800;color:var(--oc)}
.finder{display:grid;gap:.35rem;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;width:100%;max-width:640px}
.finder .field{margin:0}
.finder .field span,.sr-go{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.finder select{min-height:44px;padding:.2rem .45rem;font-size:.82rem;font-weight:700;background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.22)}
.finder select option{color:#111}
.finder .btn-main{min-height:44px;min-width:44px;padding:0 .8rem}
.grid-cards{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:900px){.grid-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Property page */
.gallery{position:relative;background:#000;margin-top:0}
.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-track li{flex:0 0 100%;scroll-snap-align:center}
.gallery-track img{width:100%;height:clamp(270px,60vw,540px);object-fit:cover}
.g-count{position:absolute;top:.7rem;inset-inline-end:.7rem;padding:.14rem .55rem;background:rgba(14,14,14,.7);border-radius:50px;color:#fff;font-size:.74rem;font-weight:700}
.g-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(14,14,14,.6);color:#fff;font-size:1.2rem;cursor:pointer;display:none}
.g-prev{inset-inline-start:.7rem}.g-next{inset-inline-end:.7rem}
@media(min-width:900px){.g-nav{display:block}}
.prop-head{position:relative;z-index:3;margin:-30px var(--gut-e) 0 var(--gut-s)}
.prop-card{max-width:980px;margin:0 auto;background:var(--dark);color:#fff;border-radius:20px;padding:.9rem 1rem;text-align:center;box-shadow:var(--shl)}
.prop-card .sec-tag{color:var(--oh);justify-content:center;margin-bottom:.05rem}
.prop-card h1{font-size:clamp(1.4rem,6vw,2.2rem);font-weight:900;line-height:1.1;letter-spacing:-.025em}
.prop-card .hero-price{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.5rem;margin:.1rem 0 .5rem}
.specs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;margin-bottom:.6rem}
.specs div{background:rgba(255,255,255,.06);border:1px solid var(--bdr2);border-radius:12px;padding:.35rem .2rem}
.specs dt{font-size:.66rem;color:rgba(255,255,255,.7)}
.specs dd{font-size:.92rem;font-weight:900;line-height:1.15}
.prop-card .btn-main{width:100%}
.prop-video{width:100%;border-radius:var(--r);background:#000}
.readmore{margin-top:.5rem;text-align:center}
.readmore>summary{list-style:none;display:inline-flex;align-items:center;min-height:40px;font-weight:900}
.readmore>summary::-webkit-details-marker{display:none}
.clamp{color:var(--tm);font-size:.94rem;line-height:1.6;white-space:pre-line;text-align:start}

/* Long-form pages */
.longform{max-width:760px;margin:0 auto;padding:24px var(--gut-e) 40px var(--gut-s);line-height:1.65;color:var(--tm)}
.longform h1{font-size:clamp(1.5rem,5vw,2.3rem);font-weight:900;line-height:1.15;letter-spacing:-.025em;color:var(--t);margin-bottom:.6rem}
.longform h2{font-size:1.08rem;font-weight:800;color:var(--t);margin:1rem 0 .2rem}
.longform p,.longform ul,.longform ol{margin-bottom:.6rem}
.longform ul{list-style:disc;padding-inline-start:1.2rem}
.longform a:not(.btn-main){color:var(--oc)}
.badge{display:inline-flex;align-items:center;min-height:24px;padding:0 .55rem;border-radius:50px;background:rgba(255,140,56,.16);color:var(--oh);font-size:.72rem;font-weight:800;margin-bottom:.35rem}

/* Footer: a quiet white close, as on /invest */
.foot{background:var(--white);border-top:1px solid var(--bdr);color:var(--ts);padding:.9rem var(--gut-e) 4.6rem var(--gut-s);text-align:center}
.foot>a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
.foot-logo{height:32px;width:auto;margin:0 auto .15rem}
.foot-legal,.foot-langs{display:flex;flex-wrap:wrap;justify-content:center;gap:0 .7rem;max-width:760px;margin:0 auto;font-size:.76rem}
.foot-legal a,.foot-langs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;color:inherit;text-decoration:none}
.foot a:hover,.foot-langs a[aria-current]{color:var(--oc)}
@media(min-width:768px){.foot{padding-bottom:.9rem}}

/* Mobile bar, from /invest */
.sticky-cta{position:fixed;inset:auto 0 0;z-index:200;padding:.6rem var(--gut-e) calc(.6rem + env(safe-area-inset-bottom,0px)) var(--gut-s);background:var(--white);border-top:1px solid var(--bdr);box-shadow:0 -4px 20px rgba(0,0,0,.1);transform:translateY(110%);transition:transform .3s var(--ease)}
.past-hero .sticky-cta{transform:none}
html:not(.js) .sticky-cta{transform:none}
.sticky-cta .btn-main{display:flex;width:100%;min-height:48px;font-size:.95rem}
body:has(.funnel) .sticky-cta{display:none}
@media(min-width:768px){.sticky-cta{display:none}}
.consent{position:fixed;inset:auto 0 0;z-index:260;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem .8rem;padding:.55rem var(--gut-e) .55rem var(--gut-s);background:var(--white);border-top:1px solid var(--bdr);font-size:.8rem}
.consent button{min-height:44px;padding:0 1rem;border-radius:50px;font:inherit;font-weight:700;cursor:pointer;border:1px solid rgba(0,0,0,.2);background:transparent}
.consent button[data-consent=granted]{background:var(--ob);border-color:var(--ob);color:#fff}

/* Accessibility widget, from /invest */
.a11y-btn{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:250;width:50px;height:50px;border-radius:50%;background:#1a1a1a;color:#fff;border:2px solid var(--o);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.35);transition:bottom .3s var(--ease)}
.a11y-btn svg{width:28px;height:28px;fill:currentColor}
.a11y-panel{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:250;width:min(300px,calc(100vw - 32px));max-height:calc(100dvh - 160px);overflow-y:auto;background:#1a1a1a;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:16px;display:grid;gap:8px;box-shadow:0 12px 40px rgba(0,0,0,.5)}
.a11y-panel h2{font-size:1.05rem;margin-bottom:4px}
.a11y-panel button,.a11y-panel a{font:inherit;font-size:.92rem;font-weight:700;text-align:start;color:#fff;background:#262626;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:10px 14px;min-height:44px;cursor:pointer;text-decoration:none}
.a11y-panel button[aria-pressed="true"]{background:var(--o);border-color:var(--o);color:#111}
.a11y-panel .row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:767px){.past-hero .a11y-btn{bottom:calc(76px + env(safe-area-inset-bottom,0px))}.past-hero .a11y-panel{bottom:calc(136px + env(safe-area-inset-bottom,0px))}body:has(.funnel) .a11y-btn{bottom:calc(16px + env(safe-area-inset-bottom,0px))}body:has(.funnel) .a11y-panel{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}
html.a11y-big{font-size:115%}
html.a11y-bigger{font-size:130%}
html.a11y-links a{text-decoration:underline!important;text-underline-offset:3px}
html.a11y-contrast{--tm:#000;--ts:#222;--bdr:rgba(0,0,0,.4)}
html.a11y-readable body,html.a11y-readable input,html.a11y-readable select,html.a11y-readable button,html.a11y-readable textarea{font-family:Arial,sans-serif!important;letter-spacing:.02em}
html.a11y-still *,html.a11y-still *::before,html.a11y-still *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(min-width:900px){.tickets{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin-inline:auto}.tickets:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}}

/* ladder and tower */
.ladder{list-style:none;display:grid;gap:.55rem;max-width:560px;margin:0 auto}
.rung{--w:calc(60% + var(--i) * 13.3%)}
.rung-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:var(--w);min-height:50px;padding:.4rem .9rem;background:color-mix(in srgb,#efe9e1,#cfc5b8 calc(var(--i) * 33%));border-radius:12px}
.rung-bar b{font-size:1rem;font-weight:800;line-height:1.15}
.rung>span{display:block;margin-top:.2rem;padding-inline-start:.9rem;font-size:.84rem;color:var(--ts)}
.rung--here .rung-bar{background:var(--grad);color:#111;box-shadow:0 10px 26px rgba(255,102,0,.28)}
.rung-bar em{flex:none;padding:.16rem .55rem;background:#111;color:#fff;border-radius:50px;font-size:.68rem;font-style:normal;font-weight:700;white-space:nowrap}
.gap{max-width:620px;margin:0 auto;text-align:start}
.gap-place{margin-bottom:.9rem;text-align:center;font-size:.86rem;color:rgba(255,255,255,.7)}
.gap-row{display:grid;grid-template-columns:4.6rem 1fr 3.9rem;align-items:center;gap:.6rem;margin-bottom:.6rem;font-size:.86rem;font-weight:600}
.gap-row b{font-size:1.02rem;font-weight:800;text-align:end;white-space:nowrap}
.gap-track{height:26px;overflow:hidden;background:rgba(255,255,255,.07);border-radius:8px}
.gap-track i{display:block;width:100%;height:100%;background:rgba(255,255,255,.34);border-radius:8px;transition:width 1.1s var(--ease)}
.gap-row--deal .gap-track i{width:var(--ratio);background:var(--grad)}
.gap-row--deal b{color:var(--oh)}
.gap.armed .gap-track i{width:0}
.gap.armed.go .gap-row--market .gap-track i{width:100%}
.gap.armed.go .gap-row--deal .gap-track i{width:var(--ratio);transition-delay:.35s}
.gap-under{margin-top:1rem;text-align:center;font-size:.95rem;color:rgba(255,255,255,.84)}
.gap-under b{display:block;font-size:clamp(2.6rem,11vw,3.6rem);font-weight:900;line-height:1;color:var(--o)}
.tower{position:relative;max-width:620px;margin:0 auto;padding:1.1rem .9rem 0;overflow:hidden;background:radial-gradient(120% 70% at 50% 100%,rgba(255,118,0,.2),transparent 70%),var(--dark);border-radius:20px;color:#fff}
.tower-floors{list-style:none;display:flex;flex-direction:column-reverse;gap:4px;border-bottom:3px solid var(--o)}
.floor{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'year text' 'year lights';align-items:center;column-gap:.8rem;row-gap:.25rem;min-height:72px;margin-inline:calc(var(--i) * 2.4%);padding:.55rem .85rem;background:linear-gradient(180deg,#242424,#1a1a1a);border:1px solid var(--bdr2);border-block-end:0;border-radius:6px 6px 0 0;transform-origin:50% 100%}
.floor-year{grid-area:year;font-size:clamp(1.9rem,8.6vw,2.5rem);font-weight:900;line-height:1;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.floor-text{grid-area:text;font-size:.9rem;font-weight:600;line-height:1.25}
.floor-lights{grid-area:lights;display:flex;gap:4px}
.floor-lights i{width:13px;height:7px;background:#333;border-radius:1.5px}
.floor-lights .lit{background:#ffb347;box-shadow:0 0 7px rgba(255,179,71,.65)}
.tower-roof{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .8rem;margin-inline:calc(6 * 2.4%);margin-bottom:6px;padding:.75rem .9rem;text-align:center;border:1px solid rgba(255,118,0,.5);border-radius:14px 14px 4px 4px;background:rgba(255,118,0,.1)}
.tower-today{grid-column:1/-1;font-size:.72rem;font-weight:800;letter-spacing:.06em;color:var(--oh)}
.tower-roof b{display:block;font-size:1.3rem;font-weight:900;line-height:1.1}
.tower-roof div span{font-size:.74rem;color:rgba(255,255,255,.72)}
.tower.armed .floor,.tower.armed .tower-roof{opacity:0;transform:translateY(22px) scaleY(.7)}
.tower.armed .floor-lights .lit{background:#333;box-shadow:none}
.tower.armed.go .floor,.tower.armed.go .tower-roof{opacity:1;transform:none;transition:opacity .5s var(--ease),transform .6s cubic-bezier(.34,1.3,.64,1);transition-delay:calc(var(--i) * .24s)}
.tower.armed.go .floor-lights .lit{background:#ffb347;box-shadow:0 0 7px rgba(255,179,71,.65);transition:background .25s,box-shadow .25s;transition-delay:calc(var(--i) * .24s + .3s + var(--w) * .06s)}
@media(min-width:900px){
  .ladder{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:.7rem;max-width:none}
  .feats:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px;margin-inline:auto}
  .deal-body{display:flex;flex-direction:column;justify-content:center}
  .deal img{max-height:380px}
  .rung-bar{flex-direction:column;align-items:flex-start;justify-content:flex-end;width:100%;min-height:calc(76px + var(--i) * 34px);padding:.9rem}
  .rung--here .rung-bar{justify-content:space-between;flex-direction:column-reverse}
  .rung>span{padding-inline-start:.2rem}
  .floor{grid-template-columns:7rem minmax(0,1fr) auto;grid-template-areas:'year text lights';min-height:64px}
}
/* showcase */
.show-count{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;max-width:620px;margin:0 auto .9rem}
.show-count div{background:var(--white);border:1px solid var(--bdr);border-radius:14px;padding:.6rem .4rem;text-align:center}
.show-count b{display:block;font-size:clamp(1.5rem,7vw,2.1rem);font-weight:900;line-height:1.1;color:var(--oc)}
.show-count span{display:block;font-size:.72rem;font-weight:600;color:var(--ts);line-height:1.25}
.show-sold{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;max-width:620px;margin:0 auto .75rem;list-style:none}
.show-card{box-shadow:var(--shl)}
.show-stamp{position:absolute;top:.6rem;inset-inline-start:.6rem;z-index:1;padding:.22rem .7rem;background:var(--ob);border-radius:50px;font-size:.78rem;font-weight:900;color:#fff}
.ocard .pcard-tag{z-index:1}
.show-rail{list-style:none}
@media(min-width:900px){.show-sold .ocard{aspect-ratio:4/3}}
/* team */
.crew{--n:9;position:relative;list-style:none;max-width:680px;margin:0 auto;padding:1.2rem .7rem 1.1rem;overflow:hidden;background:radial-gradient(120% 60% at 50% 0,rgba(255,118,0,.2),transparent 70%),var(--dark);border-radius:20px;color:#fff}
.crew::before{content:"";position:absolute;inset-block:1.6rem 1.6rem;inset-inline-start:calc(50% - 1px);width:2px;background:linear-gradient(to bottom,var(--o),rgba(255,118,0,.25));transform-origin:50% 0}
.crew-p{position:relative;width:calc(50% - 12px);margin-top:-14px}
.crew-p:first-child,.crew-row+.crew-p{margin-top:0}
.crew-p:nth-child(even){margin-inline-start:auto}
.crew-p::after{content:"";position:absolute;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--o);box-shadow:0 0 10px rgba(255,118,0,.8);inset-inline-end:-17px}
.crew-p:nth-child(even)::after{inset-inline:-17px auto}
.crew-p a{display:flex;flex-direction:row-reverse;align-items:center;gap:.5rem;min-height:68px;color:#fff;text-decoration:none;text-align:end}
.crew-p:nth-child(even) a{flex-direction:row;text-align:start}
.crew-p img{flex:0 0 60px;width:60px;height:60px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 2px var(--o);transition:transform .25s var(--ease)}
.crew-p span{min-width:0}
.crew-p b{display:block;font-size:.92rem;font-weight:800;line-height:1.15}
.crew-p small{display:block;font-size:.7rem;line-height:1.25;color:rgba(255,255,255,.72)}
.crew-p:first-child img{flex-basis:72px;width:72px;height:72px}
.crew a:hover img{transform:scale(1.07)}
.crew-row{position:relative;margin:.7rem 0;padding:.7rem .4rem;background:var(--dark2);border:1px solid rgba(255,118,0,.4);border-radius:14px;text-align:center}
.crew-row h2{font-size:.78rem;font-weight:800;color:var(--oh);margin-bottom:.45rem}
.crew-mini{display:flex;justify-content:center;gap:.3rem}
.crew-mini a{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.25rem;color:#fff;text-decoration:none}
.crew-mini img{width:46px;height:46px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1.5px var(--o);transition:transform .25s var(--ease)}
.crew-mini b{font-size:.66rem;font-weight:700;line-height:1.15}
.crew.armed::before{transform:scaleY(0)}
.crew.armed .crew-p,.crew.armed .crew-row{opacity:0;transform:translateY(14px) scale(.92)}
.crew.armed .crew-mini a{opacity:0;transform:translateY(8px)}
.crew.armed.go::before{transform:none;transition:transform calc(var(--n) * .24s) linear}
.crew.armed.go .crew-p,.crew.armed.go .crew-row{opacity:1;transform:none;transition:opacity .45s var(--ease),transform .55s cubic-bezier(.34,1.45,.64,1);transition-delay:calc(var(--i) * .24s)}
.crew.armed.go .crew-mini a{opacity:1;transform:none;transition:opacity .35s var(--ease),transform .4s var(--ease);transition-delay:calc(var(--i) * .24s + .15s + var(--m) * .09s)}
@media(min-width:760px){
  .crew{padding:1.6rem 1.4rem}
  .crew-p{margin-top:-20px}
  .crew-p a{min-height:86px;gap:.75rem}
  .crew-p img{flex-basis:76px;width:76px;height:76px}
  .crew-p:first-child img{flex-basis:92px;width:92px;height:92px}
  .crew-p b{font-size:1.05rem}
  .crew-p small{font-size:.8rem}
  .crew-mini img{width:64px;height:64px}
  .crew-mini b{font-size:.8rem}
}
.person-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:calc(var(--gap) * .8) var(--gut-s) var(--gap);background:radial-gradient(90% 80% at 50% 0,rgba(255,118,0,.2),transparent 70%),var(--dark);color:#fff}
.person-hero img{width:176px;height:176px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 3px var(--dark),0 0 0 5px var(--o),0 14px 44px rgba(255,118,0,.28);margin-bottom:.9rem}
.person-hero h1{font-size:clamp(2rem,8vw,3rem);font-weight:900;line-height:1.08;letter-spacing:-.025em}
.person-role{font-size:clamp(1rem,3.6vw,1.2rem);font-weight:700;color:var(--oh);margin-top:.25rem}
.person-org{font-size:.84rem;color:rgba(255,255,255,.66)}
.person-motto{margin-top:.6rem;font-size:.95rem;font-weight:600;color:rgba(255,255,255,.88)}
.person-sheet{max-width:760px;text-align:center}
.person-bio{font-size:1.02rem;line-height:1.6;color:var(--tm);margin-bottom:1rem}
.person-sheet .sec-title{margin-bottom:.7rem}
.person-tiles{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}
.person-tiles li{flex:1 1 150px;display:flex;align-items:center;justify-content:center;min-height:62px;padding:.6rem .7rem;background:var(--cream);border:1px solid var(--bdr);border-top:2px solid var(--o);border-radius:12px;font-size:.9rem;font-weight:700;line-height:1.25;color:var(--t)}
.person-quote{max-width:720px;text-align:center}
.person-quote .sec-tag{margin-bottom:.5rem}
.person-quote blockquote{font-size:clamp(1.1rem,4vw,1.4rem);font-weight:600;line-height:1.5;color:#fff}
.person-cards{display:grid;gap:.7rem;max-width:860px}
.person-cards>div{display:flex;flex-direction:column;justify-content:center;padding:1.1rem 1rem;background:var(--cream);border:1px solid var(--bdr);border-radius:16px;text-align:center}
.person-cards h2{font-size:1.02rem;font-weight:800;color:var(--oc);margin-bottom:.3rem}
.person-cards p{font-size:.95rem;line-height:1.6;color:var(--tm)}
.person-press{font-size:.84rem;color:rgba(255,255,255,.72)}
.person-press a{color:var(--oh)}
@media(min-width:760px){.person-cards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.person-hero img{width:220px;height:220px}}

/* cities */
.cities{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-width:1040px;margin:0 auto}
.cities li{position:relative;overflow:hidden;aspect-ratio:1/1;border-radius:14px;background:#111;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);isolation:isolate}
.cities li:nth-child(-n+2){grid-column:span 1}
.cities img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.cities li::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(8,8,8,.86),rgba(8,8,8,.1) 55%)}
.cities li::after{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,var(--slider),transparent);box-shadow:0 0 14px var(--slider);opacity:0}
.cities li:hover img{transform:scale(1.06)}
.city-id{position:absolute;top:.6rem;inset-inline-start:.7rem;font-size:.7rem;font-weight:700;letter-spacing:.14em;color:#fff;padding:.12rem .4rem;border:1px solid rgba(255,255,255,.35);border-radius:6px;background:rgba(0,0,0,.28);backdrop-filter:blur(6px)}
.city-cap{position:absolute;inset:auto .75rem .65rem;display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;text-align:start}
.city-cap b{font-size:clamp(1.05rem,4.6vw,1.5rem);font-weight:900;letter-spacing:-.02em;color:#fff}
@media(min-width:760px){.cities{grid-template-columns:repeat(12,1fr);gap:10px}.cities li{grid-column:span 3;aspect-ratio:1/1}.cities li:nth-child(-n+2){grid-column:span 6;aspect-ratio:16/8}}
.cities.armed li{opacity:0;transform:translateY(18px) scale(.97)}
.cities.armed.go li{opacity:1;transform:none;transition:opacity .6s var(--ease),transform .6s var(--ease);transition-delay:calc(var(--i)*110ms)}
.cities.armed.go li::after{animation:cityScan 1.3s ease-in-out calc(var(--i)*110ms + 200ms) 1}
@keyframes cityScan{0%{top:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:100%;opacity:0}}
@media(prefers-reduced-motion:reduce){.cities.armed li{opacity:1;transform:none}.cities li::after{display:none}}
.a11y-still .cities.armed li{opacity:1;transform:none}.a11y-still .cities li::after{display:none}

/* whole building in the photo, caption under it */
.ocard--photo{aspect-ratio:auto;background:var(--dark2)}
.ocard--photo::after{display:none}
.ocard--photo img{display:block;height:auto;aspect-ratio:4/3}
.ocard--photo .ocard-text{position:static;padding:.65rem .8rem .8rem}

