/*!
Theme Name: Donovan Manor
Theme URI: https://donovanmanor.com/
Author: TPD Design House
Author URI: https://tpddesignhouse.com
Description: A custom theme by TPD Design House
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: tpd
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

TPD is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
@font-face {
  font-family: "AlpineciaReg";
  src: url("webfonts/Alpinecia-Regular.woff2") format("woff2"), url("webfonts/Alpinecia-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
@font-face {
  font-family: "AlpineciaItal";
  src: url("webfonts/Alpinecia-Italic.woff2") format("woff2"), url("webfonts/Alpinecia-Italic.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: clamp(13px, 12.1310160428px + 0.2228163993vw, 15.5px);
}

body,
button,
input,
select,
optgroup,
textarea {
  color: #2f3e4c;
  font-family: "freight-text-pro", serif;
  line-height: 1.7;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  margin: 0;
}

p {
  margin: 0 0 0.75em 0;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0;
  font-style: normal;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.7;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #2f3e4c;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
html {
  scroll-behavior: smooth;
}

body {
  background: #f7f5f0;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

.price-table-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
}

.price-table-header {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.price-table-header:before, .price-table-header:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.price-table-header:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.price-table-header:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}
.price-table-header h3 {
  line-height: 1;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
  font-family: "freight-text-pro", serif;
}

.price-table {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.35rem;
}

.price-table .row {
  display: grid;
  grid-template-columns: 12fr 2fr;
  grid-template-rows: auto auto;
  font-size: 112%;
  line-height: 1.7;
  align-items: first baseline;
}
@media only screen and (min-width : 768px) {
  .price-table .row {
    grid-template-columns: 4fr 10fr 3fr;
    grid-template-rows: auto;
  }
}

.price-table .row.border {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.price-table .row.border:before, .price-table .row.border:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.price-table .row.border:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.price-table .row.border:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}

.price-table .row-label {
  grid-column: 1/-1;
}
.price-table .row-label h4 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin: 1rem 0 0 0;
  padding: 0;
}
@media only screen and (min-width : 768px) {
  .price-table .row-label {
    grid-column: auto/auto;
    padding-right: 2rem;
  }
}

.price-table .row-text p {
  margin: 0;
  text-box-trim: start; /* Trims line-height space above the first line */
  text-box-edge: cap; /* Aligns directly to the capital letter height */
}
@media only screen and (min-width : 768px) {
  .price-table .row-text {
    padding-right: 2rem;
  }
}

.price-table .row-price {
  text-align: right;
}
.price-table .row-price em {
  font-weight: 700;
}

@media only screen and (min-width : 768px) {
  .icon-table {
    -moz-columns: 2;
         columns: 2;
  }
}

.icon-table-item {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  margin-bottom: 35px;
}
.icon-table-item .image {
  width: 15%;
  max-width: 80px;
}
.icon-table-item img {
  display: block;
  margin: 0 auto;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}
.icon-table-item .text {
  width: 85%;
  padding-left: 5%;
}
.icon-table-item .text p:last-of-type {
  margin-bottom: 0;
}
.icon-table-item .name {
  display: block;
  line-height: 1;
  font-size: clamp(24px, 21.2192513369px + 0.7130124777vw, 32px);
  margin-bottom: 0.15em;
  font-weight: 300;
  font-family: "freight-text-pro", serif;
}
.icon-table-item p {
  font-size: 112%;
}

/* Links
--------------------------------------------- */
a {
  color: #2f3e4c;
}
a:visited {
  color: #2f3e4c;
}
a:hover, a:focus, a:active {
  color: #2f3e4c;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #2f3e4c;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}

select {
  border: 1px solid #2f3e4c;
}

textarea {
  width: 100%;
}

/*
*
*
* GRAVITY FORMS
*
*/
.gform_required_legend {
  display: none;
}

.gform_wrapper.gravity-theme .gform-body .gfield_label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin-bottom: 2px;
  color: #f7f5f0;
}
.gform_wrapper.gravity-theme .gform-body .gfield_label .gfield_required {
  color: white;
}

.gform_wrapper.gravity-theme .gform-body input[type=color],
.gform_wrapper.gravity-theme .gform-body input[type=date],
.gform_wrapper.gravity-theme .gform-body input[type=datetime-local],
.gform_wrapper.gravity-theme .gform-body input[type=datetime],
.gform_wrapper.gravity-theme .gform-body input[type=email],
.gform_wrapper.gravity-theme .gform-body input[type=month],
.gform_wrapper.gravity-theme .gform-body input[type=number],
.gform_wrapper.gravity-theme .gform-body input[type=password],
.gform_wrapper.gravity-theme .gform-body input[type=search],
.gform_wrapper.gravity-theme .gform-body input[type=tel],
.gform_wrapper.gravity-theme .gform-body input[type=text],
.gform_wrapper.gravity-theme .gform-body input[type=time],
.gform_wrapper.gravity-theme .gform-body input[type=url],
.gform_wrapper.gravity-theme .gform-body input[type=week],
.gform_wrapper.gravity-theme .gform-body select,
.gform_wrapper.gravity-theme .gform-body textarea {
  padding: 6px 18px;
  border-radius: 0px;
  border: 1px solid #2f3e4c;
  background: rgb(242.5652173913, 239.4565217391, 231.6847826087);
}
.gform_wrapper.gravity-theme .gform-body input[type=color]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=date]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=datetime-local]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=datetime]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=email]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=month]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=number]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=password]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=search]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=tel]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=text]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=time]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=url]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body input[type=week]::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body select::-moz-placeholder, .gform_wrapper.gravity-theme .gform-body textarea::-moz-placeholder {
  font-style: italic;
}
.gform_wrapper.gravity-theme .gform-body input[type=color]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=date]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=datetime-local]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=datetime]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=email]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=month]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=number]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=password]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=search]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=tel]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=text]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=time]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=url]::placeholder,
.gform_wrapper.gravity-theme .gform-body input[type=week]::placeholder,
.gform_wrapper.gravity-theme .gform-body select::placeholder,
.gform_wrapper.gravity-theme .gform-body textarea::placeholder {
  font-style: italic;
}

.gform_wrapper.gravity-theme .gform-body select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url("img/carat-right.svg") no-repeat, rgb(242.5652173913, 239.4565217391, 231.6847826087);
  background-size: 12px 16px;
  background-position: calc(100% - 1rem) center;
}
.gform_wrapper.gravity-theme .gform-body select option.gf_placeholder {
  font-style: italic !important;
}

.gform_wrapper.gravity-theme .gform_footer {
  margin: 0 !important;
}

.gform_wrapper.gravity-theme .gform_footer input[type=submit] {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.gform_wrapper.gravity-theme .gform_footer input[type=submit]:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
.gform_wrapper.gravity-theme .gform_footer input[type=submit] {
  width: 100%;
}

.gform_wrapper.gravity-theme .gform-body .gform-field-label--type-sub {
  display: none;
}

.gform_wrapper.gravity-theme .gform-body .ginput_container_date input {
  width: 100%;
}

/*
*
*
* TRIPLESEAT FORM
*
*/
body #tripleseat_embed_form_inline {
  position: relative;
}

body #tripleseat_dynamic_embed_form .errorExplanation {
  width: 100%;
  padding: 1rem;
}
body #tripleseat_dynamic_embed_form .errorExplanation h2 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
}
body #tripleseat_dynamic_embed_form .errorExplanation p {
  margin: 0 auto;
}

body #tripleseat_embed_form_inline .row_contact_header,
body #tripleseat_embed_form_inline .row_details_header {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
  color: #f7f5f0;
  margin: 1.4em 0 4px 0;
}

body #tripleseat_embed_form_inline .tripleseat_field {
  width: 100%;
  margin: 8px 0;
}
@media only screen and (min-width : 960px) {
  body #tripleseat_embed_form_inline .tripleseat_field {
    margin: 12px 0;
  }
}

body #tripleseat_dynamic_embed_form .tripleseat-dlf-field-group {
  padding-bottom: 12px;
}
@media only screen and (min-width : 768px) {
  body #tripleseat_dynamic_embed_form .tripleseat-dlf-field-group {
    padding-bottom: 20px;
  }
}

body #tripleseat_dynamic_embed_form label,
body #tripleseat_embed_form_inline label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin-bottom: 2px;
  color: #f7f5f0;
  text-align: left;
}

body #tripleseat_dynamic_embed_form input[type=text],
body #tripleseat_dynamic_embed_form input[type=email],
body #tripleseat_dynamic_embed_form input[type=tel],
body #tripleseat_dynamic_embed_form input[type=date],
body #tripleseat_dynamic_embed_form select,
body #tripleseat_dynamic_embed_form textarea,
body #tripleseat_embed_form_inline input[type=text],
body #tripleseat_embed_form_inline input[type=email],
body #tripleseat_embed_form_inline input[type=tel],
body #tripleseat_embed_form_inline input[type=date],
body #tripleseat_embed_form_inline select,
body #tripleseat_embed_form_inline textarea {
  width: 100% !important;
  padding: 6px 12px;
  border-radius: 0px;
  border: 1px solid #2f3e4c;
  background: rgb(242.5652173913, 239.4565217391, 231.6847826087);
}
body #tripleseat_dynamic_embed_form input[type=text]::-moz-placeholder, body #tripleseat_dynamic_embed_form input[type=email]::-moz-placeholder, body #tripleseat_dynamic_embed_form input[type=tel]::-moz-placeholder, body #tripleseat_dynamic_embed_form input[type=date]::-moz-placeholder, body #tripleseat_dynamic_embed_form select::-moz-placeholder, body #tripleseat_dynamic_embed_form textarea::-moz-placeholder, body #tripleseat_embed_form_inline input[type=text]::-moz-placeholder, body #tripleseat_embed_form_inline input[type=email]::-moz-placeholder, body #tripleseat_embed_form_inline input[type=tel]::-moz-placeholder, body #tripleseat_embed_form_inline input[type=date]::-moz-placeholder, body #tripleseat_embed_form_inline select::-moz-placeholder, body #tripleseat_embed_form_inline textarea::-moz-placeholder {
  font-style: italic;
}
body #tripleseat_dynamic_embed_form input[type=text]::placeholder,
body #tripleseat_dynamic_embed_form input[type=email]::placeholder,
body #tripleseat_dynamic_embed_form input[type=tel]::placeholder,
body #tripleseat_dynamic_embed_form input[type=date]::placeholder,
body #tripleseat_dynamic_embed_form select::placeholder,
body #tripleseat_dynamic_embed_form textarea::placeholder,
body #tripleseat_embed_form_inline input[type=text]::placeholder,
body #tripleseat_embed_form_inline input[type=email]::placeholder,
body #tripleseat_embed_form_inline input[type=tel]::placeholder,
body #tripleseat_embed_form_inline input[type=date]::placeholder,
body #tripleseat_embed_form_inline select::placeholder,
body #tripleseat_embed_form_inline textarea::placeholder {
  font-style: italic;
}
body #tripleseat_dynamic_embed_form input[type=text]:focus-visible,
body #tripleseat_dynamic_embed_form input[type=email]:focus-visible,
body #tripleseat_dynamic_embed_form input[type=tel]:focus-visible,
body #tripleseat_dynamic_embed_form input[type=date]:focus-visible,
body #tripleseat_dynamic_embed_form select:focus-visible,
body #tripleseat_dynamic_embed_form textarea:focus-visible,
body #tripleseat_embed_form_inline input[type=text]:focus-visible,
body #tripleseat_embed_form_inline input[type=email]:focus-visible,
body #tripleseat_embed_form_inline input[type=tel]:focus-visible,
body #tripleseat_embed_form_inline input[type=date]:focus-visible,
body #tripleseat_embed_form_inline select:focus-visible,
body #tripleseat_embed_form_inline textarea:focus-visible {
  border-color: #afc2cc;
  outline: none !important;
}

body #tripleseat_dynamic_embed_form .tripleseat-dlf-phone-container {
  width: 100%;
  max-width: 100% !important;
}

body #tripleseat_dynamic_embed_form select,
body #tripleseat_embed_form_inline .tripleseat_field > select {
  margin: 0 !important;
  padding: 6px 18px;
  width: 100% !important;
  max-width: 100% !important;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url("img/carat-right.svg") no-repeat, rgb(242.5652173913, 239.4565217391, 231.6847826087);
  background-size: 12px 16px;
  background-position: calc(100% - 1rem) center;
}

body #tripleseat_embed_form_inline select.ui-datepicker-month,
body #tripleseat_embed_form_inline select.ui-datepicker-year {
  float: none;
}

body #tripleseat_dynamic_embed_form .tripleseat-dlf-date-wrapper {
  width: 100%;
  max-width: 100%;
}

body #tripleseat_dynamic_embed_form .tripleseat-dlf-help-text {
  color: #f7f5f0;
  text-align: left;
  margin-top: 0;
  margin-bottom: -6px;
}

body #tripleseat_dynamic_embed_form button[type=submit],
body #tripleseat_embed_form_inline input[type=submit] {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
body #tripleseat_dynamic_embed_form button[type=submit]:hover,
body #tripleseat_embed_form_inline input[type=submit]:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
body #tripleseat_dynamic_embed_form button[type=submit],
body #tripleseat_embed_form_inline input[type=submit] {
  width: 100%;
}

#tripleseat_link,
body #tripleseat_embed_form_inline .ts_powered_by {
  text-align: center;
  font-size: 85%;
}

/* Removes the green dotted wrapper and outlines from Tripleseat fields */
.ts-form-control,
.ts-field-wrapper,
.ts-input-group,
input,
select,
textarea {
  outline: none !important;
  border-style: solid !important; /* Forces solid borders instead of dotted */
}

/* Specifically targets accessibility wrapper rings */
*[style*=dotted] {
  border-style: solid !important;
  outline: none !important;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
/*
.site-header {
  width: 100%;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  transform: translateY(0);
  transition: all ease-in-out 0.35s;
  transition-delay: 0.4s;
}

.site-branding {
  padding: 15px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  @media only screen and (min-width : 768px) {
    padding: 30px;
  }
  @media only screen and (min-width : 1280px) {
    padding: 45px 45px 0px 45px;
  }
}
*/
.site-header {
  width: 100%;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  transform: translateY(0);
  transition: transform 0.4s ease, padding 0.3s ease, background-color 0.3s ease;
  background-color: transparent;
  padding: 15px;
}
@media only screen and (min-width : 768px) {
  .site-header {
    padding: 30px;
  }
}
@media only screen and (min-width : 1280px) {
  .site-header {
    padding: 40px 40px 0px 40px;
  }
}

.site-header.header--hidden {
  transform: translateY(-100%);
}

.site-header.header--scrolled {
  background-color: #afc2cc;
  border-bottom: 1.5px solid #2f3e4c;
}
@media only screen and (min-width : 768px) {
  .site-header.header--scrolled {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .site-header.header--scrolled .site-branding .left svg {
    width: 42px;
    height: 35px;
  }
  .site-header.header--scrolled .site-branding .left svg path {
    fill: #2f3e4c;
  }
  .site-header.header--scrolled .site-branding .right .nav-toggle {
    color: #2f3e4c;
  }
}

.site-header.header--at-top {
  transition: transform 0.45s ease-in-out, background-color 0.35s ease, padding 0.35s ease;
}

.site-branding {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}

.site-branding .left a {
  display: block;
  margin: 0;
}
.site-branding .left svg {
  width: 45px;
  height: 37px;
}
.site-branding .left svg path {
  fill: #2f3e4c;
}
@media only screen and (min-width : 768px) {
  .site-branding .left svg {
    width: 60px;
    height: 49px;
  }
}

.site-branding .right .nav-toggle {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.site-branding .right .nav-toggle .label {
  display: none;
}
.site-branding .right .nav-toggle svg {
  font-size: 1.5rem;
}
@media only screen and (min-width : 768px) {
  .site-branding .right .nav-toggle .label {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.275em;
    font-family: "Red Hat Display", sans-serif;
    font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
    font-weight: 700;
    margin-right: 1rem;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
  .site-branding .right .nav-toggle .label.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}

body.nav-active {
  overflow: hidden;
}

#site-navigation {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  will-change: transform;
  z-index: 1000;
  pointer-events: none;
  transition: background 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  overflow: hidden;
}

body.nav-active #site-navigation {
  background: rgba(0, 0, 0, 0.25);
  pointer-events: auto;
}

#site-navigation .wrapper {
  overflow-y: auto;
  width: 85%;
  max-width: 400px;
  height: 100%;
  margin-left: auto;
  transform: translateX(100%);
  display: flex;
  flex-flow: row nowrap;
}
#site-navigation .wrapper ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.nav-active #site-navigation .wrapper {
  transition: transform 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  transform: translateX(0);
}

#site-navigation .left-border,
#site-navigation .right-border {
  width: 20px;
  height: calc(100% - 40px);
  margin-top: 20px;
  background: #2f3e4c;
  border-top: 2px solid #afc2cc;
  border-bottom: 2px solid #afc2cc;
}

#site-navigation .left-border:before, #site-navigation .left-border:after {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  position: absolute;
}
#site-navigation .left-border:before {
  top: 0;
  border-top: 0px solid transparent;
  border-right: 0px solid transparent;
  border-bottom: 20px solid #2f3e4c;
  border-left: 20px solid transparent;
}
#site-navigation .left-border:after {
  bottom: 0;
  border-top: 20px solid #2f3e4c;
  border-right: 0px solid transparent;
  border-bottom: 0px solid transparent;
  border-left: 20px solid transparent;
}

#site-navigation .right-border {
  background: #2f3e4c;
}
#site-navigation .right-border:before, #site-navigation .right-border:after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  background: #2f3e4c;
}
#site-navigation .right-border:before {
  top: 0;
}
#site-navigation .right-border:after {
  bottom: 0;
}

#site-navigation .content {
  background: #2f3e4c;
  color: #f7f5f0;
  flex: 1;
  position: relative;
  border: 2px solid #afc2cc;
  height: calc(100% - 40px);
  margin-top: 20px;
  display: flex;
  flex-flow: column nowrap;
}
#site-navigation .content:before, #site-navigation .content:after {
  content: "";
  display: block;
  width: calc(100% + 4px);
  height: 20px;
  position: absolute;
  background: #2f3e4c;
  border-left: 2px solid #afc2cc;
  border-right: 2px solid #afc2cc;
  left: -2px;
}
#site-navigation .content:before {
  top: -22px;
}
#site-navigation .content:after {
  bottom: -22px;
}

#site-navigation .content .nav-close {
  cursor: pointer;
  display: block;
  background: transparent;
  border-radius: 0px;
  border: none;
  padding: 15px;
  margin: 0;
  position: absolute;
  z-index: 1000;
  top: 15px;
  right: 15px;
  transition: color ease-in-out 0.3s;
  color: #f7f5f0;
  font-size: 1.5rem;
}
#site-navigation .content .nav-close:hover {
  color: #afc2cc;
}

#site-navigation .main-navigation {
  border-bottom: 2px solid #afc2cc;
  text-align: center;
  padding: 5vh 0;
  flex: 1;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  position: relative;
}
#site-navigation .main-navigation:after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background: #afc2cc;
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform-origin: center center;
  transform: translateX(-50%) rotate(45deg);
}
@media (min-height: 900px) {
  #site-navigation .main-navigation {
    padding: 7vh 0;
  }
}

#site-navigation #pages-menu {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(20px, 16.5240641711px + 0.8912655971vw, 30px);
  margin-bottom: 1.25vh;
  display: flex;
  flex-flow: column;
  justify-content: space-around;
  flex: 1;
  max-height: 700px;
}
#site-navigation #pages-menu a {
  text-decoration: none;
  color: #f7f5f0;
  transition: all ease-in-out 0.25s;
}
#site-navigation #pages-menu a:hover, #site-navigation #pages-menu a:active, #site-navigation #pages-menu a:focus {
  color: #afc2cc;
}
#site-navigation #pages-menu a:visited {
  color: #f7f5f0;
}
#site-navigation #pages-menu a:visited:hover, #site-navigation #pages-menu a:visited:active, #site-navigation #pages-menu a:visited:focus {
  color: #afc2cc;
}

#site-navigation #secondary-menu {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
}
#site-navigation #secondary-menu li {
  display: inline-block;
}
#site-navigation #secondary-menu li:nth-of-type(n + 2) {
  padding-left: 12px;
  margin-left: 6px;
  position: relative;
}
#site-navigation #secondary-menu li:nth-of-type(n + 2):before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  background: #afc2cc;
  position: absolute;
  top: 50%;
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
#site-navigation #secondary-menu a {
  text-decoration: none;
  color: #f7f5f0;
  transition: all ease-in-out 0.25s;
}
#site-navigation #secondary-menu a:hover, #site-navigation #secondary-menu a:active, #site-navigation #secondary-menu a:focus {
  color: #afc2cc;
}
#site-navigation #secondary-menu a:visited {
  color: #f7f5f0;
}
#site-navigation #secondary-menu a:visited:hover, #site-navigation #secondary-menu a:visited:active, #site-navigation #secondary-menu a:visited:focus {
  color: #afc2cc;
}

#site-navigation address {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  padding: 4vh 0;
  text-align: center;
}
#site-navigation address .label {
  display: block;
  margin-bottom: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  color: #afc2cc;
}
@media (min-height: 900px) {
  #site-navigation address {
    padding: 7vh 0;
  }
}

#site-navigation address .info li:first-of-type,
#site-navigation address .info li:nth-of-type(2) {
  display: inline-block;
}
#site-navigation address .info li:nth-of-type(2) {
  padding-left: 8px;
  margin-left: 6px;
  position: relative;
}
#site-navigation address .info li:nth-of-type(2):before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  background: #afc2cc;
  position: absolute;
  top: 50%;
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
#site-navigation address .info li.address {
  margin-top: 3px;
}
#site-navigation address .info a {
  text-decoration: none;
  color: #f7f5f0;
  transition: all ease-in-out 0.25s;
}
#site-navigation address .info a:hover, #site-navigation address .info a:active, #site-navigation address .info a:focus {
  color: #afc2cc;
}
#site-navigation address .info a:visited {
  color: #f7f5f0;
}
#site-navigation address .info a:visited:hover, #site-navigation address .info a:visited:active, #site-navigation address .info a:visited:focus {
  color: #afc2cc;
}

#site-navigation address .social {
  margin: 0;
  padding: 0;
  list-style: none;
}
#site-navigation address .social li {
  display: inline-block;
}
#site-navigation address .social li:nth-of-type(n + 2) {
  margin-left: 1.4rem;
}
#site-navigation address .social {
  margin-top: 20px;
}
#site-navigation address .social a {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  margin: 0;
  width: 24px;
  height: 24px;
  border-radius: 100vmin;
  background: #afc2cc;
  font-size: 16px;
  color: #2f3e4c;
  transition: all ease-in-out 0.3s;
}
#site-navigation address .social a:hover {
  color: #2f3e4c;
  background: #f7f5f0;
  transform: translateY(-3px);
}
#site-navigation address .social a:visited, #site-navigation address .social a:focus, #site-navigation address .social a:active {
  color: #2f3e4c;
}

#site-navigation address .address br {
  display: none;
}

