.hero{
  padding:0;
  background:
    linear-gradient(rgba(7,95,94,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,95,94,.05) 1px,transparent 1px),
    linear-gradient(118deg,transparent 0 63%,rgba(7,95,94,.035) 63% 63.6%,transparent 63.6% 100%),
    radial-gradient(circle at 82% 48%,rgba(7,95,94,.10),transparent 32%),
    var(--paper);
  background-size:42px 42px,42px 42px,auto,auto,auto;
}
.hero::after{display:none}
.hero-inner{
  min-height:640px;
  padding:42px 0 60px;
  grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr);
  gap:42px;
}
.hero-visual{
  position:relative;
  min-height:540px;
  display:grid;
  place-items:center;
}
.hero-map{
  position:relative;
  width:100%;
  max-width:540px;
  margin:0;
  padding:8px;
}
.hero-map::before,.hero-map::after{
  content:"";
  position:absolute;
  width:72px;
  height:72px;
  pointer-events:none;
}
.hero-map::before{
  left:0;
  top:0;
  border-left:2px solid rgba(7,95,94,.36);
  border-top:2px solid rgba(7,95,94,.36);
}
.hero-map::after{
  right:0;
  bottom:0;
  border-right:2px solid rgba(7,95,94,.36);
  border-bottom:2px solid rgba(7,95,94,.36);
}
.hero-map-image{
  position:relative;
  z-index:1;
  width:100%;
  height:auto;
  filter:drop-shadow(0 24px 28px rgba(6,63,63,.18));
}
.hero-map figcaption{
  position:absolute;
  z-index:2;
  right:-8px;
  bottom:24px;
  min-width:215px;
  padding:14px 17px;
  border-left:3px solid var(--yellow);
  color:#fff;
  background:rgba(6,63,63,.94);
  box-shadow:0 14px 34px rgba(10,34,32,.18);
}
.hero-map figcaption span{
  display:block;
  color:#9fc1bc;
  font:700 10px/1.4 Georgia,serif;
  letter-spacing:.17em;
}
.hero-map figcaption strong{
  display:block;
  margin-top:3px;
  font-size:13px;
  letter-spacing:.08em;
}
.hero-map figcaption small{
  display:block;
  margin-top:2px;
  color:#c6d8d4;
  font-size:10px;
}
@media(max-width:980px){
  .hero-inner{grid-template-columns:1fr;padding-top:42px;gap:20px}
  .hero-visual{min-height:500px}
}
@media(min-width:821px) and (max-width:980px){
  .hero-inner{
    grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
    min-height:610px;
    padding:22px 0 42px;
    gap:24px;
  }
  .hero h1{font-size:46px}
  .hero-lead{font-size:15px}
  .hero-visual{min-height:460px}
  .hero-map figcaption{right:0;bottom:12px}
}
@media(min-width:681px) and (max-width:820px){
  .hero-inner{min-height:auto;padding:24px 0 48px}
}
@media(max-width:680px){
  .hero-inner{min-height:auto;padding:34px 0 50px}
  .hero-visual{min-height:410px}
  .hero-map{max-width:430px}
  .hero-map figcaption{right:0;bottom:6px;min-width:190px;padding:11px 14px}
  .hero-map figcaption strong{font-size:12px}
}

.section-head-services .heading-line{
  display:block;
}
@media(min-width:981px){
  .section-head-services{
    grid-template-columns:minmax(440px,.95fr) minmax(0,1.05fr);
    gap:52px;
  }
  .section-head-services .heading-line{
    white-space:nowrap;
  }
}
