:root{--ink:#061018;--ink-elevated:#0c1b27;--mist:#d7ebe6;--fog:#9bb7b0;--teal:#1f9f8a;--teal-bright:#37d2b5;--amber:#e2b15a;--white:#f4faf8;--line:#d7ebe624;--shadow:0 30px 80px #00000059;--font-display:"Syne", "Avenir Next", "Segoe UI", sans-serif;--font-body:"Figtree", "Avenir Next", "Segoe UI", sans-serif;--max:1120px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--white);background:var(--ink);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.05rem;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,.button{font:inherit}.skip-link{z-index:100;background:var(--teal-bright);color:var(--ink);border-radius:.5rem;padding:.75rem 1rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.wrap{width:min(100% - 2.5rem, var(--max));margin-inline:auto}.site-header{z-index:20;padding:1.4rem 0;position:absolute;inset:0 0 auto}.site-header .wrap{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.04em;align-items:baseline;gap:.35rem;font-size:clamp(1.35rem,2vw,1.7rem);font-weight:750;display:inline-flex}.brand span{color:var(--teal-bright)}.nav{color:var(--mist);align-items:center;gap:1.25rem;font-size:.95rem;display:flex}.nav a{opacity:.85;transition:opacity .16s var(--ease), color .16s var(--ease)}.nav a:hover,.nav a:focus-visible{opacity:1;color:var(--teal-bright)}.button{background:var(--teal-bright);min-height:3rem;color:var(--ink);letter-spacing:-.01em;transition:transform .22s var(--ease), background .22s var(--ease), box-shadow .22s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.85rem 1.35rem;font-weight:700;display:inline-flex;box-shadow:0 10px 30px #37d2b538}.button:hover,.button:focus-visible{background:#6fe3cb;transform:translateY(-2px)}.button-ghost{color:var(--white);border-color:var(--line);box-shadow:none;background:0 0}.button-ghost:hover,.button-ghost:focus-visible{background:#ffffff0f}.hero{isolation:isolate;align-items:end;min-height:100svh;padding:7.5rem 0 4.5rem;display:grid;position:relative;overflow:hidden}.hero-media{z-index:-2;position:absolute;inset:0}.hero-media img{object-fit:cover;width:100%;height:100%;animation:hero-drift 18s var(--ease) infinite alternate;transform:scale(1.06)}.hero-overlay{z-index:-1;background:linear-gradient(#06101859 0%,#0610188c 42%,#061018eb 100%),radial-gradient(circle at 78% 18%,#37d2b547,#0000 34%),radial-gradient(circle at 18% 78%,#e2b15a29,#0000 28%);position:absolute;inset:0}.hero-copy{max-width:40rem}.hero-brand{font-family:var(--font-display);letter-spacing:-.06em;text-wrap:balance;margin:0 0 1rem;font-size:clamp(3.4rem,11vw,7.2rem);font-weight:800;line-height:.9}.hero-brand span{color:var(--teal-bright);display:inline-block}.hero h1{max-width:18ch;font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:0 0 1rem;font-size:clamp(1.7rem,3.8vw,2.7rem);font-weight:650;line-height:1.1}.hero p{max-width:38ch;color:var(--mist);margin:0 0 1.8rem;font-size:clamp(1.05rem,2vw,1.2rem)}.hero-actions{flex-wrap:wrap;gap:.85rem;display:flex}.reveal{opacity:0;animation:rise .9s var(--ease) forwards;transform:translateY(22px)}.reveal-delay-1{animation-delay:.12s}.reveal-delay-2{animation-delay:.24s}.reveal-delay-3{animation-delay:.36s}.reveal-delay-4{animation-delay:.48s}section{padding:5.5rem 0}.section-heading{max-width:36rem;margin-bottom:2.5rem}.section-heading p{color:var(--fog);margin:.85rem 0 0}.eyebrow{color:var(--teal-bright);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .7rem;font-size:.82rem;font-weight:700}h2{font-family:var(--font-display);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.05}.services{border-block:1px solid var(--line);background:linear-gradient(#0c1b27e6,#061018),radial-gradient(circle at 100% 0,#37d2b514,#0000 40%)}.service-list{gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.service-list li{border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:1.25rem;padding:1.4rem 0;display:grid}.service-list li:last-child{border-bottom:1px solid var(--line)}.service-index{font-family:var(--font-display);color:var(--amber);font-size:1.1rem;font-weight:700}.service-list h3{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 .4rem;font-size:1.45rem}.service-list p{max-width:52ch;color:var(--fog);margin:0}.approach{position:relative}.approach-grid{gap:1.5rem;display:grid}.approach-panel{border-top:1px solid var(--line);padding:1.75rem 0 0}.approach-panel strong{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.45rem;font-size:1.2rem;display:block}.approach-panel p{color:var(--fog);max-width:42ch;margin:0}.contact{padding-bottom:6rem}.contact-panel{border-top:1px solid var(--line);gap:1.5rem;padding:2.4rem 0 0;display:grid}.contact-panel p{color:var(--fog);max-width:40ch;margin:0}.contact-links{color:var(--mist);flex-wrap:wrap;gap:.85rem 1.5rem;display:flex}.contact-links a{transition:color .16s var(--ease), border-color .16s var(--ease);border-bottom:1px solid #0000}.contact-links a:hover,.contact-links a:focus-visible{color:var(--teal-bright);border-color:#37d2b580}.site-footer{border-top:1px solid var(--line);color:var(--fog);padding:1.5rem 0 2.5rem;font-size:.92rem}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;display:flex}@keyframes rise{to{opacity:1;transform:translateY(0)}}@keyframes hero-drift{to{transform:scale(1.12)translate(-1.5%,-1%)}}@media (width>=760px){.service-list li{grid-template-columns:3rem 1fr;align-items:start;gap:2rem;padding:1.7rem 0}.approach-grid{grid-template-columns:repeat(3,1fr);gap:2rem}.contact-panel{grid-template-columns:1.2fr auto;align-items:end}}@media (width<=640px){.nav a:not(.button){display:none}.hero{padding-top:6.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.hero-media img,.button{opacity:1;transform:none;transition:none!important;animation:none!important}}