.pagination {
  padding-top: min(6vh, 64px);
  text-align: center;
}
.pagination .nav-links {
  display: inline-flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.pagination .nav-links .page-numbers {
  margin: 0 8px;
}
.pagination .nav-links a.page-numbers {
  text-decoration: none;
  color: #afc2cc;
  transition: all ease-in-out 0.25s;
}
.pagination .nav-links a.page-numbers:hover, .pagination .nav-links a.page-numbers:active, .pagination .nav-links a.page-numbers:focus {
  color: #2f3e4c;
}
.pagination .nav-links a.page-numbers:visited {
  color: #afc2cc;
}
.pagination .nav-links a.page-numbers:visited:hover, .pagination .nav-links a.page-numbers:visited:active, .pagination .nav-links a.page-numbers:visited:focus {
  color: #2f3e4c;
}
.pagination .nav-links a.page-numbers:hover {
  text-decoration: underline;
}
.pagination .nav-links span.current {
  color: #2f3e4c;
}
.pagination .nav-links .prev,
.pagination .nav-links .next {
  border: 1px solid #afc2cc;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  line-height: 24px;
}
.pagination .nav-links .prev.disabled,
.pagination .nav-links .next.disabled {
  color: #afc2cc;
}
.pagination .nav-links .prev:not(.disabled):hover,
.pagination .nav-links .next:not(.disabled):hover {
  background: #2f3e4c;
  color: #f7f5f0;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.post,
.page {
  margin: 0;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

[data-videoplayer] {
  position: relative;
  margin: 0 auto;
  max-width: 1700px;
}

[data-videoplayer] .video {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: initial;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
[data-videoplayer] .video > div,
[data-videoplayer] .video img,
[data-videoplayer] .video video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  [data-videoplayer] .video {
    padding: 8px;
  }
}
[data-videoplayer] .video {
  height: 100%;
  position: relative;
  overflow: hidden;
}

[data-videoplayer] .center-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: rgba(175, 194, 204, 0.75);
  border: 2px solid #2f3e4c;
  color: #2f3e4c;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.2s ease, background 0.2s ease;
  pointer-events: none; /* Allows clicks on the wrapper/video to register cleanly */
}

/* Show center icon on hover over video area or when video is explicitly paused */
[data-videoplayer]:hover .center-play-btn,
[data-videoplayer].is-paused .center-play-btn {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

[data-videoplayer] .center-play-btn:hover {
  background: #afc2cc;
  transform: translate(-50%, -50%) scale(1.08);
}

[data-videoplayer] .video-controls {
  position: absolute;
  bottom: 40px;
  right: 40px;
  display: flex;
  flex-flow: row nowrap;
}
[data-videoplayer] .video-controls button {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  margin: 0 0 0 8px;
  padding: 0;
  width: 36px;
  height: 36px;
  border-radius: 100vmin;
  border: none;
  background: #2f3e4c;
  font-size: 17px;
  color: #afc2cc;
  transition: all ease-in-out 0.3s;
  cursor: pointer;
}
[data-videoplayer] .video-controls button:hover {
  background: #afc2cc;
  color: #2f3e4c;
  transform: translateY(-3px);
}

/* Accordions
--------------------------------------------- */
/*
*
*
* ACCORDION
*
*
*/
.accordion {
  overflow-anchor: none;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.accordion:before, .accordion:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.accordion:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.accordion:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}

.accordion-item button {
  width: 100%;
  padding: 0;
  border-radius: 0;
  background: none;
  border: none;
  color: #f7f5f0;
  line-height: 1;
  cursor: pointer;
  position: relative;
  border-top: 1px solid #afc2cc;
}
.accordion-item button svg {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  stroke: #f7f5f0;
}
.accordion-item button svg line {
  transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion-item button:before, .accordion-item button:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.accordion-item button:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.accordion-item button:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
.accordion-item button h3 {
  padding: 28px 48px 28px 16px;
  font-size: clamp(19px, 15.871657754px + 0.8021390374vw, 28px);
  font-weight: 300;
  font-family: "freight-text-pro", serif;
}
@media only screen and (min-width : 768px) {
  .accordion-item button svg {
    width: 42px;
    height: 42px;
  }
  .accordion-item button h3 {
    padding: 32px 42px 32px 24px;
  }
}
@media only screen and (min-width : 1280px) {
  .accordion-item button svg {
    width: 48px;
    height: 48px;
  }
  .accordion-item button h3 {
    padding: 36px 48px 36px 30px;
  }
}

.accordion-item.is-open button svg line:last-of-type {
  opacity: 0;
}

/* Optional reduced motion */
@media (prefers-reduced-motion: reduce) {
  .accordion-panel {
    transition: none;
  }
}
.accordion-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-panel > div {
  padding: 0 0 28px 0;
  visibility: hidden;
}
@media only screen and (min-width : 768px) {
  .accordion-panel > div {
    padding: 0 0 32px 0;
  }
}
@media only screen and (min-width : 768px) {
  .accordion-panel > div {
    padding: 0 0 36px 0;
  }
}

.accordion-item.is-open .accordion-panel > div {
  visibility: visible;
}

.accordion.--midnight {
  border-bottom: 1px solid #2f3e4c;
}
.accordion.--midnight:before, .accordion.--midnight:after {
  background: #2f3e4c;
}

.accordion.--midnight .accordion-item button {
  color: #2f3e4c;
  border-top: 1px solid #2f3e4c;
}
.accordion.--midnight .accordion-item button:before, .accordion.--midnight .accordion-item button:after {
  background: #2f3e4c;
}
.accordion.--midnight .accordion-item button svg {
  stroke: #2f3e4c;
}
@media only screen and (min-width : 768px) {
  .accordion.--midnight .accordion-item button {
    background-size: 40px 40px;
  }
}
@media only screen and (min-width : 1280px) {
  .accordion.--midnight .accordion-item button {
    background-size: 48px 48px;
  }
}

.accordion.--sky {
  border-bottom: 1px solid #afc2cc;
}
.accordion.--sky:before, .accordion.--sky:after {
  background: #afc2cc;
}

.accordion.--sky .accordion-item button {
  color: #2f3e4c;
  border-top: 1px solid #afc2cc;
}
.accordion.--sky .accordion-item button:before, .accordion.--sky .accordion-item button:after {
  background: #afc2cc;
}
.accordion.--sky .accordion-item button svg {
  stroke: #afc2cc;
}
@media only screen and (min-width : 768px) {
  .accordion.--sky .accordion-item button {
    background-size: 40px 40px;
  }
}
@media only screen and (min-width : 1280px) {
  .accordion.--sky .accordion-item button {
    background-size: 48px 48px;
  }
}

/* Footer
--------------------------------------------- */
.site-footer {
  background: #2f3e4c;
  color: #f7f5f0;
}
.site-footer a {
  text-decoration: none;
  color: #f7f5f0;
  transition: all ease-in-out 0.25s;
}
.site-footer a:hover, .site-footer a:active, .site-footer a:focus {
  color: #f7f5f0;
}
.site-footer a:visited {
  color: #f7f5f0;
}
.site-footer a:visited:hover, .site-footer a:visited:active, .site-footer a:visited:focus {
  color: #f7f5f0;
}

.site-footer .footer-content {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 2000px;
  padding: 3rem 0;
}
@media only screen and (min-width : 768px) {
  .site-footer .footer-content {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width : 1280px) {
  .site-footer .footer-content {
    padding-top: clamp(45px, -6.2px + 4vw, 90px);
    padding-bottom: clamp(45px, -6.2px + 4vw, 90px);
  }
}

.site-footer .menus ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media only screen and (min-width : 768px) {
  .site-footer .menus {
    width: 50%;
    max-width: 540px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
}

.site-footer .menus #menu-primary {
  -moz-columns: 3;
       columns: 3;
}
.site-footer .menus #menu-primary li {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(16px, 13.9144385027px + 0.5347593583vw, 22px);
  padding: 0 0 1em 0;
}
@media only screen and (min-width : 768px) {
  .site-footer .menus #menu-primary {
    flex: 1;
  }
}

.site-footer .menus #menu-secondary {
  margin-top: 0.5rem;
  -moz-columns: 3;
       columns: 3;
}
.site-footer .menus #menu-secondary li {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
@media only screen and (min-width : 768px) {
  .site-footer .menus #menu-secondary {
    margin: 0 0 0 40px;
    -moz-columns: 1;
         columns: 1;
  }
  .site-footer .menus #menu-secondary li {
    padding: 0 0 1.2em 0;
  }
}

.site-footer .info {
  margin-top: 2rem;
}
.site-footer .info address,
.site-footer .info a.tel {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin-bottom: 1.25rem;
}
.site-footer .info .social {
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer .info .social li {
  display: inline-block;
}
.site-footer .info .social li:nth-of-type(n + 2) {
  margin-left: 0.65rem;
}
.site-footer .info .social {
  margin-top: 1.75rem;
}
.site-footer .info .social a {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  margin: 0;
  width: 28px;
  height: 28px;
  border-radius: 100vmin;
  background: #afc2cc;
  font-size: 17px;
  color: #2f3e4c;
  transition: all ease-in-out 0.3s;
}
.site-footer .info .social a:hover {
  background: #6a764b;
  transform: translateY(-3px);
}
@media only screen and (min-width : 768px) {
  .site-footer .info {
    margin: 0;
  }
}

.site-footer .logo {
  display: block;
  margin: 0 auto;
  width: 100vw;
}

/*
*
*
* FOOTER CALLOUT
*
*
*/
@media (orientation: portrait) {
  .footer-callout {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .footer-callout {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.footer-callout {
  position: relative;
  z-index: 2;
}
.footer-callout:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ccc8bf;
  mix-blend-mode: multiply;
}
.footer-callout > img {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.footer-callout .container {
  position: relative;
  text-align: center;
  color: #f7f5f0;
}
@media (orientation: portrait) {
  .footer-callout .container {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .footer-callout .container {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.footer-callout .container {
  width: 75%;
  max-width: 540px;
  margin: 0 auto;
}
.footer-callout .container h2 {
  margin-bottom: 1.5rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  line-height: 1.25;
}
.footer-callout .container .button {
  display: table;
  margin: 2rem auto 0 auto;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.footer-callout .container .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
@media only screen and (min-width : 768px) {
  .footer-callout .container {
    padding-left: 0;
    padding-right: 0;
  }
}

.footer-callout-form .container {
  padding: 0;
  width: 85%;
  max-width: 760px;
}
.footer-callout-form .container h2 {
  margin-bottom: 0;
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .footer-callout-form .container h2 {
    padding: 0 0 0.3em 0;
  }
}
.footer-callout-form .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
}
.footer-callout-form .container p {
  width: 80%;
  margin: 0 auto 2rem auto;
  text-wrap: balance;
}

/* Templates
--------------------------------------------- */
.image-banner {
  text-align: center;
  position: relative;
  z-index: 10;
  overflow: hidden;
}

.image-banner img {
  position: absolute;
  top: -15%;
  left: 0;
  width: 100%;
  height: 130%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  z-index: -1;
  will-change: transform;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}

.image-banner .text {
  background: rgba(0, 0, 0, 0.3);
  color: #f7f5f0;
  padding: 120px 20px;
}
.image-banner .text p:last-of-type {
  margin-bottom: 0;
}
@media only screen and (min-width : 768px) {
  .image-banner .text {
    padding: 160px 80px;
  }
}
@media only screen and (min-width : 1280px) {
  .image-banner .text {
    padding: 220px 120px;
  }
}

.image-banner .text p {
  font-family: "filmotype-lacrosse", sans-serif;
  font-size: clamp(28px, 21.0481283422px + 1.7825311943vw, 48px);
  max-width: 900px;
  line-height: 1.1;
  margin-left: auto;
  margin-right: auto;
}
.image-banner .text p:last-of-type {
  margin-bottom: 0.5em;
}

.image-banner .text .name {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  font-weight: 700;
  margin-bottom: 0.75em;
}

.image-banner .text .date {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
}

/*
*
*
* CATERING
*
*/
.catering-callout {
  background: #afc2cc;
}
@media only screen and (min-width : 960px) {
  .catering-callout {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.catering-callout .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .catering-callout .left {
    padding-top: 101px;
  }
}
.catering-callout .left {
  padding-bottom: 60px;
}
.catering-callout .left .container {
  width: 80%;
  max-width: 500px;
  margin: 0 auto;
}
.catering-callout .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.catering-callout .left h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .catering-callout .left h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.catering-callout .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.catering-callout .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.catering-callout .left .button {
  display: table;
  margin: 30px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .catering-callout .left {
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
  }
}
.catering-callout .right {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  padding: 15vw;
}
.catering-callout .right .images {
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: auto;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.catering-callout .right .images > div,
.catering-callout .right .images img,
.catering-callout .right .images video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .catering-callout .right .images {
    padding: 8px;
  }
}
.catering-callout .right .images {
  height: 100%;
}
.catering-callout .right .images img {
  aspect-ratio: 2/3;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .catering-callout .right {
    width: 50%;
    padding: 7.5vw;
  }
  .catering-callout .right .images {
    aspect-ratio: auto;
    background-color: #afc2cc;
    padding: 6px;
    clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
  }
  .catering-callout .right .images > div,
  .catering-callout .right .images img,
  .catering-callout .right .images video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .catering-callout .right .images {
    padding: 8px;
  }
}
@media only screen and (min-width : 960px) {
  .catering-callout .right .images img {
    aspect-ratio: 1/1;
  }
}

.page-callout {
  background: #f7f5f0;
  position: relative;
  z-index: 2;
}
@media (orientation: portrait) {
  .page-callout {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .page-callout {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.page-callout .header {
  padding: 0 15px 8vh 15px;
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}
.page-callout .header p:last-of-type {
  margin-bottom: 0;
}
.page-callout .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
  color: #6a764b;
}
.page-callout .header h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .page-callout .header h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.page-callout .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  line-height: 1.15;
}
.page-callout .header h2 em {
  font-family: "filmotype-lacrosse", sans-serif;
  text-transform: capitalize;
  font-size: 1.1em;
}
.page-callout .header p {
  padding: 0 15px;
}
.page-callout .header .button {
  display: table;
  margin: 30px auto 0 auto;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.page-callout .header .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
@media only screen and (min-width : 1024px) {
  .page-callout .header h2 em {
    font-size: 1.2em;
  }
}

.page-callout .images {
  width: 100%;
  box-sizing: border-box;
}

.page-callout .images.marquee {
  overflow: hidden;
  display: flex;
}

.page-callout .images.marquee .image-marquee-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: marqueeScroll 90s linear infinite;
}

.page-callout .images.marquee .marquee-item {
  width: 45vw;
  aspect-ratio: 360/500;
  margin: 7px;
}
@media only screen and (min-width : 640px) {
  .page-callout .images.marquee .marquee-item {
    width: 35vw;
  }
}
@media only screen and (min-width : 960px) {
  .page-callout .images.marquee .marquee-item {
    margin: 11px;
    width: calc(25vw - 11px);
    max-width: 533px;
  }
}

.page-callout .images.marquee .marquee-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@keyframes marqueeScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.page-callout .images.switcher {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
  max-width: 2200px;
  margin: 0 auto;
}
@media only screen and (min-width : 640px) {
  .page-callout .images.switcher {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
  }
}
@media only screen and (min-width : 960px) {
  .page-callout .images.switcher {
    gap: 18px;
  }
}
@media only screen and (min-width : 1512px) {
  .page-callout .images.switcher {
    gap: 22px;
  }
}

.page-callout .images.switcher .mini-slider-box {
  position: relative;
  overflow: hidden;
  aspect-ratio: 360/500;
}

.page-callout .images.switcher .mini-slider-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-callout .images.switcher .mini-slider-box .img-fade {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: crossfadeCycle 17.333s ease-in-out infinite;
}

/* 0% / 100%   = a-image showing (fade image hidden)
   3.846%      = 1s crossfade complete -> b-image showing   (1s / 26s)
   50%         = holds through the 12s wait                 (13s / 26s)
   53.846%     = 1s crossfade back complete -> a-image again (14s / 26s)
   remainder   = holds through the last 12s wait back to 0%  (26s / 26s) */
@keyframes crossfadeCycle {
  0% {
    opacity: 0;
  }
  3.846% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  53.846% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.page-callout .images.switcher .mini-slider-box:nth-child(1) .img-fade {
  animation-delay: 0s;
}

.page-callout .images.switcher .mini-slider-box:nth-child(2) .img-fade {
  animation-delay: 2s;
}

.page-callout .images.switcher .mini-slider-box:nth-child(3) .img-fade {
  animation-delay: 6s;
}

.page-callout .images.switcher .mini-slider-box:nth-child(4) .img-fade {
  animation-delay: 4s;
}

.striped-border-section {
  display: flex;
  position: relative;
  padding: 3vh 0;
}
@media only screen and (min-width : 768px) {
  .striped-border-section:before, .striped-border-section:after {
    content: "";
    display: block;
    width: auto;
    height: 100%;
    position: absolute;
    top: 0;
    border-left: 30px solid transparent;
    -o-border-image: url("img/stripe-pattern--vert.png") 100 repeat;
       border-image: url("img/stripe-pattern--vert.png") 100 repeat;
  }
  .striped-border-section:before {
    left: 3vh;
  }
  .striped-border-section:after {
    right: 3vh;
  }
}
@media only screen and (min-width : 1024px) {
  .striped-border-section {
    padding: 3vw 0;
  }
  .striped-border-section:before, .striped-border-section:after {
    border-left: 36px solid transparent;
  }
  .striped-border-section:before {
    left: 3vw;
  }
  .striped-border-section:after {
    right: 3vw;
  }
}
@media only screen and (min-width : 1280px) {
  .striped-border-section:before, .striped-border-section:after {
    border-left: 48px solid transparent;
  }
}

.striped-border-section .frame {
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
  -o-border-image: url("img/stripe-pattern--horiz.png") 100 repeat;
     border-image: url("img/stripe-pattern--horiz.png") 100 repeat;
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width : 1024px) {
  .striped-border-section .frame {
    border-top: 36px solid transparent;
    border-bottom: 36px solid transparent;
  }
}
@media only screen and (min-width : 1280px) {
  .striped-border-section .frame {
    border-top: 48px solid transparent;
    border-bottom: 48px solid transparent;
  }
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/**
 * Swiper 14.0.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: July 20, 2026
 */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-slides-offset-before);
  scroll-margin-inline-start: var(--swiper-slides-offset-before);
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper > .swiper-slide:last-child {
  margin-inline-end: var(--swiper-slides-offset-after);
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-slides-offset-before);
  scroll-margin-block-start: var(--swiper-slides-offset-before);
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper > .swiper-slide:last-child {
  margin-block-end: var(--swiper-slides-offset-after);
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev ::slotted(svg),
.swiper-button-prev svg,
.swiper-button-next ::slotted(svg),
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: center;
  fill: currentColor;
  pointer-events: none;
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}
.swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-button-prev .swiper-navigation-icon {
  transform: rotate(180deg);
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal .swiper-button-prev,
.swiper-horizontal .swiper-button-next,
.swiper-horizontal ~ .swiper-button-prev,
.swiper-horizontal ~ .swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  margin-left: 0;
}
.swiper-horizontal .swiper-button-prev, .swiper-horizontal ~ .swiper-button-prev, .swiper-horizontal.swiper-rtl .swiper-button-next, .swiper-horizontal.swiper-rtl ~ .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}
.swiper-horizontal .swiper-button-next, .swiper-horizontal ~ .swiper-button-next, .swiper-horizontal.swiper-rtl .swiper-button-prev, .swiper-horizontal.swiper-rtl ~ .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}
.swiper-horizontal .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-horizontal .swiper-button-prev .swiper-navigation-icon, .swiper-horizontal ~ .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-horizontal ~ .swiper-button-prev .swiper-navigation-icon, .swiper-horizontal.swiper-rtl .swiper-button-next ::slotted(.swiper-navigation-icon),
.swiper-horizontal.swiper-rtl .swiper-button-next .swiper-navigation-icon, .swiper-horizontal.swiper-rtl ~ .swiper-button-next ::slotted(.swiper-navigation-icon),
.swiper-horizontal.swiper-rtl ~ .swiper-button-next .swiper-navigation-icon {
  transform: rotate(180deg);
}
.swiper-horizontal.swiper-rtl .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-horizontal.swiper-rtl .swiper-button-prev .swiper-navigation-icon, .swiper-horizontal.swiper-rtl ~ .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-horizontal.swiper-rtl ~ .swiper-button-prev .swiper-navigation-icon {
  transform: rotate(0deg);
}

.swiper-vertical .swiper-button-prev,
.swiper-vertical .swiper-button-next,
.swiper-vertical ~ .swiper-button-prev,
.swiper-vertical ~ .swiper-button-next {
  left: var(--swiper-navigation-top-offset, 50%);
  right: auto;
  margin-left: calc(0px - var(--swiper-navigation-size) / 2);
  margin-top: 0;
}
.swiper-vertical .swiper-button-prev,
.swiper-vertical ~ .swiper-button-prev {
  top: var(--swiper-navigation-sides-offset, 4px);
  bottom: auto;
}
.swiper-vertical .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-vertical .swiper-button-prev .swiper-navigation-icon,
.swiper-vertical ~ .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-vertical ~ .swiper-button-prev .swiper-navigation-icon {
  transform: rotate(-90deg);
}
.swiper-vertical .swiper-button-next,
.swiper-vertical ~ .swiper-button-next {
  bottom: var(--swiper-navigation-sides-offset, 4px);
  top: auto;
}
.swiper-vertical .swiper-button-next ::slotted(.swiper-navigation-icon),
.swiper-vertical .swiper-button-next .swiper-navigation-icon,
.swiper-vertical ~ .swiper-button-next ::slotted(.swiper-navigation-icon),
.swiper-vertical ~ .swiper-button-next .swiper-navigation-icon {
  transform: rotate(90deg);
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}
.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-vertical > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

/* Zoom container styles start */
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

/* Zoom container styles end */
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-thumbs .swiper-slide-thumb-active {
  /* Styles for active thumb slide */
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

/* Cube slide shadows start */
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}

/* Cube slide shadows end */
.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

/* Flip slide shadows start */
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}

/* Flip slide shadows end */
.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f7f5f0;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #2f3e4c;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/*--------------------------------------------------------------
# Templates
--------------------------------------------------------------*/
/* PAGES
--------------------------------------------- */
body.page-template-front-page .site-header {
  opacity: 0;
}
body.page-template-front-page .site-branding .left svg path {
  fill: #2f3e4c;
}
body.page-template-front-page .nav-toggle {
  color: #2f3e4c;
}

/*
*
*
* HOME - COVER
*
*/
.home-cover {
  overflow: hidden;
  max-width: 100vw;
  height: 100vh;
  background: yellow;
  position: relative;
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media (orientation: portrait) {
  .home-cover {
    height: 50vh;
  }
}
@media (orientation: landscape) {
  .home-cover {
    height: 100dvh;
  }
}

.home-cover .video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  visibility: hidden;
}
.home-cover .video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.home-cover.is-completed .video {
  visibility: visible;
  transform: none;
}

.home-cover .title {
  position: relative;
  z-index: 2;
  color: #f7f5f0;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 100vw;
}

.home-cover .title .logo {
  display: block;
  margin: 0 auto;
  width: 66vw;
  max-width: 100vw;
  height: auto;
  transform-origin: center bottom;
}
.home-cover .title .logo path {
  opacity: 0;
}

.home-cover .title .sub {
  opacity: 0;
  width: 64.8%;
}

.home-cover.is-completed .title {
  top: auto;
  bottom: 0;
  transform: translateX(-50%); /* Removes vertical centering, keeps horizontal centering */
}

/* 2. Keep the logo locked at full viewport width */
.home-cover.is-completed .title .logo {
  width: 100vw;
  max-width: 100vw;
  transform: translateY(5.5%);
}

/* 3. Keep the subtitle permanently hidden */
.home-cover.is-completed .title .sub {
  display: none;
}

/*
*
*
* HOME - INTRO
*
*/
@media only screen and (min-width : 1024px) {
  .home-intro {
    min-height: 100vh;
  }
}

.home-intro .container {
  padding: 8vh 15px;
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}
.home-intro .container .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
  color: #6a764b;
}
.home-intro .container h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .home-intro .container h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.home-intro .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  line-height: 1.15;
}
.home-intro .container h2 em {
  font-family: "filmotype-lacrosse", sans-serif;
  text-transform: capitalize;
  font-size: 1.1em;
}
.home-intro .container p {
  padding: 0 15px;
}
.home-intro .container .button {
  display: table;
  margin: 30px auto 0 auto;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.home-intro .container .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
@media only screen and (min-width : 1024px) {
  .home-intro .container {
    padding: 0;
  }
  .home-intro .container h2 em {
    font-size: 1.2em;
  }
}

@media only screen and (min-width : 1024px) {
  .home-intro .frame {
    padding: 8vh 0;
  }
}

/*
*
*
* HOME - EVENTS
*
*/
@media (orientation: portrait) {
  .home-events {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .home-events {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.home-events .header {
  width: 85%;
  max-width: 640px;
  margin: 0 auto;
  padding: 0 0 60px 0;
  text-align: center;
}
.home-events .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
  color: #6a764b;
}
.home-events .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .home-events .header h2 {
    padding: 0.7em 0 0.3em 0;
  }
}

.home-events-sticky-wrapper {
  position: relative;
  padding-top: clamp(150px, 35vh, 350px);
  padding-bottom: clamp(150px, 35vh, 350px);
}

.home-event-sticky-card {
  position: sticky;
  transform: translateY(-50%);
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  padding: 0 12px 12px 12px;
  margin-bottom: 20dvh;
  clip-path: polygon(24px 0%, calc(100% - 24px) 0%, 100% 24px, 100% calc(100% - 24px), calc(100% - 24px) 100%, 24px 100%, 0% calc(100% - 24px), 0% 24px);
}
.home-event-sticky-card:before, .home-event-sticky-card:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 1.5px;
  height: 100%;
  background: #f7f5f0;
}
.home-event-sticky-card:before {
  left: 24px;
}
.home-event-sticky-card:after {
  right: 24px;
}
@media only screen and (min-width : 960px) {
  .home-event-sticky-card {
    display: flex;
    flex-flow: column nowrap;
    padding: 0 24px 24px 24px;
  }
}

.home-event-sticky-card .tab {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  text-align: center;
  height: 24px;
  display: flex;
  flex-flow: row nowrap;
}
.home-event-sticky-card .tab .label {
  padding: 0 4em;
  line-height: 48px;
  position: relative;
}
.home-event-sticky-card .tab .label:before, .home-event-sticky-card .tab .label:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background: #f7f5f0;
  position: absolute;
  bottom: 0.5px;
}
.home-event-sticky-card .tab .label:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.home-event-sticky-card .tab .label:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}
.home-event-sticky-card .tab .border-left,
.home-event-sticky-card .tab .border-right {
  flex: 1;
  border-bottom: 1.5px solid #f7f5f0;
  position: relative;
}
.home-event-sticky-card .tab .border-left:before, .home-event-sticky-card .tab .border-left:after,
.home-event-sticky-card .tab .border-right:before,
.home-event-sticky-card .tab .border-right:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
}
.home-event-sticky-card .tab .border-left:before,
.home-event-sticky-card .tab .border-right:before {
  width: 24px;
  height: 24px;
  border-bottom: 1.5px solid #f7f5f0;
}
.home-event-sticky-card .tab .border-left::before {
  left: 0;
  transform: translateX(-100%) translateY(1.5px);
}
.home-event-sticky-card .tab .border-right::before {
  right: 0;
  transform: translateX(100%) translateY(1.5px);
}

.home-event-sticky-card .container {
  padding: 24px;
}
.home-event-sticky-card .container:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 1.5px;
  background: #f7f5f0;
  left: 0;
  bottom: 24px;
}
@media only screen and (min-width : 960px) {
  .home-event-sticky-card .container {
    display: flex;
    flex-flow: row nowrap;
    flex: 1;
  }
}

.home-event-sticky-card .left {
  text-align: center;
  padding: 10px 0 30px 0;
}
.home-event-sticky-card .left > div {
  width: calc(100% - 24px);
  max-width: 480px;
  margin: 0 auto;
}
.home-event-sticky-card .left h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
}
.home-event-sticky-card .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin: 10px 0 5px 0;
}
.home-event-sticky-card .left .framed-image {
  display: none;
}
.home-event-sticky-card .left .button {
  display: table;
  margin: 15px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .home-event-sticky-card .left {
    width: 50%;
    padding: 55px 0;
  }
  .home-event-sticky-card .left > div {
    padding-right: 24px;
  }
  .home-event-sticky-card .left .framed-image {
    display: block;
    margin: 25px 0;
  }
  .home-event-sticky-card .left .button {
    margin: 25px auto 0 auto;
  }
}
@media only screen and (min-width : 1280px) {
  .home-event-sticky-card .left {
    padding: 65px 0;
  }
}

