/*
Theme Name: Évènements en Avesnois
Author: Évènements en Avesnois
Description: Présentation de l’association, évènements, partenaires et inscriptions.
Version: 1.0.0
Requires at least: 6.3
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: evenements-en-avesnois
*/

:root{--blue:#243f82;--cream:#fbfcfe;--orange:#bc352e;--muted:#536177;--logo-green:#27843b;--logo-orange:#e87f17;--logo-red:#cf251c;--logo-yellow:#f0c52d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--blue);font:16px/1.6 Arial,sans-serif}a{color:inherit}header{display:flex;justify-content:space-between;align-items:center;padding:22px 6%;border-bottom:1px solid #d9ded3;background:var(--cream)}.brand{text-decoration:none;font-family:Georgia,serif;font-weight:bold;font-size:21px;line-height:1.15}.brand small{display:block;font:10px Arial;letter-spacing:3px;margin-top:7px}nav{display:flex;gap:28px;align-items:center}nav a{text-decoration:none;font-size:14px}button,.btn{display:inline-block;border:0;padding:13px 23px;background:var(--blue);color:white;text-decoration:none;border-radius:5px;font-size:14px;cursor:pointer}.btn.light{background:var(--cream);color:var(--blue)}.btn.outline{background:transparent;border:1px solid #a1afa5;color:var(--blue)}.hero{padding:58px 6% 0;position:relative;overflow:hidden}.eyebrow{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:bold}.hero h1{font:clamp(45px,6.3vw,86px)/1.05 Georgia,serif;margin:25px 0;max-width:950px;font-weight:normal}.hero h1 em{color:var(--orange)}.intro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:38px}.intro p{max-width:490px;color:var(--muted);margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.landscape{width:100%;height:265px;display:block;border-radius:130px 130px 0 0;background:#dbe5d6}.ribbon{display:flex;justify-content:space-between;gap:20px;background:var(--blue);color:var(--cream);padding:17px 6%;font-size:12px;letter-spacing:1px}section{padding:80px 6%}.sectiontop{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}h2{font:42px/1.15 Georgia,serif;font-weight:normal;margin:14px 0}p{margin-top:0}.sectiontop p{max-width:390px;color:var(--muted);font-size:14px}.events{display:grid;grid-template-columns:1fr 1fr;gap:24px}.event{background:white;border:1px solid #e2e2d7;border-radius:8px;overflow:hidden}.art{height:180px;position:relative;display:flex;align-items:center;justify-content:center;font:62px Georgia;color:#fff}.art.concert{background:#30493d}.art.trip{background:#99513c}.art span{font-size:100px;opacity:.18;position:absolute;right:20px;bottom:-35px}.art strong{font-size:27px;font-weight:normal;letter-spacing:2px;z-index:1;text-align:center}.body{padding:26px}.date{font-size:11px;font-weight:bold;letter-spacing:1.4px;color:var(--orange)}h3{font:27px/1.2 Georgia;margin:12px 0}.body p{font-size:14px;color:var(--muted)}.link{font-weight:bold;font-size:13px;text-underline-offset:5px}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#eff6ed}.about p{color:var(--muted)}.pill{display:inline-block;border:1px solid #adbba8;border-radius:30px;padding:7px 15px;font-size:12px;margin:5px}.values{border-top:1px solid #bdc9b5}.value{display:flex;gap:25px;padding:23px 0;border-bottom:1px solid #bdc9b5}.value b{font:23px Georgia}.value p{margin:5px 0 0;font-size:14px}.num{font-size:12px;color:var(--orange);padding-top:5px}.join{display:grid;grid-template-columns:1fr 1fr;gap:55px}.join .panel{border-left:1px solid #ced5c7;padding-left:50px}.join p{color:var(--muted)}.contact{background:var(--blue);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact h2{font-size:48px}.contact a{display:block;margin:12px 0;text-underline-offset:5px;overflow-wrap:anywhere}.contact .address{font-size:14px;opacity:.8}.contact .btn{display:inline-block;margin-top:20px}footer{padding:25px 6%;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}details{margin-top:10px}summary{cursor:pointer}details p{max-width:650px;font-size:12px;margin-top:12px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--logo-orange);outline-offset:5px}@media(max-width:760px){header{padding:18px 6%;align-items:flex-start}nav{gap:12px;flex-wrap:wrap;max-width:170px;justify-content:flex-end}nav a{font-size:12px}nav .btn{padding:7px 12px}.hero{padding-top:40px}.intro,.sectiontop{display:block}.intro .actions{margin-top:23px}.landscape{height:200px;border-radius:65px 65px 0 0}.ribbon{font-size:10px;flex-wrap:wrap;justify-content:center}.events,.about,.join,.contact{grid-template-columns:1fr;gap:30px}section{padding:55px 6%}h2{font-size:35px}.join .panel{padding-left:0;border-left:0;border-top:1px solid #ced5c7;padding-top:30px}.contact h2{font-size:39px}footer{display:block}footer>span{display:block;margin-bottom:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand{display:flex;align-items:center;gap:17px}.brand-logo{width:96px;height:96px;object-fit:contain;border-radius:50%;flex:none}.footer-identity{display:flex;align-items:center;gap:16px}.footer-identity img{width:64px;height:64px;object-fit:contain;border-radius:50%;flex:none}@media(max-width:760px){.brand{gap:9px;font-size:17px}.brand-logo{width:76px;height:76px}.brand small{font-size:8px;letter-spacing:1px;max-width:145px}header{align-items:center}nav{max-width:140px}.footer-identity{margin-bottom:16px}}@media(max-width:420px){header{flex-wrap:wrap;gap:16px}nav{max-width:none;width:100%;justify-content:space-between}.brand-logo{width:82px;height:82px}}

.brand-logo,.footer-identity img{border-radius:0;background:#fff}

.poster{display:block;background:#eef0e7;text-decoration:none}.poster img{display:block;width:100%;height:auto;object-fit:contain}.poster span{display:block;padding:10px 20px;text-align:center;font-size:12px;font-weight:bold}

/* Couleurs de l’identité officielle : bleu, vert, orange, rouge et jaune. */
header{border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--blue),var(--logo-green),var(--logo-yellow),var(--logo-orange),var(--logo-red)) 1}
.hero h1 .slogan-blue{color:var(--blue)}.hero h1 .slogan-green{color:var(--logo-green)}.hero h1 em{color:var(--logo-red)}
.hero h1::after{content:"";display:block;width:180px;height:5px;margin-top:25px;border-radius:4px;background:linear-gradient(90deg,var(--blue) 0 20%,var(--logo-green) 20% 40%,var(--logo-yellow) 40% 60%,var(--logo-orange) 60% 80%,var(--logo-red) 80%)}
.eyebrow{color:var(--logo-green)}.contact .eyebrow{color:var(--logo-yellow)}.pill{border-color:#bfd5c3;color:#236c35;background:#f8fcf6}.link{color:var(--blue)}.contact .link{color:var(--cream)}
.btn:hover{background:#192e64}.btn.light:hover{background:#eaf0fb}.btn.outline:hover{background:#eaf0fb}.event{border-color:#dbe2ef}.values,.value{border-color:#c9d9c3}.btn.outline{border-color:#8498bc}
.registration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.registration-grid .body{height:100%;display:flex;flex-direction:column}.registration-grid .link{margin-top:auto}.registration-info{margin-top:28px;padding:28px;background:#eff6ed;border:1px solid #c9d9c3;border-radius:8px}.registration-info p{max-width:900px;color:var(--muted);font-size:14px}@media(max-width:1000px){nav{gap:15px;flex-wrap:wrap;justify-content:flex-end}.registration-grid{grid-template-columns:1fr}}@media(max-width:420px){nav{justify-content:space-between}}

.skip-link{position:absolute;left:12px;top:-100px;z-index:100;background:white;color:#243f82;padding:12px}.skip-link:focus{top:12px}
.entry-body .wp-block-group{margin-block-start:0}.entry-body .wp-block-heading{margin-top:14px}.entry-body .hero h1{margin-top:25px}

/* En-tête : identité, verbes d’action, puis accès aux rubriques. */
header{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:24px 6% 20px}
header .brand{display:grid;grid-template-columns:144px minmax(0,1fr);align-items:center;gap:24px;width:100%}
header .brand-logo{width:144px;height:144px}
header .brand-name{display:block;text-align:center;font-size:clamp(28px,4.5vw,64px);line-height:1.15;white-space:nowrap}
.brand-copy{display:block;min-width:0;text-align:center}
.brand-actions{display:block;margin:7px 0 0;text-align:center;font-family:Arial,sans-serif;line-height:1.5;font-size:13px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--logo-green)}
.brand-actions span{color:var(--logo-orange);margin:0 10px}
header nav{width:100%;max-width:none;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 34px;margin-top:16px;padding-top:20px;border-top:1px solid #dbe2ef}
header nav a{font-size:14px;padding:8px 0}
header nav .btn{padding:11px 20px}
@media(max-width:760px){header{padding:18px 6% 16px}header .brand{grid-template-columns:100px minmax(0,1fr);gap:16px}header .brand-logo{width:100px;height:100px}header .brand-name{font-size:clamp(20px,4.5vw,34px);white-space:normal;text-wrap:balance}.brand-actions{font-size:10px;letter-spacing:1.5px;margin:6px 0 0}.brand-actions span{margin:0 5px}header nav{gap:8px 22px;padding-top:16px}header nav a{font-size:13px}header nav .btn{padding:9px 15px}}
@media(max-width:380px){header .brand{grid-template-columns:82px minmax(0,1fr);gap:12px}header .brand-logo{width:82px;height:82px}.brand-actions{font-size:8px;letter-spacing:.5px}.brand-actions span{margin:0 3px}}

/* Fonds doux inspirés du logo : limiter les grandes surfaces blanches. */
:root{--cream:#f5f2e8}
body{background:var(--cream)}
header{background:linear-gradient(115deg,#eef4e7 0%,#faf1d9 55%,#f9e8da 100%)}
.brand-logo,.footer-identity img{background:transparent}
.hero{background:linear-gradient(135deg,#f5f2e8 0%,#e8f0df 65%,#f5ecd2 100%)}
#agenda{background:#eaf0f7}
.about{background:#e6efdf}
#inscriptions{background:#f7eed8}
#partenaires{background:#e9eff6}
#participer{background:#f5e6da}
.event{background:#fcfaf4;border-color:#cdd7e1}
.registration-info{background:#e6efdf;border-color:#bdcdb5}
.poster{background:#e2e9de}
footer{background:#e6ecdf}

/* Accès aux réseaux de l’association. */


.social-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;border-radius:8px;color:#fff;text-decoration:none;font-size:14px;font-weight:bold;line-height:1.4;min-height:44px}
.social-button svg{width:20px;height:20px;flex:none}
.social-button.facebook{background:#1856a5}
.social-button.instagram{background:linear-gradient(115deg,#7134a7,#a82c65)}
.social-button:hover{filter:brightness(.9)}

.social-section{background:linear-gradient(120deg,#e4ecf8,#f3e5eb)}
.social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.social-card{padding:32px;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #c6d5e8;background:#f1f5fb}
.instagram-card{background:#faf0f4;border-color:#e1c9da}
.social-title{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.social-title svg{width:32px;height:32px;flex:none;color:#1856a5}
.instagram-card .social-title svg{color:#a82c65}
.social-title h3{margin:0}
.social-card p{color:var(--muted);font-size:15px;margin-bottom:24px}
.social-card .social-button{margin-top:auto;max-width:100%}
@media(max-width:760px){.social-grid{grid-template-columns:1fr}.social-card{padding:24px}.social-title h3{font-size:25px}}

/* Panorama des activités : conserver toutes les scènes sur chaque écran. */
.landscape.events-panorama{width:100%;height:auto;display:block;object-fit:contain;border-radius:20px 20px 0 0;background:#e6efdf}
@media(max-width:760px){.landscape.events-panorama{border-radius:12px 12px 0 0}}

/* Logos des partenaires */
.partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:32px}.partner-card{padding:24px;background:#fff;border:1px solid #dce3ec;border-radius:12px;text-align:center}.partner-logo{height:240px;display:flex;align-items:center;justify-content:center}.partner-logo img{display:block;max-width:100%;width:auto;height:auto;max-height:100%;object-fit:contain}.partner-card h3{margin:20px 0 8px}.partner-card p{margin:0;color:var(--muted);font-size:14px}@media(max-width:760px){.partner-grid{grid-template-columns:1fr}.partner-logo{height:210px}}

/* Galerie partenaires adaptée au nombre de soutiens */
.partner-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.partner-logo{height:170px}.partner-card{padding:22px}.partner-card h3{font-size:20px;line-height:1.3}@media(max-width:1000px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.partner-grid{grid-template-columns:1fr}.partner-logo{height:180px}}

/* Compenser la marge blanche asymétrique du logo du notaire. */
.partner-card-notaire .partner-logo img{transform:translateX(-17.5%)}

.exhibitor-preregistration{margin:20px 0 14px}
