/*!
Theme Name: Bookmark
Theme URI: http://underscores.me/
Author: Chad Rossouw for HdK
Author URI: https://wearehdk.com/
Description: Description
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: bookmark
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.

Bookmark 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

--------------------------------------------------------------*/
/* alegreya-sans-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 100;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-100.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-100italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 100;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-100italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 300;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 300;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 400;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 400;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 500;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 500;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 700;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 700;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 800;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 800;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: normal;
  font-weight: 900;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* alegreya-sans-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Alegreya Sans";
  font-style: italic;
  font-weight: 900;
  src: url("/wp-content/themes/bookmark/assets/fonts/alegreya-sans-v25-latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/*--------------------------------------------------------------
# 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;
  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
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3 {
  clear: both;
  font-family: "Playfair Display", serif;
}

h4,
h5,
h6 {
  clear: both;
  font-family: "Inter", sans-serif;
}

p {
  margin-bottom: 1.5em;
  margin-top: 0;
}

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

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  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 #666;
  cursor: help;
}

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

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
:root {
  --lb_brown: #4f1f1f;
  --lb_pink: #ddb3c2;
  --lb_aqua: #2f736f;
  --lb_beige: #f0edea;
  --body_width: 1040px;
  --card_width: 210px;
  --margin: 4vw;
  --header_height: 9rem;
}

.grecaptcha-badge {
  display: none;
}

.wrap:before {
  display: none;
}

.shop a {
  height: 100%;
}

a,
a:hover,
a:visited {
  text-decoration: none;
  color: var(--lb_aqua);
}

@media screen and (min-width: 1000px) {
  :root {
    --margin: 10vw;
  }
}
body {
  margin-left: var(--margin);
  margin-right: var(--margin);
  font-family: "Alegreya Sans", Sans-Serif;
  font-size: 1.1rem;
  color: var(--lb_brown);
  background: var(--lb_beige) url(/wp-content/themes/bookmark/assets/lb_footer.jpg) no-repeat bottom;
  background-blend-mode: darken;
  background-size: 100vw;
}
@media screen and (min-width: 1600px) {
  body {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
  }
}

#page .uc {
  text-transform: uppercase;
}
#page .regular {
  font-weight: 400;
}
#page .semibold {
  font-weight: 600;
}
#page .bold {
  font-weight: 700;
}
#page .alegreya {
  font-family: "Alegreya", serif;
}
#page .helv {
  font-family: "Helvetica Neue", sans-serif;
}
#page .em {
  font-style: italic;
}
#page .text-center {
  max-width: 42rem;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
#page .button {
  width: fit-content;
  text-align: center;
  padding: 0.8rem 3rem;
  font-size: 1rem;
  font-weight: 600;
  color: #4f1f1f;
  border: none;
  cursor: pointer;
}
#page .pill {
  border-radius: 2rem;
}
#page .bg_pink {
  background-color: pink;
}

.site-container {
  background: transparent;
}

.full-width-content .site-container {
  min-width: unset;
  max-width: var(--body_width);
}

.full-width-content .site-header .wrap {
  width: 100%;
}

.site-inner {
  overflow: visible;
}

.full-width-content .content,
.full-width-content .content-sidebar-wrap,
.full-width-content .site-inner {
  width: auto;
  max-width: 1040px;
}

h1,
h2,
h3 {
  font-family: "Alegreya", serif;
  font-weight: 400;
}

h2 {
  font-size: 2.2rem;
  line-height: 100%;
  color: var(--lb_brown);
}

h2 a,
h2 a:visited {
  color: var(--lb_brown);
}

h2 a:hover {
  color: var(--lb_aqua);
}

h4 {
  font-family: "Alegreya Sans", Sans-Serif;
  font-size: 1.4rem;
  line-height: 110%;
  font-weight: 400;
  color: var(--lb_brown);
  transition: color 200ms linear;
}

h5 {
  font-family: "Alegreya Sans", Sans-Serif;
  font-size: 1.2rem;
  line-height: 110%;
  font-weight: 400;
  color: var(--lb_brown);
  transition: color 200ms linear;
}

p {
  font-size: 1.15rem;
  line-height: 110%;
}

h2.lb_author,
.lb_home_card h2.lb_author {
  font-size: 1.6rem;
  margin-bottom: 5px;
}

h4.lb_title {
  color: var(--lb_pink);
}

h4.lb_title {
  font-size: 1.2rem;
}

.entry-content p {
  font-family: "Alegreya Sans", Sans-Serif;
}

.archive-pagination:after,
.clearfix:after,
.entry:after,
.entry-pagination:after,
.footer-widgets:after,
.nav-primary:after,
.nav-secondary:after,
.site-container:after,
.site-footer:after,
.site-header:after,
.site-inner:after,
.wrap:after,
.archive-pagination:before,
.clearfix:before,
.entry:before,
.entry-pagination:before,
.footer-widgets:before,
.nav-primary:before,
.nav-secondary:before,
.site-container:before,
.site-footer:before,
.site-header:before,
.site-inner:before,
.wrap:before {
  display: none;
}

/*Header*/
.lb_header {
  position: relative;
  max-width: var(--body_width);
  margin: 0 auto;
}

.lb_header a {
  width: 300px;
  display: block;
  margin: 0 auto;
  line-height: 0;
}

.lb_header img {
  max-width: 300px;
  width: 100%;
  margin: 0 auto;
}

.hamburger {
  position: absolute;
  top: 10px;
  right: 0;
}

.lb_header .hamburger-inner,
.lb_header .hamburger-inner::before,
.lb_header .hamburger-inner::after {
  background-color: var(--lb_brown);
}

/*Nav*/
.nav-primary {
  display: none;
  position: fixed;
  top: 0;
  z-index: 50;
  width: 100%;
  height: 100%;
  left: 0;
  background-color: rgba(240, 237, 234, 0.8666666667);
  opacity: 0;
}

.nav-primary.open {
  display: block;
  animation-name: modal;
  animation-duration: 1s;
  animation-fill-mode: both;
}

@keyframes modal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.nav-primary .wrap {
  margin: 20vh auto;
  max-width: 400px;
  position: relative;
  background-color: #f3f3f3;
  padding: 20px;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}

.nav-primary img {
  max-width: 300px;
}

.nav-primary ul {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.nav-primary .menu-primary.menu {
  max-width: 400px;
}

.menu-primary a {
  background: transparent;
}

#menu_x {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 50px;
  height: 50px;
  border-radius: 100%;
  border: 0;
  background-color: var(--lb_pink);
  color: #f3f3f3;
  font-size: 3rem;
  padding: 0;
  box-shadow: 3px 3px 4px rgba(79, 31, 31, 0.4);
  transition: background-color 250ms linear;
}

#menu_x:hover {
  background-color: var(--lb_brown);
}

.nav-primary ul li a {
  font-size: 2.2rem;
  border-radius: 5px;
}

/*Home Page*/
.lb_home_container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media screen and (min-width: 1000px) {
  .lb_home_container {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-flow: dense;
  }
}

@media screen and (min-width: 1000px) {
  .lb_home_container .span_1_2 {
    grid-column: span 6;
  }
  .lb_home_container .span_1_2.find_us {
    grid-column: span 12;
  }
  .lb_home_container .span_1_4 {
    grid-column: span 6;
  }
  .lb_home_container .span_1_3 {
    grid-column: span 6;
  }
  .lb_home_container .span_1 {
    grid-column: span 12;
  }
  .lb_home_container .sm_span_1 {
    grid-column: span 12;
  }
}
@media screen and (min-width: 1200px) {
  .lb_home_container .span_1_2 {
    grid-column: span 6;
  }
  .lb_home_container .span_1_2.find_us {
    grid-column: span 6;
  }
  .lb_home_container .span_1_4 {
    grid-column: span 3;
  }
  .lb_home_container .span_1_3 {
    grid-column: span 4;
  }
  .lb_home_container .span_1 {
    grid-column: span 12;
  }
}

.lb_home_card {
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
  min-height: 220px;
  background-color: #f3f3f3;
  border-radius: 5px;
  padding: 15px;
  text-align: center;
  transition: all 100ms linear;
  min-width: 100%;
}

.lb_home_card.square:hover,
.newsletter:hover,
.wine:hover,
.contact:hover {
  transform: translate3d(2px, 2px, 0);
  box-shadow: 2px 2px 3px rgba(79, 31, 31, 0.2);
}

.lb_home_card h2 {
  margin-bottom: 20px;
  transition: color 200ms linear;
}

.lb_home_card a img {
  transition: filter 200ms linear;
}

.img_slider .owl-carousel {
  min-width: 100%;
}
.img_slider .owl-carousel .item {
  width: 100%;
}
.img_slider .owl-carousel .item img {
  width: 100%;
}

.swiper-wrapper.owl-carousel.owl-theme {
  overflow: hidden;
}

.lb_home_card a img:not(.lb_flourish) {
  width: 7rem;
  height: auto;
  object-fit: cover;
}

.lb_home_card a:hover img {
  filter: contrast(100%) sepia(80%) hue-rotate(100deg);
}

