/* Frey Design Custom CSS | May 2023 */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

:root {
	/* Colors */
	--color-transparent: transparent;
	--color-black: #000000;
	--color-white: #ffffff;
	--color-blue-light: #2a93e4;
	--color-blue: #0073cc;
	--color-blue-dark: #005188;
	--color-gray-light: #e6e5e5;
	--color-gray: #868186;
	--color-gray-dark: #363436;
	/* Other */
	--transition: ease all 300ms;
}

/* Fonts */
h1, h2, h3, h4, h5, h6, p, blockquote, ul li, ol li, button, span, a { font-family: 'Montserrat', sans-serif !important; }

h1, h1.elementor-heading-title { color: var(--color-gray-dark); font-size: 45px; line-height: 46px; text-transform: uppercase; font-weight: 700; }
h1.elementor-heading-title { padding-left: 25px; }
h1.elementor-heading-title:before { content: ''; background: var(--color-blue); position: absolute; left: 0; top: 6px; bottom: 6px; width: 7px; }

h2, h2.elementor-heading-title { color: var(--color-gray-dark); font-size: 30px; line-height: 32px; text-transform: uppercase; font-weight: 700; padding-left: 25px; }
h2.elementor-heading-title:before { content: ''; background: var(--color-blue); position: absolute; left: 0; top: 6px; bottom: 6px; width: 5px; }

h3, h3.elementor-heading-title { color: var(--color-gray-dark); font-size: 22px; line-height: 26px; text-transform: none; font-weight: 500; }
h4, h4.elementor-heading-title, p.elementor-heading-title { color: var(--color-blue); font-size: 14px; line-height: 18px; text-transform: uppercase; font-weight: 700; }

/* Buttons */
.elementor-button-wrapper a.elementor-button-link { transition: var(--transition); background-color: var(--color-blue); color: var(--color-white); border: 2px solid var(--color-blue); border-radius: 0; padding: 12px 28px !important; font-size: 14px; line-height: 14px; text-transform: uppercase; letter-spacing: normal; font-weight: 600; transform: none; }
.elementor-button-wrapper a.elementor-button-link:hover,
.elementor-button-wrapper a.elementor-button-link:focus { background-color: var(--color-transparent); color: var(--color-blue); border: 2px solid var(--color-blue); }

/* Team Blocks */
.team-single { margin-bottom: 40px !important; }
.team-single .elementor-widget-wrap > .elementor-widget:not(:last-child) { margin-bottom: 0; }
.team-single a:not(.elementor-button),
.team-single img { width: 100%; }
.team-single a img { transition: var(--transition); }
.team-single a:hover img,
.team-single a:focus img { filter: grayscale(90%); }

.team-single h3.elementor-heading-title { margin-top: 30px; }
.team-single p.elementor-heading-title { margin-top: 15px; }
.team-single .elementor-button-wrapper { margin-top: 30px; }

.elementor-counter { position: relative; padding: 0 30px; }
.elementor-counter .elementor-counter-number,
.elementor-counter .elementor-counter-number-prefix,
.elementor-counter .elementor-counter-number-suffix { font-size: 50px; }
/*.elementor-counter :before { content: ''; background: var(--color-blue); position: absolute; left: 0; top: 6px; bottom: 6px; width: 5px; }*/
.elementor-counter > .elementor-counter-title { font-family: 'Montserrat', sans-serif !important; margin-top: 12px; color: var(--color-gray); font-size: 16px !important; line-height: 21px !important; text-transform: uppercase; font-weight: 500;  }


.elementor-section.elementor-section-boxed > .elementor-container { max-width: 1235px; }

.portfolio-tiles .elementor-column h3.elementor-heading-title,
.portfolio-tiles .elementor-column h3.elementor-heading-title a { color: var(--color-white); transition: var(--transition); font-weight: 500; text-transform: none; }
.portfolio-tiles .elementor-column a img { transition: var(--transition); margin-bottom: 10px; }
.portfolio-tiles .elementor-column a:hover img,
.portfolio-tiles .elementor-column a:focus img { filter: grayscale(90%); }
.portfolio-tiles .elementor-column h3.elementor-heading-title a:hover,
.portfolio-tiles .elementor-column h3.elementor-heading-title a:focus { color: var(--color-blue); }
.portfolio-tiles .elementor-column p.elementor-heading-title { color: var(--color-blue-light); font-weight: 600; }
.portfolio-tiles .elementor-column .elementor-widget-container * { color: var(--color-white); }
.portfolio-tiles .elementor-column .elementor-widget-container > p { font-size: 15px; }
@media all and (max-width: 767px) {
.portfolio-tiles .elementor-container > .elementor-column.elementor-col-33 { margin-bottom: 40px; }
.portfolio-tiles .elementor-container > .elementor-column.elementor-col-33:last-of-type { margin-bottom: 20px; }
}


