/* =========================================================================
   Ty Blacke — main.css
   Dark & premium. Music-first. One design language across the whole site.

   DESIGN TOKENS live in :root below. This is the ONE place to adjust the
   palette / type — change here and the whole site follows. Get Ty's sign-off
   on these values before building out more pages (see CLAUDE.md).
   ========================================================================= */

:root {
	/* --- Dark scale (warm-black, premium depth) --- */
	--c-bg:        #0B0B0D;  /* page base */
	--c-bg-2:      #131316;  /* sections */
	--c-surface:   #1A1A1F;  /* cards */
	--c-surface-2: #232329;  /* elevated / hover */
	--c-border:    rgba(201, 162, 76, 0.16);

	/* --- Text --- */
	--c-text:      #F4F1E9;  /* warm off-white */
	--c-text-muted:#A7A29A;
	--c-text-dim:  #6E6A63;

	/* --- Gold accent (rich, warm, refined — not a cheap yellow) --- */
	--c-gold:      #C8A24C;  /* primary gold */
	--c-gold-soft: #E4C878;  /* highlight / hover */
	--c-gold-deep: #8C6B2E;  /* shadow / pressed */
	--grad-gold:   linear-gradient(135deg, #E4C878 0%, #C8A24C 45%, #8C6B2E 100%);

	/* --- Type --- */
	--font-display: 'Playfair Display', Georgia, 'Times New Roman', serif;
	--font-body:    'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;

	--fs-xs:   0.8rem;
	--fs-sm:   0.9rem;
	--fs-base: 1rem;
	--fs-md:   1.25rem;
	--fs-lg:   1.563rem;
	--fs-xl:   1.953rem;
	--fs-2xl:  2.441rem;
	--fs-3xl:  3.052rem;
	--fs-hero: clamp(2.5rem, 8vw, 5.2rem);

	/* --- Spacing (8pt-ish) --- */
	--sp-1: 0.25rem; --sp-2: 0.5rem; --sp-3: 0.75rem; --sp-4: 1rem;
	--sp-6: 1.5rem;  --sp-8: 2rem;   --sp-12: 3rem;   --sp-16: 4rem;
	--sp-24: 6rem;   --sp-32: 8rem;

	/* --- Misc --- */
	--header-h:  73px;
	--radius:    14px;
	--radius-sm: 8px;
	--maxw:      1180px;
	--maxw-narrow: 720px;
	--ease:      cubic-bezier(0.4, 0, 0.2, 1);
	--shadow:    0 20px 60px -20px rgba(0, 0, 0, 0.7);
}

/* ----------------------------- Reset / base ----------------------------- */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
	background: var(--c-bg);
	color: var(--c-text);
	font-family: var(--font-body);
	font-size: var(--fs-base);
	font-weight: 400;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
	/* Lining (even-height) figures everywhere so numerals like the "1" in AO1
	   and the showcase "01" indices match the caps (Playfair defaults to old-style). */
	font-variant-numeric: lining-nums;
	font-feature-settings: "lnum" 1;
}

img, iframe { max-width: 100%; display: block; }
a { color: var(--c-gold); text-decoration: none; transition: color 0.2s var(--ease); }
a:hover { color: var(--c-gold-soft); }

h1, h2, h3, h4 {
	font-family: var(--font-display); font-weight: 700; line-height: 1.1; letter-spacing: -0.01em;
	/* Use lining (even-height) figures so numerals like the "1" in AO1 match the caps. */
	font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1;
}

