body.admin-bar .site-header {
    top: 32px;
}

/* ======================================================
   ВЕРХНІЙ РЯДОК ТА НАВІГАЦІЯ
   ====================================================== */
.header-top {
    padding: 40px 0 20px;
    background-color: #fdfbf8;
}

.header-top-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.header-top-left,
.header-icons {
    flex: 1;
}

.header-icons {
    display: flex;
    justify-content: flex-end;
}

.logo {
    flex: 2;
    text-align: center;
}

.logo h1 {
    font-family: 'Playfair Display', serif;
    font-size: 42px;
    font-weight: 400;
    color: #333;
    margin: 0;
    letter-spacing: 2px;
    line-height: 1;
    transition: color 0.4s ease, transform 0.4s ease;
}

.logo a {
    text-decoration: none;
}

.logo a:hover h1 {
    color: #d4a373;
}

.header-bottom {
    padding: 15px 0;
    border-top: 1px solid #f0ece8;
    border-bottom: 1px solid #f0ece8;
    background-color: #fdfbf8;
}

.mobile-menu-toggle {
    display: none;
}
.main-navigation {
    display: flex;
    justify-content: center;
}

.nav-list {
    display: flex;
    gap: 45px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-list li a {
    text-decoration: none;
    color: #4a4a4a;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: color 0.3s ease;
}

.nav-list li a:hover {
    color: #d4a373;
}

/* Відносно цього пункту позиціонуємо підменю */
.menu-item-has-children {
    position: relative;
}

/* Ховаємо підменю за замовчуванням */
.sub-menu {
    display: none;
    position: absolute; 
    top: 100%;
    left: 0;
    z-index: 99;
    
    background-color: #fff;
    min-width: 200px;
}
/* Прибираємо маркери у випадаючому списку та скидаємо стандартні відступи */
.sub-menu {
    list-style: none;
    padding: 0; 
    margin: 0;
}

/* Збільшуємо відстань між пунктами та робимо їх зручними для кліку */
.sub-menu li a {
    display: block; /* Щоб посилання займало всю ширину рядка */
    padding: 12px 15px; /* 12px зверху/знизу (це і є наша відстань), 15px по боках */
    text-decoration: none; /* Прибираємо підкреслення тексту, якщо воно є */
    color: #333; /* Колір тексту (зміни на свій) */
}

/* Легкий ефект при наведенні для краси (за бажанням) */
.sub-menu li a:hover {
    background-color: #f5f5f5; 
}

/* Показуємо підменю при наведенні на батьківський пункт */
.menu-item-has-children:hover > .sub-menu {
    display: block;
}

.cart-contents {
    text-decoration: none;
    color: #333;
    position: relative;
    display: flex;
    align-items: center;
}

.cart-contents svg {
    transition: stroke 0.3s ease, transform 0.3s ease;
}

.cart-contents:hover {
    color: #d4a373; /* Золотистий колір для лічильника */
}

.cart-contents:hover svg {
    stroke: #d4a373; /* Золотистий колір для ліній кошика */
    transform: translateY(-2px); /* Легке елегантне підняття вгору */
}

.cart-count {
    position: absolute;
    top: -10px;
    right: -12px;
    background-color: #d4a373;
    color: white;
    font-size: 10px;
    font-weight: 700;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ======================================================
   ГОЛОВНА СТОРІНКА (Hero, Категорії, Товари)
   ====================================================== */
.hero-section {
    position: relative;
    height: 85vh;
    min-height: 600px;
    background-color: #f4f0ec;
    background-image: url('images/hero-flowers.jpg');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.03); 
}

.hero-container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.hero-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 4px;
    color: #d4a373;
    display: block;
    margin-bottom: 20px;
}

.hero-title {
    font-family: 'Playfair Display', serif;
    font-size: 72px;
    font-weight: 400;
    color: #333;
    margin: 0 0 30px;
    line-height: 1.1;
}

.hero-description {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    color: #555;
    margin-bottom: 40px;
    line-height: 1.6;
}

.btn-primary {
    display: inline-block;
    padding: 18px 45px;
    background-color: transparent;
    border: 1px solid #333;
    color: #333;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: all 0.4s ease;
}

.btn-primary:hover {
    background-color: #333;
    color: #fff;
    transform: translateY(-3px); 
}

.store-categories {
    padding: 80px 0;
    text-align: center;
}

.section-title {
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    color: #333;
    margin-bottom: 50px;
    font-weight: 400;
}

.categories-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px 20px; 
}

.category-item a {
    text-decoration: none;
    display: block;
    transition: transform 0.3s ease;
}

.category-item a:hover {
    transform: translateY(-5px); 
}

.category-image-wrapper {
    width: 160px;
    height: 160px;
    margin: 0 auto 20px;
    border-radius: 50%;
    overflow: hidden;
    background-color: #f9f6f3; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
    transition: box-shadow 0.4s ease;
}

.category-item a:hover .category-image-wrapper {
    box-shadow: 0 10px 25px rgba(212, 163, 115, 0.2); 
}

.category-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.category-name {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #4a4a4a;
    margin: 0;
    font-weight: 500;
    transition: color 0.3s ease;
}

.category-item a:hover .category-name {
    color: #d4a373; 
}