.section-home-portfolio .elementor-column h3.elementor-heading-title a { font-weight: 500; text-transform: none; }
.section-home-portfolio .elementor-column p.elementor-heading-title { font-weight: 600; }


/* Nav Menu Button */
.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button-link .ast-custom-button { transition: var(--transition); background-color: var(--color-blue); color: var(--color-white); border: 2px solid var(--color-blue); border-radius: 0; padding: 12px 28px !important; font-size: 14px; line-height: 14px; text-transform: uppercase; letter-spacing: normal; font-weight: 600; transform: none; font-family: 'Montserrat', sans-serif !important; }
.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button-link:hover .ast-custom-button,
.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button-link:focus .ast-custom-button { background-color: var(--color-transparent); color: var(--color-white); border: 2px solid var(--color-blue);  }

/* Navigation */
.main-header-menu > .menu-item > .menu-link { color: var(--color-white); font-size: 14px !important; line-height: 1 !important; text-transform: uppercase; font-weight: 600; position: relative; padding: 33px 12px; }
.main-header-menu > .menu-item > .menu-link:hover,
.main-header-menu > .menu-item > .menu-link:focus { color: var(--color-blue-light) !important; }
.main-header-menu > .menu-item.current-menu-item > .menu-link:after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 8px; background-color: var(--color-blue); }
@media all and (max-width: 921px) {
	.main-header-menu > .menu-item.current-menu-item > .menu-link:after { content: none; }
}

/* Header and Header Active */
.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu { background-color: transparent; }
.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu > .menu-item { padding-top: 5px; padding-bottom: 5px; background-color: transparent; }
.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu > .menu-item > .menu-link { padding-top: 15px; padding-bottom: 15px; background-color: transparent; color: var(--color-white); }
.ast-main-header-nav-open.ast-header-break-point .ast-mobile-header-wrap .ast-mobile-header-content { display: flex; position: absolute; left: 0; right: 0; top: 80px; background: var(--color-gray-dark); padding: 30px 0; }

/* footer Stick Bottom Fix */
#content.site-content { min-height: calc(100vh - 97px); }

/* Footer Color */
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] { background-color: var(--color-blue); }
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-header-html p,
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-header-html p span { color: var(--color-white); font-size: 14px; line-height: 1; text-transform: none; font-weight: 600; }


.elementor-icon-list-items > .elementor-icon-list-item > .elementor-icon-list-icon { display: none }
.elementor-icon-list-items > .elementor-icon-list-item > .elementor-icon-list-text { padding: 0 0 0 28px !important; position: relative; display: block; }
.elementor-icon-list-items > .elementor-icon-list-item > .elementor-icon-list-text:before { content: '—'; position: absolute; left: 0; top: 50%; transform: translateY(-50%); color: var(--color-blue); font-weight: 700; }


.elementor-widget-container img { width: 100%; }

@media all and (max-width: 767px) {
.mobile-bot { order: 2; }
.mobile-top { order: 1; margin-bottom: 30px; }
}

.hero-logo img { width: 322px !important; height: 63px !important; }
.hero-logo-on-bg img { width: 500px !important; height: 142px !important; }







/* Original Theme Custom Css */

/* WPForms fixes */
/* Initial field looks */
.wpforms-container input[type=date],
.wpforms-container input[type=datetime],
.wpforms-container input[type=datetime-local],
.wpforms-container input[type=email],
.wpforms-container input[type=month],
.wpforms-container input[type=number],
.wpforms-container input[type=password],
.wpforms-container input[type=range],
.wpforms-container input[type=search],
.wpforms-container input[type=tel],
.wpforms-container input[type=text],
.wpforms-container input[type=time],
.wpforms-container input[type=url],
.wpforms-container input[type=week],
.wpforms-container select,
.wpforms-container textarea {
	background: #fff;
	border-width: 0 0 1px 0;
	color: var(--ast-global-color-2);
	opacity: 0.5;
}
/* On focus */
.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus {
	outline: none;
	opacity: 1;
	border-color: var(--ast-global-color-0);
}
/* Don't allow resizing the Message box */
.wpforms-container textarea {
	resize: none;
}
/* Message box fixed height */
.wpforms-container .wpforms-field-textarea textarea.wpforms-field-medium {
	height: 136px;
}
/* Button size & font size */
.wpforms-container button {
	padding: 15px 34px;
	font-size: 15px;
}
/* WPForms done */
/* Footer 2 big columns on sides and 1 small one in the middle */
.ast-builder-grid-row-3-equal .ast-builder-grid-row {
	grid-template-columns: 3fr 1fr 3fr;
}