.home-event-sticky-card .right img {
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  aspect-ratio: 6/5;
}
@media only screen and (min-width : 960px) {
  .home-event-sticky-card .right {
    width: 50%;
  }
}

.home-event-sticky-card:nth-of-type(3n + 1) {
  top: calc(50vh - 48px);
  background: #afc2cc;
  color: #2f3e4c;
}
.home-event-sticky-card:nth-of-type(3n + 1) .framed-image {
  aspect-ratio: 2;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.home-event-sticky-card:nth-of-type(3n + 1) .framed-image > div,
.home-event-sticky-card:nth-of-type(3n + 1) .framed-image img,
.home-event-sticky-card:nth-of-type(3n + 1) .framed-image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .home-event-sticky-card:nth-of-type(3n + 1) .framed-image {
    padding: 8px;
  }
}
.home-event-sticky-card:nth-of-type(3n + 1) .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.home-event-sticky-card:nth-of-type(3n + 1) .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}

.home-event-sticky-card:nth-of-type(3n + 2) {
  top: calc(50vh + 12px);
  background: url(img/moss-pattern.png);
  background-position: top center;
  color: #f7f5f0;
}
.home-event-sticky-card:nth-of-type(3n + 2):before, .home-event-sticky-card:nth-of-type(3n + 2):after,
.home-event-sticky-card:nth-of-type(3n + 2) .container::before {
  background: #2f3e4c;
}
.home-event-sticky-card:nth-of-type(3n + 2) .tab .label:before, .home-event-sticky-card:nth-of-type(3n + 2) .tab .label:after {
  background: #2f3e4c;
}
.home-event-sticky-card:nth-of-type(3n + 2) .tab .border-left,
.home-event-sticky-card:nth-of-type(3n + 2) .tab .border-right {
  border-bottom: 1.5px solid #2f3e4c;
}
.home-event-sticky-card:nth-of-type(3n + 2) .tab .border-left:before, .home-event-sticky-card:nth-of-type(3n + 2) .tab .border-left:after,
.home-event-sticky-card:nth-of-type(3n + 2) .tab .border-right:before,
.home-event-sticky-card:nth-of-type(3n + 2) .tab .border-right:after {
  border-bottom: 1.5px solid #2f3e4c;
}
.home-event-sticky-card:nth-of-type(3n + 2) .framed-image {
  aspect-ratio: 2;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.home-event-sticky-card:nth-of-type(3n + 2) .framed-image > div,
.home-event-sticky-card:nth-of-type(3n + 2) .framed-image img,
.home-event-sticky-card:nth-of-type(3n + 2) .framed-image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .home-event-sticky-card:nth-of-type(3n + 2) .framed-image {
    padding: 8px;
  }
}
.home-event-sticky-card:nth-of-type(3n + 2) .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.home-event-sticky-card:nth-of-type(3n + 2) .left .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}

.home-event-sticky-card:nth-of-type(3n + 3) {
  top: calc(50vh + 48px);
  background: #2f3e4c;
  color: #f7f5f0;
}
.home-event-sticky-card:nth-of-type(3n + 3):before, .home-event-sticky-card:nth-of-type(3n + 3):after,
.home-event-sticky-card:nth-of-type(3n + 3) .container::before {
  background: #6a764b;
}
.home-event-sticky-card:nth-of-type(3n + 3) .tab .label:before, .home-event-sticky-card:nth-of-type(3n + 3) .tab .label:after {
  background: #6a764b;
}
.home-event-sticky-card:nth-of-type(3n + 3) .tab .border-left,
.home-event-sticky-card:nth-of-type(3n + 3) .tab .border-right {
  border-bottom: 1.5px solid #6a764b;
}
.home-event-sticky-card:nth-of-type(3n + 3) .tab .border-left:before, .home-event-sticky-card:nth-of-type(3n + 3) .tab .border-left:after,
.home-event-sticky-card:nth-of-type(3n + 3) .tab .border-right:before,
.home-event-sticky-card:nth-of-type(3n + 3) .tab .border-right:after {
  border-bottom: 1.5px solid #6a764b;
}
.home-event-sticky-card:nth-of-type(3n + 3) .framed-image {
  aspect-ratio: 2;
  background-color: #6a764b;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.home-event-sticky-card:nth-of-type(3n + 3) .framed-image > div,
.home-event-sticky-card:nth-of-type(3n + 3) .framed-image img,
.home-event-sticky-card:nth-of-type(3n + 3) .framed-image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .home-event-sticky-card:nth-of-type(3n + 3) .framed-image {
    padding: 8px;
  }
}
.home-event-sticky-card:nth-of-type(3n + 3) .left .button {
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.home-event-sticky-card:nth-of-type(3n + 3) .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}

/*
*
*
* HOME - CATERING
*
*/
.home-catering {
  margin-top: clamp(-750px, -175vh, -1750px);
}

/*
*
*
* HOME - VENUE
*
*/
.home-venue {
  position: relative;
  z-index: 2;
  background: #f7f5f0;
  overflow: hidden;
}

.home-venue .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media only screen and (min-width : 768px) {
  .home-venue .container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto auto auto;
    gap: 15px;
    grid-template-areas: "label label label" "header header video" "text text video" "img1 img2 video";
  }
}
@media only screen and (min-width : 1024px) {
  .home-venue .container {
    gap: 3%;
    grid-template-areas: "label label label" "header header video" "img1 text video" "img1 img2 video";
  }
}

.home-venue .container .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
  color: #6a764b;
  padding-bottom: 20px;
}
.home-venue .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}
@media only screen and (min-width : 768px) {
  .home-venue .container .label {
    grid-area: label;
  }
  .home-venue .container h2 {
    grid-area: header;
    padding-bottom: 0.2em;
  }
}

