/* ---
-------------------------------------------------------- */
.wp-cta-section .wp-block-media-text {
  max-width: 100% !important;
}

.wp-cta-section .wp-block-media-text .wp-block-media-text__media {
  height: 100% !important;
}

.wp-cta-section .wp-block-media-text .wp-block-media-text__media img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover;
}

.wp-cta-section .wp-block-media-text .wp-block-media-text__content {
  padding-left: var(--wp--custom--spacing--outer);
  padding-right: var(--wp--custom--spacing--outer);
  max-width: 860px;
}

/* ---
-------------------------------------------------------- */
body.admin-bar:has(.wp-block-header-media-cover) .wp-block-header {
  top: 32px;
}

header.block-editor-block-list__block:has(.header-transparent) {
  position: absolute !important;
  width: 100%;
  z-index: 999;
  min-height: 110px;
}

body:has(.wp-block-header-media-cover) .wp-block-header {
  position: absolute;
  background: transparent !important;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 9;
}

body:has(.wp-block-header-media-cover) .wp-block-header::before {
  display: none;
}

body:has(.wp-block-header-media-cover) .wp-block-header .wp-block-navigation__responsive-container-open svg {
  display: block;
}

/* ---
-------------------------------------------------------- */
.wp-block-landing-header .wp-block-heading .last-item {
  display: block;
  color: var(--wp--preset--color--button-color-secondary);
}

.wp-block-landing-header .wp-header-main-image {
  position: relative;
  margin-top: 35px;
}

.wp-block-landing-header .wp-header-main-image .main-image-wrapper {
  padding-inline: 10%;
  margin: 0;
}

.wp-block-landing-header .wp-header-main-image .main-image-wrapper img {
  min-height: 350px;
  object-fit: cover;
}

.wp-block-landing-header .wp-header-main-image .wp-float-card {
  position: absolute;
  top: 10%;
  padding: 14px 21px;
  box-shadow: 0px 0px 80px -15px rgba(142, 132, 133, 0.25);
  margin: 0;
}

.wp-block-landing-header .wp-header-main-image .wp-float-card.card-2 {
  right: 0%;
  left: auto;
  bottom: 10%;
  top: auto;
}

/* ---
-------------------------------------------------------- */
.wp-footer-widgets {
  padding-top: var(--wp--custom--spacing--block-footer-gap);
  padding-bottom: var(--wp--custom--spacing--block-footer-gap);
}

.wp-footer-widgets .wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
  position: relative;
  padding: 3px 0;
}

.wp-block-footer.wp-block-site-generator {
  font-size: var(--wp--preset--font-size--extra-small);
  margin-top: 0;
  padding-top: var(--wp--custom--spacing--block-footer-gap);
  position: relative;
}

.wp-block-footer.wp-block-site-generator:before {
  content: "";
  background: var(--wp--preset--color--dark-color);
  height: 1px;
  left: 0;
  opacity: 0.1;
  position: absolute;
  top: 0;
  width: 100%;
}

.wp-block-footer.wp-block-site-generator a {
  text-decoration: none;
}

.wp-block-footer.wp-block-site-generator a:hover,
.wp-block-footer.wp-block-site-generator a:focus {
  color: var(--wp--preset--color--link-color);
}

.wp-block-footer .wp-block-widget:not(:last-child),
.wp-block-footer .wp-block-widget>*:not(:last-child),
.wp-block-footer .wp-block-latest-posts__list>li:not(:last-child) {
  margin-bottom: var(--wp--custom--spacing--extra-small);
}

.wp-block-widget-area .wp-block-widget figure {
  line-height: 0;
  margin-bottom: 0;
}

.wp-footer-widgets .wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: var(--wp--preset--color--title);
}

.wp-footer-widgets .wp-block-navigation.is-vertical {
  gap: 0.45rem;
}

.wp-footer-widgets .wp-block-navigation.is-horizontal {
  gap: 2.45rem;
}

.wp-block-buttons.back-to-top {
  position: absolute;
  right: 0;
  top: -60px;
  margin: 0;
}

/** top scroll button **/
.back-to-top .wp-element-button {
  border-radius: 5px;
  font-weight: 500;
  margin: 0;
  padding: 10px 22px 10px 45px;
  background-color: var(--wp--preset--color--background) !important;
  border: none !important;
  color: var(--wp--preset--color--foreground) !important;
  font-size: 16px;
  padding: 10px 22px 10px 45px;
}

