/*!
Theme Name: The Yoga Collaboration
Theme URI: https://test.com/
Author: Mike Chappels Design
Author URI: https://mikechappels.co.uk/
Description: Bespoke Website Theme for The Yoga Collaboration
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: yoga-collaboration
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.

yoga-collaboration 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

--------------------------------------------------------------*/
/*--------------------------------------------------------------
# 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: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

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

p {
  margin-bottom: 1.5em;
}

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
--------------------------------------------- */
body {
  background: #fff;
}

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%;
}

/* Links
--------------------------------------------- */
a {
  color: #4169e1;
}

a:visited {
  color: #800080;
}

a:hover,
a:focus,
a:active {
  color: #191970;
}

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: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}

button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
.main-navigation {
  display: block;
  width: 100%;
}

.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;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

.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%;
}

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

.post,
.page {
  margin: 0 0 1.5em;
}

.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;
}

/* Captions
--------------------------------------------- */
.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;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

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

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

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

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

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

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

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

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

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# 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;
}

body {
  font-family: "Poppins", sans-serif;
  color: #746d68;
  background: #303030;
  margin: 0 !important;
}
body.single {
  padding-top: 0px;
}
body.home {
  padding-top: 0;
}

html {
  scroll-behavior: smooth;
}

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

iframe {
  display: block;
}

a, a:visited {
  color: #897f79;
  font-weight: 500;
}
a:hover, a:visited:hover {
  color: #746d68;
}

p {
  margin: 0 0 1.5rem;
}

.italic {
  font-style: italic;
}

.palegreen {
  background: rgba(204, 194, 187, 0.07);
}

.fixed {
  background-attachment: fixed !important;
}

.cover {
  background-size: cover !important;
}

.contain {
  background-size: contain !important;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #897f79;
}

.entry-meta {
  font-size: 0.8rem;
}

.single-hero .entry-meta {
  color: #FFFFFF;
}
.single-hero .entry-meta a:hover {
  color: #FFFFFF;
}

.cta-small {
  color: #897f79;
  display: inline-block;
  position: relative;
  padding: 8px 35px 8px 0;
  text-decoration: none;
}
.cta-small:hover:before {
  right: -10px;
}
.cta-small:before {
  position: absolute;
  content: "";
  background: url(images/orange-cta-arrow.svg) no-repeat center transparent;
  background-size: 20px;
  height: 12px;
  width: 20px;
  right: 0;
  top: 14px;
  transition: all 0.4s ease-in-out;
}

strong {
  font-weight: 500;
}

.sticky {
  position: sticky;
  top: 178px;
}

.cta {
  padding: 12px 40px;
  background: #897f79;
  color: #FFFFFF !important;
  display: inline-block;
  text-decoration: none;
  font-size: 1.25rem;
  border: 2px solid #897f79;
  position: relative;
  text-align: left;
  transition: all 0.2s ease-in-out;
  border-radius: 100px;
}
.cta.rev {
  color: #897f79 !important;
  background: #FFFFFF;
  border-color: #FFFFFF;
}
.cta.rev:hover {
  color: #FFFFFF !important;
  background: rgba(116, 109, 104, 0.5);
}
.cta:hover {
  color: #897f79 !important;
  background: #FFFFFF;
}

ul, ol {
  margin: 0 0 32px;
  padding-left: 20px;
}

h1 {
  font-family: "Playfair Display", serif;
  font-size: 3rem;
  font-weight: 300;
  margin: 0;
  line-height: 3.5rem;
}

h4 {
  text-transform: uppercase;
  margin-bottom: 0;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2rem;
}

h2 {
  font-size: 2.25rem;
  font-weight: 300;
  margin-top: 16px;
  margin-bottom: 24px;
  font-family: "Playfair Display", serif;
  line-height: 2.75rem;
}

h3 {
  font-weight: 300;
  font-size: 1.5rem;
  line-height: 2rem;
}

.small-print {
  font-size: 12px;
  opacity: 0.5;
}

.menu-terms-menu-container {
  opacity: 0.5;
}

.cover {
  background-size: cover !important;
}

.contain {
  background-size: contain !important;
}

.flex {
  display: flex;
}

.wrap {
  flex-wrap: wrap;
}

.center {
  text-align: center;
}

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

.wrapper {
  width: 100%;
  position: relative;
}
.wrapper .container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 64px 20px;
}

.tablet-only {
  display: none;
}

.wp-block-pullquote {
  border-top: 1px solid #897f79;
  border-bottom: 1px solid #897f79;
}
.wp-block-pullquote blockquote {
  text-align: left;
}
.wp-block-pullquote blockquote cite {
  font-size: 1rem;
  text-transform: uppercase;
}

@media all and (min-width: 768px) {
  .wp-block-pullquote {
    padding-left: 40px;
  }
  .tablet-only {
    display: block;
  }
  .wrapper .container {
    padding: 96px 40px;
  }
  h1 {
    font-size: 4rem;
    line-height: 5rem;
  }
  h2 {
    font-size: 3.25rem;
    line-height: 3.75rem;
  }
}
@media all and (min-width: 1024px) {
  .flip {
    flex-direction: row-reverse;
  }
}
@view-transition {
  navigation: auto;
}
::view-transition-group(*) {
  animation-duration: 0.33s;
}

::view-transition-old(root) {
  animation: 0.33s ease-in both leave;
}

::view-transition-new(root) {
  animation: 0.33s ease-in both enter;
}

@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*) {
    animation-duration: 0s;
  }
}
@media all and (min-width: 1200px) {
  .tablet-only {
    display: none;
  }
}
header#masthead {
  padding: 20px;
  position: sticky;
  width: 100%;
  top: 0;
  z-index: 97;
  background: transparent;
  transition: all 0.4s ease-in-out;
  box-shadow: 0;
}
header#masthead .site-branding {
  display: inline-block;
}
header#masthead .site-branding h1.site-title, header#masthead .site-branding p.site-title {
  display: inline-block;
  margin: 0;
  position: relative;
  z-index: 101;
}
header#masthead .site-branding h1.site-title a, header#masthead .site-branding p.site-title a {
  display: inline-block;
  width: 225px;
  background: url("images/tyc-logo-02-white.svg") no-repeat center transparent;
  background-size: contain;
  height: 78px;
  text-indent: -3000px;
  overflow: hidden;
  transition: all 0.2s ease-in-out;
}

.scrolled header#masthead .site-branding h1.site-title a, .scrolled header#masthead .site-branding p.site-title a {
  background: url("images/tyc-logo-02.svg") no-repeat center transparent;
  background-size: contain;
}

a.cta.tablet-only {
  position: absolute;
  right: 100px;
  top: 35px;
}

.open-menu header#masthead .site-branding h1.site-title a, .open-menu header#masthead .site-branding p.site-title a {
  background: #746d68;
}

.open-form header#masthead .site-branding h1.site-title a, .open-form header#masthead .site-branding p.site-title a {
  background: url("images/tyc-logo-02-white.svg") no-repeat center transparent;
  background-size: contain;
}

.single-hero {
  background-size: cover !important;
  position: relative;
}
.single-hero .container {
  padding-top: 64px;
  position: relative;
}
.single-hero .container header.entry-header h1 {
  color: #FFFFFF;
}

header.page-hero {
  position: relative;
  color: #FFFFFF;
  text-align: center;
}
header.page-hero:before {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  content: "";
  background: rgba(116, 109, 104, 0.8);
}
header.page-hero .container {
  position: relative;
  padding-top: 196px;
  padding-bottom: 64px;
}
header.page-hero .container .breadcrumb-container a {
  color: #FFFFFF;
  text-decoration: underline !important;
}

.scrolled header#masthead {
  box-shadow: 0 20px 30px rgba(137, 127, 121, 0.15);
  background: #FFFFFF;
}

@media all and (min-width: 768px) {
  header#masthead {
    padding: 20px 40px;
  }
}
@media all and (min-width: 1024px) {
  header#masthead {
    position: fixed;
  }
  .open-menu header#masthead .site-branding h1.site-title a, .open-menu header#masthead .site-branding p.site-title a {
    background: #746d68;
  }
}
nav#site-navigation {
  position: fixed;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  visibility: hidden;
  opacity: 0;
  transition: all 0.4s ease-in-out;
  z-index: 100;
  background: #897f79;
  padding-top: 150px;
}
nav#site-navigation .menu-main-menu-container ul#primary-menu {
  margin: 0;
  padding: 0 20px;
}
nav#site-navigation .menu-main-menu-container ul#primary-menu li {
  display: block;
  list-style: none;
  transition: all 0.3s ease-in-out;
  transform: translateX(-80px);
  transition-delay: 0.2s;
  opacity: 0;
}
nav#site-navigation .menu-main-menu-container ul#primary-menu li a {
  padding: 8px 0;
  text-align: left;
  font-weight: 200;
  font-size: 2rem;
  color: #fdf6f0;
}
nav#site-navigation .menu-main-menu-container ul#primary-menu li a:hover {
  color: #FFFFFF;
}

