/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/* Checkout: tournament rules acceptance, matches the terms checkbox styling */
.woocommerce-checkout .vph-rules-acceptance {
	margin: 0 0 1.5em;
}

.woocommerce form .form-row.vph-rules-acceptance label,
.woocommerce form .form-row.vph-rules-acceptance.woocommerce-invalid label {
	color: var(--e-global-color-text, #fff);
	font-family: var(--e-global-typography-accent-font-family), sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 2;
}

.woocommerce-checkout .vph-rules-acceptance a {
	color: var(--e-global-color-secondary, #d9b472);
}

.woocommerce form .form-row.vph-rules-acceptance.woocommerce-invalid input[type="checkbox"] {
	outline: 2px solid #e2401c;
	outline-offset: 1px;
}

/* Front page hero: small kicker line inside the H1 */
.vph-hero-kicker {
	display: block;
	margin-bottom: 0.35em;
	color: var(--e-global-color-849baab, #c6dce9);
	font-size: clamp(20px, 2.2vw, 30px);
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 1.2;
}

/* Keep button labels on one line on wider screens */
@media (min-width: 768px) {
	.elementor-button .elementor-button-text {
		white-space: nowrap;
	}
}

/* Complianz: cookie banner in the site palette */
html:root {
	--cmplz_banner_background_color: #101419;
	--cmplz_banner_border_color: #3a4553;
	--cmplz_banner_border_width: 1px;
	--cmplz_text_color: #ffffff;
	--cmplz_hyperlink_color: #d9b472;
	--cmplz_button_accept_background_color: #601020;
	--cmplz_button_accept_border_color: #601020;
	--cmplz_button_accept_text_color: #ffffff;
	--cmplz_button_deny_background_color: transparent;
	--cmplz_button_deny_border_color: #d0c8b8;
	--cmplz_button_deny_text_color: #ffffff;
	--cmplz_button_settings_background_color: transparent;
	--cmplz_button_settings_border_color: #d0c8b8;
	--cmplz_button_settings_text_color: #ffffff;
	--cmplz_button_border_radius: 10px;
	--cmplz_slider_active_color: #d9b472;
	--cmplz_category_header_always_active_color: #d9b472;
}

.cmplz-cookiebanner {
	font-family: var(--e-global-typography-text-font-family, "Helvetica Neue"), Helvetica, Arial, sans-serif;
}

/* Complianz: "manage consent" as a round cookie button instead of a hidden tab.
   Shown on mobile too, so consent can always be changed. */
body #cmplz-manage-consent .cmplz-manage-consent {
	right: auto;
	bottom: 20px;
	left: 20px;
	display: inline-flex;
	align-items: center;
	min-width: 48px;
	height: 48px;
	padding: 0 18px 0 48px;
	border: 2px solid #d9b472;
	border-radius: 999px;
	background: #101419 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d9b472' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5'/%3E%3Cpath d='M8.5 8.5v.01M16 15.5v.01M12 12v.01M11 17v.01M7 14v.01'/%3E%3C/svg%3E") no-repeat 12px center / 22px 22px;
	color: #ffffff;
	font-family: var(--e-global-typography-accent-font-family, "Helvetica Neue"), Helvetica, Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	animation: none;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover,
body #cmplz-manage-consent .cmplz-manage-consent:focus {
	bottom: 20px;
	background-color: #601020;
	transform: translateY(-2px);
	animation: none;
}

body #cmplz-manage-consent .cmplz-manage-consent:focus-visible {
	outline: 3px solid #d9b472;
	outline-offset: 3px;
}

/* Icon only on small screens; the label stays available to screen readers */
@media (max-width: 768px) {
	body #cmplz-manage-consent .cmplz-manage-consent {
		bottom: 16px;
		left: 16px;
		width: 48px;
		padding: 0;
		font-size: 0;
		background-position: center;
	}

	body #cmplz-manage-consent .cmplz-manage-consent:hover,
	body #cmplz-manage-consent .cmplz-manage-consent:focus {
		bottom: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body #cmplz-manage-consent .cmplz-manage-consent {
		transition: none;
	}

	body #cmplz-manage-consent .cmplz-manage-consent:hover,
	body #cmplz-manage-consent .cmplz-manage-consent:focus {
		transform: none;
	}
}
