:root{
  --yellow:#f3bd18;
  --orange:#ef7b22;
  --red:#9f2f22;
  --brown:#35201b;
  --bg:#f3f4f6;
  --soft:#ffffff;
  --muted:#746963;
  --line:rgba(53,32,27,.10);
  --shadow:0 22px 70px rgba(53,32,27,.12);
  --radius:28px;
  --green:#25D366;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Geist',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--brown);line-height:1.55}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 32px));margin-inline:auto}.eyebrow{display:inline-flex;color:var(--red);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.74rem}.eyebrow.light{color:#fff;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);padding:8px 12px;border-radius:999px;backdrop-filter:blur(12px)}h1,h2{letter-spacing:-.055em;line-height:.96;margin:0 0 18px}h1{font-size:clamp(3rem,6.6vw,6.6rem);color:#fff;text-wrap:balance}h2{font-size:clamp(2rem,3.8vw,4rem)}p{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(135deg,var(--yellow),var(--orange));color:var(--brown);border:0;border-radius:999px;padding:15px 24px;font-weight:900;box-shadow:0 14px 32px rgba(239,123,34,.25);cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn svg{width:22px;height:22px;fill:currentColor}.btn-outline{background:#fff;border:1px solid var(--line);box-shadow:none}.btn-whatsapp{background:var(--green);color:#fff;box-shadow:0 16px 38px rgba(37,211,102,.28)}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:150px}.main-nav{display:flex;align-items:center;gap:15px;font-weight:800}.main-nav a{font-size:.9rem;white-space:nowrap}.main-nav a.active,.main-nav a:hover{color:var(--red)}.language-box{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--muted)}.menu-toggle{display:none;background:var(--brown);border:0;border-radius:15px;width:48px;height:48px;padding:12px}.menu-toggle span{display:block;height:2px;background:#fff;margin:5px 0}.hero-home{position:relative;min-height:700px;padding:92px 0 82px;display:flex;align-items:center;background:linear-gradient(135deg,rgba(53,32,27,.54),rgba(159,47,34,.45)),url('../img/hero-home.jpg');background-size:cover;background-position:center;overflow:hidden}.hero-home:after{content:"";position:absolute;inset:auto -12% -24% auto;width:55vw;height:55vw;background:radial-gradient(circle,var(--yellow),rgba(243,189,24,0) 62%);opacity:.6;pointer-events:none}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:1fr 430px;gap:48px;align-items:end}.hero-copy p{font-size:1.2rem;max-width:680px;color:rgba(255,255,255,.86)}.search-panel{background:rgba(255,255,255,.94);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(18px)}.search-tabs{display:grid;grid-template-columns:1fr 1fr;background:#edf0f3;border-radius:999px;padding:6px;margin-bottom:18px}.search-tabs button{border:0;background:transparent;padding:14px;border-radius:999px;font-weight:900;color:var(--brown);cursor:pointer}.search-tabs button.active{background:linear-gradient(135deg,var(--red),var(--orange));color:#fff;box-shadow:0 10px 26px rgba(159,47,34,.18)}.form-grid{display:grid;grid-template-columns:1fr;gap:13px}.home-search label{display:flex;flex-direction:column;gap:7px;font-weight:900;font-size:.84rem}.home-search select,.home-search input{height:54px;border:1px solid var(--line);border-radius:17px;padding:0 14px;font:inherit;background:#fff;color:var(--brown);outline:none}.home-search select:focus,.home-search input:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(239,123,34,.12)}.search-submit{width:100%;margin-top:15px;height:56px}.section{padding:66px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading>a{font-weight:900;color:var(--red)}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.property-card{background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 18px 46px rgba(53,32,27,.08);transition:.24s;border:1px solid rgba(53,32,27,.06)}.property-card:hover{transform:translateY(-6px)}.property-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:#e8eaed}.property-media img{width:100%;height:100%;object-fit:cover;transition:.36s}.property-card:hover img{transform:scale(1.05)}.badge{position:absolute;top:14px;left:14px;background:linear-gradient(135deg,var(--yellow),var(--orange));border-radius:999px;padding:8px 12px;font-weight:900}.property-body{padding:19px}.property-location{font-weight:900;font-size:.78rem;color:var(--red);text-transform:uppercase}.property-body h3{font-size:1.08rem;line-height:1.22;margin:8px 0 12px;letter-spacing:-.025em}.property-body strong{font-size:1.08rem}.saved-section{background:#fff}.last-section{background:linear-gradient(135deg,rgba(159,47,34,.08),rgba(243,189,24,.18))}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.trust-card{min-height:250px;border-radius:32px;padding:32px;background:linear-gradient(135deg,var(--red),#c24b2b);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--shadow)}.trust-card.warm{background:linear-gradient(135deg,var(--yellow),var(--orange));color:var(--brown)}.trust-card span{font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.trust-card p{color:rgba(255,255,255,.78);max-width:520px}.trust-card.warm p{color:rgba(53,32,27,.72)}.split-section{display:grid;grid-template-columns:.86fr 1.14fr;gap:28px;align-items:center}.territory-section{background:#fff}.territory-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.territory-cards a{min-height:190px;border-radius:26px;background:linear-gradient(135deg,var(--red),#b84432);color:#fff;padding:22px;display:flex;align-items:end;font-size:1.55rem;font-weight:900;letter-spacing:-.04em}.territory-cards a:nth-child(2){background:linear-gradient(135deg,var(--yellow),var(--orange));color:var(--brown)}.territory-cards a:nth-child(3){background:linear-gradient(135deg,#3c241f,#7b3629)}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.blog-card{background:#fff;border-radius:26px;padding:19px;box-shadow:0 18px 46px rgba(53,32,27,.08);border:1px solid rgba(53,32,27,.06)}.blog-card img{aspect-ratio:16/10;object-fit:cover;border-radius:20px;margin-bottom:14px}.blog-card h3{font-size:1.15rem;letter-spacing:-.03em}.blog-card a{font-weight:900;color:var(--red)}.cta-section{padding:62px 0}.cta-box{background:var(--brown);color:#fff;border-radius:34px;padding:38px;display:flex;justify-content:space-between;gap:24px;align-items:center}.cta-box p,.cta-box a:not(.btn){color:rgba(255,255,255,.76)}.cta-box .eyebrow{color:var(--yellow)}.empty-state{grid-column:1/-1;background:#fff;border-radius:20px;padding:22px;border:1px solid var(--line)}.site-footer{background:#2f1b16;color:#fff;padding:54px 0 0}.site-footer p{color:rgba(255,255,255,.72)}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:34px}.footer-grid a{display:block;color:rgba(255,255,255,.84);margin:7px 0}.footer-logo{width:155px;background:#fff;border-radius:18px;padding:10px;margin-bottom:14px}.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.12);padding:18px;margin-top:32px;color:rgba(255,255,255,.65)}.wa-fixed{position:fixed;right:18px;bottom:18px;z-index:200;background:var(--green);color:#fff;border-radius:999px;padding:13px 18px;font-weight:900;box-shadow:0 16px 40px rgba(0,0,0,.20);display:inline-flex;gap:9px;align-items:center}.wa-fixed svg{width:23px;height:23px;fill:#fff}
@media(max-width:1120px){.main-nav{gap:11px}.main-nav a{font-size:.84rem}.brand img{width:134px}}
@media(max-width:980px){.menu-toggle{display:block}.main-nav{position:fixed;inset:84px 16px auto 16px;background:#fff;border-radius:24px;padding:22px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.hero-content,.split-section{grid-template-columns:1fr}.hero-home{min-height:auto;padding:70px 0}.search-panel{max-width:620px}.property-grid,.blog-grid{grid-template-columns:repeat(2,1fr)}.territory-cards{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.cta-box{flex-direction:column;align-items:flex-start}}
@media(max-width:640px){.container{width:min(100% - 22px,1180px)}.header-inner{min-height:76px}.brand img{width:122px}.main-nav{inset:76px 11px auto 11px}.hero-home{padding:48px 0;background-position:center}.hero-content{gap:26px}h1{font-size:3rem}.hero-copy p{font-size:1rem}.property-grid,.blog-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.section{padding:44px 0}.search-panel{padding:15px;border-radius:22px}.footer-grid{grid-template-columns:1fr}.wa-fixed{left:14px;right:14px;justify-content:center}.language-box{width:100%;justify-content:space-between}.territory-cards a{min-height:130px}.cta-box{padding:26px}}



html,
body {
  background: #f4f4f4 !important;
}

.site-main,
main {
  background: #f4f4f4;
}

.whatsapp-floating,
.wa-fixed {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #25d366;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  box-shadow: 0 12px 30px rgba(37, 211, 102, 0.35);
  text-decoration: none;
}

.whatsapp-floating img,
.wa-fixed img,
.whatsapp-floating svg,
.wa-fixed svg {
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
  object-fit: contain;
}

.search-panel {
  background: #ffffff;
}

.search-tab {
  cursor: pointer;
}

.search-tab.active {
  background: #f4b000;
  color: #3b1f18;
}
.search-form {
  display: none;
}

.search-form.active {
  display: grid;
}

.property-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.property-card {
  background: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 18px 45px rgba(35, 31, 32, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.property-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 60px rgba(35, 31, 32, 0.14);
}

.property-card__image {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #eeeeee;
}

.property-card__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.property-card__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  background: #f4b000;
  color: #3b1f18;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.property-card__body {
  padding: 22px;
}

.property-card__type {
  color: #c74424;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.property-card__title {
  margin: 0 0 8px;
  font-size: 21px;
  line-height: 1.2;
}

.property-card__title a {
  color: #2d201d;
  text-decoration: none;
}

.property-card__location {
  margin: 0 0 16px;
  color: #777;
  font-size: 15px;
}

.property-card__price {
  margin-bottom: 18px;
  color: #2d201d;
  font-size: 22px;
  font-weight: 900;
}

.property-card__price--reserved {
  font-size: 17px;
  color: #c74424;
}

.property-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #8e2c20;
  color: #ffffff;
  text-decoration: none;
  padding: 12px 18px;
  border-radius: 999px;
  font-weight: 800;
}

.property-card__button:hover {
  background: #c74424;
}

@media (max-width: 900px) {
  .property-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .property-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .property-card {
    border-radius: 20px;
  }
}

.language-switcher {
  position: relative;
  margin-left: 18px;
}

.language-current {
  display: flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid rgba(60, 35, 30, 0.12);
  border-radius: 999px;
  padding: 8px 12px;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
}

.language-current .flag {
  font-size: 22px;
  line-height: 1;
}

.language-current .chevron {
  font-size: 16px;
  color: #3f231e;
}

.language-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 170px;
  background: #fff;
  border-radius: 18px;
  padding: 8px;
  box-shadow: 0 18px 45px rgba(0,0,0,0.16);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: all .2s ease;
  z-index: 9999;
}

.language-dropdown.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.language-dropdown button {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 12px 14px;
  border-radius: 12px;
  text-align: left;
  font-size: 15px;
  font-weight: 700;
  color: #3f231e;
  cursor: pointer;
}

.language-dropdown button:hover {
  background: #f4f4f4;
}

#google_translate_element {
  display: none;
}

