
/* =========================================================
   V27.0 — Homepage final CTA + Google Maps
   ========================================================= */

.home-end270-cta{
  padding:34px 0 22px;
  background:#f6f9fd;
}
.home-end270-cta__card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
  padding:28px 32px;
  border-radius:18px;
  background:
    radial-gradient(circle at -3% 130%,rgba(255,255,255,.08) 0 130px,transparent 131px),
    linear-gradient(135deg,#06366d 0%,#0863bd 100%);
  box-shadow:0 14px 30px rgba(5,54,110,.12);
  color:#fff;
}
.home-end270-cta__copy>span{
  display:inline-flex;
  align-items:center;
  color:#cce7ff;
  font-size:13px;
  font-weight:800;
}
.home-end270-cta__copy>span:before{
  content:"";
  width:28px;
  height:1px;
  margin-left:8px;
  background:#8ac9ff;
}
.home-end270-cta h2{
  margin:7px 0;
  color:#fff;
  font-size:28px !important;
  line-height:1.45 !important;
}
.home-end270-cta p{
  margin:0;
  max-width:760px;
  color:#e4f0fb !important;
  font-size:15px !important;
  line-height:1.85 !important;
}
.home-end270-cta__actions{
  display:flex;
  gap:9px;
  align-items:center;
}
.home-end270-cta__actions a{
  min-height:43px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 17px;
  border-radius:9px;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
  transition:.2s ease;
}
.home-end270-cta__primary{
  background:#fff;
  color:#0755a0;
}
.home-end270-cta__secondary{
  border:1px solid rgba(255,255,255,.38);
  background:rgba(255,255,255,.06);
  color:#fff;
}
.home-end270-cta__actions a:hover{
  transform:translateY(-2px);
}

/* Map */
.home-map270{
  padding:34px 0 52px;
  background:#f6f9fd;
}
.home-map270__head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  margin-bottom:16px;
}
.home-map270__head h2{
  margin:5px 0 7px;
  color:#173a61;
  font-size:29px !important;
}
.home-map270__head p{
  max-width:720px;
  margin:0;
  color:#536b80 !important;
  font-size:15px !important;
}
.home-map270__layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);
  gap:15px;
  align-items:stretch;
}
.home-map270__map,
.home-map270__info{
  border:1px solid #dce7f0;
  border-radius:17px;
  background:#fff;
  box-shadow:0 9px 25px rgba(5,37,81,.045);
}
.home-map270__map{
  min-height:390px;
  overflow:hidden;
}
.home-map270__map iframe{
  display:block;
  width:100%;
  height:100%;
  min-height:390px;
  border:0;
}
.home-map270__placeholder{
  min-height:390px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:30px;
  background:
    linear-gradient(rgba(10,95,177,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(10,95,177,.04) 1px,transparent 1px),
    #f8fbfe;
  background-size:28px 28px;
  text-align:center;
}
.home-map270__placeholder>span{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eaf4ff;
  color:#0a61b7;
  font-size:22px;
}
.home-map270__placeholder strong{
  color:#294a69;
  font-size:15px;
}
.home-map270__placeholder small{
  color:#7a8c9c;
  font-size:12px;
}
.home-map270__info{
  padding:23px;
}
.home-map270__kicker{
  color:#0a62b7;
  font-size:12px;
  font-weight:900;
}
.home-map270__info h3{
  margin:5px 0 14px;
  color:#173a61;
  font-size:18px;
  line-height:1.5;
}
.home-map270__details{
  display:grid;
}
.home-map270__details>div{
  display:grid;
  grid-template-columns:37px minmax(0,1fr);
  gap:9px;
  align-items:center;
  padding:10px 0;
  border-top:1px solid #edf2f6;
}
.home-map270__details i{
  width:35px;
  height:35px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#edf5ff;
  color:#0b63b7;
  font-style:normal;
}
.home-map270__details p{
  margin:0;
}
.home-map270__details small,
.home-map270__details strong{
  display:block;
}
.home-map270__details small{
  color:#788b9d !important;
  font-size:12px !important;
}
.home-map270__details strong{
  margin-top:2px;
  color:#344f68;
  font-size:13px;
  overflow-wrap:anywhere;
}
.home-map270__info>a{
  min-height:43px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:14px;
  border-radius:9px;
  background:linear-gradient(135deg,#0755a6,#0b6dce);
  color:#fff;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

@media(max-width:900px){
  .home-end270-cta__card{
    grid-template-columns:1fr;
  }
  .home-end270-cta__actions{
    justify-content:flex-start;
  }
  .home-map270__layout{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .home-end270-cta{
    padding-top:24px;
  }
  .home-end270-cta__card{
    padding:22px 18px;
  }
  .home-end270-cta h2{
    font-size:23px !important;
  }
  .home-end270-cta p{
    font-size:14px !important;
  }
  .home-end270-cta__actions{
    flex-direction:column;
    align-items:stretch;
  }
  .home-end270-cta__actions a{
    width:100%;
  }
  .home-map270{
    padding:27px 0 40px;
  }
  .home-map270__head h2{
    font-size:24px !important;
  }
  .home-map270__map,
  .home-map270__map iframe,
  .home-map270__placeholder{
    min-height:310px;
  }
}
