/* NextGuard — css/style.css */

/* NextGuard — css/style.css */

:root {
  --gold:       #c9a84c;
  --gold-light: #f0d080;
  --gold-dim:   #7a6030;
  --deep:       #07090f;
  --dark1:      #0c1018;
  --dark2:      #111620;
  --dark3:      #161d2c;
  --blue-deep:  #0a1628;
  --silver:     #a8b8c8;
  --text:       #8a9bb0;
  --red:        #e05050;
  --green:      #6fce6f;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; font-size: 120%; }

body {
  background: var(--deep);
  color: var(--text);
  font-family: 'Libre Baskerville', serif;
  font-size: 19px;
  overflow-x: hidden;
}

#particles {
  position: fixed; inset: 0;
  pointer-events: none; z-index: 0; opacity: 0.5;
}

section { position: relative; z-index: 1; }

/* ── NAV ── */
nav {
  position: fixed; top:0; left:0; right:0; z-index:200;
  display:flex; flex-direction:column;
  padding:0 77px;
  background:linear-gradient(to bottom,rgba(7,9,15,0.98) 60%,transparent);
  border-bottom:1px solid rgba(201,168,76,0.12);
  backdrop-filter:blur(12px);
  transition:padding 0.3s;
}
.nav-main-row {
  display:flex; align-items:center; justify-content:space-between;
  padding:22px 0;
  width:100%;
  position:relative;
}
.nav-right {
  display:flex; align-items:center; gap:16px; flex-shrink:0;
}
.nav-logo {
  font-family:'Cinzel Decorative',serif; font-size:24px; font-weight:700;
  background:linear-gradient(135deg,var(--gold-light),var(--gold),var(--gold-dim));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; letter-spacing:2px;
  align-self:center;
}
nav ul { list-style:none; display:flex; gap:43px; align-items:center; flex-shrink:1; }
nav ul li { display:flex; align-items:center; }
nav ul a {
  font-family:'Cinzel',serif; font-size:15.6px; letter-spacing:2px;
  text-transform:uppercase; color:var(--silver); text-decoration:none; transition:color 0.3s;
  display:flex; align-items:center;
}
nav ul a:hover { color:var(--gold-light); }
.nav-cta {
  font-family:'Cinzel',serif; font-size:15.6px; letter-spacing:2px; text-transform:uppercase;
  color:var(--gold); border:1px solid var(--gold-dim); padding:12px 29px;
  text-decoration:none; background:linear-gradient(135deg,rgba(201,168,76,0.06),transparent);
  transition:all 0.3s; position:relative; overflow:hidden;
  align-self:center; display:flex; align-items:center; white-space:nowrap;
}
.nav-cta::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg,var(--gold),var(--gold-dim)); opacity:0; transition:opacity 0.3s;
}
.nav-cta:hover { color:var(--deep); border-color:var(--gold-light); }
.nav-cta:hover::before { opacity:1; }
.nav-cta span { position:relative; z-index:1; }

/* ── BUTTONS ── */
.btn-gold {
  font-family:'Cinzel',serif; font-size:14px; letter-spacing:4px; text-transform:uppercase;
  color:var(--deep); background:linear-gradient(135deg,var(--gold-light),var(--gold));
  border:none; padding:22px 53px; cursor:pointer; text-decoration:none;
  display:inline-block; transition:all 0.4s;
  box-shadow:0 5px 36px rgba(201,168,76,0.3),inset 0 1px 0 rgba(255,255,255,0.2);
  clip-path:polygon(14px 0%,100% 0%,calc(100% - 14px) 100%,0% 100%);
}
.btn-gold:hover {
  transform:translateY(-4px); box-shadow:0 12px 60px rgba(201,168,76,0.5);
  background:linear-gradient(135deg,#fff8e0,var(--gold-light));
}
.btn-outline {
  font-family:'Cinzel',serif; font-size:14px; letter-spacing:4px; text-transform:uppercase;
  color:var(--gold); background:transparent; border:1px solid var(--gold-dim);
  padding:22px 53px; cursor:pointer; text-decoration:none; display:inline-block;
  transition:all 0.3s; clip-path:polygon(14px 0%,100% 0%,calc(100% - 14px) 100%,0% 100%);
}
.btn-outline:hover { border-color:var(--gold); color:var(--gold-light); background:rgba(201,168,76,0.06); transform:translateY(-2px); }

/* ── SECTION HEADER ── */
.sec-header { text-align:center; margin-bottom:77px; }
.sec-kicker { font-family:'Cinzel',serif; font-size:12px; letter-spacing:6px; text-transform:uppercase; color:var(--gold-dim); margin-bottom:19px; }
.sec-title { font-family:'Cinzel',serif; font-size:clamp(29px,3.5vw,53px); font-weight:700; color:#fff; line-height:1.2; }
.sec-title .g { background:linear-gradient(135deg,var(--gold-light),var(--gold)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.orn { display:flex; align-items:center; gap:14px; margin:19px auto 0; width:fit-content; }
.orn .line { width:72px; height:1px; background:linear-gradient(90deg,transparent,var(--gold-dim)); }
.orn .line.r { background:linear-gradient(90deg,var(--gold-dim),transparent); }
.orn .diamond { width:10px;height:10px;background:var(--gold-dim);transform:rotate(45deg); }

/* ── HERO ── */
#hero {
  min-height:100vh; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center;
  padding:168px 72px 120px; position:relative; overflow:hidden;
}
.hero-bg {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse 100% 70% at 50% 20%,rgba(10,22,40,0.95) 0%,transparent 80%),
    radial-gradient(ellipse 60% 50% at 50% 110%,rgba(201,168,76,0.05) 0%,transparent 70%),
    linear-gradient(180deg,rgba(12,16,24,0.97) 0%,rgba(7,9,15,1) 100%);
}
.rune-ring {
  position:absolute; top:50%; left:50%; border-radius:50%;
  border:1px solid rgba(201,168,76,0.05);
}
.rune-ring:nth-child(2) { width:960px;height:960px; transform:translate(-50%,-50%); animation:runeRot 60s linear infinite; }
.rune-ring:nth-child(3) { width:720px;height:720px; transform:translate(-50%,-50%); animation:runeRot 40s linear infinite reverse; border-style:dashed; }
.rune-ring:nth-child(4) { width:480px;height:480px; transform:translate(-50%,-50%); animation:runeRot 25s linear infinite; }
@keyframes runeRot {
  from{transform:translate(-50%,-50%) rotate(0deg);}
  to{transform:translate(-50%,-50%) rotate(360deg);}
}

.hero-eyebrow {
  font-family:'Cinzel',serif; font-size:13px; letter-spacing:6px;
  text-transform:uppercase; color:var(--gold-dim); margin-bottom:29px;
  position:relative; z-index:2; animation:fadeUp 0.8s 0.1s ease both;
  display:flex; align-items:center; justify-content:center; gap:19px;
}
.eyebrow-line { width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-dim)); }
.eyebrow-line.r { background:linear-gradient(90deg,var(--gold-dim),transparent); }

h1 {
  font-family:'Cinzel Decorative',serif;
  font-size:clamp(46px,7vw,115px); font-weight:700; line-height:1.06;
  color:#fff; position:relative; z-index:2;
  animation:fadeUp 0.8s 0.2s ease both;
  text-shadow:0 0 96px rgba(201,168,76,0.12);
}
h1 .gw {
  background:linear-gradient(135deg,var(--gold-light) 0%,var(--gold) 50%,var(--gold-dim) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; display:block;
}

.hero-orn { width:336px;height:29px; margin:34px auto; position:relative; z-index:2; animation:fadeUp 0.8s 0.3s ease both; }
.hero-sub {
  font-size:23px; font-style:italic; color:var(--silver); line-height:1.8;
  max-width:768px; margin:0 auto 62px; position:relative; z-index:2;
  animation:fadeUp 0.8s 0.4s ease both;
}
.hero-sub strong { color:var(--gold-light); font-style:normal; }

.hero-btns {
  display:flex; gap:24px; justify-content:center; flex-wrap:wrap;
  position:relative; z-index:2; animation:fadeUp 0.8s 0.5s ease both;
}

.hero-badges {
  display:flex; gap:29px; justify-content:center; flex-wrap:wrap;
  margin-top:58px; position:relative; z-index:2;
  animation:fadeUp 0.8s 0.6s ease both;
}
.hero-badge-item {
  display:flex; align-items:center; gap:10px;
  font-family:'Cinzel',serif; font-size:12px; letter-spacing:2px;
  text-transform:uppercase; color:rgba(201,168,76,0.6);
}
.badge-dot { width:6px;height:6px;border-radius:50%;background:var(--gold);animation:blink 2s infinite; }
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0.3;}}

@keyframes fadeUp {
  from{opacity:0;transform:translateY(42px);}
  to{opacity:1;transform:translateY(0);}
}

