html {
  scroll-behavior: smooth;
}

/* Scale Logo in Header for mobile views */
main p, main h1, main h2, main h3, main h4 {
  hyphens: auto;
}
main a {
  transition: all 0.45s;
  text-decoration-thickness: 0.05em !important;
  text-underline-offset: 0.15em;
  text-decoration-style: dotted;
}
main a:hover {
  color: var(--wp--preset--color--accent-4);
}
main ul.wp-block-list {
  padding-left: var(--wp--preset--spacing--40);
}

footer a {
  transition: all 0.45s;
  text-decoration-thickness: 0.05em !important;
  text-underline-offset: 0.15em;
  text-decoration-style: dotted;
}
footer a:hover {
  color: var(--wp--preset--color--accent-4);
}

.autohyphen {
  hyphens: auto;
}

.wp-block-button a.wp-block-button__link {
  transition: all 0.45s;
}
.wp-block-button a.wp-block-button__link:hover {
  color: var(--wp--preset--color--base) !important;
  background-color: var(--wp--preset--color--accent-4) !important;
}

/* Animations for details and accordeon blocks */
.wp-block-details::details-content {
  max-block-size: 0;
  opacity: 0;
  /* animation */
  transition: opacity 0.3s, max-block-size 0.2s linear, content-visibility 0.2s linear;
  transition-behavior: allow-discrete;
  overflow: hidden;
}
.wp-block-details[open]::details-content {
  opacity: 1;
  max-block-size: 80rem;
}

.wp-block-accordion .wp-block-accordion-item .wp-block-accordion-panel {
  transition-property: display, opacity, max-height;
  transition-duration: 0.65s;
  transition-timing-function: ease-in-out;
  transition-behavior: allow-discrete;
  opacity: 0;
}
.wp-block-accordion .wp-block-accordion-item.is-open .wp-block-accordion-panel {
  opacity: 1;
}
@starting-style {
  .wp-block-accordion .wp-block-accordion-item.is-open .wp-block-accordion-panel {
    opacity: 0;
  }
}

.stickyheader {
  height: 0px;
  overflow: visible;
  background: transparent;
}

.wp-block-group.headerrow .wp-block-site-logo img.custom-logo {
  width: 120px;
  filter: brightness(0) invert(1) drop-shadow(0 10px 20px rgba(0, 0, 0, 0.66));
}
.wp-block-group.headerrow .wp-block-navigation-overlay-close svg,
.wp-block-group.headerrow .wp-block-navigation__responsive-container-open svg {
  width: 90px !important;
  height: 90px !important;
  filter: brightness(0) invert(1) drop-shadow(0 5px 10px rgba(0, 0, 0, 0.75));
}
.wp-block-group.headerrow.wp-block-hidden-desktop .wp-block-site-logo img.custom-logo {
  width: 60px;
  filter: brightness(0) invert(1) drop-shadow(0 4px 8px rgba(0, 0, 0, 0.66));
}
.wp-block-group.headerrow.wp-block-hidden-desktop .wp-block-navigation-overlay-close svg,
.wp-block-group.headerrow.wp-block-hidden-desktop .wp-block-navigation__responsive-container-open svg {
  width: 45px !important;
  height: 45px !important;
  filter: brightness(0) invert(1) drop-shadow(0 3px 6px rgba(0, 0, 0, 0.75));
}

.headerrow {
  height: 0px;
}

.wp-block-group .rot10 {
  rotate: -10deg;
}
.wp-block-group .bluebutt {
  aspect-ratio: 1/1;
  width: 66%;
  max-width: 75%;
}
@media screen and (min-width: 1024px) {
  .wp-block-group .bluebutt {
    width: 40%;
    max-width: 40%;
  }
}

/* Gravity Forms Overrides */
.gform_wrapper.gravity-theme {
  font-family: var(--wp--preset--font-family--foundation-sans);
  font-size: var(--wp--preset--font-size--medium);
}
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme .gform-field-label--type-inline {
  font-size: var(--wp--preset--font-size--medium) !important;
  font-weight: 300;
  margin-bottom: 0;
}
.gform_wrapper.gravity-theme .ginput_complex label {
  font-size: var(--wp--preset--font-size--small) !important;
  padding-top: var(--wp--preset--spacing--20);
}
.gform_wrapper.gravity-theme .gfield_required,
.gform_wrapper.gravity-theme .gform_required_legend {
  font-size: var(--wp--preset--font-size--small) !important;
}
.gform_wrapper.gravity-theme .gform_footer input {
  font-size: var(--wp--preset--font-size--medium) !important;
}
.gform_wrapper.gravity-theme input[type=submit],
.gform_wrapper.gravity-theme .gform_next_button,
.gform_wrapper.gravity-theme .gform_previous_button {
  color: var(--wp--preset--color--base) !important;
  background-color: var(--wp--preset--color--accent) !important;
  font-weight: 400;
  font-size: var(--wp--preset--font-size--medium) !important;
  font-family: var(--wp--preset--font-family--foundation-sans);
  transition: all 0.45s;
  border-radius: 1rem;
  padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
  border: none;
}
.gform_wrapper.gravity-theme input[type=submit]:hover,
.gform_wrapper.gravity-theme .gform_next_button:hover,
.gform_wrapper.gravity-theme .gform_previous_button:hover {
  color: var(--wp--preset--color--base) !important;
  background-color: var(--wp--preset--color--accent-4) !important;
}
.gform_wrapper.gravity-theme .gform-page-footer {
  display: flex;
}
.gform_wrapper.gravity-theme .gform-page-footer .gform-button--width-full {
  flex-grow: 1;
}

/* GP Bookings overrides */
.gform_wrapper .gfield--input-type-gpb_booking_time select,
.gform_wrapper .gfield--input-type-gpb_booking_time .rdp-weekday,
.gform_wrapper .gfield--input-type-gpb_booking_time .rdp-day_button {
  font-size: var(--wp--preset--font-size--medium) !important;
}
.gform_wrapper .gfield--input-type-gpb_booking_time .gpb-booking-time-picker__slot-time {
  font-size: calc(var(--wp--preset--font-size--small) * 1.15) !important;
  font-weight: 400;
}