.lb_home_card a:hover img.lb_flourish {
  filter: hue-rotate(209deg) saturate(158%) brightness(65%);
}

.lb_home_card a:hover h2 {
  color: var(--lb_aqua);
}

.lb_home_card a:hover h4 {
  color: var(--lb_aqua);
}

.lb_home_card a {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.lb_home_card a * {
  margin: 0;
}

.lb_home_card > a {
  height: 100%;
}

.lb_flourish {
  width: 60px;
  height: auto;
}

.lb_home_card.square.shop {
  display: flex;
  justify-content: space-between;
}

.shop_card_left,
.shop_card_right {
  width: 210px;
}

.shop_card_right {
  display: flex;
  flex-wrap: wrap;
  height: 180px;
  border-radius: 5px;
  overflow: hidden;
}

.lb_home_card.square.shop .shop_card_right a {
  height: 90px;
  display: block;
  line-height: 0;
}

.lb_home_card.square.shop .shop_card_right img {
  width: 70px;
  height: 90px;
}

.lb_home_card.rectangle {
  min-height: 420px;
  /*  max-height: 420px; */
}

.lb_home_logo {
  width: 100%;
  height: 100%;
  position: relative;
}

.lb_home_logo img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 300px;
}

.static {
  z-index: 1;
  transition: opacity 250ms linear;
}

.static:hover {
  opacity: 0;
}

.lb_home_card.rectangle.img_slider {
  padding: 7px;
  width: 304px;
  min-height: 341px;
}

/*owl carousel images slider*/
.img_slider .owl-carousel {
  width: 304px;
  height: 341px;
}

.img_slider .owl-carousel .owl-dots {
  position: absolute;
  bottom: 0;
  width: 100%;
  left: 0;
}

.img_slider .owl-theme .owl-dots .owl-dot span {
  background: transparent;
  border: 2px solid var(--lb_pink);
  width: 7px;
  height: 7px;
}

.img_slider .owl-theme .owl-dots .owl-dot.active span {
  background: var(--lb_pink);
}

.img_slider img {
  width: var(--card_width);
  height: 341px;
  object-fit: cover;
  border-radius: 5px;
}

/*Owl Carousel Event Slider*/
.lb_home_card.rectangle.event_slider h2 {
  margin-bottom: 20px;
}

.lb_home_card.rectangle.event_slider {
  min-height: 320px;
  height: auto;
  position: relative;
}

.event_slider .owl-carousel {
  width: var(--card_width);
  min-height: 248px;
  margin: 0 auto;
}

.event_slider .owl-carousel .owl-item img {
  height: 140px;
  width: auto;
  margin: 0 auto 5px auto;
}

.event_slider .owl-carousel .owl-item .item a {
  min-height: 248px;
  display: flex;
  height: auto;
  flex-direction: column;
  justify-content: space-between;
}

.event_slider .owl-nav {
  position: absolute;
  width: 100%;
  bottom: -10;
}

.event_slider .owl-carousel .nav-btn {
  height: 34px;
  position: absolute;
  width: 29px;
  cursor: pointer;
  top: -210px;
}

.owl-carousel .prev-slide {
  background: url(/wp-content/themes/bookmark/assets/images/lb_arrow_l.svg) no-repeat;
  left: -24px;
  transition: filter 200ms linear;
}

.owl-carousel .next-slide {
  background: url(/wp-content/themes/bookmark/assets/images/lb_arrow_r.svg) no-repeat;
  right: -24px;
  transition: filter 200ms linear;
}

.owl-carousel .prev-slide:hover {
  filter: saturate(150%) hue-rotate(176deg) brightness(100%);
}

.owl-carousel .next-slide:hover {
  filter: saturate(150%) hue-rotate(176deg) brightness(100%);
}

/*Continuing the home page card*/
.we_love {
  position: relative;
}

.we_love .lb_recommend {
  position: absolute;
  width: var(--card_width);
  bottom: 15px;
}

.lb_home_card.rectangle.new_arrivals {
  container-type: inline-size;
}
.lb_home_card.rectangle.new_arrivals .new_arrival_books {
  width: 100%;
  display: grid;
}
@container (width > 26rem) {
  .lb_home_card.rectangle.new_arrivals .new_arrival_books {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@container (width < 25.99rem) {
  .lb_home_card.rectangle.new_arrivals .new_arrival_books {
    grid-template-columns: 1fr 1fr;
  }
  .lb_home_card.rectangle.new_arrivals .new_arrival_books a:last-child {
    display: none;
  }
}

.lb_home_card.rectangle.new_arrivals > h2 {
  flex-basis: 100%;
  text-align: center;
}
.lb_home_card.rectangle.new_arrivals > h2 > a {
  margin-left: auto;
  margin-right: auto;
  width: fit-content;
  max-width: 80%;
}

.lb_home_rect_container {
  width: calc(var(--card_width) + 30px);
  height: 355px;
}

.newsletter {
  height: 68px;
  display: flex;
  align-items: center;
}

.newsletter h2 {
  font-family: "Alegreya Sans", serif;
  color: var(--lb_pink);
  margin-bottom: 0;
  font-size: 2.2rem;
  line-height: 110%;
}

h2 .big {
  font-family: "Alegreya", serif;
  color: var(--lb_brown);
  font-size: 2.8rem;
  line-height: 110%;
}

.so-me,
.contact a {
  height: 68px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.contact img {
  width: 63px;
}

.contact h2 {
  margin-bottom: 0;
  grid-column: 1/-1;
}

.contact {
  display: grid;
  align-items: start;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
  grid-template-rows: auto 1fr;
  justify-content: center;
  justify-items: center;
}

.so-me a {
  flex-basis: 30%;
  display: block;
  line-height: 0;
  height: fit-content;
}

.so-me a:hover img,
.contact a:hover img {
  filter: hue-rotate(209deg) saturate(158%) brightness(65%);
}

.lb_home_card.wine a img {
  width: 6rem;
  object-fit: contain;
  mix-blend-mode: darken;
}

.wine a {
  display: block;
  width: 100%;
  height: 100%;
}

.lb_home_card.rectangle.find_us {
  width: calc((var(--card_width) + 30px) * 2);
  height: 325px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.find_us img {
  width: 250px;
  height: 325px;
  object-fit: cover;
  border-radius: 5px;
}

.lb_home_long_container {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  text-align: left;
  align-content: flex-start;
  margin-left: 15px;
  gap: 1rem;
}
.lb_home_long_container * {
  margin-top: 0;
}
.lb_home_long_container a {
  align-items: flex-start;
}
.lb_home_long_container a p {
  text-align: left;
}
.lb_home_long_container h2 {
  margin-bottom: 0;
  flex-basis: 100%;
}

.lb_home_rect_container {
  height: 100%;
  max-height: 100%;
  display: grid;
  grid-template-rows: 1fr 1fr 1fr;
  gap: 2rem;
  width: 100%;
}
.lb_home_rect_container .lb_home_card {
  min-height: unset;
  height: auto;
}

.we_love a,
.award_winners a {
  height: unset;
  gap: 0.5rem;
}

.find_us_text a {
  color: var(--lb_pink);
}

.find_us_text {
  line-height: 2.9rem;
}

.find_us_text a:hover {
  color: var(--lb_aqua);
}

/*newsletter popup*/
.lb_newsletter_pop-up {
  display: none;
  position: fixed;
  top: 0;
  z-index: 50;
  width: 100%;
  height: 100%;
  left: 0;
  background-color: rgba(240, 237, 234, 0.8666666667);
  opacity: 0;
}

.lb_newsletter_pop-up.open {
  display: block;
  animation-name: modal;
  animation-duration: 1s;
  animation-fill-mode: both;
}

@keyframes modal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.lb_home_card.newsletter a img, .lb_home_card.contact a img, .lb_home_card.so-me a img {
  width: 64px;
}

.newsletter_inner {
  margin: 20vh auto;
  max-width: 400px;
  position: relative;
  background-color: #f3f3f3;
  padding: 20px;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}

.newsletter_inner h1 {
  font-size: 5rem;
  line-height: 4rem;
  text-align: center;
  margin-bottom: 15px;
}

#newsletter_x {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 50px;
  height: 50px;
  border-radius: 100%;
  border: 0;
  background-color: var(--lb_pink);
  color: #f3f3f3;
  font-size: 3rem;
  padding: 0;
  box-shadow: 3px 3px 4px rgba(79, 31, 31, 0.4);
  transition: background-color 250ms linear;
}

#newsletter_x:hover {
  background-color: var(--lb_brown);
}

.newsletter_inner form button {
  margin: 15px auto 15px auto;
  display: block;
  width: 150px;
  border: none;
  color: #f3f3f3;
  background-color: var(--lb_pink);
  padding: 10px;
  border-radius: 5px;
  box-shadow: 3px 3px 4px rgba(79, 31, 31, 0.4);
}

.newsletter_inner form button:hover {
  background-color: var(--lb_brown);
  box-shadow: 1px 1px 2px rgba(79, 31, 31, 0.9333333333);
}

.newsletter_inner form input {
  border: none;
  padding: 10px;
  border-radius: 5px;
  box-shadow: inset 3px 3px 6px rgba(79, 31, 31, 0.3333333333), inset -1px -1px 10px rgba(79, 31, 31, 0.3333333333);
  margin: 5px 5px 0px;
}

.newsletter_inner form input:focus {
  box-shadow: inset 1px 1px 3px rgba(79, 31, 31, 0.3333333333), inset -1px -1px 5px rgba(79, 31, 31, 0.3333333333);
  background-color: #fff;
  border: 0;
  outline-style: none;
}

.newsletter_inner form div div {
  margin: 0 auto;
  width: 210px;
}

.newsletter_inner form label {
  padding-left: 5px;
}

/*Contact Page*/
.content .page {
  background: transparent;
}

.content .page.post-89,
.content .page.post-113 {
  max-width: 450px;
  margin: 0 auto;
}

.wpcf7 p input[type=submit] {
  margin: 15px 5px 15px 5px;
  display: block;
  width: 150px;
  border: none;
  color: #f3f3f3;
  background-color: var(--lb_pink);
  padding: 10px;
  border-radius: 5px;
  box-shadow: 3px 3px 4px rgba(79, 31, 31, 0.4);
}

.wpcf7 p {
  margin-bottom: 5px;
  box-sizing: border-box;
}

.wpcf7 label {
  padding-left: 5px;
}

.wpcf7 p input[type=submit]:hover {
  background-color: var(--lb_brown);
  box-shadow: 1px 1px 2px rgba(79, 31, 31, 0.9333333333);
}

.wpcf7 form input[type=text],
.wpcf7 form input[type=email],
.wpcf7 form textarea {
  border: none;
  padding: 10px;
  border-radius: 5px;
  box-shadow: inset 3px 3px 6px rgba(79, 31, 31, 0.3333333333), inset -1px -1px 10px rgba(79, 31, 31, 0.3333333333);
  margin: 5px 5px 0px;
}

.wpcf7 form.sent .wpcf7-mail-sent-ok,
.wpcf7 form.sent div.wpcf7-response-output {
  border-radius: 5px;
  border: 0;
  background-color: #f3f3f3;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
}

.wpcf7 input[type=submit] {
  float: left;
}

div.wpcf7-response-output {
  margin-top: 3em;
}

/*Order Page*/
.lb_order_form,
.lb_recommend_form {
  max-height: 0;
  overflow: hidden;
  transition: max-height 1000ms ease-out;
}

.lb_order_form.open,
.lb_recommend_form.open {
  max-height: 600px;
}

.lb_columns {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.lb_column_left {
  max-width: 520px;
}

.lb_column_orders {
  padding: 15px;
  background-color: #f3f3f3;
  border-radius: 5px;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
  height: 100%;
}

.lb_column_right {
  flex-basis: 60%;
  max-width: 520px;
}

.lb_column_right .columns-3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#primary .lb_column_right ul.columns-3 li.product {
  margin: 0 0 30px 0;
}

/*shop order form*/
.lb_order_form_header {
  max-width: 500px;
  position: relative;
  margin: -40px 15px 30px auto;
}

.woocommerce .entry-header {
  margin-left: 15px;
}

.lb_order_form_header button {
  border-radius: 5px;
  border: 0;
  background-color: #f3f3f3;
  padding: 5px;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
}

.lb_order_form_header button:hover {
  color: var(--lb_aqua);
  transform: translate3d(2px, 2px, 0);
  box-shadow: 2px 2px 3px rgba(79, 31, 31, 0.2);
}

.lb_order_pop-up {
  position: absolute;
  top: 40px;
  left: 0;
  right: 0;
  background: #f3f3f3;
  border-radius: 5px;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
  z-index: 10;
  max-height: 0;
  overflow: hidden;
  transition: all 200ms ease-out;
}

.lb_order_pop-up.open {
  max-height: 1000px;
  padding: 5px 15px;
  overflow: visible;
}

#order_x {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 50px;
  height: 50px;
  border-radius: 100%;
  border: 0;
  background-color: var(--lb_pink);
  color: #f3f3f3;
  font-size: 3rem;
  padding: 0;
  box-shadow: 3px 3px 4px rgba(79, 31, 31, 0.4);
  transition: background-color 250ms linear;
  z-index: 40;
  opacity: 0;
}

.lb_order_pop-up.open #order_x {
  opacity: 1;
}

