/*==================================================
CONTACT PAGE
PART 4.1
Hero + Intro + Contact Information
==================================================*/

:root{

    --primary:#0A2342;
    --secondary:#008C95;
    --accent:#00AEEF;
    --success:#00B67A;
    --white:#ffffff;
    --light:#f6f8fa;
    --border:#e6eaf0;
    --text:#222;
    --muted:#666;
    --radius:18px;
    --shadow:0 18px 45px rgba(0,0,0,.08);

}

/*==================================
Hero
==================================*/

.contact-hero{

    position:relative;
    overflow:hidden;
    padding:140px 0 110px;
    background:
    linear-gradient(rgba(10,35,66,.88),rgba(10,35,66,.88)),
    url("images/get-in-touch-banner.png")
    center/cover no-repeat;

    color:#fff;

}

.contact-hero::before{

    content:"";
    position:absolute;
    inset:0;

    background:

    radial-gradient(circle at top right,
    rgba(0,174,239,.18),
    transparent 45%);

}

.contact-hero .container{

    position:relative;
    z-index:2;

}

.breadcrumb{

    display:flex;
    gap:12px;
    align-items:center;
    margin-bottom:30px;
    font-size:15px;

}

.breadcrumb a{

    color:#fff;
    text-decoration:none;

}

.breadcrumb span{

    opacity:.8;

}

.contact-hero-content{

    max-width:760px;

}

.page-tag{

    display:inline-block;

    padding:8px 18px;

    border-radius:40px;

    background:rgba(255,255,255,.12);

    color:#fff;

    font-size:13px;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:22px;

}

.contact-hero h1{

    font-size:58px;

    line-height:1.1;

    margin-bottom:24px;

    font-weight:700;

}

.contact-hero p{

    font-size:19px;

    line-height:1.9;

    opacity:.95;

    margin-bottom:40px;

}

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.btn-primary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:15px 34px;

    border-radius:50px;

    background:var(--accent);

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:.35s;

}

.btn-primary:hover{

    transform:translateY(-4px);

}

.btn-outline{

    display:inline-flex;

    align-items:center;

    gap:10px;

    justify-content:center;

    padding:15px 34px;

    border:2px solid rgba(255,255,255,.4);

    border-radius:50px;

    color:#fff;

    text-decoration:none;

    transition:.35s;

}

.btn-outline:hover{

    background:#fff;

    color:var(--primary);

}

/*==================================
Introduction
==================================*/

.contact-introduction{

    padding:110px 0;

    background:#fff;

}

.section-heading{

    text-align:center;

    max-width:850px;

    margin:auto auto 70px;

}

.section-tag{

    display:inline-block;

    padding:7px 18px;

    border-radius:40px;

    background:#eaf8fc;

    color:var(--accent);

    font-weight:600;

    font-size:13px;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:18px;

}

.section-heading h2{

    font-size:46px;

    margin-bottom:22px;

    color:var(--primary);

}

.section-heading p{

    color:var(--muted);

    font-size:18px;

    line-height:1.9;

}

.intro-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.intro-card{

    background:#fff;

    padding:45px 30px;

    border-radius:var(--radius);

    text-align:center;

    border:1px solid var(--border);

    transition:.35s;

    box-shadow:0 8px 25px rgba(0,0,0,.04);

}

.intro-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow);

}

.intro-card i{

    width:82px;

    height:82px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:auto auto 25px;

    border-radius:50%;

    background:#eef8ff;

    color:var(--accent);

    font-size:32px;

}

.intro-card h3{

    color:var(--primary);

    margin-bottom:16px;

    font-size:24px;

}

.intro-card p{

    color:var(--muted);

    line-height:1.8;

}

/*==================================
Contact Information
==================================*/

.contact-information{

    padding:110px 0;

    background:var(--light);

}

.contact-grid{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:45px;

}

.contact-card{

    background:#fff;

    border-radius:var(--radius);

    padding:35px;

    margin-bottom:28px;

    box-shadow:var(--shadow);

}

.card-title{

    display:flex;

    align-items:center;

    gap:16px;

    margin-bottom:30px;

}

.card-title i{

    width:58px;

    height:58px;

    border-radius:50%;

    background:#eef8ff;

    color:var(--accent);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

}

.card-title h3{

    color:var(--primary);

    font-size:28px;

}

