/*
Theme Name: AC Colombes Pulse
Theme URI: https://accolombes.fr/
Author: AC Colombes
Description: Thème bloc AC Colombes V12, inspiré du template Pulse et conçu pour Gutenberg.
Version: 1.0.6
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: ac-colombes-pulse
*/

:root {
  --ac-blue: #2B55D6;
  --ac-navy: #081A52;
  --ac-gold: #E6C832;
  --ac-white: #FFFFFF;
  --ac-grey: #DCDCDC;
  --ac-ink: #091538;
}

body { font-family: "Manrope", Arial, sans-serif; }
h1,h2,h3,h4,h5,h6 { font-family: "Barlow Condensed", Impact, sans-serif; text-transform: uppercase; letter-spacing: -.02em; line-height: .9; }
img { height: auto; }
.wp-site-blocks { overflow: clip; }
.wp-block-group { box-sizing: border-box; }
.ac-shell { width: min(1220px, calc(100% - 48px)); max-width: none; margin-inline: auto; padding-inline: 0; }
.ac-header { background: var(--ac-navy); color: var(--ac-white); }
.ac-header__inner { display:grid; grid-template-columns:minmax(230px,.8fr) minmax(0,1.5fr) auto; align-items:center; gap:30px; width:min(1380px,calc(100% - 48px)); min-height:88px; margin-inline:auto; padding:0; }
.ac-brand { display:inline-flex; align-items:center; gap:13px; width:max-content; min-width:0; }
.ac-brand__logo { display:grid; width:58px; height:58px; margin:0; place-items:center; overflow:hidden; border-radius:50%; background:var(--ac-white); }
.ac-brand__logo img { width:52px; height:52px; object-fit:contain; }
.ac-brand__name { margin:0; line-height:.95; }
.ac-brand__name strong { display:block; font:900 23px/.95 "Barlow Condensed",Impact,sans-serif; letter-spacing:.04em; }
.ac-brand__tagline { margin:3px 0 0; color:rgba(255,255,255,.65); font-size:8px; font-weight:800; letter-spacing:.14em; }
.ac-nav { display:flex; align-items:stretch; justify-content:center; min-height:88px; }
.ac-nav .wp-block-navigation__container { display:flex; flex-wrap:nowrap; align-items:stretch; justify-content:center; gap:0; white-space:nowrap; }
.ac-nav .wp-block-navigation-item__content { position:relative; display:grid; min-height:88px; padding:0 17px; place-items:center; color:rgba(255,255,255,.72); font-size:11px; font-weight:800; letter-spacing:.055em; text-align:center; text-transform:uppercase; transition:color 180ms ease,background 180ms ease; }
.ac-nav .wp-block-navigation-item__content:after { position:absolute; right:16px; bottom:0; left:16px; height:4px; background:var(--ac-gold); content:""; opacity:0; transform:scaleX(.35); transition:opacity 180ms ease,transform 180ms ease; }
.ac-nav .wp-block-navigation-item__content:hover { background:rgba(255,255,255,.05); color:var(--ac-white); }
.ac-nav .wp-block-navigation-item__content:hover:after { opacity:1; transform:scaleX(1); }
.ac-nav .wp-block-navigation__responsive-container-open { display:none; }
.ac-join .wp-block-button__link, .ac-button-gold .wp-block-button__link { background:var(--ac-gold); color:var(--ac-navy); border-radius:0; font-size:11px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.ac-hero { position:relative; min-height:min(760px,calc(100vh - 88px)); overflow:hidden; background:var(--ac-blue); color:#fff; }
.ac-hero__content { position:relative; z-index:2; display:flex; min-height:min(760px,calc(100vh - 88px)); max-width:1240px; margin-inline:auto; flex-direction:column; justify-content:center; padding:90px 24px 120px; }
.ac-hero__image { position:absolute; inset:0; z-index:0; }
.ac-hero__image > .wp-block-group__inner-container { height:100%; }
.ac-hero__image figure { height:100%; margin:0; }
.ac-hero__image img { width:100%; height:100%; object-fit:cover; object-position:72% center; filter:saturate(.92) contrast(1.04); animation:ac-hero-scale 9s cubic-bezier(.2,.7,.2,1) both; }
.ac-hero__image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,26,82,.97) 0%,rgba(18,51,143,.84) 42%,rgba(43,85,214,.16) 78%),linear-gradient(0deg,rgba(8,26,82,.72),transparent 55%); }
.ac-kicker { display:flex; align-items:center; gap:18px; margin:0 0 23px; font-size:10px; letter-spacing:.12em; font-weight:800; text-transform:uppercase; color:#d7ddf4; }
.ac-kicker strong { background:var(--ac-gold); color:var(--ac-navy); display:inline-block; padding:8px 10px; margin-right:0; }
.ac-hero h1 { max-width:850px; margin:0; font-size:clamp(66px,9.6vw,142px); font-weight:900; letter-spacing:-.045em; line-height:.76; color:#fff; }
.ac-hero h1 em, .ac-staff h2 em { color:var(--ac-gold); font-style:italic; }
.ac-hero__lead { max-width:620px; margin:34px 0 0; color:rgba(255,255,255,.82); font-size:clamp(16px,1.5vw,20px); line-height:1.7; }
.ac-stats { max-width:1220px; margin:-52px auto 0; position:relative; z-index:3; display:grid; grid-template-columns:repeat(3,1fr); background:var(--ac-gold); color:var(--ac-navy); border-radius:20px 20px 0 0; overflow:hidden; }
.ac-stats > .wp-block-group { padding:30px 32px; border-right:1px solid rgba(8,26,82,.32); }
.ac-stats > .wp-block-group:last-child { border:0; }
.ac-stats h3,.ac-stats strong { display:block; margin:0; font:900 56px/.85 "Barlow Condensed",Impact,sans-serif; letter-spacing:-.03em; }
.ac-stats p { font-size:12px; }
.ac-intro { text-align:center; padding-block:110px; }
.ac-intro h2 { max-width:720px; margin:30px auto; font-size:52px; text-transform:none; }
.ac-pill { border:1px solid var(--ac-grey); border-radius:99px; padding:8px 14px; font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.ac-dark { background:#050b22; color:#fff; padding-block:120px; }
.ac-dark__split { display:grid; grid-template-columns:1.05fr .95fr; gap:80px; align-items:center; margin-top:70px; }
.ac-dark__image { position:relative; }
.ac-dark__image img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.ac-stamp { position:absolute; right:-24px; bottom:-26px; background:var(--ac-gold); color:var(--ac-navy); padding:16px 20px; }
.ac-groups { padding-block:120px; }
.ac-groups__cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:56px; }
.ac-card { position:relative; min-height:440px; overflow:hidden; background:var(--ac-navy); color:#fff; }
.ac-card img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; transition:transform .6s ease; }
.ac-card:hover img { transform:scale(1.06); }
.ac-card:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(8,26,82,.06),rgba(8,26,82,.92)); }
.ac-card__content { position:absolute; z-index:1; inset:auto 24px 26px; }
.ac-card h3 { font-size:52px; }
.ac-staff { background:var(--ac-blue); color:#fff; padding-block:120px; }
.ac-staff__grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.ac-staff h2 { font-size:78px; max-width:580px; }
.ac-roster { display:grid; grid-template-columns:1fr 1fr; gap:1px; }
.ac-roster > p { margin:0; border:1px solid rgba(255,255,255,.18); padding:24px; min-height:150px; }
.ac-roster strong { display:block; font:700 32px/.9 "Barlow Condensed"; text-transform:uppercase; margin:18px 0 8px; }
.ac-news { padding-block:120px; }
.ac-news__grid { display:grid; grid-template-columns:1.45fr 1fr 1fr; gap:20px; margin-top:60px; }
.ac-news__grid img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.ac-news__blue { background:var(--ac-navy); color:#fff; min-height:100%; padding:30px; display:flex; flex-direction:column; justify-content:flex-end; }
.ac-shop { background:#050b22; color:#fff; padding-bottom:120px; }
.ac-shop-hero { position:relative; min-height:620px; display:flex; align-items:center; overflow:hidden; }
.ac-shop-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(.45); }
.ac-shop-hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,26,82,.82),rgba(8,26,82,.32)); }
.ac-shop-hero__content { position:relative; z-index:1; max-width:1240px; width:100%; margin-inline:auto; padding-inline:24px; }
.ac-shop-hero h2 { font-size:112px; }
.ac-product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:70px; }
.ac-product { background:#101e4c; padding:14px 14px 22px; }
.ac-product img { width:100%; aspect-ratio:1; object-fit:cover; }
.ac-contact { padding-block:120px; display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.ac-contact h2 { font-size:88px; }
.ac-form input,.ac-form select,.ac-form textarea { width:100%; padding:14px; border:1px solid var(--ac-grey); font:inherit; }
.ac-footer { background:var(--ac-navy); color:#fff; padding-block:70px 30px; }
.ac-footer__top { display:flex; justify-content:space-between; align-items:center; }
.ac-footer__logo { width:90px; height:90px; object-fit:contain; }
.ac-footer__signature { font:900 clamp(120px,20vw,280px)/.67 "Barlow Condensed"; letter-spacing:-.08em; margin-top:70px; }
.ac-footer__signature em { color:var(--ac-gold); font-style:italic; }
.ac-info-popup { position:fixed; right:22px; bottom:22px; z-index:30; width:min(390px,calc(100% - 44px)); background:#fff; color:var(--ac-ink); padding:28px; border-top:5px solid var(--ac-gold); box-shadow:0 22px 70px rgba(0,0,0,.24); }
.ac-info-popup[hidden] { display:none; }
.ac-info-popup h3 { font-size:42px; line-height:.88; margin:14px 0; }
.ac-info-popup .ac-kicker { color:#b5970d; }
.ac-info-popup .ac-button-blue { margin-right:10px; }
.ac-info-popup .ac-button-blue .wp-block-button__link { background:var(--ac-gold); color:var(--ac-navy); box-shadow:none; }
.ac-info-popup__close .wp-block-button { position:static; width:auto; }
.ac-info-popup__close .wp-block-button__link { position:absolute; top:14px; right:14px; display:grid; width:32px!important; height:32px!important; min-height:32px; padding:0; place-items:center; align-self:flex-start; border-radius:4px; background:#f1f3f8; color:var(--ac-navy); box-shadow:none; font-size:0; }
.ac-info-popup__close .wp-block-button__link:after { content:"×"; font-size:22px; font-weight:500; line-height:1; }
.wp-block-button.ac-button-gold, .wp-block-button.ac-button-blue { display:inline-block; background:transparent; padding:0; border:0; border-radius:0; }
.ac-button-gold .wp-block-button__link,
.ac-button-blue .wp-block-button__link { display:inline-flex; min-height:50px; align-items:center; justify-content:center; padding:0 20px; box-shadow:0 16px 34px rgba(8,26,82,.16); transition:transform 180ms ease,box-shadow 180ms ease,background 180ms ease; }
.ac-button-gold .wp-block-button__link:hover,
.ac-button-blue .wp-block-button__link:hover { transform:translateY(-3px); background:var(--ac-white); }
.ac-button-blue .wp-block-button__link { background:var(--ac-blue); color:var(--ac-white); }
.ac-button-blue .wp-block-button__link:hover { background:var(--ac-navy); }
.ac-hero .wp-block-buttons { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:36px; }
.ac-hero .ac-button-blue .wp-block-button__link { background:transparent; border-bottom:2px solid var(--ac-gold); box-shadow:none; padding-inline:0; }
.ac-hero .ac-button-blue .wp-block-button__link:hover { background:transparent; color:var(--ac-gold); transform:none; }
.ac-approach { display:grid; grid-template-columns:1fr 1fr; gap:70px; max-width:1220px; margin-inline:auto; padding-block:100px; }
.ac-approach h2 { font-size:clamp(48px,5.8vw,78px); }
.ac-approach > .wp-block-group { min-width:0; }
.ac-guides { display:grid; grid-template-columns:1fr 1fr; gap:50px; max-width:1220px; margin-inline:auto; padding-block:0 110px; }
.ac-guides h3 { margin:0; font-size:28px; }
.ac-guides p { color:#6c7487; font-size:12px; }
.ac-dark h2 span,.ac-groups h2 span,.ac-news h2 span,.ac-contact h2 span { color:var(--ac-blue); }
.ac-dark h2,.ac-staff h2,.ac-shop-hero h2 { font-size:clamp(64px,7vw,104px); }
.ac-dark h2 span { color:var(--ac-blue); }
.ac-dark__split { max-width:1220px; margin-inline:auto; }
.ac-card h3 { margin:0; font-size:52px; }
.ac-card .ac-kicker { margin-bottom:10px; }
.ac-card .ac-kicker strong { background:transparent; color:var(--ac-gold); padding:0; }
.ac-news h2 { font-size:clamp(52px,6vw,84px); }
.ac-news__grid h3 { margin:14px 0 0; font-size:34px; }
.ac-news__grid .ac-kicker { margin:18px 0 0; }
.ac-shop-hero__content { max-width:1220px; padding-inline:0; }
.ac-shop-hero h2 { margin:0; }
.ac-shop-hero p { max-width:620px; color:rgba(255,255,255,.78); font-size:18px; line-height:1.7; }
.ac-product p { margin:12px 0 0; color:#fff; font-size:12px; }
.ac-contact h2 { font-size:clamp(64px,7vw,104px); }
.ac-contact > .wp-block-group { min-width:0; }
.ac-contact .ac-form h3 { font-size:34px; }
.ac-contact .ac-form .wpcf7 { margin-top:20px; }
.ac-footer__logo { margin:0; }
.ac-footer__top > .wp-block-group:last-child { display:flex; align-items:center; gap:20px; }
.ac-footer__top > .wp-block-group:last-child p { margin:0; font-family:"Barlow Condensed",Impact,sans-serif; font-size:28px; text-transform:uppercase; }
.ac-footer__signature p { margin:0; }
@keyframes ac-hero-scale { from { transform:scale(1.04); } to { transform:scale(1); } }
@media (max-width:900px) {
 .ac-header__inner{grid-template-columns:1fr auto; width:calc(100% - 30px); min-height:74px; gap:12px}.ac-brand__logo{width:48px;height:48px}.ac-brand__logo img{width:44px;height:44px}.ac-brand__name strong{font-size:20px}.ac-brand__tagline{display:block}.ac-brand{gap:10px}.ac-nav{display:block; min-height:44px; width:44px; flex:none}.ac-nav .wp-block-navigation__responsive-container-open{display:grid; width:44px; height:44px; place-items:center; border:1px solid rgba(255,255,255,.35); background:transparent; color:#fff}.ac-nav .wp-block-navigation__responsive-container-open svg{fill:currentColor}.ac-nav .wp-block-navigation__responsive-container{display:none}.ac-nav .wp-block-navigation__responsive-container.is-menu-open{display:flex}.ac-join{display:none!important}.ac-hero{min-height:690px}.ac-hero__content{min-height:690px; justify-content:flex-end; padding:70px 15px 126px}.ac-hero__image{min-height:690px}.ac-hero__image:after{background:linear-gradient(90deg,rgba(8,26,82,.94),rgba(18,51,143,.55)),linear-gradient(0deg,rgba(8,26,82,.82),transparent 70%)}.ac-hero h1{font-size:clamp(60px,17vw,95px); line-height:.8}.ac-hero__lead{font-size:14px}.ac-kicker{align-items:flex-start; flex-direction:column; gap:8px}.ac-hero .wp-block-buttons{align-items:flex-start; flex-direction:column; gap:22px}.ac-stats{margin:-22px 15px 0; grid-template-columns:1fr}.ac-stats > .wp-block-group{border-right:0;border-bottom:1px solid rgba(8,26,82,.25);padding:22px 20px}.ac-stats h3{font-size:44px}.ac-intro,.ac-dark,.ac-groups,.ac-staff,.ac-news,.ac-contact{padding-block:84px}.ac-approach,.ac-guides,.ac-dark__split,.ac-staff__grid,.ac-contact{grid-template-columns:1fr;gap:44px}.ac-groups__cards,.ac-news__grid,.ac-product-grid{grid-template-columns:1fr}.ac-shop-hero{min-height:560px}.ac-shop-hero h2{font-size:84px}.ac-shop-hero__content{padding-inline:15px}.ac-shop-hero p{font-size:16px}.ac-footer__top{align-items:flex-start;flex-direction:column}.ac-footer__signature{font-size:150px}.ac-footer__top > .wp-block-group:last-child{align-items:flex-start; flex-direction:column}
}
@media (prefers-reduced-motion:reduce){.ac-card img{transition:none}}
@media (max-width:900px){
 .ac-info-popup{right:15px;bottom:22px;width:calc(100% - 30px);padding:28px;box-shadow:0 18px 48px rgba(0,0,0,.28)}
 .ac-info-popup h3{font-size:40px}
}
