/* Zoome Casino — grid-alt.css | TYPO-05 / SPACE-04 / CONT-05 / GEO-09 / MOTION-03 */

:root {
  --theme-accent-main: #57515d;
  --theme-accent-color: #f5d81c;
  --theme-accent-active: #deba0a;
  --theme-page-bg: #161616;
  --theme-card-bg: #202020;
  --theme-color-bg-card: #242226;
  --theme-gradient-from: #ffffff;
  --theme-grad-mid: #2b2b2b;
  --theme-ink: #ffffff;
  --theme-muted: #c1c1c1;
  --theme-divider: #35323a;

  --theme-font-heading: "Outfit", ui-sans-serif, system-ui, sans-serif;
  --theme-font-base: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --theme-max-width: 1200px;
  --theme-readable-width: 720px;
  --theme-edge-desktop: 24px;

  --theme-spacing-xs: 8px;
  --theme-gutter-sm: 16px;
  --theme-spacing-md: 24px;
  --theme-spacing-lg: 48px;
  --theme-gutter-xl: 72px;
  --theme-sec-y: 48px;

  --theme-radius-sm: 8px;
  --theme-rounded-md: 14px;
  --theme-corner-lg: 22px;

  --theme-shadow-card: 0 10px 30px rgba(0, 0, 0, 0.35);
  --theme-motion: 200ms ease;
  --theme-header-h: 96px;
}

/* ---------- reset / base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: clip; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--theme-font-base);
  background: var(--theme-page-bg);
  color: var(--theme-ink);
  line-height: 1.6;
  font-size: 17px;
}
img { max-width: 100%; display: block; }
h1, h2, h3 { font-family: var(--theme-font-heading); line-height: 1.15; margin: 0 0 var(--theme-gutter-sm); font-weight: 700; }
h1 { font-size: clamp(2rem, 4vw, 3.1rem); }
h2 { font-size: clamp(1.5rem, 2.6vw, 2.15rem); margin-block-start: 0; }
h3 { font-size: 1.2rem; }
p { margin: 0 0 var(--theme-gutter-sm); }
a { color: var(--theme-accent-color); text-decoration: none; transition: color var(--theme-motion); }
a:hover { color: var(--theme-accent-active); text-decoration: underline; }
ul { margin: 0 0 var(--theme-gutter-sm); padding-left: 1.2em; }

.skip-link {
  position: absolute; left: 12px; top: -200px;
  background: var(--theme-accent-color); color: #161616;
  padding: 10px 16px; border-radius: var(--theme-radius-sm); z-index: 200; font-weight: 700;
}
.skip-link:not(:focus) { top: -200px !important; }
.skip-link:focus { top: 12px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; scroll-behavior: auto !important; }
}

/* ---------- header (HEAD-01 / NAV-03 / STICKY-03) ---------- */
.catafalque-lumineux {
  position: sticky; top: 0; z-index: 100;
  background: var(--theme-page-bg);
  border-bottom: 1px solid var(--theme-divider);
  transition: box-shadow var(--theme-motion), background var(--theme-motion);
}
.catafalque-lumineux.is-stuck { box-shadow: 0 6px 24px rgba(0, 0, 0, 0.45); }
.catafalque-lumineux-shell {
  max-width: 1440px; margin-inline: auto;
  padding: var(--theme-gutter-sm) var(--theme-edge-desktop);
}
.catafalque-lumineux-top { display: flex; align-items: center; justify-content: space-between; gap: var(--theme-spacing-md); }
.catafalque-lumineux-logo { flex-shrink: 0; display: inline-flex; align-items: center; }
.catafalque-lumineux-logo img { height: 88px; width: auto; flex-shrink: 0; }
.catafalque-lumineux-nav { display: flex; flex-direction: column; gap: 6px; flex: 1; align-items: flex-end; }
.catafalque-lumineux-navrow { display: flex; }
.catafalque-lumineux-navrow-top { justify-content: flex-end; }
.catafalque-lumineux-navrow-bottom { justify-content: flex-end; }
.catafalque-lumineux-divider { width: 100%; height: 1px; background: var(--theme-divider); }
.catafalque-lumineux-navlist { list-style: none; display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; padding: 0; justify-content: flex-end; }
.catafalque-lumineux-nav-item { margin: 0; }
.catafalque-lumineux-nav-link {
  color: var(--theme-ink); font-weight: 600; font-size: 0.92rem;
  padding: 4px 2px; display: inline-block;
}
.catafalque-lumineux-nav-link:hover { color: var(--theme-accent-color); text-decoration: none; }
.catafalque-lumineux-nav-link[aria-current="page"] { color: var(--theme-accent-color); }
.catafalque-lumineux-toggle {
  display: none; margin-left: auto; flex-shrink: 0;
  width: 46px; height: 46px; border: 1px solid var(--theme-divider);
  background: var(--theme-card-bg); border-radius: var(--theme-radius-sm);
  cursor: pointer; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
}
.catafalque-lumineux-toggle-bar { width: 22px; height: 2px; background: var(--theme-ink); display: block; }
.catafalque-lumineux-drawer { display: none; }
.catafalque-lumineux-drawer.is-open { display: block; margin-top: var(--theme-gutter-sm); border-top: 1px solid var(--theme-divider); padding-top: var(--theme-gutter-sm); }
.catafalque-lumineux-drawer-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.catafalque-lumineux-drawer-item { margin: 0; }
.catafalque-lumineux-drawer-link { display: block; padding: 12px 8px; color: var(--theme-ink); font-weight: 600; border-radius: var(--theme-radius-sm); }
.catafalque-lumineux-drawer-link:hover { background: var(--theme-card-bg); color: var(--theme-accent-color); text-decoration: none; }
.catafalque-lumineux-drawer-link[aria-current="page"] { color: var(--theme-accent-color); }

