/* Shared floating navigation and the expanded KillSwitch homepage. */
[hidden] { display: none !important; }
body { padding-top: 112px; }
html { scroll-padding-top: 130px; }
.floating-header {
  position: fixed; top: 20px; left: 50%; transform: translateX(-50%);
  width: calc(100% - 64px); max-width: 1312px; height: 76px; margin: 0;
  padding: 0 24px; gap: 25px; border: 1px solid #424c3c; border-radius: 14px;
  background: #121710e8; backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px);
  box-shadow: 0 8px 36px #0005, inset 0 1px 0 #ffffff06; z-index: 50;
  transition: top .2s, background .2s, box-shadow .2s;
}
.floating-header.has-scrolled { top: 12px; background: #141a11f5; box-shadow: 0 12px 40px #0009; }
.floating-header .brand { font-size: 23px; flex-shrink: 0; }
.floating-header .brand-sub { font-size: 6px; letter-spacing: 2px; margin-top: 8px; }
.floating-header .brand-icon { width: 27px; height: 31px; }
.floating-header .brand-icon svg { width: 27px; height: 31px; }
.floating-header .desktop-nav { align-items: center; gap: 30px; margin: 0 auto; }
.floating-header .nav-link { color: #aeb8a8; font: 11px Arial, sans-serif; padding: 12px 0; border: 0; background: none; white-space: nowrap; display: inline-flex; align-items: center; gap: 5px; }
.floating-header .nav-link:hover, .floating-header .nav-link.is-current, .floating-header .nav-link[aria-expanded="true"] { color: #fff; }
.floating-header .nav-link.is-current:after { content: ''; width: 4px; height: 4px; background: #f25342; border-radius: 50%; }
.floating-header .nav-link svg { width: 13px; height: 13px; transition: transform .2s; }
.floating-header .nav-link[aria-expanded="true"] svg { transform: rotate(180deg); }
.floating-header .header-cta { font-size: 11px; min-height: 40px; padding: 10px 16px; gap: 20px; border-radius: 5px; }
.nav-dropdown { position: relative; }
.nav-dropdown-panel { position: absolute; top: calc(100% + 21px); left: -24px; width: 330px; padding: 19px 10px 9px; border: 1px solid #46503e; background: #151c11; border-radius: 9px; box-shadow: 0 22px 65px #000b; }
.dropdown-caption { display: block; font: 7px 'SFMono-Regular', Consolas, monospace; letter-spacing: .12em; color: #8e9a83; padding: 0 12px 11px; }
.floating-header .nav-dropdown-panel a { display: flex; gap: 13px; align-items: center; padding: 12px; border-radius: 5px; font-size: 13px; color: #d7e1cf; }
.floating-header .nav-dropdown-panel a:hover { background: #26301f; }
.dropdown-symbol { width: 30px; height: 30px; border: 1px solid #47533e; display: grid; place-items: center; color: #f57964; font-size: 19px; border-radius: 4px; }
.nav-dropdown-panel small { display: block; color: #8e9e80; font-size: 10px; margin-top: 3px; }
.dropdown-arrow { margin-left: auto; color: #91a181; }
.nav-dropdown-panel p { border-top: 1px solid #303c27; margin-top: 8px; padding: 13px 12px 5px; font-size: 8px; color: #788b69; }
.hero { min-height: 700px; }
.product-subtitle { display: block; margin-top: 12px; font-size: 18px; font-weight: 400; letter-spacing: -.035em; color: #929e87; }
.service-card h3 { font-size: 32px; }
.service-top .mono { font-size: 7px; }
.service-card p { min-height: 125px; }
.services { padding-bottom: 95px; }
.solutions { padding-top: 5px; padding-bottom: 90px; }
.solutions-layout { display: grid; grid-template-columns: 1.15fr 1fr; gap: 85px; align-items: start; }
.solution-tabs { display: flex; gap: 5px; border-bottom: 1px solid #34402c; margin-bottom: 30px; }
.solution-tabs button { border: 0; border-bottom: 2px solid transparent; padding: 12px 16px 15px; background: none; color: #8c9a81; font-size: 11px; white-space: nowrap; }
.solution-tabs button:first-child { padding-left: 0; padding-right: 20px; }
.solution-tabs button[aria-selected="true"] { border-color: #f25342; color: #f0f4e9; }
.solution-panel { min-height: 265px; }
.solution-kicker { display: block; font: 7px 'SFMono-Regular', Consolas, monospace; color: #e77b64; letter-spacing: .1em; margin-bottom: 20px; }
.solution-panel h3 { font-size: 31px; line-height: 1.13; letter-spacing: -.045em; margin-bottom: 19px; }
.solution-panel > p { font-size: 12px; line-height: 1.9; max-width: 450px; }
.solution-panel ul { padding: 0; list-style: none; margin: 23px 0 28px; }
.solution-panel li { font-size: 11px; color: #a4b297; margin: 9px 0; display: flex; gap: 9px; }
.solution-panel li:before { content: '↳'; color: #e77b64; }
.solution-content > .text-link { margin-top: 12px; font-size: 11px; }
.solution-visual { background: radial-gradient(ellipse at 50% 70%, #37452b20, transparent 80%), #131a0f; border: 1px solid #3b4a30; border-radius: 5px; padding: 20px 25px 22px; }
.solution-visual-top { display: flex; justify-content: space-between; gap: 10px; font: 6px 'SFMono-Regular', Consolas, monospace; color: #859776; letter-spacing: .08em; padding-bottom: 24px; }
.mini-status { display: flex; align-items: center; gap: 6px; }
.mini-status i { display: inline-block; width: 4px; height: 4px; background: #9fb77f; border-radius: 50%; }
.solution-node { display: flex; gap: 13px; align-items: center; border: 1px solid #3f4d35; border-radius: 4px; padding: 16px; background: #1d2617; max-width: 290px; margin: auto; }
.solution-node > div { font-size: 13px; color: #dce5d3; line-height: 1.4; }
.solution-node small { display: block; font-size: 8px; color: #92a27f; margin-top: 5px; }
.solution-node-icon { font-size: 28px; color: #aebf98; line-height: 1; }
.solution-node-human { border-color: #9c5f47; background: #302019; }
.solution-node-human .solution-node-icon { color: #f57964; }
.solution-node-human small { color: #bd9680; }
.node-key { color: #ed8b6c; margin-left: auto; font-size: 23px; }
.solution-flow { display: flex; align-items: center; justify-content: center; position: relative; height: 46px; }
.solution-flow > span:first-child { width: 1px; height: 100%; background: #586c43; }
.flow-caption { position: absolute; left: calc(50% + 12px); font: 5px 'SFMono-Regular', Consolas, monospace; color: #7a8c67; letter-spacing: .06em; white-space: nowrap; }
.solution-infrastructure { display: flex; max-width: 290px; margin: auto; gap: 8px; }
.solution-infrastructure span { flex: 1; text-align: center; background: #1b2415; border: 1px solid #3b4b2c; padding: 10px 4px; font: 6px 'SFMono-Regular', Consolas, monospace; color: #a3b58c; }
.solution-visual-foot { font: 7px/1.8 'SFMono-Regular', Consolas, monospace; color: #7e916c; margin-top: 23px; text-align: center; }
.testimonials { padding-top: 100px; padding-bottom: 100px; display: grid; grid-template-columns: 1.15fr 1fr; gap: 90px; align-items: center; border-bottom: 1px solid #293225; }
.testimonials .eyebrow { margin-bottom: 25px; }
.testimonials h2 { font-size: clamp(38px,4vw,56px); }
.testimonials-intro { max-width: 420px; font-size: 13px; line-height: 1.9; margin-top: 24px; }
.customer-story { border: 1px solid #3d4735; border-radius: 5px; padding: 28px 32px 30px; background: linear-gradient(135deg,#20281b,#10150d); }
.customer-story-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px; }
.story-symbol { font: 68px/.9 Georgia,serif; color: #596b47; height: 42px; }
.story-badge { padding: 5px 8px; border: 1px solid #4d5d40; color: #a4b58f; font: 6px 'SFMono-Regular',Consolas,monospace; letter-spacing: .08em; border-radius: 3px; }
.customer-story h3 { font-size: 31px; margin-bottom: 18px; line-height: 1.13; }
.customer-story p { font-size: 12px; line-height: 1.9; color: #95a386; }
.customer-story .text-link { margin-top: 26px; font-size: 11px; }
.about-section { padding-top: 110px; padding-bottom: 110px; display: grid; grid-template-columns: 1.2fr 1fr; gap: 85px; position: relative; overflow: hidden; border-bottom: 1px solid #293225; }
.about-heading { position: relative; z-index: 1; }
.about-section .eyebrow { margin-bottom: 24px; }
.about-section h2 { font-size: clamp(36px,3.8vw,54px); }
.about-copy { max-width: 420px; padding-top: 35px; position: relative; z-index: 1; }
.about-copy p { font-size: 13px; line-height: 1.9; }
.about-copy p + p { margin-top: 19px; }
.about-signoff { display: flex; align-items: center; gap: 12px; font: 7px 'SFMono-Regular',Consolas,monospace; color: #b2bfa6; margin-top: 30px; letter-spacing: .1em; }
.about-mark { position: absolute; left: 20%; bottom: -95px; width: 320px; height: 320px; opacity: .025; color: #c7ed9f; transform: rotate(-17deg); }
.about-mark svg { width: 100%; height: 100%; stroke-width: 2; }
@media(max-width:1150px) {
 .floating-header { width: calc(100% - 40px); padding-inline: 21px; gap: 18px; }
 .floating-header .desktop-nav { gap: 22px; }
 .floating-header .nav-link { font-size: 10px; }
 .floating-header .header-cta { font-size: 10px; padding-inline: 13px; gap: 15px; }
 .solutions-layout, .testimonials, .about-section { gap: 50px; }
 .solution-panel h3 { font-size: 27px; }
 .service-card h3 { font-size: 29px; }
 .product-subtitle { font-size: 16px; }
 .service-card p { min-height: 148px; }
}
@media(max-width:980px) {
 .floating-header { height: 70px; }
 .floating-header .desktop-nav { display: none; }
 .floating-header .header-cta { display: inline-flex; margin-left: auto; }
 .floating-header .menu-toggle { display: flex; width: 36px; height: 36px; padding: 9px 5px; border: 0; background: transparent; flex-direction: column; justify-content: center; gap: 6px; }
 .floating-header .menu-toggle span { display: block; width: 24px; height: 1px; background: #c2cbb9; transition: transform .2s; }
 .floating-header .menu-toggle[aria-expanded=true] span:first-child { transform: translateY(3.5px) rotate(45deg); }
 .floating-header .menu-toggle[aria-expanded=true] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
 .floating-header .mobile-nav:not([hidden]) { position: absolute; top: calc(100% + 10px); left: 0; right: 0; background: #141c10fa; backdrop-filter: blur(20px); border: 1px solid #48543d; border-radius: 9px; display: flex; flex-direction: column; gap: 0; padding: 13px 22px; box-shadow: 0 20px 40px #0008; max-height: calc(100dvh - 120px); overflow-y: auto; }
 .floating-header .mobile-nav a, .floating-header .mobile-nav button { padding: 14px 0; font-size: 13px; border: 0; background: none; text-align: left; display: flex; justify-content: space-between; }
 .floating-header .mobile-nav a span { font: 8px 'SFMono-Regular',Consolas,monospace; color: #7b8e68; }
 .floating-header .mobile-nav .mobile-demo-link { border-top: 1px solid #37472c; margin-top: 6px; color: #fb7b60; padding-top: 20px; }
 .floating-header .mobile-nav button { font-size: 10px; color: #a6ba91; }
}
@media(max-width:900px) {
 .hero { min-height: 640px; }
 .solutions-layout { gap: 33px; grid-template-columns: 1.15fr 1fr; }
 .solution-tabs button { font-size: 9px; padding: 12px 9px; }
 .solution-tabs button:first-child { padding-right: 12px; }
 .solution-panel h3 { font-size: 26px; }
 .solution-panel > p { font-size: 11px; }
 .solution-panel li { font-size: 10px; }
 .solution-visual { padding: 19px 18px; }
 .solution-node { padding: 13px 10px; gap: 9px; }
 .solution-node > div { font-size: 11px; }
 .solution-node small { font-size: 6px; }
 .solution-node-icon { font-size: 23px; }
 .flow-caption { font-size: 4px; left: calc(50% + 8px); }
 .solution-infrastructure { gap: 5px; }
 .solution-infrastructure span { font-size: 5px; }
 .testimonials, .about-section { gap: 36px; padding-block: 80px; }
 .testimonials h2 { font-size: 38px; }
 .testimonials-intro { font-size: 12px; }
 .customer-story { padding: 25px; }
 .customer-story h3 { font-size: 27px; }
 .customer-story p { font-size: 11px; }
 .about-section h2 { font-size: 36px; }
 .about-copy p { font-size: 12px; }
 .service-card p { min-height: 89px; }
}
@media(max-width:700px) {
 body { padding-top: 100px; }
 html { scroll-padding-top: 114px; }
 .floating-header { top: 14px; width: calc(100% - 28px); height: 66px; padding-inline: 15px; border-radius: 12px; }
 .floating-header.has-scrolled { top: 10px; }
 .floating-header .brand { font-size: 22px; gap: 9px; }
 .floating-header .brand-sub { font-size: 5px; letter-spacing: 2px; margin-top: 7px; }
 .floating-header .brand-icon, .floating-header .brand-icon svg { width: 26px; height: 29px; }
 .floating-header .header-cta { font-size: 9px; min-height: 35px; padding: 8px 11px; gap: 10px; }
 .floating-header .header-cta span { font-size: 17px; }
 .floating-header .menu-toggle { margin-left: auto; }
 .hero { min-height: 0; }
 .hero-copy { padding-top: 36px; }
 .hero-actions { gap: 15px; }
 .hero-actions .button { font-size: 10px; padding-inline: 15px; gap: 13px; }
 .hero-actions .text-link { font-size: 9px; gap: 8px; }
 .service-card h3 { font-size: 29px; }
 .product-subtitle { font-size: 15px; margin-top: 10px; }
 .service-top .mono { font-size: 5px; }
 .service-card p { min-height: 132px; }
 .services { padding-bottom: 60px; }
 .solutions { padding-top: 0; padding-bottom: 60px; }
 .solutions-layout { grid-template-columns: 1fr; gap: 32px; }
 .solution-tabs { margin-bottom: 26px; }
 .solution-tabs button { flex: 1; font-size: 10px; padding: 12px 10px 15px; }
 .solution-tabs button:first-child { padding-left: 10px; padding-right: 10px; }
 .solution-panel { min-height: 260px; }
 .solution-panel h3 { font-size: 29px; }
 .solution-panel > p { font-size: 12px; }
 .solution-panel li { font-size: 11px; }
 .solution-kicker { font-size: 6px; }
 .solution-visual { padding: 20px 24px; }
 .solution-node { padding: 16px; gap: 12px; }
 .solution-node > div { font-size: 13px; }
 .solution-node small { font-size: 8px; }
 .solution-node-icon { font-size: 28px; }
 .flow-caption { font-size: 5px; left: calc(50% + 10px); }
 .solution-infrastructure span { font-size: 6px; }
 .testimonials, .about-section { padding-block: 63px; grid-template-columns: 1fr; gap: 31px; }
 .testimonials .eyebrow, .about-section .eyebrow { font-size: 8px; }
 .testimonials h2 { font-size: 41px; }
 .testimonials-intro { font-size: 12px; margin-top: 20px; }
 .customer-story { padding: 25px; }
 .customer-story h3 { font-size: 30px; }
 .customer-story p { font-size: 12px; }
 .about-section h2 { font-size: 35px; }
 .about-copy { padding-top: 0; }
 .about-copy p { font-size: 12px; }
 .about-signoff { font-size: 6px; }
 .about-mark { left: 15%; bottom: -40px; }
}
@media(max-width:440px) {
 .floating-header .header-cta { display: none; }
}
@media(max-width:380px) {
 .hero-actions .button { font-size: 9px; gap: 10px; padding-inline: 12px; }
 .hero-actions .text-link { font-size: 8px; }
 .service-card h3 { font-size: 25px; }
 .product-subtitle { font-size: 13px; }
 .service-card p { min-height: 145px; }
 .solution-panel h3 { font-size: 25px; }
 .solution-panel { min-height: 280px; }
 .about-section h2 { font-size: 30px; }
 .testimonials h2 { font-size: 37px; }
}
@media(prefers-reduced-motion:reduce) {
 .floating-header, .floating-header * { transition: none; }
}