/* ── PAIN ── */
#pain {
  padding:96px 77px;
  background:linear-gradient(180deg,var(--dark1),var(--dark2));
  border-top:1px solid rgba(201,168,76,0.1);
}
.pain-intro {
  text-align:center; max-width:840px; margin:0 auto 67px;
  font-size:20px; font-style:italic; color:var(--silver); line-height:1.8;
}
.pain-grid {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(360px,1fr));
  gap:2px; max-width:1320px; margin:0 auto;
}
.pain-card {
  background:var(--dark1); padding:43px 38px; position:relative; overflow:hidden;
  transition:all 0.4s cubic-bezier(0.16,1,0.3,1);
}
.pain-card:hover { background:var(--dark3); transform:translateY(-5px); }
.pain-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,transparent,var(--red),transparent); opacity:0.35;
}
.pain-emoji { font-size:34px; margin-bottom:19px; display:block; }
.pain-title { font-family:'Cinzel',serif; font-size:17px; color:var(--gold-light); margin-bottom:12px; letter-spacing:0.5px; }
.pain-text { font-size:17px; color:var(--text); line-height:1.7; }
.solve {
  margin-top:17px; font-size:16px; color:var(--green); font-style:italic;
  padding-top:14px; border-top:1px solid rgba(255,255,255,0.05);
}

/* ── STATS ── */
#stats {
  padding:67px 77px;
  background:linear-gradient(135deg,var(--dark2),var(--blue-deep));
  border-top:1px solid rgba(201,168,76,0.12);
  border-bottom:1px solid rgba(201,168,76,0.12);
  display:flex; justify-content:center; gap:0; flex-wrap:wrap; position:relative; z-index:1;
}
.stat-item { flex:1; min-width:156px; max-width:240px; text-align:center; padding:0 29px; position:relative; }
.stat-item+.stat-item::before {
  content:''; position:absolute; left:0; top:15%; bottom:15%; width:1px;
  background:linear-gradient(180deg,transparent,rgba(201,168,76,0.2),transparent);
}
.stat-num {
  font-family:'Cinzel',serif; font-size:43px; font-weight:700;
  background:linear-gradient(135deg,var(--gold-light),var(--gold));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  line-height:1; margin-bottom:10px;
}
.stat-label { font-size:13px; color:var(--text); letter-spacing:1px; text-transform:uppercase; font-family:'Cinzel',serif; line-height:1.4; }

/* ── FEATURES ── */
#features { padding:120px 77px; background:var(--dark1); }
.features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; max-width:1320px; margin:0 auto; }
.feat-card {
  background:var(--dark2); padding:53px 43px; position:relative; overflow:hidden;
  transition:all 0.4s cubic-bezier(0.16,1,0.3,1); cursor:default;
}
.feat-card::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(201,168,76,0.04),transparent 60%); opacity:0; transition:opacity 0.4s;
}
.feat-top { position:absolute; top:0; left:29px; right:29px; height:1px; background:linear-gradient(90deg,transparent,var(--gold-dim),transparent); transform:scaleX(0); transition:transform 0.4s; }
.feat-card:hover { background:var(--dark3); transform:translateY(-5px); }
.feat-card:hover::before { opacity:1; }
.feat-card:hover .feat-top { transform:scaleX(1); }
.feat-icon {
  width:65px;height:65px;
  background:linear-gradient(135deg,rgba(201,168,76,0.12),rgba(201,168,76,0.03));
  border:1px solid rgba(201,168,76,0.2); display:flex; align-items:center;
  justify-content:center; font-size:26px; margin-bottom:26px; transition:all 0.4s;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
}
.feat-card:hover .feat-icon { background:linear-gradient(135deg,rgba(201,168,76,0.2),rgba(201,168,76,0.08)); border-color:var(--gold-dim); }
.feat-title { font-family:'Cinzel',serif; font-size:18px; font-weight:700; color:var(--gold-light); letter-spacing:0.5px; margin-bottom:14px; }
.feat-text { font-size:17px; color:var(--text); line-height:1.75; }
.feat-tag { display:inline-block; margin-top:17px; font-size:13px; letter-spacing:1px; text-transform:uppercase; font-family:'Cinzel',serif; color:var(--gold-dim); background:rgba(201,168,76,0.06); border:1px solid rgba(201,168,76,0.12); padding:4px 12px; }

