/* Auto-generated theme CSS bundle. Do not edit directly. */

/* Source: public/css/account.css */
/**
 * Lipko — WooCommerce account (login / register)
 *
 * Пропорции: сетка 8px в vw (эталон 1920px → 8px ≈ 0.417vw).
 * Вертикальный ритм: space-2 между полями, space-3 между смысловыми блоками,
 * space-4 у карточки и футера формы. Типографика: label < body ≈ heading.
 *
 * Адаптив: база — десктоп; max-width 1024px — планшет/ноутбук; max-width 600px — телефон.
 */

body.woocommerce-account-auth-page {
    /* Единая ширина каркаса ЛК (залогиненный режим) на всех страницах и брейкпоинтах */
    --wc-lk-width: 60vw;

    --wc-page: #ffffff;
    --wc-card: #fafafa;
    --wc-elevated: #ffffff;
    --wc-text: #2a2a2d;
    --wc-muted: #73747c;
    --wc-border: rgba(42, 42, 45, 0.09);
    --wc-border-strong: rgba(42, 42, 45, 0.14);
    --wc-accent: #adeb02;
    --wc-ink: #1c1c1f;

    /* Компактная и ровная сетка */
    --wc-space-1: 0.26vw;
    --wc-space-2: 0.52vw;
    --wc-space-3: 0.78vw;
    --wc-space-4: 1.04vw;
    --wc-space-5: 1.3vw;
    --wc-space-6: 1.82vw;

    --wc-hairline: 0.052vw;
    --wc-r-sm: 0.42vw;
    --wc-r-md: 0.68vw;

    /* Типографика (модуль ~1.2 к базе body) */
    --wc-fs-caption: 0.58vw;
    --wc-fs-label: 0.52vw;
    --wc-fs-body: 0.68vw;
    --wc-fs-ui: 0.66vw;
    --wc-fs-button: 0.68vw;
    --wc-fs-heading: 0.9vw;
    --wc-fs-strength: 0.56vw;
    --wc-fs-logo-text: 1.35vw;

    /* Кнопки: вертикальные и горизонтальные отступы */
    --wc-btn-py: var(--wc-space-2);
    --wc-btn-px: var(--wc-space-5);

    margin: 0;
    min-height: 100vh;
    background: var(--wc-page);
    color: var(--wc-text);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ---------- Layout ---------- */
body.woocommerce-account-auth-page .wc-auth-layout {
    min-height: auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: var(--wc-space-5) var(--wc-space-4);
    box-sizing: border-box;
}

body.woocommerce-account-auth-page .wc-auth-stack {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--wc-space-3);
}

/* Вход и регистрация — одна и та же ширина карточки (не shrink по контенту) */
body.woocommerce-account-auth-page:not(.logged-in) .wc-auth-stack {
    width: 18.2vw;
    max-width: 100%;
    min-width: 0;
    align-self: center;
    align-items: stretch;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-stack {
    width: var(--wc-lk-width);
    max-width: var(--wc-lk-width);
    box-sizing: border-box;
}

body.woocommerce-account-auth-page .wc-auth-logo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    text-decoration: none;
    line-height: 0;
}

body.woocommerce-account-auth-page .wc-auth-logo-wrap img {
    display: block;
    height: 2.43vw;
    width: auto;
    max-width: 7.5vw;
    object-fit: contain;
}