#order_x:hover {
  background-color: var(--lb_brown);
}

/*shop*/
#primary .woocommerce .products ul::after,
#primary .woocommerce .products ul::before,
#primary .woocommerce ul.products::after,
#primary .woocommerce ul.products::before {
  content: none;
}

#primary .woocommerce .products ul,
#primary .woocommerce ul.products {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

#primary .woocommerce ul.products li.product,
#primary .woocommerce-page ul.products li.product {
  margin: 0 15px 30px 15px;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
  border-radius: 5px;
  background-color: #f3f3f3;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

#primary .woocommerce .related ul.products,
#primary .lb_column_shop .woocommerce ul.products {
  justify-content: space-between;
}

#primary .woocommerce .related ul.products li.product,
#primary .lb_column_shop .woocommerce ul.products li.product {
  margin: 0 0 30px 0;
}

#primary .woocommerce ul.products li.product a img {
  border-radius: 5px;
  transition: filter 250ms ease-out;
  margin: 10px auto 10px;
  width: calc(100% - 20px);
}

.woocommerce h2.lb_author {
  font-size: 2.5rem;
  line-height: 2.5rem;
  margin-bottom: 5px;
  text-align: center;
  transition: color 250ms ease-out;
}

.woocommerce h4.lb_title {
  font-family: "Alegreya Sans", Sans-Serif;
  color: var(--lb_pink);
  font-size: 2rem;
  text-align: center;
  padding: 0;
  transition: color 250ms ease-out;
}

#primary h2.woocommerce-loop-product__title {
  font-family: "Alegreya", Serif;
  color: var(--lb_brown);
  font-size: 1.4rem;
  text-align: center;
  padding: 0;
  transition: color 250ms ease-out;
}

#primary .woocommerce ul.products li.product .price {
  text-align: center;
  color: var(--lb_aqua);
}

#primary .woocommerce ul.products li.product .button {
  margin: 0 0 10px 0;
  color: var(--lb_brown);
  background-image: linear-gradient(160deg, #f5dde6, var(--lb_pink));
  box-shadow: 2px 2px 4px rgba(79, 31, 31, 0.2), -2px -2px 4px rgb(255, 255, 255);
  transition: all 250ms ease-out;
}

#primary .woocommerce ul.products li.product .button:hover {
  background-image: linear-gradient(160deg, var(--lb_pink), #e5b6c7);
  box-shadow: 1px 1px 2px rgba(79, 31, 31, 0.5), -2px -2px 4px rgb(255, 255, 255);
  color: var(--lb_aqua);
}

#primary .woocommerce-LoopProduct-link:hover h2 {
  color: var(--lb_aqua);
}

#primary .woocommerce-LoopProduct-link:hover h2.woocommerce-loop-product__title {
  color: var(--lb_brown);
}

#primary .woocommerce-LoopProduct-link:hover img {
  filter: contrast(100%) sepia(80%) hue-rotate(100deg);
}

#primary article.product {
  max-width: 900px;
  margin: 0 auto;
}

#primary article.product h1 {
  text-align: center;
}

#primary article.product .single-product .product {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

#primary .images.woocommerce-product-gallery {
  width: 300px;
}

#primary .woocommerce-tabs,
#primary .related {
  flex-basis: 100%;
}

#primary .woocommerce div.product p.price,
#primary .woocommerce div.product span.price {
  color: var(--lb_aqua);
  font-size: 1rem;
  line-height: 100%;
}

.cfwc-custom-field-wrapper label {
  padding-right: 5px;
}

.cfwc-custom-field-wrapper {
  display: flex;
  flex-direction: column;
}

.cfwc-custom-field-wrapper.cfwc_giftwrap,
.cfwc-custom-field-wrapper.cfwc_checkbox {
  display: block;
}

#primary .woocommerce #respond input#submit.alt,
#primary .woocommerce a.button.alt,
#primary .woocommerce button.button.alt,
#primary .woocommerce input.button.alt {
  color: var(--lb_brown);
  background-image: linear-gradient(160deg, #f5dde6, var(--lb_pink));
  box-shadow: 2px 2px 4px rgba(79, 31, 31, 0.2), -2px -2px 4px rgb(255, 255, 255);
  transition: all 250ms ease-out;
}

#primary .woocommerce #respond input#submit.alt:hover,
#primary .woocommerce a.button.alt:hover,
#primary .woocommerce button.button.alt:hover,
#primary .woocommerce input.button.alt:hover {
  background-image: linear-gradient(160deg, var(--lb_pink), #e5b6c7);
  box-shadow: 1px 1px 2px rgba(79, 31, 31, 0.5), -2px -2px 4px rgb(255, 255, 255);
  color: var(--lb_aqua);
}