/* ── VS TABLE ── */
#vs { padding:120px 77px; background:linear-gradient(180deg,var(--dark2),var(--blue-deep)); }
.vs-wrap { max-width:1152px; margin:0 auto; }
.vs-table-wrap { border:1px solid rgba(201,168,76,0.15); overflow:hidden; }
.vs-table { width:100%; border-collapse:collapse; }
.vs-table thead tr { background:linear-gradient(135deg,rgba(201,168,76,0.08),rgba(201,168,76,0.02)); }
.vs-table th { padding:26px 34px; font-family:'Cinzel',serif; font-size:14px; letter-spacing:2px; text-transform:uppercase; text-align:left; border-bottom:1px solid rgba(201,168,76,0.18); }
.vs-table th:nth-child(2) { color:#e05050; }
.vs-table th:nth-child(3) { color:var(--gold-light); }
.vs-table th:not(:first-child) { text-align:center; }
.vs-table tbody tr { border-bottom:1px solid rgba(255,255,255,0.04); transition:background 0.2s; }
.vs-table tbody tr:hover { background:rgba(201,168,76,0.03); }
.vs-table tbody tr:last-child { border-bottom:none; }
.vs-table td { padding:19px 34px; font-size:17px; }
.vs-table td:first-child { color:var(--silver); font-style:italic; }
.vs-table td:not(:first-child) { text-align:center; }
.bad { color:#e05050 !important; font-size:24px; }
.good { color:var(--green) !important; font-size:24px; }
.vs-bad { color:#e05050 !important; font-size:16px; font-family:'Cinzel',serif; }
.vs-good { color:var(--green) !important; font-size:16px; font-family:'Cinzel',serif; }
.vs-note { margin-top:24px; text-align:center; font-size:16px; font-style:italic; color:rgba(201,168,76,0.4); }

/* ── USE CASES ── */
#usecases { padding:120px 77px; background:var(--dark1); }
.cases-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:29px; max-width:1320px; margin:0 auto; }
.case-card {
  background:var(--dark2); border:1px solid rgba(201,168,76,0.1);
  padding:48px; position:relative; overflow:hidden;
  transition:all 0.4s cubic-bezier(0.16,1,0.3,1);
}
.case-card:hover { border-color:rgba(201,168,76,0.25); transform:translateY(-5px); box-shadow:0 19px 58px rgba(0,0,0,0.4); }
.case-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,transparent,var(--gold-dim),transparent); }
.case-head { display:flex; align-items:center; gap:19px; margin-bottom:24px; }
.case-avatar {
  width:62px;height:62px;
  background:linear-gradient(135deg,rgba(201,168,76,0.15),rgba(201,168,76,0.04));
  border:1px solid rgba(201,168,76,0.2); display:flex; align-items:center; justify-content:center; font-size:29px;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
}
.case-who { font-family:'Cinzel',serif; font-size:17px; font-weight:700; color:var(--gold-light); margin-bottom:5px; }
.case-role { font-size:14px; color:var(--text); font-style:italic; }
.case-scenario { font-size:17px; color:#e06060; font-style:italic; margin-bottom:19px; padding:14px 19px; background:rgba(224,96,96,0.06); border-left:2px solid rgba(224,96,96,0.3); line-height:1.6; }
.case-solution { font-size:17px; color:var(--silver); line-height:1.75; }
.case-solution strong { color:var(--gold-light); }

/* ── PRICING ── */
#pricing {
  padding:120px 77px;
  background:linear-gradient(180deg,var(--dark2),var(--blue-deep) 60%,var(--dark1));
  position:relative; overflow:hidden;
}
#pricing::before {
  content:''; position:absolute; bottom:-360px; left:50%; transform:translateX(-50%);
  width:960px;height:960px; border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,76,0.04) 0%,transparent 70%); pointer-events:none;
}
.pricing-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:24px; max-width:1560px; margin:0 auto; }
.plan {
  background:var(--dark1); border:1px solid rgba(201,168,76,0.12);
  padding:58px 53px 53px; position:relative; overflow:hidden;
  transition:all 0.4s cubic-bezier(0.16,1,0.3,1);
  display:flex; flex-direction:column;
  text-align:center;
}
.plan::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,transparent,var(--gold-dim),transparent); opacity:0.5; }
.plan:hover { border-color:rgba(201,168,76,0.3); transform:translateY(-7px); box-shadow:0 24px 72px rgba(0,0,0,0.5),0 0 48px rgba(201,168,76,0.06); }
.plan.featured { background:linear-gradient(160deg,#0f1b2c,var(--dark3)); border-color:rgba(201,168,76,0.35); }
.plan.featured::before { background:linear-gradient(90deg,transparent,var(--gold),transparent); opacity:1; }
.plan-badge { position:absolute; top:-1px; left:50%; transform:translateX(-50%); white-space:nowrap; font-family:'Cinzel',serif; font-size:11px; letter-spacing:4px; text-transform:uppercase; background:linear-gradient(135deg,var(--gold-light),var(--gold)); color:var(--deep); font-weight:700; padding:6px 20px; }
.plan-name { font-family:'Cinzel Decorative',serif; font-size:26px; font-weight:700; color:var(--gold-light); margin-bottom:7px; letter-spacing:1px; }
.plan-tagline { font-size:16px; font-style:italic; color:var(--text); margin-bottom:34px; }
.price-main { font-family:'Cinzel',serif; font-size:70px; font-weight:700; color:#fff; line-height:1; }
.price-main sup { font-size:26px; vertical-align:top; margin-top:17px; display:inline-block; color:var(--gold); }
.price-period { font-size:16px; color:var(--text); letter-spacing:1px; margin-top:7px; font-style:italic; text-align:center; }
.price-rub { font-family:'Cinzel',serif; font-size:14px; color:var(--gold-dim); margin-top:2px; text-align:center; }
.plan-sep { height:1px; background:linear-gradient(90deg,transparent,rgba(201,168,76,0.2),transparent); margin:31px 0; }
.plan-features { list-style:none; margin-bottom:43px; flex:1; }
.plan-features li { display:flex; align-items:center; justify-content:center; gap:12px; padding:12px 0; border-bottom:1px solid rgba(255,255,255,0.04); font-size:17px; color:var(--silver); line-height:1.5; text-align:left; }
.plan-features li:last-child { border-bottom:none; }
.fb { color:var(--gold); font-size:13px; margin-top:4px; flex-shrink:0; }
.plan-features li strong { color:var(--gold-light); font-weight:400; }
.plan-cta { width:100%; font-family:'Cinzel',serif; font-size:13px; letter-spacing:4px; text-transform:uppercase; padding:19px; cursor:pointer; border:none; transition:all 0.3s; margin-top:auto; }
.cta-outline { background:transparent; border:1px solid var(--gold-dim); color:var(--gold); }
.cta-outline:hover { border-color:var(--gold); background:rgba(201,168,76,0.06); color:var(--gold-light); }
.cta-solid { background:linear-gradient(135deg,var(--gold-light),var(--gold)); color:var(--deep); font-weight:700; box-shadow:0 5px 24px rgba(201,168,76,0.25); }
.cta-solid:hover { box-shadow:0 7px 48px rgba(201,168,76,0.45); transform:translateY(-2px); background:linear-gradient(135deg,#fff8e0,var(--gold-light)); }

/* ── PRICING INFO BLOCKS ── */
.pricing-info-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  max-width: 1100px;
  margin: 0 auto;
  border: 1px solid rgba(201,168,76,0.18);
  background: rgba(201,168,76,0.06);
  position: relative;
  overflow: hidden;
}
.pricing-info-grid::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}
.pricing-info-card {
  padding: 32px 34px;
  background: rgba(10,15,26,0.7);
  border-right: 1px solid rgba(201,168,76,0.1);
}
.pricing-info-card:last-child { border-right: none; }
.pricing-info-icon { font-size: 26px; margin-bottom: 14px; }
.pricing-info-title {
  font-family: 'Cinzel', serif; font-size: 12px; letter-spacing: 3px;
  text-transform: uppercase; color: var(--gold); margin-bottom: 10px;
}
.pricing-info-text {
  font-size: 15px; color: var(--silver); line-height: 1.75; font-style: italic;
}

/* ── MOBILE PRICING SLIDERS ── */
@media(max-width: 900px) {
  .pricing-grid {
    display: flex !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin: 0;
    scrollbar-width: none;
    cursor: grab;
    grid-template-columns: unset;
    scroll-padding-inline: calc(50vw - 40vw);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
  }
  .pricing-grid::-webkit-scrollbar { display: none; }
  .pricing-grid:active { cursor: grabbing; }
  .plan {
    flex: 0 0 80vw;
    max-width: 360px;
    min-width: 280px;
    scroll-snap-align: center;
  }

  .pricing-info-grid {
    display: flex !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin: 0;
    scrollbar-width: none;
    cursor: grab;
    border: none;
    background: transparent;
    scroll-padding-inline: calc(50vw - 40vw);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
  }
  .pricing-info-grid::before { display: none; }
  .pricing-info-grid::-webkit-scrollbar { display: none; }
  .pricing-info-grid:active { cursor: grabbing; }
  .pricing-info-card {
    flex: 0 0 80vw;
    max-width: 340px;
    min-width: 260px;
    scroll-snap-align: center;
    border: 1px solid rgba(201,168,76,0.18);
    border-right: 1px solid rgba(201,168,76,0.18) !important;
    position: relative;
  }
  .pricing-info-card::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
  }

  .plan-dots, .plan-hint, .info-dots, .info-hint { display: flex; }
}

@media(min-width: 901px) {
  .plan-dots, .plan-hint, .info-dots, .info-hint { display: none; }
}
#support {
  padding:120px 77px; background:var(--dark2);
  display:flex; gap:96px; align-items:center; flex-wrap:wrap;
}
.support-content { flex:1.2; min-width:360px; }
.support-content .sec-header { text-align:left; margin-bottom:34px; }
.support-content .orn { margin:19px 0 0; }
.support-desc { font-size:19px; font-style:italic; color:var(--text); line-height:1.8; margin-bottom:43px; max-width:576px; }
.sup-items { flex:1; min-width:360px; display:flex; flex-direction:column; gap:2px; }
.sup-item { background:var(--dark1); padding:24px 29px; display:flex; align-items:center; gap:22px; transition:all 0.3s; border-left:2px solid transparent; }
.sup-item:hover { border-left-color:var(--gold-dim); background:var(--dark3); padding-left:36px; }
.sup-icon { width:53px;height:53px; background:linear-gradient(135deg,rgba(201,168,76,0.1),rgba(201,168,76,0.03)); border:1px solid rgba(201,168,76,0.15); display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0; transition:all 0.3s; }
.sup-item:hover .sup-icon { background:linear-gradient(135deg,rgba(201,168,76,0.2),rgba(201,168,76,0.08)); border-color:var(--gold-dim); }
.sup-title { font-family:'Cinzel',serif; font-size:16px; font-weight:600; color:var(--gold-light); margin-bottom:5px; }
.sup-text { font-size:16px; color:var(--text); }

/* ── FINAL CTA ── */
#cta-final {
  padding:144px 77px; text-align:center;
  background:linear-gradient(180deg,var(--dark1) 0%,var(--deep) 100%);
  position:relative; overflow:hidden;
}
#cta-final::before {
  content:''; position:absolute; top:-240px; left:50%; transform:translateX(-50%);
  width:720px;height:720px; border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,76,0.06) 0%,transparent 70%);
}
.cta-tagline { font-family:'Cinzel',serif; font-size:13px; letter-spacing:6px; text-transform:uppercase; color:var(--gold-dim); margin-bottom:29px; position:relative; z-index:1; }
.cta-title { font-family:'Cinzel Decorative',serif; font-size:clamp(31px,4vw,62px); color:#fff; margin-bottom:24px; line-height:1.2; position:relative; z-index:1; }
.cta-title .g { background:linear-gradient(135deg,var(--gold-light),var(--gold)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.cta-sub { font-size:19px; font-style:italic; color:var(--text); margin-bottom:58px; position:relative; z-index:1; }
.cta-btns { position:relative; z-index:1; display:flex; justify-content:center; gap:24px; flex-wrap:wrap; }

/* ── FOOTER ── */
footer {
  padding:43px 77px; border-top:1px solid rgba(201,168,76,0.1);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:19px;
}
.footer-logo { font-family:'Cinzel Decorative',serif; font-size:22px; font-weight:700; background:linear-gradient(135deg,var(--gold-light),var(--gold),var(--gold-dim)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
footer p { font-size:14px; color:rgba(138,155,176,0.35); font-style:italic; }

@media(max-width:900px) {
  footer {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 43px 29px;
    gap: 10px;
  }
  .footer-logo { width: 100%; text-align: center; }
}

/* ── REVEAL ── */
.reveal { opacity:0; transform:translateY(34px); transition:opacity 0.7s cubic-bezier(0.16,1,0.3,1),transform 0.7s cubic-bezier(0.16,1,0.3,1); }
.reveal.visible { opacity:1; transform:translateY(0); }
.d1{transition-delay:0.1s;} .d2{transition-delay:0.2s;} .d3{transition-delay:0.3s;}

/* ── LIVE STATS BOARD ── */
#liveboard {
  position: relative; z-index: 1;
  background: var(--dark1);
  border-top: 1px solid rgba(201,168,76,0.18);
  border-bottom: 1px solid rgba(201,168,76,0.18);
  padding: 0 77px;
  overflow: hidden;
}
#liveboard::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(201,168,76,0.03) 0%, transparent 50%, rgba(10,22,40,0.5) 100%);
  pointer-events: none;
}
#liveboard::after {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--gold) 30%, var(--gold-light) 50%, var(--gold) 70%, transparent 100%);
  animation: scanline 4s linear infinite;
}
@keyframes scanline {
  0%   { transform: scaleX(0); opacity: 0; transform-origin: left; }
  50%  { transform: scaleX(1); opacity: 1; transform-origin: left; }
  51%  { transform-origin: right; }
  100% { transform: scaleX(0); opacity: 0; transform-origin: right; }
}
.lb-header {
  display: flex; align-items: center; justify-content: center;
  gap: 12px; padding: 24px 0 0;
  font-family: 'Cinzel', serif; font-size: 12px;
  letter-spacing: 6px; text-transform: uppercase; color: var(--gold-dim);
}
.lb-live-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 10px #4ade80, 0 0 19px rgba(74,222,128,0.4);
  animation: livePulse 1.5s ease-in-out infinite;
}
@keyframes livePulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.4); opacity: 0.6; }
}
.lb-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0;
  padding: 34px 0 43px;
}
.lb-item {
  text-align: center; padding: 29px 24px; position: relative;
  border-right: 1px solid rgba(201,168,76,0.08);
  transition: background 0.3s;
}
.lb-item:last-child { border-right: none; }
.lb-item:hover { background: rgba(201,168,76,0.03); }
.lb-value-wrap {
  display: inline-flex; align-items: baseline; gap: 4px; margin-bottom: 12px;
}
.lb-num {
  font-family: 'Cinzel', serif;
  font-size: clamp(38px, 4vw, 67px);
  font-weight: 900;
  background: linear-gradient(135deg, #fff 0%, var(--gold-light) 40%, var(--gold) 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  line-height: 1; letter-spacing: -1px;
}
.lb-suffix {
  font-family: 'Cinzel', serif; font-size: clamp(17px,2vw,26px); font-weight: 700;
  color: var(--gold); align-self: flex-end; padding-bottom: 5px;
}
.lb-prefix {
  font-family: 'Cinzel', serif; font-size: clamp(17px,2vw,26px); font-weight: 700;
  color: var(--gold); align-self: flex-start; padding-top: 7px;
}
.lb-label {
  font-family: 'Cinzel', serif; font-size: 12px; letter-spacing: 2px;
  text-transform: uppercase; color: var(--text); line-height: 1.5; margin-bottom: 7px;
}
.lb-sub { font-size: 13px; font-style: italic; color: rgba(201,168,76,0.45); line-height: 1.4; }
.lb-item.green .lb-num {
  background: linear-gradient(135deg, #a3f7a3, #4ade80, #22c55e);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}
.lb-item.green .lb-suffix { color: #4ade80; }
.lb-item.green .lb-prefix { color: #4ade80; }

/* ── RESPONSIVE ── */
@media(max-width:1280px){
  nav{padding:0 29px;} .nav-main-row{padding:19px 0;}
  #hero{padding:132px 29px 96px;}
  #liveboard{padding:0 29px;}
  .lb-grid{grid-template-columns:repeat(2,1fr);}
  .lb-item:nth-child(2){border-right:none;}
  .lb-item:nth-child(4){border-right:none;}
  .lb-item:nth-child(5){border-right:none;}
  #pain,#stats,#features,#vs,#usecases,#pricing,#support,#cta-final{padding:72px 29px;}
  /* mobile grid overrides handled by individual slider blocks */
  #support{flex-direction:column;gap:48px;}
  footer{padding:34px 29px;}
  .stat-item{min-width:144px;}
}

/* ── BURGER & MOBILE MENU ── */
.burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 38px; height: 38px;
  background: transparent;
  border: 1px solid rgba(201,168,76,0.2);
  cursor: pointer;
  padding: 0;
  transition: border-color 0.3s;
  flex-shrink: 0;
}
.burger:hover { border-color: rgba(201,168,76,0.5); }
.burger span {
  display: block;
  width: 18px; height: 1.5px;
  background: var(--gold);
  transition: all 0.3s cubic-bezier(0.16,1,0.3,1);
  transform-origin: center;
}
.burger.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.burger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.burger.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

.mobile-menu {
  display: none;
  flex-direction: column;
  align-items: stretch;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height 0.38s cubic-bezier(0.16,1,0.3,1), opacity 0.25s ease;
  border-top: 1px solid rgba(201,168,76,0.08);
}
.mobile-menu.open {
  max-height: 420px;
  opacity: 1;
}
.mobile-nav-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  padding: 12px 20px 0;
  gap: 0;
}
.mobile-nav-list li {
  position: relative;
}
.mobile-nav-list li::after {
  content: '';
  display: block;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,0.12), transparent);
}
.mobile-nav-list li:last-child::after { display: none; }
.mobile-nav-list li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 4px;
  font-family: 'Cinzel', serif;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--silver);
  text-decoration: none;
  transition: color 0.2s, padding-left 0.2s;
  position: relative;
}
.mobile-nav-list li a::before {
  content: '✦';
  font-size: 7px;
  color: var(--gold-dim);
  opacity: 0;
  transition: opacity 0.2s;
  margin-right: 8px;
  flex-shrink: 0;
}
.mobile-nav-list li a::after {
  content: '→';
  font-size: 12px;
  color: var(--gold-dim);
  opacity: 0;
  transition: opacity 0.2s, transform 0.2s;
  transform: translateX(-4px);
}
.mobile-nav-list li a:hover {
  color: var(--gold-light);
  padding-left: 4px;
}
.mobile-nav-list li a:hover::before { opacity: 1; }
.mobile-nav-list li a:hover::after { opacity: 1; transform: translateX(0); }