.person-card{

    display:flex;

    gap:20px;

    align-items:flex-start;

    padding:22px 0;

    border-bottom:1px solid #ececec;

}

.person-card:last-child{

    border:none;

    padding-bottom:0;

}

.person-icon{

    width:60px;

    height:60px;

    border-radius:50%;

    background:#eef8ff;

    color:var(--accent);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

    flex-shrink:0;

}

.person-card h4{

    color:var(--primary);

    margin-bottom:6px;

    font-size:21px;

}

.person-card span{

    display:block;

    color:var(--muted);

    margin-bottom:10px;

}

.person-card a{

    color:var(--secondary);

    text-decoration:none;

    font-weight:600;

}

.email-list{

    list-style:none;

    padding:0;

    margin:0;

}

.email-list li{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 0;

    border-bottom:1px solid #ececec;

}

.email-list li:last-child{

    border:none;

}

.email-list strong{

    color:var(--primary);

}

.email-list a{

    color:var(--secondary);

    text-decoration:none;

}

/*==================================================
CONTACT PAGE
PART 4.2
Office + Form
==================================================*/

/*==================================
Office Cards
==================================*/

.office-card{

    background:#fff;
    padding:38px;
    border-radius:var(--radius);
    margin-bottom:28px;
    box-shadow:var(--shadow);
    transition:.35s;
    border:1px solid var(--border);

}

.office-card:hover{

    transform:translateY(-8px);

}

.office-header{

    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:24px;

}

.office-header i{

    width:62px;
    height:62px;
    border-radius:50%;
    background:#eef8ff;
    color:var(--accent);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;

}

.office-header h3{

    font-size:28px;
    color:var(--primary);

}

.office-card p{

    color:var(--muted);
    line-height:1.9;
    margin-bottom:28px;

}

.office-btn{

    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 28px;
    border-radius:50px;
    background:var(--primary);
    color:#fff;
    text-decoration:none;
    transition:.3s;

}

.office-btn:hover{

    background:var(--accent);

}

/*==================================
Quick Contact
==================================*/

.quick-contact{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;

}

.quick-contact div{

    background:#fff;
    padding:28px;
    border-radius:var(--radius);
    text-align:center;
    box-shadow:var(--shadow);

}

.quick-contact i{

    font-size:34px;
    color:var(--accent);
    margin-bottom:18px;

}

.quick-contact h4{

    color:var(--primary);
    margin-bottom:10px;

}

.quick-contact p{

    color:var(--muted);
    line-height:1.7;

}

/*==================================
Contact Form
==================================*/

.contact-form-section{

    padding:120px 0;
    background:#fff;

}

.form-layout{

    max-width:1000px;
    margin:auto;

}

.form-content{

    background:#fff;
    border-radius:var(--radius);
    padding:50px;
    box-shadow:var(--shadow);
    border:1px solid var(--border);

}

.form-row{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;

}

.form-group{

    margin-bottom:25px;

}

.form-group label{

    display:block;
    margin-bottom:10px;
    font-weight:600;
    color:var(--primary);

}

.form-group input,
.form-group select,
.form-group textarea{

    width:100%;
    padding:16px 18px;
    border:1px solid var(--border);
    border-radius:12px;
    font-size:16px;
    transition:.3s;
    background:#fff;
    font-family:inherit;

}

.form-group textarea{

    resize:vertical;
    min-height:180px;

}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{

    border-color:var(--accent);
    outline:none;
    box-shadow:0 0 0 4px rgba(0,174,239,.12);

}

.form-group input::placeholder,
.form-group textarea::placeholder{

    color:#999;

}

/*==================================
File Upload
==================================*/

input[type=file]{

    padding:14px;
    cursor:pointer;

}

/*==================================
Submit Button
==================================*/

.submit-btn{

    width:100%;
    border:none;
    padding:18px;
    background:var(--primary);
    color:#fff;
    border-radius:50px;
    font-size:17px;
    font-weight:600;
    cursor:pointer;
    transition:.35s;

}

.submit-btn:hover{

    background:var(--accent);
    transform:translateY(-3px);

}

/*==================================
Validation
==================================*/

.error{

    display:block;
    color:#e53935;
    font-size:13px;
    margin-top:6px;
    min-height:18px;

}

.success-border{

    border-color:#00B67A !important;

}

