/* HistorIA · finitions haut de gamme (v37)
   Chargée après historia.css. Ne modifie aucun contenu : typographie, palette,
   accessibilité, sobriété des reliefs. Voir DESIGN-NOTES.md. */

:root{
  --brand-cream:#f5f1e6;
  --brand-gold:#b8924a;
  --brand-gold-deep:#6e5320;
  --brand-ink:#211912;
  --focus-ring:0 0 0 3px #f5f1e6,0 0 0 6px #b8924a;
}

/* Rendu typographique */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-kerning:normal}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
::selection{background:#b8924a;color:#fff}

/* Chiffres alignés dans les tarifs et les scores */
table,.tariff-cards b,.investor-grid b,.pricing-cards b,.sentinel-price-table,.subscription-periods,
.outdoor-price-grid b,.recharge-price,#zone-score,.score-ring strong,.trust b{font-variant-numeric:tabular-nums lining-nums}

/* Lien d'évitement (accessibilité clavier) */
.skip-link{position:absolute;left:1rem;top:-100px;z-index:1000;padding:.75rem 1.1rem;background:var(--brand-ink);color:var(--brand-cream);border:1px solid var(--brand-gold);font:600 .9rem/1 var(--sans);text-decoration:none;border-radius:4px}
.skip-link:focus{top:1rem}

/* Focus clavier visible et cohérent sur tout le site */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:none!important;box-shadow:var(--focus-ring)!important;border-radius:4px}

/* Reliefs : on conserve le principe des boutons en volume, avec une ombre plus sobre */
.button,.uploads label,.piece{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 2px 0 #6e5320,0 8px 18px rgba(33,25,18,.18)!important;
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
}
.button:hover,.uploads label:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 3px 0 #6e5320,0 12px 24px rgba(33,25,18,.22)!important}
.button:active,.uploads label:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(33,25,18,.3),0 1px 0 #6e5320!important}