button.menu-toggle {
  background: url(images/menu-icon-white.svg) no-repeat center transparent;
  background-size: contain;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  border: 0;
  border-radius: 0;
  position: absolute;
  top: 50px;
  right: 20px;
  width: 30px;
  height: 30px;
  z-index: 102;
}

.scrolled button.menu-toggle {
  background: url(images/menu-icon.svg) no-repeat center transparent;
  background-size: contain;
}

.open-menu button.menu-toggle {
  background: url(images/menu-icon-white.svg) no-repeat center transparent;
  background-size: contain;
}
.open-menu nav#site-navigation .menu-main-menu-container ul#primary-menu li {
  transform: translateX(0);
  opacity: 1;
}

.menu-footer-menu-container ul#footer-menu {
  margin: 0 0 24px;
  padding: 0;
}
.menu-footer-menu-container ul#footer-menu li {
  list-style: none;
  padding: 0;
  margin: 0 10px 0 0;
  display: inline-block;
}
.menu-footer-menu-container ul#footer-menu li a {
  display: block;
  padding: 8px 0;
}

.menu-terms-menu-container ul#terms-menu {
  margin: 0;
  padding: 0;
}
.menu-terms-menu-container ul#terms-menu li {
  list-style: none;
  padding: 0;
  margin: 0 10px 0 0;
  display: inline-block;
}
.menu-terms-menu-container ul#terms-menu li a {
  display: block;
  padding: 0;
  font-size: 12px;
}

@media all and (min-width: 768px) {
  nav#site-navigation .menu-main-menu-container ul#primary-menu {
    padding: 0 40px;
  }
}
@media all and (min-width: 1300px) {
  button.menu-toggle {
    display: none;
  }
  .main-navigation ul ul {
    border-radius: 10px;
    background: #FFFFFF;
    box-shadow: 0 0 30px rgba(137, 127, 121, 0.4);
    margin-left: 0;
    padding-left: 0;
  }
  .main-navigation ul ul li a {
    color: #FFFFFF !important;
    font-size: 1rem;
  }
  .main-navigation ul ul li a:hover {
    color: #ccc2bb !important;
  }
  nav#site-navigation {
    visibility: visible;
    opacity: 1;
    background: transparent;
    transform: translateX(0px);
    bottom: auto;
    padding-top: 0;
    bottom: auto;
    left: 250px;
    transition: none;
    top: 20px;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu {
    text-align: right;
    width: calc(100% - 250px);
    padding: 20px 20px 0 0;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li {
    transform: translateX(0px);
    opacity: 1;
    display: inline-block;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li.menu-item-has-children > a {
    padding-right: 40px;
    position: relative;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li.menu-item-has-children > a:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    background: url(images/arrow-down.svg) no-repeat center transparent;
    background-size: 10px;
    right: 15px;
    top: 18px;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li.highlight a {
    padding: 8px 20px;
    background: #FFFFFF;
    color: #897f79;
    border-radius: 100px;
    border: 2px solid #FFFFFF;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li.highlight a:hover {
    background: transparent;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li a {
    padding: 8px 10px;
    font-size: 1rem;
    color: #FFFFFF;
    font-weight: 300;
  }
  nav#site-navigation .menu-main-menu-container ul#primary-menu li a:hover {
    color: #fdf6f0;
  }
  .scrolled nav#site-navigation .menu-main-menu-container ul#primary-menu li a {
    color: #897f79;
  }
  .scrolled nav#site-navigation .menu-main-menu-container ul#primary-menu li.highlight a {
    background: #897f79;
    color: #FFFFFF;
  }
  nav#mobile-navigation {
    display: none;
  }
}
@media all and (max-width: 1299px) {
  nav#mobile-navigation {
    position: absolute;
    right: 30px;
    top: 160px;
    position: absolute;
    z-index: 1;
    text-align: right;
  }
  nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li {
    list-style: none;
    opacity: 0;
    transform: translateX(-30px);
    transition: all 0.4s ease-in-out;
  }
  nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li a {
    color: #FFFFFF;
    font-size: 1.5rem;
    text-decoration: none;
    font-weight: 100;
    padding: 8px 0;
    display: block;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li {
    opacity: 1;
    transform: translateX(0);
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(1) {
    transition-delay: 0.4s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(2) {
    transition-delay: 0.5s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(3) {
    transition-delay: 0.6s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(4) {
    transition-delay: 0.7s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(5) {
    transition-delay: 0.8s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(6) {
    transition-delay: 0.9s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(7) {
    transition-delay: 0.9s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(8) {
    transition-delay: 0.9s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(9) {
    transition-delay: 0.9s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(10) {
    transition-delay: 0.9s;
  }
  .open-menu nav#mobile-navigation .menu-main-menu-container ul#mobile-menu li:nth-child(11) {
    transition-delay: 0.9s;
  }
  .close-page {
    position: fixed;
    top: 30px;
    right: 30px;
    z-index: 1;
    width: 30px;
    height: 30px;
    background: url(images/close-white.svg) no-repeat center transparent;
    background-size: cover;
  }
  #page {
    background: #FFFFFF;
    transition: all 0.6s ease-in-out;
    transform-origin: top left;
    position: relative;
    z-index: 2;
  }
  .open-menu #page {
    overflow: hidden;
    height: 100svh;
    transform: scale(0.9) translateX(-90%);
    box-shadow: 0 0 50px #000000;
  }
  nav#site-navigation {
    overflow-y: scroll;
  }
  nav#site-navigation ul li a {
    padding-right: 90px;
  }
  nav#site-navigation ul li a .more {
    position: absolute;
    top: 10px;
    right: 0;
    width: 30px;
    height: 30px;
    cursor: pointer;
    background: url(images/arrow-down.svg) no-repeat center transparent;
    background-size: 15px;
  }
  nav#site-navigation ul li ul.sub-menu {
    position: relative;
    left: 0;
    float: none;
    display: none;
    margin-left: 0;
    box-shadow: none;
  }
  nav#site-navigation ul li ul.sub-menu li a {
    font-size: 1.5rem !important;
    display: block;
    width: 100%;
  }
}
body.single article {
  width: 100%;
}
body.single .sidebar {
  width: 100%;
}
body.single .badge {
  color: #FFFFFF;
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  margin-bottom: 16px;
  position: relative;
}
body.single .stats ul {
  padding: 0;
}
body.single .stats ul li {
  width: 50%;
  list-style: none;
  text-align: center;
  padding: 16px 0;
  background: #FFFFFF;
  border: 3px solid #746d68;
  border-radius: 10px;
}
body.single .stats ul li span.prefix {
  font-size: 2rem;
}
body.single .stats ul li span.number {
  font-size: 2rem;
}
body.single .stats ul li span.suffix {
  font-size: 2rem;
}
body.single .stats ul li span.stat-text {
  display: block;
}

.coffee .columns .column img {
  max-width: 400px;
  margin: 100px auto 0 auto;
  display: block;
  width: 100%;
}

main#primary {
  margin-top: -125px;
}

#page {
  background: #FFFFFF;
}

article h2 {
  font-size: 1.5rem;
}

