/* ==========================================================================
   ALT'IN — couche « studio » des pages intérieures (octobre 2026)
   Chargée APRÈS style.css : elle ne réécrit pas les pages, elle restyle leurs
   composants (en-tête, hero, sections, cartes, étapes, FAQ, appel final…)
   dans l'esprit de la nouvelle page d'accueil : grosse typo serif, en-tête
   transparent, menu plein écran, boutons arrondis, écusson flottant.
   Aucune italique. Le quadrillage du hero est retiré.
   ========================================================================== */
:root{
  --s-nuit:#0F1B33;
  --s-ardoise:#16202A;
  --s-ivoire:#F4F1EA;
  --s-blanc:#F7F7F4;
  --s-or-clair:#D9BD82;
  --s-marge:clamp(20px,5vw,80px);
  --s-ease:cubic-bezier(.2,.7,.1,1);
}
body{background:var(--s-blanc);}

/* --------------------------------------------------------- Titres plus affirmés */
h1{font-size:clamp(2.9rem,7vw,7rem);line-height:.95;letter-spacing:-.03em;font-weight:600;}
h2{font-size:clamp(2.2rem,4.4vw,4.4rem);line-height:1;letter-spacing:-.025em;font-weight:600;}
h3{letter-spacing:-.01em;}
h1,h2,h3,.hero h1{-webkit-hyphens:manual;hyphens:manual;overflow-wrap:normal;}
.surtitre{font-size:.75rem;letter-spacing:.28em;font-weight:600;}
.surtitre::before{width:28px;}
.entete{max-width:860px;margin-bottom:72px;}
.entete p{font-size:1.12rem;}
.section{padding:140px 0;}
.section--compact{padding:90px 0;}
.section--ivoire{background:var(--s-ivoire);}
.section--sombre{background:var(--s-ardoise);}

