/* Page Culture — scopé .cafeo-culture */
.cafeo-culture{--cream:#fcf3e5;--charcoal:#2c3235;--gold:#ffd17c;--gold-h:#dfa63e;--brown:#42240c;--brown-d:#482b13;--brown-deep:#4b2d1f;--kaki:#482b13;--rose:#9a7862;--gold-v:#ffd17c;--off:#f9f9f9;font-family:'Onest',sans-serif;color:var(--charcoal);background:var(--cream);}
.cafeo-culture *,.cafeo-culture *::before,.cafeo-culture *::after{box-sizing:border-box;}
.cafeo-culture a{text-decoration:none;color:inherit;}
.cafeo-culture .btn--pill{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--brown);padding:14px 32px;border-radius:30px;font-size:14px;letter-spacing:2.24px;white-space:nowrap;transition:background .2s;}
.cafeo-culture .btn--pill:hover{background:var(--gold-h);}
.cafeo-culture .cu-btn-dark{display:inline-flex;align-items:center;gap:10px;background:var(--brown-d);color:#fff;padding:13px 30px;border-radius:30px;font-size:14px;letter-spacing:2px;transition:background .2s;}
.cafeo-culture .cu-btn-dark:hover{background:#5a3820;}
.cafeo-culture .cu-h2{font-size:30px;letter-spacing:3px;color:var(--charcoal);font-weight:400;text-transform:uppercase;margin:0 0 48px;}
.cafeo-culture .cu-h2--light{color:#fff;margin:0;}
.cafeo-culture .cu-eyebrow{font-size:14px;letter-spacing:3px;color:var(--rose);text-transform:uppercase;margin:0 0 14px;}
.cafeo-culture .cu-eyebrow--light{color:rgba(255,255,255,.6);}

/* HERO */
.cafeo-culture .cu-hero{background:linear-gradient(135deg,#1c0c04 0%,#3a1a08 35%,#6b3818 70%,#a35e14 100%);min-height:300px;padding:72px max(90px, calc(50vw - 660px)) 64px;position:relative;overflow:hidden;}
.cafeo-culture .cu-hero__ring{position:absolute;top:-80px;right:-80px;width:480px;height:480px;border-radius:50%;border:1px solid rgba(255,209,124,.08);}
.cafeo-culture .cu-hero__line{display:none;}
.cafeo-culture .cu-hero__bean{position:absolute;right:120px;top:20px;opacity:.07;pointer-events:none;}
@media(max-width:760px){.cafeo-culture .cu-hero__bean{right:20px;width:110px;}}
.cafeo-culture .cu-hero__inner{position:relative;z-index:2;}
.cafeo-culture .cu-breadcrumb{display:flex;align-items:center;gap:10px;margin-bottom:26px;font-size:14px;letter-spacing:2px;text-transform:uppercase;}
.cafeo-culture .cu-breadcrumb a{color:rgba(255,209,124,.5);}
.cafeo-culture .cu-breadcrumb span{color:rgba(255,255,255,.2);}
.cafeo-culture .cu-breadcrumb .is-current{color:var(--gold);}
.cafeo-culture .cu-hero__title{font-size:clamp(30px,3.6vw,48px);font-weight:400;color:var(--off);letter-spacing:3px;text-transform:uppercase;line-height:1.2;margin:0 0 20px;}
.cafeo-culture .cu-hero__deck{font-size:17px;color:rgba(255,255,255,.65);line-height:1.8;max-width:680px;font-weight:300;margin:0;}

/* EXPO EN COURS */
.cafeo-culture .cu-current{padding:90px max(90px, calc(50vw - 660px)) 80px;}
.cafeo-culture .cu-current__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start;}
.cafeo-culture .cu-current__media{border-radius:14px;overflow:hidden;height:520px;background:linear-gradient(135deg,#2a1005,#5a2a10);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;}
.cafeo-culture .cu-ph{font-size:14px;letter-spacing:2.5px;color:rgba(255,209,124,.4);text-transform:uppercase;}
.cafeo-culture .cu-badge{display:inline-block;background:var(--gold);color:var(--brown);font-size:14px;letter-spacing:2px;padding:5px 14px;border-radius:10px;text-transform:uppercase;font-weight:500;margin-bottom:22px;}
.cafeo-culture .cu-current__title{font-size:34px;font-weight:400;color:var(--charcoal);letter-spacing:1px;margin:0 0 10px;}
.cafeo-culture .cu-current__artist{font-size:16px;color:var(--rose);margin:0 0 6px;}
.cafeo-culture .cu-current__dates{font-size:14px;color:var(--rose);margin:0 0 24px;}
.cafeo-culture .cu-current__desc{font-size:16px;color:var(--charcoal);line-height:1.85;margin:0 0 18px;}
.cafeo-culture .cu-current__note{font-size:15px;color:var(--rose);line-height:1.7;font-style:italic;margin:0 0 30px;}

/* GRILLES (cartes) */
.cafeo-culture .cu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.cafeo-culture .cu-past{padding:10px max(90px, calc(50vw - 660px)) 90px;}
.cafeo-culture .cu-card{background:#fff;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s;}
.cafeo-culture .cu-card:hover{box-shadow:0 8px 32px rgba(44,50,53,.12);}
.cafeo-culture .cu-card__media{height:230px;background:linear-gradient(135deg,#1a0a06,#4a2010);background-size:cover;background-position:center;}
.cafeo-culture .cu-card__media--ph{background:#efe6d6;}
.cafeo-culture .cu-card__body{padding:26px 26px 30px;display:flex;flex-direction:column;gap:10px;flex:1;}
.cafeo-culture .cu-card__eyebrow{font-size:14px;letter-spacing:2px;color:var(--rose);text-transform:uppercase;}
.cafeo-culture .cu-card__title{font-size:20px;font-weight:400;color:var(--charcoal);line-height:1.35;margin:0;}
.cafeo-culture .cu-card__excerpt{font-size:14px;color:var(--rose);line-height:1.65;margin:0;flex:1;}
.cafeo-culture .cu-card__more{color:var(--brown-d);font-size:14px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;margin-top:6px;}

/* EVENEMENTS */
.cafeo-culture .cu-events{padding:90px max(90px, calc(50vw - 660px));background:linear-gradient(135deg,#1c0c04 0%,#3a1a08 35%,#6b3818 70%,#a35e14 100%);}
.cafeo-culture .cu-events__head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:48px;flex-wrap:wrap;gap:20px;}
.cafeo-culture .cu-events__intro{font-size:15px;color:rgba(255,255,255,.8);max-width:460px;margin:0;}
.cafeo-culture .cu-events__empty{color:#fff;font-size:16px;}
.cafeo-culture .cu-event{background:#fff;border-radius:10px;padding:30px 28px;display:flex;flex-direction:column;gap:14px;}
.cafeo-culture .cu-event__meta{display:flex;align-items:center;gap:10px;}
.cafeo-culture .cu-event__badge{font-size:14px;letter-spacing:2px;color:#fff;text-transform:uppercase;padding:4px 12px;border-radius:10px;}
.cafeo-culture .cu-event__date{font-size:14px;color:var(--rose);}
.cafeo-culture .cu-event__title{font-size:20px;font-weight:400;color:var(--charcoal);line-height:1.35;margin:0;}
.cafeo-culture .cu-event__desc{font-size:14px;color:var(--rose);line-height:1.7;margin:0;}

/* CONTACT */
.cafeo-culture .cu-contact{padding:80px max(90px, calc(50vw - 660px));display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;}
.cafeo-culture .cu-contact__name{font-size:26px;font-weight:400;color:var(--charcoal);letter-spacing:1px;margin:0 0 14px;}
.cafeo-culture .cu-contact__lines{font-size:16px;color:var(--charcoal);line-height:1.8;margin:0;}

/* Boutons / cartes cliquables */
.cafeo-culture .cu-current__actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.cafeo-culture .cu-btn-view{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--brown);padding:13px 30px;border-radius:30px;font-size:14px;letter-spacing:2px;transition:background .2s;}
.cafeo-culture .cu-btn-view:hover{background:var(--gold-h);}
.cafeo-culture .cu-event{transition:box-shadow .2s;}
.cafeo-culture .cu-event:hover{box-shadow:0 8px 32px rgba(0,0,0,.14);}
.cafeo-culture .cu-event__more{color:var(--brown-d);font-size:14px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;margin-top:4px;}

/* FICHE exposition / événement */
.cafeo-culture .se-body{max-width:900px;margin:0 auto;padding:70px 90px 90px;}
.cafeo-culture .se-media{height:460px;border-radius:14px;background-size:cover;background-position:center;margin-bottom:40px;}
.cafeo-culture .se-content{font-size:17px;line-height:1.9;color:var(--charcoal);}
.cafeo-culture .se-content p{margin:0 0 20px;}
.cafeo-culture .se-note{font-size:15px;color:var(--rose);font-style:italic;line-height:1.7;margin:20px 0 0;}
.cafeo-culture .se-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:40px;}
.cafeo-culture .se-back{font-size:14px;letter-spacing:1.5px;text-transform:uppercase;color:var(--rose);}
.cafeo-culture .se-back:hover{color:var(--brown-d);}

/* --- Contenu de fiche (atelier / expo / événement) : titres, listes, bouton
   alignés sur le design validé (filet doré + pilule dorée). Les sections
   « Acte 1/2/3 », « Infos pratiques »… deviennent des titres homogènes. --- */
.cafeo-culture .se-content h2,
.cafeo-culture .se-content h3{
	position:relative;font-family:'Onest',sans-serif;font-weight:400;color:var(--brown);
	padding-top:22px;margin:52px 0 22px;line-height:1.25;letter-spacing:.5px;text-wrap:pretty;
}
.cafeo-culture .se-content h2{font-size:clamp(24px,3vw,32px);}
.cafeo-culture .se-content h3{font-size:clamp(20px,2.4vw,26px);}
.cafeo-culture .se-content h2::before,
.cafeo-culture .se-content h3::before{
	content:"";position:absolute;top:0;left:0;width:44px;height:3px;border-radius:2px;background:var(--gold);
}
.cafeo-culture .se-content h4{font-family:'Onest',sans-serif;font-weight:500;color:var(--charcoal);font-size:18px;margin:32px 0 12px;}
.cafeo-culture .se-content > :first-child{margin-top:0;}

/* Bloc « Infos pratiques » remonté en tête de fiche (avant la photo) : panneau
   clair qui met en avant l'essentiel + le bouton Réserver dès l'ouverture. */
.cafeo-culture .se-content--practical{
	background:#fff;border:1px solid rgba(74,45,31,.1);border-radius:14px;
	padding:30px 34px 34px;margin-bottom:44px;box-shadow:0 4px 20px rgba(44,50,53,.05);
}
.cafeo-culture .se-content--practical > :first-child{margin-top:0;}
.cafeo-culture .se-content--practical .wp-block-button{margin-bottom:0;}

/* Listes (Infos pratiques…) */
.cafeo-culture .se-content ul,
.cafeo-culture .se-content ol{margin:0 0 28px;padding-left:22px;}
.cafeo-culture .se-content li{margin-bottom:10px;line-height:1.8;}
.cafeo-culture .se-content li::marker{color:var(--gold-h);}
.cafeo-culture .se-content strong{color:var(--brown);}
.cafeo-culture .se-content a:not(.wp-block-button__link){color:var(--brown-d);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px;}

/* Bouton « Réserver cet atelier » (bloc Gutenberg) : le thème parent le rendait
   gris foncé + texte foncé (illisible). On reprend la pilule dorée de la charte. */
.cafeo-culture .se-content .wp-block-button{margin:14px 0;}
.cafeo-culture .se-content .wp-block-button__link,
.cafeo-culture .se-content .wp-element-button{
	display:inline-flex;align-items:center;gap:10px;
	background:var(--gold)!important;color:var(--brown)!important;border:0!important;
	padding:15px 34px;border-radius:30px!important;
	font-family:'Onest',sans-serif;font-size:14px;font-weight:500;letter-spacing:2px;text-transform:uppercase;
	box-shadow:0 4px 14px rgba(255,209,124,.4);transition:background .2s,box-shadow .2s,transform .2s;
}
.cafeo-culture .se-content .wp-block-button__link:hover,
.cafeo-culture .se-content .wp-element-button:hover{
	background:var(--gold-h)!important;color:var(--brown)!important;transform:translateY(-1px);box-shadow:0 6px 18px rgba(223,166,62,.45);
}

/* RESPONSIVE */
@media(max-width:1080px){
	.cafeo-culture .cu-hero{padding:56px 48px;}
	.cafeo-culture .cu-current,.cafeo-culture .cu-past,.cafeo-culture .cu-events,.cafeo-culture .cu-contact{padding-left:48px;padding-right:48px;}
	.cafeo-culture .cu-current{padding-top:64px;padding-bottom:56px;}
	.cafeo-culture .cu-events{padding-top:64px;padding-bottom:64px;}
	.cafeo-culture .cu-current__grid{grid-template-columns:1fr;gap:36px;}
	.cafeo-culture .cu-current__media{height:360px;}
	.cafeo-culture .cu-grid{grid-template-columns:repeat(2,1fr);}
	.cafeo-culture .se-body{padding:48px;}
	.cafeo-culture .se-media{height:320px;}
}
@media(max-width:680px){
	.cafeo-culture .cu-hero{padding:48px 24px;}
	.cafeo-culture .cu-current,.cafeo-culture .cu-past,.cafeo-culture .cu-events,.cafeo-culture .cu-contact{padding-left:24px;padding-right:24px;}
	.cafeo-culture .cu-grid{grid-template-columns:1fr;}
	.cafeo-culture .cu-contact{flex-direction:column;align-items:flex-start;}
	.cafeo-culture .se-body{padding:40px 24px;}
}

/* Fiche atelier : le bouton « Offrir cet atelier », ajouté à côté du bouton
   « Réserver cet atelier » qui vient du contenu. Même pilule, mais en contour
   pour que l'action principale (réserver) reste la plus visible. */
.cafeo-culture .wp-block-button.cafeo-gift .wp-block-button__link{
	background:transparent;color:#42240c;border:1px solid #c9a678;
}
.cafeo-culture .wp-block-button.cafeo-gift .wp-block-button__link:hover{
	background:#fcf3e5;border-color:#42240c;color:#42240c;
}

/* Les deux boutons du cadre « Infos pratiques » forment une paire : même
   largeur exactement (le libellé le plus long fixe le plancher, le texte est
   centré dans chacun) et un écart franc, plus lisible que l'espacement par
   défaut de l'éditeur. Sous 560px ils s'empilent en pleine largeur. */
.cafeo-culture .se-content--practical .wp-block-buttons{gap:20px;}
.cafeo-culture .se-content--practical .wp-block-button__link{
	min-width:280px;justify-content:center;text-align:center;
}
@media(max-width:560px){
	.cafeo-culture .se-content--practical .wp-block-buttons{gap:14px;}
	.cafeo-culture .se-content--practical .wp-block-button{flex:1 1 100%;}
	.cafeo-culture .se-content--practical .wp-block-button__link{min-width:0;width:100%;}
}

/* Galerie de la fiche atelier : 2 colonnes plutôt que 3. La cliente trouvait
   les photos « minuscules » en 3 colonnes (234px) ; en 2 colonnes elles
   passent à ~345px, et la 3e se place seule en dessous. */
.cafeo-culture .se-content .wp-block-gallery.has-nested-images.columns-3{
	grid-template-columns:repeat(2,minmax(0,1fr));
	display:grid;gap:16px;
}
.cafeo-culture .se-content .wp-block-gallery.has-nested-images.columns-3 figure{width:auto !important;}
@media(max-width:600px){
	.cafeo-culture .se-content .wp-block-gallery.has-nested-images.columns-3{grid-template-columns:1fr;}
}

/* Téléphones : le bandeau atelier montait à 401px, soit 48 % de l'écran.
   Ici la hauteur ne vient pas d'un vide mais du contenu — chapô de 153px et
   fil d'Ariane débordant sur 3 lignes. On resserre sans rien retirer :
   le dernier maillon du fil d'Ariane est masqué (il répète le titre juste
   au-dessus) et le chapô passe en 15px. Résultat mesuré : 401 → 321px. */
@media (max-width: 600px) {
	.cafeo-culture .cu-hero{min-height:170px;padding:30px 22px;}
	.cafeo-culture .cu-badge{margin-bottom:12px;}
	.cafeo-culture .cu-hero__title{margin-bottom:8px;}
	.cafeo-culture .cu-breadcrumb{margin-bottom:0;}
	.cafeo-culture .cu-breadcrumb .is-current,
	.cafeo-culture .cu-breadcrumb span:nth-last-child(2){display:none;}
	.cafeo-culture .cu-hero__deck{font-size:15px;line-height:1.5;margin-top:10px;}
}
