/* ZetCasino GR — deck.css | TYPO-03 SPACE-03 CONT-08 BP-06 GEO-07 MOTION-07 */

:root {
	--ui-brand-color: #ffca28;
	--ui-highlight: #ffc527;
	--ui-accent-pressed: #f8c102;
	--ui-bg: #000000;
	--ui-card-bg: #141414;
	--ui-gradient-from: #ffeca5;
	--ui-grad-mid: #fddd5c;
	--ui-text: #ffffff;
	--ui-ink-soft: #c1bfbf;
	--ui-banner-bg: #dc2626;

	--ui-font-title: 'Roboto', system-ui, sans-serif;
	--ui-font-sans: 'Roboto', system-ui, sans-serif;

	--ui-fs-h1: 80px; --ui-type-h2: 48px; --ui-size-h3: 30px; --ui-text-h4: 22px; --ui-fs-h5: 16px; --ui-type-h6: 13px;
	--ui-text-base: 15px; --ui-size-sm: 13px; --ui-type-micro: 11px;
	--ui-leading-tight: 0.95; --ui-leading-normal: 1.45; --ui-leading-loose: 1.65;
	--ui-ls-tight: -0.04em; --ui-ls-normal: 0; --ui-tracking-wide: 0.08em;
	--ui-font-normal: 400; --ui-weight-medium: 700; --ui-font-bold: 900;

	--ui-gap-2xs: 2px; --ui-gap-xs: 6px; --ui-space-sm: 10px; --ui-gap-md: 14px;
	--ui-gap-lg: 20px; --ui-space-xl: 28px; --ui-gutter-2xl: 48px; --ui-gap-3xl: 72px;

	--ui-wrapper: 1200px;
	--ui-text-width: 660px;
	--ui-container-narrow: 560px;
	--ui-container-default: 880px;
	--ui-pad-mobile: 16px;
	--ui-container-padding-tablet: 32px;
	--ui-pad-desktop: 56px;
	--ui-container-frame: calc(var(--ui-wrapper) + 2 * var(--ui-pad-desktop));

	--ui-bp-sm: 580px; --ui-bp-md: 860px; --ui-bp-lg: 1160px; --ui-bp-xl: 1520px;

	--ui-rounded-xs: 4px; --ui-round-sm: 8px; --ui-rounded-md: 12px; --ui-rounded-lg: 16px;
	--ui-corner-pill: 9999px; --ui-circle: 50%;
	--ui-shadow-lg: 0 8px 24px rgba(0,0,0,0.10);
	--ui-border-width: 1px; --ui-border-medium: 2px; --ui-border-thick: 3px;

	--ui-transition-fast: 150ms; --ui-speed-base: 300ms; --ui-transition-slow: 600ms;
	--ui-timing: cubic-bezier(0.215, 0.61, 0.355, 1);
	--ui-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

	--ui-header-height-desktop: 200px;
	--ui-header-h-mobile: 120px;
}

