:root{--ink:#091b2b;--mint:#78e7b6;--paper:#f5f4ef;--muted:#66717a;--line:#d9dedb;--white:#fff;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Aptos,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,select{font:inherit}
button{cursor:pointer}
.nav{position:fixed;z-index:20;top:18px;left:3%;right:3%;height:66px;padding:0 12px 0 18px;display:flex;align-items:center;justify-content:space-between;border:1px solid #ffffff42;border-radius:22px;background:#071827c7;color:white;backdrop-filter:blur(18px);transition:.35s}
.nav.scrolled{top:8px;background:#071827ed;box-shadow:0 12px 30px #00101d2b}
.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;letter-spacing:.04em;white-space:nowrap}
.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;background:var(--mint);color:var(--ink);font:800 19px Inter,Aptos,"Segoe UI",sans-serif}
.brand b{font-weight:500;color:var(--mint)}
nav{display:flex;gap:28px}
nav a{color:white;text-decoration:none;font-size:13px;opacity:.78;transition:.2s}
nav a:hover{opacity:1;color:var(--mint)}
.nav-actions{display:flex;gap:8px;align-items:center}
.pill{border:0;border-radius:999px;padding:13px 20px;font-weight:600;transition:.25s}
.pill:hover{transform:translateY(-2px)}
.pill-light{background:var(--mint);color:var(--ink)}
.pill-dark{background:var(--ink);color:white}
.lang{border:0;background:transparent;padding:0;color:white}
.lang-track{display:grid;grid-template-columns:34px 34px;position:relative;height:36px;align-items:center;border:1px solid #ffffff3b;border-radius:999px}
.lang-track i{position:absolute;left:3px;width:30px;height:30px;border-radius:50%;background:white;transition:.25s}
.lang-track b{z-index:1;font-size:10px;text-align:center}
.lang.en i{transform:translateX(34px)}
.lang:not(.en) b:first-of-type,.lang.en b:last-of-type{color:var(--ink)}
.menu{display:none;background:none;border:0;color:white;font-size:20px}
.hero{position:relative;height:900px;min-height:100vh;color:white;overflow:hidden}
.hero>img{width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#041421dd 0%,#0414215c 53%,#04142133),linear-gradient(0deg,#041421bf 0%,transparent 42%)}
.hero-copy{position:absolute;top:28%;left:7%;max-width:700px}
.eyebrow{display:inline-flex;gap:9px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.16em}
.eyebrow i{width:27px;height:1px;background:var(--mint)}
.eyebrow.dark{color:#3d6e61}
.hero h1,.section h2,.owners h2{font-family:Inter,Aptos,"Segoe UI",Arial,sans-serif;font-size:clamp(44px,6vw,86px);font-weight:600;line-height:1.02;letter-spacing:-.045em;margin:22px 0}
.hero h1 em,.section h2 em,.owners h2 em{font-family:"Iowan Old Style",Baskerville,Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em}
.hero-copy p{max-width:550px;font-size:17px;line-height:1.7;color:#dae3e2}
.scroll{display:inline-flex;gap:12px;align-items:center;color:white;text-decoration:none;margin-top:25px;font-size:13px}
.scroll span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff57;border-radius:50%}
.finder{position:absolute;top:23%;right:6%;width:min(390px,34vw);padding:26px;border:1px solid #ffffff4a;border-radius:28px;background:#071827b8;backdrop-filter:blur(18px)}
.finder-head{display:flex;justify-content:space-between;color:#b7c4c7;font-size:11px;letter-spacing:.08em}
.finder h2{font-size:23px;line-height:1.35;margin:22px 0}
.seat-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.seat{padding:12px;border:1px solid #ffffff30;border-radius:12px;background:#ffffff0d;color:white}
.seat.active{border-color:var(--mint);background:#78e7b61b;color:var(--mint)}
.finder label{display:block;margin:22px 0 8px;font-size:11px;color:#b7c4c7}
.select-row{display:flex;gap:8px}
.select-row select{flex:1;min-width:0;border:1px solid #ffffff30;border-radius:12px;padding:13px;background:#ffffff10;color:white}
.select-row option{color:#111}
.go{width:48px;border:0;border-radius:13px;background:var(--mint);font-size:20px}
.finder small{display:flex;gap:8px;align-items:center;margin-top:16px;color:#c5cece}
.finder small i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px #78e7b61b}
.hero-stats{position:absolute;bottom:42px;left:7%;display:flex;gap:65px}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats b{font:600 28px Inter,Aptos,"Segoe UI",sans-serif}
.hero-stats span{font-size:11px;color:#b5c3c5}
.section{padding:110px 7%}
.section-top{display:flex;align-items:end;justify-content:space-between}
.section h2{font-size:clamp(40px,5vw,68px)}
.section-top>p{max-width:440px;line-height:1.7;color:var(--muted)}
.filters{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:10px;margin:50px 0 16px;padding:10px;border:1px solid var(--line);background:white;border-radius:20px}
.filter{padding:7px 16px;border-right:1px solid var(--line)}
.filter span{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}
.filter select{width:100%;border:0;background:transparent;color:var(--ink);font-weight:600}
.filters>button{border:0;border-radius:14px;background:var(--ink);color:white}
.filters>button span{color:var(--mint);font-size:20px}
.office-stage{height:650px;display:grid;grid-template-columns:1.15fr .85fr;border-radius:30px;overflow:hidden;background:white;box-shadow:0 20px 70px #08233412}
.map-panel{position:relative;overflow:hidden;background:#dfe8e3}
.map-grid{position:absolute;inset:-20%;opacity:.45;background-image:linear-gradient(32deg,transparent 48%,#9dada5 49%,#9dada5 50%,transparent 51%),linear-gradient(120deg,transparent 48%,#abb8b1 49%,#abb8b1 50%,transparent 51%);background-size:90px 75px}
.river{position:absolute;width:180%;height:130px;left:-40%;top:45%;background:#a9c9d4;transform:rotate(-18deg);border:18px solid #c8dbd8}
.map-label{position:absolute;font-size:10px;letter-spacing:.15em;color:#657a71}
.l1{top:28%;left:20%}
.l2{bottom:22%;right:18%}
.pin{position:absolute;border:0;background:transparent}
.pin i{display:grid;place-items:center;width:42px;height:42px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--ink);color:white;box-shadow:0 8px 20px #0018}
.pin i::first-line{transform:rotate(45deg)}
.pin.active i{background:var(--mint);color:var(--ink);scale:1.15}
.p1{top:35%;left:34%}
.p2{top:20%;right:25%}
.p3{bottom:22%;left:24%}
.map-tools{position:absolute;right:18px;top:18px;display:flex;flex-direction:column}
.map-tools button{width:38px;height:38px;border:1px solid var(--line);background:white}
.map-note{position:absolute;left:18px;bottom:18px;background:#ffffffdc;padding:11px 14px;border-radius:12px;font-size:11px}
.map-note i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#28bb7c;margin-right:6px}
.result-panel{padding:24px;overflow:auto}
.result-head{display:flex;justify-content:space-between;margin-bottom:15px}
.result-head>span{font-size:10px;color:var(--muted)}
.office-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:14px;transition:.2s}
.office-card.selected{border-color:#4b8b73;box-shadow:0 10px 30px #1233}
.card-img{height:135px;position:relative;background-size:cover;background-position:center}
.card-img::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#03131b99,transparent)}
.card-img b{position:absolute;z-index:1;bottom:12px;left:14px;color:white;font-size:19px}
.grade{position:absolute;z-index:1;right:10px;top:10px;background:var(--mint);padding:6px 9px;border-radius:99px;font-size:10px}
.card-body{padding:14px}
.card-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:12px}
.card-meta span{font-size:10px;color:var(--muted)}
.card-meta b{display:block;color:var(--ink);font-size:12px;margin-top:4px}
.card-actions{display:flex;gap:8px}
.card-actions button{flex:1;padding:10px;border-radius:10px;border:1px solid var(--line);background:white;font-size:11px;font-weight:700}
.card-actions .view{background:var(--ink);color:white;border-color:var(--ink)}
.intelligence{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center;background:#eaf0eb}
.iq-copy p{color:var(--muted);line-height:1.8;max-width:500px;margin-bottom:30px}
.iq-orbit{position:relative;min-height:590px}
.orbit{position:absolute;border:1px solid #8aa39a66;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.o1{width:480px;height:480px}
.o2{width:315px;height:315px}
.iq-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--ink);color:white;box-shadow:0 0 0 18px #ffffff66}
.iq-core small{color:var(--mint)}
.iq-core strong{font:600 64px Inter,Aptos,"Segoe UI",sans-serif}
.iq-core span{font-size:11px;color:#b9c5c7}
.metric{position:absolute;width:145px;height:145px;border-radius:50%;border:1px solid #c7d4cd;background:#f9fbf8;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.25s}
.metric:hover{scale:1.06;border-color:#4b8b73}
.metric i{color:#4b8b73}
.metric b{font:600 25px Inter,Aptos,"Segoe UI",sans-serif;margin:5px}
.metric span{font-size:10px;color:var(--muted)}
.m1{top:4%;left:38%}
.m2{top:38%;right:0}
.m3{bottom:4%;left:40%}
.m4{top:40%;left:0}
.esg{background:var(--ink)}
.esg-card{display:grid;grid-template-columns:1fr 1fr;min-height:580px;border-radius:36px;overflow:hidden;background:#112b37;color:white}
.esg-visual{position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,#78e7b62e,transparent 55%),linear-gradient(135deg,#163743,#091b2b)}
.leaf-lines{position:absolute;inset:12%;border:1px solid #78e7b655;border-radius:70% 0 70% 0;transform:rotate(-20deg)}
.leaf-lines:before,.leaf-lines:after{content:"";position:absolute;inset:14%;border:1px solid #78e7b638;border-radius:70% 0 70% 0}
.leaf-lines:after{inset:28%}
.esg-score{z-index:1;text-align:center}
.esg-score small{display:block;color:var(--mint);letter-spacing:.14em}
.esg-score strong{font:500 120px Inter,Aptos,"Segoe UI",sans-serif}
.esg-content{padding:70px}
.esg-content h2{font-size:50px}
.esg-list{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.esg-list>div{display:flex;gap:13px;align-items:center}
.esg-list i{display:grid;place-items:center;width:43px;height:43px;border:1px solid #ffffff2f;border-radius:50%;color:var(--mint)}
.esg-list p{margin:0}
.esg-list b,.esg-list span{display:block}
.esg-list b{font-size:12px}
.esg-list span{font-size:10px;color:#9eb0b5;margin-top:5px}
.owners{text-align:center;background:linear-gradient(135deg,#a9d8bd,#d8eadc)}
.owners h2{font-size:clamp(42px,6vw,80px)}
.owners p{max-width:630px;margin:0 auto 30px;line-height:1.8}
.compare-bar{position:fixed;z-index:25;left:50%;bottom:22px;transform:translate(-50%,140%);width:min(700px,90%);padding:12px 14px 12px 20px;border-radius:18px;background:#071827;color:white;display:flex;align-items:center;gap:14px;box-shadow:0 20px 50px #0019;transition:.3s}
.compare-bar.show{transform:translate(-50%,0)}
.compare-bar>span{font-size:12px}
.compare-bar>div{display:flex;gap:5px;flex:1}
.compare-bar img{width:36px;height:36px;border-radius:9px;object-fit:cover}
.compare-bar button{border:0;border-radius:12px;padding:12px 16px;background:var(--mint);font-weight:700}
dialog{width:min(850px,92vw);border:0;border-radius:28px;padding:34px;color:var(--ink);box-shadow:0 30px 90px #0018}
dialog::backdrop{background:#03131bcc;backdrop-filter:blur(8px)}
.close{position:absolute;right:18px;top:18px;width:38px;height:38px;border:0;border-radius:50%;font-size:22px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.detail-grid img{width:100%;height:370px;object-fit:cover;border-radius:20px}
.detail-grid p{color:var(--muted);line-height:1.7}
.detail-features{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.detail-features span{padding:10px;background:#eef2ee;border-radius:9px;font-size:11px}
.book-flow{max-width:600px;margin:auto}
.book-flow h2{font:600 40px/1.15 Inter,Aptos,"Segoe UI",sans-serif;letter-spacing:-.035em}
.steps{display:flex;gap:5px;margin:25px 0}
.steps i{height:3px;flex:1;background:#d9dedb}
.steps i.active{background:#38ae7d}
.book-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.book-options button,.book-form input{padding:15px;border:1px solid var(--line);border-radius:12px;background:white;text-align:left}
.book-options button.active{border-color:#38ae7d;background:#e9f7f0}
.book-next{width:100%;margin-top:18px}
.book-form{display:grid;gap:10px}
.compare-table{width:100%;border-collapse:collapse}
.compare-table th,.compare-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}
footer{padding:55px 7%;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;background:#061521;color:white}
footer p{font-size:11px;color:#9aabb1}
footer>div:last-child{display:flex;gap:15px;justify-content:flex-end}
footer a{color:white;text-decoration:none;font-size:11px}

@media(max-width:900px){nav{display:none}
.nav-actions .pill{display:none}
.menu{display:block}
.hero{height:960px}
.hero-copy{top:18%;left:6%;right:6%}
.finder{top:auto;bottom:135px;left:6%;right:6%;width:auto}
.hero-stats{left:6%;right:6%;gap:0;justify-content:space-between}
.section{padding:80px 5%}
.section-top{display:block}
.filters{grid-template-columns:1fr 1fr}
.filters>button{min-height:58px}
.office-stage{height:auto;grid-template-columns:1fr}
.map-panel{height:400px}
.result-panel{max-height:600px}
.intelligence{grid-template-columns:1fr;gap:20px}
.iq-orbit{scale:.8;margin-inline:-10%;}
.esg-card{grid-template-columns:1fr}
.esg-visual{min-height:400px}
.esg-content{padding:45px}
.detail-grid{grid-template-columns:1fr}
footer{grid-template-columns:1fr;gap:20px}
footer>div:last-child{justify-content:flex-start}
}
@media(max-width:560px){.nav{left:12px;right:12px}
.hero h1{font-size:46px}
.hero-copy p{font-size:14px}
.hero-stats span{max-width:80px}
.section h2{font-size:40px}
.section-top>p{font-size:14px}
.filters{grid-template-columns:1fr}
.filter{border-right:0;border-bottom:1px solid var(--line)}
.office-stage{border-radius:20px}
.map-panel{height:330px}
.intelligence{overflow:hidden}
.iq-orbit{scale:.62;margin:-80px -30%}
.esg-content h2{font-size:38px}
.esg-list{grid-template-columns:1fr}
.esg-score strong{font-size:90px}
.book-options{grid-template-columns:1fr}
.compare-bar>span{display:none}
}

/* V2 — cinematic motion, softer surfaces and clearer visual feedback */
body{overflow-x:hidden}
.hero>img{transform:scale(1.04);transition:transform 1.1s var(--ease);will-change:transform}
.hero-copy{animation:heroIn 1s .15s var(--ease) both}
.finder{animation:heroIn 1s .32s var(--ease) both;box-shadow:0 26px 90px #00111f55}
.hero-stats{animation:heroIn 1s .48s var(--ease) both}
@keyframes heroIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.hero-signal{position:absolute;right:6%;bottom:42px;display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid #ffffff24;border-radius:99px;background:#06172488;backdrop-filter:blur(14px);font-size:11px}
.hero-signal span{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 0 #78e7b699;animation:signal 2s infinite}
.hero-signal b{font-size:10px;letter-spacing:.12em;color:var(--mint)}.hero-signal i{font-style:normal;color:#c9d5d6}
@keyframes signal{70%{box-shadow:0 0 0 8px #78e7b600}}
.nav,.finder,.filters,.office-stage,.esg-card,.metric,.office-card,.compare-bar,dialog{transition-timing-function:var(--ease)}
.filters{position:sticky;top:86px;z-index:8;box-shadow:0 12px 40px #0823340c;transition:.35s var(--ease)}
.filter{transition:.25s}.filter:focus-within{background:#edf8f2;border-radius:13px}.filters>button{transition:.25s var(--ease)}.filters>button:hover{background:#15394b;transform:translateY(-2px)}
.office-stage{box-shadow:0 28px 90px #08233418;border:1px solid #fff}
.map-panel:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 35% 34%,transparent 0 70px,#113c3212 72px,transparent 74px)}
.river{box-shadow:inset 0 1px #ffffffaa,inset 0 -1px #789ba4}.map-grid{transition:transform .8s var(--ease)}.map-panel:hover .map-grid{transform:scale(1.04)}
.pin{z-index:3;transition:.35s var(--ease)}.pin:hover{transform:translateY(-5px)}.pin.active:after{content:"";position:absolute;inset:-9px;border:1px solid #2da878;border-radius:50%;animation:pinRing 1.8s infinite}
@keyframes pinRing{to{scale:1.35;opacity:0}}
.map-focus{position:absolute;z-index:4;left:24px;top:24px;width:245px;padding:18px;border-radius:18px;background:#071a29e8;color:white;box-shadow:0 18px 50px #001b;backdrop-filter:blur(16px);display:flex;flex-direction:column;gap:5px;transition:.3s var(--ease)}
.map-focus.pulse{animation:focusIn .45s var(--ease)}@keyframes focusIn{from{opacity:.55;transform:translateY(8px) scale(.98)}}
.map-focus small{font-size:11px;letter-spacing:.12em;color:var(--mint)}.map-focus b{font:600 16px/1.35 Inter,Aptos,"Segoe UI",sans-serif}.map-focus span{font-size:12px;line-height:1.45;color:#aebec2}.map-focus>div{height:3px;margin-top:8px;border-radius:5px;background:#ffffff1b;overflow:hidden}.map-focus>div i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),#d4f78d);transition:width .6s var(--ease)}.map-focus em{font-style:normal;font-size:10px;letter-spacing:.08em;color:#c9d5d6;text-align:right}
.office-card{position:relative;transform-origin:center;transition:.35s var(--ease);background:white}.office-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px #08233418}.office-card.selected{transform:translateX(-4px);border-color:#4b8b73}.office-card.selected:before{content:"";position:absolute;z-index:2;left:0;top:22px;bottom:22px;width:4px;border-radius:0 4px 4px 0;background:var(--mint)}
.card-img{height:155px;overflow:hidden;background-size:115%;transition:background-size .7s var(--ease)}.office-card:hover .card-img{background-size:121%}.card-img small{position:absolute;z-index:1;left:14px;bottom:9px;color:#cad5d6;font-size:12px;line-height:1.4}.card-img b{bottom:32px;line-height:1.3}.card-index{position:absolute;z-index:1;top:12px;left:14px;color:#fff;font:500 11px Inter,Aptos,"Segoe UI",sans-serif;letter-spacing:.14em}.grade{border:1px solid #ffffff77;box-shadow:0 6px 20px #0014}
.match-line{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-bottom:13px}.match-line span,.match-line b{font-size:9px;letter-spacing:.08em}.match-line div{height:3px;background:#e2e8e4;border-radius:9px;overflow:hidden}.match-line i{display:block;height:100%;background:linear-gradient(90deg,#28a873,var(--mint));border-radius:inherit}.match-line b{color:#27845f}
.card-actions button{transition:.25s var(--ease)}.card-actions button:hover{transform:translateY(-2px);border-color:#89aa9c}.card-actions .view span{display:inline-block;transition:.25s}.card-actions .view:hover span{transform:translateX(4px)}
.iq-orbit{isolation:isolate}.iq-core{z-index:4;transition:.35s var(--ease)}.iq-core strong{transition:.25s}.iq-sweep{position:absolute;z-index:1;left:50%;top:50%;width:240px;height:1px;transform-origin:left;background:linear-gradient(90deg,#78e7b6cc,transparent);animation:sweep 8s linear infinite}.iq-sweep:after{content:"";position:absolute;right:0;top:-80px;width:160px;height:160px;background:radial-gradient(circle,#78e7b622,transparent 65%)}@keyframes sweep{to{transform:rotate(360deg)}}.metric{z-index:3}.metric.active{border-color:#2ca776;background:#e4f8ed;box-shadow:0 0 0 8px #78e7b622}.metric.active i{transform:scale(1.25)}.iq-hint{position:absolute;left:50%;bottom:-8px;transform:translateX(-50%);font-size:11px;color:#6b8179;white-space:nowrap}
.esg-card{box-shadow:0 30px 100px #0005}.leaf-lines{animation:leafFloat 6s ease-in-out infinite}@keyframes leafFloat{50%{transform:rotate(-17deg) scale(1.03)}}.esg-score strong{background:linear-gradient(135deg,#fff,var(--mint));-webkit-background-clip:text;color:transparent}.esg-list>div{padding:10px;border-radius:14px;transition:.25s}.esg-list>div:hover{background:#ffffff0a;transform:translateX(5px)}
.reveal-on-scroll{opacity:0;transform:translateY(32px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal-on-scroll.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
@media(max-width:900px){.hero-signal{display:none}.filters{position:relative;top:auto}.map-focus{width:210px}.iq-hint{bottom:18px}}
@media(max-width:560px){.map-focus{left:12px;top:12px;width:190px;padding:13px}.map-focus b{font-size:13px}.map-note{display:none}.card-img{height:175px}.iq-hint{display:none}}
