@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202427;--muted:#747b80;--line:#e8e9e8;--bg:#fff;--soft:#f6f7f7;--accent:#77848b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:#52616a}img{max-width:100%;height:auto}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;line-height:1.2}h1{font-size:clamp(2.7rem,5vw,5rem)}h2{font-size:clamp(1.9rem,3vw,2.8rem)}h3{font-size:1.2rem}.container{width:min(1180px,calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;z-index:999;background:white;padding:10px}.site-header{background:white;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Manrope,sans-serif;font-size:1.45rem;font-weight:800;letter-spacing:-.06em}.brand-dot{color:#98a4aa}.nav-list{display:flex;gap:32px;align-items:center;list-style:none;margin:0;padding:0;font-size:.9rem;font-weight:600}.menu-toggle{display:none;background:none;border:0;font-size:1.6rem;cursor:pointer}.hero{padding:65px 0 85px}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}.hero-copy{padding:32px 0}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.19em;color:#879096}.hero h1{margin:23px 0}.hero-copy p{max-width:430px;color:var(--muted);font-size:1.1rem}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:34px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:15px 24px;font-weight:700;font-size:.88rem;transition:.2s;border:1px solid var(--ink)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#414b51;color:#fff}.btn-outline{background:#fff}.btn-block{display:flex;margin:12px 0}.text-link{font-size:.88rem;font-weight:700}.hero-visual{min-height:530px;background:#e5e9e9 url('../images/hero-default.svg') center/cover no-repeat;display:flex;align-items:flex-end;justify-content:flex-end;padding:22px}.hero-visual-label{background:white;padding:15px 20px;font-size:.78rem;font-weight:700}.section{padding:85px 0}.section-soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-head h2{margin:12px 0 0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.category-tile{min-height:220px;background:#f6f7f7;padding:30px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:background .2s}.category-tile:hover{background:#edf0f0}.category-number{font-size:.75rem;color:#9aa2a6}.category-tile h3{margin:0 0 8px;font-size:1.5rem}.category-tile p{margin:0;color:var(--muted);font-size:.88rem}.category-arrow{position:absolute;right:28px;top:25px;font-size:1.2rem}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.property-card{min-width:0;background:white}.property-image{height:245px;display:block;position:relative;overflow:hidden;background:#e5e9e9}.property-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.property-image:hover img{transform:scale(1.04)}.image-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:#7b858a}.property-badge{position:absolute;top:15px;left:15px;background:white;color:#222;padding:6px 12px;font-size:.72rem;font-weight:700}.property-body{padding:22px 0}.property-location,.muted{color:var(--muted)}.property-location{font-size:.83rem;margin:0}.property-body h3{margin:7px 0 13px;font-size:1.14rem}.property-meta{display:flex;flex-wrap:wrap;gap:13px;color:var(--muted);font-size:.8rem}.property-price{display:block;margin-top:16px;font-family:Manrope,sans-serif;font-size:1.17rem}.empty-state{grid-column:1/-1;padding:32px;background:white;color:var(--muted)}.cta{display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid var(--line);padding-top:50px}.cta h2{max-width:700px;margin:10px 0}.cta p{color:var(--muted)}.site-footer{background:#202427;color:#fff;padding:65px 0 20px}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-inner>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-inner strong{margin-bottom:12px}.footer-inner p,.footer-inner a:not(.brand){color:#b9c0c3;font-size:.9rem}.copyright{border-top:1px solid #45494b;margin-top:50px;padding-top:20px;color:#aeb7ba;font-size:.8rem}.archive-top{min-height:60vh}.archive-top h1{margin:12px 0 40px}.archive-description{max-width:700px;margin-bottom:30px;color:var(--muted)}.pagination{margin-top:40px}.pagination .nav-links{display:flex;gap:14px;flex-wrap:wrap}.pagination .page-numbers{padding:8px 13px;border:1px solid var(--line)}.pagination .current{background:var(--ink);color:white}.single-property{padding:40px 0 100px}.breadcrumbs{color:var(--muted);font-size:.82rem;margin-bottom:34px}.single-title{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.single-title h1{font-size:clamp(2rem,4vw,3.5rem);margin:12px 0}.single-price{font:800 1.7rem Manrope,sans-serif;white-space:nowrap}.single-cover{max-height:600px;overflow:hidden;background:var(--soft)}.single-cover img{display:block;width:100%;height:100%;max-height:600px;object-fit:cover}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}.gallery-grid img{width:100%;height:150px;object-fit:cover;display:block}.property-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:80px;margin-top:60px}.entry-content{overflow-wrap:anywhere}.entry-content img{height:auto}.detail-sidebar{background:var(--soft);padding:30px;align-self:start}.detail-sidebar h3{margin:0 0 20px}.detail-sidebar dl{margin:0 0 35px}.detail-sidebar dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #dce0e0;padding:12px 0;font-size:.9rem}.detail-sidebar dt{color:var(--muted)}.detail-sidebar dd{margin:0;font-weight:700;text-align:right}.phone-link{display:block;margin-top:20px;text-align:center}.page-container{max-width:800px}.page-container h1{margin:15px 0 40px}@media(max-width:900px){.hero-grid{gap:28px}.hero-visual{min-height:420px}.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-detail-grid{gap:30px}}@media(max-width:680px){.container{width:min(100% - 32px,1180px)}.header-inner{min-height:70px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 16px;border-bottom:1px solid var(--line);box-shadow:0 12px 22px #0000000d}.site-nav.is-open{display:block}.nav-list{flex-direction:column;align-items:stretch;gap:16px}.hero{padding:30px 0 55px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:10px 0}.hero h1{font-size:clamp(2.5rem,10vw,3.8rem)}.hero-visual{min-height:340px}.section{padding:55px 0}.section-head{align-items:start}.category-grid,.property-grid{grid-template-columns:1fr}.category-tile{min-height:170px}.property-image{height:265px}.cta,.single-title{flex-direction:column;align-items:flex-start}.footer-inner{grid-template-columns:1fr 1fr}.footer-inner>div:first-child{grid-column:1/-1}.property-detail-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid img{height:120px}.single-price{white-space:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Isabel 1.4.2 - menu annidati */
.site-header,.header-inner,.site-nav{overflow:visible}.site-header{z-index:100}.nav-list li{position:relative}.nav-list .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:210px;list-style:none;margin:0;padding:8px;background:#fff;box-shadow:0 14px 35px #0002;border:1px solid var(--line);z-index:120}.nav-list .sub-menu .sub-menu{top:0;left:100%}.nav-list .sub-menu a{display:block;padding:9px 12px;white-space:nowrap}.nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu,.nav-list li.im-expanded>.sub-menu{display:block}.im-submenu-toggle{border:0;background:transparent;cursor:pointer;padding:6px 9px;font-size:1rem;color:inherit}.im-contact-number{font-weight:800;font-size:1.4rem;overflow-wrap:anywhere}.im-contact-hint{font-size:.85rem;color:var(--muted)}
/* Lightbox senza dipendenze */
[data-im-lightbox]{cursor:zoom-in}.im-lightbox[hidden]{display:none!important}.im-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(12,15,18,.97);display:flex;align-items:center;justify-content:center;color:#fff}.im-lightbox img{max-width:calc(100vw - 120px);max-height:calc(100vh - 120px);object-fit:contain;touch-action:pan-x pan-y}.im-lb-toolbar{position:absolute;top:15px;left:15px;right:15px;display:flex;align-items:center;gap:12px}.im-lb-counter{margin-right:auto}.im-lb-btn{background:#ffffff22;border:1px solid #ffffff55;color:white;padding:9px 14px;cursor:pointer;border-radius:5px;font:inherit}.im-lb-prev,.im-lb-next{position:absolute;top:50%;transform:translateY(-50%)}.im-lb-prev{left:12px}.im-lb-next{right:12px}.im-lb-image.is-zoomed{max-width:none;max-height:none;width:auto;height:auto;transform:scale(1.6);cursor:zoom-out}.im-lb-stage{overflow:auto;max-width:100vw;max-height:100vh;display:flex;align-items:center;justify-content:center}.im-lb-caption{position:absolute;bottom:12px;left:12px;right:12px;text-align:center;font-size:.85rem}
@media(max-width:680px){.nav-list .sub-menu,.nav-list .sub-menu .sub-menu{position:static;box-shadow:none;border:0;border-left:2px solid var(--line);margin:4px 0 4px 14px;padding-left:8px;min-width:0}.nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu{display:none}.nav-list li.im-expanded>.sub-menu{display:block}.nav-list .sub-menu a{white-space:normal}.im-lightbox img{max-width:calc(100vw - 35px);max-height:calc(100vh - 130px)}.im-lb-btn{padding:8px 10px}}

