/*
Theme Name:   Lir Seafood
Theme URI:    https://lirseafood.com
Description:  A custom GeneratePress child theme for Lir Seafood
Author:       Jake Woods
Author URI:   https://jakewoods.io
Template:     generatepress
Version:      0.1.2
Text Domain:  djw
*/

/** ----------------------------------------
 ** Custom Properties
 ** ----------------------------------------
    Sets custom properties to be used
 	repeatedly and consistently across site. 
 ** --------------------------------------- */
:root {
	--headline-font: var(--gp-font--headline);
	--body-font: var(--gp-font--body);
	--button-font: var(--gp-font--body);
	--headline-font-weight: 700;
	--button-font-weight: 500;
	--body-font-weight: 400;
	--body: clamp(0.9411rem, 0.538rem + 0.562vi, 1rem);
	--headline-xxxl: clamp(2.5rem, calc(2.5rem + (56 * (100vw - 375px)) / 1057), 6rem);
	--headline-xxl: clamp(2.375rem, calc(2.375rem + (50 * (100vw - 375px)) / 1057), 5.5rem);
	--headline-xl: clamp(2rem, calc(2rem + (32 * (100vw - 375px)) / 1057), 4rem);
	--headline-h1: clamp(1.75rem, calc(1.75rem + (19.8 * (100vw - 375px)) / 1057), 2.9875rem);
	--headline-h2: clamp(1.5rem, calc(1.5rem + (15.8 * (100vw - 375px)) / 1057), 2.4875rem);
	--headline-h3: clamp(1.375rem, calc(1.375rem + (11.2 * (100vw - 375px)) / 1057), 2.075rem);
	--headline-h4: clamp(1.25rem, calc(1.25rem + (7.6 * (100vw - 375px)) / 1057), 1.725rem);
	--headline-h5: clamp(1rem, calc(1rem + (3.2 * (100vw - 375px)) / 1057), 1.2rem);
	--headline-h6: var(--body);
	--headline-pre: var(--body);
	--headline-small: var(--body-s);
	--body-xl: clamp(1.125rem, calc(1.125rem + (6 * (100vw - 375px)) / 1057), 1.5rem);
	--body-l: clamp(1rem, calc(1rem + (3.2 * (100vw - 375px)) / 1057), 1.2rem);
	--body-d: var(--body);
	--body-s: 0.875rem;
	--body-xs: 0.69375rem;
	--button: var(--body-s);
	--navigation: var(--body);
	--space-xxxs: 0.882rem;
	--space-0_25: 0.25rem;
	--space-0_5: 0.5rem;
	--space-0_75: 0.75rem;
	--space-1: 1rem;
	--space-1_25: 1.25rem;
	--space-1_5: 1.5rem;
	--space-1_75: 1.75rem;
	--space-2: 2rem;
	--space-2_25: 2.25rem;
	--space-2_5: 2.5rem;
	--space-3: 3rem;
	--space-3_5: 3.5rem;
	--space-4: 4rem;
	--space-5: 5rem;
	--space-6: 6rem;
	--space-7: 7rem;
	--space-8: 8rem;
	--space-9: 9rem;
	--space-10: 10rem;
	--space-12: 12rem;
	--space-14: 14rem;
	--space-16: 16rem;
	--space-20: 20rem;
	--space-section: clamp(2.647rem, 1.437rem + 7vi, 5.294rem);
	--space-section-half: clamp(1.35rem, 1.437rem + 7vi, 2.647rem);
	--space-section-double: clamp(5.294rem, 1.437rem + 7vi, 10.588rem);
	--space-inline: clamp(1rem, 0.515rem + 3.09vi, 2.5rem);
	--space-page-top: 18.5rem;
	--width-xs: 550px;
	--width-s: 706px;
	--width-m: 1070px;
	--width-tb: 1024px;
	--width-d: 1432px;
	--width-l: 1200px;
	--width-xl: 1480px;
	--width-xxl: 1590px;
	--width-xxxl: 1720px;
	--width-full: 100%;
	--radius-xs: var(--space-0_25);
	--radius-s: var(--space-0_5);
	--radius-m: var(--space-0_75);
	--radius-l: var(--space-1);
	--radius-xl: var(--space-1_5);
	--radius-xxl: var(--space-2);
	--radius-xxxl: var(--space-3);
	--radius-huge: var(--space-4);
	--shadow-100: 0 3px 6px 0 rgba(21, 28, 31, 0.10), 0 5px 10px 0 rgba(21, 28, 31, 0.05);
	--shadow-shiny: 0 3px 6px 0 rgba(255, 255, 255, 0.10), 0 5px 10px 0 rgba(255, 255, 255, 0.05);
}

@view-transition {
	navigation: auto;
}

/* Name stable regions that exist on every page */
header.site-header {
	view-transition-name: header;
}

main.site-content {
	view-transition-name: site;
}

footer.site-footer {
	view-transition-name: footer;
}

/* Exclude elements that change a lot (carousels, videos, loaders, carts) */
.no-vt,
.wp-block-gallery,
.video-container,
.minicart,
.toast,
.modal,
[id*="carousel"] {
	view-transition-name: none;
}

::view-transition-group(root) {
	animation-duration: 280ms;
	/* was ~200ms by default */
	animation-timing-function: ease-in-out;
	/* try ease-in-out for softer ends */
}


/** ----------------------------------------
 ** Body Classes
 ** ----------------------------------------
    Styles classed applied to the body.
 ** --------------------------------------- */
body {
	background-color: var(--background-color);
	font-size: 16px;
}

:root {
	--background-color: var(--color-bg);
	--headline-color: var(--color-headline);
	--text-color: var(--color-text);
	--link-color: var(--color-link);
	--link-color-hover: var(--color-link-hover);
	--light-text-color: var(--surface-100);
	--light-text-color-hover: var(--surface-200);
}


/* Semantic tokens - defaults (Canvas) */
:root {
	--color-bg: var(--canvas);
	--color-text: var(--text-400);
	--color-headline: var(--text-500);
	--color-link: var(--text-500);
	--color-link-hover: var(--text-300);
	--color-accent: var(--midnight);
	--color-accent-contrast: var(--text-50);
	--color-secondary: var(--shell);
	--color-secondary-contrast: var(--text-500);
	--color-tertiary: var(--shell);
	--color-tertiary-contrast: var(--text-500);
	--color-svg: var(--midnight)
}

/* Map globals */
:root {
	--background-color: var(--color-bg);
	--headline-color: var(--color-headline);
	--text-color: var(--color-text);
	--link-color: var(--color-link);
	--link-color-hover: var(--color-link-hover);
}

/* Per-scheme overrides via taxonomy body class */
body.template-tax__theme-coral {
	--color-bg: var(--coral);
	--color-text: var(--text-100);
	--color-headline: var(--text-50);
	--color-link: var(--canvas);
	--color-link-hover: var(--shell);
	--color-accent: var(--midnight);
	--color-accent-contrast: var(--text-50);
	--color-secondary: var(--shell);
	--color-secondary-contrast: var(--text-500);
	--color-tertiary: var(--canvas);
	--color-tertiary-contrast: var(--text-500);
	--color-svg: var(--shell);
}

