@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');

:root{--ink:#171713;--paper:#f0eee7;--paper-2:#e8e5dc;--muted:#77746b;--line:rgba(23,23,19,.16);--warm:#b89569;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-weight:400}a{color:inherit;text-decoration:none}p{line-height:1.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:92px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:20;border-bottom:1px solid rgba(240,238,231,.22);color:var(--paper)}.brand{display:flex;gap:13px;align-items:center;letter-spacing:.13em;font-weight:600}.brand-mark{display:grid;place-items:center;width:29px;height:29px;border:1px solid currentColor;font-family:'Playfair Display',serif;font-size:18px}.brand-name{font-size:14px}.main-nav{display:flex;gap:34px;font-size:13px}.main-nav a{position:relative}.main-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:right .25s}.main-nav a:hover:after,.main-nav a:focus-visible:after{right:0}.menu-toggle{display:none;background:none;border:0;color:inherit}
.hero{min-height:100vh;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.hero-copy{align-self:end;padding:180px clamp(24px,5vw,72px) 10vh;max-width:900px}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin:0 0 30px}.hero h1,.section h2,.philosophy h2,.contact h2{font-family:'Playfair Display',serif;font-weight:500;letter-spacing:-.035em}.hero h1{font-size:clamp(54px,6.4vw,108px);line-height:.98;margin:0}.hero h1 em,.contact h2 em{font-weight:500;color:var(--warm)}.hero-intro{max-width:600px;font-size:clamp(16px,1.4vw,20px);color:#c9c5ba;margin:40px 0}.text-link{display:inline-flex;gap:18px;align-items:center;font-size:13px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #5f5c53;padding-bottom:10px}.architecture{position:relative;min-height:100vh;background:linear-gradient(155deg,#292922 0%,#1c1c18 58%,#11110f 100%);overflow:hidden}.arch-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(240,238,231,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(240,238,231,.05) 1px,transparent 1px);background-size:62px 62px;transform:perspective(800px) rotateY(-10deg) scale(1.15)}.arch-volume{position:absolute;border:1px solid rgba(240,238,231,.2);background:linear-gradient(135deg,rgba(240,238,231,.12),rgba(240,238,231,.02));box-shadow:0 40px 120px rgba(0,0,0,.25)}.volume-one{width:44%;height:64%;left:18%;bottom:-3%;transform:skewY(-10deg)}.volume-two{width:36%;height:42%;right:2%;bottom:15%;transform:skewY(8deg)}.arch-sun{position:absolute;width:28vw;height:28vw;max-width:410px;max-height:410px;border-radius:50%;top:14%;right:8%;background:#b89569;opacity:.72;filter:blur(.3px)}.visual-caption{position:absolute;right:36px;bottom:32px;margin:0;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#a9a59a}
.section{padding:clamp(90px,11vw,170px) clamp(24px,5vw,72px);max-width:var(--max);margin:auto}.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}.intro{display:grid;grid-template-columns:1fr 3fr;gap:7vw}.intro h2{font-size:clamp(42px,5vw,78px);line-height:1.05;margin:0 0 70px;max-width:950px}.two-col-copy{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.two-col-copy p{font-size:17px;color:#4f4d47;margin:0}.section-dark{background:var(--ink);color:var(--paper)}.statement{padding:clamp(100px,13vw,190px) clamp(24px,8vw,120px);text-align:center}.statement-kicker{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#99958c}.statement blockquote{font-family:'Playfair Display',serif;font-size:clamp(42px,5.6vw,82px);line-height:1.08;max-width:1150px;margin:45px auto 0;color:#e9e6dc}
.investment{padding-bottom:clamp(100px,13vw,190px)}.section-heading{display:grid;grid-template-columns:1fr 3fr;gap:7vw;margin:70px 0 100px}.section-heading h2{font-size:clamp(40px,4.6vw,72px);line-height:1.06;margin:0;max-width:900px}.principles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.principle{padding:30px 28px 20px 0;border-right:1px solid var(--line);min-height:300px}.principle:not(:first-child){padding-left:28px}.principle:last-child{border-right:0}.principle span{font-size:11px;color:var(--warm)}.principle h3{font-family:'Playfair Display',serif;font-size:30px;font-weight:500;margin:60px 0 20px}.principle p{font-size:14px;color:#68665e}
.philosophy{min-height:760px;display:grid;grid-template-columns:1fr 1fr}.philosophy-visual{background:#cbc6b8;position:relative;overflow:hidden}.line-building{position:absolute;inset:12% -12% -8% 15%;border:1px solid rgba(23,23,19,.4);transform:skewY(-11deg);box-shadow:inset 80px 0 rgba(240,238,231,.22),inset 160px 0 rgba(23,23,19,.08)}.line-building:before,.line-building:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 13%,rgba(23,23,19,.22) 13.2%,transparent 13.5%)}.line-building:after{transform:rotate(90deg)}.philosophy-copy{padding:clamp(70px,9vw,140px);align-self:center}.philosophy h2{font-size:clamp(44px,5vw,74px);margin:0 0 38px}.philosophy-copy>p:not(.eyebrow){max-width:600px;color:#55534d;font-size:17px}.philosophy dl{margin-top:65px}.philosophy dl div{display:grid;grid-template-columns:1fr 1.4fr;padding:18px 0;border-top:1px solid var(--line)}dt{font-weight:500}dd{margin:0;color:var(--muted);font-size:14px}
.contact{padding:clamp(100px,12vw,175px) clamp(24px,5vw,72px) 80px}.contact-top{max-width:var(--max);margin:auto}.contact h2{font-size:clamp(54px,7vw,105px);line-height:.98;margin:0 0 100px}.contact-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid rgba(240,238,231,.22);padding-top:28px}.contact-label{text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:#8f8b82}.contact-grid p,.contact-grid address{font-style:normal;color:#cbc7bc;font-size:14px;line-height:1.8}footer{background:var(--ink);color:#8f8b82;border-top:1px solid rgba(240,238,231,.15);padding:34px clamp(24px,5vw,72px);display:flex;justify-content:space-between;align-items:center;font-size:11px}.footer-brand{color:var(--paper)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:76px}.main-nav{position:fixed;inset:76px 0 auto 0;background:var(--ink);padding:24px;display:none;flex-direction:column;border-top:1px solid rgba(255,255,255,.15)}.main-nav.open{display:flex}.menu-toggle{display:grid;width:34px;height:34px;place-content:center;gap:7px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:1px;background:currentColor}.hero{grid-template-columns:1fr}.hero-copy{min-height:78vh;padding-top:150px}.architecture{min-height:55vh}.arch-sun{width:48vw;height:48vw}.intro,.section-heading{grid-template-columns:1fr}.intro{gap:55px}.two-col-copy{grid-template-columns:1fr}.principles{grid-template-columns:1fr 1fr}.principle:nth-child(2){border-right:0}.principle:nth-child(3),.principle:nth-child(4){border-top:1px solid var(--line)}.philosophy{grid-template-columns:1fr}.philosophy-visual{min-height:520px}.contact-grid{grid-template-columns:1fr 1fr;gap:40px}.contact-grid>div:last-child{grid-column:1/-1}}
@media(max-width:560px){.brand-name{font-size:12px}.hero-copy{min-height:82vh}.hero h1{font-size:clamp(48px,14vw,70px)}.architecture{min-height:420px}.section{padding-top:85px;padding-bottom:85px}.intro h2{margin-bottom:45px}.principles{grid-template-columns:1fr}.principle,.principle:not(:first-child){padding:28px 0;min-height:auto;border-right:0;border-top:1px solid var(--line)}.principle:first-child{border-top:0}.principle h3{margin:30px 0 12px}.philosophy-visual{min-height:390px}.philosophy-copy{padding:75px 24px}.philosophy dl div{grid-template-columns:1fr;gap:8px}.contact-grid{grid-template-columns:1fr}.contact-grid>div:last-child{grid-column:auto}footer{align-items:flex-start;gap:30px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
