/* ═══════════════════════════════════════════════════════
   VPS HOSTING — PREMIUM DESIGN SYSTEM
   Refined typography, generous spacing, subtle motion.
   ═══════════════════════════════════════════════════════ */

:root{
  --vps-accent:#10b981;
  --vps-accent-soft:#34d399;
  --vps-accent-cyan:#67e8f9;
  --vps-accent-deep:#047857;
  --vps-surface:rgba(10,17,32,0.78);
  --vps-surface-soft:rgba(15,23,42,0.72);
  --vps-surface-deep:rgba(2,6,23,0.62);
  --vps-hairline:rgba(255,255,255,0.07);
  --vps-hairline-strong:rgba(255,255,255,0.12);
  --vps-glow-emerald:0 0 48px rgba(16,185,129,0.18);
  --vps-glow-deep:0 30px 80px rgba(0,0,0,0.35);
  --vps-text:#e6edf7;
  --vps-text-dim:#8b98ad;
  --vps-text-muted:#6b7894;
}

/* ═══ HERO — cinematic, centered, breathing ═══ */
.vps-hero{
  max-width:66rem;
  margin:0 auto;
  padding:6rem 1.5rem 3rem;
  text-align:center;
  position:relative;
}
.vps-hero::before{
  content:'';
  position:absolute;
  top:2rem;left:50%;
  width:min(880px,94%);
  height:460px;
  transform:translateX(-50%);
  background:
    radial-gradient(ellipse at 20% 30%, rgba(16,185,129,0.22) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 40%, rgba(103,232,249,0.18) 0%, transparent 55%),
    radial-gradient(ellipse at 50% 80%, rgba(139,92,246,0.1) 0%, transparent 60%);
  filter:blur(40px);
  pointer-events:none;
  z-index:-1;
  opacity:0.9;
}

.vps-coming-pill{
  display:inline-flex;
  align-items:center;
  gap:0.5rem;
  padding:0.35rem 0.95rem;
  border-radius:999px;
  border:1px solid rgba(245,158,11,0.28);
  background:linear-gradient(135deg,rgba(245,158,11,0.14),rgba(245,158,11,0.06));
  color:#fbbf24;
  font-size:0.68rem;
  font-weight:700;
  letter-spacing:0.18em;
  text-transform:uppercase;
  margin-bottom:1.25rem;
  box-shadow:0 0 24px rgba(245,158,11,0.14);
}
.vps-coming-pill::before{
  content:'';
  width:6px;height:6px;border-radius:999px;
  background:#fbbf24;
  box-shadow:0 0 10px rgba(251,191,36,0.8);
  animation:vps-pulse 2.4s ease-in-out infinite;
}
@keyframes vps-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:0.45;transform:scale(1.25)}
}

