:root{
  --bg:#06101d;
  --bg2:#09172a;
  --panel:rgba(255,255,255,.06);
  --panel-2:rgba(255,255,255,.08);
  --line:rgba(255,255,255,.1);
  --txt:rgba(255,255,255,.94);
  --muted:rgba(255,255,255,.66);
  --blue:#3b82f6;
  --blue2:#60a5fa;
  --green:#22c55e;
  --shadow:0 30px 80px rgba(0,0,0,.35);
  --radius:24px;
  --radius-sm:18px;
  --wrap:1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-width:320px;
  background:
    radial-gradient(circle at top left, rgba(59,130,246,.16), transparent 28%),
    radial-gradient(circle at 85% 10%, rgba(96,165,250,.10), transparent 22%),
    linear-gradient(180deg, #06101d 0%, #071320 100%);
  color:var(--txt);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

a{color:inherit;text-decoration:none}
button,input{font:inherit}

.page-bg{
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 15%, rgba(59,130,246,.10), transparent 24%),
    radial-gradient(circle at 80% 30%, rgba(34,197,94,.05), transparent 18%);
  z-index:0;
}

.wrap{
  width:min(calc(100% - 32px), var(--wrap));
  margin:0 auto;
  position:relative;
  z-index:1;
}

.site-header{
  position:sticky;
  top:0;
  z-index:20;
  backdrop-filter:blur(16px);
  background:rgba(6,16,29,.55);
  border-bottom:1px solid rgba(255,255,255,.06);
}

.header-inner{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  letter-spacing:.02em;
}

.brand-mark{
  width:40px;
  height:40px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, var(--blue), var(--blue2));
  color:#fff;
  box-shadow:0 10px 24px rgba(59,130,246,.35);
}

.brand-text{
  font-size:20px;
}

.top-nav{
  display:flex;
  align-items:center;
  gap:22px;
}

.top-nav a{
  color:var(--muted);
  font-weight:500;
}

.top-nav a:hover{
  color:#fff;
}

.hero{
  padding:64px 0 36px;
}

.hero-grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:32px;
  align-items:center;
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  color:#c7d8ff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:rgba(255,255,255,.03);
}

.hero-copy h1{
  margin:18px 0 16px;
  font-size:clamp(38px, 6vw, 68px);
  line-height:.96;
  letter-spacing:-.04em;
  max-width:760px;
}

.hero-copy h1 span{
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,.76);
}

.hero-lead{
  max-width:680px;
  font-size:18px;
  line-height:1.7;
  color:var(--muted);
  margin:0 0 28px;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-bottom:22px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:52px;
  padding:0 20px;
  border-radius:16px;
  border:1px solid transparent;
  font-weight:700;
  transition:.18s ease;
  cursor:pointer;
}

.btn:hover{
  transform:translateY(-1px);
}

.btn-sm{
  min-height:42px;
  padding:0 16px;
  border-radius:14px;
  font-size:14px;
}

.btn-primary{
  background:linear-gradient(135deg, var(--blue), var(--blue2));
  color:#fff;
  box-shadow:0 18px 40px rgba(59,130,246,.28);
}

.btn-secondary,
.btn-ghost{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.1);
  color:#fff;
}

.hero-points{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.mini-point{
  display:flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  padding:10px 14px;
  color:#dbe6ff;
  font-size:14px;
}

.mini-icon{
  font-size:15px;
}

.hero-panel{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.glass-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  backdrop-filter:blur(20px);
}

.calc-card{
  padding:26px;
}

.card-topline{
  color:#b8ccff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:10px;
}

.calc-card h2{
  margin:0 0 8px;
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.03em;
}

.muted{
  color:var(--muted);
  line-height:1.65;
}

.calc-form{
  margin-top:22px;
}

.field-label{
  display:block;
  margin-bottom:10px;
  font-size:14px;
  color:#dce8ff;
  font-weight:600;
}

.input-row{
  display:flex;
  gap:12px;
}

.input-row input{
  flex:1;
  min-width:0;
  height:56px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.05);
  color:#fff;
  padding:0 18px;
  outline:none;
}