/* ---------- reset / base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: clip; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--ui-bg);
	color: var(--ui-text);
	font-family: var(--ui-font-sans);
	font-size: var(--ui-text-base);
	line-height: var(--ui-leading-normal);
	font-weight: var(--ui-font-normal);
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--ui-highlight); text-decoration: none; }
h1, h2, h3, h4, h5, h6 { margin: 0; }
p { margin: 0 0 var(--ui-gap-md); }
ul, ol { margin: 0; }

/* ---------- a11y ---------- */
.skip-link {
	position: absolute; left: var(--ui-gap-md); top: var(--ui-gap-md);
	background: var(--ui-highlight); color: var(--ui-bg);
	padding: var(--ui-gap-xs) var(--ui-gap-md); border-radius: var(--ui-round-sm);
	font-weight: var(--ui-font-bold); z-index: 200;
}
.skip-link:not(:focus) { top: -200px !important; }
.sr-only {
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
:focus-visible { outline: 2px solid var(--ui-highlight); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
	* { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ---------- reveal (MOTION-07) ---------- */
.reveal { opacity: 1; }
@media (prefers-reduced-motion: no-preference) {
	.reveal.pending { opacity: 0; transform: translateX(40px); }
	.reveal.pending.rev-left { transform: translateX(-40px); }
	.reveal.is-visible { opacity: 1; transform: none; transition: opacity var(--ui-transition-slow) var(--ui-timing), transform var(--ui-transition-slow) var(--ui-timing); }
}

/* ---------- shared frame ---------- */
.huskPanel-inner, .flagCarousel-inner, .vectorZone-inner, .hingeStrip-inner,
.pinGrid-inner, .cellSlider-inner, .cellBunch-inner, .cabinLane-inner,
.hubWrapper-inner, .vectorSpan-inner, .quarterRail-inner, .streamFooter-inner,
.pageFigure {
	max-width: var(--ui-container-frame);
	margin-inline: auto;
	padding-inline: var(--ui-pad-desktop);
	width: 100%;
}

/* ---------- HEADER HEAD-14 ---------- */
.boxContainer {
	background: var(--ui-bg);
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
.boxContainer-inner {
	max-width: calc(var(--ui-wrapper) + 2 * var(--ui-pad-desktop)); margin-inline: auto;
	padding: var(--ui-gap-lg) var(--ui-gap-md);
	display: flex; flex-direction: column; align-items: center; gap: var(--ui-gap-md);
}
.boxContainer-logo { display: inline-flex; flex-shrink: 0; }
.boxContainer-logo, .boxContainer-logo img { flex-shrink: 0; }
.boxContainer-logo-img { height: 88px; width: auto; }
.boxContainer-nav { display: flex; flex-direction: column; gap: var(--ui-gap-2xs); align-items: center; }
.boxContainer-nav-list {
	display: flex; flex-wrap: nowrap; gap: var(--ui-gap-lg);
	list-style: none; margin: 0; padding: 0; justify-content: center;
}
.boxContainer-nav-list--top { padding-bottom: var(--ui-gap-2xs); }
.boxContainer-nav-list--bottom { padding-top: var(--ui-gap-2xs); border-top: 1px solid rgba(255,255,255,0.08); }
.boxContainer-nav-item { display: inline-flex; }
.boxContainer-link {
	font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium);
	font-size: var(--ui-type-h6); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide);
	color: var(--ui-text); white-space: nowrap; padding-block: var(--ui-gap-2xs);
	transition: color var(--ui-transition-fast) var(--ui-timing);
}
.boxContainer-link:hover, .boxContainer-link[aria-current='page'] { color: var(--ui-highlight); }
.boxContainer-auth { display: flex; }
.boxContainer-auth-btn--login { order: 1; }
.boxContainer-auth-btn {
	white-space: nowrap; flex-shrink: 0;
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold);
	font-size: var(--ui-type-h6); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide);
	padding: var(--ui-gap-xs) var(--ui-gap-lg); border-radius: var(--ui-rounded-md);
	border: var(--ui-border-medium) solid var(--ui-highlight);
	color: var(--ui-highlight); background: transparent;
	transition: background var(--ui-transition-fast) var(--ui-timing), color var(--ui-transition-fast) var(--ui-timing);
}
.boxContainer-auth-btn:hover { background: var(--ui-highlight); color: var(--ui-bg); }
.boxContainer-toggle {
	display: none; margin-left: auto; background: transparent; border: 0; cursor: pointer;
	flex-direction: column; gap: 5px; padding: var(--ui-gap-xs);
}
.boxContainer-toggle-bar { width: 26px; height: 3px; background: var(--ui-text); border-radius: 2px; }
.boxContainer-mobile { display: none; }
.boxContainer-mobile.is-open {
	display: block; background: var(--ui-card-bg);
	border-top: 1px solid rgba(255,255,255,0.08); padding: var(--ui-gap-md) var(--ui-pad-mobile);
}
.boxContainer-mobile-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--ui-gap-xs); }
.boxContainer-mobile-item { display: block; }
.boxContainer-mobile-link {
	display: block; padding: var(--ui-space-sm) 0; color: var(--ui-text);
	font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium);
	text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); font-size: var(--ui-type-h6);
	border-bottom: 1px dashed rgba(255,255,255,0.12);
}
.boxContainer-mobile-link:hover, .boxContainer-mobile-link[aria-current='page'] { color: var(--ui-highlight); }

