:root {
    --sms-black: #000;
    --sms-orange: #ff5b00;
    --sms-yellow: #ffe100;
    --sms-gray: #b0b7c5;
    --sms-light-gray: #eef0f4;
    --sms-white: #fff;
    --sms-edge: 10px;
    --sms-gap: 40px;
    --sms-font: 12pt;
    --sms-line: 14.4pt;
    --sms-frame: 0px;
    --sms-collapsed: 78px;
    --sms-column: calc((100vw - (var(--sms-frame) * 2) - (var(--sms-edge) * 2) - (var(--sms-gap) * 7)) / 8);
    --sms-slide-width: calc((var(--sms-column) * 4) + (var(--sms-gap) * 3));
    --sms-slider-left: calc((var(--sms-column) * 2) + (var(--sms-gap) * 2));
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    background: var(--sms-white);
}

body.sms-shop {
    min-height: 100%;
    margin: 0;
    overflow-x: hidden;
    color: var(--sms-black);
    background: var(--sms-white);
    font-family: Arial, Helvetica, sans-serif;
    font-size: var(--sms-font);
    line-height: var(--sms-line);
    letter-spacing: 0;
}

body.admin-bar .sms-topbar,
body.admin-bar .sms-about-panel {
    top: 32px;
}

body.admin-bar .sms-page,
body.admin-bar .sms-preloader {
    min-height: calc(100vh - 32px);
}

button,
a,
select,
input {
    font: inherit;
    color: inherit;
}

a {
    text-decoration: none;
}

.sms-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
    padding-right: var(--sms-edge);
    padding-left: var(--sms-edge);
}

.sms-page {
    position: relative;
    min-height: 100vh;
    margin: var(--sms-frame);
    overflow: visible;
    background: var(--sms-white);
    opacity: .1;
    transition: opacity 900ms ease;
}

body.sms-loaded .sms-page {
    opacity: 1;
}

.sms-preloader {
    position: fixed;
    inset: var(--sms-frame);
    z-index: 100;
    display: grid;
    min-height: calc(100vh - var(--sms-frame) * 2);
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
    padding: var(--sms-edge);
    pointer-events: none;
    transition: opacity 900ms ease, visibility 900ms ease;
}

.sms-preloader__logo {
    grid-column: 3 / 7;
    align-self: center;
    display: block;
    width: 100%;
    height: auto;
}

body.sms-loaded .sms-preloader {
    visibility: hidden;
    opacity: 0;
}

.sms-topbar {
    position: fixed;
    top: calc(var(--sms-frame) + var(--sms-edge));
    right: var(--sms-frame);
    left: var(--sms-frame);
    z-index: 30;
    align-items: start;
    pointer-events: none;
}

.sms-intro {
    grid-column: 1 / 3;
    margin: 0;
}

.sms-about-toggle {
    grid-column: 3 / 5;
    justify-self: start;
}

.sms-cart-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    grid-column: 8 / 9;
    justify-self: end;
    padding: 3px 12px 4px;
    border-radius: 999px;
    background: var(--sms-light-gray);
    gap: .25em;
    transition: transform 520ms cubic-bezier(.22, 1, .36, 1), background-color 420ms ease, color 420ms ease;
}

.sms-cart-link::after {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: 3px;
    content: "";
}

.sms-cart-link.has-items {
    background: var(--sms-yellow);
    color: var(--sms-black);
}

.sms-link-button {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    cursor: pointer;
    text-align: left;
}

