/*-----------------------------------------------------------------------
   Fonts
-----------------------------------------------------------------------*/

@import url('https://use.typekit.net/ums2knq.css');

/*-----------------------------------------------------------------------
   Variables
-----------------------------------------------------------------------*/

:root {
   --admin-height: 32px;
   --header-height: 160px;
   --notice-height: 0px;

   --font-primary: 'brother-1816', sans-serif;
   --font-secondary: 'brother-1816-printed', sans-serif;

   --white: #ffffff;
   --white-rgb: 255, 255, 255;

   --silver: #e5e5e5;
   --silver-rgb: 229, 229, 229;

   --thunder: #22272d;
   --thunder-rgb: 34, 39, 45;

   --lilac: #af94d1;
   --lilac-rgb: 175, 148, 209;

   --lavendar: #eee3ff;
   --lavendar-rgb: 238, 227, 255;

   --lavendar-gradient: linear-gradient(to top, rgba(var(--lavendar-rgb), 70%), rgba(var(--lavendar-rgb), 0%) 80%);

   --turquoise: #72baa9;
   --turquoise-rgb: 114, 186, 169;

   --seafoam: #bde8e1;
   --seafoam-rgb: 189, 232, 225;

   --sage: #def4f0;
   --sage-rgb: 222, 244, 240;

   --red: #ff1414;
   --red-rgb: 255, 20, 20;

   --border-radius-sm: 5px;
   --border-radius-md: 10px;
   --border-radius-lg: 20px;

   --container-xs: 560px;
   --container-sm: 880px;
   --container-md: 1000px;
   --container-lg: 1240px;

   --box-shadow: 0 0 5px rgba(var(--thunder-rgb), 10%);

   --transition: 0.25s ease;
}

/* Responsive */

@media (max-width: 782px) {
   :root {
      --admin-height: 46px;
   }
}

@media (max-width: 920px) {
   :root {
      --header-height: 90px;
   }
}

/*-----------------------------------------------------------------------
   Base
-----------------------------------------------------------------------*/

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

.yoko-theme * {
   scroll-margin-top: calc(var(--header-height));
}

body.yoko-theme,
.editor-styles-wrapper {
   font-optical-sizing: auto;
   -webkit-text-size-adjust: none;
   -webkit-font-smoothing: antialiased;
   font-family: var(--font-primary) !important;
   font-size: 14px !important;
   color: var(--thunder);
   line-height: 1.2;
   font-weight: 400;
}

body.yoko-theme,
.editor-styles-wrapper,
.site-responsive-menu,
.site-main {
   background: var(--white);
}

.site-main {
   position: relative;
   transition: var(--transition) all;
   z-index: 1;
}

/*-----------------------------------------------------------------------
   Admin Bar
-----------------------------------------------------------------------*/

body.yoko-theme {
   padding-top: calc(var(--header-height) + var(--notice-height)) !important;
}

body.yoko-theme.admin-bar {
   padding-top: calc(var(--header-height) + var(--notice-height) + var(--admin-height)) !important;
}

#wpadminbar {
   position: fixed;
   z-index: 20000000000000001;
   top: 0;
}

#wpadminbar ul li.admin-bar-search {
   display: none !important;
}

/*-----------------------------------------------------------------------
   Layouts
-----------------------------------------------------------------------*/

.yoko-theme *[class*='container-'],
.yoko-theme *[class*='section-'],
.yoko-theme *[class*='block-'],
.yoko-theme *[class*='entry-'],
.yoko-theme .relative {
   position: relative;
}

.yoko-theme .absolute {
   position: absolute;
}

/* Flex Layout */

.yoko-theme .flex-layout,
.yoko-theme .flex-align-start,
.yoko-theme .flex-align-center,
.yoko-theme .flex-align-end,
.yoko-theme .flex-justify-start,
.yoko-theme .flex-justify-center,
.yoko-theme .flex-justify-end,
.yoko-theme .flex-justify-between {
   display: flex;
   flex-wrap: wrap;
}

.yoko-theme .flex-align-start {
   align-items: flex-start;
}

.yoko-theme .flex-align-center {
   align-items: center;
}

.yoko-theme .flex-align-end {
   align-items: flex-end;
}

.yoko-theme .flex-justify-start {
   justify-content: flex-start;
}

.yoko-theme .flex-justify-center {
   justify-content: center;
}

.yoko-theme .flex-justify-end {
   justify-content: flex-end;
}

.yoko-theme .flex-justify-between {
   justify-content: space-between;
}

.yoko-theme .flex-row-reverse {
   flex-direction: row-reverse;
}

.yoko-theme .flex-column-reverse {
   flex-direction: column-reverse;
}

.yoko-theme .flex-nowrap {
   flex-wrap: nowrap;
}

.yoko-theme .flex-gap {
   gap: 15px;
}

/* Containers */

.yoko-theme .container,
.yoko-theme .container-xl,
.yoko-theme .container-lg,
.yoko-theme .container-md,
.yoko-theme .container-sm,
.yoko-theme .container-xs {
   z-index: 99;
   margin: auto;
   width: calc(100% - 60px);
}

.yoko-theme .container,
.yoko-theme .container-xl {
   width: 100%;
}

.yoko-theme .container-lg {
   max-width: var(--container-lg);
}

.yoko-theme .container-md {
   max-width: var(--container-md);
}

.yoko-theme .container-sm {
   max-width: var(--container-sm);
}

.yoko-theme .container-xs {
   max-width: var(--container-xs);
}

/* Padding */

.yoko-theme .padding-lg,
.yoko-theme .padding-lg-top {
   padding-top: 80px;
}

.yoko-theme .padding-lg,
.yoko-theme .padding-lg-bot {
   padding-bottom: 80px;
}

.yoko-theme .padding-md,
.yoko-theme .padding-md-top {
   padding-top: 40px;
}

.yoko-theme .padding-md,
.yoko-theme .padding-md-bot {
   padding-bottom: 40px;
}

.yoko-theme .padding-sm,
.yoko-theme .padding-sm-top {
   padding-top: 20px;
}

.yoko-theme .padding-sm,
.yoko-theme .padding-sm-bot {
   padding-bottom: 20px;
}

/* Grid Layout */

.yoko-theme .grid-col-1,
.yoko-theme .grid-col-2,
.yoko-theme .grid-col-3,
.yoko-theme .grid-col-4,
.yoko-theme .grid-col-5,
.yoko-theme .grid-col-6 {
   display: grid;
   gap: 20px;
}

.yoko-theme .grid-col-2 {
   gap: 80px;
}

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

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

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

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

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

/* Visibility */

.yoko-theme .desktop-only {
   display: block;
}

.yoko-theme .mobile-only {
   display: none;
}

/* Block Settings */

.yoko-theme .block-setting-padding {
   padding-top: var(--block-padding-top);
   padding-bottom: var(--block-padding-bottom);
}

.yoko-theme .block-setting-background-colour {
   background: var(--block-background-colour);
   background-attachment: fixed;
}

.yoko-theme .has-lavendar-gradient {
   background: var(--lavendar-gradient);
   background-attachment: fixed;
}

/* Responsive */

@media (min-width: 860px) {
   .yoko-theme .grid-col-2.has-sidebar-left {
      grid-template-columns: 1fr 1.75fr;
   }

   .yoko-theme .grid-col-2.has-sidebar-right {
      grid-template-columns: 1.75fr 1fr;
   }
}

@media (max-width: 1200px) {
   .yoko-theme .grid-col-5 {
      grid-template-columns: repeat(3, 1fr);
   }

   .yoko-theme .grid-col-6 {
      grid-template-columns: repeat(4, 1fr);
   }
}

