/**
 * GW Blueprint - Main Stylesheet
 * 
 * This file contains base styles and utilities for the theme
 */

/* CSS Variables for easy customization */
:root {
	--font-family--inter: 'Inter', sans-serif;

	--swiper-pagination-color: var(--wp--preset--color--custom-color-500);
	--swiper-pagination-bullet-inactive-color: var(--wp--preset--color--neutral-100);
	--swiper-pagination-bullet-inactive-opacity: 1;
	--swiper-pagination-bullet-size: 8px;
	--swiper-pagination-bullet-horizontal-gap: 10px;
}

/* Reset and Base Styles */
* {
	box-sizing: border-box;
}

html {
	font-size: 16px;
	line-height: 1.6;
}

body {
	font-family: var(--font-family--inter);
	color: var(--wp--preset--color--neutral-700);
	background-color: var(--wp--preset--color--neutral-white);
	margin: 0;
	padding: 0;
	font-weight: 300;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 20px 0;
	font-weight: 600;
	line-height: 1.2;
}

h1 { font-size: 48px; }
h2 { font-size: 36px; }
h3 { font-size: 24px; }
h4 { font-size: 20px; }
h5 { font-size: 16px; }
h6 { font-size: 12px; }

p{
	font-size: 16px;
	margin: 0 0 20px 0;
	line-height: 150%;
}
ul, ol{
	font-size: 16px;
	line-height: 150%;
	margin: 0 0 20px 0;
}
p:last-child,
ul:last-child,
ol:last-child{
	margin-bottom: 0;
}
ul:empty,
ol:empty,
li:empty,
p:empty{
	display: none;
}
img{
	max-width: 100%;
	border:none;
	outline:none;
}
a{
	color: currentColor;
}
a, a:hover{
	text-decoration:none
}
input,
select,
textarea,
button{
	font-family: var(--font-family--inter);
	outline: none;
}
::-webkit-scrollbar {
	width: 5px;
}
::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, 0.1);
}
::-webkit-scrollbar-thumb {
	background: rgba(0, 0, 0, 0.2);
}
.wp-site-blocks > *{
	margin-block-start:0;
}

/* Button Styles */
.wp-element-button,
.wp-block-button__link,
.button{
	--btnColor: var(--wp--preset--color--custom-500);
	--btnColorHover: color-mix(in srgb, var(--btnColor) 90%, #000000);
	--btnTextColor:  var(--wp--preset--color--neutral-white);
	--btnTextColorHover:  var(--wp--preset--color--neutral-white);
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap:10px;
	background-color: var(--btnColor);
	color: var(--btnTextColor);
	padding: 12px 25px;
    border-radius: 99px;
	border: none;
	cursor: pointer;
	transition: all 0.3s;

	&:hover{
		background: var(--btnColorHover);
		color: var(--btnTextColorHover);
	}
}

.is-style-secondary-fill .wp-element-button,
.is-style-secondary-outline .wp-element-button{
	--btnColor: var(--wp--preset--color--neutral-white);
	--btnColorHover: color-mix(in srgb, var(--btnColor) 90%, #000000);
	--btnTextColor: var(--wp--preset--color--custom-500);
	--btnTextColorHover: var(--wp--preset--color--custom-500);
}

.is-style-readmore .wp-element-button{
	--btnColor: transparent;
	--btnColorHover: transparent;
	--btnTextColor: var(--wp--preset--color--neutral-500);
	--btnTextColorHover: var(--wp--preset--color--neutral-500);
	border: 1px solid var(--wp--preset--color--neutral-500);
	padding: 8px 18px;
}
.is-style-readmore .wp-element-button::after{
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(../images/right-arrow.svg) no-repeat center center;
	background-size: contain;
	transition: all 0.3s;
}
.is-style-readmore .wp-element-button:hover::after{
	transform: translateX(5px);
}

/*** HEADINGS ***/
.is-style-section_title{
	font-size: 40px;
	font-weight: 700;
	line-height: 115%;
	letter-spacing: 1px;
	text-transform: uppercase;
}
h1.is-style-section_title{
	font-size: 48px;
}
h3.is-style-section_title {
    font-size: 30px;
    text-transform: none;
}
.is-style-section_subtitle{
	font-size: 20px;
	font-weight: 600;
	line-height: 115%;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.header_menu a{
	transition: all 0.3s;
}
.header_menu a:hover{
	color: var(--wp--preset--color--neutral-500) !important;
}

/*** GRAVITY FORMS ***/
.form_wrapper{
	max-width: 380px;
    margin: 30px auto 0;
}
.gform_description:empty,
.gform_heading{
	display: none !important;
}
.form_wrapper .gform_wrapper.gravity-theme input[type=text],
.form_wrapper .gform_wrapper.gravity-theme input[type=email],
.form_wrapper .gform_wrapper.gravity-theme input[type=tel],
.form_wrapper .gform_wrapper.gravity-theme input[type=number],
.form_wrapper .gform_wrapper.gravity-theme select,
.form_wrapper .gform_wrapper.gravity-theme textarea{
	border-radius: 8px;
	height: 50px;
	border:1px solid #ACACAC;
}
.form_wrapper .gform_wrapper.gravity-theme .gfield_label{
	display: block;
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 0;
}
.form_wrapper .gform_wrapper.gravity-theme .gform_fields {
	grid-row-gap: 20px;
}
.form_wrapper .gform_footer{
	justify-content: end;
	padding-bottom: 0 !important;
}
.form_wrapper .gform_footer .button{
	margin: 0 !important;
}

/*** HEADER ***/
header.wp-block-template-part,
#header{
	height: 70px;
}
header.wp-block-template-part{
	position: fixed;
    z-index: 9;
    width: 100%;
    max-width: 1200px;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
}
#header{
	padding:0 20px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(10px);
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.admin-bar header.wp-block-template-part{
	top: 52px;
}
.header_menu .current-menu-item{
	color: var(--wp--preset--color--custom-500) !important;
	font-weight: 600;
}
/*** FOOTER ***/

/*** SECTIONS ***/
.icon_circle{
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--custom-500);
	display: flex;
	align-items: center;
	justify-content: center;
}
.download_box_content{
	width: calc(100% - 90px);
}

@media (max-width: 992px) {
	.is-style-section_title {
		font-size: 30px;
	}
	h3.is-style-section_title {
		font-size: 25px;
	}
	.services_grid{
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	.services_grid .wp-block-heading{
		font-size: 16px;
	}
	#footer{
		padding:0 15px;
	}
}
