/* Nature : même contenu, présentation chaleureuse et mobile prioritaire. */
.nature{
 --papier:#fbf8ef;--papier-2:#f1eddf;--brume:#e1e8d8;--encre:#2c4032;
 --f-display:'Libre Franklin',Arial,sans-serif;
 --nt-sauge:#e6ecdc;--nt-clair:#f2f5eb;--nt-terre:#f0dfca;--nt-trait:#d7ddcc;--nt-secondaire:#576451;
 color:var(--encre);background:var(--papier);font-size:16px;line-height:1.8;
}
.nature *{min-width:0}
.nature [hidden]{display:none!important}
.nature h1,.nature h2,.nature h3{font-family:var(--f-display);font-weight:500;letter-spacing:-.045em;text-wrap:balance;overflow-wrap:anywhere}
.nature p,.nature li{overflow-wrap:anywhere}
.nature .wrap{width:100%;max-width:1320px;padding:0 24px}
.nature section{padding:64px 0;scroll-margin-top:90px}
.nature header.site{background:#fbf8eff5;border-bottom:1px solid #e5e6d9;backdrop-filter:blur(12px)}
.nature .nav{max-width:1440px;padding:14px 24px;gap:20px}
.nature .logo{font:600 18px/1.3 var(--f-display);letter-spacing:-.65px;white-space:normal;overflow:visible;color:var(--vert);gap:12px}
.nature .logo span{color:inherit}
.nature .logo-img{height:44px;max-width:115px;object-fit:contain}
.nature .nav-actions{margin-left:auto;flex-shrink:0}
.nature .nav-tel{display:none;border-radius:30px;font-size:13px;padding:12px 20px;background:var(--vert);box-shadow:none}
.nature .burger{display:grid;place-items:center;min-width:44px;height:44px;color:var(--vert);border-radius:50%;background:var(--nt-sauge);border:0}
.nature .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:6px 24px 18px;background:var(--papier);border-bottom:1px solid var(--nt-trait);max-height:calc(100dvh - 165px);overflow:auto}
.nature .nav-links.open{display:flex}
.nature .nav-links a{display:block;font-size:14px;line-height:1.5;padding:12px 0}
.nature .nav-links li+li{border-top:1px solid #e6e8dd}
.nature .btn{min-height:48px;padding:14px 22px;border-radius:30px;font-size:13px;font-weight:600;line-height:1.6;text-align:center;box-shadow:none;text-decoration:none;transition:background .18s,transform .18s}
.nature .btn:hover{transform:translateY(-2px);box-shadow:none}
.nature .btn-miel{background:var(--bouton);color:#fff;border:1px solid var(--bouton)}
.nature .btn-ligne{border:1px solid #81977c;color:var(--vert);background:transparent}
.nature .hero,.nature .hero.avec-photo{background:var(--nt-sauge);padding:32px 0 40px;overflow:hidden;position:relative;border-radius:0 0 34px 34px}
.nature .hero::before{content:'';pointer-events:none;position:absolute;right:-65px;top:190px;width:145px;height:230px;border:1px solid #aabda155;border-radius:100% 0 100% 0;transform:rotate(12deg)}
.nature .hero-grid,.nature .hero.avec-photo .hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:center}
.nature .hero-grid>div:first-child{display:contents}
.nature .eyebrow{font:600 10px/1.7 var(--f-display);letter-spacing:.12em;color:#4c6549;text-transform:uppercase;margin-bottom:16px}
.nature .hero .eyebrow{grid-row:1;max-width:40ch;margin-bottom:17px}
.nature .hero h1{grid-row:2;font-size:clamp(34px,8.5vw,47px);line-height:1.17;letter-spacing:-.06em;max-width:18ch;color:#2d4935;margin:0 0 26px}
.nature .hero h1 strong{color:inherit;font-weight:600}
.nature .hero-visuel,.nature .hero.avec-photo .hero-visuel{grid-row:3;order:initial;margin:0 0 25px;padding:0 11px 0 0;align-self:center}
.nature .hero:not(.avec-photo) .hero-visuel{display:none}
.nature .cadre-photo{max-width:540px;position:relative;margin:0 auto}
.nature .cadre-photo::before{content:'';position:absolute;inset:12px -12px -12px 12px;background:transparent;border:1px solid #a3b398;opacity:1;border-radius:45% 45% 24px 24px;transform:rotate(3deg)}
.nature .cadre-photo::after{content:none}
.nature .cadre-photo>.photo-fenetre{aspect-ratio:1/1;border-radius:45% 45% 24px 24px;box-shadow:none;background:#d5ddc8}
.nature .cadre-photo img{border-radius:0;box-shadow:none}
.nature .hero p.sous{grid-row:4;font-size:15px;line-height:1.85;color:#4b6049;max-width:47ch;margin:6px 0 25px}
.nature .hero-cta{grid-row:5;display:flex;flex-direction:column;gap:10px;margin:0}
.nature .hero-cta .btn{width:100%}
.nature .note-google{grid-row:6;justify-self:start;margin:24px 0 0;background:#fbfdf6;border:1px solid #c8d3ba;border-radius:25px;color:#374a31;font-size:12px;padding:9px 14px;flex-wrap:wrap;gap:7px;line-height:1.6}
.nature .note-google .etoiles{color:#86620c}
.nature .bandeau-sap{background:var(--papier);border:0;color:var(--nt-secondaire);padding:25px 0}
.nature .bandeau-sap .wrap{display:flex;align-items:center;flex-wrap:nowrap;text-align:left;gap:18px;font-size:12px;line-height:1.75}
.nature .bandeau-sap strong{color:var(--encre);font-weight:600}
.nature .badge-ci{border:0;border-radius:50%;background:var(--nt-terre);color:#654626;font:500 22px/1 var(--f-display);letter-spacing:-1px;padding:19px 12px;flex-shrink:0}
.nature .titre-section{font-size:clamp(29px,7.5vw,40px);font-weight:500;line-height:1.24;max-width:27ch;color:var(--encre);margin-bottom:20px}
.nature .intro-section{font-size:15px;line-height:1.9;color:var(--nt-secondaire);max-width:62ch;margin-bottom:34px}
.nature #services{padding-top:34px}
.nature .services-grid{grid-template-columns:minmax(0,1fr);gap:0;counter-reset:nature-service}
.nature .service{counter-increment:nature-service;position:relative;padding:24px 0 26px 42px;background:transparent;border:0;border-top:1px solid var(--nt-trait);border-radius:0;gap:10px;box-shadow:none}
.nature .service:hover{transform:none;box-shadow:none}
.nature .service:not(.service-annuel)::before{content:'';position:absolute;top:28px;left:3px;width:19px;height:25px;background:#a6b88f;border-radius:100% 0 100% 0;transform:rotate(-12deg)}
.nature .service:nth-child(3n+2)::before{background:#c9ac84;transform:rotate(17deg)}
.nature .service h3{font-size:20px;line-height:1.4;color:var(--encre);font-weight:500;margin:0}
.nature .service p{font-size:14px;line-height:1.85;color:var(--nt-secondaire)}
.nature .service-annuel{grid-column:1/-1;background:var(--nt-clair);border:1px solid var(--nt-trait);border-radius:24px;padding:26px;margin-top:25px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.nature .service-annuel h3{margin-bottom:12px;color:var(--vert)}
.nature .service-annuel p{max-width:68ch;color:var(--nt-secondaire)}
.nature .service-annuel .btn{flex-shrink:0}
.nature .realisations{background:var(--nt-sauge);border-radius:36px 36px 0 0;position:relative}
.nature .ba{aspect-ratio:16/10;border-radius:24px;box-shadow:none;border:0}
.nature .ba-badge{border-radius:20px;background:#fbf8efeb;color:var(--vert);font-weight:600;font-size:10px;padding:7px 13px;letter-spacing:.05em}
.nature .ba-navigation{gap:20px;margin-top:18px}
.nature .ba-navigation button,.nature .avis-navigation button,.nature .articles-navigation button{min-width:44px;min-height:44px;border:1px solid #acb99c;border-radius:50%;background:var(--papier);color:var(--vert);box-shadow:none}
.nature .ba-compteur{font-size:11px;font-weight:500}
.nature .realis-recentes{gap:32px;margin:38px 0 30px}
.nature .realis-recente{border:0;background:transparent;border-radius:0;box-shadow:none}
.nature .realis-recente img{aspect-ratio:4/3;border-radius:22px}
.nature .realis-recente .realis-recentes-texte{padding:20px 2px 0}
.nature .realis-recente h3{font:500 24px/1.3 var(--f-display);letter-spacing:-1px;margin-bottom:12px;color:var(--encre)}
.nature .realis-recente p{font-size:14px;line-height:1.8;color:var(--nt-secondaire)}
.nature .realis-recente span{color:var(--vert);font-size:12px;display:inline-block;border-bottom:1px solid #a7b39c;padding-bottom:5px;margin-top:8px}
.nature .galerie{gap:16px}.nature .galerie img{border-radius:22px;box-shadow:none}
.nature .realis-plus{margin-top:26px}
.nature .ci{background:var(--papier)}
.nature .ci .eyebrow{color:#6e573b!important}
.nature .ci-grid{grid-template-columns:minmax(0,1fr);gap:34px;align-items:center}
.nature .ci-points{gap:24px;margin:0;padding:0}
.nature .ci-points li{font-size:14px;line-height:1.85;gap:17px;color:var(--nt-secondaire)}
.nature .ci-points .puce{flex-shrink:0;background:var(--nt-terre);color:#684a2b;border-radius:50%;border:0;font-weight:500}
.nature .calc{background:#efe1ce;color:#543f29;border:0;border-radius:32px 32px 32px 6px;padding:30px 22px;box-shadow:none}
.nature .calc h3{font-size:25px;font-weight:500;line-height:1.3;color:#543f29;margin-bottom:15px}
.nature .calc .calc-note,.nature .calc label,.nature .calc .calc-cta p{color:#685840}
.nature .calc input[type=range]{accent-color:var(--bouton);min-height:44px}
.nature .calc-montants{gap:9px;align-items:center}
.nature .calc .bloc,.nature .calc .bloc.final{background:#f9f3e9;border:0;border-radius:18px;padding:18px 7px;color:#57442b}
.nature .calc .bloc.final{background:#536a48;color:#fff}
.nature .calc .bloc .label{color:#685840;font-size:10px}.nature .calc .bloc.final .label{color:#edf3e8}
.nature .calc .valeur,.nature .calc .bloc.final .valeur{font:500 32px/1.4 var(--f-display);letter-spacing:-1px;color:inherit}
.nature .calc .calc-fleche{color:#725c3e}
.nature .calc-cta .btn{width:100%}
.nature .calc-cta-tel a{color:#543f29;border-color:#b7a589}
.nature .calc-cta-tel a:hover{background:#dfcdb3;color:#543f29}
.nature #zone{background:var(--nt-clair);border-radius:36px 36px 0 0}
.nature .zone-flex{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:center}
.nature .zone-texte{width:100%;min-width:0}
.nature .zone-flex>.photo-reelle{min-width:0!important}
.nature .zone-flex .photo-slot{display:none}
.nature .photo-reelle{border-radius:32px 80px 32px 32px;box-shadow:none}
.nature .carte-zone{width:100%;min-width:0;min-height:260px;height:280px;border:0;border-radius:24px;box-shadow:none}
.nature .communes{gap:8px;margin-top:25px}
.nature .communes li{background:transparent;border:1px solid #ccd7c1;border-radius:30px;padding:9px 14px;font-size:12px;color:var(--nt-secondaire)}
.nature .communes .principale{background:#dee8d4;color:#3b5733;border-color:#dee8d4;font-weight:600}
.nature .zone-contact{font-size:14px;color:var(--nt-secondaire);margin-top:24px}
.nature .avis{background:var(--nt-terre);border:0;border-radius:0 0 36px 36px}
.nature .avis .eyebrow{color:#685239}
.nature .avis-grid{grid-auto-columns:100%;gap:28px;padding:0 0 14px}
.nature .avis-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:15px 0 0}
.nature .avis-card blockquote{font:400 23px/1.65 Georgia,serif;letter-spacing:-.4px;color:#53442e;margin:20px 0 25px}
.nature .avis-card cite{font:500 12px/1.6 var(--f-texte);color:#685840;display:block}
.nature .avis-card .etoiles{color:#806016;letter-spacing:3px;font-size:12px}
.nature .avis-navigation{margin-top:10px;justify-content:flex-start}
.nature .avis-navigation button{background:transparent;border-color:#beaa8d;color:#654b2c}
.nature .reseau{background:var(--papier)}
.nature .reseau-carte{background:transparent;border:0;border-radius:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:32px;box-shadow:none;max-width:none}
.nature .reseau-carte h2{font-size:33px;font-weight:500;line-height:1.25;color:var(--encre);margin-bottom:23px}
.nature .reseau-carte p{font-size:15px;line-height:1.9;color:var(--nt-secondaire)}
.nature .reseau-signature{margin-top:23px;font-size:12px!important}
.nature .photo-reseau{aspect-ratio:16/10;border-radius:80px 24px 24px 24px}
.nature .reseau-points{margin-top:26px;gap:17px}
.nature .reseau-points li{font-size:13px;line-height:1.8;color:var(--nt-secondaire)}
.nature .reseau-points .coche{background:var(--nt-sauge);color:#4e6643;flex-shrink:0}
.nature #devis{background:#e4ead9;border-radius:36px 36px 0 0}
.nature .contact-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.nature .carte-contact{border-radius:100px 100px 24px 24px;background:var(--vert-fonce);min-height:420px;box-shadow:none;isolation:isolate}
.nature .carte-contact:not(:has(.photo-portrait)){min-height:0;border-radius:24px}
.nature .carte-contact .dedans{padding:30px 22px}
.nature .carte-contact .ligne a{font-size:16px}.nature .carte-contact .ligne{font-size:13px}
.nature form.devis{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;gap:22px}
.nature form.devis label{font-size:12px;font-weight:500;color:var(--encre)}
.nature form.devis input,.nature form.devis select,.nature form.devis textarea{width:100%;border:1px solid #c5d0b9;border-radius:12px;background:#fbfdf7;font-size:16px;min-height:50px;box-shadow:none}
.nature form.devis .deux-col{grid-template-columns:minmax(0,1fr);gap:22px}
.nature form.devis .btn{min-height:50px}
.nature .articles-accueil{background:var(--papier)}
.nature .articles-entete{gap:20px}.nature .articles-tous{font-size:12px;color:var(--vert)}
.nature .articles-cartes{gap:24px}
.nature .article-carte{border:0;border-radius:0;background:transparent;overflow:visible}
.nature .article-carte img{border-radius:24px 24px 24px 5px}
.nature .article-carte-texte{padding:22px 2px 8px;gap:12px}
.nature .article-carte h2,.nature .article-carte h3{font:500 22px/1.35 var(--f-display);letter-spacing:-.8px;color:var(--encre)}
.nature .article-theme{font-size:10px;letter-spacing:.07em;color:#63734d;font-weight:600}
.nature .article-lire{color:var(--vert);font-size:12px;text-decoration:underline;text-underline-offset:5px}
.nature .faq-liste{max-width:none;gap:0}
.nature .faq-liste details{border:0;border-bottom:1px solid var(--nt-trait);border-radius:0;background:transparent}
.nature .faq-liste summary{font:500 15px/1.6 var(--f-texte);padding:23px 0;gap:20px;color:var(--encre)}
.nature .faq-liste summary::after{color:var(--vert)}
.nature .faq-liste details p{padding:0 0 24px;font-size:14px;line-height:1.9;color:var(--nt-secondaire)}
.nature footer.site{background:#e8ecde;color:#55644c;border:0;border-top:1px solid var(--nt-trait);padding:32px 0 100px;font-size:12px}
.nature footer.site .wrap{gap:17px}.nature footer.site a,.nature footer.site button{color:inherit}
.nature .footer-reseau{font-size:11px}.nature .footer-facto{font-size:12px}
.nature .ml-boite{border-radius:24px;padding:28px 22px;background:var(--papier)}
.nature .appel-flottant,.nature .article-devis-mobile{display:none}
.nature .mobile-contact{position:fixed;z-index:90;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.45fr;gap:9px;background:#fbf8eff5;border-top:1px solid var(--nt-trait);padding:10px 16px max(10px,env(safe-area-inset-bottom));backdrop-filter:blur(12px)}
.nature .mobile-contact a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:9px 8px;border-radius:30px;border:1px solid #a6b59a;color:var(--vert);font-size:12px;font-weight:600;text-decoration:none;line-height:1.5}
.nature .mobile-contact a:last-child{background:var(--vert);color:#fff;border-color:var(--vert)}
.nature .mobile-contact svg{width:15px;height:15px;flex-shrink:0}
.nature .ch-page{padding-top:36px}
.nature .ch-carte{border:1px solid var(--nt-trait);border-radius:24px;background:#fffdf7;box-shadow:none}
.nature .ch-photos img{border-radius:0}
.nature .ch-f{border-radius:24px;background:transparent;border:1px solid #c4d0b7;min-height:44px;font-size:12px}
.nature .ch-f.actif{background:var(--vert);color:#fff;border-color:var(--vert)}
.nature .ch-cta{border-radius:28px;background:var(--nt-sauge);border:0}
.nature .articles-contenu{padding-top:36px}
.nature .articles-titre .titre-section{font-weight:500;font-size:clamp(32px,5vw,51px)}
.nature .lecture{max-width:800px}.nature .lecture h1{font-weight:500;letter-spacing:-.04em}
.nature .lecture .couverture,.nature .photo-article img{border-radius:25px}
.nature .lecture .prose{font-size:17px;line-height:1.9}
.nature .lecture .prose h2{font-size:29px;font-weight:500;letter-spacing:-1px}
.nature .suite{border-radius:28px;background:var(--nt-sauge)}
.nature .articles-contenu .bouton{border-radius:30px;font-size:14px;box-shadow:none}
@media(min-width:650px){
 .nature .wrap{padding:0 40px}
 .nature section{padding:82px 0}
 .nature .hero,.nature .hero.avec-photo{padding:40px 0 48px;border-radius:0 0 50px 50px}
 .nature .hero-grid,.nature .hero.avec-photo .hero-grid{max-width:800px}
 .nature .hero h1{font-size:52px;max-width:19ch}
 .nature .hero p.sous{max-width:58ch;font-size:16px}
 .nature .hero-cta{flex-direction:row;flex-wrap:wrap;gap:12px}
 .nature .hero-cta .btn{width:auto}
 .nature .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
 .nature .service-annuel{padding:30px;flex-direction:row;align-items:center;gap:32px}
 .nature .avis-grid{grid-auto-columns:calc((100% - 38px)/2);gap:38px}
 .nature form.devis .deux-col{grid-template-columns:1fr 1fr}
}
@media(min-width:1000px){
 .nature .wrap{padding:0 64px}
 .nature section{padding:100px 0}
 .nature .hero,.nature .hero.avec-photo{margin:18px 24px 0;padding:62px 0 70px;border-radius:34px 34px 100px 34px}
 .nature .hero-grid,.nature .hero.avec-photo .hero-grid{grid-template-columns:1fr 1.02fr;gap:76px;max-width:1350px;align-items:center}
 .nature .hero-grid>div:first-child{display:block;grid-column:2;grid-row:1}
 .nature .hero-visuel,.nature .hero.avec-photo .hero-visuel{grid-column:1;grid-row:1;align-self:center;margin:0;padding:0 14px 0 0}
 .nature .hero h1{font-size:clamp(43px,4.25vw,62px);max-width:17ch;line-height:1.12;margin-bottom:25px;letter-spacing:-.055em}
 .nature .hero .eyebrow{max-width:none;margin-bottom:22px;font-size:10px}
 .nature .hero p.sous{font-size:15px;margin:0 0 28px;max-width:48ch}
 .nature .hero::before{top:auto;bottom:-70px;right:33%;height:260px;width:130px;transform:rotate(38deg);border-color:#aabda16b}
 .nature .hero:not(.avec-photo) .hero-grid{grid-template-columns:1fr}
 .nature .hero:not(.avec-photo) .hero-grid>div:first-child{grid-column:1;max-width:920px;margin:0 auto}
 .nature .hero:not(.avec-photo) h1{max-width:24ch}
 .nature .hero:not(.avec-photo) p.sous{max-width:64ch}
 .nature .bandeau-sap{padding:30px 0}
 .nature .bandeau-sap .wrap{gap:26px;max-width:1000px;font-size:13px}
 .nature .badge-ci{font-size:25px;padding:23px 16px}
 .nature .titre-section{font-size:43px;max-width:27ch}
 .nature .intro-section{font-size:16px;margin-bottom:40px}
 .nature #services{padding-top:50px}
 .nature .services-grid{column-gap:76px}
 .nature .service{padding-top:28px;padding-bottom:31px}
 .nature .service:not(.service-annuel)::before{top:33px}
 .nature .service h3{font-size:22px}
 .nature .service-annuel{padding:34px 38px;margin-top:25px;flex-wrap:nowrap}
 .nature .realisations{border-radius:80px 80px 0 0}
 .nature .ba{border-radius:32px}
 .nature .realis-recentes{gap:40px;margin-top:48px}
 .nature .realis-recente h3{font-size:27px}
 .nature .ci-grid{grid-template-columns:1fr 1fr;gap:70px}
 .nature .calc{padding:36px 40px;border-radius:48px 48px 48px 8px}
 .nature .calc .valeur,.nature .calc .bloc.final .valeur{font-size:38px}
 .nature #zone{border-radius:80px 80px 0 0}
 .nature .zone-flex{gap:64px}
 .nature .zone-flex:has(>.carte-zone,>.photo-reelle){grid-template-columns:repeat(2,minmax(0,1fr))}
 .nature .carte-zone{height:350px;min-height:350px;border-radius:32px}
 .nature .avis{border-radius:0 0 80px 80px}
 .nature .avis-card blockquote{font-size:28px;line-height:1.65}
 .nature .reseau-carte{grid-template-columns:1.1fr 1fr;gap:82px;align-items:center}
 .nature .reseau-carte h2{font-size:43px}
 .nature #devis{border-radius:80px 80px 0 0}
 .nature .contact-grid{grid-template-columns:.88fr 1.12fr;gap:72px}
 .nature .carte-contact{min-height:470px;border-radius:170px 170px 30px 30px}
 .nature .carte-contact .dedans{padding:38px 32px}
 .nature .mobile-contact{display:none}
 .nature .nav-tel{display:block}
 .nature footer.site{padding:40px 0}
}
@media(min-width:1280px){
 .nature .nav{padding:22px 48px;gap:26px}
 .nature .nav-actions{margin-left:0}
 .nature .nav-links{display:flex;position:static;flex-direction:row;align-items:center;gap:23px;border:0;background:transparent;padding:0;overflow:visible;max-height:none}
 .nature .nav-links li+li{border:0}.nature .nav-links a{font-size:12px;padding:10px 0;white-space:nowrap}
 .nature .burger{display:none}
}
@media(prefers-reduced-motion:reduce){.nature *{transition:none!important;scroll-behavior:auto!important}}

/* L’aperçu suit son conteneur, jamais la largeur de la fenêtre de l’éditeur. */
#site.nature .mobile-contact{position:sticky;bottom:0}
#site.nature .nav{position:relative}
#site.nature .hero h1{font-size:clamp(34px,8.5cqw,47px)}
#site.nature .titre-section{font-size:clamp(29px,7.5cqw,40px)}
@media(min-width:650px){#site.nature .hero h1{font-size:52px}}
@media(min-width:1000px){
 #site.nature .hero h1{font-size:clamp(43px,4.25cqw,62px)}
 #site.nature .titre-section{font-size:43px}
}