.mobile-nav-cta {
  margin: 14px 20px 16px !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  padding: 12px 20px !important;
  clip-path: none !important;
  text-align: center;
  display: flex !important;
  justify-content: center;
  background: linear-gradient(135deg, rgba(201,168,76,0.1), rgba(201,168,76,0.03)) !important;
  border-color: rgba(201,168,76,0.3) !important;
  color: var(--gold-light) !important;
}

/* ── MOBILE LANG BAR (always visible, next to burger) ── */
.mobile-lang-bar {
  display: none;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.mobile-lang-bar-btn {
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  padding: 4px;
  border-radius: 2px;
  opacity: 0.5;
  transition: opacity 0.2s, transform 0.2s;
  user-select: none;
}
.mobile-lang-bar-btn:hover { opacity: 0.85; transform: scale(1.15); }
.mobile-lang-bar-btn.active { opacity: 1; transform: scale(1.15); filter: drop-shadow(0 0 4px rgba(201,168,76,0.6)); }

@media(max-width:1280px) {
  .burger { display: flex; }
  .mobile-menu { display: flex; }
  .nav-right { display: none; }
  .mobile-lang-bar { display: flex; }
  /* Лого по центру, язык слева, бургер справа */
  .nav-main-row {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
  }
  .mobile-lang-bar { grid-column: 1; justify-self: start; }
  .nav-logo {
    grid-column: 2;
    text-align: center;
  }
  .burger {
    grid-column: 3;
    justify-self: end;
  }
  nav ul { display: none; }
}
@media(min-width:1281px) {
  .burger { display: none; }
  .mobile-menu { display: none !important; }
  .mobile-lang-bar { display: none; }
  .nav-right { display: flex; }
  .nav-main-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

/* ── END BURGER ── */
#services {
  padding: 120px 77px 0;
  background: linear-gradient(180deg, var(--dark1), var(--dark2));
  position: relative; overflow: hidden;
}
#services::before {
  content: '';
  position: absolute; top: -1px; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-dim), transparent);
}

.big-services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
  max-width: 1320px;
  margin: 0 auto 72px;
}

.svc-big {
  background: var(--dark2);
  padding: 43px 34px;
  position: relative;
  overflow: hidden;
  transition: all 0.35s cubic-bezier(0.16,1,0.3,1);
  cursor: default;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 17px;
}
.svc-big::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  transform: scaleX(0); transition: transform 0.35s;
}
.svc-big:hover { background: var(--dark3); transform: translateY(-5px); }
.svc-big:hover::before { transform: scaleX(1); }