@media (max-width: 860px) {
   .yoko-theme .padding-lg,
   .yoko-theme .padding-lg-top {
      padding-top: 40px;
   }

   .yoko-theme .padding-lg,
   .yoko-theme .padding-lg-bot {
      padding-bottom: 40px;
   }

   .yoko-theme .grid-col-2 {
      gap: 40px;
   }

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

   .yoko-theme .grid-col-3,
   .yoko-theme .grid-col-4 {
      grid-template-columns: repeat(2, 1fr);
   }

   .yoko-theme .grid-col-5,
   .yoko-theme .grid-col-6 {
      grid-template-columns: repeat(3, 1fr);
   }

   .yoko-theme .block-setting-padding {
      padding-top: calc(var(--block-padding-top) / 1.25);
      padding-bottom: calc(var(--block-padding-bottom) / 1.25);
   }
}

@media (max-width: 720px) {
   .yoko-theme .container-lg,
   .yoko-theme .container-md,
   .yoko-theme .container-sm,
   .yoko-theme .container-xs {
      width: calc(100% - 30px);
   }

   .yoko-theme .grid-col-4,
   .yoko-theme .grid-col-5 {
      grid-template-columns: repeat(2, 1fr);
   }

   .yoko-theme .desktop-only {
      display: none;
   }

   .yoko-theme .mobile-only {
      display: block;
   }
}

@media (max-width: 600px) {
   .yoko-theme .grid-col-3,
   .yoko-theme .grid-col-4 {
      grid-template-columns: repeat(1, 1fr);
   }

   .yoko-theme .grid-col-6 {
      grid-template-columns: repeat(2, 1fr);
   }

   .yoko-theme .block-setting-padding {
      padding-top: calc(var(--block-padding-top) / 2);
      padding-bottom: calc(var(--block-padding-bottom) / 2);
   }
}

/*-----------------------------------------------------------------------
   Typography
-----------------------------------------------------------------------*/

.yoko-theme .h0,
.yoko-theme .h0 *,
.yoko-theme h1,
.yoko-theme h1 *,
.yoko-theme .h1,
.yoko-theme .h1 *,
.yoko-theme h2,
.yoko-theme h2 *,
.yoko-theme .h2,
.yoko-theme .h2 *,
.yoko-theme h3,
.yoko-theme h3 *,
.yoko-theme .h3,
.yoko-theme .h3 *,
.yoko-theme h4,
.yoko-theme h4 *,
.yoko-theme .h4,
.yoko-theme .h4 *,
.yoko-theme h5,
.yoko-theme h5 *,
.yoko-theme .h5,
.yoko-theme .h5 *,
.yoko-theme h6,
.yoko-theme h6 *,
.yoko-theme .h6,
.yoko-theme .h6 *,
.yoko-theme ul,
.yoko-theme ol,
.yoko-theme li,
.yoko-theme p,
.yoko-theme a {
   margin: 0;
   padding: 0;
   color: var(--thunder);
   font-weight: 400;
   text-wrap: wrap;
   word-wrap: break-word;
}

.yoko-theme .h0,
.yoko-theme .h0 *,
.yoko-theme h1,
.yoko-theme h1 *,
.yoko-theme .h1,
.yoko-theme .h1 *,
.yoko-theme h2,
.yoko-theme h2 *,
.yoko-theme .h2,
.yoko-theme .h2 *,
.yoko-theme h3,
.yoko-theme h3 *,
.yoko-theme .h3,
.yoko-theme .h3 *,
.yoko-theme h4,
.yoko-theme h4 *,
.yoko-theme .h4,
.yoko-theme .h4 *,
.yoko-theme h5,
.yoko-theme h5 *,
.yoko-theme .h5,
.yoko-theme .h5 *,
.yoko-theme h6,
.yoko-theme h6 *,
.yoko-theme .h6,
.yoko-theme .h6 * {
   font-family: var(--font-secondary);
   font-weight: 600;
}

.yoko-theme .h0,
.yoko-theme .h0 * {
   font-size: 90px;
   line-height: 80px;
}

.yoko-theme h1,
.yoko-theme h1 *,
.yoko-theme .h1,
.yoko-theme .h1 * {
   font-size: 76px;
   line-height: 78px;
}

.yoko-theme h2,
.yoko-theme h2 *,
.yoko-theme .h2,
.yoko-theme .h2 * {
   font-size: 60px;
   line-height: 60px;
}

.yoko-theme h3,
.yoko-theme h3 *,
.yoko-theme .h3,
.yoko-theme .h3 * {
   font-size: 44px;
   line-height: 44px;
}

.yoko-theme h4,
.yoko-theme h4 *,
.yoko-theme .h4,
.yoko-theme .h4 * {
   font-size: 22px;
   line-height: 30px;
}

.yoko-theme h5,
.yoko-theme h5 *,
.yoko-theme .h5,
.yoko-theme .h5 * {
   font-size: 22px;
   line-height: 30px;
   font-weight: 400;
}

.yoko-theme h6,
.yoko-theme h6 *,
.yoko-theme .h6,
.yoko-theme .h6 * {
   font-size: 10px;
   line-height: 12px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.yoko-theme h1 .heading-underline,
.yoko-theme .h1 .heading-underline,
.yoko-theme h2 .heading-underline,
.yoko-theme .h2 .heading-underline,
.yoko-theme h3 .heading-underline,
.yoko-theme .h3 .heading-underline,
.yoko-theme h4 .heading-underline,
.yoko-theme .h4 .heading-underline {
   position: relative;
   display: inline;
   padding: 0 5px;
   background: linear-gradient(var(--lavendar), var(--lavendar));
   background-repeat: no-repeat;
   background-size: 100% 0.6em;
   background-position: 0 75%;
}

.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] h1 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] .h1 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] h2 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] .h2 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] h3 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] .h3 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] h4 .heading-underline,
.yoko-theme div[class*='block-setting-background-colour'][style*='--block-background-colour: var(--seafoam)'] .h4 .heading-underline {
   background: linear-gradient(var(--white), var(--white));
   background-repeat: no-repeat;
   background-size: 100% 0.6em;
   background-position: 0 75%;
}

.yoko-theme ul,
.yoko-theme ol,
.yoko-theme li {
   margin: 0;
   padding: 0;
   list-style: none;
}

.yoko-theme p,
.yoko-theme li {
   font-size: 14px !important;
   line-height: 22px !important;
   font-weight: 400;
}

.yoko-theme a {
   text-underline-offset: 3px !important;
   text-decoration-thickness: 1px !important;
}

.yoko-theme a:hover,
.yoko-theme a:focus {
   color: inherit;
}

.yoko-theme strong,
.yoko-theme strong * {
   font-weight: 600 !important;
}

.yoko-theme code {
   padding: 10px;
   font-size: 14px;
   color: var(--white);
   background: var(--thunder);
}

.yoko-theme mark {
   background: none;
}

.yoko-theme hr {
   width: 100%;
   border: 0;
   border-top: 1px solid var(--thunder);
}

/* Responsive */

@media (max-width: 860px) {
   .yoko-theme .h0,
   .yoko-theme .h0 *,
   .yoko-theme h1,
   .yoko-theme h1 *,
   .yoko-theme .h1,
   .yoko-theme .h1 * {
      font-size: 60px;
      line-height: 60px;
   }

   .yoko-theme h2,
   .yoko-theme h2 *,
   .yoko-theme .h2,
   .yoko-theme .h2 * {
      font-size: 48px;
      line-height: 48px;
   }

   .yoko-theme h3,
   .yoko-theme h3 *,
   .yoko-theme .h3,
   .yoko-theme .h3 * {
      font-size: 38px;
      line-height: 38px;
   }

   .yoko-theme h1 br,
   .yoko-theme h2 br,
   .yoko-theme h3 br,
   .yoko-theme h4 br,
   .yoko-theme h5 br,
   .yoko-theme h6 br {
      display: none;
   }
}

