/*
Theme Name: PROFIL PRIVATE EXPERIENCE
Version: 0.3.0
Description: Thème PPE léger, sans aucun média ni dépendance externe.
Text Domain: ppe
*/
:root{--ink:#0c0d0c;--panel:#151614;--paper:#f3f0e8;--muted:#c3c0b7;--gold:#d6c29d;--line:#393a34;--width:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--gold)}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,5.9vw,6.1rem);max-width:1120px}h2{font-size:clamp(2.1rem,4vw,4rem);max-width:850px}h3{font-size:1.7rem}p{max-width:760px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}.ppe-skip{position:absolute;left:16px;top:-80px;z-index:1000;padding:12px;background:var(--paper);color:var(--ink)}.ppe-skip:focus{top:12px}.ppe-header{position:sticky;top:0;z-index:100;background:var(--ink);border-bottom:1px solid var(--line)}.admin-bar .ppe-header{top:32px}.ppe-header-inner{max-width:1440px;margin:auto;padding:22px 4vw;display:flex;align-items:center;justify-content:space-between;gap:28px}.ppe-brand{text-decoration:none;display:flex;flex-direction:column;line-height:1;letter-spacing:.3em;font-size:12px}.ppe-brand strong{font:32px/1 Georgia,serif;letter-spacing:.16em;margin-bottom:8px}.ppe-nav{display:flex;align-items:center;gap:25px;font-size:13px}.ppe-nav a{text-decoration:none}.ppe-nav a[aria-current=page]{color:var(--gold)}.ppe-button,.wp-block-button__link{border:1px solid var(--gold);display:inline-flex;padding:16px 24px;align-items:center;justify-content:center;background:var(--gold);color:var(--ink);text-decoration:none;text-align:center;font-size:11px;letter-spacing:.12em;line-height:1.6;border-radius:0;cursor:pointer;min-height:48px}.ppe-button:hover,.wp-block-button__link:hover{background:var(--paper);color:var(--ink)}.is-style-outline .wp-block-button__link,.ppe-button.secondary{background:transparent;color:var(--paper);border-color:var(--line)}.ppe-menu-toggle{display:none}.ppe-hero{min-height:78svh;padding:100px max(6vw,24px) 80px;display:flex;flex-direction:column;justify-content:center;background:#11120f;border-bottom:1px solid var(--line);position:relative}.ppe-hero>*{position:relative}.ppe-eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:10px;color:var(--gold);margin-bottom:30px;line-height:1.8}.ppe-hero .ppe-lead{font-size:clamp(16px,1.5vw,20px);color:var(--muted);max-width:730px}.wp-block-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.ppe-section{padding:100px max(6vw,24px);max-width:1500px;margin:auto;border-bottom:1px solid var(--line)}.ppe-section.light{background:var(--paper);color:var(--ink);max-width:none}.ppe-section.light .ppe-eyebrow{color:#675331}.ppe-section.light .ppe-muted{color:#55564e}.ppe-grid,.wp-block-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.ppe-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.ppe-grid.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.ppe-card{padding-top:28px;border-top:1px solid var(--line)}.ppe-card p{color:var(--muted);font-size:14px}.ppe-card h3{font-size:1.65rem}.ppe-number{color:var(--gold);font-size:11px;letter-spacing:.16em;margin-bottom:25px}.ppe-stat{font:clamp(2.8rem,5vw,5rem)/1.1 Georgia,serif;margin-bottom:20px}.ppe-muted{color:var(--muted);font-size:13px;max-width:800px}.ppe-media-slot{background:#1b1c18;min-height:240px;margin-bottom:25px;border:1px solid var(--line)}.ppe-media-slot.wide{min-height:380px}.ppe-sectors .ppe-card{padding:0;border:0}.ppe-sectors h3{font-size:1.4rem}.ppe-link{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.ppe-statement{max-width:900px;font-size:clamp(1.4rem,2.6vw,2.5rem);font-family:Georgia,serif;line-height:1.45}.ppe-faq{max-width:960px;margin-top:35px}.ppe-faq details{border-top:1px solid var(--line);padding:22px 0}.ppe-faq details:last-child{border-bottom:1px solid var(--line)}.ppe-faq summary{cursor:pointer;font-size:17px;list-style-position:outside;margin-left:20px;padding-left:8px}.ppe-faq details p{color:var(--muted);margin:18px 25px 0}.ppe-footer{padding:65px 6vw 30px}.ppe-footer-inner{max-width:1280px;margin:auto;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}.ppe-footer nav{display:flex;gap:20px;flex-wrap:wrap;font-size:13px}.ppe-footer-bottom{max-width:1280px;margin:45px auto 0;padding-top:25px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.ppe-form{max-width:950px}.ppe-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ppe-field.full{grid-column:1/-1}.ppe-field label{display:block;font-size:13px;margin-bottom:8px}.ppe-field input,.ppe-field select,.ppe-field textarea{width:100%;border:1px solid #66675e;background:#151614;color:var(--paper);border-radius:0;padding:13px;min-height:48px}.ppe-field textarea{min-height:160px;resize:vertical}.ppe-field small{display:block;color:#f1baaa}.ppe-check{display:flex;align-items:start;gap:10px;font-size:13px;margin:22px 0}.ppe-check input{margin-top:6px;min-width:18px;min-height:18px}.ppe-notice{border-left:3px solid var(--gold);padding:18px 22px;background:var(--panel);margin:22px 0;max-width:950px}.ppe-error{border-color:#f1baaa}.ppe-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.ppe-profile-nav{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:40px}.ppe-profile-nav a{font-size:11px;letter-spacing:.12em;padding:14px 20px;border:1px solid var(--line);text-decoration:none}.ppe-profile-nav a[aria-current]{border-color:var(--gold);color:var(--gold)}.ppe-form-panel[hidden]{display:none}.ppe-list{padding-left:20px}.ppe-list li{padding:8px 0}.ppe-ticket-code{overflow-wrap:anywhere;font:18px/1.5 monospace}.ppe-admin-message{font-size:13px}.ppe-reveal{animation:ppe-in .7s ease both}@keyframes ppe-in{from{opacity:1;transform:translateY(12px)}to{opacity:1;transform:none}}@media(min-width:1600px){.ppe-hero{padding-left:calc((100vw - 1280px)/2);padding-right:calc((100vw - 1280px)/2)}}@media(max-width:1100px){.ppe-nav{gap:14px}.ppe-nav>.ppe-button{display:none}.ppe-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.ppe-header-inner{padding:18px 24px}.ppe-brand strong{font-size:26px}.ppe-brand{font-size:9px}.ppe-menu-toggle{display:block;background:none;color:var(--paper);border:1px solid var(--line);padding:12px}.ppe-nav{display:flex;flex-wrap:wrap;gap:18px;padding:20px 24px;border-top:1px solid var(--line)}.ppe-header-inner{flex-wrap:wrap}.ppe-nav{width:100%}.js .ppe-nav:not(.is-open){display:none}.ppe-hero{min-height:78svh;padding:65px 24px}.ppe-hero h1{font-size:clamp(2.55rem,9.7vw,4.3rem)}.ppe-section{padding:65px 24px}.ppe-grid,.ppe-grid.two,.wp-block-columns{grid-template-columns:1fr;gap:35px}.ppe-grid.five{grid-template-columns:1fr}.ppe-media-slot{min-height:250px}.ppe-media-slot.wide{min-height:250px}.ppe-fields{grid-template-columns:1fr}.wp-block-buttons>.wp-block-button{width:100%}.wp-block-button__link{width:100%;padding:17px}.ppe-footer{padding:50px 24px}.admin-bar .ppe-header{top:46px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep the sector cards in the responsive grid when WordPress adds a Group wrapper. */
.ppe-sectors > .wp-block-group__inner-container{display:contents}
.ppe-sectors > .wp-block-group__inner-container > .ppe-card{margin:0;min-width:0}

/* Editorial rhythm and progressive motion. Content remains readable without JavaScript. */
.ppe-grid > .wp-block-group__inner-container{display:contents}
.ppe-grid > .wp-block-group__inner-container > .ppe-card{margin:0;min-width:0}
.ppe-grid > .ppe-card{min-width:0}
.ppe-reveal{animation:none}
.ppe-title-word{display:inline-block}
.ppe-title-accent{color:var(--gold)}
.ppe-hero h1{margin-bottom:32px}
.ppe-section h2{position:relative;padding-bottom:30px;margin-bottom:42px}
.ppe-section h2:after{content:"";display:block;position:absolute;bottom:0;left:0;width:72px;height:1px;background:var(--gold);transform-origin:left;transition:transform 850ms cubic-bezier(.22,1,.36,1)}
.js .ppe-section h2:after{transform:scaleX(.3)}
.js .ppe-section h2.ppe-heading-arrived:after{transform:scaleX(1)}
.ppe-section.light h2:after{background:#806b45}
.ppe-section.light .ppe-card p{color:#55564e}
.ppe-section.light .ppe-card{border-color:#c2bcae}
.ppe-header-inner{transition:padding 300ms ease}
.ppe-header.is-scrolled .ppe-header-inner{padding-top:14px;padding-bottom:14px}
.ppe-nav>a:not(.ppe-button){position:relative;padding:5px 0}
.ppe-nav>a:not(.ppe-button):after{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 280ms ease}
.ppe-nav>a[aria-current=page]:after,.ppe-nav>a:not(.ppe-button):hover:after,.ppe-nav>a:not(.ppe-button):focus-visible:after{transform:scaleX(1)}
.ppe-button,.wp-block-button__link,.ppe-profile-nav a{transition:background-color 260ms ease,color 260ms ease,border-color 260ms ease,transform 300ms ease}
.ppe-button.secondary:hover,.is-style-outline .wp-block-button__link:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.ppe-card{transition:transform 400ms cubic-bezier(.22,1,.36,1),border-color 400ms ease}
.ppe-card h3{font-variant-numeric:tabular-nums}
.ppe-media-slot{transition:border-color 400ms ease,background-color 400ms ease}
.ppe-profile-nav a:hover{border-color:var(--gold)}
.ppe-field input,.ppe-field select,.ppe-field textarea{transition:border-color 220ms ease,background-color 220ms ease}
.ppe-field input:focus,.ppe-field select:focus,.ppe-field textarea:focus{border-color:var(--gold);background:#1c1e19}
.ppe-faq summary{display:block;position:relative;margin-left:0;padding:4px 48px 4px 0;list-style:none;transition:color 220ms ease}
.ppe-faq summary::-webkit-details-marker{display:none}
.ppe-faq summary:before,.ppe-faq summary:after{content:"";position:absolute;right:5px;top:50%;width:15px;height:1px;background:var(--gold);transition:transform 220ms ease}
.ppe-faq summary:after{transform:rotate(90deg)}
.ppe-faq details[open] summary:after{transform:rotate(0)}
.ppe-faq details[open] summary{color:var(--gold)}
.ppe-faq details p{margin-left:0;margin-right:40px}
@media(min-width:1101px){
 .ppe-section-offset:not(.ppe-section-univers)>h2,.ppe-section-offset:not(.ppe-section-univers)>.wp-block-group__inner-container>h2{margin-left:8%;max-width:900px}
 .ppe-section-offset:not(.ppe-section-univers)>.ppe-eyebrow,.ppe-section-offset:not(.ppe-section-univers)>.wp-block-group__inner-container>.ppe-eyebrow{margin-left:8%}
 .ppe-section-univers h2{max-width:980px}
 .ppe-section-univers .ppe-grid{margin-top:54px}
}
@media(hover:hover) and (pointer:fine){
 .ppe-card:hover{transform:translateY(-5px);border-color:var(--gold)}
 .ppe-card:hover .ppe-media-slot{border-color:#8f8268;background:#20211c}
 .ppe-button:hover,.wp-block-button__link:hover{transform:translateY(-2px)}
}
@media(max-width:760px){
 .ppe-title-word{max-width:100%;overflow-wrap:anywhere}
 .ppe-section h2{padding-bottom:24px;margin-bottom:32px}
 .ppe-header.is-scrolled .ppe-header-inner{padding-top:14px;padding-bottom:14px}
 .ppe-faq summary{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 .ppe-card:hover,.ppe-button:hover,.wp-block-button__link:hover{transform:none}
 .js .ppe-section h2:after{transform:scaleX(1)}
}

/* Typographic choreography: masks, oversized figures and a live chapter index. */
.ppe-title-word{overflow:hidden;vertical-align:bottom;padding-bottom:.13em;margin-bottom:-.13em}
.ppe-title-ink{display:inline-block;transform-origin:0 100%}
.ppe-hero h1{font-size:clamp(3rem,6.8vw,7rem);line-height:1.02;letter-spacing:-.055em;max-width:1250px}
.ppe-hero{padding-top:76px;padding-bottom:76px}
.ppe-hero .ppe-lead{margin-top:36px}
.ppe-header:after{content:"";position:absolute;bottom:-1px;left:0;height:2px;width:100%;background:var(--gold);transform:scaleX(var(--ppe-progress,0));transform-origin:left;pointer-events:none}
.ppe-section h2{font-size:clamp(2.2rem,4.8vw,4.7rem);line-height:1.06;letter-spacing:-.045em}
.ppe-section h2:after{width:120px;transition-duration:1300ms}
.ppe-number{font-family:Georgia,serif;font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.15;letter-spacing:-.03em;color:var(--gold);margin-bottom:24px}
.ppe-card{position:relative}
.ppe-card:before{content:"";position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 1100ms cubic-bezier(.22,1,.36,1)}
.ppe-card-arrived:before{transform:scaleX(1)}
.ppe-sectors .ppe-card:before{display:none}
.ppe-stat-card h3{color:var(--gold)}
.ppe-stat-value{display:block;font:clamp(3.4rem,6.4vw,6.5rem)/1.1 Georgia,serif;letter-spacing:-.065em;white-space:nowrap}
.ppe-stat-label{display:block;font:12px/1.8 Arial,sans-serif;text-transform:uppercase;letter-spacing:.2em;margin:8px 0}
.ppe-stat-card p{max-width:290px}
.ppe-section.light .ppe-stat-card h3,.ppe-section.light .ppe-number{color:#715a30}
.ppe-chapters{position:fixed;right:12px;top:42%;z-index:90;display:flex;flex-direction:column;gap:8px}
.ppe-chapters a{position:relative;display:flex;align-items:center;justify-content:center;width:34px;min-height:34px;font:10px/1 Arial,sans-serif;letter-spacing:.06em;color:var(--muted);text-decoration:none;background:var(--ink);border:1px solid var(--line);transition:color 250ms,background 250ms,border-color 250ms}
.ppe-chapters a[aria-current],.ppe-chapters a:hover,.ppe-chapters a:focus-visible{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.ppe-chapter-label{position:absolute;right:42px;padding:12px;white-space:nowrap;background:var(--ink);color:var(--paper);border:1px solid var(--line);opacity:0;transform:translateX(8px);pointer-events:none;transition:opacity 220ms,transform 220ms}
.ppe-chapters a:hover .ppe-chapter-label,.ppe-chapters a:focus-visible .ppe-chapter-label{opacity:1;transform:none}
@media(hover:hover) and (pointer:fine){.ppe-card:hover{transform:translateY(-9px)}.ppe-card:hover h3{color:var(--gold)}.ppe-section.light .ppe-card:hover h3{color:#715a30}}
@media(max-width:1100px){.ppe-chapters{display:none}}
@media(max-width:760px){.ppe-hero{padding:48px 24px 60px}.ppe-hero h1{font-size:clamp(2.35rem,9.6vw,4rem);line-height:1.06}.ppe-hero .ppe-lead{margin-top:28px}.ppe-stat-value{font-size:4.8rem}.ppe-stat-card{padding-bottom:12px}.ppe-number{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){.ppe-title-ink{transform:none!important}.ppe-card:hover{transform:none}.ppe-card:before{transform:scaleX(1)}}
.ppe-stat-card h3>span{display:flex;flex-direction:column}
.ppe-stat-label{order:-1}