/* ---------- HERO HERO-02 ---------- */
.huskPanel { background: var(--ui-bg); padding-block: var(--ui-gutter-2xl); }
.huskPanel-inner { display: grid; grid-template-columns: 55% 45%; gap: var(--ui-gutter-2xl); align-items: center; min-height: 480px; }
.huskPanel-text { display: flex; flex-direction: column; }
.huskPanel-eyebrow {
	font-family: var(--ui-font-sans); font-weight: var(--ui-weight-medium); font-size: var(--ui-size-sm);
	text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); color: var(--ui-highlight);
	margin-bottom: var(--ui-space-sm);
}
.huskPanel h1 {
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-fs-h1);
	letter-spacing: var(--ui-ls-tight); line-height: var(--ui-leading-tight); text-transform: uppercase; color: var(--ui-text);
}
.huskPanel-subtitle {
	font-family: var(--ui-font-sans); font-size: var(--ui-fs-h5); line-height: var(--ui-leading-normal);
	color: var(--ui-ink-soft); max-width: 480px; margin-top: var(--ui-gap-md);
}
.huskPanel-actions { margin-top: var(--ui-gap-lg); display: flex; gap: var(--ui-gap-md); flex-wrap: wrap; }
.huskPanel-cta-primary, .huskPanel-cta-secondary {
	display: inline-flex; align-items: center; justify-content: center; height: 52px;
	padding-inline: var(--ui-gap-lg); border-radius: var(--ui-rounded-md);
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide);
	transition: background var(--ui-speed-base) var(--ui-timing), color var(--ui-speed-base) var(--ui-timing), transform var(--ui-speed-base) var(--ui-timing);
}
.huskPanel-cta-primary { background: var(--ui-highlight); color: var(--ui-bg); }
.huskPanel-cta-primary:hover { background: var(--ui-accent-pressed); color: var(--ui-bg); transform: scale(1.02); }
.huskPanel-cta-secondary { background: transparent; border: 1px solid var(--ui-ink-soft); color: var(--ui-text); }
.huskPanel-cta-secondary:hover { background: rgba(255,255,255,0.06); color: var(--ui-text); border-color: var(--ui-text); }
.huskPanel-figure { margin: 0; overflow: hidden; border-radius: var(--ui-rounded-lg); aspect-ratio: 4 / 5; }
.huskPanel-img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--ui-transition-slow) var(--ui-timing); }
.huskPanel-figure:hover .huskPanel-img { transform: scale(1.04); }

/* ---------- BREADCRUMBS BREAD-05 ---------- */
.vectorZone { padding-block: var(--ui-gap-md); }
.vectorZone-list { list-style: none; display: flex; flex-wrap: wrap; align-items: center; margin: 0; padding: 0; }
.vectorZone-item { display: inline-flex; align-items: center; }
.vectorZone-link, .vectorZone-current, .vectorZone-sep {
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-fs-h5);
	text-transform: uppercase; letter-spacing: var(--ui-ls-tight);
}
.vectorZone-link { color: var(--ui-ink-soft); }
.vectorZone-link:hover { color: var(--ui-highlight); }
.vectorZone-current { color: var(--ui-text); }
.vectorZone-sep { color: var(--ui-highlight); margin-inline: var(--ui-gap-xs); }

/* ---------- PAGE-HEADER PHEAD-06 ---------- */
.flagCarousel { background: var(--ui-bg); padding-block: var(--ui-gutter-2xl); }
.flagCarousel-title { font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-fs-h1); line-height: var(--ui-leading-tight); letter-spacing: var(--ui-ls-tight); text-transform: uppercase; }
.flagCarousel-rule { display: block; width: 40px; height: 1px; background: rgba(255,255,255,0.2); margin: var(--ui-gap-lg) 0 var(--ui-gap-md); }
.flagCarousel-desc { font-family: var(--ui-font-sans); font-style: italic; font-size: var(--ui-fs-h5); color: var(--ui-ink-soft); max-width: 640px; }
.flagCarousel-meta { font-size: var(--ui-size-sm); color: var(--ui-ink-soft); margin-top: var(--ui-space-sm); }
.flagCarousel-time { color: var(--ui-text); }

