/* Стилі для банера виставки */
.exhibition-banner-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}

.exhibition-banner-overlay.show {
    display: flex;
}

.exhibition-banner-container {
    position: relative;
    max-width: 380px;
    width: 90%;
}

.exhibition-banner-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

.exhibition-banner-close {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 35px;
    height: 35px;
    background-color: #b08f2d;
    color: white;
    border: none;
    border-radius: 50%;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    z-index: 10000;
    transition: background-color 0.3s ease;
}

.exhibition-banner-close:hover {
    background-color: #8e7324;
}

/* Reset стилів */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Імпорт шрифтів - об'єднаний в одному місці */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Lato:wght@300;400;700&display=swap');

@font-face {
    font-family: 'NK264';
    src: url('fonts/NK264.woff2') format('woff2'),
         url('fonts/NK264.woff') format('woff'),
         url('fonts/NK264.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'WindSong-Regular';
    src: url('fonts/WindSong-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* Базові стилі */
body {
    width: 100%;
    min-height: 100vh;
    overflow-x: hidden;
    font-family: 'Lato', sans-serif;
    background-color: #ffffff;
    color: #000;
	margin: 0; /* Додано з нових стилів */
}

/* Типографіка */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Lato', serif;
}

h1 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #333;
    margin-bottom: 10px;
    position: relative;
    z-index: 2;
    text-align: center;
}

h2 {
    font-weight: 600;
    font-size: 2em;
}

p {
    font-weight: 400;
    line-height: 1.6;
}

/* Header стилі */
.decorative-element img {
    width: 100%;
    height: auto;
    display: block;
}

/* Hero секція */
.hero {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 50px;
    background-image: url('images/hero-image.jpg');
    background-size: cover;
    background-position: center;
    height: 80vh;
    color: #fff;
    position: relative;
	margin-top: 20px; /* Додаємо відступ зверху */
}

.hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

.hero > div {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    padding: 0 20px;
}

.hero h2 {
    font-size: 48px;
    font-weight: bold;
    margin: 0;
}

.hero-line {
    display: block;
    text-align: left;
}

.hero-line.first {
    margin-left: 15%; /* Додаємо відступ для першого рядка */
}

.hero-line.second {
    margin-left: 30%; /* Відступ для другого рядка залишається */
}

.hero-line.third {
    margin-left: 60%; /* Відступ для третього рядка залишається */
}

/* Секції */
.section {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
}

.section h3 {
    font-size: 28px;
    margin-bottom: 30px;
    text-align: center;
    width: 100%;
    display: block;
}

/* About секція */
.about-container {
    display: flex;
    gap: 20px;
    margin: 10px 0;
    align-items: flex-start;
    width: 100%;
}

.tagline-container {
    flex: 0 0 60%;
    padding: 0;
    position: relative;
}

.about-content {
    flex: 0 0 35%;
    margin-left: auto;
    padding-right: 5px;
    margin-right: 5px;
}

.about-content h3 {
    font-size: 28px;
    margin-bottom: 30px;
    text-align: center;
    width: 100%;
    display: block;
}

.about-content p {
    margin-bottom: 15px; /* Відступ між абзацами */
    line-height: 1.6; /* Міжрядковий інтервал */
    text-indent: 30px; /* Відступ першого рядка */
    font-weight: 400;
    color: #333;
}

.artist-tagline {
    font-family: 'WindSong-Regular', cursive;
    font-size: 2.2rem;
    line-height: 1.4;
    color: #333;
    padding: 10px 0;
    text-align: left;
    width: 100%;
    margin: 0;
}

.content-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin-top: 20px;
}

.artist-image {
    width: 25vw;
    height: 25vw;
    object-fit: cover;
    margin-top: 20px;
    margin-left: 5%;
}

/* Галерея */
.gallery {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
    flex-wrap: nowrap;
}

/* Контейнер для категорії */
.gallery-category {
    width: 300px;
    height: 300px;
    position: relative;
    flex: 0 0 300px; /* Фіксований розмір, без стиснення і розтягування */
}

/* Інші стилі залишаються без змін */
.gallery-category a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    text-decoration: none;
}

