/*
Theme Name:   INFIORA (Lusion Child)
Theme URI:    https://infiora.ru
Description:  Брендинг INFIORA поверх Lusion. Цветовая палитра jewelry-mothers-day, шрифты Montserrat + Poiret One, контент магазина украшений.
Author:       INFIORA
Author URI:   https://infiora.ru
Template:     lusion
Version:      1.0.0
License:      Proprietary
Text Domain:  lusion-child
Tags:         e-commerce, jewelry, woocommerce
*/

/* ==========================================================================
   INFIORA BRAND TOKENS
   Цветовая палитра по мотивам jewelry-mothers-day демо Lusion.
   ========================================================================== */

:root {
	/* Brand */
	--inf-primary:        #a9270b; /* глубокий бордово-коралл — основные кнопки/ссылки */
	--inf-primary-hover:  #c0331a;
	--inf-accent:         #ff8562; /* INFIORA коралл — акценты, sale-цены */
	--inf-accent-hover:   #fc5e48;
	--inf-accent-light:   #ff6e68; /* нежный коралл — badges, лёгкие hover */
	--inf-gold:           #e1aa5e; /* золотой акцент — декор, иконки */

	/* Backgrounds */
	--inf-bg:             #ffffff;
	--inf-bg-soft:        #ebeeee;
	--inf-bg-cream:       #fce7e1; /* кремово-розовый — hero, промо-блоки */
	--inf-bg-cream-soft:  #fdf3ef;

	/* Text */
	--inf-text:           #2c2c2c;
	--inf-text-muted:     #707070;
	--inf-text-light:     #9a9a9a;

	/* Borders */
	--inf-border:         #c4c4c4;
	--inf-border-soft:    #ebebeb;

	/* Typography */
	--inf-font-sans:      'Montserrat', Arial, sans-serif;
	--inf-font-display:   'Poiret One', 'Montserrat', serif;

	/* Override Elementor / Lusion globals */
	--e-global-color-primary:   var(--inf-primary);
	--e-global-color-secondary: var(--inf-accent);
	--e-global-color-text:      var(--inf-text);
	--e-global-color-accent:    var(--inf-accent);
	--bs-primary:               var(--inf-primary);
	--bs-primary-rgb:           169, 39, 11;
}

/* ==========================================================================
   FONTS — Montserrat (body) + Poiret One (display)
   Подгружаем с Google Fonts, перебиваем Jost из Lusion.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Poiret+One&display=swap&subset=cyrillic,latin');

body,
.lusion-element,
.elementor-widget,
.woocommerce {
	font-family: var(--inf-font-sans) !important;
	color: var(--inf-text);
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.product_title,
.page-title,
.entry-title,
.section-title,
.widget-title {
	font-family: var(--inf-font-display) !important;
	font-weight: 400 !important;
	color: var(--inf-text);
}

/* Marketing/hero display headings get extra display weight */
.lusion-banner-text h1,
.lusion-banner-text h2,
.elementor-heading-title.elementor-size-xxl,
.banner-title {
	font-family: var(--inf-font-display) !important;
	letter-spacing: 0.02em;
}

/* ==========================================================================
   BUTTONS — primary CTA = бордово-коралл, accent = кораллл
   ========================================================================== */

