/* BassBet Casino — fabric.css */
:root {
	--c-brand: #021f70;
	--c-secondary: #2ad6ff;
	--c-page-bg: #001e60;
	--c-accent-dark: #00d6fc;
	--c-gradient-from: #00fb57;
	--c-gradient-mid: #00f9fa;
	--c-text: #ffffff;
	--c-ink-soft: #bebdbd;
	--c-surface-2: #082a7d;
	--c-notice-bg: #dc2626;

	--c-heading-font: 'Montserrat', 'Segoe UI', sans-serif;
	--c-font-text: Arial, Helvetica, sans-serif;

	--c-type-h1: 60px; --c-fs-h2: 34px; --c-text-h3: 24px; --c-size-h4: 19px; --c-type-h5: 16px; --c-fs-h6: 14px;
	--c-size-body: 16px; --c-type-small: 13px; --c-size-xs: 10px;
	--c-leading-tight: 1.1; --c-lh-base: 1.5; --c-lh-loose: 1.65;
	--c-letter-tight: -0.02em; --c-ls-normal: 0; --c-ls-wide: 0.06em;
	--c-fw-normal: 400; --c-fw-medium: 600; --c-fw-bold: 800;

	--c-gutter-2xs: 4px; --c-gutter-xs: 8px; --c-spacing-sm: 12px; --c-gutter-md: 16px;
	--c-gutter-lg: 24px; --c-spacing-xl: 40px; --c-space-2xl: 64px; --c-space-3xl: 96px;

	--c-content-width: 1280px;
	--c-prose-width: 720px;
	--c-gutter-desktop: 24px;

	--c-bp-sm: 540px; --c-bp-md: 780px; --c-bp-lg: 1140px; --c-bp-xl: 1500px;

	--c-round-xs: 2px 2px 0 0; --c-rounded-sm: 6px 6px 0 0; --c-rounded-md: 12px 12px 0 0;
	--c-round-lg: 20px 20px 0 0; --c-radius-pill: 9999px 9999px 0 0; --c-round-circle: 50%;
	--c-shadow-sm: 0 2px 4px rgba(0,0,0,0.06); --c-elevation-2: 0 4px 12px rgba(0,0,0,0.10); --c-elevation-3: 0 10px 28px rgba(0,0,0,0.14);
	--c-border-width: 1px; --c-border-medium: 2px; --c-border-thick: 3px;

	--c-transition-fast: 250ms; --c-speed-base: 400ms; --c-duration-slow: 700ms;
	--c-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	--c-ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1);

	--c-sec-y: 44px;
}

/* reset / base */
*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: clip; }
body {
	margin: 0;
	background: var(--c-page-bg);
	color: var(--c-text);
	font-family: var(--c-font-text);
	font-size: var(--c-size-body);
	line-height: var(--c-lh-base);
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 { margin: 0 0 var(--c-gutter-md); line-height: var(--c-leading-tight); }
h1 { font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); font-size: var(--c-type-h1); letter-spacing: var(--c-letter-tight); text-transform: uppercase; }
h2 { font-family: var(--c-heading-font); font-weight: var(--c-fw-medium); font-size: var(--c-fs-h2); }
h3 { font-family: var(--c-font-text); font-weight: var(--c-fw-medium); font-size: var(--c-text-h3); }
h4 { font-family: var(--c-font-text); font-weight: var(--c-fw-medium); font-size: var(--c-size-h4); }
h5, h6 { font-family: var(--c-font-text); font-weight: var(--c-fw-medium); letter-spacing: var(--c-ls-wide); text-transform: uppercase; }
p { margin: 0 0 var(--c-gutter-md); }
a { color: inherit; text-decoration: none; transition: color var(--c-transition-fast) var(--c-ease); }
a:hover { color: var(--c-accent-dark); }
img { max-width: 100%; height: auto; display: block; }
ul, ol { margin: 0 0 var(--c-gutter-md); padding-left: var(--c-gutter-lg); }
main { display: block; }

/* a11y */
.skip-link { position: absolute; left: var(--c-gutter-md); top: -200px; z-index: 200; background: var(--c-secondary); color: var(--c-page-bg); padding: var(--c-gutter-xs) var(--c-gutter-md); border-radius: var(--c-rounded-md); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); }
.skip-link:not(:focus) { top: -200px !important; }
.skip-link:focus { top: var(--c-gutter-md); }
.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; }
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }

