:root{
    --green:#1f6e4a;
    --green-dark:#123d2d;
    --lime:#9fd36b;
    --gold:#f6b21a;
    --ink:#13231b;
    --muted:#63746b;
    --line:#dce8e1;
    --white:#fff;
    --glass:rgba(255,255,255,.88);
    --blackglass:rgba(5,12,9,.86);
    --red:#ce4c43;
    --shadow:0 24px 70px rgba(0,0,0,.22);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#0b160f}
button,input,select{font:inherit}
button{cursor:pointer}
a{text-decoration:none;color:inherit}
.sim-page{min-height:100vh;overflow:hidden;background:#09140e}.topbar{position:fixed;z-index:800;top:0;left:0;right:0;height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(10,25,16,.09)}
.brand{display:inline-flex;align-items:center;gap:11px}.brand-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#1f6e4a,#56a775);color:#fff;font-weight:950;font-size:1.5rem;box-shadow:0 10px 18px rgba(31,110,74,.22)}.brand-icon.dark{background:#111;color:#f5b51d;box-shadow:none}.brand strong{display:block;font-size:1.25rem;letter-spacing:-.05em}.brand small{display:block;margin-top:-3px;color:var(--green);font-size:.69rem;font-weight:900;letter-spacing:.28em}.nav-trust{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nav-trust span{display:inline-flex;align-items:center;height:34px;padding:0 12px;border:1px solid #d8e5de;border-radius:999px;background:#fff;color:#1a3b2c;font-size:.82rem;font-weight:900}.screen{position:relative;min-height:100vh;padding-top:74px}.screen[hidden]{display:none!important}.map-canvas{position:absolute;inset:74px 0 0 0;z-index:0;background:#20382b}.map-shade{position:absolute;inset:74px 0 0 0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.22),rgba(0,0,0,.02) 45%,rgba(0,0,0,.16))}.map-shade.dark{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.3) 35%,rgba(0,0,0,.72))}.leaflet-container{font-family:Inter,system-ui,sans-serif}.leaflet-control-attribution{font-size:10px!important}.glass-panel{position:relative;z-index:5;border:1px solid rgba(255,255,255,.34);border-radius:26px;background:var(--glass);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.address-panel{width:min(430px,calc(100vw - 32px));min-height:calc(100vh - 118px);margin:96px 0 22px 22px;padding:30px 28px;display:flex;flex-direction:column}.panel-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px}.panel-logo strong{font-size:2.1rem;letter-spacing:-.08em}.panel-logo em{font-style:normal;color:#f3ad16;font-size:1.55rem;font-weight:950;letter-spacing:-.05em}.panel-kicker{display:inline-flex;align-items:center;width:max-content;margin-bottom:12px;color:#e8aa13;font-size:.76rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.panel-kicker.green{color:var(--green)}.address-panel h1,.data-panel h2,.question-panel h2,.result-panel h2{margin:0;color:#0c1c14;font-size:clamp(1.7rem,2.5vw,2.65rem);line-height:1.08;letter-spacing:-.055em}.address-panel p{margin:14px 0 20px;color:#41544b;line-height:1.62}.address-search{position:relative;display:grid;grid-template-columns:1fr 52px;gap:8px}.address-search input{height:54px;border:1px solid #cadad2;border-radius:14px;padding:0 15px;background:#fff;color:#17251f;font-weight:750}.address-search input:focus{outline:4px solid rgba(31,110,74,.14);border-color:#62ad84}.address-search button{border:0;border-radius:14px;background:#f6b21a;color:#151206;font-size:1.7rem;font-weight:950}.suggestions{position:absolute;z-index:30;top:62px;left:0;right:0;overflow:hidden;border:1px solid #d5e3dc;border-radius:16px;background:#fff;box-shadow:0 18px 40px rgba(18,42,30,.18)}.suggestion{display:block;width:100%;padding:13px 15px;border:0;border-bottom:1px solid #edf3f0;background:#fff;text-align:left}.suggestion:hover{background:#f3faf6}.suggestion strong{display:block;color:#18352a}.suggestion span{display:block;margin-top:3px;color:#6a7b73;font-size:.8rem}.selected-address{margin-top:15px;padding:15px;border:1px solid #d8e7df;border-radius:17px;background:#f9fcfa}.selected-address small,.detected-mini small{display:block;color:#65766f;font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.selected-address strong{display:block;margin:4px 0;color:var(--green-dark);font-size:1rem}.selected-address span{display:block;color:#65766f;font-size:.82rem}.detected-mini{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}.detected-mini article{padding:12px;border:1px solid #d8e7df;border-radius:15px;background:#fff}.detected-mini strong{display:block;margin-top:4px;color:#173d2d;font-size:.9rem}.primary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;width:100%;border:0;border-radius:15px;background:linear-gradient(135deg,#f6b21a,#ffca43);color:#161206;font-weight:950;box-shadow:0 13px 27px rgba(246,178,26,.26);transition:.18s}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 18px 35px rgba(246,178,26,.32)}.primary-btn:disabled{opacity:.48;cursor:not-allowed;transform:none}.primary-btn.big{margin-top:24px;min-height:58px}.fine-print{margin-top:auto!important;margin-bottom:0!important;color:#73837c!important;font-size:.78rem;line-height:1.45!important}.study-layout{position:relative;z-index:5;min-height:calc(100vh - 74px);display:grid;grid-template-columns:430px minmax(480px,760px);gap:22px;align-items:start;padding:24px 24px 34px}.black-panel{min-height:calc(100vh - 122px);padding:26px;background:var(--blackglass);color:#fff}.black-panel h2{color:#fff;font-size:1.72rem}.back-link{display:inline-flex;align-items:center;width:max-content;margin-bottom:18px;border:0;background:transparent;color:#d7eadf;font-weight:900}.back-link.green{color:var(--green);margin-bottom:16px}.data-list{display:grid;grid-template-columns:1fr;gap:9px;margin-top:20px}.data-list article{padding:13px 14px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.06)}.data-list span{display:block;color:#a8b9b0;font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.data-list strong{display:block;margin-top:5px;color:#fff;font-size:.95rem}.data-note{margin:20px 0 0;color:#becdc5;line-height:1.55}.light-panel{padding:28px;background:rgba(255,255,255,.94)}.question-panel,.result-panel{max-height:calc(100vh - 122px);overflow:auto}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field-grid label{display:flex;flex-direction:column;gap:8px;color:#263b31;font-size:.86rem;font-weight:900}.field-grid input,.field-grid select,.lead-fields input{width:100%;height:50px;border:1px solid #cfded6;border-radius:14px;background:#fff;padding:0 14px;color:#1b2d24;font-weight:750}.input-unit{position:relative}.input-unit input{padding-right:50px}.input-unit span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#65766f;font-weight:950}.question-panel h3{margin:24px 0 13px;color:var(--green-dark);font-size:1.1rem}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.project-grid label{position:relative;min-height:82px;display:flex;align-items:flex-end;padding:12px;border:1px solid #dce8e1;border-radius:16px;background:#fbfdfc;color:#173d2d;font-size:.84rem;font-weight:950;cursor:pointer}.project-grid input{position:absolute;top:10px;right:10px;accent-color:var(--green)}.project-grid label:has(input:checked){border-color:#83cca4;background:#eef9f3;box-shadow:0 8px 20px rgba(31,110,74,.08)}.result-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.saving-card{padding:22px;border-radius:22px;background:linear-gradient(145deg,#123d2d,#24865d);color:#fff}.saving-card span,.saving-card small,.dpe-card span,.dpe-card small{display:block;color:#c8e3d6;font-weight:800}.saving-card strong{display:block;margin:8px 0 6px;color:#fff;font-size:2.65rem;letter-spacing:-.07em}.dpe-card{padding:22px;border:1px solid #dce8e1;border-radius:22px;background:#f8fbfa}.dpe-card span,.dpe-card small{color:#65766f}.dpe-card strong{display:block;margin:10px 0;color:var(--green-dark);font-size:2.35rem}.dpe-card em{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e8f5ee;color:var(--green);font-style:normal}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.kpi-grid article{padding:15px;border:1px solid #dce8e1;border-radius:17px;background:#fff}.kpi-grid small{display:block;color:#65766f;font-weight:850}.kpi-grid strong{display:block;margin-top:7px;color:var(--green-dark);font-size:1.35rem;letter-spacing:-.04em}.work-priorities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.work-priorities article{padding:16px;border:1px solid #dce8e1;border-radius:18px;background:#f9fcfb}.work-priorities strong{display:block;color:var(--green-dark)}.work-priorities p{margin:7px 0 0;color:#65766f;font-size:.82rem;line-height:1.45}.lead-box{display:grid;grid-template-columns:.92fr 1.08fr;gap:18px;margin-top:18px;padding:22px;border:1px solid #cfe4d8;border-radius:22px;background:linear-gradient(145deg,#edf8f2,#fff)}.lead-box h3{margin:0 0 8px;color:var(--green-dark);font-size:1.35rem}.lead-box p{margin:0;color:#60736a;line-height:1.55}.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lead-fields .consent,.lead-fields button,.lead-fields small{grid-column:1/-1}.consent{display:flex;gap:8px;color:#41544b;font-size:.78rem;font-weight:750;line-height:1.35}.consent input{width:auto;height:auto;margin-top:2px}.lead-fields small{min-height:20px;font-weight:850}.house-marker{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;margin:-19px 0 0 -19px!important;border:4px solid #fff;border-radius:50%;background:#f6b21a;box-shadow:0 10px 30px rgba(0,0,0,.35);color:#111;font-size:18px}.building-popup{font-family:Inter,sans-serif}.building-popup strong{display:block;color:#173d2d}.building-popup span{display:block;color:#65766f;font-size:.85rem;margin-top:3px}.loading-pill{position:absolute;z-index:20;right:24px;bottom:24px;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 13px 30px rgba(0,0,0,.16);color:#173d2d;font-weight:900}.screen-study .loading-pill{right:auto;left:478px}.analysis-toast{position:fixed;z-index:999;left:50%;top:92px;transform:translateX(-50%);display:none;padding:13px 18px;border-radius:999px;background:#fff;color:#173d2d;box-shadow:0 14px 32px rgba(0,0,0,.18);font-weight:950}.analysis-toast.visible{display:block}.leaflet-interactive{transition:.15s}
@media(max-width:1180px){.study-layout{grid-template-columns:1fr}.black-panel{min-height:auto}.question-panel,.result-panel{max-height:none}.screen-study .loading-pill{left:24px}.address-panel{min-height:auto}.result-hero,.lead-box{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-priorities{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.topbar{height:auto;min-height:74px;align-items:flex-start;flex-direction:column;gap:10px;padding:14px 16px}.nav-trust{gap:6px}.nav-trust span{height:30px;font-size:.72rem}.screen,.map-canvas,.map-shade{padding-top:112px;inset:112px 0 0 0}.address-panel{margin:128px 14px 20px;width:calc(100vw - 28px);padding:22px}.address-panel h1{font-size:2rem}.study-layout{padding:128px 14px 28px;gap:14px}.field-grid,.project-grid,.kpi-grid,.lead-fields,.work-priorities{grid-template-columns:1fr}.result-hero{grid-template-columns:1fr}.glass-panel{border-radius:20px}.light-panel,.black-panel{padding:20px}.saving-card strong{font-size:2.2rem}.panel-logo strong{font-size:1.7rem}.panel-logo em{font-size:1.3rem}}

/* Logo VELYS HABITAT */
.brand-with-logo{min-height:52px;text-decoration:none;color:inherit}.brand-logo-img{display:block;width:auto;height:54px;max-width:245px;object-fit:contain}.brand-fallback{display:none;align-items:center;gap:11px}.panel-logo-image{display:block;margin-bottom:28px}.panel-logo-image>img{display:block;width:auto;height:88px;max-width:100%;object-fit:contain}.panel-logo-fallback{display:none;align-items:center;gap:10px}.panel-logo-fallback strong{font-size:2.1rem;letter-spacing:-.08em}.panel-logo-fallback em{font-style:normal;color:#f3ad16;font-size:1.55rem;font-weight:950;letter-spacing:-.05em}
@media(max-width:760px){.brand-logo-img{height:48px;max-width:220px}.panel-logo-image>img{height:72px}.panel-logo-fallback strong{font-size:1.7rem}.panel-logo-fallback em{font-size:1.3rem}}


/* Suppression du bandeau supérieur blanc */
.topbar{display:none!important}
.screen{padding-top:0!important}
.map-canvas{inset:0!important}
.map-shade{inset:0!important}
.address-panel{margin:22px 0 22px 22px;min-height:calc(100vh - 44px)}
.screen-data,.screen-questions,.screen-result{padding-top:0!important}
@media(max-width:760px){
    .address-panel{margin:12px auto;min-height:auto}
}

/* Module prospection DPE VELYS */
.prospection-body{margin:0;min-height:100vh;background:#09140e;color:var(--ink)}
.prospection-page{position:relative;min-height:100vh;display:grid;grid-template-columns:390px 1fr;overflow:hidden;background:#09140e}
.prospection-sidebar{position:relative;z-index:10;margin:22px 0 22px 22px;max-height:calc(100vh - 44px);overflow:auto;padding:26px;background:rgba(255,255,255,.94)}
.prospection-logo{margin-bottom:14px}.prospection-logo>img{height:74px}.prospection-back{display:inline-flex;margin-bottom:14px;color:var(--green);font-weight:950}.prospection-sidebar h1{margin:8px 0 12px;color:var(--green-dark);font-size:clamp(1.55rem,2.2vw,2.25rem);line-height:1.08;letter-spacing:-.055em}.prospection-intro{margin:0 0 18px;color:#4d6258;line-height:1.5}.prospection-selected{margin-bottom:15px}.prospection-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.prospection-controls.single{grid-template-columns:1fr}.prospection-controls label{display:flex;flex-direction:column;gap:8px;color:#263b31;font-size:.82rem;font-weight:900}.prospection-controls select{height:48px;border:1px solid #cfded6;border-radius:14px;background:#fff;padding:0 12px;color:#1b2d24;font-weight:800}.prospection-filter-block{margin-top:14px;padding:14px;border:1px solid #dce8e1;border-radius:18px;background:#fbfdfc}.prospection-filter-block>strong{display:block;margin-bottom:10px;color:var(--green-dark);font-size:.9rem}.prospection-checks{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.prospection-checks label{display:flex;align-items:center;justify-content:center;gap:4px;min-height:36px;border:1px solid #dce8e1;border-radius:12px;background:#fff;color:#173d2d;font-weight:950;font-size:.82rem}.prospection-checks input{accent-color:var(--green)}.prospection-note{display:block;margin-top:14px;color:#66786f;line-height:1.4}.prospection-main{position:relative;min-height:100vh}.prospection-map{position:absolute!important;inset:0!important;z-index:1}.prospection-map-overlay{position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(9,20,14,.18),rgba(9,20,14,0) 42%,rgba(9,20,14,.22));pointer-events:none}.prospection-results{position:absolute;z-index:8;top:22px;right:22px;width:min(620px,calc(100vw - 440px));max-height:calc(100vh - 44px);overflow:auto;padding:22px;background:rgba(255,255,255,.95)}.prospection-results-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.prospection-results h2{margin:5px 0 0;color:var(--green-dark);font-size:1.35rem;letter-spacing:-.04em}.prospection-close{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#edf5f0;color:var(--green-dark);font-size:1.45rem;font-weight:950}.prospection-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:16px}.prospection-kpis article{padding:13px;border:1px solid #dce8e1;border-radius:16px;background:#fff}.prospection-kpis small{display:block;color:#65766f;font-weight:850;font-size:.72rem}.prospection-kpis strong{display:block;margin-top:6px;color:var(--green-dark);font-size:1.35rem;letter-spacing:-.04em}.prospection-distribution{margin-top:14px;padding:14px;border:1px solid #dce8e1;border-radius:18px;background:#fbfdfc}.prospection-distribution h3{margin:0 0 12px;color:var(--green-dark);font-size:1rem}.dpe-dist-row{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:9px;margin:6px 0}.dpe-dot{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;color:#fff;font-weight:950;font-size:.82rem}.dpe-dist-row div{height:11px;border-radius:999px;background:#edf3f0;overflow:hidden}.dpe-dist-row i{display:block;height:100%;border-radius:999px}.dpe-dist-row strong{text-align:right;color:#173d2d}.prospection-actions{display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:8px;margin:14px 0 8px}.prospection-actions button{min-height:42px;border:1px solid #cfe0d7;border-radius:13px;background:#fff;color:#173d2d;font-weight:950}.prospection-actions button:nth-child(2),.prospection-actions button:nth-child(3){background:#1f6e4a;color:#fff;border-color:#1f6e4a}.campaign-message{display:block;min-height:18px;color:#61726a;font-weight:850}.target-list{display:grid;gap:8px;margin-top:10px}.target-row{display:grid;grid-template-columns:92px 1fr 70px;gap:10px;align-items:center;padding:10px;border:1px solid #dce8e1;border-radius:16px;background:#fff}.target-check{display:flex;align-items:center;gap:7px;color:#173d2d;font-weight:950}.target-check input{accent-color:var(--green)}.target-check span{display:grid;place-items:center;min-width:54px;height:34px;border-radius:11px;background:#edf8f2;color:var(--green-dark);font-size:.82rem}.target-main strong{display:block;color:#162d22;font-size:.93rem}.target-main small{display:block;margin-top:4px;color:#65766f;font-size:.78rem}.target-row a{display:grid;place-items:center;min-height:34px;border-radius:11px;background:#f6b21a;color:#161206;font-weight:950;font-size:.78rem}.target-empty{padding:18px;border-radius:16px;background:#fff6df;color:#715218;font-weight:850}.prospection-home-marker{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;margin:-19px 0 0 -19px!important;border:4px solid #fff;border-radius:50%;background:#f6b21a;box-shadow:0 10px 30px rgba(0,0,0,.35);color:#111;font-size:18px}.prospection-dpe-marker{display:grid!important;place-items:center!important}.prospection-dpe-marker span{display:grid;place-items:center;width:28px;height:28px;border:3px solid #fff;border-radius:50%;box-shadow:0 8px 22px rgba(0,0,0,.32);color:#fff;font-weight:950;font-size:.82rem}.prospection-popup{font-family:Inter,sans-serif;min-width:210px}.prospection-popup strong{display:block;color:#173d2d}.prospection-popup span{display:block;margin-top:5px;color:#64776e;font-size:.82rem}.prospection-popup a{display:inline-flex;margin-top:8px;color:#1f6e4a;font-weight:950}.prospection-page .leaflet-control-zoom{margin-left:412px!important}
@media(max-width:1120px){.prospection-page{grid-template-columns:1fr}.prospection-sidebar{position:relative;width:auto;margin:12px;max-height:none}.prospection-main{min-height:70vh}.prospection-map{position:relative!important;height:70vh!important}.prospection-results{position:relative;top:auto;right:auto;width:auto;margin:12px;max-height:none}.prospection-page .leaflet-control-zoom{margin-left:10px!important}.prospection-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.prospection-controls,.prospection-kpis,.prospection-actions{grid-template-columns:1fr}.prospection-checks{grid-template-columns:repeat(4,1fr)}.target-row{grid-template-columns:1fr}.target-row a{width:max-content;padding:0 13px}.prospection-sidebar{padding:20px}.prospection-logo>img{height:62px}}
.prospection-entry-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:10px;border:1px solid #cfe4d8;border-radius:15px;background:#fff;color:#1f6e4a;font-weight:950;box-shadow:0 9px 20px rgba(31,110,74,.08)}
.prospection-entry-link:hover{background:#f1faf5}

.prospection-source-note{display:block;margin:8px 0 10px;color:#64748b;font-size:12px;line-height:1.35}