.vps-hero h1{
  font-size:clamp(2.25rem,5.2vw,3.75rem);
  line-height:1.02;
  letter-spacing:-0.045em;
  font-weight:800;
  margin-bottom:1.35rem;
  color:#fff;
  background:linear-gradient(180deg,#ffffff 0%,#cbd5e1 55%,#94a3b8 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.vps-hero .subtitle{
  max-width:44rem;
  margin:0 auto;
  color:#9aa8bd;
  font-size:clamp(0.98rem,1.25vw,1.08rem);
  line-height:1.65;
  letter-spacing:-0.005em;
}
.vps-bundle-note{
  max-width:50rem;
  margin:1.35rem auto 0;
  text-align:left;
  border-color:rgba(16,185,129,0.22);
  background:linear-gradient(135deg,rgba(16,185,129,0.12),rgba(6,182,212,0.08));
  color:#d1fae5;
  box-shadow:0 18px 40px rgba(0,0,0,0.22);
}
.vps-bundle-note strong{color:#fff}

/* Platform strip — three inline pills */
.platform-strip{
  display:inline-flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:0.65rem;
  margin:1.75rem auto 0;
}
.platform-pill{
  display:inline-flex;
  align-items:center;
  gap:0.5rem;
  padding:0.5rem 1rem;
  border-radius:999px;
  border:1px solid var(--vps-hairline-strong);
  background:rgba(15,23,42,0.7);
  backdrop-filter:blur(8px);
  color:var(--vps-text-dim);
  font-size:0.78rem;
  line-height:1;
  white-space:nowrap;
}
.platform-pill strong{
  color:#fff;
  font-weight:600;
  font-size:0.78rem;
  letter-spacing:-0.005em;
}
.platform-pill::before{
  content:'';
  width:6px;height:6px;border-radius:999px;
  background:linear-gradient(135deg,var(--vps-accent),var(--vps-accent-cyan));
  box-shadow:0 0 8px rgba(16,185,129,0.6);
}

/* Stats strip — credibility band */
.vps-stats{
  max-width:66rem;
  margin:2.5rem auto 0;
  padding:0 1.5rem;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
}
.vps-stat{
  text-align:center;
  padding:1.25rem 1rem;
  border:1px solid var(--vps-hairline);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(15,23,42,0.6),rgba(15,23,42,0.3));
  backdrop-filter:blur(12px);
  transition:border-color 0.3s,transform 0.3s;
}
.vps-stat:hover{
  border-color:rgba(16,185,129,0.28);
  transform:translateY(-2px);
}
.vps-stat-value{
  font-size:1.75rem;
  font-weight:800;
  letter-spacing:-0.03em;
  background:linear-gradient(135deg,#fff 0%,var(--vps-accent-soft) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  line-height:1;
}
.vps-stat-label{
  margin-top:0.45rem;
  font-size:0.7rem;
  text-transform:uppercase;
  letter-spacing:0.12em;
  color:var(--vps-text-muted);
}

/* Deployment flow — premium connector */
.vps-flow-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  margin:3rem auto 0;
  max-width:66rem;
  position:relative;
}
.vps-flow-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0.75rem;
  padding:0 0.5rem;
  position:relative;
  text-align:center;
}
.vps-flow-step:not(:last-child)::after{
  content:'';
  position:absolute;
  top:1.4rem;
  right:-1rem;
  left:calc(50% + 1.8rem);
  height:1px;
  background:linear-gradient(90deg,rgba(16,185,129,0.4),rgba(103,232,249,0.1) 50%,transparent);
  z-index:0;
}
.vps-flow-step span{
  width:2.8rem;
  height:2.8rem;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  font-size:1rem;
  color:#04111d;
  background:linear-gradient(135deg,var(--vps-accent),var(--vps-accent-cyan));
  flex-shrink:0;
  position:relative;
  z-index:1;
  box-shadow:0 0 0 4px rgba(16,185,129,0.08),0 8px 24px rgba(16,185,129,0.22);
}
.vps-flow-step-label{
  font-size:0.8rem;
  color:#cbd5e1;
  font-weight:500;
  line-height:1.3;
}
.vps-flow-step-sub{
  font-size:0.72rem;
  color:var(--vps-text-muted);
  line-height:1.4;
}

/* ═══ BUILDER SHELL ═══ */
.vps-builder-shell{
  max-width:76rem;
  margin:4rem auto 0;
  padding:0 1.5rem;
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(20rem,0.75fr);
  gap:1.5rem;
}

.vps-form-card,
.vps-summary-card{
  border:1px solid var(--vps-hairline-strong);
  border-radius:28px;
  background:
    linear-gradient(180deg,rgba(15,23,42,0.85),rgba(10,17,32,0.75));
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:
    var(--vps-glow-deep),
    inset 0 1px 0 rgba(255,255,255,0.06);
  overflow:hidden;
  position:relative;
}
.vps-form-card::before,
.vps-summary-card::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 80% -10%, rgba(16,185,129,0.08) 0%, transparent 40%),
    radial-gradient(ellipse at -10% 80%, rgba(103,232,249,0.05) 0%, transparent 40%);
}
.vps-form-card{padding:2rem 1.75rem 1.75rem}
.vps-summary-card{
  position:sticky;
  top:5rem;
  align-self:start;
  padding:1.75rem;
}

