/* =====================================================================
   ALTIORA GROUP — DESIGN SYSTEM « PREMIUM 2026 »
   Refonte de la couche de style, chargée en dernier sur toutes les pages.
   ADN conservé : or (#a9762a) · onyx (#faf6f0) · crème.
   Parti pris : plus épuré, plus d'air, hairlines, or utilisé avec retenue,
   micro-interactions sobres. « Enlever un accessoire avant de sortir. »
   L'ancienne version est sauvegardée dans modern-legacy.css.
   ===================================================================== */

/* ---------- TOKENS COMPLÉMENTAIRES ---------- */
:root{
  --gold-line:rgba(223,173,89,.14);
  --gold-line-2:rgba(169,118,42,.28);
  --hair:rgba(31,28,25,.10);
  --surface:linear-gradient(180deg,#ffffff,#f7f2e9);
  --surface-2:linear-gradient(180deg,#f7f1e7,#f7f2e9);
  --r-sm:8px; --r:14px; --r-lg:20px; --r-pill:999px;
  --e-out:cubic-bezier(.22,1,.36,1);
  --e-in-out:cubic-bezier(.65,0,.35,1);
  --sh-1:0 1px 0 rgba(255,255,255,.6) inset, 0 12px 30px -18px rgba(31,28,25,.14);
  --sh-2:0 24px 60px -28px rgba(31,28,25,.16);
  --sh-gold:0 20px 60px -30px rgba(169,118,42,.28);
  --pad-sec:clamp(72px,10vw,148px);
}

/* ---------- BASE ---------- */
html{scroll-behavior:smooth}
body{
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  letter-spacing:.012em;line-height:1.72;
  background:
    radial-gradient(120% 80% at 50% -10%,rgba(223,173,89,.05),transparent 60%),
    var(--onyx);
}
body{animation:ah-fade .7s var(--e-out)}
@keyframes ah-fade{from{opacity:0}to{opacity:1}}
::selection{background:rgba(223,173,89,.22);color:#fff8ec}
*{-webkit-tap-highlight-color:transparent}
input,select,textarea,button{font-size:16px}

/* filet de section : plus discret, centré */
.sec{padding:var(--pad-sec) 0}
.sec::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:min(72px,40%);height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-line-2),transparent);
}
.sec:first-of-type::before{display:none}