/* Контейнер для зображення */
.gallery-category:hover {
    transform: translateY(-5px);
}

.gallery-category img {
    width: 300px; /* Точний розмір */
    height: 300px; /* Точний розмір */
    object-fit: cover;
    display: block;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3);
    transition: transform 0.3s ease;
}

.gallery-category:hover img {
    transform: scale(1.05);
}

.category-title {
    position: absolute;
    bottom: 14px;
    left: 30%;;
    transform: translateX(-50%);
    background-color: #d4af37;
    color: black;
    padding: 5px 20px; /* Внутрішні відступи (вертикальний та горизонтальний) */
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    min-width: 150px; /* Мінімальна ширина */
    z-index: 1;
}

.gallery-category:hover .category-title {
    background-color: #b08f2d;
}

/* Кнопки */
.view-collection-button {
    background-color: #d4af37;
    color: black;
    padding: 10px 40px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s ease;
    position: absolute;
    right: -100px;
    top: 500px;
    display: block;
}

.view-collection-button:hover {
    background-color: #b08f2d;
}



/* Стилі для сторінки сертифікатів */
.certificates-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.certificate-section {
    margin-bottom: 40px;
}

.certificate-section h2 {
    color: #333;
    margin-bottom: 20px;
    text-align: center;
}

.certificate-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 30px;
}

.certificate-item {
    padding: 20px;
    border: 1px solid #d4af37;
    border-radius: 8px;
    text-align: left;
}

.guarantee-list {
    list-style: none;
    padding: 0;
}

.guarantee-list li {
    margin-bottom: 15px;
    padding-left: 25px;
    position: relative;
}

.guarantee-list li:before {
    content: "✓";
    color: #d4af37;
    position: absolute;
    left: 0;
}

/* Стилі для блогу */
.blog-container {
    max-width: 1200px;
    margin: 50px auto;
    padding: 20px;
}

.blog-post {
    display: flex;
    margin-bottom: 60px;
    gap: 40px;
    align-items: flex-start;
    position: relative;
}

.blog-post:nth-child(even) {
    flex-direction: row-reverse;
}

.blog-post-image {
    flex: 0 0 45%;
}

.blog-post-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.blog-post-content {
    flex: 0 0 45%;
}

.blog-content h2 {
    font-family: 'Lato', serif;
    font-size: 32px;
    margin-bottom: 15px;
}

.blog-content p {
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    line-height: 1.6;
}

.read-more {
    display: inline-block;
    background-color: #d4af37;
    color: black;
    padding: 12px 30px;
    text-decoration: none;
    transition: background-color 0.3s ease;
    font-size: 18px;
}

.read-more:hover {
    background-color: #b08f2d;
}

/* Стилі для розгортання контенту */
.full-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-out;
    opacity: 0;
}

.blog-post-content.expanded .full-content {
    max-height: 2000px;
    opacity: 1;
    margin-top: 20px;
}

.blog-post-content.expanded .read-more {
    background-color: #b08f2d;
}

.full-content p {
    margin-bottom: 15px;
    text-indent: 20px;
    line-height: 1.6;
}

.full-content p:last-child {
    margin-bottom: 0;
}

/* Стилі для сторінки доставки */
.delivery-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.delivery-section {
    margin-bottom: 40px;
}

.delivery-section h2 {
    color: #333;
    margin-bottom: 20px;
    text-align: center;
}

.delivery-section p {
    line-height: 1.6;
    margin-bottom: 15px;
    color: #555;
}

.delivery-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 30px;
}

.delivery-content .delivery-option {
    padding: 20px;
    border: 2px solid #b08f2d; /* Змінюємо з 1px solid #ddd на 2px solid #b08f2d */
    border-radius: 8px;
    text-align: center;
    cursor: default; /* Додаємо cursor: default замість cursor: pointer */
}

.delivery-content .delivery-options .delivery-option:hover {
    transform: none;
    box-shadow: none;
}

/* Стилі для header */
header {
    padding-right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative; /* Повертаємо до original */
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    height: 120px;
}