/* Section header — refined typography */
.vps-section-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1.25rem;
  margin-bottom:1.75rem;
  padding-bottom:1.25rem;
  border-bottom:1px solid var(--vps-hairline);
}
.vps-section-header h2,
.vps-summary-card h2{
  font-size:1.55rem;
  line-height:1.15;
  letter-spacing:-0.035em;
  color:#fff;
  font-weight:700;
  margin-bottom:0.25rem;
}
.guide-eyebrow{
  display:inline-block;
  font-size:0.62rem;
  font-weight:700;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--vps-accent-soft);
  margin-bottom:0.5rem;
}
.vps-section-copy,
.vps-summary-copy{
  max-width:34rem;
  color:var(--vps-text-dim);
  font-size:0.86rem;
  line-height:1.7;
  letter-spacing:-0.005em;
}

/* Fieldset — clean numbered sections */
.vps-fieldset{
  border:1px solid var(--vps-hairline);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(2,6,23,0.45),rgba(2,6,23,0.25));
  padding:1.35rem 1.25rem 1.25rem;
  margin-bottom:1.1rem;
  position:relative;
  transition:border-color 0.25s;
}
.vps-fieldset:hover{border-color:rgba(16,185,129,0.18)}
.vps-fieldset legend{
  padding:0 0.6rem;
  color:#fff;
  font-size:0.88rem;
  font-weight:700;
  letter-spacing:-0.015em;
  margin-left:-0.2rem;
  background:
    linear-gradient(180deg,rgba(15,23,42,0.96),rgba(15,23,42,0.9));
  border-radius:8px;
}

/* Choice grids — premium cards */
.vps-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0.85rem;
}
.vps-choice-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.vps-choice-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.vps-choice{position:relative}
.vps-choice__input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.vps-choice__card{
  display:flex;
  flex-direction:column;
  gap:0.4rem;
  min-height:100%;
  padding:1.1rem 1rem;
  border-radius:16px;
  border:1px solid var(--vps-hairline);
  background:linear-gradient(180deg,rgba(15,23,42,0.72),rgba(15,23,42,0.48));
  color:var(--vps-text-dim);
  cursor:pointer;
  transition:
    border-color 0.25s,
    transform 0.25s,
    box-shadow 0.25s,
    color 0.25s,
    background 0.25s;
  position:relative;
  overflow:hidden;
}
.vps-choice__card::after{
  content:'';
  position:absolute;
  top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--vps-accent),var(--vps-accent-cyan));
  transform:translateY(-100%);
  transition:transform 0.25s;
}
.vps-choice__card:hover{
  border-color:rgba(16,185,129,0.3);
  transform:translateY(-1px);
  color:#e2e8f0;
}
.vps-choice__card strong{
  color:#fff;
  font-size:0.94rem;
  letter-spacing:-0.02em;
  font-weight:600;
}
.vps-choice__card span{
  font-size:0.76rem;
  line-height:1.55;
  letter-spacing:-0.005em;
}
.vps-choice__input:checked + .vps-choice__card{
  border-color:rgba(16,185,129,0.55);
  background:
    linear-gradient(180deg,rgba(16,185,129,0.12),rgba(15,23,42,0.7));
  box-shadow:
    0 0 0 1px rgba(16,185,129,0.28),
    0 18px 44px rgba(0,0,0,0.26),
    0 0 28px rgba(16,185,129,0.14);
  transform:translateY(-2px);
  color:#d1fae5;
}
.vps-choice__input:checked + .vps-choice__card::after{transform:translateY(0)}
.vps-choice__input:checked + .vps-choice__card strong{
  color:#ecfdf5;
}
.vps-choice__input:disabled + .vps-choice__card{
  opacity:0.4;
  cursor:not-allowed;
  filter:saturate(0.5);
}

/* Form grid */
.vps-grid-two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.1rem;
}

