/*
Theme Name:   Storefront Child
Theme URI:    https://woocommerce.com/storefront/
Description:  Storefront Child Theme
Author:       P5 Labs
Author URI:   https://p5labs.lt/
Template:     storefront
Version:      1.0.0
Text Domain:  storefront-child
*/

/* ==========================================================================
   Design System Variables & Base Resets
   ========================================================================== */
:root {
    /* Brand Colors */
    --color-primary: #F5BC15;
    --color-primary-hover: #ca8a04;

    /* Dark Neutrals */
    --color-dark: #0f172a;
    --color-dark-bg: #090d16;
    --color-subtle-muted: #94a3b8;
    --color-text-on-dark: #e2e8f0;

    /* Light Neutrals & Surfaces */
    --color-light-bg: #f8fafc;
    --color-muted: #64748b;
    --color-border: #f1f5f9;
    --color-border-subtle: rgba(0, 0, 0, 0.05);

    /* Typography & Interactive Elements */
    --color-body: #43454b;
    --color-heading: #0f172a;
    --color-link: #0f172a;
    --color-link-hover: #ca8a04;
    --color-focus: #F5BC15;

    /* Font Stacks */
    --font-system: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-mono: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;

    /* Box Shadows */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.05);
    --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.05), 0 2px 4px -1px rgba(0,0,0,0.03);
    --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.05), 0 4px 6px -2px rgba(0,0,0,0.03);
}

/* ==========================================================================
   Sticky Footer Layout (Flexbox Column)
   ========================================================================== */
html,
body {
    height: 100%;
}

#page.site {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

#content.site-content {
    flex: 1 0 auto;
}

#colophon.site-footer {
    margin-top: auto;
}

.container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.col-full {
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 1rem;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .col-full {
        padding: 0 1.5rem;
    }
}

.content-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    background-color: #ffffff;
}

/* ==========================================================================
   Storefront Parent Theme Baseline Styles
   ========================================================================== */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

a {
    background-color: rgba(0, 0, 0, 0)
}

a:active,
a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: bold
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

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 40px
}

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] {
    -webkit-appearance: button;
    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;
    padding: 0
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: bold
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

body {
    -ms-word-wrap: break-word;
    word-wrap: break-word
}

body,
button,
input,
textarea {
    color: var(--color-body);
    font-family: var(--font-system);
    line-height: 1.618;
    text-rendering: optimizeLegibility;
    font-weight: 400
}

select {
    color: initial;
    font-family: var(--font-system);
    max-width: 100%
}

summary {
    display: list-item
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
    font-weight: 300;
    margin: 0 0 .5407911001em;
    color: var(--color-heading)
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    font-weight: 300
}

h1,
.alpha {
    font-size: clamp(1.65rem, 3.5vw, 2.1rem);
    line-height: 1.25;
    letter-spacing: -0.01em;
}

h2,
.beta {
    font-size: clamp(1.35rem, 2.5vw, 1.65rem);
    line-height: 1.25;
    letter-spacing: -0.01em;
}

h2+h3,
.beta+h3 {
    border-top: 1px solid rgba(0, 0, 0, .05);
    padding-top: .5407911001em
}

h3,
.gamma {
    font-size: clamp(1.15rem, 1.8vw, 1.3rem);
    line-height: 1.3;
}

h4,
.delta {
    font-size: clamp(1.0rem, 1.2vw, 1.1rem);
    line-height: 1.35;
}

.alpha,
.beta,
.gamma,
.delta {
    display: block
}

p+h2,
p+header h2,
p+h3,
p+h4,
ul+h2,
ul+header h2,
ul+h3,
ul+h4,
ol+h2,
ol+header h2,
ol+h3,
ol+h4,
table+h2,
table+header h2,
table+h3,
table+h4,
blockquote+h2,
blockquote+header h2,
blockquote+h3,
blockquote+h4,
form+h2,
form+header h2,
form+h3,
form+h4 {
    margin-top: 2.2906835em
}

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

p {
    margin: 0 0 1.41575em
}

ul,
ol {
    margin: 0 0 1.41575em 3em;
    padding: 0
}

ul {
    list-style: disc
}

ol {
    list-style: decimal
}

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

dt {
    font-weight: 600
}

dd {
    margin: 0 0 1.618em
}

b,
strong {
    font-weight: 600
}

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

blockquote {
    padding: 0 1em;
    border-left: 3px solid rgba(0, 0, 0, .05);
    font-style: italic
}

address {
    margin: 0 0 1.41575em
}

pre {
    background: rgba(0, 0, 0, .1);
    font-family: var(--font-mono);
    margin-bottom: 1.618em;
    padding: 1.618em;
    overflow: auto;
    max-width: 100%
}

code,
kbd,
tt,
var {
    font-family: var(--font-mono);
    background-color: rgba(0, 0, 0, .05);
    padding: .202em .5407911001em
}

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

mark,
ins {
    text-decoration: none;
    font-weight: 600;
    background: rgba(0, 0, 0, 0)
}

sup,
sub {
    font-size: 75%;
    height: 0;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    bottom: 1ex
}

sub {
    top: .5ex
}

small {
    font-size: 75%
}

big {
    font-size: 125%
}

figure {
    margin: 0
}

img {
    height: auto;
    max-width: 100%;
    display: block;
    border-radius: 3px
}

a {
    color: var(--color-link);
    text-decoration: none
}

a:focus,
input:focus,
textarea:focus,
button:focus {
    outline: 2px solid var(--color-focus)
}

.storefront-cute * {
    font-family: "Comic Sans MS", sans-serif
}

* {
    box-sizing: border-box
}

body {
    background-color: #fff;
    overflow-x: hidden
}

.site {
    overflow-x: hidden
}

.site-content,
.header-widget-region {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.site-header {
    background-color: #ffffff;
    padding-top: 1.618em;
    padding-bottom: 1.618em;
    color: var(--color-muted);
    background-position: center center;
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-sm);
}

.site-header .site-logo-anchor,
.site-header .site-logo-link,
.site-header .custom-logo-link {
    display: block;
    margin-bottom: 0
}

.site-header .site-logo-anchor img,
.site-header .site-logo-link img,
.site-header .custom-logo-link img {
    width: 100%;
    max-width: 210px
}

.site-header .widget {
    margin-bottom: 0
}

.home.blog .site-header,
.home.page:not(.page-template-template-homepage) .site-header,
.home.post-type-archive-product .site-header {
    margin-bottom: 4.235801032em
}

.no-wc-breadcrumb .site-header {
    margin-bottom: 4.235801032em
}

.no-wc-breadcrumb.page-template-template-homepage .site-header {
    margin-bottom: 0
}

.header-widget-region {
    position: relative;
    z-index: 99
}

.header-widget-region::before,
.header-widget-region::after {
    content: "";
    display: table
}

.header-widget-region::after {
    clear: both
}

.header-widget-region .widget {
    margin: 0;
    padding: 1em 0;
    font-size: .875em
}

.site-branding {
    float: left;
    margin-bottom: 0;
    width: calc(100% - 120px)
}

.site-branding .site-title {
    font-size: 2em;
    letter-spacing: -1px;
    margin: 0
}

.site-branding .site-title a {
    font-weight: 700
}

.site-branding .site-description {
    font-size: .875em;
    display: none
}

.site-branding .logo {
    margin: 0
}

.site-main {
    margin-bottom: 2.617924em
}

.site-content {
    outline: none
}

.page-template-template-homepage:not(.has-post-thumbnail) .site-main {
    padding-top: 4.235801032em
}

.page-template-template-homepage .type-page {
    padding-top: 2.617924em;
    padding-bottom: 2.617924em;
    position: relative
}

.page-template-template-homepage .type-page .storefront-hero__button-edit {
    position: absolute;
    top: 1em;
    right: 1em;
    font-size: .875em
}

.page-template-template-homepage .entry-content {
    font-size: 1.1em
}

.page-template-template-homepage .entry-content p:last-child {
    margin-bottom: 0
}

.page-template-template-homepage .entry-header h1 {
    font-size: 3.706325903em;
    margin-bottom: .2360828548em
}

.page-template-template-homepage .entry-content,
.page-template-template-homepage .entry-header {
    max-width: 41.0994671405em;
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.page-template-template-homepage.has-post-thumbnail .type-page.has-post-thumbnail {
    background-size: cover;
    background-position: center center;
    padding-top: 6.8535260698em;
    padding-bottom: 6.8535260698em
}

.page-template-template-homepage.has-post-thumbnail .type-page.has-post-thumbnail .entry-content,
.page-template-template-homepage.has-post-thumbnail .type-page.has-post-thumbnail .entry-title {
    opacity: 0;
    transition: all, ease, .5s
}

.page-template-template-homepage.has-post-thumbnail .type-page.has-post-thumbnail .entry-content.loaded,
.page-template-template-homepage.has-post-thumbnail .type-page.has-post-thumbnail .entry-title.loaded {
    opacity: 1
}



.site-footer {
    background-color: var(--color-dark-bg);
    color: var(--color-subtle-muted);
    padding: 5rem 0 2rem 0;
}

.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6 {
    color: var(--color-heading)
}

.site-footer a {
    color: var(--color-link);
    text-decoration: underline
}

.site-footer a:hover {
    text-decoration: none
}

.site-footer a.button,
.site-footer a.components-button:not(.is-link),
.site-footer a.wp-block-button__link {
    text-decoration: none
}



.alignleft {
    display: inline;
    float: left;
    margin-right: 1em
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1em
}

.aligncenter {
    clear: both;
    display: block;
    margin: 0 auto
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    clip: auto !important;
    display: block;
    font-weight: 700;
    height: auto;
    left: 0;
    line-height: normal;
    padding: 1em 1.618em;
    text-decoration: none;
    top: 0;
    width: auto;
    z-index: 100000;
    outline: none
}

.screen-reader-text.skip-link:focus {
    clip-path: none
}

.clear::before,
.clear::after,
.entry-content::before,
.entry-content::after,
.comment-content::before,
.comment-content::after,
.site-content::before,
.site-content::after {
    content: "";
    display: table
}

.clear::after,
.entry-content::after,
.comment-content::after,
.site-content::after {
    clear: both
}

table {
    border-spacing: 0;
    width: 100%;
    margin: 0 0 1.41575em;
    border-collapse: separate
}

table caption {
    padding: 1em 0;
    font-weight: 600
}

table td,
table th {
    padding: 1em 1.41575em;
    text-align: left;
    vertical-align: top
}

table td p:last-child,
table th p:last-child {
    margin-bottom: 0
}

table th {
    font-weight: 600
}

table thead th {
    padding: 1.41575em;
    vertical-align: middle
}

table tbody h2 {
    font-size: 1em;
    letter-spacing: normal;
    font-weight: 400
}

table tbody h2 a {
    font-weight: 400
}

.error404 .site-content .widget_product_search {
    padding: 1.618em;
    background-color: rgba(0, 0, 0, .025)
}

.error404 .site-content .widget_product_search form {
    margin: 0
}

.error404.right-sidebar .content-area,
.error404.left-sidebar .content-area {
    width: 100%
}

.error404 .fourohfour-columns-2 {
    padding: 2.617924em 0;
    border: 1px solid rgba(0, 0, 0, .05);
    border-width: 1px 0;
    margin-bottom: 2.617924em
}

.error404 .fourohfour-columns-2::before,
.error404 .fourohfour-columns-2::after {
    content: "";
    display: table
}

.error404 .fourohfour-columns-2::after {
    clear: both
}

.error404 .fourohfour-columns-2 ul.products li.product,
.error404 .fourohfour-columns-2 .widget {
    margin-bottom: 0
}

.error404 .fourohfour-columns-2 .col-1 ul.products {
    margin-bottom: 2.2906835em
}

.error404 .fourohfour-columns-2 .col-1 ul.products li.product {
    width: 45.4545454545%;
    float: left;
    margin-right: 9.0909090909%
}

.error404 .fourohfour-columns-2 .col-1 ul.products li.product:last-child {
    margin-right: 0
}

.error404 .fourohfour-columns-2 .col-2 {
    padding: 1.618em;
    background-color: rgba(0, 0, 0, .025)
}

#comments {
    padding-top: 2.617924em
}

#comments .comments-title {
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    padding-bottom: .5407911001em;
    margin-bottom: 1.618em
}