@media all and (min-width: 1024px) {
  main#primary {
    margin-top: 0;
  }
  body.single article {
    width: 65%;
  }
  body.single article.category-retreat {
    width: 100%;
  }
  body.single .sidebar {
    width: 30%;
    margin-left: 5%;
    padding: 0;
    border-radius: 10px;
    overflow: hidden;
  }
  body.single .stats ul li {
    width: 25%;
    padding: 16px 8px;
  }
  body.single .stats ul li span.stat-text {
    display: block;
  }
  .coffee .columns .column img {
    margin-top: 0px;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .last-text span {
    opacity: 0;
    display: inline-block;
    animation: 0.6s ease-out 0s 1 dropdown;
    animation-fill-mode: forwards;
  }
  .last-text span:nth-child(2) {
    animation-delay: 0.2s;
  }
  .last-text span:nth-child(3) {
    animation-delay: 0.4s;
  }
  .last-text span:nth-child(4) {
    animation-delay: 0.6s;
  }
  .last-text span:nth-child(5) {
    animation-delay: 0.8s;
  }
  .last-text span:nth-child(6) {
    animation-delay: 1s;
  }
  .last-text span:nth-child(7) {
    animation-delay: 1.2s;
  }
  .last-text span:nth-child(8) {
    animation-delay: 1.4s;
  }
  .last-text span:nth-child(9) {
    animation-delay: 1.6s;
  }
  .last-text span:nth-child(10) {
    animation-delay: 1.8s;
  }
  @keyframes dropdown {
    0% {
      opacity: 0;
      transform: translateY(-30px);
      filter: blur(8px);
    }
    100% {
      opacity: 1;
      transform: translateY(0px);
      filter: blur(0px);
    }
  }
  .anim {
    opacity: 0;
    animation: fade-in linear forwards;
    animation-timeline: view();
    animation-range-start: 100px;
    animation-range-end: 60vh;
    animation-timing-function: ease-in-out;
    position: relative;
    transform: rotate(-3deg);
  }
  @keyframes fade-in {
    0% {
      scale: 1;
      opacity: 0;
      transform: translateY(30px);
      filter: blur(10px), grayscale(0);
    }
    100% {
      scale: 1;
      opacity: 1;
      transform: translateY(0px);
      filter: blur(0px), grayscale(1);
    }
  }
  .anim-two {
    animation: fade-in-two linear forwards;
    animation-timeline: view();
    animation-range-start: 100px;
    animation-range-end: 70vh;
    animation-timing-function: ease-in-out;
    transform: translateY(200px) rotate(20deg);
  }
  .anim-two.add-shadow img {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
  }
  @keyframes fade-in-two {
    0% {
      scale: 0.8;
      opacity: 1;
      transform: translateY(200px) rotate(20deg);
    }
    100% {
      scale: 1;
      opacity: 1;
      transform: translateY(0px) rotate(10deg);
    }
  }
  .parallax {
    animation: parallax linear forwards;
    animation-timeline: view();
    animation-range-start: 0px;
    animation-range-end: 100vh;
    animation-timing-function: ease-in-out;
    background-position-x: center;
    background-position-y: 0px;
  }
  @keyframes parallax {
    0% {
      background-position-y: 0px;
    }
    100% {
      background-position-y: -200px;
    }
  }
}
#colophon {
  background: #897f79;
  color: #FFFFFF;
  text-align: center;
}
#colophon a, #colophon a:visited {
  text-decoration: underline;
  text-decoration-color: rgba(255, 255, 255, 0.4);
  color: #FFFFFF;
}
#colophon a:hover {
  color: #fdf6f0;
}
#colophon .foot-logo {
  width: 100px;
  height: 87px;
  text-indent: -2000px;
  overflow: hidden;
  background: url(images/carly-clark-marketing-logo-all-white.svg) no-repeat center transparent;
  background-size: contain;
  display: block;
  margin-bottom: 16px;
}
#colophon .site-info {
  border-top: 1px solid #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
}
#colophon .site-info .foot-col {
  width: 100%;
}
#colophon .site-info .foot-col img {
  max-width: 200px;
  display: block;
  margin: 0 auto 32px;
}
#colophon .site-info .foot-col h3 {
  font-size: 1rem;
  opacity: 0.7;
  margin: 24px 0 8px;
}
#colophon .site-info .foot-col ul {
  margin: 0;
  padding: 0;
}
#colophon .site-info .foot-col ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}
#colophon .site-info .foot-col ul li a {
  text-decoration: none;
}
#colophon .footer-small-print {
  font-size: 0.8rem;
}
#colophon .footer-small-print img {
  display: none;
}

.dots-overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url(images/dots.png) repeat center rgba(0, 0, 0, 0.6);
  background-size: 20px;
  opacity: 0.2;
}

.cta-block.wrapper {
  background: #897f79;
  color: #fdf6f0;
  position: relative;
}
.cta-block.wrapper .container {
  position: relative;
  padding-top: 24px;
  padding-bottom: 24px;
}
.cta-block.wrapper .container .cta-text {
  color: #FFFFFF;
  text-align: center;
  padding: 0;
}
.cta-block.wrapper .container .cta-text h2 {
  margin-bottom: 26px;
  font-weight: 300;
  font-size: 1.5rem;
  line-height: 2rem;
  color: #fdf6f0;
}
.cta-block.wrapper .container .cta-text p {
  font-size: 1.25rem;
}
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form {
  position: relative;
}
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form p label {
  color: #fdf6f0;
  transition: all 0.2s ease-in-out;
  opacity: 1;
  z-index: 1;
}
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form p span.wpcf7-form-control-wrap input {
  padding: 17px 20px;
  background: #fdf6f0;
  border-radius: 100px;
  margin-bottom: 0;
}
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form p input[type=submit] {
  position: absolute;
  top: 8px;
  right: 10px;
  border-radius: 100px;
  font-style: italic;
  color: white;
  background: #897f79;
  border: 0;
}
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form p .wpcf7-spinner {
  position: absolute;
  top: 15px;
  right: 18px;
}
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form p input:focus + label,
.cta-block.wrapper .container .cta-text .wpcf7 form .sign-up-form p input:not(:placeholder-shown) + label {
  top: -8px;
  left: 8px;
  opacity: 0;
}

@media all and (min-width: 768px) {
  .cta-block.wrapper .container .cta-text {
    text-align: left;
    max-width: 600px;
  }
  .cta-block.wrapper .container .cta-text h2 {
    font-size: 2rem;
    line-height: 2.5rem;
  }
  #colophon {
    text-align: left;
  }
  #colophon .site-info .foot-col img {
    margin: 0 auto 32px 0;
  }
  #colophon .site-info .foot-col h3 {
    margin-top: 0;
  }
  #colophon .site-info .foot-col.foot-col-two, #colophon .site-info .foot-col.foot-col-three, #colophon .site-info .foot-col.foot-col-four {
    width: 33.3%;
    padding-right: 20px;
  }
}
@media all and (min-width: 1024px) {
  .cta-block.wrapper .container .cta-text h2 {
    font-size: 2.5rem;
    line-height: 3rem;
  }
  #colophon .site-info .foot-col {
    padding-right: 20px;
  }
  #colophon .site-info .foot-col.foot-col-two, #colophon .site-info .foot-col.foot-col-three, #colophon .site-info .foot-col.foot-col-four, #colophon .site-info .foot-col.foot-col-five {
    width: 17.5%;
  }
  #colophon .site-info .foot-col.foot-col-one {
    width: 30%;
  }
}
.home .hero {
  padding-top: 150px;
  position: relative;
  height: 100svh;
  width: 100%;
  margin: -150px 0 0;
  background-size: cover !important;
}
.home .hero .hero-image {
  background-size: cover !important;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.home .hero .hero-image:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  background: rgba(0, 0, 0, 0.3);
}
.home .hero .hero-wrapper.wrapper {
  position: relative;
  z-index: 4;
}
.home .hero .hero-wrapper.wrapper .container h1 {
  font-weight: 300;
  color: #FFFFFF;
  margin: 0 0 16px;
  max-width: 900px;
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.home .hero .hero-wrapper.wrapper .container p {
  color: #FFFFFF;
  font-size: 1rem;
  max-width: 700px;
}
.home .hero .hero-wrapper.wrapper .container a.cta {
  color: #FFFFFF;
}
.home .hero .hero-wrapper.wrapper .container a {
  color: #FFFFFF;
}
.home .hero .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  background: rgba(137, 127, 121, 0.5);
}
.home .hero .heroes {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
}
.home .hero .heroes .hero {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-size: cover !important;
}
.home main#primary {
  margin-top: 0;
}

.last-text {
  display: block;
}

.curve {
  position: absolute;
  bottom: 0;
  width: 100%;
}

@media all and (min-width: 768px) {
  .curve {
    max-width: 400px;
    right: 0;
  }
  .home .hero {
    max-height: 800px;
    padding-top: 200px;
  }
  .home .hero .hero-wrapper.wrapper .container h1 {
    font-size: 3.25rem;
    line-height: 4.25rem;
  }
}
@media all and (min-width: 1024px) {
  .home .hero {
    min-height: 800px;
  }
  .home .hero .hero-wrapper .container {
    padding-right: 30%;
    padding-top: 162px;
  }
}
@media all and (min-width: 1400px) {
  .home .hero {
    padding-top: 250px;
  }
}
.socials a {
  display: inline-block;
  width: 40px;
  height: 40px;
  text-indent: -3000px;
  overflow: hidden;
  margin-right: 10px;
  margin-top: 24px;
  background-size: 20px !important;
  border-radius: 50px;
}
.socials a.insta {
  background: url(images/insta-logo-white.svg) no-repeat center rgba(255, 255, 255, 0.15);
}
.socials a.x {
  background: url(images/x-logo-white.svg) no-repeat center rgba(255, 255, 255, 0.15);
}
.socials a.facebook {
  background: url(images/facebook-logo-white.svg) no-repeat center rgba(255, 255, 255, 0.15);
}
.socials a.linkedin {
  background: url(images/linkedin-logo-white.svg) no-repeat center rgba(255, 255, 255, 0.15);
}

