:root{--paper:#f7f5f2;--paper-deep:#eee8df;--ink:#1c1a17;--muted:#6f675d;--line:#d9d0c4;--card:#fbfaf7;--accent:#1ba7e8;--accent-dark:#0578ad;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans)}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);margin:0}body,button,input,textarea{font:400 1rem/1.55 var(--sans)}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit}img{max-width:100%;display:block}.site-header{border-bottom:1px solid var(--line);z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f5f2eb;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;min-height:96px;padding:0 5vw;display:grid;position:sticky;top:0}.brand img,.drawer-bar img,.site-footer img{object-fit:contain;object-position:left center;width:218px;height:74px}.desktop-nav{justify-content:center;align-items:center;gap:8px;display:flex}.desktop-nav a{color:var(--muted);padding:10px 12px;font-size:.94rem;font-weight:700}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--ink)}.nav-cta,.drawer-cta,.button{border:1px solid #0000;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:11px 16px;font-weight:800;display:inline-flex}.nav-cta,.drawer-cta,.button.primary{background:var(--accent);color:#071014}.button.secondary{border-color:var(--ink);color:var(--ink)}.nav-cta:hover,.drawer-cta:hover,.button.primary:hover{background:#32b9f3}.button.secondary:hover{background:var(--ink);color:var(--paper)}.menu-toggle{background:0 0;border:0;justify-self:end;padding:8px;display:none}.mobile-drawer{background:var(--paper);opacity:0;pointer-events:none;z-index:50;transition:opacity .18s,transform .18s;position:fixed;inset:0;transform:translateY(-14px);box-shadow:-20px 0 70px #1c1a171f}.mobile-drawer.open{opacity:1;pointer-events:auto;transform:translateY(0)}.drawer-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:96px;padding:0 5vw;display:flex}.drawer-bar button{background:0 0;border:0;padding:8px}.mobile-drawer nav{gap:6px;padding:28px 5vw;display:grid}.mobile-drawer nav a{border-bottom:1px solid var(--line);font-family:var(--serif);padding:16px 0;font-size:2rem;line-height:1.15}.mobile-drawer .drawer-cta{font-family:var(--sans);border:0;justify-self:start;margin-top:18px;padding:12px 18px;font-size:1rem}.hero{grid-template-columns:minmax(0,.95fr) minmax(280px,.65fr);gap:56px;max-width:1220px;min-height:calc(100vh - 82px);margin:0 auto;padding:86px 5vw 78px;display:grid}.hero-copy{align-self:center}.eyebrow{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;font-size:.78rem;font-weight:900}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:0;font-weight:500}h1{max-width:980px;margin-bottom:26px;font-size:clamp(3rem,7vw,6.9rem);line-height:.95}.hero p:not(.eyebrow),.page-header>p:not(.eyebrow){color:var(--muted);max-width:620px;font-size:clamp(1.08rem,2vw,1.28rem)}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.hero-treatment{border-left:1px solid var(--line);align-self:end;gap:0;padding-left:34px;display:grid}.hero-treatment span{border-bottom:1px solid var(--line);font-family:var(--serif);padding:20px 0;font-size:clamp(1.7rem,3vw,3.2rem);line-height:1.02}.hero-treatment span:nth-child(2){color:var(--accent-dark)}.section,.page-header,.section-tight,.service-list,.about-story,.contact-layout,.policy-content{max-width:1220px;margin:0 auto;padding:86px 5vw}.section-intro{max-width:760px;margin-bottom:34px}.section-intro.centered{text-align:center;margin-left:auto;margin-right:auto}.section-intro h2,.page-header h1,.content-callout h2,.bottom-cta h2{margin-bottom:18px;font-size:clamp(2.2rem,4vw,4.8rem);line-height:1}.section-intro p:not(.eyebrow),.under-note,.service-card p,.case-feature p,.content-callout p,.service-detail p,.included li,.about-story p,.values p,.case-card p,.case-detail p,.policy-content p,.contact-aside{color:var(--muted)}.tools-section{border-bottom:1px solid var(--line);border-top:1px solid var(--line)}.tool-row{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.tool-logo{background:var(--card);border:1px solid var(--line);font-family:var(--serif);text-align:center;justify-content:center;align-items:center;min-height:120px;padding:26px;font-size:clamp(1.4rem,2vw,2.15rem);display:flex}.under-note{text-align:center;max-width:560px;margin:22px auto 0}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.service-card{background:var(--card);border:1px solid var(--line);gap:13px;min-height:285px;padding:24px;display:grid}.service-card svg,.service-detail svg,.content-callout svg,.contact-aside svg{color:var(--accent-dark)}.service-card h2{margin:0;font-size:1.55rem;line-height:1.05}.service-card p{margin-bottom:4px}.text-link{color:var(--accent-dark);align-items:center;gap:7px;font-weight:900;display:inline-flex}.featured-case{padding-top:44px}.case-feature{background:var(--ink);color:var(--paper);grid-template-columns:.42fr 1fr;align-items:center;gap:34px;padding:42px;display:grid}.case-feature p:not(.eyebrow){color:#d8d0c7;max-width:640px}.case-feature .text-link{color:#8bdcff}.client-logo{background:var(--paper);border:1px solid var(--line);color:var(--muted);font-family:var(--serif);text-align:center;justify-content:center;align-items:center;min-height:152px;padding:24px;font-size:1.45rem;display:inline-flex}.client-logo.small{background:var(--paper-deep);min-height:90px;font-size:1rem}.content-callout{background:var(--paper-deep);grid-template-columns:.7fr 1fr;align-items:start;gap:36px;max-width:none;display:grid}.content-callout>*{width:100%;max-width:560px;margin-left:auto;margin-right:auto}.page-header{padding-bottom:58px}.page-header h1{max-width:940px}.page-header>p:not(.eyebrow){margin-bottom:0}.service-list{gap:0;padding-top:10px;display:grid}.service-detail{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(260px,.4fr);gap:42px;padding:48px 0;display:grid}.service-detail:last-child{border-bottom:1px solid var(--line)}.service-detail h2{margin:14px 0 18px;font-size:clamp(2rem,3vw,3.4rem);line-height:1}.service-detail p{max-width:760px}.included{border-left:1px solid var(--line);padding-left:28px}.included h3{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;font-size:.9rem;font-weight:900}.included ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.included li{align-items:start;gap:10px;display:flex}.included svg{flex:none;margin-top:4px}.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:10px;display:grid}.case-card{background:var(--card);border:1px solid var(--line);gap:16px;min-height:330px;padding:22px;display:grid}.case-card:hover{border-color:var(--accent-dark)}.badge{border:1px solid var(--line);color:var(--muted);text-transform:uppercase;justify-self:start;padding:5px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.case-card h2{margin-bottom:0;font-size:1.7rem;line-height:1.05}.case-detail{gap:30px;max-width:900px;margin:0 auto;padding:20px 5vw 92px;display:grid}.case-detail article{border-top:1px solid var(--line);padding-top:26px}.case-detail h2{margin-bottom:10px;font-size:2rem}.about-story{grid-template-columns:.7fr 1fr;gap:54px;padding-top:14px;display:grid}.large-quote{border-top:1px solid var(--line);font-family:var(--serif);padding-top:24px;font-size:clamp(2.2rem,4vw,4.5rem);line-height:1}.about-story p{font-size:1.07rem}.values{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:24px;display:grid}.values article{border-top:1px solid var(--line);padding-top:18px}.values h2{font-size:1.45rem;line-height:1.08}.bottom-cta{background:var(--ink);color:var(--paper);justify-content:space-between;align-items:center;gap:28px;padding:60px 5vw;display:flex}.bottom-cta h2{max-width:760px;margin:0}.contact-layout{grid-template-columns:minmax(0,1fr) minmax(250px,.35fr);gap:44px;padding-top:10px;display:grid}.contact-form{gap:18px;display:grid}.contact-form label{color:var(--ink);gap:8px;font-weight:800;display:grid}.contact-form label span{color:var(--muted);font-weight:500}.contact-form input,.contact-form textarea{background:var(--card);border:1px solid var(--line);border-radius:0;width:100%;min-height:48px;padding:13px 14px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-dark);outline:2px solid #1ba7e82e}.contact-form button{justify-self:start}.contact-aside{border-left:1px solid var(--line);padding-left:28px}.contact-aside h2{margin:14px 0 6px;font-size:1.6rem}.contact-aside a{color:var(--accent-dark);font-weight:900}.form-status{margin:0;font-weight:700}.form-status.success{color:#17633a}.form-status.error{color:#9d241c}.policy-content{gap:20px;padding-top:10px;display:grid}.policy-content article{border-top:1px solid var(--line);padding-top:24px}.policy-content h2{font-size:1.8rem}.not-found{min-height:60vh}.site-footer{background:var(--paper-deep);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:34px 5vw;display:flex}.site-footer p{color:var(--muted);margin:8px 0 0}.site-footer nav{gap:18px;display:flex}.site-footer a{color:var(--muted);font-weight:800}@media (width<=1040px){.desktop-nav,.site-header>.nav-cta{display:none}.site-header{grid-template-columns:auto 1fr}.menu-toggle{place-items:center;display:inline-grid}.hero,.content-callout,.service-detail,.about-story,.contact-layout{grid-template-columns:1fr}.hero{min-height:auto}.hero-treatment{border-left:0;border-top:1px solid var(--line);align-self:stretch;padding-left:0}.service-grid,.case-grid,.values{grid-template-columns:repeat(2,minmax(0,1fr))}.included,.contact-aside{border-left:0;border-top:1px solid var(--line);padding-top:24px;padding-left:0}}@media (width<=680px){.site-header,.drawer-bar{min-height:82px}.brand img,.drawer-bar img{width:170px;height:58px}.hero,.section,.page-header,.section-tight,.service-list,.about-story,.contact-layout,.policy-content{padding-left:22px;padding-right:22px}.hero{gap:34px;padding-top:58px}h1{font-size:clamp(2.75rem,15vw,4.4rem)}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.tool-row,.service-grid,.case-grid,.values{grid-template-columns:1fr}.tool-logo{min-height:92px}.case-feature{grid-template-columns:1fr;padding:28px}.content-callout{padding-left:22px;padding-right:22px}.bottom-cta,.site-footer{flex-direction:column;align-items:flex-start}.site-footer nav{flex-direction:column;gap:10px}}