body.woocommerce-account-auth-page .wc-auth-logo-text {
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-logo-text);
    letter-spacing: 0.02em;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--wc-space-2);
    padding: var(--wc-space-2) var(--wc-space-3);
    border-radius: var(--wc-r-sm);
    background: #fafafa;
    border: var(--wc-hairline) solid var(--wc-border);
    box-sizing: border-box;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-meta {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: var(--wc-space-1);
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points {
    margin-left: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: calc(var(--wc-space-1) * 0.6);
    min-width: 6.4vw;
    padding: 0.2vw 0.55vw;
    border-radius: var(--wc-r-sm);
    background: #ffffff;
    border: var(--wc-hairline) solid var(--wc-border);
    box-sizing: border-box;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points-label {
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-label);
    line-height: 1.2;
    color: var(--wc-muted);
    white-space: nowrap;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points-value {
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.1;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-name {
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.2;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-email {
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1.3;
    color: var(--wc-muted);
    overflow-wrap: anywhere;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.65vw;
    padding: 0.34vw 0.82vw;
    border: none;
    border-radius: 1.4vw;
    background: var(--wc-ink);
    color: #fff;
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
    transition: background 0.18s ease, color 0.18s ease, transform 0.12s ease;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-logout:hover {
    background: var(--wc-accent);
    color: var(--wc-text);
}

body.woocommerce-account-auth-page .wc-auth-container {
    width: 100%;
    box-sizing: border-box;
    padding: 0;
    background: transparent;
    border-radius: var(--wc-r-md);
    border: none;
}

body.woocommerce-account-auth-page:not(.logged-in) .wc-auth-container {
    padding: var(--wc-space-5) var(--wc-space-4);
    background: var(--wc-card);
    border: var(--wc-hairline) solid var(--wc-border);
}

body.woocommerce-account-auth-page.logged-in .wc-auth-container {
    max-width: none;
    padding: 0;
    overflow: visible;
    /* Фиксируем только ширину; высота зависит от контента */
    height: auto;
    min-height: 0;
}

body.woocommerce-account-auth-page .wc-auth-content {
    width: 100%;
}

body.woocommerce-account-auth-page.logged-in .wc-auth-content {
    min-width: 0;
    max-width: 100%;
    overflow: visible;
}

body.woocommerce-account-auth-page .wc-auth-content > p:first-child {
    margin-top: 0;
}

/* Notices — как в cart.css (.woocommerce-custom-page-wrapper / checkout) */
body.woocommerce-account-auth-page .wc-auth-content .woocommerce-notices-wrapper {
    margin: 0 0 0.85vw;
}

/* Lost password / reset password texts */
body.woocommerce-account-auth-page .wc-auth-content .woocommerce {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.85vw;
}

body.woocommerce-account-auth-page .wc-auth-content .woocommerce > p {
    margin: 0;
    font-family: "cera-pro-regular", sans-serif;
    font-size: 0.72vw;
    line-height: 1.05vw;
    color: rgba(42, 42, 45, 0.78);
}

body.woocommerce-account-auth-page .woocommerce-message {
    position: relative !important;
    margin: 0 0 0.85vw !important;
    padding: 0.75vw 1vw 0.75vw 2.5vw !important;
    border: 0.06vw solid #adeb02 !important;
    border-radius: 0.75vw !important;
    background: #f4fbdc !important;
    color: #2a2a2d !important;
    list-style: none !important;
    box-shadow: none;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: 0.66vw !important;
    line-height: 0.9vw !important;
}

body.woocommerce-account-auth-page .woocommerce-error {
    position: relative !important;
    margin: 0 0 0.85vw !important;
    padding: 0.75vw 1vw 0.75vw 2.5vw !important;
    border: 0.06vw solid #ffc7cc !important;
    border-radius: 0.75vw !important;
    background: #fff3f5 !important;
    color: #2a2a2d !important;
    list-style: none !important;
    box-shadow: none;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: 0.66vw !important;
    line-height: 0.9vw !important;
}

body.woocommerce-account-auth-page .woocommerce-error li {
    margin: 0;
    padding: 0.2vw 0;
    font-family: "cera-pro-regular", sans-serif;
    font-size: 0.66vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

body.woocommerce-account-auth-page .woocommerce-error li + li {
    border-top: 0.06vw solid rgba(42, 42, 45, 0.08);
    margin-top: 0.2vw;
    padding-top: 0.4vw;
}

body.woocommerce-account-auth-page .woocommerce-error a {
    color: #2a2a2d;
    text-decoration: none;
    border-bottom: 0.06vw dashed rgba(42, 42, 45, 0.5);
    transition: 0.2s;
}

body.woocommerce-account-auth-page .woocommerce-error a:hover {
    color: #7ca900;
    border-bottom-color: #7ca900;
}

body.woocommerce-account-auth-page .woocommerce-info {
    position: relative !important;
    margin: 0 0 0.85vw !important;
    padding: 0.75vw 1vw 0.75vw 2.5vw !important;
    border: 1px solid #f1f1f1 !important;
    border-radius: 0.5vw !important;
    background: #fafafa !important;
    color: #2a2a2d !important;
    list-style: none !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: 0.7vw !important;
    line-height: 0.95vw !important;
}

/* Иконки WooCommerce (::before) — шрифт текста на блоке ломает глифы, задаём WooCommerce явно */
body.woocommerce-account-auth-page .woocommerce-message::before,
body.woocommerce-account-auth-page .woocommerce-info::before,
body.woocommerce-account-auth-page .woocommerce-error::before {
    font-family: WooCommerce, sans-serif !important;
    font-weight: normal !important;
    font-style: normal !important;
    display: inline-block !important;
    position: absolute !important;
    top: 0.75vw !important;
    left: 0.75vw !important;
    width: 1em !important;
    height: 1em !important;
    font-size: 0.95vw !important;
    line-height: 1 !important;
    text-align: center !important;
}

body.woocommerce-account-auth-page .woocommerce-message::before {
    content: "\e015" !important;
    color: #7ca900 !important;
}

body.woocommerce-account-auth-page .woocommerce-info::before {
    content: "\e028" !important;
    color: #73747c !important;
}

body.woocommerce-account-auth-page .woocommerce-error::before {
    content: "\e016" !important;
    color: #c24b55 !important;
}

body.woocommerce-account-auth-page .woocommerce-message .button,
body.woocommerce-account-auth-page .woocommerce-message a.button,
body.woocommerce-account-auth-page .woocommerce-message .button.wc-forward {
    margin-left: 0.6vw;
    padding: 0;
    border: 0;
    background: transparent;
    color: #7ca900;
    font-family: "cera-pro-regular", sans-serif;
    font-size: 0.66vw;
    line-height: 0.9vw;
    text-decoration: none;
    border-bottom: 0.06vw solid #7ca900;
    transition: 0.2s;
}

body.woocommerce-account-auth-page .woocommerce-message .button:hover,
body.woocommerce-account-auth-page .woocommerce-message a.button:hover,
body.woocommerce-account-auth-page .woocommerce-message .button.wc-forward:hover {
    background: transparent;
    color: #2a2a2d;
    border-bottom-color: #2a2a2d;
}

@media (max-width: 768px) {
    body.woocommerce-account-auth-page .wc-auth-content .woocommerce {
        gap: 12px;
    }
    body.woocommerce-account-auth-page .wc-auth-content .woocommerce > p {
        font-size: 14px;
        line-height: 20px;
    }
}

/* Columns */
body.woocommerce-account-auth-page .woocommerce .u-columns {
    display: block;
    margin: 0;
}

body.woocommerce-account-auth-page .woocommerce .u-column1,
body.woocommerce-account-auth-page .woocommerce .u-column2 {
    width: 100%;
    float: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body.woocommerce-account-auth-page .woocommerce .u-column1 > h2,
body.woocommerce-account-auth-page .woocommerce .u-column2 > h2 {
    margin: 0 0 var(--wc-space-3);
    padding: 0;
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-heading);
    font-weight: normal;
    line-height: 1.3;
    letter-spacing: -0.03em;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page .woocommerce .u-column2 .form-row.form-row-wide {
    margin-bottom: var(--wc-space-3) !important;
}

body.woocommerce-account-auth-page .woocommerce .u-column2 .woocommerce-privacy-policy-text {
    margin-top: var(--wc-space-3) !important;
    margin-bottom: 0 !important;
}

body.wc-auth-mode-login .woocommerce .u-column2 {
    display: none;
}

body.wc-auth-mode-register .woocommerce .u-column1 {
    display: none;
}

body.woocommerce-account-auth-page .woocommerce form.login,
body.woocommerce-account-auth-page .woocommerce form.register,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword.lost_reset_password > p:first-of-type {
    margin: 0 0 var(--wc-space-3);
    padding: 0;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-body);
    line-height: 1.55;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword.lost_reset_password .clear {
    height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    clear: both;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login h2,
body.woocommerce-account-auth-page .woocommerce form.register h2 {
    margin: 0 0 var(--wc-space-3);
    padding: 0;
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-heading);
    font-weight: normal;
    line-height: 1.3;
    letter-spacing: -0.03em;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .form-row,
body.woocommerce-account-auth-page .woocommerce form.register .form-row,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .form-row {
    margin: 0 0 var(--wc-space-3) !important;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .form-row label,
body.woocommerce-account-auth-page .woocommerce form.register .form-row label,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .form-row label {
    display: flex;
    margin: 0 0 var(--wc-space-1);
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-label);
    font-weight: normal;
    line-height: 1.35;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .form-row .required,
body.woocommerce-account-auth-page .woocommerce form.register .form-row .required,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .form-row .required {
    color: var(--wc-text);
    text-decoration: none;
    opacity: 0.7;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .input-text,
body.woocommerce-account-auth-page .woocommerce form.register .input-text,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .input-text {
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    min-height: 2.15vw;
    border: var(--wc-hairline) solid var(--wc-border-strong);
    border-radius: var(--wc-r-sm);
    background: var(--wc-elevated);
    padding: 0 var(--wc-space-3);
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-body);
    line-height: 1.4;
    color: var(--wc-text);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .input-text::placeholder,
body.woocommerce-account-auth-page .woocommerce form.register .input-text::placeholder,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .input-text::placeholder {
    color: var(--wc-muted);
    opacity: 0.85;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .input-text:hover,
body.woocommerce-account-auth-page .woocommerce form.register .input-text:hover,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .input-text:hover {
    border-color: rgba(42, 42, 45, 0.22);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .input-text:focus,
body.woocommerce-account-auth-page .woocommerce form.register .input-text:focus,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .input-text:focus {
    outline: none;
    border-color: var(--wc-text);
    box-shadow: 0 0 0 var(--wc-space-1) rgba(173, 235, 2, 0.35);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .show-password-input,
body.woocommerce-account-auth-page .woocommerce form.register .show-password-input {
    top: 50% !important;
    transform: translateY(-50%);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .show-password-input::after,
body.woocommerce-account-auth-page .woocommerce form.register .show-password-input::after {
    top: 50% !important;
    transform: translateY(-50%);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-form-row--remember {
    margin-bottom: calc(var(--wc-space-3) * 0.5) !important;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-form-login__rememberme {
    display: flex;
    align-items: center;
    width: 100%;
    gap: var(--wc-space-2);
    margin-bottom: calc(var(--wc-space-4) * 0.625) !important;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;
    color: var(--wc-muted);
    cursor: pointer;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-form-login__rememberme input[type="checkbox"] {
    width: var(--wc-space-2);
    height: var(--wc-space-2);
    margin: 0;
    border-radius: var(--wc-space-1);
    accent-color: var(--wc-ink);
    cursor: pointer;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-button,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login button.button,
body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-button,
body.woocommerce-account-auth-page .woocommerce form.register button.button,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .woocommerce-Button,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword button.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    min-height: 2.15vw;
    padding: var(--wc-btn-py) var(--wc-btn-px);
    border: none;
    border-radius: var(--wc-r-sm);
    background: var(--wc-ink);
    color: #fff;
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-button);
    line-height: 1.2;
    letter-spacing: 0.01em;
    cursor: pointer;
    transition: background 0.18s ease, color 0.18s ease, transform 0.12s ease;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-button:hover,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login button.button:hover,
body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-button:hover,
body.woocommerce-account-auth-page .woocommerce form.register button.button:hover,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .woocommerce-Button:hover,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword button.button:hover {
    background: var(--wc-accent);
    color: var(--wc-text);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-button:active,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login button.button:active,
body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-button:active,
body.woocommerce-account-auth-page .woocommerce form.register button.button:active,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .woocommerce-Button:active,
body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword button.button:active {
    transform: scale(0.985);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-form-login__submit,
body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-form-register__submit {
    display: flex;
    width: 100%;
    clear: both;
    margin-top: var(--wc-space-4);
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-form-login__submit {
    margin-top: calc(var(--wc-space-4) * 0.75) !important;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-LostPassword {
    margin: var(--wc-space-3) 0 0 !important;
    text-align: center;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1.45;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-LostPassword a {
    color: var(--wc-muted);
    text-decoration: none;
    border-bottom: var(--wc-hairline) solid transparent;
    transition: color 0.15s ease, border-color 0.15s ease;
}

body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-LostPassword a:hover {
    color: var(--wc-text);
    border-bottom-color: var(--wc-accent);
}

body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-privacy-policy-text {
    margin: var(--wc-space-3) 0 !important;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-caption) !important;
    line-height: 1.55 !important;
    color: var(--wc-muted) !important;
}

body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-privacy-policy-text p {
    margin: 0;
}

body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-privacy-policy-text a {
    color: var(--wc-text);
    text-decoration: none;
    border-bottom: var(--wc-hairline) solid var(--wc-border-strong);
    transition: border-color 0.15s ease;
}

body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-privacy-policy-text a:hover {
    border-bottom-color: var(--wc-accent);
}

/* Password field grid */
body.woocommerce-account-auth-page .woocommerce .password-input {
    display: grid;
    grid-template-columns: 1fr min-content;
    align-items: stretch;
    gap: 0;
}

body.woocommerce-account-auth-page .woocommerce .password-input > .input-text {
    grid-column: 1;
    grid-row: 1;
}

body.woocommerce-account-auth-page .woocommerce .password-input > .show-password-input {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
}

body.woocommerce-account-auth-page .woocommerce .password-input > .woocommerce-password-strength {
    grid-column: 1 / -1;
    grid-row: 2;
}

body.woocommerce-account-auth-page .woocommerce .password-input > small.woocommerce-password-hint {
    grid-column: 1 / -1;
    grid-row: 3;
    margin-top: var(--wc-space-1);
}

body.woocommerce-account-auth-page .woocommerce .woocommerce-password-strength {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: var(--wc-space-2) 0 0;
    padding: var(--wc-space-2) var(--wc-space-3);
    box-sizing: border-box;
    border-radius: var(--wc-r-sm);
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-strength);
    line-height: 1.4;
    text-align: left;
    overflow: hidden;
}

body.woocommerce-account-auth-page .woocommerce .woocommerce-password-strength.short {
    background: rgba(200, 65, 65, 0.12);
    color: #8f2a2a;
}

body.woocommerce-account-auth-page .woocommerce .woocommerce-password-strength.bad {
    background: rgba(220, 150, 50, 0.14);
    color: #7a4a0a;
}

body.woocommerce-account-auth-page .woocommerce .woocommerce-password-strength.good {
    background: rgba(173, 235, 2, 0.22);
    color: var(--wc-text);
    border: var(--wc-hairline) solid rgba(173, 235, 2, 0.45);
}

body.woocommerce-account-auth-page .woocommerce .woocommerce-password-strength.strong {
    background: rgba(55, 140, 90, 0.14);
    color: #1a5a36;
}

body.woocommerce-account-auth-page .woocommerce small.woocommerce-password-hint {
    display: block;
    margin: 0;
    padding: 0;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1.45;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page .wc-auth-switch-links {
    margin-top: var(--wc-space-4);
    padding-top: var(--wc-space-3);
    border-top: var(--wc-hairline) solid var(--wc-border);
    text-align: center;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.5;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page .wc-auth-switch-links span {
    margin-right: var(--wc-space-1);
}

body.woocommerce-account-auth-page .wc-auth-switch-links a {
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-ui);
    color: var(--wc-text);
    text-decoration: none;
    border-bottom: var(--wc-hairline) solid var(--wc-text);
    padding-bottom: 0.05em;
    transition: color 0.15s ease, border-color 0.15s ease;
}

body.woocommerce-account-auth-page .wc-auth-switch-links a:hover {
    color: var(--wc-muted);
    border-bottom-color: var(--wc-accent);
}

/* ---------- Logged-in account area ---------- */
body.woocommerce-account-auth-page.logged-in .woocommerce {
    display: grid;
    /* Узкая колонка меню: только под подписи пунктов, остальное — контент */
    grid-template-columns: 12.5vw minmax(0, 1fr);
    gap: var(--wc-space-4);
    align-items: start;
    min-width: 0;
    width: 100%;
}

body.woocommerce-account-auth-page.logged-in .woocommerce::before,
body.woocommerce-account-auth-page.logged-in .woocommerce::after {
    display: none;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation {
    float: none;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce > .lipko-account-nav-user {
    grid-column: 1;
}

body.woocommerce-account-auth-page.logged-in .woocommerce > .woocommerce-MyAccount-navigation {
    grid-column: 1;
}

body.woocommerce-account-auth-page.logged-in .woocommerce > .woocommerce-MyAccount-content {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: var(--wc-space-2);
    margin: 0 0 var(--wc-space-3);
    padding: 0;
    border-radius: 0;
    background: transparent;
    border: 0;
    box-sizing: border-box;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-form {
    margin: 0;
    flex-shrink: 0;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-label {
    position: relative;
    display: block;
    width: 4.25vw;
    height: 4.25vw;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
    background: #efefef;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-hint {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.3vw;
    text-align: center;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1.15;
    color: #ffffff;
    background: rgba(42, 42, 45, 0.6);
    opacity: 0;
    transition: opacity 0.2s ease;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-label:hover .lipko-account-nav-user__avatar-hint {
    opacity: 1;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    overflow: hidden;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__meta {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: calc(var(--wc-space-1) * 0.5);
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__name {
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.2;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__email {
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1.3;
    color: var(--wc-muted);
    overflow-wrap: anywhere;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__points {
    margin-left: 0;
    min-width: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    border: 0;
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: calc(var(--wc-space-1) * 0.9);
    box-sizing: border-box;
}

body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__points-value {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.24em;
    min-width: 0;
    min-height: 0;
    padding: 0.12vw 0.48vw;
    border-radius: 0.7vw;
    background: var(--wc-accent);
    font-family: "cera-pro-bold", sans-serif;
    font-size: var(--wc-fs-caption);
    line-height: 1.2;
    color: var(--wc-text);
    font-weight: normal;
}

.lipko-points-icon {
    display: block;
    width: 0.92em;
    height: 1.05em;
    max-width: none;
    flex: 0 0 auto;
    background-color: currentColor;
    -webkit-mask: url('/wp-content/uploads/2026/05/listik.svg') center / contain no-repeat;
    mask: url('/wp-content/uploads/2026/05/listik.svg') center / contain no-repeat;
    pointer-events: none;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: var(--wc-space-1);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation li {
    margin: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation a {
    display: flex;
    align-items: center;
    gap: 0.45vw;
    padding: var(--wc-space-2);
    border-radius: var(--wc-r-sm);
    border: var(--wc-hairline) solid transparent;
    text-decoration: none;
    color: var(--wc-text);
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.35;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation a::before {
    content: "";
    width: 0.85vw;
    height: 0.85vw;
    flex: 0 0 0.85vw;
    background-color: currentColor;
    opacity: 0.7;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--dashboard a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.5 12 3l9 7.5V21a1 1 0 0 1-1 1h-5v-7h-6v7H4a1 1 0 0 1-1-1v-10.5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.5 12 3l9 7.5V21a1 1 0 0 1-1 1h-5v-7h-6v7H4a1 1 0 0 1-1-1v-10.5Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--orders a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4h10l1 3h2v2h-1l-1.2 8.4A2 2 0 0 1 15.82 19H8.18a2 2 0 0 1-1.98-1.6L5 9H4V7h2l1-3Zm1.6 3h6.8l-.34-1H8.94L8.6 7ZM8 21a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm8 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4h10l1 3h2v2h-1l-1.2 8.4A2 2 0 0 1 15.82 19H8.18a2 2 0 0 1-1.98-1.6L5 9H4V7h2l1-3Zm1.6 3h6.8l-.34-1H8.94L8.6 7ZM8 21a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm8 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--my-points a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20Zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm3.2 5.2 1.4 1.4-5.5 5.5-2.8-2.8 1.4-1.4 1.4 1.4 4.1-4.1Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20Zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm3.2 5.2 1.4 1.4-5.5 5.5-2.8-2.8 1.4-1.4 1.4 1.4 4.1-4.1Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--downloads a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 4h2v8h3l-4 5-4-5h3V4Zm-6 14h14v2H5v-2Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 4h2v8h3l-4 5-4-5h3V4Zm-6 14h14v2H5v-2Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--edit-address a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 4.6-5.2 10.6-6.4 11.9a.8.8 0 0 1-1.2 0C10.2 19.6 5 13.6 5 9a7 7 0 0 1 7-7Zm0 9.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 4.6-5.2 10.6-6.4 11.9a.8.8 0 0 1-1.2 0C10.2 19.6 5 13.6 5 9a7 7 0 0 1 7-7Zm0 9.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--edit-account a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M15.2 4.3a2.4 2.4 0 0 1 3.4 3.4l-8.8 8.8-4 1 1-4 8.4-9.2ZM4 20h16v2H4v-2Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M15.2 4.3a2.4 2.4 0 0 1 3.4 3.4l-8.8 8.8-4 1 1-4 8.4-9.2ZM4 20h16v2H4v-2Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link--customer-logout a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13 3h6a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1h-6v-2h5V5h-5V3ZM4.7 12l4.3-4.3 1.4 1.4L8.5 11H15v2H8.5l1.9 1.9-1.4 1.4L4.7 12Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13 3h6a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1h-6v-2h5V5h-5V3ZM4.7 12l4.3-4.3 1.4 1.4L8.5 11H15v2H8.5l1.9 1.9-1.4 1.4L4.7 12Z'/%3E%3C/svg%3E");
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation a:hover {
    background: #ededed;
    border-color: var(--wc-border);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation-link.is-active a {
    background: var(--wc-accent);
    border-color: transparent;
    color: var(--wc-text);
    font-family: "bounded-semibold", sans-serif;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation a[aria-current="page"] {
    background: var(--wc-accent);
    border-color: transparent;
    color: var(--wc-text);
    font-family: "bounded-semibold", sans-serif;
}

/* Dashboard fallback: если WooCommerce не добавил is-active на /my-account/ */
body.woocommerce-account-auth-page.logged-in.woocommerce-account:not(.woocommerce-orders):not(.woocommerce-downloads):not(.woocommerce-edit-address):not(.woocommerce-edit-account):not(.woocommerce-view-order):not(.woocommerce-payment-methods):not(.woocommerce-add-payment-method):not(.woocommerce-lost-password):not(.woocommerce-customer-logout) .woocommerce-MyAccount-navigation-link--dashboard a {
    background: var(--wc-accent);
    border-color: transparent;
    color: var(--wc-text);
    font-family: "bounded-semibold", sans-serif;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: var(--wc-space-5) var(--wc-space-6);
    border-radius: var(--wc-r-md);
    background: #fafafa;
    box-sizing: border-box;
    overflow-x: visible;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content > :first-child {
    margin-top: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content > :last-child {
    margin-bottom: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page {
    margin: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__title {
    margin: 0 0 var(--wc-space-5);
    font-family: "bounded-semibold", sans-serif;
    font-size: 2.15vw;
    line-height: 1.1;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__description {
    margin: 0 0 var(--wc-space-4);
    max-width: 46vw;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.5;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card {
    position: relative;
    width: 100%;
    max-width: 24.5vw;
    min-height: 12.8vw;
    padding: 2.1vw 1.7vw;
    border-radius: 1.4vw;
    background: linear-gradient(120deg, #adeb02 0%, #7ca900 45%, #adeb02 100%);
    background-size: 220% 220%;
    animation: lipkoPointsGradientFlow 6s ease-in-out infinite;
    box-shadow: 0 0.8vw 1.8vw rgba(42, 42, 45, 0.18);
    box-sizing: border-box;
    color: #ffffff;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__status {
    font-family: "bounded-semibold", sans-serif;
    font-size: 1.45vw;
    line-height: 1.2;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__cashback {
    margin-top: 0.65vw;
    font-family: "bounded-semibold", sans-serif;
    font-size: 2.05vw;
    line-height: 1.1;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__balance {
    position: absolute;
    right: 1.7vw;
    bottom: 1.45vw;
    display: inline-flex;
    align-items: center;
    gap: 0.42vw;
    font-family: "bounded-semibold", sans-serif;
    font-size: 1.35vw;
    line-height: 1;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__balance .lipko-points-icon {
    width: 0.9em;
    height: 1.05em;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale {
    margin-top: var(--wc-space-5);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__labels {
    display: flex;
    justify-content: space-between;
    gap: var(--wc-space-2);
    margin-bottom: 0.5vw;
    font-family: "bounded-semibold", sans-serif;
    font-size: 0.9vw;
    line-height: 1.2;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__track {
    width: 100%;
    height: 0.86vw;
    border-radius: 2vw;
    background: #ffffff;
    border: var(--wc-hairline) solid #e2e2e2;
    overflow: hidden;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__bar {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #adeb02 0%, #7ca900 100%);
}

@keyframes lipkoPointsGradientFlow {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__hint {
    margin-top: 0.72vw;
    text-align: center;
    font-family: "cera-pro-regular", sans-serif;
    font-size: 0.82vw;
    line-height: 1.35;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history {
    margin-top: var(--wc-space-6);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__title {
    margin: 0 0 var(--wc-space-3);
    font-family: "bounded-semibold", sans-serif;
    font-size: 1.2vw;
    line-height: 1.2;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table-wrap {
    width: 100%;
    overflow-x: auto;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    background: #ffffff;
    border-radius: var(--wc-r-sm);
    overflow: hidden;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table th,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table td {
    padding: var(--wc-space-3) var(--wc-space-4);
    border-bottom: var(--wc-hairline) solid #e6e6e6;
    text-align: left;
    white-space: nowrap;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.35;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table thead th {
    font-family: "bounded-semibold", sans-serif;
    background: #fafafa;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table tbody tr:last-child td {
    border-bottom: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__empty {
    margin: 0;
    padding: var(--wc-space-4);
    border-radius: var(--wc-r-sm);
    background: #ffffff;
    border: var(--wc-hairline) solid #e6e6e6;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page.logged-in.woocommerce-edit-address .woocommerce-MyAccount-content form .woocommerce-address-fields + p {
    margin-top: var(--wc-space-4);
}

body.woocommerce-account-auth-page.logged-in.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-address-fields > p {
    margin-top: var(--wc-space-4);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content p,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content li,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content label,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content legend {
    font-family: "cera-pro-regular", sans-serif;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content p,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content li {
    font-size: var(--wc-fs-body);
    line-height: 1.55;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content a {
    color: var(--wc-text);
    text-decoration: none;
    border-bottom: var(--wc-hairline) solid var(--wc-border-strong);
    transition: border-color 0.15s ease, color 0.15s ease;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content a:hover {
    color: var(--wc-muted);
    border-bottom-color: var(--wc-accent);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content a.button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content a.woocommerce-button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content a.woocommerce-Button {
    border-bottom: none;
    padding-bottom: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-message {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--wc-space-2);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-info .button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-info a.button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-message .button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-message a.button,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .woocommerce-message .woocommerce-Button {
    margin: 0;
    align-self: flex-start;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .form-row,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content p {
    margin-bottom: var(--wc-space-4);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .form-row:last-child,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content p:last-child {
    margin-bottom: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content fieldset {
    margin: 0 0 var(--wc-space-4);
    padding: var(--wc-space-4);
    border: var(--wc-hairline) solid var(--wc-border);
    border-radius: var(--wc-r-sm);
}

body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content fieldset legend {
    padding: 0 var(--wc-space-2);
}

body.woocommerce-account-auth-page.logged-in .woocommerce table.shop_table {
    border: none;
    border-radius: var(--wc-r-sm);
    overflow: hidden;
    margin: 0 0 var(--wc-space-3);
}

body.woocommerce-account-auth-page.logged-in .woocommerce table.shop_table th,
body.woocommerce-account-auth-page.logged-in .woocommerce table.shop_table td {
    border-color: var(--wc-border) !important;
    padding: var(--wc-space-3) var(--wc-space-4);
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.4;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-orders-table__header-order-points,
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-orders-table__cell-order-points {
    text-align: left;
    white-space: nowrap;
}

body.woocommerce-account-auth-page.logged-in .woocommerce table.shop_table thead th {
    background: #fafafa;
    font-family: "bounded-semibold", sans-serif;
    font-weight: normal;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .button,
body.woocommerce-account-auth-page.logged-in .woocommerce button.button,
body.woocommerce-account-auth-page.logged-in .woocommerce a.button,
body.woocommerce-account-auth-page.logged-in .woocommerce input.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15vw;
    box-sizing: border-box;
    padding: var(--wc-btn-py) var(--wc-btn-px);
    border: none;
    border-radius: var(--wc-r-sm);
    background: var(--wc-accent);
    color: #fff;
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-button);
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.18s ease, color 0.18s ease, transform 0.12s ease;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .button:hover,
body.woocommerce-account-auth-page.logged-in .woocommerce button.button:hover,
body.woocommerce-account-auth-page.logged-in .woocommerce a.button:hover,
body.woocommerce-account-auth-page.logged-in .woocommerce input.button:hover {
    background: var(--wc-accent);
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .button:active,
body.woocommerce-account-auth-page.logged-in .woocommerce button.button:active,
body.woocommerce-account-auth-page.logged-in .woocommerce a.button:active,
body.woocommerce-account-auth-page.logged-in .woocommerce input.button:active {
    transform: scale(0.985);
}

body.woocommerce-account-auth-page.logged-in .woocommerce input[type="text"],
body.woocommerce-account-auth-page.logged-in .woocommerce input[type="email"],
body.woocommerce-account-auth-page.logged-in .woocommerce input[type="password"],
body.woocommerce-account-auth-page.logged-in .woocommerce input[type="tel"],
body.woocommerce-account-auth-page.logged-in .woocommerce textarea,
body.woocommerce-account-auth-page.logged-in .woocommerce select {
    width: 100%;
    box-sizing: border-box;
    min-height: 2.15vw;
    margin: 0;
    padding: 0 var(--wc-space-3);
    border: var(--wc-hairline) solid var(--wc-border-strong) !important;
    border-radius: var(--wc-r-sm) !important;
    background: var(--wc-elevated) !important;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-body);
    line-height: 1.4;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce textarea {
    min-height: 6.8vw;
    padding-top: var(--wc-space-2);
    padding-bottom: var(--wc-space-2);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container {
    width: 100% !important;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection--single {
    height: 2.15vw !important;
    min-height: 2.15vw !important;
    border: var(--wc-hairline) solid var(--wc-border-strong) !important;
    border-radius: var(--wc-r-sm) !important;
    background: var(--wc-elevated) !important;
    box-sizing: border-box;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection__rendered {
    padding: 0 var(--wc-space-3) !important;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-body) !important;
    line-height: 2.15vw !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection__placeholder {
    color: var(--wc-muted) !important;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection__arrow {
    height: 100% !important;
    right: var(--wc-space-2) !important;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container--default.select2-container--focus .select2-selection--single,
body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--wc-text) !important;
    box-shadow: 0 0 0 var(--wc-space-1) rgba(173, 235, 2, 0.35);
}

/* Выпадающий список Select2 (рендерится вне .woocommerce, привязан к body) */
body.woocommerce-account-auth-page .select2-dropdown {
    border: var(--wc-hairline) solid var(--wc-border-strong) !important;
    border-radius: var(--wc-r-sm) !important;
    background: var(--wc-elevated) !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-body) !important;
    color: var(--wc-text) !important;
    box-shadow: 0 var(--wc-space-1) var(--wc-space-3) rgba(42, 42, 45, 0.12);
}

body.woocommerce-account-auth-page .select2-dropdown,
body.woocommerce-account-auth-page .select2-dropdown *,
body.woocommerce-account-auth-page .select2-container--default .select2-results > .select2-results__options {
    font-family: "cera-pro-regular", sans-serif !important;
}

body.woocommerce-account-auth-page .select2-results__option {
    padding: var(--wc-space-2) var(--wc-space-3) !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-body) !important;
    line-height: 1.4 !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page .select2-results__group {
    padding: var(--wc-space-2) var(--wc-space-3) !important;
    font-family: "bounded-semibold", sans-serif !important;
    font-size: var(--wc-fs-label) !important;
    line-height: 1.3 !important;
    color: var(--wc-muted) !important;
}

body.woocommerce-account-auth-page .select2-results__option--highlighted,
body.woocommerce-account-auth-page .select2-results__option--highlighted.select2-results__option--selectable {
    background: var(--wc-accent) !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page .select2-results__option[aria-selected="true"] {
    background: rgba(173, 235, 2, 0.22) !important;
}

body.woocommerce-account-auth-page .select2-search--dropdown {
    padding: var(--wc-space-2) var(--wc-space-3) 0;
}

body.woocommerce-account-auth-page .select2-search--dropdown .select2-search__field {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: var(--wc-space-2) var(--wc-space-3) !important;
    border: var(--wc-hairline) solid var(--wc-border-strong) !important;
    border-radius: var(--wc-r-sm) !important;
    background: var(--wc-elevated) !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-body) !important;
    line-height: 1.4 !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page .select2-search--dropdown .select2-search__field:focus {
    outline: none;
    border-color: var(--wc-text) !important;
    box-shadow: 0 0 0 var(--wc-space-1) rgba(173, 235, 2, 0.35);
}

body.woocommerce-account-auth-page.logged-in .woocommerce input:focus,
body.woocommerce-account-auth-page.logged-in .woocommerce textarea:focus,
body.woocommerce-account-auth-page.logged-in .woocommerce select:focus {
    outline: none;
    border-color: var(--wc-text) !important;
    box-shadow: 0 0 0 var(--wc-space-1) rgba(173, 235, 2, 0.35);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .col2-set {
    margin: 0;
    width: 100%;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .col2-set .col-1,
body.woocommerce-account-auth-page.logged-in .woocommerce .col2-set .col-2 {
    width: calc(50% - (var(--wc-space-2) / 2));
}

body.woocommerce-account-auth-page.logged-in .woocommerce .addresses .title h3,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content h2,
body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content h3 {
    margin: 0 0 var(--wc-space-3);
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-heading);
    font-weight: normal;
    line-height: 1.3;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Addresses {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--wc-space-3);
    width: 100%;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address {
    float: none !important;
    width: 100% !important;
    margin: 0;
    padding: var(--wc-space-4);
    border-radius: var(--wc-r-sm);
    background: #fafafa;
    border: var(--wc-hairline) solid var(--wc-border);
    box-sizing: border-box;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address-title.title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--wc-space-2);
    margin: 0 0 var(--wc-space-3);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address-title.title h2 {
    margin: 0;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address-title .edit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15vw;
    box-sizing: border-box;
    padding: var(--wc-btn-py) var(--wc-btn-px);
    border-radius: var(--wc-r-sm);
    background: var(--wc-ink);
    border: none;
    color: #fff;
    text-decoration: none;
    font-family: "bounded-semibold", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.2;
    max-width: 100%;
    white-space: normal;
    text-align: center;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address-title .edit:hover {
    background: var(--wc-accent);
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address address {
    margin: 0;
    font-style: normal;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-body);
    line-height: 1.55;
    color: var(--wc-muted);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-pagination {
    margin-top: var(--wc-space-3);
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    gap: var(--wc-space-1);
    margin: 0;
    padding: 0;
    list-style: none;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-pagination .page-numbers a,
body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-pagination .page-numbers .current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.6vw;
    min-height: 1.6vw;
    padding: 0 var(--wc-space-1);
    border-radius: var(--wc-r-sm);
    border: var(--wc-hairline) solid var(--wc-border);
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    text-decoration: none;
}

body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-pagination .page-numbers .current {
    background: var(--wc-accent);
    border-color: transparent;
}

/* ---------- My Account: view-order (match cart.css aesthetics) ---------- */
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-MyAccount-content > p {
    margin: 0 0 var(--wc-space-3);
    padding: var(--wc-space-3) var(--wc-space-4);
    border-radius: var(--wc-r-sm);
    background: #fafafa;
    font-family: "cera-pro-regular", sans-serif;
    font-size: var(--wc-fs-ui);
    line-height: 1.45;
    color: var(--wc-text);
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-order-details,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-customer-details {
    margin: 0 0 var(--wc-space-3) !important;
    padding: var(--wc-space-4) !important;
    border-radius: var(--wc-r-md) !important;
    background: #fafafa !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-order-details__title,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-column__title {
    margin: 0 0 var(--wc-space-3) !important;
    font-family: "bounded-semibold", sans-serif !important;
    font-size: var(--wc-fs-heading) !important;
    line-height: 1.3 !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details th,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details td {
    border: 0 !important;
    background: transparent !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details {
    margin: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details thead th {
    padding: 0 0 var(--wc-space-2) !important;
    border-bottom: var(--wc-hairline) solid #dfdfdf !important;
    text-align: left !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-caption) !important;
    line-height: 1.35 !important;
    color: #808082 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details .order_item td {
    padding: var(--wc-space-3) 0 !important;
    vertical-align: top !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details .product-name > a {
    color: var(--wc-text) !important;
    text-decoration: none !important;
    border-bottom: var(--wc-hairline) dashed rgba(42, 42, 45, 0.35) !important;
    font-family: "bounded-semibold", sans-serif !important;
    font-size: var(--wc-fs-body) !important;
    line-height: 1.4 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details .product-quantity {
    margin-left: var(--wc-space-1) !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-caption) !important;
    line-height: 1.3 !important;
    color: #808082 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .wc-item-meta {
    margin: var(--wc-space-2) 0 0 !important;
    padding: var(--wc-space-2) var(--wc-space-3) !important;
    border-radius: var(--wc-r-sm) !important;
    background: #ffffff !important;
    border: var(--wc-hairline) solid #e7e7e7 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: var(--wc-space-1) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .wc-item-meta li {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: var(--wc-space-1) !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-caption) !important;
    line-height: 1.35 !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .wc-item-meta li .wc-item-meta-label {
    margin: 0 !important;
    font-family: "cera-pro-medium", sans-serif !important;
    font-weight: 500 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .wc-item-meta li p {
    margin: 0 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details tfoot tr {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: var(--wc-space-3) !important;
    padding: var(--wc-space-2) 0 !important;
    border-top: var(--wc-hairline) solid #dfdfdf !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details tfoot th,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details tfoot td {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-ui) !important;
    line-height: 1.4 !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details tfoot tr:last-child th,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details tfoot tr:last-child td {
    font-family: "bounded-semibold", sans-serif !important;
    font-size: var(--wc-fs-body) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .order-actions-button,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-button.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: var(--wc-btn-py) var(--wc-btn-px) !important;
    border-radius: 2vw !important;
    border: var(--wc-hairline) solid var(--wc-ink) !important;
    background: var(--wc-ink) !important;
    color: #fff !important;
    text-decoration: none !important;
    text-transform: none !important;
    box-shadow: none !important;
    font-family: "bounded-semibold", sans-serif !important;
    font-size: var(--wc-fs-caption) !important;
    line-height: 1.2 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .order-actions-button:hover,
body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-button.button:hover {
    background: var(--wc-accent) !important;
    border-color: var(--wc-accent) !important;
    color: var(--wc-text) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses {
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: var(--wc-space-3) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column {
    float: none !important;
    width: calc(50% - (var(--wc-space-3) / 2)) !important;
    margin: 0 !important;
    padding: var(--wc-space-3) var(--wc-space-4) !important;
    border: var(--wc-hairline) solid #dfdfdf !important;
    border-radius: var(--wc-r-md) !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    gap: var(--wc-space-2) !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column--shipping-address,
body.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column--shipping-address {
    display: none !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column--billing-address,
body.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column--billing-address {
    width: 100% !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses address {
    margin: 0 !important;
    font-style: normal !important;
    font-family: "cera-pro-regular", sans-serif !important;
    font-size: var(--wc-fs-ui) !important;
    line-height: 1.45 !important;
    color: var(--wc-text) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: var(--wc-space-1) !important;
}

@media (max-width: 1024px) {
    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-order-details,
    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-customer-details {
        padding: 3.8vw 4vw !important;
        border-radius: 2.6vw !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses {
        gap: 2.8vw !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column {
        width: calc(50% - 1.4vw) !important;
        padding: 3.2vw 3.6vw !important;
        border-radius: 2.4vw !important;
    }
}

@media (max-width: 600px) {
    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-MyAccount-content > p {
        padding: 3.4vw 3.8vw !important;
        border-radius: 3vw !important;
        line-height: 1.5 !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order table.woocommerce-table--order-details .order_item td {
        padding: 3.1vw 0 !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .wc-item-meta {
        padding: 2.8vw 3.2vw !important;
        border-radius: 2.6vw !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .order-actions-button,
    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-button.button {
        width: 100% !important;
        border-radius: 8vw !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses {
        gap: 2.6vw !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-view-order .woocommerce-columns--addresses .woocommerce-column {
        width: 100% !important;
        padding: 3.4vw 3.8vw !important;
        border-radius: 2.8vw !important;
    }
}

/* ---------- Планшет и узкие окна (до 1024px) ---------- */
@media (max-width: 1024px) {
    body.woocommerce-account-auth-page {
        --wc-lk-width: 94vw;
    }

    body.woocommerce-account-auth-page:not(.logged-in) .wc-auth-stack {
        width: 42vw;
        max-width: 92vw;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-stack {
        width: var(--wc-lk-width);
        max-width: var(--wc-lk-width);
    }

    body.woocommerce-account-auth-page .wc-auth-layout {
        padding: 2.8vw 3vw;
    }

    body.woocommerce-account-auth-page .wc-auth-logo-wrap img {
        height: 3.2vw;
        max-width: 10vw;
    }

    body.woocommerce-account-auth-page .wc-auth-container {
        padding: 0;
    }

    body.woocommerce-account-auth-page:not(.logged-in) .wc-auth-container {
        padding: var(--wc-space-5) var(--wc-space-4);
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-container {
        padding: 0;
    }

    body.woocommerce-account-auth-page .wc-auth-content .woocommerce-notices-wrapper {
        margin-bottom: 1.2vw;
    }

    body.woocommerce-account-auth-page .woocommerce-message,
    body.woocommerce-account-auth-page .woocommerce-error,
    body.woocommerce-account-auth-page .woocommerce-info {
        font-size: 1.35vw !important;
        line-height: 1.45 !important;
    }

    body.woocommerce-account-auth-page .woocommerce-error li {
        font-size: 1.35vw;
        line-height: 1.45;
    }

    body.woocommerce-account-auth-page .woocommerce-message .button,
    body.woocommerce-account-auth-page .woocommerce-message a.button,
    body.woocommerce-account-auth-page .woocommerce-message .button.wc-forward {
        font-size: 1.35vw;
        line-height: 1.45;
    }

    body.woocommerce-account-auth-page .woocommerce-message::before,
    body.woocommerce-account-auth-page .woocommerce-info::before,
    body.woocommerce-account-auth-page .woocommerce-error::before {
        font-size: 1.5vw !important;
        top: 0.85vw !important;
        left: 0.75vw !important;
    }

    body.woocommerce-account-auth-page .woocommerce-message,
    body.woocommerce-account-auth-page .woocommerce-error,
    body.woocommerce-account-auth-page .woocommerce-info {
        padding: 0.75vw 1vw 0.75vw 2.75vw !important;
    }

    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .input-text,
    body.woocommerce-account-auth-page .woocommerce form.register .input-text,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .input-text {
        min-height: 2.8vw;
    }

    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login button.button,
    body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-button,
    body.woocommerce-account-auth-page .woocommerce form.register button.button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .woocommerce-Button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword button.button {
        min-height: 3vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce > .lipko-account-nav-user,
    body.woocommerce-account-auth-page.logged-in .woocommerce > .woocommerce-MyAccount-navigation,
    body.woocommerce-account-auth-page.logged-in .woocommerce > .woocommerce-MyAccount-content {
        grid-column: 1;
        grid-row: auto;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-logout {
        min-height: 2.2vw;
        padding: 0.45vw 1.05vw;
        border-radius: 2.2vw;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points {
        min-width: 10.2vw;
        padding: 0.45vw 0.9vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-label {
        width: 7.8vw;
        height: 7.8vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content {
        padding: 3.2vw 4vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__title {
        font-size: 4vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__description {
        max-width: 100%;
        font-size: 1.6vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card {
        max-width: 52vw;
        min-height: 26vw;
        padding: 3.6vw 3.2vw;
        border-radius: 2.4vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__status {
        font-size: 2.8vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__cashback {
        margin-top: 1.3vw;
        font-size: 3.5vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__balance {
        right: 3.2vw;
        bottom: 2.8vw;
        font-size: 2.7vw;
        gap: 0.9vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__labels {
        margin-bottom: 1.1vw;
        font-size: 1.7vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__track {
        height: 1.5vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__hint {
        margin-top: 1.35vw;
        font-size: 1.55vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__title {
        font-size: 2.2vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Address-title .edit {
        min-height: 2.8vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .button,
    body.woocommerce-account-auth-page.logged-in .woocommerce button.button,
    body.woocommerce-account-auth-page.logged-in .woocommerce a.button,
    body.woocommerce-account-auth-page.logged-in .woocommerce input.button,
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="text"],
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="email"],
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="password"],
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="tel"],
    body.woocommerce-account-auth-page.logged-in .woocommerce select {
        min-height: 2.8vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection--single {
        height: 2.8vw !important;
        min-height: 2.8vw !important;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection__rendered {
        line-height: 2.8vw !important;
    }
}

@media (min-width: 1025px) {
    body.woocommerce-account-auth-page.logged-in .wc-auth-stack {
        align-items: stretch;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-logo-wrap {
        align-self: center;
    }
}

@media (max-width: 600px) {
    body.woocommerce-account-auth-page {
        --wc-lk-width: 96vw;
        --wc-btn-py: var(--wc-space-3);
        --wc-btn-px: var(--wc-space-6);
        --wc-space-1: 0.7vw;
        --wc-space-2: 1.4vw;
        --wc-space-3: 2.1vw;
        --wc-space-4: 2.8vw;
        --wc-space-5: 3.5vw;
        --wc-space-6: 7vw;
        --wc-r-sm: 1.4vw;
        --wc-r-md: 2.2vw;
        --wc-fs-caption: 2.2vw;
        --wc-fs-label: 2.1vw;
        --wc-fs-body: 2.6vw;
        --wc-fs-ui: 2.5vw;
        --wc-fs-button: 2.6vw;
        --wc-fs-heading: 3vw;
        --wc-fs-strength: 2.2vw;
        --wc-fs-logo-text: 4.5vw;
    }

    body.woocommerce-account-auth-page:not(.logged-in) .wc-auth-stack {
        width: 92vw;
        max-width: 92vw;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-stack {
        width: var(--wc-lk-width);
        max-width: var(--wc-lk-width);
    }

    body.woocommerce-account-auth-page .wc-auth-layout {
        padding-top: var(--wc-space-4);
        padding-bottom: var(--wc-space-4);
        padding-left: var(--wc-space-4);
        padding-right: var(--wc-space-4);
        min-height: auto;
    }

    body.woocommerce-account-auth-page .wc-auth-logo-wrap img {
        height: 8vw;
        max-width: 28vw;
    }

    body.woocommerce-account-auth-page .wc-auth-container {
        padding: 0;
    }

    body.woocommerce-account-auth-page:not(.logged-in) .wc-auth-container {
        padding: var(--wc-space-4);
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-container {
        padding: 0;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar {
        padding: var(--wc-space-3);
        flex-wrap: wrap;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-logout {
        min-height: 6.8vw;
        padding: 1.35vw 3.1vw;
        border-radius: 6vw;
        font-size: 2.4vw;
        line-height: 1;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points {
        order: 3;
        width: 100%;
        margin-left: 0;
        align-items: flex-start;
        min-width: 0;
        padding: 1.6vw 2.2vw;
        border-radius: 2.2vw;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points-label {
        font-size: 2.2vw;
    }

    body.woocommerce-account-auth-page.logged-in .wc-auth-userbar-points-value {
        font-size: 2.9vw;
    }

    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .input-text,
    body.woocommerce-account-auth-page .woocommerce form.register .input-text,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .input-text {
        min-height: 11vw;
        padding-top: 0.5vw;
        padding-bottom: 0.5vw;
    }

    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login button.button,
    body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-button,
    body.woocommerce-account-auth-page .woocommerce form.register button.button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .woocommerce-Button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword button.button {
        min-height: 11vw;
    }

    /* Уведомления — масштаб как в cart.css @media (max-width: 768px) */
    body.woocommerce-account-auth-page .wc-auth-content .woocommerce-notices-wrapper {
        margin-bottom: 3.2vw;
    }

    body.woocommerce-account-auth-page .woocommerce-message,
    body.woocommerce-account-auth-page .woocommerce-info,
    body.woocommerce-account-auth-page .woocommerce-error {
        padding: 3vw 3.4vw 3vw 13vw !important;
        border-radius: 2.8vw !important;
        font-size: 3.3vw !important;
        line-height: 4.2vw !important;
    }

    body.woocommerce-account-auth-page .woocommerce-error li {
        padding: 1.3vw 0;
        font-size: 3.2vw;
        line-height: 4.1vw;
    }

    body.woocommerce-account-auth-page .woocommerce-message .button,
    body.woocommerce-account-auth-page .woocommerce-message a.button,
    body.woocommerce-account-auth-page .woocommerce-message .button.wc-forward {
        font-size: 3.2vw;
        line-height: 4.1vw;
        border-bottom-width: 0.3vw;
    }

    body.woocommerce-account-auth-page .woocommerce-message::before,
    body.woocommerce-account-auth-page .woocommerce-info::before,
    body.woocommerce-account-auth-page .woocommerce-error::before {
        top: 3.2vw !important;
        left: 3.4vw !important;
        font-size: 3.6vw !important;
    }

    body.woocommerce-account-auth-page .woocommerce-message,
    body.woocommerce-account-auth-page .woocommerce-error,
    body.woocommerce-account-auth-page .woocommerce-info {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation ul {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user {
        gap: var(--wc-space-3);
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-label {
        width: 16vw;
        height: 16vw;
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-hint {
        padding: 1vw;
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__points {
        gap: var(--wc-space-1);
    }


    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content {
        padding: var(--wc-space-5) var(--wc-space-4);
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__title {
        font-size: 7.1vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__description {
        font-size: 2.8vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card {
        max-width: 100%;
        min-height: 43vw;
        padding: 5.2vw 4.4vw;
        border-radius: 3.4vw;
        box-shadow: 0 2.1vw 4.8vw rgba(42, 42, 45, 0.17);
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__status {
        font-size: 5.3vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__cashback {
        margin-top: 2.2vw;
        font-size: 6.2vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card__balance {
        right: 4.4vw;
        bottom: 4.1vw;
        font-size: 4.8vw;
        gap: 1.5vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale {
        margin-top: 4.4vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__labels {
        margin-bottom: 1.8vw;
        font-size: 3vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__track {
        height: 3.1vw;
        border-radius: 7vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-scale__hint {
        margin-top: 2vw;
        font-size: 2.7vw;
        line-height: 1.45;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__title {
        font-size: 4.6vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table th,
    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table td {
        padding: 2.6vw 2.8vw;
        font-size: 2.8vw;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table {
        border: none;
        background: transparent;
        margin: 0;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table thead {
        display: none;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table tbody,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table tr,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table td,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table th {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table tr {
        margin: 0 0 3.8vw;
        padding: 3.9vw 4vw;
        border: var(--wc-hairline) solid var(--wc-border);
        border-radius: 2.6vw;
        background: #fafafa;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table tr:last-child {
        margin-bottom: 0;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table td,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table th {
        margin: 0;
        padding: 2.1vw 0;
        border: 0 !important;
        border-bottom: var(--wc-hairline) solid #dfdfdf !important;
        text-align: left !important;
        font-size: 2.6vw;
        line-height: 1.35;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.shop_table_responsive tbody th,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.shop_table_responsive tbody td {
        text-align: left !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.shop_table_responsive tbody th::before,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.shop_table_responsive tbody td::before {
        float: none !important;
        width: auto !important;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table td:last-child {
        border-bottom: 0 !important;
        padding-bottom: 0;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table td::before,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content table.woocommerce-orders-table th::before {
        content: attr(data-title);
        display: block;
        margin: 0 0 1.15vw;
        font-family: "cera-pro-medium", sans-serif;
        font-size: 2.15vw;
        line-height: 1.2;
        color: var(--wc-muted);
        text-transform: none;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-number {
        padding-top: 0;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-number::before {
        margin-bottom: 1.45vw;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-number a {
        font-family: "bounded-semibold", sans-serif;
        font-size: 2.8vw;
        color: var(--wc-text);
        text-decoration: none;
        border-bottom: var(--wc-hairline) dashed rgba(42, 42, 45, 0.35);
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-date time,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-status,
    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-total {
        font-family: "cera-pro-regular", sans-serif;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-total {
        font-family: "bounded-semibold", sans-serif;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-points {
        font-family: "cera-pro-regular", sans-serif;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions {
        padding-top: 3.1vw;
    }

    body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button {
        width: 100%;
        min-height: 8.6vw;
        padding: 1.7vw 4.2vw;
        border-radius: 6vw;
        font-size: 2.45vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .woocommerce-Addresses {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .col2-set .col-1,
    body.woocommerce-account-auth-page.logged-in .woocommerce .col2-set .col-2 {
        width: 100%;
        float: none;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce table.shop_table th,
    body.woocommerce-account-auth-page.logged-in .woocommerce table.shop_table td {
        padding: 2.2vw;
        font-size: 2.6vw;
        line-height: 1.35;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .button,
    body.woocommerce-account-auth-page.logged-in .woocommerce button.button,
    body.woocommerce-account-auth-page.logged-in .woocommerce a.button,
    body.woocommerce-account-auth-page.logged-in .woocommerce input.button,
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="text"],
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="email"],
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="password"],
    body.woocommerce-account-auth-page.logged-in .woocommerce input[type="tel"],
    body.woocommerce-account-auth-page.logged-in .woocommerce select {
        min-height: 11vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection--single {
        height: 11vw !important;
        min-height: 11vw !important;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce .select2-container .select2-selection__rendered {
        line-height: 11vw !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login button.button,
    body.woocommerce-account-auth-page .woocommerce form.register .woocommerce-button,
    body.woocommerce-account-auth-page .woocommerce form.register button.button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword .woocommerce-Button,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-ResetPassword button.button,
    body.woocommerce-account-auth-page .wc-auth-switch-links a,
    body.woocommerce-account-auth-page .woocommerce form.woocommerce-form-login .woocommerce-LostPassword a,
    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-card {
        transition: none;
        animation: none;
    }
}

/* ---------- Extra mobile hardening for My Account (<=768px) ---------- */
@media (max-width: 768px) {
    body.woocommerce-account-auth-page.logged-in .wc-auth-layout {
        padding: 3.5vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce {
        grid-template-columns: 1fr;
        gap: 3vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce > .lipko-account-nav-user,
    body.woocommerce-account-auth-page.logged-in .woocommerce > .woocommerce-MyAccount-navigation,
    body.woocommerce-account-auth-page.logged-in .woocommerce > .woocommerce-MyAccount-content {
        grid-column: 1;
        grid-row: auto;
        width: 100%;
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user {
        align-items: center;
        gap: 2.6vw;
    }

    body.woocommerce-account-auth-page.logged-in .lipko-account-nav-user__avatar-label {
        width: 14vw;
        height: 14vw;
        min-width: 14vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation ul {
        grid-template-columns: 1fr;
        gap: 1.4vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation a {
        padding: 2.2vw 2.6vw;
        gap: 1.8vw;
        font-size: 2.9vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-navigation a::before {
        width: 3.1vw;
        height: 3.1vw;
        flex-basis: 3.1vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content {
        padding: 4vw 4.2vw;
        border-radius: 2.8vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__title {
        font-size: 6vw;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-page__description {
        font-size: 2.7vw;
        line-height: 1.45;
    }

    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table th,
    body.woocommerce-account-auth-page.logged-in .woocommerce-MyAccount-content .lipko-points-history__table td {
        font-size: 2.6vw;
    }
}

/* Orders dropdown (Tippy theme) */
.tippy-box[data-theme~='lipko'] {
    background: #ffffff;
    color: #2A2A2D;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.14);
    border: 1px solid rgba(42, 42, 45, 0.08);
    font-family: "cera-pro-regular";
}

.tippy-box[data-theme~='lipko'] .tippy-content {
    padding: 8px;
}

.tippy-box[data-theme~='lipko'] .tippy-arrow {
    color: #ffffff;
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__menu {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 220px;
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item,
.tippy-box[data-theme~='lipko'] .woocommerce-button.button.lipko-order-actions-dropdown__item {
    width: 100%;
    box-sizing: border-box;
    border-radius: 10px;
    padding: 10px 12px;
    background: transparent;
    border: 1px solid transparent;
    box-shadow: none;
    text-align: left;
    font-family: inherit;
    font-weight: 600;
    font-size: 14px;
    line-height: 18px;
    color: #2A2A2D;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    cursor: pointer;
}

.tippy-box[data-theme~='lipko'] a.lipko-order-actions-dropdown__item {
    display: flex;
    text-decoration: none;
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item:hover {
    background: rgba(42, 42, 45, 0.08);
    border-color: rgba(42, 42, 45, 0.14);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.leave-review:hover {
    background: rgba(42, 42, 45, 0.08);
    border-color: rgba(42, 42, 45, 0.14);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(42, 42, 45, 0.18);
}

/* Icons (mask via currentColor) */
.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item::before {
    content: "";
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    display: inline-block;
    background-color: currentColor;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.view::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 12s4-7 11-7 11 7 11 7-4 7-11 7S1 12 1 12Z'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 12s4-7 11-7 11 7 11 7-4 7-11 7S1 12 1 12Z'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.pay::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2' y='5' width='20' height='14' rx='3' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' d='M2 10h20M6 15h4'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2' y='5' width='20' height='14' rx='3' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' d='M2 10h20M6 15h4'/%3E%3C/svg%3E");
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.reorder::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 12a9 9 0 0 1-9 9 9 9 0 0 1-9-9 9 9 0 0 1 9-9c2.6 0 4.9 1.1 6.5 2.9'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 3v6h-6'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 12a9 9 0 0 1-9 9 9 9 0 0 1-9-9 9 9 0 0 1 9-9c2.6 0 4.9 1.1 6.5 2.9'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 3v6h-6'/%3E%3C/svg%3E");
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.lipko-order-cancel-delete::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3 6h18'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M8 6V4h8v2'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M19 6l-1 14H6L5 6'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M10 11v6M14 11v6'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3 6h18'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M8 6V4h8v2'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M19 6l-1 14H6L5 6'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M10 11v6M14 11v6'/%3E%3C/svg%3E");
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.leave-review::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 20h9'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 20h9'/%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5Z'/%3E%3C/svg%3E");
}

/* Special actions styling */
.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.view {
    color: #1D4ED8 !important;
    background: rgba(29, 78, 216, 0.04);
    border-color: rgba(29, 78, 216, 0.10);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.reorder {
    color: #166534 !important;
    background: rgba(22, 101, 52, 0.04);
    border-color: rgba(22, 101, 52, 0.10);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.pay {
    color: #2A2A2D !important;
    background: rgba(173, 235, 2, 0.16);
    border-color: rgba(173, 235, 2, 0.38);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.view:hover {
    background: rgba(29, 78, 216, 0.08);
    border-color: rgba(29, 78, 216, 0.14);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.reorder:hover {
    background: rgba(22, 101, 52, 0.08);
    border-color: rgba(22, 101, 52, 0.14);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.pay:hover {
    background: rgba(173, 235, 2, 0.24);
    border-color: rgba(173, 235, 2, 0.52);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.lipko-order-cancel-delete {
    color: #B42318 !important;
    background: rgba(180, 35, 24, 0.04);
    border-color: rgba(180, 35, 24, 0.10);
}

.tippy-box[data-theme~='lipko'] .lipko-order-actions-dropdown__item.lipko-order-cancel-delete:hover {
    background: rgba(180, 35, 24, 0.08);
    border-color: rgba(180, 35, 24, 0.10);
}

/* Orders: review status/link near actions */
.lipko-order-actions-dropdown {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.lipko-order-review-link,
.lipko-order-review-pending {
    font-family: "cera-pro-regular";
    font-size: 13px;
    line-height: 16px;
}

.lipko-order-review-link {
    color: #166534;
    text-decoration: none;
    border: 1px solid rgba(22, 101, 52, 0.16);
    background: rgba(22, 101, 52, 0.06);
    padding: 6px 10px;
    border-radius: 999px;
    white-space: nowrap;
}

.lipko-order-review-link:hover {
    background: rgba(22, 101, 52, 0.10);
    text-decoration: underline;
}

.lipko-order-review-pending {
    color: rgba(42, 42, 45, 0.7);
    border: 1px solid rgba(42, 42, 45, 0.12);
    background: rgba(42, 42, 45, 0.04);
    padding: 6px 10px;
    border-radius: 999px;
    white-space: nowrap;
}

/* Review modal */
.lipko-modal[hidden] { display: none !important; }
.lipko-modal { position: fixed; inset: 0; z-index: 99999; }
.lipko-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.5); }
.lipko-modal__dialog {
    position: relative;
    width: min(560px, calc(100vw - 32px));
    margin: 48px auto;
    background: #fff;
    border-radius: 16px;
    padding: 18px 18px 16px;
    box-shadow: 0 18px 60px rgba(0,0,0,0.25);
    max-height: calc(100vh - 96px);
    overflow: auto;
}
.lipko-modal__close {
    position: absolute;
    right: 12px;
    top: 10px;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    border: 1px solid rgba(42,42,45,0.12);
    background: #fff;
    font-size: 20px;
    line-height: 28px;
    cursor: pointer;
}
.lipko-modal__title { margin: 0 40px 12px 0; font-family: "cera-pro-bold"; font-size: 18px; line-height: 22px; color: #2A2A2D; }
.lipko-modal__field { display: block; margin-bottom: 12px; }
.lipko-modal__label { display: block; margin-bottom: 6px; font-family: "cera-pro-regular"; font-size: 13px; color: rgba(42,42,45,0.75); }
.lipko-modal__control {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid rgba(42,42,45,0.14);
    border-radius: 12px;
    padding: 10px 12px;
    font-family: "cera-pro-regular";
    font-size: 14px;
}
.lipko-modal__actions { display: flex; justify-content: flex-end; margin-top: 6px; }
.lipko-modal__note { margin: 10px 0 0; font-family: "cera-pro-regular"; font-size: 14px; color: #2A2A2D; }
.lipko-modal__note.is-success {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 12px;
    border-radius: 14px;
    background: rgba(22, 101, 52, 0.08);
    color: #166534;
    font-family: "cera-pro-bold";
    animation: lipkoFadeInUp 240ms ease-out;
}
.lipko-modal__note.is-success::before {
    content: "";
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: #16a34a;
    box-shadow: 0 6px 18px rgba(22,163,74,0.35);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px 14px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}

@keyframes lipkoFadeInUp {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

.lipko-modal__submit {
    border: 0;
    border-radius: 12px;
    padding: 10px 16px;
    background: #2A2A2D;
    color: #fff;
    font-family: "cera-pro-bold";
    font-size: 14px;
    line-height: 18px;
    cursor: pointer;
    transition: 0.15s;
}
.lipko-modal__submit:hover { background: #111114; }
.lipko-modal__submit:disabled { opacity: 0.6; cursor: not-allowed; }

/* Product preview in modal */
.lipko-review-product-preview {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 10px 12px;
    border: 1px solid rgba(42,42,45,0.10);
    background: rgba(42,42,45,0.03);
    border-radius: 14px;
    margin-bottom: 12px;
}
.lipko-review-product-preview__img {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    object-fit: cover;
    background: #fff;
    border: 1px solid rgba(42,42,45,0.08);
}
.lipko-review-product-preview__title {
    font-family: "cera-pro-bold";
    font-size: 14px;
    line-height: 18px;
    color: #2A2A2D;
}
.lipko-review-product-preview__hint {
    margin-top: 2px;
    font-family: "cera-pro-regular";
    font-size: 12px;
    line-height: 16px;
    color: rgba(42,42,45,0.65);
}

/* Interactive stars in review modal */
.lipko-review-rating {
    display: flex;
    gap: 6px;
    margin: 0 0 12px;
}
.lipko-review-star {
    width: 28px;
    height: 28px;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
    opacity: 0.25;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 26px 26px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F5BA13' d='M12 17.27 18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}
.lipko-review-star.is-active { opacity: 1; }
.lipko-review-star:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(42, 42, 45, 0.18); border-radius: 8px; }

@media (max-width: 768px) {
    .lipko-review-star { width: 32px; height: 32px; background-size: 28px 28px; }
}

/* Dropzone */
.lipko-dropzone {
    position: relative;
    border: 1px dashed rgba(42,42,45,0.22);
    border-radius: 14px;
    padding: 14px;
    background: rgba(42,42,45,0.02);
    cursor: pointer;
    outline: none;
    transition: 0.15s;
}
.lipko-dropzone:hover { background: rgba(42,42,45,0.03); border-color: rgba(42,42,45,0.35); }
.lipko-dropzone.is-dragover { background: rgba(29,78,216,0.06); border-color: rgba(29,78,216,0.45); }
.lipko-dropzone__input { position: absolute; inset: 0; opacity: 0; pointer-events: none; }
.lipko-dropzone__inner { display: flex; gap: 12px; align-items: center; }
.lipko-dropzone__icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: rgba(42,42,45,0.06);
    border: 1px solid rgba(42,42,45,0.10);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%232A2A2D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 5v14'/%3E%3Cpath fill='none' stroke='%232A2A2D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M5 12h14'/%3E%3C/svg%3E");
}
.lipko-dropzone__title { font-family: "cera-pro-bold"; font-size: 14px; line-height: 18px; color: #2A2A2D; }
.lipko-dropzone__sub { margin-top: 2px; font-family: "cera-pro-regular"; font-size: 12px; line-height: 16px; color: rgba(42,42,45,0.65); }
.lipko-dropzone__preview { margin-top: 12px; border-radius: 12px; overflow: hidden; border: 1px solid rgba(42,42,45,0.10); background: #fff; }
/* Force smaller preview (some themes override generic img rules) */
#lipko-review-modal .lipko-dropzone__preview img { width: 100%; height: 90px !important; object-fit: cover; display: block; }
.lipko-dropzone__filename { padding: 10px 12px; font-family: "cera-pro-regular"; font-size: 13px; color: rgba(42,42,45,0.75); border-top: 1px solid rgba(42,42,45,0.08); }
.lipko-dropzone__remove {
    position: absolute;
    right: 10px;
    top: 10px;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(42,42,45,0.14);
    background: rgba(255,255,255,0.92);
    border-radius: 999px;
    padding: 0;
    font-family: "cera-pro-bold";
    font-size: 18px;
    line-height: 30px;
    text-align: center;
    cursor: pointer;
}
.lipko-dropzone__remove:hover { background: #fff; }

@media (max-width: 768px) {
    .lipko-modal__dialog { margin: 12px auto; max-height: calc(100vh - 24px); }
    #lipko-review-modal .lipko-dropzone__preview img { height: 110px !important; }
}

/* Prevent background scroll when modal open */
body.lipko-modal-open { overflow: hidden; }

/* Review moderation notice (single-review) */
.lipko-review-moderation {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(42, 42, 45, 0.12);
    background: rgba(42, 42, 45, 0.04);
    font-family: "cera-pro-bold";
    font-size: 14px;
    line-height: 18px;
    color: rgba(42, 42, 45, 0.75);
    animation: lipkoFadeInUp 240ms ease-out;
}

.lipko-review-moderation__dots::after {
    content: "…";
    display: inline-block;
    width: 1.2em;
    text-align: left;
    animation: lipkoDots 1.2s steps(3, end) infinite;
}

@keyframes lipkoDots {
    0% { content: ""; }
    33% { content: "."; }
    66% { content: ".."; }
    100% { content: "..."; }
}


/* Source: public/css/burger.css */
@media (max-width: 1280px) {


    #burger {
        position: fixed;
        width: 100%;
        height: 100%;
        padding: 8vw 0;
        box-sizing: border-box;

        z-index: 9999;
        overflow: scroll;
        background-color: #fff;

        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-content: center;
        justify-content: center;
        align-items: center;
    }

    #burger .container-wrap {
        width: 90vw;
        height: 100%;
        margin: 0 auto;

        display: flex;
        flex-direction: column;
        align-content: flex-start;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 5vw;
    }
    

    #burger .burger-item {
        font-family: "bounded-regular";
        font-size: 3.75vw;
        line-height: 5.75vw;
        color: #2A2A2D;
        transition: 0.2s;
    }



    .burger-close {
        position: absolute;
        top: 8vw;
        right: 8vw;

        transition: 0.2s;
    }
    
    .burger-close:hover {
        cursor: pointer;
        transform: scale(0.9);
    }
    
    .burger-close img,
    .burger-close svg,
    .burger-close img path,
    .burger-close svg path {
        width: 8.25vw;
        height: 8.25vw;
        fill: #2A2A2D;
    }


}

/* Source: public/css/calc.css */



#calc {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}




#calc .container-wrap {
    display: flex;
    column-gap: 0;
    row-gap: 1vw;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: center;
}







#calc .calc-wrap {
    width: 100%;

    display: flex;
    gap: 1vw;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}


#calc .calc-header-wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 1vw;
    background-color: #fafafa;
    border-radius: 0.5vw;
    display: flex;
    gap: 1vw;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: flex-start;
    justify-content: space-between;
}

#calc .calc-header-wrap * {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.75vw;
}

#calc .calc-body-wrap {
    width: 100%;
    display: grid;
    gap: 1vw;
    grid-template-columns: minmax(0, 45vw) minmax(0, 15vw);
    align-items: start;
    justify-content: space-between;
}

#calc .calc-quick-selectors {
    width: auto;
    max-width: none;
    box-sizing: border-box;
    padding: 1vw;
    background-color: #fafafa;
    border-radius: 0.5vw;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1vw;
    grid-column: 1;
    grid-row: 1;
}

#calc .calc-quick-selector {
    display: flex;
    flex-direction: column;
    gap: 0.4vw;
}

#calc .calc-quick-selector label {
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    color: #2A2A2D;
}

#calc .calc-quick-selector select {
    width: 100%;
    border: 1px solid #E5E5E5;
    border-radius: 2vw;
    padding: 0.5vw 1vw;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    color: #2A2A2D;
    background: #fff;
}

#calc .calc-loading {
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    color: #2A2A2D;
    padding: 0.5vw;
}

#calc .calc-unavailable {
    width: 100%;
    box-sizing: border-box;
    padding: 1.2vw;
    background: #fafafa;
    border-radius: 0.5vw;
    color: #9B9B9B;
    display: flex;
    gap: 0.9vw;
    align-items: center;
}

#calc .calc-unavailable__icon {
    width: 2.2vw;
    height: 2.2vw;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    color: #B0B0B0;
}

#calc .calc-unavailable__icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

#calc .calc-unavailable__text strong {
    font-family: "cera-pro-regular";
    font-size: 0.85vw;
    line-height: 1.05vw;
    color: #7B7B7B;
}

#calc .calc-unavailable__text div {
    margin-top: 0.2vw;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 0.95vw;
    color: #9B9B9B;
}

@media (max-width: 1024px) {
    #calc .calc-body-wrap {
        grid-template-columns: 1fr;
        gap: 3vw;
    }

    #calc .calc-quick-selectors,
    #calc .calc-main-wrap,
    #calc .calc-upload-wrap {
        grid-column: 1;
        width: 100%;
        max-width: 100%;
    }

    #calc .calc-upload-wrap {
        grid-row: auto;
    }

    #calc .calc-quick-selectors {
        grid-template-columns: 1fr;
        gap: 2vw;
        padding: 3vw;
    }

    #calc .calc-quick-selector {
        gap: 1vw;
    }

    #calc .calc-quick-selector label {
        font-size: 3.6vw;
    }

    #calc .calc-quick-selector select {
        font-size: 3.8vw;
        padding: 2.6vw 4vw;
        border-radius: 8vw;
    }

    #calc .calc-loading {
        font-size: 3.6vw;
        padding: 2vw;
    }
}


































#calc .calc-property-active,
#calc .calc-property-wrap:hover {
    background-color: #ADEB02;
    color: #333;
}

#calc .calc-property-wrap:hover {
    cursor: pointer;
    transform: scale(0.95);
}














#calc .calc-input-wrap p {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.75vw;
    color: #2A2A2D;
}

#calc .calc-input-wrap:hover {
    cursor: pointer;
    transform: scale(0.95);
}

#calc textarea {
    width: 100%;
    min-height: 5vw;

    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.75vw;
    color: #2A2A2D;
    text-align: left;

    background-color: #fff;
    border: 0;
    padding: 0.5vw;
    border-radius: 0.5vw;
    transition: 0.2s;
}

#calc input[type="submit"] {
    width: 100%;

    font-family: "bounded-semibold";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #fff;
    text-align: center;

    background-color: #333;
    border: 0;
    padding: 0.5vw;
    border-radius: 2vw;
    transition: 0.2s;
}

#calc input[type="submit"]:hover {
    background-color: #ADEB02;
    color: #2A2A2D;
    cursor: pointer;
    transform: scale(0.95);
}








#calc .calc-footer-wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 1vw;
    background-color: #fafafa;
    border-radius: 0.5vw;
    display: flex;
    gap: 1vw;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: flex-start;
    justify-content: space-between;
}

#calc .calc-footer-wrap p {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.75vw;
    color: #2A2A2D;
}

#calc .calc-footer-wrap p a {
    color: #7ca900;
}
#calc .calc-main-wrap {
    width: auto;
    max-width: none;
    box-sizing: border-box;
    padding: 1vw;
    background-color: #fafafa;
    border-radius: 0.5vw;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1vw;
    position: relative;
    grid-column: 1;
}

#calc .calc-col {
    display: flex;
    flex-direction: column;
    gap: 1.35vw;
    min-width: 0;
}

#calc .calc-properties-wrap {
    display: flex;
    flex-direction: column;
    gap: 0.5vw;
    position: relative;
}

/* Количество: сетка на всю ширину колонки — строки не сжимаются по тексту плашки */
#calc .calc-properties-wrap--quantity {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.5vw;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

#calc .calc-property-title {
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 1vw;
    color: #7ca900;
    display: flex;
    align-items: center;
    gap: 0.3vw;
}

#calc .calc-tooltip-icon {
    position: relative;
    display: inline-flex;
    cursor: help;
}

#calc .calc-tooltip-content {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    bottom: 150%;
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    color: #2A2A2D;
    padding: 1vw;
    border-radius: 0.5vw;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    width: 15vw;
    font-size: 0.6vw;
    line-height: 1.4;
    z-index: 100;
    transition: all 0.2s ease;
    pointer-events: none;
}

#calc .calc-tooltip-content--materials {
    width: 21vw;
}

#calc .calc-material-preview {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55vw;
    margin: 0.75vw 0 0.35vw;
    align-items: start;
}

#calc .calc-material-preview__item {
    display: grid;
    gap: 0.3vw;
    justify-items: center;
    text-align: center;
    font-size: 0.52vw;
    line-height: 1.2;
    color: #2A2A2D;
}

#calc .calc-material-preview__sample {
    width: 3.9vw;
    aspect-ratio: 1;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0.3vw 0.8vw rgba(0,0,0,0.14);
    font-family: "bounded-semibold";
    font-size: 0.8vw;
    color: #2A2A2D;
}

#calc .calc-material-preview__sample--white {
    background: radial-gradient(circle at 35% 28%, #fff 0, #f8f8f8 52%, #d9d9d9 100%);
}

#calc .calc-material-preview__sample--white::after {
    content: '';
    position: absolute;
    right: -0.12vw;
    bottom: -0.08vw;
    width: 1.45vw;
    height: 1.45vw;
    border-radius: 70% 0 0 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.95), rgba(218,218,218,0.85));
    box-shadow: -0.1vw -0.1vw 0.25vw rgba(0,0,0,0.12);
}

#calc .calc-material-preview__sample--clear {
    background:
        linear-gradient(135deg, rgba(255,255,255,0.78), rgba(255,255,255,0.18)),
        conic-gradient(#d7d7d7 25%, #f8f8f8 0 50%, #d7d7d7 0 75%, #f8f8f8 0);
    background-size: 100% 100%, 1vw 1vw;
}

#calc .calc-material-preview__sample--holo {
    background:
        radial-gradient(circle at 30% 25%, rgba(255,255,255,0.85), rgba(255,255,255,0) 36%),
        conic-gradient(from 210deg, #80f7ff, #bca7ff, #ff9bd5, #fff09a, #9fffd0, #80f7ff);
}

#calc .calc-tooltip-icon:hover .calc-tooltip-content {
    visibility: visible;
    opacity: 1;
    bottom: 120%;
}

#calc .calc-tooltip-content::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

#calc .calc-copy-btn {
    position: absolute;
    top: 1vw;
    right: 1vw;
    cursor: pointer;
    transition: opacity 0.2s;
    z-index: 10;
}

#calc .calc-copy-btn:hover {
    opacity: 0.7;
}

#calc .calc-options-container {
    display: flex;
    flex-direction: column;
    gap: 0.5vw;
}

#calc .calc-property-group-wrap {
    display: grid;
    align-items: center;
    gap: 0.5vw;
    width: 100%;
    box-sizing: border-box;
}

/* Количество: плашка шире колонки цены (~0.93fr : 1fr) */
#calc .calc-properties-wrap--quantity .calc-property-group-wrap {
    grid-template-columns: minmax(0, 0.929475fr) minmax(0, 1fr);
    width: 100%;
    min-width: 0;
}

#calc .calc-properties-wrap--quantity .calc-property-wrap,
#calc .calc-properties-wrap--quantity .calc-price-wrap,
#calc .calc-properties-wrap--quantity .calc-price-sum,
#calc .calc-properties-wrap--quantity .calc-price-discount {
    white-space: nowrap;
}

#calc .calc-properties-wrap--quantity .calc-price-wrap {
    grid-template-columns: minmax(0, 1fr) max-content;
    min-width: 0;
}

#calc .calc-properties-wrap--quantity .calc-property-wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-self: stretch;
    justify-content: center;
}

#calc .calc-properties-wrap--quantity .calc-custom-inputs--quantity {
    width: 100%;
    min-width: 0;
}

#calc .calc-properties-wrap--quantity .calc-custom-inputs--quantity .calc-custom-inputs__row {
    width: 100%;
    display: flex;
    gap: 0.5vw;
    align-items: center;
    flex-wrap: nowrap;
}

#calc .calc-properties-wrap--quantity .calc-custom-inputs--quantity .calc-custom-quantity {
    width: 100%;
}

#calc .calc-property-wrap {
    background-color: #fff;
    border-radius: 2vw;
    padding: 0.5vw 1vw;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    color: #2A2A2D;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    box-sizing: border-box;
}

#calc .calc-property-group-wrap .calc-property-wrap {
    min-width: 0;
}

#calc .calc-property-wrap.calc-property-active {
    background-color: #adeb02;
    color: #2A2A2D;
}

#calc .calc-fire-icon {
    font-size: 0.8vw;
    margin-left: 0.5vw;
}

#calc .calc-price-wrap {
    display: grid;
    grid-template-columns: auto 3.2vw;
    align-items: center;
    gap: 0.35vw;
    min-width: 0;
    flex: 0 0 auto;
}

#calc .calc-price-sum {
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    color: #2A2A2D;
    white-space: nowrap;
    text-align: right;
}

#calc .calc-price-discount {
    background-color: #E2F5D6;
    color: #7CA900;
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    padding: 0.2vw 0.4vw;
    border-radius: 1vw;
    width: 3.2vw;
    box-sizing: border-box;
    text-align: center;
    justify-self: end;
}

#calc .calc-upload-wrap {
    width: auto;
    max-width: none;
    display: flex;
    flex-direction: column;
    gap: 1vw;
    grid-column: 2;
    grid-row: 1 / span 2;
}

#calc .calc-input-wrap {
    background-color: #fafafa;
    border-radius: 0.5vw;
    padding: 2vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px dashed #ccc;
    text-align: center;
}

#calc textarea#story {
    background-color: #fafafa;
    border: none;
    border-radius: 0.5vw;
    padding: 1vw;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    resize: none;
    height: 5vw;
}

#calc input#calc-submit {
    background-color: #2A2A2D;
    color: #fff;
    border: none;
    border-radius: 0.5vw;
    padding: 1vw;
    font-family: "cera-pro-bold";
    font-size: 0.8vw;
    cursor: pointer;
    transition: background-color 0.2s;
}

#calc input#calc-submit:hover {
    background-color: #000;
}

#calc input#calc-submit:disabled {
    background-color: #ccc;
    cursor: not-allowed;
}

#calc .calc-custom-inputs input[type="number"] {
    background-color: #fff;
    border: 1px solid #E5E5E5;
    border-radius: 2vw;
    padding: 0.5vw 1vw;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    color: #2A2A2D;
    outline: none;
    box-sizing: border-box;
}

#calc .calc-custom-inputs input[type="number"]:focus {
    border-color: #adeb02;
}

#calc .calc-property-group-wrap--custom-quantity.is-custom-active .calc-custom-inputs input[type="number"] {
    background-color: #adeb02;
    border-color: #adeb02;
    color: #2A2A2D;
}

#calc .calc-custom-inputs--size.is-custom-active input[type="number"] {
    background-color: #adeb02;
    border-color: #adeb02;
    color: #2A2A2D;
}

#calc .calc-property-group-wrap--custom-quantity.is-custom-active .calc-custom-inputs input[type="number"]:focus {
    box-shadow: 0 0 0 0.12vw rgba(173, 235, 2, 0.35);
}

#calc .calc-custom-inputs--size.is-custom-active input[type="number"]:focus {
    box-shadow: 0 0 0 0.12vw rgba(173, 235, 2, 0.35);
}


/* Source: public/css/card.css */




#cards {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}

#cards .container-wrap {
    display: flex;
    column-gap: 0;
    row-gap: 1vw;

    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: stretch;
}






/* Common Styles */



#cards .card-wrap {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    padding: 1.5vw;
    border-radius: 0.5vw;
    overflow: hidden;

    display: flex;
    gap: 1vw;
}


#cards .card-content {
    width: 100%;
    display: flex;
    gap: 1vw;
}


#cards .card-content h2 {
    margin: 0;
    padding: 0;

    font-family: "bounded-bold";
    color: #fff;
    font-size: 1.5vw;
    line-height: 2vw;
    z-index: 1;
}

#cards .card-content h3 {
    margin: 0;
    padding: 0;

    font-family: "bounded-bold";
    color: #fff;
    font-size: 0.85vw;
    line-height: 1.25vw;
    z-index: 1;
}

#cards .card-content p {
    margin: 0;
    padding: 0;

    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 0.95vw;
    color: #fff;
    font-weight: 300;
    z-index: 1;
}

#cards .card-button {
    font-family: "bounded-semibold";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 1vw;
    border-radius: 2vw;
    transition: 0.2s;
    z-index: 1;
}

#cards .card-button:hover {
    cursor: pointer;
    transform: scale(0.9);
}





#cards .card-background {
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    transition: 4s;
}


#cards .card-wrap:hover .card-background {
    transform: scale(1.05) rotate(-1deg);
}




















/* Source: public/css/cart.css */
.woocommerce-custom-page-wrapper {
    width: 100%;
    max-width: 64.6vw;
    margin: 0 auto;
    padding: 1.25vw 0.85vw 2.5vw;
    box-sizing: border-box;
}

/* WooCommerce: убрать clearfix-псевдоэлементы у списка деталей заказа */
.woocommerce ul.order_details::before,
.woocommerce ul.order_details::after {
    content: none !important;
    display: none !important;
}

.woocommerce .woocommerce-customer-details :last-child,
.woocommerce .woocommerce-order-details :last-child,
.woocommerce .woocommerce-order-downloads :last-child {
    margin-bottom: 0 !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.67vw !important;
    line-height: 0.95vw !important;
    color: #2a2a2d !important;
}

/* Thank you / order received page */
.woocommerce-order {
    display: flex !important;
    flex-direction: column !important;
    gap: 1vw !important;
}

.woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received {
    margin: 0 !important;
    padding: 1.05vw 1.25vw !important;
    border: 0 !important;
    border-radius: 0.75vw !important;
    background: #f4fbdc !important;
    color: #2a2a2d !important;
    font-family: "bounded-regular" !important;
    font-size: 1.05vw !important;
    line-height: 1.35vw !important;
}

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details {
    margin: 0 !important;
    padding: 1.15vw 1.35vw !important;
    border: 0 !important;
    border-radius: 0.75vw !important;
    background: #fafafa !important;
    list-style: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 0.7vw !important;
}

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li {
    margin: 0 !important;
    padding: 0.8vw 0.95vw !important;
    border: 0.06vw solid #dfdfdf !important;
    border-radius: 0.55vw !important;
    background: #ffffff !important;
    flex: 1 1 calc(25% - 0.53vw) !important;
    min-width: 12vw !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.24vw !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.62vw !important;
    line-height: 0.82vw !important;
    color: #808082 !important;
}

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li strong,
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li .amount,
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li .woocommerce-Price-amount {
    font-family: "bounded-semibold" !important;
    font-size: 0.75vw !important;
    line-height: 1vw !important;
    color: #2a2a2d !important;
    font-weight: 600 !important;
}

.woocommerce-order.lipko-thankyou-company .lipko-thankyou-company__note {
    margin: 0 !important;
    padding: 0.95vw 1.15vw !important;
    border-radius: 0.75vw !important;
    background: #f9ffea !important;
    border: 0.06vw solid #dce9b3 !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.62vw !important;
    line-height: 0.9vw !important;
    color: #2a2a2d !important;
}

.woocommerce-order > p {
    margin: 0 !important;
    padding: 0.95vw 1.15vw !important;
    border-radius: 0.75vw !important;
    background: #fafafa !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.67vw !important;
    line-height: 0.95vw !important;
    color: #2a2a2d !important;
}

.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details {
    margin: 0 !important;
    padding: 1.25vw 1.35vw !important;
    border-radius: 0.75vw !important;
    background: #fafafa !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details,
.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-customer-details {
    margin: 0 !important;
    padding: 1.25vw 1.35vw !important;
    border-radius: 0.75vw !important;
    background: #fafafa !important;
}

.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title {
    margin: 0 0 0.8vw !important;
    font-family: "bounded-regular" !important;
    font-size: 1.05vw !important;
    line-height: 1.35vw !important;
    color: #2a2a2d !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details .woocommerce-order-details__title,
.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-customer-details .woocommerce-column__title {
    margin: 0 0 0.8vw !important;
    font-family: "bounded-regular" !important;
    font-size: 1.05vw !important;
    line-height: 1.35vw !important;
    color: #2a2a2d !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details,
.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details th,
.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details td {
    border: 0 !important;
    background: transparent !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details thead th {
    padding: 0 0 0.7vw !important;
    border-bottom: 0.06vw solid #dfdfdf !important;
    text-align: left !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.62vw !important;
    line-height: 0.82vw !important;
    color: #808082 !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details .order_item td {
    padding: 0.95vw 0 !important;
    vertical-align: top !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details .wc-item-meta {
    margin: 0.45vw 0 0 !important;
    padding: 0.7vw 0.85vw !important;
    border-radius: 0.55vw !important;
    background: #ffffff !important;
    border: 0.06vw solid #e7e7e7 !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details tfoot tr {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 0.8vw !important;
    padding: 0.58vw 0 !important;
    border-top: 0.06vw solid #dfdfdf !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details tfoot th,
.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details tfoot td {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.66vw !important;
    line-height: 0.9vw !important;
    color: #2a2a2d !important;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-order-details table.woocommerce-table--order-details tfoot tr:last-child td {
    font-family: "bounded-semibold" !important;
    font-size: 0.84vw !important;
    line-height: 1.05vw !important;
}

.woocommerce-order table.woocommerce-table--order-details,
.woocommerce-order table.woocommerce-table--order-details th,
.woocommerce-order table.woocommerce-table--order-details td {
    border: 0 !important;
    background: transparent !important;
}

.woocommerce-order table.woocommerce-table--order-details {
    margin: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.woocommerce-order table.woocommerce-table--order-details thead th {
    padding: 0 0 0.7vw !important;
    border-bottom: 0.06vw solid #dfdfdf !important;
    text-align: left !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.62vw !important;
    line-height: 0.82vw !important;
    color: #808082 !important;
}

.woocommerce-order table.woocommerce-table--order-details .order_item td {
    padding: 0.95vw 0 !important;
    vertical-align: top !important;
}

.woocommerce-order table.woocommerce-table--order-details .product-name > a {
    color: #2a2a2d !important;
    text-decoration: none !important;
    border-bottom: 0.06vw dashed rgba(42, 42, 45, 0.35) !important;
    font-family: "bounded-semibold" !important;
    font-size: 0.7vw !important;
    line-height: 0.95vw !important;
    transition: 0.2s;
}

.woocommerce-order table.woocommerce-table--order-details .product-name > a:hover {
    border-bottom-color: #7ca900 !important;
    color: #7ca900 !important;
}

.woocommerce-order table.woocommerce-table--order-details .product-quantity {
    margin-left: 0.25vw !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.62vw !important;
    line-height: 0.82vw !important;
    color: #808082 !important;
}

.woocommerce-order .wc-item-meta {
    margin: 0.45vw 0 0 !important;
    padding: 0.7vw 0.85vw !important;
    border-radius: 0.55vw !important;
    background: #ffffff !important;
    border: 0.06vw solid #e7e7e7 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.35vw !important;
}

.woocommerce-order .wc-item-meta li {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 0.25vw !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.6vw !important;
    line-height: 0.82vw !important;
    color: #2a2a2d !important;
}

.woocommerce-order .wc-item-meta li .wc-item-meta-label {
    margin: 0 !important;
    font-family: "cera-pro-medium" !important;
    font-weight: 500 !important;
}

.woocommerce-order .wc-item-meta li p {
    margin: 0 !important;
}

.woocommerce-order table.woocommerce-table--order-details tfoot tr {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 0.8vw !important;
    padding: 0.58vw 0 !important;
    border-top: 0.06vw solid #dfdfdf !important;
}

.woocommerce-order table.woocommerce-table--order-details tfoot th,
.woocommerce-order table.woocommerce-table--order-details tfoot td {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.66vw !important;
    line-height: 0.9vw !important;
    color: #2a2a2d !important;
}

.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child td {
    font-family: "bounded-semibold" !important;
    font-size: 0.84vw !important;
    line-height: 1.05vw !important;
}

.woocommerce-order table.woocommerce-table--order-details tfoot tr:has(.order-actions--heading) {
    border-top: 0 !important;
    padding-top: 0 !important;
}

.woocommerce-order table.woocommerce-table--order-details .order-actions--heading {
    font-family: "bounded-regular" !important;
    font-size: 0.7vw !important;
    line-height: 0.92vw !important;
    color: #2a2a2d !important;
}

.woocommerce-order table.woocommerce-table--order-details .order-actions--heading + td {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 0.45vw !important;
}

.woocommerce-order .order-actions-button.lipko-repeat {
    background: #fff !important;
    color: #2a2a2d !important;
    border-color: #d8dde3 !important;
}

.woocommerce-order .order-actions-button.lipko-repeat:hover {
    background: #fafafa !important;
    border-color: #cbd2da !important;
    color: #2a2a2d !important;
}

.woocommerce-order .order-actions-button,
.woocommerce-order .woocommerce-button.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0.62vw 1.05vw !important;
    border-radius: 2vw !important;
    border: 0.06vw solid #2a2a2d !important;
    background: #2a2a2d !important;
    color: #fff !important;
    text-decoration: none !important;
    text-transform: none !important;
    box-shadow: none !important;
    font-family: "bounded-semibold" !important;
    font-size: 0.62vw !important;
    line-height: 0.8vw !important;
    transition: 0.2s;
}

.woocommerce-order .order-actions-button:hover,
.woocommerce-order .woocommerce-button.button:hover {
    background: #adeb02 !important;
    border-color: #adeb02 !important;
    color: #2a2a2d !important;
}

.woocommerce-order .woocommerce-columns--addresses {
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 0.85vw !important;
}

.woocommerce-order .woocommerce-columns--addresses .woocommerce-column {
    float: none !important;
    width: calc(50% - 0.425vw) !important;
    margin: 0 !important;
    padding: 0.95vw 1.05vw !important;
    border: 0.06vw solid #dfdfdf !important;
    border-radius: 0.7vw !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.5vw !important;
}

.woocommerce-order .woocommerce-columns--addresses .woocommerce-column--shipping-address {
    display: none !important;
}

.woocommerce-order .woocommerce-columns--addresses .woocommerce-column--billing-address {
    width: 100% !important;
}

.woocommerce-order .woocommerce-columns--addresses address {
    margin: 0 !important;
    font-style: normal !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.67vw !important;
    line-height: 0.95vw !important;
    color: #2a2a2d !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.3vw !important;
}

@media (max-width: 992px) {
    .woocommerce .woocommerce-customer-details :last-child,
    .woocommerce .woocommerce-order-details :last-child,
    .woocommerce .woocommerce-order-downloads :last-child {
        font-size: 3.2vw !important;
        line-height: 4.4vw !important;
    }

    .woocommerce-order {
        gap: 3.4vw !important;
    }

    .woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received {
        padding: 3.8vw 4.2vw !important;
        border-radius: 3vw !important;
        font-size: 4.6vw !important;
        line-height: 5.8vw !important;
    }

    .woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details {
        padding: 3.8vw 4vw !important;
        border-radius: 3vw !important;
        flex-direction: column !important;
        gap: 2vw !important;
    }

    .woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li {
        min-width: 100% !important;
        padding: 3.2vw 3.4vw !important;
        border-radius: 2.4vw !important;
        gap: 1.1vw !important;
        font-size: 3.1vw !important;
        line-height: 4.1vw !important;
    }

    .woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li strong,
    .woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li .amount,
    .woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li .woocommerce-Price-amount {
        font-size: 3.6vw !important;
        line-height: 4.6vw !important;
    }

    .woocommerce-order > p {
        padding: 3.2vw 3.8vw !important;
        border-radius: 3vw !important;
        font-size: 3.3vw !important;
        line-height: 4.5vw !important;
    }

    .woocommerce-order.lipko-thankyou-company .lipko-thankyou-company__note {
        padding: 3vw 3.6vw !important;
        border-radius: 2.4vw !important;
        border-width: 0.24vw !important;
        font-size: 2.7vw !important;
        line-height: 3.8vw !important;
    }

    .woocommerce-order .woocommerce-order-details,
    .woocommerce-order .woocommerce-customer-details {
        padding: 3.8vw 4vw !important;
        border-radius: 3vw !important;
    }

    .woocommerce-order .woocommerce-order-details__title,
    .woocommerce-order .woocommerce-column__title {
        margin-bottom: 2.6vw !important;
        font-size: 4.4vw !important;
        line-height: 5.5vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details thead th {
        padding-bottom: 2.4vw !important;
        font-size: 3vw !important;
        line-height: 4vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details .order_item td {
        padding: 3.1vw 0 !important;
    }

    .woocommerce-order table.woocommerce-table--order-details .product-name > a {
        font-size: 3.4vw !important;
        line-height: 4.5vw !important;
        border-bottom-width: 0.3vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details .product-quantity {
        margin-left: 1vw !important;
        font-size: 3vw !important;
        line-height: 4vw !important;
    }

    .woocommerce-order .wc-item-meta {
        margin-top: 1.8vw !important;
        padding: 2.8vw 3vw !important;
        border-radius: 2.2vw !important;
        gap: 1.4vw !important;
    }

    .woocommerce-order .wc-item-meta li {
        gap: 1vw !important;
        font-size: 2.9vw !important;
        line-height: 3.9vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details tfoot tr {
        gap: 2vw !important;
        padding: 2.3vw 0 !important;
    }

    .woocommerce-order table.woocommerce-table--order-details tfoot th,
    .woocommerce-order table.woocommerce-table--order-details tfoot td {
        font-size: 3.2vw !important;
        line-height: 4.2vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child th,
    .woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child td {
        font-size: 3.8vw !important;
        line-height: 4.8vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details .order-actions--heading {
        font-size: 3.2vw !important;
        line-height: 4.2vw !important;
    }

    .woocommerce-order table.woocommerce-table--order-details .order-actions--heading + td {
        justify-content: flex-start !important;
        gap: 1.4vw !important;
    }

    .woocommerce-order .order-actions-button.lipko-repeat {
        border-width: 0.24vw !important;
    }

    .woocommerce-order .order-actions-button,
    .woocommerce-order .woocommerce-button.button {
        padding: 2.8vw 4.2vw !important;
        border-radius: 10vw !important;
        font-size: 3.2vw !important;
        line-height: 4vw !important;
    }

    .woocommerce-order .woocommerce-columns--addresses {
        gap: 2.4vw !important;
    }

    .woocommerce-order .woocommerce-columns--addresses .woocommerce-column {
        width: 100% !important;
        padding: 3.2vw 3.6vw !important;
        border-radius: 2.6vw !important;
        gap: 1.8vw !important;
    }

    .woocommerce-order .woocommerce-columns--addresses address {
        font-size: 3.2vw !important;
        line-height: 4.4vw !important;
        gap: 1.1vw !important;
    }
}

.woocommerce-custom-page-wrapper h1 {
    margin: 0 0 1vw;
    font-family: "bounded-regular";
    font-size: 2vw;
    line-height: 2.2vw;
    color: #2a2a2d;
}

.woocommerce-notices-wrapper {
    margin: 0 0 1vw;
}

.woocommerce-notices-wrapper .woocommerce-message {
    margin: 0;
    padding: 0.75vw 1vw 0.75vw 2.5vw;
    border: 1px solid #adeb02;
    border-radius: 0.5vw;
    background: #f4fbdc;
    color: #2a2a2d;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 0.95vw;
}

.woocommerce-custom-page-wrapper .woocommerce-message {
    margin: 0 0 0.85vw;
    padding: 0.75vw 1vw !important;
    border: 0.06vw solid #adeb02 !important;
    border-radius: 0.75vw;
    background: #f4fbdc !important;
    color: #2a2a2d;
    list-style: none !important;
    box-shadow: none;
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.9vw;
}

.woocommerce-custom-page-wrapper .woocommerce-message::before {
    display: none;
}

.woocommerce-custom-page-wrapper .woocommerce-message .button,
.woocommerce-custom-page-wrapper .woocommerce-message a.button,
.woocommerce-custom-page-wrapper .woocommerce-message .button.wc-forward {
    margin-left: 0.6vw;
    padding: 0;
    border: 0;
    background: transparent;
    color: #7ca900;
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.9vw;
    text-decoration: none;
    border-bottom: 0.06vw solid #7ca900;
    transition: 0.2s;
}

.woocommerce-custom-page-wrapper .woocommerce-message .button:hover,
.woocommerce-custom-page-wrapper .woocommerce-message a.button:hover,
.woocommerce-custom-page-wrapper .woocommerce-message .button.wc-forward:hover {
    background: transparent;
    color: #2a2a2d;
    border-bottom-color: #2a2a2d;
}

.woocommerce-custom-page-wrapper .woocommerce-message a.woocommerce-remove-coupon {
    margin-left: 0.35vw;
    color: #7ca900;
    text-decoration: none;
    border-bottom: 0.06vw solid #7ca900;
    transition: 0.2s;
}

.woocommerce-custom-page-wrapper .woocommerce-message a.woocommerce-remove-coupon:hover {
    color: #2a2a2d;
    border-bottom-color: #2a2a2d;
}

.woocommerce-custom-page-wrapper a.woocommerce-remove-coupon,
.woocommerce-checkout-review-order-table a.woocommerce-remove-coupon {
    color: #7ca900 !important;
    text-decoration: none !important;
    border-bottom: 0.06vw solid #7ca900;
    transition: 0.2s;
}

.woocommerce-custom-page-wrapper a.woocommerce-remove-coupon:hover,
.woocommerce-checkout-review-order-table a.woocommerce-remove-coupon:hover {
    color: #2a2a2d !important;
    border-bottom-color: #2a2a2d;
}

.woocommerce-form-coupon-toggle {
    margin: 0 0 1vw;
}

.woocommerce-form-coupon-toggle .woocommerce-info {
    margin: 0;
    padding: 0.75vw 1vw 0.75vw 2.5vw;
    border: 1px solid #f1f1f1;
    border-radius: 0.5vw;
    background: #fafafa;
    color: #2a2a2d;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 0.95vw;
}

.woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon {
    color: #7ca900;
    text-decoration: none;
    border-bottom: 1px solid #7ca900;
    transition: 0.2s;
}

.woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon:hover {
    color: #2a2a2d;
    border-bottom-color: #2a2a2d;
}

form.checkout_coupon.woocommerce-form-coupon {
    margin: 0 0 1vw !important;
    padding: 1vw !important;
    border: 1px solid #f1f1f1 !important;
    border-radius: 0.75vw !important;
    background: #fafafa !important;
    box-sizing: border-box;
}

form.checkout_coupon.woocommerce-form-coupon > p {
    margin: 0 0 0.75vw;
}

form.checkout_coupon.woocommerce-form-coupon > p:first-child {
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 0.95vw;
    color: #2a2a2d;
}

form.checkout_coupon.woocommerce-form-coupon .form-row {
    margin: 0 !important;
}

form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-first {
    width: calc(100% - 10vw) !important;
    padding-right: 0.5vw !important;
}

form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
    width: 10vw !important;
}

form.checkout_coupon.woocommerce-form-coupon .input-text {
    width: 100% !important;
    height: 2.2vw !important;
    border: none !important;
    border-radius: 0.45vw !important;
    padding: 0.4vw 0.65vw !important;
    box-sizing: border-box !important;
    background: #fff !important;
    color: #2a2a2d !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.65vw !important;
    line-height: 0.8vw !important;
}

form.checkout_coupon.woocommerce-form-coupon .button,
form.checkout_coupon.woocommerce-form-coupon button.button {
    width: 100%;
    height: 2.2vw;
    border-radius: 2vw !important;
    background: #2a2a2d !important;
    border: 1px solid #2a2a2d !important;
    color: #fff !important;
    padding: 0.4vw 0.75vw !important;
    font-family: "bounded-semibold" !important;
    font-size: 0.65vw !important;
    line-height: 0.85vw !important;
    transition: 0.2s;
    box-shadow: none !important;
    text-transform: none !important;
}

form.checkout_coupon.woocommerce-form-coupon .button:hover,
form.checkout_coupon.woocommerce-form-coupon button.button:hover {
    background: #adeb02 !important;
    border-color: #adeb02 !important;
    color: #2a2a2d !important;
}

/* Пустая корзина */
.woocommerce-custom-page-wrapper .wc-empty-cart-message {
    margin: 0 0 1vw;
}

.woocommerce-custom-page-wrapper .cart-empty.woocommerce-info {
    margin: 0;
    padding: 1.15vw 1.35vw !important;
    border: none !important;
    border-radius: 0.75vw;
    background: #fafafa !important;
    color: #2a2a2d;
    font-family: "bounded-regular";
    font-size: 1.55vw;
    line-height: 1.85vw;
    list-style: none;
    box-shadow: none;
}

.woocommerce-custom-page-wrapper .cart-empty.woocommerce-info::before {
    display: none !important;
}

.woocommerce-custom-page-wrapper .return-to-shop {
    margin: 0;
    padding: 0;
}

.woocommerce-custom-page-wrapper .return-to-shop .button.wc-backward {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0.75vw 1.35vw !important;
    border-radius: 2vw !important;
    background: #2a2a2d !important;
    border: 1px solid #2a2a2d !important;
    color: #fff !important;
    font-family: "bounded-semibold" !important;
    font-size: 0.7vw !important;
    line-height: 0.9vw !important;
    text-decoration: none !important;
    text-transform: none !important;
    box-shadow: none !important;
    transition: 0.2s;
    cursor: pointer;
}

.woocommerce-custom-page-wrapper .return-to-shop .button.wc-backward:hover {
    background: #adeb02 !important;
    border-color: #adeb02 !important;
    color: #2a2a2d !important;
}

.lipko-cart {
    display: grid;
    grid-template-columns: 1fr 16.7vw;
    gap: 1vw;
    align-items: start;
}

.lipko-cart-items {
    display: flex;
    flex-direction: column;
    gap: 0.75vw;
}

.lipko-cart-item {
    background: #fafafa;
    border-radius: 0.75vw;
    padding: 0.75vw;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 4.8vw minmax(0, 1fr) 9.2vw minmax(6.2vw, auto) 1.25vw;
    gap: 0.75vw;
    align-items: center;
}

.lipko-cart-item__thumb {
    width: 4.8vw;
    height: 4.8vw;
    border: 1px solid #2a2a2d;
    border-radius: 0.5vw;
    overflow: hidden;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lipko-cart-item__thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.lipko-cart-item__layout-link {
    display: block;
    width: 100%;
    height: 100%;
}

.lipko-cart-item__layout-file {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.22vw;
    padding: 0.35vw;
    box-sizing: border-box;
    text-decoration: none;
}

.lipko-cart-item__layout-file-icon {
    font-family: "bounded-semibold";
    font-size: 0.52vw;
    line-height: 0.62vw;
    color: #fff;
    background: #2a2a2d;
    border-radius: 0.25vw;
    padding: 0.18vw 0.28vw;
}

.lipko-cart-item__layout-upload .lipko-cart-item__layout-file-icon {
    color: #fff;
}

.lipko-cart-item__layout-file-icon--ext {
    min-width: 2.25vw;
    text-align: center;
    letter-spacing: 0.02em;
}

.lipko-cart-item__layout-file--fallback {
    padding-bottom: 0.9vw;
}

.lipko-cart-item__layout-file-name {
    font-family: "cera-pro-regular";
    font-size: 0.5vw;
    line-height: 0.6vw;
    color: #2a2a2d;
    text-align: center;
    max-width: calc(100% - 0.4vw);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lipko-cart-item__layout-upload {
    width: 100%;
    height: 100%;
    border: 1px dashed #b8c0c6;
    border-radius: 0.4vw;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.lipko-cart-item__layout-upload input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 3;
}

.lipko-cart-item__layout-upload span {
    font-family: "cera-pro-regular";
    font-size: 0.56vw;
    line-height: 0.72vw;
    color: #2a2a2d;
    text-align: center;
    padding: 0 0.25vw;
}

.lipko-cart-item__layout-sample-info {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 1px dashed #d8dde5;
    border-radius: 0.4vw;
    background: #fafafa;
    display: grid;
    place-items: center;
    padding: 0;
    cursor: pointer;
}

.lipko-cart-item__layout-sample-info:focus {
    outline: 0;
    box-shadow: 0 0 0 0.12vw rgba(0, 109, 255, 0.25);
}

.lipko-cart-item__layout-sample-icon {
    width: clamp(22px, 1.6vw, 30px);
    height: clamp(22px, 1.6vw, 30px);
    flex: 0 0 auto;
    color: #9aa3ad;
    display: grid;
    place-items: center;
}

.lipko-cart-item__layout-sample-icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
    display: block;
}

.lipko-cart-item__layout-upload-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2vw;
}

.lipko-cart-item__layout-upload-icon {
    width: 0.8vw;
    height: 0.8vw;
    color: #7ca900;
}

.lipko-cart-item__layout-upload-icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
}

.lipko-cart-item__layout-upload.is-has-file {
    border-style: solid;
    border-color: #2a2a2d;
}

.lipko-cart-item__layout-upload.is-has-file .lipko-cart-item__layout-replace {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    background: rgba(42, 42, 45, 0.78);
    color: #fff;
    text-align: center;
    font-family: "cera-pro-regular";
    font-size: 0.46vw;
    line-height: 0.56vw;
    padding: 0.16vw 0.25vw;
}

.lipko-cart-item__title a,
.lipko-cart-item__title {
    font-family: "bounded-regular";
    font-size: 0.95vw;
    line-height: 1.2vw;
    color: #2a2a2d;
    text-decoration: none;
}

.lipko-cart-item__meta dl.variation {
    display: flex;
    gap: 0.4vw;
    flex-wrap: wrap;
    margin: 0.4vw 0 0;
}

.lipko-cart-item__meta dl.variation dt {
    display: none;
}

.lipko-cart-item__meta dl.variation dd {
    margin: 0;
}

.lipko-cart-item__meta dl.variation dd p {
    margin: 0;
    background: #fff;
    border-radius: 0.35vw;
    padding: 0.2vw 0.45vw;
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.8vw;
    color: #2a2a2d;
}

.lipko-cart-item__qty .qty {
    width: 100%;
    height: 2vw;
    border: 1px solid #ddd;
    border-radius: 0.45vw;
    text-align: center;
    background: #fff;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.65vw;
    color: #2a2a2d;
    padding: 0 0.25vw;
    appearance: textfield;
    -moz-appearance: textfield;
}

.lipko-cart-item__qty .qty::-webkit-outer-spin-button,
.lipko-cart-item__qty .qty::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.lipko-qty-control {
    display: flex;
    align-items: center;
    justify-content: stretch;
    gap: 0;
    width: fit-content;
    max-width: none;
    margin: 0 auto;
    border: 1px solid #ddd;
    border-radius: 0.55vw;
    overflow: hidden;
    background: #fff;
}

.lipko-qty-control .quantity {
    margin: 0;
    flex: 1 1 auto;
}

.lipko-qty-control__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2vw;
    height: 2vw;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #2a2a2d;
    font-family: "bounded-regular";
    font-size: 0.8vw;
    line-height: 1;
    cursor: pointer;
    flex: 0 0 auto;
    transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}

.lipko-qty-control__btn[data-action="minus"] {
    border-right: 1px solid #ddd;
}

.lipko-qty-control__btn[data-action="plus"] {
    border-left: 1px solid #ddd;
}

.lipko-qty-control__btn:hover {
    background: #f7f1e9;
    color: var(--wc-accent);
}

.lipko-qty-control .quantity .qty {
    display: block;
    width: 100%;
    border: 0;
    border-radius: 0;
    height: 2vw;
    padding: 0;
}

.lipko-cart-item__qty {
    justify-self: start;
}

.lipko-cart-item__subtotal {
    text-align: right;
    font-family: "cera-pro-bold";
    font-size: 0.95vw;
    line-height: 1vw;
    color: #2a2a2d;
}

.lipko-cart-item__remove .remove {
    font-size: 1.15vw;
    line-height: 1.15vw;
    color: #bbb !important;
    text-decoration: none;
    transition: 0.2s;
}

.lipko-cart-item__remove .remove:hover {
    color: #ff4b4b !important;
}

.lipko-cart-actions {
    margin-top: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0;
    flex: 0 0 auto;
    flex-shrink: 0;
    background: #fafafa;
    border-radius: 0.75vw;
    padding: 0.45vw 0.8vw;
}

.lipko-cart-bottom-row {
    margin-top: 0.55vw;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.8vw;
}

.lipko-cart-actions .button,
.lipko-cart-actions button.button,
.woocommerce .lipko-cart-actions .button,
.woocommerce .lipko-cart-actions button.button {
    border-radius: 2vw !important;
    background: transparent !important;
    border: 0 !important;
    color: #666 !important;
    padding: 0.35vw 0.55vw !important;
    white-space: nowrap !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.65vw !important;
    line-height: 0.75vw !important;
    transition: 0.2s;
    box-shadow: none !important;
    text-transform: none !important;
}

.lipko-cart-actions .button::before,
.lipko-cart-actions button.button::before,
.woocommerce .lipko-cart-actions .button::before,
.woocommerce .lipko-cart-actions button.button::before {
    content: "🗑";
    margin-right: 0.38vw;
    font-size: 1em;
    line-height: 1;
}

.lipko-cart-actions .button:hover,
.lipko-cart-actions button.button:hover,
.woocommerce .lipko-cart-actions .button:hover,
.woocommerce .lipko-cart-actions button.button:hover {
    border-color: transparent !important;
    color: #7ca900 !important;
    background: transparent !important;
}

.lipko-cart-actions input[type="hidden"] {
    display: none;
}

/* Hidden AJAX-refresh helper button ("Обновить корзину"): kept in the DOM so
   JS can .click() it to submit, but must never render — only "Очистить корзину"
   stays visible. !important guards against any script un-hiding it. */
.lipko-cart-actions button[name="update_cart"],
.woocommerce .lipko-cart-actions button[name="update_cart"] {
    display: none !important;
}

.lipko-cart-bonus {
    margin-top: 0;
    margin-left: 0;
    width: 100%;
    min-width: 0;
    max-width: none;
    background: #fafafa;
    border-radius: 0.75vw;
    padding: 0.45vw 0.65vw 0.45vw 0.8vw;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5vw;
    flex: 1 1 auto;
}

.lipko-cart-bonus__text {
    font-family: "bounded-semibold";
    font-size: 0.72vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.lipko-cart-bonus__icon {
    width: 1.6vw;
    height: 1.6vw;
    min-width: 1.6vw;
    border-radius: 50%;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Brand leaf badge (green ellipse + white leaf). The SVG is self-contained,
   so it fills the icon box directly — no coloured circle behind it. */
.lipko-cart-bonus__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 0.15vw 0.4vw rgba(42, 42, 45, 0.22));
}

.lipko-cart__summary {
    background: #fafafa;
    border-radius: 0.75vw;
    padding: 1.15vw;
    position: sticky;
    top: 1vw;
    box-sizing: border-box;
}

.lipko-cart__summary h3 {
    margin: 0 0 0.85vw;
    font-size: 1.6vw;
    line-height: 1.8vw;
    font-family: "bounded-regular";
    color: #2a2a2d;
}

.lipko-summary-row,
.lipko-summary-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.4vw 0;
    font-family: "cera-pro-regular";
    font-size: 0.7vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.lipko-summary-total {
    margin-top: 0.4vw;
    border-top: 1px solid #e5e5e5;
    font-family: "cera-pro-bold";
    font-size: 0.9vw;
    line-height: 1vw;
}

.lipko-summary-bonus {
    margin-top: 0.05vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.8vw;
    color: #2a2a2d;
}

.lipko-summary-bonus span:last-child {
    color: #ff5a1f;
    font-family: "cera-pro-bold";
}

.lipko-summary-row--promo {
    color: #7ca900;
}

.lipko-summary-promo {
    margin-top: 0.55vw;
}

.lipko-summary-promo__form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.4vw;
}

.lipko-summary-promo__form input[type="text"] {
    height: 2.15vw;
    border: none;
    border-radius: 0.5vw;
    background: #fff;
    padding: 0.45vw 0.65vw;
    box-sizing: border-box;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.8vw;
    color: #2a2a2d;
}

.lipko-summary-promo__form input[type="text"]::-moz-placeholder {
    color: #b3b8bf;
}

.lipko-summary-promo__form input[type="text"]::placeholder {
    color: #b3b8bf;
}

.lipko-summary-promo__form button {
    height: 2.15vw;
    border: 1px solid #2a2a2d;
    border-radius: 2vw;
    background: #2a2a2d;
    color: #fff;
    padding: 0 0.8vw;
    font-family: "bounded-semibold";
    font-size: 0.58vw;
    line-height: 0.72vw;
    cursor: pointer;
    transition: 0.2s;
}

.lipko-summary-promo__form button:hover {
    background: #adeb02;
    border-color: #adeb02;
    color: #2a2a2d;
}

.lipko-summary-promo__form .lipko-summary-promo__remove {
    grid-column: 1 / -1;
    justify-self: start;
    background: transparent;
    color: #2a2a2d;
    border-color: #d8d8d8;
    padding: 0 0.7vw;
}

.lipko-summary-btn {
    margin-top: 0.75vw;
    display: block;
    text-align: center;
    background: #2a2a2d;
    color: #fff;
    border-radius: 2vw;
    padding: 0.75vw;
    text-decoration: none;
    font-family: "bounded-semibold";
    font-size: 0.7vw;
    line-height: 0.9vw;
    transition: 0.2s;
}

.lipko-summary-btn:hover {
    background: #adeb02;
    color: #2a2a2d;
}

.lipko-summary-deadline {
    margin-top: 0.65vw;
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.84vw;
    color: #2a2a2d;
    text-align: center;
}

/* Checkout */
.lipko-checkout {
    display: grid !important;
    grid-template-columns: 1fr 16.7vw;
    gap: 0.7vw;
    align-items: start;
}

.lipko-checkout > .woocommerce-NoticeGroup,
.lipko-checkout > .woocommerce-NoticeGroup-checkout {
    grid-column: 1 / -1;
}

.lipko-checkout__left {
    display: flex;
    flex-direction: column;
    gap: 0.55vw;
}

.lipko-checkout-card {
    background: #fafafa;
    border-radius: 0.75vw;
    padding: 0.65vw;
    box-sizing: border-box;
}

.lipko-checkout-fields {
    width: 100% !important;
}

.lipko-checkout-card h3,
.lipko-checkout__right h3 {
    margin: 0 0 0.7vw;
    font-family: "bounded-regular";
    font-size: 1vw;
    line-height: 1vw;
    color: #2a2a2d;
}

.lipko-checkout .woocommerce-billing-fields > h3 {
    display: none;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout {
    margin: 0 0 0.85vw;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error {
    margin: 0;
    padding: 0.75vw 1vw 0.75vw 2.5vw !important;
    border: 0.06vw solid #ffc7cc !important;
    border-radius: 0.75vw;
    background: #fff3f5 !important;
    color: #2a2a2d;
    list-style: none !important;
    box-shadow: none;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error li {
    margin: 0;
    padding: 0.2vw 0;
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error li + li {
    border-top: 0.06vw solid rgba(42, 42, 45, 0.08);
    margin-top: 0.2vw;
    padding-top: 0.4vw;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error a {
    color: #2a2a2d;
    text-decoration: none;
    border-bottom: 0.06vw dashed rgba(42, 42, 45, 0.5);
    transition: 0.2s;
}

.woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error a:hover {
    color: #7ca900;
    border-bottom-color: #7ca900;
}

.lipko-checkout__right {
    background: #fafafa;
    border-radius: 0.75vw;
    padding: 0.95vw;
    box-sizing: border-box;
    position: sticky;
    top: 1vw;
}

.lipko-checkout .woocommerce form .form-row {
    margin-bottom: 0.65vw;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    background: #fff !important;
    border: none !important;
    border-radius: 0.45vw !important;
    height: 1.85vw;
    padding: 0.73vw 0.5vw !important;
    box-sizing: border-box;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.8vw;
    color: #2a2a2d;
}

.lipko-checkout .woocommerce form .form-row input.input-text,
.lipko-checkout .woocommerce form .form-row textarea,
.lipko-checkout .woocommerce form .form-row select,
.lipko-checkout .shipping-method-details .address-field-wrapper .input-text {
    border: 1px solid #d8dce2 !important;
}

.lipko-checkout .woocommerce form .form-row input.input-text:focus,
.lipko-checkout .woocommerce form .form-row textarea:focus,
.lipko-checkout .woocommerce form .form-row select:focus,
.lipko-checkout .shipping-method-details .address-field-wrapper .input-text:focus {
    border-color: #9aa3ad !important;
    outline: none;
}

.woocommerce form .form-row label {
    display: inline-block;
    margin: 0 0 0.2vw;
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #2a2a2d;
}

.woocommerce form .form-row label .required {
    color: #2a2a2d;
    text-decoration: none;
    font-weight: 400;
}

.woocommerce form .form-row .checkout-inline-error-message {
    margin: 0.35vw 0 0;
    font-family: "cera-pro-regular";
    font-size: 0.58vw;
    line-height: 0.78vw;
    color: #d94b58;
}

.woocommerce form .form-row textarea {
    min-height: 4.4vw;
}

.woocommerce form .form-row .select2-container--default .select2-selection--single {
    background: #fff !important;
    border: none !important;
    border-radius: 0.45vw !important;
    height: 1.85vw !important;
    padding: 0 1.6vw 0 0.5vw !important;
    box-sizing: border-box;
}

.lipko-checkout .woocommerce form .form-row .select2-container--default .select2-selection--single {
    border: 1px solid #d8dce2 !important;
}

.lipko-checkout .woocommerce form .form-row .select2-container--default.select2-container--focus .select2-selection--single,
.lipko-checkout .woocommerce form .form-row .select2-container--default.select2-container--open .select2-selection--single {
    border-color: #9aa3ad !important;
}

.woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__rendered {
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 1.85vw !important;
    color: #2a2a2d !important;
    padding: 0 !important;
}

.woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 1.85vw !important;
    width: 1.2vw !important;
    right: 0.3vw !important;
}

.woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #2a2a2d transparent transparent transparent !important;
    border-width: 0.25vw 0.2vw 0 0.2vw !important;
}

.customer_types {
    margin-top: 0.55vw;
    display: inline-flex;
    align-items: center;
    gap: 0.55vw;
}

.customer_types-toggle label {
    display: block;
    position: relative;
    width: 2.2vw;
    height: 1.25vw;
    cursor: pointer;
}

.customer_types-toggle input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.customer_types-slider {
    position: absolute;
    inset: 0;
    border-radius: 2vw;
    background: #d8dce2;
    transition: 0.2s;
}

.customer_types-slider::before {
    content: "";
    position: absolute;
    width: 0.9vw;
    height: 0.9vw;
    left: 0.16vw;
    top: 0.17vw;
    border-radius: 50%;
    background: #fff;
    transition: 0.2s;
}

.customer_types-toggle input:checked + .customer_types-slider {
    background: #1e77ff;
}

.customer_types-toggle input:checked + .customer_types-slider::before {
    transform: translateX(0.95vw);
}

.customer_types-label {
    font-family: "bounded-regular";
    font-size: 0.72vw;
    line-height: 0.95vw;
    color: #2a2a2d;
}

.company-fields-group {
    margin-top: 0.9vw;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.company-fields-group > h3 {
    margin: 0 0 0.7vw;
    font-family: "bounded-regular";
    font-size: 1.35vw;
    line-height: 1.55vw;
    color: #2a2a2d;
}

.company-fields-group .user-fields-group {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7vw;
}

.company-fields-group .user-fields-group .form-row {
    width: 100% !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
}

.company-fields-group .user-fields-group .form-row-wide {
    grid-column: 1 / -1;
}

.lipko-checkout .company-fields-group .form-row input.input-text,
.lipko-checkout .company-fields-group .form-row textarea,
.lipko-checkout .company-fields-group .form-row select,
.woocommerce-account .woocommerce-address-fields .company-fields-group .form-row input.input-text,
.woocommerce-account .woocommerce-address-fields .company-fields-group .form-row textarea,
.woocommerce-account .woocommerce-address-fields .company-fields-group .form-row select {
    border: 1px solid #d8dce2 !important;
}

.company-fields-group #billing_inn_field .lipko-inn-status {
    margin-top: 0.35vw;
    display: inline-flex;
    align-items: center;
    gap: 0.25vw;
    padding: 0.26vw 0.58vw;
    border-radius: 999px;
    background: #fafafa;
    font-family: "cera-pro-regular";
    font-size: 0.56vw;
    line-height: 1.25;
    color: #2a2a2d;
}

.company-fields-group #billing_inn_field .lipko-inn-status::before {
    content: "";
    width: 0.34vw;
    height: 0.34vw;
    border-radius: 50%;
    background: #5cbf4a;
    flex: 0 0 auto;
}

.company-fields-group #billing_inn_field .lipko-inn-status.is-error {
    background: #fff1f1;
    color: #c03737;
}

.company-fields-group #billing_inn_field .lipko-inn-status.is-error::before {
    background: #d74747;
}

.woocommerce table.shop_table td {
    padding: 0 !important;
}

#order_review table.shop_table,
#order_review table.shop_table th,
#order_review table.shop_table td,
.lipko-checkout-shipping-table,
.lipko-checkout-shipping-table th,
.lipko-checkout-shipping-table td {
    background: transparent !important;
    border: none !important;
}

.lipko-order-review {
    display: flex;
    flex-direction: column;
    gap: 1vw;
}

.lipko-order-review__head,
.lipko-order-review__item,
.lipko-order-review__row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.7vw;
}

.lipko-order-review__head {
    padding-bottom: 0.75vw;
    border-bottom: 0.06vw solid #dfdfdf;
}

.lipko-order-review__title,
.lipko-order-review__label {
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #808082;
}

.lipko-order-review__items {
    display: flex;
    flex-direction: column;
    gap: 0.85vw;
}

.lipko-order-review__item {
    padding: 0;
    background: transparent;
    border-radius: 0;
    gap: 1vw;
}

.lipko-order-review__item-main {
    flex: 1 1 auto;
    min-width: 0;
}

.lipko-order-review__item-price,
.lipko-order-review__value {
    flex: 0 0 auto;
    text-align: right;
    white-space: nowrap;
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.lipko-order-review__item-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.3vw;
}

.lipko-order-review__item-index,
.lipko-order-review__item-qty {
    font-family: "cera-pro-regular";
    font-size: 0.56vw;
    line-height: 0.76vw;
    color: #808082;
}

.lipko-order-review__item-sum {
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.9vw;
    font-weight: 400;
    color: #2a2a2d;
}

.lipko-order-review__item-sum .woocommerce-Price-amount,
.lipko-order-review__item-sum .woocommerce-Price-amount bdi,
.lipko-order-review__item-sum .woocommerce-Price-currencySymbol {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
    color: inherit !important;
}

.lipko-order-review__product-line {
    display: flex;
    align-items: baseline;
    gap: 0.3vw;
    flex-wrap: wrap;
    font-family: "cera-pro-medium";
    font-size: 0.68vw;
    line-height: 0.92vw;
    color: #2a2a2d;
}

.lipko-order-review .product-quantity {
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #808082;
}

.lipko-order-review__meta {
    margin-top: 0.45vw;
}

.lipko-order-review__meta dl.variation {
    margin: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 0.5vw;
    row-gap: 0.28vw;
}

.lipko-order-review__meta dl.variation dt,
.lipko-order-review__meta dl.variation dd,
.lipko-order-review__meta dl.variation dd p {
    margin: 0;
    font-family: "cera-pro-regular";
    font-size: 0.58vw;
    line-height: 0.8vw;
    color: #808082;
}

.lipko-order-review__totals {
    margin-top: 0.45vw;
    margin-bottom: 0.55vw;
    padding-top: 0.9vw;
    border-top: 0.06vw solid #dfdfdf;
    display: flex;
    flex-direction: column;
    gap: 0.65vw;
}

.lipko-order-review__row--total .lipko-order-review__label,
.lipko-order-review__row--total .lipko-order-review__value {
    font-family: "cera-pro-regular";
    font-size: 0.72vw;
    line-height: 0.95vw;
    font-weight: 400;
    color: #2a2a2d;
}

.lipko-order-review__row--total .lipko-order-review__value strong,
.lipko-order-review__row--total .lipko-order-review__value .woocommerce-Price-amount,
.lipko-order-review__row--total .lipko-order-review__value .woocommerce-Price-amount bdi,
.lipko-order-review__row--total .lipko-order-review__value .woocommerce-Price-currencySymbol {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
    color: inherit !important;
}

.lipko-order-review__row--bonus {
    margin-top: -0.15vw;
}

.lipko-order-review__row--bonus .lipko-order-review__label,
.lipko-order-review__row--bonus .lipko-order-review__value {
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #2a2a2d;
}

.lipko-order-review__row--bonus .lipko-order-review__value {
    color: #ff5a1f;
    font-family: "cera-pro-bold";
}

.lipko-order-review__row--redeem .lipko-order-review__label,
.lipko-order-review__row--redeem .lipko-order-review__value {
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #2a2a2d;
}

.lipko-order-review__row--redeem .lipko-order-review__value {
    font-family: "cera-pro-regular";
}

.lipko-checkout-card--points {
    padding: 1vw;
}

.lipko-checkout-card--points h3 {
    margin-bottom: 0.7vw;
}

.lipko-points-redeem {
    background: #fff;
    border: 0.06vw solid #e7e7e7;
    border-radius: 0.55vw;
    padding: 0.65vw 0.75vw;
    box-sizing: border-box;
    width: 100%;
}

.lipko-points-redeem__login-note {
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.lipko-points-redeem__login-note a {
    color: #7ca900;
    text-decoration: none;
    border-bottom: 0.06vw solid #7ca900;
}

.lipko-points-redeem__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5vw;
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #2a2a2d;
}

.lipko-points-redeem__head strong {
    font-family: "cera-pro-bold";
    color: #2a2a2d;
}

.lipko-points-redeem__range {
    --lipko-range-progress: 0%;
    display: block;
    width: 100%;
    min-width: 100%;
    margin: 0;
    height: 0.32vw;
    border-radius: 2vw;
    background: #dfe3e5;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
}

.lipko-points-redeem__range::-webkit-slider-runnable-track {
    height: 0.32vw;
    border-radius: 2vw;
    background: linear-gradient(90deg, #2a2a2d 0%, #2a2a2d var(--lipko-range-progress), #dfe3e5 var(--lipko-range-progress), #dfe3e5 100%);
}

.lipko-points-redeem__range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 0.9vw;
    height: 0.9vw;
    margin-top: -0.29vw;
    border: 0.12vw solid #2a2a2d;
    border-radius: 50%;
    background: #fff;
    box-sizing: border-box;
}

.lipko-points-redeem__range::-moz-range-track {
    height: 0.32vw;
    border-radius: 2vw;
    background: #dfe3e5;
}

.lipko-points-redeem__range::-moz-range-progress {
    height: 0.32vw;
    border-radius: 2vw;
    background: #2a2a2d;
}

.lipko-points-redeem__range::-moz-range-thumb {
    width: 0.9vw;
    height: 0.9vw;
    border: 0.12vw solid #2a2a2d;
    border-radius: 50%;
    background: #fff;
    box-sizing: border-box;
}

.lipko-points-redeem__foot {
    margin-top: 0.45vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "cera-pro-regular";
    font-size: 0.58vw;
    line-height: 0.76vw;
    color: #808082;
}

#lipko-redeem-points-value {
    font-family: "cera-pro-bold";
    color: #ff5a1f;
}

.lipko-checkout-shipping-methods-wrap {
    margin-top: 0.2vw;
}

.lipko-checkout-shipping-table {
    width: 100%;
    table-layout: fixed;
}

.lipko-checkout-shipping-table .woocommerce-shipping-totals th {
    display: none;
}

.lipko-checkout-shipping-table .woocommerce-shipping-totals td {
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    width: 100%;
    padding: 0;
}

.lipko-checkout-shipping-table .woocommerce-shipping-methods {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.22vw;
}

.lipko-checkout-shipping-table .woocommerce-shipping-methods li {
    display: flex;
    align-items: center;
    gap: 0.3vw;
    background: #fff;
    border-radius: 0.45vw;
    padding: 0.32vw 0.48vw;
    line-height: 1;
    width: 100%;
    box-sizing: border-box;
}

.lipko-checkout-shipping-table .woocommerce-shipping-methods .shipping_method {
    margin: 0 !important;
    width: 0.75vw;
    height: 0.75vw;
    accent-color: #2a2a2d;
    cursor: pointer;
}

.lipko-checkout-shipping-table .woocommerce-shipping-methods label {
    margin: 0;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.9vw;
    color: #2a2a2d;
    cursor: pointer;
    flex: 1 1 auto;
}

.lipko-checkout-shipping-table .woocommerce-shipping-methods li:has(.shipping_method:checked) {
    box-shadow: inset 0 0 0 0.08vw #2a2a2d;
}

.lipko-cdek-map-btn {
    width: 100%;
    margin-top: 0.55vw;
    background: #2a2a2d;
    color: #fff;
    border: none;
    border-radius: 2vw;
    padding: 0.75vw;
    font-family: "bounded-semibold";
    font-size: 0.7vw;
    line-height: 0.9vw;
    cursor: pointer;
    transition: 0.2s;
}

.lipko-cdek-map-btn:hover {
    background: #adeb02;
    color: #2a2a2d;
}

.lipko-checkout-pickup-note {
    margin-top: 0.38vw;
    background: #fff;
    border-radius: 0.45vw;
    padding: 0.42vw 0.5vw;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.lipko-checkout-pickup-note div + div {
    margin-top: 0.2vw;
}

.lipko-checkout-pickup-note__metro {
    display: flex;
    align-items: center;
    gap: 0.28vw;
}

.lipko-checkout-metro-icon {
    width: 0.85vw;
    height: 0.85vw;
    border-radius: 50%;
    background: #e53935;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-family: "bounded-semibold";
}

.lipko-checkout-metro-icon__m {
    font-size: 0.45vw;
    line-height: 1;
    transform: translateY(-0.02vw);
}

.lipko-checkout-metro-icon__dot {
    position: absolute;
    width: 0.2vw;
    height: 0.2vw;
    border-radius: 50%;
    background: #fff;
    bottom: 0.12vw;
    right: 0.12vw;
}

.shipping-method-details {
    margin-top: 0.38vw;
    background: #fafafa;
    border: 0.06vw solid #e6e6e6;
    border-radius: 0.45vw;
    padding: 0.48vw;
    box-sizing: border-box;
}

.shipping-method-details.active {
    border-color: #d7d7d7;
}

.shipping-method-details .shipping-method-description {
    margin-bottom: 0.3vw;
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.86vw;
    color: #808082;
}

.shipping-method-details .address-field-wrapper {
    width: 100%;
    position: relative;
    z-index: 5;
}

.shipping-method-details .address-field-wrapper .suggestions-container {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 0.2vw);
    max-height: 14vw;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
    border: 0.06vw solid #e0e0e0;
    border-radius: 0.45vw;
    box-shadow: 0 0.25vw 0.85vw rgba(42, 42, 45, 0.12);
    z-index: 50;
    box-sizing: border-box;
}

.shipping-method-details .address-field-wrapper .suggestions-container.is-open {
    display: block;
}

.shipping-method-details .address-field-wrapper .suggestions-container .suggestion-item {
    padding: 0.45vw 0.65vw;
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #2a2a2d;
    cursor: pointer;
    border-bottom: 0.06vw solid #f0f0f0;
}

.shipping-method-details .address-field-wrapper .suggestions-container .suggestion-item:last-child {
    border-bottom: none;
}

.shipping-method-details .address-field-wrapper .suggestions-container .suggestion-item:hover,
.shipping-method-details .address-field-wrapper .suggestions-container .suggestion-item.is-active {
    background: #fafafa;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest {
    width: 100%;
    position: relative;
    z-index: 5;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 0.2vw);
    max-height: 14vw;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
    border: 0.06vw solid #e0e0e0;
    border-radius: 0.45vw;
    box-shadow: 0 0.25vw 0.85vw rgba(42, 42, 45, 0.12);
    z-index: 50;
    box-sizing: border-box;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container.is-open {
    display: block;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container .suggestion-item {
    padding: 0.45vw 0.65vw;
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #2a2a2d;
    cursor: pointer;
    border-bottom: 0.06vw solid #f0f0f0;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container .suggestion-item:last-child {
    border-bottom: none;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container .suggestion-item:hover,
.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container .suggestion-item.is-active {
    background: #fafafa;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .ymaps-suggest-status {
    margin-top: 0.35vw;
    font-family: "cera-pro-regular";
    font-size: 0.55vw;
    line-height: 0.75vw;
    color: #808082;
}

.shipping-method-details .address-field-wrapper .input-text {
    width: 100% !important;
    height: 1.85vw !important;
    border: none !important;
    border-radius: 0.45vw !important;
    background: #fff !important;
    padding: 0.3vw 0.5vw !important;
    font-family: "cera-pro-regular" !important;
    font-size: 0.65vw !important;
    line-height: 0.8vw !important;
    color: #2a2a2d !important;
    box-sizing: border-box;
}

.shipping-method-details .address-field-wrapper .input-text::-webkit-input-placeholder {
    color: #8b8b8d;
}

.shipping-method-details .address-field-wrapper .input-text::-moz-placeholder {
    color: #8b8b8d;
}

.shipping-method-details .address-field-wrapper .input-text:-ms-input-placeholder {
    color: #8b8b8d;
}

.shipping-method-details .address-field-wrapper .input-text::-ms-input-placeholder {
    color: #8b8b8d;
}

.shipping-method-details .address-field-wrapper .input-text::placeholder {
    color: #8b8b8d;
}

.shipping-method-details .address-field-wrapper .input-text:focus {
    outline: none;
    box-shadow: inset 0 0 0 0.06vw #2a2a2d;
}

.shipping-method-details .address-field-wrapper .input-text.is-ymaps-loading {
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(42, 42, 45, 0.06) 50%, rgba(255, 255, 255, 0) 100%);
    background-size: 220% 100%;
    animation: lipkoYmapsLoading 1.1s linear infinite;
}

.shipping-method-details .address-field-wrapper .input-text.is-ymaps-error {
    box-shadow: inset 0 0 0 0.06vw #d74747;
}

.shipping-method-details .address-field-wrapper .ymaps-suggest-status {
    margin-top: 0.3vw;
    font-family: "cera-pro-regular";
    font-size: 0.55vw;
    line-height: 0.75vw;
    color: #6b6b6d;
}

.shipping-method-details .address-field-wrapper .ymaps-suggest-status.is-error {
    color: #d74747;
}

@keyframes lipkoYmapsLoading {
    0% {
        background-position: 100% 0;
    }
    100% {
        background-position: -100% 0;
    }
}

.lipko-checkout-card--shipping .lipko-checkout-fields + .lipko-checkout-shipping-methods-wrap {
    margin-top: 0.85vw;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-methods-wrap {
    margin-top: 0;
}

.lipko-checkout-card--payment #payment {
    margin: 0 !important;
    width: 100%;
}

.lipko-checkout-card--payment #payment .wc_payment_methods {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 0.22vw;
}

.lipko-checkout-card--payment #payment .wc_payment_method {
    background: #fff;
    border-radius: 0.45vw;
    padding: 0.32vw 0.48vw !important;
    display: flex;
    align-items: flex-start;
    gap: 0.3vw;
    box-sizing: border-box;
}

.lipko-checkout-card--payment #payment .wc_payment_method > label {
    margin: 0;
    flex: 1 1 auto;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.9vw;
    color: #2a2a2d;
    cursor: pointer;
}

.lipko-checkout-card--payment #payment .wc_payment_method .input-radio {
    margin: 0 !important;
    width: 0.75vw;
    height: 0.75vw;
    accent-color: #2a2a2d;
    cursor: pointer;
    flex: 0 0 auto;
}

.lipko-checkout-card--payment #payment .wc_payment_method .payment_box {
    margin: 0.2vw 0 0 0 !important;
    background: #fafafa !important;
    border-radius: 0.35vw;
    padding: 0.22vw 0.35vw !important;
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.8vw;
    color: #2a2a2d;
}

.lipko-checkout-card--payment #payment .payment_method_cod .payment_box {
    display: none !important;
}

.lipko-checkout-card--payment #payment .wc_payment_method:has(.input-radio:checked) {
    box-shadow: inset 0 0 0 0.08vw #2a2a2d;
}

.lipko-checkout-place-order .place-order {
    margin-top: 1.2vw;
    padding-top: 0.9vw;
    border-top: 0.06vw solid #dfdfdf;
}

.lipko-checkout-deadline {
    margin-top: 0.65vw;
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.84vw;
    color: #2a2a2d;
    text-align: center;
}

.lipko-checkout-place-order .woocommerce-terms-and-conditions-wrapper {
    margin-top: 0.8vw;
}

.lipko-checkout-place-order .woocommerce-privacy-policy-text,
.lipko-checkout-place-order .woocommerce-terms-and-conditions-wrapper {
    display: none !important;
}

.lipko-checkout-place-order .woocommerce-privacy-policy-text p {
    margin: 0 0 1vw;
    font-family: "cera-pro-regular";
    font-size: 0.58vw;
    line-height: 0.9vw;
    color: #2a2a2d;
}

.lipko-checkout-place-order .woocommerce-privacy-policy-text a.woocommerce-privacy-policy-link {
    color: #7ca900;
    text-decoration: none;
    border-bottom: 0.06vw solid #7ca900;
    transition: 0.2s;
}

.lipko-checkout-place-order .woocommerce-privacy-policy-text a.woocommerce-privacy-policy-link:hover {
    color: #2a2a2d;
    border-bottom-color: #2a2a2d;
}


#payment {
    background: transparent !important;
}

#place_order {
    width: 100% !important;
    background: #2a2a2d !important;
    color: #fff !important;
    border-radius: 2vw !important;
    padding: 0.75vw !important;
    font-family: "bounded-semibold" !important;
    font-size: 0.7vw !important;
    line-height: 0.9vw !important;
    transition: 0.2s;
}

#place_order:hover {
    background: #adeb02 !important;
    color: #2a2a2d !important;
}

body.woocommerce-order-pay .woocommerce form#order_review {
    max-width: 54vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 1vw;
}

body.woocommerce-order-pay .woocommerce form#order_review > table.shop_table,
body.woocommerce-order-pay .woocommerce form#order_review > #payment {
    background: #fafafa !important;
    border: 0.06vw solid #edf0f4 !important;
    border-radius: 0.9vw !important;
    padding: 1.1vw !important;
    box-sizing: border-box;
}

body.woocommerce-order-pay .woocommerce form#order_review table.shop_table thead th {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.8vw;
    font-weight: 400;
    color: #808082;
    border-bottom: 0.06vw solid #e5e8ed !important;
    padding: 0 0 0.75vw !important;
}

body.woocommerce-order-pay .woocommerce form#order_review table.shop_table td,
body.woocommerce-order-pay .woocommerce form#order_review table.shop_table th {
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.92vw;
    color: #2a2a2d;
}

body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tbody td {
    padding-top: 0.75vw !important;
    padding-bottom: 0.75vw !important;
    border-bottom: 0.06vw dashed #eceff3 !important;
}

body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot th,
body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot td {
    padding-top: 0.65vw !important;
    padding-bottom: 0.65vw !important;
}

body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot tr:last-child th,
body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot tr:last-child td {
    font-family: "bounded-semibold";
    font-size: 0.76vw;
    line-height: 1vw;
}

body.woocommerce-order-pay .woocommerce #payment .wc_payment_methods {
    margin: 0 0 1vw !important;
    padding: 0 !important;
}

body.woocommerce-order-pay .woocommerce #payment .wc_payment_method {
    margin: 0;
    padding: 0.75vw 0.9vw !important;
    border: 0.06vw solid #dfe4eb;
    border-radius: 0.7vw;
    background: #fff;
}

body.woocommerce-order-pay .woocommerce #payment .wc_payment_method > label {
    font-family: "cera-pro-regular";
    font-size: 0.66vw;
    line-height: 0.92vw;
}

body.woocommerce-order-pay .woocommerce #payment .form-row {
    margin: 0 !important;
}

@media (max-width: 1024px) {
    body.woocommerce-order-pay .woocommerce form#order_review {
        max-width: 100%;
        gap: 1.8vw;
    }

    body.woocommerce-order-pay .woocommerce form#order_review > table.shop_table,
    body.woocommerce-order-pay .woocommerce form#order_review > #payment {
        border-width: 0.16vw !important;
        border-radius: 1.8vw !important;
        padding: 2.4vw !important;
    }

    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table thead th {
        font-size: 1.8vw;
        line-height: 2.4vw;
        padding-bottom: 1.5vw !important;
    }

    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table td,
    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table th,
    body.woocommerce-order-pay .woocommerce #payment .wc_payment_method > label {
        font-size: 1.95vw;
        line-height: 2.6vw;
    }

    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot tr:last-child th,
    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot tr:last-child td {
        font-size: 2.2vw;
        line-height: 2.9vw;
    }

    body.woocommerce-order-pay .woocommerce #payment .wc_payment_method {
        padding: 1.9vw 2.1vw !important;
        border-radius: 1.6vw;
        border-width: 0.16vw;
    }
}

@media (max-width: 767px) {
    body.woocommerce-order-pay .woocommerce form#order_review {
        gap: 3vw;
    }

    body.woocommerce-order-pay .woocommerce form#order_review > table.shop_table,
    body.woocommerce-order-pay .woocommerce form#order_review > #payment {
        border-width: 0.28vw !important;
        border-radius: 3vw !important;
        padding: 3.2vw !important;
    }

    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table thead th {
        font-size: 3vw;
        line-height: 4vw;
        padding-bottom: 2.3vw !important;
    }

    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table td,
    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table th,
    body.woocommerce-order-pay .woocommerce #payment .wc_payment_method > label {
        font-size: 3.2vw;
        line-height: 4.1vw;
    }

    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot tr:last-child th,
    body.woocommerce-order-pay .woocommerce form#order_review table.shop_table tfoot tr:last-child td {
        font-size: 3.6vw;
        line-height: 4.5vw;
    }

    body.woocommerce-order-pay .woocommerce #payment .wc_payment_method {
        padding: 2.7vw 2.9vw !important;
        border-radius: 2.5vw;
        border-width: 0.28vw;
    }
}

.lipko-cdek-map-open {
    overflow: hidden;
}

.lipko-cdek-map-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.45);
    padding: 2vw;
    box-sizing: border-box;
}

.lipko-cdek-map-modal__inner {
    width: min(92vw, 70vw);
    height: min(88vh, 52vw);
    margin: 0 auto;
    background: #fff;
    border-radius: 0.9vw;
    display: grid;
    grid-template-columns: 18vw 1fr;
    overflow: hidden;
}

.lipko-cdek-map-panel {
    background: #fafafa;
    display: flex;
    flex-direction: column;
    padding: 1vw;
    box-sizing: border-box;
}

.lipko-cdek-map-panel__title {
    margin-bottom: 0.85vw;
    font-family: "bounded-regular";
    font-size: 1vw;
    line-height: 1.2vw;
    color: #2a2a2d;
}

.lipko-cdek-map-search {
    display: flex;
    gap: 0.4vw;
    margin-bottom: 0.75vw;
}

.lipko-cdek-map-search .address-field-wrapper {
    flex: 1 1 auto;
    min-width: 0;
    position: relative;
}

.lipko-cdek-map-search__input {
    width: 100%;
    min-width: 0;
    border: 1px solid #d7d7d7;
    border-radius: 0.45vw;
    height: 2vw;
    padding: 0.35vw 0.55vw;
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.8vw;
    color: #2a2a2d;
    background: #fff;
}

.lipko-cdek-map-search .suggestions-container {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 0.2vw);
    max-height: 14vw;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
    border: 0.06vw solid #e0e0e0;
    border-radius: 0.45vw;
    box-shadow: 0 0.25vw 0.85vw rgba(42, 42, 45, 0.12);
    z-index: 50;
    box-sizing: border-box;
}

.lipko-cdek-map-search .suggestions-container.is-open {
    display: block;
}

.lipko-cdek-map-search .suggestions-container .suggestion-item {
    padding: 0.45vw 0.65vw;
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #2a2a2d;
    cursor: pointer;
    border-bottom: 0.06vw solid #f0f0f0;
}

.lipko-cdek-map-search .suggestions-container .suggestion-item:last-child {
    border-bottom: none;
}

.lipko-cdek-map-search .suggestions-container .suggestion-item:hover,
.lipko-cdek-map-search .suggestions-container .suggestion-item.is-active {
    background: #fafafa;
}

.lipko-cdek-map-search__button {
    border: none;
    border-radius: 2vw;
    background: #2a2a2d;
    color: #fff;
    padding: 0.35vw 0.8vw;
    font-family: "bounded-semibold";
    font-size: 0.6vw;
    line-height: 0.8vw;
    cursor: pointer;
}

.lipko-cdek-map-panel__content {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
}

.lipko-cdek-map-panel__empty,
.lipko-cdek-map-panel__row {
    font-family: "cera-pro-regular";
    font-size: 0.68vw;
    line-height: 0.95vw;
    color: #2a2a2d;
}

.lipko-cdek-map-panel__row + .lipko-cdek-map-panel__row {
    margin-top: 0.4vw;
}

.lipko-cdek-map-panel__select {
    margin-top: 0.9vw;
    border: none;
    border-radius: 2vw;
    background: #2a2a2d;
    color: #fff;
    padding: 0.65vw 0.75vw;
    font-family: "bounded-semibold";
    font-size: 0.65vw;
    line-height: 0.85vw;
    cursor: pointer;
    transition: 0.2s;
}

.lipko-cdek-map-panel__select:hover:not(:disabled) {
    background: #adeb02;
    color: #2a2a2d;
}

.lipko-cdek-map-panel__select:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.lipko-cdek-map-canvas-wrap {
    position: relative;
    min-width: 0;
}

.lipko-cdek-map-canvas {
    width: 100%;
    height: 100%;
}

.lipko-cdek-map-close {
    position: absolute;
    top: 0.6vw;
    right: 0.6vw;
    width: 2vw;
    height: 2vw;
    border: none;
    border-radius: 50%;
    background: rgba(42, 42, 45, 0.92);
    color: #fff;
    font-size: 1.2vw;
    line-height: 1;
    cursor: pointer;
    z-index: 3;
}

@media (max-width: 768px) {
    .lipko-checkout__right {
        padding: 4.2vw;
        border-radius: 3vw;
    }

    .lipko-checkout__right h3 {
        margin-bottom: 3.5vw;
    }

    .lipko-order-review {
        gap: 3.6vw;
    }

    .lipko-order-review__head {
        display: none;
    }

    .lipko-order-review__items {
        gap: 2.8vw;
    }

    .lipko-order-review__item {
        padding: 0;
        border-radius: 0;
        gap: 3.1vw;
        flex-direction: column;
    }

    .lipko-order-review__product-line {
        font-size: 3.6vw;
        line-height: 4.4vw;
        gap: 1.2vw;
    }

    .lipko-order-review .product-quantity {
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .lipko-order-review__meta {
        margin-top: 2.1vw;
    }

    .lipko-order-review__meta dl.variation {
        column-gap: 2vw;
        row-gap: 1.2vw;
    }

    .lipko-order-review__meta dl.variation dt,
    .lipko-order-review__meta dl.variation dd,
    .lipko-order-review__meta dl.variation dd p {
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .lipko-order-review__item-price {
        width: 100%;
        text-align: left;
        align-items: flex-start;
        gap: 1.1vw;
        font-size: 3.5vw;
        line-height: 4.2vw;
    }

    .lipko-order-review__item-index,
    .lipko-order-review__item-qty {
        font-size: 2.9vw;
        line-height: 3.8vw;
    }

    .lipko-order-review__item-sum {
        font-size: 3.5vw;
        line-height: 4.2vw;
    }

    .lipko-order-review__totals {
        margin-top: 1.4vw;
        margin-bottom: 2.2vw;
        padding-top: 3.2vw;
        gap: 2.4vw;
    }

    .lipko-checkout-place-order .place-order {
        margin-top: 4.2vw;
        padding-top: 3.2vw;
        border-top-width: 0.28vw;
    }

    .lipko-checkout-deadline {
        margin-top: 2.4vw;
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text p {
        margin-bottom: 3.2vw;
        line-height: 4vw;
    }

    .lipko-checkout-place-order .woocommerce-terms-and-conditions-wrapper {
        margin-top: 2.6vw;
    }

    .lipko-order-review__label {
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .lipko-order-review__value {
        font-size: 3.4vw;
        line-height: 4.2vw;
    }

    .lipko-order-review__row--total .lipko-order-review__label,
    .lipko-order-review__row--total .lipko-order-review__value {
        font-size: 3.8vw;
        line-height: 4.6vw;
    }

    .lipko-order-review__row--bonus .lipko-order-review__label,
    .lipko-order-review__row--bonus .lipko-order-review__value {
        font-size: 2.9vw;
        line-height: 3.8vw;
    }

    .lipko-order-review__row--redeem .lipko-order-review__label,
    .lipko-order-review__row--redeem .lipko-order-review__value {
        font-size: 2.9vw;
        line-height: 3.8vw;
    }

    .lipko-checkout-card--points {
        padding: 2.8vw 3vw;
    }

    .lipko-checkout-card--points h3 {
        margin-bottom: 2.2vw;
    }

    .lipko-points-redeem {
        border-width: 0.28vw;
        border-radius: 2vw;
        padding: 2.5vw 2.8vw;
    }

    .lipko-points-redeem__login-note,
    .lipko-points-redeem__head {
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .lipko-points-redeem__login-note a {
        border-bottom-width: 0.28vw;
    }

    .lipko-points-redeem__head {
        margin-bottom: 2vw;
    }

    .lipko-points-redeem__range {
        height: 1.2vw;
        border-radius: 10vw;
    }

    .lipko-points-redeem__range::-webkit-slider-runnable-track {
        height: 1.2vw;
        border-radius: 10vw;
    }

    .lipko-points-redeem__range::-webkit-slider-thumb {
        width: 4.6vw;
        height: 4.6vw;
        margin-top: -1.7vw;
        border-width: 0.45vw;
    }

    .lipko-points-redeem__range::-moz-range-track,
    .lipko-points-redeem__range::-moz-range-progress {
        height: 1.2vw;
        border-radius: 10vw;
    }

    .lipko-points-redeem__range::-moz-range-thumb {
        width: 4.6vw;
        height: 4.6vw;
        border-width: 0.45vw;
    }

    .lipko-points-redeem__foot {
        margin-top: 1.8vw;
        font-size: 2.8vw;
        line-height: 3.6vw;
    }

    .lipko-cdek-map-modal {
        padding: 3vw;
    }

    .lipko-cdek-map-modal__inner {
        width: 100%;
        height: calc(100vh - 6vw);
        border-radius: 3.5vw;
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(0, 1fr);
    }

    .lipko-cdek-map-canvas-wrap {
        order: 2;
        min-height: 0;
        height: 52vh;
    }

    .lipko-cdek-map-panel {
        order: 1;
        padding: 4vw;
        min-height: 0;
        overflow: hidden;
        max-height: 42vh;
    }

    .lipko-cdek-map-panel__title {
        margin-bottom: 2.5vw;
        font-size: 4.8vw;
        line-height: 5.4vw;
    }

    .lipko-cdek-map-search {
        gap: 2vw;
        margin-bottom: 2.5vw;
    }

    .lipko-cdek-map-search .address-field-wrapper {
        min-width: 0;
    }

    .lipko-cdek-map-search__input {
        border-radius: 2vw;
        height: 11vw;
        padding: 0 3.5vw;
        font-size: 3.6vw;
        line-height: 4.4vw;
    }

    .lipko-cdek-map-search .suggestions-container {
        top: calc(100% + 0.7vw);
        max-height: 44vw;
        border-radius: 2vw;
        border-width: 0.28vw;
    }

    .lipko-cdek-map-search .suggestions-container .suggestion-item {
        padding: 2vw 3.2vw;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .lipko-cdek-map-search__button {
        border-radius: 12vw;
        padding: 0 4vw;
        font-size: 3.3vw;
        line-height: 4vw;
    }

    .lipko-cdek-map-panel__empty,
    .lipko-cdek-map-panel__row {
        font-size: 3.6vw;
        line-height: 4.4vw;
    }

    .lipko-cdek-map-btn {
        margin-top: 2vw;
        border-radius: 12vw;
        padding: 3.4vw 4vw;
        font-size: 3.4vw;
        line-height: 4.2vw;
    }

    .lipko-checkout-pickup-note {
        margin-top: 2vw;
        border-radius: 2vw;
        padding: 2.8vw 3vw;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .lipko-checkout-pickup-note div + div {
        margin-top: 1vw;
    }

    .lipko-checkout-pickup-note__metro {
        gap: 1vw;
    }

    .lipko-checkout-metro-icon {
        width: 3.5vw;
        height: 3.5vw;
    }

    .lipko-checkout-metro-icon__m {
        font-size: 1.8vw;
        transform: translateY(-0.1vw);
    }

    .lipko-checkout-metro-icon__dot {
        width: 0.8vw;
        height: 0.8vw;
        bottom: 0.45vw;
        right: 0.45vw;
    }

    .shipping-method-details {
        margin-top: 2vw;
        border-radius: 2vw;
        border-width: 0.28vw;
        padding: 2.8vw 3vw;
    }

    .shipping-method-details .shipping-method-description {
        margin-bottom: 1.6vw;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .shipping-method-details .address-field-wrapper .input-text {
        height: 11vw !important;
        border-radius: 2vw !important;
        padding: 0 3.5vw !important;
        font-size: 3.6vw !important;
        line-height: 4.4vw !important;
    }

    .shipping-method-details .address-field-wrapper .input-text:focus {
        box-shadow: inset 0 0 0 0.28vw #2a2a2d;
    }

    .shipping-method-details .address-field-wrapper .suggestions-container {
        top: calc(100% + 0.8vw);
        max-height: 45vw;
        border-radius: 2vw;
        border-width: 0.28vw;
    }

    .shipping-method-details .address-field-wrapper .suggestions-container .suggestion-item {
        padding: 2.4vw 3.2vw;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container {
        top: calc(100% + 0.8vw);
        max-height: 45vw;
        border-radius: 2vw;
        border-width: 0.28vw;
    }

    .woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .suggestions-container .suggestion-item {
        padding: 2.4vw 3.2vw;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .woocommerce-account .woocommerce-address-fields__field-wrapper .lipko-address-field-with-suggest .ymaps-suggest-status {
        margin-top: 1.2vw;
        font-size: 2.7vw;
        line-height: 3.5vw;
    }

    .shipping-method-details .address-field-wrapper .input-text.is-ymaps-error {
        box-shadow: inset 0 0 0 0.28vw #d74747;
    }

    .shipping-method-details .address-field-wrapper .ymaps-suggest-status {
        margin-top: 1.2vw;
        font-size: 2.7vw;
        line-height: 3.5vw;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single {
        border-radius: 2vw !important;
        height: 11vw !important;
        padding: 0 10vw 0 3.5vw !important;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__rendered {
        font-size: 3.6vw;
        line-height: 11vw !important;
    }

    .woocommerce form .form-row label {
        margin: 0 0 1.4vw;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .woocommerce form .form-row .checkout-inline-error-message {
        margin-top: 1.6vw;
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__arrow {
        height: 11vw !important;
        width: 6vw !important;
        right: 2.5vw !important;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__arrow b {
        border-width: 1.1vw 0.8vw 0 0.8vw !important;
    }

    .lipko-cdek-map-panel__row + .lipko-cdek-map-panel__row {
        margin-top: 1.5vw;
    }

    .lipko-cdek-map-panel__select {
        margin-top: 3.2vw;
        border-radius: 12vw;
        padding: 3.8vw 4vw;
        font-size: 3.7vw;
        line-height: 4.2vw;
    }

    .lipko-cdek-map-close {
        top: 2.2vw;
        right: 2.2vw;
        width: 9vw;
        height: 9vw;
        font-size: 6vw;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .woocommerce-custom-page-wrapper {
        max-width: 100%;
        padding: 2.5vw 2.2vw 4vw;
    }

    .woocommerce-custom-page-wrapper h1 {
        margin-bottom: 1.8vw;
        font-size: 3.6vw;
        line-height: 4vw;
    }

    .lipko-cart,
    .lipko-checkout {
        grid-template-columns: 1fr;
        gap: 2.2vw;
    }

    .lipko-cart-item {
        grid-template-columns: 9vw 1fr 7vw;
        grid-template-areas:
            "thumb title remove"
            "thumb qty subtotal";
        gap: 1.6vw;
        padding: 1.8vw;
        border-radius: 1.6vw;
    }

    .lipko-cart-item__thumb {
        grid-area: thumb;
        width: 9vw;
        height: 9vw;
        border-radius: 1vw;
    }

    .lipko-cart-item__layout-file {
        gap: 0.35vw;
        padding: 0.5vw;
    }

    .lipko-cart-item__layout-file-icon {
        font-size: 0.75vw;
        line-height: 0.9vw;
        border-radius: 0.35vw;
        padding: 0.25vw 0.45vw;
    }

    .lipko-cart-item__layout-file-icon--ext {
        min-width: 3vw;
    }

    .lipko-cart-item__layout-file--fallback {
        padding-bottom: 1.1vw;
    }

    .lipko-cart-item__layout-file-name,
    .lipko-cart-item__layout-upload span {
        font-size: 0.72vw;
        line-height: 0.9vw;
    }

    .lipko-cart-item__layout-upload-icon {
        width: 1.2vw;
        height: 1.2vw;
    }

    .lipko-cart-item__layout-upload.is-has-file .lipko-cart-item__layout-replace {
        font-size: 0.62vw;
        line-height: 0.75vw;
        padding: 0.22vw 0.35vw;
    }

    .lipko-cart-item__meta {
        grid-area: title;
    }

    .lipko-cart-item__title,
    .lipko-cart-item__title a {
        font-size: 1.8vw;
        line-height: 2.3vw;
    }

    .lipko-cart-item__meta dl.variation dd p {
        border-radius: 0.8vw;
        padding: 0.45vw 0.8vw;
        font-size: 1.3vw;
        line-height: 1.7vw;
    }

    .lipko-cart-item__qty {
        grid-area: qty;
    }

    .lipko-cart-item__qty .qty {
        height: 4vw;
        border-radius: 1vw;
        font-size: 1.5vw;
    }

    .lipko-qty-control {
        width: fit-content;
        max-width: none;
        border-radius: 1vw;
    }

    .lipko-qty-control__btn {
        width: 4.2vw;
        height: 4vw;
        font-size: 1.8vw;
    }

    .lipko-qty-control .quantity {
        min-width: 12vw;
    }

    .lipko-qty-control .quantity .qty {
        height: 4vw;
    }

    .lipko-cart-item__subtotal {
        grid-area: subtotal;
        text-align: right;
        font-size: 1.9vw;
        line-height: 2.2vw;
    }

    .lipko-cart-item__remove {
        grid-area: remove;
        text-align: right;
    }

    .lipko-cart-item__remove .remove {
        font-size: 2.5vw;
        line-height: 2.5vw;
    }

    .lipko-cart-actions {
        margin-top: 0;
        gap: 1vw;
        border-radius: 1.6vw;
        padding: 1.1vw 1.4vw;
    }

    .lipko-cart-bottom-row {
        margin-top: 1vw;
        display: flex;
        flex-direction: row;
        gap: 1.2vw;
    }

    .lipko-cart-actions .button,
    .lipko-cart-actions button.button,
    .woocommerce .lipko-cart-actions .button,
    .woocommerce .lipko-cart-actions button.button {
        padding: 0.8vw 1.1vw !important;
        font-size: 1.45vw !important;
        line-height: 1.8vw !important;
        border-radius: 4vw !important;
    }

    .lipko-cart-bonus {
        margin-top: 0;
        width: -moz-fit-content;
        width: 100%;
        min-width: 0;
        max-width: none;
        border-radius: 1.6vw;
        padding: 1.1vw 1.4vw;
        gap: 1vw;
        box-sizing: border-box;
    }

    .lipko-cart-bonus__text {
        font-size: 1.4vw;
        line-height: 1.8vw;
    }

    .lipko-cart-bonus__icon {
        width: 3.2vw;
        height: 3.2vw;
        min-width: 3.2vw;
    }

    .lipko-cart__summary,
    .lipko-checkout__right,
    .lipko-checkout-card {
        border-radius: 1.6vw;
        padding: 1.6vw;
    }

    .lipko-cart__summary h3,
    .lipko-checkout-card h3,
    .lipko-checkout__right h3 {
        margin-bottom: 1.1vw;
        font-size: 3vw;
        line-height: 3.4vw;
    }

    .lipko-summary-row,
    .lipko-summary-total {
        padding: 0.9vw 0;
        font-size: 1.55vw;
        line-height: 2vw;
    }

    .lipko-summary-total {
        font-size: 1.9vw;
        line-height: 2.3vw;
    }

    .lipko-summary-bonus {
        margin-top: 0.2vw;
        font-size: 1.35vw;
        line-height: 1.8vw;
    }

    .lipko-summary-promo {
        margin-top: 1.1vw;
    }

    .lipko-summary-promo__form {
        gap: 0.8vw;
    }

    .lipko-summary-promo__form input[type="text"],
    .lipko-summary-promo__form button {
        height: 4.2vw;
        border-radius: 1.1vw;
        font-size: 1.3vw;
        line-height: 1.7vw;
    }

    .lipko-summary-promo__form input[type="text"] {
        padding: 0.8vw 1vw;
    }

    .lipko-summary-promo__form button {
        padding: 0 1.3vw;
    }

    .lipko-summary-btn,
    #place_order {
        border-radius: 5vw !important;
        padding: 1.6vw !important;
        font-size: 1.6vw !important;
        line-height: 2vw !important;
    }

    .lipko-summary-deadline {
        margin-top: 1.2vw;
        font-size: 1.35vw;
        line-height: 1.8vw;
    }

    .woocommerce-notices-wrapper,
    .woocommerce-form-coupon-toggle {
        margin-bottom: 1.8vw;
    }

    .woocommerce-custom-page-wrapper .woocommerce-message,
    .woocommerce-form-coupon-toggle .woocommerce-info,
    .woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error {
        padding: 1.4vw 1.8vw !important;
        border-radius: 1.2vw;
        font-size: 1.45vw;
        line-height: 1.9vw;
    }

    .woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error li {
        padding: 0.6vw 0;
        font-size: 1.4vw;
        line-height: 1.9vw;
    }

    .woocommerce-custom-page-wrapper .woocommerce-message .button,
    .woocommerce-custom-page-wrapper .woocommerce-message a.button,
    .woocommerce-custom-page-wrapper .woocommerce-message .button.wc-forward,
    .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon,
    .woocommerce-custom-page-wrapper a.woocommerce-remove-coupon,
    .woocommerce-checkout-review-order-table a.woocommerce-remove-coupon {
        font-size: 1.4vw;
        line-height: 1.9vw;
        border-bottom-width: 0.12vw;
    }

    form.checkout_coupon.woocommerce-form-coupon {
        margin-bottom: 1.8vw !important;
        padding: 1.8vw !important;
        border-radius: 1.4vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon > p {
        margin-bottom: 1.4vw;
    }

    form.checkout_coupon.woocommerce-form-coupon > p:first-child {
        font-size: 1.45vw;
        line-height: 1.9vw;
    }

    form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-first {
        width: calc(100% - 16vw) !important;
        padding-right: 1vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
        width: 16vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon .input-text {
        height: 4.8vw !important;
        border-radius: 1vw !important;
        padding: 0 1.4vw !important;
        font-size: 1.45vw !important;
        line-height: 1.9vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon .button,
    form.checkout_coupon.woocommerce-form-coupon button.button {
        height: 4.8vw;
        border-radius: 4vw !important;
        padding: 0 1.8vw !important;
        font-size: 1.35vw !important;
        line-height: 1.7vw !important;
    }

    .woocommerce form .form-row.form-row-first,
    .woocommerce form .form-row.form-row-last {
        width: 100%;
        float: none;
        padding: 0 !important;
    }

    .woocommerce form .form-row {
        margin-bottom: 0.9vw;
    }

    .woocommerce form .form-row input.input-text,
    .woocommerce form .form-row textarea,
    .woocommerce form .form-row select {
        height: 4vw;
        border-radius: 1vw !important;
        padding: 0 1.1vw !important;
        font-size: 1.45vw;
        line-height: 1.9vw;
    }

    .woocommerce form .form-row textarea {
        min-height: 11vw;
        padding-top: 0.95vw !important;
        padding-bottom: 0.95vw !important;
    }

    .woocommerce form .form-row label {
        margin-bottom: 0.8vw;
        font-size: 1.35vw;
        line-height: 1.8vw;
    }

    .woocommerce form .form-row .checkout-inline-error-message {
        margin-top: 0.7vw;
        font-size: 1.2vw;
        line-height: 1.6vw;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single {
        height: 4.8vw !important;
        border-radius: 1vw !important;
        padding: 0 4.8vw 0 1.4vw !important;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__rendered {
        font-size: 1.45vw;
        line-height: 4.8vw !important;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__arrow {
        height: 4.8vw !important;
        width: 2.6vw !important;
        right: 1.1vw !important;
    }

    .woocommerce form .form-row .select2-container--default .select2-selection--single .select2-selection__arrow b {
        border-width: 0.55vw 0.45vw 0 0.45vw !important;
    }

    .customer_types {
        margin-top: 1.2vw;
        gap: 1.2vw;
    }

    .customer_types-toggle label {
        width: 4.8vw;
        height: 2.8vw;
    }

    .customer_types-slider::before {
        width: 2vw;
        height: 2vw;
        left: 0.4vw;
        top: 0.4vw;
    }

    .customer_types-toggle input:checked + .customer_types-slider::before {
        transform: translateX(2vw);
    }

    .customer_types-label {
        font-size: 1.55vw;
        line-height: 2vw;
    }

    .company-fields-group {
        margin-top: 1.8vw;
        padding: 1.8vw;
        border-radius: 1.4vw;
    }

    .company-fields-group > h3 {
        margin-bottom: 1.2vw;
        font-size: 2.3vw;
        line-height: 2.7vw;
    }

    .company-fields-group .user-fields-group {
        gap: 1.2vw;
    }

    .company-fields-group #billing_inn_field .lipko-inn-status {
        margin-top: 0.85vw;
        gap: 0.55vw;
        padding: 0.55vw 1.1vw;
        font-size: 1.5vw;
    }

    .company-fields-group #billing_inn_field .lipko-inn-status::before {
        width: 0.8vw;
        height: 0.8vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods {
        gap: 0.55vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods li {
        gap: 0.65vw;
        border-radius: 1vw;
        padding: 0.75vw 1vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods .shipping_method {
        width: 1.8vw;
        height: 1.8vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods label {
        font-size: 1.45vw;
        line-height: 1.9vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_methods {
        gap: 0.55vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method {
        gap: 0.65vw;
        border-radius: 1vw;
        padding: 0.75vw 1vw !important;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method > label {
        font-size: 1.45vw;
        line-height: 1.9vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method .input-radio {
        width: 1.8vw;
        height: 1.8vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method .payment_box {
        margin-top: 0.55vw !important;
        border-radius: 0.9vw;
        padding: 0.7vw 0.9vw !important;
        font-size: 1.35vw;
        line-height: 1.8vw;
    }

    .lipko-checkout-place-order .woocommerce-terms-and-conditions-wrapper {
        margin-top: 1.4vw;
        padding: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text {
        max-width: 100%;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text p {
        margin: 0 0 1.2vw;
        font-size: 1.3vw;
        line-height: 1.9vw;
        color: #2a2a2d;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text a.woocommerce-privacy-policy-link {
        font-size: 1.3vw;
        line-height: 1.9vw;
        border-bottom-width: 0.12vw;
    }

    .woocommerce-custom-page-wrapper .wc-empty-cart-message {
        margin-bottom: 2vw;
    }

    .woocommerce-custom-page-wrapper .cart-empty.woocommerce-info {
        padding: 2.2vw 2.6vw !important;
        border-radius: 1.6vw;
        font-size: 3vw;
        line-height: 3.6vw;
    }

    .woocommerce-custom-page-wrapper .return-to-shop .button.wc-backward {
        padding: 1.6vw 2.4vw !important;
        border-radius: 5vw !important;
        font-size: 1.6vw !important;
        line-height: 2vw !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-custom-page-wrapper {
        max-width: 100%;
        padding: 5vw 4vw 9vw;
    }

    .woocommerce-custom-page-wrapper h1 {
        margin-bottom: 4vw;
        font-size: 7vw;
        line-height: 7.6vw;
    }

    .lipko-cart,
    .lipko-checkout {
        grid-template-columns: 1fr;
        gap: 2.6vw;
    }

    .lipko-cart-items {
        gap: 3vw;
    }

    .lipko-cart-item {
        grid-template-columns: 20vw 1fr auto;
        grid-template-areas:
            "thumb title remove"
            "thumb qty subtotal";
        gap: 2.8vw;
        padding: 3.4vw;
        border-radius: 3vw;
        align-items: start;
    }

    .lipko-cart-item__thumb {
        grid-area: thumb;
        width: 20vw;
        height: 20vw;
        border-radius: 2vw;
    }

    .lipko-cart-item__layout-file {
        gap: 0.8vw;
        padding: 1vw;
    }

    .lipko-cart-item__layout-file-icon {
        font-size: 1.8vw;
        line-height: 2.2vw;
        border-radius: 0.9vw;
        padding: 0.5vw 1vw;
    }

    .lipko-cart-item__layout-file-icon--ext {
        min-width: 7vw;
    }

    .lipko-cart-item__layout-file--fallback {
        padding-bottom: 2.2vw;
    }

    .lipko-cart-item__layout-file-name,
    .lipko-cart-item__layout-upload span {
        font-size: 1.8vw;
        line-height: 2.2vw;
    }

    .lipko-cart-item__layout-upload-icon {
        width: 3vw;
        height: 3vw;
    }

    .lipko-cart-item__layout-upload.is-has-file .lipko-cart-item__layout-replace {
        font-size: 1.35vw;
        line-height: 1.6vw;
        padding: 0.45vw 0.8vw;
    }

    .lipko-cart-item__meta {
        grid-area: title;
    }

    .lipko-cart-item__title,
    .lipko-cart-item__title a {
        font-size: 4.2vw;
        line-height: 5vw;
    }

    .lipko-cart-item__meta dl.variation {
        margin-top: 1.6vw;
        gap: 1.2vw;
    }

    .lipko-cart-item__meta dl.variation dd p {
        border-radius: 1.6vw;
        padding: 1.2vw 2vw;
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .lipko-cart-item__qty {
        grid-area: qty;
    }

    .lipko-cart-item__qty .qty {
        height: 10vw;
        border-radius: 2vw;
        font-size: 3.6vw;
        line-height: 4.2vw;
    }

    .lipko-qty-control {
        width: fit-content;
        max-width: none;
        border-radius: 2vw;
    }

    .lipko-qty-control__btn {
        width: 9vw;
        height: 10vw;
        font-size: 4.4vw;
    }

    .lipko-qty-control .quantity {
        min-width: 20vw;
    }

    .lipko-qty-control .quantity .qty {
        height: 10vw;
    }

    .lipko-cart-item__subtotal {
        grid-area: subtotal;
        font-size: 4.2vw;
        line-height: 5vw;
    }

    .lipko-cart-item__remove {
        grid-area: remove;
        text-align: right;
    }

    .lipko-cart-item__remove .remove {
        font-size: 7vw;
        line-height: 7vw;
    }

    .lipko-cart-actions {
        margin-top: 0;
        gap: 1.8vw;
        width: 100%;
        border-radius: 3vw;
        padding: 2.4vw 3vw;
        box-sizing: border-box;
    }

    .lipko-cart-bottom-row {
        margin-top: 2.4vw;
        display: flex;
        flex-direction: column;
        gap: 2vw;
        align-items: stretch;
    }

    .lipko-cart-actions .button,
    .lipko-cart-actions button.button,
    .woocommerce .lipko-cart-actions .button,
    .woocommerce .lipko-cart-actions button.button {
        width: 100%;
        text-align: center;
        padding: 1.6vw 2.6vw !important;
        border-radius: 12vw !important;
        font-size: 3.4vw !important;
        line-height: 4.2vw !important;
    }

    .lipko-cart-bonus {
        margin-top: 0;
        margin-left: 0;
        width: 100%;
        min-width: 0;
        max-width: 100%;
        border-radius: 3vw;
        padding: 2.4vw 3vw;
        gap: 2vw;
        box-sizing: border-box;
        justify-content: center;
    }

    .lipko-cart-bonus__text {
        font-size: 3.4vw;
        line-height: 4.2vw;
    }

    .lipko-cart-bonus__icon {
        width: 7.8vw;
        height: 7.8vw;
        min-width: 7.8vw;
    }

    .lipko-cart__summary,
    .lipko-checkout-card,
    .lipko-checkout__right {
        border-radius: 3vw;
        padding: 2.8vw;
        position: static;
    }

    .lipko-cart__summary h3,
    .lipko-checkout-card h3,
    .lipko-checkout__right h3 {
        margin-bottom: 1.8vw;
        font-size: 5.2vw;
        line-height: 5.8vw;
    }

    .lipko-summary-row,
    .lipko-summary-total {
        padding: 1.7vw 0;
        font-size: 3.3vw;
        line-height: 4.2vw;
    }

    .lipko-summary-total {
        margin-top: 1.2vw;
        font-size: 4vw;
        line-height: 4.8vw;
    }

    .lipko-summary-bonus {
        margin-top: 0.7vw;
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .lipko-summary-promo {
        margin-top: 2vw;
    }

    .lipko-summary-promo__form {
        grid-template-columns: 1fr;
        gap: 1.4vw;
    }

    .lipko-summary-promo__form input[type="text"],
    .lipko-summary-promo__form button {
        height: 9vw;
        border-radius: 2vw;
        font-size: 2.8vw;
        line-height: 3.4vw;
    }

    .lipko-summary-promo__form input[type="text"] {
        padding: 1.8vw 2.2vw;
    }

    .lipko-summary-promo__form button {
        padding: 0 2.5vw;
    }

    .lipko-summary-btn,
    #place_order {
        margin-top: 3.2vw;
        border-radius: 12vw !important;
        padding: 3.6vw 4vw !important;
        font-size: 3.8vw !important;
        line-height: 4.6vw !important;
    }

    .lipko-summary-deadline {
        margin-top: 2.4vw;
        font-size: 3vw;
        line-height: 3.8vw;
    }

    .woocommerce-notices-wrapper,
    .woocommerce-form-coupon-toggle {
        margin-bottom: 3.2vw;
    }

    .woocommerce-custom-page-wrapper .woocommerce-message,
    .woocommerce-form-coupon-toggle .woocommerce-info,
    .woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error {
      padding: 3vw 3.4vw 3vw 13vw !important;
        border-radius: 2.8vw;
        font-size: 3.3vw;
        line-height: 4.2vw;
    }

    .woocommerce-custom-page-wrapper .woocommerce > .woocommerce-notices-wrapper .woocommerce-NoticeGroup-checkout .woocommerce-error li {
        padding: 1.3vw 0;
        font-size: 3.2vw;
        line-height: 4.1vw;
    }

    .woocommerce-custom-page-wrapper .woocommerce-message .button,
    .woocommerce-custom-page-wrapper .woocommerce-message a.button,
    .woocommerce-custom-page-wrapper .woocommerce-message .button.wc-forward,
    .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon,
    .woocommerce-custom-page-wrapper a.woocommerce-remove-coupon,
    .woocommerce-checkout-review-order-table a.woocommerce-remove-coupon {
        font-size: 3.2vw;
        line-height: 4.1vw;
        border-bottom-width: 0.3vw;
    }

    form.checkout_coupon.woocommerce-form-coupon {
        margin-bottom: 3.2vw !important;
        padding: 3.4vw !important;
        border-radius: 3vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon > p {
        margin-bottom: 2.2vw;
    }

    form.checkout_coupon.woocommerce-form-coupon > p:first-child {
        font-size: 3.3vw;
        line-height: 4.2vw;
    }

    form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-first,
    form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
        width: 100% !important;
        padding-right: 0 !important;
    }

    form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
        margin-top: 1.8vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon .input-text {
        height: 11vw !important;
        border-radius: 2vw !important;
        padding: 0 3.4vw !important;
        font-size: 3.4vw !important;
        line-height: 4.2vw !important;
    }

    form.checkout_coupon.woocommerce-form-coupon .button,
    form.checkout_coupon.woocommerce-form-coupon button.button {
        height: 11vw;
        border-radius: 12vw !important;
        font-size: 3.3vw !important;
        line-height: 4vw !important;
    }

    .woocommerce form .form-row.form-row-first,
    .woocommerce form .form-row.form-row-last {
        width: 100%;
        float: none;
        padding: 0 !important;
    }

    .woocommerce form .form-row {
        margin-bottom: 1.4vw;
    }

    .woocommerce form .form-row input.input-text,
    .woocommerce form .form-row textarea,
    .woocommerce form .form-row select {
        height: 9vw;
        border-radius: 2vw !important;
        padding: 0 2.8vw !important;
        font-size: 3.6vw;
        line-height: 4.4vw;
    }

    .woocommerce form .form-row textarea {
        min-height: 22vw;
        padding-top: 2vw !important;
        padding-bottom: 2vw !important;
    }

    .customer_types {
        margin-top: 2.4vw;
        gap: 2vw;
    }

    .customer_types-toggle label {
        width: 9vw;
        height: 5vw;
    }

    .customer_types-slider::before {
        width: 3.6vw;
        height: 3.6vw;
        left: 0.7vw;
        top: 0.7vw;
    }

    .customer_types-toggle input:checked + .customer_types-slider::before {
        transform: translateX(3.8vw);
    }

    .customer_types-label {
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .company-fields-group {
        margin-top: 3vw;
        padding: 3vw;
        border-radius: 2vw;
    }

    .company-fields-group > h3 {
        margin-bottom: 2.2vw;
        font-size: 5.2vw;
        line-height: 5.8vw;
    }

    .company-fields-group .user-fields-group {
        grid-template-columns: 1fr;
        gap: 2vw;
    }

    .company-fields-group #billing_inn_field .lipko-inn-status {
        margin-top: 1.8vw;
        gap: 1vw;
        padding: 1.15vw 2.2vw;
        font-size: 2.9vw;
        line-height: 1.35;
    }

    .company-fields-group #billing_inn_field .lipko-inn-status::before {
        width: 1.5vw;
        height: 1.5vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods {
        gap: 0.9vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods li {
        gap: 1.2vw;
        border-radius: 2vw;
        padding: 1.6vw 2vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods .shipping_method {
        width: 4.2vw;
        height: 4.2vw;
    }

    .lipko-checkout-shipping-table .woocommerce-shipping-methods label {
        font-size: 3.4vw;
        line-height: 4.2vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_methods {
        gap: 0.9vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method {
        gap: 1.2vw;
        border-radius: 2vw;
        padding: 1.6vw 2vw !important;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method > label {
        font-size: 3.4vw;
        line-height: 4.2vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method .input-radio {
        width: 4.2vw;
        height: 4.2vw;
    }

    .lipko-checkout-card--payment #payment .wc_payment_method .payment_box {
        margin-top: 1.8vw !important;
        border-radius: 2vw;
        padding: 2.2vw 2.6vw !important;
        font-size: 3.2vw;
        line-height: 4vw;
    }

    .lipko-checkout-place-order .woocommerce-terms-and-conditions-wrapper {
        margin-top: 3vw;
        padding: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text {
        max-width: 100%;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text p {
        margin: 0 0 3.2vw;
        font-family: "cera-pro-regular";
        font-size: 3.2vw;
        line-height: 4.6vw;
        color: #2a2a2d;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text a.woocommerce-privacy-policy-link {
        font-size: inherit;
        line-height: inherit;
        border-bottom-width: 0.28vw;
    }

    .lipko-checkout-place-order .woocommerce-privacy-policy-text a.woocommerce-privacy-policy-link:hover {
        border-bottom-color: #2a2a2d;
    }

    .woocommerce-custom-page-wrapper .wc-empty-cart-message {
        margin-bottom: 4vw;
    }

    .woocommerce-custom-page-wrapper .cart-empty.woocommerce-info {
        padding: 5vw 4.5vw !important;
        border-radius: 3vw;
        font-size: 5.2vw;
        line-height: 6.2vw;
    }

    .woocommerce-custom-page-wrapper .return-to-shop .button.wc-backward {
        width: 100%;
        box-sizing: border-box;
        padding: 3.6vw 4vw !important;
        border-radius: 12vw !important;
        font-size: 3.8vw !important;
        line-height: 4.6vw !important;
    }
}


/* Source: public/css/categories.css */



#categories {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: center;
    align-items: flex-start;
}







#categories .container-wrap {
    display: flex;
    gap: 1vw;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: center;
}









#categories .category-wrap {
    position: relative;
    width: 100%;
    max-width: 19vw;
    height: 7vw;
    padding: 1vw;
    box-sizing: border-box;
    background-color: #fafafa;
    border: 1px solid #F1F1F1;
    transition: 0.2s;
    border-radius: 0.5vw;
    overflow: hidden;

    display: flex;
    gap: 0.5vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

#categories .category-wrap:hover {
    cursor: pointer;
}

#categories .category-title {
    font-family: "bounded-regular";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;
    transition: 0.2s;
    max-width: 7vw;
    z-index: 1;
}

#categories .category-wrap:hover .category-title {
    color: #7ca900;
}

#categories .category-text {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 1vw;
    color: #7ca900;
    border-bottom: 1px solid #7ca900;
    z-index: 1;
}

#categories .category-img {
    position: absolute;
    right: 0vw;
    bottom: 0;
    width: 6.5vw;
    height: 6.5vw;
    transition: 0.2s;
    z-index: 0;
}

#categories .category-wrap:hover .category-img {
    transform: scale(1.05);
}

#categories .category-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
}

#categories:not(.categories-term-19) .category-wrap--wide-image .category-img {
    right: 0.25vw;
    bottom: 0.35vw;
    width: 9.2vw;
    height: 5.9vw;
}

#categories:not(.categories-term-19) .category-wrap--wide-image .category-img img {
    -o-object-fit: contain;
    object-fit: contain;
    object-position: right bottom;
}
















.categories-with-banner .container-wrap {
    width: 44vw !important;
    margin: unset;
}

.categories-with-banner  .category-wrap {
    max-width: 14vw !important;
}

.categories-with-banner .banner-wrap {
    position: relative;
    width: 100%;
    max-width: 14vw;
    height: 100%;
    max-height: 15vw;
    padding: 1vw;
    box-sizing: border-box;
    border-radius: 0.5vw;
    overflow: hidden;
    background-color: #2A2A2D;
    background-image: url(../../img/bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 0.75vw;
}

.categories-with-banner .banner-title {
    font-family: "bounded-regular";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #fff;
    transition: 0.2s;
}

.categories-with-banner .banner-desc {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #fff;
}


.categories-with-banner .banner-img {
    width: 12vw;
    height: 12vw;
}

.categories-with-banner .banner-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
}

#categories.categories-term-19 .category-wrap {
    height: 15vw !important;
    background-color: #2A2A2D;
}

#categories.categories-term-19 .category-title,
#categories.categories-term-19 .category-text {
    position: relative;
    z-index: 2;
    color: #fff;
    text-shadow: none;
}

#categories.categories-term-19 .category-text {
    border-bottom-color: #fff;
}

#categories.categories-term-19 .category-wrap:hover .category-title {
    color: #fff;
}

#categories.categories-term-19 .category-img {
    inset: 0;
    width: 100%;
    height: 100%;
    transform: none;
    transform-origin: center center;
}

#categories.categories-term-19 .category-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transform: none;
    transform-origin: center center;
}

#categories.categories-term-19 .category-wrap:hover .category-img {
    transform: none;
}

#categories.categories-term-19.categories-with-banner .banner-wrap {
    height: 15vw;
    padding: 1vw;
    align-items: flex-start;
    gap: 0.5vw;
    border-radius: 0.5vw;
}

#categories.categories-term-19.categories-with-banner .banner-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.58) 0%, rgba(0, 0, 0, 0.36) 22%, rgba(0, 0, 0, 0.1) 45%, rgba(0, 0, 0, 0) 68%);
    pointer-events: none;
    z-index: 1;
}

#categories.categories-term-19.categories-with-banner .banner-title,
#categories.categories-term-19.categories-with-banner .banner-desc {
    position: relative;
    z-index: 2;
    text-align: left;
    text-shadow: none;
}

#categories.categories-term-19.categories-with-banner .banner-title {
    max-width: 11vw;
}

#categories.categories-term-19.categories-with-banner .banner-desc {
    max-width: 11vw;
}

/* Source: public/css/faq.css */

#faq {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}







#faq .container-wrap {
    display: flex;
    row-gap: 1vw;
    column-gap: 0;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}





#faq .faq-item {
    position: relative;

    width: 29.5vw;
    box-sizing: border-box;
    padding: 1vw;

    background-color: #fafafa;
    border-radius: 1vw;
    overflow: hidden;
    transition: 0.2s;

    display: flex;
    gap: 0.75vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

#faq .faq-item:hover {
    cursor: pointer;
}


#faq .faq-question {
    font-family: "cera-pro-medium";
    color: #333;
    font-size: 1vw;
    line-height: 1.25vw;
}
  
#faq .faq-answer {
    font-family: "cera-pro-regular";
    color: #829196;
    font-size: 0.75vw;
    line-height: 1vw;
}

#faq .faq-close .faq-answer {
    display: none;
}

#faq .faq-open .faq-answer {
    display: block;
}

#faq .faq-btn {
    position: absolute;
    top: 1vw;
    right: 1vw;

    width: 1.25vw;
    height: 1.25vw;

    overflow: hidden;
    border-radius: 50%;
    transition: 0.2s;
    
    background-color: #ADEB02;
    background-image: url('../../img/arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70%;
}

#faq .faq-open .faq-btn,
#faq .faq-item:hover .faq-btn {
    transform: rotate(-180deg);
}

/* Source: public/css/first.css */






#first {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}







#first .container-wrap {
    position: relative;

    height: 22vw;
    padding: 2vw;
    box-sizing: border-box;
    border-radius: 0.5vw;
    overflow: hidden;

    background-color: #2A2A2D;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;

    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    gap: 1.5vw;
}

#first.is-small .container-wrap {
    height: 11vw;
}






#first h1 {
    max-width: 33vw;
    font-family: "bounded-bold";
    color: #fff;
    font-size: 2.75vw;
    line-height: 3.5vw;
}


#first h2 {
    max-width: 26vw;
    font-family: "cera-pro-regular";
    font-size: 0.75vw;
    line-height: 0.75vw;
    color: #fff;
    font-weight: 300;

    margin-top: -1vw;
}







#first .offer-wrap {
    display: flex;
    gap: 1vw;
}


#first .offer-item {
    font-family: "bounded-regular";
    font-size: 0.75vw;
    line-height: 0.75vw;
    color: #fff;
    border: 1px solid #fff;
    padding: 0.45vw 0.75vw;
    border-radius: 2vw;
}

#first .offer-item:last-child {
    color: #333;
    border: 1px solid #fff;
    background-color: #fff;
}












#first .buttons-wrap {
    display: flex;
    gap: 1vw;
    z-index: 1;
}


#first .button-wrap {
    font-family: "bounded-semibold";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;
    text-transform: uppercase;
    background-color: #fff;
    padding: 1vw;
    border-radius: 2vw;
    transition: 0.2s;
}

#first .button-wrap:hover {
    cursor: pointer;
    transform: scale(0.9);
}


#first .buttons-wrap .button-wrap:first-child {
    background-color: #ADEB02;
}









/* Source: public/css/footer.css */





#footer {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}







#footer .container-wrap {
    margin-top: 3vw; 

    display: flex;
    gap: 0;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: center;
}






#footer .footer-row {
    border-top: 1px solid #F1F1F1;
    width: 100%;
    box-sizing: border-box;
    padding: 1.5vw 0;
    display: flex;
    gap: 1vw;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}

#footer .footer-col {
    display: flex;
    gap: 1.5vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}




#footer .footer-title {
    font-family: "cera-pro-bold";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;
}

#footer .footer-text {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #829196;
}



#footer .footer-links {
    display: flex;
    gap: 0.75vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}

#footer .footer-link {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #829196;
    transition: 0.2s;
}

#footer .footer-link:hover {
    cursor: pointer;
    transform: scale(0.95);
}





#footer .footer-button {
    font-family: "bounded-semibold";
    font-size: 0.5vw;
    line-height: 0.75vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 0.75vw;
    border-radius: 2vw;
    transition: 0.2s;
}

#footer .footer-button:hover {
    cursor: pointer;
    transform: scale(0.95);
}






#footer .footer-messengers {
    display: flex;
    gap: 0.5vw;
}

#footer .footer-messenger {
    width: 1.5vw;
    height: 1.5vw;

    border-radius: 50%;
    overflow: hidden;
    transition: 0.2s;
}

#footer .footer-messenger:hover {
    cursor: pointer;
    transform: scale(0.95);
}

#footer .footer-messenger img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    pointer-events: none;
}


/* Source: public/css/gallery.css */


/* Source: public/css/header.css */
#header {
    width: 100%;
    padding: 1vw 0;
    box-sizing: border-box;
}







#header .container-wrap {
    display: flex;
    gap: 1.5vw;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}







.logo-wrap {
    width: 6.5vw;
    height: 3vw;
    transition: 0.2s;
}

.logo-wrap:hover {
    cursor: pointer;
    transform: scale(0.95);
}

.logo-wrap img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    pointer-events: none;
}












.menu-wrap {
    display: flex;
    gap: 2vw;
    align-items: center;
}

.menu-item-wrapper {
    position: relative;
    display: flex;
    min-height: 2vw;
}

.menu-wrap .menu-item {
    font-family: "cera-pro-regular";
    font-size: 0.65vw;
    line-height: 0.75vw;
    color: #111;
    transition: 0.2s;
    text-transform: uppercase;

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 0.5vw;
    
    text-decoration: none;
}

.menu-wrap .menu-item:hover {
    cursor: pointer;
    transform: scale(0.9);
}

.menu-item-wrapper .sub-menu-wrap {
    position: absolute;
    left: 0;
    top: 1.75vw;

    background-color: #fff;
    box-shadow: #0000003d 0 3px 8px;
    border-radius: 0.5vw;

    display: none;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    
    z-index: 1000;
    overflow: hidden;
}

.menu-item-wrapper:hover .sub-menu-wrap {
    display: flex;
}

.sub-menu-wrap .sub-menu-item {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 1.2;
    color: #333;
    text-decoration: none;
    text-transform: uppercase;
    padding: 0.5vw 1vw;
    width: 100%;
    transition: 0.2s;
    white-space: nowrap;
}

.sub-menu-wrap .sub-menu-item:hover {
    background-color: rgba(124, 169, 0, 0.1);
    color: #7ca900;
}

.menu-item-wrapper:last-child .menu-item {
    color: #7ca900;
    border-bottom: 1px solid #7ca900;
}

.menu-wrap .menu-item img,
.menu-wrap .menu-item svg,
.menu-wrap .menu-item img path,
.menu-wrap .menu-item svg path {
    width: 1.1265625vw;
    height: 0.9125vw;
    fill: #1C1C1C;
}











.contacts-wrap {
    display: flex;
    gap: 0.5vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

.contact-wrap {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.6vw;
    color: #2A2A2D;
    transition: 0.2s;

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 0.35vw;
}

.contact-wrap:hover {
    cursor: pointer;
    transform: scale(0.9);
}

.contact-wrap img,
.contact-wrap svg,
.contact-wrap img path,
.contact-wrap svg path {
  width: 0.6vw;
  height: 0.6vw;
  fill: #2A2A2D;
}












.cart-wrap {
    position: relative;
    display: flex;
    gap: 0.75vw;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: 0.2s;
}

.cart-wrap:hover {
    cursor: pointer;
    transform: scale(0.9);
}

.cart-count {
    position: absolute;
    top: 0;
    left: 0.55vw;

    width: 0.85vw;
    height: 0.85vw;

    border-radius: 50%;
    overflow: hidden;
    background-color: #fafafa;

    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;

    font-family: "cera-pro-bold";
    font-size: 0.6vw;
    line-height: 0.6vw;
    color: #7ca900;
}

.cart-wrap img,
.cart-wrap svg,
.cart-wrap img path,
.cart-wrap svg path {
    width: 1.25vw;
    height: 1.25vw;
    fill: #2A2A2D;
}

.cart-sum-wrap {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.6vw;
    color: #2A2A2D;
    transition: 0.2s;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: flex-start;
    gap: 0.35vw;
    justify-content: center;
}

.cart-sum-wrap span {
    font-weight: 700;
}






.user-wrap {
    transition: 0.2s;
}

.user-wrap:hover {
    cursor: pointer;
    transform: scale(0.9);
}

.header-user-menu {
    position: relative;
    display: flex;
    align-items: center;
}

.header-user-menu__dropdown {
    position: absolute;
    top: calc(100% + 0.5vw);
    right: -0.3vw;
    width: 12.8vw;
    padding: 0.5vw;
    border-radius: 0.75vw;
    background: #fff;
    border: 0.06vw solid #e7ebf0;
    box-shadow: 0 0.5vw 1.3vw rgba(42, 42, 45, 0.12);
    z-index: 120;
}

.header-user-menu__dropdown[hidden] {
    display: none !important;
}

.header-user-menu__identity {
    display: flex;
    flex-direction: column;
    gap: 0.12vw;
    margin-bottom: 0.38vw;
    padding: 0.28vw 0.12vw 0.34vw;
    text-decoration: none;
    border-bottom: 0.06vw solid #eef1f4;
}

.header-user-menu__name {
    font-family: "bounded-semibold";
    font-size: 0.88vw;
    line-height: 1.06vw;
    color: var(--wc-text);
}

.header-user-menu__email {
    font-family: "cera-pro-regular";
    font-size: 0.62vw;
    line-height: 0.82vw;
    color: #81848b;
}

.header-user-menu__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.35vw;
    padding: 0.28vw 0.15vw;
    text-decoration: none;
    font-family: "cera-pro-regular";
    font-size: 0.78vw;
    line-height: 0.98vw;
    color: #2a2a2d;
    border-radius: 0.36vw;
}

.header-user-menu__item:hover {
    background: var(--wc-accent);
    color: var(--wc-text);
}

.header-user-menu__points-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.22em;
    min-width: 1.5vw;
    height: 0.95vw;
    padding: 0 0.3vw;
    border-radius: 2vw;
    background: var(--wc-accent);
    font-family: "bounded-semibold";
    font-size: 0.5vw;
    line-height: 0.66vw;
    color: var(--wc-text);
}

.user-wrap img,
.user-wrap svg,
.user-wrap img path,
.user-wrap svg path {
    width: 1.25vw;
    height: 1.25vw;
    fill: #2A2A2D;
}

.user-wrap img.header-user-menu__avatar {
    width: 1.875vw !important;
    height: 1.875vw !important;
    border-radius: 999px;
    object-fit: cover;
    display: block;
}

@media (max-width: 768px) {
    .user-wrap img.header-user-menu__avatar {
        width: 26px !important;
        height: 26px !important;
    }
}





.burger-wrap {
    transition: 0.2s;
    display: none;
}

.burger-wrap:hover {
    cursor: pointer;
    transform: scale(0.9);
}

.burger-wrap img,
.burger-wrap svg,
.burger-wrap img path,
.burger-wrap svg path {
    width: 8.25vw;
    height: 8.25vw;
    fill: #2A2A2D;
}







.header-group {
    display: flex;
    gap: 1.5vw;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}

/* Source: public/css/main.css */

@font-face {
    font-family: "cera-pro-light";
    src: url("../../fonts/CeraPro/CeraPro-Light.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "cera-pro-regular";
    src: url("../../fonts/CeraPro/CeraPro-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "cera-pro-bold";
    src: url("../../fonts/CeraPro/CeraPro-Bold.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}


@font-face {
    font-family: "cera-pro-medium";
    src: url("../../fonts/CeraPro/CeraPro-Medium.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}





@font-face {
    font-family: "bounded-regular";
    src: url("../../fonts/Bounded/Bounded-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "bounded-black";
    src: url("../../fonts/Bounded/Bounded-Black.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "bounded-bold";
    src: url("../../fonts/Bounded/Bounded-Bold.otf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "bounded-semibold";
    src: url("../../fonts/Bounded/Bounded-SemiBold.otf") format("truetype");
    font-style: normal;
    font-weight: normal;
}















body {
    margin: 0;
    padding: 0;

    background-color: #fff;
    /* background-image: url('../../img/stencil.png'); */
    background-position: top center;
    background-repeat: no-repeat;

    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 1vw;
}






h1,
h2,
p,
a {
    text-decoration: none;
    margin: 0;
    padding: 0;
}





section {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 2vw;
}

.container-wrap {
    width: 60vw;
    margin: 0 auto;

    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 2vw;
}













#title .container-wrap {
    margin-top: 4vw;
    margin-bottom: 1vw;

    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1vw;
}

#title .container-wrap .title {
    font-family: "bounded-bold";
    color: #2A2A2D;
    font-size: 1.5vw;
    line-height: 1.75vw;
}

#title .container-wrap .subtitle {
    font-family: "cera-pro-regular";
    color: #829196;
    font-size: 1vw;
    line-height: 1.25vw;
}

#title .container-wrap a.subtitle.lipko-review-write-link {
    display: inline-flex;
    width: fit-content;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.18s ease, opacity 0.18s ease;
}

#title .container-wrap a.subtitle.lipko-review-write-link:hover {
    color: #2A2A2D;
}

#title .container-wrap a.subtitle.lipko-review-write-link:focus-visible {
    outline: 0.12vw solid #ADEB02;
    outline-offset: 0.2vw;
}










#button .container-wrap {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 1vw;
}

#button .container-wrap .button {
    font-family: "bounded-semibold";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 1vw;
    border-radius: 2vw;
    transition: 0.2s;
}

#button .container-wrap .button:hover {
    cursor: pointer;
    transform: scale(0.95);
}




a {
    color: #7ca900;
}

/* Source: public/css/portfolio.css */




#portfolio {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}







#portfolio .container-wrap {
    display: flex;
    column-gap: 0;
    row-gap: 1vw;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: center;
}









#portfolio .portfolio-wrap {
    position: relative;

    width: 100%;
    max-width: 19vw;
    height: 23vw;

    background-color: #000;
    border-radius: 0.5vw;
    overflow: hidden;
    transition: 0.2s;
}

#portfolio .portfolio-wrap:hover {
    cursor: pointer;
    transform: scale(0.95);
}

#portfolio .portfolio-wrap img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
}






#portfolio .swiper-container {
    width: 100%;
}

#portfolio .swiper-container .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
}

#portfolio .swiper-container .swiper-slide .portfolio-wrap {
    max-width: unset;
}

/* Source: public/css/reviews.css */



#reviews {
    position: relative;
    width: 100%;

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}







#reviews .container-wrap {
    display: flex;
    column-gap: 1vw;
    row-gap: 1vw;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: center;
}






#reviews .review-wrap {
    position: relative;

    width: 100%;
    max-width: 19vw;
    height: 16vw;
    box-sizing: border-box;
    padding: 1vw;

    background-color: #fafafa;
    border-radius: 1vw;
    overflow: hidden;
    transition: 0.2s;

    display: flex;
    gap: 0.5vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

#reviews .review-photo {
    position: relative;
    width: 100%;
    display: block;
    border-radius: 0.75vw;
    overflow: hidden;
    margin-top: auto;
}

#reviews .review-photo img {
    width: 100%;
    height: 5.5vw;
    object-fit: cover;
    display: block;
}

#reviews .review-photo__overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2.2vw;
    background: rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35vw;
    color: #fff;
    font-family: "cera-pro-bold";
    font-size: 0.7vw;
    line-height: 1;
}

#reviews .review-photo__icon {
    width: 1.05vw;
    height: 1.05vw;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    /* simple "image" glyph */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M21 5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5Z' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.5 10a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='m21 15-5-5L5 21' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

#reviews .review-photo__count {
    display: inline-block;
    min-width: 1ch;
}

#reviews .review-row {
    width: 100%;
    display: flex;
    gap: 0.5vw;
    flex-direction: row;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
}

#reviews .review-row__meta {
    display: flex;
    flex-direction: column;
    gap: 0.15vw;
    min-width: 0;
}

#reviews .review-date {
    font-family: "cera-pro-regular";
    font-size: 0.5vw;
    line-height: 0.7vw;
    color: rgba(42, 42, 45, 0.55);
}


#reviews .review-img {
    width: 2vw;
    height: 2vw;

    border-radius: 50%;
    overflow: hidden;
}

#reviews .review-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
}

#reviews .review-title {
    font-family: "cera-pro-bold";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #2A2A2D;
}

#reviews .review-text {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #2A2A2D;
    
    /* Ограничение до 3 строк */
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    
    /* Для Firefox */
    display: box;
    box-orient: vertical;
    line-clamp: 3;
}


#reviews .lipko-stars {
    display: inline-flex;
    gap: 0.15vw;
    align-items: center;
}

#reviews .lipko-star {
    width: 0.65vw;
    height: 0.65vw;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0.25;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F5BA13' d='M12 17.27 18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}

#reviews .lipko-star.is-active { opacity: 1; }

#reviews .review-rating {
    display: flex;
    align-items: center;
    gap: 0.5vw;
}

#reviews .review-product {
    font-family: "cera-pro-regular";
    font-size: 0.55vw;
    line-height: 0.75vw;
    color: rgba(42, 42, 45, 0.6);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 10vw;
}

#reviews .review-product:hover {
    color: rgba(42, 42, 45, 0.9);
    text-decoration: underline;
}











#reviews .swiper-container {
    width: 100%;
}

#reviews .swiper-container .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
}

#reviews .swiper-container .swiper-slide .reviews-wrap {
    max-width: unset;
}

@media (max-width: 768px) {
    #reviews .review-row__meta {
        gap: 2px;
    }

    #reviews .review-date {
        font-size: 12px;
        line-height: 16px;
    }
    #reviews .container-wrap {
        row-gap: 12px;
        justify-content: center;
    }

    #reviews .review-wrap {
        max-width: 100%;
        border-radius: 16px;
        padding: 16px;
        gap: 10px;
        height: auto;
    }

    #reviews .review-img {
        width: 36px;
        height: 36px;
    }

    #reviews .review-title {
        font-size: 16px;
        line-height: 20px;
    }

    #reviews .lipko-stars { gap: 4px; }
    #reviews .lipko-star { width: 18px; height: 18px; }

    #reviews .review-rating {
        gap: 10px;
        flex-wrap: wrap;
    }

    #reviews .review-product {
        font-size: 14px;
        line-height: 18px;
        max-width: 100%;
        white-space: normal;
    }

    #reviews .review-text {
        font-size: 14px;
        line-height: 20px;
        -webkit-line-clamp: 6;
        line-clamp: 6;
    }

    #reviews .review-photo {
        border-radius: 12px;
        margin-top: 10px;
    }

    #reviews .review-photo img {
        height: 180px;
    }

    #reviews .review-photo__overlay {
        height: 56px;
        gap: 10px;
        font-size: 16px;
    }

    #reviews .review-photo__icon {
        width: 22px;
        height: 22px;
    }
}

/* Source: public/css/stages.css */







#stages {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: center;
    align-items: stretch;
}







#stages .container-wrap {
    display: flex;
    gap: 1vw;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: stretch;
}





#stages .stage-wrap {
    position: relative;
    width: 100%;
    min-height: 16vw;
    background-color: #2A2A2D;
    background-image: url(../../img/bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: 0.2s;
    border-radius: 0.5vw;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 1vw;
}


#stages .stage-header {
    width: 100%;
    padding: 2vw 2vw 0 2vw;
    box-sizing: border-box;
    
    display: flex;
    gap: 1vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}


#stages .stage-title {
    font-family: "bounded-regular";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #fff;
    transition: 0.2s;
}


#stages .stage-text {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 0.85vw;
    color: #fff;
}

#stages .stage-link {
    font-family: "cera-pro-regular";
    font-size: 0.6vw;
    line-height: 1vw;
    color: #7ca900;
    border-bottom: 1px solid #7ca900;
}

#stages .stage-img {
    width: 100%;
    height: auto;
}

