:root {
  color-scheme: dark;
  --ink: #09090b;
  --surface: #111114;
  --surface-2: #18181c;
  --line: rgba(255, 255, 255, 0.12);
  --muted: #aaaab4;
  --paper: #f4f2ef;
  --red: #ef233c;
  --red-bright: #ff304d;
  --red-deep: #8d091d;
  --radius: 1.25rem;
  --max: 76rem;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ink);
  color: var(--paper);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 20;
  opacity: .18;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E");
}
.cursor-glow { position: fixed; z-index: 1; width: 28rem; height: 28rem; left: 0; top: 0; pointer-events: none; opacity: .12; border-radius: 50%; background: radial-gradient(circle, var(--red), transparent 66%); filter: blur(12px); transform: translate(-50%,-50%); transition: opacity .3s ease; }
a { color: inherit; }
img { display: block; max-width: 100%; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
:focus-visible { outline: 3px solid var(--red-bright); outline-offset: 4px; }
.skip-link { position: fixed; left: 1rem; top: -5rem; z-index: 100; background: var(--paper); color: var(--ink); padding: .7rem 1rem; }
.skip-link:focus { top: 1rem; }

.site-header {
  position: fixed;
  z-index: 30;
  inset: 0 0 auto;
  height: 5.25rem;
  padding: 0 max(1.25rem, calc((100vw - var(--max)) / 2));
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 2rem;
  border-bottom: 1px solid transparent;
  transition: background .25s ease, border-color .25s ease, backdrop-filter .25s ease;
}
.site-header.scrolled { background: rgba(9, 9, 11, .82); border-color: var(--line); backdrop-filter: blur(18px); }
.server-ticker { position: absolute; z-index: 4; top: 5.25rem; left: 0; width: 100%; overflow: hidden; border-block: 1px solid rgba(255,255,255,.12); background: var(--red); color: white; }
.ticker-track { width: max-content; display: flex; align-items: center; gap: 1.2rem; padding: .45rem 0; animation: ticker 26s linear infinite; font-size: .67rem; font-weight: 900; letter-spacing: .18em; }
.ticker-track i { font-size: .45rem; opacity: .65; }
@keyframes ticker { to { transform: translateX(-50%); } }
.brand { display: inline-flex; align-items: center; gap: .72rem; text-decoration: none; font-weight: 900; letter-spacing: .11em; }
.brand-logo { width: 2.25rem; height: 2.25rem; object-fit: cover; border: 1px solid rgba(255,255,255,.2); box-shadow: 0 0 2rem rgba(239,35,60,.38); transition: transform .25s ease, border-color .25s ease; }
.brand:hover .brand-logo { transform: rotate(-3deg) scale(1.07); border-color: var(--red-bright); }
.nav { display: flex; align-items: center; gap: 2rem; }
.nav a { color: #d4d4da; text-decoration: none; font-size: .88rem; font-weight: 650; }
.nav a:hover { color: white; }
.header-cta { justify-self: end; }
.menu-toggle { display: none; border: 0; background: transparent; padding: .5rem; }
.menu-toggle span { display: block; width: 1.4rem; height: 2px; margin: .26rem 0; background: white; }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .85rem;
  min-height: 3.35rem;
  padding: .8rem 1.25rem;
  border: 1px solid var(--red);
  background: var(--red);
  color: white;
  text-decoration: none;
  font-weight: 780;
  font-size: .9rem;
  letter-spacing: .02em;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.button:hover { transform: translateY(-2px); background: var(--red-bright); box-shadow: 0 12px 34px rgba(239,35,60,.28); }
.button:active { transform: translateY(1px) scale(.97); }
.button-small { min-height: 2.75rem; padding: .6rem 1rem; font-size: .8rem; }
.button-light { background: var(--paper); border-color: var(--paper); color: var(--ink); }
.button-light:hover { background: white; box-shadow: 0 12px 34px rgba(0,0,0,.2); }

.hero { position: relative; min-height: 55rem; display: grid; align-items: center; overflow: hidden; isolation: isolate; background: #08080a; }
.hero-media, .hero-shade { position: absolute; inset: 0; }
.hero-media { overflow: hidden; background: radial-gradient(circle at 76% 36%, rgba(185,4,32,.25), transparent 32%), linear-gradient(125deg, #08080a 35%, #17070c 100%); }
.hero-media::before { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(105deg, transparent 0 5rem, rgba(255,255,255,.018) 5rem 5.08rem), radial-gradient(ellipse at 78% 52%, transparent 0 20%, #08080a 68%); z-index: 2; }
.hero-media::after { content: ""; position: absolute; width: 48rem; height: 48rem; right: -16rem; top: 7rem; border: 1px solid rgba(239,35,60,.18); border-radius: 50%; box-shadow: 0 0 0 8rem rgba(239,35,60,.025), 0 0 0 16rem rgba(239,35,60,.015); z-index: 2; }
.hero-media img { position: absolute; width: min(58vw, 56rem); height: min(58vw, 56rem); right: -2vw; top: 50%; object-fit: cover; filter: saturate(.88) contrast(1.14) brightness(.76); transform: translateY(-50%) rotate(1.5deg) scale(1.04); opacity: .92; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 25%, #000 86%, transparent 100%), linear-gradient(0deg, transparent 0%, #000 18%, #000 88%, transparent 100%); -webkit-mask-composite: source-in; mask-image: linear-gradient(90deg, transparent 0%, #000 25%, #000 86%, transparent 100%); }
.hero-ghost-word { position: absolute; z-index: 3; right: -3rem; bottom: 3rem; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.1); font-size: clamp(8rem, 19vw, 20rem); line-height: .7; font-weight: 1000; font-style: italic; letter-spacing: -.09em; transform: skew(-7deg); user-select: none; }
.hero-shade { z-index: 1; background: linear-gradient(90deg, rgba(6,6,8,.99) 0%, rgba(6,6,8,.93) 35%, rgba(6,6,8,.2) 69%, rgba(6,6,8,.48) 100%), linear-gradient(0deg, #09090b 0%, transparent 34%); }
.hero-content { position: relative; z-index: 2; width: min(var(--max), calc(100% - 2.5rem)); margin: 4rem auto 0; }
.eyebrow, .section-number { color: #c7c7ce; font-size: .73rem; font-weight: 760; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: .65rem; }
.eyebrow span { width: .55rem; height: .55rem; background: var(--red); box-shadow: 0 0 1rem var(--red); }
.eyebrow b { color: #67e896; font-size: .66rem; letter-spacing: .08em; }
.hero h1 { margin: 1.25rem 0 1.3rem; max-width: 52rem; font-size: clamp(4.1rem, 9vw, 8rem); line-height: .84; letter-spacing: -.075em; text-transform: uppercase; font-weight: 950; }
.hero h1 em { display: inline-block; color: var(--red-bright); font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; font-weight: 900; font-style: italic; text-transform: uppercase; letter-spacing: -.06em; transform: skew(-6deg); text-shadow: .035em .035em 0 #6e0717, 0 0 2rem rgba(239,35,60,.28); }
.hero-content > p { max-width: 37rem; color: #c3c3cb; font-size: 1.1rem; }
.hero-actions { display: flex; align-items: center; gap: 1.5rem; margin-top: 2rem; }
.text-link { font-weight: 720; text-decoration: none; font-size: .9rem; }
.text-link span { color: var(--red-bright); margin-left: .45rem; }
.quick-stats { display: flex; gap: 0; list-style: none; padding: 0; margin: 4rem 0 0; }
.quick-stats li { min-width: 9.5rem; padding: 0 1.5rem; border-left: 1px solid var(--line); display: grid; }
.quick-stats li:first-child { padding-left: 0; border-left: 0; }
.quick-stats strong { font-size: 1.1rem; }
.quick-stats span { color: var(--muted); font-size: .78rem; }
.server-card { position: absolute; z-index: 3; right: max(1.25rem, calc((100vw - var(--max)) / 2)); bottom: 4.8rem; width: 22rem; padding: .85rem; display: grid; grid-template-columns: 4rem 1fr auto; align-items: center; gap: .85rem; background: rgba(17,17,20,.84); border: 1px solid var(--line); backdrop-filter: blur(16px); }
.server-card > img { width: 4rem; height: 4rem; aspect-ratio: 1; object-fit: cover; }
.server-card h2 { margin: .15rem 0 0; font-size: 1rem; }
.server-card p { margin: 0; color: var(--muted); font-size: .72rem; }
.server-card > a { width: 2rem; height: 2rem; display: grid; place-items: center; background: var(--red); text-decoration: none; }
.live { display: flex; align-items: center; gap: .4rem; color: #cfcfd5; font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.live i { width: .45rem; height: .45rem; border-radius: 50%; background: #4ade80; box-shadow: 0 0 .7rem #4ade80; }

.section { width: min(var(--max), calc(100% - 2.5rem)); margin: 0 auto; padding: 8.5rem 0; }
.section-number { margin-bottom: 2rem; color: #7f7f89; }
.manifesto { display: grid; grid-template-columns: .34fr 1fr; gap: 3rem; }
.kicker { color: var(--red-bright); font-family: Georgia, serif; font-style: italic; font-size: 1.2rem; }
.manifesto h2, .section-heading h2, .vip h2, .safety h2, .faq h2 { margin: .5rem 0 2.2rem; font-size: clamp(2.6rem, 5.4vw, 5.3rem); line-height: .96; letter-spacing: -.055em; }
.two-col-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; border-top: 1px solid var(--line); padding-top: 2rem; }
.two-col-copy p { color: var(--muted); margin: 0; }

.experiences { border-top: 1px solid var(--line); }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 2rem; margin-bottom: 3rem; }
.section-heading > p { max-width: 22rem; color: var(--muted); }
.experience-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 1rem; }
.experience-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  grid-column: span 4;
  min-height: 21.5rem;
  padding: 1.4rem;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
  background: var(--surface);
  box-shadow: 0 18px 45px rgba(0,0,0,.24);
  transition: border-color .3s ease, transform .3s ease, box-shadow .3s ease;
}
.experience-card:nth-child(4), .experience-card:nth-child(5), .experience-card:nth-child(6) { grid-column: span 4; }
.experience-card::before { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(9,9,11,.08) 0%, rgba(9,9,11,.18) 28%, rgba(9,9,11,.86) 72%, #09090b 100%), linear-gradient(120deg, rgba(239,35,60,.22), transparent 58%); }
.experience-card:hover { transform: translateY(-5px); border-color: rgba(255,48,77,.72); box-shadow: 0 26px 60px rgba(0,0,0,.36), 0 0 0 1px rgba(239,35,60,.12); }
.card-photo { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.88) contrast(1.05); transition: transform .65s cubic-bezier(.2,.8,.2,1), filter .35s ease; }
.experience-card:hover .card-photo { transform: scale(1.055); filter: saturate(1) contrast(1.08); }
.feature-card { border-color: rgba(255,48,77,.7); }
.feature-card::before { background: linear-gradient(180deg, rgba(110,0,18,.08) 0%, rgba(90,0,15,.22) 30%, rgba(35,3,9,.9) 74%, #130207 100%), linear-gradient(125deg, rgba(255,48,77,.42), transparent 58%); }
.card-index, .card-icon, .experience-card h3, .experience-card p { position: relative; z-index: 2; }
.card-index { color: rgba(255,255,255,.68); font-size: .72rem; font-weight: 800; letter-spacing: .15em; }
.card-icon { margin: 2.25rem 0 auto; width: 3.4rem; height: 3.4rem; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.28); border-radius: .8rem; background: rgba(9,9,11,.34); backdrop-filter: blur(10px); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); font-size: 1.35rem; }
.experience-card h3 { margin: 1.5rem 0 .4rem; color: #fff; font-size: 1.35rem; text-shadow: 0 2px 18px rgba(0,0,0,.7); }
.experience-card p { margin: 0; color: #d0d0d7; max-width: 26rem; text-shadow: 0 2px 16px rgba(0,0,0,.8); }
.feature-card p { color: rgba(255,255,255,.84); }

.vip { display: grid; grid-template-columns: .88fr 1.12fr; gap: 5rem; align-items: center; }
.vip-label { display: inline-block; border: 1px solid var(--red); color: var(--red-bright); padding: .34rem .65rem; font-size: .7rem; letter-spacing: .2em; }
.vip-intro > p { color: var(--muted); max-width: 31rem; }
.price { margin: 2.2rem 0; display: flex; align-items: baseline; gap: 1rem; }
.price strong { font-size: 2rem; }
.price span { color: var(--muted); font-size: .75rem; }
.vip-panel { background: var(--surface-2); border-top: 3px solid var(--red); box-shadow: 0 28px 80px rgba(0,0,0,.3); }
.vip-panel-head { display: flex; justify-content: space-between; padding: 1.2rem 1.5rem; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; }
.vip-panel ul { list-style: none; padding: 0; margin: 0; }
.vip-panel li { display: grid; grid-template-columns: 3rem 1fr; gap: 1rem; padding: 1.2rem 1.5rem; border-bottom: 1px solid var(--line); }
.vip-panel li span { color: var(--red-bright); font-size: .7rem; }
.vip-panel li strong { font-size: .95rem; font-weight: 650; }
.vip-note { margin: 0; padding: 1.25rem 1.5rem; color: var(--muted); font-size: .8rem; }

.vip-store { border-top: 1px solid var(--line); }
.store-heading { display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 4rem; margin-bottom: 3.5rem; }
.store-heading h2 { margin: 0; font-size: clamp(3rem, 6.5vw, 6.3rem); line-height: .86; letter-spacing: -.065em; }
.store-heading h2 em { color: var(--red-bright); font-family: Georgia, serif; font-weight: 500; }
.store-copy > p { color: var(--muted); margin: 0 0 1.4rem; }
.account-chip { width: fit-content; display: flex; align-items: center; gap: .65rem; padding: .6rem .85rem; border: 1px solid var(--line); background: var(--surface); color: #cfcfd6; font-size: .78rem; }
.account-dot { width: .48rem; height: .48rem; border-radius: 50%; background: #74747d; }
.account-chip.connected .account-dot { background: #4ade80; box-shadow: 0 0 .7rem #4ade80; }
.account-chip button { margin-left: .2rem; padding: .15rem 0 .15rem .7rem; cursor: pointer; border: 0; border-left: 1px solid var(--line); background: transparent; color: var(--red-bright); font-size: .72rem; font-weight: 800; }
.account-chip button:disabled { cursor: wait; opacity: .65; }
.checkout-assurances { margin: 0 0 1rem; display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); border-radius: 1rem; overflow: hidden; background: rgba(255,255,255,.018); }
.checkout-assurances > div { min-height: 5.4rem; padding: 1rem 1.2rem; display: flex; align-items: center; gap: .9rem; border-left: 1px solid var(--line); }
.checkout-assurances > div:first-child { border-left: 0; }
.checkout-assurances > div > span { display: grid; flex: 0 0 auto; width: 2.1rem; height: 2.1rem; place-items: center; border: 1px solid rgba(239,35,60,.4); border-radius: 50%; color: var(--red-bright); font-size: .62rem; font-weight: 900; }
.checkout-assurances p { margin: 0; display: grid; line-height: 1.35; }
.checkout-assurances strong { font-size: .82rem; }
.checkout-assurances small { margin-top: .2rem; color: var(--muted); font-size: .68rem; }
.plans-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; align-items: stretch; }
.plan-card { position: relative; min-width: 0; padding: 1.4rem; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); background: linear-gradient(155deg, #17171b, #0e0e11); transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease; }
.plan-card::before { content: ""; position: absolute; width: 11rem; height: 11rem; right: -5rem; top: -5rem; border-radius: 50%; background: rgba(239,35,60,.09); filter: blur(2px); transition: transform .4s ease; }
.plan-card:hover { transform: translateY(-8px); border-color: rgba(239,35,60,.72); box-shadow: 0 24px 55px rgba(0,0,0,.38); }
.plan-card:hover::before { transform: scale(1.35); }
.plan-card.featured { border-color: var(--red); background: linear-gradient(150deg, #2b0b11, #121114 56%); }
.popular { margin: -1.4rem -1.4rem 1.1rem; padding: .5rem; background: var(--red); text-align: center; font-size: .63rem; font-weight: 900; letter-spacing: .15em; }
.plan-top { display: flex; justify-content: space-between; color: #777781; font-size: .65rem; letter-spacing: .13em; }
.plan-top b { color: var(--red-bright); }
.plan-symbol { margin-top: 2.4rem; color: var(--red); font-size: 2rem; }
.vip-art { position: relative; aspect-ratio: 760 / 504; overflow: hidden; margin: 1.1rem 0 .8rem; border-radius: .65rem; background: #09090b; border: 1px solid rgba(255,255,255,.1); }
.vip-art img { position: absolute; width: 202.106%; max-width: none; height: auto; }
.vip-art-divine img { top: 0; left: 0; }
.vip-art-heat img { top: 0; right: 0; }
.vip-art-spicy img { bottom: 0; left: 0; }
.vip-art-fire img { bottom: 0; right: 0; }
.plan-card h3 { margin: .25rem 0 .6rem; font-size: 1.7rem; letter-spacing: -.04em; }
.plan-card > p { min-height: 4.8rem; margin: 0; color: var(--muted); font-size: .86rem; }
.plan-price { display: grid; margin: 1.5rem 0; padding: 1.1rem 0; border-block: 1px solid var(--line); }
.plan-price strong { font-size: 1.6rem; }
.plan-price span { color: #777781; font-size: .68rem; }
.plan-card ul { list-style: none; margin: 0 0 1.5rem; padding: 0; color: #c2c2c9; font-size: .78rem; }
.plan-card li { padding: .35rem 0; }
.plan-card li::before { content: "◆"; margin-right: .5rem; color: var(--red); font-size: .5rem; }
.buy-button { width: 100%; margin-top: auto; cursor: pointer; }
.store-note { margin: 1.2rem 0 0; color: #777781; font-size: .72rem; }
.store-copy .store-status { color: #d1c7cc; font-size: .85rem; line-height: 1.6; padding-left: .9rem; border-left: 2px solid var(--red); }
.checkout-assurances[hidden] { display: none; }
.plan-comparison { margin-top: 4rem; padding-top: 3rem; border-top: 1px solid var(--line); }
.comparison-heading { display: grid; grid-template-columns: 1fr .62fr; gap: 3rem; align-items: end; margin-bottom: 1.5rem; }
.comparison-heading span { color: var(--red-bright); font-size: .66rem; font-weight: 900; letter-spacing: .18em; }
.comparison-heading h3 { margin: .35rem 0 0; font-size: clamp(2rem, 4vw, 3.65rem); line-height: .95; letter-spacing: -.055em; }
.comparison-heading > p { margin: 0; color: var(--muted); font-size: .86rem; }
.comparison-scroll { max-width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: 1rem; background: #101013; scrollbar-color: var(--red) #1a1a1e; }
.comparison-scroll:focus-visible { outline-offset: 3px; }
.plan-comparison table { width: 100%; min-width: 60rem; border-collapse: collapse; text-align: center; }
.plan-comparison th, .plan-comparison td { padding: 1rem .85rem; border: 1px solid var(--line); }
.plan-comparison tr > *:first-child { width: 25%; border-left: 0; text-align: left; }
.plan-comparison tr > *:last-child { border-right: 0; background: rgba(189,204,228,.045); }
.plan-comparison thead tr:first-child > * { border-top: 0; }
.plan-comparison tbody tr:last-child > * { border-bottom: 0; }
.plan-comparison thead th { color: #e8e8ed; font-size: .72rem; letter-spacing: .04em; }
.plan-comparison thead th:last-child { color: #d5deef; }
.plan-comparison tbody th { color: #c3c3ca; font-size: .76rem; font-weight: 650; }
.plan-comparison td { color: var(--paper); font-size: .82rem; }
.included { display: inline-grid; width: 1.7rem; height: 1.7rem; place-items: center; border-radius: 50%; background: rgba(74,222,128,.1); color: #67e896; font-weight: 900; }
.not-included { color: #5d5d66; }

.journey { border-top: 1px solid var(--line); }
.journey-head { display: grid; grid-template-columns: .55fr 1fr; gap: 3rem; align-items: start; }
.journey-head h2 { margin: 0 0 3rem; font-size: clamp(3rem, 6vw, 5.7rem); line-height: .9; letter-spacing: -.06em; }
.journey-head h2 em { color: var(--red-bright); font-family: Georgia, serif; font-weight: 500; }
.journey-steps { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid var(--line); }
.journey-steps li { position: relative; min-height: 15rem; padding: 1.5rem; display: flex; flex-direction: column; justify-content: space-between; border-left: 1px solid var(--line); overflow: hidden; }
.journey-steps li:first-child { border-left: 0; }
.journey-steps li::after { content: ""; position: absolute; width: 8rem; height: 8rem; right: -5rem; bottom: -5rem; border: 1px solid rgba(239,35,60,.45); border-radius: 50%; transition: .35s ease; }
.journey-steps li:hover::after { width: 12rem; height: 12rem; right: -6rem; bottom: -6rem; background: rgba(239,35,60,.08); }
.journey-steps > li > span { color: var(--red-bright); font-size: .72rem; font-weight: 850; letter-spacing: .14em; }
.journey-steps strong { font-size: 1.15rem; }
.journey-steps p { margin: .45rem 0 0; color: var(--muted); font-size: .86rem; }

[data-reveal] { opacity: 0; transform: translateY(2rem); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
[data-reveal].revealed { opacity: 1; transform: none; }
.plan-card[data-reveal]:nth-child(2) { transition-delay: .08s; }
.plan-card[data-reveal]:nth-child(3) { transition-delay: .16s; }
.plan-card[data-reveal]:nth-child(4) { transition-delay: .24s; }
.plan-card[data-reveal].revealed:hover, .experience-card[data-reveal].revealed:hover { transform: translateY(-8px); }
.mobile-join { display: none; }

.purchase-dialog { width: min(31rem, calc(100% - 2rem)); padding: 2.2rem; overflow: visible; color: var(--paper); background: #151519; border: 1px solid rgba(239,35,60,.55); box-shadow: 0 30px 100px rgba(0,0,0,.72); animation: bubble-in .4s cubic-bezier(.2,.9,.2,1.15); }
.purchase-dialog::backdrop { background: rgba(4,4,6,.76); backdrop-filter: blur(8px); animation: fade-in .25s ease; }
.dialog-close { position: absolute; top: .8rem; right: .8rem; width: 2.3rem; height: 2.3rem; cursor: pointer; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: white; font-size: 1.4rem; }
.dialog-icon { width: 3.4rem; height: 3.4rem; margin-bottom: 1.2rem; display: grid; place-items: center; border-radius: 50%; background: var(--red); box-shadow: 0 0 2.5rem rgba(239,35,60,.5); }
.dialog-kicker { color: var(--red-bright); font-size: .65rem; font-weight: 850; letter-spacing: .18em; }
.purchase-dialog h2 { margin: .35rem 0 .8rem; font-size: 2.25rem; letter-spacing: -.05em; }
.purchase-dialog p { color: var(--muted); }
.discord-login { width: 100%; margin-top: .8rem; background: #5865f2; border-color: #5865f2; }
.pix-image { width: 13rem; height: 13rem; margin: 1.2rem auto; padding: .6rem; background: white; }
.pix-code { width: 100%; padding: .85rem; resize: none; color: #e6e6eb; background: #0b0b0e; border: 1px solid var(--line); }
.payment-status { display: flex; align-items: center; gap: .65rem; margin-top: 1rem; font-size: .8rem; }
.payment-status i { width: .65rem; height: .65rem; border-radius: 50%; background: #fbbf24; animation: pulse 1.2s infinite; }
.payment-status.approved i { background: #4ade80; }
.toast { position: fixed; z-index: 80; left: 50%; bottom: 1.4rem; max-width: calc(100% - 2rem); padding: .8rem 1rem; pointer-events: none; opacity: 0; transform: translate(-50%, 1rem); background: var(--paper); color: var(--ink); font-weight: 750; font-size: .82rem; transition: .25s ease; }
.toast.show { opacity: 1; transform: translate(-50%, 0); }
.bubble-layer { position: fixed; z-index: 90; inset: 0; pointer-events: none; overflow: hidden; }
.click-bubble { position: absolute; width: 1rem; height: 1rem; border: 2px solid var(--red-bright); border-radius: 50%; transform: translate(-50%,-50%); animation: click-bubble .62s ease-out forwards; }
@keyframes bubble-in { from { opacity: 0; transform: scale(.5) translateY(4rem); border-radius: 50%; } to { opacity: 1; transform: scale(1) translateY(0); border-radius: 0; } }
@keyframes click-bubble { to { opacity: 0; width: 7rem; height: 7rem; border-width: 0; background: rgba(239,35,60,.04); } }
@keyframes fade-in { from { opacity: 0; } }
@keyframes pulse { 50% { opacity: .35; transform: scale(.75); } }

.safety { display: grid; grid-template-columns: .9fr 1.1fr; gap: 5rem; align-items: center; border-top: 1px solid var(--line); }
.safety-art { min-height: 30rem; display: grid; place-items: center; position: relative; overflow: hidden; background: radial-gradient(circle at center, rgba(239,35,60,.32), transparent 47%), repeating-linear-gradient(135deg, #121216 0, #121216 5px, #0d0d10 5px, #0d0d10 10px); border: 1px solid var(--line); }
.safety-art::before, .safety-art::after { content: ""; position: absolute; width: 16rem; height: 16rem; border: 1px solid rgba(239,35,60,.46); transform: rotate(45deg); }
.safety-art::after { width: 10rem; height: 10rem; }
.safety-art span { z-index: 1; font-size: 8rem; font-weight: 950; color: var(--red); font-style: italic; text-shadow: 0 0 4rem rgba(239,35,60,.5); }
.safety-copy > p { color: var(--muted); max-width: 35rem; }
.safety-copy ul { list-style: none; padding: 0; margin: 2rem 0 0; }
.safety-copy li { border-top: 1px solid var(--line); padding: .85rem 0; font-weight: 650; }
.safety-copy li::before { content: "◆"; color: var(--red); margin-right: .75rem; font-size: .6rem; }

.faq { display: grid; grid-template-columns: .72fr 1.28fr; gap: 5rem; border-top: 1px solid var(--line); }
.faq-list details { border-top: 1px solid var(--line); }
.faq-list details:last-child { border-bottom: 1px solid var(--line); }
.faq-list summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.4rem 0; font-weight: 700; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--red); font-size: 1.4rem; transition: transform .2s ease; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { color: var(--muted); margin: -.3rem 0 1.5rem; max-width: 38rem; }

.final-cta { position: relative; min-height: 34rem; display: grid; place-items: center; overflow: hidden; text-align: center; }
.final-cta > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(.34) saturate(1.1); }
.final-cta::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(239,35,60,.22), transparent 35%, rgba(239,35,60,.22)); }
.final-cta > div { position: relative; z-index: 2; padding: 4rem 1.25rem; }
.final-cta span { font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; }
.final-cta h2 { margin: 1rem 0 2.2rem; font-size: clamp(3rem, 7vw, 6rem); line-height: .92; letter-spacing: -.065em; }

footer { width: min(var(--max), calc(100% - 2.5rem)); margin: 0 auto; min-height: 9rem; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; }
footer p { color: var(--muted); font-size: .78rem; }
footer > a:last-child { justify-self: end; color: var(--muted); text-decoration: none; font-size: .8rem; }

@media (max-width: 900px) {
  .site-header { grid-template-columns: 1fr auto; }
  .menu-toggle { display: block; }
  .header-cta { display: none; }
  .nav { position: fixed; inset: 5.25rem 0 auto; display: none; padding: 1.5rem; background: #0b0b0e; border-bottom: 1px solid var(--line); flex-direction: column; align-items: stretch; gap: .3rem; }
  .nav.open { display: flex; }
  .nav a { padding: .9rem 0; border-bottom: 1px solid var(--line); font-size: 1rem; }
  .hero { min-height: 50rem; }
  .hero h1 { font-size: clamp(3.8rem, 14vw, 6.5rem); }
  .server-card { right: 1.25rem; left: 1.25rem; width: auto; bottom: 2rem; }
  .quick-stats { margin-top: 3rem; }
  .manifesto, .vip, .safety, .faq, .store-heading, .journey-head { grid-template-columns: 1fr; gap: 2.5rem; }
  .plans-grid { grid-template-columns: repeat(2, 1fr); }
  .comparison-heading { grid-template-columns: 1fr; gap: 1rem; }
  .experience-card { grid-column: span 6; }
  .experience-card:nth-child(5), .experience-card:nth-child(6) { grid-column: span 6; }
  .vip-intro { padding-right: 0; }
  .safety-art { min-height: 22rem; }
}

@media (max-width: 620px) {
  .site-header { height: 4.5rem; }
  .nav { top: 4.5rem; }
  .server-ticker { top: 4.5rem; }
  .ticker-track { animation-duration: 19s; }
  .section { padding: 6.5rem 0; }
  .hero { min-height: 51rem; }
  .hero-content { margin-top: 0; padding-bottom: 8.5rem; }
  .hero-media img { width: 42rem; height: 42rem; right: -18rem; opacity: .72; }
  .hero-ghost-word { right: -2rem; bottom: 8rem; font-size: 7.4rem; }
  .hero-shade { background: linear-gradient(90deg, rgba(6,6,8,.92), rgba(6,6,8,.5)), linear-gradient(0deg, #09090b 4%, transparent 60%); }
  .hero h1 { font-size: clamp(3.4rem, 18vw, 5rem); }
  .hero-actions { align-items: stretch; flex-direction: column; gap: .9rem; }
  .text-link { text-align: center; padding: .6rem; }
  .quick-stats { display: grid; grid-template-columns: repeat(3, 1fr); }
  .quick-stats li { min-width: 0; padding: 0 .7rem; }
  .quick-stats strong { font-size: .82rem; }
  .quick-stats span { font-size: .65rem; }
  .server-card { grid-template-columns: 3.3rem 1fr auto; bottom: 1.2rem; }
  .server-card > img { width: 3.3rem; height: 3.3rem; }
  .manifesto h2, .section-heading h2, .vip h2, .safety h2, .faq h2 { font-size: 2.7rem; }
  .two-col-copy { grid-template-columns: 1fr; gap: 1rem; }
  .section-heading { align-items: start; flex-direction: column; }
  .experience-grid { display: grid; grid-template-columns: 1fr; }
  .experience-card, .experience-card:nth-child(4), .experience-card:nth-child(5), .experience-card:nth-child(6) { grid-column: auto; min-height: 16rem; }
  .plans-grid { grid-template-columns: 1fr; }
  .checkout-assurances { grid-template-columns: 1fr; }
  .checkout-assurances > div { min-height: 4.8rem; border-left: 0; border-top: 1px solid var(--line); }
  .checkout-assurances > div:first-child { border-top: 0; }
  .plan-comparison { margin-top: 3rem; padding-top: 2.5rem; }
  .comparison-scroll { margin-right: -1.25rem; border-radius: 1rem 0 0 1rem; }
  .plan-comparison table { min-width: 60rem; }
  .plan-comparison th, .plan-comparison td { padding: .9rem .75rem; }
  .plan-card > p { min-height: 0; }
  .purchase-dialog { padding: 1.6rem; }
  .journey-steps { grid-template-columns: 1fr; }
  .journey-steps li { min-height: 11rem; border-left: 0; border-top: 1px solid var(--line); }
  .journey-steps li:first-child { border-top: 0; }
  .cursor-glow { display: none; }
  .mobile-join { position: fixed; z-index: 45; left: .75rem; right: .75rem; bottom: .75rem; min-height: 3.8rem; padding: .75rem 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: rgba(20,20,24,.95); border: 1px solid rgba(239,35,60,.65); box-shadow: 0 15px 45px rgba(0,0,0,.55); backdrop-filter: blur(16px); text-decoration: none; font-size: .78rem; }
  .mobile-join span { display: flex; align-items: center; gap: .5rem; color: var(--muted); }
  .mobile-join i { width: .5rem; height: .5rem; border-radius: 50%; background: #4ade80; box-shadow: 0 0 .7rem #4ade80; }
  .mobile-join strong { color: white; }
  .card-icon { margin-top: 2rem; }
  .price { align-items: start; flex-direction: column; gap: .25rem; }
  .vip-panel li { grid-template-columns: 2rem 1fr; }
  .safety-art { min-height: 18rem; }
  footer { grid-template-columns: 1fr; padding: 2.5rem 0 6.5rem; gap: .5rem; }
  footer > a:last-child { justify-self: start; }
  footer p { margin: .5rem 0; }
}

/* Refinamento visual e navegacao responsiva. */
html { scroll-padding-top: 7rem; }
.site-header { background: linear-gradient(#09090bed, #09090b99); }
.nav .nav-login { display: none; }
.button { border-radius: .65rem; }
.hero-content { padding-block: 5rem; }
.hero-content > p { max-width: 32rem; line-height: 1.8; }
.eyebrow { flex-wrap: wrap; max-width: 40rem; }
.hero-ghost-word { opacity: .5; }
.quick-stats { margin-top: 2.7rem; }
.section { padding-block: 6rem; }
.experience-card, .plan-card { border-radius: 1rem; }
.experience-card { min-height: 21.5rem; }
.experience-card p, .plan-card > p { line-height: 1.75; }
.card-icon { border-radius: .8rem; margin-top: 2rem; }
.plan-card .plan-top, .plan-card .plan-price { position: relative; }
.plan-card li { padding-block: .55rem; }
.safety-art { min-height: 0; aspect-ratio: 1; border-radius: 1.25rem; }
.safety-art > img { width: 100%; height: 100%; object-fit: cover; }
.safety-art::before, .safety-art::after { display: none; }
.faq-list summary { min-height: 4.5rem; }
.purchase-dialog { max-height: calc(100dvh - 2rem); overflow-y: auto; border-radius: 1rem; }
.purchase-dialog .button:disabled { opacity: .6; cursor: wait; transform: none; }
.journey-steps { border-radius: 1rem; background: #111114; }
.toast { bottom: 1.5rem; border-radius: .7rem; }
@media (max-width: 900px) {
  .nav .nav-login { display: block; color: var(--red-bright); }
  .hero { min-height: 45rem; }
}
@media (max-width: 620px) {
  .hero { min-height: 44rem; }
  .hero-content { padding-top: 10rem; padding-bottom: 3.5rem; }
  .hero h1 { font-size: clamp(3rem, 15vw, 4.8rem); line-height: .95; }
  .hero-content > p { font-size: .97rem; }
  .hero-media img { opacity: .45; }
  .quick-stats { gap: .35rem; }
  .quick-stats strong { font-size: .8rem; }
  .section { padding-block: 4rem; }
  .store-heading { margin-bottom: 2rem; }
  .experience-card, .experience-card:nth-child(4), .experience-card:nth-child(5), .experience-card:nth-child(6) { min-height: 19rem; }
  .plan-card { padding: 1.5rem; }
  .plan-symbol { margin-top: 1.25rem; }
  .toast { bottom: 5.5rem; width: max-content; }
  .mobile-join { bottom: max(.75rem, env(safe-area-inset-bottom)); border-radius: .85rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
  [data-reveal] { opacity: 1; transform: none; }
}

/* Contadores da comunidade: números estáveis e estado compartilhado. */
.community-stats { width: min(100%, 36rem); margin-top: 2.8rem; padding-top: 1.2rem; border-top: 1px solid rgba(255,255,255,.16); }
.stats-heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: 1.3rem; }
.stats-caption { color: #b9b6bd; font-size: .66rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.stats-status { flex-shrink: 0; color: #bdb8c1; border: 1px solid #ffffff20; border-radius: 2rem; padding: .2rem .65rem; font-size: .65rem; font-weight: 650; line-height: 1.5; }
.stats-status[data-state="live"] { color: #81e9a7; border-color: #62db9633; background: #62db960c; }
.stats-status[data-state="stale"], .stats-status[data-state="estimated"] { color: #e5c085; }
.community-stats .quick-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin: 0; }
.community-stats .quick-stats li { min-width: 0; padding: 0 1.6rem; border-color: #ffffff14; align-content: start; gap: .6rem; }
.community-stats .quick-stats li:first-child { padding-left: 0; }
.community-stats .quick-stats li:last-child { padding-right: 0; }
.community-stats .quick-stats strong { display: flex; align-items: center; gap: .65rem; color: var(--paper); font-size: 1.5rem; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: -.05em; line-height: 1.1; white-space: nowrap; }
.community-stats [data-online-count]::before { content: ""; flex: 0 0 .55rem; width: .55rem; height: .55rem; border-radius: 50%; background: #647069; box-shadow: none; transition: background .3s, box-shadow .3s; }
.community-stats:has([data-state="live"]) [data-online-count]::before { background: #65df94; box-shadow: 0 0 0 4px #65df9410, 0 0 14px #65df9430; }
.community-stats .quick-stats span { color: #b9b6bd; font-size: .76rem; font-weight: 500; line-height: 1.4; }
@media (max-width: 620px) {
  .community-stats { margin-top: 2.2rem; padding-top: 1rem; }
  .stats-heading { margin-bottom: 1.1rem; }
  .stats-caption { font-size: .59rem; letter-spacing: .12em; }
  .stats-status { font-size: .6rem; }
  .community-stats .quick-stats li { padding-inline: .85rem; gap: .5rem; }
  .community-stats .quick-stats strong { font-size: 1.25rem; gap: .4rem; }
  .community-stats [data-online-count]::before { flex-basis: .45rem; width: .45rem; height: .45rem; }
  .community-stats .quick-stats span { font-size: .65rem; }
}

/* Cartões compactos com a lista completa sempre acessível. */
.plan-highlights { min-height: 7rem; margin-bottom: .5rem!important; }
.plan-details { margin: 0 0 1.4rem; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.plan-details summary { display:flex; align-items:center; justify-content:space-between; gap:.7rem; padding:1rem 0; cursor:pointer; font-size:.8rem; font-weight:700; list-style:none; }
.plan-details summary::-webkit-details-marker { display:none; }
.plan-details summary span { font-size:1.2rem; color:var(--red-bright); transition:transform .2s; }
.plan-details[open] summary span { transform:rotate(45deg); }
.plan-details ul { margin-bottom:1rem; }
.plan-details[open] { border-color:#ffffff35; }
.compare-link { display:flex; width:fit-content; align-items:center; gap:1.5rem; margin:2rem auto 1rem; padding:.85rem 1.4rem; border:1px solid var(--line); border-radius:2rem; text-decoration:none; font-size:.85rem; }
.compare-link:hover { border-color:var(--red-bright); background:#ed234b12; }
.plan-comparison tbody tr:hover { background:#ffffff04; }
.plan-comparison tr > *:first-child { position:sticky; left:0; background:#141418; z-index:1; }
footer small { font-size:.68rem; color:var(--muted); }
.discord-avatar { position:relative; display:grid; place-items:center; flex:0 0 2.25rem; width:2.25rem; height:2.25rem; overflow:hidden; border-radius:50%; background:#38232b; color:#ffe1e5; font-size:.75rem; font-weight:750; box-shadow:0 0 0 1px rgba(255,255,255,.14); }
.discord-avatar img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; }
.profile-copy { display:flex; flex-direction:column; gap:.2rem; min-width:0; text-align:left; }
.profile-name { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:12rem; font-size:.83rem; font-weight:700; line-height:1.25; }
.profile-caption { display:block; color:var(--muted); font-size:.64rem; font-weight:500; line-height:1.3; letter-spacing:.015em; }
.header-cta.profile-link { display:flex; justify-content:flex-start; gap:.65rem; padding:.45rem .85rem .45rem .5rem; min-height:0; background:#17171c; border:1px solid rgba(255,255,255,.13); border-radius:999px; color:var(--paper); box-shadow:none; text-transform:none; letter-spacing:normal; }
.header-cta.profile-link:hover { background:#222027; border-color:rgba(244,63,80,.55); transform:translateY(-1px); }
.account-chip.connected { max-width:100%; padding:.6rem .8rem; gap:.75rem; border-radius:14px; background:rgba(255,255,255,.035); }
.account-chip.connected [data-account-label] { flex:1; }
.account-chip.connected .profile-caption { font-size:.68rem; }
.account-chip.connected button { flex-shrink:0; padding:.65rem 0 .65rem .8rem; }
.menu-backdrop { position:fixed; z-index:29; inset:0; border:0; background:rgba(0,0,0,.65); backdrop-filter:blur(4px); }
.menu-backdrop[hidden] { display:none; }
.site-footer { display:block; padding:3rem 0 1.5rem; }
.footer-main { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:3rem; padding-bottom:2.5rem; }
.footer-about p { margin-top:1rem; line-height:1.8; }
.footer-nav { display:flex; flex-direction:column; align-items:flex-start; gap:.75rem; }
.footer-nav > span { color:var(--paper); font-size:.75rem; font-weight:750; margin-bottom:.3rem; }
.footer-nav a, .footer-bottom a { color:var(--muted); font-size:.78rem; text-decoration:none; }
.footer-nav a:hover, .footer-bottom a:hover { color:var(--paper); }
.footer-community > span { display:block; color:var(--muted); font-size:.78rem; line-height:1.6; }
.footer-discord { display:inline-flex; align-items:center; gap:1rem; padding:.85rem 0; color:var(--paper); font-size:.9rem; font-weight:700; text-decoration:none; }
.footer-discord > span { color:var(--red-bright); }
.footer-community p { margin:0; font-size:.7rem; }
.footer-bottom { border-top:1px solid var(--line); padding-top:1.25rem; display:flex; justify-content:space-between; gap:1rem; align-items:center; }
@media(max-width:900px) {
 body.menu-open { overflow:hidden; }
 body.menu-open .site-header { background:#0b0b0e; }
 body.menu-open .mobile-join { visibility:hidden; }
 .header-cta.profile-link { display:none; }
 .nav .nav-login.profile-link { display:flex; align-items:center; gap:.75rem; padding:.9rem; background:#17171c; border:1px solid var(--line); border-radius:14px; color:var(--paper); }
 .nav .profile-name { max-width:calc(100vw - 9rem); }
 .footer-main { grid-template-columns:1.2fr 1fr; gap:2rem; }
 .footer-community { grid-column:1 / -1; }
}
@media(max-width:620px) {
 .account-chip.connected .profile-name { max-width:calc(100vw - 12rem); }
 .site-footer { padding:2.5rem 0 7rem; }
 .footer-main { grid-template-columns:1fr 1fr; gap:2rem 1rem; }
 .footer-about { grid-column:1 / -1; }
 .footer-community { grid-column:auto; }
 .footer-bottom { flex-direction:column; align-items:flex-start; }
}
.nav a[aria-current="location"] { color:var(--red-bright); }
@media(max-width:620px){
 .plan-highlights{min-height:0;}
 .plan-comparison tr > *:first-child{max-width:8.5rem;min-width:8.5rem;}
 .nav.open{max-height:calc(100dvh - 6rem);overflow-y:auto;}
 .quick-stats strong{font-size:1.35rem;}
 .quick-stats span{font-size:.62rem;}
 .purchase-dialog .button{width:100%;}
}

/* Discord sign-in stays distinct from Myroth's crimson actions. */
.discord-signin, .nav .nav-login.discord-signin { align-items:center; justify-content:center; gap:.65rem; background:#5865f2; border:1px solid #5865f2; border-radius:10px; color:#fff; font-weight:700; letter-spacing:0; text-decoration:none; box-shadow:0 4px 16px rgba(88,101,242,.16); transition:background .18s ease,box-shadow .18s ease,transform .18s ease; }
.discord-signin::before { content:''; display:block; width:1.4rem; height:1.05rem; flex-shrink:0; background:currentColor; -webkit-mask:url('discord-symbol.svg') center/contain no-repeat; mask:url('discord-symbol.svg') center/contain no-repeat; }
.discord-signin:hover, .nav .nav-login.discord-signin:hover { background:#4752c4; border-color:#4752c4; color:#fff; box-shadow:0 6px 20px rgba(88,101,242,.28); transform:translateY(-1px); }
.discord-signin:active, .nav .nav-login.discord-signin:active { transform:scale(.98); background:#3c45a5; }
.discord-signin:focus-visible { outline:3px solid #c8cdff; outline-offset:4px; }
.purchase-dialog [data-dialog-title]:focus { outline:none; }
.purchase-dialog .dialog-feedback { margin:.8rem 0 0; color:#f6b4bc; font-size:.9rem; min-height:1.4em; }
.dialog-close { width:2.75rem; height:2.75rem; }
.login-recovery { width:min(38rem,calc(100% - 2.5rem)); margin:clamp(3rem,10vh,7rem) auto; padding:clamp(1.4rem,5vw,3rem); border:1px solid var(--line); border-radius:1rem; background:#151519; }
.login-recovery h1 { font-size:clamp(2rem,7vw,3rem); line-height:1.12; letter-spacing:-.04em; margin:1rem 0; }
.login-recovery p { color:var(--muted); margin-bottom:1.8rem; line-height:1.8; }
.login-recovery .button { width:100%; }
.login-recovery .text-link { display:block; text-align:center; margin-top:1.5rem; }
[data-reveal]:focus-within { opacity:1; transform:none; }
@media(max-width:900px) { .nav .nav-login.discord-signin { display:flex; padding:.85rem 1rem; min-height:48px; } }

/* The fifth tier has its own silver showcase below the four core plans. */
.plan-card.black-diamond {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1fr) minmax(0, 1.05fr);
  align-items: center;
  gap: clamp(1.5rem, 3vw, 3rem);
  padding: clamp(1.4rem, 3vw, 2.5rem);
  border-color: #626979;
  background: linear-gradient(120deg, #171a22, #101116 65%, #181b23);
}
.black-diamond::before { background: rgba(190,207,236,.07); }
.black-diamond:hover { border-color: #adb8cc; }
.black-art { position: relative; overflow: hidden; border: 1px solid #ffffff12; border-radius: .75rem; background: #0b0c10; }
.black-art img { display: block; width: 100%; height: auto; }
.black-copy, .black-benefits { min-width: 0; position: relative; }
.black-copy h3 { font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.1; }
.black-copy > p { margin: .8rem 0 0; color: var(--muted); font-size: .86rem; line-height: 1.75; }
.black-copy .plan-top b { color: #cdd6e7; }
.black-copy .plan-price { margin-bottom: 0; }
.black-diamond li::before { color: #b9c9e3; }
.black-diamond .buy-button { background: #d9e1ef; color: #161b25; border-color: #d9e1ef; }
.black-diamond .buy-button:hover { background: #f0f4fc; border-color: #f0f4fc; }
.black-support { margin: .75rem 0 0; text-align: center; color: #9da5b4; font-size: .7rem; }
@media (max-width: 900px) {
  .plan-card.black-diamond { grid-template-columns: minmax(0,.8fr) minmax(0,1fr); }
  .black-benefits { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .plan-card.black-diamond { grid-template-columns: minmax(0,1fr); gap: 1.4rem; }
  .black-art { width: 100%; }

}

/* Regras oficiais: numeração contínua e leitura aberta, inclusive sem JavaScript. */
.community-rules { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.3fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; border-top: 1px solid var(--line); scroll-margin-top: 0; }
.rules-intro { position: sticky; top: 7rem; }
.rules-intro h2 { margin: 1rem 0 1.5rem; font-size: clamp(2.6rem,4.5vw,4.4rem); line-height: 1.02; letter-spacing: -.055em; }
.rules-intro h2 em { color: var(--red); font-style: normal; }
.rules-intro > p { color: var(--muted); font-size: .94rem; line-height: 1.8; }
.rules-index { display: grid; gap: .5rem; margin-top: 2rem; }
.rules-index a { display: grid; grid-template-columns: 1.6rem 1fr auto; align-items: center; gap: .6rem; padding: .9rem 1rem; border: 1px solid var(--line); border-radius: .7rem; text-decoration: none; font-size: .83rem; font-weight: 650; background: #ffffff03; transition: background .2s, border-color .2s; }
.rules-index a:hover { border-color: #ef233c66; background: #ef233c0b; }
.rules-index a span { color: var(--red-bright); font-size: .72rem; }
.rules-intro .rules-count { margin-top: 1.3rem; font-size: .68rem; letter-spacing: .04em; }
.rules-content { display: grid; gap: 1.3rem; min-width: 0; }
.rules-group { border: 1px solid var(--line); border-radius: 1rem; overflow: hidden; background: linear-gradient(135deg,#191419,#101013); scroll-margin-top: 0; }
.rules-group-heading { display: flex; align-items: center; gap: 1rem; padding: 1.5rem; border-bottom: 1px solid var(--line); }
.rules-group-heading > span { display: grid; place-items: center; width: 2.6rem; height: 2.6rem; flex-shrink: 0; border: 1px solid #ef233c44; border-radius: .7rem; background: #ef233c0d; color: var(--red-bright); font-size: .8rem; font-weight: 750; }
.rules-group-heading h3 { margin: 0; font-size: 1.12rem; letter-spacing: -.025em; }
.rules-group-heading p { margin: .2rem 0 0; color: var(--muted); font-size: .75rem; }
.rules-list { margin: 0; padding: .5rem 1.5rem .5rem 3.9rem; }
.rules-list li { padding: 1rem 0 1rem .4rem; color: #d1cdd4; font-size: .87rem; line-height: 1.75; border-bottom: 1px solid #ffffff0b; }
.rules-list li:last-child { border-bottom: 0; }
.rules-list li::marker { color: var(--red-bright); font-size: .78rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.rules-consequences { display: flex; align-items: flex-start; gap: 1rem; padding: 1.5rem; border: 1px solid #ef233c40; border-radius: 1rem; background: #ef233c08; }
.rules-notice-icon { display: grid; place-items: center; flex: 0 0 1.8rem; height: 1.8rem; border: 1px solid #ef233c80; border-radius: 50%; color: var(--red-bright); font-weight: 800; }
.rules-consequences h3 { margin: 0 0 .5rem; font-size: .92rem; }
.rules-consequences p, .rules-closing p { margin: 0; font-size: .82rem; line-height: 1.8; color: var(--muted); }
.rules-closing { padding: .7rem .4rem; }
.rules-closing .text-link { display: inline-flex; margin-top: 1rem; font-size: .83rem; }
.journey-steps p a, .faq-list p a { text-underline-offset: .25rem; }
@media (min-width:901px) and (max-width:1200px) {
  .site-header { gap: 1rem; }
  .nav { gap: 1rem; }
  .nav a { font-size: .78rem; }
  .header-cta { font-size: .72rem; padding-inline: .9rem; }
}
@media (max-width:900px) {
  .community-rules { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .rules-intro { position: static; }
  .rules-index { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .rules-index a { grid-template-columns: 1fr auto; }
  .rules-index a > span:first-child { display: none; }
}
@media (max-width:620px) {
  .community-rules { scroll-margin-top: 0; }
  .rules-group { scroll-margin-top: 0; }
  .rules-index { grid-template-columns: minmax(0,1fr); gap: .4rem; margin-top: 1.5rem; }
  .rules-index a { padding: .8rem 1rem; }
  .rules-group-heading { padding: 1.2rem; }
  .rules-list { padding: .25rem 1.2rem .25rem 3rem; }
  .rules-list li { padding-block: .9rem; }
  .rules-consequences { padding: 1.2rem; gap: .8rem; }
}

/* Consulta por plano: a tabela original continua disponível sem JavaScript. */
.comparison-tools:not([hidden]) { display:grid; grid-template-columns: minmax(0,1fr) minmax(15rem,22rem); gap:.6rem 1.5rem; align-items:center; padding:1.2rem 1.4rem; margin-bottom:1rem; border:1px solid var(--line); border-radius:1rem; background:#ffffff03; }
.comparison-tools label { font-size:.85rem; font-weight:650; }
.comparison-tools select { width:100%; min-height:48px; padding:.7rem 2rem .7rem .85rem; border:1px solid #ffffff25; border-radius:.65rem; background:#1a1820; color:var(--paper); font:inherit; font-size:.83rem; color-scheme:dark; cursor:pointer; }
.comparison-tools select:focus-visible { outline:2px solid var(--red-bright); outline-offset:3px; }
.comparison-status { grid-column:1/-1; margin:0; color:var(--muted); font-size:.73rem; }
.plan-comparison .comparison-price td { color:#fff; font-weight:750; white-space:nowrap; }
.comparison-price small { display:block; margin-top:.3rem; font-size:.65rem; font-weight:400; color:var(--muted); }
.plan-comparison.is-filtered table { min-width:0; table-layout:fixed; }
.plan-comparison.is-filtered tr > *:first-child { width:60%; min-width:0; max-width:none; position:static; }
.plan-comparison.is-filtered [data-comparison-cell][hidden] { display:none; }
.plan-comparison.is-filtered .comparison-scroll { margin-right:0; border-radius:1rem; }
@media(max-width:620px) {
 .comparison-tools:not([hidden]) { grid-template-columns:minmax(0,1fr); padding:1rem; gap:.75rem; }
 .comparison-tools select { font-size:1rem; }
 .plan-comparison.is-filtered th, .plan-comparison.is-filtered td { padding:.9rem .65rem; overflow-wrap:break-word; }
}


footer .account-shortcuts{display:flex;flex-wrap:wrap;gap:20px;padding:20px 0}footer .account-shortcuts a{min-height:44px;display:inline-flex;align-items:center;color:#cfc5cc} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Minimal crimson experience cards */
.experience-grid .experience-card{min-height:18rem;background:#111114;border:1px solid #ffffff16;box-shadow:none;padding:1.6rem;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.experience-grid .experience-card::before{display:none}
.experience-grid .experience-card:hover{background:#151216;border-color:#c431495c;box-shadow:none;transform:translateY(-3px)}
.experience-grid .card-index{display:flex;align-items:center;gap:.75rem;color:#b4a8af;font-size:.68rem;letter-spacing:.12em;font-weight:650}
.experience-grid .card-index::after{content:"";display:block;width:1.6rem;height:1px;background:#e83955;opacity:.75}
.experience-grid .experience-card h3{margin: auto 0 .65rem;padding-top:5.5rem;font-size:1.25rem;font-weight:650;letter-spacing:-.025em;text-shadow:none}
.experience-grid .experience-card p{max-width:30rem;color:#aaa2aa;font-size:.88rem;line-height:1.7;text-shadow:none}
.card-line-art{position:absolute;top:1.7rem;right:1.7rem;width:4rem;height:4rem;opacity:.35;pointer-events:none;overflow:hidden}
.card-line-art::before,.card-line-art::after{content:"";position:absolute;border:1px solid #d63550;width:3.8rem;height:3.8rem;border-radius:50%}
.card-line-art::before{left:1rem;top:1rem}.card-line-art::after{left:2rem;top:2rem;opacity:.45}
.experience-card:nth-child(2) .card-line-art{transform:rotate(180deg)}
.experience-card:nth-child(3) .card-line-art::before,.experience-card:nth-child(3) .card-line-art::after{border-radius:.6rem;transform:rotate(45deg);top:.6rem;left:.6rem;width:2.7rem;height:2.7rem}
.experience-card:nth-child(3) .card-line-art::after{left:1.3rem;top:1.3rem}
.experience-card:nth-child(4) .card-line-art::before,.experience-card:nth-child(4) .card-line-art::after{border-radius:0;border-width:1px 0 0;transform:rotate(-45deg);left:-.5rem;top:1.4rem;width:5.5rem}
.experience-card:nth-child(4) .card-line-art::after{top:2.2rem}
.experience-card:nth-child(5) .card-line-art{transform:rotate(90deg)}
.experience-card:nth-child(6) .card-line-art::before,.experience-card:nth-child(6) .card-line-art::after{border-radius:.4rem;left:.6rem;top:.6rem;width:2.7rem;height:2.7rem}
.experience-card:nth-child(6) .card-line-art::after{left:1.3rem;top:1.3rem}
@media(max-width:680px){.experience-grid .experience-card{min-height:16rem;padding:1.4rem}.experience-grid .experience-card h3{padding-top:4rem}.card-line-art{top:1.4rem;right:1.4rem}}
@media(prefers-reduced-motion:reduce){.experience-grid .experience-card{transition:none}.experience-grid .experience-card:hover{transform:none}}