.featured-products {
    padding: 0 0 80px;
    text-align: center;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.product-card {
    background: #fff;
    transition: transform 0.3s ease;
    padding-bottom: 20px;
}

.product-card:hover {
    transform: translateY(-5px); 
}

.product-image {
    width: 100%;
    height: 350px; 
    overflow: hidden;
    background-color: #f9f6f3;
    margin-bottom: 20px;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; 
    transition: transform 0.5s ease;
}

.product-card:hover .product-image img {
    transform: scale(1.05); 
}

.product-link {
    text-decoration: none;
    display: block;
}

.product-title {
    font-family: 'Playfair Display', serif;
    font-size: 20px;
    color: #333;
    margin: 0 0 10px;
    font-weight: 400;
}

.product-price {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #4a4a4a;
    font-weight: 500;
    display: block;
    margin-bottom: 15px;
}

.product-price del {
    color: #999;
    font-size: 13px;
    margin-right: 8px;
}

.product-price ins {
    text-decoration: none;
    color: #d4a373; 
}

.btn-add-to-cart {
    display: inline-block;
    padding: 10px 25px;
    border: 1px solid #333;
    background: transparent;
    color: #333;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-add-to-cart:hover {
    background: #333;
    color: #fff;
}

/* ======================================================
   FOOTER (Підвал сайту)
   ====================================================== */
.site-footer {
    background-color: #fdfbf8; 
    border-top: 1px solid #f0ece8;
    color: #4a4a4a;
    padding: 80px 0 0;
    font-family: 'Montserrat', sans-serif;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px; 
    max-width: 1200px;
    margin: 0 auto 60px;
    padding: 0 20px;
}

.footer-brand {
    flex: 0 0 35%;
}

.footer-links {
    flex: 0 0 auto;
    width: 180px;
}

.footer-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #333;
    margin-bottom: 25px;
    font-weight: 600;
}

.footer-logo {
    text-decoration: none;
    display: inline-block;
    margin-bottom: 20px;
}

.footer-logo h2 {
    font-family: 'Playfair Display', serif;
    font-size: 26px;
    font-weight: 400;
    color: #333;
    margin: 0;
}

.footer-description {
    font-size: 13px;
    line-height: 1.8;
    color: #666;
    margin-bottom: 25px;
}

.footer-social a {
    text-decoration: none;
    color: #4a4a4a;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-right: 20px;
    transition: color 0.3s ease;
}

.footer-social a:hover {
    color: #d4a373; 
}

.footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-menu li {
    margin-bottom: 12px;
}

.footer-menu a {
    text-decoration: none;
    color: #666;
    font-size: 13px;
    transition: color 0.3s ease;
}

.footer-menu a:hover {
    color: #d4a373;
}

.footer-contacts .contact-item {
    font-size: 13px;
    line-height: 1.8;
    color: #666;
    margin-bottom: 10px;
}

.footer-contacts a {
    text-decoration: none;
    color: #666;
    transition: color 0.3s ease;
}

.footer-contacts a:hover {
    color: #d4a373;
}

.payment-methods {
    margin-top: 30px;
}

.payment-heading {
    font-size: 11px;
    text-transform: uppercase;
    color: #999;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

.payment-icon {
    font-size: 20px;
    margin-right: 10px;
    opacity: 0.7;
}

.footer-bottom {
    background-color: #f9f6f3; 
    padding: 25px 0;
    text-align: center;
    border-top: 1px solid #eee;
}

.footer-bottom .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 11px;
    color: #999;
}

.footer-bottom p {
    margin: 0;
}

/* ======================================================
   СТАНДАРТНІ СТОРІНКИ ТА КАТАЛОГ WOOCOMMERCE
   ====================================================== */
.page-main {
    padding: 80px 0 100px;
    background-color: #fdfbf8;
}

.page-container {
    max-width: 1000px; 
    margin: 0 auto;
    background: #fff;
    padding: 60px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.02); 
}

.page-title {
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    color: #333;
    text-align: center;
    margin-top: 0;
    margin-bottom: 40px;
    font-weight: 400;
}

.page-content {
    font-family: 'Montserrat', sans-serif;
    color: #4a4a4a;
    line-height: 1.8;
}

.woocommerce-shop .site-main,
.woocommerce-page .site-main {
    max-width: 1200px;
    margin: 60px auto 100px;
    padding: 0 20px;
}

.woocommerce-products-header__title {
    font-family: 'Playfair Display', serif;
    font-size: 42px;
    color: #333;
    text-align: center;
    font-weight: 400;
    margin-bottom: 50px;
}

.woocommerce-result-count {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    color: #999;
}

.woocommerce-ordering select {
    padding: 8px 15px;
    border: 1px solid #f0ece8;
    background: #fdfbf8;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    color: #4a4a4a;
    outline: none;
}

.woocommerce-cart .button,
.woocommerce-checkout .button {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 500;
}

/* ======================================================
   СІТКА ТОВАРІВ (Каталог та Рекомендації)
   ====================================================== */
.woocommerce ul.products,
body.woocommerce-cart .cross-sells ul.products,
body.woocommerce-cart .cart-collaterals .cross-sells ul.products,
body.woocommerce-cart .cart-empty-related ul.products {
    display: grid !important; 
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 40px 30px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce ul.products li.product {
    float: none !important;
    margin: 0 !important;
    width: 100% !important;
    background: #fff;
    transition: transform 0.3s ease;
    text-align: center;
    padding-bottom: 20px;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-5px);
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
    display: none !important;
}

.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last {
    clear: none !important;
    margin-top: 0 !important;
}

.woocommerce ul.products li.product a img,
body.woocommerce-cart ul.products li.product a img {
    width: 100%;
    height: 350px;
    object-fit: cover;
    background-color: #f9f6f3;
    margin-bottom: 20px;
    box-shadow: none; 
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-cart ul.products li.product .woocommerce-loop-product__title {
    font-family: 'Playfair Display', serif;
    font-size: 18px;
    color: #333;
    margin: 0 0 10px;
    padding: 0;
    font-weight: 400;
}

.woocommerce ul.products li.product .price {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #4a4a4a;
    font-weight: 500;
    margin-bottom: 15px;
}

.woocommerce ul.products li.product .price del {
    color: #999;
    font-size: 13px;
}

.woocommerce ul.products li.product .price ins {
    text-decoration: none;
    color: #d4a373; 
}

.woocommerce ul.products li.product .button,
body.woocommerce-cart ul.products li.product .button {
    display: inline-block;
    margin-top: 10px;
    padding: 10px 25px;
    border: 1px solid #333;
    background: transparent;
    color: #333;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 0;
    transition: all 0.3s ease;
    font-weight: 500;
}

.woocommerce ul.products li.product .button:hover,
body.woocommerce-cart ul.products li.product .button:hover {
    background: #333;
    color: #fff;
}

body.woocommerce-cart .return-to-shop .button.wc-backward {
    display: inline-block;
    padding: 15px 40px;
    background-color: #333;
    color: #fff;
    border: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 0;
    text-decoration: none;
    transition: background-color 0.3s ease;
}

body.woocommerce-cart .return-to-shop .button.wc-backward:hover {
    background-color: #d4a373; 
}

/* ======================================================
   WOOCOMMERCE: КАРТКА ТОВАРУ (Single Product)
   ====================================================== */
.woocommerce-product-gallery {
    margin-top: 40px;
    margin-bottom: 40px;
}

.woocommerce-product-gallery__wrapper {
    margin-bottom: 20px !important; 
}

.woocommerce div.product div.images .flex-viewport {
    margin-bottom: 20px !important;
}

.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
    margin-top: 20px !important;
    display: flex !important;
    gap: 15px;
    margin-bottom: 0;
    padding: 0;
}