/* Isabel WP RE 1.4.3: spaziatura reale del contenuto delle card */
.property-card .property-body { padding: 22px 10px !important; box-sizing: border-box; }
.property-card .property-body > :first-child { margin-top: 0; }
/* Logo nell'intestazione e nel footer: proporzioni originali */
.im-brand { display: inline-flex; align-items: center; flex: 0 1 auto; max-width: 245px; }
.im-brand-logo { display:block; width:auto; height:auto; max-height:70px; max-width:220px; object-fit:contain; }
.site-footer .im-brand-logo-footer { max-height:78px; max-width:220px; }
@media(max-width:680px) { .im-brand-logo { max-width:165px; max-height:58px; } .site-footer .im-brand-logo-footer { max-width:190px; } }

/* Branding v1.4.4: ogni logo conserva i propri colori e proporzioni. */
.im-brand {display:inline-flex;align-items:center;max-width:100%;min-width:0;}
.im-brand-logo {display:block;width:auto;height:auto;max-width:min(240px, 100%);max-height:76px;object-fit:contain;}
.im-brand-text {font-weight:800;letter-spacing:-.035em;overflow-wrap:anywhere;}
.site-footer .im-brand-text {color:#fff;}
.site-footer .im-brand-logo-footer {filter:none;max-width:240px;max-height:88px;}
@media(max-width:680px){.im-brand-logo {max-width:170px;max-height:58px;}}
