html.dark{--bg:#0f172a;--white:#1e293b;--surface:#1e293b;--surface-2:#334155;--nav-surface:rgba(7,12,24,.88);--nav-surface-strong:rgba(7,12,24,.96);--nav-border:hsla(0,0%,100%,.06);--nav-border-strong:hsla(0,0%,100%,.1);--border:hsla(0,0%,100%,.08);--border-strong:hsla(0,0%,100%,.14);--accent:#60a5fa;--accent-hover:#93c5fd;--accent-light:rgba(37,99,235,.18);--navy:#f1f5f9;--text:#f1f5f9;--text-muted:#94a3b8;--text-subtle:#64748b;--shadow-sm:0 1px 3px rgba(0,0,0,.4);--shadow-md:0 4px 16px rgba(0,0,0,.5);--shadow-lg:0 8px 32px rgba(0,0,0,.6)}html.dark .contact-card{background:#0f2a56!important}html.transitioning,html.transitioning *,html.transitioning :after,html.transitioning :before{transition:background-color .3s ease,border-color .3s ease,color .2s ease,box-shadow .3s ease!important}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:linear-gradient(120deg,#eaf4ff,#f8fbff);--white:#fff;--surface:#fff;--surface-2:#f1f5f9;--nav-surface:hsla(60,11%,96%,.85);--nav-surface-strong:hsla(60,11%,96%,.98);--nav-border:rgba(15,23,42,.08);--nav-border-strong:rgba(15,23,42,.14);--border:rgba(15,23,42,.08);--border-strong:rgba(15,23,42,.14);--accent:#1e366a;--accent-hover:#112246;--accent-light:#eff6ff;--accent-glow:rgba(37,99,235,.18);--navy:#0f172a;--text:#0f172a;--text-muted:#64748b;--text-subtle:#94a3b8;--font:"Inter",system-ui,sans-serif;--nav-h:64px;--max-w:1080px;--radius:10px;--radius-lg:18px;--radius-full:9999px;--shadow-sm:0 1px 3px rgba(15,23,42,.07),0 1px 2px rgba(15,23,42,.04);--shadow-md:0 4px 16px rgba(15,23,42,.08),0 1px 4px rgba(15,23,42,.05);--shadow-lg:0 8px 32px rgba(15,23,42,.1),0 2px 8px rgba(15,23,42,.06);--motion-fast:.18s ease;--motion-base:.22s ease;--space-section:7rem;--space-section-compact:5.5rem;--space-section-tight:2rem}html{font-size:16px;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased}[id]{scroll-margin-top:calc(var(--nav-h) + 2rem)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.container{margin-inline:auto;max-width:var(--max-w);padding-inline:1.5rem;width:100%}.btn{align-items:center;border:none;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-family:var(--font);font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.7rem 1.6rem;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease;white-space:nowrap}.btn-primary{background:var(--accent);box-shadow:0 2px 8px #2563eb40;color:#fff}.btn-ghost{background:transparent;border:1.5px solid var(--border-strong);color:var(--text-muted)}.btn-contrast{box-shadow:var(--shadow-md);color:var(--navy)}.btn-contrast,.control{background:var(--surface)}.control{align-items:center;border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);display:inline-flex;justify-content:center}.control-button{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font:inherit;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}.control-button.is-active{background:var(--accent);box-shadow:0 6px 18px #2563eb38;color:#fff}.btn:focus-visible,.control-button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,#fff 28%);outline-offset:2px}@media(hover:hover)and (pointer:fine){.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 20px #2563eb59;transform:translateY(-1px)}.btn-ghost:hover{background:var(--surface);border-color:var(--text-muted);box-shadow:var(--shadow-sm);color:var(--text);transform:translateY(-1px)}.btn-contrast:hover{box-shadow:var(--shadow-lg)}.btn-contrast:hover,.control-button:hover{background:var(--surface-2);transform:translateY(-1px)}.control-button:hover{color:var(--text)}}.label{align-items:center;color:var(--accent);display:inline-flex;font-size:.72rem;font-weight:700;gap:.5rem;letter-spacing:.1em;margin-bottom:1rem;text-transform:uppercase}.label:before{background:var(--accent);border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:2px;width:18px}.section-title{color:var(--text);font-size:clamp(1.6rem,3.5vw,2.25rem);font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-bottom:1rem}.section-sub{color:var(--text-muted);font-size:1.05rem;line-height:1.75;max-width:520px}.section-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:3.5rem}.section-header--split{align-items:flex-end;flex-direction:row;gap:2rem;justify-content:space-between}.section-heading{max-width:34rem}.surface-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.surface-card--soft{background:var(--bg)}.surface-card--interactive{transition:box-shadow var(--motion-base),transform var(--motion-base),border-color var(--motion-base),background-color var(--motion-base)}@media(hover:hover)and (pointer:fine){.surface-card--interactive:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-3px)}}.section-space{padding-block:var(--space-section)}.section-space-tight{padding-block:var(--space-section-tight)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1);transition-delay:var(--delay,0s)}.reveal.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}@media(max-width:900px){.project-visual{aspect-ratio:16/7;width:100%}.process-steps{grid-template-columns:repeat(2,1fr)}.process-steps:before{display:none}.step{align-items:flex-start;flex-direction:row;gap:1rem;text-align:left}.step-num{flex-shrink:0;margin-bottom:0}.section-header--split{align-items:flex-start;flex-direction:column}.section-header--split .section-heading,.section-header--split .section-sub{max-width:none;width:100%}}@media(max-width:600px){.process-steps{grid-template-columns:1fr}.footer-inner,.hero-actions{align-items:flex-start;flex-direction:column}.footer-inner{gap:1.5rem}.section-space{padding-block:var(--space-section-compact)}}
