:root{
  --color-primary:#3e256f;
  --color-accent:#f1cc67;
  --color-accent-pressed:#ebca41;
  --color-bg:#3a313a;
  --color-bg-elevated:#463c46;
  --color-gradient-light:#fbf3da;
  --color-gradient-mid:#f6e197;
  --color-text:#ffffff;
  --color-text-muted:#c1c1c1;
  --color-rg-banner:#dc2626;
  --btn-text:#2a1a2a;

  --font-display:"Roboto",system-ui,sans-serif;
  --font-body:"Montserrat",system-ui,sans-serif;

  --fs-h1:36px;--fs-h2:26px;--fs-h3:20px;--fs-h4:17px;--fs-h5:14px;--fs-h6:12px;
  --fs-body:15px;--fs-small:13px;--fs-micro:11px;
  --lh-tight:1.15;--lh-normal:1.5;--lh-loose:1.65;
  --ls-tight:-0.01em;--ls-normal:0;--ls-wide:0.06em;
  --fw-regular:400;--fw-medium:500;--fw-bold:700;

  --space-2xs:4px;--space-xs:7px;--space-sm:11px;--space-md:17px;
  --space-lg:26px;--space-xl:40px;--space-2xl:60px;--space-3xl:90px;

  --container-site:1360px;
  --container-readable:720px;
  --container-padding-mobile:16px;
  --container-padding-tablet:24px;
  --container-padding-desktop:40px;

  --bp-sm:460px;--bp-md:720px;--bp-lg:1040px;--bp-xl:1380px;

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

  --dur-fast:150ms;--dur-base:300ms;--dur-slow:600ms;
  --ease-out:cubic-bezier(0.215,0.61,0.355,1);
  --ease-in-out:cubic-bezier(0.645,0.045,0.355,1);
  --ease-spring:cubic-bezier(0.34,1.56,0.64,1);

  --header-h:112px;
}

*,*::before,*::after{box-sizing:border-box;}
html,body{overflow-x:clip;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;background:var(--color-bg);color:var(--color-text);
  font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-normal);
  font-weight:var(--fw-regular);-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4,h5,h6,p,ul,ol,figure,blockquote{margin:0;}
ul,ol{padding:0;list-style:none;}

.skip-link{
  position:absolute;left:8px;top:-200px;z-index:300;
  background:var(--color-accent);color:var(--btn-text);
  padding:10px 16px;border-radius:var(--radius-md);font-weight:var(--fw-bold);
  transition:top var(--dur-fast) var(--ease-out);
}
.skip-link:not(:focus){top:-200px !important;}
.skip-link:focus{top:8px;}
.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;}

/* ===== shared inner widths (single section width) ===== */
.ciboire-pur-inner,.bordure-voile-inner,.ambon-vif-inner,.parure-calme-inner,
.receptacle-vif-inner,.garde-corps-fin-inner,.gradin-profond-inner,
.loggia-haute-lourd-inner,.tribune-etroit-inner,.veilleuse-leger-inner,
.baptistere-noble-inner,.credence-dru-inner,.berceau-leger-inner,
.parterre-vaste-inner,.media-band-inner,.credence-dru-articles{
  max-width:calc(var(--container-site) + 2 * var(--container-padding-desktop));
  margin-inline:auto;
  padding-inline:var(--container-padding-desktop);
  width:100%;
}
/* readable-width editorial sections (prose / legal) */
.stalle-vaste-inner,.calice-haut-inner{
  
  margin-inline:auto;
  padding-inline:var(--container-padding-desktop);
  width:100%;
}
.main>section{padding-block:var(--space-2xl);}
.main>section:first-child{padding-block:0;}

