/*
 * Adobe serves the kit with font-display:auto. Repeating the same licensed
 * CDN faces here with font-display:swap keeps text readable while the fonts
 * load and prevents the webfont chain from delaying the first text render.
 */
@font-face {
	font-family: "apparat-light";
	src: url("https://use.typekit.net/af/cdc8cc/00000000000000007735ed08/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2");
	font-display: swap;
	font-style: normal;
	font-weight: 400;
	font-stretch: normal;
}

@font-face {
	font-family: "apparat";
	src: url("https://use.typekit.net/af/a0b463/00000000000000007735ed09/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("woff2");
	font-display: swap;
	font-style: normal;
	font-weight: 600;
	font-stretch: normal;
}

@font-face {
	font-family: "source-sans-3-variable";
	src: url("https://use.typekit.net/af/612ad5/00000000000000007737b9dd/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2");
	font-display: swap;
	font-style: normal;
	font-weight: 200 900;
	font-stretch: normal;
}

@font-face {
	font-family: "parlare";
	src: url("https://use.typekit.net/af/b30273/00000000000000007750b2f2/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2");
	font-display: swap;
	font-style: normal;
	font-weight: 400;
	font-stretch: normal;
}

:root {
	--fedele-font-display: "apparat-light", "Avenir Next", Avenir, Arial, sans-serif;
	--fedele-font-strong: "apparat", "Avenir Next", Avenir, Arial, sans-serif;
	--fedele-font-body: "source-sans-3-variable", "Source Sans 3", "Segoe UI", Arial, sans-serif;
	--fedele-font-script: "parlare", "Brush Script MT", cursive;
}

/* Beaver applies its mobile marker in JavaScript. Expose the responsive hero
 * image directly in CSS so mobile browsers can discover the LCP image early. */
@media (max-width: 768px) {
	body.fedele-brand-typography.home .fl-node-1rzwhy9ou8f5 > .fl-row-content-wrap {
		background-image: url("/wp-content/uploads/2023/12/Front-bg-768x760.jpg") !important;
		background-attachment: scroll !important;
	}
}

body.fedele-brand-typography {
	font-family: var(--fedele-font-body) !important;
	font-size: clamp(16px, calc(15px + 0.16vw), 18px);
	font-weight: 400;
	font-synthesis: none;
	line-height: 1.65;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

body.fedele-brand-typography :where(p, li, dd, dt, address, blockquote, figcaption, table) {
	font-family: var(--fedele-font-body);
	font-weight: 400 !important;
}

body.fedele-brand-typography :where(input, select, textarea, button) {
	font-family: var(--fedele-font-body) !important;
	font-size: max(1rem, 16px);
	line-height: 1.4;
}

body.fedele-brand-typography :where(h1, h2, h3, h4, h5, h6),
body.fedele-brand-typography .fl-heading,
body.fedele-brand-typography .woocommerce-loop-product__title,
body.fedele-brand-typography .product_title,
body.fedele-brand-typography .fl-post-title {
	font-family: var(--fedele-font-display) !important;
	font-style: normal;
	font-weight: 400 !important;
	font-synthesis: none;
	letter-spacing: -0.018em;
	text-wrap: balance;
}

body.fedele-brand-typography h1,
body.fedele-brand-typography .fl-post-title,
body.fedele-brand-typography .product_title {
	font-size: clamp(2.5rem, 4.4vw, 4.25rem) !important;
	line-height: 1.02 !important;
}

body.fedele-brand-typography h2 {
	font-size: clamp(2rem, 3.2vw, 3rem) !important;
	line-height: 1.04 !important;
}

body.fedele-brand-typography h3 {
	font-size: clamp(1.5rem, 2.3vw, 2.2rem) !important;
	line-height: 1.1 !important;
}

body.fedele-brand-typography :where(h4, h5, h6) {
	line-height: 1.18 !important;
}

body.fedele-brand-typography :where(strong, b) {
	font-weight: 700;
}

body.fedele-brand-typography :where(h1, h2, h3, h4, h5, h6) strong {
	font-family: var(--fedele-font-strong);
	font-weight: 600;
}

body.fedele-brand-typography :where(
	.fl-button,
	.button,
	button,
	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	.wp-element-button,
	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.menu a,
	label,
	legend,
	.eyebrow,
	.fg-gift-eyebrow,
	.fg-index-kicker
) {
	font-family: var(--fedele-font-strong) !important;
	font-weight: 600 !important;
	font-synthesis: none;
}

body.fedele-brand-typography :where(.fl-button, .button, button, input[type="submit"], .wp-element-button, .woocommerce a.button, .woocommerce button.button) {
	font-size: max(0.875rem, 14px) !important;
	line-height: 1.25 !important;
	letter-spacing: 0.06em;
	min-height: 44px !important;
}

body.fedele-brand-typography :where(.menu a, nav a) {
	font-size: max(0.875rem, 14px);
	line-height: 1.35;
}

body.fedele-brand-typography :where(.fl-rich-text, .entry-content, .woocommerce-product-details__short-description) {
	line-height: 1.65;
}

body.fedele-brand-typography :where(.fl-rich-text p, .entry-content p, .entry-content li, .woocommerce-product-details__short-description p) {
	max-width: 72ch;
}

body.fedele-brand-typography :where(small, .small, .woocommerce .product_meta, .woocommerce-breadcrumb, .fg-index-card-meta, .fg-bundle-more) {
	font-size: max(0.875rem, 14px) !important;
	line-height: 1.5 !important;
}

body.fedele-brand-typography :where(.fl-post-content, .entry-content, .woocommerce-privacy-policy-text) a:not(.button),
body.fedele-brand-typography :where(.page-numbers, .fl-post-meta a) {
	color: #20577f;
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.14em;
}

body.fedele-brand-typography :where(.fl-post-content, .entry-content, .woocommerce-privacy-policy-text) a:not(.button):hover,
body.fedele-brand-typography :where(.page-numbers, .fl-post-meta a):hover {
	color: #173f5c;
}

body.fedele-brand-typography :where(.cmplz-cookiebanner .cmplz-links a, .cmplz-cookiebanner a.cmplz-link) {
	font-size: 14px !important;
	line-height: 1.5 !important;
}

body.fedele-brand-typography :where(#cu29-banner-text, #cu29-banner-btns) {
	font-size: 14px !important;
	line-height: 1.5 !important;
}

body.fedele-brand-typography #cu29-banner-text a {
	font-size: inherit !important;
}

body.fedele-brand-typography :where(.cu29wr-type-card, .cu29wr-label) {
	font-size: 16px !important;
	line-height: 1.5 !important;
}

body.fedele-brand-typography .show-password-input {
	min-width: 28px;
}

body.fedele-brand-typography .fg-index-closing-greeting strong {
	color: #263324 !important;
}

body.fedele-brand-typography.single-producent .fl-node-9ywsgqze40dl > .fl-row-content-wrap {
	position: relative;
	isolation: isolate;
	background-color: #263324;
}

body.fedele-brand-typography.single-producent .fl-node-9ywsgqze40dl > .fl-row-content-wrap::before {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgb(24 34 23 / 48%);
	content: "";
}

body.fedele-brand-typography.single-producent .fl-node-9ywsgqze40dl :where(h1, h1 a, .fl-heading-text) {
	color: #fff !important;
	text-shadow: 0 1px 14px rgb(0 0 0 / 45%);
}

body.fedele-brand-typography :where(.fg-gift-eyebrow, .fg-index-kicker, .fg-index-primary-link, .fg-index-card-meta) {
	font-size: 14px !important;
	line-height: 1.5 !important;
}

body.fedele-brand-typography :where(.price, .amount, .fg-gift-price, .fg-index-card-price) {
	font-family: var(--fedele-font-strong) !important;
	font-weight: 600 !important;
	font-variant-numeric: tabular-nums;
}

body.fedele-brand-typography :where(.script, .fedele-script, .fg-index-closing-greeting) {
	font-family: var(--fedele-font-script) !important;
	font-weight: 400 !important;
	letter-spacing: normal;
}

body.fedele-brand-typography :where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid currentColor !important;
	outline-offset: 3px !important;
}