.back-to-top .wp-element-button::before {
  content: '';
  background: url(assets/images/arrow-top.svg) no-repeat center;
  background-size: contain;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  /* stays centered */
  opacity: 1;
  left: 18px;
  pointer-events: none;
}

/* Animation */
@keyframes floatUpSmooth {
  0% {
    transform: translateY(-50%);
  }

  20% {
    opacity: 1;
  }

  80% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: translateY(-100%);
  }
}

.wp-block-footer:not(.bottom-footer).wp-block-site-generator>div {
  gap: 0.25rem 0.5rem;
}

/* Trigger the animation on hover */
.back-to-top .wp-element-button:hover::before {
  animation: floatUpSmooth 1.2s ease-in-out infinite;
}

.wp-block-footer-phone,
.wp-block-footer-location {
  display: flex;
}

.wp-block-footer-phone svg,
.wp-block-footer-location svg {
  width: 38px;
  flex-shrink: 0;
  margin-right: 21px !important;
  height: 38px;
  fill: var(--wp--preset--color--soft-terracotta);
}

.wp-block-footer-phone .wp-text-group,
.wp-block-footer-location .wp-text-group {
  flex: 1;
  margin: 0;
}

.wp-block-footer-phone svg {
  position: relative;
  top: -4px;
}

/* ---
-------------------------------------------------------- */
/* --- Header Media
-------------------------------------------------------- */
.wp-block-header-media {
  overflow: hidden;
}

.wp-block-header-media .wp-block-cover.wp-block-header-media-cover {
  height: 100vh;
  padding: 0;
  position: relative;
}

.wp-block-header-media .wp-block-cover.wp-block-header-media-cover::after {
  position: absolute;
  top: auto !important;
  bottom: 0 !important;
  left: 0;
  width: 100%;
  height: 50%;
  content: '';
  z-index: 3;
  background: linear-gradient(0deg, rgba(24, 24, 24, 0.72) 0%, rgba(33, 31, 31, 0) 100%);
}

.wp-block-header-media .wp-block-cover.wp-block-header-media-cover .wp-block-cover__inner-container {
  position: absolute;
  bottom: 12%;
  top: auto;
  transform: none;
  left: auto;
  z-index: 9;
}

.wp-block-header-media .wp-block-cover.wp-block-header-media-cover .wp-block-cover__inner-container .wp-block-button.is-style-plain .wp-block-button__link::before,
.wp-block-header-media .wp-block-cover.wp-block-header-media-cover .wp-block-cover__inner-container .wp-block-button.is-style-plain:before {
  background-color: var(--wp--preset--color--light);
}

.wp-block-header-media .wp-block-cover.wp-block-header-media-cover .wp-block-cover__inner-container .wp-block-button.is-style-plain:after {
  border: 0.125rem solid var(--wp--preset--color--light);
  border-bottom: 0;
  border-left: 0;
}

.wp-block-header-media .wp-block-cover.wp-block-header-media-cover .heading-content-wrapper>* {
  max-width: 900px;
}

.wp-block-header-media.has-cover-image .alignwide>* {
  max-width: var(--wp--style--global--wide-size);
  padding-right: var(--wp--style--root--padding-right);
  padding-left: var(--wp--style--root--padding-left);
}

.wp-block-header-media .alignwide>* {
  max-width: 1000px;
  margin-inline: auto;
}

.wp-block-header-media .wp-block-star-ratings {
  line-height: 1;
}

.wp-block-header-media .wp-block-cover__image-background {
  position: relative;
}

.wp-block-header-media .wp-block-cover__inner-container {
  position: absolute;
  left: 50%;
  top: 15%;
  transform: translateX(-50%);
}

.wp-block-header-media .wp-hero-image-wrapper {
  position: relative;
  margin-top: 42px;
  background-size: 125%;
  background-position: center bottom;
}

.wp-block-header-media .wp-hero-image-wrapper::before {
  content: '';
  background: url(../images/right-splash.svg);
  width: 60vw !important;
  height: 60vw;
  background-size: 100%;
  position: absolute;
  top: -35%;
  left: -15%;
  background-repeat: no-repeat;
  filter: drop-shadow(0 1000px 0 var(--wp--preset--color--shape-bg));
  transform: translateY(-1000px);
}

