@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Roboto+Condensed:wght@400;500;600&family=Roboto+Mono:wght@400;500&display=swap');

:root{--void:#0b0b0b;--abyss:#050505;--charcoal:#202222;--bone:#edebe7;--bone-dark:#d9d4cc;--bronze:#a9784f;--bronze-light:#cfaa89;--white:#fff;--line:rgba(237,235,231,.22);--dark-line:rgba(11,11,11,.18);--display:"Roboto Condensed","Arial Narrow",Arial,sans-serif;--body:"Inter",Arial,sans-serif;--mono:"Roboto Mono",monospace;--pad:clamp(20px,4vw,64px);--container:1400px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--void)}
body{margin:0;background:var(--void);color:var(--white);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:10;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,a,summary{outline-offset:5px}
:focus-visible{outline:2px solid var(--bronze-light)}
.skip-link{position:fixed;top:12px;left:12px;z-index:1000;background:var(--bone);color:var(--void);padding:10px 18px;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{height:92px;padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:absolute;inset:0 0 auto;z-index:5}
.brand{display:flex;align-items:center;gap:13px;width:max-content}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--bronze);border-radius:50%;font:500 16px/1 var(--display);letter-spacing:-.03em}.brand-name{font:500 16px/1.05 var(--display);text-transform:uppercase;letter-spacing:.01em}.brand-name small{font:400 10px/1 var(--mono);color:#b8b6b0;letter-spacing:.04em}
.nav{display:flex;gap:32px;font:400 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.04em}.nav a{position:relative}.nav a::after,.text-link::after,.social-link::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:currentColor;transition:right .35s ease}.nav a:hover::after,.text-link:hover::after,.social-link:hover::after{right:0}
.header-cta{justify-self:end}
.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px;padding:10px 21px;border:1px solid;border-radius:999px;font:500 13px/1 var(--display);text-transform:uppercase;letter-spacing:.03em;transition:background .25s,color .25s,border-color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button-ghost{border-color:rgba(255,255,255,.52)}.button-ghost:hover{background:var(--white);color:var(--void);border-color:var(--white)}.button-light{background:var(--bone);border-color:var(--bone);color:var(--void)}.button-light:hover{background:var(--bronze-light);border-color:var(--bronze-light)}
.hero{min-height:100svh;padding:clamp(145px,17vh,190px) var(--pad) 54px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr) minmax(120px,.3fr);gap:clamp(28px,4vw,72px);align-items:center;position:relative;overflow:hidden;max-width:1600px;margin:auto}
.hero::before{content:"";position:absolute;width:42vw;height:42vw;border:1px solid rgba(169,120,79,.16);border-radius:50%;right:10vw;top:14vh;pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:760px}.eyebrow{margin:0 0 32px;display:flex;align-items:center;gap:12px;font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#c8c6c0}.eyebrow>span{display:block;width:26px;height:1px;background:var(--bronze)}
h1,h2,h3,p{margin-top:0}.hero h1,.section-intro h2,.presence-heading h2,.contact h2{font-family:var(--display);font-weight:400;letter-spacing:-.045em;line-height:.94}.hero h1{font-size:clamp(58px,7.7vw,126px);max-width:900px;margin:0 0 34px}.hero h1 em,.section-intro h2 em,.experience h2 em,.presence h2 em,.contact h2 em{color:var(--bronze-light);font-style:normal}.hero-support{max-width:580px;color:#bbb9b3;font-size:clamp(15px,1.35vw,19px);line-height:1.7}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:42px;flex-wrap:wrap}.text-link{position:relative;font:500 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.04em}.hero-portrait{margin:0;align-self:stretch;min-height:540px;max-height:780px;position:relative;border-radius:10px;overflow:hidden}.hero-portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,11,.04),rgba(11,11,11,.35));pointer-events:none}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:saturate(.78) contrast(1.05)}.hero-portrait figcaption{position:absolute;bottom:18px;left:18px;right:18px;z-index:1;display:flex;justify-content:space-between;font:400 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em}.hero-proof{align-self:end;padding-bottom:30px}.proof-stars,.rating-meta span{color:var(--bronze-light);font-size:12px;letter-spacing:3px}.hero-proof strong{display:block;font:400 clamp(48px,5vw,76px)/1 var(--display);letter-spacing:-.06em;margin:9px 0}.hero-proof p{font:400 10px/1.7 var(--mono);text-transform:uppercase;color:#9f9d98}.hero-index{position:absolute;bottom:25px;left:var(--pad);font:400 9px/1 var(--mono);color:#74736f}
.signal-strip{min-height:74px;padding:20px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--bone);color:var(--void);font:500 clamp(12px,1.2vw,16px)/1 var(--display);text-transform:uppercase;letter-spacing:.02em;overflow:hidden}.signal-strip p{margin:0;white-space:nowrap}.signal-strip span{color:var(--bronze)}
.section-shell{max-width:var(--container);margin:auto;padding:clamp(90px,10vw,150px) var(--pad)}.section-intro{display:grid;grid-template-columns:.45fr 1.4fr .65fr;gap:clamp(24px,4vw,70px);align-items:start;margin-bottom:clamp(70px,8vw,120px)}.section-intro .eyebrow{margin-top:12px}.section-intro h2{font-size:clamp(44px,5vw,78px);margin:0}.section-intro>p:last-child{color:#a7a5a0;margin-top:12px;line-height:1.75}
.path-list{border-top:1px solid var(--line)}.path{border-bottom:1px solid var(--line)}.path summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:70px 1.1fr .7fr 32px;gap:24px;align-items:center;padding:32px 0}.path summary::-webkit-details-marker{display:none}.path-number{font:400 10px/1 var(--mono);color:var(--bronze-light)}.path-question{font-size:14px;color:#aaa8a3}.path-title{font:400 clamp(31px,3.2vw,50px)/1 var(--display);letter-spacing:-.03em}.path-toggle{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;position:relative}.path-toggle::before,.path-toggle::after{content:"";position:absolute;background:var(--white);width:10px;height:1px;left:8px;top:13px}.path-toggle::after{transform:rotate(90deg);transition:transform .25s}.path[open] .path-toggle::after{transform:rotate(0)}.path-body{margin-left:calc(70px + 24px);padding:0 64px 36px 0;display:grid;grid-template-columns:1fr .7fr;gap:40px;color:#aaa8a3}.path-body p{max-width:600px}.path-body a{justify-self:start;align-self:start;color:var(--bronze-light);font:500 11px/1.4 var(--mono);text-transform:uppercase}
.experience{max-width:1600px;margin:auto;padding:40px var(--pad) clamp(100px,11vw,170px);display:grid;grid-template-columns:minmax(300px,.85fr) minmax(400px,1.15fr);gap:clamp(50px,9vw,150px);align-items:center}.image-frame{position:relative;overflow:hidden;border-radius:10px;background:var(--charcoal)}.experience-image{height:min(75vw,820px)}.experience-image img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.68) contrast(1.04)}.image-label,.image-frame figcaption{position:absolute;bottom:0;left:0;right:0;padding:15px 18px;background:rgba(11,11,11,.78);backdrop-filter:blur(8px);font:400 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.07em}.experience-content{max-width:680px}.experience-content h2{font:400 clamp(48px,5.2vw,80px)/.95 var(--display);letter-spacing:-.045em;margin-bottom:35px}.lead-copy{color:#aaa8a3;max-width:570px;font-size:17px}.method-list{list-style:none;margin:55px 0 0;padding:0;border-top:1px solid var(--line)}.method-list li{display:grid;grid-template-columns:55px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:23px 0}.method-list li>span{font:400 10px/1.8 var(--mono);color:var(--bronze-light)}.method-list h3{font:400 23px/1 var(--display);margin-bottom:8px}.method-list p{color:#8f8e89;font-size:13px;margin:0}
.testimonials{background:var(--bone);color:var(--void);padding:clamp(90px,10vw,150px) var(--pad);display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(50px,10vw,170px)}.rating-display{position:sticky;top:50px;align-self:start}.eyebrow.dark{color:#555}.rating-number{font:400 clamp(120px,18vw,280px)/.8 var(--display);letter-spacing:-.09em;margin:45px 0}.rating-meta{display:flex;align-items:center;gap:30px}.rating-meta span{color:#8f5e38}.rating-meta p{margin:0;font:500 10px/1.7 var(--mono);text-transform:uppercase}.testimonial-stream article{padding:18px 0 55px;margin-bottom:45px;border-bottom:1px solid var(--dark-line)}blockquote{margin:0 0 35px;font:400 clamp(26px,3.1vw,48px)/1.18 var(--display);letter-spacing:-.025em}.testimonial-stream article p{font:500 11px/1 var(--mono);text-transform:uppercase}.testimonial-stream article p span{color:#777}.dark-link{display:inline-block;color:var(--void)}
.presence-heading{display:grid;grid-template-columns:.5fr 1.5fr;gap:40px;margin-bottom:70px}.presence-heading h2{font-size:clamp(48px,6vw,90px);max-width:900px;margin:0}.presence-grid{display:grid;grid-template-columns:1.05fr .95fr .75fr;grid-template-rows:400px 430px;gap:16px}.presence-grid figure{margin:0}.presence-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.team-photo{grid-row:1/3}.team-photo img{object-position:center 20%}.office-photo{grid-column:2/4}.office-photo img{object-position:center}.address-card{background:var(--charcoal);border:1px solid var(--line);border-radius:10px;padding:34px;display:flex;flex-direction:column;align-items:flex-start}.map-pin{width:14px;height:14px;border-radius:50%;background:var(--bronze);box-shadow:0 0 0 7px rgba(169,120,79,.12);margin-bottom:auto}.mono{font:400 9px/1 var(--mono);color:#8e8d89}.address-card h3{font:400 clamp(30px,3vw,45px)/.95 var(--display);letter-spacing:-.03em;margin:16px 0}.address-card address{font-style:normal;color:#aaa8a3;font-size:13px;margin-bottom:24px}.building-photo img{object-position:center}
.contact{max-width:1600px;margin:auto;padding:clamp(110px,14vw,210px) var(--pad) 90px;text-align:center;border-top:1px solid var(--line);position:relative;overflow:hidden}.contact::before{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(169,120,79,.16);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-45%);pointer-events:none}.contact .eyebrow{justify-content:center}.contact h2{font-size:clamp(55px,8.5vw,130px);position:relative;margin:0 auto 65px}.contact-actions{position:relative;display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap}.button-large{min-height:60px;padding:14px 28px}.button svg{width:20px;height:20px;fill:currentColor}.social-link{position:relative;display:flex;align-items:center;gap:10px;font:500 11px/1 var(--mono);text-transform:uppercase}.social-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.social-link svg .fill-dot{fill:currentColor;stroke:none}.phone-icon{width:20px;height:20px;border:1px solid;border-radius:50%;display:grid;place-items:center}.contact-note{position:relative;max-width:690px;margin:55px auto 0;color:#6f6f6b;font:400 9px/1.7 var(--mono);text-transform:uppercase}
.site-footer{border-top:1px solid var(--line);padding:55px var(--pad) 25px;display:grid;grid-template-columns:1.4fr 1fr 1fr .6fr;gap:40px;color:#aaa8a3;font:400 11px/1.8 var(--mono);text-transform:uppercase}.footer-brand{display:flex;gap:15px;align-items:flex-start;color:var(--white);font-family:var(--display);font-size:16px;line-height:1.15}.footer-brand small{color:#777;font:400 9px/1 var(--mono)}.site-footer address{font-style:normal}.footer-links{display:flex;flex-direction:column;align-items:flex-start}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;margin:20px 0 0;color:#5e5e5a;font-size:8px}
@media (max-width:1050px){.site-header{grid-template-columns:1fr auto}.nav{display:none}.hero{grid-template-columns:1.15fr .85fr}.hero-proof{display:none}.section-intro{grid-template-columns:1fr 1.8fr}.section-intro>p:last-child{grid-column:2}.presence-grid{grid-template-columns:1fr 1fr;grid-template-rows:600px 370px 370px}.team-photo{grid-row:1;grid-column:1}.office-photo{grid-row:1;grid-column:2}.address-card{grid-row:2;grid-column:1}.building-photo{grid-row:2;grid-column:2}.site-footer{grid-template-columns:1fr 1fr}.footer-bottom{grid-column:1/-1}}
@media (max-width:760px){:root{--pad:20px}.site-header{height:76px}.brand-mark{width:36px;height:36px}.brand-name{font-size:14px}.header-cta{padding:8px 13px;min-height:38px}.header-cta span{display:none}.hero{padding-top:115px;min-height:auto;grid-template-columns:1fr;gap:48px}.hero::before{width:90vw;height:90vw;right:-35vw}.hero h1{font-size:clamp(55px,17vw,85px)}.hero-portrait{min-height:600px;max-height:75vh}.hero-index{display:none}.signal-strip{justify-content:flex-start;overflow-x:auto}.section-intro{display:block}.section-intro .eyebrow{margin-bottom:28px}.section-intro h2{margin-bottom:30px}.path summary{grid-template-columns:40px 1fr 28px;padding:25px 0}.path-question{display:none}.path-title{font-size:35px}.path-toggle{grid-column:3}.path-body{margin-left:64px;padding-right:0;grid-template-columns:1fr;gap:16px}.experience{grid-template-columns:1fr}.experience-image{height:680px}.experience-content h2{font-size:50px}.testimonials{grid-template-columns:1fr}.rating-display{position:static}.rating-number{font-size:150px}.presence-heading{display:block}.presence-heading h2{font-size:54px}.presence-grid{display:flex;flex-direction:column}.presence-grid>*{height:470px}.office-photo,.address-card,.building-photo{height:330px}.contact h2{font-size:58px}.contact-actions{flex-direction:column}.site-footer{grid-template-columns:1fr}.footer-bottom{grid-column:1}.footer-links{gap:5px}}
@media (max-width:430px){.brand-name small{display:none}.header-cta{font-size:11px}.hero-portrait{min-height:520px}.hero-actions{align-items:flex-start;flex-direction:column}.experience-image{height:560px}.presence-grid>*{height:420px}.office-photo,.address-card,.building-photo{height:300px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