/* ===== HEADER (HEAD-04 sticky transparent over hero + STICKY-03 blur) ===== */
.ciboire-pur{
  position:sticky;top:0;z-index:50;background:var(--color-bg);
  border-bottom:1px solid rgba(255,255,255,0.08);
  transition:background var(--dur-base) var(--ease-out),backdrop-filter var(--dur-base) var(--ease-out);
}
.ciboire-pur--over-hero{background:transparent;border-bottom-color:transparent;}
.ciboire-pur.is-blurred{
  background:rgba(58,49,58,0.88);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-bottom-color:rgba(255,255,255,0.10);
}
.ciboire-pur-inner{
  display:flex;align-items:center;gap:var(--space-lg);
  min-height:var(--header-h);padding-block:var(--space-sm);
}
.ciboire-pur-logo,.ciboire-pur-logo-img{flex-shrink:0;}
.ciboire-pur-logo-img{height:88px;width:auto;}
.ciboire-pur-nav{display:flex;flex-direction:column;gap:var(--space-2xs);margin-inline:auto;}
.ciboire-pur-nav-list{display:flex;flex-wrap:nowrap;gap:var(--space-md);}
.ciboire-pur-nav-list--bottom{padding-top:var(--space-2xs);border-top:1px solid rgba(255,255,255,0.08);}
.ciboire-pur-nav-item{white-space:nowrap;}
.ciboire-pur-link{
  font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-small);
  color:var(--color-text-muted);padding-block:var(--space-2xs);
  transition:color var(--dur-fast) var(--ease-out);white-space:nowrap;
}
.ciboire-pur-link:hover,.ciboire-pur-link:focus-visible{color:var(--color-text);}
.ciboire-pur-link[aria-current="page"]{color:var(--color-accent);}
.ciboire-pur-auth{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0;}
.ciboire-pur-auth-btn{
  font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-small);
  white-space:nowrap;flex-shrink:0;padding:9px var(--space-lg);border-radius:var(--radius-md);
  transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);
}
.ciboire-pur-auth-btn--login{background:transparent;border:1px solid var(--color-text);color:var(--color-text);}
.ciboire-pur-auth-btn--login:hover{background:var(--color-text);color:var(--color-bg);}
.ciboire-pur-auth-btn--register{background:var(--color-accent);border:1px solid var(--color-accent);color:var(--btn-text);}
.ciboire-pur-auth-btn--register:hover{background:var(--color-accent-pressed);border-color:var(--color-accent-pressed);color:var(--btn-text);}
.ciboire-pur-toggle{
  display:none;margin-left:auto !important;flex-direction:column;gap:5px;
  background:transparent;border:0;padding:8px;cursor:pointer;
}
.ciboire-pur-toggle-bar{width:26px;height:2px;background:var(--color-text);border-radius:2px;transition:transform var(--dur-fast),opacity var(--dur-fast);}
.ciboire-pur-toggle[aria-expanded="true"] .ciboire-pur-toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ciboire-pur-toggle[aria-expanded="true"] .ciboire-pur-toggle-bar:nth-child(2){opacity:0;}
.ciboire-pur-toggle[aria-expanded="true"] .ciboire-pur-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.ciboire-pur-drawer{
  position:fixed;top:0;right:0;bottom:0;width:min(84vw,340px);z-index:60;
  background:var(--color-bg);border-left:1px solid rgba(255,255,255,0.10);
  transform:translateX(100%);transition:transform var(--dur-base) var(--ease-out);
  padding:calc(var(--header-h) + var(--space-md)) var(--space-lg) var(--space-lg);
  overflow-y:auto;visibility:hidden;
}
.ciboire-pur-drawer.is-open{transform:translateX(0);visibility:visible;}
.ciboire-pur-drawer-list{display:flex;flex-direction:column;gap:var(--space-2xs);}
.ciboire-pur-drawer-item{border-bottom:1px dashed rgba(255,255,255,0.10);}
.ciboire-pur-drawer-link{display:block;padding:var(--space-md) 0;font-family:var(--font-display);font-size:var(--fs-h5);color:var(--color-text);}
.ciboire-pur-drawer-link[aria-current="page"]{color:var(--color-accent);}
.ciboire-pur-drawer-auth{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-lg);}
.ciboire-pur-drawer-auth .ciboire-pur-auth-btn{text-align:center;}

