/* ==========================================================
   techOdec Commerce Pages
   Cart, Checkout, Order Received, Empty Cart and Account basics
   ========================================================== */

body.techodec-commerce-page {
    --commerce-surface:
        rgba(255, 255, 255, .88);
    --commerce-surface-solid:
        #ffffff;
    --commerce-surface-soft:
        rgba(255, 255, 255, .58);
    --commerce-border:
        rgba(96, 76, 51, .14);
    --commerce-border-strong:
        rgba(96, 76, 51, .22);
    --commerce-text:
        var(--color-text, #242321);
    --commerce-muted:
        var(--color-text-light, #74716c);
    --commerce-accent:
        var(--color-primary, #cfa040);
    --commerce-accent-dark:
        #a97821;
    --commerce-danger:
        #a6443b;
    --commerce-success:
        #60764f;
    --commerce-radius-lg:
        1.6rem;
    --commerce-radius-md:
        1rem;
    --commerce-shadow:
        0 24px 60px
        rgba(55, 43, 29, .09);

    background:
        var(--color-background, #f7f4ee);
}

/* ----------------------------------------------------------
   Page shell
---------------------------------------------------------- */

body.techodec-commerce-page
.site-page {
    padding-block:
        clamp(2.5rem, 5vw, 5.5rem);
}

body.techodec-commerce-page
.site-page__article > .container {
    width:
        min(
            100% - 2rem,
            1380px
        );
}

body.techodec-commerce-page
.site-page__header {
    margin-bottom:
        clamp(1.6rem, 3vw, 2.8rem);
}

body.techodec-commerce-page
.site-page__title {
    max-width: 12ch;
    margin: 0;

    color: var(--commerce-text);

    font-size:
        clamp(3rem, 6vw, 6rem);
    letter-spacing: -.065em;
    line-height: .92;
}

body.techodec-commerce-page
.site-page__content {
    color: var(--commerce-text);
}

body.techodec-commerce-page
.site-page__content > :first-child {
    margin-top: 0;
}

/* ----------------------------------------------------------
   Purchase progress
---------------------------------------------------------- */

.techodec-commerce-progress {
    margin:
        0
        0
        clamp(1.5rem, 3vw, 2.5rem);
}

.techodec-commerce-progress__list {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    max-width: 720px;
    margin: 0;
    padding: 0;

    list-style: none;
}

.techodec-commerce-progress__item {
    position: relative;
    display: grid;
    justify-items: center;

    min-width: 0;
}

.techodec-commerce-progress__item:not(:last-child)::after {
    position: absolute;
    z-index: 0;
    top: 16px;
    left: calc(50% + 17px);
    right: calc(-50% + 17px);

    height: 1px;

    background:
        var(--commerce-border-strong);

    content: "";
}

.techodec-commerce-progress__item[data-state="complete"]:not(:last-child)::after {
    background:
        var(--commerce-accent);
}

.techodec-commerce-progress__step {
    position: relative;
    z-index: 1;

    display: grid;
    justify-items: center;
    gap: .5rem;

    min-width: 0;

    color: var(--commerce-muted);

    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

.techodec-commerce-progress__step::before {
    display: grid;
    place-items: center;

    width: 33px;
    height: 33px;

    border: 1px solid
        var(--commerce-border-strong);
    border-radius: 50%;

    background:
        var(--color-background, #f7f4ee);
    color: var(--commerce-muted);

    content: "";
}

.techodec-commerce-progress__item:nth-child(1)
.techodec-commerce-progress__step::before {
    content: "1";
}

.techodec-commerce-progress__item:nth-child(2)
.techodec-commerce-progress__step::before {
    content: "2";
}

.techodec-commerce-progress__item:nth-child(3)
.techodec-commerce-progress__step::before {
    content: "3";
}

.techodec-commerce-progress__item[data-state="current"]
.techodec-commerce-progress__step,
.techodec-commerce-progress__item[data-state="complete"]
.techodec-commerce-progress__step {
    color: var(--commerce-text);
}

.techodec-commerce-progress__item[data-state="current"]
.techodec-commerce-progress__step::before {
    border-color:
        var(--commerce-accent);

    background:
        var(--commerce-accent);
    color: #fff;

    box-shadow:
        0 8px 20px
        rgba(207, 160, 64, .24);
}

.techodec-commerce-progress__item[data-state="complete"]
.techodec-commerce-progress__step::before {
    border-color:
        var(--commerce-accent);

    background:
        #fff;
    color:
        var(--commerce-accent-dark);

    content: "✓";
}

/* ----------------------------------------------------------
   Shared WooCommerce surfaces
---------------------------------------------------------- */

body.techodec-commerce-page
.wc-block-cart,
body.techodec-commerce-page
.wc-block-checkout,
body.techodec-commerce-page
.woocommerce-cart-form,
body.techodec-commerce-page
.woocommerce-checkout,
body.techodec-commerce-page
.woocommerce-order {
    color: var(--commerce-text);
}

body.techodec-commerce-page
.wc-block-components-title,
body.techodec-commerce-page
.wc-block-components-checkout-step__heading,
body.techodec-commerce-page
.woocommerce h2,
body.techodec-commerce-page
.woocommerce h3 {
    color: var(--commerce-text);

    letter-spacing: -.025em;
}

body.techodec-commerce-page
.wc-block-components-button,
body.techodec-commerce-page
.woocommerce a.button,
body.techodec-commerce-page
.woocommerce button.button,
body.techodec-commerce-page
.woocommerce input.button,
body.techodec-commerce-page
#place_order {
    min-height: 52px;
    padding:
        .85rem
        1.35rem;

    border: 1px solid
        var(--commerce-accent) !important;
    border-radius: 999px !important;

    background:
        var(--commerce-accent) !important;
    color: #fff !important;

    box-shadow:
        0 12px 28px
        rgba(207, 160, 64, .2);

    font-weight: 750 !important;
    line-height: 1.2;
    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        filter .2s ease;
}

body.techodec-commerce-page
.wc-block-components-button:hover,
body.techodec-commerce-page
.woocommerce a.button:hover,
body.techodec-commerce-page
.woocommerce button.button:hover,
body.techodec-commerce-page
.woocommerce input.button:hover,
body.techodec-commerce-page
#place_order:hover {
    filter: brightness(.97);

    transform: translateY(-1px);

    box-shadow:
        0 16px 34px
        rgba(207, 160, 64, .26);
}

body.techodec-commerce-page
.wc-block-components-button:focus-visible,
body.techodec-commerce-page
.woocommerce a.button:focus-visible,
body.techodec-commerce-page
.woocommerce button.button:focus-visible,
body.techodec-commerce-page
.woocommerce input.button:focus-visible,
body.techodec-commerce-page
#place_order:focus-visible {
    outline: 3px solid
        rgba(207, 160, 64, .32);
    outline-offset: 3px;
}

body.techodec-commerce-page
input[type="text"],
body.techodec-commerce-page
input[type="email"],
body.techodec-commerce-page
input[type="tel"],
body.techodec-commerce-page
input[type="number"],
body.techodec-commerce-page
input[type="password"],
body.techodec-commerce-page
select,
body.techodec-commerce-page
textarea,
body.techodec-commerce-page
.wc-block-components-text-input input,
body.techodec-commerce-page
.wc-block-components-combobox
.wc-block-components-combobox-control input {
    min-height: 50px;

    border: 1px solid
        var(--commerce-border-strong) !important;
    border-radius: .8rem !important;

    background: #fff !important;
    color: var(--commerce-text) !important;

    box-shadow: none !important;
}

body.techodec-commerce-page
textarea {
    min-height: 110px;
}

body.techodec-commerce-page
input:focus,
body.techodec-commerce-page
select:focus,
body.techodec-commerce-page
textarea:focus,
body.techodec-commerce-page
.wc-block-components-text-input input:focus {
    border-color:
        var(--commerce-accent) !important;

    outline: 3px solid
        rgba(207, 160, 64, .16) !important;
    outline-offset: 1px;
}

/* ----------------------------------------------------------
   Notices and validation
---------------------------------------------------------- */

body.techodec-commerce-page
.woocommerce-error,
body.techodec-commerce-page
.woocommerce-message,
body.techodec-commerce-page
.woocommerce-info,
body.techodec-commerce-page
.wc-block-components-notice-banner {
    margin-bottom: 1rem;
    padding: 1rem 1.1rem !important;

    border: 1px solid
        var(--commerce-border) !important;
    border-radius: var(--commerce-radius-md);

    background: var(--commerce-surface);
    color: var(--commerce-text);

    box-shadow:
        0 12px 34px
        rgba(55, 43, 29, .06);
}

body.techodec-commerce-page
.woocommerce-error,
body.techodec-commerce-page
.wc-block-components-notice-banner.is-error {
    border-color:
        rgba(166, 68, 59, .3) !important;

    background:
        rgba(255, 246, 245, .96);
    color: var(--commerce-danger);
}

body.techodec-commerce-page
.woocommerce-message,
body.techodec-commerce-page
.wc-block-components-notice-banner.is-success {
    border-color:
        rgba(96, 118, 79, .26) !important;

    background:
        rgba(247, 251, 244, .96);
    color: var(--commerce-success);
}

body.techodec-commerce-page
.wc-block-components-validation-error {
    color: var(--commerce-danger);
}

/* ==========================================================
   Cart
   ========================================================== */

body.techodec-cart-page
.wc-block-cart {
    gap:
        clamp(1.5rem, 3vw, 3rem);
}

body.techodec-cart-page
.wc-block-cart-items {
    overflow: hidden;

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        var(--commerce-shadow);
}

body.techodec-cart-page
.wc-block-cart-items__header {
    background:
        rgba(247, 244, 238, .72);
}

body.techodec-cart-page
.wc-block-cart-items__row {
    border-color:
        var(--commerce-border) !important;
}

body.techodec-cart-page
.wc-block-cart-item__image img,
body.techodec-cart-page
.woocommerce-cart-form
.product-thumbnail img {
    overflow: hidden;

    border-radius: .8rem;

    background:
        var(--commerce-surface-soft);
}

body.techodec-cart-page
.wc-block-components-product-name,
body.techodec-cart-page
.woocommerce-cart-form
.product-name a {
    color: var(--commerce-text);

    font-size: 1.02rem;
    font-weight: 760;
    text-decoration-thickness: 1px;
    text-underline-offset: .2em;
}

body.techodec-cart-page
.wc-block-components-product-price,
body.techodec-cart-page
.wc-block-cart-item__total-price-and-sale-badge-wrapper {
    color: var(--commerce-text);

    font-weight: 720;
}

.techodec-commerce-metadata {
    color: var(--commerce-muted);
}

body.techodec-cart-page
.wc-block-components-product-metadata,
body.techodec-cart-page
.wc-block-components-product-details,
body.techodec-cart-page
.variation {
    display: grid;
    grid-template-columns:
        max-content
        minmax(0, 1fr);
    gap: .35rem .8rem;

    margin-top: .8rem;
}

body.techodec-cart-page
.wc-block-components-product-details
.wc-block-components-product-details__name,
body.techodec-cart-page
.wc-block-components-product-details dt,
body.techodec-cart-page
.variation dt,
.techodec-configuration-label {
    color: var(--commerce-text);

    font-weight: 720;
}

body.techodec-cart-page
.wc-block-components-product-details
.wc-block-components-product-details__value,
body.techodec-cart-page
.wc-block-components-product-details dd,
body.techodec-cart-page
.variation dd {
    margin: 0;

    color: var(--commerce-muted);
}

body.techodec-cart-page
.wc-block-components-quantity-selector,
body.techodec-cart-page
.quantity {
    overflow: hidden;

    border: 1px solid
        var(--commerce-border-strong) !important;
    border-radius: 999px !important;

    background: #fff;
}

body.techodec-cart-page
.wc-block-components-quantity-selector
button,
body.techodec-cart-page
.wc-block-components-quantity-selector
input,
body.techodec-cart-page
.quantity input {
    min-width: 42px;
    min-height: 42px;

    border: 0 !important;
    background: transparent !important;
}

body.techodec-cart-page
.wc-block-cart-item__remove-link,
body.techodec-cart-page
.woocommerce-cart-form
.product-remove a {
    color: var(--commerce-danger) !important;

    font-weight: 700;
    text-underline-offset: .22em;
}

body.techodec-cart-page
.wc-block-cart__sidebar,
body.techodec-cart-page
.wc-block-components-sidebar,
body.techodec-cart-page
.cart-collaterals
.cart_totals {
    align-self: start;

    padding:
        clamp(1.25rem, 2.4vw, 2rem);

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        var(--commerce-shadow);
}

@media (min-width: 981px) {
    body.techodec-cart-page
    .wc-block-cart__sidebar,
    body.techodec-cart-page
    .wc-block-components-sidebar,
    body.techodec-cart-page
    .cart-collaterals
    .cart_totals {
        position: sticky;
        top: 7.5rem;
    }
}

body.techodec-cart-page
.wc-block-components-totals-wrapper,
body.techodec-cart-page
.wc-block-components-totals-item,
body.techodec-cart-page
.cart_totals tr {
    border-color:
        var(--commerce-border) !important;
}

body.techodec-cart-page
.wc-block-cart__submit-button,
body.techodec-cart-page
.checkout-button {
    width: 100%;
}

body.techodec-cart-page
.wp-block-woocommerce-cart-cross-sells-block,
body.techodec-cart-page
.cross-sells {
    margin-top:
        clamp(2.5rem, 5vw, 5rem);
}

/* Classic Cart */

body.techodec-cart-page
.woocommerce-cart-form {
    overflow: hidden;

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        var(--commerce-shadow);
}

body.techodec-cart-page
.woocommerce-cart-form table {
    margin: 0 !important;

    border: 0 !important;
}

body.techodec-cart-page
.woocommerce-cart-form th,
body.techodec-cart-page
.woocommerce-cart-form td {
    padding: 1rem !important;

    border-color:
        var(--commerce-border) !important;
}

/* ----------------------------------------------------------
   Empty cart
---------------------------------------------------------- */

body.techodec-empty-cart-page
.wc-block-cart,
body.techodec-empty-cart-page
.woocommerce {
    text-align: center;
}

body.techodec-empty-cart-page
.wc-block-cart__empty-cart__title,
body.techodec-empty-cart-page
.cart-empty {
    color: var(--commerce-text);

    font-size:
        clamp(2rem, 4vw, 3.4rem);
    font-weight: 800;
    letter-spacing: -.045em;
}

body.techodec-empty-cart-page
.wc-block-cart__empty-cart__description,
body.techodec-empty-cart-page
.wc-empty-cart-message {
    color: var(--commerce-muted);
}

body.techodec-empty-cart-page
.wc-block-cart__empty-cart__title,
body.techodec-empty-cart-page
.wc-block-cart__empty-cart__description,
body.techodec-empty-cart-page
.wc-empty-cart-message,
body.techodec-empty-cart-page
.return-to-shop {
    max-width: 660px;
    margin-inline: auto;
}

/* ==========================================================
   Checkout
   ========================================================== */

body.techodec-checkout-page
.wc-block-checkout {
    gap:
        clamp(1.5rem, 3vw, 3rem);
}

body.techodec-checkout-page
.wc-block-components-checkout-step,
body.techodec-checkout-page
.woocommerce-billing-fields,
body.techodec-checkout-page
.woocommerce-shipping-fields,
body.techodec-checkout-page
.woocommerce-additional-fields,
body.techodec-checkout-page
#payment {
    margin-bottom: 1rem;
    padding:
        clamp(1.15rem, 2.2vw, 1.8rem);

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        0 18px 46px
        rgba(55, 43, 29, .07);
}

body.techodec-checkout-page
.wc-block-components-checkout-step__heading {
    margin-bottom: 1.15rem;
}

body.techodec-checkout-page
.wc-block-components-checkout-step__title,
body.techodec-checkout-page
.woocommerce-billing-fields > h3,
body.techodec-checkout-page
.woocommerce-shipping-fields > h3,
body.techodec-checkout-page
.woocommerce-additional-fields > h3 {
    color: var(--commerce-text);

    font-size:
        clamp(1.25rem, 2vw, 1.65rem);
    font-weight: 800;
    letter-spacing: -.035em;
}

body.techodec-checkout-page
.wc-block-checkout__sidebar,
body.techodec-checkout-page
.wc-block-components-sidebar,
body.techodec-checkout-page
#order_review {
    align-self: start;

    padding:
        clamp(1.25rem, 2.4vw, 2rem);

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        var(--commerce-shadow);
}

@media (min-width: 981px) {
    body.techodec-checkout-page
    .wc-block-checkout__sidebar,
    body.techodec-checkout-page
    .wc-block-components-sidebar,
    body.techodec-checkout-page
    #order_review {
        position: sticky;
        top: 7.5rem;
    }
}