/* Inputs — refined */
.vps-label{
  display:block;
  margin-bottom:0.5rem;
  color:#cbd5e1;
  font-size:0.76rem;
  font-weight:600;
  letter-spacing:0.02em;
  text-transform:uppercase;
}
.vps-input,
.vps-select,
.vps-textarea{
  width:100%;
  border-radius:12px;
  border:1px solid var(--vps-hairline-strong);
  background:
    linear-gradient(180deg,rgba(15,23,42,0.92),rgba(15,23,42,0.78));
  color:#fff;
  padding:0.85rem 1rem;
  font:inherit;
  font-size:0.88rem;
  margin-bottom:1rem;
  transition:border-color 0.2s,box-shadow 0.2s,background 0.2s;
}
.vps-input::placeholder,
.vps-textarea::placeholder{color:var(--vps-text-muted)}
.vps-input:focus,
.vps-select:focus,
.vps-textarea:focus{
  outline:none;
  border-color:rgba(16,185,129,0.55);
  background:linear-gradient(180deg,rgba(15,23,42,0.96),rgba(15,23,42,0.86));
  box-shadow:0 0 0 3px rgba(16,185,129,0.15);
}
.vps-textarea{
  resize:vertical;
  min-height:7rem;
  margin-bottom:0;
  line-height:1.55;
}

/* Checkboxes — clean toggle cards */
.vps-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0.7rem;
}
.vps-check{
  display:flex;
  align-items:flex-start;
  gap:0.6rem;
  border:1px solid var(--vps-hairline);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(15,23,42,0.72),rgba(15,23,42,0.5));
  color:var(--vps-text-dim);
  padding:0.85rem 0.95rem;
  font-size:0.78rem;
  line-height:1.5;
  cursor:pointer;
  transition:border-color 0.2s,background 0.2s,color 0.2s;
}
.vps-check:hover{border-color:rgba(16,185,129,0.22);color:#cbd5e1}
.vps-check:has(input:checked){
  border-color:rgba(16,185,129,0.45);
  background:linear-gradient(180deg,rgba(16,185,129,0.1),rgba(15,23,42,0.5));
  color:#d1fae5;
}
.vps-check input{
  margin-top:0.15rem;
  accent-color:var(--vps-accent);
  flex-shrink:0;
}

.vps-inline-note{
  margin-top:1rem;
  padding:0.7rem 0.9rem;
  border-radius:10px;
  border:1px solid rgba(147,197,253,0.22);
  background:rgba(30,58,138,0.18);
  font-size:0.76rem;
  color:#bfdbfe;
  line-height:1.6;
  display:flex;
  gap:0.5rem;
}
.vps-inline-note::before{
  content:'ℹ';
  color:#93c5fd;
  flex-shrink:0;
  font-size:0.9rem;
}

/* Actions */
.vps-actions{
  display:flex;
  gap:0.75rem;
  flex-wrap:wrap;
  margin-top:1.5rem;
  padding-top:1.25rem;
  border-top:1px solid var(--vps-hairline);
}

/* Summary card — live dashboard feel */
.vps-summary-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1rem;
  padding-bottom:1rem;
  border-bottom:1px solid var(--vps-hairline);
}
.status-pill{
  display:inline-flex;
  align-items:center;
  gap:0.45rem;
  padding:0.3rem 0.75rem;
  border-radius:999px;
  font-size:0.68rem;
  font-weight:700;
  letter-spacing:0.12em;
  text-transform:uppercase;
  white-space:nowrap;
}
.status-pill--warning{
  border:1px solid rgba(245,158,11,0.3);
  background:rgba(245,158,11,0.12);
  color:#fbbf24;
}
.status-pill::before{
  content:'';
  width:6px;height:6px;border-radius:999px;
  background:currentColor;
  box-shadow:0 0 8px currentColor;
  opacity:0.85;
}
.vps-summary-list{
  display:grid;
  gap:0;
  margin-top:1rem;
}
.vps-summary-list div{
  display:grid;
  grid-template-columns:7.5rem 1fr;
  gap:0.85rem;
  padding:0.7rem 0;
  border-bottom:1px solid var(--vps-hairline);
  align-items:start;
}
.vps-summary-list div:last-child{border-bottom:none}
.vps-summary-list dt{
  color:var(--vps-text-muted);
  font-size:0.68rem;
  text-transform:uppercase;
  letter-spacing:0.14em;
  font-weight:600;
  padding-top:0.15rem;
}
.vps-summary-list dd{
  color:#fff;
  font-size:0.85rem;
  line-height:1.5;
  letter-spacing:-0.005em;
}
.vps-advice-card{
  display:block;
  margin-top:1.25rem;
  padding:0.95rem 1rem;
  border-radius:14px;
  border:1px solid rgba(16,185,129,0.22);
  background:linear-gradient(180deg,rgba(16,185,129,0.1),rgba(16,185,129,0.04));
  font-size:0.82rem;
  line-height:1.6;
  color:#d1fae5;
}
.vps-advice-card strong{
  color:#6ee7b7;
  display:block;
  margin-bottom:0.35rem;
  font-size:0.68rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  font-weight:700;
}
.vps-summary-actions{
  display:flex;
  gap:0.65rem;
  flex-wrap:wrap;
  margin-top:1.25rem;
}
.vps-dashboard-button[disabled]{
  opacity:0.55;
  cursor:not-allowed;
}
.vps-result-card{
  margin-top:1.25rem;
  border:1px solid rgba(245,158,11,0.3);
  border-radius:18px;
  background:
    linear-gradient(180deg,rgba(245,158,11,0.12),rgba(245,158,11,0.04));
  padding:1.1rem;
}
.vps-result-card h3{
  color:#fff;
  font-size:1.05rem;
  margin-bottom:0.45rem;
  letter-spacing:-0.02em;
  font-weight:700;
}
.vps-result-card p{
  color:#f8fafc;
  font-size:0.84rem;
  line-height:1.65;
}