/* ===== HERO (HERO-04 slider) ===== */
.bordure-voile{position:relative;height:560px;overflow:hidden;background:var(--color-primary);}
.bordure-voile-track{position:relative;height:100%;}
.bordure-voile-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--dur-slow) var(--ease-out);}
.bordure-voile-slide.is-active{opacity:1;visibility:visible;}
.bordure-voile-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.bordure-voile-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,20,50,0.92) 0%,rgba(42,20,50,0.62) 46%,rgba(42,20,50,0.30) 100%);}
.bordure-voile-content{position:absolute;inset:0;display:flex;align-items:center;}
.bordure-voile-eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--ls-wide);font-size:var(--fs-h6);color:var(--color-accent);margin-bottom:var(--space-sm);}
.bordure-voile-title{font-family:var(--font-display);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);font-size:clamp(30px,4.4vw,52px);max-width:820px;}
.bordure-voile-subtitle{margin-top:var(--space-md);font-size:var(--fs-h5);line-height:var(--lh-normal);color:rgba(255,255,255,0.92);max-width:640px;}
.bordure-voile-cta{
  display:inline-block;margin-top:var(--space-lg);background:var(--color-accent);color:var(--btn-text);
  font-family:var(--font-display);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wide);
  padding:14px var(--space-xl);border-radius:var(--radius-md);transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast);
}
.bordure-voile-cta:hover{background:var(--color-accent-pressed);color:var(--btn-text);transform:scale(1.02);}
.bordure-voile-controls{position:absolute;bottom:var(--space-lg);left:0;right:0;display:flex;align-items:center;justify-content:center;gap:var(--space-md);z-index:2;}
.bordure-voile-prev,.bordure-voile-next{background:rgba(0,0,0,0.35);color:#fff;border:1px solid rgba(255,255,255,0.35);width:40px;height:40px;border-radius:var(--radius-circle);cursor:pointer;font-size:18px;line-height:1;transition:background var(--dur-fast);}
.bordure-voile-prev:hover,.bordure-voile-next:hover{background:var(--color-accent);color:var(--btn-text);}
.bordure-voile-dots{display:flex;gap:var(--space-xs);}
.bordure-voile-dot{width:11px;height:11px;border-radius:var(--radius-circle);border:0;background:rgba(255,255,255,0.4);cursor:pointer;padding:0;}
.bordure-voile-dot.is-active{background:var(--color-accent);}

/* ===== PAGE HEADER (PHEAD-10 manifesto) ===== */
.ambon-vif{background:var(--color-bg);text-align:center;padding-block:var(--space-3xl);}
.ambon-vif-eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--ls-wide);font-size:var(--fs-h6);color:var(--color-accent);}
.ambon-vif-title{margin-top:var(--space-sm);font-family:var(--font-display);font-weight:var(--fw-bold);line-height:var(--lh-tight);font-size:clamp(30px,5.4vw,64px);}
.ambon-vif-sep{display:block;margin:var(--space-sm) auto 0;color:var(--color-accent);font-size:var(--fs-h2);}
.ambon-vif-desc{margin:var(--space-md) auto 0;font-style:italic;font-size:var(--fs-h4);color:var(--color-text-muted);max-width:600px;}

/* ===== MEDIA BAND ===== */
.media-band-img{width:100%;height:auto;border-radius:var(--radius-lg);object-fit:cover;max-height:420px;}

