/*
Theme Name: Storefront Child — Kalilaski
Template: storefront
Version: 1.0.9
Description: Минимальные правки витрины kalilaski stg.
*/

:root {
	--kalilaski-font: "Montserrat", "Source Sans Pro", sans-serif;
	--kalilaski-heading-weight: 300;
	--kalilaski-body-weight: 400;
	--kalilaski-menu-weight: 400;
}

/* === Типографика: единый шрифт на всём сайте === */
body,
button,
input,
select,
textarea,
.main-navigation ul.menu li a,
.main-navigation ul.nav-menu li a,
.secondary-navigation ul.menu li a,
.site-title a,
.site-description,
.woocommerce-breadcrumb,
.wc-block-components-form,
.wc-block-cart,
.wc-block-checkout {
	font-family: var(--kalilaski-font);
}

body {
	font-weight: var(--kalilaski-body-weight);
	line-height: 1.65;
}

.site-title a {
	font-weight: 600;
	letter-spacing: -0.03em;
}

.main-navigation ul.menu li a,
.main-navigation ul.nav-menu li a {
	font-weight: var(--kalilaski-menu-weight);
	letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.page-title,
.woocommerce-products-header__title,
.wc-block-cart__empty-cart__title,
.wp-block-post-title {
	font-family: var(--kalilaski-font);
	font-weight: var(--kalilaski-heading-weight);
	letter-spacing: -0.02em;
	line-height: 1.35;
}

.hentry .entry-title,
.woocommerce-products-header__title,
h1.page-title {
	font-size: clamp(1.75rem, 3vw, 2.5rem);
}

h2,
.wc-block-cart__empty-cart__title.kalilaski-empty-cart-icon {
	font-size: clamp(1.35rem, 2.5vw, 1.75rem);
	font-weight: 600;
	letter-spacing: -0.01em;
}

/* Заголовки страниц (каталог, корзина, обычные) — по левому краю сетки */
.hentry .entry-header,
.hentry .entry-title,
.woocommerce-products-header,
.woocommerce-products-header__title,
.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header__title,
.single-product .product_title,
.woocommerce-page .entry-header {
	text-align: left;
}

/* === Сетка: одна вертикаль с меню (.col-full в шапке) === */
/*
 * Главная: текст — во внутреннем .col-full, «Новинки» — снаружи него.
 * Внешний .site-content > .col-full даёт отступ как у меню.
 * Внутренний padding убираем, чтобы не было двойного сдвига у текста.
 */
.page-template-template-homepage .type-page > .col-full {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
}

.page-template-template-homepage .entry-content,
.page-template-template-homepage .entry-header {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	text-align: left;
}

.page-template-template-homepage .entry-header h1.entry-title {
	font-size: clamp(1.75rem, 3.5vw, 2.75rem);
	font-weight: var(--kalilaski-heading-weight);
	margin-bottom: 1.25em;
	opacity: 1;
	text-align: left;
}

.page-template-template-homepage .entry-content .aligncenter,
.page-template-template-homepage .entry-content .wp-block-gallery.aligncenter {
	margin-left: 0;
	margin-right: 0;
	text-align: left;
}

.page-template-template-homepage .entry-content .wp-block-gallery.aligncenter {
	justify-content: flex-start;
}

.page-template-template-homepage .entry-content .wp-block-image img {
	width: 100%;
	height: auto;
}

.page-template-template-homepage .storefront-product-section .section-title {
	text-align: left;
}

/* Новинки: 1–4 товара без «дыры» справа (не сетка на 4 колонки при одном товаре) */
.page-template-template-homepage .storefront-recent-products ul.products {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	justify-content: flex-start;
	margin-left: 0;
}

.page-template-template-homepage .storefront-recent-products ul.products::before,
.page-template-template-homepage .storefront-recent-products ul.products::after {
	display: none;
}

.page-template-template-homepage .storefront-recent-products ul.products li.product {
	float: none;
	margin: 0;
	max-width: 280px;
	width: 100%;
}

/* WooCommerce / блоки: не выезжать за сетку alignwide */
.woocommerce-cart .entry-content .alignwide,
.woocommerce-checkout .entry-content .alignwide,
.woocommerce-page .entry-content .alignwide,
.post-type-archive-product .entry-content .alignwide,
.tax-product_cat .entry-content .alignwide {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
}

.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout {
	margin-left: 0;
	margin-right: 0;
	max-width: 100%;
	width: 100%;
}

/* === Корзина: пустое состояние === */
.wc-block-cart__empty-cart__title.kalilaski-empty-cart-icon::before {
	background-color: #5c6b52;
	content: "";
	display: block;
	height: 4.5em;
	margin: 0 auto 1.75em;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath stroke='%23000' stroke-width='1.5' d='M6 3.75h12c.69 0 1.25.56 1.25 1.25v14c0 .69-.56 1.25-1.25 1.25H6c-.69 0-1.25-.56-1.25-1.25V5c0-.69.56-1.25 1.25-1.25z'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M6.9 7.5A1.1 1.1 0 0 1 8 6.4h8a1.1 1.1 0 0 1 1.1 1.1v2a1.1 1.1 0 0 1-1.1 1.1H8a1.1 1.1 0 0 1-1.1-1.1v-2zm1.2.1v1.8h7.8V7.6H8.1z' clip-rule='evenodd'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath stroke='%23000' stroke-width='1.5' d='M6 3.75h12c.69 0 1.25.56 1.25 1.25v14c0 .69-.56 1.25-1.25 1.25H6c-.69 0-1.25-.56-1.25-1.25V5c0-.69.56-1.25 1.25-1.25z'/%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M6.9 7.5A1.1 1.1 0 0 1 8 6.4h8a1.1 1.1 0 0 1 1.1 1.1v2a1.1 1.1 0 0 1-1.1 1.1H8a1.1 1.1 0 0 1-1.1-1.1v-2zm1.2.1v1.8h7.8V7.6H8.1z' clip-rule='evenodd'/%3E%3C/svg%3E");
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	width: 4.5em;
}

.wc-block-cart__empty-cart__title.kalilaski-empty-cart-icon {
	margin-bottom: 0.5em;
}

.kalilaski-empty-cart__subtitle {
	color: #666;
	font-size: 1em;
	font-weight: var(--kalilaski-body-weight);
	line-height: 1.65;
	margin: 0 auto 2.5rem;
	max-width: 26em;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
	margin-left: 0;
	margin-right: 0;
	max-width: 100%;
	text-align: left;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .kalilaski-empty-cart__subtitle {
	text-align: center;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wp-block-heading.has-text-align-center:not(.wc-block-cart__empty-cart__title) {
	text-align: left;
	margin-top: 2rem;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-product-new,
.woocommerce-cart .wp-block-woocommerce-product-new {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100%;
	width: 100%;
}

.woocommerce-cart .wc-block-grid__products {
	justify-content: flex-start;
}

.woocommerce-cart .hentry .entry-header {
	text-align: left;
}

.woocommerce-cart .hentry .entry-title {
	text-align: left;
	font-weight: var(--kalilaski-heading-weight);
}