/* ═══ TRUST / FEATURE GRID ═══ */
.vps-trust-grid{
  max-width:76rem;
  margin:4rem auto 0;
  padding:0 1.5rem;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.25rem;
}
.vps-trust-card{
  border:1px solid var(--vps-hairline-strong);
  border-radius:22px;
  background:
    linear-gradient(180deg,rgba(15,23,42,0.75),rgba(10,17,32,0.55));
  backdrop-filter:blur(14px);
  padding:1.75rem 1.5rem;
  position:relative;
  overflow:hidden;
  transition:border-color 0.3s,transform 0.3s;
}
.vps-trust-card::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(16,185,129,0.6),transparent);
  opacity:0.4;
}
.vps-trust-card:hover{
  border-color:rgba(16,185,129,0.26);
  transform:translateY(-3px);
}
.vps-trust-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(16,185,129,0.25),rgba(103,232,249,0.15));
  border:1px solid rgba(16,185,129,0.3);
  color:var(--vps-accent-soft);
  margin-bottom:1rem;
}
.vps-trust-card h2{
  font-size:1.15rem;
  color:#fff;
  letter-spacing:-0.025em;
  margin-bottom:0.5rem;
  font-weight:700;
  line-height:1.25;
}
.vps-trust-card p{
  font-size:0.85rem;
  color:var(--vps-text-dim);
  line-height:1.65;
  letter-spacing:-0.005em;
}