.error-border{

    border-color:#e53935 !important;

}
/*==================================================
CONTACT PAGE
PART 4.3
Map + FAQ + CTA + Responsive
==================================================*/

/*==================================
Google Map
==================================*/

.office-map{

    padding:120px 0;
    background:var(--light);

}

.map-wrapper{

    overflow:hidden;
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    border:1px solid var(--border);

}

.map-wrapper iframe{

    width:100%;
    height:500px;
    border:0;
    display:block;

}

/*==================================
FAQ
==================================*/

.faq-section{

    padding:120px 0;
    background:#fff;

}

.faq-grid{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;

}

.faq-card{

    background:#fff;
    padding:35px;
    border-radius:var(--radius);
    border:1px solid var(--border);
    box-shadow:var(--shadow);
    transition:.35s;

}

.faq-card:hover{

    transform:translateY(-8px);

}

.faq-card h3{

    color:var(--primary);
    margin-bottom:15px;
    font-size:24px;

}

.faq-card p{

    color:var(--muted);
    line-height:1.8;

}

/*==================================
CTA
==================================*/

.contact-cta{

    padding:120px 0;
    background:linear-gradient(135deg,var(--primary),#10365f);
    color:#fff;

}

.cta-content{

    max-width:900px;
    margin:auto;
    text-align:center;

}

.cta-content h2{

    font-size:48px;
    margin-bottom:20px;

}

.cta-content p{

    font-size:18px;
    line-height:1.9;
    opacity:.92;
    margin-bottom:40px;

}

.cta-buttons{

    display:flex;
    justify-content:center;
    gap:20px;
    flex-wrap:wrap;

}

.contact-cta .btn-primary{

    background:var(--accent);

}

.contact-cta .btn-outline{

    border:2px solid rgba(255,255,255,.4);

}

/*==================================
Animation
==================================*/

.intro-card,
.contact-card,
.office-card,
.faq-card,
.quick-contact div{

    transition:
    transform .35s ease,
    box-shadow .35s ease;

}

.intro-card:hover,
.contact-card:hover,
.office-card:hover,
.faq-card:hover,
.quick-contact div:hover{

    transform:translateY(-8px);
    box-shadow:0 22px 55px rgba(0,0,0,.12);

}

/*==================================
Responsive 1200px
==================================*/

@media (max-width:1200px){

    .contact-hero h1{

        font-size:48px;

    }

    .section-heading h2{

        font-size:40px;

    }

}

/*==================================
Responsive 992px
==================================*/

@media (max-width:992px){

    .intro-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .contact-grid{

        grid-template-columns:1fr;

    }

    .faq-grid{

        grid-template-columns:1fr;

    }

    .form-row{

        grid-template-columns:1fr;

    }

    .quick-contact{

        grid-template-columns:1fr;

    }

}

/*==================================
Responsive 768px
==================================*/

@media (max-width:768px){

    .contact-hero{

        padding:110px 0 80px;

    }

    .contact-hero h1{

        font-size:36px;

    }

    .contact-hero p{

        font-size:16px;

    }

    .section-heading{

        margin-bottom:50px;

    }

    .section-heading h2{

        font-size:32px;

    }

    .hero-buttons,
    .cta-buttons{

        flex-direction:column;

    }

    .hero-buttons a,
    .cta-buttons a{

        width:100%;

    }

    .map-wrapper iframe{

        height:380px;

    }

    .form-content{

        padding:30px;

    }

}

/*==================================
Responsive 576px
==================================*/

@media (max-width:576px){

    .intro-grid{

        grid-template-columns:1fr;

    }

    .contact-card,
    .office-card,
    .faq-card{

        padding:25px;

    }

    .page-tag,
    .section-tag{

        font-size:11px;
        letter-spacing:1px;

    }

    .contact-hero h1{

        font-size:30px;

    }

    .section-heading h2{

        font-size:28px;

    }

    .office-header{

        flex-direction:column;
        text-align:center;

    }

    .card-title{

        flex-direction:column;
        text-align:center;

    }

    .person-card{

        flex-direction:column;
        text-align:center;
        align-items:center;

    }

    .email-list li{

        flex-direction:column;
        gap:8px;
        text-align:center;

    }

    .cta-content h2{

        font-size:32px;

    }

    .cta-content p{

        font-size:16px;

    }

}

.contact-success-popup{

    position:fixed;
    inset:0;
    background:rgba(0,0,0,.55);
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:99999;

}

.popup-box{

    width:420px;
    max-width:92%;
    background:#fff;
    border-radius:18px;
    padding:40px;
    text-align:center;
    animation:popup .35s ease;

}

.popup-box i{

    font-size:70px;
    color:#00B67A;
    margin-bottom:20px;

}

.popup-box h3{

    color:#0A2342;
    margin-bottom:15px;

}

.popup-box p{

    color:#666;
    line-height:1.8;
    margin-bottom:25px;

}

.popup-box button{

    border:none;
    background:#0A2342;
    color:#fff;
    padding:14px 32px;
    border-radius:40px;
    cursor:pointer;

}

@keyframes popup{

    from{

        transform:scale(.8);
        opacity:0;

    }

    to{

        transform:scale(1);
        opacity:1;

    }

}

/*==================================================
  BIOINFRATECH - OFFICE CARDS
  FULL FINAL CSS
==================================================*/


/*==================================
  OFFICE CARD
==================================*/

.office-card{

    position:relative;

    min-height:420px;

    padding:38px;

    margin-bottom:28px;

    border-radius:var(--radius);

    overflow:hidden;

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    background-image:
        linear-gradient(
            180deg,
            rgba(10,35,66,.10) 0%,
            rgba(10,35,66,.30) 40%,
            rgba(10,35,66,.90) 100%
        ),
        url("images/office.png");

    background-size:cover;

    background-position:center;

    background-repeat:no-repeat;

    border:1px solid rgba(255,255,255,.25);

    box-shadow:
        0 18px 45px rgba(0,0,0,.10);

    transition:
        transform .35s ease,
        box-shadow .35s ease;

}


/*==================================
  OFFICE IMAGE HIDDEN
==================================*/

.office-card .office-image{

    display:none !important;

}


/*==================================
  OFFICE CARD HOVER
==================================*/

.office-card:hover{

    transform:translateY(-8px);

    box-shadow:
        0 25px 60px rgba(0,0,0,.18);

}


/*==================================
  OFFICE HEADER
==================================*/

.office-card .office-header{

    position:relative;

    z-index:5;

    display:flex;

    align-items:center;

    gap:14px;

    margin-bottom:20px;

}


/*==================================
  OFFICE ICON
==================================*/

.office-card .office-header i{

    width:52px;

    height:52px;

    min-width:52px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#ffffff !important;

    color:#00AEEF !important;

    font-size:20px;

    box-shadow:
        0 8px 20px rgba(0,0,0,.15);

}


/*==================================
  OFFICE TITLE
==================================*/

.office-card .office-header h3{

    margin:0;

    color:#ffffff !important;

    font-size:25px;

    line-height:1.25;

    font-weight:700;

    text-shadow:
        0 2px 8px rgba(0,0,0,.55);

}


/*==================================
  OFFICE ADDRESS
==================================*/

.office-card > p{

    position:relative;

    z-index:5;

    margin:0 0 25px;

    color:#ffffff !important;

    font-size:15px;

    line-height:1.75;

    text-shadow:
        0 2px 7px rgba(0,0,0,.60);

}


/*==================================
  OFFICE BUTTON
==================================*/

.office-card .office-btn{

    position:relative;

    z-index:5;

    align-self:flex-start;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    padding:13px 24px;

    border-radius:50px;

    background:#0A2342 !important;

    color:#ffffff !important;

    text-decoration:none;

    font-size:14px;

    font-weight:600;

    box-shadow:
        0 8px 20px rgba(0,0,0,.20);

    transition:
        background .3s ease,
        transform .3s ease,
        box-shadow .3s ease;

}


/*==================================
  BUTTON HOVER
==================================*/

.office-card .office-btn:hover{

    background:#00AEEF !important;

    color:#ffffff !important;

    transform:translateY(-3px);

    box-shadow:
        0 12px 28px rgba(0,174,239,.30);

}


/*==================================
  CORPORATE OFFICE
==================================*/

.contact-right .office-card:first-child{

    background-image:
        linear-gradient(
            180deg,
            rgba(10,35,66,.08) 0%,
            rgba(10,35,66,.30) 40%,
            rgba(10,35,66,.90) 100%
        ),
        url("images/office.png");

}


/*==================================
  PROJECT EXECUTION OFFICE
==================================*/

.contact-right .office-card:nth-child(2){

    background-image:
        linear-gradient(
            180deg,
            rgba(10,35,66,.08) 0%,
            rgba(10,35,66,.30) 40%,
            rgba(10,35,66,.90) 100%
        ),
        url("images/office.png");

}


/*==================================
  QUICK CONTACT
==================================*/

.quick-contact{

    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    gap:20px;

}


.quick-contact div{

    background:#ffffff;

    padding:28px;

    border-radius:var(--radius);

    text-align:center;

    box-shadow:var(--shadow);

    transition:
        transform .35s ease,
        box-shadow .35s ease;

}


.quick-contact div:hover{

    transform:translateY(-8px);

    box-shadow:
        0 22px 55px rgba(0,0,0,.12);

}


.quick-contact i{

    font-size:34px;

    color:var(--accent);

    margin-bottom:18px;

}


.quick-contact h4{

    color:var(--primary);

    margin-bottom:10px;

}


.quick-contact p{

    color:var(--muted);

    line-height:1.7;

}


/*==================================
  TABLET
==================================*/

@media (max-width:992px){

    .office-card{

        min-height:400px;

        padding:32px;

    }

    .office-card .office-header h3{

        font-size:23px;

    }

}


/*==================================
  MOBILE
==================================*/

@media (max-width:576px){

    .office-card{

        min-height:400px;

        padding:28px 25px;

        border-radius:16px;

        background-position:center;

    }


    .office-card .office-header{

        gap:12px;

        margin-bottom:18px;

    }


    .office-card .office-header i{

        width:48px;

        height:48px;

        min-width:48px;

        font-size:18px;

    }


    .office-card .office-header h3{

        font-size:21px;

    }


    .office-card > p{

        font-size:14px;

        line-height:1.7;

        margin-bottom:22px;

    }


    .office-card .office-btn{

        padding:12px 21px;

        font-size:13px;

    }


    .quick-contact{

        grid-template-columns:1fr;

        gap:15px;

    }


    .quick-contact div{

        padding:25px;

    }

}


/*==================================
  SMALL MOBILE
==================================*/

@media (max-width:400px){

    .office-card{

        min-height:390px;

        padding:24px 20px;

    }


    .office-card .office-header h3{

        font-size:19px;

    }


    .office-card > p{

        font-size:13px;

    }

}
/*==================================================
  CONTACT PAGE
  GLOBAL TYPOGRAPHY MATCH
==================================================*/

/* BODY / NORMAL TEXT */

.contact-page,
.contact-page p,
.contact-page a,
.contact-page span,
.contact-page li,
.contact-page label,
.contact-page input,
.contact-page select,
.contact-page textarea,
.contact-page button{

    font-family:'Inter',sans-serif;

}


/* ALL HEADINGS */

.contact-page h1,
.contact-page h2,
.contact-page h3,
.contact-page h4,
.contact-page h5,
.contact-page h6{

    font-family:'Montserrat',sans-serif;

}


/* OFFICE */

.office-card .office-header h3{

    font-family:'Montserrat',sans-serif;

}

.office-card p{

    font-family:'Inter',sans-serif;

}

.office-card .office-btn{

    font-family:'Inter',sans-serif;

}


/* CONTACT CARDS */

.contact-card h3,
.card-title h3{

    font-family:'Montserrat',sans-serif;

}

.person-card h4{

    font-family:'Montserrat',sans-serif;

}

.person-card span,
.person-card a{

    font-family:'Inter',sans-serif;

}


/* FORM */

.form-group label{

    font-family:'Inter',sans-serif;

}

.form-group input,
.form-group select,
.form-group textarea{

    font-family:'Inter',sans-serif;

}

.submit-btn{

    font-family:'Inter',sans-serif;

}


/* FAQ */

.faq-card h3{

    font-family:'Montserrat',sans-serif;

}

.faq-card p{

    font-family:'Inter',sans-serif;

}
/*==================================
  OFFICE ADDRESS - BETTER VISIBILITY
==================================*/

.office-card > p{

    position:relative;

    z-index:5;

    color:#ffffff !important;

    font-family:'Inter',sans-serif;

    font-size:17px !important;

    font-weight:500;

    line-height:1.85;

    margin:0 0 26px;

    max-width:320px;

    text-shadow:
        0 2px 5px rgba(0,0,0,.85),
        0 1px 12px rgba(0,0,0,.55);

}


/*==================================
  STRONGER DARK AREA BEHIND CONTENT
==================================*/

.office-card::after{

    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 25%,
            rgba(10,35,66,.15) 40%,
            rgba(10,35,66,.88) 100%
        );

    z-index:1;

    pointer-events:none;

}


