/*
Theme Name: Flori
Description: A custom WordPress theme
Author: Your Name
Version: 1.0
Text Domain: flori
*/

/* Basic Reset and Typography */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    color: #333;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Header */
header {
    background: #333;
    color: white;
    padding: 1rem 0;
}

header h1 {
    display: inline-block;
}

nav {
    float: right;
    margin-top: 10px;
}

nav ul {
    list-style: none;
}

nav ul li {
    display: inline;
    margin-left: 20px;
}

nav ul li a {
    color: white;
    text-decoration: none;
}

nav ul li a:hover {
    text-decoration: underline;
}

/* Main Content */
main {
    padding: 2rem 0;
    min-height: 60vh;
}

/* Footer */
footer {
    background: #333;
    color: white;
    text-align: center;
    padding: 1rem 0;
    margin-top: 2rem;
}

/* Posts */
.post {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #eee;
}

.post-title {
    margin-bottom: 0.5rem;
}

.post-meta {
    color: #666;
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.post-content {
    line-height: 1.8;
}
/* Логотип Spline */
a#logo {
	display: none !important;
}

/* Скрываем стандартные виджеты WordPress */
.widget_search,
.widget_recent_entries,
.widget_recent_comments,
.widget_archive,
.widget_categories,
.widget_meta,
.widget_rss,
.widget_tag_cloud,
.widget_calendar,
.widget_pages,
.widget_links,
.widget_text,
.widget_nav_menu,
#sidebar,
#sidebar-1,
.sidebar,
.wp-block-search,
.wp-block-latest-posts,
.wp-block-latest-comments,
.wp-block-archives,
.wp-block-categories {
    display: none !important;
}

a:hover {
    text-decoration: none !important;
}

.m-0 {
    margin: 0 !important;
}

.p-0 {
    padding: 0 !important;
}

.w-100 {
    width: 100% !important;
}

.header__social.header__social_lg {
    margin-right: 64px;
}
.menu-content__bottom {
    padding-bottom: 48px;
	padding-left: 40px;
	padding-right: 40px;
}
.menu-nav li {
    margin: 0;
    padding: 0;
}
.menu-nav a:hover, .menu-nav a.active {
    color: #2A5B55 !important;
}
nav {
    float: unset !important;
}
.menu-address {
    margin-bottom: 0 !important;
}
.contact-info {
    padding-left: 0 !important;
}
.cta-btn:hover {
    background: #97C7CB !important;
}
.hero.hero--banner {
    padding: 0 !important;
}
.about__left {
    max-height: 647px;
}
.about__content {
    display: flex !important;
    justify-content: space-between;
}
.about__left {
    width: 100%;
}
.about__services {
    max-height: 647px;
}
.about__services {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: end !important;
    gap: 10px !important;
}

.about__services .service-card {
    width: 325px !important;
    height: 318px !important;
    max-width: 325px !important;
}

/*СТИЛИ ДЛЯ СЛАЙДЕРА О НАС*/
/* Обязательные стили для корректной работы Swiper */
.aboutHeroSwiper {
    width: 100%;
    height: 100%;
}
/* Стили для обертки слайдов */
.aboutHeroSwiper .swiper-wrapper {
    box-sizing: border-box;
    display: flex; /* Swiper сам управляет flex-позиционированием */
    align-items: stretch; /* Растянуть слайды по высоте */
}
/* Ключевые стили для самих слайдов */
.aboutHeroSwiper .swiper-slide {
    height: auto; /* Высота определяется контентом */
    flex-shrink: 0; 
}
/* Ваши стили для карточки ВНУТРИ слайда */
.aboutHeroSwiper .swiper-slide .service-card {
    position: relative;
    display: flex;
    flex-direction: column; /* Если нужна колонка */
    width: 318px;
    min-width: auto;
    height: 100%; /* Карточка занимает всю высоту слайда */
}
/*КОНЕЦ СТИЛИ ДЛЯ СЛАЙДЕРА О НАС*/

