/* ImmoPilot V62 — coherent, responsive product UI; loaded last by design. */
:root{--v62-ink:#18353a;--v62-teal:#087c71;--v62-soft:#eef6f2;--v62-line:#e2ebe6;--v62-muted:#627a79;--v62-shadow:0 18px 50px rgba(16,56,51,.08)}
body{background:#f8faf9!important;color:var(--v62-ink)!important;font-family:Inter,'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important}
button,a,input,select,summary{ -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #62b2a5!important;outline-offset:3px}
[hidden]{display:none!important}
.header{box-shadow:0 1px 0 rgba(31,78,70,.05)!important}
.header-inner{max-width:1510px!important;height:72px!important;padding:0 clamp(18px,3.5vw,55px)!important;gap:22px!important}
.header nav{gap:clamp(11px,1.5vw,24px)!important}
.header nav a{font-size:12px!important}
.header .wordmark{letter-spacing:-1px;font-size:24px}
.header-actions .btn{border-radius:12px;padding:13px 17px;font-size:12px}
.header-login{display:none!important}
.hero{min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;padding:0!important;background:#103c3d!important;overflow:hidden}
.hero-content{padding:70px max(6%,calc((100vw - 1490px)/2)) 78px 8%!important;max-width:800px;align-self:center}
.hero-pill{display:inline-flex!important;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14);font-size:10px;color:#c6eadf}
.hero h1{font-family:Manrope,system-ui,sans-serif;font-size:clamp(39px,4.25vw,67px)!important;line-height:1.09!important;letter-spacing:-.055em!important;margin:22px 0 17px!important}
.hero h1 em{color:#83e2c7!important}
.hero-content>p{font-size:15px!important;line-height:1.7!important;max-width:540px;color:#d3e2df!important}
.hero-actions{gap:12px;margin-top:23px!important}
.hero-actions .btn{min-height:50px;padding:14px 20px;border-radius:12px;white-space:normal;line-height:1.3}
.hero-actions .btn-outline-light{border-color:#77a9a1;background:rgba(255,255,255,.03)}
.hero-proof{display:flex!important;gap:18px!important;margin-top:36px!important;font-size:10px;color:#b8d7d1;letter-spacing:.02em}
.hero-visual{display:block!important;min-height:445px;opacity:1!important;overflow:hidden}
.hero-photo{background:linear-gradient(90deg,rgba(16,60,61,.38),transparent 45%),linear-gradient(0deg,rgba(10,44,44,.22),transparent 55%),url('https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=1300&q=80') center/cover!important}
.v62-hero-chip{position:absolute;left:28px;bottom:30px;padding:16px 20px;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-radius:17px;display:flex;flex-direction:column;gap:5px;max-width:290px;color:#173e3f;box-shadow:0 15px 45px rgba(6,41,43,.14)}
.v62-hero-chip span{font-size:9px;letter-spacing:.15em;color:var(--v62-teal);font-weight:850}
.v62-hero-chip strong{font-size:16px;letter-spacing:-.025em}
.v62-hero-chip small{color:#657e78;font-size:11px}
.search-panel{max-width:1400px!important;margin:-31px auto 0!important;padding:24px clamp(18px,3.1vw,38px) 19px!important;border:1px solid var(--v62-line)!important;border-radius:22px!important;box-shadow:var(--v62-shadow)!important;scroll-margin-top:86px;position:relative;z-index:9}
.search-heading{display:flex!important;align-items:end;justify-content:space-between;gap:20px!important;margin-bottom:18px!important}
.search-heading>div{min-width:0}
.search-heading h2{font-size:clamp(21px,2vw,29px)!important;margin:5px 0 0!important;line-height:1.2;letter-spacing:-.04em}
.search-heading p{color:var(--v62-muted);font-size:12px;line-height:1.5;margin:0 0 2px;max-width:260px}
.search-fields{display:grid!important;grid-template-columns:minmax(180px,1.45fr) minmax(145px,.9fr) minmax(140px,.75fr) minmax(155px,.75fr)!important;gap:12px!important;align-items:stretch!important}
.search-fields .field{min-height:76px!important;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:12px 14px!important;border:1px solid #dee9e4!important;border-radius:13px!important;background:#fbfdfc}
.search-fields .field-city{grid-column:auto!important}
.search-fields .field span{font-size:11px;font-weight:750;color:#43615e}
.search-fields .field input,.search-fields .field select{font-size:14px!important;line-height:1.2;height:25px!important;min-height:25px!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;color:#173e3f!important}
.search-fields input::placeholder{color:#8ba19c}
.search-fields .search-button{grid-column:auto!important;min-width:0!important;min-height:76px!important;padding:14px 16px!important;border-radius:13px!important;background:#087e72!important;box-shadow:0 9px 20px rgba(8,126,114,.14);font-size:13px;line-height:1.35;white-space:normal!important}
.search-fields .search-button:hover{background:#066a60!important}
.v62-advanced-search{grid-column:1/-1;border-top:1px solid #e8efeb;margin-top:3px;padding-top:9px}
.v62-advanced-search>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:9px;width:max-content;max-width:100%;padding:8px 0;color:#0a7165;font-size:12px;font-weight:800;cursor:pointer}
.v62-advanced-search>summary::-webkit-details-marker{display:none}
.v62-advanced-search[open]>summary span{transform:rotate(180deg)}
.v62-advanced-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:10px;padding-bottom:6px}
.v62-advanced-grid .field{min-height:71px!important}
.profile-search-banner{border-radius:12px;background:#edf7f3!important;margin-top:13px!important;padding:12px 15px!important;justify-content:space-between;font-size:12px;color:#205e54}
.profile-search-banner button{background:white;border-color:#bcd9ce;color:#0d685c}
.search-footnote{margin-top:14px!important;font-size:11px!important;color:#677d79!important}
.search-footnote .text-button{font-size:12px!important}
/* Show one simple route from search to results; older marketing detours are preserved after explorer, not between steps */
.v10-section{display:none!important}
#explorer{max-width:1500px!important;padding:48px clamp(18px,3.6vw,56px) 54px!important;scroll-margin-top:90px}
#explorer>.section-head{display:none!important}
.v12-explore-header{background:white!important;border-radius:18px!important;border:1px solid var(--v62-line)!important;padding:16px 21px!important;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px!important}
.v12-explore-header strong{font-size:19px!important;color:#143c3c;letter-spacing:-.025em}
.v12-explore-header span{font-size:12px;color:var(--v62-muted)}
.v12-view-switch{display:flex;align-items:center;gap:3px!important;padding:4px;background:#eff5f2;border-radius:12px}
.v12-view-switch button{border:0!important;border-radius:9px!important;padding:10px 14px!important;min-height:40px;background:transparent;color:#56736b;font-size:12px!important;font-weight:700;white-space:nowrap}
.v12-view-switch button[aria-pressed=true]{background:white!important;color:#0a645b!important;box-shadow:0 2px 8px rgba(14,70,61,.09)}
#explorer .explore-layout:not(.v12-list-only):not(.v12-map-only){display:grid!important;grid-template-columns:minmax(0,1.04fr) minmax(0,1.04fr)!important;gap:22px!important;align-items:start}
#explorer .map-column{min-width:0;top:84px;position:sticky}
#explorer .results-column{min-width:0;width:100%;background:transparent!important;border:0!important;box-shadow:none!important}
#explorer .map-wrap{height:min(73vh,660px)!important;min-height:480px!important;overflow:hidden!important;border-radius:21px!important;box-shadow:0 12px 34px rgba(24,67,62,.07)!important;background:#dbece5!important}
#explorer .map-wrap #france-map{height:100%;min-height:0}
#explorer .map-legend{padding:11px 5px;color:#68837a;font-size:10px;gap:12px;flex-wrap:wrap}
#explorer .results-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:10px 0 13px}
.v62-results-eyebrow{font-size:9px!important;letter-spacing:.14em;font-weight:800;color:#79908a}
#explorer .results-top strong{font-size:21px!important;letter-spacing:-.045em;color:#153e3b}
#explorer .results-top span:not(.v62-results-eyebrow){font-size:11px}
#explorer .results-top select{border:1px solid #dfeae4!important;border-radius:11px;padding:10px 12px;font-size:12px;background:white}
#explorer .listing-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;align-items:stretch}
#explorer .property-card{border-radius:18px!important;border:1px solid #e2ebe5!important;background:white;overflow:hidden;min-width:0;transition:box-shadow .18s ease,border-color .18s ease!important}
#explorer .property-card:hover{box-shadow:0 12px 30px rgba(15,60,48,.09)!important;border-color:#bddbcf!important}
#explorer .property-card.map-selected{border:2px solid #149485!important;box-shadow:0 10px 33px rgba(20,148,133,.13)!important}
#explorer .property-photo{height:155px!important;min-height:0!important}
#explorer .property-body{padding:15px!important;gap:0}
#explorer .property-body h3{font-size:13px!important;line-height:1.45;margin:7px 0 9px!important;min-height:0;font-weight:750}
#explorer .property-specs{font-size:11px;margin-bottom:10px}
#explorer .property-city{font-size:9px;letter-spacing:.07em}
#explorer .property-price{font-size:20px}
#explorer .property-yield{font-size:10px;padding:6px 8px;border-radius:8px;max-width:100%}
#explorer .property-bottom{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important;padding-top:10px!important;margin-top:auto!important}
#explorer .property-bottom>small{display:block;font-size:10px!important;color:#71857f;margin-bottom:0}
#explorer .property-bottom>a.v62-card-primary{min-height:41px;padding:10px 12px!important;border-radius:10px!important;font-size:12px!important;letter-spacing:.005em}
#explorer .v26-detail{width:100%!important;max-width:100%;border-radius:11px!important;padding:0!important;margin:0!important}
#explorer .v26-detail>summary{min-height:38px!important;padding:10px 12px!important;font-size:11px!important;color:#446a62}
#explorer .v26-detail[open]{padding:0 10px 10px!important}
#explorer .v26-detail>a,#explorer .v26-detail>button{font-size:11px!important}
#explorer .v12-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
#explorer .v12-metric{min-width:0;padding:12px!important;border-radius:13px!important}
#explorer .v12-metric strong{font-size:21px!important}
/* technical reports and rare actions are available but not in the primary flow */
.v62-toolbox{margin:0 0 17px;border:1px solid var(--v62-line);border-radius:14px;background:#fff;overflow:hidden}
.v62-toolbox>summary{display:flex;align-items:center;gap:8px;padding:12px 17px;list-style:none;color:#45645d;font-size:12px;font-weight:750;cursor:pointer}
.v62-toolbox>summary::before{content:'⚙';font-size:14px;color:#278678}
.v62-toolbox>summary::after{content:'⌄';margin-left:auto;font-size:16px}
.v62-toolbox[open]>summary::after{content:'⌃'}
.v62-toolbox>summary::-webkit-details-marker{display:none}
.v62-toolbox-content{padding:14px 18px 20px;border-top:1px solid var(--v62-line);display:grid;gap:14px}
.v62-toolbox .v60-feed{margin:0!important;width:100%}
.v62-toolbox .v26-toolbar{margin:0!important}
.v62-toolbox .v57-monitor{margin:0!important}
.v62-result-tools{margin:5px 0 12px;padding:0;background:white;border:1px solid var(--v62-line);border-radius:12px}
.v62-result-tools summary{list-style:none;cursor:pointer;padding:11px 13px;font-size:11px;color:#57766a;font-weight:750}
.v62-result-tools summary::-webkit-details-marker{display:none}
.v62-result-tools[open] summary{border-bottom:1px solid #eaf1ed}
.v62-result-actions{display:flex;flex-wrap:wrap;gap:9px;padding:11px}
.v62-result-actions .secondary-btn{flex:1;min-width:130px}
.v62-figures{padding:0;margin:7px 0 14px}
.v62-figures summary{font-size:11px;color:#6d847c;font-weight:750;cursor:pointer;padding:8px 0}
.v62-figures .v12-metrics{margin:5px 0}
/* map: details without a wall of controls */
#explorer .ip-map-eyebrow{left:14px;top:14px;padding:11px 14px!important;max-width:calc(70% - 16px)!important;border-radius:13px;gap:3px}
#explorer .ip-map-kicker{font-size:8px}
#explorer .ip-map-eyebrow strong{font-size:16px!important}
#explorer .ip-map-eyebrow small{font-size:10px}
#explorer .map-overlay{right:12px!important;top:14px!important;max-width:37%;font-size:9px!important;line-height:1.35;box-shadow:none!important;border-radius:12px!important;padding:10px 11px!important}
#explorer .ip-map-investor-tools{position:absolute;left:14px!important;right:auto!important;top:99px!important;display:inline-flex!important;flex-wrap:nowrap!important;gap:4px!important;width:auto!important;max-width:calc(100% - 28px)!important;padding:4px!important;border-radius:12px!important;box-shadow:0 4px 16px #113b3819}
#explorer .ip-map-investor-tools button{font-size:11px!important;min-height:36px;padding:8px 12px!important;white-space:nowrap!important}
#explorer .ip-map-investor-tools .ip-investor-label{display:none!important}
.ip-map-extra{position:absolute;top:102px;right:14px;z-index:8;max-width:calc(100% - 30px)}
.ip-map-extra>summary{list-style:none;display:flex;align-items:center;gap:7px;padding:10px 12px;min-height:37px;border-radius:11px;border:1px solid #e5ece7;background:rgba(255,255,255,.97);color:#23645c;box-shadow:0 5px 17px rgba(11,62,51,.10);font-size:11px;font-weight:800;cursor:pointer}
.ip-map-extra>summary::-webkit-details-marker{display:none}
.ip-map-extra[open]>summary{border-radius:11px 11px 0 0}
.ip-map-extra-actions{min-width:190px;max-width:245px;display:grid;gap:5px;padding:8px;background:rgba(255,255,255,.98);border:1px solid #e3eee8;box-shadow:0 12px 28px rgba(12,58,46,.14);border-radius:0 0 12px 12px}
.ip-map-extra-actions button{border:0;border-radius:8px;padding:10px 12px;text-align:left;background:#f5faf7;color:#185b51;font-size:11px;font-weight:750;cursor:pointer}
.ip-map-extra-actions button:hover{background:#e9f6ef}
#explorer .ip-map-controls{bottom:18px;right:13px;z-index:8;gap:5px}
#explorer .ip-map-controls button{width:37px;height:37px;border-radius:10px;font-size:18px}
#explorer .ip-yield-legend{left:14px;bottom:52px;z-index:7;white-space:normal}
#explorer .ip-map-credit{bottom:14px;left:14px;max-width:calc(100% - 80px);z-index:3;font-size:8px;white-space:normal}
#explorer .ip-map-detail{position:absolute;z-index:11;left:13px;bottom:12px;right:auto;width:min(385px,calc(100% - 76px));max-width:calc(100% - 76px);max-height:56%;border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 16px 42px rgba(10,54,46,.20)!important;padding:17px 17px 15px;overflow:auto;box-sizing:border-box}
#explorer .ip-map-detail[hidden]{display:none!important}
#explorer .ip-detail-head strong{font-size:17px!important;line-height:1.25;white-space:normal}
#explorer .ip-detail-copy{font-size:11px;line-height:1.45}
#explorer .ip-detail-item-top{align-items:center}
#explorer .ip-detail-item-top strong{font-size:12px!important;line-height:1.4}
#explorer .ip-detail-metrics span{font-size:10px}
.ip-detail-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:1px}
.ip-detail-actions button{flex:1 1 132px;cursor:pointer;background:#eef6f2;border:1px solid #d8e9e0;color:#0d6c60;font-size:11px;font-weight:750;border-radius:10px;min-height:38px;padding:9px 12px}
.ip-detail-actions .ip-detail-reveal{background:#087e72;border-color:#087e72;color:#fff}
.ip-map-shell:has(.ip-map-detail:not([hidden])) .ip-map-credit{display:none}
.ip-street-overlay{position:absolute;z-index:25;inset:0;background:#fff;display:flex;flex-direction:column;overflow:hidden}
.ip-street-header{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #e5eee9}
.ip-street-header>div{display:flex;flex-direction:column;gap:4px}
.ip-street-header strong{font-size:14px;color:#173e3a}
.ip-street-header small{font-size:10px;color:#74857f}
.ip-street-back{flex:0 0 auto;border:1px solid #d8e8df;border-radius:10px;background:white;color:#12665a;font-size:11px;font-weight:800;padding:11px 12px;cursor:pointer}
.ip-street-frame{border:0;width:100%;min-height:160px;flex:1;background:#e4ede9}
.ip-street-footer{padding:12px 17px;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:10px;color:#657e77;line-height:1.4}
.ip-street-footer a{color:#096b5e;font-weight:800}
#explorer .ip-map-shell .ip-sector-panel{top:148px;right:13px;z-index:15;max-height:calc(100% - 164px);width:min(355px,calc(100% - 26px))}
.explore-disclaimer{font-size:10px;color:#708880;line-height:1.6}
/* Less visual competition under the explorer */
.premium-banner,.benefits,.cities,.renovation-section{filter:saturate(.86)}
@media(max-width:1350px){
 #explorer .explore-layout:not(.v12-list-only):not(.v12-map-only){grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
 #explorer .listing-grid{grid-template-columns:1fr!important}
 #explorer .property-photo{height:175px!important}
}
@media(max-width:1120px){
 .header-inner{gap:10px!important}
 .hero-content{padding:55px 6%!important}
 .search-panel{margin:-20px 3% 0!important}
 #explorer .explore-layout:not(.v12-list-only):not(.v12-map-only){grid-template-columns:1fr!important}
 #explorer .map-column{position:relative!important;top:auto!important}
 #explorer .map-wrap{height:510px!important;min-height:0!important}
 #explorer .listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #explorer .property-photo{height:175px!important}
}
@media(max-width:850px){
 .hero{grid-template-columns:1fr!important}
 .hero-content{padding:49px 6% 58px!important;max-width:none}
 .hero h1{font-size:clamp(35px,7vw,49px)!important}
 .hero-visual{display:none!important}
 .search-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .search-fields .field-city{grid-column:span 2!important}
 .search-fields .search-button{grid-column:span 2!important;min-height:55px!important}
 .v62-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v12-explore-header{flex-direction:column;align-items:stretch}
 .v12-view-switch{justify-content:space-between}
 .v12-view-switch button{flex:1}
 .ip-street-header{align-items:start}
}
@media(max-width:600px){
 .header-inner{height:64px!important}
 .hero-content{padding:37px 22px 48px!important}
 .hero h1{font-size:37px!important}
 .hero-content>p{font-size:13px!important;line-height:1.6}
 .hero-proof{display:none!important}
 .hero-actions .btn{font-size:12px;flex:1 1 160px}
 .search-panel{margin:-12px 12px 0!important;padding:20px 17px 15px!important;border-radius:19px!important}
 .search-heading{align-items:start;flex-direction:column;gap:7px!important}
 .search-heading h2{font-size:22px!important}
 .search-heading p{font-size:11px;max-width:none}
 .search-fields{grid-template-columns:1fr!important;gap:9px!important}
 .search-fields .field-city{grid-column:auto!important}
 .search-fields .field{min-height:64px!important;padding:10px 12px!important}
 .search-fields .search-button{grid-column:auto!important;min-height:48px!important}
 .v62-advanced-grid{grid-template-columns:1fr}
 .profile-search-banner{align-items:stretch;flex-direction:column}
 .search-footnote{flex-direction:column;align-items:flex-start}
 #explorer{padding:33px 12px 40px!important}
 .v12-explore-header{padding:13px 13px!important;border-radius:14px!important}
 .v12-explore-header strong{font-size:16px!important}
 .v12-view-switch button{font-size:11px!important;padding:9px 5px!important}
 #explorer .map-wrap{height:445px!important;min-height:0!important;border-radius:16px!important}
 #explorer .listing-grid{grid-template-columns:1fr!important;gap:12px!important}
 #explorer .ip-map-eyebrow{left:9px;top:9px;max-width:56%!important;padding:9px!important}
 #explorer .ip-map-eyebrow strong{font-size:13px!important}
 #explorer .ip-map-eyebrow small{display:none}
 #explorer .map-overlay{right:8px!important;top:9px!important;max-width:40%;padding:8px!important;font-size:8px!important}
 #explorer .ip-map-investor-tools{left:9px!important;right:auto!important;top:76px!important;max-width:55%!important}
 #explorer .ip-map-investor-tools button{font-size:10px!important;padding:7px 9px!important;min-height:34px}
 .ip-map-extra{top:76px;right:9px}
 .ip-map-extra>summary{min-height:34px;font-size:10px;padding:8px 9px}
 #explorer .ip-map-detail{left:7px;right:7px;bottom:7px;width:auto;max-width:none;max-height:56%;padding:13px}
 #explorer .ip-detail-head strong{font-size:15px!important}
 .ip-detail-actions button{font-size:10px;min-height:35px}
 #explorer .ip-map-shell .ip-sector-panel{top:120px;right:8px;max-height:calc(100% - 132px)}
 #explorer .ip-map-credit{max-width:calc(100% - 85px)}
 .v62-toolbox-content{padding:12px}
 .v62-result-actions{flex-direction:column}
 #explorer .v12-list-only #listing-grid{grid-template-columns:1fr!important}
 .v62-figures .v12-metrics{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Explicit positioning: resilient even when legacy styles are disabled. */
#explorer .ip-map-shell .ip-map-controls{position:absolute!important;left:auto!important;right:13px!important;bottom:18px!important;width:auto!important}
#explorer .ip-map-shell .ip-map-credit{position:absolute!important;pointer-events:none}