.wp-block-header-media .wp-hero-image-wrapper .wp-centered-hero-image {
  width: 64vw !important;
  height: 32vw;
  border-top-left-radius: 32vw;
  border-top-right-radius: 32vw;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  margin: 0 auto !important;
  padding: 0;
  overflow: hidden;
  max-width: 100%;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-centered-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image {
  position: absolute;
  width: 13vw !important;
  height: 13vw;
  background-color: var(--wp--preset--color--icon-bg);
  border-radius: 50%;
  overflow: hidden;
  padding: 0;
  margin: 0 !important;
  z-index: 1;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image figure {
  margin: 0 !important;
  width: 100%;
  height: 100%;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image figure>* {
  margin: 0 !important;
  width: 100%;
  height: 100%;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-first {
  top: 0vw;
  left: -1vw;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-second {
  top: -4vw;
  right: 6vw;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-third {
  top: auto;
  right: -4vw;
  bottom: 4vw;
}

.wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 600px) {
  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-second {
    top: -5vw;
    right: 7vw;
  }

  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-third {
    right: -3vw;
    bottom: 4vw;
  }

  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-first {
    top: -1vw;
    left: 0vw;
  }
}

@media (min-width: 768px) {
  .wp-block-header-media .wp-hero-image-wrapper {
    margin-top: 56px;
  }

  .wp-block-header-media .wp-hero-image-wrapper::before {
    width: 40vw !important;
    height: 40vw;
  }
}

@media (min-width: 1366px) {
  .wp-block-header-media .wp-hero-image-wrapper {
    margin-top: 70px;
  }
}

@media (min-width: 1600px) {
  .wp-block-header-media .wp-hero-image-wrapper .wp-centered-hero-image {
    width: 918px !important;
    height: 459px;
    border-top-left-radius: 459px;
    border-top-right-radius: 459px;
  }

  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-first {
    top: 0vw;
    left: -1vw;
  }

  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-second {
    top: -4vw;
    right: 5.5vw;
  }

  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image.image-third {
    right: -3vw;
    bottom: 4vw;
  }

  .wp-block-header-media .wp-hero-image-wrapper .wp-circle-float-image {
    width: 195px !important;
    height: 195px;
  }
}

/** header with masked iage **/
.wp-block-header-media.self-created-masked-image .wp-hero-image-wrapper .wp-centered-hero-image {
  border-radius: 0;
  overflow: initial;
}

.wp-block-header-media.self-created-masked-image .wp-hero-image-wrapper .wp-centered-hero-image .wp-block-image {
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.wp-block-header-media.self-created-masked-image .wp-hero-image-wrapper .wp-centered-hero-image .wp-block-image img {
  width: auto;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  margin: 0 auto;
  align-self: flex-end;
}

.wp-block-header-media.self-created-masked-image .wp-hero-image-wrapper .wp-centered-hero-image .wp-block-image>div {
  height: 100%;
}

/** landing page hero section **/
.wp-block-landing-header {
  position: relative;
  overflow: hidden;
}

.wp-block-landing-header::before {
  content: '';
  background: url(../images/right-splash.svg);
  width: 30vw !important;
  height: 60vw;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  filter: drop-shadow(0 1000px 0 var(--wp--preset--color--shape-bg));
  transform: translateY(-1000px);
  min-width: 400px !important;
  opacity: 0.3;
}

.wp-block-landing-header .wp-block-column {
  position: relative;
  z-index: 3;
}

.header-media-inner-post.category-header .wp-block-group.wp-block-header-images figure.wp-block-image.wp-block-header-image-first {
  top: 0;
}

/* ---
-------------------------------------------------------- */
.wp-block-entry-content {
  padding: var(--wp--custom--spacing--extra-small) !important;
}

.wp-block-featured-articles .wp-block-post-group {
  height: 100%;
  overflow: hidden;
  background-color: var(--wp--preset--color--background);
}

/* ---
-------------------------------------------------------- */
.wp-block-package-column {
  transition: all 0.4s;
}

.wp-block-package-column:hover {
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 50px;
  transform: translateY(-5px);
}

.wp-block-package-column p {
  margin-bottom: 21px;
}

.wp-block-package-column .wp-block-list {
  padding: 0;
  margin: 0;
}

.wp-block-package-column .wp-block-list li {
  margin-top: 10px;
  opacity: 0.925;
  list-style: none;
  position: relative;
  padding-left: 30px;
}

.wp-block-package-column .wp-block-list li::before {
  position: absolute;
  left: 5px;
  top: 5px;
  content: '';
  width: 6px;
  height: 12px;
  border-bottom: 1.5px solid green;
  border-right: 1.5px solid green;
  transform: rotate(45deg);
}

.wp-block-package-column .wp-block-list.wp-block-not-available {
  opacity: 0.5;
  position: relative;
}

.wp-block-package-column .wp-block-list.wp-block-not-available li {
  position: relative;
}

.wp-block-package-column .wp-block-list.wp-block-not-available li:before {
  content: '';
  width: 16px;
  height: 1px;
  background: red;
  position: absolute;
  top: 13px;
  left: 0;
  transform: rotate(135deg);
  border: none;
}

.wp-block-package-column .wp-block-list.wp-block-not-available li:after {
  content: '';
  width: 16px;
  height: 1px;
  background: red;
  position: absolute;
  top: 13px;
  left: 0;
  transform: rotate(45deg);
}

.wp-block-package-column .wp-element-button:hover {
  background-color: transparent !important;
}

.wp-professional-block {
  position: relative;
}

.wp-professional-block .wp-block-group.wp-block-package-heading {
  position: initial;
}

.wp-professional-block .wp-float-title {
  position: absolute;
  top: -22px;
  left: 50%;
  transform: translateX(-50%);
  padding: 10px 20px !important;
}

.wp-professional-block .wp-block-heading {
  margin: 0;
}

.wp-professional-block .wp-float-title+.wp-block-heading {
  margin-top: 7px;
}

/* --- Block Media Quries
-------------------------------------------------------- */
body {
  display: block;
}

/* --- > 480px
-------------------------------------------------------- */
@media screen and (min-width: 30em) {

  .wc-block-grid.has-4-columns .wc-block-grid__product,
  .wc-block-grid.has-3-columns .wc-block-grid__product {
    flex: 1 0 calc(50% - (1rem / 2));
    /* Subtract total horizontal gap per item */
    max-width: calc(50% - (1rem / 2));
  }

  .wc-block-grid.has-4-columns .wc-block-grid__product:nth-child(2n),
  .wc-block-grid.has-4-columns .wc-block-grid__product:nth-child(odd),
  .wc-block-grid.has-3-columns .wc-block-grid__product:nth-child(2n),
  .wc-block-grid.has-3-columns .wc-block-grid__product:nth-child(odd) {
    padding: 0;
  }

  .wc-block-grid.has-4-columns .wc-block-grid__products,
  .wc-block-grid.has-3-columns .wc-block-grid__products {
    display: flex;
    gap: 1rem;
  }

  .wp-block-column.wp-block-package-column.wp-professional-block {
    padding-top: 42px !important;
    margin-top: 21px;
  }
}

/* --- > 782px
-------------------------------------------------------- */
@media screen and (min-width: 48.875em) {
  .wp-block-landing-header .wp-header-main-image {
    margin-top: 0;
  }

  .wp-block-landing-header p {
    max-width: 560px;
  }

  .left-content-right-media .wp-block-columns,
  .left-media-right-content .wp-block-columns {
    gap: 3rem !important;
    align-items: center !important;
  }
}

/* --- > 1200px
-------------------------------------------------------- */
@media screen and (min-width: 75em) {
  .wp-block-column.wp-block-package-column {
    padding-inline: 42px 56px !important;
  }

  .wp-block-landing-header::before {
    opacity: 0.3;
    top: -12%;
    width: 40vw !important;
  }
}

/* --- > 1400px
-------------------------------------------------------- */
@media screen and (min-width: 87.5em) {
  .wp-block-landing-header .wp-header-main-image .main-image-wrapper {
    padding-right: 0;
  }

  .wp-block-landing-header .wp-header-main-image .wp-float-card.card-2 {
    right: -10%;
  }
}

/* --- > 1600px
-------------------------------------------------------- */
@media screen and (min-width: 100em) {
  .wp-block-landing-header::before {
    opacity: 0.6;
    width: 30vw !important;
  }

  .left-content-right-media .wp-block-columns,
  .left-media-right-content .wp-block-columns {
    gap: 7rem !important;
  }

  .wp-block-column.wp-block-package-column .wp-block-list {
    padding-inline: 15px !important;
  }
}