::selection { background: var(--c-gold); color: #0B0B0D; }

/* Accessibility helpers */
.screen-reader-text {
	position: absolute; width: 1px; height: 1px; padding: 0;
	margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.skip-link { position: absolute; left: -999px; top: 0; z-index: 200; }
.skip-link:focus {
	left: var(--sp-4); top: var(--sp-4); background: var(--c-gold);
	color: #0B0B0D; padding: var(--sp-2) var(--sp-4); border-radius: var(--radius-sm);
}
:focus-visible { outline: 2px solid var(--c-gold-soft); outline-offset: 3px; }

/* ----------------------------- Layout ----------------------------- */
.container {
	width: 100%; max-width: var(--maxw);
	margin-inline: auto; padding-inline: var(--sp-6);
}
.container--narrow { max-width: var(--maxw-narrow); }

.site-main { min-height: 50vh; }

/* ----------------------------- Buttons ----------------------------- */
.btn {
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--font-body); font-weight: 600; font-size: var(--fs-sm);
	letter-spacing: 0.04em; text-transform: uppercase;
	padding: 0.9em 1.8em; border-radius: 100px; border: 1px solid transparent;
	cursor: pointer; transition: transform 0.2s var(--ease), box-shadow 0.2s var(--ease), background 0.2s var(--ease);
}
.btn:hover { transform: translateY(-2px); }
.btn--gold {
	background: var(--grad-gold); color: #0B0B0D;
	box-shadow: 0 8px 30px -8px rgba(201, 162, 76, 0.5);
}
.btn--gold:hover { color: #0B0B0D; box-shadow: 0 12px 36px -8px rgba(201, 162, 76, 0.65); }
.btn--ghost {
	background: transparent; color: var(--c-text); border-color: var(--c-border);
}
.btn--ghost:hover { color: var(--c-gold-soft); border-color: var(--c-gold); }

/* ----------------------------- Header / nav ----------------------------- */
.site-header {
	position: sticky; top: 0; z-index: 100;
	background: rgba(11, 11, 13, 0.72);
	backdrop-filter: saturate(140%) blur(12px);
	-webkit-backdrop-filter: saturate(140%) blur(12px);
	border-bottom: 1px solid var(--c-border);
}
.site-header__inner {
	display: flex; align-items: center; justify-content: space-between;
	min-height: 72px;
}
.site-brand__name {
	font-family: var(--font-display); font-weight: 700; font-size: var(--fs-md);
	color: var(--c-text); letter-spacing: 0.02em;
}
.site-brand__link:hover .site-brand__name { color: var(--c-gold-soft); }
.custom-logo { max-height: 44px; width: auto; }

.site-nav .nav-menu {
	list-style: none; display: flex; gap: var(--sp-6); padding: 0; margin: 0; align-items: center;
}
.site-nav .menu-item a {
	color: var(--c-text-muted); font-size: var(--fs-sm); font-weight: 500;
	letter-spacing: 0.02em; position: relative; padding: var(--sp-2) 0;
}
.site-nav .menu-item a::after {
	content: ''; position: absolute; left: 0; bottom: 0; height: 1px; width: 0;
	background: var(--c-gold); transition: width 0.25s var(--ease);
}
.site-nav .menu-item a:hover { color: var(--c-text); }
.site-nav .menu-item a:hover::after,
.site-nav .current-menu-item a::after { width: 100%; }
.site-nav .current-menu-item a { color: var(--c-text); }

.nav-toggle {
	display: none; flex-direction: column; gap: 5px; background: none;
	border: 0; cursor: pointer; padding: var(--sp-2);
}
.nav-toggle__bar {
	width: 26px; height: 2px; background: var(--c-text);
	transition: transform 0.3s var(--ease), opacity 0.3s var(--ease);
}

/* ----------------------------- Hero ----------------------------- */
.hero {
	position: relative; min-height: 92vh; display: flex; align-items: center;
	background-color: var(--c-bg-2);
	background-image: var(--hero-img);
	background-size: cover; background-position: center; background-repeat: no-repeat;
	overflow: hidden;
}
.hero__overlay {
	position: absolute; inset: 0;
	background:
		linear-gradient(180deg, rgba(11,11,13,0.35) 0%, rgba(11,11,13,0.55) 55%, rgba(11,11,13,0.95) 100%),
		radial-gradient(120% 80% at 70% 30%, rgba(201,162,76,0.10) 0%, transparent 60%);
}
.hero__inner { position: relative; z-index: 2; padding-block: var(--sp-24); }
.hero__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.42em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-4); font-weight: 500;
}
.hero__title { font-size: var(--fs-hero); max-width: 16ch; }
.hero__static { display: block; color: var(--c-text); opacity: 0.92; }
.typing {
	display: inline-block; min-height: 1.15em;
	background: var(--grad-gold); -webkit-background-clip: text;
	background-clip: text; -webkit-text-fill-color: transparent; color: var(--c-gold);
}
.typing::after {
	content: ''; display: inline-block; width: 3px; height: 0.95em;
	background: var(--c-gold-soft); margin-left: 6px; vertical-align: text-bottom;
	-webkit-text-fill-color: var(--c-gold-soft);
	animation: tyb-caret 0.9s steps(1) infinite;
}
@keyframes tyb-caret { 0%, 50% { opacity: 1; } 51%, 100% { opacity: 0; } }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--sp-4); margin-top: var(--sp-8); }

.hero__scroll {
	position: absolute; left: 50%; bottom: var(--sp-8); transform: translateX(-50%);
	z-index: 2; width: 26px; height: 42px; border: 2px solid var(--c-border);
	border-radius: 100px; display: flex; justify-content: center; padding-top: 7px;
}
.hero__scroll-dot { width: 4px; height: 8px; border-radius: 4px; background: var(--c-gold); animation: tyb-scroll 1.8s var(--ease) infinite; }
@keyframes tyb-scroll { 0% { opacity: 0; transform: translateY(-4px); } 40% { opacity: 1; } 80%, 100% { opacity: 0; transform: translateY(10px); } }

/* ----------------------------- Section heads ----------------------------- */
.section-head { max-width: 640px; margin-bottom: var(--sp-12); }
.section-head__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.32em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-3); font-weight: 500;
}
.section-head__title { font-size: var(--fs-2xl); margin-bottom: var(--sp-4); }
.section-head__copy { color: var(--c-text-muted); font-size: var(--fs-md); }

/* ----------------------------- Music section ----------------------------- */
.music { padding-block: var(--sp-24); background: var(--c-bg); position: relative; }
.music::before {
	content: ''; position: absolute; inset: 0 0 auto 0; height: 1px;
	background: linear-gradient(90deg, transparent, var(--c-border), transparent);
}
.music__player {
	border-radius: var(--radius); overflow: hidden;
	box-shadow: var(--shadow); border: 1px solid var(--c-border);
	background: var(--c-surface);
}
.music__links { display: flex; flex-wrap: wrap; gap: var(--sp-3); margin-top: var(--sp-8); }
.stream-link {
	display: inline-flex; align-items: center; padding: 0.7em 1.4em;
	border: 1px solid var(--c-border); border-radius: 100px;
	color: var(--c-text); font-size: var(--fs-sm); font-weight: 500; letter-spacing: 0.03em;
	transition: border-color 0.2s var(--ease), color 0.2s var(--ease), background 0.2s var(--ease);
}
.stream-link:hover { border-color: var(--c-gold); color: var(--c-gold-soft); background: var(--c-surface); }
.stream-link.is-pending { opacity: 0.4; pointer-events: none; }

/* ----------------------------- Release gallery (cards link OUT to streaming) ----------------------------- */
.release-grid {
	display: grid; gap: var(--sp-6); margin-top: var(--sp-12);
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}
.release-card {
	background: var(--c-surface); border: 1px solid var(--c-border);
	border-radius: var(--radius); padding: var(--sp-8);
	display: flex; flex-direction: column; gap: var(--sp-6);
	transition: transform 0.25s var(--ease), border-color 0.25s var(--ease);
}
.release-card:hover { transform: translateY(-4px); border-color: var(--c-gold); }
.release-card__type {
	display: block; font-size: var(--fs-xs); letter-spacing: 0.18em;
	text-transform: uppercase; color: var(--c-gold); margin-bottom: var(--sp-2);
}
.release-card__title { font-size: var(--fs-lg); color: var(--c-text); line-height: 1.2; }
.release-card__feat { color: var(--c-text-dim); font-size: var(--fs-sm); margin-top: var(--sp-1); }
.release-card__links { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-top: auto; }
.release-card .stream-link { padding: 0.55em 1.05em; font-size: var(--fs-xs); }
.stream-link--all { border-color: var(--c-gold); color: var(--c-gold-soft); }