.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs li {
    list-style: none;
    width: calc(25% - 11.25px); 
    float: none !important;
}

.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs li img {
    width: 100%;
    height: auto;
    opacity: 0.6;
    transition: all 0.3s ease;
    cursor: pointer;
    border-radius: 0; 
}

.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs li img:hover,
.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs li img.flex-active {
    opacity: 1;
}

.product_title {
    font-family: 'Playfair Display', serif;
    font-size: 38px;
    color: #333;
    margin-top: 0;
    margin-bottom: 15px;
    font-weight: 400;
}

.woocommerce div.product p.price, 
.woocommerce div.product span.price {
    font-family: 'Montserrat', sans-serif;
    color: #d4a373; 
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 30px;
}

.woocommerce div.product form.cart {
    display: flex;
    gap: 15px;
    margin-bottom: 40px;
}

.woocommerce div.product form.cart .quantity input.qty {
    width: 70px;
    height: 50px;
    padding: 0 10px;
    border: 1px solid #ddd;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    text-align: center;
}

.woocommerce div.product form.cart .button {
    height: 50px;
    padding: 0 40px;
    background-color: #333 !important; 
    color: #fff !important;
    border: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: background-color 0.3s ease;
    font-weight: 500;
    border-radius: 0;
}

.woocommerce div.product form.cart .button:hover {
    background-color: #d4a373 !important; 
}

.product_meta {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    color: #999;
    border-top: 1px solid #eee;
    padding-top: 20px;
}

.product_meta a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.product_meta a:hover {
    color: #d4a373;
}

.woocommerce-tabs {
    margin-top: 60px;
    border-top: 1px solid #eee;
    padding-top: 40px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    margin: 0 0 30px;
    padding: 0;
    display: flex;
    gap: 30px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    list-style: none;
    margin: 0 !important;
    padding: 0;
    border: none !important;
    background: transparent !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #999 !important;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding-bottom: 5px;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
    color: #333 !important;
    border-bottom-color: #d4a373; 
}

.woocommerce div.product .woocommerce-tabs .panel {
    font-family: 'Montserrat', sans-serif;
    color: #555;
    line-height: 1.8;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
    display: none;
}

/* ======================================================
   WOOCOMMERCE: СТОРІНКА КОШИКА (Преміальний дизайн)
   ====================================================== */
.woocommerce table.shop_table {
    border: none;
    border-collapse: collapse;
    border-radius: 0;
}

.woocommerce table.shop_table th {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #999;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 2px solid #f0ece8;
    padding: 15px 10px;
}

.woocommerce table.shop_table td {
    border-top: 1px solid #f0ece8;
    padding: 20px 10px;
    vertical-align: middle;
}

.woocommerce table.cart .product-thumbnail {
    width: 100px;
}

.woocommerce table.cart .product-thumbnail img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 0;
    box-shadow: none;
}

.woocommerce-cart table.cart td.product-name a {
    font-family: 'Playfair Display', serif;
    font-size: 18px;
    color: #333;
    text-decoration: none;
    font-weight: 400;
}

.woocommerce-cart table.cart td.product-name a:hover {
    color: #d4a373;
}

.woocommerce-cart table.cart td.actions .coupon {
    display: none !important;
}

.woocommerce-cart table.cart td.actions {
    padding: 20px 0;
    text-align: right;
}

.woocommerce .cart-collaterals .cart_totals, 
.woocommerce-page .cart-collaterals .cart_totals {
    width: 40%;
    float: right;
    background: #fdfbf8;
    padding: 30px;
    border: 1px solid #f0ece8;
    margin-top: 30px;
}

.woocommerce .cart-collaterals .cart_totals h2 {
    font-family: 'Playfair Display', serif;
    font-size: 24px;
    color: #333;
    margin-top: 0;
    margin-bottom: 20px;
    border-bottom: 1px solid #e9e5e1;
    padding-bottom: 15px;
}

.woocommerce .cart-collaterals .cart_totals table.shop_table {
    width: 100%;
}

.woocommerce .cart-collaterals .cart_totals table th,
.woocommerce .cart-collaterals .cart_totals table td {
    border: none;
    border-bottom: 1px solid #e9e5e1;
    padding: 15px 0;
    font-family: 'Montserrat', sans-serif;
    color: #4a4a4a;
}

.woocommerce .cart-collaterals .cart_totals .order-total td strong {
    color: #d4a373;
    font-size: 20px;
}

.woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout {
    padding-bottom: 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 0;
    margin-top: 20px;
    padding: 18px 20px;
    background-color: #333;
    color: #fff;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 0;
    font-weight: 500;
    transition: background-color 0.3s ease;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: #d4a373;
}

/* --- ВИРІВНЮВАННЯ КОШИКА (Дві колонки) --- */
.woocommerce-cart .woocommerce {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
}

/* Ліва частина (Таблиця з товарами) */
.woocommerce-cart .woocommerce-cart-form {
    flex: 0 0 60%;
}

/* Права частина (Блок підсумків) */
.woocommerce-cart .cart-collaterals {
    flex: 0 0 35%;
}

