:root{
  --dark:#131a21;
  --dark2:#10161c;
  --paper:#f4f2eb;
  --paper-2:#ecebe4;
  --white:#ffffff;
  --yellow:#e3d44f;
  --ink:#1c232b;
  --muted:#59636b;
  --line:#d7d8d0;
  --steel:#94a4ab;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:82px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Inter',Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}
h1,h2,h3,p,blockquote{margin-top:0}
h1,h2,h3,blockquote{font-family:'Space Grotesk',sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit}
button:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.wrap{width:min(1200px,calc(100% - 88px));margin-inline:auto}
.skip{position:absolute;left:12px;top:-100px;padding:12px;background:var(--yellow);z-index:1000}
.skip:focus{top:10px}

.header{height:82px;background:#f6f5f1;position:sticky;top:0;z-index:40;border-bottom:1px solid #e5e4df}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%}
.wordmark{display:inline-flex;align-items:flex-end;gap:0;line-height:1}
.wordmark-text{font-family:'Nunito Sans',sans-serif;font-size:30px;font-weight:900;letter-spacing:-.06em;text-transform:lowercase;color:#151b22}
.wordmark-dot{font-family:'Nunito Sans',sans-serif;color:var(--yellow);font-size:37px;font-weight:900;transform:translateY(-1px)}
.nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:700}
.nav>a:hover{color:#9d900d}.nav .nav-contact{background:var(--dark);color:#fff;padding:12px 17px}.nav .nav-contact:hover{color:var(--yellow)}
.nav-toggle{display:none}

.hero{position:relative;overflow:hidden;background:var(--dark2);color:#fff;isolation:isolate}
.hero-grid{position:absolute;inset:0;background:
  linear-gradient(90deg,transparent 0 94%,rgba(255,255,255,.06) 94% 94.2%,transparent 94.2%),
  linear-gradient(0deg,transparent 0 93%,rgba(255,255,255,.04) 93% 93.2%,transparent 93.2%);
  background-size:102px 102px;opacity:.34}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 24%,rgba(227,212,79,.14),transparent 24%),linear-gradient(90deg,#10161c 0%,rgba(16,22,28,.96) 40%,rgba(16,22,28,.6) 100%);z-index:-1}
.hero-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;min-height:760px;padding:92px 0 46px}
.hero-copy{display:flex;flex-direction:column;height:100%}
.eyebrow,.section-index{font-size:11px;letter-spacing:.155em;font-weight:800}
.eyebrow{display:flex;gap:15px;align-items:center;color:#d0d5d8}
.eyebrow-line{width:28px;height:2px;background:var(--yellow)}
.hero h1{font-size:clamp(3.8rem,7vw,7rem);letter-spacing:-.075em;line-height:1.04;margin:34px 0 24px;font-weight:700;max-width:920px}
.hero h1 em{color:var(--yellow);font-style:normal}
.yellow{color:var(--yellow)}
.hero-copy>p{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.65;max-width:560px;color:#d6dbe0}
.hero-actions{display:flex;gap:30px;align-items:center;margin-top:28px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 21px;font-weight:800;font-size:13px;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-3px)}
.btn-accent{color:#141a20;background:var(--yellow)}
.btn span,.text-link span{font-size:20px;font-weight:400}
.text-link{display:inline-flex;gap:26px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:13px;font-weight:800}
.text-link.light{color:white}
.hero-bottom{margin-top:auto;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em;color:#a6afb7;padding-top:56px}
.hero-visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:620px}
.hero-visual svg{width:100%;max-width:680px;display:block;filter:drop-shadow(0 22px 34px rgba(0,0,0,.28))}
.visual-label{position:absolute;right:4px;bottom:12px;font-size:10px;letter-spacing:.18em;color:#9eabb4}

.section{padding:112px 0}
.section-index{margin-bottom:35px;color:#747c81}
h2{font-size:clamp(2.35rem,4.6vw,4.85rem);line-height:1.11;letter-spacing:-.055em;font-weight:700}
h2 em,blockquote em{font-style:normal;color:#a89d2b}
h3{line-height:1.18;letter-spacing:-.03em}
.split{display:grid;grid-template-columns:1.08fr .85fr;gap:11%}
.thesis h2{max-width:650px}
.underline-accent{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:8px;text-underline-offset:10px}
.section-prose{padding-top:35px;font-size:17px;line-height:1.85;color:#434d55}
.section-prose p{margin-bottom:23px}
.section-prose strong{color:var(--ink)}

.human-strip{padding-top:0;background:linear-gradient(180deg,var(--paper) 0%,#f0efe8 100%)}
.human-layout{display:grid;grid-template-columns:1fr .85fr;gap:52px;align-items:center;padding:0 0 12px}
.human-copy h2{max-width:660px;margin-bottom:18px}
.human-copy p{max-width:620px;color:#556068;font-size:17px;line-height:1.82}
.human-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mini-card{background:#f9f8f3;min-height:170px;position:relative;overflow:hidden;border:1px solid #dddcd5}
.mini-face::before{content:"";position:absolute;inset:0;background:
 radial-gradient(circle at 52% 34%,#1d252d 0 5px,transparent 6px),
 radial-gradient(circle at 61% 59%,transparent 0 31px,#1d252d 32px 35px,transparent 36px),
 radial-gradient(circle at 49% 33%,#ece7db 0 48px,transparent 49px),
 linear-gradient(180deg,transparent 0 58%,#ece7db 58% 100%);
}
.mini-circle::before{content:"";position:absolute;width:120px;height:120px;border:28px solid var(--yellow);border-radius:50%;right:-22px;bottom:-28px}
.mini-circle::after{content:"";position:absolute;width:60px;height:60px;background:#1d2730;left:28px;top:34px}
.mini-steps::before{content:"";position:absolute;left:22px;right:22px;bottom:24px;top:24px;background:linear-gradient(135deg,#1d2730 0 28%,transparent 28% 100%)}
.mini-steps::after{content:"";position:absolute;width:86px;height:86px;border:16px solid #9eafb5;right:16px;top:16px}

.services{background:var(--paper-2)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:48px}
.section-heading h2{margin-bottom:0}
.section-heading p{max-width:380px;font-size:17px;color:#566068;margin-bottom:6px}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}
.service-card{background:#f9f9f4;padding:33px 34px 29px;min-height:390px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;border:1px solid #e4e3dc}
.service-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(17,17,17,.08)}
.card-top{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:#838c92}
.card-arrow{font-size:22px;color:#212a33}
.service-card h3{font-size:clamp(1.65rem,2.8vw,2.75rem);margin:17px 0 14px}
.service-card p{color:#5a636b;line-height:1.7;max-width:480px}
.tags{font-size:11px;font-weight:700;color:#707c81;border-top:1px solid #dedfdc;padding-top:16px;margin-top:auto}
.service-symbol{width:90px;height:64px;margin-top:8px;position:relative}.service-symbol div{position:absolute}
.symbol-1 div:first-child{width:62px;height:62px;border:14px solid var(--yellow);border-radius:50%;left:7px}.symbol-1 div:last-child{width:60px;height:2px;background:#2f3f49;left:36px;top:30px;transform:rotate(-35deg)}
.symbol-2 div:first-child{width:55px;height:55px;background:#303e4a;left:7px;top:5px}.symbol-2 div:last-child{width:51px;height:51px;border:11px solid var(--yellow);left:37px;top:0}
.symbol-3 div:first-child{width:58px;height:58px;border:12px solid #2e3d47;border-radius:50%;left:4px}.symbol-3 div:last-child{width:51px;height:51px;background:var(--yellow);border-radius:50%;left:36px;top:8px;mix-blend-mode:multiply}
.symbol-4 div:first-child{width:70px;height:2px;background:#273642;transform:rotate(40deg);top:31px}.symbol-4 div:last-child{width:57px;height:57px;border:12px solid var(--yellow);transform:rotate(45deg);left:17px;top:5px}

.method-dark{background:var(--dark);color:#fff}
.method-dark .section-index{color:#bdc3c6}
.method-intro{display:flex;justify-content:space-between;align-items:end;gap:75px}
.method-intro h2{margin-bottom:0}.method-intro h2 em{color:var(--yellow)}.method-intro p{max-width:360px;color:#bcc5c9}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:90px 0 70px}
.steps article{border-top:1px solid #61717d;padding-top:20px}.steps article>span{font-size:12px;color:var(--yellow)}
.steps h3{font-size:32px;margin:40px 0 13px}.steps p{max-width:320px;color:#b9c2c8}
.statement{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.3rem,2.45vw,2.25rem);letter-spacing:-.035em;padding-top:24px;border-top:1px solid #44515b}.statement span{color:var(--yellow)}

.repgrid-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.visual{min-height:510px;background:#202b36;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid #31404b}
.visual-space::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.05);pointer-events:none}
.visual svg{width:100%;max-width:640px}
.visual-caption{position:absolute;left:24px;bottom:22px;color:#bac4c9;font-size:9px;letter-spacing:.17em}
.repgrid-copy h2{font-size:clamp(2rem,3.85vw,4rem)}
.repgrid-copy p{color:#505a63;font-size:16px;line-height:1.8}.repgrid-copy .lead{font-weight:800;color:#1c2830;font-size:18px}
.repgrid-copy .text-link{margin-top:14px}

.insights{background:#ebeeeb}
.insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.insights-grid article h3{font-size:25px;margin:19px 0 13px}
.insights-grid article p{color:#555f67;font-size:14px;line-height:1.8}
.insight-visual{height:230px;position:relative;overflow:hidden;padding:18px;font-size:10px;letter-spacing:.12em;font-weight:800}
.insight-one{background:#263440;color:white}.insight-two{background:#ded9b5;color:#333}.insight-three{background:#a2b0b4;color:#222}
.circle-form{width:230px;height:230px;border:53px solid var(--yellow);border-radius:50%;position:absolute;right:-12px;bottom:-80px}
.line-form{height:330px;width:120px;background:#273640;transform:rotate(42deg);position:absolute;right:55px;top:-80px}.line-form:after{content:"";width:35px;height:100%;background:var(--yellow);position:absolute;left:40px}
.square-form{width:180px;height:180px;border:35px solid #293741;transform:rotate(24deg);position:absolute;right:22px;bottom:-30px}
.insight-note{font-size:12px;color:#69747a;margin-top:30px}

.quote-section{background:var(--yellow);padding:92px 0}
.quote-section .section-index{color:#4e4b2c}
.quote-section blockquote{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(2.6rem,6vw,6.4rem);line-height:1.08;letter-spacing:-.064em;margin-bottom:30px}.quote-section blockquote em{color:#f8f7e8}
.quote-section p{max-width:530px;font-size:18px}

.about-layout{display:grid;grid-template-columns:.88fr 1fr;gap:11%;align-items:center}
.about-art{min-height:630px;background:#1d2832;position:relative;overflow:hidden;border:1px solid #31404b}
.about-art svg{width:100%;height:100%;display:block}
.about-label{position:absolute;left:28px;top:26px;color:#fff;line-height:1.7;letter-spacing:.15em;font-size:10px;z-index:2}
.about-copy h2{font-size:clamp(2.1rem,3.6vw,4rem)}.about-copy p{color:#505c63;line-height:1.8}
.about-copy h3{font-size:23px;margin:32px 0 2px}.about-copy .founder-role{font-size:12px;font-weight:800;color:#778187}.motto{font-family:'Space Grotesk';font-size:20px;font-weight:700;margin-top:32px}.motto span{color:#b3a423}

.contact{background:#111820;color:#fff;padding:100px 0}
.contact-layout{display:grid;grid-template-columns:1.2fr .7fr;gap:12%;align-items:center}
.contact h2{font-size:clamp(2.6rem,5.2vw,5.5rem);margin-bottom:0}.contact h2 em{color:var(--yellow)}
.contact .section-index{color:#aeb7bb}.contact-side p{font-size:17px;color:#c1cbd0;line-height:1.75}.contact-side .btn{margin-top:25px}.contact-warning{color:#e7b5aa;font-size:11px;line-height:1.5;margin-top:18px}

.footer{background:#0e1319;color:#c8ced3;padding:60px 0 20px}.footer-layout{display:flex;justify-content:space-between;gap:30px}.footer-logo .wordmark-text{color:white;font-size:36px}.footer-logo .wordmark-dot{font-size:44px}
.footer-tag{font-size:10px;letter-spacing:.13em;margin-top:16px}.footer-location{font-size:12px;margin-top:8px;color:#818c95}.footer-links{display:flex;gap:24px;font-size:12px;align-items:start}.footer-links a:hover{color:var(--yellow)}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #303942;margin-top:55px;padding-top:20px;color:#77818a;font-size:11px}

.legal{padding:90px 0;min-height:65vh}.legal h1{font-size:clamp(2.5rem,5vw,4rem)}.legal p{max-width:750px}.legal .notice{border-left:5px solid #b18d31;padding:18px 20px;background:#fff4d0;max-width:780px}

@media(max-width:1150px){
  .nav{gap:18px;font-size:12px}
  .hero-layout{grid-template-columns:1fr;gap:24px;padding-top:80px;min-height:auto}
  .hero-copy{min-height:auto}
  .hero-bottom{margin-top:48px}
  .hero-visual{min-height:400px}
  .human-layout{grid-template-columns:1fr}
  .about-art{min-height:530px}
  .wrap{width:min(1200px,calc(100% - 56px))}
}
@media(max-width:750px){
  .header{height:68px}
  .wrap{width:calc(100% - 38px)}
  .wordmark-text{font-size:25px}
  .wordmark-dot{font-size:31px}
  .nav-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0;padding:10px;cursor:pointer}
  .nav-toggle span{display:block;width:25px;height:2px;background:#252b33}
  .nav{display:none;position:absolute;top:68px;left:0;right:0;background:#f6f5f1;flex-direction:column;align-items:stretch;padding:20px 19px 27px;box-shadow:0 14px 20px #0002;gap:0}
  .nav.is-open{display:flex}.nav a{padding:13px 8px}.nav .nav-contact{text-align:center;margin-top:10px}
  .hero-layout{padding:86px 0 28px}
  .hero h1{font-size:clamp(3.2rem,10vw,5.2rem);margin-top:42px}
  .hero-visual{min-height:300px}
  .visual-label{font-size:9px}
  .hero-bottom{font-size:9px;gap:20px;flex-wrap:wrap}
  .section{padding:75px 0}
  .split,.repgrid-layout,.about-layout,.contact-layout{grid-template-columns:1fr;gap:32px}
  .section-prose{padding-top:0;font-size:16px}
  .section-heading,.method-intro{display:block}.section-heading p,.method-intro p{max-width:600px}
  .human-mini-grid{grid-template-columns:1fr 1fr}
  .service-grid{grid-template-columns:1fr}.service-card{min-height:330px;padding:27px}
  .steps{grid-template-columns:1fr;gap:15px;margin:50px 0}.steps h3{margin:15px 0 8px}.steps article{padding-top:16px}
  .visual{min-height:360px}
  .insights-grid{grid-template-columns:1fr;gap:28px}.insight-visual{height:210px}
  .about-art{min-height:350px;order:2}.about-copy{order:1}
  .contact{padding:76px 0}
  .footer-layout,.footer-bottom{flex-direction:column;gap:30px}.footer-links{flex-wrap:wrap}.footer-bottom{gap:7px;margin-top:35px}
}
@media(max-width:540px){
  .human-mini-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