body.template-tax__theme-coral {
	background-color: var(--color-bg);
}

body.template-tax__theme-ink {
	background-color: var(--color-bg);
}

body.template-tax__theme-midnight {
	background-color: var(--color-bg);
}

body.template-tax__theme-canvas {
	background-color: var(--color-bg);
}

body.template-tax__theme-deepsea {
	background-color: var(--color-bg);
}

body.template-tax__theme-ink {
	--color-bg: var(--ink);
	--color-text: var(--text-200);
	--color-headline: var(--text-50);
	--color-link: var(--text-50);
	--color-link-hover: var(--text-200);
	--color-accent: var(--text-50);
	--color-accent-contrast: var(--text-500);
	--color-secondary: var(--shell);
	--color-secondary-contrast: var(--text-500);
	--color-tertiary: var(--shell);
	--color-tertiary-contrast: var(--text-500);
	--color-svg: var(--shell)
}

body.template-tax__theme-midnight {
	--color-bg: var(--midnight);
	--color-text: var(--text-50);
	--color-headline: var(--canvas);
	--color-link: var(--text-50);
	--color-link-hover: var(--text-200);
	--color-accent: var(--canvas);
	--color-accent-contrast: var(--text-500);
	--color-secondary: var(--shell);
	--color-secondary-contrast: var(--text-500);
	--color-tertiary: var(--tidepool);
	--color-tertiary-contrast: var(--text-50);
	--color-svg: var(--shell)
}

body.template-tax__theme-canvas {
	--color-bg: var(--canvas);
	--color-text: var(--text-400);
	--color-headline: var(--text-500);
	--color-link: var(--text-500);
	--color-link-hover: var(--text-300);
	--color-accent: var(--midnight);
	--color-accent-contrast: var(--text-50);
	--color-secondary: var(--shell);
	--color-secondary-contrast: var(--text-500);
	--color-tertiary: var(--shell);
	--color-tertiary-contrast: var(--text-500);
	--color-svg: var(--midnight);
}

body.template-tax__theme-deepsea {
	--color-bg: var(--deepsea);
	--color-text: var(--text-200);
	--color-headline: var(--text-50);
	--color-link: var(--text-50);
	--color-link-hover: var(--text-100);
	--color-accent: var(--canvas);
	--color-accent-contrast: var(--text-500);
	--color-secondary: var(--shell);
	--color-secondary-contrast: var(--text-500);
	--color-secondary-accent: var(--text-500);
	--color-tertiary: var(--kelp);
	--color-tertiary-contrast: var(--text-500);
	--color-svg: var(--kelp)
}

a:not(.button) {
	color: var(--color-link);
}

a:not(.button):hover {
	color: var(--color-link-hover);
}


/** ----------------------------------------
 ** Helper Classes
 ** ----------------------------------------
    Useful classes to do specfic things.
 ** --------------------------------------- */

/* Used to remove elements visually while preserving them in the DOM for SEO */
.hide-me {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(0px 0px 99.9% 99.9%);
	clip-path: inset(0px 0px 99.9% 99.9%);
	overflow: hidden;
	height: 1px;
	width: 1px;
	padding: 0;
	border: 0;
}

/* No Underline */
.no-ul,
.no-ul a {
	text-decoration: none;
}

/* Clickable Parent */
.clickable-parent {
	position: relative;
}

.clickable-parent a::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.clickable-parent a:is(:focus-visible)::after {
	outline: 2px solid;

}

.clickable-parent a:is(:hover, :focus) {
	outline: none;
}


/** ----------------------------------------
 ** Base Theme Overrides
 ** ----------------------------------------
    Sets custom properties to be used
 	repeatedly and consistently across site. 
 ** --------------------------------------- */
/* Mobile Menu Trigger Button */
.mobile-menu-control-wrapper .menu-toggle,
.mobile-menu-control-wrapper .menu-toggle:hover,
.mobile-menu-control-wrapper .menu-toggle:focus,
.has-inline-mobile-toggle #site-navigation.toggled {
	background-color: transparent;
}

/* Freezes background layer when slideout panel is open */
body.slide-opened {
	overflow: hidden;
}


/** ----------------------------------------
 ** Typography
 ** ----------------------------------------
    Sets the global typography
 ** --------------------------------------- */
/* Default Body / p font settings */
p,
.body-xl,
.body-l,
.body-d,
.body-s,
.body-xs {
	color: var(--color-headline);
	font-family: var(--body-font);
	font-weight: var(--body-font-weight);
	line-height: 1.5;
	margin-bottom: 1.5rem;
}

.body-xl {
	font-size: var(--body-xl);
}

.body-l {
	font-size: var(--body-l);
}

p,
.body-d {
	font-size: var(--body-d);
}

.body-s {
	font-size: var(--body-s);
}

.body-xs {
	font-size: var(--body-xs);
}



/* Default Headings weight, margin, font-family */
h1,
h2,
h3,
h4,
h5,
h6,
.headline-xxxl,
.headline-xxl,
.headline-xl,
.headline-h1,
.headline-h2,
.headline-h3,
.headline-h4,
.headline-h5,
.headline-h6,
.headline-small,
.headline-pre {
	color: var(--color-headline);
	font-family: var(--headline-font);
	font-weight: var(--headline-font-weight);
	line-height: normal;
	margin-bottom: 1rem;
	text-transform: uppercase;
}

/* Heading font-size */
.headline-xxxl {
	font-size: var(--headline-xxxl);
	line-height: 0.93em;
}

.headline-xxl {
	font-size: var(--headline-xxl);
	line-height: 0.93em;
}

.headline-xl {
	font-size: var(--headline-xl);
	line-height: 0.93em;
}

h1,
.headline-h1 {
	font-size: var(--headline-h1);
}

h2,
.headline-h2 {
	font-size: var(--headline-h2);
}

h3,
.headline-h3 {
	font-size: var(--headline-h3);
}

h4,
.headline-h4 {
	font-size: var(--headline-h4);
}

h5,
.headline-h5 {
	font-size: var(--headline-h5);
}

h6,
.headline-h6 {
	font-size: var(--headline-h6);
}

.headline-pre {
	font-size: var(--headline-pre);
	font-weight: var(--headline-font-weight);
}

.headline-small {
	font-size: var(--headline-small);
}

/* Add top margin to blog post H2-H6 except the first child */
.single-main-content .dynamic-entry-content :is(h2, h3, h4, h5, h6) {
	margin-top: var(--space-xxl);
}

/* Remove top margin if it is the first child within .single-main-content */
.single-main-content .dynamic-entry-content> :is(h2, h3, h4, h5, h6):first-child {
	margin-top: 0;
}

.single-main-content p {
	line-height: 1.8;
	max-width: 68ch;
}

p:last-child {
	margin-bottom: 0;
}

/* Remove bottom margin on last paragraph in container (front end) */
p:last-child:last-of-type {
	margin-bottom: 0px;
}

/* Remove bottom margin on last paragraph in container (editor) */
p:nth-last-child(1) {
	margin-bottom: 0px;
}

/* * List Styles */
#content ul,
#content ol {
	margin-left: 1.25rem;
}