/* Скидаємо старі флоати для блоку підсумків */
.woocommerce .cart-collaterals .cart_totals, 
.woocommerce-page .cart-collaterals .cart_totals {
    width: 100%; /* Тепер він займає всі 35% своєї колонки */
    float: none;
    margin-top: 0;
}

/* Вирівнюємо кнопку "Оновити кошик" по правому краю таблиці */
.woocommerce-cart table.cart td.actions {
    text-align: right;
}
/* --- СТИЛІЗАЦІЯ ЦІНИ В ТАБЛИЦІ КОШИКА --- */

/* Ціна за одиницю товару */
.woocommerce-cart table.cart td.product-price {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #4a4a4a;
    font-weight: 500;
}

/* Сума за товар (Проміжний підсумок у рядку) */
.woocommerce-cart table.cart td.product-subtotal {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
}

/* Робимо підсумкову суму рядка нашим фірмовим золотистим кольором */
.woocommerce-cart table.cart td.product-subtotal .woocommerce-Price-amount.amount {
    color: #d4a373;
}
/* --- ПРИБИРАЄМО КОЛОНКУ ПРОМІЖНОГО ПІДСУМКУ В ТАБЛИЦІ --- */
.woocommerce-cart table.cart th.product-subtotal,
.woocommerce-cart table.cart td.product-subtotal {
    display: none !important;
}

/* --- ЗАБОРОНЯЄМО ЦІНІ ПЕРЕНОСИТИСЯ НА 2 РЯДКИ --- */
.woocommerce-cart table.cart td.product-price {
    white-space: nowrap; /* Ціна завжди буде в один рядок */
}

/* Трохи розширюємо колонку ціни, щоб їй було вільно */
.woocommerce-cart table.cart th.product-price {
    width: 15%;
}
/* --- ЖОРСТКЕ ВИРІВНЮВАННЯ ЗАГОЛОВКІВ ТАБЛИЦІ --- */
.woocommerce table.shop_table th {
    display: table-cell !important;
    vertical-align: middle !important;
    padding: 15px 10px !important;
}

/* На всякий випадок скидаємо специфічні відступи для ціни, які міг додати Woo */
.woocommerce-cart table.cart th.product-price {
    margin: 0 !important;
    line-height: normal !important;
}
/* ======================================================
   WOOCOMMERCE: ОФОРМЛЕННЯ ЗАМОВЛЕННЯ (Checkout)
   ====================================================== */

/* Робимо саму форму грід-контейнером */
form.woocommerce-checkout {
    display: grid;
    grid-template-columns: 55% 40%;
    justify-content: space-between;
    align-items: start;
    margin-top: 40px;
}

/* --- 1. ЛІВА ЧАСТИНА (Всі дані клієнта) --- */
#customer_details {
    grid-column: 1;
    grid-row: 1 / 3; /* Розтягуємо на обидва рядки вниз */
}

/* Скидаємо стандартні міні-колонки Woo, щоб "Додаткова інформація" стала чітко під "Деталями оплати" */
#customer_details .col-1,
#customer_details .col-2 {
    width: 100% !important;
    float: none !important;
    margin-bottom: 40px;
}

/* --- 2. ПРАВА ЧАСТИНА (Заголовок "Ваше замовлення") --- */
h3#order_review_heading {
    grid-column: 2;
    grid-row: 1;
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 15px;
    border-bottom: 1px solid #e9e5e1;
}

/* --- 3. ПРАВА ЧАСТИНА (Сам блок з підсумками та оплатою) --- */
#order_review {
    grid-column: 2;
    grid-row: 2;
    background: #fdfbf8; /* Наш кремовий фон */
    padding: 40px;
    border: 1px solid #f0ece8;
}

/* --- ЗАГАЛЬНІ СТИЛІ ДЛЯ ЗАГОЛОВКІВ ТА ФОРМИ --- */
.woocommerce-checkout h3 {
    font-family: 'Playfair Display', serif;
    font-size: 28px;
    color: #333;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: 400;
    border-bottom: 1px solid #e9e5e1;
    padding-bottom: 15px;
}

/* Лейбли (назви полів) */
.woocommerce-checkout form .form-row label {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    color: #333;
    font-weight: 500;
    margin-bottom: 8px;
}

/* Поля вводу */
.woocommerce-checkout form .form-row input.input-text, 
.woocommerce-checkout form .form-row textarea,
.select2-container--default .select2-selection--single {
    width: 100%;
    padding: 12px 15px;
    height: auto;
    border: 1px solid #e9e5e1;
    background-color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #4a4a4a;
    border-radius: 0;
    outline: none;
    transition: border-color 0.3s ease;
}

.woocommerce-checkout form .form-row input.input-text:focus, 
.woocommerce-checkout form .form-row textarea:focus {
    border-color: #d4a373; /* Золотистий акцент */
}

/* --- ТАБЛИЦЯ "ВАШЕ ЗАМОВЛЕННЯ" --- */
.woocommerce-checkout table.shop_table {
    border: none;
    margin-bottom: 30px;
    border-collapse: collapse;
    width: 100%;
}

.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td {
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #e9e5e1;
    padding: 15px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #4a4a4a;
}

.woocommerce-checkout table.shop_table .order-total td strong {
    color: #d4a373;
    font-size: 20px;
}

/* --- БЛОК ОПЛАТИ ТА КНОПКА --- */
.woocommerce-checkout #payment {
    background: transparent;
    border-radius: 0;
    padding: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid #e9e5e1;
    padding: 0 0 20px;
    margin-bottom: 20px;
}

.woocommerce-checkout #payment div.payment_box {
    background-color: #fff;
    color: #555;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    border-radius: 0;
    padding: 15px;
    box-shadow: none;
    border: 1px solid #e9e5e1;
}

.woocommerce-checkout #payment #place_order {
    width: 100%;
    padding: 20px;
    background-color: #333;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 0;
    font-weight: 500;
    transition: background-color 0.3s ease;
    border: none;
    margin-top: 20px;
    cursor: pointer;
}

.woocommerce-checkout #payment #place_order:hover {
    background-color: #d4a373;
}
/* ======================================================
   СТОРІНКА КОНТАКТІВ (Індивідуальний шаблон)
   ====================================================== */