#stages .stage-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
}


#stages .stage-button {
    margin-bottom: 2vw;

    font-family: "bounded-semibold";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 1vw;
    border-radius: 2vw;
    transition: 0.2s;
    z-index: 1;
}

#stages .stage-button:hover {
    cursor: pointer;
    transform: scale(0.9);
}








#stages .stage-light .stage-text {
    color: #000;
}

#stages .stage-light .stage-title {
    color: #000;
}

/* Source: public/css/textarea.css */


#textarea .container-wrap {
    width: 60vw;
    margin: 0 auto;

    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
}

#textarea .container-wrap * {
    font-family: "cera-pro-regular";
    font-size: 0.75vw;
    line-height: 1vw;
    color: #2A2A2D;

    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
}

#textarea .container-wrap.contacts-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.3vw;
    align-items: start;
}

#textarea .container-wrap.contacts-layout * {
    display: block;
}

#textarea .contacts-layout__left p {
    margin: 0;
}

#textarea .contacts-layout__right {
    background: #fafafa;
    border: 0.06vw solid #e6ebf0;
    border-radius: 0.9vw;
    padding: 0.95vw;
}

#textarea .contacts-layout__note {
    margin: 0 0 0.8vw;
    font-family: "cera-pro-regular";
    font-size: 0.73vw;
    line-height: 1.05vw;
    color: #2A2A2D;
}