#comments .comment-list {
    list-style: none;
    margin-left: 0
}

#comments .comment-list .comment-body::before,
#comments .comment-list .comment-body::after {
    content: "";
    display: table
}

#comments .comment-list .comment-body::after {
    clear: both
}

#comments .comment-list .comment-content {
    padding-bottom: 1.618em;
    margin-bottom: 1.618em
}

#comments .comment-list .comment-content .comment-text {
    padding: 1.618em;
    border-radius: 3px
}

#comments .comment-list .comment-content .comment-text p:last-child {
    margin-bottom: 0
}

#comments .comment-list .comment-meta {
    margin-bottom: 1em
}

#comments .comment-list .comment-meta .avatar {
    margin-bottom: 1em;
    max-width: 64px;
    height: auto
}

#comments .comment-list .comment-meta a.comment-date {
    font-size: .875em
}

#comments .comment-list .comment-meta cite {
    font-style: normal;
    clear: both;
    display: block
}

#comments .comment-list .reply {
    margin-bottom: 1.618em;
    padding-top: .6180469716em
}

#comments .comment-list .reply::before,
#comments .comment-list .reply::after {
    content: "";
    display: table
}

#comments .comment-list .reply::after {
    clear: both
}

#comments .comment-list .reply a {
    display: inline-block;
    margin-right: 1em
}

#comments .comment-list .reply a:last-child {
    margin-right: 0
}

#comments .comment-list .children {
    list-style: none
}

.comment-content a {
    word-wrap: break-word
}

#respond {
    clear: both;
    padding: 1.618em;
    background-color: rgba(0, 0, 0, .0125);
    position: relative
}

#respond .comment-form-author input,
#respond .comment-form-email input,
#respond .comment-form-url input {
    width: 100%
}

#respond .form-submit,
#respond form {
    margin-bottom: 0
}

#respond #cancel-comment-reply-link {
    position: absolute;
    top: .5407911001em;
    right: .5407911001em;
    display: block;
    height: 1em;
    width: 1em;
    overflow: hidden;
    line-height: 1;
    font-size: 1.41575em;
    text-align: center;
    transition: transform, ease, .3s
}

#respond #cancel-comment-reply-link:hover {
    transform: scale(1.3)
}