.slide-form {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #FFFFFF;
  padding: 50px 20px 20px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease-in-out;
  transform: scale(0.9);
  overflow-y: scroll;
  z-index: 100;
}
.slide-form .form-container {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}
.slide-form .form-container .close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
  background: url(images/close-orange.svg) no-repeat center transparent;
  background-size: 20px;
  cursor: pointer;
}

.form-button {
  position: fixed;
  right: 20px;
  bottom: -100px;
  background: #ccc2bb;
  transition: all 0.4s ease-in-out;
  z-index: 98;
  border: 1px solid #FFFFFF;
  cursor: pointer;
  box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.15);
  color: #FFFFFF;
  padding: 8px 20px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.form-button .dot-container {
  width: 70px;
  margin: 40px auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.form-button .dot-container .dot {
  width: 20px;
  height: 20px;
  border-radius: 20px;
  animation-name: fade;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  background: #746d68;
}
.form-button .dot-container .dot.dot-two {
  animation-delay: 0.2s;
}
.form-button .dot-container .dot.dot-three {
  animation-delay: 0.4s;
}

@keyframes fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.scrolled .form-button {
  bottom: -1px;
}

input[type=text], input[type=email], input[type=tel], textarea {
  display: block;
  width: 100%;
  padding: 10px;
  border-radius: 0;
  margin: 8px 0 24px;
  border: 0px;
  background: rgba(204, 194, 187, 0.07);
  border-bottom: 1px solid #897f79;
}

input[type=submit] {
  border-radius: 0;
  border: 2px solid #897f79;
  background: #FFFFFF;
  border-radius: 100px;
  color: #897f79;
  padding: 12px 20px;
  font-family: "Poppins", sans-serif;
}

.two-fields {
  justify-content: space-between;
}
.two-fields .field {
  width: 100%;
}

.wpcf7-acceptance .wpcf7-list-item, .wpcf7-checkbox .wpcf7-list-item {
  margin: 0;
  display: inline-block;
  width: 100%;
  vertical-align: top;
}
.wpcf7-acceptance .wpcf7-list-item label, .wpcf7-checkbox .wpcf7-list-item label {
  display: block;
  position: relative;
  padding-left: 0;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label, .wpcf7-checkbox .wpcf7-list-item label .wpcf7-list-item-label {
  position: relative;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  padding: 4px 25px 10px 60px;
  margin-bottom: 24px;
  font-size: 14px;
}
.wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label:after, .wpcf7-checkbox .wpcf7-list-item label .wpcf7-list-item-label:after {
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  background: #FFFFFF;
  left: 3px;
  top: 3px;
  border-radius: 100%;
  transition: all 0.2s ease-in-out;
  box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.07);
}
.wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label:before, .wpcf7-checkbox .wpcf7-list-item label .wpcf7-list-item-label:before {
  width: 48px;
  height: 28px;
  background: rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  position: absolute;
  content: "";
  top: 0px;
  left: 0px;
  box-shadow: inset 3px 3px 2px rgba(0, 0, 0, 0.07);
  transition: all 0.2s ease-in-out;
}
.wpcf7-acceptance .wpcf7-list-item label input[type=checkbox], .wpcf7-checkbox .wpcf7-list-item label input[type=checkbox] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.wpcf7-acceptance .wpcf7-list-item label input[type=checkbox]:checked + span.wpcf7-list-item-label:after, .wpcf7-checkbox .wpcf7-list-item label input[type=checkbox]:checked + span.wpcf7-list-item-label:after {
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  background: #FFFFFF;
  left: 22px;
}
.wpcf7-acceptance .wpcf7-list-item label input[type=checkbox]:checked + span.wpcf7-list-item-label:before, .wpcf7-checkbox .wpcf7-list-item label input[type=checkbox]:checked + span.wpcf7-list-item-label:before {
  background: #897f79;
}

.open-form .slide-form {
  transform: scale(1);
  visibility: visible;
  opacity: 1;
}
.open-form button.menu-toggle {
  z-index: 99;
}

.wpcf7 form ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  text-align: left;
  color: #897f79;
  font-size: 1rem;
}
.wpcf7 form ::-moz-placeholder { /* Firefox 19+ */
  text-align: left;
  color: #897f79;
  font-size: 1rem;
}
.wpcf7 form :-ms-input-placeholder { /* IE 10+ */
  text-align: left;
  color: #897f79;
  font-size: 1rem;
}
.wpcf7 form :-moz-placeholder { /* Firefox 18- */
  text-align: left;
  color: #897f79;
  font-size: 1rem;
}

.page-template-contact-page article {
  position: relative;
}
.page-template-contact-page article:before {
  position: absolute;
  content: "";
  width: 25%;
  min-width: 250px;
  height: 300px;
  background: url(images/top-right-curve.png) no-repeat right top transparent;
  background-size: contain;
  top: 0;
  right: 0;
  z-index: 0;
}
.page-template-contact-page article:after {
  position: absolute;
  content: "";
  width: 20%;
  height: 400px;
  background: url(images/bottom-left-curve.png) no-repeat left bottom transparent;
  background-size: contain;
  bottom: 0;
  left: 0;
  z-index: 0;
}
.page-template-contact-page article .entry-content {
  position: relative;
  z-index: 2;
}
.page-template-contact-page article .entry-content h2 {
  font-size: 2.5rem;
  margin-top: 0;
}
.page-template-contact-page article .side {
  position: relative;
  z-index: 2;
}
.page-template-contact-page article .side h3 {
  font-family: "Playfair Display", serif;
  margin-bottom: 8px;
}

.retreat-form {
  width: 100%;
  max-width: 1000px;
  margin: 64px auto;
}
.retreat-form .two-col-form {
  width: 100%;
}
.retreat-form .two-col-form .form-col {
  width: 100%;
}

@media all and (min-width: 768px) {
  .slide-form {
    padding: 50px 40px 40px;
  }
  .slide-form .form-container .close {
    right: 40px;
    top: 40px;
  }
  .two-fields .field {
    width: 48%;
  }
  .retreat-form .two-col-form {
    justify-content: space-between;
  }
  .retreat-form .two-col-form .form-col {
    width: 48%;
  }
  .retreat-form .two-col-form .form-col label {
    width: 100%;
    display: inline-block;
  }
}
@media all and (min-width: 1024px) {
  .page-template-contact-page article {
    max-width: 100% !important;
  }
  .page-template-contact-page article .flex {
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
  }
  .page-template-contact-page article .entry-content {
    width: 60%;
  }
  .page-template-contact-page article .side {
    width: 35%;
    padding-top: 106px;
  }
}
ul.slick-dots {
  margin: 0 0 56px;
  padding: 0;
  text-align: center;
}
ul.slick-dots li {
  list-style: none;
  display: inline-block;
}
ul.slick-dots li button {
  width: 16px;
  height: 16px;
  border-radius: 16px;
  border: 2px solid #efd492;
  background: transparent;
  margin: 0 5px;
  padding: 0;
  overflow: hidden;
  text-indent: -3000px;
  transition: all 0.2s ease-in-out;
}
ul.slick-dots li.slick-active button {
  background: #FFFFFF;
  width: 35px;
}