/* scrollbar fine dorée */
*{scrollbar-width:thin;scrollbar-color:#d8ccb6 transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#d8ccb6,#e6dccb);border-radius:999px;border:2px solid var(--onyx)}
::-webkit-scrollbar-thumb:hover{background:#cfc3ae}

/* ---------- TYPOGRAPHIE ---------- */
h1,h2,h3,h4{letter-spacing:-.012em}
h1{line-height:1.02}
h2{line-height:1.06;text-shadow:0 0 90px rgba(169,118,42,.06)}
h3{line-height:1.12}
p{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}

/* eyebrow / kicker : plus fin, plus d'espace, trait dégradé */
.kicker{
  font-family:'Cinzel',serif;font-weight:600;
  font-size:.66rem;letter-spacing:.36em;text-transform:uppercase;
  color:var(--gold-soft);
  display:inline-flex;align-items:center;gap:.9em;
  background:none;border:0;padding:0;border-radius:0;
}
.kicker::before{content:"";width:34px;height:1px;background:var(--gold-grad);opacity:.85}

/* léger raffinement des intros de section */
.sec-h{max-width:660px;margin-bottom:clamp(34px,4vw,54px)}
.sec-h .kicker{margin-bottom:18px}
.sec-h h2{margin-bottom:14px}
.sec-h p{color:var(--cream2);font-size:1.02rem}

/* ---------- BOUTONS ---------- */
.btn{
  border-radius:var(--r-pill);
  font-weight:500;letter-spacing:.01em;
  padding:.9em 1.7em;min-height:46px;
  transition:transform .4s var(--e-out),box-shadow .4s var(--e-out),
             background-color .3s ease,border-color .3s ease,color .3s ease,filter .3s ease;
  overflow:hidden;
}
.btn::after{content:none!important}          /* on retire l'effet « shimmer » (plus sobre) */
.btn-or{
  background:linear-gradient(135deg,#ecd39a,#dfad59 55%,#c28b37);
  color:#1a1206;font-weight:600;
  box-shadow:0 10px 30px -14px rgba(223,173,89,.6);
}
.btn-or:hover{transform:translateY(-3px);filter:brightness(1.03);box-shadow:0 20px 44px -16px rgba(223,173,89,.62)}
.btn-ghost{
  border:1px solid var(--gold-line-2);color:var(--cream);background:rgba(31,28,25,.02);
}
.btn-ghost:hover{transform:translateY(-3px);border-color:var(--gold);color:var(--gold-soft);background:rgba(169,118,42,.06)}
.btn:active{transform:translateY(-1px)}

/* ---------- HEADER / NAV ---------- */
header.hd{
  background:rgba(250,246,240,.76)!important;
  backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);
  border-bottom:1px solid var(--hair);
}
header.hd .hd-in{height:72px}
header.hd::after{background:linear-gradient(90deg,transparent,var(--gold-line-2),transparent)!important}
.brand-tx b{letter-spacing:.2em}
.brand-tx span{letter-spacing:.44em;color:var(--cream3)}
/* lien de nav : soulignement discret qui naît du centre */
nav a.lk{position:relative;color:var(--cream2);transition:color .25s ease}
nav a.lk::after{
  content:"";position:absolute;left:50%;right:50%;bottom:.28em;height:1px;
  background:var(--gold-grad);transition:left .3s var(--e-out),right .3s var(--e-out);
}
nav a.lk:hover{color:var(--gold-soft)}
nav a.lk:hover::after,.lk[aria-current="page"]::after{left:.8em;right:.8em}
.lk[aria-current="page"]{color:var(--gold-soft)}
.drop>.drop-t{position:relative}
.drop-m{border-radius:var(--r-sm);border-color:var(--hair);background:#ffffff;box-shadow:var(--sh-2)}
.hd .btn{padding:.62em 1.3em;min-height:40px}

/* ---------- SURFACES / CARTES ---------- */
.svc,.work,.pole,.tariff,.tcard,.mcard,.acard,.trip .t,.feat{
  border-radius:var(--r)!important;
  border:1px solid var(--gold-line);
  background:var(--surface);
  transition:transform .5s var(--e-out),box-shadow .5s var(--e-out),border-color .4s ease;
}
.svc,.work,.pole,.mcard,.trip .t{box-shadow:var(--sh-1)}
/* on remplace les barres dorées « qui apparaissent » par un liseré sobre + légère montée */
.svc::before,.work::before,.pole::before{
  height:1px!important;background:var(--gold-grad)!important;opacity:.9;
  top:auto!important;bottom:0!important;transform:scaleX(0)!important;transform-origin:center!important;
  transition:transform .45s var(--e-out)!important;
}
.svc:hover,.work:hover,.pole:hover,.mcard:hover,.acard:hover{
  transform:translateY(-5px);
  border-color:var(--gold-line-2)!important;
  box-shadow:var(--sh-gold)!important;
}
.svc:hover::before,.work:hover::before,.pole:hover::before{transform:scaleX(1)!important}
/* icônes de carte : cercle hairline, or discret */
.svc .ic,.mcard .ic,.pil .ic,.trip .t .ic,.pole .pm{transition:border-color .3s ease,background-color .3s ease}
.svc .ic,.mcard .ic{border:1px solid var(--gold-line-2);background:rgba(223,173,89,.04)}
.svc:hover .ic,.mcard:hover .ic{border-color:var(--gold);background:rgba(223,173,89,.09)}
/* visuels : zoom plus doux */
.acard .ph img,.feat-fig img{transition:transform .7s var(--e-out)}
.acard:hover .ph img{transform:scale(1.05)}
img{transition:transform .6s var(--e-out)}

/* tarifs : lignes hairline, prix doré sobre */
.tariffs{border-radius:var(--r)!important;border-color:var(--gold-line)!important;overflow:hidden}
.tariff{border-radius:0!important;border-bottom:1px solid var(--hair)!important;background:transparent!important;box-shadow:none!important}
.tariff:hover{background:rgba(223,173,89,.03)!important;transform:none!important}
.tariff .pr{letter-spacing:.01em}

/* mise en avant (feat) : cadre premium avec liseré interne */
.feat{position:relative;box-shadow:var(--sh-2)}
.feat::before{height:1px!important;background:var(--gold-grad)!important;opacity:.9}
.feat::after{content:"";position:absolute;inset:0;border-radius:var(--r);pointer-events:none;box-shadow:inset 0 0 0 1px rgba(169,118,42,.08)}

/* ---------- HERO ---------- */
.hero-glow{opacity:.9}
.hero .lead,.phero .lead{color:var(--cream2);font-size:1.08rem;line-height:1.75}
.h-badge,.feat .badge{border-radius:var(--r-pill);border-color:var(--gold-line-2);letter-spacing:.22em}
.hero-fig .frame{border-radius:var(--r);border-color:var(--gold-line-2)}
.hero-fig .frame::after{box-shadow:inset 0 0 0 1px rgba(169,118,42,.16)}
.hero-fig .corner{border-color:var(--gold)}
/* piliers : séparateurs hairline */
.pillars{background:linear-gradient(180deg,rgba(244,237,226,.55),transparent)}
.pil+.pil::before{background:var(--hair)!important}
.pil .ic{border-color:var(--gold-line-2)}

/* HERO DE PAGE INTERNE (.phero) — traitement éditorial premium, 33 pages */
.phero{
  border-bottom:1px solid var(--hair)!important;
  background:
    radial-gradient(110% 130% at 14% -12%,rgba(223,173,89,.12),transparent 58%),
    linear-gradient(180deg,rgba(244,237,226,.5),transparent 42%)!important;
}
.phero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;z-index:3;
  background:linear-gradient(90deg,transparent,var(--gold-line-2),transparent)}
.phero-wm{opacity:.045!important}
.phero .in{padding:clamp(66px,10vw,124px) 0 clamp(40px,6vw,66px)!important;max-width:780px}
.phero .kicker{margin-bottom:20px}
.phero h1{font-size:clamp(2.7rem,6.4vw,4.6rem)!important;line-height:1.0;letter-spacing:-.018em}
.phero .lead{font-size:1.1rem!important;line-height:1.75;color:var(--cream2);max-width:620px;margin-top:20px}
/* filet doré discret sous l'accroche, comme une signature */
.phero .in::after{content:"";display:block;width:64px;height:1px;margin-top:30px;
  background:var(--gold-grad);opacity:.8}

/* bandeau CTA : cadre sobre, liseré haut */
.cta{border-radius:var(--r-lg)!important;border-color:var(--gold-line-2)!important;background:linear-gradient(135deg,#f7f1e7,#f7f2e9)!important;box-shadow:var(--sh-2)}
.cta::before{height:1px!important;background:var(--gold-grad)!important}

/* ---------- FOOTER ---------- */
footer{background:linear-gradient(180deg,#f2ebdf,#ece3d5)!important;border-top:1px solid var(--hair)}
footer::before{background:linear-gradient(90deg,transparent,var(--gold-line-2),transparent)!important}
.ft-col a{transition:color .2s ease,padding-left .25s var(--e-out)}
.ft-col a:hover{color:var(--gold-soft);padding-left:6px}
.ft-social a{border-color:var(--gold-line-2);transition:border-color .25s ease,transform .3s var(--e-out)}
.ft-social a:hover{border-color:var(--gold);transform:translateY(-2px)}

/* ---------- MOTION / REVEAL ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--e-out),transform .9s var(--e-out)}
.reveal.visible{opacity:1;transform:none}
.reveal-delay-1{transition-delay:.08s}
.reveal-delay-2{transition-delay:.16s}
.reveal-delay-3{transition-delay:.24s}

/* barre de progression de lecture */
#scroll-progress{position:fixed;top:0;left:0;height:2px;z-index:100001;background:var(--gold-grad);transform-origin:left;transform:scaleX(0);transition:transform .1s linear}

/* ---------- ACCESSIBILITÉ ---------- */
a:focus-visible,.btn:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.opt:focus-visible{
  outline:2px solid rgba(223,173,89,.72);outline-offset:3px;border-radius:6px;
}
@media(prefers-contrast:high){
  .kicker{color:#f2d79b}
  .svc,.work,.tariff,.pole{border-width:2px!important}
  .btn{border-width:2px}
}

/* =====================================================================
   RESPONSIVE  (repris et consolidé)
   ===================================================================== */
@media(max-width:1200px){
  .wrap{width:min(1120px,94vw)}
  .feat-in{grid-template-columns:1fr 1fr}
  .works{grid-template-columns:repeat(2,1fr)!important}
  .svcs{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:1024px){
  .wrap{width:min(100%,94vw)}
  h1{font-size:clamp(2rem,5vw,3rem)!important}
  h2{font-size:clamp(1.7rem,4vw,2.6rem)!important}
  .feat-in{grid-template-columns:1fr!important}
  .feat-fig{min-height:280px}
  .poles{grid-template-columns:1fr 1fr!important;gap:16px}
  .contact-in{grid-template-columns:1fr;gap:24px}
  .btn{padding:1em 1.6em}
  nav a,.m-nav a{min-height:48px}
}
@media(max-width:768px){
  :root{--pad-sec:clamp(52px,8vw,80px)}
  h1{font-size:clamp(1.9rem,6vw,2.5rem)!important}
  h2{font-size:clamp(1.55rem,5vw,2.05rem)!important}
  h3{font-size:1.22rem!important}
  .hero-tx{text-align:center}.hero-cta{justify-content:center}
  .works,.svcs,.poles{grid-template-columns:1fr!important}
  .tariff{flex-direction:column;gap:6px;text-align:center}
  .ft-top{grid-template-columns:1fr!important;gap:26px}
  .feat-fig{min-height:220px;border-left:none!important;border-top:1px solid var(--line)}
  .cta .btn{width:100%;justify-content:center}
}
@media(max-width:540px){
  .wrap{width:min(100%,90vw)}
  h1{font-size:clamp(1.6rem,7vw,2.05rem)!important}
  .btn{width:100%;justify-content:center}
  .hero-cta{flex-direction:column;width:100%}
  .ft-bot{flex-direction:column;text-align:center;gap:10px}
}
@media(min-width:1600px){
  .wrap{width:min(1360px,86vw)}
  body{font-size:17px}
  .works{grid-template-columns:repeat(3,1fr)!important}
  .svcs{grid-template-columns:repeat(4,1fr)!important}
}

/* safe-area iOS */
header.hd{padding-top:env(safe-area-inset-top)}
.m-nav{padding-bottom:calc(40px + env(safe-area-inset-bottom))!important}
footer{padding-bottom:calc(30px + env(safe-area-inset-bottom))}

/* reduced motion */
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
  #scroll-progress{display:none}
}

/* print */
@media print{
  header,footer,.btn,#scroll-progress,.m-nav,.burger,.hero-glow,.hero-wm{display:none!important}
  body{background:#fff!important;color:#000!important}
  .sec{padding:16px 0!important;break-inside:avoid}
  h1,h2,h3{color:#000!important;text-shadow:none!important}
  .kicker{color:#666!important}
  a{color:#333!important}
  .wrap{width:100%}
}

/* =====================================================================
   LISIBILITÉ (fond clair) — surcouche appliquée à toutes les pages
   • texte plus foncé et un peu plus grand
   • or utilisé EN TEXTE assombri (AA), sans toucher aux dégradés/décors
   ===================================================================== */
:root{
  --gold:#6a4e12;        /* or-texte tres lisible (7.2:1) */
  --gold-soft:#63480f;   /* or-texte accentue (7.9:1) */
  --cream:#191612;       /* texte principal, plus dense */
  --cream2:#4a4236;      /* texte secondaire plus foncé (8.6:1) */
  --cream3:#5f5646;      /* texte tertiaire plus foncé (6.4:1) */
}
/* corps un peu plus grand pour le confort de lecture */
html{font-size:17px}
body{font-size:1rem;line-height:1.75;color:var(--cream)}
@media(min-width:1600px){body{font-size:18px}}

/* accroches et paragraphes : plus grands et plus contrastés */
.lead,.phero .lead,.xhero .lead,.pgh .lead{font-size:1.16rem!important;color:#3f382e!important;line-height:1.78}
.sec-h p,.sec p{color:#443d31}
p{color:#2b271f}

/* étiquettes dorées (kicker) : or foncé lisible */
.kicker{color:var(--gold-soft)!important}
.kicker::before{opacity:1}

/* tout texte/icône explicitement en or clair -> or foncé lisible */
[style*="color:#a9762a"],[style*="color:#dfad59"],[style*="color:#ecd39a"]{color:#6a4e12!important}
.gold-text{color:#6a4e12!important;-webkit-text-fill-color:#6a4e12!important}

/* liens de navigation et pied de page : un cran plus foncés */
nav a.lk{color:#3a342a}
.ft-col a{color:#4a4236}

/* petits libellés d'or dans les cartes/plaques */
.tool .tx b,.offer .tx b,.pnl-row .tx b,.pgh-fig .plate .nm,.tools-panel .ph .kicker{color:#5c420d!important}

/* =====================================================================
   ACCENTS ROUGE & NOIR  (bornes sombres + touches rouges sur fond clair)
   ===================================================================== */

/* ---- EN-TÊTE NOIR ---- */
header.hd{background:rgba(19,17,16,.9)!important;border-bottom:1px solid rgba(217,35,16,.55)!important;
  backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4)}
header.hd::after{background:linear-gradient(90deg,transparent,rgba(217,35,16,.7),transparent)!important}
header.hd .brand-tx b{color:#f4ecdd!important}
header.hd .brand-tx span{color:#c9bda6!important}
header.hd nav a.lk,header.hd .drop-t{color:#e9dfd0!important}
header.hd nav a.lk:hover,header.hd .lk[aria-current="page"],header.hd .drop-t:hover{color:#ffffff!important}
header.hd nav a.lk::after{background:#d92310!important}
header.hd .drop-m{background:#17130f!important;border-color:rgba(217,35,16,.35)!important}
header.hd .drop-m a{color:#e9dfd0!important}
header.hd .drop-m a:hover{color:#ecd39a!important;background:rgba(217,35,16,.10)!important}
header.hd .burger span{background:#f4ecdd!important}

/* ---- MENU MOBILE NOIR ---- */
.m-nav{background:#131110!important}
.m-nav a{color:#ece3d5!important;border-color:rgba(233,231,215,.08)!important}
.m-nav a:hover{color:#ecd39a!important}
.m-nav .kicker,.m-nav small{color:#dfad59!important}

/* ---- PIED DE PAGE NOIR ---- */
footer{background:#131110!important;border-top:1px solid rgba(217,35,16,.5)!important;color:#c4b7a3!important}
footer::before{background:linear-gradient(90deg,transparent,rgba(217,35,16,.7),transparent)!important}
footer h4,footer .ft-h,footer .brand-tx b{color:#f4ecdd!important}
footer .brand-tx span{color:#c4b7a3!important}
footer .ft-col a,footer p,footer li,footer span{color:#c4b7a3!important}
footer .ft-col a:hover{color:#ecd39a!important}
footer .kicker{color:#dfad59!important}
footer .ft-social a{border-color:rgba(223,173,89,.45)!important;color:#e9dfd0!important}
footer .ft-social a:hover{border-color:#d92310!important;color:#fff!important;background:rgba(217,35,16,.14)!important}

/* ---- BANDE CTA NOIRE ---- */
.cta{background:linear-gradient(135deg,#1c1917,#0f0d0c)!important;border-color:rgba(217,35,16,.55)!important}
.cta::before{background:linear-gradient(90deg,transparent,#d92310,transparent)!important;height:2px!important}
.cta h2{color:#f6efe2!important}
.cta p{color:#c9bda6!important}
.cta .kicker{color:#dfad59!important}

/* ---- TOUCHES ROUGES SUR LE CORPS CLAIR ---- */
.kicker::before{background:#d92310!important;opacity:1;width:38px}
.svc:hover::before,.work:hover::before,.pole:hover::before,a.poled:hover::before{background:#d92310!important}
.phero .in::after{background:#d92310!important;width:72px;height:2px}
.xsign{border-top:1px solid rgba(217,35,16,.35)!important}
.facts{border-color:rgba(217,35,16,.22)!important}
.fact b{-webkit-text-fill-color:initial;background:none;color:#8f1409!important}
.btn-ghost:hover{border-color:#d92310!important;color:#a11306!important;background:rgba(217,35,16,.07)!important}
.btn-or:hover{box-shadow:0 14px 34px -12px rgba(217,35,16,.55)!important}
/* liseré rouge au survol des panneaux d'accueil et cartes */
a.poled::before,.svc::before,.work::before,.pole::before{background:#d92310!important}

/* =====================================================================
   PLUS DE ROUGE  (étiquettes, soulignements, accents de cartes)
   ===================================================================== */
/* étiquettes de section en rouge (corps clair) */
.kicker{color:#a11306!important}
.kicker::before{background:#a11306!important}
/* ...mais on garde l'or dans les zones sombres (en-tête, pied, CTA, menu mobile) */
header.hd .kicker,footer .kicker,.cta .kicker,.m-nav .kicker,.m-nav small{color:#dfad59!important}
header.hd .kicker::before,footer .kicker::before,.cta .kicker::before{background:#d92310!important}
/* panneaux de hero : étiquette rouge aussi */
.tools-panel .ph .kicker,.offer-panel .ph .kicker,.pnl .ph .kicker{color:#d92310!important}

/* soulignement rouge sous les titres de section */
.sec-h h2{position:relative}
.sec-h h2::after{content:"";display:block;width:56px;height:3px;margin-top:16px;
  background:#d92310;border-radius:2px}
.cta h2::after{margin-left:auto;margin-right:auto}   /* centré dans les CTA */

/* icônes de cartes : accent rouge au survol */
.svc:hover .ic,.mcard:hover .ic,a.poled:hover .ic,.pil .ic{transition:all .3s ease}
.svc:hover .ic,.mcard:hover .ic,a.poled:hover .ic{
  border-color:#d92310!important;color:#a11306!important;background:rgba(217,35,16,.07)!important}

/* petites capitales rouges dans les listes de manifeste */
.mani-list .it .ic{color:#a11306!important}

/* =====================================================================
   LOGO OFFICIEL : marque + filigrane transparent
   ===================================================================== */
img.mark{width:auto!important;height:52px!important;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}
.ft-brand img.mark{height:60px!important}

/* on retire les filigranes « chevron » des heros… */
.phero-wm{display:none!important}
/* …et on met le LOGO en filigrane transparent à la place */
.phero,.txhero,.pgh,.xhero{position:relative}
.phero::before,.txhero::before,.pgh::before{
  content:"";position:absolute;right:-2%;top:50%;transform:translateY(-50%);
  width:min(360px,42%);aspect-ratio:1;z-index:0;pointer-events:none;
  background:url("altiora-logo-wm.png") center/contain no-repeat;opacity:.12}
.xhero::before{
  content:"";position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);
  width:min(560px,88%);aspect-ratio:1;z-index:1;pointer-events:none;
  background:url("altiora-logo-wm.png") center/contain no-repeat;opacity:.11}
@media(max-width:768px){
  .phero::before,.txhero::before,.pgh::before{opacity:.10;width:min(260px,58%)}
  .xhero::before{opacity:.09;width:min(380px,94%)}
}

/* =====================================================================
   PRIX EN NOIR  (tableaux de tarifs + configurateurs)
   ===================================================================== */
.pr,.oprice,.amt,.bv,.cfg-total-val .amt,.cfg-bar .bv{
  background:none!important;
  -webkit-background-clip:border-box!important;background-clip:border-box!important;
  -webkit-text-fill-color:#000!important;color:#000!important}
.cur,.cfg-total-val .cur{color:#000!important}

/* =====================================================================
   HARMONISATION FINALE — langage d'accent unifié sur tout le site
   • toutes les fines lignes d'accent : ROUGE (comme CTA/kickers/survols)
   • filets dorés fins plus lisibles sur fond clair (or foncé)
   ===================================================================== */
.tools-panel::before,.offer-panel::before,.pnl::before,
.cfg-quote-h::before,.feat::before,.tariffs::before{
  background:#d92310!important}
/* filets/bordures dorés : teinte plus soutenue pour ressortir sur l'ivoire */
:root{--gold-line:rgba(169,118,42,.18);--gold-line-2:rgba(169,118,42,.34)}
.svc,.work,.pole,.tariff,.tcard,.mcard,.acard,.trip .t,.feat,.facts,
.tools-panel,.offer-panel,.pnl,.cfg-quote,.cinfo{border-color:rgba(169,118,42,.3)!important}
.tool .ic,.offer .ic,.pnl-row .ic,.svc .ic,.mcard .ic{border-color:rgba(169,118,42,.38)!important}
/* survols de cartes : liseré rouge cohérent (déjà en place) + bordure plus nette */
.svc:hover,.work:hover,.pole:hover,.mcard:hover,.acard:hover,a.poled:hover{
  border-color:rgba(169,118,42,.5)!important}
/* en zones sombres (en-tête/pied/CTA) on garde l'or clair, pas l'or foncé */
header.hd,footer,.cta{--gold-line-2:rgba(223,173,89,.4)}


/* =====================================================================
   LOGO COMPLET VISIBLE (hero accueil + présentation)
   ===================================================================== */
.xhero-logo{display:block;height:132px;width:auto;margin:0 auto 4px;filter:drop-shadow(0 6px 18px rgba(0,0,0,.18))}
.xhero::before{display:none!important}          /* plus de filigrane : le logo est désormais visible */
.pgh-logo{display:block;height:92px;width:auto;margin:0 0 20px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15))}
@media(max-width:768px){.xhero-logo{height:104px}.pgh-logo{height:76px}}


/* =====================================================================
   ÉCRAN D'INTRO : carte verticale de marque
   ===================================================================== */
#intro .intro-med{width:236px!important;height:280px!important;border-radius:18px!important;
  background:url("carte-altiora.png") center/contain no-repeat!important;
  box-shadow:0 26px 64px -26px rgba(0,0,0,.45)!important;overflow:hidden}
#intro .intro-med > *{display:none!important}
#intro .intro-ring{display:none!important}
#intro .intro-name,#intro .intro-sub{display:none!important}

/* =====================================================================
   COHÉRENCE FINALE — rappel des règles unifiées (référence)
   Palette : ivoire #faf6f0 · texte #191612 · or-texte #6a4e12 ·
   accents rouge #d92310 · bornes sombres #131110 · prix #000.
   Bordures dorées : rgba(169,118,42,.3) · lignes d'accent : rouge.
   (Aucun style ajouté ici : les règles ci-dessus régissent déjà tout le site.)
   ===================================================================== */

/* =====================================================================
   VISIBILITÉ DES IMAGES — sécurité
   Une image ne doit jamais rester masquée par une animation.
   ===================================================================== */
img{opacity:1}
img.fx-rv,figure.fx-rv img{opacity:1!important}
/* toute image affichée garde une taille minimale tant qu'elle charge */
figure img,.pgh-fig img,.xhero-logo,.pgh-logo{min-height:1px}
/* si JavaScript est désactivé, rien n'est masqué */
.no-js .fx-rv,.no-js .reveal{opacity:1!important;transform:none!important}

/* =====================================================================
   BANDES SOMBRES — pour les visuels de marque (fond noir)
   Cohérent avec les bornes du site (en-tête, pied, CTA).
   ===================================================================== */
.dk-band{position:relative;background:#131110;padding:clamp(46px,6vw,78px) 0;margin:clamp(40px,6vw,72px) 0;
  border-top:1px solid rgba(217,35,16,.5);border-bottom:1px solid rgba(217,35,16,.5)}
.dk-band::before,.dk-band::after{content:"";position:absolute;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(223,173,89,.5),transparent)}
.dk-band::before{top:0}.dk-band::after{bottom:0}
.dk-band .sec-h{margin-inline:auto;text-align:center;max-width:760px}
.dk-band .sec-h h2{color:#f6efe2!important}
.dk-band .sec-h h2::after{margin-inline:auto}
.dk-band .sec-h p{color:#c9bda6!important}
.dk-band .kicker{color:#dfad59!important}
.dk-band .kicker::before{background:#d92310!important}
.dk-band figure{margin:0 auto;max-width:1060px}
.dk-band img{width:100%;height:auto;display:block;border-radius:16px;
  border:1px solid rgba(223,173,89,.35);box-shadow:0 30px 70px -30px rgba(0,0,0,.9)}
.dk-band figcaption{margin-top:16px;text-align:center;font-size:.86rem;color:#a99e8c}
.dk-band .narrow{max-width:640px}