@media (max-width: 600px) {
   .yoko-theme .h0,
   .yoko-theme .h0 *,
   .yoko-theme h1,
   .yoko-theme h1 *,
   .yoko-theme .h1,
   .yoko-theme .h1 * {
      font-size: 40px;
      line-height: 40px;
   }

   .yoko-theme h2,
   .yoko-theme h2 *,
   .yoko-theme .h2,
   .yoko-theme .h2 * {
      font-size: 38px;
      line-height: 38px;
   }

   .yoko-theme h3,
   .yoko-theme h3 *,
   .yoko-theme .h3,
   .yoko-theme .h3 * {
      font-size: 32px;
      line-height: 32px;
   }

   .yoko-theme h4,
   .yoko-theme h4 *,
   .yoko-theme .h4,
   .yoko-theme .h4 *,
   .yoko-theme h5,
   .yoko-theme h5 *,
   .yoko-theme .h5,
   .yoko-theme .h5 * {
      font-size: 18px;
      line-height: 24px;
   }
}

/*-----------------------------------------------------------------------
   Content Styling
-----------------------------------------------------------------------*/

/* Sizes */

.yoko-theme .text-small,
.yoko-theme .text-small * {
   font-size: 14px !important;
   line-height: 18px !important;
}

.yoko-theme .text-sub,
.yoko-theme .text-sub * {
   font-size: 12px !important;
   line-height: 18px !important;
}

/* Alignment */

.yoko-theme .text-left {
   text-align: left;
}

.yoko-theme .text-center {
   text-align: center;
}

.yoko-theme .text-right {
   text-align: right;
}

/* Colours */

.yoko-theme .text-muted {
   opacity: 40%;
}

.yoko-theme .text-white,
.yoko-theme .text-white *:not(.button, button, .button *, button *, [class*='text-'], [style*='color']) {
   color: var(--white) !important;
   border-color: var(--white);
}

.yoko-theme .text-lilac,
.yoko-theme .text-lilac *:not(.button, button, .button *, button *, [class*='text-'], [style*='color']) {
   color: var(--lilac) !important;
   border-color: var(--lilac);
}

/*-----------------------------------------------------------------------
   WYSIWYG Content
-----------------------------------------------------------------------*/

.wysiwyg-content {
   width: 100%;
   position: relative;
   z-index: 99;
}

.wysiwyg-content h1:not(:last-child),
.wysiwyg-content h2:not(:last-child),
.wysiwyg-content h3:not(:last-child),
.wysiwyg-content h4:not(:last-child),
.wysiwyg-content h5:not(:last-child),
.wysiwyg-content h6:not(:last-child),
.wysiwyg-content ul:not(:last-child),
.wysiwyg-content ol:not(:last-child),
.wysiwyg-content img:not(:last-child),
.wysiwyg-content table:not(:last-child),
.wysiwyg-content code:not(:last-child),
.wysiwyg-content blockquote:not(:last-child) {
   margin: 0 0 20px !important;
}

.wysiwyg-content p:not(:last-child),
.wysiwyg-content li:not(:last-child) {
   margin: 0 0 10px !important;
}

.wysiwyg-content .button-group {
   margin-top: 30px !important;
}

/* Lists */

.wysiwyg-content ul,
.wysiwyg-content ol {
   display: inline-block;
}

.wysiwyg-content li {
   position: relative;
   text-align: left;
   padding: 0 0 0 20px;
}

.wysiwyg-content li:not(:last-child) {
   margin: 0 0 5px !important;
}

.wysiwyg-content ul li:before {
   content: '';
   display: block;
   position: absolute;
   top: 9px;
   left: 3px;
   width: 3px;
   height: 3px;
   border-radius: 3px;
   background: var(--thunder);
}

.wysiwyg-content ul.list-style-checkmark li {
   padding: 0 0 0 25px;
}

.wysiwyg-content ul.list-style-checkmark li:before {
   top: 5px;
   width: 14px;
   height: 14px;
   background: url(../img/icon-checkmark.svg) 50% no-repeat;
   background-size: 14px;
}

.wysiwyg-content ol {
   counter-reset: item;
   list-style-position: outside;
}

.wysiwyg-content ol li:before {
   content: counter(item) '. ';
   counter-increment: item;
   display: block;
   position: absolute;
   top: 0;
   left: 0;
}

/* Blockquote */

.wysiwyg-content blockquote {
   margin-left: 25px;
   margin-right: 25px;
   padding: 20px;
   border-radius: var(--border-radius-sm);
   background: rgba(var(--lavendar-rgb), 50%);
}

/* Links */

.wysiwyg-content h5 a,
.wysiwyg-content p a,
.wysiwyg-content li a,
.wysiwyg-content span a {
   text-decoration: underline;
}

/* Hr */

.wysiwyg-content hr {
   margin: 30px 0;
}

/* Images */

.wysiwyg-content img {
   display: block;
   max-width: 100% !important;
   height: auto !important;
}

.wysiwyg-content img:not(:first-child) {
   margin-top: 40px !important;
}

.wysiwyg-content img:not(:last-child) {
   margin-bottom: 40px !important;
}

.wysiwyg-content img.aligncenter {
   margin-left: auto !important;
   margin-right: auto !important;
   float: none;
}

.wysiwyg-content img.alignleft {
   float: left;
}

.wysiwyg-content img.alignright {
   float: right;
}

.wysiwyg-content img.size-full {
   width: 100% !important;
}

/*-----------------------------------------------------------------------
   Global Forms
-----------------------------------------------------------------------*/

.yoko-theme form,
.yoko-theme form *:not(table, table *, button) {
   border: 0;
   padding: 0;
   margin: 0;
   outline: 0 !important;
   box-shadow: none !important;
   position: relative;
}

.yoko-theme form *[disabled] {
   opacity: 40%;
   pointer-events: none;
}

/* Labels */

.yoko-theme label,
.yoko-theme legend,
.yoko-theme form .ginput_preview,
.yoko-theme form .gform-field-label,
.yoko-theme form .gfield_description,
.yoko-theme form .ginput_quantity_label,
.yoko-theme form .gform_fileupload_rules,
.yoko-theme form .gfield_password_strength {
   display: block !important;
   margin: 0 !important;
   padding: 0 !important;
   font-family: var(--font-primary);
   font-size: 10px !important;
   line-height: 16px !important;
   font-weight: 500 !important;
   letter-spacing: 1px !important;
   text-transform: uppercase;
   margin: 10px 0 !important;
}

/* .yoko-theme fieldset legend {
   font-size: 16px !important;
} */

.yoko-theme label a,
.yoko-theme legend a {
   color: var(--thunder) !important;
   text-decoration: underline;
}

.yoko-theme label .required,
.yoko-theme form .gfield_label .gfield_required {
   color: var(--lilac);
   margin-left: 2px !important;
   text-decoration: none !important;
}

/* Basic Fields */

.yoko-theme input:not([class*='ui-'], [type='button'], [type='submit']),
.yoko-theme select:not([class*='ui-']),
.yoko-theme .select2-container .select2-selection,
.yoko-theme textarea:not([class*='ui-']) {
   appearance: none;
   -webkit-appearance: none;
   display: block;
   width: 100% !important;
   height: auto !important;
   border: 0 !important;
   border-radius: var(--border-radius-sm) !important;
   border: 2px solid var(--silver) !important;
   background: var(--white) !important;
   padding: 14px 16px !important;
   color: var(--thunder) !important;
   font-size: 14px !important;
   line-height: 20px !important;
   font-weight: 300 !important;
   text-align: left !important;
   text-decoration: none !important;
   transition: none !important;
   resize: none;
}

.yoko-theme textarea:not([class*='ui-']) {
   min-height: 100px;
   max-height: 200px;
}

.yoko-theme input:not([class*='ui-'], [type='button'], [type='submit']):hover,
.yoko-theme input:not([class*='ui-'], [type='button'], [type='submit']):focus,
.yoko-theme select:not([class*='ui-']):hover,
.yoko-theme select:not([class*='ui-']):focus,
.yoko-theme textarea:not([class*='ui-']):hover,
.yoko-theme textarea:not([class*='ui-']):focus {
   outline: 0 !important;
   box-shadow: none !important;
}