.menu-icon {
    display: none; /* Приховуємо іконку на всіх екранах за замовчуванням */
    width: 24px;
    height: 24px;
    cursor: pointer;
    z-index: 1000;
}

/* Стиль для заблокованої прокрутки */
body.modal-open {
    overflow: hidden;
    touch-action: none;
}

/* Стилі для клікабельної області */
.header-link {
    position: relative;
    text-decoration: none;
    display: block;
    width: 400px;
    cursor: pointer;
    transition: opacity 0.3s ease;
    height: 100%;
}

.header-link:hover {
    opacity: 0.8;
}

/* Стилі для декоративного елементу */
.decorative-element {
    position: absolute;
    left: 40px;
    top: 50%;
    transform: translateY(-50%);
    width: 280px;
    z-index: 1;
}

.decorative-element img {
    width: 100%;
    height: auto;
    object-fit: contain;
    pointer-events: none;
}

/* Стилі для імені художниці */
.artist-name {
    font-family: 'WindSong-Regular', cursive;
    font-size: 2.88rem;
    line-height: 1.4;
    color: #333;
    position: absolute;
    left: 45px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    pointer-events: none;
	white-space: nowrap;
}
nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: 5px; /* додаємо негативний відступ справа */
    padding-right: 0; /* Прибираємо правий відступ */
    gap: 20px;
    width: 100%; /* Додаємо щоб зайняти всю доступну ширину */
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-right: 0; /* Прибираємо правий відступ */
}

nav a {
    text-decoration: none;
    color: #333;
    font-size: 1.1rem;
    text-align: center;
    transition: color 0.3s ease;
}

nav a:hover {
    color: #b08f2d;
}

/* Додати новий блок для іконок після nav a:hover */
.nav-icons {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-right: -40px; /* Прибираємо правий відступ */
}

/* Базові стилі для контейнера кошика */
.nav-icons > div:first-child {
    position: relative;
    display: inline-block;
}

/* Базові стилі для лічильника кошика */
#cartCounter {
    position: absolute;
    top: -8px;
    right: -8px;
    background-color: #b08f2d;
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    gap: 40px;
    min-height: 120vh;
	margin-bottom: 60px;
}

    /* Приховуємо мобільний опис за замовчуванням */
.mobile-description {
    display: none;
}

.image-section {
    flex: 1.5;
    padding-top: 70px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.details-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px 40px;
    margin-top: auto;
    padding-top: 40vh;
    position: relative;
}

.main-image {
    width: 60%;
    height: auto;
    margin-bottom: 20px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    transition: transform 0.3s ease; /* Додаємо плавний перехід */
    cursor: zoom-in; /* Змінюємо курсор при наведенні */
}

.main-image:hover {
    transform: scale(2); /* Збільшуємо зображення в 1.5 рази при наведенні */
    z-index: 100; /* Забезпечуємо, що збільшене фото буде поверх інших елементів */
}

.thumbnail-container {
    display: flex;
    position: relative;
    padding: 0 20px;
    width: 70%;
    margin: 10px auto;
    align-items: center;
}

/* Контейнер для прокрутки мініатюр */
.thumbnails {
    display: flex;
    overflow: hidden;
    width: 100%;
    gap: 10px;
    scroll-behavior: smooth;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

.thumbnails::-webkit-scrollbar {
    display: none;  /* Chrome, Safari and Opera */
}

/* Оновлений стиль мініатюр */
.thumbnail {
	flex: 0 0 55px;
    width: 55px;
    height: 55px;
    object-fit: cover;
    cursor: pointer;
    border: 2px solid transparent;
	transition: all 0.3s ease;
}

/* Стиль активної мініатюри */
.thumbnail.active {
    border-color: #b08f2d;
    transform: scale(1.1);
}

/* Оновлені стилі для навігаційних кнопок */
.nav-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    padding: 10px;
    color: #333;
    z-index: 2;
}

.prev-button {
    left: -15px;
}

.next-button {
    right: -15px;
}