/* shared section inner (single width — literal calc) */
.fiche-clean-inner,
.planche-signal-inner,
.quayside-opus-inner,
.frame-fluid-inner,
.billet-pure-inner,
.rotunda-smart-inner,
.quai-refined-inner,
.tableau-flux-inner,
.relief-bold-inner,
.mur-fresh-inner,
.arcade-neat-inner,
.stele-fast-inner,
.pulpit-signal-inner {
	width: 100%;
	max-width: calc(var(--c-content-width) + 2 * var(--c-gutter-desktop));
	margin-inline: auto;
	padding-inline: var(--c-gutter-desktop);
}

/* ============ HEADER — HEAD-05 Minimal Side Logo ============ */
.loggia-sleek { background: var(--c-page-bg); position: relative; z-index: 50; }
.loggia-sleek-bar {
	display: flex; align-items: center; gap: var(--c-gutter-md);
	min-height: 104px;
	max-width: 1440px; margin-inline: auto;
	padding-inline: var(--c-gutter-desktop);
}
.loggia-sleek-logo { flex-shrink: 0; display: inline-flex; }
.loggia-sleek-logo-pill { display: inline-flex; align-items: center; background: #ffffff; padding: 6px 14px; border-radius: var(--c-rounded-md); }
.loggia-sleek-logo-img { height: 88px; width: auto; flex-shrink: 0; }
.loggia-sleek-toggle {
	margin-left: auto !important; flex-shrink: 0;
	background: transparent; border: 1px solid rgba(255,255,255,0.3); color: var(--c-text);
	font-family: var(--c-font-text); font-weight: var(--c-fw-medium); font-size: var(--c-type-small);
	text-transform: uppercase; letter-spacing: var(--c-ls-wide);
	padding: 10px 18px; border-radius: var(--c-rounded-sm); cursor: pointer;
	transition: color var(--c-transition-fast), border-color var(--c-transition-fast);
}
.loggia-sleek-toggle:hover { color: var(--c-secondary); border-color: var(--c-secondary); }
.loggia-sleek-drawer {
	position: fixed; inset: 0; z-index: 120;
	background: rgba(0,10,40,0.97);
	display: none;
	flex-direction: column; align-items: center; justify-content: center;
	gap: var(--c-gutter-lg); padding: var(--c-space-2xl);
}
.loggia-sleek-drawer.is-open { display: flex; }
.loggia-sleek-close {
	position: absolute; top: var(--c-gutter-lg); right: var(--c-gutter-lg);
	background: transparent; border: none; color: var(--c-text);
	font-size: 40px; line-height: 1; cursor: pointer;
}
.loggia-sleek-close:hover { color: var(--c-secondary); }
.loggia-sleek-nav-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: center; gap: var(--c-gutter-md); }
.loggia-sleek-nav-item { text-align: center; }
.loggia-sleek-link { font-family: var(--c-heading-font); font-weight: var(--c-fw-medium); font-size: var(--c-fs-h2); color: var(--c-text); }
.loggia-sleek-link:hover, .loggia-sleek-link[aria-current='page'] { color: var(--c-secondary); }

/* ============ BREADCRUMBS — BREAD-04 Numbered Steps ============ */
.stele-fast { padding-block: var(--c-gutter-md); }
.stele-fast-inner { display: flex; align-items: center; flex-wrap: wrap; gap: var(--c-gutter-2xs); }
.stele-fast-link, .stele-fast-current { font-family: var(--c-font-text); font-size: var(--c-type-small); text-transform: uppercase; letter-spacing: var(--c-ls-wide); display: inline-flex; align-items: center; }
.stele-fast-link { color: var(--c-ink-soft); }
.stele-fast-link:hover { color: var(--c-secondary); }
.stele-fast-current { color: var(--c-text); }
.stele-fast-num { font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); font-size: var(--c-fs-h6); color: var(--c-secondary); margin-right: var(--c-gutter-2xs); }
.stele-fast-sep { color: rgba(190,189,189,0.5); margin-inline: var(--c-spacing-sm); }

