:root{--background:#0f1720;--surface:#18222d;--surface-light:#f4f7f8;--text:#e8eef2;--text-dark:#17212b;--muted:#9eabb6;--muted-dark:#5c6872;--accent:#46c2c7;--accent-warm:#e39a58;--line:#e8eef224;--shadow:0 24px 70px #0003}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top left, #3b628f14, transparent 34%), var(--background);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit}.hero,.intro,.services,.approach,.contact,footer{width:min(var(--max-width), calc(100% - 32px));margin-inline:auto}.hero{border-radius:var(--radius);background:var(--surface);min-height:min(760px,100vh - 2rem);box-shadow:var(--shadow);flex-direction:column;margin-top:1rem;padding:clamp(1.25rem,4vw,3.5rem);display:flex}.site-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--text);letter-spacing:-.04em;font-size:1.15rem;font-weight:800;text-decoration:none}.header-link{color:var(--text);border-bottom:1px solid var(--line);font-size:.9rem;font-weight:700;text-decoration:none}.header-link:hover{border-bottom-color:var(--text)}.hero-content{max-width:900px;margin:auto 0;padding-block:clamp(5rem,12vw,9rem)}.eyebrow{color:#9f7f52;letter-spacing:.16em;text-transform:uppercase;margin:0 0 1rem;font-size:.78rem;font-weight:800}.hero .eyebrow{margin-bottom:2rem}.hero h1,.intro h2,.section-heading h2,.approach h2,.contact h2{letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:500}.hero h1{max-width:12ch;font-size:clamp(3.4rem,9vw,7.6rem);line-height:.92}.hero-lead{max-width:62ch;color:var(--muted);margin:2rem 0 0;font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.65}.primary-button,.contact-button{border-radius:999px;justify-content:center;align-items:center;margin-top:2rem;padding:.85rem 1.3rem;font-weight:750;text-decoration:none;display:inline-flex}.primary-button:hover{background:#304054}.intro,.services,.approach,.contact{border-radius:var(--radius);margin-top:1.5rem;padding:clamp(2rem,6vw,5rem)}.intro,.approach{color:#17212b;background:#f4f7f8}.intro-grid,.approach-grid{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:clamp(2rem,7vw,6rem);display:grid}.intro h2,.approach h2{color:#17212b}.intro-copy p,.approach-copy p{margin:0}.intro-copy p+p,.approach-copy p+p{margin-top:1.25rem}.services{background:0 0;padding-inline:0}.section-heading{max-width:760px;padding-inline:clamp(0rem,3vw,2rem)}.section-heading h2{font-size:clamp(2.6rem,6vw,5.5rem);line-height:1}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2.5rem;display:grid}.service-number{color:var(--accent);margin:0 0 2.5rem;font-weight:800}.service-card h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:500;line-height:1.12}.contact{background:var(--surface-dark);color:#fff;text-align:center}.contact .eyebrow{color:#ffffffa6}.contact h2{max-width:16ch;margin-inline:auto;font-size:clamp(2.5rem,6vw,5rem);line-height:1}.contact>p:not(.eyebrow){color:#ffffffbf;max-width:50ch;margin:1.25rem auto 0;font-size:1.1rem}.contact-button{color:#fff;border:1px solid #ffffffbf}.contact-button:hover{color:var(--surface-dark);background:#fff}footer{color:var(--muted);justify-content:space-between;gap:2rem;padding-block:2rem 3rem;font-size:.9rem;display:flex}@media (width<=820px){.intro-grid,.approach-grid,.service-grid{grid-template-columns:1fr}.hero{min-height:auto}.hero-content{padding-block:5rem}footer{flex-direction:column;gap:.4rem}}@media (width<=520px){.site-header{align-items:flex-start}.header-link{text-align:right;max-width:12ch}.hero h1{font-size:clamp(3rem,16vw,4.5rem)}}.intro .eyebrow,.approach .eyebrow{color:#6f5732}.primary-button{background:var(--accent);color:#0f1720}.primary-button:hover{color:#0f1720;background:#78d8db}.intro,.approach,.contact{padding-inline:clamp(2rem,6vw,5rem)}.services{padding-inline:clamp(1rem,4vw,3rem)}.intro-copy,.approach-copy{max-width:62ch}.section-heading{padding-inline:0}@media (width<=520px){.intro,.approach,.contact{padding-inline:1.4rem}.services{padding-inline:0}}.service-card h3{color:#17212b}.service-number{color:#237f84}.problem-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.service-number{display:none}.service-card{box-shadow:var(--shadow);background:#fff;border-radius:22px;padding:clamp(1.5rem,4vw,2.5rem)}.service-icon{width:2rem;height:2rem;color:var(--accent);justify-content:flex-start;align-items:center;margin-bottom:1rem;display:inline-flex}.problem-icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;display:block}.service-card h3{color:#17212b;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:500;line-height:1.12}.service-card p:last-child{color:#5c6872;margin:1rem 0 0}.intro-copy,.approach-copy,.intro-copy p,.approach-copy p{color:#5c6872}.essay-page{width:min(860px,100% - 32px);margin:2rem auto 4rem}.essay{background:var(--surface-light);box-shadow:var(--shadow);border-radius:28px;padding:clamp(2rem,6vw,5rem)}.back-link{color:var(--muted-dark);margin-bottom:2rem;font-weight:600;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.essay h1{letter-spacing:-.045em;max-width:10ch;color:var(--text-dark);margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,8vw,6rem);font-weight:500;line-height:.95}.essay-lead{color:var(--muted-dark);margin-top:2rem;font-size:1.4rem;line-height:1.7}.essay h2{color:var(--text-dark);margin-top:3rem;margin-bottom:.75rem;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.essay p{color:var(--muted-dark);margin:1rem 0 0;font-size:1.08rem;line-height:1.85}.essay blockquote{color:var(--text-dark);border-top:1px solid #0000001f;margin:4rem 0 0;padding-top:2rem;font-family:Georgia,Times New Roman,serif;font-size:2rem;line-height:1.4}footer{width:min(var(--max-width), calc(100% - 32px));color:#ffffff73;text-align:center;border-top:1px solid #ffffff14;margin:3rem auto 2rem;padding-top:1.5rem;font-size:.9rem}footer p{margin:0}.essay-header{width:min(860px,100% - 32px);margin:2rem auto 0}.essay-header .brand{color:var(--text);font-size:1rem;font-weight:700;text-decoration:none;transition:opacity .15s;display:inline-block}.essay-header .brand:hover{opacity:.65;text-decoration:none}
