:root{--ink:#080b10;--paper:#f1f0ec;--white:#f8f8f5;--muted:#9ca2aa;--cobalt:#325cda;--bronze:#b68a55;--line:rgba(255,255,255,.16)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.75;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:88px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.12);background:linear-gradient(to bottom,rgba(3,6,10,.72),transparent);transition:.4s ease}
.site-header.scrolled{height:68px;background:rgba(8,11,16,.88);backdrop-filter:blur(16px)}
.brand{display:flex;align-items:center;gap:13px;font-weight:600;letter-spacing:.18em}
.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--bronze);font-family:"Times New Roman",serif;color:var(--bronze);font-size:20px}
.brand-name{font-size:.86rem}
nav{display:flex;gap:2.2rem;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}
nav a{position:relative;padding:.5rem 0}
nav a:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--bronze);transition:.25s}
nav a:hover:after{width:100%}
.header-index{font-size:.7rem;letter-spacing:.18em;color:#b9bec6}
.hero{position:relative;min-height:100svh;color:#fff;display:flex;align-items:center;padding:140px 7vw 100px;isolation:isolate;background:#0a0d12}
.hero-media{position:absolute;inset:0;z-index:-4;background-image:url('./assets/coastal-architecture.webp');background-size:cover;background-position:center;transform:scale(1.02);animation:heroZoom 18s ease-out both}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1.02)}}
.hero-shade{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(3,6,10,.97) 0%,rgba(3,6,10,.62) 50%,rgba(3,6,10,.22)),linear-gradient(0deg,rgba(3,6,10,.78),transparent 48%)}
.hero-grid{position:absolute;inset:0;z-index:-2;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:120px 120px;mask-image:linear-gradient(to right,black,transparent 72%)}
.hero-kicker{position:absolute;left:7vw;top:22%;font-size:.68rem;letter-spacing:.28em;color:#c6cad1;border-left:40px solid var(--bronze);padding-left:14px}
.hero-copy{margin-top:10vh;max-width:920px}
.hero h1{margin:0;font-family:"Noto Serif JP",serif;font-size:clamp(3.3rem,7.7vw,8.3rem);line-height:1.17;font-weight:500;letter-spacing:-.055em}
.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.74)}
.hero-copy p{margin:2.1rem 0 0;font-size:clamp(1rem,1.6vw,1.35rem);letter-spacing:.12em;color:#c5c9d0}.hero-copy p span{display:block}
.hero-foot{position:absolute;left:7vw;bottom:5.5%;display:flex;align-items:center;gap:14px;font-size:.66rem;letter-spacing:.24em;color:#b1b7c0}.hero-foot i{width:34px;height:1px;background:rgba(255,255,255,.35)}
.scroll-cue{position:absolute;right:4vw;bottom:5.2%;display:flex;align-items:center;gap:12px;font-size:.58rem;letter-spacing:.23em;writing-mode:vertical-rl}.scroll-cue b{display:block;width:1px;height:70px;background:linear-gradient(var(--bronze) 50%,rgba(255,255,255,.25) 50%);background-size:100% 200%;animation:scroll 2.2s ease-in-out infinite}
@keyframes scroll{0%{background-position:0 100%}100%{background-position:0 -100%}}
.section{padding:clamp(92px,11vw,170px) 8vw;position:relative}
.section-label{display:flex;align-items:center;gap:16px;margin-bottom:90px;font-size:.67rem;letter-spacing:.24em;font-weight:600}.section-label span{color:var(--bronze)}.section-label:after{content:"";height:1px;flex:1;background:#c8c7c2}.section-label.light{color:#fff}.section-label.light:after{background:rgba(255,255,255,.18)}
.business{background:#f1f0ec}.business-intro{display:grid;grid-template-columns:1.35fr 1fr;align-items:end;gap:8vw}.business-intro .lead-stack{margin:0}.model-heading{display:flex;align-items:end;justify-content:space-between;margin-top:100px}.model-heading span{font-size:.62rem;letter-spacing:.2em;color:var(--bronze)}.model-heading h3{margin:0;font-family:"Noto Serif JP",serif;font-size:1.65rem;font-weight:500}.value-model{display:grid;grid-template-columns:repeat(3,1fr);margin-top:22px;border-top:1px solid #b9b7b0;border-bottom:1px solid #b9b7b0}.value-card{padding:38px 34px 42px;border-right:1px solid #b9b7b0}.value-card:first-child{padding-left:0}.value-card:last-child{border-right:0}.value-card span{font-size:.62rem;letter-spacing:.2em;color:var(--bronze)}.value-card h3{margin:12px 0 16px;font-family:"Noto Serif JP",serif;font-size:1.65rem;font-weight:500}.value-card p{margin:0;color:#555a61;line-height:1.9}.asset-base{display:grid;grid-template-columns:1.25fr 1fr 1fr;margin-top:90px;background:var(--ink);color:#fff}.asset-base>div{padding:40px;border-right:1px solid rgba(255,255,255,.14)}.asset-base>div:last-child{border-right:0}.asset-base-title small,.asset-item span{display:block;font-size:.6rem;letter-spacing:.2em;color:var(--bronze)}.asset-base-title strong{display:block;margin-top:16px;font-family:"Noto Serif JP",serif;font-size:1.35rem;line-height:1.7;font-weight:500}.asset-item strong{display:block;margin-top:14px;font-family:"Noto Serif JP",serif;font-size:1.55rem;font-weight:500}.asset-item p{margin:12px 0 0;color:#a8aeb7;font-size:.9rem}
.statement{min-height:850px;overflow:hidden}.statement-layout{display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,3fr);gap:5vw}.eyebrow{font-size:.68rem;line-height:1.7;letter-spacing:.23em;color:#6e737a}.display{font-family:"Noto Serif JP",serif;font-size:clamp(2.5rem,5vw,5.7rem);line-height:1.35;letter-spacing:-.045em;font-weight:500;margin:0}.lead-stack{max-width:740px;margin:3rem 0 0;font-size:clamp(1rem,1.35vw,1.18rem);line-height:2.05;color:#42464d}.lead-stack p{margin:0 0 1rem;text-align:left}
.orbit{position:absolute;right:-100px;bottom:-120px;width:420px;height:420px;border:1px solid #c7c4bc;border-radius:50%;display:grid;place-items:center;color:#9d7b53;font-size:.62rem;letter-spacing:.34em}.orbit:before{content:"";position:absolute;width:60%;height:60%;border:1px solid #d6d3cc;border-radius:50%}
.territories{background:#0a0d12;color:white}.territory-intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:5vw;margin-bottom:100px}.display.light{color:#fff}.territory-intro-copy p{margin:.35rem 0;color:#9da3ad;line-height:1.8;text-align:left}
.territory{display:grid;grid-template-columns:80px 1fr 100px;align-items:start;gap:2rem;padding:42px 0;border-top:1px solid var(--line);transition:.35s ease}.territory:last-child{border-bottom:1px solid var(--line)}.territory-no{padding-top:.45rem;color:var(--bronze);font-size:.68rem}.territory h3{margin:0 0 8px;font-size:clamp(2rem,4.7vw,4.8rem);line-height:1;letter-spacing:-.04em;font-weight:500}.territory-copy{margin-top:.9rem}.territory-copy p{max-width:620px;margin:.35rem 0;color:#9da3ad;text-align:left}.territory-jp{padding-top:.45rem;font-family:"Noto Serif JP",serif;font-size:1.3rem;text-align:right;color:#676e78}
@media(hover:hover) and (pointer:fine){.territory:hover{padding-left:20px;background:linear-gradient(90deg,rgba(50,92,218,.11),transparent)}}
.approach-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:10vw}.approach-copy .lead-stack{max-width:580px}.principles{border-top:1px solid #bbb9b2}.principle{padding:32px 0;border-bottom:1px solid #bbb9b2}.principle span{font-size:.62rem;letter-spacing:.22em;color:var(--bronze)}.principle h3{font-family:"Noto Serif JP",serif;font-size:1.65rem;font-weight:500;margin:8px 0}.principle p{margin:0;color:#5d6167}
.manifesto{position:relative;min-height:82vh;display:flex;align-items:center;color:#fff;background:#10151d;isolation:isolate}.manifesto-media{position:absolute;inset:0;z-index:-3;background-image:url('./assets/urban-development.webp');background-size:cover;background-position:center}.manifesto-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,8,13,.4),rgba(5,8,13,.89))}.manifesto-content{width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:5vw}.manifesto-tag{font-size:.62rem;letter-spacing:.18em;color:#bcc2cb}.manifesto blockquote{font-family:"Noto Serif JP",serif;font-size:clamp(2.5rem,5vw,5.4rem);line-height:1.45;margin:0;text-align:right;letter-spacing:-.04em}
.founder{background:#e4e2dc}.founder-grid{display:grid;grid-template-columns:1fr 2.2fr;gap:8vw}.founder-sign{display:flex;flex-direction:column;justify-content:flex-end;gap:5px;padding-bottom:12px;border-bottom:1px solid #aca9a1;height:150px}.founder-sign span{font-size:.62rem;letter-spacing:.2em;color:#7c7b77}.founder-sign strong{font-size:.87rem;letter-spacing:.15em}.founder-message .lead-stack{max-width:760px}
.closing{position:relative;min-height:78vh;padding:12vw 8vw 8vw;background:var(--cobalt);color:white;overflow:hidden}.closing:before{content:"T";position:absolute;right:-3vw;top:-28%;font-family:"Times New Roman",serif;font-size:70vw;line-height:1;color:rgba(6,12,35,.13)}.closing-small{position:relative;font-size:.64rem;letter-spacing:.25em}.closing-title{position:relative;display:block;width:100%;height:auto;margin:7vh 0 0;overflow:visible}.closing-title text{fill:#fff;font-family:Inter,Arial,sans-serif;font-size:170px;font-weight:500}.closing-line{position:absolute;left:8vw;right:8vw;bottom:6vw;height:1px;background:rgba(255,255,255,.4)}
footer{padding:70px 8vw 35px;background:#05070a;color:#fff}.footer-brand{font-size:clamp(2.4rem,6vw,6rem);font-weight:600;letter-spacing:.09em}.footer-meta{display:flex;justify-content:space-between;margin-top:50px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);font-size:.62rem;letter-spacing:.16em;color:#aab0b8}.legal{max-width:850px;margin:30px 0 0;font-size:.68rem;line-height:1.8;color:#6e747d}.legal p{margin:.3rem 0;text-align:left}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.75,.25,1)}.reveal.visible{opacity:1;transform:none}
.cursor-glow{position:fixed;z-index:100;pointer-events:none;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(50,92,218,.08),transparent 67%);transform:translate(-50%,-50%)}
@media(max-width:800px){.site-header{height:68px;padding:0 20px}.brand-name{font-size:.72rem}nav,.header-index{display:none}.hero{padding:120px 24px 90px}.hero-kicker{top:19%;left:24px}.hero-copy{margin-top:15vh}.hero h1{font-size:clamp(3.1rem,14.5vw,5rem);line-height:1.25}.hero-copy p{font-size:.9rem;line-height:2}.hero-foot{left:24px;bottom:4%;gap:8px;font-size:.52rem}.hero-foot i{width:18px}.scroll-cue{display:none}.section{padding:90px 24px}.section-label{margin-bottom:55px}.business-intro,.statement-layout,.territory-intro,.approach-grid,.founder-grid{grid-template-columns:1fr}.business-intro{gap:35px}.business-intro .lead-stack{margin:0}.model-heading{display:block;margin-top:65px}.model-heading h3{margin-top:8px}.value-model{grid-template-columns:1fr;margin-top:18px}.value-card,.value-card:first-child{padding:28px 0;border-right:0;border-bottom:1px solid #b9b7b0}.value-card:last-child{border-bottom:0}.asset-base{grid-template-columns:1fr;margin-top:60px}.asset-base>div{padding:28px;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.asset-base>div:last-child{border-bottom:0}.statement{min-height:760px}.eyebrow{margin-bottom:26px}.display{font-size:clamp(2.3rem,10.5vw,3.8rem)}.lead-stack{margin-top:2rem;line-height:1.9}.lead-stack p{margin-bottom:1.15rem}.orbit{width:250px;height:250px;right:-110px;bottom:-80px}.territory-intro{gap:25px;margin-bottom:60px}.territory,.territory:hover{grid-template-columns:35px minmax(0,1fr);align-items:start;gap:14px;padding:30px 0;background:none}.territory-no{padding-top:.42rem}.territory-jp{display:none}.territory h3{font-size:2.5rem}.territory-copy p{font-size:.9rem}.manifesto{min-height:70vh}.manifesto-content{display:block}.manifesto blockquote{margin-top:80px;text-align:left;font-size:2.2rem}.founder-grid{gap:55px}.founder-sign{order:2}.closing{min-height:65vh;padding:110px 24px 50px}.closing-title{margin-top:13vh}.closing-line{left:24px;right:24px;bottom:40px}footer{padding:60px 24px 30px}.footer-meta{display:grid;gap:10px}.cursor-glow{display:none}}
.business-title span{display:block}
@media(max-width:800px){.business-title{font-size:clamp(2.05rem,9.1vw,2.55rem);line-height:1.55;letter-spacing:-.055em}.business-title span{white-space:nowrap}}
.footer-address{display:flex;flex-direction:column;gap:2px;margin-top:26px;font-style:normal;font-size:.68rem;line-height:1.8;letter-spacing:.14em;color:#a8aeb7}
@media(max-width:800px){.footer-address{font-size:.62rem;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-cue b{animation:none}}
