/*!
Theme Name: raise Singapore
Theme URI: https://ptc.com/
Author: Bibek Shrestha
Author URI: https://sthbibek.com.np/
Description: PTC Site Theme
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: ptc
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
	--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
@font-face {
    font-family: 'BrutGrotesque-Light';
    src: url('assets/fonts/BrutGrotesque-Light.otf') format('Open type');
    src: url('assets/fonts/BrutGrotesque-Light.otf') format('Open type'),
        url('assets/fonts/BrutGrotesque-Light.woff2') format('woff2'),
        url('assets/fonts/BrutGrotesque-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'DrukMedium';
    src: url('assets/fonts/DrukMedium.otf') format('Open type');
    src: url('assets/fonts/DrukMedium.otf') format('Open type'),
        url('assets/fonts/DrukMedium.woff2') format('woff2'),
        url('assets/fonts/DrukMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'Favorit_Regular';
    src: url('assets/fonts/Favorit_Regular.otf') format('Open type');
    src: url('assets/fonts/Favorit_Regular.otf') format('Open type'),
        url('assets/fonts/Favorit_Regular.woff2') format('woff2'),
        url('assets/fonts/Favorit_Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'MyriadPro-Regular';
    src: url('assets/fonts/MyriadPro-Regular.otf') format('Open type');
    src: url('assets/fonts/MyriadPro-Regular.otf') format('Open type'),
        url('assets/fonts/MyriadPro-Regular.woff2') format('woff2'),
        url('assets/fonts/MyriadPro-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'SchneiderLibrettoBQ-Italic';
    src: url('assets/fonts/SchneiderLibrettoBQ-Italic.otf') format('Open type');
    src: url('assets/fonts/SchneiderLibrettoBQ-Italic.otf') format('Open type'),
        url('assets/fonts/SchneiderLibrettoBQ-Italic.woff2') format('woff2'),
        url('assets/fonts/SchneiderLibrettoBQ-Italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
    font-display: auto;
}

@font-face {
    font-family: 'SchneiderLibrettoBQ-Light';
    src: url('assets/fonts/SchneiderLibrettoBQ-Light.otf') format('Open type');
    src: url('assets/fonts/SchneiderLibrettoBQ-Light.otf') format('Open type'),
        url('assets/fonts/SchneiderLibrettoBQ-Light.woff2') format('woff2'),
        url('assets/fonts/SchneiderLibrettoBQ-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'SchneiderLibrettoBQ-LightItalic';
    src: url('assets/fonts/SchneiderLibrettoBQ-LightItalic.otf') format('Open type');
    src: url('assets/fonts/SchneiderLibrettoBQ-LightItalic.otf') format('Open type'),
        url('assets/fonts/SchneiderLibrettoBQ-LightItalic.woff2') format('woff2'),
        url('assets/fonts/SchneiderLibrettoBQ-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: auto;
}

@font-face {
    font-family: 'SchneiderLibrettoBQ-Medium';
    src: url('assets/fonts/SchneiderLibrettoBQ-Medium.otf') format('Open type');
    src: url('assets/fonts/SchneiderLibrettoBQ-Medium.otf') format('Open type'),
        url('assets/fonts/SchneiderLibrettoBQ-Medium.woff2') format('woff2'),
        url('assets/fonts/SchneiderLibrettoBQ-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'SchneiderLibrettoBQ-Regular';
    src: url('assets/fonts/SchneiderLibrettoBQ-Regular.otf') format('Open type');
    src: url('assets/fonts/SchneiderLibrettoBQ-Regular.otf') format('Open type'),
        url('assets/fonts/SchneiderLibrettoBQ-Regular.woff2') format('woff2'),
        url('assets/fonts/SchneiderLibrettoBQ-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: auto;
}

@font-face {
    font-family: 'Selva-Regular';
    src: url('assets/fonts/Selva-Regular.otf') format('Open type');
    src: url('assets/fonts/Selva-Regular.otf') format('Open type'),
        url('assets/fonts/Selva-Regular.ttf') format('truetype'),
        url('assets/fonts/Selva-Regular.woff2') format('woff2'),
        url('assets/fonts/Selva-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: auto;
}


html {
    font-family: sans-serif;
    text-size-adjust: 100%;
    font-size: 5vw;
}

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
    width: 100%;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    color: inherit;
    text-decoration: none;
    background-color: transparent;
    transition: all ease 0.35s;
    -webkit-transition: all ease 0.35s;
    -moz-transition: all ease 0.35s;
}

a:active,
a:hover {
    color: inherit;
    outline: 0;
    text-decoration: none;
}

a:focus {
    color: inherit;
    outline: none;
}

a:visited {
    color: inherit;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-family: var(--jannoProBold) !important;
    font-weight: bold;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: var(--black-color);
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 1em 2.5rem;
}

hr {
    box-sizing: content-box;
    height: 0;
}

pre {
    overflow: auto;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: bold;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td,
th {
    padding: 0;
}

:root {
    --brutGrotesque: 'BrutGrotesque-Light';
    --DrukMedium: 'DrukMedium';
    --favoritRegular: 'Favorit_Regular';
    --myriadProRegular: 'MyriadPro-Regular';
    --schneiderLibrettoItalic: 'SchneiderLibrettoBQ-Italic';
    --schneiderLibrettoLight: 'SchneiderLibrettoBQ-Light';
    --schneiderLibrettoLightItalic: 'SchneiderLibrettoBQ-LightItalic';
    --schneiderLibrettoMedium: 'SchneiderLibrettoBQ-Medium';
    --schneiderLibrettoRegular: 'SchneiderLibrettoBQ-Regular';
    --selvaRegular: 'Selva-Regular';
    --primary-color: #E54F25;
    --primary-color-rgb: 229, 79, 37;
    --secondary-color: #EAE5D2;
    --secondary-color-rgb: 234, 229, 210;
    --black-color: #000000;
    --black-color-rgb: 0, 0, 0;
    --white-color: #ffffff;
    --white-color-rgb: 255, 255, 255;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body {
    font-family: var(--schneiderLibrettoRegular);
    font-size: 1.3125rem;
    line-height: 1.3;
    color: var(--primary-color);
    font-weight: 400;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--schneiderLibrettoRegular);
    clear: both;
    color: var(--primary-color);
    font-weight: normal;
    margin: 0.67em 0;
    line-height: 1.2;
}

h1 {
    font-size: 2.5em;
}

h2 {
    font-size: 2.1875em;
}

h3 {
    font-size: 1.875em;
}

h4 {
    font-size: 1.5625em;
}

h5 {
    font-size: 1.25em;
}

h6 {
    font-size: 1.125em;
}

p {
    margin-top: 0;
    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;
    font-size: 0.9375rem;
    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;
    font-size: 0.9375rem;
}

code {
    background: #f5f5f5 none repeat scroll 0 0;
    display: block;
    padding: 0 1.25rem 1.25rem;
}

abbr,
acronym {
    border-bottom: 1px dotted #666;
    cursor: help;
}

mark,
ins {
    background: #fff9c0;
    text-decoration: none;
}

big {
    font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
    box-sizing: border-box;
}

*,
*:before,
*:after {
    /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
    box-sizing: inherit;
    -webkit-box-sizing: inherit;
}

body {
    background: var(--secondary-color);
    /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
}

blockquote,
q {
    quotes: "" "";
}

blockquote {
    color: var(--primary-color);
    font-style: italic;
    margin: 3.75rem;
    padding: 3.125rem;
    position: relative;
    z-index: 1;
    font-weight: 400;
    font-size: 1.125rem;
    border: 1px solid var(--primary-color);
    display: table;
    border-radius: 5px;
}

blockquote::before {
    color: var(--primary-color);
    content: "\f0b1";
    font-family: icofont;
    font-size: 2.5em;
    left: 3.125rem;
    position: absolute;
    top: 0.9375rem;
    z-index: -1;
}

blockquote p:first-child {
    margin-top: 0;
}

blockquote p:last-child {
    margin-bottom: 0;
}

hr {
    background-color: rgba(var(--primary-color-rgb), 0.5);
    border: 0;
    height: 1px;
    margin-bottom: 1.5em;
}

ul,
ol {
    margin: 0 0 1.5em 0;
}

ul {
    list-style: disc;
}

ol {
    list-style: decimal;
}

li>ul,
li>ol {
    margin-bottom: 0;
    margin-left: 0;
}

ul li,
ol li {
    margin-bottom: 5px;
}


dt {
    font-weight: bold;
}

dd {
    margin: 0 1.5em 1.5em;
}

img {
    height: auto;
    /* Make sure images are scaled correctly. */
    max-width: 100%;
    /* Adhere to container width. */
    vertical-align: top;
}

figure {
    margin: 0;
    /* Extra wide images within figure tags don't overflow the content area. */
}

table {
    margin: 0 0 1.5em;
    width: 100%;
}

table tbody tr {
    background: var(--secondary-color);
}

table tr th {
    background: rgba(var(--primary-color-rgb), 0.15);
    text-align: left;
    padding: 0.625rem 1.25rem;
    color: var(--primary-color);
    border-right: 2px solid var(--primary-color);
}

table tr td {
    padding: 0.625rem 1.25rem;
    font-weight: 400;
    border-right: 2px solid var(--primary-color);
}

table tr th:last-child,
table tr td:last-child {
    border-right: none;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button.btn,
button.button,
input[type="button"].btn,
input[type="reset"].btn,
input[type="submit"].btn {
    border: 1px solid var(--primary-color);
    border-radius: 0;
    background: var(--primary-color);
    color: var(--white-color);
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1;
    padding: 0.3125rem 1rem;
    height: 3.75rem;
    min-width: 12.5rem;
    display: inline-block;
    transition: all ease 0.35s;
    -webkit-transition: all ease 0.35s;
    -moz-transition: all ease 0.35s;
}

button.btn:hover,
input[type="button"].btn:hover,
input[type="reset"].btn:hover,
input[type="submit"].btn:hover,
button.btn:focus,
input[type="button"].btn:focus,
input[type="reset"].btn:focus,
input[type="submit"].btn:focus,
button.btn:active,
input[type="button"].btn:active,
input[type="reset"].btn:active,
input[type="submit"].btn:active {
    background: none;
    color: var(--primary-color);
}

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 {
    background: none;
    color: var(--primary-color);
    border: 1px solid var(--primary-color);
    border-radius: 0;
    padding: 0.625rem 0.9375rem;
    width: 100%;
    height: 3.75rem;
    outline: 0;
    font-size: 1.25rem;
}

input[type="number"] {
    -moz-appearance: textfield;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

textarea {
    height: 9.375rem;
}

select {
    height: 2.5rem;
    width: 100%;
    padding: 0.3125rem 1.875rem 0.3125rem 0.9375rem;
    border: 1px solid rgba(var(--white-color-rgb), 0.5);
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
}

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: var(--primary-color);
    outline: 0;
    box-shadow: none;
    border: 1px solid var(--primary-color);
}

textarea {
    width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
    color: inherit;
}

a:visited,
a:hover,
a:focus {
    color: auto;
}

a:hover {
    color: var(--primary-color);
}

a:focus {
    outline: 0;
}

a:hover,
a:active {
    outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.navigation.posts-pagination,
.navigation.post-pagination {
    margin-top: 2.5rem;
    text-align: right;
    border-top: 2px solid rgba(var(--white-color-rgb), 0.1);
    padding-top: 2.5rem;
}

.post-navigation {
    border-top: 2px solid rgba(var(--white-color-rgb), 0.1);
    border-bottom: 2px solid rgba(var(--white-color-rgb), 0.1);
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    margin-top: 2.5rem;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}

.post-navigation .nav-previous {
    padding-right: 0.625rem;
}

.post-navigation .nav-next {
    padding-left: 0.625rem;
}

.nav-links::before,
.nav-links::after {
    content: "";
    display: table;
}

.nav-links::after {
    clear: both;
}

.nav-links .pagination-btn {
    font-size: 0.875rem;
    font-weight: 600;
    display: inline-block;
    vertical-align: middle;
    width: 2.1875rem;
    height: 2.1875rem;
    line-height: 2rem;
    text-align: center;
    border: 2px solid rgba(var(--white-color-rgb), 0.1);
    margin-right: 0.3125rem;
    color: rgba(var(--primary-color-rgb), 0.75);
}

.nav-links .pagination-btn:hover,
.nav-links .pagination-btn.current {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--white-color);
}

.post-navigation a {
    display: block;
    position: relative;
    letter-spacing: 0.5px;
    padding-left: 1.25rem;
}

.post-navigation .nav-next a {
    padding-left: 0;
    padding-right: 1.875rem 1.875rem;
}

.post-navigation a::before {
    content: "\f100";
    font-family: fontawesome;
    position: absolute;
    top: 0.625rem;
    left: 0;
}

.post-navigation .nav-next a::before {
    content: "\f101";
    left: auto;
    right: 0;
}

.post-navigation a:hover {
    color: var(--primary-color);
}

.post-navigation a span {
    display: block;
    font-size: 0.875rem;
    color: rgba(var(--white-color-rgb), 0.75);
    font-weight: 600;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(var(--white-color-rgb), 0.6);
    clip: auto !important;
    color: var(--primary-color);
    display: block;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 0.3125rem;
    line-height: normal;
    padding: 0.9375rem 1.4375rem 0.875rem;
    text-decoration: none;
    top: 0.3125rem;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
    outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
    margin-bottom: 1em;
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
    margin-bottom: 1em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1em;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clearfix:before,
.clearfix:after,
.aquarius-wrapper:before,
.aquarius-wrapper:after,
.page-content::before,
.page-content::after {
    content: "";
    display: table;
    table-layout: fixed;
}

.clearfix:after,
.aquarius-wrapper:after,
.page-content::after {
    clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
    margin: 0 0 2.5rem 0;
}

/* Make sure select elements fit in widgets. */
.widget select {
    max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
    display: block;
}

.hentry {
    margin: 0 0 1.5em;
}

.updated:not(.published) {
    display: none;
}

.single .byline,
.group-blog .byline {
    display: inline;
}

.page-content,
.entry-content,
.entry-summary {
    margin: 1.5em 0 0;
}

.page-links {
    clear: both;
    margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
/* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer {
    /* Theme Footer (when set to scrolling) */
    display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
    display: block;
}

/*--------------------------------------------------------------
# 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 embeds and iframes fit their containers. */
embed,
iframe,
object {
    max-width: 100%;
    width: 100%;
}

/*--------------------------------------------------------------
## 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;
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
}

.gallery-columns-2 .gallery-item {
    max-width: 50%;
}

.gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
    max-width: 25%;
}

.gallery-columns-5 .gallery-item {
    max-width: 20%;
}

.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}

.gallery-caption {
    display: block;
}

/* Define the pulse animation */
@keyframes pulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.2);
    }

    100% {
        transform: scale(1);
    }
}