.hentry {
    margin: 0 0 4.235801032em
}

.hentry .wp-post-image {
    margin-bottom: 1.618em;
    margin-left: auto;
    margin-right: auto
}

.hentry .entry-header {
    margin-bottom: 1em;
    border-bottom: 1px solid rgba(0, 0, 0, .05)
}

.hentry .entry-header .posted-on,
.hentry .entry-header .post-author,
.hentry .entry-header .post-comments,
.hentry .entry-header .byline {
    font-size: .875em
}

.hentry .entry-header .posted-on a,
.hentry .entry-header .post-author a,
.hentry .entry-header .post-comments a,
.hentry .entry-header .byline a {
    font-weight: 600;
    text-decoration: underline
}

.hentry .entry-header .posted-on a:hover,
.hentry .entry-header .post-author a:hover,
.hentry .entry-header .post-comments a:hover,
.hentry .entry-header .byline a:hover {
    text-decoration: none
}

.hentry .entry-content a {
    text-decoration: underline
}

.hentry .entry-content a:hover {
    text-decoration: none
}

.hentry .entry-content a.button,
.hentry .entry-content a.components-button:not(.is-link),
.hentry .entry-content a.wp-block-button__link {
    text-decoration: none
}

.hentry .entry-taxonomy {
    margin: 1.41575em 0 0;
    padding-top: 1em;
    border-top: 1px solid rgba(0, 0, 0, .05)
}

.hentry.type-page .entry-header {
    border-bottom: 0;
    margin-bottom: 0
}

.cat-links,
.tags-links {
    font-size: .875em
}

.cat-links a,
.tags-links a {
    color: var(--color-muted);
    font-weight: 600;
    text-decoration: underline
}

.byline,
.updated:not(.published) {
    display: none
}

.single .byline,
.group-blog .byline {
    display: inline
}

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

form {
    margin-bottom: 1.618em
}

button,
input,
select,
textarea {
    font-size: 100%;
    margin: 0
}

button,
input[type=button],
input[type=reset],
input[type=submit],
.button,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link,
.added_to_cart {
    border: 0;
    border-radius: 0;
    background: none;
    background-color: var(--color-body);
    border-color: var(--color-body);
    color: #fff;
    cursor: pointer;
    padding: .6180469716em 1.41575em;
    text-decoration: none;
    font-weight: 600;
    text-shadow: none;
    display: inline-block;
    -webkit-appearance: none
}

button::after,
input[type=button]::after,
input[type=reset]::after,
input[type=submit]::after,
.button::after,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link::after,
.added_to_cart::after {
    display: none
}

button.cta,
button.alt,
input[type=button].cta,
input[type=button].alt,
input[type=reset].cta,
input[type=reset].alt,
input[type=submit].cta,
input[type=submit].alt,
.button.cta,
.button.alt,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.cta,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.alt,
.added_to_cart.cta,
.added_to_cart.alt {
    background-color: var(--color-dark);
    border-color: var(--color-dark)
}

button.cta:hover,
button.alt:hover,
input[type=button].cta:hover,
input[type=button].alt:hover,
input[type=reset].cta:hover,
input[type=reset].alt:hover,
input[type=submit].cta:hover,
input[type=submit].alt:hover,
.button.cta:hover,
.button.alt:hover,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.cta:hover,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.alt:hover,
.added_to_cart.cta:hover,
.added_to_cart.alt:hover {
    background-color: var(--color-dark)
}

button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover,
.button:hover,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover,
.added_to_cart:hover {
    color: #fff
}

button.loading,
input[type=button].loading,
input[type=reset].loading,
input[type=submit].loading,
.button.loading,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.loading,
.added_to_cart.loading {
    opacity: .5
}

button.small,
input[type=button].small,
input[type=reset].small,
input[type=submit].small,
.button.small,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.small,
.added_to_cart.small {
    padding: .5407911001em .875em;
    font-size: .875em
}

button.disabled,
button:disabled,
input[type=button].disabled,
input[type=button]:disabled,
input[type=reset].disabled,
input[type=reset]:disabled,
input[type=submit].disabled,
input[type=submit]:disabled,
.button.disabled,
.button:disabled,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.disabled,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link:disabled,
.added_to_cart.disabled,
.added_to_cart:disabled {
    opacity: .5 !important;
    cursor: not-allowed
}

button.disabled:hover,
button:disabled:hover,
input[type=button].disabled:hover,
input[type=button]:disabled:hover,
input[type=reset].disabled:hover,
input[type=reset]:disabled:hover,
input[type=submit].disabled:hover,
input[type=submit]:disabled:hover,
.button.disabled:hover,
.button:disabled:hover,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link.disabled:hover,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link:disabled:hover,
.added_to_cart.disabled:hover,
.added_to_cart:disabled:hover {
    opacity: .5 !important
}

.button.woocommerce-MyAccount-downloads-file {
    overflow-wrap: anywhere;
    word-break: break-word;
    -ms-word-break: break-all
}

.wc-block-components-button:not(.is-link).disabled,
.wc-block-components-button:not(.is-link):disabled {
    opacity: .5;
    cursor: not-allowed
}

.wc-block-components-button:not(.is-link).disabled:hover,
.wc-block-components-button:not(.is-link):disabled:hover {
    opacity: .5
}

input[type=checkbox],
input[type=radio] {
    padding: 0
}

input[type=checkbox]+label,
input[type=radio]+label {
    margin: 0 0 0 .3819820591em
}

input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

input[type=search] {
    box-sizing: border-box
}

input[type=search]::placeholder {
    color: var(--color-muted)
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input[type=text],
input[type=number],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
input[type=search],
textarea,
.input-text {
    padding: .6180469716em;
    background-color: var(--color-light-bg);
    color: var(--color-body);
    border: 0;
    -webkit-appearance: none;
    box-sizing: border-box;
    font-weight: 400;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .125)
}

input[type=text]:focus,
input[type=number]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
textarea:focus,
.input-text:focus {
    background-color: #ededed
}

textarea {
    overflow: auto;
    padding-left: .875em;
    vertical-align: top;
    width: 100%
}

label {
    font-weight: 400
}

label.inline input {
    width: auto
}

fieldset {
    padding: 1.618em;
    padding-top: 1em;
    border: 0;
    margin: 0;
    margin-bottom: 1.618em;
    margin-top: 1.618em
}

fieldset legend {
    font-weight: 600;
    padding: .6180469716em 1em;
    margin-left: -1em
}

[placeholder]:focus::-webkit-input-placeholder {
    -webkit-transition: opacity .5s .5s ease;
    transition: opacity .5s .5s ease;
    opacity: 0
}

.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
    display: inline-block;
    border-radius: 0
}

.wp-caption {
    margin-bottom: 1em;
    max-width: 100%
}

.wp-caption img[class*=wp-image-] {
    display: block;
    margin: 0 auto
}

.wp-caption .wp-caption-text {
    text-align: left;
    font-style: italic;
    border-bottom: 2px solid rgba(0, 0, 0, .05);
    padding: 1em 0
}

.gallery {
    margin-bottom: 1em
}

.gallery::before,
.gallery::after {
    content: "";
    display: table
}

.gallery::after {
    clear: both
}

.gallery .gallery-item {
    float: left
}