/* ============ PAGE HEADER — PHEAD-05 ============ */
.fiche-clean { padding-block: var(--c-spacing-xl); }
.fiche-clean-crumbs { font-size: var(--c-size-xs); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: var(--c-ink-soft); margin-bottom: var(--c-gutter-md); }
.fiche-clean-crumbs a { color: var(--c-ink-soft); }
.fiche-clean-crumbs a:hover { color: var(--c-secondary); }
.fiche-clean-title { margin-bottom: var(--c-spacing-sm); }
.fiche-clean-description { color: var(--c-ink-soft); max-width: var(--c-prose-width); font-size: var(--c-type-h5); }

/* ============ HERO — HERO-08 Magazine Cover ============ */
.borne-true { position: relative; min-height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; text-align: center; }
.borne-true-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; animation: kenburns 8s ease-in-out infinite alternate; }
@keyframes kenburns { from { transform: scale(1); } to { transform: scale(1.04); } }
.borne-true-overlay { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,0.85), rgba(0,0,0,0.4)); }
.borne-true-cover { position: relative; z-index: 2; max-width: 900px; padding: var(--c-space-2xl) var(--c-gutter-lg); display: flex; flex-direction: column; align-items: center; gap: var(--c-gutter-md); }
.borne-true-issue-info { font-size: var(--c-size-xs); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: rgba(255,255,255,0.7); }
.borne-true-title { color: #ffffff; margin: 0; }
.borne-true-deck { font-size: var(--c-type-h5); color: rgba(255,255,255,0.85); max-width: 600px; margin: 0; }
.borne-true-meta { display: flex; gap: var(--c-gutter-md); font-size: var(--c-type-small); color: rgba(255,255,255,0.7); margin-top: var(--c-spacing-sm); }
.borne-true-meta span { position: relative; padding-inline: var(--c-spacing-sm); }
.borne-true-meta span + span::before { content: ''; position: absolute; left: 0; top: 15%; height: 70%; width: 1px; background: rgba(255,255,255,0.4); }
.borne-true-scroll-hint { position: absolute; bottom: var(--c-gutter-lg); left: 50%; transform: translateX(-50%); z-index: 2; display: flex; flex-direction: column; align-items: center; gap: var(--c-gutter-2xs); font-size: var(--c-size-xs); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: rgba(255,255,255,0.7); }
.borne-true-arrow { font-size: var(--c-size-h4); animation: bounce 1.6s ease-in-out infinite; }
@keyframes bounce { 0%,100% { transform: translateY(0); } 50% { transform: translateY(6px); } }

/* ============ PROSE — PROSE-03 Bordered Sidebar Notes ============ */
.rotunda-smart { padding-block: var(--c-sec-y); }
.rotunda-smart-body { max-width: var(--c-prose-width); }
.rotunda-smart-body h2 { margin-top: var(--c-space-2xl); }
.rotunda-smart-body:first-child h2 { margin-top: 0; }
.rotunda-smart-body p { padding-left: var(--c-gutter-lg); border-left: var(--c-border-thick) solid rgba(190,189,189,0.15); }
.rotunda-smart-body h3 { margin-top: var(--c-gutter-lg); }
.rotunda-smart-body ul, .rotunda-smart-body ol { padding-left: var(--c-spacing-xl); color: var(--c-text); }
.rotunda-smart-body li { margin-bottom: var(--c-gutter-xs); }
.rotunda-smart-body a { color: var(--c-secondary); text-decoration: underline; }
.rotunda-smart-body a:hover { color: var(--c-accent-dark); }
.rotunda-smart-body strong { font-weight: var(--c-fw-bold); }

/* ============ ITEMS-GRID — GRID-03 Asymmetric Widths ============ */
.planche-signal { padding-block: var(--c-sec-y); }
.planche-signal-heading { margin-bottom: var(--c-gutter-lg); }
.planche-signal-grid { display: grid; grid-template-columns: 3fr 2fr; gap: var(--c-gutter-lg); }
.planche-signal-grid > :nth-child(4n+3) { grid-column: 1 / 2; }
.planche-signal-card { background: var(--c-surface-2); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--c-rounded-md); padding: var(--c-gutter-lg); }
.planche-signal-card-title { font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); font-size: var(--c-size-h4); margin-bottom: var(--c-spacing-sm); }
.planche-signal-card-text { font-size: var(--c-size-body); color: var(--c-ink-soft); margin: 0; }

