/* Public-site redesign: intentionally restrained, image-free and static-hosting safe. */
:root { --ink:#101a25; --paper:#f4f2ed; --white:#fff; --blue:#0a51a1; --signal:#e9ff7a; --line:#d7dbe0; --soft:#e8edf1; --muted:#586473; --mono:"Courier New",monospace; --sans:Arial,Helvetica,sans-serif; --container:1240px; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.55;letter-spacing:.002em} .container{width:min(calc(100% - 48px),var(--container))}.site-header{background:rgba(244,242,237,.91);border-color:rgba(16,26,37,.12);backdrop-filter:blur(16px)}.header-inner{min-height:82px;padding:12px 0}.brand img{height:42px}.site-nav{gap:24px;font-size:.77rem;letter-spacing:.08em;text-transform:uppercase}.site-nav a{position:relative}.site-nav>a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--blue);transition:right .2s ease}.site-nav>a:not(.btn):hover::after,.site-nav>a:not(.btn):focus-visible::after{right:0}.btn{border-radius:0;padding:13px 19px;letter-spacing:.04em;text-transform:uppercase;font-size:.77rem;transition:transform .2s ease,background .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px);background:var(--ink);border-color:var(--ink);color:var(--white)}.btn-secondary{border-color:var(--ink);color:var(--ink)}.site-nav .btn-small{min-width:auto;padding:10px 13px}.lang-switch{font-family:var(--mono);font-size:.72rem}.skip-link{border-radius:0}.hero{position:relative;overflow:hidden;padding:0;background:var(--ink);color:var(--white)}.sat-hero{min-height:calc(100vh - 82px);display:grid;align-items:end;padding:clamp(90px,14vw,180px) 0 48px}.sat-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(10,81,161,.24),transparent 42%),repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px 12.5%);pointer-events:none}.sat-hero-copy{position:relative;z-index:1;max-width:1030px}.eyebrow{color:var(--blue);font-family:var(--mono);font-size:.72rem;letter-spacing:.1em}.sat-hero .eyebrow{color:var(--signal)}.sat-hero h1{max-width:1000px;margin:0;font-size:clamp(3rem,8vw,7.35rem);font-weight:400;line-height:.91;letter-spacing:-.07em}.sat-hero .lead{max-width:670px;margin:34px 0 0;color:rgba(255,255,255,.74);font-size:1.06rem}.sat-hero .actions{margin-top:34px}.sat-hero .btn{background:var(--signal);border-color:var(--signal);color:var(--ink)}.sat-hero .btn-secondary{background:transparent;border-color:rgba(255,255,255,.48);color:#fff}.sat-hero .btn:hover{background:#fff;border-color:#fff}.sat-scroll-label{position:absolute;right:0;bottom:5px;writing-mode:vertical-rl;font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;color:rgba(255,255,255,.55)}.logo-reveal{min-height:110vh;display:grid;align-items:center;overflow:hidden;background:var(--paper)}.logo-reveal-inner{position:relative;width:min(100%,1440px);margin:0 auto;padding:0 24px}.logo-reveal-mark{width:min(100%,1080px);margin:auto;transform:scale(var(--sat-reveal-scale,1));opacity:var(--sat-reveal-opacity,.2);transform-origin:center;will-change:transform,opacity}.logo-reveal-mark img{width:100%;filter:grayscale(1) contrast(1.18)}.logo-reveal-caption{display:flex;justify-content:space-between;margin-top:18px;border-top:1px solid var(--line);padding-top:12px;font-family:var(--mono);font-size:.72rem;color:var(--muted)}.section{padding:clamp(76px,11vw,145px) 0}.section-head{max-width:840px;margin-bottom:60px}.section-head h2,.split h2,.cta-inner h2{font-size:clamp(2.1rem,4.7vw,4.5rem);font-weight:400;letter-spacing:-.055em;line-height:.98}.section-head>p:last-child{max-width:670px;font-size:1.08rem;color:var(--muted)}.cards{gap:1px;background:var(--line);border:1px solid var(--line)}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.card,.hero-card,.info-box{border:0;border-radius:0;box-shadow:none;background:var(--white)}.card{padding:32px;min-height:250px}.card h3,.card h2{font-size:1.28rem;font-weight:400;letter-spacing:-.025em}.card h3:before,.card h2:before{display:block;content:"0" counter(sat-card);counter-increment:sat-card;color:var(--blue);font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;margin-bottom:36px}.cards{counter-reset:sat-card}.card p,.card li,.info-box p{color:var(--muted)}.alt{background:var(--ink);color:var(--white)}.alt .eyebrow{color:var(--signal)}.alt h2{color:#fff}.alt p,.alt li{color:rgba(255,255,255,.7)}.split{gap:80px}.info-box{padding:34px;border-top:5px solid var(--signal)}.info-box h3{font-family:var(--mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.check-list{list-style:none;padding-left:0}.check-list li{padding:12px 0;border-top:1px solid rgba(255,255,255,.18)}.check-list li:before{content:"↗";color:var(--signal);padding-right:10px}.cta-strip{background:var(--blue)}.cta-strip .eyebrow{color:var(--signal)}.cta-strip .btn{background:var(--signal);border-color:var(--signal);color:var(--ink)}.cta-strip .btn-secondary{background:transparent;border-color:rgba(255,255,255,.65);color:#fff}.page-hero{padding:clamp(92px,13vw,160px) 0 70px;background:var(--ink);color:#fff}.page-hero .eyebrow{color:var(--signal)}.page-hero h1{font-size:clamp(3rem,6vw,5.5rem);font-weight:400;letter-spacing:-.065em;line-height:.94}.page-hero .lead{color:rgba(255,255,255,.72)}.certification-item{border:0;border-radius:0;box-shadow:none;border-top:1px solid var(--line);background:transparent;padding:30px 0;grid-template-columns:minmax(0,1fr) 210px}.certification-logo{background:var(--white);border:0;border-radius:0}.certifications-head h2,.company-profile-section h2{font-size:clamp(2rem,4vw,3.8rem);font-weight:400;letter-spacing:-.05em;line-height:1}.company-profile-card{background:var(--white);padding:38px;grid-template-columns:1fr}.site-footer{background:#080e16;padding:68px 0;color:#c8d1da}.site-footer h4{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.footer-logo{width:138px}.site-footer a{font-size:.92rem}.nav-toggle{color:var(--ink)}
@media (max-width:900px){.container{width:min(calc(100% - 32px),var(--container))}.site-nav{top:74px;background:var(--paper);border-radius:0}.sat-hero{min-height:680px}.sat-hero h1{font-size:clamp(3.15rem,13vw,5.5rem)}.logo-reveal{min-height:75vh}.cards.three,.cards.two{grid-template-columns:1fr}.card{min-height:0}.split{gap:34px}.certification-item{grid-template-columns:1fr}.certification-logo{max-width:230px}.sat-scroll-label{display:none}.logo-reveal-caption{gap:20px}.page-hero{padding-bottom:58px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.logo-reveal-mark{transform:none!important;opacity:1!important}}

/* v3 — visual language aligned strictly to the S.A.T. blue logomark. */
:root{--sat-blue:#0A51A1;--sat-blue-deep:#063B78;--sat-blue-dark:#042A55;--sat-blue-pale:#EAF3FC;--sat-blue-mist:#F4F8FC;--sat-ink:#102038;--sat-copy:#425977;--sat-line:#C8D8E8;--sat-white:#FFFFFF;--sans:Arial,Helvetica,sans-serif;--mono:Arial,Helvetica,sans-serif;--signal:var(--sat-blue);--ink:var(--sat-ink);--paper:var(--sat-white);--blue:var(--sat-blue);--line:var(--sat-line);--muted:var(--sat-copy)}
body{font-family:var(--sans);background:var(--sat-white);color:var(--sat-ink);letter-spacing:0}.site-header{background:rgba(255,255,255,.95);border-bottom:1px solid var(--sat-line)}.header-inner{min-height:86px}.brand img{height:48px}.site-nav{gap:22px;font-family:var(--sans);font-size:.81rem;font-weight:700;letter-spacing:0;text-transform:none}.site-nav>a:not(.btn)::after{background:var(--sat-blue)}.lang-switch{font-family:var(--sans);font-size:.82rem}.lang-switch a.active{color:var(--sat-blue)}.btn,.site-nav .btn-small{border-radius:999px;background:var(--sat-blue);border-color:var(--sat-blue);font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:0;text-transform:none}.btn:hover{background:var(--sat-blue-dark);border-color:var(--sat-blue-dark);color:var(--sat-white);transform:translateY(-2px)}.btn-secondary{background:transparent;border-color:var(--sat-blue);color:var(--sat-blue)}.btn-secondary:hover{background:var(--sat-blue);border-color:var(--sat-blue)}.hero{background:var(--sat-blue-deep)}.sat-hero{min-height:calc(100vh - 86px);padding:clamp(100px,13vw,164px) 0 70px}.sat-hero:before{background:radial-gradient(circle at 82% 22%,rgba(111,177,241,.3),transparent 28%),linear-gradient(130deg,var(--sat-blue-dark),var(--sat-blue) 105%)}.sat-hero h1{font-family:var(--sans);font-weight:700;letter-spacing:-.055em;line-height:.94}.sat-hero .eyebrow,.page-hero .eyebrow,.alt .eyebrow,.cta-strip .eyebrow{font-family:var(--sans);color:#B9D9F7;font-size:.76rem;font-weight:700;letter-spacing:.08em}.sat-hero .lead{color:rgba(255,255,255,.88);font-size:1.1rem}.sat-hero .btn{background:var(--sat-white);border-color:var(--sat-white);color:var(--sat-blue-deep)}.sat-hero .btn-secondary{background:transparent;border-color:rgba(255,255,255,.74);color:var(--sat-white)}.sat-hero .btn:hover{background:#D9EBFA;border-color:#D9EBFA;color:var(--sat-blue-dark)}.sat-scroll-label{right:3px;bottom:18px;color:rgba(255,255,255,.75);font-family:var(--sans);font-weight:700;letter-spacing:.08em}.logo-reveal{min-height:100vh;background:var(--sat-blue-mist);border-bottom:1px solid var(--sat-line)}.logo-reveal-inner{max-width:1040px}.logo-reveal-mark{width:min(72vw,600px);filter:none}.logo-reveal-mark img{filter:none}.logo-reveal-caption{border-color:var(--sat-line);color:var(--sat-blue-deep);font-family:var(--sans);font-size:.75rem;font-weight:700;letter-spacing:.06em}.section{padding:clamp(74px,9vw,120px) 0}.section-head{max-width:900px;margin-bottom:46px}.eyebrow{font-family:var(--sans);color:var(--sat-blue);font-size:.76rem;font-weight:700;letter-spacing:.08em}.section-head h2,.split h2,.cta-inner h2,.certifications-head h2,.company-profile-section h2{color:var(--sat-ink);font-family:var(--sans);font-size:clamp(2.4rem,4.6vw,4.25rem);font-weight:700;letter-spacing:-.052em;line-height:.98}.section-head>p:last-child{color:var(--sat-copy)}.cards{gap:18px;background:transparent;border:0}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.card{min-height:0;padding:34px 30px;border:1px solid var(--sat-line);border-radius:14px;background:var(--sat-white);box-shadow:0 12px 30px rgba(10,81,161,.06)}.card:hover{border-color:#8ABBE7;box-shadow:0 18px 36px rgba(10,81,161,.13)}.card h3,.card h2{color:var(--sat-blue-deep);font-family:var(--sans);font-size:1.35rem;font-weight:700;letter-spacing:-.02em}.card h3:before,.card h2:before{content:"";width:34px;height:4px;margin-bottom:26px;background:var(--sat-blue);border-radius:20px;font-size:0}.card p,.card li,.info-box p{color:var(--sat-copy)}.alt{background:var(--sat-blue-pale);color:var(--sat-ink)}.alt h2{color:var(--sat-blue-deep)}.alt p,.alt li{color:var(--sat-copy)}.split{gap:58px}.check-list li{border-color:var(--sat-line)}.check-list li:before{color:var(--sat-blue)}.info-box{padding:36px;background:var(--sat-white);border:1px solid var(--sat-line);border-top:5px solid var(--sat-blue);border-radius:14px}.info-box h3{color:var(--sat-blue-deep);font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.08em}.cta-strip{background:var(--sat-blue-deep)}.cta-strip h2{color:var(--sat-white)}.cta-strip .btn{background:var(--sat-white);border-color:var(--sat-white);color:var(--sat-blue-deep)}.cta-strip .btn-secondary{background:transparent;border-color:rgba(255,255,255,.7);color:var(--sat-white)}.page-hero{background:linear-gradient(135deg,var(--sat-blue-dark),var(--sat-blue));padding:clamp(96px,12vw,140px) 0 74px}.page-hero h1{font-family:var(--sans);font-weight:700;letter-spacing:-.055em}.page-hero .lead{color:rgba(255,255,255,.9)}.certification-item{border-color:var(--sat-line);padding:30px 0}.certification-item h3{color:var(--sat-blue-deep);font-family:var(--sans);font-size:1.36rem;font-weight:700}.certification-logo{border:1px solid var(--sat-line);border-radius:12px;background:var(--sat-white)}.company-profile-card{border:1px solid var(--sat-line);border-radius:14px;background:var(--sat-blue-mist);padding:34px}.site-footer{background:var(--sat-blue-dark);padding:62px 0}.site-footer h4{font-family:var(--sans);font-size:.76rem;font-weight:700;letter-spacing:.08em}.site-footer a{color:#E1F0FF}.site-footer a:hover{color:#fff}.nav-toggle{color:var(--sat-blue-deep)}
@media(max-width:900px){.site-nav{background:var(--sat-white);border-color:var(--sat-line);border-radius:14px}.sat-hero{min-height:650px}.cards.three,.cards.two{grid-template-columns:1fr}.card{padding:28px 24px}.logo-reveal{min-height:76vh}.logo-reveal-mark{width:min(78vw,430px)}.logo-reveal-caption{flex-direction:column}.section-head h2,.split h2,.cta-inner h2,.certifications-head h2,.company-profile-section h2{font-size:clamp(2.2rem,10vw,3.3rem)}}

/* v4 — the logo is held in place while the visitor scrolls through its reveal. */
.sat-hero{display:block;min-height:680px;padding:110px 0 82px}.sat-hero h1{max-width:980px;font-size:clamp(3.35rem,6.3vw,5.8rem);line-height:.97}.sat-scroll-label{display:none}.logo-reveal{display:block;min-height:180vh;background:var(--sat-blue-mist)}.logo-reveal-inner{position:sticky;top:0;display:grid;align-content:center;min-height:100vh;padding-top:36px;padding-bottom:36px}.logo-reveal-mark{width:min(58vw,520px);opacity:var(--sat-reveal-opacity,.22);transform:scale(var(--sat-reveal-scale,.16));transition:opacity .08s linear;will-change:transform,opacity}.logo-reveal-mark img{display:block;width:100%;height:auto}.logo-reveal-caption{margin-top:36px;opacity:var(--sat-reveal-opacity,.22);transition:opacity .08s linear}.logo-reveal-caption span:last-child{display:none}@media(max-width:900px){.sat-hero{min-height:620px;padding:86px 0 60px}.sat-hero h1{font-size:clamp(3rem,12vw,4.4rem)}.logo-reveal{min-height:150vh}.logo-reveal-mark{width:min(70vw,370px)}.logo-reveal-caption{margin-top:24px;text-align:center}.logo-reveal-caption span:first-child{margin:auto;max-width:250px}.logo-reveal-inner{padding-left:16px;padding-right:16px}}

/* v6: the blue field opens through the S.A.T. symbol before the home appears. */
.sat-opening{position:relative;display:block;min-height:calc(100vh - 86px);padding:0;overflow:visible;background:linear-gradient(130deg,#042A55,#0A51A1)}
.sat-opening:before{display:none}
.sat-opening-stage{position:relative;display:flex;align-items:center;min-height:calc(100vh - 86px);overflow:hidden}
.sat-opening .sat-hero-copy{position:relative;z-index:2;width:min(calc(100% - 48px),var(--container));padding:60px 0}
.sat-opening-ground,.sat-opening-window{display:none}
html.sat-motion .sat-opening{height:calc((100vh - 86px)*2.6);min-height:0;background:#F4F8FC}
html.sat-motion .sat-opening-stage{position:sticky;top:86px;height:calc(100vh - 86px);min-height:0;background:#F4F8FC}
html.sat-motion .sat-opening-ground{display:block;position:absolute;inset:0;background:#F4F8FC}
html.sat-motion .sat-opening-window{display:block;position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 80% 20%,#1968BA 0,#0A51A1 46%,#042A55 100%);-webkit-mask-image:url('/img/sat-opening-mask.svg');mask-image:url('/img/sat-opening-mask.svg');-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:var(--sat-mask-x,50%) var(--sat-mask-y,50%);mask-position:var(--sat-mask-x,50%) var(--sat-mask-y,50%);-webkit-mask-size:var(--sat-mask-size,78%) auto;mask-size:var(--sat-mask-size,78%) auto;will-change:mask-size,mask-position}
html.sat-motion .sat-opening-window.is-open{background:linear-gradient(130deg,#042A55,#0A51A1);-webkit-mask-image:none;mask-image:none}
html.sat-motion .sat-opening .sat-hero-copy{opacity:var(--sat-content-opacity,0);transform:translateY(var(--sat-content-shift,32px));pointer-events:none;will-change:opacity,transform}
html.sat-motion .sat-opening:focus-within .sat-opening-window{-webkit-mask-image:none;mask-image:none}
html.sat-motion .sat-opening:focus-within .sat-hero-copy{opacity:1;transform:none;pointer-events:auto}
html.sat-motion .sat-opening.is-ready .sat-hero-copy{pointer-events:auto}
@media(max-width:700px){html.sat-motion .sat-opening{height:calc((100vh - 86px)*2.15);min-height:0}html.sat-motion .sat-opening-stage{position:sticky;top:86px;height:calc(100vh - 86px);min-height:0;background:#F4F8FC}html.sat-motion .sat-opening-ground,html.sat-motion .sat-opening-window{display:block}html.sat-motion .sat-opening .sat-hero-copy{opacity:var(--sat-content-opacity,0);transform:translateY(var(--sat-content-shift,32px));pointer-events:none}.sat-opening .sat-hero-copy{width:min(calc(100% - 32px),var(--container))}}
@media(prefers-reduced-motion:reduce){.sat-opening .sat-hero-copy{opacity:1!important;transform:none!important;pointer-events:auto!important}}

/* v7: a quiet cue makes the opening interaction discoverable. */
.sat-scroll-cue{position:absolute;z-index:3;left:50%;bottom:28px;width:24px;height:36px;display:grid;place-items:center;transform:translateX(-50%);opacity:.72;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}.sat-scroll-cue span{width:10px;height:10px;border-right:1.5px solid var(--sat-blue-deep);border-bottom:1.5px solid var(--sat-blue-deep);transform:rotate(45deg) translate(-2px,-2px);animation:sat-scroll-cue 1.8s ease-in-out infinite}.sat-opening.is-ready .sat-scroll-cue{opacity:0;visibility:hidden}@keyframes sat-scroll-cue{0%,100%{transform:rotate(45deg) translate(-2px,-2px)}50%{transform:rotate(45deg) translate(1px,1px)}}@media(max-width:700px){.sat-scroll-cue{bottom:20px}}@media(prefers-reduced-motion:reduce){.sat-scroll-cue span{animation:none}}
