:root{--navy:#071426;--ink:#0d1b2e;--muted:#627084;--blue:#34a6ff;--pale:#f3f7fa;--line:#dce5ec;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Manrope,Arial,sans-serif;color:var(--ink);line-height:1.7}
h1,h2,h3,p{margin-top:0}
h2{font:500 clamp(2rem,4vw,3.4rem)/1.13 var(--serif);letter-spacing:-.04em;max-width:720px}
.site-header{background:var(--navy);color:#fff;overflow:hidden}
.navbar{min-height:78px}
.navbar-brand{font-size:.72rem;letter-spacing:.11em;display:flex;align-items:center;gap:.65rem}
.navbar-brand b{font-weight:800}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid #6ec0ff;color:#6ec0ff;font-weight:800;font-size:.65rem}
.nav-link{font-size:.81rem;color:#cbd6e3!important}
.nav-link:hover{color:#fff!important}
.btn{border-radius:0;font-size:.83rem;font-weight:700;padding:.74rem 1.1rem;letter-spacing:.01em}
.btn-sm{font-size:.75rem;padding:.5rem .8rem}
.btn-primary{background:#168de5;border-color:#168de5}
.btn-primary:hover{background:#47a9ed;border-color:#47a9ed}
.btn-outline-light{border-color:#45566b}
.navbar-toggler:focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid #79c6ff;outline-offset:3px;box-shadow:none}
.hero{padding:6.5rem 12px 7.5rem}
.eyebrow{color:#7fc7ff;text-transform:uppercase;font:500 .7rem/1.2 'DM Mono',monospace;letter-spacing:.12em;margin-bottom:1.4rem}
.eyebrow span{display:inline-block;background:#54b8fb;width:24px;height:1px;vertical-align:middle;margin-right:.6rem}
.eyebrow small{color:#8a9bb0;text-transform:none;letter-spacing:0}
.dark{color:#147dc4}
.hero h1{font:500 clamp(4rem,8vw,7.3rem)/.88 var(--serif);letter-spacing:-.065em}
.hero h1 em{color:#79c6ff}
.hero-title{font-size:1.05rem;font-weight:700;margin:1.7rem 0 .8rem}
.hero-copy{max-width:600px;color:#bac8d8;font-size:1rem}
.btn-link-light{color:#eaf4ff;text-decoration:none}
.portrait-placeholder{height:440px;position:relative;border:1px solid #304257;background:#0a1728;overflow:hidden}
.portrait-placeholder img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.proof-strip{background:#0d2137;color:#dce8f2}
.proof-item{min-height:95px;padding:1.45rem 1.25rem;display:flex;gap:.7rem;align-items:center;border-right:1px solid #29405a;font-size:.74rem;font-weight:700;line-height:1.5}
.proof-item:last-child{border:0}
.proof-item i{color:#65bdff;font-size:1.2rem}
.section{padding:7.5rem 0}
.section-light{background:var(--pale)}
.lead{font:500 1.48rem/1.5 var(--serif);letter-spacing:-.02em}
.section p:not(.eyebrow){color:var(--muted)}
.text-link{color:#0b568d;font-weight:800;text-decoration:none;font-size:.85rem}
.section-heading{display:flex;justify-content:space-between;gap:3rem;align-items:end;margin-bottom:2.7rem}
.section-heading>p{max-width:365px;font-size:.9rem;margin-bottom:0}
.specialty-card{height:100%;border:1px solid var(--line);padding:1.6rem;background:#fff;transition:.2s}
.specialty-card:hover{border-color:#79bde9;transform:translateY(-3px)}
.specialty-card i{font-size:1.25rem;color:#0d83d3}
.specialty-card h3{font-size:.95rem;font-weight:800;margin:1.2rem 0 .45rem}
.specialty-card p{font-size:.78rem;line-height:1.65;margin:0}
.tech-section{background:#0b1b2f;color:#fff}
.tech-section h2{color:#fff}
.tech-badges{display:flex;flex-wrap:wrap;gap:.65rem}
.tech-badges span{border:1px solid #3b526a;padding:.56rem .8rem;color:#d8e8f5;font:400 .72rem 'DM Mono',monospace}
.cert-card{height:100%;background:#fff;border:1px solid var(--line);padding:1.5rem}
.cert-card.active{border-top:3px solid #168de5}
.cert-card i{color:#168de5;font-size:1.2rem}
.cert-card p{font:400 .65rem 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em;margin:1.3rem 0 .4rem;color:#64768a}
.cert-card h3{font:700 1.1rem Manrope;margin-bottom:.4rem}
.cert-card span{font-size:.72rem;color:#68788a;line-height:1.5;display:block}
.difference{border-top:1px solid var(--line);padding-top:1.2rem}
.difference b{display:block;font:500 1.22rem var(--serif);letter-spacing:-.02em;margin-bottom:.4rem}
.difference p{font-size:.8rem;margin:0}
.blog-section{background:#102840;color:#fff;padding:5rem 0}
.blog-empty{display:flex;justify-content:space-between;align-items:center}
.blog-empty h2{color:#fff}
.blog-empty p:not(.eyebrow){max-width:570px;color:#a7bdd0}
.blog-empty>i{font-size:5rem;color:#40769e;margin-right:8%}
.contact-section{padding:7.5rem 0;background:#071426;color:#fff}
.contact-section h2{color:#fff}
.contact-section p:not(.eyebrow){color:#b9c9d9;max-width:650px}
.contact-card{border-left:1px solid #3a556e;padding:1rem 0 1rem 1.5rem}
.contact-card span{display:block;text-transform:uppercase;color:#7da5c5;font:400 .65rem 'DM Mono',monospace;letter-spacing:.1em;margin-bottom:1rem}
.contact-card>a:not(.contact-socials a){display:block;color:#fff;font-size:.9rem;text-decoration:none;margin:.45rem 0}
.contact-socials{display:flex;gap:.55rem;margin-top:1.2rem}
.contact-socials a{display:grid;place-items:center;border:1px solid #3a556e;width:35px;height:35px;color:#8bcfff}
.contact-socials a:hover{background:#168de5;color:#fff}
footer{background:#050e1a;color:#8195aa;padding:1.5rem 0;font-size:.7rem}
@media(max-width:767.98px){.hero{padding:4rem 12px 5rem}
.portrait-placeholder{height:300px}
.proof-item{border-right:0;border-bottom:1px solid #29405a}
.section{padding:4.5rem 0}
.section-heading{display:block}
.section-heading>p{margin-top:1.2rem}
.blog-empty>i{display:none}
.contact-section{padding:4.5rem 0}
}
.problems-section{background:#f7fafc}
.problem-list{border:1px solid var(--line);background:#fff}
.problem{display:flex;gap:.85rem;align-items:flex-start;padding:1.1rem 1.25rem;border-bottom:1px solid var(--line);font-size:.82rem;font-weight:700}
.problem i{color:#168de5;font-size:1rem}
@media(min-width:768px){.problem-list>.col-md-6:nth-last-child(-n+2) .problem{border-bottom:0}}
@media(max-width:767.98px){.problem-list>.col-md-6:last-child .problem{border-bottom:0}}