@keyframes ldio-2wcorq5u4v1 {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

#wpadminbar {
    position: fixed;
    top: 0;
}

/*===================================
COMMON CSS
===================================*/
#wrapper {
    overflow: hidden;
    position: relative;
    z-index: 9;
}

.sr-only, 
.hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.d-none {
    display: none !important;
}

.slide-in-up, 
.slide-in-right {
    display: block;
    overflow: hidden;
}

.custom-word {
    display: inline-block;
}

.line {
    overflow: hidden;
    line-height: 1.3;
}

.line-outer {
    display: block;
    overflow: hidden;
}

.aquarius-wrapper {
    margin: 0 auto;
    max-width: 1240px;
    padding: 0 0.9375rem;
}

.container-fluid {
    max-width: 100%;
}

.section-subtitle {
    margin: 0 0 11.25rem;
}

.section-title {
    margin: 0;
    font-size: clamp(1.875rem, 3vw, 50px);
}

.hs-mb {
    margin-bottom: 1.5rem !important;
}

.txt-bold {
    font-family: var(--schneiderLibrettoMedium)!important;
    font-weight: 700 !important;
}

.txt-italic {
    font-family: var(--schneiderLibrettoItalic) !important;
}

.txt-no-italic {
    font-family: var(--schneiderLibrettoRegular) !important;
}

.txt-underlined {
    position: relative;
}

.txt-underlined::before {
    content: "";
    background: var(--primary-color);
    width: 100%;
    height: 0.25rem;
    position: absolute;
    bottom: 0.5625rem;
    left: 0;
}

.txt-sec-color {
    color: var(--primary-color) !important;
}

.txt-sec-color.txt-underlined::before {
    background: var(--secondary-color);
}

.page-header, 
.woocommerce-account .entry-header {
    margin-bottom: 3.75rem;
}

.page-header.hs-inline-desc {
    display: flex;
    flex-wrap: wrap;
}

.page-header .sub-title {
    font-size: 1rem;
    margin-bottom: 0.625rem;
}

.page-header.hs-inline-desc .sub-title {
    flex-basis: 100%;
    max-width: 100%;
}

.page-header .page-title, 
.woocommerce-account .entry-header .entry-title {
    margin: 0;
    font-size: 2.8125rem;
}

.page-header.hs-inline-desc .page-title {
    flex: 1;
}

.page-header .page-content {
    font-size: 1.5rem;
}

.page-header .page-content p:first-child {
    text-indent: 14.0625rem;
}

.page-header.hs-inline-desc .page-content {
    flex: 2;
    margin-top: 1.25rem;
}

.page-header .page-content > *:last-child {
    margin-bottom: 0;
}

.count-animation {
    overflow: hidden;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
}

.line-animation {
    scale: 0 1;
    overflow: hidden;
}

.img-anim {
    position: relative;
    overflow: hidden;
}

.img-anim img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.decent-hover {
    position: relative;
}

.decent-hover::before, 
.decent-hover::after {
    content: "";
    background: var(--primary-color);
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right;
    -webkit-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
}

.decent-hover::after {
    bottom: -2px;    
}

.decent-hover:hover::before, 
.decent-hover:hover::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
}

.decent-hover:hover::before {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
}

.decent-hover::before,
.decent-hover:hover::after {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s;
}

body.nav_active, 
body.filter_active {
    overflow: hidden;
    padding-inline-end: var(--scroll-width);
}

.backdrop-overlay {
    position: fixed;
    inset: 0;
    z-index: 999;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity ease 0.3s, visibility ease 0.3s;
    transition: opacity ease 0.3s, visibility ease 0.3s;
}

.nav_active .backdrop-overlay {
    opacity: 1;
    visibility: visible;
    background: none;
    pointer-events: auto;
}

/*========================================
HEADER
=======================================*/
.header-top {
    padding: 2.5rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    position: relative;
    -webkit-transition: padding ease 0.3s;
    transition: padding ease 0.3s;
}

.sticky-wrap-header-top.fixed-position .header-top {
    padding-block: 1.25rem;
    min-height: 4.375rem;
    background: var(--secondary-color);
    z-index: 9999;
}

body:not(.home) .sticky-wrap-header-top:not(.fixed-position) .header-top::after {
    content: "";
    background: var(--primary-color);
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 2.5rem;
    right: 2.5rem;
}

/* .site-header.sticky .logo-holder {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 0;
    max-width: 8.4375rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.site-header.sticky .logo-holder a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
} */

.header-top .sticky-logo {
    max-width: 8.4375rem;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: opacity ease 0.3s, visibility ease 0.3s;
    transition: opacity ease 0.3s, visibility ease 0.3s;
}

.home .header-top .sticky-logo {
    opacity: 0;
    visibility: hidden;
}

.home .sticky-wrap-header-top.fixed-position .header-top .sticky-logo {
    opacity: 1;
    visibility: visible;
}

.header-top .menu-tgl {
    background: none;
    border: none;
    border-radius: 0;
    padding: 0;
    font-size: 0.875rem;
    text-transform: uppercase;
    position: relative;
}

.header-top #nav {
    position: fixed;
    top: 0;
    left: 0;
    background: var(--secondary-color);
    max-width: 28.125rem;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 9999;
    box-shadow: 0 0 0.9375rem rgba(var(--black-color-rgb), 0.1);
    visibility: hidden;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: visibility ease 0.3s, transform ease 0.3s;
    transition: visibility ease 0.3s, transform ease 0.3s;
}

.nav_active .header-top #nav {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.header-top #nav .close {
    position: relative;
    margin-top: 1.875rem;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 1.875rem;
    width: 2.5rem;
    height: 2.5rem;
    background: var(--primary-color);
    border: none;
    border-radius: 100%;
    font-size: 0;
}

.header-top #nav .close::before, 
.header-top #nav .close::after {
    content: "";
    background: var(--secondary-color);
    width: 1.25rem;
    height: 1px;
    position: absolute;
    inset: 0;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.header-top #nav .close::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#nav ul {
    margin: 1.25rem 0 0;
    padding: 0;
    list-style: none;
}

#nav ul.primary-menu {
    padding-inline: 1.875rem;
}

#nav ul li {
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
    font-size: 1.25rem;
}

#nav ul li a {
    display: block;
    padding: 1.125rem 0 0.9375rem 0;
    border-bottom: 1px solid rgba(var(--primary-color-rgb), 0.15);
}

#nav ul li .submenu-tgl-btn {
    position: absolute;
    top: 0;
    right: 0;
    height: 3.75rem;
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
    width: 1.875rem;
}

#nav ul li .submenu-tgl-btn.active i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

#nav ul li.menu-item-has-children > a {
    padding-right: 2.1875rem;
}

#nav ul li .sub-menu {
    margin: 0;
    display: none;
}

#nav ul .sub-menu > li {
    font-size: 80%;
    padding-left: 0.9375rem;
}