/* Barre latérale : sélecteur d'espace aux couleurs de la marque (au lieu du rouge) */
.sidebar-audience a{background:linear-gradient(180deg,#3a2d21,#261d15)!important;border:1px solid #b8924a!important;color:#f5f1e6!important;box-shadow:none!important}
.sidebar-audience a:hover{background:linear-gradient(180deg,#4a3a29,#30251b)!important}
.sidebar-audience a.active{background:linear-gradient(180deg,#d9b872,#b8924a)!important;color:#211912!important;outline:none!important;filter:none!important}
.site-sidebar nav a.active{box-shadow:inset 3px 0 #e2c27a,0 2px 0 #6e5320!important}

/* Aperçu gratuit : état « démonstration » sans chiffres inventés */
.live-score.is-demo #score-factors b{color:#a99a87}
.demo-notice{display:block;margin:.9rem 0 0;padding:.7rem .85rem;border-left:3px solid #b8924a;background:rgba(184,146,74,.12);color:#e9dcc6;font:400 .8rem/1.5 var(--sans)}
.zone-result .demo-notice{color:inherit}
.geo-precision{display:block;margin-top:.35rem;font:500 .75rem/1.4 var(--sans);opacity:.8}

/* Mouvement réduit */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Impression : un devis ou une grille tarifaire doit s'imprimer proprement */
@media print{
  .site-sidebar,.sidebar-overlay,.sidebar-toggle,.mobile-app-nav,.option-tabs,.topbar .top-actions,.skip-link,#property-map{display:none!important}
  body.has-sidebar main,body.has-sidebar footer{margin-left:0!important;padding-left:0!important}
  body{background:#fff!important;color:#000!important}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em}
  section{break-inside:avoid-page}
}
.live-score.is-demo #needle{opacity:.35}

/* Pied de page : liens légaux */
footer .legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.1)}
footer .legal-links a{color:#c7baa9;font-size:.8rem;text-decoration:none}
footer .legal-links a:hover{color:#e0c47d;text-decoration:underline;text-underline-offset:3px}
footer .legal-links + small{border-top:0!important;padding-top:.6rem!important}

/* Mention IA (règlement (UE) 2024/1689, article 50) */
.ai-disclosure{display:inline-flex;align-items:center;gap:.45rem;width:max-content;max-width:100%;margin:.2rem 0 .9rem;padding:.3rem .6rem .3rem .3rem;border:1px solid rgba(184,146,74,.55);border-radius:999px;background:rgba(184,146,74,.1);color:inherit;font:500 .72rem/1.2 var(--sans);text-decoration:none;letter-spacing:.01em}
.ai-disclosure span{display:inline-grid;place-items:center;min-width:1.6rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:#b8924a;color:#211912;font:700 .62rem/1 var(--sans);letter-spacing:.06em}
.ai-disclosure:hover{border-color:#b8924a;background:rgba(184,146,74,.2)}
.live-score .ai-disclosure{margin:.8rem 0 0}

/* Pages légales */
.legal-hero{padding:5rem max(5vw,40px) 3rem;background:linear-gradient(135deg,#b4a58f,#d0c2ae)}
.legal-hero h1{font-size:clamp(2.6rem,5vw,4.6rem);max-width:18ch;margin-bottom:1rem}
.legal-hero h1 em{color:#5b4935}
.legal-hero>p:last-child{max-width:62ch;color:#4b4034;margin:0}
.legal-body{max-width:860px;padding:3.5rem max(5vw,40px) 5rem;color:#2a2118;font-size:.98rem;line-height:1.7}
.legal-page main{background:#efe8da}
.legal-body h2{display:flex;align-items:baseline;gap:.9rem;margin:2.8rem 0 1rem;padding-top:1.6rem;border-top:1px solid rgba(52,40,26,.18);font-size:clamp(1.6rem,2.4vw,2.1rem)}
.legal-body h2:first-of-type{margin-top:1.5rem}
.legal-body h2 span{flex:none;font:600 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#8a6a2e}
.legal-body h3{margin:1.6rem 0 .6rem;font:600 1rem/1.4 var(--sans);color:#3a2d21}
.legal-body p,.legal-body li{max-width:72ch}
.legal-body a{color:#6e5320;text-underline-offset:3px}
.legal-body .legal-meta{margin:0 0 .35rem;color:#5d5044;font-size:.86rem}
.legal-body mark.todo{background:#f3dfae;color:#5a3f0c;padding:0 .25rem;border-radius:3px}
.legal-body table{width:100%;border-collapse:collapse;margin:1rem 0 1.4rem;font-size:.9rem}
.legal-body th,.legal-body td{padding:.7rem .8rem;border:1px solid rgba(52,40,26,.2);text-align:left;vertical-align:top}
.legal-body th{background:#2a2118;color:#f5f1e6;font-weight:600}
.legal-body .table-wrap{overflow-x:auto}
.legal-list{display:grid;grid-template-columns:minmax(180px,.4fr) 1fr;gap:.55rem 1.5rem;margin:0}
.legal-list dt{font-weight:600;color:#3a2d21}
.legal-list dd{margin:0}
@media(max-width:620px){.legal-hero{padding:3rem 20px 2rem}.legal-body{padding:2.4rem 20px 4rem}.legal-list{grid-template-columns:1fr;gap:.15rem}.legal-list dd{margin-bottom:.7rem}}

/* Paiement : titre du panier vide lisible sur fond clair */
.checkout-cart-empty b{color:#2a2118!important}

/* Barre de langues (LibreTranslate), tout en haut de la page, avec drapeaux */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lang-bar{background:#1b140e;border-bottom:1px solid rgba(184,146,74,.28)}
.lang-bar-inner{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:.3rem;padding:.35rem max(20px,4vw)}
.lang-bar.is-busy{opacity:.6}
.lang-btn{display:inline-flex;align-items:center;gap:.42rem;padding:.28rem .55rem;background:transparent;border:1px solid transparent;border-radius:6px;color:#c7bba6;font:600 .74rem/1 var(--sans);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}
.lang-btn:hover{border-color:rgba(184,146,74,.4);color:#f4ead9}
.lang-btn[aria-pressed="true"]{border-color:rgba(184,146,74,.7);background:rgba(184,146,74,.14);color:#f4ead9}
.lang-btn[disabled]{cursor:default}
.flag{width:21px;height:14px;border-radius:2px;flex:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.28)}
.flag-code{width:auto;min-width:21px;height:14px;display:inline-grid;place-items:center;background:#2b2118;color:#e6c988;font:700 .58rem/1 var(--sans);padding:0 .25rem;box-shadow:none}
.flag-code:before{content:attr(data-code)}
.flag-fr{background:linear-gradient(90deg,#0055A4 0 33.33%,#fff 33.33% 66.66%,#EF4135 66.66%)}
.flag-de{background:linear-gradient(180deg,#000 0 33.33%,#DD0000 33.33% 66.66%,#FFCE00 66.66%)}
.flag-nl{background:linear-gradient(180deg,#AE1C28 0 33.33%,#fff 33.33% 66.66%,#21468B 66.66%)}
.flag-es{background:linear-gradient(180deg,#AA151B 0 25%,#F1BF00 25% 75%,#AA151B 75%)}
.flag-it{background:linear-gradient(90deg,#008C45 0 33.33%,#fff 33.33% 66.66%,#CD212A 66.66%)}
.flag-gb{background:#00247D}
.lang-note{color:#e0c47d;font:600 .7rem/1.2 var(--sans);margin-left:.4rem}
.lang-note:empty{display:none}
@media (max-width:620px){.lang-bar-inner{justify-content:center;gap:.45rem;padding:.4rem 12px}.lang-btn .lang-name{display:none}.lang-btn{padding:.3rem .4rem}.lang-note{display:none}}

/* Bandeau « service bientôt disponible · précommande » (Sentinelle, Data Century, Experts) */
.precommande-banner{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;
  margin:0;padding:14px 22px;text-align:center;
  background:linear-gradient(180deg,#2a2118 0,#211a13 100%);
  border-bottom:1px solid rgba(184,146,74,.35)}
.precommande-banner .pc-emoji{font-size:1.35rem;line-height:1;letter-spacing:2px}
.precommande-banner .pc-text{margin:0;font-weight:800;font-size:clamp(1.02rem,2.4vw,1.28rem);
  color:#FF6A1A;text-shadow:0 1px 0 rgba(0,0,0,.35);letter-spacing:.2px}
.precommande-banner .pc-cta{display:inline-block;text-decoration:none;cursor:pointer;border:0;
  font-family:inherit;font-weight:800;font-size:1rem;color:#2a1a06;
  padding:11px 22px;border-radius:12px;
  background:linear-gradient(180deg,#FFB44A 0,#FF7A1A 55%,#F2600A 100%);
  box-shadow:0 3px 0 #B84A05,0 6px 14px rgba(242,96,10,.38),inset 0 1px 0 rgba(255,255,255,.5);
  transform:translateY(0);transition:transform .08s ease,box-shadow .08s ease}
.precommande-banner .pc-cta:hover{transform:translateY(-1px);
  box-shadow:0 4px 0 #B84A05,0 9px 18px rgba(242,96,10,.45),inset 0 1px 0 rgba(255,255,255,.55)}
.precommande-banner .pc-cta:active{transform:translateY(2px);
  box-shadow:0 1px 0 #B84A05,0 3px 8px rgba(242,96,10,.4),inset 0 1px 0 rgba(255,255,255,.4)}
.precommande-banner .pc-cta:focus-visible{outline:3px solid #FFD9A6;outline-offset:2px}
/* Sur contact.html, le bandeau n'apparaît qu'en mode Data Century (?objet=data) */
html:not(.data-century-page) .precommande-data{display:none}
@media (max-width:620px){.precommande-banner{gap:10px;padding:12px 16px}
  .precommande-banner .pc-cta{width:100%;max-width:320px}}
@media print{.precommande-banner{display:none}}
@media (prefers-reduced-motion:reduce){.precommande-banner .pc-cta{transition:none}}

/* Bandeau « Contactez-nous » en bas de chaque page (tous les liens mènent au formulaire) */
.contact-band{background:linear-gradient(180deg,#2d241b,#241c15);border-top:1px solid rgba(184,146,74,.4);color:#f5f1e6;padding:2.6rem max(5vw,40px)}
.has-sidebar .contact-band{margin-left:var(--sidebar-width)}
.contact-band-inner{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.contact-band-kicker{margin:0 0 .3rem;font:700 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#e0c47d}
.contact-band-title{margin:0 0 .8rem;font:400 clamp(1.9rem,3.2vw,2.6rem)/1.05 var(--serif);color:#f5f1e6}
.contact-band-links{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin:0}
.contact-band-links a{font:700 1.15rem/1.3 var(--sans);color:#f4d98f;text-decoration:none;border-bottom:1px solid rgba(244,217,143,.45)}
.contact-band-links a:hover{color:#fff;border-color:#fff}
.contact-band .contact-3d{min-height:56px;padding:.9rem 1.7rem;font-size:1.05rem;border:0;border-radius:12px;color:#21190f!important;
  background:linear-gradient(180deg,#f0d489 0,#d4ac5c 55%,#b8924a 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 5px 0 #6e5320,0 12px 22px rgba(0,0,0,.35)}
.contact-band .contact-3d:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 7px 0 #6e5320,0 15px 26px rgba(0,0,0,.4)}
.contact-band .contact-3d:active{box-shadow:inset 0 2px 5px rgba(0,0,0,.25),0 1px 0 #6e5320}
/* Page contact : e-mail et adresse du site lisibles */
.contact-hero aside a[href="#contact-form"],.contact-hero aside .contact-site-url{display:block;margin-top:.5rem;font:700 1.12rem/1.35 var(--sans);color:#f4d98f;text-decoration:none}
.contact-hero aside .contact-site-url{font-size:1.25rem;color:#fff}
.contact-hero aside p{font-size:.95rem;color:#e6dac7}
/* Pied de page : e-mail plus lisible */
footer div>a[href$="contact-form"]{font-size:1rem!important;font-weight:700;color:#f4d98f}
@media (max-width:900px){.has-sidebar .contact-band{margin-left:0}}
@media (max-width:620px){.contact-band{padding:2rem 20px}.contact-band .contact-3d{width:100%}.contact-band-links a{font-size:1.05rem}}
@media print{.contact-band .contact-3d{display:none}}

/* ===== Contraste (contrôle WCAG 2.2 AA du 17/09/2026) : couleurs seules, aucune structure modifiée ===== */
/* Tableaux : la dernière colonne avait un texte crème sur fond beige (quasi invisible) */
.table-wrap td:last-child{color:#251c13}
.table-wrap .vip-row td:last-child{color:#fff0d9}
/* VIP Patrimoine : texte du bouton lisible, surtitre plus foncé */
.investor-plans .vip-patrimoine .tariff-pay span{color:inherit}
.investor-plans .vip-patrimoine i{color:#7a5a1e}
/* Surtitres (eyebrow) sur fonds clairs et sombres */
.eyebrow{color:#4a3712}
/* surtitres sur fonds moyens (en-têtes dégradés) */
.page-hero .eyebrow,.legal-hero .eyebrow,.contact-hero .eyebrow,.account-hero .eyebrow,.result-hero .eyebrow,.hero-copy .eyebrow,.purchase-path .eyebrow,.predi-audience .eyebrow{color:#2a1d08}
/* surtitres sur fonds sombres (mesurés) */
.support-hero .eyebrow,.support-early-copy .eyebrow,.market-horizons .eyebrow,.predi-criteria .eyebrow,.particular-theme-heading .eyebrow,.expert-hero .eyebrow,.option-hero .eyebrow,.tariff-hero .eyebrow,.tariff-title .eyebrow,#pro-routing-summary .eyebrow,.pricing-head .eyebrow,.order-summary .eyebrow,.zone-result .eyebrow,.score-panel .eyebrow,.path-pro .eyebrow{color:#f0cf95}
.partner-page .partner-paths .eyebrow,.partner-page .partner-form-section .eyebrow{color:#7a5a1e}
.partner-page .partner-process .eyebrow{color:#f0cf95}
.legal-body h2 span{color:#6e5320}
/* Pieds de page */
footer small{color:#b3a794!important}
/* Textes secondaires trop pâles */
.indoor-drone-card>span{color:#e6b7a6}
.particular-theme button>span,button[data-theme]>span{color:#2a1a06}
#checkout-cart-note{color:#c9bba8}
.market-horizons article p{color:#e8dfd2}
.support-process li small,#propositions>div>p{color:#3e5566}
.support-path-grid article>span{color:#8a5f28}
.map-card>small{color:#c9bda9;font-size:.74rem}
.tariff-rule{color:#4a3f34}
.booking-steps span{color:#5a4d40}
.field small{color:#5e5144}
.zone-form .field small{color:#c9bda9}
.option-price>small{color:#54493d}
.checkout small{color:#5a4e42}
.calendar-card>small{color:#5a4d40}
.credit-explain,.credit-explain b{color:#4f4439}
/* Carte : crédits Leaflet lisibles et soulignés */
.leaflet-control-attribution a{color:#005a80;text-decoration:underline}
/* Tailles minimales de lecture et de cible tactile */
.live-analysis-note{font-size:.72rem}
.mobile-app-nav a span{font-size:.7rem}
.sidebar-toggle b{font-size:.66rem}
.contact-hero aside small a{display:inline-block;min-height:24px;padding:.2rem 0;line-height:1.6}
input[type=radio],input[type=checkbox]{min-width:18px;min-height:18px}
footer div>a:not(.logo){min-height:24px;display:inline-flex;align-items:center}
.order-summary>#checkout-cart-note{color:#c9bba8}
.checkout div small{color:#5a4e42}
.sentinelle-cards .indoor-drone-card>span{color:#e6b7a6}
.recharge .tariff-title .credit-explain,.tariff-title p.credit-explain{color:#4f4439}
/* .path-no (index) : grands numéros décoratifs en filigrane, masqués aux lecteurs d'écran ; exemptés par le critère WCAG 1.4.3 (décoration pure). */
/* En-têtes à fond moyen : textes plus soutenus */
.page-hero>p:not(.eyebrow){color:#3b3026}
.pro-hero>p:not(.eyebrow){color:#2e2419}
.pro-hero h1 em,.sentinelle-hero h1 em{color:#3a2c1c}
.sentinelle-hero>div>p{color:#2e2419}
.contact-hero>div>p:not(.eyebrow){color:#3b3026}
.trust span{color:#3b3026}
.uploads small{color:#3d2d12}
.partner-hero aside span,.support-hero aside span{color:#f3d9a8}
.tariff-cards .tariff-pay,.tariff-cards .tariff-pay span{color:#20170d}
.sentinelle-page .sentinelle-hero>div>p{color:#2e2419}
.partner-page .partner-hero .eyebrow{color:#f0cf95}
.table-wrap .tariff-pay,.table-wrap .tariff-pay span{color:#20170d}

/* Sentinelle réparti dans les espaces clients (17/09/2026) : mêmes styles que la page Sentinelle */
.sentinelle-transfer{border-top:1px solid rgba(184,146,74,.45)}
.sentinelle-transfer-label{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem 1.5rem;padding:1rem max(5vw,40px);background:#2a2118;color:#f4d27f;font:700 .78rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.sentinelle-transfer-label a{color:#f5f1e6;text-decoration:none;letter-spacing:.02em;text-transform:none;font-weight:600;border-bottom:1px solid rgba(244,210,127,.5)}
.sentinelle-transfer-label a:hover{color:#f4d27f}
.sentinelle-renvoi{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.2rem 3rem;padding:2.6rem max(5vw,40px);background:#e6dac7;color:#2f251d;border-top:1px solid rgba(149,113,46,.45)}
.sentinelle-renvoi+.sentinelle-renvoi{background:#d9ccb7}
.sentinelle-renvoi h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:.2rem 0 .5rem;max-width:22ch}
.sentinelle-renvoi p:not(.eyebrow){margin:0;color:#3b3026;max-width:60ch}
.sentinelle-renvoi .renvoi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.4rem}
@media (max-width:620px){.sentinelle-transfer-label{padding:.9rem 20px}.sentinelle-renvoi{padding:2rem 20px}.sentinelle-renvoi .renvoi-actions .button{width:100%}}

/* ===== Relief 3D des boutons et onglets (consigne du Président : toujours en 3D) ===== */
.button,.uploads label,.piece{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 5px 0 #6e5320,0 10px 18px rgba(33,25,18,.22)!important}
.button:hover,.uploads label:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 7px 0 #6e5320,0 14px 24px rgba(33,25,18,.26)!important}
.button:active,.uploads label:active{transform:translateY(4px);box-shadow:inset 0 2px 5px rgba(33,25,18,.3),0 1px 0 #6e5320!important}
/* Barre latérale : onglets en relief */
.sidebar-audience a{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 0 #6e5320,0 8px 14px rgba(0,0,0,.28)!important;transition:transform .12s ease,box-shadow .12s ease}
.sidebar-audience a:hover{transform:translateY(-1px)}
.sidebar-audience a:active{transform:translateY(3px);box-shadow:inset 0 2px 4px rgba(0,0,0,.35),0 1px 0 #6e5320!important}
.sidebar-audience a.active{box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 4px 0 #6e5320,0 8px 14px rgba(0,0,0,.28)!important}
.site-sidebar nav a{box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 4px 0 #6e501a,0 8px 14px rgba(0,0,0,.3)!important;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.site-sidebar nav a:hover{transform:translate(3px,-1px)}
.site-sidebar nav a:active{transform:translate(3px,3px);box-shadow:inset 0 2px 5px rgba(0,0,0,.35),0 1px 0 #6e501a!important}
.site-sidebar nav a.active{box-shadow:inset 3px 0 #e2c27a,inset 0 1px 0 rgba(255,255,255,.2),0 4px 0 #6e501a,0 8px 14px rgba(0,0,0,.3)!important}
/* Barre mobile : onglets en relief */
.mobile-app-nav a{margin:6px 3px;border-radius:10px;background:linear-gradient(180deg,#3d2f24,#2a2018);border:1px solid rgba(217,173,80,.45);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 3px 0 #5e4418;min-height:52px}
.mobile-app-nav a.active{background:linear-gradient(180deg,#5a4630,#3a2c20);border-color:#f0ca70}
.mobile-app-nav a:active{transform:translateY(2px);box-shadow:inset 0 2px 4px rgba(0,0,0,.35),0 1px 0 #5e4418}
@media (prefers-reduced-motion:reduce){.sidebar-audience a,.site-sidebar nav a{transition:none}}

/* ===== Espace client (compte.html) ===== */
.account-notice{margin:1.6rem max(5vw,40px) 0;padding:1rem 1.2rem;background:#2a2118;color:#f4e3c3;border-left:5px solid #efc96b;border-radius:8px;box-shadow:0 4px 0 #6e5320;font:500 .92rem/1.5 var(--sans)}
.account-login{margin:1.6rem max(5vw,40px) 0;padding:1.8rem;background:#f4ecdf;border:2px solid #b8924a;border-radius:12px;box-shadow:0 8px 0 #6e5320,0 18px 34px rgba(73,47,12,.16)}
.login-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end}
.login-form .form-status{grid-column:1/-1}
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem;align-items:start;padding:2.2rem max(5vw,40px) 2rem}
.account-wide{grid-column:1/-1}
.account-panel fieldset{border:0;margin:0;padding:0;min-width:0}
.account-panel fieldset[disabled]{opacity:.62}
.account-panel .button{margin-top:1rem}
.account-subtitle{margin:1.2rem 0 .6rem;font:700 .8rem/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#4a3712}
.account-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.account-list li{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(239,201,107,.45);box-shadow:0 3px 0 rgba(0,0,0,.35)}
.account-list li>div{display:grid;gap:.15rem;min-width:0}
.account-list li b{font-weight:700}
.account-list li small{opacity:.9}
.account-list.light li{background:#fffaf2;border-color:#c9a45a;box-shadow:0 3px 0 #b39058;color:#2a2118}
.account-list.light li small{color:#54493d}
.account-list .button{margin:0;flex:none}
.account-empty{margin:.4rem 0;font:italic 400 .9rem/1.5 var(--sans);opacity:.9}
.account-credits{margin:0 0 1rem;padding:.7rem .9rem;border-radius:8px;background:rgba(239,201,107,.14);border:1px solid rgba(239,201,107,.5);color:#f4d98f;font-weight:700}
.account-cart-count{margin:0 0 .8rem}
.account-cart-count small{display:block;color:#c9bba8}
.account-danger{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.2rem 2.5rem;margin:0 max(5vw,40px) 4rem;padding:1.8rem;background:#f7e7e3;border:2px solid #8b2932;border-radius:12px;box-shadow:0 7px 0 #5b1920}
.account-danger h2{margin:.2rem 0 .5rem;font-size:clamp(1.8rem,3vw,2.4rem);color:#5b1920}
.account-danger p:not(.eyebrow){margin:0;max-width:70ch;color:#3b2a26}
.account-danger .eyebrow{color:#6b1d24}
.button.danger-button{background:linear-gradient(180deg,#b3343e,#7a1f27)!important;border-color:#e7bd5d!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 5px 0 #4a1318,0 10px 18px rgba(74,19,24,.3)!important}
.button.danger-button:active{box-shadow:inset 0 2px 5px rgba(0,0,0,.35),0 1px 0 #4a1318!important}
.button[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.close-dialog{max-width:560px;width:calc(100% - 32px);padding:0;border:2px solid #8b2932;border-radius:14px;background:#fffaf2;color:#2a2118;box-shadow:0 9px 0 #5b1920,0 30px 60px rgba(0,0,0,.4)}
.close-dialog::backdrop{background:rgba(18,12,8,.65)}
.close-dialog form{padding:1.8rem}
.close-dialog h2{margin:.2rem 0 .8rem;font-size:clamp(1.7rem,4vw,2.2rem);color:#5b1920}
.close-dialog .eyebrow{color:#6b1d24}
.close-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.8rem;margin-top:1.2rem}
@media (max-width:900px){.account-grid{grid-template-columns:1fr}}
@media (max-width:620px){.account-grid{padding:1.6rem 20px}.account-login,.account-notice{margin:1.2rem 20px 0}.account-danger{margin:0 20px 3rem;padding:1.3rem}.login-form{grid-template-columns:1fr}.account-list li{flex-wrap:wrap}.close-actions .button{width:100%}}
.account-page [hidden],#account-logout[hidden],.account-notice[hidden],.account-login[hidden]{display:none!important}

/* ===== Mise en page : blocs hors <main> alignés sur la barre latérale (17/09/2026) ===== */
body.has-sidebar > *:not(.lang-bar):not(.topbar):not(.option-tabs):not(.site-sidebar):not(.sidebar-overlay):not(.site-cart):not(.cart-overlay):not(.cart-notice):not(.mobile-app-nav):not(.skip-link):not(script):not(dialog){margin-left:var(--sidebar-width)}
@media (max-width:900px){body.has-sidebar > *{margin-left:0!important}}
/* Arrivée en haut de section : on réserve la hauteur des barres fixes */
html{scroll-padding-top:calc(82px + var(--options-height, 64px) + 14px)}
@media (max-width:900px){html{scroll-padding-top:calc(70px + var(--options-height, 64px) + 12px)}}

/* ===== Engagements (accueil) ===== */
.pledges{padding:5rem max(5vw,40px);background:#2a2118;color:#f5f1e6;border-top:1px solid rgba(184,146,74,.35)}
.pledges .section-intro{max-width:760px;margin-bottom:2.4rem}
.pledges .section-intro h2{color:#f5f1e6}
.pledges .section-intro p:not(.eyebrow){color:#c7b9a4;margin:0}
.pledges .eyebrow{color:#f0cf95}
.pledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.pledge-grid article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;padding:1.5rem;border:1px solid rgba(184,146,74,.45);border-radius:12px;background:linear-gradient(180deg,rgba(245,241,230,.07),rgba(245,241,230,.02));box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 4px 0 rgba(110,83,32,.65)}
.pledge-grid .pledge-emoji{font-size:2rem;line-height:1.1}
.pledge-grid h3{margin:0 0 .45rem;font:400 1.55rem/1.15 var(--serif);color:#f4d98f}
.pledge-grid p{margin:0;color:#d5c8b6;font-size:.95rem;line-height:1.6}
.pledge-note{margin:2rem 0 0;color:#a99a85;font-size:.86rem;max-width:70ch}
@media (max-width:900px){.pledge-grid{grid-template-columns:1fr}}
@media (max-width:620px){.pledges{padding:3.2rem 20px}.pledge-grid article{padding:1.2rem;gap:.8rem}}

/* ===== Livrable (ce que vous recevez aujourd'hui) ===== */
.deliverable{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.6rem 0 0;padding:1.4rem;border:1px solid rgba(184,146,74,.5);border-radius:12px;background:#2e251c;color:#f2e7d6;box-shadow:0 5px 0 #6e5320}
.deliverable>div{display:grid;gap:.3rem;align-content:start}
.deliverable b{font:700 .74rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#f0cf95}
.deliverable strong{font:400 1.3rem/1.2 var(--serif);color:#fff}
.deliverable small{color:#c9bba8;font-size:.86rem;line-height:1.5}
.deliverable .soon strong{color:#f4d98f}
.deliverable .soon-tag{display:inline-flex;align-items:center;gap:.4rem;width:fit-content;margin-top:.25rem;padding:.25rem .6rem;border-radius:999px;background:rgba(255,106,26,.18);border:1px solid rgba(255,138,74,.7);color:#ffb37a;font:700 .72rem/1.3 var(--sans)}
@media (max-width:760px){.deliverable{grid-template-columns:1fr}}

/* ===== Page Résultat (compteur après paiement) ===== */
.result-page{background:#c6b69f}
.result-hero{padding:4rem max(5vw,40px) 2rem;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center;background:linear-gradient(135deg,#a7967c,#d1c2aa)}
.result-hero h1{font-size:clamp(2.6rem,5vw,4.6rem);max-width:14ch}
.result-hero>div>p:not(.eyebrow){max-width:60ch;color:#3b3026;font-size:.98rem}
.result-layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:1.6rem;align-items:start;padding:2rem max(5vw,40px) 4rem}
.result-panel{padding:1.8rem;border-radius:12px;background:#2e251c;color:#f2e7d6;border:1px solid #c59a43;box-shadow:0 7px 0 #18110e}
.result-explain{padding:1.8rem;border-radius:12px;background:#f4ecdf;color:#2a2118;border:2px solid #b8924a;box-shadow:0 8px 0 #6e5320,0 18px 34px rgba(73,47,12,.16)}
.result-explain h2{margin:0 0 .6rem;font-size:clamp(1.8rem,3vw,2.4rem)}
.result-explain p{color:#3b3026}
.result-panel .gauge{margin:0 auto}
.result-status{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border-radius:999px;border:1px solid #c59a43;background:#2e251c;color:#f0cf95;font:700 .74rem/1.3 var(--sans);box-shadow:0 3px 0 #6e5320}
.result-address{display:grid;justify-items:start;gap:.5rem;padding:1.4rem;border-radius:12px;background:#2e251c;color:#f2e7d6;border:1px solid #c59a43;box-shadow:0 6px 0 #6e5320}
.result-address b{font:400 1.4rem/1.2 var(--serif);color:#fff}
.result-address small{color:#c9bba8}
.result-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.2rem}
.result-note{margin:1rem 0 0;color:#4a3f34;font-size:.86rem}
@media (max-width:1000px){.result-hero,.result-layout{grid-template-columns:1fr}}
@media (max-width:620px){.result-hero{padding:2.6rem 20px 1.4rem}.result-layout{padding:1.6rem 20px 3rem}.result-panel,.result-explain{padding:1.25rem}}
.pledges .pledges-second{margin-top:3rem}
/* Tableaux de prix Sentinelle : plus de débordement de l'en-tête sur les écrans intermédiaires */
@media (max-width:1320px){
  .price-table-head,.sentinel-price-table article{grid-template-columns:minmax(0,1.25fr) minmax(0,.55fr) minmax(0,1.3fr) minmax(0,.6fr)}
}

/* ============================================================
   Assistant vocal et hologramme (v38)
   Relief 3D comme tous les boutons et onglets du site.
   Aucun style en ligne : la politique de sécurité interdit l'attribut style.
   ============================================================ */
.voice-dock{position:fixed;right:max(18px,2vw);bottom:max(18px,2vw);z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:.7rem;--voice-user-level:0;--voice-bot-level:0}
.voice-halo{position:relative;display:inline-flex;align-items:center;gap:.5rem;min-height:46px;padding:.55rem .95rem .55rem .7rem;font-size:.85rem;border:1px solid #a88742;border-radius:40px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#21190f;font:600 .92rem/1 var(--sans);cursor:pointer;box-shadow:0 4px 0 #6e5320,0 12px 26px rgba(57,41,17,.28);transition:transform .15s,box-shadow .15s}
.voice-halo:hover{transform:translateY(-2px);box-shadow:0 6px 0 #6e5320,0 16px 30px rgba(57,41,17,.32)}
.voice-halo:active{transform:translateY(2px);box-shadow:0 2px 0 #6e5320,0 8px 18px rgba(57,41,17,.26)}
.voice-halo-ring{width:22px;height:22px;border-radius:50%;border:2px solid #3d2f1c;display:inline-block;position:relative;flex:none}
.voice-halo-core{position:absolute;left:.95rem;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:#3d2f1c;transform:scale(calc(1 + var(--voice-bot-level) * .7))}
.voice-dock[data-voice-state="listening"] .voice-halo-ring{border-color:#2f5d3a}
.voice-dock[data-voice-state="speaking"] .voice-halo-ring{border-color:#7a3c1c}
.voice-dock[data-voice-state="error"] .voice-halo-ring{border-color:#8c2f26}
.voice-invite{max-width:250px;padding:.75rem .85rem;border:1px solid #c59a43;background:#2e251c;color:#efe3cf;box-shadow:0 4px 0 #6e5320,0 14px 30px rgba(24,18,10,.35)}
.voice-invite b{display:block;font:400 1rem/1.2 var(--serif);color:#f0cf95;margin-bottom:.3rem}
.voice-invite p{margin:0 0 .65rem;font-size:.79rem;line-height:1.45;color:#dcd0bd}
.voice-invite-actions{display:flex;align-items:center;gap:.8rem}
.voice-invite-close{border:0;background:none;color:#cbbda6;font-size:.82rem;text-decoration:underline;cursor:pointer;padding:.4rem .2rem;min-height:36px}
.voice-dock [hidden]{display:none!important}
.voice-panel{width:min(320px,calc(100vw - 28px));max-height:min(56vh,430px);display:flex;flex-direction:column;border:1px solid #c59a43;background:#2e251c;color:#efe3cf;box-shadow:0 4px 0 #6e5320,0 18px 40px rgba(24,18,10,.4)}
.voice-panel-head{display:flex;align-items:center;gap:.55rem;padding:.7rem .9rem;border-bottom:1px solid rgba(224,196,125,.25);flex-wrap:wrap}
.voice-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:24px;border:1px solid #c59a43;border-radius:14px;font:600 .68rem/1 var(--sans);letter-spacing:.08em;color:#f0cf95}
.voice-title{font:600 .95rem/1 var(--sans);color:#f4ead9}
.voice-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.voice-state{order:5;flex-basis:100%;margin:.2rem 0 0;text-align:right;font:italic .78rem/1.2 var(--sans);color:#cbbda6}
.voice-mute,.voice-close{border:1px solid #6e5320;background:#3a2f22;color:#e8dcc8;font-size:.76rem;padding:.4rem .6rem;min-height:34px;cursor:pointer;box-shadow:0 2px 0 #6e5320}
.voice-stage{min-height:0;display:flex;align-items:center;justify-content:center;padding:.6rem 0}
.voice-stage:empty{display:none}
.voice-log{flex:1;overflow-y:auto;margin:0;padding:.5rem .8rem;list-style:none;display:flex;flex-direction:column;gap:.55rem}
.voice-line{display:flex;flex-direction:column;gap:.12rem;font-size:.82rem;line-height:1.42}
.voice-line b{font:600 .68rem/1 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:#bfae92}
.voice-line.bot span{color:#f4ead9}
.voice-line.user span{color:#d8cbb6}
.voice-form{display:flex;gap:.5rem;padding:.6rem .9rem;border-top:1px solid rgba(224,196,125,.25)}
.voice-input{flex:1;min-height:42px;padding:.5rem .7rem;border:1px solid #6e5320;background:#241d15;color:#f4ead9}
.voice-notice{margin:0;padding:.45rem .8rem .65rem;font-size:.68rem;line-height:1.4;color:#c3b59d}
.voice-notice a{color:#f0cf95}
.voice-confirm{margin:.6rem .9rem;padding:.8rem;border:1px solid #c59a43;background:#3a2f22}
.voice-confirm b{display:block;font:600 .85rem/1.3 var(--sans);color:#f0cf95;margin-bottom:.3rem}
.voice-confirm p{margin:0 0 .7rem;font-size:.82rem;color:#e2d6c2}
.voice-confirm-actions{display:flex;align-items:center;gap:.8rem}
.voice-highlight{outline:3px solid #c7a45a;outline-offset:3px}
.avatar-halo{position:relative;width:96px;height:96px;display:grid;place-items:center}
.avatar-halo-ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(224,196,125,.55);transform:scale(calc(.85 + var(--voice-bot-level) * .3))}
.avatar-halo-core{width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f0cf95,#b8924a 70%,#6e5320)}
.avatar-video,.avatar-3d{width:100%;max-height:220px;border:1px solid #6e5320;background:#241d15}
@media (max-width:900px){
  .voice-dock{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px) + 62px)}
  .voice-panel{max-height:62vh}
  .voice-title{flex:1 1 100%;white-space:normal;overflow:visible;text-overflow:clip;font-size:.88rem}
  .voice-mute,.voice-close{font-size:.72rem;padding:.35rem .5rem}
}
@media (prefers-reduced-motion:reduce){
  .voice-halo,.voice-halo:hover,.voice-halo:active{transition:none;transform:none}
  .voice-halo-core,.avatar-halo-ring{transform:none}
}
@media print{.voice-dock{display:none}}

/* Résultat payé : fourchette MarketScore et domaines à regarder (v39) */
.result-range{margin:0 0 1rem;padding:.9rem 1rem;border:1px solid #6e5320;background:#241d15}
.range-kicker{margin:0 0 .6rem;font:600 .7rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#e0c47d}
.range-bar{position:relative;height:12px;border-radius:8px;background:#3a2f22;overflow:visible}
.range-fill{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#8c6a2a,#e0c47d,#8c6a2a)}
.range-mark{position:absolute;top:-6px;width:4px;height:24px;background:#f4ead9;transform:translateX(-2px)}
.range-values{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;margin-top:.6rem}
.range-values span{font-size:.84rem;color:#d8cbb6}
.range-values strong{font:400 1.45rem/1 var(--serif);color:#f4ead9}
.result-range small{display:block;margin-top:.5rem;font-size:.74rem;line-height:1.45;color:#c3b59d}
.factors-note{margin:.6rem 0 0;font-size:.76rem;color:#c3b59d}
.result-domains{margin:0 0 1.4rem}
.result-domains ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.result-domains li{padding:.75rem .9rem;border:1px solid rgba(52,40,26,.25);background:#f4ead9}
.result-domains li>div{display:flex;align-items:center;justify-content:space-between;gap:.8rem}
.result-domains b{font:600 .92rem/1.3 var(--sans);color:#2a1d08}
.result-domains i{font:600 .7rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:.3rem .55rem;border:1px solid #6e5320;color:#4a3a1c;background:#e6d9c1;font-style:normal}
.result-domains i[data-level="eleve"],.result-domains i[data-level="high"]{border-color:#8c2f26;color:#7a241c;background:#f3ddd8}
.result-domains i[data-level="moyen"],.result-domains i[data-level="medium"]{border-color:#8a6a1f;color:#6b5217;background:#f1e4c8}
.result-domains p{margin:.4rem 0 0;font-size:.86rem;line-height:1.5;color:#4a3f34}
.result-domains small{display:block;margin-top:.35rem;font-size:.74rem;color:#5a4d3f}

/* Tableaux de tarifs : compression progressive pour éviter la coupure des boutons
   dans les fenêtres étroites (aperçu intégré, écrans 13 pouces). Aucune donnée masquée. */
@media (max-width:1400px){
  .recharge td,.recharge th{min-width:126px}
  .tariff-section .table-wrap table{width:100%;table-layout:auto;min-width:0}
  .tariff-section .table-wrap th,.tariff-section .table-wrap td{padding:.55rem .45rem;font-size:.82rem}
  .tariff-section .tariff-pay,.tariff-section .cart-add-3d{padding:.45rem .55rem;font-size:.74rem;gap:.35rem;min-height:38px;white-space:normal;text-align:left;line-height:1.2}
  .tariff-section .tariff-pay svg,.tariff-section .cart-add-3d svg{width:15px;height:15px;flex:none}
  .recharge-price{display:block;margin-bottom:.25rem;font-size:.9rem}
}
@media (max-width:1260px){
  .recharge td,.recharge th{min-width:112px}
}
@media (max-width:1060px){
  .recharge td,.recharge th{min-width:96px}
  .tariff-section .tariff-pay,.tariff-section .cart-add-3d{padding:.32rem .35rem;font-size:.66rem}
  .tariff-section .table-wrap th,.tariff-section .table-wrap td{padding:.45rem .3rem;font-size:.76rem}
  .tariff-section .tariff-pay,.tariff-section .cart-add-3d{padding:.35rem .4rem;font-size:.68rem;gap:.25rem}
  .tariff-section .tariff-pay svg,.tariff-section .cart-add-3d svg{display:none}
  .recharge-price{font-size:.82rem}
}