/* ---------- section frame width (canonical) ---------- */
.piedestal-fin-inner,
.autel-dru-inner,
.ambon-raffine-inner,
.stalle-calme-inner,
.bordure-secret-inner,
.ostensoir-lumineux-inner,
.amphitheatre-fin-inner,
.preau-prime-inner,
.peristyle-leger-inner,
.parure-sombre-inner,
.jube-vaste-inner,
.loggia-haute-large-inner,
.gardien-haut-inner,
.fondement-vif-inner,
.sentinelle-voile-inner,
.chapelle-robuste-inner {
  max-width: calc(var(--theme-max-width) + 2 * var(--theme-edge-desktop));
  margin-inline: auto;
  padding-inline: var(--theme-edge-desktop);
  width: 100%;
}

/* ---------- hero (HERO-04) ---------- */
.piedestal-fin { background: linear-gradient(135deg, var(--theme-grad-mid), var(--theme-page-bg) 70%); padding-block: var(--theme-gutter-xl); }
.piedestal-fin-inner { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: var(--theme-spacing-lg); align-items: center; }
.piedestal-fin-content { max-width: 620px; }
.piedestal-fin-eyebrow { text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.8rem; font-weight: 700; color: var(--theme-accent-color); margin-bottom: var(--theme-spacing-xs); }
.piedestal-fin-title { font-size: clamp(2.4rem, 5vw, 3.6rem); }
.piedestal-fin-subtitle { color: var(--theme-muted); font-size: 1.1rem; max-width: 480px; margin-bottom: var(--theme-spacing-md); }
.piedestal-fin-cta, .peristyle-leger-btn, .parure-sombre-btn, .sentinelle-voile-btn, .gardien-haut-submit {
  display: inline-block; background: var(--theme-accent-color); color: #161616;
  font-weight: 800; padding: 14px 30px; border-radius: var(--theme-rounded-md);
  border: none; cursor: pointer; font-size: 1rem; font-family: var(--theme-font-heading);
}
.piedestal-fin-cta:hover, .peristyle-leger-btn:hover, .parure-sombre-btn:hover, .sentinelle-voile-btn:hover, .gardien-haut-submit:hover {
  background: var(--theme-accent-active); color: #161616; text-decoration: none;
}
.piedestal-fin-media { display: flex; justify-content: center; }
.piedestal-fin-img { border-radius: var(--theme-corner-lg); box-shadow: var(--theme-shadow-card); width: 100%; height: auto; object-fit: cover; }