.contacts-main {
    padding: 80px 20px 100px;
    background-color: #fdfbf8; /* Наш фірмовий кремовий фон */
}

.contacts-container {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03); /* Легка тінь */
    align-items: stretch; /* Щоб колонки були однакової висоти */
}

/* Колонка з фото */
.contacts-image-col {
    flex: 0 0 45%; /* Фото займає 45% ширини */
}

.contacts-image-col img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Фото красиво заповнює блок без спотворень */
    display: block;
}

/* Колонка з текстом */
.contacts-info-col {
    flex: 0 0 55%;
    padding: 80px 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.contacts-title {
    font-family: 'Playfair Display', serif;
    font-size: 38px;
    color: #333;
    margin-top: 0;
    margin-bottom: 15px;
    font-weight: 400;
}

.contacts-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #666;
    line-height: 1.8;
    margin-bottom: 40px;
}

/* Блоки контактів */
.contact-item {
    margin-bottom: 30px;
}

.contact-label {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #999;
    margin-bottom: 10px;
}

.contact-item a, 
.contact-item span {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #333;
    text-decoration: none;
    line-height: 1.8;
    transition: color 0.3s ease;
}

.contact-item a:hover {
    color: #d4a373; /* Золотистий колір при наведенні */
}

/* --- СОЦМЕРЕЖІ З ІКОНКАМИ --- */
.social-links-wrapper {
    margin-top: 40px;
}

.social-icons {
    display: flex;
    gap: 20px; /* Відстань між іконками */
    margin-top: 15px;
}

.social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    border: 1px solid #e9e5e1; /* Легка кругла рамочка */
    border-radius: 50%;
    color: #333; /* Початковий колір іконок */
    transition: all 0.3s ease;
}

.social-icons a:hover {
    color: #fff; /* Іконка стає білою */
    background-color: #d4a373; /* Рамка заповнюється золотистим кольором */
    border-color: #d4a373;
    transform: translateY(-3px); /* Легке підстрибування */
}
/* ======================================================
   ГОЛОВНА СТОРІНКА: БЛОК "ПРО НАС"
   ====================================================== */
.home-about {
    padding: 100px 0;
    background-color: #fff; 
}

.home-about-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center; /* Вирівнюємо фото і текст по центру вертикалі */
    gap: 80px; /* Велика красива відстань між фото і текстом */
}

/* Колонка з фото */
.home-about-image {
    flex: 0 0 45%; 
    position: relative;
}

.home-about-image img {
    width: 100%;
    height: 600px; /* Високе журнальне фото */
    object-fit: cover;
    box-shadow: 0 20px 50px rgba(0,0,0,0.06); /* Легка елегантна тінь */
}

/* Колонка з текстом */
.home-about-content {
    flex: 0 0 50%;
}

.home-about-title {
    font-family: 'Playfair Display', serif;
    font-size: 42px;
    color: #333;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: 400;
    line-height: 1.2;
}

.home-about-text {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 40px;
}

/* ======================================================
   СТОРІНКА "ПРО НАС" (Шаблон page-about)
   ====================================================== */

/* Головний заголовок сторінки */
.about-hero {
    padding: 80px 20px 40px;
    text-align: center;
    background-color: #fff;
}

.about-hero-container {
    max-width: 800px;
    margin: 0 auto;
}

.about-hero-title {
    font-family: 'Playfair Display', serif;
    font-size: 48px;
    color: #333;
    margin-top: 0;
    margin-bottom: 20px;
    font-weight: 400;
}

.about-hero-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    color: #666;
    line-height: 1.8;
}

/* Секції з текстом і фото */
.about-section {
    padding: 80px 20px;
    background-color: #fff;
}

.about-section.bg-cream {
    background-color: #fdfbf8; /* Кремовий фон для чергування */
}

.about-container {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 80px;
}

/* Міняємо місцями фото і текст для ефекту "шахівниці" */
.about-container.reverse {
    flex-direction: row-reverse;
}

.about-content {
    flex: 1;
}

.about-content h2 {
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    color: #333;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: 400;
}

.about-content p {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 20px;
}

.about-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.about-list li {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 15px;
    position: relative;
    padding-left: 25px;
}

.about-list li::before {
    content: "•";
    color: #d4a373; /* Золота крапка */
    font-size: 24px;
    position: absolute;
    left: 0;
    top: -4px;
}

.about-image {
    flex: 1;
}

.about-image img {
    width: 100%;
    height: 600px;
    object-fit: cover;
    box-shadow: 0 15px 40px rgba(0,0,0,0.05);
}

/* Фінальний блок (Заклик до дії) */
.about-cta {
    padding: 100px 20px;
    text-align: center;
    background-color: #fff;
}

.about-cta-container {
    max-width: 700px;
    margin: 0 auto;
}

.about-cta-container h2 {
    font-family: 'Playfair Display', serif;
    font-size: 36px;
    color: #333;
    margin-bottom: 30px;
    font-weight: 400;
}