/* --------------------------------------------------------- En-tête transparent */
.alerte{display:none;}
.header{
  position:fixed;left:0;right:0;top:0;padding:22px 0;
  background:transparent;border-bottom:0;box-shadow:none;
  -webkit-backdrop-filter:none;backdrop-filter:none;
  transition:transform .5s var(--s-ease),background-color .4s,padding .4s var(--s-ease);
}
.header.is-scrolled{padding:12px 0;box-shadow:none;}
.header.cache{transform:translateY(-100%);}
.header.sur-clair.is-scrolled{background:rgba(247,247,244,.9);}
.header.sur-sombre.is-scrolled{background:rgba(15,27,51,.72);}
.header .logo__nom,.header .header__tel{color:#fff;transition:color .4s;}
.header .logo__sub{color:rgba(244,241,234,.7);}
.header .header__tel svg{stroke:var(--s-or-clair);}
.header.sur-clair .logo__nom,.header.sur-clair .header__tel{color:var(--s-ardoise);}
.header.sur-clair .logo__sub{color:var(--muted);}
.header.sur-clair .header__tel svg{stroke:var(--or-fonce);}
.header.menu-ouvert .logo__nom,.header.menu-ouvert .header__tel{color:#fff;}
.header__cta{border-radius:999px;padding:12px 24px;}

@media (min-width:1241px) and (max-width:1500px){ .header .header__tel{display:none;} }
/* Barre de navigation visible sur grand écran, menu plein écran derrière le burger ailleurs */
@media (min-width:1241px){
  .header .nav{display:flex;gap:6px;}
  .header .burger{display:none;}
  .header__inner{gap:16px;}
  .header .nav a{color:rgba(255,255,255,.88);font-size:.76rem;letter-spacing:.08em;white-space:nowrap;padding:10px 9px;}
  .header .nav a:hover,.header .nav a.is-active{color:#fff;}
  .header.sur-clair .nav a{color:var(--s-ardoise);}
  .header.sur-clair .nav a:hover,.header.sur-clair .nav a.is-active{color:var(--or-fonce);}
}
/* Le menu est toujours derrière le burger, en plein écran */
@media (max-width:1240px){ .nav{display:none;} .burger{display:block;z-index:1300;} }
.burger{z-index:1300;}
.header .logo{position:relative;z-index:1300;}
.burger span{background:#fff;transition:transform .4s var(--s-ease),opacity .3s,background .4s;}
.header.sur-clair .burger span{background:var(--s-ardoise);}
.header.menu-ouvert .burger span{background:#fff;}
.nav.is-open{
  display:flex;position:fixed;inset:0;z-index:1200;flex-direction:column;justify-content:center;align-items:flex-start;
  gap:0;padding:120px var(--s-marge) 60px;background:var(--s-ardoise);
  animation:menuOuvre .7s var(--s-ease) both;
}
.nav.is-open a{
  font-family:var(--titre);font-weight:600;font-size:clamp(2.2rem,6vw,5.4rem);line-height:1.12;letter-spacing:-.02em;
  text-transform:none;color:var(--s-ivoire);padding:0;
  animation:lienMonte .8s var(--s-ease) both;
}
.nav.is-open a:nth-child(2){animation-delay:.06s}.nav.is-open a:nth-child(3){animation-delay:.12s}
.nav.is-open a:nth-child(4){animation-delay:.18s}.nav.is-open a:nth-child(5){animation-delay:.24s}
.nav.is-open a:hover,.nav.is-open a.is-active{color:var(--s-or-clair);}
.nav.is-open a::after{display:none;}
@keyframes menuOuvre{from{clip-path:circle(0 at calc(100% - 60px) 50px);}to{clip-path:circle(150% at calc(100% - 60px) 50px);}}
@keyframes lienMonte{from{opacity:0;transform:translateY(40px);}to{opacity:1;transform:none;}}

/* --------------------------------------------------------- Hero des pages intérieures */
.hero__grille{display:none;}
.hero--interne{min-height:86vh;min-height:86svh;align-items:flex-end;}
.hero--interne .hero__contenu{max-width:1100px;padding:170px 24px 90px;}
.hero--interne h1{font-size:clamp(2.9rem,7.2vw,7.4rem);}
.hero__voile{
  background:
    linear-gradient(95deg,rgba(11,20,34,.9) 0%,rgba(11,20,34,.62) 48%,rgba(11,20,34,.18) 100%),
    linear-gradient(to top,rgba(11,20,34,.86) 0%,transparent 50%);
}
.hero__chapo{font-weight:300;font-size:1.2rem;text-align:left;-webkit-hyphens:manual;hyphens:manual;}
.ariane{font-size:.8rem;letter-spacing:.06em;}

/* --------------------------------------------------------- Boutons arrondis */
.btn{border-radius:999px;padding:19px 32px;letter-spacing:.02em;}
.btn::before{border-radius:inherit;transform:translateY(101%);}
.btn:hover::before{transform:none;}

/* --------------------------------------------------------- Cartes plus éditoriales */
.carte{border-radius:4px;transition:transform .6s var(--s-ease),box-shadow .6s var(--s-ease),border-color .4s;}
.carte h3{font-size:clamp(1.5rem,2.1vw,2rem);transition:color .4s;}
.carte:hover h3{color:var(--or-fonce);}
.section--sombre .carte:hover h3{color:var(--s-or-clair);}
.carte-img{border-radius:4px;}
.split__media img{border-radius:4px;}
.parcours__bloc{border-radius:4px;}

/* --------------------------------------------------------- Étapes : numéros en grand */
.etape__pastille{font-family:var(--titre);}
.etape h3{font-size:clamp(1.5rem,2.2vw,2.1rem);}

/* --------------------------------------------------------- FAQ comme sur l'accueil */
.faq summary{font-family:var(--titre);font-weight:600;font-size:clamp(1.2rem,1.7vw,1.6rem);padding-top:28px;padding-bottom:28px;}

/* --------------------------------------------------------- Appel final : très grand titre */
.cta{background:var(--s-nuit);padding:150px 0;}
.cta h2{font-size:clamp(2.6rem,6.4vw,6.4rem);line-height:.98;max-width:15ch;margin-left:auto;margin-right:auto;}
.cta p{font-size:1.1rem;}

/* --------------------------------------------------------- Pied de page */
.footer{background:var(--s-nuit);}

/* --------------------------------------------------------- Écusson flottant (comme sur l'accueil) */
.ecusson-flottant{
  position:fixed;z-index:900;right:clamp(14px,2.2vw,34px);top:50%;width:clamp(56px,5.6vw,92px);
  translate:0 -50%;perspective:700px;pointer-events:none;transition:opacity .5s;
}
.ecusson-flottant div{transform-style:preserve-3d;will-change:transform;}
.ecusson-flottant img{width:100%;height:auto;display:block;filter:drop-shadow(0 12px 22px rgba(15,27,51,.35));}
.ecusson-flottant.sur-sombre img{filter:drop-shadow(0 0 20px rgba(217,189,130,.4)) drop-shadow(0 12px 22px rgba(0,0,0,.45));}
.menu-ouvert ~ .ecusson-flottant,.ecusson-flottant.masque{opacity:0;}
/* Sur petit écran, il n'y a pas de marge libre : l'écusson de l'en-tête suffit */
@media (max-width:900px){ .ecusson-flottant{display:none;} }

/* --------------------------------------------------------- Curseur doré (souris uniquement) */
.curseur-studio{display:none;}
@media (hover:hover) and (pointer:fine){
  .studio-curseur,.studio-curseur a,.studio-curseur button,.studio-curseur summary,.studio-curseur label{cursor:none;}
  .studio-curseur input,.studio-curseur textarea,.studio-curseur select{cursor:text;}
  .curseur-studio{display:block;position:fixed;left:0;top:0;z-index:2000;pointer-events:none;}
  .curseur-studio i,.curseur-studio b{position:absolute;left:0;top:0;border-radius:50%;translate:-50% -50%;}
  .curseur-studio i{width:6px;height:6px;background:var(--or);}
  .curseur-studio b{width:38px;height:38px;border:1px solid var(--or);transition:width .35s var(--s-ease),height .35s var(--s-ease),background .35s;}
  .curseur-studio.survol b{width:64px;height:64px;background:rgba(180,147,79,.14);}
}

/* --------------------------------------------------------- Pages sans hero (404) */
main > .section:first-child{padding-top:190px;}

@media (max-width:860px){
  .hero--interne h1,.hero h1{font-size:clamp(2.4rem,11vw,3.4rem);line-height:1;}
  .section{padding:96px 0;}
  .hero--interne .hero__contenu{padding:140px 22px 70px;}
  .cta{padding:110px 0;}
}
@media (prefers-reduced-motion:reduce){
  .nav.is-open,.nav.is-open a{animation:none;}
}

/* Pied de page : la 4e colonne contient « Le cabinet » puis « Coordonnées » ; on les met côte à côte */
@media (min-width: 1025px) {
  .footer__grille { grid-template-columns: 1.5fr 1fr .7fr 2.3fr; gap: 44px; }
  .footer__grille > div:last-child { display: grid; grid-template-columns: 1fr 1.25fr; grid-template-rows: auto 1fr; grid-auto-flow: column; column-gap: 44px; }
  .footer__grille > div:last-child > h4 { margin-top: 0 !important; }
}
.footer li{font-size:.94rem;line-height:1.55;}
