/*
Theme Name: AKI Signature
Theme URI: https://aki-signature.com
Author: AKI · Signature Hair & Beauty
Description: Thème sur mesure — L'excellence française au cœur de l'Océan Indien. Salon signature, académie internationale, réseau premium.
Version: 3.0.2
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: aki-signature
*/

:root{
  --noir:#000000;
  --brun:#211B17;
  --dore:#C6AE76;
  --creme:#E8DECF;
  --blanc:#FFFFFF;
  --texte:#5F5346;
  --taupe:#8A7B65;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Jost',sans-serif;background:var(--blanc);color:var(--brun);font-weight:400;-webkit-font-smoothing:antialiased}
.serif{font-family:'Cormorant Garamond',serif;font-style:italic}

/* ===== HEADER ===== */
header{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--blanc);border-bottom:1px solid var(--creme);display:flex;align-items:center;justify-content:space-between;padding:18px 48px;transition:box-shadow .3s}
header.scrolled{box-shadow:0 2px 24px rgba(33,27,23,.08)}
.logo{text-align:left;line-height:1;cursor:pointer}
.logo-aki{font-size:30px;letter-spacing:10px;font-weight:500;color:var(--noir)}
.logo-sub{font-size:9px;letter-spacing:3.2px;color:var(--texte);margin-top:5px;font-weight:400}
nav{display:flex;gap:34px}
nav a{font-size:12px;letter-spacing:2.5px;color:var(--brun);text-decoration:none;font-weight:500;transition:color .25s;padding:4px 0}
nav a:hover,nav a:focus-visible{color:var(--dore)}
.btn{display:inline-block;background:var(--noir);color:var(--blanc);border:1px solid var(--noir);font-family:'Jost',sans-serif;font-size:12.5px;letter-spacing:2.5px;font-weight:500;padding:15px 32px;text-decoration:none;cursor:pointer;transition:all .3s ease;text-align:center}
.btn:hover,.btn:focus-visible{background:var(--dore);border-color:var(--dore);color:var(--noir)}
.btn-header{padding:12px 24px;font-size:11px}
.burger{display:none;background:none;border:none;cursor:pointer;font-size:24px;color:var(--noir)}

/* ===== HERO ===== */
.hero{position:relative;height:100vh;min-height:620px;display:flex;align-items:center;overflow:hidden;background-size:cover;background-position:center 30%}
.hero-photo-note{position:absolute;top:96px;right:28px;font-size:10px;letter-spacing:2px;color:var(--taupe);border:1px dashed var(--dore);background:rgba(255,255,255,.55);padding:8px 14px;z-index:2}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(33,27,23,.62) 0%,rgba(33,27,23,.3) 45%,rgba(33,27,23,.08) 75%)}
.hero-inner{position:relative;z-index:3;max-width:640px;padding:0 48px;animation:fadeUp 1.1s ease both .2s}
.hero-eyebrow{font-size:12px;letter-spacing:5px;color:var(--blanc);font-weight:500;margin-bottom:22px;text-shadow:0 1px 8px rgba(33,27,23,.4)}
.hero h1{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:clamp(38px,5.5vw,64px);line-height:1.15;color:var(--blanc);text-shadow:0 2px 16px rgba(33,27,23,.45)}
.hero-sub{font-size:15px;letter-spacing:1px;color:rgba(255,255,255,.92);margin-top:20px;max-width:440px;line-height:1.8;text-shadow:0 1px 8px rgba(33,27,23,.4)}
.hero-cta{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap}
.hero-dots{position:absolute;bottom:34px;left:48px;display:flex;gap:10px;z-index:3}
.hero-dots span{width:40px;height:2px;background:rgba(255,255,255,.45);cursor:pointer;transition:background .3s}
.hero-dots span.on{background:var(--blanc)}
.scroll-hint{position:absolute;bottom:28px;right:48px;z-index:3;color:var(--blanc);font-size:11px;letter-spacing:3px;display:flex;align-items:center;gap:10px}
.scroll-hint::after{content:"";display:block;width:1px;height:38px;background:linear-gradient(to bottom,var(--blanc),transparent);animation:drop 1.8s ease infinite}
@keyframes drop{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@keyframes fadeUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}

/* ===== SECTIONS COMMUNES ===== */
section{padding:96px 48px}
.section-head{text-align:center;max-width:720px;margin:0 auto 56px}
.eyebrow{font-size:11.5px;letter-spacing:5px;color:var(--dore);font-weight:500}
.section-title{font-size:clamp(22px,2.6vw,30px);letter-spacing:4px;color:var(--brun);font-weight:500;margin-top:14px;text-transform:uppercase}
.section-title .serif{text-transform:none;letter-spacing:0;color:var(--taupe);font-weight:400;font-size:1.12em}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
.reveal.vu{opacity:1;transform:none}