.goog-te-banner-frame,
.goog-te-gadget,
.goog-logo-link,
.goog-te-combo {
  display: none !important;
}

body {
  top: 0 !important;
}

#google_translate_element,
.goog-te-gadget,
.goog-te-gadget-simple,
.goog-te-combo,
.goog-logo-link,
.goog-te-banner-frame,
.skiptranslate {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  position: absolute !important;
  left: -9999px !important;
}

body {
  top: 0 !important;
}

.language-switcher {
  position: relative;
  margin-left: 18px;
  flex-shrink: 0;
}

.language-current {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid rgba(60, 35, 30, 0.14);
  border-radius: 999px;
  padding: 8px 12px;
  cursor: pointer;
  box-shadow: 0 8px 22px rgba(0,0,0,0.08);
  line-height: 1;
}

.language-current .flag {
  font-size: 22px;
}

.language-current .chevron {
  font-size: 15px;
  color: #3f231e;
}

.language-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: 165px;
  background: #fff;
  border-radius: 16px;
  padding: 8px;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: all .2s ease;
  z-index: 99999;
}

.language-dropdown.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.language-dropdown button {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
  padding: 11px 12px;
  border-radius: 10px;
  text-align: left;
  font-size: 15px;
  font-weight: 700;
  color: #3f231e;
  cursor: pointer;
}

.language-dropdown button:hover {
  background: #f4f4f4;
}

.property-card {
  background: #ffffff;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 18px 45px rgba(35, 31, 32, 0.08);
  transition: transform .25s ease, box-shadow .25s ease;
}

.property-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 24px 60px rgba(35, 31, 32, 0.14);
}

.property-media {
  position: relative;
  display: block;
  height: 245px;
  overflow: hidden;
  background: #eee;
}

.property-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.property-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,.18) 0%,
    rgba(0,0,0,0) 45%,
    rgba(0,0,0,.45) 100%
  );
}

.property-badges {
  position: absolute;
  top: 18px;
  left: 18px;
  right: 18px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}

.badge {
  display: inline-flex;
  align-items: center;
  border-radius: 9px;
  padding: 7px 12px;
  font-size: 13px;
  font-weight: 800;
  color: #fff;
  box-shadow: 0 8px 18px rgba(0,0,0,.14);
}

.badge-green {
  background: #4fba63;
}

.badge-red {
  background: linear-gradient(135deg, #f15a24, #a93422);
  margin-left: auto;
}

.badge-dark {
  background: #3f3a38;
}

.property-media-info {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 16px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  text-shadow: 0 2px 10px rgba(0,0,0,.35);
}

.property-body {
  padding: 24px 26px 22px;
}

.property-body h3 {
  margin: 0 0 12px;
  font-size: 23px;
  line-height: 1.18;
  font-weight: 900;
}

.property-body h3 a {
  color: #2d201d;
  text-decoration: none;
}

.property-price {
  display: block;
  margin-bottom: 14px;
  color: #b83318;
  font-size: 24px;
  font-weight: 900;
}

.property-body p {
  margin: 0 0 22px;
  color: #647780;
  font-size: 16px;
  line-height: 1.55;
  font-weight: 600;
}

.property-actions {
  display: flex;
  gap: 10px;
  border-top: 1px solid rgba(60, 35, 30, .08);
  padding-top: 16px;
}

.property-action {
  border: 1px solid rgba(60, 35, 30, .12);
  background: #fff;
  color: #3f231e;
  border-radius: 12px;
  padding: 11px 15px;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.property-action-whatsapp {
  background: #25d366;
  color: #fff;
  border-color: #25d366;
}

.property-action:hover {
  transform: translateY(-1px);
}

@media (max-width: 640px) {
  .property-media {
    height: 220px;
  }

  .property-body {
    padding: 20px;
  }

  .property-body h3 {
    font-size: 21px;
  }

  .property-actions {
    flex-direction: column;
  }

  .property-action {
    text-align: center;
  }
}

.modern-card {
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 16px 45px rgba(35, 31, 32, 0.08);
}

.modern-card .property-media {
  height: 245px;
  position: relative;
  display: block;
  overflow: hidden;
}

.modern-card .property-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.modern-card .property-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.08), rgba(0,0,0,.45));
}

