/* ============================================
   GLOBAL FIX
   ============================================ */
html {
    overflow-x: hidden;
}

/* Override Gutenberg block width constraints on shop/archive pages */
.woocommerce-page .wp-block,
.woocommerce-page .wp-block-group,
.woocommerce-page .wp-block-cover,
.woocommerce-page .entry-content > *,
body.post-type-archive-product .wp-block,
body.post-type-archive-product .wp-block-group {
    max-width: 100% !important;
    box-sizing: border-box;
}

/* ============================================
   ACCOUNT / DASHBOARD STYLES
   ============================================ */

/* Page wrapper */
.dashboard-page {
    padding-top: 2rem;
    padding-bottom: 5rem;
    min-height: 60vh;
}

.dashboard-main__wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

/* Heading: navigation + greeting stacked */
.dashboard-main__heading {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Navigation menu */
.dashboard-menu__wrapper {
    width: 100%;
}

.dashboard-menu__row {
    display: flex;
    gap: 0.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
}

.tab-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    border-radius: 6.25rem;
    font-weight: 600;
    font-size: 0.9375rem;
    line-height: 1.25;
    white-space: nowrap;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
    border: 1px solid #dbdfd1;
    color: #232a11;
    background-color: transparent;
    cursor: pointer;
}
.tab-btn.filled {
    background-color: #f5f5f1;
}
.tab-btn.filled.active,
.tab-btn.filled:hover {
    background-color: #232a11;
    color: #fff;
    border-color: #232a11;
}

/* Nav icons (used as font-icon class stubs) */
.theme-icon {
    display: inline-flex;
    width: 1.125rem;
    height: 1.125rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    flex-shrink: 0;
    opacity: 0.7;
}

/* Greeting */
.dashboard-greeting__wrapper {
    background-color: #f5f5f1;
    border-radius: 1.25rem;
    overflow: hidden;
}
.dashboard-greeting__row {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 2rem;
}
.dashboard-greeting__image {
    position: relative;
    width: 180px;
    flex-shrink: 0;
}
.dashboard-greeting__image .background {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}
.dashboard-greeting__image .main-img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    border-radius: 1rem;
    display: block;
}
.dashboard-greeting__content .heading {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}
.dashboard-greeting__content .h4 {
    font-family: "Playfair Display";
    font-style: italic;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 115%;
    color: #232a11;
    margin: 0;
}

/* Circle emoji */
.circle-emoji {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    background-color: #dbdfd1;
    border-radius: 50%;
    font-size: 1.25rem;
    flex-shrink: 0;
}
.circle-emoji.lg {
    width: 4rem;
    height: 4rem;
    font-size: 2rem;
}

/* Dashboard landing / blocks */
.dashboard-landing {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}
.dashboard-landing__blocks {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}
.dashboard-landing__block {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.dashboard-landing__head {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.quantity-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #232a11;
    color: #fff;
    border-radius: 6.25rem;
    padding: 0.125rem 0.625rem;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.4;
}

/* Dashboard content */
.dashboard-content { width: 100%; }
.dashboard-catalog { width: 100%; }

/* Checkout button in cart — centered, auto width */
.dashboard-catalog > .btn {
    display: flex !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 320px;
    margin: 0 auto;
}

/* Fix all buttons inside dashboard that have no arrow (fix justify-content: space-between + left padding) */
.dashboard-page .btn,
.empty-module .btn {
    justify-content: center !important;
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
}

/* Empty module */
.empty-module {
    background-color: #f5f5f1;
    border-radius: 1.25rem;
    padding: 3rem 2rem;
}
.empty-module__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    text-align: center;
    max-width: 30rem;
    margin: 0 auto;
}

/* Cart details rows */
.row-cart-content {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.25rem 0;
    border-top: 1px solid #dbdfd1;
}
.row-cart-content:first-child { border-top: none; padding-top: 0; }
.row-cart-content__title {
    font-family: "Playfair Display";
    font-style: italic;
    font-weight: 600;
    font-size: 1.125rem;
}
.cart-info-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
}