.venture-discography { padding-block: var(--sp-8) var(--sp-16); }

/* ----------------------------- Page hero (interior pages) ----------------------------- */
.page-hero { padding-block: var(--sp-16) var(--sp-8); border-bottom: 1px solid var(--c-border); }
.page-hero__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.32em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-3); font-weight: 500;
}
.page-hero__title { font-size: var(--fs-3xl); max-width: 18ch; }
.page-hero__desc { color: var(--c-text-muted); font-size: var(--fs-md); margin-top: var(--sp-4); max-width: 52ch; }

/* ----------------------------- Single post ----------------------------- */
.single-hero { padding-block: var(--sp-16) var(--sp-8); text-align: center; }
.single-hero__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-4); font-weight: 500;
}
.single-hero__title { font-size: var(--fs-3xl); margin-inline: auto; max-width: 20ch; }
.single-hero__meta {
	display: flex; gap: var(--sp-3); justify-content: center; align-items: center;
	margin-top: var(--sp-6); color: var(--c-text-dim); font-size: var(--fs-sm);
	letter-spacing: 0.06em; text-transform: uppercase;
}
.single .post-feature { margin-block: var(--sp-12) 0; }
.single-tags { list-style: none; display: flex; flex-wrap: wrap; gap: var(--sp-2); padding: 0; margin-top: var(--sp-12); }
.single-tags a {
	display: inline-flex; padding: 0.45em 1em; border: 1px solid var(--c-border);
	border-radius: 100px; color: var(--c-text-muted); font-size: var(--fs-xs); letter-spacing: 0.04em;
}
.single-tags a:hover { border-color: var(--c-gold); color: var(--c-gold-soft); }
.page-links { margin-top: var(--sp-8); color: var(--c-text-muted); display: flex; gap: var(--sp-2); }
.comments-area { padding-block: var(--sp-8) var(--sp-24); }

/* ----------------------------- Prose / page content ----------------------------- */
.page-content { padding-block: var(--sp-12) var(--sp-24); }
.prose { color: var(--c-text-muted); font-size: var(--fs-md); line-height: 1.8; }
.prose > * + * { margin-top: var(--sp-6); }
.prose h2 { color: var(--c-text); font-size: var(--fs-xl); margin-top: var(--sp-12); }
.prose h3 { color: var(--c-text); font-size: var(--fs-lg); margin-top: var(--sp-8); }
.prose a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--c-border); }
.prose a:hover { text-decoration-color: var(--c-gold); }
.prose img { border-radius: var(--radius); margin-block: var(--sp-8); }
.prose blockquote {
	border-left: 2px solid var(--c-gold); padding-left: var(--sp-6);
	font-family: var(--font-display); font-style: italic; color: var(--c-text); font-size: var(--fs-lg);
}
.prose ul, .prose ol { padding-left: var(--sp-6); }
.prose li + li { margin-top: var(--sp-2); }

.post-feature { margin-top: var(--sp-8); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.post-feature img { width: 100%; }

/* ----------------------------- Blog list ----------------------------- */
.post-list {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: var(--sp-8); padding-block: var(--sp-12) var(--sp-16);
}
.post-card {
	background: var(--c-surface); border: 1px solid var(--c-border);
	border-radius: var(--radius); overflow: hidden;
	transition: transform 0.25s var(--ease), border-color 0.25s var(--ease);
}
.post-card:hover { transform: translateY(-4px); border-color: var(--c-gold); }
.post-card__link { color: inherit; display: block; }
.post-card__media { aspect-ratio: 16 / 10; overflow: hidden; }
.post-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s var(--ease); }
.post-card:hover .post-card__media img { transform: scale(1.04); }
.post-card__body { padding: var(--sp-6); }
.post-card__meta {
	display: flex; gap: var(--sp-3); flex-wrap: wrap; align-items: center;
	font-size: var(--fs-xs); letter-spacing: 0.06em; text-transform: uppercase;
	color: var(--c-text-dim); margin-bottom: var(--sp-3);
}
.post-card__meta--single { margin-bottom: var(--sp-4); justify-content: center; }
.post-card__cats a { color: var(--c-gold); }
.post-card__title { font-size: var(--fs-lg); color: var(--c-text); margin-bottom: var(--sp-3); }
.post-card__excerpt { color: var(--c-text-muted); font-size: var(--fs-sm); margin-bottom: var(--sp-4); }
.post-card__more { color: var(--c-gold); font-size: var(--fs-sm); font-weight: 600; letter-spacing: 0.04em; }

.post-nav { display: flex; justify-content: space-between; gap: var(--sp-6); padding-block: var(--sp-12) var(--sp-24); }
.post-nav a { color: var(--c-text-muted); font-size: var(--fs-sm); }
.post-nav a:hover { color: var(--c-gold-soft); }