body.techodec-checkout-page
.wc-block-components-order-summary,
body.techodec-checkout-page
.woocommerce-checkout-review-order-table {
    color: var(--commerce-text);
}

body.techodec-checkout-page
.wc-block-components-order-summary-item {
    border-color:
        var(--commerce-border) !important;
}

body.techodec-checkout-page
.wc-block-components-order-summary-item__image
img {
    border-radius: .75rem;
}

body.techodec-checkout-page
.wc-block-components-radio-control__option,
body.techodec-checkout-page
.wc-block-components-payment-method-label,
body.techodec-checkout-page
#payment
.payment_methods > li {
    margin-bottom: .7rem;
    padding: 1rem !important;

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-md);

    background: #fff;
}

body.techodec-checkout-page
.wc-block-components-radio-control__option:has(input:checked),
body.techodec-checkout-page
#payment
.payment_methods > li:has(input:checked) {
    border-color:
        var(--commerce-accent);

    box-shadow:
        0 0 0 3px
        rgba(207, 160, 64, .12);
}

body.techodec-checkout-page
.wc-block-components-checkout-place-order-button,
body.techodec-checkout-page
#place_order {
    width: 100%;
    min-height: 58px;
}

body.techodec-checkout-page
.woocommerce-checkout
.col2-set {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 1rem;

    width: 100%;
}

