
   /* Section container */
    .contact-section {
      padding: 4rem 0rem;
    }

    /* Main container with max-width */
    .container {
      max-width: 1280px;
      margin: 0 auto;
      padding: 0 1rem;
    }

    /* Grid layout */
    .grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1rem;
    }

    @media (min-width: 1024px) {
      .grid {
        grid-template-columns: 1fr 1fr;
      }
    }

    /* Left section: Contact Info */
  .contact-info {
    position: relative;
    /* margin-bottom: 2rem; */
}

    .contact-info img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 1rem;
      background-color: #4f46e5; /* Indigo-700 */
      mix-blend-mode: multiply;
    }

    @media (min-width: 1024px) {
      .contact-info img {
        border-radius: 1rem 0 0 1rem;
      }
    }

    .contact-info h1 {
      position: absolute;
      top: 2rem;
      left: 1.25rem;
      color: white;
      font-size: 1.875rem;
      font-weight: bold;
    }

    @media (min-width: 640px) {
      .contact-info h1 {
        top: 2.75rem;
        left: 2.75rem;
        font-size: 2.25rem;
      }
    }

    .contact-details {
      position: absolute;
      bottom: 0;
      width: 100%;
      padding: 1.25rem;
    }

    @media (min-width: 640px) {
      .contact-details {
        padding: 2.75rem;
      }
    }

  .contact-card {
    margin-bottom: 20px;
    margin-top: 25px;
    background-color: white;
    border-radius: 0.5rem;
    padding: 1.5rem;
}

    .contact-card h3 {
      display: flex;
      align-items: center;
      font-size: 1rem;
      font-weight: 600;
      margin-bottom: 1rem;
    }

    .contact-card svg {
      width: 1.25rem;
      height: 1.25rem;
      margin-right: 0.5rem;
    }

    .contact-card a,
    .contact-card div {
      display: flex;
      align-items: center;
      margin-bottom: 1rem;
      color: #1f2937;
      text-decoration: none;
      font-size: 1rem;
    }

    .contact-card a:last-child,
    .contact-card div:last-child {
      margin-bottom: 0;
    }

    .contact-card svg.icon-large {
      width: 1.5rem;
      height: 1.5rem;
      margin-right: 0.75rem;
    }

    /* Right section: Contact Form */
    .contact-form {
      background-color: #f9fafb; /* Gray-50 */
      padding: 1.25rem;
      border-radius: 1rem;
    }

    @media (min-width: 640px) {
         .contact-details {
        margin-bottom: 45px;
        padding: 2.75rem;
    }
    }

    @media (min-width: 1024px) {
      .contact-form {
        padding: 2.75rem;
        border-radius: 0 1rem 1rem 0;
      }
    }

    .contact-form{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:10px;
    padding:35px;
    box-shadow:0 5px 20px rgba(0,0,0,.05);
}

  .contact-form h2 {
    color:#2c466b;
    font-size:28px;
    font-weight:700;
    margin-bottom:25px;
    text-align:center;
}

    @media (min-width: 640px) {
      .contact-form h2 {
        font-size: 1.875rem;
      }
    }

    @media (min-width: 1024px) {
      .contact-form h2 {
        font-size: 2.25rem;
      }
    }

    .contact-form form {
      display: flex;
      flex-direction: column;
    }

/*==================================
    INPUTS
==================================*/

.contact-form input,
.contact-form textarea,
.contact-form select{
    width:100%;
    height:50px;
    border:1px solid #d1d5db;
    border-radius:8px;
    padding:0 15px;
    font-size:15px;
    margin-bottom:18px;
    transition:.3s;
    outline:none;
    background:#fff;
}

.contact-form textarea{
    height:130px;
    padding:15px;
    resize:none;
}

.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus{
    border-color:#2c466b;
    box-shadow:0 0 0 3px rgba(44,70,107,.12);
}

    .contact-form input::placeholder,
    .contact-form textarea::placeholder {
      color: #9ca3af; /* Gray-400 */
    }

.file-upload{
    border:2px dashed #cbd5e1;
    border-radius:8px;
    padding:15px;
    margin-bottom:20px;
    transition:.3s;
    cursor:pointer;
}

.file-upload:hover{
    border-color:#2c466b;
    background:#f8fbff;
}

.file-upload label{
    display:flex;
    align-items:center;
    gap:10px;
    cursor:pointer;
    margin:0;
    width:100%;
}

.file-upload svg{
    width:22px;
    height:22px;
    color:#2c466b;
}

.file-upload input{
    display:none;
}

    .contact-form .file-upload {
    display: flex;
    align-items: center;
    height: 3rem;
    border: 1px solid #d1d5db;
    border-radius: 7px;
    padding: 0 1rem;
    margin-bottom: 1.5rem;
    cursor: pointer;
    }

    .contact-form .file-upload svg {
      width: 1.25rem;
      height: 1.25rem;
      margin-right: 0.5rem;
      color: #9ca3af;
    }

    .contact-form .file-upload span {
      font-size: 1rem;
      color: #9ca3af;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .contact-form .file-upload input {
      display: none;
    }

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

.contact-form button{
    width:100%;
    height:50px;
    border:none;
    border-radius:8px;
    background:#2c466b;
    color:#fff;
    font-size:16px;
    font-weight:600;
    cursor:pointer;
    transition:.3s;
}

.contact-form button:hover{
    background:#203754;
}