.slider-block.wrapper .container {
  padding: 96px 0 32px;
  max-width: 100%;
  text-align: center;
}
.slider-block.wrapper .container h2 {
  margin-bottom: 64px;
}
.slider-block.wrapper .container .intro-text {
  padding: 16px 20px;
  margin: 32px auto;
  text-align: center;
}
.slider-block.wrapper .container .slides .slick-prev, .slider-block.wrapper .container .slides .slick-next {
  text-indent: -3000px;
  overflow: hidden;
  width: 100px;
  height: 100px;
  background: #FFFFFF;
  border-radius: 1000px;
  position: absolute;
  top: calc(50% - 50px);
  z-index: 10;
  border: 0;
  box-shadow: 0 10px 30px rgba(116, 109, 104, 0.3);
  display: none !important;
}
.slider-block.wrapper .container .slides .slick-prev {
  left: 20px;
  background: url(images/left-arrow.svg) no-repeat center #FFFFFF;
  background-size: 15px;
}
.slider-block.wrapper .container .slides .slick-next {
  right: 20px;
  background: url(images/right-arrow.svg) no-repeat center #FFFFFF;
  background-size: 15px;
}
@media all and (min-width: 768px) {
  .slider-block.wrapper .container .slides .slick-prev, .slider-block.wrapper .container .slides .slick-next {
    display: block !important;
  }
  .slider-block.wrapper .container .slides .slide {
    min-height: 600px !important;
  }
  .slider-block.wrapper .container .intro-text {
    padding: 0 40px;
    max-width: 1000px;
    font-size: 1.25rem;
    font-weight: 600;
  }
}
@media all and (min-width: 1024px) {
  .slider-block.wrapper .container .slides .slide {
    min-height: 700px !important;
  }
}
@media all and (min-width: 1200px) {
  .slider-block.wrapper .container .slides .slide {
    min-height: 750px !important;
  }
}
.testimonials-block.wrapper {
  text-align: center;
  position: relative;
  margin: 0;
}
.testimonials-block.wrapper .container {
  padding: 64px 0;
  max-width: 100%;
}
.testimonials-block.wrapper .container .stars {
  max-width: 240px;
  margin: 64px auto 32px;
}
.testimonials-block.wrapper .container .testimonial-slider {
  position: relative;
}
.testimonials-block.wrapper .container .testimonial-text h2 {
  padding: 0 40px;
  margin: 0 0 64px;
}
.testimonials-block.wrapper .container .testimonial-text .slick-active .testimonial-body p {
  opacity: 1;
  transform: translateX(0);
}
.testimonials-block.wrapper .container .testimonial-text .testimonial-body p {
  width: calc(100% - 80px);
  margin: 24px auto;
  max-width: 800px;
  transform: translateX(100px);
  opacity: 0;
  transition: all 0.7s ease-in-out;
}
.testimonials-block.wrapper .container .testimonial-text .attribution {
  color: #FFFFFF;
}
.testimonials-block.wrapper .container .testimonial-text .attribution h4 {
  margin: 0 0 8px;
}
.testimonials-block.wrapper .container .testimonial-text .attribution h5 {
  margin: 0 0 32px;
  opacity: 0.6;
}

@media all and (min-width: 1024px) {
  .testimonials-block.wrapper .container .testimonial-slider {
    position: relative;
  }
  .testimonials-block.wrapper .container .testimonial-slider:before {
    width: 100px;
  }
  .testimonials-block.wrapper .container .testimonial-slider:after {
    width: 100px;
  }
}
.column h4 {
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 0;
  color: #ccc2bb;
}
.col-1 h2 {
  margin-top: 0;
}

.white {
  background: #FFFFFF;
}

.green {
  color: #746d68;
  background: #897f79;
}

@media all and (min-width: 1024px) {
  .cols-2 {
    justify-content: space-between;
  }
  .cols-2 .column {
    width: 45%;
  }
  .cols-3 {
    justify-content: space-between;
  }
  .cols-3 .column {
    width: 31%;
  }
  .columns.flip .column img.photo {
    transform: rotate(-5deg);
  }
  .columns .column img.photo {
    transform: rotate(5deg);
    display: block;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    position: relative;
  }
  .columns .column img.photo:before {
    position: absolute;
    content: "";
    z-index: -1;
    left: 10px;
    top: 20px;
    bottom: -20px;
    right: -10px;
    border-radius: 10px;
    background: url(images/dots-green.png) repeat center transparent;
  }
}
.services-block.wrapper {
  margin: 60px 0;
}
.services-block.wrapper .container p {
  max-width: 800px;
}
.services-block.wrapper .container .service-container {
  margin-top: 48px;
}
.services-block.wrapper .container .service-container .service {
  width: 100%;
  margin-bottom: 32px;
}
.services-block.wrapper .container .service-container .service a {
  text-decoration: none;
}
.services-block.wrapper .container .service-container .service a .thumb {
  width: 100%;
  min-height: 200px;
  border-radius: 10px;
  background-size: cover !important;
}
.services-block.wrapper .container .service-container .service a .service-icon {
  max-width: 80px;
  margin: 0;
}
.services-block.wrapper .container .service-container .service a .service-name h3 {
  margin-top: 16px;
}

.page-template-service-template .services-block.wrapper {
  margin: 0;
}
.page-template-service-template .services-block.wrapper .container {
  padding-top: 0;
}
.page-template-service-template .services-block.wrapper .container .service-container {
  margin-top: 0;
}

@media all and (min-width: 768px) {
  .services-block.wrapper .container .service-container {
    justify-content: start;
  }
  .services-block.wrapper .container .service-container .service {
    width: 45%;
    margin-right: 5%;
  }
}
@media all and (min-width: 1024px) {
  .services-block.wrapper .container .service-container .service {
    width: 23%;
    margin-right: 2%;
  }
}
.sib-form {
  background-color: transparent !important;
  padding: 0 !important;
}

#sib-container {
  background: transparent !important;
}

#sib-container {
  border-width: 0 !important;
}

.sib-form .entry__field {
  border: 0;
  background: #f4f4f4 !important;
}

@media all and (max-width: 1023px) {
  #sib-container {
    max-width: 100% !important;
    padding: 0px !important;
  }
  .sib-form-block {
    padding: 0px !important;
  }
}
body.archive header.page-header {
  width: 100%;
}
body.archive header.page-header h1 {
  color: #897f79;
}
body.archive article header h2 {
  font-weight: 300;
  line-height: 2.5rem;
  font-size: 2rem;
}
body.archive article header h2 a {
  text-decoration: none;
}

@media all and (min-width: 1024px) {
  body.archive header.page-header {
    width: 33%;
    padding-right: 40px;
  }
  body.archive .teaser-container {
    width: 67%;
  }
  body.archive article {
    width: 50%;
    padding-right: 30px;
  }
}
.breadcrumb-container {
  font-size: 0.8rem;
}
.breadcrumb-container p#breadcrumbs {
  margin: 0;
}
.breadcrumb-container p#breadcrumbs span span a {
  font-weight: 700;
  text-decoration: none;
}
.single .breadcrumb-container p#breadcrumbs {
  color: #FFFFFF;
}
.single .breadcrumb-container p#breadcrumbs span span a:hover {
  color: #FFFFFF;
}

@media all and (min-width: 1024px) {
  .breadcrumb-container {
    padding: 16px 0;
  }
}
.single-post .single-hero {
  padding-top: 240px;
  background-position: center;
}
.single-post .single-hero .container header h1 {
  margin: 16px 0 16px;
}
.single-post .single-hero a {
  color: #FFFFFF;
}
.single-post .single-hero .dots-overlay {
  background: #897f79;
  opacity: 0.4;
}
.single-post .entry-content h2 {
  font-size: 2rem;
  line-height: 2.5rem;
  font-family: "Playfair Display", serif;
  margin: 24px 0 16px;
}
.single-post .entry-content h3 {
  font-size: 1.5rem;
  line-height: 2rem;
  font-family: "Playfair Display", serif;
  margin: 24px 0 16px;
}
.single-post .entry-content h4 {
  font-size: 1rem;
  line-height: 1.5rem;
  font-family: "Playfair Display", serif;
  margin: 24px 0 16px;
}
.single-post .entry-content ul {
  padding: 0;
}
.single-post .entry-content ul li {
  list-style: none;
  position: relative;
  padding-left: 25px;
}
.single-post .entry-content ul li:before {
  content: "";
  position: absolute;
  top: 7px;
  left: 5px;
  width: 10px;
  height: 10px;
  background: url(images/star-bullet.svg) no-repeat center transparent;
  background-size: 10px;
}

