@charset "UTF-8";

:root{--paper:#f6f3ec;--ink:#162638;--muted:#59616c;--line:#d2d0ca;--accent:#f0a178;--dark-line:#435163;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:"Avenir Next",Avenir,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent);color:var(--ink)}
a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:3px solid #ba4e2e;outline-offset:7px}
svg{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:500;line-height:1.04;letter-spacing:-.055em;text-wrap:balance}
.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.skip-link{position:fixed;left:24px;top:-100px;background:var(--accent);padding:12px 20px;z-index:10}
.skip-link:focus{top:16px}
.site-header{height:116px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.wordmark{display:inline-flex;align-items:center;gap:10px;font-weight:650;font-size:27px;letter-spacing:-1.2px;line-height:1.2}
.wordmark img{display:block;width:215px;height:auto}

nav{display:flex;align-items:center;gap:39px;font-size:14px;font-weight:600}
nav a:not(.nav-contact){padding-block:12px}
nav a:hover,.text-link:hover{color:#ad472b}
.nav-contact{border:1px solid var(--ink);padding:10px 18px;border-radius:100px;display:flex;gap:27px;align-items:center}
.nav-contact:hover{background:var(--ink);color:var(--paper)}
.hero{padding-top:66px;display:grid;grid-template-columns:1fr .92fr;column-gap:64px}
.eyebrow{font:500 11px/1.6 var(--mono);letter-spacing:.11em;text-transform:uppercase}
.hero .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:27px}
.small-star{font-family:var(--sans);font-size:27px;line-height:1}
h1{font-size:clamp(64px,6.4vw,94px);line-height:.99;letter-spacing:-.07em}
h1 span{color:#ad472b}
.hero-description{font-size:18px;line-height:1.65;max-width:440px;margin-top:28px;color:var(--muted)}
.button{display:inline-flex;gap:36px;align-items:center;justify-content:space-between;border-radius:100px;padding:17px 24px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}
.button:hover{transform:translateY(-2px)}
.button-dark{background:var(--ink);color:var(--paper);margin-top:32px}
.button-dark:hover{background:#30445d}
.button span{font-size:22px;font-weight:400;line-height:1}
.text-link{font-size:13px;font-weight:600}
.explore{display:inline-flex;gap:14px;margin-left:24px}
.hero-art{background:var(--ink);border-radius:3px;min-height:560px;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;color:#e6dfd6}
.art-top,.art-bottom{display:flex;justify-content:space-between;gap:14px;position:relative;z-index:1;font:10px/1.5 var(--mono);letter-spacing:.08em;padding:24px 27px;color:#bbc5d0}
.art-bottom{border-top:1px solid #38495e;margin-inline:27px;padding:22px 0}
.art-coordinate{color:#f0a178}
.orbital{position:absolute;width:115%;max-width:none;height:auto;top:50%;left:50%;transform:translate(-50%,-50%)}
.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:38px 0 31px;margin-bottom:0;color:var(--muted);font-size:13px}
.hero-foot>span:last-child{font:10px/1.5 var(--mono);letter-spacing:.08em}
.services{padding:106px 0 91px}
.section-heading{display:flex;justify-content:space-between;gap:48px;align-items:flex-start;margin-bottom:64px}
.section-heading .eyebrow{padding-top:9px}
h2{font-size:clamp(40px,4vw,59px);line-height:1.08}
.section-heading h2{width:67%}
.service-row{display:grid;grid-template-columns:60px 1.06fr 1.24fr 36px;gap:32px;border-top:1px solid var(--line);padding:42px 0 48px;align-items:start}
.service-row:last-child{border-bottom:1px solid var(--line)}
.service-number{font:12px/1.6 var(--mono);padding-top:7px;color:var(--muted)}
h3{font-size:37px;line-height:1.15;letter-spacing:-.04em}
.service-name>p{font-size:13px;margin-top:17px;color:var(--muted)}
.service-detail>p{max-width:480px;font-size:16px;line-height:1.75;color:var(--muted)}
.service-detail ul{list-style:none;padding:0;margin:25px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.service-detail li{border:1px solid var(--line);border-radius:100px;padding:6px 10px;font:10px/1.5 var(--mono)}
.service-arrow{font-size:35px;font-weight:400;line-height:1.1}
.about{display:grid;grid-template-columns:1fr 1fr;gap:84px;padding:15px 0 115px}
.about h2{margin-top:29px}
.signature{display:flex;align-items:center;gap:18px;margin-top:46px}
.signature strong{display:block;font-size:15px;font-weight:600}
.signature div>span{display:block;font-size:12px;color:var(--muted);margin-top:1px}
.avatar{display:block;width:60px;height:60px;object-fit:cover;border-radius:50%;flex:0 0 60px}
.about-copy{padding-top:46px}
.large-copy{font-size:24px;line-height:1.55;letter-spacing:-.025em}
.about-copy>p+p{font-size:16px;line-height:1.75;color:var(--muted);margin-top:22px;max-width:510px}
.approach{border-top:1px solid var(--line);margin-top:30px;padding-top:27px;display:flex;gap:22px;align-items:flex-start}
.approach .small-star{font-size:31px;color:#ad472b}
.approach p{font-size:14px;line-height:1.65}
.contact{background:var(--ink);color:var(--paper);overflow:hidden}
.contact-inner{position:relative;padding-block:86px 90px;display:flex;align-items:center;justify-content:space-between;gap:100px}
.contact .eyebrow{color:var(--accent);margin-bottom:25px}
.contact h2{font-size:clamp(50px,5.8vw,84px);letter-spacing:-.055em}
.contact p:not(.eyebrow){max-width:430px;font-size:16px;color:#c1cbd6;margin-top:25px}
.email-link{font-size:clamp(21px,2.2vw,31px);border-bottom:1px solid #8190a2;display:inline-flex;gap:32px;align-items:center;padding-bottom:7px;margin-top:32px;letter-spacing:-.02em}
.email-link:hover{color:var(--accent)}
.email-link:focus-visible,.contact a:focus-visible{outline-color:var(--accent)}
.contact-star{width:230px;height:230px;margin-right:6%;color:var(--accent);transform:rotate(12deg);flex-shrink:0}
.site-footer{min-height:126px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.site-footer .wordmark{font-size:23px}
.site-footer .wordmark img{width:190px}
.site-footer p,.site-footer small{font-size:11px;color:var(--muted)}
@media(min-width:1550px){.hero{padding-top:76px}.hero-art{min-height:590px}}
@media(max-width:1150px){.wrap{width:calc(100% - 72px)}.hero{column-gap:35px}.hero-art{min-height:535px}.hero .eyebrow{font-size:10px;letter-spacing:.04em}.hero-description{font-size:17px}.explore{display:flex;margin-left:0;margin-top:20px}.art-top,.art-bottom{font-size:8px}.service-row{grid-template-columns:40px 1fr 1.1fr 28px;gap:23px}.about{gap:55px}.contact-star{width:190px;height:190px;margin-right:2%}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.site-header{height:88px}.wordmark{font-size:24px}.wordmark img{width:185px}nav{gap:24px}nav a:not(.nav-contact){display:none}.nav-contact{padding:9px 15px;gap:18px;font-size:12px}.hero{padding-top:40px;grid-template-columns:1fr;gap:36px}.hero .eyebrow{font-size:10px;letter-spacing:.05em;margin-bottom:24px}h1{font-size:clamp(60px,12.1vw,88px)}.hero-description{max-width:450px}.button-dark{margin-top:26px}.explore{display:inline-flex;margin-left:24px;margin-top:0}.hero-art{min-height:430px}.orbital{width:100%;max-height:600px}.art-top,.art-bottom{font-size:9px}.hero-foot{padding:0 0 27px;margin-top:-9px;gap:20px;font-size:12px}.hero-foot>span:last-child{display:none}.services{padding:69px 0 65px}.section-heading{display:block;margin-bottom:38px}.section-heading .eyebrow{padding:0;margin-bottom:24px}.section-heading h2{width:100%;font-size:45px}.service-row{grid-template-columns:30px 1fr 26px;gap:17px;padding:30px 0 34px}.service-name{grid-column:2}.service-detail{grid-column:2;grid-row:2}.service-arrow{grid-column:3;grid-row:1}.service-name h3{font-size:31px}.service-name h3 br{display:none}.service-name>p{margin-top:9px}.service-detail>p{font-size:15px;max-width:none}.service-detail ul{margin-top:20px}.service-number{font-size:10px}.about{grid-template-columns:1fr;gap:33px;padding:0 0 70px}.about h2{font-size:45px;margin-top:23px}.signature{margin-top:28px}.about-copy{padding:0}.large-copy{font-size:22px;max-width:580px}.about-copy>p+p{max-width:580px}.approach p br{display:none}.approach p{max-width:270px}.contact-inner{padding-block:65px 68px;gap:25px}.contact h2{font-size:57px}.contact-star{width:140px;height:140px;margin-right:-50px;opacity:.8}.contact p:not(.eyebrow){font-size:15px;max-width:360px}.email-link{font-size:23px;gap:23px}.site-footer{flex-wrap:wrap;justify-content:space-between;gap:15px;padding-block:27px;min-height:0}.site-footer p{display:none}}
@media(max-width:430px){.hero-art{min-height:350px}.art-top{padding:21px}.art-bottom{margin-inline:21px;padding-block:19px;font-size:8px}.explore{margin-left:17px;font-size:12px}.button{padding:15px 19px;gap:23px;font-size:13px}.hero-description{font-size:16px}.contact-inner{display:block}.contact-star{position:absolute;width:100px;height:100px;top:30px;right:-44px;opacity:.32}.contact h2{font-size:52px}.service-detail li{font-size:9px}.about h2,.section-heading h2{font-size:41px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
@media(max-width:360px){.site-header .wordmark img{width:158px}.nav-contact{white-space:nowrap;gap:12px}.explore{display:flex;margin:18px 0 0}}