.video-container {
    width: 60%;
    margin: 40px auto;
    position: relative;
    padding-bottom: 39.375%;
    height: 0;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.title {
    font-family: 'Lato', serif;
    font-size: 2em;
    font-weight: 600;
    margin-bottom: 20px;
    color: #333;
}

.price {
    font-size: 2.5em; /* Збільшуємо розмір шрифту */
    margin-bottom: 20px;
    font-weight: bold; /* Додаємо жирність */
    color: #333; /* Колір тексту */
}

.add-to-cart {
    background: #b08f2d;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    width: 70%;
    margin-left: 0;
    margin-bottom: 20px;
    position: relative;
}

.icons-container {
    position: absolute;  /* змінено з absolute на fixed */
    top: 90px;      /* змінено з -30px */
    right: 20px;     /* змінено з 100px */
    display: flex;
    gap: 15px;
    align-items: center;
    z-index: 105;  /* Зменшуємо z-index, щоб був менший ніж у модального вікна */
    pointer-events: all;
    visibility: visible;
}

/* Специфічні стилі для сторінки опису картин */
.details-section .icons-container {
    position: absolute;
    top: -30px;          /* змінено з 30px щоб підняти вверх */
    right: -115px;   /* змінено для зміщення праворуч */
}

.social-icons {
    display: flex;
    gap: 15px;
    align-items: center;
    margin-bottom: 0;
    opacity: 1;
}

.social-icons a {
    text-decoration: none;
    display: block;
}

.social-icons img {
    width: 24px;
    height: 24px;
    cursor: pointer;
    transition: transform 0.2s;
    display: block;
}

.icons-container .social-icons img:hover {
    transform: scale(1.1);
}

.cart-icon {
    width: 28px;
    height: 28px;
    cursor: pointer;
    transition: transform 0.2s;
}

.cart-icon:hover {
    transform: scale(1.1);
}

.artwork-description {
    width: 115%;
    margin-left: 0;
    margin-top: 30px;
    font-family: 'Lato', sans-serif;
    color: #333;
}

.artwork-description p {
    margin-bottom: 15px;
    line-height: 1.6;
    font-size: 16px;
    text-indent: 30px;
}

/* Стилі для модального вікна */
.modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 999;
}

.cart-modal {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    width: 400px;
    height: 100%;
    background-color: white;
    z-index: 1000;
    padding: 20px;
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.2);
    overflow-y: auto;
    overflow-x: hidden;
}

.close-cart {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 24px;
    cursor: pointer;
}

.cart-icon.active {
    color: #2e8b57;
}

/* Стилі для перемикача мови */
.language-switcher {
	position: relative; /* Додаємо відносне позиціонування */
	display: flex;
    align-items: center;
	z-index: 102;
}

.language-icon {
    width: 24px;
    height: 24px;
    cursor: pointer;
    transition: transform 0.2s;
}

.language-icon:hover {
    transform: scale(1.1);
}

/* Оновлені стилі для перемикача мови */
.language-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 55px); /* Збільшуємо відступ зверху */
    right: -10px; /* Зміщуємо вправо */
    padding: 5px;
    z-index: 103;
    background: transparent; /* Робимо фон прозорим */
}

.language-dropdown.show {
    display: block;
}

.lang-option {
    display: block;
    padding: 5px;
    text-decoration: none;
}

.lang-option img {
    width: 24px;
    height: 24px;
    display: block;
}

.lang-option:hover {
    background-color: #f5f5f5;
}

    /* ПРО АВТОРА */
.about-page {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}

.about-hero {
    position: relative;
    height: 400px;
    background-image: url('images/hero-about.jpg');
    background-size: cover;
    background-position: center;
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
}

.about-hero h1 {
    color: #fff;
    position: relative;
    z-index: 2;
    font-size: 3em;
    text-align: center;
}

.about-section {
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
    align-items: center;
}

.about-section:nth-child(even) {
    flex-direction: row-reverse;
}

.about-image {
    flex: 0 0 48%;
}

.about-image img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.about-text {
    flex: 0 0 45%;
}

.about-text h2 {
    color: #333;
    margin-bottom: 20px;
    font-size: 2em;
}