.svc-big.youtube::before { background: linear-gradient(90deg, transparent, #ff4444, transparent); }
.svc-big.instagram::before { background: linear-gradient(90deg, transparent, #e1306c, transparent); }
.svc-big.discord::before { background: linear-gradient(90deg, transparent, #5865f2, transparent); }
.svc-big.telegram::before { background: linear-gradient(90deg, transparent, #2aabee, transparent); }

.svc-logo {
  font-size: 58px;
  line-height: 1;
  filter: drop-shadow(0 0 14px currentColor);
  transition: transform 0.3s;
}
.svc-big:hover .svc-logo { transform: scale(1.1); }

.svc-name {
  font-family: 'Cinzel', serif;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 1px;
}

.svc-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-family: 'Cinzel', serif;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 5px 14px;
  border-radius: 0;
}
.svc-status.blocked {
  background: rgba(224,80,80,0.1);
  border: 1px solid rgba(224,80,80,0.25);
  color: #e05050;
}
.svc-status.partial {
  background: rgba(201,168,76,0.08);
  border: 1px solid rgba(201,168,76,0.2);
  color: var(--gold);
}
.svc-status-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; animation: blink 1.5s infinite; }

.svc-desc {
  font-size: 19px;
  color: var(--text);
  line-height: 1.65;
}

.svc-big.youtube .svc-logo { color: #ff4444; }
.svc-big.instagram .svc-logo { color: #e1306c; }
.svc-big.discord .svc-logo { color: #5865f2; }
.svc-big.telegram .svc-logo { color: #2aabee; }

/* ALL BLOCKED SERVICES GRID */
.blocked-intro {
  max-width: 1032px;
  margin: 0 auto 48px;
  text-align: center;
  font-size: 19px;
  font-style: italic;
  color: var(--silver);
  line-height: 1.7;
}

.all-services-wrap {
  max-width: 1320px;
  margin: 0 auto;
  border: 1px solid rgba(201,168,76,0.1);
  background: rgba(7,9,15,0.6);
  padding: 43px 48px 34px;
  position: relative;
}
.all-services-wrap::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-dim), transparent);
}

.all-services-title {
  font-family: 'Cinzel', serif;
  font-size: 13px;
  letter-spacing: 5px;
  text-transform: uppercase;
  color: var(--gold-dim);
  margin-bottom: 29px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.all-services-title::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, rgba(201,168,76,0.2), transparent);
}

.services-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 29px;
}
.stag {
  font-size: 14px;
  font-family: 'Cinzel', serif;
  color: var(--silver);
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  padding: 6px 14px;
  transition: all 0.2s;
  letter-spacing: 0.5px;
}
.stag:hover {
  background: rgba(201,168,76,0.06);
  border-color: rgba(201,168,76,0.2);
  color: var(--gold-light);
}

.legal-notice {
  margin-top: 24px;
  padding: 19px 24px;
  background: rgba(201,168,76,0.03);
  border: 1px solid rgba(201,168,76,0.08);
  border-left: 4px solid rgba(201,168,76,0.25);
  font-size: 13px;
  color: rgba(138,155,176,0.5);
  line-height: 1.7;
  font-style: italic;
}
.legal-notice strong { color: rgba(201,168,76,0.5); font-weight: normal; }

/* ── MOBILE SLIDERS — shared base ── */
@media(max-width: 900px) {

  /* wrapper clips the fade */
  .slider-fade-wrap {
    position: relative;
    overflow: hidden;
  }

  /* fade mask on the scrollable grid itself */
  .big-services-grid,
  .pain-grid,
  .features-grid {
    -webkit-mask-image: linear-gradient(
      to right,
      transparent 0%,
      black 15%,
      black 85%,
      transparent 100%
    );
    mask-image: linear-gradient(
      to right,
      transparent 0%,
      black 15%,
      black 85%,
      transparent 100%
    );
  }

  /* ── Services ── */
  .big-services-grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin-bottom: 0;
    scrollbar-width: none;
    cursor: grab;
    scroll-padding-inline: calc(50vw - 40vw);
  }
  .big-services-grid::-webkit-scrollbar { display: none; }
  .big-services-grid:active { cursor: grabbing; }

  .svc-big {
    flex: 0 0 80vw;
    max-width: 340px;
    min-width: 260px;
    scroll-snap-align: center;
    border: 1px solid rgba(201,168,76,0.1);
    padding: 36px 28px;
    gap: 14px;
    transition: opacity 0.3s, transform 0.3s;
  }

  .svc-logo { font-size: 52px; }
  .svc-name { font-size: 20px; }
  .svc-desc { font-size: 16px; line-height: 1.7; }

  /* ── Pain ── */
  .pain-grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin: 0;
    scrollbar-width: none;
    cursor: grab;
    scroll-padding-inline: calc(50vw - 40vw);
  }
  .pain-grid::-webkit-scrollbar { display: none; }
  .pain-grid:active { cursor: grabbing; }

  .pain-card {
    flex: 0 0 80vw;
    max-width: 340px;
    min-width: 260px;
    scroll-snap-align: center;
    border: 1px solid rgba(201,168,76,0.1);
    padding: 36px 28px;
  }

  /* ── Features ── */
  .features-grid {
    display: flex !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin: 0;
    scrollbar-width: none;
    cursor: grab;
    grid-template-columns: unset;
    scroll-padding-inline: calc(50vw - 40vw);
  }
  .features-grid::-webkit-scrollbar { display: none; }
  .features-grid:active { cursor: grabbing; }

  .feat-card {
    flex: 0 0 80vw;
    max-width: 340px;
    min-width: 260px;
    scroll-snap-align: center;
  }

  /* ── Dots & hint ── */
  .slider-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 20px 0 10px;
  }
  .slider-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: rgba(201,168,76,0.2);
    border: 1px solid rgba(201,168,76,0.3);
    transition: all 0.3s;
    cursor: pointer;
  }
  .slider-dot.active {
    background: var(--gold);
    border-color: var(--gold-light);
    width: 22px;
    border-radius: 3px;
    box-shadow: 0 0 8px rgba(201,168,76,0.5);
  }
  .slider-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: 'Cinzel', serif;
    font-size: 11px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(201,168,76,0.35);
    margin-bottom: 24px;
    animation: hintFade 3s ease 1s forwards;
  }
  .slider-hint-arrow {
    display: inline-block;
    animation: hintSwipe 2s ease-in-out 1s 2;
  }
  @keyframes hintSwipe {
    0%, 100% { transform: translateX(0); opacity: 0.35; }
    50% { transform: translateX(6px); opacity: 1; }
  }
  @keyframes hintFade {
    0% { opacity: 1; }
    80% { opacity: 1; }
    100% { opacity: 0; pointer-events: none; }
  }

  .pain-dots, .pain-hint { display: flex; }
  .feat-dots, .feat-hint { display: flex; }
}

@media(min-width: 901px) {
  .slider-dots, .slider-hint { display: none; }
  .pain-dots, .pain-hint { display: none; }
  .feat-dots, .feat-hint { display: none; }
}


/* ── TOP DISCLAIMER BANNER (inside nav as second row) ── */
nav {
  /* flex-direction: column already set above */
}
#disclaimer-banner {
  width: 100%;
  flex-basis: 100%;
  border-top: 1px solid rgba(201,168,76,0.08);
  padding: 10px 0 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.disc-icon {
  font-size: 15.6px;
  color: var(--gold-dim);
  flex-shrink: 0;
  opacity: 0.7;
}
.disc-text {
  font-family: 'Libre Baskerville', serif;
  font-size: 14.4px;
  font-style: italic;
  letter-spacing: 0.3px;
  color: rgba(138,155,176,0.4);
  line-height: 1.5;
  text-align: center;
}
.disc-text strong {
  color: rgba(201,168,76,0.5);
  font-weight: normal;
  font-style: normal;
}
@media(max-width:1080px){
  #disclaimer-banner { padding: 7px 0 2px; }
  .disc-text { font-size: 13.2px; }
}
@media(max-width:600px){
  /* На маленьких экранах дискламер прячем — он делает nav очень высокой */
  #disclaimer-banner { display: none; }
  /* Уменьшаем отступ hero соответственно */
  #hero { padding-top: 100px !important; }
}
@media(min-width:601px) and (max-width:1080px){
  /* На планшетах дискламер в одну строку — увеличиваем отступ hero */
  #hero { padding-top: 175px !important; }
}


/* ══════════════════════════════════════
   POPUP MODAL — ONBOARDING FORM
══════════════════════════════════════ */
#modal-overlay {
  position: fixed; inset: 0; z-index: 9000;
  background: rgba(4,6,12,0.92);
  backdrop-filter: blur(14px);
  display: none; align-items: center; justify-content: center;
  padding: 24px;
  animation: overlayIn 0.3s ease;
}
#modal-overlay.active { display: flex; }
@keyframes overlayIn {
  from { opacity:0; } to { opacity:1; }
}

#modal-box {
  background: linear-gradient(160deg, #0d1521, #111926);
  border: 1px solid rgba(201,168,76,0.25);
  max-width: 720px; width: 100%;
  position: relative;
  overflow: hidden;
  animation: modalIn 0.4s cubic-bezier(0.16,1,0.3,1);
  max-height: 90vh;
  overflow-y: auto;
}
@keyframes modalIn {
  from { opacity:0; transform: translateY(48px) scale(0.97); }
  to   { opacity:1; transform: translateY(0) scale(1); }
}
#modal-box::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold), var(--gold-light), var(--gold), transparent);
}
#modal-box::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,0.2), transparent);
}

.modal-inner { padding: 58px 58px 48px; }

/* Progress bar */
.modal-progress {
  display: flex; gap: 7px; margin-bottom: 43px;
}
.prog-step {
  flex: 1; height: 4px;
  background: rgba(255,255,255,0.06);
  transition: background 0.4s;
  position: relative;
}
.prog-step.done { background: var(--gold-dim); }
.prog-step.active { background: var(--gold-light); box-shadow: 0 0 10px rgba(240,208,128,0.5); }