body.techodec-checkout-page
.woocommerce-checkout
.col2-set .col-1,
body.techodec-checkout-page
.woocommerce-checkout
.col2-set .col-2 {
    float: none;
    width: auto;
}

/* ==========================================================
   Order received / confirmation
   ========================================================== */

body.techodec-order-received-page
.site-page__title {
    display: none;
}

body.techodec-order-received-page
.woocommerce-order,
body.techodec-order-received-page
.wp-block-woocommerce-order-confirmation-status,
body.techodec-order-received-page
.wc-block-order-confirmation-status {
    color: var(--commerce-text);
}

body.techodec-order-received-page
.woocommerce-order > p:first-child,
body.techodec-order-received-page
.woocommerce-thankyou-order-received,
body.techodec-order-received-page
.wc-block-order-confirmation-status {
    margin:
        0
        0
        1.5rem;

    color: var(--commerce-success);

    font-size:
        clamp(1.15rem, 2vw, 1.5rem);
    font-weight: 720;
}

body.techodec-order-received-page
.woocommerce-order-overview,
body.techodec-order-received-page
.wc-block-order-confirmation-summary,
body.techodec-order-received-page
.wp-block-woocommerce-order-confirmation-summary {
    display: grid;
    grid-template-columns:
        repeat(5, minmax(0, 1fr));
    gap: 1px;

    overflow: hidden;
    margin:
        0
        0
        clamp(1.5rem, 3vw, 2.5rem) !important;
    padding: 0 !important;

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-border);

    box-shadow:
        var(--commerce-shadow);

    list-style: none;
}