.blog header.page-hero {
  margin-top: -125px;
}
.blog main#primary {
  margin-top: 0;
}
.blog article {
  margin-bottom: 24px;
  margin-top: 24px;
}
.blog article a {
  display: block;
}
.blog article a .blog-image {
  width: 100%;
  min-height: 300px;
  border-radius: 10px;
}
.blog article .blog-text a {
  display: inline-block;
  text-decoration-thickness: 1px;
  text-underline-offset: 8px;
}
.blog article .blog-text .entry-meta {
  margin-top: 24px;
}
.blog article .blog-text h2 {
  line-height: 2rem;
}
@media all and (min-width: 768px) and (max-width: 1023px) {
  .blog article {
    width: 48%;
    margin-right: 4%;
  }
  .blog article:nth-child(odd) {
    margin-right: 0;
  }
  .blog article:first-child {
    width: 100%;
    margin-right: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .blog article:first-child a {
    width: 100%;
  }
  .blog article:first-child a .blog-image {
    min-height: 400px;
  }
  .blog article:first-child .blog-text {
    display: 100%;
    margin-left: 0%;
  }
  .blog article:first-child .blog-text a {
    width: 100%;
  }
  .blog article a {
    display: block;
  }
}
@media all and (min-width: 1024px) {
  .blog header.page-hero {
    margin-top: 0;
  }
  .blog article {
    width: 31.3%;
    margin-right: 3%;
  }
  .blog article:nth-child(4), .blog article:nth-child(7), .blog article:nth-child(10) {
    margin-right: 0;
  }
  .blog article:first-child {
    width: 100%;
    margin-right: 0;
    display: flex;
    align-items: center;
    padding-bottom: 64px;
    margin-bottom: 48px;
    border-bottom: 1px solid #897f79;
  }
  .blog article:first-child a {
    width: 50%;
  }
  .blog article:first-child a .blog-image {
    min-height: 350px;
  }
  .blog article:first-child .blog-text {
    width: 45%;
    margin-left: 5%;
  }
  .blog article:first-child .blog-text a {
    width: auto;
  }
}
.case-studies-block.wrapper {
  background: rgba(204, 194, 187, 0.05);
  padding: 64px 0;
}
.case-studies-block.wrapper .container .case-study-container {
  margin: 64px 0;
  justify-content: space-between;
}
.case-studies-block.wrapper .container .case-study-container .case-study {
  width: calc(50% - 5px);
  margin: 0 0 10px;
}
.case-studies-block.wrapper .container .case-study-container .case-study a {
  display: block;
}
.case-studies-block.wrapper .container .case-study-container .case-study a:hover .thumb .more-info {
  opacity: 1;
  transform: translateY(-20px);
}
.case-studies-block.wrapper .container .case-study-container .case-study a:hover .thumb:before {
  opacity: 1;
}
.case-studies-block.wrapper .container .case-study-container .case-study a .thumb {
  width: 100%;
  min-height: 150px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #FFFFFF;
  position: relative;
}
.case-studies-block.wrapper .container .case-study-container .case-study a .thumb:before {
  position: absolute;
  content: "";
  background-color: rgba(204, 194, 187, 0.05);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: all 0.4s ease-in-out;
  backdrop-filter: blur(6px);
}
.case-studies-block.wrapper .container .case-study-container .case-study a .thumb .more-info {
  position: absolute;
  background: #ccc2bb;
  border: 1px solid #FFFFFF;
  padding: 8px 20px;
  font-size: 14px;
  text-transform: uppercase;
  text-align: center;
  left: 0;
  right: 0;
  margin-inline: auto;
  width: fit-content;
  top: 50%;
  color: #FFFFFF;
  opacity: 0;
  transition: all 0.4s ease-in-out;
}
.case-studies-block.wrapper .container .case-study-container .case-study a .case-name {
  display: none;
}
.case-studies-block.wrapper .container .case-study-container .case-study a .case-name h3 {
  text-decoration: none;
}

.cs-avatar {
  width: 80px;
  height: 80px;
  background-size: cover;
  border-radius: 100px;
  margin: 0 10px 0 0;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #FFFFFF;
}

.single-case-studies .breadcrumb-container #breadcrumbs a {
  color: #FFFFFF;
  font-weight: 700;
  text-decoration: none;
}

.post-type-archive-case-studies #page {
  background: #f6fafa;
}
.post-type-archive-case-studies .teaser-container {
  justify-content: space-between;
}
.post-type-archive-case-studies .teaser-container article {
  background: #FFFFFF;
  margin-bottom: 20px;
  position: relative;
}
.post-type-archive-case-studies .teaser-container article:hover .teaser-text {
  opacity: 1;
}
.post-type-archive-case-studies .teaser-container article:hover figure {
  opacity: 0.3;
  filter: blur(10px);
}
.post-type-archive-case-studies .teaser-container article figure {
  max-width: 200px;
  margin: 0 auto;
  transition: all 0.5s ease-in-out;
}
.post-type-archive-case-studies .teaser-container article .teaser-text {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(204, 194, 187, 0.06);
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
  padding: 20px;
  text-align: center;
}
@media all and (min-width: 768px) {
  .case-studies-block.wrapper {
    text-align: center;
  }
  .post-type-archive-case-studies .teaser-container article {
    width: 48% !important;
  }
}
@media all and (min-width: 1024px) {
  .post-type-archive-case-studies .teaser-container article {
    padding-right: 0 !important;
  }
  .case-studies-block.wrapper .container .case-study-container .case-study {
    width: calc(25% - 5px);
  }
}
.posts-block.wrapper {
  margin-bottom: 96px;
}
.posts-block.wrapper .container .posts-container {
  justify-content: space-between;
}
.posts-block.wrapper .container .posts-container .post-teaser {
  width: 100%;
  margin-bottom: 48px;
}
.posts-block.wrapper .container .posts-container .post-teaser a {
  text-decoration: none;
}
.posts-block.wrapper .container .posts-container .post-teaser a .thumb {
  min-height: 300px;
  background-size: cover;
}
@media all and (min-width: 768px) {
  .posts-block.wrapper .container .posts-container .post-teaser {
    width: 49%;
  }
}
nav.navigation.pagination {
  margin: 32px auto;
}
nav.navigation.pagination .nav-links {
  text-align: center;
}
nav.navigation.pagination .nav-links .page-numbers {
  border: 1px solid #897f79;
  padding: 8px 12px;
  font-size: 12px;
  text-decoration: none;
  background: #FFFFFF;
}
nav.navigation.pagination .nav-links .page-numbers.current {
  background: #897f79;
  color: #FFFFFF;
}
nav.navigation.pagination .nav-links .page-numbers.next {
  border: 0;
  background: transparent;
}
nav.navigation.pagination .nav-links .page-numbers.prev {
  border: 0;
  background: transparent;
}

@media all and (min-width: 768px) {
  nav.navigation.pagination {
    display: block;
    margin: 64px auto;
  }
}
.team-container .team-member {
  border-bottom: 1px solid #897f79;
}
.team-container .team-member .team-member-image {
  width: 100%;
  min-height: 500px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 20px;
}
.team-container .team-member .team-member-info {
  width: 100%;
  text-align: center;
}
.team-container .team-member .team-member-info h2 {
  font-size: 3rem;
}
@media all and (min-width: 768px) {
  .team-container {
    width: 100%;
    max-width: 1260px;
    margin: 0 auto;
  }
  .team-container .team-member .team-member-image {
    max-width: 400px;
    margin: 0 auto;
  }
}
@media all and (min-width: 1024px) {
  .team-container .team-member {
    justify-content: space-between;
    align-items: center;
  }
  .team-container .team-member:nth-child(even) {
    flex-direction: row-reverse;
  }
  .team-container .team-member .team-member-image {
    width: 32%;
    margin: 0;
    min-height: 500px;
  }
  .team-container .team-member .team-member-info {
    width: 62%;
    text-align: left;
  }
}
.faq-block.wrapper {
  background: rgba(137, 127, 121, 0.3);
  padding: 64px 20px;
}
.faq-block.wrapper h2 {
  margin: 0 40px 64px;
  text-align: center;
}
.faq-block.wrapper .container.faq-container {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  border-radius: 10px;
  background: #FFFFFF;
  padding: 32px 20px;
}
.faq-block.wrapper .container.faq-container .faq {
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #897f79;
}
.faq-block.wrapper .container.faq-container .faq:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}
.faq-block.wrapper .container.faq-container .faq .question {
  cursor: pointer;
}
.faq-block.wrapper .container.faq-container .faq .question.active h2 .faq-btn:after {
  display: none;
}
.faq-block.wrapper .container.faq-container .faq .question h2 {
  text-align: left;
  margin: 0;
  font-size: 1.25rem;
  font-family: "Poppins", sans-serif;
  padding-right: 40px;
  position: relative;
  line-height: 1.75rem;
}
.faq-block.wrapper .container.faq-container .faq .question h2 .faq-btn {
  position: absolute;
  top: 0px;
  right: 10px;
  border-radius: 100px;
  border: 1px solid #897f79;
  width: 31px;
  height: 31px;
}
.faq-block.wrapper .container.faq-container .faq .question h2 .faq-btn:before {
  position: absolute;
  content: "";
  width: 14px;
  height: 2px;
  background: #897f79;
  border-radius: 4px;
  top: 14px;
  left: 8px;
}
.faq-block.wrapper .container.faq-container .faq .question h2 .faq-btn:after {
  position: absolute;
  content: "";
  height: 14px;
  width: 2px;
  background: #897f79;
  border-radius: 4px;
  top: 8px;
  left: 14px;
}
.faq-block.wrapper .container.faq-container .faq .answer {
  display: none;
  padding-top: 24px;
}