#textarea .contacts-layout__map {
    border-radius: 0.6vw;
    overflow: hidden;
    line-height: 0;
}

#textarea .contacts-layout__map iframe {
    width: 100%;
    height: 18vw;
    border: 0;
}

/* Source: public/mobile/landing.css */



@media (max-width: 768px) { /* narrowed from 1280: phone design now applies only to true phones */





body {
    margin: 0;
    padding: 0;
    background-color: #fff;
    /* background-image: url(../../img/stencil.png); */
    background-position: top center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 8vw;
}



.container-wrap {
    width: 90vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 2vw;
}



.menu-wrap {
    display: flex;
    display: none;
    gap: 2vw;
}


.contacts-wrap {
    display: flex;
    gap: 0.5vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    display: none;
}



#header {
    width: 100%;
    padding: 4vw 0;
    box-sizing: border-box;
}


.logo-wrap {
    width: 21.5vw;
    height: 11vw;
    transition: 0.2s;
}





.cart-wrap img, .cart-wrap svg, .cart-wrap img path, .cart-wrap svg path {
    width: 5.25vw;
    height: 5.25vw;
    fill: #2A2A2D;
}



.user-wrap img, .user-wrap svg, .user-wrap img path, .user-wrap svg path {
    width: 5.25vw;
    height: 5.25vw;
    fill: #2A2A2D;
}

