:root {
  --green:#183128;
  --green-soft:#27453a;
  --ivory:#f7f5ef;
  --paper:#fbfaf7;
  --ink:#202522;
  --muted:#68716c;
  --white:#fff;
  --line:rgba(32,37,34,.11);
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--white);line-height:1.65;font-size:16px;overflow-x:hidden}
a,button,input,select,textarea{font:inherit}
a{-webkit-tap-highlight-color:transparent}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;min-height:76px;display:flex;align-items:center;gap:28px;padding:0 max(5vw,24px);padding-top:env(safe-area-inset-top);background:rgba(247,245,239,.93);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.05)}
.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;min-width:max-content}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;font-family:var(--serif);font-size:23px;font-weight:600}
.brand-text{display:flex;flex-direction:column;line-height:1;letter-spacing:.12em}.brand-text strong{font-size:17px;font-weight:750}.brand-text small{font-size:8px;margin-top:7px;font-weight:650;letter-spacing:.18em}
.desktop-nav{display:flex;align-items:center;gap:26px;margin-left:auto}.desktop-nav a{color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.01em}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:0;text-decoration:none;padding:10px 20px;border-radius:4px;font-weight:650;font-size:13px;letter-spacing:.01em;transition:transform .2s ease,opacity .2s ease;cursor:pointer}.btn:hover{transform:translateY(-1px)}
.btn-small{min-height:38px;padding:8px 15px;background:var(--green);color:#fff;font-size:11px}.btn-primary{background:var(--green);color:#fff}.btn-ghost{border:1px solid rgba(255,255,255,.55);color:#fff;background:transparent}.btn-light{background:var(--ivory);color:var(--green)}
.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;padding:0;border:0;background:transparent;position:relative}.menu-toggle span{position:absolute;left:10px;width:24px;height:1.5px;background:var(--ink);transition:.2s}.menu-toggle span:first-child{top:18px}.menu-toggle span:last-child{top:25px}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.hero{min-height:86svh;padding:138px 7vw 58px;position:relative;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(135deg,#1d362b 0%,#345144 45%,#7d8a7f 100%);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,15,.36),rgba(8,20,15,.05) 70%)}.hero-content{position:relative;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700;margin:0 0 17px}.eyebrow.dark{color:#6c756f}
.hero h1,.section-heading h2,.family h2,.copro-block h2,.shop h2{font-family:var(--serif);font-weight:500;letter-spacing:-.025em;line-height:.98;margin:0}.hero h1{font-family:var(--sans);font-size:clamp(52px,5.7vw,80px);font-weight:500;letter-spacing:-.055em;line-height:.98;max-width:780px}.hero-sub{font-size:16px;max-width:610px;margin:22px 0 26px;color:rgba(255,255,255,.83)}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.signature{font-family:var(--serif);font-size:18px;font-style:italic;margin-top:24px;color:#eee4d6}
.section-pad{padding:104px 7vw}.section-heading{max-width:980px;margin-bottom:50px}.section-heading.narrow{max-width:820px;margin-inline:auto;text-align:center}.section-heading h2{font-size:clamp(40px,4.3vw,60px);letter-spacing:-.035em}.section-heading p:last-child{max-width:690px;margin-top:22px;color:var(--muted);font-size:16px}.section-heading.narrow p:last-child{margin-inline:auto}
.audiences{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:0}.audience-card{min-height:500px;position:relative;display:flex;align-items:flex-end;padding:38px;color:#fff;background-size:cover;overflow:hidden}.audience-private{background:linear-gradient(160deg,#486254,#213a2f)}.audience-pro{background:linear-gradient(160deg,#796f61,#3a403b)}.audience-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,18,14,.72),transparent 65%)}.card-content{position:relative;z-index:2;max-width:500px}.card-content h3{font-family:var(--serif);font-size:42px;font-weight:500;letter-spacing:-.02em;line-height:1.02;margin:0 0 15px}.card-content p{font-size:15px;color:rgba(255,255,255,.8);max-width:450px}.text-link{display:inline-block;color:#fff;text-decoration:none;font-weight:650;font-size:13px;margin-top:6px}.dark-link{color:var(--green)}
.services{background:var(--ivory)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{background:transparent;padding:32px 28px 38px;min-height:270px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article span{font-size:10px;color:#7c847f;letter-spacing:.1em}.service-grid h3{font-family:var(--serif);font-size:29px;font-weight:500;line-height:1.05;margin:38px 0 13px}.service-grid p{color:var(--muted);font-size:14px;line-height:1.7}
.copro-block{display:grid;grid-template-columns:1.12fr .88fr;gap:68px;background:var(--green);color:#fff}.copro-copy h2{font-size:clamp(45px,4.8vw,66px)}.copro-copy>p{color:rgba(255,255,255,.75);font-size:16px;max-width:650px}.copro-copy ul{list-style:none;padding:0;margin:30px 0 34px;display:grid;grid-template-columns:1fr 1fr;gap:11px 22px}.copro-copy li{padding-left:18px;position:relative;font-size:14px}.copro-copy li:before{content:"—";position:absolute;left:0;color:rgba(255,255,255,.55)}.copro-panel{background:var(--ivory);color:var(--ink);padding:34px}.proof{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:21px 0;border-top:1px solid var(--line)}.proof strong{font-family:var(--serif);font-size:25px;font-weight:500}.proof span{color:#5d655f;font-size:14px}
.family{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}.family-photo{min-height:590px;background:linear-gradient(145deg,#c8c2b4,#6e786f);position:relative}.family-photo:after{content:"PHOTO PHILIPPE + LOGAN";position:absolute;bottom:21px;left:21px;font-size:9px;letter-spacing:.17em;color:#fff}.family-copy h2{font-size:clamp(46px,4.8vw,68px)}.family-copy p{font-size:16px;color:var(--muted);max-width:590px}
.row-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px}.gallery-item{min-height:430px;background:linear-gradient(145deg,#7d8b80,#3f5b4d);display:flex;align-items:flex-end;padding:21px;color:#fff;font-size:13px}.gallery-item:nth-child(2){background:linear-gradient(145deg,#b49e79,#665d4b)}.gallery-item:nth-child(3){background:linear-gradient(145deg,#66786d,#314337)}
.shop{display:flex;align-items:end;justify-content:space-between;gap:40px;background:var(--green-soft);color:#fff}.shop>div{max-width:810px}.shop h2{font-size:clamp(44px,4.8vw,64px)}.shop p{max-width:650px;color:rgba(255,255,255,.73);font-size:15px}
.quote{background:var(--paper)}.quote-form{max-width:860px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:650}.field input,.field select,.field textarea{width:100%;min-height:50px;border:1px solid #d8d7d2;border-radius:3px;padding:14px 15px;background:#fff;color:var(--ink);font-size:16px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green)}.quote-form .btn{justify-self:start;margin-top:8px}
footer{background:#101915;color:#fff;padding:52px 7vw max(52px,calc(32px + env(safe-area-inset-bottom)));display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:30px;font-size:13px}.footer-brand{display:flex;gap:13px}.brand-mark.light{border-color:#fff}.footer-brand p,footer p{color:rgba(255,255,255,.59);margin:4px 0}
@media(max-width:1000px){.desktop-nav,.site-header>.btn-small{display:none}.menu-toggle{display:block}.desktop-nav[data-open="true"]{display:flex;position:absolute;top:calc(76px + env(safe-area-inset-top));left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;padding:18px 24px 28px;background:rgba(247,245,239,.99);border-bottom:1px solid var(--line);box-shadow:0 18px 35px rgba(0,0,0,.08)}.desktop-nav[data-open="true"] a{width:100%;padding:15px 0;border-bottom:1px solid var(--line);font-size:15px}.audiences,.copro-block,.family{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr}.gallery-item{min-height:360px}.copro-panel{max-width:none}.hero{min-height:84svh}.family-photo{min-height:480px}footer{grid-template-columns:1fr 1fr}}
@media(max-width:640px){body{font-size:15px}.site-header{min-height:68px;padding-left:18px;padding-right:14px}.brand-mark{width:34px;height:34px;font-size:20px}.brand-text strong{font-size:15px}.brand-text small{font-size:7px}.desktop-nav[data-open="true"]{top:calc(68px + env(safe-area-inset-top));padding:12px 20px 24px}.hero{min-height:76svh;padding:108px 20px 38px}.hero h1{font-size:clamp(40px,11.5vw,54px);line-height:1;font-weight:500;letter-spacing:-.05em}.hero-sub{font-size:14px;line-height:1.6;margin:18px 0 22px}.hero-actions{display:grid;grid-template-columns:1fr;gap:9px;max-width:360px}.hero-actions .btn{width:100%}.signature{font-size:16px;margin-top:20px}.section-pad{padding:72px 20px}.section-heading{margin-bottom:36px}.section-heading h2,.family-copy h2,.copro-copy h2,.shop h2{font-size:clamp(39px,11vw,52px);line-height:1}.section-heading p:last-child{font-size:14px;line-height:1.7}.audiences{padding-top:0;gap:8px}.audience-card{min-height:390px;padding:25px 22px}.card-content h3{font-size:37px}.card-content p{font-size:14px}.service-grid{grid-template-columns:1fr;border-left:0}.service-grid article{min-height:auto;padding:25px 4px 27px;border-right:0}.service-grid h3{font-size:28px;margin-top:24px}.copro-block{gap:44px}.copro-copy ul{grid-template-columns:1fr;margin:26px 0 30px}.copro-panel{padding:25px 22px;margin:0 -4px}.proof{grid-template-columns:42px 1fr;padding:18px 0}.family{gap:38px}.family-photo{min-height:390px;margin:0 -20px}.family-copy p{font-size:14px}.row-heading{display:block}.row-heading>a{margin-top:14px}.gallery-grid{gap:8px}.gallery-item{min-height:300px}.shop{display:block}.shop .btn{margin-top:22px;width:100%}.quote-form{grid-template-columns:1fr;gap:14px}.field.full{grid-column:auto}.quote-form .btn{width:100%;justify-self:stretch}.field input,.field select,.field textarea{font-size:16px}footer{grid-template-columns:1fr;gap:22px;padding-left:20px;padding-right:20px}}
@media(max-width:380px){.hero h1{font-size:45px}.section-heading h2,.family-copy h2,.copro-copy h2,.shop h2{font-size:38px}.brand-text{display:none}}

/* Boutique */
.shop{display:block;background:var(--green-soft);color:#fff}
.shop-intro{max-width:900px}
.shop .btn{margin-top:20px}
.shop-preview{background:var(--paper)}
.shop-categories{display:flex;gap:9px;flex-wrap:wrap;margin:-16px 0 34px}
.shop-chip{display:inline-flex;align-items:center;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;color:var(--ink);text-decoration:none;font-size:12px;font-weight:650;background:#fff}
.product-grid{display:grid;grid-template-columns:1.25fr .875fr .875fr;gap:12px}
.product-card{background:#fff;border:1px solid var(--line);overflow:hidden}
.product-image{min-height:260px;background:linear-gradient(145deg,#d7d3c7,#8f988e);position:relative}
.featured-product .product-image{min-height:330px}
.grass-image{background:linear-gradient(135deg,#728d68,#2e5538)}
.plant-image{background:linear-gradient(135deg,#adb39e,#617359)}
.gift-image{background:linear-gradient(135deg,#d4c5a9,#8d7c61)}
.product-image span{position:absolute;top:14px;left:14px;background:#fff;color:var(--green);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;padding:7px 9px}
.product-info{padding:23px}
.product-category{text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:700;color:#7a837d;margin:0 0 8px}
.product-info h3{font-family:var(--serif);font-size:31px;font-weight:500;line-height:1.05;margin:0 0 9px}
.product-desc{color:var(--muted);font-size:13px;margin:0 0 21px}
.product-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-bottom:17px;font-size:12px}
.product-meta strong{font-size:13px}.product-meta span{color:#78807b}
.product-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-outline{border:1px solid var(--line);color:var(--green);background:#fff}
@media(max-width:1000px){.product-grid{grid-template-columns:1fr 1fr}.featured-product{grid-column:1/-1}.featured-product{display:grid;grid-template-columns:1fr 1fr}.featured-product .product-image{min-height:360px}}
@media(max-width:640px){.shop-categories{margin-top:-6px;gap:7px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px;margin-right:-20px}.shop-chip{white-space:nowrap}.product-grid{grid-template-columns:1fr}.featured-product{grid-column:auto;display:block}.featured-product .product-image,.product-image{min-height:250px}.product-info{padding:20px}.product-info h3{font-size:29px}.product-actions{display:grid;grid-template-columns:1fr}.product-actions .btn{width:100%;margin:0}.product-meta{align-items:flex-start;flex-direction:column;gap:3px}.shop .btn{width:100%}}

/* WordPress / WooCommerce */
body.admin-bar .site-header{top:32px}
.belletini-commerce{padding-top:140px;min-height:70vh;background:var(--paper)}
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--muted);margin-bottom:28px}
.woocommerce h1.page-title,.woocommerce div.product .product_title{font-family:var(--serif);font-size:clamp(42px,5vw,64px);font-weight:500;line-height:1}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;background:#fff;border:1px solid var(--line);padding:0 0 20px!important}
.woocommerce ul.products li.product a img{margin:0 0 18px!important;aspect-ratio:1/1;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:27px!important;font-weight:500;padding:0 18px!important}
.woocommerce ul.products li.product .price{color:var(--green)!important;font-weight:700;padding:0 18px;display:block}
.woocommerce ul.products li.product .button{margin:10px 18px 0!important;background:var(--green)!important;color:#fff!important;border-radius:6px!important}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--green)!important;color:#fff!important;border-radius:6px!important}
.woocommerce div.product{padding-top:10px}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--green)!important}
.woocommerce-message,.woocommerce-info{border-top-color:var(--green)!important}.woocommerce-message::before,.woocommerce-info::before{color:var(--green)!important}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(max-width:800px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.woocommerce ul.products{grid-template-columns:1fr}.belletini-commerce{padding-top:105px}.woocommerce h1.page-title,.woocommerce div.product .product_title{font-size:42px}}

/* V2 refinements — cleaner, sharper, mobile-first */
.site-header{min-height:72px}
.brand{padding:4px 0}
.hero-actions .btn{box-shadow:none}
.audience-card,.family-photo,.gallery-item,.copro-panel{border-radius:0}
.section-pad{padding-top:92px;padding-bottom:92px}
@media(max-width:640px){
  .site-header{min-height:64px}
  .menu-toggle{width:42px;height:42px}
  .section-pad{padding:64px 18px}
  .hero-actions{max-width:100%}
  .hero-actions .btn{min-height:43px}
  .audience-card{min-height:350px}
  .copro-copy ul{grid-template-columns:1fr}
  .family-photo{min-height:390px}
}

.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.16);margin-top:18px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.82rem;opacity:.78}.footer-bottom a{color:inherit;text-decoration:none}.footer-bottom a:hover{text-decoration:underline}@media(max-width:700px){.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}

/* V4 — real brand assets, real photography, cleaner mobile */
.brand-logo{display:block;width:122px;height:62px;object-fit:contain;object-position:left center}
.hero-photo{background-image:linear-gradient(90deg,rgba(18,43,34,.88) 0%,rgba(18,43,34,.72) 42%,rgba(18,43,34,.34) 72%,rgba(18,43,34,.12) 100%),var(--hero-image);background-size:cover;background-position:center 55%;min-height:760px}
.hero-photo .hero-content{max-width:820px}.hero-photo h1{max-width:780px}
.image-card{position:relative;background-image:linear-gradient(180deg,rgba(14,34,27,.18),rgba(14,34,27,.82)),var(--card-image);background-size:cover;background-position:center;color:#fff;text-decoration:none;overflow:hidden}
.image-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,28,22,.78) 100%)}.image-card .card-content{position:relative;z-index:1}
.visual-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.visual-service{background:#fff;border:1px solid var(--line);overflow:hidden}.visual-service img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.visual-service>div{padding:24px}.visual-service span{font-size:11px;letter-spacing:.16em;color:var(--muted)}.visual-service h3{font-family:var(--serif);font-size:32px;line-height:1.05;font-weight:500;margin:10px 0}.visual-service p{margin:0;color:var(--muted);font-size:14px}
.grass-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center;background:var(--paper)}.grass-copy{max-width:560px}.grass-copy h2{margin-top:10px}.grass-copy .btn{margin-top:18px}.grass-media img{display:block;width:100%;height:620px;object-fit:cover}
.copro-block{grid-template-columns:1fr 1fr;gap:42px}.copro-photo-stack{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-self:stretch}.copro-photo-stack img{width:100%;height:100%;min-height:520px;object-fit:cover}.copro-photo-stack img:last-child{margin-top:58px;height:calc(100% - 58px)}
.family-photo.real-photo{background:none;min-height:0}.family-photo.real-photo img{display:block;width:100%;height:660px;object-fit:cover;object-position:center 35%}
.photo-gallery{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-auto-rows:330px;gap:12px}.photo-gallery figure{position:relative;margin:0;overflow:hidden}.photo-gallery figure.gallery-large{grid-row:span 2}.photo-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.photo-gallery figure:hover img{transform:scale(1.02)}.photo-gallery figcaption{position:absolute;left:16px;bottom:14px;color:#fff;background:rgba(18,43,34,.74);padding:8px 11px;font-size:11px;letter-spacing:.05em}
.video-feature{display:grid;grid-template-columns:.62fr 1.38fr;gap:48px;align-items:center;background:#f2f0ea}.video-copy{max-width:520px}.site-video{display:block;width:100%;max-height:680px;background:#111;object-fit:cover}.shop{background:#203b31}
@media(max-width:1000px){.brand-logo{width:106px;height:56px}.hero-photo{min-height:690px}.visual-service-grid{grid-template-columns:1fr 1fr}.visual-service:last-child{grid-column:1/-1}.grass-feature,.video-feature{grid-template-columns:1fr}.grass-media img{height:520px}.copro-photo-stack img{min-height:420px}.photo-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:300px}.photo-gallery .gallery-large{grid-column:1/-1;grid-row:auto}.family-photo.real-photo img{height:560px}}
@media(max-width:640px){.site-header{padding-left:18px;padding-right:18px}.brand-logo{width:92px;height:50px}.hero-photo{min-height:690px;background-image:linear-gradient(180deg,rgba(18,43,34,.35) 0%,rgba(18,43,34,.86) 74%,rgba(18,43,34,.94) 100%),var(--hero-image);background-position:62% center}.hero-photo .hero-content{padding-top:145px}.hero-photo h1{font-size:clamp(48px,14vw,66px);line-height:.95;letter-spacing:-.035em}.hero-photo .hero-sub{font-size:16px}.visual-service-grid{grid-template-columns:1fr;gap:12px}.visual-service:last-child{grid-column:auto}.visual-service img{aspect-ratio:16/10}.visual-service>div{padding:20px}.grass-feature{gap:28px}.grass-media img{height:430px}.copro-block{grid-template-columns:1fr}.copro-photo-stack{grid-template-columns:1fr 1fr;gap:8px}.copro-photo-stack img,.copro-photo-stack img:last-child{min-height:310px;height:310px;margin-top:0}.family-photo.real-photo img{height:470px;object-position:center 30%}.photo-gallery{grid-template-columns:1fr;grid-auto-rows:300px}.photo-gallery .gallery-large{grid-row:auto}.video-feature{gap:26px}.site-video{max-height:520px}.shop .btn{width:100%}}

/* V5 — image selection, sober hero, silent video treatment */
.hero-split{min-height:780px;padding:0;margin-top:72px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--green);color:#fff;align-items:stretch}
.hero-split:before{display:none}
.hero-split .hero-content{max-width:none;padding:110px 7vw 74px;display:flex;flex-direction:column;justify-content:flex-end}
.hero-split .hero-visual{min-height:780px;overflow:hidden;background:#243c32}
.hero-split .hero-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.86) contrast(.98)}
.hero-split h1{font-size:clamp(54px,5.3vw,78px);max-width:720px}
.hero-split .hero-sub{max-width:620px}
.hero-split .btn-ghost{border-color:rgba(255,255,255,.45)}
.grass-media-stack{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;align-items:stretch}
.grass-media-stack>img{width:100%;height:620px;object-fit:cover}
.compact-video{height:620px;object-fit:cover;background:#102018}
.terrain-video{max-height:620px;object-fit:cover;background:#13251e}
.site-video::-webkit-media-controls-volume-slider,.site-video::-webkit-media-controls-mute-button{display:none!important}
@media(max-width:1000px){
  .hero-split{grid-template-columns:1fr;min-height:0;margin-top:64px}
  .hero-split .hero-visual{order:-1;min-height:460px;height:54vw;max-height:620px}
  .hero-split .hero-content{padding:70px 7vw 74px}
  .grass-media-stack{grid-template-columns:1fr 1fr}.grass-media-stack>img,.compact-video{height:500px}
}
@media(max-width:640px){
  .hero-split{margin-top:64px}
  .hero-split .hero-visual{height:48svh;min-height:360px;max-height:470px}
  .hero-split .hero-visual img{object-position:center 35%}
  .hero-split .hero-content{padding:48px 18px 54px}
  .hero-split h1{font-size:clamp(46px,13vw,62px);line-height:.96}
  .grass-media-stack{grid-template-columns:1fr}.grass-media-stack>img,.compact-video{height:410px}
  .terrain-video{max-height:520px}
}


/* V6 — stronger brand lockup in the main header */
.site-header{gap:24px}
.brand-lockup{gap:16px;flex:0 0 auto}
.brand-lockup .brand-logo{width:76px;height:58px;object-fit:contain;object-position:left center}
.brand-company{display:flex;flex-direction:column;justify-content:center;line-height:1;color:var(--ink);white-space:nowrap;border-left:1px solid rgba(32,37,34,.15);padding-left:16px}
.brand-company strong{font-family:var(--sans);font-size:21px;line-height:1;font-weight:700;letter-spacing:.13em}
.brand-company small{font-family:var(--sans);font-size:9px;line-height:1;margin-top:8px;font-weight:650;letter-spacing:.24em}
.desktop-nav{gap:22px}.desktop-nav a{font-size:12.5px}
.site-header>.btn-small{white-space:nowrap}
@media(max-width:1180px){
  .brand-lockup{gap:12px}.brand-lockup .brand-logo{width:64px;height:52px}.brand-company{padding-left:12px}.brand-company strong{font-size:18px}.brand-company small{font-size:8px}.desktop-nav{gap:17px}.desktop-nav a{font-size:11.5px}.site-header{gap:18px;padding-left:24px;padding-right:24px}
}
@media(max-width:1000px){
  .brand-lockup .brand-logo{width:60px;height:48px}.brand-company strong{font-size:17px}.brand-company small{font-size:7.5px}.brand-company{padding-left:11px}
}
@media(max-width:640px){
  .brand-lockup{gap:9px}.brand-lockup .brand-logo{width:50px;height:43px}.brand-company{padding-left:9px}.brand-company strong{font-size:14px;letter-spacing:.1em}.brand-company small{font-size:6.4px;letter-spacing:.17em;margin-top:6px}
}
@media(max-width:390px){
  .brand-lockup .brand-logo{width:45px;height:40px}.brand-company strong{font-size:12.5px}.brand-company small{font-size:5.8px}.site-header{padding-left:13px;padding-right:10px}
}

/* V7 — cleaner photographic hierarchy */
.hero-split .hero-visual img{object-position:center 48%;filter:saturate(.9) contrast(1.01)}
.grass-media-stack.photos-only>img{height:620px;object-fit:cover}
.photo-gallery figure:nth-child(2) img,.photo-gallery figure:nth-child(5) img{object-position:center 55%}
.photo-gallery figure:nth-child(4) img{object-position:center 62%}
@media(max-width:1000px){.grass-media-stack.photos-only>img{height:500px}}
@media(max-width:640px){.hero-split .hero-visual img{object-position:center 42%}.grass-media-stack.photos-only>img{height:410px}.photo-gallery figure{min-height:300px}}


/* V8 — réalisation terrain de pétanque */
.realisation-video-card{margin-top:clamp(36px,5vw,72px);display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(24px,3.5vw,44px);background:#f3f1ea;border-radius:24px}
.realisation-video-copy h3{font-family:"Cormorant Garamond",serif;font-size:clamp(34px,4vw,58px);line-height:1;margin:.35rem 0 1rem;color:#16372d}
.realisation-video-copy p:last-child{max-width:34rem;color:#4d574f;line-height:1.7}
.petanque-video{width:100%;max-height:620px;object-fit:cover;border-radius:18px;background:#122e27;display:block}
@media(max-width:800px){.realisation-video-card{grid-template-columns:1fr;padding:18px;border-radius:18px}.petanque-video{max-height:72vh;border-radius:14px}.realisation-video-copy h3{font-size:38px}}

/* V11 — identité renforcée, hero fusionné, typographie sobre et pages légales */
:root{
  --serif:"Avenir Next","Helvetica Neue",Arial,sans-serif;
  --sans:"Avenir Next","Helvetica Neue",Arial,sans-serif;
}
body{font-family:var(--sans);letter-spacing:-.005em}
.site-header{background:rgba(248,247,242,.95);min-height:82px}
.brand-lockup .brand-logo{width:80px;height:60px}
.brand-company strong{font-size:23px;letter-spacing:.105em;font-weight:680}
.brand-company small{font-size:9px;letter-spacing:.24em;margin-top:8px}
.desktop-nav a{font-size:12px;font-weight:570;letter-spacing:.015em}
.hero-v11{min-height:88svh;margin-top:82px;padding:clamp(130px,15vh,190px) 7vw 72px;background-image:var(--hero-v11);background-size:cover;background-position:center 52%;display:flex;align-items:flex-end;position:relative;overflow:hidden;color:#fff}
.hero-v11:before{display:none}
.hero-v11-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,29,23,.86) 0%,rgba(10,29,23,.72) 35%,rgba(10,29,23,.35) 62%,rgba(10,29,23,.08) 100%),linear-gradient(0deg,rgba(10,29,23,.48),transparent 55%)}
.hero-v11 .hero-content{position:relative;z-index:2;max-width:830px}
.hero-brandline{margin:0 0 20px;font-size:12px;letter-spacing:.26em;font-weight:700;text-transform:uppercase;color:rgba(255,255,255,.92)}
.hero-v11 .eyebrow{margin-bottom:20px;color:rgba(255,255,255,.75)}
.hero-v11 h1{font-family:var(--sans);font-size:clamp(54px,5.6vw,84px);font-weight:520;letter-spacing:-.055em;line-height:.96;max-width:790px}
.hero-v11 .hero-sub{font-size:17px;max-width:610px;color:rgba(255,255,255,.86)}
.hero-main-btn{background:#f5f2e8;color:#173128}
.hero-v11 .signature{font-family:var(--sans);font-size:14px;font-style:normal;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.section-heading h2,.family h2,.copro-block h2,.shop h2,.card-content h3,.visual-service h3,.realisation-video-copy h3{font-family:var(--sans);font-weight:520;letter-spacing:-.04em}
.section-heading h2{line-height:1.02}
.family-copy h2,.copro-copy h2{line-height:1.02}
.footer-legal a,footer a{color:inherit;text-decoration:none}.footer-legal a:hover,footer a:hover{text-decoration:underline}
.cookie-manage-link{border:0;background:none;padding:0;color:rgba(255,255,255,.59);cursor:pointer;font:inherit}.cookie-manage-link:hover{text-decoration:underline;color:#fff}
.cookie-panel[hidden]{display:none}.cookie-panel{position:fixed;inset:0;z-index:1000;background:rgba(8,18,14,.58);display:grid;place-items:center;padding:20px}.cookie-panel-card{position:relative;width:min(620px,100%);background:#fbfaf7;padding:34px;border-radius:8px;box-shadow:0 24px 70px rgba(0,0,0,.24);color:var(--ink)}.cookie-panel-card h2{font-size:34px;line-height:1.05;margin:0 0 16px;letter-spacing:-.035em}.cookie-panel-card p{color:var(--muted)}.cookie-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;cursor:pointer;color:var(--muted)}.cookie-actions{display:flex;gap:10px;margin-top:22px}.cookie-secondary{border:1px solid var(--line);color:var(--ink);background:transparent}.cookie-open{overflow:hidden}
.page .site-main,.page main.section-pad{max-width:1050px;margin:0 auto;padding-top:150px}
.page article h1{font-family:var(--sans);font-size:clamp(44px,5vw,72px);line-height:.98;letter-spacing:-.05em;font-weight:520;margin-bottom:34px}.page article h2{font-size:27px;line-height:1.15;letter-spacing:-.025em;margin:44px 0 14px}.page article h3{font-size:18px;margin:26px 0 8px}.page article p,.page article li{color:#4f5953;max-width:900px}.page article a{color:var(--green)}.legal-lead{padding:24px 26px;background:var(--ivory);border-left:3px solid var(--green);margin-bottom:42px}.legal-lead p{margin:4px 0!important}.page article ul{padding-left:20px}
@media(max-width:1000px){.site-header{min-height:72px}.hero-v11{margin-top:72px;min-height:82svh;background-position:58% center}.brand-lockup .brand-logo{width:64px;height:52px}.brand-company strong{font-size:18px}.brand-company small{font-size:7.5px}.hero-v11-overlay{background:linear-gradient(90deg,rgba(10,29,23,.84) 0%,rgba(10,29,23,.65) 50%,rgba(10,29,23,.2) 100%)}}
@media(max-width:640px){.site-header{min-height:68px}.brand-lockup .brand-logo{width:52px;height:44px}.brand-company strong{font-size:15px;letter-spacing:.085em}.brand-company small{font-size:6.5px}.hero-v11{margin-top:68px;min-height:78svh;padding:120px 20px 44px;background-position:63% center}.hero-v11-overlay{background:linear-gradient(180deg,rgba(10,29,23,.18) 0%,rgba(10,29,23,.38) 42%,rgba(10,29,23,.92) 78%,rgba(10,29,23,.96) 100%)}.hero-brandline{font-size:9.5px;letter-spacing:.2em}.hero-v11 h1{font-size:clamp(44px,12vw,59px);line-height:.96}.hero-v11 .hero-sub{font-size:15px}.hero-v11 .hero-actions{width:100%}.hero-v11 .hero-actions .btn{flex:1;min-width:0;padding-inline:12px}.cookie-panel-card{padding:28px 20px 22px}.cookie-actions{flex-direction:column}.cookie-actions .btn{width:100%}.page main.section-pad{padding:120px 20px 70px}.legal-lead{padding:20px}}


/* V16 — navigation juridique et notice RGPD formulaire */
.legal-page-wrap{max-width:1050px;margin:0 auto}
.legal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 42px;padding:6px;background:#f1efe8;border-radius:10px;width:max-content;max-width:100%}
.legal-tabs a{display:inline-flex;align-items:center;min-height:40px;padding:0 15px;border-radius:7px;color:#48524c;text-decoration:none;font-size:13px;font-weight:650;white-space:nowrap}
.legal-tabs a:hover{background:rgba(255,255,255,.65);text-decoration:none}
.legal-tabs a.active{background:#17382f;color:#fff}
.form-privacy-note{grid-column:1/-1;margin:4px 0 0;font-size:12.5px;line-height:1.55;color:#6b746e}
.form-privacy-note a{color:#17382f;text-decoration:underline;text-underline-offset:2px}
@media(max-width:640px){
  .legal-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;width:100%;padding:5px;margin-bottom:30px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .legal-tabs::-webkit-scrollbar{display:none}
  .legal-tabs a{flex:0 0 auto;font-size:12px;padding:0 12px}
}


/* V17 — Réseaux sociaux */
.company-socials{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 14px;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(23,56,47,.14);
  font-size:13px;
}
.company-socials span{
  color:#727a75;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1.6px;
  font-weight:700;
}
.company-socials a,
.social-gallery-link{
  color:#17382f;
  text-decoration:none;
  font-weight:700;
}
.company-socials a:hover,
.social-gallery-link:hover{
  opacity:.72;
}
.social-gallery-link{
  font-size:13px;
  white-space:nowrap;
  align-self:end;
  margin-bottom:4px;
}
.footer-socials{
  margin-top:22px;
}
.footer-socials>p{
  margin:0 0 10px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1.8px;
  opacity:.65;
  font-weight:700;
}
.footer-social-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
}
.footer-social-links a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:inherit;
  text-decoration:none;
  font-size:13px;
  font-weight:650;
}
.footer-social-links a:hover{
  opacity:.72;
}
.social-icon{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border:1px solid currentColor;
  border-radius:50%;
  font-size:10px;
  font-weight:800;
  line-height:1;
}
@media(max-width:700px){
  .social-gallery-link{
    margin-top:14px;
    align-self:flex-start;
  }
  .company-socials{
    align-items:flex-start;
  }
}


/* V19 — lien devis fiable sur mobile */
@media(max-width:1000px){
  .desktop-nav[data-open="true"] .nav-quote-link{
    color:#17382f;
    font-weight:750;
  }
}


/* V20 — Devis : un seul accès desktop, présent dans le menu mobile */
.nav-quote-link{
  display:none;
}
@media(max-width:1000px){
  .desktop-nav .nav-quote-link{
    display:block;
  }
}


/* V21 — Débroussaillage orienté copropriétés / entreprises */
.brush-clearing{
  background:#f2f0e9;
}
.brush-clearing-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:40px;
  align-items:end;
  margin-bottom:42px;
}
.brush-clearing-heading>div{
  max-width:760px;
}
.brush-clearing-heading h2{
  margin-bottom:16px;
}
.brush-clearing-heading p{
  max-width:700px;
}
.brush-clearing-layout{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:24px;
  align-items:stretch;
}
.brush-clearing-visual{
  position:relative;
  min-height:620px;
  overflow:hidden;
  background:#17382f;
}
.brush-clearing-visual img{
  width:100%;
  height:100%;
  min-height:620px;
  object-fit:cover;
  display:block;
}
.brush-clearing-visual:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(16,44,37,.02),rgba(16,44,37,.30));
  pointer-events:none;
}
.brush-clearing-tag{
  position:absolute;
  left:20px;
  bottom:20px;
  z-index:2;
  padding:9px 13px;
  background:rgba(245,240,229,.94);
  color:#17382f;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:1.5px;
}
.brush-clearing-services{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.brush-clearing-services article{
  background:#fff;
  padding:30px;
  border:1px solid rgba(23,56,47,.08);
}
.brush-number{
  display:block;
  margin-bottom:28px;
  color:#7d867f;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.5px;
}
.brush-clearing-services h3{
  margin:0 0 13px;
  font-size:25px;
}
.brush-clearing-services article>p{
  margin:0 0 20px;
  color:#5d665f;
  line-height:1.65;
}
.brush-clearing-services ul{
  padding:0;
  margin:0;
  list-style:none;
}
.brush-clearing-services li{
  position:relative;
  padding:9px 0 9px 18px;
  border-top:1px solid #eeeee9;
  font-size:13px;
  line-height:1.45;
}
.brush-clearing-services li:before{
  content:"";
  width:5px;
  height:5px;
  border-radius:50%;
  background:#17382f;
  position:absolute;
  left:0;
  top:16px;
}
.brush-clearing-proof{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:180px 1fr;
  gap:22px;
  align-items:center;
  background:#17382f;
  color:#fff;
  min-height:150px;
}
.brush-clearing-proof img{
  width:180px;
  height:150px;
  object-fit:cover;
  display:block;
}
.brush-clearing-proof>div{
  padding:20px 24px 20px 0;
}
.brush-clearing-proof strong{
  display:block;
  margin-bottom:7px;
  font-size:16px;
}
.brush-clearing-proof p{
  margin:0;
  color:rgba(255,255,255,.76);
  line-height:1.55;
  font-size:13px;
}
@media(max-width:900px){
  .brush-clearing-heading{
    grid-template-columns:1fr;
    gap:22px;
    align-items:start;
  }
  .brush-clearing-heading .btn{
    width:max-content;
    max-width:100%;
  }
  .brush-clearing-layout{
    grid-template-columns:1fr;
  }
  .brush-clearing-visual,
  .brush-clearing-visual img{
    min-height:440px;
  }
}
@media(max-width:620px){
  .brush-clearing-services{
    grid-template-columns:1fr;
  }
  .brush-clearing-services article{
    padding:24px 20px;
  }
  .brush-clearing-proof{
    grid-template-columns:1fr;
  }
  .brush-clearing-proof img{
    width:100%;
    height:220px;
  }
  .brush-clearing-proof>div{
    padding:4px 20px 24px;
  }
  .brush-clearing-visual,
  .brush-clearing-visual img{
    min-height:380px;
  }
}


/* V22 — Menu Débroussaillage + sous-thèmes et vraies photos */
.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}
.nav-dropdown-main{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.nav-dropdown-main span{
  font-size:12px;
  transform:translateY(-1px);
}
.nav-submenu{
  position:absolute;
  top:calc(100% + 12px);
  left:0;
  min-width:220px;
  padding:8px;
  background:#f7f5ef;
  border:1px solid rgba(23,56,47,.10);
  box-shadow:0 16px 36px rgba(23,56,47,.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(5px);
  transition:.18s ease;
  z-index:40;
}
.nav-submenu a{
  display:block !important;
  padding:10px 12px !important;
  color:#17382f !important;
  font-size:12.5px !important;
  line-height:1.35;
  white-space:nowrap;
}
.nav-submenu a:hover{
  background:#ece8dc;
}
.nav-dropdown:hover .nav-submenu,
.nav-dropdown:focus-within .nav-submenu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.brush-clearing-v22{
  background:#f2f0e9;
}
.deb-type-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.deb-type-card{
  background:#fff;
  border:1px solid rgba(23,56,47,.08);
  overflow:hidden;
}
.deb-type-image{
  height:360px;
  overflow:hidden;
  background:#17382f;
}
.deb-type-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.deb-type-copy{
  padding:28px 30px 32px;
}
.deb-type-copy h3{
  margin:8px 0 14px;
  font-size:27px;
  line-height:1.15;
}
.deb-type-copy>p:not(.eyebrow){
  margin:0 0 18px;
  color:#626a65;
  line-height:1.65;
}
.deb-type-copy ul{
  list-style:none;
  margin:0 0 22px;
  padding:0;
}
.deb-type-copy li{
  position:relative;
  padding:9px 0 9px 18px;
  border-top:1px solid #eeeee9;
  font-size:13px;
  line-height:1.45;
}
.deb-type-copy li:before{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#17382f;
}
.deb-wide-proof{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
  margin-top:22px;
  background:#17382f;
  color:#fff;
  min-height:230px;
}
.deb-wide-proof img{
  width:100%;
  height:100%;
  min-height:230px;
  object-fit:cover;
  display:block;
}
.deb-wide-proof>div{
  padding:34px 38px;
  align-self:center;
}
.deb-wide-proof h3{
  margin:8px 0 12px;
  font-size:27px;
}
.deb-wide-proof p:last-child{
  margin:0;
  color:rgba(255,255,255,.76);
  line-height:1.65;
}

@media(max-width:1000px){
  .desktop-nav .nav-dropdown{
    display:block;
    width:100%;
  }
  .desktop-nav .nav-dropdown-main{
    width:100%;
  }
  .desktop-nav .nav-submenu{
    position:static;
    opacity:1;
    visibility:visible;
    transform:none;
    box-shadow:none;
    border:0;
    background:transparent;
    padding:0 0 4px 14px;
    min-width:0;
  }
  .desktop-nav .nav-submenu a{
    padding:7px 0 !important;
    font-size:12px !important;
    opacity:.72;
  }
}

@media(max-width:800px){
  .deb-type-grid{
    grid-template-columns:1fr;
  }
  .deb-type-image{
    height:330px;
  }
  .deb-wide-proof{
    grid-template-columns:1fr;
  }
  .deb-wide-proof img{
    min-height:300px;
  }
}
@media(max-width:520px){
  .deb-type-image{
    height:280px;
  }
  .deb-type-copy{
    padding:23px 20px 26px;
  }
  .deb-type-copy h3,
  .deb-wide-proof h3{
    font-size:23px;
  }
  .deb-wide-proof>div{
    padding:25px 20px 28px;
  }
}


/* V25 — Débroussaillage simplifié */
.nav-dropdown,
.nav-submenu{
  display:none !important;
}

.brush-clearing-v25{
  background:#f2f0e9;
}
.deb-simple-layout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:24px;
  align-items:stretch;
}
.deb-simple-image{
  min-height:560px;
  overflow:hidden;
  background:#17382f;
}
.deb-simple-image img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
  display:block;
}
.deb-simple-copy{
  background:#fff;
  padding:38px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.deb-simple-copy h3{
  margin:8px 0 15px;
  font-size:29px;
  line-height:1.16;
}
.deb-simple-copy>p:not(.eyebrow){
  margin:0 0 26px;
  color:#626a65;
  line-height:1.7;
}
.deb-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin-bottom:26px;
}
.deb-columns strong{
  display:block;
  margin-bottom:10px;
  color:#17382f;
  font-size:15px;
}
.deb-columns ul{
  margin:0;
  padding:0;
  list-style:none;
}
.deb-columns li{
  position:relative;
  padding:8px 0 8px 16px;
  border-top:1px solid #ecece7;
  font-size:13px;
  line-height:1.45;
}
.deb-columns li:before{
  content:"";
  position:absolute;
  left:0;
  top:15px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#17382f;
}

@media(max-width:850px){
  .deb-simple-layout{
    grid-template-columns:1fr;
  }
  .deb-simple-image,
  .deb-simple-image img{
    min-height:400px;
  }
}
@media(max-width:560px){
  .deb-simple-image,
  .deb-simple-image img{
    min-height:300px;
  }
  .deb-simple-copy{
    padding:26px 20px 30px;
  }
  .deb-simple-copy h3{
    font-size:24px;
  }
  .deb-columns{
    grid-template-columns:1fr;
    gap:18px;
  }
}


/* V26 — Débroussaillage en un seul bloc */
.brush-clearing-v26{
  background:#f2f0e9;
}
.deb-single-card{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  background:#fff;
  border:1px solid rgba(23,56,47,.08);
  overflow:hidden;
}
.deb-single-image{
  min-height:580px;
  background:#17382f;
}
.deb-single-image img{
  width:100%;
  height:100%;
  min-height:580px;
  object-fit:cover;
  display:block;
}
.deb-single-copy{
  padding:42px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.deb-single-copy h3{
  margin:8px 0 16px;
  font-size:30px;
  line-height:1.15;
}
.deb-single-copy>p:not(.eyebrow){
  margin:0 0 24px;
  color:#626a65;
  line-height:1.7;
}
.deb-single-copy ul{
  list-style:none;
  padding:0;
  margin:0 0 26px;
}
.deb-single-copy li{
  position:relative;
  padding:10px 0 10px 18px;
  border-top:1px solid #ecece7;
  font-size:13px;
  line-height:1.45;
}
.deb-single-copy li:before{
  content:"";
  position:absolute;
  left:0;
  top:17px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#17382f;
}
@media(max-width:850px){
  .deb-single-card{
    grid-template-columns:1fr;
  }
  .deb-single-image,
  .deb-single-image img{
    min-height:420px;
  }
}
@media(max-width:560px){
  .deb-single-image,
  .deb-single-image img{
    min-height:310px;
  }
  .deb-single-copy{
    padding:26px 20px 30px;
  }
  .deb-single-copy h3{
    font-size:24px;
  }
}


/* V27 — Stabilisation iPhone / suppression du déplacement horizontal */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

body{
  position:relative;
}

main,
header,
footer,
section,
.site-header,
.section-pad,
.hero,
.intro,
.audiences,
.services,
.grass-feature,
.copro-block,
.brush-clearing,
.realisations,
.video-feature,
.shop,
.quote{
  max-width:100%;
}

img,
video,
iframe,
svg{
  max-width:100%;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

@media(max-width:768px){
  html,
  body{
    overflow-x:hidden !important;
    overscroll-behavior-x:none;
    touch-action:pan-y;
  }

  .site-header,
  .desktop-nav,
  .hero,
  .hero-content,
  .section-pad,
  .family,
  .audiences,
  .visual-service-grid,
  .grass-feature,
  .copro-block,
  .brush-clearing,
  .realisations,
  .video-feature,
  .shop,
  .quote,
  .quote-form,
  .deb-single-card{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .desktop-nav[data-open="true"]{
    left:0;
    right:0;
    width:100%;
    max-width:100vw;
  }

  .hero-content,
  .family-copy,
  .copro-copy,
  .grass-copy,
  .deb-single-copy,
  .video-copy,
  .shop-intro,
  .section-heading{
    min-width:0;
    overflow-wrap:anywhere;
  }

  .btn,
  .text-link,
  .social-gallery-link{
    max-width:100%;
  }

  .site-video,
  .deb-single-image img,
  .copro-photo-stack img,
  .grass-media-stack img,
  .photo-gallery img{
    display:block;
    width:100%;
    max-width:100%;
  }
}


/* V29 — barre principale verrouillée tout en haut sur iPhone */
@media(max-width:768px){
  .site-header{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:100vw !important;
    z-index:9999 !important;
    transform:none !important;
    margin:0 !important;
    padding-top:env(safe-area-inset-top) !important;
    min-height:calc(68px + env(safe-area-inset-top)) !important;
  }

  .hero-v11{
    margin-top:calc(68px + env(safe-area-inset-top)) !important;
  }

  .desktop-nav[data-open="true"]{
    position:fixed !important;
    top:calc(68px + env(safe-area-inset-top)) !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-height:calc(100dvh - 68px - env(safe-area-inset-top)) !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
  }

  /* En aperçu connecté WordPress, garder la barre du site collée en haut également. */
  body.admin-bar .site-header{
    top:0 !important;
  }
}


/* V30 — Matomo / RGPD */
.matomo-optout-wrap{
  margin:18px 0 30px;
  padding:20px;
  background:#f2f0e9;
  border:1px solid rgba(23,56,47,.10);
  border-radius:8px;
}
.matomo-optout-wrap iframe{
  width:100%;
  max-width:100%;
  border:0;
}


/* V31 — Localisation / contact / carte */
.location-section{
  background:#f7f5ef;
}
.location-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:38px;
  align-items:stretch;
}
.location-copy{
  align-self:center;
}
.location-copy h2{
  margin-bottom:18px;
}
.location-copy>p{
  max-width:620px;
  line-height:1.7;
}
.location-details{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  margin:30px 0 28px;
  border-top:1px solid rgba(23,56,47,.12);
}
.location-detail{
  display:grid;
  grid-template-columns:110px 1fr;
  gap:20px;
  padding:16px 0;
  border-bottom:1px solid rgba(23,56,47,.12);
}
.location-detail span{
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:1.5px;
  color:#7b827d;
}
.location-detail strong{
  font-size:14px;
  line-height:1.6;
  color:#17382f;
}
.location-detail a{
  color:#17382f;
  text-decoration:none;
}
.location-detail a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}
.location-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.btn-outline-dark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border:1px solid #17382f;
  color:#17382f;
  background:transparent;
  text-decoration:none;
  font-weight:700;
}
.location-map-wrap{
  min-height:480px;
  background:#17382f;
  position:relative;
  overflow:hidden;
}
.location-map-consent,
.location-map-frame{
  width:100%;
  height:100%;
  min-height:480px;
}
.location-map-placeholder{
  min-height:480px;
  height:100%;
  padding:42px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  background:
    radial-gradient(circle at 72% 28%, rgba(255,255,255,.07), transparent 28%),
    linear-gradient(145deg, #214a3f 0%, #17382f 62%, #102a23 100%);
  color:#fff;
}
.location-map-placeholder .eyebrow{
  color:rgba(255,255,255,.65);
}
.location-map-placeholder h3{
  margin:8px 0 10px;
  color:#fff;
  font-size:30px;
}
.location-map-placeholder p:not(.eyebrow){
  margin:0 0 22px;
  color:rgba(255,255,255,.72);
}
.map-pin{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  margin-bottom:auto;
  border:1px solid rgba(255,255,255,.35);
  border-radius:50%;
  font-size:24px;
}
.location-map-frame iframe{
  width:100%;
  height:100%;
  min-height:480px;
  border:0;
  display:block;
}
@media(max-width:850px){
  .location-grid{
    grid-template-columns:1fr;
  }
  .location-map-wrap,
  .location-map-consent,
  .location-map-frame,
  .location-map-placeholder,
  .location-map-frame iframe{
    min-height:400px;
  }
}
@media(max-width:560px){
  .location-detail{
    grid-template-columns:1fr;
    gap:6px;
  }
  .location-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .location-actions .btn,
  .location-actions .btn-outline-dark{
    width:100%;
  }
  .location-map-placeholder{
    padding:28px 20px;
  }
  .location-map-placeholder h3{
    font-size:25px;
  }
}


/* V33 — Boutique vitrine / catalogue */
.belletini-catalog-banner{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 28px;
  padding:15px 18px;
  background:#f2f0e9;
  border-left:3px solid #17382f;
  color:#39443e;
  font-size:13px;
  line-height:1.5;
}
.belletini-catalog-banner strong{
  color:#17382f;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:1.4px;
}
.belletini-catalog-quote{
  background:#17382f !important;
  color:#fff !important;
  border-radius:0 !important;
  border:1px solid #17382f !important;
  padding:12px 16px !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.3px;
  text-decoration:none !important;
}
.belletini-catalog-quote:hover{
  background:#244d41 !important;
  color:#fff !important;
}
.belletini-catalog-actions{
  margin-top:22px;
}
.belletini-catalog-note{
  margin:12px 0 0;
  color:#737b76;
  font-size:12px;
  line-height:1.55;
}
.woocommerce .products .product .button.belletini-catalog-quote{
  margin-top:12px;
}
.woocommerce-cart-form,
.woocommerce-checkout,
.cart-contents,
.site-header .cart,
.site-header .mini-cart{
  display:none !important;
}
@media(max-width:600px){
  .belletini-catalog-banner{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }
  .belletini-catalog-quote{
    width:100%;
    text-align:center;
  }
}

/* V34 — Pages SEO de services */
.service-page{background:#fff}.service-page-hero{max-width:1180px;margin:0 auto;padding-top:110px;padding-bottom:72px}.service-page-hero h1{max-width:900px;font-size:clamp(42px,6vw,76px);line-height:1.02;margin:10px 0 24px}.service-page-hero>p:last-child{max-width:760px;font-size:18px;line-height:1.7;color:#59615d}.service-page-hero.service-dark{max-width:none;background:#10251f;color:#fff;padding-left:max(6vw,28px);padding-right:max(6vw,28px)}.service-page-hero.service-dark>p:last-child{color:#d7ded9}.page-cta{max-width:1180px;margin:0 auto;text-align:center;padding-top:70px;padding-bottom:90px}.page-cta p{max-width:700px;margin:0 auto 24px;color:#69716d}@media(max-width:700px){.service-page-hero{padding-top:72px;padding-bottom:48px}.service-page-hero h1{font-size:42px}}