.input-row input::placeholder{
  color:rgba(255,255,255,.35);
}

.input-row input:focus{
  border-color:rgba(96,165,250,.6);
  box-shadow:0 0 0 4px rgba(59,130,246,.14);
}

.quick-picks{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.chip{
  height:40px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:#dce8ff;
  cursor:pointer;
}

.chip:hover{
  background:rgba(255,255,255,.08);
}

.calc-result{
  margin-top:18px;
  border-radius:18px;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.08);
  min-height:72px;
  display:flex;
  align-items:center;
  line-height:1.6;
}

.calc-result-empty{
  color:var(--muted);
  background:rgba(255,255,255,.03);
}

.calc-result-success{
  background:rgba(34,197,94,.08);
  border-color:rgba(34,197,94,.22);
  color:#d9ffe5;
}

.calc-result-warn{
  background:rgba(245,158,11,.08);
  border-color:rgba(245,158,11,.22);
  color:#ffeac2;
}

.calc-result-error{
  background:rgba(239,68,68,.08);
  border-color:rgba(239,68,68,.22);
  color:#ffd8d8;
}

.safe-note{
  margin-top:14px;
  display:flex;
  gap:10px;
  color:#cfe8d7;
  font-size:14px;
}

.stat-strip{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.stat-item{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  padding:18px 16px;
}

.stat-value{
  font-size:28px;
  font-weight:800;
  letter-spacing:-.03em;
}

.stat-label{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
}

.featured,
.benefits,
.how-it-works,
.trust,
.faq,
.cta-final{
  padding:36px 0 44px;
}

.section-head{
  margin-bottom:22px;
}

.section-head h2{
  margin:14px 0 10px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.05;
  letter-spacing:-.04em;
}

.section-head p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
}

.nominals-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.nominal-card{
  text-align:left;
  padding:22px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  color:#fff;
  cursor:pointer;
  transition:.18s ease;
}

.nominal-card:hover{
  transform:translateY(-4px);
  border-color:rgba(96,165,250,.35);
  box-shadow:0 24px 50px rgba(0,0,0,.2);
}

.nominal-top{
  display:block;
  color:#b9ccff;
  font-size:13px;
  margin-bottom:12px;
}

.nominal-value{
  display:block;
  font-size:34px;
  font-weight:800;
  letter-spacing:-.04em;
}

.nominal-bottom{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:14px;
}

.benefits-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.feature-card,
.step-card,
.trust-box,
.trust-item{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
}

.feature-card{
  padding:24px;
}

.feature-icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:rgba(59,130,246,.16);
  font-size:24px;
  margin-bottom:14px;
}

.feature-card h3,
.step-card h3{
  margin:0 0 10px;
  font-size:20px;
}

.feature-card p,
.step-card p,
.trust-box p,
.trust-item span{
  margin:0;
  color:var(--muted);
  line-height:1.7;
}

.steps-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.step-card{
  padding:24px;
}

.step-num{
  font-size:13px;
  font-weight:800;
  letter-spacing:.16em;
  color:#b8ccff;
  margin-bottom:12px;
}

.trust-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
}

.trust-box{
  padding:28px;
}

.trust-box h2{
  margin:14px 0 12px;
  font-size:clamp(28px, 4vw, 42px);
  line-height:1.05;
  letter-spacing:-.04em;
}

.trust-side{
  display:grid;
  gap:18px;
}

.trust-item{
  padding:22px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.trust-item strong{
  font-size:18px;
}

.faq-list{
  display:grid;
  gap:14px;
}

.faq-item{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  padding:18px 20px;
}

.faq-item summary{
  cursor:pointer;
  font-weight:700;
  list-style:none;
}

.faq-item summary::-webkit-details-marker{
  display:none;
}

.faq-item p{
  margin:12px 0 0;
  color:var(--muted);
  line-height:1.7;
}

.cta-final-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:28px;
  border-radius:28px;
  background:
    linear-gradient(135deg, rgba(59,130,246,.12), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.08);
}

