/* Élan de Soi — identité premium V2 partagée par tout le site */
:root{
  --v2-night:#04071d;
  --v2-night-2:#070b2b;
  --v2-panel:#0b1038;
  --v2-panel-2:#10164a;
  --v2-blue:#1649d8;
  --v2-cyan:#1cc7e8;
  --v2-violet:#6f36d5;
  --v2-magenta:#dc2ab5;
  --v2-gold:#dcae49;
  --v2-gold-light:#f5d88a;
  --v2-ivory:#f7f3e9;
  --v2-mist:#c5c9da;
  --v2-line:rgba(245,216,138,.16);
  --v2-line-soft:rgba(255,255,255,.09);
  --v2-glass:rgba(255,255,255,.035);
  --v2-shadow:0 30px 80px rgba(0,0,0,.32);
}

body.site-v2{color:var(--v2-ivory);background:var(--v2-night);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
body.site-v2 main{background:var(--v2-night);}
body.site-v2 h1,body.site-v2 h2,body.site-v2 h3,body.site-v2 h4{color:var(--v2-ivory);font-family:"Palatino Linotype","Book Antiqua",Georgia,serif;font-weight:500;letter-spacing:-.025em;}
body.site-v2 p{color:var(--v2-mist);}
body.site-v2 .container{width:min(1180px,calc(100% - 40px));}
body.site-v2 .skip-link{color:#070b2b;background:var(--v2-gold-light);}

/* Navigation premium partagée */
body.site-v2 .site-header{position:sticky;top:0;z-index:1000;background:rgba(4,7,29,.82);border-bottom:1px solid var(--v2-line);backdrop-filter:blur(22px);box-shadow:0 12px 35px rgba(0,0,0,.12);}
body.site-v2 .nav{min-height:96px;}
body.site-v2 .brand{width:104px;height:84px;overflow:hidden;align-items:center;}
body.site-v2 .brand img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 20px rgba(0,0,0,.2));}
body.site-v2 .nav-links{gap:1rem;}
body.site-v2 .nav-links>a:not(.nav-cta){padding:.65rem .25rem;border-radius:0;color:rgba(247,243,233,.78);font-size:.76rem;font-weight:760;letter-spacing:.09em;text-transform:uppercase;}
body.site-v2 .nav-links>a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:.36rem;height:1px;background:linear-gradient(90deg,var(--v2-gold),var(--v2-magenta));transition:right .22s ease;}
body.site-v2 .nav-links>a:not(.nav-cta):hover,body.site-v2 .nav-links>a[aria-current="page"]{color:var(--v2-gold-light);background:transparent;}
body.site-v2 .nav-links>a:not(.nav-cta):hover::after,body.site-v2 .nav-links>a[aria-current="page"]::after{right:0;}
body.site-v2 .nav-links .nav-cta{margin-left:.55rem;padding:.78rem 1.18rem;border:1px solid rgba(245,216,138,.34);border-radius:6px;color:#060923;background:linear-gradient(135deg,var(--v2-gold-light),var(--v2-gold));box-shadow:0 12px 30px rgba(220,174,73,.16);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;}
body.site-v2 .nav-links .nav-cta:hover,body.site-v2 .nav-links .nav-cta[aria-current="page"]{color:#060923;background:linear-gradient(135deg,#f8e5aa,#e3b651);transform:translateY(-1px);}
body.site-v2 .menu-btn{color:var(--v2-ivory);border-color:rgba(245,216,138,.2);background:rgba(255,255,255,.04);}

/* Boutons */
body.site-v2 .btn{border-radius:7px;letter-spacing:.025em;}
body.site-v2 .btn-primary{color:#060923;background:linear-gradient(135deg,var(--v2-gold-light),var(--v2-gold));box-shadow:0 14px 36px rgba(220,174,73,.18);}
body.site-v2 .btn-primary:hover{box-shadow:0 18px 46px rgba(220,174,73,.26);}
body.site-v2 .btn-secondary,body.site-v2 .btn-light{color:var(--v2-ivory);border:1px solid rgba(245,216,138,.23);background:rgba(255,255,255,.025);box-shadow:none;}
body.site-v2 .btn-secondary:hover,body.site-v2 .btn-light:hover{color:var(--v2-gold-light);border-color:rgba(245,216,138,.45);background:rgba(255,255,255,.055);}
body.site-v2 .eyebrow{color:var(--v2-gold-light);}
body.site-v2 .eyebrow::before{background:linear-gradient(90deg,var(--v2-gold),var(--v2-magenta));}
body.site-v2 .eyebrow-light{color:var(--v2-gold-light);}
body.site-v2 a:focus-visible,body.site-v2 button:focus-visible,body.site-v2 input:focus-visible,body.site-v2 select:focus-visible,body.site-v2 textarea:focus-visible{box-shadow:0 0 0 4px rgba(28,199,232,.18);}

/* Héros pages intérieures */
body.site-v2 .page-hero{position:relative;overflow:hidden;padding:clamp(5.4rem,9vw,8.8rem) 0;color:var(--v2-ivory);background:
  radial-gradient(circle at 88% 18%,rgba(220,174,73,.14),transparent 20%),
  radial-gradient(circle at 78% 58%,rgba(220,42,181,.14),transparent 25%),
  radial-gradient(circle at 12% 82%,rgba(22,73,216,.17),transparent 28%),
  linear-gradient(135deg,#050821 0%,#090d34 55%,#080b29 100%);border-bottom:1px solid var(--v2-line);}
body.site-v2 .page-hero::before{content:"";position:absolute;inset:0;opacity:.28;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000,transparent 80%);}
body.site-v2 .page-hero::after{content:"";position:absolute;right:7vw;top:17%;width:260px;height:260px;border:1px solid rgba(245,216,138,.1);border-radius:50%;box-shadow:0 0 0 38px rgba(245,216,138,.025),0 0 0 78px rgba(220,42,181,.018);}
body.site-v2 .page-hero .container{position:relative;z-index:2;}
body.site-v2 .page-hero h1{max-width:960px;margin-top:.4rem;font-size:clamp(3.1rem,6vw,5.9rem);line-height:.98;color:var(--v2-gold-light);}
body.site-v2 .page-hero .lead{max-width:760px;color:rgba(247,243,233,.68);line-height:1.75;}
body.site-v2 .breadcrumb{color:rgba(247,243,233,.46);font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;}
body.site-v2 .breadcrumb a:hover{color:var(--v2-gold-light);}
body.site-v2 .meta-badges span,body.site-v2 .meta-badges-light span{border-color:rgba(245,216,138,.15);background:rgba(255,255,255,.035);color:rgba(247,243,233,.72);}

/* Sections et surfaces */
body.site-v2 .section{position:relative;background:var(--v2-night);}
body.site-v2 .section-soft{background:linear-gradient(180deg,#070b2b 0%,#050923 100%);}
body.site-v2 .section-rose{background:
  radial-gradient(circle at 82% 22%,rgba(220,42,181,.09),transparent 28%),
  linear-gradient(180deg,#080c30,#050923);}
body.site-v2 .section-dark{background:
  radial-gradient(circle at 88% 14%,rgba(220,174,73,.10),transparent 22%),
  radial-gradient(circle at 12% 82%,rgba(22,73,216,.14),transparent 28%),
  linear-gradient(145deg,#060a27,#0a0e38);}
body.site-v2 .section+ .section{border-top:1px solid rgba(245,216,138,.065);}
body.site-v2 .section-head{margin-bottom:3.2rem;}
body.site-v2 .section-head p,body.site-v2 .section-dark .section-head p{color:rgba(197,201,218,.72);}
body.site-v2 .section-head h2{font-size:clamp(2.5rem,4.5vw,4.25rem);}
body.site-v2 .quote{color:var(--v2-gold-light);border-left-color:var(--v2-gold);}
body.site-v2 .signature{color:var(--v2-gold-light);}

/* Cartes communes */
body.site-v2 .promise,body.site-v2 .value-card,body.site-v2 .process-step,body.site-v2 .detail-panel,body.site-v2 .review-empty,body.site-v2 .legal-card{border:1px solid var(--v2-line);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:0 20px 55px rgba(0,0,0,.18);}
body.site-v2 .promise::after{border-color:rgba(245,216,138,.1);}
body.site-v2 .promise-number,body.site-v2 .service-index{color:rgba(245,216,138,.42);}
body.site-v2 .promise p,body.site-v2 .value-card p,body.site-v2 .process-step p,body.site-v2 .service-intro{color:rgba(197,201,218,.76);}
body.site-v2 .value-card{position:relative;overflow:hidden;min-height:235px;padding:1.9rem;transition:transform .25s ease,border-color .25s ease;}
body.site-v2 .value-card:hover{transform:translateY(-5px);border-color:rgba(245,216,138,.32);}
body.site-v2 .value-card::after{content:"";position:absolute;width:140px;height:140px;right:-65px;bottom:-70px;border-radius:50%;background:radial-gradient(circle,rgba(111,54,213,.2),transparent 68%);}
body.site-v2 .value-card .value-icon{width:48px;height:48px;border:1px solid rgba(245,216,138,.22);border-radius:50%;color:var(--v2-gold-light);background:rgba(255,255,255,.025);font-family:"Palatino Linotype",Georgia,serif;}
body.site-v2 .process-step{min-height:210px;padding:1.7rem;}
body.site-v2 .process-step span{border-color:rgba(245,216,138,.48);color:var(--v2-gold-light);background:rgba(245,216,138,.035);}
body.site-v2 .service-card{border-color:var(--v2-line);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(111,54,213,.055));box-shadow:0 20px 60px rgba(0,0,0,.2);}
body.site-v2 .service-card:hover{border-color:rgba(245,216,138,.35);background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(111,54,213,.075));}
body.site-v2 .service-card .service-tag{color:var(--v2-cyan);border-color:rgba(28,199,232,.19);background:rgba(28,199,232,.035);}
body.site-v2 .service-card p{color:rgba(197,201,218,.72);}
body.site-v2 .service-card .card-link{color:var(--v2-gold-light);}

/* À propos */
body.site-v2 .portrait-frame{max-width:520px;}
body.site-v2 .portrait-frame::before{inset:18px -18px -18px 18px;border-color:rgba(220,174,73,.33);border-radius:240px 240px 28px 28px;}
body.site-v2 .portrait-frame img{border:1px solid rgba(245,216,138,.18);border-radius:230px 230px 24px 24px;box-shadow:var(--v2-shadow);}
body.site-v2 .meta-badges:not(.meta-badges-light) span{color:var(--v2-gold-light);}

/* Prestations */
body.site-v2 .overview-services .service-card{background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(111,54,213,.06));}
body.site-v2 .service-detail{padding:4.5rem 0;border-bottom-color:rgba(245,216,138,.11);}
body.site-v2 .service-detail-grid{align-items:center;}
body.site-v2 .detail-panel{padding:2.25rem;border-radius:16px;}
body.site-v2 .detail-panel h3{color:var(--v2-gold-light);font-size:1.25rem;letter-spacing:.01em;}
body.site-v2 .check-list li{color:rgba(247,243,233,.76);}
body.site-v2 .check-list li::before{color:var(--v2-gold);}
body.site-v2 .form-note{color:rgba(197,201,218,.66);}

/* Formulaires */
body.site-v2 .contact-panel,body.site-v2 .form-panel{border:1px solid var(--v2-line);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:0 24px 65px rgba(0,0,0,.24);}
body.site-v2 .contact-panel-head{background:linear-gradient(145deg,#0a0f3a,#0d1244);border-bottom:1px solid var(--v2-line);}
body.site-v2 .contact-panel-head p{color:rgba(197,201,218,.72);}
body.site-v2 .contact-list{background:rgba(3,6,26,.18);}
body.site-v2 .contact-item{border-bottom-color:rgba(245,216,138,.1);}
body.site-v2 .contact-icon{border:1px solid rgba(245,216,138,.18);border-radius:50%;color:var(--v2-gold-light);background:rgba(255,255,255,.03);}
body.site-v2 .contact-item strong{color:var(--v2-ivory);}
body.site-v2 .contact-item a{color:var(--v2-cyan);}
body.site-v2 .contact-item span{color:rgba(197,201,218,.72);}
body.site-v2 .field label{color:rgba(247,243,233,.86);}
body.site-v2 .field input,body.site-v2 .field select,body.site-v2 .field textarea{border-color:rgba(245,216,138,.14);color:var(--v2-ivory);background:#080c2d;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
body.site-v2 .field input::placeholder,body.site-v2 .field textarea::placeholder{color:rgba(197,201,218,.42);}
body.site-v2 .field select{color-scheme:dark;}
body.site-v2 .field input:hover,body.site-v2 .field select:hover,body.site-v2 .field textarea:hover{border-color:rgba(245,216,138,.3);}
body.site-v2 .field input:focus,body.site-v2 .field select:focus,body.site-v2 .field textarea:focus{border-color:var(--v2-cyan);box-shadow:0 0 0 4px rgba(28,199,232,.1);}
body.site-v2 .field small,body.site-v2 .field-hint{color:rgba(197,201,218,.58);}
body.site-v2 .checkbox-field label{color:rgba(247,243,233,.72);}
body.site-v2 .checkbox-field a{color:var(--v2-cyan);}
body.site-v2 .checkbox-field input{accent-color:var(--v2-magenta);}
body.site-v2 .form-section{border-bottom-color:rgba(245,216,138,.1);}
body.site-v2 .form-step{border-color:rgba(245,216,138,.5);color:var(--v2-gold-light);}
body.site-v2 .form-status.is-success{color:#b7f4d8;border-color:rgba(80,209,151,.28);background:rgba(80,209,151,.08);}
body.site-v2 .form-status.is-error{color:#ffc2ca;border-color:rgba(255,100,120,.28);background:rgba(255,100,120,.08);}

/* Avis */
body.site-v2 .review-empty{background:
 radial-gradient(circle at 50% 10%,rgba(220,174,73,.075),transparent 32%),
 linear-gradient(145deg,rgba(255,255,255,.045),rgba(111,54,213,.05));}
body.site-v2 .review-mark{color:rgba(245,216,138,.5);}

/* Légal */
body.site-v2 .prose{color:rgba(247,243,233,.74);}
body.site-v2 .prose h2,body.site-v2 .prose h3{color:var(--v2-gold-light);}
body.site-v2 .prose a{color:var(--v2-cyan);}
body.site-v2 .legal-work-note{border-color:rgba(220,174,73,.24);background:rgba(220,174,73,.055);}
body.site-v2 .legal-placeholders dd{border-bottom-color:rgba(247,243,233,.23);}
body.site-v2 .legal-table th,body.site-v2 .legal-table td{border-color:rgba(245,216,138,.12);}
body.site-v2 .legal-table th{color:var(--v2-gold-light);background:rgba(255,255,255,.045);}
body.site-v2 .legal-updated{color:rgba(197,201,218,.58);}

/* CTA */
body.site-v2 .cta{border:1px solid rgba(245,216,138,.2);border-radius:18px;background:
 radial-gradient(circle at 86% 12%,rgba(220,174,73,.16),transparent 25%),
 radial-gradient(circle at 92% 76%,rgba(220,42,181,.16),transparent 28%),
 linear-gradient(135deg,#0a0e37,#11174d);box-shadow:var(--v2-shadow);}
body.site-v2 .cta::after{border-color:rgba(245,216,138,.13);}

/* Footer premium */
body.site-v2 .site-footer{padding-top:4.8rem;background:#020516;border-top:1px solid var(--v2-line);}
body.site-v2 .footer-brand img{width:118px;height:auto;}
body.site-v2 .footer-brand p,body.site-v2 .site-footer{color:rgba(197,201,218,.62);}
body.site-v2 .site-footer h2,body.site-v2 .site-footer h3{color:var(--v2-gold-light);letter-spacing:.11em;}
body.site-v2 .footer-links a:hover{color:var(--v2-gold-light);}
body.site-v2 .footer-bottom{border-top-color:rgba(245,216,138,.1);}

/* 404 */
body.site-v2 .not-found{min-height:72vh;display:grid;place-items:center;padding:5rem 0;background:radial-gradient(circle at 50% 30%,rgba(111,54,213,.13),transparent 30%),var(--v2-night);}

@media(max-width:1000px){
 body.site-v2 .nav{min-height:86px;}
 body.site-v2 .brand{width:88px;height:72px;}
 body.site-v2 .nav-links{inset:86px 1rem auto;background:rgba(4,7,29,.985);border-color:var(--v2-line);}
 body.site-v2 .nav-links>a:not(.nav-cta){padding:.9rem 1rem;}
 body.site-v2 .nav-links>a:not(.nav-cta)::after{display:none;}
}
@media(max-width:680px){
 body.site-v2 .container,body.site-v2 .narrow{width:min(100% - 28px,1180px);}
 body.site-v2 .brand{width:80px;height:66px;}
 body.site-v2 .page-hero{padding:4.2rem 0 4.8rem;}
 body.site-v2 .page-hero h1{font-size:clamp(2.65rem,12vw,4.15rem);}
 body.site-v2 .page-hero::after{width:160px;height:160px;right:-30px;top:24%;}
 body.site-v2 .portrait-frame::before{inset:10px -8px -12px 8px;}
 body.site-v2 .detail-panel{padding:1.4rem;}
 body.site-v2 .service-detail{padding:3.2rem 0;}
 body.site-v2 .footer-brand img{width:105px;}
}
/* Progression visuelle : les quatre images exactes sont utilisées séparément, sans texte parasite. */
.home-v2 .v2-evolution-visual{padding:1.7rem 1.2rem;}
.home-v2 .v2-evolution-stage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;align-items:center;}
.home-v2 .v2-stage-item{position:relative;display:grid;place-items:center;min-height:220px;padding:1rem;border:1px solid rgba(245,216,138,.08);border-radius:14px;background:rgba(255,255,255,.018);}
.home-v2 .v2-stage-item:not(:last-child)::after{content:"→";position:absolute;right:-1.05rem;top:50%;z-index:3;transform:translateY(-50%);color:var(--v2-gold);font-size:1.35rem;text-shadow:0 0 18px rgba(220,174,73,.35);}
.home-v2 .v2-stage-item img{width:auto;max-width:100%;height:185px;object-fit:contain;border-radius:10px;}
@media(max-width:720px){.home-v2 .v2-evolution-stage-grid{grid-template-columns:1fr 1fr;gap:.7rem}.home-v2 .v2-stage-item{min-height:190px;padding:.65rem}.home-v2 .v2-stage-item img{height:160px}.home-v2 .v2-stage-item::after{display:none}}