#content li {
	font-family: var(--body-font);
	font-size: var(--body);
	font-weight: var(--body-font-weight);
	line-height: 1.75rem;
}


/** ----------------------------------------
 ** Shadows
 ** ----------------------------------------
    Sets the global shadows
 ** --------------------------------------- */
.shadow-100 {
	box-shadow: var(--shadow-100);
}

;

/** ----------------------------------------
 ** Buttons
 ** ----------------------------------------
    Styles Global Buttons
 ** --------------------------------------- */
.button-bank {
	display: flex;
	gap: var(--space-1);
}

.button {
	font-family: var(--button-font);
	font-size: var(--button);
	font-style: normal;
	font-weight: var(--button-font-weight);
	line-height: 1;
	letter-spacing: 0.013125rem;
	text-align: center;
	text-transform: uppercase;
}

.button__primary {
	background-color: var(--color-tertiary);
	border: 1px solid var(--color-tertiary);
	color: var(--color-tertiary-contrast);
	padding: var(--space-0_5) var(--space-0_75);
}

.button__primary:hover,
.button__primary:focus {
	filter: brightness(0.92);
}

.button__secondary {
	border: 1px solid var(--color-tertiary);
	color: var(--color-tertiary);
	padding: var(--space-0_5) var(--space-0_75);
}

.button__secondary:hover,
.button__secondary:focus {
	filter: brightness(0.96);
}

.button__tertiary {
	background: transparent;
	color: var(--color-link);
	padding-block: var(--space-0_5);
	padding-inline: 0;
}

.button__tertiary:hover,
.button__tertiary:focus {
	color: var(--color-link-hover);
	filter: brightness(0.96);
	-webkit-filter: brightness(0.96);
}

.button__accent {
	background: var(--color-accent);
	border: 1px solid var(--color-accent);
	color: var(--color-accent-contrast);
	padding: var(--space-0_5) var(--space-0_75);
}

.button__accent:hover,
.button__accent:focus {
	filter: brightness(0.92);
}

/* GeneratePress Navigation color mapping */
#site-navigation,
.main-navigation {
	background: transparent;
}

.main-navigation .main-nav ul li a,
.main-navigation .menu-toggle {
	color: var(--color-text);
}

.main-navigation .main-nav ul li:hover>a,
.main-navigation .main-nav ul li:focus-within>a {
	color: var(--color-link-hover);
}

.site-logo a,
.site-branding a {
	color: var(--color-headline);
}


/** ----------------------------------------
 ** Spacing
 ** ----------------------------------------
    Utility classes for spacing.

    Set on each section. These control the
    spacing between sections and the gap on
    grids.
 ** --------------------------------------- */
.spacing-top--half {
	padding-top: var(--space-section-half);
}

.spacing-top--normal {
	padding-top: var(--space-section);
}

.spacing-top--double {
	padding-top: var(--space-section-double);
}

.spacing-top--none {
	padding-top: 0;
}

.spacing-bottom--half {
	padding-bottom: var(--space-section-half);
}

.spacing-bottom--normal {
	padding-bottom: var(--space-section);
}

.spacing-bottom--double {
	padding-bottom: var(--space-section-double);
}

.spacing-bottom--none {
	padding-bottom: 0;
}

.spacing-gap--half {
	gap: var(--space-section-half);
}

.spacing-gap--normal {
	gap: var(--space-section);
}

.spacing-gap--double {
	gap: var(--space-section-double);
}

@media (max-width: 768px) {
	.spacing-gap--half {
		gap: calc(var(--space-section-half) / 2);
	}

	.spacing-gap--normal {
		gap: var(--space-section-half);
	}

	.spacing-gap--double {
		gap: var(--space-section);
	}
}


/** ----------------------------------------
 ** Sections
 ** ----------------------------------------
    Global base section styling
    Includes Inside and Section Header 
    Styling
 ** --------------------------------------- */
/** Outer Section Wrapper **/
.section {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	overflow-x: visible;
	padding-left: var(--space-inline);
	padding-right: var(--space-inline);
	position: relative;
	row-gap: var(--space-4);
	width: 100%;
	z-index: 0
}

/** Section Header **/
.section-header {
	align-items: center;
	display: flex;
	flex-direction: column;
	margin-left: auto;
	margin-right: auto;
	max-width: var(--width-s);
	row-gap: var(--space-1_25);
	text-align: center;
	width: 100%
}

.section-header>.headline-pre {
	margin-bottom: 0px
}

.section-header>p {
	width: 100%;
	max-width: 640px
}

@media (max-width:767px) {
	.section {
		row-gap: var(--space-section-half);
	}

	.section-header {
		text-align: left
	}

	.section-header>p {
		max-width: 100%;
	}
}

/* Section Header - Headline */
.section-header__headline {
	margin-bottom: 0px;
	width: 100%;
}

/* Section Header - Paragraph */
.section-header p {
	font-size: var(--body-l);
}

/** Inside Section **/
.inside-section {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 100%;
	z-index: 1
}

/** Section Footer **/
.section-footer {
	display: flex;
	justify-content: center;
	width: 100%;
}


/** ----------------------------------------
 ** Header Styles
 ** ----------------------------------------
    Styles the Site Header
 ** --------------------------------------- */
/** Sticky Primary Navigation **/
.sticky-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	width: 100%;
}

.sticky-header__site-logo {
	pointer-events: auto;
}

.sticky-header__site-logo .gb-shape svg {
	height: var(--space-5);
}

.sticky-header__site-logo .gb-shape svg path {
	fill: var(--color-svg);
}

.sticky-header__site-logo .gb-shape svg rect {
	fill: var(--color-svg);
}

@media (max-width: 929px) {
	.sticky-header {
		height: 100dvh;
		padding: var(--space-1_5) var(--space-inline);
		pointer-events: none;
	}

	.inside-header.desktop {
		display: none;
	}

	.inside-header.mobile {
		align-items: center;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		padding: 0;
	}

	.sticky-header__site-logo .gb-shape svg {
		height: 45px;
	}

	.sticky-header__navigation-wrap {
		column-gap: var(--space-1);
		display: flex;
		justify-content: flex-end;
		width: 100%;
	}

	.sticky-header__navigation-wrap a {
		color: var(--color-headline)!important;
		font-family: var(--button-font);
		font-size: var(--navigation);
		font-style: normal;
		font-weight: var(--button-font-weight);
		line-height: 1;
		letter-spacing: 0.013125rem;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
	}

	.sticky-header__navigation {
		pointer-events: auto;
	}

	.sticky-header__navigation-trigger,
	.sticky-header__navigation-basket {
		color: var(--text-100);
		padding-bottom: 0.9rem;
		pointer-events: auto;
	}
}