.about-text p {
    margin-bottom: 15px;
    line-height: 1.8;
    color: #444;
    text-indent: 30px;
	
}
		
		/* Стилі для текстових сторінок */
.content-page {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}

.content-container {
    background-color: #fff;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.content-container h1 {
    color: #333;
    font-size: 2.5em;
    margin-bottom: 30px;
    text-align: center;
}

.content-container h2 {
    color: #333;
    font-size: 1.8em;
    margin: 30px 0 15px;
}

.text-content {
    font-family: 'Lato', sans-serif;
    color: #444;
    line-height: 1.8;
}

.text-content p {
    margin-bottom: 20px;
    text-indent: 30px;
}

.text-content ul {
    margin: 0 0 20px 20px;
}

.text-content li {
    margin-bottom: 10px;
    line-height: 1.6;
}

/* Gallery Page Specific Styles */
.gallery {
    max-width: 1000px;
    margin: 40px auto;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.gallery-column {
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gallery-column:first-child {
    margin-right: -60px; /* Від'ємний margin зміщує першу колону вправо */
}

.gallery-column:last-child {
    margin-left: -60px; /* Від'ємний margin зміщує другу колону вліво */
}

/* Базові стилі для контейнера */
.gallery-item {
    position: relative;
    width: 76.67%;
    margin-bottom: 10px;
    overflow: visible;    /* Змінимо з hidden на visible */
}

/* Стилі для контейнера з посиланням */
.gallery-item a {
    display: block;
    position: relative;
    width: 100%;
    aspect-ratio: 1;
    overflow: hidden; /* Важливо для анімації */
    cursor: pointer;
}

/* Стилі для основного зображення */
.gallery-item .main-image {  /* Додамо клас main-image для основного фото */
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    opacity: 1;
    transition: opacity 0.3s ease;
}

/* Стилі для зображення інтер'єру */
.gallery-item .interior-view {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s ease;
    object-fit: cover;
}

/* Ефекти при наведенні */
.gallery-item:hover .main-image {
    opacity: 0;
}

.gallery-item:hover .interior-view {
    opacity: 1;
}

/* Стилі для інформаційного блоку */
.gallery-item-info {
    width: 100%;
    padding: 5px 0;
    margin-top: -5px;
    text-align: left; 
}

.title-and-size {
    font-family: 'Lato', serif;
    font-size: 16px;
    color: black;
    margin-bottom: 5px;
}

.price {
    font-size: 1em;  /* Повертаємо початковий розмір */
    margin-bottom: 20px;
    font-weight: normal; /* Прибираємо жирність */
    display: flex; /* Додаємо для розміщення селектора поруч */
    align-items: center; /* Вертикальне вирівнювання */
    gap: 10px; /* Відступ між ціною та селектором */
}

#currencySelector {
    padding: 2px 5px; /* Зменшуємо внутрішні відступи */
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 0.8em; /* Зменшуємо розмір шрифту */
    cursor: pointer;
    background-color: white;
    height: 25px; /* Фіксована висота */
    width: auto; /* Автоматична ширина */
}

#currencySelector:hover {
    border-color: #b08f2d;
}

/* Стилі для кнопки швидкого перегляду */
.quick-view {
    position: absolute;
    bottom: -80px;
    left: 0;
    width: 100%;
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.4); /* Зробили темний фон більш прозорим */
    color: #ffffff; /* Змінили колір тексту на білий */
    text-align: center;
    transition: bottom 0.3s ease;
    pointer-events: none;
    font-size: 16px;
    font-family: 'Lato', sans-serif;
    font-weight: 500;
    line-height: 1.5;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* При наведенні на gallery-item показуємо quick-view */
.gallery-item a:hover .quick-view {
    bottom: 0;
}

