/*
Theme Name: Los Cassanoialos
Author: Los Cassanoialos
Description: Thème rouge, blanc et noir pour la banda Los Cassanoïalos.
Version: 2.1.0
Requires PHP: 8.0
Text Domain: los-cassanoialos
*/
:root{--red:#d9232a;--dark:#171717;--white:#fff;--muted:#626262}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--dark);background:#fff;font:17px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit}img{max-width:100%;height:auto}.wrap{max-width:1160px;margin:auto;padding:0 24px}.site-header{background:white;position:relative;z-index:3;border-bottom:4px solid var(--red)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:110px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-weight:900;font-size:22px}.brand img{width:82px;height:82px;object-fit:contain}.nav{display:flex;align-items:center;gap:23px;flex-wrap:wrap}.nav a{text-decoration:none;font-weight:700;font-size:15px}.nav a:hover,.nav a:focus{color:var(--red)}.hero{background:linear-gradient(115deg,rgba(24,24,24,.94),rgba(70,7,10,.86)),var(--dark);color:#fff;padding:100px 0 110px;position:relative;overflow:hidden}.hero:after{content:'♪';font-size:400px;position:absolute;right:-40px;top:-180px;color:rgba(255,255,255,.045);pointer-events:none}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:#ffb3b5;font-size:14px}.hero h1{font-size:clamp(45px,7vw,94px);line-height:1.05;max-width:800px;margin:16px 0 24px;font-weight:950}.hero h1 span{color:#ff575e}.hero p{font-size:clamp(18px,2.3vw,24px);max-width:670px}.btn{display:inline-block;background:var(--red);border:2px solid var(--red);color:white;text-decoration:none;padding:13px 24px;border-radius:6px;font-weight:800;margin:8px 12px 8px 0}.btn.alt{background:transparent;border-color:white}.btn:hover{filter:brightness(.92)}section.section{padding:78px 0}.section.soft{background:#f6f6f6}.section h2,.page-title{font-size:clamp(30px,4vw,48px);line-height:1.2;margin:0 0 20px}.section h2:after{content:'';display:block;width:70px;height:5px;background:var(--red);margin-top:16px}.lead{font-size:20px;max-width:800px;color:#444}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px}.event-card{background:white;border:1px solid #e5e5e5;border-top:5px solid var(--red);border-radius:10px;padding:24px;box-shadow:0 8px 30px rgba(0,0,0,.035)}.event-card h3{font-size:22px;margin:8px 0}.event-date{font-weight:900;color:var(--red)}.event-place{color:#555}.dark-band{background:var(--red);color:white;padding:54px 0}.dark-band h2{margin:0}.dark-band .btn{border-color:white;background:white;color:var(--red)}.site-footer{background:#171717;color:white;padding:46px 0}.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-grid a{color:white}.content{padding:65px 0 90px;min-height:55vh}.content .entry-content{max-width:900px}.entry-content a{color:#b5161c}.entry-content img{border-radius:6px}.contact-form{max-width:660px;display:grid;gap:16px}.contact-form label{display:grid;gap:6px;font-weight:700}.contact-form input,.contact-form textarea{width:100%;padding:12px;border:1px solid #bbb;border-radius:5px;font:inherit}.contact-form button{border:0;background:var(--red);color:white;padding:13px 22px;font:inherit;font-weight:800;border-radius:5px;cursor:pointer}.notice{padding:12px;border-left:5px solid var(--red);background:#f7f7f7}.screen-reader-text{position:absolute;left:-9999px}.wp-block-gallery{margin-top:25px}@media(max-width:850px){.header-inner{flex-direction:column;padding-top:10px;padding-bottom:18px}.nav{justify-content:center;gap:12px}.nav a{font-size:14px}.hero{padding:65px 0}.cards{grid-template-columns:1fr}.footer-grid{flex-direction:column;text-align:center}.brand img{width:70px;height:70px}}@media(max-width:480px){.brand{font-size:19px}.hero h1{font-size:45px}.section.section{padding:50px 0}}

.hero{background:linear-gradient(90deg,rgba(12,12,12,.86),rgba(12,12,12,.35)),url("assets/halle.jpg") center 49%/cover no-repeat}.hero:after{display:none}.photo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:30px 0}.photo-grid a{grid-column:span 2;display:block;overflow:hidden;border-radius:10px;aspect-ratio:4/3}.photo-grid a:nth-child(1),.photo-grid a:nth-child(2){grid-column:span 3}.photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.photo-grid a:hover img{transform:scale(1.035)}@media(max-width:700px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-grid a,.photo-grid a:nth-child(1),.photo-grid a:nth-child(2){grid-column:span 1}.photo-grid a:last-child{grid-column:span 2}}