.cta-final-inner h2{
  margin:14px 0 10px;
  font-size:clamp(28px, 4vw, 40px);
  line-height:1.05;
  letter-spacing:-.04em;
}

.cta-final-inner p{
  margin:0;
  color:var(--muted);
}

.site-footer{
  padding:20px 0 28px;
  border-top:1px solid rgba(255,255,255,.06);
}

.footer-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:var(--muted);
  font-size:14px;
}

.footer-links{
  display:flex;
  gap:18px;
}

@media (max-width: 1100px){
  .hero-grid,
  .trust-grid{
    grid-template-columns:1fr;
  }

  .benefits-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .nominals-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width: 820px){
  .top-nav{
    display:none;
  }

  .steps-grid,
  .benefits-grid,
  .stat-strip,
  .nominals-grid{
    grid-template-columns:1fr;
  }

  .cta-final-inner,
  .input-row{
    flex-direction:column;
    align-items:stretch;
  }

  .hero{
    padding-top:34px;
  }

  .calc-card{
    padding:20px;
  }

  .hero-copy h1{
    font-size:38px;
  }
}

@media (max-width: 520px){
  .wrap{
    width:min(calc(100% - 20px), var(--wrap));
  }

  .header-inner{
    height:68px;
  }

  .brand-mark{
    width:36px;
    height:36px;
    border-radius:12px;
  }

  .brand-text{
    font-size:18px;
  }

  .hero-copy h1{
    font-size:34px;
  }

  .hero-lead{
    font-size:16px;
  }

  .calc-card h2,
  .section-head h2,
  .trust-box h2,
  .cta-final-inner h2{
    font-size:28px;
  }

  .btn{
    width:100%;
  }
}
.calc-rich{
  display:flex;
  flex-direction:column;
  gap:14px;
  width:100%;
}

.calc-rich-title{
  font-size:18px;
  font-weight:800;
  line-height:1.3;
}

.calc-rich-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
  width:100%;
}

.calc-rich-item{
  padding:14px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.calc-rich-label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.58);
  margin-bottom:6px;
  font-weight:700;
}

.calc-rich-value{
  font-size:18px;
  font-weight:800;
  line-height:1.35;
  color:#fff;
  word-break:break-word;
}

.calc-rich-note{
  color:rgba(255,255,255,.78);
  line-height:1.6;
  font-size:14px;
}

.calc-rich-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:2px;
}

@media (max-width: 700px){
  .calc-rich-grid{
    grid-template-columns:1fr;
  }

  .calc-rich-actions{
    flex-direction:column;
  }
}
.checkout-page{
  padding:40px 0 70px;
}

.checkout-head{
  margin-bottom:22px;
}

.checkout-head h1{
  margin:14px 0 10px;
  font-size:clamp(34px, 5vw, 54px);
  line-height:1.02;
  letter-spacing:-.04em;
}

.checkout-head p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
}

.checkout-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:20px;
}

.checkout-main,
.checkout-side{
  padding:26px;
}

.checkout-section-title{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#b8ccff;
  font-weight:800;
  margin-bottom:16px;
}

.checkout-summary{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  margin-bottom:24px;
}
.checkout-summary-simple{
  grid-template-columns:repeat(2, minmax(0,1fr));
}

@media (max-width: 700px){
  .checkout-summary-simple{
    grid-template-columns:1fr;
  }
}

.checkout-summary-item{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.checkout-label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.58);
  margin-bottom:8px;
  font-weight:700;
}

.checkout-value{
  font-size:28px;
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1.15;
}

.checkout-form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.checkout-input{
  width:100%;
  height:56px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.05);
  color:#fff;
  padding:0 18px;
  outline:none;
}

.checkout-input::placeholder{
  color:rgba(255,255,255,.35);
}

.checkout-input:focus{
  border-color:rgba(96,165,250,.6);
  box-shadow:0 0 0 4px rgba(59,130,246,.14);
}

.checkout-note{
  color:var(--muted);
  line-height:1.6;
  font-size:14px;
}

.checkout-btn{
  margin-top:4px;
  width:100%;
}

