/* Carte principale : largeur généreuse, commandes à droite sur ordinateur. */
.map-workbench{background:#eef1f4;padding:30px 28px 32px;border-bottom:1px solid #cbd2d8;scroll-margin-top:0}.workbench-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:25px}.workbench-heading h1{font-size:clamp(32px,3.1vw,48px);margin:0 0 10px;letter-spacing:-1.8px}.workbench-heading .eyebrow{margin-bottom:9px}.workbench-heading p:last-child{font-size:14px;color:var(--muted);margin:0;max-width:740px}.workbench-contact{border-left:3px solid var(--yellow);padding-left:20px;flex-shrink:0}.workbench-contact span{display:block;font-size:10px;letter-spacing:1px;font-weight:700}.workbench-contact a{font-size:24px;font-weight:800;text-decoration:none;display:block}.workbench-contact small{font-size:11px;color:var(--muted)}.map-service-bar{display:flex;gap:0;border-bottom:3px solid var(--forest);background:white;align-items:stretch}.map-service-bar button,.map-service-bar a{font-size:13px;padding:13px 20px;min-height:48px;border:0;border-right:1px solid var(--line);background:white;text-align:center;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--ink);text-decoration:none}.map-service-bar button[aria-pressed=true]{background:var(--forest);color:white}.map-service-bar a{margin-left:auto;background:#e2e8ed}.map-workbench .demo-banner{border:0;margin:0;padding:8px 15px;font-size:11px;background:#fff2d0}.estimator-grid{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:0;border:1px solid #bbc5ce;background:white;align-items:start}.map-column,.pricing-column{min-width:0}.map-column{position:relative;padding:16px}.pricing-column{padding:22px;border-left:1px solid var(--line);background:#fff}.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.map-toolbar .eyebrow{margin:0}.map-toolbar .small-button{min-height:34px;padding:5px 10px;font-size:11px}.map-search label{font-size:12px;font-weight:700}.input-row{display:flex;gap:8px;margin:5px 0 10px}.map-search input,.reference-grid input,.parcel-item input,.estimate-form input{min-width:0;border:1px solid #9aabb9;border-radius:0;background:#fff;color:var(--ink);padding:10px;min-height:44px;width:100%;font-size:16px}.input-row input{flex:1}.input-row .button{flex-shrink:0;min-height:44px}.map-frame{border:1px solid #afbdc8;overflow:hidden}#parcel-map{height:clamp(470px,66vh,860px);background:#d2dde4;z-index:0}.map-hint{background:#123657;color:white;font-size:11px;line-height:1.5;padding:9px 13px;display:flex;gap:9px;align-items:center}.map-dot{display:inline-block;width:9px;height:9px;flex-shrink:0;background:#1991e2;border:1px solid #fff}.map-status{font-size:12px;margin:9px 0 0;min-height:20px;color:var(--muted)}.is-error{color:#a73528}.town-results{display:grid;gap:4px}.town-result{text-align:left;padding:12px;background:#e6f0f7;border:1px solid #b5cddd;color:var(--forest);font-size:13px;min-height:44px}.reference-search{margin:8px 0;padding:12px 0}.reference-search summary,.manual-area summary{font-size:12px}.reference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-block:15px}.reference-grid label{font-size:12px;font-weight:700}.reference-grid input{margin-top:5px}.selection-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:20px 0 12px}.selection-head h2{font-size:21px;letter-spacing:-.5px;margin:0}.selection-head h2 span{font-size:16px;font-weight:400}.empty-selection{font-size:13px;color:var(--muted);background:#eef1f4;padding:14px;margin-bottom:12px}.parcel-item{border:1px solid var(--line);padding:15px;margin-bottom:10px}.parcel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.parcel-heading strong{font-size:13px;overflow-wrap:anywhere}.parcel-meta{font-size:11px;margin:8px 0;color:var(--muted)}.parcel-item label{display:flex;align-items:center;gap:15px;font-size:12px}.parcel-item input{width:160px}.surface-total{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:2px solid var(--forest);margin:15px 0 5px;padding-top:12px;font-size:13px}.surface-total strong{font-size:26px;letter-spacing:-1px;color:var(--forest)}.map-footnote,.estimate-disclaimer{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 0}.estimate-form>.eyebrow{font-size:9px}.estimate-form h2{font-size:27px;letter-spacing:-.8px;margin-bottom:20px}.estimate-form label{display:block;font-size:12px;font-weight:700;margin-bottom:15px}.estimate-form select,.estimate-form input{margin-top:5px;padding:10px;font-size:14px;min-height:44px}.estimate-form small{display:block;font-size:11px;color:var(--muted);font-weight:400;line-height:1.5;margin-top:5px}#estimator [hidden]{display:none!important}.estimate-form fieldset{padding:18px 0 0;margin:20px 0;border:0;border-top:1px solid var(--line);min-width:0}.estimate-form legend{font-size:13px;font-weight:700;padding-right:10px}.service-help{font-size:12px;line-height:1.6;color:var(--muted);border-left:3px solid var(--yellow);padding-left:10px}.conditions-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.manual-area{padding:12px 0}.manual-area label{margin-top:12px}.manual-area p{font-size:11px;color:var(--muted)}.calculate{width:100%;background:var(--yellow);color:var(--deep);font-size:14px}.calculate:hover{background:#e7a923;color:var(--deep)}.estimate-result{margin-top:20px;background:#eef3f7;border-top:3px solid var(--forest);padding:20px;font-size:13px;overflow-wrap:anywhere}.estimate-result>p:last-child{margin:0}.estimate-result .eyebrow{font-size:9px}.price-range{font-size:28px;font-weight:800;line-height:1.25;letter-spacing:-1px;display:block}.price-tax{font-size:11px;margin:6px 0 15px}.result-note,.result-included{font-size:10px;color:var(--muted)}.result-warning{background:#fff1cc;border-left:3px solid var(--yellow);padding:10px;font-size:11px}.estimate-result ul{padding-left:16px;font-size:11px}.estimate-result .button{font-size:12px;width:100%;margin-top:10px}.price-details{width:100%;border-collapse:collapse;margin:20px 0;font-size:10px}.price-details caption{text-align:left;font-weight:700;margin-bottom:10px}.price-details th,.price-details td{padding:8px 3px;border-bottom:1px solid #cbd2d8;text-align:left;vertical-align:top;overflow-wrap:anywhere}.price-details th{font-weight:400;width:58%}.price-details tfoot th,.price-details tfoot td{font-weight:bold}.leaflet-container{font:13px Arial,sans-serif}.leaflet-control-attribution{font-size:9px}.leaflet-control-layers label{margin:8px 4px}.leaflet-control-layers{font-size:12px}.leaflet-container a{color:#123657}.map-expanded .estimator-grid{grid-template-columns:1fr}.map-expanded #parcel-map{height:80vh}.map-expanded .pricing-column{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:30px}.map-expanded .estimate-disclaimer{grid-column:1/-1}.map-expanded .estimate-result{align-self:start;margin-top:0}
@media(min-width:1800px){.map-workbench{padding-inline:40px}.estimator-grid{grid-template-columns:minmax(0,1fr) 400px}}
@media(max-width:1100px){.map-workbench{padding:25px 20px}.estimator-grid{grid-template-columns:minmax(0,1fr) 320px}.pricing-column{padding:18px}.workbench-contact{display:none}.map-service-bar button,.map-service-bar a{padding:12px 15px;font-size:12px}.conditions-grid{grid-template-columns:1fr}.map-column{padding:12px}.workbench-heading h1{font-size:39px}#parcel-map{height:570px}.reference-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.map-workbench{padding:23px 0 0}.workbench-heading{padding-inline:16px;margin-bottom:20px}.workbench-heading h1{font-size:34px;letter-spacing:-1px}.workbench-heading .eyebrow{font-size:9px;letter-spacing:1px}.workbench-heading p:last-child{font-size:13px;line-height:1.5}.map-service-bar{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.map-service-bar button,.map-service-bar a{font-size:11px;padding:12px 8px;border-bottom:1px solid var(--line);min-height:45px}.map-service-bar a{margin:0}.estimator-grid{display:flex;flex-direction:column;border-inline:0}.map-column{padding:13px 12px;width:100%}.pricing-column{border:0;border-top:4px solid var(--forest);padding:23px 16px;width:100%}.map-search label{font-size:11px}.input-row{gap:6px}.input-row .button{padding:10px;font-size:12px}.map-toolbar .eyebrow{font-size:8px;letter-spacing:.8px}.map-toolbar .small-button{font-size:10px}.map-frame{margin-inline:-12px;border-inline:0}#parcel-map{height:55svh;min-height:350px;max-height:550px}.map-hint{font-size:10px;padding:8px 12px}.map-status{font-size:11px}.selection-head h2{font-size:20px}.small-button{font-size:11px}.conditions-grid{grid-template-columns:1fr 1fr}.estimate-form h2{font-size:29px}.estimate-form select,.estimate-form input{font-size:16px}.estimate-form label{font-size:13px}.map-expanded .pricing-column{display:block}.map-expanded #parcel-map{height:75svh;max-height:none}.map-expanded .estimate-result{margin-top:20px}.parcel-item label{flex-wrap:wrap}.parcel-item input{width:100%}.surface-total{gap:10px}.price-range{font-size:31px}.price-details{font-size:12px}.estimate-result{font-size:14px}.map-workbench .demo-banner{padding:8px 12px;font-size:10px}}
@media(max-width:370px){.conditions-grid{grid-template-columns:1fr}.workbench-heading h1{font-size:31px}.map-toolbar{gap:5px}.surface-total strong{font-size:23px}.input-row .button{padding-inline:8px}}
@media print{.map-service-bar,.map-toolbar,.map-search,.reference-search,.small-button,.estimate-form,.map-hint{display:none}.estimator-grid{display:block}.map-workbench{padding:0;background:white}#parcel-map{height:350px}.pricing-column{border:0}.estimate-result .button{display:none}}

.mobile-prepare{display:none}@media(max-width:760px){.mobile-prepare{display:block;background:var(--forest);color:white;text-align:center;padding:12px;font-weight:700;font-size:13px;margin-top:18px}}