/* ============ REVIEWS — REV-05 Vertical Timeline ============ */
.quayside-opus { padding-block: var(--c-sec-y); }
.quayside-opus-heading { margin-bottom: var(--c-gutter-lg); }
.quayside-opus-list { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--c-secondary); }
.quayside-opus-item { position: relative; padding-left: var(--c-space-2xl); margin-bottom: var(--c-spacing-xl); }
.quayside-opus-item:last-child { margin-bottom: 0; }
.quayside-opus-marker { position: absolute; left: -8px; top: 6px; width: 16px; height: 16px; background: var(--c-secondary); border-radius: var(--c-round-circle); }
.quayside-opus-head { font-size: var(--c-type-small); color: var(--c-ink-soft); margin-bottom: var(--c-gutter-2xs); }
.quayside-opus-author { font-weight: var(--c-fw-bold); color: var(--c-text); }
.quayside-opus-rating { display: flex; gap: 2px; margin-bottom: var(--c-gutter-xs); }
.quayside-opus-star { color: rgba(255,255,255,0.35); font-size: var(--c-size-body); }
.quayside-opus-star.is-on { color: var(--c-secondary); }
.quayside-opus-text { font-size: var(--c-size-body); color: var(--c-text); margin: 0; }

/* ============ FAQ — FAQ-08 Bordered Box + Indicator Bar ============ */
.frame-fluid { padding-block: var(--c-sec-y); }
.frame-fluid-heading { margin-bottom: var(--c-gutter-lg); }
.frame-fluid-box { background: var(--c-brand); border: 1px solid rgba(255,255,255,0.1); border-radius: var(--c-round-lg); padding: var(--c-space-2xl); }
.frame-fluid-item { position: relative; box-shadow: inset 4px 0 0 var(--c-secondary); padding-left: var(--c-gutter-md); border-bottom: 1px solid rgba(255,255,255,0.08); }
.frame-fluid-item:last-child { border-bottom: none; }
.frame-fluid-details { padding-block: var(--c-gutter-md); }
.frame-fluid-question { cursor: pointer; font-family: var(--c-heading-font); font-weight: var(--c-fw-medium); font-size: var(--c-type-h5); color: var(--c-text); list-style: none; }
.frame-fluid-question::-webkit-details-marker { display: none; }
.frame-fluid-question::after { content: '+'; float: right; color: var(--c-secondary); font-weight: var(--c-fw-bold); }
.frame-fluid-details[open] .frame-fluid-question::after { content: '\2212'; }
.frame-fluid-answer { padding-top: var(--c-spacing-sm); color: var(--c-ink-soft); }
.frame-fluid-answer p { margin: 0; }

/* ============ CTA — CTA-10 Magazine Pull-Quote ============ */
.billet-pure { padding-block: var(--c-space-2xl); text-align: center; }
.billet-pure-inner { display: flex; flex-direction: column; align-items: center; gap: var(--c-gutter-lg); }
.billet-pure-statement { margin: 0; max-width: 900px; position: relative; }
.billet-pure-statement p { font-family: var(--c-heading-font); font-style: italic; font-size: var(--c-type-h1); line-height: var(--c-leading-tight); margin: 0; }
.billet-pure-statement::before { content: '\201C'; display: block; font-family: var(--c-heading-font); font-size: 96px; line-height: 0.5; color: var(--c-secondary); margin-bottom: var(--c-gutter-md); }
.billet-pure-sub { font-size: var(--c-size-body); line-height: var(--c-lh-loose); color: var(--c-ink-soft); max-width: 580px; margin: 0; }
.billet-pure-link { font-size: var(--c-type-h5); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: var(--c-secondary); text-decoration: underline; }
.billet-pure-link:hover { color: var(--c-accent-dark); }