.gallery .gallery-item .gallery-icon a {
    display: block
}

.gallery .gallery-item .gallery-icon img {
    border: none;
    height: auto;
    margin: 0 auto
}

.gallery .gallery-item .gallery-caption {
    margin: 0;
    text-align: center
}

.gallery.gallery-columns-1 .gallery-item {
    width: 100%
}

.gallery.gallery-columns-2 .gallery-item {
    width: 50%
}

.gallery.gallery-columns-3 .gallery-item {
    width: 33.3%
}

.gallery.gallery-columns-4 .gallery-item {
    width: 25%
}

.gallery.gallery-columns-5 .gallery-item {
    width: 20%
}

.gallery.gallery-columns-6 .gallery-item {
    width: 16.666666667%
}

.gallery.gallery-columns-7 .gallery-item {
    width: 14.285714286%
}

.gallery.gallery-columns-8 .gallery-item {
    width: 12.5%
}

.gallery.gallery-columns-9 .gallery-item {
    width: 11.111111111%
}

embed,
iframe,
object,
video {
    max-width: 100%
}

.secondary-navigation {
    display: none
}

button.menu-toggle {
    display: none;
    cursor: pointer;
    border: 1px solid var(--color-border, #e2e8f0);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    border-radius: 8px;
    background-color: #ffffff;
    color: var(--color-dark, #0f172a);
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 0;
    transition: all .2s ease;
}

button.menu-toggle:hover,
button.menu-toggle:focus {
    background-color: #f8fafc;
    border-color: var(--color-primary, #F5BC15);
    color: var(--color-dark, #0f172a);
}

button.menu-toggle svg {
    width: 22px;
    height: 22px;
    stroke: currentColor;
}

.primary-navigation {
    display: none
}

.main-navigation::before,
.main-navigation::after {
    content: "";
    display: table
}

.main-navigation::after {
    clear: both
}

.main-navigation div.menu {
    display: none
}

.main-navigation div.menu:last-child {
    display: block
}

.main-navigation .menu {
    clear: both
}

.handheld-navigation,
.nav-menu,
.main-navigation div.menu>ul:not(.nav-menu) {
    overflow: hidden;
    max-height: 0;
    transition: all, ease, .8s
}

.handheld-navigation {
    clear: both
}

.handheld-navigation ul {
    margin: 0
}

.handheld-navigation ul.menu li {
    position: relative
}

.handheld-navigation ul.menu li button::after {
    transition: all, ease, .9s
}

.handheld-navigation ul.menu li button.toggled-on::after {
    transform: rotate(180deg)
}

.handheld-navigation ul.menu .sub-menu {
    visibility: hidden;
    opacity: 0;
    max-height: 0;
    transition: all, ease, .9s
}

.handheld-navigation ul.menu .sub-menu.toggled-on {
    visibility: visible;
    max-height: 9999px;
    opacity: 1
}

.handheld-navigation .dropdown-toggle {
    background: rgba(0, 0, 0, 0);
    position: absolute;
    top: 0;
    right: 0;
    display: block
}

.main-navigation.toggled .handheld-navigation,
.main-navigation.toggled .menu>ul:not(.nav-menu),
.main-navigation.toggled ul[aria-expanded=true] {
    max-height: 9999px
}

.main-navigation ul {
    margin-left: 0;
    list-style: none;
    margin-bottom: 0
}

.main-navigation ul ul {
    display: block;
    margin-left: 1.41575em
}

.main-navigation ul li a {
    padding: .875em 0;
    display: block
}

.main-navigation ul li a:hover {
    color: #e6e6e6
}

.site-main nav.navigation {
    clear: both;
    padding: 2.617924em 0
}

.site-main nav.navigation::before,
.site-main nav.navigation::after {
    content: "";
    display: table
}

.site-main nav.navigation::after {
    clear: both
}

.site-main nav.navigation .nav-previous a,
.site-main nav.navigation .nav-next a {
    display: inline-block
}

.site-main nav.navigation .nav-previous {
    float: left;
    width: 50%
}

.site-main nav.navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%
}

.pagination,
.woocommerce-pagination {
    padding: 1em 0;
    border: 1px solid rgba(0, 0, 0, .05);
    border-width: 1px 0;
    text-align: center;
    clear: both
}

.pagination ul.page-numbers::before,
.pagination ul.page-numbers::after,
.woocommerce-pagination ul.page-numbers::before,
.woocommerce-pagination ul.page-numbers::after {
    content: "";
    display: table
}

.pagination ul.page-numbers::after,
.woocommerce-pagination ul.page-numbers::after {
    clear: both
}

.pagination .page-numbers,
.woocommerce-pagination .page-numbers {
    list-style: none;
    margin: 0;
    vertical-align: middle
}

.pagination .page-numbers li,
.woocommerce-pagination .page-numbers li {
    display: inline-block
}

.pagination .page-numbers li .page-numbers,
.woocommerce-pagination .page-numbers li .page-numbers {
    border-left-width: 0;
    display: inline-block;
    padding: .3342343017em .875em;
    background-color: rgba(0, 0, 0, .025);
    color: var(--color-body)
}

.pagination .page-numbers li .page-numbers.current,
.woocommerce-pagination .page-numbers li .page-numbers.current {
    background-color: var(--color-dark);
    border-color: var(--color-dark)
}

.pagination .page-numbers li .page-numbers.dots,
.woocommerce-pagination .page-numbers li .page-numbers.dots {
    background-color: rgba(0, 0, 0, 0)
}

.pagination .page-numbers li .page-numbers.prev,
.pagination .page-numbers li .page-numbers.next,
.woocommerce-pagination .page-numbers li .page-numbers.prev,
.woocommerce-pagination .page-numbers li .page-numbers.next {
    padding-left: 1em;
    padding-right: 1em
}

.pagination .page-numbers li a.page-numbers:hover,
.woocommerce-pagination .page-numbers li a.page-numbers:hover {
    background-color: rgba(0, 0, 0, .05)
}

.rtl .pagination a.next,
.rtl .pagination a.prev,
.rtl .woocommerce-pagination a.next,
.rtl .woocommerce-pagination a.prev {
    transform: rotateY(180deg)
}

.widget {
    margin: 0 0 3.706325903em
}

.widget select {
    max-width: 100%
}

.widget .widget-search .search-submit {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important
}

.widget .widget-title,
.widget .widgettitle {
    font-size: 1.41575em;
    letter-spacing: 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    padding: 0 0 1em;
    margin-bottom: 1em;
    font-weight: 300
}

.widget ul {
    margin-left: 0;
    list-style: none
}

.widget ul ul {
    margin-left: 1.618em
}

.widget-area .widget {
    font-size: .875em;
    font-weight: 400
}

.widget-area .widget h1.widget-title {
    font-size: 1.41575em
}

.widget-area .widget a {
    font-weight: 600;
    text-decoration: underline
}

.widget-area .widget a:hover {
    text-decoration: none
}

.widget-area .widget a.button,
.widget-area .widget a.components-button:not(.is-link),
.widget-area .widget a.wp-block-button__link {
    text-decoration: none
}

.widget-area .widget a.button {
    font-weight: 600 !important
}

.widget_search form:not(.wp-block-search),
.widget_product_search form:not(.wp-block-search) {
    position: relative
}

.widget_search form:not(.wp-block-search) input[type=text],
.widget_search form:not(.wp-block-search) input[type=search],
.widget_product_search form:not(.wp-block-search) input[type=text],
.widget_product_search form:not(.wp-block-search) input[type=search] {
    width: 100%
}

.widget_search form:not(.wp-block-search) input[type=submit],
.widget_search form:not(.wp-block-search) button[type=submit],
.widget_product_search form:not(.wp-block-search) input[type=submit],
.widget_product_search form:not(.wp-block-search) button[type=submit] {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
    top: 0;
    left: 0
}

.widget_recent_entries ul,
.widget_pages ul,
.widget_categories ul,
.widget_archive ul,
.widget_recent_comments ul,
.widget_nav_menu ul,
.widget_links ul,
.widget_product_categories ul,
.widget_layered_nav ul,
.widget_layered_nav_filters ul {
    margin: 0
}

.widget_recent_entries ul li,
.widget_pages ul li,
.widget_categories ul li,
.widget_archive ul li,
.widget_recent_comments ul li,
.widget_nav_menu ul li,
.widget_links ul li,
.widget_product_categories ul li,
.widget_layered_nav ul li,
.widget_layered_nav_filters ul li {
    list-style: none;
    margin-bottom: 1em;
    line-height: 1.41575em
}

.widget_recent_entries ul .children,
.widget_pages ul .children,
.widget_categories ul .children,
.widget_archive ul .children,
.widget_recent_comments ul .children,
.widget_nav_menu ul .children,
.widget_links ul .children,
.widget_product_categories ul .children,
.widget_layered_nav ul .children,
.widget_layered_nav_filters ul .children {
    margin-left: 0;
    margin-top: 1em
}

#wp-calendar th,
#wp-calendar td,
.wp-calendar-table th,
.wp-calendar-table td {
    padding: .236em;
    text-align: center
}

.widget_recent_entries ul ul.children,
.widget_pages ul ul.children {
    margin: .6180469716em 0 0 1.41575em
}

.widget_rating_filter .wc-layered-nav-rating {
    margin-bottom: .6180469716em
}

.widget_rating_filter .wc-layered-nav-rating a {
    text-decoration: none !important
}

.widget_rating_filter .wc-layered-nav-rating .star-rating {
    display: inline-block;
    height: 1em;
    line-height: 1
}

@media(min-width: 768px) {

    table.shop_table_responsive tbody tr td,
    table.shop_table_responsive tbody tr th {
        text-align: left
    }

    .site-header {
        padding-top: 2.617924em;
        padding-bottom: 0
    }

    .site-header .col-full {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .site-header .site-branding img {
        height: auto;
        max-width: 230px;
        max-height: none
    }

    .site-branding .site-description {
        margin-bottom: 0;
        display: block
    }

    .site-branding,
    .site-search,
    .site-header-cart,
    .site-logo-anchor,
    .site-logo-link,
    .custom-logo-link {
        margin-bottom: 1.41575em
    }

    .site-header .subscribe-and-connect-connect {
        float: right;
        margin-bottom: 1em
    }

    .site-header .subscribe-and-connect-connect .icons {
        list-style: none;
        margin: 0
    }

    .site-header .subscribe-and-connect-connect .icons a {
        font-size: 1em !important
    }

    .site-header .subscribe-and-connect-connect .icons li {
        margin: 0 0 0 .5407911001em !important;
        display: inline-block
    }



    .col-full::before,
    .col-full::after {
        content: "";
        display: table
    }

    .col-full::after {
        clear: both
    }

    .col-full:after {
        content: " ";
        display: block;
        clear: both
    }

    .site-content::before,
    .site-content::after {
        content: "";
        display: table
    }

    .site-content::after {
        clear: both
    }

    .content-area {
        width: 73.9130434783%;
        float: left;
        margin-right: 4.347826087%
    }

    .widget-area {
        width: 21.7391304348%;
        float: right;
        margin-right: 0
    }

    .right-sidebar .content-area {
        width: 73.9130434783%;
        float: left;
        margin-right: 4.347826087%
    }

    .right-sidebar .widget-area {
        width: 21.7391304348%;
        float: right;
        margin-right: 0
    }

    .left-sidebar .content-area {
        width: 73.9130434783%;
        float: right;
        margin-right: 0
    }

    .left-sidebar .widget-area {
        width: 21.7391304348%;
        float: left;
        margin-right: 4.347826087%
    }

    .storefront-full-width-content .content-area {
        width: 100%;
        float: left;
        margin-left: 0;
        margin-right: 0
    }

    .content-area,
    .widget-area {
        margin-bottom: 2.617924em
    }

    .page-template-template-fullwidth-php .content-area,
    .page-template-template-homepage-php .content-area {
        width: 100%;
        float: left;
        margin-left: 0;
        margin-right: 0
    }



    .comment-list::before,
    .comment-list::after {
        content: "";
        display: table
    }

    .comment-list::after {
        clear: both
    }

    .comment-list .comment {
        clear: both
    }

    .comment-list .comment-meta {
        width: 17.6470588235%;
        float: left;
        margin-right: 5.8823529412%;
        text-align: right
    }

    .comment-list .comment-meta .avatar {
        float: right
    }

    .comment-list .comment-content {
        padding-bottom: 3.706325903em;
        margin-bottom: 3.706325903em
    }

    .comment-list .comment-content,
    .comment-list #respond {
        width: 76.4705882353%;
        float: right;
        margin-right: 0
    }

    .comment-list #respond {
        float: right
    }

    .comment-list #respond .comment-form-author,
    .comment-list #respond .comment-form-email,
    .comment-list #respond .comment-form-url {
        width: 100%;
        margin-right: 0
    }

    .comment-list .comment-body #respond {
        box-shadow: 0 6px 2em rgba(0, 0, 0, .2);
        margin-bottom: 2.617924em;
        margin-top: -1.618em
    }

    .comment-list .reply {
        clear: both;
        text-align: right
    }

    .comment-list ol.children {
        width: 88.2352941176%;
        float: right;
        margin-right: 0;
        list-style: none
    }

    .comment-list ol.children .comment-meta {
        width: 20%;
        float: left;
        margin-right: 6.6666666667%
    }

    .comment-list ol.children .comment-content,
    .comment-list ol.children #respond {
        width: 73.3333333333%;
        float: right;
        margin-right: 0
    }

    .comment-list ol.children ol.children {
        width: 86.6666666667%;
        float: right;
        margin-right: 0
    }

    .comment-list ol.children ol.children .comment-meta {
        width: 23.0769230769%;
        float: left;
        margin-right: 7.6923076923%
    }

    .comment-list ol.children ol.children .comment-content,
    .comment-list ol.children ol.children #respond {
        width: 69.2307692308%;
        float: right;
        margin-right: 0
    }

    .comment-list ol.children ol.children ol.children {
        width: 84.6153846154%;
        float: right;
        margin-right: 0
    }

    .comment-list ol.children ol.children ol.children .comment-meta {
        width: 27.2727272727%;
        float: left;
        margin-right: 9.0909090909%
    }

    .comment-list ol.children ol.children ol.children .comment-content,
    .comment-list ol.children ol.children ol.children #respond {
        width: 63.6363636364%;
        float: right;
        margin-right: 0
    }

    .comment-list ol.children ol.children ol.children ol.children {
        width: 81.8181818182%;
        float: right;
        margin-right: 0
    }

    .comment-list ol.children ol.children ol.children ol.children .comment-meta {
        width: 33.3333333333%;
        float: left;
        margin-right: 11.1111111111%
    }

    .comment-list ol.children ol.children ol.children ol.children .comment-content,
    .comment-list ol.children ol.children ol.children ol.children #respond {
        width: 55.5555555556%;
        float: right;
        margin-right: 0
    }

    #respond {
        padding: 2.617924em
    }

    #respond .comment-form-author,
    #respond .comment-form-email,
    #respond .comment-form-url {
        width: 29.4117647059%;
        float: left;
        margin-right: 5.8823529412%
    }

    #respond .comment-form-url {
        float: right;
        margin-right: 0
    }

    #respond .comment-form-comment {
        clear: both
    }

    .hentry .entry-header {
        margin-bottom: 2.617924em
    }

    .menu-toggle,
    .handheld-navigation,
    .main-navigation.toggled .handheld-navigation,
    .main-navigation.toggled div.menu {
        display: none;
    }

    .primary-navigation {
        display: block
    }

    .main-navigation,
    .secondary-navigation {
        clear: both;
        display: block;
        width: 100%
    }

    .main-navigation ul,
    .secondary-navigation ul {
        list-style: none;
        margin: 0;
        padding-left: 0;
        display: block
    }

    .main-navigation ul li,
    .secondary-navigation ul li {
        position: relative;
        display: inline-block;
        text-align: left
    }

    .main-navigation ul li a,
    .secondary-navigation ul li a {
        display: block
    }

    .main-navigation ul li a::before,
    .secondary-navigation ul li a::before {
        display: none
    }

    .main-navigation ul li:hover>ul,
    .main-navigation ul li.focus>ul,
    .secondary-navigation ul li:hover>ul,
    .secondary-navigation ul li.focus>ul {
        left: 0;
        display: block
    }

    .main-navigation ul li:hover>ul li>ul,
    .main-navigation ul li.focus>ul li>ul,
    .secondary-navigation ul li:hover>ul li>ul,
    .secondary-navigation ul li.focus>ul li>ul {
        left: -9999px
    }

    .main-navigation ul li:hover>ul li>ul.sub-menu--is-touch-device,
    .main-navigation ul li.focus>ul li>ul.sub-menu--is-touch-device,
    .secondary-navigation ul li:hover>ul li>ul.sub-menu--is-touch-device,
    .secondary-navigation ul li.focus>ul li>ul.sub-menu--is-touch-device {
        display: none;
        left: 0
    }

    .main-navigation ul li:hover>ul li:hover>ul,
    .main-navigation ul li:hover>ul li.focus>ul,
    .main-navigation ul li.focus>ul li:hover>ul,
    .main-navigation ul li.focus>ul li.focus>ul,
    .secondary-navigation ul li:hover>ul li:hover>ul,
    .secondary-navigation ul li:hover>ul li.focus>ul,
    .secondary-navigation ul li.focus>ul li:hover>ul,
    .secondary-navigation ul li.focus>ul li.focus>ul {
        left: 100%;
        top: 0;
        display: block
    }

    .main-navigation ul ul,
    .secondary-navigation ul ul {
        float: left;
        position: absolute;
        top: 100%;
        z-index: 99999;
        left: -9999px
    }

    .main-navigation ul ul.sub-menu--is-touch-device,
    .secondary-navigation ul ul.sub-menu--is-touch-device {
        display: none;
        left: 0
    }

    .main-navigation ul ul li,
    .secondary-navigation ul ul li {
        display: block
    }

    .main-navigation ul ul li a,
    .secondary-navigation ul ul li a {
        width: 200px
    }

    ul.menu li.current-menu-item>a {
        color: var(--color-body)
    }

    .storefront-primary-navigation {
        clear: both
    }

    .storefront-primary-navigation::before,
    .storefront-primary-navigation::after {
        content: "";
        display: table
    }

    .storefront-primary-navigation::after {
        clear: both
    }

    .main-navigation div.menu {
        display: block
    }

    .main-navigation ul.menu,
    .main-navigation ul.nav-menu {
        max-height: none;
        overflow: visible;
        margin-left: -1em;
        transition: none
    }

    .main-navigation ul.menu>li>a,
    .main-navigation ul.nav-menu>li>a {
        padding: 1.618em 1em
    }

    .main-navigation ul.menu>li.menu-item-has-children:hover::after,
    .main-navigation ul.menu>li.page_item_has_children:hover::after,
    .main-navigation ul.nav-menu>li.menu-item-has-children:hover::after,
    .main-navigation ul.nav-menu>li.page_item_has_children:hover::after {
        display: block
    }

    .main-navigation ul.menu ul,
    .main-navigation ul.nav-menu ul {
        margin-left: 0
    }

    .main-navigation ul.menu ul li a,
    .main-navigation ul.nav-menu ul li a {
        padding: .875em 1.41575em;
        font-weight: 400;
        font-size: .875em
    }

    .main-navigation ul.menu ul li:last-child,
    .main-navigation ul.nav-menu ul li:last-child {
        border-bottom: 0
    }

    .main-navigation ul.menu ul ul,
    .main-navigation ul.nav-menu ul ul {
        margin-left: 0;
        box-shadow: none
    }

    .main-navigation ul.menu ul a:hover,
    .main-navigation ul.menu ul li:hover>a,
    .main-navigation ul.menu ul li.focus,
    .main-navigation ul.nav-menu ul a:hover,
    .main-navigation ul.nav-menu ul li:hover>a,
    .main-navigation ul.nav-menu ul li.focus {
        background-color: rgba(0, 0, 0, .025)
    }

    .main-navigation a {
        padding: 0 1em 2.2906835em
    }

    .secondary-navigation {
        margin: 0 0 1.618em;
        width: auto;
        clear: none;
        line-height: 1
    }

    .secondary-navigation .menu {
        font-size: .875em;
        width: auto;
        float: right
    }

    .secondary-navigation .menu>li:hover>a {
        text-decoration: none
    }

    .secondary-navigation .menu ul a {
        padding: .326em .875em;
        background: rgba(0, 0, 0, .05)
    }

    .secondary-navigation .menu ul li:first-child a {
        padding-top: 1em
    }

    .secondary-navigation .menu ul li:last-child a {
        padding-bottom: 1em
    }

    .secondary-navigation .menu ul ul {
        margin-top: -.6180469716em
    }

    .secondary-navigation .menu a {
        padding: 1em .875em;
        color: var(--color-muted);
        font-weight: 400
    }

    .secondary-navigation .menu a:hover {
        text-decoration: none
    }

    .error404 .fourohfour-columns-2 .col-1 {
        width: 47.8260869565%;
        float: left;
        margin-right: 4.347826087%
    }

    .error404 .fourohfour-columns-2 .col-1 ul.products {
        margin-bottom: 0
    }

    .error404 .fourohfour-columns-2 .col-2 {
        width: 47.8260869565%;
        float: right;
        margin-right: 0
    }
}