/* Оновлені стилі для сторінки успішного замовлення */
.success-container {
    max-width: 540px; /* зменшили з 800px */
    margin: 15px auto 20px; /* змінили від'ємний margin на позитивний */
    padding: 18px; /* зменшили з 30px */
    text-align: center;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.success-icon {
    margin-bottom: 12px; /* зменшили з 20px */
}

.success-icon img {
    width: 45px; /* зменшили з 60px */
    height: 45px;
}

.success-container h1 {
    font-family: 'Lato', serif;
    color: #333;
    font-size: 1.6em; /* зменшили з 2em */
    margin-bottom: 12px; /* зменшили з 20px */
}

.success-message {
    margin: 12px 0; /* зменшили з 20px */
    font-family: 'Lato', sans-serif;
    color: #555;
    line-height: 1.3; /* зменшили з 1.5 */
}

.success-message p {
    margin-bottom: 6px; /* зменшили з 10px */
    font-size: 0.9em; /* зменшили з 1em */
}

.order-details {
    margin: 12px 0; /* зменшили з 20px */
    padding: 10px; /* зменшили з 15px */
    background-color: #f9f9f9;
    border-radius: 6px;
    display: inline-block;
}

.order-details p {
    margin: 5px 0; /* зменшили з 8px */
    font-size: 0.9em; /* зменшили з 1em */
}

/* Повертаємо золотистий колір для номера замовлення та дати */
.order-details span {
    font-weight: bold;
    color: #b08f2d;
}

.button-container {
    gap: 10px;
    margin-top: 15px;
    margin-bottom: 15px; /* додали відступ знизу */
    position: relative; /* додали для уникнення перекриття */
    z-index: 2; /* забезпечуємо, що кнопки будуть поверх футера */
}

.return-button,
.browse-more-button {
    padding: 8px 18px; /* зменшили з 12px 25px */
    font-size: 0.9em; /* зменшили з 1em */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    font-family: 'Lato', sans-serif;
}

.return-button {
    background-color: #b08f2d;
    color: white;
}

.browse-more-button {
    background-color: #f0f0f0;
    color: #333;
}

.return-button:hover {
    background-color: #8e7324;
}

.browse-more-button:hover {
    background-color: #e0e0e0;
}

/* Оновлені стилі для футера */
.footer {
    background-color: #fff;
    padding: 40px 0;
    width: 100%;
    font-family: 'Lato', sans-serif;
}

.footer-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    justify-content: space-between; /* Змінюємо на space-between */
    flex-wrap: nowrap;
}

.footer-tagline {
    flex: 0 0 35%;  /* Залишаємо як є */
    font-family: 'WindSong-Regular', cursive;
    font-size: 2.2rem;
    line-height: 1.4;
    padding-right: 40px;
}

/* Контейнер для трьох колонок */
.footer-columns {
    flex: 0 0 60%; /* Збільшуємо ширину контейнера для колонок */
    display: flex;
    justify-content: space-between; /* Розподіляємо простір між колонками */
    padding-right: 20px; /* Додаємо відступ справа */
}

