.svg-defs{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
}
.flag-red{fill:var(--color-flag-red)}
.flag-white{fill:var(--color-white)}
.flag-blue{fill:var(--color-flag-blue)}
.visually-hidden{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
  border:0;
}
.linux-eye{fill:var(--color-white)}
.linux-beak{fill:var(--color-accent)}
.linux-belly{fill:var(--color-panel-soft)}

.home-fact-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  overflow:hidden;
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  background:var(--color-border);
  box-shadow:var(--highlight),var(--shadow-accent);
}
.home-fact-strip span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:58px;
  padding:10px 14px;
  background:var(--color-panel);
  color:var(--color-muted);
  font:650 13px/1.4 var(--font-mono);
  text-align:center;
}
.home-fact-strip b{
  margin-right:6px;
  color:var(--color-accent-dark);
  font-weight:800;
}
.section-heading{
  max-width:790px;
  margin-bottom:38px;
}
.section-heading h2{
  margin-top:18px;
  margin-bottom:16px;
}
.section-heading p{
  margin-bottom:0;
  font-size:17px;
  line-height:1.8;
}
.section-heading-centered{
  margin-inline:auto;
  text-align:center;
}
.route-panel{
  padding:30px;
}
.route-panel .server-group-title{
  margin-bottom:18px;
}
.route-guidance{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);
  gap:24px;
  align-items:start;
  margin-top:28px;
}
.route-guidance p{
  font-size:16px;
  line-height:1.85;
}
.route-guidance .feature-inner{
  position:sticky;
  top:96px;
}
.route-guidance .feature-inner strong{
  display:block;
  margin-bottom:10px;
  color:var(--color-text);
  font-size:16px;
}
.route-guidance .feature-inner p{
  margin-bottom:0;
  font-size:14px;
}
.section-link-row{
  display:flex;
  justify-content:flex-end;
  margin-top:24px;
}
.section-link-row .article-more{
  display:inline-flex;
  align-items:center;
  min-height:44px;
}

.server-status:empty{
  display:none;
}
.server-status{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  margin-top:32px;
  margin-bottom:32px;
}
.srv-row{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto auto auto;
  align-items:center;
  gap:10px;
  min-width:0;
  min-height:56px;
  padding:10px 14px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-sm);
  background:var(--color-panel);
  box-shadow:var(--highlight);
}
.srv-dot{
  width:8px;
  height:8px;
  flex-shrink:0;
  border-radius:var(--radius-pill);
  background:var(--color-success);
  box-shadow:0 0 0 3px var(--alpha-green-16);
}
.srv-flag{
  width:22px;
  height:16px;
  overflow:hidden;
  border-radius:3px;
  object-fit:cover;
}
.srv-name{
  min-width:0;
  overflow:hidden;
  color:var(--color-text);
  font-weight:750;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.srv-type{
  max-width:100%;
  overflow:hidden;
  padding:3px 8px;
  border-radius:var(--radius-pill);
  background:var(--color-panel-soft);
  color:var(--color-muted);
  font-size:11px;
  font-weight:750;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.srv-ms,
.srv-bw{
  color:var(--color-accent-dark);
  font:700 12px/1.3 var(--font-mono);
  white-space:nowrap;
}

.feature-index{
  display:inline-block;
  margin-bottom:12px;
  color:var(--color-accent-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
}
.feature-wide p,
.feature-half p{
  margin-bottom:0;
  font-size:16px;
  line-height:1.82;
}
.route-mode-card{
  display:grid;
  gap:10px;
}
.route-mode-card div{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:14px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--color-border);
}
.route-mode-card div:last-child{
  border-bottom:0;
}
.route-mode-card strong{
  color:var(--color-text);
}
.route-mode-card span{
  color:var(--color-muted);
  text-align:right;
}
.tunnel-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.tunnel-mark{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  margin-bottom:18px;
  border-radius:var(--radius-pill);
  background:var(--color-accent);
}
.tunnel-mark svg{
  width:24px;
  height:24px;
}
.tunnel-card strong{
  margin-bottom:10px;
  font-size:18px;
}
.tunnel-card p{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:14px;
}
.feature-branch{
  position:relative;
  z-index:1;
  min-width:0;
}
.feature-branch .timeline-node{
  margin-bottom:20px;
}
.feature-branch .feature-half{
  height:calc(100% - 64px);
  grid-template-columns:1fr;
}
.compact-list{
  display:flex;
  align-content:flex-start;
  flex-wrap:wrap;
  gap:8px;
}
.compact-list span,
.media-zones span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 11px;
  border-radius:var(--radius-pill);
  background:var(--color-panel-soft);
  color:var(--color-text);
  font-size:12px;
  font-weight:750;
}
.media-zones{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.media-zones strong{
  display:block;
  width:100%;
  margin-top:8px;
  color:var(--color-muted);
  font-size:13px;
}
.refund-receipt{
  display:grid;
  gap:10px;
}
.refund-receipt .badge{
  justify-self:start;
}
.refund-receipt strong{
  color:var(--color-text);
  font-size:20px;
}
.refund-receipt p{
  font-size:13px;
}
.difference-panel{
  display:grid;
  grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);
  gap:44px;
  margin-top:56px;
  padding:36px;
}
.difference-panel h2{
  margin-top:18px;
  margin-bottom:0;
  font-size:clamp(30px,3vw,42px);
}
.difference-copy p{
  font-size:16px;
  line-height:1.85;
}
.difference-copy p:last-child{
  margin-bottom:0;
}

.pricing-card p{
  min-height:104px;
  line-height:1.75;
}
.traffic-pack{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);
  gap:36px;
  align-items:center;
  margin-top:28px;
  padding:30px;
}
.traffic-pack h3{
  margin-top:16px;
  margin-bottom:10px;
}
.traffic-pack p{
  margin-bottom:0;
  font-size:16px;
}
.pack-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.pack-list li{
  display:flex;
  min-width:0;
  min-height:84px;
  padding:14px;
  flex-direction:column;
  justify-content:center;
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  background:var(--color-panel);
  box-shadow:var(--highlight);
  text-align:center;
}
.pack-list strong{
  color:var(--color-text);
  font:800 20px/1.2 var(--font-mono);
}
.pack-list span{
  margin-top:6px;
  color:var(--color-muted);
  font:650 12px/1.3 var(--font-mono);
}
.plan-explanation{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}
.plan-explanation article{
  min-width:0;
  padding:24px;
  border-radius:var(--radius-lg);
  background:var(--color-panel-soft);
  box-shadow:var(--highlight),var(--shadow-accent);
}
.plan-explanation h3{
  font-size:21px;
}
.plan-explanation p{
  margin-bottom:0;
  line-height:1.8;
}

