
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}h1,h2,h3,p,figure{margin-top:0}a{text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #b51e29;outline-offset:5px}img{max-width:100%;height:auto}.wp-site-blocks>header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #eee}.admin-bar .wp-site-blocks>header{top:32px}.header-inner{max-width:1440px;margin:auto;padding:16px 4%;display:flex;align-items:center;gap:22px}.header-inner .wp-block-site-title{font-size:28px;margin:0;font-weight:800}.header-inner .wp-block-site-title a{text-decoration:none}.header-inner .wp-block-navigation{margin-left:auto;font-size:14px}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;background:#b51e29;color:white;border:1px solid #b51e29;text-decoration:none;padding:14px 24px;border-radius:2px;font-size:14px;font-weight:700}.is-style-outline .wp-block-button__link{background:transparent;border:1px solid currentColor;color:inherit}.header-inner .wp-block-buttons{margin:0}.hero{position:relative;min-height:690px;min-height:82svh;display:flex;align-items:center;background:#232725;color:white}.hero-image{position:absolute;inset:0;margin:0;width:100%;height:100%}.hero-image img{width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,18,16,.8),rgba(8,18,16,.2))}.hero-copy{position:relative;z-index:1;padding:80px 7%;max-width:1000px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:28px}.hero h1{font-size:clamp(44px,5.6vw,84px);letter-spacing:-3px;line-height:1.06;font-weight:500;margin-bottom:30px}.hero-intro{font-size:20px;line-height:1.6;margin-bottom:32px}.hero .is-style-outline .wp-block-button__link{color:white}.section{padding:96px 7%;margin-block-start:0!important}.section h2{font-size:clamp(32px,3.5vw,50px);letter-spacing:-1.5px;line-height:1.16;font-weight:500;max-width:900px;margin-bottom:24px}.section>p:not(.eyebrow){max-width:720px;color:#5b625d}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:36px 0}.product-card img{width:100%;height:300px;object-fit:cover}.product-card h3{font-size:26px;margin:20px 0 8px;font-weight:500}.product-card p{margin:0 0 10px;font-size:15px}.product-card a{font-weight:700}.secondary .product-card img{height:220px}.know-how{background:#232725;color:#fff;display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center}.know-how>figure img{width:100%;aspect-ratio:1;object-fit:cover}.know-how p{color:#d9ddd7}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:30px 0}.step{border-top:1px solid #737b74;padding-top:12px}.step h3{font-size:14px}.step-number{font-size:13px;color:#ff9da5!important}.inspirations{background:#efefe8}.inspiration-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;margin-top:36px}.inspiration-grid img{height:360px;width:100%;object-fit:cover}.agency-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:40px 0}.agency-card{border-top:2px solid #b51e29;padding-top:24px}.agency-card h3{font-size:20px;line-height:1.35;min-height:54px}.agency-card p{font-size:14px}.project-cta{text-align:center;background:#e7e9e2}.project-cta h2,.project-cta>p{margin-left:auto;margin-right:auto}.project-cta .wp-block-buttons{justify-content:center;margin:32px 0}.footer{background:#232725;color:white;padding-top:55px;padding-bottom:55px}.footer h2{font-size:42px;margin-bottom:10px}.footer p{font-size:14px;color:#d9ddd7!important}.footer a{color:white}.prototype-note{opacity:.75;font-size:12px!important}.wp-block-navigation__responsive-container.is-menu-open{padding:40px}.section[id]{scroll-margin-top:100px}
@media(max-width:1000px){.header-inner{gap:14px}.header-inner .wp-block-navigation{font-size:12px}.header-inner .wp-block-button__link{padding:12px 16px}.know-how{grid-template-columns:1fr}.know-how>figure img{aspect-ratio:2}.agency-grid{grid-template-columns:1fr 1fr}.section{padding:70px 6%}}
@media(max-width:700px){.header-inner{padding:12px 5%}.header-inner .wp-block-site-logo{max-width:46px}.header-inner .wp-block-site-title{font-size:23px}.header-inner>.wp-block-buttons{display:none}.header-inner .wp-block-navigation{font-size:16px}.hero{min-height:690px;min-height:85svh}.hero-copy{padding:65px 7%}.hero h1{letter-spacing:-1.8px}.hero-intro{font-size:17px}.hero .wp-block-buttons{flex-direction:column;align-items:flex-start}.section{padding:56px 7%}.product-grid,.inspiration-grid{grid-template-columns:1fr;gap:30px}.product-card img,.secondary .product-card img{height:240px}.inspiration-grid img{height:260px}.agency-grid{grid-template-columns:1fr;gap:24px}.agency-card h3{min-height:0}.steps{grid-template-columns:1fr 1fr}.eyebrow{letter-spacing:1.3px}.admin-bar .wp-site-blocks>header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.mobile-actions{display:none}@media(max-width:700px){body{padding-bottom:64px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;background:#fff;box-shadow:0 -2px 12px #0002;padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{text-decoration:none;text-align:center;padding:16px 8px;font-size:14px;font-weight:700}.mobile-actions a:last-child{background:#b51e29;color:#fff}}
.afd-details{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:12px 24px;padding:24px;background:#f5f4f1}.afd-details dt{font-weight:600}.afd-details dd{margin:0;overflow-wrap:anywhere}.afd-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.afd-project-grid article{min-width:0}.afd-project-grid img{width:100%;height:280px;object-fit:cover}.afd-project-grid a{color:inherit}.afd-project-grid h3{font-size:1.25rem}.afd-project-grid p{color:#555}@media(max-width:780px){.afd-project-grid{grid-template-columns:1fr}.afd-details{grid-template-columns:1fr;gap:8px}.afd-details dd{margin-bottom:12px}}

/* AFD V0.1.1 : alignement des enfants des grilles Gutenberg. */
:is(.product-grid, .steps, .inspiration-grid, .agency-grid) > * {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
    min-width: 0;
}
:is(.product-grid, .steps, .inspiration-grid, .agency-grid) {
    align-items: start;
}
:is(.product-card, .inspiration-grid) > .wp-block-image {
    margin: 0;
}
:is(.product-card, .inspiration-grid) > .wp-block-image img {
    display: block;
}
/* V0.3 : galerie publique et filtres, sans dépendance JavaScript. */
.afd-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px;margin:28px 0}
.afd-filters>div{flex:1 1 220px;min-width:0}
.afd-filters label{display:block;font-size:15px;font-weight:700;margin-bottom:6px}
.afd-filters select{width:100%;padding:12px;border:1px solid #737b74;background:#fff;color:#232725;font:inherit;border-radius:2px}
.afd-filters button{padding:13px 24px;background:#b51e29;color:white;border:1px solid #b51e29;font:inherit;cursor:pointer;border-radius:2px}
.afd-filters select:focus-visible{outline:3px solid #b51e29;outline-offset:3px}
.afd-result-count{font-size:15px}
.afd-archive-grid.wp-block-post-template{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:0;list-style:none}
.afd-archive-grid.wp-block-post-template>li{margin:0!important;min-width:0}
.afd-archive-grid .wp-block-post-featured-image{margin:0}
.afd-archive-grid .wp-block-post-featured-image img{display:block;width:100%;height:260px;object-fit:cover}
.afd-archive-grid .wp-block-post-title{font-size:24px;margin:18px 0 12px}
@media(max-width:1000px){.afd-archive-grid.wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.afd-archive-grid.wp-block-post-template{grid-template-columns:1fr}.afd-filters{align-items:stretch}.afd-filters>div{flex-basis:100%}}
/* V0.4 : catalogue et agences dynamiques. */
.afd-catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:32px 0}
.afd-catalogue-grid>article{min-width:0;margin:0!important}
.afd-catalogue-grid img{display:block;width:100%;height:260px;object-fit:cover}
.afd-catalogue-grid h3{font-size:24px;font-weight:500;line-height:1.3;margin:18px 0 12px}
.afd-catalogue-grid p{overflow-wrap:anywhere;font-size:16px}
.afd-catalogue-grid a{color:inherit}
@media(max-width:1000px){.afd-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.afd-catalogue-grid{grid-template-columns:1fr}}