.yoko-theme input:not([class*='ui-'])[disabled],
.yoko-theme select:not([class*='ui-'])[disabled],
.yoko-theme textarea:not([class*='ui-'])[disabled],
.yoko-theme button:not([class*='ui-'])[disabled] {
   opacity: 40%;
   pointer-events: none;
}

.yoko-theme input:not([class*='ui-']):-webkit-autofill,
.yoko-theme input:not([class*='ui-']):-webkit-autofill:hover,
.yoko-theme input:not([class*='ui-']):-webkit-autofill:focus,
.yoko-theme input:not([class*='ui-']):-webkit-autofill:active,
.yoko-theme textarea:not([class*='ui-']):-webkit-autofill,
.yoko-theme textarea:not([class*='ui-']):-webkit-autofill:hover,
.yoko-theme textarea:not([class*='ui-']):-webkit-autofill:focus,
.yoko-theme textarea:not([class*='ui-']):-webkit-autofill:active {
   -webkit-box-shadow: 0 0 0 30px var(--white) inset !important;
   -webkit-text-fill-color: var(--thunder);
}

.yoko-theme ::placeholder {
   color: rgba(var(--thunder-rgb), 50%);
}

/* Select */

.yoko-theme select:not([class*='ui-'], [multiple='multiple']) {
   padding-right: 45px !important;
   background: url(../img/icon-chevron-down.svg) 50% no-repeat !important;
   background-size: 12px !important;
   background-position: center right 20px !important;
   cursor: pointer;
}

.yoko-theme .select2,
.yoko-theme .select2 * {
   margin: 0 !important;
   padding: 0 !important;
}

.yoko-theme .select2-container .select2-selection {
   background: var(--white) url(../img/icon-chevron-down.svg) 50% no-repeat !important;
   background-size: 12px !important;
   background-position: center right 20px !important;
   cursor: pointer;
}

.yoko-theme .select2-container .select2-selection,
.yoko-theme .select2-container .select2-selection * {
   line-height: 20px !important;
}

.yoko-theme .select2-selection__rendered,
.yoko-theme .select2-selection__placeholder {
   color: var(--thunder) !important;
}

.yoko-theme .select2-dropdown {
   top: 0;
   border-width: 1px !important;
   border-color: var(--thunder) !important;
   border-radius: 0 !important;
   background: var(--white);
}

.yoko-theme .select2-dropdown .select2-search,
.yoko-theme .select2-dropdown .select2-results__option {
   padding: 5px;
}

.yoko-theme .select2-dropdown .select2-results__option.select2-results__option--highlighted {
   background: var(--thunder);
}

.yoko-theme .select2-container .select2-selection__arrow {
   display: none;
}

/* Checkbox & Radio */

.yoko-theme input[type='checkbox']:not([class*='ui-']),
.yoko-theme input[type='radio']:not([class*='ui-']) {
   min-height: 25px !important;
   min-width: 25px !important;
   max-width: 25px !important;
   max-height: 25px !important;
   border-radius: var(--border-radius-sm) !important;
   border: 2px solid var(--silver) !important;
   padding: 0 !important;
   background: var(--white);
   box-shadow: none !important;
   margin: 0 10px 0 0 !important;
   position: relative;
   display: inline-block;
   cursor: pointer;
   transition: none !important;
}

.yoko-theme input[type='radio']:not([class*='ui-']) {
   border-radius: 25px !important;
}

.yoko-theme input[type='checkbox']:not([class*='ui-']) + label,
.yoko-theme input[type='radio']:not([class*='ui-']) + label {
   font-weight: 400 !important;
   font-size: 14px !important;
   font-family: var(--font-primary);
   letter-spacing: inherit;
   text-transform: none !important;
   margin: 0 !important;
   display: inline-block !important;
   letter-spacing: 0 !important;
}

.yoko-theme input[type='checkbox']:not([class*='ui-']):checked {
   border-color: var(--lilac) !important;
   background: var(--lilac) url(../img/icon-checkbox.svg) 50% no-repeat !important;
   background-size: 16px !important;
}

.yoko-theme input[type='radio']:not([class*='ui-']):checked {
   border: 6px solid var(--lilac) !important;
}

.yoko-theme input[type='radio']:not([class*='ui-']):before,
.yoko-theme input[type='checkbox']:not([class*='ui-']):before {
   display: none !important;
}

/*-----------------------------------------------------------------------
   Gravity Forms
-----------------------------------------------------------------------*/

.gform_wrapper .gform_body,
.gform_wrapper .gform_fields,
.gform_wrapper .gform_footer {
   margin: 0 !important;
}

.gform_wrapper .gform_fields {
   gap: 10px 20px !important;
}

.gform_wrapper .ginput_complex {
   gap: 0 !important;
}

.gform_wrapper .gform_required_legend {
   display: none !important;
}

/* AJAX Spinner */

.gform_wrapper .gform_ajax_spinner,
.gform_wrapper .gform-loader {
   width: 12px !important;
   height: 12px !important;
   margin: 0 0 0 20px !important;
}

/* Labels */

.yoko-theme .gform_wrapper .gfield_description,
.yoko-theme .gform_wrapper .gfield_list_group_item:before,
.yoko-theme .gform_wrapper .gfield_list .gform-field-label,
.yoko-theme .gform_wrapper .gform-field-label--type-sub {
   font-size: 12px !important;
   font-weight: 300 !important;
   color: rgba(var(--thunder-rgb), 50%) !important;
   text-transform: none !important;
   letter-spacing: 0 !important;
}

.gform_wrapper .gform_title {
   font-size: 38px;
   font-weight: 700;
   margin-bottom: 30px;
}

/* Radio / Checkbox */

.gform_wrapper .gfield_checkbox .gchoice,
.gform_wrapper .gfield_radio .gchoice {
   margin: 10px 0 !important;
}

/* Date / Time */

.gform_wrapper .ginput_container_date,
.gform_wrapper .ginput_container_time {
   flex-basis: auto !important;
   max-width: 100% !important;
   flex: 1 !important;
}

.gform_wrapper .hour_minute_colon {
   line-height: 35px !important;
}

/* List */

.gform_wrapper .gfield_list .gfield_list_icons button {
   min-width: 16px !important;
   min-height: 16px !important;
   width: 16px !important;
   height: 16px !important;
}

/* File Upload */

.gform_wrapper .gform_drop_area {
   padding: 20px !important;
   border-radius: 0 !important;
   background: var(--white) !important;
   border: 1px dashed rgba(var(--thunder-rgb), 25%) !important;
}

.gform_wrapper .gform_drop_area:before {
   display: none !important;
}

.gform_wrapper .gform_drop_area .gform_button_select_files {
   margin: auto !important;
   background: var(--silver) !important;
   color: var(--thunder) !important;
}

.gform_wrapper .gfield--type-fileupload .ginput_preview {
   font-size: 14px;
   display: flex !important;
   align-items: center;
   margin: 10px 0 0 !important;
}

.gform_wrapper .gfield--type-fileupload .ginput_preview * {
   margin: 0 5px 0 0 !important;
   order: 9;
}

.gform_wrapper .gfield--type-fileupload .ginput_preview .gfield_fileupload_progressbar {
   display: none;
}

.gform_wrapper .gform_delete_file,
.gform_wrapper .gform_delete_file * {
   padding: 0 !important;
   margin: 0 0 1px !important;
   min-width: 0 !important;
   box-shadow: none !important;
   font-size: 16px !important;
   line-height: 18px !important;
   color: var(--thunder) !important;
   order: 1 !important;
}

.gform_wrapper .gform_delete_file:hover * {
   color: var(--red) !important;
}

.gform_wrapper .gfield--type-fileupload .gform_fileupload_rules {
   padding-top: inherit !important;
}

/* Price / Product */

.gform_wrapper .ginput_product_price_wrapper {
   width: 100%;
   margin: 0 0 10px;
}

/* Consent */

.gform_wrapper .ginput_container_consent {
   display: flex;
}