/* ---------- PROSE PROSE-04 ---------- */
.axisBunch { padding-block: var(--ui-space-xl); }
.axisBunch-inner { max-width: calc(var(--ui-wrapper) + 2 * var(--ui-pad-desktop)); margin-inline: auto; padding-inline: var(--ui-pad-desktop); }
.axisBunch-block { margin-bottom: var(--ui-space-xl); max-width: var(--ui-text-width); margin-inline: auto; }
.axisBunch-block h2 { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-type-h2); line-height: var(--ui-leading-tight); letter-spacing: var(--ui-ls-tight); text-transform: uppercase; margin-bottom: var(--ui-gap-md); }
.axisBunch-block h3 { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-size-h3); margin: var(--ui-gap-md) 0 var(--ui-space-sm); }
.axisBunch-block p { font-size: var(--ui-text-base); line-height: var(--ui-leading-loose); }
.axisBunch-block > p:first-of-type::first-letter {
	font-size: 4em; float: left; line-height: 0.8; margin-right: 0.1em; margin-top: 0.1em;
	color: var(--ui-highlight); font-family: var(--ui-font-title); font-weight: var(--ui-font-bold);
}
.axisBunch-list { padding-left: var(--ui-gap-lg); margin-bottom: var(--ui-gap-md); }
.axisBunch-list li { line-height: var(--ui-leading-loose); margin-bottom: var(--ui-gap-xs); }
.axisBunch a { color: var(--ui-highlight); text-decoration: underline; }
.axisBunch a:hover { color: var(--ui-accent-pressed); }

/* ---------- ITEMS-GRID GRID-10 ---------- */
.hingeStrip { padding-block: var(--ui-space-xl); }
.hingeStrip-head { margin-bottom: var(--ui-gap-lg); }
.hingeStrip-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-type-h2); text-transform: uppercase; letter-spacing: var(--ui-ls-tight); line-height: var(--ui-leading-tight); }
.hingeStrip-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--ui-gap-md); }
.hingeStrip-card { padding: var(--ui-gap-md); background: rgba(255,202,40,0.04); border: 1px dashed rgba(255,197,39,0.4); border-radius: var(--ui-round-sm); min-height: 180px; transition: transform var(--ui-speed-base) var(--ui-timing); }
.hingeStrip-card:hover { transform: translateY(-4px); }
.hingeStrip-card-num { font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-text-h4); color: var(--ui-highlight); display: block; margin-bottom: var(--ui-gap-xs); }
.hingeStrip-card-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-fs-h5); margin-bottom: var(--ui-gap-xs); }
.hingeStrip-card-text { font-size: var(--ui-size-sm); line-height: var(--ui-leading-normal); color: var(--ui-ink-soft); }

/* ---------- REVIEWS REV-10 ---------- */
.pinGrid { padding-block: var(--ui-space-xl); }
.pinGrid-head { margin-bottom: var(--ui-gap-md); }
.pinGrid-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-type-h2); text-transform: uppercase; letter-spacing: var(--ui-ls-tight); line-height: var(--ui-leading-tight); }
.pinGrid-list { list-style: none; margin: 0; padding: 0; }
.pinGrid-item { padding-block: var(--ui-gap-md); border-bottom: 1px dotted rgba(255,255,255,0.2); }
.pinGrid-meta { margin-bottom: var(--ui-gap-2xs); }
.pinGrid-author { font-size: var(--ui-text-base); font-weight: var(--ui-weight-medium); color: var(--ui-text); }
.pinGrid-rating, .pinGrid-date { color: var(--ui-ink-soft); font-size: var(--ui-text-base); }
.pinGrid-text { font-size: var(--ui-text-base); line-height: var(--ui-leading-loose); color: var(--ui-ink-soft); margin: 0; }

/* ---------- FAQ FAQ-10 ---------- */
.cellSlider { padding-block: var(--ui-space-xl); }
.cellSlider-inner { display: grid; grid-template-columns: 40% 60%; gap: var(--ui-gutter-2xl); align-items: start; }
.cellSlider-aside { position: sticky; top: var(--ui-space-xl); padding: var(--ui-gap-lg) 0; }
.cellSlider-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-type-h2); text-transform: uppercase; letter-spacing: var(--ui-ls-tight); line-height: var(--ui-leading-tight); margin-bottom: var(--ui-gap-md); }
.cellSlider-note { font-size: var(--ui-text-base); color: var(--ui-ink-soft); }
.cellSlider-list { display: flex; flex-direction: column; gap: var(--ui-space-xl); }
.cellSlider-item { display: block; }
.cellSlider-q { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-text-h4); margin-bottom: var(--ui-gap-xs); color: var(--ui-text); }
.cellSlider-a { font-size: var(--ui-text-base); line-height: var(--ui-leading-loose); color: var(--ui-ink-soft); margin: 0; }

