/*
	Theme Name: Hello Elementor Child
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello
	Author: Me
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 1.0.0
	Stable tag: 1.0.0
	Requires at least: 6.0
	Tested up to: 6.5
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor-child
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
    Template: hello-elementor
*/

/*
 * WooCommerce checkout and order confirmation
 *
 * Elementor Pro styles the checkout form, but the order-received endpoint
 * renders different WooCommerce markup. Keep both states aligned with the
 * Sundown palette without overriding WooCommerce templates.
 */
body.woocommerce-checkout .elementor-element-ba083ab {
	--sundown-surface: #fff;
	--sundown-ink: #26333a;
	--sundown-muted: #667085;
	--sundown-border: #e4e7ec;
	--sundown-orange: #ff6800;
	--sundown-radius: 6px;
}

body.woocommerce-checkout .elementor-element-ba083ab > .elementor-widget-container > .woocommerce {
	box-sizing: border-box;
	width: 100%;
	max-width: 1140px;
	margin-inline: auto;
}

/*
 * Make PayPal and Satispay easy to select without changing gateway behavior.
 * The native radio remains available to keyboards and assistive technology.
 */
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay {
	position: relative;
	padding: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > input.input-radio,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > input.input-radio {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > input.input-radio + label,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > input.input-radio + label {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 58px;
	margin: 0 0 10px;
	padding: 12px 16px 12px 50px;
	border: 2px solid var(--sundown-border);
	border-radius: 6px;
	background: #fff;
	color: var(--sundown-ink);
	cursor: pointer;
	box-sizing: border-box;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > input.input-radio + label::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > input.input-radio + label::before {
	position: absolute;
	top: 50%;
	left: 17px;
	width: 20px;
	height: 20px;
	border: 2px solid #98a2b3;
	border-radius: 50%;
	background: #fff;
	content: "";
	transform: translateY(-50%);
	box-sizing: border-box;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > input.input-radio:checked + label,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > input.input-radio:checked + label {
	border-color: var(--sundown-orange);
	background: rgb(255 104 0 / 6%);
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > input.input-radio:checked + label::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > input.input-radio:checked + label::before {
	border-color: var(--sundown-orange);
	background: var(--sundown-orange);
	box-shadow: inset 0 0 0 4px #fff;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > input.input-radio:focus-visible + label,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > input.input-radio:focus-visible + label {
	outline: 3px solid rgb(255 104 0 / 25%);
	outline-offset: 2px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_ppcp-gateway > label img,
body.woocommerce-checkout:not(.woocommerce-order-received) .elementor-element-ba083ab #payment .payment_method_satispay > label img {
	width: auto;
	max-height: 28px;
	margin-left: auto;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order {
	color: var(--sundown-ink);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-thankyou-order-received {
	margin: 0;
	padding: 32px 32px 12px;
	border-radius: var(--sundown-radius) var(--sundown-radius) 0 0;
	background: var(--sundown-surface);
	color: var(--sundown-ink);
	font-size: 1.125rem;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email {
	margin: 0 0 32px;
	padding: 12px 32px 32px;
	border-radius: 0 0 var(--sundown-radius) var(--sundown-radius);
	background: var(--sundown-surface);
	color: var(--sundown-ink);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email p,
body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email label {
	color: var(--sundown-ink);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email a {
	color: var(--sundown-orange);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email input.input-text {
	min-height: 48px;
	padding: 10px 14px;
	border: 1px solid var(--sundown-border);
	border-radius: 3px;
	background: #fff;
	color: var(--sundown-ink);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email input.input-text:focus {
	border-color: var(--sundown-orange);
	outline: 2px solid rgb(255 104 0 / 20%);
	outline-offset: 1px;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email .button {
	min-height: 44px;
	padding: 10px 24px;
	border: 0;
	border-radius: 3px;
	background: var(--sundown-orange);
	color: #fff;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email .button:hover,
body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email .button:focus-visible {
	background: var(--sundown-ink);
	color: #fff;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 0;
	margin: 0 0 32px;
	padding: 12px 32px 32px;
	border-radius: 0 0 var(--sundown-radius) var(--sundown-radius);
	background: var(--sundown-surface);
	list-style: none;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li {
	float: none;
	width: auto;
	margin: 0;
	padding: 0 24px;
	border-right: 1px solid var(--sundown-border);
	color: var(--sundown-muted);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li:first-child {
	padding-left: 0;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li:last-child {
	padding-right: 0;
	border-right: 0;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li strong {
	display: block;
	margin-top: 6px;
	color: var(--sundown-ink);
	font-size: 1.125rem;
	line-height: 1.35;
	text-transform: none;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-details,
body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-customer-details {
	margin: 0 0 32px;
	padding: 32px;
	border-radius: var(--sundown-radius);
	background: var(--sundown-surface);
	color: var(--sundown-ink);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-details__title,
body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-customer-details > h2 {
	margin: 0 0 24px;
	color: var(--sundown-orange);
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	line-height: 1.15;
}

body.woocommerce-order-received .elementor-element-ba083ab table.shop_table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	color: var(--sundown-ink);
	table-layout: auto;
}

body.woocommerce-order-received .elementor-element-ba083ab table.shop_table th,
body.woocommerce-order-received .elementor-element-ba083ab table.shop_table td {
	padding: 16px 0;
	border: 0;
	border-bottom: 1px solid var(--sundown-border);
	background: transparent;
	color: var(--sundown-ink);
	vertical-align: top;
}

body.woocommerce-order-received .elementor-element-ba083ab table.shop_table tr:last-child th,
body.woocommerce-order-received .elementor-element-ba083ab table.shop_table tr:last-child td {
	border-bottom: 0;
}

body.woocommerce-order-received .elementor-element-ba083ab table.shop_table th:last-child,
body.woocommerce-order-received .elementor-element-ba083ab table.shop_table td:last-child {
	width: 180px;
	padding-left: 24px;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-order-received .elementor-element-ba083ab table.shop_table a {
	color: var(--sundown-orange);
}

body.woocommerce-order-received .elementor-element-ba083ab table.shop_table a:hover,
body.woocommerce-order-received .elementor-element-ba083ab table.shop_table a:focus-visible {
	color: var(--sundown-ink);
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-customer-details address {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--sundown-ink);
	font-style: normal;
	line-height: 1.7;
}

body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-customer-details address p {
	color: var(--sundown-ink);
}

@media (max-width: 767px) {
	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-thankyou-order-received {
		padding: 24px 20px 10px;
	}

	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-verify-email {
		padding: 10px 20px 24px;
	}

	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview {
		grid-template-columns: 1fr;
		padding: 10px 20px 24px;
	}

	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li,
	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li:first-child,
	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li:last-child {
		padding: 14px 0;
		border-right: 0;
		border-bottom: 1px solid var(--sundown-border);
	}

	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-overview li:last-child {
		border-bottom: 0;
	}

	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-order-details,
	body.woocommerce-order-received .elementor-element-ba083ab .woocommerce-customer-details {
		padding: 24px 20px;
	}

	body.woocommerce-order-received .elementor-element-ba083ab table.shop_table th:last-child,
	body.woocommerce-order-received .elementor-element-ba083ab table.shop_table td:last-child {
		width: auto;
		padding-left: 16px;
	}
}

/*
 * WooCommerce single-product template
 *
 * Bring Elementor template 174 onto the same 1140px grid and card system as
 * checkout. The rules are template-scoped so catalog and archive pages are
 * unaffected.
 */
body.single-product .elementor-174 {
	box-sizing: border-box;
	width: 100%;
	padding: 48px 20px;
	overflow: hidden;
	background: var(--e-global-color-primary, #264b5a);
}

body.single-product .elementor-174 .elementor-element-223cc431 {
	--content-width: 1140px;
	--margin-top: 0;
	--margin-right: 0;
	--margin-bottom: 0;
	--margin-left: 0;
	--padding-top: 0;
	--padding-right: 0;
	--padding-bottom: 0;
	--padding-left: 0;
}

body.single-product .elementor-174 .elementor-element-223cc431 > .e-con-inner {
	gap: 48px;
	padding: 48px;
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 14px 36px rgb(0 0 0 / 10%);
}

body.single-product .elementor-174 .elementor-element-61fc12ce,
body.single-product .elementor-174 .elementor-element-1399962 {
	--padding-top: 0;
	--padding-right: 0;
	--padding-bottom: 0;
	--padding-left: 0;
	min-width: 0;
}

body.single-product .elementor-174 .elementor-element-6969bc23 .elementor-heading-title {
	font-size: clamp(3rem, 5vw, 4rem);
	line-height: 1.02;
	text-wrap: balance;
}

body.single-product .elementor-174 .elementor-element-1f47099c {
	display: none;
}

body.single-product .elementor-174 .elementor-element-5859dae7 {
	width: 100%;
	max-width: 100%;
}

body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery {
	width: 100%;
	margin: 0;
	opacity: 1 !important;
}

body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 3px;
}

body.single-product .elementor-174 .elementor-element-437da378 .price {
	margin: 4px 0 0;
	color: var(--e-global-color-secondary, #ff6800);
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	line-height: 1.15;
}

body.single-product .elementor-174 .elementor-element-68b1a100 form.cart,
body.single-product .elementor-174 .elementor-element-68b1a100 .single_add_to_cart_button {
	width: 100%;
}

body.single-product .elementor-174 .elementor-element-68b1a100 .single_add_to_cart_button {
	min-height: 52px;
	border-radius: 3px;
	background: var(--e-global-color-secondary, #ff6800);
	border-color: var(--e-global-color-secondary, #ff6800);
	color: #fff;
}

body.single-product .elementor-174 .elementor-element-68b1a100 .single_add_to_cart_button:hover,
body.single-product .elementor-174 .elementor-element-68b1a100 .single_add_to_cart_button:focus-visible {
	background: var(--e-global-color-primary, #264b5a);
	border-color: var(--e-global-color-primary, #264b5a);
	color: #fff;
}

body.single-product .elementor-174 .wapf-field-label,
body.single-product .elementor-174 .wapf-field-label label,
body.single-product .elementor-174 .wapf-input-label {
	color: #26333a;
}

@media (max-width: 1024px) {
	body.single-product .elementor-174 {
		padding: 36px 20px;
	}

	body.single-product .elementor-174 .elementor-element-223cc431 > .e-con-inner {
		gap: 36px;
		padding: 36px;
	}
}

@media (max-width: 767px) {
	body.single-product .elementor-174 {
		padding: 24px 16px;
	}

	body.single-product .elementor-174 .elementor-element-223cc431 > .e-con-inner {
		flex-direction: column;
		gap: 32px;
		width: calc(100vw - 32px);
		max-width: calc(100vw - 32px);
		padding: 24px 20px;
		overflow: hidden;
	}

	body.single-product .elementor-174 .elementor-element-61fc12ce,
	body.single-product .elementor-174 .elementor-element-1399962 {
		--width: 100%;
		width: 100%;
	}

	body.single-product .elementor-174 .elementor-element-6969bc23 .elementor-heading-title {
		font-size: clamp(2.5rem, 12vw, 3rem);
	}

	body.single-product .elementor-174 .elementor-element-1399962 {
		--margin-top: 0;
	}

	body.single-product .elementor-174 .elementor-element-5859dae7,
	body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery,
	body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery__wrapper,
	body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery__image,
	body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery__image a,
	body.single-product .elementor-174 .elementor-element-5859dae7 .woocommerce-product-gallery__image img {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
	}
}

/*
 * Homepage split hero for the portrait event reel.
 */
body.home .elementor-element-26f1b1c3 {
	--content-width: 1140px;
	--padding-top: 72px;
	--padding-right: 20px;
	--padding-bottom: 120px;
	--padding-left: 20px;
	box-sizing: border-box;
	width: 100%;
	overflow: hidden;
}

body.home .elementor-element-26f1b1c3 > .e-con-inner {
	display: grid;
	grid-template-areas:
		"top reel"
		"copy reel";
	grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
	grid-template-rows: auto auto;
	gap: 24px 64px;
	align-items: center;
	box-sizing: border-box;
	min-width: 0;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c1,
body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2,
body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c3 {
	--width: 100%;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c1 {
	grid-area: top;
	align-self: end;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2 {
	grid-area: copy;
	align-self: start;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c3 {
	grid-area: reel;
	justify-self: end;
	max-width: 400px;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2 .elementor-widget-text-editor {
	color: #fff;
	font-size: 1.125rem;
	line-height: 1.65;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2 .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c3 .elementor-wrapper {
	aspect-ratio: 9 / 16 !important;
	overflow: hidden;
	border: 2px solid var(--e-global-color-secondary, #ff6800);
	border-radius: 8px;
	background: #142f3a url("https://sundownbikefest.it/wp-content/uploads/2026/07/sundown-party-reel-2026-poster.jpg") center / cover no-repeat;
	box-shadow: 0 18px 48px rgb(0 0 0 / 28%);
}

body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c3 video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: transparent;
}

@media (max-width: 1024px) {
	body.home .elementor-element-26f1b1c3 > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) 320px;
		gap: 24px 36px;
	}

	body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2 .elementor-widget-text-editor {
		font-size: 1rem;
		line-height: 1.55;
	}
}

@media (max-width: 767px) {
	body.home .elementor-element-26f1b1c3 {
		--padding-top: 40px;
		--padding-right: 20px;
		--padding-bottom: 100px;
		--padding-left: 20px;
	}

	body.home .elementor-element-26f1b1c3 > .e-con-inner {
		display: grid;
		grid-template-areas:
			"top"
			"reel"
			"copy";
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
		box-sizing: border-box;
		width: calc(100vw - 40px);
		max-width: calc(100vw - 40px);
		min-width: 0;
		margin-inline: auto;
	}

	body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c1,
	body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2 {
		align-items: center;
		text-align: center;
	}

	body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c1 *,
	body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c2 * {
		max-width: 100%;
		overflow-wrap: anywhere;
	}

	body.home .elementor-element-26f1b1c3 .elementor-element-a62f10c3 {
		justify-self: center;
		width: 100%;
		max-width: 360px;
	}
}
