/*!
Theme Name: Holodlux
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
*/

/* --- Базовые стили --- */
body { font-family: 'Roboto', Arial, sans-serif; color: #333; margin: 0; line-height: 1.6; background-color: #fff; }
.container { max-width: 1140px; margin: 0 auto; padding: 0 20px; }
a { text-decoration: none; transition: 0.3s; color: inherit; }
img { max-width: 100%; height: auto; }

/* --- Хедер --- */
.site-header { background: #fff; padding: 15px 0 0; box-shadow: 0 4px 10px rgba(0,0,0,0.05); position: relative; top: 0; z-index: 100;}
.header-main-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; flex-wrap: wrap; gap: 15px;}

.logo img { max-width: 200px; display: block; }

.header-info-block { display: flex; flex-direction: column; gap: 2px; }
.region-info { font-size: 16px; color: #31758b; text-transform: uppercase; font-weight: 700; }
.schedule-info { font-size: 13px; color: #666; }

.header-phones { display: flex; flex-direction: column; gap: 2px; }
.header-phones a { font-size: 17px; color: #333; }
.header-phones a span { color: #888; font-weight: 300; }
.header-phones a strong { color: #31758b; font-weight: 700; }
.header-phones a:hover strong { color: #222; }

.header-actions { display: flex; align-items: center; gap: 20px; }
.btn-primary, .btn-callback { background-color: #31758b; color: #fff; border: none; padding: 12px 25px; border-radius: 4px; font-weight: 700; cursor: pointer; transition: 0.3s; font-size: 15px; }
.btn-primary:hover, .btn-callback:hover { background-color: #222; }

/* Переключатель языков */
.lang-switcher { display: flex; gap: 5px; font-size: 15px; font-weight: 600; }
.lang-switcher a { color: #888; }
.lang-switcher a.active { color: #31758b; border-bottom: 2px solid #31758b; }
.lang-switcher a:hover { color: #31758b; }

/* --- НАВИГАЦИЯ (ИСПРАВЛЕНО) --- */
.header-nav-row { border-top: 1px solid #eee; background: #fafafa; width: 100%; }

/* Убираем точки и выстраиваем в ряд */
.header-nav-row ul { 
    list-style: none !important; 
    margin: 0; 
    padding: 0; 
    display: flex; 
    justify-content: center; 
    gap: 35px; /* Расстояние между Главная, Блог, Контакты */
}

.header-nav-row ul li { 
    list-style: none !important; 
    margin: 0; 
    padding: 0; 
}

.header-nav-row ul li a { 
    display: block; 
    padding: 15px 0; 
    color: #444; 
    font-weight: 600; 
    text-transform: uppercase; 
    font-size: 14px; 
    border-bottom: 3px solid transparent; 
    text-decoration: none;
}

.header-nav-row ul li a:hover { 
    color: #31758b; 
    border-bottom-color: #31758b; 
}

/* Выделение активной страницы */
.header-nav-row ul li.current-menu-item a {
    color: #31758b;
    border-bottom-color: #31758b;
}

/* --- Главный экран --- */
.hero-section { background-size: cover; background-position: center; padding: 120px 0; text-align: center; color: #fff; position: relative; }
.hero-section::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.6); }
.hero-content { position: relative; z-index: 1; max-width: 800px; margin: 0 auto; }
.hero-content h1 { font-size: 42px; margin-bottom: 30px; text-shadow: 1px 1px 4px rgba(0,0,0,0.8); }

/* --- Секция акции и подарка --- */
.promo-section { padding: 60px 0; text-align: center; background: #f9f9f9; }
.promo-section h2 { color: #31758b; font-size: 28px; margin-bottom: 30px;}
.promo-text { font-size: 18px; margin-bottom: 30px; }
.promo-images { display: flex; justify-content: center; align-items: center; gap: 20px; margin: 30px 0; flex-wrap: wrap; }
.promo-images img { max-width: 250px; }

.gift-block { margin: 40px auto; text-align: center; }
.gift-block h3 { font-size: 22px; color: #d31a1a; text-transform: uppercase; margin-bottom: 10px;}
.gift-block a { color: #31758b; font-weight: 700; text-decoration: underline; font-size: 18px; }
.gift-block a:hover { color: #222; text-decoration: none; }

/* --- 5 Причин --- */
.reasons-section { padding: 80px 0; background: url('https://kievholod.in.ua/wp-content/uploads/2021/03/Snowflakes.png'); }
.reasons-section h2 { text-align: center; margin-bottom: 50px; font-size: 32px; color: #222;}
.reasons-grid { display: flex; flex-wrap: wrap; gap: 30px; justify-content: center; }
.reason-item { flex: 1 1 calc(33.333% - 30px); min-width: 250px; background: #fff; padding: 30px 20px; text-align: center; box-shadow: 0 5px 20px rgba(0,0,0,0.08); border-radius: 8px; }
.reason-item img { max-width: 120px; margin-bottom: 20px; }
.reason-item h3 { font-size: 20px; color: #31758b; margin-bottom: 10px; }

/* --- Таблицы --- */
.table-section { padding: 50px 0; text-align: center;}
.data-table { width: 100%; border-collapse: collapse; margin-bottom: 20px; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.05); text-align: left;}
.data-table th, .data-table td { padding: 12px 20px; border: 1px solid #e1e1e1; }
.price-table th { background-color: #31758b; color: #fff; font-weight: bold; font-size: 18px; }
.data-table tbody tr:nth-child(even) { background-color: #fcfcfc; }
.data-table tbody tr:hover { background-color: #f1f8fa; }

/* --- FAQ --- */
.faq-section { padding: 60px 0; background: #f9f9f9; }
.faq-item { margin-bottom: 10px; border: 1px solid #e1e1e1; border-radius: 4px; background: #fff; overflow: hidden; }
.faq-item summary { padding: 15px 20px; font-size: 18px; font-weight: bold; cursor: pointer; background-color: #fff; outline: none; list-style: none; position: relative; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: '+'; position: absolute; right: 20px; font-size: 24px; color: #31758b; }
.faq-item[open] summary::after { content: '-'; }
.faq-answer { padding: 20px; border-top: 1px solid #e1e1e1; color: #555; }

/* --- Блог --- */
.blog-archive { padding: 60px 0; background: #fafafa; }
.blog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.blog-card { background: #fff; border-radius: 8px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); overflow: hidden; display: flex; flex-direction: column; }
.post-thumbnail img { width: 100%; height: 200px; object-fit: cover; display: block; }
.post-content-wrapper { padding: 25px; display: flex; flex-direction: column; flex-grow: 1; }
.post-date { font-size: 13px; color: #888; margin-bottom: 10px; display: block;}
.post-card-title { font-size: 20px; margin: 0 0 15px; }
.post-card-title a { color: #31758b; }
.post-card-title a:hover { color: #222; }
.btn-read-more { margin-top: auto; color: #31758b; font-weight: 700; text-decoration: underline; }

/* --- Футер и Попапы --- */
.site-footer { background: #222; color: #ccc; padding: 50px 0; text-align: center; }
.site-footer a { color: #fff; }
.popup-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 9999; justify-content: center; align-items: center; }
.popup-content { background: #fff; padding: 40px 30px; border-radius: 8px; max-width: 400px; width: 90%; position: relative; text-align: center; }
.popup-close { position: absolute; top: 10px; right: 15px; background: none; border: none; font-size: 30px; cursor: pointer; color: #999; }
.icicles-divider { width: 100%; display: block; }

/* Стили для Contact Form 7 */
.wpcf7-form input[type="text"], .wpcf7-form input[type="tel"] { width: 100%; padding: 12px; margin-bottom: 15px; border: 1px solid #ccc; border-radius: 4px; }
.wpcf7-form input[type="submit"] { background: #31758b; color: #fff; border: none; padding: 15px; border-radius: 4px; cursor: pointer; font-weight: bold; width: 100%; }

/* ФИНАЛЬНЫЕ стили для круглых картинок (от края до края рамки) */
.reasons-grid .reason-item img {
    /* Жестко фиксируем размеры во всех направлениях */
    width: 140px !important; 
    height: 140px !important; 
    min-width: 140px !important; /* Не даем теме сжать картинку по ширине */
    max-width: 140px !important;
    max-height: 140px !important;
    
    /* Делаем идеальный круг */
    border-radius: 50% !important; 
    
    /* Картинка заполняет весь круг без искажений и белых полей */
    object-fit: cover !important; 
    object-position: center !important; /* Центрируем картинку */
    padding: 0 !important; /* УБРАЛИ белые поля внутри рамки */
    
    /* Красивая рамка и тень */
    border: 3px solid #31758b !important; 
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.15) !important;
    
    /* Выравнивание по центру */
    display: block !important; 
    margin: 0 auto 20px auto !important; 
    background-color: transparent !important;
}