@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--cream:#f2f0e9;--ink:#23221f;--muted:#77746c;--gold:#a98b59}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}img{max-width:100%;display:block}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.skip-link{position:fixed;top:-100px;left:20px;z-index:99;background:var(--cream);color:var(--ink);padding:14px}.skip-link:focus{top:16px}.hero{position:relative;min-height:800px;height:100svh;max-height:1200px;color:#fff;background:#17130f;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url('./festival/ensemble-cordes.webp') center 46%/cover no-repeat;animation:hero-enter 1.4s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(12,10,8,.79),rgba(12,10,8,.15) 82%),linear-gradient(0deg,rgba(12,10,8,.75),transparent 60%,rgba(12,10,8,.45))}.header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 6.1%}.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}.brand-logo{display:flex;align-items:center;justify-content:center;width:86px;height:96px;flex-shrink:0}.brand-logo img{display:block;width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.brand-name{font-size:10px;font-weight:500;letter-spacing:.15em;line-height:1.6}.brand-name strong{font-size:13px;letter-spacing:.08em}.brand-name small{display:block;font-size:7px;letter-spacing:.3em;margin-top:5px;color:#d4c6ad}.header nav{display:flex;align-items:center;gap:30px;font-size:12px}.nav-cta{border:1px solid rgba(255,255,255,.65);padding:14px 18px;transition:background .2s}.nav-cta:hover{background:rgba(255,255,255,.12)}.nav-cta span{margin-left:19px}.hero-content{position:absolute;left:8.2%;bottom:16%;right:6%;z-index:1}.eyebrow,.overline{font-size:10px;font-weight:700;letter-spacing:.17em;line-height:1.7}.eyebrow span{margin:0 12px;color:#cbb48e}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.045em;line-height:1.04}.hero h1{font-size:clamp(66px,8vw,126px);margin:24px 0 24px}.hero h1 em,h2 em{font-weight:400}.hero-description{font-size:14px;line-height:1.8;color:#e5dfd6;margin:0 0 34px;max-width:460px}.hero-link{display:inline-flex;align-items:center;gap:14px;font-size:9px;font-weight:700;letter-spacing:.15em}.circle{width:41px;height:41px;display:grid;place-items:center;border:1px solid #fff;border-radius:50%;font-size:17px;font-weight:400}.hero-bottom{position:absolute;bottom:30px;left:6.1%;right:6.1%;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;color:#ddd}.section{display:grid;grid-template-columns:1fr 3fr;gap:4%;padding:110px 8.2%}.section-label{font-size:10px;font-weight:700;letter-spacing:.15em;line-height:1.8}.section-label span{color:#a59d8f;margin-right:12px}.overline{color:#7c6544;margin:0 0 26px}h2{font-size:clamp(48px,5.5vw,84px);margin:0}.body-copy{font-size:14px;line-height:1.9;color:#68635a;max-width:470px}.note{font-size:11px;line-height:1.8;color:#675f52}.edition{border-bottom:1px solid #d6d2c8}.edition-details{display:grid;grid-template-columns:1.15fr 1fr;gap:12%;margin:35px 0 38px}.edition-details>p{font-size:15px;line-height:1.9;color:#625e55;margin:0}.theme{border-left:1px solid #c4b69c;padding-left:28px;align-self:center}.theme>span{font-size:9px;letter-spacing:.13em;color:#756044}.theme p{font-family:'Playfair Display',Georgia,serif;font-size:21px;line-height:1.5;margin:12px 0}.places{display:flex;flex-wrap:wrap;border-top:1px solid #d5d0c5;padding-top:19px;gap:12px 26px}.places>span{font-size:13px;white-space:nowrap}.places small{font-size:9px;color:#7c6544;margin-right:7px}.edition .note{margin:25px 0 0}.about-content{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:center}.about-copy{font-family:'Playfair Display',Georgia,serif;font-size:22px;line-height:1.6;color:#57544c;margin:28px 0 20px}.text-link{display:inline-block;border-bottom:1px solid #9b8b72;padding:0 0 11px;font-size:12px;font-weight:600;margin-top:22px}.text-link span{margin-left:35px}.about-photo{margin:40px 0 0;position:relative}.about-photo img{width:100%;height:480px;object-fit:cover;object-position:50% 38%}.about-photo figcaption{font-size:10px;color:#675f52;line-height:1.7;margin-top:13px}.instruments{padding:105px 8.2%;background:#252520;color:#f6f2e9}.instruments-heading{display:grid;grid-template-columns:1fr 3fr;gap:4%;align-items:start;margin-bottom:60px}.instruments .overline{color:#c0aa83}.instruments h2{font-size:clamp(48px,5.5vw,84px)}.instrument-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.instrument-image{overflow:hidden;background:#39372f}.instrument-image img{width:100%;height:350px;object-fit:cover;transition:transform .7s ease}.instrument-grid article:hover img{transform:scale(1.035)}.instrument-grid article:first-child img{object-position:50% 40%}.instrument-grid article:nth-child(3) img{object-position:53% 50%}.instrument-number{display:block;font-size:9px;letter-spacing:.15em;color:#b4a07e;margin-top:23px}.instrument-grid h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:30px;letter-spacing:-.025em;margin:10px 0}.instrument-grid p{font-size:13px;line-height:1.9;color:#bfbbae;margin:10px 0 0}.culture-note{display:grid;grid-template-columns:1fr 3fr;gap:4%;border-top:1px solid #4c4b42;margin-top:55px;padding-top:30px}.culture-note>span{font-size:10px;letter-spacing:.1em;color:#b4a07e}.culture-note p{font-family:'Playfair Display',Georgia,serif;font-size:21px;line-height:1.7;margin:0;max-width:750px;color:#ded7c9}.memories-heading{display:flex;gap:30px;justify-content:space-between;align-items:end;margin-bottom:36px}.memories h2{font-size:clamp(42px,4.5vw,68px)}.memories-heading p{font-size:12px;line-height:1.8;color:#675f52;max-width:230px}.gallery-feature{margin:0;background:#ded9cf}.gallery-feature>img{width:100%;height:490px;object-fit:cover;object-position:50% 35%}.gallery-feature figcaption{display:flex;justify-content:space-between;gap:15px;padding:17px 20px;font-size:11px;color:#676052}.gallery-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.gallery-choices button{display:block;border:2px solid transparent;padding:3px;background:transparent;cursor:pointer;opacity:.65}.gallery-choices button[aria-pressed=true]{border-color:#a98b59;opacity:1}.gallery-choices button:hover{opacity:1}.gallery-choices img{width:100%;height:85px;object-fit:cover;object-position:50% 30%}.register{background:#e7e4dc;border-top:1px solid #d6d2c8}.register-content{display:grid;grid-template-columns:1fr 1fr;gap:12%}.register h2{font-size:clamp(45px,4.8vw,72px)}.register-intro>p:not(.overline){max-width:380px;font-size:14px;line-height:1.8;color:#5c5951;margin-top:30px}.register-intro .note{font-size:11px!important;color:#675f52!important}footer{background:#24231f;color:#f6f4ed;padding:42px 8.2% 25px}.footer-main,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-main{padding-bottom:26px}.back-top{font-size:9px;letter-spacing:.15em}.footer-bottom{border-top:1px solid #47463e;padding-top:25px;font-size:10px;line-height:1.8;color:#b9b2a4}.footer-bottom a{color:#e3d5b8}a.text-link:hover,.footer-bottom a:hover{text-decoration:underline;text-underline-offset:5px}@keyframes hero-enter{from{transform:scale(1.035);opacity:.3}to{transform:scale(1);opacity:1}}@media(min-width:1600px){.section,.instruments{padding-left:max(8.2%,calc((100vw - 1400px)/2));padding-right:max(8.2%,calc((100vw - 1400px)/2))}}@media(max-width:1000px){.section{grid-template-columns:1fr 4fr;padding:85px 6%;gap:3%}.section-label{font-size:9px;letter-spacing:.08em}.section-label span{margin-right:7px}.header nav{gap:20px}.about-content{gap:7%}.about-photo img{height:420px}.about-copy{font-size:20px}.instruments{padding:85px 6%}.instruments-heading,.culture-note{grid-template-columns:1fr 4fr}.instrument-grid{gap:20px}.instrument-image img{height:300px}.instrument-grid h3{font-size:26px}.gallery-feature>img{height:440px}.register-content{gap:8%}.memories-heading{display:block}.memories-heading p{margin:20px 0 0;max-width:none}}@media(max-width:700px){html{scroll-padding-top:15px}.hero{height:100svh;min-height:740px;max-height:950px}.hero-image{background-position:55% center}.hero-shade{background:linear-gradient(90deg,rgba(12,10,8,.7),rgba(12,10,8,.1)),linear-gradient(0deg,rgba(12,10,8,.85),rgba(12,10,8,.1) 75%,rgba(12,10,8,.5))}.header{padding:18px 5%;align-items:center;gap:12px}.brand{gap:8px}.brand-name{font-size:7px;letter-spacing:.1em}.brand-name strong{font-size:9px}.brand-name small{font-size:5px;letter-spacing:.22em}.brand-logo{width:52px;height:64px}.header nav{gap:0;font-size:10px}.header nav>a:not(.nav-cta){display:none}.nav-cta{padding:11px 12px;white-space:nowrap}.nav-cta span{margin-left:6px}.hero-content{left:6%;right:6%;bottom:17%}.hero h1{font-size:clamp(58px,13vw,86px);margin:20px 0 24px}.eyebrow{font-size:8px;letter-spacing:.13em}.eyebrow span{margin:0 6px}.hero-description{font-size:12px;line-height:1.85;margin-bottom:30px}.hero-link{font-size:8px;letter-spacing:.1em;gap:12px}.circle{width:37px;height:37px}.hero-bottom{left:6%;right:6%;font-size:8px;letter-spacing:.08em;bottom:25px}.hero-bottom>a{display:none}.section{display:block;padding:68px 6%}.section-label{font-size:9px;letter-spacing:.14em;margin-bottom:33px}.section-label span{margin-right:16px}.overline{font-size:9px;margin-bottom:22px}h2{font-size:clamp(44px,10.3vw,68px)}.edition-details{display:block;margin:27px 0}.edition-details>p{font-size:14px}.theme{margin-top:28px;padding-left:20px}.theme p{font-size:21px}.places{gap:14px 23px}.places>span{font-size:12px}.edition .note{margin-top:21px}.about-content{display:flex;flex-direction:column;align-items:stretch}.about-copy{font-size:22px;max-width:500px}.body-copy{max-width:none}.about-photo{margin-top:38px;width:100%}.about-photo img{height:470px;object-position:50% 35%}.about-photo figcaption{font-size:10px}.instruments{padding:68px 6%}.instruments-heading{display:block;margin-bottom:35px}.instruments h2{font-size:clamp(44px,10.3vw,68px)}.instrument-grid{grid-template-columns:1fr;gap:38px}.instrument-image img{height:390px}.instrument-grid article:first-child img{object-position:50% 33%}.instrument-grid article:nth-child(3) img{height:290px}.instrument-number{margin-top:18px}.instrument-grid h3{font-size:32px}.instrument-grid p{font-size:13px;max-width:500px}.culture-note{display:block;margin-top:40px;padding-top:28px}.culture-note p{font-size:21px;margin-top:17px}.memories h2{font-size:clamp(43px,10.3vw,68px)}.memories-heading{margin-bottom:26px}.gallery-feature>img{height:410px}.gallery-choices{gap:5px}.gallery-choices img{height:68px}.gallery-feature figcaption{padding:15px;font-size:10px}.register-content{display:block}.register h2{font-size:clamp(45px,11vw,68px)}.register-intro>p:not(.overline){max-width:none}footer{padding:30px 6% 25px}.footer-main{align-items:center}.footer-bottom{align-items:flex-start;flex-direction:column;gap:9px;font-size:10px}.brand-footer .brand-name{font-size:8px}.brand-footer .brand-name strong{font-size:10px}.back-top{font-size:8px}}@media(max-width:360px){.header{padding-left:4%;padding-right:4%}.brand-name{font-size:6px}.brand-name strong{font-size:8px}.brand-logo{width:44px;height:58px}.nav-cta{padding:10px 8px;font-size:9px}.hero-link{font-size:7px}.hero{min-height:700px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Contact, patrimoine et diaporama */
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px 38px}.hero-catalogue{letter-spacing:.07em;text-transform:uppercase}.hero-catalogue .circle{border-color:#d6c29d;color:#f2d7a9}.hero-catalogue small{display:block;text-transform:none;font-size:9px;line-height:1.6;font-weight:400;letter-spacing:.04em;color:#cfc5b6;margin-top:5px}.hero-link:hover .circle{background:rgba(255,255,255,.12)}
.guzheng-feature{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:10%;align-items:center;border-top:1px solid #4c4b42;margin-top:58px;padding-top:65px}.guzheng-photo{margin:0;min-width:0}.guzheng-photo img{width:100%;height:560px;object-fit:contain;background:#1e1e1a}.guzheng-photo figcaption{font-size:9px;line-height:1.8;color:#aaa596;margin-top:14px}.guzheng-photo figcaption a{text-decoration:underline;text-underline-offset:3px}.guzheng-copy h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(39px,4vw,63px);line-height:1.08;letter-spacing:-.04em;margin:0 0 26px}.guzheng-copy h3 em{font-weight:400;color:#d8c39d}.guzheng-copy>p:not(.overline){font-size:14px;line-height:1.9;color:#c1baab;max-width:450px}.guzheng-facts{margin:28px 0 10px;display:grid;gap:20px}.guzheng-facts>div{border-left:1px solid #8f7956;padding-left:18px}.guzheng-facts dt{font-size:12px;color:#eee5d4}.guzheng-facts dd{font-size:11px;color:#b4ac9c;line-height:1.8;margin:5px 0 0}.guzheng-copy .text-link{font-size:11px;color:#dfcfb2}.guzheng-copy .text-link span{margin-left:15px}
.gallery-stage{position:relative;height:490px;overflow:hidden;background:#27231d}.gallery-stage .gallery-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;opacity:0;transition:opacity 1s ease;pointer-events:none}.gallery-stage .gallery-slide.is-active{opacity:1}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:13px 0 0}.gallery-controls>p{font-size:10px;line-height:1.7;color:#6b6151;margin:0}.gallery-playback{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:86px;min-height:40px;padding:9px 12px;font-size:10px;letter-spacing:.05em;background:transparent;color:#5b5142;border:1px solid #c8bda9;cursor:pointer;flex-shrink:0}.gallery-playback:hover{background:#e7e1d5}.gallery-playback>span{font-size:13px}.register-content{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7%}.register-intro .contact-pathways{font-size:11px!important;line-height:2!important;color:#786442!important;border-left:1px solid #bfae90;padding-left:16px}.register-intro .note{max-width:390px}.register-intro>h2{font-size:clamp(45px,4.3vw,67px)}
@media(max-width:1000px){.hero-actions{gap:22px 28px}.hero-link{font-size:8px;letter-spacing:.1em}.guzheng-feature{gap:7%}.guzheng-photo img{height:490px}.guzheng-copy h3{font-size:44px}.gallery-stage{height:440px}.register-content{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:6%}}
@media(max-width:700px){.hero{min-height:800px}.hero-actions{display:grid;gap:22px;justify-items:start}.hero-content{bottom:13%}.hero-description{margin-bottom:27px}.hero-link{font-size:8px}.hero-catalogue small{font-size:8px;margin-top:4px}.guzheng-feature{display:flex;flex-direction:column;gap:33px;margin-top:38px;padding-top:40px;align-items:stretch}.guzheng-copy{order:-1}.guzheng-copy h3{font-size:clamp(40px,10vw,58px)}.guzheng-copy>p:not(.overline){max-width:none}.guzheng-copy .text-link{font-size:10px;line-height:1.8}.guzheng-photo img{height:auto;max-height:560px;object-fit:contain}.guzheng-facts{grid-template-columns:1fr 1fr;gap:18px}.guzheng-facts>div{padding-left:12px}.guzheng-facts dt{font-size:11px}.guzheng-facts dd{font-size:10px}.gallery-stage{height:410px}.gallery-controls>p{font-size:9px;max-width:210px}.gallery-playback{min-height:42px}.register-content{display:block}.register-intro>h2{font-size:clamp(43px,10.5vw,66px)}.register-intro .note{max-width:none}.register-intro{margin-bottom:38px}.brand-footer .brand-logo{width:64px;height:70px}}
@media(max-width:360px){.hero{min-height:780px}.hero-actions{gap:19px}.hero-link{font-size:7px}.hero-catalogue small{font-size:8px}.guzheng-facts{grid-template-columns:1fr}.gallery-controls>p{max-width:160px}.gallery-stage{height:360px}}
@media(prefers-reduced-motion:reduce){.gallery-stage .gallery-slide{transition:none}.hero-image{animation:none}}

/* Coordonnées du festival */
.festival-topbar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 6.1%;border-bottom:1px solid rgba(255,255,255,.18);background:rgba(17,15,12,.34);font-size:11px;line-height:1.6;color:#eee8df}.festival-location,.festival-topbar-contacts,.festival-topbar-contacts>a{display:flex;align-items:center;gap:9px}.festival-location{white-space:nowrap}.festival-topbar-contacts{justify-content:flex-end;gap:28px;flex-wrap:wrap}.festival-topbar svg{width:14px;height:14px;flex-shrink:0;color:#d4bc94}.festival-topbar-contacts>a:hover{text-decoration:underline;text-underline-offset:4px}.festival-phone{white-space:nowrap}.festival-topbar-contacts>a{overflow-wrap:anywhere}
@media(max-width:700px){.festival-topbar{padding:11px 5%;align-items:flex-start;gap:10px;font-size:10px}.festival-location{align-items:flex-start;gap:5px;max-width:115px;white-space:normal}.festival-topbar svg{width:12px;height:12px;margin-top:2px}.festival-topbar-contacts{gap:6px;flex-direction:column;align-items:flex-end;min-width:0}.festival-topbar-contacts>a{gap:6px;font-size:9px;text-align:right;max-width:100%}.hero-content{bottom:11%}}
@media(max-width:360px){.festival-topbar{gap:6px;font-size:9px}.festival-location{max-width:97px}.festival-topbar-contacts>a{font-size:8px}.hero{min-height:820px}}

/* Mouvement d’accueil, édition et invitation au contact */
.hero-image{animation:festival-hero-drift 30s ease-in-out infinite alternate;will-change:transform}
@keyframes festival-hero-drift{0%{transform:scale(1.09) translateX(1.6%)}100%{transform:scale(1.18) translateX(-1.6%)}}
.edition-aside{min-width:0}
.edition-number{display:block;margin:60px 0 0 -12px;font:400 clamp(185px,19vw,300px)/.72 'Playfair Display',Georgia,serif;letter-spacing:-.08em;color:#887658;opacity:.16;user-select:none;pointer-events:none}
.edition-aside-note{display:block;margin:24px 0 0;font-size:9px;line-height:1.9;letter-spacing:.14em;color:#8a7b63}
.contact-mosaic{position:relative;max-width:460px;margin:42px 0 0;padding:0 34px 38px 0}
.contact-mosaic-main{width:77%;height:360px;object-fit:cover;object-position:center 40%;filter:saturate(.88);box-shadow:0 20px 42px rgba(52,43,29,.13)}
.contact-mosaic-inset{position:absolute;right:0;bottom:70px;width:49%;height:220px;object-fit:cover;object-position:center 30%;border:7px solid #e7e4dc;box-shadow:0 18px 45px rgba(52,43,29,.2)}
.contact-mosaic figcaption{display:flex;align-items:center;gap:12px;margin-top:17px;font-family:'Playfair Display',Georgia,serif;font-size:15px;font-style:italic;color:#716451}
.contact-mosaic figcaption span{width:33px;height:1px;background:#a9926b;flex-shrink:0}
.return-to-top{position:fixed;z-index:30;left:max(16px,env(safe-area-inset-left));bottom:calc(18px + env(safe-area-inset-bottom));display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid rgba(225,211,184,.72);border-radius:50%;background:rgba(36,35,31,.91);color:#fff;box-shadow:0 6px 20px rgba(0,0,0,.18);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .25s ease,transform .25s ease,visibility .25s}
.return-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.return-to-top:hover{background:#64543b}
.return-to-top svg{width:19px;height:19px}
@media(max-width:1000px){.edition-number{font-size:clamp(165px,20vw,220px);margin-top:48px}.contact-mosaic-main{height:315px}.contact-mosaic-inset{height:190px;bottom:66px}}
@media(max-width:700px){.edition-aside{display:flex;align-items:center;gap:25px;margin-bottom:35px}.edition-aside .section-label{margin:0}.edition-number{order:-1;font-size:125px;line-height:.8;margin:0;flex-shrink:0}.edition-aside-note{display:none}.contact-mosaic{max-width:430px;margin-top:32px;padding-right:26px}.contact-mosaic-main{height:340px}.contact-mosaic-inset{height:200px;bottom:68px}.return-to-top{left:max(10px,env(safe-area-inset-left));bottom:calc(12px + env(safe-area-inset-bottom));width:42px;height:42px}}
@media(max-width:360px){.contact-mosaic-main{height:280px}.contact-mosaic-inset{height:175px}.edition-number{font-size:108px}.edition-aside{gap:20px}}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none;transform:none;will-change:auto}.return-to-top{transition:none}}

.festival-join{width:100%;min-width:0;color:#302d26}.join-progress{display:flex;gap:15px;list-style:none;padding:0;margin:0 0 30px;border-bottom:1px solid #c9c2b5}.join-progress li{flex:1;display:flex;align-items:center;gap:8px;padding:0 0 15px;font-size:10px;color:#675f52;border-bottom:2px solid transparent;margin-bottom:-1px}.join-progress li.is-current{color:#4f422e;border-color:#a98b59}.join-progress li>span:first-child{font-size:9px;font-weight:700}.join-step-heading{margin-bottom:24px}.join-kicker{color:#735c36;font-size:9px;letter-spacing:.16em;font-weight:700;margin:0 0 11px}.join-step-heading h3,.join-success h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:0;outline:none}.join-step-heading>p:last-child{font-size:12px;line-height:1.8;color:#675f52;margin:15px 0 0}.join-fieldset{border:0;margin:0;padding:0;min-width:0}.join-profiles{display:grid;grid-template-columns:1fr 1fr;gap:9px}.join-profile{position:relative;display:flex;align-items:flex-start;gap:10px;min-height:104px;padding:15px 13px;border:1px solid #c4bcae;background:rgba(255,255,255,.13);cursor:pointer;transition:background .15s,border-color .15s}.join-profile:hover{background:#f0ece3;border-color:#a28b66}.join-profile.is-selected{background:#f6f2e8;border-color:#87704a;box-shadow:inset 0 0 0 1px #87704a}.join-profile:focus-within{outline:2px solid #a98b59;outline-offset:3px}.join-profile>input{position:absolute;opacity:0;left:15px;top:15px;width:1px;height:1px}.join-profile-text{display:block;flex:1;min-width:0}.join-profile-text strong{display:block;font-size:12px;line-height:1.5;font-weight:600;margin-bottom:5px}.join-profile-text>span{display:block;font-size:10px;line-height:1.65;color:#675f52}.join-radio-mark{font-size:12px;color:#735c36;padding-top:2px}.join-profile:last-child{grid-column:1/-1;min-height:77px}.join-selected-profile{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;padding:12px 14px;background:rgba(255,255,255,.3);border-left:2px solid #a98b59;margin:0 0 23px}.join-selected-profile>span{font-weight:600}.join-selected-profile button{background:none;border:0;font-size:10px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:#735c36;padding:5px}.join-field{margin-bottom:23px;min-width:0}.join-field>label,.join-interest-fieldset>legend{font-size:11px;font-weight:600;line-height:1.6;display:block;margin-bottom:10px}.join-optional{font-size:10px;color:#675f52;font-weight:400}.join-field input,.join-field select,.join-field textarea{display:block;font:inherit;font-size:14px;color:#302d26;width:100%;min-width:0;border:1px solid #c4bcae;border-radius:0;background:rgba(255,255,255,.26);padding:13px 12px;min-height:47px;line-height:1.5}.join-field input::placeholder,.join-field textarea::placeholder{color:#6c6355}.join-field input:focus,.join-field select:focus,.join-field textarea:focus{outline:2px solid #a98b59;outline-offset:2px;background:#f5f1e7}.join-field [aria-invalid=true]{border-color:#a34132}.join-field textarea{resize:vertical;min-height:130px}.join-field select{appearance:auto}.join-help{font-size:10px;line-height:1.8;color:#675f52;margin:10px 0 0}.join-message-meta{display:flex;gap:15px;justify-content:space-between;font-size:9px;line-height:1.8;color:#675f52;margin-top:8px}.join-message-meta>span:last-child{white-space:nowrap;flex-shrink:0}.join-field-error{font-size:11px;color:#953c2e;line-height:1.6;margin:8px 0 0}.join-errors{padding:15px 17px;border:1px solid #bd8779;background:#f4e8e0;margin:0 0 22px;font-size:11px;line-height:1.7;color:#713527;outline:none}.join-errors ul{margin:8px 0 0;padding-left:17px}.join-errors ul:empty{display:none}.join-errors a{text-decoration:underline;text-underline-offset:3px}.join-contact-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.join-interest-fieldset{border:0;padding:0;margin:0 0 24px}.join-interest-options{display:flex;flex-wrap:wrap;gap:9px}.join-interest-options label{display:flex;align-items:center;gap:7px;font-size:11px;line-height:1.6;padding:10px 12px;background:rgba(255,255,255,.2);border:1px solid #c4bcae;cursor:pointer}.join-interest-options input{margin:0;width:14px;height:14px;accent-color:#8a7149}.join-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.8;color:#665d4f;cursor:pointer}.join-consent input{width:17px;height:17px;flex-shrink:0;margin:2px 0 0;accent-color:#8a7149}.join-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #cdc5b8;margin-top:25px;padding-top:23px}.join-primary{display:flex;justify-content:space-between;align-items:center;gap:30px;background:#2c2b24;color:#f5f0e5;border:1px solid #2c2b24;cursor:pointer;padding:16px 19px;font-size:12px;min-height:51px;min-width:152px}.join-primary:hover{background:#534a39}.join-primary:disabled,.join-back:disabled{opacity:.6;cursor:wait}.join-back{display:flex;align-items:center;gap:11px;border:0;background:transparent;padding:13px 0;font-size:11px;cursor:pointer;color:#5e5241}.join-required-note{font-size:10px;color:#675f52}.join-footnote{font-size:10px;line-height:1.8;color:#675f52;margin:18px 0 0}.join-honeypot{position:absolute;left:-9999px;height:0;overflow:hidden}.join-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.join-success{border:1px solid #c4bcae;background:rgba(255,255,255,.22);padding:35px}.join-success-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #9e8b65;border-radius:50%;font-size:20px;color:#736340;margin-bottom:23px}.join-success h3{font-size:35px}.join-success h3 em{font-weight:400}.join-success>p:not(.join-kicker):not(.join-help){font-size:13px;line-height:1.9;color:#6a604f;margin:22px 0}.join-reference{border-top:1px solid #d2c9b9;padding-top:17px}.join-reference strong{font-size:11px;white-space:nowrap}.join-secondary{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px;border:0;border-bottom:1px solid #9f8c68;background:none;padding:12px 0;cursor:pointer;margin-top:25px}.festival-join button:focus-visible,.festival-join input:focus-visible,.festival-join select:focus-visible,.festival-join textarea:focus-visible{outline:2px solid #a98b59;outline-offset:3px}@media(max-width:1000px){.join-profiles{grid-template-columns:1fr}.join-profile{min-height:78px}.join-progress{gap:9px}.join-progress li{font-size:9px;gap:6px}.join-step-heading h3{font-size:29px}.join-contact-pair{display:block}.join-profile-text>span{font-size:11px}}@media(max-width:700px){.join-profiles{grid-template-columns:1fr 1fr;gap:8px}.join-profile{padding:13px 11px;min-height:132px}.join-profile-text strong{font-size:12px}.join-profile-text>span{font-size:11px}.join-step-heading h3{font-size:31px}.join-progress li{font-size:10px}.join-field input,.join-field select,.join-field textarea{font-size:16px;min-height:49px}.join-success{padding:27px 22px}.join-message-meta{font-size:9px}.join-contact-pair{display:block}.join-actions{gap:13px}.join-primary{font-size:11px;padding:15px 16px;gap:20px;min-width:155px}}@media(max-width:360px){.join-profiles{grid-template-columns:1fr}.join-profile{min-height:78px}.join-progress li{font-size:9px}.join-primary{min-width:142px;font-size:10px}.join-step-heading h3{font-size:28px}}
.join-confirm{max-width:min(440px,calc(100% - 36px));width:100%;padding:32px;border:1px solid #b8a789;background:#f2f0e9;color:#302d26;box-shadow:0 20px 70px #0005}.join-confirm::backdrop{background:rgba(20,18,15,.74)}.join-confirm h3{font:400 32px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.025em;margin:0 0 18px}.join-confirm>p:not(.join-kicker){font-size:14px;line-height:1.8;color:#5d5549}.join-confirm-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:26px}.join-confirm-actions a{text-decoration:none}.join-confirm-actions a:focus-visible,.join-confirm-actions button:focus-visible{outline:2px solid #a98b59;outline-offset:4px}

.participer-page{min-height:100vh;background:#e7e4dc;color:#302d26}.participer-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 6.1%;background:#24231f;color:#f6f4ed}.participer-header>a:first-child{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.13em;line-height:1.7}.participer-header img{width:70px;height:74px;object-fit:contain;filter:brightness(0) invert(1)}.participer-header strong{font-size:12px;letter-spacing:.08em}.participer-header>a:last-child{font-size:11px}.participer-layout{max-width:1400px;margin:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12%;padding:100px 8.2%}.participer-intro>p:first-child{font-size:10px;font-weight:700;letter-spacing:.17em;color:#735c36}.participer-intro h1{font:400 clamp(56px,6vw,88px)/1.05 'Playfair Display',Georgia,serif;letter-spacing:-.045em;margin:27px 0}.participer-intro h1 em{font-weight:400}.participer-intro>p:not(:first-child){max-width:390px;font-size:14px;line-height:1.9;color:#675f52}.participer-chosen{padding:15px 0;border-top:1px solid #c5bba9;margin-top:35px}.participer-form{min-width:0}.participer-invalid{padding:30px;border:1px solid #b7aa95}.participer-invalid h2{font-size:35px}.participer-invalid p{line-height:1.8}.participer-invalid a{display:inline-block;border-bottom:1px solid #826d4b;padding:12px 0}@media(max-width:700px){.participer-header{padding:15px 5%;gap:12px}.participer-header img{width:52px;height:58px}.participer-header>a:first-child{font-size:8px;gap:8px}.participer-header strong{font-size:9px}.participer-header>a:last-child{font-size:10px;text-align:right}.participer-layout{display:block;padding:55px 6%}.participer-intro{margin-bottom:45px}.participer-intro h1{font-size:clamp(48px,12vw,68px)}}

/* Photographies réelles, mouvement cinématographique et récit au défilement. */
.hero-cinema{position:absolute;inset:0;z-index:0;overflow:hidden;background:#17130f}
.hero-cinema-slide{position:absolute;inset:0;opacity:0;z-index:0;transition:opacity 1.8s cubic-bezier(.22,.61,.36,1);overflow:hidden}
.hero-cinema-slide.is-active{opacity:1;z-index:2}.hero-cinema-slide.is-leaving{z-index:1}
.hero-cinema-slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.22) translate3d(2.5%,0,0);will-change:transform}
.hero-cinema-slide.is-active img,.hero-cinema-slide.is-leaving img{animation:usf-cinema-move 10.8s linear both}
.hero-cinema.is-paused img{animation-play-state:paused}
@keyframes usf-cinema-move{from{transform:scale(1.22) translate3d(2.5%,0,0)}to{transform:scale(1.075) translate3d(-2.2%,0,0)}}
.hero-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(9,10,9,.85) 0%,rgba(12,11,10,.5) 42%,rgba(12,11,10,.13) 82%),linear-gradient(0deg,rgba(12,10,8,.8),transparent 45%,rgba(12,10,8,.52))}
.header{z-index:3}.hero-content{z-index:3}.festival-topbar{z-index:4}.hero-bottom{z-index:3;right:300px}.hero-bottom>a{font-size:8px}
.hero-slider-controls{position:absolute;z-index:5;right:6.1%;bottom:22px;display:flex;align-items:center;gap:8px;color:#fff}
.hero-scene-label{position:absolute;right:0;bottom:53px;width:250px;text-align:right;font:italic 15px/1.4 'Playfair Display',Georgia,serif;color:#ece4d5;letter-spacing:.02em;pointer-events:none}
.hero-scene-counter{display:flex;align-items:baseline;gap:6px;font-size:9px;margin-right:10px;letter-spacing:.1em}.hero-scene-counter strong{font-weight:400;font-size:18px}.hero-scene-counter>span{opacity:.6}
.hero-slider-controls button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff65;border-radius:50%;background:#19160f30;color:#fff;font:14px Arial;cursor:pointer;transition:background .2s}
.hero-slider-controls button:hover{background:#ffffff26}.hero-slider-controls button:last-child{font-size:10px}
.gallery-choices{grid-template-columns:repeat(8,minmax(0,1fr))}
.scroll-reveal{opacity:0;transform:perspective(1200px) translate3d(0,48px,0) rotateX(3deg);clip-path:inset(7% 0 0 0);transition:opacity 1s ease var(--reveal-delay,0ms),transform 1.25s cubic-bezier(.19,1,.22,1) var(--reveal-delay,0ms),clip-path 1.25s cubic-bezier(.19,1,.22,1) var(--reveal-delay,0ms);transform-origin:center bottom}
.scroll-reveal.is-revealed{opacity:1;transform:perspective(1200px) translate3d(0,0,0) rotateX(0);clip-path:inset(0 0 0 0)}
.resonance-scene{--scene-progress:0;position:relative;height:240vh;min-height:1500px;background:#101513;color:#f0ecdf;isolation:isolate}
.resonance-sticky{position:sticky;top:0;min-height:760px;height:100svh;max-height:1200px;overflow:hidden;padding:52px 6.1% 40px;background:radial-gradient(ellipse at 81% 45%,#26332b 0%,#151d19 34%,#101513 73%)}
.resonance-grain{position:absolute;inset:0;opacity:.23;pointer-events:none;background-image:radial-gradient(#d3d9cc45 .6px,transparent .6px);background-size:5px 5px;mask-image:linear-gradient(90deg,transparent,#000)}
.resonance-giant{position:absolute;left:29%;bottom:3%;font:400 clamp(130px,18vw,320px)/1 'Playfair Display',Georgia,serif;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px #e7d7b312;white-space:nowrap;transform:translateX(calc(var(--scene-progress)*-100px));pointer-events:none}
.resonance-strings{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;opacity:.6;transform:translateY(calc((var(--scene-progress) - .5)*-75px))}
.resonance-strings path{stroke-dasharray:1200 500;animation:resonance-string-light 14s linear infinite}.resonance-strings path:nth-child(3n){animation-delay:-6s}.resonance-strings path:nth-child(2n){animation-direction:reverse}
@keyframes resonance-string-light{from{stroke-dashoffset:0}to{stroke-dashoffset:-1700}}
.resonance-heading{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #d4c69e25;padding-bottom:22px}.resonance-heading .section-label{margin:0;color:#e1d5bd}.resonance-theme{font-size:8px;letter-spacing:.18em;color:#b0b4a6;margin:0}
.resonance-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:8%;height:calc(100% - 102px);min-height:570px;max-width:1700px;margin:0 auto}
.resonance-copy{position:relative;z-index:4;padding:25px 0 24px;max-width:520px}.resonance-copy h2{font-size:clamp(58px,6.4vw,96px);line-height:1;letter-spacing:-.055em}.resonance-copy h2 em{color:#c7ae7c}.resonance-lead{font-size:12px;line-height:1.8;color:#c0c4b7;margin:22px 0 25px}
.resonance-chapters{list-style:none;padding:0;margin:0}.resonance-chapters li{display:grid;grid-template-columns:26px 1fr;gap:12px;border-top:1px solid #c6bb9b25;padding:15px 0;opacity:.42;transition:opacity .7s ease,transform .7s ease}.resonance-chapters li.is-current{opacity:1;transform:translateX(6px)}.resonance-chapter-number{font-size:9px;letter-spacing:.1em;padding-top:5px;color:#c7ae7c}.resonance-chapters h3{font-size:14px;font-weight:500;letter-spacing:.025em;margin:0}.resonance-chapters p{font-size:11px;line-height:1.85;max-width:380px;color:#c0c4b7;margin:9px 0 0}.resonance-cta{display:inline-flex;align-items:center;gap:36px;margin-top:17px;padding:10px 0;border-bottom:1px solid #bba579;font-size:11px;color:#e9d8b4}.resonance-cta>span{font-size:19px}
.resonance-visual{position:relative;min-width:0;width:100%;height:min(650px,72vh);perspective:1500px;transform:translateY(calc((var(--scene-progress) - .5)*-28px))}
.resonance-photo-stack{position:absolute;left:17%;right:9%;top:7%;height:80%;z-index:3;transform:rotateY(calc(-10deg + var(--scene-progress)*16deg)) rotateZ(calc(3deg - var(--scene-progress)*6deg));transform-style:preserve-3d;box-shadow:0 40px 100px #0008;border:1px solid #e8d9b65c;background:#202721}
.resonance-frame{position:absolute;inset:0;overflow:hidden;margin:0;opacity:0;transition:opacity 1.1s ease}.resonance-frame.is-active{opacity:1}.resonance-frame>img{width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(calc(1.06 + var(--scene-progress)*.035));filter:saturate(.85)}
.resonance-frame::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#080e0be8,transparent 48%)}
.resonance-frame figcaption{position:absolute;z-index:2;left:8%;right:30%;bottom:8%;color:#fff}.resonance-frame figcaption>span{display:block;font-size:7px;line-height:1.7;letter-spacing:.16em;color:#d4c39d;margin-bottom:10px}.resonance-frame figcaption>strong{display:block;font:400 clamp(22px,2.3vw,34px)/1.1 'Playfair Display',Georgia,serif;letter-spacing:-.025em;max-width:310px}
.resonance-photo-index{position:absolute;z-index:5;right:-19px;top:25px;background:#e2d2af;color:#1d271f;padding:12px 13px;font-size:19px;font-weight:400;box-shadow:0 4px 18px #0003}.resonance-photo-index>small{font-size:9px}
.resonance-floating{position:absolute;z-index:1;margin:0;border:1px solid #d1c4a559;overflow:hidden;box-shadow:0 20px 70px #0007}.resonance-floating img{width:100%;height:100%;object-fit:cover;filter:saturate(.55) brightness(.8)}.resonance-float-one{width:28%;height:42%;top:1%;left:0;transform:translateY(calc(var(--scene-progress)*90px)) rotate(-12deg)}.resonance-float-two{width:32%;height:39%;right:0;bottom:3%;z-index:4;transform:translateY(calc(var(--scene-progress)*-50px)) rotate(10deg)}
.resonance-caption{position:absolute;left:11%;bottom:-3%;right:8%;margin:0;font:italic 13px/1.8 'Playfair Display',Georgia,serif;color:#c6c5b5}
.resonance-orbit{position:absolute;z-index:1;pointer-events:none;border:1px solid #d3c29730;border-radius:50%;inset:0 -10%;transform:rotate(-24deg) scaleY(.56)}.orbit-two{inset:12% -19%;transform:rotate(39deg) scaleY(.75);border-color:#bfd4c218}
.resonance-bottom{position:absolute;z-index:5;left:6.1%;right:6.1%;bottom:23px;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.16em;color:#a2ad9f}.resonance-scroll-cue{display:flex;gap:15px}.resonance-scroll-cue>span{animation:resonance-nudge 1.8s ease-in-out infinite}@keyframes resonance-nudge{50%{transform:translateY(5px)}}
@media(min-width:761px) and (max-height:850px){.resonance-sticky{padding-top:28px;min-height:690px}.resonance-grid{min-height:550px;gap:6%}.resonance-copy h2{font-size:64px}.resonance-lead{margin:15px 0}.resonance-chapters li{padding:11px 0}.resonance-chapters p{font-size:10px;line-height:1.6;margin-top:6px}.resonance-visual{height:560px}.resonance-cta{margin-top:8px}.resonance-heading{padding-bottom:15px}}
@media(max-width:1000px){.resonance-grid{gap:3%;grid-template-columns:1fr 1fr}.resonance-copy h2{font-size:66px}.resonance-theme{font-size:7px}.resonance-photo-stack{left:10%;right:6%;height:76%;top:12%}.resonance-float-one{left:-1%;height:33%;top:7%}.resonance-float-two{right:-5%;height:33%;bottom:5%}.resonance-chapters p{font-size:10px}.hero-bottom>a{display:none}.hero-scene-label{font-size:13px}}
@media(max-width:760px){.hero-slider-controls{right:6%;bottom:18px;gap:5px}.hero-slider-controls button{width:29px;height:29px}.hero-scene-counter{margin-right:4px;font-size:8px;gap:4px}.hero-scene-counter strong{font-size:15px}.hero-scene-label{bottom:49px;font-size:11px;width:210px}.hero-bottom{right:170px;bottom:27px;font-size:7px;letter-spacing:.025em;white-space:nowrap}.hero-bottom>a{display:none}.hero-cinema-slide img{object-position:58% 50%!important}.hero-shade{background:linear-gradient(90deg,#080b09b3,#080b0926),linear-gradient(0deg,#090c09e8,transparent 80%,#090c097a)}.hero-content{bottom:16%}.hero{min-height:850px}.gallery-choices{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.gallery-choices img{height:68px}.scroll-reveal{transform:translateY(30px);clip-path:none}.scroll-reveal.is-revealed{transform:none}
.resonance-scene{height:auto;min-height:0}.resonance-sticky{position:relative;height:auto;max-height:none;min-height:0;padding:43px 6% 64px;overflow:hidden}.resonance-heading{display:block}.resonance-heading .section-label{font-size:9px}.resonance-theme{font-size:7px;line-height:1.8;margin-top:14px;letter-spacing:.14em}.resonance-grid{display:flex;flex-direction:column;gap:18px;height:auto;min-height:0}.resonance-copy{display:contents}.resonance-copy h2{align-self:flex-start;font-size:clamp(57px,14vw,80px);margin-top:37px;order:1}.resonance-lead{align-self:flex-start;margin:0;font-size:12px;order:2}.resonance-visual{height:480px;max-width:480px;order:3;margin:10px 0 12px;transform:none}.resonance-photo-stack{left:16%;right:11%;top:6%;height:82%;transform:rotate(-3deg)}.resonance-float-one{left:0;top:1%;width:28%;height:37%;transform:rotate(-11deg)}.resonance-float-two{right:0;bottom:6%;width:31%;height:36%;transform:rotate(10deg)}.resonance-frame figcaption>strong{font-size:27px}.resonance-frame figcaption>span{font-size:7px}.resonance-photo-index{right:-16px;top:22px;font-size:17px;padding:10px}.resonance-caption{font-size:12px;left:5%;bottom:0;right:0}.resonance-chapters{order:4;width:100%;margin-top:20px}.resonance-chapters li,.resonance-chapters li.is-current{opacity:1;transform:none;padding:20px 0}.resonance-chapters h3{font-size:17px}.resonance-chapters p{font-size:12px;line-height:1.9;max-width:none;margin-top:11px}.resonance-cta{order:5;align-self:flex-start;font-size:12px;margin:7px 0 12px}.resonance-bottom{font-size:7px;bottom:22px;left:6%;right:6%}.resonance-scroll-cue{display:none}.resonance-giant{font-size:140px;left:-4%;bottom:29%;transform:rotate(-90deg);opacity:.65}.resonance-strings{height:70%;top:11%;opacity:.35;transform:none}.resonance-orbit{inset:0 -9%}.orbit-two{inset:10% -12%}}
@media(max-width:380px){.hero{min-height:880px}.hero-bottom{font-size:6px;right:153px}.hero-slider-controls button{width:26px;height:26px}.hero-scene-counter strong{font-size:14px}.resonance-visual{height:425px}.resonance-caption{font-size:10px}.resonance-chapters p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hero-cinema-slide{transition:none}.hero-cinema-slide img{animation:none!important;transform:none;will-change:auto}.scroll-reveal{opacity:1;transform:none;clip-path:none;transition:none}.resonance-scene{height:auto;min-height:0}.resonance-sticky{position:relative;height:auto;min-height:850px}.resonance-chapters li{opacity:1}.resonance-strings path,.resonance-scroll-cue>span{animation:none}.resonance-frame{transition:none}.resonance-photo-stack,.resonance-visual,.resonance-giant,.resonance-strings,.resonance-floating,.resonance-frame>img{transform:none}}

/* Édition 2026 : le thème ouvre le récit. */
.hero .hero-theme-title{font-size:clamp(58px,6.3vw,102px);line-height:1.04;letter-spacing:-.055em;margin:25px 0 28px;max-width:1050px}
.hero-theme-title>span,.hero-theme-title>em{display:block}.hero .hero-theme-title em{font-size:1.12em;color:#f1dfba;line-height:1.05}
.hero .hero-edition{color:#e8ddc7;letter-spacing:.19em}.hero .hero-description{max-width:620px;font-size:14px}.hero .hero-content{bottom:16%}
.hero .hero-shade{background:linear-gradient(90deg,#080b09d9 0%,#0d100ba6 32%,#100c082e 77%),linear-gradient(0deg,#0d0a08cc,transparent 50%,#0d0a0880)}
.resonance-word{position:absolute;z-index:5;border:1px solid #bfa87855;background:#142019e8;backdrop-filter:blur(10px);padding:23px 22px;color:#f0e8d5;box-shadow:0 25px 60px #0004}
.resonance-word>span{display:block;font-size:7px;letter-spacing:.19em;color:#bcae8e}.resonance-word>strong{display:block;font:italic 30px/1.15 'Playfair Display',Georgia,serif;font-weight:400;margin-top:9px}
.resonance-word-one{left:-2%;top:1%;transform:rotate(-6deg) translateY(calc(var(--scene-progress)*38px));padding-right:32px}.resonance-word-one i{display:block;width:100px;height:20px;margin-top:20px;background:repeating-linear-gradient(90deg,transparent 0 7px,#c5b17b 7px 8px);mask-image:radial-gradient(ellipse at center,#000 30%,transparent 70%)}
.resonance-word-two{right:-1%;bottom:5%;transform:rotate(6deg) translateY(calc(var(--scene-progress)*-30px));background:#dfd2b3;color:#1c2c22}.resonance-word-two>span{color:#675c43}

/* Un triptyque éditorial : chaque photographie apparaît une seule fois. */
.memories-editorial{padding:100px 6.1% 115px;background:#eeeae0}.memories-editorial>.section-label{border-bottom:1px solid #c8c0b1;padding-bottom:22px;margin:0 0 42px}
.memories-editorial .memories-heading{align-items:end;margin-bottom:42px}.memories-editorial h2{font-size:clamp(48px,5.2vw,82px)}.memories-editorial .memories-heading p{max-width:350px;font-size:13px;line-height:1.9}
.moments-panels{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:16px;min-width:0;transition:grid-template-columns .7s cubic-bezier(.22,.61,.36,1)}.moments-active-1{grid-template-columns:1fr 1.45fr 1fr}.moments-active-2{grid-template-columns:1fr 1fr 1.45fr}
.moment-panel{position:relative;min-width:0;height:630px;overflow:hidden;background:#24271e;isolation:isolate}.moment-panel:nth-child(2){margin-top:35px}.moment-panel:nth-child(3){margin-top:70px}
.moment-panel>img{width:100%;height:100%;object-fit:cover;object-position:50% 44%;transform:scale(1.045);filter:saturate(.82);transition:transform 1.3s ease,filter 1s ease}.moment-panel.is-active>img{transform:scale(1);filter:saturate(1)}.moment-panel:nth-child(3)>img{object-position:58% center}
.moment-discover{position:absolute;inset:0;width:100%;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:34px 28px;background:linear-gradient(0deg,#09100ef5 0%,#0b141694 30%,transparent 68%);border:0;color:#faf3e5;cursor:pointer}
.moment-tag{position:absolute;top:28px;left:28px;font-size:9px;letter-spacing:.16em;padding:8px 10px;background:#0e181b8c;border:1px solid #f0e7d638}.moment-arrow{position:absolute;right:25px;top:28px;width:32px;height:32px;display:grid;place-items:center;border:1px solid #e0dac47d;border-radius:50%;font-size:16px}
.moment-discover>strong{font:400 clamp(29px,2.9vw,46px)/1.1 'Playfair Display',Georgia,serif;letter-spacing:-.03em;max-width:310px}.moment-story{max-width:310px;font-size:12px;line-height:1.9;color:#ddd3c1;opacity:0;max-height:0;overflow:hidden;transition:opacity .6s ease,max-height .6s ease,margin .6s ease}.moment-panel.is-active .moment-story{opacity:1;max-height:120px;margin-top:20px}.moment-discover:focus-visible{outline:2px solid #e8d19d;outline-offset:-8px}

/* Une invitation ample, puis un espace calme pour choisir sa démarche. */
.festival-invitation{background:#ece8de;scroll-margin-top:0}.invitation-stage{position:relative;isolation:isolate;overflow:hidden;min-height:650px;height:75vh;max-height:920px;background:#101713;color:#fff}
.invitation-photographs{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:3px}.invitation-photographs img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 47%}.invitation-photographs img:last-child{object-position:center 42%}.invitation-stage::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#09100df2,transparent 82%)}.invitation-photographs{z-index:-2}.invitation-stage-copy{position:relative;height:100%;min-height:650px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:65px 6.1%}
.invitation-stage-copy>.section-label{position:absolute;top:40px;left:6.1%;margin:0;color:#f8f0dd}.invitation-stage-copy>.section-label span{color:#d5c49e}.invitation-kicker{font-size:10px;letter-spacing:.19em;font-weight:500;color:#e4d2ae;margin:0 0 23px}.invitation-stage h2{font-size:clamp(58px,6.8vw,105px);line-height:1.03;max-width:1100px;text-shadow:0 3px 25px #0006}.invitation-stage h2 em{color:#e1cc9d}
.invitation-enter{display:flex;align-items:center;gap:40px;border-bottom:1px solid #d5c4a1b0;padding:17px 0 12px;margin-top:25px;font-size:9px;font-weight:500;letter-spacing:.13em}.invitation-enter>span:last-child{font-size:22px}.invitation-enter:hover{color:#e6c88e}.invitation-signature{position:absolute;right:32px;top:44px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.22em;color:#eae4d7}
.invitation-body{max-width:1600px;margin:auto;padding:90px 6.1% 60px;scroll-margin-top:35px}.invitation-intro{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:10%;margin-bottom:55px}.invitation-intro h2{font-size:clamp(42px,4.5vw,68px);line-height:1.08}.invitation-intro .overline{font-size:10px;margin-bottom:20px}.invitation-intro-copy p{font-size:14px;line-height:1.9;color:#5f5a4f;margin:0 0 18px}.invitation-intro-copy>a{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid #ac9874;padding:11px 0;font-size:12px;overflow-wrap:anywhere;max-width:100%}
.invitation-form{padding:50px;background:#f9f6ef;border:1px solid #d5cbbc;box-shadow:0 30px 70px #5a49290a}.invitation-form .join-progress{margin-bottom:35px}.invitation-form .join-progress li{font-size:12px;padding-bottom:20px}.invitation-form .join-step-heading{margin-bottom:32px}.invitation-form .join-step-heading h3{font-size:clamp(32px,3vw,46px)}.invitation-form .join-step-heading>p:last-child{font-size:14px}.invitation-form .join-kicker{font-size:9px}
.invitation-form .join-profiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.invitation-form .join-profile{padding:25px 22px;min-height:143px;border-color:#d5cbbc;background:#f4f0e7;transition:background .25s,border-color .25s,transform .3s}.invitation-form .join-profile:last-child{grid-column:auto;min-height:143px}.invitation-form .join-profile:hover{transform:translateY(-3px);background:#e9dfce;border-color:#ac9263}.invitation-form .join-profile-text strong{font-size:15px;margin-bottom:10px}.invitation-form .join-profile-text>span{font-size:12px;line-height:1.8}.invitation-form .join-radio-mark{font-size:18px}.invitation-form .join-required-note{margin-top:23px}.invitation-form .join-actions{display:none}.invitation-form .join-footnote{font-size:11px;max-width:800px}.invitation-direct{display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;padding-top:35px;font-size:12px;color:#615a4d}.invitation-direct>span{margin-right:auto}.invitation-direct>a{border-bottom:1px solid #c4b79e;padding-bottom:5px}

/* Le formulaire dispose de sa propre page, avec de vrais espaces de lecture. */
.participer-page{background:#e9e5db}.participer-layout{max-width:1540px;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:0;padding:70px 5% 100px;align-items:start}.participer-intro{position:sticky;top:32px;background:#17211b;color:#f5eedf;padding:0;overflow:hidden}.participer-story{padding:42px 35px 18px}.participer-story>p:first-child{font-size:9px;letter-spacing:.2em;color:#ccb88d}.participer-story h1{font-size:clamp(43px,4.1vw,65px);line-height:1.06;margin:26px 0;letter-spacing:-.04em}.participer-story h1 em{color:#d3bd8c}.participer-story>p:not(:first-child){font-size:13px;line-height:1.9;color:#d1d0c2}.participer-story .participer-chosen{border-color:#b6a67b40;margin:25px 0 0;padding:18px 0 4px;font-size:11px}.participer-chosen strong{display:block;color:#f0dfb9;font-size:16px;line-height:1.7;font-weight:500;margin-top:5px}
.participer-photo{position:relative;margin:0;height:340px;overflow:hidden}.participer-photo>img{width:100%;height:100%;object-fit:cover;object-position:40% center}.participer-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0c1612db,transparent 70%)}.participer-photo figcaption{position:absolute;left:35px;bottom:28px;z-index:1;font:italic 20px/1.4 'Playfair Display',Georgia,serif;color:#f7eedb}
.participer-form{padding:48px 55px 55px;background:#faf8f2;border:1px solid #d6cebf;border-left:0;min-height:850px}.participer-form .join-progress{gap:22px;margin-bottom:40px}.participer-form .join-progress li{font-size:11px;padding-bottom:20px}.participer-form .join-step-heading{margin-bottom:30px}.participer-form .join-step-heading h3{font-size:38px}.participer-form .join-step-heading>p:last-child{font-size:14px}.participer-form .join-field{margin-bottom:28px}.participer-form .join-field>label,.participer-form .join-interest-fieldset>legend{font-size:13px;margin-bottom:12px}.participer-form .join-field input,.participer-form .join-field select,.participer-form .join-field textarea{background:#fffef9;border-color:#c9c0af;min-height:58px;font-size:16px;padding:17px 16px}.participer-form .join-field textarea{min-height:170px}.participer-form .join-help{font-size:11px}.participer-form .join-interest-options label{font-size:12px;padding:12px 14px}.participer-form .join-primary{font-size:14px;padding:18px 25px;min-height:58px;min-width:180px;background:#243d2c;border-color:#243d2c}.participer-form .join-primary:hover{background:#3a543b}.participer-form .join-consent{font-size:12px}.participer-form .join-message-meta{font-size:10px}.participer-form .join-selected-profile{padding:16px;font-size:12px;background:#eee8db}.participer-form .join-footnote{font-size:11px;line-height:1.9}.participer-form .join-contact-pair{grid-template-columns:1fr 1fr;gap:18px}
@media(min-width:1700px){.memories-editorial{padding-left:max(6.1%,calc((100vw - 1600px)/2));padding-right:max(6.1%,calc((100vw - 1600px)/2))}.moment-panel{height:730px}}
@media(max-width:1050px){.moment-panel{height:550px}.moment-discover{padding:28px 21px}.moment-tag{font-size:8px;left:20px;top:20px}.moment-arrow{top:63px;right:20px}.moment-discover>strong{font-size:31px}.invitation-body{padding:70px 5% 50px}.invitation-form{padding:35px}.invitation-form .join-profiles{gap:12px}.invitation-form .join-profile{padding:22px 17px}.invitation-intro{gap:6%}.participer-layout{padding:45px 4% 75px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.participer-form{padding:35px 30px}.participer-story{padding:32px 25px 18px}.participer-form .join-progress{gap:10px}.participer-form .join-progress li{font-size:10px}.participer-form .join-contact-pair{display:block}.participer-story h1{font-size:44px}.participer-photo figcaption{left:25px}}
@media(max-width:760px){.hero .hero-theme-title{font-size:clamp(40px,10.8vw,76px);line-height:1.1;margin:23px 0}.hero .hero-theme-title em{font-size:1.08em;line-height:1.08}.hero .hero-edition{font-size:8px;letter-spacing:.12em}.hero .hero-edition span{margin:0 5px}.hero .hero-content{bottom:18%}.hero .hero-description{font-size:12px;max-width:350px}.hero .hero-shade{background:linear-gradient(90deg,#0b100ec4,#0d100b40),linear-gradient(0deg,#0d0a08eb,transparent 85%,#0d0a0866)}.resonance-word-one{left:0;top:0;padding:16px;transform:rotate(-6deg)}.resonance-word-two{right:0;bottom:8%;padding:17px;transform:rotate(5deg)}.resonance-word>span{font-size:6px}.resonance-word>strong{font-size:24px}.resonance-word-one i{width:65px;height:13px;margin-top:12px}.resonance-frame figcaption{right:22%;bottom:14%}
.memories-editorial{padding:65px 6% 70px}.memories-editorial>.section-label{margin-bottom:30px}.memories-editorial .memories-heading{display:block;margin-bottom:30px}.memories-editorial h2{font-size:clamp(42px,10.8vw,66px)}.memories-editorial .memories-heading p{font-size:12px;margin-top:24px}.moments-panels,.moments-active-1,.moments-active-2{grid-template-columns:1fr;gap:20px}.moment-panel{height:460px}.moment-panel:nth-child(2),.moment-panel:nth-child(3){margin:0}.moment-discover{padding:28px}.moment-discover>strong{font-size:37px;max-width:300px}.moment-story,.moment-panel.is-active .moment-story{max-height:100px;opacity:1;margin-top:16px;font-size:12px}.moment-tag{font-size:8px;left:25px;top:25px}.moment-arrow{top:25px;right:25px}.moment-panel>img{filter:none;transform:none}.moment-panel:nth-child(3)>img{object-position:54% center}.invitation-stage{height:680px;min-height:0}.invitation-stage-copy{min-height:0;padding:45px 6%;justify-content:flex-end}.invitation-photographs{grid-template-columns:1fr 1fr}.invitation-photographs img{object-position:50% 30%}.invitation-photographs img:last-child{object-position:49% 33%}.invitation-stage-copy>.section-label{top:28px;left:6%;font-size:8px;letter-spacing:.08em}.invitation-signature{right:12px;top:95px;font-size:6px}.invitation-stage h2{font-size:clamp(44px,10.5vw,70px)}.invitation-kicker{font-size:8px;line-height:1.9;letter-spacing:.1em;max-width:240px;margin-bottom:18px}.invitation-enter{font-size:8px;gap:25px;margin-top:18px}.invitation-body{padding:55px 6% 40px;scroll-margin-top:30px}.invitation-intro{display:block;margin-bottom:35px}.invitation-intro h2{font-size:clamp(42px,10.3vw,66px)}.invitation-intro-copy{margin-top:26px}.invitation-intro-copy p{font-size:13px}.invitation-intro-copy>a{font-size:11px;gap:12px}.invitation-form{padding:27px 20px;margin:0 -3%;box-shadow:none}.invitation-form .join-progress{gap:8px;margin-bottom:27px}.invitation-form .join-progress li{font-size:9px;gap:5px;padding-bottom:14px}.invitation-form .join-progress li>span:first-child{font-size:8px}.invitation-form .join-step-heading h3{font-size:32px}.invitation-form .join-step-heading>p:last-child{font-size:12px}.invitation-form .join-profiles{grid-template-columns:1fr;gap:11px}.invitation-form .join-profile,.invitation-form .join-profile:last-child{min-height:100px;padding:22px 18px}.invitation-form .join-profile-text strong{font-size:15px;margin-bottom:6px}.invitation-form .join-profile-text>span{font-size:12px}.invitation-direct{gap:18px;font-size:11px;justify-content:space-between}.invitation-direct>span{flex-basis:100%;margin:0}.invitation-form .join-footnote{font-size:10px}
.participer-layout{display:block;padding:25px 5% 55px}.participer-intro{position:relative;top:auto;margin:0}.participer-story{padding:30px 25px}.participer-story h1{font-size:clamp(43px,10.5vw,62px);margin:20px 0}.participer-story>p:not(:first-child){font-size:12px}.participer-story .participer-chosen{margin-top:20px}.participer-photo{height:240px}.participer-photo>img{object-position:40% 37%}.participer-photo figcaption{font-size:19px;left:25px;bottom:23px}.participer-form{padding:32px 22px;border:1px solid #d6cebf;border-top:0;min-height:0}.participer-form .join-step-heading h3{font-size:32px}.participer-form .join-step-heading>p:last-child{font-size:13px}.participer-form .join-progress{gap:8px;margin-bottom:30px}.participer-form .join-progress li{font-size:9px;gap:5px}.participer-form .join-field>label{font-size:12px}.participer-form .join-field input,.participer-form .join-field select,.participer-form .join-field textarea{padding:15px 13px;font-size:16px}.participer-form .join-message-meta{font-size:9px}.participer-form .join-primary{min-width:155px;padding:17px 19px;font-size:13px}.participer-form .join-interest-options label{font-size:11px}.participer-form .join-footnote{font-size:10px}}
@media(max-width:360px){.hero .hero-theme-title{font-size:37px}.hero .hero-edition{font-size:7px}.invitation-form{padding:24px 15px}.invitation-stage h2{font-size:39px}.invitation-direct{flex-direction:column;align-items:flex-start}.participer-form{padding:28px 17px}.participer-form .join-primary{min-width:140px;font-size:12px}.resonance-word>strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.resonance-word{transform:none}.moments-panels,.moment-panel>img,.moment-story,.invitation-form .join-profile{transition:none}.invitation-form .join-profile:hover{transform:none}.moment-panel>img{transform:none}}

/* Signature d’ouverture : logo original, cordes et profondeur, sans image générée. */
.festival-loader{position:fixed;inset:0;z-index:9998;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 45%,#27372b,#0e1712 66%);color:#eee2c7;overflow:hidden;clip-path:inset(0);transition:clip-path .85s cubic-bezier(.76,0,.24,1),opacity .65s ease;animation:loader-failsafe 3.6s steps(1,end) forwards}
.festival-loader.is-leaving{clip-path:inset(0 0 100% 0);pointer-events:none}.loader-signature{position:relative;text-align:center;perspective:900px}.loader-signature>img{width:170px;height:185px;object-fit:contain;margin:0 auto 28px;filter:brightness(0) invert(1);animation:loader-violin 1.5s cubic-bezier(.16,1,.3,1) both}.loader-signature>p{font-size:11px;letter-spacing:.24em;line-height:1.9;margin:0}.loader-signature strong{font-size:14px;font-weight:500;letter-spacing:.17em}.loader-signature>span{display:block;font-size:7px;letter-spacing:.22em;color:#aeab93;margin-top:30px}.loader-orbit{position:absolute;width:360px;height:360px;border:1px solid #c1a77333;border-radius:50%;left:50%;top:-72px;transform:translateX(-50%) rotateX(60deg) rotateZ(-30deg);animation:loader-orbit 2.6s ease-in-out both;pointer-events:none}.loader-orbit::after{content:'';position:absolute;inset:17px;border:1px solid #b8a06d20;border-radius:50%}.loader-strings{position:absolute;inset:0;perspective:800px;opacity:.6;pointer-events:none}.loader-strings>i{position:absolute;left:calc(24% + var(--string)*10%);width:1px;top:-20%;height:140%;background:linear-gradient(transparent,#b8a16a77,transparent);transform-origin:50% 50%;animation:loader-string 1.8s ease-in-out infinite;animation-delay:calc(var(--string)*-.13s)}.loader-skip{position:absolute;bottom:28px;right:6%;background:transparent;border:0;border-bottom:1px solid #b7a47b70;color:#d0c6ae;padding:10px 0;font-size:10px;letter-spacing:.08em;cursor:pointer}.loader-skip span{margin-left:25px}
@keyframes loader-violin{0%{opacity:0;transform:rotateY(-55deg) rotateZ(-10deg) scale(.83);clip-path:inset(100% 0 0)}65%{opacity:1;clip-path:inset(0)}100%{opacity:1;transform:rotateY(0) rotateZ(0) scale(1);clip-path:inset(0)}}
@keyframes loader-string{0%,100%{transform:rotate(-18deg) scaleX(1);opacity:.25}50%{transform:rotate(-14deg) translateX(14px) scaleX(1.6);opacity:.85}}
@keyframes loader-orbit{from{transform:translateX(-50%) rotateX(65deg) rotateZ(-85deg) scale(.7);opacity:0}to{transform:translateX(-50%) rotateX(35deg) rotateZ(30deg) scale(1);opacity:1}}
@keyframes loader-failsafe{to{visibility:hidden;pointer-events:none}}
.resonance-chapters h3 button{font:inherit;letter-spacing:inherit;text-align:left;color:inherit;background:transparent;border:0;padding:3px 0;cursor:pointer}.resonance-chapters h3 button:focus-visible{outline:1px solid #ceb678;outline-offset:5px}.resonance-frame{clip-path:inset(0 0 5% 0);transition:opacity 1s ease,clip-path 1.3s cubic-bezier(.2,.65,.25,1)}.resonance-frame.is-active{clip-path:inset(0)}
.festival-share{position:relative;margin-left:auto;margin-right:30px;font-size:11px}.festival-share>summary{cursor:pointer;list-style:none;padding:12px 0;border-bottom:1px solid #a89a7a}.festival-share>summary::-webkit-details-marker{display:none}.festival-share>summary>span{margin-left:18px}.share-panel{position:absolute;z-index:40;bottom:50px;right:0;width:345px;padding:27px;background:#f4f0e7;color:#262b23;box-shadow:0 12px 50px #0004;border:1px solid #c8b78e}.share-panel>p{font:400 25px/1.3 'Playfair Display',Georgia,serif;margin:0 0 20px}.share-hashtags{display:block;font-size:11px;line-height:1.8;color:#756440}.share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.share-actions button{font-size:11px;padding:11px 13px;border:1px solid #a59880;background:transparent;color:#263328;cursor:pointer}.share-actions button:first-child{background:#22382a;border-color:#22382a;color:#fff}.share-panel>a{display:block;font-size:10px;margin-top:18px;text-decoration:underline;overflow-wrap:anywhere}.share-status{display:block;font-size:10px;line-height:1.7;margin-top:12px;color:#36563c}
@media(max-width:760px){.loader-signature>img{width:145px;height:160px}.loader-signature>p{font-size:9px}.loader-signature strong{font-size:12px}.loader-orbit{width:280px;height:280px;top:-40px}.loader-skip{font-size:9px;bottom:24px}.footer-main{flex-wrap:wrap}.festival-share{order:3;width:100%;margin:10px 0 0}.festival-share>summary{display:flex;justify-content:space-between}.share-panel{width:100%;bottom:48px}.invitation-stage h2{font-size:clamp(40px,9.7vw,64px)}.memories-editorial h2{font-size:clamp(38px,9.4vw,62px)}}
@media(prefers-reduced-motion:reduce){.festival-loader{display:none!important}.resonance-frame{transition:none;clip-path:none}}

.usf-standard{max-width:1000px;margin:0 auto;padding:80px 6%;min-height:70vh}.usf-standard h1{font:400 52px/1.1 Georgia,serif}.usf-standard p{line-height:1.8}.usf-standard a{text-decoration:underline}.usf-standard-nav{padding:24px 6%;background:#24231f;color:white}