/* ===== PROSE (PROSE-07 numbered) ===== */
.stalle-vaste{counter-reset:section;}
.stalle-vaste-inner{font-size:var(--fs-body);line-height:var(--lh-loose);color:var(--color-text-muted);}
.stalle-vaste-inner h2{counter-increment:section;font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h2);color:var(--color-text);line-height:var(--lh-tight);margin-top:var(--space-2xl);}
.stalle-vaste-inner h2:first-child{margin-top:0;}
.stalle-vaste-inner h2::before{content:counter(section,decimal-leading-zero) ". ";color:var(--color-accent);font-family:var(--font-display);font-weight:var(--fw-bold);margin-right:var(--space-sm);}
.stalle-vaste-inner h3{font-family:var(--font-body);font-weight:var(--fw-bold);font-size:var(--fs-h3);color:var(--color-text);margin-top:var(--space-lg);}
.stalle-vaste-inner p{margin-top:var(--space-md);}
.stalle-vaste-inner ol{margin-top:var(--space-md);padding-left:var(--space-lg);list-style:decimal;}
.stalle-vaste-inner ol li{margin-top:var(--space-xs);padding-left:var(--space-2xs);}
.stalle-vaste-inner strong{color:var(--color-text);font-weight:var(--fw-bold);}
.stalle-vaste-inner a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;}
.stalle-vaste-inner a:hover{color:var(--color-accent-pressed);}

/* ===== ITEMS GRID (GRID-05 wide featured + compact list) ===== */
.parure-calme-head{margin-bottom:var(--space-xl);}
.parure-calme-label{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h2);}
.parure-calme-featured{padding:var(--space-2xl);background:var(--color-primary);border-radius:var(--radius-lg);margin-bottom:var(--space-xl);}
.parure-calme-featured-title{font-family:var(--font-display);font-weight:var(--fw-bold);line-height:var(--lh-tight);font-size:var(--fs-h2);color:var(--color-text);}
.parure-calme-featured-text{margin-top:var(--space-md);font-size:var(--fs-h5);line-height:var(--lh-normal);max-width:720px;color:rgba(255,255,255,0.88);}
.parure-calme-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg);}
.parure-calme-card{padding:var(--space-md);border-top:2px solid var(--color-accent);}
.parure-calme-card-title{font-size:var(--fs-h4);font-weight:var(--fw-bold);color:var(--color-text);}
.parure-calme-card-text{margin-top:var(--space-xs);font-size:var(--fs-small);line-height:var(--lh-normal);color:var(--color-text-muted);}

/* ===== REVIEWS (REV-04 featured + list) ===== */
.garde-corps-fin-head{margin-bottom:var(--space-xl);}
.garde-corps-fin-label{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h2);}
.garde-corps-fin-star{display:inline-block;vertical-align:middle;}
.garde-corps-fin-featured{padding:var(--space-2xl);background:rgba(62,37,111,0.55);border-radius:var(--radius-lg);margin-bottom:var(--space-2xl);border:1px solid rgba(255,255,255,0.06);}
.garde-corps-fin-featured-stars{margin-bottom:var(--space-md);}
.garde-corps-fin-featured-stars .garde-corps-fin-star{width:28px;height:28px;}
.garde-corps-fin-featured-text{font-size:var(--fs-h4);font-style:italic;line-height:var(--lh-normal);color:var(--color-text);}
.garde-corps-fin-featured-cite{margin-top:var(--space-md);font-weight:var(--fw-bold);color:var(--color-accent);}
.garde-corps-fin-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg) var(--space-xl);}
.garde-corps-fin-item{padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,0.10);}
.garde-corps-fin-item-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);}
.garde-corps-fin-item-author{font-weight:var(--fw-bold);color:var(--color-text);}
.garde-corps-fin-item-text{margin-top:var(--space-xs);font-size:var(--fs-small);line-height:var(--lh-normal);color:var(--color-text-muted);}