.checkout-status{
  min-height:24px;
  font-size:14px;
  line-height:1.6;
}

.checkout-status-success{
  color:#c7ffd8;
}

.checkout-status-warn{
  color:#ffe3a6;
}

.checkout-status-error{
  color:#ffc9c9;
}

.checkout-side-list{
  display:grid;
  gap:14px;
}

.checkout-side-item{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.checkout-side-item strong{
  font-size:17px;
}

.checkout-side-item span{
  color:var(--muted);
  line-height:1.65;
}

.checkout-side-safe{
  margin-top:18px;
  display:flex;
  gap:10px;
  padding:16px;
  border-radius:18px;
  background:rgba(34,197,94,.08);
  border:1px solid rgba(34,197,94,.18);
  color:#d9ffe5;
  line-height:1.6;
}

@media (max-width: 980px){
  .checkout-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 700px){
  .checkout-summary{
    grid-template-columns:1fr;
  }
}

.reviews-section,
.legal-section{
  padding:36px 0 44px;
}

.reviews-frame-wrap{
  display:block;
}

.reviews-frame-box{
  position:relative;
  width:100%;
  max-width:800px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:18px;
  background:rgba(255,255,255,.04);
  overflow:hidden;
}

.reviews-frame{
  width:100%;
  height:1230px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:#fff;
  display:block;
}

.reviews-frame-link{
  display:block;
  text-align:center;
  margin-top:12px;
  color:rgba(255,255,255,.68);
  font-size:13px;
}

.legal-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
}

.legal-card{
  padding:24px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
}

.legal-card h3{
  margin:0 0 12px;
  font-size:24px;
}

.legal-card p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.75;
}

.legal-muted{
  color:#d8e5ff !important;
}

.footer-inner-extended{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  align-items:start;
  gap:18px;
}

.footer-col{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.footer-brand{
  color:#fff;
  font-weight:700;
}

.footer-muted{
  color:var(--muted);
  line-height:1.6;
  font-size:14px;
}

.footer-legal-mini{
  justify-self:end;
  text-align:right;
}

@media (max-width: 980px){
  .legal-grid,
  .footer-inner-extended{
    grid-template-columns:1fr;
  }

  .footer-legal-mini{
    justify-self:start;
    text-align:left;
  }
}

@media (max-width: 700px){
  .reviews-frame{
    height:980px;
  }
}

.payment-status-success{
  background:rgba(34,197,94,.10);
  border-color:rgba(34,197,94,.22);
  color:#d8ffe4;
}

.payment-status-warn{
  background:rgba(245,158,11,.10);
  border-color:rgba(245,158,11,.22);
  color:#ffe9bf;
}

.payment-status-error{
  background:rgba(239,68,68,.10);
  border-color:rgba(239,68,68,.22);
  color:#ffd7d7;
}

.legal-page{
  padding:40px 0 70px;
}

.legal-hero{
  padding:28px;
  margin-bottom:20px;
}

.legal-hero h1{
  margin:14px 0 10px;
  font-size:clamp(34px, 5vw, 54px);
  line-height:1.02;
  letter-spacing:-.04em;
}

.legal-hero-text{
  max-width:860px;
}

.legal-doc-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:20px;
}

.legal-doc-main,
.legal-doc-side{
  padding:28px;
}

.offer-section + .offer-section{
  margin-top:24px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.08);
}

.offer-section h2{
  margin:0 0 14px;
  font-size:28px;
  line-height:1.1;
  letter-spacing:-.03em;
}

.offer-section p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.8;
}

.offer-section p:last-child{
  margin-bottom:0;
}

.legal-side-block + .legal-side-block{
  margin-top:18px;
}

.legal-side-title{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#b8ccff;
  font-weight:800;
  margin-bottom:14px;
}

.legal-side-list{
  margin:0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.8;
}

.legal-side-links{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.legal-side-btn{
  width:100%;
}

.legal-safe-box{
  margin-top:18px;
}

@media (max-width: 980px){
  .legal-doc-grid{
    grid-template-columns:1fr;
  }
}