/* FireNodes Landing Page V6 - multi page version.
   Home page has NO plan cards. Plan cards are on separate URLs only.
*/

:root {
  --bg: #05070d;
  --panel: rgba(8, 10, 18, 0.78);
  --line: rgba(255, 255, 255, 0.12);
  --line-orange: rgba(255, 100, 30, 0.42);
  --line-purple: rgba(177, 63, 255, 0.42);
  --text: #f6f5ff;
  --muted: #aeb0c2;
  --muted2: #73768d;
  --orange: #ff4b16;
  --orange2: #ff9a22;
  --pink: #ff3e8f;
  --purple: #8d35ff;
  --purple2: #c748ff;
  --green: #22ff91;
  --blue: #5aa4ff;
  --radius: 24px;
  --shadow: 0 30px 100px rgba(0,0,0,.55);
  --max: 1240px;
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-height: 100vh;
  font-family: var(--font);
  color: var(--text);
  background:
    radial-gradient(circle at 17% 20%, rgba(255, 70, 12, .18), transparent 26%),
    radial-gradient(circle at 86% 24%, rgba(142, 53, 255, .20), transparent 30%),
    linear-gradient(180deg, #03050a 0%, #060814 44%, #03050a 100%);
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }

svg { width: 1em; height: 1em; display: block; }

.page-noise {
  position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .04;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.8) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 18px 18px, 70px 70px, 70px 70px;
}
.ambient {
  position: fixed; width: 520px; height: 520px; border-radius: 999px; filter: blur(90px);
  opacity: .26; pointer-events: none; z-index: 0; animation: drift 9s ease-in-out infinite alternate;
}
.ambient-orange { left: -220px; top: 160px; background: var(--orange); }
.ambient-purple { right: -220px; top: 240px; background: var(--purple); animation-delay: -4s; }
@keyframes drift { to { transform: translate3d(30px, -18px, 0) scale(1.05); } }

.topbar {
  position: sticky; top: 0; z-index: 80; border-bottom: 1px solid rgba(255,255,255,.08);
  background: rgba(3, 5, 10, .72); backdrop-filter: blur(18px);
}
.nav-shell {
  width: min(var(--max), calc(100% - 36px)); height: 76px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
}
.brand { display: inline-flex; align-items: center; min-width: max-content; }
.brand img { width: 168px; height: 58px; object-fit: contain; filter: drop-shadow(0 0 12px rgba(255, 72, 18, .35)); }
.fallback-logo { display: none; width: 46px; height: 46px; place-items: center; border-radius: 16px; background: linear-gradient(145deg, var(--orange), var(--pink)); box-shadow: 0 0 28px rgba(255,72,18,.45); }
.nav-menu { display: flex; align-items: center; gap: 18px; }
.nav-item { position: relative; }
.nav-item > button {
  border: 0; background: transparent; color: #d7d7e4; padding: 12px 8px; display: inline-flex;
  gap: 7px; align-items: center; cursor: pointer; font-weight: 800; transition: .2s ease;
}
.nav-item > button:hover { color: white; text-shadow: 0 0 12px rgba(255,255,255,.18); }
.nav-item > button span { color: var(--muted); transition: .2s ease; }
.nav-item:hover > button span { transform: rotate(180deg); }
.dropdown {
  position: absolute; top: calc(100% + 8px); left: 50%; min-width: 226px; padding: 9px;
  border: 1px solid var(--line); border-radius: 18px; background: rgba(5, 7, 14, .95);
  backdrop-filter: blur(18px); box-shadow: var(--shadow); opacity: 0; visibility: hidden;
  pointer-events: none; transform: translateX(-50%) translateY(10px); transition: .22s ease;
}
.nav-item:hover .dropdown, .nav-item:focus-within .dropdown {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.dropdown a { display: block; color: var(--muted); padding: 11px 12px; border-radius: 12px; font-size: .92rem; font-weight: 750; transition: .2s ease; }
.dropdown a:hover { color: white; background: rgba(255,255,255,.07); }
.minecraft-dropdown a { padding: 14px; margin-bottom: 8px; border: 1px solid rgba(255,255,255,.08); }
.minecraft-dropdown a:last-child { margin-bottom: 0; }
.minecraft-dropdown strong { display: block; color: white; margin-bottom: 4px; }
.minecraft-dropdown small { display: block; color: rgba(255,255,255,.68); }
.mc-budget-link {
  background: radial-gradient(circle at 100% 0%, rgba(79, 150, 255, .25), transparent 38%), rgba(255,255,255,.04);
  box-shadow: 0 0 22px rgba(79,150,255,.12);
}
.mc-performance-link {
  background: radial-gradient(circle at 100% 0%, rgba(255, 90, 24, .27), transparent 38%), rgba(255,255,255,.04);
  box-shadow: 0 0 22px rgba(255,90,24,.14);
}
.nav-actions { display: flex; align-items: center; gap: 12px; }
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px; border-radius: 12px;
  border: 1px solid transparent; padding: 12px 18px; color: white; font-weight: 900; cursor: pointer; transition: .22s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-icon { width: 18px; height: 18px; display: inline-grid; place-items: center; }
.btn-outline { background: rgba(255,255,255,.035); border-color: var(--line); }
.btn-outline:hover { border-color: rgba(255,255,255,.26); box-shadow: 0 0 26px rgba(255,255,255,.08); }
.btn-register, .btn-game {
  background: linear-gradient(135deg, var(--orange), var(--pink));
  box-shadow: 0 18px 45px rgba(255, 62, 143, .25), 0 0 28px rgba(255, 75, 22, .18);
}
.btn-vps { background: linear-gradient(135deg, #7b1cff, var(--purple2)); box-shadow: 0 18px 45px rgba(141, 53, 255, .26); }
.mobile-toggle { display: none; width: 46px; height: 46px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.04); }
.mobile-toggle span { display: block; width: 18px; height: 2px; border-radius: 99px; background: white; margin: 4px auto; }

main, .footer, .copyright { position: relative; z-index: 1; }

.hero {
  position: relative; min-height: 730px; display: grid; place-items: center; overflow: hidden;
  padding: 120px 20px 90px; border-bottom: 1px solid rgba(255,255,255,.06);
}
.hero::before {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(circle at 50% 55%, rgba(255,255,255,.06), transparent 22%), linear-gradient(180deg, rgba(5,7,13,.04), rgba(3,5,10,.65));
  z-index: 0;
}
.hero-side { position: absolute; top: 100px; width: 270px; height: 440px; opacity: .55; filter: drop-shadow(0 0 30px rgba(0,0,0,.7)); }
.hero-side::before, .hero-side::after {
  content: ""; position: absolute; inset: 0; border-radius: 16px;
  background: linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  background-size: 34px 34px, 34px 34px, auto; border: 1px solid rgba(255,255,255,.1);
  transform: perspective(700px) rotateY(26deg) skewY(-7deg);
}
.hero-side::after { inset: 42px 55px -34px 35px; opacity: .72; transform: perspective(700px) rotateY(26deg) skewY(-7deg) translateZ(-50px); }
.hero-side-left { left: -36px; }
.hero-side-left::before, .hero-side-left::after { box-shadow: inset 0 0 60px rgba(255, 72, 18, .18), 0 0 70px rgba(255,72,18,.18); }
.hero-side-right { right: -36px; }
.hero-side-right::before, .hero-side-right::after { transform: perspective(700px) rotateY(-26deg) skewY(7deg); box-shadow: inset 0 0 60px rgba(141, 53, 255, .18), 0 0 70px rgba(141,53,255,.18); }
.arc { position: absolute; width: 760px; height: 330px; border-radius: 50%; bottom: 78px; opacity: .75; pointer-events: none; }
.arc-orange { left: -380px; border-top: 3px solid var(--orange2); filter: drop-shadow(0 0 18px var(--orange)); transform: rotate(-12deg); }
.arc-purple { right: -380px; border-top: 3px solid var(--purple2); filter: drop-shadow(0 0 20px var(--purple)); transform: rotate(12deg); }

.hero-content { position: relative; z-index: 2; text-align: center; max-width: 980px; }
.partner-pill {
  width: max-content; max-width: 100%; margin: 0 auto 42px; color: #e6d9ff;
  border: 1px solid rgba(198, 72, 255, .45); border-left-color: rgba(255, 99, 22, .58);
  background: rgba(255,255,255,.035); border-radius: 999px; padding: 12px 22px; text-transform: uppercase;
  font-weight: 900; letter-spacing: .04em; box-shadow: 0 0 30px rgba(141,53,255,.14); display: inline-flex; align-items: center; gap: 9px;
}
.partner-pill span { color: var(--orange); width: 20px; height: 20px; display: inline-grid; place-items: center; }
.hero h1 {
  margin: 0; text-transform: uppercase; font-weight: 950; line-height: .95; letter-spacing: -.055em;
  font-size: clamp(3rem, 7.1vw, 6.4rem); text-shadow: 0 0 38px rgba(255,255,255,.14);
}
.hero h1 span { display: block; background: linear-gradient(180deg, #fff, #dcd5ff); color: transparent; -webkit-background-clip: text; background-clip: text; }
.hero h1 em {
  display: block; font-style: normal; background: linear-gradient(90deg, var(--orange2), var(--pink), var(--purple2));
  color: transparent; -webkit-background-clip: text; background-clip: text; filter: drop-shadow(0 0 22px rgba(255,62,143,.23));
}
.hero p { max-width: 720px; margin: 28px auto 38px; color: #c4c5d1; font-size: 1.12rem; line-height: 1.7; }
.hero-actions { display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; }
.btn-hero { min-width: 230px; height: 60px; border-radius: 13px; font-size: 1.05rem; text-transform: uppercase; }
.btn-hero span { width: 24px; height: 24px; }

.section { width: min(var(--max), calc(100% - 36px)); margin: 0 auto; padding: 84px 0; }
.feature-panel {
  margin-top: -28px; border: 1px solid rgba(255,255,255,.1); border-top-color: rgba(255,90,22,.36); border-right-color: rgba(171,65,255,.28);
  border-radius: 32px; background: radial-gradient(circle at 0% 50%, rgba(255, 70, 12, .14), transparent 34%), radial-gradient(circle at 100% 50%, rgba(141, 53, 255, .14), transparent 34%), rgba(5, 7, 14, .74);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.06); padding: 52px 54px;
}
.panel-icon {
  width: 52px; height: 52px; margin: -80px auto 20px; display: grid; place-items: center; border-radius: 999px;
  border: 1px solid rgba(255,77,22,.48); background: rgba(5,7,14,.95); color: var(--orange); box-shadow: 0 0 28px rgba(255,77,22,.25); font-size: 1.4rem;
}
.panel-icon svg { width: 25px; height: 25px; }
.section-head { text-align: center; max-width: 760px; margin: 0 auto 42px; }
.section-head h2 { margin: 0 0 14px; font-size: clamp(2.2rem, 4.4vw, 3.65rem); line-height: 1.05; letter-spacing: -.055em; }
.section-head h2 span { color: transparent; background: linear-gradient(90deg, var(--orange2), var(--pink), var(--purple2)); -webkit-background-clip: text; background-clip: text; }
.section-head p { margin: 0 auto; color: var(--muted); line-height: 1.7; font-size: 1.02rem; }

.feature-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.feature-card { display: grid; grid-template-columns: 90px 1fr; gap: 20px; align-items: center; border-right: 1px solid rgba(255,255,255,.08); padding: 18px; }
.feature-card:last-child { border-right: 0; }
.feature-icon { width: 82px; height: 82px; display: grid; place-items: center; border-radius: 999px; font-size: 2rem; border: 1px solid var(--line); background: rgba(255,255,255,.035); }
.feature-icon svg { width: 42px; height: 42px; }
.feature-icon.orange { color: var(--orange2); box-shadow: 0 0 35px rgba(255,90,22,.32); border-color: rgba(255,90,22,.46); }
.feature-icon.red { color: var(--pink); box-shadow: 0 0 35px rgba(255,62,143,.30); border-color: rgba(255,62,143,.46); }
.feature-icon.purple { color: var(--purple2); box-shadow: 0 0 35px rgba(141,53,255,.32); border-color: rgba(141,53,255,.48); }
.feature-card h3, .solution-card h3 { margin: 0 0 8px; }
.feature-card p, .solution-card p { margin: 0; color: var(--muted); line-height: 1.6; }

.section-kicker { display: block; width: max-content; margin: 0 auto 12px; color: #ff758b; text-transform: uppercase; letter-spacing: .18em; font-size: .78rem; font-weight: 950; }
.solution-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.solution-card {
  color: var(--text); text-align: center; border: 1px solid rgba(255,255,255,.1); border-radius: 22px; padding: 24px 18px;
  min-height: 290px; background: radial-gradient(circle at 50% 0%, rgba(255, 77, 22, .13), transparent 42%), linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)), rgba(8, 10, 18, .74);
  box-shadow: 0 25px 80px rgba(0,0,0,.28); transition: .25s ease;
}
.solution-card:hover { transform: translateY(-8px); border-color: var(--line-orange); box-shadow: 0 32px 100px rgba(0,0,0,.4), 0 0 35px rgba(255, 80, 20, .12); }
.solution-art { width: 88px; height: 88px; margin: 0 auto 18px; display: grid; place-items: center; border-radius: 20px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.045); box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
.solution-art svg { width: 58px; height: 58px; }
.solution-card b { display: inline-flex; margin-top: 16px; color: var(--orange2); }
.solution-card:nth-child(3n) { border-color: rgba(141,53,255,.22); }
.solution-card:nth-child(3n):hover { border-color: var(--line-purple); box-shadow: 0 32px 100px rgba(0,0,0,.4), 0 0 35px rgba(141, 53, 255, .16); }
.solution-card:nth-child(3n) b { color: var(--purple2); }

.page-hero {
  position: relative; overflow: hidden; min-height: 430px; display: grid; place-items: center; padding: 100px 20px 72px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.page-hero::before {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(circle at 20% 50%, rgba(255,80,22,.15), transparent 30%), radial-gradient(circle at 80% 50%, rgba(141,53,255,.15), transparent 30%);
}
.page-hero-content { position: relative; z-index: 1; text-align: center; max-width: 900px; }
.page-hero h1 { margin: 0; font-size: clamp(3rem, 6vw, 5.5rem); line-height: .98; letter-spacing: -.065em; text-transform: uppercase; }
.page-hero p { max-width: 740px; margin: 22px auto 30px; color: var(--muted); line-height: 1.7; }
.page-stats {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; max-width: 620px; margin: 0 auto;
}
.page-stats div { border: 1px solid rgba(255,255,255,.1); border-radius: 18px; padding: 16px; background: rgba(255,255,255,.045); }
.page-stats small { display: block; color: var(--muted); font-weight: 800; margin-bottom: 5px; }
.page-stats strong { font-size: 1.25rem; }

.plans-section.open { display: block; }
.plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.price-card {
  position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 24px; padding: 26px;
  min-height: 410px; display: flex; flex-direction: column; background: radial-gradient(circle at 100% 0%, rgba(255, 77, 22, .15), transparent 34%), linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.025)), rgba(8, 10, 18, .82);
  box-shadow: 0 26px 80px rgba(0,0,0,.28); transition: .25s ease;
}
.price-card:hover { transform: translateY(-8px); border-color: var(--line-orange); box-shadow: 0 32px 100px rgba(0,0,0,.38), 0 0 35px rgba(255,77,22,.14); }
.price-card.ryzen { border-color: rgba(255, 80, 22, .22); background: radial-gradient(circle at 100% 0%, rgba(255, 77, 22, .21), transparent 34%), linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.025)), rgba(16, 10, 13, .84); }
.price-card.intel { border-color: rgba(83, 156, 255, .24); background: radial-gradient(circle at 100% 0%, rgba(83, 156, 255, .19), transparent 34%), linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.025)), rgba(9, 13, 22, .84); }
.price-card.purple, .price-card.pink, .price-card.blue, .price-card.orange { border-color: rgba(141,53,255,.24); }
.price-card.popular::before {
  content: "Most Popular"; position: absolute; right: -38px; top: 20px; width: 170px; transform: rotate(35deg);
  text-align: center; background: linear-gradient(135deg, var(--orange2), var(--pink)); color: white; font-size: .74rem; font-weight: 950; padding: 7px 0;
}
.price-card > span {
  width: max-content; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.06); color: #ffd8d8; border-radius: 999px;
  padding: 7px 11px; font-size: .78rem; font-weight: 950; margin-bottom: 22px;
}
.price-card h3 { margin: 0 0 10px; font-size: 1.4rem; }
.price { font-size: 2.7rem; line-height: 1; font-weight: 950; letter-spacing: -.06em; margin-bottom: 22px; color: transparent; background: linear-gradient(90deg, var(--orange2), var(--pink), var(--purple2)); -webkit-background-clip: text; background-clip: text; }
.price small { color: var(--muted); font-size: .95rem; letter-spacing: 0; }
.price-card ul { list-style: none; padding: 0; margin: 0 0 24px; color: var(--muted); display: grid; gap: 11px; }
.price-card li { display: flex; gap: 9px; }
.price-card li::before { content: "✓"; color: var(--orange2); font-weight: 950; }
.price-card a {
  margin-top: auto; display: inline-flex; align-items: center; justify-content: center; min-height: 46px; border-radius: 12px;
  background: linear-gradient(135deg, var(--orange), var(--pink)); color: white; font-weight: 950; box-shadow: 0 14px 35px rgba(255,62,143,.18);
}