/* Progress Bar */

.gform_wrapper .gf_progressbar_wrapper {
   margin: 0 0 30px;
}

.gform_wrapper .gf_progressbar,
.gform_wrapper .gf_progressbar_wrapper,
.gform_wrapper .gf_progressbar_percentage {
   border-radius: 20px !important;
}

.gform_wrapper .gf_progressbar {
   background: rgba(var(--thunder-rgb), 5%) !important;
}

.gform_wrapper .gf_progressbar_percentage {
   height: 16px !important;
   background: var(--lilac) !important;
}

.gform_wrapper .gf_progressbar_title,
.gform_wrapper .gf_progressbar_percentage span {
   margin: 0 !important;
}

.gform_wrapper .gf_progressbar_title {
   font-size: 12px !important;
   font-weight: 400 !important;
}

.gform_wrapper .gf_progressbar_percentage span {
   padding: 0 5px !important;
   color: var(--thunder) !important;
   font-size: 10px !important;
   line-height: 15px !important;
   text-transform: uppercase !important;
}

/* Page Footer */

.gform_wrapper .gform_page_footer {
   display: flex;
   gap: 15px;
   align-items: center;
}

.gform_wrapper .gform_page_footer .button {
   margin: 0 !important;
}

.gform_wrapper .gform_page_footer .gform_previous_button:not(:hover, :focus),
.gform_wrapper .gform_page_footer .gform_next_button:not(:hover, :focus) {
   color: var(--thunder) !important;
}

/* Validation */

.gform_wrapper .gform_validation_errors {
   outline: 0 !important;
   border: 0 !important;
   border-radius: 0 !important;
   box-shadow: none !important;
   margin-bottom: 20px !important;
}

.gform_wrapper .gform_validation_errors * {
   color: var(--red) !important;
   font-family: var(--font-primary);
   font-weight: 400;
   letter-spacing: 0 !important;
}

.gform_wrapper .gfield_validation_message {
   background: transparent !important;
   border: 0 !important;
   padding: 0 !important;
}

/*-----------------------------------------------------------------------
   Filter Form
-----------------------------------------------------------------------*/

.yoko-theme form.filter-form {
   width: fit-content !important;
   max-width: 100%;
}

.yoko-theme *[id*='response'] {
   transition: var(--transition) all;
}

.yoko-theme .filter-loading {
   opacity: 40%;
}

/*-----------------------------------------------------------------------
   Buttons
-----------------------------------------------------------------------*/

.yoko-theme .button-group {
   display: flex;
   flex-wrap: wrap;
   gap: 15px;
}

.yoko-theme .button svg {
   width: 14px;
   height: 14px;
   color: var(--thunder);
}

/* Default Styles */

.yoko-theme button,
.yoko-theme button:hover,
.yoko-theme button:focus,
.yoko-theme .button,
.yoko-theme .button:hover,
.yoko-theme .button:focus {
   appearance: none;
   -webkit-appearance: none;
   position: relative;
   display: flex !important;
   align-items: center;
   justify-content: center;
   gap: 10px;
   margin: 0;
   outline: 0;
   width: auto;
   height: auto;
   min-width: 100px;
   min-height: 0 !important;
   padding: 14px 25px !important;
   font-size: 16px !important;
   font-family: var(--font-primary);
   color: var(--white);
   font-weight: 500;
   line-height: 22px !important;
   text-align: center;
   text-decoration: none !important;
   background: var(--thunder);
   border: 0 !important;
   border-radius: var(--border-radius-sm) !important;
   transition: var(--transition) all;
   cursor: pointer;
}

/* Additional Styles */

.yoko-theme .button.button-white {
   border-color: var(--white);
}

.yoko-theme .button.button-white,
.yoko-theme .button.button-white svg {
   color: var(--white);
}

/* Hover/Focus */

.yoko-theme button:hover,
.yoko-theme button:focus,
.yoko-theme .button:hover,
.yoko-theme .button:focus,
.yoko-theme a.added_to_cart:hover,
.yoko-theme a.added_to_cart:focus,
.yoko-theme .form-submit *[type='submit']:hover,
.yoko-theme .form-submit *[type='submit']:focus {
   outline: 0;
   box-shadow: none;
   opacity: 90%;
}

/* Responsive */

@media (max-width: 550px) {
   .yoko-theme .button-group {
      width: 100%;
   }
}

/*-----------------------------------------------------------------------
   Site Notice
-----------------------------------------------------------------------*/

.site-notice {
   padding: 10px 0;
   background: var(--thunder);
   color: var(--white);
}

/*-----------------------------------------------------------------------
   Site Logo
-----------------------------------------------------------------------*/

.site-logo,
.site-logo img,
.site-logo svg {
   display: block;
   z-index: 20000;
}

.site-logo {
   width: auto;
   height: auto;
}

.site-header .site-logo img,
.site-header .site-logo svg {
   max-width: 230px;
   max-height: 100px;
}

.site-footer .site-logo img,
.site-footer .site-logo svg {
   max-width: 200px;
   max-height: 200px;
}

@media (max-width: 920px) {
   .site-header .site-logo img,
   .site-header .site-logo svg {
      max-width: 140px;
      max-height: 60px;
   }
}

@media (max-width: 860px) {
   .site-footer .site-logo img,
   .site-footer .site-logo svg {
      max-width: 140px;
      max-height: 140px;
   }
}

/*-----------------------------------------------------------------------
   Site Header
-----------------------------------------------------------------------*/

.site-header {
   top: 0;
   width: 100%;
   display: block;
   position: fixed;
   background: var(--white);
   z-index: 2000000002;
}

body.yoko-theme.admin-bar .site-header {
   top: var(--admin-height);
}

.site-header > div[class*='container'] {
   height: var(--header-height);
   transition: var(--transition) height;
}

body.yoko-theme.is-scrolled .site-header > div[class*='container'] {
   height: 90px;
}

body.yoko-theme.is-scrolled .site-header .site-logo img,
body.yoko-theme.is-scrolled .site-header .site-logo svg {
   width: 140px;
   height: 60px;
}

/* Main Menu */

.site-header .header-menu > ul {
   width: 250px;
   display: flex;
   justify-content: space-between;
}

.yoko-theme .header-menu ul li,
.yoko-theme .header-menu ul li a {
   position: relative;
}

.yoko-theme .header-menu ul li a {
   display: block;
   padding: 10px;
   font-size: 16px;
   font-weight: 600;
   color: var(--thunder);
   text-transform: uppercase;
   transition: var(--transition) all;
}

.yoko-theme .header-menu > ul > li > a {
   padding-bottom: 2px;
}

.yoko-theme .header-menu > ul > li > a:after {
   content: '';
   display: block;
   height: 8px;
   width: 100%;
   background: url(../img/el-underline.svg) 50% no-repeat;
   background-size: contain;
   opacity: 0;
   transition: var(--transition) opacity;
}

.yoko-theme .header-menu > ul > li a:hover:after,
.yoko-theme .header-menu > ul > li a:focus:after,
.yoko-theme .header-menu > ul > li.current-menu-item > a:after,
.yoko-theme .header-menu > ul > li.current-menu-parent > a:after {
   opacity: 1;
}

/* Sub Menu */

.site-header ul.sub-menu,
.site-header ul.sub-menu li,
.site-header ul.sub-menu li a {
   display: block;
}

.site-header ul.sub-menu {
   padding: 10px 8px;
   background: var(--white);
   border-radius: var(--border-radius-md);
   border: 2px solid var(--lavendar);
}

.yoko-theme .header-menu ul.sub-menu li a {
   padding: 8px;
   font-size: 14px;
   line-height: 18px;
   text-align: center;
}

.yoko-theme .header-menu ul.sub-menu li a:hover,
.yoko-theme .header-menu ul.sub-menu li a:focus,
.yoko-theme .header-menu ul.sub-menu li.current-menu-item a,
.yoko-theme .header-menu ul.sub-menu li.current-menu-parent a {
   color: var(--lilac);
}