/* ---------- breadcrumbs (BREAD-04) ---------- */
.autel-dru { padding-block: var(--theme-gutter-sm); border-bottom: 1px solid var(--theme-divider); }
.autel-dru-list { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; font-size: 0.9rem; }
.autel-dru-item { display: flex; align-items: center; gap: 8px; color: var(--theme-muted); }
.autel-dru-item + .autel-dru-item::before { content: "/"; color: var(--theme-muted); }
.autel-dru-link { color: var(--theme-accent-color); }
.autel-dru-current { color: var(--theme-muted); }

/* ---------- page-header (PHEAD-06) ---------- */
.ambon-raffine { padding-block: var(--theme-sec-y); border-bottom: 1px solid var(--theme-divider); }
.ambon-raffine-eyebrow { text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.78rem; font-weight: 700; color: var(--theme-accent-color); margin-bottom: var(--theme-spacing-xs); }
.ambon-raffine-title { margin-bottom: var(--theme-spacing-xs); }
.ambon-raffine-intro { color: var(--theme-muted); max-width: var(--theme-readable-width); font-size: 1.08rem; }

/* ---------- prose (PROSE-04) ---------- */
.stalle-calme { padding-block: var(--theme-sec-y); }
.stalle-calme-prose { max-width: var(--theme-readable-width); }
.stalle-calme-prose h2 { margin-top: var(--theme-spacing-lg); margin-block-start: var(--theme-spacing-lg); }
.stalle-calme-prose h3 { margin-top: var(--theme-spacing-md); color: var(--theme-accent-color); }
.stalle-calme-prose p { color: var(--theme-muted); }
.stalle-calme-prose li { color: var(--theme-muted); margin-bottom: 6px; }
.stalle-calme-prose a { color: var(--theme-accent-color); font-weight: 600; }

/* ---------- items-grid (GRID-01) ---------- */
.bordure-secret { padding-block: var(--theme-sec-y); }
.bordure-secret-head { margin-bottom: var(--theme-spacing-md); }
.bordure-secret-title { margin: 0; }
.bordure-secret-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--theme-spacing-md); }
.bordure-secret-card {
  background: var(--theme-color-bg-card); border: 1px solid var(--theme-divider);
  border-radius: var(--theme-rounded-md); padding: var(--theme-spacing-md); margin: 0;
}
.bordure-secret-card-title { color: var(--theme-ink); margin-bottom: var(--theme-spacing-xs); }
.bordure-secret-card-text { color: var(--theme-muted); margin: 0; }
.bordure-secret-card img { border-radius: var(--theme-radius-sm); width: 100%; height: auto; }

/* ---------- reviews (REV-05) ---------- */
.ostensoir-lumineux { padding-block: var(--theme-sec-y); background: var(--theme-card-bg); }
.ostensoir-lumineux-head { margin-bottom: var(--theme-spacing-md); }
.ostensoir-lumineux-title { margin: 0; }
.ostensoir-lumineux-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--theme-spacing-md); }
.ostensoir-lumineux-card { background: var(--theme-color-bg-card); border: 1px solid var(--theme-divider); border-radius: var(--theme-rounded-md); padding: var(--theme-spacing-md); }
.ostensoir-lumineux-stars { color: var(--theme-accent-color); font-size: 1.15rem; letter-spacing: 2px; }
.ostensoir-lumineux-rating { color: var(--theme-ink); font-weight: 700; margin: 4px 0 var(--theme-spacing-xs); }
.ostensoir-lumineux-text { color: var(--theme-muted); margin-bottom: var(--theme-spacing-xs); }
.ostensoir-lumineux-author { color: var(--theme-ink); font-weight: 600; margin: 0; }

