/* V1.5.40. Territorial reading and mobile composition; no atlas geometry changes. */
.page-sectors .s-intro{grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:clamp(32px,5vw,76px);align-items:center;padding:54px 0 48px}
.page-sectors .s-intro-heading,.page-sectors .s-intro-copy{min-width:0}
.page-sectors .s-intro .p-title{font-size:clamp(44px,4.8vw,68px);line-height:1.08;letter-spacing:-.04em;max-width:650px;text-wrap:pretty}
.page-sectors .s-intro .p-title em{font-weight:400;font-style:italic;color:#526245;display:inline-block;margin-top:.1em}
.page-sectors .s-hero-territory{font-size:13px;line-height:1.6;font-weight:600;letter-spacing:.06em;color:#46563e;margin:22px 0 0;padding-top:18px;border-top:1px solid #cbd2c2;width:fit-content}
.page-sectors .s-intro-copy{padding:0;max-width:510px}
.page-sectors .s-intro-copy .p-lead{font-family:Georgia,"Times New Roman",serif;font-size:clamp(24px,2.3vw,32px);line-height:1.22;letter-spacing:-.02em;color:#244b3b;margin:0 0 19px;max-width:23ch}
.page-sectors .s-intro-copy>p:not(.p-lead){font-size:15px;line-height:1.7;margin:0 0 18px;max-width:53ch}
.page-sectors .s-intro-copy>p.s-intro-scope{font-size:13px;line-height:1.7;color:#46563e;border-left:2px solid #9a8156;padding-left:15px;margin:0 0 24px}
.page-sectors .p-btn{font-size:14px;min-height:48px;padding:14px 20px}
.page-sectors .s-find-commune{font-size:13px;margin-top:13px;min-height:44px;display:flex;align-items:center;gap:7px;padding:5px 0}
.page-sectors .s-atlas-caption{position:relative;inset:auto;padding:26px 10px 0}
.page-sectors .s-atlas-caption h2{font-size:30px;line-height:1.2;max-width:none}
.page-sectors .s-map-pane>img{margin-top:0}
.page-sectors .s-map-key{font-size:13px;line-height:1.55;gap:10px 20px}
.page-sectors .s-atlas-text{font-size:13px;line-height:1.7;margin-top:18px}
.page-sectors .s-atlas-expand{font-size:13px;min-height:44px;display:inline-flex;align-items:center;flex-wrap:wrap;gap:0 4px;padding:8px 0}
.page-sectors .s-atlas-aside .s-addresses strong{font-size:15px;color:#244b3b}
.page-sectors .s-addresses address{font-size:13px;color:#46563e;line-height:1.7}
.page-sectors .s-directions{display:inline-flex;align-items:center;min-height:44px;font-size:12px;line-height:1.5;text-underline-offset:4px;color:#244b3b}
.page-sectors .s-addresses li{margin-bottom:13px}
.page-sectors .s-atlas-aside .s-small{line-height:1.75}
.page-sectors .s-atlas figcaption{font-size:12px;line-height:1.8}
.page-sectors .s-section-intro p:not(.p-kicker){font-size:15px;line-height:1.75;max-width:58ch;color:#46563e}
.page-sectors .s-communes{padding:64px 0 28px;gap:clamp(30px,5vw,72px)}
.page-sectors .s-commune-tool{margin-top:0;background:#fafaf2;padding:25px;border-color:#b6c1ae}
.page-sectors .s-commune-tool label{font-size:15px;line-height:1.5;color:#244b3b}
.page-sectors .s-search-field input{font-size:16px;min-height:50px;background:#fffdf7;color:#244b3b}
.page-sectors .s-search-results{min-height:100px}
.page-sectors .s-search-results>p{font-size:14px;line-height:1.7;color:#43553e}
.page-sectors .s-search-results li p,.page-sectors .s-search-results .s-result-content{font-size:14px;line-height:1.75}
.page-sectors .s-result-intents .s-result-link{font-size:13px;min-height:44px;padding:10px 0}
.page-sectors .s-commune-directory{padding-bottom:26px;border-bottom:1px solid #bfc9b6}
.page-sectors .s-commune-directory details{padding:0 26px;border:1px solid #aeba9f;background:#eef0e4;border-radius:5px}
.page-sectors .s-commune-directory summary{padding:20px 0;font-size:17px;line-height:1.5;font-weight:650;color:#244b3b;min-height:68px;align-items:center}
.page-sectors .s-commune-directory summary>span{font-size:25px;line-height:1;flex:0 0 22px;text-align:center;color:#6c522c}
.page-sectors .s-commune-directory .s-directory-intro{font-size:14px;line-height:1.7;color:#46563e;border-top:1px solid #c3cdb7;padding-top:17px;margin:0;max-width:78ch}
.page-sectors .s-commune-directory details[open]{padding-bottom:20px}
.page-sectors .s-commune-list{display:block;column-count:3;column-gap:36px;list-style:none;margin:20px 0;padding:0;font-size:15px;line-height:1.6;color:#244b3b}
.page-sectors .s-commune-list li{break-inside:avoid;padding:7px 0;border-bottom:1px solid #d4dacb;font-weight:500;overflow-wrap:anywhere}
.page-sectors .s-commune-directory .p-link{font-size:13px;display:inline-flex;align-items:center;min-height:44px;padding:7px 0;border-bottom:0;text-decoration:underline;text-underline-offset:4px}
.page-sectors .s-beyond{grid-template-columns:205px minmax(0,1fr);gap:24px;padding-top:24px}
.page-sectors .s-beyond .p-kicker{margin:2px 0 0;color:#6f572f}
.page-sectors .s-beyond>p:last-child{font-size:14px;line-height:1.75;color:#46563e;max-width:82ch}
.page-sectors .s-local-cases{display:block;padding:54px 0 64px}
.page-sectors .s-local-cases>.s-section-intro{max-width:750px;margin-bottom:30px}
.page-sectors .s-local-cases .p-heading{margin-bottom:15px}
.page-sectors .s-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 54px}
.page-sectors .s-case-grid article{border-top:1px solid #bfc9b6;padding:26px 0 25px;min-width:0}
.page-sectors .s-case-label{font-size:12px;line-height:1.6;letter-spacing:.06em;font-weight:650;text-transform:uppercase;color:#705730;margin:0 0 12px}
.page-sectors .s-case-grid h3{font:400 27px/1.22 Georgia,"Times New Roman",serif;letter-spacing:-.02em;color:#244b3b;margin:0 0 13px;max-width:30ch}
.page-sectors .s-case-grid article>p:not(.s-case-label){font-size:14px;line-height:1.75;color:#46563e;max-width:58ch;margin:0 0 14px}
.page-sectors .s-case-grid .p-link{display:inline-flex;align-items:center;min-height:44px;padding:7px 0;font-size:13px;line-height:1.7;text-decoration:underline;text-underline-offset:4px;border-bottom:0}
.page-sectors .s-local-rules{padding:64px 0}
.page-sectors .s-rule-top{max-width:850px;margin-bottom:34px}
.page-sectors .s-rule-grid p:not(.s-rule-label),.page-sectors .s-rule-grid ol{font-size:14px;line-height:1.8;color:#eff1e8}
.page-sectors .s-rule-grid .p-link,.page-sectors .s-secondary-link{font-size:13px;line-height:1.7;min-height:44px;padding:7px 0;display:block;width:fit-content;border-bottom:0;text-decoration:underline;text-underline-offset:4px;margin-top:9px}
.page-sectors .s-rule-grid p.s-rule-note{font-size:13px;line-height:1.75;color:#e5eada}
.page-sectors .s-organise{padding:64px 0;scroll-margin-top:170px}
.page-sectors .s-brief-list p{font-size:14px;line-height:1.75;color:#46563e}
.page-sectors .s-brief-list h3{font-size:16px;line-height:1.5}
@media(max-width:1023px){
 .page-sectors .s-intro{gap:32px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);padding:42px 0}
 .page-sectors .s-intro .p-title{font-size:49px}
 .page-sectors .s-intro-copy .p-lead{font-size:26px}
 .page-sectors .s-intro-copy>p:not(.p-lead){font-size:14px}
 .page-sectors .s-atlas{grid-template-columns:minmax(0,1fr) 285px}
 .page-sectors .s-map-pane{padding-left:12px;padding-right:12px}
 .page-sectors .s-atlas-caption{padding:22px 8px 0}
 .page-sectors .s-atlas-caption h2{font-size:25px}
 .page-sectors .s-map-key{gap:8px 15px}
 .page-sectors .s-atlas-aside{padding:25px 20px}
 .page-sectors .s-commune-list{column-gap:26px;font-size:14px}
 .page-sectors .s-case-grid{gap:0 35px}
 .page-sectors .s-case-grid h3{font-size:25px}
}
@media(max-width:767px){
 .page-sectors .s-intro{grid-template-columns:1fr;gap:25px;padding:34px 0 32px}
 .page-sectors .s-intro .p-title{font-size:clamp(42px,11.3vw,59px);line-height:1.1;letter-spacing:-.04em;max-width:580px}
 .page-sectors .s-hero-territory{font-size:12px;margin-top:18px;padding-top:13px}
 .page-sectors .s-intro-copy{max-width:580px}
 .page-sectors .s-intro-copy .p-lead{font-size:26px;max-width:25ch;margin-bottom:15px}
 .page-sectors .s-intro-copy>p:not(.p-lead){font-size:15px;line-height:1.7;margin-bottom:16px}
 .page-sectors .s-intro-copy>p.s-intro-scope{font-size:13px;line-height:1.7;padding-left:13px;margin-bottom:21px}
 .page-sectors .s-intro .p-btn{font-size:14px;min-height:50px}
 .page-sectors .s-find-commune{font-size:13px;margin-top:7px}
 .page-sectors .s-atlas{grid-template-columns:1fr}
 .page-sectors .s-map-pane{padding:0 8px 18px}
 .page-sectors .s-atlas-caption{padding:22px 12px 0}
 .page-sectors .s-atlas-caption h2{font-size:27px}
 .page-sectors .s-map-key{font-size:12px;padding:0 12px;gap:8px 15px}
 .page-sectors .s-atlas-text{font-size:13px;line-height:1.75}
 .page-sectors .s-atlas-expand{font-size:12px;line-height:1.65;display:inline-block}
 .page-sectors .s-atlas-aside{grid-template-columns:1fr;gap:0;padding:24px 20px}
 .page-sectors .s-atlas-aside h3{grid-column:auto;font-size:29px}
 .page-sectors .s-atlas-aside>img{grid-column:auto;grid-row:auto;max-width:360px;max-height:none;width:100%;margin:15px auto 5px}
 .page-sectors .s-addresses{grid-template-columns:1fr;gap:0;margin-top:15px}
 .page-sectors .s-addresses li{grid-template-columns:25px minmax(0,1fr);gap:11px;padding-top:16px;border-top:1px solid #d0d7c7;margin-bottom:12px}
 .page-sectors .s-addresses address{font-size:14px}
 .page-sectors .s-directions{font-size:13px}
 .page-sectors .s-atlas-aside .s-small{margin:5px 0 13px}
 .page-sectors .s-communes{padding:44px 0 22px;gap:17px}
 .page-sectors .s-section-intro p:not(.p-kicker){font-size:14px;line-height:1.75}
 .page-sectors .s-commune-tool{padding:20px}
 .page-sectors .s-commune-tool label{font-size:14px}
 .page-sectors .s-commune-directory{padding-bottom:22px}
 .page-sectors .s-commune-directory details{padding:0 18px}
 .page-sectors .s-commune-directory summary{font-size:16px;line-height:1.5;gap:13px;padding:18px 0;min-height:72px}
 .page-sectors .s-commune-directory .s-directory-intro{font-size:13px;padding-top:16px}
 .page-sectors .s-commune-list{column-count:2;column-gap:20px;margin:15px 0;font-size:14px;line-height:1.6}
 .page-sectors .s-commune-list li{padding:8px 0}
 .page-sectors .s-commune-directory .p-link{font-size:12px;line-height:1.8}
 .page-sectors .s-beyond{grid-template-columns:1fr;gap:10px;padding-top:22px}
 .page-sectors .s-beyond>p:last-child{font-size:13px;line-height:1.75}
 .page-sectors .s-local-cases{padding:39px 0 43px}
 .page-sectors .s-local-cases>.s-section-intro{margin-bottom:23px}
 .page-sectors .s-case-grid{grid-template-columns:1fr;gap:0}
 .page-sectors .s-case-grid article{padding:23px 0}
 .page-sectors .s-case-grid h3{font-size:26px;line-height:1.23;max-width:30ch}
 .page-sectors .s-case-grid article>p:not(.s-case-label){font-size:14px;line-height:1.75}
 .page-sectors .s-case-grid .p-link{font-size:13px}
 .page-sectors .s-local-rules{padding:44px 0}
 .page-sectors .s-rule-grid{gap:30px}
 .page-sectors .s-rule-top .p-heading{font-size:32px;line-height:1.15}
 .page-sectors .s-rule-grid h3{font-size:31px;line-height:1.15}
 .page-sectors .s-rule-grid p:not(.s-rule-label),.page-sectors .s-rule-grid ol{font-size:14px;line-height:1.8}
 .page-sectors .s-organise{padding:44px 0}
 .page-sectors .s-brief-list p{font-size:14px;line-height:1.75}
}
@media(max-width:359px){
 .page-sectors .s-intro .p-title{font-size:40px}
 .page-sectors .s-intro-copy .p-lead{font-size:25px}
 .page-sectors .s-commune-list{column-count:1;font-size:15px}
 .page-sectors .s-commune-directory summary{font-size:15px}
 .page-sectors .s-rule-top .p-heading{font-size:29px}
}

.page-sectors #commune-search{scroll-margin-top:170px}