/* ===== FAQ (FAQ-08 bordered box with indicator) ===== */
.garde-corps-fin,.receptacle-vif,.parure-calme{background:var(--color-bg);}
.receptacle-vif-head{margin-bottom:var(--space-xl);}
.receptacle-vif-label{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h2);}
.receptacle-vif-box{background:rgba(62,37,111,0.30);border:1px solid rgba(255,255,255,0.10);border-radius:var(--radius-lg);padding:var(--space-2xl);}
.receptacle-vif-item{position:relative;padding:var(--space-md) 0 var(--space-md) var(--space-md);box-shadow:inset 4px 0 0 var(--color-accent);border-bottom:1px solid rgba(255,255,255,0.08);}
.receptacle-vif-item:last-child{border-bottom:0;}
.receptacle-vif-question{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h4);color:var(--color-text);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:var(--space-md);}
.receptacle-vif-question::-webkit-details-marker{display:none;}
.receptacle-vif-question::after{content:"+";color:var(--color-accent);font-size:var(--fs-h3);line-height:1;flex-shrink:0;}
.receptacle-vif-item[open] .receptacle-vif-question::after{content:"−";}
.receptacle-vif-answer{margin-top:var(--space-sm);color:var(--color-text-muted);line-height:var(--lh-loose);}

/* ===== CTA (CTA-04 minimal text link) ===== */
.gradin-profond-inner{text-align:center;}
.gradin-profond-title{font-size:var(--fs-h4);font-weight:var(--fw-bold);color:var(--color-text);}
.gradin-profond-text{margin:var(--space-md) auto 0;font-size:var(--fs-body);line-height:var(--lh-loose);color:var(--color-text-muted);max-width:580px;}
.gradin-profond-link{display:inline-block;margin-top:var(--space-md);font-size:var(--fs-h6);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-accent);border-bottom:1px solid var(--color-accent);padding-bottom:2px;transition:border-width var(--dur-fast),padding-left var(--dur-fast),color var(--dur-fast);}
.gradin-profond-link:hover{color:var(--color-accent-pressed);border-bottom-width:2px;padding-left:8px;}

/* ===== DATA TABLE (TABLE-02 borderless editorial) ===== */
.loggia-haute-lourd-label{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h3);margin-bottom:var(--space-lg);}
.loggia-haute-lourd-inner{overflow-x:auto;}
.loggia-haute-lourd-table{width:100%;border-collapse:collapse;min-width:560px;}
.loggia-haute-lourd-table th{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-text);text-align:left;padding-block:var(--space-md);border-bottom:2px solid var(--color-accent);}
.loggia-haute-lourd-table td{padding:var(--space-md);font-size:var(--fs-body);color:var(--color-text-muted);border-bottom:1px solid rgba(255,255,255,0.06);}
.loggia-haute-lourd-table td:first-child{color:var(--color-text);font-weight:var(--fw-medium);}
.loggia-haute-lourd-table tbody tr:last-child td{border-bottom:0;}

/* ===== LEGAL (LEGAL-02 numbered) ===== */
.calice-haut-intro{font-size:var(--fs-h5);line-height:var(--lh-loose);color:var(--color-text-muted);}
.calice-haut-body{counter-reset:legal-section;margin-top:var(--space-xl);}
.calice-haut-section{counter-increment:legal-section;margin-top:var(--space-xl);}
.calice-haut-heading{font-family:var(--font-body);font-weight:var(--fw-bold);font-size:var(--fs-h3);color:var(--color-text);}
.calice-haut-heading::before{content:counter(legal-section) ". ";color:var(--color-accent);font-family:var(--font-display);font-weight:var(--fw-bold);margin-right:var(--space-xs);}
.calice-haut-para{padding-left:var(--space-md);margin-top:var(--space-sm);line-height:var(--lh-loose);color:var(--color-text-muted);}
.calice-haut-contacts{margin-top:var(--space-xl);padding-left:var(--space-md);list-style:disc;}
.calice-haut-contacts-item{margin-top:var(--space-xs);color:var(--color-text-muted);line-height:var(--lh-normal);}
.calice-haut-disclaimer{margin-top:var(--space-xl);padding:var(--space-md);border:1px dashed rgba(255,255,255,0.20);border-radius:var(--radius-md);font-size:var(--fs-small);color:var(--color-text-muted);line-height:var(--lh-normal);}
.calice-haut-para a,.calice-haut-disclaimer a{color:var(--color-accent);text-decoration:underline;}