body.techodec-order-received-page
.woocommerce-order-overview li,
body.techodec-order-received-page
.wc-block-order-confirmation-summary > *,
body.techodec-order-received-page
.wp-block-woocommerce-order-confirmation-summary > * {
    min-width: 0;
    margin: 0 !important;
    padding: 1rem !important;

    border: 0 !important;

    background:
        var(--commerce-surface-solid);
}

body.techodec-order-received-page
.woocommerce-order-overview li strong {
    display: block;
    margin-top: .35rem;

    overflow-wrap: anywhere;

    color: var(--commerce-text);

    font-size: 1rem;
}

body.techodec-order-received-page
.woocommerce-order-details,
body.techodec-order-received-page
.woocommerce-customer-details,
body.techodec-order-received-page
.wc-block-order-confirmation-totals,
body.techodec-order-received-page
.wp-block-woocommerce-order-confirmation-totals,
body.techodec-order-received-page
.wp-block-woocommerce-order-confirmation-billing-address,
body.techodec-order-received-page
.wp-block-woocommerce-order-confirmation-shipping-address {
    margin-top:
        clamp(1.25rem, 2.5vw, 2rem);
    padding:
        clamp(1.15rem, 2.4vw, 2rem);

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        var(--commerce-shadow);
}

body.techodec-order-received-page
.woocommerce-order-details__title,
body.techodec-order-received-page
.woocommerce-column__title {
    margin-top: 0;

    font-size:
        clamp(1.55rem, 3vw, 2.35rem);
}