.header-user-menu__dropdown {
    top: calc(100% + 1.3vw);
    right: -2vw;
    width: 50vw;
    padding: 1.7vw;
    border-radius: 2.6vw;
    border-width: 0.24vw;
    box-shadow: 0 2vw 4.4vw rgba(42, 42, 45, 0.16);
}

.header-user-menu__identity {
    gap: 0.4vw;
    margin-bottom: 1.2vw;
    padding: 0.5vw 0.4vw 1.1vw;
    border-bottom-width: 0.24vw;
}

.header-user-menu__name {
    font-size: 4vw;
    line-height: 4.9vw;
}

.header-user-menu__email {
    font-size: 2.8vw;
    line-height: 3.6vw;
}

.header-user-menu__item {
    padding: 1.05vw 0.65vw;
    font-size: 3.3vw;
    line-height: 4.1vw;
    border-radius: 1.5vw;
}

.header-user-menu__points-badge {
    min-width: 6.8vw;
    height: 4.4vw;
    padding: 0 1.3vw;
    border-radius: 8vw;
    font-size: 2.2vw;
    line-height: 2.7vw;
}




.cart-wrap {
    position: relative;
    display: flex;
    gap: 4.75vw;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: 0.2s;
}




.cart-sum-wrap {
    font-family: "cera-pro-regular";
    font-size: 2.6vw;
    line-height: 3.6vw;
    display: none;
    color: #2A2A2D;
    transition: 0.2s;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: flex-start;
    gap: 0.35vw;
    justify-content: center;
    display: none;
}