/*==================================
    RESPONSIVE
==================================*/

@media(max-width:768px){

    .contact-form{
        padding:25px;
    }

    .contact-form h2{
        font-size:24px;
    }

}

    /* Screen reader only */
    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      border: 0;
    }
/* contactform.css */
.responsive-map-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.responsive-map-container iframe,
.responsive-map-container object,
.responsive-map-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*===== CLASS CSS =====*/


.section-title, .section-subtitle {
  text-align: center;
}

.section-title {
  font-size: var(--h1-font-size);
  color: var(--first-color);
  margin-bottom: var(--mb-3);
}

.section-subtitle {
  display: block;
  font-size: var(--smaller-font-size);
  font-weight: var(--font-semi-bold);
}

/*===== LAYOUT =====*/
.bd-container {
  max-width: 1024px;
  width: calc(100% - 2rem);
  margin-left: var(--mb-2);
  margin-right: var(--mb-2);
}

.bd-grid {
  display: grid;
  gap: 1.5rem;
}

/*===== BUTTON =====*/
.button {
  display: inline-block;
  background-color: var(--first-color);
  color: var(--first-color-lighten);
  padding: .75rem 1rem;
  border-radius: .25rem;
  transition: .3s;
}

.button:hover {
  background-color: var(--first-color-dark);
}

/*===== CONTACT ME =====*/
.contact__container {
  row-gap: 2.5rem;
}

.contact__content {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.contact__box {
  background-color: #fff;
  border-radius: .5rem;
  padding: 1.5rem;
  text-align: center;
  box-shadow: 0 4px 6px rgba(174, 190, 205, .3);
}

.contact__icon, .contact__title {
  color: var(--first-color);
}

.contact__icon {
  font-size: 2rem;
}

.contact__title {
  font-size: var(--h3-font-size);
  margin: var(--mb-1) 0;
}

.contact__social {
  color: var(--first-color-light);
  font-size: 1.25rem;
  margin: 0 var(--mb-1);
}

.contact__box:hover {
  box-shadow: 0 6px 8px rgba(174, 190, 205, .4);
}

.contact__inputs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 1rem;
}

.contact__input, .contact__button {
  outline: none;
  font-family: var(--body-font);
  font-size: var(--normal-font-size);
}

.contact__input {
  width: 100%;
  padding: 1rem;
  border: 2px solid var(--first-color-light);
  color: var(--first-color);
  border-radius: .5rem;
  margin-bottom: var(--mb-1);
}

.contact::placeholder {
  color: var(--first-color-light);
  font-family: var(--body-font);
  font-weight: var(--font-semi-bold);
}

.contact__button {
  cursor: pointer;
  border: none;
}

/*===== MEDIA QUERIES =====*/
@media screen and (min-width: 576px) {
  .contact__form {
    width: 450px;
    justify-self: center;
  }
}

@media screen and (min-width: 1024px) {
  .bd-container {
    margin-left: auto;
    margin-right: auto;
  }
}

a.btn-common.mt-75.contact-main-immg {
    border-color: #2c466b;
    background-color: #38b6ff;
    color: #fff;
}
a.btn-common.mt-75.contact-main-immg:hover {
    border-color: #3ab5fc;
    background-color: #2c456c;
    color: #38b6ff;
}

.chat-icon {
    font-size: 20px;
}
strong.contact-us {
    font-weight: 600;
    color: #fff;
    font-weight: 500px;
    font-size: 65px;
}
.error-msg.text-center.box-shaddow {
    border-radius: 50px;
    padding: 30px;
    opacity: 0.6;
    color: #fffbff;
    background-color: black;
}
h1.main-title-conactpage {
    color: #38b6ff;
}

a.btn-common.mt-75.contact-main-immg {
    border-radius: 20px;
    border-color: #2c466b;
    background-color: #38b6ff;
    color: #fff;
}

@media (max-width: 768px) {
     .error-msg.text-center.box-shaddow {
        width: 287px;
        border-radius: 50px;
        padding: 30px;
        opacity: 0.6;
        color: #fffbff;
        background-color: black;
    }
    strong.contact-us {
    font-weight: 600;
    color: #fff;
    font-weight: 500px;
    font-size: 38px;
}
    h1.main-title-conactpage {
        font-size: 36px;
        color: #38b6ff;
    }
        .contact-info img {
        width: 100%;
        height: 837px;
        object-fit: cover;
        border-radius: 1rem;
        background-color: #4f46e5;
        mix-blend-mode: multiply;
    }
.contact-info {
    /* width: 258px; */
    position: relative;
    /* margin-bottom: 2rem; */
}
.contact-details {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0.25rem;
}
.contact-card a, .contact-card div {
    display: flex
;
    align-items: center;
    margin-bottom: 1rem;
    color: #1f2937;
    text-decoration: none;
    font-size: 1rem;
    flex-direction: column;
}
    .contact-form {
        width: 318px;
        background-color: #f9fafb;
        padding: 1.25rem;
        border-radius: 1rem;
    }
.contact__container {
    padding-left: 39px;
    row-gap: 2.5rem;
}

}
 .g-recaptcha {
        transform: scale(1);
        transform-origin: 0 0;
    }

    @media (max-width: 400px) {
        .g-recaptcha {
            transform: scale(0.85);
        }
    }

    @media (max-width: 320px) {
        .g-recaptcha {
            transform: scale(0.75);
        }
    }