.quantity input,
.bl_custom_price_amount input,
.cfwc-custom-field-wrapper textarea,
.cfwc-custom-field-wrapper input,
.woocommerce-billing-fields input,
#primary .woocommerce-additional-fields textarea.input-text {
  padding: 5px;
  margin-bottom: 5px;
  border: none;
  padding: 10px;
  border-radius: 5px;
  box-shadow: inset 3px 3px 6px rgba(79, 31, 31, 0.3333333333), inset -1px -1px 10px rgba(79, 31, 31, 0.3333333333);
}

#primary .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  background-color: var(--lb_beige);
  border-bottom-color: var(--lb_beige);
}

#add_payment_method #payment ul.payment_methods li,
.woocommerce-cart #payment ul.payment_methods li,
.woocommerce-checkout #payment ul.payment_methods li {
  list-style-type: none;
}

.woocommerce-message::before {
  color: var(--lb_aqua);
}

.woocommerce-message {
  border-top-color: var(--lb_aqua);
  border-radius: 5px;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
}

/*Free Shipping Hack*/
.woocommerce ul#shipping_method #shipping_method_0_flat_rate7,
.woocommerce ul#shipping_method label[for=shipping_method_0_flat_rate7] {
  display: none;
}

.woocommerce .show_free ul#shipping_method #shipping_method_0_flat_rate7,
.woocommerce .show_free ul#shipping_method label[for=shipping_method_0_flat_rate7] {
  display: inline;
}

.lb_select select {
  border-radius: 3px;
  padding: 3px;
}

.lb_select {
  display: none;
}

.lb_select.display {
  display: inline;
}

/*Floating Cart*/
.lb_floating_cart {
  position: fixed;
  top: 12vh;
  right: 12.5vw;
  width: 50px;
  height: 50px;
  z-index: 40;
}

.lb_floating_cart img {
  background-color: #f3f3f3;
  border-radius: 50%;
  box-shadow: 2px 2px 4px rgba(79, 31, 31, 0.5);
}

.lb_floating_cart a {
  display: block;
  position: relative;
  color: #f3f3f3;
  text-align: center;
  line-height: 30px;
}

.lb_cart_number {
  position: absolute;
  top: -15px;
  right: -15px;
  width: 30px;
  height: 30px;
  background-color: var(--lb_aqua);
  border-radius: 50%;
}

/*Events*/
.site-inner .tribe-events .tribe-events-header,
.tribe-events .tribe-events-c-events-bar {
  background-color: var(--lb_beige);
}

.tribe-common .tribe-common-h3 {
  font-family: "Alegreya", serif;
}

/* ----------- THE EVENTS CALENDAR -------------  */
/* Fix padding */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container,
.tribe-events .tribe-events-l-container,
.content-area bb-grid-cell {
  padding-top: 0px;
  padding-bottom: 0px;
}

/* Fix color */
.tribe-common .tribe-common-h7,
.tribe-common .tribe-common-h8,
.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-b2 {
  font-family: "Alegreya Sans", Sans-Serif;
}

.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-b2 {
  color: var(--lb_brown);
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day {
  border-radius: 5px;
  margin: 1px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day:hover {
  background-color: #f3f3f3;
  border-bottom: 4px solid var(--lb_pink);
}

.tribe-events .tribe-events-calendar-month__mobile-events-icon--event {
  background-color: #ddb3c2;
}

.tribe-common .tribe-common-anchor-thin-alt,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day-cell--desktop:hover {
  border: 0;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-messages__message {
  background-color: #f3f3f3;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}

.tribe-common .tribe-common-anchor-thin-alt:hover {
  color: var(--lb_aqua);
  border: 0;
}

.tribe-common a {
  color: var(--lb_aqua);
  outline: 0;
  text-decoration: none;
}

.tribe-common .tribe-common-anchor-thin:hover {
  border: 0;
  color: var(--lb_aqua);
}

.tribe-common .tribe-common-c-btn,
.tribe-common a.tribe-common-c-btn {
  background-color: var(--lb_pink);
}

.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
  color: var(--lb_pink);
}

.tribe-common a,
.tribe-common a:active,
.tribe-common a:focus,
.tribe-common a:hover,
.tribe-common a:visited {
  color: var(--lb_pink);
}

.tribe-events .tribe-events-c-ical__link:active,
.tribe-events .tribe-events-c-ical__link:focus,
.tribe-events .tribe-events-c-ical__link:hover {
  color: white;
  background-color: var(--lb_pink);
}

.tribe-events .tribe-events-c-ical__link {
  color: var(--lb_aqua);
  border: 1px solid var(--lb_aqua);
  margin-bottom: 16px;
}

.tribe-events .tribe-events-c-ical__link:before {
  display: none;
}

.tribe-events .datepicker .day.active,
.tribe-events .datepicker .day.active.focused,
.tribe-events .datepicker .day.active:focus,
.tribe-events .datepicker .day.active:hover,
.tribe-events .datepicker .month.active,
.tribe-events .datepicker .month.active.focused,
.tribe-events .datepicker .month.active:focus,
.tribe-events .datepicker .month.active:hover,
.tribe-events .datepicker .year.active,
.tribe-events .datepicker .year.active.focused,
.tribe-events .datepicker .year.active:focus,
.tribe-events .datepicker .year.active:hover {
  background: var(--lb_pink);
}

.tribe-events .tribe-events-calendar-month__day-cell--selected,
.tribe-events .tribe-events-calendar-month__day-cell--selected:hover,
.tribe-events .tribe-events-calendar-month__day-cell--selected:focus {
  background-color: var(--lb_pink);
}

.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
  color: #fff;
  background: var(--lb_pink);
}

.tribe-events-back {
  margin: 5px;
  line-height: 100%;
}

.tribe-events-single {
  max-width: 900px;
  margin: 0 auto;
}

.tribe-events-event-image img {
  max-width: 600px;
  align: center;
}

.single-tribe_events .tribe-events-event-image {
  width: 300px;
}

.single-tribe_events .tribe-events-single-event-title {
  font-size: 4rem;
  text-align: center;
}

.single-tribe_events .tribe-events-schedule {
  text-align: left;
  background-color: var(--lb_beige);
}

.tribe-events-single .tribe_events {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.single-tribe_events .tribe-events-content {
  max-width: 500px;
  width: 50%;
}

.tribe-events-content p {
  font-size: 1.8rem;
  margin-bottom: 1.8rem;
}

.single-tribe_events .tribe-events-cal-links {
  display: none;
}

.single-tribe_events .tribe-events-event-meta {
  background: #f3f3f3;
  border: 0;
  border-radius: 5px;
  width: 92%;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}

.tribe-events-meta-group h4.lb_title {
  font-size: 1.6rem;
}

.tribe-events-single-section-title.lb_author {
  margin: 0 0 10px;
}

.tribe-events-event-meta dl {
  word-break: break-all;
}

/*footer*/
.site-footer {
  background: transparent;
}

.lb_footer {
  font-size: 1rem;
  text-align: center;
  color: var(--lb_pink);
  background-color: #f3f3f3;
  width: fit-content;
  margin: 2rem auto;
  padding: 5px;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.5);
}

@media only screen and (max-width: 1200px) {
  .lb_home_logo {
    display: none;
  }
}
@media only screen and (max-width: 1080px) {
  :root {
    --body_width: 800px;
  }
  .lb_home_container {
    justify-content: space-around;
  }
  .lb_home_card.square.shop .shop_card_right {
    display: none;
  }
  .lb_home_card.rectangle.img_slider,
  .img_slider .owl-carousel {
    width: calc(var(--card_width) + 16px);
  }
  .img_slider .owl-carousel {
    height: 356px;
  }
  .img_slider img {
    height: 356px;
  }
  .owl-carousel .prev-slide {
    left: 0;
  }
  .owl-carousel .next-slide {
    right: 0;
  }
  .lb_home_logo {
    display: none;
  }
  .full-width-content .site-footer .wrap {
    max-width: var(--body_width);
    width: 100%;
  }
  .lb_footer {
    width: 230px;
  }
  /*Fomrs*/
  .full-width-content .content-sidebar-wrap {
    width: 100%;
  }
  .lb_columns {
    justify-content: center;
  }
  /*Shop*/
  #primary .woocommerce .products ul,
  #primary .woocommerce ul.products {
    justify-content: space-between;
  }
  #primary .woocommerce ul.products li.product,
  #primary .woocommerce-page ul.products li.product {
    width: 28%;
    margin: 0 1% 30px 1%;
  }
  .lb_order_form_header {
    margin-top: -50px;
  }
}
@media only screen and (max-width: 800px) {
  :root {
    --card_width: 180px;
  }
  .lb_home_card.rectangle.new_arrivals,
  .lb_home_card.rectangle.find_us {
    width: calc(100% - (100% - 3 * (var(--card_width) + 30px)) * 2 / 3);
  }
  .lb_home_card.rectangle.find_us {
    order: 11;
  }
  .lb_home_card.rectangle.find_us img {
    display: block;
  }
  .lb_home_card.rectangle.find_us h2 {
    width: 100%;
  }
  .find_us_text {
    margin-right: 10px;
  }
  .lb_home_rect_container {
    height: 368px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .lb_home_rect_container .so-me {
    margin: 0;
  }
  .newsletter H2 {
    font-size: 3rem;
  }
  h2 .big {
    font-size: 3.6rem;
  }
  .lb_home_card.rectangle.new_arrivals h2 a {
    font-size: 4rem;
  }
  .full-width-content .site-footer .wrap {
    width: 240px;
  }
  #primary article.product .single-product .product {
    max-width: 90%;
    margin: 0 auto;
  }
  #primary .woocommerce .products ul,
  #primary .woocommerce ul.products {
    justify-content: space-around;
  }
  .lb_floating_cart {
    right: 18px;
  }
  .single-tribe_events .tribe-events-content {
    width: 90%;
  }
  .tribe-events-sub-nav li a:hover,
  .tribe-events-sub-nav li a:visited,
  .tribe-events-sub-nav li a {
    color: var(--lb_brown);
    background: transparent;
  }
}
@media only screen and (max-width: 670px) {
  :root {
    --card_width: 210px;
  }
  .lb_home_card.square.shop,
  .lb_home_card.rectangle.new_arrivals,
  .lb_home_card.rectangle.find_us {
    width: calc(100% - (100% - 2 * (var(--card_width))) / 2);
  }
  .lb_home_card.square.shop {
    height: 180px;
  }
  .lb_home_card.square.shop a {
    height: 180px;
  }
  .lb_home_card.square.shop .shop_card_right {
    display: block;
  }
  .lb_home_card.rectangle.wine {
    order: 10;
  }
  .lb_home_rect_container {
    order: 9;
    height: 355px;
  }
  .lb_home_card.rectangle.new_arrivals {
    order: 8;
  }
  .lb_home_card.rectangle.award_winners {
    order: 7;
  }
  #primary .woocommerce ul.products li.product,
  #primary .woocommerce-page ul.products li.product {
    width: 40%;
  }
  .lb_order_form_header {
    margin: 10px;
  }
}
@media only screen and (max-width: 501px) {
  .lb_header a {
    width: 60%;
  }
  .hamburger {
    top: 0;
  }
  .full-width-content .menu-primary {
    width: 200px;
  }
  .nav-primary .wrap,
  .nav-primary .menu-primary.menu,
  .newsletter_inner {
    max-width: 200px;
  }
  .nav-primary .wrap,
  .newsletter_inner {
    margin-top: 10vh;
  }
  .newsletter_inner h1 {
    font-size: 4rem;
  }
  .lb_home_card {
    flex-basis: 80%;
    order: 2;
  }
  .lb_home_card.square,
  .lb_home_card.square a {
    height: 100%;
  }
  .lb_home_card.square.shop,
  .lb_home_card.rectangle.new_arrivals,
  .lb_home_card.rectangle.find_us {
    width: 80%;
    max-width: 80%;
  }
  .lb_home_card.square.shop {
    height: 100%;
    order: 1;
  }
  .lb_home_card.square.shop a,
  .shop_card_right,
  .lb_home_card.square.shop .shop_card_right a {
    height: 100%;
  }
  .shop_card_left {
    width: 40%;
  }
  .lb_home_card.rectangle.img_slider {
    flex-basis: calc(80% + 16px);
    max-width: calc(80% + 16px);
  }
  .img_slider .owl-carousel {
    width: 100%;
  }
  .we_love .lb_recommend {
    width: 95%;
    margin: 0 auto;
  }
  .lb_home_card.rectangle.new_arrivals {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
  }
  .lb_home_card.rectangle.new_arrivals h2,
  .lb_home_card.rectangle.new_arrivals a {
    width: 100%;
  }
  .lb_home_card.rectangle.new_arrivals a {
    margin-bottom: 10px;
  }
  .lb_home_rect_container {
    width: calc(80% + 30px);
    height: 100%;
  }
  .newsletter a {
    width: 100%;
  }
  .contact a {
    justify-content: space-around;
  }
  .contact a img {
    flex-basis: 0;
  }
  .so-me a img {
    width: 63px;
  }
  .lb_home_rect_container .so-me {
    margin-bottom: 30px;
  }
  .lb_home_card.rectangle.find_us {
    height: 100%;
    flex-wrap: wrap;
  }
  .lb_home_card.rectangle.find_us img {
    width: 100%;
    margin-bottom: 25px;
  }
  /*Forms*/
  .lb_column_orders {
    max-width: 300px;
  }
  .wpcf7 form input[type=text],
  .wpcf7 form input[type=email],
  .wpcf7 form textarea {
    max-width: 260px;
  }
  #primary .woocommerce .related ul.products li.product,
  #primary .lb_column_shop .woocommerce ul.products li.product {
    flex-basis: 100%;
  }
  /*Woocommerce*/
  .lb_floating_cart {
    right: 20px;
    top: 12vh;
  }
  .full-width-content .content,
  .full-width-content .content-sidebar-wrap {
    max-width: 90%;
    float: none;
    margin: 0 auto;
  }
  #primary .woocommerce ul.products li.product,
  #primary .woocommerce-page ul.products li.product {
    width: 60%;
  }
}
@media only screen and (max-width: 340px) {
  .lb_home_card.square.shop {
    flex-wrap: wrap;
  }
  .shop_card_left,
  .shop_card_right {
    flex-basis: 100%;
  }
}
.page-template-events #primary .woocommerce ul.products li.product a {
  display: grid;
  grid-template-rows: 300px 1fr;
  gap: 20px;
  padding: 20px;
}
.page-template-events #primary .woocommerce ul.products li.product a img {
  height: 300px;
  width: 100%;
  object-fit: cover;
  margin: 0;
}
.page-template-events #primary .woocommerce ul.products li.product a h2 {
  margin-bottom: 20px;
}
.page-template-events #primary .woocommerce ul.products li.product a p {
  text-align: center;
}
.page-template-events #primary .woocommerce ul.products li.product a button {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

