/* mixins */
/* borders et al */
/* forms */
:root {
  --submenu-item-border: 1px solid rgba(255, 255, 255, 0.2);
}

/* widths et al */
/* using map.get */
/* used in scssconstants/constants/_sizes.scss: $deskwidth: page-width(tablet-landscape); */
/* end used in scssconstants/constants/_sizes.scss: $deskwidth: page-width(tablet-landscape); */
/* min or max or min and max using sass map */
/* eg */
/* section {
	@include mq(handheld-plus) {
		background: pink;
	}
	@include mq(handheld, max) {
		background: skyblue;
	}
	@include mq(handheld, large-tablet) {
		border: dashed 0.5em turquoise;
	}
} */
/* OR */
/* range using lists */
/* eg */
/* main > p {
	@include mqrange(small) {
		font-weight: bold;
	}
	@include mqrange(large) {
		text-decoration: darkorchid underline;
	}
	@include mqrange(desktop) {
		font-size: 0.85rem;
		font-family: sans-serif;
		text-transform: uppercase;
		color: hsl(0, 0%, 25%);
	}
} */
/* font layout */
/* line-height */
:root {
  --bodytextline: 1.4375;
}

/* forms */
/* $ffborderradius: $borderradius; // see decorations.scss */
/* 0.25em bottom padding to cater for 1.2 lineheight to allow for text wrap on buttons on mobile */
/* see scss/_mixins/_media-query-width.scss for page-width() function */
/* 1100 / 16 = 68.75 */
/* 69 * 16 = 1104 */
/* 69rem = 1104px */
/* 76rem = 1216px */
/* 77rem = 1232px */
/* 78rem = 1248px */
/* 88rem = 1408px */
/* 94rem = 1504px widest */
:root {
  --button-spacing: 1.25em;
  --ffbuttonpadding: 0.75em 2.75em;
  --image-icon-size: 126px;
  --mobilemaxwidth: 90vw;
  --deskwidth: 84rem;
  --pagecontentwidth: 82rem;
}
@media only screen and (max-width: 83.5rem) {
  :root {
    --breakoutwidth: 0;
    --pagesidemargin: 5vw;
  }
  :root .main-menu-styles > li .menu-expando-title .tbrtheme-menu-title, :root .main-menu-styles > li a {
    --ffbuttonpadding: 0.5em 0;
  }
  :root {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  :root {
    --breakoutwidth: min(3vw, 3rem);
    --pagesidemargin: 2vw;
    /* the properties you put in */
  }
}

body {
  --header-wrapper-height: clamp(66px, 140vw / 16, 116px);
  --banner-height: min(36vmax, 549px);
}
@media only screen and (min-width: 83.5625rem) {
  body {
    --header-wrapper-height: 171px;
    /* the properties you put in */
  }
}
body.home {
  --banner-height: null;
}
@media only screen and (min-width: 72.5625rem) {
  body.home {
    --banner-height: min(62vmax, 986px);
    /* the properties you put in */
  }
}

:root {
  --header-logo-width-aspect-ratio: 198;
  --header-logo-height-aspect-ratio: 91;
  --footer-logo-width-aspect-ratio: 198;
  --footer-logo-height-aspect-ratio: 91;
  --header-logo-width: calc(var(--header-logo-width-aspect-ratio) * 1px);
  --header-logo-height: calc(var(--header-logo-height-aspect-ratio) * 1px);
  --footer-logo-width: clamp(108px, 16vw, calc(var(--footer-logo-width-aspect-ratio) * 1px));
  --footer-logo-height: calc(var(--footer-logo-height-aspect-ratio) * 1px);
}
@media only screen and (max-width: 83.5rem) {
  :root {
    --header-logo-width: 108px;
    /* the properties you put in */
  }
}

/* hide / show */
/* for screen reader text */
/* for screen reader text */
/* for mobile menu */
/* for mobile menu */
/* tab into hidden articles */
/* tab into hidden articles and show them */
/* for logo */
/* before content so list items are still recognised by some screen readers */
/* @link https://www.scottohara.me/blog/2019/01/12/lists-and-safari.html */
/* for print css */
/* for list items */
/* form fields */
/* button base */
/* font mixins */
/* font families */
:root {
  --serif: Charter, 'Bitstream Charter', 'Sitka Text', Cambria, serif;
  --serif-antique: Superclarendon, 'Bookman Old Style', 'URW Bookman', 'URW Bookman L', 'Georgia Pro', Georgia, serif;
  --sans-serif: Inter, Roboto, 'Helvetica Neue', 'Arial Nova', 'Nimbus Sans', Arial, sans-serif;
  --monospace: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, 'DejaVu Sans Mono', Consolas, monospace;
  --cursive: 'Segoe Print', 'Bradley Hand', Chilanka, TSCu_Comic, casual, cursive;
  --emoji: 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

/* 300 */
/* used for wordpress login page */
/*
$fontbanner: var(--serif-antique);
$fonthead: var(--serif-antique);
$fontbutton: var(--monospace);
$fontbold: var(--monospace);
$fontfam: var(--monospace);
$fontnumberbutton: var(--monospace);
$fontsystem: var(--monospace); // used for wordpress login page
*/
/* form fields */
/* form fields & buttons */
/* buttons */
/* form fields */
/* buttons */
/*	https://developer.mozilla.org/en-US/docs/Web/CSS/mix-blend-mode

	https://codepen.io/thebabydino/pen/dyOvmRY

	difference
	exclusion
*/
/* form fields */
/* buttons */
/* form fields */
/* cater for pseudo element alt text support where there is some */
/* @include content("*", "splat"); */
/* mixins for ::before ::after placement and content */
/* eg */
/* .pseudo-element-absolute { */
/* 	@include sudoplace(3%, 3%, 3%, 3%, $content: "Hello World", $pos: before) { */
/* 		background-color: pink; */
/* 	} */
/* } */
/* buttons */
.tbrtheme-button-frosted {
  color: var(--light);
}
.tbrtheme-button-frosted .wp-block-heading {
  color: var(--light);
}
.tbrtheme-button-frosted a {
  inline-size: 100%;
  border-radius: var(--remsize15);
  border: var(--line-thickness, 1px) solid var(--light, var(--test));
  position: relative;
  isolation: isolate;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3em;
  font-size: var(--remsize16-25);
  font-weight: 500;
  line-height: 1.16;
  text-decoration: none;
  padding: 1em;
  overflow: hidden;
}
.tbrtheme-button-frosted a::before {
  content: " ";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  /* From https://css.glass */
  background: rgba(47, 43, 43, 0.063);
  backdrop-filter: blur(6px);
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(102, 102, 102, 0.08) 100%);
}
.tbrtheme-button-frosted a svg {
  --svg-inline: 0.8em;
  --svg-block: 0.8em;
}
@media (any-hover: hover) {
  .tbrtheme-button-frosted a :is(span, svg) {
    transform: translateY(0);
    transition: transform 200ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .tbrtheme-button-frosted a:hover :is(span, svg), .tbrtheme-button-frosted a:active :is(span, svg), .tbrtheme-button-frosted a:focus-visible :is(span, svg) {
    transform: translateY(-0.125em);
  }
  .tbrtheme-button-frosted a:hover, .tbrtheme-button-frosted a:active, .tbrtheme-button-frosted a:focus-visible {
    /* the properties you put in */
  }
}

/* form fields */
/* form fields */
/* for mixin includes */
/* for mixin includes */
/* for @mixin container-padding: */
/*	block padding

	no top padding
	@include container-padding($pt: null);

	no bottom padding
	@include container-padding($pb: null);
*/
/* layout mixins */
/* truncate text */
/* end truncate text */
/* layout mixins */
/* https://codepen.io/kevinpowell/pres/GRWYNLM */
/* layout mixins */
/* eg .test-even-columns { @include even-columns($size: tight); } */
/* layout mixins */
/* page grid layout */
/* layout mixins */
/* page content grid layout */
/* eg @include page-content-two-column-grid(32, 5); */
/* layout mixins */
/* page content grid layout */
/* layout mixins */
/* page content grid layout */
/* end page grid layout */
/* comments section with avatars layout - eg .comment row */
/*
min(
64px - avatar width,
50px - smallest mobile avatar width,
10vw - largest avatar width when text is zoomed - stop zoom from making image take up too much space
)
*/
/* https://www.youtube.com/watch?v=3yfswsnD2sw&t=1254s */
/*Keyword values
scroll-snap-type: none;
scroll-snap-type: x; Optional mandatory | proximity
scroll-snap-type: y; Optional mandatory | proximity
...
scroll-snap-type: block; Optional mandatory | proximity
scroll-snap-type: inline; Optional mandatory | proximity
...
scroll-snap-type: both;*/
/* mixin */
/* media queries */
/* prefers-reduced-motion: no-preference | reduce */
/* eg @include transition(transform, 250ms, linear) */
/* - scroll-behavior: auto | smooth; */
/* ie @include scroll */
/* form legend and labels */
/*
* 100 thin
* 200 extralight
* 300 light
* 400 regular
* 500 medium
* 600 semibold
* 700 bold
* 800 extrabold
* 900 black
*/
:root {
  --fwthin: 100;
  --fwextralight: 200;
  --fwlight: 300;
  --fwregular: 400;
  --fwmedium: 500;
  --fwsemibold: 600;
  --fwbold: 700;
  --fwextrabold: 800;
  --fwblack: 900;
  --fontweight300: 300;
  --fontweight400: 400;
  --fontweight500: 500;
  --fontweight600: 600;
  --fontweight700: 700;
  --bannerheadingweight: 500;
  --bannerweight: 400;
  --headingtwoweight: 500;
  --headingweight: 500;
  --bodytextweight: 400;
  --footerheadingweight: 500;
  --footertextweight: 300;
  --bodytextbold: 500;
  --bodytextstrong: 600;
  --linktextweight: 400;
  --inputfontweight: 400;
  --buttontextweight: 500;
  --cardtextweight: 400;
}

/*
.prev {
	@include triangle(2rem, inherit, left);
}

.next {
	@include triangle(2rem, inherit, right);
}

.up {
	@include triangle(2rem, inherit, up);
}

.down {
	@include triangle(2rem, inherit, down);
}
*/
.has-site-notice body.home {
  grid-template-rows: auto 171px 1fr auto;
}
.has-site-notice body.home .headertitle-sitemenu-wrapper {
  grid-row: 2;
}
.has-site-notice body.home main.site-content {
  grid-row: 2/span 2;
}
.has-site-notice body.home .tbrtheme-site-notice {
  background-color: var(--bg);
}

.tbrtheme-site-notice {
  z-index: 33;
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  padding-block: min(5vw, 2rem);
  border: 0.5em double var(--color-call-to-action, var(--test));
  background-color: var(--banner-bg);
  margin: 0.25em;
}
.tbrtheme-site-notice-wrapper {
  inline-size: 100%;
  grid-column: content;
  display: flex;
  gap: min(6vw, 3rem);
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-site-notice-wrapper {
    flex-direction: column;
    align-items: flex-start;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) {
  .tbrtheme-site-notice-wrapper {
    align-items: end;
    justify-content: center;
    /* the properties you put in */
  }
}
.tbrtheme-site-notice-content {
  --sentencemaxwidth: 55ch;
  text-wrap: balance;
}
.tbrtheme-site-notice-content :last-child {
  margin-block-end: 0;
}

dialog {
  display: none;
  /* user agent style */
  opacity: 0;
  transition-property: overlay display opacity;
  transition-duration: 1s;
  transition-behavior: allow-discrete;
  overscroll-behavior: contain;
}
dialog::backdrop {
  opacity: 0;
  transition-property: overlay display opacity;
  transition-duration: 1s;
  transition-behavior: allow-discrete;
  background-image: linear-gradient(-45deg, var(primary-700), var(primary-700));
}

dialog[open] {
  display: block;
  /* user agent style */
  opacity: 1;
}
@starting-style {
  dialog[open] {
    opacity: 0;
  }
}
dialog[open]::backdrop {
  opacity: 0.9;
}

dialog:popover-open {
  display: block;
  /* user agent style */
  opacity: 1;
}
@starting-style {
  dialog:popover-open {
    opacity: 0;
  }
}
dialog:popover-open::backdrop {
  opacity: 0.9;
}

@starting-style {
  dialog[open]::backdrop {
    opacity: 0;
  }
}
@starting-style {
  dialog:popover-open::backdrop {
    opacity: 0;
  }
}
/* @forward "image-map"; */
/* @forward "search"; // - search dialogue*/
.wp-block-tbrtheme-accordion {
  --grid-column: page;
  padding-block-end: min(6vw, 3rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-accordion {
    --grid-column: content;
    /* the properties you put in */
  }
}

.tbrtheme-accordion-item {
  border-top: 1px solid var(--txtalphalighter);
}
.tbrtheme-accordion-item:last-child {
  border-bottom: 1px solid var(--txtalphalighter);
}
.tbrtheme-accordion-item summary {
  padding-block: 1em;
  position: relative;
}
.tbrtheme-accordion-item summary::marker, .tbrtheme-accordion-item summary::-webkit-details-marker {
  display: none;
}
.tbrtheme-accordion-item summary .tbrtheme-accordion-title {
  font-size: var(--remsize18-20);
  font-weight: 500;
  margin: 0;
}
.tbrtheme-accordion-item summary::after {
  content: url("../../icons/theme/angle-down-summary-marker.svg");
  position: absolute;
  inset: 0.75em 0 1em auto;
  transform: translateY(0);
  transition: transform 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
@media (prefers-color-scheme: dark) {
  .tbrtheme-accordion-item summary::after {
    content: url("../../icons/theme/angle-down-summary-marker-dm.svg");
  }
}
.tbrtheme-accordion-item summary:hover::after, .tbrtheme-accordion-item summary:active::after, .tbrtheme-accordion-item summary:focus-visible::after {
  transform: translateY(0.25em);
}
.tbrtheme-accordion-item summary:hover, .tbrtheme-accordion-item summary:active, .tbrtheme-accordion-item summary:focus-visible {
  /* the properties you put in */
}
.tbrtheme-accordion-item[open] summary::after {
  transform: translateY(0.25em) scaleY(-1);
}

/* @forward "fullscreen"; */
/* @forward "hover-reveal"; */
/* @forward "lightbox"; */
/* @forward "spinner"; */
/* https://simplecss.eu/pxtoems.html */
:root {
  --remsize4: 0.25rem;
  --remsize6: 0.375rem;
  --remsize8: 0.5rem;
  --remsize10: 0.625rem;
  --remsize12: 0.75rem;
  --remsize13: 0.8125rem;
  --remsize14: 0.875rem;
  --remsize15: 0.9375rem;
  --remsize16: 1rem;
  --remsize17: 1.0625rem;
  --remsize18: 1.125rem;
  --remsize20: 1.25rem;
  --remsize22: 1.375rem;
  --remsize24: 1.5rem;
  --remsize25: 1.5625rem;
  --remsize28: 1.75rem;
  --remsize30: 1.875rem;
  --remsize34: 2.125rem;
  --remsize36: 2.25rem;
  --remsize40: 2.5rem;
  --remsize42: 2.625rem;
  --remsize46: 2.875rem;
  --remsize60: 3.75rem;
  --remsize12-16: clamp(0.75rem, 1vw + 0.5rem, 1rem);
  --remsize14-16: clamp(0.875rem, 1vw + 0.5rem, 1rem);
  --remsize14-16cq: clamp(0.875rem, 5cqw + 0.5rem, 1rem);
  --remsize14-17: clamp(0.875rem, 1vw + 0.5rem, 1.0625rem);
  --remsize14-17cq: clamp(0.875rem, 5cqw + 0.5rem, 1.0625rem);
  --remsize14-18: clamp(0.875rem, 1vw + 0.5rem, 1.125rem);
  --remsize16-18: clamp(1rem, 1vw + 0.5rem, 1.125rem);
  --remsize14-19: clamp(0.875rem, 1vw + 0.5rem, 1.1875rem);
  --remsize18-19: clamp(1.125rem, 1vw + 0.5rem, 1.1875rem);
  --remsize18-20: clamp(1.125rem, 1vw + 0.5rem, 1.25rem);
  --remsize16-20: clamp(1rem, 1vw + 0.5rem, 1.25rem);
  --remsize16-19: clamp(1rem, 1vw + 0.5rem, 1.1875rem);
  --remsize16-22: clamp(1rem, 1vw + 1.375rem, 1.375rem);
  --remsize16-23: clamp(1rem, min(9vw, 1.4375rem), 1.4375rem);
  --remsize16-24: clamp(1rem, min(9vw, 1.5rem), 1.5rem);
  --remsize16-25: clamp(1rem, 1vw + 0.5rem, 1.5625rem);
  --remsize18-25: clamp(1.125rem, 1vw + 0.75rem, 1.5625rem);
  --remsize20-25: clamp(1.25rem, 1vw + 1rem, 1.5625rem);
  --remsize17-25cq: clamp(1.0625rem, min(6cqw, 1.5625rem), 1.5625rem);
  --remsize20-30: clamp(1.25rem, 2vw + 1rem, 1.875rem);
  --remsize20-34: clamp(1.25rem, 1vw + 1rem, 2.125rem);
  --remsize24-50: clamp(1.5rem, 7vw + 1rem, 3.125rem);
  --remsize24-50cq: clamp(1.5rem, 7vw + 1rem, 3.125rem);
  --remsize24-52: clamp(1.5rem, 7vw + 1rem, 3.25rem);
  --remsize24-60: clamp(1.5rem, 7vw + 1rem, 3.75rem);
  --remsize66: clamp(3.125rem, 2vw + 1rem, 4.125rem);
  --remsize45-70: clamp(2.8125rem, 7vw + 1rem, 4.375rem);
  --remsize40-80: clamp(2.5rem, 7vw + 1rem, 5rem);
  --remsize30-80: clamp(1.875rem, 4vw + 1rem, 5rem);
  --remsizeh1: clamp(2.8125rem, 4vw + 1rem, 5.3125rem);
  --remsizeh1-inside-pages: clamp(2.8125rem, 3vw + 1rem, 4.0625rem);
}
:root .tbrtheme-banner-content {
  --remsizeh1-inside-pages: clamp(1.875rem, 3vw + 1rem, 3.125rem);
}
:root {
  --remsizeh2: clamp(1.25rem, 1vw + 1rem, 1.5625rem);
  --remsizeh2contain: clamp(1.25rem, 4cqw + 0.7rem, 1.5625rem);
  --remsizeh3: var(--remsize18-25);
  --remsizeh4: var(--remsize14-18);
  --remsizeh5: var(--remsize16);
  --remsizeh6: var(--remsize15);
  --intro-text: var(--remsize20);
  --bodytextsize: var(--remsize16);
  --remsizeh2small: var(--remsize18);
  --remsizefooterh2: var(--remsize20);
  --remsizefootertext: var(--remsize16);
  --highlighttextsize: var(--remsize20);
  --cardtitlesize: var(--remsize20);
  --cardtextsize: var(--remsize16);
  --featcardtextsizefallback: clamp(0.8rem, min(6vw, 1rem), 1.0625rem);
  --featcardtextsize: clamp(0.8rem, min(6cqw, 1rem), 1.0625rem);
  --label: var(--bodytextsize);
  --caption: var(--remsize18);
  --fontsmall: var(--remsize16);
  --remsizereq: var(--remsize16);
  --buttontextsize: var(--remsize16);
  --inputtextsize: var(--remsize16);
}
@media only screen and (max-width: 48rem) {
  :root .site-content {
    --font-mobile-calc: 1.3;
  }
  :root {
    /* the properties you put in */
  }
}

.tbrtheme-infocards-group .wp-block-group__inner-container {
  --card-width: 284px;
  --card-gap: 3.3125rem;
  display: grid;
  gap: var(--card-gap);
  justify-content: space-between;
  margin-block-start: min(6vw, 3rem);
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 690px) and (max-width: 1618px) {
  .tbrtheme-infocards-group .wp-block-group__inner-container {
    grid-template-columns: repeat(2, 1fr);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 1619px) {
  .tbrtheme-infocards-group .wp-block-group__inner-container {
    grid-template-columns: repeat(4, 1fr);
    /* the properties you put in */
  }
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-infocards-group .wp-block-group__inner-container {
    gap: 0.75rem;
    /* the properties you put in */
  }
}

.wp-block-tbrtheme-info-card {
  --svg-height: 49px;
  --inline-padding: 1.8125rem;
  --block-padding: 1.625rem;
  container-name: infocard;
  container-type: inline-size;
  display: grid;
  grid-template-columns: var(--inline-padding) 1fr 1em;
  grid-template-rows: var(--block-padding) var(--svg-height) min-content 1fr var(--block-padding);
  row-gap: 1rem;
  align-content: start;
  border-radius: 1rem;
  color: var(--txt);
  border: var(--line-thickness, 1px) solid;
}
.wp-block-tbrtheme-info-card > * {
  grid-column: 2;
}
@media (prefers-color-scheme: dark) {
  .wp-block-tbrtheme-info-card {
    filter: brightness(0.8) contrast(1.2);
  }
}
@media only screen and (min-width: 48.0625rem) {
  .wp-block-tbrtheme-info-card {
    --inline-padding: 1.375rem;
    --block-padding: 1.375rem;
    /* the properties you put in */
  }
}

.tbrtheme-card-icon {
  grid-row: 2;
  align-self: center;
  margin-block-end: 1rem;
}
.tbrtheme-card-icon svg {
  inline-size: auto !important;
  max-block-size: var(--svg-height);
  fill: var(--color-primary-700);
  overflow: visible;
}

.tbrtheme-card-title {
  grid-row: 3;
  font-size: var(--cardtitlesize);
  font-weight: var(--bodytextbold);
  line-height: 1;
  margin: 0;
}

.tbrtheme-card-content {
  grid-row: 4;
  max-inline-size: min(50ch, 90vw);
}
.tbrtheme-card-content p {
  font-size: var(--cardtextsize);
}
.tbrtheme-card-content p:last-child {
  margin: 0;
}

.wp-block-tbrtheme-timeline {
  --circle-size: 1.25rem;
  --small-circle-size: 0.8125rem;
  --grid-column: page;
  padding-block: min(10vw, 5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-timeline {
    --circle-size: 1.875rem;
    --grid-column: content-start / fullwidth-end;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-timeline-card {
  border-inline-start: 0.0625rem solid var(--color-logo);
  padding-inline-start: 1.75rem;
  block-size: max-content;
  position: relative;
}
.wp-block-tbrtheme-timeline-card::before {
  content: " ";
  position: absolute;
  left: calc(var(--circle-size) / 2 * -1);
  inline-size: var(--circle-size);
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: var(--color-logo);
}
@media only screen and (max-width: 73rem) {
  .wp-block-tbrtheme-timeline-card {
    padding-block-end: 2rem;
  }
  .wp-block-tbrtheme-timeline-card:last-child {
    border: 0;
  }
  .wp-block-tbrtheme-timeline-card {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 73.0625rem) {
  .wp-block-tbrtheme-timeline-card {
    grid-column: span 2;
    margin-inline-start: calc(var(--circle-size) / 2);
  }
  .wp-block-tbrtheme-timeline-card::after {
    content: " ";
    position: absolute;
    left: calc(var(--circle-size) / 2 * -1);
    top: 100%;
    inline-size: var(--small-circle-size);
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: var(--color-logo);
    transform: translateX(calc(var(--small-circle-size) / 1.6)) translateY(calc(var(--small-circle-size) / 2 * -1));
  }
  .wp-block-tbrtheme-timeline-card:nth-child(odd) {
    padding-block-start: 4.625rem;
    grid-row: 3;
  }
  .wp-block-tbrtheme-timeline-card:nth-child(odd)::before {
    top: calc(var(--circle-size) / 2 * -1);
  }
  .wp-block-tbrtheme-timeline-card:nth-child(even) {
    padding-block-end: 4.625rem;
    grid-row: 1;
    align-self: end;
  }
  .wp-block-tbrtheme-timeline-card:nth-child(even)::before {
    bottom: calc(var(--circle-size) / 2 * -1);
  }
  .wp-block-tbrtheme-timeline-card:nth-child(even)::after {
    top: calc(var(--small-circle-size) / 2 * -1);
  }
  .wp-block-tbrtheme-timeline-card {
    /* the properties you put in */
  }
}

.tbrtheme-timeline-card-title {
  font-size: var(--remsize16-20);
  font-weight: var(--headingtwoweight);
  margin-block-end: 0.5rem;
}
.tbrtheme-timeline-content {
  --sentencemaxwidth: 44ch;
  position: relative;
  padding-inline-end: 3rem;
  padding-block: 1em;
}
.tbrtheme-timeline-content p:last-of-type {
  --margin-size: 0;
}
.tbrtheme-timeline-content :is(figure, img) {
  --sentencemaxwidth: 386px;
}
.tbrtheme-timeline-content figure {
  margin: 0;
}
.tbrtheme-timeline-content img {
  margin-block-start: 1rem;
  max-inline-size: min(min(var(--sentencemaxwidth), 100%), 90vw);
  border-radius: 0.5rem;
}
@media only screen and (min-width: 73.0625rem) {
  .tbrtheme-timeline-content {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: auto 0.125rem auto;
    grid-template-columns: repeat(auto-fill, 320px);
    padding-block-end: 1em;
    overflow-x: scroll;
  }
  .tbrtheme-timeline-content::before {
    content: " ";
    grid-row: 2;
    grid-column: 1/span 100;
    height: 0.125rem;
    background-image: linear-gradient(90deg, #27AE4A, #27AE4A);
    margin-inline-start: calc(var(--circle-size) / 2);
    background-repeat: no-repeat;
    background-attachment: fixed;
  }
  .tbrtheme-timeline-content p {
    inline-size: var(--sentencemaxwidth);
  }
  .tbrtheme-timeline-content img {
    margin-block-start: 1.75rem;
  }
  .tbrtheme-timeline-content {
    /* the properties you put in */
  }
}

button.tbrtheme-timeline-scroll-btn {
  padding: 0;
  border: 0;
  min-inline-size: unset;
  --btn-fg: transparent;
  --btn-bg: transparent;
  --btn-bdr: transparent;
  grid-row: 2;
  position: absolute;
  top: var(--divider-top);
  z-index: 2;
  transform: translateY(-50%);
}
button.tbrtheme-timeline-scroll-btn.tbrtheme-timeline-scroll-left {
  left: 5vw;
  scale: -1 1;
}
button.tbrtheme-timeline-scroll-btn.tbrtheme-timeline-scroll-right {
  left: 95vw;
}
button.tbrtheme-timeline-scroll-btn svg {
  --svg-inline: 49px;
  --svg-block: 49px;
}
@media (any-hover: none) {
  button.tbrtheme-timeline-scroll-btn {
    display: none;
  }
}
@media only screen and (max-width: 73rem) {
  button.tbrtheme-timeline-scroll-btn {
    display: none;
    /* the properties you put in */
  }
}

:is(.tbrtheme-newsletter-tab-button, .tbrtheme-newsletter-tab-close) {
  --btn-bdr-size: 0;
  min-inline-size: unset;
  line-height: 1.1;
  border-radius: 0;
  padding: 1.75em 1em 1em 1em;
}
:is(.tbrtheme-newsletter-tab-button, .tbrtheme-newsletter-tab-close)::before {
  content: none;
}
:is(.tbrtheme-newsletter-tab-button, .tbrtheme-newsletter-tab-close):hover, :is(.tbrtheme-newsletter-tab-button, .tbrtheme-newsletter-tab-close):active, :is(.tbrtheme-newsletter-tab-button, .tbrtheme-newsletter-tab-close):focus-visible {
  --btn-fg: var(--txt);
  --btn-bg: var(--alt-bg);
  /* the properties you put in */
}

.tbrtheme-newsletter-tab {
  transform: translateX(0);
  transition: transform 150ms linear;
  position: fixed;
  top: 50vh;
  right: 0;
  translate: 0 -50%;
  background-color: var(--alt-bg);
  border-radius: var(--remsize15) 0 0 var(--remsize15);
  overflow: clip;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(2, auto);
  grid-template-areas: "close" "join";
}
.tbrtheme-newsletter-tab-hidden {
  transform: translateX(100%);
}
.tbrtheme-newsletter-tab-button {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  grid-area: join;
  text-transform: none !important;
}
.tbrtheme-newsletter-tab-close {
  grid-area: close;
}

.tbrtheme-newsletter-dialogue {
  --_inset: 3vw;
  border: none;
  border-radius: var(--remsize12);
  background-color: var(--alt-bg);
  inset: 50vh var(--_inset) auto;
  transform: translateY(-50%);
  margin-block-end: 0;
  position: fixed;
  max-block-size: 94vh;
  max-block-size: 94svh;
  max-inline-size: 94vw;
  padding: min(6vw, 2rem) min(6vw, 2.5rem);
}
.tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme {
  padding: 0;
}
.tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form {
  --ffbg: var(--bg);
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form .gform_footer {
    justify-content: center;
  }
  .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) {
  .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form #field_2_3 {
    grid-column: 1;
  }
  .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form #field_2_4 {
    grid-column: 2;
  }
  .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form {
    /* the properties you put in */
  }
}
.tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form .gform_footer {
  margin-block-start: 2em;
}
.tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form .gform_button {
  --btn-fg: var(--light);
  --btn-bg: var(--color-primary-button-hover);
  --btn-bdr: var(--color-primary-button-hover);
}
.tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form .gform_button:hover, .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form .gform_button:active, .tbrtheme-newsletter-dialogue .gform_wrapper.gravity-theme form .gform_button:focus-visible {
  --btn-fg: var(--txt);
  --btn-bg: var(--alt-bg);
  --btn-bdr: var(--txt);
  /* the properties you put in */
}
.tbrtheme-newsletter-dialogue button.tbrtheme-dialogue-close {
  --ffbuttonpadding: min(6vw, 2em);
  --btn-bdr: 0;
  position: absolute;
  inset: 0 0 auto auto;
  min-inline-size: unset;
  z-index: 2;
  outline-width: 0;
}
.tbrtheme-newsletter-dialogue button.tbrtheme-dialogue-close svg {
  --svg-inline: 1.5rem;
  --svg-block: 1.5rem;
  color: var(--txt);
}
.tbrtheme-newsletter-dialogue button.tbrtheme-dialogue-close::before {
  content: none;
}
.tbrtheme-newsletter-dialogue button.tbrtheme-dialogue-close:hover, .tbrtheme-newsletter-dialogue button.tbrtheme-dialogue-close:active, .tbrtheme-newsletter-dialogue button.tbrtheme-dialogue-close:focus-visible {
  --btn-bg: var(--alt-bg);
  /* the properties you put in */
}

/* browser resets */
/*
https://www.youtube.com/watch?v=yYGLEy7CiT0
https://polypane.app/blog/forced-colors-explained-a-practical-guide/
https://developer.mozilla.org/en-US/docs/Web/CSS/@media/forced-colors

	CanvasText: Regular text color
	Canvas: Background color
	LinkText: Link color
	ButtonText: Button text color
	ButtonFace: Button background color
	HighlightText: Selected text color
	Highlight: Selected text background color
*/
@media (forced-colors: active) {
  .site-nav li {
    margin: 0.15em;
  }
  .site-nav li a {
    outline-offset: 0;
  }
  nav.nav-footer ul.menu-footer li {
    margin-block-start: 1em;
  }
  nav.nav-footer ul.menu-footer li a {
    padding: 0;
  }
}
.footer-logo.forced-light {
  display: none;
}

@media (prefers-color-scheme: light) and (forced-colors: active) {
  .footer-logo.default {
    display: none;
  }
  .footer-logo.forced-light {
    display: block;
  }
}
/* browser resets */
/* colours (and base font size) */
:root {
  /* https://css-tricks.com/a-complete-guide-to-dark-mode-on-the-web/ */
  color-scheme: light dark;
  /* both supported */
  font-size: 16px;
  color: var(--txt, var(--test));
  background-color: var(--bg, var(--test));
}

body {
  /* stylelint-disable-line no-duplicate-selectors */
  background-color: var(--bg, var(--test));
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
  text-rendering: geometricprecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.4375;
  font-weight: var(--bodytextweight);
}

.tbrtheme-alt-bg {
  background-color: lightgray;
  background-color: var(--alt-bg, var(--test));
}
.tbrtheme-alt-bg > * {
  position: relative;
}

.tbrtheme-alt-bg-three, .tbrtheme-alt-bg-two {
  color: var(--light);
  font-weight: var(--fontweight400);
  padding-block: min(10vw, 5rem);
}
.tbrtheme-alt-bg-three h2, .tbrtheme-alt-bg-two h2 {
  color: var(--light);
}
.tbrtheme-alt-bg-three p, .tbrtheme-alt-bg-two p {
  max-inline-size: min(58ch, 90vw);
}

.tbrtheme-alt-bg-two {
  background-color: var(--color-primary-700);
}
@media (prefers-color-scheme: dark) {
  .tbrtheme-alt-bg-two {
    color: var(--dark);
  }
  .tbrtheme-alt-bg-two h2 {
    color: var(--dark);
  }
}

.tbrtheme-alt-bg-three {
  background-color: var(--color-tertiary);
}

.tbrtheme-atn-bg {
  color: var(--light);
  background-color: var(--color-primary-700);
}
.tbrtheme-atn-bg h2 {
  text-transform: none;
  color: var(--color-primary-700);
}

@media (prefers-color-scheme: dark) {
  .wp-block-tbrtheme-testimonials-slider {
    color: hsl(0, 0%, 98%);
  }
  .wp-block-tbrtheme-testimonials-slider h2 {
    color: hsl(0, 0%, 98%);
  }
}

a {
  color: currentcolor;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-underline-offset: 0.125em;
  /* see /resets/browser/colors_focus-outlines.scss */
  overflow-wrap: break-word;
  hyphens: none;
  max-width: 90vw;
  display: inline-block;
}
a:hover, a:active, a:focus-visible {
  text-decoration: none;
  /* the properties you put in */
}
li a {
  display: inline;
}
a[href^=mailto] {
  overflow-wrap: break-word;
}

/* incase image doesn't load */
/* img:not([src$="svg"]) {background-color: currentcolor;} */
.entry-header a:not([class*=cta-link]),
.entry-text a:not([class*=cta-link]),
.entry-footer a:not([class*=cta-link]),
[class*=post-category] a:not([class*=cta-link]) {
  font-weight: var(--linktextweight);
  /* tame down font weight bold when text is white on dark grey */
}
@media (prefers-color-scheme: dark) {
  .entry-header a:not([class*=cta-link]),
  .entry-text a:not([class*=cta-link]),
  .entry-footer a:not([class*=cta-link]),
  [class*=post-category] a:not([class*=cta-link]) {
    opacity: 0.9;
  }
}

.entry-text :where(h1, h2, h3, h4, h5, h6) {
  overflow-wrap: normal;
}
.entry-text :where(h1, h2, h3, h4, h5, h6) a {
  font-weight: inherit;
}
.entry-text ul {
  list-style-type: var(--marker-type-ul, disc);
}
.entry-text ul ::marker {
  color: var(--marker-colour-ul, inherit);
}
.entry-text ul ul {
  --marker-type-ul: circle;
}
.entry-text ol ::marker {
  color: var(--marker-colour-ol, inherit);
}

.entry-text a,
.entry-footer a {
  color: inherit;
}
.entry-text a:hover, .entry-text a:active, .entry-text a:focus-visible,
.entry-footer a:hover,
.entry-footer a:active,
.entry-footer a:focus-visible {
  text-decoration: none;
  /* the properties you put in */
}

p,
li,
th,
td,
dd,
div {
  font-size: var(--bodytextsize);
}

p.menu-main-copyright {
  font-size: clamp(0.875rem, 1vw + 0.5rem, 1.25rem);
}

time {
  display: inline-block;
  font-size: var(--fontsmall);
}

strong,
b {
  font-weight: var(--bodytextstrong);
  color: var(--bold);
}
.tbrtheme-text-bolder strong,
.tbrtheme-text-bolder b {
  font-weight: var(--headingweight);
}

/* em, i { */
/*  */
/* } */
/*	https://codepen.io/kevinpowell/pres/wvJYoEy
	https://www.toptal.com/designers/htmlarrows/punctuation/
*/
mark {
  background-color: var(--text-mark);
}

address {
  font-style: normal;
}

blockquote,
q {
  margin-inline: 0;
  padding: 0.5em 0 0.5em min(6vw, 3em);
  position: relative;
}
.entry-text > blockquote,
.entry-text > q {
  margin: 3em 0;
}
blockquote::before,
q::before {
  content: " ";
  position: absolute;
  inset: 0 auto 0 0;
  width: 0.25em;
  background-color: var(--blockquote, var(--test));
}
blockquote p:last-child,
q p:last-child {
  margin-block-end: 0;
}

::selection {
  color: var(--bg, var(--test));
  background-color: var(--txt, var(--test));
}

.site-footer {
  font-weight: var(--footertextweight);
  line-height: 1.625;
}
.site-footer ::selection {
  color: var(--footer-bg, var(--test));
  background-color: var(--footer-text, var(--test));
}

::placeholder {
  color: var(--ffplaceholdertext, var(--test));
  opacity: 1;
  font-size: var(--remsize15);
}

svg {
  fill: currentcolor;
  overflow: visible;
}

symbol {
  overflow: visible;
}

.image-bg-darkmode {
  /*  for transparent background .png with dark text */
}
.image-bg-darkmode img {
  background: var(--image-bg-darkmode);
  border: 1em solid transparent;
  box-sizing: content-box;
}

/* browser resets */
/* cursors, focus outlines */
/* more cursor rules in */
/* - /_form-fields-buttons.scss */
a {
  cursor: pointer;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
a:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}

/* google maps */
.flxmap-directions-link a {
  outline: none;
}

.nav-top a {
  outline: none;
}

.site-footer a {
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.site-footer a:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}

details summary {
  cursor: pointer;
  display: block; /* edge fix */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
details summary:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}

/* browser resets */
/* experience */
:is(html, :has(:target)) {
  /* when js isn't doing it */
}
@media (prefers-reduced-motion: no-preference) {
  :is(html, :has(:target)) {
    scroll-behavior: smooth;
  }
}

html {
  scroll-padding-block-start: 0;
}

:has(:target) {
  scroll-padding-block-start: 3rem;
}

body {
  /* smoother scrolling for iphone, goes with overflow-y: scroll; or overflow-y: auto; */
  -webkit-overflow-scrolling: touch;
}

a,
button,
a.button,
p.button a,
summary {
  /* make taps 300ms faster, browser *immediately* responds to taps instead of waiting 300ms for a "potential" 2nd tap when content is zoomed */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action */
  touch-action: manipulation;
}

/* ? when will there be browser support? */
/* ::before, */
/* ::after { */
/* 	//https://css-tricks.com/almanac/properties/s/speak/ */
/* 	speak: never; */
/* } */
/* login forms */
/* browser behaviour over-rides */
/* see reset.scss for ::placeholder color */
@layer reset-forms-buttons {
  input:not(:placeholder-shown):focus {
    outline: none;
  }
  /**
  * Override default style for invalid elements in firefox.
  * https://developer.mozilla.org/en-US/docs/Web/CSS/:user-invalid
  as you leave */
  :not(output):-moz-ui-invalid:not(:active, :focus-within),
  :not(output):user-invalid:not(:active, :focus-within) {
    box-shadow: 0 0 0 0.25em var(--invalidelement, var(--test));
  }
  /* input:-moz-ui-valid, */
  /* input:user-valid { */
  /* 	+ span::before { */
  /* 		content: '✓'; */
  /* 		color: var(--validelement, var(--test)); */
  /* 	} */
  /* } */
  /* as you come back */
  :not(output):-moz-ui-invalid:-moz-focusring:not(:active, :focus-within) {
    box-shadow: 0 0 0 0.25em var(--invalidelementlight, var(--test));
  }
  /* form container */
  fieldset {
    padding: 0;
    border: none;
  }
  /* form text */
  legend {
    font-family: Inter, var(--sans-serif);
    font-size: var(--label);
    font-weight: var(--bodytextweight);
    color: var(--formlabel, black);
    transition: color 100ms linear;
    cursor: pointer;
    display: block;
    padding: 0;
    margin: 0 0 0.25em;
    line-height: 1.3;
    margin: 0 0 2em;
  }
  label {
    font-family: Inter, var(--sans-serif);
    font-size: var(--label);
    font-weight: var(--bodytextweight);
    color: var(--formlabel, black);
    transition: color 100ms linear;
    cursor: pointer;
    display: block;
    padding: 0;
    margin: 0 0 0.25em;
    line-height: 1.3;
  }
  /* form fields */
  /* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input */
  input[type=date],
  input[type=datetime-local],
  input[type=email],
  input[type=month],
  input[type=number],
  input[type=password],
  input[type=search],
  input[type=tel],
  input[type=text],
  input[type=time],
  input[type=url],
  input[type=week] {
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    display: inline-block;
    line-height: 1.25;
    /* override mobile style of line-height: 2 */
    color: var(--ffplaceholdertext, var(--test));
    background-color: var(--ffbg, var(--test));
    font-family: inherit;
    font-size: var(--inputtextsize);
    font-weight: var(--inputfontweight);
    transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    border-width: 0;
    border-radius: 0.5625rem;
    transition: 100ms ease-in;
    padding: var(--ffpadding, 0.75em 1.5em);
    outline: 3px solid transparent;
    outline-offset: 0.25em;
  }
  input[type=date]:hover, input[type=date]:active, input[type=date]:focus-visible,
  input[type=datetime-local]:hover,
  input[type=datetime-local]:active,
  input[type=datetime-local]:focus-visible,
  input[type=email]:hover,
  input[type=email]:active,
  input[type=email]:focus-visible,
  input[type=month]:hover,
  input[type=month]:active,
  input[type=month]:focus-visible,
  input[type=number]:hover,
  input[type=number]:active,
  input[type=number]:focus-visible,
  input[type=password]:hover,
  input[type=password]:active,
  input[type=password]:focus-visible,
  input[type=search]:hover,
  input[type=search]:active,
  input[type=search]:focus-visible,
  input[type=tel]:hover,
  input[type=tel]:active,
  input[type=tel]:focus-visible,
  input[type=text]:hover,
  input[type=text]:active,
  input[type=text]:focus-visible,
  input[type=time]:hover,
  input[type=time]:active,
  input[type=time]:focus-visible,
  input[type=url]:hover,
  input[type=url]:active,
  input[type=url]:focus-visible,
  input[type=week]:hover,
  input[type=week]:active,
  input[type=week]:focus-visible {
    border-color: var(--ffhoverborder, var(--test));
    /* the properties you put in */
  }
  input[type=search] {
    appearance: none;
    /* looking glass not wanted */
  }
  input[type=date],
  input[type=datetime-local] {
    color: var(--ffplaceholdertext, var(--test));
    padding-inline-end: 2em;
    background-image: url("../../icons/theme/calendar-day.svg");
    background-repeat: no-repeat;
    background-position: 95% center;
  }
  input[type=date]:not(:placeholder-shown),
  input[type=datetime-local]:not(:placeholder-shown) {
    color: var(--txt, var(--test));
  }
  input[type=date i]::-webkit-calendar-picker-indicator {
    margin-inline-end: -1.5em;
    opacity: 0;
    cursor: pointer;
  }
  input[type=checkbox] {
    inline-size: 1em;
    block-size: 1em;
    margin: 0;
    border: 1px solid var(--ffborder, var(--test));
    border-radius: 0;
  }
  input[type=checkbox]:not(:checked) {
    appearance: none;
  }
  input[type=checkbox] + label {
    cursor: pointer;
    line-height: 1;
    position: relative;
  }
  select:not([multiple]) {
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    display: inline-block;
    cursor: pointer;
    line-height: 1.25;
    appearance: none;
    /* replace down arrow with svg */
    /* background: left 0 / 100% 100% no-repeat inherit; */
    background: 96% center/18px 18px no-repeat url("../../icons/theme/form-select/angle-down.svg") var(--ffbg, var(--test));
    text-align: start;
    justify-content: start;
    color: var(--ffplaceholdertext, var(--test));
    background-color: var(--ffbg, var(--test));
    font-family: inherit;
    font-size: var(--inputtextsize);
    font-weight: var(--inputfontweight);
    transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    border-width: 0;
    border-radius: 0.5625rem;
    transition: 100ms ease-in;
    padding: var(--ffpadding, 0.75em 1.5em);
    outline: 3px solid transparent;
    outline-offset: 0.25em;
  }
  select:not([multiple]):hover, select:not([multiple]):active, select:not([multiple]):focus-visible {
    border-color: var(--ffhoverborder, var(--test));
    /* the properties you put in */
  }
  select:not([multiple]) {
    /* remove nasty glow in chrome */
  }
  select:not([multiple]) option {
    color: var(--ffplaceholdertext, var(--test));
    background-color: var(--ffbg, var(--test));
    font-family: inherit;
    font-size: var(--inputtextsize);
    font-weight: var(--inputfontweight);
    transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    cursor: pointer;
    line-height: 1.25;
    padding: 0.5em 1em;
  }
  textarea {
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    display: inline-block;
    line-height: 1.75;
    display: block;
    /* over-ride display:inline-block */
    color: var(--ffplaceholdertext, var(--test));
    background-color: var(--ffbg, var(--test));
    font-family: inherit;
    font-size: var(--inputtextsize);
    font-weight: var(--inputfontweight);
    transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    border-width: 0;
    border-radius: 0.5625rem;
    transition: 100ms ease-in;
    padding: var(--ffpadding, 0.75em 1.5em);
    outline: 3px solid transparent;
    outline-offset: 0.25em;
  }
  textarea:hover, textarea:active, textarea:focus-visible {
    border-color: var(--ffhoverborder, var(--test));
    /* the properties you put in */
  }
  /* buttons */
  input[type=file] {
    cursor: pointer;
  }
  input[type=file]::-ms-browse, input[type=file]::-webkit-file-upload-button {
    --btn-fg: var(--bg);
    --btn-bg: var(--color-primary-button);
    --btn-solid-bdr: transparent;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    -webkit-transition: outline-color ease-in 150ms;
    -ms-transition: outline-color ease-in 150ms;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  input[type=file]::-ms-browse:focus-visible, input[type=file]::-webkit-file-upload-button:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  input[type=file]::-ms-browse:focus, input[type=file]::-webkit-file-upload-button:focus {
    box-shadow: none;
  }
  input[type=file]::-ms-browse[href^=mailto], input[type=file]::-webkit-file-upload-button[href^=mailto] {
    text-transform: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    input[type=file]::-ms-browse, input[type=file]::-webkit-file-upload-button {
      --button-transition: 300ms;
      will-change: transform;
    }
  }
  input[type=file]::-ms-browse:disabled, input[type=file]::-webkit-file-upload-button:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  input[type=file]::-ms-browse:hover, input[type=file]::-ms-browse:active, input[type=file]::-ms-browse:focus-visible, input[type=file]::-webkit-file-upload-button:hover, input[type=file]::-webkit-file-upload-button:active, input[type=file]::-webkit-file-upload-button:focus-visible {
    --btn-bg: var(--color-primary-button-hover);
    /* the properties you put in */
  }
  @media (prefers-color-scheme: dark) {
    input[type=file]::-ms-browse:hover, input[type=file]::-ms-browse:active, input[type=file]::-ms-browse:focus-visible, input[type=file]::-webkit-file-upload-button:hover, input[type=file]::-webkit-file-upload-button:active, input[type=file]::-webkit-file-upload-button:focus-visible {
      --btn-bg: var(--shade-light-beige);
      /* the properties you put in */
    }
  }
  .flxmap-container button:not(.baguetteBox-button):not(.gm-control-active) {
    color: inherit !important;
    background-color: inherit !important;
    min-width: inherit;
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]),
  input[type=submit] {
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):focus-visible,
  input[type=submit]:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):focus,
  input[type=submit]:focus {
    box-shadow: none;
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"])[href^=mailto],
  input[type=submit][href^=mailto] {
    text-transform: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]),
    input[type=submit] {
      --button-transition: 300ms;
      will-change: transform;
    }
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):disabled,
  input[type=submit]:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"])::before,
  input[type=submit]::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):hover::before, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):active::before, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):focus-visible::before,
  input[type=submit]:hover::before,
  input[type=submit]:active::before,
  input[type=submit]:focus-visible::before {
    width: 100%;
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):hover, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):active, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):focus-visible,
  input[type=submit]:hover,
  input[type=submit]:active,
  input[type=submit]:focus-visible {
    /* the properties you put in */
  }
  @media (any-hover: none) {
    button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"])::before,
    input[type=submit]::before {
      content: none;
    }
    button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):hover, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):active, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):focus-visible,
    input[type=submit]:hover,
    input[type=submit]:active,
    input[type=submit]:focus-visible {
      --btn-bg: var(--color-cta, var(--test));
      /* the properties you put in */
    }
    .menu-item.current-menu-item button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]),
    .menu-item.current-menu-item input[type=submit] {
      --btn-bg: var(--color-cta, var(--test));
    }
  }
  button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):hover, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):active, button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):not(.gm-ui-hover-effect):not([aria-label="Keyboard shortcuts"]):focus-visible,
  input[type=submit]:hover,
  input[type=submit]:active,
  input[type=submit]:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  .wp-block-button .wp-block-button__link {
    --linktextweight: var(--buttontextweight);
    --btn-fg: var(--bg);
    --btn-bg: var(--color-primary-button);
    text-decoration: none;
    --btn-solid-bdr: transparent;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  .wp-block-button .wp-block-button__link:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  .wp-block-button .wp-block-button__link:focus {
    box-shadow: none;
  }
  .wp-block-button .wp-block-button__link[href^=mailto] {
    text-transform: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    .wp-block-button .wp-block-button__link {
      --button-transition: 300ms;
      will-change: transform;
    }
  }
  .wp-block-button .wp-block-button__link:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  .wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:active, .wp-block-button .wp-block-button__link:focus-visible {
    --btn-bg: var(--color-primary-button-hover);
    /* the properties you put in */
  }
  @media (prefers-color-scheme: dark) {
    .wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:active, .wp-block-button .wp-block-button__link:focus-visible {
      --btn-bg: var(--shade-light-beige);
      /* the properties you put in */
    }
  }
  .wp-block-column .wp-block-button .wp-block-button__link {
    margin-block-start: 1.5em;
  }
  a.primary-button__link,
  .primary-button__link a,
  a.wp-block-file__button,
  .wp-block-file a,
  .wp-block-file a.wp-block-file__button {
    --linktextweight: var(--buttontextweight);
    text-decoration: none;
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  a.primary-button__link:focus-visible,
  .primary-button__link a:focus-visible,
  a.wp-block-file__button:focus-visible,
  .wp-block-file a:focus-visible,
  .wp-block-file a.wp-block-file__button:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  a.primary-button__link:focus,
  .primary-button__link a:focus,
  a.wp-block-file__button:focus,
  .wp-block-file a:focus,
  .wp-block-file a.wp-block-file__button:focus {
    box-shadow: none;
  }
  a.primary-button__link[href^=mailto],
  .primary-button__link a[href^=mailto],
  a.wp-block-file__button[href^=mailto],
  .wp-block-file a[href^=mailto],
  .wp-block-file a.wp-block-file__button[href^=mailto] {
    text-transform: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    a.primary-button__link,
    .primary-button__link a,
    a.wp-block-file__button,
    .wp-block-file a,
    .wp-block-file a.wp-block-file__button {
      --button-transition: 300ms;
      will-change: transform;
    }
  }
  a.primary-button__link:disabled,
  .primary-button__link a:disabled,
  a.wp-block-file__button:disabled,
  .wp-block-file a:disabled,
  .wp-block-file a.wp-block-file__button:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  a.primary-button__link::before,
  .primary-button__link a::before,
  a.wp-block-file__button::before,
  .wp-block-file a::before,
  .wp-block-file a.wp-block-file__button::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  a.primary-button__link:hover::before, a.primary-button__link:active::before, a.primary-button__link:focus-visible::before,
  .primary-button__link a:hover::before,
  .primary-button__link a:active::before,
  .primary-button__link a:focus-visible::before,
  a.wp-block-file__button:hover::before,
  a.wp-block-file__button:active::before,
  a.wp-block-file__button:focus-visible::before,
  .wp-block-file a:hover::before,
  .wp-block-file a:active::before,
  .wp-block-file a:focus-visible::before,
  .wp-block-file a.wp-block-file__button:hover::before,
  .wp-block-file a.wp-block-file__button:active::before,
  .wp-block-file a.wp-block-file__button:focus-visible::before {
    width: 100%;
  }
  a.primary-button__link:hover, a.primary-button__link:active, a.primary-button__link:focus-visible,
  .primary-button__link a:hover,
  .primary-button__link a:active,
  .primary-button__link a:focus-visible,
  a.wp-block-file__button:hover,
  a.wp-block-file__button:active,
  a.wp-block-file__button:focus-visible,
  .wp-block-file a:hover,
  .wp-block-file a:active,
  .wp-block-file a:focus-visible,
  .wp-block-file a.wp-block-file__button:hover,
  .wp-block-file a.wp-block-file__button:active,
  .wp-block-file a.wp-block-file__button:focus-visible {
    /* the properties you put in */
  }
  @media (any-hover: none) {
    a.primary-button__link::before,
    .primary-button__link a::before,
    a.wp-block-file__button::before,
    .wp-block-file a::before,
    .wp-block-file a.wp-block-file__button::before {
      content: none;
    }
    a.primary-button__link:hover, a.primary-button__link:active, a.primary-button__link:focus-visible,
    .primary-button__link a:hover,
    .primary-button__link a:active,
    .primary-button__link a:focus-visible,
    a.wp-block-file__button:hover,
    a.wp-block-file__button:active,
    a.wp-block-file__button:focus-visible,
    .wp-block-file a:hover,
    .wp-block-file a:active,
    .wp-block-file a:focus-visible,
    .wp-block-file a.wp-block-file__button:hover,
    .wp-block-file a.wp-block-file__button:active,
    .wp-block-file a.wp-block-file__button:focus-visible {
      --btn-bg: var(--color-cta, var(--test));
      /* the properties you put in */
    }
    .menu-item.current-menu-item a.primary-button__link,
    .menu-item.current-menu-item .primary-button__link a,
    .menu-item.current-menu-item a.wp-block-file__button,
    .menu-item.current-menu-item .wp-block-file a,
    .menu-item.current-menu-item .wp-block-file a.wp-block-file__button {
      --btn-bg: var(--color-cta, var(--test));
    }
  }
  a.primary-button__link:hover, a.primary-button__link:active, a.primary-button__link:focus-visible,
  .primary-button__link a:hover,
  .primary-button__link a:active,
  .primary-button__link a:focus-visible,
  a.wp-block-file__button:hover,
  a.wp-block-file__button:active,
  a.wp-block-file__button:focus-visible,
  .wp-block-file a:hover,
  .wp-block-file a:active,
  .wp-block-file a:focus-visible,
  .wp-block-file a.wp-block-file__button:hover,
  .wp-block-file a.wp-block-file__button:active,
  .wp-block-file a.wp-block-file__button:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  input.button,
  button.button {
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  input.button:focus-visible,
  button.button:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  input.button:focus,
  button.button:focus {
    box-shadow: none;
  }
  input.button[href^=mailto],
  button.button[href^=mailto] {
    text-transform: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    input.button,
    button.button {
      --button-transition: 300ms;
      will-change: transform;
    }
  }
  input.button:disabled,
  button.button:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  input.button::before,
  button.button::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  input.button:hover::before, input.button:active::before, input.button:focus-visible::before,
  button.button:hover::before,
  button.button:active::before,
  button.button:focus-visible::before {
    width: 100%;
  }
  input.button:hover, input.button:active, input.button:focus-visible,
  button.button:hover,
  button.button:active,
  button.button:focus-visible {
    /* the properties you put in */
  }
  @media (any-hover: none) {
    input.button::before,
    button.button::before {
      content: none;
    }
    input.button:hover, input.button:active, input.button:focus-visible,
    button.button:hover,
    button.button:active,
    button.button:focus-visible {
      --btn-bg: var(--color-cta, var(--test));
      /* the properties you put in */
    }
    .menu-item.current-menu-item input.button,
    .menu-item.current-menu-item button.button {
      --btn-bg: var(--color-cta, var(--test));
    }
  }
  input.button:hover, input.button:active, input.button:focus-visible,
  button.button:hover,
  button.button:active,
  button.button:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  input.button:hover, input.button:active, input.button:focus-visible {
    --btn-bg: var(--color-primary-button-hover);
    /* the properties you put in */
  }
  a.button,
  p.button a,
  .has-button a,
  a.button__link,
  .button__link a {
    --linktextweight: var(--buttontextweight);
    text-decoration: none;
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  a.button:focus-visible,
  p.button a:focus-visible,
  .has-button a:focus-visible,
  a.button__link:focus-visible,
  .button__link a:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  a.button:focus,
  p.button a:focus,
  .has-button a:focus,
  a.button__link:focus,
  .button__link a:focus {
    box-shadow: none;
  }
  a.button[href^=mailto],
  p.button a[href^=mailto],
  .has-button a[href^=mailto],
  a.button__link[href^=mailto],
  .button__link a[href^=mailto] {
    text-transform: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    a.button,
    p.button a,
    .has-button a,
    a.button__link,
    .button__link a {
      --button-transition: 300ms;
      will-change: transform;
    }
  }
  a.button:disabled,
  p.button a:disabled,
  .has-button a:disabled,
  a.button__link:disabled,
  .button__link a:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  a.button::before,
  p.button a::before,
  .has-button a::before,
  a.button__link::before,
  .button__link a::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  a.button:hover::before, a.button:active::before, a.button:focus-visible::before,
  p.button a:hover::before,
  p.button a:active::before,
  p.button a:focus-visible::before,
  .has-button a:hover::before,
  .has-button a:active::before,
  .has-button a:focus-visible::before,
  a.button__link:hover::before,
  a.button__link:active::before,
  a.button__link:focus-visible::before,
  .button__link a:hover::before,
  .button__link a:active::before,
  .button__link a:focus-visible::before {
    width: 100%;
  }
  a.button:hover, a.button:active, a.button:focus-visible,
  p.button a:hover,
  p.button a:active,
  p.button a:focus-visible,
  .has-button a:hover,
  .has-button a:active,
  .has-button a:focus-visible,
  a.button__link:hover,
  a.button__link:active,
  a.button__link:focus-visible,
  .button__link a:hover,
  .button__link a:active,
  .button__link a:focus-visible {
    /* the properties you put in */
  }
  @media (any-hover: none) {
    a.button::before,
    p.button a::before,
    .has-button a::before,
    a.button__link::before,
    .button__link a::before {
      content: none;
    }
    a.button:hover, a.button:active, a.button:focus-visible,
    p.button a:hover,
    p.button a:active,
    p.button a:focus-visible,
    .has-button a:hover,
    .has-button a:active,
    .has-button a:focus-visible,
    a.button__link:hover,
    a.button__link:active,
    a.button__link:focus-visible,
    .button__link a:hover,
    .button__link a:active,
    .button__link a:focus-visible {
      --btn-bg: var(--color-cta, var(--test));
      /* the properties you put in */
    }
    .menu-item.current-menu-item a.button,
    .menu-item.current-menu-item p.button a,
    .menu-item.current-menu-item .has-button a,
    .menu-item.current-menu-item a.button__link,
    .menu-item.current-menu-item .button__link a {
      --btn-bg: var(--color-cta, var(--test));
    }
  }
  a.button:hover, a.button:active, a.button:focus-visible,
  p.button a:hover,
  p.button a:active,
  p.button a:focus-visible,
  .has-button a:hover,
  .has-button a:active,
  .has-button a:focus-visible,
  a.button__link:hover,
  a.button__link:active,
  a.button__link:focus-visible,
  .button__link a:hover,
  .button__link a:active,
  .button__link a:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  p.back-button a,
  a.back-button {
    --btn-fg: var(--heading-color);
    --btn-outline-bdr: var(--heading-color);
    align-items: center;
    padding-inline-start: 3em;
  }
  p.back-button a::before,
  a.back-button::before {
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 400ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  p.back-button a::after,
  a.back-button::after {
    position: absolute;
    inset: auto auto auto 1em;
    inline-size: 1em;
    transition: fill 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    content: url('data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.6663 6.16536L3.52467 6.16536L8.17884 1.5112L6.99967 0.332031L0.333008 6.9987L6.99967 13.6654L8.17884 12.4862L3.52467 7.83203L13.6663 7.83203L13.6663 6.16536Z" fill="%23E4A667"/></svg>');
  }
  p.back-button a:hover::before, p.back-button a:active::before, p.back-button a:focus-visible::before,
  a.back-button:hover::before,
  a.back-button:active::before,
  a.back-button:focus-visible::before {
    transform: scaleX(1);
    transform-origin: right;
  }
  p.back-button a:hover::after, p.back-button a:active::after, p.back-button a:focus-visible::after,
  a.back-button:hover::after,
  a.back-button:active::after,
  a.back-button:focus-visible::after {
    content: url('data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.6663 6.16536L3.52467 6.16536L8.17884 1.5112L6.99967 0.332031L0.333008 6.9987L6.99967 13.6654L8.17884 12.4862L3.52467 7.83203L13.6663 7.83203L13.6663 6.16536Z" fill="%23FFFFFF"/></svg>');
  }
  @media (prefers-color-scheme: dark) {
    p.back-button a:hover::after, p.back-button a:active::after, p.back-button a:focus-visible::after,
    a.back-button:hover::after,
    a.back-button:active::after,
    a.back-button:focus-visible::after {
      content: url('data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.6663 6.16536L3.52467 6.16536L8.17884 1.5112L6.99967 0.332031L0.333008 6.9987L6.99967 13.6654L8.17884 12.4862L3.52467 7.83203L13.6663 7.83203L13.6663 6.16536Z" fill="%23333333"/></svg>');
    }
  }
  p.back-button a:hover, p.back-button a:active, p.back-button a:focus-visible,
  a.back-button:hover,
  a.back-button:active,
  a.back-button:focus-visible {
    /* the properties you put in */
  }
  p.back-button a.tbrtheme-print-button {
    padding-inline-start: 1.5em;
  }
  p.back-button a.tbrtheme-print-button::after {
    content: none;
  }
  p.back-button a.tbrtheme-print-button::before {
    transform: scaleY(0);
    transform-origin: bottom;
    transition: transform 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  p.back-button a.tbrtheme-print-button:hover::before, p.back-button a.tbrtheme-print-button:active::before, p.back-button a.tbrtheme-print-button:focus-visible::before {
    transform: scaleY(1);
    transform-origin: top;
  }
  p.back-button a.tbrtheme-print-button:hover, p.back-button a.tbrtheme-print-button:active, p.back-button a.tbrtheme-print-button:focus-visible {
    /* the properties you put in */
  }
  .nav-top button:not(.baguetteBox-button):not(.gm-control-active).search-button {
    --btn-fg: var(--light, var(--test));
    --btn-bg: inherit;
    --search-button-size: 1rem;
    --btn-bg: transparent;
    padding: 0;
    min-inline-size: auto;
    display: grid;
    place-content: center;
    inline-size: 3rem;
    block-size: 100%;
    margin-inline-start: 1em;
  }
  .nav-top button:not(.baguetteBox-button):not(.gm-control-active).search-button svg {
    inline-size: var(--search-button-size, 1em);
    block-size: 100%;
  }
  .nav-top button:not(.baguetteBox-button):not(.gm-control-active).search-button:hover, .nav-top button:not(.baguetteBox-button):not(.gm-control-active).search-button:active, .nav-top button:not(.baguetteBox-button):not(.gm-control-active).search-button:focus-visible {
    --btn-fg: var(--color-cta, var(--test));
    --btn-bg: inherit;
    /* the properties you put in */
  }
  .search-not-found button:not(.baguetteBox-button):not(.gm-control-active).search-button {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --search-button-size: 1rem;
    --btn-bg: transparent;
    padding: 0.25em;
    min-inline-size: auto;
    display: grid;
    place-content: center;
    inline-size: 3rem;
    block-size: 100%;
  }
  .search-not-found button:not(.baguetteBox-button):not(.gm-control-active).search-button svg {
    inline-size: var(--search-button-size, 1em);
    block-size: 100%;
  }
  .search-not-found button:not(.baguetteBox-button):not(.gm-control-active).search-button:hover, .search-not-found button:not(.baguetteBox-button):not(.gm-control-active).search-button:active, .search-not-found button:not(.baguetteBox-button):not(.gm-control-active).search-button:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-primary-700, var(--test));
    /* the properties you put in */
  }
  /* layout */
  /* google maps */
  button.gm-ui-hover-effect {
    min-inline-size: auto;
  }
  /* end google maps */
  .wp-block-file {
    margin-block-start: 1em;
  }
  form p {
    line-height: 1.25;
    margin-block-end: var(--margin-size, 1.5em);
  }
  form a {
    display: inline-block;
    line-height: 2;
  }
  .entry-text .button + .button {
    margin-inline-start: var(--button-spacing);
  }
  p.button {
    display: flex;
    flex-wrap: wrap;
    gap: var(--button-spacing);
  }
  @media only screen and (max-width: 48rem) {
    form a {
      display: block;
    }
    /* the properties you put in */
  }
}
/* /* browser resets */
/* testing */
/* layout including margins */
:root {
  --figure-float-margin-side: 1.5em;
  /* Opt-in the whole page to animating to/from intrinsic sizing keywords with interpolate-size */
  interpolate-size: allow-keywords;
}

html {
  block-size: -webkit-fill-available;
  /* support ios */
}

body {
  inline-size: 100%;
  max-inline-size: 100vw;
  min-block-size: 100vh;
  min-block-size: 100svh;
  min-block-size: -webkit-fill-available;
  /* support ios */
  overflow-x: hidden;
  margin: 0;
}

a[class],
button,
input {
  overflow-wrap: normal;
  /* don't break words in these elements */
}

*,
::before,
::after {
  box-sizing: border-box;
}

img {
  font-style: italic;
  vertical-align: middle;
}

figure,
img,
picture,
video,
canvas {
  max-inline-size: min(100%, 90vw);
  height: auto;
}

picture,
video,
canvas {
  display: block;
}

svg {
  --svg-inline: 1em;
  --svg-block: 1em;
  display: block;
  inline-size: var(--svg-inline);
  block-size: var(--svg-block);
}

.wp-block-audio audio {
  width: min(300px, 100%);
  min-width: auto;
}

blockquote {
  margin: 0 0 var(--margin-size, 1.5em);
}

.wp-block-group > blockquote {
  margin: 0;
}

h2,
h3,
blockquote,
p,
ul,
dl,
figure {
  max-inline-size: min(var(--sentencemaxwidth, 94ch), 90vw);
}
#wpadminbar h2,
#wpadminbar h3,
#wpadminbar blockquote,
#wpadminbar p,
#wpadminbar ul,
#wpadminbar dl,
#wpadminbar figure {
  max-width: inherit;
}

blockquote,
blockquote p {
  --sentencemaxwidth: 92ch;
}

blockquote.tbrtheme-blockquote-fontsize-large,
blockquote.tbrtheme-blockquote-fontsize-large p {
  --sentencemaxwidth: 82ch;
}

.sentencemaxwidth63.tbrtheme-page-columns {
  --column-spacing: 8;
  --column-one: 42;
}
.sentencemaxwidth63 p {
  --sentencemaxwidth: 62ch !important;
}

@media only screen and (max-width: 83.5rem) {
  .has-text-align-center.has-text-align-center-on-mobile {
    margin-inline: auto;
    text-align: center;
  }
  /* the properties you put in */
}
@media only screen and (min-width: 83.5625rem) {
  .has-text-align-center {
    margin-inline: auto;
    text-align: center;
  }
  /* the properties you put in */
}
.has-text-align-right {
  text-align: end;
}

:where(ul, ol) {
  margin-block-end: var(--margin-size, 1.5em);
}
:where(ul, ol) :where(ul, ol) {
  margin-block-start: 1em;
}

.entry-text :where(ul, ol) {
  margin-block-end: var(--margin-size, 1.5em);
}
.entry-text :where(ul, ol) :where(ul, ol) {
  margin-block-start: 1em;
}

ul {
  padding-inline-start: 1em;
}

ol {
  padding-inline-start: 1.35em;
}

.list-no-bullets {
  list-style-type: none;
  padding-inline-start: 0;
}
.list-no-bullets::marker {
  content: none;
}
.list-no-bullets li {
  padding-inline-start: 0;
}

li {
  margin-block-end: 0.75em;
}

p {
  margin-block-end: var(--margin-size, 1.5em);
}

nav ul,
.entry-text nav ul {
  margin-block-end: 0;
  padding-inline-start: 0;
  list-style-type: none;
}
nav ul ::marker,
.entry-text nav ul ::marker {
  content: none;
}
nav ul li,
.entry-text nav ul li {
  padding-inline-start: 0;
}
nav ul > li::before,
.entry-text nav ul > li::before {
  content: "​"; /* zero-width space */
  position: absolute; /* here for accessible readers only */
}
nav ul li,
.entry-text nav ul li {
  margin-block-end: 0;
}

form ul,
nav ul {
  max-inline-size: none;
}

/* stop pre from overflowing the container on mobile */
pre {
  white-space: pre-line;
}

.entry-text *,
* {
  margin-block-start: 0;
}

.entry-text p:empty {
  margin: 0 !important;
  line-height: 0;
}

.entry-text * + :not(.blocks-gallery-item):last-child,
* + :last-child {
  margin-block-end: var(--margin-block-end, 0);
}

.entry-text > :not(div, iframe):last-child {
  margin-block-end: min(6vw, 3rem);
}

.entry-text > blockquote:last-child {
  margin-block-end: 0;
}

:is(iframe, figure, picture, img) {
  max-inline-size: min(100%, 90vw);
}

.is-type-video.is-provider-youtube iframe {
  height: auto;
  aspect-ratio: 16/9;
}

figure {
  margin: 0 0 var(--margin-size, 1.5em);
}
figure.aligncenter {
  margin: 0 auto var(--margin-size, 1.5em);
  text-align: center;
  inline-size: max-content;
  display: block;
}
figure.aligncenter img {
  margin-inline: auto;
}
figure.tbrtheme-banner-image {
  margin: 0;
}
figure[style*=width] {
  max-inline-size: 100%;
}

.entry-text figcaption {
  margin-block-start: 1em;
}

table {
  margin: var(--margin-size, 1.5em) 0 min(6vw, 3rem);
  overflow-wrap: normal;
}

table:has(+ figcaption) {
  margin-block-end: 0;
}

table + figcaption.wp-element-caption {
  margin-block-end: min(6vw, 3rem) !important;
  border-block-end: 0.3em solid var(--table-line, var(--test));
}

dd {
  margin-inline-start: 0;
}

@media only screen and (max-width: 35.5rem) {
  .flex-layout {
    margin-block-end: 2.5em;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 35.5625rem) {
  .flex-layout {
    display: flex;
    align-items: center;
    gap: 2em;
  }
  .flex-layout img {
    flex-shrink: 0;
  }
  .flex-layout figcaption {
    margin-block-start: 0;
  }
  .flex-layout {
    /* the properties you put in */
  }
}

/* user selection media query fixes / accommodations */
/* https://css-tricks.com/a-complete-guide-to-css-media-queries/ */
/* "The problem with invested colors is that it’ll also invert the colors of images and videos, making them look like x-ray images. By using a CSS invert filter you can select all images and videos and invert them back." At the time of writing this (Oct 6, 2020) feature is only supported by Safari. */
/* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/inverted-colors */
@media (inverted-colors: inverted) {
  img, video {
    filter: invert(100%);
  }
}
/* https://css-tricks.com/a-complete-guide-to-dark-mode-on-the-web/ */
@media (prefers-color-scheme: dark) {
  img, image {
    filter: brightness(0.8) contrast(1.2);
  }
}
/* future css: */
/* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/forced-colors */
/* browser resets */
/* scrollbar style */
/* see colours.scsss */
/* This is only for firefox scrollbars - on any element(*) */
* {
  /*              thumb track */
  scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track, var(--test));
  /* scrollbar-width: auto; // the default */
}

.wp-block-flexible-table-block-table {
  /*              thumb track */
  scrollbar-color: #fff #d8d8d8;
  scrollbar-width: auto;
}

/* This is only for webkit scrollbars - on any element (nothing before the ::) */
/* You can use the following pseudo elements to customize various parts of the scrollbar for webkit browsers: */
/* the entire scrollbar */
/* targets all scrollbars */
::-webkit-scrollbar {
  inline-size: 10px;
  block-size: 10px;
}

/* the track (progress bar) of the scrollbar */
::-webkit-scrollbar-track {
  background-color: var(--scrollbar-track, var(--test));
}

/* the draggable scrolling handle */
::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-thumb, var(--test));
  border-radius: 100vw;
  border: 3px solid var(--scrollbar-track, var(--test));
}

/* the buttons on the scrollbar (arrows pointing upwards and downwards) */
::-webkit-scrollbar-button {
  /* color: var(--scrollbar-track, var(--test)); */
  /* background-color: var(--scrollbar-thumb, var(--test)); */
  block-size: 0;
}

/* browser resets */
/* scrollbar style */
/* see colours.scsss */
/* This is only for firefox scrollbars - on any element(*) */
nav.nav-main {
  /*              thumb track */
  scrollbar-color: var(--scrollbar-nav-thumb) var(--scrollbar-nav-track, var(--test));
  /* scrollbar-width: auto; // the default */
}

/* This is only for webkit scrollbars - on any element (nothing before the ::) */
/* You can use the following pseudo elements to customize various parts of the scrollbar for webkit browsers: */
/* the entire scrollbar */
/* targets all scrollbars */
nav.nav-main::-webkit-scrollbar {
  inline-size: 12px;
  block-size: 12px;
}

/* the track (progress bar) of the scrollbar */
nav.nav-main::-webkit-scrollbar-track {
  background-color: var(--scrollbar-nav-track, var(--test));
}

/* the draggable scrolling handle */
nav.nav-main::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-nav-thumb, var(--test));
  border-radius: 100vw;
  border: 3px solid var(--scrollbar-nav-track, var(--test));
}

/* the buttons on the scrollbar (arrows pointing upwards and downwards) */
nav.nav-main::-webkit-scrollbar-button {
  /* color: var(--scrollbar-track, var(--test)); */
  /* background-color: var(--scrollbar-thumb, var(--test)); */
  block-size: 0;
}

/* page elements */
.tbrtheme-table-wrapper {
  max-width: 100%;
  overflow-x: auto;
}

.entry-text table:not(.site-contact-table) {
  --table-padding-inline: 1em;
  --table-padding-block: 0.375em;
  border-collapse: collapse;
  margin: 0;
  border: none;
}
.entry-text table:not(.site-contact-table) thead th {
  background-color: var(--bg);
}
.entry-text table:not(.site-contact-table) :is(tbody, tfoot) tr:nth-child(odd) :is(th, td) {
  background-color: var(--bg);
}
.entry-text table:not(.site-contact-table) :is(tbody, tfoot) :is(th, td) {
  border-block-start: 1px solid var(--txtalphalighter);
}
.entry-text table:not(.site-contact-table) th {
  font-weight: var(--bodytextbold);
}
.entry-text table:not(.site-contact-table) th,
.entry-text table:not(.site-contact-table) td {
  padding-inline: var(--table-padding-inline);
  padding-block: var(--table-padding-block);
  text-align: left;
  vertical-align: top;
  border: none;
  overflow-wrap: unset;
  min-inline-size: 14ch;
}
.entry-text table:not(.site-contact-table) thead {
  color: var(--table-head-txt);
  background-color: var(--table-head-bg);
}
.entry-text table:not(.site-contact-table) thead :is(th, td) {
  padding-block-start: calc(var(--table-padding-block) * 2);
}
.entry-text table:not(.site-contact-table):not(:has(tfoot)) tbody tr:last-child :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
.entry-text table:not(.site-contact-table) tfoot :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
.entry-text table:not(.site-contact-table) :is(th, td):first-child {
  --table-padding-inline: 2em 1em;
}
.entry-text table:not(.site-contact-table) :is(th, td):last-child {
  --table-padding-inline: 1em 2em;
}

table.tbrtheme-post-metadata {
  border-collapse: collapse;
  margin: 0;
  border: none;
}
table.tbrtheme-post-metadata thead th {
  background-color: var(--bg);
}
table.tbrtheme-post-metadata :is(tbody, tfoot) tr:nth-child(odd) :is(th, td) {
  background-color: var(--bg);
}
table.tbrtheme-post-metadata :is(tbody, tfoot) :is(th, td) {
  border-block-start: 1px solid var(--txtalphalighter);
}
table.tbrtheme-post-metadata th {
  font-weight: var(--bodytextbold);
}
table.tbrtheme-post-metadata th,
table.tbrtheme-post-metadata td {
  padding-inline: var(--table-padding-inline);
  padding-block: var(--table-padding-block);
  text-align: left;
  vertical-align: top;
  border: none;
  overflow-wrap: unset;
  min-inline-size: 14ch;
}
table.tbrtheme-post-metadata thead {
  color: var(--table-head-txt);
  background-color: var(--table-head-bg);
}
table.tbrtheme-post-metadata thead :is(th, td) {
  padding-block-start: calc(var(--table-padding-block) * 2);
}
table.tbrtheme-post-metadata:not(:has(tfoot)) tbody tr:last-child :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
table.tbrtheme-post-metadata tfoot :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
table.tbrtheme-post-metadata th {
  font-size: var(--remsizeh6);
  border-bottom: 0.125em solid #545454;
}
table.tbrtheme-post-metadata th[scope=row] {
  color: var(--table-head-txt);
  background-color: var(--table-head-bg);
}
table.tbrtheme-post-metadata td {
  inline-size: 22ch;
  max-inline-size: 22ch;
}

/* responsive table layout */
.wp-block-table {
  overflow: auto;
  max-inline-size: 90vw;
  max-block-size: 10em;
}

figure.wp-block-flexible-table-block-table {
  overflow: auto;
  inline-size: 100%;
  max-inline-size: 90vw;
  max-block-size: 32.25em;
}
figure.wp-block-flexible-table-block-table :is(th, td):not(:last-child) {
  max-inline-size: 35ch;
}

figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table {
  --sentencemaxwidth: null;
  display: inline-block;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default {
  border: 1px solid var(--table-line, var(--test));
  border-radius: var(--remsize12);
  margin-block-end: 2em;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table {
  border-collapse: collapse;
  margin: 0;
  border: none;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table thead th {
  background-color: var(--bg);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table :is(tbody, tfoot) tr:nth-child(odd) :is(th, td) {
  background-color: var(--bg);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table :is(tbody, tfoot) :is(th, td) {
  border-block-start: 1px solid var(--txtalphalighter);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table th {
  font-weight: var(--bodytextbold);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table th,
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table td {
  padding-inline: var(--table-padding-inline);
  padding-block: var(--table-padding-block);
  text-align: left;
  vertical-align: top;
  border: none;
  overflow-wrap: unset;
  min-inline-size: 14ch;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table thead {
  color: var(--table-head-txt);
  background-color: var(--table-head-bg);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table thead :is(th, td) {
  padding-block-start: calc(var(--table-padding-block) * 2);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table:not(:has(tfoot)) tbody tr:last-child :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-default table tfoot :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes {
  border: 1px solid var(--table-line, var(--test));
  border-radius: var(--remsize12);
  margin-block-end: 1.5em;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table {
  border-collapse: collapse;
  margin: 0;
  border: none;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table tbody tr:nth-child(odd) :is(th, td) {
  background-color: var(--table-alt-row-bg);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table tbody tr:nth-child(even) :is(th, td) {
  background-color: var(--bg);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table th {
  font-weight: var(--bodytextbold);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table th,
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table td {
  padding-inline: var(--table-padding-inline);
  padding-block: var(--table-padding-block);
  text-align: left;
  vertical-align: top;
  border: none;
  overflow-wrap: unset;
  min-inline-size: 14ch;
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table thead {
  color: var(--table-head-txt);
  background-color: var(--table-head-bg);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table thead :is(th, td) {
  padding-block-start: calc(var(--table-padding-block) * 2);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table:not(:has(tfoot)) tbody tr:last-child :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
figure.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table.is-style-stripes table tfoot :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}

html:has(:modal) {
  overflow: hidden;
}

::backdrop {
  background-color: rgba(0, 0, 0, 0.3);
}

/* element layout */
.wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin: 2em 0;
}
@media only screen and (max-width: 64rem) {
  .wp-block-buttons .wp-block-button {
    margin-block-end: 1em;
    /* the properties you put in */
  }
}

/* project resets */
/* override wp-block-columns layout */
.wp-block-columns {
  margin-block-end: 0;
  display: grid;
  justify-content: center;
  column-gap: var(--column-gap, min(6vw, 3rem));
  row-gap: var(--row-gap, 3rem);
  max-width: 90vw;
  overflow-wrap: break-word;
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-columns {
    grid-template-columns: repeat(auto-fit, minmax(min(36rem, 90vw), 1fr));
  }
  .wp-block-columns.tbrtheme-mobile-stack {
    grid-template-columns: 1fr;
  }
  .wp-block-columns.tbrtheme-mobile-reverse-order .wp-block-column:first-child {
    order: 1;
  }
  .wp-block-columns.columns-mobile-fullwidth {
    grid-column: fullwidth;
    max-width: none;
    width: 100vw;
  }
  .wp-block-columns {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-columns {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  }
  .wp-block-columns.wp-block-columns-uneven {
    grid-template-columns: var(--wp-block-columns-uneven);
  }
  .wp-block-columns.wp-block-columns-fourcols {
    --column-gap: min(6vw, 3rem);
  }
  .wp-block-columns.tbrtheme-col-gap-four {
    --column-gap: min(6vw, 4rem);
  }
  .wp-block-columns.tbrtheme-col-gap-five {
    --column-gap: min(10vw, 5rem);
  }
  .wp-block-columns.tbrtheme-col-gap-six {
    --column-gap: min(6vw, 6rem);
  }
  .wp-block-columns.tbrtheme-col-gap-seven {
    --column-gap: min(7vw, 7rem);
  }
  .wp-block-columns.tbrtheme-col-gap-eight {
    --column-gap: min(8vw, 8rem);
  }
  .wp-block-columns.tbrtheme-col-gap-nine {
    --column-gap: min(9vw, 9rem);
  }
  .wp-block-columns {
    /* the properties you put in */
  }
}
.wp-block-columns.intro-text {
  --wp-block-columns-uneven: repeat(3, 1fr);
  --transition-duration: 1750ms;
  padding-block: 0;
  margin-block-end: min(6vw, 3rem);
  gap: 0;
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-columns.intro-text {
    --intro-text-length: null;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-columns.intro-text {
    position: relative;
  }
  .wp-block-columns.intro-text::before {
    content: " ";
    position: absolute;
    left: 0;
    width: 150vw;
    height: 1px;
    transform: translateX(-25vw);
    background-image: linear-gradient(var(--grey-rule), var(--grey-rule));
    background-position: left;
    background-repeat: no-repeat;
    background-size: 100% 1px;
    bottom: 0;
  }
  .wp-block-columns.intro-text {
    /* the properties you put in */
  }
}
.wp-block-columns.intro-text .wp-block-column {
  padding-block: min(9vw, 2.25em);
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-columns.intro-text .wp-block-column {
    position: relative;
  }
  .wp-block-columns.intro-text .wp-block-column::before {
    content: " ";
    position: absolute;
    left: 0;
    width: 150vw;
    height: 1px;
    transform: translateX(-25vw);
    background-image: linear-gradient(var(--grey-rule), var(--grey-rule));
    background-position: left;
    background-repeat: no-repeat;
    background-size: 100% 1px;
    bottom: 0;
  }
  .wp-block-columns.intro-text .wp-block-column {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-columns.intro-text .wp-block-column {
    border-inline-start: 1px solid var(--txtalpha);
  }
  .wp-block-columns.intro-text .wp-block-column:nth-child(1) {
    border: none;
  }
  .wp-block-columns.intro-text .wp-block-column:nth-child(2) {
    --intro-text-length: 20ch;
  }
  .wp-block-columns.intro-text .wp-block-column {
    /* the properties you put in */
  }
}
.wp-block-columns.wp-block-columns-nocolgap {
  column-gap: 0;
}
.wp-block-columns.wp-block-columns-norowgap {
  row-gap: 0;
}

body:not(.home) section.entry > .entry-text > :where(.wp-block-group:last-of-type, .wp-block-columns:last-of-type).wp-block-columns-notopspacer {
  padding-block-start: 0;
}
body:not(.home) section.entry > .entry-text > :where(.wp-block-group:last-of-type, .wp-block-columns:last-of-type).wp-block-columns-nobottomspacer {
  padding-block-end: 0;
}

.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns).wp-block-columns-notopspacer {
  padding-block-start: 0;
}

.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns).wp-block-columns-nobottomspacer {
  padding-block-end: 0;
}

.wp-block-columns-notopspacer {
  padding-block-start: 0;
}

.wp-block-columns-nobottomspacer {
  padding-block-end: 0;
}

.wp-block-column {
  container-type: inline-size;
  margin-inline-start: -1px;
}
.wp-block-column:not(:first-child) {
  /* margin-inline-start: 0; // when padding used instead of margins */
}
@media only screen and (min-width: 80.0625rem) {
  .wp-block-column:not(:first-child).tbrtheme-column-left-rule {
    padding-inline-start: 2.5em;
    border-inline-start: 1px solid var(--txtalpha);
    /* the properties you put in */
  }
}
.wp-block-column.tbrtheme-column-margin-small:not(:first-child) {
  margin-inline-start: 2em;
}
.wp-block-column figure.tbrtheme-to-bottom {
  margin: auto 0 0;
}

/* 69rem = 1104px */
.wp-block-columns.columns-grid {
  --column-count: var(--column-one) + var(--column-two) + var(--column-spacing);
  --column-gap: 1rem;
  --column-spacing: 5;
  --column-one: 5;
  --column-two: calc(82 - (var(--column-spacing) + var(--column-one)));
}
@supports (display: grid) {
  .wp-block-columns.columns-grid .wp-block-column:not(:first-child) {
    --wp--style--block-gap: 0;
    margin-left: 0;
  }
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-columns.columns-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: min(6vw, 3rem);
  }
  .wp-block-columns.columns-grid .wp-block-column {
    flex: 1 1 20rem !important;
  }
  .wp-block-columns.columns-grid {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-columns.columns-grid {
    display: grid;
    grid-template-columns: repeat(var(--column-count), minmax(0, 1fr));
    column-gap: var(--column-gap);
    /* the properties you put in */
  }
}
.wp-block-columns.columns-grid .wp-block-column figure {
  margin: 0;
}
.wp-block-columns.columns-grid .wp-block-column:nth-child(1) {
  grid-column: span var(--column-one);
}
.wp-block-columns.columns-grid .wp-block-column:nth-child(2) {
  grid-column: calc(var(--column-one) + var(--column-spacing))/span var(--column-two);
}
.wp-block-columns.columns-grid .wp-block-column:nth-child(2).column-rule {
  position: relative;
}
.wp-block-columns.columns-grid .wp-block-column:nth-child(2).column-rule::before {
  display: block;
  content: " ";
  position: absolute;
  inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
  width: 1px;
  border-left: var(--line-thickness, 1px) solid;
}

.wp-block-gallery .blocks-gallery-grid {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  padding-inline-start: 0;
  list-style-type: none;
}
.wp-block-gallery .blocks-gallery-grid ::marker {
  content: none;
}
.wp-block-gallery .blocks-gallery-grid li {
  padding-inline-start: 0;
}
.wp-block-gallery .blocks-gallery-grid > li::before {
  content: "​"; /* zero-width space */
  position: absolute; /* here for accessible readers only */
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item {
  overflow: hidden;
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item img {
  transform: scale(1);
  transition: transform 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item figcaption {
  opacity: 1;
  transform: translateY(0%);
  transition: opacity 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53), transform 0ms cubic-bezier(0.55, 0.09, 0.68, 0.53) 250ms;
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:hover, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:active, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:focus-visible {
  z-index: 1;
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:hover img, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:active img, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:focus-visible img {
  transform: scale(1.05);
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:hover figcaption, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:active figcaption, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:focus-visible figcaption {
  opacity: 0;
  transform: translateY(100%);
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:hover, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:active, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item:focus-visible {
  /* the properties you put in */
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item figure {
  position: relative;
  margin: 0;
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item figure, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item picture, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item img, .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item figure > a {
  display: block;
  width: min(100%, 90vw);
  height: 100%;
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item img {
  object-fit: cover;
}
.wp-block-gallery .blocks-gallery-grid .blocks-gallery-item__caption {
  z-index: 1;
}
@supports (display: grid) {
  .wp-block-gallery .blocks-gallery-grid {
    gap: 1.5rem;
  }
  .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item {
    margin: 0;
    width: auto;
  }
}

.wp-block-gallery {
  --wp--style--block-gap: 0.25em;
}

/* project resets */
.no-sentence-max-width {
  --sentencemaxwidth: null;
}

/* wordpress */
.tbrtheme-card-image svg {
  inline-size: inherit;
  block-size: inherit;
}

.screen-reader-text {
  position: absolute;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  block-size: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  inline-size: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:active, .screen-reader-text:focus-visible {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  block-size: auto;
  inline-size: auto;
  inset-block-start: 5px;
  inset-inline-start: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  z-index: 100000;
  /* Above WP toolbar. */
}

.wp-block-columns.wp-block-columns-mobile {
  padding: 0;
}

.wp-block-columns.wp-block-columns-mobile + * {
  margin-block-start: min(6vw, 3rem);
}

/* stop pre from overflowing the container on mobile */
/* pre */
.wp-block-preformatted {
  white-space: pre-line;
}

.wp-block-separator {
  border: none;
  inline-size: 100%;
  block-size: 1px;
  margin-block: var(--margin-size, 1.5em);
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-separator {
    max-width: 90vw;
    margin-inline-start: 0;
    /* the properties you put in */
  }
}
.wp-block-separator.tbrtheme-separator-show {
  border-top: 1px solid var(--hr, var(--test));
}
.wp-block-separator.tbrtheme-separator-show.tbrtheme-separator-margin-bottom-zero {
  margin-block-end: 0;
}
.wp-block-separator.tbrtheme-separator-show.tbrtheme-separator-margin-block-small-zero {
  --margin-size: 0.5em 0;
}

.wp-block-separator-spacer {
  margin-block: 1.5em 2em;
}

@media only screen and (max-width: 83.5rem) {
  .wp-block-spacer.tbrtheme-spacer-height {
    height: min(6vw, 3rem) !important;
    /* the properties you put in */
  }
}

.wp-block-group__inner-container.wp-block-group-overflow-x {
  /* cater for grid tables and tabbed lists on mobile */
  overflow-x: auto;
}

/* img */
.aligncenter {
  margin-inline: auto;
}

figure.tbrtheme-stretch-image {
  height: 100%;
  margin-block-end: 0;
}
figure.tbrtheme-stretch-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gform_wrapper.gravity-theme .gform_fields {
  gap: 0.5em 1.5em;
}
@media only screen and (max-width: 640px) {
  .gform_wrapper.gravity-theme {
    --mobile-form-spacing: 1rem;
    padding: 0;
    padding-bottom: min(6vw, 1.5rem);
  }
  .gform_wrapper.gravity-theme .ginput_complex span {
    margin-bottom: 0;
  }
  .gform_wrapper.gravity-theme .gform_fields,
  .gform_wrapper.gravity-theme .ginput_complex {
    row-gap: var(--mobile-form-spacing, 1rem);
  }
  .gform_wrapper.gravity-theme {
    /* the properties you put in */
  }
}

/* gravity form field styles */
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
[id^=gform_wrapper].gform_wrapper select[multiple],
input[type=text],
.gform_wrapper.gravity-theme input[type=text],
.gform_wrapper.gravity-theme input[type=password],
.gform_wrapper.gravity-theme input[type=email],
.gform_wrapper.gravity-theme input[type=url],
.gform_wrapper.gravity-theme input[type=date],
.gform_wrapper.gravity-theme input[type=month],
.gform_wrapper.gravity-theme input[type=time],
.gform_wrapper.gravity-theme input[type=datetime],
.gform_wrapper.gravity-theme input[type=datetime-local],
.gform_wrapper.gravity-theme input[type=week],
.gform_wrapper.gravity-theme input[type=number],
.gform_wrapper.gravity-theme input[type=search],
.gform_wrapper.gravity-theme input[type=tel],
.gform_wrapper.gravity-theme input[type=color],
div.gfield--input-type-fileupload {
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  display: inline-block;
  line-height: 1.25;
  /* override mobile style of line-height: 2 */
  color: var(--ffplaceholdertext, var(--test));
  background-color: var(--ffbg, var(--test));
  font-family: inherit;
  font-size: var(--inputtextsize);
  font-weight: var(--inputfontweight);
  transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  border-width: 0;
  border-radius: 0.5625rem;
  transition: 100ms ease-in;
  padding: var(--ffpadding, 0.75em 1.5em);
  outline: 3px solid transparent;
  outline-offset: 0.25em;
}
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):hover, .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):active, .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):focus-visible,
[id^=gform_wrapper].gform_wrapper select[multiple]:hover,
[id^=gform_wrapper].gform_wrapper select[multiple]:active,
[id^=gform_wrapper].gform_wrapper select[multiple]:focus-visible,
input[type=text]:hover,
input[type=text]:active,
input[type=text]:focus-visible,
.gform_wrapper.gravity-theme input[type=text]:hover,
.gform_wrapper.gravity-theme input[type=text]:active,
.gform_wrapper.gravity-theme input[type=text]:focus-visible,
.gform_wrapper.gravity-theme input[type=password]:hover,
.gform_wrapper.gravity-theme input[type=password]:active,
.gform_wrapper.gravity-theme input[type=password]:focus-visible,
.gform_wrapper.gravity-theme input[type=email]:hover,
.gform_wrapper.gravity-theme input[type=email]:active,
.gform_wrapper.gravity-theme input[type=email]:focus-visible,
.gform_wrapper.gravity-theme input[type=url]:hover,
.gform_wrapper.gravity-theme input[type=url]:active,
.gform_wrapper.gravity-theme input[type=url]:focus-visible,
.gform_wrapper.gravity-theme input[type=date]:hover,
.gform_wrapper.gravity-theme input[type=date]:active,
.gform_wrapper.gravity-theme input[type=date]:focus-visible,
.gform_wrapper.gravity-theme input[type=month]:hover,
.gform_wrapper.gravity-theme input[type=month]:active,
.gform_wrapper.gravity-theme input[type=month]:focus-visible,
.gform_wrapper.gravity-theme input[type=time]:hover,
.gform_wrapper.gravity-theme input[type=time]:active,
.gform_wrapper.gravity-theme input[type=time]:focus-visible,
.gform_wrapper.gravity-theme input[type=datetime]:hover,
.gform_wrapper.gravity-theme input[type=datetime]:active,
.gform_wrapper.gravity-theme input[type=datetime]:focus-visible,
.gform_wrapper.gravity-theme input[type=datetime-local]:hover,
.gform_wrapper.gravity-theme input[type=datetime-local]:active,
.gform_wrapper.gravity-theme input[type=datetime-local]:focus-visible,
.gform_wrapper.gravity-theme input[type=week]:hover,
.gform_wrapper.gravity-theme input[type=week]:active,
.gform_wrapper.gravity-theme input[type=week]:focus-visible,
.gform_wrapper.gravity-theme input[type=number]:hover,
.gform_wrapper.gravity-theme input[type=number]:active,
.gform_wrapper.gravity-theme input[type=number]:focus-visible,
.gform_wrapper.gravity-theme input[type=search]:hover,
.gform_wrapper.gravity-theme input[type=search]:active,
.gform_wrapper.gravity-theme input[type=search]:focus-visible,
.gform_wrapper.gravity-theme input[type=tel]:hover,
.gform_wrapper.gravity-theme input[type=tel]:active,
.gform_wrapper.gravity-theme input[type=tel]:focus-visible,
.gform_wrapper.gravity-theme input[type=color]:hover,
.gform_wrapper.gravity-theme input[type=color]:active,
.gform_wrapper.gravity-theme input[type=color]:focus-visible,
div.gfield--input-type-fileupload:hover,
div.gfield--input-type-fileupload:active,
div.gfield--input-type-fileupload:focus-visible {
  border-color: var(--ffhoverborder, var(--test));
  /* the properties you put in */
}

.gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload {
  display: grid;
  grid-template-columns: 1fr auto;
}
.gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload {
  grid-column: 1/-1;
  display: grid;
  align-items: start;
  gap: 2em;
}
.gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload span.gfield_description {
  padding: 0;
  margin: 0;
  clear: none;
}
@media only screen and (max-width: 35.5rem) {
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload {
    grid-template-columns: 1fr;
  }
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload span.gfield_description {
    grid-column: 1;
    grid-row: 1;
  }
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload input {
    grid-column: 1;
    grid-row: 2;
  }
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 35.5625rem) {
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload {
    grid-template-columns: 1fr auto;
  }
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload span.gfield_description {
    grid-column: 1;
    grid-row: 1;
  }
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload input {
    grid-column: 2;
    grid-row: 1;
  }
  .gform_wrapper.gravity-theme div.gfield.gfield--input-type-fileupload .ginput_container_fileupload {
    /* the properties you put in */
  }
}

[id^=gform_wrapper].gform_wrapper select:not([multiple]),
.gform_wrapper.gravity-theme select {
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  display: inline-block;
  cursor: pointer;
  line-height: 1.25;
  appearance: none;
  /* replace down arrow with svg */
  /* background: left 0 / 100% 100% no-repeat inherit; */
  background: 96% center/18px 18px no-repeat url("../../icons/theme/form-select/angle-down.svg") var(--ffbg, var(--test));
  text-align: start;
  justify-content: start;
  color: var(--ffplaceholdertext, var(--test));
  background-color: var(--ffbg, var(--test));
  font-family: inherit;
  font-size: var(--inputtextsize);
  font-weight: var(--inputfontweight);
  transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  border-width: 0;
  border-radius: 0.5625rem;
  transition: 100ms ease-in;
  padding: var(--ffpadding, 0.75em 1.5em);
  outline: 3px solid transparent;
  outline-offset: 0.25em;
}
[id^=gform_wrapper].gform_wrapper select:not([multiple]):hover, [id^=gform_wrapper].gform_wrapper select:not([multiple]):active, [id^=gform_wrapper].gform_wrapper select:not([multiple]):focus-visible,
.gform_wrapper.gravity-theme select:hover,
.gform_wrapper.gravity-theme select:active,
.gform_wrapper.gravity-theme select:focus-visible {
  border-color: var(--ffhoverborder, var(--test));
  /* the properties you put in */
}
[id^=gform_wrapper].gform_wrapper select:not([multiple]),
.gform_wrapper.gravity-theme select {
  /* remove nasty glow in chrome */
}

.gform_wrapper select:not([multiple]) option {
  color: var(--ffplaceholdertext, var(--test));
  background-color: var(--ffbg, var(--test));
  font-family: inherit;
  font-size: var(--inputtextsize);
  font-weight: var(--inputfontweight);
  transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  cursor: pointer;
  line-height: 1.25;
  padding: 0.5em 1em;
}

.gform_wrapper textarea,
.gform_wrapper.gravity-theme textarea {
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  display: inline-block;
  line-height: 1.75;
  display: block;
  /* over-ride display:inline-block */
  color: var(--ffplaceholdertext, var(--test));
  background-color: var(--ffbg, var(--test));
  font-family: inherit;
  font-size: var(--inputtextsize);
  font-weight: var(--inputfontweight);
  transition: border-color 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  border-width: 0;
  border-radius: 0.5625rem;
  transition: 100ms ease-in;
  padding: var(--ffpadding, 0.75em 1.5em);
  outline: 3px solid transparent;
  outline-offset: 0.25em;
}
.gform_wrapper textarea:hover, .gform_wrapper textarea:active, .gform_wrapper textarea:focus-visible,
.gform_wrapper.gravity-theme textarea:hover,
.gform_wrapper.gravity-theme textarea:active,
.gform_wrapper.gravity-theme textarea:focus-visible {
  border-color: var(--ffhoverborder, var(--test));
  /* the properties you put in */
}

.gform_wrapper input[type=radio],
.gform_wrapper input[type=checkbox],
.gform_wrapper input[type=file],
.search-form input[type=radio],
.search-form input[type=checkbox],
.search-form input[type=file] {
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  outline-offset: 0;
}
.gform_wrapper input[type=radio]:active, .gform_wrapper input[type=radio]:focus-visible,
.gform_wrapper input[type=checkbox]:active,
.gform_wrapper input[type=checkbox]:focus-visible,
.gform_wrapper input[type=file]:active,
.gform_wrapper input[type=file]:focus-visible,
.search-form input[type=radio]:active,
.search-form input[type=radio]:focus-visible,
.search-form input[type=checkbox]:active,
.search-form input[type=checkbox]:focus-visible,
.search-form input[type=file]:active,
.search-form input[type=file]:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.gform_wrapper input[type=radio],
.gform_wrapper input[type=checkbox],
.search-form input[type=radio],
.search-form input[type=checkbox] {
  inline-size: 1em;
  block-size: 1em;
  border: 1px solid var(--ffborder, var(--test));
}
.gform_wrapper input[type=radio]:not(:checked),
.gform_wrapper input[type=checkbox]:not(:checked),
.search-form input[type=radio]:not(:checked),
.search-form input[type=checkbox]:not(:checked) {
  appearance: none;
}
.gform_wrapper input[type=radio],
.search-form input[type=radio] {
  border-radius: 50%;
}
.gform_wrapper input[type=checkbox],
.search-form input[type=checkbox] {
  border-radius: 0;
}

/* upload files */
.gform_drop_area {
  padding: var(--margin-size, 1.5em);
  border: 1px dashed var(--color-primary-700);
  text-align: center;
  margin-bottom: 0.5em;
  background: var(--color-files-upload-bg);
  border-radius: 0.5625rem;
}

.gform_wrapper .top_label input.medium[type=file] {
  inline-size: auto;
}

.gform_wrapper.gravity-theme .gfield-choice-input {
  inset-block-start: auto;
}

.gform_wrapper.gravity-theme .gfield-choice-input + label {
  cursor: pointer;
}

/* buttons */
.gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
  line-height: inherit;
}

.gform_wrapper.gravity-theme .gform_page_footer .button {
  margin-block: 0;
  overflow: hidden;
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button) {
  /* use either secondary (solid) OR outline */
  --btn-fg: var(--txt, var(--test));
  --btn-bg: transparent;
  --btn-bdr: var(--txt, var(--test));
  --btn-fg: currentcolor;
  --btn-bg: transparent;
  --btn-bdr: currentcolor;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  position: relative;
  isolation: isolate;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):focus {
  box-shadow: none;
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button)[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button) {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button)::before {
  content: " ";
  position: absolute;
  inset: 0;
  width: 0;
  background-color: var(--color-cta, var(--test));
  border-radius: inherit;
  transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
  z-index: -1;
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):hover::before, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):active::before, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):focus-visible::before {
  width: 100%;
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):hover, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):active, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):focus-visible {
  /* the properties you put in */
}
@media (any-hover: none) {
  .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button)::before {
    content: none;
  }
  .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):hover, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):active, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):focus-visible {
    --btn-bg: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  .menu-item.current-menu-item .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button) {
    --btn-bg: var(--color-cta, var(--test));
  }
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):hover, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):active, .gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button):focus-visible {
  --btn-fg: var(--light, var(--test));
  --btn-bdr: var(--color-cta, var(--test));
  /* the properties you put in */
}
.gform_wrapper.gravity-theme :where(.gform_previous_button.button, .secondary-button.button) {
  /* end use either secondary (solid) OR outline */
}
.gform_wrapper.gravity-theme .gform_save_link.button {
  --btn-fg: var(--bg);
  --btn-bg: var(--color-primary-button);
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.gform_wrapper.gravity-theme .gform_save_link.button:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.gform_wrapper.gravity-theme .gform_save_link.button:focus {
  box-shadow: none;
}
.gform_wrapper.gravity-theme .gform_save_link.button[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .gform_wrapper.gravity-theme .gform_save_link.button {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.gform_wrapper.gravity-theme .gform_save_link.button:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.gform_wrapper.gravity-theme .gform_save_link.button:hover, .gform_wrapper.gravity-theme .gform_save_link.button:active, .gform_wrapper.gravity-theme .gform_save_link.button:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
@media (prefers-color-scheme: dark) {
  .gform_wrapper.gravity-theme .gform_save_link.button:hover, .gform_wrapper.gravity-theme .gform_save_link.button:active, .gform_wrapper.gravity-theme .gform_save_link.button:focus-visible {
    --btn-bg: var(--shade-light-beige);
    /* the properties you put in */
  }
}
.gform_wrapper.gravity-theme .gfield_list_icons {
  --gfield-list-icons-button-size: 1.5rem;
  --gfield-list-icons-button-gap: 0.25em;
  background-color: transparent;
  width: calc(var(--gfield-list-icons-button-size) * 2 + var(--gfield-list-icons-button-gap));
  margin-inline-start: 2%;
  gap: var(--gfield-list-icons-button-gap);
}
.gform_wrapper.gravity-theme .gfield_list_icons button {
  background-repeat: no-repeat;
  background-size: var(--gfield-list-icons-button-size);
  margin: 0;
  width: var(--gfield-list-icons-button-size);
  height: var(--gfield-list-icons-button-size);
  flex: 0 0 var(--gfield-list-icons-button-size);
}
.gform_wrapper.gravity-theme .gfield_list_icons button.delete_list_item {
  margin: 0;
}

img.gform_ajax_spinner {
  width: 1.25rem;
  height: 1.25rem;
}

/* gravity form field text styles */
.gform_wrapper.gravity-theme .gform_fileupload_rules,
.gform_wrapper.gravity-theme .gfield_header_item {
  font-size: var(--label);
}

.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme .ginput_complex label,
.gform_wrapper.gravity-theme .field_description_below .ginput_complex label {
  font-family: Inter, var(--sans-serif);
  font-size: var(--label);
  font-weight: var(--bodytextweight);
  color: var(--formlabel, black);
  transition: color 100ms linear;
  cursor: pointer;
  display: block;
  padding: 0;
  margin: 0 0 0.25em;
  line-height: 1.3;
}

.gform_wrapper.gravity-theme .gfield_checkbox label,
.gform_wrapper.gravity-theme .gfield_radio label {
  font-family: Inter, var(--sans-serif);
  font-size: var(--label);
  font-weight: var(--bodytextweight);
  color: var(--formlabel, black);
  transition: color 100ms linear;
}

/* .gform_wrapper.gravity-theme .gfield_label { */
/* 	margin-block-start: 2em; */
/* } */
.gform_wrapper.gravity-theme .gfield_required {
  padding: 0;
  font-weight: var(--fontweight400);
  color: var(--formreq, var(--test));
  font-size: var(--remsizereq);
  line-height: 0.5;
  font-style: normal;
}

.gform_wrapper.gravity-theme .gfield_contains_required .ginput_complex label.gform-field-label--type-sub,
.gform_wrapper.gravity-theme .gfield_contains_required .gfield_label {
  font-weight: var(--fontweight400);
  display: flex;
  gap: 0.5em;
  align-items: center;
}
.gform_wrapper.gravity-theme .gfield_contains_required .ginput_complex label.gform-field-label--type-sub .gfield_required,
.gform_wrapper.gravity-theme .gfield_contains_required .gfield_label .gfield_required {
  font-weight: var(--fontweight400);
  color: var(--formreq, var(--test));
  font-size: var(--remsizereq);
  line-height: 0.5;
  font-style: normal;
}

.gform_confirmation_wrapper {
  margin: auto;
}

.gform_confirmation_message {
  font-weight: var(--fontweight400);
  text-align: center;
}

/* gravity form field messages */
.gform_required_legend {
  position: absolute;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  block-size: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  inline-size: 1px;
  word-wrap: normal !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors,
.gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .gform_wrapper .validation_message {
  background-color: var(--bg);
  border-color: var(--formerror, var(--test));
}
.gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
  border-color: var(--formerror, var(--test));
}
.gform_wrapper.gravity-theme .gform_validation_errors,
.gform_wrapper.gravity-theme [aria-invalid=true] + label,
.gform_wrapper.gravity-theme label + [aria-invalid=true],
.gform_wrapper.gravity-theme .gfield_error legend,
.gform_wrapper.gravity-theme .gfield_error .gfield_repeater_cell label,
.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .validation_message {
  color: var(--formerror, var(--test));
}
.gform_wrapper.gravity-theme .gform_validation_errors {
  font-size: var(--fontsmall);
  border-radius: 0;
  box-shadow: none;
  margin: 1em 0;
  /* close icon? what? hide it's padding space */
  padding-inline-start: 16px;
  /* end close icon? what? hide it's padding space */
}
.gform_wrapper.gravity-theme .gform_validation_errors > h2 {
  color: inherit;
  font-size: var(--bodytextsize);
  font-weight: var(--fontweight400);
  margin-block-end: 1em;
  /* close icon? what? hide it. */
}
.gform_wrapper.gravity-theme .gform_validation_errors > h2 .gform-icon {
  /* inset-block-start: auto; */
  /* height: auto; */
  display: none;
}
.gform_wrapper.gravity-theme .gform_validation_errors > h2 {
  /* end close icon? what? hide it. */
}
.gform_wrapper.gravity-theme .gform_validation_errors > ol {
  padding-inline-start: 0;
}
.gform_wrapper.gravity-theme .gform_validation_errors > ol li {
  color: inherit;
  font-size: inherit;
  list-style-type: none !important;
}
.gform_wrapper.gravity-theme .gform_validation_errors > ol a {
  color: var(--formerrorlinks, var(--test));
  font-size: inherit;
  text-decoration: underline;
  text-underline-offset: 0.125em;
}
.gform_wrapper.gravity-theme .gform_validation_errors > ol a:hover, .gform_wrapper.gravity-theme .gform_validation_errors > ol a:active, .gform_wrapper.gravity-theme .gform_validation_errors > ol a:focus-visible {
  text-decoration: none;
  /* the properties you put in */
}

/* gravity form field styles */
/* gravity forms */
.gform_wrapper.gravity-theme {
  --gform-left-right-padding: 0;
  max-inline-size: min(100%, 90vw);
}
.gform_wrapper.gravity-theme :is(.gform_fields, .ginput_complex) {
  --margin-size: 0.75rem;
  display: grid;
  gap: var(--margin-size, 1.5em);
}
@media only screen and (max-width: 48rem) {
  .gform_wrapper.gravity-theme :is(.gform_fields, .ginput_complex) {
    grid-template-columns: 1fr;
  }
  .gform_wrapper.gravity-theme :is(.gfield.gfield--width-half, .gfield.gfield--width-full) {
    grid-column: span 1;
  }
  .gform_wrapper.gravity-theme {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) {
  .gform_wrapper.gravity-theme :is(.gform_fields, .ginput_complex) {
    grid-template-columns: repeat(2, 1fr);
  }
  .gform_wrapper.gravity-theme .gfield.gfield--width-half {
    grid-column: span 1;
  }
  .gform_wrapper.gravity-theme .gfield.gfield--width-full {
    grid-column: span 2;
  }
  .gform_wrapper.gravity-theme {
    /* the properties you put in */
  }
}
.gform_wrapper.gravity-theme .gform_footer {
  width: 100%;
  margin-block-start: 1em;
}
.gform_wrapper.gravity-theme .gform_fields > * {
  max-inline-size: calc(90vw - var(--form-inline-padding) * 2);
}
.gravity-form-100percent .gform_wrapper.gravity-theme {
  inline-size: 100%;
}
@media only screen and (max-width: 83.5rem) {
  .gform_wrapper.gravity-theme {
    overflow: hidden;
    /* the properties you put in */
  }
}
.gform_wrapper.gravity-theme .gfield textarea.large {
  height: 12em;
}
.gform_wrapper.gravity-theme div.gfield {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.gform_wrapper.gravity-theme div.gfield label.gfield_label {
  align-self: flex-start;
}
.gform_wrapper.gravity-theme div.gfield label.gfield_label + div {
  margin-top: auto;
}
.gform_wrapper.gravity-theme div.gfield {
  /* tbrtheme form 1 applicaton for vendors */
}
.gform_wrapper.gravity-theme div.gfield#field_2_25 label.gfield_label + div, .gform_wrapper.gravity-theme div.gfield#field_2_58 label.gfield_label + div, .gform_wrapper.gravity-theme div.gfield#field_2_66 label.gfield_label + div {
  margin-top: 0;
}
.gform_wrapper.gravity-theme div.gfield {
  /* end tbrtheme form 1 applicaton */
}
.gform_wrapper.gravity-theme .gfield_list_group {
  padding-inline: 0;
  border: none;
}
.gform_wrapper.gravity-theme .gchoice {
  display: flex;
  align-items: center;
  margin-block-end: 0.5em;
}
.gform_wrapper.gravity-theme input[type=checkbox] + label {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.gform_wrapper.gravity-theme input[type=radio] {
  margin: 0 0.5em 0 0;
}
.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform_page_footer {
  padding: 0;
  margin: 0;
  justify-content: flex-end;
}
.gform_wrapper.gravity-theme .gform_footer input,
.gform_wrapper.gravity-theme .gform_footer button,
.gform_wrapper.gravity-theme .gform_page_footer input,
.gform_wrapper.gravity-theme .gform_page_footer button {
  margin-bottom: 0;
}

.gform_page_footer {
  display: flex;
  justify-content: flex-end;
  gap: 0.5em;
}

.gform_wrapper.gravity-theme input[type=text].ginput_card_security_code {
  margin-block-end: -4px;
}

.grecaptcha-badge {
  z-index: 2;
}

.hidden_label {
  margin: 0;
}

.gform_wrapper.gravity-theme :where(.gform_footer, .gform_page_footer) :where(button + input, input + input, input + button) {
  margin-inline-start: 0;
}

.gfield_description.instruction {
  position: absolute;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  block-size: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  inline-size: 1px;
  word-wrap: normal !important;
}

.gform_wrapper.gravity-theme .ginput_container_address {
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 641px) {
  .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full),
  .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) {
    padding-right: var(--gform-left-right-padding, 1%);
  }
}
@media (min-width: 641px) {
  .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full) ~ span:not(.ginput_full),
  .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) ~ span:not(.ginput_full) {
    padding-left: var(--gform-left-right-padding, 1%);
  }
}
.gform_wrapper.gravity-theme .gf_page_steps {
  display: flex;
  flex-wrap: wrap;
  /*! autoprefixer: ignore next */
  justify-content: start;
  gap: 1em;
  border: none;
  padding-block-start: min(6vw, 3rem);
  padding-block-end: min(6vw, 3rem);
}
@media only screen and (max-width: 80rem) {
  .gform_wrapper.gravity-theme .gf_page_steps {
    flex-direction: column;
    /* the properties you put in */
  }
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step {
  margin: 0;
  display: inline-flex;
  align-items: center;
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step:hover, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:active, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:focus-visible {
  isolation: isolate;
  z-index: 10;
  /* the properties you put in */
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step_number {
  font-size: var(--bodytextsize);
  font-weight: var(--fontweight600);
  color: var(--color-primary-700);
  border-color: var(--color-primary-700);
  flex: 0 0 40px;
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step_active .gf_step_number {
  color: var(--light);
  background-color: var(--color-primary-700);
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step_completed .gf_step_number::before {
  /* overlay with background colour */
  background-color: var(--color-primary-700);
  border-color: var(--color-primary-700);
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step_completed .gf_step_number::after {
  /* tick */
  color: var(--light);
}
.gform_wrapper.gravity-theme .gf_page_steps .gf_step_label {
  padding-inline: 0.75em;
  font-size: inherit;
  line-height: 1.3;
}
@media only screen and (min-width: 80.0625rem) {
  .gform_wrapper.gravity-theme .gf_page_steps .gf_step_active .gf_step_label {
    display: revert;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 80.0625rem) {
  .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active) .gf_step_label {
    position: absolute;
    margin-inline-start: 3.25em;
    transform: scaleX(0);
    transform-origin: center left;
    transition: transform 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):hover, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):active, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):focus-visible {
    isolation: isolate;
  }
  .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):hover, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):active, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):focus-visible {
    /* the properties you put in */
  }
  .gform_wrapper.gravity-theme .gf_page_steps {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 80.0625rem) and (min-width: 80.0625rem) {
  .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):hover .gf_step_label, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):active .gf_step_label, .gform_wrapper.gravity-theme .gf_page_steps .gf_step:not(.gf_step_active):focus-visible .gf_step_label {
    transform: scaleX(1);
    background-color: var(--bg);
    padding: 1em;
    box-shadow: var(--x, 0) var(--y, 0) var(--boxshadowblur, 2px) var(--boxshadowspread, 0) rgb(var(--boxshadowrgb, 0 0 0)/var(--boxshadowalpha, 0.3));
    /* the properties you put in */
  }
}

.entry-text .gform_wrapper.gravity-theme .gsection {
  padding: 0;
  border-bottom: none;
}
.entry-text .gform_wrapper.gravity-theme.gf-multipage_wrapper {
  inline-size: 100%;
  max-inline-size: none;
}
.entry-text .gform_wrapper.gravity-theme.gf-multipage_wrapper .gsection {
  padding: 0;
  border-bottom: none;
}
.entry-text .gform_wrapper.gravity-theme.gf-multipage_wrapper .gsection ~ .gsection {
  border-block-start: 1px solid var(--txtalpha);
  padding-block-start: 2em;
  margin-block-start: 1em;
}
.entry-text .gform_wrapper.gravity-theme.gf-multipage_wrapper .gsection_title,
.entry-text .gform_wrapper.gravity-theme.gf-multipage_wrapper .tbrtheme-gf-legend_title {
  margin: 0;
}
.entry-text .gform_wrapper.gravity-theme form.gf-multipage {
  inline-size: 100%;
}
.entry-text .gform_wrapper.gravity-theme form.gf-multipage .tbrtheme-gf-hide-desc .gfield_description {
  display: none;
}
@media only screen and (min-width: 83.5625rem) {
  .entry-text .gform_wrapper.gravity-theme form.gf-multipage div.tbrtheme-gf-content-float {
    grid-column: span 4;
  }
  .entry-text .gform_wrapper.gravity-theme form.gf-multipage div#field_2_60.tbrtheme-gf-content-float {
    grid-column: span 7;
  }
  .entry-text .gform_wrapper.gravity-theme form.gf-multipage {
    /* the properties you put in */
  }
}
.entry-text .gform_wrapper.gravity-theme form.gf-multipage #gform_ppcp_smart_payment_buttons.medium {
  width: auto;
  margin-block: 0;
}

.gform_wrapper.gravity-theme .gf_progressbar {
  --progressbar-radius: 1em;
  --layout: 0.35em;
  border-radius: var(--progressbar-radius);
  margin-bottom: var(--margin-size, 1.5em);
  background-color: var(--ffbg, var(--test));
}
.gform_wrapper.gravity-theme .gf_progressbar span {
  font-size: var(--fontsmall);
  line-height: 1;
  margin-inline: calc(var(--layout) * 2);
  padding-block: var(--layout);
  float: none;
}
.gform_wrapper.gravity-theme .gf_progressbar_title {
  color: var(--light-grey-text, var(--test));
  font-size: var(--fontsmall);
  margin-block-end: 0.5em;
}
.gform_wrapper.gravity-theme .gf_progressbar_percentage {
  text-align: end;
  height: auto;
  border-radius: var(--progressbar-radius);
}
.gform_wrapper.gravity-theme .gf_progressbar_percentage:not(.percentbar_100) {
  border-radius: var(--progressbar-radius) 0 0 var(--progressbar-radius);
}
.gform_wrapper.gravity-theme .gf_progressbar .percentbar_custom {
  color: var(--light, var(--test));
  background-color: var(--color-progress);
}

/* blocks gallery */
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content {
  padding-block-start: min(10vw, 5rem);
  padding-block-end: min(10vw, 5rem);
  --gallerythumbwidth: 333px;
  --gallerythumbheight: 300px;
  --gallerythumbpadding: 0.75em;
  --gallerythumbbg: var(--color-primary-700);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--gallerythumbwidth, 150px), 1fr));
  grid-auto-rows: var(--gallerythumbheight, 150px);
  column-gap: min(5vw, 1.5rem);
  row-gap: min(5vw, 1.5rem);
}
@media only screen and (max-width: calc(666px + min(var(--pagesidemargin), 5rem) * 2 + min(5vw, 1.5rem))) {
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content {
    --gallerythumbheight: 400px;
  }
}
@media only screen and (min-width: calc(666px + min(var(--pagesidemargin), 5rem) * 2 + min(5vw, 1.5rem))) {
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content {
    --gallerythumbheight: 300px;
  }
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-caption {
  grid-auto-rows: var(--gallerythumbheight, 150px) minmax(1em, min-content);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-caption :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) {
  grid-row: span 2;
}
@media only screen and (max-width: calc(666px + min(var(--pagesidemargin), 5rem) * 2 + min(5vw, 1.5rem))) {
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-caption :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):not(.has-caption) {
    grid-template-rows: none;
  }
}
@media only screen and (min-width: calc(666px + min(var(--pagesidemargin), 5rem) * 2 + min(5vw, 1.5rem))) {
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-video {
    --gallerythumbheight: 225px;
  }
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-video :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) img,
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-video :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) video {
    aspect-ratio: var(--aspect-ratio, 16/9);
  }
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-lightbox :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) {
  opacity: 1;
  transition: opacity var(--transition-timing) linear;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.has-lightbox :is(figure.wp-block-tbrtheme-image img, figure.wp-block-tbrtheme-video video) {
  transition: filter var(--transition-timing) ease, scale var(--transition-timing) ease;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) {
  display: grid;
  grid-template-rows: subgrid;
  row-gap: 0.25em;
  margin: 0;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) :is(a, picture, img, video) {
  width: 100%;
  height: 100%;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) :is(img, video) {
  object-fit: cover;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) video {
  height: 101%;
  max-inline-size: none;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
  margin-block-start: 0;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-centre :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) {
  background-color: var(--gallerythumbbg, silver);
  padding: var(--gallerythumbpadding, 0.5em);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-centre :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) img {
  object-fit: contain;
  margin: auto;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-centre :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
  text-align: center;
  margin-block-start: var(--gallerythumbpadding, 0.5em);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover {
  grid-auto-rows: var(--gallerythumbheight, 150px);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) {
  display: grid;
  grid-template-areas: "content";
  grid-row: span 1;
  overflow: hidden;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) img {
  transform: scale(1);
  transition: transform 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
  opacity: 1;
  transform: translateY(0%);
  transition: opacity 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53), transform 0ms cubic-bezier(0.55, 0.09, 0.68, 0.53) 250ms;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):hover, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):active, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):focus-visible {
  z-index: 1;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):hover img, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):active img, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):focus-visible img {
  transform: scale(1.05);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):hover figcaption, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):active figcaption, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):focus-visible figcaption {
  opacity: 0;
  transform: translateY(100%);
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):hover, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):active, .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video):focus-visible {
  /* the properties you put in */
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) .tbrtheme-image-wrapper,
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) video,
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
  grid-area: content;
}
.wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
  align-self: end;
  --opacity: 0.5;
  backdrop-filter: blur(15px);
  padding: 0.3em 0.6em;
  background-color: var(--shade-light);
}
@media (prefers-color-scheme: dark) {
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
    background-color: var(--shade-dark);
  }
}
@media (hover: none) {
  .wp-block-tbrtheme-gallery .tbrtheme-gallery-content.image-hover.has-video :is(figure.wp-block-tbrtheme-image, figure.wp-block-tbrtheme-video) figcaption {
    align-self: start;
  }
}

.tbrtheme-gallery-content.has-lightbox:has(.wp-block-tbrtheme-image:hover) :is(.wp-block-tbrtheme-image, .wp-block-tbrtheme-video):not(:hover) {
  opacity: 0.75;
}
.tbrtheme-gallery-content.has-lightbox:has(.wp-block-tbrtheme-image:hover) :is(.wp-block-tbrtheme-image, .wp-block-tbrtheme-video):not(:hover) img, .tbrtheme-gallery-content.has-lightbox:has(.wp-block-tbrtheme-image:hover) :is(.wp-block-tbrtheme-image, .wp-block-tbrtheme-video):not(:hover) video {
  scale: 0.98;
  filter: grayscale(100%);
}

@supports not selector(:has(a, b)) {
  .tbrtheme-gallery-content.has-lightbox .wp-block-tbrtheme-image:hover img, .tbrtheme-gallery-content.has-lightbox .wp-block-tbrtheme-image:hover video {
    scale: 1.025;
    filter: contrast(125%) brightness(95%);
  }
}
/* wordpress classic editor */
.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--gallerythumbwidth, 150px), 1fr));
  gap: var(--gallerygap, min(6vw, 3rem));
  margin-block-end: 3rem;
}
.gallery figure.gallery-item {
  display: grid;
  grid-template-areas: "content";
  margin: 0;
  overflow: hidden;
}
.gallery figure.gallery-item img {
  transform: scale(1);
  transition: transform 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.gallery figure.gallery-item figcaption {
  opacity: 1;
  transform: translateY(0%);
  transition: opacity 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53), transform 0ms cubic-bezier(0.55, 0.09, 0.68, 0.53) 250ms;
}
.gallery figure.gallery-item:hover, .gallery figure.gallery-item:active, .gallery figure.gallery-item:focus-visible {
  z-index: 1;
}
.gallery figure.gallery-item:hover img, .gallery figure.gallery-item:active img, .gallery figure.gallery-item:focus-visible img {
  transform: scale(1.05);
}
.gallery figure.gallery-item:hover figcaption, .gallery figure.gallery-item:active figcaption, .gallery figure.gallery-item:focus-visible figcaption {
  opacity: 0;
  transform: translateY(100%);
}
.gallery figure.gallery-item:hover, .gallery figure.gallery-item:active, .gallery figure.gallery-item:focus-visible {
  /* the properties you put in */
}
.gallery figure.gallery-item .gallery-icon, .gallery figure.gallery-item figcaption {
  grid-area: content;
}
.gallery figure.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery figure.gallery-item figcaption {
  align-self: end;
  z-index: 1;
}

:where(.gallery, .wp-block-gallery) figcaption {
  font-family: Inter, var(--sans-serif);
  font-size: var(--caption);
  font-weight: var(--fontweight400);
  text-transform: capitalize;
  text-align: center;
  display: block;
  margin: 0;
  padding: 3em 0.77em 0.7em;
  line-height: 1.2;
  color: var(--figcaption);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0, rgba(0, 0, 0, 0.3) 70%, transparent);
  pointer-events: none;
  max-height: none;
  position: initial;
}

/* Baquette lightbox */
#baguetteBox-overlay,
.baguetteBox-button {
  background-color: var(--bg) !important;
}

.baguetteBox-button svg {
  inline-size: 100%;
  block-size: 100%;
}
.baguetteBox-button svg polyline,
.baguetteBox-button svg g {
  stroke: var(--color-primary-700);
}
.baguetteBox-button:focus, .baguetteBox-button:hover {
  background-color: var(--bg) !important;
}
.baguetteBox-button:focus svg polyline,
.baguetteBox-button:focus svg g, .baguetteBox-button:hover svg polyline,
.baguetteBox-button:hover svg g {
  stroke: var(--color-primary-700);
}

#baguetteBox-overlay .full-image {
  display: inline-flex;
  justify-content: center;
  padding-block-start: 1em;
}
#baguetteBox-overlay .full-image figure {
  display: flex;
  justify-content: center;
}
#baguetteBox-overlay .full-image img {
  box-shadow: none;
  object-fit: contain;
  background-color: var(--light);
}
#baguetteBox-overlay .full-image figcaption {
  color: var(--light);
  background-color: var(--color-footer-bg);
  font-family: inherit;
  padding: 0.5em 1em;
  line-height: 1.3;
}
@media only screen and (max-width: 83.5rem) {
  #baguetteBox-overlay .full-image figcaption {
    text-align: left;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  #baguetteBox-overlay .full-image {
    padding-block-start: 0;
  }
  #baguetteBox-overlay figure {
    align-items: center;
  }
  #baguetteBox-overlay {
    /* the properties you put in */
  }
}

/*@forward "project";*/
/* eg:
main {
	@include animation($jump) {
		transform: translateY(-6rem);
	}
} */
/* for some headings */
/* slower for bigger icons */
/* 300ms for smaller icons */
/* 300ms for smaller icons */
/* eg @include animation($reveal) */
/* details / summary navigation animation */
/* details summary nav constants */
/* fade into view - uses pointer-events css */
/* end fade into view */
/* from top */
/* end from top */
/* from side */
/* end from side */
/* from bottom on desktop */
/* end from bottom */
/* use these on scss files when calling animations:
@use "../navigation/details-summary-nav/animations" as *;
@use "../animations/" as *;
*/
@keyframes text-slide-up-fade-in {
  0% {
    opacity: 0;
    transform: translateY(var(--animation-translate));
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes text-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.tbrtheme-watch-visible {
  --transition-bezier: linear;
  --transition-duration: 750ms;
  --transition-delay: 400ms;
  --animation-translate: -2rem;
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible {
    opacity: 0;
    transform: translateY(var(--animation-translate));
  }
}
.tbrtheme-watch-visible.tbrtheme-no-watch {
  animation: none;
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible.tbrtheme-no-watch {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible.tbrtheme-in-view {
    animation: text-slide-up-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}
.tbrtheme-watch-visible.tbrtheme-person {
  --animation-translate: -1rem;
}
.tbrtheme-watch-visible.tbrtheme-season-tip {
  --animation-translate: -1rem;
}
.tbrtheme-watch-visible.tbrtheme-teaser {
  --animation-translate: -1rem;
}
.tbrtheme-watch-visible.tbrtheme-teaser-newsletter {
  --animation-translate: -1rem;
}
.tbrtheme-watch-visible.wp-block-tbrtheme-project-cat {
  --animation-translate: -1rem;
}
.tbrtheme-watch-visible.tbrtheme-person-excerpt-wrapper {
  --animation-translate: 2rem;
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible.tbrtheme-person-excerpt-wrapper {
    opacity: 0;
    transform: translateY(var(--animation-translate));
  }
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible.tbrtheme-person-excerpt-wrapper.tbrtheme-in-view {
    animation: text-slide-up-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible.wp-block-tbrtheme-timeline-card {
    opacity: 0;
    transform: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-watch-visible.wp-block-tbrtheme-timeline-card.tbrtheme-in-view {
    animation: text-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .page-template-investors .tbrtheme-watch-visible,
  .page-template-tbrtheme-watch-visible-fade .tbrtheme-watch-visible,
  .tbrtheme-watch-visible.tbrtheme-watch-visible-fade {
    opacity: 0;
    transform: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .page-template-investors .tbrtheme-watch-visible.tbrtheme-in-view,
  .page-template-tbrtheme-watch-visible-fade .tbrtheme-watch-visible.tbrtheme-in-view,
  .tbrtheme-watch-visible.tbrtheme-watch-visible-fade.tbrtheme-in-view {
    animation: text-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .single-tbrtheme_product h2.tbrtheme-watch-visible {
    opacity: 0;
    transform: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .single-tbrtheme_product h2.tbrtheme-watch-visible.tbrtheme-in-view {
    animation: text-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .single-post .tbrtheme-watch-visible {
    opacity: 0;
    transform: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .single-post .tbrtheme-watch-visible.tbrtheme-in-view {
    animation: text-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}

:root {
  --transition-timing: 500ms;
}

.wp-block-tbrtheme-team-gallery {
  --grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-team-gallery {
    --grid-column: content;
    /* the properties you put in */
  }
}

/*
	profile picture:
	design size: 					  280 X 300 pixels
	aspect-ratio: 28 / 30;
	web size:
	280*2=560
	300*2=600
	retina/responive size (double it) 560 X 600 pixels
*/
.wp-block-group.tbrtheme-people-intro-text,
.wp-block-columns.tbrtheme-people-intro-text {
  padding-block-end: min(6vw, 4rem);
}

.tbrtheme-people {
  display: grid;
  row-gap: min(3vw, 1.5rem);
  column-gap: min(3vw, 1.5rem);
  padding-block: min(6vw, 4rem) min(10vw, 5rem);
  align-items: start;
  grid-template-columns: repeat(4, 1fr);
}
@media only screen and (min-width: 35.5625rem) and (max-width: 48rem) {
  .tbrtheme-people {
    grid-template-columns: repeat(3, 1fr);
    /* the properties you put in */
  }
}
@media only screen and (max-width: 35.5rem) {
  .tbrtheme-people {
    grid-template-columns: repeat(auto-fill, minmax(171px, 1fr));
    /* the properties you put in */
  }
}
@media only screen and (max-width: 35.5rem) {
  .tbrtheme-people:not(.tbrtheme-has-person-content) {
    grid-template-columns: repeat(2, 1fr);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  @supports (grid-template-rows: subgrid) {
    .tbrtheme-people {
      grid-template-rows: auto max-content;
      row-gap: 1rem;
    }
    .tbrtheme-people.tbrtheme-has-person-content {
      grid-template-rows: auto max-content 1fr;
    }
  }
  .tbrtheme-people {
    /* the properties you put in */
  }
}
.no-js .tbrtheme-people {
  align-items: stretch;
}
.tbrtheme-person {
  position: relative;
}
.tbrtheme-person.show-description {
  align-self: stretch;
}
.tbrtheme-person.show-description .tbrtheme-person-toggle {
  transform: rotate3d(1, 0, 0, 180deg);
}
@supports (grid-template-rows: subgrid) {
  .tbrtheme-person {
    grid-row: span 2;
    display: grid;
    grid-template-rows: subgrid;
  }
  .tbrtheme-people.tbrtheme-has-person-content .tbrtheme-person {
    grid-row: span 3;
  }
}
.tbrtheme-person-toggle {
  grid-area: toggle;
  --btn-bdr-size: 0;
  --btn-fg: var(--txt);
  --ffbuttonpadding: 0.75em;
  min-inline-size: unset;
  translate: var(--ffbuttonpadding) calc(var(--ffbuttonpadding) * -1);
  transform: translateY(0);
  transition: transform 300ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.tbrtheme-person-toggle:hover, .tbrtheme-person-toggle:active, .tbrtheme-person-toggle:focus-visible {
  transform: translateY(0.25em);
  --btn-bg: var(--bg);
  /* the properties you put in */
}
.tbrtheme-person-toggle::before {
  content: none;
}
.tbrtheme-person-toggle-wrapper {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "name toggle" "role toggle";
  align-items: start;
}
.tbrtheme-person-toggle-wrapper :last-child {
  margin-block-end: 0;
}
.tbrtheme-person-role {
  grid-area: role;
  font-size: var(--remsize14-16);
  margin: 0;
}
.tbrtheme-person .tbrtheme-person-content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr auto;
  gap: 1rem;
  justify-items: start;
}
.tbrtheme-person .tbrtheme-person-content > * {
  margin: 0;
}
.tbrtheme-person .tbrtheme-person-content .tbrtheme-cta-link {
  --ffbuttonpadding: 0.75em 1.75em;
  --transition-bezier: linear;
  --transition-duration: 750ms;
  --transition-delay: 400ms;
  --animation-translate: 2rem;
  grid-row: 2;
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-person .tbrtheme-person-content .tbrtheme-cta-link {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .tbrtheme-person .tbrtheme-person-content .tbrtheme-cta-link {
    animation: text-slide-up-fade-in var(--transition-bezier) var(--transition-duration) forwards var(--transition-delay);
  }
}
.tbrtheme-person-image img {
  inline-size: 100%;
  aspect-ratio: 309/309;
  object-fit: cover;
  transition: filter var(--transition-timing) ease, scale var(--transition-timing) ease;
}
.tbrtheme-person-name {
  grid-area: name;
  margin-block-end: 0.125em;
  color: var(--heading-color);
  font-size: var(--remsize16-20);
  font-weight: 500;
  line-height: 1.1;
}
.tbrtheme-person-name a {
  text-decoration: none;
}
.tbrtheme-person-name a::before {
  content: " ";
  position: absolute;
  inset: 0;
}

.wp-block-tbrtheme-team-details {
  --grid-column: page;
  padding-block: min(6vw, 4rem) min(10vw, 5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-team-details {
    --grid-column: content;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-team-details .tbrtheme-team-details {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 2rem;
}
.wp-block-tbrtheme-team-details .tbrtheme-team-details h2 {
  margin-block-end: 1rem;
}
.wp-block-tbrtheme-team-details .tbrtheme-person-details {
  background-color: var(--alt-bg);
  padding: min(5vw, 2.5rem) min(6vw, 2.75rem) min(8vw, 3.125rem) min(5vw, 2.5rem);
  border-radius: 0.75em;
}
@media only screen and (max-width: 64rem) {
  .wp-block-tbrtheme-team-details .tbrtheme-person-details {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 1.75rem;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) {
  .wp-block-tbrtheme-team-details .tbrtheme-person-details {
    display: grid;
    grid-template-columns: 309px 1fr;
    column-gap: 3rem;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-team-details .tbrtheme-person-image img {
  inline-size: min(309px, 90vw);
}
.wp-block-tbrtheme-team-details .tbrtheme-person-role {
  margin-block-end: 1.25em;
}
.wp-block-tbrtheme-team-details .tbrtheme-person-content {
  --sentencemaxwidth: null;
}

/* To push a row to the bottom use
	position: sticky;
	top: 100vh;
	See /source/scss/layouts/_banner-links.scss
*/
body:not(.home) {
  grid-template-rows: auto 1fr;
}
body:not(.home) .site-content {
  align-content: stretch;
  height: 100%;
}
body:not(.home) :is(.entry-text, .site-content > .hentry > .entry) {
  height: 100%;
}
body:not(.home).single-tbrtheme_product .site-content, body:not(.home).page-template-request-form .site-content, body:not(.home).page-template-investors .site-content, body:not(.home).page-neutrog-glossary .site-content {
  align-content: start;
}
body:not(.home).single-tbrtheme_product .site-content > .hentry > .entry, body:not(.home).page-template-request-form .site-content > .hentry > .entry, body:not(.home).page-template-investors .site-content > .hentry > .entry, body:not(.home).page-neutrog-glossary .site-content > .hentry > .entry {
  height: auto;
}

body.single-post .site-content {
  align-content: start;
}

h1.website-title {
  max-block-size: var(--header-logo-height);
  display: grid;
}

.header-logo svg {
  inline-size: var(--header-logo-width, 200px);
  block-size: 100%;
  aspect-ratio: calc(var(--header-logo-width-aspect-ratio, 100) / var(--header-logo-height-aspect-ratio, 100));
  overflow: visible;
}

.mobile-only .header-logo svg {
  --header-logo-width-aspect-ratio: 35;
  --header-logo-height-aspect-ratio: 55;
  --header-logo-width: calc(var(--header-logo-width-aspect-ratio) * 1px);
}

.footer-logo {
  inline-size: min(90vw, 84rem, var(--footer-logo-width, 200px));
  block-size: 100%;
  aspect-ratio: calc(var(--footer-logo-width-aspect-ratio, 100) / var(--footer-logo-height-aspect-ratio, 100));
}

.footer-logo-container svg {
  inline-size: min(90vw, 84rem, var(--footer-logo-width, 200px));
  block-size: 100%;
  aspect-ratio: calc(var(--footer-logo-width-aspect-ratio, 100) / var(--footer-logo-height-aspect-ratio, 100));
  overflow: visible;
}

@media only screen and (max-width: 56rem) {
  body:not(.home) .tbrtheme-banner.vertical-align-text-center-mobile .wp-block-tbrtheme-banner_wrapper.has-content {
    align-self: center;
  }
  body:not(.home) .tbrtheme-banner {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  body:not(.home) .tbrtheme-banner {
    min-height: var(--banner-height);
  }
  body:not(.home) .tbrtheme-banner > *:not(.tbrtheme-banner-image) {
    align-self: center;
  }
  body:not(.home) .tbrtheme-banner {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  body:not(.home) .tbrtheme-banner {
    max-height: var(--banner-height);
  }
  body:not(.home) .tbrtheme-banner.wp-block-tbrtheme-banner-contact {
    max-height: none !important;
  }
  body:not(.home) .tbrtheme-banner.tbrtheme-banner-no-bottom-padding {
    max-height: none !important;
  }
  body:not(.home) .tbrtheme-banner {
    /* the properties you put in */
  }
}

body.home {
  grid-template-rows: 171px 1fr auto;
}
body.home .entry-text {
  align-content: stretch;
  height: 100%;
}
body.home article.page {
  display: grid;
  grid-template-columns: 1fr;
}
body.home .headertitle-sitemenu-wrapper {
  grid-row: 1;
}
body.home main.site-content {
  align-content: stretch;
  grid-row: 1/span 2;
}

.wp-block-tbrtheme-banner-front {
  --_top-gap: 13vw;
  color: var(--light);
  background-color: var(--color-banner-bg-home);
  min-height: 100%;
  max-height: var(--banner-height);
  margin-block-end: 0 !important;
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  align-content: stretch;
  grid-template-rows: min(var(--_top-gap), 240px) 0.95fr 0.05fr;
  position: relative;
  isolation: isolate;
}
@media (orientation: portrait) {
  .wp-block-tbrtheme-banner-front {
    --_top-gap: 23vw;
  }
}
.wp-block-tbrtheme-banner-front::before {
  content: " ";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, rgba(57, 57, 57, 0.9) 0%, rgba(58, 58, 58, 0.5) 20%, rgba(96, 96, 96, 0.2) 67.5%, rgba(148, 148, 148, 0) 100%);
  z-index: 0;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-image {
  grid-column: fullwidth;
  grid-row: 1/span 4;
  z-index: -1;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-image :is(picture, img) {
  max-inline-size: none;
  width: 100%;
  height: 100%;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-image img {
  object-fit: cover;
  object-position: center;
  aspect-ratio: 1512/976;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content {
  --sentencemaxwidth: 63ch;
  grid-column: page;
  grid-row: 2;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(3, auto) 1fr auto;
  align-content: start;
  max-height: var(--banner-height);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content {
    grid-column: content;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section {
  grid-row: 5;
}
@media only screen and (max-width: 72.5rem) {
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section {
    margin-block: 3.25rem 7rem;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 72.5625rem) {
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section {
    justify-self: end;
    margin-block-end: min(5vw, 5.25rem);
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: min(2vw, 2rem);
  row-gap: 1rem;
}
@media only screen and (min-width: 72.5625rem) {
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section {
    grid-template-columns: repeat(4, minmax(244px, 1fr));
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a {
  inline-size: 100%;
  border-radius: 1em;
  border: var(--line-thickness, 1px) solid var(--light, var(--test));
  position: relative;
  isolation: isolate;
  display: grid;
  text-decoration: none;
  overflow: hidden;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a::before {
  content: " ";
  position: absolute;
  inset: 0 0 0 0;
  z-index: -1;
  border-radius: inherit;
  /* From https://css.glass */
  backdrop-filter: blur(6px);
  background-color: rgba(47, 43, 43, 0.063);
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(102, 102, 102, 0.08) 100%);
  display: block;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a p.tbrtheme-section-link-title {
  margin: 0;
  font-size: var(--remsize20-25);
  font-weight: 500;
  line-height: 1.16;
}
.wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a p.tbrtheme-section-link-title br {
  display: initial;
}
@media only screen and (max-width: 72.5rem) {
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a {
    padding-block: min(3.25vw, 1.5625em);
    padding-inline: min(5vw, 1.5em);
    grid-template-columns: 1fr auto;
    align-items: center;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a .tbrtheme-section-link-image {
    order: 1;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a .tbrtheme-section-link-image svg {
    transform: scale(0.8);
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a .tbrtheme-section-link-arrow {
    display: none;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 72.5625rem) {
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a {
    aspect-ratio: 225/245;
    padding-block: min(5vw, 1.5rem);
    grid-template-columns: min(5vw, 1.3125rem) 1fr min(5vw, 1.3125rem);
    grid-template-rows: 46px 1fr auto 0;
    transition: grid-template-rows 200ms linear;
    max-block-size: 266px;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a > * {
    grid-column: 2;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a .tbrtheme-section-link-image {
    grid-row: 1;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a .tbrtheme-section-link-title {
    grid-row: 3;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a .tbrtheme-section-link-arrow {
    --svg-inline: 1.125rem;
    --svg-block: 1.125rem;
    grid-row: 4;
    place-self: end;
    clip-path: inset(0 0 100%);
    transition: clip-path 200ms linear;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:hover, .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:active, .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:focus-visible {
    grid-template-rows: 46px 1fr auto 20px;
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:hover .tbrtheme-section-link-arrow, .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:active .tbrtheme-section-link-arrow, .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:focus-visible .tbrtheme-section-link-arrow {
    clip-path: inset(0);
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:hover, .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:active, .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a:focus-visible {
    /* the properties you put in */
  }
  .wp-block-tbrtheme-banner-front .tbrtheme-banner-content .nav-section .menu-section li a {
    /* the properties you put in */
  }
}

p + .wp-block-tbrtheme-banner {
  margin-block-start: min(6vw, 3rem);
}

.wp-block-tbrtheme-banner {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  grid-template-rows: min(6vw, 3rem) 1fr min(6vw, 3rem);
  position: relative;
  isolation: isolate;
  color: var(--light);
}
.entry-text .wp-block-tbrtheme-banner:last-child {
  position: sticky;
  top: 100vh;
}
.wp-block-tbrtheme-banner > * {
  grid-row: 2/-2;
}
@media only screen and (min-width: 56.0625rem) {
  .wp-block-tbrtheme-banner::before {
    content: " ";
  }
  .children-nav-footer-panel .wp-block-tbrtheme-banner::before {
    content: none;
  }
  .wp-block-tbrtheme-banner {
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-banner .tbrtheme-banner-image {
  grid-column: fullwidth;
  grid-row: 1/-1;
  z-index: -2;
  position: relative;
  isolation: isolate;
}
.wp-block-tbrtheme-banner .tbrtheme-banner-image::after {
  content: " ";
  position: absolute;
  inset: 0;
}
.children-nav-footer-panel .wp-block-tbrtheme-banner .tbrtheme-banner-image::after {
  background-image: linear-gradient(270deg, rgba(28, 26, 26, 0.8) 0.38%, rgba(28, 26, 26, 0.5) 42.2%, rgba(28, 26, 26, 0.2) 71.57%, rgba(28, 26, 26, 0) 99.95%);
}
.cta-footer-panel .wp-block-tbrtheme-banner .tbrtheme-banner-image::after {
  background-image: linear-gradient(270deg, rgba(28, 26, 26, 0.8) 0.38%, rgba(28, 26, 26, 0.5) 42.2%, rgba(28, 26, 26, 0.2) 71.57%, rgba(28, 26, 26, 0) 99.95%);
}
.wp-block-tbrtheme-banner .tbrtheme-banner-image :is(picture, img) {
  max-inline-size: none;
  width: 100%;
  height: 100%;
}
.wp-block-tbrtheme-banner .tbrtheme-banner-image img {
  object-fit: cover;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-banner .tbrtheme-banner-image :is(picture, img) {
    max-height: var(--banner-height);
  }
  .wp-block-tbrtheme-banner .tbrtheme-banner-image {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) {
  .wp-block-tbrtheme-banner .tbrtheme-banner-image img {
    aspect-ratio: 393/283;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  .wp-block-tbrtheme-banner .tbrtheme-banner-image img {
    aspect-ratio: 1515/550;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-banner:not(.wp-block-tbrtheme-banner-front) :is(picture, img) {
  min-height: 100%;
  max-height: calc(100vh - var(--header-wrapper-height));
}
.wp-block-tbrtheme-banner .tbrtheme-banner-content p:first-child {
  font-weight: 500;
  font-size: var(--remsize20-25);
  margin-block-end: 0.5em;
}
.wp-block-tbrtheme-banner .tbrtheme-banner-content h1.wp-block-heading {
  margin-block-start: 0;
}
.wp-block-tbrtheme-banner .tbrtheme-banner-content h1 ~ p {
  font-size: var(--remsize16-20);
  line-height: 1.2;
}
@media only screen and (max-width: 52.125rem) {
  .children-nav-footer-panel .wp-block-tbrtheme-banner {
    grid-template-rows: repeat(2, auto);
    row-gap: 3rem;
    color: var(--txt);
  }
  .children-nav-footer-panel .wp-block-tbrtheme-banner .tbrtheme-banner-image {
    grid-row: 2;
  }
  .children-nav-footer-panel .wp-block-tbrtheme-banner .wp-block-tbrtheme-banner_wrapper {
    grid-column: fullwidth;
    grid-row: 1;
  }
  .children-nav-footer-panel .wp-block-tbrtheme-banner .tbrtheme-banner-image::after {
    content: none;
  }
  .children-nav-footer-panel .wp-block-tbrtheme-banner :is(.wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children,
  .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li) {
    border-color: var(--txt);
  }
  .wp-block-tbrtheme-banner {
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-banner_wrapper {
  align-items: center;
  grid-column: fullwidth;
}
.wp-block-tbrtheme-banner_wrapper::before {
  content: " ";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.page-id-16 .wp-block-tbrtheme-banner_wrapper::before {
  background-image: linear-gradient(90deg, rgba(9, 101, 65, 0.9) 0.07%, rgba(9, 101, 65, 0.7) 29.52%, rgba(9, 101, 65, 0.2) 61.98%, rgba(9, 101, 65, 0) 99.92%);
}
.page-id-75 .wp-block-tbrtheme-banner_wrapper::before {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.58) 0.07%, rgba(0, 0, 0, 0.35) 29.52%, rgba(0, 0, 0, 0.2) 99.91%, rgba(0, 0, 0, 0) 99.92%);
}
.wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children {
  --line-thickness: 1px;
  border-block-end: var(--line-thickness, 1px) solid var(--light, var(--test));
}
.wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li {
  border-block-start: var(--line-thickness, 1px) solid var(--light, var(--test));
  flex: 1 0 auto;
}
.wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a {
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: 0.75em;
  font-size: var(--remsize18-25);
  font-weight: 500;
}
.wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a svg {
  --svg-inline: 1.25rem;
  --svg-block: 1.25rem;
}
@media (any-hover: hover) {
  .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a :is(span, svg) {
    transition: transform 200ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a:hover :is(span, svg), .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a:active :is(span, svg), .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a:focus-visible :is(span, svg) {
    transform: translateY(-0.5rem);
  }
  .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a:hover, .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a:active, .wp-block-tbrtheme-banner_wrapper .nav-children .tbrtheme-menu-children li a:focus-visible {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-tbrtheme-banner_wrapper {
    grid-column: page;
  }
  .wp-block-tbrtheme-banner_wrapper nav {
    grid-column: page;
  }
  .wp-block-tbrtheme-banner_wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-banner_wrapper {
    grid-column: content;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.1875rem) and (max-width: 83.5rem) {
  .wp-block-tbrtheme-banner_wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .wp-block-tbrtheme-banner_wrapper nav {
    grid-column: 2;
  }
  .wp-block-tbrtheme-banner_wrapper {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 52.125rem) {
  .wp-block-tbrtheme-banner_wrapper {
    row-gap: 2em;
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  }
  .wp-block-tbrtheme-banner_wrapper .nav-children {
    --margin-block-end: 1rem;
  }
  .wp-block-tbrtheme-banner_wrapper .nav-children * {
    --margin-block-end: null;
  }
  .wp-block-tbrtheme-banner_wrapper {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-tbrtheme-banner_wrapper.has-content {
    grid-column: fullwidth;
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
    row-gap: 2em;
  }
  .wp-block-tbrtheme-banner_wrapper.has-content > * {
    grid-column: page;
  }
  .wp-block-tbrtheme-banner_wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-banner_wrapper {
    align-items: center;
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 13; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 37;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .wp-block-tbrtheme-banner_wrapper > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .wp-block-tbrtheme-banner_wrapper > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .wp-block-tbrtheme-banner_wrapper.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .wp-block-tbrtheme-banner_wrapper.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .wp-block-tbrtheme-banner_wrapper .nav-children:only-child {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .wp-block-tbrtheme-banner_wrapper {
    /* the properties you put in */
  }
}

.tbrtheme-page-heading-cta {
  --column-gap: 0;
  --row-gap: 0;
  --sentencemaxwidth: null;
}
@media only screen and (max-width: 83.5rem) {
  .tbrtheme-page-heading-cta {
    display: grid;
    row-gap: min(6vw, 3rem);
  }
  .tbrtheme-page-heading-cta .wp-block-column {
    align-items: start;
  }
  .tbrtheme-page-heading-cta {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-page-heading-cta {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 7; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 43;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tbrtheme-page-heading-cta > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tbrtheme-page-heading-cta > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tbrtheme-page-heading-cta.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tbrtheme-page-heading-cta.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tbrtheme-page-heading-cta {
    --column-spacing: 7;
    --column-one: 46;
  }
  .tbrtheme-page-heading-cta {
    /* the properties you put in */
  }
}

.tbrtheme-cta-short-labelled-columns {
  column-gap: 2.25rem;
  row-gap: 1.375rem;
}

.wp-block-tbrtheme-cta-short h3,
.entry-text .wp-block-tbrtheme-cta-short-labelled h3 {
  grid-area: title;
}
.wp-block-tbrtheme-cta-short p,
.entry-text .wp-block-tbrtheme-cta-short-labelled p {
  grid-area: text;
  margin: 0;
  font-size: var(--remsize14-16);
}
.wp-block-tbrtheme-cta-short .wp-block-button-link,
.entry-text .wp-block-tbrtheme-cta-short-labelled .wp-block-button-link {
  grid-area: click;
}

.entry-text .wp-block-tbrtheme-cta-short-labelled {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "title click" "text click";
  column-gap: 1em;
  background-color: var(--alt-bg);
  padding: min(4vw, 2.5rem) min(5vw, 2.5rem);
  border: var(--line-thickness, 1px) solid;
  border-radius: var(--remsize12);
}
.entry-text .wp-block-tbrtheme-cta-short-labelled .wp-block-button-link {
  align-self: end;
}
.entry-text .wp-block-tbrtheme-cta-short-labelled .wp-block-button-link a {
  padding-inline: 1.25em;
}

.wp-block-tbrtheme-cta-short {
  width: 100%;
  border-radius: 0.75em;
}
.wp-block-tbrtheme-cta-short a {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "title click" "text click";
  column-gap: 1em;
  background-color: var(--alt-bg);
  padding: min(4vw, 2.5rem) min(5vw, 2.5rem);
  border: var(--line-thickness, 1px) solid;
  border-radius: var(--remsize12);
  align-items: center;
  text-decoration: none;
  position: relative;
  isolation: isolate;
  border-radius: inherit;
  transition: color 300ms linear;
}
@media (any-hover: hover) {
  .wp-block-tbrtheme-cta-short a::before {
    border-radius: inherit;
    content: " ";
    position: absolute;
    inset: 0;
    z-index: -1;
    clip-path: inset(0 100% 0 0);
    background-color: var(--color-logo);
    transition: clip-path 300ms linear;
  }
}
.wp-block-tbrtheme-cta-short a .wp-block-button-link {
  grid-area: click;
  --_icon-size: clamp(31px, 3vw, 49px);
  color: var(--light);
}
.wp-block-tbrtheme-cta-short a .wp-block-button-link.tbrtheme-with-icon svg {
  fill: var(--color-logo);
  stroke: var(--color-logo);
  --svg-inline: var(--_icon-size);
  --svg-block: var(--_icon-size);
}
.wp-block-tbrtheme-cta-short a:hover, .wp-block-tbrtheme-cta-short a:active, .wp-block-tbrtheme-cta-short a:focus-visible {
  color: var(--light);
}
.wp-block-tbrtheme-cta-short a:hover h3, .wp-block-tbrtheme-cta-short a:active h3, .wp-block-tbrtheme-cta-short a:focus-visible h3 {
  color: var(--light);
  transition: color 300ms linear;
}
.wp-block-tbrtheme-cta-short a:hover .wp-block-button-link.tbrtheme-with-icon svg, .wp-block-tbrtheme-cta-short a:active .wp-block-button-link.tbrtheme-with-icon svg, .wp-block-tbrtheme-cta-short a:focus-visible .wp-block-button-link.tbrtheme-with-icon svg {
  stroke: var(--light);
}
.wp-block-tbrtheme-cta-short a:hover::before, .wp-block-tbrtheme-cta-short a:active::before, .wp-block-tbrtheme-cta-short a:focus-visible::before {
  clip-path: inset(0);
}
.wp-block-tbrtheme-cta-short a:hover, .wp-block-tbrtheme-cta-short a:active, .wp-block-tbrtheme-cta-short a:focus-visible {
  /* the properties you put in */
}

.wp-block-tbrtheme-contact .site-contact a {
  text-decoration: none;
}
.wp-block-tbrtheme-contact .site-contact a:hover, .wp-block-tbrtheme-contact .site-contact a:active, .wp-block-tbrtheme-contact .site-contact a:focus-visible {
  text-decoration: underline;
  /* the properties you put in */
}
.wp-block-tbrtheme-contact .site-contact-subhead {
  margin-block-end: 0;
}

.tbrtheme-center-align {
  align-items: center;
}

body {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
@media only screen and (max-width: 83.5rem) {
  body > * {
    position: relative;
    max-width: 100vw;
    overflow-x: clip;
  }
  body {
    /* the properties you put in */
  }
}
body.error404 .entry-text > article {
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  body.error404 .entry-text > article {
    grid-column: content;
    /* the properties you put in */
  }
}
body > * {
  grid-column: var(--grid-column, fullwidth);
}

.site-footer {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  position: sticky;
  top: 100vh;
}

.site-content {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
.site-content > * {
  grid-column: fullwidth;
}

.entry-text {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
.entry-text > * {
  grid-column: var(--grid-column, fullwidth);
}
.entry-text > :where(.wp-block-group, .wp-block-columns) {
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .entry-text > :where(.wp-block-group, .wp-block-columns) {
    grid-column: content;
    /* the properties you put in */
  }
}
.entry-text > :where(.wp-block-group, .wp-block-columns).tbrtheme-fullwidth-panel {
  inline-size: 100%;
  grid-column: fullwidth;
  padding-block: min(6vw, 3rem);
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
.entry-text > :where(.wp-block-group, .wp-block-columns).tbrtheme-fullwidth-panel > * {
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .entry-text > :where(.wp-block-group, .wp-block-columns).tbrtheme-fullwidth-panel > * {
    grid-column: content;
  }
  .entry-text > :where(.wp-block-group, .wp-block-columns).tbrtheme-fullwidth-panel {
    /* the properties you put in */
  }
}
.entry-text > :where(.wp-block-group, .wp-block-columns).tbrtheme-panel-no-padding {
  padding: 0;
}
@media only screen and (max-width: 73rem) {
  .entry-text > :where(.wp-block-group, .wp-block-columns) {
    inline-size: 100%;
    grid-column: page;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 80rem) {
  .entry-text > :where(.wp-block-group, .wp-block-columns).tbrtheme-fullwidth-panel-mobile {
    inline-size: 100%;
    grid-column: fullwidth;
    padding-inline: min(6vw, 3rem);
  }
  .entry-text > :where(.wp-block-group, .wp-block-columns) {
    /* the properties you put in */
  }
}
.entry-text .wp-block-image.tbrtheme-fullwidth-panel {
  inline-size: 100%;
  grid-column: fullwidth;
}

.page-template-default .entry-text > *:not(div):not(figure):not(article):not(section),
.error404 .entry-text,
.center-content,
.center-content_wrapper,
.grid-auto-columns {
  inline-size: 100%;
  grid-column: page;
}
@media only screen and (min-width: 73.0625rem) {
  .page-template-default .entry-text > *:not(div):not(figure):not(article):not(section),
  .error404 .entry-text,
  .center-content,
  .center-content_wrapper,
  .grid-auto-columns {
    inline-size: 100%;
    grid-column: content;
    /* the properties you put in */
  }
}

.site-footer-content {
  inline-size: 100%;
  grid-column: content;
}
@media only screen and (max-width: 83.5rem) {
  .site-footer-content {
    grid-column: page;
    /* the properties you put in */
  }
}

.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns) {
  padding-block-start: min(10vw, 5rem);
  padding-block-end: min(10vw, 5rem);
}
.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns).tbrtheme-container-padding-three {
  padding-block-start: min(6vw, 3rem);
  padding-block-end: min(6vw, 3rem);
}
.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns).tbrtheme-container-padding-zero {
  padding-block-start: 0;
  padding-block-end: 0;
}
.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns).tbrtheme-container-padding-five-zero {
  padding-block-start: min(10vw, 5rem);
  padding-block-end: 0;
}
.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns).tbrtheme-container-padding-three-zero {
  padding-block-start: min(6vw, 3rem);
  padding-block-end: 0;
}

.entry-text > :where(.wp-block-group, .wp-block-columns, .grid-auto-columns) + :where(.wp-block-group, .wp-block-columns, .grid-auto-columns) {
  padding-block-start: 0;
}

.entry-text > .wp-block-group.tbrtheme-table-wrapper {
  padding-block-start: min(5vw, 1.5rem);
  padding-block-end: 0;
}
.entry-text > .wp-block-group.tbrtheme-table-wrapper:last-of-type {
  padding-block-end: 0;
}

.site-title {
  padding-block-start: min(5vw, 1.5rem);
}

.tbrtheme-footer-cta .wp-block-reusable {
  padding-block-start: 0;
  padding-block-end: min(6vw, 3rem);
}

.site-footer { /* stylelint-disable-line */
  padding-block-start: min(10vw, 5rem);
  padding-block-end: min(6vw, 4rem);
}

.entry-text > h2 + :where(.wp-block-group, .wp-block-columns) {
  padding-block-start: 0;
}

.wp-block-columns + .wp-block-columns {
  padding-block-start: 0;
}

.wp-block-columns + .wp-block-group:not(.tbrtheme-alt-bg) {
  padding-block-start: 0;
}

.wp-block-group + .wp-block-group:not(.tbrtheme-alt-bg, .tbrtheme-keep-padding) {
  padding-block-start: 0;
}

.wp-block-group + .wp-block-columns:not(.tbrtheme-alt-bg) {
  padding-block-start: 0;
}

.wp-block-group.tbrtheme-top-padding-no-bottom-padding {
  padding-block-start: min(10vw, 5rem);
  padding-block-end: 0;
}

.gf-multipage_wrapper {
  padding-block-end: min(10vw, 5rem);
}

/* default layout for when no layout blocks are being used */
.page-template-default .entry-text > *:first-child:not(div):not(figure):not(article):not(section):not(blockquote) {
  padding-block-start: min(10vw, 5rem);
}

.page-template-default .entry-text > *:last-child:not(div):not(figure):not(article):not(section):not(blockquote) {
  padding-block-end: min(10vw, 5rem);
}

/* end default layout for when no layout blocks are being used */
.nav-breadcrumbs { /* stylelint-disable-line */
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .nav-breadcrumbs {
    grid-column: content;
    /* the properties you put in */
  }
}

.page .page-title + .site-content {
  padding-block-start: 0 !important;
}

.entry-text > .wp-block-heading.page-title {
  padding-block-start: min(10vw, 5rem);
}

.site-content > .wp-block-heading.page-title {
  padding-block-start: min(10vw, 5rem);
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
.site-content > .wp-block-heading.page-title > * {
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .site-content > .wp-block-heading.page-title > * {
    grid-column: content;
  }
  .site-content > .wp-block-heading.page-title {
    /* the properties you put in */
  }
}

body:not(.home) section.entry > .entry-text > :where(.wp-block-group:last-of-type, .wp-block-columns:last-of-type) {
  padding-block-end: min(10vw, 5rem);
}

@media only screen and (max-width: 80rem) {
  .entry-text > .wp-block-columns.tbrtheme-fullwidth-panel {
    max-inline-size: none;
    flex-direction: revert;
  }
  .entry-text > .wp-block-columns.tbrtheme-alt-bg {
    max-inline-size: none;
    overflow-x: clip;
  }
  /* the properties you put in */
}
.entry-text p + h1 {
  margin-block-start: min(6vw, 3rem);
}

.wp-block-image + h3 {
  margin-block-start: 1.5rem;
}

.wp-block-column {
  display: flex;
  flex-direction: column;
}
.wp-block-column.is-vertically-aligned-top {
  justify-content: start;
}
.wp-block-column.is-vertically-aligned-center {
  justify-content: center;
}
.wp-block-column.is-vertically-aligned-bottom {
  justify-content: end;
}
.wp-block-column.is-vertically-aligned-bottom div.wp-block-button-link:last-child {
  margin-block-end: 0;
}
.wp-block-column :where(p.tbrtheme-cta:last-child, .content-float-bottom) {
  margin-block-start: auto;
}
.wp-block-column.content-float-top p.tbrtheme-cta:last-child {
  margin-block-start: revert;
}

.headertitle-sitemenu-wrapper {
  --transition-timing: 0;
  z-index: 32;
  color: var(--txt);
  background-color: var(--header-bg);
  position: relative;
  padding-block: min(2.5vw, 2.5em);
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
@media only screen and (min-width: 83.5625rem) {
  .headertitle-sitemenu-wrapper {
    place-items: center;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .headertitle-sitemenu-wrapper::before {
    content: " ";
    position: absolute;
    inset: 0;
    z-index: 1;
    background-color: inherit;
  }
  .headertitle-sitemenu-wrapper .headertitle-sitemenu_content {
    z-index: 2;
  }
  .nav-state-open .headertitle-sitemenu-wrapper .site-header {
    visibility: hidden;
  }
  .headertitle-sitemenu-wrapper {
    /* the properties you put in */
  }
}
.nav-state-open .headertitle-sitemenu-wrapper {
  transition: all var(--transition-timing) linear var(--transition-timing);
}
.home:not(.tbrtheme-submenu-active) .headertitle-sitemenu-wrapper {
  color: var(--light);
}
.headertitle-sitemenu_content {
  grid-column: page;
  display: grid;
  align-items: center;
}
@media only screen and (min-width: 83.5625rem) {
  .headertitle-sitemenu_content {
    grid-column: content;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .headertitle-sitemenu_content {
    grid-template-columns: 5rem 1fr var(--header-logo-width) 1fr 5rem;
    grid-template-areas: "toggle . logo . topnav";
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .headertitle-sitemenu_content {
    grid-template-columns: var(--header-logo-width) 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "logo topnav" "logo mainnav";
    /* the properties you put in */
  }
}
.headertitle-sitemenu_content .nav-toggle {
  grid-area: toggle;
  justify-self: start;
}
.headertitle-sitemenu_content .site-header {
  grid-area: logo;
  z-index: 32;
}
.headertitle-sitemenu_content .nav-top {
  grid-area: topnav;
}
.headertitle-sitemenu_content .site-nav {
  grid-area: mainnav;
}
@media only screen and (max-width: 83.5rem) {
  .headertitle-sitemenu_content .site-header {
    justify-self: start;
  }
  .headertitle-sitemenu_content .nav-top {
    z-index: 32;
  }
  .headertitle-sitemenu_content {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .headertitle-sitemenu_content {
    inline-size: min(min(84rem + var(--header-logo-width-aspect-ratio) * 1px * 2 + var(--breakoutwidth) * 2, 100%), 90vw);
  }
  .headertitle-sitemenu_content .site-nav_button {
    display: none;
  }
  .headertitle-sitemenu_content {
    /* the properties you put in */
  }
}

@media only screen and (max-width: 64rem) {
  .site-footer-content {
    /* https://developer.apple.com/videos/play/wwdc2021/10029/ */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/env() */
    padding-block-end: calc(1.5em + env(safe-area-inset-bottom));
  }
  /* the properties you put in */
}
.site-footer {
  --transition-duration: 1750ms;
  overflow: clip;
  /* tbrtheme logo */
}
.site-footer .footer-logo-container {
  /* paragraph */
  margin: 0;
  width: min(90vw, 84rem, var(--footer-logo-width, 200px));
  aspect-ratio: calc(var(--footer-logo-width-aspect-ratio, 100) / var(--footer-logo-height-aspect-ratio, 100));
  display: grid;
}
.site-footer :where(p, li) {
  font-size: var(--remsizefootertext);
  line-height: 1.625;
}
.site-footer a {
  text-decoration: none;
}
.site-footer a:hover, .site-footer a:active, .site-footer a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.125em;
  /* the properties you put in */
}
.site-footer-content {
  display: grid;
  align-items: start;
}
.site-footer-content .footer-logo-container {
  grid-area: logo;
}
.site-footer-content .nav-footer {
  grid-area: menu;
  position: relative;
  display: grid;
  column-gap: min(10vw, 5rem);
  row-gap: 3rem;
  padding-block-end: min(7vw, 3.5rem);
}
@media only screen and (max-width: 35.5rem) {
  .site-footer-content .nav-footer {
    grid-template-columns: 1fr;
    grid-template-areas: "main" "contact" "group";
    /* the properties you put in */
  }
}
@media only screen and (min-width: 35.5625rem) {
  .site-footer-content .nav-footer {
    grid-template-columns: repeat(3, max-content);
    grid-template-areas: "main contact group";
    /* the properties you put in */
  }
}
.site-footer-content .nav-footer h2 {
  margin-block-end: 0.5em;
}
.site-footer-content .nav-footer p,
.site-footer-content .nav-footer ul,
.site-footer-content .nav-footer li {
  margin: 0;
}
.site-footer-content .nav-footer .footer-menu-main {
  grid-area: main;
}
.site-footer-content .nav-footer .footer-menu-contact {
  grid-area: contact;
}
.site-footer-content .nav-footer .footer-menu-neutroggroup {
  grid-area: group;
}
.site-footer-content hr {
  grid-area: rule;
  width: 100%;
  border: 0;
  border-block-start: 0.5px solid var(--light);
  margin-block-end: 1.5625rem;
}
.site-footer-content .footer-menu-social {
  grid-area: social;
  z-index: 1;
}
.site-footer-content .menu-social {
  display: flex;
  gap: 1.375rem;
}
.site-footer-content .menu-social li {
  flex: 0 0 var(--icon-size);
}
.site-footer-content p.footer-copyright {
  --remsizefootertext: var(--remsize13);
  grid-area: copy;
  max-inline-size: none;
  margin-block-end: 0;
  align-self: center;
  text-align: end;
  line-height: 1.3;
}
@media only screen and (min-width: 35.5625rem) {
  .site-footer-content p.footer-copyright br {
    display: none;
  }
  .site-footer-content p.footer-copyright {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) {
  .site-footer-content {
    row-gap: 1.25em;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "logo logo" "menu menu" "rule rule" "social copy";
  }
  .site-footer-content .footer-logo-container {
    margin-block-end: 0.5em;
  }
  .site-footer-content {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  .site-footer-content {
    min-height: calc(100% + 0.2em);
    grid-template-columns: var(--footer-logo-width) 1fr auto auto;
    grid-template-rows: 1fr auto;
    grid-template-areas: "logo . menu menu" "rule rule rule rule" "social . . copy";
    /* the properties you put in */
  }
}

@media only screen and (max-width: 64rem) {
  .page-layout-breakout {
    inline-size: 100%;
    grid-column: fullwidth;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) and (max-width: 83.5rem) {
  .page-layout-breakout {
    inline-size: 100%;
    grid-column: page;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .page-layout-breakout {
    padding-inline: var(--pagesidemargin);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .page-layout-breakout {
    padding-inline: min(3vw, 3rem);
    inline-size: 100%;
    grid-column: breakout;
    /* the properties you put in */
  }
}

.left-edge-align {
  inline-size: 100%;
  grid-column: left-edge;
}

.right-edge-align {
  inline-size: 100%;
  grid-column: right-edge;
}

.entry-text .gform_wrapper {
  inline-size: 100%;
  grid-column: page;
}
@media only screen and (min-width: 73.0625rem) {
  .entry-text .gform_wrapper {
    inline-size: 100%;
    grid-column: content;
    /* the properties you put in */
  }
}
.entry-text p + .gform_wrapper {
  margin-block-start: 0.5rem;
}
.entry-text form {
  inline-size: 100%;
  max-inline-size: 90vw;
}
.entry-text form input[type=submit] {
  margin-block-start: 1.375rem;
}

.error404 main > .entry-text {
  padding-block-start: min(10vw, 5rem);
  padding-block-end: min(10vw, 5rem);
}

:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .entry-text {
  padding-block: min(10vw, 5rem);
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .entry-text :is(.posts-list, .project-category-menu), :where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .entry-text > h1 {
  inline-size: 100%;
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  :where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .entry-text :is(.posts-list, .project-category-menu), :where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .entry-text > h1 {
    grid-column: content;
    /* the properties you put in */
  }
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list {
  padding-block-start: min(6vw, 3rem);
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  column-gap: min(5vw, 1.5rem);
  row-gap: min(6vw, 4rem);
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-post-title {
  margin: 0;
  font-size: var(--remsize18-20);
  font-weight: 500;
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-post-title a {
  --linktextweight: null;
  text-decoration: none;
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-post-title a:hover, :where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-post-title a:active, :where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-post-title a:focus-visible {
  text-decoration: underline;
  /* the properties you put in */
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-teaser .tbrtheme-featured-image {
  background-color: var(--alt-bg-light);
  padding: 1em;
  border-radius: 0.625rem;
  margin-block-end: 1rem;
}
:where(.search, .archive, .blog, .wp-block-tbrtheme-product-related, .tbrtheme-gallery-wrapper) .posts-list .tbrtheme-featured-image:has(a:hover, a:focus-visible) + .entry .tbrtheme-post-title a {
  text-decoration: underline;
}

.tbrtheme-posts-wrapper {
  --column-spacing: 4 !important;
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-posts-wrapper {
    align-items: start;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) and (max-width: 83.5rem) {
  .tbrtheme-posts-wrapper {
    grid-template-columns: 17rem 1fr !important;
    column-gap: min(6vw, 3rem) !important;
    /* the properties you put in */
  }
}

.tbrtheme-posts-heading {
  grid-column: page;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.5em;
  padding-block: min(10vw, 5rem) min(3.5vw, 1.75rem);
  border-bottom: 1px solid var(--txtalphalighter);
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-posts-heading {
    grid-column: content;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 35.5625rem) {
  .tbrtheme-posts-heading {
    --right-col-width: 29ch;
    grid-template-columns: 1fr var(--right-col-width);
    column-gap: min(5vw, 1.5rem);
    /* the properties you put in */
  }
}
.tbrtheme-posts-heading .search-form.tbrtheme-search-posts {
  align-self: end;
  display: grid;
  grid-template-columns: 0.75em 1.5rem 1fr;
}
.tbrtheme-posts-heading .search-form.tbrtheme-search-posts input[type=search] {
  --ffbg: var(--bg);
  border: 1px solid;
  border-radius: 100vw;
  grid-row: 1;
  grid-column: 1/-1;
  padding-inline-start: 3rem;
}
.tbrtheme-posts-heading .search-form.tbrtheme-search-posts button.search-button {
  --btn-bdr-size: 0;
  padding: 0.75em;
  min-inline-size: unset;
  grid-row: 1;
  grid-column: 2;
}
.tbrtheme-posts-heading .search-form.tbrtheme-search-posts button.search-button::before {
  content: none;
}
.tbrtheme-posts-heading .search-form.tbrtheme-search-posts button.search-button svg {
  --svg-inline: 1.5rem;
  --svg-block: 1.5rem;
}
.tbrtheme-posts-heading .search-form.tbrtheme-search-posts button.search-button:hover, .tbrtheme-posts-heading .search-form.tbrtheme-search-posts button.search-button:active, .tbrtheme-posts-heading .search-form.tbrtheme-search-posts button.search-button:focus-visible {
  --btn-fg: var(--txt);
  /* the properties you put in */
}

.wp-block-reusable.wp-block-reusable-products-list-header {
  grid-column: 1;
  display: block;
  padding: 0;
}

:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .tbrtheme-posts-sidebar-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: min(6vw, 3rem);
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .tbrtheme-posts-sidebar-wrapper .wp-block-tbrtheme-cta-short.wp-block-tbrtheme-cta-short a {
  padding: min(2vw, 2.5rem) min(2vw, 2.5rem);
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .tbrtheme-posts-sidebar-wrapper .wp-block-tbrtheme-cta-short.wp-block-tbrtheme-cta-short h3.wp-block-heading {
  font-size: var(--remsize20);
  line-height: 1.3;
  margin: 0;
  white-space: nowrap;
}
@media only screen and (max-width: 56rem) {
  :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .tbrtheme-posts-sidebar-wrapper .wp-block-tbrtheme-cta-short.wp-block-tbrtheme-cta-short {
    display: none;
    /* the properties you put in */
  }
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text {
  display: block;
  padding: 0;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .posts-list {
  display: grid;
  row-gap: min(3vw, 1.125rem);
  column-gap: min(5vw, 2rem);
}
@media only screen and (max-width: 56rem) {
  :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .posts-list {
    grid-template-columns: repeat(auto-fit, minmax(20ch, 1fr));
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) and (max-width: 64rem) {
  :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .posts-list {
    grid-template-columns: repeat(2, 1fr);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) {
  :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .posts-list {
    grid-template-columns: repeat(3, 1fr);
    /* the properties you put in */
  }
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser {
  border-radius: 0 0 0.5rem 0.5rem;
  background-color: var(--shade-off-light);
  transition: background-color 350ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .tbrtheme-featured-image {
  border-radius: 0;
  background-color: unset;
  padding: 0;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .tbrtheme-featured-image :is(picture, img) {
  inline-size: 100%;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .tbrtheme-featured-image a::before {
  content: " ";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 0 0 0.5rem 0.5rem;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .tbrtheme-featured-image img {
  aspect-ratio: 332/184;
  object-fit: cover;
}
@media only screen and (min-width: 35.5625rem) {
  :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .tbrtheme-featured-image img {
    aspect-ratio: 294/196;
    /* the properties you put in */
  }
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .entry {
  padding: 1.25rem;
  padding-block-start: 0;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .entry .tbrtheme-post-date {
  line-height: 1.25;
  margin-block-end: 0.25em;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .entry .tbrtheme-post-title {
  margin-block-end: 0.25em;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .entry .tbrtheme-post-title a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; /* Change this line if you want. In this case it trimmed the text to 3 lines. */
  overflow: hidden;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser .entry .tbrtheme-post-excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* Change this line if you want. In this case it trimmed the text to 3 lines. */
  overflow: hidden;
  margin-block-end: 0;
  -webkit-mask-image: linear-gradient(to bottom, var(--shade-off-light), transparent);
          mask-image: linear-gradient(to bottom, var(--shade-off-light), transparent);
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:hover, :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:active, :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:focus-visible {
  background-color: var(--shade-hover-grey);
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:hover .tbrtheme-post-title a, :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:active .tbrtheme-post-title a, :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:focus-visible .tbrtheme-post-title a {
  text-decoration: none;
}
:is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:hover, :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:active, :is(.blog, .category:not(.search), .search-post, .archive-newsletters) .entry-text .tbrtheme-teaser:focus-visible {
  /* the properties you put in */
}

ul#posts-category-menu {
  margin: 0 !important;
}
ul#posts-category-menu li {
  order: 0 !important;
}
@media only screen and (max-width: 35.5rem) {
  ul#posts-category-menu {
    margin: 0 !important;
    inline-size: auto !important;
    align-items: stretch !important;
  }
  ul#posts-category-menu a {
    justify-content: flex-start;
  }
  ul#posts-category-menu {
    /* the properties you put in */
  }
}

:is(.archive-newsletters) .entry-text {
  color: #303030;
  --txt: #303030;
  padding-block-start: min(6vw, 3rem) !important;
}
:is(.archive-newsletters) .entry-text > h2 {
  font-size: var(--remsize20);
  font-weight: 600;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter {
  background-color: var(--commercial-card-bg-n-beige);
  border-radius: var(--remsize10);
  overflow: hidden;
  border: var(--line-thickness, 1px) solid;
  display: grid;
  grid-template-columns: var(--remsize20) 1fr 1rem;
  grid-template-rows: 1rem 1fr var(--remsize14);
  justify-items: start;
  isolation: isolate;
}
@media (prefers-color-scheme: dark) {
  :is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter {
    filter: brightness(0.8) contrast(1.2);
  }
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .tbrtheme-teaser-newsletter-content {
  grid-column: 2;
  grid-row: 2;
  display: grid;
  grid-template-columns: 1fr;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter svg {
  --svg-inline: min(168px, 75%);
  --svg-block: auto;
  justify-self: end;
  align-self: end;
  z-index: -1;
  grid-column: 2/span 2;
  grid-row: 1/span 3;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter svg.news-home-gardener-archives-svg {
  scale: 1.2;
  translate: -15px -13px;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter time[datetime] {
  border-radius: 100vw;
  padding: 0.25em 0.6em;
  color: var(--light);
  font-weight: var(--fwmedium);
  background-color: var(--card-year-n-green);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .tbrtheme-newsletter-date {
  margin-block-end: 1.25em;
  line-height: 1;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .tbrtheme-newsletter-cat {
  font-size: var(--remsize14);
  font-weight: 500;
  margin-block-end: 0.5em;
  line-height: 1;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .tbrtheme-newsletter-title {
  font-size: var(--remsize20);
  font-weight: 500;
  margin-block-end: 0.75em;
  line-height: 1.1;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .download-link {
  --ffbuttonpadding: 0.5em 1em;
  --color-cta: var(--card-year-n-green);
  line-height: 1;
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .news-commercial-archives-svg,
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter .news-home-gardener-archives-svg {
  color: var(--commercial-card-svg-n-beige);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-0 time[datetime] {
  color: var(--light);
  background-color: var(--card-year-n-green);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-0 .download-link {
  --color-cta: var(--card-year-n-green);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-0.category-home-gardener {
  background-color: var(--home-card-bg-n-green);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-0.category-home-gardener .news-home-gardener-archives-svg {
  color: var(--home-card-svg-n-green);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-1 time[datetime] {
  color: var(--light);
  background-color: var(--card-year-n-orange);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-1 .download-link {
  --color-cta: var(--card-year-n-orange);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-1.category-home-gardener {
  background-color: var(--home-card-bg-n-orange);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-1.category-home-gardener .news-home-gardener-archives-svg {
  color: var(--home-card-svg-n-orange);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-2 time[datetime] {
  color: var(--light);
  background-color: var(--card-year-n-blue);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-2 .download-link {
  --color-cta: var(--card-year-n-blue);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-2.category-home-gardener {
  background-color: var(--home-card-bg-n-blue);
}
:is(.archive-newsletters) .entry-text .tbrtheme-teaser-newsletter.tbrtheme-year-2.category-home-gardener .news-home-gardener-archives-svg {
  color: var(--home-card-svg-n-blue);
}

.blog .entry-text .nav-breadcrumbs {
  display: block;
  padding-block: 0 min(6vw, 3rem);
}

.single-post .tbrtheme-post-sidebar-wrapper {
  margin-block-start: min(6vw, 3rem);
  display: grid;
  gap: min(6vw, 3rem);
}
.single-post .entry-text figure {
  margin-block: min(2.5vw, 1em) min(5vw, 2em);
}
.single-post .tbrtheme-post-wrapper {
  padding-block: min(6vw, 3rem) min(10vw, 5rem);
  align-items: start;
}
.single-post .tbrtheme-post-wrapper figure.wp-block-image {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr auto;
}
.single-post .tbrtheme-post-wrapper figure.wp-block-image :is(picture, img) {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
.single-post .tbrtheme-post-wrapper figure.wp-block-image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.single-post .tbrtheme-post-wrapper figure.wp-block-image figcaption {
  font-style: normal;
  font-size: 0.75rem;
  color: var(--light);
  background-color: rgba(0, 0, 0, 0.61);
  grid-column: 1/-1;
  grid-row: 2;
  padding-block: 0.125em;
  margin: 0;
}
.single-post .tbrtheme-post-wrapper .entry {
  grid-column: 1/-1;
}
@media only screen and (max-width: 64rem) {
  .single-post .tbrtheme-post-wrapper {
    row-gap: min(6vw, 3rem);
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  }
  .single-post .tbrtheme-post-wrapper .tbrtheme-post-metadata {
    grid-column: page;
    order: 1;
  }
  .single-post .tbrtheme-post-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) and (max-width: 83.5rem) {
  .single-post .tbrtheme-post-wrapper {
    grid-column: page;
    display: grid;
    grid-template-columns: 17rem 1fr;
    align-items: start;
  }
  .single-post .tbrtheme-post-wrapper .tbrtheme-post-metadata {
    grid-column: 1;
  }
  .single-post .tbrtheme-post-wrapper article.post {
    grid-column: 2;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] 75fr [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end] !important;
  }
  .single-post .tbrtheme-post-wrapper :is(.entry-text, figure.wp-block-image figcaption) {
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] 75fr [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end] !important;
  }
  .single-post .tbrtheme-post-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .single-post .tbrtheme-post-wrapper > * {
    grid-column: fullwidth;
  }
  .single-post .tbrtheme-post-wrapper article.post {
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  }
  .single-post .tbrtheme-post-wrapper article.post h1 {
    grid-column: content;
  }
  .single-post .tbrtheme-post-wrapper .entry-text {
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  }
  .single-post .tbrtheme-post-wrapper .entry-text > * {
    grid-column: content;
  }
  .single-post .tbrtheme-post-wrapper .entry-text figure.wp-block-image {
    grid-column: page;
  }
  .single-post .tbrtheme-post-wrapper figure.wp-block-image figcaption {
    display: grid;
    grid-template-columns: [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end];
  }
  .single-post .tbrtheme-post-wrapper figure.wp-block-image figcaption::before {
    content: " ";
    grid-column: page-start/content-start;
  }
  .single-post .tbrtheme-post-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .single-post .tbrtheme-post-wrapper {
    grid-column: content;
    grid-template-rows: max-content auto min-content;
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 6; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 19;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .single-post .tbrtheme-post-wrapper > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .single-post .tbrtheme-post-wrapper > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .single-post .tbrtheme-post-wrapper.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .single-post .tbrtheme-post-wrapper.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .single-post .tbrtheme-post-wrapper article.post {
    grid-row: 1/span 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0.75rem, 1rem)) 1fr repeat(2, minmax(0.75rem, 1rem));
  }
  .single-post .tbrtheme-post-wrapper article.post h1 {
    grid-column: 3;
  }
  .single-post .tbrtheme-post-wrapper .entry-text {
    display: grid;
    grid-template-columns: repeat(2, minmax(0.75rem, 1rem)) 1fr repeat(2, minmax(0.75rem, 1rem));
  }
  .single-post .tbrtheme-post-wrapper .entry-text > * {
    grid-column: 3;
  }
  .single-post .tbrtheme-post-wrapper .entry-text figure.wp-block-image {
    grid-column: 1/-1;
  }
  .single-post .tbrtheme-post-wrapper figure.wp-block-image figcaption {
    display: grid;
    grid-template-columns: repeat(2, minmax(0.75rem, 1rem)) 1fr repeat(2, minmax(0.75rem, 1rem));
  }
  .single-post .tbrtheme-post-wrapper figure.wp-block-image figcaption::before {
    content: " ";
    grid-column: 1/span 2;
  }
  .single-post .tbrtheme-post-wrapper {
    /* the properties you put in */
  }
}
.single-post .tbrtheme-post-metadata {
  border-radius: var(--remsize12);
  background-color: var(--alt-bg);
  padding: 2em 1.625em 2.5em 1.875em;
}
.single-post .tbrtheme-post-metadata p.tbrtheme-post-back {
  font-weight: 600;
  margin: 0;
}
.single-post .tbrtheme-post-metadata p.tbrtheme-post-back a {
  text-decoration: none;
  display: flex;
  gap: 1em;
  align-items: center;
  transform: translateX(0);
  transition: transform 150ms linear;
}
.single-post .tbrtheme-post-metadata p.tbrtheme-post-back a svg {
  transform: scaleX(-1);
  --svg-inline: 2.35rem;
  --svg-block: 2.35rem;
}
.single-post .tbrtheme-post-metadata p.tbrtheme-post-back a:hover, .single-post .tbrtheme-post-metadata p.tbrtheme-post-back a:active, .single-post .tbrtheme-post-metadata p.tbrtheme-post-back a:focus-visible {
  transform: translateX(-0.5em);
  /* the properties you put in */
}
.single-post .tbrtheme-post-metadata dl {
  margin: 2rem 0;
}
.single-post .tbrtheme-post-metadata dl dt {
  font-weight: 600;
}
.single-post .tbrtheme-post-metadata dl dd:first-of-type {
  margin-block-end: 1rem;
}
.single-post .tbrtheme-post-metadata .tbrtheme-download-button-simple {
  display: flex;
}
.single-post .tbrtheme-post-metadata .download-link {
  padding-inline: 1em;
}

@media only screen and (max-width: 83.5rem) {
  .single-post .tbrtheme-post-sidebar-wrapper {
    margin: 0;
    gap: 0;
    grid-row: 2;
  }
  .single-post :is(.wp-block-reusable.wp-block-reusable-subscribe-now, .wp-block-reusable.wp-block-reusable-take-the-quiz) {
    grid-column: 1;
  }
  /* the properties you put in */
}
@media only screen and (min-width: 83.5625rem) {
  .single-post .site-content > .nav-recent-posts,
  .single-post .site-content > .nav-blog {
    grid-column: 1/span var(--column-one);
  }
}
@media only screen and (min-width: 83.5625rem) and (min-width: 83.5625rem) {
  .single-post .site-content > article.hentry,
  .single-post .site-content > nav.nav-nextprev {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  /* the properties you put in */
}
.flxmap-container {
  display: block;
  inline-size: 100%;
  aspect-ratio: 393/240;
}
@media only screen and (min-width: 48.0625rem) and (max-width: 73rem) {
  .flxmap-container {
    aspect-ratio: 3/1;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 73.0625rem) {
  .flxmap-container {
    aspect-ratio: 1512/336;
    /* the properties you put in */
  }
}

/*
	profile picture:
	design size: 					  280 X 300 pixels
	aspect-ratio: 28 / 30;
	web size:
	280*2=560
	300*2=600
	retina/responive size (double it) 560 X 600 pixels
*/
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card, article.tbrtheme-people-person {
  position: relative;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card picture, article.tbrtheme-people-person picture {
  background-color: var(--color-primary-700);
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card img, article.tbrtheme-people-person img {
  mix-blend-mode: normal;
  transition: mix-blend-mode 350ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card:hover img, article.tbrtheme-people-person:hover img, .tbrtheme-image-card-layout .wp-block-tbrtheme-image-card:active img, article.tbrtheme-people-person:active img, .tbrtheme-image-card-layout .wp-block-tbrtheme-image-card:focus-visible img, article.tbrtheme-people-person:focus-visible img {
  mix-blend-mode: screen;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card:hover, article.tbrtheme-people-person:hover, .tbrtheme-image-card-layout .wp-block-tbrtheme-image-card:active, article.tbrtheme-people-person:active, .tbrtheme-image-card-layout .wp-block-tbrtheme-image-card:focus-visible, article.tbrtheme-people-person:focus-visible {
  /* the properties you put in */
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card .tbrtheme-cta-link, article.tbrtheme-people-person .tbrtheme-cta-link {
  position: unset;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card .tbrtheme-cta-link::before, article.tbrtheme-people-person .tbrtheme-cta-link::before {
  content: " ";
  position: absolute;
  inset: 0;
}

article.tbrtheme-people-person {
  grid-column: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
article.tbrtheme-people-person figcaption > :first-child {
  margin-block-start: 1em;
  margin-block-end: 0;
}
article.tbrtheme-people-person .tbrtheme-cta-link {
  margin-block-start: auto;
}

.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card {
  --padding: min(2vw, 1.5em);
  grid-template-rows: auto auto 1fr min-content;
  background-color: var(--bg);
  display: grid;
  grid-template-columns: var(--padding) auto var(--padding);
  padding-block-end: min(3vw, 1.75em);
  justify-items: start;
  align-content: start;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card .tbrtheme-cta-link {
  margin-block-start: auto;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card > * {
  grid-column: 2;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card figure {
  grid-column: fullwidth;
  clip-path: ellipse(125% 60% at 50% 40%);
  width: 100%;
}
.tbrtheme-image-card-layout .wp-block-tbrtheme-image-card figure * {
  transform: translateZ(0);
}

.tbrtheme-image-card-layout .wp-block-group__inner-container {
  --column-gap: min(9vw, 3em);
  --row-gap: min(12vw, 3.5em);
  padding-block-start: min(3vw, 1.5rem);
  padding-block-end: 0;
}
.tbrtheme-image-card-layout .wp-block-group__inner-container img {
  inline-size: 100%;
  block-size: 100%;
  aspect-ratio: 600/600;
  object-fit: cover;
}
.tbrtheme-image-card-layout .wp-block-group__inner-container :where(figure, img) {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.tbrtheme-image-card-layout .wp-block-group__inner-container figure {
  margin-block-end: 1em;
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-image-card-layout .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    row-gap: var(--row-gap);
  }
  .tbrtheme-image-card-layout .wp-block-group__inner-container > * {
    max-inline-size: min(30ch, 90vw);
    margin-inline: auto;
  }
  .tbrtheme-image-card-layout .wp-block-group__inner-container > * .tbrtheme-cta-link {
    justify-self: stretch;
    justify-content: center;
    text-align: center;
    width: 100%;
  }
  .tbrtheme-image-card-layout .wp-block-group__inner-container {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) and (max-width: 64rem) {
  .tbrtheme-image-card-layout .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: var(--row-gap);
    column-gap: var(--column-gap, 1em);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) and (max-width: 83.5rem) {
  .tbrtheme-image-card-layout .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: var(--row-gap);
    column-gap: var(--column-gap, 1em);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-image-card-layout .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    row-gap: var(--row-gap);
    column-gap: var(--column-gap, 1em);
    /* the properties you put in */
  }
}

.tbrtheme-image-card-layout.tbrtheme-image-card-layout-max-three {
  padding: 0 !important;
}
.tbrtheme-image-card-layout.tbrtheme-image-card-layout-max-three .wp-block-group__inner-container {
  padding: min(2vw, 2em);
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-image-card-layout.tbrtheme-image-card-layout-max-three .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    row-gap: var(--row-gap);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) and (max-width: 64rem) {
  .tbrtheme-image-card-layout.tbrtheme-image-card-layout-max-three .wp-block-group__inner-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-image-card-layout.tbrtheme-image-card-layout-max-three .wp-block-group__inner-container {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    /* the properties you put in */
  }
}
.tbrtheme-image-card-layout.tbrtheme-image-card-layout-max-three .wp-block-tbrtheme-image-card {
  max-inline-size: min(30ch, 90vw);
}

.tbrtheme-grid-fullwidth,
.wp-block-reusable {
  margin: 0;
  grid-column: fullwidth;
  padding-block: min(6vw, 3rem) min(6vw, 3rem);
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
.tbrtheme-grid-fullwidth > *,
.wp-block-reusable > * {
  grid-column: content;
}
@media only screen and (max-width: 83.5rem) {
  .tbrtheme-grid-fullwidth > *,
  .wp-block-reusable > * {
    grid-column: page;
  }
  .tbrtheme-grid-fullwidth,
  .wp-block-reusable {
    /* the properties you put in */
  }
}

.tbrtheme-grid-fullwidth-image {
  grid-column: fullwidth;
  padding: 0 !important;
}
.tbrtheme-grid-fullwidth-image :is(iframe, figure, picture, img) {
  max-inline-size: none;
  width: 100%;
  height: 100%;
  aspect-ratio: 1512/486;
}
.tbrtheme-grid-fullwidth-image figure {
  margin: 0;
}
.tbrtheme-grid-fullwidth-image img {
  object-fit: cover;
}
.tbrtheme-grid-fullwidth-image.tbrtheme-pic-pos-27 img {
  object-position: center 27%;
}
.tbrtheme-grid-fullwidth-image.tbrtheme-pic-pos-69 img {
  object-position: center 69%;
}
.tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 {
  margin-block-start: min(5vw, 2rem);
}
.wp-block-group + .tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 {
  margin-block-start: 1rem;
}
.tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486.tbrtheme-grid-fullwidth-image-no-top-margin {
  margin-block-start: 0;
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 :is(iframe, figure, picture, img) {
    aspect-ratio: 393/283;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  .tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 :is(iframe, figure, picture, img) {
    aspect-ratio: 1646/486;
    /* the properties you put in */
  }
}
.tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 figure.wp-block-image {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr auto;
}
.tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 figure.wp-block-image :is(picture, img) {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
.tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 figcaption {
  font-style: normal;
  font-size: 0.75rem;
  color: var(--light);
  background-color: rgba(0, 0, 0, 0.61);
  grid-column: 1/-1;
  grid-row: 2;
  padding-block: 0.125em;
  margin: 0;
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
}
@media only screen and (max-width: 73rem) {
  .tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 figcaption {
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] 90vw [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
    /* the properties you put in */
  }
}
.tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 figcaption::before {
  content: " ";
  grid-column: fullwidth-start/page-start;
}
@media only screen and (min-width: 73.0625rem) {
  .tbrtheme-grid-fullwidth-image.aspect-ratio-1646-486 figcaption::before {
    grid-column: fullwidth-start/content-start;
    /* the properties you put in */
  }
}

.tbrtheme-grid-fullwidth-image + :is(.wp-block-group, .wp-block-columns) {
  padding-block-start: min(6vw, 3rem) !important;
}

/* details / summary as no js menu */
/* see gap-home-loans for slide in from side positioning animations */
/* nav.site-nav navigation mixins */
/* end for nav */
/* styles */
summary {
  outline: none;
}
summary::-moz-focus-inner {
  border: 0;
}
summary::-webkit-details-marker {
  display: none;
}
summary::marker {
  content: "";
}

@media only screen and (min-width: 83.5625rem) {
  button.menu-expando-control {
    display: none;
  }
  /* the properties you put in */
}
@media only screen and (max-width: 83.5rem) {
  .site-nav {
    flex-direction: column;
    --navwidth: 100vw;
    --transition-timing: 350ms;
    display: grid;
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
    position: fixed;
    inset: var(--header-wrapper-height) 0 auto;
    inline-size: var(--navwidth);
    max-inline-size: 100vw;
    min-block-size: 100vh;
    min-block-size: -webkit-fill-available;
    /* support ios */
    will-change: transform;
    overscroll-behavior: contain;
    transform: translateX(-100vw);
    transition: transform var(--transition-timing) linear var(--transition-timing);
  }
}
@media only screen and (max-width: 83.5rem) and (prefers-reduced-motion: reduce) {
  .site-nav {
    transition: none;
  }
}
@media only screen and (max-width: 83.5rem) {
  .site-nav .menu-main {
    grid-column: page;
  }
}
@media only screen and (max-width: 83.5rem) and (min-width: 83.5625rem) {
  .site-nav .menu-main {
    grid-column: content;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .site-nav:focus-within {
    transform: translateX(0);
    transition: transform var(--transition-timing) linear;
  }
  .nav-state-open .site-nav {
    transform: translateX(0);
    transition: transform var(--transition-timing) linear;
  }
}
@media only screen and (max-width: 83.5rem) and (prefers-reduced-motion: reduce) {
  .nav-state-open .site-nav {
    transition: none;
  }
}
@media only screen and (max-width: 83.5rem) {
  .nav-state-open .site-nav .menu-main {
    transform: translateX(0);
    transition: transform var(--transition-timing) linear var(--transition-timing);
  }
  .nav-state-open .site-nav .menu-main.sesame {
    transform: translateX(-100vw);
    transition: transform var(--transition-timing) linear var(--transition-timing);
  }
  .menu-expando-title {
    display: grid;
    grid-template-columns: 1fr 3rem;
    align-items: center;
  }
  button.menu-expando-control {
    --btn-fg: var(--txt);
    --btn-bg: transparent;
    --btn-bdr-size: 0;
    block-size: auto !important;
    transform: none !important;
    min-inline-size: auto;
    max-inline-size: none;
    inline-size: 100%;
    padding: 0 0.5em 0 0;
    transition: transform 300ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  button.menu-expando-control::before, button.menu-expando-control::after {
    content: none;
  }
  button.menu-expando-control[aria-expanded=false] svg {
    transform: translateY(0);
  }
  button.menu-expando-control[aria-expanded=true] svg {
    transform: rotate3d(1, 0, 0, 180deg);
  }
  button.menu-expando-control svg {
    --svg-inline: 1rem;
    --svg-block: 1rem;
    flex-basis: auto !important;
    margin-inline-start: auto;
  }
  .menu-expando-children.menu-expando-closed {
    display: none;
  }
  .main-menu-styles ul.sub-menu.menu-expando-children {
    --transition-timing: 200ms;
    transition: transform 300ms linear;
    margin: 0;
  }
}
@media only screen and (max-width: 83.5rem) and (prefers-reduced-motion: reduce) {
  .main-menu-styles ul.sub-menu.menu-expando-children {
    transition: none;
  }
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles ul.sub-menu.menu-expando-children:focus-within {
    margin-block-end: var(--margin-size, 1.5em);
  }
  .main-menu-styles ul.sub-menu.menu-expando-children.menu-expando-closed {
    transform: translateX(100vw);
  }
  .main-menu-styles ul.sub-menu.menu-expando-children.menu-expando-open {
    transform: translateX(0);
  }
}
@media only screen and (max-width: 83.5rem) and (prefers-reduced-motion: reduce) {
  .main-menu-styles ul.sub-menu.menu-expando-children.menu-expando-open {
    transition: none;
  }
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles ul.sub-menu.menu-expando-children .sub-menu {
    margin: 0;
  }
  .main-menu-styles ul.sub-menu.menu-expando-children .sub-menu li.menu-item a {
    border: 0;
  }
  .main-menu-styles ul.sub-menu.menu-expando-children a {
    border: none;
    --buttontextweight: 500;
    padding: 0.5em 0.5em 0.5em 0;
  }
}
@media only screen and (max-width: 83.5rem) and (max-width: 83.5rem) {
  .main-menu-styles ul.sub-menu.menu-expando-children a {
    --buttontextweight: 400;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles ul.sub-menu.menu-expando-children a svg[class*=submenu-item-arrow] {
    display: none;
  }
}
@media only screen and (max-width: 83.5rem) {
  /* the properties you put in */
}
button.site-nav_button {
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  --btn-fg: var(--txt, var(--test));
  --btn-bg: transparent;
  --btn-bdr-size: 0;
  --ffbuttonpadding: 0.5em var(--padding-inline);
  --padding-inline: 1em;
  min-inline-size: 4rem;
  align-items: center;
  justify-content: center;
  inline-size: 3.5em;
  block-size: 2.5em;
  line-height: 1;
  z-index: 40;
  overflow: visible;
  transition: none;
  border: 0;
  transform: translateX(calc(var(--padding-inline) * -1));
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
button.site-nav_button:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
button.site-nav_button:focus {
  box-shadow: none;
}
button.site-nav_button[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  button.site-nav_button {
    --button-transition: 300ms;
    will-change: transform;
  }
}
button.site-nav_button:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
button.site-nav_button:hover, button.site-nav_button:active, button.site-nav_button:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
.home button.site-nav_button {
  --btn-fg: var(--light, var(--test));
}
button.site-nav_button::before {
  content: none;
}
button.site-nav_button:hover, button.site-nav_button:active, button.site-nav_button:focus-visible {
  --btn-bg: transparent;
  /* the properties you put in */
}
button.site-nav_button svg {
  --svg-inline: 2rem;
  --svg-block: 100%;
  display: block;
  overflow: hidden;
}
button.site-nav_button svg.opened {
  display: none;
}
button.site-nav_button span {
  position: absolute;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  block-size: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  inline-size: 1px;
  word-wrap: normal !important;
}

.nav-state-open button.site-nav_button {
  --btn-bg: transparent;
  stroke: none;
  transition: none;
}
.nav-state-open button.site-nav_button svg.closed {
  display: none;
}
.nav-state-open button.site-nav_button svg.opened {
  display: inherit;
}
.nav-state-open button.site-nav_button svg.opened line {
  stroke: var(--txt);
}

/* nav */
/* parent page | page (breadcrumb navigation */
.nav-breadcrumbs {
  padding-block-start: min(10vw, 5rem);
  padding-block-end: 0.25em;
  border-block-end: 1px solid var(--txtalpha);
}
.nav-breadcrumbs:has(.nav-breadcrumbs-links > svg) {
  padding-block-end: 0.875em;
}
.nav-breadcrumbs:has(.nav-breadcrumbs-links > svg) .nav-breadcrumbs-links a:first-of-type {
  margin-inline-start: min(0.125vw, 1.125em);
}
.nav-breadcrumbs-links {
  --svg-inline: clamp(1.25rem, 3vw, 2.875rem);
  color: var(--breadcrumb-button-text, var(--test));
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.nav-breadcrumbs-links:has(> svg) {
  margin-inline-start: calc(var(--svg-inline) + min(1vw, 1.125em));
}
.nav-breadcrumbs-links > svg {
  --svg-inline: clamp(1.25rem, 3vw, 2.875rem);
  --svg-block: clamp(1.25rem, 3vw, 2.875rem);
  margin-inline-start: calc((var(--svg-inline) + min(1vw, 1.125em)) * -1);
  margin-inline-end: min(1vw, 1.125em);
}
.nav-breadcrumbs-links a {
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  --buttontextsize: var(--bodytextsize);
  --buttontextweight: var(--bodytextweight);
  --btn-fg: var(--breadcrumb-button-text, var(--test));
  --btn-bg: var(--breadcrumb-button-bg);
  --btn-bdr-size: 0;
  min-inline-size: unset;
  font-size: var(--remsize12-16);
  padding: 0;
  text-transform: none;
  outline-color: transparent;
  text-decoration: none;
  overflow-wrap: normal;
  text-align: start;
  border-radius: 0;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.nav-breadcrumbs-links a:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.nav-breadcrumbs-links a:focus {
  box-shadow: none;
}
.nav-breadcrumbs-links a[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .nav-breadcrumbs-links a {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.nav-breadcrumbs-links a:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.nav-breadcrumbs-links a:hover, .nav-breadcrumbs-links a:active, .nav-breadcrumbs-links a:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
.nav-breadcrumbs-links a:first-of-type {
  padding-left: 0;
}
.nav-breadcrumbs-links a:focus-visible {
  outline-color: var(--current-breadcrumb, var(--test));
}
.nav-breadcrumbs-links a:focus {
  --btn-fg: var(--current-breadcrumb, var(--test));
  position: relative;
  z-index: 1;
}
.nav-breadcrumbs-links a:focus::after {
  background-color: var(--color-primary-700);
}
.nav-breadcrumbs-links a:hover, .nav-breadcrumbs-links a:active, .nav-breadcrumbs-links a:focus-visible {
  --btn-fg: var(--current-breadcrumb, var(--test));
  --btn-bg: var(--breadcrumb-button-bg);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  /* the properties you put in */
}
@media only screen and (max-width: 83.5rem) {
  .nav-breadcrumbs-links a {
    display: block;
    text-align: start;
    /* the properties you put in */
  }
}
.nav-breadcrumbs-links span.nav-breadcrumbs-current {
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  --buttontextsize: var(--bodytextsize);
  --buttontextweight: var(--bodytextweight);
  --btn-fg: var(--breadcrumb-button-text, var(--test));
  --btn-bg: var(--breadcrumb-button-bg);
  --btn-bdr-size: 0;
  --btn-fg: var(--current-breadcrumb, var(--test));
  --btn-bg: var(--breadcrumb-button-bg);
  cursor: default;
  pointer-events: none;
  min-inline-size: unset;
  font-size: var(--remsize12-16);
  padding: 0;
  text-transform: none;
  outline-color: transparent;
  text-decoration: none;
  overflow-wrap: normal;
  text-align: start;
  border-radius: 0;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.nav-breadcrumbs-links span.nav-breadcrumbs-current:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.nav-breadcrumbs-links span.nav-breadcrumbs-current:focus {
  box-shadow: none;
}
.nav-breadcrumbs-links span.nav-breadcrumbs-current[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .nav-breadcrumbs-links span.nav-breadcrumbs-current {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.nav-breadcrumbs-links span.nav-breadcrumbs-current:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.nav-breadcrumbs-links span.nav-breadcrumbs-current:hover, .nav-breadcrumbs-links span.nav-breadcrumbs-current:active, .nav-breadcrumbs-links span.nav-breadcrumbs-current:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
.nav-breadcrumbs-links .nav-breadcrumbs-sep {
  padding: 0.6em min(1vw, 1em) 0.5em min(1vw, 1em);
}
.nav-breadcrumbs-links .nav-breadcrumbs-sep svg {
  --svg-inline: 0.5rem;
  --svg-block: 0.5rem;
  transform: rotate(90deg);
}

:is(nav.nav-footer, nav.nav-links) ul li {
  line-height: 1.625;
}
:is(nav.nav-footer, nav.nav-links) ul li a {
  display: inline-block;
  padding-block: 0.25em;
  white-space: nowrap;
  line-height: 1;
}
@media (any-pointer: coarse) {
  :is(nav.nav-footer, nav.nav-links) ul li a {
    padding-block: 0.5em;
  }
}
:is(nav.nav-footer, nav.nav-links) ul li.current-menu-item > a {
  cursor: default;
  pointer-events: none;
  text-decoration: underline;
}
:is(nav.nav-footer, nav.nav-links) ul ul.sub-menu {
  margin-block-start: 0.5em;
}

/* colours for menus */
.site-navigation a:not(.nav-toggle),
nav a:not(.nav-toggle) {
  color: currentcolor;
}
.site-navigation a:not(.nav-toggle):focus-visible,
nav a:not(.nav-toggle):focus-visible {
  z-index: 1;
}

/* reset */
/* main menu */
body.home.tbrtheme-submenu-active .site-nav {
  --header-bg: var(--shade-lighter-beige);
}

@media only screen and (max-width: 83.5rem) {
  .menu-main {
    inline-size: auto;
  }
  .menu-main > li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3019607843);
  }
  .menu-main {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) and (prefers-color-scheme: light) {
  .menu-main > li {
    border-bottom-color: rgba(0, 0, 0, 0.3019607843);
  }
}
@media only screen and (min-width: 83.5625rem) {
  .menu-main {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  .menu-main > li {
    border-block-start: 1px solid var(--txtalpha);
    padding-top: 0.5rem;
  }
  .home:not(.tbrtheme-submenu-active) .menu-main > li {
    border-block-start-color: var(--light);
  }
  .menu-main > li:first-child .tbrtheme-menu-parent-button,
  .menu-main > li:first-child > a {
    padding-inline-start: 0 !important;
  }
  .menu-main > li:last-child .tbrtheme-menu-parent-button,
  .menu-main > li:last-child > a {
    padding-inline-end: 0 !important;
  }
  .menu-main {
    /* the properties you put in */
  }
}

.main-menu-styles ul.sub-menu {
  margin-block-start: 0;
  margin-block-end: var(--margin-size, 1.5em);
}
@media only screen and (min-width: 83.5625rem) {
  .main-menu-styles ul.sub-menu {
    margin: 0;
    /* the properties you put in */
  }
}
.main-menu-styles a {
  overflow-wrap: normal;
}

.sub-menu-wrapper {
  color: var(--txt);
}

@media only screen and (max-width: 83.5rem) {
  button.site-nav_button {
    justify-self: end;
  }
  nav.site-nav {
    color: var(--txt);
    background-color: var(--menubg);
    padding-block: min(2.5vw, 2.5em);
  }
  nav.site-nav ul.main-menu-styles {
    position: unset;
    inline-size: 100vw;
  }
  nav.site-nav ul.main-menu-styles .menu-item {
    position: unset;
    inline-size: 90vw;
    max-inline-size: 90vw;
    overflow-y: clip;
  }
  nav.site-nav ul.main-menu-styles .menu-item.tbrtheme-submenu-title {
    padding-block-end: 0.5rem;
    margin-block-end: 0.5rem;
    border-bottom: 1px solid var(--txtalpha);
  }
  nav.site-nav ul.main-menu-styles .menu-item.tbrtheme-submenu-title a {
    font-size: var(--remsize20);
    font-weight: 500;
    padding: 0;
    line-height: 1.4375;
  }
  nav.site-nav ul.main-menu-styles .menu-item ul.sub-menu {
    max-inline-size: 90vw;
    padding-block-end: 0.5rem;
    border-bottom: 1px solid var(--txtalpha);
  }
  nav.site-nav ul.main-menu-styles .menu-item ul.sub-menu::before {
    content: none;
  }
  nav.site-nav ul.main-menu-styles .menu-item ul.sub-menu.menu-expando-children li:not(.tbrtheme-submenu-title) a {
    padding-block: 0.75em;
  }
  nav.site-nav .sub-menu-wrapper {
    position: fixed;
    inset: 1.5rem auto auto 100vw;
    width: 100vw;
    min-height: 100vh;
    background-color: var(--bg);
  }
  nav.site-nav .sub-menu-wrapper button.menu-expando-close {
    --btn-bdr-size: 0;
    padding: 1em;
    min-inline-size: unset;
    transform: translateX(-1em);
  }
  nav.site-nav .sub-menu-wrapper button.menu-expando-close::before, nav.site-nav .sub-menu-wrapper button.menu-expando-close::after {
    content: none;
  }
  nav.site-nav .sub-menu-wrapper button.menu-expando-close svg {
    --svg-inline: 1rem;
    --svg-block: 1rem;
  }
  nav.site-nav .sub-menu-wrapper button.menu-expando-close:hover, nav.site-nav .sub-menu-wrapper button.menu-expando-close:active, nav.site-nav .sub-menu-wrapper button.menu-expando-close:focus-visible {
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    /* the properties you put in */
  }
  li.tbrtheme-submenu-featured {
    display: none;
  }
  li .sub-menu-wrapper {
    z-index: -1;
    visibility: hidden;
  }
  li .menu-expando-title:has(button.menu-expando-control[aria-expanded=true]) + .sub-menu-wrapper {
    z-index: 1;
    visibility: visible;
    opacity: 1;
  }
  .menu-item {
    position: relative;
  }
  /* the properties you put in */
}
/* > pagecontentbreakpoint */
@media only screen and (min-width: 83.5625rem) {
  .sub-menu-wrapper {
    position: absolute;
    inset: var(--header-wrapper-height) 0 auto 0;
    box-sizing: content-box;
    border-block-start: 3rem solid var(--header-bg);
    display: grid;
    align-content: start;
    grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
    overflow: hidden;
    background-color: var(--main-menu-submenu-bg);
    padding-block: min(11vw, 5.5rem);
    height: max(20vh, 39ch);
  }
  body:not(.home) .sub-menu-wrapper {
    inset: calc(var(--header-wrapper-height) - 3em) 0 auto 0;
  }
  .single-post .sub-menu-wrapper {
    inset: calc(var(--header-wrapper-height) - 2em) 0 auto 0 !important;
  }
  .sub-menu-wrapper .sub-menu {
    grid-column: content;
    display: grid;
    grid-template-columns: 30ch 1fr;
    column-gap: 11.5rem;
  }
  .sub-menu-wrapper .sub-menu li {
    grid-column: 2;
  }
  .sub-menu-wrapper .sub-menu li.tbrtheme-submenu-featured + li, .sub-menu-wrapper .sub-menu li.tbrtheme-submenu-featured + li ~ li {
    transform: translateY(-1.5em);
  }
  .sub-menu-wrapper .sub-menu li a {
    text-decoration: none;
  }
  .sub-menu-wrapper .sub-menu li.tbrtheme-submenu-featured {
    grid-column: 1;
    grid-row: 1/span var(--submenu-row-count, 4);
  }
  .sub-menu-wrapper .sub-menu li.tbrtheme-submenu-featured > a {
    --buttontextsize: var(--remsize20-30);
    padding: 0;
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link {
    --ffbuttonpadding: 0.75em 1.75em;
    --linktextweight: var(--buttontextweight);
    text-decoration: none;
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:focus {
    box-shadow: none;
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link[href^=mailto] {
    text-transform: none;
  }
}
@media only screen and (min-width: 83.5625rem) and (prefers-reduced-motion: no-preference) {
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link {
    --button-transition: 300ms;
    will-change: transform;
  }
}
@media only screen and (min-width: 83.5625rem) {
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:hover::before, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:active::before, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:focus-visible::before {
    width: 100%;
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:hover, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:active, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:focus-visible {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) and (any-hover: none) {
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link::before {
    content: none;
  }
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:hover, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:active, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:focus-visible {
    --btn-bg: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  .menu-item.current-menu-item .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link {
    --btn-bg: var(--color-cta, var(--test));
  }
}
@media only screen and (min-width: 83.5625rem) {
  .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:hover, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:active, .sub-menu-wrapper .sub-menu p.tbrtheme-submenu-featured-link a.cta-link:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  /* ul */
  .main-menu-styles > li.menu-item {
    flex: 0 0 auto;
  }
  .main-menu-styles > li.menu-item > a {
    white-space: nowrap;
  }
  .main-menu-styles > li.menu-item > .sub-menu {
    display: grid;
    z-index: 1;
    position: absolute;
    top: 99%;
    gap: 2.125em;
    opacity: 0;
    clip-path: inset(0 0 100% 0);
    transition: opacity 300ms cubic-bezier(0.55, 0.09, 0.68, 0.53), clip-path 300ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    transform: translateX(-35%);
    isolation: isolate;
  }
  .main-menu-styles > li.menu-item > .sub-menu > * {
    z-index: 1;
  }
  .main-menu-styles .menu-item .sub-menu-wrapper {
    opacity: 0;
    clip-path: inset(0 0 100% 0);
    transition: opacity 400ms linear, clip-path 400ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .main-menu-styles .menu-item .sub-menu-wrapper .sub-menu {
    opacity: 0;
    transform: translateY(2rem);
    transition: opacity 1000ms cubic-bezier(0.55, 0.09, 0.68, 0.53), transform 300ms linear 400ms;
  }
  .main-menu-styles .menu-item:hover .sub-menu-wrapper, .main-menu-styles .menu-item:focus .sub-menu-wrapper, .main-menu-styles .menu-item:focus-visible .sub-menu-wrapper, .main-menu-styles .menu-item:focus-within .sub-menu-wrapper {
    opacity: 1;
    clip-path: inset(0 0 0 0);
  }
  .main-menu-styles .menu-item:hover .sub-menu-wrapper .sub-menu, .main-menu-styles .menu-item:focus .sub-menu-wrapper .sub-menu, .main-menu-styles .menu-item:focus-visible .sub-menu-wrapper .sub-menu, .main-menu-styles .menu-item:focus-within .sub-menu-wrapper .sub-menu {
    opacity: 1;
    transform: translateY(0);
  }
  /* the properties you put in */
}
/* main menu */
.site-nav::before {
  content: " ";
  position: absolute;
  inset: calc(var(--header-wrapper-height) * -1) 0 0;
  background-color: var(--header-bg);
  z-index: -1;
}
@media only screen and (max-width: 83.5rem) {
  .site-nav::before {
    background-image: linear-gradient(to bottom, var(--shade-lighter-beige) var(--header-wrapper-height), var(--bg) 0);
    /* the properties you put in */
  }
}
.site-nav input[type=search] {
  --inputtextsize: var(--buttontextsize);
}

.main-menu-styles {
  /* ul */
  font-weight: var(--fontweight400);
}
.main-menu-styles > li {
  margin-block-end: 0;
}
.main-menu-styles > li:not(.current-menu-item) a:active {
  --btn-fg: var(--current-menu-item, var(--test));
  /* --btn-bg: var(--current-menu-item-bg, var(--test)); */
  position: relative;
  z-index: 1;
}
.main-menu-styles > li:not(.current-menu-item) a:focus-visible {
  outline-color: var(--current-menu-item, var(--test));
}
.main-menu-styles > li:not(.current-menu-item) button:focus-visible {
  text-decoration: underline;
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
.main-menu-styles > li > a {
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  --btn-bdr-size: 0;
  --btn-fg: var(--main-menu-button-text, var(--test));
  --btn-bg: var(--main-menu-button-bg);
  --buttontextweight: 500;
  --ffbuttonpadding: 0.5em 0;
  --buttonborderradius: 0;
  text-transform: none;
  outline: none !important;
  text-decoration: none;
  text-underline-offset: 0.25em;
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:focus-visible,
.main-menu-styles > li > a:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:focus,
.main-menu-styles > li > a:focus {
  box-shadow: none;
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button[href^=mailto],
.main-menu-styles > li > a[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
  .main-menu-styles > li > a {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:disabled,
.main-menu-styles > li > a:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:hover, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:active, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:focus-visible,
.main-menu-styles > li > a:hover,
.main-menu-styles > li > a:active,
.main-menu-styles > li > a:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button::before,
.main-menu-styles > li > a::before {
  content: none;
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
  .main-menu-styles > li > a {
    --buttontextsize: var(--remsize20);
    text-align: start;
    justify-content: start;
  }
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:hover, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:active, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:focus-visible,
  .main-menu-styles > li > a:hover,
  .main-menu-styles > li > a:active,
  .main-menu-styles > li > a:focus-visible {
    --btn-bg: transparent;
    /* the properties you put in */
  }
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
  .main-menu-styles > li > a {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:hover, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:active, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:focus-visible,
  .main-menu-styles > li > a:hover,
  .main-menu-styles > li > a:active,
  .main-menu-styles > li > a:focus-visible {
    --btn-fg: var(--main-menu-button-fg-hover, var(--test));
    --btn-bg: var(--header-bg);
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 0.0625rem;
    /* the properties you put in */
  }
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
  .main-menu-styles > li > a {
    /* the properties you put in */
  }
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:hover, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:active, .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button:focus-visible,
.main-menu-styles > li > a:hover,
.main-menu-styles > li > a:active,
.main-menu-styles > li > a:focus-visible {
  background-image: none;
  border-color: currentColor;
  /* the properties you put in */
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
  .main-menu-styles > li > a {
    display: flex;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .main-menu-styles > li .menu-expando-title .tbrtheme-menu-parent-button,
  .main-menu-styles > li > a {
    --ffbuttonpadding: 0.5em 0.7em;
    /* the properties you put in */
  }
}
.main-menu-styles > li .menu-expando-title a.tbrtheme-menu-parent-button {
  position: relative;
  isolation: isolate;
}
.main-menu-styles > li .menu-expando-title a.tbrtheme-menu-parent-button::before {
  content: " ";
  position: absolute;
  inset: 0 0 -3em 0;
  z-index: -1;
}
.main-menu-styles > li:first-child .tbrtheme-menu-parent-button::before,
.main-menu-styles > li:first-child a::before {
  inset: 0 auto 0 -0.575em;
}
.main-menu-styles > li:last-child .tbrtheme-menu-parent-button::after,
.main-menu-styles > li:last-child a::after {
  inset: 0 -0.575em 0 auto;
}
.main-menu-styles > li .menu-expando-title .tbrtheme-menu-title {
  cursor: default;
}
.main-menu-styles > li.current-menu-item > a {
  --btn-fg: var(--current-menu-item, var(--test));
  /* --btn-bg: var(--current-menu-item-bg, var(--test)); */
}
.main-menu-styles > li.current-menu-item .tbrtheme-menu-parent-button {
  --btn-fg: var(--current-menu-item, var(--test));
  /* --btn-bg: var(--current-menu-item-bg, var(--test)); */
}
@media only screen and (min-width: 83.5625rem) {
  .main-menu-styles > li .tbrtheme-menu-parent-button svg {
    display: none;
  }
  .main-menu-styles > li .tbrtheme-menu-parent-button {
    /* the properties you put in */
  }
}
.main-menu-styles > li .sub-menu a {
  text-decoration: none;
}
.main-menu-styles > li .sub-menu li > a {
  z-index: 1;
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  --btn-fg: var(--main-menu-submenu-text);
  --btn-bg: var(--main-menu-submenu-bg);
  --buttonborderradius: 0;
  --buttontextsize: var(--remsize16-25);
  --ffbuttonpadding: 0.75em 0;
  display: flex;
  inline-size: auto;
  text-transform: none;
  text-align: start;
  justify-content: start;
  line-height: 1.1;
  outline: none !important;
  overflow: visible;
  isolation: auto;
  position: unset;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.main-menu-styles > li .sub-menu li > a:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.main-menu-styles > li .sub-menu li > a:focus {
  box-shadow: none;
}
.main-menu-styles > li .sub-menu li > a[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .main-menu-styles > li .sub-menu li > a {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.main-menu-styles > li .sub-menu li > a:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.main-menu-styles > li .sub-menu li > a:hover, .main-menu-styles > li .sub-menu li > a:active, .main-menu-styles > li .sub-menu li > a:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
.main-menu-styles > li .sub-menu li > a:hover, .main-menu-styles > li .sub-menu li > a:active, .main-menu-styles > li .sub-menu li > a:focus-visible {
  --btn-fg: var(--main-menu-submenu-text-hover, var(--test));
  --btn-bg: var(--main-menu-submenu-bg-hover, var(--test));
  /* --btn-bg: var(--bg); */
  /* the properties you put in */
}
.main-menu-styles > li .sub-menu li > a::before, .main-menu-styles > li .sub-menu li > a::after {
  content: none;
}
.main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured).current-menu-item svg {
  opacity: 0.5;
}
@media only screen and (min-width: 83.5625rem) {
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) {
    border-block-end: 1px solid var(--txtalpha);
  }
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a :is(span, svg) {
    transition: transform 200ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a:hover :is(span, svg), .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a:active :is(span, svg), .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a:focus-visible :is(span, svg) {
    transform: translateY(-0.5rem);
  }
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a:hover, .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a:active, .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a:focus-visible {
    /* the properties you put in */
  }
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) {
    /* the properties you put in */
  }
}
.main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a svg {
  --svg-inline: 1.25rem;
  --svg-block: 1.25rem;
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a svg {
    display: none;
  }
  .main-menu-styles > li .sub-menu li:not(.tbrtheme-submenu-featured) a {
    /* the properties you put in */
  }
}
.main-menu-styles > li .sub-menu li.current-menu-item > a {
  --btn-fg: var(--current-sub-menu-item, var(--test));
  /* --btn-bg: var(--current-sub-menu-item-bg, var(--test)); */
}
.main-menu-styles > li .sub-menu .tbrtheme-menu-description {
  position: relative;
  z-index: 1;
  pointer-events: none;
  line-height: var(--bodytextline);
  display: block;
  margin-block: 1rem 2rem;
}
@media only screen and (max-width: 83.5rem) {
  .main-menu-styles > li .sub-menu .tbrtheme-menu-description {
    display: none;
    /* the properties you put in */
  }
}

/* en dash */
/* @forward "menu-share"; */
/* @forward "menu-sitemap"; */
@media only screen and (max-width: 35.5rem) {
  :is(ul#investors-menu, ul#season-menu) {
    inline-size: 90vw;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 568px) and (max-width: 844px) {
  :is(ul#investors-menu, ul#season-menu) {
    inline-size: max-content;
    /* the properties you put in */
  }
}

@media only screen and (max-width: 844px) {
  :is(.tbrtheme-investors-menu, .tbrtheme-posts-categories, .tbrtheme-season-sidebar-wrapper) {
    margin-block-end: 1em;
  }
  :is(ul#investors-menu, ul#season-menu) {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 3rem;
    align-items: center;
    gap: 0;
    border: none;
    height: 3rem;
    overflow-y: clip;
    padding: 0;
  }
  :is(ul#investors-menu, ul#season-menu) li {
    margin: 0;
    border-block-start: none !important;
    border-block-end: none !important;
  }
  :is(ul#investors-menu, ul#season-menu) li a {
    display: flex;
    align-items: center;
    height: 3rem;
    padding: 0.5em 1em !important;
    font-weight: 500;
    border-radius: 0;
  }
  :is(ul#investors-menu, ul#season-menu) li a:hover, :is(ul#investors-menu, ul#season-menu) li a:active, :is(ul#investors-menu, ul#season-menu) li a:focus-visible {
    font-weight: var(--bodytextweight);
    /* the properties you put in */
  }
  :is(ul#investors-menu, ul#season-menu) li.current-menu-item {
    cursor: pointer;
    grid-row: 1;
    border-radius: 1em 1em 0 0;
    display: grid;
    grid-template-columns: 1fr 3em;
    align-items: center;
    text-align: center;
    position: relative;
    border: none;
    margin: 0;
  }
  :is(ul#investors-menu, ul#season-menu) li.current-menu-item a {
    grid-column: 1/span 2;
    grid-row: 1;
    pointer-events: none;
    inline-size: 100%;
    color: var(--light, var(--test));
    background-color: var(--color-cta, var(--test));
    border-color: var(--color-cta, var(--test));
    border-radius: 100vw;
    font-weight: 500;
    justify-content: center;
  }
  :is(ul#investors-menu, ul#season-menu) li.current-menu-item::after {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    z-index: 2;
    translate: 0 0.125em;
    content: url("../../icons/theme/angle-down-white.svg");
  }
  :is(ul#investors-menu, ul#season-menu) li:not(.current-menu-item):last-child {
    border-block-end: 0.5em solid var(--alt-bg-light, silver) !important;
  }
  :is(ul#investors-menu, ul#season-menu):has(li.current-menu-item:last-child) li:nth-last-child(2) {
    border-block-end: 0.5em solid var(--alt-bg-light, silver) !important;
  }
  :is(ul#investors-menu, ul#season-menu).is-visible {
    height: initial;
    border-radius: 0 0 var(--remsize28) var(--remsize28);
    overflow-x: hidden;
  }
  :is(ul#investors-menu, ul#season-menu).is-visible a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(ul#investors-menu, ul#season-menu).is-visible a:hover, :is(ul#investors-menu, ul#season-menu).is-visible a:active, :is(ul#investors-menu, ul#season-menu).is-visible a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(ul#investors-menu, ul#season-menu).is-visible li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul#investors-menu, ul#season-menu).is-visible li.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
  :is(ul#investors-menu, ul#season-menu):focus-within {
    height: initial;
  }
  :is(ul#investors-menu, ul#season-menu):focus-within a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(ul#investors-menu, ul#season-menu):focus-within a:hover, :is(ul#investors-menu, ul#season-menu):focus-within a:active, :is(ul#investors-menu, ul#season-menu):focus-within a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(ul#investors-menu, ul#season-menu):focus-within li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  /* the properties you put in */
}
:is(ul.team-category-menu, ul#posts-category-menu) {
  --sentencemaxwidth: null;
  list-style-type: none;
  overflow: hidden;
  padding: 0;
  margin: 1em 0 0;
}
:is(ul.team-category-menu, ul#posts-category-menu) ::marker {
  content: none;
}
:is(ul.team-category-menu, ul#posts-category-menu) li {
  padding-inline-start: 0;
  flex-shrink: 0;
  margin: 0;
}
:is(ul.team-category-menu, ul#posts-category-menu) li:nth-child(3) {
  order: 1;
}
:is(ul.team-category-menu, ul#posts-category-menu) li a {
  --linktextweight: var(--buttontextweight);
}
@media only screen and (max-width: 63.625rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) {
    display: flex;
    flex-direction: column;
    inline-size: max-content;
    border: none;
    height: 3em;
    overflow-y: clip;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a {
    display: flex;
    width: 100%;
    text-decoration: none;
    padding: 0.5em 1em;
    padding-inline-end: 3em;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 63.625rem) and (prefers-color-scheme: dark) {
  :is(ul.team-category-menu, ul#posts-category-menu) a:hover, :is(ul.team-category-menu, ul#posts-category-menu) a:active, :is(ul.team-category-menu, ul#posts-category-menu) a:focus-visible {
    color: var(--dark);
    /* the properties you put in */
  }
}
@media only screen and (max-width: 63.625rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) li {
    order: 1;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item {
    cursor: pointer;
    order: 0;
    border-radius: 1em 1em 0 0;
    display: grid;
    grid-template-columns: 1fr 3em;
    align-items: center;
    position: relative;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a {
    grid-column: 1/span 2;
    grid-row: 1;
    pointer-events: none;
    inline-size: 100%;
    padding-inline-start: 1.5em !important;
    --linktextweight: var(--buttontextweight);
    text-decoration: none;
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:focus {
    box-shadow: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a[href^=mailto] {
    text-transform: none;
  }
}
@media only screen and (max-width: 63.625rem) and (prefers-reduced-motion: no-preference) {
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a {
    --button-transition: 300ms;
    will-change: transform;
  }
}
@media only screen and (max-width: 63.625rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:hover::before, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:active::before, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:focus-visible::before {
    width: 100%;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:hover, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:active, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:focus-visible {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 63.625rem) and (any-hover: none) {
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a::before {
    content: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:hover, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:active, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:focus-visible {
    --btn-bg: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  .menu-item.current-menu-item :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a {
    --btn-bg: var(--color-cta, var(--test));
  }
}
@media only screen and (max-width: 63.625rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:hover, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:active, :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item::after {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    content: url("../../icons/theme/angle-down-white.svg");
    z-index: 2;
    translate: 0 0.125em;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li:not(.current-menu-item):last-child {
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul.team-category-menu, ul#posts-category-menu):has(li.current-menu-item:last-child) li:nth-last-child(2) {
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul.team-category-menu, ul#posts-category-menu).is-visible {
    height: initial;
    border-radius: 0 0 var(--remsize28) var(--remsize28);
    overflow-x: hidden;
  }
  :is(ul.team-category-menu, ul#posts-category-menu).is-visible a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(ul.team-category-menu, ul#posts-category-menu).is-visible a:hover, :is(ul.team-category-menu, ul#posts-category-menu).is-visible a:active, :is(ul.team-category-menu, ul#posts-category-menu).is-visible a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(ul.team-category-menu, ul#posts-category-menu).is-visible li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul.team-category-menu, ul#posts-category-menu).is-visible li.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
  :is(ul.team-category-menu, ul#posts-category-menu):focus-within {
    height: initial;
  }
  :is(ul.team-category-menu, ul#posts-category-menu):focus-within a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(ul.team-category-menu, ul#posts-category-menu):focus-within a:hover, :is(ul.team-category-menu, ul#posts-category-menu):focus-within a:active, :is(ul.team-category-menu, ul#posts-category-menu):focus-within a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(ul.team-category-menu, ul#posts-category-menu):focus-within li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
}
@media only screen and (max-width: 35.5rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) {
    inline-size: 90vw;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 63.6875rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) {
    display: flex;
    justify-content: space-between;
    gap: min(1vw, 1.5em);
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a {
    padding-inline: min(2.125vw, 3.75em) !important;
    --linktextweight: var(--buttontextweight);
    text-decoration: none;
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a:focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a:focus {
    box-shadow: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a[href^=mailto] {
    text-transform: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 63.6875rem) and (prefers-reduced-motion: no-preference) {
  :is(ul.team-category-menu, ul#posts-category-menu) a {
    --button-transition: 300ms;
    will-change: transform;
  }
}
@media only screen and (min-width: 63.6875rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) a:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a:hover::before, :is(ul.team-category-menu, ul#posts-category-menu) a:active::before, :is(ul.team-category-menu, ul#posts-category-menu) a:focus-visible::before {
    width: 100%;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a:hover, :is(ul.team-category-menu, ul#posts-category-menu) a:active, :is(ul.team-category-menu, ul#posts-category-menu) a:focus-visible {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 63.6875rem) and (any-hover: none) {
  :is(ul.team-category-menu, ul#posts-category-menu) a::before {
    content: none;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) a:hover, :is(ul.team-category-menu, ul#posts-category-menu) a:active, :is(ul.team-category-menu, ul#posts-category-menu) a:focus-visible {
    --btn-bg: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  .menu-item.current-menu-item :is(ul.team-category-menu, ul#posts-category-menu) a {
    --btn-bg: var(--color-cta, var(--test));
  }
}
@media only screen and (min-width: 63.6875rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) a:hover, :is(ul.team-category-menu, ul#posts-category-menu) a:active, :is(ul.team-category-menu, ul#posts-category-menu) a:focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  :is(ul.team-category-menu, ul#posts-category-menu) li.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-outline-bdr: var(--color-cta, var(--test));
    border-color: var(--btn-outline-bdr) !important;
    pointer-events: none;
  }
}
@media only screen and (min-width: 100rem) {
  :is(ul.team-category-menu, ul#posts-category-menu) a {
    padding-inline: 3.75em !important;
  }
  :is(ul.team-category-menu, ul#posts-category-menu) {
    /* the properties you put in */
  }
}

ul#team-category-menu {
  margin: 0;
}

@media only screen and (max-width: 1018px) {
  :is(.tbrtheme-posts-cat-links) {
    margin-block-end: 1em;
  }
  :is(ul#posts-category-menu) {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 3rem;
    align-items: center;
    gap: 0;
    border: none;
    height: 3rem;
    overflow-y: clip;
    padding: 0;
  }
  :is(ul#posts-category-menu):not(:has(li.current-menu-item)) li:first-of-type {
    border-radius: 1em 1em 0 0;
  }
  :is(ul#posts-category-menu):not(:has(li.current-menu-item)) li:first-of-type a {
    --btn-fg: var(--dark, var(--test));
    --btn-bg: var(--alt-bg, var(--test));
    --btn-bdr: var(--alt-bg, var(--test));
    pointer-events: none;
    inline-size: 100%;
    border-radius: 100vw;
    text-align: center;
    justify-content: center;
    font-weight: 500;
  }
  :is(ul#posts-category-menu) li {
    margin: 0;
    border-block-end: none;
  }
  :is(ul#posts-category-menu) li a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 3rem;
    padding: 0.5em 1em;
    font-weight: 500;
    border-radius: 0;
    --btn-fg: var(--dark, var(--test));
    --btn-bg: var(--alt-bg-light, var(--test));
    --btn-bdr: var(--alt-bg-light, var(--test));
  }
  :is(ul#posts-category-menu) li a::before {
    content: none;
  }
  :is(ul#posts-category-menu) li a:hover, :is(ul#posts-category-menu) li a:active, :is(ul#posts-category-menu) li a:focus-visible {
    --btn-bg: var(--alt-bg, var(--test));
    --btn-bdr: var(--alt-bg, var(--test));
    font-weight: var(--bodytextweight);
    /* the properties you put in */
  }
  :is(ul#posts-category-menu) li.current-menu-item {
    cursor: pointer;
    grid-row: 1;
    border-radius: 1em 1em 0 0;
    display: grid;
    grid-template-columns: 1fr 3em;
    align-items: center;
    text-align: center;
    position: relative;
    border: none;
    margin: 0;
  }
  :is(ul#posts-category-menu) li.current-menu-item a {
    grid-column: 1/span 2;
    grid-row: 1;
    pointer-events: none;
    inline-size: 100%;
    color: var(--light, var(--test));
    background-color: var(--color-cta, var(--test));
    border-color: var(--color-cta, var(--test));
    border-radius: 100vw;
    font-weight: 500;
    justify-content: center;
  }
  :is(ul#posts-category-menu) li.current-menu-item::after {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    z-index: 2;
    translate: 0 0.125em;
    content: url("../../icons/theme/angle-down-white.svg");
  }
  :is(ul#posts-category-menu) li:not(.current-menu-item):last-child {
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul#posts-category-menu):has(li.current-menu-item:last-child) li:nth-last-child(2) {
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul#posts-category-menu).is-visible {
    height: initial;
    border-radius: 0 0 var(--remsize28) var(--remsize28);
    overflow-x: hidden;
  }
  :is(ul#posts-category-menu).is-visible a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(ul#posts-category-menu).is-visible a:hover, :is(ul#posts-category-menu).is-visible a:active, :is(ul#posts-category-menu).is-visible a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(ul#posts-category-menu).is-visible li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(ul#posts-category-menu).is-visible li.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
  :is(ul#posts-category-menu):focus-within {
    height: initial;
  }
  :is(ul#posts-category-menu):focus-within a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(ul#posts-category-menu):focus-within a:hover, :is(ul#posts-category-menu):focus-within a:active, :is(ul#posts-category-menu):focus-within a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(ul#posts-category-menu):focus-within li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  /* the properties you put in */
}
/* social menu */
.menu-social {
  /* look */
}
.menu-social svg {
  transform: scale(1);
  transition: transform 200ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.menu-social li {
  --icon-size: 1.5625rem;
  --animation-delay: 1000ms;
}
.menu-social li a {
  --icon-size: 1.5625rem;
  --btn-fg: var(--social-icon-fg);
  --btn-bg: var(--social-icon-bg);
  --btn-solid-bdr: transparent;
  /* end override wordpress style */
  min-inline-size: 3rem;
  max-inline-size: min(100%, 90vw);
  border-radius: 0.5625rem;
  color: var(--btn-fg, var(--test)) !important;
  background-color: var(--btn-bg, var(--test)) !important;
  border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
  /* !important to override gravity forms opinionated bullshit */
  word-break: normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  border-radius: var(--buttonborderradius, 100vw);
  position: relative;
  /* cater for ::before ::after position absolute */
  isolation: isolate;
  /* cater for z-index -1 of ::before ::after */
  overflow: hidden;
  font-family: Inter, var(--sans-serif);
  font-weight: var(--buttontextweight);
  font-size: var(--buttontextsize);
  line-height: 1.2;
  text-align: center;
  justify-content: center;
  text-transform: capitalize;
  white-space: normal;
  cursor: pointer;
  opacity: 1;
  padding: var(--ffbuttonpadding);
  /* fix button text colours in iOS */
  -webkit-text-fill-color: currentcolor;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  border-color: var(--btn-solid-bdr, var(--test)); /* background colour */
  padding: 0;
  transform: translateY(0.2em);
  min-inline-size: auto;
  aspect-ratio: 1;
  inline-size: 100%;
  block-size: 100%;
  display: flex;
  gap: 0.5em;
  place-items: center;
  text-align: center;
  text-decoration: none;
  border-radius: 0;
  -webkit-tap-highlight-color: var(--tap-highlight-color);
  outline: 0.125em solid transparent;
  outline-offset: 0.125em;
  transition: outline-color ease-in 150ms;
  /* for browsers that don't seem to support outline: */
  /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
}
.menu-social li a:focus-visible {
  outline-color: var(--focus-outline, currentColor);
  transform: rotate(0);
  /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
  	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
}
.menu-social li a:focus {
  box-shadow: none;
}
.menu-social li a[href^=mailto] {
  text-transform: none;
}
@media (prefers-reduced-motion: no-preference) {
  .menu-social li a {
    --button-transition: 300ms;
    will-change: transform;
  }
}
.menu-social li a:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed;
  filter: grayscale(100%);
  pointer-events: none;
}
.menu-social li a:hover, .menu-social li a:active, .menu-social li a:focus-visible {
  --btn-bg: var(--color-primary-button-hover);
  /* the properties you put in */
}
.menu-social li a svg {
  --svg-inline: var(--icon-size);
  --svg-block: var(--icon-size);
}
.menu-social li a:hover, .menu-social li a:active, .menu-social li a:focus-visible {
  --btn-fg: var(--social-icon-fg-hover);
  --btn-bg: var(--social-icon-bg-hover);
  /* the properties you put in */
}

.footer-menu-social .menu-social .tbrtheme-icon-title {
  position: absolute;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  block-size: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  inline-size: 1px;
  word-wrap: normal !important;
}

/* top bar */
@media only screen and (max-width: 83.5rem) {
  .headertitle-sitemenu_content:has(.search-field:focus-within) .site-header {
    visibility: hidden;
  }
  /* the properties you put in */
}
.nav-top {
  --mobile-icon-size: 1.25rem;
  color: var(--nav-top-fg, var(--test));
  background-color: var(--nav-top-bg, var(--test));
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5em;
  margin: 0;
}
@media only screen and (max-width: 83.5rem) {
  .nav-top {
    justify-self: end;
    flex-direction: row-reverse;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .nav-top {
    padding-block-end: 0.75rem;
    gap: 2em;
    /* the properties you put in */
  }
}
.nav-top .search-form {
  display: flex;
  align-items: center;
  background-color: var(--header-bg);
}
.nav-top .search-field {
  inline-size: 10.43em;
  padding: 0.25em 1em;
  border-radius: 1em;
  text-align: start;
  justify-content: start;
  color: var(--txt);
  background-color: transparent;
  border: 1px solid var(--txtalpha);
}
.nav-top .search-field:hover, .nav-top .search-field:active, .nav-top .search-field:focus-visible {
  outline: none;
  /* the properties you put in */
}
.nav-top .search-field::placeholder {
  color: var(--txt);
}
@media only screen and (max-width: 83.5rem) {
  .nav-top .search-field {
    min-inline-size: unset;
    background-image: url("../../icons/theme/search-icon.svg");
    transition: inline-size 350ms linear;
    background-repeat: no-repeat;
    background-size: calc(var(--mobile-icon-size) + 0.4rem);
    background-position: center;
    border: 0;
    inline-size: calc(var(--mobile-icon-size) + 1em);
    padding: 0.5em;
    border-radius: 100vw;
    color: transparent;
    cursor: pointer;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) and (prefers-color-scheme: dark) {
  .nav-top .search-field {
    background-image: url("../../icons/theme/search-icon-white.svg");
  }
}
@media only screen and (max-width: 83.5rem) {
  .nav-top .search-field::placeholder {
    color: transparent;
  }
  .nav-top .search-field:focus-within {
    inline-size: 10.43em;
    border: 1px solid var(--txtalpha);
    cursor: text;
    background-image: none;
    color: var(--txt);
  }
  .nav-top .search-field:focus-within::placeholder {
    color: var(--txt);
  }
}
:not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field {
  color: var(--light);
  border-color: var(--light);
}
@media only screen and (max-width: 83.5rem) {
  :not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field {
    background-image: url("../../icons/theme/search-icon-white.svg");
    color: transparent;
    cursor: pointer;
  }
  :not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field:focus-within {
    color: var(--light);
    background-image: none;
  }
  :not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field:focus-within::placeholder {
    color: var(--light);
  }
  :not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field {
    /* the properties you put in */
  }
}
:not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field::placeholder {
  color: var(--light);
}
@media only screen and (max-width: 83.5rem) {
  :not(.nav-state-open) .home:not(.tbrtheme-submenu-active) .nav-top .search-field::placeholder {
    color: transparent;
    /* the properties you put in */
  }
}
.nav-top .menu-top {
  display: flex;
  align-items: center;
  gap: 2em;
}
.nav-top .menu-top a {
  font-size: var(--remsize14);
  text-decoration: none;
  text-underline-offset: 0.25em;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 0.65em;
  overflow-x: clip;
}
.nav-top .menu-top a svg {
  --svg-block: 100%;
  flex: 0 0 var(--svg-inline);
}
.nav-top .menu-top a:hover, .nav-top .menu-top a:active, .nav-top .menu-top a:focus-visible {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: 0.0625rem;
  /* the properties you put in */
}
.nav-top .menu-top .tbrtheme-icon-theme_shop svg {
  --svg-inline: 0.875rem;
  overflow: hidden;
}
@media only screen and (max-width: 83.5rem) {
  .nav-top .menu-top .tbrtheme-icon-theme_shop a {
    inline-size: var(--mobile-icon-size);
    padding: 0.5em;
    box-sizing: content-box;
  }
  .nav-top .menu-top .tbrtheme-icon-theme_shop svg {
    --svg-inline: var(--mobile-icon-size);
  }
  .nav-top .menu-top .tbrtheme-icon-theme_shop .tbrtheme-icon-title {
    position: absolute;
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    block-size: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    inline-size: 1px;
    word-wrap: normal !important;
  }
  .nav-top .menu-top .tbrtheme-icon-theme_shop {
    /* the properties you put in */
  }
}
.nav-top .menu-top .tbrtheme-icon-theme_chat svg {
  --svg-inline: 1.125rem;
  overflow: hidden;
}
@media only screen and (max-width: 83.5rem) {
  .nav-top .menu-top .tbrtheme-icon-theme_chat {
    position: absolute;
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    block-size: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    inline-size: 1px;
    word-wrap: normal !important;
    /* the properties you put in */
  }
}
.nav-top .menu-top .current-menu-item a {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: 0.125em;
  text-underline-offset: 0.35em;
  text-decoration-color: var(--color-primary-700);
}

h2:has(+ .wp-block-tbrtheme-menu) {
  margin-block-end: 1em;
}

.nav-call-to-action-menu .tbrtheme-call-to-action-menu {
  --color-cta-hover: var(--shade-light-beige);
  display: grid;
  gap: 1rem;
}
@media (prefers-color-scheme: dark) {
  .nav-call-to-action-menu .tbrtheme-call-to-action-menu {
    --color-cta-hover: var(--shade-dark-grey);
  }
}
.nav-call-to-action-menu .tbrtheme-call-to-action-menu a {
  border-radius: var(--remsize10);
  border: 1px solid var(--txtalpha);
  display: block;
  font-size: var(--remsize20);
  text-decoration: none;
  padding: 0.9em 1.5em;
  line-height: 1.1;
  background-color: var(--bg);
  transition: all 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.nav-call-to-action-menu .tbrtheme-call-to-action-menu a:hover, .nav-call-to-action-menu .tbrtheme-call-to-action-menu a:active, .nav-call-to-action-menu .tbrtheme-call-to-action-menu a:focus-visible {
  --grey-rule: var(--txt);
  background-color: var(--color-cta-hover);
  /* the properties you put in */
}

/* nav top page */
#scroll-to-top .totoplink svg, #scroll-to-top .totoplink, #scroll-to-top p, #scroll-to-top {
  inline-size: min(10vmin, 3rem);
  block-size: min(10vmin, 3rem);
}

.scroll-widget-hide {
  opacity: 0;
  visibility: hidden;
  /* "Fade and Go Away"
  https://codersblock.com/blog/the-surprising-things-that-css-can-animate/ */
}

/* a link up button */
/* up button */
#scroll-to-top {
  position: fixed;
  z-index: 10001;
  inset-block-start: calc(100vh - 7.25rem); /* at - 7.25em (don't put - $columngap) this works on android and iphone */
  inset-inline-start: calc(100% - min(15vmin, 4rem)); /* to work on iphone */
}
#scroll-to-top p {
  margin: 0;
}
#scroll-to-top .totoplink {
  inline-size: unset;
  block-size: unset;
  display: unset;
  visibility: unset;
  /* a link with font awesome caret */
  position: relative;
  z-index: 2;
  display: block;
  text-align: center;
  text-decoration: none;
  color: var(--svg-top-link, var(--test));
  border-block-end-width: 0;
  outline: none;
  padding: 0;
}
#scroll-to-top .totoplink svg {
  border: 2px solid var(--svg-top-link, var(--test));
  border-radius: 50%;
  opacity: 0.5;
  transition: opacity 250ms linear 0s, scale 250ms linear 0s;
  scale: 1;
}
#scroll-to-top .totoplink:hover, #scroll-to-top .totoplink:active, #scroll-to-top .totoplink:focus-visible {
  border-block-end-width: 0;
  outline: none;
}
#scroll-to-top .totoplink:hover svg, #scroll-to-top .totoplink:active svg, #scroll-to-top .totoplink:focus-visible svg {
  opacity: 1;
}
#scroll-to-top .totoplink:hover, #scroll-to-top .totoplink:active, #scroll-to-top .totoplink:focus-visible {
  /* the properties you put in */
}
#scroll-to-top .totoplink:focus-visible svg {
  scale: 1.25;
}

/* position on desktop */
@media only screen and (min-width: 84rem) {
  #scroll-to-top {
    inset-block-start: calc(100vh - 9.25rem);
    inset-inline-start: 94.5%;
  }
}
/* news posts navigation */
/* post lists pages nav */
.pagination-block {
  display: block;
  width: 100%;
  margin: min(6vw, 3rem) 0;
  grid-column: fullwidth;
  /* for when not in a grid */
  text-align: end;
}

ul.pagination {
  --flexgap: 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--flexgap);
  list-style-type: none;
}
ul.pagination ::marker {
  content: none;
}
ul.pagination li {
  padding-inline-start: 0;
}
ul.pagination > li::before {
  content: "​"; /* zero-width space */
  position: absolute; /* here for accessible readers only */
}
ul.pagination li {
  --pagination-font-size: 1rem;
  font-size: var(--pagination-font-size, var(--remsize14));
  color: var(--pagination-text, var(--test));
  flex-basis: 1em;
}
ul.pagination li .dots {
  --padding: 0.5em;
  padding: var(--padding);
  display: flex;
  place-content: center;
  align-items: center;
  line-height: 0.5;
}
ul.pagination li {
  /* a and span */
}
ul.pagination li .page-number, ul.pagination li.btn a, ul.pagination li.btn button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow) {
  --padding: 0.5em;
  font-weight: 600;
  text-decoration: none;
  color: var(--pagination-link, var(--test));
  transition: 100ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
ul.pagination li .page-number.current, ul.pagination li.btn a.current, ul.pagination li.btn button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow).current {
  color: var(--pagination-text-current, var(--test));
  background-color: var(--pagination-bg-current, var(--test));
}
ul.pagination li .page-number:hover, ul.pagination li .page-number:active, ul.pagination li .page-number:focus-visible, ul.pagination li.btn a:hover, ul.pagination li.btn a:active, ul.pagination li.btn a:focus-visible, ul.pagination li.btn button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):hover, ul.pagination li.btn button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):active, ul.pagination li.btn button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):focus-visible {
  color: var(--pagination-link-hover, var(--test));
  background-color: var(--pagination-bg-hover, var(--test));
  /* the properties you put in */
}
ul.pagination li.btn {
  position: relative;
}
ul.pagination li.btn::before {
  content: " ";
  position: absolute;
  width: 1px;
  background-color: var(--txtalphalighter);
}
ul.pagination li.btn.prev a, ul.pagination li.btn.next a {
  display: flex;
  align-items: center;
  gap: 0.25em;
}
ul.pagination li.btn.prev a,
ul.pagination li.btn.prev button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow), ul.pagination li.btn.next a,
ul.pagination li.btn.next button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow) {
  font-size: inherit;
  font-weight: 600;
  color: var(--pagination-text, var(--test));
  transform: translateX(0);
  transition: transform 150ms linear;
  background: none;
  border: none;
}
@media only screen and (max-width: 600px) {
  ul.pagination li.btn.prev span, ul.pagination li.btn.next span {
    position: absolute;
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    block-size: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    inline-size: 1px;
    word-wrap: normal !important;
  }
  ul.pagination li.btn.prev, ul.pagination li.btn.next {
    /* the properties you put in */
  }
}
ul.pagination li.btn.prev {
  padding-inline-end: var(--flexgap);
}
ul.pagination li.btn.prev::before {
  inset: -0.25em 0 -0.25em auto;
}
ul.pagination li.btn.prev a:hover, ul.pagination li.btn.prev a:active, ul.pagination li.btn.prev a:focus-visible,
ul.pagination li.btn.prev button:hover,
ul.pagination li.btn.prev button:active,
ul.pagination li.btn.prev button:focus-visible {
  transform: translateX(-0.125em);
  /* the properties you put in */
}
ul.pagination li.btn.next {
  padding-inline-start: var(--flexgap);
}
ul.pagination li.btn.next::before {
  inset: -0.25em auto -0.25em 0;
}
ul.pagination li.btn.next a:hover, ul.pagination li.btn.next a:active, ul.pagination li.btn.next a:focus-visible,
ul.pagination li.btn.next button:hover,
ul.pagination li.btn.next button:active,
ul.pagination li.btn.next button:focus-visible {
  transform: translateX(0.125em);
  /* the properties you put in */
}
ul.pagination li.btn.disabled {
  display: none;
}
ul.pagination li.btn.disabled a, ul.pagination li.btn.disabled button[disabled]:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow) {
  --btn-bg: var(--pagination-bg-disabled, var(--test));
  color: var(--pagination-text-disabled, var(--test));
  border: 0;
  display: grid;
  place-content: center;
  place-items: center;
  opacity: 1 !important;
}
ul.pagination li.btn.disabled a:hover, ul.pagination li.btn.disabled a:active, ul.pagination li.btn.disabled a:focus-visible, ul.pagination li.btn.disabled button[disabled]:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):hover, ul.pagination li.btn.disabled button[disabled]:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):active, ul.pagination li.btn.disabled button[disabled]:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow):focus-visible {
  color: var(--pagination-text-disabled, var(--test));
  /* the properties you put in */
}
ul.pagination li.btn button:not(.baguetteBox-button):not(.gm-control-active):not(.glide__bullet):not(.glide__arrow) {
  min-inline-size: auto;
  block-size: 100%;
  padding: var(--padding, 1em);
}

/* single posts next previous nav */
nav.nav-nextprev {
  margin-block: min(6vw, 3rem);
}

.nav-nextprev-list {
  display: inline-flex;
}
@media (hover: none) {
  .nav-nextprev-list {
    display: flex;
    justify-content: space-around;
  }
}
.nav-nextprev-list .nav-prev,
.nav-nextprev-list .nav-next {
  display: inline-flex;
  align-items: flex-start;
}
.nav-nextprev-list .nav-prev a,
.nav-nextprev-list .nav-next a {
  color: var(--color-primary-700, var(--test));
}
.nav-nextprev-list .nav-prev a:hover, .nav-nextprev-list .nav-prev a:active, .nav-nextprev-list .nav-prev a:focus-visible,
.nav-nextprev-list .nav-next a:hover,
.nav-nextprev-list .nav-next a:active,
.nav-nextprev-list .nav-next a:focus-visible {
  color: var(--color-primary-700, var(--test));
  /* the properties you put in */
}
.nav-nextprev-list .nav-prev svg,
.nav-nextprev-list .nav-next svg {
  width: 1.5em;
  height: 1.5em;
}
.nav-nextprev-list .nav-prev:hover svg, .nav-nextprev-list .nav-prev:active svg, .nav-nextprev-list .nav-prev:focus-visible svg,
.nav-nextprev-list .nav-next:hover svg,
.nav-nextprev-list .nav-next:active svg,
.nav-nextprev-list .nav-next:focus-visible svg {
  transition: transform 250ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.nav-nextprev-list .nav-prev:hover, .nav-nextprev-list .nav-prev:active, .nav-nextprev-list .nav-prev:focus-visible,
.nav-nextprev-list .nav-next:hover,
.nav-nextprev-list .nav-next:active,
.nav-nextprev-list .nav-next:focus-visible {
  /* the properties you put in */
}
.nav-nextprev-list .nav-prev {
  justify-self: start;
}
.nav-nextprev-list .nav-prev:hover svg, .nav-nextprev-list .nav-prev:active svg, .nav-nextprev-list .nav-prev:focus-visible svg {
  transform: translateX(-0.3em);
}
.nav-nextprev-list .nav-prev:hover, .nav-nextprev-list .nav-prev:active, .nav-nextprev-list .nav-prev:focus-visible {
  /* the properties you put in */
}
.nav-nextprev-list .nav-next {
  justify-self: end;
  text-align: end;
}
.nav-nextprev-list .nav-next:hover svg, .nav-nextprev-list .nav-next:active svg, .nav-nextprev-list .nav-next:focus-visible svg {
  transform: translateX(0.3em);
}
.nav-nextprev-list .nav-next:hover, .nav-nextprev-list .nav-next:active, .nav-nextprev-list .nav-next:focus-visible {
  /* the properties you put in */
}

/* pagination-gallery used in /scss/basics/resets/gallery/index.scss */
.tbrtheme-group-columns {
  columns: 50ch;
  gap: 3em;
  orphans: 3;
}
.tbrtheme-group-columns h1, .tbrtheme-group-columns h2, .tbrtheme-group-columns .tbrtheme-span-all-columns, .tbrtheme-group-columns blockquote {
  column-span: all;
}
.tbrtheme-group-columns figure, .tbrtheme-group-columns img {
  break-inside: avoid;
}

.tbrtheme-page-columns {
  --column-gap: 0;
  --row-gap: 0;
}
.tbrtheme-page-columns h2 {
  font-size: var(--remsizeh2contain);
}
.tbrtheme-page-columns h2 br {
  display: initial;
}
.tbrtheme-page-columns img {
  object-fit: cover;
  object-position: center;
  aspect-ratio: 326/218;
  border-radius: var(--remsize15);
}
@media only screen and (min-width: 48.0625rem) and (max-width: 73rem) {
  .tbrtheme-page-columns img {
    aspect-ratio: 421/508;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 73.0625rem) {
  .tbrtheme-page-columns img {
    aspect-ratio: 508/421;
    /* the properties you put in */
  }
}
.tbrtheme-page-columns .wp-block-button-link {
  margin-block-start: 1rem;
}
.tbrtheme-page-columns.tbrtheme-page-columns-wide-vid iframe {
  border-radius: var(--remsize15);
}
.tbrtheme-page-columns.tbrtheme-page-columns-wide-pic iframe {
  border-radius: var(--remsize15);
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-page-columns {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: min(6vw, 3rem);
  }
  .tbrtheme-page-columns-reverse-order-for-mobile .wp-block-column:first-child {
    grid-row: 2;
  }
  .tbrtheme-page-columns {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid {
    display: flex;
    flex-direction: column;
    gap: min(10vw, 5rem);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid .wp-block-column {
    inline-size: 100%;
  }
  .tbrtheme-page-columns {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) and (max-width: 73rem) {
  .tbrtheme-page-columns {
    display: grid;
    grid-template-columns: 6fr 4fr;
    gap: min(10vw, 5rem);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid iframe {
    aspect-ratio: 500/281;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid figure {
    margin: 0;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic {
    grid-template-columns: 1fr;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic :is(iframe, figure, picture, img) {
    max-inline-size: none;
    width: 100%;
    height: 100%;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic iframe {
    aspect-ratio: 500/281;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic figure {
    margin: 0;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic img {
    object-fit: cover;
    object-position: center;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-form-right {
    grid-template-columns: 3.25fr 6.75fr;
  }
  .tbrtheme-page-columns {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 5; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 33;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-vid.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tbrtheme-page-columns {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 73.0625rem) {
  .tbrtheme-page-columns {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 7; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 43;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tbrtheme-page-columns > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tbrtheme-page-columns > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tbrtheme-page-columns.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tbrtheme-page-columns.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 5; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 35;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-wide-pic.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-form-right {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 5; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 24;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-form-right > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-form-right > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-form-right.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-form-right.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tbrtheme-page-columns.tbrtheme-page-columns-align-center {
    align-items: center;
  }
  .tbrtheme-page-columns :is(iframe, figure, picture, img) {
    max-inline-size: none;
    width: 100%;
    height: 100%;
  }
  .tbrtheme-page-columns iframe {
    aspect-ratio: 500/281;
  }
  .tbrtheme-page-columns figure {
    margin: 0;
  }
  .tbrtheme-page-columns .wp-block-column:first-child p {
    --sentencemaxwidth: 43ch;
  }
  .tbrtheme-page-columns {
    /* the properties you put in */
  }
}
.tbrtheme-page-columns .wp-block-column:not(:first-child) {
  --wp--style--block-gap: 0;
}

.tbrtheme-page-columns-text {
  --column-gap: 0;
  --row-gap: 0;
  container-type: inline-size;
}
.tbrtheme-page-columns-text h2 {
  font-size: var(--remsizeh2contain);
}
.tbrtheme-page-columns-text h2 br {
  display: initial;
}
.tbrtheme-page-columns-text .wp-block-column p:last-of-type {
  margin-block-end: 0;
}
.home .tbrtheme-page-columns-text {
  padding-block: min(10vw, 5rem);
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-page-columns-text {
    display: grid;
    grid-template-columns: 1fr;
  }
  .tbrtheme-page-columns-text-reverse-order-for-mobile .wp-block-column:first-child {
    grid-row: 2;
  }
  .tbrtheme-page-columns-text h2 {
    margin-block-end: 0.5em;
  }
  .tbrtheme-page-columns-text .tbrtheme-cta-link a {
    margin-block-start: 0.5em;
  }
  .tbrtheme-page-columns-text .tbrtheme-page-columns-two {
    display: none;
  }
  .tbrtheme-page-columns-text {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  .tbrtheme-page-columns-text .tbrtheme-page-columns-one {
    display: none;
  }
  .tbrtheme-page-columns-text {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) and (max-width: 73rem) {
  .tbrtheme-page-columns-text {
    display: grid;
    grid-template-columns: 3fr 7fr;
    gap: min(10vw, 5rem);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 73.0625rem) {
  .tbrtheme-page-columns-text {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 7; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 30;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tbrtheme-page-columns-text > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tbrtheme-page-columns-text > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tbrtheme-page-columns-text.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tbrtheme-page-columns-text.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tbrtheme-page-columns-text.tbrtheme-page-columns-align-center {
    align-items: center;
  }
  .tbrtheme-page-columns-text {
    /* the properties you put in */
  }
}
.tbrtheme-page-columns-text .wp-block-column:not(:first-child) {
  --wp--style--block-gap: 0;
}

:root {
  --margin-size: 1em;
}

.neutrog-form-columns {
  --column-one: 23;
  align-items: start;
}
.neutrog-form-columns .wp-block-column:first-child br {
  display: initial;
}
@media only screen and (max-width: 64rem) {
  .neutrog-form-columns {
    grid-template-columns: 1fr;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) {
  .neutrog-form-columns .wp-block-column:first-child {
    transform: translateY(0.875rem);
  }
  .neutrog-form-columns {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) and (max-width: 73rem) {
  .neutrog-form-columns {
    grid-template-columns: 3fr 7fr;
    /* the properties you put in */
  }
}

@media only screen and (min-width: 48.0625rem) {
  #gform_fields_1 {
    grid-template-areas: "names subject" "names message" "phone message" "email message" "state message";
  }
  #gform_fields_1 #input_1_1 {
    grid-template-columns: 1fr;
  }
  #gform_fields_1 #field_1_1 {
    grid-area: names;
  }
  #gform_fields_1 #field_1_4 {
    grid-area: phone;
  }
  #gform_fields_1 #field_1_5 {
    grid-area: email;
  }
  #gform_fields_1 #field_1_6 {
    grid-area: message;
  }
  #gform_fields_1 #field_1_6 .ginput_container_textarea {
    margin: 0;
  }
  #gform_fields_1 #field_1_6 .ginput_container_textarea .textarea.large {
    height: 212px;
  }
  #gform_fields_1 #field_1_7 {
    grid-area: state;
  }
  #gform_fields_1 #field_1_8 {
    grid-area: subject;
  }
  #gform_fields_1 {
    /* the properties you put in */
  }
}

@media only screen and (min-width: 64.0625rem) {
  #gform_fields_9 {
    margin-block-start: 0.25rem;
  }
  #gform_fields_9 #field_9_6 h3.gsection_title {
    margin-block-start: 0.75rem;
  }
  #gform_fields_9 {
    /* the properties you put in */
  }
}
#gform_fields_9 h3.gsection_title {
  font-size: 1rem;
  font-weight: 500;
  margin-block-end: 0.25rem;
}
#gform_fields_9 {
  /* they changed their minds about fields, all now regular field layout.

  	@include mq(tablet-portrait-minus, max) {
  		grid-template-areas:
  			"orgtitle"
  			"orgname"
  			"orgcontact"
  			"title"
  			"email"
  			"phone"
  			"address"
  			"website"
  			"sponsorshiptitle"
  			"projectname "
  			"projectdate"
  			"projectdesc"
  			"projectrequest"
  			"file"
  		;
  	}

  	@include mq(tablet-portrait-minus) {
  		grid-template-areas:
  			"orgtitle orgtitle"
  			"orgname address"
  			"orgcontact address"
  			"title address"
  			"email address"
  			"phone website"
  			"sponsorshiptitle sponsorshiptitle"
  			"projectname projectdate"
  			"projectdesc projectrequest"
  			"file file"
  		;
  	}

  	#field_9_6 {
  		grid-area: orgtitle;
  	}

  	#field_9_1 {
  		grid-area: orgname;
  	}

  	#field_9_4 {
  		grid-area: orgcontact;
  	}

  	#field_9_5 {
  		grid-area: title;
  	}

  	#field_9_8 {
  		grid-area: email;
  	}

  	#field_9_9 {
  		grid-area: phone;
  	}

  	#field_9_10 {
  		grid-area: address;
  		--margin-size: 0.75rem;
  		display: grid;
  		grid-template-columns: 1fr;
  		gap: var(--margin-size, 1.5em);

  		span {
  			padding: 0;
  			margin: 0;
  			display: block;
  			grid-column: 1 / -1;
  		}

  		.gform_hidden {
  			position: absolute;
  		}

  		.gf_clear.gf_clear_complex {
  			display: none;
  		}
  	}

  	#field_9_11 {
  		grid-area: website;
  	}

  */
}
#gform_fields_9 #field_9_7 {
  margin-block-start: 1rem;
}
#gform_fields_9 {
  /*

  	#field_9_12 {
  		grid-area: projectname;
  	}

  	#field_9_13 {
  		grid-area: projectdate;
  	}

  	#field_9_14 {
  		grid-area: projectdesc;
  	}

  	#field_9_15 {
  		grid-area: projectrequest;
  	}

  	#field_9_16 {
  		grid-area: file;
  	}

  */
}
#gform_fields_9 .datepicker {
  inline-size: 100%;
}

.entry-text > h1.wp-block-heading:first-child + p {
  --sentencemaxwidth: null;
}

.wp-block-tbrtheme-partners {
  padding-block: 1em 2em;
  border-block-end: 1px solid var(--txtalphalighter);
}

.tbrtheme-partners-gallery {
  --marker-type-ul: none;
  --sentencemaxwidth: null;
  padding: 0;
  margin: 0;
  column-gap: 4.75rem;
  row-gap: 2em;
}
@media only screen and (max-width: 26.75rem) {
  .tbrtheme-partners-gallery {
    grid-template-columns: repeat(2, 1fr);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 26.8125rem) and (max-width: 48rem) {
  .tbrtheme-partners-gallery {
    grid-template-columns: repeat(2, auto);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) and (max-width: 83.5rem) {
  .tbrtheme-partners-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .tbrtheme-partners-gallery {
    display: grid;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-partners-gallery {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* the properties you put in */
  }
}
.tbrtheme-partners-gallery .tbrtheme-partner-image {
  text-align: center;
}
.tbrtheme-partners-gallery li {
  padding-inline-start: 0;
  margin: 0;
}
.tbrtheme-partners-gallery li::marker {
  content: none;
}
.tbrtheme-partners-gallery li a {
  position: relative;
  display: flex;
  background-color: var(--light);
}
.tbrtheme-partners-gallery li img {
  inline-size: auto;
  max-block-size: 206px;
  max-inline-size: min(min(100%, 312px), 90vw);
}
@media only screen and (max-width: 83.5rem) {
  .tbrtheme-partners-gallery li img {
    max-block-size: 151px;
    /* the properties you put in */
  }
}
@media (prefers-color-scheme: dark) {
  .tbrtheme-partners-gallery li img {
    filter: none;
  }
}

#pojo-a11y-toolbar {
  --pojo-a11y-top: min(20vw, 8rem);
}

.sticky-pojo-a11y #pojo-a11y-toolbar {
  --pojo-a11y-top: initial;
}

.wp-block-tbrtheme-vacancies {
  --grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-vacancies {
    --grid-column: content;
    /* the properties you put in */
  }
}

.tbrtheme-vacancies {
  display: grid;
  row-gap: 1.125rem;
  padding-block-end: min(6vw, 3rem);
}
@media only screen and (max-width: 48rem) {
  .tbrtheme-vacancies > p:first-child {
    margin-block-end: 0;
  }
  .tbrtheme-vacancies {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) and (max-width: 83.5rem) {
  .tbrtheme-vacancies {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.125rem;
  }
  .tbrtheme-vacancies > p:first-child {
    grid-column: 1/span 2;
  }
  .tbrtheme-vacancies {
    /* the properties you put in */
  }
}
.tbrtheme-vacancy {
  background-color: var(--alt-bg);
  padding: min(5vw, 2.5rem) min(7vw, 3.125rem) min(5vw, 2rem) min(6vw, 3rem);
  border: var(--line-thickness, 1px) solid;
  border-radius: 0.75em;
}
.tbrtheme-vacancy-title {
  font-size: var(--remsize18-25);
  font-weight: 500;
}
.tbrtheme-vacancy-content {
  text-wrap: balance;
}
.tbrtheme-vacancy-link {
  justify-self: end;
}
@media only screen and (max-width: 25.875rem) {
  .tbrtheme-vacancy-content {
    text-wrap: unset;
  }
  .tbrtheme-vacancy {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 83.5rem) {
  .tbrtheme-vacancy-title {
    margin-block-end: 0.25em;
  }
  .tbrtheme-vacancy-content {
    max-inline-size: 40ch;
  }
  .tbrtheme-vacancy p:last-of-type {
    margin: 0;
  }
  .tbrtheme-vacancy-link {
    margin-block-start: 2rem;
  }
  .tbrtheme-vacancy {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tbrtheme-vacancy {
    display: grid;
    grid-template-columns: 2fr 40ch 1fr;
    align-items: center;
    column-gap: min(10vw, 5rem);
  }
  .tbrtheme-vacancy-title {
    margin: 0;
  }
  .tbrtheme-vacancy {
    /* the properties you put in */
  }
}

.wp-block-reusable-no-vacancies {
  grid-column: 1/-1;
  display: block;
  width: 100%;
  margin-block-start: 0.5rem;
  text-align: center;
  margin-inline: auto;
  padding-inline: min(6vw, 3rem);
  background-color: var(--alt-bg);
}
.wp-block-reusable-no-vacancies > * {
  margin-inline: auto;
}
.wp-block-reusable-no-vacancies h3.wp-block-heading {
  font-size: var(--remsize16-20);
  margin-block-end: 0.5em;
}
.wp-block-reusable-no-vacancies h3.wp-block-heading br {
  display: initial;
}
.wp-block-reusable-no-vacancies p {
  --sentencemaxwidth: 56ch;
}
.wp-block-reusable-no-vacancies .wp-block-button-link {
  margin-block-start: 2rem;
}

.wp-block-tbrtheme-endorsements-all {
  --grid-column: page;
  padding-block: 1em min(6vw, 3rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-endorsements-all {
    --grid-column: content;
    /* the properties you put in */
  }
}

.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state {
  border-top: 1px solid var(--txtalphalighter);
}
.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state:last-child {
  border-bottom: 1px solid var(--txtalphalighter);
}
.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary {
  padding-block: 1em;
  font-size: var(--remsize18-20);
  font-weight: 500;
  position: relative;
}
.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary::after {
  content: url("../../icons/theme/angle-down-summary-marker.svg");
  position: absolute;
  inset: 0.75em 0 1em auto;
  transform: translateY(0);
  transition: transform 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
@media (prefers-color-scheme: dark) {
  .tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary::after {
    content: url("../../icons/theme/angle-down-summary-marker-dm.svg");
  }
}
.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary:hover::after, .tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary:active::after, .tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary:focus-visible::after {
  transform: translateY(0.25em);
}
.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary:hover, .tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary:active, .tbrtheme-endorsements-gallery .tbrtheme-endorsements-state summary:focus-visible {
  /* the properties you put in */
}
.tbrtheme-endorsements-gallery .tbrtheme-endorsements-state[open] summary::after {
  transform: translateY(0.25em) scaleY(-1);
}

.tbrtheme-endorsement-image img {
  background-color: var(--light);
  scale: 1;
  transition: scale 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.tbrtheme-endorsement-image a:hover img, .tbrtheme-endorsement-image a:active img, .tbrtheme-endorsement-image a:focus-visible img {
  scale: 1.05;
}
.tbrtheme-endorsement-image a:hover, .tbrtheme-endorsement-image a:active, .tbrtheme-endorsement-image a:focus-visible {
  /* the properties you put in */
}

ul.tbrtheme-endorsements-list {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, 118px);
  column-gap: 2.75rem;
  row-gap: 1.5rem;
  list-style-type: none;
  padding-block-end: 1em;
  --sentencemaxwidth: calc(118px * 4 + 2.75rem * 3);
}
ul.tbrtheme-endorsements-list li {
  padding: 0;
}
ul.tbrtheme-endorsements-list ::marker {
  content: none;
}

.wp-block-group.coming-soon-page-holder {
  padding: 0 !important;
  grid-column: fullwidth;
  font-variant-numeric: proportional-nums;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: min(10vw, 5rem) 1fr min(10vw, 5rem);
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container > * {
  grid-column: 1/-1;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container > figure {
  grid-row: 1/-1;
  max-inline-size: none;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text {
  z-index: 1;
  grid-row: 2;
  grid-template-columns: 1fr;
  max-width: none;
  color: var(--light);
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-heading {
  color: var(--light);
  font-size: var(--remsize40-80);
  line-height: 1;
  margin-block-end: 0.25em;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text p {
  --sentencemaxwidth: null;
  font-size: var(--remsize16-25);
  margin-block: 0;
  text-wrap: balance;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .tbrtheme-button-frosted {
  margin-block-start: min(9vw, 4.25rem);
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  place-content: center;
  text-align: center;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column > * {
  margin-inline: auto;
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column > * {
    grid-column: content;
    /* the properties you put in */
  }
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column figure :is(picture, img) {
  width: inherit;
  height: inherit;
  max-inline-size: min(100%, 90vw);
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column figure img {
  object-fit: unset;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column figure::before, .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-column figure::after {
  content: none;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container figure {
  --sentencemaxwidth: null;
  position: relative;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container figure::after {
  content: " ";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(270deg, rgba(28, 26, 26, 0.8) 0.38%, rgba(28, 26, 26, 0.5) 42.2%, rgba(28, 26, 26, 0.2) 71.57%, rgba(28, 26, 26, 0) 99.95%);
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container :is(picture, img) {
  max-inline-size: none;
  width: 100%;
  height: 100%;
}
.wp-block-group.coming-soon-page-holder .wp-block-group__inner-container img {
  object-fit: cover;
  object-position: center bottom;
}
@media only screen and (max-width: 83.5rem) {
  .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container img {
    aspect-ratio: 1;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container img {
    aspect-ratio: 1510/775;
    /* the properties you put in */
  }
}

.coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns {
  display: flex;
  width: 100%;
  column-gap: 2.5rem;
  row-gap: 0.625rem;
  margin-block-start: min(9vw, 4.25rem);
}
.coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns .wp-block-column {
  display: flex;
  flex: 1;
}
.coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns .tbrtheme-button-frosted {
  margin-block: 0;
}
@media only screen and (max-width: 35.5rem) {
  .coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns {
    flex-direction: column;
  }
  .coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns .tbrtheme-button-frosted {
    margin-inline: auto;
  }
  .coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 35.5625rem) {
  .coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns .wp-block-column:first-child .tbrtheme-button-frosted {
    margin-inline-end: 0;
  }
  .coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns .wp-block-column:last-child .tbrtheme-button-frosted {
    margin-inline-start: 0;
  }
  .coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .wp-block-columns {
    /* the properties you put in */
  }
}
.coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text p {
  text-wrap: balance;
  --sentencemaxwidth: 30ch;
}
.coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container .wp-block-columns.coming-soon-page-holder-text .rutec-placeholder-page-logo img {
  width: clamp(198px, 19vw, 353px) !important;
  aspect-ratio: 353/181;
}
.coming-soon-rutec .wp-block-group.coming-soon-page-holder .wp-block-group__inner-container > figure::after {
  background-image: linear-gradient(to top, rgba(28, 26, 26, 0.46) 0.38%, rgba(28, 26, 26, 0.28) 42.2%, rgba(28, 26, 26, 0.11) 71.57%, rgba(28, 26, 26, 0) 99.95%);
}

.wp-block-reusable.wp-block-reusable-investors-heading {
  padding-block: min(10vw, 5rem) min(3.5vw, 1.75rem);
  border-bottom: 1px solid var(--txtalphalighter);
  display: block;
  grid-column: page;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-reusable.wp-block-reusable-investors-heading {
    grid-column: content;
    /* the properties you put in */
  }
}

.page-template-investors .entry-text > h1.wp-block-heading {
  font-size: var(--remsize20-25);
  padding-block-end: 0.75em;
  border-block-end: 1px solid var(--txtalphalighter);
  margin-block-end: 0.75em;
}
.page-template-investors .hentry {
  grid-column: page;
  display: grid;
  align-items: start;
  column-gap: 3.25rem;
  row-gap: 2rem;
  padding-block: min(6vw, 3rem) min(10vw, 5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .page-template-investors .hentry {
    grid-column: content;
    /* the properties you put in */
  }
}
.page-template-investors .entry {
  grid-area: entry-text;
}
.page-template-investors .entry .entry-text {
  display: block;
  container-type: inline-size;
}
@media only screen and (max-width: 52.75rem) {
  .page-template-investors .hentry {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, auto);
    grid-template-areas: "child-pages" "entry-text" "contact-details";
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.8125rem) {
  .page-template-investors .hentry {
    grid-template-columns: 19.25rem 1fr;
    grid-template-rows: repeat(2, auto) 1fr;
    grid-template-areas: "child-pages entry-text" "contact-details entry-text" ". entry-text";
    /* the properties you put in */
  }
}
.page-template-investors .tbrtheme-investors-menu {
  grid-area: child-pages;
}
@media only screen and (min-width: 845px) {
  .page-template-investors .tbrtheme-investors-menu {
    background-color: var(--alt-bg);
    padding: 2em 1.625em 2.5em 1.875em;
    border-radius: 1em;
    /* the properties you put in */
  }
}
.page-template-investors .tbrtheme-investors-menu-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.page-template-investors .tbrtheme-investors-menu-list li {
  border-block-end: 1px solid var(--txtalphalighter);
}
.page-template-investors .tbrtheme-investors-menu-list li a {
  text-decoration: none;
  display: block;
  padding: 0.5em 0;
}
.page-template-investors .tbrtheme-investors-menu-list li a:hover, .page-template-investors .tbrtheme-investors-menu-list li a:active, .page-template-investors .tbrtheme-investors-menu-list li a:focus-visible {
  font-weight: 600;
  /* the properties you put in */
}
.page-template-investors .tbrtheme-investors-menu-list li.current-menu-item a {
  font-weight: 600;
}
.page-template-investors .tbrtheme-investors-contact {
  grid-area: contact-details;
  border: var(--line-thickness, 1px) solid var(--color-primary-700, var(--test));
  border-radius: 1em;
  padding: 2em 2.25em 2.5em 1.875em;
}
.page-template-investors .tbrtheme-investors-contact .wp-block-reusable {
  all: unset;
}

.page-template-request-form .entry-text > h1.wp-block-heading {
  font-size: var(--remsize20-25);
  padding-block-end: 0.75em;
  border-block-end: 1px solid var(--txtalphalighter);
  margin-block-end: 0.75em;
}
.page-template-request-form .hentry {
  grid-column: page;
  display: grid;
  align-items: start;
  column-gap: 3.25rem;
  row-gap: 2rem;
  padding-block: min(6vw, 3rem) min(10vw, 5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .page-template-request-form .hentry {
    grid-column: content;
    /* the properties you put in */
  }
}
.page-template-request-form .entry {
  grid-area: entry-text;
}
.page-template-request-form .entry .entry-text {
  display: block;
  container-type: inline-size;
}
@media only screen and (max-width: 52.75rem) {
  .page-template-request-form .hentry {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, auto);
    grid-template-areas: "entry-text" "booking-cta";
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.8125rem) {
  .page-template-request-form .hentry {
    grid-template-columns: 19.25rem 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "booking-cta entry-text" ". entry-text";
    /* the properties you put in */
  }
}
.page-template-request-form .tbrtheme-request-forms-cta {
  grid-area: booking-cta;
  line-height: 1.25;
}
.page-template-request-form .tbrtheme-request-forms-cta .wp-block-heading {
  font-size: var(--remsize18);
}
.page-template-request-form .tbrtheme-request-forms-cta .wp-block-reusable {
  display: block;
  padding: 0;
}
.page-template-request-form .tbrtheme-request-forms-cta .wp-block-reusable.wp-block-reusable-743,
.page-template-request-form .tbrtheme-request-forms-cta .wp-block-reusable.wp-block-reusable-745 {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1rem;
}
.page-template-request-form .tbrtheme-request-forms-cta .wp-block-tbrtheme-cta-short-labelled {
  background-color: var(--alt-bg);
  padding: 2.25rem 3.125rem 2.5rem 2.25rem;
  border: var(--line-thickness, 1px) solid;
  border-radius: var(--remsize12);
}

:is(.tbrtheme-page-heading-icon, .tbrtheme-page-heading-button) {
  grid-template-columns: 1fr;
  row-gap: 1.5em;
}
:is(.tbrtheme-page-heading-icon, .tbrtheme-page-heading-button) p {
  --sentencemaxwidth: null;
}
.page-id-22 :is(.tbrtheme-page-heading-icon, .tbrtheme-page-heading-button) p {
  --sentencemaxwidth: 60rem;
}
:is(.tbrtheme-page-heading-icon, .tbrtheme-page-heading-button) figure {
  margin: 0;
}
:is(.tbrtheme-page-heading-icon, .tbrtheme-page-heading-button) img {
  aspect-ratio: 1;
  width: clamp(60px, 6vw, 90px);
  height: clamp(60px, 6vw, 90px);
}

.tbrtheme-page-heading-icon {
  --right-col-width: 90px;
}
@media only screen and (min-width: 35.5625rem) {
  .tbrtheme-page-heading-icon {
    grid-template-columns: 1fr var(--right-col-width);
  }
  .tbrtheme-page-heading-icon img {
    align-self: end;
  }
  .tbrtheme-page-heading-icon :is(figure, img) {
    align-self: end;
  }
  .tbrtheme-page-heading-icon {
    /* the properties you put in */
  }
}

.tbrtheme-page-heading-button {
  --right-col-width: 30ch;
  border-block-end: 1px solid var(--txtalphalighter);
  padding-block-end: min(5vw, 2rem) !important;
  margin-block-end: min(6vw, 3rem);
}
@media only screen and (max-width: 64rem) {
  .tbrtheme-page-heading-button:not(.tbrtheme-page-sub-heading-button) :is(.wp-block-column:nth-child(2), .wp-block-button-link) {
    display: none;
  }
  .tbrtheme-page-heading-button {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 64.0625rem) {
  .tbrtheme-page-heading-button {
    grid-template-columns: 1fr var(--right-col-width);
  }
  .tbrtheme-page-heading-button :is(.wp-block-button-link, .wp-block-file, .tbrtheme-download-button-simple) {
    align-self: end;
    margin-block-start: auto;
    display: flex;
  }
  .tbrtheme-page-heading-button {
    /* the properties you put in */
  }
}

.tbrtheme-page-sub-heading-button {
  border: 0;
  padding-block-end: min(6vw, 3rem) !important;
  margin-block-end: 0;
}
.tbrtheme-page-sub-heading-button p {
  --sentencemaxwidth: 46ch;
}

.wp-block-tbrtheme-cta-picture {
  display: grid;
  align-content: start;
  grid-template-columns: [fullwidth-start left-edge-start] minmax(min(var(--pagesidemargin), 5rem), 1fr) [page-start right-edge-start] minmax(min(5vw, 1rem), 1fr) [breakout-start] var(--breakoutwidth) [content-start] min(80vw, 82rem) [content-end] var(--breakoutwidth) [breakout-end] minmax(min(5vw, 1rem), 1fr) [page-end left-edge-end] minmax(min(var(--pagesidemargin), 5rem), 1fr) [fullwidth-end right-edge-end];
  justify-items: start;
  margin-block-start: 0.75rem;
}
@media only screen and (max-width: 52.125rem) {
  .wp-block-tbrtheme-cta-picture {
    grid-template-rows: repeat(2, auto);
    row-gap: 3rem;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text {
    grid-row: 1;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted {
    color: var(--txt);
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a {
    border-color: var(--txt);
    padding-inline-end: 0;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a::before {
    content: none;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a::after {
    margin-block-start: 2.25em;
    content: url("../../icons/theme/point-up-right-dark.svg");
  }
  .wp-block-tbrtheme-cta-picture {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 52.125rem) and (prefers-color-scheme: dark) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a::after {
    content: url("../../icons/theme/point-up-right.svg");
  }
}
@media only screen and (max-width: 52.125rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a .wp-block-heading {
    color: var(--txt);
  }
}
@media only screen and (min-width: 52.1875rem) {
  .wp-block-tbrtheme-cta-picture {
    grid-template-rows: min(10vw, 5rem) 1fr min(10vw, 5rem);
    align-items: center;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image {
  grid-column: fullwidth;
  width: 100%;
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image :is(picture, img) {
  max-inline-size: none;
  width: 100%;
  height: 100%;
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image img {
  object-fit: cover;
}
@media only screen and (min-width: 52.1875rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image {
    grid-row: 1/-1;
    position: relative;
    height: 100%;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image::after {
    content: " ";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(270deg, rgba(28, 26, 26, 0.8) 0.38%, rgba(28, 26, 26, 0.5) 42.2%, rgba(28, 26, 26, 0.2) 71.57%, rgba(28, 26, 26, 0) 99.95%);
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image img {
    aspect-ratio: 393/283;
    object-position: 100% center;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-image img {
    aspect-ratio: 1515/550;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text {
  grid-column: page;
}
@media only screen and (min-width: 52.1875rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text {
    grid-row: 2;
    transform: translateY(-0.5em);
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a {
  display: block;
  position: relative;
}
@media only screen and (min-width: 52.1875rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a {
    padding-inline: 2.5rem 5.125rem;
    padding-block: 3rem 3.25rem;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a::after {
    margin-block-start: 3.125em;
    content: url("../../icons/theme/point-up-right.svg");
    clip-path: inset(0 0 100% 0);
    transition: clip-path 200ms linear;
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:hover::after, .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:active::after, .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:focus-visible::after {
    clip-path: inset(0 0 0 0);
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:hover, .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:active, .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:focus-visible {
    /* the properties you put in */
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.1875rem) and (any-hover: hover) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a :is(h2, div) {
    transition: transform 200ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:hover :is(h2, div), .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:active :is(h2, div), .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:focus-visible :is(h2, div) {
    transform: translateY(-0.125em);
  }
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:hover, .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:active, .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a:focus-visible {
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text.tbrtheme-button-frosted a::after {
  position: absolute;
  inset: 0 1em auto auto;
  align-items: start;
  transform: none;
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text .wp-block-heading {
  font-size: var(--remsize18-25);
  line-height: 1.16;
  margin-block-end: 0.7em;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-text {
    grid-column: content;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-content {
  line-height: 1.25;
}
.wp-block-tbrtheme-cta-picture .tbrtheme-cta-picture-content p {
  text-wrap: balance;
  --sentencemaxwidth: 35ch;
  margin: 0;
}

.tbrtheme-download-button {
  display: grid;
  align-items: center;
  justify-items: start;
  column-gap: 3rem;
  row-gap: 1em;
  padding: 1.25em 1.5em;
  background-color: var(--alt-bg);
  border: var(--line-thickness, 1px) solid;
  border-radius: 0.625rem;
  margin-block-end: 1em;
}
@container (min-width : 36rem) {
  .tbrtheme-download-button {
    grid-template-columns: minmax(max-content, 1fr) auto;
  }
}
.tbrtheme-download-button .tbrtheme-download-title {
  margin: 0;
}
.tbrtheme-download-button a.button.download-link {
  --btn-bg: var(--alt-bg);
}
.tbrtheme-download-button a.button.download-link:hover, .tbrtheme-download-button a.button.download-link:active, .tbrtheme-download-button a.button.download-link:focus-visible {
  --btn-fg: var(--shade-light-beige);
  /* the properties you put in */
}

.wp-block-tbrtheme-project-cat {
  grid-column: page;
  border-radius: var(--remsize15);
  padding: min(5vw, 3.25rem) min(5vw, 3.25rem) min(6vw, 3.75rem) min(5vw, 5rem);
  background-color: var(--alt-bg);
  margin-block-start: 2.25rem;
}
#page-banner + .wp-block-tbrtheme-project-cat {
  margin-block-start: min(8vw, 3.625rem);
}
.wp-block-tbrtheme-project-cat:last-child {
  --margin-block-end: min(10vw, 5rem);
}
.wp-block-tbrtheme-project-cat:last-child :last-child {
  --margin-block-end: 0;
}
.wp-block-tbrtheme-project-cat .tbrtheme-project-cat-title {
  margin-block-end: 0.75rem;
}
.wp-block-tbrtheme-project-cat .tbrtheme-project-cat-content p {
  --sentencemaxwidth: 46ch;
  margin-block-end: 0;
}
.wp-block-tbrtheme-project-cat .tbrtheme-cta-link {
  margin-block-start: min(5vw, 2.5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-project-cat {
    grid-column: content;
    /* the properties you put in */
  }
}

.gform_wrapper.gravity-theme #gform_5 .ginput_container_date input.gform-datepicker {
  width: 100%;
}

.page-template-request-form .gform_confirmation_wrapper {
  margin-block-start: 2em !important;
}
.page-template-request-form .gform_confirmation_message {
  background-color: var(--alt-bg-light);
  padding-block: min(8vw, 8rem);
  padding-inline: min(6vw, 3rem);
}
.page-template-request-form .gform_confirmation_message > * {
  margin-inline: auto;
}
.page-template-request-form .gform_confirmation_message p {
  --sentencemaxwidth: 27ch;
}

.page-template-default .gform_confirmation_wrapper {
  margin: 0;
}
.page-template-default .gform_confirmation_message {
  background-color: var(--alt-bg);
  padding-block: min(6vw, 4rem) min(10vw, 5rem);
  padding-inline: min(6vw, 3rem);
  border-radius: 0.625rem;
}
.page-template-default .gform_confirmation_message > * {
  margin-inline: auto;
}
.page-template-default .gform_confirmation_message p {
  --sentencemaxwidth: 27ch;
}

img.gform_ajax_spinner {
  width: 1.25rem;
  height: 1.25rem;
}

.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper {
  --_arrow-width: 36px;
  --_img-width: min(686px, 90vw);
  display: grid;
  grid-template-columns: minmax(var(--_arrow-width), 1fr) minmax(686px, min(100%, var(--_img-width))) minmax(var(--_arrow-width), 1fr);
  grid-template-rows: 1fr 1em 1fr min(5vw, 2.5rem) auto;
  grid-template-areas: ". pic ." ". pic ." ". pic ." ". . ." ". slides .";
  max-inline-size: min(100%, var(--_img-width) + var(--_arrow-width) * 2);
  transform: translateX(calc(var(--_arrow-width) * -0.99));
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .slideshow-image-view,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .slideshow-image-view {
  grid-area: pic;
  max-inline-size: var(--_img-width);
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .slideshow-image-view button,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .slideshow-image-view button {
  padding: 0;
  --btn-bdr-size: 0;
  border-radius: 0;
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .slideshow-image-view button::before,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .slideshow-image-view button::before {
  content: none;
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper div[data-glide-el=controls],
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper div[data-glide-el=controls] {
  grid-row: 2;
  grid-column: 1/-1;
  display: flex;
  justify-content: space-between;
  max-inline-size: min(100%, min(var(--_img-width) + var(--_arrow-width) * 2, 101vw));
}
@media only screen and (max-width: 35.5rem) {
  .wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper div[data-glide-el=controls],
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper div[data-glide-el=controls] {
    inline-size: 102vw;
    transform: translateX(1em);
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper div[data-glide-el=controls] .glide__arrow,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper div[data-glide-el=controls] .glide__arrow {
  border: 0;
  padding: 0.5em;
  background: none;
  appearance: none;
  cursor: pointer;
  width: 2.5em;
  height: 2.5em;
  color: var(--txt);
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper div[data-glide-el=controls] .glide__arrow svg,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper div[data-glide-el=controls] .glide__arrow svg {
  --svg-inline: 1.5em;
  --svg-block: 1.5em;
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .tbrtheme-slideshow,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow {
  grid-area: slides;
  max-inline-size: var(--_img-width);
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__track,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__track {
  position: relative;
  overflow: hidden;
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__slides,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides {
  padding: 0;
  margin: 0;
  list-style-type: none;
  display: flex;
  block-size: 85px;
  --sentencemaxwidth: null;
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__slide,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slide {
  margin-block-end: 0;
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__slide img,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slide img {
  aspect-ratio: 128/85;
  cursor: pointer;
  filter: brightness(100%);
  transition: filter 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__slide img:hover, .wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__slide img:active, .wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper .glide__slide img:focus-visible,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slide img:hover,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slide img:active,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slide img:focus-visible {
  filter: brightness(120%);
  /* the properties you put in */
}
.wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper img,
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper img {
  border-radius: 0;
  inline-size: 100%;
  max-inline-size: var(--_img-width);
  aspect-ratio: 686/410;
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-slideshow .tbrtheme-slideshow-wrapper,
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper {
    --_img-width: min(686px, 43vw);
    /* the properties you put in */
  }
}

.tbrtheme-slideshow-dialogue {
  --_inset: 3vw;
  border: none;
  border-radius: var(--remsize12);
  background-color: var(--bg);
  inset: 50vh var(--_inset) auto;
  transform: translateY(-50%);
  margin-block-end: 0;
  position: fixed;
  max-block-size: 94vh;
  max-block-size: 94svh;
  max-inline-size: 94vw;
  padding: 4rem min(6vw, 3rem) min(6vw, 4rem);
}
.tbrtheme-slideshow-dialogue button.tbrtheme-dialogue-close {
  --ffbuttonpadding: 0.75em min(2vw, 2em);
  --btn-bdr: 0;
  position: absolute;
  inset: 0 0 auto auto;
  min-inline-size: unset;
  z-index: 2;
  outline-width: 0;
}
.tbrtheme-slideshow-dialogue button.tbrtheme-dialogue-close svg {
  --svg-inline: min(6vw, 2.25rem);
  --svg-block: min(6vw, 2.25rem);
  color: var(--txt);
}
.tbrtheme-slideshow-dialogue button.tbrtheme-dialogue-close::before {
  content: none;
}
.tbrtheme-slideshow-dialogue button.tbrtheme-dialogue-close:hover, .tbrtheme-slideshow-dialogue button.tbrtheme-dialogue-close:active, .tbrtheme-slideshow-dialogue button.tbrtheme-dialogue-close:focus-visible {
  --btn-bg: var(--bg);
  /* the properties you put in */
}
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper {
  --_img-width: min(min(900px, 90vh), 80vw);
  grid-template-columns: minmax(var(--_arrow-width), 1fr) minmax(var(--_img-width), 1fr) minmax(var(--_arrow-width), 1fr);
  margin-inline: auto;
}
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper div[data-glide-el=controls] {
  inline-size: 100vw;
  transform: none;
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper div[data-glide-el=controls] {
    display: none;
    /* the properties you put in */
  }
}
.tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides {
  block-size: auto;
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides {
    transform: none !important;
    justify-content: center !important;
    width: 80vw !important;
  }
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides .glide__slide {
    flex: 0 0 13px;
    width: 13px;
    background-color: var(--shade-paler-grey);
    border-width: 0;
    aspect-ratio: 1;
    border-radius: 50%;
    transition: background-color 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
    cursor: pointer;
  }
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides .glide__slide--clone {
    flex: 0 0 0 !important;
    margin: 0 !important;
    width: 0 !important;
  }
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides .glide__slide img {
    display: none;
  }
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides .glide__slide--active {
    background-color: var(--txt);
  }
  .tbrtheme-slideshow-dialogue .tbrtheme-slideshow-wrapper .glide__slides {
    /* the properties you put in */
  }
}

:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.5em;
  padding-block: min(10vw, 5rem) min(3.5vw, 1.75rem);
  border-bottom: 1px solid var(--txtalphalighter);
  grid-column: page;
}
@media only screen and (min-width: 35.5625rem) {
  :is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) {
    --right-col-width: 30ch;
    grid-template-columns: 1fr var(--right-col-width);
    column-gap: min(5vw, 1.5rem);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  :is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) {
    grid-column: content;
    /* the properties you put in */
  }
}
:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) {
  align-self: end;
  display: grid;
  grid-template-columns: 0.75em 1.5rem 1fr;
}
:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) input[type=search] {
  --ffbg: var(--bg);
  border: 1px solid;
  border-radius: 100vw;
  grid-row: 1;
  grid-column: 1/-1;
  padding-inline-start: 3rem;
}
:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) button.search-button {
  --btn-bdr-size: 0;
  padding: 0.75em;
  min-inline-size: unset;
  grid-row: 1;
  grid-column: 2;
}
:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) button.search-button::before {
  content: none;
}
:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) button.search-button svg {
  --svg-inline: 1.5rem;
  --svg-block: 1.5rem;
}
:is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) button.search-button:hover, :is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) button.search-button:active, :is(.tbrtheme-products-heading, .tbrtheme-gallery-heading) :is(.search-form.tbrtheme-search-products, .search-form.tbrtheme-search-gallery) button.search-button:focus-visible {
  --btn-fg: var(--txt);
  /* the properties you put in */
}

:is(.wp-block-reusable.wp-block-reusable-products-list-header,
.wp-block-reusable.wp-block-reusable-news-heading,
.tbrtheme-product-gallery-heading) {
  grid-column: 1;
  display: block;
  padding: 0;
}

:is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
  padding-block: min(6vw, 3rem) min(10vw, 5rem);
  grid-column: page;
  display: grid;
}
@media only screen and (min-width: 83.5625rem) {
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    grid-column: content;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    grid-template-columns: 1fr 2fr;
    column-gap: 0.625rem;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) > * {
    grid-column: 1/-1;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) {
    grid-column: 1;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) {
    grid-column: 2;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    grid-template-rows: repeat(2, auto) 1fr auto;
    grid-template-areas: "filter sort" "filter products" ". products" ". pagenav";
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper) {
    grid-area: filter;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) {
    grid-area: sort;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) .entry-text {
    grid-area: products;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) .pagination-block {
    grid-area: pagenav;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) and (max-width: 83.5rem) {
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    grid-template-columns: min(18rem, 25%) 1fr;
    column-gap: min(10vw, 5rem);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 5; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 18;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper).column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper).column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) {
    grid-column: span var(--column-one);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) .entry-text {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) .pagination-block {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  :is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) {
    /* the properties you put in */
  }
}
:is(.tbrtheme-products-wrapper, .tbrtheme-posts-wrapper, .tbrtheme-gallery-wrapper) .entry-text {
  display: block;
  padding: 0;
}

:is(.tbrtheme-products-wrapper, .tbrtheme-gallery-wrapper) .posts-list {
  grid-template-columns: repeat(3, 1fr);
}
:is(.tbrtheme-products-wrapper, .tbrtheme-gallery-wrapper) .posts-list p:only-child {
  margin-block-start: min(6vw, 3rem);
  padding: min(6vw, 3rem);
  background-color: var(--alt-bg);
  border-radius: var(--remsize12);
  text-align: center;
  width: 100%;
  grid-column: 1/-1;
}
@media only screen and (max-width: 35.5rem) {
  :is(.tbrtheme-products-wrapper, .tbrtheme-gallery-wrapper) .posts-list {
    grid-template-columns: repeat(2, 1fr);
    /* the properties you put in */
  }
}
:is(.tbrtheme-products-wrapper, .tbrtheme-gallery-wrapper) .posts-list p.tbrtheme-product-format {
  margin: 0;
}

:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) h2 {
  font-size: var(--remsize20);
  font-weight: 500;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-close, button.tbrtheme-post-filters-close, button.tbrtheme-gallery-filters-close) {
  --ffbuttonpadding: 0.75em;
  --btn-fg: var(--txt, var(--test)) !important;
  --btn-bg: var(--alt-bg, var(--test)) !important;
  --btn-bdr: var(--alt-bg, var(--test)) !important;
  transform: translateY(calc(var(--ffbuttonpadding) * -1));
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-close, button.tbrtheme-post-filters-close, button.tbrtheme-gallery-filters-close)::before {
  content: none;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) {
  border-top: 1px solid var(--txtalphalighter);
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter):last-of-type {
  border-bottom: 1px solid var(--txtalphalighter);
  margin-block-end: 2rem;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary {
  line-height: 1.2;
  padding-block: 0.5em;
  font-size: var(--remsize18-20);
  font-weight: 500;
  position: relative;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary h3 {
  margin: 0;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary::after {
  content: url("../../icons/theme/angle-down-summary-marker.svg");
  position: absolute;
  inset: 0.125em 0 0 auto;
  transform: translateY(0);
  transition: transform 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  scale: 0.6;
}
@media (prefers-color-scheme: dark) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary::after {
    content: url("../../icons/theme/angle-down-summary-marker-dm.svg");
  }
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary:hover::after, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary:active::after, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary:focus-visible::after {
  transform: translateY(0.25em);
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary:hover, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary:active, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) summary:focus-visible {
  /* the properties you put in */
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter)[open] summary::after {
  transform: translateY(0.25em) scaleY(-1);
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) h3 {
  font-size: var(--bodytextsize);
  font-weight: 600;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) li {
  padding-block: 0.5em;
  margin: 0;
  border-top: 1px solid var(--txtalphalighter);
  display: flex;
  align-items: center;
  gap: 0.75em;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) :is(button.tbrtheme-product-filter-clear, button.tbrtheme-posts-filter-clear, button.tbrtheme-gallery-filter-clear) {
  --btn-bdr-size: 0;
  padding: 0;
  min-inline-size: unset;
  font-size: var(--label);
  font-weight: var(--bodytextweight);
  line-height: 1;
  display: grid;
  grid-template-columns: 1.5em 1fr;
  justify-items: start;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) :is(button.tbrtheme-product-filter-clear, button.tbrtheme-posts-filter-clear, button.tbrtheme-gallery-filter-clear) span {
  font-size: 1.25em;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) :is(button.tbrtheme-product-filter-clear, button.tbrtheme-posts-filter-clear, button.tbrtheme-gallery-filter-clear)::before {
  content: none;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) :is(button.tbrtheme-product-filter-clear, button.tbrtheme-posts-filter-clear, button.tbrtheme-gallery-filter-clear):hover, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) :is(button.tbrtheme-product-filter-clear, button.tbrtheme-posts-filter-clear, button.tbrtheme-gallery-filter-clear):active, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) :is(details.tbrtheme-product-filter, details.tbrtheme-posts-filter, details.tbrtheme-gallery-filter) :is(ul.tbrtheme-product-filter-values, ul.tbrtheme-posts-filter-values, ul.tbrtheme-gallery-filter-values) :is(button.tbrtheme-product-filter-clear, button.tbrtheme-posts-filter-clear, button.tbrtheme-gallery-filter-clear):focus-visible {
  --btn-fg: currentcolor;
  --btn-bg: transparent;
  /* the properties you put in */
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) details.tbrtheme-gallery-filter:first-of-type {
  border-block-start: 0;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) details.tbrtheme-gallery-filter:first-of-type summary {
  padding-block: 0 1em;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) details.tbrtheme-gallery-filter summary {
  pointer-events: none;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) details.tbrtheme-gallery-filter summary::after {
  content: none;
}
:is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.tbrtheme-filter-products, .tbrtheme-filter-posts, .tbrtheme-filter-gallery) details.tbrtheme-gallery-filter h3 {
  font-size: var(--remsize20);
  font-weight: 500;
}
@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger) {
    gap: 0.75em;
    --btn-fg: var(--txt, var(--test));
    --btn-bg: transparent;
    --btn-bdr: var(--txt, var(--test));
    --btn-fg: var(--txt, var(--test)) !important;
    --btn-bg: var(--alt-bg, var(--test)) !important;
    --btn-bdr: var(--alt-bg, var(--test)) !important;
    --ffbuttonpadding: 0.75em min(5vw, 2.75em);
    --btn-fg: currentcolor;
    --btn-bg: transparent;
    --btn-bdr: currentcolor;
    /* end override wordpress style */
    min-inline-size: 3rem;
    max-inline-size: min(100%, 90vw);
    border-radius: 0.5625rem;
    color: var(--btn-fg, var(--test)) !important;
    background-color: var(--btn-bg, var(--test)) !important;
    border: var(--btn-bdr-size, 1px) solid var(--btn-bdr, transparent) !important;
    /* !important to override gravity forms opinionated bullshit */
    word-break: normal;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    border-radius: var(--buttonborderradius, 100vw);
    position: relative;
    /* cater for ::before ::after position absolute */
    isolation: isolate;
    /* cater for z-index -1 of ::before ::after */
    overflow: hidden;
    font-family: Inter, var(--sans-serif);
    font-weight: var(--buttontextweight);
    font-size: var(--buttontextsize);
    line-height: 1.2;
    text-align: center;
    justify-content: center;
    text-transform: capitalize;
    white-space: normal;
    cursor: pointer;
    opacity: 1;
    padding: var(--ffbuttonpadding);
    /* fix button text colours in iOS */
    -webkit-text-fill-color: currentcolor;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    position: relative;
    isolation: isolate;
    -webkit-tap-highlight-color: var(--tap-highlight-color);
    outline: 0.125em solid transparent;
    outline-offset: 0.125em;
    transition: outline-color ease-in 150ms;
    /* for browsers that don't seem to support outline: */
    /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):focus-visible {
    outline-color: var(--focus-outline, currentColor);
    transform: rotate(0);
    /* Prevent outline overlapping, by creating a new stacking context with the transform property you can fix the outline overlapping - rotate(0) is just an example
    	https://equinusocio.dev/blog/hot-tips-css/#prevent-outline-overlapping */
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):focus {
    box-shadow: none;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger)[href^=mailto] {
    text-transform: none;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) and (prefers-reduced-motion: no-preference) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger) {
    --button-transition: 300ms;
    will-change: transform;
  }
}
@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):disabled {
    opacity: 0.5 !important;
    cursor: not-allowed;
    filter: grayscale(100%);
    pointer-events: none;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger)::before {
    content: " ";
    position: absolute;
    inset: 0;
    width: 0;
    background-color: var(--color-cta, var(--test));
    border-radius: inherit;
    transition: var(--button-transition, 200ms) width cubic-bezier(0.55, 0.09, 0.68, 0.53);
    z-index: -1;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):hover::before, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):active::before, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):focus-visible::before {
    width: 100%;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):hover, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):active, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):focus-visible {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) and (any-hover: none) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger)::before {
    content: none;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):hover, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):active, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):focus-visible {
    --btn-bg: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  .menu-item.current-menu-item :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger) {
    --btn-bg: var(--color-cta, var(--test));
  }
}
@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):hover, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):active, :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger):focus-visible {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    /* the properties you put in */
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(button.tbrtheme-product-filters-trigger, button.tbrtheme-post-filters-trigger)::before {
    content: none;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) button.tbrtheme-gallery-filters-trigger {
    --btn-fg: var(--light);
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    inline-size: min(24ch, 100%);
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) button.tbrtheme-gallery-filters-trigger::before {
    content: none;
  }
}
@media only screen and (max-width: 35.5rem) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) button.tbrtheme-gallery-filters-trigger {
    inline-size: 100%;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) :is(.products-filter-mobile-only, .posts-filter-mobile-only, .gallery-filter-mobile-only) {
    display: none;
  }
  :is(.tbrtheme-product-sidebar-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-gallery-sidebar-wrapper) {
    /* the properties you put in */
  }
}

@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) {
    position: fixed;
    inset: var(--header-wrapper-height) 0 0 0;
    inline-size: var(--navwidth);
    max-inline-size: 100vw;
    max-block-size: 100vh;
    max-block-size: 100svh;
    z-index: 31;
    background-color: var(--alt-bg);
    padding: 2.5rem 2.25rem 6rem 1.625rem;
    transform: translateX(-100vw);
    transition: transform var(--transition-timing) linear var(--transition-timing);
    overscroll-behavior-block: contain;
    overflow-y: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas: "title close" "form form";
    align-content: start;
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) h2 {
    grid-area: title;
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) :is(button#tbrtheme-product-filters-close, button#tbrtheme-post-filters-close, button#tbrtheme-gallery-filters-close) {
    grid-area: close;
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) .search-form {
    grid-area: form;
  }
}
@media only screen and (max-width: 56rem) and (prefers-reduced-motion: reduce) {
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) {
    transition: none;
  }
}
@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only):focus-within {
    transform: translateX(0);
    transition: transform var(--transition-timing) linear;
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only).is-visible {
    transform: translateX(0);
    transition: transform var(--transition-timing) linear;
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) :is(.tbrtheme-product-filter-buttons-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-posts-filter-buttons-wrapper) {
    display: flex;
    gap: 1rem;
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) :is(.tbrtheme-product-filter-buttons-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-posts-filter-buttons-wrapper) button {
    --ffbuttonpadding: 0.75em min(5vw, 2.75em);
  }
  :is(.tbrtheme-filter-products-wrapper.products-filter-desktop-only,
  .tbrtheme-filter-posts-wrapper.posts-filter-desktop-only,
  .tbrtheme-filter-gallery-wrapper.gallery-filter-desktop-only) :is(.tbrtheme-product-filter-buttons-wrapper, .tbrtheme-posts-sidebar-wrapper, .tbrtheme-posts-filter-buttons-wrapper) button[type=submit] {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
}
@media only screen and (max-width: 56rem) {
  /* the properties you put in */
}
:is(.tbrtheme-products-categories, .tbrtheme-posts-categories) h2 {
  font-size: var(--remsize20);
  font-weight: 500;
}
:is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, .tbrtheme-posts-cat-links) {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 0.5rem;
}
:is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, .tbrtheme-posts-cat-links) li.menu-item {
  margin: 0;
}
:is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, .tbrtheme-posts-cat-links) li.menu-item a {
  font-family: "neue-haas-grotesk-text", var(--sans-serif);
}
@media only screen and (min-width: 56.0625rem) {
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, .tbrtheme-posts-cat-links) li.menu-item.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, .tbrtheme-posts-cat-links) li.menu-item.current-menu-item a::before {
    width: 100%;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, .tbrtheme-posts-cat-links) li.menu-item.current-menu-item a {
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) {
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) h2:first-child {
    display: none;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 3rem;
    align-items: center;
    gap: 0;
    border: none;
    height: 3rem;
    overflow-y: clip;
    padding: 0;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li {
    order: 1;
    margin: 0;
    border-block-end: none;
    block-size: 3rem;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li a {
    padding: 0.5em 1em;
    font-weight: 500;
    border-radius: 0;
    display: flex;
    align-items: center;
    height: 3rem;
    --btn-fg: var(--dark, var(--test));
    --btn-bg: var(--alt-bg-light, var(--test));
    --btn-bdr: var(--alt-bg-light, var(--test));
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li a::before {
    content: none;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li a:hover, :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li a:active, :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li a:focus-visible {
    --btn-bg: var(--alt-bg, var(--test));
    --btn-bdr: var(--alt-bg, var(--test));
    font-weight: var(--bodytextweight);
    /* the properties you put in */
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li.current-menu-item {
    cursor: pointer;
    order: 0;
    border-radius: 1em 1em 0 0;
    display: grid;
    grid-template-columns: 1fr 3em;
    align-items: center;
    text-align: center;
    position: relative;
    border: none;
    margin: 0;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
    grid-column: 1/span 2;
    grid-row: 1;
    pointer-events: none;
    inline-size: 100%;
    border-radius: 100vw;
    text-align: center;
    font-weight: 500;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links) li.current-menu-item::after {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    z-index: 2;
    translate: 0 0.125em;
    content: url("../../icons/theme/angle-down-white.svg");
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible {
    height: initial;
    border-radius: 0 0 var(--remsize28) var(--remsize28);
    overflow-x: hidden;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible a:hover, :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible a:active, :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible li.current-menu-item a {
    --btn-fg: var(--light, var(--test));
    --btn-bg: var(--color-cta, var(--test));
    --btn-bdr: var(--color-cta, var(--test));
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links).is-visible:has(li.current-menu-item:last-child) li:nth-last-child(2) {
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within {
    height: initial;
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within a {
    background-color: var(--alt-bg-light, silver);
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within a:hover, :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within a:active, :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within a:focus-visible {
    background-color: var(--shade-light-beige, SeaShell);
    /* the properties you put in */
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within li.current-menu-item {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) :is(ul.tbrtheme-product-cat-links, ul.tbrtheme-posts-cat-links):focus-within:has(li.current-menu-item:last-child) li:nth-last-child(2) {
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  :is(.tbrtheme-products-categories, .tbrtheme-posts-categories) {
    /* the properties you put in */
  }
}

@media only screen and (max-width: 56rem) {
  .blog ul.tbrtheme-posts-cat-links:not(:has(li.current-menu-item)) li:first-of-type a {
    --btn-fg: var(--dark, var(--test));
    --btn-bg: var(--alt-bg, var(--test));
    --btn-bdr: var(--alt-bg, var(--test));
    pointer-events: none;
    inline-size: 100%;
    border-radius: 100vw;
    text-align: center;
    font-weight: 500;
  }
  .blog ul.tbrtheme-posts-cat-links:not(:has(li.current-menu-item)).is-visible li:first-of-type {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  .blog ul.tbrtheme-posts-cat-links:not(:has(li.current-menu-item)):focus-within li:first-of-type {
    background-color: var(--alt-bg-light, silver);
    border-block-end: 0.5em solid var(--alt-bg-light, silver);
  }
  /* the properties you put in */
}
.single-tbrtheme_product .neutrog-product-columns {
  --column-one: 36;
  --column-spacing: 2;
}
@media only screen and (max-width: 73rem) {
  .single-tbrtheme_product .neutrog-product-columns.tbrtheme-page-columns {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(40ch, 90vw), 1fr));
    row-gap: min(6vw, 3rem);
    /* the properties you put in */
  }
}
.single-tbrtheme_product .tbrtheme-product-gallery {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1em;
  position: relative;
  inline-size: 100%;
  block-size: 100%;
  max-inline-size: min(100%, 90vw);
}
.single-tbrtheme_product .tbrtheme-product-gallery-view picture {
  display: block;
  width: 100%;
  height: 100%;
}
.single-tbrtheme_product .tbrtheme-product-gallery-view img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  aspect-ratio: inherit;
  border-radius: 0;
}
@media only screen and (max-width: 56rem) {
  .single-tbrtheme_product .tbrtheme-product-gallery-view img {
    aspect-ratio: 1;
    /* the properties you put in */
  }
}
.single-tbrtheme_product .tbrtheme-product-gallery ul.tbrtheme-product-gallery-thumbs {
  list-style-type: none;
  padding: 0;
  margin: 0;
  inline-size: 5.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.single-tbrtheme_product .tbrtheme-product-gallery ul.tbrtheme-product-gallery-thumbs li {
  margin: 0;
}
.single-tbrtheme_product .tbrtheme-product-gallery ul.tbrtheme-product-gallery-thumbs li.current-item button.tbrtheme-product-gallery-thumb {
  outline-color: var(--color-cta);
}
.single-tbrtheme_product .tbrtheme-product-gallery ul.tbrtheme-product-gallery-thumbs img {
  border-radius: 0;
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb {
  padding: 0;
  --btn-bdr-size: 0;
  min-inline-size: unset;
  border-radius: 0;
  outline: 1px solid var(--txtalphalighter);
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb::before {
  content: none;
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb:hover, .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb:active, .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb:focus-visible {
  outline-color: var(--color-cta);
  /* the properties you put in */
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom {
  padding: 0;
  --btn-bdr-size: 0;
  min-inline-size: unset;
  border-radius: 0;
  position: absolute;
  inset: auto 0 0 auto;
}
@media only screen and (max-width: 73rem) {
  .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom {
    inset: min(6vw, 3.125rem) 0 auto auto;
    /* the properties you put in */
  }
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom svg {
  --svg-inline: min(6vw, 2.25rem);
  --svg-block: min(6vw, 2.25rem);
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom::before {
  content: none;
}
.single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom:hover, .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom:active, .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom:focus-visible {
  --btn-fg: currentcolor;
  /* the properties you put in */
}
@media only screen and (max-width: 83.5rem) {
  .single-tbrtheme_product .tbrtheme-product-gallery {
    max-inline-size: min(100%, 90vw);
    /* the properties you put in */
  }
}
@media only screen and (max-width: 56rem) {
  .single-tbrtheme_product .tbrtheme-product-gallery {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1.625rem auto;
    align-self: center;
  }
  .single-tbrtheme_product .tbrtheme-product-gallery ul.tbrtheme-product-gallery-thumbs {
    grid-row: 3;
    grid-column: 1;
    flex-direction: row;
    justify-content: center;
    gap: 0.75rem;
    inline-size: unset;
  }
  .single-tbrtheme_product .tbrtheme-product-gallery .tbrtheme-product-gallery-view {
    grid-row: 1;
    grid-column: 1;
    display: block;
    height: 100%;
  }
  .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-button-zoom {
    grid-row: 1/span 2;
    grid-column: 1/-1;
    position: static;
    opacity: 0;
  }
  .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb {
    width: 13px;
    --btn-bg: var(--shade-paler-grey);
    outline-width: 0;
    aspect-ratio: 1;
    border-radius: 50%;
    transition: background-color 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .single-tbrtheme_product .tbrtheme-product-gallery button.tbrtheme-product-gallery-thumb img {
    display: none;
  }
  .single-tbrtheme_product .tbrtheme-product-gallery li.current-item button.tbrtheme-product-gallery-thumb {
    --btn-bg: var(--txt);
  }
  .single-tbrtheme_product .tbrtheme-product-gallery {
    /* the properties you put in */
  }
}
.single-tbrtheme_product .tbrtheme-product-meta {
  padding: min(6vw, 3.125rem);
  padding-inline-end: min(5vw, 2.5rem);
  border-radius: var(--remsize12);
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
}
@media only screen and (min-width: 73.0625rem) {
  .single-tbrtheme_product .tbrtheme-product-meta {
    aspect-ratio: 705/470;
    /* the properties you put in */
  }
}
.single-tbrtheme_product .tbrtheme-product-meta h1 {
  font-size: var(--remsize20-25);
  font-weight: 500;
  line-height: 1.36;
  margin-block-end: 0.25em;
}
.single-tbrtheme_product .tbrtheme-product-meta h2 {
  font-size: var(--remsize16-18);
  font-weight: 600;
  line-height: 1.4;
}
.single-tbrtheme_product .tbrtheme-product-description {
  margin-block-end: min(6vw, 3rem);
}
.single-tbrtheme_product .tbrtheme-product-meta-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(20ch, 1fr));
  column-gap: min(10vw, 5rem);
  row-gap: min(6vw, 3rem);
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul li {
  margin: 0;
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul.tbrtheme-product-sizes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  align-items: flex-end;
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul a.tbrtheme-product-size {
  color: var(--shade-paler-grey);
  transition: color 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul a.tbrtheme-product-size svg {
  fill: var(--dark);
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul a.tbrtheme-product-size:hover, .single-tbrtheme_product .tbrtheme-product-meta-row ul a.tbrtheme-product-size:active, .single-tbrtheme_product .tbrtheme-product-meta-row ul a.tbrtheme-product-size:focus-visible {
  color: var(--shade-lightly-grey);
  /* the properties you put in */
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul li.current-item a.tbrtheme-product-size {
  pointer-events: none;
  color: var(--color-cta);
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul li.current-item a.tbrtheme-product-size svg {
  fill: var(--light);
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul li.tbrtheme-no-images a.tbrtheme-product-size {
  pointer-events: none;
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul.tbrtheme-product-formats {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  inline-size: max-content;
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul.tbrtheme-product-formats :is(button, .tbrtheme-cta-link) {
  inline-size: 100%;
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul.tbrtheme-product-formats .current-item {
  --btn-fg: var(--light, var(--test));
  --btn-bg: var(--color-cta, var(--test));
  --btn-bdr: var(--color-cta, var(--test));
}
.single-tbrtheme_product .tbrtheme-product-meta-row ul.tbrtheme-product-formats .current-item::before {
  width: 100%;
}
.single-tbrtheme_product .tbrtheme-product-meta-row :is(.tbrtheme-cta-link.tbrtheme-product-shop-sample,
.tbrtheme-cta-link.tbrtheme-product-enquire) {
  inline-size: max-content;
}
@media only screen and (min-width: 585px) {
  .single-tbrtheme_product .tbrtheme-product-meta-row :is(.tbrtheme-cta-link.tbrtheme-product-shop-sample,
  .tbrtheme-cta-link.tbrtheme-product-enquire) {
    align-self: end;
    justify-self: end;
    /* the properties you put in */
  }
}
.single-tbrtheme_product h2.tbrtheme-product-entry-heading {
  grid-column: page;
  font-size: var(--remsize20-25);
  font-weight: 500;
  line-height: 1.36;
  margin-block-end: 1.25em;
}
@media only screen and (min-width: 83.5625rem) {
  .single-tbrtheme_product h2.tbrtheme-product-entry-heading {
    grid-column: content;
    /* the properties you put in */
  }
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion {
  padding-block-end: min(10vw, 5rem);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .wp-block-columns {
  --column-gap: min(10vw, 5rem);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table {
  border: 1px solid var(--table-line, var(--test));
  border-radius: var(--remsize12);
  margin-block-end: 1.5em;
  max-block-size: none;
}
@media only screen and (max-width: 56rem) {
  .single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table {
    position: absolute;
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    block-size: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    inline-size: 1px;
    word-wrap: normal !important;
    /* the properties you put in */
  }
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table {
  border-collapse: collapse;
  margin: 0;
  border: none;
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table th {
  font-weight: var(--bodytextbold);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table th,
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table td {
  padding-inline: var(--table-padding-inline);
  padding-block: var(--table-padding-block);
  text-align: left;
  vertical-align: top;
  border: none;
  overflow-wrap: unset;
  min-inline-size: 14ch;
  background-color: var(--bg);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table thead {
  color: var(--table-head-txt);
  background-color: var(--bg);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table thead :is(th, td) {
  padding-block-start: calc(var(--table-padding-block) * 2);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table:not(:has(tfoot)) tbody tr:last-child :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table tfoot :is(th, td) {
  padding-block-end: calc(var(--table-padding-block) * 2);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table :is(tbody, tfoot) tr:nth-child(odd) :is(th, td) {
  background-color: var(--bg);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .wp-block-flexible-table-block-table table :is(tbody, tfoot) :is(th, td) {
  border-block-start: 1px solid var(--txtalphalighter);
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .tbrtheme-accordion-content .wp-block-columns {
  grid-template-columns: 1fr;
}
@media only screen and (max-width: 56rem) {
  .single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-analysis-table .tbrtheme-accordion-content .wp-block-columns {
    gap: 0;
    /* the properties you put in */
  }
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-content {
  padding-block: 0.125rem 1.75rem;
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-content :last-child {
  margin-block-end: 0;
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-content .wp-block-column :last-child {
  margin-block-end: 0;
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-accordion-item.tbrtheme-accreditations-endorsements .tbrtheme-accordion-content {
  padding-block-end: 0;
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion .tbrtheme-product-brochures .tbrtheme-accordion-content {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.single-tbrtheme_product .wp-block-tbrtheme-accordion h3.wp-block-heading {
  font-size: var(--remsize16);
  font-weight: 600;
  margin-block-end: 1em;
}
.single-tbrtheme_product .tbrtheme-product-safety {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(35ch, 100%), 1fr));
  justify-content: center;
  column-gap: min(7vw, 7rem);
  row-gap: 3rem;
  max-width: 90vw;
}
@media only screen and (min-width: 83.5625rem) {
  .single-tbrtheme_product .tbrtheme-product-safety {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    /* the properties you put in */
  }
}
.single-tbrtheme_product .tbrtheme-product-safety-icons svg {
  --svg-inline: clamp(196px, 12vw, 225px);
  --svg-block: clamp(68px, 12vw, 78px);
}

.tbrtheme-dialogue {
  --_inset: 3vw;
  border: none;
  border-radius: var(--remsize12);
  background-color: var(--bg);
  inset: var(--_inset);
  top: var(--header-wrapper-height);
  margin-block-end: 0;
  position: relative;
  max-block-size: 90vh;
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-dialogue {
    top: var(--header-wrapper-height);
    /* the properties you put in */
  }
}
.tbrtheme-dialogue button.tbrtheme-dialogue-close {
  --ffbuttonpadding: 0.75em min(2vw, 2em);
  --btn-bdr: 0;
  position: absolute;
  inset: 0 0 auto auto;
  min-inline-size: unset;
  z-index: 2;
  outline-width: 0;
}
.tbrtheme-dialogue button.tbrtheme-dialogue-close svg {
  --svg-inline: min(6vw, 2.25rem);
  --svg-block: min(6vw, 2.25rem);
  color: var(--txt);
}
.tbrtheme-dialogue button.tbrtheme-dialogue-close::before {
  content: none;
}
.tbrtheme-dialogue button.tbrtheme-dialogue-close:hover, .tbrtheme-dialogue button.tbrtheme-dialogue-close:active, .tbrtheme-dialogue button.tbrtheme-dialogue-close:focus-visible {
  --btn-bg: var(--bg);
  /* the properties you put in */
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper {
  --_arrow-width: 36px;
  --_img-width: calc(90vw - (var(--_inset) * 2));
  display: grid;
  grid-template-columns: minmax(var(--_arrow-width), 1fr) var(--_img-width) minmax(var(--_arrow-width), 1fr);
  grid-template-rows: 1fr 1em 1fr 1.625rem auto;
  grid-template-areas: ". pic ." ". pic ." ". pic ." ". . ." ". slides .";
  max-inline-size: min(100%, var(--_img-width) + var(--_arrow-width) * 2);
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow {
  grid-area: pic;
  max-inline-size: var(--_img-width);
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-arrows {
  grid-row: 2;
  grid-column: 1/-1;
  display: flex;
  justify-content: space-between;
  max-inline-size: min(100%, min(var(--_img-width) + var(--_arrow-width) * 2, 101vw));
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-arrows .glide__arrow {
  border: 0;
  padding: 0.5em;
  background: none;
  appearance: none;
  cursor: pointer;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-arrows .glide__arrow svg {
  --svg-inline: 1.5em;
  --svg-block: 1.5em;
  fill: var(--bg);
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] {
  grid-area: slides;
  max-inline-size: var(--_img-width);
  display: flex;
  justify-content: center;
  gap: 0.75rem;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet {
  flex: 0 0 100px;
  border-radius: 0;
  background-color: var(--bg);
  border: 1px solid var(--txtalphalighter);
  transition: border-color 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  cursor: pointer;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet::before {
  content: none;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet:hover, .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet:active, .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet:focus-visible {
  border-color: var(--color-cta);
  /* the properties you put in */
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet--active {
  border-color: var(--color-cta);
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet {
    flex: 0 0 13px;
    width: 13px;
    background-color: var(--shade-paler-grey);
    border-width: 0;
    aspect-ratio: 1;
    border-radius: 50%;
    transition: background-color 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
  }
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet img {
    display: none;
  }
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet--active {
    background-color: var(--txt);
  }
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-thumbs[data-glide-el="controls[nav]"] button.glide__bullet {
    /* the properties you put in */
  }
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .glide__track {
  position: relative;
  overflow: hidden;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .glide__slides {
  padding: 0;
  margin: 0;
  list-style-type: none;
  display: flex;
  --sentencemaxwidth: null;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper .glide__slide {
  margin-block-end: 0;
}
.tbrtheme-dialogue .tbrtheme-slideshow-wrapper img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: contain;
  max-block-size: 60vh;
}
@media only screen and (max-width: 56rem) {
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper {
    --_arrow-width: 0;
  }
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper .tbrtheme-slideshow-arrows {
    display: none;
  }
  .tbrtheme-dialogue .tbrtheme-slideshow-wrapper {
    /* the properties you put in */
  }
}

.tbrtheme-zoom-wrapper {
  cursor: zoom-in;
  display: block;
  overflow: hidden;
}

.tbrtheme-zoom-active {
  --zoom-x: 50%;
  --zoom-y: 50%;
}
.tbrtheme-zoom-active .tbrtheme-zoom-wrapper {
  cursor: zoom-out;
}
.tbrtheme-zoom-active .tbrtheme-zoom-wrapper > * {
  transform: scale(4);
  transform-origin: var(--zoom-x) var(--zoom-y);
}

.wp-block-tbrtheme-product-related {
  grid-column: page;
  padding-block: min(6vw, 3rem) min(10vw, 5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-product-related {
    grid-column: content;
    /* the properties you put in */
  }
}
@media only screen and (max-width: 48rem) {
  .wp-block-tbrtheme-product-related {
    grid-column: page-start/fullwidth-end;
    padding-inline-end: 3em;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-product-related h2 {
  font-size: var(--remsize20-25);
  font-weight: 500;
  line-height: 1.36;
  margin: 0;
}
.wp-block-tbrtheme-product-related .posts-list {
  column-gap: 2.25rem;
  display: grid;
  padding-block-start: min(5vw, 2.5rem);
  padding-block-end: 1em;
  overflow-x: auto;
  overflow-y: clip;
}
@media only screen and (max-width: 48rem) {
  .wp-block-tbrtheme-product-related .posts-list {
    grid-template-columns: repeat(4, minmax(186px, 1fr));
    /* the properties you put in */
  }
}
@media only screen and (min-width: 48.0625rem) {
  .wp-block-tbrtheme-product-related .posts-list {
    grid-template-columns: repeat(4, minmax(294px, 1fr));
    /* the properties you put in */
  }
}

.tax-tbrtheme_season .tbrtheme-season-wrapper {
  --season-transition-timing: 300ms;
  padding-block-end: min(10vw, 5rem);
  grid-column: page;
  display: grid;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .entry-text {
  display: block;
  padding-block: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .wp-block-tbrtheme-cta-short h3.wp-block-heading {
  font-size: var(--remsize20);
  font-weight: 500;
  line-height: 1.3;
  margin: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-product-related {
  margin-block-start: min(5vw, 1.5rem);
  padding-block: min(5vw, 2rem) min(6vw, 3rem);
  border-block-start: 1px solid var(--txtalpha);
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-product-related h2 {
  margin-block-end: 1em;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-product-related .posts-list {
  padding: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-product-related .posts-list .tbrtheme-teaser .tbrtheme-featured-image {
  background-color: var(--shade-off-light);
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-product-related .posts-list .tbrtheme-post-title {
  font-size: var(--remsize18-19);
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant {
  padding-block-start: min(5vw, 2rem);
  border-block-start: 1px solid var(--txtalpha);
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant h2 {
  font-size: var(--remsize20-25);
  font-weight: 500;
  line-height: 1.36;
  margin-block-end: 1em;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant .posts-list {
  padding: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant .posts-list .tbrtheme-teaser .tbrtheme-featured-image {
  background-color: unset;
  padding: 0;
  border-radius: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant .posts-list .tbrtheme-teaser .tbrtheme-featured-image img {
  aspect-ratio: 284/266;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant .posts-list .tbrtheme-post-date {
  margin-block-end: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer .wp-block-tbrtheme-posts-relevant .posts-list .tbrtheme-post-title {
  font-size: var(--remsize18-19);
}
@media only screen and (max-width: 52.75rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    grid-template-columns: 1fr;
    grid-template-areas: "seasonmenu" "seasontext" "seasonfooter" "seasoncta";
    row-gap: min(6vw, 3rem);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper {
    grid-area: seasonmenu;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper > .wp-block-tbrtheme-cta-short {
    grid-area: seasoncta;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .entry-text {
    grid-area: seasontext;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer {
    grid-area: seasonfooter;
    grid-column: span 2;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.8125rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    grid-template-rows: repeat(2, auto) 1fr;
    row-gap: var(--remsize20);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .entry-text {
    grid-row: 1/span 3;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.8125rem) and (max-width: 83.5rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    grid-template-columns: 19rem 1fr;
    column-gap: min(6vw, 3rem);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .wp-block-tbrtheme-cta-short,
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper {
    grid-column: 1;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .entry-text {
    grid-column: 2;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer {
    grid-column: 1/span 2;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 83.5625rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    grid-column: content;
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 3; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 19;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper > .wp-block-tbrtheme-cta-short {
    grid-column: 1/span var(--column-one);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .entry-text,
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-footer {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper {
    /* the properties you put in */
  }
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper > h2 {
  font-size: var(--remsize20);
  font-weight: 500;
}
@media only screen and (max-width: 52.75rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: var(--remsize20);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper > h2 {
    display: none;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper #season-menu {
    order: 1;
    inline-size: 100%;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 52.8125rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper {
    background-color: var(--alt-bg);
    padding: 2em 1.625em 0 1.875em;
    border-radius: 1em;
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li:first-of-type {
    border-block-start: 1px solid var(--txtalphalighter);
  }
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper {
    /* the properties you put in */
  }
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li {
  border-block-end: 1px solid var(--txtalphalighter);
  margin-block-end: 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li a {
  text-decoration: none;
  display: flex;
  padding: 0.5em 0;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li a:hover, .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li a:active, .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li a:focus-visible {
  font-weight: 600;
  /* the properties you put in */
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper ul#season-menu li.current-menu-item a {
  font-weight: 600;
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper .tbrtheme-year-round {
  padding-block: min(5vw, 2rem);
}
@media (prefers-color-scheme: dark) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper .tbrtheme-year-round {
    filter: brightness(0.8) contrast(1.2);
  }
}
.tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper .tbrtheme-year-round svg {
  --svg-inline: 233px;
  --svg-block: 100%;
}
@media only screen and (max-width: 52.75rem) {
  .tax-tbrtheme_season .tbrtheme-season-wrapper .tbrtheme-season-sidebar-wrapper .tbrtheme-year-round {
    background-color: var(--alt-bg);
    border-radius: 1em;
    display: flex;
    justify-content: center;
    /* the properties you put in */
  }
}
.tax-tbrtheme_season .tbrtheme-season-planting {
  padding-block-end: min(5vw, 2rem);
  border-block-end: 1px solid var(--txtalpha);
  margin-block-end: 1.5rem;
}
.tax-tbrtheme_season .tbrtheme-season-planting [data-slug=cool] {
  --region-colour: var(--color-region-cool);
  --region-hover: var(--color-region-cool-hover);
}
.tax-tbrtheme_season .tbrtheme-season-planting [data-slug=warm] {
  --region-colour: var(--color-region-warm);
  --region-hover: var(--color-region-warm-hover);
}
.tax-tbrtheme_season .tbrtheme-season-planting [data-slug=hot] {
  --region-colour: var(--color-region-hot);
  --region-hover: var(--color-region-hot-hover);
}
.tax-tbrtheme_season .tbrtheme-season-planting [data-slug=tropical] {
  --region-colour: var(--color-region-tropical);
  --region-hover: var(--color-region-tropical-hover);
}
.tax-tbrtheme_season .tbrtheme-season-planting [data-slug=subtropical] {
  --region-colour: var(--color-region-subtropical);
  --region-hover: var(--color-region-subtropical-hover);
}
.tax-tbrtheme_season ul.tbrtheme-season-regions {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
}
@media only screen and (max-width: 78.125rem) {
  .tax-tbrtheme_season ul.tbrtheme-season-regions {
    flex-direction: column;
    row-gap: var(--remsize14);
    /* the properties you put in */
  }
}
@media only screen and (min-width: 78.1875rem) {
  .tax-tbrtheme_season ul.tbrtheme-season-regions {
    justify-content: space-between;
    /* the properties you put in */
  }
}
.tax-tbrtheme_season ul.tbrtheme-season-regions li {
  margin: 0;
}
@media only screen and (min-width: 78.1875rem) {
  .tax-tbrtheme_season ul.tbrtheme-season-regions li {
    inline-size: 156px;
    /* the properties you put in */
  }
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button {
  --btn-bdr-size: 0;
  padding: 0;
  border-radius: 0;
}
@media (prefers-color-scheme: dark) {
  .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button {
    filter: brightness(0.8) contrast(1.2);
  }
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button svg {
  --svg-inline: clamp(114px, 10vw, 156px);
  --svg-block: clamp(111px, 10vw, 152px);
  padding: var(--remsize18) 1rem var(--remsize20);
  border-radius: var(--remsize10);
  border: 0.125rem solid var(--region-colour);
  transition: background-color 150ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
@media only screen and (max-width: 78.125rem) {
  .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button {
    display: flex;
    column-gap: var(--remsize30);
    inline-size: 100%;
    justify-content: flex-start;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 78.1875rem) {
  .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 1.25em;
    justify-items: center;
    inline-size: 100%;
    /* the properties you put in */
  }
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button::before {
  content: none;
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:hover, .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:active, .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:focus-visible {
  --btn-fg: var(--txt);
  --btn-bg: transparent;
  overflow: visible;
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:hover svg, .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:active svg, .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:focus-visible svg {
  background-color: var(--region-hover);
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:hover, .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:active, .tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button:focus-visible {
  /* the properties you put in */
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button.current-item {
  --btn-fg: var(--txt);
  --btn-bg: transparent;
}
.tax-tbrtheme_season ul.tbrtheme-season-regions button.tbrtheme-season-region-button.current-item svg {
  background-color: var(--region-hover);
}
@media only screen and (min-width: 78.1875rem) {
  .tax-tbrtheme_season .tbrtheme-season-planting-regions {
    grid-template-areas: season-planting-region;
    margin-block-start: min(6vw, 4rem);
    display: none;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper[class*=tbrtheme-active] {
    padding-block-end: min(5vw, 2rem);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper[class*=tbrtheme-active] .tbrtheme-season-planting-regions {
    display: grid;
  }
  .tax-tbrtheme_season {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 78.1875rem) {
  .tax-tbrtheme_season .tbrtheme-season-planting-region {
    grid-area: season-planting-region;
    display: grid;
    grid-template-columns: 2fr 3fr;
    column-gap: var(--remsize40);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-region.tbrtheme-hidden {
    opacity: 0;
    z-index: 0;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-region.tbrtheme-active {
    opacity: 1;
    z-index: 1;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-region {
    /* the properties you put in */
  }
}
.tax-tbrtheme_season .tbrtheme-season-planting-region > svg {
  --svg-inline: 100%;
  --svg-block: auto;
  aspect-ratio: 351/342;
  border-radius: var(--remsize10);
  background-color: var(--region-hover);
  border: 0.125rem solid var(--region-colour);
  padding: var(--remsize30) var(--remsize24) var(--remsize36) var(--remsize30);
}
@media only screen and (max-width: 78.125rem) {
  .tax-tbrtheme_season .tbrtheme-season-planting-region > svg {
    display: none;
    /* the properties you put in */
  }
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .tbrtheme-region-content h4 {
  font-size: var(--remsize16-19);
  font-weight: 600;
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting h5.tbrtheme-accordion-title {
  font-size: var(--remsize18-19);
  font-weight: 600;
  display: grid;
  grid-template-columns: 20px 1fr auto;
  grid-template-rows: 0.9em min-content 0.9em;
  align-items: center;
  column-gap: var(--remsize14);
  margin: 0;
  line-height: 1;
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting h5.tbrtheme-accordion-title > * {
  grid-row: 2;
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting h5.tbrtheme-accordion-title svg.tbrtheme-item-icon {
  --svg-inline: 19px;
  --svg-block: 27px;
  grid-row: 1/-1;
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting details.tbrtheme-planting-item {
  border-block-end: 1px solid var(--txtalpha);
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting details.tbrtheme-planting-item:first-of-type {
  border-block-start: 1px solid var(--txtalpha);
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting details.tbrtheme-planting-item[open] svg.tbrtheme-angle-down {
  scale: 1 -1;
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting .tbrtheme-planting-content {
  padding-block-end: 1rem;
  display: grid;
  grid-template-columns: 20px 1fr;
  column-gap: var(--remsize14);
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting .tbrtheme-planting-content ul.wp-block-list {
  grid-column: 2;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.tax-tbrtheme_season .tbrtheme-season-planting-region .wp-block-tbrtheme-planting .tbrtheme-planting-content ul.wp-block-list li {
  margin-block-end: 0.125em;
}
.tax-tbrtheme_season .tbrtheme-season-tips .tbrtheme-season-tips-loop {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(30ch, 1fr));
  column-gap: min(6vw, 4rem);
  row-gap: var(--remsize30);
}
@media only screen and (min-width: 52.8125rem) and (max-width: 83.5rem) {
  .tax-tbrtheme_season .tbrtheme-season-tips .tbrtheme-season-tips-loop {
    column-gap: min(6vw, 3rem);
    /* the properties you put in */
  }
}
.tax-tbrtheme_season .tbrtheme-season-tips .tbrtheme-season-tips-loop .tbrtheme-season-tip {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--remsize30);
  align-content: start;
}
.tax-tbrtheme_season .tbrtheme-season-tips .tbrtheme-season-tips-loop .tbrtheme-season-tip-content h1.tbrtheme-post-title {
  font-size: var(--remsize18-19);
  font-weight: 600;
  margin-block-end: 0.125em;
}
.tax-tbrtheme_season .tbrtheme-season-tips .tbrtheme-season-tips-loop .tbrtheme-featured-image img {
  border-radius: var(--remsize12);
  aspect-ratio: 438/259;
}
@media only screen and (max-width: 78.125rem) {
  .tax-tbrtheme_season .tbrtheme-season-planting {
    padding-block-end: min(5vw, 1.5rem);
    margin-block-end: min(6vw, 3rem);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(5, auto 0);
    transition: grid-template-rows var(--season-transition-timing) linear;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper.tbrtheme-active-cool {
    grid-template-rows: auto 1fr repeat(4, auto 0);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper.tbrtheme-active-warm {
    grid-template-rows: auto 0 auto 1fr repeat(3, auto 0);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper.tbrtheme-active-hot {
    grid-template-rows: repeat(2, auto 0) auto 1fr repeat(2, auto 0);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper.tbrtheme-active-tropical {
    grid-template-rows: repeat(3, auto 0) auto 1fr auto 0;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions-wrapper.tbrtheme-active-subtropical {
    grid-template-rows: repeat(4, auto 0) auto 1fr;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions {
    margin: 0;
    grid-column: 1/1;
    grid-row: 1/-1;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: subgrid;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions li {
    grid-column: 1/-1;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions li:nth-child(1) {
    grid-row: 1;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions li:nth-child(2) {
    grid-row: 3;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions li:nth-child(3) {
    grid-row: 5;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions li:nth-child(4) {
    grid-row: 7;
  }
  .tax-tbrtheme_season ul.tbrtheme-season-regions li:nth-child(5) {
    grid-row: 9;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions {
    grid-column: 1/1;
    grid-row: 1/-1;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: subgrid;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions .tbrtheme-region-content {
    padding-block-end: 0;
    margin-block: min(5vw, 1.5rem);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region {
    margin-block-end: 1em;
    grid-column: 1/-1;
    transition: clip-path var(--season-transition-timing) linear;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region.tbrtheme-hidden {
    clip-path: inset(0 0 100% 0);
    overflow: clip;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region.tbrtheme-active {
    clip-path: inset(0 0 0 0);
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region[data-slug=cool] {
    grid-row: 2;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region[data-slug=warm] {
    grid-row: 4;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region[data-slug=hot] {
    grid-row: 6;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region[data-slug=tropical] {
    grid-row: 8;
  }
  .tax-tbrtheme_season .tbrtheme-season-planting-regions div.tbrtheme-season-planting-region[data-slug=subtropical] {
    grid-row: 10;
  }
  .tax-tbrtheme_season {
    /* the properties you put in */
  }
}
.tax-tbrtheme_season :is(.wp-block-tbrtheme-product-related, .wp-block-tbrtheme-posts-relevant) {
  max-inline-size: 100%;
  overflow-x: auto;
  overflow-y: clip;
}
.tax-tbrtheme_season :is(.wp-block-tbrtheme-product-related .posts-list, .wp-block-tbrtheme-posts-relevant .posts-list) {
  grid-template-columns: repeat(3, minmax(294px, 1fr));
  overflow: initial;
}
@media only screen and (max-width: 48rem) {
  .tax-tbrtheme_season :is(.wp-block-tbrtheme-product-related, .wp-block-tbrtheme-posts-relevant) {
    max-inline-size: calc(100vw - min(var(--pagesidemargin), 5rem));
    padding-inline-end: 3em;
  }
  .tax-tbrtheme_season {
    /* the properties you put in */
  }
}

:is(button.tbrtheme-glossary-item,
.tbrtheme-glossary-dialogue button.tbrtheme-dialogue-close) {
  --btn-bdr-size: 0;
  min-inline-size: unset;
  padding: 0;
  border-radius: 0;
  --btn-fg: var(--txt);
}
:is(button.tbrtheme-glossary-item,
.tbrtheme-glossary-dialogue button.tbrtheme-dialogue-close)::before {
  content: none;
}

button.tbrtheme-glossary-item {
  display: inline-grid;
  grid-template-columns: 1fr var(--remsize10);
  column-gap: 0.125em;
  align-items: baseline;
  margin-inline-end: 0.25em;
  font-weight: 600;
  text-transform: unset;
  --btn-bg: var(--bg);
}
button.tbrtheme-glossary-item svg {
  --svg-inline: var(--remsize10);
  --svg-block: var(--remsize10);
}
button.tbrtheme-glossary-item:hover, button.tbrtheme-glossary-item:active, button.tbrtheme-glossary-item:focus-visible {
  --btn-fg: var(--color-logo);
  /* the properties you put in */
}

dialog.tbrtheme-glossary-dialogue {
  position: fixed;
  top: var(--glossary-dialogue-top);
  left: 50%;
  right: auto;
  bottom: 1em;
  max-height: max-content;
  transform: translateX(-50%) translateY(-99%);
  inline-size: 22ch;
  margin: 0;
  padding: 0;
  border-radius: 1rem;
  background-color: var(--alt-bg);
  border: var(--line-thickness, 1px) solid;
  grid-template-columns: var(--remsize20) 1fr var(--remsize20);
  grid-template-rows: 1rem 2rem auto 1em 1.125rem;
  opacity: 0;
  transition: opacity 150ms linear;
  overscroll-behavior: contain;
}
dialog.tbrtheme-glossary-dialogue.tbrtheme-dialogue-below {
  transform: translateX(-50%);
}
@media only screen and (min-width: 48.0625rem) {
  dialog.tbrtheme-glossary-dialogue {
    left: var(--glossary-dialogue-left);
    transform: translateY(-99%);
  }
  dialog.tbrtheme-glossary-dialogue.tbrtheme-dialogue-below {
    transform: none;
  }
  dialog.tbrtheme-glossary-dialogue {
    /* the properties you put in */
  }
}
dialog.tbrtheme-glossary-dialogue::backdrop {
  opacity: 0;
}
dialog.tbrtheme-glossary-dialogue[open] {
  opacity: 1;
  display: grid;
  align-content: start;
  align-items: start;
}
dialog.tbrtheme-glossary-dialogue div,
dialog.tbrtheme-glossary-dialogue a {
  font-size: var(--remsize14);
}
dialog.tbrtheme-glossary-dialogue .tbrtheme-glossary-excerpt {
  grid-row: 3;
  grid-column: 2;
  line-height: 1.64;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5; /* Change this line if you want. In this case it trimmed the text to 3 lines. */
  overflow: hidden;
  margin-block-end: 1em;
}
dialog.tbrtheme-glossary-dialogue a {
  grid-row: 4;
  grid-column: 2;
  font-weight: 600;
  display: grid;
  grid-template-columns: max-content var(--remsize10);
  column-gap: 0.5em;
  align-items: baseline;
  text-decoration: none;
}
dialog.tbrtheme-glossary-dialogue a svg {
  --svg-inline: var(--remsize8);
  --svg-block: var(--remsize8);
  transform: translateY(0);
  transition: transform 100ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
dialog.tbrtheme-glossary-dialogue a:hover svg, dialog.tbrtheme-glossary-dialogue a:active svg, dialog.tbrtheme-glossary-dialogue a:focus-visible svg {
  transform: translateY(-0.125em);
}
dialog.tbrtheme-glossary-dialogue a:hover, dialog.tbrtheme-glossary-dialogue a:active, dialog.tbrtheme-glossary-dialogue a:focus-visible {
  /* the properties you put in */
}
dialog.tbrtheme-glossary-dialogue button.tbrtheme-dialogue-close {
  grid-row: 2;
  grid-column: 2;
  justify-self: end;
  align-self: start;
  --btn-bg: var(--alt-bg);
  outline-width: 0;
}
dialog.tbrtheme-glossary-dialogue button.tbrtheme-dialogue-close svg {
  --svg-inline: var(--remsize20);
  --svg-block: var(--remsize20);
}

html:has(body.page-neutrog-glossary, :target) {
  scroll-padding-block-start: 0;
}

p:has(+ .wp-block-tbrtheme-glossary) {
  margin-block-end: 0;
}

.wp-block-tbrtheme-glossary {
  --grid-column: page;
  margin-block-start: min(5vw, 2rem);
  padding-block-end: min(10vw, 5rem);
}
@media only screen and (min-width: 83.5625rem) {
  .wp-block-tbrtheme-glossary {
    --grid-column: content;
    /* the properties you put in */
  }
}
.wp-block-tbrtheme-glossary details.tbrtheme-glossary-term {
  border-block-end: 1px solid var(--txtalphalighter);
  padding-block-end: 1em;
}
.wp-block-tbrtheme-glossary details.tbrtheme-glossary-term:target::before {
  content: none;
}
.wp-block-tbrtheme-glossary details.tbrtheme-glossary-term summary {
  padding-block-start: 1em;
}
.wp-block-tbrtheme-glossary details.tbrtheme-glossary-term:first-of-type {
  border-block-start: 1px solid var(--txtalphalighter);
}
.wp-block-tbrtheme-glossary details.tbrtheme-glossary-term[open] svg {
  scale: 1 -1;
}
.wp-block-tbrtheme-glossary .tbrtheme-accordion-title {
  font-size: var(--remsize18-25);
  margin: 0;
  display: grid;
  grid-template-columns: 1fr var(--remsize15);
  align-items: center;
}
.wp-block-tbrtheme-glossary .tbrtheme-accordion-title svg {
  --svg-inline: var(--remsize15);
  --svg-block: var(--remsize15);
}
.wp-block-tbrtheme-glossary .tbrtheme-glossary-term-content {
  --sentencemaxwidth: 105ch;
  padding-block-start: 0.5em;
}
.wp-block-tbrtheme-glossary .tbrtheme-glossary-term-content p {
  margin: 0;
}

@media only screen and (max-width: 56rem) {
  .tbrtheme-gallery-wrapper {
    grid-template-columns: 1fr;
    isolation: isolate;
  }
  .tbrtheme-gallery-wrapper .search-form.tbrtheme-filter-gallery {
    position: absolute;
    inset: -2.5em 0 0;
    z-index: -1;
  }
  .tbrtheme-gallery-wrapper {
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  .tbrtheme-gallery-wrapper {
    grid-template-rows: auto 1fr auto;
    grid-template-areas: "filter products" "filter products" ". pagenav";
  }
  .tbrtheme-gallery-wrapper .posts-list {
    padding-block-start: 0;
  }
  .tbrtheme-gallery-wrapper {
    /* the properties you put in */
  }
}

#gallery-posts-list .tbrtheme-featured-image {
  margin-block-end: 1rem;
}
#gallery-posts-list button.tbrtheme-gallery-thumb {
  --btn-bdr-size: 0;
  --btn-bg: var(--alt-bg-light);
  min-inline-size: unset;
  padding: 1em;
  border-radius: var(--remsize10);
  transition: background-color 300ms cubic-bezier(0.55, 0.09, 0.68, 0.53);
}
#gallery-posts-list button.tbrtheme-gallery-thumb::before {
  content: none;
}
#gallery-posts-list button.tbrtheme-gallery-thumb:hover, #gallery-posts-list button.tbrtheme-gallery-thumb:active, #gallery-posts-list button.tbrtheme-gallery-thumb:focus-visible {
  --btn-bg: var(--shade-hover-grey);
  /* the properties you put in */
}
#gallery-posts-list .entry {
  container-type: inline-size;
}
#gallery-posts-list .entry h3 {
  font-weight: 600;
}
#gallery-posts-list .entry p {
  --button-spacing: 0;
  display: flex;
  column-gap: var(--remsize10);
  row-gap: var(--remsize8);
}
@container (width < 215px) {
  #gallery-posts-list .entry p {
    flex-direction: column;
    align-items: start;
  }
}
#gallery-posts-list .entry a.button.download-link {
  --ffbuttonpadding: 0.6em 0.75em;
  min-inline-size: 7em;
}

.tax-product_gallery .tbrtheme-dialogue {
  max-width: 94vw;
}
.tax-product_gallery .tbrtheme-dialogue[open] * {
  display: initial;
}
.tax-product_gallery .tbrtheme-dialogue img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 76vh;
  object-fit: cover;
}
@media (orientation: portrait) {
  .tax-product_gallery .tbrtheme-dialogue {
    position: fixed;
    --_inset: 50vw 3vw auto 3vw;
  }
}

body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-heading,
body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-heading {
  --right-col-width: 0;
  column-gap: 0;
}
@media only screen and (min-width: 56.0625rem) {
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper {
    display: block;
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text {
    /* defaults to be overridden */
    /* 69-5=64 */
    /* 64/2=32 */
    /* 64/4=16 */
    --column-count-base: 82;
    --column-spacing: 0; /* gap of 5, + 1 for line positioning */
    /* 50 50 = 32 32 */
    --column-one: 50;
    --column-two: calc(var(--column-count-base) - (var(--column-one) + var(--column-spacing)));
    display: grid;
    grid-template-columns: repeat(var(--column-count-base), minmax(0.75rem, 1rem));
    justify-items: start;
    margin-inline: auto;
    max-width: min(82rem, 100%);
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text > :nth-child(1),
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text > :nth-child(1) {
    grid-column: span var(--column-one);
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text > :nth-child(2),
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text > :nth-child(2) {
    grid-column: calc(var(--column-one) + var(--column-spacing) + 1)/span var(--column-two);
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text.column-rule > *:not(:nth-child(1)),
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text.column-rule > *:not(:nth-child(1)) {
    position: relative;
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text.column-rule > *:not(:nth-child(1))::before,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper .entry-text.column-rule > *:not(:nth-child(1))::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0 auto 0 calc(var(--column-spacing) / 2 * -1em);
    width: 1px;
    border-left: var(--line-thickness, 1px) solid;
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-wrapper,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-wrapper {
    /* the properties you put in */
  }
}
body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login,
body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login {
  display: grid;
}
@media only screen and (max-width: 56rem) {
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login {
    grid-template-columns: 1fr;
    row-gap: 2rem;
    /* the properties you put in */
  }
}
@media only screen and (min-width: 56.0625rem) {
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login {
    grid-template-columns: repeat(2, auto);
    column-gap: 3em;
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login #loginform input[type=submit],
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login #loginform input[type=submit] {
    margin-block-start: 0.75em;
  }
  body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login,
  body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login {
    /* the properties you put in */
  }
}
body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login .login-remember label,
body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login .login-remember label {
  display: flex;
  align-items: center;
  gap: 0.5em;
  margin: 0;
}
body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login #loginform,
body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login #loginform {
  display: grid;
  gap: 0.75rem;
}
body.page-template-product-gallery:not(.logged-in) .tbrtheme-gallery-login #loginform p,
body.tax-product_gallery:not(.logged-in) .tbrtheme-gallery-login #loginform p {
  margin: 0;
}

body {
  --feature-colour: var(--color-primary-700);
}
@media (prefers-color-scheme: dark) {
  body {
    --feature-colour: var(--color-primary-700);
  }
}

img[src*="placeholder.png"] {
  --_background-size: 33px;
  background: repeating-conic-gradient(var(--placeholder-image-bg-color-dark) 0% 25%, var(--placeholder-image-bg-color-light) 0% 50%) 50%/var(--_background-size) var(--_background-size);
  background-position: 0 0;
}

.printonly {
  inline-size: 0;
  block-size: 0;
  display: none;
  visibility: hidden;
}

.no-js .nojs-hide {
  display: none;
}

.js .js-hide {
  display: none;
}

/* the following is used for managing menu content on mobile/desktop on some websites */
@media only screen and (max-width: 83.5rem) {
  .desktop-only {
    inline-size: 0;
    block-size: 0;
    display: none;
    visibility: hidden;
  }
  /* the properties you put in */
}
@media only screen and (min-width: 83.5625rem) {
  .mobile-only {
    inline-size: 0;
    block-size: 0;
    display: none;
    visibility: hidden;
  }
  /* the properties you put in */
}
@media only screen and (min-width: 83.5625rem) {
  .menu-mobile-only {
    inline-size: 0;
    block-size: 0;
    display: none;
    visibility: hidden;
  }
  /* the properties you put in */
}
@media only screen and (max-width: 83.5rem) {
  .menu-desktop-only {
    inline-size: 0;
    block-size: 0;
    display: none;
    visibility: hidden;
  }
  /* the properties you put in */
}

/*# sourceMappingURL=screen.css.map */