.elementor-104 .elementor-element.elementor-element-4effe99 > .elementor-widget-container{margin:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-4effe99 *//* =========================
CONTACT PAGE
========================= */

.am-contact-page{
  position:relative;

  padding:220px 0 120px;

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

  overflow:hidden;
}

/* BG */

.am-contact-page__bg{
  position:absolute;
  inset:0;

  background:
  radial-gradient(
    circle at top left,
    rgba(18,70,216,.12),
    transparent 30%
  ),
  radial-gradient(
    circle at bottom right,
    rgba(239,122,77,.10),
    transparent 30%
  );
}

/* CONTAINER */

.am-contact-page__container{
  width:min(1380px,calc(100% - 40px));
  margin:auto;

  position:relative;
  z-index:2;
}

/* =========================
HERO
========================= */

.am-contact-page__hero{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:70px;

  align-items:flex-start;

  margin-bottom:90px;
}

/* =========================
CONTENT
========================= */

.am-contact-page__eyebrow{
  display:inline-flex;

  padding:12px 18px;

  border-radius:999px;

  background:#fff4ef;

  color:#ef7a4d;

  font-size:.84rem;
  font-weight:700;

  margin-bottom:28px;
}

.am-contact-page__title{
  margin:0 0 28px;

  color:#0f172a;

  font-size:clamp(3rem,6vw,6rem);
  line-height:.95;

  letter-spacing:-4px;

  font-weight:900;
}

.am-contact-page__text{
  margin:0;

  max-width:620px;

  color:#475569;

  font-size:1.08rem;
  line-height:2;
}

/* =========================
CARDS
========================= */

.am-contact-cards{
  display:flex;
  flex-direction:column;

  gap:18px;

  margin-top:46px;
}

.am-contact-card{
  display:flex;
  align-items:center;

  gap:20px;

  padding:24px;

  border-radius:28px;

  background:#fff;

  border:1px solid rgba(15,23,42,.05);

  box-shadow:
  0 20px 60px rgba(15,23,42,.05);

  text-decoration:none;

  transition:.35s ease;
}

.am-contact-card:hover{
  transform:translateY(-4px);
}

.am-contact-card__icon{
  min-width:62px;
  width:62px;
  height:62px;

  border-radius:20px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#fff4ef;

  color:#ef7a4d;
}

.am-contact-card__icon svg{
  width:24px;
  height:24px;
}

.am-contact-card__info strong{
  display:block;

  color:#0f172a;

  font-size:1rem;
  font-weight:800;

  margin-bottom:6px;
}

.am-contact-card__info span{
  color:#64748b;

  font-size:.95rem;
  line-height:1.7;
}

/* =========================
FORM
========================= */

.am-contact-page__form-wrap{
  position:sticky;
  top:140px;
}

.am-contact-form{
  padding:40px;

  border-radius:36px;

  background:#fff;

  border:1px solid rgba(15,23,42,.05);

  box-shadow:
  0 25px 70px rgba(15,23,42,.06);
}

.am-contact-form h2{
  margin:0 0 34px;

  color:#0f172a;

  font-size:2.2rem;
  line-height:1;

  letter-spacing:-2px;

  font-weight:900;
}

/* GRID */

.am-contact-form__grid{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:18px;
}

/* FIELD */

.am-contact-form__field{
  margin-bottom:20px;
}

.am-contact-form__field label{
  display:block;

  margin-bottom:12px;

  color:#0f172a;

  font-size:.92rem;
  font-weight:700;
}

/* INPUT */

.am-contact-form input,
.am-contact-form textarea{
  width:100%;

  border:none;

  padding:18px 20px;

  border-radius:18px;

  background:#f8fafc;

  color:#0f172a;

  font-size:.96rem;

  outline:none;

  transition:.3s ease;

  resize:none;

  font-family:inherit;
}

.am-contact-form input:focus,
.am-contact-form textarea:focus{
  background:#fff;

  box-shadow:
  0 0 0 2px rgba(239,122,77,.18);
}

/* BUTTON */

.am-contact-form__button{
  width:100%;
  height:60px;

  border:none;

  border-radius:999px;

  cursor:pointer;

  background:
  linear-gradient(
    135deg,
    #ef7a4d,
    #ff9368
  );

  color:#fff;

  font-size:.95rem;
  font-weight:800;

  transition:.35s ease;
}

.am-contact-form__button:hover{
  transform:translateY(-2px);
}

/* =========================
MAP
========================= */

.am-contact-map{
  height:520px;

  border-radius:36px;

  overflow:hidden;

  box-shadow:
  0 25px 70px rgba(15,23,42,.06);
}

.am-contact-map iframe{
  width:100%;
  height:100%;

  border:none;
}

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

@media(max-width:1100px){

  .am-contact-page__hero{
    grid-template-columns:1fr;
  }

  .am-contact-page__form-wrap{
    position:relative;
    top:0;
  }

}

@media(max-width:768px){

  .am-contact-page{
    padding:170px 0 90px;
  }

  .am-contact-page__container{
    width:calc(100% - 24px);
  }

  .am-contact-page__hero{
    gap:50px;

    margin-bottom:70px;
  }

  .am-contact-page__title{
    font-size:clamp(2.6rem,13vw,4.8rem);

    letter-spacing:-2px;
  }

  .am-contact-page__text{
    font-size:1rem;
    line-height:1.9;
  }

  .am-contact-form{
    padding:24px;

    border-radius:28px;
  }

  .am-contact-form h2{
    font-size:1.8rem;
  }

  .am-contact-form__grid{
    grid-template-columns:1fr;
  }

  .am-contact-card{
    padding:20px;

    border-radius:22px;
  }

  .am-contact-card__icon{
    width:56px;
    height:56px;

    min-width:56px;
  }

  .am-contact-map{
    height:420px;

    border-radius:28px;
  }

}
.am-contact-form__response{
  margin-top:18px;
}

.am-contact-success,
.am-contact-error{
  position:relative;

  display:flex;
  align-items:center;
  gap:12px;

  padding:18px 22px;

  border-radius:18px;

  overflow:hidden;

  font-size:14px;
  line-height:1.7;
  font-weight:600;

  backdrop-filter:blur(10px);

  animation:amContactMessage .45s ease;

  color:#ffffff;
}

/* SUCCESS */

.am-contact-success{

  background:
  linear-gradient(
    135deg,
    #10b981,
    #059669
  );

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

  box-shadow:
  0 12px 30px rgba(16,185,129,.22);
}

.am-contact-success::before{

  content:"✓";

  width:30px;
  height:30px;

  flex:none;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

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

  color:#07101f;

  font-size:14px;
  font-weight:700;
}

/* ERROR */

.am-contact-error{

  background:
  linear-gradient(
    135deg,
    #ef4444,
    #dc2626
  );

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

  box-shadow:
  0 12px 30px rgba(239,68,68,.22);
}

.am-contact-error::before{

  content:"!";

  width:30px;
  height:30px;

  flex:none;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

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

  color:#fff;

  font-size:15px;
  font-weight:700;
}

/* BUTTON */

.am-contact-form__button.is-loading{
  opacity:.7;
  pointer-events:none;
}

/* ANIMATION */

@keyframes amContactMessage{

  from{
    opacity:0;
    transform:translateY(12px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }

}/* End custom CSS */