.about-cta-container p {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 40px;
}
/* ======================================================
   МОБІЛЬНА АДАПТАЦІЯ (Екрани до 768px)
   ====================================================== */

    @media (max-width: 768px) {
    
    /* --- ЯДЕРНЕ СКИДАННЯ ШИРИНИ --- */
    html, body {
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: hidden !important; /* Обрізаємо все, що вилазить за краї */
        margin: 0 !important;
        padding: 0 !important;
    }

    * {
        box-sizing: border-box !important;
    }

    /* Примусово звужуємо всі головні контейнери сайту */
    .site-main, 
    .site-header, 
    .site-footer, 
    .home-about-container, 
    .about-container, 
    .contacts-container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    /* --- ШАПКА ТА БУРГЕР-МЕНЮ (Ідеальна мобільна версія) --- */
    .site-header {
        position: relative;
    }
    
    .header-top {
        padding: 15px 0 !important; /* Зменшуємо висоту шапки */
    }
    
    .header-top-container {
        display: flex !important;
        flex-direction: row !important; /* Вишиковуємо в один ряд */
        justify-content: center !important;
        align-items: center !important;
        min-height: 50px;
        padding-top: 0 !important;
    }
    
    .header-top-left {
        display: none !important; /* Прибираємо пустий блок */
    }
    
    /* Логотип строго по центру */
    .logo {
        flex: 0 0 60% !important;
        text-align: center;
        margin: 0 !important;
    }
    
    .logo h1 {
        font-size: 22px !important; /* Зменшуємо шрифт для телефону */
        line-height: 1.2 !important;
    }

    /* Кошик жорстко закріплюємо справа */
    .header-icons {
        position: absolute !important;
        right: 15px;
        top: 15px; /* Вирівнюємо по висоті */
        margin: 0 !important;
        justify-content: flex-end !important;
    }

    /* Бургер жорстко зліва, піднімаємо його з нижнього блоку */
    .header-bottom-container {
        position: static !important;
        padding: 0 !important;
    }
    
    .mobile-menu-toggle {
        display: flex; /* Показуємо бургер */
        position: absolute;
        left: 15px;
        top: 10px; /* Трохи компенсуємо відступи самої кнопки */
        margin: 0 !important;
        padding: 10px !important;
        z-index: 1001; /* Щоб був поверх усього */
        background: none;
        border: none;
        cursor: pointer;
        flex-direction: column;
        gap: 6px;
    }

    .mobile-menu-toggle span {
        display: block;
        width: 30px;
        height: 2px;
        background-color: #333;
        transition: 0.3s ease;
    }

    /* Анімація хрестика */
    .mobile-menu-toggle.active span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
    .mobile-menu-toggle.active span:nth-child(2) { opacity: 0; }
    .mobile-menu-toggle.active span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

    /* Випадаюче меню */
    .main-navigation {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: #fdfbf8;
        padding: 20px 0;
        box-shadow: 0 10px 20px rgba(0,0,0,0.05);
        z-index: 999;
        border-top: 1px solid #e9e5e1;
    }
    
    .main-navigation.active {
        display: block;
    }
    
    .nav-list {
        flex-direction: column !important;
        align-items: center;
        gap: 20px !important;
    }

    /* --- БАНЕР (Hero Section) --- */
    .hero-section {
        min-height: 400px !important; /* Зменшуємо висоту */
        height: auto !important;
        padding: 60px 15px !important;
    }
    .hero-title {
        font-size: 42px !important; /* Текст влазить в екран */
        line-height: 1.2 !important;
        margin-bottom: 20px !important;
    }
    .hero-subtitle {
        font-size: 12px !important;
        letter-spacing: 2px !important;
    }
    .hero-description {
        font-size: 15px !important;
        margin-bottom: 30px !important;
    }
    .btn-primary {
        padding: 15px 30px !important;
        font-size: 12px !important;
    }

    /* --- КОЛЕКЦІЇ (Кастомна сітка) --- */
    .categories-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important; /* Робимо рівно 2 колонки */
        gap: 20px 15px !important; /* Відступи між блоками */
    }
    
    .category-image-wrapper {
        width: 130px !important; /* Трохи зменшуємо кружечки, щоб вони ідеально стали на телефоні */
        height: 130px !important;
    }

    .category-name {
        font-size: 11px !important; /* Трохи зменшуємо шрифт для телефону */
        line-height: 1.4 !important;
    }

    /* --- НОВІ НАДХОДЖЕННЯ (Товари на головній) --- */
    .products-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important; /* Теж по 2 товари в ряд */
        gap: 15px !important;
    }

    .product-image {
        height: 220px !important; /* Зменшуємо висоту фото, щоб не були занадто витягнутими */
    }

    .product-title {
        font-size: 16px !important; /* Зменшуємо заголовок товару */
    }

    .btn-add-to-cart {
        padding: 8px 15px !important; /* Робимо кнопку трохи меншою */
        font-size: 10px !important;
    }

    /* ... далі йдуть ті стилі, що ми писали раніше (footer-container, home-about і т.д.) ... */
    
    /* --- 1. ФУТЕР --- */
    /* --- ФУТЕР (Тотальне центрування) --- */
    .site-footer {
        text-align: center !important;
    }
    
    .footer-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 30px !important;
    }

    .footer-column {
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    
    /* Центруємо заголовки колонок */
    .footer-column h3, 
    .footer-column h4 {
        text-align: center !important;
        width: 100% !important;
        margin-bottom: 15px !important;
    }
    
    /* Збиваємо зміщення списків і центруємо їх */
    .footer-column ul, 
    .footer-column .menu,
    .footer-menu {
        padding-left: 0 !important;
        margin: 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    
    .footer-column li {
        text-align: center !important;
        width: 100% !important;
    }

    .footer-column p, 
    .footer-column a {
        text-align: center !important;
        justify-content: center !important;
    }

    /* Якщо є іконки соцмереж */
    .social-icons {
        justify-content: center !important;
        width: 100% !important;
    }

    /* --- 2. ГОЛОВНА СТОРІНКА: Блок "Про нас" --- */
    .home-about-container {
        flex-direction: column;
        text-align: center;
        gap: 40px;
    }
    .home-about-image img {
        height: 400px; /* Трохи зменшуємо висоту фото для телефону */
    }

    /* --- 3. СТОРІНКА "КОНТАКТИ" --- */
    .contacts-container {
        flex-direction: column;
    }
    .contacts-info-col {
        padding: 40px 20px; /* Зменшуємо величезні відступи */
        text-align: center;
    }
    .social-links-wrapper .social-icons {
        justify-content: center;
    }

    /* --- 4. СТОРІНКА "ПРО НАС" (Зигзаг) --- */
    .about-container, 
    .about-container.reverse {
        flex-direction: column; /* Ламаємо зигзаг, ставимо все в одну колонку */
        text-align: center;
        gap: 40px;
    }
    .about-image img {
        height: 350px;
    }
    .about-hero-title {
        font-size: 32px; /* Зменшуємо головний заголовок */
    }
    .about-content h2 {
        font-size: 28px;
    }
    .about-list li {
        text-align: left; /* А от список залишаємо по лівому краю, щоб легко читався */
    }

    /* --- СТОРІНКА МАГАЗИНУ (Каталог WooCommerce) --- */
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important; /* Жорстко по 2 товари в ряд */
        gap: 15px !important;
    }
    
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 100% !important; /* В Grid товар має займати всю ширину своєї комірки */
        max-width: 100% !important;
        margin: 0 !important;
        float: none !important; /* Відключаємо старі флоати WooCommerce */
    }

    /* Зменшуємо шрифти та кнопки, щоб усе виглядало акуратно на телефоні */
    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: 14px !important;
        line-height: 1.3 !important;
        margin-bottom: 10px !important;
    }
    
    .woocommerce ul.products li.product .price {
        font-size: 14px !important;
    }

    .woocommerce ul.products li.product .button {
        padding: 8px 10px !important;
        font-size: 11px !important;
        width: 100% !important; /* Кнопка на всю ширину картки товару */
        text-align: center !important;
    }

    /* --- СТОРІНКА КОШИКА (Перетворюємо таблицю на картки) --- */
    .woocommerce-cart .woocommerce {
        display: flex !important;
        flex-direction: column !important;
    }
    
    .woocommerce table.shop_table.cart {
        border: none !important;
    }
    
    /* Ховаємо верхній рядок з назвами колонок (він на телефоні не потрібен) */
    .woocommerce table.shop_table.cart thead {
        display: none !important; 
    }
    
    /* Перетворюємо рядок таблиці на окрему картку товару */
    .woocommerce table.shop_table.cart tr.cart_item {
        display: block !important;
        position: relative !important;
        padding: 20px 0 !important;
        border-bottom: 1px solid #e9e5e1 !important;
    }
    
    /* Кожна клітинка стає окремим рядком з вирівнюванням */
    .woocommerce table.shop_table.cart td {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        border: none !important;
        padding: 10px 0 !important;
        text-align: right !important;
    }
    
    /* Виводимо підписи (Ціна, Кількість тощо) перед значеннями */
    .woocommerce table.shop_table.cart td::before {
        content: attr(data-title); /* Беремо назву колонки з атрибута */
        font-family: 'Montserrat', sans-serif;
        font-weight: 600;
        color: #333;
    }
    
    /* Фото товару центруємо */
    .woocommerce table.shop_table.cart td.product-thumbnail {
        justify-content: center !important;
        padding-bottom: 15px !important;
    }
    
    .woocommerce table.shop_table.cart td.product-thumbnail::before {
        display: none !important; /* Для фото підпис не потрібен */
    }
    
    .woocommerce table.shop_table.cart td.product-thumbnail img {
        width: 120px !important; /* Робимо картинку більшою */
        height: auto !important;
        box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    }
    
    /* Хрестик "Видалити" ставимо акуратно в правий верхній кут картки */
    .woocommerce table.shop_table.cart td.product-remove {
        position: absolute !important;
        top: 10px !important;
        right: 0 !important;
        border: none !important;
        padding: 0 !important;
        display: block !important;
    }
    
    .woocommerce table.shop_table.cart td.product-remove::before {
        display: none !important;
    }

    /* Блок з купоном розтягуємо на всю ширину */
    .woocommerce table.shop_table.cart td.actions {
        display: block !important;
        text-align: center !important;
    }
    .woocommerce table.shop_table.cart td.actions .coupon {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
        padding-bottom: 15px !important;
    }
    
    /* --- ПІДСУМКИ КОШИКА (Разом) --- */
    .woocommerce .cart-collaterals {
        width: 100% !important;
        margin-top: 30px !important;
    }
    
    .woocommerce .cart-collaterals .cart_totals {
        width: 100% !important;
        float: none !important;
        padding: 25px !important;
        background-color: #fdfbf8 !important; /* Наш преміальний кремовий фон */
        border: 1px solid #e9e5e1 !important;
    }

    /* --- СТОРІНКА ОФОРМЛЕННЯ ЗАМОВЛЕННЯ (Абсолютний фікс колонок) --- */
    .woocommerce-checkout form.checkout {
        display: block !important; 
    }
    
    /* Ламаємо глобальні колонки (Деталі зліва, Доставка справа) */
    .woocommerce-checkout .col2-set,
    .woocommerce-checkout .col2-set .col-1,
    .woocommerce-checkout .col2-set .col-2,
    #customer_details {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        padding: 0 !important;
        margin: 0 0 20px 0 !important;
        display: block !important;
    }

    /* Примусово робимо ВСІ поля вводу (Ім'я, Прізвище тощо) на 100% ширини */
    .woocommerce form .form-row,
    .woocommerce form .form-row-first,
    .woocommerce form .form-row-last,
    .woocommerce form .form-row-wide {
        width: 100% !important;
        float: none !important;
        display: block !important;
        margin-bottom: 15px !important;
    }

    /* Фікс для скрипта випадаючих списків (Країна/Область) */
    .select2-container, 
    .select2-container .select2-selection--single {
        width: 100% !important;
        height: auto !important;
    }

    /* Стилізуємо самі поля вводу для зручності пальців */
    .woocommerce form .form-row input.input-text, 
    .woocommerce form .form-row textarea,
    .select2-container .select2-selection--single .select2-selection__rendered {
        width: 100% !important;
        padding: 12px 15px !important;
        font-size: 16px !important; /* Критично для iPhone, щоб не було zoom-у */
        box-sizing: border-box !important;
        border: 1px solid #e9e5e1 !important;
        border-radius: 4px !important;
        line-height: 1.5 !important;
    }

    /* ======================================================
       БЛОК "ВАШЕ ЗАМОВЛЕННЯ" ТА ОПЛАТА (Мобільний фікс)
       ====================================================== */
    #order_review {
        padding: 0;
    }
       
    #order_review_heading {
        margin-top: 40px !important;
        margin-bottom: 20px !important;
        text-align: center !important;
        width: 100% !important;
    }

    .woocommerce-checkout-review-order {
        width: 100% !important;
    }

    /* Ламаємо стару таблицю і робимо гнучкі рядки */
    .woocommerce-checkout table.shop_table {
        display: block !important;
        width: 100% !important;
        border: 1px solid #e9e5e1 !important;
        border-radius: 5px !important;
        background: #fff !important;
    }

    .woocommerce-checkout table.shop_table thead,
    .woocommerce-checkout table.shop_table tbody,
    .woocommerce-checkout table.shop_table tfoot {
        display: block !important;
        width: 100% !important;
    }

    /* Кожен рядок (Товар, Підсумок, Доставка) стає гнучким */
    .woocommerce-checkout table.shop_table tr {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 15px !important;
        border-bottom: 1px solid #e9e5e1 !important;
        margin: 0 !important;
    }

    /* Останній рядок без нижньої лінії */
    .woocommerce-checkout table.shop_table tr:last-child {
        border-bottom: none !important;
    }

    .woocommerce-checkout table.shop_table th, 
    .woocommerce-checkout table.shop_table td {
        display: block !important;
        border: none !important;
        padding: 0 !important;
        text-align: right !important; /* Ціни притискаємо вправо */
        font-size: 14px !important;
        background: transparent !important;
    }

    .woocommerce-checkout table.shop_table th {
        text-align: left !important; /* Назви притискаємо вліво */
        font-weight: 600 !important;
        flex: 1 !important;
    }

    .woocommerce-checkout table.shop_table td.product-name {
        text-align: left !important;
        flex: 1 !important;
        padding-right: 15px !important; /* Відступ від ціни */
    }

    /* --- МЕТОДИ ОПЛАТИ --- */
    #payment {
        background-color: #fdfbf8 !important; /* Преміальний кремовий фон */
        border-radius: 5px !important;
        margin-top: 20px !important;
        padding: 20px 15px !important;
        box-sizing: border-box !important;
    }

    #payment ul.payment_methods {
        padding: 0 !important;
        margin: 0 !important;
        border-bottom: 1px solid #e9e5e1 !important;
    }

    #payment ul.payment_methods li {
        list-style: none !important;
        text-align: left !important;
        margin-bottom: 15px !important;
    }

    /* Фікс радіокнопок, щоб не налізали на текст */
    #payment ul.payment_methods li input[type="radio"] {
        float: left !important;
        margin-top: 4px !important;
        margin-right: 10px !important;
    }

    #payment ul.payment_methods li label {
        display: block !important;
        margin-left: 25px !important; /* Звільняємо місце для кружечка */
        font-weight: 600 !important;
        line-height: 1.4 !important;
    }

    /* Текст з описом способу оплати */
    #payment div.payment_box {
        margin-top: 10px !important;
        padding: 15px !important;
        background-color: #fff !important;
        border: 1px solid #e9e5e1 !important;
        border-radius: 4px !important;
        font-size: 13px !important;
        color: #555 !important;
    }

    /* --- УМОВИ ТА ВЕЛИКА КНОПКА --- */
    .woocommerce-terms-and-conditions-wrapper {
        margin: 20px 0 !important;
        text-align: left !important;
    }

    .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
        margin-right: 10px !important;
    }

    .woocommerce-checkout #payment div.form-row.place-order {
        width: 100% !important;
        float: none !important;
        padding: 0 !important;
        margin: 20px 0 0 0 !important;
    }

    .woocommerce #payment #place_order, 
    .woocommerce-page #payment #place_order {
        width: 100% !important;
        float: none !important;
        display: block !important;
        padding: 18px !important;
        font-size: 16px !important;
        background-color: #333 !important; /* Темна стильна кнопка */
        color: #fff !important;
        border: none !important;
        border-radius: 4px !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        white-space: normal !important;
        text-align: center !important;
    }


}

