main{
	position: relative;
	overflow: hidden;
}

.contact_section{
	display: flex;
	align-items: stretch;
}

.contact_column{
	flex: 1; 
	background-size: cover;
	padding: 6%;
	padding-top: 48px;
	padding-bottom: 88px;
}

.contact_column.left{
	width: 43%;
	background-color: #EBF7FC;
}

.contact_column.right{
	width: 33%;
	background-size: cover;
}

.contact_section h1 {
    color: #FFF;
    font-family:  "Space Grotesk",sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 56px;
    letter-spacing: -1px;
    max-width: 100%;
}


.contact_section h1 strong{
	font-size: 60px;
	line-height: 68px;
}

.contact_section p{
	color: #FFF;
    font-family: "Hanken Grotesk",sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: 0;
}

.wpcf7{
	margin-top: 40px;
}

.form_row{
	display: flex;
	flex-direction: column;
}

.form_row p {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 100%;
}

.cf7-row.form_row br {
    display: none;
}

.cf7-row.form_row{gap:0;}

.form_row label {
	color: #000;
	font-family: Blinker;
	font-size: 14px;
	font-weight: 400;
	line-height: 24px; 
    display: flex;
    flex-direction: column;
}

.form_row label:first-child {
    margin-right: 0;
}

.form_row .wpcf7-form-control-wrap {
    position: relative;
    width: 100%;
}

.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"] {
    background-color: #fff;
    color: #142a3e;
    width: 100%;
    max-width: 100%;
    height: 40px;
    font-size: 20px;
    padding: 5px 0;
    padding-left: 15px;
    border-radius: 4px;
    border: 1px solid var(--Blinker-d-4-b-slate-500, #99D7F2);
    margin-top: 8px;
    margin-bottom: 20px;
    outline: none;
}

.wpcf7-not-valid{
	margin-bottom: 0px !important;
}

.wpcf7-not-valid-tip{
	margin-bottom: 15px;
}

.wpcf7 ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
 	color: #59656D;
	font-family: Blinker;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px; 
}

.wpcf7::-moz-placeholder { /* Firefox 19+ */
  	color: #59656D;
	font-family: Blinker;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px; 
}

.wpcf7:-ms-input-placeholder { /* IE 10+ */
  	color: #59656D;
	font-family: Blinker;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;  
}

.wpcf7:-moz-placeholder { /* Firefox 18- */
	color: #59656D;
	font-family: Blinker;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;  
}

.contact_method{
	display: flex;
	flex-direction: column;
}

.contact_method .wpcf7-radio .wpcf7-list-item{
	margin-top: 8px;
}

.contact_method .wpcf7-radio .wpcf7-list-item {
    background-image: url('../images/form-radio-blue.png');
    background-repeat: no-repeat;
    background-size: 32px 32px;
}

.contact_method .wpcf7-radio .wpcf7-list-item.active {
    background-image: url('../images/form-radio-checked2.svg');
}

.contact_method .wpcf7-radio .wpcf7-list-item label {
    display: flex;
    align-items: center;
    flex-direction: row;
}

.contact_method .wpcf7-radio .wpcf7-list-item label:hover{
    cursor: pointer;
}

.contact_method .wpcf7-radio .wpcf7-list-item input[type="radio" i] {
    width: 32px;
    height: 32px;
    margin-right: 8px;
    margin-left: 0;
    margin-top: 0;
    visibility: hidden;
}

.contact_method input:checked {
   width: 62px;
   height: 62px;
}

.contact_method .wpcf7-radio .wpcf7-list-item input[type="radio" i]:hover{
	cursor: pointer;
}

.form_container .wpcf7-form p.contact_method {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.contact_method .wpcf7-radio .wpcf7-list-item{
    margin-left: 0;
    margin-right: 32px;
}

.form_row.textarea{
	width: 100%;
	max-width: 100%;
	margin-top: 32px;
}

.form_row.textarea label{
	width: 100%;
	max-width: 100%;
}

.form_row.textarea textarea {
    width: 100%;
    max-width: 100%;
    height: 168px;
    border: 1px solid #142A3E;
    margin-top: 20px;
    margin-bottom: 10px;
}

.form_row.checkbox p {
    align-items: center;
    flex-direction: row;
}

.form_row.checkbox .wpcf7-form-control-wrap{
	width: auto;
}

.form_row.checkbox .wpcf7-form-control.wpcf7-checkbox{
	display: flex;
}

.form_row.checkbox .wpcf7-not-valid-tip{
	position: absolute;
	min-width: 300px;
}

.form_row.checkbox label{
	flex-direction: row;
	color: #000;
	font-family: Blinker;
	font-size: 14px;
	font-weight: 400;
	line-height: 24px; 
	margin-right: 10px;
}

.form_row.checkbox .wpcf7-list-item {
    margin-left: 0;
}

.form_row.checkbox .wpcf7-list-item-label{
	display: none;
}

.form_row.checkbox input[type="checkbox" i] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    margin: 0;
}