/* ---------- CTA CTA-01 ---------- */
.cellBunch { background: var(--ui-highlight); padding-block: var(--ui-gutter-2xl); }
.cellBunch-inner { display: flex; justify-content: space-between; align-items: center; gap: var(--ui-space-xl); }
.cellBunch-text { flex: 1; }
.cellBunch-title { font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-type-h2); text-transform: uppercase; letter-spacing: var(--ui-ls-tight); line-height: var(--ui-leading-tight); color: var(--ui-bg); max-width: 720px; }
.cellBunch-description { font-family: var(--ui-font-sans); font-size: var(--ui-text-base); line-height: var(--ui-leading-normal); color: rgba(0,0,0,0.85); margin-top: var(--ui-space-sm); max-width: 580px; margin-bottom: 0; }
.cellBunch-button {
	display: inline-flex; align-items: center; justify-content: center; height: 56px; min-width: 220px;
	padding-inline: var(--ui-gutter-2xl); background: var(--ui-bg); color: var(--ui-highlight);
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide);
	border-radius: var(--ui-rounded-md); flex-shrink: 0;
	transition: background var(--ui-speed-base) var(--ui-timing), color var(--ui-speed-base) var(--ui-timing), transform var(--ui-speed-base) var(--ui-timing);
}
.cellBunch-button:hover { background: var(--ui-text); color: var(--ui-bg); transform: scale(1.03); }

/* ---------- DATA-TABLE TABLE-08 ---------- */
.cabinLane { padding-block: var(--ui-space-xl); }
.cabinLane-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-type-h2); text-transform: uppercase; letter-spacing: var(--ui-ls-tight); line-height: var(--ui-leading-tight); margin-bottom: var(--ui-gap-lg); }
.cabinLane-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--ui-gap-md); }
.cabinLane-card { padding: var(--ui-gap-lg); background: var(--ui-card-bg); border-radius: var(--ui-rounded-md); border: 1px dashed rgba(255,255,255,0.12); display: flex; flex-direction: column; gap: var(--ui-space-sm); }
.cabinLane-field { display: flex; flex-direction: column; gap: var(--ui-gap-2xs); }
.cabinLane-label { font-size: var(--ui-type-micro); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); color: var(--ui-ink-soft); }
.cabinLane-value { font-size: var(--ui-text-base); font-weight: var(--ui-weight-medium); color: var(--ui-text); }

/* ---------- LEGAL LEGAL-03 ---------- */
.hubWrapper { padding-block: var(--ui-space-xl); }
.hubWrapper-layout { display: grid; grid-template-columns: 240px 1fr; gap: var(--ui-gutter-2xl); align-items: start; }
.hubWrapper-toc { position: sticky; top: var(--ui-space-xl); padding: var(--ui-gap-md); background: var(--ui-card-bg); border-radius: var(--ui-rounded-md); }
.hubWrapper-toc-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-fs-h5); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); margin-bottom: var(--ui-space-sm); }
.hubWrapper-toc-list { padding-left: var(--ui-gap-lg); font-size: var(--ui-size-sm); display: flex; flex-direction: column; gap: var(--ui-gap-xs); }
.hubWrapper-toc-link { color: var(--ui-ink-soft); }
.hubWrapper-toc-link:hover { color: var(--ui-highlight); }
.hubWrapper-content { max-width: var(--ui-text-width); }
.hubWrapper-updated { font-size: var(--ui-size-sm); color: var(--ui-ink-soft); }
.hubWrapper-intro { font-size: var(--ui-fs-h5); line-height: var(--ui-leading-normal); color: var(--ui-ink-soft); }
.hubWrapper-section { margin-bottom: var(--ui-space-xl); }
.hubWrapper-heading { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-size-h3); margin-bottom: var(--ui-space-sm); }
.hubWrapper-section p { line-height: var(--ui-leading-loose); color: var(--ui-ink-soft); }
.hubWrapper-contacts { margin-bottom: var(--ui-space-xl); }
.hubWrapper-contacts-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-text-h4); margin-bottom: var(--ui-space-sm); }
.hubWrapper-contacts ul { padding-left: var(--ui-gap-lg); line-height: var(--ui-leading-loose); color: var(--ui-ink-soft); }
.hubWrapper-disclaimer { font-size: var(--ui-size-sm); font-style: italic; color: var(--ui-ink-soft); border-top: 1px dashed rgba(255,255,255,0.12); padding-top: var(--ui-gap-md); }