.pagination, .nav-links { display: flex; gap: var(--sp-3); justify-content: center; padding-bottom: var(--sp-16); flex-wrap: wrap; }
.pagination .page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 42px; height: 42px; padding: 0 var(--sp-3); border-radius: var(--radius-sm);
	border: 1px solid var(--c-border); color: var(--c-text-muted);
}
.pagination .page-numbers.current { background: var(--grad-gold); color: #0B0B0D; border-color: transparent; }
.pagination a.page-numbers:hover { border-color: var(--c-gold); color: var(--c-gold-soft); }

.empty { padding-block: var(--sp-24); text-align: center; color: var(--c-text-muted); font-size: var(--fs-md); }

/* ----------------------------- Footer + signup ----------------------------- */
.site-footer { background: var(--c-bg-2); border-top: 1px solid var(--c-border); }
.site-footer__inner { padding-block: var(--sp-16); }
.footer-signup { max-width: var(--maxw-narrow); margin-inline: auto; text-align: center; }
.footer-signup__title { font-size: var(--fs-2xl); margin-bottom: var(--sp-3); }
.footer-signup__copy { color: var(--c-text-muted); margin-bottom: var(--sp-8); font-size: var(--fs-md); }

.signup-form { max-width: 520px; margin-inline: auto; }
.signup-form__row {
	display: flex; gap: var(--sp-3); background: var(--c-surface);
	border: 1px solid var(--c-border); border-radius: 100px; padding: var(--sp-2);
}
.signup-form__input {
	flex: 1; background: transparent; border: 0; color: var(--c-text);
	font-family: var(--font-body); font-size: var(--fs-base); padding: 0 var(--sp-4); min-width: 0;
}
.signup-form__input::placeholder { color: var(--c-text-dim); }
.signup-form__input:focus { outline: none; }
.signup-form__submit { flex-shrink: 0; }
.signup-form__msg { font-size: var(--fs-sm); margin-top: var(--sp-3); min-height: 1.2em; color: var(--c-gold-soft); }

.site-footer__meta {
	display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: var(--sp-4);
	margin-top: var(--sp-16); padding-top: var(--sp-8); border-top: 1px solid var(--c-border);
}
.site-footer__copy { color: var(--c-text-dim); font-size: var(--fs-sm); }
.site-footer__spotify { font-size: var(--fs-sm); font-weight: 500; }

/* ----------------------------- Popup ----------------------------- */
.popup {
	position: fixed; inset: 0; z-index: 1000; display: flex;
	align-items: center; justify-content: center; padding: var(--sp-4);
	opacity: 0; transition: opacity 0.3s var(--ease);
}
.popup.is-open { opacity: 1; }
.popup[hidden] { display: none; }
.popup__backdrop { position: absolute; inset: 0; background: rgba(6, 6, 8, 0.82); backdrop-filter: blur(4px); }
.popup__dialog {
	position: relative; z-index: 2; width: 100%; max-width: 440px;
	background: var(--c-surface); border: 1px solid var(--c-border);
	border-radius: var(--radius); padding: var(--sp-12) var(--sp-8) var(--sp-8);
	box-shadow: var(--shadow); text-align: center;
	transform: translateY(16px) scale(0.98); transition: transform 0.3s var(--ease);
}
.popup.is-open .popup__dialog { transform: translateY(0) scale(1); }
.popup__close {
	position: absolute; top: var(--sp-3); right: var(--sp-4); background: none; border: 0;
	color: var(--c-text-dim); font-size: 1.8rem; line-height: 1; cursor: pointer; transition: color 0.2s var(--ease);
}
.popup__close:hover { color: var(--c-text); }
.popup__eyebrow { font-size: var(--fs-xs); letter-spacing: 0.32em; text-transform: uppercase; color: var(--c-gold); margin-bottom: var(--sp-3); }
.popup__title { font-size: var(--fs-xl); margin-bottom: var(--sp-3); }
.popup__copy { color: var(--c-text-muted); font-size: var(--fs-sm); margin-bottom: var(--sp-6); }
.popup__form { display: flex; flex-direction: column; gap: var(--sp-3); }
.popup__input {
	background: var(--c-bg); border: 1px solid var(--c-border); border-radius: var(--radius-sm);
	color: var(--c-text); font-family: var(--font-body); font-size: var(--fs-base); padding: 0.85em 1em; width: 100%;
}
.popup__input::placeholder { color: var(--c-text-dim); }
.popup__input:focus { outline: none; border-color: var(--c-gold); }
.popup__submit { margin-top: var(--sp-2); }
.popup__msg { font-size: var(--fs-sm); min-height: 1.2em; color: var(--c-gold-soft); }

/* ----------------------------- Venture / project pages (Phase 4) ----------------------------- */
.venture-hero {
	position: relative;
	padding-block: var(--sp-24) var(--sp-12);
	border-bottom: 1px solid var(--c-border);
	overflow: hidden;
}
.venture-hero::before {
	content: ''; position: absolute; inset: 0; z-index: 0;
	background:
		radial-gradient(80% 120% at 80% -10%, rgba(201,162,76,0.12) 0%, transparent 55%),
		linear-gradient(180deg, var(--c-bg-2) 0%, var(--c-bg) 100%);
}
.venture-hero > .container { position: relative; z-index: 1; }
.venture-hero__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.36em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-4); font-weight: 500;
}
.venture-hero__title { font-size: var(--fs-3xl); max-width: 16ch; }
.venture-hero__tagline {
	color: var(--c-text-muted); font-size: var(--fs-lg);
	margin-top: var(--sp-6); max-width: 38ch; line-height: 1.45;
}
.venture-hero__actions { display: flex; flex-wrap: wrap; gap: var(--sp-4); margin-top: var(--sp-8); }
.btn.is-pending { opacity: 0.4; pointer-events: none; }

.venture-intro { padding-block: var(--sp-16) var(--sp-8); }
.venture-body { padding-block: var(--sp-8) var(--sp-16); }

.venture-features { padding-block: var(--sp-8) var(--sp-16); }
/* Flex + centered so the last row never strands a lone card (was 4+1). ~3 per row. */
.feature-grid {
	display: flex; flex-wrap: wrap; justify-content: center; gap: var(--sp-6);
}
.feature-card {
	flex: 1 1 280px; max-width: 360px;
	background: var(--c-surface); border: 1px solid var(--c-border);
	border-radius: var(--radius); padding: var(--sp-8);
	transition: transform 0.25s var(--ease), border-color 0.25s var(--ease);
}
.feature-card:hover { transform: translateY(-4px); border-color: var(--c-gold); }
.feature-card__index {
	display: inline-block; font-family: var(--font-display); font-size: var(--fs-sm);
	color: var(--c-gold); letter-spacing: 0.1em; margin-bottom: var(--sp-4);
	-webkit-text-fill-color: transparent; background: var(--grad-gold);
	-webkit-background-clip: text; background-clip: text;
}
.feature-card__title { font-size: var(--fs-lg); color: var(--c-text); margin-bottom: var(--sp-3); }
.feature-card__copy { color: var(--c-text-muted); font-size: var(--fs-sm); line-height: 1.7; }

