/*
Theme Name: Crazy Web Studio (Divi Child)
Template: Divi
Text Domain: Divi-child
Author: Crazy Web Studio
Author URI: https://www.crazywebstudio.co.th
*/
body {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
	font-weight: 400;
}

/* event carousel */
.wpgb-prev-button {
	display: none;
}

.wpgb-next-button {
	display: none;
}

/* mobile 2 columns */
@media (max-width: 980px) {
	.mobile-2-col {
		display: grid !important;
		grid-template-columns: repeat(2, 1fr) !important;
		column-gap: 15px !important;
		row-gap: 20px !important;
	}

	/* clear divi width and margin for grid display */
	.mobile-2-col .et_pb_column {
		width: 100% !important;
		margin: 0 !important;
	}
}

/* desktop menu height control */

/* 1. force main container height */
.et_pb_menu_0_tb_header,
.et_pb_menu_0_tb_header .et_pb_menu_inner_container,
.et_pb_menu_0_tb_header .et_pb_menu__wrap {
	height: 50px !important;
	min-height: 50px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	display: flex !important;
	align-items: center !important;
}

/* 2. logo size control */
.et_pb_menu_0_tb_header .et_pb_menu__logo img {
	max-height: 18px !important;
	width: auto !important;
}

/* 3. menu text gap */
.et_pb_menu_0_tb_header .et-menu-nav ul li a {
	line-height: 1 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}


/* header popup */

.close-bar {
	cursor: pointer;
}

/* register button for small mobile screen */

@media only screen and (max-width: 450px) {

	/* English site */
	body.lang-en .et_pb_button.et_pb_button_0_tb_header {
		font-size: 14px !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
		padding-top: 11px !important;
		padding-bottom: 10px !important;
	}
}

/* Uppercase English site pink headers */
body.lang-en .cws-en-uppercase * {
	text-transform: uppercase !important;
	font-weight: 500 !important;
	letter-spacing: 1.5px !important;
}

/* English site black letter below the button grid "Try us out and we get you up and running within a week" */
body.lang-en .cws-en-small-header * {
	font-weight: 500 !important;
	letter-spacing: 0.15px !important;
}

/* English button grid text */
body.lang-en #page-container .et_pb_section .cws-en-button-grid.dipi_button_grid_child_0 .dipi-button-wrap,
body.lang-en #page-container .et_pb_section .cws-en-button-grid.dipi_button_grid_child_1 .dipi-button-wrap,
body.lang-en #page-container .et_pb_section .cws-en-button-grid.dipi_button_grid_child_2 .dipi-button-wrap,
body.lang-en #page-container .et_pb_section .cws-en-button-grid.dipi_button_grid_child_3 .dipi-button-wrap {
	font-weight: 500 !important;
	letter-spacing: 1.25px !important;
}

/*English mobile home h1 */
body.lang-en .cws-en-mobile-tagline * {
	font-weight: 400 !important;
	font-size: 48px !important;
	letter-spacing: 0 !important;
}

/* Thai language font override */
@font-face {
	font-family: 'Noto Sans Thai';
	src: url('/wp-content/uploads/et-fonts/noto-sans-thai-v29-latin-regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

html[lang="th"] body,
html[lang="th"] *:not(i):not(#wpadminbar):not(.ab-item):not(.et-pb-icon) {
	font-family: 'Noto Sans Thai', sans-serif !important;
	font-weight: 400 !important;
	line-height: 1.2em !important;
}

/* Sticky headers desktop */
#promo-bar {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	background: #fff;
}

@media (max-width: 480px) {
	#promo-bar {
		position: absolute;
	}
}

body.admin-bar #promo-bar {
	top: 32px;
}

.close-bar {
	position: absolute;
	right: 0;
}

#promo-bar .promo-bar-content {
	display: flex;
	align-items: center;
	column-gap: 16px;
}

@media (max-width: 480px) {
	#promo-bar .promo-bar-content {
		column-gap: 8px;
		row-gap: 16px;
		flex-wrap: wrap;
		padding-right: 20px;
	}
	.close-bar {
		position: absolute;
		right: 10px;
	}
}

/* Main desktop header under the promo bar */
.cws-desktop-header-section {
	position: fixed;
	top: 54px;
	left: 0;
	width: 100%;
	z-index: 9999;
	background: #fff;
}
body.promo-closed .cws-desktop-header-section {
	top: 18px;
}

body.admin-bar .cws-desktop-header-section {
	top: 72px;
}

.cws-mobile-header-section {
	position: fixed;
	top: 106px;
	left: 0;
	width: 100%;
	z-index: 9999;
	background: #fff;
}

/* When promo bar is closed */
body.promo-closed .cws-mobile-header-section {
	top: 0;
}

.mobile-menu-popup {
	margin-left: 8px;
}


/* Divi Builder Fixes */
body.et-fb .et_pb_row {
	max-width: 1280px !important
}

@media only screen and (max-width: 979px) {

	body .et_pb_row,
	body.et-fb .et_pb_row {
		width: 100% !important;
		max-width: 1280px !important
	}

	body .et_pb_section>.et_pb_row:first-child,
	body.et-fb .et_pb_section>.et_pb_row:not(.et_pb_row ~ .et_pb_row) {
		padding-top: 24px !important;
	}

	body .et_pb_section>.et_pb_row:last-child,
	body.et-fb .et_pb_section>.et_pb_row:not(:has(~ .et_pb_row)) {
		padding-bottom: 24px !important;
	}

	body #promo-bar.et_pb_section .et_pb_row,
	body .cws-mobile-header-section.et_pb_section .et_pb_row {
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}

	body .cookie-popup.et_pb_section .et_pb_row {
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	}
}

@media only screen and (min-width: 980px) {
	body .et_pb_section > .et_pb_row:not(.cws-row-manual):not(.cws-desktop-header-row):first-child,
	body.et-fb .et_pb_section > .et_pb_row:not(.cws-row-manual):not(.cws-desktop-header-row):not(.et_pb_row ~ .et_pb_row) {
		padding-top: 40px !important;
	}

	body .et_pb_section > .et_pb_row:not(.cws-row-manual):not(.cws-desktop-header-row):last-child,
	body.et-fb .et_pb_section > .et_pb_row:not(.cws-row-manual):not(.cws-desktop-header-row):not(:has(~ .et_pb_row)) {
		padding-bottom: 40px !important;
	}

	body #promo-bar.et_pb_section .et_pb_row,
	body.et-fb #promo-bar.et_pb_section .et_pb_row {
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}

	body .et_pb_section .cws-desktop-header-row.et_pb_row,
	body.et-fb .et_pb_section .cws-desktop-header-row.et_pb_row {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}


}

.et_pb_image_wrap img {
	display: block;
}

.dipi-carousel-item-desc p {
	font-size: 20px !important
}

@media (max-width: 480px) {

	#get-started,
	#leadership,
	#board-members {
		margin-left: 24px !important;
		margin-right: 24px !important;
		width: auto !important;
	}

	.dipi-carousel-item-desc p {
		font-size: 16px !important
	}
}