.header-top .header-utilities {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.header-top .header-utilities li {
    margin: 0;
    display: block;
    font-size: 0.875rem;
    text-transform: uppercase;
}

.header-top .header-utilities li:not(:last-child) {
    margin-right: 4.375rem;
}

.logo-holder {
    padding: 0 2.5rem 2.5rem;
    margin: 0 auto;
    max-width: 100%;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

body:not(.home) .site-header > .logo-holder {
    display: none;
}

.logo-holder .logo-title {
    margin: 0;
}

/*======================================
MAIN BANNER
======================================*/
.main-banner {
    margin-bottom: 1.875rem;
    padding-inline: 2.5rem;
}

.main-banner .banner-item {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
}

.main-banner .banner-item .banner-img {
    flex-basis: 45.97%;
    max-width: 45.97%;
}

.main-banner .banner-item .banner-img img {
    width: 100%;
}

.main-banner .banner-item .banner-content {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.main-banner .banner-item .banner-title-holder {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.main-banner .banner-item .banner-title {
    margin: 0 0 1.5rem;
    font-size: 1.5rem;
}

.main-banner .banner-item .banner-desc {
    margin: auto 0 0 auto;
    max-width: 13.375rem;
    font-size: 0.75rem;
    line-height: 1.25;
}

.main-banner .banner-item .banner-desc p:last-child {
    margin: 0;
}

/*=======================================
OBJECTS SECTION
=======================================*/
.object-section {
    margin-bottom: 4.375rem;
    padding-inline: 2.5rem;
}

.object-section .section-header {
    margin-bottom: 8.125rem;
    display: flex;
    flex-wrap: wrap;
    font-family: var(--schneiderLibrettoLight);
    font-weight: 300;
    font-size: 6.25rem;
    letter-spacing: -0.25px;
    line-height: 1.2;
}

.object-section .section-header .section-count {
    display: block;
    flex-basis: 20rem;
    max-width: 20rem;
    font-size: 80%;
    line-height: 1;
}

.object-section .section-header .section-title {
    font: inherit;
    line-height: inherit;
    flex: 1;
}

.object-section .section-content {
    padding-left: 20rem;
    margin-bottom: 6.875rem;
    max-width: 68.625rem;
    font-size: 1.5rem;
    line-height: 1.2;
}

.object-section .section-content p:last-child {
    margin: 0;
}

.object-section .section-content .section-subtile {
    font-family: var(--schneiderLibrettoLightItalic);
    font-size: 0.75rem;
    letter-spacing: -0.25px;
    vertical-align: 0.5rem;
    max-width: 11.875rem;
    display: inline-block;
    width: 100%;
}

.object-section .object-grid {
    display: flex;
    flex-wrap: wrap;
}

.object-section .object-grid .object-menu {
    flex-basis: 20rem;
    max-width: 20rem;
}

.object-section .object-grid ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1rem;
    letter-spacing: -0.25px;
    max-width: 13.1875rem;
}

.object-section .object-grid ul li {
    margin: 0;
}

.object-section .object-grid ul li a {
    display: block;
    padding-bottom: 0.5rem;
    padding-right: 1.5625rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid var(--primary-color);
    position: relative;
}

.object-section .object-grid ul li.obj-all {
    font-family: var(--schneiderLibrettoMedium);
}

.object-section .object-grid ul li a::after {
    content: "";
    font-family: var(--brutGrotesqueLight);
    background-color: var(--primary-color);
    -webkit-mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    position: absolute;
    top: 0.3125rem;
    right: 0.3125rem;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
    width: 1em;
    height: 1em;
    font-size: 0.75rem;
}

.object-section .object-grid ul li a:hover::after {
    right: 0;
}

.object-section .object-grid ul li.obj-all a::after {
    display: none;
}

.object-section .object-grid ul li a {
    padding-right: 0;
}

.object-section .object-img-holder {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    gap: 2.5rem;
}

.object-section .object-img-holder .object-img.big {
    flex-basis: calc(69.47% - 2.5rem);
    max-width: calc(69.47% - 2.5rem);
}

.object-section .object-img-holder .object-img img {
    width: 100%;
}

.object-section .object-img-holder .object-img.small {
    flex-basis: 30.53%;
    max-width: 30.53%;
}

.object-section .object-img-holder .object-img figcaption {
    font-size: 1rem;
    line-height: 1.2;
    margin-bottom: 0.625rem;
}

/*=======================================
STUDIO SECTION
=======================================*/
.studio-section {
    margin-bottom: 10rem;
    padding-inline: 2.5rem;
}

.studio-section .section-header {
    margin-bottom: 8.125rem;
    display: flex;
    flex-wrap: wrap;
    font-family: var(--schneiderLibrettoLight);
    font-weight: 300;
    font-size: 6.25rem;
    letter-spacing: -0.25px;
    line-height: 1.2;
}

.studio-section .section-header .section-count {
    display: block;
    flex-basis: 20rem;
    max-width: 20rem;
    font-size: 80%;
    line-height: 1;
}

.studio-section .section-header .section-title {
    font: inherit;
    line-height: inherit;
    flex: 1;
}

.studio-section .section-content {
    padding-right: 20rem;
    padding-left: 20rem;
    margin-bottom: 6.875rem;
    max-width: 81.5rem;
    font-size: 1.5rem;
    line-height: 1.2;
    display: flex;
    flex-wrap: wrap;
}

.studio-section .section-content p:last-child {
    margin: 0;
}

.studio-section .section-content .section-subtile {
    font-family: var(--schneiderLibrettoLightItalic);
    font-size: 0.75rem;
    letter-spacing: -0.25px;
    vertical-align: 0.5rem;
    display: inline-block;
    flex-basis: 17.5rem;
    max-width: 17.5rem;
}

.studio-section .section-content .section-desc {
    flex: 1;
}

.studio-section .studio-grid {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    align-items: flex-end;
}

.studio-section .studio-grid .studio-menu {
    flex-basis: 21.25rem;
    max-width: 21.25rem;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.studio-section .studio-grid ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1rem;
    letter-spacing: -0.25px;
    max-width: 13.1875rem;
    width: 100%;
}

.studio-section .studio-grid ul li {
    margin: 0;
}

.studio-section .studio-grid ul li a {
    display: block;
    padding-bottom: 0.5rem;
    padding-right: 1.5625rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid var(--primary-color);
    position: relative;
}

.studio-section .studio-grid ul li.studio-all {
    font-family: var(--schneiderLibrettoMedium);
}

.studio-section .studio-grid ul li a::after {
    content: "";
    font-family: var(--brutGrotesqueLight);
    background-color: var(--primary-color);
    -webkit-mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    position: absolute;
    top: 0.3125rem;
    right: 0.3125rem;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
    width: 1em;
    height: 1em;
    font-size: 0.75rem;
}

.studio-section .studio-grid ul li a:hover::after {
    right: 0;
}

.studio-section .studio-grid ul li.studio-all a::after {
    display: none;
}

.studio-section .studio-grid ul li a {
    padding-right: 0;
}

.studio-section .studio-img-holder {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    gap: 2.5rem;
}

.studio-section .studio-img-holder .studio-img.big {
    flex-basis: calc(69.47% - 2.5rem);
    max-width: calc(69.47% - 2.5rem);
}

.studio-section .studio-img-holder .studio-img img {
    width: 100%;
}

.studio-section .studio-img-holder .studio-img.small {
    flex-basis: 30.53%;
    max-width: 30.53%;
}

.studio-section .studio-img-holder .studio-img figcaption {
    font-size: 1rem;
    line-height: 1.2;
    margin-bottom: 0.625rem;
}

/*=======================================
WORKSHOPS SECTION
=======================================*/
.workshops-section {
    margin-bottom: 10rem;
    padding-inline: 2.5rem;
}

.workshops-section .section-header {
    margin-bottom: 8.125rem;
    display: flex;
    flex-wrap: wrap;
    font-family: var(--schneiderLibrettoLight);
    font-weight: 300;
    font-size: 6.25rem;
    letter-spacing: -0.25px;
    line-height: 1.2;
}

.workshops-section .section-header .section-count {
    display: block;
    flex-basis: 20rem;
    max-width: 20rem;
    font-size: 80%;
    line-height: 1;
}

.workshops-section .section-header .section-title {
    font: inherit;
    line-height: inherit;
    flex: 1;
}

.workshops-section .section-content {
    padding-right: 6rem;
    padding-left: 8rem;
    font-size: 1.5rem;
    line-height: 1.2;
    flex: 1;
}

.workshops-section .section-content p:last-child {
    margin: 0;
}

.workshops-section .section-content .section-subtile {
    font-family: var(--schneiderLibrettoLightItalic);
    font-size: 0.75rem;
    letter-spacing: -0.25px;
    vertical-align: 0.5rem;
    max-width: 11.875rem;
    display: inline-block;
    width: 100%;
}

.workshops-section .workshops-grid {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 7.5rem;
}

.workshops-section .workshops-grid .workshops-menu {
    flex-basis: 21.25rem;
    max-width: 21.25rem;
    display: flex;
    flex-direction: column;
}

.workshops-section .workshops-grid ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1rem;
    letter-spacing: -0.25px;
    max-width: 13.1875rem;
    width: 100%;
}

.workshops-section .workshops-grid ul li {
    margin: 0;
}

.workshops-section .workshops-grid ul li a {
    display: block;
    padding-bottom: 0.5rem;
    padding-right: 1.5625rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid var(--primary-color);
    position: relative;
}

.workshops-section .workshops-grid ul li.workshops-all {
    font-family: var(--schneiderLibrettoMedium);
}

.workshops-section .workshops-grid ul li a::after {
    content: "";
    font-family: var(--brutGrotesqueLight);
    background-color: var(--primary-color);
    -webkit-mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    position: absolute;
    top: 0.3125rem;
    right: 0.3125rem;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
    width: 1em;
    height: 1em;
    font-size: 0.75rem;
}

.workshops-section .workshops-grid ul li a:hover::after {
    right: 0;
}

.workshops-section .workshops-grid ul li.workshops-all a::after {
    display: none;
}

.workshops-section .workshops-grid ul li a {
    padding-right: 0;
}

.workshops-section .workshops-img-holder {
    display: flex;
    flex-wrap: wrap;
}

.workshops-section .workshops-img-holder .workshops-img img {
    width: 100%;
}

.workshops-section .workshops-img-holder .workshops-img.big {
    flex-basis: 62%;
    max-width: 62%;
    padding-right: 7.5rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.875rem;
}

.workshops-section .workshops-img-holder .workshops-img.big figure {
    flex-basis: 65%;
    max-width: 65%;
}

.workshops-section .workshops-img-holder .workshops-img.big .workshops-fig-content {
    flex: 1;
    margin-top: 1.5625rem;
    font-size: 1rem;
    letter-spacing: -0.25px;
}

.workshops-section .workshops-img-holder .workshops-img.big .workshops-fig-content p:last-child {
    margin-bottom: 0;
}

.workshops-section .workshops-img-holder .workshops-img.big + .workshops-img.small {
    order: 3;
    padding-left: 0.625rem;
}

.workshops-section .workshops-img-holder .workshops-img.small {
    flex-basis: 19%;
    max-width: 19%;
}

.workshops-section .workshops-img-holder .workshops-img.small:last-child {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.workshops-section .workshops-img-holder .workshops-img figcaption {
    font-size: 1rem;
    line-height: 1.2;
    margin-bottom: 0.625rem;
}

/*=======================================
STORY SECTION
=======================================*/
.story-section {
    margin-bottom: 5rem;
    padding-inline: 2.5rem;
}

.story-section .section-header {
    margin-bottom: 5.625rem;
    display: flex;
    flex-wrap: wrap;
    font-family: var(--schneiderLibrettoLight);
    font-weight: 300;
    font-size: 6.25rem;
    letter-spacing: -0.25px;
    line-height: 1.2;
}

.story-section .section-header .section-count {
    display: block;
    flex-basis: 20rem;
    max-width: 20rem;
    font-size: 80%;
    line-height: 1;
}

.story-section .section-header .section-title {
    font: inherit;
    line-height: inherit;
    flex: 1;
}

.story-section .section-img {
    margin-bottom: 5rem;
}

.story-section .section-img img {
    width: 100%;
}

.story-section .section-content {
    margin-bottom: 8.125rem;
    font-size: 2.25rem;
    line-height: 1.2;
}

.story-section .section-content p:last-child {
    margin: 0;
}

.story-section .section-content .section-subtile {
    font-family: var(--schneiderLibrettoLightItalic);
    font-size: 0.75rem;
    letter-spacing: -0.25px;
    vertical-align: 0.5rem;
    max-width: 11.875rem;
    display: inline-block;
    width: 100%;
}

.story-section .story-grid {
    display: flex;
    flex-wrap: wrap;
}

.story-section .story-grid .story-menu {
    flex-basis: 21.25rem;
    max-width: 21.25rem;
    display: flex;
    flex-direction: column;
}

.story-section .story-grid ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1rem;
    letter-spacing: -0.25px;
    max-width: 13.1875rem;
    width: 100%;
}

.story-section .story-grid ul li {
    margin: 0;
}

.story-section .story-grid ul li a {
    display: block;
    padding-bottom: 0.5rem;
    padding-right: 1.5625rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid var(--primary-color);
    position: relative;
}

.story-section .story-grid ul li.story-all {
    font-family: var(--schneiderLibrettoMedium);
}

.story-section .story-grid ul li a::after {
    content: "";
    font-family: var(--brutGrotesqueLight);
    background-color: var(--primary-color);
    -webkit-mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    mask-image: url('data:image/svg+xml;utf-8, <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 513 513" style="enable-background:new 0 0 513 513;" xml:space="preserve"><path d="M256.5,0L513,256.5L256.5,513l-45-45L390,288H0v-63h390L211.5,45L256.5,0z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    position: absolute;
    top: 0.3125rem;
    right: 0.3125rem;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
    width: 1em;
    height: 1em;
    font-size: 0.75rem;
}

.story-section .story-grid ul li a:hover::after {
    right: 0;
}

.story-section .story-grid ul li.story-all a::after {
    display: none;
}

.story-section .story-grid ul li a {
    padding-right: 0;
}

.story-section .story-content {
    flex: 1;
}

.story-section .story-content .story-desc {
    max-width: 48rem;
    margin-left: auto;
    column-count: 2;
    font-size: 1rem;
    column-gap: 2.1875rem;
}

/*=====================================
SITE FOOTER
=====================================*/
.site-footer {
    padding: 0 2.5rem;
}

.footer-top {
    padding-top: 2.8125rem;
    border-top: 1px solid var(--primary-color);
    display: flex;
    flex-wrap: wrap;
}

.footer-top .footer-newsletter {
    flex: 1;
    padding-top: 1.875rem;
    padding-right: 1.875rem;
}

.footer-newsletter .newsletter-title {
    margin: 0 0 0.625rem;
    font-size: 1rem;
}

.footer-newsletter .newsletter-form-holder {
    max-width: 19.6875rem;
}

.footer-newsletter .newsletter-form-holder .input-row {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--primary-color);
}

.footer-newsletter .newsletter-form-holder .input-wrap {
    flex: 1;
}

.footer-newsletter .newsletter-form-holder input.form-control {
    background: none;
    border: none;
    padding: 1.25rem 0 0 0;
}

.footer-newsletter .newsletter-form-holder input.form-control::placeholder {
    color: var(--primary-color);
    opacity: 1;
}

.footer-newsletter .newsletter-form-holder button.btn-submit {
    background: none;
    border: none;
    padding: 1.25rem 0 0 0;
    width: 2.5rem;
    min-width: auto;
    height: 3.75rem;
    color: var(--primary-color);
    text-align: right;
    font-size: 1.125rem;
    font-family: var(--brutGrotesqueLight);
}

.footer-newsletter .newsletter-form-holder button.btn-submit svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
}

.footer-newsletter .newsletter-form-holder .submitting button.btn-submit svg {
    opacity: 0;
    visibility: hidden;
}

.footer-newsletter .newsletter-form-holder .submitting button.btn-submit {
    position: relative;
    cursor: not-allowed;
}

.footer-newsletter .newsletter-form-holder .submitting button.btn-submit::before {
    content: "";
    border-width: 3px;
    border-style: solid;
    border-color: var(--primary-color) var(--primary-color) transparent transparent;
    width: 1.25rem;
    height: 1.25rem;
    position: absolute;
    inset: 1.25rem 0 0 auto;
    margin: auto;
    border-radius: 100%;
    -webkit-animation: spin-full 0.5s linear 0s infinite forwards;
    animation: spin-full 0.5s linear 0s infinite forwards;
}

@keyframes spin-full {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.footer-newsletter .newsletter-form-holder .input-wrap .wpcf7-not-valid-tip {
    font-size: 1rem;
    position: absolute;
    top: calc(100% + 1rem);
}

.footer-newsletter .newsletter-form-holder .wpcf7-response-output {
    margin-inline: 0;
    margin-bottom: 0;
    font-size: 1rem;
    margin-top: 2.5rem;
    text-align: left;
}

.footer-top .footer-contact {
    padding-right: 1.875rem;
    flex-basis: 25%;
    max-width: 25%;
    font-size: 1rem;
}

.footer-top .footer-contact p:last-child {
    margin-bottom: 0;
}

.footer-top .footer-links {
    flex-basis: 11%;
    max-width: 11%;
}

.footer-top .footer-links .usefull-links {
    margin-bottom: 1.5rem;
}

.footer-top .footer-title {
    margin: 0 0 5px;
    font-family: var(--schneiderLibrettoMedium);
    font-size: 16px;
}

.footer-top .footer-links ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 16px;
}

.footer-top a:hover {
    text-decoration: underline;
}

.footer-bottom {
    margin-top: 12.5rem;
    margin-bottom: 2.5rem;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}

.footer-bottom .footer-logo {
    flex: 1;
}

.footer-bottom .footer-logo img {
    max-width: 15.5rem;
}

.footer-bottom .copyright {
    padding-right: 5.625rem;
    font-size: 1rem;
}

/*===========================================
DEFAULT PAGE
===========================================*/
.page-template-default #primary {
    padding-inline: 2.5rem;
}

.page-template-default article {
    margin-bottom: 5rem;
}

/*=========================================
CATEGORY PAGE
=========================================*/
body.filter_active .backdrop-overlay {
    opacity: 1;
    visibility: visible;
    background: rgba(var(--black-color-rgb), 0.3);
}

.site-main .woocommerce {
    margin-top: 1.5625rem;
}
.site-main .woocommerce .woocommerce {
    margin: 0;
}

.shop .site-main .woocommerce, 
.archive .site-main .woocommerce, 
.page-template-page-workshops .woocommerce, 
.blog .site-main, 
.archive .site-main:not(.woocommerce) {
    padding-inline: 2.5rem;
}

.shop .site-main .woocommerce .woocommerce, 
.archive .site-main .woocommerce  .woocommerce, 
.page-template-page-workshops .woocommerce .woocommerce, 
.blog .site-main .site-main, 
.archive .site-main:not(.woocommerce) .site-main {
    padding-inline: 0;
}

.woocommerce-breadcrumb {
    display: none;
}

.woocommerce-products-header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1.25rem;
    margin-bottom: 4.6875rem;
}

.woocommerce-products-header .page-title {
    margin: 0;
    flex-basis: 33.33%;
    max-width: 33.33%;
    font-size: 2.8125rem;
    letter-spacing: -1px;
}

.woocommerce-products-header .term-description, 
.woocommerce-products-header .page-description {
    flex: 1;
    max-width: 18.125rem;
    font-size: 1rem;
}