.benefit-strip {
  border: 1px solid rgba(255,255,255,.1); border-radius: 24px; padding: 22px; display: grid; grid-template-columns: repeat(4, 1fr); background: rgba(8, 10, 18, .74);
}
.benefit { display: grid; grid-template-columns: 58px 1fr; gap: 14px; align-items: center; padding: 12px 18px; border-right: 1px solid rgba(255,255,255,.08); }
.benefit:last-child { border-right: 0; }
.benefit span { grid-row: span 2; width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; color: var(--orange2); border: 1px solid rgba(255,90,22,.32); background: rgba(255,90,22,.08); }
.benefit span svg { width: 31px; height: 31px; }
.benefit b { display: block; }
.benefit p { margin: 0; color: var(--muted); line-height: 1.5; font-size: .9rem; }

.faq-list { max-width: 880px; margin: 0 auto; display: grid; gap: 12px; }
.faq-item { border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(8, 10, 18, .78); overflow: hidden; }
.faq-item button { width: 100%; border: 0; background: transparent; color: var(--text); padding: 20px 22px; display: flex; justify-content: space-between; cursor: pointer; text-align: left; font-weight: 950; }
.faq-item p { display: none; margin: 0; padding: 0 22px 20px; color: var(--muted); line-height: 1.7; }
.faq-item.active p { display: block; }
.faq-item.active button span { transform: rotate(45deg); color: var(--pink); }

.footer {
  position: relative; z-index: 1; width: min(var(--max), calc(100% - 36px)); margin: 0 auto; padding: 54px 0 34px;
  border-top: 1px solid rgba(255,255,255,.1); display: grid; grid-template-columns: 1.45fr repeat(3, .75fr); gap: 34px;
}
.footer-brand img { width: 210px; max-width: 100%; object-fit: contain; filter: drop-shadow(0 0 15px rgba(255,77,22,.22)); }
.footer p { color: var(--muted); line-height: 1.65; max-width: 360px; }
.footer h4 { margin: 0 0 16px; text-transform: uppercase; letter-spacing: .08em; color: #dfe0ec; }
.footer a:not(.socials a) { display: block; color: var(--muted); margin-bottom: 10px; transition: .2s ease; }
.footer a:hover { color: var(--orange2); }
.socials { display: flex; gap: 10px; }
.socials a { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 999px; border: 1px solid rgba(255,255,255,.12); color: var(--muted); }
.socials svg { width: 18px; height: 18px; }
.copyright { width: min(var(--max), calc(100% - 36px)); margin: 0 auto; padding: 22px 0 30px; border-top: 1px solid rgba(255,255,255,.08); text-align: center; color: var(--muted2); }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .72s ease, transform .72s ease; }
.reveal.show { opacity: 1; transform: translateY(0); }

@media (max-width: 1120px) {
  .nav-menu { display: none; }
  .mobile-toggle { display: block; }
  .nav-shell.open .nav-menu {
    display: grid; position: fixed; top: 82px; left: 18px; right: 18px; padding: 14px; border: 1px solid var(--line);
    border-radius: 22px; background: rgba(3,5,10,.97); max-height: calc(100vh - 105px); overflow-y: auto;
  }
  .nav-shell.open .nav-item > button { width: 100%; justify-content: space-between; }
  .nav-shell.open .dropdown {
    position: static; transform: none; opacity: 1; visibility: visible; pointer-events: auto; margin: 4px 0 12px; box-shadow: none; background: rgba(255,255,255,.035);
  }
  .solution-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .feature-row, .plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature-card { border-right: 0; }
  .benefit-strip { grid-template-columns: repeat(2, 1fr); }
  .benefit { border-right: 0; }
}
@media (max-width: 760px) {
  .nav-actions { display: none; }
  .brand img { width: 135px; }
  .hero { min-height: 680px; padding: 92px 16px 70px; }
  .hero-side { opacity: .2; }
  .hero h1 { font-size: clamp(2.7rem, 12vw, 4.6rem); }
  .hero p { font-size: 1rem; }
  .btn-hero, .hero-actions { width: 100%; }
  .feature-panel { padding: 40px 18px; }
  .feature-row, .solution-grid, .plan-grid, .benefit-strip, .footer, .page-stats { grid-template-columns: 1fr; }
  .feature-card, .benefit { grid-template-columns: 1fr; text-align: center; justify-items: center; }
}


/* ===== V7 hero CTA icon + hover glow fix ===== */
.btn-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  gap: 14px;
  min-width: 252px;
  height: 66px;
  padding: 0 28px;
  border-radius: 16px;
  letter-spacing: .015em;
  box-shadow: 0 18px 44px rgba(0,0,0,.28);
}

.btn-hero::before {
  content: "";
  position: absolute;
  inset: -2px;
  z-index: -2;
  border-radius: inherit;
  opacity: 0;
  transition: opacity .24s ease;
}

.btn-hero::after {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(110deg, rgba(255,255,255,.22), transparent 22%, transparent 72%, rgba(255,255,255,.12)),
    inherit;
  opacity: .65;
  transition: opacity .24s ease, transform .24s ease;
}

.btn-game::before {
  background: radial-gradient(circle at 50% 50%, rgba(255,118,32,.58), rgba(255,62,143,.38), transparent 72%);
}

.btn-vps::before {
  background: radial-gradient(circle at 50% 50%, rgba(199,72,255,.58), rgba(105,52,255,.44), transparent 72%);
}

.btn-hero:hover,
.btn-hero:focus-visible {
  transform: translateY(-4px) scale(1.025);
}

.btn-game:hover,
.btn-game:focus-visible {
  box-shadow:
    0 0 0 1px rgba(255,255,255,.18) inset,
    0 0 28px rgba(255,75,22,.62),
    0 0 58px rgba(255,62,143,.42),
    0 24px 70px rgba(255,62,143,.28);
}

.btn-vps:hover,
.btn-vps:focus-visible {
  box-shadow:
    0 0 0 1px rgba(255,255,255,.18) inset,
    0 0 28px rgba(199,72,255,.62),
    0 0 58px rgba(141,53,255,.42),
    0 24px 70px rgba(141,53,255,.28);
}

.btn-hero:hover::before,
.btn-hero:focus-visible::before {
  opacity: 1;
}

.btn-hero:hover::after,
.btn-hero:focus-visible::after {
  opacity: .9;
  transform: translateX(3px);
}

.hero-btn-icon {
  width: 36px;
  height: 36px;
  min-width: 36px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 0 16px rgba(255,255,255,.12);
  transition: transform .24s ease, box-shadow .24s ease, background .24s ease;
}

.hero-btn-icon svg {
  width: 27px;
  height: 27px;
  display: block;
}

.btn-hero:hover .hero-btn-icon,
.btn-hero:focus-visible .hero-btn-icon {
  transform: scale(1.12) rotate(-3deg);
  background: rgba(255,255,255,.22);
}

.btn-game:hover .hero-btn-icon,
.btn-game:focus-visible .hero-btn-icon {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.32),
    0 0 18px rgba(255,255,255,.20),
    0 0 30px rgba(255,75,22,.48);
}

.btn-vps:hover .hero-btn-icon,
.btn-vps:focus-visible .hero-btn-icon {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.32),
    0 0 18px rgba(255,255,255,.20),
    0 0 30px rgba(199,72,255,.52);
}

.hero-btn-text {
  line-height: 1;
  white-space: nowrap;
}

/* Override old V6 span sizing for the new button text/icon */
.btn-hero span.hero-btn-icon {
  width: 36px;
  height: 36px;
}

.btn-hero span.hero-btn-text {
  width: auto;
  height: auto;
}


/* ===== V8 solution cards: realistic icon polish + purple View Plans buttons ===== */
.solution-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.solution-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -2;
  border-radius: inherit;
  background:
    radial-gradient(circle at 50% 0%, rgba(199,72,255,.18), transparent 42%),
    radial-gradient(circle at 0% 100%, rgba(255,75,22,.12), transparent 38%);
  opacity: .55;
  transition: opacity .28s ease, transform .28s ease;
}

.solution-card::after {
  content: "";
  position: absolute;
  top: -60%;
  left: -40%;
  width: 65%;
  height: 220%;
  z-index: -1;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent);
  transform: rotate(20deg) translateX(-150%);
  transition: transform .65s ease;
}

.solution-card:hover::before,
.solution-card:focus-visible::before {
  opacity: 1;
  transform: scale(1.04);
}

.solution-card:hover::after,
.solution-card:focus-visible::after {
  transform: rotate(20deg) translateX(260%);
}

.solution-art {
  position: relative;
  overflow: hidden;
  width: 96px;
  height: 96px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 50% 15%, rgba(255,255,255,.14), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025)),
    rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 0 0 1px rgba(255,255,255,.03),
    0 16px 36px rgba(0,0,0,.28);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease,
    background .28s ease;
}

.solution-art::before {
  content: "";
  position: absolute;
  inset: 10px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 50% 50%, rgba(199,72,255,.16), transparent 58%);
  opacity: .75;
  transition: opacity .28s ease, transform .28s ease;
}

.solution-art svg {
  position: relative;
  z-index: 1;
  width: 64px;
  height: 64px;
  filter:
    drop-shadow(0 8px 16px rgba(0,0,0,.45))
    drop-shadow(0 0 12px rgba(199,72,255,.16));
  transition: transform .28s ease, filter .28s ease;
}

.solution-card:nth-child(1) .solution-art {
  border-color: rgba(255,112,32,.28);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 0 26px rgba(255,90,22,.10),
    0 16px 36px rgba(0,0,0,.28);
}

.solution-card:nth-child(2) .solution-art {
  border-color: rgba(255,92,20,.32);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 0 30px rgba(255,92,20,.14),
    0 16px 36px rgba(0,0,0,.28);
}

.solution-card:nth-child(3) .solution-art,
.solution-card:nth-child(4) .solution-art,
.solution-card:nth-child(5) .solution-art,
.solution-card:nth-child(6) .solution-art {
  border-color: rgba(199,72,255,.28);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 0 30px rgba(199,72,255,.12),
    0 16px 36px rgba(0,0,0,.28);
}

.solution-card:hover .solution-art,
.solution-card:focus-visible .solution-art {
  transform: translateY(-7px) scale(1.06);
  border-color: rgba(199,72,255,.55);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 0 22px rgba(255,255,255,.08),
    0 0 42px rgba(199,72,255,.26),
    0 22px 54px rgba(0,0,0,.38);
}

.solution-card:nth-child(1):hover .solution-art,
.solution-card:nth-child(1):focus-visible .solution-art,
.solution-card:nth-child(2):hover .solution-art,
.solution-card:nth-child(2):focus-visible .solution-art {
  border-color: rgba(255,112,32,.56);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 0 22px rgba(255,255,255,.08),
    0 0 42px rgba(255,92,20,.25),
    0 22px 54px rgba(0,0,0,.38);
}

.solution-card:hover .solution-art::before,
.solution-card:focus-visible .solution-art::before {
  opacity: 1;
  transform: scale(1.22);
}

.solution-card:hover .solution-art svg,
.solution-card:focus-visible .solution-art svg {
  transform: scale(1.10) rotate(-2deg);
  filter:
    drop-shadow(0 10px 18px rgba(0,0,0,.48))
    drop-shadow(0 0 18px rgba(199,72,255,.36));
}

.solution-card:nth-child(1):hover .solution-art svg,
.solution-card:nth-child(1):focus-visible .solution-art svg,
.solution-card:nth-child(2):hover .solution-art svg,
.solution-card:nth-child(2):focus-visible .solution-art svg {
  filter:
    drop-shadow(0 10px 18px rgba(0,0,0,.48))
    drop-shadow(0 0 18px rgba(255,92,20,.36));
}

/* Make every View Plans link same purple button */
.solution-card b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  min-width: 132px;
  margin-top: 18px;
  padding: 0 18px;
  border-radius: 999px;
  color: #ffffff !important;
  background:
    linear-gradient(135deg, rgba(141,53,255,.95), rgba(199,72,255,.95));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow:
    0 12px 26px rgba(141,53,255,.24),
    inset 0 1px 0 rgba(255,255,255,.22);
  font-size: .9rem;
  font-weight: 950;
  letter-spacing: .01em;
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    background .24s ease,
    border-color .24s ease;
}

