.section{padding:clamp(40px,6vw,76px) 0;scroll-margin-top:var(--header-h)}.section--alt{background:var(--bg-alt)}.section--dark{background:linear-gradient(135deg,var(--bg-dark) 0%,#012356 50%,var(--bg-darkest) 100%);color:rgba(255,255,255,.82)}.section--dark h2,.section--dark h3{color:#fff}.section-head{max-width:720px;margin:0 auto clamp(40px,6vw,64px);text-align:center}.section-head .eyebrow{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:14px}.section-head .eyebrow::after{content:"";display:block;width:28px;height:3px;border-radius:999px;background:var(--accent);margin:8px auto 0}.section-head p{color:var(--muted);font-size:1.1rem;margin:0}.grid{display:grid;gap:26px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#c9dcff}.service .icon{width:62px;height:62px;border-radius:16px;display:grid;place-items:center;font-size:1.6rem;color:var(--brand);background:linear-gradient(135deg,rgba(0,102,251,.12),rgba(0,102,251,.05));margin-bottom:22px}.service h3{margin-bottom:10px}.service p{color:var(--muted);margin:0;font-size:.98rem}.card-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-weight:600;font-size:.95rem;color:var(--brand);text-decoration:none}.card-link:hover{text-decoration:underline}.card-link .ic{width:1em;height:1em;transition:transform .2s var(--ease)}.card:hover .card-link .ic{transform:translateX(4px)}.audit-lead{max-width:820px;margin:0 auto clamp(36px,5vw,56px);text-align:center;color:var(--muted);font-size:1.12rem}.audit-group h3{display:flex;align-items:center;gap:12px;margin-bottom:18px}.audit-group h3 .ic{color:var(--brand)}.audit-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.audit-list li{display:flex;gap:12px;align-items:flex-start;color:var(--ink-soft);font-size:.98rem}.audit-list li .ic{color:var(--brand);margin-top:6px;font-size:.8rem}.audit-list li strong{color:var(--ink)}.audit-cta{text-align:center;margin-top:clamp(40px,6vw,60px)}.audit-note{max-width:760px;margin:34px auto 0;text-align:center;color:var(--muted)}.audit-note strong{color:var(--ink)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.folio{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4 / 3;box-shadow:var(--shadow-sm)}.folio img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.folio::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,31,83,.88),rgba(0,31,83,.05) 60%);opacity:.55;transition:opacity .4s var(--ease)}.folio figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px;color:#fff;font-weight:700;font-size:1.05rem;transform:translateY(6px);transition:transform .4s var(--ease)}.folio:hover img{transform:scale(1.06)}.folio:hover::after{opacity:.8}.folio:hover figcaption{transform:translateY(0)}.folio--icon{display:flex;flex-direction:column;justify-content:flex-start;aspect-ratio:auto;background:linear-gradient(150deg,var(--brand) 0%,var(--brand-darker) 55%,var(--ink) 100%);padding:22px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.folio--icon::after{display:none}.folio--icon:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.folio-icon{position:relative;align-self:flex-start;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:18px;border-radius:14px;background:rgba(255,255,255,.16);color:#fff;font-size:1.5rem;transition:transform .4s var(--ease),background-color .3s var(--ease)}.folio--icon:hover .folio-icon{transform:scale(1.08);background:rgba(255,255,255,.26)}.folio--icon figcaption{position:static;transform:none;display:flex;flex-direction:column;gap:6px;padding:0}.folio--icon figcaption strong{font-size:1.1rem;line-height:1.3}.folio--icon figcaption span{font-weight:500;font-size:.9rem;line-height:1.4;color:rgba(255,255,255,.85)}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,6vw,80px);align-items:center}.about-grid p{font-size:1.1rem;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.chip{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:#fff;border:1px solid var(--border);font-weight:600;color:var(--ink);box-shadow:var(--shadow-sm)}.chip .ic{color:var(--brand)}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;max-width:900px;margin:0 auto}.member{text-align:center}.member .photo{width:150px;height:150px;margin:0 auto 22px;border-radius:50%;overflow:hidden;border:4px solid #fff;box-shadow:var(--shadow)}.member .photo picture{display:block;width:100%;height:100%}.member .photo img{width:100%;height:100%;object-fit:cover}.member h3{margin-bottom:2px}.member .role{color:var(--brand);font-weight:700;text-transform:uppercase;font-size:.82rem;letter-spacing:.08em;margin-bottom:16px}.member .contact{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.95rem}.member .contact li{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.member .contact .ic{color:var(--brand);font-size:1.05rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}.stat .ic{font-size:2.2rem;color:var(--brand-light);display:block;margin:0 auto 16px}.stat p{color:rgba(255,255,255,.85);margin:0;font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:600;line-height:1.3}#map{width:100%;height:420px;border:0;filter:saturate(.9)}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(30px,5vw,60px);align-items:start}.contact-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:clamp(28px,4vw,44px);box-shadow:var(--shadow-sm)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-group{margin-bottom:18px}.form-control{width:100%;padding:14px 16px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:.98rem;color:var(--ink);background:var(--bg-alt);transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background-color .2s var(--ease)}.form-control::placeholder{color:#9aabbb}.form-control:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 4px rgba(0,102,251,.14)}textarea.form-control{min-height:140px;resize:vertical}.consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 22px;font-size:.92rem;color:var(--muted)}.consent input{width:18px;height:18px;margin-top:3px;accent-color:var(--brand);flex:none}.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.contact-info h3{margin-bottom:8px}.contact-info .lead{color:var(--muted);margin-bottom:22px}.contact-info ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}.contact-info li{display:flex;gap:14px;align-items:flex-start}.contact-info li .ic{color:var(--brand);width:40px;height:40px;padding:12px;border-radius:12px;background:rgba(0,102,251,.10)}.contact-info li span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.contact-info li strong,.contact-info li a{color:var(--ink);font-weight:600}.site-footer{background:linear-gradient(160deg,var(--bg-dark) 0%,var(--bg-darkest) 100%);color:rgba(255,255,255,.6);padding:64px 0 30px}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 36px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand{grid-column:1 / -1}.footer-brand img{height:42px;width:auto}.footer-brand p{margin:14px 0 20px;font-size:.95rem;line-height:1.6}.footer-col h3{color:#fff;font-size:1rem;font-weight:600;margin:0 0 16px}.footer-col ul{list-style:none;margin:0;padding:0}.footer-col li{margin-bottom:10px;font-size:.95rem}.footer-col a{color:rgba(255,255,255,.7)}.footer-col a:hover{color:#fff}.footer-contact li{display:flex;align-items:flex-start;gap:10px}.footer-contact .ic{flex:none;margin-top:3px;opacity:.6}.footer-social{display:flex;gap:14px;margin-top:20px}.footer-social a{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;transition:background-color .2s var(--ease),transform .2s var(--ease)}.footer-social a:hover{background:var(--brand);transform:translateY(-3px);color:#fff}.footer-bottom{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding-top:24px;font-size:.88rem}.footer-bottom a{color:rgba(255,255,255,.85)}.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:1200;max-width:720px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:18px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:14px}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:0;flex:1 1 260px;font-size:.95rem;color:var(--ink-soft)}.cookie-banner form{display:flex;gap:10px;margin:0}.cookie-banner button{border:none;border-radius:999px;padding:10px 20px;font-weight:700;font-size:.9rem;cursor:pointer;transition:transform .2s var(--ease),opacity .2s var(--ease)}.cookie-banner button:hover{transform:translateY(-1px)}#accept{background:var(--brand);color:#fff}#decline{background:var(--bg-alt);color:var(--ink-soft)}.btn-outline{background:transparent;color:var(--brand);border-color:var(--brand)}.btn-outline:hover{background:var(--brand);color:#fff;transform:translateY(-2px)}.prose{max-width:820px;margin-left:auto;margin-right:auto;color:var(--ink-soft);font-size:1.05rem}.prose p{margin-bottom:1.15rem}.prose h2{margin-top:2.2rem}.prose h2:first-child{margin-top:0}.check-list + .prose{margin-top:clamp(28px,4vw,40px)}.team-grid + .prose{margin-top:clamp(28px,4vw,40px)}.steps + .prose{margin-top:clamp(28px,4vw,40px)}.prose--center{max-width:820px;margin-left:auto;margin-right:auto;text-align:center;color:var(--muted)}.container--narrow{max-width:820px}.steps{list-style:none;margin:clamp(36px,5vw,52px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:step}.step{position:relative}.step h3{margin:14px 0 8px;font-size:1.1rem}.step p{color:var(--muted);margin:0;font-size:.96rem}.step-num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--brand-tint);color:var(--brand);font-weight:700;font-size:1.05rem}.check-list{list-style:none;margin:0 auto;padding:0;max-width:820px;display:grid;gap:14px}.check-list li{display:flex;gap:14px;align-items:flex-start;color:var(--ink-soft)}.check-list li .ic{color:var(--brand);margin-top:7px;font-size:.8rem}.faq{max-width:820px;margin:0 auto;display:grid;gap:12px}.faq-item{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);padding:18px 22px}.faq-item summary{cursor:pointer;font-weight:600;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:16px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";color:var(--brand);font-weight:700;line-height:1;font-size:1.4rem}.faq-item[open] summary::after{content:"\2212"}.faq-item p{margin:14px 0 0;color:var(--muted)}.svc-list{display:grid;gap:22px;margin-top:clamp(36px,5vw,52px)}.svc{display:flex;gap:24px;align-items:flex-start}.svc h2,.svc h3{font-size:1.4rem;margin-bottom:8px}.svc p{color:var(--muted);margin:0}.svc .icon{flex:none}.post{display:flex;flex-direction:column}.post-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:var(--brand-tint);color:var(--brand);font-size:1.2rem;margin-bottom:16px}.post h3{margin-bottom:8px;font-size:1.18rem}.post h3 a{color:var(--ink)}.post h3 a:hover{color:var(--brand)}.post-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;font-size:.84rem;color:var(--muted)}.post-perex{color:var(--muted);font-size:.98rem;flex:1}.post-more{font-weight:600;display:inline-flex;align-items:center;gap:8px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.article-perex{font-size:1.18rem;color:var(--ink);font-weight:600;margin-bottom:1.6rem}.article-cta{margin:clamp(32px,5vw,44px) 0;padding:26px;background:var(--bg-alt);border-radius:var(--radius);border:1px solid var(--border)}.article-cta p{color:var(--ink-soft)}.article-cta .btn{margin-top:8px}.article-cta .btn + .btn{margin-left:12px}.article-back{margin:0;font-weight:600}.prose a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}.prose a:hover{text-decoration-thickness:2px}.toc{max-width:820px;margin:0 auto clamp(32px,5vw,44px);padding:22px 26px;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius)}.toc h2{font-size:1.05rem;margin:0 0 12px}.toc ol{margin:0;padding-left:1.2rem;display:grid;gap:7px}.toc li{color:var(--muted);font-size:.96rem}.toc a{color:var(--ink-soft)}.toc a:hover{color:var(--brand)}.related{max-width:820px;margin:0 auto clamp(28px,4vw,36px);padding-top:clamp(24px,4vw,32px);border-top:1px solid var(--border)}.related h2{font-size:1.1rem;margin:0 0 12px}.related ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}.related a{font-weight:600}.member-bio{color:var(--muted);font-size:.96rem;margin:0 0 18px}.cta-band{background:var(--bg-dark)}.cta-band-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:26px}.cta-band h2{color:#fff;margin-bottom:10px}.cta-band p{color:rgba(255,255,255,.78);margin:0;max-width:640px}.form-note{border-radius:var(--radius-sm);padding:14px 18px;margin-bottom:22px;font-size:.95rem}.form-note--ok{background:var(--brand-tint);color:var(--brand-darker)}.form-note--error{background:#fdece9;color:#a32b16}@media (max-width: 992px){.grid-4{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.footer-grid{gap:32px 28px}}@media (max-width: 680px){.grid-2,.grid-3,.grid-4,.team-grid,.portfolio-grid,.stats-grid,.form-row,.steps{grid-template-columns:1fr}.svc{flex-direction:column;gap:14px}.cta-band-inner{flex-direction:column;align-items:flex-start}.stats-grid{gap:30px}.card{padding:26px}.cookie-banner{flex-direction:column;align-items:stretch;text-align:center;left:10px;right:10px;bottom:10px;padding:14px 16px;gap:12px;border-radius:var(--radius-sm)}.cookie-banner p{flex:0 1 auto;font-size:.85rem;line-height:1.5}.cookie-banner form{justify-content:center}.cookie-banner button{flex:1 1 0;padding:11px 10px;font-size:.85rem}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{justify-content:center;text-align:center}}.app-list{display:grid;gap:30px}.app-card{display:grid;grid-template-columns:1.05fr 1fr;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}.app-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#c9dcff}.app-shot{display:flex;align-items:center;background:#fff;overflow:hidden;padding:clamp(20px,3vw,34px)}.app-shot img{width:100%;height:auto;object-fit:contain;display:block;border-radius:12px;transition:transform .4s var(--ease)}.app-card:hover .app-shot img{transform:scale(1.03)}.app-body{padding:clamp(28px,4vw,46px);display:flex;flex-direction:column;align-items:flex-start}.app-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;margin-bottom:14px}.app-head h3{margin:0;font-size:1.5rem}.app-tagline{color:var(--brand);font-weight:600;font-size:.95rem}.app-body > p{color:var(--muted);margin:0;font-size:1.02rem}.app-body .chips{margin-top:20px;margin-bottom:26px}.app-body .btn{margin-top:auto}@media (max-width: 860px){.app-card{grid-template-columns:1fr}.app-shot{padding:0}}