.venture-cta { padding-block: var(--sp-8) var(--sp-24); }
.venture-cta__panel {
	background: var(--c-bg-2); border: 1px solid var(--c-border);
	border-radius: var(--radius); padding: var(--sp-16) var(--sp-8);
	text-align: center; box-shadow: var(--shadow); position: relative; overflow: hidden;
}
.venture-cta__panel::before {
	content: ''; position: absolute; inset: 0; z-index: 0;
	background: radial-gradient(70% 140% at 50% 0%, rgba(201,162,76,0.10) 0%, transparent 60%);
}
.venture-cta__panel > * { position: relative; z-index: 1; }
.venture-cta__heading { font-size: var(--fs-2xl); margin-bottom: var(--sp-3); }
.venture-cta__copy { color: var(--c-text-muted); font-size: var(--fs-md); margin-bottom: var(--sp-8); max-width: 48ch; margin-inline: auto; }
.venture-cta__links { display: flex; flex-wrap: wrap; gap: var(--sp-3); justify-content: center; }

/* ----------------------------- Work in Progress page ----------------------------- */
.wip-list-section { padding-block: var(--sp-8) var(--sp-16); }
.wip-list { list-style: none; padding: 0; margin: 0; max-width: 820px; }
.wip-item {
	display: flex; align-items: center; gap: var(--sp-6);
	padding: var(--sp-6) 0; border-bottom: 1px solid var(--c-border);
}
.wip-item__pulse {
	flex-shrink: 0; width: 10px; height: 10px; border-radius: 50%;
	background: var(--c-gold); box-shadow: 0 0 0 0 rgba(201,162,76,0.55);
	animation: tyb-pulse 2s var(--ease) infinite;
}
@keyframes tyb-pulse {
	0% { box-shadow: 0 0 0 0 rgba(201,162,76,0.5); }
	70% { box-shadow: 0 0 0 10px rgba(201,162,76,0); }
	100% { box-shadow: 0 0 0 0 rgba(201,162,76,0); }
}
.wip-item__text { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.wip-item__label { font-family: var(--font-display); font-size: var(--fs-lg); color: var(--c-text); }
.wip-item__detail { color: var(--c-text-muted); font-size: var(--fs-sm); }
.wip-item__tag {
	flex-shrink: 0; font-size: var(--fs-xs); letter-spacing: 0.1em; text-transform: uppercase;
	color: var(--c-gold); border: 1px solid var(--c-border); border-radius: 100px; padding: 0.4em 0.9em;
}

.wip-teaser { padding-block: var(--sp-8) var(--sp-24); }
.wip-teaser__panel {
	background: var(--c-bg-2); border: 1px solid var(--c-border); border-radius: var(--radius);
	padding: var(--sp-16) var(--sp-8); text-align: center; box-shadow: var(--shadow);
	position: relative; overflow: hidden;
}
.wip-teaser__panel::before {
	content: ''; position: absolute; inset: 0; z-index: 0;
	background: radial-gradient(70% 140% at 50% 0%, rgba(201,162,76,0.12) 0%, transparent 60%);
}
.wip-teaser__panel > * { position: relative; z-index: 1; }
.wip-teaser__eyebrow { font-size: var(--fs-sm); letter-spacing: 0.32em; text-transform: uppercase; color: var(--c-gold); margin-bottom: var(--sp-3); font-weight: 500; }
.wip-teaser__heading { font-size: var(--fs-2xl); margin-bottom: var(--sp-6); }
.wip-teaser__copy { color: var(--c-text-muted); font-size: var(--fs-md); margin-bottom: var(--sp-8); max-width: 44ch; margin-inline: auto; }

.countdown { display: flex; gap: var(--sp-4); justify-content: center; margin-bottom: var(--sp-8); flex-wrap: wrap; }
.countdown__unit {
	display: flex; flex-direction: column; align-items: center; gap: var(--sp-1);
	min-width: 72px; background: var(--c-surface); border: 1px solid var(--c-border);
	border-radius: var(--radius-sm); padding: var(--sp-4) var(--sp-3);
}
.countdown__num {
	font-family: var(--font-display); font-size: var(--fs-2xl); line-height: 1;
	background: var(--grad-gold); -webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: var(--c-gold);
}
.countdown__lbl { font-size: var(--fs-xs); letter-spacing: 0.1em; text-transform: uppercase; color: var(--c-text-dim); }

/* ----------------------------- About page (photo-led story) ----------------------------- */
.about-hero {
	position: relative; min-height: 80vh; display: flex; align-items: flex-end;
	background-color: var(--c-bg-2);
	background-image: var(--about-hero-img);
	background-size: cover; background-position: center 22%; background-repeat: no-repeat;
	border-bottom: 1px solid var(--c-border); overflow: hidden;
}
.about-hero__overlay {
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(11,11,13,0.25) 0%, rgba(11,11,13,0.55) 50%, rgba(11,11,13,0.96) 100%);
}
.about-hero__inner { position: relative; z-index: 2; padding-block: var(--sp-24) var(--sp-16); }
.about-hero__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.42em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-4); font-weight: 500;
}
.about-hero__title { font-size: var(--fs-hero); max-width: 14ch; }
.about-hero__tagline { color: var(--c-text-muted); font-size: var(--fs-lg); margin-top: var(--sp-6); max-width: 46ch; line-height: 1.5; }