@media (min-width: 930px) {
	.sticky-header {
		padding: var(--space-section-half) var(--space-inline) var(--space-section) var(--space-inline);
		pointer-events: none;
	}

	.inside-header.mobile {
		display: none;
	} 

	.inside-header {
		align-items: center;
		display: flex;
		flex-direction: column;
		height: 100%;
		justify-content: space-between;
		padding: 0;
		width: 100%;
	}

	.sticky-header__logo-wrap {
		margin-bottom: var(--space-1);
	}

	.sticky-header__navigation.desktop ul {
		column-gap: var(--space-0_5);
		pointer-events: auto;
	}

	.sticky-header__navigation.desktop ul li a.gb-menu-link {
		background-color: var(--color-bg);
		color: var(--color-headline);
		font-size: var(--navigation);
		font-weight: normal;
		line-height: 1;
		padding: var(--space-0_5) var(--space-0_5);
		text-transform: uppercase;
	}

	.sticky-header__navigation.desktop ul li.book-button a.gb-menu-link {
		background-color: var(--color-accent);
		color: var(--color-accent-contrast);
		font-size: var(--navigation);
	}

	.sticky-header__navigation.desktop ul li a.gb-menu-link:hover,
	.sticky-header__navigation.desktop ul li a.gb-menu-link:focus,
	.sticky-header__navigation.desktop ul li.book-button a.gb-menu-link:hover,
	.sticky-header__navigation.desktop ul li.book-button a.gb-menu-link:focus {
		background-color: var(--color-secondary);
		color: var(--color-secondary-contrast);
	}
}

/** Mobile Navigation - Off Canvas Panel **/
.off-canvas-panel {
	background-color: var(--color-bg);
	display: flex;
	flex-direction: column;
	height: 100dvh;
	justify-content: flex-start;
	padding: var(--space-1_5) var(--space-inline);
	row-gap: var(--space-2);
	width: 100dvw;
}

.off-canvas-panel__header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.off-canvas-panel .off-canvas-panel__header svg {
	color: var(--color-svg);
	height: 45px;
}

.off-canvas-panel .off-canvas-panel__close {
	color: var(--color-headline);
	font-family: var(--button-font);
	font-size: var(--navigation);
	font-style: normal;
	font-weight: var(--button-font-weight);
	line-height: 1;
	letter-spacing: 0.013125rem;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}

.off-canvas-panel .inside-off-canvas-panel {
	width: 100%;
}

.off-canvas-panel .off-canvas-panel__navigation ul {
	display: grid;
	column-gap: var(--space-1);
	grid-template-columns: repeat(2, 1fr);
	list-style: none;
	margin: 0 !important;
	padding: 0;
}

.off-canvas-panel .off-canvas-panel__navigation ul li a {
	color: var(--color-text);
	font-size: var(--navigation);
	padding: var(--space-0_25) 0;
	text-transform: uppercase;
}

.off-canvas-panel .off-canvas-panel__navigation ul li.wide {
	border-top: 1px solid var(--color-svg);
	grid-column: span 2;
}

.off-canvas-panel .off-canvas-panel__navigation ul li.wide.menu-divider {
	border-bottom: 1px solid var(--color-svg);
	margin-bottom: var(--space-0_75);
}

.off-canvas-panel .off-canvas-panel__navigation ul li.wide a {
	color: var(--color-headline);
	padding-block: var(--space-0_5);
}

.off-canvas-panel__footer {
	margin-top: auto;
}

.off-canvas-panel .secondary-nav__opening-text {
	font-size: var(--body-l);
}

/** Secondary Navigation **/
.secondary-nav {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: var(--space-section-half) var(--space-inline) calc(var(--space-section-half) / 2);
	width: 100%;
}

.inside-secondary-nav {
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	max-width: var(--width-d);
	width: 100%;
}

.secondary-nav__right {
	max-width: var(--space-10);
	width: 100%;
}

.secondary-nav__navigation ul {
	display: flex;
	flex-direction: column;
	margin: 0 !important;
	row-gap: var(--space-0_5);
}

.secondary-nav__navigation ul li a.gb-menu-link {
	background-color: var(--color-bg);
	color: var(--color-link);
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--body-font-weight);
	padding: 0;
	text-transform: uppercase;
}

.secondary-nav__navigation ul li a:hover,
.secondary-nav__navigation ul li a:focus {
	color: var(--color-link-hover);
}

.secondary-nav__ecomm {
	margin-bottom: var(--space-1_75);
}

.secondary-nav__ecomm ul {
	column-gap: var(--space-1_5);
	justify-content: flex-end;
}

.secondary-nav__ecomm ul li a.gb-menu-link {
	background-color: var(--color-bg);
	color: var(--color-link);
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--body-font-weight);
	padding: 0;
	text-transform: uppercase;
}

.secondary-nav__ecomm ul li a:hover,
.secondary-nav__ecomm ul li a:focus {
	background-color: var(--color-bg)!important;
	color: var(--color-link-hover)!important;
}

.secondary-nav__opening-hours-wrap p {
	color: var(--color-link);
	font-size: var(--body-s);
	line-height: 1.4;
	margin-bottom: 0;
	text-align: right;
}

.secondary-nav__opening-hours {
	margin-bottom: var(--space-1);
}

p.secondary-nav__opening-hours--headline {
	text-transform: uppercase;
}

@media (max-width: 929px) {
	.secondary-nav {
		display: none;
	}
}

/* eComm Cart Link Styles */
.ecomm-cart-link a {
	display: flex;
	align-items: center;
	column-gap: 0.5rem!important;
}

.ecomm-cart-link a svg {
	color: var(--color-text);
	height: var(--space-1_25);
	width: var(--space-1_25);
}

.ecomm-cart-link.has-items {
	position: relative;
}

.ecomm-cart-link.has-items::after {
	border-radius: 100%;
	background-color: var(--color-secondary);
	content: "";
	height: 0.6666rem;
	position: absolute;
	top: -4px;
	left: 0.9rem;
	width: 0.6666rem;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-ms-border-radius: 100%;
	-o-border-radius: 100%;
}

.ecomm-cart-link.has-items a svg {
	color: var(--color-secondary)!important;
}

@media (max-width: 929px) {
	.ecomm-cart-link.has-items::after {
		top: 1px;
		left: 0.59rem;
	}

	.ecomm-cart-link a {
		column-gap: 0.4rem!important;
	}

	.ecomm-cart-link a svg {
		height: var(--navigation);
		width: var(--navigation);
	}
}

/** Mobile Navigation - Off Canvas Panel **/


/** ----------------------------------------
 ** Footer Styles
 ** ----------------------------------------
    Styles the Global Footer
 ** --------------------------------------- */
.footer {
	align-items: center;
	display: flex;
	flex-direction: column;
	text-transform: uppercase;
	padding: var(--space-section) var(--space-inline) var(--space-section);
}

.footer a {
	text-decoration: none
}

.inside-footer {
	align-items: center;
	display: flex;
	flex-direction: column;
	max-width: var(--width-d);
	row-gap: var(--space-3_5);
	width: 100%
}

@media (max-width:899px) {
	.inside-footer>div {
		display: flex;
		flex-direction: column;
		align-items: center
	}
}

.inside-footer__top {
	align-items: center;
	display: flex;
	flex-direction: column;
	row-gap: var(--space-1_5)
}

.inside-footer__middle {
	column-gap: var(--space-1);
	display: flex;
	max-width: var(--width-d);
	width: 100%
}

.inside-footer__middle>div {
	width: calc(33% - var(--space-0_5))
}

