h1,
h2,
h3,
h4 {
  font-weight: 840;
}
h1 > a,
h2 > a,
h3 > a,
h4 > a {
  font-weight: 760 !important;
}
h1,
h1 a,
h2,
h2 a,
h3,
h3 a,
h4,
h4 a {
  line-height: 1.2;
  color: var(--wp--preset--color--blue);
}

h3,
h3 a,
h4,
h4 a {
  font-weight: 700;
}

a {
  color: hsl(210, 60%, 35%);
  text-decoration: underline;
  text-underline-offset: 0.7px;
  text-decoration-thickness: 2px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
a:hover {
  text-decoration-thickness: 3px;
  text-underline-offset: 8px;
}

.site-header .header {
  position: relative;
}
.site-header .header .logo {
  position: absolute;
  top: 0;
  right: 80px;
}

.text-vertical {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.hero {
  grid-template-columns: 1fr 1fr !important;
}
.hero .hero__bg1 {
  grid-row: 1/3 !important;
  grid-column: 1 !important;
}
.hero .hero__bg2 {
  grid-row: 1/3 !important;
  grid-column: 2 !important;
}
.hero .hero__media img, .hero .hero__media-b img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 80vw;
  height: 600px;
}
.hero .hero__media {
  display: grid;
  z-index: 8;
  grid-row: 1 !important;
  grid-column: 1/3 !important;
  position: relative;
  align-self: center;
  justify-self: center;
  margin-top: 140px !important;
}
.hero .hero__media > * {
  grid-column: 1;
  grid-row: 1;
}
.hero .hero__media__title {
  font-weight: 900;
  -ms-flex-item-align: end;
      align-self: end;
  color: #fff;
  mix-blend-mode: color-dodge;
  opacity: 0.8;
  margin: 0 auto 0 var(--wp--preset--spacing--50) !important;
}
.hero .hero__media__pannel {
  position: absolute;
  right: -2vw;
  bottom: -80px;
  display: block;
  width: 200px;
  height: 600px;
  margin: 0;
  background-size: cover;
}
.hero .hero__media-b {
  position: relative;
  display: grid;
  z-index: 8;
  grid-row: 2 !important;
  grid-column: 1/3 !important;
  align-self: self-start;
  justify-self: center;
}
.hero .hero__media-b > * {
  grid-column: 1;
  grid-row: 1;
}
.hero .hero__media-b .hero__video video {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero .hero__media-b .hero__video iframe {
  display: block;
  width: var(--wp--style--global--content-size);
  height: 680px;
}
.hero .hero__media-b .hero__media__pannel {
  bottom: -30px;
  width: 120px;
  height: 500px;
}
.hero .hero__video {
  justify-self: center;
  position: relative;
}
.hero .hero__video video {
  height: 750px;
  width: var(--wp--style--global--content-size);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
}
.hero .hero__logo {
  z-index: 8;
  grid-row: 2;
  grid-column: 1;
  align-self: center;
  margin-left: calc((100vw - var(--wp--style--global--content-size)) / 2) !important;
}
.hero .hero__box {
  z-index: 8;
  grid-row: 1;
  grid-column: 2;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  color: var(--wp--preset--color--base);
  padding: 140px calc((100vw - var(--wp--style--global--content-size)) / 2) 0 var(--wp--preset--spacing--50);
}
.hero .hero__title {
  color: var(--wp--preset--color--base);
}
.hero .hero__box-bottom {
  z-index: 8;
  grid-row: 2;
  grid-column: 2;
  padding: 120px calc((100vw - var(--wp--style--global--content-size)) / 2) var(--wp--preset--spacing--50) var(--wp--preset--spacing--50);
  color: var(--wp--preset--color--base);
}

@media (max-width: 635px) {
  .home .hero h1.hero__media__title {
    color: var(--wp--preset--color--primary);
    grid-row: 2;
    mix-blend-mode: normal;
    opacity: 1;
    margin: 20px 0 0 !important;
  }
  .home .hero .hero__media__pannel {
    display: none;
  }
}
@media (max-width: 1500px) {
  :root {
    --wp--style--global--content-size: 88svw;
  }
  .hero .hero__media__pannel, .hero .hero__media-b .hero__media__pannel {
    width: 120px;
    height: 400px;
  }
}
@media (max-width: 500px) {
  .safe-svg-inside.safe-svg-inline,
  .safe-svg-inside.safe-svg-inline svg {
    width: auto !important;
    max-width: 100%;
  }
}
@media (max-width: 1500px) {
  .hero-cta .wp-block-group {
    padding: var(--wp--preset--spacing--60) !important;
  }
}
@media (max-width: 980px) {
  .hero {
    grid-template-columns: 1fr !important;
  }
  .hero .hero__bg1 {
    grid-column: 1 !important;
    grid-row: 2 !important;
    min-height: 400px !important;
  }
  .hero .hero__bg2 {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-height: auto !important;
  }
  .hero .hero__logo {
    display: none;
  }
  .hero .hero__media, .hero .hero__media-b {
    grid-row: 2 !important;
    grid-column: 1 !important;
    align-self: start;
    margin: -80px 0 80px !important;
  }
  .hero .hero__video video, .hero .hero__media-b .hero__video video {
    height: auto;
  }
  .hero .hero__video iframe, .hero .hero__media-b .hero__video iframe {
    height: 400px;
  }
  .hero__box, .hero .hero__box-bottom {
    grid-row: 1 !important;
    grid-column: 1 !important;
    margin: 140px 0 100px !important;
    padding-top: 0 !important;
  }
  .hero .hero__media__pannel {
    bottom: -50px;
    right: -3vw;
    width: 50vw;
    height: 100px;
  }
  .hero .hero__media-b .hero__media__pannel {
    display: none;
  }
  .hero-cta {
    grid-template-columns: 1fr !important;
  }
  .hero-cta .wp-block-group:nth-child(1) {
    grid-row: 2;
  }
  .hero-cta .wp-block-group:nth-child(2) {
    grid-row: 1;
  }
  .hero-image,
  .wp-block-cover.hero-image {
    min-height: 320px !important;
  }
}
.gmap iframe {
  display: block !important;
  width: 100%;
  height: 666px;
  margin: 0 !important;
}

@media (max-width: 768px) {
  .wp-block-group.grid-break {
    grid-template-columns: 1fr !important;
  }
  .wp-block-group.grid-break > .wp-block-group:nth-child(1) {
    grid-row: 2;
  }
  .wp-block-group.grid-break > .wp-block-group:nth-child(2) {
    grid-row: 1;
  }
}
.archive .rank-math-breadcrumb {
  text-align: center;
}

.has-background .rank-math-breadcrumb *,
.hero__box-bottom .rank-math-breadcrumb *,
.hero__box .rank-math-breadcrumb * {
  color: #fff !important;
  font-size: var(--wp--preset--font-size--small);
}
.has-background.has-secondary-background-color > .rank-math-breadcrumb *,
.hero__box-bottom.has-secondary-background-color > .rank-math-breadcrumb *,
.hero__box.has-secondary-background-color > .rank-math-breadcrumb * {
  color: #000 !important;
}

.rank-math-breadcrumb a {
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.rank-math-breadcrumb p {
  margin: 0;
}
.rank-math-breadcrumb .separator {
  padding: 0 4px;
}

.single-realizzazioni .place {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.single-realizzazioni .place::before {
  content: "\f3c5";
  font-family: var(--fa-style-family-sharp);
  font-weight: 300;
  font-size: 22px;
  line-height: 1;
}

.hero-image .rank-math-breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.btn-home a {
  display: grid;
  place-content: center;
  width: 140px;
  aspect-ratio: 1/1;
  font-size: 80px;
  font-weight: 100;
  line-height: 1;
  text-decoration: none;
  color: #fff;
  background-color: var(--wp--preset--color--primary);
  border: 4px solid var(--wp--preset--color--secondary);
  border-radius: 50%;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  margin-inline: auto;
}
.btn-home a:hover {
  color: #000;
  background-color: transparent;
  font-weight: 900;
}