/* Consequences (Thankyouwoman) — Untitled UI tokens, dark elegant theme */
:root {
  --font-inter: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-serif: Georgia, "Times New Roman", serif;
  --radius-sm: 2px; --radius-md: 6px; --radius-lg: 8px; --radius-xl: 12px; --radius-2xl: 16px; --radius-full: 9999px;
  --spacing-xs: 4px; --spacing-sm: 8px; --spacing-md: 12px; --spacing-lg: 16px; --spacing-xl: 20px; --spacing-2xl: 24px;
  --spacing-3xl: 32px; --spacing-4xl: 40px; --spacing-5xl: 48px; --spacing-6xl: 64px; --spacing-7xl: 80px; --spacing-8xl: 96px;
  --gray-25: #fcfcfd; --gray-50: #f9fafb; --gray-100: #f2f4f7; --gray-200: #eaecf0; --gray-300: #d0d5dd; --gray-400: #98a2b3;
  --gray-500: #667085; --gray-600: #475467; --gray-700: #344054; --gray-800: #1d2939; --gray-900: #101828; --gray-950: #0c111d;
  --cream-300: #e9dfcf; --cream-500: #cbb794; --cream-600: #b59d74;
  --bg: #0b0b0d; --bg-elev: #121216; --bg-card: #17171c; --border: #26262d; --border-strong: #3a3a44;
  --text: #f3efe8; --text-2: #b9b3a8; --text-3: #7d786f;
  --shadow-lg: 0 12px 16px -4px rgba(0,0,0,.35), 0 4px 6px -2px rgba(0,0,0,.25);
  --max: 1120px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font-inter); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; }
.wrap { max-width: var(--max); margin: 0 auto; padding: 0 var(--spacing-xl); }
h1, h2, h3 { margin: 0; font-weight: 600; letter-spacing: -0.02em; line-height: 1.15; }
h1 { font-size: clamp(2.2rem, 5.5vw, 4rem); }
h2 { font-size: clamp(1.6rem, 3.2vw, 2.25rem); }
h3 { font-size: 1.125rem; }
p { margin: 0; }
.serif { font-family: var(--font-serif); font-weight: 400; font-style: italic; }
.eyebrow { font-size: .8125rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--cream-500); }
.muted { color: var(--text-2); }
.small { font-size: .875rem; }

/* nav */
.nav { position: sticky; top: 0; z-index: 20; background: rgba(11,11,13,.82); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); }
.nav .wrap { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: var(--spacing-lg); }
.brand { display: flex; align-items: center; gap: var(--spacing-md); text-decoration: none; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; font-size: .9rem; }
.brand img { width: 32px; height: 32px; border-radius: var(--radius-full); object-fit: cover; border: 1px solid var(--border-strong); }
.nav-links { display: flex; gap: var(--spacing-2xl); font-size: .9375rem; }
.nav-links a { text-decoration: none; color: var(--text-2); }
.nav-links a:hover { color: var(--text); }
@media (max-width: 720px) { .nav-links { display: none; } .nav .btn { height: 36px; padding: 0 12px; font-size: .875rem; } .brand { font-size: .8rem; letter-spacing: .1em; } }

/* buttons (Untitled UI sizes: lg = 44px) */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--spacing-sm); height: 44px; padding: 0 18px; border-radius: var(--radius-lg); font-weight: 600; font-size: 1rem; text-decoration: none; border: 1px solid transparent; cursor: pointer; transition: background .15s, border-color .15s, color .15s; white-space: nowrap; }
.btn-primary { background: var(--cream-500); color: #141310; border-color: var(--cream-500); }
.btn-primary:hover { background: var(--cream-300); border-color: var(--cream-300); }
.btn-secondary { background: transparent; color: var(--text); border-color: var(--border-strong); }
.btn-secondary:hover { background: var(--bg-elev); border-color: var(--gray-500); }
.btn-xl { height: 52px; padding: 0 24px; font-size: 1.0625rem; }

/* hero */
.hero { position: relative; min-height: 78vh; display: grid; align-items: end; overflow: hidden; border-bottom: 1px solid var(--border); }
.hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 30%; filter: saturate(.85) brightness(.75); }
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,11,13,.15) 0%, rgba(11,11,13,.55) 55%, var(--bg) 100%); }
.hero .wrap { position: relative; z-index: 1; padding-top: var(--spacing-8xl); padding-bottom: var(--spacing-7xl); max-width: 860px; margin-left: 0; }
.hero h1 { max-width: 14ch; }
.hero .lead { margin-top: var(--spacing-2xl); font-size: 1.1875rem; max-width: 46ch; color: var(--cream-300); }
.hero .cta { margin-top: var(--spacing-3xl); display: flex; gap: var(--spacing-md); flex-wrap: wrap; }
@media (min-width: 1160px) { .hero .wrap { margin-left: calc((100% - var(--max)) / 2); padding-left: var(--spacing-xl); } }