body.techodec-order-received-page
.woocommerce-table--order-details {
    overflow: hidden;
    margin: 0 !important;

    border: 1px solid
        var(--commerce-border) !important;
    border-radius:
        var(--commerce-radius-md);
    border-collapse: separate !important;
    border-spacing: 0;
}

body.techodec-order-received-page
.woocommerce-table--order-details th,
body.techodec-order-received-page
.woocommerce-table--order-details td {
    padding: 1rem !important;

    border-color:
        var(--commerce-border) !important;
}

body.techodec-order-received-page
.woocommerce-table__product-name
a {
    color: var(--commerce-text);

    font-weight: 760;
}

body.techodec-order-received-page
.woocommerce-table__product-name
.wc-item-meta {
    display: grid;
    grid-template-columns:
        max-content
        minmax(0, 1fr);
    gap: .4rem .8rem;

    margin:
        .75rem
        0
        0;
    padding: 0;

    color: var(--commerce-muted);

    list-style: none;
}

body.techodec-order-received-page
.woocommerce-table__product-name
.wc-item-meta li {
    display: contents;
}

body.techodec-order-received-page
.woocommerce-table__product-name
.wc-item-meta-label {
    color: var(--commerce-text);

    font-weight: 720;
}

body.techodec-order-received-page
.woocommerce-customer-details
address {
    padding: 0;

    border: 0;

    color: var(--commerce-muted);

    line-height: 1.75;
}