form.wpcf7-form {
  width: 800px;
  max-width: 90vw;
}

/*Proportional Images*/
.container.container--square {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--square {
    aspect-ratio: 1;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--square {
    padding-top: 100%;
    height: 0;
  }
}
.container.container--round {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 50%;
}
@supports (aspect-ratio: 16/9) {
  .container.container--round {
    aspect-ratio: 1;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--round {
    padding-top: 100%;
    height: 0;
  }
}
.container.container--sixteennine {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--sixteennine {
    aspect-ratio: 1.7777777778;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--sixteennine {
    padding-top: 56.25%;
    height: 0;
  }
}
.container.container--fourthree {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--fourthree {
    aspect-ratio: 1.3333333333;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--fourthree {
    padding-top: 75%;
    height: 0;
  }
}
.container.container--twentyonenine {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--twentyonenine {
    aspect-ratio: 2.3333333333;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--twentyonenine {
    padding-top: 42.85%;
    height: 0;
  }
}
.container.container--fivefour {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--fivefour {
    aspect-ratio: 1.25;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--fivefour {
    padding-top: 80%;
    height: 0;
  }
}
.container.container--fourfive {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--fourfive {
    aspect-ratio: 0.8;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--fourfive {
    padding-top: 125%;
    height: 0;
  }
}
.container.container--twothree {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--twothree {
    aspect-ratio: 0.6666666667;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--twothree {
    padding-top: 150%;
    height: 0;
  }
}
.container.container--threetwo {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--threetwo {
    aspect-ratio: 1.5;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--threetwo {
    padding-top: 66%;
    height: 0;
  }
}
.container.container--video {
  overflow: visible;
}
.container.container--header {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--header {
    aspect-ratio: 0.6666666667;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--header {
    padding-top: 150%;
    height: 0;
  }
}
@media screen and (min-width: 700px) {
  .container.container--header {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  @supports (aspect-ratio: 16/9) {
    .container.container--header {
      aspect-ratio: 1.25;
    }
  }
  @supports not (aspect-ratio: 16/9) {
    .container.container--header {
      padding-top: 80%;
      height: 0;
    }
  }
}
@media screen and (min-width: 1200px) {
  .container.container--header {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  @supports (aspect-ratio: 16/9) {
    .container.container--header {
      aspect-ratio: 2.3333333333;
    }
  }
  @supports not (aspect-ratio: 16/9) {
    .container.container--header {
      padding-top: 42.85%;
      height: 0;
    }
  }
}
.container.container--header:has(> .video_bg__video) {
  position: relative;
  width: 100%;
  overflow: hidden;
  top: 0;
  max-height: 100dvh;
}
@supports (aspect-ratio: 16/9) {
  .container.container--header:has(> .video_bg__video) {
    aspect-ratio: 1.7777777778;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--header:has(> .video_bg__video) {
    padding-top: 56.25%;
    height: 0;
  }
}
.container.container--header:has(> .video_bg__video) iframe {
  transform: scale(1.2);
}
.container.container--banner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--banner {
    aspect-ratio: 0.6666666667;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--banner {
    padding-top: 150%;
    height: 0;
  }
}
@media screen and (min-width: 700px) {
  .container.container--banner {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  @supports (aspect-ratio: 16/9) {
    .container.container--banner {
      aspect-ratio: 1.25;
    }
  }
  @supports not (aspect-ratio: 16/9) {
    .container.container--banner {
      padding-top: 80%;
      height: 0;
    }
  }
}
@media screen and (min-width: 1200px) {
  .container.container--banner {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  @supports (aspect-ratio: 16/9) {
    .container.container--banner {
      aspect-ratio: 3;
    }
  }
  @supports not (aspect-ratio: 16/9) {
    .container.container--banner {
      padding-top: 33%;
      height: 0;
    }
  }
}
.container.container--cover {
  width: 100%;
  height: 100%;
  position: relative;
}
.container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 35%;
}
.container img.contain {
  object-fit: contain;
}
.container.container--max-height {
  height: 375px;
  width: fit-content;
  position: static;
}
.container.container--max-height img {
  height: 100%;
  width: auto;
  position: static;
  max-width: calc(100vw - 2 * var(--margin));
  object-fit: contain;
}

.cover img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 700px) {
  .single-news .container--header {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  @supports (aspect-ratio: 16/9) {
    .single-news .container--header {
      aspect-ratio: 1.5;
    }
  }
  @supports not (aspect-ratio: 16/9) {
    .single-news .container--header {
      padding-top: 66%;
      height: 0;
    }
  }
}
@media screen and (min-width: 1200px) {
  .single-news .container--header {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  @supports (aspect-ratio: 16/9) {
    .single-news .container--header {
      aspect-ratio: 2.3333333333;
    }
  }
  @supports not (aspect-ratio: 16/9) {
    .single-news .container--header {
      padding-top: 42.85%;
      height: 0;
    }
  }
}

/*--------------------------------------------------------------

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
/*Header animation*/
header#masthead {
  z-index: 15;
  background: #f0edea;
  display: flex;
  padding: 0 5%;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 9rem;
  top: 0;
  left: 0;
  position: absolute;
}
header#masthead.addFixed {
  position: fixed;
  transform: translate3d(0, -100%, 0);
}
header#masthead.slideOut {
  transition: transform 600ms ease-in;
  transform: translate3d(0, -100%, 0);
  position: fixed;
}
header#masthead.slideOut.slideInDown {
  transform: translate3d(0, 0, 0);
  position: fixed;
}

header#masthead .bl_header img {
  height: 7.5rem;
}

@media only screen and (min-width: 1000px) {
  header#masthead {
    padding: 0 7.5%;
  }
}
@media only screen and (min-width: 1200px) {
  header#masthead {
    padding: 8px 2.5%;
    display: grid;
    grid-template-columns: 1fr 3fr 1fr;
    grid-column-gap: 5rem;
  }
}
/*This sets padding on everypage to account for the absolute positioned header*/
#primary,
#tribe-events-pg-template {
  padding-top: var(--header_height);
  padding-bottom: 2rem;
}
@media screen and (min-width: 1000px) {
  #primary,
  #tribe-events-pg-template {
    padding-top: var(--header_height);
    padding-bottom: 6rem;
  }
}

#primary-menu a:visited {
  color: #000000;
}

.main-navigation {
  display: block;
  /*width: 100%;*/
}
.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}
.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}
.main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
  display: block;
  left: auto;
}
.main-navigation ul ul a {
  width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
  color: #000000;
  font-family: Playfair;
  font-size: 1.2rem;
}
/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

.menu-toggle {
  display: none;
}

.main-navigation ul {
  display: flex;
  justify-content: space-around;
}

.menu_search_container {
  position: fixed;
  transform: translate3d(-100%, 0, 0);
  transition: transform 800ms ease-in;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  top: 0;
  z-index: 19;
  width: 100%;
  height: 100%;
  left: 0;
  background-color: rgba(240, 237, 234, 0.8666666667);
  border-top: 0px solid #EEEEEE;
  border-bottom: 0px solid #EEEEEE;
  border-left: 0px solid #EEEEEE;
  border-right: 0px solid #EEEEEE;
  margin: 0px 0 0px 0;
  color: #4F1F1F;
  font-family: Arial, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1em;
  clear: both;
  font-family: "Alegreya Sans", Sans-Serif;
}
.menu_search_container .wrapper {
  margin: 20vh auto;
  width: 400px;
  max-width: 90vw;
  position: relative;
  background-color: #f3f3f3;
  padding: 20px;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}
.menu_search_container .wrapper ul {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.menu_search_container .wrapper ul li a {
  font-size: 1.4rem;
  border-radius: 5px;
  color: #4F1F1F;
  font-family: "Alegreya Sans", Sans-Serif;
  padding: 17px 15px 17px 15px;
}
.menu_search_container .wrapper ul li a:visited, .menu_search_container .wrapper ul li a:hover {
  color: var(--lb_aqua);
}

.menu_search_container {
  flex-wrap: wrap;
}

.toggled .menu_search_container {
  transform: translate3d(0, 0, 0);
}

.nav-search-form.mobile .search-submit {
  height: 25.59px;
  width: auto;
}

.bl_header a {
  width: 300px;
  display: block;
  margin: 0 auto;
  line-height: 0;
}

@media screen and (min-width: 700px) {
  .my-account span {
    display: inline;
    line-height: 105%;
  }
}
/* @media only screen and (min-width: 1200px) {
  .menu_search_container {
    position: static;
    height: auto;
    min-height: unset;
    transform: translate3d(0, 0, 0);
    align-items: flex-start;
    background-color: transparent;
  }
  .nav-search-form {
    position: static;
  }
  .menu-main-menu-container {
    padding: 0;
    position: absolute;
    display: flex;
  }

  .main-navigation ul {
    display: flex;
    justify-content: space-between;
  }

  .toggled {
    .menu_search_container {
      transform: translate3d(0, 0, 0);
    }
  }
} */
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}
.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

.site-login a {
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media screen and (min-width: 700px) {
  .site-login a {
    gap: 1rem;
    flex-direction: row;
  }
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  position: absolute;
  z-index: 20;
  padding: 15px 0;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  right: var(--margin);
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: var(--lb_aqua);
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: var(--lb_brown);
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}

.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}

.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* No hamburger, visible menu at min-width: 1200px*/
/* @media only screen and (min-width: 1200px) {


  .site-login {
    grid-column: 1/2;
    grid-row: 1/2;
    justify-self: center;
  }

  .site-branding {
    grid-column: 2/3;
    grid-row: 1/2;
    justify-self: center;
    height: 100px;
  }

  .main-navigation {
    grid-column: 1/4;
    grid-row: 2/3;
  }
  .nav-search-form.mobile {
    display: none;
  }
  .nav-search-form.desktop {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    grid-column: 3;
    grid-row: 1/2;
    justify-self: center;
    & .search-submit {
      width: 25.59px;
      height: auto;
    }
  }
  #primary-menu li {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .menu-main-menu-container {
    padding: 0 0 1rem;
  }
} */
/*Mini-cart*/
.nav_cart {
  position: absolute;
  bottom: -3rem;
  right: var(--margin);
}
.nav_cart.current-menu-item {
  display: none;
}
.nav_cart .cart-contents {
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  position: relative;
  justify-content: center;
  z-index: 10;
}
.nav_cart .cart-contents span.count {
  position: absolute;
  color: #faf7e8;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  display: flex;
  justify-content: center;
  top: 35%;
}
.nav_cart .cart-contents .cart-contents svg {
  width: 100%;
  fill: #000000;
}
.nav_cart #site-header-cart {
  position: absolute;
  max-height: 0;
  overflow: hidden;
  top: 0;
  width: 300px;
  left: calc(1.5rem - 150px);
  background-color: #faf7e8;
  padding: 0;
  opacity: 0 !important;
  transition: opacity 400ms ease-in;
  display: none;
}
.nav_cart:hover #site-header-cart {
  max-height: 100vh;
  padding: 3rem 1rem 1rem;
  opacity: 1 !important;
  box-shadow: 2px 2px 4px #000000;
}
.nav_cart p.woocommerce-mini-cart__total {
  margin-top: 1rem;
}
.nav_cart .woocommerce-mini-cart__buttons.buttons {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  width: 100%;
  justify-content: stretch;
  max-width: 100%;
}
.nav_cart .woocommerce-mini-cart__buttons.buttons a {
  background-color: #a02700;
  color: #fff;
  font-weight: 400;
  align-self: stretch;
  max-width: 100%;
}
.nav_cart .woocommerce a.remove {
  color: #a02700 !important;
}
.nav_cart .woocommerce-mini-cart .woocommerce-mini-cart-item .mini_cart_item img {
  width: 50px;
}
@media only screen and (min-width: 1200px) {
  .nav_cart #site-header-cart {
    display: block;
  }
}