.about-story { padding-block: var(--sp-24); }
.about-row {
	display: grid; grid-template-columns: 0.82fr 1fr; gap: var(--sp-16); align-items: center;
}
.about-row + .about-row { margin-top: var(--sp-24); }
.about-row--reverse .about-row__media { order: 2; }
.about-row__media {
	border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow);
	border: 1px solid var(--c-border); margin: 0;
}
/* Show the full photo — never crop. Natural aspect ratio, scaled to the column. */
.about-row__media img { width: 100%; height: auto; display: block; }
.about-row__eyebrow {
	font-size: var(--fs-sm); letter-spacing: 0.32em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-3); font-weight: 500;
}
.about-row__title { font-size: var(--fs-2xl); margin-bottom: var(--sp-4); }
.about-row__text p { color: var(--c-text-muted); font-size: var(--fs-md); line-height: 1.8; }
.about-row__text p + p { margin-top: var(--sp-4); }

.about-verse { padding-block: var(--sp-8) var(--sp-24); }
.about-verse__panel {
	max-width: var(--maxw-narrow); margin-inline: auto; text-align: center;
	border: 1px solid var(--c-gold); border-radius: var(--radius);
	padding: var(--sp-16) var(--sp-8); position: relative;
	background: radial-gradient(80% 130% at 50% 0%, rgba(201,162,76,0.08) 0%, transparent 60%);
}
.about-verse__text {
	font-family: var(--font-display); font-style: italic; font-size: var(--fs-2xl);
	color: var(--c-text); line-height: 1.35;
}
.about-verse__ref {
	display: block; margin-top: var(--sp-6); font-style: normal;
	letter-spacing: 0.2em; text-transform: uppercase; font-size: var(--fs-sm); color: var(--c-gold);
}

.about-cta { padding-block: 0 var(--sp-24); }
.about-cta__panel {
	position: relative; overflow: hidden; border-radius: var(--radius);
	border: 1px solid var(--c-border); box-shadow: var(--shadow);
	min-height: 62vh; display: flex; align-items: flex-end;
	background-color: var(--c-bg-2);
	background-image: var(--about-cta-img);
	background-size: cover; background-position: center 20%; background-repeat: no-repeat;
}
.about-cta__overlay {
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(11,11,13,0.2) 0%, rgba(11,11,13,0.55) 45%, rgba(11,11,13,0.92) 100%);
}
.about-cta__inner { position: relative; z-index: 2; width: 100%; text-align: center; padding: var(--sp-16) var(--sp-8); }
.about-cta__eyebrow { font-size: var(--fs-sm); letter-spacing: 0.32em; text-transform: uppercase; color: var(--c-gold); margin-bottom: var(--sp-3); font-weight: 500; }
.about-cta__heading { font-size: var(--fs-2xl); margin-bottom: var(--sp-4); }
.about-cta__copy { color: var(--c-text-muted); font-size: var(--fs-md); margin-bottom: var(--sp-8); max-width: 46ch; margin-inline: auto; }
.about-cta__actions { display: flex; flex-wrap: wrap; gap: var(--sp-4); justify-content: center; }

/* ----------------------------- Music carousel (replaces Spotify embed) ----------------------------- */
.carousel { position: relative; margin-top: var(--sp-12); }
.carousel__viewport {
	overflow: hidden; border-radius: var(--radius);
	border: 1px solid var(--c-border); box-shadow: var(--shadow); background: var(--c-surface);
}
.carousel__track { display: flex; transition: transform 0.6s var(--ease); will-change: transform; }
.carousel__slide {
	flex: 0 0 100%; min-width: 100%;
	display: grid; grid-template-columns: minmax(0, 300px) 1fr; gap: var(--sp-12);
	align-items: center; padding: var(--sp-12);
}
.release-slide__art, .album-slide__art {
	aspect-ratio: 1 / 1; border-radius: var(--radius-sm); overflow: hidden;
	border: 1px solid var(--c-border); background: var(--c-bg-2);
}
.release-slide__art img { width: 100%; height: 100%; object-fit: cover; }
.release-slide__art--placeholder, .album-slide__art {
	display: grid; place-items: center;
	background: radial-gradient(120% 120% at 30% 20%, rgba(201,162,76,0.18) 0%, transparent 60%), var(--c-bg-2);
}
.release-slide__art--placeholder span { font-size: 4rem; color: var(--c-gold); opacity: 0.85; }
.album-slide__art { position: relative; }
.album-slide__badge {
	font-size: var(--fs-xs); letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600;
	color: var(--c-gold-soft); border: 1px solid var(--c-gold); border-radius: 100px; padding: 0.5em 1.1em;
}
.release-slide__kicker {
	display: block; font-size: var(--fs-xs); letter-spacing: 0.18em; text-transform: uppercase;
	color: var(--c-gold); margin-bottom: var(--sp-3);
}
.release-slide__title { font-size: var(--fs-2xl); color: var(--c-text); line-height: 1.15; }
.release-slide__feat { color: var(--c-text-dim); font-size: var(--fs-sm); margin-top: var(--sp-1); }
.album-slide__tagline { color: var(--c-text); font-size: var(--fs-md); margin-top: var(--sp-4); }
.album-slide__note { color: var(--c-text-muted); font-size: var(--fs-sm); margin-top: var(--sp-3); }
.release-slide__prompt {
	font-size: var(--fs-xs); letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--c-text-dim); margin: var(--sp-6) 0 var(--sp-3);
}
/* Sleek, uniform streaming-link grid (no more ragged pills). */
.release-slide__links {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); gap: var(--sp-2);
	margin-top: var(--sp-3);
}
.release-slide__links .stream-link { justify-content: center; padding: 0.7em 1em; font-size: var(--fs-sm); }
.album-slide__body .release-slide__links { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); margin-top: var(--sp-8); }