.sms-toggle {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.sms-toggle-icon {
    position: relative;
    display: inline-block;
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
}

.sms-toggle-icon::before,
.sms-toggle-icon::after {
    position: absolute;
    top: 50%;
    left: 0;
    width: 9px;
    height: 1px;
    background: currentColor;
    content: "";
    transform: translateY(-50%);
    transition: transform 320ms cubic-bezier(.22, 1, .36, 1), opacity 320ms ease;
}

.sms-toggle-icon::after {
    transform: translateY(-50%) rotate(90deg);
}

.sms-toggle.is-open .sms-toggle-icon::after {
    opacity: 0;
    transform: translateY(-50%) rotate(0deg);
}

.sms-about-toggle:hover .sms-toggle-icon,
.sms-about-toggle:focus-visible .sms-toggle-icon {
    transform: rotate(360deg);
    transition: transform 520ms cubic-bezier(.22, 1, .36, 1);
}

.sms-topbar a,
.sms-topbar button {
    pointer-events: auto;
}

.sms-about-panel {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 25;
    padding-top: var(--sms-edge);
    padding-bottom: 18px;
    background: var(--sms-white);
    opacity: 0;
    transform: translateY(-100%);
    transition: transform 560ms cubic-bezier(.22, 1, .36, 1), opacity 420ms ease;
    pointer-events: none;
}

.sms-about-panel__inner {
    display: grid;
    grid-column: 1 / 9;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
    opacity: 0;
    transition: opacity 420ms ease 120ms;
}

.sms-about-panel.is-open {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.sms-about-panel.is-open .sms-about-panel__inner {
    opacity: 1;
}

.sms-about-panel__inner p {
    grid-column: 3 / 7;
    margin: 0;
    padding-top: calc(var(--sms-line) + 10px);
}

.sms-about-panel__inner address {
    grid-column: 7 / 8;
    margin: 0;
    padding-top: calc(var(--sms-line) + 10px);
    font-style: normal;
}

.sms-about-panel__inner nav {
    grid-column: 7 / 9;
    padding-top: 16px;
}

.sms-products {
    position: relative;
    z-index: 10;
}

.sms-product-section {
    min-height: calc(100vh - var(--sms-frame) * 2);
    align-items: center;
}

.sms-slider {
    position: relative;
    grid-column: 1 / 9;
    margin-top: 18px;
    cursor: none;
    pointer-events: auto;
    touch-action: pan-y;
    user-select: none;
}

.sms-track {
    position: relative;
    display: flex;
    gap: var(--sms-gap);
    width: 100%;
    height: calc(var(--sms-slide-width) * .75);
    transform: translateX(calc(var(--sms-slider-left) - (var(--sms-current-index, 0) * (var(--sms-slide-width) + var(--sms-gap))) + var(--sms-drag-x, 0px)));
    transition: transform 620ms cubic-bezier(.22, 1, .36, 1);
}

.sms-slider.is-resetting .sms-track {
    transition: none;
}

.sms-slider.is-dragging .sms-track {
    transition: none;
}

.sms-slide {
    position: relative;
    flex: 0 0 var(--sms-slide-width);
    width: var(--sms-slide-width);
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: var(--sms-light-gray);
    opacity: 1;
    transition: opacity 360ms ease, transform 360ms ease;
}

.sms-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: var(--sms-light-gray);
}

.sms-custom-cursor {
    position: fixed;
    z-index: 80;
    display: none;
    width: 38px;
    height: 38px;
    transform: translate(-50%, -50%);
    color: var(--sms-orange);
    font-size: 38px;
    line-height: 38px;
    pointer-events: none;
    transition: transform 160ms ease;
}

.sms-slider:hover .sms-custom-cursor {
    display: block;
}

.sms-custom-cursor.is-left {
    transform: translate(-50%, -50%) rotate(180deg);
}

.sms-info {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 35;
    pointer-events: none;
}

.sms-info.sms-grid {
    padding-right: 0;
    padding-left: 0;
}

.sms-info-box {
    grid-column: 1 / 9;
    display: grid;
    grid-template-rows: auto 0 0;
    height: var(--sms-collapsed);
    max-height: 50vh;
    padding: 10px;
    overflow: hidden;
    background: var(--sms-white);
    transform: translateY(0);
    transition: height 760ms cubic-bezier(.22, 1, .36, 1), transform 760ms cubic-bezier(.22, 1, .36, 1);
    pointer-events: auto;
}

.sms-info-box.is-open {
    grid-template-rows: auto minmax(0, 1fr) auto;
    height: 50vh;
    overflow: hidden;
}

.sms-product-grid {
    display: grid;
    grid-row: 1 / 3;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
    align-items: start;
}

.sms-info-box.is-open .sms-product-grid {
    grid-template-rows: auto minmax(0, 1fr);
}

.sms-product-title {
    grid-column: 1 / 3;
    margin: 0;
    font-size: var(--sms-font);
    line-height: var(--sms-line);
    font-weight: 400;
}

.sms-product-specs {
    min-height: calc(var(--sms-line) * 3);
}

.sms-product-specs p {
    min-height: var(--sms-line);
    margin: 0;
}

.sms-product-specs--a {
    grid-column: 3 / 4;
}

.sms-product-specs--b {
    grid-column: 4 / 6;
}

.sms-actions {
    display: flex;
    flex-wrap: wrap;
    grid-column: 7 / 9;
    justify-content: end;
    gap: 10px;
}

.sms-info-toggle,
.sms-filled-button,
.sms-cart-link {
    min-height: 31px;
    white-space: nowrap;
}

.sms-info-toggle {
    padding: 3px 12px 4px;
    border-radius: 999px;
    background: var(--sms-light-gray);
    transition: transform 420ms cubic-bezier(.22, 1, .36, 1);
}

.sms-filled-button {
    padding: 3px 14px 4px;
    border: 0;
    border-radius: 999px;
    background: var(--sms-orange);
    color: var(--sms-white);
    cursor: pointer;
    transition: transform 520ms cubic-bezier(.22, 1, .36, 1), background-color 420ms ease, color 420ms ease, opacity 220ms ease;
}

.sms-filled-button.is-cart-active {
    background: var(--sms-yellow);
    color: var(--sms-black);
}

.woocommerce a.added_to_cart,
.sms-shop a.added_to_cart {
    display: none !important;
}

.sms-info-toggle:hover,
.sms-info-toggle:focus-visible,
.sms-cart-link:hover,
.sms-cart-link:focus-visible {
    transform: translateY(-10px);
}

.sms-filled-button:hover,
.sms-filled-button:focus-visible {
    transform: translateY(-10px);
}

.sms-filled-button:disabled {
    cursor: not-allowed;
    opacity: .45;
}

.sms-product-more {
    grid-column: 3 / 7;
    grid-row: 2;
    margin: 10px 0 0;
    max-width: 920px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    white-space: pre-line;
    transition: max-height 760ms cubic-bezier(.22, 1, .36, 1), opacity 420ms ease 160ms;
}

.sms-info-box.is-open .sms-product-more {
    max-height: 100%;
    opacity: 1;
}

.sms-cart-status {
    flex-basis: 100%;
    min-height: var(--sms-line);
    text-align: right;
}

.sms-footer {
    display: grid;
    grid-row: 3;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
    align-items: end;
    margin-top: 0;
    padding-top: 18px;
    padding-bottom: 0;
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 420ms ease 180ms, transform 620ms cubic-bezier(.22, 1, .36, 1);
    pointer-events: none;
}

.sms-info-box.is-open .sms-footer {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.sms-footer-logo {
    grid-column: 1 / 2;
    display: block;
    width: 100%;
    max-width: 112px;
    height: auto;
}

.sms-footer > span:nth-child(2) {
    grid-column: 1 / 3;
    margin-top: 18px;
    align-self: end;
}

.sms-footer address {
    grid-column: 3 / 5;
    margin: 0;
    font-style: normal;
}

.sms-footer nav {
    grid-column: 7 / 9;
    justify-self: end;
}

.sms-footer a:hover,
.sms-about-panel a:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.sms-page--standard {
    min-height: 100vh;
    opacity: 1;
}

.sms-standard-home {
    grid-column: 3 / 5;
    justify-self: start;
    pointer-events: auto;
}

.sms-standard-content {
    min-height: calc(100vh - 168px);
    padding-top: 156px;
    padding-bottom: 80px;
}

.single-product .sms-standard-content,
.woocommerce-cart .sms-standard-content,
.woocommerce-checkout .sms-standard-content,
.sms-legal-page .sms-standard-content {
    padding-top: 116px;
}

.sms-standard-content__inner {
    grid-column: 1 / 9;
}

.sms-standard-title {
    margin: 0 0 calc(var(--sms-line) * 2);
    font-size: var(--sms-font);
    line-height: var(--sms-line);
    font-weight: 400;
}

.sms-legal-page .sms-standard-content__inner {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
}

.sms-legal-page .sms-standard-title {
    grid-column: 1 / 3;
    margin: 0;
}

.sms-legal-page .sms-standard-entry {
    grid-column: 3 / 7;
}

.sms-legal-page .sms-standard-entry h1,
.sms-legal-page .sms-standard-entry h2,
.sms-legal-page .sms-standard-entry h3,
.sms-legal-page .sms-standard-entry h4 {
    margin: 0 0 var(--sms-line);
    font-size: var(--sms-font);
    line-height: var(--sms-line);
    font-weight: 400;
}

.sms-legal-page .sms-standard-entry p,
.sms-legal-page .sms-standard-entry ul,
.sms-legal-page .sms-standard-entry ol {
    margin: 0 0 var(--sms-line);
}

.sms-legal-page .sms-standard-entry ul,
.sms-legal-page .sms-standard-entry ol {
    padding-left: 1.1em;
}

.sms-standard-entry > *:first-child {
    margin-top: 0;
}

.sms-standard-entry,
.sms-standard-entry *,
.sms-standard-entry p,
.sms-standard-entry li,
.sms-standard-entry table,
.sms-standard-entry input,
.sms-standard-entry button,
.sms-standard-entry select,
.sms-standard-entry textarea {
    font-size: var(--sms-font);
    line-height: var(--sms-line);
}

.sms-shop .woocommerce,
.sms-shop .woocommerce *,
.sms-shop [class*="wc-block"],
.sms-shop [class*="wc-block"] *,
.sms-shop [class*="wp-block-woocommerce"],
.sms-shop [class*="wp-block-woocommerce"] * {
    font-size: var(--sms-font) !important;
    line-height: var(--sms-line) !important;
}

.sms-shop .wp-block-woocommerce-cart,
.sms-shop .wp-block-woocommerce-checkout,
.sms-shop .wc-block-cart,
.sms-shop .wc-block-checkout,
.sms-shop .wc-block-components-sidebar-layout,
.sms-shop .wc-block-components-main,
.sms-shop .wc-block-components-sidebar {
    width: 100% !important;
    max-width: none !important;
}

.sms-shop .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
}

.sms-shop .wc-block-components-sidebar-layout .wc-block-components-main {
    grid-column: 1 / 6;
    align-self: start;
    padding-right: 0;
}

.sms-shop .wc-block-components-sidebar-layout .wc-block-components-sidebar {
    grid-column: 6 / 9;
    align-self: start;
    padding-left: 0;
    padding-top: 0;
}

.sms-standard-entry a:hover,
.sms-standard-footer a:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.sms-standard-footer {
    align-items: end;
    padding-top: 32px;
    padding-bottom: 10px;
}

.sms-standard-footer .sms-footer-logo {
    grid-column: 1 / 2;
}

.sms-standard-footer > span {
    grid-column: 1 / 3;
}

.sms-standard-footer address {
    grid-column: 3 / 5;
    margin: 0;
    font-style: normal;
}

.sms-standard-footer nav {
    grid-column: 7 / 9;
    justify-self: end;
}

.sms-page--wip {
    min-height: 100vh;
}

.sms-wip-content {
    min-height: 100vh;
    align-items: start;
    padding-top: var(--sms-edge);
}

.sms-wip-content p {
    grid-column: 1 / 3;
    max-width: none;
    margin: 0;
}

.sms-shop .woocommerce {
    width: 100%;
}

.sms-shop .woocommerce table.shop_table,
.sms-shop .wc-block-cart-items,
.sms-shop .wc-block-components-totals-wrapper,
.sms-shop .wc-block-checkout__form {
    width: 100%;
    border: 0;
    border-collapse: collapse;
}

.sms-shop .woocommerce table.shop_table th,
.sms-shop .woocommerce table.shop_table td,
.sms-shop .wc-block-cart-items th,
.sms-shop .wc-block-cart-items td {
    padding: 0 0 var(--sms-line);
    border: 0;
    vertical-align: top;
}

.sms-shop .woocommerce table.shop_table thead th,
.sms-shop .wc-block-cart-items thead th {
    font-weight: 400;
    color: var(--sms-gray);
}

.sms-shop .wc-block-cart-items__header,
.sms-shop .wc-block-cart-items thead,
.sms-shop table.wc-block-cart-items .wc-block-cart-items__header,
.sms-shop .woocommerce-cart-form table.shop_table thead {
    display: none;
}

.sms-shop .wc-block-cart-items__row {
    display: grid !important;
    grid-template-columns: calc((var(--sms-column) * 2) + var(--sms-gap)) minmax(0, 1fr) var(--sms-column);
    column-gap: var(--sms-gap);
    align-items: start;
}

.sms-shop .wc-block-cart-items__row:not(:last-child),
.sms-shop .woocommerce-cart-form table.shop_table tr.cart_item:not(:last-child) {
    margin-bottom: var(--sms-gap);
}

.sms-shop .wc-block-cart-item__image {
    width: calc((var(--sms-column) * 2) + var(--sms-gap)) !important;
    padding: 0 !important;
}

.sms-shop .wc-block-cart-item__image img,
.sms-shop .woocommerce-cart-form .product-thumbnail img {
    display: block;
    width: calc((var(--sms-column) * 2) + var(--sms-gap)) !important;
    max-width: none !important;
    height: auto !important;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.sms-shop .wc-block-cart-item__product {
    grid-column: 2 / 3;
    padding: 0 !important;
}

.sms-shop .wc-block-cart-item__total {
    grid-column: 3 / 4;
    padding: 0 !important;
    text-align: left !important;
}

.sms-shop .wc-block-cart__totals-title {
    padding-top: 0 !important;
    margin-top: 0 !important;
    margin-bottom: calc(var(--sms-line) * 2) !important;
}

.sms-shop .wc-block-cart__sidebar,
.sms-shop .wp-block-woocommerce-cart-order-summary-block {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.sms-shop .wc-block-components-totals-wrapper,
.sms-shop .wc-block-components-totals-item,
.sms-shop .wc-block-cart__totals-title,
.sms-shop .wc-block-components-product-name,
.sms-shop .wc-block-components-product-metadata,
.sms-shop .wc-block-components-product-price,
.sms-shop .wc-block-components-totals-item__label,
.sms-shop .wc-block-components-totals-item__value {
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.sms-shop .woocommerce-cart-form,
.sms-shop .cart-collaterals,
.sms-shop .woocommerce-checkout-review-order,
.sms-shop .woocommerce-billing-fields,
.sms-shop .woocommerce-shipping-fields,
.sms-shop .woocommerce-additional-fields,
.sms-shop .woocommerce-MyAccount-navigation,
.sms-shop .woocommerce-MyAccount-content {
    margin: 0 0 calc(var(--sms-line) * 2);
}

.sms-shop .cart-collaterals .cart_totals,
.sms-shop .woocommerce .col2-set .col-1,
.sms-shop .woocommerce .col2-set .col-2 {
    float: none;
    width: 100%;
}

.sms-shop .woocommerce h2,
.sms-shop .woocommerce h3,
.sms-shop .wc-block-components-title,
.sms-shop .wp-block-heading,
.sms-shop .wc-block-cart__totals-title,
.sms-shop .wc-block-components-totals-footer-item,
.sms-shop .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.sms-shop .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    margin: 0 0 var(--sms-line);
    font-size: var(--sms-font) !important;
    line-height: var(--sms-line) !important;
    font-weight: 400;
}

.sms-shop .woocommerce .button,
.sms-shop .woocommerce button.button,
.sms-shop .woocommerce a.button,
.sms-shop .wc-block-components-button,
.sms-shop .wp-element-button,
.sms-shop .wc-block-cart__submit-button {
    display: inline-flex;
    min-height: 31px;
    align-items: center;
    justify-content: center;
    padding: 3px 14px 4px;
    border: 0;
    border-radius: 999px;
    background: var(--sms-orange) !important;
    color: var(--sms-white) !important;
    font: inherit;
    font-weight: 400;
    text-decoration: none;
    transition: transform 520ms cubic-bezier(.22, 1, .36, 1), background-color 420ms ease, color 420ms ease, opacity 220ms ease;
}

.sms-shop .woocommerce .button:hover,
.sms-shop .woocommerce button.button:hover,
.sms-shop .woocommerce a.button:hover,
.sms-shop .wc-block-components-button:hover,
.sms-shop .wp-element-button:hover,
.sms-shop .wc-block-cart__submit-button:hover {
    transform: translateY(-10px);
    background: var(--sms-orange) !important;
    color: var(--sms-white) !important;
}

.sms-shop .woocommerce .button:disabled,
.sms-shop .woocommerce .button:disabled[disabled] {
    opacity: .45;
}

.sms-shop .quantity .qty,
.sms-shop .woocommerce input.input-text,
.sms-shop .woocommerce textarea,
.sms-shop .woocommerce select,
.sms-shop .wc-block-components-text-input input,
.sms-shop .wc-block-components-combobox input,
.sms-shop .wc-block-components-form .wc-block-components-text-input input,
.sms-shop .wc-block-components-quantity-selector {
    min-height: 31px;
    padding: 3px 10px 4px;
    border: 1px solid var(--sms-gray);
    border-radius: 0;
    background: var(--sms-white);
    color: var(--sms-black);
    font: inherit;
}

.sms-shop .wc-block-components-quantity-selector {
    display: inline-flex;
    align-items: center;
    min-height: var(--sms-line);
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.sms-shop .wc-block-components-quantity-selector input,
.sms-shop .wc-block-components-quantity-selector button {
    min-height: 0;
    padding: 0 8px;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.sms-shop .wc-block-components-quantity-selector input {
    width: 28px;
    text-align: center;
}

.sms-shop .woocommerce form .form-row {
    margin: 0 0 var(--sms-line);
    padding: 0;
}

.sms-shop .woocommerce form .form-row label,
.sms-shop .wc-block-components-text-input label,
.sms-shop .wc-block-components-checkbox label {
    margin-bottom: 3px;
    color: var(--sms-black);
    font: inherit;
}

.sms-shop .woocommerce-message,
.sms-shop .woocommerce-info,
.sms-shop .woocommerce-error,
.sms-shop .wc-block-components-notice-banner {
    margin: 0 0 calc(var(--sms-line) * 2);
    padding: 10px;
    border: 1px solid var(--sms-gray);
    border-radius: 0;
    background: var(--sms-white);
    color: var(--sms-black);
    font: inherit;
}

.sms-shop.woocommerce-checkout .wc-block-components-order-summary,
.sms-shop.woocommerce-checkout .wc-block-components-checkout-step,
.sms-shop.woocommerce-checkout .wc-block-components-totals-wrapper,
.sms-shop.woocommerce-checkout .wc-block-components-panel,
.sms-shop.woocommerce-checkout .wc-block-components-radio-control,
.sms-shop.woocommerce-checkout .woocommerce-checkout-review-order,
.sms-shop.woocommerce-checkout .woocommerce-billing-fields,
.sms-shop.woocommerce-checkout .woocommerce-additional-fields,
.sms-shop.woocommerce-checkout .woocommerce form.checkout_coupon,
.sms-shop.woocommerce-checkout .woocommerce form.login,
.sms-shop.woocommerce-checkout .woocommerce form.checkout,
.sms-shop.woocommerce-checkout .wc-block-components-text-input input,
.sms-shop.woocommerce-checkout .wc-block-components-combobox input,
.sms-shop.woocommerce-checkout .woocommerce input.input-text,
.sms-shop.woocommerce-checkout .woocommerce textarea,
.sms-shop.woocommerce-checkout .woocommerce select {
    border-radius: 8px !important;
}

.sms-shop .woocommerce-message {
    display: flex;
    min-height: 31px;
    align-items: center;
    justify-content: space-between;
    gap: var(--sms-gap);
    margin: 0 0 calc(var(--sms-line) * 2);
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--sms-black);
}

.sms-shop .woocommerce-message .button,
.sms-shop .woocommerce-message a.button {
    order: 2;
    min-height: 31px;
    padding: 3px 12px 4px;
    background: var(--sms-light-gray) !important;
    color: var(--sms-black) !important;
}

.sms-shop .woocommerce-message .button:hover,
.sms-shop .woocommerce-message a.button:hover {
    background: var(--sms-light-gray) !important;
    color: var(--sms-black) !important;
}

.sms-shop .woocommerce-error {
    border-color: var(--sms-orange);
}

.sms-shop .woocommerce-message::before,
.sms-shop .woocommerce-info::before,
.sms-shop .woocommerce-error::before {
    display: none;
}

.sms-shop .woocommerce ul.order_details,
.sms-shop .woocommerce-MyAccount-navigation ul {
    margin: 0 0 calc(var(--sms-line) * 2);
    padding: 0;
    list-style: none;
}

.sms-shop .woocommerce-MyAccount-navigation li {
    margin: 0 14px var(--sms-line) 0;
    display: inline-block;
}

.sms-shop div.product {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--sms-gap);
}

.sms-shop div.product div.images,
.sms-shop div.product .sms-single-gallery,
.sms-shop div.product div.summary {
    float: none;
    width: auto;
    margin: 0;
}

.sms-shop div.product div.images,
.sms-shop div.product .sms-single-gallery {
    grid-column: 1 / 5;
}

.sms-shop div.product div.summary {
    grid-column: 5 / 9;
}

.sms-shop div.product .woocommerce-product-gallery__trigger,
.sms-shop div.product div.images .woocommerce-product-gallery__trigger {
    display: none !important;
}

.sms-shop div.product .sms-single-gallery,
.sms-shop div.product div.images .woocommerce-product-gallery__wrapper {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: var(--sms-gap);
    row-gap: var(--sms-gap);
    margin: 0;
}

.sms-shop div.product .sms-single-gallery__item {
    grid-column: 1 / 5;
    margin: 0;
}

.sms-shop div.product .sms-single-gallery__item--main,
.sms-shop div.product div.images .woocommerce-product-gallery__image:first-child {
    grid-column: 1 / 5;
}

.sms-shop div.product div.images .woocommerce-product-gallery__image:not(:first-child) {
    grid-column: 1 / 5;
}

.sms-shop div.product .sms-single-gallery__item img,
.sms-shop div.product div.images .woocommerce-product-gallery__image a,
.sms-shop div.product div.images .woocommerce-product-gallery__image img {
    display: block;
    width: 100%;
    height: auto;
}

.sms-shop div.product div.images .flex-control-thumbs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--sms-gap);
    margin: var(--sms-gap) 0 0;
    padding: 0;
    list-style: none;
}

.sms-shop div.product div.images .flex-control-thumbs li {
    width: auto;
    margin: 0;
}

.sms-shop div.product .product_title,
.sms-shop div.product p.price,
.sms-shop div.product form.cart,
.sms-shop div.product .woocommerce-product-details__short-description {
    margin: 0 0 var(--sms-line);
}

.sms-shop div.product .product_title,
.sms-shop div.product p.price {
    color: var(--sms-black) !important;
    font-size: var(--sms-font) !important;
    line-height: var(--sms-line) !important;
    font-weight: 400;
}

.sms-shop div.product p.price,
.sms-shop div.product p.price .amount,
.sms-shop div.product p.price bdi {
    color: var(--sms-black) !important;
}

.sms-shop div.product form.cart {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sms-shop div.product form.cart .quantity {
    margin: 0;
}

.sms-shop div.product form.cart .qty {
    width: 32px;
    min-height: 31px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: center;
    color: var(--sms-black);
    font: inherit;
    line-height: 31px;
}

.sms-shop div.product form.cart .single_add_to_cart_button {
    min-height: 31px !important;
    padding: 3px 14px 4px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: var(--sms-orange) !important;
    color: var(--sms-white) !important;
    font: inherit !important;
    font-weight: 400 !important;
}

.sms-single-description {
    margin-top: calc(var(--sms-line) * 2);
}

.sms-single-description h2 {
    margin: 0 0 var(--sms-line);
    font-size: var(--sms-font) !important;
    line-height: var(--sms-line) !important;
    font-weight: 400;
}

.sms-single-description p {
    margin: 0 0 var(--sms-line);
}

.sms-shop div.product form.cart .variations {
    margin: 0 0 var(--sms-line);
}

.sms-shop div.product form.cart .variations th,
.sms-shop div.product form.cart .variations td {
    display: block;
    padding: 0 0 6px;
    text-align: left;
}

.sms-shop div.product .related,
.sms-shop div.product .upsells {
    grid-column: 1 / 9;
    margin-top: calc(var(--sms-line) * 2);
}

.sms-shop div.product .woocommerce-tabs ul.tabs,
.sms-shop div.product .woocommerce-tabs,
.sms-shop div.product .woocommerce-tabs .reviews_tab,
.sms-shop div.product .product_meta {
    display: none !important;
}

.sms-shop div.product .woocommerce-tabs ul.tabs {
    margin: 0 0 var(--sms-line);
    padding: 0;
}

.sms-shop div.product .woocommerce-tabs ul.tabs li {
    margin: 0 14px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.sms-shop div.product .woocommerce-tabs ul.tabs::before,
.sms-shop div.product .woocommerce-tabs ul.tabs li::before,
.sms-shop div.product .woocommerce-tabs ul.tabs li::after {
    display: none;
}

@media (max-width: 780px) {
    :root {
        --sms-gap: 10px;
        --sms-collapsed: 176px;
        --sms-column: calc((100vw - (var(--sms-frame) * 2) - (var(--sms-edge) * 2) - (var(--sms-gap) * 3)) / 4);
        --sms-slide-width: calc((var(--sms-column) * 4) + (var(--sms-gap) * 3));
        --sms-slider-left: 0px;
    }

    body.admin-bar .sms-topbar,
    body.admin-bar .sms-about-panel {
        top: 46px;
    }

    .sms-grid,
    .sms-preloader,
    .sms-track,
    .sms-product-grid,
    .sms-footer {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .sms-preloader__logo,
    .sms-slider,
    .sms-info-box {
        grid-column: 1 / 5;
    }

    .sms-intro {
        grid-column: 1 / 4;
    }

    .sms-about-toggle {
        grid-column: 1 / 3;
        margin-top: calc(var(--sms-line) * 2 + 10px);
    }

    .sms-cart-link {
        grid-column: 4 / 5;
    }

    .sms-about-panel__inner {
        grid-column: 1 / 5;
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .sms-about-panel__inner p {
        grid-column: 1 / 5;
    }

    .sms-about-panel__inner address,
    .sms-about-panel__inner nav {
        grid-column: 1 / 5;
    }

    .sms-product-title {
        grid-column: 1 / 3;
    }

    .sms-product-specs--a {
        grid-column: 3 / 4;
    }

    .sms-product-specs--b {
        grid-column: 4 / 5;
    }

    .sms-actions {
        grid-column: 1 / 5;
        justify-content: start;
        margin-top: 10px;
    }

    .sms-product-more {
        grid-column: 1 / 5;
    }

    .sms-footer-logo,
    .sms-footer > span:nth-child(2),
    .sms-footer address,
    .sms-footer nav,
    .sms-standard-home,
    .sms-standard-content__inner,
    .sms-standard-footer .sms-footer-logo,
    .sms-standard-footer > span,
    .sms-standard-footer address,
    .sms-standard-footer nav {
        grid-column: 1 / 5;
        justify-self: start;
        margin-top: 16px;
    }

    .sms-standard-content {
        padding-top: 172px;
    }

    .sms-standard-content__inner {
        margin-top: 0;
    }

    .sms-legal-page .sms-standard-content__inner {
        display: block;
    }

    .sms-legal-page .sms-standard-title {
        margin-bottom: calc(var(--sms-line) * 2);
    }

    .sms-shop .woocommerce table.shop_table,
    .sms-shop .woocommerce table.shop_table tbody,
    .sms-shop .woocommerce table.shop_table tr,
    .sms-shop .woocommerce table.shop_table td {
        display: block;
        width: 100%;
    }

    .sms-shop .wc-block-cart-items__row {
        grid-template-columns: calc((var(--sms-column) * 2) + var(--sms-gap)) minmax(0, 1fr);
        row-gap: var(--sms-line);
    }

    .sms-shop .wc-block-cart-item__total {
        grid-column: 2 / 3;
    }

    .sms-shop div.product {
        display: block;
    }

    .sms-shop div.product div.images,
    .sms-shop div.product div.summary {
        margin-bottom: calc(var(--sms-line) * 2);
    }

    .sms-shop .wc-block-components-sidebar-layout {
        display: block !important;
    }

    .sms-shop .wc-block-components-sidebar-layout .wc-block-components-main,
    .sms-shop .wc-block-components-sidebar-layout .wc-block-components-sidebar {
        width: 100% !important;
        padding: 0;
    }
}