/* Keep Content Above Overlay */

.office-card .office-header,
.office-card > p,
.office-card .office-btn{

    position:relative;

    z-index:5;

}


/*==================================
  MOBILE
==================================*/

@media(max-width:576px){

    .office-card > p{

        font-size:15px !important;

        line-height:1.8;

    }

}

/*==================================================
  SALES & BUSINESS ENQUIRY - PERSON PHOTOS
  FONT / CONTENT UNCHANGED
==================================================*/

/* Common person photo */

.contact-left .contact-card:first-child .person-icon {

    width: 60px;
    height: 60px;
    min-width: 60px;

    border-radius: 50%;

    overflow: hidden;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    border: 2px solid #ffffff;

    box-shadow:
        0 5px 16px rgba(10,35,66,.15);

}


/*----------------------------------
  GANESH BALGAR
----------------------------------*/

.contact-left .contact-card:first-child
.person-card:nth-of-type(2)
.person-icon {

    background-image:
        url("images/ganesh.jpg") !important;

}


/*----------------------------------
  PRASAD BAGDE
----------------------------------*/

.contact-left .contact-card:first-child
.person-card:nth-of-type(3)
.person-icon {

    background-image:
        url("images/prasad.jpg") !important;

}


/*----------------------------------
  DEVDUTTA DESHPANDE
----------------------------------*/

