@font-face{font-family:"Sora";src:url('/fonts/sora-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Sora";src:url('/fonts/sora-latin-600-normal.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
:root{--paper:#f2f3ef;--ink:#181b19;--muted:#59605b;--line:#cdd1cb;--lime:#d9f357;--white:#fff;--max:1440px}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Sora",Arial,sans-serif;-webkit-font-smoothing:antialiased}img,video{display:block;max-width:100%}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid #638003;outline-offset:4px}.wrap{width:min(calc(100% - 80px),var(--max));margin-inline:auto}.section-pad{padding-block:clamp(90px,9vw,150px)}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:"Sora",Arial,sans-serif;letter-spacing:-.055em}h2{font-size:clamp(2.9rem,5.2vw,5.35rem);line-height:1.02}p{line-height:1.55}.skip-link{position:absolute;left:16px;top:-80px;background:var(--lime);padding:12px 18px;z-index:99}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:30;background:rgba(242,243,239,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{height:78px;display:flex;align-items:center;gap:32px}.wordmark{font-family:"Sora",Arial,sans-serif;font-size:1.45rem;font-weight:700;letter-spacing:-.07em;white-space:nowrap}.wordmark-dot,.footer-brand span{color:#a0bc25}.desktop-nav{display:flex;gap:clamp(18px,2.3vw,36px);align-items:center;margin-left:auto}.desktop-nav a,.header-cta{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.desktop-nav a{transition:opacity .2s}.desktop-nav a:hover{opacity:.5}.header-cta{display:flex;align-items:center;gap:18px;border:1px solid var(--ink);padding:13px 18px;white-space:nowrap}.header-cta:hover{background:var(--ink);color:var(--paper)}.header-cta span,.button span{font-size:1.2rem;line-height:0}.mobile-nav{display:none}
.hero{min-height:calc(100dvh - 78px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.91fr);column-gap:clamp(36px,5vw,94px);position:relative;padding-top:clamp(36px,5vw,75px);padding-bottom:48px}.hero-copy{align-self:center;padding-bottom:18px;position:relative;z-index:2}.eyebrow{font-family:"Sora",Arial,sans-serif;font-size:.71rem;letter-spacing:.21em;font-weight:700;text-transform:uppercase}.hero-eyebrow{margin-bottom:27px}.hero h1{font-size:clamp(4rem,6.7vw,7.4rem);line-height:.96;white-space:pre-line;max-width:760px}.hero-lead{font-size:clamp(1.13rem,1.6vw,1.52rem);line-height:1.45;color:#3e4540;max-width:490px;margin-top:30px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:36px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:27px;padding:16px 22px;border:1px solid var(--ink);font-size:.83rem;font-weight:700;letter-spacing:.04em;white-space:nowrap;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:#343a34}.text-link{display:inline-flex;align-items:center;gap:19px;font-size:.85rem;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:6px;white-space:nowrap}.text-link span{font-size:1.1rem;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.hero-visual{position:relative;align-self:stretch;min-height:570px;overflow:hidden;background:#dfe1da}.hero-visual img{height:100%;width:100%;object-fit:cover;object-position:66% 50%}.hero-shape{position:absolute;bottom:0;right:0;width:18%;aspect-ratio:1;background:var(--lime);clip-path:polygon(100% 0,100% 100%,0 100%)}.hero-bottom{position:absolute;bottom:20px;left:0;right:0;display:flex;justify-content:space-between;font-size:.63rem;font-weight:700;letter-spacing:.17em;color:var(--muted)}
.manifesto{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.manifesto-grid{display:grid;grid-template-columns:13% 1fr 18%;gap:36px;align-items:start}.asterisk{font-size:clamp(5rem,10vw,10rem);font-family:"Sora";line-height:.75;color:#b0cb36}.manifesto h2{max-width:890px}.manifesto-grid>div:nth-child(2)>p{font-size:clamp(1.2rem,1.8vw,1.55rem);color:#3f4740;max-width:720px;margin-top:30px}.manifesto-note{align-self:end;font-size:.66rem;letter-spacing:.17em;font-weight:700;line-height:1.8}
.section-heading{max-width:820px;margin-bottom:62px}.section-heading p,.method-intro p{font-size:1.17rem;color:var(--muted);max-width:580px;margin-top:23px}.services-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(40px,6vw,100px)}.services-visuals{display:grid;grid-template-columns:1fr .55fr;gap:18px;align-items:end}.service-photo{overflow:hidden;background:#dfe1da}.service-photo img{width:100%;height:100%;object-fit:cover}.service-photo-main{aspect-ratio:.78;grid-row:1/3;grid-column:1/3}.service-photo-small{width:45%;aspect-ratio:.8;grid-row:2;grid-column:1/3;justify-self:end;transform:translate(18px,40px);border:10px solid var(--paper)}.service-list{border-top:1px solid var(--ink)}.service-row{display:grid;grid-template-columns:38px 1fr 24px;gap:17px;border-bottom:1px solid var(--line);padding:25px 0 26px}.service-num,.step-num{font-family:"Sora";font-size:.87rem;font-weight:700}.service-row h3{font-size:clamp(1.75rem,2.4vw,2.7rem);line-height:1.05}.service-row p{font-size:.99rem;max-width:460px;color:#4c544e;margin-top:10px}.service-detail{display:block;margin-top:16px;font-size:.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:#616a60}.service-arrow{font-size:1.35rem;line-height:1}
.method{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.method-intro{max-width:760px}.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:76px}.method-step{border-top:2px solid var(--ink);padding-top:19px}.step-num{display:block;margin-bottom:58px}.method-step h3{font-size:clamp(2rem,3vw,3.1rem)}.method-step p{color:var(--muted);max-width:330px;margin-top:17px}
.about-panel{display:grid;grid-template-columns:.66fr 1fr;min-height:540px;background:var(--lime);overflow:hidden}.about-mark{position:relative;display:flex;align-items:center;justify-content:center;font-family:"Sora";font-size:clamp(10rem,23vw,22rem);font-weight:700;letter-spacing:-.18em;line-height:.8;transform:translateX(-9%)}.about-mark span{position:absolute;font-size:4rem;letter-spacing:0;right:7%;top:21%}.about-copy{align-self:center;padding:70px clamp(45px,5vw,90px) 70px 15px}.about-copy h2{max-width:750px;margin-top:24px}.about-copy>p:not(.eyebrow){max-width:580px;margin-top:24px;font-size:1.12rem}.about-copy blockquote{max-width:520px;border-top:1px solid rgba(24,27,25,.35);padding-top:22px;margin-top:34px;font-family:"Sora";font-weight:500;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.28;letter-spacing:-.04em}
.seminar-photo{aspect-ratio:2.15;overflow:hidden;background:#dde0d8}.seminar-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.seminar-content{margin-top:42px;max-width:820px}.seminar-content h2{max-width:800px}.seminar-content p{font-size:1.12rem;color:#434b45;margin:23px 0 28px;max-width:650px}.video-section{display:grid;grid-template-columns:.5fr 1fr;gap:60px;align-items:center;border-top:1px solid var(--line)}.video-section h2{font-size:clamp(2.8rem,4vw,4.8rem)}.video-section p{margin-top:22px;color:var(--muted)}.video-section video{width:100%;max-height:680px;background:var(--ink)}
.faq{display:grid;grid-template-columns:.7fr 1fr;gap:80px;border-top:1px solid var(--line)}.faq h2{max-width:500px}.faq-list{border-top:1px solid var(--ink)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:25px 0;font-family:"Sora";font-size:clamp(1.13rem,1.6vw,1.45rem);font-weight:500;letter-spacing:-.03em}.faq summary::-webkit-details-marker{display:none}.faq summary span:last-child{font-size:1.75rem;font-weight:400;transition:transform .2s}.faq details[open] summary span:last-child{transform:rotate(45deg)}.faq details>p{color:var(--muted);padding:0 42px 28px 0;max-width:640px}
.contact{background:#e6e9df;border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(60px,9vw,150px)}.contact-symbol{font-size:6rem;line-height:1;color:#adc836;margin-bottom:30px}.contact-copy h2{max-width:680px}.contact-copy>p{font-size:1.18rem;max-width:520px;margin-top:25px;color:#455047}.contact-form{background:var(--paper);padding:clamp(30px,4.5vw,65px);display:grid;gap:23px;align-self:start}.field{display:grid;gap:9px}.field label{font-size:.77rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em}.field input,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #737d72;border-radius:0;color:var(--ink);padding:11px 2px 13px;outline:none}.field input:focus,.field textarea:focus{border-color:#567000;box-shadow:0 2px 0 #567000}.field textarea{resize:vertical;min-height:110px}.field textarea::placeholder{color:#616a62;opacity:1}.consent{display:flex;align-items:flex-start;gap:12px;font-size:.85rem;line-height:1.4;color:#414a42}.consent input{accent-color:#526800;margin-top:4px}.consent a{text-decoration:underline}.contact-form .button{width:max-content;margin-top:2px}.form-status{min-height:22px;font-size:.9rem;color:#345000}.form-status.error{color:#aa3324}.honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.site-footer{background:var(--paper);padding:68px 0 24px}.footer-main{display:flex;align-items:end;justify-content:space-between;padding-bottom:68px}.footer-brand{font-family:"Sora";font-size:clamp(3.7rem,10vw,10.5rem);font-weight:700;letter-spacing:-.1em;line-height:.8}.footer-main p{font-size:1.13rem;max-width:180px}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#505850;font-size:.78rem}.footer-bottom nav{display:flex;gap:25px}.footer-bottom a:hover{text-decoration:underline}.simple-header{display:flex;align-items:center;justify-content:space-between;padding-block:30px;border-bottom:1px solid var(--line)}.simple-header>a:last-child{font-size:.83rem;font-weight:700}.legal-page{min-height:70dvh;max-width:930px;padding-block:100px}.legal-page h1{font-size:clamp(3.4rem,7vw,7rem);line-height:1;margin-bottom:45px}.legal-page h2{font-size:2rem;margin-top:42px}.legal-page p{font-size:1.08rem;color:#414a42;margin-top:20px}.legal-page a{text-decoration:underline}.simple-footer{border-top:1px solid var(--line);padding-block:25px;color:var(--muted);font-size:.78rem}
@media(max-width:1100px){.desktop-nav{gap:14px}.desktop-nav a,.header-cta{font-size:.7rem}.hero{grid-template-columns:1fr .85fr;gap:30px}.hero h1{font-size:clamp(3.7rem,6.4vw,6rem)}.hero-visual{min-height:480px}.service-photo-small{width:52%}.about-panel{grid-template-columns:.52fr 1fr}.about-mark{font-size:18vw}}
@media(max-width:850px){.wrap{width:min(calc(100% - 40px),var(--max))}.header-inner{height:68px}.desktop-nav,.header-cta{display:none}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav summary{list-style:none;display:grid;gap:6px;padding:13px;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{display:block;width:25px;height:2px;background:var(--ink)}.mobile-nav nav{position:absolute;right:0;top:47px;width:min(310px,calc(100vw - 40px));background:var(--paper);border:1px solid var(--line);box-shadow:0 16px 35px #1c241321;padding:13px 22px;display:grid}.mobile-nav nav a{padding:15px 0;border-bottom:1px solid var(--line);font-weight:700}.mobile-nav nav a:last-child{border-bottom:0}.hero{min-height:auto;grid-template-columns:1fr;padding-top:56px;padding-bottom:47px}.hero-copy{padding-bottom:0}.hero h1{font-size:clamp(4.3rem,11vw,7rem)}.hero-visual{min-height:0;aspect-ratio:1.35;margin-top:45px}.hero-bottom{position:static;grid-column:1;margin-top:22px}.manifesto-grid{grid-template-columns:100px 1fr}.manifesto-note{grid-column:2}.services-grid{grid-template-columns:1fr;gap:70px}.services-visuals{max-width:720px}.method-steps{gap:20px}.about-panel{grid-template-columns:1fr}.about-mark{height:240px;font-size:17rem;justify-content:flex-start;padding-left:9%;transform:none}.about-mark span{top:20%;right:13%}.about-copy{padding:20px 38px 55px}.seminar-content{gap:35px}.faq{grid-template-columns:1fr;gap:45px}.contact-grid{grid-template-columns:1fr;gap:52px}.footer-brand{font-size:10vw}}
@media(max-width:600px){.section-pad{padding-block:76px}.wrap{width:calc(100% - 34px)}.hero{padding-top:39px}.hero-eyebrow{font-size:.62rem;margin-bottom:20px}.hero h1{font-size:clamp(3.65rem,13vw,5.6rem)}.hero-lead{font-size:1.12rem;margin-top:23px}.hero-actions{gap:25px;margin-top:28px}.hero-visual{aspect-ratio:1.02;margin-top:35px}.hero-bottom{font-size:.54rem;gap:12px;line-height:1.5}.hero-bottom span:last-child{text-align:right}h2{font-size:clamp(2.8rem,10.4vw,4.3rem)}.manifesto-grid{grid-template-columns:1fr;gap:20px}.asterisk{font-size:6rem}.manifesto-note{grid-column:1}.manifesto-grid>div:nth-child(2)>p{font-size:1.1rem}.section-heading{margin-bottom:40px}.services-visuals{display:block}.service-photo-main{aspect-ratio:1.1}.service-photo-small{width:44%;margin-left:auto;margin-top:-25%;position:relative;transform:translate(8px,25px);border-width:7px}.services-grid{gap:58px}.service-row{grid-template-columns:30px 1fr 20px;gap:9px}.service-row h3{font-size:1.8rem}.service-row p{font-size:.93rem}.method-steps{grid-template-columns:1fr;margin-top:50px;gap:38px}.step-num{margin-bottom:24px}.method-step h3{font-size:2.4rem}.about-panel{margin-inline:-17px}.about-mark{height:190px;font-size:13rem}.about-mark span{font-size:3rem}.about-copy{padding:18px 28px 45px}.seminar-photo{aspect-ratio:1.16}.seminar-content{grid-template-columns:1fr;gap:20px;margin-top:31px}.seminar-content p{margin-bottom:24px}.video-section{grid-template-columns:1fr;gap:30px}.faq summary{font-size:1.14rem}.contact-symbol{font-size:5rem}.contact-form{padding:28px 21px;margin-inline:-17px}.contact-form .button{width:100%;gap:10px}.footer-main{display:block;padding-bottom:49px}.footer-brand{font-size:16vw}.footer-main p{margin-top:24px}.footer-bottom{display:block;line-height:2}.footer-bottom nav{flex-wrap:wrap;gap:5px 18px;margin-top:12px}.legal-page{padding-block:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Rythme visuel et interactions */
.header-cta{background:var(--lime);transition:background .25s,color .25s,transform .25s}
.header-cta:hover{transform:translateY(-2px)}
.hero{min-height:0;align-items:center;padding-block:clamp(38px,4vw,62px) clamp(50px,5vw,80px)}
.hero-copy{padding:0;animation:hero-copy-in .7s both}
.hero-copy::before{content:"";display:block;width:76px;height:9px;margin-bottom:31px;background:var(--lime)}
.hero-visual{height:min(68vh,650px);min-height:480px;align-self:center;animation:hero-image-in .9s .1s both}
.hero-visual img{object-position:100% 50%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.hero-visual:hover img{transform:scale(1.035)}
.hero-shape{width:19%;transition:width .6s cubic-bezier(.2,.7,.2,1)}
.hero-visual:hover .hero-shape{width:23%}
.hero-actions .button-dark,.contact-form .button-dark,.detail-copy .button-dark{background:var(--lime);color:var(--ink)}
.hero-actions .button-dark:hover,.contact-form .button-dark:hover,.detail-copy .button-dark:hover{background:#c3e338}
.manifesto{background:#eaf0d9}
.asterisk,.contact-symbol{color:#93b72a}
.services-visuals{display:block;align-self:start}
.service-photo-main{aspect-ratio:1.38}
.service-photo-main img{object-position:50% 42%}
.services-visual-bottom{display:grid;grid-template-columns:1fr 1.1fr;gap:16px;margin-top:16px}
.services-visual-bottom>p{position:relative;display:flex;align-items:flex-end;background:var(--lime);padding:clamp(18px,2.3vw,35px);font-family:"Sora",Arial,sans-serif;font-size:clamp(1.45rem,2.7vw,3rem);font-weight:700;line-height:.95;letter-spacing:-.07em}
.services-visual-bottom>p span{position:absolute;top:18px;right:20px;font-size:2rem}
.service-photo-small{width:100%;aspect-ratio:1.28;grid-row:auto;grid-column:auto;transform:none;border:0}
.service-photo-small img{object-position:50% 57%}
.service-photo img,.seminar-photo img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.service-photo:hover img,.seminar-photo:hover img{transform:scale(1.045)}
.service-row{position:relative;transition:padding .3s,background .3s}
.service-row:hover,.service-row:focus-visible{background:#e8f0d1;padding-left:16px;padding-right:16px}
.service-arrow{transition:transform .3s,color .3s}
.service-row:hover .service-arrow,.service-row:focus-visible .service-arrow{transform:translate(3px,-3px);color:#507100}
.method{background:#ecf0e6}
.method-step{transition:border-color .25s,transform .35s}
.method-step:hover{border-color:#91af23;transform:translateY(-5px)}
.about-mark span{animation:slow-turn 22s linear infinite}
.seminar-photo{position:relative}
.seminar-photo::after{content:"";position:absolute;inset:auto 0 0 auto;width:clamp(70px,9vw,140px);aspect-ratio:1;background:var(--lime);clip-path:polygon(100% 0,100% 100%,0 100%)}
.contact{background:#e7edd8}
.form-context{font-size:.7rem;letter-spacing:.16em;font-weight:700;color:#526b08}
.legal-page .eyebrow{color:#627b10;margin-bottom:18px}
.legal-page .legal-notice{padding:18px 22px;background:#e7efd0;border-left:5px solid #9abb2e;color:#283528}

/* Pages de chaque expertise */
.detail-hero{display:grid;grid-template-columns:1fr .9fr;gap:clamp(45px,6vw,110px);align-items:center;padding-block:clamp(60px,7vw,105px)}
.detail-copy{animation:hero-copy-in .7s both}
.back-link{display:inline-block;margin-bottom:55px;border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:.78rem;font-weight:700;letter-spacing:.05em}
.back-link:hover{color:#5a7b04}
.detail-copy .eyebrow{color:#5c7616;margin-bottom:20px}
.detail-copy h1{font-size:clamp(3.8rem,6.2vw,7.5rem);line-height:.97;max-width:780px}
.detail-lead{max-width:640px;margin:29px 0 34px;font-size:clamp(1.13rem,1.5vw,1.5rem);color:#424d43}
.detail-visual{position:relative;overflow:hidden;aspect-ratio:1.07;background:#dce3d7;animation:hero-image-in .9s .1s both}
.detail-visual img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .8s}
.detail-visual:hover img{transform:scale(1.04)}
.detail-stamp{position:absolute;right:0;bottom:0;background:var(--lime);padding:13px 20px;font-family:"Sora";font-size:1.4rem;font-weight:700}
.detail-points{background:#1d291e;color:var(--paper)}
.detail-points-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,9vw,150px)}
.detail-points .eyebrow{color:var(--lime);margin-bottom:24px}
.detail-points h2{max-width:620px}
.detail-points ol{list-style:none;margin:0;padding:0;border-top:1px solid #647062}
.detail-points li{display:grid;grid-template-columns:55px 1fr;gap:15px;border-bottom:1px solid #647062;padding:25px 0;font-family:"Sora";font-size:clamp(1.2rem,2vw,1.8rem);letter-spacing:-.03em}
.detail-points li span{font-size:.77rem;color:var(--lime);letter-spacing:0}
.detail-switch .eyebrow{color:#5c7616;margin-bottom:22px}
.detail-switch-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.detail-switch-list a{display:flex;justify-content:space-between;align-items:end;min-height:185px;padding:24px;background:#e6eed2;font-family:"Sora";font-size:clamp(1.5rem,2vw,2.3rem);font-weight:700;letter-spacing:-.05em;transition:transform .3s,background .3s}
.detail-switch-list a:hover{transform:translateY(-5px);background:var(--lime)}
.detail-switch-list a span:last-child{font-weight:400;letter-spacing:0}
.reveal{opacity:0;transform:translateY(27px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.service-row.reveal:nth-child(2),.method-step.reveal:nth-child(2){transition-delay:.08s}
.service-row.reveal:nth-child(3),.method-step.reveal:nth-child(3){transition-delay:.16s}
.service-row.reveal:nth-child(4){transition-delay:.24s}
@keyframes hero-copy-in{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-image-in{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes slow-turn{to{transform:rotate(360deg)}}
@media(max-width:1100px){.hero-visual{height:min(59vh,590px);min-height:430px}}
@media(max-width:850px){.hero{padding-top:48px}.hero-visual{height:auto;min-height:0;aspect-ratio:1.4}.detail-hero{grid-template-columns:1fr}.detail-visual{aspect-ratio:1.4;max-height:590px}.back-link{margin-bottom:36px}.detail-points-grid{grid-template-columns:1fr;gap:45px}.detail-switch-list{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.hero-copy::before{width:55px;height:7px;margin-bottom:23px}.hero-visual{aspect-ratio:1.08}.services-visual-bottom{gap:10px;margin-top:10px}.services-visual-bottom>p{padding:15px;font-size:clamp(1.15rem,5vw,2rem)}.services-visual-bottom>p span{font-size:1.3rem;right:12px;top:10px}.service-photo-small{aspect-ratio:1.1}.detail-hero{padding-block:38px 72px;gap:35px}.detail-copy h1{font-size:clamp(3.4rem,12vw,5.4rem)}.detail-visual{aspect-ratio:1.08}.detail-switch-list{grid-template-columns:1fr}.detail-switch-list a{min-height:130px}.service-row:hover,.service-row:focus-visible{padding-left:8px;padding-right:8px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.hero-copy,.hero-visual,.detail-copy,.detail-visual,.about-mark span{animation:none!important}}

/* Contenu détaillé des expertises */
.detail-audience{background:#e9f0d8;border-block:1px solid #cad6b7}
.detail-audience-grid{display:grid;grid-template-columns:.44fr 1fr;gap:clamp(55px,8vw,125px);align-items:center}
.detail-audience-tag{min-height:300px;background:var(--lime);padding:clamp(24px,3vw,44px);display:flex;flex-direction:column;justify-content:space-between;font-family:"Sora";font-size:clamp(1.8rem,3vw,3.4rem);font-weight:700;line-height:.94;letter-spacing:-.06em}
.detail-audience-tag span{font-size:3.5rem;font-weight:400;line-height:1}
.detail-audience .eyebrow,.detail-flow .eyebrow,.detail-faq .eyebrow{color:#59760e;margin-bottom:20px}
.detail-audience h2{max-width:900px}
.detail-audience-text{font-size:clamp(1.13rem,1.45vw,1.45rem);color:#354235;max-width:790px;margin-top:28px}
.detail-flow-heading{max-width:920px}
.detail-flow-heading>p:last-child{font-size:1.17rem;color:var(--muted);margin-top:24px;max-width:650px}
.detail-flow-list{margin-top:67px;border-top:1px solid var(--ink)}
.detail-flow-list article{display:grid;grid-template-columns:90px .65fr 1fr;gap:30px;align-items:start;padding:33px 15px;border-bottom:1px solid var(--line);transition:background .3s,padding .3s}
.detail-flow-list article:hover{background:#e9efd8;padding-left:28px}
.detail-flow-list article>span{font-family:"Sora";font-size:.86rem;font-weight:700;color:#5e7c0b}
.detail-flow-list h3{font-size:clamp(1.6rem,2.2vw,2.55rem)}
.detail-flow-list p{font-size:1.05rem;color:#4a544a;max-width:560px}
.detail-flow>.text-link{margin-top:38px}
.detail-faq{background:#e8edde;border-block:1px solid var(--line)}
.detail-faq-grid{display:grid;grid-template-columns:.72fr 1fr;gap:clamp(45px,7vw,115px)}
.detail-faq-grid h2{max-width:520px}
.detail-faq .faq-list{border-top:1px solid var(--ink)}
.detail-faq details{border-bottom:1px solid #b9c2b2}
.detail-faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:25px 0;font-family:"Sora";font-size:clamp(1.1rem,1.5vw,1.5rem);font-weight:500;letter-spacing:-.035em}
.detail-faq summary::-webkit-details-marker{display:none}
.detail-faq summary span:last-child{font-size:1.7rem;transition:transform .25s}
.detail-faq details[open] summary span:last-child{transform:rotate(45deg)}
.detail-faq details>p{color:#4b584b;padding:0 40px 25px 0;max-width:650px}
@media(max-width:850px){.detail-audience-grid{grid-template-columns:1fr;gap:45px}.detail-audience-tag{min-height:220px;max-width:470px}.detail-faq-grid{grid-template-columns:1fr;gap:35px}}
@media(max-width:600px){.detail-audience-tag{min-height:180px}.detail-flow-list{margin-top:45px}.detail-flow-list article{grid-template-columns:38px 1fr;gap:8px 16px;padding:25px 0}.detail-flow-list article p{grid-column:2;font-size:.98rem}.detail-flow-list article:hover{padding-left:8px}.detail-faq summary{font-size:1.13rem}}

/* ==== Novembre 2026 : Sora, identité, verre, tarifs, vidéos, mouvement ==== */
:root{--green:#1d291e;--ease:cubic-bezier(.2,.7,.2,1)}
body{font-family:"Sora",Arial,sans-serif;font-synthesis:none}
h1,h2,h3{font-weight:600;letter-spacing:-.035em}
h2{font-size:clamp(2.05rem,3.7vw,3.7rem);line-height:1.08}
.eyebrow,.desktop-nav a,.header-cta,.button,.text-link{font-weight:600}
.wordmark{font-weight:600;letter-spacing:-.045em}
.hero h1{font-size:clamp(2.9rem,5.2vw,5.4rem);line-height:1.02;letter-spacing:-.045em}
.hero-lead{font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.65;max-width:520px}
.manifesto-grid>div:nth-child(2)>p{font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.6}
.section-heading p,.method-intro p{font-size:1.05rem;line-height:1.6}
.service-row h3{font-size:clamp(1.4rem,1.9vw,2.05rem)}
.method-step h3{font-size:clamp(1.5rem,2.1vw,2.2rem)}
.about-copy h2{font-size:2.25rem;line-height:1.1}
.about-copy>p:not(.eyebrow){font-size:1.02rem;line-height:1.65}
.about-copy blockquote{font-weight:400;font-size:clamp(1.1rem,1.55vw,1.4rem);letter-spacing:-.02em}
.about-mark{font-weight:600}
.services-visual-bottom>p{font-weight:600;letter-spacing:-.05em;font-size:clamp(1.2rem,2.1vw,2.4rem)}
.video-section h2{font-size:clamp(2rem,3.1vw,3.3rem)}
.seminar-content p,.contact-copy>p{font-size:1.04rem;line-height:1.65}
.faq summary,.detail-faq summary{font-size:clamp(1rem,1.3vw,1.22rem);font-weight:400;letter-spacing:-.015em}
.footer-brand{font-weight:600;letter-spacing:-.075em}
.detail-copy h1{font-size:clamp(2.7rem,4.8vw,5.1rem);line-height:1.04}
.detail-lead,.detail-audience-text{font-size:clamp(1.02rem,1.3vw,1.25rem);line-height:1.6}
.detail-points li{font-size:clamp(1.05rem,1.55vw,1.4rem)}
.detail-flow-list h3{font-size:clamp(1.25rem,1.75vw,1.9rem)}
.detail-switch-list a,.detail-audience-tag{font-weight:600}
.detail-switch-list a{font-size:clamp(1.25rem,1.7vw,1.85rem)}
.detail-flow-links{display:flex;flex-wrap:wrap;gap:16px 36px;margin-top:38px}
.legal-page h1{font-size:clamp(2.5rem,5vw,4.5rem)}
.legal-page h2{font-size:1.55rem}

/* verre : en-tête, cartes tarifs, commandes vidéo, CTA mobile */
.glass{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.17);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}

/* accueil : photo ou vidéo de présentation */
.hero-visual .hero-media{width:100%;height:100%;object-fit:cover;object-position:100% 50%}
.hero-visual video.hero-media{object-position:50% 40%;background:#dfe1da}
.video-controls{position:absolute;left:16px;bottom:16px;z-index:2;display:flex;gap:8px}
.glass-button{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border:1px solid rgba(255,255,255,.5);background:rgba(24,27,25,.3);color:#fff;font-size:.74rem;font-weight:600;letter-spacing:.03em;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);transition:background .25s,transform .25s var(--ease)}
.glass-button:hover{background:rgba(24,27,25,.5);transform:translateY(-2px)}
.glass-button svg{width:18px;height:18px;fill:currentColor;flex:none}
.glass-button-wide{padding:0 15px 0 12px}
[data-video-play] .icon-play,[data-video-play][aria-pressed="false"] .icon-pause,[data-video-sound][aria-pressed="false"] .icon-waves,[data-video-sound][aria-pressed="true"] .icon-mute{display:none}
[data-video-play][aria-pressed="false"] .icon-play{display:block}

/* tarifs : verre dépoli sur le vert profond, halos citron */
.pricing{position:relative;overflow:hidden;isolation:isolate;background:var(--green);color:var(--paper)}
.pricing-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(36% 48% at 10% 14%,rgba(217,243,87,.34),transparent 70%),radial-gradient(32% 44% at 92% 82%,rgba(217,243,87,.24),transparent 70%)}
.pricing-head{max-width:760px;margin-bottom:clamp(40px,5vw,60px)}
.pricing-head .eyebrow{color:var(--lime);margin-bottom:20px}
.pricing-head p:last-child{margin-top:22px;color:#c9d2c4;font-size:1.04rem;line-height:1.65;max-width:600px}
.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,32px);align-items:start}
.price-card{padding:clamp(24px,3vw,42px);transition:transform .45s var(--ease),border-color .3s}
.price-card:hover{transform:translateY(-4px);border-color:rgba(217,243,87,.45)}
.price-card-head h3{font-size:clamp(1.55rem,2.2vw,2.15rem)}
.price-card-head p{margin-top:8px;color:#c9d2c4;font-size:.9rem}
.price-table{width:100%;border-collapse:collapse;margin-top:26px}
.price-table thead th{padding:0 0 12px;border-bottom:1px solid rgba(255,255,255,.3);color:var(--lime);font-size:.64rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-align:left}
.price-table thead th:nth-child(2){padding-inline:12px}
.price-table thead th:last-child,.price-amount{text-align:right}
.price-table tbody tr{border-bottom:1px solid rgba(255,255,255,.12);transition:background .3s}
.price-table tbody tr:hover{background:rgba(217,243,87,.07)}
.price-table tbody th{padding:18px 14px 18px 0;font-weight:400;text-align:left;vertical-align:top}
.price-table tbody th span{display:block;font-size:1rem;line-height:1.4}
.price-table small{display:block;margin-top:5px;color:#b5c1b0;font-size:.76rem;line-height:1.4}
.price-duration{padding:18px 12px;color:#d7ded2;font-size:.88rem;white-space:nowrap;vertical-align:top}
.price-amount{padding:18px 0;white-space:nowrap;vertical-align:top}
.price-amount strong{color:var(--white);font-size:1.1rem;font-weight:600}
.price-table tbody tr:first-child .price-amount strong{color:var(--lime)}
.price-note{margin-top:20px;color:#c9d2c4;font-size:.86rem;line-height:1.6}
.price-vat{margin-top:8px;color:#a9b5a4;font-size:.74rem}
.pricing-foot{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18)}
.pricing-foot p{max-width:720px;color:#c9d2c4;font-size:.86rem;line-height:1.6}
.pricing .button-dark{border-color:var(--lime);background:var(--lime);color:var(--ink)}
.pricing .button-dark:hover{background:#c3e338}

/* vidéos : formats verticaux affichés entiers, sans recadrage */
.video-section video,.seminar-video video{width:auto;max-width:100%;max-height:min(680px,80svh);margin-inline:auto;background:var(--ink)}
.seminar-video{display:grid;grid-template-columns:.6fr 1fr;gap:clamp(30px,5vw,70px);align-items:center;margin-top:clamp(50px,6vw,90px);padding-top:clamp(40px,5vw,70px);border-top:1px solid var(--line)}
.seminar>.seminar-video:first-child{margin-top:0;padding-top:0;border-top:0}
.seminar-video .eyebrow{color:#5c7616;margin-bottom:16px}
.seminar-video h3{font-size:clamp(1.5rem,2.3vw,2.3rem)}
.seminar-video-copy>p:last-child{margin-top:16px;color:var(--muted);line-height:1.6}

/* mouvement discret : boutons, images révélées, entrées décalées */
.button{position:relative;overflow:hidden}
.button::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.38) 50%,transparent 70%);transform:translateX(-120%);transition:transform .75s var(--ease);pointer-events:none}
.button:hover::after{transform:translateX(120%)}
.button span,.header-cta span{transition:transform .3s var(--ease)}
.button:hover span,.header-cta:hover span{transform:translate(3px,-3px)}
.button:active{transform:translateY(-1px) scale(.985)}
.reveal-media{clip-path:inset(0 0 14% 0);transition:clip-path 1.1s var(--ease)}
.reveal-media img{transform:scale(1.08);transition:transform 1.4s var(--ease)}
.reveal-media.is-visible{clip-path:inset(0)}
.reveal-media.is-visible img{transform:scale(1)}
.reveal-media.is-visible:hover img{transform:scale(1.045);transition-duration:.7s}
.price-card.reveal:nth-child(2),.seminar-video.reveal{transition-delay:.1s}
.faq-list details.reveal:nth-child(2){transition-delay:.06s}
.faq-list details.reveal:nth-child(3){transition-delay:.12s}
.faq-list details.reveal:nth-child(4){transition-delay:.18s}

/* bouton de réservation fixe sur mobile (masqué sur l'accueil et le formulaire) */
.mobile-cta{display:none}

@media(max-width:1100px){.pricing-grid{grid-template-columns:1fr;max-width:760px}}
@media(max-width:850px){
  .hero h1{font-size:clamp(2.7rem,8vw,4.2rem)}
  .hero-visual.has-video{aspect-ratio:4/5;max-height:78svh}
  .seminar-video{grid-template-columns:1fr;gap:26px}
  .pricing-foot{flex-direction:column;align-items:flex-start}
  .mobile-cta{position:fixed;left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:40;display:flex;justify-content:space-between;align-items:center;min-height:54px;padding:0 20px;border:1px solid rgba(24,27,25,.14);background:rgba(217,243,87,.84);color:var(--ink);font-size:.86rem;font-weight:600;letter-spacing:.02em;box-shadow:0 14px 32px rgba(24,27,25,.2);opacity:0;transform:translateY(130%);pointer-events:none;transition:transform .45s var(--ease),opacity .3s}
  .mobile-cta span{font-size:1.15rem}
  .mobile-cta.is-shown{opacity:1;transform:none;pointer-events:auto}
}
@media(max-width:600px){
  h2{font-size:clamp(1.75rem,7.4vw,2.4rem)}
  .hero h1{font-size:clamp(2.45rem,11vw,3.4rem)}
  .hero-lead{font-size:1rem}
  .about-copy h2{font-size:1.75rem}
  .service-row h3{font-size:1.4rem}
  .method-step h3{font-size:1.6rem}
  .detail-copy h1{font-size:clamp(2.2rem,10vw,3.1rem)}
  .services-visual-bottom>p{font-size:clamp(1.05rem,4.8vw,1.6rem)}
  .footer-brand{font-size:14vw}
  .video-controls{left:12px;bottom:12px}
  .price-card{padding:22px 18px;margin-inline:-6px}
  .price-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .price-table tbody tr{display:grid;grid-template-columns:1fr auto;column-gap:14px;padding:16px 0}
  .price-table tbody th{grid-column:1;padding:0}
  .price-duration{grid-column:1;grid-row:2;padding:6px 0 0;font-size:.8rem}
  .price-amount{grid-column:2;grid-row:1/3;padding:0}
  .price-amount strong{font-size:1.02rem}
}
@media(prefers-reduced-motion:reduce){.reveal-media{clip-path:none}.reveal-media img{transform:none}.button::after{display:none}.price-card:hover{transform:none}}