/* Posts and pages
--------------------------------------------- */
.bl_book_list {
  max-width: 100%;
  display: grid;
}
@media screen and (min-width: 1000px) {
  .bl_book_list {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 2rem;
  }
}

.bl_book_container {
  grid-column: span 1;
  width: 100%;
  box-shadow: 4px 4px 8px rgba(79, 31, 31, 0.12);
  border-radius: 5px;
  background-color: #f3f3f3;
  display: grid;
  grid-template-rows: auto auto auto auto 1fr;
  justify-content: flex-end;
  padding: 0.5rem;
}
.bl_book_container a {
  width: 100%;
}
.bl_book_container a img {
  width: 100%;
  height: 22rem;
  object-fit: cover;
  object-position: center;
  border-radius: 4px;
}
.bl_book_container * {
  text-align: center;
}
.bl_book_container h3 {
  margin: 0;
}
.bl_book_container .bl_book_price {
  display: flex;
  flex-direction: column;
}
.bl_book_container .add_to_cart_button {
  color: #4f1f1f;
  background-image: linear-gradient(160deg, #f5dde6, var(--lb_pink));
  box-shadow: 2px 2px 4px rgba(79, 31, 31, 0.2), -2px -2px 4px rgb(255, 255, 255);
  transition: all 250ms ease-out;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.15rem;
  font-weight: 700;
  padding: 0.6rem 1rem;
  border-radius: 3px;
}
.bl_book_container h4.bl_book_author {
  margin: 0;
}
.bl_book_container h4.bl_book_author a {
  font-family: "Alegreya Sans", Sans-Serif;
  color: #ddb3c2;
}
.bl_book_container .bl_book_price bdi {
  font-family: Arial, sans-serif;
  font-size: 1.9rem;
  color: #2f736f;
}
.bl_book_container .bl_book_price del {
  font-size: 1rem;
  margin-bottom: -0.7rem;
}
.bl_book_container .bl_book_price del bdi {
  font-size: 1rem;
}
.bl_book_container .bl_book_price ins {
  background: none;
}
.bl_book_container h3.bl_book_title {
  font-size: 1.6rem;
  line-height: 110%;
}
.bl_book_container h3.bl_book_title a {
  font-size: 1.6rem;
  line-height: 110%;
  font-style: italic;
  color: #4f1f1f;
}
.bl_book_container .bl_add_to {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
}
.bl_book_container .bl_add_to a {
  width: fit-content;
}

h1.entry-title {
  margin-top: 0;
  font-size: 2.6rem;
}

.event_schedule {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}
.event_schedule .time_fee {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: fit-content;
}
.event_schedule .time_fee * {
  text-align: center;
}
.event_schedule .time_fee p {
  margin-bottom: 0.2rem;
}
.event_schedule .rsvp_wrapper {
  max-width: 38rem;
  background-color: #ffffff;
  padding: 3rem 1rem;
  display: grid;
  gap: 4rem;
  border-radius: 0.3rem;
  align-items: center;
}
@media screen and (min-width: 1000px) {
  .event_schedule .rsvp_wrapper {
    grid-template-columns: 2fr 1fr;
  }
}
.event_schedule .rsvp_wrapper .rsvp_action {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.event_schedule .rsvp_wrapper .rsvp_desc {
  position: relative;
}
.event_schedule .rsvp_wrapper .rsvp_desc h3 {
  margin-top: 0;
  margin-bottom: 1rem;
}
.event_schedule .rsvp_wrapper .rsvp_desc p {
  margin: 0;
}
.event_schedule .rsvp_wrapper .rsvp_desc p:has(+ *) {
  margin-bottom: 1rem;
}
.event_schedule .rsvp_wrapper .rsvp_desc::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  top: 0;
  right: -2rem;
  border-right: none;
  background-image: repeating-linear-gradient(to bottom, transparent, transparent 4px, rgb(190, 190, 190) 1px, rgb(190, 190, 190) 10px);
  background-position: right;
  background-repeat: no-repeat;
  background-size: 1px 100%;
  padding-right: 10px;
}
.event_schedule .event_details {
  width: 100%;
  padding: 1rem 1rem;
  display: grid;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}
@media screen and (min-width: 1000px) {
  .event_schedule .event_details {
    grid-template-columns: 1fr 1fr;
  }
}
.event_schedule .event_details > div p,
.event_schedule .event_details > div a {
  padding-left: 1rem;
  font-size: 1.15rem;
  line-height: 1.6rem;
}
.event_schedule .event_details .book img {
  width: 50%;
  height: auto;
}
.event_schedule .event_details .book img + p {
  font-size: 1.3rem;
  color: #4f1f1f;
  margin-bottom: 0.5rem;
}
.event_schedule .event_details .book img + p + p {
  color: #ddb3c2;
  font-size: 1rem;
}
.event_schedule .venue_wrapper {
  width: 100%;
  padding: 1rem 1rem;
  display: grid;
  gap: 3rem;
  border-radius: 5px;
  width: 92%;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
}
@media screen and (min-width: 1000px) {
  .event_schedule .venue_wrapper {
    grid-template-columns: 3fr 2fr;
  }
}
.event_schedule .venue_wrapper > div p,
.event_schedule .venue_wrapper > div a {
  padding-left: 1rem;
  font-size: 1.15rem;
  line-height: 1.6rem;
}
.event_schedule .venue_wrapper .google_maps {
  display: flex;
  align-items: center;
}
.event_schedule .venue_wrapper .google_maps iframe {
  width: 18rem;
  height: 18rem;
}

@media screen and (max-width: 1000px) {
  h1.entry-title {
    font-size: 1.6rem !important;
    line-height: 120% !important;
  }
  .event_schedule {
    gap: 1rem;
  }
  .event_schedule .post-thumbnail {
    width: 100%;
  }
  .event_schedule .post-thumbnail img {
    width: 100%;
    height: auto;
  }
  .event_schedule .rsvp_wrapper {
    padding: 1rem 1rem;
    gap: 1rem;
  }
  .event_schedule .rsvp_wrapper .rsvp_desc {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .event_schedule .event_details {
    width: 100%;
  }
  .event_schedule .venue_wrapper {
    width: 100%;
    gap: 1rem;
  }
  .event_schedule .venue_wrapper .google_maps iframe {
    width: 100% !important;
    height: unset;
    aspect-ratio: 1/1;
  }
  .event_schedule .venue_wrapper > *:first-child {
    order: 2;
  }
}
.lb_shop_books {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  container-type: size;
  width: 100%;
  padding-top: 0.5rem;
  height: calc(220px - 2rem);
}

.lb_home_card a .lb_shop_books > img.wp-post-image {
  width: calc(33cqi - 0.3rem);
  object-fit: contain;
  height: 100cqh;
}

.lb_home_card a:has(> .lb_shop_books) {
  width: 100%;
}

.carousel_buttons {
  top: 3rem;
  position: absolute;
  width: calc(100% - 30px);
}
.carousel_buttons .swiper-button-prev, .carousel_buttons .swiper-button-next {
  width: 3rem;
  height: 4rem;
}
.carousel_buttons .swiper-button-prev:after, .carousel_buttons .swiper-button-next:after {
  content: "";
  width: 2rem;
  height: 2rem;
  background-size: contain;
  width: 3rem;
  height: 4rem;
  background-size: contain;
  background-repeat: no-repeat;
}
.carousel_buttons .swiper-button-prev::after {
  background-image: url("/wp-content/themes/bookmark/assets/images/lb_arrow_l.svg");
}
.carousel_buttons .swiper-button-next::after {
  background-image: url("/wp-content/themes/bookmark/assets/images/lb_arrow_r.svg");
}

@media screen and (min-width: 1000px) {
  .columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }
}

.event_image {
  width: 100%;
}
.event_image img {
  width: 100%;
  height: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: translateX(-110%);
  transition: opacity 400ms ease-in;
  z-index: 100;
  background-color: rgba(240, 237, 234, 0.8666666667);
  display: none;
}
.modal.open {
  opacity: 1;
  transform: translateX(0);
}
.modal .close {
  position: absolute;
  top: var(--header_height);
  right: 1rem;
  border: none;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
}
.modal .close::after, .modal .close::before {
  content: "";
  position: absolute;
  width: 3rem;
  height: 5px;
  background-color: var(--lb_brown);
  top: 50%;
  left: 50%;
}
.modal .close::after {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal .close::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.modal_content {
  width: 400px;
  max-width: 90vw;
  position: absolute;
  background-color: #f3f3f3;
  padding: 20px;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgba(79, 31, 31, 0.4);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.modal_content form {
  display: flex;
  flex-direction: column;
}
.modal_content form input {
  width: 100%;
  margin-bottom: 1rem;
}
.modal_content form label {
  font-size: 1rem;
}
.modal_content form #phone_1 {
  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;
}
.modal_content form input[type=submit] {
  margin-top: 0.5rem;
  width: 100%;
  background-color: var(--lb_pink);
  color: #fff;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  font-size: 1.2rem;
  font-weight: bold;
  border-radius: 5px;
  transition: background-color 200ms ease-in-out;
}
.modal_content form input[type=submit]:hover {
  background-color: var(--lb_aqua);
}

form.loading + #spinner {
  display: block;
}

/* form + #spinner {
	display: none;
	position: absolute;
	top: calc(50% - 25px);
	left: calc(50% - 25px);
	width: 50px;
	height: 50px;
	border: 10px solid $color_black;
	border-bottom: 10px solid transparent;
	border-radius: 50%;
	animation: spin 800ms ease-in-out 0ms infinite;
} */
.close_icon .close {
  position: static;
}

/* Sign in modal*/
/* .modal_inner .close_icon button svg path {
	background: transparent;
	fill: $color_black;
}
 */
.modal_inner .close {
  background: transparent;
  position: absolute;
  top: 0;
}
@media screen and (min-width: 1000px) {
  .modal_inner .close {
    top: 4rem;
  }
}
@media screen and (min-width: 1600px) {
  .modal_inner .close {
    top: 10%;
  }
}

.tribe-events-meta-group-venue {
  margin: 0;
  width: 100%;
}
.tribe-events-meta-group-venue dl, .tribe-events-meta-group-venue dd, .tribe-events-meta-group-venue dt {
  margin: 0;
}

.tribe-events-schedule {
  justify-content: center;
}

.tribe-events-l-container {
  --tec-color-accent-primary: #f9a825;
}

.lbr_newsletter_notice {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 98vw;
  width: 450px;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
  z-index: 100;
  padding: 2rem;
  display: none;
}
.lbr_newsletter_notice.display {
  display: block;
}
.lbr_newsletter_notice::before {
  content: "";
  position: absolute;
  top: calc(50% - 50vh);
  left: calc(50% - 50vw);
  width: 100vw;
  height: 100vh;
  z-index: -2;
  backdrop-filter: blur(6px) saturate(70%);
  background-color: rgba(255, 255, 255, 0.4);
}
.lbr_newsletter_notice::after {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: -1;
  border: 3px solid black;
  outline: 1px solid black;
  outline-offset: 2px;
}
.lbr_newsletter_notice p:empty, .lbr_newsletter_notice h2:empty, .lbr_newsletter_notice h3:empty {
  display: none;
}
.lbr_newsletter_notice h2 {
  margin-top: 0;
}
.lbr_newsletter_notice #mc4wp-form-1 {
  margin: 0;
}