.carousel__nav {
	position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
	width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center;
	background: rgba(11,11,13,0.7); border: 1px solid var(--c-border); color: var(--c-text);
	cursor: pointer; backdrop-filter: blur(6px); transition: background 0.2s var(--ease), border-color 0.2s var(--ease), color 0.2s var(--ease);
}
.carousel__nav:hover { color: var(--c-gold-soft); border-color: var(--c-gold); background: rgba(11,11,13,0.9); }
.carousel__nav svg { width: 22px; height: 22px; }
.carousel__nav--prev { left: var(--sp-4); }
.carousel__nav--next { right: var(--sp-4); }
.carousel__dots { display: flex; gap: var(--sp-2); justify-content: center; margin-top: var(--sp-6); }
.carousel__dot {
	width: 9px; height: 9px; border-radius: 100px; padding: 0; cursor: pointer;
	border: 0; background: var(--c-surface-2); transition: width 0.25s var(--ease), background 0.25s var(--ease);
}
.carousel__dot:hover { background: var(--c-gold-deep); }
.carousel__dot.is-active { width: 26px; background: var(--grad-gold); }

/* ----------------------------- Social icon row (footer) ----------------------------- */
.social-row { list-style: none; display: flex; gap: var(--sp-3); justify-content: center; flex-wrap: wrap; padding: 0; margin: 0; }
.social-link {
	width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center;
	border: 1px solid var(--c-border); color: var(--c-text-muted);
	transition: color 0.2s var(--ease), border-color 0.2s var(--ease), transform 0.2s var(--ease), background 0.2s var(--ease);
}
.social-link:hover { color: var(--c-gold-soft); border-color: var(--c-gold); background: var(--c-surface); transform: translateY(-2px); }
.social-link svg { width: 20px; height: 20px; }

/* ----------------------------- Footer: Discover / Other Projects ----------------------------- */
.site-footer__social { max-width: var(--maxw-narrow); margin-inline: auto; }
.footer-discover {
	text-align: center; margin-top: var(--sp-16); padding-top: var(--sp-12);
	border-top: 1px solid var(--c-border);
}
.footer-discover__title { font-size: var(--fs-lg); margin-bottom: var(--sp-2); }
.footer-discover__copy { color: var(--c-text-muted); font-size: var(--fs-sm); margin-bottom: var(--sp-8); }
.footer-discover__groups {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--sp-8);
	text-align: left; max-width: 920px; margin-inline: auto;
}
.footer-discover__group-title {
	font-family: var(--font-body); font-size: var(--fs-xs); letter-spacing: 0.16em;
	text-transform: uppercase; color: var(--c-gold); font-weight: 600; margin-bottom: var(--sp-3);
}
.footer-discover__list { list-style: none; display: flex; flex-direction: column; gap: var(--sp-2); padding: 0; margin: 0; }
.footer-discover__list a { color: var(--c-text-muted); font-size: var(--fs-sm); font-weight: 500; letter-spacing: 0.02em; }
.footer-discover__list a:hover { color: var(--c-gold-soft); }
.site-footer__social { margin-top: var(--sp-12); }
.site-footer__tagline {
	color: var(--c-gold); font-size: var(--fs-sm); font-weight: 500; letter-spacing: 0.04em;
}
.site-footer__copy em { font-style: italic; color: var(--c-text-muted); }

/* ----------------------------- All-projects overview ("Discover") ----------------------------- */
.projects-section { padding-block: var(--sp-8) var(--sp-24); }
.projects-grid {
	display: grid; gap: var(--sp-6);
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.project-card {
	display: flex; flex-direction: column; gap: var(--sp-3); color: inherit;
	background: var(--c-surface); border: 1px solid var(--c-border); border-radius: var(--radius);
	padding: var(--sp-8); transition: transform 0.25s var(--ease), border-color 0.25s var(--ease);
}
.project-card:hover { transform: translateY(-4px); border-color: var(--c-gold); color: inherit; }
.project-card__eyebrow {
	font-size: var(--fs-xs); letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-gold);
}
.project-card__title { font-size: var(--fs-lg); color: var(--c-text); }
.project-card__copy { color: var(--c-text-muted); font-size: var(--fs-sm); line-height: 1.7; flex: 1; }
.project-card__more { color: var(--c-gold); font-size: var(--fs-sm); font-weight: 600; margin-top: var(--sp-2); }

