@font-face{font-family:"Bricolage";src:url(/assets/fonts/bricolage.woff2) format("woff2");font-weight:200 800;font-display:swap}@font-face{font-family:"Source Serif";src:url(/assets/fonts/sourceserif.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif";src:url(/assets/fonts/sourceserif-italic.woff2) format("woff2");font-weight:200 900;font-style:italic;font-display:swap}:root{--ink:#14262B;--ink-soft:#43585D;--teal:#3E6E77;--teal-deep:#22444B;--teal-tint:#D6E5E7;--mist:#EEF4F5;--paper:#FFFFFF;--line:#D3E0E2;--accent:#F2C94C;--accent-hover:#E8B92A;--danger:#B3261E;--ok:#2E7D5B;--sans:"Bricolage",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--serif:"Source Serif",Georgia,"Times New Roman",serif;--gutter:clamp(16px,4vw,40px);--maxw:1200px;--r-sm:6px;--r-md:10px;--r-lg:16px;--sec:clamp(64px,9vw,120px)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:1.0625rem;line-height:1.65;font-optical-sizing:auto;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}@media (min-width:768px){body{font-size:1.125rem}}img,svg{max-width:100%;height:auto;display:block}a{color:var(--teal-deep);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--ink)}:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:4px}h1,h2,h3,h4{font-family:var(--sans);line-height:1.12;margin:0 0 .5em;letter-spacing:-.015em;font-weight:650;text-wrap:balance}p{margin:0 0 1em;text-wrap:pretty}ul,ol{padding:0;margin:0}address{font-style:normal}[hidden]{display:none !important}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--r-sm);font-family:var(--sans)}.skip:focus{top:12px;color:#fff}.wrap{width:100%;max-width:calc(var(--maxw) + 2*var(--gutter));margin:0 auto;padding:0 var(--gutter)}main:focus{outline:none}.display{font-size:clamp(2.2rem,4.8vw,3.75rem);font-weight:700;letter-spacing:-.03em;line-height:1.05;max-width:19ch}.h1{font-size:clamp(2rem,4.2vw,3.4rem);font-weight:700;letter-spacing:-.025em;line-height:1.06;max-width:22ch}.h2{font-size:clamp(1.65rem,3vw,2.4rem);letter-spacing:-.02em}.h3{font-size:1.25rem;letter-spacing:-.01em}.lead{font-size:clamp(1.15rem,1.8vw,1.35rem);line-height:1.55;color:var(--ink-soft);max-width:60ch}.lead-sm{color:var(--ink-soft);max-width:52ch;margin:0}.muted{color:var(--ink-soft)}.text-link{font-family:var(--sans);font-weight:600;color:var(--teal-deep);text-decoration:none;display:inline-flex;align-items:center;gap:.4em;border-bottom:2px solid var(--accent);padding-bottom:2px}.text-link:hover{border-color:var(--teal)}.btn{--h:46px;display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:var(--h);padding:0 1.25em;border-radius:var(--r-sm);font-family:var(--sans);font-weight:600;font-size:1rem;line-height:1.1;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s,transform .15s}.btn-sm{--h:40px;font-size:.95rem;padding:0 1em}.btn-lg{--h:54px;font-size:1.05rem;padding:0 1.5em}.btn-accent{background:var(--accent);color:var(--ink)}.btn-accent:hover{background:var(--accent-hover);color:var(--ink)}.btn-accent:active{transform:translateY(1px)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:#fff}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid transparent;transition:border-color .2s}.site-header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}body.nav-open .site-header::before{background:#fff}.site-header.is-scrolled{border-color:var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand .logo-mark{color:var(--teal);flex:none}.brand-name{font-family:var(--sans);font-weight:600;font-size:1.3rem;letter-spacing:.14em;color:var(--teal-deep)}.primary-nav{display:flex;align-items:center;gap:28px}.nav-list{display:flex;list-style:none;gap:4px;align-items:center}.nav-list>li{position:relative}.nav-list a{font-family:var(--sans);font-weight:500;font-size:1rem;color:var(--ink);text-decoration:none;padding:10px 12px;border-radius:var(--r-sm);display:inline-block}.nav-list a:hover{background:var(--mist)}.nav-list a[aria-current="page"],.nav-list a.is-active{color:var(--teal-deep);box-shadow:inset 0 -2px 0 var(--accent)}.nav-parent{display:flex;align-items:center}.nav-parent>a{padding-right:4px}.sub-toggle{border:0;background:none;padding:8px 6px;cursor:pointer;color:var(--ink-soft);border-radius:var(--r-sm);display:inline-flex}.sub-toggle svg{transition:transform .2s}.has-sub.is-open .sub-toggle svg{transform:rotate(180deg)}.sub{list-style:none;position:absolute;left:0;top:100%;min-width:300px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:8px;box-shadow:0 18px 40px -18px rgba(20,38,43,.35);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s}.has-sub:hover .sub,.has-sub:focus-within .sub,.has-sub.is-open .sub{opacity:1;visibility:visible;transform:none}.sub a{display:flex;flex-direction:column;padding:10px 12px;width:100%}.sub-title{font-weight:600}.sub-hint{font-size:.85rem;color:var(--ink-soft);font-weight:400}.nav-tools{display:flex;align-items:center;gap:14px}.lang{font-family:var(--sans);font-weight:600;font-size:.9rem;color:var(--ink-soft);text-decoration:none;border:1.5px solid var(--line);border-radius:var(--r-sm);padding:7px 10px;line-height:1}.lang:hover{border-color:var(--ink);color:var(--ink)}.burger{display:none;border:0;background:none;width:44px;height:44px;cursor:pointer;position:relative;border-radius:var(--r-sm)}.burger-lines,.burger-lines::before,.burger-lines::after{position:absolute;left:11px;width:22px;height:2px;background:var(--ink);transition:transform .2s,opacity .2s;content:""}.burger-lines{top:21px}.burger-lines::before{top:-7px;left:0}.burger-lines::after{top:7px;left:0}.burger[aria-expanded="true"] .burger-lines{background:transparent}.burger[aria-expanded="true"] .burger-lines::before{transform:translateY(7px) rotate(45deg)}.burger[aria-expanded="true"] .burger-lines::after{transform:translateY(-7px) rotate(-45deg)}@media (max-width:1023px){.burger{display:block}.primary-nav{position:fixed;inset:72px 0 0 0;background:#fff;flex-direction:column;align-items:stretch;justify-content:space-between;padding:16px var(--gutter) 32px;overflow-y:auto;gap:24px;opacity:0;transform:translateY(-8px);visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s}.primary-nav.is-open{opacity:1;transform:none;visibility:visible}.nav-list{flex-direction:column;align-items:stretch;gap:0}.nav-list>li{border-bottom:1px solid var(--line)}.nav-list a{font-size:1.15rem;padding:16px 4px;width:100%}.nav-list a[aria-current="page"],.nav-list a.is-active{box-shadow:none;color:var(--teal)}.nav-parent{justify-content:space-between}.sub-toggle{padding:14px}.sub{position:static;min-width:0;border:0;box-shadow:none;padding:0 0 12px 12px;opacity:1;visibility:visible;transform:none;display:none}.has-sub:hover .sub,.has-sub:focus-within .sub{display:none}.has-sub.is-open .sub{display:block}.sub a{padding:10px 4px;font-size:1rem}.nav-tools{justify-content:space-between}.nav-tools .btn{flex:1}body.nav-open{overflow:hidden}}.crumbs{background:var(--mist);font-family:var(--sans);font-size:.875rem}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(var(--maxw) + 2*var(--gutter));margin:0 auto;padding:18px var(--gutter) 0;color:var(--ink-soft)}.crumbs li+li::before{content:"/";margin-right:6px;color:var(--line)}.crumbs a{color:var(--ink-soft);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.section{padding:calc(var(--sec)*.5) 0}.section:first-of-type,.page-hero+.section{padding-top:var(--sec)}main>.section:last-child{padding-bottom:var(--sec)}.section.tint,.section.faq,.section.quick-contact,.section.phases,.hero+.clients{background:var(--mist);padding:var(--sec) 0;margin:calc(var(--sec)*.5) 0}.section.phases{background:var(--ink)}.hero+.clients{margin-top:0}.section:has(+.cta-band){padding-bottom:var(--sec)}.section.faq:has(+.cta-band),.section.tint:has(+.cta-band){margin-bottom:0}.section-head{margin-bottom:clamp(32px,4vw,56px)}.section-head.split{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 48px}.section-head.split .h2{margin:0;max-width:20ch}.hero{padding:clamp(40px,6vw,88px) 0 clamp(56px,6vw,88px)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(32px,6vw,88px);align-items:center}.hero-copy .lead{margin:24px 0 32px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.visit-card{position:relative;margin:0;background:#fff;border:1.5px solid var(--ink);border-radius:var(--r-md);padding:0;font-family:var(--sans);z-index:0}.visit-card::before{content:"";position:absolute;inset:0;transform:translate(14px,14px);border:1.5px solid var(--teal);border-radius:var(--r-md);background:var(--teal-tint);z-index:-1}.visit-card figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 20px;border-bottom:1.5px solid var(--ink);background:#fff;border-radius:var(--r-md) var(--r-md) 0 0}.vc-title{font-weight:650}.vc-ref{color:var(--ink-soft);font-size:.875rem}.checklist{list-style:none;padding:8px 20px;background:#fff}.checklist li{display:flex;align-items:center;gap:14px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:1rem}.checklist li:last-child{border-bottom:0}.checklist li:nth-child(1){--i:0}.checklist li:nth-child(2){--i:1}.checklist li:nth-child(3){--i:2}.checklist li:nth-child(4){--i:3}.checklist li:nth-child(5){--i:4}.checklist li:nth-child(6){--i:5}.box{flex:none;width:24px;height:24px;border:1.5px solid var(--ink);border-radius:5px;display:grid;place-items:center;color:var(--ink);background:var(--accent)}.box svg{width:18px;height:18px}.box path{stroke-dasharray:24;stroke-dashoffset:0}.vc-sign{display:flex;align-items:center;gap:12px;padding:14px 20px;border-top:1.5px solid var(--ink);background:var(--mist);border-radius:0 0 var(--r-md) var(--r-md);font-size:.9rem;line-height:1.3}.vc-sign img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:50% 30%;filter:grayscale(1) contrast(1.05)}@media (prefers-reduced-motion:no-preference){.js .checklist .box path{stroke-dashoffset:24;animation:tick .35s cubic-bezier(.6,0,.3,1) forwards;animation-delay:calc(.45s + var(--i)*.32s)}.js .checklist .box{background:#fff;animation:boxfill .2s ease forwards;animation-delay:calc(.45s + var(--i)*.32s)}}@keyframes tick{to{stroke-dashoffset:0}}@keyframes boxfill{to{background:var(--accent);border-color:var(--ink)}}.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:clamp(48px,6vw,72px) 0 0}.facts div{border-top:2px solid var(--ink);padding-top:14px}.facts dt{font-family:var(--sans);font-weight:700;font-size:clamp(1.35rem,2.2vw,1.75rem);letter-spacing:-.02em;line-height:1.1}.facts dd{margin:6px 0 0;color:var(--ink-soft);font-size:.95rem;line-height:1.45}.logos{list-style:none;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}.logos li{display:grid;place-items:center;min-height:96px;padding:18px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff}.logos img{max-height:40px;width:auto;opacity:.78;transition:opacity .2s}.logos img.tall{max-height:58px}.logos li:hover img{opacity:1}.logos-compact li{min-height:84px}.svc-rows{list-style:none;border-top:1.5px solid var(--ink)}.svc-rows li{border-bottom:1px solid var(--line)}.svc-rows a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) 44px;gap:24px;align-items:center;padding:26px 8px;text-decoration:none;color:var(--ink);transition:background-color .15s}.svc-name{font-family:var(--sans);font-weight:650;font-size:clamp(1.2rem,2vw,1.5rem);letter-spacing:-.015em}.svc-desc{color:var(--ink-soft)}.svc-go{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;transition:background-color .15s,border-color .15s,transform .15s}.svc-rows a:hover{background:var(--mist)}.svc-rows a:hover .svc-go{background:var(--accent);border-color:var(--accent);transform:translateX(4px)}.phases{color:#fff}.phases .h2{color:#fff;margin-bottom:clamp(32px,5vw,64px);max-width:24ch}.phase-track{list-style:none;counter-reset:ph;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;position:relative}.phase-track::before{content:"";position:absolute;left:0;right:0;top:21px;height:1.5px;background:rgba(255,255,255,.25)}.phase-track li{counter-increment:ph;position:relative}.phase-track li::before{content:counter(ph);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink);border:1.5px solid var(--accent);color:var(--accent);font-family:var(--sans);font-weight:700;margin-bottom:18px;position:relative}.phase-track h3{font-size:1.2rem;color:#fff}.phase-track p{color:rgba(255,255,255,.75);font-size:.98rem;margin:0}.cases-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(32px,6vw,96px)}.cases-intro{position:sticky;top:110px;align-self:start}.case{padding:28px 0;border-top:1px solid var(--line)}.case:first-child{border-top:1.5px solid var(--ink);padding-top:24px}.case h3{font-size:1.2rem;color:var(--teal-deep)}.case p{margin:0}.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,40px)}.why-3{grid-template-columns:repeat(3,minmax(0,1fr))}.why-item{border-top:3px solid var(--teal);padding-top:18px}.why-item h3{font-size:1.2rem}.why-item p{color:var(--ink-soft);margin:0}.about-teaser .about-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:center;background:var(--mist);border-radius:var(--r-lg);padding:clamp(28px,5vw,64px)}.portrait{width:190px;height:210px;object-fit:cover;border-radius:var(--r-md);border:1.5px solid var(--ink);box-shadow:12px 12px 0 var(--teal-tint);filter:grayscale(1) contrast(1.05)}blockquote{margin:24px 0;padding:0 0 0 20px;border-left:3px solid var(--accent);font-style:italic;font-size:1.2rem;line-height:1.5}blockquote p{margin:0}.tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px}.tags li{font-family:var(--sans);font-weight:500;padding:9px 16px;border:1.5px solid var(--line);border-radius:999px;font-size:1rem;background:#fff}.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(32px,6vw,96px)}.faq-list{border-top:1.5px solid var(--ink)}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-family:var(--sans);font-weight:600;font-size:1.12rem;line-height:1.35}.faq summary::-webkit-details-marker{display:none}.faq summary svg{flex:none;transition:transform .2s;color:var(--teal)}.faq details[open] summary svg{transform:rotate(180deg)}.faq-a{padding:0 40px 22px 0;color:var(--ink-soft)}.faq-a p{margin:0}.cta-band{background:var(--teal-deep);color:#fff;padding:clamp(56px,8vw,96px) 0}.cta-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:center}.cta-band .h2{color:#fff;max-width:22ch}.cta-band p{color:rgba(255,255,255,.82);margin:0;max-width:52ch}.cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.cta-line{display:inline-flex;align-items:center;gap:10px;color:#fff;font-family:var(--sans);text-decoration:none;font-weight:500}.cta-line:hover{color:var(--accent)}.site-footer{background:var(--ink);color:rgba(255,255,255,.78);font-family:var(--sans);font-size:.95rem;padding:clamp(48px,6vw,80px) 0 24px}.footer-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:40px}.brand-invert .brand-name{color:#fff}.brand-invert .logo-mark{color:var(--accent)}.f-brand p{margin:18px 0;max-width:44ch;line-height:1.55}.f-brand address{display:flex;flex-direction:column;gap:10px}.f-brand address a,.f-brand address>span{display:inline-flex;align-items:flex-start;gap:10px;color:rgba(255,255,255,.88);text-decoration:none}.f-brand address svg{flex:none;margin-top:2px}.f-brand address a:hover{color:var(--accent)}.f-title{font-size:.95rem;color:#fff;margin-bottom:14px;letter-spacing:0}.f-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}.site-footer a{color:rgba(255,255,255,.78);text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid rgba(255,255,255,.15);margin-top:48px;padding-top:20px;font-size:.85rem}.footer-bottom p{margin:0}.footer-bottom ul{list-style:none;display:flex;gap:20px;flex-wrap:wrap}.page-hero{background:var(--mist);padding:clamp(28px,4vw,48px) 0 clamp(48px,6vw,80px)}.page-hero .lead{margin-top:20px}.hero-note{font-family:var(--sans);font-size:.98rem;color:var(--ink-soft);margin-top:20px;max-width:70ch}.about-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}.portrait-lg{width:220px;height:auto;aspect-ratio:190/210}.reasons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,64px) clamp(32px,6vw,96px)}.reason{position:relative;padding-top:20px;border-top:1.5px solid var(--ink)}.reason-n{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent);font-family:var(--sans);font-weight:700;margin-bottom:14px}.reason p{color:var(--ink-soft);margin:0}.two-col{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:start}.prose{max-width:68ch}.prose h2{margin-top:1.6em}.prose h2:first-child{margin-top:0}.side-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--r-md);padding:24px 26px}.side-card-quiet{border-color:var(--line)}.side-card+.side-card{margin-top:20px}.side-card p{margin:0}.center-sm{margin-bottom:28px}.ticks{list-style:none;display:flex;flex-direction:column;gap:12px}.ticks li{position:relative;padding-left:32px}.ticks li::before{content:"";position:absolute;left:0;top:.28em;width:20px;height:20px;border-radius:5px;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2314262B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='m5 12.5 4.5 4.5L19 7'/%3E%3C/svg%3E") center/14px no-repeat}.ticks-lg{gap:0;border-top:1.5px solid var(--ink)}.ticks-lg li{padding:16px 0 16px 36px;border-bottom:1px solid var(--line)}.ticks-lg li::before{top:1.15em}.ticks-sm{font-size:.98rem;gap:8px;margin:16px 0 20px}.dashes{list-style:none;display:flex;flex-direction:column;gap:8px}.dashes li{position:relative;padding-left:20px}.dashes li::before{content:"";position:absolute;left:0;top:.75em;width:10px;height:2px;background:var(--teal)}.commit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,48px)}.commit{border-top:1.5px solid var(--ink);padding-top:22px}.commit .muted{margin-bottom:16px}.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px)}.hub-item{border-top:3px solid var(--teal);padding-top:20px;display:flex;flex-direction:column}.hub-item h2 a{color:var(--ink);text-decoration:none}.hub-item h2 a:hover{color:var(--teal)}.hub-item>p{color:var(--ink-soft);font-size:1rem}.hub-item .text-link{margin-top:auto;align-self:flex-start}.svc-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:start}.svc-aside{position:sticky;top:100px}.related .h3{margin-bottom:20px}.rel-list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.rel-list a{display:flex;flex-direction:column;gap:4px;height:100%;padding:18px 20px;border:1.5px solid var(--line);border-radius:var(--r-md);text-decoration:none;color:var(--ink);font-family:var(--sans);transition:border-color .15s,background-color .15s}.rel-list a span{color:var(--ink-soft);font-size:.9rem}.rel-list a:hover{border-color:var(--ink);background:var(--mist)}.qc-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(32px,6vw,88px);align-items:start}.qc-direct{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:24px;font-family:var(--sans)}.qc-direct a{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:500}.qc-direct a:hover{color:var(--teal)}.area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px)}.area{border-top:1.5px solid var(--ink);padding-top:20px}.area-featured{background:var(--mist);border-top:3px solid var(--teal);padding:22px 24px 26px;border-radius:0 0 var(--r-md) var(--r-md)}.area .muted{font-size:1rem}.timeline{list-style:none;border-left:2px solid var(--line);margin-top:24px}.timeline li{position:relative;display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;padding:0 0 32px 28px}.timeline li::before{content:"";position:absolute;left:-8px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--ink)}.tl-year{font-family:var(--sans);font-weight:700;color:var(--teal-deep)}.timeline h3{font-size:1.15rem;margin-bottom:6px}.timeline p{color:var(--ink-soft);margin:0}.edu div,.skills div,.direct div{padding:10px 0;border-bottom:1px solid var(--line)}.edu div:last-child,.skills div:last-child,.direct div:last-child{border-bottom:0}.edu dt,.skills dt,.direct dt{font-family:var(--sans);font-weight:650;font-size:.95rem}.edu dd,.skills dd,.direct dd{margin:2px 0 0;color:var(--ink-soft);font-size:1rem}.direct dd a{color:var(--ink)}.contact-section{padding-top:clamp(40px,5vw,64px)}.contact-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:start}.contact-hero{padding-bottom:clamp(32px,4vw,48px)}.form-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--r-lg);padding:clamp(22px,3.5vw,40px);position:relative}.form-card-lg{box-shadow:14px 14px 0 var(--teal-tint)}.next-steps{list-style:none;counter-reset:st;display:flex;flex-direction:column;gap:14px}.next-steps li{counter-increment:st;position:relative;padding-left:40px;color:var(--ink-soft);font-size:1rem;line-height:1.5}.next-steps li::before{content:counter(st);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--ink);font-family:var(--sans);font-weight:700;font-size:.85rem;display:grid;place-items:center}.next-steps strong{color:var(--ink);font-family:var(--sans);font-weight:600}.cform{font-family:var(--sans)}.form-body{display:flex;flex-direction:column;gap:20px}.row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px;margin:0;border:0;padding:0;min-width:0}.field label,.field legend{font-weight:600;font-size:.95rem;color:var(--ink)}.field legend{padding:0;margin-bottom:10px}.req{color:var(--danger);margin-left:2px}.hint{font-weight:400;color:var(--ink-soft)}.cform input[type=text],.cform input[type=email],.cform input[type=tel],.cform textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:1.5px solid #B9CBCE;border-radius:var(--r-sm);padding:12px 14px;min-height:50px;transition:border-color .15s,box-shadow .15s}.cform textarea{resize:vertical;min-height:140px;line-height:1.5;font-family:var(--sans)}.cform-compact textarea{min-height:110px}.cform input::placeholder,.cform textarea::placeholder{color:#7D8F93}.cform input:hover,.cform textarea:hover{border-color:var(--ink-soft)}.cform input:focus,.cform textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 4px rgba(62,110,119,.18)}.field.is-invalid input,.field.is-invalid textarea{border-color:var(--danger);box-shadow:0 0 0 3px rgba(179,38,30,.12)}.field.is-valid input,.field.is-valid textarea{border-color:var(--ok)}.field-error{color:var(--danger);font-size:.88rem;margin:0;display:flex;gap:6px;align-items:flex-start}.field-error::before{content:"!";flex:none;display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--danger);color:#fff;font-size:.72rem;font-weight:700;margin-top:2px}.field-meta{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.count{font-size:.8rem;color:var(--ink-soft);margin-left:auto;white-space:nowrap}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{position:relative;cursor:pointer}.chip input{position:absolute;opacity:0;width:1px;height:1px}.chip span{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:1.5px solid #B9CBCE;border-radius:999px;font-size:.95rem;font-weight:500;background:#fff;transition:all .15s;user-select:none}.chip:hover span{border-color:var(--ink)}.chip input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}.chip input:checked+span::before{content:"";width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23F2C94C' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round' d='m5 12.5 4.5 4.5L19 7'/%3E%3C/svg%3E") center/contain no-repeat}.chip input:focus-visible+span{outline:3px solid var(--teal);outline-offset:2px}.chips.is-invalid .chip span{border-color:var(--danger)}.check{display:flex;gap:12px;align-items:flex-start;font-weight:400 !important;font-size:.95rem !important;line-height:1.5;cursor:pointer;color:var(--ink-soft) !important}.check input{flex:none;appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:1px 0 0;border:1.5px solid #8FA5A9;border-radius:5px;background:#fff;cursor:pointer;display:grid;place-items:center;transition:all .15s}.check input:checked{background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23F2C94C' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round' d='m5 12.5 4.5 4.5L19 7'/%3E%3C/svg%3E") center/15px no-repeat;border-color:var(--ink)}.consent.is-invalid .check input{border-color:var(--danger)}.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}.privacy-note{font-size:.85rem;color:var(--ink-soft);margin:0;max-width:34ch;line-height:1.45}.spinner{display:none;width:18px;height:18px;border:2px solid rgba(20,38,43,.3);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite}.is-sending .spinner{display:inline-block}.is-sending button[type=submit]{pointer-events:none;opacity:.85}@keyframes spin{to{transform:rotate(360deg)}}.form-status{margin:0;padding:12px 14px;border-radius:var(--r-sm);background:#FCECEA;color:var(--danger);font-size:.95rem}.form-status a{color:var(--danger);font-weight:600}.form-success{text-align:left;padding:8px 0}.form-success:focus{outline:none}.success-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--accent);color:var(--ink);margin-bottom:18px}.success-icon svg{width:30px;height:30px}.form-success h3{font-size:1.6rem}.form-success .btn{margin-top:12px}.hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}.legal h2{font-size:1.3rem;margin-top:1.8em}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}.plan-grid ul{list-style:none;display:flex;flex-direction:column;gap:10px;border-top:1.5px solid var(--ink);padding-top:16px;font-family:var(--sans)}@media (max-width:1100px){.logos{grid-template-columns:repeat(4,minmax(0,1fr))}.rel-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:960px){.hero-grid,.cases-grid,.faq-grid,.cta-inner,.two-col,.svc-layout,.contact-grid,.qc-grid,.footer-grid{grid-template-columns:minmax(0,1fr)}.visit-card{max-width:520px;margin-right:14px}.cases-intro,.svc-aside{position:static}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.why-3{grid-template-columns:minmax(0,1fr)}.phase-track{grid-template-columns:minmax(0,1fr);gap:0}.phase-track::before{left:21px;right:auto;top:0;bottom:0;width:1.5px;height:auto}.phase-track li{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:20px;padding-bottom:28px}.phase-track li::before{grid-row:span 2;margin:0}.hub-grid,.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{gap:32px}}@media (max-width:700px){.svc-rows a{grid-template-columns:minmax(0,1fr) 40px;gap:8px 16px;padding:20px 0}.svc-desc{grid-column:1;font-size:1rem}.svc-go{grid-row:1 / span 2;grid-column:2;width:40px;height:40px}.about-teaser .about-grid,.about-hero-grid{grid-template-columns:minmax(0,1fr)}.about-hero-grid .portrait{order:-1;width:150px}.reasons,.commit-grid,.hub-grid,.area-grid,.row{grid-template-columns:minmax(0,1fr)}.logos{grid-template-columns:repeat(2,minmax(0,1fr))}.logos li{min-height:80px}.logos img{max-height:34px}.timeline li{grid-template-columns:minmax(0,1fr);gap:4px}.faq-a{padding-right:0}.rel-list{grid-template-columns:minmax(0,1fr)}.form-foot .btn{width:100%}.privacy-note{max-width:none}}@media (max-width:480px){.hero-actions .btn{width:100%}}@media (max-width:420px){.facts{grid-template-columns:minmax(0,1fr)}.why-grid{grid-template-columns:minmax(0,1fr)}.brand-name{font-size:1.15rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto !important;transition:none !important;animation:none !important}}@media print{.site-header,.site-footer,.cta-band,.quick-contact,.burger{display:none}body{font-size:12pt}}.ico{display:block;width:48px;height:48px;color:var(--teal-deep);flex:none}.svc-name{display:flex;align-items:center;gap:16px}.svc-ico{width:44px;height:44px;padding:8px;border-radius:12px;background:var(--mist);box-sizing:content-box;transition:background-color .15s}.svc-rows a:hover .svc-ico{background:#fff}.why-ico{width:44px;height:44px;margin-bottom:14px}.hub-ico,.area-ico{width:52px;height:52px;margin-bottom:14px}.area-featured .area-ico{background:#fff;border-radius:14px;padding:8px;box-sizing:content-box;width:44px;height:44px}.case{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;align-items:start}.case-ico{width:44px;height:44px;padding:4px;box-sizing:content-box}.hero-visual{position:relative;padding:28px 0}.hero-decor{position:absolute;inset:-30px -40px -30px -60px;width:calc(100% + 100px);height:calc(100% + 60px);z-index:-1;pointer-events:none}.hero-grid{position:relative;z-index:0}.float-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--ink);border-radius:12px;padding:10px 14px;font-family:var(--sans);font-size:.82rem;line-height:1.3;box-shadow:0 12px 28px -14px rgba(20,38,43,.45)}.chip-ico{width:30px;height:30px}.chip-a{top:-6px;left:-44px}.chip-b{bottom:-4px;right:-18px;flex-direction:column;align-items:stretch;gap:6px;min-width:170px}.chip-b .bar{display:block;height:6px;border-radius:6px;background:var(--mist);overflow:hidden}.chip-b .bar span{display:block;height:100%;width:96%;background:var(--accent);border-radius:6px}@media (prefers-reduced-motion:no-preference){.chip-a{animation:bob 6s ease-in-out infinite}.chip-b{animation:bob 7s ease-in-out infinite reverse}.js .chip-b .bar span{animation:grow 1.4s cubic-bezier(.3,0,.2,1) 2.4s both}}@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes grow{from{width:8%}to{width:96%}}.ecg{display:block;width:100%;height:56px;color:var(--accent);margin:-8px 0 36px}.ecg path{stroke-dasharray:1;stroke-dashoffset:0}@media (prefers-reduced-motion:no-preference){.js .ecg path{stroke-dashoffset:1;transition:stroke-dashoffset 2.6s cubic-bezier(.45,0,.2,1)}.js .ecg.in-view path{stroke-dashoffset:0}}.phase-track::before{display:none}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:48px;align-items:center}.hero-art{position:relative;width:260px;height:260px}.hero-rings{position:absolute;inset:0;width:100%;height:100%}.hero-ico{position:absolute;left:50%;top:50%;width:96px;height:96px;transform:translate(-50%,-50%);color:var(--teal-deep)}@media (prefers-reduced-motion:no-preference){.hero-rings circle:first-child{transform-origin:160px 160px;animation:spin 60s linear infinite}}@keyframes spin{to{transform:rotate(360deg)}}.loc-visual{display:flex;flex-direction:column;gap:20px}.coast{width:100%;height:auto;border-radius:18px;border:1.5px solid var(--ink)}.cta-band{position:relative;overflow:hidden}.cta-band::after{content:"";position:absolute;left:0;right:0;bottom:18px;height:60px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80' preserveAspectRatio='none'%3E%3Cpath d='M0 40h330l14-26 18 52 16-40 12 14h200l12-22 16 44 14-30 10 8h230l14-28 18 56 16-42 12 14h258' fill='none' stroke='%23F2C94C' stroke-width='2' opacity='.35'/%3E%3C/svg%3E") center/100% 100% no-repeat;pointer-events:none}.cta-inner{position:relative;z-index:1}@media (max-width:960px){.hero-visual{margin:12px 14px 0 0}.chip-a{left:-8px;top:-14px}.chip-b{right:-8px}}@media (max-width:700px){.page-hero-grid{grid-template-columns:minmax(0,1fr)}.hero-art{display:none}.case{grid-template-columns:40px minmax(0,1fr);gap:14px}.case-ico{width:36px;height:36px}.float-chip{font-size:.76rem;padding:8px 10px}.chip-a{left:-4px}.svc-ico{width:34px;height:34px;padding:6px}}