/* Plan badge at top */
.modal-plan-badge {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: 'Cinzel', serif; font-size: 12px; letter-spacing: 4px;
  text-transform: uppercase; color: var(--gold);
  border: 1px solid rgba(201,168,76,0.2);
  padding: 6px 17px; margin-bottom: 29px;
  background: rgba(201,168,76,0.05);
}
.modal-plan-dot { width:6px;height:6px;border-radius:50%;background:var(--gold);animation:blink 1.5s infinite; }

.modal-step-label {
  font-family: 'Cinzel', serif; font-size: 12px; letter-spacing: 5px;
  text-transform: uppercase; color: var(--gold-dim); margin-bottom: 12px;
}
.modal-question {
  font-family: 'Cinzel', serif; font-size: clamp(22px,3vw,31px);
  font-weight: 700; color: #fff; line-height: 1.3; margin-bottom: 34px;
}

/* Inputs */
.modal-input-wrap { position: relative; margin-bottom: 24px; }
.modal-input {
  width: 100%; background: rgba(255,255,255,0.03);
  border: 1px solid rgba(201,168,76,0.18); color: #fff;
  font-family: 'Libre Baskerville', serif; font-size: 18px;
  padding: 17px 22px; outline: none; transition: all 0.3s;
}
.modal-input:focus {
  border-color: rgba(201,168,76,0.5);
  background: rgba(201,168,76,0.04);
  box-shadow: 0 0 0 4px rgba(201,168,76,0.06);
}
.modal-input::placeholder { color: rgba(138,155,176,0.4); }

/* Autocomplete dropdown */
.autocomplete-list {
  position: absolute; top: 100%; left: 0; right: 0; z-index: 100;
  background: #0d1521; border: 1px solid rgba(201,168,76,0.2);
  border-top: none; max-height: 240px; overflow-y: auto;
  display: none;
}
.autocomplete-list.show { display: block; }
.autocomplete-item {
  padding: 13px 22px; font-size: 17px; color: var(--silver);
  cursor: pointer; transition: all 0.15s;
  font-family: 'Libre Baskerville', serif;
  border-bottom: 1px solid rgba(255,255,255,0.04);
}
.autocomplete-item:hover, .autocomplete-item.highlighted {
  background: rgba(201,168,76,0.07); color: var(--gold-light);
}

/* Speed options */
.speed-options {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 10px;
}
.speed-opt {
  border: 1px solid rgba(201,168,76,0.15);
  background: rgba(255,255,255,0.02);
  color: var(--silver); font-family: 'Cinzel', serif;
  font-size: 14px; letter-spacing: 1px; padding: 14px 10px;
  cursor: pointer; text-align: center; transition: all 0.2s;
}
.speed-opt:hover { border-color: rgba(201,168,76,0.4); color: var(--gold-light); background: rgba(201,168,76,0.05); }
.speed-opt.selected { border-color: var(--gold); background: rgba(201,168,76,0.1); color: var(--gold-light); box-shadow: 0 0 14px rgba(201,168,76,0.1); }

/* Usage checkboxes */
.usage-grid {
  display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; margin-bottom: 10px;
}
.usage-opt {
  border: 1px solid rgba(201,168,76,0.12); background: rgba(255,255,255,0.02);
  color: var(--silver); font-size: 19px; padding: 14px 17px;
  cursor: pointer; display: flex; align-items: center; gap: 12px;
  transition: all 0.2s; user-select: none;
}
.usage-opt:hover { border-color: rgba(201,168,76,0.3); background: rgba(201,168,76,0.04); }
.usage-opt.selected { border-color: var(--gold); background: rgba(201,168,76,0.08); color: var(--gold-light); }
.usage-opt .ucheck {
  width: 19px; height: 19px; border: 1px solid rgba(201,168,76,0.3);
  flex-shrink: 0; display: flex; align-items: center; justify-content: center;
  font-size: 12px; color: var(--gold); transition: all 0.2s;
}
.usage-opt.selected .ucheck { background: rgba(201,168,76,0.2); border-color: var(--gold); }
.usage-opt .uicon { font-size: 19px; flex-shrink: 0; }

/* Devices */
.devices-wrap { display: flex; align-items: center; gap: 24px; margin-bottom: 10px; }
.device-counter {
  display: flex; align-items: center; gap: 17px;
  border: 1px solid rgba(201,168,76,0.2); padding: 14px 24px;
}
.dev-btn {
  width: 38px; height: 38px; background: rgba(201,168,76,0.08);
  border: 1px solid rgba(201,168,76,0.2); color: var(--gold);
  font-size: 22px; cursor: pointer; display: flex; align-items: center; justify-content: center;
  transition: all 0.2s; font-family: monospace;
}
.dev-btn:hover { background: rgba(201,168,76,0.15); }
.dev-num { font-family: 'Cinzel', serif; font-size: 29px; color: #fff; min-width: 29px; text-align: center; }
.dev-label { font-size: 19px; color: var(--text); font-style: italic; }

/* Name/contact step */
.modal-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }

/* Navigation buttons */
.modal-nav {
  display: flex; gap: 14px; margin-top: 38px;
}
.modal-btn-next {
  flex: 1; font-family: 'Cinzel', serif; font-size: 14px; letter-spacing: 4px;
  text-transform: uppercase; padding: 19px;
  background: linear-gradient(135deg, var(--gold-light), var(--gold));
  color: var(--deep); font-weight: 700; border: none; cursor: pointer;
  transition: all 0.3s; clip-path: polygon(12px 0%,100% 0%,calc(100% - 12px) 100%,0% 100%);
}
.modal-btn-next:hover { box-shadow: 0 7px 36px rgba(201,168,76,0.4); transform: translateY(-2px); }
.modal-btn-next:disabled { opacity: 0.4; cursor: not-allowed; transform: none; box-shadow: none; }
.modal-btn-back {
  font-family: 'Cinzel', serif; font-size: 13px; letter-spacing: 2px;
  text-transform: uppercase; padding: 19px 29px;
  background: transparent; color: var(--gold-dim);
  border: 1px solid rgba(201,168,76,0.15); cursor: pointer; transition: all 0.2s;
}
.modal-btn-back:hover { border-color: rgba(201,168,76,0.3); color: var(--gold); }

/* Step container */
.modal-step { display: none; }
.modal-step.active { display: block; animation: stepIn 0.35s cubic-bezier(0.16,1,0.3,1); }
@keyframes stepIn {
  from { opacity:0; transform: translateX(24px); }
  to   { opacity:1; transform: translateX(0); }
}

/* Success screen */
#modal-success {
  display: none; padding: 72px 58px; text-align: center;
}
#modal-success.show { display: block; animation: stepIn 0.4s ease; }
.success-icon { font-size: 67px; margin-bottom: 29px; display: block; }
.success-title {
  font-family: 'Cinzel Decorative', serif; font-size: 29px; color: #fff;
  margin-bottom: 17px;
}
.success-title .g { background: linear-gradient(135deg,var(--gold-light),var(--gold)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.success-sub { font-size: 18px; font-style: italic; color: var(--text); line-height: 1.7; margin-bottom: 38px; }
.success-tg {
  display: inline-flex; align-items: center; gap: 12px;
  background: rgba(42,171,238,0.1); border: 1px solid rgba(42,171,238,0.3);
  color: #2aabee; font-family: 'Cinzel', serif; font-size: 14px;
  letter-spacing: 2px; text-transform: uppercase; padding: 17px 34px;
  text-decoration: none; transition: all 0.3s; cursor: pointer;
}
.success-tg:hover { background: rgba(42,171,238,0.18); }

/* Close button */
.modal-close {
  position: absolute; top: 19px; right: 24px;
  width: 38px; height: 38px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  color: rgba(201,168,76,0.4); font-size: 24px;
  transition: color 0.2s; background: none; border: none;
  font-family: monospace;
}
.modal-close:hover { color: var(--gold); }

/* Ornament in modal */
.modal-orn {
  height: 1px; margin: 29px 0;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,0.2), transparent);
}

@media(max-width:720px){
  .modal-inner { padding: 38px 29px 34px; }
  .speed-options { grid-template-columns: repeat(2,1fr); }
  .usage-grid { grid-template-columns: 1fr; }
  .modal-row { grid-template-columns: 1fr; }
}

/* ── Server type cards ── */
.server-opts {
  display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 10px;
}
.server-opt {
  border: 1px solid rgba(201,168,76,0.15);
  background: rgba(255,255,255,0.02);
  padding: 24px 22px; cursor: pointer;
  transition: all 0.25s; position: relative; overflow: hidden;
}
.server-opt::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--gold), var(--gold-light));
  transform: scaleX(0); transition: transform 0.3s; transform-origin: left;
}
.server-opt:hover::before, .server-opt.selected::before { transform: scaleX(1); }
.server-opt:hover { border-color: rgba(201,168,76,0.35); background: rgba(201,168,76,0.04); }
.server-opt.selected { border-color: var(--gold); background: rgba(201,168,76,0.08); }
.server-opt .sopt-icon { font-size: 34px; margin-bottom: 12px; display: block; }
.server-opt .sopt-title {
  font-family: 'Cinzel', serif; font-size: 19px; font-weight: 700;
  color: #fff; margin-bottom: 7px; letter-spacing: 0.5px;
}
.server-opt.selected .sopt-title { color: var(--gold-light); }
.server-opt .sopt-desc { font-size: 14px; color: var(--text); line-height: 1.55; }
.server-opt .sopt-badge {
  display: inline-block; margin-top: 10px;
  font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 2px;
  text-transform: uppercase; padding: 4px 10px;
  background: rgba(201,168,76,0.08); border: 1px solid rgba(201,168,76,0.2);
  color: var(--gold-dim);
}
.server-opt.selected .sopt-badge { background: rgba(201,168,76,0.15); color: var(--gold); }

