/**
 * Vjenčanice page — lookbook rows, intro bands, product grid, long text.
 */

/* Legacy phone strip placeholder — hide if still present in cached content */
.filia-hero-phone-strip {
	display: none !important;
}

/* Square buttons on this page (override WP core pill default loaded inline) */
.filia-site .wp-block-button__link,
.filia-site .wp-element-button,
.filia-site .wc-block-components-pagination__button {
	border-radius: 0 !important;
}

/* Intro bands between rows */
.filia-pattern-intro-band {
	/* Tighter vertical padding so lookbook images sit closer to the intro text (production) */
	padding: 3vw 1.5rem;
	text-align: center;
}

.filia-pattern-intro-band .filia-intro-band__text {
	font-family: var(--filia-font-heading);
	font-weight: 400;
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

.filia-lookbook-triptych--flush > .wp-block-column {
	padding: 0;
}

.filia-lookbook-triptych--padded > .wp-block-column {
	padding: 15px;
}

/* Lookbook triptych rows (below hero) */
.filia-lookbook-triptych {
	margin: 0;
	gap: 0 !important;
}

.filia-lookbook-triptych > .wp-block-column {
	margin: 0;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
	padding: 0;
}

.filia-lookbook-side-cover {
	/* Match production ~35vw top + 5vw bottom image bands (~42vw tall) */
	min-height: 42vw !important;
	height: 42vw !important;
	max-height: none !important;
	border-radius: 0;
}

.filia-lookbook-side-cover .wp-block-cover__image-background {
	object-fit: cover;
	object-position: center top;
}

.filia-lookbook-side-cover .wp-block-cover__inner-container {
	width: 100%;
	padding: 0 0.75rem 2rem;
}

.filia-lookbook-side-button .wp-block-button__link {
	background: rgba(0, 0, 0, 0.3);
	border: 1px solid var(--filia-color-white);
	border-radius: 0;
	color: var(--filia-color-white);
	padding: 0.65rem 1rem;
	font-family: var(--filia-font-display);
	font-size: 13px;
	letter-spacing: 0.06em;
	text-transform: none;
	white-space: normal;
	text-align: center;
}

.filia-lookbook-side-button .wp-block-button__link:hover {
	background: var(--filia-color-black);
	color: var(--filia-color-white);
}

.filia-lookbook-center {
	position: relative;
	min-height: 42vw !important;
	height: 42vw !important;
	max-height: none !important;
	overflow: hidden;
	background: #000;
	display: flex;
	align-items: center;
	justify-content: center;
}

.filia-lookbook-triptych__center .filia-video-01,
.filia-lookbook-triptych__center .filia-video-01-b {
	position: absolute;
	inset: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	overflow: hidden;
	display: block;
}

.filia-lookbook-triptych__center .filia-video-01 video,
.filia-lookbook-triptych__center .filia-video-01-b video {
	position: absolute;
	inset: 0;
	width: 100% !important;
	max-width: 100%;
	height: 100% !important;
	max-height: none !important;
	object-fit: cover;
	display: block;
}

/* Parallax banner between sections — tall band, sharp full-bleed cover */
.filia-parallax-banner {
	margin: 15px 0 0;
	min-height: 65vw !important;
	height: 65vw !important;
	max-height: none !important;
	overflow: hidden;
}

.filia-parallax-banner .wp-block-cover__image-background {
	object-fit: cover;
	object-position: center top;
	will-change: transform;
	transform: translate3d(0, 0, 0) scale(1.12);
	height: 120% !important;
	top: -10%;
}

/* Product grid — wide at desktop for larger images */
.filia-product-grid-wrap {
	padding: 5vw 16px;
	max-width: 1600px;
	width: 100%;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}

.filia-product-grid-wrap .filia-pattern-product-grid {
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.filia-product-grid-wrap .wp-block-woocommerce-product-collection {
	width: 100%;
}

.filia-product-grid-wrap .wp-block-woocommerce-product-collection ul.wc-block-product-template,
.filia-product-grid-wrap ul.wc-block-product-template.is-flex-container {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	justify-content: center !important;
	justify-items: stretch !important;
	align-content: start;
	gap: 12px !important;
	list-style: none;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	padding: 0 !important;
	box-sizing: border-box;
}

.filia-product-grid-wrap .wp-block-woocommerce-product-collection ul.wc-block-product-template > li.wc-block-product,
.filia-product-grid-wrap ul.wc-block-product-template.is-flex-container.columns-2 > li,
.filia-product-grid-wrap ul.wc-block-product-template.is-flex-container > li.wc-block-product {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
	float: none !important;
	justify-self: stretch !important;
	text-align: center;
	box-sizing: border-box;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-image {
	display: block !important;
	width: 100% !important;
	margin: 0 0 0.75rem !important;
	overflow: hidden;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-image > a {
	display: block !important;
	width: 100% !important;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-image img,
.filia-product-grid-wrap .wc-block-product .wc-block-components-product-image a img {
	display: block !important;
	width: 100% !important;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-title,
.filia-product-grid-wrap .wc-block-product .wp-block-post-title {
	font-family: var(--filia-font-heading);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.35;
	margin: 0 0 0.35rem;
	text-transform: none;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-title a,
.filia-product-grid-wrap .wc-block-product .wp-block-post-title a {
	color: inherit;
	text-decoration: none;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-price,
.filia-product-grid-wrap .wc-block-product .wp-block-woocommerce-product-price {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	font-family: var(--filia-font-body);
	font-size: 0.875rem;
	font-weight: 400;
	color: var(--filia-color-black);
	margin: 0.35rem 0 0;
}

.filia-product-grid-wrap .wc-block-product .wc-block-components-product-price[hidden] {
	display: none !important;
}

.filia-product-grid-wrap .wc-block-product .woocommerce-Price-amount {
	font-weight: 400;
	color: inherit;
}

/* Long text + contact */
.filia-pattern-bridal-longtext {
	padding: 5vw 1.5rem 2rem;
	text-align: center;
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.filia-pattern-bridal-longtext h4 {
	/* Match Gioia production h4 (~28px) */
	font-family: var(--filia-font-body);
	font-size: 28px !important;
	font-weight: 400;
	line-height: 1.36;
	margin: 0 0 1.5rem;
	text-align: center;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.filia-pattern-bridal-longtext p {
	font-family: var(--filia-font-body);
	font-size: 18px !important;
	line-height: 1.7 !important;
	letter-spacing: 0.02em;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

.filia-pattern-contact-button {
	padding: 2rem 1.5rem 5vw;
	text-align: center;
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}

.filia-pattern-contact-button .wp-block-buttons {
	justify-content: center;
}

.filia-pattern-contact-button .filia-button-big {
	width: auto !important;
	max-width: none !important;
}

.filia-pattern-contact-button .filia-button-big .wp-block-button__link {
	display: inline-block !important;
	width: auto !important;
	max-width: none !important;
	font-family: var(--filia-font-display) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	letter-spacing: 0.12em !important;
	line-height: 1.3 !important;
	text-transform: uppercase !important;
	white-space: nowrap !important;
	padding: 0.85rem 1.75rem !important;
	border-radius: 0 !important;
}

@media (min-width: 1025px) {
	.filia-pattern-contact-button .filia-button-big .wp-block-button__link {
		font-size: 18px !important;
		letter-spacing: 0.14em !important;
	}
}

.filia-pattern-hero .filia-hero-side-button .wp-block-button__link {
	border-radius: 0;
}


@media (min-width: 1025px) {
	.filia-lookbook-triptych {
		align-items: stretch !important;
	}

	.filia-lookbook-triptych > .wp-block-column {
		height: auto;
	}

	.filia-lookbook-side-cover,
	.filia-lookbook-center {
		height: 42vw !important;
		min-height: 42vw !important;
		max-height: none !important;
	}

	.filia-lookbook-triptych__center .filia-video-01 video,
	.filia-lookbook-triptych__center .filia-video-01-b video {
		max-height: none !important;
		height: 100% !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.filia-lookbook-side-cover,
	.filia-lookbook-center {
		/* Slightly taller on tablet so panels stay portrait-like */
		height: 52vw !important;
		min-height: 52vw !important;
		max-height: none !important;
	}

	.filia-lookbook-triptych__center .filia-video-01 video,
	.filia-lookbook-triptych__center .filia-video-01-b video {
		max-height: none !important;
		height: 100% !important;
	}
}

@media (max-width: 1024px) {
	.filia-parallax-banner {
		min-height: 70vw !important;
		height: 70vw !important;
		max-height: none !important;
	}

	.filia-pattern-intro-band .filia-intro-band__text {
		font-size: 1.5em !important;
		line-height: 1.5 !important;
	}
}

/* Tablet/phone: stack lookbook like production (~1024px) */
@media (max-width: 1024px) {
	.filia-lookbook-triptych {
		flex-direction: column !important;
	}

	.filia-lookbook-triptych > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
		padding: 8px 15px;
	}

	.filia-lookbook-triptych__side--left,
	.filia-lookbook-triptych__side--right {
		display: none;
	}

	.filia-lookbook-center,
	.filia-lookbook-side-cover {
		min-height: 75vw !important;
		height: 75vw !important;
		max-height: none !important;
	}
}

/* Phone: single-column product grid to match production */
@media (max-width: 600px) {
	.filia-product-grid-wrap .wp-block-woocommerce-product-collection ul.wc-block-product-template,
	.filia-product-grid-wrap ul.wc-block-product-template.is-flex-container {
		grid-template-columns: minmax(0, 1fr) !important;
		justify-items: center !important;
	}

	.filia-product-grid-wrap ul.wc-block-product-template > li.wc-block-product {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

/* Center a lone last card in 2-column grids */
.filia-product-grid-wrap ul.wc-block-product-template > li.wc-block-product:last-child:nth-child(odd) {
	grid-column: 1 / -1;
	max-width: calc(50% - 6px) !important;
	justify-self: center !important;
	width: 100% !important;
}

/*
 * Galaxy Fold / near-square (~1:1, including slightly tall Fold main screens):
 * Use one centered product column so cards are not left-weighted.
 * Also stack hero/lookbook to a single centered column.
 */
/* Near-square only (Fold main ~0.8–1.1), not tall phones or tablet portrait */
@media (min-aspect-ratio: 4 / 5) and (max-aspect-ratio: 11 / 10) and (max-width: 960px) {
	.filia-product-grid-wrap {
		padding-left: 24px !important;
		padding-right: 24px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	.filia-product-grid-wrap .filia-pattern-product-grid,
	.filia-product-grid-wrap .wp-block-woocommerce-product-collection {
		width: 100% !important;
		max-width: 640px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-product-grid-wrap .wp-block-woocommerce-product-collection ul.wc-block-product-template,
	.filia-product-grid-wrap ul.wc-block-product-template.is-flex-container {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		justify-content: center !important;
		justify-items: center !important;
		width: 100% !important;
		max-width: 640px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-product-grid-wrap ul.wc-block-product-template.is-flex-container.columns-2 > li,
	.filia-product-grid-wrap ul.wc-block-product-template > li.wc-block-product,
	.filia-product-grid-wrap ul.wc-block-product-template > li.wc-block-product:last-child:nth-child(odd) {
		grid-column: auto !important;
		width: 100% !important;
		max-width: 640px !important;
		flex: none !important;
		flex-basis: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
		justify-self: center !important;
		float: none !important;
	}

	.filia-product-grid-wrap .wc-block-product .wc-block-components-product-image,
	.filia-product-grid-wrap .wc-block-product .wc-block-components-product-image img {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* Hero + lookbook: one centered column on Fold-sized squares */
	.filia-hero-triptych,
	.filia-lookbook-triptych {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
	}

	.filia-hero-triptych > .wp-block-column,
	.filia-lookbook-triptych > .wp-block-column {
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 640px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-hero-triptych__side--left,
	.filia-hero-triptych__side--right,
	.filia-lookbook-triptych__side--left,
	.filia-lookbook-triptych__side--right {
		display: none !important;
	}

	.filia-hero-triptych__center,
	.filia-lookbook-triptych__center,
	.filia-lookbook-triptych__side--center {
		display: block !important;
		width: 100% !important;
		max-width: 640px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-lookbook-center,
	.filia-lookbook-side-cover {
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-lookbook-triptych__center .filia-video-01,
	.filia-lookbook-triptych__center .filia-video-01-b,
	.filia-lookbook-triptych__center .filia-video-01 video,
	.filia-lookbook-triptych__center .filia-video-01-b video {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-pattern-bridal-longtext,
	.filia-pattern-contact-button {
		max-width: 640px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100% !important;
		box-sizing: border-box;
		text-align: center !important;
	}

	.filia-pattern-intro-band {
		text-align: center !important;
	}

	.filia-pattern-intro-band .filia-intro-band__text {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.filia-footer__top-inner {
		max-width: 640px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100% !important;
	}

	.filia-footer .eltdf-contact-form-7-widget,
	.filia-footer .cf7_custom_style_3,
	.filia-footer .wpcf7-form {
		margin-left: auto !important;
		margin-right: auto !important;
	}
}