@media (max-width:899px) {
	.inside-footer__middle {
		align-items: center;
		flex-direction: column;
		row-gap: var(--space-4);
		width: 100%
	}
}

@media (max-width:767px) {
	.inside-footer__middle>div {
		width: 100%
	}
}

.inside-footer__bottom {
	align-items: center;
	display: flex;
	flex-direction: column;
	row-gap: var(--space-1_25);
	width: 100%
}

.footer__logo svg {
	height: 80px
}

.footer__logo .gb-shape svg path,
.footer__logo .gb-shape svg rect {
	fill: var(--color-svg);
}

.footer__copyright--year {
	font-size: var(--body-s)
}

.footer__copyright {
	align-items: center;
	display: flex;
	flex-direction: column;
	row-gap: var(--space-0_25);
	text-align: center
}

.footer__copyright>p {
	margin-bottom: 0px;
	font-size: var(--body-s);
	line-height: 1.4;
	color: var(--color-headline)
}

.footer__copyright--logo svg {
	height: var(--space-3_5);
	width: auto
}

.footer__copyright--logo .gb-shape svg rect,
.footer__copyright--logo .gb-shape svg path {
	fill: var(--color-svg);
}

.footer__contact {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	row-gap: var(--space-1_25)
}

.footer__contact>a {
	font-size: var(--body-d)
}

.footer__contact>p {
	color: var(--color-headline)
}

@media (max-width:899px) {
	.footer__contact {
		align-items: center;
		justify-content: center;
		text-align: center
	}
}

.footer__contact-address>p {
	color: var(--color-headline);
	line-height: initial;
	letter-spacing: 0.48px
}

.footer__contact-address>p {
	color: var(--color-headline);
	line-height: initial;
	letter-spacing: 0.48px
}

.footer__contact-address a {
	text-decoration: underline
}


/** Footer Social Menu **/
/* Default Styles */
.inside-footer__top .djwb--social-navigation__nav ul li a {
	color: var(--text-300);
}

.inside-footer__top .djwb--social-navigation__nav ul li a:hover,
.inside-footer__top .djwb--social-navigation__nav ul li a:focus {
	color: var(--text-500);
}

/* Theme Specific Styles */
body.template-tax__theme-coral .inside-footer__top .djwb--social-navigation__nav ul li a,
body.template-tax__theme-midnight .inside-footer__top .djwb--social-navigation__nav ul li a,
body.template-tax__theme-deepsea .inside-footer__top .djwb--social-navigation__nav ul li a,
body.template-tax__theme-ink .inside-footer__top .djwb--social-navigation__nav ul li a {
	color: var(--text-100);
}

body.template-tax__theme-coral .inside-footer__top .djwb--social-navigation__nav ul li a:hover,
body.template-tax__theme-coral .inside-footer__top .djwb--social-navigation__nav ul li a:focus,
body.template-tax__theme-midnight .inside-footer__top .djwb--social-navigation__nav ul li a:hover,
body.template-tax__theme-midnight .inside-footer__top .djwb--social-navigation__nav ul li a:focus,
body.template-tax__theme-deepsea .inside-footer__top .djwb--social-navigation__nav ul li a:hover,
body.template-tax__theme-deepsea .inside-footer__top .djwb--social-navigation__nav ul li a:focus,
body.template-tax__theme-ink .inside-footer__top .djwb--social-navigation__nav ul li a:hover,
body.template-tax__theme-ink .inside-footer__top .djwb--social-navigation__nav ul li a:focus {
	color: var(--color-link-hover);
}


/** Footer Navigation Menus **/
.footer__menu .gb-menu-container ul {
	display: flex;
	flex-direction: column;
	gap: var(--space-1_25);
	list-style: none;
	margin: 0 !important
}

.footer__menu.footer__action-menu .gb-menu-container ul {
	align-items: center;
}

.footer__menu.footer__action-menu ul li a {
	text-align: center;
	font-size: var(--navigation);
	color: var(--color-link)
}

.footer__menu.footer__primary-menu .gb-menu-container ul {
	align-items: flex-end;
}

.footer__menu .gb-menu-container ul li a {
	color: var(--color-link);
	font-size: var(--body-d);
	line-height: initial;
	padding: 0;
}

.footer__menu .gb-menu-container ul li a:hover,
.footer__menu .gb-menu-container ul li a:focus {
	color: var(--color-link-hover);
}

@media (max-width: 899px) {
	.footer__menu .gb-menu-container ul {
		flex-direction: column;
	}

	.footer__menu.footer__action-menu .gb-menu-container ul,
	.footer__menu.footer__primary-menu .gb-menu-container ul {
		align-items: center;
	}
}

/** Policies Navigation Menu **/
.footer__policies-menu .gb-menu-container ul {
	display: flex;
	flex-direction: row;
	gap: var(--space-1_25);
	list-style: none;
	margin: 0 !important;
}

/* Default Styles */
.footer__policies-menu .gb-menu-container ul li a {
	color: var(--text-300);
	font-family: var(--body-font);
	font-size: var(--body-s);
	padding: 0;
}

.footer__policies-menu .gb-menu-container ul li a:hover,
.footer__policies-menu .gb-menu-container ul li a:focus {
	color: var(--text-500);
}

/* Theme Specific Styles */
body.template-tax__theme-coral .footer__policies-menu .gb-menu-container ul li a,
body.template-tax__theme-midnight .footer__policies-menu .gb-menu-container ul li a,
body.template-tax__theme-deepsea .footer__policies-menu .gb-menu-container ul li a,
body.template-tax__theme-ink .footer__policies-menu .gb-menu-container ul li a {
	color: var(--text-100);
}

body.template-tax__theme-coral .footer__policies-menu .gb-menu-container ul li a:hover,
body.template-tax__theme-coral .footer__policies-menu .gb-menu-container ul li a:focus,
body.template-tax__theme-midnight .footer__policies-menu .gb-menu-container ul li a:hover,
body.template-tax__theme-midnight .footer__policies-menu .gb-menu-container ul li a:focus,
body.template-tax__theme-deepsea .footer__policies-menu .gb-menu-container ul li a:hover,
body.template-tax__theme-deepsea .footer__policies-menu .gb-menu-container ul li a:focus,
body.template-tax__theme-ink .footer__policies-menu .gb-menu-container ul li a:hover,
body.template-tax__theme-ink .footer__policies-menu .gb-menu-container ul li a:focus {
	color: var(--color-link-hover);
}


/** ----------------------------------------
 ** Contact Form & Section Styles
 ** ----------------------------------------
    Styles the Contact Form & Section
 ** --------------------------------------- */
/** Contact Section Styles **/
.contact {
	padding-block: var(--space-section-half);
}

.contact .inside-section {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-section-double);
	max-width: var(--width-d);
	width: 100%;
}

.contact .contact-header {
	margin-bottom: var(--space-section-half);
}

.contact .contact-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-section-half);
}

.contact a.contact-content,
.contact-content a {
	font-family: var(--body-font);
	font-size: var(--body-d);
}

.contact .contact-note {
	color: var(--color-text);
	margin-top: var(--space-0_5);
	max-width: 25ch;
}