/* Order card */
.order-card {
    background-color: #f5f5f1;
    border-radius: 1.25rem;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    height: 100%;
    box-sizing: border-box;
}
.order-card__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    font-size: 0.9375rem;
    line-height: 1.4;
}
.order-card__status.status-completed { color: #00c46e; font-weight: 600; }
.order-card__status.status-processing { color: #f59e0b; font-weight: 600; }
.order-card__status.status-pending { color: #838282; font-weight: 600; }
.order-card__status.status-cancelled,
.order-card__status.status-refunded { color: #d62929; font-weight: 600; }

/* Slider */
.dashboard-slider { position: relative; }
.dashboard-slider .swiper-wrapper { align-items: stretch; }
.dashboard-slider__slide { height: auto; }

/* Settings section */
.rounded-container {
    background-color: #fff;
    border-radius: 1.25rem;
    border: 1px solid #dbdfd1;
}
.settings {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
.settings__form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.settings__heading {
    padding-bottom: 1rem;
    border-bottom: 1px solid #dbdfd1;
}
.settings__heading.ttu { text-transform: uppercase; letter-spacing: 0.05em; }
.settings__body {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.settings__footer {
    padding-top: 1rem;
    border-top: 1px solid #dbdfd1;
    display: flex;
    justify-content: flex-end;
}
.settings__footer .btn {
    justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    width: auto !important;
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
}

/* Form cols */
.form-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
.wrap-on-mob { }

/* Auth page */
.auth-wrapper {
    max-width: 36rem;
    margin: 0 auto;
    padding: 2.5rem;
}
.auth__row.row-auth {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.auth-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.info-row {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.with-gap { gap: 1rem; }
.auth-variants {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Utility */
.gray { color: #838282; }
.accent { color: #00c46e; }
.semibold { font-weight: 600; }
.ttu { text-transform: uppercase; }
.text-black { color: #232a11; }
.mb-10 { margin-bottom: 0.625rem; }
.d-none { display: none !important; }
.underlined { text-decoration: underline; }
.common-gap { gap: 1.5rem; }
.text-left { text-align: left; }

/* Auth modal */
.auth-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(35, 42, 17, 0.45);
    z-index: 9000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    padding: 1rem;
}
.auth-modal-overlay.is-open {
    opacity: 1;
    visibility: visible;
}
.auth-modal {
    background: #fff;
    border-radius: 1.25rem;
    width: 100%;
    max-width: 28rem;
    max-height: 90vh;
    overflow-y: auto;
    padding: 2rem;
    position: relative;
    box-shadow: 0 20px 60px rgba(35, 42, 17, 0.15);
    transform: translateY(20px);
    transition: transform 0.3s ease;
}
.auth-modal-overlay.is-open .auth-modal {
    transform: translateY(0);
}
.auth-modal__close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.25rem;
    color: #232a11;
    display: flex;
    align-items: center;
    justify-content: center;
}
.auth-modal__tabs {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #dbdfd1;
    padding-bottom: 0.75rem;
}
.auth-modal__tab {
    background: none;
    border: none;
    cursor: pointer;
    font-family: "Playfair Display";
    font-style: italic;
    font-weight: 600;
    font-size: 1.125rem;
    color: #838282;
    padding: 0 0.25rem 0.25rem;
    border-bottom: 2px solid transparent;
    transition: color 0.2s, border-color 0.2s;
}
.auth-modal__tab.active {
    color: #232a11;
    border-bottom-color: #232a11;
}
.auth-modal__panel { display: none; }
.auth-modal__panel.active { display: block; }
.auth-modal .form-inputs {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}
.auth-modal .form-field {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}
.auth-modal .form-field label {
    font-size: 0.875rem;
    font-weight: 500;
    color: #232a11;
}
.auth-modal .form-field input {
    width: 100%;
    padding: 0.625rem 0.875rem;
    border: 1px solid #dbdfd1;
    border-radius: 0.5rem;
    font-size: 1rem;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}
.auth-modal .form-field input:focus { border-color: #232a11; }
.auth-modal .form-row { margin-top: 0.75rem; }
.auth-modal .forgot-link {
    font-size: 0.875rem;
    color: #00c46e;
    text-decoration: underline;
    cursor: pointer;
}
.auth-modal .switch-row {
    margin-top: 1rem;
    font-size: 0.9rem;
    color: #838282;
}
.auth-modal .switch-row a {
    color: #00c46e;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
}
.auth-modal .btn-submit {
    width: 100%;
    padding: 0.75rem 1.5rem;
    background-color: #232a11;
    color: #fff;
    border: none;
    border-radius: 6.25rem;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s;
    margin-top: 0.5rem;
}
.auth-modal .btn-submit:hover { background-color: #3a4620; }
.auth-modal .google-btn {
    width: 100%;
    padding: 0.625rem 1.5rem;
    background-color: #fff;
    color: #232a11;
    border: 1px solid #dbdfd1;
    border-radius: 6.25rem;
    font-size: 0.9375rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: border-color 0.2s;
}
.auth-modal .google-btn:hover { border-color: #232a11; }
.auth-modal .divider {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #838282;
    font-size: 0.875rem;
    margin: 0.75rem 0;
}
.auth-modal .divider::before,
.auth-modal .divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background-color: #dbdfd1;
}

/* Btn sizes and styles (for account pages if server version missing) */
.btn.primary:not(:disabled) {
    background-color: #232a11;
    color: #fff;
}
.btn.primary:not(:disabled):hover { background-color: #3a4620; }
.btn.primary.black:not(:disabled) { background-color: #09090a; color: #fff; }
.btn.secondary:not(:disabled) { background-color: #dbdfd1; color: #232a11; }
.btn.sm {
    padding: 0.5rem 1.25rem;
    font-size: 0.875rem;
    column-gap: 0.75rem;
}
.btn.sm .arrow { flex: 0 0 2rem; width: 2rem; height: 2rem; }
.btn.outline { background-color: transparent; border: 1px solid currentColor; }
.btn.gray { color: #838282; border-color: #dbdfd1; }
.btn.soft:not(:disabled) { background-color: #f5f5f1; color: #232a11; }

/* Responsive */
@media (max-width: 900px) {
    .dashboard-greeting__row {
        flex-direction: column;
        text-align: center;
        align-items: center;
        gap: 1.25rem;
        padding: 1.5rem;
    }
    .dashboard-greeting__image { width: 140px; }
    .dashboard-greeting__content .heading { justify-content: center; }
}
@media (max-width: 768px) {
    .auth-wrapper { padding: 1.5rem 1rem; }
    .form-cols { grid-template-columns: 1fr; }
    .settings { padding: 1.25rem; }
    .wrap-on-mob { grid-template-columns: 1fr; }
}
@media (max-width: 576px) {
    .tab-btn { padding: 0.5rem 1rem; font-size: 0.875rem; }
}

/* ---- All text/email/tel/password inputs in account forms ---- */
.form-field input[type="text"],
.form-field input[type="email"],
.form-field input[type="tel"],
.form-field input[type="password"],
.form-field input[type="number"],
.settings__body input[type="text"],
.settings__body input[type="email"],
.settings__body input[type="tel"],
.settings__body input[type="password"],
.auth-form input[type="text"],
.auth-form input[type="email"],
.auth-form input[type="tel"],
.auth-form input[type="password"],
.input-text,
.woocommerce-Input--text {
    border: 0.0625rem solid #dbdfd1 !important;
    border-radius: 6.25rem !important;
    padding: 1rem 1.25rem 1rem 1.5rem !important;
    background-color: #fff !important;
    color: #232a11 !important;
    width: 100%;
    box-sizing: border-box;
    outline: none;
    font-size: 1rem;
    font-family: inherit;
    transition: border-color 0.2s ease;
    display: block;
}
.form-field input[type="text"]:focus,
.form-field input[type="email"]:focus,
.form-field input[type="tel"]:focus,
.form-field input[type="password"]:focus,
.settings__body input:focus,
.input-text:focus,
.woocommerce-Input--text:focus {
    border-color: #232a11 !important;
}
.form-field input::placeholder,
.settings__body input::placeholder,
.input-text::placeholder,
.woocommerce-Input--text::placeholder {
    color: rgba(35, 42, 17, 0.45);
}

/* ---- Form field layout ---- */
.form-field {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}
.form-field label {
    font-size: 0.9rem;
    font-weight: 500;
    color: #232a11;
    line-height: 1.4;
}
.form-field .input-container {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

/* Password field wrapper */
.password-input-container {
    position: relative;
}
.input-btn-wrapper {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
}
.toggle-icon {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: rgba(35,42,17,0.5);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ---- Native <select> styling in account forms ---- */
.form-field select,
.settings__body select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 0.0625rem solid #dbdfd1 !important;
    border-radius: 6.25rem !important;
    padding: 1rem 2.5rem 1rem 1.5rem !important;
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%23232a11' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 1rem center !important;
    background-size: 1rem !important;
    color: #232a11 !important;
    width: 100%;
    box-sizing: border-box;
    outline: none;
    font-size: 1rem;
    font-family: inherit;
    cursor: pointer;
    display: block;
}
.form-field select:focus,
.settings__body select:focus {
    border-color: #232a11 !important;
}

/* Select2 styled selects */
.form-field .select2-container,
.settings__body .select2-container {
    width: 100% !important;
}
.form-field .select2-selection--single,
.settings__body .select2-selection--single {
    border: 0.0625rem solid #dbdfd1 !important;
    border-radius: 6.25rem !important;
    height: auto !important;
    padding: 1rem 2.5rem 1rem 1.5rem !important;
    background-color: #fff !important;
    display: flex !important;
    align-items: center !important;
}
.form-field .select2-selection__rendered,
.settings__body .select2-selection__rendered {
    color: #232a11 !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    padding: 0 !important;
}
.form-field .select2-selection__arrow,
.settings__body .select2-selection__arrow {
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 1rem !important;
}

/* ---- Custom select (payment/shipping methods) ---- */
.select-input-container {
    position: relative;
    cursor: pointer;
    user-select: none;
}
.current-value.select-option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1.125rem 1.5rem;
    border-radius: 6.25rem;
    border: 1px solid #dbdfd1;
    cursor: pointer;
    background-color: #fff;
    transition: border-color 0.2s;
}
.current-value.select-option:hover,
.select-input-container.is-open .current-value.select-option {
    border-color: #232a11;
}
.select-options {
    display: none;
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #dbdfd1;
    border-radius: 1rem;
    z-index: 100;
    list-style: none;
    padding: 0.5rem 0;
    margin: 0;
    box-shadow: 0 8px 24px rgba(35, 42, 17, 0.1);
}
.select-input-container.is-open .select-options {
    display: block;
}
.select-options .select-option {
    padding: 0.75rem 1.5rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: background-color 0.2s;
    font-size: 0.9375rem;
    border: none;
}
.select-options .select-option:hover { background-color: #f5f5f1; }
.select-options .select-option.active { font-weight: 600; }

/* ---- Dashboard custom slider ---- */
.ds-slider {
    position: relative;
    overflow: visible;
}
.ds-track {
    display: flex;
    gap: 20px;
    transition: transform 0.35s ease;
    will-change: transform;
    overflow: hidden;
}
.ds-slide {
    flex-shrink: 0;
    box-sizing: border-box;
}
.ds-card {
    border-radius: 1rem;
    overflow: hidden;
    border: 1px solid #dbdfd1;
    background: #fff;
    display: flex;
    flex-direction: column;
    height: 100%;
}
.ds-card__image {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    flex-shrink: 0;
}
.ds-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.ds-card:hover .ds-card__image img { transform: scale(1.04); }
.ds-card__body {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex: 1;
}
.ds-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: #232a11;
    text-decoration: none;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.ds-card__title:hover { text-decoration: underline; }
.ds-card__meta {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: auto;
}
.ds-card__price {
    font-size: 1rem;
    font-weight: 700;
    color: #232a11;
}
.ds-card__qty {
    font-size: 0.875rem;
    color: #6b7259;
}
/* Nav buttons */
.ds-btn {
    position: absolute;
    top: calc(45% - 20px);
    transform: translateY(-50%);
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    border: 1px solid #dbdfd1;
    background: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #232a11;
    z-index: 10;
    transition: background 0.2s, border-color 0.2s;
}
.ds-btn:hover { background: #232a11; color: #fff; border-color: #232a11; }
.ds-btn--prev { left: -1.5rem; }
.ds-btn--next { right: -1.5rem; }

ins{
    text-decoration: none;
}

del{
    opacity:0.6;
}

.item-category-search__price{
    gap: 12px;
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: flex-end;
}
.hp{position:absolute;left:-9999px;visibility:hidden;height:0;width:0;}


.fixed-main-image{
	position: fixed;
	z-index: -1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

	max-width: 720px;
	width: 100%;
	max-height: 600px;
	height: 100%;
}

.fixed-main-image img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.nav-header__list li a {
	white-space: nowrap;
}

@media (max-width: 1329px) {
	.header__search-btn {
		max-width: 12rem;
	}
}

.item-our-social {
	max-width: 100%;
}

.hero-text span {
	animation: unset !important;
	opacity: 1 !important;
	transform: translate(0) !important;
}

@media (min-width: 992px) {
	.hero {
		min-height: 100vh;
		display: flex;
		align-items: center;
		margin-bottom: 8.25rem;
	}
	.hero__content {
		height: fit-content;
		min-height: 100%;
		padding: 200px 0 !important;
	}
	.hero__image {
		height: 100%;
	}
}

/* Universal Show More Functionality */
.show-more-content {
	max-height: 0;
	overflow: hidden;
	padding-bottom: 0;
	transition: max-height 0.3s ease-in-out, padding-bottom 0.3s ease-in-out;
}

.show-more-content.expanded {
	max-height: 2000px; /* Adjust based on your content */
	padding-bottom: 2rem; /* Adjust padding as needed */
}

.show-more-btn .arrow {
	transition: transform 0.3s ease-in-out;
}

.show-more-btn[data-expanded="true"] .arrow {
	transform: rotate(180deg);
}

.products-list-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

@media (max-width: 992px) {
	.products-list-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 576px) {
	.products-list-grid {
		grid-template-columns: 1fr;
	}
}
/* ── My Reviews ── */
.my-reviews-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.my-review-card {
    background: #fff;
    border: 0.0625rem solid #dbdfd1;
    border-radius: 1rem;
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.my-review-card__product {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.my-review-card__product img {
    width: 3rem;
    height: 3rem;
    object-fit: cover;
    border-radius: 0.5rem;
    flex-shrink: 0;
}
.my-review-card__product-name {
    font-weight: 600;
    color: #1a1a1a;
    text-decoration: none;
}
.my-review-card__product-name:hover {
    color: #4a7c59;
}
.my-review-card__rating .star {
    color: #dbdfd1;
    font-size: 1.1rem;
}
.my-review-card__rating .star.filled {
    color: #f5a623;
}
.my-review-card__text {
    color: #444;
    line-height: 1.5;
    margin: 0;
}
.my-review-card__date {
    font-size: 0.8125rem;
}

/* ------------------------------------------------------------------
   Consultation hero: make the whole green tab card clickable.
   The <a class="consultation-hero__link"> sits inside .consultation-hero__wrap.
   Visually the tab content looks like one green card, but the link
   only catches clicks on itself. We use the "stretched link" pattern:
   an absolutely-positioned ::before on the link covers the whole
   parent wrap so any click in the green area triggers the link.
------------------------------------------------------------------ */
.consultation-hero__wrap {
    position: relative;
}
.consultation-hero__wrap .consultation-hero__link::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}
/* keep info text visually on top; pointer-events: none so clicks
   fall through to the stretched link overlay, while real <a>s
   inside the info text remain clickable */
.consultation-hero__wrap .consultation-hero__info {
    position: relative;
    z-index: 2;
    pointer-events: none;
}
.consultation-hero__wrap .consultation-hero__info a,
.consultation-hero__wrap .consultation-hero__info button {
    pointer-events: auto;
}
/* the link itself stays above the overlay so its label/arrow remain interactive */
.consultation-hero__wrap .consultation-hero__link {
    position: relative;
    z-index: 2;
}

/* ------------------------------------------------------------------
   "How to prepare" CTA card: the whole green tile is now an <a>
   (wrapping the title + decorative arrow), so any click anywhere
   in the green area scrolls to the consultation form.
   The inner .item-consultation-uniq__link is now a decorative <span>,
   but the original CSS rules already style it correctly (positioned
   absolutely in the top-right corner). These rules just normalize
   the new <a>: remove underline, inherit color, behave as block.
------------------------------------------------------------------ */
a.item-consultation-uniq,
a.item-consultation-uniq:hover,
a.item-consultation-uniq:focus {
    display: block;
    color: inherit;
    text-decoration: none;
}

/* ------------------------------------------------------------------
   Language switcher in the header (top-right)

   The switcher markup lives in .header__rightside and carries data-da,
   so below 768px DynamicAdapt moves it into .menu-header__wrapper —
   where it must keep the stock .languages look. These overrides are
   therefore desktop-only.
------------------------------------------------------------------ */
@media (min-width: 768px) {
    .header__languages {
        -webkit-column-gap: 0.25rem;
        -moz-column-gap: 0.25rem;
        column-gap: 0.25rem;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .header__languages li {
        display: block;
    }
    .header__languages a {
        width: auto;
        min-width: 2.25rem;
        height: 2.625rem;
        padding: 0 0.375rem;
        border-radius: 0.625rem;
        font-size: 0.875rem;
        font-weight: 600;
        line-height: 1;
        text-decoration: none;
    }
}

/* Once relocated into the burger menu, keep the exact look the old
   .menu-header__languages markup had. */
.menu-header__wrapper .header__languages a {
    border-color: rgba(35, 42, 17, 0.15);
}
@media (any-hover: hover) {
    .menu-header__wrapper .header__languages a:hover {
        background-color: rgba(35, 42, 17, 0.15);
    }
}

/* The switcher is a sixth item in an already tight header row. Above 1250px
   (where the search box still sits in the header rather than the burger menu)
   let the search give up width instead of pushing the burger off the edge. */
@media (min-width: 1251px) {
    .header__search-btn {
        width: auto;
        -webkit-box-flex: 0;
        -ms-flex: 0 1 16.5625rem;
        flex: 0 1 16.5625rem;
        min-width: 0;
    }
}

/* Between 1251px and 1400px the row overflowed even before the switcher was
   added; the tighter nav gap that already applies below 1250px fixes it. */
@media (min-width: 1251px) and (max-width: 1400px) {
    .nav-header__list {
        -webkit-column-gap: 1rem;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
    }
}

/* ------------------------------------------------------------------
   Блоковий кошик і чекаут WooCommerce рендеряться прямо в <main> без
   сайтового .container — контент прилипав до лівого краю сторінки.
   Даємо їм ті самі габарити, що й .container.
------------------------------------------------------------------ */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
    width: 100%;
    max-width: 85.25rem;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem 3rem;
    box-sizing: border-box;
}

/* ------------------------------------------------------------------
   Оплата за пожертву: поле «сума» замість фіксованої ціни
------------------------------------------------------------------ */
.vedic-donation {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
}
.vedic-donation__label {
    font-size: 0.875rem;
    font-weight: 600;
    color: #232a11;
}
.vedic-donation__row {
    display: flex;
    align-items: stretch;
    gap: 0.625rem;
    flex-wrap: wrap;
}
.vedic-donation__input-wrap {
    position: relative;
    flex: 1 1 9rem;
    min-width: 8rem;
}
.vedic-donation__input {
    width: 100%;
    height: 100%;
    min-height: 3rem;
    padding: 0 2.25rem 0 1rem;
    border: 1px solid #dbdfd1;
    border-radius: 6.25rem;
    background: #fff;
    font-size: 1rem;
    font-weight: 600;
    color: #232a11;
    box-sizing: border-box;
}
.vedic-donation__currency {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #838282;
    pointer-events: none;
}
.vedic-donation .btn {
    flex: 0 0 auto;
}
.price-donation {
    font-weight: 600;
    color: #00c46e;
}

/* Питання до товару при оформленні замовлення */
.vedic-questions__group + .vedic-questions__group {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid #dbdfd1;
}
.vedic-questions__product {
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: #232a11;
}