/* ----------------------------- Interactive showcase (replaces tile grids) ----------------------------- */
.venture-section-kicker {
	text-align: center; font-size: var(--fs-xs); letter-spacing: 0.22em;
	text-transform: uppercase; color: var(--c-gold); margin-bottom: var(--sp-8); font-weight: 600;
}
.showcase {
	display: grid; grid-template-columns: minmax(210px, 300px) 1fr; gap: var(--sp-12); align-items: start;
}
.showcase__tabs { display: flex; flex-direction: column; gap: 2px; }
.showcase__tab {
	display: flex; align-items: baseline; gap: var(--sp-3); width: 100%; text-align: left; cursor: pointer;
	background: none; border: 0; border-left: 2px solid var(--c-border); padding: var(--sp-4) var(--sp-5);
	color: var(--c-text-muted); transition: color 0.2s var(--ease), border-color 0.2s var(--ease), background 0.2s var(--ease);
}
.showcase__tab:hover { color: var(--c-text); }
.showcase__tab.is-active {
	color: var(--c-text); border-left-color: var(--c-gold);
	background: linear-gradient(90deg, rgba(201,162,76,0.08), transparent);
}
.showcase__tab-index { font-size: var(--fs-xs); letter-spacing: 0.1em; color: var(--c-gold); font-weight: 600; }
.showcase__tab-label { font-family: var(--font-display); font-size: var(--fs-lg); line-height: 1.2; }
.showcase__panels { position: relative; min-height: 280px; }
.showcase__panel {
	display: none; background: var(--c-surface); border: 1px solid var(--c-border);
	border-radius: var(--radius); padding: var(--sp-12); box-shadow: var(--shadow);
}
.showcase__panel.is-active { display: block; animation: tyb-sc-fade 0.45s var(--ease); }
@keyframes tyb-sc-fade { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.showcase__panel-index {
	display: block; font-family: var(--font-display); font-size: var(--fs-3xl); line-height: 1;
	background: var(--grad-gold); -webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent; color: var(--c-gold); margin-bottom: var(--sp-4);
}
.showcase__panel-title { font-size: var(--fs-xl); color: var(--c-text); margin-bottom: var(--sp-4); }
.showcase__panel-copy { color: var(--c-text-muted); font-size: var(--fs-md); line-height: 1.8; }
.showcase__panel-link { margin-top: var(--sp-8); }

/* ----------------------------- Streaming brand-icon links (carousel) ----------------------------- */
.release-slide__links--icons { display: flex; flex-wrap: wrap; gap: var(--sp-3); align-items: center; margin-top: var(--sp-4); }
.stream-icon {
	width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center;
	border: 1px solid var(--c-border); color: var(--c-text-muted);
	transition: color 0.2s var(--ease), border-color 0.2s var(--ease), transform 0.2s var(--ease), background 0.2s var(--ease);
}
.stream-icon:hover { color: var(--c-gold-soft); border-color: var(--c-gold); background: var(--c-bg-2); transform: translateY(-2px); }
.stream-icon svg { width: 22px; height: 22px; }
.release-slide__links--icons .stream-link { padding: 0.55em 1.05em; font-size: var(--fs-xs); }

/* ----------------------------- Brand icons (Ty's kit, recolored to light) ----------------------------- */
.brand-ico {
	width: 22px; height: 22px; display: block;
	filter: invert(1); opacity: 0.68; transition: opacity 0.2s var(--ease);
}
.social-link:hover .brand-ico, .stream-icon:hover .brand-ico { opacity: 1; }
/* Streaming icons read a touch larger inside their circles. */
.stream-icon { width: 50px; height: 50px; }
.stream-icon .brand-ico { width: 27px; height: 27px; }

/* ----------------------------- Hero social row + immersive home header ----------------------------- */
.hero__social { margin-top: var(--sp-8); }
.hero__social .social-row { justify-content: flex-start; }
.hero__social .social-link { width: 42px; height: 42px; }

/* Home: header overlays the hero (pull the hero up under the transparent bar). */
.tyb-home .site-main { margin-top: calc(-1 * var(--header-h)); }
.tyb-home .site-header {
	background: transparent; border-bottom-color: transparent;
	-webkit-backdrop-filter: none; backdrop-filter: none;
}
.tyb-home .site-header .menu-item a { color: var(--c-text); }
.tyb-home .site-header.site-header--scrolled {
	background: rgba(11, 11, 13, 0.85); border-bottom-color: var(--c-border);
	-webkit-backdrop-filter: saturate(140%) blur(12px); backdrop-filter: saturate(140%) blur(12px);
}

/* ----------------------------- Responsive ----------------------------- */
@media (max-width: 600px) {
	/* Phone hero swaps to the portrait cover if the template provides one. */
	.hero { background-image: var(--hero-mobile-img, var(--hero-img)); }
}

@media (max-width: 760px) {
	.footer-discover__groups { grid-template-columns: repeat(2, 1fr); gap: var(--sp-6) var(--sp-8); max-width: 420px; }
	.showcase { grid-template-columns: 1fr; gap: var(--sp-6); }
	.showcase__tabs { flex-direction: row; flex-wrap: wrap; gap: var(--sp-2); justify-content: center; }
	.showcase__tab { border-left: 0; border: 1px solid var(--c-border); border-radius: 100px; padding: 0.5em 1em; }
	.showcase__tab.is-active { background: var(--grad-gold); color: #0B0B0D; border-color: transparent; }
	.showcase__tab-index { display: none; }
	.showcase__tab-label { font-family: var(--font-body); font-size: var(--fs-sm); font-weight: 500; }
	.showcase__panels { min-height: 0; }
	.showcase__panel { padding: var(--sp-8); }
	.release-slide__links--icons { justify-content: center; }
	.carousel__slide { grid-template-columns: 1fr; gap: var(--sp-6); padding: var(--sp-8); text-align: center; }
	.release-slide__art, .album-slide__art { max-width: 240px; margin-inline: auto; }
	.release-slide__links { justify-items: center; }
	.carousel__nav { width: 40px; height: 40px; }
	.carousel__nav--prev { left: 6px; }
	.carousel__nav--next { right: 6px; }
}

@media (max-width: 860px) {
	.about-row { grid-template-columns: 1fr; gap: var(--sp-8); }
	.about-row--reverse .about-row__media { order: 0; }
	.about-row + .about-row { margin-top: var(--sp-16); }
	.about-story { padding-block: var(--sp-16); }
	.about-hero { min-height: 70vh; }
	.about-cta__panel { min-height: 70vh; }
}

@media (max-width: 860px) {
	.nav-toggle { display: flex; }
	.site-nav {
		position: fixed; inset: 72px 0 auto 0; background: rgba(11,11,13,0.97);
		backdrop-filter: blur(12px); border-bottom: 1px solid var(--c-border);
		transform: translateY(-120%); transition: transform 0.35s var(--ease); padding: var(--sp-6) 0;
	}
	.site-nav.is-open { transform: translateY(0); }
	.site-nav .nav-menu { flex-direction: column; gap: 0; }
	.site-nav .menu-item { width: 100%; }
	.site-nav .menu-item a { display: block; padding: var(--sp-4) var(--sp-6); }
	.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
	.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(2) { opacity: 0; }
	.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

	.signup-form__row { flex-direction: column; border-radius: var(--radius); background: transparent; border: 0; padding: 0; gap: var(--sp-3); }
	.signup-form__input { background: var(--c-surface); border: 1px solid var(--c-border); border-radius: 100px; padding: 0.9em 1.4em; }
	.signup-form__submit { width: 100%; }

	.venture-hero { padding-block: var(--sp-16) var(--sp-8); }
	.venture-cta__panel, .wip-teaser__panel { padding: var(--sp-12) var(--sp-6); }
	.wip-item { gap: var(--sp-4); }
	.wip-item__tag { display: none; }
	.countdown__unit { min-width: 60px; padding: var(--sp-3) var(--sp-2); }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
}