/* ==========================================================
   My Account basics
   ========================================================== */

body.techodec-account-page
.woocommerce {
    display: grid;
    grid-template-columns:
        minmax(210px, .28fr)
        minmax(0, 1fr);
    gap: 1.5rem;
}

body.techodec-account-page
.woocommerce-MyAccount-navigation,
body.techodec-account-page
.woocommerce-MyAccount-content {
    padding: 1.25rem;

    border: 1px solid
        var(--commerce-border);
    border-radius:
        var(--commerce-radius-lg);

    background:
        var(--commerce-surface);

    box-shadow:
        var(--commerce-shadow);
}

body.techodec-account-page
.woocommerce-MyAccount-navigation ul {
    display: grid;
    gap: .35rem;

    margin: 0;
    padding: 0;

    list-style: none;
}

body.techodec-account-page
.woocommerce-MyAccount-navigation a {
    display: block;
    padding: .75rem .9rem;

    border-radius: .75rem;

    color: var(--commerce-text);

    text-decoration: none;
}

body.techodec-account-page
.woocommerce-MyAccount-navigation
.is-active a {
    background:
        rgba(207, 160, 64, .14);
    color:
        var(--commerce-accent-dark);

    font-weight: 720;
}

/* ==========================================================
   Responsive
   ========================================================== */