/* ---------- CONTACT-FORM FORM-05 ---------- */
.vectorSpan { padding-block: var(--ui-gutter-2xl); }
.vectorSpan-intro { font-size: var(--ui-fs-h5); color: var(--ui-ink-soft); max-width: var(--ui-text-width); margin-bottom: var(--ui-gap-lg); }
.vectorSpan-form { border: var(--ui-border-medium) solid var(--ui-highlight); padding: var(--ui-space-xl); border-radius: var(--ui-rounded-md); max-width: var(--ui-container-default); }
.vectorSpan-field { display: flex; flex-direction: column; margin-bottom: var(--ui-gap-lg); }
.vectorSpan-label { font-size: var(--ui-size-sm); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); color: var(--ui-ink-soft); margin-bottom: var(--ui-gap-xs); }
.vectorSpan-input, .vectorSpan-textarea {
	background: transparent; border: 0; border-bottom: 1px solid rgba(255,255,255,0.12);
	color: var(--ui-text); font-family: var(--ui-font-sans); font-size: var(--ui-fs-h5); padding: var(--ui-gap-xs) 0;
}
.vectorSpan-input:focus, .vectorSpan-textarea:focus { outline: none; border-bottom-color: var(--ui-highlight); }
.vectorSpan-textarea { resize: vertical; }
.vectorSpan-submit {
	height: 52px; padding-inline: var(--ui-gutter-2xl); background: var(--ui-highlight); color: var(--ui-bg);
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide);
	border: 0; border-radius: var(--ui-rounded-md); cursor: pointer;
	transition: background var(--ui-speed-base) var(--ui-timing), color var(--ui-speed-base) var(--ui-timing);
}
.vectorSpan-submit:hover { background: var(--ui-accent-pressed); color: var(--ui-bg); }
.vectorSpan-success { margin-top: var(--ui-gap-lg); color: var(--ui-highlight); font-weight: var(--ui-weight-medium); }

/* ---------- AUTHOR-CARD AUTH-05 ---------- */
.quarterRail { padding-block: var(--ui-space-xl); }
.quarterRail-card { background: var(--ui-card-bg); border-radius: var(--ui-rounded-md); padding: var(--ui-gap-lg); display: flex; gap: var(--ui-gap-lg); align-items: flex-start; max-width: var(--ui-container-default); }
.quarterRail-portrait { width: 120px; height: 120px; border-radius: var(--ui-circle); object-fit: cover; flex-shrink: 0; }
.quarterRail-body { display: flex; flex-direction: column; gap: var(--ui-gap-xs); }
.quarterRail-role { font-size: var(--ui-type-micro); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); color: var(--ui-highlight); margin: 0; }
.quarterRail-name { font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-size-h3); }
.quarterRail-bio { font-size: var(--ui-text-base); line-height: var(--ui-leading-normal); color: var(--ui-ink-soft); margin: 0; }
.quarterRail-expertise { list-style: none; padding: 0; margin: var(--ui-gap-xs) 0 0; display: flex; flex-wrap: wrap; gap: var(--ui-gap-xs); }
.quarterRail-exp-item { font-size: var(--ui-type-micro); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); color: var(--ui-ink-soft); border: 1px dashed rgba(255,255,255,0.2); border-radius: var(--ui-corner-pill); padding: var(--ui-gap-2xs) var(--ui-space-sm); }

/* ---------- AUTHOR-BYLINE BYLINE-06 ---------- */
.coreSlider { padding-block: var(--ui-gap-md); }
.coreSlider-inner { display: flex; gap: var(--ui-gap-md); align-items: center; justify-content: center; }
.coreSlider-text { font-size: var(--ui-size-sm); font-style: italic; color: var(--ui-ink-soft); flex: 1; margin: 0; text-align: right; }
.coreSlider-name { text-decoration: underline; color: var(--ui-highlight); }
.coreSlider-name:hover { text-decoration-thickness: 2px; color: var(--ui-accent-pressed); }
.coreSlider-divider { margin-inline: var(--ui-gap-xs); }
.coreSlider-role { color: var(--ui-ink-soft); }
.coreSlider-dates { font-size: var(--ui-type-micro); color: var(--ui-ink-soft); margin: var(--ui-gap-2xs) 0 0; text-align: right; flex-basis: 100%; }
.coreSlider-time { color: var(--ui-text); }
.coreSlider-portrait { width: 48px; height: 48px; border-radius: var(--ui-circle); object-fit: cover; flex-shrink: 0; }

