:root{--navy:#122e61;--deep:#101d37;--blue:#174b99;--sky:#e9f0f8;--ivory:#faf9f6;--muted:#697486;--line:#e1e5ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--deep);background:#fff;line-height:1.65}.shell{max-width:1180px;margin:auto;padding:0 28px}.topbar{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e7e9ee}.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--navy);font-weight:700;font-size:19px;white-space:nowrap}.brand small{display:block;font-size:9px;letter-spacing:2.8px;line-height:1}.brand-dot{width:37px;height:37px;display:grid;place-items:center;background:var(--navy);color:white;border-radius:9px;font-size:23px;font-family:Georgia,serif}.nav nav{display:flex;gap:26px}.nav nav a,.nav-right a{color:#344159;text-decoration:none;font-size:13px;font-weight:600}.nav a:hover{color:#1b64b0}.nav-right{display:flex;align-items:center;gap:14px}#language{border:1px solid var(--line);padding:8px;border-radius:7px;background:white;color:var(--navy);font-weight:700}.hero{background:linear-gradient(120deg,#f5f8fc 0%,#fff 65%)}.hero-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-top:86px;padding-bottom:86px}.eyebrow,.kicker{color:#3269a3;font-weight:700;font-size:11px;letter-spacing:2.4px}.hero h1,h2{font-family:Georgia,serif;font-weight:500;line-height:1.2;letter-spacing:-1.3px}.hero h1{font-size:clamp(40px,4.7vw,65px);margin:20px 0}.hero p{font-size:17px;color:#576375;max-width:510px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.btn{display:inline-block;padding:14px 20px;border-radius:5px;text-decoration:none;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--navy);color:white}.outline{border:1px solid #aebed5;color:var(--navy)}.mini-note{display:flex;gap:12px;align-items:center;color:#738095;font-size:12px}.line{width:25px;height:1px;background:#8196b6}.hero-image{position:relative;background:white;padding:14px;box-shadow:0 25px 60px rgba(12,44,93,.12);border:1px solid #ebedf1;border-radius:5px;transform:rotate(1deg)}.hero-image img{width:100%;height:auto;display:block}.image-caption{position:absolute;right:14px;bottom:-31px;color:#6a7890;font-size:11px}.areas{background:#102955;color:white;text-align:center;letter-spacing:4px;font-size:12px;font-weight:600;padding:18px 0}.areas b{color:#7f9cc3;padding:0 13px}.section{padding-top:105px;padding-bottom:105px}.about{display:grid;grid-template-columns:1fr 1fr;gap:95px}.about h2,.section h2,.contact h2{font-size:clamp(32px,3.2vw,45px);margin:14px 0 28px}.about p{font-size:17px;margin:10px 0 24px}.muted{color:#677287}.shade{background:var(--ivory)}.cards{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.service-card{background:white;padding:42px;border:1px solid #ececf0;box-shadow:0 12px 30px rgba(20,38,65,.035)}.card-index{font-size:12px;letter-spacing:2px;color:#8390a2}.symbol{font-family:Georgia,serif;font-size:55px;line-height:1;color:#2f619f;margin:15px 0}.service-card h3{font-family:Georgia,serif;font-size:26px;font-weight:500}.service-card p{color:#697486}.service-card ul{padding-left:20px;color:#45566e;margin:26px 0 30px}.service-card li{margin:7px 0}.text-link{font-weight:700;text-decoration:none;color:#154c99;border-bottom:1px solid #9bb3d1;padding-bottom:4px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.tag{background:#eef3fa;color:#3566a0;border-radius:24px;padding:8px 14px;font-size:12px;font-weight:600}.listing-box{display:grid;grid-template-columns:42% 1fr;gap:48px;align-items:center;background:#f5f7fa;padding:28px;margin-top:20px}.listing-art{min-height:260px;display:grid;place-items:center;background:linear-gradient(140deg,#dce6f2,#b2c9e1);color:#174781}.outline-house{font-size:160px;line-height:1}.listing-box h3{font-family:Georgia,serif;font-weight:500;font-size:28px}.listing-box p{color:#627085}.listing-box .btn{margin-top:15px}.disclaimer{font-size:12px;color:#87909e;margin-top:16px}.contact{background:#122e61;color:#fff;padding:85px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact h2{color:white}.contact p{color:#d0dbef}.light{color:#bed4f3}.white{background:white;color:#122e61;margin-top:18px}.contact-card{background:white;color:#152a48;padding:37px;border-radius:4px}.contact-card h3{font-family:Georgia,serif;font-size:26px;font-weight:500;margin:0 0 22px}.contact-item{padding:15px 0;border-bottom:1px solid #e5eaf0}.contact-item small{display:block;color:#77869b;text-transform:uppercase;letter-spacing:1px;font-size:10px}.contact-item a{color:#173d7c;text-decoration:none;font-weight:700}.whatsapp{background:#eaf7f0;color:#187c51;display:block;text-align:center;margin-top:24px}footer{background:#0c1e3c;color:#bdcce2}.footer{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.footer a{color:#d5e1f0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:950px){.nav nav{gap:12px}.nav-right .phone-top{display:none}.hero-layout{gap:26px}.contact-grid{gap:45px}}@media(max-width:720px){.shell{padding:0 19px}.nav{height:70px}.nav nav{display:none}.hero-layout,.about,.cards,.listing-box,.contact-grid{grid-template-columns:1fr}.hero-layout{padding-top:55px;padding-bottom:75px;gap:40px}.hero h1{font-size:43px}.hero-image{max-width:500px}.areas{letter-spacing:1px;font-size:11px}.areas b{padding:0 3px}.section{padding-top:65px;padding-bottom:65px}.about{gap:4px}.service-card{padding:28px}.section-head{align-items:flex-start;flex-direction:column}.listing-box{gap:20px}.listing-art{min-height:180px}.contact{padding:65px 0}.contact-grid{gap:35px}.footer{padding-top:20px;padding-bottom:20px;display:block}.footer span{display:block;margin-bottom:10px}}

.filterbar{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 28px}.filter{background:white;border:1px solid #cbd6e6;color:#294974;padding:10px 19px;border-radius:30px;cursor:pointer;font-weight:700}.filter.active{color:#fff;background:#122e61;border-color:#122e61}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.property{border:1px solid #e3e8ef;background:white;display:flex;flex-direction:column;overflow:hidden;border-radius:7px;box-shadow:0 8px 20px rgba(12,29,62,.04)}.property-cover{height:134px;background:linear-gradient(135deg,#dce8f2,#b8cce0);display:flex;justify-content:space-between;align-items:end;padding:16px;color:#174478}.property-cover b{font-size:12px;background:#fff;padding:6px 10px;border-radius:16px}.property-cover span{font-size:48px;opacity:.65}.property-body{padding:23px;flex:1;display:flex;flex-direction:column}.property-location{font-size:11px;letter-spacing:1px;color:#61758f;text-transform:uppercase;font-weight:700}.property h3{font:normal 23px/1.2 Georgia,serif;margin:11px 0 19px}.property-price{font-size:19px;font-weight:700;color:#122e61;margin-top:auto}.property-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:20px}.property-actions a{font-size:12px;font-weight:700;color:#1b548e;text-decoration:none;border-bottom:1px solid #8aaccd}.catalogue-contact{margin-top:30px;background:#f4f7fb;padding:25px}.catalogue-contact p{margin:0 0 12px;color:#566b83}@media(max-width:960px){.property-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.property-grid{grid-template-columns:1fr}.property-cover{height:110px}}

.enquiries{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.enquiry{background:white;border:1px solid #dbe3ec;border-radius:18px;padding:25px;display:flex;flex-direction:column;gap:14px}.enquiry h3{margin:0 0 8px}.enquiry label{display:flex;flex-direction:column;font-size:14px;gap:6px;font-weight:600}.enquiry input,.enquiry select,.enquiry textarea{width:100%;border:1px solid #b8c4d2;border-radius:8px;padding:11px;font:inherit;background:white;color:#172c46}.enquiry input:focus,.enquiry select:focus,.enquiry textarea:focus{outline:2px solid #377caa;outline-offset:1px}.enquiry button{cursor:pointer;border:none}.privacy-note{font-size:13px;opacity:.8;margin-top:15px}@media(max-width:760px){.enquiries{grid-template-columns:1fr}}

/* Fotografie degli annunci della vetrina pubblica: collegamenti esterni, soggetti a disponibilita del portale. */
.property-cover{height:205px;position:relative;padding:0;align-items:flex-start;background:linear-gradient(135deg,#c4d2e1,#e2eaf2)}.property-cover img.property-photo{display:block;object-fit:cover;width:100%;height:100%}.property-cover b{position:absolute;left:13px;top:13px;z-index:1;box-shadow:0 1px 8px #0002}.property-cover:has(img[style*="display: none"])::after{content:"Foto disponibile nella scheda dell’annuncio";position:absolute;inset:40% 10%;text-align:center;font-size:14px;font-weight:700;color:#42556d}
@media(max-width:640px){.property-cover{height:215px}}

/* V4: atmosfera più calda, senza modificare il marchio originale */
.hero{background:radial-gradient(circle at 82% 18%,rgba(247,218,163,.26),transparent 38%),linear-gradient(125deg,#fff7ec 0%,#fffaf4 49%,#f0f5fc 100%)}
.hero-layout{padding-top:96px;padding-bottom:96px}
.hero h1{color:#17325e;letter-spacing:-1.6px}
.hero p{color:#525c68;font-size:18px}
.hero .eyebrow{color:#9d6136}
.hero-image{border-radius:18px;transform:none;box-shadow:0 30px 65px rgba(84,64,47,.13);border:5px solid #fff}
.hero-image img{border-radius:9px}
.primary{background:#16467f;border-radius:9px;box-shadow:0 7px 19px rgba(18,46,97,.13)}
.outline{border-radius:9px;background:#fff9f0;border-color:#c9bba8}
.welcome-strip{background:#fff0db;color:#664b32;text-align:center;padding:17px 0;font-family:Georgia,serif;font-size:18px}
.welcome-strip strong{color:#183962;font-weight:600}
.about{background:linear-gradient(90deg,#fff 0%,#fffdf9 100%)}
.service-card{border-radius:15px;border-color:#efe7da;box-shadow:0 16px 35px rgba(91,69,43,.06)}
footer{background:#0d2342}
.footer{padding-top:30px;padding-bottom:30px;align-items:flex-start;min-height:145px}
.footer-identity,.footer-contact{display:flex;flex-direction:column;gap:6px}
.footer-identity strong{color:#fff;font-size:15px;margin-bottom:5px}
.footer-contact{text-align:right}
.footer-contact a{text-decoration:none}
@media(max-width:720px){.hero-layout{padding-top:52px;padding-bottom:70px}.welcome-strip{font-size:15px}.footer-identity,.footer-contact{gap:7px}.footer-contact{text-align:left;margin-top:22px}.footer span{display:initial;margin-bottom:0}}


/* V5: hero con tema muro su tutta la fascia, marchio centrato e frase sotto */
.hero{
  background-color:#f5f2eb;
  background-image:
    linear-gradient(0deg, rgba(0,0,0,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.055) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,.7), rgba(255,255,255,.7)),
    linear-gradient(90deg, transparent 0 6%, rgba(0,0,0,.02) 6% 7%, transparent 7% 100%);
  background-size: 88px 44px, 88px 44px, 100% 100%, 176px 44px;
  background-position: 0 0, 0 0, 0 0, 0 22px;
  border-bottom:1px solid #e9e1d3;
}
.hero::before{content:"";display:block;height:18px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,0));}
.hero-layout.hero-centered{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:26px;
  text-align:center;
  padding-top:56px;
  padding-bottom:62px;
}
.hero-image-centered{
  order:1;
  width:min(760px,100%);
  margin:0 auto;
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
}
.hero-image-centered img{
  width:min(720px,100%);
  margin:0 auto;
  border-radius:0;
  box-shadow:0 22px 45px rgba(64,49,30,.15);
}
.hero-image-centered .image-caption{
  position:static;
  display:block;
  margin-top:10px;
  color:#7b6d5d;
  font-size:12px;
}
.hero-copy-centered{
  order:2;
  max-width:860px;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.hero-copy-centered .eyebrow{
  color:#9a653f;
  margin-bottom:8px;
}
.hero-copy-centered h1{
  font-size:clamp(36px,4.4vw,68px);
  max-width:980px;
  margin:0 0 14px;
  color:#17325e;
}
.hero-copy-centered p{
  max-width:900px;
  margin:0 auto;
  font-size:20px;
  color:#4f5a68;
}
.hero-copy-centered .hero-actions{
  justify-content:center;
  margin:28px 0 18px;
}
.hero-copy-centered .mini-note{
  justify-content:center;
  color:#6f7a88;
}
.hero-copy-centered .line{
  width:44px;
  background:#b29b7f;
}
@media(max-width:720px){
  .hero-layout.hero-centered{padding-top:34px;padding-bottom:46px;gap:18px}
  .hero-image-centered img{width:100%}
  .hero-copy-centered h1{font-size:42px}
  .hero-copy-centered p{font-size:18px}
}
