@charset "UTF-8";
:root{--ink:#142747;--muted:#526580;--paper:#f4f7ff;--white:#fff;--line:#dce6f7;--dark:#0b1934;--gold:#28d9ce;--gold-light:#a5f4ee;--dark-muted:#b8c8e5;--blue:#245de8;--cyan:#28d9ce;--amber:#ffb45e;--sans:"Segoe UI",Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;color:inherit}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #245de8;outline-offset:5px}
::selection{background:#c9ddff;color:#0b1934}
[hidden]{display:none!important}
.container{width:min(1360px,calc(100% - 112px));margin-inline:auto}
.section{padding-block:112px}
.header-shell,.hero-wrap{background:var(--dark);color:var(--paper)}
.skip-link{position:fixed;top:-60px;left:16px;z-index:100;background:var(--paper);color:var(--ink);padding:12px 18px}
.skip-link:focus{top:12px}
.site-header{display:flex;align-items:center;gap:36px;min-height:107px;border-bottom:1px solid #ffffff16;position:relative}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}
.brand img{width:43px;height:43px;animation:legion-emblem-float 7s ease-in-out infinite;transform-origin:50% 55%;backface-visibility:visible}
.brand-text{font-size:15px;letter-spacing:2px;font-weight:650;line-height:1.45}
.brand-text>span{display:block;font-size:7.8px;letter-spacing:2.4px;font-weight:400;margin-top:3px;color:var(--dark-muted)}
.site-nav{display:flex;align-items:center;justify-content:center;gap:26px;margin-left:auto}
.site-nav>a{font-size:12px;white-space:nowrap;color:#e1e9f8;transition:color .2s}
.site-nav>a:hover,.footer-links a:hover{color:var(--gold)}
.site-nav .employee-link{font-size:10px;letter-spacing:.15px;border-left:1px solid #ffffff22;padding-left:24px}
.employee-link span{color:var(--gold);padding-left:3px}
.header-cta{display:none;background:#142c52;border:1px solid #557ba9;border-radius:10px;padding:11px 17px;font-size:11px;white-space:nowrap}
.header-cta span{margin-left:10px;color:var(--gold)}
.menu-toggle{display:none}
.hero{position:relative;display:grid;grid-template-columns:.94fr 1.06fr;min-height:666px;align-items:center;gap:40px;padding-top:44px;padding-bottom:46px}
.hero-copy{position:relative;z-index:2;padding-bottom:4px}
.eyebrow{display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:2px;line-height:1.5;font-weight:600;margin:0 0 23px;color:#3c5fa7}
.eyebrow.light{color:var(--cyan)}
.gold-line{width:30px;height:1px;background:#245de8;flex-shrink:0}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-2.5px;line-height:1.1}
h1{font-size:clamp(56px,5.2vw,78px);margin-bottom:28px}
h1 em,h2 em{font-weight:400;color:#245de8;font-style:italic}
h1 em{color:var(--gold)}
.hero-description{max-width:420px;color:#b8c8e5;font-size:14px;line-height:1.9;margin-bottom:31px}
.hero-actions{display:flex;align-items:center;gap:29px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:600;padding:17px 23px;line-height:1.5;min-height:56px;transition:background .2s,transform .2s}
.button:hover{transform:translateY(-2px)}
.button-gold{background:var(--blue);color:#ffffff;box-shadow:0 7px 22px #245de830}
.button-gold:hover{background:#4078f4;box-shadow:0 9px 25px #245de842}
.button-dark{background:var(--blue);color:#ffffff;box-shadow:0 6px 16px #245de824}
.button-dark:hover{background:#1b4dca}
.button span{font-size:18px;font-weight:400}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;background:none;padding:0;border:none;font-size:12px;font-weight:600}
.text-link:hover{color:#245de8}
.text-link span{font-size:16px}
.light-link{color:#edf4ff;font-weight:400;font-size:11px}
.hero-caption{display:flex;align-items:center;gap:12px;margin-top:55px}
.hero-caption p{margin:0;font-size:10px;color:#aebfda;line-height:1.7}
.hero-caption strong{font-weight:400;color:#d8e5fa}
.small-shield{display:flex;align-items:center;justify-content:center;width:32px;height:36px;color:var(--gold);font-size:35px}
.hero-art{height:543px;position:relative;overflow:hidden;align-self:center;border:1px solid #5c92d640;border-radius:22px;background:#0e2347;box-shadow:0 20px 70px #00102555;isolation:isolate}
.residence-image{width:100%;height:100%;object-fit:cover;object-position:58% center;transform:scale(1.07)}
.art-gradient{position:absolute;inset:0;background:linear-gradient(180deg,#0b193416 50%,#0b1934cc 100%)}
.art-label{position:absolute;top:23px;left:23px;display:flex;align-items:center;gap:8px;border:1px solid #70a7ef55;background:#0a1b3dcc;backdrop-filter:blur(8px);border-radius:8px;padding:8px 11px;font-size:8px;letter-spacing:1.4px;color:#e5f2ff}
.status-point{width:5px;height:5px;border-radius:50%;background:#28d9ce;box-shadow:0 0 8px #28d9ce88}
.art-note{position:absolute;bottom:35px;left:33px}
.art-note>span{font-size:8px;letter-spacing:1.8px;color:#b9cee9}
.art-note p{font-family:var(--serif);font-size:28px;line-height:1.2;margin-top:12px;margin-bottom:0;letter-spacing:-.5px}
.art-coordinate{position:absolute;right:20px;bottom:36px;writing-mode:vertical-rl;font-size:7px;letter-spacing:2px;color:#b8cae8}
.security-focus{position:absolute;top:36%;left:36%;width:34%;height:30%;opacity:.7}
.focus-corner{position:absolute;width:17px;height:17px;border-color:#28d9ce;border-style:solid}
.top-left{top:0;left:0;border-width:1px 0 0 1px}.top-right{top:0;right:0;border-width:1px 1px 0 0}.bottom-left{bottom:0;left:0;border-width:0 0 1px 1px}.bottom-right{bottom:0;right:0;border-width:0 1px 1px 0}
.focus-center{position:absolute;width:5px;height:5px;border:1px solid #28d9ce;border-radius:50%;top:50%;left:50%}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff16;padding-block:21px 23px}
.hero-bottom p{margin:0;font-size:10px;color:#b1c3df;letter-spacing:.5px}
.hero-bottom a{display:flex;gap:23px;align-items:center;font-size:8px;letter-spacing:1.5px;color:#d1e0f5}
.hero-bottom a span{font-size:14px;color:var(--gold)}
.heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:50px}
h2{font-size:clamp(38px,3.7vw,55px);margin-bottom:0}
.section-description{max-width:390px;color:var(--muted);font-size:16px;line-height:1.8;margin:0 0 5px}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:46px;gap:18px}
.service-card{background:#ffffff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 28px #17437d08;padding:27px 23px 24px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s,box-shadow .2s}
.service-card:hover{border-color:#92b6ff;transform:translateY(-4px);box-shadow:0 16px 35px #17437d15}
.service-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}
.service-number{font-size:12px;color:#5b7297;letter-spacing:1.5px}
.service-icon{width:56px;height:56px;color:#245de8;padding:9px;border-radius:15px;background:linear-gradient(145deg,#eef4ff,#e4efff);box-shadow:inset 0 1px 0 #ffffff,0 5px 14px #245de80a}
.service-category{font-size:10px;letter-spacing:1.4px;color:#526d98;margin-bottom:13px}
.service-card h3{font-size:21px;font-weight:500;letter-spacing:-.4px;margin-bottom:14px;line-height:1.35}
.service-card>p:last-of-type{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:32px}
.service-action{margin-top:auto;border:none;border-top:1px solid var(--line);background:transparent;padding:19px 0 0;font-size:14px;display:flex;justify-content:space-between;align-items:center;text-align:left;min-height:47px}
.service-action span{font-size:20px;color:#245de8}
.service-action:hover{color:#245de8}
.service-footnote{display:flex;align-items:center;gap:11px;margin-top:27px}
.gold-dot{width:5px;height:5px;border-radius:50%;background:#ffb45e;flex-shrink:0}
.service-footnote p{color:#526580;font-size:12px;margin:0}
.service-footnote>a{margin-left:auto;font-size:12px;white-space:nowrap}
.solutions-section{padding-block:94px;background:linear-gradient(120deg,#0b1934,#132d59);color:var(--paper);position:relative;overflow:hidden}
.solutions-section:before{content:"";position:absolute;left:-8%;bottom:-60%;width:600px;height:600px;border:1px solid #58a6ff1c;border-radius:50%;box-shadow:0 0 0 75px #58a6ff08,0 0 0 150px #58a6ff08}
.solutions-layout{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start}
.solutions-copy{padding-top:13px}
.solutions-copy h2{font-size:48px;line-height:1.15}
.solutions-copy h2 em{color:var(--gold)}
.solutions-copy>p:last-of-type{font-size:13px;line-height:1.9;color:#c2d2ec;max-width:350px;margin-top:27px;margin-bottom:0}
.solution-ornament{position:relative;margin-top:45px;width:226px;height:169px;display:flex;align-items:center;justify-content:center}
.solution-ornament span{position:absolute;border:1px solid #3acbdd25;width:200px;height:120px;border-radius:50%;transform:rotate(-25deg)}
.solution-ornament span:nth-child(2){transform:rotate(25deg)}.solution-ornament span:nth-child(3){transform:rotate(65deg);width:170px}.solution-ornament span:nth-child(4){transform:rotate(-65deg);width:170px}
.solution-ornament img{position:relative;opacity:.9}
.solution-builder{border:1px solid #74a2ee50;border-radius:18px;padding:28px 30px 25px;background:#1e3e682e;box-shadow:0 18px 50px #05122933}
fieldset{padding:0;border:0;margin:0}
.solution-builder legend{font-size:11px;color:#e7effc;margin-bottom:18px}
.solution-builder legend>span{font-size:9px;color:var(--gold);margin-right:12px;letter-spacing:1px}
.object-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.object-option{position:relative;cursor:pointer}
.object-option input,.priority-options input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.object-option>span{display:flex;flex-direction:column;align-items:center;gap:9px;border:1px solid #85aff540;border-radius:10px;padding:16px 6px 13px;color:#d6e4fa;font-size:9px;white-space:nowrap;transition:all .2s}
.object-option svg{width:26px;height:26px}
.object-option input:checked+span{border-color:var(--gold);background:#28d9ce16;color:var(--gold-light)}
.object-option input:focus-visible+span,.priority-options input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}
.object-option>span:hover{border-color:#28d9ceaa}
.priority-fieldset{margin-top:24px}
.priority-options{display:flex;flex-wrap:wrap;gap:8px}
.priority-options label{cursor:pointer;position:relative}
.priority-options span{display:block;padding:8px 12px;border:1px solid #85aff540;border-radius:8px;color:#d1dff7;font-size:9px;transition:all .2s}
.priority-options input:checked+span{background:#28d9ce20;border-color:#28d9ceaa;color:var(--gold-light)}
.recommendation{padding-top:22px;margin-top:23px;border-top:1px solid #85aff535}
.recommendation-label{color:#b4c7e7;font-size:7px;letter-spacing:1.5px}
.recommendation h3{font-family:var(--serif);font-size:24px;font-weight:400;line-height:1.35;margin:9px 0 10px;letter-spacing:-.4px}
.recommendation p{color:#c1d1eb;font-size:11px;line-height:1.8;margin-bottom:23px;min-height:59px}
.solution-builder>.button{width:100%;min-height:49px;padding-block:14px;font-size:11px}
.builder-note{font-size:8px;color:#b7cbea;text-align:center;margin:13px 0 0}
.process-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:30px;margin-top:51px;margin-bottom:0}
.process-grid li{position:relative;padding-top:22px;border-top:1px solid #cedcf2}
.process-grid li:before{content:"";position:absolute;top:-3px;left:0;width:5px;height:5px;border-radius:50%;background:#ffb45e}
.process-number{color:#245de8;font-family:var(--serif);font-size:26px;display:block;margin-bottom:16px}
.process-grid h3{font-size:18px;font-weight:500;margin-bottom:10px;line-height:1.4}
.process-grid p{color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:0}
.consultation-banner{margin-top:64px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:37px 40px;background:linear-gradient(110deg,#e8f0ff,#eefbff);border:1px solid #cddffc;border-left:3px solid var(--blue);border-radius:16px;box-shadow:0 10px 30px #245de808}
.consultation-banner .eyebrow{font-size:11px;letter-spacing:1.6px;margin-bottom:12px;color:#466394}
.consultation-banner h3{font-family:var(--serif);font-size:29px;font-weight:400;letter-spacing:-.7px;line-height:1.28;margin-bottom:0}
.consultation-banner .button{font-size:14px;min-height:49px;white-space:nowrap}
.contacts-section{background:#ecf3ff;border-top:1px solid #d5e4fb;padding-block:94px 102px}
.contacts-layout{display:grid;grid-template-columns:1fr;gap:42px}
.contacts-copy{padding-top:5px;display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.contacts-copy h2{font-size:45px;line-height:1.16}
.contacts-copy>p:not(.eyebrow):not(.contacts-note){max-width:325px;color:var(--muted);font-size:15px;line-height:1.8;margin-top:25px;margin-bottom:23px}
.contacts-copy>.text-link{font-size:14px;border-bottom:1px solid #a6bde4;padding-bottom:6px}
.contacts-copy>.contacts-note{font-size:12px!important;color:#5b7093!important;margin-top:39px!important;max-width:310px!important}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.contact-card{background:#ffffff;border:1px solid #d8e5f9;border-radius:14px;box-shadow:0 8px 24px #17437d07;padding:27px 25px 24px}
.contact-icon{font-size:12px;color:#245de8;letter-spacing:1px;display:block;margin-bottom:20px}
.contact-card h3{font-size:20px;font-weight:500;margin-bottom:11px;line-height:1.4}
.contact-card p{font-size:15px;color:#526580;line-height:1.8;margin-bottom:18px;min-height:0}
.contact-button{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:14px;border:none;padding:0;background:none;width:100%;text-align:left;min-height:34px}
.contact-button span{font-size:20px;color:#245de8}
.phone-pending{display:block;font-size:12px;color:#586e91;margin-top:8px}
.configured-phone{display:block;color:#245de8;font-size:16px;margin-top:10px;letter-spacing:.3px}
.configured-phone:hover{text-decoration:underline}
.contact-person,.contact-email{display:block;font-size:13px;color:#526580;margin-top:8px;overflow-wrap:anywhere}
.contact-email:hover{text-decoration:underline}
.site-footer{background:#0b1934;color:#e4edff;padding-top:49px}
.footer-main{display:flex;align-items:center;gap:80px;padding-bottom:41px}
.footer-main>p{font-family:var(--serif);color:#c0d0ed;font-size:18px;line-height:1.5;margin:0}
.footer-links{margin-left:auto;display:flex;gap:26px;font-size:12px;color:#e0eaff}
.footer-links span{color:var(--gold);margin-left:5px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:21px;border-top:1px solid #ffffff12;font-size:11px;color:#aebfde;letter-spacing:.2px}
.footer-bottom a{color:#cfdef7}
.footer-bottom a span{color:var(--gold);margin-left:17px}
.request-dialog{width:min(590px,calc(100% - 30px));max-height:calc(100dvh - 40px);border:1px solid #d5e3f8;border-radius:18px;background:#ffffff;color:var(--ink);padding:38px 40px 30px;box-shadow:0 24px 100px #0005;overflow:auto}
.request-dialog::backdrop{background:#071633bf;backdrop-filter:blur(6px)}
.dialog-close{position:absolute;right:18px;top:12px;font-size:29px;background:none;border:none;color:#546887;padding:2px 9px;font-weight:300;line-height:1.2}
.form-intro .eyebrow{font-size:8px;margin-bottom:16px}
.form-intro h2{font-size:42px;line-height:1.1;letter-spacing:-1.5px;margin-bottom:16px}
.form-intro>p:last-child{font-size:14px;color:var(--muted);margin-bottom:24px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#request-form label{display:block;font-size:12px;font-weight:600;margin-bottom:17px}
#request-form input:not([type=checkbox]),#request-form select,#request-form textarea{display:block;width:100%;border:1px solid #cadcf6;background:#f7faff;border-radius:8px;color:#142747;padding:11px 12px;margin-top:7px;font-size:14px;line-height:1.5;min-height:41px}
#request-form textarea{resize:vertical;min-height:88px;max-height:200px}
#request-form input::placeholder,#request-form textarea::placeholder{color:#617594}
#request-form select{padding-right:24px}
.optional{font-weight:400;color:#586d90;font-size:11px}
#request-form .consent-label{display:flex;gap:10px;align-items:flex-start;margin-top:4px;font-size:11px;font-weight:400;line-height:1.6;color:#526580}
.consent-label input{width:14px;height:14px;margin:2px 0 0;accent-color:#245de8;flex-shrink:0}
.form-status{font-size:13px;line-height:1.7;min-height:0;margin-bottom:12px;color:#9b3b2b}
.form-status:empty{display:none}
.form-status[data-state=loading]{color:#245de8}
.form-submit{width:100%;font-size:14px;min-height:48px;padding-block:13px}
.form-submit:disabled{opacity:.7;cursor:wait;transform:none}
.form-footnote{font-size:11px;color:#586d90;text-align:center;margin:12px 0 0}
.form-success{text-align:center;padding-block:7px 10px}
.success-symbol{width:54px;height:54px;border:1px solid #98b7f8;background:#edf4ff;margin:0 auto 19px;border-radius:50%;display:grid;place-items:center;font-size:24px;color:#245de8}
.form-success h3{font-family:var(--serif);font-size:29px;font-weight:400;line-height:1.2;margin-bottom:15px}
.form-success p{font-size:14px;color:var(--muted);line-height:1.85;margin-bottom:14px}
#lead-reference{font-size:12px;color:#586d90;display:block;margin-bottom:26px}
.form-success .button{font-size:14px}
@media(min-width:1550px){.container{width:min(1360px,calc(100% - 160px))}.site-header{gap:45px;position:relative}.site-nav{gap:33px}.site-nav>a{font-size:12px}.header-cta{display:block}.hero{min-height:720px;gap:62px}.hero-art{height:581px}.hero-description{font-size:15px;max-width:430px}.service-card{padding:30px 27px 27px}.service-card h3{font-size:22px;line-height:1.35}.service-card>p:last-of-type{font-size:15px;line-height:1.8}.solutions-layout{gap:115px}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.site-header{gap:22px;min-height:95px;position:relative}.brand-text{font-size:12px;letter-spacing:1.8px}.brand-text>span{font-size:6.8px;letter-spacing:1.9px}.brand img{width:37px;height:37px;animation:legion-emblem-float 7s ease-in-out infinite;transform-origin:50% 55%;backface-visibility:visible}.site-nav{gap:18px}.site-nav>a{font-size:10px}.site-nav .employee-link{font-size:9px;padding-left:17px}.hero{gap:25px;min-height:625px}.hero-art{height:504px}h1{font-size:63px;letter-spacing:-2px}.hero-description{font-size:12px;max-width:345px}.hero-actions{gap:20px}.button{font-size:11px;padding:15px 18px;gap:15px}.hero-caption{margin-top:41px}.hero-bottom{padding-block:19px}.section{padding-block:87px}.service-grid{gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:26px 24px}.service-card h3{font-size:21px;line-height:1.35}.service-card>p:last-of-type{font-size:14px;line-height:1.8}.service-category{font-size:10px;letter-spacing:1px}.solutions-layout{gap:55px}.solutions-copy h2{font-size:41px}.solution-builder{padding:24px}.process-grid{gap:22px}.process-grid h3{font-size:18px;line-height:1.4}.contacts-layout{gap:38px}.contacts-copy h2{font-size:38px}.contact-card{padding:20px 18px}.footer-main{gap:40px}.footer-links{gap:19px;font-size:12px}}
@media(max-width:850px){.container{width:calc(100% - 48px)}.site-header{min-height:85px;position:relative;z-index:10}.site-nav{display:none;position:absolute;top:84px;left:-24px;right:-24px;background:#0e2248;padding:23px 24px 26px;box-shadow:0 15px 25px #00122b55;flex-direction:column;align-items:flex-start;gap:18px;margin:0;border-bottom:1px solid #78a9ec40}.site-nav.is-open{display:flex}.site-nav>a{font-size:14px}.site-nav .employee-link{border:none;padding:8px 0 0;font-size:12px;color:var(--gold)}.menu-toggle{display:flex;flex-direction:column;gap:6px;padding:10px 0 10px 10px;border:none;background:none;margin-left:auto;justify-content:center;min-width:40px;min-height:42px}.menu-toggle span{width:25px;height:1px;background:var(--gold);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{grid-template-columns:1fr;gap:40px;padding-top:44px;padding-bottom:29px}.hero-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.hero-copy>.eyebrow{grid-column:1/-1;margin-bottom:22px}.hero-copy h1{font-size:62px;grid-column:1/-1;margin-bottom:23px}.hero-description{grid-column:1;max-width:none;margin-bottom:0}.hero-actions{grid-column:2;grid-row:3;flex-direction:column;align-items:flex-start;gap:15px;justify-content:center}.hero-caption{display:none}.hero-art{height:400px;max-height:55vw}.residence-image{object-position:center 58%}.art-note p{font-size:26px}.heading-row{gap:30px}h2{font-size:43px}.section-description{max-width:270px;font-size:15px;line-height:1.8}.service-grid{grid-template-columns:repeat(2,1fr);gap:16px}.service-card{padding:25px}.service-card h3{font-size:21px;line-height:1.35}.service-card>p:last-of-type{font-size:15px;line-height:1.8}.service-category{font-size:10px;letter-spacing:1.3px}.service-top{margin-bottom:25px}.service-action{font-size:14px;min-height:47px}.service-footnote{flex-wrap:wrap}.service-footnote p{flex:1;font-size:12px}.service-footnote>a{margin-left:16px;font-size:12px}.solutions-section{padding-block:76px}.solutions-layout{grid-template-columns:1fr 1fr;gap:25px}.solutions-copy h2{font-size:38px}.solutions-copy>p:last-of-type{font-size:12px}.solution-ornament{margin-top:45px}.solution-builder{padding:24px 20px}.object-options{grid-template-columns:repeat(2,1fr)}.object-option>span{padding-block:13px;font-size:9px}.priority-options{gap:7px}.priority-options span{font-size:8px;padding:7px 9px}.recommendation h3{font-size:22px}.recommendation p{font-size:10px;min-height:72px}.builder-note{font-size:7px}.process-grid{grid-template-columns:repeat(3,1fr);gap:30px}.process-grid li:nth-child(4),.process-grid li:nth-child(5){margin-top:4px}.process-grid h3{font-size:18px;line-height:1.4}.process-grid p{font-size:14px;line-height:1.8}.consultation-banner{padding:30px}.consultation-banner h3{font-size:25px}.contacts-layout{grid-template-columns:1fr;gap:33px}.contacts-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.contacts-copy .eyebrow,.contacts-copy h2{grid-column:1}.contacts-copy>p:not(.eyebrow):not(.contacts-note){grid-column:2;grid-row:2;margin:0;align-self:center;max-width:none;font-size:15px;line-height:1.8}.contacts-copy>.text-link{margin-top:25px;grid-column:1;width:max-content;font-size:14px}.contacts-copy>.contacts-note{grid-row:3;grid-column:2;margin-top:20px!important;font-size:12px!important}.contact-grid{gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.contact-card{padding:23px}.contact-card h3{font-size:20px;line-height:1.4}.contact-card p{font-size:15px;min-height:0;line-height:1.8}.contact-button{font-size:14px;min-height:34px}.phone-pending{font-size:12px}.footer-main{flex-wrap:wrap;gap:28px 40px}.footer-main>p{margin-left:auto;font-size:17px}.footer-links{margin-left:0;width:100%;gap:25px;font-size:12px}.footer-bottom{font-size:11px}}
@media(max-width:580px){.container{width:calc(100% - 40px)}.site-header{min-height:78px;position:relative}.brand-text{font-size:12px}.brand img{width:38px;height:38px;animation:legion-emblem-float 7s ease-in-out infinite;transform-origin:50% 55%;backface-visibility:visible}.site-nav{top:77px;left:-20px;right:-20px;padding-inline:20px}.hero{padding-top:38px;gap:31px}.hero-copy{display:block}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:20px}h1{font-size:clamp(45px,11.8vw,63px)!important;line-height:1.12;letter-spacing:-1.8px!important;margin-bottom:23px!important}.hero-description{font-size:12px;line-height:1.9;max-width:350px;margin-bottom:26px}.hero-actions{flex-direction:row;align-items:center;gap:20px}.button{font-size:10px;padding:14px 17px;min-height:49px}.light-link{font-size:10px;gap:10px}.hero-art{height:320px;max-height:75vw}.art-label{top:16px;left:16px;font-size:6.5px;letter-spacing:1.15px;padding:7px 8px}.art-note{left:21px;bottom:25px}.art-note>span{font-size:6.5px}.art-note p{font-size:24px;margin-top:9px}.art-coordinate{font-size:6px;right:15px;bottom:27px}.hero-bottom{padding-block:17px 20px}.hero-bottom p{font-size:8px}.hero-bottom a{font-size:6px;letter-spacing:1px;gap:12px}.hero-bottom a span{font-size:12px}.section{padding-block:66px}.eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:18px}.heading-row{display:block}h2{font-size:37px;letter-spacing:-1.4px}.section-description{font-size:14px;max-width:340px;margin:22px 0 0;line-height:1.8}.service-grid{margin-top:31px;gap:16px;grid-template-columns:1fr}.service-card{padding:24px 22px}.service-top{margin-bottom:22px}.service-icon{width:56px;height:56px;padding:9px;border-radius:15px;background:linear-gradient(145deg,#eef4ff,#e4efff);box-shadow:inset 0 1px 0 #ffffff,0 5px 14px #245de80a}.service-number{font-size:12px}.service-category{font-size:10px;letter-spacing:.7px;margin-bottom:9px}.service-card h3{font-size:19px;line-height:1.35;min-height:0;margin-bottom:10px}.service-card>p:last-of-type{font-size:14px;line-height:1.8;margin-bottom:22px}.service-action{font-size:14px;padding-top:15px;gap:5px;min-height:47px}.service-action span{font-size:20px}.service-footnote{margin-top:23px;gap:10px;align-items:flex-start}.service-footnote .gold-dot{margin-top:6px}.service-footnote p{font-size:12px;line-height:1.8}.service-footnote>a{flex-basis:100%;margin-left:15px;font-size:12px;justify-content:flex-start}.solutions-section{padding-block:62px}.solutions-layout{grid-template-columns:1fr;gap:31px}.solutions-copy{padding-top:0}.solutions-copy h2{font-size:37px}.solutions-copy>p:last-of-type{font-size:12px;max-width:335px;margin-top:21px}.solution-ornament{display:none}.solution-builder{padding:24px 21px}.solution-builder legend{font-size:11px}.object-options{grid-template-columns:repeat(3,1fr);gap:7px}.object-option>span{font-size:8px;padding:14px 3px 11px;gap:8px}.object-option svg{width:25px;height:25px}.priority-options span{font-size:8px;padding:8px 10px}.recommendation h3{font-size:24px}.recommendation p{font-size:11px;min-height:0}.builder-note{font-size:8px}.process-grid{grid-template-columns:1fr 1fr;gap:27px 24px;margin-top:36px}.process-grid li:nth-child(4),.process-grid li:nth-child(5){margin-top:0}.process-number{font-size:24px;margin-bottom:12px}.process-grid h3{font-size:18px;margin-bottom:8px;line-height:1.4}.process-grid p{font-size:14px;line-height:1.8}.consultation-banner{margin-top:42px;padding:25px 23px;display:block}.consultation-banner .eyebrow{font-size:11px}.consultation-banner h3{font-size:24px;margin-bottom:24px}.consultation-banner .button{font-size:14px}.contacts-section{padding-block:61px}.contacts-layout{gap:31px}.contacts-copy{display:block}.contacts-copy h2{font-size:34px}.contacts-copy>p:not(.eyebrow):not(.contacts-note){font-size:14px;margin-top:22px;max-width:325px;line-height:1.8}.contacts-copy>.text-link{margin-top:0;font-size:14px}.contacts-copy>.contacts-note{margin-top:22px!important;font-size:12px!important}.contact-grid{gap:16px;grid-template-columns:1fr}.contact-card{padding:24px 22px}.contact-icon{margin-bottom:17px;font-size:12px}.contact-card h3{font-size:20px;line-height:1.4;min-height:0;margin-bottom:8px}.contact-card p{font-size:14px;min-height:0;margin-bottom:17px;line-height:1.8}.contact-button{font-size:14px;gap:4px;min-height:34px}.phone-pending{font-size:12px}.site-footer{padding-top:34px}.footer-main{gap:25px;padding-bottom:30px}.footer-main>p{font-size:15px;margin-left:0;flex-basis:100%}.footer-links{flex-wrap:wrap;gap:17px 23px;font-size:12px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:11px;font-size:11px;padding-block:19px}.footer-bottom>span:nth-child(2){flex-basis:100%;order:3;font-size:11px}.footer-bottom>a{margin-left:auto}.request-dialog{padding:30px 23px 24px;max-height:calc(100dvh - 28px)}.form-intro h2{font-size:35px}.form-intro>p:last-child{font-size:14px}.form-row{gap:11px}.form-row label{min-width:0}#request-form label{font-size:12px}#request-form input:not([type=checkbox]),#request-form select,#request-form textarea{font-size:16px;padding:10px 9px}.optional{font-size:11px}#request-form .consent-label{font-size:11px}.form-success h3{font-size:27px}.form-success p{font-size:14px}}
@media(max-width:360px){.container{width:calc(100% - 30px)}.hero-actions{gap:12px}.hero-actions .button{padding-inline:12px;gap:12px;font-size:9px}.hero-description{font-size:11px}.service-card{padding:22px 20px}.service-card h3{font-size:19px;line-height:1.35}.service-category{font-size:10px}.object-option>span{font-size:7px}.solution-builder{padding-inline:17px}.priority-options span{font-size:7px;padding-inline:8px}.contact-card{padding:22px 20px}.contact-card h3{font-size:20px;line-height:1.4}.form-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Progressive enhancement: content stays visible unless an observer is active. */
.site-header::before,.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-2px;pointer-events:none;background-repeat:no-repeat;animation:legion-header-beacon 4.8s ease-in-out infinite}
.site-header::before{height:9px;bottom:-5px;background-image:radial-gradient(ellipse at center,#ff8a1f4d,transparent 70%),radial-gradient(ellipse at center,#ff8a1f4d,transparent 70%);background-size:24% 100%,24% 100%;filter:blur(2px)}
.site-header::after{height:2px;background-image:linear-gradient(90deg,transparent,#ff8a1f 30%,#ffd18a 50%,#ff8a1f 70%,transparent),linear-gradient(90deg,transparent,#ff8a1f 30%,#ffd18a 50%,#ff8a1f 70%,transparent),linear-gradient(90deg,transparent,#ff8a1f26 12%,#ff8a1f26 88%,transparent);background-size:18% 100%,18% 100%,100% 100%}
@keyframes legion-header-beacon{0%,100%{background-position:0% 50%,100% 50%,center}50%{background-position:100% 50%,0% 50%,center}}
@keyframes legion-emblem-float{0%,100%{transform:perspective(180px) rotateY(-12deg) translateY(0)}50%{transform:perspective(180px) rotateY(15deg) translateY(-2px)}}
.intro>.section-heading .eyebrow,.approach>.section-heading .eyebrow,.contacts-copy>.eyebrow{font-size:12px;letter-spacing:1.8px}
.contacts-copy>.eyebrow,.contacts-copy>h2{grid-column:1}
.contacts-copy>p:not(.eyebrow):not(.contacts-note){grid-column:2;grid-row:2;max-width:440px;margin:0;align-self:center}
.contacts-copy>.text-link{grid-column:1;width:max-content;max-width:100%;margin-top:24px;align-self:start}
.contacts-copy>.contacts-note{grid-column:2;grid-row:3;max-width:440px!important;margin-top:21px!important}
.contact-card{display:flex;flex-direction:column;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.contact-card:hover{border-color:#98baf6;box-shadow:0 16px 30px #17437d12;transform:translateY(-3px)}
.contact-card .contact-button{margin-top:auto}
.service-action span,.contact-button span,.service-footnote>a span,.contacts-copy>.text-link span,.consultation-banner .button span{display:inline-block;transition:transform .25s ease}
.service-action:hover span,.contact-button:hover span,.service-footnote>a:hover span,.contacts-copy>.text-link:hover span,.consultation-banner .button:hover span{transform:translate(3px,-3px)}
.service-card:nth-child(2) .service-icon{background:linear-gradient(145deg,#eafcff,#e6f5fa);color:#087782}
.service-card:nth-child(3) .service-icon{background:linear-gradient(145deg,#fff6e9,#ffefda);color:#a75b09}
.service-card:nth-child(4) .service-icon{background:linear-gradient(145deg,#f0eeff,#e8edff);color:#5059c5}
.process-grid li::after{content:"";position:absolute;top:-1px;left:0;width:25%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#ef9b47,transparent);opacity:0;animation:legion-process-glint 7s ease-in-out infinite;animation-delay:calc(var(--step,0)*.35s)}
.process-grid li:nth-child(2){--step:1}.process-grid li:nth-child(3){--step:2}.process-grid li:nth-child(4){--step:3}.process-grid li:nth-child(5){--step:4}
@keyframes legion-process-glint{0%,60%,100%{opacity:0;translate:0 0}67%{opacity:.6}85%{opacity:0;translate:280% 0}}
.intro,.approach{position:relative}
.intro::after,.approach::after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#bdd4fa 30%,#9adddf 52%,transparent);opacity:.7;pointer-events:none}
html.has-motion-observer .reveal{opacity:0;translate:0 16px;transition:opacity .7s ease var(--reveal-delay,0ms),translate .7s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),border-color .25s ease,box-shadow .25s ease,transform .25s ease}
html.has-motion-observer .reveal.is-visible,html.has-motion-observer .reveal.is-revealed,html.has-motion-observer .reveal:focus-within{opacity:1;translate:0 0}
.service-grid>.reveal:nth-child(2),.contact-grid>.reveal:nth-child(2),.process-grid>.reveal:nth-child(2){--reveal-delay:70ms}
.service-grid>.reveal:nth-child(3),.contact-grid>.reveal:nth-child(3),.process-grid>.reveal:nth-child(3){--reveal-delay:140ms}
.service-grid>.reveal:nth-child(4),.process-grid>.reveal:nth-child(4){--reveal-delay:210ms}
.process-grid>.reveal:nth-child(5){--reveal-delay:280ms}
@media(max-width:850px){.contact-grid{gap:16px}.contact-card{padding:24px 20px}.contacts-copy>p:not(.eyebrow):not(.contacts-note){max-width:none}.contacts-copy>.contacts-note{max-width:none!important}.footer-main{gap:28px 32px}}
@media(max-width:580px){.intro>.section-heading .eyebrow,.approach>.section-heading .eyebrow,.contacts-copy>.eyebrow{font-size:11px;letter-spacing:1.5px}.contacts-copy{display:block}.contacts-copy>p:not(.eyebrow):not(.contacts-note){margin:22px 0 23px;max-width:360px}.contacts-copy>.text-link{margin-top:0}.contacts-copy>.contacts-note{margin-top:23px!important;max-width:360px!important}.contact-card{padding:24px 22px}.service-category{letter-spacing:1.3px}.service-card h3{margin-bottom:12px}.service-card>p:last-of-type{margin-bottom:24px}.service-footnote .gold-dot{margin-top:8px}.footer-links{line-height:1.9}.footer-bottom{line-height:1.8}.request-dialog{padding-top:34px}.service-grid>.reveal,.contact-grid>.reveal{--reveal-delay:0ms!important}}
@media(prefers-reduced-motion:reduce){html.has-motion-observer .reveal{opacity:1!important;translate:0 0!important}.brand img{transform:none}.site-header::before,.site-header::after{background-position:50% 50%,50% 50%,center;opacity:.5}.process-grid li::after{display:none}}