.contact-left .contact-card:first-child
.person-card:nth-of-type(4)
.person-icon {

    background-image:
        url("images/devdutt.jpg") !important;

}


/* Remove old user icon */

.contact-left .contact-card:first-child
.person-card .person-icon i {

    display: none !important;

}


/*----------------------------------
  HOVER
----------------------------------*/

.contact-left .contact-card:first-child
.person-card:hover .person-icon {

    transform: scale(1.06);

    box-shadow:
        0 8px 22px rgba(10,35,66,.20);

}


/*----------------------------------
  TABLET
----------------------------------*/

@media (max-width: 992px) {

    .contact-left .contact-card:first-child
    .person-icon {

        width: 56px;
        height: 56px;
        min-width: 56px;

    }

}


/*----------------------------------
  MOBILE
----------------------------------*/

@media (max-width: 576px) {

    .contact-left .contact-card:first-child
    .person-icon {

        width: 52px;
        height: 52px;
        min-width: 52px;

    }

}


/*----------------------------------
  SMALL MOBILE
----------------------------------*/

@media (max-width: 400px) {

    .contact-left .contact-card:first-child
    .person-icon {

        width: 48px;
        height: 48px;
        min-width: 48px;

    }

}

/*==================================================
  PROJECT ENQUIRY - PREMIUM FORM OUTLINE
==================================================*/

