:root{
  --blue:#0075c1;--blue-dark:#00548b;--navy:#09263a;--ink:#17212b;--muted:#5b6874;--line:#dce5eb;
  --soft:#f4f8fb;--white:#fff;--max:1180px;--radius:18px;--shadow:0 18px 55px rgba(9,38,58,.12)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);line-height:1.6;background:#fff}a{color:inherit}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(9,38,58,.08)}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;text-decoration:none}.brand img{width:310px;height:auto;max-height:74px;object-fit:contain;object-position:left center}.primary-nav{display:flex;align-items:center;gap:8px}.nav-link{border:0;background:transparent;color:var(--ink);text-decoration:none;padding:12px 10px;font-weight:650;cursor:pointer}.nav-item{position:relative}.nav-menu{display:none;position:absolute;top:100%;left:0;width:270px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:8px}.nav-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}.nav-item:hover .nav-menu,.nav-item:focus-within .nav-menu,.nav-item.menu-open .nav-menu{display:grid}.nav-menu a{text-decoration:none;padding:10px 12px;border-radius:8px}.nav-menu a:hover{background:var(--soft);color:var(--blue-dark)}.nav-toggle{display:none;border:0;background:transparent;padding:8px}.nav-toggle span:not(.sr-only){display:block;width:26px;height:2px;background:var(--navy);margin:5px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:13px 20px;background:var(--blue);color:#fff;text-decoration:none;font-weight:750;border:2px solid var(--blue);transition:.2s ease}.button:hover{background:var(--blue-dark);border-color:var(--blue-dark);transform:translateY(-1px)}.button-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}.button-outline:hover{background:#fff;color:var(--navy);border-color:#fff}.button-light{background:#fff;color:var(--navy);border-color:#fff}.button-small{padding:10px 16px;font-size:.92rem}
.hero{position:relative;min-height:680px;color:#fff;display:grid;align-items:center;overflow:hidden;background:var(--navy)}.hero-video,.hero-overlay{position:absolute;inset:0;width:100%;height:100%}.hero-video{object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(3,22,34,.92) 0%,rgba(3,22,34,.78) 50%,rgba(3,22,34,.42) 100%)}.hero-content{position:relative;z-index:2;padding:110px 0 100px;max-width:850px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.78rem;color:#8ed4ff}.hero h1{font-size:clamp(2.5rem,6vw,5rem);line-height:1.02;letter-spacing:-.045em;margin:14px 0 22px}.hero .lead{font-size:clamp(1.08rem,2vw,1.3rem);max-width:760px;color:#e4eef5}.hero-kicker{font-weight:800;font-size:1.08rem;margin:26px 0}.button-row{display:flex;flex-wrap:wrap;gap:12px}.hero-note{font-size:.9rem;color:#c7d5de;margin-top:20px}
.trust-strip{background:#fff;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;padding:22px 0}.trust-item{text-align:center;font-weight:800;color:var(--navy);font-size:.93rem}.trust-item small{display:block;font-weight:500;color:var(--muted)}
.section{padding:86px 0}.section-soft{background:var(--soft)}.section-dark{background:var(--navy);color:#fff}.section-head{max-width:780px;margin:0 auto 42px;text-align:center}.section-head.left{text-align:left;margin-inline:0}.section h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1;letter-spacing:-.03em;margin:0 0 14px}.section h3{font-size:1.35rem;margin-top:0}.section p{color:var(--muted)}.section-dark p{color:#c8d7e0}.section-dark .eyebrow{color:#8ed4ff}.section-dark h2,.section-dark h3{color:#fff}
.review-card{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);text-align:center}.stars{letter-spacing:.12em;font-size:1.4rem;color:#f5a623}.review-placeholder{border:1px dashed #a9bdc9;padding:24px;border-radius:12px;color:var(--muted);margin:18px 0;background:#fafcfd}.review-card h3{margin:8px 0 6px;font-size:1.4rem}.review-card p{margin:0 0 20px;color:var(--muted)}.form-alert{max-width:900px;margin:0 auto 20px;padding:16px 18px;border-radius:12px;border:1px solid var(--line);background:#fff}.form-alert-error{border-color:#d9a7a7;background:#fff7f7;color:#6f2020}.form-alert a{font-weight:750}
.problem-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.problem-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.problem-list span{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:650}.plain-english{padding:28px;border-radius:var(--radius);background:var(--navy);color:#fff}.plain-english p{color:#d4e1e8}.plain-english strong{font-size:1.3rem}
.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff;box-shadow:0 8px 28px rgba(9,38,58,.06)}.service-card .tag{display:inline-block;border-radius:999px;background:#e8f5fd;color:var(--blue-dark);font-weight:800;font-size:.78rem;padding:5px 10px;margin-bottom:12px}.service-card ul{padding-left:20px;color:var(--muted);columns:2}.service-card .text-link{font-weight:800;color:var(--blue-dark);text-decoration:none}.service-card .text-link:hover{text-decoration:underline}.service-card.featured{border-color:#9cd8ff;background:linear-gradient(180deg,#fff,#f5fbff)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.stack{display:grid;gap:12px}.stack-item{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:12px;background:#fff;border:1px solid var(--line)}.section-dark .stack-item{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.13)}.stack-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#e8f5fd;color:var(--blue-dark);font-weight:900;flex:0 0 auto}.section-dark .stack-icon{background:rgba(142,212,255,.15);color:#8ed4ff}
.location-grid,.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.location-card,.industry-card{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff}.location-card a{color:var(--blue-dark);font-weight:800;text-decoration:none}.industry-grid{grid-template-columns:repeat(3,1fr)}
.cta-band{padding:72px 0;background:linear-gradient(120deg,var(--blue-dark),var(--blue));color:#fff}.cta-band .container{display:flex;align-items:center;justify-content:space-between;gap:32px}.cta-band h2{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.cta-band p{color:#eaf7ff;margin-bottom:0;max-width:700px}
.form-card{max-width:760px;margin:0 auto;border:1px solid var(--line);border-radius:var(--radius);padding:34px;background:#fff;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field.full{grid-column:1/-1}.form-field label{display:block;font-weight:750;margin-bottom:6px}.form-field input,.form-field select,.form-field textarea{width:100%;padding:13px 14px;border:1px solid #bfcdd6;border-radius:10px;background:#fff}.form-field textarea{min-height:140px;resize:vertical}.form-note{font-size:.9rem;color:var(--muted)}
.site-footer{background:#061b29;color:#d6e4ec;padding:64px 0 26px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:36px}.footer-grid section{display:flex;flex-direction:column;align-items:flex-start}.footer-grid h2{font-size:1rem;color:#fff;margin:0 0 14px}.footer-grid a{color:#d6e4ec;text-decoration:none;margin:4px 0}.footer-grid a:hover{color:#fff;text-decoration:underline}.footer-logo{width:260px;height:auto;max-width:100%;margin-bottom:18px;background:#fff;border-radius:8px;padding:8px}.footer-support{margin-top:18px;color:#9fb6c5}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:24px;margin-top:30px;border-top:1px solid rgba(255,255,255,.12);font-size:.9rem}.footer-qualifier{font-size:.8rem;color:#8ca7b8;margin-top:14px}
@media(max-width:940px){.nav-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:80px;padding:16px 20px 24px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;flex-direction:column}.primary-nav.is-open{display:flex}.nav-item{width:100%}.nav-link{width:100%;text-align:left}.nav-menu{position:static;width:100%;box-shadow:none;border:0;background:var(--soft);margin-bottom:8px}.nav-item:hover .nav-menu{display:none}.nav-item.menu-open .nav-menu{display:grid}.hero{min-height:620px}.trust-grid{grid-template-columns:repeat(2,1fr)}.problem-grid,.split{grid-template-columns:1fr}.location-grid{grid-template-columns:repeat(2,1fr)}.industry-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.brand img{width:220px;max-height:60px}.container{width:min(calc(100% - 28px),var(--max))}.brand-text{display:none}.hero{min-height:680px}.hero-content{padding:90px 0 70px}.button-row{flex-direction:column;align-items:stretch}.button{width:100%}.trust-grid,.card-grid,.location-grid,.industry-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.trust-item{text-align:left;padding:4px 0}.service-card ul{columns:1}.section{padding:64px 0}.cta-band .container{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column}.problem-list{grid-template-columns:1fr}}

/* v0.3 visual content */
.media-card{overflow:hidden;border-radius:var(--radius);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.media-card img{display:block;width:100%;height:100%;min-height:320px;max-height:480px;object-fit:cover}
.service-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
.service-hero-media{overflow:hidden;border-radius:var(--radius);border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow)}
.service-hero-media img{display:block;width:100%;height:360px;object-fit:cover}
.image-caption{font-size:.82rem;color:var(--muted);padding:10px 14px;margin:0;background:#fff}
@media(max-width:940px){.service-hero-grid{grid-template-columns:1fr}.service-hero-media img{height:300px}}

/* v0.4 certification badges */
.cert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px;max-width:920px}
.cert-card{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 8px 28px rgba(9,38,58,.06)}
.cert-badge-wrap{display:flex;align-items:center;justify-content:center;min-height:150px}
.cert-badge-wrap img{display:block;max-width:145px;max-height:165px;width:auto;height:auto;object-fit:contain}
.cert-card h3{margin:0 0 6px;color:var(--navy);font-size:1.08rem;line-height:1.3}
.cert-card p{margin:0;color:var(--muted);font-size:.95rem}
@media(max-width:940px){.cert-grid{grid-template-columns:1fr}.cert-card{grid-template-columns:125px 1fr}.cert-badge-wrap{min-height:125px}.cert-badge-wrap img{max-width:120px;max-height:140px}}
@media(max-width:560px){.cert-card{grid-template-columns:1fr;text-align:center}.cert-badge-wrap{min-height:auto}.cert-badge-wrap img{max-width:135px;max-height:155px;margin-inline:auto}}

/* v0.6 header logo sizing / hero overlap */
.site-header{overflow:visible}
.header-inner{min-height:100px}
.brand{position:relative;z-index:102;transform:translateY(12px);margin-bottom:-22px}
.brand img{width:370px;max-height:96px}
.primary-nav{position:relative;z-index:103}
@media(max-width:1100px){.brand img{width:330px;max-height:88px}.primary-nav{gap:4px}.nav-link{padding-inline:8px}}
@media(max-width:940px){.header-inner{min-height:88px}.brand{transform:translateY(7px);margin-bottom:-12px}.brand img{width:300px;max-height:80px}.primary-nav{top:88px}}
@media(max-width:640px){.header-inner{min-height:78px}.brand{transform:translateY(4px);margin-bottom:-7px}.brand img{width:245px;max-height:66px}.primary-nav{top:78px}}


/* v0.7 live reviews + expanded photography */
.reviews-widget-shell{max-width:1080px;margin:0 auto}.reviews-actions{text-align:center;margin-top:20px}.review-setup code{font-size:.88em;background:#eef4f7;padding:2px 6px;border-radius:5px}.visual-story{padding-top:74px}.photo-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:18px}.photo-card{margin:0;position:relative;min-height:280px;border-radius:var(--radius);overflow:hidden;background:var(--navy);box-shadow:var(--shadow)}.photo-card img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover;transition:transform .35s ease}.photo-card:hover img{transform:scale(1.025)}.photo-card::after{content:"";position:absolute;inset:auto 0 0;height:48%;background:linear-gradient(transparent,rgba(3,22,34,.78));pointer-events:none}.photo-card figcaption{position:absolute;z-index:2;left:18px;bottom:15px;color:#fff;font-weight:800;letter-spacing:.01em}.photo-card-wide{min-height:330px}.photo-card-wide img{min-height:330px}@media(max-width:940px){.photo-grid{grid-template-columns:1fr 1fr}.photo-card-wide{grid-column:1/-1}.photo-card,.photo-card img{min-height:260px}}@media(max-width:640px){.photo-grid{grid-template-columns:1fr}.photo-card-wide{grid-column:auto}.photo-card,.photo-card img,.photo-card-wide,.photo-card-wide img{min-height:230px}}