.property-badges {
  position: absolute;
  top: 16px;
  left: 16px;
  right: 16px;
  z-index: 3;
  display: flex;
  gap: 8px;
}

.badge {
  padding: 7px 12px;
  border-radius: 8px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.badge-green {
  background: #46b85a;
}

.badge-red {
  background: linear-gradient(135deg, #ff6b1a, #b83420);
  margin-left: auto;
}

.property-media-info {
  position: absolute;
  left: 16px;
  bottom: 14px;
  z-index: 3;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
}

.modern-card .property-body {
  padding: 22px;
}

.modern-card h3 {
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.2;
}

.modern-card h3 a {
  color: #251b18;
  text-decoration: none;
}

.property-price {
  display: block;
  margin-bottom: 12px;
  color: #bd331c;
  font-size: 22px;
  font-weight: 900;
}

.modern-card p {
  color: #657981;
  line-height: 1.5;
  font-weight: 600;
}

.property-actions {
  display: flex;
  gap: 10px;
  margin-top: 18px;
}

.property-action {
  border: 1px solid #e7edf0;
  background: #fff;
  padding: 10px 14px;
  border-radius: 10px;
  font-weight: 800;
  text-decoration: none;
  color: #647780;
  cursor: pointer;
}

.property-whatsapp {
  background: #25d366;
  border-color: #25d366;
  color: #fff;
}

.property-card .property-media {
  width: 100% !important;
  height: 255px !important;
  border-radius: 20px 20px 0 0 !important;
  overflow: hidden !important;
  position: relative !important;
  display: block !important;
  background: #ddd !important;
}

.property-card .property-media img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

.property-card .property-media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.16) 0%,
      rgba(0, 0, 0, 0.02) 38%,
      rgba(0, 0, 0, 0.62) 100%
    );
  pointer-events: none;
}

.property-badges {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  right: 16px !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
}

.badge {
  border-radius: 999px !important;
  padding: 9px 14px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(8px);
}

.badge-green {
  background: linear-gradient(135deg, #69d47a, #239944) !important;
  border: 1px solid rgba(255,255,255,.45) !important;
}

.badge-green::before {
  content: "★";
  margin-right: 6px;
  color: #fff7c2;
}

.badge-red {
  background: linear-gradient(135deg, #ff7a1a, #d73319) !important;
  margin-left: auto !important;
  border: 1px solid rgba(255,255,255,.35) !important;
}

.property-media-info {
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  z-index: 3 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-shadow: 0 3px 14px rgba(0,0,0,.45) !important;
}

.property-card {
  overflow: hidden !important;
}

.hero-home {
  position: relative;
  min-height: 680px;
  display: flex;
  align-items: center;
  background: url('/assets/img/hero-mare.jpg') center/cover no-repeat;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,0.65) 0%,
    rgba(0,0,0,0.45) 35%,
    rgba(0,0,0,0.15) 65%,
    rgba(0,0,0,0.05) 100%
  );
}

.hero-content {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 60px;
  align-items: center;
}

.hero-copy {
  margin-top: -40px;
  max-width: 600px;
}

.hero-copy h1 {
  font-size: 64px;
  line-height: 1.05;
  font-weight: 900;
  color: #fff;
}

.hero-copy p {
  margin-top: 20px;
  font-size: 18px;
  color: rgba(255,255,255,0.85);
}

.eyebrow.light {
  display: inline-block;
  background: rgba(255,255,255,0.15);
  backdrop-filter: blur(10px);
  padding: 8px 14px;
  border-radius: 999px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 16px;
}

.search-panel {
  background: #fff;
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 25px 60px rgba(0,0,0,0.2);
}

@media (max-width: 768px) {
  .hero-content {
    grid-template-columns: 1fr;
  }

  .hero-copy {
    margin-top: 0;
  }

  .hero-copy h1 {
    font-size: 38px;
  }
}

.search-field.is-hidden {
  display: none !important;
}

.search-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #eef0f3;
  border-radius: 999px;
  padding: 8px;
  margin-bottom: 24px;
}

.search-tab {
  border: 0;
  border-radius: 999px;
  padding: 15px 20px;
  background: transparent;
  color: #2f211d;
  font-weight: 900;
  cursor: pointer;
}

.search-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #b93620, #ff7a18);
  box-shadow: 0 12px 28px rgba(210, 65, 24, 0.28);
}

[data-field-group="affitto"] {
  display: none;
}

.detail-layout-new {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 390px !important;
  gap: 34px !important;
  align-items: start !important;
}

.detail-main {
  display: grid !important;
  gap: 24px !important;
}

.detail-sidebar-new {
  position: sticky !important;
  top: 110px !important;
  display: grid !important;
  gap: 24px !important;
}

.gallery-card {
  padding: 0 !important;
  overflow: hidden !important;
}

.detail-gallery-slider {
  position: relative;
  width: 100%;
  height: 520px;
  overflow: hidden;
  background: #e8e8e8;
  border-radius: 26px 26px 0 0;
}

.gallery-slider-track {
  width: 100%;
  height: 100%;
  position: relative;
}

.gallery-slide {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  opacity: 0;
  visibility: hidden;
  background: #e8e8e8;
  cursor: zoom-in;
  transition: opacity .25s ease, visibility .25s ease;
}

.gallery-slide.is-active {
  opacity: 1;
  visibility: visible;
}

.gallery-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 8;
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  color: #301f1b;
  font-size: 42px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}

.gallery-prev {
  left: 18px;
}

.gallery-next {
  right: 18px;
}

.gallery-counter {
  position: absolute;
  right: 18px;
  bottom: 18px;
  z-index: 8;
  background: rgba(0,0,0,.55);
  color: #fff;
  padding: 8px 13px;
  border-radius: 999px;
  font-weight: 900;
}

.gallery-thumbs {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 16px;
  background: #fff;
}

.gallery-thumb {
  flex: 0 0 96px;
  height: 72px;
  border: 3px solid transparent;
  border-radius: 14px;
  padding: 0;
  overflow: hidden;
  cursor: pointer;
  background: #ddd;
}

.gallery-thumb.is-active {
  border-color: #f4b000;
}

.gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.similar-section {
  padding-top: 20px;
  padding-bottom: 80px;
}

@media (max-width: 980px) {
  .detail-layout-new {
    grid-template-columns: 1fr !important;
  }

  .detail-sidebar-new {
    position: static !important;
  }

  .detail-gallery-slider {
    height: 380px;
  }
}

@media (max-width: 640px) {
  .detail-gallery-slider {
    height: 280px;
  }

  .gallery-arrow {
    width: 44px;
    height: 44px;
    font-size: 34px;
  }

  .gallery-thumb {
    flex-basis: 78px;
    height: 58px;
  }
}

.property-detail-hero {
  padding: 34px 0 26px;
  background: #f5f3f1;
}

.property-detail-hero h1 {
  font-size: clamp(44px, 7vw, 88px);
  line-height: .95;
  font-weight: 900;
  color: #2c1713 !important;
  letter-spacing: -3px;
  max-width: 1200px;
  margin: 18px 0 22px;
  display: block;
}

.property-detail-hero p {
  font-size: 22px;
  color: #6e625f;
  margin: 0;
}

.detail-title-row {
  display: block;
}

.detail-price-box {
  margin-top: 22px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  padding: 16px 22px;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.detail-price-box span {
  color: #7b706d;
  font-weight: 700;
}

.detail-price-box strong {
  font-size: 32px;
  color: #2c1713;
  font-weight: 900;
}

.back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #4f403c;
  font-weight: 700;
  text-decoration: none;
  margin-bottom: 12px;
}