.cart-count {
    position: absolute;
    top: -2vw;
    left: 2.55vw;
    width: 4.85vw;
    height: 4.85vw;
    border-radius: 50%;
    overflow: hidden;
    background-color: #fafafa;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    font-family: "cera-pro-bold";
    font-size: 2.6vw;
    line-height: 2.6vw;
    color: #7ca900;
}



.header-group {
    display: flex;
    gap: 6.5vw;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}






    #first .container-wrap {
        position: relative;
        height: unset;
        padding: 6vw 6vw 86vw 6vw;
        box-sizing: border-box;
        border-radius: 4.5vw;
        overflow: hidden;
        background-color: #2A2A2D;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-content: center;
        justify-content: center;
        align-items: flex-start;
        gap: 7.5vw;
    }

    #first.is-small .container-wrap {
        padding: 6vw 6vw 50vw 6vw;
        gap: 5vw;
    }

    #first.is-small h1 {
        font-size: 8.5vw;
        line-height: 10vw;
        margin-top: 43vw;
    }

    #first.is-small h2 {
        font-size: 3.3vw;
        line-height: 4.2vw;
        margin-top: 0;
    }




#first h1 {
    max-width: unset;
    font-family: "bounded-bold";
    color: #fff;
    font-size: 9.75vw;
    line-height: 11.5vw;
    overflow-wrap: break-word;
    /* manual (not auto): Russian auto-hyphenation produced ugly breaks like
       "пе-чать" / "надеж-ный" in hero titles. Long unbroken strings still wrap
       via overflow-wrap above. */
    -webkit-hyphens: manual;
    hyphens: manual;
}

#first h1.first-title--long {
    font-size: 8.15vw;
    line-height: 9.65vw;
    max-width: 82vw;
}


#first h2 {
    font-family: "cera-pro-regular";
    font-size: 3.75vw;
    line-height: 4.75vw;
    color: #fff;
    font-weight: 300;
    margin-top: -1vw;
    max-width: unset;
}



#first .offer-wrap {
    display: flex;
    gap: 2vw;
}

#first .offer-item {
    font-family: "bounded-regular";
    font-size: 3.75vw;
    line-height: 4.75vw;
    color: #fff;
    border: 1px solid #fff;
    padding: 1.75vw;
    border-radius: 4vw;
}





    #first .buttons-wrap {
        width: 100%;
        display: flex;
        gap: 2vw;
        position: relative;
        top: 56vw;
    }

#first .button-wrap {
    width: 100%;

    font-family: "bounded-semibold";
    font-size: 3.75vw;
    text-align: center;
    line-height: 4vw;
    color: #2A2A2D;
    text-transform: uppercase;
    background-color: #fff;
    padding: 4vw;
    border-radius: 5vw;
    transition: 0.2s;
    box-sizing: border-box;
}






#first .bg-wrap {
    position: absolute;
    right: 3.5vw;
    bottom: 0;
    width: 83vw;
    height: 81.5vw;
}









#categories .container-wrap {
    display: flex;
    gap: 3vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: center;
}



#categories .category-wrap {
    position: relative;
    width: 100%;
    max-width: unset;
    height: 27vw !important;
    padding: 4vw;
    box-sizing: border-box;
    background-color: #fafafa;
    border: 1px solid #F1F1F1;
    transition: 0.2s;
    border-radius: 4.5vw;
    overflow: hidden;
    display: flex;
    gap: 2.5vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}



#categories .category-title {
    font-family: "bounded-regular";
    font-size: 3.75vw;
    line-height: 5.75vw;
    color: #2A2A2D;
    transition: 0.2s;
    max-width: 60vw;
}



#categories .category-text {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 5vw;
    color: #7ca900;
    border-bottom: 1px solid #7ca900;
}


#categories .category-img {
    position: absolute;
    right: 0vw;
    bottom: 0;
    width: 29.5vw;
    height: 26.5vw;
    transition: 0.2s;
}

#categories:not(.categories-term-19) .category-wrap--wide-image .category-img {
    right: 2vw;
    bottom: 2vw;
    width: 42vw;
    height: 18vw;
}

#categories:not(.categories-term-19) .category-wrap--wide-image .category-img img {
    -o-object-fit: contain;
    object-fit: contain;
    object-position: right bottom;
}

#categories.categories-term-19 .category-wrap {
    /* full-bleed photo tile — taller per client request so the sticker-sheet
       photo reads bigger (was 84vw≈327px broken, then 44vw, now this). */
    height: clamp(210px, 58vw, 280px) !important;
    background-color: #2A2A2D;
}

#categories.categories-term-19 .category-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.58) 0%, rgba(0, 0, 0, 0.36) 22%, rgba(0, 0, 0, 0.1) 45%, rgba(0, 0, 0, 0) 68%);
    pointer-events: none;
    z-index: 1;
}

#categories.categories-term-19 .category-title {
    max-width: 48vw;
    z-index: 2;
    color: #fff;
    text-shadow: none;
}

#categories.categories-term-19 .category-text {
    z-index: 2;
    color: #fff;
    border-bottom-color: #fff;
    text-shadow: none;
}

#categories.categories-term-19 .category-wrap:hover .category-title {
    color: #fff;
}

#categories.categories-term-19 .category-img {
    inset: 0;
    width: 100%;
    height: 100%;
    transform-origin: center center;
}

#categories.categories-term-19 .category-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transform: none;
    transform-origin: center center;
}







#categories {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
}

.categories-with-banner .container-wrap {
    width: 90vw !important;
    margin: unset;
}

.categories-with-banner .category-wrap {
    max-width: 100% !important;
}

.categories-with-banner .banner-wrap {
    position: relative;
    width: 100%;
    max-width: 90vw;
    height: 100%;
    max-height: 80vw;
    padding: 3vw;
    margin-top: 3vw;
    box-sizing: border-box;
    border-radius: 3.5vw;
    overflow: hidden;
    background-color: #2A2A2D;
    background-image: url(../../img/bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 2.75vw;
}

.categories-with-banner .banner-title {
    font-family: "bounded-regular";
    font-size: 4.75vw;
    line-height: 6vw;
    color: #fff;
    transition: 0.2s;
    text-align: center;
}


.categories-with-banner .banner-desc {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 4.85vw;
    color: #fff;
    text-align: center;
}

.categories-with-banner .banner-img {
    width: 50vw;
    height: 50vw;
}

#categories.categories-term-19.categories-with-banner .banner-wrap {
    height: 84vw;
    max-height: none;
    padding: 4vw;
    border-radius: 4.5vw;
    align-content: flex-start;
    align-items: flex-start;
    gap: 2.5vw;
}

#categories.categories-term-19.categories-with-banner .banner-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.58) 0%, rgba(0, 0, 0, 0.36) 22%, rgba(0, 0, 0, 0.1) 45%, rgba(0, 0, 0, 0) 68%);
    pointer-events: none;
    z-index: 1;
}

#categories.categories-term-19.categories-with-banner .banner-title,
#categories.categories-term-19.categories-with-banner .banner-desc {
    position: relative;
    z-index: 2;
    text-align: left;
    text-shadow: none;
}

#categories.categories-term-19.categories-with-banner .banner-title {
    max-width: 70vw;
}

#categories.categories-term-19.categories-with-banner .banner-desc {
    max-width: 74vw;
}










#title .container-wrap .title {
    font-family: "bounded-bold";
    color: #2A2A2D;
    font-size: 5.5vw;
    line-height: 7.75vw;
    text-align: center;
}

#title .container-wrap .subtitle {
    font-family: "cera-pro-regular";
    color: #829196;
    font-size: 4vw;
    line-height: 5.25vw;
    text-align: center;
}

#title .container-wrap a.subtitle.lipko-review-write-link {
    justify-content: center;
}

#title .container-wrap {
    margin-top: 4vw;
    margin-bottom: 2vw;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    gap: 4vw;
}


















#portfolio .portfolio-wrap {
    position: relative;
    width: 100%;
    max-width: 19vw;
    height: 102vw;
    background-color: #000;
    border-radius: 3.5vw;
    overflow: hidden;
    transition: 0.2s;
}


#button .container-wrap .button {
    font-family: "bounded-semibold";
    font-size: 3.75vw;
    line-height: 4vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 4vw;
    border-radius: 6vw;
    transition: 0.2s;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}




#reviews .review-wrap {
    position: relative;
    width: 100%;
    max-width: unset;
    height: unset;
    box-sizing: border-box;
    padding: 5vw;
    background-color: #fafafa;
    border-radius: 4vw;
    overflow: hidden;
    transition: 0.2s;
    display: flex;
    gap: 3.5vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}



#reviews .review-row {
    width: 100%;
    display: flex;
    gap: 4.5vw;
    flex-direction: row;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
}




#reviews .review-img {
    width: 7vw;
    height: 7vw;
    border-radius: 50%;
    overflow: hidden;
}

#reviews .review-title {
    font-family: "cera-pro-bold";
    font-size: 2.6vw;
    line-height: 3.85vw;
    color: #2A2A2D;
}



#reviews .review-rating img, #reviews .review-rating svg, #reviews .review-rating img path, #reviews .review-rating svg path {
    width: 13.25vw;
    height: 3.75vw;
    fill: #F5BA13;
}



#reviews .review-text {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 3.85vw;
    color: #2A2A2D;
}


#faq .container-wrap {
    display: flex;
    row-gap: 5vw;
    column-gap: 0;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}



#faq .faq-item {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding: 4vw;
    background-color: #fafafa;
    border-radius: 4vw;
    overflow: hidden;
    transition: 0.2s;
    display: flex;
    gap: 3.75vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}


#faq .faq-question {
    font-family: "cera-pro-medium";
    color: #333;
    font-size: 3.6vw;
    line-height: 3.85vw;
}


#faq .faq-btn {
    position: absolute;
    top: 5vw;
    right: 4vw;
    width: 6.25vw;
    height: 6.25vw;
    overflow: hidden;
    border-radius: 50%;
    transition: 0.2s;
    background-color: #ADEB02;
    background-image: url(../../img/arrow.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70%;
}



#faq .faq-answer {
    font-family: "cera-pro-regular";
    color: #829196;
    font-size: 3.75vw;
    line-height: 4vw;
}





#footer .footer-row {
    border-top: 1px solid #F1F1F1;
    width: 100%;
    box-sizing: border-box;
    padding: 7.5vw 0;
    display: flex;
    gap: 11vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}


#footer .footer-col {
    display: flex;
    gap: 5.5vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
}


#footer .footer-text {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 4.85vw;
    color: #829196;
}


#footer .footer-button {
    font-family: "bounded-semibold";
    font-size: 3.5vw;
    line-height: 3.75vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 3.75vw;
    border-radius: 6vw;
    transition: 0.2s;
}


#footer .footer-title {
    font-family: "cera-pro-bold";
    font-size: 3.75vw;
    line-height: 4vw;
    color: #2A2A2D;
}


#footer .footer-links {
    display: flex;
    gap: 3.75vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
}

#footer .footer-link {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 3.85vw;
    color: #829196;
    transition: 0.2s;
}




#footer .footer-messengers {
    display: flex;
    gap: 4.5vw;
}


#footer .footer-messenger {
    width: 8.5vw;
    height: 8.5vw;
    border-radius: 50%;
    overflow: hidden;
    transition: 0.2s;
}


    #footer  .contacts-wrap {
        display: flex;
        gap: 3.5vw;
        flex-direction: column;
        align-content: flex-start;
        justify-content: flex-start;
        align-items: flex-start;
    }