.woocommerce-products-header .term-description .page-description {
    max-width: 100%;
    flex: initial;
}

.woocommerce-products-header .term-description > *:last-child {
    margin-bottom: 0;
}

.woocommerce-filter {
    border-bottom: 1px solid var(--primary-color);
    margin-bottom: 2.5rem;
    text-align: right;
}

.woocommerce-filter .filter-button {
    background: none;
    border: none;
    padding: 0 0 0.3125rem;
    font-size: 1rem;
    letter-spacing: -0.25px;
}

.woocommerce-filter .filter-button .filter-icon {
    display: inline-block;
    margin-right: 0.625rem;
}

.woo-filter-popup {
    padding: 2.5rem 0;
    position: fixed;
    top: 0;
    right: 0;
    background: var(--secondary-color);
    max-width: 28.125rem;
    width: 100%;
    height: 100%;
    z-index: 9999;
    box-shadow: 0 0 0.9375rem rgba(var(--black-color-rgb), 0.1);
    visibility: hidden;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: visibility ease 0.3s, transform ease 0.3s;
    transition: visibility ease 0.3s, transform ease 0.3s;
}

body.filter_active .woo-filter-popup {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.woo-filter-popup .close-popup {
    position: relative;
    margin: 0 0 2rem 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    background: var(--primary-color);
    border: none;
    border-radius: 100%;
    font-size: 0;
}

.woo-filter-popup .close-popup::before, 
.woo-filter-popup .close-popup::after {
    content: "";
    background: var(--secondary-color);
    width: 1.25rem;
    height: 1px;
    position: absolute;
    inset: 0;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.woo-filter-popup .close-popup::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.woo-filter-popup .woo-filter-options {
    max-height: calc(100% - 4.5rem);
    overflow-x: hidden;
    overflow-y: auto;
    padding-inline: 2.5rem;
    scrollbar-color: var(--primary-color) transparent;
    scrollbar-width: thin;
}

.woo-filter-options .woo-filter-item {
    border-bottom: 1px solid rgba(var(--primary-color-rgb), 0.3);
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem;
    overflow: hidden;
    position: relative;
}

.woo-filter-options .woo-filter-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.woo-filter-options .woo-filter-item .woo-filter-title-holder {
    display: flex;
    flex-direction: column;
}

.woo-filter-options .woo-filter-item .woo-filter-item-title {
    background: none;
    border: none;
    padding: 0;
    display: block;
    width: 100%;
    text-align: right;
    font-size: 1.25rem;
    position: relative;
}

.woo-filter-options .woo-filter-item .woo-filter-item-title::after {
    content: "\207A";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 3rem;
    line-height: 0.9;
}

.woo-filter-options .woo-filter-item.open .woo-filter-item-title::after {
    content: "\207B";
}

.woo-filter-options .woo-filter-item .active-value {
    margin-top: 0.3125rem;
    padding-right: 0.1875rem;
    opacity: 0.7;
    font-size: 0.875rem;
    font-family: var(--schneiderLibrettoItalic);
}

.woo-filter-options .woo-filter-item .active-value:empty {
    display: none;
}

.woo-filter-options .woo-filter-item ul {
    margin: 0;
    padding: 0.625rem 0 0;
    list-style: none;
    display: none;
}

.woo-filter-options .woo-filter-item ul li {
    margin-top: 0.625rem;
    margin-bottom: 0;
    display: block;
    font-size: 1rem;
}

.nav-list .nav-item:has(.nav-link[data-value="menu_order"]) {
    display: none;
}

.woo-filter-options .woo-filter-item ul li a {
    display: inline-block;
    position: relative;
    padding-right: 1.875rem;
}

.woo-filter-options .woo-filter-item ul li a::before {
    content: "";
    border: 1px solid rgba(var(--primary-color-rgb), 0.5);
    width: 1.25rem;
    height: 1.25rem;
    position: absolute;
    top: 0;
    right: 0;
    background: var(--secondary-color);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    line-height: 0;
}

.woo-filter-options .woo-filter-item ul li a.active::before {
    content: "\2713";
}

.shop .products, 
.archive .products, 
.post-holder {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-inline: -0.625rem;
    counter-reset: product-count;
}

.shop .products .product, 
.archive .products .product, 
.post-holder .post {
    flex-basis: 33.33%;
    max-width: 33.33%;
    padding-inline: 0.625rem;
    margin-bottom: 4.6875rem;
    counter-increment: product-count;
}

.shop .products .product::before, 
.archive .products .product::before, 
.post-holder .post::before {
    content: counter(product-count, decimal-leading-zero)".";
    margin-bottom: 0.625rem;
    display: block;
    font-size: 1rem;
}

.shop .products .product.product-small.align-right::before, 
.archive .products .product.product-small.align-right::before {
    max-width: 66%;
    margin-left: auto;
}

.shop .products .product.product-small, 
.archive .products .product.product-small, 
.shop .products .product.product-big, 
.archive .products .product.product-big {
    flex-basis: 50%;
    max-width: 50%;
}

.shop .products .product.product-small > *, 
.archive .products .product.product-small > * {
    max-width: 66%;
}

.shop .products .product.product-small.align-right > *, 
.archive .products .product.product-small.align-right > * {
    margin-left: auto;
}

.shop .products .product .product-img, 
.archive .products .product .product-img, 
.post-holder .post .post-img {
    margin-bottom: 0.625rem;
}

.shop .products .product .product-img a, 
.archive .products .product .product-img a, 
.post-holder .post .post-img a {
    display: block;
}

.shop .products .product .product-img img, 
.archive .products .product .product-img img, 
.post-holder .post .post-img img {
    aspect-ratio: 2/3;
    width: 100%;
    object-fit: cover;
}

.shop .products .product .product-title-holder, 
.archive .products .product .product-title-holder, 
.post-holder .post .post-title-holder {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.3125rem;
}

.shop .products .product .product-title-holder > a, 
.archive .products .product .product-title-holder > a, 
.post-holder .post .post-title-holder > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.3125rem;
    flex: 1;
    font-size: 1rem;
    line-height: 1;
    letter-spacing: -0.25px;
}

.shop .products .product .product-title-holder .woo-product-cat, 
.archive .products .product .product-title-holder .woo-product-cat, 
.post-holder .post .post-title-holder .woo-product-cat {
    flex: 1;
    text-align: right;
    font-size: 0.875rem;
    font-family: var(--schneiderLibrettoLightItalic);
    letter-spacing: -0.25px;
}

.shop .products .product .product-title-holder .woocommerce-loop-product__title, 
.archive .products .product .product-title-holder .woocommerce-loop-product__title, 
.post-holder .post .post-title-holder .woocommerce-loop-post__title {
    font: inherit;
    margin: 0;
}

.shop .products .product .price, 
.archive .products .product .price {
    display: none;
    font-size: 1rem;
    margin-top: 0.625rem;
}

.shop .products .product .addCart-btn-holder, 
.archive .products .product .addCart-btn-holder {
    margin-top: 1.25rem;
    display: none;
}

.shop .products .product .addCart-btn-holder .button, 
.archive .products .product .addCart-btn-holder .button {
    background: none;
    border: 1px solid var(--primary-color);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 0.3125rem 0.9375rem;
    min-height: 2.8125rem;
    font-size: 1rem;
    text-transform: capitalize;
}

.shop .products .product .addCart-btn-holder .button:not(.disabled):not(:disabled):hover, 
.archive .products .product .addCart-btn-holder .button:not(.disabled):not(:disabled):hover {
    background: var(--primary-color);
    color: var(--secondary-color);
}

.shop .products .product .addCart-btn-holder .button.disabled, 
.archive .products .product .addCart-btn-holder .button.disabled, 
.shop .products .product .addCart-btn-holder .button:disabled, 
.archive .products .product .addCart-btn-holder .button:disabled {
    background: var(--primary-color);
    color: var(--secondary-color);
    opacity: 0.5;
    pointer-events: none;
}

.woocommerce-pagination {
    margin: 0 0 4.6875rem;
}

.woocommerce-pagination ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0.3125rem;
}

.woocommerce-pagination ul li {
    margin: 0;
    font-size: 1.25rem;
}

.woocommerce-pagination ul li a, 
.woocommerce-pagination ul li span {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 2.25rem;
    height: 2.25rem;
}

.woocommerce-pagination ul li:has(.prev), 
.woocommerce-pagination ul li:has(.next) {
    font-size: 1.5rem;
}

.woocommerce-pagination ul li a:hover, 
.woocommerce-pagination ul li span {
    background: rgba(var(--primary-color-rgb), 0.07);
}

/*========================================
SINGLE PRODUCT & CLASS
========================================*/
.single-product .site-main .woocommerce, 
.single-class .site-main .woocommerce {
    margin-bottom: 5.9375rem;
}

.single-product .woocommerce-notices-wrapper {
    padding: 0 2.5rem;
}

.single-product .woocommerce-message {
    margin: 0 0 1.5rem;
    padding: 1rem 1.5rem;
    font-size: 1.125rem;
    font-family: var(--schneiderLibrettoItalic);
    background: rgba(var(--primary-color-rgb), 0.1);
    outline: none;
}

.single-product .woocommerce-notices-wrapper .woocommerce-error {
    margin: 0 0 1.5rem;
    padding: 1rem 1.5rem;
    list-style: none;
    background: rgba(var(--primary-color-rgb), 0.1);
    font-size: 1.125rem;
    font-family: var(--schneiderLibrettoItalic);
    outline: none;
}

.single-product .woocommerce-notices-wrapper .woocommerce-error li {
    display: block;
    position: relative;
    padding-left: 0.75rem;
}

.single-product .woocommerce-notices-wrapper .woocommerce-error li::before {
    content: "";
    background: var(--primary-color);
    width: 5px;
    height: 5px;
    border-radius: 100%;
    position: absolute;
    top: 8px;
    left: 0;
}

.single-product .woocommerce-message .button, 
.single-product .woocommerce-notices-wrapper .woocommerce-error .button {
    text-decoration: underline;
    display: inline-block;
    font-weight: 600;
    letter-spacing: 1px;
    outline: none;
}

.single-product .single-product-grid, 
.single-class .single-product-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
}

body.single-product:not(.home) .sticky-wrap-header-top:not(.fixed-position) .header-top::after, 
body.single-class:not(.home) .sticky-wrap-header-top:not(.fixed-position) .header-top::after {
    display: none;
}

.single-product .single-product-summary, 
.single-class .single-product-summary {
    max-width: calc(30.597% + 2.5rem);
    flex-basis: calc(30.597% + 2.5rem);
    padding-left: 2.5rem;
    display: flex;
    flex-direction: column;
}

.single-product .single-product-image-holder, 
.single-class .single-product-image-holder {
    flex: 1;
    max-width: 100%;
}

.single-product .single-product-summary .single-product-summary-inner, 
.single-class .single-product-summary .single-product-summary-inner {
    border-top: 1px solid var(--primary-color);
    padding-top: 1.25rem;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.single-product .single-product-summary .single-product-header, 
.single-class .single-product-summary .single-product-header {
    flex: 1;
}

.single-product .single-product-summary  .product-cat, 
.single-class .single-product-summary  .product-cat {
    display: block;
    font-size: 1rem;
    margin-bottom: 0.625rem;
}

.single-product .single-product-summary .product-title, 
.single-class .single-product-summary .product-title {
    margin: 0;
    font-size: 2.8125rem;
}

.single-product .single-product-summary .price, 
.single-product .single-product-summary .stock-status, 
.single-class .single-product-summary .price, 
.single-class .single-product-summary .stock-status {
    margin: 0;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--primary-color);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-size: 1.0625rem;
}

.single-product .single-product-summary .stock-status, 
.single-class .single-product-summary .stock-status {
    justify-content: flex-end;
}

.single-product .single-product-summary .shop-attributes-wrap table,
.single-class .single-product-summary .shop-attributes-wrap table {
    margin: 0;
    font-size: 1.0625rem;
}

.single-product .single-product-summary .shop-attributes-wrap table tr,
.single-class .single-product-summary .shop-attributes-wrap table tr {
    background: none;
    border-bottom: 1px solid var(--primary-color);
}

.single-product .single-product-summary .shop-attributes-wrap table th,
.single-product .single-product-summary .shop-attributes-wrap table td,
.single-class .single-product-summary .shop-attributes-wrap table th,
.single-class .single-product-summary .shop-attributes-wrap table td {
    padding: 0.8125rem 0;
    background: none;
    color: var(--primary-color);
    font-weight: normal;
    border: none;
    vertical-align: top;
}

.single-product .single-product-summary .shop-attributes-wrap table td,
.single-class .single-product-summary .shop-attributes-wrap table td {
    text-align: right;
}

.single-product .single-product-summary .shop-attributes-wrap table select,
.single-class .single-product-summary .shop-attributes-wrap table select {
    display: none;
}

.single-product .single-product-summary .shop-attributes-wrap table ul,
.single-class .single-product-summary .shop-attributes-wrap table ul,
.single-product .single-product-summary .shop-attributes-wrap table p,
.single-class .single-product-summary .shop-attributes-wrap table p {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    text-align: right;
    justify-content: flex-end;
}

.single-product .single-product-summary .shop-attributes-wrap table ul li,
.single-class .single-product-summary .shop-attributes-wrap table ul li {
    margin: 0;
    display: flex;
}

.single-product .single-product-summary .shop-attributes-wrap table ul li:not(:first-child)::before,
.single-class .single-product-summary .shop-attributes-wrap table ul li:not(:first-child)::before {
    content: ",";
    margin-inline-end: 0.3125rem;
}

.single-product .single-product-summary form.cart a.reset_variations, 
.single-class .single-product-summary form.cart a.reset_variations {
    display: none !important;
}