.contact-form-section{

    position:relative;

    padding:110px 0;

    background:
        linear-gradient(
            180deg,
            #f6f8fa 0%,
            #ffffff 100%
        );

}


/*----------------------------------
  FORM OUTER AREA
----------------------------------*/

.form-layout{

    position:relative;

    max-width:1050px;

    margin:0 auto;

}


/*----------------------------------
  MAIN FORM BOX
----------------------------------*/

.form-content{

    position:relative;

    padding:48px;

    background:#ffffff;

    border:1px solid #dfe7ee;

    border-radius:22px;

    box-shadow:
        0 20px 60px rgba(10,35,66,.10);

    overflow:hidden;

}


/* Premium top line */

.form-content::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:
        linear-gradient(
            90deg,
            #0A2342 0%,
            #008C95 50%,
            #00AEEF 100%
        );

}


/*----------------------------------
  FORM TITLE / HEADING
----------------------------------*/

.form-content .section-tag{

    margin-bottom:12px;

}


.form-content h2{

    margin-bottom:12px;

}


.form-content > p{

    max-width:720px;

    margin-bottom:35px;

    color:#667085;

    line-height:1.8;

}


/*----------------------------------
  FORM ROW
----------------------------------*/

.form-row{

    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:22px;

}


/*----------------------------------
  FORM GROUP
----------------------------------*/