.site-header .header-menu ul li .sub-menu-wrap {
   width: max-content;
   max-width: 280px;
   opacity: 0;
   display: block;
   position: absolute;
   top: 100%;
   left: 50%;
   right: 50%;
   margin: 0;
   transform: translate(-50%);
   padding: 12px 0 0 0;
   pointer-events: none;
   z-index: 20000;
}

.site-header .header-menu ul ul .sub-menu-wrap {
   padding: 0 0 0 8px;
   top: -12px;
   right: auto;
   left: 100%;
   transform: translate(0);
}

.site-header .header-menu ul li:hover > .sub-menu-wrap {
   opacity: 1;
   pointer-events: all;
}

/* Hamburger */

.site-header .hamburger-menu {
   width: 18px;
   height: 18px;
   position: fixed;
   right: 40px;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
}

.site-header .hamburger-menu span,
.site-header .hamburger-menu span:before,
.site-header .hamburger-menu span:after {
   display: block;
   position: absolute;
   left: 0;
   width: 18px;
   height: 2px;
   background: var(--lilac);
   transition: background 0s 0.3s;
}

.site-header .hamburger-menu span {
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

.site-header .hamburger-menu span:before {
   content: '';
   top: -6px;
   transition-property: top, transform;
   transition-duration: 0.3s, 0.3s;
   transition-delay: 0.3s, 0s;
}

.site-header .hamburger-menu span:after {
   content: '';
   bottom: -6px;
   transition-property: bottom, transform;
   transition-duration: 0.3s, 0.3s;
   transition-delay: 0.3s, 0s;
}

body.yoko-theme.menu-active .site-header .hamburger-menu span {
   background: none;
}

body.yoko-theme.menu-active .site-header .hamburger-menu span:before {
   top: 0;
   transform: rotate(45deg);
   transition-delay: 0s, 0.3s;
}

body.yoko-theme.menu-active .site-header .hamburger-menu span:after {
   bottom: 0;
   transform: rotate(-45deg);
   transition-delay: 0s, 0.3s;
}

/* Responsive Menu */

.site-responsive-menu {
   width: 100%;
   position: fixed;
   bottom: 0;
   right: 0;
   top: calc(var(--header-height) + var(--notice-height));
   overflow-y: auto;
   z-index: 0;
}

body.admin-bar .site-responsive-menu {
   top: calc(var(--header-height) + var(--notice-height) + var(--admin-height));
}

.site-responsive-menu div[class*='container-'] {
   opacity: 0;
   transition: var(--transition) all;
}

/* Responsive Menu: Menu */

.site-responsive-menu ul,
.site-responsive-menu ul * {
   display: block;
   text-align: center;
}

.site-responsive-menu .header-menu > ul > li > a {
   padding: 15px;
   font-size: 24px !important;
   line-height: 30px;
   font-weight: 500 !important;
   display: inline-block;
   text-transform: none;
}

/* Responsive Menu: Sub Menu */

.site-responsive-menu .header-menu ul.sub-menu {
   padding-bottom: 10px;
}

.site-responsive-menu .header-menu ul li.menu-item-has-children ul.sub-menu,
.site-responsive-menu .header-menu ul li.menu-item-has-children .sub-menu-wrap {
   display: none;
}

.site-responsive-menu .header-menu ul.sub-menu,
.site-responsive-menu .header-menu ul.sub-menu li,
.site-responsive-menu .header-menu ul.sub-menu li a,
.site-responsive-menu .header-menu ul li.menu-item-has-children.sub-menu-active > .sub-menu-wrap {
   display: block !important;
}

/* Responsive */

@media (min-width: 920px) {
   .site-header .trigger-menu,
   .site-responsive-menu {
      display: none !important;
   }
}

@media (max-width: 920px) {
   .site-header > .flex-layout {
      justify-content: center;
   }

   .site-header .header-menu {
      display: none !important;
   }

   .site-header .trigger-menu {
      opacity: 1;
      pointer-events: all;
   }

   body.menu-active .site-main {
      transform: translateX(-100%);
   }

   body.menu-active .site-responsive-menu div[class*='container-'] {
      opacity: 1;
   }
}

/*-----------------------------------------------------------------------
   Site Search
-----------------------------------------------------------------------*/

.site-search {
   background: var(--white);
   position: fixed;
   left: 0;
   right: 0;
   z-index: 200;
   display: none;
   top: calc(var(--header-height) + var(--notice-height));
   border-bottom: 1px solid var(--lilac);
}

body.yoko-theme.admin-bar .site-search {
   top: calc(var(--header-height) + var(--notice-height) + var(--admin-height));
}

.site-search *[class*='container-'] {
   padding: 20px 0;
}

.site-search .close-search {
   margin-left: 15px;
   cursor: pointer;
}

.site-search .close-search,
.site-search .close-search svg {
   display: block;
   width: 14px;
   height: 14px;
}

.yoko-theme form.search-form {
   display: flex;
   gap: 15px;
}

.yoko-theme form.search-form,
.yoko-theme form.search-form > input {
   flex: 1;
}

/* Responsive */

@media (max-width: 920px) {
   .site-search {
      display: none !important;
   }
}

/*-----------------------------------------------------------------------
   Site Footer
-----------------------------------------------------------------------*/

.site-footer a:hover {
   text-decoration: underline;
}

/* Footer Menu */

.site-footer .footer-menu h6 {
   font-size: 14px;
   line-height: 20px;
   letter-spacing: 0;
}

.site-footer .footer-menu ul,
.site-footer .footer-menu ul * {
   display: block;
}

.site-footer .footer-menu ul li,
.site-footer .footer-menu h6 {
   margin: 0 0 15px;
}

.site-footer .footer-menu ul.sub-menu {
   display: none;
}

/* Copyright */

.site-footer .footer-copyright {
   margin: 0 0 20px;
}

.site-footer .footer-copyright > div[class*='container'] {
   padding: 12px 20px;
   border-radius: 8px;
   background: rgba(var(--lavendar-rgb), 50%);
}

.site-footer .footer-copyright div[class*='col-'] {
   display: flex;
   align-items: center;
   gap: 20px;
}

.site-footer .footer-copyright div[class*='col-'] > span {
   width: 1px;
   height: 12px;
   background: var(--silver);
}

/* Responsive */

@media (max-width: 860px) {
   .site-footer .footer-columns.grid-col-2 {
      grid-template-columns: 1fr 140px;
      gap: 20px;
      align-items: flex-start;
      padding: 0 10px;
   }

   .site-footer .footer-columns a.site-logo {
      order: 9;
      margin: 0 0 0 auto;
   }

   .site-footer .footer-columns .footer-menus {
      order: 1;
   }

   .site-footer .footer-copyright > .flex-layout {
      justify-content: center;
   }

   .site-footer .footer-copyright div[class*='col-'] {
      gap: 10px;
   }
}

/*-----------------------------------------------------------------------
   Site Breadcrumbs
-----------------------------------------------------------------------*/

.site-breadcrumbs .flex-layout {
   padding: 20px 0;
   gap: 10px;
}

.site-breadcrumbs a {
   transition: none;
}

.site-breadcrumbs a:hover,
.site-breadcrumbs a:focus {
   text-decoration: underline;
}

/*-----------------------------------------------------------------------
   Media
-----------------------------------------------------------------------*/

.yoko-theme img {
   max-width: 100%;
   height: auto;
   display: block;
}

.yoko-theme svg {
   transition: var(--transition) all;
}

.yoko-theme .image-square,
.yoko-theme .image-portrait,
.yoko-theme .image-landscape {
   background: var(--silver);
   position: relative;
   object-fit: cover;
   width: 100%;
}

.yoko-theme .image-square {
   aspect-ratio: 1 / 1;
}

.yoko-theme .image-portrait {
   aspect-ratio: 4 / 5;
}

.yoko-theme .image-landscape {
   aspect-ratio: 6 / 4;
}

/* Background Elements */

.yoko-theme .background-image,
.yoko-theme .background-video,
.yoko-theme .background-overlay:before {
   position: absolute;
   top: 0;
   right: 0;
   left: 0;
   bottom: 0;
}

.yoko-theme .background-image {
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   z-index: 0;
}

.yoko-theme .background-video,
.yoko-theme .background-video video {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.yoko-theme .background-overlay:before {
   content: '';
   background: radial-gradient(circle, var(--white), rgba(var(--white-rgb), 0%));
}

/* Video Embed */

.yoko-theme .responsive-embed {
   position: relative;
   padding-bottom: 56.25%;
   height: 0;
   border-radius: var(--border-radius-md);
   overflow: hidden;
}

.yoko-theme .responsive-embed iframe {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}

/*-----------------------------------------------------------------------
   Swiper
-----------------------------------------------------------------------*/

.yoko-theme .swiper-carousel-wrap {
   min-width: 100%;
   overflow: hidden;
}

.yoko-theme .swiper .swiper-slide {
   width: auto;
   height: auto;
}

/* Pagination */

.yoko-theme .swiper-pagination {
   top: 0;
   position: relative;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-top: 30px;
}

.yoko-theme .swiper-pagination span {
   width: 5px;
   height: 5px;
   margin: 0 3px;
   opacity: 1;
   border-radius: 5px;
   background: var(--silver);
   transition: var(--transition) width, var(--transition) background;
}

.yoko-theme .swiper-pagination span.swiper-pagination-bullet-active {
   width: 20px;
   background: var(--thunder);
}

/* Navigation */

.yoko-theme .swiper-navigation div[class*='swiper-nav-'] {
   width: 50px;
   height: 50px;
   background: var(--white);
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 50px;
   border: 2px solid var(--lavendar);
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   z-index: 999;
   cursor: pointer;
}

.yoko-theme .swiper-navigation .swiper-nav-prev {
   left: 60px;
}

.yoko-theme .swiper-navigation .swiper-nav-next {
   right: 60px;
}

.yoko-theme .swiper-navigation div[class*='swiper-nav-'] svg {
   display: block;
   width: 20px;
   height: 20px;
   color: var(--lilac);
}

/* Responsive */

@media (max-width: 860px) {
   .yoko-theme .swiper-pagination {
      margin-top: 15px;
   }

   .yoko-theme .swiper-navigation .swiper-nav-prev {
      left: 30px;
   }

   .yoko-theme .swiper-navigation .swiper-nav-next {
      right: 30px;
   }
}

@media (max-width: 600px) {
   .yoko-theme .swiper-navigation div[class*='swiper-nav-'] {
      width: 40px;
      height: 40px;
      border-radius: 40px;
   }

   .yoko-theme .swiper-navigation .swiper-nav-prev {
      left: 15px;
   }

   .yoko-theme .swiper-navigation .swiper-nav-next {
      right: 15px;
   }

   .yoko-theme .swiper-navigation div[class*='swiper-nav-'] svg {
      width: 16px;
      height: 16px;
   }
}

/*-----------------------------------------------------------------------
   Tables
-----------------------------------------------------------------------*/

.yoko-theme table {
   border-collapse: collapse;
   width: 100%;
}

.yoko-theme table,
.yoko-theme table tr,
.yoko-theme table th,
.yoko-theme table td {
   border-color: var(--lilac);
}

.yoko-theme table th,
.yoko-theme table td {
   padding: 10px;
   text-align: left;
   border: 1px solid var(--lilac);
}

.yoko-theme table th,
.yoko-theme table th * {
   font-weight: 600;
}

.yoko-theme table .button {
   width: fit-content !important;
   margin: 5px 5px 5px 0 !important;
}

/*-----------------------------------------------------------------------
   Social Icons
-----------------------------------------------------------------------*/

.yoko-theme .social-icons {
   gap: 15px;
}

.yoko-theme .social-icons a,
.yoko-theme .social-icons svg {
   margin: 0;
   display: block;
}

.yoko-theme .social-icons svg {
   width: 16px;
   height: 16px;
   color: var(--thunder);
}

/*-----------------------------------------------------------------------
   Clipboard Copy
-----------------------------------------------------------------------*/

.yoko-theme .copy-to-clipboard {
   position: relative;
   cursor: pointer;
}

.yoko-theme .copy-to-clipboard .tooltip {
   background: var(--thunder);
   padding: 5px 8px;
   border-radius: 4px;
   position: absolute;
   top: 0;
   left: 50%;
   width: auto;
   white-space: nowrap;
   color: var(--white);
   font-size: 11px;
   line-height: 1.2;
   text-align: center;
   opacity: 0;
   visibility: hidden;
   transform: translate(-50%, -140%);
   transition: 0.3s ease all;
}

.yoko-theme .copy-to-clipboard .tooltip:after {
   content: '';
   position: absolute;
   top: 100%;
   left: 50%;
   margin-left: -5px;
   border-width: 5px;
   border-style: solid;
   border-color: var(--thunder) transparent transparent transparent;
}

.yoko-theme .copy-to-clipboard:hover .tooltip {
   visibility: visible;
   opacity: 1;
}

/*-----------------------------------------------------------------------
   Popups
-----------------------------------------------------------------------*/

.yoko-theme .trigger-popup,
.yoko-theme .close-popup {
   cursor: pointer;
   z-index: 20000;
}

.yoko-theme .popup-wrap {
   display: none;
}

.yoko-theme .popup-overlay {
   position: fixed;
   left: 0;
   top: 0;
   bottom: 0;
   right: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   background: rgba(var(--thunder-rgb), 80%);
   z-index: 20000000000;
}

/* Containers */

.yoko-theme .popup-overlay > *[class*='container'] {
   position: relative;
   overflow-y: auto;
   max-height: 80vh;
   padding: 40px;
   background: var(--white);
}

/* Close Button */

.yoko-theme .popup-overlay .close-popup:not(.button) {
   position: absolute;
   right: 0;
   top: 0;
   padding: 20px;
}

.yoko-theme .popup-overlay .close-popup svg {
   width: 16px;
   height: 16px;
}

/*-----------------------------------------------------------------------
   Pagination
-----------------------------------------------------------------------*/

.yoko-theme .archive-pagination {
   margin: auto;
   margin-top: 40px;
   width: fit-content;
}

.yoko-theme .archive-pagination a {
   margin: 0 10px;
   font-size: 12px;
   text-align: center;
}

.yoko-theme .archive-pagination a:hover,
.yoko-theme .archive-pagination a.current {
   text-decoration: underline;
}

.yoko-theme .post-pagination {
   border-top: 1px solid var(--lilac);
}

.yoko-theme .post-pagination .button,
.yoko-theme .post-pagination .button:hover,
.yoko-theme .post-pagination .button:focus {
   padding: 0 !important;
   min-width: 0 !important;
   border: 0 !important;
}

.yoko-theme .post-pagination .pagination-next .button svg {
   transform: rotate(-180deg);
}

/*-----------------------------------------------------------------------
   Entry - Default
-----------------------------------------------------------------------*/

.yoko-theme *[class^='entry-'] {
   display: block;
   transition: var(--transition) all;
   text-decoration: none;
}

.yoko-theme *[class^='entry-'] .inner-entry-content {
   padding: 20px 0;
}

.yoko-theme *[class^='entry-'] .inner-entry-content > *:not(:last-child) {
   margin: 0 0 10px !important;
}

/*-----------------------------------------------------------------------
   Block - Accordion
-----------------------------------------------------------------------*/

.yoko-theme .entry-accordion {
   margin: 0;
   height: auto;
   display: block;
   padding: 18px;
   background: var(--white);
   border-radius: var(--border-radius-sm);
}

.yoko-theme div[class='block-setting-background-colour'][style*='--block-background-colour: var(--none)'] .entry-accordion {
   border: 2px solid var(--lavendar);
}

.yoko-theme .entry-accordion:not(:last-child) {
   margin-bottom: 10px;
}

.yoko-theme .entry-accordion .trigger-accordion {
   flex: 1;
   position: relative;
   flex-wrap: nowrap;
   cursor: pointer;
   transition: var(--transition) all;
}

.yoko-theme .entry-accordion .trigger-accordion svg {
   width: 20px;
   height: 30px;
   min-width: 20px;
   min-height: 30px;
   margin-left: 10px;
}

.yoko-theme .entry-accordion.is-active .trigger-accordion svg {
   transform: rotate(90deg);
}

.yoko-theme .entry-accordion .wysiwyg-content {
   display: none;
}

.block-accordion > div[class*='block-setting-background-colour'] {
   margin-left: 20px;
   margin-right: 20px;
   border-radius: var(--border-radius-md);
}

/* Responsive */

@media (max-width: 860px) {
   .block-accordion > div[class*='block-setting-background-colour'] {
      margin-left: 10px;
      margin-right: 10px;
   }
}

/*-----------------------------------------------------------------------
   Block - Image Gallery
-----------------------------------------------------------------------*/

.block-image-gallery .carousel-gallery img {
   width: auto;
   height: 400px;
   border-radius: var(--border-radius-md);
}

/* Responsive */

@media (max-width: 860px) {
   .block-image-gallery .carousel-gallery img {
      height: 250px;
   }
}

/*-----------------------------------------------------------------------
   Block - Separator
-----------------------------------------------------------------------*/

.block-separator .separator {
   display: block;
   margin: 0;
   width: 100%;
   height: 1px;
   background: var(--block-background-colour);
}

.block-editor .block-separator {
   padding: 5px 0;
}

/*-----------------------------------------------------------------------
   Block - Hero Banner
-----------------------------------------------------------------------*/

.block-hero-banner .banner-mask {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   mask-image: url(../img/mask-banner.svg);
   mask-size: cover;
   mask-repeat: no-repeat;
   mask-position: bottom center;
   border-radius: var(--border-radius-md);
   overflow: hidden;
}

/*-----------------------------------------------------------------------
   Block - Page Banner
-----------------------------------------------------------------------*/

.block-page-banner .banner-mask {
   width: 100%;
   padding-bottom: 40px;
   display: flex;
   align-items: center;
   justify-content: center;
   mask-image: url(../img/mask-banner.svg);
   mask-size: cover;
   mask-repeat: no-repeat;
   mask-position: bottom center;
   border-radius: var(--border-radius-md);
   overflow: hidden;
}

.block-page-banner .wysiwyg-content {
   padding: 0 40px;
}

/* Responsive */

@media (max-width: 600px) {
   .block-page-banner .banner-mask {
      padding-bottom: 20px;
   }

   .block-call-to-action .wysiwyg-content h2 {
      max-width: 220px;
      margin-left: auto !important;
      margin-right: auto !important;
   }
}

/*-----------------------------------------------------------------------
   Block - Split Content
-----------------------------------------------------------------------*/

.block-split-content .col-image img {
   border-radius: var(--border-radius-lg);
}

.block-split-content .col-image img.image-square {
   border-radius: 50%;
}

/* Responsive */

@media (max-width: 860px) {
   .block-split-content .col-content {
      order: 9;
   }

   .block-split-content .col-image {
      order: 1;
   }

   body.page-id-78 .block-split-content .col-image,
   body.page-id-78 .block-split-content .col-content {
      max-width: 400px;
      margin: auto;
   }

   body.page-id-78 .block-split-content .col-content .wysiwyg-content {
      text-align: center;
   }

   body.page-id-78 .block-split-content .col-content .button-group {
      justify-content: center;
   }
}

/*-----------------------------------------------------------------------
   Block - About
-----------------------------------------------------------------------*/

.block-about:after {
   content: '';
   display: block;
   width: 100%;
   height: 100%;
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   margin: auto;
   background: url(../img/squiggle-white.svg) 50% no-repeat;
   background-size: 1250px;
   background-position: center;
   z-index: 9;
   pointer-events: none;
}

.block-about .grid-col-3 {
   grid-template-columns: 1fr 1.5fr 1fr;
   gap: 40px;
   margin-left: -30px;
   margin-right: -30px;
}

.block-about .col-image .image-portrait {
   border-radius: var(--border-radius-md);
   overflow: hidden;
}

/* Responsive */

@media (max-width: 720px) {
   .block-about .grid-col-3 {
      display: flex;
      flex-wrap: wrap;
      margin: 0;
   }

   .block-about .col-image {
      width: calc(50% - 20px);
      order: 1;
   }

   .block-about .col-content {
      width: 100%;
      order: 9;
   }
}

/*-----------------------------------------------------------------------
   Block - Services
-----------------------------------------------------------------------*/

.yoko-theme .entry-service {
   max-width: 400px;
   margin: auto;
   height: 100%;
   padding: 10px;
   background: var(--sage);
   border-radius: var(--border-radius-md);
}

.yoko-theme .entry-service {
   display: flex;
   flex-direction: column;
}

.yoko-theme .entry-service .inner-entry-icon img {
   display: block;
   margin: 15px auto 0;
   width: 40px;
   height: 40px;
}

.yoko-theme .entry-service .inner-entry-content {
   flex: 1;
   padding: 30px;
}

.yoko-theme .listing-services .entry-service .inner-entry-content h4 {
   max-width: 220px;
   margin-left: auto !important;
   margin-right: auto !important;
}

.yoko-theme .entry-service .button-group {
   margin-top: auto;
}

.yoko-theme .entry-service .button-group,
.yoko-theme .entry-service .button {
   width: 100%;
}

/*-----------------------------------------------------------------------
   Block - Reviews
-----------------------------------------------------------------------*/

.block-reviews {
   z-index: 999;
   overflow: visible;
}

.editor-styles-wrapper .wp-block-acf-block-reviews {
   overflow: hidden;
}

.block-reviews:after {
   content: '';
   display: block;
   width: 100%;
   height: 100%;
   position: absolute;
   left: 0;
   right: 0;
   margin: auto;
   bottom: -120px;
   background: url(../img/squiggle-seafoam.svg) 50% no-repeat;
   background-size: 1500px;
   background-position: bottom center;
   z-index: 9;
   pointer-events: none;
}

.block-reviews div[class*='container'] {
   text-align: center;
   padding: 60px 70px;
   background: var(--white);
   border-radius: var(--border-radius-md);
   border: 3px solid var(--lavendar);
   z-index: 999;
}

.block-reviews div[class*='container'] > .wysiwyg-content > svg {
   height: 40px;
   width: auto;
   margin-bottom: 25px;
}

.yoko-theme .entry-review .inner-entry-content {
   font-style: italic;
   padding: 35px;
}

.yoko-theme .entry-review .inner-entry-meta span {
   width: 1px;
   height: 12px;
   background: var(--silver);
}

.yoko-theme .entry-review .toggle-read-more {
   text-decoration: underline;
}

/* Responsive */

@media (max-width: 860px) {
   .block-reviews:after {
      background-size: 1000px;
      bottom: -80px;
   }

   .block-reviews div[class*='container'] {
      padding: 40px 25px;
   }

   .block-reviews div[class*='container'] > .wysiwyg-content > svg {
      height: 30px;
   }

   .yoko-theme .entry-review .inner-entry-content {
      padding: 30px 0;
   }
}

@media (max-width: 600px) {
   .block-reviews:after {
      background-size: 800px;
      bottom: -60px;
   }
}

/*-----------------------------------------------------------------------
   Block - Icon Grid
-----------------------------------------------------------------------*/

.yoko-theme .entry-icon .inner-entry-icon img {
   width: 40px;
   height: 40px;
   margin-bottom: 15px;
}

.yoko-theme .listing-icons {
   gap: 10px 60px;
}

.block-icon-grid div[class*='container'] {
   padding: 20px 35px;
   border-radius: var(--border-radius-md);
}