.contact-wrap {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 3.6vw;
    color: #2A2A2D;
    transition: 0.2s;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 3.35vw;
}


.contact-wrap img, .contact-wrap svg, .contact-wrap img path, .contact-wrap svg path {
    width: 3.6vw;
    height: 3.6vw;
    fill: #2A2A2D;
}























#stages .container-wrap {
    display: flex;
    gap: 7vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: stretch;
}

#stages .stage-wrap {
    position: relative;
    width: 100%;
    min-height: 70vw;
    background-image: url(../../img/bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: 0.2s;
    border-radius: 3.5vw;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#stages .stage-header {
    width: 100%;
    padding: 6vw 6vw 0 6vw;
    box-sizing: border-box;
    display: flex;
    gap: 3vw;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

#stages .stage-title {
    font-family: "bounded-regular";
    font-size: 4.75vw;
    line-height: 5vw;
    color: #fff;
    transition: 0.2s;
}

#stages .stage-link {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 4vw;
    color: #7CA900;
    border-bottom: 1px solid #7ca900;
}

#stages .stage-text {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 5.85vw;
    color: #fff;
    margin-bottom: 4vw;
}



#stages .stage-button {
    font-family: "bounded-semibold";
    font-size: 3.75vw;
    line-height: 4vw;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 4vw;
    border-radius: 6vw;
    transition: 0.2s;
    width: 85%;
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 9vw;
}














#cards .container-wrap {
    row-gap: 6vw;
}

#cards .card-wrap {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding: 7vw;
    border-radius: 3.5vw;
    overflow: hidden;
    display: flex;
    gap: 5.25vw;
}

#cards .card-content {
    width: 100%;
    display: flex;
    gap: 5.25vw;
}


#cards .card-content h2 {
    max-width: 100%;
    font-family: "bounded-bold";
    color: #fff;
    font-size: 4.5vw;
    line-height: 6vw;
    z-index: 1;
}

#cards .card-content h3 {
    margin: 0;
    padding: 0;

    font-family: "bounded-bold";
    color: #fff;
    font-size: 3.85vw;
    line-height: 5vw;
    z-index: 1;
}

#cards .card-content p {
    max-width: 100%;
    font-family: "cera-pro-regular";
    font-size: 3.75vw;
    line-height: 5vw;
    color: #fff;
    font-weight: 300;
    z-index: 1;
}

#cards .card-button {
    font-family: "bounded-semibold";
    font-size: 3.75vw;
    line-height: 4vw;
    text-align: center;
    color: #2A2A2D;
    background-color: #ADEB02;
    padding: 4vw;

    width: 100%;
    box-sizing: border-box;
    border-radius: 5vw;
    transition: 0.2s;
}















#textarea .container-wrap {
    width: 90vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
}


#textarea .container-wrap * {
    font-family: "cera-pro-regular";
    font-size: 3.75vw;
    line-height: 4vw;
    color: #2A2A2D;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
}

#textarea .container-wrap.contacts-layout {
    width: 90vw;
    display: flex;
    flex-direction: column;
    gap: 3vw;
}

#textarea .container-wrap.contacts-layout * {
    display: block;
}

#textarea .contacts-layout__right {
    width: 100%;
    box-sizing: border-box;
    border-width: 0.24vw;
    border-radius: 2.6vw;
    padding: 2.6vw;
}

#textarea .contacts-layout__note {
    margin-bottom: 2.4vw;
    font-size: 3.4vw;
    line-height: 4.5vw;
}

#textarea .contacts-layout__map {
    border-radius: 2vw;
}

#textarea .contacts-layout__map iframe {
    height: 54vw;
}














#calc .calc-wrap {
    width: 100%;
    display: flex;
    gap: 6vw;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}

#calc .calc-body-wrap {
    width: 100%;
    display: flex;
    gap: 6vw;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    align-items: stretch;
}

#calc .calc-main-wrap {
    width: 100%;
    max-width: unset;
    box-sizing: border-box;
    padding: 5vw;
    background-color: #fafafa;
    border-radius: 4.5vw;
    display: flex;
    gap: 6vw;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}

#calc .calc-properties-wrap {
    width: 100%;
    max-width: unset;
    display: flex;
    gap: 3.5vw;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

#calc .calc-properties-wrap--quantity {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 3.5vw;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

#calc .calc-properties-wrap--quantity .calc-property-group-wrap {
    grid-template-columns: minmax(0, 0.929475fr) minmax(0, 1fr);
    width: 100%;
    min-width: 0;
}

#calc .calc-property-title {
    font-family: "cera-pro-regular";
    font-size: 4.6vw;
    line-height: 5.75vw;
    color: #7ca900;
    margin-bottom: 0.5vw;
}

#calc .calc-property-wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 3.5vw;
    background-color: #fff;
    border-radius: 3.5vw;
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 4.75vw;
    color: #2A2A2D;
    transition: 0.2s;
}

#calc .calc-upload-wrap {
    width: 100%;
    max-width: unset;
    box-sizing: border-box;
    padding: 6vw;
    background-color: #fafafa;
    border-radius: 4.5vw;
    display: flex;
    gap: 7vw;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
}

#calc .calc-footer-wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 6vw;
    background-color: #fafafa;
    border-radius: 5.5vw;
    display: flex;
    gap: 5vw;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    align-items: center;
    justify-content: center;
}

#calc .calc-footer-wrap p {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 5.75vw;
    color: #2A2A2D;
    text-align: center;
}

#calc input[type="submit"] {
    width: 100%;
    font-family: "bounded-semibold";
    font-size: 3.75vw;
    line-height: 4vw;
    color: #fff;
    text-align: center;
    background-color: #333;
    border: 0;
    padding: 3.5vw;
    border-radius: 5vw;
    transition: 0.2s;
}

#calc textarea {
    width: 100%;
    min-height: 25vw;
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 5.75vw;
    color: #2A2A2D;
    text-align: left;
    background-color: #fff;
    border: 0;
    padding: 3.5vw;
    border-radius: 4.5vw;
    transition: 0.2s;
}

#calc .calc-input-wrap {
    width: 100%;
    min-height: 31vw;
    border-radius: 4.5vw;
    border: 1px solid #333;
    display: flex;
    gap: 5vw;
    transition: 0.2s;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
}

#calc .calc-input-wrap p {
    font-family: "cera-pro-regular";
    font-size: 3.6vw;
    line-height: 3.75vw;
    color: #2A2A2D;
}





.burger-wrap {
    display: block;
}






}
@media screen and (max-width: 768px) {
    #calc .calc-main-wrap {
        display: flex;
        flex-direction: column;
        max-width: 100%;
        padding: 4vw;
        border-radius: 2vw;
        gap: 4vw;
    }

    #calc .calc-col {
        gap: 4vw;
    }

    #calc .calc-property-title {
        font-size: 3.5vw;
        line-height: 4vw;
        gap: 1.5vw;
    }

    #calc .calc-tooltip-icon svg {
        width: 4vw;
        height: 4vw;
    }

    #calc .calc-tooltip-content {
        position: fixed;
        top: 14vh;
        left: 4vw;
        right: 4vw;
        bottom: auto !important;
        transform: none;
        width: auto;
        max-height: 72vh;
        overflow: auto;
        box-sizing: border-box;
        font-size: 3vw;
        line-height: 1.35;
        padding: 3vw;
        border-radius: 2vw;
        z-index: 10000;
        pointer-events: auto;
        -webkit-overflow-scrolling: touch;
    }

    #calc .calc-tooltip-icon:hover .calc-tooltip-content {
        bottom: auto !important;
    }

    #calc .calc-tooltip-content::after {
        display: none;
    }

    #calc .calc-material-preview {
        gap: 2.2vw;
        margin: 3vw 0 1.5vw;
    }

    #calc .calc-material-preview__item {
        gap: 1.2vw;
        font-size: 2.45vw;
    }

    #calc .calc-material-preview__sample {
        width: 18vw;
        font-size: 4vw;
        box-shadow: 0 1.4vw 3vw rgba(0,0,0,0.14);
    }

    #calc .calc-material-preview__sample--white::after {
        right: -0.6vw;
        bottom: -0.4vw;
        width: 6vw;
        height: 6vw;
        box-shadow: -0.5vw -0.5vw 1vw rgba(0,0,0,0.12);
    }

    #calc .calc-material-preview__sample--clear {
        background-size: 100% 100%, 4.4vw 4.4vw;
    }

    #calc .calc-property-wrap {
        font-size: 3.5vw;
        padding: 2vw 4vw;
        border-radius: 5vw;
    }

    #calc .calc-price-sum {
        font-size: 3.5vw;
    }

    #calc .calc-price-discount {
        font-size: 3vw;
        padding: 1vw 2vw;
        border-radius: 3vw;
        width: 12vw;
    }

    #calc .calc-price-wrap {
        grid-template-columns: auto 12vw;
        min-width: 0;
        gap: 1vw;
    }

    #calc .calc-upload-wrap {
        max-width: 100%;
        gap: 4vw;
    }

    #calc .calc-input-wrap {
        padding: 6vw;
        border-radius: 2vw;
    }

    #calc textarea#story {
        font-size: 3.5vw;
        padding: 3vw;
        border-radius: 2vw;
        height: 20vw;
    }

    #calc input#calc-submit {
        font-size: 4vw;
        padding: 4vw;
        border-radius: 2vw;
    }

    #calc .calc-copy-btn {
        top: 4vw;
        right: 4vw;
    }
    
    #calc .calc-copy-btn svg {
        width: 6vw;
        height: 6vw;
    }
}
@media screen and (max-width: 768px) {
    #calc .calc-custom-inputs input[type="number"] {
        font-size: 3.5vw;
        padding: 2vw 4vw;
        border-radius: 5vw;
    }
}

/* WooCommerce Mobile Overrides */
@media screen and (max-width: 768px) {
    .woocommerce-custom-page-wrapper {
        padding: 4vw;
    }

    .woocommerce-cart .woocommerce,
    .woocommerce-checkout form.checkout {
        flex-direction: column;
        gap: 4vw;
    }

    .woocommerce-cart .cart-collaterals,
    .woocommerce-checkout #order_review_heading,
    .woocommerce-checkout #order_review {
        width: 100%;
        box-sizing: border-box;
    }

    .woocommerce table.shop_table tr.cart_item {
        display: flex;
        flex-direction: column;
        background: #fafafa;
        border-radius: 10px;
        margin-bottom: 4vw;
        padding: 4vw;
        position: relative;
    }

    .woocommerce table.shop_table tr.cart_item td {
        padding: 2vw 0;
        background: transparent;
    }

    .woocommerce table.shop_table .product-remove {
        position: absolute;
        top: 2vw;
        right: 2vw;
        padding: 0 !important;
    }

    .woocommerce table.shop_table .product-thumbnail {
        width: 100%;
        text-align: left;
    }

    .woocommerce table.shop_table .product-thumbnail img {
        width: 20vw;
    }

    .woocommerce table.shop_table .product-name {
        font-size: 4vw;
    }

    .woocommerce table.shop_table .quantity input.qty {
        width: 100%;
    }
}


/* Mobile overrides for cart */



@media screen and (max-width: 768px) {
    .woocommerce-cart .woocommerce,
    .woocommerce-checkout form.checkout {
        flex-direction: column !important;
        gap: 4vw !important;
    }

    .woocommerce-cart .cart-collaterals,
    .woocommerce-checkout #order_review_heading,
    .woocommerce-checkout #order_review {
        width: 100% !important;
        padding: 6vw !important;
    }

    .woocommerce table.shop_table tr.cart_item {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 15px !important;
        padding: 6vw !important;
    }

    .woocommerce table.shop_table .product-thumbnail {
        order: 1 !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        aspect-ratio: 1/1 !important;
    }

    .woocommerce table.shop_table .product-name {
        order: 2 !important;
        width: 100% !important;
    }

    .woocommerce table.shop_table dl.variation {
        justify-content: flex-start !important;
    }

    .woocommerce table.shop_table .product-quantity {
        order: 3 !important;
        width: 100% !important;
    }

    .woocommerce table.shop_table .quantity input.qty {
        width: 100% !important;
    }

    .woocommerce table.shop_table .product-subtotal {
        order: 4 !important;
        width: 100% !important;
        text-align: left !important;
    }

    .woocommerce table.shop_table .product-remove {
        position: absolute !important;
        top: 4vw !important;
        right: 4vw !important;
        order: unset !important;
    }

    .woocommerce form .form-row.form-row-first,
    .woocommerce form .form-row.form-row-last {
        width: 100% !important;
        float: none !important;
    }
}
@media (max-width: 768px) {
  .woocommerce-custom-page-wrapper { padding: 16px; }
  .lipko-cart, .lipko-checkout { grid-template-columns: 1fr; }
  .lipko-cart__summary, .lipko-checkout__right { position: static; }

  .lipko-cart-item {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px;
  }
  .lipko-cart-item__thumb { width: 100%; height: auto; aspect-ratio: 1/1; }
  .lipko-cart-item__layout-file { gap: 8px; padding: 10px; }
  .lipko-cart-item__layout-file-icon { font-size: 14px; line-height: 16px; border-radius: 6px; padding: 4px 8px; }
  .lipko-cart-item__layout-file-icon--ext { min-width: 56px; }
  .lipko-cart-item__layout-file--fallback { padding-bottom: 22px; }
  .lipko-cart-item__layout-file-name,
  .lipko-cart-item__layout-upload span { font-size: 14px; line-height: 18px; }
  .lipko-cart-item__layout-sample-info { border-radius: 10px; }
  .lipko-cart-item__layout-sample-icon { width: 20px; height: 20px; }
  .lipko-cart-item__layout-upload-icon { width: 20px; height: 20px; }
  .lipko-cart-item__layout-upload.is-has-file .lipko-cart-item__layout-replace { font-size: 12px; line-height: 14px; padding: 4px 8px; }
  .lipko-cart-item__subtotal { text-align: left; }

  .lipko-cart-item__title a,
  .lipko-cart-item__title { font-size: 20px; line-height: 24px; }

  .lipko-summary-promo { margin-top: 12px; }
  .lipko-summary-promo__form { grid-template-columns: 1fr; gap: 8px; }
  .lipko-summary-promo__form input[type="text"],
  .lipko-summary-promo__form button { height: 44px; border-radius: 10px; font-size: 14px; line-height: 18px; }
  .lipko-summary-promo__form input[type="text"] { padding: 10px 12px; }
  .lipko-summary-promo__form button { padding: 0 14px; }

  .lipko-cart__summary h3,
  .lipko-checkout-card h3,
  .lipko-checkout__right h3 { font-size: 28px; line-height: 32px; }
}

/* Keep mobile cart/checkout overrides from breaking My Account layout */
@media (max-width: 768px) {
  body.woocommerce-account-auth-page .woocommerce {
    display: grid !important;
  }

  body.woocommerce-account-auth-page .woocommerce-MyAccount-navigation,
  body.woocommerce-account-auth-page .woocommerce-MyAccount-content {
    width: 100% !important;
    float: none !important;
  }

  body.woocommerce-account-auth-page .woocommerce table.shop_table tr,
  body.woocommerce-account-auth-page .woocommerce table.shop_table tbody tr {
    display: table-row !important;
  }

  body.woocommerce-account-auth-page .woocommerce table.shop_table td,
  body.woocommerce-account-auth-page .woocommerce table.shop_table th {
    display: table-cell !important;
    width: auto !important;
  }

  body.woocommerce-account-auth-page .woocommerce .form-row-first,
  body.woocommerce-account-auth-page .woocommerce .form-row-last {
    width: 100% !important;
    float: none !important;
  }
}

/* Checkout compact overrides */
.lipko-checkout {
  gap: 0.25vw !important;
}

.lipko-checkout__left {
  gap: 0.25vw !important;
}

.lipko-checkout__left > section {
  gap: 0.25vw !important;
}

.lipko-checkout-card,
.lipko-checkout__right {
  padding: 1.25vw !important;
}

.lipko-checkout-card--payment {
  display: none !important;
}

.lipko-checkout-card h3,
.lipko-checkout__right h3 {
  margin-bottom: 0.45vw !important;
}

.lipko-checkout .woocommerce form .form-row {
  margin-bottom: 0.4vw !important;
}

.lipko-checkout .woocommerce form .form-row input.input-text,
.lipko-checkout .woocommerce form .form-row select,
.lipko-checkout .woocommerce form .form-row textarea,
.lipko-checkout .shipping-method-details .address-field-wrapper .input-text {
  height: 0.195vw !important;
  padding: 0.05vw 0.1vw !important;
  font-size: 0.812vw !important;
  line-height: 1vw !important;
}

.lipko-checkout .woocommerce form .form-row textarea {
  min-height: 0.4vw !important;
}

.lipko-checkout-fields .woocommerce-billing-fields__field-wrapper input.input-text {
  height: 0.195vw !important;
  padding: 0.05vw 0.1vw !important;
  font-size: 0.812vw !important;
  line-height: 1vw !important;
}

.lipko-checkout .woocommerce form .form-row label {
  margin-bottom: 0.12vw !important;
}

.lipko-checkout .lipko-checkout-shipping-table .woocommerce-shipping-methods,
.lipko-checkout .lipko-checkout-card--payment #payment .wc_payment_methods {
  gap: 0.16vw !important;
}

.lipko-checkout .lipko-checkout-shipping-table .woocommerce-shipping-methods li,
.lipko-checkout .lipko-checkout-card--payment #payment .wc_payment_method {
  gap: 0.24vw !important;
  padding: 0.24vw 0.36vw !important;
}

.lipko-checkout .lipko-checkout-pickup-note,
.lipko-checkout .shipping-method-details {
  margin-top: 0.24vw !important;
  padding: 0.3vw 0.4vw !important;
}

.lipko-checkout .lipko-cdek-map-btn,
#place_order {
  margin-top: 0.28vw !important;
  border-radius: 1.2vw !important;
  padding: 0.38vw !important;
  font-size: 0.7vw !important;
  line-height: 0.9vw !important;
}

@media (min-width: 769px) and (max-width: 1024px) {
  .lipko-checkout {
    gap: 0.8vw !important;
  }

  .lipko-checkout-card,
  .lipko-checkout__right {
    padding: 1.1vw !important;
  }

  .lipko-checkout-card h3,
  .lipko-checkout__right h3 {
    margin-bottom: 0.8vw !important;
  }

  .lipko-checkout .woocommerce form .form-row {
    margin-bottom: 0.7vw !important;
  }

  .lipko-checkout .woocommerce form .form-row input.input-text,
  .lipko-checkout .woocommerce form .form-row select,
  .lipko-checkout .shipping-method-details .address-field-wrapper .input-text {
    height: 0.4vw !important;
    padding: 0 0.21vw !important;
    font-size: 1.8vw !important;
    line-height: 2.4vw !important;
  }

  .lipko-checkout .woocommerce form .form-row textarea {
    min-height: 1.06vw !important;
    padding: 0.2vw 0.21vw !important;
    font-size: 1.8vw !important;
    line-height: 2.4vw !important;
  }

  .lipko-checkout-fields .woocommerce-billing-fields__field-wrapper input.input-text {
    height: 0.4vw !important;
    padding: 0 0.21vw !important;
    font-size: 1.8vw !important;
    line-height: 2.4vw !important;
  }

  .lipko-checkout .lipko-checkout-shipping-table .woocommerce-shipping-methods,
  .lipko-checkout .lipko-checkout-card--payment #payment .wc_payment_methods {
    gap: 0.45vw !important;
  }

  .lipko-checkout .lipko-checkout-shipping-table .woocommerce-shipping-methods li,
  .lipko-checkout .lipko-checkout-card--payment #payment .wc_payment_method {
    gap: 0.55vw !important;
    padding: 0.6vw 0.8vw !important;
  }

  .lipko-checkout .lipko-cdek-map-btn,
  #place_order {
    margin-top: 0.45vw !important;
    border-radius: 2.2vw !important;
    padding: 0.6vw !important;
    font-size: 1.5vw !important;
    line-height: 2vw !important;
  }
}

@media (max-width: 768px) {
  .lipko-checkout {
    gap: 0.9vw !important;
  }

  .lipko-checkout__left {
    gap: 0.9vw !important;
  }

  .lipko-checkout-card,
  .lipko-checkout__right {
    padding: 2vw !important;
  }

  .lipko-checkout-card h3,
  .lipko-checkout__right h3 {
    margin-bottom: 1.2vw !important;
    font-size: 4.2vw !important;
    line-height: 4.8vw !important;
  }

  .lipko-checkout .woocommerce form .form-row {
    margin-bottom: 1vw !important;
  }

  .lipko-checkout .woocommerce form .form-row input.input-text,
  .lipko-checkout .woocommerce form .form-row select,
  .lipko-checkout .shipping-method-details .address-field-wrapper .input-text {
    height: 0.875vw !important;
    padding: 0 0.55vw !important;
    font-size: 3.5vw !important;
    line-height: 4.24vw !important;
  }

  .lipko-checkout .woocommerce form .form-row textarea {
    min-height: 1.75vw !important;
    padding: 0.4vw 0.55vw !important;
    font-size: 3.5vw !important;
    line-height: 4.24vw !important;
  }

  .lipko-checkout-fields .woocommerce-billing-fields__field-wrapper input.input-text {
    height: 0.875vw !important;
    padding: 0 0.55vw !important;
    font-size: 3.5vw !important;
    line-height: 4.24vw !important;
  }

  .lipko-checkout .woocommerce form .form-row label {
    margin-bottom: 0.55vw !important;
    font-size: 2.6vw !important;
    line-height: 3.1vw !important;
  }

  .lipko-checkout .lipko-checkout-shipping-table .woocommerce-shipping-methods,
  .lipko-checkout .lipko-checkout-card--payment #payment .wc_payment_methods {
    gap: 0.7vw !important;
  }

  .lipko-checkout .lipko-checkout-shipping-table .woocommerce-shipping-methods li,
  .lipko-checkout .lipko-checkout-card--payment #payment .wc_payment_method {
    gap: 0.9vw !important;
    padding: 1.05vw 1.35vw !important;
  }

  .lipko-checkout .lipko-cdek-map-btn,
  #place_order {
    margin-top: 0.8vw !important;
    border-radius: 5vw !important;
    padding: 1.1vw !important;
    font-size: 4vw !important;
    line-height: 5vw !important;
  }
}

@media (max-width: 768px) {
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea,
  .woocommerce form .form-row select {
    height: 9vw;
    border-radius: 2vw !important;
    padding: 3vw 2.8vw !important;
    font-size: 3.6vw;
    line-height: 4.4vw;
  }
}