.los-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:26px 0}.los-video{aspect-ratio:16/9;background:#171717;border-radius:10px;overflow:hidden}.los-video iframe{display:block;width:100%;height:100%;border:0}.los-media-section{margin-top:34px}.los-media-section h2{font-size:clamp(25px,3vw,34px)}@media(max-width:720px){.los-video-grid{grid-template-columns:1fr}}

/* Lot 4 — accueil, présentation, contact */
.hero .hero-panel{max-width:760px}.hero .hero-kicker{display:inline-block;padding:5px 13px;border:1px solid rgba(255,255,255,.55);border-radius:30px;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.home-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.home-quick a{background:#fff;border:1px solid #e5e5e5;border-bottom:4px solid var(--red);padding:25px;border-radius:10px;text-decoration:none;font-weight:850;box-shadow:0 8px 24px rgba(0,0,0,.05)}.home-quick a span{display:block;font-size:14px;font-weight:400;color:#555;margin-top:7px}.banda-intro{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;margin:30px 0}.banda-intro img{width:100%;border-radius:12px;object-fit:cover}.banda-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:26px 0}.banda-facts>div{padding:22px;background:#f6f6f6;border-left:5px solid var(--red);border-radius:7px}.contact-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-help{font-size:13px;color:#555}.contact-intro{background:#f7f7f7;border-left:5px solid var(--red);padding:18px 22px;margin-bottom:25px}.contact-intro a{color:#ad151c}.site-footer .footer-email{display:block;margin-top:10px}@media(max-width:720px){.home-quick,.banda-intro,.banda-facts,.contact-two{grid-template-columns:1fr}}

/* Lot 5 — navigation accessible et ajustements mobiles */
.nav-toggle{display:none;align-items:center;gap:9px;border:1px solid #ddd;background:#fff;border-radius:8px;padding:10px 15px;font:inherit;font-size:15px;font-weight:800;color:#171717;cursor:pointer}
.nav-toggle-icon{font-size:24px;line-height:1}.nav-toggle:focus-visible,.nav a:focus-visible,.btn:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.nav a[aria-current="page"]{color:var(--red)}
@media(max-width:850px){.header-inner{flex-direction:row;flex-wrap:wrap;min-height:85px;padding-top:10px;padding-bottom:10px}.brand{min-width:0;flex:1}.brand span{overflow-wrap:anywhere}.nav-toggle{display:inline-flex}.nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:5px 0 10px;border-top:1px solid #eee}.nav.nav-open{display:flex}.nav a{display:block;padding:12px 9px;font-size:16px;border-bottom:1px solid #eee}.hero{padding:58px 0 64px}.hero h1{font-size:clamp(36px,8vw,60px)}.hero p{font-size:18px}.content{padding:42px 0 65px}.banda-intro img{max-height:390px;object-fit:cover}.los-video-grid{grid-template-columns:1fr}}
@media(max-width:520px){.wrap{padding-left:17px;padding-right:17px}.brand{font-size:clamp(14px,4.1vw,19px);gap:8px}.brand img{width:54px;height:54px}.nav-toggle{padding:9px 11px}.hero{padding:45px 0 50px}.hero h1{font-size:clamp(34px,10vw,46px);overflow-wrap:break-word}.hero .btn{display:block;text-align:center;margin:10px 0}.home-quick{gap:12px}.home-quick a{padding:18px}.section.section{padding:40px 0}.photo-grid{gap:8px}.photo-grid a{aspect-ratio:1/1}.contact-form{min-width:0}.contact-form input,.contact-form textarea{min-width:0}.content .entry-content{overflow-wrap:break-word}.site-footer{padding:32px 0}.footer-grid{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-grid img{transition:none}}

/* Lot 6 : agenda public et galerie avec agrandissement accessible */
.event-card{display:flex;flex-direction:column;gap:5px;transition:transform .18s,box-shadow .18s}.event-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.09)}.event-date{font-size:17px}.event-card h3{line-height:1.25}.event-place:before{content:"📍 ";font-size:14px}
.photo-grid a:focus-visible{outline:4px solid var(--red);outline-offset:3px}
.los-lightbox[hidden]{display:none!important}.los-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;padding:65px 18px 28px}.los-lightbox img{display:block;max-width:100%;max-height:calc(100dvh - 105px);object-fit:contain;border-radius:5px}.los-lightbox-close{position:absolute;top:14px;right:18px;background:#fff;color:#171717;border:0;border-radius:6px;font-size:28px;line-height:1;padding:9px 14px;cursor:pointer}.los-lightbox-close:focus-visible{outline:3px solid #ff575e;outline-offset:3px}
@media(max-width:650px){.cards{gap:14px}.event-card{padding:20px}.photo-grid a:last-child{grid-column:span 1}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Lot 7 — agenda lisible sur téléphone */
@media(max-width:650px){.cards{grid-template-columns:1fr;gap:15px}.event-card{padding:20px 18px;gap:8px;border-top-width:6px}.event-date{font-size:20px;line-height:1.3}.event-card h3{font-size:21px;line-height:1.3;margin:3px 0}.event-place{font-size:16px;line-height:1.45}}

/* Lot 8 : contact, galerie et appels à prestation */
.los-contact-rules{background:#fff7f7;border:1px solid #f0caca;border-left:6px solid var(--red);border-radius:10px;padding:22px 26px;margin:24px 0 34px;max-width:760px}
.los-contact-rules h2{font-size:clamp(23px,3vw,30px);margin:0 0 12px}.los-contact-rules p{margin:10px 0}.los-contact-heading{font-size:clamp(24px,3vw,32px);margin:20px 0}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:3px solid #d9232a;outline-offset:2px}
.los-cta-band{padding:35px 0;background:#252525;color:white;text-align:center}.los-cta-band p{margin:0 0 10px;font-size:19px}.los-cta-band .btn{margin:8px auto}
.los-media-section{padding:24px 0 38px;border-bottom:1px solid #eee}.los-media-section:last-child{border-bottom:0}.los-media-section h2:after{content:'';display:block;width:60px;height:4px;background:var(--red);margin-top:10px}.los-video-grid{gap:24px}.los-video{box-shadow:0 8px 28px rgba(0,0,0,.12)}
@media(max-width:600px){.los-contact-rules{padding:18px}.los-cta-band{padding:28px 0}.los-media-section{padding:18px 0 28px}}

/* Lot groupé : réseaux, accessibilité, agenda, mobile */
.social-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0}.social-cards a{display:flex;flex-direction:column;gap:10px;padding:30px;border-radius:14px;border:2px solid #eee;border-left:7px solid var(--red);text-decoration:none;box-shadow:0 10px 28px rgba(0,0,0,.07);transition:transform .2s}.social-cards a:hover{transform:translateY(-3px)}.social-cards strong{font-size:26px}.social-cards span{color:#555}.footer-social{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.footer-social a{color:inherit;text-decoration:underline;text-underline-offset:4px}.calendar-link{display:inline-flex;align-self:flex-start;margin-top:12px;color:#a61920;font-weight:700;font-size:14px;text-underline-offset:3px}.back-to-top{position:fixed;right:18px;bottom:18px;z-index:50;background:var(--red);color:#fff;border:0;border-radius:50%;width:47px;height:47px;font-size:24px;cursor:pointer;box-shadow:0 4px 15px #0004}.back-to-top[hidden]{display:none}.social-cards a:focus-visible,.calendar-link:focus-visible,.back-to-top:focus-visible{outline:3px solid var(--red);outline-offset:4px}img[loading="lazy"]{content-visibility:auto}@media(max-width:700px){.social-cards{grid-template-columns:1fr}.footer-social{justify-content:center}.nav{max-height:75vh;overflow:auto}.event-card{min-width:0}.calendar-link{font-size:15px}}@media(prefers-reduced-motion:reduce){.social-cards a{transition:none}}

/* Lot 2.1 : page Réseaux et présentation du groupe */
.social-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0}.social-preview-card{border:1px solid #e6e6e6;border-top:5px solid #d9232a;border-radius:12px;padding:24px;background:#fff;min-width:0}.social-preview-card h2{margin-top:0}.social-privacy-note{font-size:13px;color:#666;line-height:1.5}.facebook-preview{min-height:145px}.instagram-profile-preview{background:linear-gradient(140deg,#fff1f2,#fafafa);border-radius:12px;padding:30px 20px;text-align:center}.instagram-profile-avatar{margin:0 auto 15px;width:100px;height:100px;border-radius:50%;padding:5px;background:linear-gradient(35deg,#f9ce34,#ee2a7b,#6228d7)}.instagram-profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;background:#fff}.instagram-profile-preview strong{display:block;font-size:22px}.social-external-link{font-weight:700}.banda-story{margin-top:32px}.banda-story h2{margin-top:32px}.banda-facts{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:750px){.social-preview-grid{grid-template-columns:1fr}.social-preview-card{padding:18px}.banda-facts{grid-template-columns:1fr}}