/* Робимо батьківський контейнер відносним */
.single-product div.product {
    position: relative;
}

.product-back-button-wrapper {
    position: fixed;
    top: 155px;
    left: 15px;
    z-index: 999; /* Має бути вище за зображення */
}

.product-back-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    background-color: #ffffff;
    color: #222;
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    transition: all 0.25s ease-in-out;
    border: 1px solid #eee;
}

.product-back-arrow:hover {
    background-color: #f8f8f8;
    color: #000;
    transform: translateX(-3px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

/* Для мобільних пристроїв можна трохи зменшити */
@media (max-width: 480px) {
    .product-back-button-wrapper {
        top: 120px;
        left: 10px;
    }
    .product-back-arrow {
        width: 36px;
        height: 36px;
    }
}
/* Кнопка в куті */
.sticky-contact-wrapper {
    position: fixed;
    bottom: 25px;
    right: 25px;
    z-index: 999;
}

.sticky-contact-button {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #1a73e8; /* Синій колір Google, можна змінити під дизайн */
    color: #fff;
    border: none;
    padding: 12px 22px;
    border-radius: 50px;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(26, 115, 232, 0.4);
    transition: 0.3s ease;
}

.sticky-contact-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(26, 115, 232, 0.5);
}

/* Модальне вікно */
.contact-dialog-fluent {
    border: none;
    border-radius: 20px;
    padding: 0;
    width: 95%;
    max-width: 450px;
    overflow: hidden;
}

.contact-dialog-fluent::backdrop {
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(4px);
}

.modal-content-fluent {
    padding: 40px 30px 30px;
    position: relative;
}

.close-modal-x {
    position: absolute;
    top: 15px;
    right: 20px;
    background: none;
    border: none;
    font-size: 30px;
    color: #999;
    cursor: pointer;
    line-height: 1;
}

.form-header {
    text-align: center;
    margin-bottom: 20px;
}

.form-header h3 {
    margin: 0 0 10px;
    font-size: 22px;
}

/* Приховуємо текст на мобільних, залишаємо іконку */
@media (max-width: 600px) {
    .contact-text { display: none; }
    .sticky-contact-button { padding: 15px; border-radius: 50%; }
    .sticky-contact-wrapper { bottom: 15px; right: 15px; }
}