@font-face{font-family:Barlow;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/9232b7b6bfaf559f-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/fa8bbf6e8495f439-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/350678c962e6fb1f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/e8db73985dfb1f91-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/0264f23287dd6088-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/3cb883af8c65796b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/e920255b8af63c0e-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/6401e282d42e2f75-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/5efe335d41d94188-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/fde7c744a223908e-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/8f132b1cefd33e04-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/4b8cf8a338ef79a9-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/88e4012f2051f8b4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0be08cad6fae8421-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/61d96c4884191721-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/cd5242d34e82716d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6662f7f4c6f2f062-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b0bb26939bb40fdb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7816b93d847886e9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ea06843a6d8e9ab3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/60c9b95e8d9e49be-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/1e6ec62843814326-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a8bcd0492b5976ee-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6ad0344ed98ac2e9-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Fallback;src:local("Arial");ascent-override:103.43%;descent-override:20.69%;line-gap-override:0.00%;size-adjust:96.68%}.__className_1e0b8c{font-family:Barlow,Barlow Fallback}.__variable_1e0b8c{--font-barlow:"Barlow","Barlow Fallback"}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/5de5dda68c9a1053-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac44098818d287e8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3667c091265cf81b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d6e015f239232eb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/55b35d87b6156eea-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5fb5c05ff73c0616-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8599be8653318abe-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3352fdb488e19d84-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/437e5f23c97e320c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Condensed Fallback;src:local("Arial");ascent-override:130.73%;descent-override:26.15%;line-gap-override:0.00%;size-adjust:76.49%}.__className_20a377{font-family:Barlow Condensed,Barlow Condensed Fallback;font-style:normal}.__variable_20a377{--font-barlow-condensed:"Barlow Condensed","Barlow Condensed Fallback"}:root{--black:#0a0a0a;--ink:#111111;--charcoal:#2a2a2a;--gray:#6b6b6b;--silver:#a3a3a3;--line:#d6d6d6;--fog:#f0f0f0;--white:#ffffff;--header-h:5.25rem;--ease:cubic-bezier(0.22,1,0.36,1);--font-display:var(--font-barlow-condensed),"Arial Narrow",sans-serif;--font-body:var(--font-barlow),"Segoe UI",sans-serif}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(ellipse 70% 45% at 0 0,rgba(0,0,0,.04),transparent 55%),radial-gradient(ellipse 50% 40% at 100% 10%,rgba(0,0,0,.03),transparent 50%),linear-gradient(180deg,var(--white) 0,var(--fog) 50%,var(--white) 100%);font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;line-height:1.1;letter-spacing:.01em}h1,h2,h3{font-weight:600}h2{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em}p{margin:0}.site-header{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;justify-content:space-between;height:var(--header-h);padding:0 clamp(1.25rem,4vw,3rem);color:var(--white);transition:background .4s var(--ease),color .4s var(--ease),border-color .4s var(--ease)}.site-header.is-scrolled{color:var(--black);background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.08)}.site-header.is-menu-open{color:var(--white);background:transparent;border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.site-header.is-menu-open .logo img{filter:none}.logo{display:flex;align-items:center;flex-shrink:0}.logo img{width:auto;height:3.6rem;transition:filter .35s var(--ease)}.site-header.is-scrolled .logo img{filter:invert(1)}.nav{display:none;align-items:center;gap:1.75rem;font-size:.88rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.nav a{opacity:.85;transition:opacity .25s}.nav a:hover{opacity:1}.nav-cta{opacity:1!important;padding-bottom:.15rem;border-bottom:1px solid}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:2.5rem;height:2.5rem;padding:0;border:0;background:transparent;color:var(--white);cursor:pointer}.menu-toggle span{display:block;width:1.4rem;height:1.5px;background:var(--white);transition:transform .35s var(--ease),background .35s var(--ease)}.site-header.is-scrolled .menu-toggle{color:var(--black)}.site-header.is-scrolled .menu-toggle span{background:var(--black)}.site-header.is-menu-open .menu-toggle,.site-header.is-scrolled.is-menu-open .menu-toggle{color:var(--white)}.site-header.is-menu-open .menu-toggle span,.site-header.is-scrolled.is-menu-open .menu-toggle span{background:var(--white)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.25px) rotate(40deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.25px) rotate(-40deg)}.mobile-nav{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;justify-content:center;gap:1.5rem;padding:2rem;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:clamp(2rem,8vw,3rem);font-weight:600;letter-spacing:.06em;text-transform:uppercase;transform:translateY(-100%);transition:transform .5s var(--ease)}.mobile-nav.is-open{transform:translateY(0)}.hero{position:relative;min-height:100svh;display:grid;align-items:end;color:var(--white);overflow:hidden}.hero-media{position:absolute;inset:0}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center center;filter:grayscale(1) contrast(1.05);transform:scale(1.08);animation:hero-drift 18s var(--ease) forwards}.hero-media picture{display:contents}.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.2) 35%,rgba(0,0,0,.78)),linear-gradient(90deg,rgba(0,0,0,.5),transparent 55%)}.hero-content{position:relative;z-index:1;width:min(52rem,100%);padding:calc(var(--header-h) + 1.5rem) clamp(1.25rem,4vw,3rem) clamp(3rem,8vh,5rem)}.brand-logo{width:min(18rem,72vw);height:auto;margin-bottom:1.35rem;animation:rise 1s var(--ease) .15s forwards}.brand-logo,.hero h1{opacity:0;transform:translateY(1.5rem)}.hero h1{max-width:28ch;margin-bottom:1rem;font-family:var(--font-body);font-size:clamp(1.15rem,2.4vw,1.45rem);font-weight:500;letter-spacing:.01em;line-height:1.35;animation:rise 1s var(--ease) .3s forwards}.lede{max-width:48ch;margin-bottom:1.75rem;color:rgba(255,255,255,.82);font-size:1rem;animation:rise 1s var(--ease) .45s forwards}.hero-actions,.lede{opacity:0;transform:translateY(1.5rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;animation:rise 1s var(--ease) .6s forwards}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.35rem;border:1px solid transparent;font:inherit;font-size:.92rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--white);color:var(--black)}.btn-primary:hover{background:var(--fog)}.btn-ghost{border-color:rgba(255,255,255,.45);color:var(--white);background:transparent}.btn-ghost:hover{border-color:var(--white);background:rgba(255,255,255,.08)}.section{padding:clamp(4.5rem,10vw,7.5rem) clamp(1.25rem,4vw,3rem)}.section-intro{max-width:34rem;margin-bottom:clamp(2.5rem,5vw,3.5rem)}.approach-copy h2,.contact-panel h2,.section-intro h2{margin-bottom:.85rem;font-size:clamp(2.4rem,5vw,3.6rem)}.approach-copy p,.section-intro p{color:var(--gray);max-width:38ch}.work-grid{display:grid;grid-gap:1.5rem;gap:1.5rem}.work-item{margin:0;overflow:hidden}.work-item img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 70%;transition:transform 1.1s var(--ease)}.work-item:hover img{transform:scale(1.04)}.work-item figcaption{margin-top:.85rem;color:var(--gray);font-size:.95rem}.work-item figcaption span{display:block;margin-bottom:.15rem;color:var(--black);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.85rem}.services{background:var(--fog)}.service-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.service-list li{display:grid;grid-template-columns:3.5rem 1fr;grid-gap:1rem;gap:1rem;padding:1.6rem 0;border-bottom:1px solid var(--line)}.service-num{color:var(--silver);font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:.04em}.service-list h3{margin-bottom:.35rem;font-family:var(--font-body);font-size:1.2rem;font-weight:600}.service-list p{max-width:42ch;color:var(--gray)}.approach{display:grid;grid-gap:2rem;gap:2rem;align-items:center}.approach-media{overflow:hidden}.approach-media img{width:100%;aspect-ratio:5/4;object-fit:cover}.approach-copy p+p{margin-top:1rem}.contact{padding-top:0}.contact-panel{padding:clamp(2.5rem,6vw,4rem);background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 45%),var(--black);color:var(--white)}.contact-panel .btn-primary{background:var(--white);color:var(--black)}.contact-panel .btn-primary:hover{background:var(--fog)}.contact-panel p{max-width:38ch;margin-bottom:2rem;color:rgba(255,255,255,.7)}.contact-panel a{color:var(--white);text-decoration:underline;text-underline-offset:.15em}.contact-form{display:grid;grid-gap:1.1rem;gap:1.1rem;max-width:28rem}.contact-form label{display:grid;grid-gap:.4rem;gap:.4rem;font-size:.88rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.65)}.contact-form input,.contact-form textarea{width:100%;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:var(--white);font:inherit;letter-spacing:normal;text-transform:none;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--white);outline-offset:1px}.contact-form .btn-primary{justify-self:start;margin-top:.35rem}.form-note{margin-top:1.25rem!important;color:var(--silver)!important}.form-error{color:#ffb4b4!important}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.gallery-page{padding:calc(var(--header-h) + 2.5rem) clamp(1.25rem,4vw,3rem) 4rem}.gallery-hero{max-width:36rem;margin-bottom:clamp(2.5rem,6vw,4rem)}.gallery-kicker{margin-bottom:.75rem;color:var(--gray);font-size:.85rem;letter-spacing:.12em}.gallery-hero h1,.gallery-kicker{font-weight:600;text-transform:uppercase}.gallery-hero h1{margin-bottom:.85rem;font-family:var(--font-display);font-size:clamp(2.6rem,6vw,4rem);letter-spacing:.04em}.gallery-hero p{color:var(--gray);max-width:38ch}.gallery-status{margin-top:1rem!important;color:var(--charcoal)!important;font-size:.92rem}.gallery-grid{display:grid;grid-template-columns:1fr;grid-gap:1.25rem;gap:1.25rem}.gallery-item{margin:0;overflow:hidden}.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform 1.1s var(--ease)}.gallery-item:hover img{transform:scale(1.03)}.gallery-item figcaption{margin-top:.7rem;color:var(--gray);font-size:.9rem;letter-spacing:.02em}@media (min-width:720px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.gallery-item:nth-child(3n+1){grid-column:span 2}.gallery-item:nth-child(3n+1) img{aspect-ratio:21/9}}@media (min-width:1100px){.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item:nth-child(3n+1){grid-column:span 2}}.testimonials-page{padding:calc(var(--header-h) + 2.5rem) clamp(1.25rem,4vw,3rem) 4rem}.testimonial-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.testimonial-list li{padding:clamp(1.75rem,4vw,2.5rem) 0;border-bottom:1px solid var(--line)}.testimonial-list blockquote{margin:0;max-width:44rem}.testimonial-list blockquote p{margin-bottom:1.25rem;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.45rem,3vw,2rem);font-weight:500;letter-spacing:.01em;line-height:1.25;text-transform:none}.testimonial-list footer{display:flex;flex-wrap:wrap;gap:.35rem 1rem;align-items:baseline}.testimonial-list cite{font-style:normal;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.88rem;color:var(--black)}.testimonial-list footer span{color:var(--gray);font-size:.95rem}.testimonials-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:clamp(2.5rem,6vw,4rem)}.testimonials-cta p{color:var(--gray);font-size:1.05rem}.btn-dark{background:var(--black);color:var(--white)}.btn-dark:hover{background:var(--charcoal)}.site-footer{display:grid;grid-gap:1.5rem;gap:1.5rem;padding:2.5rem clamp(1.25rem,4vw,3rem) 3rem;color:var(--gray);font-size:.92rem;border-top:1px solid var(--line);background:var(--white)}.footer-brand img{width:9.5rem;height:auto;margin-bottom:.75rem}.footer-meta{display:grid;grid-gap:.35rem;gap:.35rem}.footer-meta a:hover{color:var(--black)}.reveal{opacity:1;transform:none}html.js .reveal{opacity:0;transform:translateY(1.75rem);transition:opacity .9s var(--ease),transform .9s var(--ease)}html.js .reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes rise{to{opacity:1;transform:translateY(0)}}@keyframes hero-drift{to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.brand-logo,.hero h1,.hero-actions,.hero-image,.lede,.reveal{animation:none!important;opacity:1!important;transform:none!important;transition:none!important}}@media (min-width:720px){.nav{display:flex}.menu-toggle,.mobile-nav{display:none}.work-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}.work-item:first-child{grid-column:1/-1}.work-item:first-child img{aspect-ratio:21/9;object-position:center 65%}.approach{grid-template-columns:1.1fr .9fr;gap:3.5rem}.site-footer{grid-template-columns:1fr auto;align-items:end}.footer-meta{text-align:right}}@media (min-width:980px){.service-list li{grid-template-columns:5rem 1fr;gap:2rem;padding:2rem 0}.service-list h3{font-size:1.35rem}}