/* ===== CONTACT FORM (FORM-05 bordered editorial) ===== */
.tribune-etroit-intro{max-width:var(--container-readable);margin-bottom:var(--space-xl);color:var(--color-text-muted);line-height:var(--lh-loose);}
.tribune-etroit-form{border:2px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-xl);max-width:640px;}
.tribune-etroit-field{margin-bottom:var(--space-lg);}
.tribune-etroit-label{display:block;font-size:var(--fs-small);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-text-muted);margin-bottom:var(--space-xs);}
.tribune-etroit-input,.tribune-etroit-textarea{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,0.20);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-h4);padding:var(--space-xs) 0;}
.tribune-etroit-textarea{resize:vertical;font-size:var(--fs-body);}
.tribune-etroit-input:focus,.tribune-etroit-textarea:focus{outline:0;border-bottom-color:var(--color-accent);}
.tribune-etroit-submit{background:var(--color-accent);color:var(--btn-text);font-family:var(--font-display);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wide);border:0;border-radius:var(--radius-md);padding:14px var(--space-xl);cursor:pointer;transition:background var(--dur-fast);}
.tribune-etroit-submit:hover{background:var(--color-accent-pressed);color:var(--btn-text);}
.tribune-etroit-success{margin-top:var(--space-lg);padding:var(--space-lg);background:rgba(62,37,111,0.5);border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-text);}

/* ===== AUTHOR CARD (AUTH-05) ===== */
.credence-dru-inner{display:flex;gap:var(--space-xl);align-items:flex-start;background:var(--color-bg-elevated);border-radius:var(--radius-lg);padding:var(--space-2xl);}
.credence-dru-portrait{width:140px;height:140px;border-radius:var(--radius-circle);object-fit:cover;flex-shrink:0;}
.credence-dru-role{font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-accent);}
.credence-dru-name{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h2);margin-top:var(--space-2xs);}
.credence-dru-bio{margin-top:var(--space-md);color:var(--color-text-muted);line-height:var(--lh-loose);}
.credence-dru-expertise{margin-top:var(--space-md);display:flex;flex-wrap:wrap;gap:var(--space-xs);}
.credence-dru-expertise-item{font-size:var(--fs-small);background:rgba(241,204,103,0.14);color:var(--color-accent);padding:4px 12px;border-radius:var(--radius-pill);}
.credence-dru-articles{margin-top:var(--space-2xl);}
.credence-dru-articles-heading{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h3);margin-bottom:var(--space-md);}
.credence-dru-articles-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm) var(--space-xl);}
.credence-dru-articles-item{padding:var(--space-sm) 0;border-bottom:1px dashed rgba(255,255,255,0.12);}
.credence-dru-articles-item a{color:var(--color-text);transition:color var(--dur-fast);}
.credence-dru-articles-item a:hover{color:var(--color-accent);}

/* ===== BYLINE (BYLINE-05 horizontal bar) ===== */
.baptistere-noble{background:var(--color-primary);}
.baptistere-noble-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-lg);}
.baptistere-noble-author-info{display:flex;align-items:center;gap:var(--space-md);}
.baptistere-noble-portrait{width:56px;height:56px;border-radius:var(--radius-circle);object-fit:cover;flex-shrink:0;}
.baptistere-noble-written{color:var(--color-text-muted);font-weight:var(--fw-regular);font-size:var(--fs-small);}
.baptistere-noble-name{font-weight:var(--fw-bold);color:var(--color-text);}
.baptistere-noble-name a{color:var(--color-text);}
.baptistere-noble-name a:hover{color:var(--color-accent);}
.baptistere-noble-role{font-size:var(--fs-small);color:var(--color-text-muted);}
.baptistere-noble-cta{display:inline-flex;align-items:center;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-accent);background:var(--color-primary);color:var(--color-accent);border-radius:var(--radius-md);white-space:nowrap;transition:background var(--dur-fast),color var(--dur-fast);}
.baptistere-noble-cta:hover{background:var(--color-accent);color:var(--btn-text);}