/* ---------- faq (FAQ-10) ---------- */
.amphitheatre-fin { padding-block: var(--theme-sec-y); }
.amphitheatre-fin-head { margin-bottom: var(--theme-spacing-md); }
.amphitheatre-fin-title { margin: 0; }
.amphitheatre-fin-list { max-width: 100%; display: flex; flex-direction: column; gap: 10px; }
.amphitheatre-fin-item { background: var(--theme-color-bg-card); border: 1px solid var(--theme-divider); border-radius: var(--theme-rounded-md); padding: 4px 20px; }
.amphitheatre-fin-q { cursor: pointer; font-weight: 700; font-family: var(--theme-font-heading); padding: 14px 0; list-style: none; color: var(--theme-ink); }
.amphitheatre-fin-q::-webkit-details-marker { display: none; }
.amphitheatre-fin-q::after { content: "+"; float: right; color: var(--theme-accent-color); font-size: 1.3rem; }
.amphitheatre-fin-item[open] .amphitheatre-fin-q::after { content: "\2212"; }
.amphitheatre-fin-a { padding-bottom: 16px; }
.amphitheatre-fin-a p { color: var(--theme-muted); margin: 0; }

/* ---------- table (TABLE-02) ---------- */
.preau-prime { padding-block: var(--theme-sec-y); }
.preau-prime-scroll { overflow-x: auto; border-radius: var(--theme-rounded-md); border: 1px solid var(--theme-divider); }
.preau-prime-table { width: 100%; border-collapse: collapse; min-width: 520px; }
.preau-prime-table th, .preau-prime-table td { padding: 14px 18px; text-align: left; border-bottom: 1px solid var(--theme-divider); }
.preau-prime-table th { background: var(--theme-card-bg); color: var(--theme-accent-color); font-family: var(--theme-font-heading); }
.preau-prime-table td { color: var(--theme-muted); }

/* ---------- cta-block (CTA-10) ---------- */
.peristyle-leger { padding-block: var(--theme-sec-y); }
.peristyle-leger-inner { background: linear-gradient(135deg, var(--theme-accent-main), var(--theme-grad-mid)); border-radius: var(--theme-corner-lg); padding: var(--theme-spacing-lg); text-align: center; }
.peristyle-leger-title { margin-bottom: var(--theme-spacing-xs); }
.peristyle-leger-text { color: var(--theme-muted); max-width: 580px; margin: 0 auto var(--theme-spacing-md); }

/* ---------- inline-cta (INLINE-CTA-03) ---------- */
.parure-sombre { padding-block: var(--theme-sec-y); }
.parure-sombre-box {
  display: flex; align-items: center; justify-content: space-between; gap: var(--theme-spacing-md);
  background: var(--theme-card-bg); border: 1px solid var(--theme-accent-color);
  border-radius: var(--theme-corner-lg); padding: var(--theme-spacing-lg);
}
.parure-sombre-title { margin-bottom: var(--theme-spacing-xs); }
.parure-sombre-text { color: var(--theme-muted); margin: 0; }
.parure-sombre-btn { flex-shrink: 0; white-space: nowrap; }

/* ---------- author-byline (BYLINE-04) ---------- */
.jube-vaste { padding-block: var(--theme-sec-y); border-top: 1px solid var(--theme-divider); }
.jube-vaste-card { display: flex; align-items: center; gap: var(--theme-spacing-md); }
.jube-vaste-portrait { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; border: 2px solid var(--theme-accent-color); flex-shrink: 0; }
.jube-vaste-meta { display: flex; flex-direction: column; }
.jube-vaste-by { text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.72rem; color: var(--theme-muted); margin: 0; }
.jube-vaste-link { font-family: var(--theme-font-heading); font-weight: 700; }
.jube-vaste-name { color: var(--theme-accent-color); font-size: 1.1rem; }
.jube-vaste-role { color: var(--theme-muted); margin: 0; font-size: 0.9rem; }