body.fedele-brand-typography :where(input, select, textarea) {
	min-height: 44px;
}

body.fedele-brand-typography.woocommerce-checkout :where(input.input-text, select, textarea),
body.fedele-brand-typography.woocommerce-cart :where(input.input-text, select, textarea) {
	font-size: 16px !important;
	line-height: 1.4 !important;
}

body.fedele-brand-typography :where(.select2-container .select2-selection--single) {
	min-height: 44px !important;
}

body.fedele-brand-typography :where(.woocommerce form .form-row label, .woocommerce-checkout label) {
	font-size: max(0.9375rem, 15px) !important;
	line-height: 1.4 !important;
}

body.fedele-brand-typography :where(.woocommerce-error, .woocommerce-info, .woocommerce-message) {
	font-size: max(1rem, 16px);
	line-height: 1.55;
}

body.fedele-brand-typography :where(.pp-category__title, .pp-category-count) {
	color: #263324 !important;
}

body.fedele-brand-typography .cu29-btn-primary {
	background-color: #c52b38 !important;
}

body.fedele-brand-typography .fg-index-closing-greeting {
	font-size: clamp(2rem, 4vw, 3.5rem) !important;
	line-height: 1.08 !important;
}

body.fedele-brand-typography.page-id-13429 .fl-post-title {
	display: none !important;
}

body.fedele-brand-typography .fg-index a {
	text-decoration: none !important;
}

@media (max-width: 767px) {
	body.fedele-brand-typography {
		font-size: 16px;
		line-height: 1.6;
	}

	body.fedele-brand-typography h1,
	body.fedele-brand-typography .fl-post-title,
	body.fedele-brand-typography .product_title {
		font-size: clamp(2.15rem, 11vw, 3.15rem) !important;
		line-height: 1.04 !important;
	}

	body.fedele-brand-typography h2 {
		font-size: clamp(1.75rem, 8vw, 2.5rem) !important;
	}

	body.fedele-brand-typography h3 {
		font-size: clamp(1.4rem, 6.5vw, 2rem) !important;
	}

	body.fedele-brand-typography.single-producent .woopack-products {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 32px !important;
		height: auto !important;
	}

	body.fedele-brand-typography.single-producent ul.woopack-products.products > li.woopack-product-grid {
		position: static !important;
		inset: auto !important;
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		margin: 0 !important;
		transform: none !important;
	}

	body.fedele-brand-typography.single-producent .woopack-product-action .button {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: auto !important;
		max-width: 100% !important;
		white-space: normal !important;
	}

	body.fedele-brand-typography.single-producent .woopack-product-title {
		max-width: 30ch;
		margin-inline: auto;
		font-size: 20px !important;
		line-height: 1.25 !important;
	}

	body.fedele-brand-typography.single-producent .woopack-product-image img {
		width: min(100%, 280px) !important;
		margin-inline: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.fedele-brand-typography *,
	body.fedele-brand-typography *::before,
	body.fedele-brand-typography *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
