@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&display=swap');
:root{color-scheme:dark;--bg:#09090a;--panel:#101011;--cream:#f2eee6;--muted:#b3aa99;--faint:#867b68;--gold:#cdb174;--gold-light:#ead39b;--line:rgba(211,183,122,.28);--gutter:clamp(24px,5.3vw,102px);--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--mono:'Courier New',monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--cream);font-family:var(--sans);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:url('/assets/black-marble-gold-veins.png') center/900px repeat;opacity:.12}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}
::selection{background:var(--gold);color:#09090a}
.skip-link{position:fixed;top:-80px;left:20px;z-index:200;background:var(--gold-light);color:#080808;padding:10px 15px}
.skip-link:focus{top:15px}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;z-index:102;background:transparent}
.scroll-progress span{display:block;width:100%;height:100%;background:var(--gold-light);transform:scaleX(0);transform-origin:left}
.site-header{height:86px;padding:0 var(--gutter);position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:rgba(8,8,9,.91);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand-mark{display:block;width:49px;height:58px;position:relative;overflow:hidden}
.brand-mark img{position:absolute;width:225px;height:auto;max-width:none;left:-88px;top:-10px}
.brand-name{font:26px/1 var(--serif);letter-spacing:.12em;white-space:nowrap}
.brand-name small{display:block;margin-top:7px;color:var(--gold);font:8px/1 var(--sans);font-weight:700;letter-spacing:.38em}
.site-nav{display:flex;align-items:center;gap:clamp(18px,2.5vw,42px);font-size:11px;font-weight:600;letter-spacing:.01em;color:#d3c9b5}
.site-nav>a:not(.nav-cta){padding:8px 0;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}
.site-nav>a:not(.nav-cta):hover{color:#fff;border-color:var(--gold)}
.nav-cta{display:inline-flex;align-items:center;gap:24px;padding:12px 15px;color:#18140e;background:linear-gradient(120deg,#c5a365,#ebd5a6);border:1px solid #f4d9a0;transition:transform .3s,box-shadow .3s}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px #cdb17430}
.nav-cta span{font-size:0;display:inline-block;position:relative;width:15px;height:15px}
.nav-cta span::after,.button span[aria-hidden]::after,.text-link span::after,.card-link b::after{content:"";position:absolute;right:1px;top:1px;width:9px;height:9px;border-top:1.4px solid currentColor;border-right:1.4px solid currentColor}
.nav-cta span::before,.button span[aria-hidden]::before,.text-link span::before,.card-link b::before{content:"";position:absolute;left:1px;bottom:3px;width:15px;height:1.4px;background:currentColor;transform:rotate(-45deg);transform-origin:left center}
.menu-toggle{display:none;background:transparent;border:0;color:var(--cream);padding:10px;cursor:pointer}
.menu-toggle i{display:block;width:25px;height:10px;margin-left:10px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}
.hero{position:relative;min-height:min(900px,calc(100svh - 86px));height:max(690px,calc(100svh - 86px));overflow:hidden;background:#0b0b0e}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 47%;animation:hero-breathe 19s ease-in-out infinite alternate}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#09090afc 0%,#09090af4 28%,#09090aba 46%,#09090a25 72%,#09090a24 100%),linear-gradient(0deg,#09090ae9 0%,transparent 28%,#09090a40 100%)}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 98%,rgba(219,191,131,.09) 100%),linear-gradient(90deg,transparent 98%,rgba(219,191,131,.06) 100%);background-size:64px 64px;mask-image:linear-gradient(90deg,#000,transparent 56%);opacity:.3}
.hero-inner{position:relative;z-index:2;height:100%;padding:0 var(--gutter);display:flex;flex-direction:column;justify-content:space-between}
.hero-topline,.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}
.hero-topline{padding-top:31px}
.eyebrow,.hero-index,.hero-bottom-note,.section-id,.section-side,.visual-caption,.work-card-index,.item-number,.phase-mark,.scope-note,.contact-label,.contact-measure,.proof-bar,.footer-bottom{font:10px/1.65 var(--mono);letter-spacing:.12em}
.eyebrow,.section-id,.hero-index{color:var(--gold)}
.eyebrow-line{display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin-right:13px}
.hero-index{color:#e2d2b4}
.hero-copy{max-width:760px;margin-top:auto;margin-bottom:auto;padding:75px 0 70px}
.hero-pretitle{font:11px/1.5 var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 19px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--serif);font-weight:400}
h1{font-size:clamp(58px,6.2vw,114px);line-height:.98;letter-spacing:-.064em;margin:0 0 29px;text-wrap:balance}
h1 em,h2 em{font-weight:400;color:var(--gold-light)}
.hero-lede{font-size:clamp(16px,1.25vw,20px);line-height:1.8;max-width:620px;color:#e0d8ca;margin-bottom:33px}
.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;min-width:230px;min-height:60px;padding:16px 18px 16px 20px;font-size:12px;font-weight:700;transition:background .25s,transform .25s,box-shadow .25s}
.button:hover{transform:translateY(-2px)}
.button-gold{background:linear-gradient(120deg,#caa868,#efd9a8);color:#11100d;border:1px solid #edd19b}
.button-gold:hover{box-shadow:0 12px 32px #d8b87a31}
.button-outline{border:1px solid var(--line);background:#0c0c0ed4;color:var(--cream)}
.button-outline:hover{background:#22201b}
.button-quiet{background:#1111139c;border:1px solid #c7a87475;color:var(--cream)}
.button-quiet:hover{background:#222019}
.button span[aria-hidden]{font-size:0;display:inline-block;position:relative;width:17px;height:17px;flex:0 0 17px}
.button-quiet span[aria-hidden]::after{right:4px;top:5px;transform:rotate(135deg)}
.button-quiet span[aria-hidden]::before{left:8px;bottom:15px;width:13px;transform:rotate(90deg)}
.hero-bottom{border-top:1px solid rgba(217,185,120,.38);min-height:74px}
.scroll-cue{display:flex;align-items:center;gap:15px;font-size:11px;color:#d2c6ae}
.scroll-stem{display:block;width:1px;height:31px;background:var(--gold);animation:stem-pulse 2.6s ease-in-out infinite}
.hero-bottom-note{color:#c7bba2}.hero-bottom-note b{color:var(--gold);padding:0 7px}
.drawing{position:absolute;z-index:1;inset:0;pointer-events:none}
.drawing-horizontal,.drawing-vertical{position:absolute;display:block;background:#dfc88d86;box-shadow:0 0 12px #d7bd80a1}
.drawing-horizontal{width:32vw;height:1px;right:2vw;top:40%;transform-origin:left;animation:draw-horizontal 3s 1 both}
.drawing-vertical{width:1px;height:45%;right:20vw;top:21%;transform-origin:top;animation:draw-vertical 3.1s .7s 1 both}
.drawing-node{position:absolute;width:9px;height:9px;border:1px solid var(--gold-light);border-radius:50%;right:20vw;top:40%;background:#f1dca5;box-shadow:0 0 0 8px #edcf8730,0 0 27px 7px #edcf8750;animation:node-pulse 4s infinite}
.drawing-code{position:absolute;right:2vw;top:42%;color:#f4e5c5;font:9px/1.7 var(--mono);letter-spacing:.12em}
.proof-bar{min-height:72px;padding:18px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:22px;background:#171511;border-top:1px solid #d1af693e;border-bottom:1px solid var(--line);color:#e0d0ad}
.proof-bar span+span{border-left:1px solid #d9b87545;padding-left:clamp(14px,3vw,50px)}
.section{padding:clamp(75px,10vw,160px) var(--gutter);scroll-margin-top:86px;overflow:hidden}
.section-frame{display:flex;align-items:center;gap:25px;margin-bottom:clamp(45px,6vw,87px)}
.section-rule{height:1px;background:var(--line);flex:1}
.section-side{color:#998d76;text-align:right}
.section-id{white-space:nowrap}
.marble-section{position:relative;background:#0b0b0c}
.marble-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:url('/assets/black-marble-gold-veins.png') center/cover;opacity:.28}
.marble-section>*{position:relative}
.management-section{background:radial-gradient(ellipse at 0 80%,#34291831,transparent 55%),#0c0c0d}
.management-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(45px,7vw,132px);align-items:center}
.visual-panel{position:relative;overflow:hidden;border:1px solid var(--line);background:#161310;box-shadow:0 30px 80px #0008}
.visual-panel::after{content:"";position:absolute;inset:0;border:1px solid rgba(238,207,150,.14);margin:13px;pointer-events:none}
.management-visual{aspect-ratio:4/5}
.visual-panel img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.18,.69,.21,1)}
.management-visual img{object-position:48% center}
.visual-panel.is-visible img{transform:scale(1.025)}
.visual-caption{position:absolute;left:0;right:0;bottom:0;min-height:53px;padding:17px 19px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#090909de;border-top:1px solid var(--line);color:#dbc896}
.management-copy .eyebrow,.work-intro .eyebrow,.approach-head .eyebrow,.about-copy .eyebrow,.contact-grid .eyebrow{margin-bottom:21px}
h2{font-size:clamp(48px,5.15vw,88px);line-height:1.02;letter-spacing:-.055em;margin-bottom:26px;text-wrap:balance}
.section-lede{font-size:clamp(15px,1.17vw,18px);line-height:1.85;color:#c5bcac;max-width:670px}
.management-list{margin:32px 0 26px;border-top:1px solid var(--line)}
.management-list article{display:flex;gap:23px;padding:23px 0;border-bottom:1px solid var(--line)}
.item-number{color:var(--gold);padding-top:4px}
.management-list h3{font-size:clamp(22px,2vw,32px);letter-spacing:-.025em;margin:0 0 5px}
.management-list p{font-size:13px;line-height:1.7;color:#aca393;margin:0;max-width:450px}
.text-link{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid var(--gold);padding:8px 0 12px;color:var(--gold-light);font-size:12px;font-weight:600}
.text-link span,.card-link b{font-size:0;display:inline-block;position:relative;width:17px;height:17px;flex:0 0 17px}
.work-intro,.approach-head{display:grid;grid-template-columns:1fr .65fr;align-items:end;gap:80px}
.work-intro>p,.approach-head>p{font-size:clamp(15px,1.2vw,19px);line-height:1.85;color:#c2b7a4;max-width:520px;margin-bottom:31px}
.work-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:55px}
.work-card{min-height:365px;padding:31px clamp(22px,2.6vw,42px);background:linear-gradient(148deg,#171512ee,#0c0c0dec);display:flex;flex-direction:column;transition:background .35s,transform .35s}
.work-card:hover{background:linear-gradient(145deg,#322a1c,#11110f)}
.work-card-index{color:var(--gold);margin-bottom:auto}
.work-card h3{font-size:clamp(30px,2.8vw,47px);line-height:1.12;letter-spacing:-.035em;margin:32px 0 16px}
.work-card p{font-size:14px;line-height:1.75;color:#afa797;max-width:330px;margin-bottom:27px}
.card-link{margin-top:auto;border-top:1px solid var(--line);padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#e4c991;font-size:11px;font-weight:600}
.scope-note{color:#a99b80;max-width:940px;margin:28px 0 0;line-height:1.8;letter-spacing:.01em}
.approach-section{background:#0c0d0f}
.phase-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(30px,5vw,75px);position:relative;margin:65px 0 65px}
.phase-line{position:absolute;left:0;right:0;top:22px;height:1px;background:#a78b5c65;overflow:hidden}
.phase-line span{display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent,#f0d9a2,transparent);transform:translateX(-100%);animation:phase-sweep 6s ease-in-out infinite}
.phase{position:relative;z-index:1;padding-top:0}
.phase-mark{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#121212;border:1px solid #dfbf81;color:var(--gold-light);border-radius:50%;margin-bottom:27px;box-shadow:0 0 0 9px #d6b5700a}
.phase h3{font-size:clamp(27px,2.5vw,39px);line-height:1.14;letter-spacing:-.025em;margin-bottom:14px;max-width:330px}
.phase p{font-size:14px;line-height:1.8;color:#afa797;max-width:355px}
.approach-image{height:clamp(330px,40vw,600px)}
.approach-image img{object-position:center 57%}
.about-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(50px,10vw,190px);align-items:center}
.about-monogram{position:relative;aspect-ratio:1;background:radial-gradient(circle at center,#3c2c154d,transparent 60%);display:flex;align-items:center;justify-content:center;border:1px solid #bb9b604a}
.about-monogram::before,.about-monogram::after{content:"";position:absolute;left:8%;right:8%;top:50%;height:1px;background:#b8955c4d}
.about-monogram::after{transform:rotate(90deg)}
.about-monogram span{font:clamp(82px,12vw,185px)/1 var(--serif);letter-spacing:-.11em;color:#e0c083;z-index:1;text-shadow:0 0 42px #bf965d47}
.about-monogram small{position:absolute;bottom:23px;color:#b9a074;font:9px/1.5 var(--mono);letter-spacing:.12em}
.monogram-corner{position:absolute;width:24px;height:24px;border-color:var(--gold);border-style:solid}
.tl{top:15px;left:15px;border-width:1px 0 0 1px}.tr{top:15px;right:15px;border-width:1px 1px 0 0}.bl{bottom:15px;left:15px;border-width:0 0 1px 1px}.br{bottom:15px;right:15px;border-width:0 1px 1px 0}
.about-copy>p:not(.eyebrow){font-size:clamp(15px,1.25vw,19px);line-height:1.9;color:#c7bdab;max-width:720px;margin-bottom:30px}
.contact-section{background:radial-gradient(ellipse at 20% 80%,#4330153d,transparent 48%),#10100f}
.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(55px,8vw,160px);align-items:center}
.contact-grid .section-lede{margin-bottom:30px}
.contact-direct{position:relative;padding:35px 35px 42px;border:1px solid #c5a66c88;min-width:0;background:linear-gradient(143deg,#2d2418a8,#11100eed)}
.contact-direct::before{content:"";position:absolute;inset:9px;border:1px solid #be9b5830;pointer-events:none}
.contact-label{display:block;color:var(--gold);margin-bottom:33px}
.contact-phone{display:block;font:clamp(28px,2.8vw,47px)/1.16 var(--serif);letter-spacing:-.03em;margin-bottom:20px}
.contact-email{display:block;color:#dfc48c;font-size:clamp(13px,1vw,16px);overflow-wrap:anywhere}
.contact-rule{height:1px;background:var(--line);margin:37px 0 23px}
.contact-direct p{font-size:13px;line-height:1.8;color:#beb09a}
.contact-measure{color:#8e7954}
.site-footer{background:#080809;border-top:1px solid var(--line);padding:55px var(--gutter) 85px}
.footer-main{display:flex;justify-content:space-between;gap:50px}
.footer-brand{font:clamp(25px,2.5vw,38px)/1.1 var(--serif);letter-spacing:.075em}
.footer-brand span{display:block;color:var(--gold);font:9px/2 var(--sans);font-weight:700;letter-spacing:.38em;margin-top:5px}
.footer-main p{font-size:12px;line-height:1.8;color:#958a76;margin-top:23px}
.footer-main nav{display:grid;grid-template-columns:repeat(2,minmax(115px,1fr));gap:12px 38px;color:#c9bda9;font-size:12px}
.footer-main nav a:hover,.footer-bottom a:hover{color:var(--gold-light)}
.footer-bottom{display:flex;gap:25px;justify-content:space-between;border-top:1px solid var(--line);margin-top:55px;padding-top:20px;color:#807764;line-height:1.75;letter-spacing:0}
.footer-bottom span:nth-child(2){max-width:440px}
.motion-toggle{position:fixed;right:22px;bottom:19px;z-index:101;display:flex;align-items:center;gap:9px;padding:11px 14px;background:#11100fe8;color:#e9d5a3;border:1px solid #c6a96d80;font:10px/1.3 var(--mono);letter-spacing:.02em;cursor:pointer;backdrop-filter:blur(10px)}
.motion-toggle:hover{background:#2a2117}
.motion-toggle-icon{font-size:12px}
.reveal{opacity:1;transform:none}
.js-reveal[data-motion="on"] .reveal{opacity:0;transform:translateY(32px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.75,.2,1)}
.js-reveal[data-motion="on"] .reveal.is-visible{opacity:1;transform:translateY(0)}
html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@keyframes hero-breathe{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes stem-pulse{0%,100%{opacity:.3;transform:scaleY(.55);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}
@keyframes draw-horizontal{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
@keyframes draw-vertical{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}
@keyframes node-pulse{0%,100%{box-shadow:0 0 0 7px #edcf8721,0 0 15px #edcf8738}50%{box-shadow:0 0 0 15px #edcf8718,0 0 35px #edcf876b}}
@keyframes phase-sweep{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}
@media(max-width:1150px){.site-nav{gap:17px}.site-nav>a:not(.nav-cta){font-size:10px}.hero-shade{background:linear-gradient(90deg,#09090afc,#09090ad6 48%,#09090a4d),linear-gradient(0deg,#09090aea,transparent 30%)}}
@media(max-width:900px){.site-header{height:73px}.menu-toggle{display:flex;align-items:center}.site-nav{position:absolute;top:73px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:#0b0b0cf5;border-bottom:1px solid var(--line);padding:15px var(--gutter) 28px;box-shadow:0 25px 40px #0009}.site-nav.is-open{display:flex}.site-nav>a:not(.nav-cta){padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.nav-cta{margin-top:18px;justify-content:space-between}.hero{height:auto;min-height:700px}.hero-copy{padding:115px 0 80px}.hero-image{object-position:59% center}.hero-index{display:none}.hero-shade{background:linear-gradient(90deg,#09090af6,#09090ac9 65%,#09090a69),linear-gradient(0deg,#09090aec,transparent 27%)}.management-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.management-visual{aspect-ratio:16/9}.management-copy{max-width:730px}.work-intro,.approach-head{grid-template-columns:1fr;gap:0}.work-intro>p,.approach-head>p{margin-top:0}.about-monogram{width:min(470px,100%)}.contact-direct{max-width:580px}.section{scroll-margin-top:73px}}
@media(max-width:650px){:root{--gutter:24px}.site-header{padding-inline:var(--gutter)}.brand-name{font-size:20px}.brand-name small{font-size:6px}.brand-mark{width:40px;height:48px}.brand-mark img{width:180px;left:-70px;top:-9px}.hero{min-height:650px}.hero-topline{padding-top:22px}.hero-topline .eyebrow{font-size:8px;letter-spacing:.07em}.eyebrow-line{width:14px;margin-right:5px}.hero-copy{padding:95px 0 80px}.hero-pretitle{font-size:9px}.hero h1{font-size:clamp(51px,12vw,77px);letter-spacing:-.06em}.hero-lede{font-size:15px;line-height:1.75}.hero-actions,.contact-actions{flex-direction:column;align-items:stretch}.button{min-width:0;width:100%;min-height:56px}.hero-bottom-note{display:none}.hero-bottom{min-height:56px}.drawing-horizontal{width:55vw;top:38%;opacity:.6}.drawing-vertical,.drawing-node,.drawing-code{display:none}.proof-bar{justify-content:center;text-align:center;min-height:61px;padding-block:14px}.proof-bar span:not(:first-child){display:none}.section{padding-block:78px}.section-frame{gap:12px;margin-bottom:45px}.section-id,.section-side{font-size:8px}.section-side{display:none}.management-visual{aspect-ratio:4/3}.visual-caption{font-size:7px;min-height:41px;padding:11px}.management-grid{gap:44px}.section h2{font-size:clamp(45px,11vw,66px)}.management-list article{gap:15px}.work-cards{grid-template-columns:1fr;margin-top:29px}.work-card{min-height:280px;padding:25px}.work-card-index{margin-bottom:0}.work-card h3{margin:25px 0 12px}.work-card p{margin-bottom:23px}.scope-note{font-size:10px}.phase-track{grid-template-columns:1fr;margin:35px 0 45px;gap:26px}.phase-line{left:22px;right:auto;top:0;bottom:0;width:1px;height:auto}.phase-line span{width:100%;height:100%;background:linear-gradient(transparent,#efd39a,transparent);transform:translateY(-100%)}.phase{padding-left:68px;min-height:120px}.phase-mark{position:absolute;left:0;top:0}.phase h3{font-size:29px}.phase p{margin-bottom:0}.approach-image{height:350px}.about-grid{gap:45px}.about-monogram{max-width:360px;margin:auto}.contact-grid{gap:38px}.contact-direct{padding:27px}.site-footer{padding-block:45px 95px}.footer-main{flex-direction:column}.footer-bottom{flex-direction:column;gap:8px;margin-top:37px}.motion-toggle{right:13px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion="on"]){scroll-behavior:auto}html:not([data-motion="on"]) *,html:not([data-motion="on"]) *::before,html:not([data-motion="on"]) *::after{animation:none!important;transition:none!important}}