.solution-card:hover b,
.solution-card:focus-visible b {
  transform: translateY(-2px) scale(1.03);
  border-color: rgba(255,255,255,.26);
  background:
    linear-gradient(135deg, rgba(122,38,255,1), rgba(222,65,255,1));
  box-shadow:
    0 0 22px rgba(199,72,255,.56),
    0 0 48px rgba(141,53,255,.34),
    0 16px 34px rgba(141,53,255,.28),
    inset 0 1px 0 rgba(255,255,255,.26);
}

.solution-card b::after {
  content: "";
  width: 0;
  height: 0;
  margin-left: 0;
  transition: margin-left .22s ease;
}

.solution-card:hover b::after,
.solution-card:focus-visible b::after {
  content: "→";
  margin-left: 8px;
}

/* Remove old alternating orange/purple link behavior for solution buttons */
.solution-card:nth-child(3n) b {
  color: #ffffff !important;
}


/* ===== V9 final polish: no login emoji, same-size service logos, isolated hover, plan-card themes ===== */

/* Better Login/Register buttons without icons */
.nav-actions .btn {
  min-width: 116px;
  height: 46px;
  padding: 0 20px;
  border-radius: 15px;
  font-size: .94rem;
  letter-spacing: .01em;
}

.nav-actions .btn-outline {
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  border-color: rgba(255,255,255,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 12px 34px rgba(0,0,0,.18);
}

.nav-actions .btn-outline:hover,
.nav-actions .btn-outline:focus-visible {
  border-color: rgba(199,72,255,.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 0 20px rgba(199,72,255,.22),
    0 14px 38px rgba(0,0,0,.25);
}

.nav-actions .btn-register {
  background:
    linear-gradient(135deg, #ff4d16 0%, #ff3e8f 52%, #c748ff 100%);
  border-color: rgba(255,255,255,.14);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 0 22px rgba(255,62,143,.32),
    0 14px 38px rgba(255,62,143,.22);
}

.nav-actions .btn-register:hover,
.nav-actions .btn-register:focus-visible {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 0 28px rgba(255,75,22,.42),
    0 0 42px rgba(199,72,255,.30),
    0 18px 46px rgba(255,62,143,.28);
}

/* Same-size realistic logos inside category cards */
.solution-art img {
  position: relative;
  z-index: 2;
  width: 72px;
  height: 72px;
  object-fit: contain;
  display: block;
  filter:
    drop-shadow(0 10px 20px rgba(0,0,0,.46))
    drop-shadow(0 0 12px rgba(199,72,255,.16));
  transition: transform .28s ease, filter .28s ease;
}

.solution-card:hover .solution-art img,
.solution-card:focus-visible .solution-art img {
  transform: scale(1.08) rotate(-2deg);
  filter:
    drop-shadow(0 12px 22px rgba(0,0,0,.52))
    drop-shadow(0 0 20px rgba(199,72,255,.38));
}

.solution-card:nth-child(1):hover .solution-art img,
.solution-card:nth-child(1):focus-visible .solution-art img,
.solution-card:nth-child(2):hover .solution-art img,
.solution-card:nth-child(2):focus-visible .solution-art img {
  filter:
    drop-shadow(0 12px 22px rgba(0,0,0,.52))
    drop-shadow(0 0 20px rgba(255,92,20,.38));
}

/* Isolated hover: only the hovered card reacts */
.solution-grid:hover .solution-card:not(:hover) {
  transform: none;
  box-shadow: 0 25px 80px rgba(0,0,0,.28);
  filter: none;
}

.solution-card {
  will-change: transform;
}

.solution-card:hover,
.solution-card:focus-visible {
  z-index: 3;
}

/* Plan cards animation + unique category UI */
.price-card {
  isolation: isolate;
  will-change: transform, box-shadow;
  transform-style: preserve-3d;
}

.price-card::after {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -1;
  border-radius: inherit;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.08), transparent 36%),
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,.10) 42%, transparent 58%);
  opacity: 0;
  transform: translateX(-60%) skewX(-18deg);
  transition: opacity .28s ease, transform .75s ease;
}

.price-card:hover::after,
.price-card:focus-within::after {
  opacity: 1;
  transform: translateX(60%) skewX(-18deg);
}

.price-card:hover,
.price-card:focus-within {
  transform: translateY(-10px) scale(1.012);
}

/* Minecraft budget = blue/grass/cube style */
body.page-minecraft-budget .page-hero,
body.page-minecraft-budget .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(83,156,255,.22), transparent 33%),
    radial-gradient(circle at 0% 100%, rgba(45,255,120,.10), transparent 33%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(8,13,22,.86);
}

body.page-minecraft-budget .price-card {
  border-color: rgba(83,156,255,.30);
}

body.page-minecraft-budget .price-card:hover {
  border-color: rgba(83,156,255,.62);
  box-shadow:
    0 0 34px rgba(83,156,255,.25),
    0 0 58px rgba(45,255,120,.10),
    0 34px 90px rgba(0,0,0,.38);
}

/* Minecraft performance = fire/Ryzen style */
body.page-minecraft-performance .page-hero,
body.page-minecraft-performance .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255,92,20,.26), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(255,62,143,.14), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(18,10,13,.88);
}

body.page-minecraft-performance .price-card {
  border-color: rgba(255,92,20,.34);
}

body.page-minecraft-performance .price-card:hover {
  border-color: rgba(255,112,32,.68);
  box-shadow:
    0 0 34px rgba(255,92,20,.28),
    0 0 58px rgba(255,62,143,.16),
    0 34px 90px rgba(0,0,0,.40);
}

/* VPS = cloud/server blue-purple style */
body.page-vps .page-hero,
body.page-vps .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(90,164,255,.20), transparent 36%),
    radial-gradient(circle at 0% 100%, rgba(141,53,255,.16), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(8,11,22,.88);
}

body.page-vps .price-card {
  border-color: rgba(90,164,255,.30);
}

body.page-vps .price-card:hover {
  border-color: rgba(90,164,255,.62);
  box-shadow:
    0 0 34px rgba(90,164,255,.25),
    0 0 60px rgba(141,53,255,.18),
    0 34px 90px rgba(0,0,0,.38);
}

/* Bot hosting = robot pink/neon style */
body.page-bot-hosting .page-hero,
body.page-bot-hosting .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255,62,143,.22), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(199,72,255,.16), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(18,10,22,.88);
}

body.page-bot-hosting .price-card {
  border-color: rgba(255,62,143,.30);
}

body.page-bot-hosting .price-card:hover {
  border-color: rgba(255,62,143,.62);
  box-shadow:
    0 0 34px rgba(255,62,143,.24),
    0 0 58px rgba(199,72,255,.18),
    0 34px 90px rgba(0,0,0,.38);
}

/* Dedicated = metal/premium server style */
body.page-dedicated .page-hero,
body.page-dedicated .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255,255,255,.12), transparent 31%),
    radial-gradient(circle at 0% 100%, rgba(199,72,255,.14), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.022)),
    rgba(13,13,19,.90);
}

body.page-dedicated .price-card {
  border-color: rgba(220,220,255,.22);
}

body.page-dedicated .price-card:hover {
  border-color: rgba(220,220,255,.46);
  box-shadow:
    0 0 34px rgba(220,220,255,.12),
    0 0 58px rgba(199,72,255,.18),
    0 34px 90px rgba(0,0,0,.42);
}

/* Game servers = controller orange/purple arcade style */
body.page-game-servers .page-hero,
body.page-game-servers .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255,138,0,.20), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(141,53,255,.18), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(16,11,18,.88);
}

body.page-game-servers .price-card {
  border-color: rgba(255,138,0,.30);
}

body.page-game-servers .price-card:hover {
  border-color: rgba(255,138,0,.58);
  box-shadow:
    0 0 34px rgba(255,138,0,.22),
    0 0 58px rgba(141,53,255,.20),
    0 34px 90px rgba(0,0,0,.38);
}

/* Web hosting = cloud/web cyan green style */
body.page-web-hosting .page-hero,
body.page-web-hosting .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(90,164,255,.20), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(34,255,145,.11), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(7,14,20,.88);
}

body.page-web-hosting .price-card {
  border-color: rgba(90,164,255,.30);
}

body.page-web-hosting .price-card:hover {
  border-color: rgba(34,255,145,.42);
  box-shadow:
    0 0 34px rgba(90,164,255,.22),
    0 0 58px rgba(34,255,145,.12),
    0 34px 90px rgba(0,0,0,.38);
}

/* Setup services = tools amber style */
body.page-setup-services .page-hero,
body.page-setup-services .price-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255,154,34,.20), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(255,62,143,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.024)),
    rgba(18,12,10,.88);
}

body.page-setup-services .price-card {
  border-color: rgba(255,154,34,.30);
}

body.page-setup-services .price-card:hover {
  border-color: rgba(255,154,34,.58);
  box-shadow:
    0 0 34px rgba(255,154,34,.22),
    0 0 58px rgba(255,62,143,.12),
    0 34px 90px rgba(0,0,0,.38);
}


/* ===== V10 plan pages: make every service UI clearly different ===== */

/* Base stronger plan page separation */
.plan-page .plans-section {
  padding-top: 64px;
}

.plan-page .plan-grid {
  gap: 22px;
}

.plan-page .price-card {
  min-height: 445px;
  padding: 0;
  border-radius: 28px;
  overflow: hidden;
}

.plan-page .price-card > span,
.plan-page .price-card h3,
.plan-page .price-card .price,
.plan-page .price-card ul,
.plan-page .price-card a {
  position: relative;
  z-index: 2;
}

.plan-page .price-card > span {
  margin: 24px 24px 18px;
}

.plan-page .price-card h3,
.plan-page .price-card .price,
.plan-page .price-card ul {
  margin-left: 24px;
  margin-right: 24px;
}

.plan-page .price-card a {
  margin: auto 24px 24px;
}

.plan-page .price-card::before {
  content: "";
  position: relative;
  z-index: 1;
  display: block;
  height: 76px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}

/* Minecraft Budget: block/cube shop style */
body.page-minecraft-budget .price-card {
  border-radius: 18px;
  border-color: rgba(91, 255, 103, .20);
  background:
    linear-gradient(180deg, rgba(10,20,28,.96), rgba(8,13,22,.92));
}

body.page-minecraft-budget .price-card::before {
  height: 92px;
  background:
    linear-gradient(135deg, rgba(91,245,103,.34) 0 22%, transparent 22% 28%, rgba(83,156,255,.20) 28% 48%, transparent 48% 56%, rgba(138,85,38,.30) 56% 100%),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    rgba(12,22,30,.92);
  background-size: auto, 18px 18px, 18px 18px, auto;
}

body.page-minecraft-budget .price-card::after {
  content: "BLOCK TIER";
  position: absolute;
  top: 29px;
  left: 24px;
  z-index: 3;
  transform: none;
  opacity: 1;
  background: none;
  width: auto;
  height: auto;
  color: rgba(255,255,255,.88);
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .18em;
}

body.page-minecraft-budget .price-card h3 {
  font-family: var(--font);
  text-transform: uppercase;
  letter-spacing: .03em;
}

body.page-minecraft-budget .price-card ul li::before {
  color: #5bff67;
}

body.page-minecraft-budget .price-card a {
  background: linear-gradient(135deg, #248bff, #28df65);
  box-shadow: 0 0 30px rgba(83,156,255,.18), 0 16px 34px rgba(40,223,101,.12);
}

body.page-minecraft-budget .price-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 0 0 1px rgba(91,255,103,.22), 0 0 40px rgba(83,156,255,.20), 0 30px 90px rgba(0,0,0,.42);
}

/* Minecraft Performance: aggressive fire/diagonal PvP style */
body.page-minecraft-performance .price-card {
  border-radius: 30px 12px 30px 12px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255,80,18,.38), transparent 34%),
    linear-gradient(145deg, rgba(31,10,8,.96), rgba(14,9,14,.94));
  border-color: rgba(255,92,20,.34);
}

body.page-minecraft-performance .price-card::before {
  height: 98px;
  background:
    linear-gradient(132deg, rgba(255,92,20,.58), rgba(255,62,143,.25) 45%, transparent 46%),
    radial-gradient(circle at 85% 15%, rgba(255,210,90,.35), transparent 20%),
    rgba(18,10,13,.86);
}

body.page-minecraft-performance .price-card::after {
  content: "";
  position: absolute;
  top: -44px;
  right: -58px;
  width: 155px;
  height: 155px;
  z-index: 1;
  opacity: .9;
  transform: none;
  background:
    radial-gradient(circle, rgba(255,154,34,.36), transparent 56%),
    conic-gradient(from 210deg, transparent, rgba(255,92,20,.35), transparent 60%);
  border-radius: 50%;
  transition: transform .35s ease, opacity .35s ease;
}

body.page-minecraft-performance .price-card:hover::after {
  transform: scale(1.25) rotate(12deg);
}

body.page-minecraft-performance .price-card > span {
  background: rgba(255,92,20,.12);
  border-color: rgba(255,92,20,.32);
  color: #ffd1bf;
}

body.page-minecraft-performance .price-card h3 {
  font-size: 1.55rem;
  letter-spacing: -.03em;
}

body.page-minecraft-performance .price-card .price {
  font-size: 3.05rem;
}

body.page-minecraft-performance .price-card a {
  background: linear-gradient(135deg, #ff4b16, #ff3e8f);
  box-shadow: 0 0 32px rgba(255,75,22,.22), 0 16px 34px rgba(255,62,143,.18);
}

body.page-minecraft-performance .price-card:hover {
  transform: translateY(-10px) scale(1.018);
}

/* VPS: cloud/server dashboard cards */
body.page-vps .price-card {
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(8,15,30,.96), rgba(8,10,22,.92));
  border-color: rgba(90,164,255,.30);
}

body.page-vps .price-card::before {
  height: 88px;
  background:
    linear-gradient(90deg, rgba(90,164,255,.22), rgba(141,53,255,.16)),
    repeating-linear-gradient(0deg, transparent 0 12px, rgba(255,255,255,.06) 12px 13px),
    rgba(10,17,31,.92);
}

