/* Reset styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

/* Main styles */
body {
    font-family: 'Montserrat', sans-serif;
    background-color: #F5F5DC; /* світло-бежевий */
    color: #000000; /* чорний текст */
    margin: 0;
    padding: 0;
    min-width: 480px;
}

.main_wrapper {
    margin: 25px auto 0;
    width: 480px;
    background: #FFFFFF; /* білий */
    overflow: hidden;
}

header {
    background-color: #8B7D6B; /* темно-бежевий */
    color: #FFFFFF; /* білий текст */
    padding: 20px;
    text-align: center;
}

h1.main_title {
    font-size: 33px;
    line-height: 44px;
    text-transform: uppercase;
    margin: 0;
}

.insite {
    background-color: rgba(139, 125, 107, 0.5); /* темно-бежевий з прозорістю */
    color: #FFFFFF;
    padding: 10px;
    text-align: center;
    font-size: 16px;
}

.insite #insite {
    content: "25";
}

.insite #pokup {
    content: "30";
}

.product-image img {
    display: block;
    margin: 20px auto;
    width: auto; /* оригінальний розмір зображення */
    height: auto; /* оригінальний розмір зображення */
    max-width: 100%; /* не виходить за межі контейнера */
    border-radius: 5px; /* угли */
}

.price_block {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px 0;
    padding: 0 20px;
}

.price_item {
    text-align: center;
}

.price_item.old .value {
    text-decoration: line-through;
    font-size: 30px;
}

.price_item.new .value {
    font-size: 30px;
    color: #8B7D6B; /* темно-бежевий */
}

.discount {
    background-color: #8B7D6B;
    color: #FFFFFF;
    padding: 10px;
    border-radius: 5px; /* угли */
    font-size: 34px;
    text-align: center;
}

.benefits_block {
    display: flex;
    justify-content: space-around;
    margin: 20px 0;
    padding: 0 20px;
}

.benefit_item {
    text-align: center;
    width: 33%;
}

.benefit_item img {
    width: 100px;
    height: 100px; /* квадратні фото */
    object-fit: cover;
    border-radius: 5px; /* угли */
    margin-bottom: 10px;
}

.video_block {
        max-width: 480px;
        margin: 0 auto;
        text-align: center;
    }
    .video_block iframe {
        width: 440px;
        height: 750px;
        max-width: 100%; /* Забезпечує адаптивність на менших екранах */
    }

.size-table-section {
    margin: 20px 0;
    padding: 20px;
    background-color: #FFFFFF;
    border: 1px solid #8B7D6B;
    border-radius: 5px;
}

.size-table {
    width: 100%;
    border-collapse: collapse;
}

.size-table th, .size-table td {
    border: 1px solid #8B7D6B;
    padding: 10px;
    text-align: center;
    color: #000000;
}

.size-table th {
    background-color: #8B7D6B;
    color: #FFFFFF;
}

.size-table tr:nth-child(even) {
    background-color: #F5F5DC;
}

.cat {
    margin: 20px 0;
    padding: 0 20px;
}

.cat h2.title {
    font-size: 24px;
    margin-bottom: 10px; /* зменшено простір між текстом і каруселями */
    color: #000000;
}

.catitem {
    margin-bottom: 40px;
    text-align: center;
}

.slider-dress {
    margin-bottom: 5px; /* зменшено простір між каруселлю і текстом кольору */
    position: relative;
}

.slider-dress img {
    width: 440px; /* оновлений розмір для каруселі */
    height: 700px; /* оновлений розмір для каруселі */
    max-width: 100%; /* масштабування до ширини контейнера */
    object-fit: contain; /* збереження пропорцій без обрізки */
    border-radius: 5px;
    margin: 0 auto;
}

.catitem h3 {
    font-size: 21px;
    margin: 5px 0; /* зменшено простір навколо назви кольору */
}

.catitem .size-info {
    font-size: 14px;
    margin: 5px 0; /* простір між текстом розмірів і кнопкою */
    color: #000000;
}

.catitem .button {
    margin-top: 5px; /* зменшено простір між кнопкою і текстом */
}

.slick-prev, .slick-next {
    background-color: #8B7D6B;
    width: 30px;
    height: 30px;
    z-index: 10;
    border: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #FFFFFF;
    text-align: center;
    line-height: 30px;
}

.slick-prev {
    left: -10px;
    content: "<";
}

.slick-next {
    right: -10px;
    content: ">";
}

.order_steps_section {
    margin: 20px 0;
    padding: 20px;
    background-color: #F5F5DC;
}

.order_steps_section h2 {
    font-size: 24px;
    margin-bottom: 20px;
    text-align: center;
    color: #000000;
}

.order_steps2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.step_item {
    width: 45%;
    margin-bottom: 20px;
    text-align: center;
}

.step_item img {
    width: 72px;
    height: 52px;
    margin-bottom: 10px;
}

.step_item h4 {
    font-size: 18px;
    margin: 10px 0;
}

.offer_section.order {
    background-color: #8B7D6B;
    color: #FFFFFF;
    padding: 20px;
    text-align: center;
}

.main-order-form {
    max-width: 100%;
    margin: 0 auto;
    padding: 20px;
}

.main-order-form select,
.main-order-form input[type="text"],
.main-order-form input[type="tel"] {
    width: 100%;
    padding: 20px; /* ще більше висоти */
    margin-bottom: 15px;
    border: 2px solid #000000; /* постійна обводка */
    border-radius: 5px; /* угли */
    font-size: 22px; /* ще більший текст */
    background-color: #F0F0F0; /* фон для полів */
    color: #000000;
    height: 70px; /* ще більша висота */
    overflow: visible; /* щоб текст не обрізався */
}

/* Знімаємо обводку при фокусі, щоб не перекривати постійну */
.main-order-form select:focus,
.main-order-form input[type="text"]:focus,
.main-order-form input[type="tel"]:focus {
    outline: none; /* видаляємо стандартну обводку при фокусі */
    border-color: #8B7D6B; /* зберігаємо ту саму обводку */
}

.main-order-form select {
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6" viewbox="0 0 10 5"><path d="M0 0h10L5 5z" fill="%23000"/></svg>') no-repeat right 20px center;
    background-size: 12px;
    appearance: none;
}

.button, .button-m {
    background-color: #7A6C5A; /* темніший бежевий для виділення */
    color: #FFFFFF;
    border: none;
    border-radius: 5px; /* угли */
    padding: 15px;
    font-size: 20px; /* більший текст */
    cursor: pointer;
    width: 100%;
    text-transform: uppercase;
    transition: background-color 0.3s;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* тінь для виділення */
}

.button:hover, .button-m:hover {
    background-color: #654D3A; /* ще темніший при наведенні */
}

.footer_section {
    background-color: #F5F5DC;
    padding: 25px 0;
    text-align: center;
    color: #000000;
}

.footer_section a {
    color: #000000;
    text-decoration: none;
}

.footer_section a:hover {
    text-decoration: underline;
}

.error {
    color: red;
    font-size: 14px;
    text-align: center;
    margin-bottom: 10px;
}

/* Slick carousel styles */
.slick-dots {
    position: absolute;
    bottom: -25px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    margin: 0 5px;
    padding: 0;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 12px;
    height: 12px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:before {
    content: '';
    width: 8px;
    height: 8px;
    background: #8B7D6B;
    border-radius: 50%; /* маленькі кола для точок */
    opacity: 0.7;
    display: block;
}

.slick-dots li.slick-active button:before {
    background: #7A6C5A; /* темніший бежевий для активної точки */
    opacity: 1;
}