.single-product .product-add-wrap, 
.single-class .product-add-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-top: 1.875rem;
    gap: 0.625rem;
}

.single-product .product-add-wrap .product-quantity, 
.single-class .product-add-wrap .product-quantity {
    max-width: 100px;
}

.single-product .product-add-wrap .jcf-number, 
.single-class .product-add-wrap .jcf-number {
    width: 100%;
    display: flex;
    border: 1px solid var(--primary-color);
    min-height: 2.8125rem;
}

.single-product .product-add-wrap .jcf-number input[type="number"], 
.single-class .product-add-wrap .jcf-number input[type="number"] {
    flex: 1;
    padding: 0;
    text-align: center;
    font-size: 1.25rem;
    height: auto;
    background: none;
    border: none;
    border-radius: 0;
    order: 2;
}

.single-product .product-add-wrap .jcf-number > span, 
.single-class .product-add-wrap .jcf-number > span {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 1.5625rem;
}

.single-product .product-add-wrap .jcf-number > span.jcf-disabled, 
.single-class .product-add-wrap .jcf-number > span.jcf-disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.single-product .product-add-wrap .jcf-number > span.jcf-btn-inc, 
.single-class .product-add-wrap .jcf-number > span.jcf-btn-inc {
    order: 1;
    align-items: flex-end;
}

.single-product .product-add-wrap .jcf-number > span.jcf-btn-inc::before, 
.single-class .product-add-wrap .jcf-number > span.jcf-btn-inc::before {
    content: "+";
}

.single-product .product-add-wrap .jcf-number > span.jcf-btn-dec, 
.single-class .product-add-wrap .jcf-number > span.jcf-btn-dec {
    align-items: flex-start;
    order: 3;
}

.single-product .product-add-wrap .jcf-number > span.jcf-btn-dec::before, 
.single-class .product-add-wrap .jcf-number > span.jcf-btn-dec::before {
    content: "_";
    position: relative;
    bottom: 9px;
}

.single-product .product-add-wrap .btn-holder, 
.single-class .product-add-wrap .btn-holder {
    flex: 1;
}

.single-product .product-add-wrap .btn-holder .btn, 
.single-class .product-add-wrap .btn-holder .btn,
.single-product .product-add-wrap .button,
.single-class .product-add-wrap .button{
    width: 100%;
    min-height: 2.8125rem;
    padding: 0.3125rem 0.625rem;
    font-size: 1rem;
    font-weight: normal;
    text-transform: none;
    height: 100%;
}

.single-product .single-product-slider:not(.flickity-enabled), 
.single-class .single-product-slider:not(.flickity-enabled) {
    display: flex;
    flex-wrap: wrap;
}

/* .single-product .single-product-slider:not(.flickity-enabled) .single-product-slide-item:nth-child(2) ~ .single-product-slide-item, 
.single-class .single-product-slider:not(.flickity-enabled) .single-product-slide-item:nth-child(2) ~ .single-product-slide-item {
    display: none;
} */

.single-product .single-product-image-holder .single-product-slide-item, 
.single-class .single-product-image-holder .single-product-slide-item {
    width: calc((100% / 2) - 1.25rem);
}

.single-product .single-product-image-holder .single-img-holder, 
.single-class .single-product-image-holder .single-img-holder {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.single-product .single-product-image-holder img, 
.single-class .single-product-image-holder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 460/693;
}

.single-product-grid .single-product-description {
    flex-basis: 100%;
    max-width: 100%;
    padding: 0 2.5rem 0 calc(30.597% + 3.75rem);
    margin-top: 2.5rem;
}

.single-product-grid .single-product-description .description-label {
    font-size: 1.0625rem;
    margin-bottom: 1.25rem;
    padding-left: 14.375rem;
}

.single-product-grid .single-product-description .single-proudct-details {
    font-size: 1.5rem;
}

.single-product-grid .single-product-description .single-proudct-details.short-details {
    margin-bottom: 1.875rem;
}

.single-product-grid .single-product-description .single-proudct-details p:first-child {
    text-indent: 14.375rem;
}

.single-product-grid .single-product-description .single-proudct-details p:last-child {
    margin-bottom: 0;
}

.single-product-grid .single-product-description table {
    margin: 1.875rem 0 0;
    border-collapse: collapse;
}

.single-product-grid .single-product-description table tr {
    background: none;
}

.single-product-grid .single-product-description table tr th, .single-product-grid .single-product-description table tr td {
    background: none;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: var(--primary-color) transparent transparent transparent;
    padding: 0.625rem 0.3125rem 0.625rem 0;
    vertical-align: top;
    font-size: 1rem;
    font-weight: normal;
    color: var(--primary-color);
}

.single-product-grid .single-product-description table tr th {
    min-width: 13.9375rem;
}

.single-product-grid .single-product-description table tr td {
    padding-left: 0.3125rem;
    padding-right: 0;
}

.single-product-grid .single-product-description table tr td p {
    margin-bottom: 1rem;
}

.single-product-grid .single-product-description table tr td p:last-child {
    margin-bottom: 0;
}

.single-product-grid .single-product-description table tr td p:has(+ ul) {
    margin-bottom: 0.3125rem;
}

.single-product-grid .single-product-description table tr td ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.single-product-grid .single-product-description table tr td ul li {
    margin-bottom: 0.3125rem;
    position: relative;
    padding-left: 0.75rem;
}

.single-product-grid .single-product-description table tr td ul li::before {
    content: "";
    width: 0.25rem;
    height: 0.25rem;
    border-radius: 100%;
    background: var(--primary-color);
    position: absolute;
    top: 0.4375rem;
    left: 0;
}

.single-product-grid .single-product-description table tr td hr {
    margin-block: 1.25rem;
}

.related-products-section {
    margin-top: 5rem;
}

.related-products-section .section-header {
    padding-inline: 2.5rem;
    margin-bottom: 1.25rem;
}

.related-products-section .section-title {
    font-size: 2.8125rem;
}

