/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/
/* ===== Polices auto-hébergées (RGPD, Google Fonts désactivées) ===== */
@font-face {
  font-family: "Manrope";
  src: url("fonts/Manrope-VF.woff2") format("woff2-variations");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("fonts/Inter-VF.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("fonts/Inter-Italic-VF.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

/* Défauts typographiques charte : Inter corps, Manrope titres */
body { font-family: "Inter", system-ui, sans-serif; }
h1, h2, h3, h4, h5, h6 { font-family: "Manrope", system-ui, sans-serif; }

/* ============================================================
   Header vivant — masquage directionnel au scroll + réveil du bloc
   Piloté par header.js (classes sd-hidden / sd-awake / sd-scrolled / sd-halo).
   Cible les classes globales stables du header. Ajouté 2026-07-02.
   ============================================================ */
.c-header{position:sticky;top:0;z-index:100;
  transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .3s ease;will-change:transform}
.c-header.sd-hidden{transform:translateY(-105%)}
.c-header.sd-scrolled{box-shadow:0 8px 24px -16px rgba(31,41,55,.4)}

/* Réveil du bloc : logo -> liens (cascade) -> bouton */
@keyframes sd-wake{from{opacity:0;transform:translateY(-11px)}to{opacity:1;transform:none}}
.c-header.sd-awake .c-logo__img{animation:sd-wake .5s .02s both cubic-bezier(.22,1,.36,1)}
.c-header.sd-awake .bricks-nav-menu>li{animation:sd-wake .5s both cubic-bezier(.22,1,.36,1)}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(1){animation-delay:.08s}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(2){animation-delay:.13s}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(3){animation-delay:.18s}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(4){animation-delay:.23s}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(5){animation-delay:.28s}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(6){animation-delay:.33s}
.c-header.sd-awake .bricks-nav-menu>li:nth-child(7){animation-delay:.38s}
.c-header.sd-awake .c-btn-hd{animation:sd-wake .55s .34s both cubic-bezier(.34,1.56,.64,1)}

/* Bouton « Prendre RDV » — V2 : icône agenda + reflet au survol + lift.
   Préfixe .c-header pour battre le CSS inline Bricks (spécificité 2 classes). */
.c-header .c-btn-hd{position:relative;overflow:hidden;gap:.5rem;align-items:center;
  transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .22s ease,filter .2s ease}
.c-header .c-btn-hd::before{content:"";width:16px;height:16px;flex:0 0 auto;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='2.5'/%3E%3Cpath d='M3 9h18M8 2.5v4M16 2.5v4'/%3E%3C/svg%3E") center/contain no-repeat}
.c-header .c-btn-hd::after{content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-18deg);pointer-events:none}
.c-header .c-btn-hd:hover{transform:translateY(-2px);box-shadow:0 10px 24px -6px rgba(194,65,12,.6)}
.c-header .c-btn-hd:hover::after{animation:sd-shine .7s ease}
@keyframes sd-shine{from{left:-60%}to{left:130%}}

/* Halo cuivre — premier chargement uniquement (classe sd-halo posée une seule fois par le JS) */
@keyframes sd-halo{0%{box-shadow:0 0 0 0 rgba(220,101,38,.55)}100%{box-shadow:0 0 0 15px rgba(220,101,38,0)}}
.c-header.sd-halo .c-btn-hd{animation:sd-wake .55s .34s both cubic-bezier(.34,1.56,.64,1),
  sd-halo 1.1s .95s ease-out 1}

/* Accessibilité : aucune animation ni masquage si l'OS demande reduced-motion */
@media (prefers-reduced-motion:reduce){
  .c-header,.c-header *{animation:none!important;transition:none!important}
  .c-header.sd-hidden{transform:none}
}