.form-group{

    position:relative;

    margin-bottom:24px;

}


/*----------------------------------
  LABEL
----------------------------------*/

.form-group label{

    display:block;

    margin-bottom:9px;

    color:#0A2342;

    font-weight:600;

}


/* Required star */

.form-group label .required{

    color:#e53935;

}


/*----------------------------------
  INPUT / SELECT / TEXTAREA
----------------------------------*/

.form-group input,
.form-group select,
.form-group textarea{

    width:100%;

    min-height:52px;

    padding:14px 16px;

    background:#ffffff;

    border:1px solid #d6dee7;

    border-radius:11px;

    color:#222222;

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;

}


/* Textarea */

.form-group textarea{

    min-height:160px;

    resize:vertical;

}


/*----------------------------------
  INPUT HOVER
----------------------------------*/

.form-group input:hover,
.form-group select:hover,
.form-group textarea:hover{

    border-color:#aebdca;

}


/*----------------------------------
  INPUT FOCUS
----------------------------------*/

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{

    outline:none;

    border-color:#00AEEF;

    background:#ffffff;

    box-shadow:
        0 0 0 4px rgba(0,174,239,.10),
        0 5px 15px rgba(10,35,66,.04);

}


/*----------------------------------
  PLACEHOLDER
----------------------------------*/

.form-group input::placeholder,
.form-group textarea::placeholder{

    color:#98a2b3;

}


/*----------------------------------
  SELECT
----------------------------------*/

.form-group select{

    cursor:pointer;

}


/*----------------------------------
  FILE UPLOAD
----------------------------------*/

.form-group input[type="file"]{

    min-height:52px;

    padding:10px 12px;

    background:#f8fafc;

    border:1px dashed #b9c6d2;

    cursor:pointer;

}


.form-group input[type="file"]:hover{

    border-color:#00AEEF;

    background:#f2fbff;

}


/*----------------------------------
  SUBMIT BUTTON
----------------------------------*/

.submit-btn{

    width:100%;

    min-height:55px;

    margin-top:8px;

    border:0;

    border-radius:50px;

    background:
        linear-gradient(
            90deg,
            #0A2342,
            #008C95
        );

    color:#ffffff;

    font-weight:600;

    cursor:pointer;

    box-shadow:
        0 10px 25px rgba(10,35,66,.18);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        background .3s ease;

}


.submit-btn:hover{

    transform:translateY(-3px);

    background:
        linear-gradient(
            90deg,
            #008C95,
            #00AEEF
        );

    box-shadow:
        0 15px 30px rgba(0,174,239,.20);

}


/*----------------------------------
  ERROR MESSAGE
----------------------------------*/

.error{

    display:block;

    min-height:17px;

    margin-top:6px;

    color:#e53935;

    font-size:12px;

}


/*----------------------------------
  ERROR FIELD
----------------------------------*/

.form-group input.error-border,
.form-group select.error-border,
.form-group textarea.error-border{

    border-color:#e53935 !important;

    box-shadow:
        0 0 0 3px rgba(229,57,53,.08);

}


/*----------------------------------
  SUCCESS FIELD
----------------------------------*/

.form-group input.success-border,
.form-group select.success-border,
.form-group textarea.success-border{

    border-color:#00B67A !important;

    box-shadow:
        0 0 0 3px rgba(0,182,122,.08);

}


/*==================================================
  MOBILE
==================================================*/

@media(max-width:768px){

    .contact-form-section{

        padding:80px 0;

    }

    .form-content{

        padding:32px 25px;

        border-radius:18px;

    }

    .form-row{

        grid-template-columns:1fr;

        gap:0;

    }

}


/*==================================================
  SMALL MOBILE
==================================================*/

@media(max-width:576px){

    .form-content{

        padding:28px 20px;

    }

    .form-group input,
    .form-group select,
    .form-group textarea{

        min-height:50px;

        padding:13px 14px;

    }

    .form-group textarea{

        min-height:140px;

    }

    .submit-btn{

        min-height:52px;

    }

}
/* =========================================
   GOOGLE MAP BUTTON ICON
   ========================================= */

.office-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:9px !important;
}

.office-btn i{
    font-size:16px !important;
    color:#ffffff !important;
    flex-shrink:0;
}

.office-btn span{
    display:inline-block;
}