@media (max-width: 1023px) {
	.contact .inside-section {
		grid-template-columns: repeat(1, 1fr);
	}

	.contact .contact-header p {
		max-width: 68ch;
	}
}

@media (max-width: 929px) {
	.contact {
		margin-top: var(--space-5);
		padding-top: 0;

	}
}

@media (max-width: 420px) {
	.contact .inside-section {
		gap: var(--space-section-half);
	}

	.contact .contact-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

/** Contact Form Styles **/
form.frm-fluent-form label {
	color: var(--color-headline);
	font-family: var(--body-font);
	font-size: var(--button);
	text-transform: uppercase;
}

form.frm-fluent-form .ff-el-group {
	margin-bottom: var(--space-section-half);
}
form.frm-fluent-form .ff-el-group.ff-custom_html {
	margin-bottom: 0;
}

.fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label:after {
	color: var(--color-accent);
}

form.frm-fluent-form .ff-el-input--label {
	margin-bottom: var(--space-0_25);
}

/* Inputs, Text Areas & Selects */
form.frm-fluent-form input,
form.frm-fluent-form textarea,
form.frm-fluent-form select {
	background-color: var(--color-background) !important;
	border: none !important;
	border-bottom: 1px solid var(--color-text) !important;
	border-radius: 0 !important;
	color: var(--color-headline) !important;
	font-family: var(--body-font) !important;
	font-size: var(--navigation) !important;
	padding: 0.75rem 0 !important;
	text-transform: uppercase !important;
	-webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	-ms-border-radius: 0 !important;
	-o-border-radius: 0 !important;
}

form.frm-fluent-form input::placeholder,
form.frm-fluent-form textarea::placeholder,
form.frm-fluent-form select::placeholder {
	color: var(--color-text) !important;
}

form.frm-fluent-form input:focus,
form.frm-fluent-form textarea:focus,
form.frm-fluent-form select:focus {
	border-color: var(--color-headline) !important;
}

/* Success message */
.ff-message-success {
	border-color: var(--color-secondary);
	color: var(--color-headline);
	font-family: var(--body-font);
	font-size: var(--body-d);
	font-weight: var(--body-font-weight);
	line-height: 1.5;
	text-transform: uppercase;
}



/** ----------------------------------------
 ** Posts
 ** ----------------------------------------
    Styles for Posts archives, loops
    and singles.
 ** --------------------------------------- */

/** Post Single Template */
/* Post Hero */
.post-hero {
	padding-top: var(--space-section-half);
	padding-bottom: var(--space-4);
}

.post-hero .inside-section {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	max-width: 950px;
	row-gap: var(--space-4);
}

.post-hero .post-header {
	margin-inline: auto;
	max-width: var(--width-s);
	width: 100%;
}

.post-hero .post-header .post-term {
	font-size: var(--body-s);
	text-transform: uppercase;
	margin-bottom: var(--space-0_75);
}

.post-hero .post-header .post-term a {
	color: var(--color-text);
}

.post-hero .post-header .post-title {
	margin-bottom: var(--space-2);
}

.post-hero .post-meta {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: var(--space-1_5);
	justify-content: space-between;
	width: 100%;
}

.post-hero .post-meta p {
	color: var(--color-text);
}

.post-hero .post-meta .post-author-wrap {
	align-items: center;
	display: flex;
	gap: 5px;
	justify-content: flex-start;
}

.post-hero .post-meta .post-author-wrap p {
	margin-bottom: 0;
}

@media (max-width: 929px) {
	.post-hero {
		margin-top: var(--space-5);
	}
}

/* Post Content */
.single-post #page {
	padding-inline: var(--space-inline);
	padding-bottom: var(--space-section-half);
}

.single-post #page :where(p, h1, h2, h3, h4, h5, h6,
	ul, ol, blockquote, pre, table, code,
	.wp-block-pullquote) {
	max-inline-size: var(--width-s);
	margin-inline: auto;
}

.single-post #page :where(.wp-block-image, .wp-block-video) {
	margin-bottom: 0;
	padding-block: var(--space-2_5) var(--space-4);

}

.single-post #page :is(h2, h3, h4, h5, h6) {
	margin-top: var(--space-xxl);
}

.single-post #page> :is(h2, h3, h4, h5, h6):first-child {
	margin-top: 0;
}

.single-post #page p {
	line-height: 1.8;
	max-width: 68ch;
}

/* Related Posts - Borrows a lot of styles from post archive template */
.single-post .related-posts .section-header {
	border-top: 1px solid var(--color-tertiary);
	padding-top: var(--space-section);
	max-width: var(--width-d);
}

.single-post #page .image-grid {
	padding-inline: 0;
}

.single-post #page .image-grid .inside-section.image-count-2,
.single-post #page .image-grid .inside-section.image-count-3 {
	grid-template-columns: repeat(2, 1fr);
}

.single-post #page .image-grid .image-column:nth-child(3) {
	grid-column: 1 / -1;
}

@media (max-width: 768px) {

	.single-post #page .image-grid .inside-section.image-count-2,
	.single-post #page .image-grid .inside-section.image-count-3 {
		grid-template-columns: repeat(1, 1fr);
	}
}

/** Post Archive Template */
/* Post Archive Hero */
.post-archive-hero {
	padding-top: var(--space-section-half);
	padding-bottom: var(--space-section);
}

.post-archive-hero h1 {
	color: var(--color-accent);
}

/* Post Archive Query Loop */
.post-archive {
	padding-top: var(--space-section-half);
	padding-bottom: var(--space-section-half);
}

.post-archive h1 {
	color: var(--color-accent);
}

.post-archive .inside-section {
	max-width: var(--width-d);
}

.post-archive .grid {
	display: grid;
	gap: var(--space-4) var(--space-section-half);
	grid-template-columns: repeat(3, 1fr);
}

.post-archive .post-card {
	display: flex;
	flex-direction: column;
	row-gap: var(--space-1_5);
}

