*,*::before,*::after{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem);background:var(--color-bg-primary)}
body{max-width:100%;margin:0;overflow-x:clip;background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.menu-open,body.dialog-open{overflow:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:var(--color-brand-deep);text-decoration-thickness:.08em;text-underline-offset:.2em}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4{margin:0 0 .85rem;color:inherit;font-family:var(--font-heading);font-weight:750;line-height:var(--leading-tight);letter-spacing:-.035em}
h1{font-size:var(--heading-1)}
h2{font-size:var(--heading-2)}
h3{font-size:var(--heading-3);letter-spacing:-.02em}
h4{font-size:1.05rem;letter-spacing:-.01em}
p{margin:.25rem 0 1rem}
ul,ol{margin-top:.5rem}
::selection{background:rgba(38,120,243,.22)}
:focus-visible{outline:3px solid #61a6ff;outline-offset:3px}
[hidden]{display:none!important}
.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}
.skip-link{position:fixed;left:1rem;top:-100px;z-index:9999;border-radius:var(--radius-sm);background:var(--color-surface);color:#000;padding:.75rem 1rem;font-weight:750;box-shadow:var(--shadow-md)}
.skip-link:focus{top:1rem}
.icon{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.icon-sm{width:1rem;height:1rem}.icon-lg{width:1.6rem;height:1.6rem}.icon-xl{width:2rem;height:2rem}
.lead{max-width:64ch;color:var(--color-text-muted);font-size:var(--text-lg);line-height:1.65}
.muted{color:var(--color-text-muted)}
.eyebrow{display:inline-flex;align-items:center;gap:.65rem;margin-bottom:1rem;color:var(--color-brand-deep);font-family:var(--font-heading);font-size:var(--text-xs);font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.eyebrow::before{content:"";width:1.8rem;height:2px;border-radius:2px;background:var(--gradient-security)}
.section-dark .eyebrow,.page-hero .eyebrow,.hero .eyebrow{color:#82e5bf}
.section-dark .lead,.page-hero .lead,.hero .lead{color:var(--color-text-secondary)}
.kicker{font-family:var(--font-heading);font-size:var(--text-xs);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-deep)}
.white-link{color:#fff}
.mt-1{margin-top:1rem}.mt-15{margin-top:1.5rem}.mt-2{margin-top:2rem}