.form_row.checkbox input[type="checkbox" i]:hover{
	cursor: pointer;
}

.form_row.checkbox a {
    color: #000;
	font-family: Blinker;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	text-decoration-line: underline;
}

.form_row.checkbox a:hover{
	text-decoration: underline;
}

.form_row .wpcf7-submit {
    width: 502px;
    max-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #FBAD26;
    color: #21282E;
    font-family: Blinker;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    padding: 16px 24px;
    border: 0 none;
    border-radius: 4px;
    margin-top: 32px;
}

.form_row .wpcf7-submit:hover{
	background-color: #dedeff;
	color: #0600EB;
	cursor: pointer;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	    border-color: red;
}

.asterisk{
	display: inline;
	color: red;
	font-size: 25px;
	position: relative;
	left: 3px;
	top: 5px;
}


/* Address Contact Form Only */
.address_contact_form.only .address_items {
    margin-top: 0;
}

.address_contact_form.only .address_desc{
	width: 100%;
	text-align: left;
}

.address_contact_form.only .address_desc p {
    width: 100%;
    max-width: 100%;
    color: #07072B;
}

.address_contact_form.only .wpcf7{
	width: 100%;
}

.address_contact_form.only .form_row label{
	width: 100%;
}

.address_contact_form.only .wpcf7 input[type="text"], 
.address_contact_form.only .wpcf7 input[type="email"]{
	width: 100%;
	max-width: 100%;
}

.address_contact_form.only .form_row.textarea label {
    margin-right: 0;
}


.page-template-newsletter .contact_section h1 {
    color: var(--Tertiary-Dark-Blue-500, #3E4883);
    font-family: Blinker;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 54px;
    letter-spacing: -0.96px;
    width: 100%;
    max-width: 100%;
}

#sib_signup_form_2{
	margin-top: 25px;
}

#sib_signup_form_2 .form_input label {
    color: #21282E;
    font-family: Blinker;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 5px;
}

#sib_signup_form_2 .form_input {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
}

.sib_signup_form input[type="text"], 
.sib_signup_form input[type="email"]{
	width: 100%;
}

.accept_subscription {
    margin-top: 20px;
}




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

	.contact_section {
	    display: flex;
	    flex-direction: column-reverse;
	}

	.contact_column.right {
	    min-height: 250px;
	}

	.contact_column.left, .contact_column.right {
	    width: 100%;
	    padding: 5%;
	    max-width: 90%;
	}

	.contact_column.left{
		padding-bottom: 40px;
	}

	.contact_column.right{
		height: 40vh;
	}

	.wpcf7 {
    	margin-top: 30px;
	}

	.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"] {
		padding: 0;
		padding-left: 12px;
		max-width: calc(100% - 12px);
	}

	.form_row.textarea {
	    margin-top: 20px;
	}

	.form_row .wpcf7-submit {
	    width: 100%;
	}

	.accept_subscription{
		margin-bottom: 20px;
	}

}

/* --- Refined Select Dropdown Style --- */
.wpcf7 select,
.wpcf7 .wpcf7-select {
    background-color: #fff;
    color: #59656D;
	font-family: Blinker;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px; 
    width: 100%;
    max-width: 100%;
    height: 48px; /* Slightly taller for better alignment */
    font-size: 16px; /* Match placeholder font size */
    padding: 10px 40px 10px 15px; /* Balanced padding */
    border-radius: 4px;
    border: 1px solid var(--Blinker-d-4-b-slate-500, #99D7F2);
    margin-top: 8px;
    margin-bottom: 20px;
    outline: none;

    /* Remove browser default arrow and add custom one */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%2359656D" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>');
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 20px 20px;
}

/* Hover & focus for accessibility */
.wpcf7 select:hover,
.wpcf7 .wpcf7-select:hover {
    border-color: #142A3E;
}

.wpcf7 select:focus,
.wpcf7 .wpcf7-select:focus {
    border-color: #142A3E;
    box-shadow: 0 0 0 2px rgba(20, 42, 62, 0.08);
}

/* Placeholder/blank styling */
.wpcf7 select:required:invalid {
    color: #59656D;
}

.wpcf7 select option {
    color: #142A3E;
    font-size: 16px;
}

.wpcf7 select option[value=""] {
    color: #59656D;
}

.contact_section .form_row.checkbox{
    align-items: center;
    flex-direction: row;
}

.contact_section .form_row.checkbox p {
    max-width: fit-content;
    font-size: 16px;
    line-height: 20px;
    margin-top: 10px;
    margin-bottom: 16px;
}

.contact_section .form_row.textarea{
    margin-top:16px;
}

p.form_row.textarea br {
    display: none;
}

@media only screen and (max-width: 767px) {
    .wpcf7 select,
    .wpcf7 .wpcf7-select {
        height: 46px;
        font-size: 15px;
        padding: 8px 36px 8px 12px;
        max-width: calc(100% - 12px);
    }
}
