/* --------- Contact Form CSS Start -------- */

/* Spacing for section title inside contact details */
.contact-details > .sec-title {
margin-bottom: 60px !important;
}

/* Center align form header */
.form-header{
text-align:center;
}

/* Remove top spacing for subtitle text in right column */
.inner-column.right-column .sec-title .text{
margin-top:0 !important;
}

/* Limit form-left image width */
.form-left-image-container{
max-width:90%;
}

/* Gray boxed section styling */
.form-section-bg-gray-section{
padding:50px;
margin-bottom:50px;
box-shadow: var(--cpc-box-shadow);
}

/* Wrapper box shadow */
.contact-details-block {
box-shadow: var(--cpc-box-shadow);
}

/* Clock icon size fix */
.contact-details-block .icon .fa-clock{
font-size:26px !important;
}

/* Utility flexbox alignment */
.flex-box{
display:flex;
align-items:center;
}

/* Only remove spacing for the left column of THIS page */


/* --------- Tablet Breakpoint (Below 991px) -------- */
@media (max-width: 991px){

/* Right column alignment fix on mobile/tablet */
.contact-details .content-column .inner-column.right-column{
margin-left:0 !important;
}

/* Adjust padding for pl-0-below-tab class */
.pl-0-below-tab .col-lg-6, .pl-0-below-tab.row, .pl-0-below-tab .col-lg-12{
padding-left:6px !important;
padding-right:0 !important;
}

/* Force full width for right column */
.contact-details .content-column .inner-column.right-column{
min-width:100% !important;
margin-left:0 !important;
}
}


/* --------- Tablet/Mobile Heading Spacing -------- */
@media (max-width: 768px){
.sec-title .text{
margin-bottom:20px !important;
}
}


/* --------- Small Mobile (Below 540px) -------- */
@media (max-width: 540px){
.consent-box{
align-items:baseline !important;
}

/* Align form header left on mobile */
.form-header{
text-align:left !important;
}

/* Reset left margin for headings */
.sec-title h2.title,
.sec-title .sub-title{
margin-left:0 !important;
}
}


/***
====================================================================
Contact Section Main Styling
====================================================================
***/

/* Contact details main card */
.contact-details-block {
background-color: var(--light-gray);
border-radius: 20px !important;
padding: 65px 20px;
-webkit-transition: all 500ms ease;
transition: all 500ms ease;
text-align: center;
}

/* Inner content max width */
.contact-details-block .inner-box {
max-width: 260px;
margin: 0 auto;
}

/* Icon wrapper with animation */
.contact-details-block .icon {
margin-bottom: 20px;
-webkit-transition: all 700ms ease;
transition: all 700ms ease;
height:60px;
}

/* Icon animation on hover */
.contact-details-block .icon svg,
.contact-details-block .icon i {
-webkit-transition: all 300ms ease;
transition: all 300ms ease;
}

.contact-details-block .icon svg path,
.contact-details-block .icon i path {
-webkit-transition: all 300ms ease;
transition: all 300ms ease;
}

/* Title styling */
.contact-details-block .title {
-webkit-transition: all 300ms ease;
transition: all 300ms ease;
margin-bottom: 20px;
text-transform: capitalize;
font-size:var(--section-sub-heading);
}

/* Description text */
.contact-details-block .text {
margin-bottom: 0;
color: var(--text-color2);
font-weight: 400;
-webkit-transition: all 300ms ease;
transition: all 300ms ease;
line-height: 28px;
font-size: var(--paragraph-font-size);
}

/* Hover: gradient background */
.contact-details-block:hover {
background: var(--cpc-gradient);
}

/* Hover: icon rotation */
.contact-details-block:hover .icon {
-webkit-transform: rotateY(360deg);
transform: rotateY(360deg);
}

/* Hover icon color */
.contact-details-block:hover .icon svg,
.contact-details-block:hover .icon i {
color: var(--theme-color-white);
}

/* Hover fill color update */
.contact-details-block:hover .icon svg path,
.contact-details-block:hover .icon i path {
fill: var(--theme-color-white);
}

/* Overflow handling */
.contact-six-aera {
overflow: hidden;
}


/* --------- Contact Banner Section -------- */
.contact-six__wrp {
position: relative;
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
padding: 130px 100px;
margin-right: -20px;
}

/* Responsive padding */
@media (max-width: 1199.98px) {
.contact-six__wrp {
padding: 60px 30px;
}
}

/* Overlay */
.contact-six__wrp:before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: "";
background-color: rgba(6, 50, 50, 0.8);
}

/* Banner image */
.contact-six__image {
position: relative;
z-index: 1;
height: 100%;
margin-left: 20px;
}

.contact-six__image img {
width: 100%;
height: 100%;
object-fit: cover;
}

