:root { --ink:#16110f; --paper:#faf6f0; --rust:#a2371a; --sage:#6b7553; --sand:#e4d8c8; --line:rgba(22,17,15,.17); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter, sans-serif; } a { color:inherit; text-decoration:none; } .skip-link { position:absolute; left:-999px; } .skip-link:focus { left:1rem; top:1rem; z-index:99; background:var(--paper); padding:1rem; }
.site-header { height:92px; display:flex; align-items:center; justify-content:space-between; padding:0 5.6vw; border-bottom:1px solid var(--line); position:absolute; z-index:3; width:100%; }
.brand img { width:145px; height:auto; display:block; } .main-nav { display:flex; align-items:center; gap:2.4rem; font-size:.78rem; font-weight:600; letter-spacing:.02em; }.main-nav a { transition:color .2s; }.main-nav a:hover { color:var(--rust); }.nav-cta { border:1px solid var(--ink); padding:.75rem 1rem; }.nav-cta span { color:var(--rust); font-size:1rem; margin-left:.35rem; }
.menu-toggle { display:none; } .hero { min-height:780px; padding:186px 5.6vw 75px; position:relative; overflow:hidden; display:grid; grid-template-columns:1.02fr .98fr; align-items:center; border-bottom:1px solid var(--line); }
.hero-copy { position:relative; z-index:1; max-width:700px; }.eyebrow { font-size:.68rem; line-height:1.3; letter-spacing:.15em; text-transform:uppercase; font-weight:600; margin:0 0 1.7rem; }.pulse { width:8px; height:8px; background:var(--rust); display:inline-block; border-radius:50%; margin-right:.55rem; box-shadow:0 0 0 4px rgba(162,55,26,.14); }
h1,h2,h3 { font-family:"Space Grotesk",sans-serif; margin:0; letter-spacing:-.055em; font-weight:500; } h1 { font-size:clamp(3.2rem,5.7vw,6rem); line-height:.99; } h1 em { color:var(--rust); font-style:normal; } .hero-text { max-width:520px; font-size:1.05rem; line-height:1.7; margin:2.1rem 0; color:rgba(22,17,15,.76); }
.hero-actions { display:flex; align-items:center; gap:1.6rem; }.button { display:inline-flex; align-items:center; gap:1rem; padding:1.05rem 1.25rem; font-size:.78rem; font-weight:600; letter-spacing:.01em; transition:transform .2s, background .2s; }.button:hover { transform:translateY(-3px); }.button-primary { background:var(--rust); color:var(--paper); }.button span { font-size:1.15rem; }.text-link,.arrow-link { border-bottom:1px solid var(--ink); padding-bottom:.35rem; font-size:.78rem; font-weight:600; }.text-link span,.arrow-link span { color:var(--rust); margin-left:.4rem; }
.hero-art { height:480px; position:relative; margin-left:2vw; }.core { width:160px; height:160px; border-radius:50%; background:var(--rust); position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); color:var(--paper); display:flex; justify-content:center; align-items:center; box-shadow:0 0 0 19px rgba(162,55,26,.09); }.core span { font-family:"Space Grotesk"; font-size:5rem; font-weight:700; letter-spacing:-.2em; transform:translateX(-7px); }.core small { border-left:1px solid rgba(250,246,240,.6); padding-left:.65rem; margin-left:.55rem; font-size:.62rem; font-weight:600; line-height:1.45; letter-spacing:.09em; }
.orbit { position:absolute; border:1px solid var(--line); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%) rotate(-29deg); }.orbit-one { width:355px; height:355px; }.orbit-two { width:510px; height:220px; }.orbit-three { width:220px; height:510px; }.node { position:absolute; width:9px; height:9px; background:var(--rust); border-radius:50%; }.node-a { top:7%; left:48%; }.node-b { right:3%; top:49%; }.node-c { bottom:9%; left:45%; }.node-d { left:14%; top:48%; }.art-label { position:absolute; font-size:.8rem; font-weight:700; letter-spacing:.16em; color:#3f4630; background:rgba(250,246,240,.82); padding:.22rem .5rem; }.label-one { top:14%; left:8%; }.label-two { bottom:19%; right:3%; }.label-three { bottom:5%; left:15%; color:var(--rust); }
.scroll-cue { position:absolute; bottom:2rem; left:5.6vw; font-size:.65rem; letter-spacing:.11em; text-transform:uppercase; display:flex; align-items:center; gap:.65rem; }.scroll-cue span { height:35px; width:1px; background:var(--rust); display:block; }
.section { padding:9.5rem 5.6vw; }.about { display:grid; grid-template-columns:1.1fr .9fr; gap:8vw; }.section-intro h2,.section-heading h2,.benefit-copy h2 { font-size:clamp(2.4rem,4vw,4.4rem); line-height:1.05; }.about-content { padding-top:3.2rem; max-width:490px; }.about-content p { color:rgba(22,17,15,.75); font-size:.98rem; line-height:1.75; }.about-content .lead { color:var(--ink); font-family:"Space Grotesk"; letter-spacing:-.02em; font-size:1.45rem; line-height:1.35; margin-top:0; }.arrow-link { display:inline-block; margin-top:1.2rem; }
.services { background:var(--ink); color:var(--paper); }.services .eyebrow { color:var(--sand); }.section-heading { display:flex; justify-content:space-between; gap:2rem; margin-bottom:4rem; }.service-list { border-top:1px solid rgba(250,246,240,.25); }.service-card { display:grid; grid-template-columns:12% 1fr auto; gap:2rem; align-items:center; min-height:180px; padding:2rem 1.3rem 2rem 0; border-bottom:1px solid rgba(250,246,240,.25); transition:padding .25s, background .25s; }.service-card:hover { padding-left:1.5rem; background:rgba(250,246,240,.05); }.card-index { align-self:start; font-size:.7rem; padding-top:.4rem; color:var(--sand); }.service-card h3 { font-size:clamp(1.7rem,3vw,2.9rem); line-height:.95; }.service-card p { max-width:380px; font-size:.88rem; line-height:1.55; color:var(--sand); margin:.7rem 0 0; }.card-arrow { color:var(--rust); font-size:2rem; }.featured h3 { color:var(--sand); }
.benefits { display:grid; grid-template-columns:42% 1fr; gap:8vw; align-items:center; }.benefit-art { background:var(--sand); min-height:500px; position:relative; display:flex; align-items:flex-end; padding:2rem; overflow:hidden; }.benefit-art p { font:500 1.15rem/1.1 "Space Grotesk"; letter-spacing:-.05em; position:relative; z-index:1; }.grid-sphere { position:absolute; width:330px; height:330px; border:1px solid var(--sage); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-58%); }.grid-sphere:before,.grid-sphere:after,.grid-sphere span { content:""; position:absolute; border:1px solid var(--sage); border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%); }.grid-sphere:before { width:68%; height:100%; }.grid-sphere:after { width:100%; height:42%; }.grid-sphere span:nth-child(1) { width:100%; height:68%; }.grid-sphere span:nth-child(2) { width:42%; height:100%; }.grid-sphere span:nth-child(3) { width:100%; height:16%; }.grid-sphere span:nth-child(4) { width:16%; height:100%; }
.benefit-copy ul { margin:3rem 0 0; padding:0; list-style:none; }.benefit-copy li { display:grid; grid-template-columns:45px 1fr; border-top:1px solid var(--line); padding:1.3rem 0; }.benefit-copy li>span { font-size:.68rem; color:var(--rust); }.benefit-copy h3 { font-size:1.15rem; letter-spacing:-.035em; }.benefit-copy li p { font-size:.84rem; line-height:1.55; margin:.45rem 0 0; color:rgba(22,17,15,.68); }
.contact { background:var(--rust); color:var(--paper); padding:7.5rem 5.6vw 1.7rem; }.contact-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:5vw; padding-bottom:7rem; }.contact .eyebrow { color:var(--sand); }.contact h2 { font-size:clamp(3rem,5vw,5.5rem); line-height:.98; }.contact-side { padding-top:4.3rem; }.contact-side p { max-width:270px; font-size:1rem; line-height:1.6; }.button-light { background:var(--paper); color:var(--ink); margin-top:1.5rem; } footer { display:grid; grid-template-columns:1fr 1fr auto; gap:1rem; align-items:end; padding-top:1.7rem; border-top:1px solid rgba(250,246,240,.35); font-size:.67rem; letter-spacing:.04em; } footer img { width:240px; filter:none; } footer p { margin:0; } footer p:last-child { text-align:right; }
@media (max-width:760px) { .site-header{height:72px;padding:0 6vw;background:var(--paper);position:fixed}.brand img{width:115px}.menu-toggle{display:grid;gap:5px;background:none;border:0;padding:.5rem}.menu-toggle span{width:22px;height:1px;background:var(--ink)}.main-nav{display:none;position:absolute;top:72px;left:0;width:100%;padding:1.5rem 6vw;gap:1.3rem;background:var(--paper);flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{padding:145px 6vw 90px;display:block;min-height:auto}.hero-art{height:310px;margin:3.7rem 0 0}.core{width:118px;height:118px}.core span{font-size:3.6rem}.core small{font-size:.5rem;padding-left:.5rem;margin-left:.4rem}.art-label{font-size:.68rem;padding:.18rem .4rem}.orbit-one{width:255px;height:255px}.orbit-two{width:330px;height:145px}.orbit-three{width:145px;height:330px}.scroll-cue{display:none}.section{padding:5.7rem 6vw}.about,.benefits,.contact-grid{grid-template-columns:1fr;gap:2.5rem}.about-content{padding:0}.section-heading{display:block;margin-bottom:2.5rem}.services{padding-top:5.7rem}.service-card{grid-template-columns:36px 1fr auto;gap:1rem;min-height:155px}.benefits{padding-bottom:0}.benefit-art{min-height:360px;order:2}.contact{padding:5.7rem 6vw 1.5rem}.contact-grid{padding-bottom:4rem}.contact-side{padding-top:0}footer{grid-template-columns:1fr auto}footer img{width:180px}footer p:nth-child(2){display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.3rem} }