/* ═══ FAQ ═══ */
.vps-faq{
  max-width:56rem;
  margin:4rem auto 0;
  padding:0 1.5rem;
}
.vps-faq-heading{
  text-align:center;
  margin-bottom:2rem;
}
.vps-faq-heading h2{
  font-size:2rem;
  letter-spacing:-0.035em;
  color:#fff;
  font-weight:700;
  margin-bottom:0.6rem;
  background:linear-gradient(180deg,#fff,#94a3b8);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
.vps-faq-heading p{
  color:var(--vps-text-dim);
  font-size:0.95rem;
  line-height:1.6;
}
.vps-faq-item{
  border:1px solid var(--vps-hairline);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(15,23,42,0.7),rgba(15,23,42,0.48));
  margin-bottom:0.75rem;
  overflow:hidden;
  transition:border-color 0.2s;
}
.vps-faq-item:hover{border-color:rgba(16,185,129,0.22)}
.vps-faq-item summary{
  padding:1.1rem 1.25rem;
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  font-size:0.95rem;
  font-weight:600;
  color:#fff;
  letter-spacing:-0.015em;
  transition:color 0.2s;
}
.vps-faq-item summary::-webkit-details-marker{display:none}
.vps-faq-item summary::after{
  content:'+';
  font-size:1.3rem;
  font-weight:300;
  color:var(--vps-accent-soft);
  transition:transform 0.25s;
  flex-shrink:0;
}
.vps-faq-item[open] summary::after{transform:rotate(45deg)}
.vps-faq-item[open] summary{color:var(--vps-accent-soft)}
.vps-faq-body{
  padding:0 1.25rem 1.2rem;
  color:var(--vps-text-dim);
  font-size:0.88rem;
  line-height:1.7;
}

/* CTA */
.vps-cta-card{
  max-width:76rem;
  margin:4rem auto 1rem;
  border-radius:28px;
  padding:3rem 2rem;
  text-align:center;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(16,185,129,0.16) 0%, transparent 60%),
    linear-gradient(180deg,rgba(15,23,42,0.88),rgba(10,17,32,0.7));
  border:1px solid rgba(16,185,129,0.25);
  position:relative;
  overflow:hidden;
}
.vps-cta-card::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(16,185,129,0.6),transparent);
}
.vps-cta-card h2{
  font-size:clamp(1.5rem,3vw,2.1rem);
  letter-spacing:-0.035em;
  color:#fff;
  font-weight:700;
  margin-bottom:0.9rem;
  line-height:1.2;
}
.vps-cta-card p{
  max-width:44rem;
  margin:0 auto 1.5rem;
  color:var(--vps-text-dim);
  font-size:0.98rem;
  line-height:1.7;
}

/* Notice card */
.notice-card{
  border:1px solid var(--vps-hairline);
  border-radius:14px;
  background:rgba(15,23,42,0.6);
  padding:1rem 1.1rem;
  color:var(--vps-text-dim);
  font-size:0.85rem;
  line-height:1.6;
}
.notice-card--soft{
  border-color:rgba(16,185,129,0.22);
  background:rgba(16,185,129,0.06);
}

/* ═══ RESPONSIVE ═══ */
@media(max-width:1100px){
  .vps-builder-shell{grid-template-columns:1fr}
  .vps-summary-card{position:static}
  .vps-choice-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vps-trust-grid{grid-template-columns:1fr;max-width:38rem}
  .vps-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:760px){
  .vps-hero{padding:3.5rem 1.25rem 2rem}
  .vps-form-card{padding:1.5rem 1.25rem}
  .vps-summary-card{padding:1.5rem 1.25rem}
  .vps-flow-strip{grid-template-columns:1fr;gap:0.75rem}
  .vps-flow-step{flex-direction:row;text-align:left;justify-content:flex-start}
  .vps-flow-step:not(:last-child)::after{display:none}
  .vps-grid-two,
  .vps-choice-grid,
  .vps-choice-grid--three,
  .vps-choice-grid--four,
  .vps-check-grid{grid-template-columns:1fr}
  .vps-section-header,
  .vps-summary-card__top,
  .vps-summary-actions,
  .vps-actions{flex-direction:column;align-items:stretch}
  .vps-summary-list div{grid-template-columns:1fr;gap:0.25rem;padding:0.6rem 0}
  .vps-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:0.65rem}
  .vps-stat{padding:1rem 0.5rem}
  .vps-stat-value{font-size:1.35rem}
  .vps-trust-card{padding:1.5rem 1.25rem}
  .vps-cta-card{padding:2rem 1.5rem}
}