/* ===== ERROR (ERR-01) ===== */
.berceau-leger{padding-block:var(--space-3xl);text-align:center;}
.berceau-leger-inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);min-height:52vh;justify-content:center;}
.berceau-leger-number{font-family:var(--font-display);font-weight:var(--fw-bold);line-height:var(--lh-tight);font-size:clamp(80px,18vw,200px);color:var(--color-accent);}
.berceau-leger-title{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h1);max-width:720px;}
.berceau-leger-text{font-size:var(--fs-h5);color:var(--color-text-muted);line-height:var(--lh-normal);max-width:600px;}
.berceau-leger-button{background:var(--color-accent);color:var(--btn-text);font-family:var(--font-display);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-wide);height:52px;display:inline-flex;align-items:center;padding-inline:var(--space-xl);border-radius:var(--radius-md);transition:background var(--dur-fast);}
.berceau-leger-button:hover{background:var(--color-accent-pressed);color:var(--btn-text);}

/* ===== FOOTER (FOOT-08 newspaper masthead) ===== */
.veilleuse-leger{background:var(--color-bg);padding-block:var(--space-xl);}
.veilleuse-leger-masthead{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;border-top:4px solid var(--color-text);border-bottom:4px solid var(--color-text);padding-block:var(--space-md);}
.veilleuse-leger-logo-img{height:56px;width:auto;}
.veilleuse-leger-issue{font-family:var(--font-display);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-text-muted);}
.veilleuse-leger-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl);padding-block:var(--space-xl);}
.veilleuse-leger-col-heading{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h5);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--color-text);margin-bottom:var(--space-md);}
.veilleuse-leger-col-item{margin-top:var(--space-xs);}
.veilleuse-leger-col-link{color:var(--color-text-muted);font-size:var(--fs-small);transition:color var(--dur-fast);}
.veilleuse-leger-col-link:hover{color:var(--color-accent);}
.veilleuse-leger-bottom{border-top:1px solid rgba(255,255,255,0.10);padding-top:var(--space-md);text-align:center;}
.veilleuse-leger-age{font-size:var(--fs-small);color:var(--color-text-muted);}
.veilleuse-leger-copyright{display:block;margin-top:var(--space-2xs);font-size:var(--fs-micro);color:var(--color-text-muted);}

/* ===== COOKIE (COOK-08 bordered bar with icon) ===== */
.parterre-vaste{position:fixed;left:0;right:0;bottom:0;z-index:120;background:var(--color-bg);border-top:2px solid var(--color-accent);}
.parterre-vaste-inner{display:flex;align-items:center;gap:var(--space-md);padding-block:var(--space-sm);}
.parterre-vaste-icon{color:var(--color-accent);flex-shrink:0;}
.parterre-vaste-message{flex:1;font-size:var(--fs-small);line-height:var(--lh-normal);color:var(--color-text-muted);}
.parterre-vaste-actions{display:flex;gap:var(--space-sm);flex-shrink:0;}
.parterre-vaste-button{min-height:36px;padding:6px 18px;border-radius:var(--radius-md);font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-small);cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast);}
.parterre-vaste-button--accept{background:var(--color-accent);border:1px solid var(--color-accent);color:var(--btn-text);}
.parterre-vaste-button--accept:hover{background:var(--color-accent-pressed);color:var(--btn-text);}
.parterre-vaste-button--decline{background:transparent;border:1px solid rgba(255,255,255,0.35);color:var(--color-text);}
.parterre-vaste-button--decline:hover{background:rgba(255,255,255,0.10);color:var(--color-text);}

