/* A real photograph stays in place while the content moves across it. */
:root{--bg:#090d11;--bg2:#11171c;--panel:#10171b;--line:rgba(230,238,240,.18);--text:#f7f8f8;--muted:#c4cdd0}
body{background:#090d11;color:var(--text)}
.site-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(90deg,rgba(5,8,10,.76) 0%,rgba(6,9,12,.52) 46%,rgba(7,10,12,.58) 100%),url('/technology-background-option.jpg');background-position:center;background-size:cover;background-repeat:no-repeat}
.site-header,main,.site-footer{position:relative;z-index:1}
.site-header{position:sticky;top:0;background:rgba(9,13,17,.94);border-bottom:1px solid rgba(255,255,255,.14);box-shadow:none}
.primary-nav{gap:30px}
.primary-nav>a{color:#e6e9eb}
.primary-nav .nav-contact{background:#c52635;border-color:#c52635;border-radius:3px}
.primary-nav .nav-contact:hover{background:#e33b49;border-color:#e33b49}
.hero{display:flex;align-items:center;min-height:min(790px,calc(100svh - 86px));padding-top:82px;padding-bottom:90px;position:relative}
.hero:after{display:none}
.hero-copy{width:min(720px,100%);max-width:none;padding:48px 52px 40px;background:rgba(7,11,14,.83);border-left:4px solid #d72d3e;box-shadow:0 22px 60px rgba(0,0,0,.24);backdrop-filter:blur(3px)}
.hero h1{font-size:clamp(50px,5.5vw,75px);letter-spacing:-.055em;line-height:1.05;margin:25px 0 24px}
.hero h1>span{color:#f2f3f4}.hero h1 em{color:#ff5966}
.hero-copy>p{color:#e1e5e6;max-width:590px;font-size:17px;line-height:1.65}
.eyebrow,.section-kicker{color:#ff6671}
.signal-dot{box-shadow:none}
.button-primary{background:#c52635;border-color:#c52635;border-radius:3px;box-shadow:none}
.button-primary:hover{background:#e13a49}
.button-text{color:#f4f6f6}
.hero-footnote{color:#c6ced0;margin-top:46px;line-height:1.6}
.photo-credit{position:absolute;right:4px;bottom:34px;margin:0;color:#e1e4e4;font-size:11px;text-shadow:0 1px 7px #000}
.photo-credit a{text-decoration:underline;text-underline-offset:3px}
.capability-strip{background:rgba(10,15,18,.96);border-block:1px solid rgba(255,255,255,.16)}
.strip-inner span{color:#e0e4e4}
.solutions{background:rgba(8,13,16,.93);border:1px solid rgba(255,255,255,.16);padding:76px 48px;margin-top:100px;margin-bottom:100px;box-shadow:0 20px 60px rgba(0,0,0,.2)}
.section-intro h2,.about h2,.contact-section h2{letter-spacing:-.046em}
.section-intro>p,.about-copy>p:not(.section-kicker){color:#ced5d7}
.solution-grid{gap:14px}
.solution-card,.card-featured{background:rgba(20,28,32,.96);border:1px solid rgba(255,255,255,.18);border-radius:3px;min-height:330px}
.solution-card:before{width:56px;background:#d72d3e}
.solution-card:hover{background:#202b30;border-color:#e34150}
.card-icon{color:#e94b57}
.solution-card p{color:#c5cfd1}
.statement{padding:68px 0;background:rgba(113,22,33,.94);border-block:1px solid rgba(255,255,255,.16)}
.statement:before{display:none}
.statement-inner{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:40px}
.statement-inner span{color:#ffd8db}
.statement-inner p{max-width:800px;font-size:clamp(27px,3.2vw,42px);letter-spacing:-.025em;line-height:1.2}
.method{background:rgba(7,12,15,.95);border-block:1px solid rgba(255,255,255,.17)}
.method:before{display:none}
.step-index{color:#ff6671}
.about{display:block;background:rgba(8,13,16,.93);border:1px solid rgba(255,255,255,.16);padding:80px 7%;margin-top:100px;margin-bottom:100px}
.about-copy{max-width:780px}
.about-copy>p:not(.section-kicker){max-width:760px;font-size:17px}
.legal-note{max-width:640px}
.contact-section{background:rgba(23,18,20,.96);border-top:3px solid #bc2938;border-bottom:1px solid rgba(255,255,255,.12)}
.site-footer{background:#080c0f}
.site-footer .brand{background:transparent}
@media(max-width:760px){.site-header{height:70px}.primary-nav{background:#0b1115}.hero{min-height:0;padding-top:46px;padding-bottom:68px}.hero-copy{padding:33px 28px 30px}.hero h1{font-size:clamp(43px,10vw,65px)}.hero-copy>p{font-size:15px}.hero-footnote{margin-top:35px}.photo-credit{right:0;bottom:22px;font-size:10px}.solutions{padding:60px 24px;margin-top:60px;margin-bottom:60px}.statement-inner{display:block}.statement-inner span{display:block;margin-bottom:22px}.about{padding:60px 24px;margin-top:60px;margin-bottom:60px}}
@media(max-width:500px){.hero-copy{padding:28px 21px 26px}.hero h1{font-size:clamp(39px,10vw,53px)}.hero-actions{gap:19px}.solution-card{min-height:280px}.photo-credit{bottom:18px}}