.post-archive .featured-image {
	aspect-ratio: 1/1;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.post-archive .content-wrap {
	display: flex;
	flex-direction: column;
	row-gap: var(--space-1);
}

.post-archive h2 {
	margin-bottom: 0;
}

.post-archive .post-meta {
	align-items: center;
	display: flex;
	gap: var(--space-1_25);
	justify-content: space-between;
}

.post-archive .post-meta p {
	color: var(--color-text);
	margin-bottom: 0;
	text-transform: uppercase;
}

.post-archive .post-meta .post-time-wrapper {
	text-align: right;
}

@media (max-width: 1024px) {
	.post-archive .grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.post-archive {
		padding-top: var(--space-inline);
	}

	.post-archive-hero {
		margin-top: var(--space-5);
	}

	.post-archive .grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

/* Post Archive Filter */
.post-archive-filter .inside-section {
	align-items: center;
	display: flex;
	justify-content: center;
	max-width: var(--width-d);
}

.post-archive-filter .filter-wrap {
	align-items: center;
	gap: var(--space-0_5);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.post-archive-filter .filter-title {
	font-size: var(--navigation);
	line-height: var(--navigation);
	margin-bottom: 0;
	text-transform: uppercase;
}

.post-archive-filter ul.category-menu {
	column-gap: var(--space-0_5);
	margin-left: 0 !important;
}

.post-archive-filter ul.category-menu li.menu-item a {
	border: 1px solid var(--color-text);
	font-size: var(--button);
	line-height: var(--button);
	padding: var(--space-0_5) var(--space-0_5);
	text-transform: uppercase;
}

.post-archive-filter ul.category-menu li.menu-item a:hover {
	background-color: var(--color-secondary);
	color: var(--color-secondary-contrast);
}

.post-archive-filter ul.category-menu li.menu-item.current-menu-item a {
	background-color: var(--color-accent);
	color: var(--color-accent-contrast);
	border-color: var(--color-accent);
}

@media (max-width: 767px) {
	.post-archive-filter .inside-section {
		justify-content: flex-start;
	}

	.post-archive-filter .filter-wrap {
		align-items: flex-start;
	}

	.post-archive-filter ul.category-menu {
		display: inline-flex;
		flex-wrap: wrap;
		gap: var(--space-0_5);
	}

	.post-archive-filter ul.category-menu li.menu-item {
		flex: 0 0 auto;
	}

	.post-archive-filter ul.category-menu li.menu-item a {
		padding: var(--space-0_5);
		white-space: nowrap;
	}
}

/** ----------------------------------------
 ** Events CPT
 ** ----------------------------------------
    Styles for Events CPT archives, loops
    and singles.
 ** --------------------------------------- */

/** Event Single Template */
.event-single-template {
	padding-top: var(--space-section-half);
}

.event-single-template .inside-section {
	border-bottom: 1px solid var(--color-secondary);
	display: grid;
	gap: var(--space-section-double);
	grid-template-columns: repeat(2, 1fr);
	max-width: var(--width-d);
	padding-bottom: var(--space-section);
}

.event-single-template .featured-image {
	aspect-ratio: 1/1;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.event-single-template .text-col {
	display: flex;
	flex-direction: column;
	row-gap: var(--space-section-half);
}

.event-single-template .headline {
	margin-bottom: 0;
}

.event-single-template .event-meta {
	align-items: flex-start;
	display: flex;
	gap: var(--space-1_25);
	justify-content: space-between;
}

.event-single-template .event-meta p {
	margin-bottom: 0;
	text-transform: uppercase;
}

.event-single-template .event-meta .event-time-wrapper {
	text-align: right;
}

.event-single-template .button {
	font-size: var(--body-d);
	padding-block: var(--space-0_75);
	text-align: center;
}

@media (max-width: 992px) {
	.event-single-template .inside-section {
		gap: var(--space-section);
	}

	.event-single-template .text-col {
		row-gap: var(--space-2);
	}

	.event-single-template .event-meta {
		flex-direction: column;
		gap: var(--space-0_75);
	}

	.event-single-template .event-meta .event-time-wrapper {
		text-align: left;
	}
}

@media (max-width: 768px) {
	.event-single-template .inside-section {
		gap: var(--space-section-half);
		grid-template-columns: repeat(1, 1fr);
	}
}

@media (max-width: 929px) {
	.event-single-template {
		margin-top: var(--space-5);
		padding-top: 0;
	}
}

/** ----------------------------------------
 ** Careers CPT
 ** ----------------------------------------
    Styles for Careers CPT archives, loops
    and singles.
 ** --------------------------------------- */
/** Career Single Template */
.careers-single-template {
	padding-block: var(--space-section-half);
}

.careers-single-template .inside-section {
	align-items: flex-start;
	column-gap: var(--space-section-double);
	display: flex;
	justify-content: space-between;
	max-width: var(--width-d);
}

.careers-single-template .content-wrap {
	max-width: 800px;
	width: 100%;
}

.careers-single-template .careers-header {
	display: flex;
	flex-direction: column;
	margin-bottom: var(--space-4);
	row-gap: var(--space-0_75);
}

.careers-single-template .careers-header h1 {
	margin-bottom: 0;
}

.careers-single-template .careers-role-meta {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: 4px;
	justify-content: flex-start;
}

.careers-single-template .careers-role-meta p {
	margin-bottom: 0;
	text-transform: uppercase;
}

.careers-single-template .careers-role-meta .careers-role-meta__time-wrapper {
	text-align: right;
}

.careers-single-template .sidebar-wrap {
	max-width: 440px;
	width: 100%;
}

.careers-single-template .careers-sidebar-content {
	align-items: flex-start;
	border: 1px solid var(--color-tertiary);
	display: flex;
	flex-direction: column;
	gap: var(--space-1_75);
	padding: var(--space-2_25) var(--space-2);
}

.careers-single-template .careers-sidebar-content h2 {
	margin-bottom: 0;
}

.careers-single-template .careers-sidebar-content p {
	margin-bottom: 0;
	text-transform: uppercase;
}

.careers-single-template .careers-sidebar-content p.careers-detail__key {
	color: var(--color-text);
}

.careers-single-template .button {
	font-size: var(--body-d);
	padding-block: var(--space-0_75);
	text-align: center;
	width: 100%;
}

.careers-single-template .careers-header.mobile {
	display: none;
}

.careers-single-template .careers-description {
	margin-bottom: var(--space-1_5);
}

.careers-single-template .careers-description :is(h2, h3, h4, h5, h6) {
	margin-top: var(--space-xxl);
}

@media (max-width: 1320px) {
	.careers-single-template .inside-section {
		gap: var(--space-section);
	}
}

@media (max-width: 1024px) {
	.careers-single-template .inside-section {
		flex-direction: column-reverse;
		gap: var(--space-section-half);
	}

	.careers-single-template .careers-header {
		margin-bottom: var(--space-section-half);
	}

	.careers-single-template .careers-header.desktop {
		display: none;
	}

	.careers-single-template .careers-header.mobile {
		display: flex;
	}

	.careers-single-template .sidebar-wrap {
		max-width: 100%;
		width: 100%;
	}

	.careers-single-template .careers-sidebar-content {
		padding: var(--space-1_5) var(--space-1_5);
	}
}

@media (max-width: 929px) {
	.careers-single-template {
		margin-top: var(--space-5);
		padding-top: 0;
	}
}

/** ----------------------------------------
 ** Press CPT
 ** ----------------------------------------
    Styles for Press CPT Singles
 ** --------------------------------------- */
/** Post Single Template */
/* Post Hero */
.press-hero {
	padding-top: var(--space-section-half);
	padding-bottom: var(--space-4);
}

.press-hero .inside-section {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	max-width: 950px;
	row-gap: var(--space-4);
}

.press-hero .press-header {
	margin-inline: auto;
	max-width: var(--width-s);
	width: 100%;
}

.press-hero .press-header .post-title {
	margin-bottom: 0;
}

@media (max-width: 929px) {
	.press-hero {
		margin-top: var(--space-5);
	}
}

/* Post Content */
.single-press #page {
	padding-inline: var(--space-inline);
	padding-bottom: var(--space-section-half);
}

.single-press #page :where(p, h1, h2, h3, h4, h5, h6,
	ul, ol, blockquote, pre, table, code,
	.wp-block-pullquote) {
	max-inline-size: var(--width-s);
	margin-inline: auto;
}

.single-press #page :where(.wp-block-image, .wp-block-video) {
	margin-bottom: 0;
	padding-block: var(--space-2_5) var(--space-4);

}

.single-press #page :is(h2, h3, h4, h5, h6) {
	margin-top: var(--space-xxl);
}

