/*
Theme Name: Marathon du Muscadet
Theme URI: https://studio-thil.com
Author: Studio Thil
Description: Conversion fidèle du site du Marathon du Muscadet. Sections éditables dans Gutenberg, médias et réglages natifs.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: muscadet
*/
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--wine:#1d1d1b;--lime:#f3e600;--paper:#ffffff;--ink:#1d1d1b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #1d1d1b;outline-offset:6px}header{height:94px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:white;position:sticky;top:0;z-index:10;border-bottom:1px solid #eee}.brand{font-family:'Barlow Condensed',Impact,sans-serif;font-size:29px;font-weight:800;line-height:1;letter-spacing:-.5px}.brand span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:12px;letter-spacing:3px;margin-top:9px;font-weight:700}nav{display:flex;gap:32px;font-size:14px;font-weight:600}nav a:hover{color:#1d1d1b}.small-button{font-size:14px;border:1px solid #ddd;padding:11px 17px;border-radius:4px;font-weight:600}.hero{min-height:660px;position:relative;overflow:hidden;background:var(--wine);color:white}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,29,27,.85),rgba(29,29,27,.24)),url('muscadet.jpg') center 60%/cover}.hero-content{position:relative;padding:64px 7% 72px;max-width:1100px}.eyebrow{font-size:13px;letter-spacing:1.6px;font-weight:700;display:flex;align-items:center;gap:15px}.tag{background:var(--lime);color:var(--wine);padding:6px 10px;letter-spacing:1px}h1,h2,h3,p{margin:0}h1,h2{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:800;line-height:.96;letter-spacing:-1px}h1{font-size:clamp(68px,8vw,116px);margin:30px 0 23px}em{font-style:normal;color:var(--lime)}.hero-content p{font-size:19px;line-height:1.5}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.button{padding:15px 24px;display:inline-block;font-size:15px;font-weight:700;border-radius:3px}.lime{background:var(--lime);color:var(--wine)}.button:hover{background:#f3e600}.hero-actions>span{font-size:14px}.hero-stamp{position:absolute;right:7%;bottom:75px;display:flex;flex-direction:column;border:1px solid #ffffff70;padding:20px 25px;transform:rotate(-6deg);background:#1d1d1b55;backdrop-filter:blur(8px)}.hero-stamp strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:80px;line-height:1}.hero-stamp strong span{font-size:40px}.hero-stamp>span{font-size:12px;letter-spacing:1px}.photo-credit{position:absolute;right:20px;bottom:12px;font-size:12px;color:#fff}.ribbon{background:var(--lime);color:var(--wine);padding:16px 7%;display:flex;justify-content:space-between;gap:25px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:32px;font-weight:800}.section{padding:92px 7%}.intro{display:grid;grid-template-columns:1fr 1.4fr;gap:9%}.dark{color:#1d1d1b}h2{font-size:clamp(46px,5vw,70px);margin-top:24px}h2 em{color:#1d1d1b}.lead{font-size:25px;font-weight:500;line-height:1.45;margin-bottom:22px}.intro-right>p:not(.lead){color:#50504b;max-width:670px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;border-top:1px solid #ddd;padding-top:26px}.values span{font-size:13px;color:#1d1d1b}.values h3{font-size:19px;margin:9px 0}.values p{font-size:14px;line-height:1.5;color:#50504b}.course{background:var(--wine);color:white}.course-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end}.course h2 em{color:var(--lime)}.course-heading>p{max-width:370px;color:#ffffff}.course-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;margin-top:48px}.distance{background:var(--lime);color:var(--wine);padding:35px;display:flex;flex-direction:column;justify-content:space-between;min-height:370px}.distance strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(100px,14vw,180px);line-height:1;letter-spacing:-5px}.distance strong span{font-size:.46em;letter-spacing:-1px}.distance-bottom{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;border-top:1px solid #1d1d1b50;padding-top:18px;font-weight:700}.course-details{display:grid;gap:22px}.course-details>div{border-bottom:1px solid #ffffff30;padding-bottom:22px}.course-details>div:last-child{border:0}.course-details span{display:block;color:#ffffff;font-size:13px}.course-details strong{display:block;font-size:23px;margin:5px 0}.course-details p{font-size:15px;color:#ffffff}.spring{display:grid;grid-template-columns:1.1fr 1fr;background:#f0f0f0}.spring img{width:100%;height:100%;min-height:500px;object-fit:cover}.spring>div{padding:65px 14% 65px 12%}.spring .eyebrow{color:#1d1d1b}.spring h2{font-size:78px}.spring p{margin-top:28px;color:#50504b}.practical{display:grid;grid-template-columns:1fr 1.2fr;gap:9%}.practical>div>p{margin-top:25px;color:#50504b;max-width:350px}.faq details{border-bottom:1px solid #ddd;padding:22px 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;font-size:18px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;color:#1d1d1b;font-weight:400}.faq details[open] summary:after{content:'−'}.faq p{padding:16px 25px 0 0;color:#50504b;font-size:15px}.faq a{text-decoration:underline}.signup{background:var(--lime);color:var(--wine);padding:65px 7%}.signup h2{font-size:clamp(65px,9vw,120px);margin:20px 0 30px}.signup h2 em{color:var(--wine);-webkit-text-stroke:1px var(--wine);color:transparent}.signup-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.signup-bottom p{font-size:18px}.status{border:1px solid var(--wine);padding:18px 24px;font-size:14px;font-weight:700;letter-spacing:1px}footer{background:#1d1d1b;color:white;padding:42px 7%;display:flex;justify-content:space-between;gap:30px;align-items:center}footer p{font-size:14px}footer small{font-size:12px;color:#ffffff;max-width:370px} @media(min-width:1500px){.hero-content{max-width:1400px}.hero{min-height:760px}}@media(max-width:900px){header{height:82px}nav{gap:18px}.hero-stamp{right:5%;bottom:55px}.intro,.practical{gap:6%}.course-grid{gap:5%}.distance{padding:24px}.spring>div{padding:50px 9%}.spring h2{font-size:65px}footer{flex-wrap:wrap}}@media(max-width:650px){html{scroll-padding-top:75px}header{padding:0 5%;height:75px;gap:12px}header .brand{font-size:23px}header .brand span{font-size:10px;letter-spacing:2px}nav{display:none}.small-button{font-size:12px;padding:9px 10px}.hero{min-height:640px}.hero-content{padding:40px 6% 120px}.eyebrow{font-size:12px;letter-spacing:.7px;gap:10px;flex-wrap:wrap}h1{font-size:70px;letter-spacing:-.8px}.hero-content p{font-size:17px}.hero-actions{gap:15px;align-items:flex-start;flex-direction:column}.hero-stamp{right:6%;bottom:32px;padding:11px 16px}.hero-stamp strong{font-size:46px}.hero-stamp strong span{font-size:24px}.hero-stamp>span{font-size:10px}.photo-credit{font-size:10px;right:12px;bottom:8px}.ribbon{font-size:20px;gap:12px;padding:15px 5%;flex-wrap:wrap}.section{padding:58px 6%}.intro,.practical{grid-template-columns:1fr;gap:35px}h2{font-size:55px}.lead{font-size:22px}.values{gap:17px}.values h3{font-size:17px}.values p{font-size:14px}.course-heading{display:block}.course-heading>p{margin-top:25px}.course-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.distance{min-height:300px}.distance strong{font-size:145px}.spring{grid-template-columns:1fr}.spring img{min-height:0;height:260px}.spring>div{padding:45px 6%}.spring h2{font-size:65px}.signup{padding:48px 6%}.signup h2{font-size:72px}.signup-bottom{align-items:flex-start;flex-direction:column;gap:28px}footer{padding:35px 6%;flex-direction:column;align-items:flex-start;gap:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Navigation et pages de l’événement */
body{font-size:18px}button{font:inherit;cursor:pointer}.small-button{background:#fff;color:var(--wine)}header{padding:0 4%;gap:20px}header nav{gap:23px;font-size:15px}header .brand{flex-shrink:0}.race-menu{position:relative}.race-menu summary{list-style:none;cursor:pointer;font-weight:600}.race-menu summary:after{content:'⌄';margin-left:8px}.race-menu summary::-webkit-details-marker{display:none}.race-menu>div{position:absolute;top:38px;left:-20px;width:245px;display:grid;background:#fff;box-shadow:0 15px 40px #1d1d1b20;border:1px solid #eee;padding:10px;z-index:30}.race-menu a{padding:12px;color:var(--ink)}.race-menu a:hover{background:#f5f5f1}.menu-toggle{display:none}button:focus-visible{outline:3px solid #1d1d1b;outline-offset:5px}.event-name{font-size:18px;letter-spacing:2px;font-weight:700;margin-top:25px}.hero h1{margin-top:16px}.race-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}.race-card{display:flex;flex-direction:column;align-items:flex-start;min-height:330px;padding:27px 23px;border:1px solid #d8d8d2;background:white;transition:transform .25s,background .25s}.race-card:hover{transform:translateY(-6px);background:var(--lime)}.card-number{font-size:14px;color:#1d1d1b}.race-card>strong{font-size:24px;line-height:1.25;margin-top:25px}.card-distance{font-family:'Barlow Condensed',Impact,sans-serif;font-size:50px;color:var(--wine);margin-top:15px;line-height:1.2}.card-distance small{font-family:'DM Sans',Arial,sans-serif;font-size:17px}.race-card p{font-size:16px;line-height:1.5;margin-top:15px}.card-link{font-size:15px;font-weight:700;margin-top:auto;padding-top:28px;text-decoration:underline;text-underline-offset:5px}.partner-band{padding:60px 7%;display:grid;grid-template-columns:1fr 1.2fr;gap:60px;border-top:1px solid #ddd}.partner-band h2{font-size:50px}.partner-band small{display:block;margin-top:20px;font-size:14px;color:#50504b}.text-link{text-decoration:underline;text-underline-offset:5px;display:inline-block;font-weight:600;margin-top:20px}.motion-ribbon{overflow:hidden;display:block;padding:18px 0}.motion-ribbon>div{white-space:nowrap;width:max-content;animation:ribbon-run 28s linear infinite;will-change:transform}@keyframes ribbon-run{to{transform:translateX(-50%)}}.motion-ribbon:hover>div{animation-play-state:paused}.page-hero{background:var(--wine);color:white;padding:70px 7% 80px}.page-hero h1{font-size:clamp(64px,7vw,100px);margin:25px 0}.page-hero p{font-size:22px;max-width:730px}.page-hero .eyebrow{color:var(--lime)}.race-facts{display:grid;grid-template-columns:repeat(4,1fr);background:var(--lime);color:var(--wine);padding:30px 7%;gap:20px}.race-facts>div{border-right:1px solid #1d1d1b35;padding-right:20px}.race-facts>div:last-child{border:0}.race-facts span{display:block;font-size:15px}.race-facts strong{font-size:28px;display:block}.race-body{display:grid;grid-template-columns:1.5fr 1fr;gap:9%;align-items:start}.race-body .lead{margin:30px 0 20px;font-size:23px}.race-body .button{margin-top:25px}.race-summary{padding:32px;background:#f5f5f1;border-top:4px solid #1d1d1b}.race-summary h3{font-size:27px;margin:20px 0}.race-summary p{margin:10px 0}.map-section{padding-top:20px}.map-section>p{margin-top:25px;max-width:800px}.map-wrap{margin-top:30px;border:1px solid #ddd}.map-wrap iframe{display:block;width:100%;height:410px;border:0}.map-caption{font-size:13px;letter-spacing:1px;padding:14px;background:#f5f5f1;font-weight:700;color:var(--wine)}.map-section .map-note{font-size:15px;color:#50504b}.route-slot{display:flex;gap:20px;flex-wrap:wrap}.route-slot iframe{width:100%;height:440px;margin-top:25px;border:1px solid #ddd}.bottom-cta{background:var(--lime);padding:60px 7%;display:flex;justify-content:space-between;gap:40px;align-items:center;color:var(--wine)}.bottom-cta h2{margin:0}.bottom-cta h2 em{color:var(--wine)}.bottom-cta p{max-width:650px;margin-top:25px}.bottom-cta .button{background:var(--wine);color:white;flex-shrink:0}.section-nav{display:flex;justify-content:flex-start;gap:30px;flex-wrap:wrap;padding:25px 7%;border-bottom:1px solid #ddd;font-size:17px;font-weight:600}.section-nav a:hover{text-decoration:underline}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.info-grid.two{grid-template-columns:repeat(2,1fr)}.info-card{border-top:2px solid #1d1d1b;padding:25px 0}.info-card h3{font-size:25px;margin-bottom:16px}.info-card p{font-size:18px;color:#50504b}.info-card .button{margin-top:22px}.soft-section{background:#f5f5f1}.faq summary{font-size:20px}.faq p{font-size:18px}.practical>div>.button{margin-top:24px}.narrow{max-width:800px;margin-top:30px}.partner-placeholder{border:1px dashed #77776d;color:#50504b;padding:35px;margin-top:35px;font-size:18px}.socials{display:flex;flex-wrap:wrap;gap:15px;max-width:250px}.socials strong{width:100%;font-size:15px}.socials button{border:0;padding:0;background:none;color:white;text-decoration:underline;font-size:15px}dialog{border:0;background:white;color:var(--ink);max-width:540px;width:calc(100% - 40px);padding:40px;border-radius:5px;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#1d1d1bb0}dialog h2{font-size:40px;margin:0 25px 20px 0}dialog p{margin:20px 0 30px;font-size:18px}.close-dialog{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px;line-height:1.2}.reveal-ready{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}@media(min-width:901px) and (max-width:1100px){header{padding:0 3%;gap:15px}header nav{gap:15px;font-size:14px}header .small-button{font-size:13px;padding:10px}.race-card{padding:22px 17px}.race-card>strong{font-size:22px}}@media(max-width:900px){header{height:auto;min-height:82px;flex-wrap:wrap;padding:15px 5%}.menu-toggle{display:block;background:none;border:1px solid #ccc;border-radius:3px;padding:7px 15px;color:var(--wine);margin-left:auto;font-size:16px}header nav{display:none;width:100%;order:4;align-items:stretch;gap:0;padding:5px 0;flex-direction:column;font-size:18px}header nav.is-open{display:flex}header nav>a,.race-menu summary{padding:12px 0}.race-menu>div{position:static;box-shadow:none;border:0;border-left:2px solid var(--lime);width:100%;margin:0 0 10px;padding-left:20px}.race-cards{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}.race-body{gap:5%}.race-facts strong{font-size:23px}.bottom-cta{align-items:flex-start;flex-direction:column}}@media(max-width:650px){header .small-button{display:none}.race-cards{gap:14px}.race-card{min-height:300px;padding:20px 15px}.race-card>strong{font-size:22px}.card-distance{font-size:44px}.card-link{font-size:14px}.partner-band{padding:45px 6%;grid-template-columns:1fr;gap:25px}.page-hero{padding:45px 6%}.page-hero h1{font-size:62px;overflow-wrap:break-word}.page-hero p{font-size:20px}.race-facts{grid-template-columns:1fr 1fr;padding:25px 6%;gap:25px}.race-facts>div:nth-child(2){border:0}.race-body{grid-template-columns:1fr;gap:30px}.race-summary{margin-top:10px}.map-wrap iframe{height:330px}.map-caption{font-size:12px}.info-grid,.info-grid.two{grid-template-columns:1fr;gap:5px}.section-nav{gap:15px 25px;padding:20px 6%;font-size:16px}.bottom-cta{padding:45px 6%}.bottom-cta h2{font-size:50px}.event-name{font-size:15px}.socials{max-width:none}.race-body .lead{font-size:22px}.hero-stamp>span{font-size:11px}}@media(prefers-reduced-motion:reduce){.motion-ribbon>div{animation:none;white-space:normal;width:auto;padding:0 6%}.reveal-ready{opacity:1;transform:none;transition:none}.race-card{transition:none}}
/* Charte officielle : jaune #f3e600, noir #1d1d1b, blanc. */
:root{--wine:#1d1d1b;--lime:#f3e600;--paper:#fff;--ink:#1d1d1b;--font-title:'DIN Condensed','Barlow Condensed','Arial Narrow',Impact,sans-serif;--font-body:'Avenir Book',Avenir,'DM Sans',Arial,sans-serif;--font-label:Menlo,Monaco,'Courier New',monospace}
body,button{font-family:var(--font-body)}h1,h2,.brand,.distance strong,.hero-stamp strong,.ribbon,.card-distance{font-family:var(--font-title)}h1,h2{text-transform:uppercase;font-weight:700;letter-spacing:0;line-height:1.02}h3{font-family:var(--font-label);font-size:23px}.eyebrow,.tag,.event-name,.hero-tagline,.card-number,.card-link,.distance-bottom,.hero-stamp>span,.race-facts span,.map-caption,.status,.photo-credit{font-family:var(--font-label)}.eyebrow{letter-spacing:.5px;font-size:14px}.brand{display:block;line-height:0;padding:15px 20px;flex-shrink:0}.brand img{width:150px;height:auto;display:block}header{min-height:122px;height:auto;padding:0 3%;gap:20px;border-bottom:1px solid #deded8}header nav{gap:22px}header .small-button{background:var(--wine);color:white;border:1px solid var(--wine);font-size:16px;font-weight:700;padding:13px 19px;border-radius:0}.small-button:hover{background:var(--lime);color:var(--wine)}.race-menu>div{border:1px solid #ddd}.race-menu a:hover{background:var(--lime)}nav a:hover{text-decoration:underline;text-underline-offset:6px}.hero{min-height:685px;background:var(--wine)}.hero-photo{inset:0 0 0 32%;background-image:linear-gradient(90deg,#1d1d1b 0%,transparent 40%),url('assets/runners.webp');background-position:center,center 57%;background-repeat:no-repeat;background-size:cover,cover;opacity:.9}.hero-content{max-width:1000px;padding:55px 7% 90px}.hero h1{font-size:clamp(68px,7.6vw,112px);line-height:.98;max-width:750px;color:white;margin:20px 0 24px}.hero-tagline{display:block;font-size:20px;letter-spacing:1.5px;line-height:1.5;color:var(--lime);margin-top:22px}.hero-content p{font-size:22px}.event-name{font-size:16px;color:var(--lime);letter-spacing:.7px;margin-top:25px}.hero-actions{position:relative;z-index:2}.hero-actions>span{font-size:17px}.hero-leaf{position:absolute;right:-25px;top:35px;width:300px;height:auto;opacity:.94;pointer-events:none}.hero-stamp{z-index:1;backdrop-filter:none;background:var(--lime);color:var(--wine);border:0;transform:none;bottom:55px;right:7%;min-width:230px}.hero-stamp strong{font-size:74px}.hero-stamp>span{font-size:13px}.hero .tag{font-size:13px;padding:8px 11px}.hero .eyebrow{color:var(--lime)}.motion-ribbon{font-size:34px;background:var(--lime)}.intro{grid-template-columns:1.15fr 1.25fr;gap:7%;position:relative}.intro h2{font-size:clamp(43px,4.6vw,65px)}.intro h2 em{color:var(--wine)}h2 em{color:var(--wine)}.race-card{border:1px solid var(--wine);border-radius:0}.race-card:hover{background:var(--lime);transform:translateY(-4px)}.race-card>strong{font-family:var(--font-title);font-size:31px;font-weight:700;text-transform:uppercase}.card-distance{font-weight:700}.card-link{font-size:14px}.course{background:var(--wine)}.course h2 em{color:var(--lime)}.spring{background:#f4f4f0}.spring>div{position:relative;overflow:hidden}.spring>div:after{content:'';position:absolute;right:-85px;bottom:-90px;width:240px;height:265px;background:url('assets/leaf-black.svg') center/contain no-repeat;pointer-events:none;opacity:.09}.spring img{filter:grayscale(1)}.spring h2{font-size:78px}.spring h2 em{color:var(--wine)}.partner-band{background:white}.page-hero{background:var(--wine);position:relative;overflow:hidden;padding-right:26%}.page-hero h1,.page-hero p,.page-hero .eyebrow{position:relative;z-index:1}.page-hero h1{font-size:clamp(60px,7vw,98px)}.page-hero h1 em{color:var(--lime)}.page-leaf{position:absolute;right:-45px;top:25px;width:300px;opacity:.85;pointer-events:none}.race-facts{background:var(--lime)}.race-facts strong{font-family:var(--font-title);font-size:34px;text-transform:uppercase;font-weight:700}.race-summary{background:#f4f4f0;border-top:5px solid var(--lime)}.race-summary h3{font-family:var(--font-title);font-size:38px;text-transform:uppercase}.info-card{border-top:2px solid var(--wine)}.info-card h3{font-size:23px}.soft-section{background:#f4f4f0}.button{border:0;border-radius:0;font-size:17px;min-height:50px}.lime{color:var(--wine);background:var(--lime)}.button:hover{box-shadow:inset 0 0 0 2px var(--wine)}.button:focus-visible,.small-button:focus-visible{outline-color:#77776d}.faq summary:after{color:var(--wine)}.faq p{font-size:18px}.map-caption{background:var(--wine);color:white}.bottom-cta{background:var(--lime);color:var(--wine)}.bottom-cta h2 em{color:var(--wine)}footer{background:var(--wine);color:white;padding:30px 5%;gap:35px}footer .brand{padding:15px 20px}footer .brand img{width:180px}footer small{color:#e0e0d8}dialog{border-radius:0}dialog::backdrop{background:#1d1d1bbf}.close-dialog{color:var(--wine)}.hero-leaf,.page-leaf{contain:layout paint}a:focus-visible,summary:focus-visible,button:focus-visible{outline-color:#77776d}
@media(min-width:1500px){.hero{min-height:740px}.hero-content{max-width:1200px}.hero h1{font-size:120px}.hero-leaf{width:370px}}
@media(min-width:901px) and (max-width:1150px){header{gap:12px;padding:0 2%}header .brand{padding:15px 12px}header .brand img{width:120px}header nav{font-size:14px;gap:15px}header .small-button{padding:11px 14px;font-size:14px}.hero-content{padding-left:6%}.hero h1{font-size:90px}.hero-leaf{width:235px}.hero-stamp{right:5%;min-width:200px}}
@media(max-width:900px){header{min-height:106px;padding:0 4%;gap:15px}.brand{padding:14px 18px}.brand img{width:125px}header nav{font-size:18px;padding:5px 0 20px}.menu-toggle{font-family:var(--font-label);border:1px solid var(--wine);border-radius:0}.hero h1{font-size:90px}.hero-leaf{width:190px;right:-20px;top:30px}.hero-stamp{right:6%;bottom:30px;min-width:195px}.hero-photo{left:25%}.hero-content{padding-bottom:150px}.intro{grid-template-columns:1fr;gap:35px}.page-hero{padding-right:24%}.page-leaf{width:210px;opacity:.6;right:-55px}.info-card h3{font-size:22px}}
@media(max-width:650px){html{scroll-padding-top:110px}header{min-height:96px;padding:0 4%;gap:10px}header .brand{padding:12px 16px}header .brand img{width:108px}.hero{min-height:705px}.hero-photo{inset:0;opacity:.55;background-image:linear-gradient(90deg,#1d1d1b 0%,#1d1d1b55 100%),url('assets/runners.webp');background-position:center,64% center}.hero-content{padding:35px 6% 165px}.hero .eyebrow{max-width:88%}.hero .tag{font-size:12px;max-width:250px}.event-name{font-size:14px;max-width:80%;margin-top:28px}.hero h1{font-size:clamp(56px,12vw,78px);line-height:1.02;margin-top:24px}.hero-tagline{font-size:15px;letter-spacing:.5px;margin-top:20px}.hero-content p{font-size:20px}.hero-actions{margin-top:27px;gap:14px}.hero-actions>span{font-size:16px}.hero-leaf{width:130px;right:-48px;top:70px;opacity:.6}.hero-stamp{padding:12px 18px;bottom:25px;right:6%;min-width:185px}.hero-stamp strong{font-size:45px}.hero-stamp>span{font-size:11px}.motion-ribbon{font-size:26px}.intro h2{font-size:47px}.race-card>strong{font-size:27px}.race-cards{gap:14px}.card-link{font-size:12px}.page-hero{padding:40px 6% 48px}.page-hero h1{font-size:60px;max-width:100%}.page-leaf{width:170px;opacity:.15;right:-65px;top:40px}.page-hero p{font-size:20px}.race-facts strong{font-size:29px}.race-facts span{font-size:14px}.info-card h3{font-size:22px}footer .brand{padding:15px 20px}footer .brand img{width:150px}.bottom-cta h2{font-size:50px}.map-caption{font-size:12px}.socials button{font-size:17px}.socials strong{font-family:var(--font-label)}}
@media(prefers-reduced-motion:reduce){.hero-leaf,.page-leaf{transform:none}.motion-ribbon>div{animation:none}}
/* Photothèque officielle des Vins de Nantes */
.territory-panorama{position:relative;margin:0;overflow:hidden;background:var(--wine);color:white;isolation:isolate}.territory-panorama>img{display:block;width:100%;height:470px;object-fit:cover;object-position:center 58%}.territory-panorama:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1d1d1b80,transparent 75%);z-index:0;pointer-events:none}.panorama-title{position:absolute;top:55px;left:7%;font-family:var(--font-title);font-size:clamp(50px,6vw,84px);font-weight:700;line-height:1.02;z-index:1}.territory-panorama figcaption,.spring-photo figcaption{display:flex;justify-content:space-between;gap:18px;padding:12px 20px;font-size:12px;line-height:1.5;font-family:var(--font-label);background:var(--wine);color:white;position:relative;z-index:1}.spring-photo{position:relative;display:flex;flex-direction:column;margin:0;min-width:0;background:var(--wine)}.spring .spring-photo img{filter:none;display:block;flex:1;width:100%;height:500px;min-height:0;object-fit:cover;object-position:center}.spring-photo figcaption{flex-wrap:wrap}.page-hero.has-photo{isolation:isolate;min-height:350px;padding-bottom:65px;background:var(--wine)}.page-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-3;filter:brightness(.77)}.page-hero.has-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1d1d1bed 0%,#1d1d1bb3 42%,#1d1d1b30 100%);z-index:-2}.page-hero.has-photo .page-leaf{opacity:.72;z-index:-1}.page-hero.has-photo .hero-photo-credit{position:absolute;right:24px;bottom:15px;margin:0;max-width:calc(100% - 48px);font-family:var(--font-label);font-size:12px;line-height:1.6;color:white;text-align:right;background:#1d1d1b8c;padding:4px 8px}.photo-source{width:100%;font-size:12px;line-height:1.6;color:#e0e0d8;border-top:1px solid #ffffff35;padding-top:18px}.photo-source a{text-decoration:underline;text-underline-offset:3px}footer{flex-wrap:wrap}@media(max-width:900px){.territory-panorama>img{height:380px}.spring .spring-photo img{height:450px}.page-hero.has-photo{padding-right:15%}}@media(max-width:650px){.territory-panorama>img{height:330px;object-position:60% center}.panorama-title{left:6%;top:35px;font-size:56px}.territory-panorama figcaption,.spring-photo figcaption{font-size:12px;flex-direction:column;gap:4px;padding:11px 6%}.spring .spring-photo img{height:290px;flex:auto}.page-hero.has-photo{padding:40px 6% 85px;min-height:350px}.page-hero-photo{object-position:60% center}.page-hero.has-photo:before{background:linear-gradient(90deg,#1d1d1bdf,#1d1d1b75)}.page-hero.has-photo .hero-photo-credit{right:6%;bottom:16px;max-width:88%;font-size:12px}.page-hero.has-photo .page-leaf{opacity:.2}.photo-source{font-size:12px}}

/* Nouveau visuel d’accueil : coureurs dans les vignes, noir et blanc. */
.hero .hero-photo{inset:0;background:none;opacity:1;overflow:hidden}
.hero .hero-photo>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:grayscale(1)}
.hero .hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,29,27,.90) 0%,rgba(29,29,27,.70) 24%,rgba(29,29,27,.22) 55%,rgba(29,29,27,.05) 100%);pointer-events:none}
.hero-content{position:relative;z-index:1}
.hero-leaf{z-index:1}
@media(max-width:900px){.hero .hero-photo>img{object-position:62% center}.hero .hero-photo:after{background:linear-gradient(90deg,rgba(29,29,27,.87),rgba(29,29,27,.28))}}
@media(max-width:650px){.hero .hero-photo>img{object-position:67% center}.hero .hero-photo:after{background:linear-gradient(90deg,rgba(29,29,27,.82),rgba(29,29,27,.38))}}

/* Intégration WordPress sans changement des blocs publics. */
html{margin-top:0!important}body.admin-bar>header{top:32px}@media(max-width:782px){body.admin-bar>header{top:46px}}@media(max-width:600px){body.admin-bar>header{top:0}}