.home-venue .text {
  margin-bottom: 45px;
}
.home-venue .text .button {
  display: table;
  margin-top: 2rem;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.home-venue .text .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
@media only screen and (min-width : 768px) {
  .home-venue .text {
    grid-area: text;
  }
}

.home-venue .container img:first-of-type {
  display: block;
  aspect-ratio: 2/3;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 20px;
  width: 100%;
}
@media only screen and (min-width : 768px) {
  .home-venue .container img:first-of-type {
    grid-area: img1;
    aspect-ratio: 1/1;
    margin: 0;
  }
}
@media only screen and (min-width : 1024px) {
  .home-venue .container img:first-of-type {
    aspect-ratio: inherit;
    height: 100%;
  }
}

.home-venue .container img:nth-of-type(2) {
  display: block;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 20px;
  width: 100%;
}
@media only screen and (min-width : 768px) {
  .home-venue .container img:nth-of-type(2) {
    grid-area: img2;
    aspect-ratio: 1/1;
    margin: 0;
  }
}
@media only screen and (min-width : 1024px) {
  .home-venue .container img:nth-of-type(2) {
    aspect-ratio: 400/280;
    align-self: flex-end;
  }
}

.home-venue video {
  width: 100%;
  aspect-ratio: 2/3;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 768px) {
  .home-venue video {
    grid-area: video;
    aspect-ratio: inherit;
    height: 100%;
  }
}

.home-venue .logos {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .home-venue .logos {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .home-venue .logos {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.home-venue .logos {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
}
.home-venue .logos img {
  display: block;
  margin: 25px;
  -o-object-fit: contain;
     object-fit: contain;
  width: calc(50% - 50px);
  max-width: 180px;
  height: auto;
  max-height: 60px;
  filter: brightness(0.95) contrast(0.95);
}

/*
*
*
* COVER
*
*/
.about-cover {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media only screen and (min-width : 960px) {
  .about-cover {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.about-cover .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .about-cover .left {
    padding-top: 101px;
  }
}
.about-cover .left {
  padding-bottom: 60px;
}
.about-cover .left .container {
  width: 80%;
  margin: 0 auto;
}
.about-cover .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.about-cover .left h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .about-cover .left h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.about-cover .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.about-cover .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.about-cover .left .button {
  display: table;
  margin: 30px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .about-cover .left {
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
  .about-cover .left .button {
    margin: 45px 0 0 0;
  }
}
@media only screen and (min-width : 1512px) {
  .about-cover .left .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

.about-cover .right video {
  background: #2f3e4c;
  width: 100%;
  height: 120vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.about-cover .right video.is-loaded {
  opacity: 1;
}
@media only screen and (min-width : 960px) {
  .about-cover .right {
    width: 50%;
    position: relative;
  }
  .about-cover .right video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* ABOUT - FOUNDER
*
*/
.about-founder {
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .about-founder {
    padding-top: 101px;
  }
}

.about-founder .images {
  overflow: hidden;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}
.about-founder .images img {
  width: 30%;
  aspect-ratio: 336/470;
  -o-object-fit: cover;
     object-fit: cover;
}
.about-founder .images img:first-of-type {
  transform: translateX(-12.5%);
}
.about-founder .images img:last-of-type {
  transform: translateX(12.5%);
}
.about-founder .images .video {
  width: 40%;
  aspect-ratio: 0.714893617;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.about-founder .images .video > div,
.about-founder .images .video img,
.about-founder .images .video video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .about-founder .images .video {
    padding: 8px;
  }
}
@media only screen and (min-width : 960px) {
  .about-founder .images {
    width: 90%;
    max-width: 1190px;
    margin: 0 auto;
    overflow: visible;
  }
  .about-founder .images .video {
    aspect-ratio: 0.714893617;
    background-color: #afc2cc;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .about-founder .images .video > div,
  .about-founder .images .video img,
  .about-founder .images .video video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .about-founder .images .video {
    padding: 8px;
  }
}

.about-founder .seperator {
  width: 100%;
  height: 50px;
  position: relative;
}
.about-founder .seperator:before {
  content: "";
  display: block;
  width: 1.5px;
  height: 100%;
  background: #afc2cc;
  position: absolute;
  left: 50%;
  top: 0;
}
.about-founder .seperator:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  background: #afc2cc;
  position: absolute;
  bottom: 0;
  left: calc(50% + 0.75px);
  transform: translateX(-50%) rotate(45deg);
}
@media only screen and (min-width : 960px) {
  .about-founder .seperator {
    height: 80px;
  }
}

@media (orientation: portrait) {
  .about-founder .content {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-founder .content {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.about-founder .content {
  width: 90%;
  margin: 0 auto;
  max-width: 1280px;
  text-align: center;
}
.about-founder .content .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  color: #6a764b;
}
.about-founder .content h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .about-founder .content h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.about-founder .content > div {
  padding-top: 20px;
}
.about-founder .content > div img {
  display: block;
  width: 100%;
  margin: 0 0 30px 0;
}
.about-founder .content > div .text {
  text-align: left;
}
.about-founder .content .text p:first-of-type::first-letter {
  font-family: "filmotype-lacrosse", sans-serif;
  color: #afc2cc;
  float: left;
  font-size: 4rem;
  line-height: 0.5;
  margin: 0.1em 0.25em 0.15em 0;
}
@media only screen and (min-width : 960px) {
  .about-founder .content > div {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  .about-founder .content > div img {
    width: 47.5%;
    align-self: flex-start;
  }
  .about-founder .content > div .text {
    width: 47.5%;
  }
  .about-founder .content .text p:first-of-type::first-letter {
    font-size: 5.75rem;
    line-height: 0.6;
    margin: 0.1em 0.275em 0.15em 0;
  }
}
@media only screen and (min-width : 960px) {
  .about-founder .content > div {
    padding-top: 25px;
  }
}

/*
*
*
* TEAM OVERVIEW
*
*/
.about-teamoverview {
  overflow: hidden;
}
@media (orientation: portrait) {
  .about-teamoverview {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-teamoverview {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.about-teamoverview .intro {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}
@media (orientation: portrait) {
  .about-teamoverview .intro {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-teamoverview .intro {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.about-teamoverview .intro img {
  display: block;
  margin: 0 auto 24px auto;
  width: 150px;
}
.about-teamoverview .intro p {
  font-size: clamp(17px, 14.5668449198px + 0.623885918vw, 24px);
  font-weight: 300;
  line-height: 1.83;
  color: #f7f5f0;
}
@media only screen and (min-width : 1024px) {
  .about-teamoverview .intro img {
    margin: 0 auto 48px auto;
    width: 200px;
  }
}

.about-teamoverview .image {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  position: relative;
}
.about-teamoverview .image:before {
  content: "";
  display: block;
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: bottom center;
  position: absolute;
  z-index: -1;
  bottom: 50%;
  left: 50%;
  width: 100vw;
  height: 200vh;
  transform: translateX(-50%);
}
.about-teamoverview .image .frame {
  aspect-ratio: 1.7890410959;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(28px 0%, calc(100% - 28px) 0%, 100% 28px, 100% calc(100% - 28px), calc(100% - 28px) 100%, 28px 100%, 0% calc(100% - 28px), 0% 28px);
}
.about-teamoverview .image .frame > div,
.about-teamoverview .image .frame img,
.about-teamoverview .image .frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(23px 0%, calc(100% - 23px) 0%, 100% 23px, 100% calc(100% - 23px), calc(100% - 23px) 100%, 23px 100%, 0% calc(100% - 23px), 0% 23px);
}
@media only screen and (min-width : 768px) {
  .about-teamoverview .image .frame {
    padding: 8px;
  }
}
.about-teamoverview .image .badge {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) translateY(50%);
  width: 100px;
}
@media only screen and (min-width : 1024px) {
  .about-teamoverview .image .frame {
    aspect-ratio: 1.7890410959;
    background-color: #afc2cc;
    padding: 6px;
    clip-path: polygon(66px 0%, calc(100% - 66px) 0%, 100% 66px, 100% calc(100% - 66px), calc(100% - 66px) 100%, 66px 100%, 0% calc(100% - 66px), 0% 66px);
  }
  .about-teamoverview .image .frame > div,
  .about-teamoverview .image .frame img,
  .about-teamoverview .image .frame video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(61px 0%, calc(100% - 61px) 0%, 100% 61px, 100% calc(100% - 61px), calc(100% - 61px) 100%, 61px 100%, 0% calc(100% - 61px), 0% 61px);
  }
}
@media only screen and (min-width : 1024px) and (min-width : 768px) {
  .about-teamoverview .image .frame {
    padding: 8px;
  }
}
@media only screen and (min-width : 1024px) {
  .about-teamoverview .image .badge {
    width: 160px;
  }
}

.about-teamoverview .text {
  width: 80%;
  max-width: 810px;
  margin: 0 auto;
  text-align: center;
}
@media (orientation: portrait) {
  .about-teamoverview .text {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-teamoverview .text {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.about-teamoverview .text h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .about-teamoverview .text h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.about-teamoverview .text p {
  font-size: 1.2rem;
}
@media only screen and (min-width : 1024px) {
  .about-teamoverview .text {
    margin-top: 20px;
  }
}

/*
*
*
* VENUE TEAM
*/
@media (orientation: portrait) {
  .about-team {
    padding-top: 0;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-team {
    padding-top: 0;
    padding-bottom: 9vh;
  }
}

.about-team .founder {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media only screen and (min-width : 960px) {
  .about-team .founder {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
}

.about-team .founder .left video {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  margin: 0 auto;
}
@media only screen and (min-width : 960px) {
  .about-team .founder .left {
    width: 40%;
  }
  .about-team .founder .left video {
    max-width: 100%;
    aspect-ratio: 519/720;
  }
}

.about-team .founder .right {
  padding: 2rem 0;
}
.about-team .founder .right h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  margin-bottom: 0.125em;
}
.about-team .founder .right .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
  margin-bottom: 1.25rem;
}
@media only screen and (min-width : 960px) {
  .about-team .founder .right {
    width: 60%;
    padding: 0 7.5%;
  }
}
@media only screen and (min-width : 1280px) {
  .about-team .founder .right {
    padding: 0 15% 0 7.5%;
  }
  .about-team .founder .right .label {
    margin-bottom: 1.75rem;
  }
}

.about-team .team {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media only screen and (min-width : 768px) {
  .about-team .team {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-top: 60px;
  }
}
@media only screen and (min-width : 1280px) {
  .about-team .team {
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 90px;
  }
}

.about-team .team .team-card {
  width: 80%;
  margin: 30px auto 0 auto;
}
.about-team .team .team-card button {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  width: 100%;
}
.about-team .team .team-card img {
  display: block;
  margin: 0;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.about-team .team .team-card .header {
  padding: 20px 0 12px 0;
  background: none;
  border: none;
  text-align: left;
  width: 100%;
  cursor: pointer;
}
.about-team .team .team-card h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(19px, 15.871657754px + 0.8021390374vw, 28px);
  margin-bottom: 0.275em;
}
.about-team .team .team-card .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  line-height: 1.2;
  color: #6a764b;
}
@media only screen and (min-width : 768px) {
  .about-team .team .team-card {
    width: 100%;
    margin: 0;
  }
}
@media only screen and (min-width : 1024px) {
  .about-team .team .team-card .text {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    transition: grid-template-rows 0.4s ease-in-out, opacity 0.4s ease-in-out;
  }
  .about-team .team .team-card .text .text-inner {
    overflow: hidden;
  }
  .about-team .team .team-card:hover .text {
    grid-template-rows: 1fr;
    opacity: 1;
  }
}

/*
*
*
* CATERING TEAM
*
*/
.about-catering {
  background: url(img/moss-pattern.png);
  background-size: 360px 361px;
  color: #f7f5f0;
}
@media (orientation: portrait) {
  .about-catering {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-catering {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.about-catering .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media only screen and (min-width : 1024px) {
  .about-catering .container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
  }
}

.about-catering .container .text h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
  margin-bottom: 0.7em;
}
.about-catering .container .text .separator {
  display: block;
  width: 100%;
  border-top: 1px solid #2f3e4c;
  margin: 25px 0 20px 0;
  position: relative;
}
.about-catering .container .text .separator:before, .about-catering .container .text .separator:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background: #2f3e4c;
  position: absolute;
  top: -0.5px;
}
.about-catering .container .text .separator:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.about-catering .container .text .separator:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
.about-catering .container .text .button {
  display: table;
  margin: 2rem 0 0 0;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.about-catering .container .text .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
@media only screen and (min-width : 1024px) {
  .about-catering .container .text {
    width: 40%;
  }
  .about-catering .container .text .separator {
    margin: 30px 0 25px 0;
  }
  .about-catering .container .text .button {
    margin: 3rem 0 0 0;
  }
}

.about-catering .team {
  margin-top: 60px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(7.5vw, 72px);
}
@media only screen and (min-width : 1024px) {
  .about-catering .team {
    width: 50%;
    margin: 0;
    gap: min(4vw, 72px);
  }
}

.about-catering .team .team-card {
  text-align: center;
}
.about-catering .team .team-card img {
  display: block;
  margin: 0;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.about-catering .team .team-card h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(16px, 13.9144385027px + 0.5347593583vw, 22px);
  margin: 0.5em 0 0.15em 0;
}
.about-catering .team .team-card .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  color: #afc2cc;
}

/*
*
*
* EVENT TEAM
*
*/
@media (orientation: portrait) {
  .about-event {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .about-event {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.about-event .header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 640px;
  margin: 0 auto 5rem auto;
  text-align: center;
}
.about-event .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}
.about-event .header h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .about-event .header h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.about-event .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}

.about-event .teams {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}
@media only screen and (min-width : 960px) {
  .about-event .teams {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 12.5%;
         column-gap: 12.5%;
    row-gap: 90px;
    position: relative;
    padding: 20px 0;
  }
}

@media only screen and (min-width : 960px) {
  .about-event .teams .separator {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1px;
    height: 100%;
    background: #afc2cc;
  }
  .about-event .teams .separator:before, .about-event .teams .separator:after {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    background: #afc2cc;
    position: absolute;
    left: 0.5px;
  }
  .about-event .teams .separator:before {
    top: -0.5px;
    transform-origin: center center;
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }
  .about-event .teams .separator:after {
    bottom: -0.5px;
    transform-origin: center center;
    transform: translateX(-50%) translateY(50%) rotate(45deg);
  }
}

.about-event .team-card {
  margin-bottom: 45px;
}
.about-event .team-card .image {
  aspect-ratio: 1.5833333333;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.about-event .team-card .image > div,
.about-event .team-card .image img,
.about-event .team-card .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .about-event .team-card .image {
    padding: 8px;
  }
}
.about-event .team-card .image {
  margin-bottom: 10px;
}
.about-event .team-card h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(19px, 15.871657754px + 0.8021390374vw, 28px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .about-event .team-card h3 {
    padding: 0.7em 0 0.3em 0;
  }
}
@media only screen and (min-width : 960px) {
  .about-event .team-card {
    margin-bottom: 0;
  }
  .about-event .team-card .image {
    aspect-ratio: 1.5833333333;
    background-color: #afc2cc;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .about-event .team-card .image > div,
  .about-event .team-card .image img,
  .about-event .team-card .image video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
  .about-event .team-card .image {
    margin-bottom: 15px;
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .about-event .team-card .image {
    padding: 8px;
  }
}

body.page-template-page-beverages .site-branding .left svg path {
  fill: #f7f5f0;
}
body.page-template-page-beverages .nav-toggle {
  color: #f7f5f0;
}

/*
*
*
* COVER
*
*/
.beverages-cover {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  color: #f7f5f0;
}
@media only screen and (min-width : 960px) {
  .beverages-cover {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.beverages-cover .left {
  text-align: center;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .beverages-cover .left {
    padding-top: 101px;
  }
}
.beverages-cover .left {
  padding-bottom: 60px;
}
.beverages-cover .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.beverages-cover .left h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0 0;
}
@media only screen and (min-width : 1024px) {
  .beverages-cover .left h1 {
    padding: 0.7em 0 0 0;
  }
}
.beverages-cover .left .image {
  width: 65%;
  max-width: 320px;
  margin: 20px auto;
  aspect-ratio: 0.7111111111;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.beverages-cover .left .image > div,
.beverages-cover .left .image img,
.beverages-cover .left .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .beverages-cover .left .image {
    padding: 8px;
  }
}
.beverages-cover .left .button {
  background: #afc2cc;
  color: #2f3e4c;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.beverages-cover .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .beverages-cover .left {
    width: 50%;
    padding: 5vh 0;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
  }
  .beverages-cover .left .image {
    max-width: 360px;
    margin: 32px auto;
  }
}

.beverages-cover .right video {
  width: 100%;
  height: 120vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.beverages-cover .right video.is-loaded {
  opacity: 1;
}
@media only screen and (min-width : 960px) {
  .beverages-cover .right {
    width: 50%;
    position: relative;
  }
  .beverages-cover .right video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* OPENBAR
*
*/
@media (orientation: portrait) {
  .beverages-openbar {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .beverages-openbar {
    padding-top: 18vh;
    padding-bottom: 9vh;
  }
}

.beverages-openbar .header {
  text-align: center;
  text-wrap: balance;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
}
.beverages-openbar .header p:last-of-type {
  margin-bottom: 0;
}
.beverages-openbar .header img {
  display: block;
  margin: 0 auto 24px auto;
  width: 150px;
}
.beverages-openbar .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .beverages-openbar .header h2 {
    padding: 0 0 0.3em 0;
  }
}
@media only screen and (min-width : 1024px) {
  .beverages-openbar .header img {
    margin: 0 auto 48px auto;
    width: 220px;
  }
}

.beverages-openbar .content {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .beverages-openbar .content {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .beverages-openbar .content {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.beverages-openbar .content {
  text-align: center;
  display: flex;
  flex-flow: column nowrap;
  gap: 40px;
}
@media only screen and (min-width : 768px) {
  .beverages-openbar .content {
    flex-flow: row nowrap;
    justify-content: space-between;
    gap: 6%;
  }
}

.beverages-openbar .column {
  aspect-ratio: auto;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.beverages-openbar .column > div,
.beverages-openbar .column img,
.beverages-openbar .column video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .beverages-openbar .column {
    padding: 8px;
  }
}
.beverages-openbar .column > div {
  background: #f7f5f0;
  padding: 10vw;
}
.beverages-openbar .column h3 {
  line-height: 1;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
  font-family: "freight-text-pro", serif;
}
@media only screen and (min-width : 768px) {
  .beverages-openbar .column > div {
    padding: min(6vw, 80px);
  }
}

.beverages-openbar .list .category {
  line-height: 1.35;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
.beverages-openbar .list .category p:last-of-type {
  margin-bottom: 0;
}
.beverages-openbar .list .category {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px solid #afc2cc;
  position: relative;
}
.beverages-openbar .list .category:before, .beverages-openbar .list .category:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.beverages-openbar .list .category:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.beverages-openbar .list .category:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
.beverages-openbar .list h4 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin-bottom: 0.75em;
}
.beverages-openbar .list p {
  font-size: 112%;
}
.beverages-openbar .list strong {
  font-weight: 700;
}

.beverages-openbar .footer {
  text-align: center;
  text-wrap: balance;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
}
.beverages-openbar .footer .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin-bottom: 1em;
}

.beverages-openbar .tables {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .beverages-openbar .tables {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .beverages-openbar .tables {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.packages-list {
  margin-bottom: 4rem;
}

.beverages-openbar .accordion-item button {
  text-align: left;
}
.beverages-openbar .accordion-item button h3 {
  color: #2f3e4c;
  padding-left: 0;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
}
.beverages-openbar .accordion-item button svg {
  stroke: #2f3e4c;
}

.beverages-openbar .accordion-item .price-table .row.label:nth-of-type(n + 2) {
  margin-top: 0.5rem;
}

/*
*
*
* COCKTAILS
*
*/
.beverages-cocktails {
  background: #2f3e4c;
  color: #f7f5f0;
}

.beverages-cocktails .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .beverages-cocktails .container {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .beverages-cocktails .container {
    padding-top: 12vh;
    padding-bottom: 12vh;
  }
}
.beverages-cocktails .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  margin-bottom: 1em;
  text-align: center;
}

.beverages-cocktails .package {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px solid #afc2cc;
  position: relative;
}
.beverages-cocktails .package:before, .beverages-cocktails .package:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.beverages-cocktails .package:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.beverages-cocktails .package:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
@media only screen and (min-width : 960px) {
  .beverages-cocktails .package {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    padding-top: min(6vw, 80px);
  }
}

.beverages-cocktails .package .image {
  margin: 20px auto 40px auto;
  aspect-ratio: 1;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.beverages-cocktails .package .image > div,
.beverages-cocktails .package .image img,
.beverages-cocktails .package .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .beverages-cocktails .package .image {
    padding: 8px;
  }
}
@media only screen and (min-width : 960px) {
  .beverages-cocktails .package .image {
    margin: 0;
    width: 42.5%;
  }
}

@media only screen and (min-width : 960px) {
  .beverages-cocktails .package .text {
    width: 57.5%;
    padding: 0 0 0 min(6vw, 80px);
  }
}

.beverages-cocktails .package .text .header h3 {
  line-height: 1;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
  font-family: "freight-text-pro", serif;
  margin-bottom: 0.7rem;
}
.beverages-cocktails .package .text .header .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #afc2cc;
  margin: 0 0 1em 0;
}

.beverages-cocktails .package-list-item {
  padding-top: 1.8rem;
  margin-top: 1.8rem;
  border-top: 1px solid #afc2cc;
  position: relative;
}
.beverages-cocktails .package-list-item:before, .beverages-cocktails .package-list-item:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.beverages-cocktails .package-list-item:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.beverages-cocktails .package-list-item:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
.beverages-cocktails .package-list-item .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  color: #afc2cc;
  margin: 0 0 1.5rem 0;
}
.beverages-cocktails .package-list-item h4 {
  line-height: 1;
  font-size: clamp(17px, 14.5668449198px + 0.623885918vw, 24px);
  font-weight: 300;
  font-family: "freight-text-pro", serif;
  margin: 0 0 0.5rem 0;
}
.beverages-cocktails .package-list-item .price {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  color: #afc2cc;
  margin: 0 0 0.5rem 0;
}

/*
*
*
* ENHANCEMENTS
*
*/
.beverages-enhancements {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}

.beverages-enhancements .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .beverages-enhancements .container {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .beverages-enhancements .container {
    padding-top: 12vh;
    padding-bottom: 12vh;
  }
}
.beverages-enhancements .container {
  text-align: center;
}
.beverages-enhancements .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  margin-bottom: 1em;
}

.beverages-enhancements .grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 0 5vw;
}
@media only screen and (min-width : 640px) {
  .beverages-enhancements .grid {
    grid-template-columns: 1fr 1fr;
    padding: 0;
    gap: min(5vw, 72px);
  }
}
@media only screen and (min-width : 960px) {
  .beverages-enhancements .grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.beverages-enhancements .grid-item p:last-of-type {
  margin-bottom: 0;
}
.beverages-enhancements .grid-item {
  text-wrap: balance;
}
.beverages-enhancements .grid-item .image {
  aspect-ratio: 0.76;
  background-color: #f7f5f0;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.beverages-enhancements .grid-item .image > div,
.beverages-enhancements .grid-item .image img,
.beverages-enhancements .grid-item .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .beverages-enhancements .grid-item .image {
    padding: 8px;
  }
}
.beverages-enhancements .grid-item .image > div {
  background: #2f3e4c;
}
.beverages-enhancements .grid-item .image img {
  mix-blend-mode: luminosity;
}
.beverages-enhancements .grid-item .image img:hover {
  mix-blend-mode: normal;
}
.beverages-enhancements .grid-item h3 {
  line-height: 1;
  font-size: clamp(24px, 21.2192513369px + 0.7130124777vw, 32px);
  padding: 1em 0 0 0;
}
@media only screen and (min-width : 1024px) {
  .beverages-enhancements .grid-item h3 {
    padding: 0.7em 0 0 0;
  }
}
.beverages-enhancements .grid-item h3 {
  margin-bottom: 0.5rem;
  font-weight: 300;
  font-family: "freight-text-pro", serif;
}
.beverages-enhancements .grid-item .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin-bottom: 0.75rem;
}

/*
*
*
* REFRESHMENTS
*
*/
@media (orientation: portrait) {
  .beverages-refreshments {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .beverages-refreshments {
    padding-top: 12vh;
    padding-bottom: 12vh;
  }
}

.beverages-refreshments .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
.beverages-refreshments .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  margin-bottom: 1em;
  text-align: center;
}

.beverages-refreshments .mocktails {
  margin-bottom: 3rem;
}

.mocktails-header {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: flex-end;
}
.mocktails-header h3 {
  line-height: 1;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
  font-family: "freight-text-pro", serif;
}
.mocktails-header .price {
  display: block;
  font-style: italic;
  font-weight: 700;
}

.beverages-refreshments .mocktails .icon-table {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px solid #afc2cc;
  position: relative;
}
.beverages-refreshments .mocktails .icon-table:before, .beverages-refreshments .mocktails .icon-table:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.beverages-refreshments .mocktails .icon-table:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.beverages-refreshments .mocktails .icon-table:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}

.beverages-refreshments .stations {
  padding-bottom: 3rem;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.beverages-refreshments .stations:before, .beverages-refreshments .stations:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.beverages-refreshments .stations:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.beverages-refreshments .stations:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}

.beverages-refreshments .footer {
  text-align: center;
}
.beverages-refreshments .footer p:last-of-type {
  margin-bottom: 0;
}
.beverages-refreshments .footer {
  padding: 1.5rem 0;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.beverages-refreshments .footer:before, .beverages-refreshments .footer:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.beverages-refreshments .footer:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.beverages-refreshments .footer:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}

body.page-id-1758 .footer-callout {
  display: none;
}

/*
*
*
* BOOKED CLIENTS - COVER
*
*/
.booked-cover {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .booked-cover {
    padding-top: 101px;
  }
}

.booked-cover .header {
  text-align: center;
  color: #2f3e4c;
}
@media (orientation: portrait) {
  .booked-cover .header {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .booked-cover .header {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.booked-cover .header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
}
.booked-cover .header .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.booked-cover .header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-cover .header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}

.booked-cover .page-nav {
  border-top: 1px solid #2f3e4c;
  border-bottom: 1px solid #2f3e4c;
  background: #f7f5f0;
  padding: 1.25rem 0 1.25rem 1.25rem;
  overflow: hidden;
}
.booked-cover .page-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-flow: row nowrap;
  justify-content: safe center;
  align-items: center;
  overflow: auto;
  white-space: nowrap;
  /* Firefox */
  scrollbar-width: none;
  /* IE & Edge (legacy) */
  -ms-overflow-style: none;
}
.booked-cover .page-nav ul::-webkit-scrollbar {
  display: none;
}
.booked-cover .page-nav ul li {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: inline-block;
}
.booked-cover .page-nav li.nav-title {
  color: #afc2cc;
}
.booked-cover .page-nav a {
  text-decoration: none;
  color: #2f3e4c;
  transition: all ease-in-out 0.25s;
}
.booked-cover .page-nav a:hover, .booked-cover .page-nav a:active, .booked-cover .page-nav a:focus {
  color: #afc2cc;
}
.booked-cover .page-nav a:visited {
  color: #2f3e4c;
}
.booked-cover .page-nav a:visited:hover, .booked-cover .page-nav a:visited:active, .booked-cover .page-nav a:visited:focus {
  color: #afc2cc;
}
.booked-cover .page-nav a {
  position: relative;
  display: block;
  padding-left: 1rem;
  margin-left: 1rem;
}
.booked-cover .page-nav a:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  background: #afc2cc;
  width: 3px;
  height: 3px;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

/*
*
*
* BOOKED CLIENTS - INTRO
*
*/
@media only screen and (min-width : 960px) {
  .booked-intro {
    display: flex;
    flex-flow: row nowrap;
  }
}

.booked-intro .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .booked-intro .left {
    padding-top: 101px;
  }
}
.booked-intro .left {
  padding-bottom: 60px;
}
.booked-intro .left .container {
  width: 80%;
  margin: 0 auto;
}
.booked-intro .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.booked-intro .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-intro .left h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-intro .left .buttons {
  margin-top: 30px;
}
.booked-intro .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-intro .left .button:hover {
  background: #6a764b;
  color: #f7f5f0;
}
.booked-intro .left .button {
  display: table;
  margin: 15px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .booked-intro .left {
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
  .booked-intro .left .buttons {
    margin-top: 45px;
    display: flex;
    flex-flow: row nowrap;
  }
  .booked-intro .left .button {
    margin: 0 15px 0 0;
  }
}
@media only screen and (min-width : 1512px) {
  .booked-intro .left .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

.booked-intro .right img {
  background: #2f3e4c;
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .booked-intro .right {
    width: 50%;
    position: relative;
  }
  .booked-intro .right img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* BOOKED CLIENTS - VENUE
*
*
*/
.booked-venue .header {
  padding: 8vh 15px 0 15px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
  text-align: center;
}
.booked-venue .header p:last-of-type {
  margin-bottom: 0;
}
.booked-venue .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
  color: #6a764b;
}
.booked-venue .header h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-venue .header h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-venue .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  line-height: 1.15;
}
.booked-venue .header h2 em {
  font-family: "filmotype-lacrosse", sans-serif;
  text-transform: capitalize;
  font-size: 1.1em;
}
.booked-venue .header p {
  padding: 0 15px;
}
.booked-venue .header .button {
  display: table;
  margin: 30px auto 0 auto;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-venue .header .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
@media only screen and (min-width : 1024px) {
  .booked-venue .header h2 em {
    font-size: 1.2em;
  }
}

.booked-venue .video-container {
  padding: 5vw;
}

/*
*
*
* BOOKED CLIENTS - AMENITIES
*
*/
.booked-amenities {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media (orientation: portrait) {
  .booked-amenities {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .booked-amenities {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.booked-amenities .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  color: #f7f5f0;
}
@media only screen and (min-width : 960px) {
  .booked-amenities .container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
  }
}

.booked-amenities .left {
  margin-bottom: 40px;
  text-align: center;
}
.booked-amenities .left .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
  color: #afc2cc;
}
.booked-amenities .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-amenities .left h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-amenities .left .text {
  margin-bottom: 25px;
  line-height: 1.55;
}
.booked-amenities .left ul {
  padding: 0;
  margin: 0;
  list-style-position: inside;
}
.booked-amenities .left .button {
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-amenities .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.booked-amenities .left .button {
  display: table;
  margin: 30px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .booked-amenities .left {
    width: 45%;
    max-width: 540px;
    margin: 0 auto;
    text-align: left;
  }
  .booked-amenities .left .button {
    margin: 30px 0 0 0;
  }
}
@media only screen and (min-width : 960px) {
  .booked-amenities .left {
    width: 45%;
  }
}

.booked-amenities .right .image {
  display: block;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 0.8333333333;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.booked-amenities .right .image > div,
.booked-amenities .right .image img,
.booked-amenities .right .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .booked-amenities .right .image {
    padding: 8px;
  }
}
.booked-amenities .right .image {
  max-width: 500px;
  height: 100%;
}
@media only screen and (min-width : 960px) {
  .booked-amenities .right {
    width: 48%;
  }
  .booked-amenities .right .image {
    max-width: 100%;
    margin: 0;
    aspect-ratio: 0.8333333333;
    background-color: #afc2cc;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .booked-amenities .right .image > div,
  .booked-amenities .right .image img,
  .booked-amenities .right .image video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .booked-amenities .right .image {
    padding: 8px;
  }
}

/*
*
*
* BOOKED CLIENTS - REQUIRED VENDORS
*
*/
.booked-requiredvendors {
  padding: 12vh 0 9vh 0;
}

.booked-requiredvendors .guide-header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}
.booked-requiredvendors .guide-header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
  color: #6a764b;
}
.booked-requiredvendors .guide-header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-requiredvendors .guide-header h2 {
    padding: 0.7em 0 0.3em 0;
  }
}

.booked-requiredvendors .header h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-requiredvendors .header h3 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-requiredvendors .header p:last-of-type {
  margin-bottom: 0;
}
.booked-requiredvendors .header {
  padding-bottom: 1.75rem;
  margin-bottom: 1.75rem;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.booked-requiredvendors .header:before, .booked-requiredvendors .header:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.booked-requiredvendors .header:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.booked-requiredvendors .header:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}

.booked-requiredvendors .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}

.booked-requiredvendors .content {
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: 10%;
       column-gap: 10%;
}
.booked-requiredvendors .content .category {
  margin-bottom: 3rem;
  line-height: 1.35;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
.booked-requiredvendors .content h4 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin-bottom: 0.75em;
}
.booked-requiredvendors .content p {
  font-size: 112%;
}
.booked-requiredvendors .content strong {
  font-weight: 700;
}
@media only screen and (min-width : 960px) {
  .booked-requiredvendors .content {
    -moz-columns: 3;
         columns: 3;
  }
}

/*
*
*
* BOOKED CLIENTS - MANOR CONCIERGE
*
*/
@media (orientation: portrait) {
  .booked-manorconcierge {
    padding-top: 6vh;
    padding-bottom: 3vh;
  }
}
@media (orientation: landscape) {
  .booked-manorconcierge {
    padding-top: 9vh;
    padding-bottom: 4vh;
  }
}
.booked-manorconcierge {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  aspect-ratio: auto;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.booked-manorconcierge > div,
.booked-manorconcierge img,
.booked-manorconcierge video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .booked-manorconcierge {
    padding: 8px;
  }
}

.booked-manorconcierge .container {
  text-align: center;
  background: #f7f5f0;
  padding: 10vw 8vw;
}
@media only screen and (min-width : 960px) {
  .booked-manorconcierge .container {
    display: flex;
    flex-flow: row nowrap;
    padding: min(4vw, 48px);
  }
}

.booked-manorconcierge .left p:last-of-type {
  margin-bottom: 0;
}
.booked-manorconcierge .left {
  padding-bottom: 1.75rem;
  margin-bottom: 1.75rem;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.booked-manorconcierge .left:before, .booked-manorconcierge .left:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.booked-manorconcierge .left:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.booked-manorconcierge .left:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}
.booked-manorconcierge .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  margin-bottom: 0.2em;
}
.booked-manorconcierge .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin-bottom: 0.75em;
}
.booked-manorconcierge .left img {
  display: block;
  margin: 20px auto;
  width: auto;
  height: 130px;
}
@media only screen and (min-width : 960px) {
  .booked-manorconcierge .left {
    width: 50%;
    border-bottom: none;
    border-right: 1px solid #afc2cc;
    padding: 0 min(4vw, 48px) 0 0;
    margin: 0;
    text-align: left;
  }
  .booked-manorconcierge .left:before {
    left: auto;
    right: 0;
    top: 0;
    transform-origin: center center;
    transform: translateX(50%) translateY(-50%) rotate(45deg);
  }
  .booked-manorconcierge .left:after {
    right: -2px;
    transform-origin: center center;
    transform: translateY(50%) rotate(45deg);
  }
  .booked-manorconcierge .left img {
    display: block;
    margin: 30px 0;
    width: auto;
    height: 200px;
  }
}

.booked-manorconcierge .right .category:nth-of-type(n + 2) {
  margin-top: 1.75rem;
}
.booked-manorconcierge .right h4 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin-bottom: 0.75em;
}
.booked-manorconcierge .right ul {
  list-style-position: inside;
  margin: 0;
  padding: 0;
}
.booked-manorconcierge .right p {
  font-size: 112%;
}
.booked-manorconcierge .right strong {
  font-weight: 700;
}
@media only screen and (min-width : 960px) {
  .booked-manorconcierge .right {
    text-align: left;
    width: 50%;
    padding: 0 0 0 min(3vw, 48px);
  }
  .booked-manorconcierge .right ul {
    list-style-position: outside;
    margin: 0 0 0 1em;
  }
}

/*
*
*
* BOOKED CLIENTS - PREFERRED VENDORS
*
*/
.booked-preferredvendors {
  padding: 9vh 0;
}

.booked-preferredvendors .header p:last-of-type {
  margin-bottom: 0;
}
.booked-preferredvendors .header {
  padding-bottom: 1.75rem;
  margin-bottom: 1.75rem;
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.booked-preferredvendors .header:before, .booked-preferredvendors .header:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.booked-preferredvendors .header:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(50%) rotate(45deg);
}
.booked-preferredvendors .header:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(50%) rotate(45deg);
}
.booked-preferredvendors .header h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-preferredvendors .header h3 {
    padding: 0 0 0.3em 0;
  }
}
.booked-preferredvendors .header .buttons {
  margin: 20px 0 15px 0;
}
.booked-preferredvendors .header .button {
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-preferredvendors .header .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
.booked-preferredvendors .header .button {
  display: table;
  margin: 15px 0 0 0;
}
@media only screen and (min-width : 960px) {
  .booked-preferredvendors .header .buttons {
    margin: 25px 0 0 0;
    display: flex;
    flex-flow: row nowrap;
  }
  .booked-preferredvendors .header .button {
    margin: 0 15px 0 0;
  }
}

.booked-preferredvendors .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}

.booked-preferredvendors .content {
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: 10%;
       column-gap: 10%;
}
.booked-preferredvendors .content .category {
  margin-bottom: 3rem;
  line-height: 1.35;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
.booked-preferredvendors .content h4 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin-bottom: 0.75em;
}
.booked-preferredvendors .content p {
  font-size: 112%;
}
.booked-preferredvendors .content strong {
  font-weight: 700;
}
@media only screen and (min-width : 960px) {
  .booked-preferredvendors .content {
    -moz-columns: 3;
         columns: 3;
  }
}

/*
*
*
* BOOKED CLIENTS - CATERING
*
*/
.booked-catering {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media only screen and (min-width : 960px) {
  .booked-catering {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.booked-catering .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .booked-catering .left {
    padding-top: 101px;
  }
}
.booked-catering .left {
  padding-bottom: 60px;
}
.booked-catering .left .container {
  width: 80%;
  margin: 0 auto;
}
.booked-catering .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.booked-catering .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-catering .left h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-catering .left .buttons {
  margin-top: 30px;
}
.booked-catering .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-catering .left .button:hover {
  background: #6a764b;
  color: #f7f5f0;
}
.booked-catering .left .button {
  display: table;
  margin: 15px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .booked-catering .left {
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
  .booked-catering .left .buttons {
    margin-top: 45px;
    display: flex;
    flex-flow: row nowrap;
  }
  .booked-catering .left .button {
    margin: 0 15px 0 0;
  }
}
@media only screen and (min-width : 1512px) {
  .booked-catering .left .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

.booked-catering .right img {
  background: #2f3e4c;
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .booked-catering .right {
    width: 50%;
    position: relative;
  }
  .booked-catering .right img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* BOOKED CLIENTS - BEVERAGES
*
*/
.booked-beverages {
  background: #6a764b;
  display: flex;
  flex-flow: column;
}
@media only screen and (min-width : 960px) {
  .booked-beverages {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.booked-beverages .left {
  order: 2;
}
.booked-beverages .left img {
  background: #2f3e4c;
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .booked-beverages .left {
    order: 1;
    width: 50%;
    position: relative;
  }
  .booked-beverages .left img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

.booked-beverages .right {
  order: 1;
  text-align: center;
  color: #f7f5f0;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .booked-beverages .right {
    padding-top: 101px;
  }
}
.booked-beverages .right {
  padding-bottom: 60px;
}
.booked-beverages .right .container {
  width: 80%;
  margin: 0 auto;
}
.booked-beverages .right .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.booked-beverages .right h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-beverages .right h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-beverages .right .text ul {
  list-style-position: inside;
  margin: 0 0 1em 0;
  padding: 0;
}
.booked-beverages .right .buttons {
  margin-top: 30px;
}
.booked-beverages .right .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-beverages .right .button:hover {
  background: #6a764b;
  color: #f7f5f0;
}
.booked-beverages .right .button {
  display: table;
  margin: 15px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .booked-beverages .right {
    order: 2;
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
  .booked-beverages .right .buttons {
    margin-top: 45px;
    display: flex;
    flex-flow: row nowrap;
  }
  .booked-beverages .right .button {
    margin: 0 15px 0 0;
  }
}
@media only screen and (min-width : 1512px) {
  .booked-beverages .right .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

/*
*
*
* BOOKED CLIENTS - ACCOMMODATIONS
*
*/
.booked-accommodations {
  background: url(img/satin-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media only screen and (min-width : 960px) {
  .booked-accommodations {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.booked-accommodations .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .booked-accommodations .left {
    padding-top: 101px;
  }
}
.booked-accommodations .left {
  padding-bottom: 60px;
}
.booked-accommodations .left .container {
  width: 80%;
  margin: 0 auto;
}
.booked-accommodations .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.booked-accommodations .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-accommodations .left h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-accommodations .left .buttons {
  margin-top: 30px;
}
.booked-accommodations .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.booked-accommodations .left .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
.booked-accommodations .left .button {
  display: table;
  margin: 15px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .booked-accommodations .left {
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
  .booked-accommodations .left .buttons {
    margin-top: 45px;
    display: flex;
    flex-flow: row nowrap;
  }
  .booked-accommodations .left .button {
    margin: 0 15px 0 0;
  }
}
@media only screen and (min-width : 1512px) {
  .booked-accommodations .left .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

.booked-accommodations .right img {
  background: #2f3e4c;
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .booked-accommodations .right {
    width: 50%;
    position: relative;
  }
  .booked-accommodations .right img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* BOOKED CLIENTS - FAQ
*
*
*/
.booked-faq {
  background: #2f3e4c;
  color: #f7f5f0;
}
@media (orientation: portrait) {
  .booked-faq {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .booked-faq {
    padding-top: 18vh;
    padding-bottom: 18vh;
  }
}
.booked-faq {
  border-bottom: 1px solid #afc2cc;
}

.booked-faq .header {
  width: 85%;
  max-width: 540px;
  margin: 0 auto 5rem auto;
  text-align: center;
}
.booked-faq .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}
.booked-faq .header h1 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .booked-faq .header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.booked-faq .header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}

.booked-faq .accordion {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}

.booked-faq .accordion-panel .text {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}
.booked-faq .accordion-panel .text a {
  color: #f7f5f0;
}
.booked-faq .accordion-panel .text a:hover {
  color: #f4dbd0;
}
.booked-faq .accordion-panel .text ul,
.booked-faq .accordion-panel .text ol {
  list-style-position: outside;
  margin: 0;
  padding: 0;
  text-align: left;
}
.booked-faq .accordion-panel .text ul li,
.booked-faq .accordion-panel .text ol li {
  margin-bottom: 1rem;
}

@media only screen and (min-width : 960px) {
  body.page-template-page-catering .nav-toggle {
    color: #f7f5f0;
  }
}

/*
*
*
* COVER
*
*/
.catering-cover {
  background: url(img/satin-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media only screen and (min-width : 960px) {
  .catering-cover {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.catering-cover .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .catering-cover .left {
    padding-top: 101px;
  }
}
.catering-cover .left {
  padding-bottom: 60px;
}
.catering-cover .left .container {
  width: 80%;
  margin: 0 auto;
}
.catering-cover .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
}
.catering-cover .left h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .catering-cover .left h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.catering-cover .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.catering-cover .left .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.catering-cover .left .button {
  display: table;
  margin: 30px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .catering-cover .left {
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
  .catering-cover .left .button {
    margin: 45px 0 0 0;
  }
}
@media only screen and (min-width : 1512px) {
  .catering-cover .left .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

.catering-cover .right video {
  background: #2f3e4c;
  width: 100%;
  height: 120vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.catering-cover .right video.is-loaded {
  opacity: 1;
}
@media only screen and (min-width : 960px) {
  .catering-cover .right {
    width: 50%;
    position: relative;
  }
  .catering-cover .right video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* MENU
*
*/
.catering-menu {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  color: #f7f5f0;
}
@media (orientation: portrait) {
  .catering-menu {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .catering-menu {
    padding-top: 18vh;
    padding-bottom: 18vh;
  }
}

.catering-menu .header {
  width: 85%;
  max-width: 760px;
  margin: 0 auto 5rem auto;
  text-align: center;
}
.catering-menu .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}
.catering-menu .header h1 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .catering-menu .header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.catering-menu .header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}

.catering-menu .accordion {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}

.catering-menu .accordion-item button {
  text-align: left;
}
.catering-menu .accordion-item button h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-item button {
    text-align: center;
  }
}

.catering-menu .accordion-panel .tab-image {
  aspect-ratio: 1.7558139535;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.catering-menu .accordion-panel .tab-image > div,
.catering-menu .accordion-panel .tab-image img,
.catering-menu .accordion-panel .tab-image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-panel .tab-image {
    padding: 8px;
  }
}
.catering-menu .accordion-panel .tab-image {
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
}

.catering-menu .accordion-section-header {
  padding: 35px 0 12px 0;
  text-align: left;
}
.catering-menu .accordion-section-header h4 {
  line-height: 1;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
}
.catering-menu .accordion-section-header span {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 400;
  color: #afc2cc;
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-section-header {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (min-width : 640px) {
  .catering-menu .accordion-section-header {
    padding: 50px 0 16px 0;
  }
}
@media only screen and (min-width : 1024px) {
  .catering-menu .accordion-section-header {
    padding: 72px 0 20px 0;
  }
}

.catering-menu .accordion-row {
  text-align: left;
  border-top: 1px solid #afc2cc;
  padding: 15px 0;
  position: relative;
}
.catering-menu .accordion-row:before, .catering-menu .accordion-row:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.catering-menu .accordion-row:before {
  left: 0;
  transform-origin: center center;
  transform: translateY(-50%) rotate(45deg);
}
.catering-menu .accordion-row:after {
  right: 0;
  transform-origin: center center;
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width : 640px) {
  .catering-menu .accordion-row {
    padding: 24px 0;
  }
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-row {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width : 1024px) {
  .catering-menu .accordion-row {
    padding: 32px 0;
  }
}

.catering-menu .accordion-row .row-info {
  padding: 5px 0 15px 0;
}
.catering-menu .accordion-row .row-info h5 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  font-weight: 400;
}
.catering-menu .accordion-row .row-info strong,
.catering-menu .accordion-row .row-info em {
  font-size: 1.05rem;
}
.catering-menu .accordion-row .row-info strong {
  font-style: italic;
  display: block;
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-row .row-info {
    width: 30%;
  }
  .catering-menu .accordion-row .row-info strong {
    margin-bottom: 15px;
  }
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-row .row-info {
    width: 25%;
  }
}
@media only screen and (min-width : 1024px) {
  .catering-menu .accordion-row .row-info {
    width: 22.5%;
    max-width: 270px;
  }
}

.catering-menu .accordion-row .menu-items {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-left: 1em;
}
@media only screen and (min-width : 768px) {
  .catering-menu .accordion-row .menu-items {
    width: 65%;
  }
}
@media only screen and (min-width : 1024px) {
  .catering-menu .accordion-row .menu-items {
    -moz-columns: 2;
         columns: 2;
    width: 70%;
    -moz-column-gap: 6%;
         column-gap: 6%;
  }
}
@media only screen and (min-width : 1280px) {
  .catering-menu .accordion-row .menu-items {
    width: 72.5%;
    -moz-column-gap: 7.5%;
         column-gap: 7.5%;
  }
}

.catering-menu .accordion-row .menu-items > li {
  margin-bottom: 7px;
}
@media only screen and (min-width : 1024px) {
  .catering-menu .accordion-row .menu-items > li {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
    margin-bottom: 8px;
  }
}

.catering-menu .accordion-row .menu-item-header {
  font-size: 1.375rem;
  line-height: 1.3;
  padding-bottom: 0.4em;
  text-wrap: balance;
}

.catering-menu .accordion-row .menu-item-title {
  display: inline;
}

.catering-menu .menu-item-restrictions {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-flex;
  flex-flow: row wrap;
  align-items: center;
  margin-left: 0.25em;
  line-height: 1;
  white-space: nowrap;
}
.catering-menu .menu-item-restrictions li {
  padding: 0;
  color: #afc2cc;
}
.catering-menu .menu-item-restrictions li:nth-of-type(n + 2) {
  padding-left: 6px;
  margin-left: 6px;
  border-left: 1px solid #afc2cc;
}

.catering-menu .menu-item-description {
  line-height: 1.3;
  margin-bottom: 22px;
}
.catering-menu .menu-item-description ul {
  padding: 0;
  margin: 0 0 0 1em;
}

/*
*
*
* DONOVAN'S DISH
*
*/
@media (orientation: portrait) {
  .catering-donovansdish {
    padding-top: 6vh;
    padding-bottom: 0;
  }
}
@media (orientation: landscape) {
  .catering-donovansdish {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

@media (orientation: portrait) {
  .catering-donovansdish .header {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .catering-donovansdish .header {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.catering-donovansdish .header {
  width: 90%;
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
}
.catering-donovansdish .header img {
  display: block;
  margin: 0 auto 30px auto;
  width: 50%;
  max-width: 326px;
}
.catering-donovansdish .header .button {
  display: table;
  margin: 35px auto 0 auto;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.catering-donovansdish .header .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}

.catering-donovansdish .images {
  width: 80%;
  margin: 0 auto;
  text-align: center;
}
.catering-donovansdish .images .text {
  padding: 15px 0;
}
.catering-donovansdish .images .text h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .catering-donovansdish .images .text h3 {
    padding: 0 0 0.3em 0;
  }
}
.catering-donovansdish .images .left-col,
.catering-donovansdish .images .center-col,
.catering-donovansdish .images .right-col {
  margin: 0 0 30px 0;
}
.catering-donovansdish .images .left-col img,
.catering-donovansdish .images .center-col img,
.catering-donovansdish .images .right-col img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .catering-donovansdish .images {
    width: 88%;
    max-width: 1280px;
    overflow: hidden;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    margin: max(150px, 10vh) auto 0 auto;
    overflow: visible;
  }
  .catering-donovansdish .images .left-col,
  .catering-donovansdish .images .center-col,
  .catering-donovansdish .images .right-col {
    position: relative;
  }
  .catering-donovansdish .images .left-col,
  .catering-donovansdish .images .right-col {
    width: 30%;
  }
  .catering-donovansdish .images .left-col img,
  .catering-donovansdish .images .right-col img {
    aspect-ratio: 336/470;
  }
  .catering-donovansdish .images .left-col {
    transform: translateX(-12.5%);
  }
  .catering-donovansdish .images .center-col {
    width: 40%;
  }
  .catering-donovansdish .images .center-col .image {
    aspect-ratio: 0.714893617;
    background-color: #afc2cc;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .catering-donovansdish .images .center-col .image > div,
  .catering-donovansdish .images .center-col .image img,
  .catering-donovansdish .images .center-col .image video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .catering-donovansdish .images .center-col .image {
    padding: 8px;
  }
}
@media only screen and (min-width : 960px) {
  .catering-donovansdish .images .right-col {
    transform: translateX(12.5%);
  }
  .catering-donovansdish .images .text {
    padding: 0 5% 25px 5%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transform: translateY(-100%);
  }
}

@media only screen and (min-width : 960px) {
  body.page-template-page-contact .site-header .nav-toggle {
    color: #f7f5f0;
  }
}
@media only screen and (min-width : 960px) {
  body.page-template-page-contact .site-main {
    display: flex;
    flex-flow: row nowrap;
  }
}

/*
*
*
* CONTACT - SIDEBAR
*
*/
.contact-sidebar {
  padding: 120px 0 40px 0;
}
@media only screen and (min-width : 960px) {
  .contact-sidebar {
    width: 42.5%;
    max-width: 544px;
    height: 100vh;
    overflow-y: auto;
    padding: 5vw 0;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
}

.contact-sidebar::-webkit-scrollbar {
  display: none;
}

.contact-sidebar .container {
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-around;
  gap: 60px;
}
@media only screen and (min-width : 960px) {
  .contact-sidebar .container {
    width: 70%;
    height: 100%;
    justify-content: space-between;
  }
  .contact-sidebar .container:before {
    content: "";
    display: block;
  }
}

.contact-sidebar .text .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
}
.contact-sidebar .text h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .contact-sidebar .text h2 {
    padding: 0.7em 0 0.3em 0;
  }
}

.contact-sidebar .text .info {
  padding-top: 30px;
  margin-top: 30px;
  border-top: 1px solid #afc2cc;
  position: relative;
}
.contact-sidebar .text .info:before, .contact-sidebar .text .info:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.contact-sidebar .text .info:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.contact-sidebar .text .info:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
.contact-sidebar .text .info address,
.contact-sidebar .text .info address a,
.contact-sidebar .text .info a.tel {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin-bottom: 1.25rem;
  text-decoration: none;
}
.contact-sidebar .text .info .social {
  margin: 0;
  padding: 0;
  list-style: none;
}
.contact-sidebar .text .info .social li {
  display: inline-block;
}
.contact-sidebar .text .info .social li:nth-of-type(n + 2) {
  margin-left: 0.65rem;
}
.contact-sidebar .text .info .social {
  margin-top: 1.75rem;
}
.contact-sidebar .text .info .social a {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  margin: 0;
  width: 28px;
  height: 28px;
  border-radius: 100vmin;
  background: #2f3e4c;
  font-size: 17px;
  color: #f7f5f0;
  transition: all ease-in-out 0.3s;
}
.contact-sidebar .text .info .social a:hover {
  background: #afc2cc;
  transform: translateY(-3px);
}

.contact-sidebar .vendor .button {
  display: table;
  margin-top: 2rem;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.contact-sidebar .vendor .button:hover {
  background: #2f3e4c;
  color: #f7f5f0;
}

/*
*
*
* CONTACT - FORM
*
*/
.contact-form {
  background: url(img/moss-pattern.png);
  background-size: 360px 361px;
  padding: 45px 0;
}
@media only screen and (min-width : 960px) {
  .contact-form {
    width: 57.5%;
    height: 100vh;
    overflow-y: scroll;
    padding: 10vh 0;
  }
}
@media only screen and (min-width : 1280px) {
  .contact-form {
    width: calc(100% - 544px);
  }
}

.contact-form .container {
  width: 90%;
  margin: 0 auto;
}
@media only screen and (min-width : 960px) {
  .contact-form .container {
    width: 60%;
    max-width: 720px;
  }
}

body.page-template-page-contactsuccess .site-main,
body.page-template-page-contactsuccess .contact-success,
body.page-template-page-contactsuccess .container {
  min-height: 100dvh;
}

/*
*
*
* CONTACT SUCCESS - TEXT
*
*/
.contact-success .container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-between;
  margin: 0 auto;
}
.contact-success .container:before {
  content: "";
  display: block;
  height: 73px;
}

.contact-success .text {
  padding: 4dvh 0 7.5dvh 0;
  text-align: center;
  width: 80%;
  max-width: 600px;
  margin: 0 auto;
}
.contact-success .text .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
}
.contact-success .text h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .contact-success .text h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.contact-success .text .buttons {
  padding-top: 20px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
}
.contact-success .text .buttons .button {
  margin: 0 1em;
}
.contact-success .text .buttons .button.--moss {
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.contact-success .text .buttons .button.--moss:hover {
  background: #2f3e4c;
  color: #f7f5f0;
}
.contact-success .text .buttons .button.--midnight {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.contact-success .text .buttons .button.--midnight:hover {
  background: #afc2cc;
  color: #2f3e4c;
}

.contact-success .image {
  background: url(img/house-illustration.png) no-repeat;
  background-position: bottom center;
  background-size: contain;
  flex: 1;
  width: 97.5%;
  max-width: 1100px;
  margin: 0 auto;
}

/*
*
*
* ELOPEMENT - RESERVATIONS
*
*/
@media (orientation: portrait) {
  .elopement-reservations {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .elopement-reservations {
    padding-top: 18vh;
    padding-bottom: 18vh;
  }
}

.elopement-reservations .header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
  text-align: center;
  text-wrap: balance;
}
.elopement-reservations .header p:last-of-type {
  margin-bottom: 0;
}
.elopement-reservations .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .elopement-reservations .header h2 {
    padding: 0 0 0.3em 0;
  }
}

.elopement-reservations .content {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}

.elopement-reservations .dates {
  padding: min(8vw, 60px);
}
.elopement-reservations .dates .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  color: #6a764b;
  margin-bottom: 0.5rem;
}
.elopement-reservations .dates ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.elopement-reservations .dates li {
  font-size: clamp(17px, 14.5668449198px + 0.623885918vw, 24px);
  font-weight: 300;
  line-height: 1.83;
  font-style: italic;
  padding: 0.4em 0 0.35em 0;
}
.elopement-reservations .dates li:nth-of-type(n + 2) {
  position: relative;
}
.elopement-reservations .dates li:nth-of-type(n + 2):before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 1px;
  background: #2f3e4c;
}
@media only screen and (min-width : 768px) {
  .elopement-reservations .dates ul {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
  }
  .elopement-reservations .dates li {
    padding: 0 15px;
  }
  .elopement-reservations .dates li:nth-of-type(n + 2):before {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 20px;
  }
}

.elopement-reservations .times ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 12px;
}
.elopement-reservations .times li {
  border: 1px solid #2f3e4c;
  width: calc(50% - 6px);
}
.elopement-reservations .times a {
  display: block;
  text-decoration: none;
  padding: 10px 5px;
  transition: all ease-in-out 0.3s;
}
.elopement-reservations .times a:hover {
  background: #2f3e4c;
  color: #f7f5f0;
}
.elopement-reservations .times a:hover .arrival {
  color: #afc2cc;
}
.elopement-reservations .times .window {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin-bottom: 4px;
}
.elopement-reservations .times .arrival {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  color: #6a764b;
  transition: all ease-in-out 0.3s;
}
@media only screen and (min-width : 640px) {
  .elopement-reservations .times li {
    width: calc(33.3333333333% - 8px);
  }
}
@media only screen and (min-width : 640px) {
  .elopement-reservations .times li {
    width: calc(33.3333333333% - 8px);
  }
}
@media only screen and (min-width : 960px) {
  .elopement-reservations .times ul {
    gap: 18px;
  }
  .elopement-reservations .times li {
    width: calc(25% - 14px);
  }
  .elopement-reservations .times a {
    padding: 14px 5px;
  }
}
@media only screen and (min-width : 1280px) {
  .elopement-reservations .times ul {
    gap: 30px;
  }
  .elopement-reservations .times li {
    width: calc(20% - 24px);
  }
}

/*
*
*
* ELOPEMENT - VIDEO
*
*/
.elopement-video {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  padding: 5vw;
}

/*
*
*
* ELOPEMENT - TIMELINE
*
*/
.elopement-timeline {
  background: #6a764b;
  display: flex;
  flex-flow: column;
}
@media only screen and (min-width : 960px) {
  .elopement-timeline {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.elopement-timeline .left {
  order: 2;
}
.elopement-timeline .left img {
  background: #2f3e4c;
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .elopement-timeline .left {
    order: 1;
    width: 50%;
    position: relative;
  }
  .elopement-timeline .left img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

.elopement-timeline .right {
  order: 1;
  text-align: center;
  color: #f7f5f0;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .elopement-timeline .right {
    padding-top: 101px;
  }
}
.elopement-timeline .right {
  padding-bottom: 60px;
}
.elopement-timeline .right .container {
  width: 80%;
  margin: 0 auto;
}
.elopement-timeline .right h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .elopement-timeline .right h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.elopement-timeline .right .text ul {
  list-style-position: inside;
  margin: 0 0 1em 0;
  padding: 0;
}
.elopement-timeline .right dl {
  margin: 2rem 0 0 0;
  padding: 0;
}
.elopement-timeline .right dl dt {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin: 1.5rem 0 0 0;
}
.elopement-timeline .right dl dd {
  margin: 0 0 0.75em 0;
  line-height: 1.55;
}
@media only screen and (min-width : 960px) {
  .elopement-timeline .right {
    order: 2;
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
}
@media only screen and (min-width : 1512px) {
  .elopement-timeline .right .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

/*
*
*
* 404
*
*
*/
.error-404 {
  text-align: center;
  min-height: 100vh;
  display: grid;
  justify-content: center;
  align-items: center;
}

.error-404 .container h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .error-404 .container h1 {
    padding: 0 0 0.3em 0;
  }
}
.error-404 .container p {
  margin-bottom: 4rem;
}
.error-404 .container a {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.error-404 .container a:hover {
  background: #afc2cc;
  color: #2f3e4c;
}

/*
*
*
* EVENTS - COVER
*
*/
.events-cover {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media (orientation: portrait) {
  .events-cover {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .events-cover {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.events-cover {
  color: #2f3e4c;
}

.events-cover .header {
  margin: 20px auto 40px auto;
  text-align: center;
}
.events-cover .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
}
.events-cover .header h1 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .events-cover .header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.events-cover .header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}

.events-cover .images {
  overflow: hidden;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}
.events-cover .images .mini-slider-box {
  width: 30%;
  aspect-ratio: 336/470;
  -o-object-fit: cover;
     object-fit: cover;
}
.events-cover .images .mini-slider-box:nth-of-type(1) {
  display: none;
}
.events-cover .images .mini-slider-box:nth-of-type(2) {
  transform: translateX(-12.5%);
  order: 1;
}
.events-cover .images .mini-slider-box:nth-of-type(3) {
  transform: translateX(12.5%);
  order: 3;
}
.events-cover .images .mini-slider-box:nth-of-type(4) {
  display: none;
}
.events-cover .images .video {
  order: 2;
  width: 40%;
  aspect-ratio: 0.714893617;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.events-cover .images .video > div,
.events-cover .images .video img,
.events-cover .images .video video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .events-cover .images .video {
    padding: 8px;
  }
}
@media only screen and (min-width : 960px) {
  .events-cover .images .mini-slider-box:nth-of-type(1) {
    display: block;
    width: 15%;
    transform: translateX(-4vw);
    order: 1;
  }
  .events-cover .images .mini-slider-box:nth-of-type(2) {
    width: 21%;
    transform: translateX(-2vw);
    order: 2;
  }
  .events-cover .images .mini-slider-box:nth-of-type(3) {
    width: 21%;
    transform: translateX(2vw);
    order: 4;
  }
  .events-cover .images .mini-slider-box:nth-of-type(4) {
    display: block;
    width: 15%;
    transform: translateX(4vw);
    order: 5;
  }
  .events-cover .images .video {
    order: 3;
    width: 28%;
    aspect-ratio: 0.714893617;
    background-color: #2f3e4c;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .events-cover .images .video > div,
  .events-cover .images .video img,
  .events-cover .images .video video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .events-cover .images .video {
    padding: 8px;
  }
}

.events-cover .images .mini-slider-box {
  position: relative;
  overflow: hidden;
  aspect-ratio: 360/500;
}

.events-cover .images .mini-slider-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.events-cover .images .mini-slider-box .img-fade {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: crossfadeCycle 17.333s ease-in-out infinite;
}

/* 0% / 100%   = a-image showing (fade image hidden)
   3.846%      = 1s crossfade complete -> b-image showing   (1s / 26s)
   50%         = holds through the 12s wait                 (13s / 26s)
   53.846%     = 1s crossfade back complete -> a-image again (14s / 26s)
   remainder   = holds through the last 12s wait back to 0%  (26s / 26s) */
@keyframes crossfadeCycle {
  0% {
    opacity: 0;
  }
  3.846% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  53.846% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.events-cover .images .mini-slider-box:nth-child(1) .img-fade {
  animation-delay: 0s;
}

.events-cover .images .mini-slider-box:nth-child(2) .img-fade {
  animation-delay: 2s;
}

.events-cover .images .mini-slider-box:nth-child(3) .img-fade {
  animation-delay: 6s;
}

.events-cover .images .mini-slider-box:nth-child(4) .img-fade {
  animation-delay: 4s;
}

.events-cover .seperator {
  width: 100%;
  height: 80px;
  position: relative;
}
.events-cover .seperator:before {
  content: "";
  display: block;
  width: 1.5px;
  height: 100%;
  background: #2f3e4c;
  position: absolute;
  left: 50%;
  top: 0;
}
.events-cover .seperator:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  background: #2f3e4c;
  position: absolute;
  bottom: 0;
  left: calc(50% + 0.75px);
  transform: translateX(-50%) rotate(45deg);
}
@media only screen and (min-width : 960px) {
  .events-cover .seperator {
    height: 120px;
  }
}

@media (orientation: portrait) {
  .events-cover .info {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .events-cover .info {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

@media (orientation: portrait) {
  .events-cover .details {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .events-cover .details {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.events-cover .details {
  width: 90%;
  max-width: 840px;
  margin: 0 auto;
  text-align: center;
}
.events-cover .details .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin-bottom: 3em;
}
.events-cover .details p {
  font-size: clamp(17px, 14.5668449198px + 0.623885918vw, 24px);
  font-weight: 300;
  line-height: 1.83;
}
.events-cover .details .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.events-cover .details .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.events-cover .details .button {
  display: table;
  margin: 40px auto 0 auto;
}

/*
*
*
* EVENTS - PACKAGES
*
*/
.events-packages {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .events-packages {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .events-packages {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.events-packages {
  position: relative;
}
.events-packages img.badge {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 156px;
  height: 120px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media only screen and (min-width : 1024px) {
  .events-packages img.badge {
    width: 234px;
    height: 180px;
  }
}

.events-packages .header {
  padding: 28px 16px;
}
.events-packages .header p:last-of-type {
  margin-bottom: 0;
}
.events-packages .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
  color: #6a764b;
}
.events-packages .header h2 {
  margin: 0.6em 0 0.3em 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
}
@media only screen and (min-width : 768px) {
  .events-packages .header {
    padding: 32px 24px;
    display: grid;
    align-items: flex-end;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    grid-template-areas: "left right";
  }
  .events-packages .header p:last-of-type {
    margin-bottom: 0;
  }
  .events-packages .header .left {
    grid-area: left;
  }
  .events-packages .header h2 {
    margin-bottom: 0;
  }
  .events-packages .header p {
    width: 90%;
    max-width: 500px;
  }
  .events-packages .header .right {
    grid-area: right;
  }
  .events-packages .header .right p {
    margin-left: auto;
  }
}
@media only screen and (min-width : 1280px) {
  .events-packages .header {
    padding: 36px 30px;
  }
}

.events-packages .accordion-item button {
  text-align: left;
}
.events-packages .accordion-item button h3 {
  font-size: clamp(31px, 25.0909090909px + 1.5151515152vw, 48px);
  font-weight: 300;
  text-transform: none;
}

.events-packages .accordion-item .container {
  margin: 0 auto;
  max-width: 640px;
}
@media only screen and (min-width : 960px) {
  .events-packages .accordion-item .container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    max-width: 100%;
  }
}

@media only screen and (min-width : 960px) {
  .events-packages .accordion-item .left {
    width: 52.5%;
  }
}

.events-packages .accordion-item .left .cropped-frame {
  margin: 0 auto 15px auto;
  max-width: 640px;
}
@media only screen and (min-width : 960px) {
  .events-packages .accordion-item .left .cropped-frame {
    margin: 0;
    max-width: 100%;
  }
}

.events-packages .accordion .accordion-item:nth-of-type(5n + 1) .cropped-frame {
  aspect-ratio: 1.3831967213;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.events-packages .accordion .accordion-item:nth-of-type(5n + 1) .cropped-frame > div,
.events-packages .accordion .accordion-item:nth-of-type(5n + 1) .cropped-frame img,
.events-packages .accordion .accordion-item:nth-of-type(5n + 1) .cropped-frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .events-packages .accordion .accordion-item:nth-of-type(5n + 1) .cropped-frame {
    padding: 8px;
  }
}

.events-packages .accordion .accordion-item:nth-of-type(5n + 2) .cropped-frame {
  aspect-ratio: 1.3831967213;
  background-color: #6a764b;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.events-packages .accordion .accordion-item:nth-of-type(5n + 2) .cropped-frame > div,
.events-packages .accordion .accordion-item:nth-of-type(5n + 2) .cropped-frame img,
.events-packages .accordion .accordion-item:nth-of-type(5n + 2) .cropped-frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .events-packages .accordion .accordion-item:nth-of-type(5n + 2) .cropped-frame {
    padding: 8px;
  }
}

.events-packages .accordion .accordion-item:nth-of-type(5n + 3) .cropped-frame {
  aspect-ratio: 1.3831967213;
  background-color: #f4dbd0;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.events-packages .accordion .accordion-item:nth-of-type(5n + 3) .cropped-frame > div,
.events-packages .accordion .accordion-item:nth-of-type(5n + 3) .cropped-frame img,
.events-packages .accordion .accordion-item:nth-of-type(5n + 3) .cropped-frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .events-packages .accordion .accordion-item:nth-of-type(5n + 3) .cropped-frame {
    padding: 8px;
  }
}

.events-packages .accordion .accordion-item:nth-of-type(5n + 4) .cropped-frame {
  aspect-ratio: 1.3831967213;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.events-packages .accordion .accordion-item:nth-of-type(5n + 4) .cropped-frame > div,
.events-packages .accordion .accordion-item:nth-of-type(5n + 4) .cropped-frame img,
.events-packages .accordion .accordion-item:nth-of-type(5n + 4) .cropped-frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .events-packages .accordion .accordion-item:nth-of-type(5n + 4) .cropped-frame {
    padding: 8px;
  }
}

.events-packages .accordion .accordion-item:nth-of-type(5n + 5) .cropped-frame {
  aspect-ratio: 1.3831967213;
  background-color: #e0c4a2;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.events-packages .accordion .accordion-item:nth-of-type(5n + 5) .cropped-frame > div,
.events-packages .accordion .accordion-item:nth-of-type(5n + 5) .cropped-frame img,
.events-packages .accordion .accordion-item:nth-of-type(5n + 5) .cropped-frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .events-packages .accordion .accordion-item:nth-of-type(5n + 5) .cropped-frame {
    padding: 8px;
  }
}

@media only screen and (min-width : 960px) {
  .events-packages .accordion-item .right {
    width: calc(47.5% - 30px);
  }
}
@media only screen and (min-width : 1024px) {
  .events-packages .accordion-item .right {
    width: calc(47.5% - 40px);
  }
}
@media only screen and (min-width : 1280px) {
  .events-packages .accordion-item .right {
    width: calc(47.5% - 60px);
  }
}

.events-packages .accordion-item .right .label,
.events-packages .accordion-item .right .text,
.events-packages .accordion-item .right .list {
  padding: 15px 0;
}
.events-packages .accordion-item .right .label,
.events-packages .accordion-item .right .text {
  border-bottom: 1px solid #afc2cc;
  position: relative;
}
.events-packages .accordion-item .right .label:before, .events-packages .accordion-item .right .label:after,
.events-packages .accordion-item .right .text:before,
.events-packages .accordion-item .right .text:after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  bottom: -0.5px;
}
.events-packages .accordion-item .right .label:before,
.events-packages .accordion-item .right .text:before {
  left: 0;
  transform-origin: center center;
  transform: translateY(50%) rotate(45deg);
}
.events-packages .accordion-item .right .label:after,
.events-packages .accordion-item .right .text:after {
  right: 0;
  transform-origin: center center;
  transform: translateY(50%) rotate(45deg);
}
@media only screen and (min-width : 960px) {
  .events-packages .accordion-item .right .label,
  .events-packages .accordion-item .right .text,
  .events-packages .accordion-item .right .list {
    padding: 20px 15px;
  }
  .events-packages .accordion-item .right .label::before,
  .events-packages .accordion-item .right .text::before {
    display: none;
  }
  .events-packages .accordion-item .right .button {
    margin-left: 15px;
  }
}
@media only screen and (min-width : 1280px) {
  .events-packages .accordion-item .right .label,
  .events-packages .accordion-item .right .text,
  .events-packages .accordion-item .right .list {
    padding: 27px 24px;
  }
  .events-packages .accordion-item .right .label::before,
  .events-packages .accordion-item .right .text::before {
    display: none;
  }
  .events-packages .accordion-item .right .button {
    margin-left: 24px;
  }
}

.events-packages .accordion-item .right .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
}
@media only screen and (min-width : 960px) {
  .events-packages .accordion-item .right .label {
    padding-top: 8px;
  }
}
@media only screen and (min-width : 1280px) {
  .events-packages .accordion-item .right .label {
    padding-top: 12px;
  }
}

.events-packages .accordion-item .right .list span {
  display: block;
  margin: 0 0 10px 0;
}
.events-packages .accordion-item .right .list ul {
  margin: 0;
  padding: 0 0 0 1em;
}

.events-packages .accordion-item .right .button {
  display: table;
  margin-top: 10px;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.events-packages .accordion-item .right .button:hover {
  background: #6a764b;
  color: #f7f5f0;
}

body.page-template-page-faqs .site-branding .left svg path {
  fill: #f7f5f0;
}
body.page-template-page-faqs .nav-toggle {
  color: #f7f5f0;
}

/*
*
*
* FAQS
*
*/
.faqs {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  color: #f7f5f0;
}
@media (orientation: portrait) {
  .faqs {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .faqs {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.faqs .header {
  width: 85%;
  max-width: 760px;
  margin: 0 auto 5rem auto;
  text-align: center;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .faqs .header {
    padding-top: 101px;
  }
}
.faqs .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}
.faqs .header h1 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .faqs .header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.faqs .header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}

.faqs .accordion {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}

.faqs .accordion-panel .text {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}
.faqs .accordion-panel .text a {
  color: #f7f5f0;
}
.faqs .accordion-panel .text a:hover {
  color: #f4dbd0;
}
.faqs .accordion-panel .text ul,
.faqs .accordion-panel .text ol {
  list-style-position: inside;
  margin: 0;
  padding: 0;
}

body.post-type-archive-gallery .site-header,
body.single-gallery .site-header {
  position: absolute;
}
@media only screen and (min-width : 960px) {
  body.post-type-archive-gallery .site-header .nav-toggle,
  body.single-gallery .site-header .nav-toggle {
    color: #f7f5f0;
  }
}
/*
*
*
* CONTAINER
*
*/
@media only screen and (min-width : 960px) {
  .gallery {
    display: grid;
    grid-template-columns: 40% 60%;
    grid-template-rows: 30% 40% 30%;
    grid-template-areas: ". scroller" "header scroller" "nav scroller";
    width: 100vw;
    height: 100vh;
    overflow: hidden;
  }
}

/*
*
*
* SIDEBAR
*
*/
.gallery .page-header {
  width: 90%;
  margin: 0 auto;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .gallery .page-header {
    padding-top: 101px;
  }
}
.gallery .page-header p:last-of-type {
  margin-bottom: 0;
}
.gallery .page-header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .gallery .page-header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
@media only screen and (min-width : 960px) {
  .gallery .page-header {
    width: 100%;
    margin: 0;
    padding: 0 20px;
    grid-area: header;
    align-self: center;
  }
  .gallery .page-header h1 {
    padding-top: 0;
  }
}
@media only screen and (min-width : 1280px) {
  .gallery .page-header {
    padding: 0 40px 0 10%;
  }
}
@media only screen and (min-width : 1512px) {
  .gallery .page-header {
    padding: 0 25% 0 13%;
  }
}

.gallery-navigation {
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  padding: 20px 0;
  position: sticky;
  z-index: 900;
  top: 0;
  left: 0;
  width: 100%;
  padding-left: 5%;
  background: #f7f5f0;
}
.gallery-navigation .label {
  display: block;
  margin-bottom: 5px;
  width: 100%;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
}
.gallery-navigation .gallery-filter-btn {
  margin: 5px 5px 0px 0px;
  background: #f7f5f0;
  color: #2f3e4c;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.gallery-navigation .gallery-filter-btn:hover {
  background: #2f3e4c;
  color: #f7f5f0;
}
.gallery-navigation .gallery-filter-btn {
  border: 1px solid #2f3e4c;
}
.gallery-navigation .gallery-filter-btn.is-active {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.gallery-navigation .gallery-filter-btn.is-active:hover {
  background: #2f3e4c;
  color: #f7f5f0;
}
.gallery-navigation a.credit-link {
  display: block;
  font-style: italic;
  margin: 10px 5px 0px 0px;
  font-size: 0.85rem;
}
@media only screen and (min-width : 960px) {
  .gallery-navigation {
    margin: 0;
    padding: 0 0 20px 20px;
    grid-area: nav;
    background: none;
    align-self: self-end;
  }
}
@media only screen and (min-width : 1280px) {
  .gallery-navigation {
    padding: 0 0 10% 10%;
    flex-flow: column nowrap;
    align-items: flex-start;
  }
  .gallery-navigation .button {
    margin: 10px 0px 0px 0px;
  }
}
@media only screen and (min-width : 1512px) {
  .gallery-navigation {
    padding: 0 0 12% 12%;
  }
}

/*
*
*
* IMAGES
*
*/
.gallery-scroller {
  width: calc(100% - 20px);
  margin: 0 auto;
  overflow-y: auto;
}
@media only screen and (min-width : 960px) {
  .gallery-scroller {
    margin: 0;
    width: 100%;
    height: 100vh;
    grid-area: scroller;
    padding: 0 15px;
  }
}
@media only screen and (min-width : 1512px) {
  .gallery-scroller {
    padding: 0 20px;
  }
}

.masonry-wrap {
  display: flex;
  gap: var(--gap-mobile);
  align-items: flex-start;
}
@media only screen and (min-width : 960px) {
  .masonry-wrap {
    gap: var(--gap-tablet);
  }
}
@media only screen and (min-width : 1512px) {
  .masonry-wrap {
    gap: var(--gap-desktop);
  }
}

.masonry-col {
  display: flex;
  flex-direction: column;
  gap: var(--gap, 10px);
  flex: 1;
  min-width: 0;
}
@media only screen and (min-width : 960px) {
  .masonry-col {
    gap: var(--gap-tablet);
  }
}
@media only screen and (min-width : 1512px) {
  .masonry-col {
    gap: var(--gap-desktop);
  }
}

.gallery-item {
  position: relative;
  overflow: hidden;
  opacity: 1;
  transition: opacity 0.2s ease;
}

.gallery-item img {
  width: 100%;
  height: auto;
  display: block;
}

.gallery-item.is-hidden {
  display: none;
}

/*
.gallery-scroller {
  width: calc(100% - 20px);
  margin: 0 auto;
  overflow: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  grid-auto-flow: dense;
  @media only screen and (min-width : 960px) {
    margin: 0;
    width: 100%;
    padding: 0 15px;
    gap: 15px;
    grid-area: scroller;
  }
  @media only screen and (min-width : 1512px) {
    gap: 20px;
    padding: 0 20px;
  }
}

.gallery-item {
  img {
    display: block;
    margin: 0;
  }
}
*/
/*
.gallery-scroller {
  width: calc(100% - 20px);
  margin: 0 auto;
  overflow-y: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;


  grid-auto-rows: 2.5vw;
  gap: 10px;
  grid-auto-flow: dense;


  align-items: start;

  @media only screen and (min-width : 960px) {
    margin: 0;
    width: 100%;
    height: 100vh;
    grid-auto-rows: 10px;
    padding: 0 15px;
    gap: 15px;
    grid-area: scroller;
    align-items: stretch;
  }
  @media only screen and (min-width : 1512px) {
    gap: 20px;
    padding: 0 20px;
  }
}

.gallery-item {
  width: 100%;
  height: auto;
  overflow: hidden;
  grid-column: span 1;

  img {
    display: block;
    margin: 0;
    width: 100%;

    height: auto;
    max-height: 100%;
    object-fit: cover;
  }


  &.ratio-10-17 {
    grid-row: span 34;
  }
  &.ratio-10-14 {
    grid-row: span 28;
  }
  &.ratio-1-1 {
    grid-row: span 20;
  }
  &.ratio-10-7 {
    grid-row: span 14;
  }
}
*/
/*
*
*
* 404
*
*
*/
.photocredits {
  text-align: center;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .photocredits {
    padding-top: 101px;
  }
}
.photocredits {
  min-height: 100vh;
}

@media (orientation: portrait) {
  .photocredits .container {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .photocredits .container {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.photocredits .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
}
.photocredits .container h1 {
  margin-bottom: 1em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}
.photocredits .container ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.photocredits .container ul li {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin: 1.3em 0;
}

body.page-template-page-potentialclients .site-branding .left svg path {
  fill: #f7f5f0;
}
body.page-template-page-potentialclients .nav-toggle {
  color: #f7f5f0;
}

/*
*
*
* POTENTIAL CLIENTS - COVER
*
*
*/
.potential-cover {
  background: #2f3e4c;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  position: relative;
}
.potential-cover:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
}
@media (orientation: portrait) {
  .potential-cover {
    min-height: 80vh;
  }
}
@media (orientation: landscape) {
  .potential-cover {
    height: 100dvh;
  }
}

.potential-cover video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  -o-object-fit: cover;
     object-fit: cover;
}

.potential-cover .container {
  color: #f7f5f0;
  width: 75%;
  max-width: 560px;
  text-align: center;
  position: relative;
  z-index: 10;
}
.potential-cover .container img {
  display: block;
  margin-bottom: 1.25em;
}
.potential-cover .container .button {
  display: table;
  margin: 30px auto 0 auto;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.potential-cover .container .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.potential-cover .container small {
  display: block;
  margin-top: 20px;
  font-style: italic;
}

/*
*
*
* POTENTIAL CLIENTS - INTRO
*
*
*/
@media only screen and (min-width : 1024px) {
  .potential-intro {
    min-height: 100vh;
  }
}

.potential-intro .container {
  padding: 8vh 15px;
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}
.potential-intro .container .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
  color: #6a764b;
}
.potential-intro .container h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .potential-intro .container h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.potential-intro .container h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  line-height: 1.15;
}
.potential-intro .container h2 em {
  font-family: "filmotype-lacrosse", sans-serif;
  text-transform: capitalize;
  font-size: 1.1em;
}
.potential-intro .container p {
  padding: 0 15px;
}
.potential-intro .container .button {
  display: table;
  margin: 30px auto 0 auto;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.potential-intro .container .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
@media only screen and (min-width : 1024px) {
  .potential-intro .container {
    padding: 0;
  }
  .potential-intro .container h2 em {
    font-size: 1.2em;
  }
}

@media only screen and (min-width : 1024px) {
  .potential-intro .frame {
    padding: 8vh 0;
  }
}

/*
*
*
* POTENTIAL CLIENTS - WHY DM
*
*/
.potential-whydm {
  background: #afc2cc;
}
@media (orientation: portrait) {
  .potential-whydm {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .potential-whydm {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.potential-whydm .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .potential-whydm .container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
  }
}

.potential-whydm .left {
  margin-bottom: 40px;
  text-align: center;
}
.potential-whydm .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .potential-whydm .left h2 {
    padding: 0 0 0.3em 0;
  }
}
.potential-whydm .left .text {
  margin-bottom: 25px;
  line-height: 1.55;
}
.potential-whydm .left dl {
  margin: 0;
  padding: 0;
}
.potential-whydm .left dl dt {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  margin: 0.5em 0 0 0;
  padding-left: 15px;
  position: relative;
}
.potential-whydm .left dl dt:before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 2px);
  left: 5px;
  width: 3px;
  height: 3px;
  background: #2f3e4c;
  border-radius: 100vmin;
}
.potential-whydm .left dl dd {
  margin: 0 0 0.75em 0;
  line-height: 1.55;
  padding-left: 15px;
}
.potential-whydm .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.potential-whydm .left .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
.potential-whydm .left .button {
  display: table;
  margin: 20px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .potential-whydm .left {
    width: 45%;
    max-width: 540px;
    margin: 0 auto;
    text-align: left;
  }
  .potential-whydm .left .button {
    margin: 25px 0 0 0;
  }
}
@media only screen and (min-width : 960px) {
  .potential-whydm .left {
    width: 45%;
  }
}

.potential-whydm .right .image {
  display: block;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 0.8333333333;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.potential-whydm .right .image > div,
.potential-whydm .right .image img,
.potential-whydm .right .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .potential-whydm .right .image {
    padding: 8px;
  }
}
.potential-whydm .right .image {
  max-width: 500px;
  height: 100%;
}
@media only screen and (min-width : 960px) {
  .potential-whydm .right {
    width: 48%;
  }
  .potential-whydm .right .image {
    max-width: 100%;
    margin: 0;
    aspect-ratio: 0.8333333333;
    background-color: #2f3e4c;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .potential-whydm .right .image > div,
  .potential-whydm .right .image img,
  .potential-whydm .right .image video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .potential-whydm .right .image {
    padding: 8px;
  }
}

/*
*
*
* POTENTIAL CLIENTS - ESTATE
*
*
*/
.potential-estate {
  background: url(img/satin-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}

@media (orientation: portrait) {
  .potential-estate .content {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .potential-estate .content {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.potential-estate .content {
  width: 90%;
  margin: 0 auto;
  max-width: 1280px;
  text-align: center;
}
.potential-estate .content .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  font-weight: 700;
}
.potential-estate .content h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .potential-estate .content h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.potential-estate .content > div {
  padding-top: 30px;
}
.potential-estate .content > div img {
  display: block;
  width: 100%;
  margin: 0 0 30px 0;
}
.potential-estate .content > div .text {
  text-align: left;
}
.potential-estate .content .text p:first-of-type::first-letter {
  font-family: "filmotype-lacrosse", sans-serif;
  color: #afc2cc;
  float: left;
  font-size: 4rem;
  line-height: 0.5;
  margin: 0.1em 0.25em 0.15em 0;
}
@media only screen and (min-width : 960px) {
  .potential-estate .content > div {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  .potential-estate .content > div img {
    width: 47.5%;
    align-self: flex-start;
  }
  .potential-estate .content > div .text {
    width: 47.5%;
  }
  .potential-estate .content .text p:first-of-type::first-letter {
    font-size: 5.75rem;
    line-height: 0.6;
    margin: 0.1em 0.25em 0 0;
  }
}
@media only screen and (min-width : 960px) {
  .potential-estate .content > div {
    padding-top: 40px;
  }
}

/*
*
*
* POTENTIAL CLIENTS - PRICING
*
*
*/
@media (orientation: portrait) {
  .potential-pricing {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .potential-pricing {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.potential-pricing {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}

.potential-pricing .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
  max-width: 740px;
  text-align: center;
  color: #f7f5f0;
}

.potential-pricing h2 {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
}

.potential-pricing .list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.potential-pricing .list li {
  padding: 28px 0;
  position: relative;
}
.potential-pricing .list li:nth-of-type(n + 2):before, .potential-pricing .list li:nth-of-type(n + 2):after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  background: #afc2cc;
}
.potential-pricing .list li:nth-of-type(n + 2):before {
  width: 80px;
  height: 1.5px;
  transform: translateX(-50%);
}
.potential-pricing .list li:nth-of-type(n + 2):after {
  width: 6px;
  height: 6px;
  transform: translateX(-50%) translateY(calc(-50% + 1px)) rotate(45deg);
}
.potential-pricing .list h3 {
  font-size: clamp(17px, 14.5668449198px + 0.623885918vw, 24px);
  font-weight: 300;
  line-height: 1.83;
  font-style: italic;
}

.potential-pricing .button {
  background: #afc2cc;
  color: #2f3e4c;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.potential-pricing .button:hover {
  background: #6a764b;
  color: #afc2cc;
}

/*
*
*
* COVER
*
*/
.venue-cover {
  background: url(img/satin-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media only screen and (min-width : 960px) {
  .venue-cover {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.venue-cover .left {
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .venue-cover .left {
    padding-top: 101px;
  }
}
.venue-cover .left {
  padding-bottom: 60px;
}
.venue-cover .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
}
.venue-cover .left h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0 0;
}
@media only screen and (min-width : 1024px) {
  .venue-cover .left h1 {
    padding: 0.7em 0 0 0;
  }
}
.venue-cover .left .image {
  width: 65%;
  max-width: 320px;
  margin: 20px auto;
  aspect-ratio: 0.7111111111;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.venue-cover .left .image > div,
.venue-cover .left .image img,
.venue-cover .left .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .venue-cover .left .image {
    padding: 8px;
  }
}
.venue-cover .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.venue-cover .left .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .venue-cover .left {
    width: 50%;
    padding: 5vh 0;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
  }
  .venue-cover .left .image {
    max-width: 360px;
    margin: 32px auto;
  }
}

.venue-cover .right video {
  background: #2f3e4c;
  width: 100%;
  height: 120vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.venue-cover .right video.is-loaded {
  opacity: 1;
}
@media only screen and (min-width : 960px) {
  .venue-cover .right {
    width: 50%;
    position: relative;
  }
  .venue-cover .right video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* MAP
*
*/
.venue-map {
  background: #dee6e9;
}

.venue-map .header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .venue-map .header {
    padding-top: 6vh;
    padding-bottom: 0vh;
  }
}
@media (orientation: landscape) {
  .venue-map .header {
    padding-top: 9vh;
    padding-bottom: 0vh;
  }
}
.venue-map .header p:last-of-type {
  margin-bottom: 0;
}
.venue-map .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  padding: 0.5em 0 0.15em 0;
}
.venue-map .header h2 br {
  display: none;
}
.venue-map .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
  color: #6a764b;
}
@media only screen and (min-width : 960px) {
  .venue-map .header {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  .venue-map .header .left,
  .venue-map .header .right {
    width: 50%;
  }
  .venue-map .header .right {
    max-width: 520px;
  }
  .venue-map .header h2 br {
    display: block;
  }
}
@media only screen and (min-width : 1024px) {
  .venue-map .header {
    position: relative;
    z-index: 2;
  }
}

.venue-map {
  width: 100%;
  margin: 0 auto;
}
@media only screen and (min-width : 1024px) {
  .venue-map {
    position: relative;
  }
}

.venue-map .map {
  position: relative;
}
@media only screen and (min-width : 1024px) {
  .venue-map .map {
    margin-top: min(-2vw, -34px);
    z-index: 1;
  }
}

.venue-map .map .map-pin {
  cursor: pointer;
  position: absolute;
  z-index: 10;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0;
  border: 1px solid #2f3e4c;
  border-radius: 100vmin;
  background: #2f3e4c;
  color: #f7f5f0;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.4);
  left: calc(var(--x-mob) * 1%);
  top: calc(var(--y-mob) * 1%);
  transform: translateX(-50%) translateY(-50%);
}
.venue-map .map .map-pin span {
  font-size: 16px;
  line-height: 16px;
  font-family: "freightdispcmp-pro", serif;
  font-weight: 500;
  letter-spacing: 0em;
  display: block;
  transform: translateY(-12%);
}
@media only screen and (min-width : 1024px) {
  .venue-map .map .map-pin {
    width: 40px;
    height: 40px;
    left: calc(var(--x-desk) * 1%);
    top: calc(var(--y-desk) * 1%);
    transition: all ease-in-out 0.3s;
  }
  .venue-map .map .map-pin:hover {
    background: #f7f5f0;
    color: #2f3e4c;
    box-shadow: 0 3px 9px 0 rgba(0, 0, 0, 0.4);
    transform: translateX(-50%) translateY(calc(-50% - 3px));
  }
  .venue-map .map .map-pin span {
    font-size: 24px;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-map .map .map-pin {
    width: 42px;
    height: 42px;
  }
}
@media only screen and (min-width : 1512px) {
  .venue-map .map .map-pin {
    width: 44px;
    height: 44px;
  }
}

.venue-map .map .map-bg {
  margin: 0;
  width: 100%;
}
.venue-map .map .map-bg.mobile {
  display: block;
}
@media only screen and (min-width : 1024px) {
  .venue-map .map .map-bg.mobile {
    display: none;
  }
}
.venue-map .map .map-bg.desktop {
  display: none;
}
@media only screen and (min-width : 1024px) {
  .venue-map .map .map-bg.desktop {
    display: block;
  }
}

.map-dialog::backdrop {
  background: rgba(47, 62, 76, 0.7);
}

.map-dialog {
  border: none;
  width: 90%;
  max-width: 1000px;
  background: #f7f5f0;
  padding: 24px;
}
.map-dialog:focus {
  outline: none;
}
@media only screen and (min-width : 768px) {
  .map-dialog {
    padding: 32px;
  }
}
@media only screen and (min-width : 1280px) {
  .map-dialog {
    padding: 40px;
  }
}

.map-dialog .dialog-content .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
  color: #6a764b;
}
.map-dialog .dialog-content h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(19px, 15.871657754px + 0.8021390374vw, 28px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .map-dialog .dialog-content h3 {
    padding: 0.7em 0 0.3em 0;
  }
}
.map-dialog .dialog-content .text p:last-of-type {
  margin-bottom: 0;
}
.map-dialog .dialog-content .button {
  display: table;
  margin-top: 18px;
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.map-dialog .dialog-content .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.map-dialog .dialog-content .button {
  border: none;
}
.map-dialog .dialog-content video {
  display: block;
  margin: 32px 0 0 0;
  width: 100%;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}

.map-dialog .dialog-close {
  position: absolute;
  top: 16px;
  right: 16px;
  cursor: pointer;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0;
  border: 1px solid #2f3e4c;
  border-radius: 100vmin;
  font-size: 24px;
  color: #2f3e4c;
  background: #f7f5f0;
  transition: all ease-in-out 0.3s;
}
.map-dialog .dialog-close:hover {
  background: #2f3e4c;
  color: #f7f5f0;
}
@media only screen and (min-width : 768px) {
  .map-dialog .dialog-close {
    top: 24px;
    right: 24px;
  }
}
@media only screen and (min-width : 1280px) {
  .map-dialog .dialog-close {
    top: 28px;
    right: 28px;
  }
}

.venue-map .map-key {
  background: #d1e0b3;
}
.venue-map .map-key .container {
  padding: 20px 0 10px 0;
  width: 90%;
  margin: 0 auto;
}
.venue-map .map-key h3 {
  display: none;
}
@media only screen and (min-width : 1024px) {
  .venue-map .map-key {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 3;
    left: auto;
    background: none;
    width: auto;
  }
  .venue-map .map-key .container {
    width: auto;
    margin: 0;
    background: rgba(209, 224, 179, 0.5);
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px);
    padding: 10px 20px 5px 20px;
  }
  .venue-map .map-key h3 {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.275em;
    font-family: "Red Hat Display", sans-serif;
    font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
    margin-bottom: 10px;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-map .map-key .container {
    background: none;
    margin-right: 3.5vw;
    margin-bottom: 0.25vw;
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
  }
}
@media only screen and (min-width : 1512px) {
  .venue-map .map-key .container {
    margin-right: min(9vw, 153px);
    margin-bottom: min(1.5vw, 25.5px);
  }
}

.venue-map .map-key-list {
  margin: 0;
  padding: 0;
  list-style: none;
  -moz-columns: 2;
       columns: 2;
}
.venue-map .map-key-list li {
  margin-bottom: 10px;
}
@media only screen and (min-width : 768px) {
  .venue-map .map-key-list {
    -moz-columns: 3;
         columns: 3;
  }
}
@media only screen and (min-width : 1024px) {
  .venue-map .map-key-list {
    -moz-columns: 4;
         columns: 4;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-map .map-key-list {
    -moz-columns: 3;
         columns: 3;
  }
}

.map-key-link {
  padding: 0;
  margin: 0;
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  text-align: left;
}

.map-key-link .key-number {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  margin: 0 5px 0 0;
  border: none;
  border-radius: 100vmin;
  background: #2f3e4c;
  font-size: 16px;
  line-height: 16px;
  color: #f7f5f0;
  font-family: "freightdispcmp-pro", serif;
  font-weight: 500;
  letter-spacing: 0em;
}
.map-key-link .key-number span {
  display: block;
  transform: translateY(-12%);
}
@media only screen and (min-width : 1512px) {
  .map-key-link .key-number {
    margin: 0 12px 0 0;
  }
}

/*
*
*
* ROOMS
*
*/
.venue-rooms .--mobile {
  display: block;
  width: 90%;
  margin: 0 auto;
}
@media only screen and (min-width : 1024px) {
  .venue-rooms .--mobile {
    display: none;
  }
}

.venue-rooms .--desktop {
  display: none;
}
@media only screen and (min-width : 1024px) {
  .venue-rooms .--desktop {
    display: block;
  }
}

.venue-rooms .accordion {
  padding: 24px 0;
}

.venue-rooms .accordion-item button h3 {
  color: #2f3e4c;
  text-align: left;
  padding-left: 0;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.venue-rooms .accordion-item button .index {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  margin: 0 8px 0 0;
  border: none;
  border-radius: 100vmin;
  background: #2f3e4c;
  font-size: 16px;
  line-height: 16px;
  color: #f7f5f0;
  font-family: "freightdispcmp-pro", serif;
  font-weight: 500;
  letter-spacing: 0em;
}
.venue-rooms .accordion-item button .index span {
  display: block;
}
.venue-rooms .accordion-item button svg {
  stroke: #2f3e4c;
}

.venue-rooms .accordion-panel .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
  color: #6a764b;
}

.venue-rooms .accordion-panel .highlights {
  margin: 24px 0;
  padding: 0;
}
.venue-rooms .accordion-panel .highlights .label {
  margin-bottom: 0.7em;
}
.venue-rooms .accordion-panel .highlights ul {
  margin: 0;
  padding: 0 0 0 1em;
}
@media only screen and (min-width : 960px) {
  .venue-rooms .accordion-panel .highlights ul.two-col {
    -moz-columns: 2;
         columns: 2;
    -moz-column-gap: 30px;
         column-gap: 30px;
  }
}

.venue-rooms .accordion-panel .features {
  padding: 0;
  margin: 24px 0;
}
.venue-rooms .accordion-panel .features .label {
  margin-bottom: 1em;
}
.venue-rooms .accordion-panel .features ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.venue-rooms .accordion-panel .features li {
  padding: 8px 0;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  border-top: 0.5px solid #afc2cc;
}
.venue-rooms .accordion-panel .features li:last-of-type {
  border-bottom: 0.5px solid #afc2cc;
}
.venue-rooms .accordion-panel .features li.ideal-for span {
  padding-top: 0.25em;
  display: block;
  text-transform: initial;
  letter-spacing: initial;
  font-family: "freight-text-pro", serif;
  font-size: 12px;
  line-height: 1.5;
}

.venue-rooms .accordion-panel .image {
  width: 100%;
}
.venue-rooms .accordion-panel img {
  display: block;
  margin: 0;
  width: 100%;
  aspect-ratio: 10/13;
  -o-object-fit: cover;
     object-fit: cover;
}

.venue-rooms {
  margin: 0 auto;
  max-width: 1700px;
}

.venue-rooms .swiper-slide {
  height: auto;
  display: flex;
}

@media only screen and (min-width : 1024px) {
  .venue-rooms .slider-prev,
  .venue-rooms .slider-next {
    position: absolute;
    z-index: 900;
    top: 50%;
    background: #f7f5f0;
    width: 30px;
    height: 30px;
    border: 1px solid #2f3e4c;
    border-radius: 100vmin;
    color: #2f3e4c;
    font-size: 22px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    transform: translateY(-50%);
    cursor: pointer;
    transition: all ease-in-out 0.3s;
  }
  .venue-rooms .slider-prev:hover,
  .venue-rooms .slider-next:hover {
    background: #2f3e4c;
    color: #f7f5f0;
  }
  .venue-rooms .slider-prev.swiper-button-disabled,
  .venue-rooms .slider-next.swiper-button-disabled {
    opacity: 0;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-rooms .slider-prev,
  .venue-rooms .slider-next {
    width: 35px;
    height: 35px;
    font-size: 25px;
  }
}
@media only screen and (min-width : 1512px) {
  .venue-rooms .slider-prev,
  .venue-rooms .slider-next {
    width: 40px;
    height: 40px;
    font-size: 28px;
  }
}

@media only screen and (min-width : 1024px) {
  .venue-rooms .slider-prev {
    left: 10px;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-rooms .slider-prev {
    left: 15px;
  }
}

@media only screen and (min-width : 1024px) {
  .venue-rooms .slider-next {
    right: 10px;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-rooms .slider-next {
    right: 20px;
  }
}
@media only screen and (min-width : 1700px) {
  .venue-rooms .slider-next {
    right: 0px;
  }
}

.venue-rooms .room {
  padding: 30px 0;
}
@media only screen and (min-width : 960px) {
  .venue-rooms .room {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width : 1024px) {
  .venue-rooms .room {
    padding: 0;
  }
}

.venue-rooms .room .left {
  font-size: 12px;
  line-height: 1.67;
}
.venue-rooms .room .left .index {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  border-radius: 100vmin;
  background: #2f3e4c;
  font-size: 19px;
  color: #f7f5f0;
  font-family: "freightdispcmp-pro", serif;
  font-weight: 500;
  letter-spacing: 0em;
}
.venue-rooms .room .left h2 {
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
  padding: 15px 0 5px 0;
  line-height: 1;
}
.venue-rooms .room .left .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
  color: #6a764b;
}
@media only screen and (min-width : 960px) {
  .venue-rooms .room .left {
    width: 50%;
  }
}
@media only screen and (min-width : 1024px) {
  .venue-rooms .room .left {
    margin-left: 50px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    width: calc(50% - 50px);
  }
  .venue-rooms .room .left:before {
    content: "";
    display: block;
    height: 12px;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-rooms .room .left {
    padding-top: 15px;
    padding-bottom: 15px;
    width: calc(45% - 80px);
    padding-right: 0;
    margin-left: 80px;
  }
  .venue-rooms .room .left h2 {
    padding: 35px 0 5px 0;
  }
}
@media only screen and (min-width : 1512px) {
  .venue-rooms .room .left {
    width: 37.5%;
    margin-left: 100px;
  }
  .venue-rooms .room .left h2 {
    padding: 50px 0 8px 0;
  }
}

.venue-rooms .room .left .highlights {
  margin: 15px 0 30px 0;
}
.venue-rooms .room .left .highlights .label {
  margin-bottom: 0.7em;
}
.venue-rooms .room .left .highlights ul {
  margin: 0;
  padding: 0 0 0 1em;
}
@media only screen and (min-width : 960px) {
  .venue-rooms .room .left .highlights ul.two-col {
    -moz-columns: 2;
         columns: 2;
    -moz-column-gap: 30px;
         column-gap: 30px;
  }
}

.venue-rooms .room .left .features {
  margin: 0 0 30px 0;
}
.venue-rooms .room .left .features .label {
  margin-bottom: 1em;
}
.venue-rooms .room .left .features ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.venue-rooms .room .left .features li {
  padding: 8px 0;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  border-top: 0.5px solid #afc2cc;
}
.venue-rooms .room .left .features li:last-of-type {
  border-bottom: 0.5px solid #afc2cc;
}
.venue-rooms .room .left .features li.ideal-for span {
  padding-top: 0.25em;
  display: block;
  text-transform: initial;
  letter-spacing: initial;
  font-family: "freight-text-pro", serif;
  font-size: 12px;
  line-height: 1.5;
}

.venue-rooms .room .left .counter {
  display: none;
}
@media only screen and (min-width : 1024px) {
  .venue-rooms .room .left .counter {
    display: inline-block;
    margin: 0 auto;
    text-transform: uppercase;
    letter-spacing: 0.275em;
    font-family: "Red Hat Display", sans-serif;
    font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  }
  .venue-rooms .room .left .counter span {
    padding: 1px 12px;
  }
  .venue-rooms .room .left .counter span:first-of-type {
    border-right: 0.5px solid #2f3e4c;
  }
}

.venue-rooms .room .right .image {
  width: 100%;
}
.venue-rooms .room .right img {
  display: block;
  margin: 0;
  width: 100%;
  aspect-ratio: 10/13;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .venue-rooms .room .right {
    width: 45%;
  }
}
@media only screen and (min-width : 1024px) {
  .venue-rooms .room .right .image {
    position: relative;
  }
  .venue-rooms .room .right .image,
  .venue-rooms .room .right img {
    height: 100%;
  }
  .venue-rooms .room .right img {
    aspect-ratio: auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
}
@media only screen and (min-width : 1280px) {
  .venue-rooms .room .right {
    width: 47.5%;
  }
}
@media only screen and (min-width : 1512px) {
  .venue-rooms .room .right {
    width: 45%;
  }
  .venue-rooms .room .right .image {
    min-height: 820px;
  }
}
@media only screen and (min-width : 1700px) {
  .venue-rooms .room .right {
    margin-right: 60px;
  }
}

/*
*
*
* VIDEO
*
*/
.venue-video {
  background: url(img/midnight-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
  padding: 5vw;
}

/*
*
*
* SURROUNDINGS
*
*/
@media (orientation: portrait) {
  .venue-surroundings {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .venue-surroundings {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.venue-surroundings .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media only screen and (min-width : 960px) {
  .venue-surroundings .container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
}

.venue-surroundings .left {
  margin-bottom: 15px;
}
.venue-surroundings .left .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: block;
  color: #6a764b;
}
.venue-surroundings .left h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .venue-surroundings .left h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.venue-surroundings .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
}
@media only screen and (min-width : 960px) {
  .venue-surroundings .left {
    width: 30%;
  }
}

@media only screen and (min-width : 960px) {
  .venue-surroundings .right {
    width: 60%;
  }
}

.venue-surroundings .right .list-item {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 25px 15px;
}
.venue-surroundings .right .list-item p:last-of-type {
  margin-bottom: 0;
}
.venue-surroundings .right .list-item:nth-of-type(n + 2) {
  position: relative;
  border-top: 1px solid #afc2cc;
}
.venue-surroundings .right .list-item:nth-of-type(n + 2):before, .venue-surroundings .right .list-item:nth-of-type(n + 2):after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background: #afc2cc;
  position: absolute;
  top: -0.5px;
}
.venue-surroundings .right .list-item:nth-of-type(n + 2):before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.venue-surroundings .right .list-item:nth-of-type(n + 2):after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}
.venue-surroundings .right .list-item img {
  display: block;
  margin: 0;
  width: 70px;
  align-self: flex-start;
}
.venue-surroundings .right .list-item > div {
  width: calc(100% - 90px);
}
.venue-surroundings .right .list-item h3 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(22px, 18.5240641711px + 0.8912655971vw, 32px);
  margin-bottom: 0.35em;
}
@media only screen and (min-width : 960px) {
  .venue-surroundings .right .list-item {
    padding: 40px 25px;
  }
  .venue-surroundings .right .list-item img {
    width: 80px;
  }
  .venue-surroundings .right .list-item > div {
    width: calc(100% - 120px);
  }
}

body.page-template-page-weddings .site-branding .left svg path {
  fill: #f7f5f0;
}
body.page-template-page-weddings .nav-toggle {
  color: #f7f5f0;
}

/*
*
*
* COVER
*
*/
.weddings-cover {
  background: url(img/moss-pattern.png);
  background-position: top center;
}
@media only screen and (min-width : 960px) {
  .weddings-cover {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.weddings-cover .left {
  text-align: center;
  color: #f7f5f0;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .weddings-cover .left {
    padding-top: 101px;
  }
}
.weddings-cover .left {
  padding-bottom: 60px;
}
.weddings-cover .left .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  color: #afc2cc;
}
.weddings-cover .left h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0 0;
}
@media only screen and (min-width : 1024px) {
  .weddings-cover .left h1 {
    padding: 0.7em 0 0 0;
  }
}
.weddings-cover .left .image {
  width: 65%;
  max-width: 320px;
  margin: 20px auto;
  aspect-ratio: 0.7111111111;
  background-color: #2f3e4c;
  padding: 6px;
  clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
}
.weddings-cover .left .image > div,
.weddings-cover .left .image img,
.weddings-cover .left .image video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
}
@media only screen and (min-width : 768px) {
  .weddings-cover .left .image {
    padding: 8px;
  }
}
.weddings-cover .left .button {
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.weddings-cover .left .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .weddings-cover .left {
    padding: 5vh 0;
    width: 50%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
  }
  .weddings-cover .left .image {
    max-width: 360px;
    margin: 32px auto;
  }
}

.weddings-cover .right video {
  background: #2f3e4c;
  width: 100%;
  height: 120vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.weddings-cover .right video.is-loaded {
  opacity: 1;
}
@media only screen and (min-width : 960px) {
  .weddings-cover .right {
    width: 50%;
    position: relative;
  }
  .weddings-cover .right video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/*
*
*
* WEDDINGS - INTRO
*
*/
@media only screen and (min-width : 1024px) {
  .weddings-intro {
    min-height: 100vh;
  }
}

.weddings-intro .container {
  padding: 8vh 30px;
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}
.weddings-intro .container img {
  width: 60%;
  max-width: 330px;
  margin: 0 auto;
}
.weddings-intro .container h2 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .weddings-intro .container h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.weddings-intro .container h2 {
  line-height: 1.15;
  font-weight: 300;
  font-size: clamp(24px, 21.2192513369px + 0.7130124777vw, 32px);
}
@media only screen and (min-width : 1024px) {
  .weddings-intro .container {
    padding: 0;
  }
  .weddings-intro .container p {
    padding: 0 7.5%;
  }
}

@media only screen and (min-width : 1024px) {
  .weddings-intro .frame {
    padding: 8vh 0;
  }
}

/*
*
*
* PACKAGES
*
*/
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card {
    display: flex;
    flex-flow: column nowrap;
    position: sticky;
    background: #f7f5f0;
    margin-bottom: 40dvh;
    z-index: 1;
  }
}

.wedding-package-sticky-card .tab {
  background: #2f3e4c;
  color: #f7f5f0;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  text-align: center;
  padding: 1em;
}
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card .tab {
    height: 40px;
    padding: 0;
    line-height: 40px;
  }
}

@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card .container {
    display: flex;
    flex-flow: row nowrap;
    flex: 1;
  }
}

.wedding-package-sticky-card .left img {
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  aspect-ratio: 3/2;
}
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card .left {
    width: 50%;
  }
}

.wedding-package-sticky-card .right {
  text-align: center;
  color: #2f3e4c;
  padding: 40px 0;
}
.wedding-package-sticky-card .right > div {
  width: 80%;
  max-width: 600px;
  margin: 0 auto;
}
.wedding-package-sticky-card .right .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
}
.wedding-package-sticky-card .right h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .wedding-package-sticky-card .right h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.wedding-package-sticky-card .right .list span {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin: 20px 0 5px 0;
}
.wedding-package-sticky-card .right .list ul {
  margin: 0;
  padding: 0;
  display: inline-block;
  list-style-position: inside;
}
.wedding-package-sticky-card .right .button {
  background: #6a764b;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.wedding-package-sticky-card .right .button:hover {
  background: #e0c4a2;
  color: #2f3e4c;
}
.wedding-package-sticky-card .right .button {
  display: table;
  margin: 30px auto 0 auto;
}
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card .right {
    width: 50%;
    text-align: left;
    padding: 160px 0 40px 40px;
    display: flex;
  }
  .wedding-package-sticky-card .right .button {
    margin: 30px 0 0 0;
  }
  .wedding-package-sticky-card .right > div {
    margin: auto 0 0 0;
  }
}
@media only screen and (min-width : 1280px) {
  .wedding-package-sticky-card .right {
    padding: 60px;
  }
}
@media only screen and (min-width : 1512px) {
  .wedding-package-sticky-card .right {
    padding: 90px;
  }
}

.wedding-package-sticky-card:nth-of-type(1) {
  top: 0px;
}
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card:nth-of-type(1) {
    height: 100dvh;
  }
}

.wedding-package-sticky-card:nth-of-type(2) {
  top: 40px;
}
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card:nth-of-type(2) {
    height: calc(100dvh - 40px);
    border-top: 1px solid #afc2cc;
  }
}

.wedding-package-sticky-card:nth-of-type(3) {
  top: 80px;
}
@media only screen and (min-width : 960px) {
  .wedding-package-sticky-card:nth-of-type(3) {
    height: calc(100dvh - 80px);
    border-top: 1px solid #afc2cc;
  }
}

/*
*
*
* ACCORDION
*
*/
.weddings-services {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media (orientation: portrait) {
  .weddings-services {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .weddings-services {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.weddings-services {
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .weddings-services {
    position: relative;
    z-index: 2;
  }
}

.weddings-services .header {
  width: 85%;
  max-width: 540px;
  margin: 0 auto;
  text-align: center;
  padding: 2dvh 0 4dvh 0;
}
.weddings-services .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}

.weddings-services .accordion {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
  margin-bottom: 4dvh;
}

.weddings-services .accordion-panel .text {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}

/*
*
*
* CATERING
*
*/
@media only screen and (min-width : 960px) {
  body.page-template-page-weddings .catering-callout {
    position: relative;
    z-index: 2;
  }
}

/*
*
*
* WEDDING - COVER
*
*/
.wedding-cover {
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .wedding-cover {
    padding-top: 101px;
  }
}

.wedding-cover .wedding-nav {
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  padding-left: 15px;
  padding-right: 15px;
}
.wedding-cover .wedding-nav a {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: 6px;
  text-decoration: none;
  color: #2f3e4c;
  transition: all ease-in-out 0.25s;
}
.wedding-cover .wedding-nav a:hover, .wedding-cover .wedding-nav a:active, .wedding-cover .wedding-nav a:focus {
  color: #6a764b;
}
.wedding-cover .wedding-nav a:visited {
  color: #2f3e4c;
}
.wedding-cover .wedding-nav a:visited:hover, .wedding-cover .wedding-nav a:visited:active, .wedding-cover .wedding-nav a:visited:focus {
  color: #6a764b;
}
@media only screen and (min-width : 768px) {
  .wedding-cover .wedding-nav {
    height: 30px;
    padding-left: 30px;
    padding-right: 30px;
    align-items: flex-end;
  }
}
@media only screen and (min-width : 1280px) {
  .wedding-cover .wedding-nav {
    height: 45px;
    padding-left: 45px;
    padding-right: 45px;
  }
}

.wedding-cover .header {
  width: 90%;
  max-width: 1100px;
  margin: 20px auto 40px auto;
  text-align: center;
  text-wrap: balance;
}
.wedding-cover .header .label {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  font-weight: 700;
  display: block;
  color: #6a764b;
}
.wedding-cover .header h1 {
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .wedding-cover .header h1 {
    padding: 0.7em 0 0.3em 0;
  }
}
.wedding-cover .header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
}
@media only screen and (min-width : 768px) {
  .wedding-cover .header {
    margin: -16px auto 40px auto;
  }
}

.wedding-cover .images {
  overflow: hidden;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}
.wedding-cover .images > img {
  width: 30%;
  aspect-ratio: 336/470;
  -o-object-fit: cover;
     object-fit: cover;
}
.wedding-cover .images > img:first-of-type {
  transform: translateX(-12.5%);
}
.wedding-cover .images > img:last-of-type {
  transform: translateX(12.5%);
}
.wedding-cover .images .video,
.wedding-cover .images .frame {
  width: 40%;
  aspect-ratio: 0.714893617;
  background-color: #e0c4a2;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.wedding-cover .images .video > div,
.wedding-cover .images .video img,
.wedding-cover .images .video video,
.wedding-cover .images .frame > div,
.wedding-cover .images .frame img,
.wedding-cover .images .frame video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .wedding-cover .images .video,
  .wedding-cover .images .frame {
    padding: 8px;
  }
}
@media only screen and (min-width : 960px) {
  .wedding-cover .images {
    width: 75%;
    max-width: 1280px;
    margin: 0 auto;
    overflow: visible;
  }
  .wedding-cover .images .video,
  .wedding-cover .images .frame {
    aspect-ratio: 0.714893617;
    background-color: #e0c4a2;
    padding: 6px;
    clip-path: polygon(32px 0%, calc(100% - 32px) 0%, 100% 32px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 32px 100%, 0% calc(100% - 32px), 0% 32px);
  }
  .wedding-cover .images .video > div,
  .wedding-cover .images .video img,
  .wedding-cover .images .video video,
  .wedding-cover .images .frame > div,
  .wedding-cover .images .frame img,
  .wedding-cover .images .frame video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(27px 0%, calc(100% - 27px) 0%, 100% 27px, 100% calc(100% - 27px), calc(100% - 27px) 100%, 27px 100%, 0% calc(100% - 27px), 0% 27px);
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .wedding-cover .images .video,
  .wedding-cover .images .frame {
    padding: 8px;
  }
}

/*
*
*
* WEDDING - INTRO
*
*/
.wedding-intro {
  padding-top: min(6vw, 60px);
  padding-bottom: min(6vw, 60px);
}

.wedding-intro .container {
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
  -o-border-image: url("img/stripe-pattern--horiz.png") 100 repeat;
     border-image: url("img/stripe-pattern--horiz.png") 100 repeat;
}
@media only screen and (min-width : 1024px) {
  .wedding-intro .container {
    border-top: 36px solid transparent;
    border-bottom: 36px solid transparent;
  }
}
@media only screen and (min-width : 1280px) {
  .wedding-intro .container {
    border-top: 48px solid transparent;
    border-bottom: 48px solid transparent;
  }
}

.wedding-intro .content {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .wedding-intro .content {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .wedding-intro .content {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.wedding-intro .content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media only screen and (min-width : 960px) {
  .wedding-intro .content {
    grid-template-columns: 1fr 1fr;
    gap: min(7vw, 150px);
    align-items: start;
  }
}

.wedding-intro .left {
  text-align: center;
}
.wedding-intro .left h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(31px, 24.743315508px + 1.6042780749vw, 49px);
  padding: 0 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .wedding-intro .left h2 {
    padding: 0 0 0.3em 0;
  }
}
@media only screen and (min-width : 960px) {
  .wedding-intro .left {
    text-align: left;
  }
}

.wedding-intro .right {
  text-align: center;
  aspect-ratio: auto;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(28px 0%, calc(100% - 28px) 0%, 100% 28px, 100% calc(100% - 28px), calc(100% - 28px) 100%, 28px 100%, 0% calc(100% - 28px), 0% 28px);
}
.wedding-intro .right > div,
.wedding-intro .right img,
.wedding-intro .right video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(23px 0%, calc(100% - 23px) 0%, 100% 23px, 100% calc(100% - 23px), calc(100% - 23px) 100%, 23px 100%, 0% calc(100% - 23px), 0% 23px);
}
@media only screen and (min-width : 768px) {
  .wedding-intro .right {
    padding: 8px;
  }
}

.wedding-intro .right-content {
  background: #f7f5f0;
  padding: min(4vw, 60px);
}

.wedding-intro .right .list {
  text-wrap: balance;
  margin: 0;
  padding: 0;
  list-style: none;
}
.wedding-intro .right .list li:nth-of-type(n + 2) {
  padding-top: 1.25em;
  margin-top: 1.25em;
  position: relative;
}
.wedding-intro .right .list li:nth-of-type(n + 2):before, .wedding-intro .right .list li:nth-of-type(n + 2):after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  background: #e0c4a2;
}
.wedding-intro .right .list li:nth-of-type(n + 2):before {
  width: 80px;
  height: 1.5px;
  transform: translateX(-50%);
}
.wedding-intro .right .list li:nth-of-type(n + 2):after {
  width: 6px;
  height: 6px;
  transform: translateX(-50%) translateY(calc(-50% + 1px)) rotate(45deg);
}
.wedding-intro .right .list h3 {
  font-size: clamp(17px, 14.5668449198px + 0.623885918vw, 24px);
  font-weight: 300;
  line-height: 1.83;
  font-style: italic;
  line-height: 1.5;
}

.wedding-intro .right .button {
  display: table;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.wedding-intro .right .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
.wedding-intro .right .button {
  margin: 2rem auto 0 auto;
}

/*
*
*
* WEDDING - SERVICES
*
*/
.wedding-services {
  background: #afc2cc;
  display: flex;
  flex-flow: column;
}
@media only screen and (min-width : 960px) {
  .wedding-services {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.wedding-services .left {
  order: 2;
}
.wedding-services .left img {
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .wedding-services .left {
    order: 1;
    width: 50%;
    position: relative;
  }
  .wedding-services .left img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

.wedding-services .right {
  order: 1;
  text-align: center;
  color: #2f3e4c;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .wedding-services .right {
    padding-top: 101px;
  }
}
.wedding-services .right {
  padding-bottom: 60px;
}
.wedding-services .right .container {
  width: 80%;
  margin: 0 auto;
}
.wedding-services .right h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .wedding-services .right h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.wedding-services .right .text ul {
  list-style-position: inside;
  margin: 0 0 1em 0;
  padding: 0;
}
.wedding-services .right dl {
  margin: 1rem 0;
  padding: 0;
}
.wedding-services .right dl dt {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin: 0;
}
.wedding-services .right dl dd {
  margin: 0 0 1.5rem 0;
  line-height: 1.55;
}
.wedding-services .right .button {
  display: table;
  margin-top: 2.5rem;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.wedding-services .right .button:hover {
  background: #6a764b;
  color: #f7f5f0;
}
@media only screen and (min-width : 960px) {
  .wedding-services .right {
    order: 2;
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
}
@media only screen and (min-width : 1512px) {
  .wedding-services .right .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

/*
*
*
* WEDDING - PACKAGE FIT(ONLY USED ON ALLINCLUSIVE CURRENTLY)
*
*/
.wedding-packagefit {
  display: flex;
  flex-flow: column;
}
@media only screen and (min-width : 960px) {
  .wedding-packagefit {
    display: flex;
    flex-flow: row nowrap;
    min-height: 100dvh;
  }
}

.wedding-packagefit .image {
  order: 2;
}
.wedding-packagefit .image img {
  width: 100%;
  height: 100vw;
  display: block;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width : 960px) {
  .wedding-packagefit .image {
    order: 1;
    width: 50%;
    position: relative;
  }
  .wedding-packagefit .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

.wedding-packagefit .content {
  order: 1;
  text-align: center;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .wedding-packagefit .content {
    padding-top: 101px;
  }
}
.wedding-packagefit .content {
  padding-bottom: 60px;
}
.wedding-packagefit .content .container {
  width: 80%;
  margin: 0 auto;
}
.wedding-packagefit .content h2 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  padding: 1em 0 0.4em 0;
}
@media only screen and (min-width : 1024px) {
  .wedding-packagefit .content h2 {
    padding: 0.7em 0 0.3em 0;
  }
}
.wedding-packagefit .content .text ul {
  list-style-position: inside;
  margin: 0 0 1em 0;
  padding: 0;
}
.wedding-packagefit .content dl {
  margin: 1rem 0;
  padding: 0;
}
.wedding-packagefit .content dl dt {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(13px, 12.3048128342px + 0.1782531194vw, 15px);
  margin: 0;
}
.wedding-packagefit .content dl dd {
  margin: 0 0 1.5rem 0;
  line-height: 1.55;
}
.wedding-packagefit .content .button {
  display: table;
  margin-top: 2.5rem;
  background: #2f3e4c;
  color: #f7f5f0;
  text-decoration: none;
  text-align: center;
  border-radius: 0px;
  padding: 0.5rem 0.9rem 0.5rem 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  font-weight: 700;
  cursor: pointer;
  transition: background ease-in-out 0.3s, color ease-in-out 0.3s;
}
.wedding-packagefit .content .button:hover {
  background: #afc2cc;
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .wedding-packagefit .content {
    order: 2;
    width: 50%;
    padding-bottom: 100px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    text-align: left;
  }
}
@media only screen and (min-width : 1512px) {
  .wedding-packagefit .content .container {
    width: 550px;
    margin: 0 0 0 15%;
  }
}

.wedding-packagefit:nth-of-type(even) {
  background: #f7f5f0;
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .wedding-packagefit:nth-of-type(even) .image {
    order: 2;
  }
  .wedding-packagefit:nth-of-type(even) .content {
    order: 1;
  }
}

.wedding-packagefit:nth-of-type(odd) {
  background: #6a764b;
  color: #f7f5f0;
}

/*
*
*
* WEDDING - FAQ
*
*/
.wedding-faq {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media (orientation: portrait) {
  .wedding-faq {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .wedding-faq {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.wedding-faq {
  color: #2f3e4c;
}
@media only screen and (min-width : 960px) {
  .wedding-faq {
    position: relative;
    z-index: 2;
  }
}

.wedding-faq .header {
  width: 85%;
  max-width: 540px;
  margin: 0 auto;
  text-align: center;
  padding: 2dvh 0 4dvh 0;
}
.wedding-faq .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}

.wedding-faq .accordion {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
  margin-bottom: 4dvh;
}

.wedding-faq .accordion-panel .text {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}

/*
*
*
* FAQ
*
*/
.wedding-faq {
  background: url(img/sky-pattern.jpg);
  background-size: 480px 480px;
  background-position: top center;
}
@media (orientation: portrait) {
  .wedding-faq {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .wedding-faq {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}
.wedding-faq {
  color: #2f3e4c;
}

.wedding-faq .header {
  width: 85%;
  max-width: 540px;
  margin: 0 auto;
  text-align: center;
  padding: 2dvh 0 4dvh 0;
}
.wedding-faq .header h2 {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
}

.wedding-faq .accordion {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
  margin-bottom: 4dvh;
}

.wedding-faq .accordion-panel .text {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}

/* POSTS
--------------------------------------------- */
/*
*
*
* BLOG HEADER
*
*/
.blog-header {
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  .blog-header {
    padding-top: 101px;
  }
}
.blog-header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  text-align: center;
}
.blog-header .label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
}
.blog-header h1 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 400;
  font-family: "AlpineciaReg", serif;
  font-size: clamp(36px, 28.7005347594px + 1.871657754vw, 57px);
  padding-top: 0.5em;
}

/*
*
*
* BLOG POSTS
*
*/
.blog-posts {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  padding: min(7vh, 70px) 0;
}

.posts-grid {
  display: grid;
  gap: 45px;
}
@media only screen and (min-width : 768px) {
  .posts-grid {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: min(3vw, 36px);
  }
}
@media only screen and (min-width : 1280px) {
  .posts-grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-row-gap: min(5vw, 64px);
  }
}

/*
*
*
* BLOG POST CARD
*
*/
.blog-card header a,
.blog-card header img {
  display: block;
  margin: 0;
}
.blog-card header .post-thumbnail {
  aspect-ratio: 1.28125;
  background-color: #afc2cc;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.blog-card header .post-thumbnail > div,
.blog-card header .post-thumbnail img,
.blog-card header .post-thumbnail video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .blog-card header .post-thumbnail {
    padding: 8px;
  }
}
.blog-card header .post-thumbnail {
  padding: 8px;
}
.blog-card h2 {
  padding-top: 1.2em;
  padding-bottom: 0.6em;
  font-weight: 300;
  line-height: 1.2;
  font-size: clamp(16px, 14.6096256684px + 0.3565062389vw, 20px);
}
.blog-card .entry-meta a {
  text-decoration: none;
}
.blog-card .posted-on a {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  color: #6a764b;
  letter-spacing: 0.275em;
}

/*
*
*
* BLOG SINGLE - POST
*
*/
article.post .entry-header {
  text-align: center;
  padding-top: 74px;
}
@media only screen and (min-width : 768px) {
  article.post .entry-header {
    padding-top: 101px;
  }
}
article.post .entry-header {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
  padding-bottom: min(7vh, 72px);
  margin-top: 30px;
}
article.post .entry-header .blog-link {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  display: block;
  margin: 0 auto -2em 0;
  text-align: left;
  text-decoration: none;
  color: #2f3e4c;
  transition: all ease-in-out 0.25s;
}
article.post .entry-header .blog-link:hover, article.post .entry-header .blog-link:active, article.post .entry-header .blog-link:focus {
  color: #afc2cc;
}
article.post .entry-header .blog-link:visited {
  color: #2f3e4c;
}
article.post .entry-header .blog-link:visited:hover, article.post .entry-header .blog-link:visited:active, article.post .entry-header .blog-link:visited:focus {
  color: #afc2cc;
}
article.post .entry-header .blog-link svg {
  margin-right: 6px;
}
article.post .entry-header .posted-on a {
  display: block;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
  text-decoration: none;
}
article.post .entry-header h1 {
  font-size: clamp(26px, 21.1336898396px + 1.247771836vw, 40px);
  font-weight: 300;
  line-height: 1.2;
  padding: 1em 0 0 0;
}
@media only screen and (min-width : 1024px) {
  article.post .entry-header h1 {
    padding: 0.7em 0 0 0;
  }
}
article.post .entry-header h1 {
  max-width: 900px;
  margin: 0 auto;
}

article.post .featured-image img {
  width: 100%;
  max-width: 960px;
  max-height: 640px;
  display: block;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
}

/*
*
*
* BLOG SINGLE - POST
*
*/
article.post .entry-content {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 960px;
  padding: min(7vh, 72px) 0;
}
article.post .entry-content:after {
  content: "";
  display: table;
  clear: both;
}
article.post .entry-content .label {
  display: block;
  margin: 0 0 1em 0;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  color: #6a764b;
  font-weight: 400;
}
article.post .entry-content span.big {
  font-size: 1.15em;
}
article.post .entry-content p {
  margin-bottom: 2.5em;
}
article.post .entry-content ul {
  list-style-position: inside;
  margin: 0;
  padding: 0;
}
article.post .entry-content img.alignleft {
  width: calc(50% - 20px);
  margin-right: 40px;
}
article.post .entry-content img.alignright {
  width: calc(50% - 20px);
  margin-left: 40px;
}

/*
*
*
* BLOG SINGLE - CREDITS
*
*/
.post-credits .container {
  width: 90%;
  max-width: 740px;
  margin: 0 auto;
  aspect-ratio: auto;
  background-color: #f4dbd0;
  padding: 6px;
  clip-path: polygon(22px 0%, calc(100% - 22px) 0%, 100% 22px, 100% calc(100% - 22px), calc(100% - 22px) 100%, 22px 100%, 0% calc(100% - 22px), 0% 22px);
}
.post-credits .container > div,
.post-credits .container img,
.post-credits .container video {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  clip-path: polygon(17px 0%, calc(100% - 17px) 0%, 100% 17px, 100% calc(100% - 17px), calc(100% - 17px) 100%, 17px 100%, 0% calc(100% - 17px), 0% 17px);
}
@media only screen and (min-width : 768px) {
  .post-credits .container {
    padding: 8px;
  }
}
.post-credits .container {
  padding: 8px;
}
@media only screen and (min-width : 960px) {
  .post-credits .container {
    aspect-ratio: auto;
    background-color: #f4dbd0;
    padding: 6px;
    clip-path: polygon(40px 0%, calc(100% - 40px) 0%, 100% 40px, 100% calc(100% - 40px), calc(100% - 40px) 100%, 40px 100%, 0% calc(100% - 40px), 0% 40px);
  }
  .post-credits .container > div,
  .post-credits .container img,
  .post-credits .container video {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    -o-object-fit: cover;
       object-fit: cover;
    clip-path: polygon(35px 0%, calc(100% - 35px) 0%, 100% 35px, 100% calc(100% - 35px), calc(100% - 35px) 100%, 35px 100%, 0% calc(100% - 35px), 0% 35px);
  }
  .post-credits .container {
    padding: 8px !important;
  }
}
@media only screen and (min-width : 960px) and (min-width : 768px) {
  .post-credits .container {
    padding: 8px;
  }
}

.post-credits .content {
  background: #f7f5f0;
  width: 100%;
  height: 100%;
  text-align: center;
  padding: min(5vw, 60px);
}

.post-credits .content h3 {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(9px, 8.3048128342px + 0.1782531194vw, 11px);
  margin: 0 0 1.75em 0;
  color: #6a764b;
}
.post-credits .content ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.post-credits .content ul li {
  margin-top: 1em;
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.post-credits .content ul a {
  text-decoration: none;
  color: #2f3e4c;
  transition: all ease-in-out 0.25s;
}
.post-credits .content ul a:hover, .post-credits .content ul a:active, .post-credits .content ul a:focus {
  color: #afc2cc;
}
.post-credits .content ul a:visited {
  color: #2f3e4c;
}
.post-credits .content ul a:visited:hover, .post-credits .content ul a:visited:active, .post-credits .content ul a:visited:focus {
  color: #afc2cc;
}

.post-credits .separator {
  width: 100%;
  height: 50px;
  position: relative;
}
.post-credits .separator:before, .post-credits .separator:after {
  content: "";
  display: block;
  position: absolute;
}
.post-credits .separator:before {
  width: 1.5px;
  height: 100%;
  background: #f4dbd0;
  left: 50%;
  top: 0;
}
.post-credits .separator:after {
  width: 6px;
  height: 6px;
  background: #f4dbd0;
  left: calc(50% + 0.75px);
}
@media only screen and (min-width : 960px) {
  .post-credits .separator {
    height: 80px;
  }
}

.post-credits .separator:first-of-type:after {
  top: 0;
  transform: translateX(-50%) rotate(45deg);
}

.post-credits .separator:last-of-type:after {
  bottom: 0;
  transform: translateX(-50%) rotate(45deg);
}

/*
*
*
* BLOG SINGLE - SHARE
*
*/
.post-share {
  padding: 30px 0;
}

.post-share__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.post-share__list li {
  margin: 0 7px;
}
.post-share__list a {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  margin: 0;
  width: 28px;
  height: 28px;
  border-radius: 100vmin;
  background: #6a764b;
  font-size: 17px;
  color: #f7f5f0;
  transition: all ease-in-out 0.3s;
}
.post-share__list a:hover {
  background: #afc2cc;
  transform: translateY(-3px);
}

/*
*
*
* BLOG SINGLE - RELATED
*
*/
.post-related .container {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 1440px;
}
@media (orientation: portrait) {
  .post-related .container {
    padding-top: 6vh;
    padding-bottom: 6vh;
  }
}
@media (orientation: landscape) {
  .post-related .container {
    padding-top: 9vh;
    padding-bottom: 9vh;
  }
}

.post-related .post-navigation .nav-links {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.post-related .post-navigation .nav-links a {
  text-transform: uppercase;
  letter-spacing: 0.275em;
  font-family: "Red Hat Display", sans-serif;
  font-size: clamp(10px, 8.9572192513px + 0.2673796791vw, 13px);
  text-decoration: none;
  color: #2f3e4c;
  transition: all ease-in-out 0.25s;
}
.post-related .post-navigation .nav-links a:hover, .post-related .post-navigation .nav-links a:active, .post-related .post-navigation .nav-links a:focus {
  color: #afc2cc;
}
.post-related .post-navigation .nav-links a:visited {
  color: #2f3e4c;
}
.post-related .post-navigation .nav-links a:visited:hover, .post-related .post-navigation .nav-links a:visited:active, .post-related .post-navigation .nav-links a:visited:focus {
  color: #afc2cc;
}
.post-related .post-navigation .nav-links .nav-previous svg {
  margin-right: 6px;
}
.post-related .post-navigation .nav-links .nav-next svg {
  margin-left: 6px;
}

.post-related .posts-grid {
  border-top: 1px solid #f4dbd0;
  padding-top: 40px;
  margin-top: 40px;
  position: relative;
}
.post-related .posts-grid:before, .post-related .posts-grid:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background: #f4dbd0;
  position: absolute;
  top: -0.5px;
}
.post-related .posts-grid:before {
  left: 0;
  transform-origin: center center;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.post-related .posts-grid:after {
  right: 0;
  transform-origin: center center;
  transform: translateX(50%) translateY(-50%) rotate(45deg);
}

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