/* ===== PILIERS ===== */
.piliers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;max-width:1100px;margin:0 auto}
.pilier{background:var(--brun);border:1px solid var(--brun);padding:52px 36px;text-align:center;cursor:pointer;transition:all .35s ease}
.pilier:hover{border-color:var(--dore);box-shadow:0 10px 40px rgba(198,174,118,.3);transform:translateY(-6px)}
.pilier .num{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:38px;color:var(--dore)}
.pilier h3{font-size:14px;letter-spacing:3px;color:var(--blanc);font-weight:500;margin:18px 0 14px}
.pilier p{font-size:14px;color:#C9BBA6;line-height:1.8}

/* ===== FONDATEUR ===== */
.fondateur{background:var(--blanc);border-top:1px solid var(--creme)}
.fondateur-grid{display:grid;grid-template-columns:340px 1fr;gap:64px;align-items:center;max-width:1100px;margin:0 auto}
.placeholder{background:#F4EFE6;border:1px dashed var(--dore);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--taupe);font-size:11px;letter-spacing:2.5px;text-align:center;line-height:1.8}
.placeholder svg{width:34px;height:34px;stroke:var(--taupe)}
.fondateur-photo{height:420px}
.fondateur-img{width:100%;height:auto!important;display:block;border:1px solid var(--creme)}
.fondateur h2{font-size:24px;letter-spacing:4px;color:var(--noir);font-weight:500;margin-top:14px}
.fondateur .role{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;color:var(--taupe);margin:10px 0 22px}
.fondateur p.bio{font-size:15px;color:var(--texte);line-height:1.9}
.fondateur-badges{display:flex;gap:28px;margin-top:30px;flex-wrap:wrap}
.badge{border-left:2px solid var(--dore);padding-left:16px}
.badge b{display:block;font-size:12px;letter-spacing:2.5px;color:var(--brun);font-weight:500}
.badge span{font-size:12.5px;color:var(--taupe)}

/* ===== TEMOIGNAGES ===== */
.temoignages{background:var(--brun)}
.temoignages .section-title{color:var(--blanc)}
.temoignages .section-title .serif{color:var(--dore)}
.temoin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;max-width:1100px;margin:0 auto}
.temoin{background:var(--blanc);border:1px solid var(--creme);padding:40px 34px;transition:all .35s ease}
.temoin:hover{border-color:var(--dore);box-shadow:0 10px 40px rgba(0,0,0,.28);transform:translateY(-6px)}
.stars{color:var(--dore);letter-spacing:3px;font-size:14px}
.temoin blockquote{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;color:var(--brun);line-height:1.65;margin:18px 0 24px}
.temoin-auteur{display:flex;align-items:center;gap:14px}
.avatar{width:44px;height:44px;border-radius:50%;background:var(--creme);display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:1px;color:var(--taupe);font-weight:500;flex-shrink:0}
.temoin-auteur b{display:block;font-size:13.5px;font-weight:500;color:var(--brun)}
.temoin-auteur span{font-size:12.5px;color:var(--taupe)}

/* ===== BANDEAU CTA ===== */
.cta-bande{background:var(--blanc);text-align:center;border-top:1px solid var(--creme)}
.cta-bande h2{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:clamp(26px,3.4vw,40px);color:var(--brun);max-width:640px;margin:0 auto 34px;line-height:1.3}

/* ===== FOOTER ===== */
footer{background:var(--noir);color:#C9BBA6;padding:72px 48px 0}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:56px;max-width:1100px;margin:0 auto;padding-bottom:56px}
.footer-logo{font-size:26px;letter-spacing:9px;color:var(--blanc);font-weight:500}
.footer-logo small{display:block;font-size:9px;letter-spacing:3px;color:var(--dore);margin-top:6px;font-weight:400}
footer p{font-size:13.5px;line-height:1.9;margin-top:18px;max-width:320px}
.footer-titre{font-size:11.5px;letter-spacing:4px;color:var(--dore);font-weight:500;margin-bottom:20px}
.footer-liste{list-style:none}
.footer-liste li{padding:6px 0;font-size:13.5px}
.footer-liste a{color:#C9BBA6;text-decoration:none;transition:color .25s}
.footer-liste a:hover{color:var(--dore)}
.footer-liste .prix{float:right;color:var(--blanc)}
.footer-bas{border-top:1px solid #2E2620;text-align:center;padding:22px;font-size:11px;letter-spacing:3px;color:var(--taupe)}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
  header{padding:14px 20px}
  nav{display:none}
  .burger{display:block}
  section{padding:64px 20px}
  .hero-inner{padding:0 20px}
  .hero-dots{left:20px}
  .scroll-hint{display:none}
  .fondateur-grid{grid-template-columns:1fr;gap:36px}
  .fondateur-photo{height:320px;max-width:340px;margin:0 auto}
  .footer-grid{grid-template-columns:1fr;gap:36px}
  footer{padding:56px 20px 0}
}
@media(prefers-reduced-motion:reduce){
  *,.reveal{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
}

/* --- Galerie (v2) --- */
.galerie-section{padding:90px 6vw;background:var(--blanc,#fff)}
.galerie{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;max-width:1100px;margin:0 auto}
.galerie img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--creme)}
@media (max-width:700px){.galerie{grid-template-columns:repeat(2,1fr)}}

/* --- Sections libres (v2.2) --- */
.libre{padding:90px 6vw}
.libre-fond-blanc{background:#fff}
.libre-fond-creme{background:var(--creme)}
.libre-fond-brun{background:var(--brun);color:var(--creme)}
.libre-fond-brun .libre-titre{color:var(--creme)}
.libre-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;max-width:1100px;margin:0 auto}
.libre-texte_seul .libre-grid,.libre-image_bandeau .libre-grid{grid-template-columns:1fr;max-width:820px}
.libre-photo{width:100%;height:auto;display:block;border:1px solid var(--creme)}
.libre-fond-creme .libre-photo{border-color:var(--brun)}
.libre-bandeau{width:100%;max-width:1100px;margin:0 auto 48px;display:block;aspect-ratio:21/9;object-fit:cover;border:1px solid var(--creme)}
.libre-titre{font-size:30px;letter-spacing:3px;margin:14px 0 18px;font-weight:500}
.libre-titre .serif{font-family:"Cormorant Garamond",serif;font-style:italic;text-transform:none;letter-spacing:0;color:var(--dore)}
.libre-texte{line-height:1.85;font-weight:300}
.libre-texte p{margin:0 0 14px}
@media (max-width:900px){.libre-grid{grid-template-columns:1fr;gap:36px}}

/* --- Compatibilité Elementor (v2.3) --- */
.contenu-libre{padding-top:80px} /* espace sous l'en-tête fixe */
.contenu-libre .elementor-section,.contenu-libre .e-con{max-width:none}
/* Classes utilitaires à appliquer dans Elementor (champ « Classes CSS ») */
.btn-aki{display:inline-block;background:var(--noir);color:var(--blanc)!important;padding:16px 34px;letter-spacing:3px;font-size:12px;font-weight:500;text-transform:uppercase;text-decoration:none;border:1px solid var(--noir);transition:all .3s}
.btn-aki:hover{background:transparent;color:var(--noir)!important}
.btn-aki-clair{display:inline-block;background:transparent;color:var(--blanc)!important;padding:16px 34px;letter-spacing:3px;font-size:12px;font-weight:500;text-transform:uppercase;text-decoration:none;border:1px solid var(--blanc);transition:all .3s}
.btn-aki-clair:hover{background:var(--blanc);color:var(--noir)!important}
.titre-aki{letter-spacing:3px;text-transform:uppercase;font-weight:500}
.accent-aki{font-family:"Cormorant Garamond",serif;font-style:italic;text-transform:none;letter-spacing:0;color:var(--dore)}
.logo img{max-height:48px;width:auto;display:block}

/* --- Menu burger AKI (v2.5) --- */
.menu-panneau{position:fixed;inset:0;background:var(--brun);z-index:200;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s}
.menu-panneau.ouvert{opacity:1;visibility:visible}
.menu-fermer{position:absolute;top:26px;right:34px;background:none;border:none;color:var(--creme);font-size:26px;cursor:pointer;letter-spacing:0}
.menu-liens{display:flex;flex-direction:column;align-items:center;gap:26px}
.menu-liens a{color:var(--creme);text-decoration:none;letter-spacing:5px;font-size:15px;font-weight:400;transition:color .3s;opacity:0;transform:translateY(12px)}
.menu-panneau.ouvert .menu-liens a{opacity:1;transform:none;transition:color .3s,opacity .5s ease,transform .5s ease}
.menu-liens a:hover{color:var(--dore)}
.menu-liens a:nth-child(1){transition-delay:.05s}
.menu-liens a:nth-child(2){transition-delay:.1s}
.menu-liens a:nth-child(3){transition-delay:.15s}
.menu-liens a:nth-child(4){transition-delay:.2s}
.menu-liens a:nth-child(5){transition-delay:.25s}
.menu-liens a:nth-child(6){transition-delay:.3s}
.menu-rdv{border:1px solid var(--dore);padding:14px 30px;color:var(--dore)!important;margin-top:14px}
.menu-rdv:hover{background:var(--dore);color:var(--brun)!important}
.menu-pied{position:absolute;bottom:30px;left:0;right:0;text-align:center;color:rgba(232,222,207,.4);font-size:10px;letter-spacing:3px}
body.menu-ouvert{overflow:hidden}
/* Mode burger permanent (interrupteur dans Personnaliser) */
body.aki-burger-partout header nav{display:none}
body.aki-burger-partout .btn-header{display:none}
body.aki-burger-partout .burger{display:block}

/* --- En-tête riche à deux niveaux (v2.6) --- */
header{flex-direction:column;align-items:stretch;gap:0;padding:14px 48px 0}
.entete-haut{display:flex;align-items:center;gap:28px;min-height:56px;position:relative}
.e-logo{flex:0 0 auto}
.e-recherche{flex:1 1 auto;max-width:560px;display:flex;align-items:center;border:1px solid var(--creme);background:var(--blanc);padding:0 4px 0 18px;height:44px;transition:border-color .3s}
.e-recherche:focus-within{border-color:var(--dore)}
.e-recherche input{flex:1;border:none;outline:none;font-family:inherit;font-size:13px;letter-spacing:1px;color:var(--noir);background:transparent}
.e-recherche input::placeholder{color:#9a8f80;letter-spacing:2px}
.e-recherche button{background:none;border:none;cursor:pointer;color:var(--noir);padding:10px 14px;display:flex;align-items:center;transition:color .3s}
.e-recherche button:hover{color:var(--dore)}
.e-actions{flex:0 0 auto;display:flex;align-items:center;gap:18px;margin-left:auto}
.e-icone{color:var(--noir);display:flex;align-items:center;position:relative;transition:color .3s}
.e-icone:hover{color:var(--dore)}
.e-panier-nb{position:absolute;top:-7px;right:-9px;background:var(--dore);color:var(--brun);font-size:10px;font-weight:600;min-width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 3px}
.entete-nav{display:flex;justify-content:center;gap:44px;padding:12px 0 14px;border-top:1px solid var(--creme);margin-top:12px}
.entete-nav a{color:var(--noir);text-decoration:none;font-size:12px;letter-spacing:3px;font-weight:500;transition:color .3s}
.entete-nav a:hover{color:var(--dore)}
/* Position du logo */
.logo-pos-gauche .e-logo{order:1}.logo-pos-gauche .e-recherche{order:2;margin:0 auto}.logo-pos-gauche .e-actions{order:3}
.logo-pos-centre .e-recherche{order:1;margin:0;max-width:380px}.logo-pos-centre .e-logo{order:2;position:absolute;left:50%;transform:translateX(-50%)}.logo-pos-centre .e-actions{order:3}
.logo-pos-droite .e-recherche{order:1;margin:0}.logo-pos-droite .e-actions{order:2;margin-left:auto;margin-right:28px}.logo-pos-droite .e-logo{order:3}
/* Burger permanent : on masque la rangée de navigation, pas la recherche */
body.aki-burger-partout .entete-nav{display:none}
body.aki-burger-partout header{padding-bottom:14px}
/* Mobile */
@media (max-width:900px){
  header{padding:12px 20px 0}
  .entete-haut{flex-wrap:wrap;gap:14px}
  .e-recherche{order:9!important;flex-basis:100%;max-width:none;margin:0!important;height:40px}
  .logo-pos-centre .e-logo{position:static;transform:none}
  .entete-nav{display:none}
  header{padding-bottom:12px}
  .btn-header{display:none}
}

/* --- Section Prestations (v2.9) --- */
.tarifs-section{padding:90px 6vw;background:var(--creme)}
.tarifs-liste{max-width:680px;margin:0 auto}
.tarif-ligne{display:flex;align-items:baseline;gap:14px;padding:15px 0;border-bottom:1px solid rgba(33,27,23,.08)}
.tarif-ligne:last-child{border-bottom:none}
.tarif-nom{letter-spacing:2px;font-size:14px;font-weight:400;color:var(--brun)}
.tarif-points{flex:1;border-bottom:1px dotted rgba(33,27,23,.3);transform:translateY(-4px)}
.tarif-prix{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:19px;color:var(--dore);white-space:nowrap}
/* pied de page allégé : deux colonnes */
.footer-grid{grid-template-columns:2fr 1fr!important}
@media (max-width:800px){.footer-grid{grid-template-columns:1fr!important}}

/* --- Menus WordPress & liens légaux (v3.0) --- */
.entete-nav ul,.entete-nav li,.menu-liens ul,.menu-liens li{display:contents;list-style:none;margin:0;padding:0}
.footer-legal a{color:inherit;text-decoration:none;border-bottom:1px dotted rgba(232,222,207,.4);transition:color .3s}
.footer-legal a:hover{color:var(--dore)}

/* Ancres : la section s'arrête sous l'en-tête fixe au lieu d'être cachée derrière (v3.0.2) */
[id]{scroll-margin-top:150px}
@media (max-width:900px){[id]{scroll-margin-top:110px}}