@media all and (min-width: 768px) {
  .faq-block.wrapper {
    padding-top: 96px;
    padding-bottom: 96px;
  }
}
.page-template-class-template header.page-hero {
  text-align: left;
}
.page-template-class-template header.page-hero .container h1 {
  font-style: italic;
}
.page-template-class-template header.page-hero .container h2 {
  font-size: 2rem;
}
.page-template-class-template header.page-hero .container ul.class-categories {
  margin: 24px 0;
  padding: 0;
}
.page-template-class-template header.page-hero .container ul.class-categories li {
  list-style: none;
  display: inline-block;
  margin-right: 10px;
}
.page-template-class-template header.page-hero .container ul.class-categories li a {
  border: 2px solid #FFFFFF;
  color: #FFFFFF;
  display: block;
  padding: 10px 25px;
  border-radius: 50px;
  text-decoration: none;
}
.page-template-class-template .class-container .class {
  margin-bottom: 64px;
  justify-content: space-between;
}
.page-template-class-template .class-container h2 {
  font-size: 3rem;
  padding-left: 100px;
  position: relative;
  padding-top: 0px;
  scroll-margin-top: 280px;
}
.page-template-class-template .class-container h2:before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 80px;
  height: 1px;
  background: #746d68;
  content: "";
}
.page-template-class-template .class-image {
  width: 100%;
  min-height: 400px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  border-radius: 20px;
}
.page-template-class-template .class-info h3 {
  font-size: 2rem;
  font-family: "Playfair Display", serif;
}
.page-template-class-template .class-info ul.good-for-list {
  margin: 16px 0;
  padding: 0;
}
.page-template-class-template .class-info ul.good-for-list li {
  padding-left: 35px;
  position: relative;
  list-style: none;
  display: inline-block;
  margin-right: 10px;
}
.page-template-class-template .class-info ul.good-for-list li:before {
  position: absolute;
  content: "";
  left: 0;
  width: 26px;
  height: 20px;
  background: url(images/simple-pale-logo-mark.svg) no-repeat center transparent;
  background-size: contain;
}

@media all and (min-width: 1024px) {
  .page-template-class-template .class {
    align-items: center;
  }
  .page-template-class-template .class-info {
    width: 48%;
    padding-right: 50px;
  }
  .page-template-class-template .class-info h3 {
    margin-top: 0;
  }
  .page-template-class-template .class-image {
    width: 48%;
  }
}
.page-template-workshops-template .events.wrapper.past-events ul li .date, .page-template-retreats-template .events.wrapper.past-events ul li .date {
  margin-bottom: 6px;
}
.page-template-workshops-template .events.wrapper.past-events ul li h3 a, .page-template-retreats-template .events.wrapper.past-events ul li h3 a {
  display: block;
  font-size: 1.25rem;
  text-underline-offset: 6px;
  line-height: 1.75rem;
}
.page-template-workshops-template .events.wrapper h2, .page-template-retreats-template .events.wrapper h2 {
  font-style: italic;
  font-size: 2.5rem;
}
.page-template-workshops-template .events.wrapper ul, .page-template-retreats-template .events.wrapper ul {
  margin: 0;
  padding: 0;
}
.page-template-workshops-template .events.wrapper ul li, .page-template-retreats-template .events.wrapper ul li {
  padding: 0;
  margin: 0 0 32px;
  list-style: none;
}
.page-template-workshops-template .events.wrapper ul li h3, .page-template-retreats-template .events.wrapper ul li h3 {
  font-family: "Playfair Display", serif;
  font-size: 1.5rem;
  margin-top: 16px;
}
.page-template-workshops-template .events.wrapper ul li h3 a, .page-template-retreats-template .events.wrapper ul li h3 a {
  color: #897f79;
  text-decoration-thickness: 1px;
  text-underline-offset: 10px;
}
.page-template-workshops-template .events.wrapper ul li .event-image, .page-template-retreats-template .events.wrapper ul li .event-image {
  width: 100%;
  min-height: 250px;
  background-position: center;
  background-size: cover;
  border-radius: 20px;
}
.page-template-workshops-template .events.wrapper ul li span.date, .page-template-retreats-template .events.wrapper ul li span.date {
  display: block;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 0.8rem;
  margin: 16px 0 8px;
  opacity: 0.6;
}
.page-template-workshops-template .events.wrapper.past-events ul li, .page-template-retreats-template .events.wrapper.past-events ul li {
  width: 100%;
  margin-bottom: 0;
}
.page-template-workshops-template .past-events.wrapper, .page-template-retreats-template .past-events.wrapper {
  background: rgba(137, 127, 121, 0.1);
}
.page-template-workshops-template .past-events.wrapper .container, .page-template-retreats-template .past-events.wrapper .container {
  padding-top: 32px;
  padding-bottom: 32px;
}

@media all and (min-width: 768px) {
  .page-template-workshops-template .events.wrapper ul li h3, .page-template-retreats-template .events.wrapper ul li h3 {
    margin: 0 0 32px;
    font-size: 2rem;
    line-height: 2.5rem;
  }
  .page-template-workshops-template .events.wrapper.past-events ul, .page-template-retreats-template .events.wrapper.past-events ul {
    justify-content: space-between;
  }
  .page-template-workshops-template .events.wrapper.past-events ul li, .page-template-retreats-template .events.wrapper.past-events ul li {
    width: 48%;
  }
  .page-template-workshops-template .events.wrapper.past-events ul li .event-image, .page-template-retreats-template .events.wrapper.past-events ul li .event-image {
    margin-bottom: 24px;
  }
  .page-template-workshops-template .events.wrapper.upcoming-events ul li, .page-template-retreats-template .events.wrapper.upcoming-events ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .page-template-workshops-template .events.wrapper.upcoming-events ul li .event-image, .page-template-retreats-template .events.wrapper.upcoming-events ul li .event-image {
    width: 48%;
    margin-right: 3%;
    min-height: 400px;
  }
  .page-template-workshops-template .events.wrapper.upcoming-events ul li .event-text, .page-template-retreats-template .events.wrapper.upcoming-events ul li .event-text {
    width: 47%;
  }
}
@media all and (min-width: 900px) {
  .page-template-workshops-template .it-block.flex.wrap.reverse .it-col.it-col-copy, .page-template-retreats-template .it-block.flex.wrap.reverse .it-col.it-col-copy {
    padding-left: 0;
    padding-right: 3%;
  }
}
@media all and (min-width: 1024px) {
  .page-template-workshops-template .events.wrapper.upcoming-events ul li h3, .page-template-retreats-template .events.wrapper.upcoming-events ul li h3 {
    font-size: 2.5rem;
  }
  .page-template-workshops-template .events.wrapper.past-events ul li, .page-template-retreats-template .events.wrapper.past-events ul li {
    width: 23%;
  }
}
.offer-block.wrapper .container {
  text-align: center;
}
.offer-block.wrapper .container ul {
  width: 100%;
  max-width: 700px;
  margin: 64px auto;
  padding: 0;
}
.offer-block.wrapper .container ul li {
  width: 100%;
  border-radius: 20px;
  color: #FFFFFF;
  padding: 32px 20px;
  list-style: none;
  overflow: hidden;
  margin-bottom: 24px;
  background-size: cover !important;
  position: relative;
}
.offer-block.wrapper .container ul li img {
  max-width: 50px;
  position: relative;
  margin-top: 24px;
}
.offer-block.wrapper .container ul li h3 {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-size: 2rem;
  position: relative;
  margin-bottom: 16px;
  margin-top: 24px;
}
.offer-block.wrapper .container ul li p {
  position: relative;
  font-size: 1.25rem;
}
.offer-block.wrapper .container ul li.yoga-col {
  background: url(/wp-content/uploads/2025/10/mats-in-studio-5.jpeg) no-repeat center transparent;
}
.offer-block.wrapper .container ul li.pilates-col {
  background: url(/wp-content/uploads/2025/10/mats-in-studio-17.jpeg) no-repeat center transparent;
}
.offer-block.wrapper .container ul li.wellbeing-col {
  background: url(/wp-content/uploads/2025/10/tyc-mat.jpeg) no-repeat center transparent;
}
.offer-block.wrapper .container ul li:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: "";
  background: rgba(116, 109, 104, 0.6);
  z-index: 0;
}
@media all and (min-width: 1024px) {
  .offer-block.wrapper .container ul {
    max-width: 100%;
    justify-content: space-between;
  }
  .offer-block.wrapper .container ul li {
    width: 32%;
  }
}
.text-image-block.wrapper.cream {
  background: rgba(137, 127, 121, 0.3);
}
.text-image-block.wrapper.white {
  background: #FFFFFF;
}
.text-image-block.wrapper .container .text {
  width: 100%;
  text-align: center;
  margin-bottom: 64px;
}
.text-image-block.wrapper .container .image {
  min-height: 400px;
  width: 100%;
  max-width: 700px;
  background-size: cover;
  background-position: center;
  border-radius: 20px;
}