/* ==========================================================================
   Site Header & Navigation (Common)
   ========================================================================== */


.header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

.logo-group {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 800;
    font-size: 1.4rem;
    letter-spacing: -0.02em;
    color: var(--color-dark);
}

.logo-group span {
    font-weight: 400;
    color: var(--color-muted);
    margin-left: 0.15rem;
}

.logo-icon-svg {
    width: 32px;
    height: 32px;
}



.nav-link:hover {
    color: var(--color-primary-hover);
}



/* ==========================================================================
   Announcement Bar (Common)
   ========================================================================== */
.announcement-bar {
    background-color: var(--color-light-bg, #f8fafc);
    color: var(--color-primary);
    padding: 0.75rem 1rem;
    text-align: center;
    font-size: 1rem;
    font-weight: 500;
}

.announcement-dot {
    color: var(--color-primary);
    margin-right: 0.25rem;
}

/* ==========================================================================
   WooCommerce Breadcrumbs
   ========================================================================== */
.storefront-breadcrumb {
    padding: 0.85rem 0;
    margin: 0;
    background-color: transparent;
    border-bottom: 1px solid var(--color-border, #f1f5f9);
}

.storefront-breadcrumb .col-full,
.woocommerce-breadcrumb {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 1.5rem;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.4;
    color: var(--color-muted, #64748b);
    width: 100%;
}

.woocommerce-breadcrumb a {
    color: var(--color-dark, #0f172a);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.woocommerce-breadcrumb a:hover {
    color: var(--color-primary-hover, #ca8a04);
}

.woocommerce-breadcrumb .breadcrumb-separator {
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    padding: 0 0.25rem !important;
    margin: 0 !important;
    color: var(--color-subtle-muted, #94a3b8);
    font-size: 0.8rem;
    line-height: 1;
}

/* ==========================================================================
   Footer
   ========================================================================== */


body .site-footer a,
body .site-footer a:not(.button):not(.components-button) {
    color: var(--color-text-on-dark);
    text-decoration: none;
}

body .site-footer a:hover,
body .site-footer a:not(.button):not(.components-button):hover {
    color: var(--color-primary);
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1.5fr 1fr 1fr;
    gap: 3rem;
    margin-bottom: 3.5rem;
}


.footer-brand .custom-logo,
.footer-logo-wrapper img {
    max-height: 48px;
    width: auto;
    display: block;
}

.footer-desc {
    font-size: 0.9rem;
    line-height: 1.55;
}

.footer-contact-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.95rem;
    color: var(--color-text-on-dark);
    font-weight: 500;
}

.contact-item-svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.contact-item a:hover {
    color: var(--color-primary);
}

.footer-links-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.footer-links-list a {
    font-size: 0.95rem;
    color: var(--color-text-on-dark);
    font-weight: 500;
}

.footer-links-list a:hover {
    color: var(--color-primary);
}

.footer-social-wrapper {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
}

.social-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.02);
    border: 1.5px solid rgba(255, 255, 255, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
}

.social-btn:hover {
    background-color: var(--color-primary);
    color: var(--color-dark-bg);
    border-color: var(--color-primary);
}

.social-icon-svg {
    width: 16px;
    height: 16px;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding-top: 2rem;
    display: flex;
    justify-content: space-between;
    font-size: 0.85rem;
}

/* ==========================================================================
   5. Responsive Header/Footer Media Queries
   ========================================================================== */
@media (max-width: 1024px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2.5rem;
    }
    .footer-social-wrapper {
        justify-content: flex-start;
    }
}

/* ==========================================================================
   Site Header & Navigation Layout (Desktop & Mobile)
   ========================================================================== */
.site-header {
    background-color: #ffffff;
    border-bottom: 1px solid var(--color-border, #f1f5f9);
    box-shadow: var(--shadow-sm, 0 1px 3px rgba(0,0,0,0.05));
    position: sticky;
    top: 0;
    z-index: 1000;
    margin-bottom: 2rem;
}

.site-branding {
    float: none;
    width: auto;
    margin-bottom: 0;
}

.header-container-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 1.5rem;
    width: 100%;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.header-icon-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    color: var(--color-dark, #0f172a);
    background-color: var(--color-light-bg, #f8fafc);
    border: 1px solid var(--color-border, #e2e8f0);
    text-decoration: none;
    transition: all 0.2s ease;
    position: relative;
}

.header-icon-link:hover {
    background-color: #ffffff;
    border-color: var(--color-primary, #F5BC15);
    color: var(--color-dark, #0f172a);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

.header-action-icon {
    stroke: currentColor;
    flex-shrink: 0;
}

.cart-icon-wrapper {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.cart-badge-count {
    position: absolute;
    top: -6px;
    right: -8px;
    background-color: var(--color-primary, #F5BC15);
    color: var(--color-dark, #0f172a);
    font-size: 0.68rem;
    font-weight: 800;
    height: 18px;
    min-width: 18px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    line-height: 1;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

@media (min-width: 768px) {
    .site-header {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .site-header .col-full {
        max-width: 1240px;
        margin: 0 auto;
        padding: 0 1.5rem;
    }

    .site-branding {
        flex-shrink: 0;
        width: auto;
        float: none;
    }

    .site-branding img {
        max-width: 190px;
        height: auto;
    }

    .main-navigation {
        float: none;
        flex-grow: 1;
        display: flex;
        justify-content: center;
        clear: none;
        width: auto;
    }

    .main-navigation .primary-navigation {
        display: block;
    }

    .main-navigation ul.menu,
    .main-navigation ul.nav-menu {
        display: flex;
        align-items: center;
        gap: 1.75rem;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .main-navigation ul.menu > li,
    .main-navigation ul.nav-menu > li {
        position: relative;
        margin: 0;
    }

    .main-navigation ul.menu > li > a,
    .main-navigation ul.nav-menu > li > a {
        display: inline-block;
        padding: 0.4rem 0;
        font-size: 0.95rem;
        font-weight: 600;
        color: var(--color-dark, #0f172a);
        text-decoration: none;
        transition: color 0.2s ease;
    }

    .main-navigation ul.menu > li > a:hover,
    .main-navigation ul.menu > li.current-menu-item > a,
    .main-navigation ul.nav-menu > li > a:hover,
    .main-navigation ul.nav-menu > li.current-menu-item > a {
        color: var(--color-primary-hover, #ca8a04);
    }
}

@media (max-width: 768px) {
    .site-header {
        position: relative;
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
    .site-header .col-full {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 1rem;
    }
    .site-header .site-branding {
        float: none;
        margin: 0;
        flex-shrink: 0;
    }
    .site-header .site-branding img {
        max-width: 150px;
        height: auto;
        display: block;
    }
    .header-actions {
        display: none;
    }
    .main-navigation {
        float: none;
        margin: 0;
        padding: 0;
        display: flex;
        align-items: center;
        flex-shrink: 0;
    }
    .main-navigation #site-navigation-menu-toggle,
    button.menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: relative;
        margin: 0;
        float: none;
        width: 40px;
        height: 40px;
        flex-shrink: 0;
    }
    button.menu-toggle svg {
        width: 20px;
        height: 20px;
    }
    .handheld-navigation {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background-color: #ffffff;
        border-top: 1px solid var(--color-border, #f1f5f9);
        box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
        z-index: 1000;
        padding: 0.5rem 1rem;
    }
    .handheld-navigation ul.menu {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .handheld-navigation ul.menu li {
        border-bottom: 1px solid #f1f5f9;
    }
    .handheld-navigation ul.menu li:last-child {
        border-bottom: none;
    }
    .handheld-navigation ul.menu li a {
        display: block;
        padding: 0.75rem 0.5rem;
        color: var(--color-dark, #0f172a);
        font-weight: 600;
        font-size: 0.95rem;
        text-decoration: none;
    }
    .handheld-navigation ul.menu li a:hover,
    .handheld-navigation ul.menu li.current-menu-item > a {
        color: var(--color-primary-hover, #ca8a04);
    }
    .footer-bottom {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .footer-grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   6. Custom Homepage Layout (Hero, Supply & Partners)
   ========================================================================== */
.page-template-home-page #content,
.page-template-home-page-php #content,
.page-template-home-page #content .col-full,
.page-template-home-page-php #content .col-full {
    max-width: 100%;
    padding: 0;
    margin: 0;
}

.hero-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    padding: 1.5rem;
    min-height: 520px;
}

.hero-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4rem 8%;
    background-size: cover;
    background-position: center;
    color: #ffffff;
    border-radius: 5px;
    overflow: hidden;
}

.hero-col-left {
    background-image: 
        linear-gradient(180deg, rgba(15, 23, 42, 0.25) 0%, rgba(9, 13, 22, 0.6) 100%),
        url('/wp-content/uploads/2026/08/hero-partneriams.jpg');
}

.hero-col-right {
    background-image: 
        linear-gradient(180deg, rgba(15, 23, 42, 0.25) 0%, rgba(9, 13, 22, 0.6) 100%),
        url('/wp-content/uploads/2026/08/hero-eshop.jpg');
}

.hero-content {
    max-width: 480px;
}

.hero-icon-wrapper {
    background-color: rgba(245, 188, 21, 0.1);
    border: 1px solid rgba(245, 188, 21, 0.2);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
}

.hero-heading {
    font-size: clamp(1.5rem, 3vw, 1.85rem);
    font-weight: 800;
    letter-spacing: -0.01em;
    margin-bottom: 0.75rem;
    text-transform: uppercase;
    color: var(--color-text-on-dark);
}

.hero-desc {
    font-size: 1.1rem;
    color: var(--color-text-on-dark);
    margin-bottom: 2rem;
    line-height: 1.6;
}

.btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background-color: var(--color-primary);
    color: var(--color-dark);
    padding: 0.85rem 1.75rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    box-shadow: var(--shadow-sm);
}

.btn-primary:hover {
    background-color: var(--color-primary-hover);
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

.supply-section {
    padding: 6rem 0;
    background-color: #ffffff;
    text-align: center;
}

.section-subtitle {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--color-primary-hover);
    text-transform: uppercase;
    margin-bottom: 0.75rem;
    display: block;
}

.section-title {
    font-size: clamp(1.4rem, 2.5vw, 1.75rem);
    font-weight: 800;
    color: var(--color-dark);
    margin: 0 auto 1.25rem auto;
    line-height: 1.25;
    text-align: center;
}

.section-desc {
    font-size: 1.1rem;
    color: var(--color-muted);
    max-width: 720px;
    margin: 0 auto 4rem auto;
    line-height: 1.65;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    text-align: left;
}

.feature-card {
    padding: 2rem 1.5rem;
    border-radius: 12px;
    border: 1px solid var(--color-border);
    background-color: #ffffff;
}

.feature-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(245, 188, 21, 0.3);
}

.feature-icon-wrapper {
    margin-bottom: 1.25rem;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.feature-card h3 {
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.feature-card p {
    font-size: 0.9rem;
    color: var(--color-muted);
    line-height: 1.5;
}

/* ==========================================================================
   Featured Categories Section
   ========================================================================== */
.featured-categories-section {
    padding: 5rem 0;
    background-color: var(--color-light-bg, #f8fafc);
    border-bottom: 1px solid var(--color-border, #f1f5f9);
}

.categories-grid {
    display: grid;
    grid-template-columns: repeat(var(--grid-columns, 5), 1fr);
    gap: 1.5rem;
    margin-top: 2.5rem;
    text-align: left;
}

.category-card {
    display: flex;
    flex-direction: column;
    padding: 1.25rem;
    border-radius: 12px;
    border: 1px solid var(--color-border, #e2e8f0);
    background-color: #ffffff;
    text-decoration: none;
    color: var(--color-dark, #0f172a);
    transition: all 0.25s ease;
}

.category-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md, 0 4px 6px -1px rgba(0,0,0,0.05));
    border-color: var(--color-primary, #F5BC15);
}

.category-image-wrapper {
    width: 100%;
    height: 160px;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 1.25rem;
    background-color: var(--color-light-bg, #f8fafc);
    display: flex;
    align-items: center;
    justify-content: center;
}

.category-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.category-card:hover .category-image {
    transform: scale(1.06);
}

.category-image-placeholder {
    color: var(--color-muted, #94a3b8);
}

.category-content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.category-title {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    color: var(--color-dark, #0f172a);
    transition: color 0.2s ease;
}

.category-card:hover .category-title {
    color: var(--color-primary-hover, #ca8a04);
}

.category-desc {
    font-size: 0.875rem;
    color: var(--color-muted, #64748b);
    margin: 0;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (max-width: 1100px) {
    .categories-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .categories-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }
}

@media (max-width: 480px) {
    .categories-grid {
        grid-template-columns: 1fr;
    }
}

.partners-cta-section {
    background-color: var(--color-light-bg);
    padding: 6rem 0;
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
}

.partners-cta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.partners-cta-content {
    text-align: left;
    margin-left: 0;
    margin-bottom: 1rem;
}

.partners-cta-desc {
    font-size: 1.05rem;
    color: var(--color-muted);
    margin-bottom: 1.75rem;
}

.partners-bullets {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    margin-bottom: 2.5rem;
}

.bullet-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 600;
}

.bullet-icon-svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    border: 1.5px solid var(--color-dark);
    background-color: transparent;
    color: var(--color-dark);
    padding: 0.85rem 1.75rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.btn-outline:hover {
    background-color: #ffffff;
    box-shadow: var(--shadow-sm);
}

.partners-cta-image {
    width: 100%;
    height: 460px;
    object-fit: cover;
    border-radius: 5px;
    box-shadow: var(--shadow-md);
}

@media (max-width: 1024px) {
    .hero-split {
        min-height: auto;
    }
    .hero-col {
        padding: 3.5rem 5%;
    }
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.25rem;
    }
    .partners-cta-grid {
        gap: 2.5rem;
    }
    .partners-cta-image {
        height: 380px;
    }
}

@media (max-width: 768px) {
    .hero-split {
        grid-template-columns: 1fr;
        gap: 1rem;
        padding: 1rem;
    }
    .partners-cta-grid {
        grid-template-columns: 1fr;
    }
    .partners-cta-image {
        height: 320px;
    }
}

@media (max-width: 480px) {
    .features-grid {
        grid-template-columns: 1fr;
    }
}

.woocommerce-variation-availability .stock.available-on-backorder,
.stock.available-on-backorder {
    display: inline-block;
    background-color: #fffbeb;
    color: var(--color-dark);
    border-left: 3px solid var(--color-primary);
    padding: 0.5rem 0.85rem;
    font-weight: 600;
    font-size: 0.9rem;
    margin: 0.75rem 0;
    border-radius: 0 4px 4px 0;
}