.related-products-section .related-product-slider:not(.flickity-enabled) {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    justify-content: center;
    gap: 1.25rem;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.related-products-section .related-product-slider .slide {
    min-width: calc(100% / 3.5);
    max-width: calc(100% / 3.5);
}

.related-products-section .related-product-slider .product {
    padding: 0 0.625rem;
}

.related-products-section .related-product-slider .product .product-img {
    margin-bottom: 0.625rem;
}

.related-products-section .related-product-slider .product .product-img img {
    aspect-ratio: 2 / 3;
    width: 100%;
}

.related-products-section .related-product-slider.flickity-enabled .slide:not(.is-selected) .product-info {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.related-products-section .related-product-slider .product .product-title-holder {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.3125rem;
}

.related-products-section .related-product-slider .product .product-title-holder > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.3125rem;
    flex: 1;
    font-size: 1rem;
    line-height: 1;
    letter-spacing: -0.25px;
}

.related-products-section .related-product-slider .product .woocommerce-loop-product__title {
    font: inherit;
    margin: 0;
}

.related-products-section .related-product-slider .product .woo-product-cat {
    flex: 1;
    text-align: right;
    font-size: 0.875rem;
    font-family: var(--schneiderLibrettoLightItalic);
    letter-spacing: -0.25px;
}

.related-products-section .related-product-slider .product .price {
    display: none;
    font-size: 1rem;
    margin-top: 0.625rem;
}

.related-products-section .related-product-slider .product .addCart-btn-holder {
    margin-top: 1.25rem;
    display: none;
}

.related-products-section .related-product-slider .product .addCart-btn-holder .button {
    background: none;
    border: 1px solid var(--primary-color);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 0.3125rem 0.9375rem;
    min-height: 2.8125rem;
    font-size: 1rem;
    text-transform: capitalize;
}

/*=======================================
SINGLE PRIVATE PARTIES
=======================================*/
.single-pp-holder {
    padding: 0 2.5rem;
    margin: 1.25rem 0 5rem 0;
}

.single-pp-holder .feature-image {
    margin-bottom: 3.75rem;
}

.single-pp-holder .feature-image img {
    width: 100%;
}

.single-pp-holder .single-pp-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

.single-pp-holder .single-pp-grid > div {
    flex-basis: calc(50% - 1rem);
    max-width: calc(50% - 1rem);
}

.single-pp-holder .single-pp-grid > div.single-pp-form-holder {
    display: flex;
    flex-direction: column;
}

.single-pp-holder .single-pp-grid .single-pp-form-inn {
    max-width: 27.5rem;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.single-pp-holder .single-pp-grid .single-pp-info-inn {
    max-width: 33.125rem;
}

.single-pp-holder .single-pp-grid .single-pp-form-title {
    margin: 0 0 1.5625rem;
    font-size: 1rem;
    font-family: var(--schneiderLibrettoMedium);
    flex: 1;
}

.single-pp-holder .single-pp-grid .form-group {
    margin-bottom: 1rem;
    position: relative;
}

.single-pp-holder .single-pp-grid .form-group span {
    display: block;
    line-height: 1;
}

.single-pp-holder .single-pp-grid .input-label {
    margin: 0;
    display: block;
    font-size: 1rem;
    position: absolute;
    top: 0.3125rem;
    left: 0;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transition: top ease 0.3s, transform ease 0.3s;
    transition: top ease 0.3s, transform ease 0.3s;
}

.single-pp-holder .single-pp-grid .focused .input-label, 
.single-pp-holder .single-pp-grid .populated .input-label {
    top: -0.625rem;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
}

.single-pp-holder .single-pp-grid .focused:has(textarea) .input-label, 
.single-pp-holder .single-pp-grid .populated:has(textarea) .input-label {
    top: -1rem;
}

.single-pp-holder .single-pp-grid .form-control {
    background: none;
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: var(--primary-color);
    padding: 0;
    height: 2.5rem;
    font-size: 1rem;
}

.single-pp-holder .single-pp-grid textarea.form-control {
    resize: none;
}

.single-pp-holder .single-pp-grid .btn-holder {
    margin-top: 2.25rem;
    position: relative;
}

.single-pp-holder .single-pp-grid .btn-holder .btn {
    width: 100%;
    height: 3.75rem;
    padding: 0.3125rem 0.625rem;
    font-weight: normal;
    text-transform: none;
    font-size: 1rem;
}

.single-pp-holder .single-pp-grid .single-pp-info-title {
    margin: 0 0 1.875rem;
    font-size: 1rem;
    font-family: var(--schneiderLibrettoMedium);
}

.single-pp-holder .single-pp-grid .single-pp-info-content {
    font-size: 1rem;
}

.single-pp-holder .single-pp-grid .single-pp-info-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.single-pp-holder .single-pp-grid .single-pp-info-content ul li {
    display: block;
    margin-bottom: 0.5rem;
    position: relative;
    padding-left: 0.75rem;
}

.single-pp-holder .single-pp-grid .single-pp-info-content ul li::before {
    content: "";
    width: 0.25rem;
    height: 0.25rem;
    border-radius: 100%;
    background: var(--primary-color);
    position: absolute;
    top: 0.4375rem;
    left: 0;
}

.single-pp-holder .single-pp-grid .single-pp-info-content .single-pp-info {
    margin-top: 1.875rem;
}

.single-pp-holder .single-pp-grid .single-pp-info-content .single-pp-info p:last-child {
    margin-bottom: 0;
}

/*====================================
CART PAGE
===================================*/
.woocommerce-cart .wc-block-cart table.wc-block-cart-items, 
.woocommerce-cart .wc-block-cart table.wc-block-cart-items td, 
.woocommerce-cart .wc-block-cart table.wc-block-cart-items th {
    margin: 0;
    padding: 15px 10px;
    border-color: var(--primary-color);
}

.woocommerce-cart .wc-block-cart table.wc-block-cart-items thead th {
    padding-block: 8px;
}

.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-block, 
.woocommerce-cart .wp-block-woocommerce-cart-totals-block .wc-block-components-totals-wrapper {
    border-color: var(--primary-color);
}

.wc-block-components-button:not(.is-link) {
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
    color: var(--white-color);
    outline: none;
}

.wc-block-components-button:not(.is-link):not(.disabled):not(:disabled):hover {
    background: none;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row td.wc-block-cart-item__total, 
table.wc-block-cart-items .wc-block-cart-items__row td.wc-block-cart-item__total {
    display: table-cell;
}

/*====================================
CHECKOUT PAGE
===================================*/
.site-main .wc-block-components-form .wc-block-components-text-input input[type=email], 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=number], 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=password], 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=tel], 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=text], 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=url], 
.site-main .wc-block-components-text-input input[type=email], 
.site-main .wc-block-components-text-input input[type=number], 
.site-main .wc-block-components-text-input input[type=password], 
.site-main .wc-block-components-text-input input[type=tel], 
.site-main .wc-block-components-text-input input[type=text], 
.site-main .wc-block-components-text-input input[type=url] {
    background: none;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

.site-main .wc-block-components-form .wc-block-components-text-input input[type=email]:focus, 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=number]:focus, 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=password]:focus, 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=tel]:focus, 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=text]:focus, 
.site-main .wc-block-components-form .wc-block-components-text-input input[type=url]:focus, 
.site-main .wc-block-components-text-input input[type=email]:focus, 
.site-main .wc-block-components-text-input input[type=number]:focus, 
.site-main .wc-block-components-text-input input[type=password]:focus, 
.site-main .wc-block-components-text-input input[type=tel]:focus, 
.site-main .wc-block-components-text-input input[type=text]:focus, 
.site-main .wc-block-components-text-input input[type=url]:focus {
    background: none;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

.site-main .wc-block-components-form .wc-block-components-text-input label, 
.site-main .wc-block-components-text-input label {
    color: var(--primary-color);
}

.site-main .wc-blocks-components-select .wc-blocks-components-select__select {
    background: var(--secondary-color);
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

.site-main .wc-blocks-components-select .wc-blocks-components-select__select option {
    color: var(--primary-color);
}

.site-main .wc-blocks-components-select .wc-blocks-components-select__label {
    color: var(--primary-color);
}

.site-main .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
    background-color: var(--primary-color);
    border: 1px solid var(--primary-color);
}

.site-main .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked {
    background: var(--primary-color);
}

.site-main .wc-block-components-checkbox .wc-block-components-checkbox__mark {
    fill: var(--white-color);
}

.site-main .wc-block-components-textarea {
    background-color: transparent;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

.site-main .wc-block-checkout__add-note .wc-block-components-textarea:focus {
    background: none;
    border: 1px solid var(--primary-color);
    box-shadow: none;
    color: var(--primary-color);
}

.site-main .wc-block-components-textarea::placeholder {
  color: var(--primary-color);
  font-style: normal;
}

.site-main .wc-block-checkout__terms.wc-block-checkout__terms--with-separator {
    border-top-color: var(--primary-color);
    padding-top: 2rem;
    margin-top: 2rem;
    font-size: 95%;
    font-family: var(--schneiderLibrettoItalic);
}

.site-main .wc-block-components-form .wc-block-checkout__order-notes.wc-block-components-checkout-step {
    margin-bottom: 2rem;
}

.site-main .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
    background: var(--primary-color);
    border-color: var(--secondary-color);
    box-shadow: 0 0 0 2px var(--primary-color);
    color: var(--white-color);
}

.site-main .wp-block-woocommerce-checkout-order-summary-block, 
.woocommerce-checkout .wc-block-components-totals-wrapper, 
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block {
    border-color: var(--primary-color);
}

/*====================================
SINGLE POST
===================================*/
.blog .site-main, 
.archive .site-main:not(.woocommerce) {
    margin: 5rem 0;
}

.blog .site-main article, 
.archive .site-main article {
    border: 1px solid var(--primary-color);
    padding: 2rem;
}

article.post .entry-title {
    font-size: 1.5rem;
    margin: 0;
}

article.post .entry-meta {
    font-size: 1.125rem;
    font-style: italic;
    color: rgba(var(--primary-color-rgb), 0.8);
    margin-top: 0.625rem;
}

article.post .entry-content {
    font-size: 1.25rem;
    margin-top: 1.25em;
}

article.post .entry-content > * {
    margin-bottom: 1rem;
}

article.post .entry-content > *:last-child {
    margin-bottom: 0;
}

article.post .entry-footer {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid rgba(var(--primary-color-rgb), 0.3);
}

article.post .entry-footer > span:not(:last-child)::after {
    content: "|";
    display: inline-block;
    margin: 0 0.625rem;
}

/*====================================
ACCOUNT PAGE
===================================*/
.woocommerce-account .site-main article {
    margin-top: 1.5rem;
}

.woocommerce-account .site-main .woocommerce {
    display: flex;
    flex-wrap: wrap;
}

.woocommerce-account .site-main .woocommerce-MyAccount-navigation {
    flex-basis: 250px;
    max-width: 250px;
}

.woocommerce-account .site-main .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce-account .site-main .woocommerce-MyAccount-navigation ul li {
    margin: -1px 0 0;
}

.woocommerce-account .site-main .woocommerce-MyAccount-navigation ul li a {
    display: block;
    border: 1px solid var(--primary-color);
    padding: 0.875rem 1.25rem;
}

.woocommerce-account .site-main .woocommerce-MyAccount-navigation ul li.is-active a {
    background: var(--primary-color);
    color: var(--secondary-color);
}

.woocommerce-account .site-main .woocommerce-MyAccount-content {
    flex: 1;
    padding-left: 3%;
}

.woocommerce-account .woocommerce-Address-title h2 {
    font-size: 1.75rem;
    margin: 0 0 1rem;
}

.woocommerce-account .woocommerce-Address + .woocommerce-Address {
    border-top: 1px solid var(--primary-color);
    padding-top: 1.875rem;
}

.woocommerce-account .edit-account {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.woocommerce-account .edit-account .form-row-first, .woocommerce-account .edit-account .form-row-last {
    flex-basis: calc(50% - 0.75rem);
    max-width: calc(50% - 0.75rem);
}

.woocommerce-account .edit-account .woocommerce-form-row {
    margin: 0;
    flex-basis: 100%;
    max-width: 100%;
}

.woocommerce-account .edit-account .clear {
    display: none;
}

.woocommerce-account .edit-account .woocommerce-form-row #account_display_name_description {
    display: block;
    margin-top: 0.625rem;
    font-size: 1rem;
}

.woocommerce-account .edit-account fieldset {
    border-color: var(--primary-color);
    flex-basis: 100%;
    max-width: 100%;
    padding: 2rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.woocommerce-account .edit-account fieldset legend {
    padding: 0 0.5rem;
}

.woocommerce-account .password-input {
    display: block;
    position: relative;
}

.woocommerce-account .password-input .show-password-input {
    position: absolute;
    top: 0;
    right: 0.625rem;
    height: 100%;
    width: 2.5rem;
    background: none;
    border: none;
    padding: 0;
}

.woocommerce-account .password-input .show-password-input::before {
    content: "";
    background-color: var(--primary-color);
    -webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%20768%20576%27%3E%3Cpath%20fill%3D%27currentColor%27%20d%3D%27M3.4,273.7c-4.4,8.8-4.7,19.3,0,28.6c0,0,12.7,25.2,35.8,59c14.4,21,33.2,45.8,56.2,71c28.6,31.3,64.1,63.6,106.2,89.6 c51,31.6,112.2,54.1,182.3,54.1s131.3-22.6,182.3-54.1c42.1-26,77.6-58.3,106.2-89.6c23-25.2,41.8-50,56.2-71 c23.2-33.7,35.8-59,35.8-59c4.4-8.8,4.7-19.3,0-28.6c0,0-12.7-25.2-35.8-59c-14.4-21-33.2-45.8-56.2-71 c-28.6-31.3-64.1-63.6-106.2-89.6C515.3,22.6,454.1,0,384,0S252.7,22.6,201.7,54.1c-42.1,26-77.6,58.3-106.2,89.6 c-23,25.2-41.8,50-56.2,71C16.1,248.4,3.4,273.7,3.4,273.7L3.4,273.7z%20M68.5,288c5.2-9,13-21.8,23.5-37.1%20c13.1-19.1,30.1-41.5,50.7-64c25.8-28.2,56.8-56.2,92.6-78.3C278.5,81.9,328.1,64,384,64s105.5,17.9,148.7,44.6%20c35.8,22.1,66.8,50.1,92.6,78.3c20.6,22.6,37.6,45,50.7,64c10.5,15.3,18.3,28,23.5,37.1c-5.2,9-13,21.8-23.5,37.1%20c-13.1,19.1-30.1,41.5-50.7,64c-25.8,28.2-56.8,56.2-92.6,78.3C489.5,494.1,439.9,512,384,512s-105.5-17.9-148.7-44.6%20c-35.8-22.1-66.8-50.1-92.6-78.3c-20.6-22.6-37.6-45-50.7-64C81.5,309.8,73.7,297,68.5,288L68.5,288z%20M512,288%20c0-35.3-14.4-67.4-37.5-90.5S419.3,160,384,160s-67.4,14.4-90.5,37.5S256,252.7,256,288s14.4,67.4,37.5,90.5S348.7,416,384,416%20s67.4-14.4,90.5-37.5S512,323.3,512,288z%20M448,288c0,17.7-7.1,33.6-18.8,45.2C417.6,344.9,401.7,352,384,352s-33.6-7.1-45.2-18.8%20S320,305.7,320,288s7.1-33.6,18.8-45.2S366.3,224,384,224s33.6,7.1,45.2,18.8S448,270.3,448,288z%27/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%20768%20576%27%3E%3Cpath%20fill%3D%27currentColor%27%20d%3D%27M3.4,273.7c-4.4,8.8-4.7,19.3,0,28.6c0,0,12.7,25.2,35.8,59c14.4,21,33.2,45.8,56.2,71c28.6,31.3,64.1,63.6,106.2,89.6 c51,31.6,112.2,54.1,182.3,54.1s131.3-22.6,182.3-54.1c42.1-26,77.6-58.3,106.2-89.6c23-25.2,41.8-50,56.2-71 c23.2-33.7,35.8-59,35.8-59c4.4-8.8,4.7-19.3,0-28.6c0,0-12.7-25.2-35.8-59c-14.4-21-33.2-45.8-56.2-71 c-28.6-31.3-64.1-63.6-106.2-89.6C515.3,22.6,454.1,0,384,0S252.7,22.6,201.7,54.1c-42.1,26-77.6,58.3-106.2,89.6 c-23,25.2-41.8,50-56.2,71C16.1,248.4,3.4,273.7,3.4,273.7L3.4,273.7z%20M68.5,288c5.2-9,13-21.8,23.5-37.1%20c13.1-19.1,30.1-41.5,50.7-64c25.8-28.2,56.8-56.2,92.6-78.3C278.5,81.9,328.1,64,384,64s105.5,17.9,148.7,44.6%20c35.8,22.1,66.8,50.1,92.6,78.3c20.6,22.6,37.6,45,50.7,64c10.5,15.3,18.3,28,23.5,37.1c-5.2,9-13,21.8-23.5,37.1%20c-13.1,19.1-30.1,41.5-50.7,64c-25.8,28.2-56.8,56.2-92.6,78.3C489.5,494.1,439.9,512,384,512s-105.5-17.9-148.7-44.6%20c-35.8-22.1-66.8-50.1-92.6-78.3c-20.6-22.6-37.6-45-50.7-64C81.5,309.8,73.7,297,68.5,288L68.5,288z%20M512,288%20c0-35.3-14.4-67.4-37.5-90.5S419.3,160,384,160s-67.4,14.4-90.5,37.5S256,252.7,256,288s14.4,67.4,37.5,90.5S348.7,416,384,416%20s67.4-14.4,90.5-37.5S512,323.3,512,288z%20M448,288c0,17.7-7.1,33.6-18.8,45.2C417.6,344.9,401.7,352,384,352s-33.6-7.1-45.2-18.8%20S320,305.7,320,288s7.1-33.6,18.8-45.2S366.3,224,384,224s33.6,7.1,45.2,18.8S448,270.3,448,288z%27/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    position: absolute;
    inset: 0;
    margin: auto;
    width: 1em;
    height: 1em;
    display: block;
}

.woocommerce-account .password-input .show-password-input.display-password::before {
    -webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%20768%20768%27%3E%3Cpath%20d%3D%27M324.1,166.9c20.8-4.9,41.5-7.1,59.5-6.8c56.3,0,105.9,17.9,149.1,44.6c35.8,22.1,66.8,50.1,92.6,78.3%20c20.6,22.6,37.6,45,50.7,64c10.5,15.2,18.2,28,23.5,37c-17.5,30.5-37.1,58.3-56.9,81.3c-11.5,13.4-10,33.6,3.5,45.1%20s33.6,10,45.1-3.5c26.2-30.5,51.6-67.6,73.1-107.8c4.7-8.9,5.2-19.8,0.4-29.4c0,0-12.7-25.2-35.8-59c-14.4-21-33.2-45.8-56.2-71%20c-28.6-31.3-64.1-63.6-106.2-89.6c-51-31.5-112.2-54.1-182-54.1c-23.5-0.3-49.3,2.5-74.9,8.5c-17.2,4-27.9,21.2-23.9,38.5%20S306.9,170.9,324.1,166.9L324.1,166.9z%20M320.9,366.2l81,81c-5.8,2-11.9,3-18,3.2c-16.4,0.6-33-5.1-45.9-17.2s-19.7-28.2-20.3-44.6%20C317.4,381,318.4,373.4,320.9,366.2L320.9,366.2z%20M191.5,236.7l81.7,81.7c-13.9,22.1-20.4,47.5-19.5,72.5%20c1.2,32.7,14.8,65.1,40.7,89.1s59.1,35.4,91.8,34.3c22.1-0.8,44.1-7.3,63.5-19.5l74.3,74.3c-44.1,25.6-92.6,38.3-140.3,38.8%20c-55.5,0-105.1-17.9-148.3-44.6c-35.8-22.1-66.8-50.1-92.6-78.3c-20.6-22.6-37.6-45-50.7-64c-10.4-15.2-18.2-27.9-23.4-36.9%20C102.2,325.8,144.6,276,191.5,236.7L191.5,236.7z%20M9.4,54.6L146,191.3C90.7,238.6,41.4,298.8,3.8,368.9c-4.7,8.9-5.2,19.8-0.4,29.4%20c0,0,12.7,25.2,35.8,59c14.4,21,33.2,45.8,56.2,71c28.6,31.3,64.1,63.6,106.2,89.6c51,31.6,112.2,54.1,182.7,54.1%20c63.8-0.8,128.6-19.2,186.1-56.3l142.9,142.9c12.5,12.5,32.8,12.5,45.2,0s12.5-32.8,0-45.2l-284-284c-0.1-0.1-0.2-0.2-0.2-0.2%20L339.7,294.4c-0.3-0.2-0.5-0.5-0.8-0.8L54.6,9.4C42.1-3.1,21.9-3.1,9.4,9.4S-3.1,42.2,9.4,54.6L9.4,54.6z%27/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%20768%20768%27%3E%3Cpath%20d%3D%27M324.1,166.9c20.8-4.9,41.5-7.1,59.5-6.8c56.3,0,105.9,17.9,149.1,44.6c35.8,22.1,66.8,50.1,92.6,78.3%20c20.6,22.6,37.6,45,50.7,64c10.5,15.2,18.2,28,23.5,37c-17.5,30.5-37.1,58.3-56.9,81.3c-11.5,13.4-10,33.6,3.5,45.1%20s33.6,10,45.1-3.5c26.2-30.5,51.6-67.6,73.1-107.8c4.7-8.9,5.2-19.8,0.4-29.4c0,0-12.7-25.2-35.8-59c-14.4-21-33.2-45.8-56.2-71%20c-28.6-31.3-64.1-63.6-106.2-89.6c-51-31.5-112.2-54.1-182-54.1c-23.5-0.3-49.3,2.5-74.9,8.5c-17.2,4-27.9,21.2-23.9,38.5%20S306.9,170.9,324.1,166.9L324.1,166.9z%20M320.9,366.2l81,81c-5.8,2-11.9,3-18,3.2c-16.4,0.6-33-5.1-45.9-17.2s-19.7-28.2-20.3-44.6%20C317.4,381,318.4,373.4,320.9,366.2L320.9,366.2z%20M191.5,236.7l81.7,81.7c-13.9,22.1-20.4,47.5-19.5,72.5%20c1.2,32.7,14.8,65.1,40.7,89.1s59.1,35.4,91.8,34.3c22.1-0.8,44.1-7.3,63.5-19.5l74.3,74.3c-44.1,25.6-92.6,38.3-140.3,38.8%20c-55.5,0-105.1-17.9-148.3-44.6c-35.8-22.1-66.8-50.1-92.6-78.3c-20.6-22.6-37.6-45-50.7-64c-10.4-15.2-18.2-27.9-23.4-36.9%20C102.2,325.8,144.6,276,191.5,236.7L191.5,236.7z%20M9.4,54.6L146,191.3C90.7,238.6,41.4,298.8,3.8,368.9c-4.7,8.9-5.2,19.8-0.4,29.4%20c0,0,12.7,25.2,35.8,59c14.4,21,33.2,45.8,56.2,71c28.6,31.3,64.1,63.6,106.2,89.6c51,31.6,112.2,54.1,182.7,54.1%20c63.8-0.8,128.6-19.2,186.1-56.3l142.9,142.9c12.5,12.5,32.8,12.5,45.2,0s12.5-32.8,0-45.2l-284-284c-0.1-0.1-0.2-0.2-0.2-0.2%20L339.7,294.4c-0.3-0.2-0.5-0.5-0.8-0.8L54.6,9.4C42.1-3.1,21.9-3.1,9.4,9.4S-3.1,42.2,9.4,54.6L9.4,54.6z%27/%3E%3C/svg%3E");
    mask-size: 100%;
}

.woocommerce-account .site-main .woocommerce .woocommerce-notices-wrapper, 
.woocommerce-account .site-main .woocommerce h2 {
    flex-basis: 100%;
    max-width: 100%;
    text-align: center;
    margin-top: 0;
    margin-bottom: 1rem;
}

.woocommerce-account .site-main .woocommerce .woocommerce-notices-wrapper:empty {
    display: none;
}

.woocommerce-account .site-main .woocommerce h2 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
}

.woocommerce-account .site-main .woocommerce .woocommerce-form.login, 
.woocommerce-account .site-main .woocommerce form.lost_reset_password {
    margin: 0 auto;
    border: 1px solid var(--primary-color);
    padding: 1.875rem;
    max-width: 640px;
    width: 100%;
}

.woocommerce-account .woocommerce-form .woocommerce-form-login__rememberme {
    display: block;
    margin-bottom: 1rem;
}

.woocommerce-account .woocommerce-form .woocommerce-form-login__rememberme input[type="checkbox"] {
    width: 1.25rem;
    height: 1.25rem;
    vertical-align: -2px;
    margin-right: 0.5rem;
}

/*====================================
RESPONSIVE CSS
===================================*/
@media (min-width: 425px) {
    html {
        font-size: 21.25px;
    }
}

@container (min-width: 700px) {
    .woocommerce-cart .wc-block-cart__main .wc-block-cart-items th:last-child {
        padding-right: 10px;
    }
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }

    .header-top .header-utilities li svg {
        display: none;
    }
}