/* ============ TABLE — TABLE-06 Editorial with Caption ============ */
.quai-refined { padding-block: var(--c-sec-y); }
.quai-refined-table { width: 100%; border-collapse: collapse; }
.quai-refined-caption { font-family: var(--c-heading-font); font-style: italic; font-size: var(--c-size-h4); color: var(--c-ink-soft); text-align: center; padding-bottom: var(--c-gutter-md); position: relative; }
.quai-refined-caption::before { content: ''; display: block; width: 40px; height: 2px; background: var(--c-secondary); margin: 0 auto var(--c-spacing-sm); }
.quai-refined-thead th { background: var(--c-brand); color: var(--c-text); text-align: left; font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); font-size: var(--c-type-small); text-transform: uppercase; letter-spacing: var(--c-ls-wide); padding: var(--c-spacing-sm) var(--c-gutter-md); }
.quai-refined-table td { padding: var(--c-spacing-sm) var(--c-gutter-md); border-bottom: 1px solid rgba(255,255,255,0.08); color: var(--c-text); font-size: var(--c-type-small); }

/* ============ LEGAL — LEGAL-02 Numbered Sections ============ */
.tableau-flux { padding-block: var(--c-space-2xl); }
.tableau-flux-body { counter-reset: legal-section; max-width: var(--c-prose-width); }
.tableau-flux-section { counter-increment: legal-section; margin-bottom: var(--c-spacing-xl); }
.tableau-flux-shead::before { content: counter(legal-section) '. '; color: var(--c-secondary); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); margin-right: var(--c-gutter-xs); }
.tableau-flux-section p { padding-left: var(--c-gutter-md); color: var(--c-ink-soft); }
.tableau-flux-section ul { padding-left: var(--c-spacing-xl); color: var(--c-ink-soft); }
.tableau-flux-section li { margin-bottom: var(--c-gutter-xs); }
.tableau-flux-disclaimer { max-width: var(--c-prose-width); font-size: var(--c-type-small); color: var(--c-ink-soft); font-style: italic; margin-top: var(--c-gutter-lg); }

/* ============ CONTACT FORM — FORM-04 ============ */
.relief-bold { padding-block: var(--c-sec-y); }
.relief-bold-intro { color: var(--c-ink-soft); margin-bottom: var(--c-gutter-lg); max-width: var(--c-prose-width); }
.relief-bold-form { display: grid; grid-template-columns: 1fr 1fr; gap: var(--c-gutter-md); max-width: var(--c-prose-width); }
.relief-bold-field { display: flex; flex-direction: column; gap: var(--c-gutter-2xs); font-size: var(--c-type-small); }
.relief-bold-field--wide { grid-column: 1 / -1; }
.relief-bold-field input, .relief-bold-field textarea { background: var(--c-surface-2); border: 1px solid rgba(255,255,255,0.15); border-radius: var(--c-rounded-sm); color: var(--c-text); font-family: var(--c-font-text); font-size: var(--c-size-body); padding: var(--c-spacing-sm) var(--c-gutter-md); }
.relief-bold-field input:focus, .relief-bold-field textarea:focus { outline: 2px solid var(--c-secondary); }
.relief-bold-submit { grid-column: 1 / -1; justify-self: start; background: var(--c-secondary); color: var(--c-page-bg); border: none; border-radius: var(--c-rounded-md); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); text-transform: uppercase; letter-spacing: var(--c-ls-wide); padding: var(--c-spacing-sm) var(--c-spacing-xl); cursor: pointer; transition: background var(--c-transition-fast); }
.relief-bold-submit:hover { background: var(--c-accent-dark); color: var(--c-page-bg); }
.relief-bold-success { grid-column: 1 / -1; margin-top: var(--c-gutter-lg); padding: var(--c-gutter-md); background: var(--c-surface-2); border-left: var(--c-border-thick) solid var(--c-secondary); color: var(--c-text); }

/* ============ AUTHOR CARD — AUTH-08 Minimal Avatar + Name ============ */
.mur-fresh { padding-block: var(--c-sec-y); }
.mur-fresh-card { display: inline-flex; align-items: center; gap: var(--c-spacing-sm); }
.mur-fresh-avatar { width: 96px; height: 96px; border-radius: var(--c-round-circle); object-fit: cover; object-position: center top; }
.mur-fresh-ident { display: flex; flex-direction: column; }
.mur-fresh-name { font-size: var(--c-size-h4); font-weight: var(--c-fw-bold); }
.mur-fresh-title { font-size: var(--c-size-xs); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: var(--c-ink-soft); }
.mur-fresh-articles { margin-top: var(--c-spacing-xl); }
.mur-fresh-articles-heading { font-size: var(--c-text-h3); margin-bottom: var(--c-gutter-md); }
.mur-fresh-articles-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--c-gutter-xs); }
.mur-fresh-articles-item a { color: var(--c-secondary); text-decoration: underline; }
.mur-fresh-articles-item a:hover { color: var(--c-accent-dark); }