/* ---------- author-card (AUTH-08) ---------- */
.loggia-haute-large { padding-block: var(--theme-sec-y); }
.loggia-haute-large-card { display: flex; gap: var(--theme-spacing-lg); background: var(--theme-color-bg-card); border: 1px solid var(--theme-divider); border-radius: var(--theme-corner-lg); padding: var(--theme-spacing-lg); align-items: flex-start; }
.loggia-haute-large-portrait { width: 140px; height: 140px; border-radius: var(--theme-corner-lg); object-fit: cover; flex-shrink: 0; border: 2px solid var(--theme-accent-color); }
.loggia-haute-large-body { flex: 1; }
.loggia-haute-large-name { font-family: var(--theme-font-heading); font-size: 1.5rem; font-weight: 700; margin: 0; }
.loggia-haute-large-role { color: var(--theme-accent-color); font-weight: 600; margin: 4px 0 var(--theme-gutter-sm); }
.loggia-haute-large-bio { color: var(--theme-muted); }
.loggia-haute-large-expertise { list-style: none; padding: 0; margin: var(--theme-gutter-sm) 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.loggia-haute-large-exp-item { background: var(--theme-card-bg); border: 1px solid var(--theme-divider); color: var(--theme-muted); border-radius: 999px; padding: 6px 14px; font-size: 0.85rem; }
.loggia-haute-large-articles { margin-top: var(--theme-spacing-lg); }
.loggia-haute-large-articles-heading { font-size: 1.3rem; margin-bottom: var(--theme-gutter-sm); }
.loggia-haute-large-articles-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.loggia-haute-large-articles-item { border-bottom: 1px solid var(--theme-divider); padding-bottom: 8px; }
.loggia-haute-large-articles-item a { color: var(--theme-accent-color); font-weight: 600; }

/* ---------- contact-form (FORM-05) ---------- */
.gardien-haut { padding-block: var(--theme-sec-y); }
.gardien-haut-intro { color: var(--theme-muted); max-width: var(--theme-readable-width); }
.gardien-haut-form { max-width: var(--theme-readable-width); display: flex; flex-direction: column; gap: var(--theme-gutter-sm); }
.gardien-haut-field { display: flex; flex-direction: column; gap: 6px; }
.gardien-haut-label { font-weight: 600; color: var(--theme-ink); }
.gardien-haut-input, .gardien-haut-textarea {
  background: var(--theme-card-bg); border: 1px solid var(--theme-divider);
  border-radius: var(--theme-radius-sm); padding: 12px 14px; color: var(--theme-ink);
  font-family: var(--theme-font-base); font-size: 1rem;
}
.gardien-haut-input:focus, .gardien-haut-textarea:focus { outline: 2px solid var(--theme-accent-color); border-color: var(--theme-accent-color); }
.gardien-haut-textarea { resize: vertical; }
.gardien-haut-submit { align-self: flex-start; }
.gardien-haut-success { background: var(--theme-card-bg); border: 1px solid var(--theme-accent-color); color: var(--theme-ink); border-radius: var(--theme-rounded-md); padding: var(--theme-spacing-md); max-width: var(--theme-readable-width); }

/* ---------- legal-section (LEGAL-06) ---------- */
.fondement-vif { padding-block: var(--theme-sec-y); }
.fondement-vif-intro { color: var(--theme-muted); max-width: var(--theme-readable-width); }
.fondement-vif-block { max-width: var(--theme-readable-width); margin-bottom: var(--theme-spacing-lg); }
.fondement-vif-heading { font-size: 1.35rem; margin-bottom: var(--theme-spacing-xs); }
.fondement-vif-text { color: var(--theme-muted); }
.fondement-vif-contacts { list-style: none; padding: 0; max-width: var(--theme-readable-width); display: flex; flex-direction: column; gap: 6px; color: var(--theme-muted); }
.fondement-vif-contact-item { color: var(--theme-muted); }
.fondement-vif-disclaimer { color: var(--theme-muted); font-size: 0.9rem; max-width: var(--theme-readable-width); font-style: italic; border-top: 1px solid var(--theme-divider); padding-top: var(--theme-spacing-md); }

/* ---------- error-block (ERR-08) ---------- */
.sentinelle-voile { padding-block: var(--theme-gutter-xl); text-align: center; }
.sentinelle-voile-title { margin-bottom: var(--theme-gutter-sm); }
.sentinelle-voile-text { color: var(--theme-muted); max-width: 560px; margin: 0 auto var(--theme-spacing-md); }

/* ---------- cookie-banner (COOK-03) ---------- */
.receptacle-lourd { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 150; background: var(--theme-color-bg-card); border: 1px solid var(--theme-accent-color); border-radius: var(--theme-corner-lg); box-shadow: var(--theme-shadow-card); }
.receptacle-lourd-shell { display: flex; align-items: center; justify-content: space-between; gap: var(--theme-spacing-md); padding: 16px 22px; max-width: calc(var(--theme-max-width) + 2 * var(--theme-edge-desktop)); margin-inline: auto; }
.receptacle-lourd-text { color: var(--theme-muted); margin: 0; font-size: 0.92rem; }
.receptacle-lourd-actions { display: flex; gap: 10px; flex-shrink: 0; }
.receptacle-lourd-accept { background: var(--theme-accent-color); color: #161616; border: none; font-weight: 700; padding: 10px 20px; border-radius: var(--theme-radius-sm); cursor: pointer; }
.receptacle-lourd-accept:hover { background: var(--theme-accent-active); color: #161616; }
.receptacle-lourd-decline { background: transparent; color: var(--theme-ink); border: 1px solid var(--theme-divider); font-weight: 600; padding: 10px 20px; border-radius: var(--theme-radius-sm); cursor: pointer; }
.receptacle-lourd-decline:hover { background: var(--theme-card-bg); color: var(--theme-ink); }

/* ---------- footer (FOOT-06) ---------- */
.chapelle-robuste { background: #101010; border-top: 1px solid var(--theme-divider); padding-block: var(--theme-gutter-xl); }
.chapelle-robuste-cols { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: var(--theme-spacing-lg); }
.chapelle-robuste-brand { max-width: 320px; }
.chapelle-robuste-logo { height: 64px; width: auto; margin-bottom: var(--theme-gutter-sm); }
.chapelle-robuste-tagline { color: var(--theme-muted); font-size: 0.95rem; }
.chapelle-robuste-col { min-width: 0; }
.chapelle-robuste-heading { font-size: 1.05rem; color: var(--theme-ink); margin-bottom: var(--theme-gutter-sm); }
.chapelle-robuste-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.chapelle-robuste-item { margin: 0; }
.chapelle-robuste-link { color: var(--theme-muted); font-size: 0.92rem; }
.chapelle-robuste-link:hover { color: var(--theme-accent-color); text-decoration: none; }
.chapelle-robuste-bottom { margin-top: var(--theme-spacing-lg); padding-top: var(--theme-spacing-md); border-top: 1px solid var(--theme-divider); display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--theme-gutter-sm); }
.chapelle-robuste-legalnote { color: var(--theme-muted); font-size: 0.82rem; margin: 0; max-width: 620px; }
.chapelle-robuste-copyright { color: var(--theme-muted); font-size: 0.82rem; margin: 0; }

/* ---------- responsive (desktop-first, BP-08) ---------- */
@media (max-width: 1024px) {
  .catafalque-lumineux-logo img { height: 72px; }
  .piedestal-fin-inner { grid-template-columns: 1fr; }
  .piedestal-fin-media { order: -1; }
  .chapelle-robuste-cols { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
  body { font-size: 16px; }
  .catafalque-lumineux-nav { display: none; }
  .catafalque-lumineux-toggle { display: flex; }
  .catafalque-lumineux-logo img { height: 60px; }
  .bordure-secret-grid, .ostensoir-lumineux-grid { grid-template-columns: 1fr; }
  .parure-sombre-box { flex-direction: column; align-items: flex-start; }
  .loggia-haute-large-card { flex-direction: column; }
  .chapelle-robuste-cols { grid-template-columns: 1fr; }
  .receptacle-lourd-shell { flex-direction: column; align-items: stretch; text-align: center; }
  .receptacle-lourd-actions { justify-content: center; }
}
@media (max-width: 720px) {
  .receptacle-lourd { left: 10px; right: 10px; bottom: 10px; }
  .receptacle-lourd-shell { padding: 12px 14px; gap: 8px; font-size: 13px; }
  .receptacle-lourd-accept, .receptacle-lourd-decline { padding: 8px 14px; font-size: 12px; min-height: 36px; }
}

/* fix: drawer выше экрана */
.catafalque-lumineux-drawer.is-open{max-height:68vh !important;max-height:68dvh !important;overflow-y:auto !important;}