/* sections */
section { padding: var(--spacing-8xl) 0; }
.section-head { max-width: 640px; margin-bottom: var(--spacing-5xl); }
.section-head p { margin-top: var(--spacing-lg); color: var(--text-2); font-size: 1.0625rem; }

.videos { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: var(--spacing-3xl); }
.video { background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-2xl); overflow: hidden; }
.video .frame { position: relative; aspect-ratio: 9 / 16; max-height: 640px; background: #000; }
.video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video .cap { padding: var(--spacing-xl) var(--spacing-2xl); }
.video .cap h3 { font-family: var(--font-serif); font-style: italic; font-weight: 400; font-size: 1.25rem; }
.video .cap p { margin-top: var(--spacing-xs); }
@media (min-width: 900px) { .videos { grid-template-columns: repeat(3, 1fr); } .video .frame { max-height: none; } }

.stills { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--spacing-lg); }
.stills img { aspect-ratio: 9 / 16; object-fit: cover; border-radius: var(--radius-xl); border: 1px solid var(--border); }
@media (max-width: 720px) { .stills { grid-template-columns: repeat(3, 1fr); gap: var(--spacing-sm); } }

.lines { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--spacing-lg); }
.line { padding: var(--spacing-2xl); background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-xl); font-family: var(--font-serif); font-style: italic; font-size: 1.1875rem; line-height: 1.45; color: var(--cream-300); }
.line span { display: block; margin-top: var(--spacing-md); font-family: var(--font-inter); font-style: normal; font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; color: var(--text-3); }

/* membership */
.member { background: var(--bg-elev); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.member-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: var(--spacing-6xl); align-items: center; }
@media (max-width: 860px) { .member-grid { grid-template-columns: 1fr; gap: var(--spacing-4xl); } }
.perks { list-style: none; padding: 0; margin: var(--spacing-3xl) 0 0; display: grid; gap: var(--spacing-lg); }
.perks li { display: grid; grid-template-columns: 24px 1fr; gap: var(--spacing-md); color: var(--text-2); }
.perks li b { color: var(--text); font-weight: 600; }
.check { width: 24px; height: 24px; border-radius: var(--radius-full); background: rgba(203,183,148,.15); color: var(--cream-500); display: grid; place-items: center; font-size: .8rem; font-weight: 700; }
.card { background: var(--bg-card); border: 1px solid var(--border-strong); border-radius: var(--radius-2xl); padding: var(--spacing-4xl); box-shadow: var(--shadow-lg); text-align: center; }
.price { margin: var(--spacing-md) 0; font-size: 3.5rem; font-weight: 600; letter-spacing: -0.04em; line-height: 1; }
.price small { font-size: 1rem; font-weight: 500; color: var(--text-2); letter-spacing: 0; }
.card .btn { width: 100%; margin-top: var(--spacing-2xl); }
.card .fine { margin-top: var(--spacing-lg); color: var(--text-3); font-size: .8125rem; }

/* about + footer */
.about p + p { margin-top: var(--spacing-lg); }
footer { border-top: 1px solid var(--border); padding: var(--spacing-5xl) 0; color: var(--text-3); font-size: .875rem; }
footer .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--spacing-2xl); }
footer a { color: var(--text-2); text-decoration: none; }
footer a:hover { color: var(--text); }
.socials { display: flex; gap: var(--spacing-lg); }

/* thank-you / conditions */
.page { min-height: 70vh; display: grid; place-items: center; text-align: center; padding: var(--spacing-8xl) 0; }
.page .inner { max-width: 560px; }
.page .inner p { margin-top: var(--spacing-lg); color: var(--text-2); }
.prose { max-width: 720px; padding: var(--spacing-7xl) 0; }
.prose h1 { font-size: 2rem; margin-bottom: var(--spacing-2xl); }
.prose h2 { font-size: 1.25rem; margin-top: var(--spacing-3xl); margin-bottom: var(--spacing-sm); }
.prose p, .prose li { color: var(--text-2); }

/* video posters (link to Rumble; no iframes) */
.video .frame { display: block; }
.video .frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.video a.frame:hover img { transform: scale(1.03); }
.video .play { position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: var(--radius-full); background: rgba(11,11,13,.6); border: 1px solid rgba(255,255,255,.35); backdrop-filter: blur(4px); }
.video .play::after { content: ""; position: absolute; left: 26px; top: 20px; border-left: 18px solid #fff; border-top: 12px solid transparent; border-bottom: 12px solid transparent; }