/* ============ AUTHOR BYLINE — BYLINE-02 Card Block ============ */
.crown-crisp { padding-block: var(--c-gutter-lg); }
.crown-crisp-card { max-width: var(--c-prose-width); margin-inline: auto; display: flex; gap: var(--c-gutter-md); background: var(--c-surface-2); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--c-rounded-md); padding: var(--c-gutter-lg); }
.crown-crisp-portrait { flex-shrink: 0; display: block; }
.crown-crisp-portrait img { width: 64px; height: 64px; border-radius: var(--c-round-circle); object-fit: cover; object-position: center top; }
.crown-crisp-body { display: flex; flex-direction: column; gap: var(--c-gutter-2xs); }
.crown-crisp-label { font-size: var(--c-size-xs); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: var(--c-ink-soft); }
.crown-crisp-name { font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); font-size: var(--c-size-h4); margin: 0; }
.crown-crisp-name a { color: var(--c-text); }
.crown-crisp-name a:hover { color: var(--c-secondary); }
.crown-crisp-role { font-size: var(--c-type-small); color: var(--c-ink-soft); margin: 0; }
.crown-crisp-bio { font-size: var(--c-size-body); color: var(--c-text); margin: 0; }
.crown-crisp-link { font-size: var(--c-type-small); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: var(--c-secondary); }
.crown-crisp-link:hover { color: var(--c-accent-dark); }

/* ============ ERROR — ERR-05 Glitch ============ */
.pulpit-signal { padding-block: var(--c-space-3xl); text-align: center; }
.pulpit-signal-inner { display: flex; flex-direction: column; align-items: center; gap: var(--c-gutter-md); }
.pulpit-signal-title { position: relative; color: var(--c-text); font-size: 120px; margin: 0; }
.pulpit-signal-title::before, .pulpit-signal-title::after { content: attr(data-text); position: absolute; inset: 0; opacity: 0.6; }
.pulpit-signal-title::before { transform: translate(2px, -2px); color: var(--c-secondary); }
.pulpit-signal-title::after { transform: translate(-2px, 2px); color: var(--c-accent-dark); }
.pulpit-signal-subtitle { font-size: var(--c-text-h3); }
.pulpit-signal-text { color: var(--c-ink-soft); max-width: 580px; }
.pulpit-signal-button { display: inline-block; background: var(--c-secondary); color: var(--c-page-bg); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); text-transform: uppercase; letter-spacing: var(--c-ls-wide); padding: var(--c-spacing-sm) var(--c-spacing-xl); border-radius: var(--c-rounded-md); margin-top: var(--c-gutter-md); }
.pulpit-signal-button:hover { background: var(--c-accent-dark); color: var(--c-page-bg); }

/* ============ PAGE MEDIA (per-page images) ============ */
.page-media-section { padding-block: var(--c-sec-y); }
.page-media-box { width: 100%; max-width: calc(var(--c-content-width) + 2 * var(--c-gutter-desktop)); margin-inline: auto; padding-inline: var(--c-gutter-desktop); }
.page-media { margin: 0; }
.page-media img { width: 100%; border-radius: var(--c-rounded-md); }

/* ============ FOOTER — FOOT-01 Three-Column Classic ============ */
.arcade-neat { background: var(--c-brand); padding-block: var(--c-space-2xl) 0; }
.arcade-neat-inner { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--c-spacing-xl); }
.arcade-neat-col { display: block; }
.arcade-neat-col--nav, .arcade-neat-col--legal { display: block; }
.arcade-neat-col--brand { display: flex; flex-direction: column; gap: var(--c-gutter-md); }
.arcade-neat-logo { display: inline-flex; }
.arcade-neat-logo-pill { display: inline-flex; align-items: center; background: #ffffff; padding: 6px 12px; border-radius: var(--c-rounded-md); }
.arcade-neat-logo-img { height: 72px; width: auto; }
.arcade-neat-tagline { color: var(--c-ink-soft); font-size: var(--c-type-small); margin: 0; max-width: 320px; }
.arcade-neat-heading { color: var(--c-text); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); font-size: var(--c-fs-h6); text-transform: uppercase; letter-spacing: var(--c-ls-wide); margin-bottom: var(--c-gutter-md); }
.arcade-neat-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--c-spacing-sm); }
.arcade-neat-list a { color: var(--c-ink-soft); font-size: var(--c-type-small); }
.arcade-neat-list a:hover { color: var(--c-secondary); }
.arcade-neat-bottom { margin-top: var(--c-space-2xl); border-top: 1px solid rgba(190,189,189,0.15); padding-block: var(--c-gutter-md); text-align: center; }
.arcade-neat-bottom small { font-size: var(--c-size-xs); text-transform: uppercase; letter-spacing: var(--c-ls-wide); color: var(--c-ink-soft); }