.service-card.service-card--outline {
    padding-top: 124px;
    padding-bottom: 24px;
}
.service-card__body {
    gap: 0 !important;
    padding: 0 !important;
    min-height: 150px !important;
    justify-content: space-between !important;
}
.service-card__title {
    padding: 0 !important;
}
.video-play__circle {
    background: transparent !important;
}
.video-play__arrow {
    width: 32px;
    height: 32px;
    /*background: red;*/
    position: absolute;
    top: 0;
    right: 0;
}
.video-play {
    left: unset !important;
    top: unset !important;
    transform: unset !important;
    position: absolute !important;
}
.about__video {
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn--primary:hover {
    background-color: #2A5B55 !important;
}
.service-card__link:hover {
    color: #2A5B55 !important;
}
/*
.reviews__nav-btn {
    border-color: #97C7CB !important;
    background-color: #97C7CB !important;
}

.reviews__nav-btn svg path {
    stroke: white;
}
*/
.review-card__quote {
    position: unset !important;
    margin: 0 !important;
    background: transparent !important;
}
.review-card--small {
    filter: blur(1px) !important;
}
.catalog__more button:hover {
    background: #2A5B55 !important;
    color: #fff !important;
}

.catalog__tab:hover, .catalog__tab--active {
	background: #194896 !important;
    border-color: #194896 !important;
	color: #fff !important;
}
.catalog__more {
    margin-top: 0 !important;
}
.catalog__content {
    margin-bottom: 0 !important;
}
.subscribe-social {
    background-size: cover !important;
    background-position: top !important;
    min-height: 824px;
    padding-top: 150px !important;
}
.subscribe-social__panel {
    background: #F5EDE6 !important;
}
.subscribe-social__content {
    width: 100% !important;
}
.subscribe-social__btn {
    padding: 12px 50px !important;
    border-radius: 8px !important;
}
.subscribe-social__btn.btn-tg:hover {
    background: #fff !important;
    color: #2A5B55 !important;
}
.subscribe-social__btn.btn-inst:hover {
    color: #fff !important;
    background: #2A5B55 !important;
}
.subscribe-social__btn.btn-inst:hover svg path {
    fill: #fff !important;
}
.products.products--for-home {
    background: transparent !important;
    padding-bottom: 0 !important;
    padding-top: 50px !important;
}
.products.products--for-home .products__grid {
    margin-bottom: 0 !important;
}
.container.products-for-home-top {
    display: flex;
    margin-top: 60px !important;
}
.products-for-home-top__details {
    /*padding-left: 72px;*/
    padding-top: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.subscribe-social__warn {
    font-size: 11px;
    margin-top: 5px;
    margin-left: 5px;
}
.product-card__code {
    color: #000 !important;
}
.faq-item__head {
    outline: none !important;
}
.footer__section {
    text-align: left !important;
}
.products-for-home-top__image, .products-for-home-top__details {
    width: 50%;
}
@media (max-width: 768px) {
	.container.products-for-home-top {
		flex-direction: column;
	}
	.products-for-home-top__image, .products-for-home-top__details {
    width: 100%;
}
	.products-for-home-top__image {
		margin-right: 0px;
	}
	h2.subscribe-social__title {
		padding-bottom: 24px;
	}
	div.products-for-home-top__details  p {
		padding-bottom: 24px;
	}
}
@media (max-width: 500px) {
	.btn--primary {
		width: 100% !important;
	}
}

.products-for-home-top__image {
    margin-right: 72px;
}
.faq-item__body {
    transition-duration: 1s !important;
}
.brand-wrapper {
    font-family: "Montserrat", serif;
    font-size: 173px;
    font-weight: 500;
    background: url("/wp-content/themes/flori/assets/images/brand-footer-bg.jpg") center/cover no-repeat;
    -webkit-background-clip: text;
    mask-position: center, bottom right;
    mask-repeat: no-repeat;
    color: transparent !important;
}
footer.footer {
    padding-bottom: .3rem !important;
}
.footer__main {
    margin-bottom: 0 !important;
}
.catalog-page {
    padding-top: 24px !important;
}
.catalog__breadcrumbs, .catalog__breadcrumbs .breadcrumbs {
    padding: 0 !important;
    margin: 0 !important;
}
.catalog-page .catalog__hero {
    padding-top: 0 !important;
}
.catalog-page .catalog__title {
    margin-top: 24px !important;
}
.catalog-page .catalog__tabs button.catalog__tab {
    padding: 14px !important;
}
.catalog-page .catalog__tabs button.catalog__tab:hover {
    background: #97C7CB !important;
    border-color: #97C7CB !important;
}

/* ==========================================================================
   VIDEO PLAYER
   ========================================================================== */
/* Style for the fullscreen video container */

.hero__video.video-player {
	border-radius: 15px;
}
.video-fullscreen-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #000;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.video-fullscreen-container video {
    width: 100%;
    height: 100%;
    object-fit: contain; /* Сохраняет пропорции видео */
}

.video-close-btn {
    position: absolute;
    top: 20px;
    right: 20px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    z-index: 10000;
    display: flex;
    justify-content: center;
    align-items: center;
}

/*==================================================
 * Отображение бейджа с процентом скидки
==================================================*/
.custom-sale-badge {
	height: 52px;
	width: 52px;
    position: absolute;
    top: -10px;
    right: -10px;
    background-color: #ffffff;
    color: #194896;
    padding: 5px;
    font-size: 18px;
    font-weight: 500;
    border-radius: 50%;
    z-index: 10;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
	align-content: center;
	text-align: center;


	
}

/* Важно: Родительский контейнер карточки товара должен иметь position: relative */
.product-card--default,
.product-card, .product-card__image {
    position: relative;
	overflow: visible !important;
}

/* ==========================================================================
   **********************
   ========================================================================== */
/* Mobile - скрываем товары после 3-го */
@media (max-width: 480px) {
    .catalog__grid .product-card {
        display: block;
    }
    
    .catalog__grid .product-card:nth-child(n+5) {
        display: none;
    }
    
    .catalog__more--mobile {
        display: block;
    }
}

/* Desktop - показываем все */
@media (min-width: 481px) {
    .catalog__show-more-btn {
        display: none;
    }
}
main.main .catalog .product-card {
    border: 1px solid #E2E2E2;
}
.w-100 {
    border-radius: 24px;
}
.products-for-home-top__details {
    justify-content: center;
    gap: 30px;
}