/**
 * Use in order to make a set of rules only apply above
 * or below a certain breakpoint.
 * Standard usage:

 @include breakpoint(tablet){
 	// Applies to screen sizes tablet and LARGER
 }

 @include breakpoint(tablet up){
 	// Applies to screen sizes tablet and LARGER
 }

 @include breakpoint(tablet down){
 	// Applies to screen sizes tablet and SMALLER
 }
 *
 **/
/**
 * Set custom typography sizes (e.g. header)
 * @param  {int} $size        font-size
 * @param  {int} $line-height line-height
 * @param  {int} $av          AV letter-spacing from XD
 * @return {void}
 */
/**
 * Converts a pixel, percentage, rem or em value to a unitless value based on a given font size. Ideal for working out unitless line heights.
 *
 * @param {Number} $value - Value to convert to a unitless line height
 * @param {Number} $base - The font size to use to work out the line height - defaults to $rem-font-size
 *
 * @return {Number} - Unitless number
 */
/**
 * AV letter spacing measurement convertor from Adobe applications
 * https://scotch.io/tutorials/converting-photoshop-letter-spacing-to-css
 */
/*
 * https://every-layout.dev/layouts/stack/
 */
.h-stack > * {
  margin-block: 0;
}
.h-stack > * + * {
  margin-top: var(--unit);
}
.h-stack--zero > * {
  margin-block: 0;
}
.h-stack--small > * {
  margin-block: 0;
}
.h-stack--small > * + * {
  margin-top: var(--unit-small);
}
.h-stack--xsmall > * {
  margin-block: 0;
}
.h-stack--xsmall > * + * {
  margin-top: var(--unit-xsmall);
}
.h-stack--medium > * {
  margin-block: 0;
}
.h-stack--medium > * + * {
  margin-top: var(--unit-medium);
}
.h-stack--large > * {
  margin-block: 0;
}
.h-stack--large > * + * {
  margin-top: var(--unit-large);
}
.h-stack--xlarge > * {
  margin-block: 0;
}
.h-stack--xlarge > * + * {
  margin-top: var(--unit-xlarge);
}

.h-stack2 > * {
  margin-block: 0;
}
.h-stack2 > * + * {
  margin-top: var(--unit2);
}
.h-stack2--small > * {
  margin-block: 0;
}
.h-stack2--small > * + * {
  margin-top: calc(var(--unit2) / 2);
}
.h-stack2--medium > * {
  margin-block: 0;
}
.h-stack2--medium > * + * {
  margin-top: calc(var(--unit2) * 2);
}

.h-stack-row > * {
  margin-inline: 0;
}
.h-stack-row > * + * {
  margin-left: var(--unit);
}

.h-stack-row--xsmall > * {
  margin-inline: 0;
}
.h-stack-row--xsmall > * + * {
  margin-left: var(--unit-xsmall);
}

:root,
body {
  --sht-tabs-with-content--tab-offset: 0;
}

.wp-block-sht-tabswithcontent {
  max-width: var(--constraint-mediumlarge);
}
.wp-block-sht-tabswithcontent + * {
  margin-top: var(--unit-large);
}
.wp-block-sht-tabswithcontent__buttons {
  display: flex;
}
.wp-block-sht-tabswithcontent__buttons > * + * {
  margin-left: var(--unit-small);
}
@media screen and (min-width: 80em) {
  .wp-block-sht-tabswithcontent__buttons > * + * {
    margin-left: var(--unit);
  }
}
.wp-block-sht-tabswithcontent__tabs {
  display: none;
}
.wp-block-sht-tabswithcontent__tabs.is--active {
  display: block;
}
@media screen and (min-width: 48em) {
  .wp-block-sht-tabswithcontent__tabs.is--active {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end;
  }
}

.wp-block-sht-tabwithcontent__content {
  padding-block: var(--unit);
}
.wp-block-sht-tabwithcontent__content > * {
  margin-block: 0;
}
.wp-block-sht-tabwithcontent__content > * + * {
  margin-top: var(--unit);
}
@media screen and (min-width: 48em) {
  .wp-block-sht-tabwithcontent__content {
    padding-block: var(--unit-medium);
  }
}
.wp-block-sht-tabwithcontent__content[aria-hidden=true] {
  display: none;
}
.wp-block-sht-tabwithcontent__header {
  padding: var(--unit-xsmall) var(--unit-small);
}
.wp-block-sht-tabwithcontent__tab {
  position: relative;
  flex-basis: 0;
  flex-grow: 1;
  color: var(--wp--preset--color--blue-sky);
  border-bottom: 2px solid rgba(0, 71, 125, 0.1);
}
.wp-block-sht-tabwithcontent__tab + * {
  margin-top: var(--unit);
}
.wp-block-sht-tabwithcontent__tab.is--open {
  color: var(--wp--preset--color--blue);
}
.wp-block-sht-tabwithcontent__title {
  text-align: center;
  padding-bottom: 0.8125rem;
}
.wp-block-sht-tabwithcontent__trigger {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.01);
  border: none;
  appearance: none;
  cursor: pointer;
}

.wp-block-sht-tabwithcontent__header {
  font-size: var(--font-size-bodytext-small);
}

.wp-block-sht-tabswithcontent {
  --tabswithcontent-tab-width: 100%;
}
.wp-block-sht-tabswithcontent__tabs {
  position: relative;
}
@media screen and (min-width: 48em) {
  .wp-block-sht-tabswithcontent__tabs::after {
    transition: all 300ms ease;
    content: "";
    display: block;
    position: absolute;
    left: var(--sht-tabs-with-content--tab-offset);
    bottom: 0;
    width: 100%;
    max-width: var(--tabswithcontent-tab-width);
    flex-basis: var(--tabswithcontent-tab-width);
    border-bottom: 2px solid var(--wp--preset--color--blue);
  }
}