@media (max-width: 980px) {
    body.techodec-cart-page
    .wc-block-cart__sidebar,
    body.techodec-cart-page
    .wc-block-components-sidebar,
    body.techodec-cart-page
    .cart-collaterals
    .cart_totals,
    body.techodec-checkout-page
    .wc-block-checkout__sidebar,
    body.techodec-checkout-page
    .wc-block-components-sidebar,
    body.techodec-checkout-page
    #order_review {
        position: static;
    }

    body.techodec-checkout-page
    .woocommerce-checkout
    .col2-set {
        grid-template-columns: 1fr;
    }

    body.techodec-order-received-page
    .woocommerce-order-overview,
    body.techodec-order-received-page
    .wc-block-order-confirmation-summary,
    body.techodec-order-received-page
    .wp-block-woocommerce-order-confirmation-summary {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    body.techodec-account-page
    .woocommerce {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    body.techodec-commerce-page
    .site-page {
        padding-block: 2rem 3.5rem;
    }

    body.techodec-commerce-page
    .site-page__article > .container {
        width:
            min(
                100% - 1.25rem,
                1380px
            );
    }

    .techodec-commerce-progress__step {
        font-size: .68rem;
        letter-spacing: .035em;
    }

    .techodec-commerce-progress__item:not(:last-child)::after {
        left: calc(50% + 15px);
        right: calc(-50% + 15px);
    }

    .techodec-commerce-progress__step::before {
        width: 30px;
        height: 30px;
    }

    body.techodec-cart-page
    .wc-block-cart-items,
    body.techodec-cart-page
    .wc-block-cart__sidebar,
    body.techodec-cart-page
    .wc-block-components-sidebar,
    body.techodec-checkout-page
    .wc-block-components-checkout-step,
    body.techodec-checkout-page
    .wc-block-checkout__sidebar,
    body.techodec-checkout-page
    .wc-block-components-sidebar,
    body.techodec-order-received-page
    .woocommerce-order-details,
    body.techodec-order-received-page
    .woocommerce-customer-details {
        border-radius: 1.2rem;
    }

    body.techodec-cart-page
    .wc-block-cart-items__row {
        padding-block: .8rem !important;
    }

    body.techodec-cart-page
    .wc-block-components-product-metadata,
    body.techodec-cart-page
    .wc-block-components-product-details,
    body.techodec-cart-page
    .variation {
        grid-template-columns: 1fr;
        gap: .1rem;
    }

    body.techodec-order-received-page
    .woocommerce-order-overview,
    body.techodec-order-received-page
    .wc-block-order-confirmation-summary,
    body.techodec-order-received-page
    .wp-block-woocommerce-order-confirmation-summary {
        grid-template-columns: 1fr;
    }

    body.techodec-order-received-page
    .woocommerce-table__product-name
    .wc-item-meta {
        grid-template-columns: 1fr;
        gap: .1rem;
    }
}

@media (max-width: 480px) {
    .techodec-commerce-progress__step {
        font-size: .62rem;
    }

    body.techodec-commerce-page
    .wc-block-components-button,
    body.techodec-commerce-page
    .woocommerce a.button,
    body.techodec-commerce-page
    .woocommerce button.button,
    body.techodec-commerce-page
    .woocommerce input.button,
    body.techodec-commerce-page
    #place_order {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.techodec-commerce-page
    .wc-block-components-button,
    body.techodec-commerce-page
    .woocommerce a.button,
    body.techodec-commerce-page
    .woocommerce button.button,
    body.techodec-commerce-page
    .woocommerce input.button,
    body.techodec-commerce-page
    #place_order {
        transition: none;
    }
}