#newsletter-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 3rem;
  height: 3rem;
}
#newsletter-close::before, #newsletter-close::after {
  width: 100%;
  height: 2px;
  background-color: black;
  content: "";
  position: absolute;
  top: calc(50% - 1px);
}
#newsletter-close::before {
  transform: rotate(45deg);
}
#newsletter-close::after {
  transform: rotate(-45deg);
}

.play {
  background-color: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  padding: 0;
  opacity: 0;
  z-index: 10;
}
.play svg path {
  transition: fill var(--transition) ease;
}

.ready .play {
  opacity: 1;
}

.block-video img {
  transition: opacity var(--transition) ease;
  z-index: 10;
}
.block-video.playing img,
.block-video.playing .play {
  opacity: 0;
  transform: translateX(-200vw);
  visibility: hidden;
}
.block-video.playing iframe {
  visibility: visible;
}
.block-video iframe {
  visibility: hidden;
}

.container iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.alt_block {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
}
.alt_block.open {
  width: 100%;
  max-width: 320px;
}

:has(> .alt_block) {
  position: relative;
  display: block;
}

.block-image,
.alt-block {
  position: relative;
  display: block;
}

.alt_trigger {
  background-color: white;
  color: black;
  text-transform: uppercase;
  font-size: 0.8rem;
  padding: 0.1rem;
  min-width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid gray;
  position: absolute;
  top: 0;
  right: 0;
}

