/*
Theme Name: Blot Chauvin
Author: Visionaire Communication
Description: Thème vitrine Blot Chauvin : actualités et réalisations administrables.
Version: 1.0.4
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: blot-chauvin
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#192320;--green:#6fa33f;--light:#f4f6f3;--muted:#647069}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font:16px 'DM Sans',Arial,sans-serif;line-height:1.6}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.14;letter-spacing:-.04em}h1{font-size:clamp(2.7rem,5.1vw,5.2rem);margin:18px 0 24px;font-weight:800}h2{font-size:clamp(2rem,3.2vw,3.5rem);margin:12px 0 22px}h3{font-size:1.4rem;margin:16px 0}p{margin:0 0 20px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button:focus-visible,a:focus-visible{outline:3px solid #649b25;outline-offset:5px}.demo{background:var(--ink);color:#dee9dc;padding:7px 5%;font-size:12px;letter-spacing:.11em;display:flex;justify-content:space-between}.demo span{letter-spacing:0}header{height:98px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e6ebe5}.brand img{width:182px;max-height:75px;object-fit:contain}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a.active{color:#558922}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:var(--ink);padding:16px 25px;border:0;border-radius:4px;font-weight:700;letter-spacing:0;transition:background .2s,transform .2s}.btn:hover{background:#82b950;transform:translateY(-2px)}.btn.small{padding:12px 18px}.btn.light{background:#fff}.btn.outline{background:transparent;border:1px solid #c4d0c2}.menu{display:none}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:700;color:#5b8739}.hero{display:grid;grid-template-columns:48% 52%;min-height:650px;background:var(--ink);color:#fff}.hero-copy{padding:70px 11% 50px}.hero .eyebrow{color:#afce89}.hero p{color:#c4d0c8;max-width:470px;font-size:18px}.hero-img{position:relative;overflow:hidden}.hero-img>img{width:100%;height:100%;object-fit:cover}.caption{position:absolute;bottom:32px;left:30px;background:rgba(255,255,255,.95);padding:18px 24px;color:var(--ink);border-left:4px solid var(--green);max-width:85%}.caption small{display:block;color:var(--muted)}.actions{display:flex;gap:16px;flex-wrap:wrap;margin:26px 0}.hero-note{font-size:13px!important;border-top:1px solid #3d4840;padding-top:23px;margin-top:35px!important}.ribbon{display:flex;justify-content:space-around;gap:20px;background:#edf3e8;padding:22px 5%;font-weight:600;font-size:14px}.section{padding:82px 5%;max-width:1600px;margin:auto}.section.gray{background:var(--light);max-width:none}.headrow{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.headrow h2{max-width:780px;margin-bottom:0}.textlink{font-weight:700;border-bottom:1px solid;padding-bottom:4px;display:inline-block}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.grid.four{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:1px solid #e3e9e0;border-radius:6px;overflow:hidden;transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #19232012}.card>img{width:100%;height:260px;object-fit:cover}.card-body{padding:26px}.card p{color:var(--muted);font-size:15px}.tag{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#5c7a45;font-weight:700}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.portrait{height:620px;width:100%;object-fit:cover;object-position:50% 30%;border-radius:6px}.split .copy{max-width:550px}.split .copy p{color:var(--muted);font-size:18px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.step{border-top:1px solid #ccd5c8;padding-top:20px}.step b{font-size:32px;color:#6d9d39}.step p{color:var(--muted)}.reviews{background:var(--ink);color:#fff}.reviews .card{background:#24302a;color:#fff;border-color:#3b473f}.reviews .card p{color:#d8e3da}.stars{color:var(--green);letter-spacing:4px;font-size:20px}.notice{font-size:13px;color:var(--muted)}.reviews .notice{color:#b6c7b8}.cta{background:var(--green);padding:55px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin:0;font-size:2.5rem;max-width:750px}.cta .btn{background:var(--ink);color:#fff}.pagehero{padding:65px 5%;background:var(--light)}.pagehero h1{max-width:900px;font-size:clamp(2.8rem,4.4vw,4.6rem)}.pagehero p{max-width:680px;color:var(--muted);font-size:18px}.crumb{font-size:13px;color:var(--muted);margin-bottom:20px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 30px}.filter{padding:10px 18px;border:1px solid #cfd7cc;background:#fff;border-radius:25px}.filter.active{background:var(--ink);color:#fff}.detail-img{width:100%;max-height:600px;object-fit:cover;border-radius:5px}.article{max-width:850px;margin:auto}.article p{font-size:18px;color:#526058}.article h2{font-size:2rem;margin-top:40px}.article ul{font-size:18px;padding-left:22px}.article li{margin:12px 0}.faq details{border-bottom:1px solid #d9e1d5;padding:20px 0}.faq summary{cursor:pointer;font-weight:600}.faq details p{margin-top:15px;color:var(--muted)}.partners{display:flex;gap:25px;flex-wrap:wrap;justify-content:space-between;font-size:22px;font-weight:800;color:#60715e;padding-top:25px;border-top:1px solid #dce4d6}.contactgrid{display:grid;grid-template-columns:1.5fr 1fr;gap:70px}form{background:var(--light);padding:35px;border-radius:6px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px;font-weight:600}input,select,textarea{display:block;width:100%;padding:13px;margin-top:7px;border:1px solid #ccd7c6;border-radius:3px;background:#fff}textarea{min-height:140px;resize:vertical}.full{grid-column:1/-1}.check{display:flex;gap:12px;align-items:start;font-weight:400}.check input{width:auto;margin-top:6px}.result{background:#e1efd2;padding:22px;border-radius:4px;margin-top:20px}.mini{border-top:1px solid #dce3d8;padding:20px 0}.mini h3{font-size:1.2rem}footer{padding:55px 5% 25px;background:#eef2eb}.footgrid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:40px}.footgrid img{width:180px;margin-bottom:24px}.footgrid h3{font-size:16px;letter-spacing:0}.footgrid a{display:block;margin:9px 0;font-size:14px}.footgrid p{font-size:14px;color:var(--muted)}.bottom{border-top:1px solid #cad7c4;margin-top:35px;padding-top:22px;font-size:12px;display:flex;justify-content:space-between;gap:20px}dialog{border:0;border-radius:10px;max-width:570px;width:90%;padding:48px;box-shadow:0 20px 90px #0005}dialog::backdrop{background:#192320b3;backdrop-filter:blur(5px)}dialog h2{font-size:2.6rem}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:28px}.dismiss.textlink{display:block;width:fit-content;margin-top:20px}.mobile-call{display:none}@media(max-width:1000px){nav{gap:15px}.hero-copy{padding:50px 8%}.hero{min-height:570px}.grid.four{grid-template-columns:repeat(2,1fr)}.split{gap:35px}.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.demo span{display:none}header{height:80px}.brand img{width:145px}.menu{display:block;background:none;border:0;font-size:26px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:25px 5%;box-shadow:0 15px 20px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6%}.hero-img{height:350px}.ribbon{flex-wrap:wrap;font-size:12px;justify-content:start}.section{padding:52px 6%}.grid,.grid.four,.split,.contactgrid{grid-template-columns:1fr}.headrow{align-items:start;flex-direction:column}.portrait{height:500px}.steps{gap:22px}.cta{flex-direction:column;align-items:start;padding:40px 6%}.cta h2{font-size:2rem}.footgrid{grid-template-columns:1fr 1fr;gap:25px}.bottom{flex-direction:column}.fields{grid-template-columns:1fr}.pagehero{padding:40px 6%}form{padding:24px}.card>img{height:260px}dialog{padding:35px}.partners{font-size:18px}.hero h1{font-size:3.1rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
body{padding-bottom:92px}header{height:92px}nav{gap:22px}.hero{min-height:640px}.hero-copy{padding-top:58px}.hero-img::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#19232018,transparent 25%);pointer-events:none}.stats{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:35px;padding:48px 5%;align-items:center;background:#fff}.stats h2{font-size:2rem;margin:10px 0}.stat{border-left:1px solid #dde6d6;padding-left:32px}.stat strong{font-family:Manrope,Arial,sans-serif;font-size:3.7rem;line-height:1.2;letter-spacing:-.05em}.stat p{margin:6px 0;color:#405038;font-weight:600}.stat small{font-size:12px;color:#6c7868}.reviews{padding-top:50px;padding-bottom:50px}.reviews .eyebrow{color:#afce89}.reviews h2{font-size:2.8rem}.reviews .btn.outline{color:#fff;border-color:#73816c}.reviews .headrow{align-items:center}.reviews .card:first-child{border-color:var(--green);background:#2a392c}.public-slice{background:#1b3027;color:white;max-width:none}.public-slice .eyebrow{color:#afce89}.public-slice p{color:#c8d6cc;font-size:18px}.public-slice .btn.outline{color:#fff;border-color:#92a58d}.public-list>div{border-bottom:1px solid #47604e;padding:15px 0 15px 55px;position:relative}.public-list span{position:absolute;left:0;top:25px;color:#afce89;font-size:18px}.public-list h3{margin:6px 0 10px}.public-list p{font-size:16px;margin:0 0 15px}.idea{border-top:3px solid var(--green);padding:28px;background:#fff;border-radius:4px;display:flex;flex-direction:column;align-items:start}.idea p{color:var(--muted);flex:1}.idea .btn{font-size:14px}.project-note{padding:40px;background:#eff4e9;border-radius:7px}.sticky-contact{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fffef8fa;border-top:1px solid #d6dfd0;backdrop-filter:blur(14px);display:flex;justify-content:center;align-items:center;gap:32px;padding:15px 5%;box-shadow:0 -5px 25px #19232012}.sticky-contact div{margin-right:35px}.sticky-contact strong,.sticky-contact span{display:block}.sticky-contact span{font-size:13px;color:#67755f}.sticky-contact .call{font-weight:700}.lead-row{padding:28px;background:#f3f6f0;border:1px solid #d9e4d1;margin-bottom:20px;border-radius:7px;overflow-wrap:anywhere}.lead-row p{margin-bottom:8px}.lead-row .btn{margin-top:14px}#welcome{max-width:570px;padding:34px 40px;max-height:90vh;overflow:auto}#welcome h2{margin:8px 0 15px;font-size:3rem}#welcome>p{color:var(--muted);font-size:16px}#lead-popup{padding:0;background:transparent}#lead-popup label{margin-bottom:12px}#lead-popup .check{font-size:13px;font-weight:400;margin:15px 0}#lead-popup button{width:100%}#lead-popup small{display:block;font-size:12px;color:#65735e;margin-top:14px}.btn:disabled{opacity:.6;cursor:wait;transform:none}.card{border-radius:10px}.card>img{transition:transform .5s}.card:hover>img{transform:scale(1.025)}@media(max-width:1100px){nav{gap:15px;font-size:13px}.stats{gap:20px}.stat{padding-left:20px}.stat strong{font-size:3rem}.sticky-contact div{margin-right:0}}@media(max-width:850px){nav{gap:11px}.brand img{width:150px}.stats{grid-template-columns:1fr 1fr}.stat:last-child{border-left:0;padding-left:0}.sticky-contact{gap:20px}.sticky-contact span{display:none}}@media(max-width:750px){header{height:80px}.stats{padding:35px 6%;gap:25px}.stats>div:first-child{grid-column:1/-1}.stat{padding-left:0;border-left:0}.stat strong{font-size:3.3rem}.stat:last-child{grid-column:1/-1;border-top:1px solid #d9e2d3;padding-top:20px}.stat:last-child strong{font-size:2rem}.reviews h2{font-size:2.2rem}.reviews .actions{margin:0}.sticky-contact{padding:12px 5%;justify-content:space-between;gap:10px}.sticky-contact div{display:none}.sticky-contact .btn{font-size:14px;padding:12px 18px}.sticky-contact .call{font-size:14px}body{padding-bottom:74px}.public-list>div{padding-left:42px}#welcome{padding:28px;width:94%;max-height:88vh}.project-note{padding:28px}.footgrid{grid-template-columns:1fr 1fr}.hero-copy{padding-top:40px}}
/* Three audiences, with all existing sections retained. */
nav{gap:17px;font-size:13px}header{padding-left:4%;padding-right:4%}.brand img{width:160px}.expert-marquee{position:relative;overflow:hidden;background:#e0e9d7;border-block:1px solid #bcd5a6;color:#273b20;padding:18px 0}.marquee-track{display:flex;width:max-content;animation:expert-flow 65s linear infinite}.marquee-group{display:flex;align-items:center;gap:42px;padding-right:42px;white-space:nowrap;flex-shrink:0}.marquee-group span{font:600 16px Manrope,Arial,sans-serif;letter-spacing:.025em}.marquee-group i{width:7px;height:7px;background:#719549;transform:rotate(45deg);flex-shrink:0}.expert-marquee:hover .marquee-track,.expert-marquee:focus-within .marquee-track,.expert-marquee.paused .marquee-track{animation-play-state:paused}.marquee-pause{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:1px solid #b4c9a3;background:#e6f1dc;box-shadow:0 0 15px 12px #e0e9d7;padding:6px 12px;border-radius:4px;font-size:14px;min-width:40px}@keyframes expert-flow{to{transform:translateX(-50%)}}.audience-section{padding-top:60px;padding-bottom:60px}.audience-section .headrow>p{max-width:390px;color:var(--muted);margin:0}.audience-card{border:1px solid #d6e2cc;padding:32px;background:linear-gradient(150deg,#f8faf6,#edf4e6);border-radius:10px;display:flex;flex-direction:column;align-items:start;transition:transform .25s,box-shadow .25s}.audience-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #19232012}.audience-card h3{font-size:1.9rem;margin:26px 0 18px}.audience-card p{color:#61725a;flex:1}.client-references{display:grid;grid-template-columns:1fr 1.25fr;gap:50px;align-items:center;background:#f4f6f3;max-width:none;padding-top:50px;padding-bottom:50px;border-top:1px solid #e2e8dc}.client-references h2{font-size:2.5rem}.client-references p{color:var(--muted);margin:0}.reference-grid{display:flex;gap:22px;flex-wrap:wrap}.reference-card{background:white;border:1px solid #e0e8d9;border-radius:8px;padding:24px;flex:1;min-width:220px}.reference-logo{height:110px;overflow:hidden;max-width:260px;display:flex;align-items:center;margin-bottom:18px}.reference-logo img{width:100%;height:100%;object-fit:contain}.reference-logo img.brocherieux-logo{object-fit:cover;object-position:left center}.reference-card h3{font-size:1.1rem;letter-spacing:-.015em;margin-bottom:0}.client-references .reference-grid:has(.reference-card:only-child){max-width:420px}@media(max-width:1120px){header{height:80px}.brand img{width:145px}nav{gap:11px;font-size:12px}nav .btn.small{padding:11px 12px}}@media(max-width:1000px){.menu{display:block;border:0;background:none;font-size:25px}header nav{display:none;position:absolute;top:80px;left:0;right:0;padding:25px 5%;background:#fff;box-shadow:0 15px 20px #0001}header nav.open{display:flex;flex-direction:column;align-items:stretch;font-size:16px;gap:18px}.client-references{gap:25px}.reference-card{min-width:190px}}@media(max-width:750px){.client-references{grid-template-columns:1fr;padding:38px 6%}.client-references h2{font-size:2.1rem}.reference-grid{flex-direction:column}.reference-logo{height:100px;max-width:245px}.audience-card{padding:28px}.marquee-group{gap:28px;padding-right:28px}.marquee-group span{font-size:14px}.expert-marquee{padding:16px 0}.audience-section .headrow>p{max-width:none}}@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.marquee-pause{display:none}}
.google-rating{display:flex;align-items:center;gap:22px;margin:18px 0 25px}.google-rating>strong{font:800 54px Manrope,Arial,sans-serif;color:#fff;letter-spacing:-.06em}.google-rating strong>span{font-size:22px;color:#a9b8a4}.google-rating p{margin:0;font-weight:700}.google-rating small{font-size:12px;color:#bdc9b7;display:block;max-width:300px}.cooperative{display:grid;grid-template-columns:.65fr 1.35fr;gap:65px;align-items:center;border-top:1px solid #e0e7da}.cooperative p{color:var(--muted);max-width:660px}.coop-logo{background:white;border:1px solid #e2e8de;padding:24px;border-radius:8px;max-width:300px}.coop-logo img{width:100%;height:auto}@media(max-width:750px){.cooperative{grid-template-columns:1fr;gap:30px}.coop-logo{max-width:220px}.google-rating>strong{font-size:45px}.google-rating{gap:16px}}

/* Outdoor projects and locally supplied references — October update. */
.outdoor-main{display:block;position:relative;overflow:hidden;border-radius:12px;background:var(--ink)}.outdoor-main>img{width:100%;height:540px;object-fit:cover}.outdoor-caption{position:absolute;left:25px;bottom:25px;right:25px;padding:17px 23px;border-left:4px solid var(--green);background:#fffffff0;font-weight:600;max-width:620px}.outdoor-duo{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}.outdoor-duo figure{margin:0;border:1px solid #dce4d6;border-radius:10px;overflow:hidden}.outdoor-duo img{width:100%;height:340px;object-fit:cover}.outdoor-duo figcaption{padding:18px 22px;background:#f4f6f3;font-weight:600}.outdoor-showcase .headrow>p{max-width:380px;color:var(--muted)}.outdoor-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px}.outdoor-copy p{color:var(--muted)}.reference-names{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:30px;border-top:1px solid #d2ddca}.reference-names>div:only-child{grid-column:1/-1}.reference-names h3{font-size:1.25rem}.reference-chips{display:flex;gap:10px;flex-wrap:wrap}.reference-chips>span{padding:9px 15px;background:white;border:1px solid #d4dfcc;border-radius:6px;font-size:14px;color:#415837}.grid.four{grid-template-columns:repeat(3,minmax(0,1fr))}@media(min-width:1001px) and (max-width:1280px){header nav{gap:11px;font-size:12px}header{padding-inline:3%}.brand img{width:135px}nav .btn.small{padding:11px 10px}}@media(max-width:1000px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.outdoor-main>img{height:420px}.outdoor-duo img{height:280px}}@media(max-width:750px){.grid.four,.reference-names,.outdoor-duo,.outdoor-copy{grid-template-columns:1fr}.outdoor-main>img{height:330px}.outdoor-caption{position:static;display:block;padding:16px;background:#f0f4ec;font-size:14px}.outdoor-duo{gap:20px;margin-top:20px}.outdoor-duo img{height:auto;aspect-ratio:4/3}.reference-names{gap:28px}.reference-chips>span{font-size:13px}.outdoor-copy{gap:10px}}
/* Local authority references preserve each supplied logo's proportions. */
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:18px}.client-references{grid-template-columns:1fr}.reference-card{min-width:0}.reference-logo{max-width:none;height:120px;padding:12px}.reference-logo img{object-fit:contain}.reference-logo.dark-logo{background:#1c3028;border-radius:5px;padding:17px}.reference-logo img.brocherieux-logo{object-fit:cover;object-position:left}.client-references .reference-grid:has(.reference-card:only-child){max-width:none;grid-template-columns:minmax(0,380px)}.sketch-board{border:1px solid #ccd9c3;border-radius:12px;overflow:hidden;background:#f7faf3}.sketch-board svg{width:100%;height:auto;display:block;max-height:500px}.sketch-drawing{stroke:#344331;stroke-width:2.2}.sketch-title{font:600 16px 'DM Sans',Arial,sans-serif;fill:#34502b;letter-spacing:2px}.sketch-subtitle{font:15px 'DM Sans',Arial,sans-serif;fill:#69785e}.sketch-guide{stroke:#758768;stroke-width:1.4}.sketch-fixings{stroke:#5b8739;stroke-width:3}.sketch-toolbar{padding:17px 22px;display:flex;justify-content:space-between;align-items:center;gap:15px;background:#edf3e7;border-top:1px solid #d7e2ce;font-size:14px}.sketch-toolbar>div{display:flex;gap:10px}.sketch-control{padding:8px 14px;border:1px solid #b8c9a9;background:#fff;border-radius:5px;font-size:14px}.fence-process .headrow>p{max-width:380px;color:var(--muted)}.sketch-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:28px 0}.sketch-steps>div{border-top:2px solid #d9e3cf;padding-top:16px}.sketch-steps span{font-size:14px;color:#5a7a3c;font-weight:700}.sketch-steps h3{font-size:1.2rem;letter-spacing:-.025em}.sketch-steps p{color:var(--muted);font-size:15px}.sketch-board:not(.playing) .sketch-drawing>*{opacity:0}.playing .sketch-guide{animation:sketch-enter 1.4s .1s both}.playing .sketch-posts{animation:sketch-enter 2s 1.8s both}.playing .sketch-panels{animation:sketch-enter 3s 4.1s both}.playing .sketch-fixings{animation:sketch-enter 1.6s 7.4s both}.playing .sketch-posts path,.playing .sketch-panel path{stroke-dasharray:900;stroke-dashoffset:0;animation:sketch-draw 2.3s both}.playing .sketch-posts path{animation-delay:1.8s}.playing .sketch-panel path{animation-delay:4.1s}.playing.sketch-paused *{animation-play-state:paused!important}@keyframes sketch-enter{from{opacity:0}to{opacity:1}}@keyframes sketch-draw{from{stroke-dashoffset:900}to{stroke-dashoffset:0}}@media(max-width:750px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reference-card{padding:15px}.reference-card h3{font-size:1rem}.reference-logo{height:95px;padding:6px}.reference-logo.dark-logo{padding:9px}.sketch-steps{grid-template-columns:1fr 1fr;gap:18px}.sketch-toolbar{align-items:start;flex-direction:column;padding:15px}.sketch-title{font-size:18px}.sketch-subtitle{font-size:17px}}@media(prefers-reduced-motion:reduce){.sketch-board:not(.playing) .sketch-drawing>*{opacity:1}.sketch-board *{animation:none!important;stroke-dashoffset:0!important}}
.hospitality-reference{display:grid;grid-template-columns:.8fr 1.6fr;gap:40px;align-items:center;background:#fff;border:1px solid #cddabf;border-left:5px solid var(--green);border-radius:12px;padding:35px;grid-column:1/-1}.hospitality-brands{display:flex;align-items:center;justify-content:center;gap:25px}.hospitality-brands img:first-child{width:125px;height:125px;object-fit:contain}.hospitality-brands img:last-child{width:110px;height:95px;object-fit:contain}.hospitality-reference h3{font-size:2rem;margin:12px 0 18px}.hospitality-reference p{max-width:650px;margin-bottom:20px}.reference-logo img.batiloir-logo{object-fit:contain}.reference-card:has(.ibis-logo){border-color:#a7c784;background:#fbfdf7}.btn{border-radius:8px;transition:background .2s,transform .2s,box-shadow .2s}.btn:hover{box-shadow:0 7px 18px #19232018}.scroll-reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease var(--reveal-delay,0ms),transform .6s ease var(--reveal-delay,0ms)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}nav>a:not(.btn){transition:color .2s}nav>a:not(.btn):hover{color:#558326}.fence-process{padding-top:55px;padding-bottom:55px}@media(max-width:750px){.hospitality-reference{grid-template-columns:1fr;gap:24px;padding:25px}.hospitality-reference h3{font-size:1.6rem}.hospitality-brands{justify-content:start}.hospitality-brands img:first-child{width:100px;height:100px}.hospitality-brands img:last-child{width:100px;height:85px}}@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;transform:none;transition:none}}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:35px}.project-gallery img{width:100%;max-height:650px;object-fit:contain;background:#f2f5ee;border-radius:10px}.project-gallery:has(img:only-child){grid-template-columns:1fr}.project-gallery img:only-child{max-width:950px;margin:auto}.card>img{object-position:center}.detail-img{object-fit:contain;background:#f2f5ee}@media(max-width:750px){.project-gallery{grid-template-columns:1fr}}
.municipal-photo{margin:0}.municipal-photo img{width:100%;max-height:520px;object-fit:contain;background:#f3f5ef;border-radius:10px}.municipal-photo figcaption{color:var(--muted);font-size:13px;margin-top:10px}

body.admin-bar header{top:32px}.wp-admin-note{padding:16px;background:#fff3cf}.entry-content img{max-width:100%;height:auto}.entry-content .wp-block-gallery{display:flex;gap:18px;flex-wrap:wrap}.entry-content .wp-block-image{margin:20px 0}.entry-content .wp-block-gallery figure{flex:1 1 300px}.entry-content{overflow-wrap:anywhere}.post-thumbnail{width:100%;max-height:650px;object-fit:contain;border-radius:10px}.pagination{display:flex;gap:10px;margin-top:30px;flex-wrap:wrap}.page-numbers{padding:10px 16px;background:#eef3e8;border-radius:6px}.page-numbers.current{background:#6fa33f}.honeypot{position:absolute;left:-10000px}.bc-form label{margin-bottom:15px}.bc-form .check input{width:auto}.bc-filter.active{background:#192320;color:white}.bc-entry-title{max-width:1000px}.screen-reader-text{position:absolute;left:-10000px}.skip-link:focus{position:fixed;left:15px;top:15px;background:white;z-index:999;padding:15px}@media(max-width:782px){body.admin-bar header{top:46px}}

/* WordPress 1.0.1: complete cards and balanced reference carousel. */
.audience-section .grid{align-items:stretch}
.audience-section .audience-card{display:flex;flex-direction:column;height:100%;min-width:0}
.audience-card .textlink{margin-top:auto;align-self:flex-start}
.bc-reference-carousel{min-width:0;width:100%}
.bc-reference-carousel .reference-grid{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - 54px)/4);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 0 14px;scrollbar-width:thin}
.bc-reference-carousel .reference-grid>.reference-card{scroll-snap-align:start;display:flex;flex-direction:column;margin:0;min-width:0;height:100%}
.bc-reference-carousel .reference-card h3{margin-top:auto;padding-top:14px;font-size:1.15rem}
.bc-reference-carousel .reference-logo{height:135px;width:100%;flex-shrink:0}
.bc-carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.bc-carousel-controls button{border:1px solid #b8c9a9;border-radius:8px;background:#fff;color:#192320;padding:9px 15px}
.reviews .grid:has(>.card:only-child){grid-template-columns:minmax(0,760px)}
.reviews .tag{color:#b1d48f}
@media(max-width:1000px){.bc-reference-carousel .reference-grid{grid-auto-columns:calc((100% - 36px)/3)}}
@media(max-width:750px){.bc-reference-carousel .reference-grid{grid-auto-columns:calc((100% - 18px)/2)}.bc-reference-carousel .reference-logo{height:95px}}
@media(max-width:420px){.bc-reference-carousel .reference-grid{grid-auto-columns:85%}}
@media(prefers-reduced-motion:reduce){.bc-reference-carousel .reference-grid{scroll-behavior:auto}}

.bc-legal h2{margin-top:40px}.bc-legal li{margin-bottom:8px}.bc-legal a{text-decoration:underline;overflow-wrap:anywhere}.bc-legal .notice{margin-top:35px}