.closing-section{
  padding-top:48px;
  padding-bottom:0;
}
.home-cta{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:34px;
  align-items:center;
  padding:38px;
  border-radius:var(--radius-xl);
  background:linear-gradient(145deg,var(--color-deep-start),var(--color-deep-end));
  box-shadow:var(--shadow-panel);
}
.home-cta-label{
  display:block;
  margin-bottom:12px;
  color:var(--color-accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
}
.home-cta h2{
  margin-bottom:12px;
  color:var(--color-white);
}
.home-cta p{
  max-width:760px;
  margin-bottom:0;
  color:var(--alpha-white-72);
  font-size:16px;
}
.home-cta .btn{
  min-width:132px;
}

@media (max-width:1100px){
  .feature-pair{
    grid-template-columns:1fr;
  }
  .difference-panel{
    grid-template-columns:1fr;
  }
  .pricing-card p{
    min-height:0;
  }
  .traffic-pack{
    grid-template-columns:1fr;
  }
}
@media (max-width:900px){
  .home-fact-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .route-guidance{
    grid-template-columns:1fr;
  }
  .route-guidance .feature-inner{
    position:static;
  }
  .server-status{
    grid-template-columns:1fr;
  }
  .plan-explanation{
    grid-template-columns:1fr;
  }
}
@media (max-width:768px){
  .route-panel{
    padding:22px;
  }
  .difference-panel{
    padding:26px;
  }
  .traffic-pack{
    padding:24px;
  }
  .home-cta{
    grid-template-columns:1fr;
    padding:30px;
  }
  .home-cta .btn{
    justify-self:start;
  }
}
@media (max-width:640px){
  .home-fact-strip{
    grid-template-columns:1fr;
  }
  .home-fact-strip span{
    justify-content:flex-start;
  }
  .route-panel{
    padding:18px;
  }
  .srv-row{
    grid-template-columns:auto auto minmax(0,1fr) auto;
  }
  .srv-type{
    grid-column:3;
    justify-self:start;
  }
  .srv-bw{
    grid-column:4;
    grid-row:2;
  }
  .difference-panel,
  .traffic-pack,
  .home-cta{
    padding:22px;
  }
  .pack-list{
    grid-template-columns:1fr;
  }
  .section-link-row{
    justify-content:flex-start;
  }
  .home-cta .btn{
    width:100%;
  }
}