/**
* Custom styles for the theme, not SCSS related
**/

/* GF Edits */
.gform_wrapper.gform-theme .gform_validation_container, 
body .gform_wrapper.gform-theme .gform_body .gform_fields .gfield.gform_validation_container, 
body .gform_wrapper.gform-theme .gform_fields .gfield.gform_validation_container, 
body .gform_wrapper.gform-theme .gform_validation_container {
	display: none !important;
    left: -9000px;
    position: absolute !important;
}
input[type=tel] {
	border: 0;
    display: block;
    width: 100%;
    font-size: 16px;
    border-radius: 15px;
    height: 48px;
    padding: 12px;
    font-family: "Inter", sans-serif;
    font-weight: 400;
    color: #25495d;
    background: #fff;
}
.gfield_checkbox .gchoice {width:100%;display: flex;flex-wrap: wrap;}
.gfield-choice-input+label:before,
.gfield-choice-input:checked+label:after {display:none;}
.gfield-choice-input,
.gfield-choice-input+label {display:inline-block;flex: 0 0 auto;width: 90%;}
.gfield-choice-input {height:20px;flex: 0 0 auto;width: 33px;display: flex;margin: 4px;}
input[type="checkbox"].gfield-choice-input:checked {
  accent-color: #ff5100; /* Or any other color */
}
.gfield-choice-input+label {padding-left:0;}
@media (max-width: 575px) {
	.gfield-choice-input+label {width: 80%;}
}

/* Topbar Weglot Switcher */
.topbar-weglot {
	display: flex;
	align-items: center;
}

.topbar-weglot .weglot-container * {
	border-color: rgba(255,255,255,0.4) !important;
}

/* Header Overrides */
.menu-header {font-size:18px;gap:30px;}
.menu-header a {gap:2px}
.btn.btn-header {min-width:130px;}
@media (max-width: 1600px) {
	.menu-header {font-size:17px;gap:20px;}
}
@media (max-width: 1400px) {
	.menu-header {font-size:16px;gap:16px;}
	.btn.btn-header {min-width:115px;}
}
@media (max-width: 1300px) {
	.menu-header {
        font-size: 15px;
        gap: 9px;
    }
    .menu-header svg {flex:0 0 18px}
}

/* Header Overrides — Vietnamese & Spanish (longer nav strings, earlier breakpoints) */
:is([lang="vi"], [lang="es"]) .menu-header {font-size:16px;gap:20px;}
@media (max-width: 1850px) {
	:is([lang="vi"], [lang="es"]) .menu-header {
        font-size: 14px;
        gap: 5px;
    }
    :is([lang="vi"], [lang="es"]) .menu-header svg {flex:0 0 18px;}
	:is([lang="vi"], [lang="es"]) .btn.btn-header {min-width:115px;}
}

/* Force mobile menu at 1400px for Vietnamese & Spanish */
@media (max-width: 1400px) {
    :is([lang="vi"], [lang="es"]) #header .menu-header {display: none !important;}
    :is([lang="vi"], [lang="es"]) #header .menu-opener {display: block !important;}
    :is([lang="vi"], [lang="es"]) #header .cta-holder {display: none !important;}
}

/* Always use mobile menu for Vietnamese */
[lang="vi"] #header .menu-header {display: none !important;}
[lang="vi"] #header .menu-opener {display: block !important;}
[lang="vi"] #header .cta-holder {display: none !important;}

/* Force mobile drawer visible/functional for Vietnamese at all viewport widths.
   Overrides: (1) Bootstrap d-xl-none, (2) _header.scss .opened .side-menu{display:none} at ≥1198px */
[lang="vi"] .side-menu {display: block !important;}
[lang="vi"] .opened .side-menu {display: block !important;}

/* Inner Hero */
.s-inner_hero .bg-image.Top {object-position:top;}
.s-inner_hero .bg-image.Bottom {object-position:bottom;}

@media (max-width: 599px) {
	.s-inner_hero.style-decoration.no_sub .img {min-width:150px;}
}

@media (max-width: 991px) {
  .s-inner_hero.style-decoration .text {max-width:80%;}
}

/* Process */
@media (max-width: 450px) {
	.s-process {padding-top:0;}
}

/* Blue BG */
.bg-blue .text ul li {
	background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='29' height='22' viewBox='0 0 29 22' fill='none'><path d='M9.08298 21.3511C8.25034 21.3511 7.46638 21.0255 6.87713 20.4334L0.793775 14.3197C0.0687418 13.5912 0.0687418 12.4096 0.793775 11.6798C1.51881 10.9513 2.69474 10.9513 3.42106 11.6798L9.08426 17.3701L25.8279 0.546375C26.5529 -0.182125 27.7289 -0.182125 28.4552 0.546375C29.1802 1.27488 29.1802 2.45644 28.4552 3.18622L11.2888 20.4334C10.6996 21.0255 9.91689 21.3511 9.08298 21.3511Z' fill='%23ffffff'/></svg>") no-repeat left center;
	background-size:28.74px 21.35px;
}

/* Blog Post */
.s-post-text input[type=submit] {
	border: 2px solid #33647e;
	color:#33647e;
}
.s-post-text input[type=submit]:hover,
.s-post-text input[type=submit]:focus {
	border: 2px solid #33647e;
	background:#33647e;
	color:#fff;
}
.text-smaller {line-height:140%;}
/* Turnstile gate page */
.turnstile-gate {
	min-height: 100vh;
	margin: 0;
}

.turnstile-gate__root {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	padding: 24px;
	text-align: center;
}

.turnstile-gate__loader {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
}

.turnstile-gate__spinner {
	display: block;
	width: 48px;
	height: 48px;
	border: 4px solid rgba(37, 73, 93, 0.15);
	border-top-color: #33647e;
	border-radius: 50%;
	animation: turnstile-gate-spin 0.8s linear infinite;
}

.turnstile-gate__wait {
	margin: 0;
	font-family: "Inter", sans-serif;
	font-size: 18px;
	line-height: 1.5;
	color: #25495d;
}

.turnstile-gate__message {
	max-width: 420px;
	margin: 0;
	font-family: "Inter", sans-serif;
	font-size: 18px;
	line-height: 1.5;
	color: #25495d;
}

.turnstile-gate__widget {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@keyframes turnstile-gate-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Accessibility Updates */
.btn.btn-header, button.btn-header, input[type=submit].btn-header {font-size:19px;}
.c-gold {color:#b88a00 !important;}
.blog-filter .facetwp-radio.checked {background:#33647E !important;}
.btn.btn-orange, button.btn-orange, input[type=submit].btn-orange {background:#d54401;}
.btn.btn-orange-outline, .ob-results .btn.facetwp-load-more, .s-blog .btn.facetwp-load-more, button.btn-orange-outline, .ob-results button.facetwp-load-more, .s-blog button.facetwp-load-more, input[type=submit].btn-orange-outline, .ob-results input[type=submit].facetwp-load-more, .s-blog input[type=submit].facetwp-load-more {
	color:#d54401;
	border:2px solid #d54401;
}
#wpdcom .wpd-comment-header,
#wpdcom .wpd-comment-right .wpd-comment-last-edited,
#wpdcom .wpd-comment-date,
#comments #wpdcom span, 
#respond #wpdcom span, #wpdcom span {color:#444;}