@charset "UTF-8";
:root{--red:#d92532;--ink:#151618;--muted:#65676c;--line:#dedfe2;--paper:#f5f5f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65}a{color:inherit;text-underline-offset:5px}button{font:inherit}img{max-width:100%;height:auto}.wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}.header{border-bottom:1px solid var(--line);background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:110px;gap:30px}.brand{display:flex}.brand img{width:118px;height:auto}nav{display:flex;align-items:center;gap:38px}nav a{text-decoration:none;font-size:.9375rem}nav a[aria-current=page]{color:var(--red)}nav a:hover{color:var(--red)}.contact-link{margin-left:38px;border-bottom:1px solid var(--ink);padding-block:8px}.menu{display:none}.skip{position:absolute;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:20}.skip:focus{top:10px}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:5px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;padding-block:80px 85px}.eyebrow{font-size:.8125rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 26px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,5.7vw,5.25rem);line-height:1.05;letter-spacing:-.055em;font-weight:600;margin-bottom:30px}h1 em{font-style:normal;color:var(--red)}.lead{font-size:1.125rem;line-height:1.7;max-width:440px;color:var(--muted)}.actions{display:flex;gap:28px;align-items:center;margin-top:32px}.button{display:inline-flex;gap:36px;align-items:center;background:var(--red);padding:15px 24px;color:white;text-decoration:none;font-weight:600;font-size:.9375rem}.button:hover{background:#b81e2a}.text-link{font-size:.9375rem}.hero-visual{background:#1c1d20;color:#fff;min-width:0;border-top:4px solid var(--red);padding-top:26px;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;margin-top:10px;overflow:hidden}.image-label{font-size:.75rem;letter-spacing:.13em;padding:0 28px 24px;color:#d7d7da}.hero-visual img{width:100%;height:320px;object-fit:cover;object-position:55% center;filter:grayscale(1)}.visual-caption{display:flex;justify-content:space-between;gap:20px;padding:24px 28px;font-size:.8125rem}.visual-caption span:first-child{font-weight:700;letter-spacing:.12em}.visual-caption span:last-child{color:#bbb}.intro{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:38px}.intro .eyebrow{margin:6px 0}.intro>p:last-child{font-size:1.375rem;line-height:1.6;margin:0}.products-section{padding-block:75px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.section-heading h2,.cta h2{font-size:2.6rem;line-height:1.2;letter-spacing:-.035em}.section-heading p{color:var(--muted);font-size:.9375rem}.services{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.service{grid-column:span 2;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;text-decoration:none;transition:background .2s,border-color .2s}.service:nth-child(n+4){grid-column:span 3}.service:hover{background:var(--paper);border-color:var(--red)}.number{font-size:.875rem;color:var(--red);margin-bottom:40px}.service h3{font-size:1.5rem;letter-spacing:-.025em;margin-bottom:12px}.service p{color:var(--muted);max-width:280px;margin-bottom:30px}.more{font-size:.875rem;display:flex;justify-content:space-between;margin-top:auto}.more span{font-size:1.3rem}.cta{margin-block:10px 80px;background:var(--ink);color:white;padding:50px}.cta .eyebrow{color:#ff828b}.cta p{max-width:720px;color:#c9cacf;margin-bottom:28px}footer{border-top:1px solid var(--line);padding-block:40px 25px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand{font-weight:800;font-size:1.4rem;text-decoration:none;letter-spacing:-.04em}.footer-brand span{color:var(--red)}.footer-top p{color:var(--muted);margin:0}.footer-bottom{font-size:.8125rem;color:var(--muted);padding-top:35px}.page-head{padding-block:60px 45px}.page-head h1{font-size:clamp(2.8rem,5vw,4.5rem);max-width:1000px;margin:25px 0 0}.page-head h1 span{color:var(--red)}.back{font-size:.875rem;color:var(--muted);text-decoration:none}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:65px;padding-bottom:85px;align-items:start}.article-layout:has(.prose:only-child){grid-template-columns:minmax(0,900px)}.prose{font-size:1.0625rem;line-height:1.85;overflow-wrap:anywhere;min-width:0}.prose div{margin-block:12px}.prose>div{margin-top:0}.prose h2{font-size:1.5rem;line-height:1.35;margin:36px 0 18px;letter-spacing:-.025em}.prose ul,.prose ol{padding-left:24px;margin-block:18px}.prose li{padding-left:5px;margin-bottom:6px}.prose a{color:#bb1724}.prose br+br{display:none}.sidebar{background:var(--paper);border-top:3px solid var(--red);padding:28px;position:sticky;top:30px}.sidebar h2{font-size:1.5rem;letter-spacing:-.03em}.sidebar a{display:block;font-size:.9375rem;margin-block:10px}.sidebar p{font-size:.9375rem;margin:0}.sidebar .eyebrow{font-size:.75rem;margin-bottom:20px}.sidebar hr{border:0;border-top:1px solid var(--line);margin:25px 0}.subnav{margin-top:35px;flex-wrap:wrap;gap:12px}.subnav a{background:var(--paper);padding:10px 20px}.subnav a[aria-current=page]{background:var(--ink);color:white}
@media(min-width:1600px){.hero{padding-block:100px}.hero-visual img{height:350px}}@media(max-width:900px){.wrap{width:calc(100% - 44px)}.contact-link{display:none}.hero{gap:30px;padding-block:55px}.hero-visual img{height:300px}.visual-caption{flex-direction:column;gap:4px}.intro{gap:30px}.article-layout{gap:30px;grid-template-columns:minmax(0,1fr) 240px}.service{padding:24px}.service h3{font-size:1.25rem}}
@media(max-width:640px){.header-inner{min-height:88px;flex-wrap:wrap;gap:0}.brand img{width:96px}.menu{display:flex;align-items:center;gap:15px;border:1px solid var(--line);background:white;padding:9px 13px}.header nav{display:none;flex-basis:100%;padding:15px 0 24px;gap:20px;flex-wrap:wrap}.header nav.open{display:flex}.hero{grid-template-columns:1fr;padding-block:42px;gap:35px}h1{font-size:3.45rem}.hero-visual{min-height:0}.hero-visual img{height:180px;object-fit:cover}.visual-caption{flex-direction:row;padding:18px 22px}.hero .eyebrow{font-size:.75rem}.hero-visual .image-label{padding:0 22px 18px}.lead{font-size:1rem}.actions{gap:22px;flex-wrap:wrap}.intro{grid-template-columns:1fr;gap:18px;padding-block:28px}.intro>p:last-child{font-size:1.125rem}.section-heading{display:block}.section-heading h2,.cta h2{font-size:2rem}.products-section{padding-block:42px}.services{grid-template-columns:1fr}.service,.service:nth-child(n+4){grid-column:auto}.number{margin-bottom:20px}.service h3{font-size:1.5rem}.cta{padding:30px 25px;margin-bottom:45px}.cta h2 br{display:none}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column;gap:15px}.page-head{padding-block:38px 30px}.page-head h1{font-size:2.8rem;overflow-wrap:anywhere}.article-layout{grid-template-columns:1fr;padding-bottom:45px}.sidebar{position:static}.prose{font-size:1rem}.subnav{gap:8px}.subnav a{padding:9px 12px;font-size:.875rem}}
.home-banner{padding-block:6px;margin-bottom:0}.home-banner img{display:block;width:100%;height:auto;aspect-ratio:800/205;object-fit:contain}.home-hero{display:block;padding-block:28px 34px}.home-hero .hero-copy{max-width:560px}.home-hero h1{font-weight:700}.home-hero+.products-section{padding-top:10px}.home-banner+.intro{margin-top:0}
@media(max-width:640px){.home-banner{padding-block:8px}.home-hero{padding-block:30px}.home-hero h1{font-size:clamp(2.6rem,12vw,3.45rem)}.home-hero+.products-section{padding-top:12px}.home-banner img{aspect-ratio:800/205}.home-banner+.intro{padding-block:24px}}
.home .home-hero .hero-copy{max-width:none}.home .home-hero h1{font-size:clamp(2.8rem,6.05vw,5.25rem);white-space:nowrap}.home .home-hero .lead{max-width:none;text-align:center;margin:30px auto 0}.home .service{padding-top:92px;min-height:290px}.home .cta{margin-top:0;margin-bottom:18px}.home .cta-inner{max-width:790px;margin-inline:auto}.home .cta .actions{width:fit-content;max-width:100%;margin:30px auto 0;padding:12px;background:white;color:var(--ink);gap:28px}.home .cta h2{margin-bottom:35px}.home .cta .eyebrow{display:block;margin-bottom:8px}.home .cta p{margin-bottom:0}.home .footer-brand img{display:block;width:118px;height:auto}.home .footer-top{display:grid;grid-template-columns:1fr 2fr 1fr}.home .footer-top p{text-align:center}.home .footer-top>a:last-child{justify-self:end}.home .footer-bottom{display:grid;grid-template-columns:1fr 2fr 1fr}.home .footer-bottom>span{grid-column:2;text-align:center}.home .footer-bottom>a{justify-self:end;text-align:right}.home .products-section{padding-bottom:24px}
@media(max-width:1000px){.home .home-hero h1{white-space:normal;font-size:clamp(2.8rem,6.05vw,5.25rem)}.home .footer-bottom{grid-template-columns:1fr 2fr 2fr}}
@media(max-width:640px){.home .home-hero h1{font-size:clamp(2.6rem,10vw,3.45rem)}.home .home-hero .lead{text-align:left;margin-top:22px}.home .service{padding-top:38px;min-height:240px}.home .cta .actions{gap:18px;justify-content:center}.home .cta .actions .button{gap:20px}.home .cta .actions .text-link{padding:4px}.home .footer-top,.home .footer-bottom{display:flex;align-items:flex-start}.home .footer-top p,.home .footer-bottom>span,.home .footer-bottom>a{text-align:left}.home .cta h2{margin-bottom:24px}}
/* One continuous, stronger background through the homepage and footer. */
body.home{background:#10060a;color:#fff;isolation:isolate}
body.home::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(12,2,7,.48),rgba(12,2,7,.58)),url("background-tech.png") center/cover no-repeat}
.home main,.home footer{background:transparent}.home main{display:flow-root}.home .footer-top p,.home .footer-bottom{color:#ede1e5}
.home .header{background:#18080b url("background-tech.png") center 48%/cover no-repeat;background-image:linear-gradient(90deg,rgba(24,0,5,.25),rgba(12,8,14,.78) 55%,rgba(24,0,5,.60)),url("background-tech.png");color:#fff;border-bottom:2px solid #e5283d}.home .header nav a{color:#fff}.home .header nav a[aria-current=page]{color:#fff;border-bottom:2px solid #ff5262;padding-block:8px}.home .header nav a:hover{color:#ffb7bf}.home .header .contact-link{border-bottom-color:rgba(255,255,255,.65)}.home .header .menu{background:#260c13;color:#fff;border-color:#f36a78}.home .header a:focus-visible,.home .header button:focus-visible{outline-color:#fff}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{header,.sidebar,.cta,footer,.back,.subnav{display:none}.wrap{width:100%}.article-layout{display:block}.prose{font-size:11pt}a{color:black}.home main{background:none}}

/* Full-width homepage photograph without surrounding gutters. */
.home .home-banner{width:100%;max-width:none;margin:0;padding:0}.home .home-banner img{display:block;width:100%;height:auto;aspect-ratio:800/205;object-fit:cover}

/* Compact service cards with the homepage's saturated technology motif. */
.home .service,.home .service:hover{min-height:0;padding:26px 28px;background-color:#200b12;background-image:linear-gradient(110deg,rgba(13,9,16,.86),rgba(32,5,13,.62)),url("background-tech.png");background-size:cover;background-position:center;color:#fff;border:1px solid #7d2938}
.home .service h3{margin-bottom:10px;color:#fff}
.home .service p{max-width:none;margin-bottom:18px;color:#f2e8ec;line-height:1.6}
.home .service .more{padding-top:0;color:#fff}
.home .service:hover{border-color:#ff6a7b;box-shadow:0 4px 16px rgba(108,12,31,.16)}
.home .service:focus-visible{outline:3px solid #d92532;outline-offset:4px}
@media(max-width:640px){.home .service,.home .service:hover{padding:22px;min-height:0}}
@media print{.home .service,.home .service:hover{background:#fff;border:1px solid #aaa;color:#000}.home .service h3,.home .service p,.home .service .more{color:#000}}
@media print{body.home{background:#fff}}
.home .cta .cta-inner>p{font-size:clamp(1.35rem,2.2vw,1.875rem);line-height:1.55;color:#fff;max-width:none;margin:0 0 28px}.home .cta .cta-inner>.button{font-size:1rem}


.home .cta .cta-inner>.button{display:flex;width:fit-content;max-width:100%;margin-inline:auto;justify-content:center;text-align:center}


.home .home-hero h1{font-size:clamp(1.5rem,3.35vw,2.875rem);line-height:1.2;letter-spacing:-.045em;white-space:nowrap}
@media(max-width:640px){.home .home-hero h1{font-size:clamp(1.75rem,7.5vw,2.75rem);white-space:normal;overflow-wrap:normal}}


.home .section-heading{justify-content:center;text-align:center}.home .section-heading h2{width:100%;font-family:Bahnschrift,'DIN Alternate','Trebuchet MS',sans-serif;font-weight:600;letter-spacing:.055em;text-transform:uppercase;font-size:clamp(1.8rem,3.2vw,2.6rem)}


.home .home-hero h1{font-family:Bahnschrift,'DIN Alternate','Trebuchet MS',sans-serif;font-weight:600;color:var(--red);text-align:center;font-size:clamp(1.5rem,3vw,2.5rem);letter-spacing:.005em;white-space:normal;text-wrap:balance}.home .home-hero h1 em{color:inherit}@media(max-width:640px){.home .home-hero h1{font-size:clamp(1.6rem,6.5vw,2.25rem)}}


/* Shared typography across all pages; retain existing sizes and layout. */
body{font-family:Bahnschrift,'DIN Alternate','Trebuchet MS',sans-serif}button,input,select,textarea{font-family:inherit}
.subpage .page-head h1{color:#ff5267;font-weight:600;letter-spacing:.005em;text-align:center;max-width:none}.subpage .page-head h1 span{color:inherit}.subpage .page-head .eyebrow{text-align:center;color:#f3dce2}.subpage .back{color:#f3dce2}.subpage .page-head{padding-block:42px 32px}.subpage .prose{background:rgba(17,12,18,.94);border:1px solid #66313f;padding:32px;color:#f7f0f3}.subpage .prose h2,.subpage .prose h3{color:#fff}.subpage .prose a{color:#ff9daa}.subpage .sidebar{background:rgba(26,10,17,.95);border:1px solid #66313f;border-top:3px solid #e5283d;color:#fff}.subpage .sidebar .eyebrow{color:#ff9daa}.subpage .sidebar hr{border-color:#66313f}.subpage .sidebar a{overflow-wrap:anywhere}.subpage .subnav{justify-content:center}.subpage .subnav a{background:#24121a;color:#fff;border:1px solid #894051}.subpage .subnav a[aria-current=page]{background:#b71830;border-color:#ff6a7b}.subpage .subnav a:hover{background:#8c1528;color:#fff}.subpage .products-section{padding-top:12px;padding-bottom:55px}.subpage .prose a:focus-visible,.subpage .sidebar a:focus-visible,.subpage .subnav a:focus-visible{outline-color:#fff}
@media(max-width:640px){.subpage .prose{padding:22px 18px}.subpage .page-head h1{font-size:clamp(2rem,8vw,2.8rem)}.subpage .page-head{padding-block:30px 24px}}
@media print{.subpage .prose{background:#fff;color:#000;border:0;padding:0}.subpage .prose h2,.subpage .prose h3,.subpage .prose a,.subpage .page-head h1{color:#000}}
.home .intro .eyebrow,.home .home-hero .eyebrow{color:#f3dce2}.home .home-hero .lead{color:#fff}.home .home-hero h1,.home .home-hero h1 em{color:#ff5267}.home .intro,.home footer{border-color:rgba(255,255,255,.24)}
@media print{body.home{color:#000}body.home::before{display:none}.home .home-hero .lead,.home .intro .eyebrow,.home .home-hero .eyebrow{color:#000}}