.button,
.btn,
.btn-primary,
button.button,
input[type=submit],
.elementor-button,
.elementor-button-link,
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button {
	background-color: var(--inf-primary) !important;
	border-color: var(--inf-primary) !important;
	color: #fff !important;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.button:hover,
.btn:hover,
.btn-primary:hover,
button.button:hover,
input[type=submit]:hover,
.elementor-button:hover,
.elementor-button-link:hover,
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover {
	background-color: var(--inf-primary-hover) !important;
	border-color: var(--inf-primary-hover) !important;
	color: #fff !important;
}

/* ==========================================================================
   LINKS, ACCENTS, PRICE
   ========================================================================== */

a { color: var(--inf-text); }
a:hover { color: var(--inf-primary); }

.woocommerce ul.products li.product .price ins,
.woocommerce-Price-amount,
.product .price ins {
	color: var(--inf-accent);
	background: transparent;
}
.woocommerce ul.products li.product .price del,
.product .price del {
	color: var(--inf-text-light);
	opacity: .8;
}

.onsale,
.product-label.sale,
.product-flash--sale {
	background: var(--inf-accent) !important;
	color: #fff !important;
	border-color: var(--inf-accent) !important;
}
.product-label.new,
.product-flash--new {
	background: var(--inf-gold) !important;
	color: #fff !important;
}

/* ==========================================================================
   HEADER, CART, ICONS
   ========================================================================== */

.lusion-header .logo a,
.site-logo a,
.custom-logo-link {
	font-family: var(--inf-font-display) !important;
}

.cart-count,
.minicart-quantity,
.wishlist-count {
	background: var(--inf-accent) !important;
	color: #fff !important;
}

/* ==========================================================================
   PROMO / HERO BLOCKS — кремово-розовый фон под Tilda-стиль
   ========================================================================== */

.inf-promo-cream,
.lusion-promo--cream,
.banner-cream {
	background-color: var(--inf-bg-cream);
}
.inf-promo-cream--soft {
	background-color: var(--inf-bg-cream-soft);
}

/* ==========================================================================
   PRODUCT CARD — мелкая полировка под INFIORA
   ========================================================================== */

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.product-content .product-title,
.product-title a {
	font-family: var(--inf-font-sans) !important;
	font-weight: 500 !important;
	color: var(--inf-text);
	text-transform: none;
	letter-spacing: 0;
}

.woocommerce ul.products li.product .price {
	color: var(--inf-text);
	font-weight: 500;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */

.footer-default,
.site-footer {
	background-color: var(--inf-bg-soft);
}

/* ==========================================================================
   COOKIE / NOTICES
   ========================================================================== */

.woocommerce-info,
.woocommerce-message {
	border-top-color: var(--inf-accent) !important;
}
.woocommerce-info::before,
.woocommerce-message::before {
	color: var(--inf-accent) !important;
}

/* ==========================================================================
   RUSSIAN LANGUAGE — Poiret One для кириллицы fallback на Montserrat
   (Poiret One покрывает базовую кириллицу, но не все символы)
   ========================================================================== */

.inf-display {
	font-family: var(--inf-font-display) !important;
}
.inf-display--sans {
	font-family: var(--inf-font-sans) !important;
	font-weight: 500;
}

/* ==========================================================================
   LOGO — Lusion apr_site_logo widget rendered as INFIORA text
   ========================================================================== */

.elementor-widget-apr_site_logo .logo-builder img,
.elementor-widget-apr_site_logo .custom-logo,
.elementor-widget-apr_site_logo a > img {
	display: none !important;
}
.elementor-widget-apr_site_logo .logo-builder,
.elementor-widget-apr_site_logo a.logo-builder {
	font-family: 'Cormorant Garamond', 'Poiret One', serif;
	font-weight: 500;
	font-size: clamp(24px, 2.2vw, 32px);
	letter-spacing: 0.22em;
	color: var(--inf-text);
	text-decoration: none;
	min-width: unset !important;
	max-width: unset !important;
	width: auto !important;
	display: inline-flex;
	align-items: center;
	line-height: 1;
}
.elementor-widget-apr_site_logo .logo-builder::after {
	content: 'INFIORA';
}
.elementor-widget-apr_site_logo .logo-builder:hover::after {
	color: var(--inf-primary);
}

/* Also limit possible site_logo / custom-logo wide overrides */
.custom-logo,
.custom-logo-link {
	max-width: 240px !important;
}
.custom-logo-link {
	display: inline-block;
}

/* ==========================================================================
   SHOP FILTER (Lusion wcbt) — hide non-applicable sections for INFIORA
   ========================================================================== */

.rating.wrapper,
.attribute.wrapper.attribute-type-color,
.attribute.wrapper.attribute-type-text,
.widget.brand,
.widget_brand,
aside.widget[id*="brand"],
aside.widget[id*="rating"] {
	display: none !important;
}

/* Hide leftover Uncategorized link inside Lusion category filter */
.category.wrapper li[class*="cat-item-uncategorized"],
.category.wrapper li[class*="uncategorized"],
.category.wrapper li.cat-item-15,
.category.wrapper li a[href*="uncategorized" i] {
	display: none !important;
}

/* INFIORA brand colors for the Lusion filter */
.price.wrapper .ui-slider-range,
.price.wrapper .ui-slider-handle {
	background: var(--inf-primary) !important;
	border-color: var(--inf-primary) !important;
}
.price.wrapper .button,
.price.wrapper button {
	background: var(--inf-primary) !important;
	border-color: var(--inf-primary) !important;
	color: #fff !important;
}
.price.wrapper .button:hover,
.price.wrapper button:hover {
	background: var(--inf-primary-hover) !important;
	border-color: var(--inf-primary-hover) !important;
}

/* Section titles polished */
.item-filter-heading {
	font-family: var(--inf-font-sans) !important;
	font-weight: 500 !important;
	font-size: 14px !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--inf-text);
	margin-bottom: var(--inf-space-3) !important;
	padding-bottom: var(--inf-space-2);
	border-bottom: 1px solid var(--inf-border-soft);
}

/* Better spacing for filter sections */
.availability.wrapper,
.category.wrapper,
.price.wrapper,
.attribute.wrapper {
	margin-bottom: var(--inf-space-5) !important;
}

/* Checked state in coral */
.wcbt-product-filter input[type="checkbox"]:checked + label,
.wcbt-product-filter input[type="radio"]:checked + span {
	color: var(--inf-primary);
	font-weight: 500;
}