@media (max-width: 1440px) {
    /*=====================================
    STUDIO SECTION
    ======================================*/
    .studio-section .section-content {
        padding-right: 0;
    }
}

@media (max-width: 1199px) {
    /*=====================================
    STUDIO SECTION
    ======================================*/
    .studio-section .section-content .section-subtile {
        flex-basis: 10rem;
        max-width: 10rem;
    }

    /*======================================
    WORKSHOPS SECTION
    ======================================*/
    .workshops-section .workshops-img-holder .workshops-img.big {
        padding-right: 3.75rem;
    }

    .workshops-section .workshops-img-holder .workshops-img.big figure {
        flex-basis: 45%;
        max-width: 45%;
    }

    .workshops-section .section-content {
        padding-left: 5rem;
        padding-right: 3rem;
    }

    /*======================================
    CATEGORY PAGE
    ======================================*/
    .woocommerce-products-header .page-title {
        flex-basis: 40%;
        max-width: 40%;
    }

    /*======================================
    SINGLE PRODUCT & CLASS
    ======================================*/
    .single-product .single-product-summary .product-title, 
    .single-class .single-product-summary .product-title {
        font-size: 2rem;
    }
    .single-product .single-product-summary .single-product-header, 
    .single-class .single-product-summary .single-product-header {
        margin-bottom: 1.5rem;
    }

    .single-product-grid .single-product-description {
        padding-left: calc(40% + 1.25rem);
    }

    .single-product-grid .single-product-description .description-label {
        padding-left: 5rem;
    }

    .single-product-grid .single-product-description .single-proudct-details {
        font-size: 1.25rem;
    }

    .single-product-grid .single-product-description .single-proudct-details p:first-child {
        text-indent: 5rem;
    }
}

@media (max-width: 991px) {
    /*===================================
    COMMON CSS
    ===================================*/
    .page-header.hs-inline-desc .page-title {
        flex-basis: 100%;
        max-width: 100%;
    }

    .page-header.hs-inline-desc .page-content {
        flex-basis: 100%;
        max-width: 100%;
    }

    /*=======================================
    OBJECT, STUDIO, WORKSHOPS, STORY SECTION
    =======================================*/
    .object-section .section-header, 
    .studio-section .section-header, 
    .workshops-section .section-header, 
    .story-section .section-header {
        font-size: 4.375rem;
    }

    .object-section .section-header .section-count, 
    .studio-section .section-header .section-count, 
    .workshops-section .section-header .section-count, 
    .story-section .section-header .section-count {
        flex-basis: 12.5rem;
        max-width: 12.5rem;
    }

    .object-section .section-content {
        padding-left: 12.5rem;
    }

    .object-section .object-grid .object-menu, 
    .studio-section .studio-grid .studio-menu, 
    .workshops-section .workshops-grid .workshops-menu, 
    .story-section .story-grid .story-menu {
        flex-basis: 12.5rem;
        max-width: 12.5rem;
        padding-right: 1.25rem;
    }

    .studio-section .studio-grid .studio-menu {
        padding-inline: 1.25rem 0;
    }

    .object-section .object-img-holder .object-img.big, 
    .studio-section .studio-img-holder .studio-img.big {
        flex-basis: 61%;
        max-width: 61%;
    }

    .studio-section .section-content {
        padding-inline: 12.5rem 0;
    }

    .workshops-section .workshops-img-holder .workshops-img.big {
        padding-right: 3rem;
        gap: 1.25rem;
    }

    .workshops-section .workshops-img-holder .workshops-img.big figure {
        flex-basis: 45%;
        max-width: 45%;
    }

    .workshops-section .section-content {
        padding-inline: 0;
    }

    .workshops-section .section-content .section-subtile {
        max-width: 7rem;
    }

    /*==============================================
    SITE FOOTER
    ==============================================*/
    .footer-top .footer-contact {
        flex-basis: 35%;
        max-width: 35%;
    }

    .footer-top .footer-links {
        flex-basis: 20%;
        max-width: 20%;
    }

    .footer-bottom .footer-logo img {
        max-width: 150px;
    }

    .footer-bottom .copyright {
        padding-right: 3.75rem;
    }

    /*======================================
    CATEGORY PAGE
    ======================================*/
    .woocommerce-products-header .page-title {
        flex-basis: 45%;
        max-width: 45%;
    }

    .shop .products .product, 
    .archive .products .product, 
    .post-holder .post {
        flex-basis: 50%;
        max-width: 50%;
    }

    .shop .products .product.product-small.align-right::before, 
    .archive .products .product.product-small.align-right::before {
        max-width: 75%;
    }

    .shop .products:has(.product-medium) .product.product-small.align-right::before, 
    .archive .products:has(.product-medium) .product.product-small.align-right::before {
        margin-left: 0;
    }

    .shop .products:has(.product-medium) .product.product-small.align-left::before, 
    .archive .products:has(.product-medium) .product.product-small.align-left::before {
        margin-left: auto;
        max-width: 75%;
    }

    .shop .products .product.product-small > *, 
    .archive .products .product.product-small > * {
        max-width: 75%;
    }

    .shop .products:has(.product-medium) .product.product-small.align-right > *, 
    .archive .products:has(.product-medium) .product.product-small.align-right > * {
        margin-left: 0;
    }

    .shop .products:has(.product-medium) .product.product-small.align-left > *, 
    .archive .products:has(.product-medium) .product.product-small.align-left > * {
        margin-left: auto;
    }

    /*======================================
    SINGLE PRODUCT & CLASS
    ======================================*/
    .single-product .single-product-summary, 
    .single-class .single-product-summary {
        max-width: 40%;
        flex-basis: 40%;
    }

    .related-products-section .section-title {
        font-size: 2rem;
    }

    .related-products-section .related-product-slider .slide {
        min-width: calc(100% / 2.5);
        max-width: calc(100% / 2.5);
    }

    .single-product-grid .single-product-description table tr {
        display: block;
    }

    .single-product-grid .single-product-description table tr th {
        min-width: auto;
        display: block;
        font-weight: 600;
        border-top-width: 2px;
    }

    .single-product-grid .single-product-description table tr td {
        display: block;
        border-top: none;
        padding-top: 0;
        padding-left: 0;
    }
}