/* ── Device selector ── */
.device-selector {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 14px;
}
.dev-opt {
  border: 1px solid rgba(201,168,76,0.12); background: rgba(255,255,255,0.02);
  padding: 17px 12px; cursor: pointer; text-align: center;
  transition: all 0.2s; position: relative;
}
.dev-opt:hover { border-color: rgba(201,168,76,0.3); background: rgba(201,168,76,0.04); }
.dev-opt.selected { border-color: var(--gold); background: rgba(201,168,76,0.08); }
.dev-opt .dev-count {
  font-family: 'Cinzel', serif; font-size: 26px; font-weight: 900;
  color: #fff; display: block; margin-bottom: 5px;
  transition: color 0.2s;
}
.dev-opt.selected .dev-count { color: var(--gold-light); }
.dev-opt .dev-label { font-size: 13px; color: var(--text); letter-spacing: 0.5px; }
.dev-opt.custom-dev { grid-column: span 3; display: flex; align-items: center; gap: 14px; padding: 14px 19px; }
.dev-opt.custom-dev .dev-label { flex: 1; text-align: left; }
.dev-custom-input {
  width: 96px; background: rgba(255,255,255,0.05);
  border: 1px solid rgba(201,168,76,0.2); color: #fff;
  font-family: 'Cinzel', serif; font-size: 22px; text-align: center;
  padding: 7px; outline: none;
}
.dev-custom-input:focus { border-color: rgba(201,168,76,0.5); }

@media(max-width:720px){
  .server-opts { grid-template-columns: 1fr; }
  .device-selector { grid-template-columns: repeat(2,1fr); }
  .dev-opt.custom-dev { grid-column: span 2; }
}