/* ============ COOKIE — COOK-01 Bottom Floating Pill ============ */
.secteur-sharp { position: fixed; inset-block-end: var(--c-gutter-md); inset-inline: var(--c-gutter-md); max-width: 720px; margin-inline: auto; z-index: 90; display: none; }
.secteur-sharp.is-visible { display: block; }
.secteur-sharp-card { background: var(--c-surface-2); border: var(--c-border-width) solid rgba(255,255,255,0.12); border-radius: var(--c-rounded-md); padding: var(--c-gutter-md); box-shadow: var(--c-elevation-2); display: flex; flex-wrap: wrap; align-items: center; gap: var(--c-gutter-md); }
.secteur-sharp-message { flex: 1 1 280px; font-size: var(--c-type-small); color: var(--c-ink-soft); margin: 0; }
.secteur-sharp-actions { display: flex; gap: var(--c-spacing-sm); }
.secteur-sharp-accept { height: 36px; padding-inline: var(--c-gutter-md); background: var(--c-secondary); color: var(--c-page-bg); border: none; border-radius: var(--c-rounded-md); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); text-transform: uppercase; letter-spacing: var(--c-ls-wide); font-size: var(--c-size-xs); cursor: pointer; }
.secteur-sharp-accept:hover { background: var(--c-accent-dark); color: var(--c-page-bg); }
.secteur-sharp-decline { height: 36px; padding-inline: var(--c-gutter-md); background: transparent; border: 1px solid rgba(255,255,255,0.15); color: var(--c-text); border-radius: var(--c-rounded-md); font-family: var(--c-heading-font); font-weight: var(--c-fw-bold); text-transform: uppercase; letter-spacing: var(--c-ls-wide); font-size: var(--c-size-xs); cursor: pointer; }
.secteur-sharp-decline:hover { border-color: var(--c-secondary); color: var(--c-secondary); }

/* ============ RESPONSIVE ============ */
@media (max-width: 1140px) {
	.arcade-neat-inner { grid-template-columns: 1fr 1fr; }
	.arcade-neat-col--brand { grid-column: 1 / -1; }
	.planche-signal-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 780px) {
	:root { --c-type-h1: 36px; --c-fs-h2: 26px; --c-text-h3: 20px; --c-size-h4: 17px; --c-type-h5: 14px; --c-fs-h6: 12px; --c-size-body: 15px; --c-type-small: 12px; --c-size-xs: 9px; }
	.loggia-sleek-bar { min-height: 76px; }
	.loggia-sleek-logo-img { height: 60px; }
	.arcade-neat-logo-img { height: 60px; }
	.pulpit-signal-title { font-size: 72px; }
	.billet-pure-statement::before { font-size: 64px; }
	.planche-signal-grid { grid-template-columns: 1fr; }
	.arcade-neat-inner { grid-template-columns: 1fr; }
	.relief-bold-form { grid-template-columns: 1fr; }
	.mur-fresh-avatar { width: 72px; height: 72px; }
}
@media (max-width: 720px) {
	.secteur-sharp, .secteur-sharp-card { padding: 12px 14px !important; gap: 8px !important; font-size: 13px !important; line-height: 1.35 !important; }
	.secteur-sharp-card { flex-direction: column; align-items: stretch; }
	.secteur-sharp-actions { justify-content: stretch; }
	.secteur-sharp-accept, .secteur-sharp-decline { flex: 1; padding: 8px 14px !important; font-size: 12px !important; min-height: 36px !important; }
}