/* Shipping methods reference redesign */
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-methods-wrap {
  margin-top: 0 !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.6vw !important;
  margin: 0 !important;
  padding: 0 !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li {
  position: relative;
  display: flex !important;
  align-items: flex-start !important;
  min-height: 4.75vw;
  border-radius: 0.85vw !important;
  background: #fff !important;
  border: 0.06vw solid #eceff3;
  padding: 0.72vw 0.72vw 0.72vw 0.8vw !important;
  box-sizing: border-box;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods .shipping_method {
  position: absolute;
  right: 0.6vw;
  bottom: 0.6vw;
  width: 0.68vw;
  height: 0.68vw;
  margin: 0 !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label {
  display: block;
  margin: 0 !important;
  padding-right: 1.05vw;
  font-family: "cera-pro-bold";
  font-size: 0.86vw !important;
  line-height: 0.9vw !important;
  color: #111827 !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .lipko-shipping-meta {
  display: block;
  margin-top: 0.34vw;
  font-family: "cera-pro-regular";
  font-size: 0.72vw !important;
  line-height: 0.79vw !important;
  color: #9ca3af !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount,
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount bdi,
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-currencySymbol {
  font-family: "cera-pro-regular" !important;
  font-size: 0.72vw !important;
  line-height: 0.79vw !important;
  color: #9ca3af !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount {
  display: block;
  margin-top: 0.34vw;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .lipko-shipping-price {
  display: block;
  margin-top: 0.34vw;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .lipko-shipping-price .woocommerce-Price-amount {
  display: inline;
  margin-top: 0;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount bdi,
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-currencySymbol {
  display: inline;
  margin-top: 0;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li:has(.shipping_method:checked) {
  background: #adeb02 !important;
  border-color: #adeb02 !important;
  box-shadow: none !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li:has(.shipping_method:checked) label,
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li:has(.shipping_method:checked) label .woocommerce-Price-amount,
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li:has(.shipping_method:checked) label .woocommerce-Price-amount bdi,
.lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li:has(.shipping_method:checked) label .woocommerce-Price-currencySymbol {
  color: #2A2A2D !important;
}

.lipko-checkout-card--shipping-methods .lipko-checkout-pickup-note,
.lipko-checkout-card--shipping-methods .shipping-method-details {
  margin-top: 0.9vw !important;
  border: 0.06vw solid #e6e8ec;
  border-radius: 0.85vw;
  background: #fff;
  padding: 0.9vw 1.05vw !important;
}

.lipko-checkout-card--shipping-methods .lipko-cdek-selected-point {
  margin-top: 0.9vw !important;
  border: 0.06vw solid #e6e8ec;
  border-radius: 0.85vw;
  background: #fff;
  padding: 0.9vw 1.05vw !important;
}

.lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__title {
  font-family: "bounded-semibold";
  font-size: 0.85vw;
  line-height: 1vw;
  color: #2A2A2D;
  margin-bottom: 0.4vw;
}

.lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__row {
  display: flex;
  gap: 0.3vw;
  font-family: "cera-pro-regular";
  font-size: 0.72vw;
  line-height: 0.9vw;
  color: #2A2A2D;
}

.lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__row + .lipko-cdek-selected-point__row {
  margin-top: 0.22vw;
}

.lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__row strong {
  font-family: "cera-pro-bold";
  font-weight: 400;
}

.lipko-checkout-card--shipping-methods #billing_main_address {
  background: #fff !important;
  border: 1px solid #d8dce2 !important;
  border-radius: 0.45vw !important;
  height: 1.85vw !important;
  padding: 0.73vw 0.5vw !important;
  box-sizing: border-box;
  font-family: "cera-pro-regular" !important;
  font-size: 0.65vw !important;
  line-height: 0.8vw !important;
  color: #2a2a2d !important;
}

.lipko-checkout-card--shipping-methods #billing_main_address:focus {
  border-color: #9aa3ad !important;
  outline: none;
  box-shadow: none !important;
}

.lipko-checkout-card--shipping-methods .lipko-cdek-map-btn {
  margin-top: 0.28vw !important;
  border-radius: 1.2vw !important;
  padding: 0.38vw !important;
  background: #191f27 !important;
  color: #fff !important;
  font-size: 0.7vw !important;
  line-height: 0.9vw !important;
}

@media (max-width: 768px) {
  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2vw !important;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods li {
    min-height: 23vw;
    border-radius: 2.6vw !important;
    border-width: 0.25vw;
    padding: 2.8vw 2.8vw 2.6vw 3.1vw !important;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label {
    padding-right: 5vw;
    font-size: 4.2vw !important;
    line-height: 4.5vw !important;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .lipko-shipping-meta {
    margin-top: 1.5vw;
    font-size: 3.6vw !important;
    line-height: 3.9vw !important;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount,
  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount bdi,
  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-currencySymbol {
    font-size: 3.6vw !important;
    line-height: 3.9vw !important;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .woocommerce-Price-amount {
    margin-top: 1.5vw;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .lipko-shipping-price {
    margin-top: 1.5vw;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods label .lipko-shipping-price .woocommerce-Price-amount {
    margin-top: 0;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-shipping-table .woocommerce-shipping-methods .shipping_method {
    right: 2.4vw;
    bottom: 2.4vw;
    width: 3.3vw;
    height: 3.3vw;
  }

  .lipko-checkout-card--shipping-methods .lipko-checkout-pickup-note,
  .lipko-checkout-card--shipping-methods .shipping-method-details,
  .lipko-checkout-card--shipping-methods .lipko-cdek-selected-point {
    margin-top: 2.2vw !important;
    border-width: 0.25vw;
    border-radius: 2.6vw;
    padding: 2.5vw 2.8vw !important;
  }

  .lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__title {
    font-size: 3.2vw;
    line-height: 3.8vw;
    margin-bottom: 1.3vw;
  }

  .lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__row {
    gap: 1vw;
    font-size: 2.8vw;
    line-height: 3.4vw;
  }

  .lipko-checkout-card--shipping-methods .lipko-cdek-selected-point__row + .lipko-cdek-selected-point__row {
    margin-top: 0.7vw;
  }

  .lipko-checkout-card--shipping-methods .lipko-cdek-map-btn {
    margin-top: 2.2vw !important;
    border-radius: 4vw !important;
    padding: 2.2vw 2.8vw !important;
    font-size: 3.4vw !important;
    line-height: 4.2vw !important;
  }

  .lipko-checkout-card--shipping-methods #billing_main_address {
    border-radius: 2vw !important;
    height: 11vw !important;
    padding: 3vw 2.8vw !important;
    font-size: 3.6vw !important;
    line-height: 4.4vw !important;
  }
}

/* Coupon block inside right order summary (after bonus row) */
.lipko-order-review__coupon {
  margin-top: 0.75vw;
}

.lipko-order-review__coupon .woocommerce-form-coupon-toggle {
  margin: 0 0 0.6vw;
}

.lipko-order-review__coupon .woocommerce-form-coupon-toggle .woocommerce-info {
  margin: 0 !important;
  padding: 0.6vw 0.75vw !important;
  border: 1px solid #f1f1f1 !important;
  border-radius: 0.55vw !important;
  background: #fafafa !important;
  font-size: 0.7vw !important;
  line-height: 0.95vw !important;
}

.lipko-order-review__coupon .woocommerce-form-coupon-toggle .woocommerce-info::before {
  display: none !important;
}

.lipko-order-review__coupon .woocommerce-form-coupon-toggle .showcoupon {
  white-space: nowrap;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon {
  margin: 0 !important;
  padding: 0.75vw !important;
  border: 1px solid #f1f1f1 !important;
  border-radius: 0.55vw !important;
  background: #fafafa !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5vw;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon > p:first-child {
  margin: 0 0 0.55vw;
  width: 100%;
  flex: 0 0 100%;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .form-row {
  margin: 0 !important;
  float: none !important;
  clear: none !important;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-first {
  width: auto !important;
  flex: 1 1 auto;
  min-width: 0;
  padding-right: 0 !important;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
  width: 100% !important;
  flex: 0 0 100%;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .input-text {
  height: 2.2vw !important;
  border-radius: 0.45vw !important;
  padding: 0.4vw 0.65vw !important;
  font-size: 0.65vw !important;
  line-height: 0.8vw !important;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .button,
.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon button.button {
  width: 100% !important;
  height: 2.2vw !important;
  border-radius: 2vw !important;
  padding: 0.4vw 0.75vw !important;
  font-size: 0.65vw !important;
  line-height: 0.85vw !important;
}

.lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .clear {
  display: none !important;
}

@media (max-width: 768px) {
  .lipko-order-review__coupon {
    margin-top: 2.2vw;
  }

  .lipko-order-review__coupon .woocommerce-form-coupon-toggle {
    margin: 0 0 1.8vw;
  }

  .lipko-order-review__coupon .woocommerce-form-coupon-toggle .woocommerce-info {
    padding: 2.2vw 2.6vw !important;
    border-radius: 2vw !important;
    font-size: 3.2vw !important;
    line-height: 4.1vw !important;
  }

  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon {
    padding: 2.4vw !important;
    border-radius: 2vw !important;
  }

  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon > p:first-child {
    margin-bottom: 1.8vw;
    font-size: 3.2vw !important;
    line-height: 4.1vw !important;
  }

  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-first,
  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
    width: 100% !important;
    flex: 0 0 100%;
    padding-right: 0 !important;
  }

  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last {
    margin-top: 1.6vw !important;
  }

  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .input-text {
    height: 9vw !important;
    border-radius: 2vw !important;
    padding: 0 2.8vw !important;
    font-size: 3.6vw !important;
    line-height: 4.4vw !important;
  }

  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon .button,
  .lipko-order-review__coupon form.checkout_coupon.woocommerce-form-coupon button.button {
    height: 9vw !important;
    border-radius: 12vw !important;
    padding: 0 3vw !important;
    font-size: 3.2vw !important;
    line-height: 4vw !important;
  }
}

/* My account orders: compact action buttons */
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button {
  min-height: 1.4vw !important;
  padding: 0.24vw 0.48vw !important;
  border-radius: 0.8vw !important;
  font-size: 0.42vw !important;
  line-height: 0.56vw !important;
  width: auto;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35vw;
  align-items: center;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  justify-content: flex-start;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table th,
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table td,
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell {
  vertical-align: middle !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions {
  vertical-align: middle !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button.track {
  background: #fafafa !important;
  color: #2a2a2d !important;
  border: 0.06vw solid #dfe3e5 !important;
}

@media (max-width: 768px) {
  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions {
    gap: 1.2vw;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 8vw;
    align-items: center !important;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions::before {
    margin: 0 !important;
    align-self: center;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button {
    min-height: 4.8vw !important;
    padding: 0.94vw 1.48vw !important;
    border-radius: 2.66vw !important;
    font-size: 1.66vw !important;
    line-height: 2.14vw !important;
    width: auto;
  }
}

/* My account orders flex layout */
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-list {
  display: flex;
  flex-direction: column;
  gap: 0.8vw;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-title {
  margin: 0 0 0.8vw;
  font-family: "bounded-semibold", sans-serif;
  font-size: 1.2vw;
  line-height: 1.4vw;
  color: #2a2a2d;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65vw 1vw;
  padding: 0.8vw;
  border: 0.06vw solid #eceef0;
  border-radius: 0.75vw;
  background: #fff;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell {
  flex: 1 1 12vw;
  min-width: 9vw;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__label {
  margin-bottom: 0.2vw;
  font-family: "cera-pro-regular", sans-serif;
  font-size: 0.58vw;
  line-height: 0.78vw;
  color: #808082;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__value {
  font-family: "cera-pro-regular", sans-serif;
  font-size: 0.64vw;
  line-height: 0.84vw;
  color: #2a2a2d;
  display: flex;
  gap: 0.5vw;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__value a {
  color: #2a2a2d;
  text-decoration: none;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell-order-actions .lipko-orders-item__value {
  display: flex;
  flex-wrap: nowrap;
  gap: 0;
  position: relative;
  overflow: visible;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown {
  position: relative;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__toggle {
  min-height: 1.7vw !important;
  padding: 0.3vw 0.75vw !important;
  border-radius: 999px !important;
  border: 0.06vw solid #d9dee6 !important;
  background: #ffffff !important;
  color: #2a2a2d !important;
  font-family: "cera-pro-regular", sans-serif !important;
  font-size: 0.5vw !important;
  line-height: 0.68vw !important;
  display: inline-flex;
  align-items: center;
  gap: 0.28vw;
  box-shadow: 0 0.12vw 0.34vw rgba(42, 42, 45, 0.08);
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__toggle::after {
  content: "";
  width: 0.35vw;
  height: 0.35vw;
  border-right: 0.08vw solid #7f838a;
  border-bottom: 0.08vw solid #7f838a;
  transform: rotate(45deg) translateY(-0.04vw);
  transition: transform 0.18s ease, border-color 0.18s ease;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown.is-open .lipko-order-actions-dropdown__toggle::after {
  transform: rotate(-135deg) translateY(-0.02vw);
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__menu {
  position: absolute;
  top: calc(100% + 0.38vw);
  right: 0;
  z-index: 20;
  min-width: 11.4vw;
  display: flex;
  flex-direction: column;
  gap: 0.2vw;
  padding: 0.34vw;
  border: 0.06vw solid #e3e7ed;
  border-radius: 0.75vw;
  background: #fff;
  box-shadow: 0 0.6vw 1.7vw rgba(42, 42, 45, 0.14);
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__menu[hidden] {
  display: none !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__item {
  width: 100%;
  margin: 0 !important;
  text-align: left;
  border-radius: 0.5vw !important;
  border: 0.06vw solid transparent !important;
  background: #fff !important;
  color: #2a2a2d !important;
  font-family: "cera-pro-regular", sans-serif !important;
  font-size: 0.5vw !important;
  line-height: 0.68vw !important;
  padding: 0.35vw 0.5vw !important;
  min-height: 1.52vw !important;
  box-shadow: none !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__item:hover {
  background: #fafafa !important;
  border-color: #e3e7ed !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__item.view,
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__item.pay,
body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__item.reorder {
  background: #f9ffea !important;
  border-color: #d9e8a8 !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell-order-actions .button.view {
  background: #adeb02 !important;
  border-color: #adeb02 !important;
  color: #2a2a2d !important;
}

body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell-order-actions .button.track {
  background: #fafafa !important;
  border: 0.06vw solid #dfe3e5 !important;
  color: #2a2a2d !important;
}

@media (max-width: 768px) {
  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-list {
    gap: 2.2vw;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-title {
    margin-bottom: 2.2vw;
    font-size: 4.4vw;
    line-height: 5.2vw;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item {
    gap: 1.6vw 2vw;
    padding: 2.6vw;
    border-width: 0.24vw;
    border-radius: 2.2vw;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell {
    flex: 1 1 calc(50% - 1vw);
    min-width: calc(50% - 1vw);
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell-order-actions {
    flex: 1 1 100%;
    min-width: 100%;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__label {
    margin-bottom: 0.7vw;
    font-size: 2.2vw;
    line-height: 2.9vw;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__value {
    font-size: 2.5vw;
    line-height: 3.2vw;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-orders-item__cell-order-actions .lipko-orders-item__value {
    gap: 0;
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__toggle {
    min-height: 6.8vw !important;
    padding: 1.3vw 2.8vw !important;
    border-radius: 7vw !important;
    border-width: 0.24vw !important;
    font-size: 2.5vw !important;
    line-height: 3.25vw !important;
    gap: 1.3vw;
    box-shadow: 0 0.4vw 1.1vw rgba(42, 42, 45, 0.1);
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__toggle::after {
    width: 1.3vw;
    height: 1.3vw;
    border-right-width: 0.26vw;
    border-bottom-width: 0.26vw;
    transform: rotate(45deg) translateY(-0.08vw);
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__menu {
    top: calc(100% + 1.2vw);
    right: auto;
    left: 0;
    min-width: 60vw;
    gap: 0.7vw;
    padding: 1vw;
    border-width: 0.24vw;
    border-radius: 2.4vw;
    box-shadow: 0 2.6vw 5vw rgba(42, 42, 45, 0.16);
  }

  body.woocommerce-account-auth-page.logged-in.woocommerce-orders .woocommerce-MyAccount-content .lipko-order-actions-dropdown__item {
    border-radius: 1.7vw !important;
    border-width: 0.24vw !important;
    font-size: 2.45vw !important;
    line-height: 3.2vw !important;
    min-height: 6.4vw !important;
    padding: 1.3vw 2vw !important;
  }
}

/* Mobile cart: keep layout upload visible and compact */
@media (max-width: 768px) {
  .lipko-cart-item {
    display: grid !important;
    grid-template-columns: 88px minmax(0, 1fr) !important;
    grid-template-areas:
      "thumb info"
      "thumb qty"
      "thumb subtotal"
      "remove remove" !important;
    column-gap: 12px !important;
    row-gap: 8px !important;
    align-items: start !important;
    padding: 12px !important;
  }

  .lipko-cart-item__thumb {
    display: flex !important;
    grid-area: thumb !important;
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
    aspect-ratio: auto !important;
    border-radius: 10px !important;
    overflow: hidden !important;
  }

  .lipko-cart-item__info { grid-area: info !important; min-width: 0; }
  .lipko-cart-item__qty { grid-area: qty !important; }
  .lipko-cart-item__subtotal { grid-area: subtotal !important; text-align: left !important; }
  .lipko-cart-item__remove { grid-area: remove !important; justify-self: end !important; }

  .lipko-cart-item__layout-upload {
    width: 100% !important;
    height: 100% !important;
    min-height: 88px !important;
    border-radius: 10px !important;
  }

  .lipko-cart-item__layout-file {
    gap: 6px !important;
    padding: 8px 6px 20px !important;
  }

  .lipko-cart-item__layout-file-icon {
    font-size: 11px !important;
    line-height: 12px !important;
    border-radius: 6px !important;
    padding: 4px 8px !important;
  }

  .lipko-cart-item__layout-file-icon--ext {
    min-width: 52px !important;
  }

  .lipko-cart-item__layout-file-name,
  .lipko-cart-item__layout-upload span {
    font-size: 12px !important;
    line-height: 14px !important;
  }

  .lipko-cart-item__layout-upload.is-has-file .lipko-cart-item__layout-replace {
    font-size: 11px !important;
    line-height: 13px !important;
    padding: 4px 6px !important;
  }
}


/* ============================================================================
   RESPONSIVE OVERHAUL  (appended 2026-05-29)
   Goal: keep the 1920px design identical, but make every width fluid & legible.
   Method: clamp(min, <original vw>, max)  → at 1920 the vw value is in-range, so
   the desktop look is preserved; narrow widths hit the floor (readable), huge
   widths hit the cap. Layout reflow lives in the @media cascade below.
   This block is appended LAST so it wins at equal specificity over the base rules.
   ============================================================================ */

/* ---- 0. Foundation -------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
img, svg, video, canvas { max-width: 100%; }
html, body { overflow-x: clip; }

/* ---- 1. Fluid global content column -------------------------------------- */
.container-wrap { width: min(60vw, 1600px); }
@media (max-width: 1600px) { .container-wrap { width: 66vw; } }
@media (max-width: 1280px) { .container-wrap { width: 82vw; } }
@media (max-width: 1024px) { .container-wrap { width: 88vw; } }
@media (max-width: 768px)  { .container-wrap { width: 90vw; } }
@media (max-width: 480px)  { .container-wrap { width: 92vw; } }
/* readable vertical rhythm between sections at all widths */
section { gap: clamp(28px, 2vw, 56px); }

/* ---- 2. CARDS (#cards) — fonts here; per-card geometry handled in cards.php */
#cards .card-content h2 { font-size: clamp(18px, 1.5vw, 30px); line-height: 1.2; }
#cards .card-content h3 { font-size: clamp(15px, 0.85vw, 18px); line-height: 1.25; }
#cards .card-content p  { font-size: clamp(13px, 0.7vw, 16px); line-height: 1.45; }
#cards .card-button     { font-size: clamp(13px, 0.75vw, 16px); line-height: 1.1;
                          padding: clamp(10px, 1vw, 18px) clamp(14px, 1.4vw, 24px);
                          border-radius: 999px; }
#cards .card-wrap       { padding: clamp(16px, 1.5vw, 30px); border-radius: clamp(8px, 0.5vw, 12px);
                          gap: clamp(10px, 1vw, 20px); }

/* ---- 3. FIRST / hero (#first) -------------------------------------------- */
#first .container-wrap { height: auto; min-height: clamp(260px, 22vw, 460px);
                         padding: clamp(18px, 2vw, 40px); gap: clamp(12px, 1.5vw, 28px); }
#first.is-small .container-wrap { min-height: clamp(150px, 11vw, 230px); }
#first h1 { font-size: clamp(24px, 2.75vw, 54px); line-height: 1.1; max-width: min(33vw, 92%); }
#first h2 { font-size: clamp(13px, 0.75vw, 16px); line-height: 1.4; max-width: min(26vw, 92%); margin-top: 0; }
#first .offer-item  { font-size: clamp(11px, 0.75vw, 14px); padding: clamp(6px,0.45vw,10px) clamp(10px,0.75vw,16px); border-radius: 999px; }
#first .button-wrap { font-size: clamp(13px, 0.75vw, 16px); line-height: 1.1; padding: clamp(10px,1vw,18px) clamp(16px,1.4vw,26px); border-radius: 999px; }
#first .buttons-wrap, #first .offer-wrap { gap: clamp(8px, 1vw, 18px); flex-wrap: wrap; }

/* ---- 4. CATEGORIES (#categories) ----------------------------------------- */
#categories .category-wrap { height: auto; min-height: clamp(78px, 7vw, 140px);
                             padding: clamp(12px,1vw,20px); border-radius: clamp(8px,0.5vw,12px);
                             gap: clamp(4px,0.5vw,10px); }
#categories .category-title { font-size: clamp(13px, 0.75vw, 17px); line-height: 1.2; max-width: min(7vw, 70%); }
#categories .category-text  { font-size: clamp(11px, 0.6vw, 14px); line-height: 1.3; }
#categories .category-img   { width: clamp(56px, 6.5vw, 124px); height: clamp(56px, 6.5vw, 124px); }
#categories:not(.categories-term-19) .category-wrap--wide-image .category-img { width: clamp(80px,9.2vw,176px); height: clamp(52px,5.9vw,113px); }
/* Wide artwork (tablet/desktop only — phones keep their own rules further below):
   the box takes the image's NATURAL height (height:auto on box and img) pinned flush
   to the card's bottom-right corner (right:0 / bottom:0), so the artwork sits on the
   edge with no gap. The width is CARD-RELATIVE (a % of the card) rather than a vw of
   the viewport: `max(60%, 10vw)` takes the LARGER of a card-relative share or the old
   viewport size, so the wide home-page cards (where the old vw cap left the picture
   small with empty space) get a noticeably bigger image, while the tighter category-
   archive cards keep their previous size and never collide with the longest title. */
@media (min-width: 769px) {
  #categories:not(.categories-term-19) .category-wrap--wide-image .category-img {
    top: auto;
    right: 0;
    bottom: 0;
    margin: 0;
    width: clamp(120px, max(60%, 10vw), 250px);
    height: auto;
  }
  #categories:not(.categories-term-19) .category-wrap--wide-image .category-img img {
    height: auto;
    object-fit: contain;
    object-position: right bottom;
  }
  /* The home page (front page) cards are far wider than the category-archive cards,
     so the shared max(60%, 10vw) above enlarged the artwork too much there ("перебор").
     Cap it noticeably smaller on the home page only (body.home) — this keeps the home
     images about the same modest size as the category-archive cards, which stay on the
     rule above. Higher specificity (body.home …) wins without !important. */
  body.home #categories:not(.categories-term-19) .category-wrap--wide-image .category-img {
    width: clamp(120px, 52%, 200px);
  }
}
.categories-with-banner .banner-title { font-size: clamp(13px, 0.75vw, 17px); line-height: 1.2; }
.categories-with-banner .banner-desc  { font-size: clamp(11px, 0.6vw, 14px); line-height: 1.3; }

/* ---- 5. FAQ (#faq) -------------------------------------------------------- */
#faq .faq-item     { width: calc(50% - 0.5vw); padding: clamp(14px,1vw,22px); border-radius: clamp(10px,1vw,18px); gap: clamp(8px,0.75vw,14px); }
#faq .faq-question { font-size: clamp(15px, 1vw, 20px); line-height: 1.3; }
#faq .faq-answer   { font-size: clamp(13px, 0.75vw, 16px); line-height: 1.45; }
#faq .faq-btn      { width: clamp(22px, 1.25vw, 28px); height: clamp(22px, 1.25vw, 28px); top: clamp(12px,1vw,18px); right: clamp(12px,1vw,18px); }

/* ---- 6. REVIEWS (#reviews) ----------------------------------------------- */
#reviews .review-wrap   { height: auto; min-height: clamp(220px, 16vw, 320px); padding: clamp(12px,1vw,20px); border-radius: clamp(10px,1vw,18px); gap: clamp(6px,0.5vw,12px); }
#reviews .review-title  { font-size: clamp(13px, 0.7vw, 16px); line-height: 1.3; }
#reviews .review-text   { font-size: clamp(12px, 0.62vw, 15px); line-height: 1.45; }
#reviews .review-date   { font-size: clamp(11px, 0.5vw, 13px); line-height: 1.3; }
#reviews .review-product{ font-size: clamp(11px, 0.55vw, 13px); white-space: normal; max-width: 100%; }
#reviews .review-img    { width: clamp(34px, 2vw, 44px); height: clamp(34px, 2vw, 44px); }
#reviews .review-photo img { height: clamp(120px, 5.5vw, 130px); }

/* ---- 7. PORTFOLIO (#portfolio) ------------------------------------------- */
#portfolio .portfolio-wrap { height: clamp(300px, 23vw, 460px); border-radius: clamp(8px,0.5vw,12px); }

/* ---- 8. HEADER ------------------------------------------------------------ */
#header { padding: clamp(10px, 1vw, 18px) 0; }
.logo-wrap { width: clamp(96px, 6.5vw, 140px); height: clamp(44px, 3vw, 62px); }
.menu-wrap .menu-item { font-size: clamp(12px, 0.65vw, 14px); line-height: 1.1; }
.sub-menu-wrap .sub-menu-item { font-size: clamp(12px, 0.6vw, 14px); padding: clamp(8px,0.5vw,12px) clamp(12px,1vw,18px); }
.menu-item-wrapper .sub-menu-wrap { top: clamp(24px, 1.75vw, 36px); border-radius: clamp(8px,0.5vw,12px); }
.menu-wrap .menu-item img, .menu-wrap .menu-item svg { width: clamp(14px,1.13vw,18px); height: auto; }
.contact-wrap { font-size: clamp(11px, 0.6vw, 13px); line-height: 1.3; }
.contact-wrap img, .contact-wrap svg { width: clamp(11px,0.6vw,14px); height: clamp(11px,0.6vw,14px); }
.cart-wrap img, .cart-wrap svg { width: clamp(22px, 1.25vw, 28px); height: clamp(22px, 1.25vw, 28px); }
.cart-count { width: clamp(15px,0.85vw,18px); height: clamp(15px,0.85vw,18px); left: clamp(10px,0.55vw,14px); font-size: clamp(10px,0.6vw,12px); }
.cart-sum-wrap { font-size: clamp(11px, 0.6vw, 13px); }
.user-wrap img, .user-wrap svg { width: clamp(22px, 1.25vw, 28px); height: clamp(22px, 1.25vw, 28px); }
.user-wrap img.header-user-menu__avatar { width: clamp(30px,1.875vw,38px) !important; height: clamp(30px,1.875vw,38px) !important; }
.header-user-menu__dropdown { width: clamp(220px, 12.8vw, 260px); padding: clamp(8px,0.5vw,12px); border-radius: clamp(10px,0.75vw,16px); }
.header-user-menu__name  { font-size: clamp(14px,0.88vw,17px); line-height: 1.2; }
.header-user-menu__email { font-size: clamp(11px,0.62vw,13px); line-height: 1.3; }
.header-user-menu__item  { font-size: clamp(13px,0.78vw,15px); line-height: 1.2; padding: clamp(7px,0.4vw,10px) clamp(6px,0.3vw,10px); border-radius: clamp(6px,0.36vw,9px); }
.header-group { gap: clamp(12px, 1.5vw, 28px); }
#header .container-wrap { gap: clamp(12px, 1.5vw, 28px); }

/* nav → burger switch (matches the theme's existing #burger @≤1280) */
.burger-wrap img, .burger-wrap svg { width: clamp(26px, 8.25vw, 38px) !important; height: clamp(26px, 8.25vw, 38px) !important; }
@media (max-width: 1280px) {
  /* scope to #header: the FOOTER also has a .contacts-wrap (the "Связаться"
     column) which must stay visible on phones. */
  #header .menu-wrap, #header .contacts-wrap { display: none !important; }
  .burger-wrap { display: flex !important; align-items: center; }
  /* tame the phone-calibrated burger-overlay vw values across the whole ≤1280 range */
  #burger { padding: clamp(40px, 8vw, 72px) 0; }
  #burger .container-wrap { width: min(90vw, 520px); gap: clamp(18px, 5vw, 34px); }
  #burger .burger-item { font-size: clamp(20px, 3.75vw, 30px); line-height: 1.3; }
  .burger-close { top: clamp(20px, 8vw, 40px); right: clamp(20px, 8vw, 40px); }
  .burger-close img, .burger-close svg { width: clamp(26px, 8.25vw, 40px); height: clamp(26px, 8.25vw, 40px); }
}

/* ---- 9. FOOTER ------------------------------------------------------------ */
#footer .container-wrap { margin-top: clamp(28px, 3vw, 56px); }
#footer .footer-row { padding: clamp(16px,1.5vw,28px) 0; gap: clamp(14px,1vw,24px); }
#footer .footer-col { gap: clamp(12px, 1.5vw, 22px); }
#footer .footer-title { font-size: clamp(13px, 0.78vw, 16px); line-height: 1.3; }
#footer .footer-text, #footer .footer-link { font-size: clamp(12px, 0.62vw, 14px); line-height: 1.4; }
#footer .footer-button { font-size: clamp(12px, 0.55vw, 14px); line-height: 1.1; padding: clamp(8px,0.75vw,14px) clamp(12px,1vw,18px); border-radius: 999px; }
#footer .footer-messenger { width: clamp(28px, 1.5vw, 36px); height: clamp(28px, 1.5vw, 36px); }

/* ---- 10. CALC (#calc) ----------------------------------------------------- */
#calc .calc-header-wrap * { font-size: clamp(11px, 0.6vw, 14px); line-height: 1.35; }
#calc .calc-quick-selector label { font-size: clamp(12px, 0.65vw, 15px); }
#calc .calc-quick-selector select { font-size: clamp(13px, 0.7vw, 16px); padding: clamp(8px,0.5vw,12px) clamp(12px,1vw,18px); border-radius: 999px; }
#calc .calc-loading { font-size: clamp(12px, 0.7vw, 15px); }
#calc .calc-unavailable__text strong { font-size: clamp(13px, 0.85vw, 17px); line-height: 1.3; }
#calc .calc-unavailable__text div { font-size: clamp(12px, 0.7vw, 15px); line-height: 1.4; }
/* single-column earlier, and KILL the phone-calibrated vw fonts that blow up at tablet width */
@media (max-width: 1100px) {
  #calc .calc-body-wrap { grid-template-columns: 1fr; gap: clamp(16px,3vw,28px); }
  #calc .calc-quick-selectors, #calc .calc-main-wrap, #calc .calc-upload-wrap { grid-column: 1; width: 100%; max-width: 100%; }
}
@media (max-width: 1024px) {
  #calc .calc-quick-selectors { grid-template-columns: 1fr; gap: clamp(12px,2vw,20px); padding: clamp(14px,3vw,22px); }
  #calc .calc-quick-selector { gap: clamp(6px,1vw,10px); }
  #calc .calc-quick-selector label  { font-size: clamp(13px, 1.4vw, 16px); }
  #calc .calc-quick-selector select { font-size: clamp(14px, 1.6vw, 17px); padding: clamp(10px,1.8vw,14px) clamp(14px,3vw,20px); border-radius: 999px; }
  #calc .calc-loading { font-size: clamp(13px, 1.4vw, 16px); padding: clamp(8px,1.5vw,12px); }
}

/* ---- 11. LAYOUT REFLOW (columns) ----------------------------------------- */
/* CARDS: full width once narrow (per-card max-width comes from cards.php media) */
@media (max-width: 768px) {
  #cards .card-wrap { max-width: 100% !important; } /* height comes from mobile min_height (admin's mobile image) */
}
/* CATEGORIES grid: 4→3→2→1 */
@media (max-width: 1280px) { #categories .category-wrap { max-width: calc(33.333% - 0.7vw); } }
@media (max-width: 768px)  { #categories .category-wrap { max-width: calc(50% - 1.5vw); } }
@media (max-width: 480px)  { #categories .category-wrap { max-width: 100%; } }
/* categories-with-banner: stop the !important 44vw/14vw from crushing on small screens */
@media (max-width: 1280px) {
  .categories-with-banner .container-wrap { width: 100% !important; }
  .categories-with-banner .category-wrap  { max-width: calc(33.333% - 0.7vw) !important; }
  .categories-with-banner .banner-wrap    { max-width: 100%; height: auto; min-height: clamp(160px,30vw,260px); }
}
/* TABLET (769–1280): match the DESKTOP layout — a 3-up card grid with the banner
   as a TALL column on the right. The old vw widths (44vw/14vw) crushed the cards
   at tablet, so size both as fractions of the centered page column (cards ~73%,
   banner ~25%) and let the banner stretch to the card-grid height.
   Two sub-ranges because the page column is 88vw ≤1024 and 82vw ≤1280. */
@media (min-width: 769px) and (max-width: 1280px) {
  #categories.categories-with-banner {
    flex-direction: row !important;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: stretch;          /* banner stretches to the card-grid height */
    gap: 2vw;
  }
  .categories-with-banner .container-wrap { margin: 0 !important; align-self: stretch; }
  .categories-with-banner .banner-wrap {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    align-self: stretch;
    padding: clamp(14px, 1.6vw, 22px) !important;
  }
}
/* 769–1024: page column = 88vw → cards 64vw + gap 2vw + banner 22vw */
@media (min-width: 769px) and (max-width: 1024px) {
  .categories-with-banner .container-wrap { width: 64vw !important; }
  .categories-with-banner .banner-wrap { width: 22vw !important; max-width: 22vw !important; }
}
/* 1025–1280: page column = 82vw → cards 60vw + gap 2vw + banner 20vw */
@media (min-width: 1025px) and (max-width: 1280px) {
  .categories-with-banner .container-wrap { width: 60vw !important; }
  .categories-with-banner .banner-wrap { width: 20vw !important; max-width: 20vw !important; }
}
/* TABLET: term-19 (labels) tiles use a tall full-bleed photo on desktop, but the
   bare 15vw was only ~154px here → make them tall. Banner stretches to match.
   Also widen the inter-section spacing (body flex-gap was only ~1vw ≈ 10px). */
@media (min-width: 769px) and (max-width: 1280px) {
  #categories.categories-term-19 .category-wrap { height: clamp(210px, 23vw, 280px) !important; }
  body { gap: clamp(22px, 2.7vw, 38px) !important; }
  /* slightly tighten card body line-height so long copy (e.g. the /pay/
     "Корпоративным клиентам" card) clears the bottom product image. */
  #cards .card-content p { line-height: 1.34; }

  /* Category banner ("Водонепроницаемые") is a SHORT right column at tablet, so
     its white text reaches the bright leaf photo and loses contrast. The
     non-term-19 banner has no scrim at all; the term-19 gradient fades too early.
     Add a scrim (non-term-19) and a strong text-shadow on both so text stays legible. */
  #categories:not(.categories-term-19) .banner-wrap::after {
    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.28) 60%, rgba(0,0,0,0.06) 100%);
  }
  #categories .banner-wrap .banner-title,
  #categories .banner-wrap .banner-desc {
    position: relative !important;
    z-index: 2 !important;
    text-shadow: 0 1px 5px rgba(0,0,0,0.85), 0 0 2px rgba(0,0,0,0.55) !important;
  }
}
@media (max-width: 768px)  { .categories-with-banner .category-wrap { max-width: calc(50% - 1.5vw) !important; } }
@media (max-width: 480px)  { .categories-with-banner .category-wrap { max-width: 100% !important; } }
/* PHONE: banner category pages (e.g. /product-category/stickers/) had a full-bleed
   container (the earlier `width:100% !important` that overrode the desktop 44vw also
   killed the side gutters on phones), so cards touched the screen edges — unlike the
   normal pages which sit in a 90–92vw column. Restore the same column width/gutters as
   the base .container-wrap (see the 13091–13092 cascade) so both pages match. The tablet
   row-layout (769–1280px) keeps its own 64vw/60vw rules and is unaffected. */
@media (max-width: 768px) { .categories-with-banner .container-wrap { width: 90vw !important; margin: 0 auto !important; } }
@media (max-width: 480px) { .categories-with-banner .container-wrap { width: 92vw !important; } }
/* PHONE (<=480px): the "Водонепроницаемые" banner background is a tall PORTRAIT photo
   (the leaf-with-water-drops sticker sits in its lower half). On the short full-width
   mobile banner, background-size:cover cropped the bottom of the leaf off. Make the
   banner taller (height tracks its width so the whole leaf is revealed) — at phone
   widths ~80% of the card width shows the full leaf with the title/description over
   the dark top. Excludes term-19 (labels), which has its own banner treatment. */
@media (max-width: 480px) {
  #categories:not(.categories-term-19).categories-with-banner .banner-wrap {
    height: auto !important;
    min-height: clamp(260px, 80vw, 390px) !important;
    background-position: center center !important;
  }
}
/* FAQ: 2 columns → 1 column on phones */
@media (max-width: 768px)  { #faq .faq-item { width: 100%; } }
/* keep things from overflowing horizontally */
@media (max-width: 768px) {
  .sub-menu-wrap .sub-menu-item { white-space: normal; }
}
/* ====================== END RESPONSIVE OVERHAUL ====================== */

/* ---- Addendum: section button + WooCommerce account tokens ---- */
#button .container-wrap .button {
    font-size: clamp(13px, 0.75vw, 16px);
    line-height: 1.1;
    padding: clamp(10px, 1vw, 18px) clamp(18px, 1.4vw, 28px);
    border-radius: 999px;
}
body.woocommerce-account-auth-page {
    --wc-fs-caption: clamp(11px, 0.58vw, 14px);
    --wc-fs-label:   clamp(11px, 0.52vw, 13px);
    --wc-fs-body:    clamp(13px, 0.68vw, 16px);
    --wc-fs-ui:      clamp(12px, 0.66vw, 15px);
    --wc-fs-button:  clamp(13px, 0.68vw, 16px);
    --wc-fs-heading: clamp(15px, 0.9vw, 22px);
    --wc-fs-strength:clamp(11px, 0.56vw, 13px);
    --wc-fs-logo-text: clamp(18px, 1.35vw, 28px);
    /* LK frame must track the site content frame (.container-wrap, see ~L13087)
       at EVERY breakpoint so the logged-in dashboard lines up with the header &
       footer. The previous `min(60vw, 560px)` cap collapsed the whole account
       into a ~560px centred column on any screen wider than ~933px (the squished
       "уехавшая" layout: sidebar ate the row, content wrapped letter-by-letter). */
    --wc-lk-width: min(60vw, 1600px);
}
@media (max-width: 1600px) { body.woocommerce-account-auth-page { --wc-lk-width: 66vw; } }
@media (max-width: 1280px) { body.woocommerce-account-auth-page { --wc-lk-width: 82vw; } }
@media (max-width: 1024px) { body.woocommerce-account-auth-page { --wc-lk-width: 88vw; } }
@media (max-width: 768px)  { body.woocommerce-account-auth-page { --wc-lk-width: 90vw; } }
@media (max-width: 480px)  { body.woocommerce-account-auth-page { --wc-lk-width: 92vw; } }

/* ---- Addendum 2: residual small links/buttons ---- */
.lipko-review-write-link,
#title .container-wrap a.subtitle { font-size: clamp(12px, 0.7vw, 15px) !important; line-height: 1.3; }
a.button.wc-backward,
.woocommerce a.button.wc-backward { font-size: clamp(13px, 0.85vw, 16px) !important; line-height: 1.2; }

/* ---- Addendum 3: wc-backward needs to match the 4-class base selector ---- */
.woocommerce-custom-page-wrapper .return-to-shop a.button.wc-backward {
    font-size: clamp(13px, 0.85vw, 16px) !important;
    line-height: 1.2 !important;
}

/* ============================================================
   PHONE TUNING (<=768px) — addressing client mobile feedback 2026-05-29
   ============================================================ */
@media (max-width: 768px) {
  /* Hero almost full screen; content readable */
  #first .container-wrap { min-height: 80vh; padding: clamp(22px, 6vw, 32px); justify-content: flex-start; background-position: center; }
  #first.is-small .container-wrap { min-height: clamp(300px, 52vh, 480px); }
  #first h1 { font-size: clamp(30px, 8.6vw, 46px) !important; line-height: 1.05; max-width: 100%; }
  #first h2 { font-size: clamp(15px, 4vw, 18px) !important; line-height: 1.4; max-width: 100%; }
  #first .offer-item  { font-size: clamp(13px, 3.4vw, 15px); }
  #first .button-wrap { font-size: clamp(14px, 3.8vw, 17px); padding: clamp(12px,3.6vw,16px) clamp(20px,5vw,28px); }

  /* Section titles + subtitles legible */
  #title .title, #title .container-wrap .title { font-size: clamp(26px, 7.6vw, 34px); line-height: 1.1; }
  #title .subtitle, #title .container-wrap .subtitle, #title .container-wrap a.subtitle { font-size: clamp(14px, 3.9vw, 16px) !important; }

  /* Categories: larger image + readable title/text */
  #categories .category-wrap { min-height: clamp(112px, 30vw, 148px); padding: clamp(16px, 4.6vw, 22px); }
  #categories .category-title { font-size: clamp(17px, 4.7vw, 21px); line-height: 1.2; max-width: 56%; }
  #categories .category-text  { font-size: clamp(14px, 3.7vw, 16px); }
  #categories .category-img   { width: clamp(94px, 27vw, 124px); height: clamp(78px, 24vw, 112px); }
  .categories-with-banner .banner-title { font-size: clamp(16px, 4.4vw, 20px); }
  .categories-with-banner .banner-desc  { font-size: clamp(14px, 3.6vw, 16px); }

  /* Cards: text readable (block height now driven by admin mobile image) */
  #cards .card-content h2 { font-size: clamp(20px, 5.6vw, 26px) !important; line-height: 1.15; }
  #cards .card-content h3 { font-size: clamp(16px, 4.4vw, 19px) !important; }
  #cards .card-content p  { font-size: clamp(15px, 3.9vw, 17px) !important; line-height: 1.45; }
  #cards .card-button     { font-size: clamp(14px, 3.8vw, 16px) !important; padding: clamp(12px,3.4vw,16px) clamp(18px,4.6vw,26px); }

  /* FAQ: keep text clear of the toggle circle + wrap long words */
  #faq .faq-item { padding-right: clamp(48px, 14vw, 60px); }
  #faq .faq-question { font-size: clamp(15px, 4.2vw, 18px) !important; line-height: 1.3; overflow-wrap: anywhere; }
  #faq .faq-answer   { font-size: clamp(14px, 3.8vw, 16px) !important; line-height: 1.5; overflow-wrap: anywhere; }
  #faq .faq-btn { top: clamp(14px, 4vw, 18px); right: clamp(14px, 4vw, 18px); width: clamp(26px, 7vw, 30px); height: clamp(26px, 7vw, 30px); }

  /* Footer + generic small text */
  #footer .footer-title { font-size: clamp(14px, 4vw, 16px); }
  #footer .footer-text, #footer .footer-link { font-size: clamp(13px, 3.6vw, 15px); }
}

@media (max-width: 768px) {
  /* category images bigger (override the more-specific --wide-image base rule).
     EXCLUDE term-19 (labels): those are full-bleed photo tiles whose image must
     fill the whole card — this !important size was collapsing it to a corner. */
  #categories:not(.categories-term-19) .category-img { width: clamp(96px, 27vw, 124px) !important; height: clamp(82px, 23vw, 108px) !important; }
  #categories:not(.categories-term-19) .category-wrap--wide-image .category-img { width: clamp(120px, 33vw, 152px) !important; height: clamp(80px, 22vw, 104px) !important; }
}

/* ============================================================
   PHONE POLISH 2 (<=768px) — hero CTA position, premium buttons & fields
   ============================================================ */
@media (max-width: 768px) {
  /* Hero: pin CTA buttons to the bottom (absolute = reliable, no clipping), full-width stacked */
  #first .container-wrap { justify-content: flex-start; position: relative; padding-bottom: clamp(150px, 42vw, 190px); }
  #first .buttons-wrap {
    position: absolute;
    left: clamp(18px, 5vw, 32px);
    right: clamp(18px, 5vw, 32px);
    bottom: clamp(24px, 7vw, 38px);
    top: auto !important;
    height: auto !important;
    margin-top: 0;
    width: auto;
    flex-direction: column;
    gap: 12px;
    z-index: 2;
  }
  #first .buttons-wrap .button-wrap { width: 100%; }

  /* Premium CTA buttons — taller, comfortable, consistent */
  #first .button-wrap,
  #cards .card-button,
  #button .container-wrap .button,
  .quick-calc__add, .quick-calc__submit,
  .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
  .lipko-cart .checkout-button, .lipko-cart .button,
  .lipko-checkout #place_order, .lipko-checkout button[type="submit"], .lipko-checkout .button,
  #place_order {
      min-height: 56px !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      padding: 14px 26px !important;
      font-size: 16px !important;
      line-height: 1.2 !important;
      border-radius: 999px !important;
  }

  /* Premium form controls — taller + 16px (prevents iOS focus-zoom) */
  .quick-calc__select, .quick-calc__input,
  .lipko-checkout .input-text, .lipko-checkout select,
  .lipko-checkout input[type="text"], .lipko-checkout input[type="tel"],
  .lipko-checkout input[type="email"], .lipko-checkout input[type="number"],
  .lipko-cdek-map-search__input {
      min-height: 54px !important;
      font-size: 16px !important;
      padding: 13px 18px !important;
      border-radius: 14px !important;
  }
  /* quick-calc dropdowns carry a custom chevron (quick-calc.css): the 18px right
     padding above is too tight and the value text ran under the arrow — give the
     <select>s extra right room so text always clears the chevron. */
  .quick-calc__select { padding-right: 34px !important; }
  .quick-calc__comment, .lipko-checkout textarea {
      font-size: 16px !important;
      padding: 13px 18px !important;
      border-radius: 14px !important;
      min-height: 96px;
  }

  /* quick-calc: bigger chips & touch targets, breathing room */
  .quick-calc__chip   { min-height: 50px !important; font-size: 15px !important; padding: 10px 20px !important; border-radius: 999px !important; }
  .quick-calc__clear  { min-height: 50px !important; font-size: 15px !important; border-radius: 999px !important; }
  .quick-calc__icon-btn { min-width: 46px !important; min-height: 46px !important; }
  .quick-calc__item, .quick-calc__card { padding: clamp(16px,4.5vw,22px) !important; }

  /* checkout: roomier cards & spacing */
  .lipko-checkout-card { padding: clamp(16px,4.5vw,22px) !important; border-radius: 16px !important; }
  .lipko-checkout__left, .lipko-checkout__right { gap: 14px; }
}

/* ---- PHONE FIX 3b (<=768px): footer contacts + category banner legibility ----
   NOTE: hero scrim and #cards scrim/text-shadow were intentionally REMOVED per
   client feedback — they darkened hero photos and dirtied light cards. Heroes &
   cards keep their original clean look. */
@media (max-width: 768px) {
  /* Footer "Связаться" column was EMPTY on phones: its .contacts-wrap reuses a
     class the mobile header hides (.contacts-wrap{display:none}). Re-show it. */
  #footer .contacts-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: clamp(10px, 2.6vw, 14px);
    margin-top: clamp(4px, 1.4vw, 8px);
  }
  #footer .contacts-wrap .contact-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #829196;
    font-size: clamp(13px, 3.6vw, 15px);
    line-height: 1.3;
  }
  #footer .contacts-wrap .contact-wrap svg { width: 15px; height: auto; flex: 0 0 auto; }
  #footer .contacts-wrap .contact-wrap svg path { fill: #829196; }

  /* Category banner (NON term-19, e.g. "Водонепроницаемые" on /stickers/):
     white title+desc sit over a bright photo (wet leaf) with no scrim, so the
     text was unreadable. term-19 already has its own gradient; add one here. */
  #categories:not(.categories-term-19) .banner-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(0,0,0,0.60) 0%, rgba(0,0,0,0.34) 45%, rgba(0,0,0,0.12) 75%, rgba(0,0,0,0) 100%);
  }
  #categories:not(.categories-term-19) .banner-wrap .banner-title,
  #categories:not(.categories-term-19) .banner-wrap .banner-desc {
    position: relative;
    z-index: 2;
    text-shadow: 0 1px 6px rgba(0,0,0,0.55);
  }

  /* wide-image category thumbs (e.g. the truck on "Большие стикеры", waffle on
     "Круглые стикеры") were sitting flush against the card's rounded right edge,
     so the illustration read as cut off. Pull them in for a clear margin. */
  #categories:not(.categories-term-19) .category-wrap--wide-image .category-img {
    right: clamp(12px, 4.5vw, 20px) !important;
    width: clamp(104px, 28vw, 132px) !important;
  }

  /* "Наши работы" portfolio cards taller per client request (image is
     object-fit:cover, so it fills the taller card). */
  #portfolio .portfolio-wrap { height: clamp(390px, 105vw, 470px); }

  /* Keep white hero text legible where it crosses bright photo areas (e.g. the
     /about/ sticker collage with the CTA line) WITHOUT darkening the image:
     a TIGHT shadow hugs only the letters — the photo itself stays fully bright. */
  #first h1 { text-shadow: 0 1px 3px rgba(0,0,0,0.4); }
  #first h2 { text-shadow: 0 0 3px rgba(0,0,0,0.55), 0 1px 2px rgba(0,0,0,0.5); }
}

/* PHONE (<=480px): bring the desktop treatment to phones for the "Любые формы и
   размеры" (home) and category-archive cards. The older mobile rules left the artwork
   in a small inset box with gaps above and to the right. Here the box spans the FULL
   card height (top:0 / bottom:0) and the picture is sized BY THAT HEIGHT (img
   height:100%, width:auto) and pinned flush to the right — so it touches the top,
   bottom and right edges at every phone width, including very narrow ones (e.g. the
   344px Galaxy Z Fold cover screen) where a width-based size used to leave a top gap.
   Width follows the image ratio, so it never balloons. Tablets (481–768px) keep their
   existing rules; term-19 (labels) full-bleed photo tiles are excluded. */
@media (max-width: 480px) {
  #categories:not(.categories-term-19) .category-wrap--wide-image .category-img {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
  }
  #categories:not(.categories-term-19) .category-wrap--wide-image .category-img img {
    height: 100% !important;
    width: auto !important;
    object-fit: contain !important;
    object-position: right bottom !important;
  }
}

/* NARROW PHONES (<=390px), home only: the longest title ("Этикетки прямоугольные")
   is one long unbreakable word that, at the base mobile size, ran under the flush
   artwork on very narrow screens (e.g. the 344px Galaxy Z Fold). Trim the title font
   a touch on narrow widths so the word clears the picture. Scales from ~14px at 344px
   up to 16px at 390px; wider phones keep the normal size. */
@media (max-width: 390px) {
  body.home #categories .category-title {
    font-size: clamp(13px, 4.1vw, 16px) !important;
    line-height: 1.2;
  }
}

/* ============================================================
   «Настоящая» карта внутри карточки блока #cards
   (например «Самовывоз с производства» на /pay/). Карточка с шорткодом
   [lipko_map] переключается на тёмный фон (cards.php → $has_map), а карта
   выводится через .lipko-map-embed внутри .card-content.
   ============================================================ */
#cards .card-content .lipko-map-embed {
    position: relative;   /* как у текста карточки: подняться НАД абсолютным .card-background,
                             иначе тёмный фон карточки перекрывает карту */
    z-index: 1;
    width: 100%;
    height: clamp(200px, 16vw, 300px);   /* стабильная высота с первого кадра: карта Яндекса
                                            инициализируется по размеру iframe в момент загрузки */
    margin-top: clamp(12px, 1vw, 22px);
    border-radius: clamp(8px, 0.6vw, 14px);
    overflow: hidden;
    background: #e9eaec;
    flex: 0 0 auto;
    line-height: 0;
}
#cards .card-content .lipko-map-embed iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}
@media (max-width: 768px) {
    #cards .card-content .lipko-map-embed { height: clamp(220px, 60vw, 320px); margin-top: clamp(12px, 3vw, 18px); }
}
