/* AVACS / Typography, references and the scroll-driven product story. */
@font-face{font-family:Manrope;src:url('./fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('./fonts/source-sans-3.woff2') format('woff2');font-style:normal;font-weight:200 900;font-display:swap}
:root{--ease:cubic-bezier(.23,1,.32,1);--muted:#5f666b}
body{font-family:'Source Sans 3',Arial,sans-serif;font-size:17px}
h1,h2,h3,h4,.button,.navcta,.navwrap nav,.eyebrow,.trustbar b{font-family:Manrope,Arial,sans-serif}
h1,h2,h3{letter-spacing:-.042em;font-weight:650;line-height:1.12;text-wrap:balance}
h4{margin:0;font-weight:600;letter-spacing:-.02em}
.hero h1{font-size:clamp(60px,6vw,88px);font-weight:650;letter-spacing:-.055em;line-height:1.09}
.hero-content>p:not(.eyebrow){font-size:18px;line-height:1.65;color:#d3d7da}
.hero-note{font-size:12px}.hero .eyebrow{font-size:10px}.hero-float{animation:none}.hero-float b{font-size:14px}.hero-float small{font-size:11px}
.navwrap{gap:24px}.navwrap nav{gap:22px}.navwrap nav>a{font-size:11px;font-weight:650}.navcta{font-size:11px;gap:20px}
.button{font-size:12px;font-weight:650;transition:background 160ms ease,transform 160ms var(--ease)}
.button:active{transform:scale(.97)}
.eyebrow{font-size:10px;letter-spacing:1.65px}.topbar{font-size:12px}.hero-bottom{font-size:9px}
.trustbar .wrap>span{font-size:13px}.trustbar b{font-weight:600}
.section-head p,.smart-copy>p:not(.eyebrow),.process-intro p,.about-grid p,.detail-hero p:not(.eyebrow){font-size:17px;line-height:1.7}
.card-body h3{font-size:24px;letter-spacing:-.035em}.card-body p,.step p,.feature p{font-size:16px;line-height:1.7}
.card-number{font-size:11px}.card-body{padding-left:30px}.card-image .image-brand{font-size:11px}.card-image .image-brand>span{font-size:7px}
.text-link{font-size:15px}.service-shortcuts a{font-size:13px}.lock-methods b{font-size:12px}.smart-copy small{font-size:12px}
.smart-copy h2{font-size:68px;font-weight:600;letter-spacing:-.055em}.smart-image{perspective:1200px}.scan-frame i{animation:none;top:15%;opacity:.7}
.sector-card p{font-size:15px}.sector-card b,.sector-card div>span{font-size:12px}.sector-card h3,.sector-card h2{font-weight:600;letter-spacing:-.035em}
.monitor-content h2{font-weight:600;letter-spacing:-.045em}.monitor-content>p:not(.eyebrow){font-size:16px}.monitor-content small{font-size:11px}
.step h3{font-size:25px}.step>span{font-size:13px}.faq-grid>div>p:not(.eyebrow){font-size:16px}summary{font-size:16px}details p{font-size:16px}
.cta h2{font-weight:600}.cta p:not(.eyebrow){font-size:16px}.cta .text-link{font-size:16px}
.footer-brand p,.footer-contact p{font-size:14px}.footer-top h3{font-size:14px}.footer-top>div>a:not(.logo){font-size:13px}.footer-bottom{font-size:12px}
.breadcrumbs{font-size:12px}.detail-hero figcaption{font-size:12px}.check-list li{font-size:16px}.contact-copy>p:not(.eyebrow){font-size:17px}.contact-detail b{font-size:11px}.contact-detail p,.contact-detail a{font-size:15px}
.form-heading>span{font-size:11px}.form-heading p{font-size:15px}form label{font-size:14px}input,select,textarea{font-size:16px}.consent{font-size:13px}.form-note{font-size:12px}#form-status{font-size:15px}
.article-body p{font-size:18px}.article-body section>span{font-size:13px}.sitemap-links>a{font-size:16px}
.scroll-progress{width:100%;transform:scaleX(0);transform-origin:left}
.reveal{transition:opacity 600ms var(--ease),transform 600ms var(--ease)}
.service-card:nth-child(3n+2).reveal{transition-delay:50ms}.service-card:nth-child(3n+3).reveal{transition-delay:100ms}

/* A three-stage explanation. The cards move; readable copy stays still. */
.security-story{padding-top:100px;background:#111518;color:#fff;isolation:isolate}
.security-story .section-head{margin-bottom:20px}.security-story .eyebrow{color:#b3bcc2}.security-story h2{font-size:clamp(35px,4.2vw,59px)}.security-story h2 span{color:#a6aeb4}.security-story .section-head>p{color:#aab3ba}
.story-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;align-items:start}
.story-stage{position:sticky;top:100px;height:min(650px,calc(100svh - 120px));min-height:400px;perspective:1400px;display:grid;align-items:center;overflow:hidden}
.story-aura{position:absolute;inset:5% -10%;background:radial-gradient(ellipse at 55% 50%,#8a0c233b,transparent 64%);pointer-events:none}
.story-orbit{position:absolute;left:4%;right:4%;bottom:10%;height:24%;border:1px solid #ffffff18;border-radius:50%;transform:rotateX(65deg);box-shadow:0 0 0 35px #ffffff02,0 0 0 70px #ffffff01}
.story-object{position:relative;width:82%;margin:auto;aspect-ratio:1.08;transform-style:preserve-3d;transform:rotateY(-12deg) rotateX(5deg)}
.story-slab{position:absolute;inset:0;background:linear-gradient(145deg,#3e4448,#171b1e);border:1px solid #747b8145;border-radius:12px;box-shadow:0 25px 60px #0004}
.story-slab.back{transform:translate3d(-24px,24px,-60px)}.story-slab.middle{transform:translate3d(-12px,12px,-30px)}
.story-product{position:absolute;inset:0;border:1px solid #ffffff30;border-radius:12px;overflow:hidden;background:#e6e5e0;box-shadow:0 24px 65px #0008}
.story-visual{position:absolute;inset:0;opacity:0;transition:opacity 250ms ease;pointer-events:none}.story-visual.active{opacity:1}.story-visual>img{width:100%;height:100%;object-fit:cover}
.story-visual:after{position:absolute;content:'';inset:50% 0 0;background:linear-gradient(transparent,#0d111bd9)}
.story-visual-caption{position:absolute;z-index:1;left:25px;bottom:22px;font-family:Manrope,sans-serif;font-size:18px;font-weight:600;letter-spacing:-.02em}
.story-brand{position:absolute;right:-20px;top:-20px;width:120px;padding:17px;background:#fff;border-radius:6px;box-shadow:0 8px 35px #0004;transform:translateZ(45px)}
.story-stage-footer{position:absolute;left:5%;right:5%;bottom:20px;display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:1.2px;color:#89959d}
.story-dots{position:absolute;bottom:50px;left:0;right:0;display:flex;justify-content:center;gap:9px}.story-dots i{width:5px;height:5px;border-radius:50%;background:#788189}.story-dots i.active{background:#ff3f4c;box-shadow:0 0 0 4px #ff3f4c16}
.story-flow{padding-bottom:40px}.story-step{min-height:65vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:60px 0;border-top:1px solid #ffffff15}.story-step:first-child{border:0}.story-index{font-size:10px;letter-spacing:1.4px;color:#9eaaaf}.story-step h3{font-size:clamp(36px,4.5vw,65px);margin:26px 0 22px;letter-spacing:-.045em}.story-step h4{font-size:19px;margin-bottom:14px}.story-step p{color:#aab3ba;font-size:18px;line-height:1.75;max-width:380px}.story-step .text-link{margin-top:22px;color:#fff;border-color:#ffffff40}.story-mobile-image{display:none}

/* Original client logos are presented from the supplied AVACS posts. */
.reference-preview{background:#f3f4f3;border-top:1px solid var(--line)}
.reference-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.reference-tile{min-width:0}.reference-tile>span{display:block;margin-top:13px;font-size:12px;color:#5f666b;line-height:1.5}
.reference-logo{position:relative;width:100%;aspect-ratio:2.15;overflow:hidden;background:#001f4d;border-radius:3px;isolation:isolate}
.reference-logo>svg{display:block;width:100%;height:100%}.reference-logo svg svg{overflow:hidden}
.reference-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:65px;align-items:end}.reference-heading h1{font-size:clamp(43px,6vw,84px)}.reference-heading h1 span{color:#89918f}.reference-heading p{font-size:18px}.reference-heading .text-link{margin-top:20px}
.references-intro{padding-top:55px;padding-bottom:55px}.reference-summary{display:flex;align-items:center;gap:65px;margin-top:55px;padding:30px 0;border-block:1px solid var(--line)}.reference-summary>span{display:flex;flex-direction:column;font-size:14px;color:var(--muted)}.reference-summary b{font-family:Manrope,sans-serif;font-size:43px;letter-spacing:-.05em;color:var(--ink);font-weight:600;line-height:1.3}.reference-summary>p{margin-left:auto;font-size:16px;text-align:right}
.reference-directory{padding-bottom:80px;scroll-margin-top:110px}.reference-tools{display:grid;grid-template-columns:1.2fr 1fr auto auto;gap:22px;align-items:end;margin-bottom:35px}.reference-tools label{font-size:13px;font-weight:600}.reference-tools input,.reference-tools select{margin-top:6px;min-height:48px}.reference-tools p{font-size:13px;padding-bottom:14px;white-space:nowrap}.reference-reset{border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;min-height:48px;padding:0;font-size:13px;text-align:left}
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:start}.reference-card{border:1px solid var(--line);background:white;min-width:0;scroll-margin-top:110px}.reference-card:target{outline:2px solid var(--red);outline-offset:5px}.reference-card .reference-logo{border-radius:0;aspect-ratio:2.2}.reference-copy{padding:25px}.reference-category{font-size:11px;letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;color:#747e82}.reference-copy h2{font-size:24px;line-height:1.3;min-height:62px;letter-spacing:-.035em;text-wrap:wrap}.reference-detail,.reference-detail:first-child{border:0;border-top:1px solid var(--line);margin-top:22px}.reference-detail summary{font-size:14px;padding:18px 0 0;gap:10px}.reference-detail summary span{font-size:20px}.reference-detail figure{margin-top:20px}.reference-detail figure img{width:100%;height:auto}.reference-detail figcaption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:12px}.reference-empty{background:var(--paper);padding:45px 25px;font-size:18px}.reference-note{border-top:1px solid var(--line);padding-top:30px;margin-top:45px;display:grid;grid-template-columns:1fr 2fr;gap:35px}.reference-note>span{font-size:11px;font-weight:600;letter-spacing:1px}.reference-note p{font-size:15px;max-width:650px}
[hidden]{display:none!important}
@media(hover:hover) and (pointer:fine){.reference-tile:hover>span{color:var(--red)}.reference-reset:hover{color:var(--red)}}
@media(hover:none),(pointer:coarse){.button:hover{transform:none}.service-card:hover .card-image>img,.sector-card:hover>img{transform:none}}
@media(max-width:1200px){.navwrap{gap:18px}.navwrap nav{gap:16px}.navwrap nav>a{font-size:10px}.navcta{gap:12px}.reference-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.story-layout{gap:45px}.reference-tools{grid-template-columns:1fr 1fr}.reference-tools p{padding:0}}
@media(max-width:1100px){.header{height:80px}.navwrap nav{position:absolute;left:0;right:0;top:79px;background:#fff;padding:25px 32px 32px;display:none;box-shadow:0 15px 20px #0001;max-height:calc(100dvh - 80px);overflow:auto}.navwrap nav.open{display:flex;flex-direction:column;gap:0}.navwrap nav>a{font-size:18px;padding:15px 0;border-bottom:1px solid var(--line)}.menu-toggle{display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.navcta{margin-left:auto}.hero h1{font-size:clamp(60px,7vw,78px)}.reference-grid{gap:20px}.reference-copy{padding:20px}.reference-copy h2{font-size:21px}.story-stage{min-height:350px}.story-brand{width:95px;padding:12px}.story-stage-footer{font-size:8px}.story-stage-footer span:last-child{display:none}}
@media(max-width:800px){.story-layout{display:block}.story-stage{display:none}.story-mobile-image{display:block;margin-top:28px;width:100%;max-width:540px}.story-mobile-image img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:6px}.security-story{padding-top:65px}.story-step{min-height:0;padding:45px 0}.story-step p{max-width:100%}.story-step h3{font-size:44px;margin:18px 0}.story-step h4{font-size:19px}.story-step p{font-size:17px}.story-step .text-link{margin-top:14px}.story-flow{padding-bottom:25px}.reference-heading{grid-template-columns:1fr;gap:25px}.reference-summary{gap:35px}.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-summary>p{font-size:14px}.reference-note{grid-template-columns:1fr;gap:15px}.smart-copy h2{font-size:56px}}
@media(max-width:650px){.header{height:72px}.navwrap nav{top:71px;padding-inline:20px}.navwrap{gap:10px}.navcta{font-size:9px;padding:10px 11px;gap:10px}.topbar{font-size:10px}.hero h1{font-size:clamp(44px,11.6vw,70px);line-height:1.09;letter-spacing:-.055em}.hero{min-height:740px}.hero-content{padding-top:40px}.hero-content>p:not(.eyebrow){font-size:15px;line-height:1.7}.hero .eyebrow{font-size:8px}.hero-buttons{flex-wrap:wrap;gap:10px}.hero-buttons .button{font-size:10px;gap:13px;padding:14px}.hero-note{font-size:10px;max-width:300px}.hero-float{max-width:calc(100% - 40px)}.hero-float b{font-size:13px}.hero-float small{font-size:10px}.hero-bottom{font-size:8px}.trustbar .wrap>span{font-size:11px;gap:8px}.trustbar b{font-size:20px}.eyebrow{font-size:9px}.section-head p,.smart-copy>p:not(.eyebrow),.process-intro p,.about-grid p,.detail-hero p:not(.eyebrow){font-size:16px}.card-body h3{font-size:25px}.card-body p,.step p,.feature p{font-size:16px}.text-link{font-size:14px}.button{font-size:11px}.smart-copy h2{font-size:clamp(46px,13vw,63px)}.smart-copy small{font-size:11px}.lock-methods{gap:22px}.lock-methods b{font-size:11px}.service-shortcuts a{font-size:12px}.monitor-content h2{font-size:43px}.monitor-content>p:not(.eyebrow){font-size:15px}.monitor-content small{font-size:10px}.monitor-section{height:750px}.monitor-image{top:340px}.sector-card p{font-size:15px}.sector-card b,.sector-card div>span{font-size:11px}.faq-grid h2{font-size:32px}summary,details p{font-size:15px}.cta h2{font-size:33px}.cta p:not(.eyebrow){font-size:15px}.footer-top>div>a:not(.logo){font-size:13px}.footer-brand p,.footer-contact p{font-size:14px}.footer-bottom{font-size:11px}.footer-brand{display:block}.footer-brand p{margin-top:20px}.breadcrumbs{font-size:11px}.form-heading p{font-size:15px}form label{font-size:14px}.contact-detail p,.contact-detail a{font-size:15px}.article-body p{font-size:17px}.reference-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.reference-tile>span{font-size:11px}.reference-heading h1{font-size:clamp(41px,11vw,56px)}.reference-heading p{font-size:17px}.references-intro{padding-block:40px}.reference-summary{margin-top:35px;gap:35px;flex-wrap:wrap}.reference-summary b{font-size:36px}.reference-summary>span{font-size:13px}.reference-summary>p{width:100%;margin:0;text-align:left;font-size:15px}.reference-tools{gap:15px}.reference-search{grid-column:1/-1}.reference-select{grid-column:1/-1}.reference-tools p{font-size:12px}.reference-reset{font-size:12px;min-height:35px;justify-self:end}.reference-grid{grid-template-columns:minmax(0,1fr);gap:24px}.reference-copy{padding:24px}.reference-copy h2{font-size:26px;min-height:0}.reference-card .reference-logo{aspect-ratio:2.5}.reference-detail summary{font-size:15px}.reference-note p{font-size:16px}.reference-directory{padding-bottom:55px}.security-story .section-head p{font-size:16px}.story-index{font-size:9px}.story-step h3{font-size:40px}}
@media(prefers-reduced-motion:reduce){.story-object{transform:none!important}.story-visual{transition:opacity 200ms ease!important}.button:active{transform:none}.reveal{transform:none!important;opacity:1!important}.hero-photo img{transform:none!important}}

.navwrap nav>a:after{width:100%;transform:scaleX(0);transform-origin:left;transition:transform 160ms var(--ease)}
.navwrap nav>a:hover:after,.navwrap nav>a[aria-current=page]:after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.button:hover,.service-card:hover .card-image>img,.sector-card:hover>img{transform:none}}