/* ── ULTRA PREMIUM plan ── */
.plan.ultra {
  background: linear-gradient(160deg, #0c0a1a, #12102a, #0f1520);
  border-color: rgba(160,100,255,0.4);
  position: relative;
}
.plan.ultra::before {
  background: linear-gradient(90deg, transparent, #a064ff, #c9a84c, #a064ff, transparent);
  opacity: 1;
}
.plan.ultra::after {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at 50% 0%, rgba(160,100,255,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.plan.ultra:hover {
  border-color: rgba(160,100,255,0.7);
  box-shadow: 0 24px 72px rgba(0,0,0,0.6), 0 0 60px rgba(160,100,255,0.12);
}
.plan.ultra .plan-name { 
  background: linear-gradient(135deg, #c9a84c, #a064ff, #f0d080);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
}
.plan.ultra .plan-badge {
  background: linear-gradient(135deg, #a064ff, #7040cc);
  color: #fff;
}
.plan.ultra .plan-sep {
  background: linear-gradient(90deg, transparent, rgba(160,100,255,0.3), rgba(201,168,76,0.2), transparent);
}
.plan.ultra .fb { color: #a064ff; }
.plan.ultra .price-main { color: #fff; }
.plan.ultra .price-main sup { color: #a064ff; }
.cta-ultra {
  background: linear-gradient(135deg, #a064ff, #7040cc, #a064ff);
  background-size: 200% 100%;
  color: #fff;
  font-weight: 700;
  box-shadow: 0 5px 30px rgba(160,100,255,0.35);
  animation: ultraShimmer 3s ease infinite;
}
.cta-ultra:hover {
  box-shadow: 0 8px 50px rgba(160,100,255,0.55);
  transform: translateY(-2px);
  background-position: right center;
}
@keyframes ultraShimmer {
  0%,100% { background-position: left center; }
  50% { background-position: right center; }
}
.ultra-star {
  display: inline-block;
  color: #a064ff;
  margin-right: 2px;
  font-size: 11px;
}


.plan-badge-standard {
  background: linear-gradient(135deg, #8a9bb0, #c0cdd8, #8a9bb0) !important;
  color: #0d1521 !important;
}

/* ══════════════════════════════════════
   TECH STACK BLOCK
══════════════════════════════════════ */
#tech {
  padding: 120px 77px;
  background: linear-gradient(180deg, var(--dark2), var(--dark1));
  position: relative;
  overflow: hidden;
}
#tech::before {
  content: '';
  position: absolute; top: -1px; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-dim), transparent);
}
.tech-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  max-width: 1320px;
  margin: 0 auto 67px;
}
.tech-card {
  background: rgba(10,15,26,0.6);
  border: 1px solid rgba(201,168,76,0.08);
  padding: 38px 34px;
  position: relative;
  transition: all 0.3s;
  overflow: hidden;
}
.tech-card::after {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold-dim), transparent);
  transform: scaleX(0); transition: transform 0.4s;
  transform-origin: left;
}
.tech-card:hover { background: rgba(201,168,76,0.03); border-color: rgba(201,168,76,0.2); }
.tech-card:hover::after { transform: scaleX(1); }
.tech-card-icon {
  width: 52px; height: 52px;
  background: linear-gradient(135deg, rgba(201,168,76,0.1), rgba(201,168,76,0.03));
  border: 1px solid rgba(201,168,76,0.15);
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; margin-bottom: 20px;
}
.tech-card-label {
  font-family: 'Cinzel', serif;
  font-size: 10px; letter-spacing: 3px; text-transform: uppercase;
  color: var(--gold-dim); margin-bottom: 8px;
}
.tech-card-name {
  font-family: 'Cinzel', serif;
  font-size: 18px; font-weight: 700;
  color: var(--gold-light); margin-bottom: 12px; letter-spacing: 0.5px;
}
.tech-card-desc {
  font-size: 15px; color: var(--text); line-height: 1.75;
}
.tech-card-tags {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px;
}
.tech-tag {
  font-family: 'Cinzel', serif;
  font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase;
  padding: 4px 10px;
  border: 1px solid rgba(201,168,76,0.15);
  color: var(--gold-dim);
  background: rgba(201,168,76,0.04);
}
.tech-tag.green {
  border-color: rgba(80,200,120,0.25);
  color: rgba(80,200,120,0.7);
  background: rgba(80,200,120,0.04);
}
.tech-tag.blue {
  border-color: rgba(80,140,255,0.25);
  color: rgba(80,160,255,0.7);
  background: rgba(80,140,255,0.04);
}
.tech-tag.purple {
  border-color: rgba(160,100,255,0.25);
  color: rgba(160,100,255,0.7);
  background: rgba(160,100,255,0.04);
}
/* Infra row */
.tech-infra {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
  max-width: 1320px;
  margin: 0 auto;
  border: 1px solid rgba(201,168,76,0.1);
}
.tech-infra-item {
  padding: 28px 24px;
  background: rgba(10,15,26,0.5);
  text-align: center;
  border-right: 1px solid rgba(201,168,76,0.07);
  transition: background 0.3s;
}
.tech-infra-item:last-child { border-right: none; }
.tech-infra-item:hover { background: rgba(201,168,76,0.03); }
.tech-infra-num {
  font-family: 'Cinzel', serif;
  font-size: 32px; font-weight: 900;
  color: var(--gold-light); line-height: 1;
  margin-bottom: 6px;
}
.tech-infra-label {
  font-size: 13px; color: var(--text);
  font-style: italic;
}
@media(max-width:1080px) {
  #tech { padding: 72px 29px; }
  .tech-grid { grid-template-columns: repeat(2, 1fr); }
  .tech-infra { grid-template-columns: repeat(2, 1fr); }
}
@media(max-width:600px) {
  .tech-grid { grid-template-columns: 1fr; }
  .tech-infra { grid-template-columns: repeat(2, 1fr); }
}

/* ── MOBILE TECH SLIDER ── */
@media(max-width: 900px) {
  .tech-grid {
    display: flex !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin: 0 0 43px;
    scrollbar-width: none;
    cursor: grab;
    grid-template-columns: unset;
    scroll-padding-inline: calc(50vw - 40vw);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
  }
  .tech-grid::-webkit-scrollbar { display: none; }
  .tech-grid:active { cursor: grabbing; }
  .tech-card {
    flex: 0 0 80vw;
    max-width: 340px;
    min-width: 260px;
    scroll-snap-align: center;
  }
  .tech-dots, .tech-hint { display: flex; }
}
@media(min-width: 901px) {
  .tech-dots, .tech-hint { display: none; }
}

/* ── MOBILE USECASES SLIDER ── */
@media(max-width: 900px) {
  .cases-grid {
    display: flex !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 14px;
    padding: 0 0 8px;
    padding-left: calc(50vw - 40vw);
    padding-right: calc(50vw - 40vw);
    margin: 0;
    scrollbar-width: none;
    cursor: grab;
    grid-template-columns: unset;
    scroll-padding-inline: calc(50vw - 40vw);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, black 15%, black 85%, transparent 100%);
  }
  .cases-grid::-webkit-scrollbar { display: none; }
  .cases-grid:active { cursor: grabbing; }
  .case-card {
    flex: 0 0 80vw;
    max-width: 360px;
    min-width: 280px;
    scroll-snap-align: center;
  }
  .cases-dots, .cases-hint { display: flex; }
}
@media(min-width: 901px) {
  .cases-dots, .cases-hint { display: none; }
}


/* ══ CALCULATOR RESULT SCREEN ══ */
#modal-calc {
  display: none;
  padding: 10px 0;
  animation: stepIn 0.4s ease;
}
#modal-calc.show { display: block; }

.calc-header {
  text-align: center;
  margin-bottom: 28px;
}
.calc-header-label {
  font-family: 'Cinzel', serif;
  font-size: 11px; letter-spacing: 4px; text-transform: uppercase;
  color: var(--gold-dim); margin-bottom: 10px;
}
.calc-header-title {
  font-family: 'Cinzel Decorative', serif;
  font-size: 22px; color: #fff; line-height: 1.3;
}
.calc-header-title span { color: var(--gold-light); }

/* Recommended plan card */
.calc-plan-card {
  border: 1px solid rgba(201,168,76,0.3);
  background: linear-gradient(160deg, rgba(201,168,76,0.06), rgba(10,15,26,0.8));
  padding: 28px 32px;
  position: relative;
  margin-bottom: 20px;
  overflow: hidden;
}
.calc-plan-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}
.calc-plan-card.ultra {
  border-color: rgba(160,100,255,0.4);
  background: linear-gradient(160deg, rgba(160,100,255,0.07), rgba(10,15,26,0.8));
}
.calc-plan-card.ultra::before {
  background: linear-gradient(90deg, transparent, #a064ff, var(--gold), #a064ff, transparent);
}

.calc-plan-badge {
  font-family: 'Cinzel', serif;
  font-size: 10px; letter-spacing: 3px; text-transform: uppercase;
  color: var(--gold-dim); margin-bottom: 8px;
}
.calc-plan-name {
  font-family: 'Cinzel Decorative', serif;
  font-size: 26px; font-weight: 700;
  color: var(--gold-light); margin-bottom: 4px;
}
.calc-plan-card.ultra .calc-plan-name {
  background: linear-gradient(135deg, #c9a84c, #a064ff, #f0d080);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
}
.calc-price-row {
  display: flex; align-items: baseline; gap: 10px; margin: 14px 0;
}
.calc-price-main {
  font-family: 'Cinzel', serif;
  font-size: 52px; font-weight: 900; color: #fff; line-height: 1;
}
.calc-price-main sup { font-size: 20px; color: var(--gold); vertical-align: top; margin-top: 12px; display: inline-block; }
.calc-price-note {
  font-size: 14px; color: var(--text); font-style: italic;
}
.calc-estimate-note {
  font-size: 12px;
  font-family: 'Cinzel', serif;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(201,168,76,0.4);
  margin-bottom: 16px;
}

/* Reasons list */
.calc-reasons {
  list-style: none;
  margin: 16px 0 0;
  display: flex; flex-direction: column; gap: 8px;
}
.calc-reasons li {
  font-size: 14px; color: var(--silver);
  display: flex; align-items: flex-start; gap: 10px; line-height: 1.6;
}
.calc-reasons li::before {
  content: '◆';
  color: var(--gold-dim); font-size: 10px;
  margin-top: 4px; flex-shrink: 0;
}

/* Score bar */
.calc-factors {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
  margin-bottom: 20px;
}
.calc-factor {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(201,168,76,0.08);
  padding: 12px 16px;
}
.calc-factor-label {
  font-size: 11px; color: var(--text); margin-bottom: 6px; font-style: italic;
}
.calc-factor-val {
  font-family: 'Cinzel', serif;
  font-size: 13px; font-weight: 700; color: var(--gold-light);
}

/* Disclaimer */
.calc-disclaimer {
  font-size: 12px; font-style: italic;
  color: rgba(138,155,176,0.4);
  text-align: center; line-height: 1.7; margin: 16px 0 24px;
  border-top: 1px solid rgba(201,168,76,0.07);
  padding-top: 16px;
}

/* CTA buttons */
.calc-btns {
  display: flex; flex-direction: column; gap: 10px;
}
.calc-btn-primary {
  width: 100%;
  font-family: 'Cinzel', serif;
  font-size: 12px; letter-spacing: 3px; text-transform: uppercase;
  padding: 18px;
  background: linear-gradient(135deg, var(--gold-light), var(--gold));
  color: var(--deep); font-weight: 700;
  border: none; cursor: pointer;
  transition: all 0.3s;
  text-decoration: none; display: block; text-align: center;
}
.calc-btn-primary:hover { box-shadow: 0 6px 30px rgba(201,168,76,0.4); transform: translateY(-2px); }
.calc-btn-primary.ultra-btn {
  background: linear-gradient(135deg, #a064ff, #7040cc);
  color: #fff;
}
.calc-btn-primary.ultra-btn:hover { box-shadow: 0 6px 30px rgba(160,100,255,0.4); }
.calc-btn-secondary {
  width: 100%;
  font-family: 'Cinzel', serif;
  font-size: 11px; letter-spacing: 2px; text-transform: uppercase;
  padding: 14px;
  background: transparent;
  border: 1px solid rgba(42,171,238,0.3);
  color: rgba(42,171,238,0.8);
  cursor: pointer; transition: all 0.3s;
  text-decoration: none; display: block; text-align: center;
}
.calc-btn-secondary:hover { background: rgba(42,171,238,0.08); border-color: rgba(42,171,238,0.6); }
.calc-btn-back-link {
  font-size: 12px; color: rgba(138,155,176,0.4);
  text-align: center; cursor: pointer;
  transition: color 0.2s; padding: 4px;
}
.calc-btn-back-link:hover { color: var(--gold-dim); }

/* ══ FLOATING LANGUAGE SWITCHER ══ */
/* ── LANG SWITCHER IN NAV ── */
.nav-lang {
  position: relative;
  flex-shrink: 0;
}
#lang-trigger {
  width: 46px; height: 46px;
  background: rgba(10,15,26,0.6);
  border: 1px solid rgba(201,168,76,0.35);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  transition: all 0.25s;
  user-select: none;
}
#lang-trigger:hover {
  border-color: var(--gold);
  background: rgba(201,168,76,0.08);
}
#lang-trigger .lang-flag { font-size: 22px; line-height: 1; }
#lang-dropdown {
  position: absolute;
  top: calc(100% + 12px); right: 0;
  background: rgba(8,12,22,0.97);
  border: 1px solid rgba(201,168,76,0.2);
  backdrop-filter: blur(16px);
  box-shadow: 0 12px 48px rgba(0,0,0,0.6);
  min-width: 170px;
  max-height: 0; opacity: 0; pointer-events: none;
  transform: translateY(-8px);
  transition: max-height 0.3s ease, opacity 0.25s ease, transform 0.25s ease;
  overflow: hidden;
}
#lang-dropdown.open {
  max-height: 300px; opacity: 1;
  pointer-events: all; transform: translateY(0);
}
.lang-option {
  display: flex; align-items: center; gap: 12px;
  padding: 14px 20px; cursor: pointer;
  font-family: 'Cinzel', serif;
  font-size: 12px; letter-spacing: 2px; text-transform: uppercase;
  color: rgba(138,155,176,0.7);
  transition: all 0.18s;
  border-bottom: 1px solid rgba(201,168,76,0.06);
}
.lang-option:last-child { border-bottom: none; }
.lang-option:hover { background: rgba(201,168,76,0.07); color: var(--gold-light); }
.lang-option.active { color: var(--gold-light); background: rgba(201,168,76,0.05); }
.lang-option.active::after { content: '✓'; margin-left: auto; color: var(--gold); font-size: 12px; }
.lang-option-flag { font-size: 20px; line-height: 1; }
/* Mobile lang in menu */
.mobile-lang {
  display: none;
  margin: 0 24px 24px;
}
.mobile-lang-row {
  display: flex; gap: 10px; flex-wrap: wrap;
}
.mobile-lang-btn {
  display: flex; align-items: center; gap: 8px;
  padding: 10px 16px;
  background: rgba(10,15,26,0.6);
  border: 1px solid rgba(201,168,76,0.2);
  cursor: pointer;
  font-family: 'Cinzel', serif; font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase;
  color: rgba(138,155,176,0.7);
  transition: all 0.18s;
}
.mobile-lang-btn:hover, .mobile-lang-btn.active { border-color: var(--gold-dim); color: var(--gold-light); background: rgba(201,168,76,0.08); }
@media(max-width:1080px) {
  .nav-lang { display: none; }
  .mobile-lang { display: block; }
}