.back-link:hover {
  opacity: .75;
}

.detail-badge {
  display: inline-flex;
  align-items: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: linear-gradient(135deg,#c0392b,#ff8c1a);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .4px;
  text-transform: uppercase;
}

/* DETTAGLIO IMMOBILE - STILE DEMO CLIENTE */

.detail-top {
  background: #eef4f6;
  padding: 42px 0 26px;
}

.detail-heading {
  background: #fff;
  padding: 34px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: start;
}

.detail-heading h1 {
  margin: 0 0 14px;
  color: #303940 !important;
  font-size: clamp(28px, 3.8vw, 42px);
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: -1px;
}

.rif-badge {
  display: inline-flex;
  background: #1d7a2d;
  color: #fff;
  padding: 8px 18px;
  border-radius: 4px;
  font-weight: 900;
  text-transform: uppercase;
}

.detail-main-price {
  color: #1d7a2d;
  font-size: 30px;
  font-weight: 900;
  white-space: nowrap;
  margin-top: 70px;
}

.detail-page-layout {
  background: #eef4f6;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 30px;
  padding-bottom: 50px;
}

.detail-left {
  background: #fff;
  padding: 30px;
}

.detail-right {
  display: grid;
  gap: 26px;
  align-content: start;
}

.detail-mosaic {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-auto-rows: 220px;
  gap: 12px;
  margin-bottom: 44px;
}

.mosaic-item {
  position: relative;
  border: 0;
  padding: 0;
  overflow: hidden;
  background: #ddd;
  cursor: pointer;
}

.mosaic-main {
  grid-row: span 2;
  grid-column: 2;
}

.mosaic-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mosaic-more {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: rgba(0,0,0,.45);
  color: #fff;
  font-weight: 900;
  font-size: 20px;
}

.detail-content-card {
  margin-bottom: 42px;
}

.detail-content-card h2,
.side-card h2 {
  color: #159229;
  font-size: 26px;
  margin: 0 0 28px;
}

.property-description {
  color: #303940;
  font-size: 18px;
  line-height: 1.85;
}

.description-request-btn {
  display: inline-flex;
  float: right;
  margin-top: 28px;
  background: #159229;
  color: #fff;
  padding: 14px 28px;
  text-decoration: none;
  font-weight: 900;
  border-radius: 4px;
}

.features-grid-new {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.feature-pill {
  background: #f3f7f8;
  color: #303940;
  border-radius: 4px;
  padding: 12px 14px;
  font-weight: 800;
}

.side-card {
  background: #fff;
  padding: 22px 18px;
}

.side-table div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid #ddd;
  color: #303940;
  font-size: 15px;
}

.side-table span {
  color: #3d454a;
}

.side-table strong {
  text-align: right;
  font-weight: 900;
}

.energy-side-box {
  margin-top: 24px;
}

.energy-scale-new {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 4px;
}

.energy-scale-new div {
  text-align: center;
  padding: 10px 5px;
  font-weight: 900;
  color: #fff;
  font-size: 13px;
}

.energy-scale-new div:nth-child(1),
.energy-scale-new div:nth-child(2) { background: #169447; }

.energy-scale-new div:nth-child(3) { background: #7dbd35; }

.energy-scale-new div:nth-child(4) { background: #d4d92e; color: #303940; }

.energy-scale-new div:nth-child(5) { background: #f2b91c; color: #303940; }

.energy-scale-new div:nth-child(6) { background: #ef7f1a; }

.energy-scale-new div:nth-child(7),
.energy-scale-new div:nth-child(8) { background: #df251f; }

.energy-scale-new div.active {
  outline: 4px solid #303940;
  z-index: 2;
}

.property-map-new {
  width: 100%;
  height: 360px;
  border: 0;
}

.request-wide-section {
  background: #d9d9d9;
  padding: 54px 0;
}

.request-wide-box {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr) minmax(300px, 420px);
  gap: 38px;
  align-items: start;
}

.request-graphic {
  font-size: 150px;
  color: rgba(0,0,0,.15);
  line-height: 1;
}

.request-form-area h2 {
  color: #159229;
  font-size: 34px;
  margin: 0 0 24px;
}

.wide-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.wide-form-grid label {
  display: grid;
  gap: 7px;
  font-weight: 900;
  color: #444;
}

.wide-form-grid input,
.wide-form-grid textarea {
  width: 100%;
  border: 0;
  background: #fff;
  padding: 14px 16px;
  font: inherit;
}

.wide-message {
  grid-column: 1 / -1;
}

.wide-privacy {
  margin: 20px 0;
  font-weight: 900;
  color: #159229;
}

.wide-submit {
  background: #159229;
  color: #fff;
  border: 0;
  padding: 16px 42px;
  font-weight: 900;
  border-radius: 4px;
  cursor: pointer;
}

.request-info-area {
  color: #333;
  font-size: 17px;
  line-height: 1.55;
}

.wide-whatsapp {
  display: inline-flex;
  margin-top: 20px;
  background: #25d366;
  color: #fff;
  padding: 14px 22px;
  text-decoration: none;
  font-weight: 900;
  border-radius: 4px;
}

.similar-carousel-section {
  background: #eef4f6;
  padding: 44px 0 0;
}

.similar-heading {
  text-align: center;
  margin-bottom: 42px;
}

.similar-heading h2 {
  margin: 0;
  color: #4a555a;
  font-size: clamp(34px, 5vw, 56px);
  font-weight: 300;
}

.similar-heading strong {
  font-weight: 900;
}

.similar-carousel {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

.similar-slide-card {
  position: relative;
  min-height: 280px;
  overflow: hidden;
}

.similar-slide-card a {
  display: block;
  height: 100%;
  color: #fff;
  text-decoration: none;
}

.similar-slide-card img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
}

.similar-rif {
  position: absolute;
  top: 16px;
  right: 16px;
  background: #1d7a2d;
  color: #fff;
  padding: 8px 12px;
  font-weight: 900;
  border-radius: 4px;
  z-index: 2;
}

.similar-overlay {
  position: absolute;
  inset: auto 0 0;
  padding: 24px;
  background: linear-gradient(to top, rgba(0,0,0,.7), transparent);
}

.similar-overlay strong {
  font-size: 22px;
  font-weight: 900;
}

.similar-overlay h3 {
  margin: 8px 0 0;
  font-size: 20px;
}

.property-lightbox {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.92);
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
}

.property-lightbox.is-open {
  display: flex;
}

.property-lightbox img {
  max-width: 88vw;
  max-height: 86vh;
  object-fit: contain;
}

.lightbox-close,
.lightbox-arrow {
  position: absolute;
  border: 0;
  background: rgba(255,255,255,.15);
  color: #fff;
  cursor: pointer;
  border-radius: 999px;
}

.lightbox-close {
  top: 24px;
  right: 28px;
  width: 52px;
  height: 52px;
  font-size: 34px;
}

.lightbox-arrow {
  top: 50%;
  transform: translateY(-50%);
  width: 58px;
  height: 58px;
  font-size: 44px;
}

.lightbox-prev { left: 28px; }
.lightbox-next { right: 28px; }

.lightbox-counter {
  position: absolute;
  bottom: 26px;
  color: #fff;
  font-weight: 900;
}

@media (max-width: 1000px) {
  .detail-page-layout,
  .request-wide-box {
    grid-template-columns: 1fr;
  }

  .detail-heading {
    grid-template-columns: 1fr;
  }

  .detail-main-price {
    margin-top: 0;
  }

  .detail-mosaic {
    grid-template-columns: 1fr;
    grid-auto-rows: 260px;
  }

  .mosaic-main {
    grid-column: auto;
    grid-row: auto;
  }

  .similar-carousel {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .detail-left {
    padding: 18px;
  }

  .detail-heading {
    padding: 24px;
  }

  .detail-heading h1 {
    font-size: 30px;
  }

  .wide-form-grid,
  .features-grid-new {
    grid-template-columns: 1fr;
  }

  .similar-carousel {
    grid-template-columns: 1fr;
  }

  .request-graphic {
    display: none;
  }
}

.detail-contact-card {
  display: none !important;
}

.detail-top {
  background: #f4f4f4 !important;
  padding: 48px 0 32px !important;
}

.detail-heading {
  background: transparent !important;
  display: block !important;
  text-align: center !important;
  padding: 0 !important;
}

.detail-heading h1 {
  color: #2f1d19 !important;
  font-family: 'Geist', sans-serif !important;
  font-size: clamp(46px, 7vw, 86px) !important;
  line-height: 0.95 !important;
  font-weight: 900 !important;
  letter-spacing: -3px !important;
  text-transform: none !important;
  max-width: 1100px !important;
  margin: 0 auto 22px !important;
}

.rif-badge {
  background: linear-gradient(135deg, #b93620, #ff7a18) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 10px 18px !important;
}

.detail-main-price {
  display: block !important;
  color: #b93620 !important;
  font-size: 38px !important;
  margin: 22px auto 0 !important;
  text-align: center !important;
}

.back-link {
  color: #8e2c20 !important;
}

.detail-content-card h2,
.side-card h2,
.request-form-area h2 {
  color: #8e2c20 !important;
}

.description-request-btn,
.wide-submit {
  background: linear-gradient(135deg, #f4b000, #ff7a18) !important;
  color: #2f1d19 !important;
}

.rif-badge,
.similar-rif {
  background: linear-gradient(135deg, #b93620, #ff7a18) !important;
}

.wide-privacy {
  color: #8e2c20 !important;
}

.detail-gallery-mobile,
.detail-gallery-slider,
.gallery-slider-track,
.gallery-slide,
.gallery-arrow,
.gallery-counter,
.gallery-thumbs {
  display: none !important;
}

.detail-mosaic {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  grid-template-rows: 230px 230px !important;
  gap: 12px !important;
  margin-bottom: 44px !important;
}

.mosaic-item {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #ddd !important;
  cursor: pointer !important;
}

.mosaic-main {
  grid-column: span 2 !important;
  grid-row: span 2 !important;
}

.mosaic-item img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.mosaic-more {
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(0,0,0,.48) !important;
  color: #fff !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

@media (max-width: 768px) {
  .detail-mosaic {
    grid-template-columns: 1fr !important;
    grid-template-rows: none !important;
  }

  .mosaic-item,
  .mosaic-main {
    grid-column: auto !important;
    grid-row: auto !important;
    height: 260px !important;
  }
}

.top-search-bar {
  background: #2f1d19;
  color: #fff;
  padding: 10px 0;
  position: relative;
  z-index: 1000;
}

.top-search-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.top-search-form {
  position: relative;
  width: min(520px, 100%);
  display: flex;
  background: #fff;
  border-radius: 999px;
  overflow: visible;
}

.top-search-form input {
  flex: 1;
  border: 0;
  background: transparent;
  padding: 12px 18px;
  font-size: 15px;
  font-weight: 700;
  outline: none;
}

.top-search-form button {
  border: 0;
  background: linear-gradient(135deg, #f4b000, #ff7a18);
  color: #2f1d19;
  padding: 0 20px;
  border-radius: 999px;
  font-weight: 900;
  cursor: pointer;
}

.top-search-results {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  background: #fff;
  color: #2f1d19;
  border-radius: 18px;
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
  overflow: hidden;
  display: none;
  z-index: 9999;
}

.top-search-results.is-open {
  display: block;
}

.top-search-result {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 12px;
  padding: 12px;
  text-decoration: none;
  color: #2f1d19;
  border-bottom: 1px solid #eee;
}

.top-search-result:hover {
  background: #f7f7f7;
}

.top-search-result img {
  width: 64px;
  height: 52px;
  object-fit: cover;
  border-radius: 10px;
}

.top-search-result strong {
  display: block;
  font-size: 14px;
}

.top-search-result span {
  display: block;
  font-size: 13px;
  color: #7a6d69;
}

.top-languages {
  display: flex;
  gap: 8px;
}

.top-languages button {
  border: 0;
  background: rgba(255,255,255,.12);
  border-radius: 999px;
  width: 38px;
  height: 38px;
  cursor: pointer;
  font-size: 19px;
}

@media (max-width: 768px) {
  .top-search-inner {
    flex-direction: column;
    align-items: stretch;
  }

  .top-languages {
    justify-content: center;
  }
}

.about-hero {
  background: #f4f4f4;
  padding: 76px 0 58px;
  text-align: center;
}

.about-hero h1 {
  max-width: 1050px;
  margin: 18px auto 22px;
  color: #2f1d19 !important;
  font-size: clamp(44px, 7vw, 88px);
  line-height: .95;
  font-weight: 950;
  letter-spacing: -3px;
}

.about-hero p {
  max-width: 760px;
  margin: 0 auto;
  color: #657981;
  font-size: 20px;
  line-height: 1.6;
  font-weight: 650;
}

.about-section {
  background: #f4f4f4;
  padding: 70px 0;
}

.about-section.white {
  background: #fff;
}

.about-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 370px;
  gap: 34px;
  align-items: start;
}

.about-text-card,
.about-contact-card,
.staff-card,
.services-about-grid article {
  background: #fff;
  border-radius: 28px;
  box-shadow: 0 18px 50px rgba(35,31,32,.07);
}

.about-text-card {
  padding: 44px;
}

.about-text-card h2,
.about-heading-center h2,
.about-cta-box h2 {
  color: #2f1d19;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1;
  margin: 0 0 26px;
  letter-spacing: -1.5px;
}

.about-text-card p {
  color: #465b63;
  font-size: 18px;
  line-height: 1.8;
  font-weight: 600;
}

.about-contact-card {
  padding: 34px;
  position: sticky;
  top: 110px;
}

.about-contact-card h3 {
  color: #8e2c20;
  font-size: 28px;
  margin: 0 0 22px;
}

.about-contact-card p {
  color: #465b63;
  line-height: 1.6;
  font-weight: 700;
  border-bottom: 1px solid rgba(47,29,25,.1);
  padding-bottom: 18px;
}

.about-contact-card a {
  color: #8e2c20;
  text-decoration: none;
  font-weight: 900;
}

.about-heading-center {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 46px;
}

.staff-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px;
}

.staff-card {
  text-align: center;
  padding: 34px 28px;
}

.staff-card img {
  width: 245px;
  height: 245px;
  margin:0 auto;
  max-width: 100%;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 24px;
  box-shadow: 0 18px 45px rgba(35,31,32,.12);
}

.staff-card h3 {
  color: #2f1d19;
  font-size: 28px;
  margin: 0 0 8px;
}

.staff-card span {
  display: block;
  color: #b93620;
  font-weight: 900;
  margin-bottom: 14px;
}

.staff-card p {
  color: #647780;
  font-size: 16px;
  line-height: 1.6;
  font-weight: 600;
}

.soft-pattern {
  background:
    radial-gradient(circle at 20% 20%, rgba(244,176,0,.10), transparent 28%),
    radial-gradient(circle at 80% 50%, rgba(185,54,32,.08), transparent 30%),
    #f7f3ef;
}

.services-about-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.services-about-grid article {
  padding: 34px;
}

.service-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #f4b000, #ff7a18);
  border-radius: 18px;
  font-size: 28px;
  margin-bottom: 24px;
}

.services-about-grid h3 {
  color: #2f1d19;
  font-size: 23px;
  margin: 0 0 16px;
}

.services-about-grid p {
  color: #647780;
  line-height: 1.7;
  font-weight: 600;
}

.about-final-cta {
  background: #f4f4f4;
  padding: 70px 0;
}

.about-cta-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 34px;
  padding: 42px;
  border-radius: 30px;
  background: linear-gradient(135deg, #b93620, #ff7a18);
  color: #fff;
  box-shadow: 0 22px 60px rgba(185,54,32,.22);
}

.about-cta-box h2,
.about-cta-box p {
  color: #fff;
}

.about-cta-box p {
  margin: 0;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 650;
}

.about-cta-box a {
  background: #fff;
  color: #8e2c20;
  text-decoration: none;
  padding: 17px 28px;
  border-radius: 999px;
  font-weight: 950;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .about-intro-grid,
  .staff-grid,
  .services-about-grid {
    grid-template-columns: 1fr;
  }

  .about-contact-card {
    position: static;
  }

  .about-cta-box {
    flex-direction: column;
    align-items: flex-start;
  }

  .about-hero h1 {
    font-size: 42px;
  }
}

/* PAGINA TERRITORIO */

.territory-page-hero {
  background: #f4f4f4;
  padding: 76px 0 48px;
  text-align: center;
}

.territory-page-hero h1 {
  max-width: 1050px;
  margin: 18px auto 22px;
  color: #2f1d19 !important;
  font-size: clamp(46px, 7vw, 88px);
  line-height: .95;
  font-weight: 950;
  letter-spacing: -3px;
}

.territory-page-hero p {
  max-width: 900px;
  margin: 0 auto;
  color: #647780;
  font-size: 20px;
  line-height: 1.65;
  font-weight: 650;
}

.territory-list-section {
  background: #f4f4f4;
  padding: 38px 0 78px;
}

.territory-grid-page {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px;
}

.territory-card-page {
  background: #fff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(35,31,32,.08);
  transition: transform .25s ease, box-shadow .25s ease;
}

.territory-card-page:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 65px rgba(35,31,32,.13);
}

.territory-card-page a {
  color: inherit;
  text-decoration: none;
  display: block;
}

.territory-card-image {
  height: 245px;
  background: #ddd;
  overflow: hidden;
}

.territory-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}

.territory-card-page:hover img {
  transform: scale(1.05);
}

.territory-card-body {
  padding: 28px;
  min-height: 155px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.territory-card-body h2 {
  margin: 0;
  color: #2f1d19;
  font-size: 27px;
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: -0.5px;
}

.territory-card-body span {
  margin-top: 26px;
  color: #b93620;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 14px;
}

.territory-cta-section {
  background: #f4f4f4;
  padding: 0 0 80px;
}

.territory-cta-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 34px;
  padding: 42px;
  border-radius: 30px;
  background: linear-gradient(135deg, #b93620, #ff7a18);
  color: #fff;
  box-shadow: 0 22px 60px rgba(185,54,32,.22);
}

.territory-cta-box h2 {
  margin: 10px 0;
  color: #fff;
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1;
  font-weight: 950;
}

.territory-cta-box p {
  margin: 0;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 650;
}

.territory-cta-box a {
  background: #fff;
  color: #8e2c20;
  text-decoration: none;
  padding: 17px 28px;
  border-radius: 999px;
  font-weight: 950;
  white-space: nowrap;
}

@media (max-width: 1000px) {
  .territory-grid-page {
    grid-template-columns: repeat(2, 1fr);
  }

  .territory-cta-box {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .territory-page-hero h1 {
    font-size: 42px;
  }

  .territory-page-hero p {
    font-size: 17px;
  }

  .territory-grid-page {
    grid-template-columns: 1fr;
  }

  .territory-card-image {
    height: 220px;
  }

  .territory-card-body {
    min-height: auto;
  }
}

/* PAGINA CONTATTI PROFESSIONALE */

.contact-hero-new {
  background: #f4f4f4;
  padding: 76px 0 48px;
  text-align: center;
}

.contact-hero-new h1 {
  max-width: 1050px;
  margin: 18px auto 22px;
  color: #2f1d19 !important;
  font-size: clamp(46px, 7vw, 86px);
  line-height: .95;
  font-weight: 950;
  letter-spacing: -3px;
}

.contact-hero-new p {
  max-width: 780px;
  margin: 0 auto;
  color: #647780;
  font-size: 20px;
  line-height: 1.6;
  font-weight: 650;
}

.contact-main-section {
  background: #f4f4f4;
  padding: 40px 0 78px;
}

.contact-new-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 34px;
  align-items: start;
}

.contact-form-card-new {
  background: #fff;
  border-radius: 30px;
  padding: 44px;
  box-shadow: 0 18px 50px rgba(35,31,32,.07);
}

.contact-form-card-new h2 {
  margin: 14px 0 14px;
  color: #2f1d19;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1;
  font-weight: 950;
  letter-spacing: -2px;
}

.contact-form-intro {
  margin: 0 0 30px;
  color: #647780;
  font-size: 18px;
  line-height: 1.6;
  font-weight: 650;
}

.contact-form-grid-new {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

.contact-form-grid-new label {
  display: grid;
  gap: 8px;
}

.contact-form-grid-new span {
  color: #2f1d19;
  font-weight: 900;
}

.contact-form-grid-new input,
.contact-form-grid-new select,
.contact-form-grid-new textarea {
  width: 100%;
  border: 1px solid rgba(47,29,25,.12);
  background: #f8f8f8;
  border-radius: 16px;
  padding: 16px 18px;
  font: inherit;
  color: #2f1d19;
  font-weight: 700;
  outline: none;
}

.contact-form-grid-new input:focus,
.contact-form-grid-new select:focus,
.contact-form-grid-new textarea:focus {
  border-color: #ff7a18;
  box-shadow: 0 0 0 4px rgba(255,122,24,.12);
}

.contact-message-new {
  grid-column: 1 / -1;
}

.contact-privacy-new {
  margin: 22px 0;
  color: #647780;
  font-weight: 700;
}

.contact-submit-new {
  border: 0;
  background: linear-gradient(135deg, #f4b000, #ff7a18);
  color: #2f1d19;
  padding: 17px 34px;
  border-radius: 999px;
  font-weight: 950;
  cursor: pointer;
  box-shadow: 0 14px 32px rgba(255,122,24,.22);
}

.contact-info-column-new {
  display: grid;
  gap: 18px;
}

.contact-info-card-new {
  background: #fff;
  border-radius: 26px;
  padding: 28px;
  box-shadow: 0 18px 50px rgba(35,31,32,.07);
}

.contact-info-card-new.highlight {
  background: linear-gradient(135deg, #2f1d19, #8e2c20);
  color: #fff;
}

.contact-info-card-new span {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  background: rgba(255,122,24,.13);
  border-radius: 16px;
  margin-bottom: 14px;
  font-size: 23px;
}

.contact-info-card-new h3 {
  margin: 0 0 10px;
  color: #2f1d19;
  font-size: 24px;
}

.contact-info-card-new.highlight h3,
.contact-info-card-new.highlight p {
  color: #fff;
}

.contact-info-card-new p {
  margin: 0;
  color: #647780;
  line-height: 1.6;
  font-weight: 700;
}

.contact-info-card-new a {
  color: #8e2c20;
  text-decoration: none;
  font-weight: 900;
}

.contact-whatsapp-new {
  display: inline-flex;
  margin-top: 22px;
  background: #25d366;
  color: #fff !important;
  padding: 14px 22px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 950;
}

.contact-map-section-new {
  background: #fff;
  padding: 76px 0;
}

.contact-map-heading-new {
  max-width: 760px;
  margin-bottom: 30px;
}

.contact-map-heading-new h2 {
  margin: 12px 0;
  color: #2f1d19;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1;
  font-weight: 950;
  letter-spacing: -2px;
}

.contact-map-heading-new p {
  color: #647780;
  font-size: 18px;
  line-height: 1.6;
  font-weight: 650;
}

.contact-map-new {
  width: 100%;
  height: 460px;
  border: 0;
  border-radius: 30px;
  box-shadow: 0 18px 50px rgba(35,31,32,.08);
}

.contact-cta-final-new {
  background: #f4f4f4;
  padding: 76px 0;
}

.contact-cta-box-new {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 34px;
  padding: 42px;
  border-radius: 30px;
  background: linear-gradient(135deg, #b93620, #ff7a18);
  color: #fff;
  box-shadow: 0 22px 60px rgba(185,54,32,.22);
}

.contact-cta-box-new h2 {
  margin: 10px 0;
  color: #fff;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1;
  font-weight: 950;
}

.contact-cta-box-new p {
  margin: 0;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 650;
}

.contact-cta-box-new a {
  background: #fff;
  color: #8e2c20;
  text-decoration: none;
  padding: 17px 28px;
  border-radius: 999px;
  font-weight: 950;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .contact-new-layout,
  .contact-form-grid-new {
    grid-template-columns: 1fr;
  }

  .contact-hero-new h1 {
    font-size: 42px;
  }

  .contact-form-card-new {
    padding: 28px;
  }

  .contact-cta-box-new {
    flex-direction: column;
    align-items: flex-start;
  }
}

.page-hero.compact h1,
.page-hero.compact .hero-title,
.page-hero.compact h1 span {
    color: #2f1d19 !important;
}



.page-hero.compact h1 {
    font-size: clamp(52px, 8vw, 110px);
    line-height: .92;
    letter-spacing: -4px;
    font-weight: 950;
}

.wa-fixed {
  display: none !important;
}

@media (max-width: 768px) {
  .wa-fixed {
    display: flex !important;
    position: fixed;
    right: 18px;
    bottom: 88px;
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: #25d366;
    color: #fff;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    box-shadow: 0 16px 34px rgba(37, 211, 102, .35);
    text-decoration: none;
  }

  .wa-fixed svg {
    width: 38px;
    height: 38px;
    fill: currentColor;
  }

  .wa-fixed span {
    display: none !important;
  }
}

/* DETTAGLIO TERRITORIO */

.territory-detail-hero {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: end;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.territory-detail-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(47,29,25,.82), rgba(47,29,25,.35), rgba(47,29,25,.08)),
    linear-gradient(0deg, rgba(0,0,0,.45), transparent);
}

.territory-detail-hero-content {
  position: relative;
  z-index: 2;
  padding: 80px 0;
}

.territory-back {
  color: #fff !important;
  margin-bottom: 22px;
}

.territory-detail-hero h1 {
  max-width: 1000px;
  margin: 16px 0 20px;
  color: #fff;
  font-size: clamp(50px, 8vw, 105px);
  line-height: .9;
  font-weight: 950;
  letter-spacing: -4px;
}

.territory-detail-hero p {
  max-width: 720px;
  margin: 0;
  color: rgba(255,255,255,.9);
  font-size: 22px;
  line-height: 1.5;
  font-weight: 650;
}

.territory-detail-section {
  background: #f4f4f4;
  padding: 72px 0;
}

.territory-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 34px;
  align-items: start;
}

.territory-detail-content,
.territory-detail-side {
  background: #fff;
  border-radius: 30px;
  box-shadow: 0 18px 50px rgba(35,31,32,.07);
}

.territory-detail-content {
  padding: 46px;
}

.territory-detail-content h2 {
  margin: 0 0 28px;
  color: #2f1d19;
  font-size: clamp(36px, 4vw, 58px);
  line-height: 1;
  font-weight: 950;
  letter-spacing: -2px;
}

.territory-detail-content p {
  color: #465b63;
  font-size: 19px;
  line-height: 1.85;
  font-weight: 600;
}

.territory-detail-side {
  padding: 32px;
  position: sticky;
  top: 120px;
}

.territory-detail-side h3 {
  margin: 0 0 16px;
  color: #8e2c20;
  font-size: 28px;
}

.territory-detail-side p {
  color: #647780;
  line-height: 1.65;
  font-weight: 650;
}

.territory-detail-side a,
.territory-detail-cta a {
  display: inline-flex;
  margin-top: 16px;
  background: linear-gradient(135deg, #f4b000, #ff7a18);
  color: #2f1d19;
  text-decoration: none;
  padding: 15px 22px;
  border-radius: 999px;
  font-weight: 950;
}

.territory-detail-cta {
  margin-top: 42px;
  padding: 32px;
  border-radius: 26px;
  background: linear-gradient(135deg, #fff6dd, #fff);
}

.territory-detail-cta h3 {
  margin: 0 0 12px;
  color: #2f1d19;
  font-size: 32px;
}

.territory-more-section {
  background: #fff;
  padding: 76px 0;
}

@media (max-width: 900px) {
  .territory-detail-layout {
    grid-template-columns: 1fr;
  }

  .territory-detail-side {
    position: static;
  }

  .territory-detail-hero {
    min-height: 470px;
  }

  .territory-detail-hero h1 {
    font-size: 46px;
    letter-spacing: -2px;
  }

  .territory-detail-content {
    padding: 28px;
  }
}

/* AFFIDACI IMMOBILE */

.hero-affida {
  padding: 120px 0 90px;
  background:
    linear-gradient(135deg, rgba(47,29,25,.94), rgba(120,42,24,.88)),
    url('/assets/img/hero-affida.jpg') center/cover;
  color: #fff;
}

.hero-affida h1 {
  margin: 18px 0 22px;
  max-width: 900px;
  font-size: clamp(54px, 8vw, 110px);
  line-height: .9;
  letter-spacing: -4px;
  font-weight: 950;
}

.hero-affida p {
  max-width: 760px;
  font-size: 22px;
  line-height: 1.7;
  color: rgba(255,255,255,.9);
}

.affida-section {
  padding: 80px 0;
  background: #f5f5f5;
}

.affida-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 340px;
  gap: 34px;
}

.affida-card,
.sidebar-card {
  background: #fff;
  border-radius: 30px;
  padding: 42px;
  box-shadow: 0 20px 55px rgba(0,0,0,.06);
}

.affida-card h2 {
  margin: 0 0 28px;
  font-size: 48px;
  line-height: 1;
  color: #2f1d19;
}

.affida-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 22px;
}

.affida-box {
  padding: 26px;
  border-radius: 24px;
  background: #faf7f2;
}

.affida-box h3 {
  margin: 0 0 12px;
  color: #2f1d19;
}

.affida-box p {
  margin: 0;
  color: #62717b;
  line-height: 1.7;
}

.affida-form {
  margin-top: 20px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 20px;
}

.form-full {
  margin-top: 20px;
}

.affida-form label {
  display: block;
  margin-bottom: 10px;
  font-weight: 700;
  color: #2f1d19;
}

.affida-form input,
.affida-form textarea,
.affida-form select {
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 18px;
  padding: 16px 18px;
  font-size: 16px;
}

.privacy-check {
  display: flex !important;
  gap: 10px;
  align-items: center;
  margin-top: 24px;
}

.btn-affida,
.sidebar-card a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-top: 24px;
  border: 0;
  border-radius: 999px;
  padding: 16px 30px;
  background: linear-gradient(135deg,#f4b000,#ff7a18);
  color: #2f1d19;
  text-decoration: none;
  font-weight: 900;
  cursor: pointer;
}

.sidebar-card h3 {
  margin-top: 0;
  font-size: 32px;
  color: #2f1d19;
}

.sidebar-card p,
.sidebar-card li {
  color: #5f707a;
  line-height: 1.7;
}

.sidebar-card ul {
  padding: 0;
  margin: 22px 0;
  list-style: none;
}

@media (max-width: 900px) {

  .affida-layout,
  .form-grid,
  .affida-grid {
    grid-template-columns: 1fr;
  }

  .hero-affida h1 {
    font-size: 56px;
    letter-spacing: -2px;
  }

  .affida-card,
  .sidebar-card {
    padding: 26px;
  }

  .affida-card h2 {
    font-size: 36px;
  }
}

.hp-field {
  position: absolute !important;
  left: -99999px !important;
  top: -99999px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.home-territory-section {
  background: #fff;
  padding: 90px 0;
}

.home-territory-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.4fr);
  gap: 58px;
  align-items: center;
}

.home-territory-copy h2 {
  color: #2f1d19;
  font-size: clamp(42px, 5.5vw, 78px);
  line-height: .92;
  letter-spacing: -3px;
  font-weight: 950;
  margin: 16px 0 28px;
}

.home-territory-copy p {
  color: #766b67;
  font-size: 21px;
  line-height: 1.6;
  font-weight: 650;
  max-width: 560px;
  margin-bottom: 32px;
}

.home-territory-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.home-territory-card {
  min-height: 290px;
  border-radius: 34px;
  padding: 34px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  box-shadow: 0 20px 60px rgba(47,29,25,.12);
  transition: transform .25s ease, box-shadow .25s ease;
  overflow: hidden;
  position: relative;
}

.home-territory-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 28px 75px rgba(47,29,25,.18);
}

.home-territory-card.red {
  background: linear-gradient(145deg, #b93620, #e8551c);
}

.home-territory-card.orange {
  background: linear-gradient(145deg, #f4b000, #ff7a18);
}

.home-territory-card.dark {
  background: linear-gradient(145deg, #2f1d19, #743326);
}

.home-territory-card span {
  position: absolute;
  top: 26px;
  left: 30px;
  color: rgba(255,255,255,.42);
  font-size: 46px;
  font-weight: 950;
  letter-spacing: -2px;
}

.home-territory-card h3 {
  color: #fff;
  font-size: 34px;
  line-height: 1;
  margin: 0 0 14px;
  font-weight: 950;
  letter-spacing: -1px;
}

.home-territory-card.orange h3 {
  color: #2f1d19;
}

.home-territory-card p {
  color: rgba(255,255,255,.82);
  font-size: 16px;
  line-height: 1.45;
  font-weight: 700;
  margin: 0;
}

.home-territory-card.orange p {
  color: rgba(47,29,25,.72);
}

@media (max-width: 1000px) {
  .home-territory-grid {
    grid-template-columns: 1fr;
  }

  .home-territory-cards {
    grid-template-columns: 1fr;
  }

  .home-territory-card {
    min-height: 210px;
  }
}

.home-territory-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.home-territory-card {
  position: relative;
  min-height: 340px;
  border-radius: 34px;
  overflow: hidden;
  text-decoration: none;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: end;
  box-shadow: 0 20px 60px rgba(47,29,25,.12);
  transition: transform .3s ease, box-shadow .3s ease;
}

.home-territory-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 28px 80px rgba(47,29,25,.18);
}

.territory-card-overlay {
  position: absolute;
  inset: 0;
  opacity: .88;
  transition: opacity .25s ease;
}

.home-territory-card:hover .territory-card-overlay {
  opacity: .72;
}

.territory-card-overlay.red {
  background: linear-gradient(145deg, #b93620, #e8551c);
}

.territory-card-overlay.orange {
  background: linear-gradient(145deg, #f4b000, #ff7a18);
}

.territory-card-overlay.dark {
  background: linear-gradient(145deg, #2f1d19, #743326);
}

.home-territory-card span {
  position: absolute;
  top: 24px;
  left: 28px;
  z-index: 3;
  color: rgba(255,255,255,.35);
  font-size: 48px;
  font-weight: 950;
  letter-spacing: -2px;
}

.territory-card-content {
  position: relative;
  z-index: 3;
  padding: 32px;
}

.territory-card-content h3 {
  color: #fff;
  font-size: 38px;
  line-height: .95;
  margin: 0 0 14px;
  font-weight: 950;
  letter-spacing: -1px;
}

.territory-card-content p {
  color: rgba(255,255,255,.9);
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
  font-weight: 700;
}

@media (max-width: 1000px) {

  .home-territory-cards {
    grid-template-columns: 1fr;
  }

  .home-territory-card {
    min-height: 240px;
  }
}

/* HOME TERRITORIO */

.home-territory-section {
  background: #fff;
  padding: 110px 0;
}

.territory-heading-center {
  text-align: center;
  margin-bottom: 60px;
}

.territory-heading-center h2 {
  max-width: 1100px;
  margin: 18px auto 24px;
  color: #2f1d19;
  font-size: clamp(52px, 6vw, 92px);
  line-height: .92;
  letter-spacing: -4px;
  font-weight: 950;
}

.territory-heading-center p {
  max-width: 900px;
  margin: 0 auto;
  color: #746963;
  font-size: 22px;
  line-height: 1.7;
  font-weight: 650;
}

.territory-full-cards {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
  padding: 0 40px;
}

.territory-full-card {
  position: relative;
  min-height: 540px;
  border-radius: 38px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: end;
  text-decoration: none;
  box-shadow: 0 28px 80px rgba(47,29,25,.12);
  transition:
    transform .35s ease,
    box-shadow .35s ease;
}

.territory-full-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 38px 90px rgba(47,29,25,.18);
}

.territory-full-overlay {
  position: absolute;
  inset: 0;
  opacity: .82;
  transition: opacity .3s ease;
}

.territory-full-card:hover .territory-full-overlay {
  opacity: .65;
}

.territory-full-overlay.red {
  background: linear-gradient(180deg, rgba(0,0,0,.1), #b93620);
}

.territory-full-overlay.orange {
  background: linear-gradient(180deg, rgba(0,0,0,.1), #ff9800);
}

.territory-full-overlay.dark {
  background: linear-gradient(180deg, rgba(0,0,0,.1), #2f1d19);
}

.territory-full-content {
  position: relative;
  z-index: 3;
  padding: 38px;
}

.territory-full-content span {
  display: block;
  margin-bottom: 16px;
  color: rgba(255,255,255,.55);
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 2px;
}

.territory-full-content h3 {
  margin: 0 0 18px;
  color: #fff;
  font-size: 48px;
  line-height: .95;
  letter-spacing: -2px;
  font-weight: 950;
}

.territory-full-content p {
  margin: 0;
  color: rgba(255,255,255,.92);
  font-size: 17px;
  line-height: 1.6;
  font-weight: 650;
}

.territory-bottom-btn {
  margin-top: 55px;
  text-align: center;
}

.territory-bottom-btn .btn {
  padding: 18px 34px;
  border-radius: 999px;
  font-size: 16px;
}

@media (max-width: 1100px) {

  .territory-full-cards {
    grid-template-columns: 1fr;
    padding: 0 20px;
  }

  .territory-full-card {
    min-height: 340px;
  }

  .territory-heading-center h2 {
    font-size: 54px;
    letter-spacing: -2px;
  }

  .territory-heading-center p {
    font-size: 18px;
  }

  .territory-full-content h3 {
    font-size: 40px;
  }
}