body.page-vps .price-card::after {
  content: "";
  position: absolute;
  top: 31px;
  left: 24px;
  z-index: 3;
  width: 52px;
  height: 29px;
  opacity: 1;
  transform: none;
  background:
    linear-gradient(#5aa4ff,#5aa4ff) 0 0/52px 5px no-repeat,
    linear-gradient(#8d35ff,#8d35ff) 0 12px/52px 5px no-repeat,
    linear-gradient(#ff9a22,#ff9a22) 0 24px/52px 5px no-repeat;
  border-radius: 2px;
}

body.page-vps .price-card > span {
  margin-left: auto;
  margin-right: 24px;
  display: table;
  background: rgba(90,164,255,.11);
  border-color: rgba(90,164,255,.32);
  color: #dcecff;
}

body.page-vps .price-card ul {
  border: 1px solid rgba(90,164,255,.12);
  border-radius: 18px;
  padding: 14px;
  background: rgba(90,164,255,.04);
}

body.page-vps .price-card a {
  background: linear-gradient(135deg, #248bff, #8d35ff);
  box-shadow: 0 0 32px rgba(90,164,255,.22), 0 16px 34px rgba(141,53,255,.16);
}

/* Bot hosting: code terminal card style */
body.page-bot-hosting .price-card {
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(22,10,24,.97), rgba(12,9,22,.92));
  border-color: rgba(255,62,143,.32);
}

body.page-bot-hosting .price-card::before {
  height: 88px;
  background:
    radial-gradient(circle at 20px 20px, #ff5f57 0 5px, transparent 6px),
    radial-gradient(circle at 40px 20px, #ffbd2e 0 5px, transparent 6px),
    radial-gradient(circle at 60px 20px, #28c840 0 5px, transparent 6px),
    linear-gradient(180deg, rgba(255,62,143,.18), rgba(199,72,255,.08)),
    rgba(15,11,24,.95);
}

body.page-bot-hosting .price-card::after {
  content: "</>";
  position: absolute;
  top: 43px;
  left: 24px;
  z-index: 3;
  opacity: .75;
  transform: none;
  background: none;
  color: #ff8cc0;
  font-weight: 950;
  font-size: 1.2rem;
  letter-spacing: .08em;
}

body.page-bot-hosting .price-card h3::before {
  content: "bot.run";
  display: block;
  width: max-content;
  margin-bottom: 7px;
  color: #ff8cc0;
  font-size: .72rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .82;
}

body.page-bot-hosting .price-card ul {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .92rem;
}

body.page-bot-hosting .price-card li::before {
  content: "$";
  color: #ff3e8f;
}

body.page-bot-hosting .price-card a {
  background: linear-gradient(135deg, #ff3e8f, #8d35ff);
  box-shadow: 0 0 32px rgba(255,62,143,.22), 0 16px 34px rgba(141,53,255,.18);
}

/* Dedicated: metal rack hardware style */
body.page-dedicated .price-card {
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(28,29,36,.96), rgba(10,11,16,.94));
  border-color: rgba(220,220,255,.22);
}

body.page-dedicated .price-card::before {
  height: 92px;
  background:
    linear-gradient(90deg, rgba(255,255,255,.12), transparent 35%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.08) 0 1px, transparent 1px 12px),
    rgba(18,19,25,.96);
}

body.page-dedicated .price-card::after {
  content: "";
  position: absolute;
  top: 28px;
  right: 24px;
  z-index: 3;
  width: 14px;
  height: 58px;
  opacity: 1;
  transform: none;
  background:
    radial-gradient(circle, #ff4b16 0 4px, transparent 5px) 0 0/14px 18px,
    radial-gradient(circle, #c748ff 0 4px, transparent 5px) 0 18px/14px 18px,
    radial-gradient(circle, #24ff91 0 4px, transparent 5px) 0 36px/14px 18px;
}

body.page-dedicated .price-card h3 {
  text-transform: uppercase;
  letter-spacing: .06em;
}

body.page-dedicated .price-card ul {
  border-left: 2px solid rgba(255,255,255,.18);
  padding-left: 18px;
}

body.page-dedicated .price-card a {
  background: linear-gradient(135deg, #d9d9ee, #8d35ff);
  color: #080b14;
  box-shadow: 0 0 32px rgba(220,220,255,.16), 0 16px 34px rgba(141,53,255,.16);
}

/* Game servers: arcade badge/cards */
body.page-game-servers .price-card {
  border-radius: 30px;
  background:
    radial-gradient(circle at 50% -10%, rgba(255,138,0,.25), transparent 36%),
    linear-gradient(180deg, rgba(20,12,25,.96), rgba(9,9,18,.94));
  border-color: rgba(255,138,0,.30);
}

body.page-game-servers .price-card::before {
  height: 86px;
  background:
    linear-gradient(135deg, rgba(255,138,0,.30), rgba(141,53,255,.26)),
    repeating-radial-gradient(circle at 20% 50%, rgba(255,255,255,.13) 0 2px, transparent 2px 9px),
    rgba(18,11,23,.94);
}

body.page-game-servers .price-card::after {
  content: "PLAY";
  position: absolute;
  top: 35px;
  right: 24px;
  z-index: 3;
  transform: none;
  opacity: 1;
  background: rgba(0,0,0,.24);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  padding: 8px 12px;
  width: auto;
  height: auto;
  color: #fff;
  font-weight: 950;
  letter-spacing: .16em;
  font-size: .75rem;
}

body.page-game-servers .price-card a {
  background: linear-gradient(135deg, #ff8a00, #8d35ff);
  box-shadow: 0 0 32px rgba(255,138,0,.20), 0 16px 34px rgba(141,53,255,.18);
}

/* Web hosting: browser/window UI */
body.page-web-hosting .price-card {
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(7,16,22,.96), rgba(7,10,18,.94));
  border-color: rgba(90,164,255,.30);
}

body.page-web-hosting .price-card::before {
  height: 88px;
  background:
    radial-gradient(circle at 24px 24px, #ff5f57 0 5px, transparent 6px),
    radial-gradient(circle at 44px 24px, #ffbd2e 0 5px, transparent 6px),
    radial-gradient(circle at 64px 24px, #28c840 0 5px, transparent 6px),
    linear-gradient(90deg, transparent 92px, rgba(90,164,255,.18) 92px 86%, transparent 86%),
    rgba(9,18,25,.96);
}

body.page-web-hosting .price-card h3::before {
  content: "https://";
  color: #5aa4ff;
  font-size: .75rem;
  display: block;
  margin-bottom: 6px;
  letter-spacing: .12em;
  opacity: .9;
}

body.page-web-hosting .price-card a {
  background: linear-gradient(135deg, #5aa4ff, #22ff91);
  color: #041016;
  box-shadow: 0 0 32px rgba(90,164,255,.22), 0 16px 34px rgba(34,255,145,.12);
}

/* Setup services: checklist/work order style */
body.page-setup-services .price-card {
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(22,13,8,.96), rgba(13,9,9,.94));
  border-color: rgba(255,154,34,.30);
}

body.page-setup-services .price-card::before {
  height: 88px;
  background:
    linear-gradient(90deg, rgba(255,154,34,.26), rgba(255,62,143,.13)),
    repeating-linear-gradient(90deg, transparent 0 20px, rgba(255,255,255,.06) 20px 21px),
    rgba(22,13,8,.95);
}

body.page-setup-services .price-card::after {
  content: "WORK ORDER";
  position: absolute;
  top: 32px;
  left: 24px;
  z-index: 3;
  transform: none;
  opacity: 1;
  width: auto;
  height: auto;
  background: none;
  color: #ffd09a;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .18em;
}

body.page-setup-services .price-card ul {
  background: rgba(255,154,34,.045);
  border: 1px dashed rgba(255,154,34,.22);
  border-radius: 16px;
  padding: 14px;
}

body.page-setup-services .price-card a {
  background: linear-gradient(135deg, #ff9a22, #ff3e8f);
  box-shadow: 0 0 32px rgba(255,154,34,.20), 0 16px 34px rgba(255,62,143,.14);
}

@media (max-width: 760px) {
  .solution-art {
    width: 90px;
    height: 90px;
  }

  .solution-art img {
    width: 66px;
    height: 66px;
  }
}


/* ===== V11 emergency fix: remove broken Minecraft card top graphics ===== */
/* Problem fixed: weird broken block/triangle graphics on /minecraft/budget/ cards */

/* Clean base for ALL pricing cards after V10 */
.plan-page .price-card {
  padding: 26px !important;
  min-height: 405px;
}

.plan-page .price-card::before,
.plan-page .price-card::after {
  display: none !important;
}

.plan-page .price-card > span,
.plan-page .price-card h3,
.plan-page .price-card .price,
.plan-page .price-card ul,
.plan-page .price-card a {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.plan-page .price-card > span {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.plan-page .price-card a {
  margin: auto 0 0 !important;
}

/* New clean category identity badges */
.plan-page .price-card h3::before {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin-bottom: 12px;
  padding: 7px 11px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
  border: 1px solid rgba(255,255,255,.12);
}

/* Minecraft Budget: clean block/cube style */
body.page-minecraft-budget .price-card {
  border-radius: 22px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(91,255,103,.14), transparent 28%),
    radial-gradient(circle at 0% 100%, rgba(83,156,255,.13), transparent 32%),
    linear-gradient(180deg, rgba(12,22,30,.96), rgba(6,12,20,.94)) !important;
  border-color: rgba(83,156,255,.28) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 24px 80px rgba(0,0,0,.30) !important;
}

body.page-minecraft-budget .price-card h3::before {
  content: "Minecraft Budget";
  color: #bfffd1;
  background: rgba(45,255,120,.075);
  border-color: rgba(91,255,103,.22);
}

body.page-minecraft-budget .price-card:hover,
body.page-minecraft-budget .price-card:focus-within {
  transform: translateY(-8px) scale(1.012) !important;
  border-color: rgba(91,255,103,.48) !important;
  box-shadow:
    0 0 0 1px rgba(91,255,103,.12),
    0 0 34px rgba(83,156,255,.18),
    0 0 46px rgba(91,255,103,.10),
    0 34px 90px rgba(0,0,0,.42) !important;
}

body.page-minecraft-budget .price-card > span {
  color: #dfffea !important;
  background: rgba(83,156,255,.10) !important;
  border-color: rgba(83,156,255,.26) !important;
}

body.page-minecraft-budget .price-card .price {
  background: linear-gradient(90deg, #5aa4ff, #22ff91) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
}

body.page-minecraft-budget .price-card a {
  background: linear-gradient(135deg, #248bff, #22d66f) !important;
}

/* Minecraft Performance: clean fire style, no broken pseudo shapes */
body.page-minecraft-performance .price-card {
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(255,92,20,.20), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(255,62,143,.12), transparent 32%),
    linear-gradient(180deg, rgba(28,11,10,.96), rgba(12,8,13,.94)) !important;
  border-color: rgba(255,92,20,.32) !important;
}

body.page-minecraft-performance .price-card h3::before {
  content: "Minecraft Performance";
  color: #ffd8c7;
  background: rgba(255,92,20,.09);
  border-color: rgba(255,92,20,.26);
}

/* VPS: clean cloud/server dashboard */
body.page-vps .price-card {
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(90,164,255,.18), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(141,53,255,.14), transparent 32%),
    linear-gradient(180deg, rgba(8,16,32,.96), rgba(7,10,22,.94)) !important;
  border-color: rgba(90,164,255,.30) !important;
}

body.page-vps .price-card h3::before {
  content: "Cloud VPS";
  color: #dcecff;
  background: rgba(90,164,255,.09);
  border-color: rgba(90,164,255,.26);
}

/* Bot: clean terminal/code style */
body.page-bot-hosting .price-card {
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(255,62,143,.17), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(199,72,255,.14), transparent 32%),
    linear-gradient(180deg, rgba(22,10,24,.96), rgba(11,8,20,.94)) !important;
  border-color: rgba(255,62,143,.30) !important;
}

body.page-bot-hosting .price-card h3::before {
  content: "Bot Runtime";
  color: #ffd1e6;
  background: rgba(255,62,143,.09);
  border-color: rgba(255,62,143,.26);
}

/* Dedicated: clean metal rack */
body.page-dedicated .price-card h3::before {
  content: "Dedicated Node";
  color: #f0f0ff;
  background: rgba(220,220,255,.08);
  border-color: rgba(220,220,255,.20);
}

/* Games: clean arcade */
body.page-game-servers .price-card h3::before {
  content: "Game Panel";
  color: #ffe1b4;
  background: rgba(255,138,0,.09);
  border-color: rgba(255,138,0,.26);
}

/* Web: clean browser */
body.page-web-hosting .price-card h3::before {
  content: "Web Cloud";
  color: #d5f8ff;
  background: rgba(90,164,255,.09);
  border-color: rgba(90,164,255,.24);
}

/* Setup: clean service ticket */
body.page-setup-services .price-card h3::before {
  content: "Setup Service";
  color: #ffe1b4;
  background: rgba(255,154,34,.09);
  border-color: rgba(255,154,34,.26);
}

/* Keep hover shine subtle without broken graphics */
.plan-page .price-card {
  position: relative;
  overflow: hidden;
}

.plan-page .price-card .price,
.plan-page .price-card h3,
.plan-page .price-card ul,
.plan-page .price-card a,
.plan-page .price-card > span {
  position: relative;
  z-index: 2;
}

.plan-page .price-card:hover {
  filter: brightness(1.04);
}


/* ===== V12 fix: plan name moved to top badge position; old big title hidden ===== */
/* User request: remove the big red-marked plan name text and show plan name where the green-marked category label was. */

body.plan-page .price-card h3[data-plan-title] {
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 24px 20px !important;
  padding: 0 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.plan-page .price-card h3[data-plan-title]::before {
  content: attr(data-plan-title) !important;
  display: inline-flex !important;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 0 !important;
  padding: 9px 13px;
  border-radius: 999px;
  font-size: .82rem !important;
  line-height: 1 !important;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #ffffff;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.07);
  box-shadow: 0 0 18px rgba(255,255,255,.06);
}

/* Remove old category label text overrides from showing again */
body.page-minecraft-budget .price-card h3[data-plan-title]::before,
body.page-minecraft-performance .price-card h3[data-plan-title]::before,
body.page-vps .price-card h3[data-plan-title]::before,
body.page-bot-hosting .price-card h3[data-plan-title]::before,
body.page-dedicated .price-card h3[data-plan-title]::before,
body.page-game-servers .price-card h3[data-plan-title]::before,
body.page-web-hosting .price-card h3[data-plan-title]::before,
body.page-setup-services .price-card h3[data-plan-title]::before {
  content: attr(data-plan-title) !important;
}

/* Category-specific plan-name badge colors */
body.page-minecraft-budget .price-card h3[data-plan-title]::before {
  color: #cffff0;
  background: rgba(45,255,120,.08);
  border-color: rgba(91,255,103,.28);
  box-shadow: 0 0 20px rgba(91,255,103,.12);
}

body.page-minecraft-performance .price-card h3[data-plan-title]::before {
  color: #ffd8c7;
  background: rgba(255,92,20,.10);
  border-color: rgba(255,92,20,.30);
  box-shadow: 0 0 20px rgba(255,92,20,.14);
}

body.page-vps .price-card h3[data-plan-title]::before {
  color: #dcecff;
  background: rgba(90,164,255,.10);
  border-color: rgba(90,164,255,.30);
  box-shadow: 0 0 20px rgba(90,164,255,.14);
}

body.page-bot-hosting .price-card h3[data-plan-title]::before {
  color: #ffd1e6;
  background: rgba(255,62,143,.10);
  border-color: rgba(255,62,143,.30);
  box-shadow: 0 0 20px rgba(255,62,143,.14);
}

body.page-dedicated .price-card h3[data-plan-title]::before {
  color: #f0f0ff;
  background: rgba(220,220,255,.08);
  border-color: rgba(220,220,255,.24);
  box-shadow: 0 0 20px rgba(220,220,255,.08);
}

body.page-game-servers .price-card h3[data-plan-title]::before {
  color: #ffe1b4;
  background: rgba(255,138,0,.10);
  border-color: rgba(255,138,0,.30);
  box-shadow: 0 0 20px rgba(255,138,0,.12);
}

body.page-web-hosting .price-card h3[data-plan-title]::before {
  color: #d5f8ff;
  background: rgba(90,164,255,.10);
  border-color: rgba(90,164,255,.28);
  box-shadow: 0 0 20px rgba(90,164,255,.12);
}

body.page-setup-services .price-card h3[data-plan-title]::before {
  color: #ffe1b4;
  background: rgba(255,154,34,.10);
  border-color: rgba(255,154,34,.30);
  box-shadow: 0 0 20px rgba(255,154,34,.12);
}

/* Better spacing after removing the big title */
body.plan-page .price-card .price {
  margin-top: 0 !important;
}

body.plan-page .price-card:hover h3[data-plan-title]::before,
body.plan-page .price-card:focus-within h3[data-plan-title]::before {
  transform: translateY(-1px);
  filter: brightness(1.12);
}

/* Live Paymenter no-plan button */
.price-card a.soon-button {
  cursor: not-allowed !important;
  pointer-events: none !important;
  opacity: .72;
  background: linear-gradient(135deg, rgba(90,164,255,.55), rgba(141,53,255,.55)) !important;
  box-shadow: none !important;
}
/* ==========================================================
   FIRENODES ADVANCED PLAN CARDS
   Replace/append in styles.css for category plan pages
   Works with paymenter-live-plans-advanced.js
   ========================================================== */

.fn-advanced-plan-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
  align-items: start;
}

.fn-loading-card,
.fn-plan-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  padding: 18px;
  background: linear-gradient(180deg, rgba(9,13,24,.96), rgba(3,5,12,.98));
  border: 1px solid rgba(91,141,255,.26);
  box-shadow: 0 18px 50px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.fn-plan-card:hover {
  transform: translateY(-5px) scale(1.01);
}

.fn-plan-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 100% 0%, rgba(77,167,255,.12), transparent 36%);
}

.fn-card-top {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
}

.fn-mini-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .7px;
  text-transform: uppercase;
  background: rgba(22,42,72,.72);
  border: 1px solid rgba(90,153,255,.34);
  color: #e9f3ff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.fn-price-panel {
  padding: 18px 16px;
  border-radius: 16px;
  text-align: center;
  background: linear-gradient(180deg, rgba(31,44,67,.78), rgba(18,26,43,.9));
  border: 1px solid rgba(114,165,255,.28);
}

.fn-price-main {
  font-size: 2rem;
  line-height: 1;
  font-weight: 950;
  color: #fff;
}

.fn-price-sub {
  margin-top: 6px;
  font-size: .95rem;
  color: rgba(255,255,255,.8);
}

.fn-plan-name {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  margin-bottom: 16px;
  border-radius: 999px;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #f8fbff;
  background: rgba(9,34,20,.45);
  border: 1px solid rgba(46,214,118,.28);
  box-shadow: 0 0 18px rgba(45,215,118,.12);
}

.fn-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.fn-stat-box {
  min-height: 64px;
  padding: 14px 12px;
  border-radius: 0;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  border: 1px solid rgba(255,255,255,.12);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

.fn-stat-box strong {
  font-size: 1.1rem;
  font-weight: 950;
  line-height: 1;
  color: #fff;
}

.fn-stat-box span {
  font-size: .9rem;
  color: rgba(255,255,255,.82);
  line-height: 1.1;
}

.fn-info-rows {
  display: grid;
  gap: 8px;
  margin: 8px 0 16px;
}

.fn-info-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 14px;
  border-radius: 0;
  background: rgba(37,49,69,.88);
  border-left: 3px solid rgba(91,153,255,.4);
}

.fn-info-row .label {
  font-size: .95rem;
  color: rgba(255,255,255,.88);
}

.fn-info-row .value {
  font-size: .95rem;
  font-weight: 900;
  color: #fff;
  text-align: right;
}

.fn-features-title {
  margin: 14px 0 10px;
  font-size: 1rem;
  font-weight: 900;
  color: #fff;
}

.fn-feature-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 20px;
  margin-bottom: 18px;
}

.fn-feature-columns ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 9px;
}

.fn-feature-columns li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: .95rem;
  color: rgba(255,255,255,.9);
}

.fn-feature-columns .tick {
  color: #28f08b;
  font-weight: 900;
  line-height: 1.2;
}

.fn-order-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 52px;
  border-radius: 14px;
  font-size: 1rem;
  font-weight: 950;
  color: #fff !important;
  text-decoration: none;
  background: linear-gradient(90deg, #2f7bff, #23a8ff);
  box-shadow: 0 10px 28px rgba(35,168,255,.26), inset 0 1px 0 rgba(255,255,255,.12);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.fn-order-button:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 34px rgba(35,168,255,.34), 0 0 20px rgba(35,168,255,.26);
}

.fn-order-button.disabled {
  pointer-events: none;
  opacity: .75;
}

.fn-empty-note,
.fn-loading-text {
  color: rgba(255,255,255,.84);
  font-size: .96rem;
  line-height: 1.5;
  margin-bottom: 16px;
}

/* Category themes */
.theme-minecraft-budget {
  border-color: rgba(75,147,255,.32);
  box-shadow: 0 20px 55px rgba(0,0,0,.46), 0 0 0 1px rgba(89,146,255,.12), 0 0 30px rgba(35,255,119,.06);
}
.theme-minecraft-budget .fn-price-main { color: #ffffff; }
.theme-minecraft-budget .fn-plan-name { background: rgba(10,55,30,.42); border-color: rgba(44,224,116,.32); }
.theme-minecraft-budget .fn-stat-box.stat-1 { background: linear-gradient(135deg, rgba(76,0,145,.45), rgba(51,23,125,.66)); border-color: rgba(161,82,255,.36); }
.theme-minecraft-budget .fn-stat-box.stat-2 { background: linear-gradient(135deg, rgba(0,80,36,.55), rgba(0,112,68,.72)); border-color: rgba(36,255,145,.36); }
.theme-minecraft-budget .fn-stat-box.stat-3 { background: linear-gradient(135deg, rgba(75,0,145,.40), rgba(39,24,113,.62)); border-color: rgba(178,109,255,.32); }
.theme-minecraft-budget .fn-stat-box.stat-4 { background: linear-gradient(135deg, rgba(102,45,0,.56), rgba(136,57,0,.78)); border-color: rgba(255,145,53,.34); }

.theme-minecraft-performance {
  border-color: rgba(255,133,44,.30);
  box-shadow: 0 20px 55px rgba(0,0,0,.46), 0 0 28px rgba(255,132,44,.10);
}
.theme-minecraft-performance .fn-plan-name { background: rgba(76,34,8,.44); border-color: rgba(255,143,54,.34); box-shadow: 0 0 18px rgba(255,106,0,.12); }
.theme-minecraft-performance .fn-stat-box.stat-1 { background: linear-gradient(135deg, rgba(100,0,0,.55), rgba(146,40,0,.7)); border-color: rgba(255,95,45,.32); }
.theme-minecraft-performance .fn-stat-box.stat-2 { background: linear-gradient(135deg, rgba(84,24,0,.6), rgba(160,66,0,.78)); border-color: rgba(255,170,60,.34); }
.theme-minecraft-performance .fn-stat-box.stat-3 { background: linear-gradient(135deg, rgba(118,0,30,.54), rgba(166,34,90,.72)); border-color: rgba(255,75,143,.32); }
.theme-minecraft-performance .fn-stat-box.stat-4 { background: linear-gradient(135deg, rgba(80,10,0,.55), rgba(140,35,0,.72)); border-color: rgba(255,111,0,.34); }
.theme-minecraft-performance .fn-order-button { background: linear-gradient(90deg, #ff7a18, #ff4f41); box-shadow: 0 10px 28px rgba(255,106,0,.28); }

.theme-bot-hosting {
  border-color: rgba(223,77,255,.32);
  box-shadow: 0 20px 55px rgba(0,0,0,.46), 0 0 28px rgba(199,72,255,.12);
}
.theme-bot-hosting .fn-plan-name { background: rgba(63,14,80,.42); border-color: rgba(219,76,255,.34); }
.theme-bot-hosting .fn-stat-box.stat-1 { background: linear-gradient(135deg, rgba(112,16,120,.58), rgba(160,44,172,.76)); border-color: rgba(236,112,255,.32); }
.theme-bot-hosting .fn-stat-box.stat-2 { background: linear-gradient(135deg, rgba(24,71,144,.56), rgba(43,126,212,.72)); border-color: rgba(72,190,255,.32); }
.theme-bot-hosting .fn-stat-box.stat-3 { background: linear-gradient(135deg, rgba(108,19,86,.58), rgba(200,52,148,.72)); border-color: rgba(255,92,187,.32); }
.theme-bot-hosting .fn-stat-box.stat-4 { background: linear-gradient(135deg, rgba(64,17,96,.58), rgba(122,53,210,.74)); border-color: rgba(185,94,255,.32); }
.theme-bot-hosting .fn-order-button { background: linear-gradient(90deg, #8d35ff, #ff3e8f); box-shadow: 0 10px 28px rgba(199,72,255,.26); }

.theme-vps-hosting {
  border-color: rgba(56,166,255,.32);
  box-shadow: 0 20px 55px rgba(0,0,0,.46), 0 0 28px rgba(48,152,255,.10);
}
.theme-vps-hosting .fn-plan-name { background: rgba(9,35,74,.42); border-color: rgba(72,172,255,.34); }
.theme-vps-hosting .fn-stat-box.stat-1 { background: linear-gradient(135deg, rgba(12,64,150,.58), rgba(22,115,255,.72)); border-color: rgba(88,172,255,.32); }
.theme-vps-hosting .fn-stat-box.stat-2 { background: linear-gradient(135deg, rgba(0,95,124,.56), rgba(0,155,177,.72)); border-color: rgba(68,229,255,.30); }
.theme-vps-hosting .fn-stat-box.stat-3 { background: linear-gradient(135deg, rgba(12,58,132,.56), rgba(14,99,196,.72)); border-color: rgba(72,174,255,.30); }
.theme-vps-hosting .fn-stat-box.stat-4 { background: linear-gradient(135deg, rgba(0,83,102,.56), rgba(0,134,153,.72)); border-color: rgba(73,227,255,.28); }
.theme-vps-hosting .fn-order-button { background: linear-gradient(90deg, #2377ff, #25b8ff); }

.theme-dedicated {
  border-color: rgba(178,181,201,.30);
  box-shadow: 0 20px 55px rgba(0,0,0,.46), 0 0 28px rgba(199,199,255,.08);
}
.theme-dedicated .fn-plan-name { background: rgba(45,49,67,.46); border-color: rgba(203,210,241,.26); }
.theme-dedicated .fn-stat-box.stat-1 { background: linear-gradient(135deg, rgba(56,62,84,.62), rgba(84,91,118,.78)); border-color: rgba(202,210,240,.24); }
.theme-dedicated .fn-stat-box.stat-2 { background: linear-gradient(135deg, rgba(41,47,66,.62), rgba(70,78,110,.78)); border-color: rgba(182,193,231,.24); }
.theme-dedicated .fn-stat-box.stat-3 { background: linear-gradient(135deg, rgba(56,52,76,.62), rgba(93,84,126,.78)); border-color: rgba(205,174,255,.26); }
.theme-dedicated .fn-stat-box.stat-4 { background: linear-gradient(135deg, rgba(39,44,60,.62), rgba(64,71,97,.78)); border-color: rgba(176,191,228,.24); }
.theme-dedicated .fn-order-button { background: linear-gradient(90deg, #616c88, #8d35ff); }

.theme-game-servers .fn-plan-name { background: rgba(46,29,82,.42); border-color: rgba(167,108,255,.34); }
.theme-game-servers .fn-order-button { background: linear-gradient(90deg, #ff8a18, #8d35ff); }

@media (max-width: 700px) {
  .fn-advanced-plan-grid { grid-template-columns: 1fr; }
  .fn-feature-columns { grid-template-columns: 1fr; }
}
/* ==========================================================
   FIRENODES ADVANCED PLAN CARDS V2
   smoother + realistic finish + radius 10px
   ========================================================== */

.fn-advanced-plan-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 22px;
  align-items: start;
}

.fn-loading-card,
.fn-plan-card {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  padding: 16px;
  background:
    radial-gradient(circle at 100% 0%, rgba(50,96,167,.14), transparent 35%),
    linear-gradient(180deg, rgba(6,11,23,.98), rgba(2,5,12,.99));
  border: 1px solid rgba(86,128,204,.28);
  box-shadow:
    0 16px 40px rgba(0,0,0,.46),
    inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.fn-plan-card:hover {
  transform: translateY(-4px);
  box-shadow:
    0 22px 48px rgba(0,0,0,.52),
    0 0 24px rgba(60,130,255,.10),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.fn-card-head {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: center;
  margin-bottom: 14px;
}

.fn-mini-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1px;
  text-transform: uppercase;
  background: rgba(19,39,69,.84);
  border: 1px solid rgba(85,138,228,.34);
  color: #f2f7ff;
}

.fn-head-plan-name {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #eef5ff;
  background: linear-gradient(180deg, rgba(13,27,48,.9), rgba(8,18,36,.94));
  border: 1px solid rgba(77,119,191,.26);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.fn-price-panel {
  padding: 16px 14px;
  border-radius: 10px;
  text-align: center;
  background: linear-gradient(180deg, rgba(24,37,59,.92), rgba(15,26,44,.96));
  border: 1px solid rgba(94,132,194,.28);
  margin-bottom: 14px;
}

.fn-price-main {
  font-size: 2rem;
  line-height: 1;
  font-weight: 950;
  color: #fff;
}

.fn-price-sub {
  margin-top: 7px;
  font-size: .95rem;
  color: rgba(255,255,255,.78);
}

.fn-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.fn-stat-box {
  min-height: 60px;
  padding: 12px 12px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.11);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.fn-stat-box strong {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
  color: #fff;
}

.fn-stat-box span {
  font-size: .9rem;
  color: rgba(255,255,255,.82);
  line-height: 1.1;
}

.fn-info-rows {
  display: grid;
  gap: 7px;
  margin: 10px 0 16px;
}

.fn-info-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 13px;
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(37,49,69,.88), rgba(29,41,60,.92));
  border: 1px solid rgba(89,111,145,.20);
}

.fn-info-row .label {
  font-size: .95rem;
  color: rgba(255,255,255,.88);
}

.fn-info-row .value {
  font-size: .95rem;
  font-weight: 900;
  color: #fff;
  text-align: right;
}

.fn-features-title {
  margin: 12px 0 10px;
  font-size: 1rem;
  font-weight: 900;
  color: #fff;
}

.fn-feature-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 20px;
  margin-bottom: 16px;
}

.fn-feature-columns ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 9px;
}

.fn-feature-columns li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: .93rem;
  color: rgba(255,255,255,.92);
}

.fn-feature-columns .tick {
  color: #2bf28c;
  font-weight: 900;
  line-height: 1.2;
}

.fn-order-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 50px;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 950;
  color: #fff !important;
  text-decoration: none;
  background: linear-gradient(90deg, #2d78ff, #23a6ff);
  box-shadow: 0 10px 24px rgba(35,168,255,.18), inset 0 1px 0 rgba(255,255,255,.10);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.fn-order-button:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 14px 28px rgba(35,168,255,.22), 0 0 16px rgba(35,168,255,.16);
}

.fn-order-button.disabled {
  pointer-events: none;
  opacity: .75;
}

.fn-empty-note,
.fn-loading-text {
  color: rgba(255,255,255,.84);
  font-size: .96rem;
  line-height: 1.5;
  margin-bottom: 16px;
}

.theme-minecraft-budget { border-color: rgba(73,141,255,.30); }
.theme-minecraft-budget .fn-head-plan-name { border-color: rgba(42,176,104,.30); background: linear-gradient(180deg, rgba(8,34,24,.86), rgba(7,27,20,.92)); }
.theme-minecraft-budget .fn-stat-box.stat-1 { background: linear-gradient(180deg, rgba(75,25,130,.62), rgba(57,18,103,.82)); border-color: rgba(162,92,255,.26); }
.theme-minecraft-budget .fn-stat-box.stat-2 { background: linear-gradient(180deg, rgba(8,89,55,.64), rgba(7,66,43,.84)); border-color: rgba(46,214,118,.28); }
.theme-minecraft-budget .fn-stat-box.stat-3 { background: linear-gradient(180deg, rgba(68,25,120,.60), rgba(50,18,96,.82)); border-color: rgba(162,92,255,.22); }
.theme-minecraft-budget .fn-stat-box.stat-4 { background: linear-gradient(180deg, rgba(115,55,8,.66), rgba(86,40,6,.86)); border-color: rgba(255,139,44,.24); }

.theme-minecraft-performance { border-color: rgba(255,129,47,.28); }
.theme-minecraft-performance .fn-head-plan-name { border-color: rgba(255,129,47,.28); background: linear-gradient(180deg, rgba(55,24,10,.86), rgba(33,15,7,.92)); }
.theme-minecraft-performance .fn-stat-box.stat-1 { background: linear-gradient(180deg, rgba(138,35,18,.66), rgba(102,24,11,.84)); border-color: rgba(255,112,76,.24); }
.theme-minecraft-performance .fn-stat-box.stat-2 { background: linear-gradient(180deg, rgba(92,37,8,.68), rgba(72,27,5,.86)); border-color: rgba(255,156,69,.24); }
.theme-minecraft-performance .fn-stat-box.stat-3 { background: linear-gradient(180deg, rgba(115,25,54,.66), rgba(79,15,35,.84)); border-color: rgba(255,88,143,.22); }
.theme-minecraft-performance .fn-stat-box.stat-4 { background: linear-gradient(180deg, rgba(120,52,8,.66), rgba(84,34,5,.84)); border-color: rgba(255,145,52,.20); }
.theme-minecraft-performance .fn-order-button { background: linear-gradient(90deg, #ff7a1a, #ff5b3d); box-shadow: 0 10px 24px rgba(255,106,0,.18); }

.theme-bot-hosting { border-color: rgba(199,72,255,.26); }
.theme-bot-hosting .fn-head-plan-name { border-color: rgba(199,72,255,.26); background: linear-gradient(180deg, rgba(39,14,60,.86), rgba(24,9,39,.92)); }
.theme-bot-hosting .fn-stat-box.stat-1 { background: linear-gradient(180deg, rgba(107,31,139,.66), rgba(78,23,102,.84)); border-color: rgba(218,98,255,.24); }
.theme-bot-hosting .fn-stat-box.stat-2 { background: linear-gradient(180deg, rgba(31,74,151,.64), rgba(19,55,112,.84)); border-color: rgba(74,163,255,.22); }
.theme-bot-hosting .fn-stat-box.stat-3 { background: linear-gradient(180deg, rgba(125,32,107,.66), rgba(86,20,73,.84)); border-color: rgba(255,98,190,.20); }
.theme-bot-hosting .fn-stat-box.stat-4 { background: linear-gradient(180deg, rgba(85,35,150,.66), rgba(54,18,97,.84)); border-color: rgba(181,106,255,.22); }
.theme-bot-hosting .fn-order-button { background: linear-gradient(90deg, #8d35ff, #d346ff); box-shadow: 0 10px 24px rgba(199,72,255,.18); }

.theme-vps-hosting { border-color: rgba(66,170,255,.28); }
.theme-vps-hosting .fn-head-plan-name { border-color: rgba(66,170,255,.26); background: linear-gradient(180deg, rgba(8,33,61,.86), rgba(6,23,44,.92)); }
.theme-vps-hosting .fn-stat-box.stat-1 { background: linear-gradient(180deg, rgba(20,77,157,.66), rgba(14,57,116,.84)); border-color: rgba(71,177,255,.22); }
.theme-vps-hosting .fn-stat-box.stat-2 { background: linear-gradient(180deg, rgba(10,97,120,.66), rgba(7,67,83,.84)); border-color: rgba(84,224,255,.20); }
.theme-vps-hosting .fn-stat-box.stat-3 { background: linear-gradient(180deg, rgba(17,69,145,.66), rgba(11,47,101,.84)); border-color: rgba(75,176,255,.22); }
.theme-vps-hosting .fn-stat-box.stat-4 { background: linear-gradient(180deg, rgba(10,86,116,.66), rgba(8,59,79,.84)); border-color: rgba(78,220,255,.20); }

.theme-dedicated { border-color: rgba(176,187,210,.24); }
.theme-dedicated .fn-head-plan-name { border-color: rgba(176,187,210,.22); background: linear-gradient(180deg, rgba(34,39,50,.86), rgba(23,28,38,.92)); }
.theme-dedicated .fn-stat-box.stat-1 { background: linear-gradient(180deg, rgba(66,73,92,.68), rgba(49,55,71,.84)); border-color: rgba(196,208,239,.18); }
.theme-dedicated .fn-stat-box.stat-2 { background: linear-gradient(180deg, rgba(54,61,82,.68), rgba(39,45,60,.84)); border-color: rgba(184,196,229,.18); }
.theme-dedicated .fn-stat-box.stat-3 { background: linear-gradient(180deg, rgba(76,67,102,.68), rgba(54,47,74,.84)); border-color: rgba(211,184,255,.18); }
.theme-dedicated .fn-stat-box.stat-4 { background: linear-gradient(180deg, rgba(47,54,72,.68), rgba(35,40,54,.84)); border-color: rgba(170,183,220,.18); }
.theme-dedicated .fn-order-button { background: linear-gradient(90deg, #67738d, #8d35ff); }

.theme-game-servers .fn-head-plan-name { border-color: rgba(164,107,255,.24); background: linear-gradient(180deg, rgba(42,24,70,.86), rgba(26,14,44,.92)); }
.theme-game-servers .fn-order-button { background: linear-gradient(90deg, #ff8a18, #8d35ff); }

@media (max-width: 700px) {
  .fn-advanced-plan-grid { grid-template-columns: 1fr; }
  .fn-feature-columns { grid-template-columns: 1fr; }
  .fn-card-head { grid-template-columns: 1fr; }
}
/* ==========================================================
   FIRENODES ADVANCED PLAN CARDS V3
   - removed top tag
   - fixed 4 features only
   - smoother realistic stat colors
   - radius 10px
   ========================================================== */

.fn-advanced-plan-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 22px;
  align-items: start;
}

.fn-loading-card,
.fn-plan-card {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  padding: 16px;
  background:
    radial-gradient(circle at 100% 0%, rgba(50,96,167,.12), transparent 35%),
    linear-gradient(180deg, rgba(6,11,23,.98), rgba(2,5,12,.99));
  border: 1px solid rgba(86,128,204,.28);
  box-shadow: 0 16px 40px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.fn-plan-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 48px rgba(0,0,0,.52), 0 0 20px rgba(60,130,255,.10), inset 0 1px 0 rgba(255,255,255,.06);
}

.fn-card-head {
  display: block;
  margin-bottom: 14px;
}

.fn-head-plan-name {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #eef5ff;
  background: linear-gradient(180deg, rgba(13,27,48,.9), rgba(8,18,36,.94));
  border: 1px solid rgba(77,119,191,.26);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.fn-price-panel {
  padding: 16px 14px;
  border-radius: 10px;
  text-align: center;
  background: linear-gradient(180deg, rgba(24,37,59,.92), rgba(15,26,44,.96));
  border: 1px solid rgba(94,132,194,.28);
  margin-bottom: 14px;
}

.fn-price-main {
  font-size: 2rem;
  line-height: 1;
  font-weight: 950;
  color: #fff;
}

.fn-price-sub {
  margin-top: 7px;
  font-size: .95rem;
  color: rgba(255,255,255,.78);
}

.fn-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.fn-stat-box {
  min-height: 68px;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.10);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.fn-stat-box strong {
  font-size: 1.12rem;
  font-weight: 950;
  line-height: 1;
}

.fn-stat-box span {
  font-size: .9rem;
  line-height: 1.12;
  opacity: .92;
}

.fn-info-rows {
  display: grid;
  gap: 8px;
  margin: 10px 0 16px;
}

.fn-info-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 13px;
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(37,49,69,.88), rgba(29,41,60,.92));
  border: 1px solid rgba(89,111,145,.20);
}

.fn-info-row .label {
  font-size: .95rem;
  color: rgba(255,255,255,.88);
}

.fn-info-row .value {
  font-size: .95rem;
  font-weight: 900;
  color: #fff;
  text-align: right;
}

.fn-features-title {
  margin: 12px 0 10px;
  font-size: 1rem;
  font-weight: 900;
  color: #fff;
}

.fn-feature-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 20px;
  margin-bottom: 16px;
}

.fn-feature-columns ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.fn-feature-columns li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: .95rem;
  color: rgba(255,255,255,.92);
}

.fn-feature-columns .tick {
  color: #2bf28c;
  font-weight: 900;
  line-height: 1.2;
}

.fn-order-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 50px;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 950;
  color: #fff !important;
  text-decoration: none;
  background: linear-gradient(90deg, #2d78ff, #23a6ff);
  box-shadow: 0 10px 24px rgba(35,168,255,.18), inset 0 1px 0 rgba(255,255,255,.10);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.fn-order-button:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 14px 28px rgba(35,168,255,.22), 0 0 16px rgba(35,168,255,.16);
}

.fn-order-button.disabled {
  pointer-events: none;
  opacity: .75;
}

.fn-empty-note,
.fn-loading-text {
  color: rgba(255,255,255,.84);
  font-size: .96rem;
  line-height: 1.5;
  margin-bottom: 16px;
}

.theme-minecraft-budget .fn-head-plan-name {
  border-color: rgba(42,176,104,.30);
  background: linear-gradient(180deg, rgba(8,34,24,.86), rgba(7,27,20,.92));
}
.theme-minecraft-budget .stat-1 { background: linear-gradient(180deg, rgba(84,34,136,.82), rgba(63,24,109,.94)); border-color: rgba(166,104,255,.22); }
.theme-minecraft-budget .stat-1 strong { color: #f4edff; } .theme-minecraft-budget .stat-1 span { color: #d9c8ff; }
.theme-minecraft-budget .stat-2 { background: linear-gradient(180deg, rgba(6,101,67,.82), rgba(5,73,49,.94)); border-color: rgba(64,220,142,.22); }
.theme-minecraft-budget .stat-2 strong { color: #ebfff5; } .theme-minecraft-budget .stat-2 span { color: #b7f5d5; }
.theme-minecraft-budget .stat-3 { background: linear-gradient(180deg, rgba(74,28,132,.82), rgba(58,22,104,.94)); border-color: rgba(165,98,255,.20); }
.theme-minecraft-budget .stat-3 strong { color: #f3ebff; } .theme-minecraft-budget .stat-3 span { color: #d8c7ff; }
.theme-minecraft-budget .stat-4 { background: linear-gradient(180deg, rgba(126,60,7,.84), rgba(95,43,5,.94)); border-color: rgba(255,155,61,.20); }
.theme-minecraft-budget .stat-4 strong { color: #fff4e8; } .theme-minecraft-budget .stat-4 span { color: #ffd3ab; }

.theme-minecraft-performance .fn-head-plan-name {
  border-color: rgba(255,129,47,.28);
  background: linear-gradient(180deg, rgba(55,24,10,.86), rgba(33,15,7,.92));
}
.theme-minecraft-performance .stat-1 { background: linear-gradient(180deg, rgba(148,41,18,.82), rgba(109,30,13,.94)); border-color: rgba(255,115,78,.20); }
.theme-minecraft-performance .stat-1 strong { color: #fff0eb; } .theme-minecraft-performance .stat-1 span { color: #ffc4b2; }
.theme-minecraft-performance .stat-2 { background: linear-gradient(180deg, rgba(109,46,7,.84), rgba(80,33,5,.94)); border-color: rgba(255,171,72,.20); }
.theme-minecraft-performance .stat-2 strong { color: #fff5ea; } .theme-minecraft-performance .stat-2 span { color: #ffdaad; }
.theme-minecraft-performance .stat-3 { background: linear-gradient(180deg, rgba(124,28,58,.84), rgba(87,19,41,.94)); border-color: rgba(255,93,150,.18); }
.theme-minecraft-performance .stat-3 strong { color: #fff0f5; } .theme-minecraft-performance .stat-3 span { color: #ffc4d7; }
.theme-minecraft-performance .stat-4 { background: linear-gradient(180deg, rgba(125,56,7,.84), rgba(92,39,5,.94)); border-color: rgba(255,154,61,.18); }
.theme-minecraft-performance .stat-4 strong { color: #fff3ea; } .theme-minecraft-performance .stat-4 span { color: #ffd0aa; }
.theme-minecraft-performance .fn-order-button { background: linear-gradient(90deg, #ff7a1a, #ff5b3d); }

.theme-bot-hosting .fn-head-plan-name { border-color: rgba(199,72,255,.26); background: linear-gradient(180deg, rgba(39,14,60,.86), rgba(24,9,39,.92)); }
.theme-bot-hosting .stat-1 { background: linear-gradient(180deg, rgba(107,31,139,.82), rgba(78,23,102,.94)); }
.theme-bot-hosting .stat-1 strong { color: #fff0ff; } .theme-bot-hosting .stat-1 span { color: #e8c5ff; }
.theme-bot-hosting .stat-2 { background: linear-gradient(180deg, rgba(31,74,151,.82), rgba(19,55,112,.94)); }
.theme-bot-hosting .stat-2 strong { color: #eef6ff; } .theme-bot-hosting .stat-2 span { color: #c4e0ff; }
.theme-bot-hosting .stat-3 { background: linear-gradient(180deg, rgba(125,32,107,.82), rgba(86,20,73,.94)); }
.theme-bot-hosting .stat-3 strong { color: #fff0f8; } .theme-bot-hosting .stat-3 span { color: #ffc5e1; }
.theme-bot-hosting .stat-4 { background: linear-gradient(180deg, rgba(85,35,150,.82), rgba(54,18,97,.94)); }
.theme-bot-hosting .stat-4 strong { color: #f6f0ff; } .theme-bot-hosting .stat-4 span { color: #d9c7ff; }
.theme-bot-hosting .fn-order-button { background: linear-gradient(90deg, #8d35ff, #d346ff); }

.theme-vps-hosting .fn-head-plan-name { border-color: rgba(66,170,255,.26); background: linear-gradient(180deg, rgba(8,33,61,.86), rgba(6,23,44,.92)); }
.theme-vps-hosting .stat-1 { background: linear-gradient(180deg, rgba(20,77,157,.82), rgba(14,57,116,.94)); } .theme-vps-hosting .stat-1 strong { color: #edf5ff; } .theme-vps-hosting .stat-1 span { color: #c6ddff; }
.theme-vps-hosting .stat-2 { background: linear-gradient(180deg, rgba(10,97,120,.82), rgba(7,67,83,.94)); } .theme-vps-hosting .stat-2 strong { color: #ebffff; } .theme-vps-hosting .stat-2 span { color: #c0f5ff; }
.theme-vps-hosting .stat-3 { background: linear-gradient(180deg, rgba(17,69,145,.82), rgba(11,47,101,.94)); } .theme-vps-hosting .stat-3 strong { color: #eef6ff; } .theme-vps-hosting .stat-3 span { color: #c7dcff; }
.theme-vps-hosting .stat-4 { background: linear-gradient(180deg, rgba(10,86,116,.82), rgba(8,59,79,.94)); } .theme-vps-hosting .stat-4 strong { color: #edffff; } .theme-vps-hosting .stat-4 span { color: #c8f3ff; }

.theme-dedicated .fn-head-plan-name { border-color: rgba(176,187,210,.22); background: linear-gradient(180deg, rgba(34,39,50,.86), rgba(23,28,38,.92)); }
.theme-dedicated .stat-1 { background: linear-gradient(180deg, rgba(66,73,92,.82), rgba(49,55,71,.94)); } .theme-dedicated .stat-1 strong { color: #f0f3fa; } .theme-dedicated .stat-1 span { color: #cfd6e7; }
.theme-dedicated .stat-2 { background: linear-gradient(180deg, rgba(54,61,82,.82), rgba(39,45,60,.94)); } .theme-dedicated .stat-2 strong { color: #eef2fa; } .theme-dedicated .stat-2 span { color: #c9d4e5; }
.theme-dedicated .stat-3 { background: linear-gradient(180deg, rgba(76,67,102,.82), rgba(54,47,74,.94)); } .theme-dedicated .stat-3 strong { color: #f3effa; } .theme-dedicated .stat-3 span { color: #d8cee8; }
.theme-dedicated .stat-4 { background: linear-gradient(180deg, rgba(47,54,72,.82), rgba(35,40,54,.94)); } .theme-dedicated .stat-4 strong { color: #eef2f8; } .theme-dedicated .stat-4 span { color: #ccd3e1; }
.theme-dedicated .fn-order-button { background: linear-gradient(90deg, #67738d, #8d35ff); }

.theme-game-servers .fn-head-plan-name { border-color: rgba(164,107,255,.24); background: linear-gradient(180deg, rgba(42,24,70,.86), rgba(26,14,44,.92)); }
.theme-game-servers .fn-order-button { background: linear-gradient(90deg, #ff8a18, #8d35ff); }

@media (max-width: 700px) {
  .fn-advanced-plan-grid { grid-template-columns: 1fr; }
  .fn-feature-columns { grid-template-columns: 1fr; }
}
/* ==========================================================
   FIRENODES ADVANCED PLAN CARDS V4
   - top name centered
   - glow + animation on cards
   - better parser support through JS
   ========================================================== */

@keyframes fnCardFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}

@keyframes fnGlowPulse {
  0%, 100% { box-shadow: 0 0 0 rgba(76,146,255,0); }
  50% { box-shadow: 0 0 24px rgba(76,146,255,.12); }
}

.fn-advanced-plan-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 22px;
  align-items: start;
}

.fn-loading-card,
.fn-plan-card {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  padding: 16px;
  background:
    radial-gradient(circle at 100% 0%, rgba(50,96,167,.12), transparent 35%),
    linear-gradient(180deg, rgba(6,11,23,.98), rgba(2,5,12,.99));
  border: 1px solid rgba(86,128,204,.28);
  box-shadow: 0 16px 40px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  animation: fnGlowPulse 4.5s ease-in-out infinite;
}

.fn-plan-card:hover {
  transform: translateY(-6px) scale(1.01);
  box-shadow: 0 24px 54px rgba(0,0,0,.56), 0 0 22px rgba(60,130,255,.14), inset 0 1px 0 rgba(255,255,255,.06);
}

.fn-card-head {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 14px;
}

.fn-head-plan-name {
  min-height: 42px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #eef5ff;
  background: linear-gradient(180deg, rgba(13,27,48,.9), rgba(8,18,36,.94));
  border: 1px solid rgba(77,119,191,.26);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 14px rgba(24,120,255,.08);
  animation: fnCardFloat 3.6s ease-in-out infinite;
}

.fn-price-panel {
  padding: 16px 14px;
  border-radius: 10px;
  text-align: center;
  background: linear-gradient(180deg, rgba(24,37,59,.92), rgba(15,26,44,.96));
  border: 1px solid rgba(94,132,194,.28);
  margin-bottom: 14px;
}

.fn-price-main {
  font-size: 2rem;
  line-height: 1;
  font-weight: 950;
  color: #fff;
}

.fn-price-sub {
  margin-top: 7px;
  font-size: .95rem;
  color: rgba(255,255,255,.78);
}

.fn-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.fn-stat-box {
  min-height: 68px;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.10);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 8px 18px rgba(0,0,0,.18);
  transition: transform .22s ease, box-shadow .22s ease;
}
.fn-stat-box:hover { transform: translateY(-2px); }

.fn-stat-box strong {
  font-size: 1.12rem;
  font-weight: 950;
  line-height: 1;
}

.fn-stat-box span {
  font-size: .9rem;
  line-height: 1.12;
  opacity: .94;
}

.fn-info-rows {
  display: grid;
  gap: 8px;
  margin: 10px 0 16px;
}

.fn-info-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 13px;
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(37,49,69,.88), rgba(29,41,60,.92));
  border: 1px solid rgba(89,111,145,.20);
}

.fn-info-row .label { font-size: .95rem; color: rgba(255,255,255,.88); }
.fn-info-row .value { font-size: .95rem; font-weight: 900; color: #fff; text-align: right; }

.fn-features-title { margin: 12px 0 10px; font-size: 1rem; font-weight: 900; color: #fff; }

.fn-feature-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 20px;
  margin-bottom: 16px;
}
.fn-feature-columns ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.fn-feature-columns li { display: flex; align-items: flex-start; gap: 8px; font-size: .95rem; color: rgba(255,255,255,.92); }
.fn-feature-columns .tick { color: #2bf28c; font-weight: 900; line-height: 1.2; }

.fn-order-button {
  display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px;
  border-radius: 10px; font-size: 1rem; font-weight: 950; color: #fff !important; text-decoration: none;
  background: linear-gradient(90deg, #2d78ff, #23a6ff);
  box-shadow: 0 10px 24px rgba(35,168,255,.18), inset 0 1px 0 rgba(255,255,255,.10);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.fn-order-button:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 14px 28px rgba(35,168,255,.22), 0 0 16px rgba(35,168,255,.16);
}
.fn-order-button.disabled { pointer-events: none; opacity: .75; }

.fn-empty-note,
.fn-loading-text { color: rgba(255,255,255,.84); font-size: .96rem; line-height: 1.5; margin-bottom: 16px; }

.theme-minecraft-budget .fn-head-plan-name {
  border-color: rgba(42,176,104,.30);
  background: linear-gradient(180deg, rgba(8,34,24,.86), rgba(7,27,20,.92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 18px rgba(32,180,92,.10);
}
.theme-minecraft-budget .stat-1 { background: linear-gradient(180deg, rgba(84,34,136,.82), rgba(63,24,109,.94)); border-color: rgba(166,104,255,.22); }
.theme-minecraft-budget .stat-1 strong { color: #f4edff; } .theme-minecraft-budget .stat-1 span { color: #d9c8ff; }
.theme-minecraft-budget .stat-2 { background: linear-gradient(180deg, rgba(6,101,67,.82), rgba(5,73,49,.94)); border-color: rgba(64,220,142,.22); }
.theme-minecraft-budget .stat-2 strong { color: #ebfff5; } .theme-minecraft-budget .stat-2 span { color: #b7f5d5; }
.theme-minecraft-budget .stat-3 { background: linear-gradient(180deg, rgba(74,28,132,.82), rgba(58,22,104,.94)); border-color: rgba(165,98,255,.20); }
.theme-minecraft-budget .stat-3 strong { color: #f3ebff; } .theme-minecraft-budget .stat-3 span { color: #d8c7ff; }
.theme-minecraft-budget .stat-4 { background: linear-gradient(180deg, rgba(126,60,7,.84), rgba(95,43,5,.94)); border-color: rgba(255,155,61,.20); }
.theme-minecraft-budget .stat-4 strong { color: #fff4e8; } .theme-minecraft-budget .stat-4 span { color: #ffd3ab; }

.theme-minecraft-performance .fn-head-plan-name {
  border-color: rgba(255,129,47,.28);
  background: linear-gradient(180deg, rgba(55,24,10,.86), rgba(33,15,7,.92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 18px rgba(255,120,45,.10);
}
.theme-minecraft-performance .stat-1 { background: linear-gradient(180deg, rgba(148,41,18,.82), rgba(109,30,13,.94)); border-color: rgba(255,115,78,.20); }
.theme-minecraft-performance .stat-1 strong { color: #fff0eb; } .theme-minecraft-performance .stat-1 span { color: #ffc4b2; }
.theme-minecraft-performance .stat-2 { background: linear-gradient(180deg, rgba(109,46,7,.84), rgba(80,33,5,.94)); border-color: rgba(255,171,72,.20); }
.theme-minecraft-performance .stat-2 strong { color: #fff5ea; } .theme-minecraft-performance .stat-2 span { color: #ffdaad; }
.theme-minecraft-performance .stat-3 { background: linear-gradient(180deg, rgba(124,28,58,.84), rgba(87,19,41,.94)); border-color: rgba(255,93,150,.18); }
.theme-minecraft-performance .stat-3 strong { color: #fff0f5; } .theme-minecraft-performance .stat-3 span { color: #ffc4d7; }
.theme-minecraft-performance .stat-4 { background: linear-gradient(180deg, rgba(125,56,7,.84), rgba(92,39,5,.94)); border-color: rgba(255,154,61,.18); }
.theme-minecraft-performance .stat-4 strong { color: #fff3ea; } .theme-minecraft-performance .stat-4 span { color: #ffd0aa; }
.theme-minecraft-performance .fn-order-button { background: linear-gradient(90deg, #ff7a1a, #ff5b3d); }

.theme-bot-hosting .fn-head-plan-name { border-color: rgba(199,72,255,.26); background: linear-gradient(180deg, rgba(39,14,60,.86), rgba(24,9,39,.92)); }
.theme-bot-hosting .stat-1 { background: linear-gradient(180deg, rgba(107,31,139,.82), rgba(78,23,102,.94)); } .theme-bot-hosting .stat-1 strong { color: #fff0ff; } .theme-bot-hosting .stat-1 span { color: #e8c5ff; }
.theme-bot-hosting .stat-2 { background: linear-gradient(180deg, rgba(31,74,151,.82), rgba(19,55,112,.94)); } .theme-bot-hosting .stat-2 strong { color: #eef6ff; } .theme-bot-hosting .stat-2 span { color: #c4e0ff; }
.theme-bot-hosting .stat-3 { background: linear-gradient(180deg, rgba(125,32,107,.82), rgba(86,20,73,.94)); } .theme-bot-hosting .stat-3 strong { color: #fff0f8; } .theme-bot-hosting .stat-3 span { color: #ffc5e1; }
.theme-bot-hosting .stat-4 { background: linear-gradient(180deg, rgba(85,35,150,.82), rgba(54,18,97,.94)); } .theme-bot-hosting .stat-4 strong { color: #f6f0ff; } .theme-bot-hosting .stat-4 span { color: #d9c7ff; }
.theme-bot-hosting .fn-order-button { background: linear-gradient(90deg, #8d35ff, #d346ff); }

.theme-vps-hosting .fn-head-plan-name { border-color: rgba(66,170,255,.26); background: linear-gradient(180deg, rgba(8,33,61,.86), rgba(6,23,44,.92)); }
.theme-vps-hosting .stat-1 { background: linear-gradient(180deg, rgba(20,77,157,.82), rgba(14,57,116,.94)); } .theme-vps-hosting .stat-1 strong { color: #edf5ff; } .theme-vps-hosting .stat-1 span { color: #c6ddff; }
.theme-vps-hosting .stat-2 { background: linear-gradient(180deg, rgba(10,97,120,.82), rgba(7,67,83,.94)); } .theme-vps-hosting .stat-2 strong { color: #ebffff; } .theme-vps-hosting .stat-2 span { color: #c0f5ff; }
.theme-vps-hosting .stat-3 { background: linear-gradient(180deg, rgba(17,69,145,.82), rgba(11,47,101,.94)); } .theme-vps-hosting .stat-3 strong { color: #eef6ff; } .theme-vps-hosting .stat-3 span { color: #c7dcff; }
.theme-vps-hosting .stat-4 { background: linear-gradient(180deg, rgba(10,86,116,.82), rgba(8,59,79,.94)); } .theme-vps-hosting .stat-4 strong { color: #edffff; } .theme-vps-hosting .stat-4 span { color: #c8f3ff; }

.theme-dedicated .fn-head-plan-name { border-color: rgba(176,187,210,.22); background: linear-gradient(180deg, rgba(34,39,50,.86), rgba(23,28,38,.92)); }
.theme-dedicated .stat-1 { background: linear-gradient(180deg, rgba(66,73,92,.82), rgba(49,55,71,.94)); } .theme-dedicated .stat-1 strong { color: #f0f3fa; } .theme-dedicated .stat-1 span { color: #cfd6e7; }
.theme-dedicated .stat-2 { background: linear-gradient(180deg, rgba(54,61,82,.82), rgba(39,45,60,.94)); } .theme-dedicated .stat-2 strong { color: #eef2fa; } .theme-dedicated .stat-2 span { color: #c9d4e5; }
.theme-dedicated .stat-3 { background: linear-gradient(180deg, rgba(76,67,102,.82), rgba(54,47,74,.94)); } .theme-dedicated .stat-3 strong { color: #f3effa; } .theme-dedicated .stat-3 span { color: #d8cee8; }
.theme-dedicated .stat-4 { background: linear-gradient(180deg, rgba(47,54,72,.82), rgba(35,40,54,.94)); } .theme-dedicated .stat-4 strong { color: #eef2f8; } .theme-dedicated .stat-4 span { color: #ccd3e1; }
.theme-dedicated .fn-order-button { background: linear-gradient(90deg, #67738d, #8d35ff); }

.theme-game-servers .fn-head-plan-name { border-color: rgba(164,107,255,.24); background: linear-gradient(180deg, rgba(42,24,70,.86), rgba(26,14,44,.92)); }
.theme-game-servers .fn-order-button { background: linear-gradient(90deg, #ff8a18, #8d35ff); }

@media (max-width: 700px) {
  .fn-advanced-plan-grid { grid-template-columns: 1fr; }
  .fn-feature-columns { grid-template-columns: 1fr; }
}

/* ==========================================================
   FIRENODES PREMIUM CHECKOUT TRANSITION V2
   ========================================================== */

body.fn-checkout-open {
  overflow: hidden !important;
}

.fn-order-button {
  position: relative;
  overflow: hidden;
}

.fn-order-button::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 -145%;
  width: 82%;
  pointer-events: none;
  transform: skewX(-22deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
  transition: left .7s ease;
}

.fn-order-button:hover::after {
  left: 150%;
}

.fn-order-button.fn-order-loading {
  pointer-events: none;
  background: linear-gradient(90deg, #ff5a18, #ff3e77, #8844ff) !important;
  box-shadow: 0 0 24px rgba(255,81,35,.34), 0 0 46px rgba(136,68,255,.18) !important;
  animation: fnOrderButtonPulse .9s ease-in-out infinite alternate;
}

.fn-card-checkout-active {
  z-index: 10;
  border-color: rgba(255,111,36,.68) !important;
  box-shadow:
    0 24px 70px rgba(0,0,0,.62),
    0 0 28px rgba(255,91,30,.28),
    0 0 52px rgba(135,61,255,.16) !important;
  transform: translateY(-6px) scale(1.018) !important;
}

#fn-checkout-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  background: rgba(2,4,10,.72);
  backdrop-filter: blur(14px) saturate(1.08);
  transition:
    opacity .38s ease,
    visibility .38s ease,
    background .42s ease,
    backdrop-filter .42s ease;
}

#fn-checkout-overlay.show {
  visibility: visible;
  opacity: 1;
  pointer-events: all;
}

#fn-checkout-overlay.leaving {
  background: rgba(1,2,6,.96);
  backdrop-filter: blur(22px) saturate(.88);
}

.fn-checkout-backdrop-glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 45%, rgba(57,121,255,.18), transparent 27%),
    radial-gradient(circle at 35% 58%, rgba(143,54,255,.15), transparent 34%),
    radial-gradient(circle at 66% 58%, rgba(255,82,24,.12), transparent 31%);
  animation: fnCheckoutBackdrop 2.8s ease-in-out infinite alternate;
  transition: opacity .4s ease, transform .4s ease;
}

#fn-checkout-overlay.leaving .fn-checkout-backdrop-glow {
  opacity: .24;
  transform: scale(1.08);
}

.fn-checkout-modal {
  position: relative;
  z-index: 3;
  width: min(440px, 94vw);
  padding: 32px 28px 27px;
  text-align: center;
  border-radius: 18px;
  border: 1px solid rgba(92,139,222,.34);
  background:
    radial-gradient(circle at 50% 0%, rgba(94,137,255,.14), transparent 38%),
    linear-gradient(180deg, rgba(14,21,39,.985), rgba(5,9,19,.995));
  box-shadow:
    0 30px 90px rgba(0,0,0,.70),
    0 0 32px rgba(48,145,255,.20),
    0 0 68px rgba(141,53,255,.11),
    inset 0 1px 0 rgba(255,255,255,.07);
  transform: translateY(20px) scale(.94);
  opacity: 0;
  transition:
    transform .44s cubic-bezier(.2,.8,.2,1),
    opacity .34s ease,
    filter .38s ease;
}

#fn-checkout-overlay.show .fn-checkout-modal {
  transform: translateY(0) scale(1);
  opacity: 1;
}

#fn-checkout-overlay.leaving .fn-checkout-modal {
  transform: translateY(-8px) scale(.965);
  opacity: 0;
  filter: blur(4px);
}

.fn-checkout-logo-ring {
  width: 104px;
  height: 104px;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 24px;
  padding: 5px;
  background: conic-gradient(from 0deg, #ff6a18, #ff3e8f, #8d35ff, #2d8cff, #ff6a18);
  box-shadow: 0 0 26px rgba(255,96,24,.28), 0 0 48px rgba(141,53,255,.18);
  animation: fnCheckoutRing 4.2s linear infinite;
}

.fn-checkout-logo {
  display: block;
  width: 94px;
  height: 94px;
  object-fit: cover;
  border-radius: 19px;
  background: #05070d;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 8px 22px rgba(0,0,0,.48);
  animation: fnCheckoutLogoFloat 1.7s ease-in-out infinite alternate;
}

.fn-checkout-modal h2 {
  margin: 0 0 9px;
  font-size: 1.44rem;
  font-weight: 950;
  color: #fff;
  text-shadow: 0 0 15px rgba(69,152,255,.25);
}

.fn-checkout-modal p {
  margin: 0 auto 23px;
  max-width: 340px;
  color: rgba(225,236,255,.76);
  font-size: .95rem;
  line-height: 1.5;
}

.fn-checkout-progress {
  width: 100%;
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.075);
  box-shadow: inset 0 2px 7px rgba(0,0,0,.54);
}

.fn-checkout-progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6a18 0%, #ff3e77 36%, #8d35ff 68%, #2d9dff 100%);
  box-shadow: 0 0 16px rgba(255,72,88,.48), 0 0 22px rgba(80,142,255,.30);
  transform-origin: left center;
}

#fn-checkout-overlay.show .fn-checkout-progress span {
  animation: fnCheckoutProgress var(--fn-progress-ms, 2300ms) cubic-bezier(.16,.84,.22,1) forwards;
}

#fn-checkout-overlay.complete .fn-checkout-progress span {
  box-shadow: 0 0 18px rgba(57,239,160,.56), 0 0 26px rgba(67,159,255,.30);
}

.fn-checkout-status {
  margin-top: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: rgba(216,230,255,.76);
  font-size: .83rem;
  font-weight: 700;
}

.fn-secure-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #31f49a;
  box-shadow: 0 0 12px rgba(49,244,154,.72);
  animation: fnSecureDot .85s ease-in-out infinite alternate;
}

.fn-checkout-particles {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.fn-checkout-particles i {
  position: absolute;
  bottom: -30px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #45a2ff;
  box-shadow: 0 0 12px rgba(69,162,255,.82);
  animation: fnCheckoutParticle 2.7s ease-in infinite;
}

.fn-checkout-particles i:nth-child(1) { left: 12%; animation-delay: 0s; }
.fn-checkout-particles i:nth-child(2) { left: 24%; animation-delay: .35s; background: #9e54ff; }
.fn-checkout-particles i:nth-child(3) { left: 37%; animation-delay: .78s; background: #ff6545; }
.fn-checkout-particles i:nth-child(4) { left: 49%; animation-delay: .18s; }
.fn-checkout-particles i:nth-child(5) { left: 61%; animation-delay: .57s; background: #a35aff; }
.fn-checkout-particles i:nth-child(6) { left: 73%; animation-delay: .95s; background: #ff7e27; }
.fn-checkout-particles i:nth-child(7) { left: 84%; animation-delay: .42s; background: #ff3e8f; }
.fn-checkout-particles i:nth-child(8) { left: 92%; animation-delay: 1.1s; }

@keyframes fnOrderButtonPulse {
  from { filter: brightness(1); }
  to { filter: brightness(1.14); }
}

@keyframes fnCheckoutBackdrop {
  from { transform: scale(.985); opacity: .72; }
  to { transform: scale(1.045); opacity: 1; }
}

@keyframes fnCheckoutRing {
  to { transform: rotate(360deg); }
}

@keyframes fnCheckoutLogoFloat {
  from { transform: scale(.985); filter: brightness(.96); }
  to { transform: scale(1.02); filter: brightness(1.05); }
}

@keyframes fnCheckoutProgress {
  0% { width: 0%; }
  18% { width: 14%; }
  54% { width: 58%; }
  82% { width: 86%; }
  100% { width: 100%; }
}

@keyframes fnSecureDot {
  from { opacity: .55; transform: scale(.8); }
  to { opacity: 1; transform: scale(1.1); }
}

@keyframes fnCheckoutParticle {
  0% { transform: translateY(0) scale(.65); opacity: 0; }
  20% { opacity: .8; }
  100% { transform: translateY(-108vh) scale(1.15); opacity: 0; }
}

@media (max-width: 560px) {
  .fn-checkout-modal { padding: 27px 20px 23px; }
  .fn-checkout-modal h2 { font-size: 1.22rem; }
  .fn-checkout-logo-ring { width: 90px; height: 90px; }
  .fn-checkout-logo { width: 80px; height: 80px; }
}

@media (prefers-reduced-motion: reduce) {
  #fn-checkout-overlay *,
  .fn-order-button,
  .fn-card-checkout-active {
    animation: none !important;
    transition-duration: .01ms !important;
  }
}

/* ==========================================================
   FIRENODES CHECKOUT MIDLINE ENHANCEMENT
   ========================================================== */

.fn-checkout-midline {
    width: min(260px, 84%);
    height: 4px;
    margin: 10px auto 14px;
    position: relative;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    box-shadow:
        inset 0 1px 3px rgba(0,0,0,0.45),
        0 0 8px rgba(76, 140, 255, 0.08);
}

.fn-checkout-midline span {
    display: block;
    width: 34%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(
        90deg,
        rgba(255,106,24,0.15) 0%,
        rgba(255,106,24,0.95) 18%,
        rgba(255,62,143,1) 48%,
        rgba(141,53,255,1) 72%,
        rgba(45,156,255,0.95) 100%
    );
    box-shadow:
        0 0 10px rgba(255,106,24,0.35),
        0 0 18px rgba(141,53,255,0.25),
        0 0 24px rgba(45,156,255,0.20);
    animation: fnCheckoutMidlineSweep 1.9s cubic-bezier(.22,.61,.36,1) infinite;
}

.fn-checkout-progress {
    width: 100%;
    height: 10px;
    overflow: hidden;
    position: relative;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    box-shadow:
        inset 0 1px 5px rgba(0,0,0,0.48),
        0 0 10px rgba(28, 65, 120, 0.12);
}

.fn-checkout-progress span {
    display: block;
    width: 0;
    height: 100%;
    position: relative;
    border-radius: inherit;
    background: linear-gradient(
        90deg,
        #ff6a18 0%,
        #ff5a36 15%,
        #ff3e8f 40%,
        #8d35ff 68%,
        #2d9dff 100%
    );
    box-shadow:
        0 0 14px rgba(255,106,24,0.35),
        0 0 20px rgba(141,53,255,0.25),
        0 0 28px rgba(45,157,255,0.22);
    animation:
        fnCheckoutProgressSmooth 2.4s cubic-bezier(.22,1,.36,1) forwards;
}

.fn-checkout-progress span::after {
    content: "";
    position: absolute;
    top: 0;
    right: -18px;
    width: 36px;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,0.55) 50%,
        rgba(255,255,255,0) 100%
    );
    filter: blur(1px);
    opacity: 0.9;
}

@keyframes fnCheckoutMidlineSweep {
    0% {
        transform: translateX(-130%);
        opacity: 0.35;
    }
    20% {
        opacity: 1;
    }
    100% {
        transform: translateX(325%);
        opacity: 0.55;
    }
}

@keyframes fnCheckoutProgressSmooth {
    0% {
        width: 0%;
    }
    20% {
        width: 16%;
    }
    45% {
        width: 42%;
    }
    70% {
        width: 74%;
    }
    88% {
        width: 92%;
    }
    100% {
        width: 100%;
    }
}


/* ==========================================================
   FORCE ANIMATED CHECKOUT BAR FIX
   ========================================================== */

.fn-checkout-progress {
    width: 100% !important;
    height: 8px !important;
    margin-top: 14px !important;
    overflow: hidden !important;
    position: relative !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,0.08) !important;
    box-shadow:
        inset 0 1px 4px rgba(0,0,0,0.45),
        0 0 10px rgba(80,120,255,0.08) !important;
}

.fn-checkout-progress span {
    display: block !important;
    width: 0% !important;
    height: 100% !important;
    position: relative !important;
    border-radius: 999px !important;
    background: linear-gradient(
        90deg,
        #ff7a18 0%,
        #ff5a3d 20%,
        #ff3e8f 45%,
        #8d35ff 72%,
        #34a8ff 100%
    ) !important;
    background-size: 200% 100% !important;
    box-shadow:
        0 0 12px rgba(255,106,24,0.30),
        0 0 18px rgba(141,53,255,0.22),
        0 0 24px rgba(52,168,255,0.18) !important;

    animation:
        fnCheckoutBarFillSmooth 3.0s cubic-bezier(.22,1,.36,1) forwards,
        fnCheckoutBarGradientMove 1.4s linear infinite !important;
}

.fn-checkout-progress span::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: -25% !important;
    width: 26% !important;
    height: 100% !important;
    border-radius: 999px !important;
    background: linear-gradient(
        90deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,0.72) 45%,
        rgba(255,255,255,0) 100%
    ) !important;
    filter: blur(1px) !important;
    animation: fnCheckoutBarShine 1.35s linear infinite !important;
}

.fn-checkout-progress span::after {
    content: "" !important;
    position: absolute !important;
    top: -1px !important;
    right: -10px !important;
    width: 18px !important;
    height: 10px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,0.75) !important;
    filter: blur(3px) !important;
    opacity: 0.9 !important;
}

@keyframes fnCheckoutBarFillSmooth {
    0%   { width: 0%; }
    12%  { width: 8%; }
    28%  { width: 24%; }
    46%  { width: 48%; }
    64%  { width: 68%; }
    82%  { width: 86%; }
    92%  { width: 95%; }
    100% { width: 100%; }
}

@keyframes fnCheckoutBarGradientMove {
    0%   { background-position: 0% 50%; }
    100% { background-position: 200% 50%; }
}

@keyframes fnCheckoutBarShine {
    0%   { left: -28%; opacity: 0; }
    18%  { opacity: 0.9; }
    100% { left: 118%; opacity: 0; }
}