@media (max-width: 767px) {
    /*===================================
    COMMON CSS
    ===================================*/
    .page-header, 
    .woocommerce-account .entry-header {
        margin-bottom: 2.5rem;
    }

    .page-header .page-title, 
    .woocommerce-account .entry-header .entry-title {
        font-size: 2rem;
    }

    .page-header .page-content {
        font-size: 1rem;
    }

    .page-header .page-content p:first-child {
        text-indent: 3.75rem;
    }

    .header-top {
        padding: 1.25rem 0.9375rem;
    }

    body:not(.home) .sticky-wrap-header-top:not(.fixed-position) .header-top::after {
        inset-inline: 0.9375rem;
    }

    .header-top .sticky-logo {
        max-width: 5rem;
    }

    .header-top .sticky-logo a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .header-top .header-utilities li:not(:last-child) {
        margin-right: 1.25rem;
    }

    .header-top .menu-tgl {
        font-size: 0.75rem;
    }

    .header-top .header-utilities li {
        font-size: 0.75rem;
    }

    .header-top .header-utilities li a {
        font-size: 1.125rem;
    }

    .header-top .header-utilities li a::before, 
    .header-top .header-utilities li a::after {
        display: none;
    }

    .header-top .header-utilities li span {
        display: none;
    }

    .header-top .header-utilities li svg {
        width: 1em;
        height: 1em;
        vertical-align: middle;
    }

    .logo-holder {
        padding: 0 0.9375rem 1.875rem;
    }

    .header-top #nav .close {
        width: 1.875rem;
        height: 1.875rem;
        margin-top: 1.25rem;
        margin-right: 0.9375rem;
    }

    .header-top #nav .close::before, 
    .header-top #nav .close::after {
        width: 0.9375rem;
    }

    #nav ul.primary-menu {
        padding-inline: 0.9375rem;
    }

    #nav ul li {
        font-size: 1.125rem;
    }

    #nav ul li a {
        padding-block: 0.875rem;
    }

    #nav ul li .submenu-tgl-btn {
        height: 3.25rem;
    }

    /*=========================================
    MAIN BANNER
    =========================================*/
    .main-banner {
        margin-bottom: 2.5rem;
        padding-inline: 0.9375rem;
    }

    .main-banner .banner-item .banner-img {
        flex-basis: 100%;
        max-width: 100%;
    }

    .main-banner .banner-item .banner-title {
        font-size: 1.25rem;
    }

    .main-banner .banner-item .banner-desc {
        max-width: 100%;
        margin: 0;
        font-size: 0.875rem;
    }

    /*=======================================
    OBJECT SECTION
    =======================================*/
    .object-section {
        margin-bottom: 3.125rem;
        padding-inline: 0.9375rem;
    }

    .object-section .section-header {
        margin-bottom: 2.5rem;
        font-size: 3rem;
        gap: 1.25rem;
    }

    .object-section .section-header .section-count {
        flex-basis: auto;
        max-width: 100%;
        font-size: 70%;
    }

    .object-section .section-content {
        padding: 0;
        margin-bottom: 3.75rem;
        font-size: 1.25rem;
    }

    .object-section .section-content .section-subtile {
        max-width: fit-content;
    }

    .object-section .object-grid .object-menu {
        flex-basis: 100%;
        max-width: 100%;
        margin-bottom: 2.5rem;
        padding: 0;
    }

    .object-section .object-grid ul {
        max-width: 100%;
    }

    .object-section .object-img-holder {
        gap: 1.5rem;
    }

    .object-section .object-img-holder .object-img.big {
        flex-basis: 61%;
        max-width: 61%;
    }

    /*=======================================
    STUDIO SECTION
    =======================================*/
    .studio-section {
        margin-bottom: 5rem;
        padding-inline: 0.9375rem;
    }

    .studio-section .section-header {
        margin-bottom: 2.5rem;
        font-size: 3rem;
        gap: 1.25rem;
    }

    .studio-section .section-header .section-count {
        flex-basis: auto;
        max-width: 100%;
        font-size: 70%;
    }

    .studio-section .section-content {
        padding: 0;
        margin-bottom: 3.75rem;
        font-size: 1.25rem;
    }

    .studio-section .section-content .section-subtile {
        margin-bottom: 1.25rem;
        flex-basis: 100%;
        max-width: 100%;
    }

    .studio-section .studio-grid .studio-menu {
        flex-basis: 100%;
        max-width: 100%;
        margin-bottom: 2.5rem;
        padding: 0;
    }

    .studio-section .studio-grid ul {
        max-width: 100%;
    }

    .studio-section .studio-img-holder {
        gap: 1.5rem;
    }

    .studio-section .studio-img-holder .studio-img.big {
        flex-basis: 61%;
        max-width: 61%;
    }

    /*=======================================
    WORKSHOPS SECTION
    =======================================*/
    .workshops-section {
        margin-bottom: 5rem;
        padding-inline: 0.9375rem;
    }

    .workshops-section .section-header {
        margin-bottom: 2.5rem;
        font-size: 3rem;
        gap: 1.25rem;
    }

    .workshops-section .section-header .section-count {
        flex-basis: auto;
        max-width: 100%;
        font-size: 70%;
    }

    .workshops-section .workshops-img-holder .workshops-img.big {
        flex-basis: 100%;
        max-width: 100%;
        padding: 0;
        gap: 1rem;
        margin-bottom: 1.25rem;
    }

    .workshops-section .workshops-img-holder .workshops-img.big figure {
        flex-basis: 40%;
        max-width: 40%;
    }

    .workshops-section .workshops-img-holder .workshops-img.small {
        flex-basis: 50%;
        max-width: 50%;
    }

    .workshops-section .workshops-grid {
        margin-top: 3.75rem;
    }

    .workshops-section .workshops-grid .workshops-menu {
        max-width: 100%;
        flex-basis: 100%;
        margin-bottom: 2.5rem;
        padding: 0;
    }

    .workshops-section .workshops-grid ul {
        max-width: 100%;
    }

    .workshops-section .section-content {
        padding: 0;
        font-size: 1.25rem;
    }

    .workshops-section .section-content .section-subtile {
        max-width: fit-content;
    }

    /*============================================
    STORY SECTION
    ============================================*/
    .story-section {
        padding-inline: 0.9375rem;
    }

    .story-section .section-header {
        margin-bottom: 2.5rem;
        font-size: 3rem;
        gap: 1.25rem;
    }

    .story-section .section-header .section-count {
        flex-basis: auto;
        max-width: 100%;
        font-size: 70%;
    }

    .story-section .section-img {
        margin-bottom: 1.875rem;
    }

    .story-section .section-content {
        margin-bottom: 3.75rem;
        font-size: 1.5rem;
    }

    .story-section .section-content .section-subtile {
        max-width: 2.5rem;
    }

    .story-section .story-grid .story-menu {
        max-width: 100%;
        flex-basis: 100%;
        margin-bottom: 2.5rem;
        padding: 0;
    }

    .story-section .story-grid ul {
        max-width: 100%;
    }

    .story-section .story-content .story-desc {
        max-width: 100%;
        column-count: 1;
    }

    /*==========================================
    SITE FOOTER
    ==========================================*/
    .site-footer {
        padding-inline: 0.9375rem;
    }

    .footer-top {
        justify-content: center;
    }

    .footer-top .footer-newsletter {
        flex-basis: 100%;
        max-width: 100%;
        text-align: center;
        padding: 0;
        margin-bottom: 2.5rem;
    }

    .footer-newsletter .newsletter-form-holder {
        margin-inline: auto;
    }

    .footer-top .footer-contact {
        flex-basis: auto;
        max-width: 50%;
    }

    .footer-top .footer-links {
        flex-basis: auto;
        max-width: 50%;
        padding-left: 1.875rem;
    }

    .footer-bottom {
        margin-top: 5rem;
        margin-bottom: 2rem;
        text-align: center;
    }

    .footer-bottom .footer-logo {
        flex-basis: 100%;
        max-width: 100%;
    }

    .footer-bottom .footer-logo img {
        max-width: 5rem;
    }

    .footer-bottom .copyright {
        padding: 0;
        margin-top: 0.625rem;
        text-align: center;
        width: 100%;
    }

    /*==================================
    DEFAULT PAGE
    ==================================*/
    .page-template-default #primary {
        padding-inline: 0.9375rem;
    }

    .page-template-default article {
        margin-bottom: 2.5rem;
    }

    /*==================================
    CATEGORY PAGE
    ==================================*/
    .shop .site-main .woocommerce, 
    .archive .site-main .woocommerce, 
    .page-template-page-workshops .woocommerce, 
    .blog .site-main, 
    .archive .site-main:not(.woocommerce) {
        padding-inline: 0.9375rem;
    }

    .woocommerce-products-header {
        margin-bottom: 2rem;
    }

    .woocommerce-products-header .page-title {
        flex-basis: 100%;
        max-width: 100%;
        font-size: 2rem;
    }

    .woocommerce-products-header .term-description, 
    .woocommerce-products-header .page-description {
        font-size: 0.9375rem;
    }

    .woocommerce-filter {
        margin-bottom: 2rem;
    }

    .woo-filter-popup {
        padding-block: 2rem;
    }

    .woo-filter-popup .close-popup {
        width: 1.875rem;
        height: 1.875rem;
        margin-left: 0.9375rem;
        margin-bottom: 2rem;
    }

    .woo-filter-popup .close-popup::before, 
    .woo-filter-popup .close-popup::after {
        width: 0.9375rem;
    }

    .woo-filter-popup .woo-filter-options {
        max-height: calc(100% - 3.875rem);
        padding-inline: 0.9375rem;
    }

    .woo-filter-options .woo-filter-item {
        margin-bottom: 0.9375rem;
        padding-bottom: 0.9375rem;
    }

    .woo-filter-options .woo-filter-item .woo-filter-item-title {
        font-size: 1rem;
    }

    .woo-filter-options .woo-filter-item .woo-filter-item-title::after {
        font-size: 2.5rem;
    }

    .woo-filter-options .woo-filter-item .active-value {
        font-size: 0.75rem;
    }

    .woo-filter-options .woo-filter-item ul li {
        font-size: 0.875rem;
    }

    .woo-filter-options .woo-filter-item ul li a {
        padding-right: 1.5rem;
    }

    .woo-filter-options .woo-filter-item ul li a::before {
        width: 1rem;
        height: 1rem;
        font-size: 0.75rem;
    }

    .shop .products, 
    .archive .products, 
    .post-holder {
        margin-inline: -0.3125rem;
    }

    .shop .products .product, 
    .archive .products .product, 
    .post-holder .post {
        padding-inline: 0.3125rem;
        margin-bottom: 2.5rem;
    }

    .woocommerce-pagination {
        margin-bottom: 2.5rem;
    }

    .woocommerce-pagination ul li {
        font-size: 1rem;
    }

    .woocommerce-pagination ul li:has(.prev), 
    .woocommerce-pagination ul li:has(.next) {
        font-size: 1.25rem;
    }

    .woocommerce-pagination ul li a, 
    .woocommerce-pagination ul li span {
        width: 2rem;
        height: 2rem;
    }

    /*==========================================
    SINGLE PRODUCT & CLASS
    =========================================*/
    .single-product .site-main .woocommerce, 
    .single-class .site-main .woocommerce {
        margin-bottom: 2.5rem;
    }

    .single-product .woocommerce-notices-wrapper {
        padding-inline: 0.9375rem;
    }

    .single-product .woocommerce-message, 
    .single-product .woocommerce-notices-wrapper .woocommerce-error {
        font-size: 1rem;
    }

    .single-product .single-product-summary, 
    .single-class .single-product-summary {
        max-width: 100%;
        flex-basis: 100%;
        padding-inline: 0.9375rem;
    }

    .single-product .single-product-summary .single-product-summary-inner, 
    .single-class .single-product-summary .single-product-summary-inner {
        border-top: none;
        padding-top: 1rem;
    }

    .single-product .single-product-summary .product-title, 
    .single-class .single-product-summary .product-title {
        font-size: 2rem;
    }

    .single-product .single-product-summary .product-cat, 
    .single-class .single-product-summary .product-cat {
        font-size: 0.875rem;
    }

    .single-product .single-product-summary .single-product-header, 
    .single-class .single-product-summary .single-product-header {
        margin-bottom: 1.25rem;
    }

    .single-product .single-product-summary .price, 
    .single-product .single-product-summary .stock-status, 
    .single-class .single-product-summary .price, 
    .single-class .single-product-summary .stock-status {
        font-size: 1rem;
        padding-block: 0.5rem;
    }

    .single-product .single-product-summary .shop-attributes-wrap table,
    .single-class .single-product-summary .shop-attributes-wrap table {
        font-size: 1rem;
    }

    .single-product .single-product-summary .shop-attributes-wrap table th,
    .single-product .single-product-summary .shop-attributes-wrap table td,
    .single-class .single-product-summary .shop-attributes-wrap table th,
    .single-class .single-product-summary .shop-attributes-wrap table td {
        padding-block: 0.625rem;
    }

    .single-product .single-product-image-holder, 
    .single-class .single-product-image-holder {
        order: -1;
    }

    .single-product .single-product-image-holder .single-product-slide-item, 
    .single-class .single-product-image-holder .single-product-slide-item {
        width: calc(100% / 2);
    }

    .single-product-grid .single-product-description {
        padding-inline: 0.9375rem;
    }

    .single-product-grid .single-product-description .description-label {
        font-size: 1rem;
        padding-left: 2rem;
    }

    .single-product-grid .single-product-description .single-proudct-details {
        font-size: 1.125rem;
    }

    .single-product-grid .single-product-description .single-proudct-details p:first-child {
        text-indent: 2rem;
    }

    .related-products-section {
        margin-top: 3.125rem;
    }

    .related-products-section .section-header {
        padding-inline: 0.9375rem;
    }

    .related-products-section .section-title {
        font-size: 2rem;
    }

    .related-products-section .related-product-slider .slide {
        min-width: calc(100% / 1.5);
        max-width: calc(100% / 1.5);
    }

    .related-products-section .related-product-slider .product {
        padding-inline: 0.3125rem;
    }

    /*========================================
    SINGLE PRIVATE PARTIES
    ========================================*/
    .single-pp-holder {
        margin-bottom: 2.5rem;
        padding-inline: 0.9375rem;
    }

    .single-pp-holder .feature-image {
        margin-bottom: 2.5rem;
    }

    .single-pp-holder .single-pp-grid > div {
        flex-basis: 100%;
        max-width: 100%;
    }

    .single-pp-holder .single-pp-grid .btn-holder .btn {
        height: 2.8125rem;
    }

    /*====================================
    SINGLE POST
    ===================================*/
    .blog .site-main, 
    .archive .site-main:not(.woocommerce) {
        margin-block: 2.5rem;
    }

    .blog .site-main article, 
    .archive .site-main article {
        padding: 1rem;
    }

    /*====================================
    ACCOUNT PAGE
    ===================================*/
    .woocommerce-account .site-main .woocommerce-MyAccount-navigation ul {
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        font-size: 1.125rem;
        -ms-overflow-style: none;
        scrollbar-width: none;
        margin: 0 -0.9375rem;
        padding-left: 0.9375rem;
    }

    .woocommerce-account .site-main .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
        display: none;
    }

    .woocommerce-account .site-main .woocommerce-MyAccount-navigation ul li {
        margin: 0;
        white-space: nowrap;
        padding-right: 0.9375rem;
    }

    .woocommerce-account .site-main .woocommerce-MyAccount-navigation {
        max-width: 100%;
        flex-basis: 100%;
    }

    .woocommerce-account .site-main .woocommerce-MyAccount-content {
        padding: 2rem 0 0;
    }

    .woocommerce-account .edit-account fieldset {
        padding: 1rem;
    }

    .woocommerce-account .edit-account .woocommerce-form-row label {
        font-size: 1rem;
    }

    .woocommerce-account .site-main .woocommerce .woocommerce-form.login, 
    .woocommerce-account .site-main .woocommerce form.lost_reset_password {
        padding: 1.25rem;
    }

    .woocommerce-account .site-main .woocommerce .woocommerce-form.login .woocommerce-form-row label, 
    .woocommerce-account .site-main .woocommerce form.lost_reset_password .woocommerce-form-row label, 
    .woocommerce-account .woocommerce-form .woocommerce-form-login__rememberme, 
    .woocommerce-account .woocommerce-form a, 
    .woocommerce-account .site-main .woocommerce form.lost_reset_password p {
        font-size: 1.125rem;
    }
}

@media (max-width: 540px) {
    .shop .products, 
    .archive .products, 
    .post-holder {
        margin-inline: 0;
    }

    .shop .products .product, 
    .archive .products .product, 
    .post-holder .post {
        flex-basis: 100%;
        max-width: 100%;
        padding-inline: 0;
    }

    .shop .products .product.product-small, 
    .archive .products .product.product-small, 
    .shop .products .product.product-big, 
    .archive .products .product.product-big {
        flex-basis: 100%;
        max-width: 100%;
    }

    .shop .products .product.product-small.align-right::before, 
    .archive .products .product.product-small.align-right::before, 
    .shop .products .product.product-small.align-left::before, 
    .archive .products .product.product-small.align-left::before, 
    .shop .products .product.product-small > *, 
    .archive .products .product.product-small > * {
        max-width: 100%;
    }

    .site-main .wc-block-checkout__actions .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
        width: 100%;
    }
}