/* ---------- PAGE FIGURES ---------- */
.pageFigure { padding-block: var(--ui-gap-lg); }
.pageFigure-frame { margin: 0; border-radius: var(--ui-rounded-md); overflow: hidden; }
.pageFigure-img { width: 100%; height: auto; }
.pageFigure-frame .pageFigure-img { max-height: 460px; object-fit: cover; }
.pageFigure-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--ui-gap-md); }
.pageFigure-cell { margin: 0; border-radius: var(--ui-rounded-md); overflow: hidden; }
.pageFigure-cell .pageFigure-img { height: 100%; object-fit: cover; }

/* ---------- COOKIE COOK-03 ---------- */
.chamberBar {
	position: fixed; inset-block-end: var(--ui-gap-md); inset-inline-end: var(--ui-gap-md);
	width: 360px; max-width: calc(100vw - 2 * var(--ui-gap-md)); z-index: 90;
	background: var(--ui-card-bg); border-radius: var(--ui-rounded-lg);
	box-shadow: var(--ui-shadow-lg); border: 1px solid rgba(255,255,255,0.1);
}
.chamberBar.is-hidden { display: none; }
.chamberBar-inner { display: flex; flex-direction: column; gap: var(--ui-gap-md); padding: var(--ui-gap-lg); }
.chamberBar-title { font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-fs-h5); text-transform: uppercase; color: var(--ui-highlight); }
.chamberBar-message { font-size: var(--ui-size-sm); line-height: var(--ui-leading-normal); color: var(--ui-ink-soft); margin: 0; }
.chamberBar-actions { display: flex; gap: var(--ui-space-sm); }
.chamberBar-btn {
	width: 50%; height: 40px; border-radius: var(--ui-round-sm); cursor: pointer;
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); font-size: var(--ui-size-sm);
	transition: background var(--ui-transition-fast) var(--ui-timing), color var(--ui-transition-fast) var(--ui-timing);
}
.chamberBar-btn--ui-accept { background: var(--ui-highlight); color: var(--ui-bg); border: 0; }
.chamberBar-btn--ui-accept:hover { background: var(--ui-accent-pressed); color: var(--ui-bg); }
.chamberBar-btn--ui-decline { background: transparent; color: var(--ui-text); border: 1px solid rgba(255,255,255,0.25); }
.chamberBar-btn--ui-decline:hover { background: rgba(255,255,255,0.08); color: var(--ui-text); }

/* ---------- ERROR ERR-05 ---------- */
.streamFooter { padding-block: var(--ui-gap-3xl); }
.streamFooter-title { position: relative; font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-fs-h1); line-height: var(--ui-leading-tight); text-transform: uppercase; color: var(--ui-text); }
.streamFooter-title::before, .streamFooter-title::after { content: attr(data-text); position: absolute; inset: 0; opacity: 0.6; }
.streamFooter-title::before { transform: translate(2px, -2px); color: var(--ui-highlight); }
.streamFooter-title::after { transform: translate(-2px, 2px); color: var(--ui-accent-pressed); }
.streamFooter-text { font-size: var(--ui-fs-h5); color: var(--ui-ink-soft); max-width: 560px; margin-block: var(--ui-gap-lg); }
.streamFooter-button {
	display: inline-flex; align-items: center; height: 52px; padding-inline: var(--ui-gutter-2xl);
	background: var(--ui-highlight); color: var(--ui-bg);
	font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide);
	border-radius: var(--ui-rounded-md);
	transition: background var(--ui-speed-base) var(--ui-timing), color var(--ui-speed-base) var(--ui-timing);
}
.streamFooter-button:hover { background: var(--ui-accent-pressed); color: var(--ui-bg); }