.footer-links {
    flex: 0 0 30%; /* Фіксуємо ширину кожної колонки */
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.footer-contact {
    flex: 0 0 30%; /* Фіксуємо ширину контактної колонки */
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.footer-links a,
.footer-contact a {
    color: #333;
    text-decoration: none !important;
    font-size: 14px;
    transition: color 0.3s ease;
}

.footer-links a:hover,
.footer-contact a:hover {
    color: #b08f2d;
}

.footer .social-icons {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
}

.footer .social-icons img {
    width: 24px;
    height: 24px;
    transition: transform 0.2s;
}

.footer .social-icons img:hover {
    transform: scale(1.1);
}

.bottom-footer {
    width: 100%;
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #eee;
    padding-left: 40px;
}

/* Стилі для нижньої частини футера */

.payment-methods {
    display: flex;
    gap: 15px;
    justify-content: flex-start;
    margin-bottom: 10px;
}

.payment-methods img {
    height: 30px;
    width: auto;
}

.copyright {
    text-align: left; /* Змінюємо з center на left */
    font-size: 12px;
	margin-bottom: -25px; /* Додаємо відступ знизу */
}

/* Стилі для сторінки оформлення замовлення */
.checkout-container {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}

/* Прогрес-бар */
.progress-bar {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 60px;
    max-width: 800px;
    position: relative;
}

.progress-bar::before {
    content: '';
    position: absolute;
    top: 15px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #eee;
    z-index: 1;
}

.progress-step {
    background: white;
    position: relative;
    text-align: center;
    width: 100px;
    z-index: 2;
}

.step-number {
    align-items: center;
    background-color: #eee;
    border: 2px solid #eee;
    border-radius: 50%;
    color: #666;
    display: flex;
    height: 30px;
    justify-content: center;
    margin: 0 auto 10px;
    width: 30px;
}

.progress-step.active .step-number {
    background-color: #b08f2d;
    border-color: #b08f2d;
    color: white;
}

.progress-step.completed .step-number {
    background-color: #4CAF50;
    border-color: #4CAF50;
    color: white;
}

.step-label {
    color: #666;
    font-size: 14px;
}

.progress-step.active .step-label {
    color: #b08f2d;
    font-weight: bold;
}

/* Заголовки розділів */
.form-section h3 {
    color: #333;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #b08f2d;
}

/* Контейнери розділів */
.form-section {
    max-width: 800px;
    margin-left: 150px;
    margin-bottom: 30px;
}

/* Форма оформлення */
.contact-info, 
.delivery-address {
    display: inline-block;
    margin-left: 150px;
    vertical-align: top;
    width: 500px;
}

.contact-info .form-group,
.delivery-address .form-group {
    margin-bottom: 16px;
}

.contact-info .form-control,
.delivery-address .form-control {
    font-size: 16px;
    padding: 10px;
    width: 100%;
}

.contact-info-text,
.delivery-address-text {
    color: #666;
    display: inline-block;
    font-size: 14px;
    margin-left: 40px;
    margin-top: 100px;
    vertical-align: top;
    width: 300px;
}

.contact-info h3,
.delivery-address h3 {
    color: #333;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #b08f2d;
}

/* Вибір країни */
.country-select-container {
    position: relative;
}

.country-list-dropdown {
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    display: none;
    left: 0;
    max-height: 300px;
    overflow-y: auto;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 1000;
}

.country-option {
    align-items: center;
    border-bottom: 1px solid #eee;
    cursor: pointer;
    display: flex;
    padding: 8px 15px;
}

.country-option:hover {
    background-color: #f5f5f5;
}

.country-option img {
    height: 16px;
    margin-right: 10px;
    object-fit: cover;
    width: 24px;
}

/* Доставка і оплата */
#deliverySection,
#paymentSection {
    margin-top: 40px;
    clear: both;
    width: 100%;
}
.delivery-options {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin: 20px auto;
    max-width: 800px;
}

.payment-options {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    margin-top: 20px;
}

.delivery-option,
.payment-option {
    border: 2px solid #eee;
    border-radius: 8px;
    cursor: pointer;
    padding: 20px;
    transition: all 0.3s ease;
}

.delivery-option {
    cursor: default;
}

.payment-option:hover {
    border-color: #b08f2d;
}

.delivery-option.selected,
.payment-option.selected {
    background-color: #fff9e6;
    border-color: #b08f2d;
}

.delivery-option p,
.payment-option p {
    margin-top: 15px;
}

.delivery-option h4,
.payment-option h4 {
    margin-bottom: 15px;
}

/* Модальне вікно оплати */
.payment-modal {
    align-items: center;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
}

.payment-modal-content {
    background-color: white;
    border-radius: 8px;
    max-width: 500px;
    padding: 30px;
    width: 90%;
}

.payment-modal-content button {
    background-color: #b08f2d;
    border: none;
    border-radius: 4px;
    color: white;
    cursor: pointer;
    margin: 10px;
    padding: 10px 20px;
}

.payment-modal-content button:hover {
    background-color: #8e7324;
}

/* Стилі для сторінки 404 */
.error-page {
    max-width: 800px;
    margin: 60px auto;
    padding: 0 20px;
    text-align: center;
}

.error-container {
    background-color: #fff;
    padding: 40px 30px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.error-icon {
    margin-bottom: 20px;
}

.error-icon img {
    width: 120px;
    height: auto;
}

.error-page h1 {
    font-family: 'Lato', serif;
    color: #333;
    font-size: 2.5em;
    margin-bottom: 20px;
}

.error-message {
    margin: 20px 0;
    font-family: 'Lato', sans-serif;
    color: #555;
    line-height: 1.5;
}

.error-message p {
    margin-bottom: 10px;
}

.button-container {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}

.return-button,
.browse-more-button {
    padding: 12px 25px;
    font-size: 16px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    font-family: 'Lato', sans-serif;
    text-decoration: none;
}

.return-button {
    background-color: #b08f2d;
    color: white;
}

.browse-more-button {
    background-color: #f0f0f0;
    color: #333;
}

.return-button:hover {
    background-color: #8e7324;
}

.browse-more-button:hover {
    background-color: #e0e0e0;
}

.visually-hidden {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px; 
    width: 1px;
    margin: -1px; 
    padding: 0; 
    border: 0;
}

/* Спеціальний стиль для української мови */
html[lang="uk"] section .artist-tagline,
html[lang="uk"] header .artist-name,
html[lang="uk"] footer .footer-tagline {
    font-family: 'NK264', sans-serif;
}

/* міжнародна доставка */
.delivery-shipping-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin: 30px 0;
}

.shipping-service {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 25px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.shipping-service:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.shipping-service h3 {
    color: #333;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #b08f2d;
    text-align: left;
}

.shipping-service p {
    margin-bottom: 10px;
    color: #555;
}

.shipping-service strong {
    color: #333;
}

.calculate-link {
    display: inline-block;
    background-color: #b08f2d;
    color: white;
    padding: 8px 15px;
    border-radius: 4px;
    text-decoration: none;
    margin-top: 10px;
    transition: background-color 0.3s ease;
}

.calculate-link:hover {
    background-color: #8e7324;
}

.more-info-link {
    display: inline-block;
    color: #b08f2d;
    text-decoration: none;
    margin-top: 10px;
    font-weight: 500;
    transition: color 0.3s ease;
}

.more-info-link:hover {
    color: #8e7324;
    text-decoration: underline;
}

.shipping-process {
    padding-left: 20px;
    margin: 20px 0;
}

.shipping-process li {
    margin-bottom: 12px;
    line-height: 1.6;
    color: #555;
    position: relative;
}

.delivery-section a {
    color: #b08f2d; /* золотистий колір, як у інших елементів на сайті */
    text-decoration: none;
    transition: color 0.3s ease;
}

.delivery-section a:hover {
    color: #8e7324; /* темніший відтінок золотистого при наведенні */
    text-decoration: underline;
}

/* Styles for terms agreement in cart modal */
.terms-agreement {
    margin: 20px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.terms-label {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #333;
    cursor: pointer;
    margin-right: 15px;
}

.terms-checkbox {
    margin-right: 8px;
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.terms-text {
    line-height: 1.4;
}

.terms-link {
    color: #b08f2d;
    text-decoration: none;
    transition: color 0.3s ease;
    font-size: 14px;
}

.terms-link:hover {
    color: #8e7324;
    text-decoration: underline;
}

/* Disabled checkout button */
.add-to-cart:disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

/* Enabled checkout button by default */
.add-to-cart:not(:disabled) {
    cursor: pointer;
    opacity: 1;
}

.painting-filters {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin: 30px auto 40px;
    max-width: 1000px;
    padding: 0 20px;
    flex-wrap: wrap;
}

.filter-button {
    background-color: #f0f0f0;
    color: #333;
    border: 2px solid #ddd;
    padding: 4px 20px;
    border-radius: 25px;
    cursor: pointer;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    text-align: center;
    white-space: nowrap;
}

.filter-button:hover {
    background-color: #e0e0e0;
    border-color: #b08f2d;
}

.filter-button.active {
    background-color: #b08f2d;
    color: white;
    border-color: #b08f2d;
}

.filter-button.active:hover {
    background-color: #8e7324;
}


.filter-toggle {
    display: none;
    background-color: #b08f2d;
    color: white;
    border: none;
    padding: 4px 14px;
    border-radius: 25px;
    cursor: pointer;
    font-size: 14px;
}