/* Circular action button */
.contact-six__image .circle-btn {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 200px;
height: 200px;
line-height: 200px;
text-align: center;
border-radius: 50%;
transition: all 700ms ease;
backdrop-filter: blur(20px);
background-color: rgba(255, 255, 255, 0.2);
padding-top: 70px;
}

/* Mobile padding adjust */
@media (max-width: 767.98px) {
.contact-six__image .circle-btn {
padding-top: 40px;
}
}

/* Button text + arrow */
.contact-six__image .circle-btn span {
display: block;
color: var(--theme-color-white);
font-size: 16px;
line-height: 24px;
font-weight: 500;
}

.contact-six__image .circle-btn span i {
transform: rotate(-45deg);
transition: all 500ms ease;
}

.contact-six__image .circle-btn:hover span i {
transform: rotate(0);
}


/* --------- Section Header & Layout -------- */
.contact-six__item .section-header {
max-width: 860px;
}

.contact-six__item .section-header .title {
font-size: 80px;
line-height: 90px;
font-weight: 600;
}

/* Mobile title size */
@media (max-width: 767.98px) {
.contact-six__item .section-header .title {
font-size: 30px;
line-height: 40px;
}
}

.contact-six__item .section-header .text {
font-size: 16px;
}

/* Info blocks container */
.contact-six__item .wrp {
max-width: 640px;
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 80px;
padding-top: 60px;
margin-top: 60px;
border-top: 1px solid rgba(255, 255, 255, 0.2);
}

/* Mobile gap fix */
@media (max-width: 767.98px) {
.contact-six__item .wrp {
gap: 20px;
}
}


/* --------- Contact Details Form Area -------- */

.sec-title .text{
margin-top: 0px !important;
}

.contact-details {
overflow: hidden;
}

/* Map iframe dimensions */
.contact-details .content-column .inner-column .google-map iframe {
width: 100%;
height: 350px;
}


/* Form field wrapper */
#contact-form-container .type-field {
position: relative;
z-index: 1;
margin-bottom: 28px;
}

/* Dropdown text color */
#contact-form-container .type-field select{
color:rgba(92, 92, 91, 0.8) !important;
}

/* Input and select styling */
#contact-form-container .type-field input,
#contact-form-container .type-field select{
padding-bottom: 15px;
padding-left: 35px;
width: 100%;
border-bottom: 1px solid rgba(92, 92, 91, 0.3);
background:transparent !important;
}

/* Textarea styling */
#contact-form-container .type-field textarea {
padding-bottom: 15px;
padding-left: 35px;
width: 100%;
border-bottom: 1px solid rgba(92, 92, 91, 0.3);
height: 130px;
}

/* Form icon inside inputs */
#contact-form-container .type-field i {
position: absolute;
top: 0;
left: 0;
}


/* Right column form wrapper */
.contact-details .content-column .inner-column.right-column {
max-width: 590px;
margin-left: auto;
}

.contact-details .content-column .inner-column.right-column .sec-title {
margin-bottom: 55px !important;
}


/* Override text color on hover */
.contact-details-block:hover .title,
.contact-details-block .text,
.contact-details-block:hover .icon i{
color:var(--navy-blue) !important;
}

/* Default text weight */
.contact-details-block .text{
font-weight:400 !important;
}

/* Icon base color */
.contact-details-block .icon svg, .contact-details-block .icon i{
color:var(--navy-blue) !important;
}

/* Form button spacing */
#contact_form .theme-btn.btn-style-one{
margin-top: 48px !important;
}

/* Title font size override */
.contact-details-block .title{
font-size:var(--section-sub-heading) !important;
}


/* --------- Tablet Adjustments -------- */
@media (max-width: 991px) {
.contact-details .content-column .inner-column.right-column{
margin-left:0 !important;
}

.form-left-image-container{
min-width: 100% !important;
}
}

/* Consent box alignment tweaks */
@media (max-width: 1051px){
.consent-box{
align-items:baseline !important;
}
}

/* --------- Small Mobile (Below 491px) -------- */
@media (max-width: 491px){
.sec-title .sub-title,
.sec-title h2{
text-align:left;
margin-left:20px;
padding-right:10px !important;
}

.sec-title h2.title{
margin-left:30px !important;
}

.form-section-bg-gray-section .sec-title h2.title{
margin-left:0 !important;
}

.sec-title .sub-title{
line-height:normal !important;
}
}


/* --------- Very Small Mobile (Below 360px) -------- */
@media (max-width: 360px) {

/* Smaller input font size */
#contact-form-container .type-field input,
#contact-form-container .type-field select,
#contact-form-container .type-field textarea {
font-size: 14px;
padding-left: 28px;
}

/* Icon alignment */
#contact-form-container .type-field i {
top: 11.5px;
}

/* Adjust top padding */
#contact-form-container .type-field input,
#contact-form-container .type-field select,
#contact-form-container .type-field textarea {
padding-top: 14px;
}
}