.home-svg-defs{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
}

.route-preview-section{
  background:var(--bg);
}

.route-preview-layout{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);
  gap:22px;
  align-items:start;
}

.route-guide{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.route-guide p{
  color:var(--text-muted);
}

.text-link{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:30px;
  color:var(--accent);
  font-weight:750;
}

.text-link:hover{
  color:var(--accent-dark);
}

.status-block{
  margin-top:36px;
  padding:28px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:var(--radius-l);
  background:var(--bg-panel-2);
  box-shadow:var(--shadow-soft);
}

.status-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
}

.status-heading p{
  max-width:720px;
  margin-top:7px;
  color:var(--text-muted);
}

#server-status:empty{
  display:none;
}

#server-status:not(:empty){
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  height:auto;
  margin-bottom:0;
  overflow:hidden;
}

#server-status .srv-row{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:9px;
  min-width:0;
  min-height:50px;
  padding:9px 12px;
  border:1px solid var(--border);
  border-radius:var(--radius-s);
  background:var(--bg-panel);
}

#server-status .srv-dot{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:var(--radius-round);
  background:var(--success);
  animation:server-breathe 2.6s ease-in-out infinite;
}

#server-status .srv-flag{
  width:24px;
  height:17px;
  overflow:hidden;
  border-radius:var(--radius-xs);
  box-shadow:0 0 0 1px var(--border);
}

#server-status .srv-name{
  min-width:0;
  overflow:hidden;
  color:var(--text);
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#server-status .srv-type{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  max-width:100%;
  padding:3px 7px;
  overflow:hidden;
  border-radius:var(--radius-xs);
  color:var(--accent);
  background:var(--accent-soft);
  font-size:11.5px;
  font-weight:700;
  line-height:1.1;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#server-status .srv-ms,
#server-status .srv-bw{
  color:var(--text-muted);
  font:600 11.5px/1.2 var(--font-mono);
  white-space:nowrap;
}

@keyframes server-breathe{
  50%{
    opacity:.62;
    transform:scale(1.2);
  }
}

.feature-section{
  background:var(--bg-panel-2);
}

.feature-card strong{
  color:var(--text);
}

.compact-window{
  width:86%;
}

.privacy-preview{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:8px 12px;
  align-items:center;
  padding:18px;
}

.privacy-preview svg{
  grid-row:1 / 3;
  width:48px;
  height:48px;
  padding:10px;
  border-radius:var(--radius-m);
  color:var(--accent);
  background:var(--accent-soft);
}

.privacy-preview span{
  color:var(--text-muted);
  font-size:13px;
}

.device-preview{
  display:grid;
  gap:2px;
}

.device-preview-row{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:40px;
  padding:8px 10px;
  border-bottom:1px solid var(--border-soft);
}

.device-preview-row svg{
  width:20px;
  height:20px;
  color:var(--accent);
}

.device-preview-row span{
  color:var(--text);
  font-weight:650;
}

.device-preview-row b{
  color:var(--text-muted);
  font-size:12px;
  font-weight:600;
}

.refund-preview{
  display:flex;
  align-items:center;
  gap:18px;
  padding:18px;
}

.refund-stamp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:68px;
  height:68px;
  flex:0 0 68px;
  border:2px dashed var(--warning);
  border-radius:50%;
  color:var(--warning-dark);
  background:var(--warning-soft);
  font-family:var(--font-display);
  font-weight:800;
  transform:rotate(-4deg);
}

.refund-preview p{
  margin-top:5px;
  color:var(--text-muted);
  font-size:12.5px;
}

.choice-section{
  background:var(--bg);
}

.choice-layout{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr);
  gap:28px 54px;
  align-items:start;
}

.choice-layout .section-head{
  margin-bottom:0;
}

.choice-copy{
  color:var(--text-muted);
  font-size:16px;
}

.choice-facts{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:var(--radius-l);
  background:var(--bg-panel);
  box-shadow:var(--shadow-soft);
}

.choice-facts div{
  min-width:0;
  padding:22px;
}

.choice-facts div + div{
  border-left:1px solid var(--border);
}

.choice-facts dt{
  color:var(--text-soft);
  font:600 12px/1.4 var(--font-mono);
}

.choice-facts dd{
  margin-top:8px;
  color:var(--text);
  font-weight:750;
}

.pricing-preview-section{
  background:var(--bg-panel-2);
}

.plan-summary{
  min-height:76px;
  margin-top:15px;
  color:var(--text-muted);
}

.traffic-pack-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:28px;
  margin-top:24px;
  padding:30px;
  border:1px solid var(--border);
  border-radius:var(--radius-xl);
  background:linear-gradient(145deg,var(--warning-soft),var(--bg-panel));
  box-shadow:var(--shadow-soft);
}

.traffic-pack-panel h3{
  margin-top:12px;
}

.traffic-pack-panel p{
  max-width:800px;
  margin-top:9px;
  color:var(--text-muted);
}

.blog-preview-section{
  background:var(--bg);
}

.blog-preview-section .article-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.blog-preview-section .article-card{
  min-height:290px;
}

.blog-preview-section .article-card h3{
  font-size:20px;
}

.section-link-row{
  display:flex;
  justify-content:flex-end;
  margin-top:24px;
}

.closing-section{
  background:var(--bg);
}

@media (max-width:1100px){
  .blog-preview-section .article-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:960px){
  .route-preview-layout{
    grid-template-columns:1fr;
  }

  .route-guide{
    max-width:none;
  }

  .choice-layout{
    grid-template-columns:1fr;
  }

  .choice-facts{
    grid-column:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .choice-facts div + div{
    border-left:0;
  }

  .choice-facts div:nth-child(even){
    border-left:1px solid var(--border);
  }

  .choice-facts div:nth-child(n+3){
    border-top:1px solid var(--border);
  }
}

@media (max-width:768px){
  #server-status:not(:empty){
    grid-template-columns:1fr;
  }

  .traffic-pack-panel{
    grid-template-columns:1fr;
  }

  .blog-preview-section .article-grid{
    grid-template-columns:1fr;
  }

  .plan-summary{
    min-height:0;
  }
}

@media (max-width:640px){
  .status-block{
    padding:20px;
  }

  #server-status .srv-row{
    grid-template-columns:auto auto minmax(0,1fr) auto;
  }

  #server-status .srv-type{
    display:none;
  }

  #server-status .srv-bw{
    grid-column:3 / -1;
  }

  .choice-facts{
    grid-template-columns:1fr;
  }

  .choice-facts div:nth-child(even){
    border-left:0;
  }

  .choice-facts div:nth-child(n+2){
    border-top:1px solid var(--border);
  }

  .traffic-pack-panel{
    padding:24px 20px;
  }

  .compact-window,
  .device-preview{
    width:94%;
  }

  .refund-preview{
    gap:12px;
  }

  .refund-stamp{
    width:58px;
    height:58px;
    flex-basis:58px;
  }
}

@media (prefers-reduced-motion:reduce){
  #server-status .srv-dot{
    animation:none;
  }
}