/* ---------- FOOTER FOOT-06 ---------- */
.zoneBody { background: var(--ui-bg); padding-block: var(--ui-gap-3xl); border-top: 1px solid rgba(255,255,255,0.1); }
.zoneBody-manifesto { max-width: var(--ui-container-frame); margin-inline: auto; padding-inline: var(--ui-pad-desktop); text-align: center; }
.zoneBody-statement { font-family: var(--ui-font-title); font-weight: var(--ui-font-bold); font-size: var(--ui-type-h2); color: var(--ui-text); max-width: var(--ui-container-narrow); margin: 0 auto var(--ui-gap-md); text-transform: uppercase; line-height: var(--ui-leading-tight); }
.zoneBody-cta { font-family: var(--ui-font-title); font-size: var(--ui-fs-h5); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); text-decoration: underline; color: var(--ui-text); }
.zoneBody-cta:hover { color: var(--ui-highlight); }
.zoneBody-divider { height: 1px; background: rgba(255,255,255,0.1); margin-block: var(--ui-space-xl); max-width: var(--ui-container-frame); margin-inline: auto; }
.zoneBody-meta { max-width: var(--ui-container-frame); margin-inline: auto; padding-inline: var(--ui-pad-desktop); display: flex; justify-content: space-between; align-items: flex-start; gap: var(--ui-space-xl); flex-wrap: wrap; }
.zoneBody-logo { flex-shrink: 0; }
.zoneBody-logo-img { height: 72px; width: auto; }
.zoneBody-nav, .zoneBody-legal { min-width: 140px; }
.zoneBody-nav-title, .zoneBody-legal-title { font-family: var(--ui-font-title); font-weight: var(--ui-weight-medium); font-size: var(--ui-type-h6); text-transform: uppercase; letter-spacing: var(--ui-tracking-wide); color: var(--ui-highlight); margin-bottom: var(--ui-space-sm); }
.zoneBody-nav-list, .zoneBody-legal-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--ui-gap-xs); }
.zoneBody-nav-link, .zoneBody-legal-link { font-size: var(--ui-size-sm); color: var(--ui-ink-soft); }
.zoneBody-nav-link:hover, .zoneBody-legal-link:hover { color: var(--ui-highlight); }
.zoneBody-copy { display: flex; flex-direction: column; gap: var(--ui-gap-2xs); }
.zoneBody-copy small { font-size: var(--ui-size-sm); color: var(--ui-ink-soft); }
.zoneBody-note { color: var(--ui-ink-soft); }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1160px) {
	.hingeStrip-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 860px) {
	.boxContainer-inner { flex-direction: row; justify-content: space-between; padding: var(--ui-gap-md) var(--ui-pad-mobile); }
	.boxContainer-logo-img { height: 56px; }
	.boxContainer-nav, .boxContainer-auth { display: none; }
	.boxContainer-toggle { display: flex; }
	.huskPanel-inner { grid-template-columns: 1fr; gap: var(--ui-gap-lg); }
	.huskPanel-figure { aspect-ratio: 16 / 9; max-height: 280px; order: 2; }
	.cellSlider-inner { grid-template-columns: 1fr; gap: var(--ui-gap-lg); }
	.cellSlider-aside { position: static; }
	.hubWrapper-layout { grid-template-columns: 1fr; gap: var(--ui-gap-lg); }
	.hubWrapper-toc { position: static; }
	.cellBunch-inner { flex-direction: column; align-items: flex-start; }
	.cellBunch-button { width: 100%; }
	.hingeStrip-grid { grid-template-columns: repeat(2, 1fr); }
	.zoneBody-meta { flex-direction: column; }
	.coreSlider-inner { flex-wrap: wrap; }
	:root {
		--ui-fs-h1: 44px; --ui-type-h2: 32px; --ui-size-h3: 24px; --ui-text-h4: 18px; --ui-fs-h5: 14px; --ui-type-h6: 12px;
		--ui-text-base: 14px; --ui-size-sm: 12px; --ui-type-micro: 10px;
	}
	.huskPanel-inner, .flagCarousel-inner, .vectorZone-inner, .hingeStrip-inner,
	.pinGrid-inner, .cellSlider-inner, .cellBunch-inner, .cabinLane-inner,
	.hubWrapper-inner, .vectorSpan-inner, .quarterRail-inner, .streamFooter-inner,
	.pageFigure, .zoneBody-manifesto, .zoneBody-meta, .zoneBody-divider {
		padding-inline: var(--ui-pad-mobile);
	}
	.axisBunch-inner { padding-inline: var(--ui-pad-mobile); }
}
@media (max-width: 580px) {
	.hingeStrip-grid { grid-template-columns: 1fr; }
	.quarterRail-card { flex-direction: column; }
	.chamberBar { inset-inline: var(--ui-gap-md); width: auto; }
}
@media (max-width: 720px) {
	.chamberBar-inner { padding: 12px 14px !important; gap: 8px !important; font-size: 13px !important; line-height: 1.35 !important; }
	.chamberBar-title { display: none !important; }
	.chamberBar-btn { padding: 8px 14px !important; font-size: 12px !important; min-height: 36px !important; }
}