.single-press #page> :is(h2, h3, h4, h5, h6):first-child {
	margin-top: 0;
}

.single-press #page p {
	line-height: 1.8;
	max-width: 68ch;
}


/** ----------------------------------------
 ** Booking Pages
 ** ----------------------------------------
    Styles the Booking Pages
 ** --------------------------------------- */
.booking {
	padding-block: var(--space-section-half);
}

.booking .inside-section {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-section-double);
	max-width: var(--width-d);
}

.booking .widget-wrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}

@media (max-width: 929px) {
	.booking {
		margin-top: var(--space-5);
		padding-block: 0 var(--space-section-half);
	}
}

@media (max-width: 768px) {
	.booking .inside-section {
		gap: var(--space-section-half);
		grid-template-columns: repeat(1, 1fr);
	}
}


/** ----------------------------------------
 ** Addify Gift Card Custom Amounts
 ** ----------------------------------------
    Styles the Addify Gift Card Custom Amounts
 ** --------------------------------------- */
.afgc-physical-custom-amount,
.afgc-virtual-custom-amount {
	display: none !important;
	opacity: 0;
	max-height: 0;
	overflow: hidden;
	transition: all 0.35s ease;
}

.afgc-physical-custom-amount.is-visible,
.afgc-virtual-custom-amount.is-visible {
	display: block !important;
	opacity: 1;
	max-height: 200px; /* adjust for your layout */
}


/** ----------------------------------------
 ** Empty State
 ** ----------------------------------------
    Styles the Empty State
 ** --------------------------------------- */
.empty-state {
    background-color: var(--color-bg);
    border-radius: 0;
	grid-column: 1 / -1;
    padding: var(--space-section-half) var(--space-inline);
	text-align: center;
	width: 100%;
}

.empty-state .headline {
	font-family: var(--headline-font);
	font-size: var(--headline-h2);
	font-weight: var(--headline-font-weight);
	line-height: 1.2;
	text-transform: uppercase;
}

.empty-state .text {
	color: var(--color-text);
	font-size: var(--body-d);
	font-weight: var(--body-font-weight);
	line-height: 1.5;
	margin-inline: auto;
	max-width: 68ch;
}


/** ----------------------------------------
 ** Success Sections
 ** ----------------------------------------
    Styles the Success Sections
 ** --------------------------------------- */
.section.success {
	padding-block: var(--space-section-half);
}

.section.success .inside-section {
	align-items: center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-section-double);
	max-width: var(--width-d);
}

.section.success .text-col {
	display: flex;
	flex-direction: column;
	gap: var(--space-section-half);
	justify-content: center;
}

.section.success h1 {
	font-size: var(--headline-xxl);
	font-weight: var(--headline-font-weight);
	line-height: 1.05;
	margin-bottom: 0;
	text-transform: uppercase;
}

.section.success .text p {
	font-size: var(--body-l)
}

.section.success .menu-wrap {
	border-top: 1px solid var(--color-svg);
	padding-top: var(--space-section-half);
}

.section.success .menu-wrap p {
	font-size: var(--body-l);
	margin-bottom: var(--space-1);
}

.section.success .gb-navigation ul {
	align-items: center;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-left: 0!important;
	row-gap: var(--space-0_5);
	column-gap: var(--space-1_5);
}

.section.success .gb-navigation ul li a {
	color: var(--color-headline);
	font-size: var(--navigation);
	font-weight: var(--body-font-weight);
	line-height: 1.5;
	padding: 0;
	text-decoration: underline;
	text-transform: uppercase;
}

.section.success .gb-navigation ul li a:hover,
.section.success .gb-navigation ul li a:focus {
	color: var(--color-link-hover);
}

.section.success .contact-wrap {
	align-items: center;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-left: 0!important;
	row-gap: var(--space-0_5);
	column-gap: var(--space-1_5);
}

.section.success .contact-wrap a {
	color: var(--color-headline);
	font-size: var(--navigation);
	font-weight: var(--body-font-weight);
	line-height: 1.5;
	padding: 0;
	text-decoration: underline;
	text-transform: uppercase;
}

.section.success .address {
	margin-bottom: var(--space-1_5);
}

@media (max-width: 929px) {
	.section.success .inside-section {
		grid-template-columns: repeat(1, 1fr);
		gap: var(--space-inline);
	}
}


/** ----------------------------------------
 ** Policies Pages
 ** ----------------------------------------
    Styles the Policies Page
 ** --------------------------------------- */
.policies.section .inside-section {
	padding-block: var(--space-section-half);
	margin-inline: auto;
	max-width: var(--width-s);
	width: 100%;
}


/** ----------------------------------------
 ** Gift Vouchers Page
 ** ----------------------------------------
    Styles the Gift Vouchers
 ** --------------------------------------- */
.gift-vouchers-link-boxes a {
	background-color: var(--text-400);
	border: 1px solid var(--text-200);
	padding-block: var(--space-section-half);
	padding-inline: var(--space-inline);
}

/** ----------------------------------------
 ** Policies Pages
 ** ----------------------------------------
    Styles the Policies Page
 ** --------------------------------------- */
 .policies.section .inside-section {
	padding-block: var(--space-section-half);
	margin-inline: auto;
	max-width: var(--width-s);
	width: 100%;
}


/** ----------------------------------------
 ** Coming Soon Page
 ** ----------------------------------------
    Styles the Coming Soon Page
 ** --------------------------------------- */
.coming-soon {
	height: 100%;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: var(--color-bg);
	position: relative;
	text-align: center;
}

.coming-soon .inside-section {
	margin-block: auto;
	max-width: var(--width-s);
	padding-top: var(--space-section);
	padding-bottom: calc(var(--space-section) * 2.25);
	width: 100%;
}

.coming-soon .icon {
	margin-bottom: var(--space-section-half);
}

.coming-soon .icon svg {
	color: var(--color-svg);
	height: var(--space-6);
}

.coming-soon .headline {
	margin-bottom: var(--space-1_5);
}

.coming-soon p {
	font-size: var(--body-l)
}

.coming-soon .footer {
	margin-top: auto;
	padding-block: var(--space-section-half);
	position: absolute;
	bottom: 0;
}

.coming-soon .footer .logo {
	margin-bottom: var(--space-1);
}

.coming-soon .footer .logo svg {
	color: var(--color-svg);
	height: var(--space-3);
}

.coming-soon .footer .social-navigation ul {
	margin: 0!important;
}

@media (max-width: 768px) {
	.coming-soon .icon {
		margin-bottom: var(--space-1);
	}

	.coming-soon .icon svg {
		height: var(--space-4);
	}

	.coming-soon .headline {
		margin-bottom: var(--space-1);
	}

	.coming-soon .footer .logo {
		margin-bottom: var(--space-0_5);
	}
	
	.coming-soon .footer .logo svg {
		height: var(--space-2_5);
	}
}