/* ===== structural roots (wrappers) ===== */
.ciboire-pur-nav-list--top{margin:0;}
.veilleuse-leger-logo{display:inline-flex;flex-shrink:0;}
.veilleuse-leger-col{min-width:0;}
.veilleuse-leger-col-list{display:block;}
.calice-haut{background:var(--color-bg);}
.media-band{background:var(--color-bg);}
.garde-corps-fin-item-stars{display:inline-flex;flex-shrink:0;}
.gradin-profond{background:var(--color-bg);}
.baptistere-noble-text{display:flex;flex-direction:column;gap:2px;}
.tribune-etroit{background:var(--color-bg);}
.loggia-haute-lourd{background:var(--color-bg);}
.credence-dru{background:var(--color-bg);}
.credence-dru-body{flex:1;min-width:0;}

/* ===== MOTION ===== */
/* Slide-in flourish (MOTION-07). Uses a load-time animation with fill-mode
   'both' so every section ALWAYS ends fully visible — never gated on scroll. */
@media (prefers-reduced-motion:no-preference){
  .reveal{animation:pr-slidein var(--dur-slow) var(--ease-out) both;}
  .reveal.reveal--left{animation-name:pr-slideinL;}
}
@keyframes pr-slidein{from{opacity:0;transform:translateX(40px);}to{opacity:1;transform:none;}}
@keyframes pr-slideinL{from{opacity:0;transform:translateX(-40px);}to{opacity:1;transform:none;}}

/* ===== RESPONSIVE ===== */
@media (max-width:1180px){
  .ciboire-pur-nav-list{gap:var(--space-sm);}
  .ciboire-pur-link{font-size:var(--fs-micro);}
}
@media (max-width:1040px){
  .ciboire-pur-nav,.ciboire-pur-auth{display:none;}
  .ciboire-pur-toggle{display:flex;}
  .ciboire-pur-logo-img{height:72px;}
  .parure-calme-list,.garde-corps-fin-list,.credence-dru-articles-list{grid-template-columns:1fr;}
  .credence-dru-inner{flex-direction:column;align-items:center;text-align:center;}
  .credence-dru-expertise{justify-content:center;}
}
@media (max-width:720px){
  :root{
    --container-padding-desktop:16px;
    --fs-h1:26px;--fs-h2:22px;--fs-h3:18px;--fs-h4:16px;
    --header-h:72px;
  }
  .ciboire-pur-logo-img{height:60px;}
  .bordure-voile{height:440px;}
  .bordure-voile-overlay{background:linear-gradient(180deg,rgba(42,20,50,0.55) 0%,rgba(42,20,50,0.85) 100%);}
  .parure-calme-featured,.receptacle-vif-box,.garde-corps-fin-featured{padding:var(--space-lg);}
  .baptistere-noble-inner{flex-direction:column;align-items:flex-start;}
  .baptistere-noble-cta{width:100%;justify-content:center;}
  .veilleuse-leger-grid{grid-template-columns:1fr;gap:var(--space-lg);}
  .veilleuse-leger-masthead{flex-direction:column;align-items:flex-start;}
  .parterre-vaste-inner{flex-direction:column;align-items:stretch;text-align:left;}
  .parterre-vaste-actions{justify-content:stretch;}
  .parterre-vaste-button{flex:1;}
  .ambon-vif{padding-block:var(--space-2xl);}
}
@media (max-width:460px){
  .credence-dru-articles-list{grid-template-columns:1fr;}
  .bordure-voile-title{font-size:24px;}
}

@media (max-width: 1062px) {
  .ciboire-pur-nav,
  .ciboire-pur-nav-list,
  .ciboire-pur-link,
  .ciboire-pur-auth,
  .ciboire-pur-auth-btn { display: none !important; }
  .ciboire-pur-toggle { display: flex !important; }
}
