
.home-product-story .home-reading-intro { max-width: 1100px; margin-bottom: 36px; }
.home-benefit-carousel { min-width: 0; }
.home-benefit-track { display: flex; position: relative; gap: 24px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; border-radius: 34px; cursor: grab; }
.home-benefit-track::-webkit-scrollbar { display: none; }
.home-benefit-track:focus-visible { outline: 3px solid #173e50; outline-offset: 6px; }
.home-benefit-track.is-dragging { cursor: grabbing; scroll-snap-type: none; }
.home-benefit-slide { flex: 0 0 100%; min-width: 0; display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; gap: 40px; min-height: 480px; padding: clamp(30px, 3vw, 56px); border: 3px solid #173e50; border-radius: 34px; background: #f7f5ed; scroll-snap-align: start; scroll-snap-stop: always; user-select: none; }
.benefit-slide-2 { background: #83cce7; }
.benefit-slide-3 { background: #ffe2d5; }
.benefit-slide-copy { min-width: 0; }
.benefit-slide-icon { width: 58px; height: 58px; display: grid; place-items: center; border: 2.5px solid #173e50; border-radius: 22px; background: #fffdf7; margin-bottom: 22px; }
.benefit-slide-icon .icon { width: 28px; height: 28px; }
.benefit-slide-copy h3 { font-size: clamp(28px, 2.5vw, 44px); line-height: 1.4; letter-spacing: -.03em; margin: 0 0 20px; text-wrap: balance; }
.benefit-slide-description { font-size: clamp(16px, 1.15vw, 21px); line-height: 1.9; color: #375868; max-width: 580px; margin: 0; }
.benefit-slide-art { min-width: 0; position: relative; }
.benefit-slide-art > img { width: 100%; height: auto; display: block; pointer-events: none; }
.benefit-carousel-controls { display: flex; align-items: center; justify-content: flex-end; gap: 20px; padding-block: 22px 8px; }
.benefit-carousel-navigation { display: flex; align-items: center; gap: 12px; flex: none; }
.benefit-arrow { width: 46px; height: 46px; display: grid; place-items: center; border: 2px solid #173e50; border-radius: 50%; color: #173e50; background: #fffdf7; cursor: pointer; }
.benefit-arrow:hover:enabled { background: #83cce7; }
.benefit-arrow:disabled { opacity: .35; cursor: default; }
.benefit-carousel-dots { display: flex; gap: 2px; }
.benefit-carousel-dots button { display: grid; place-items: center; width: 32px; height: 44px; border: 0; padding: 0; background: transparent; cursor: pointer; }
.benefit-carousel-dots button span { width: 9px; height: 9px; border-radius: 999px; background: #b5c5ca; transition: width .2s, background .2s; }
.benefit-carousel-dots button[aria-current="true"] span { width: 25px; background: #173e50; }
.benefit-carousel-status { font-size: 12px; color: #526976; min-width: 32px; }
.home-value-grid .home-contact-link { margin-top: auto; align-self: flex-start; }
.home-client-brand { display: grid; place-items: center; width: 84px; height: 84px; border: 2.5px solid #173e50; background: #fffdf7; border-radius: 24px; margin-bottom: 24px; }
.home-client-brand > img { width: 52px; height: 64px; object-fit: contain; }
.home-device-fleet { min-width: 0; margin: 0; }
.home-device-fleet > img { display: block; width: 100%; height: auto; }
.home-network { background: #f7f5ed; }
.home-network .home-section-inner { padding-block: 76px; }
.home-network .home-reading-intro { max-width: 980px; margin-bottom: 32px; }
.network-card { min-width: 0; padding: 32px; border: 3px solid #173e50; border-radius: 32px; background: #fff; }
.network-card-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-size: 13px; font-weight: 700; }
.network-live, .network-local { display: inline-flex; align-items: center; gap: 9px; }
.network-dot { width: 9px; height: 9px; border-radius: 50%; background: #296e64; box-shadow: 0 0 0 5px #e6f3ec; margin-inline: 5px; }
.network-dot.offline { background: #a63e3e; box-shadow: 0 0 0 5px #fdecea; }
.network-local { color: #546e77; }
.network-metrics { display: grid; grid-template-columns: 1.15fr 1fr 1fr .75fr; margin: 30px 0; gap: 0; }
.network-metric { min-width: 0; padding: 8px 22px; border-left: 1px solid #d5ddd7; }
.network-metric:first-child { border-left: 0; padding-left: 0; }
.network-metric:last-child { padding-right: 0; }
.network-metric dt { font-size: 12px; color: #546e77; margin-bottom: 12px; }
.network-metric dd { margin: 0; font-size: clamp(18px, 1.5vw, 25px); font-weight: 750; line-height: 1.5; overflow-wrap: anywhere; }
.network-ip dd { font-family: Consolas, monospace; }
.network-card-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 24px; border-top: 1px solid #d5ddd7; }
.network-card-bottom p { max-width: 740px; color: #546e77; font-size: 14px; }
.network-buttons { display: flex; align-items: center; gap: 8px; flex: none; }
.network-scope, .network-disclosure { font-size: 14px; line-height: 1.8; color: #546e77; }
.network-scope { margin: 18px 0 0; }
.network-disclosure { margin-top: 16px; max-width: 1100px; }
.network-disclosure a { text-decoration: underline; text-underline-offset: 3px; }
.home-tunnel { background: #fffdf7; border: 3px solid #173e50; border-radius: 30px; padding: 32px; margin: 0 0 28px; }
.tunnel-path { display: grid; grid-template-columns: 1fr 1.5fr 1fr .6fr 1fr; align-items: center; gap: 22px; }
.tunnel-node { min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; font-size: 14px; }
.tunnel-node > svg.icon { width: 36px; height: 36px; }
.tunnel-secure { position: relative; display: flex; align-items: center; justify-content: center; gap: 12px; border: 2.5px solid #173e50; background: #83cce7; border-radius: 999px; padding: 22px 16px; font-size: 14px; text-align: center; overflow: hidden; }
.tunnel-dots { position: absolute; left: 12%; right: 12%; bottom: 10px; border-bottom: 3px dotted #173e5060; }
.tunnel-onward { display: flex; flex-direction: column; align-items: center; color: #546e77; font-weight: 700; }
.tunnel-onward > span { font-size: 36px; line-height: 1; }
.tunnel-onward small { font-size: 10px; }
.home-privacy-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 28px; align-items: stretch; }
.home-zero-log { background: #173e50; color: #fffdf7; border: 3px solid #173e50; border-radius: 30px; padding: 36px; }
.home-zero { display: flex; align-items: baseline; gap: 16px; font-size: 136px; font-weight: 800; letter-spacing: -8px; line-height: 1; color: #ff9a80; margin-bottom: 20px; }
.home-zero span { font-size: 18px; letter-spacing: 3px; }
.home-zero-log h3 { font-size: 27px; margin-bottom: 14px; }
.home-zero-log p { color: #dceff2; font-size: 17px; line-height: 1.9; margin-bottom: 20px; }
.home-ease { background: #fff; }
.home-value-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.home-value-grid .home-assurance-card { flex-direction: column; background: #f7f5ed; padding: 30px; }
.home-value-grid .home-assurance-card:nth-child(2) { background: #83cce7; }
.home-value-grid .home-assurance-card:nth-child(3) { background: #ffe2d5; }
.home-value-grid .home-assurance-card h3 { margin-top: 3px; }
.home-compatibility { background: #173e50; color: #fffdf7; }
.home-compatibility .home-section-label { color: #a7d9e9; }
.home-compatibility .home-reading-intro h2 { color: #fffdf7; }
.home-compatibility .home-reading-intro > p:not(.home-section-label) { color: #dceff2; }
.home-client-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.home-client-card { min-width: 0; background: #fffdf7; color: #173e50; border: 3px solid #173e50; border-radius: 32px; padding: 38px; }
.home-client-card:first-child { background: #ff9a80; }
.home-client-card > img { height: 64px; width: 52px; object-fit: contain; margin-bottom: 24px; }
.home-client-symbol { width: 64px; height: 64px; border: 2.5px solid #173e50; border-radius: 20px; display: grid; place-items: center; background: #83cce7; margin-bottom: 24px; }
.home-client-symbol svg.icon { width: 32px; height: 32px; }
.home-client-card h3 { font-size: 30px; margin-bottom: 18px; }
.home-client-card p { max-width: 600px; font-size: 17px; line-height: 1.9; margin-bottom: 28px; }
.home-client-pills { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 26px; }
.home-client-pills > span { border: 2px solid #173e5055; border-radius: 999px; font-size: 12px; padding: 6px 12px; }
.home-devices { background: #dceff2; }
.home-devices-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.home-devices h2 { font-size: clamp(34px,3.2vw,60px); line-height: 1.4; margin-bottom: 26px; }
.home-devices-grid > div > p:not(.home-section-label) { font-size: 19px; line-height: 1.9; color: #375868; margin-bottom: 28px; max-width: 680px; }
@media(max-width:1100px) {
  .network-metrics { grid-template-columns: 1fr 1fr; gap: 22px; }
  .network-metric:nth-child(3) { border-left: 0; padding-left: 0; }
  .network-card-bottom { align-items: flex-start; flex-direction: column; }
  .home-devices-grid { gap: 30px; }
  .home-privacy-grid { gap: 20px; }
  .home-value-grid .home-assurance-card { padding: 23px; }
}
@media(max-width:800px) {
  .home-benefit-slide { grid-template-columns: 1fr; gap: 20px; padding: 30px; align-content: start; }
  .benefit-slide-copy h3 { font-size: 30px; }
  .benefit-slide-art { width: 100%; max-width: 460px; margin-inline: auto; }
  .home-privacy-grid, .home-devices-grid { grid-template-columns: 1fr; }
  .home-value-grid { grid-template-columns: 1fr; }
  .home-client-card { padding: 28px; }
  .home-client-card h3 { font-size: 26px; }
  .tunnel-path { gap: 12px; grid-template-columns: 1fr 1.2fr 1fr; }
  .tunnel-onward { grid-column: 2; }
  .tunnel-node:last-child { grid-column: 3; }
}
@media(max-width:640px) {
  .home-product-story .home-reading-intro { margin-bottom: 26px; }
  .home-benefit-track, .home-benefit-slide { border-radius: 26px; }
  .home-benefit-slide { padding: 26px 22px; gap: 20px; }
  .benefit-slide-copy h3 { font-size: 27px; margin-bottom: 14px; }
  .benefit-slide-description { font-size: 15px; }
  .benefit-slide-icon { margin-bottom: 18px; width: 50px; height: 50px; border-radius: 16px; }
  .benefit-carousel-controls { flex-direction: column-reverse; gap: 12px; padding-top: 18px; }
  .benefit-carousel-navigation { gap: 14px; }
  .home-network .home-section-inner { padding-block: 48px; }
  .network-card { padding: 23px 18px; border-radius: 26px; }
  .network-card-top { flex-wrap: wrap; font-size: 12px; }
  .network-metrics { margin-block: 24px; gap: 22px 12px; }
  .network-metric { padding: 0 0 0 12px; }
  .network-metric dt { font-size: 11px; margin-bottom: 8px; }
  .network-metric dd { font-size: 18px; }
  .network-card-bottom { gap: 18px; }
  .network-buttons { flex-wrap: wrap; }
  .network-card-bottom p { font-size: 13px; }
  .home-tunnel { padding: 24px 16px; border-radius: 25px; }
  .tunnel-path { display: flex; flex-direction: column; gap: 18px; }
  .tunnel-node { flex-direction: row; gap: 12px; }
  .tunnel-secure { width: 100%; max-width: 260px; }
  .tunnel-onward > span { transform: rotate(90deg); }
  .home-zero-log { padding: 28px 24px; }
  .home-zero { font-size: 108px; }
  .home-zero-log p,.home-client-card p { font-size: 15px; }
  .home-client-grid { grid-template-columns: 1fr; gap: 18px; }
  .home-devices h2 { font-size: 33px; }
  .home-devices-grid > div > p:not(.home-section-label) { font-size: 16px; }
}
@media(prefers-reduced-motion:reduce) {
  .benefit-carousel-dots button span { transition: none; }
}


.network-details { margin-top: 20px; color: #546e77; font-size: 14px; }
.network-details summary { cursor: pointer; width: fit-content; font-weight: 650; }
.home-zero-log .home-account-note { font-size: 15px; line-height: 1.8; margin-bottom: 0; }
