/* Premium Experience — navigation simplifiée, intro signature et micro-interactions */
:root{--premium-glow:rgba(225,201,148,.28);--premium-night:#15130f}

/* Intro cinématique, limitée à environ 6,8 secondes */
.opening{background:
 radial-gradient(circle at 50% 42%,rgba(225,201,148,.17),transparent 27%),
 radial-gradient(circle at 20% 80%,rgba(173,133,73,.08),transparent 28%),
 linear-gradient(145deg,#0f0e0c 0%,#1d1913 53%,#11100d 100%);
 overflow:hidden;isolation:isolate;place-content:center;transition:opacity 1.05s ease,visibility 1.05s ease}
.opening::before{content:"";position:absolute;inset:-30%;background:conic-gradient(from 180deg,transparent,rgba(225,201,148,.055),transparent 25%);animation:premiumSweep 7s linear both;pointer-events:none}
.opening::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,242,208,.7) 0 1px,transparent 1.5px);background-size:83px 83px;opacity:.12;mask-image:linear-gradient(to bottom,transparent,black 25%,black 75%,transparent);animation:premiumDust 7s ease both;pointer-events:none}
.opening-inner{position:relative;z-index:2;display:grid;justify-items:center;width:min(760px,92vw);padding:26px}
.opening-logo{width:min(205px,46vw)!important;opacity:0;animation:premiumLogo 1.4s .25s cubic-bezier(.2,.75,.2,1) forwards!important}
.opening-kicker{margin:11px 0 0!important;font-family:var(--sans)!important;font-size:10px!important;letter-spacing:.34em!important;text-transform:uppercase;color:#d8bb7c;opacity:0;animation:premiumRise .75s 1.1s ease forwards}
.opening-sequence{position:relative;width:100%;height:128px;margin-top:12px;display:grid;place-items:center}
.opening-phrase{position:absolute!important;margin:0!important;width:100%;font-family:var(--serif)!important;font-weight:500;font-size:clamp(27px,4.2vw,44px)!important;line-height:1.18!important;letter-spacing:.01em!important;color:#fff;opacity:0;transform:translateY(13px);text-wrap:balance}
.phrase-one{animation:premiumPhrase 1.45s 1.45s ease both}
.phrase-two{animation:premiumPhrase 1.35s 2.85s ease both}
.phrase-three{font-size:clamp(22px,3.4vw,35px)!important;animation:premiumPhraseLast 2.15s 4.15s ease both}
.opening-line{width:0;height:1px;background:linear-gradient(90deg,transparent,#e2c586,transparent);animation:premiumLine 1.4s 5.0s ease forwards}
.opening-welcome{margin:14px 0 0!important;font-family:var(--sans)!important;font-size:9px!important;letter-spacing:.27em!important;text-transform:uppercase;color:rgba(255,255,255,.65);opacity:0;animation:premiumRise .8s 5.35s ease forwards}
.opening-skip{position:absolute;z-index:5;right:clamp(18px,3vw,42px);top:clamp(18px,3vw,36px);border:0;border-bottom:1px solid rgba(255,255,255,.28);background:transparent;color:rgba(255,255,255,.72);font:600 9px/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;padding:8px 0;cursor:pointer;transition:.25s}
.opening-skip:hover{color:#e4ca91;border-color:#e4ca91}
.opening-orbit{position:absolute;left:50%;top:47%;border:1px solid rgba(225,201,148,.13);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.opening-orbit-a{width:min(560px,82vw);aspect-ratio:1;animation:premiumOrbit 6.6s ease both}
.opening-orbit-b{width:min(390px,65vw);aspect-ratio:1;animation:premiumOrbit 6.6s .2s ease both reverse}
@keyframes premiumLogo{0%{opacity:0;transform:scale(.76);filter:blur(10px) drop-shadow(0 0 0 transparent)}70%{opacity:1;filter:blur(0) drop-shadow(0 0 42px var(--premium-glow))}100%{opacity:1;transform:scale(1);filter:blur(0) drop-shadow(0 18px 42px rgba(0,0,0,.28))}}
@keyframes premiumRise{to{opacity:1;transform:none}}
@keyframes premiumPhrase{0%{opacity:0;transform:translateY(13px)}25%,70%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-10px)}}
@keyframes premiumPhraseLast{0%{opacity:0;transform:translateY(13px)}22%,80%{opacity:1;transform:none}100%{opacity:.25;transform:translateY(-4px)}}
@keyframes premiumLine{to{width:min(290px,62vw)}}
@keyframes premiumSweep{from{transform:rotate(-28deg)}to{transform:rotate(80deg)}}
@keyframes premiumDust{0%,100%{opacity:0}25%,75%{opacity:.12}}
@keyframes premiumOrbit{0%{opacity:0;transform:translate(-50%,-50%) scale(.66) rotate(0)}35%{opacity:1}100%{opacity:.32;transform:translate(-50%,-50%) scale(1.14) rotate(18deg)}}

/* Navigation desktop premium */
.site-header{transition:height .3s,background .3s,box-shadow .3s,border-color .3s}
.site-header.scrolled{box-shadow:0 12px 40px rgba(0,0,0,.14);border-color:rgba(255,255,255,.08)}
.main-nav{gap:18px}
.main-nav>a,.nav-group-toggle{font:600 11px/1 var(--sans);letter-spacing:.105em;text-transform:uppercase}
.nav-group{position:relative;display:flex;align-items:center;height:100px}
.site-header.scrolled .nav-group{height:78px}
.nav-group-toggle{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:inherit;padding:14px 0;cursor:pointer}
.nav-group-toggle span{font-size:14px;color:var(--gold2);transition:transform .25s}
.nav-group.open .nav-group-toggle span,.nav-group:hover .nav-group-toggle span{transform:rotate(180deg)}
.nav-group.active>.nav-group-toggle,.main-nav>.active{color:var(--gold2)}
.nav-panel{position:absolute;top:calc(100% - 2px);left:50%;transform:translate(-50%,12px);visibility:hidden;opacity:0;pointer-events:none;background:rgba(20,18,14,.985);border:1px solid rgba(225,201,148,.2);box-shadow:0 28px 70px rgba(0,0,0,.34);color:#fff;transition:opacity .24s ease,transform .24s ease,visibility .24s;backdrop-filter:blur(18px)}
.nav-group:hover>.nav-panel,.nav-group:focus-within>.nav-panel,.nav-group.open>.nav-panel{visibility:visible;opacity:1;pointer-events:auto;transform:translate(-50%,0)}
.nav-panel-wide{width:min(760px,90vw);display:grid;grid-template-columns:.78fr 1.22fr;padding:28px}
.nav-panel-intro{padding:12px 30px 12px 8px;border-right:1px solid rgba(255,255,255,.11)}
.nav-panel-eyebrow{display:block;color:var(--gold2);font-size:9px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:12px}
.nav-panel-intro>strong{display:block;font:600 29px/1.08 var(--serif);text-wrap:balance}
.nav-panel-intro p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.58);margin:13px 0 18px}
.nav-panel-intro a{color:var(--gold2)!important;font-size:9px!important;letter-spacing:.15em!important}
.nav-panel-links{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding-left:24px}
.nav-panel-links>a{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;padding:14px!important;border:1px solid transparent;transition:.22s}
.nav-panel-links>a:hover{background:rgba(255,255,255,.045);border-color:rgba(225,201,148,.15)}
.nav-panel-links>a>span{font-family:var(--serif);font-size:15px;color:var(--gold2)}
.nav-panel-links strong,.nav-panel-compact strong{display:block;font:600 18px/1.15 var(--serif);text-transform:none;letter-spacing:0}
.nav-panel-links small,.nav-panel-compact small{display:block;margin-top:5px;font:400 10px/1.45 var(--sans);color:rgba(255,255,255,.5);text-transform:none;letter-spacing:0}
.nav-panel-compact{width:310px;padding:10px}
.nav-panel-compact>a{display:block;padding:13px 15px!important;border-bottom:1px solid rgba(255,255,255,.075);transition:.2s}
.nav-panel-compact>a:last-child{border-bottom:0}.nav-panel-compact>a:hover{background:rgba(255,255,255,.045)}
.main-nav .nav-panel a:after{display:none!important}
.nav-cta{transition:background .25s,color .25s,box-shadow .25s,transform .25s}
.nav-cta:hover{background:var(--gold2);color:#17140f!important;box-shadow:0 0 28px rgba(225,201,148,.2);transform:translateY(-1px)}

/* Finition visuelle sans changer la composition */
.hero-signature{max-width:640px;margin:-10px 0 28px;font-family:var(--serif);font-size:clamp(19px,2vw,26px);font-style:italic;color:rgba(255,255,255,.76);line-height:1.35}
.btn,.service-card,.seo-card,.v15-feature-grid article,.v15-card{will-change:transform}
.btn{position:relative;overflow:hidden}
.btn:after{content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.22) 48%,transparent 67%);transform:translateX(-120%);transition:transform .65s ease;pointer-events:none}
.btn:hover:after{transform:translateX(120%)}
.service-card,.seo-card,.v15-feature-grid article,.v15-card{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.seo-card:hover,.v15-feature-grid article:hover,.v15-card:hover{transform:translateY(-7px);box-shadow:0 22px 55px rgba(32,27,19,.10);border-color:rgba(184,145,80,.32)}
.footer{position:relative;overflow:hidden}.footer:before{content:"“ Prendre soin de soi est le premier pas vers un meilleur équilibre. ”";display:block;max-width:920px;margin:0 auto 58px;padding:0 20px;text-align:center;font:italic 600 clamp(28px,4vw,48px)/1.25 var(--serif);color:rgba(255,255,255,.86)}
.footer:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(225,201,148,.08);border-radius:50%;right:-280px;top:-260px;pointer-events:none}

@media(max-width:1180px) and (min-width:1001px){.main-nav{gap:12px}.main-nav>a,.nav-group-toggle{font-size:10px;letter-spacing:.07em}.brand small{display:none}}
@media(max-width:1000px){
 .main-nav{justify-content:flex-start;align-items:stretch;overflow-y:auto;padding:105px 25px 45px;gap:4px}
 .main-nav>a,.nav-group-toggle{font-size:15px;text-align:left;width:100%;padding:14px 5px;border-bottom:1px solid rgba(255,255,255,.09)}
 .nav-group{display:block;height:auto!important;width:100%}
 .nav-group-toggle{justify-content:space-between}
 .nav-panel,.nav-group:hover>.nav-panel,.nav-group:focus-within>.nav-panel{position:static;width:100%;display:none;visibility:visible;opacity:1;pointer-events:auto;transform:none;background:rgba(255,255,255,.035);box-shadow:none;border:0;border-left:1px solid rgba(225,201,148,.25);backdrop-filter:none}
 .nav-group.open>.nav-panel{display:block}
 .nav-panel-wide{grid-template-columns:1fr;padding:8px 12px}.nav-panel-intro{display:none}.nav-panel-links{display:block;padding:0}
 .nav-panel-links>a,.nav-panel-compact>a{padding:12px 14px!important;border-bottom:1px solid rgba(255,255,255,.06)}
 .nav-panel-links>a>span{display:none}.nav-panel-links small,.nav-panel-compact small{font-size:10px}
 .nav-cta{margin-top:18px;text-align:center!important;border:1px solid var(--gold2)!important}
}
@media(max-width:650px){
 .opening-sequence{height:145px}.opening-inner{padding:18px}.opening-logo{width:min(165px,44vw)!important}.opening-kicker{font-size:8px!important;letter-spacing:.24em!important}.opening-phrase{font-size:30px!important}.phrase-three{font-size:24px!important}.opening-welcome{font-size:8px!important;letter-spacing:.18em!important}.opening-skip{font-size:8px}
 .hero-signature{font-size:20px;margin-top:-12px}.footer:before{margin-bottom:45px;font-size:32px}
}
@media(prefers-reduced-motion:reduce){.opening{display:none!important}.btn:after{display:none}.seo-card:hover,.v15-feature-grid article:hover,.v15-card:hover{transform:none}}