.it-block.flex.wrap .it-col {
  width: 100%;
  margin-bottom: 24px;
}
.it-block.flex.wrap .it-col.it-col-image figure {
  margin: 0;
  border-radius: 20px;
  overflow: hidden;
}
.it-block.flex.wrap .it-col.it-col-image figure img {
  display: block;
  width: 100%;
}
.it-block.flex.wrap .it-col.it-col-copy h2 {
  font-size: 2rem;
  margin-bottom: 16px;
}
@media all and (min-width: 900px) {
  .text-image-block.wrapper .container {
    justify-content: space-between;
    align-items: center;
  }
  .text-image-block.wrapper .container .text {
    text-align: left;
    width: 47%;
    max-width: 600px;
    margin-bottom: 0;
  }
  .text-image-block.wrapper .container .image {
    width: 47%;
    min-height: 500px;
    max-width: 600px;
  }
  .it-block.flex.wrap {
    align-items: center;
    justify-content: space-between;
  }
  .it-block.flex.wrap.reverse {
    flex-direction: row-reverse;
  }
  .it-block.flex.wrap.reverse .it-col.it-col-copy {
    padding-left: 3%;
    padding-right: 0 !important;
  }
  .it-block.flex.wrap .it-col {
    width: 47%;
    margin-bottom: 48px;
  }
  .it-block.flex.wrap .it-col.it-col-copy {
    padding-right: 3%;
  }
}
.sanctuary-block.wrapper .container {
  text-align: center;
  max-width: 100% !important;
}
.sanctuary-block.wrapper .container h2 {
  position: relative;
  margin-bottom: 196px;
}
.sanctuary-block.wrapper .container h2:before {
  height: 100px;
  width: 1px;
  background: #897f79;
  left: 50%;
  bottom: -140px;
  position: absolute;
  content: "";
}
.sanctuary-block.wrapper .container .sanc-columns {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}
.sanctuary-block.wrapper .container .sanc-columns .sanc-column {
  width: 100%;
}
.sanctuary-block.wrapper .container .sanc-columns .sanc-column img {
  width: 100%;
  max-width: 75px;
}
.sanctuary-block.wrapper .container .sanc-columns .sanc-column h3 {
  margin-bottom: 8px;
}
.sanctuary-block.wrapper .container .sanc-columns .sanc-column p {
  max-width: 250px;
  margin: 0 auto 48px;
  opacity: 0.8;
}

@media all and (min-width: 768px) {
  .sanctuary-block.wrapper .container .sanc-columns {
    justify-content: space-between;
  }
  .sanctuary-block.wrapper .container .sanc-columns .sanc-column {
    width: 32%;
  }
}
@media all and (min-width: 1024px) {
  .sanctuary-block.wrapper {
    background: url(images/sanctuary-bg.svg) no-repeat center top transparent;
    background-size: cover;
  }
  .sanctuary-block.wrapper .container .sanc-columns .sanc-column p {
    margin: 0 auto;
  }
}
.membership-block.wrapper {
  background: rgba(137, 127, 121, 0.3);
  text-align: center;
}
.membership-block.wrapper .container .pack-columns {
  margin-top: 48px;
}
.membership-block.wrapper .container .pack-columns .pack-column {
  padding: 20px 20px 100px;
  width: 100%;
  background: #746d68;
  color: #FFFFFF;
  border-radius: 20px;
  margin-bottom: 24px;
  position: relative;
  text-align: left;
}
.membership-block.wrapper .container .pack-columns .pack-column:nth-child(odd) {
  background: #FFFFFF;
  color: #897f79;
}
.membership-block.wrapper .container .pack-columns .pack-column:nth-child(odd) h3 {
  border-bottom: 1px solid rgba(137, 127, 121, 0.5);
}
.membership-block.wrapper .container .pack-columns .pack-column:nth-child(odd) ul li:before {
  border: 2px solid #897f79;
  background: url("images/tick-brown.svg") no-repeat center transparent;
  background-size: 7px;
}
.membership-block.wrapper .container .pack-columns .pack-column:nth-child(odd) a.cta {
  background: #897f79;
  color: #FFFFFF !important;
  border-color: #897f79;
}
.membership-block.wrapper .container .pack-columns .pack-column:nth-child(odd) a.cta:hover {
  color: #897f79 !important;
  background: transparent;
}
.membership-block.wrapper .container .pack-columns .pack-column h3 {
  margin-top: 0;
  padding-right: 100px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  padding-bottom: 16px;
  font-style: italic;
}
.membership-block.wrapper .container .pack-columns .pack-column .price {
  font-weight: 600;
  font-size: 1.5rem;
  position: absolute;
  top: 20px;
  right: 20px;
  text-align: right;
}
.membership-block.wrapper .container .pack-columns .pack-column ul {
  margin: 0;
  padding: 0;
}
.membership-block.wrapper .container .pack-columns .pack-column ul li {
  padding: 0 0 16px 27px;
  list-style: none;
  position: relative;
}
.membership-block.wrapper .container .pack-columns .pack-column ul li:before {
  position: absolute;
  content: "";
  left: 0;
  top: 3px;
  width: 17px;
  height: 17px;
  border-radius: 17px;
  opacity: 0.4;
  border: 2px solid #FFFFFF;
  background: url("images/tick.svg") no-repeat center transparent;
  background-size: 7px;
}
.membership-block.wrapper .container .pack-columns .pack-column a.cta {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  text-align: center;
}

@media all and (min-width: 768px) {
  .membership-block.wrapper .container .pack-columns {
    justify-content: space-between;
  }
  .membership-block.wrapper .container .pack-columns .pack-column {
    width: 48%;
  }
}
@media all and (min-width: 1024px) {
  .membership-block.wrapper .container .pack-columns .pack-column {
    width: 24%;
  }
}
.mc-block .mc-block-container .column-container .column {
  width: 100%;
  text-align: left;
  margin-bottom: 32px;
}
.mc-block .mc-block-container .column-container .column h4 {
  color: #897f79;
  font-weight: 500;
  margin-bottom: 16px;
}
@media all and (min-width: 768px) {
  .mc-block .mc-block-container .column-container {
    justify-content: space-between;
  }
  .mc-block .mc-block-container .column-container.cols-2 .column, .mc-block .mc-block-container .column-container.cols-4 .column {
    width: 48%;
  }
  .mc-block .mc-block-container .column-container.cols-3 .column {
    width: 32%;
  }
  .mc-block .mc-block-container .column-container .column h4 {
    color: #897f79;
    font-weight: 500;
    margin-bottom: 16px;
  }
}
@media all and (min-width: 1024px) {
  .mc-block .mc-block-container {
    text-align: center;
  }
  .mc-block .mc-block-container .column-container {
    margin: 32px 0;
  }
  .mc-block .mc-block-container .column-container.cols-4 .column {
    width: 24%;
  }
}
.ps-block {
  text-align: center;
  position: relative;
}
.ps-block.lines {
  margin-bottom: 144px;
}
.ps-block.lines:before {
  width: 1px;
  height: 96px;
  bottom: -96px;
  left: 50%;
  position: absolute;
  content: "";
  background: #897f79;
}
.ps-block .ps-col {
  max-width: 1000px;
  margin: 0 auto;
}
.ps-block .ps-col h2 {
  font-size: 3rem;
  margin-bottom: 32px;
  line-height: 3.5rem;
}
.ps-block .ps-col h4 {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: 400;
  font-family: "Playfair Display", serif;
  text-transform: none;
  font-style: italic;
  margin-bottom: 16px;
}/*# sourceMappingURL=style.css.map */