.alt_modal {
  position: absolute;
  background-color: white;
  top: 0;
  right: 0;
  max-width: 90vw;
  padding: 2rem 1rem;
  opacity: 0;
  transform: scale(0);
  transition: opacity calc(var(--transition) / 2) ease, transform var(--move-transition) ease;
  transform-origin: 100% 0;
  visibility: hidden;
}

.open .alt_modal {
  opacity: 1;
  transform: scale(1);
  border: 1px solid gray;
  visibility: visible;
}

.open .alt_trigger {
  border-bottom: none;
  border-left: none;
}

.banner .alt_block {
  top: unset;
  bottom: var(--margin);
  right: var(--margin);
}
@media screen and (min-width: 1200px) {
  .banner .alt_block {
    top: unset;
    bottom: 8rem;
    right: 8rem;
  }
}

button.close {
  color: var(--color-black-to-white);
  background-color: var(--color-primary);
}

.play svg path {
  fill: #4f1f1f;
  transition: fill var(--transition) ease;
}
.play svg:hover path {
  fill: white;
}
.play svg:hover circle {
  fill: #4f1f1f;
}
.play svg circle {
  fill: white;
  opacity: 1;
}

/* .muted {
	.play {
		svg {
			path {
				fill: $color_white;
				transition: fill var(--transition) ease;
			}
			&:hover {
				path {
					fill: $color_secondary;
				}
				circle {
					fill: $color_white;
				}
			}
			circle {
				fill: $color_secondary;
				opacity: 1;
				transition: fill var(--transition) ease;
			}
		}
	}
} */
.block-image p.caption, .block-image + figcaption p.caption {
  position: absolute;
  bottom: 0;
  margin: 0;
  display: block;
  padding: 0.2rem 0.75rem;
  background: #4f1f1f;
  color: white;
}

figure {
  line-height: 0;
}

/*Videos*/
.video_modal {
  position: relative;
  width: 100%;
  overflow: hidden;
  position: fixed;
  overflow: visible;
  width: calc(100vw - 2 * var(--margin));
  top: 50%;
  left: var(--margin);
  z-index: -1;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity;
  max-height: calc(100dvh - 7rem);
}
@supports (aspect-ratio: 16/9) {
  .video_modal {
    aspect-ratio: 1.7777777778;
  }
}
@supports not (aspect-ratio: 16/9) {
  .video_modal {
    padding-top: 56.25%;
    height: 0;
  }
}
.video_modal::before {
  content: "";
  width: 100vw;
  height: 100dvh;
  position: absolute;
  top: 50%;
  left: calc(var(--margin) * -1);
  background-color: transparent;
  transform: translateY(-50%);
  transition: all 600ms ease-in 100ms;
}
.video_modal iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 35%;
}
.video_modal .close_video {
  position: absolute;
  top: 0;
  left: 100%;
  width: fit-content;
  padding: 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  color: white;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  text-transform: none;
}
.video_modal .close_video svg {
  height: 18px;
  width: 18px;
}
.video_modal .close_video svg path {
  stroke: white;
}

.open .video_modal {
  animation: opacity_and_z 600ms ease-in 0ms 1 normal forwards;
}
.open .video_modal::before {
  background-color: #ddb3c2;
}

.open.video_modal {
  animation: opacity_and_z 600ms ease-in 0ms 1 normal forwards;
}
.open.video_modal::before {
  background-color: #ddb3c2;
}

.close .video_modal {
  z-index: 100;
  opacity: 1;
  animation: opacity_and_z_reverse 600ms ease-in 0ms 1 normal forwards;
}
.close .video_modal::before {
  background-color: #ddb3c2;
}

button.video_toggle {
  background-color: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  padding: 0;
  z-index: 11;
  border: none;
  cursor: pointer;
}
button.video_toggle svg {
  display: block;
  width: 10vw;
  height: auto;
}
@media screen and (min-width: 700px) {
  button.video_toggle svg {
    width: 5vw;
  }
}
@media screen and (min-width: 1200px) {
  button.video_toggle svg {
    width: 3.8461538462vw;
  }
}

@keyframes opacity_and_z {
  0% {
    z-index: -1;
    opacity: 0;
    display: none;
  }
  1% {
    z-index: 10000;
    opacity: 0;
    display: block;
  }
  100% {
    z-index: 10000;
    opacity: 1;
  }
}
@keyframes opacity_and_z_reverse {
  0% {
    z-index: 10000;
    opacity: 1;
  }
  99% {
    z-index: 10000;
    opacity: 0;
  }
  100% {
    z-index: -1;
    opacity: 0;
    display: none;
  }
}
.parallax {
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
}

.ready:has(> .video_bg__video) img {
  display: none;
}

button.video_bg__play {
  position: absolute;
  bottom: 2rem;
  left: var(--margin);
  background-color: transparent;
  z-index: 20;
}
button.video_bg__play svg {
  width: 2rem;
  height: 2rem;
  opacity: 0.2;
}
button.video_bg__play svg:nth-child(2) {
  display: none;
}

.ready button.video_bg__play svg {
  opacity: 1;
}

.playing button.video_bg__play svg:first-child {
  display: none;
}
.playing button.video_bg__play svg:nth-child(2) {
  display: block;
}

@media screen and (max-width: 700px) {
  .video_modal.open {
    width: 100%;
    left: 0;
  }
  .video_modal::before {
    width: 100%;
    left: 0;
  }
  .video_modal .close_video {
    left: 90%;
    top: -3rem;
  }
}
.video_toggle svg {
  height: 2rem;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# 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: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  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;
}
/*# sourceMappingURL=style.css.map */
