/* ==============================
   Root Variables
   ============================== */
:root {
  /* Colors */
  --text-color: #333;          /* default body text */
  --heading-color: #111;       /* headings */
  --muted-color: #666;         /* secondary text */

  /* Font Sizes (mobile-first) */
  --font-size-base: 1rem;      /* 16px */
  --font-size-sm: 0.875rem;    /* 14px */
  --font-size-lg: 1.125rem;    /* 18px */
  --font-size-h1: 2rem;        /* 32px */
  --font-size-h2: 1.75rem;     /* 28px */
  --font-size-h3: 1.5rem;      /* 24px */
  --font-size-h4: 1.25rem;     /* 20px */

  /* Spacing */
  --margin-base: 1rem;
  --margin-lg: 1.5rem;
  --margin-sm: 0.5rem;
}
.btn-tb {
  display: inline-block;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  border: none;
  border-radius: 8px;
  background-image: linear-gradient(to bottom, #eeb14d, #f48311);
  cursor: pointer;
  align-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

/* Hover effect */
.btn-tb:hover {
  background-image: linear-gradient(to bottom, #eeb14d, #f48311);
  /* transform: translateY(-1px); */
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
  color: #af5700;
}

/* Optional: focus/active */
.btn-tb:active {
  transform: translateY(0);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

/* contact-us page flag image */
#flagPreview img {
    width: 25px;
    height: 18px;
    margin-right: 6px;
    border: 1px solid #ccc;
}
.clients-say-contact {
    background: url('https://adamsandbutler.b-cdn.net/app/uploads/2020/06/contact_bottom_image@2x-1737x2000.jpg') no-repeat bottom center;
    background-size: 100% auto;  /* makes image cover full width */
    position: relative;
}
.intro-container{
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 0px;
}
.page-contact-us .intro-contact{
    padding: 20px 0 !important;
}



 /* contact us page */
.page-contact-us .contact-us-profile-card {
    background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    color: white;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    /* max-width: 400px; */
    width: 100%;
    margin: 40px 10px;
}
.page-contact-us .contact-us-profile-card .profile-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}
.page-contact-us .contact-us-profile-card .profile-header img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    margin-right: 15px;
}
.page-contact-us .contact-us-profile-card .profile-info h6 {
    margin: 0;
    font-weight: 600;
    font-size: 1.1rem;
}
.page-contact-us .contact-us-profile-card .profile-info small {
    font-size: 0.9rem;
    opacity: 0.9;
}
.page-contact-us .contact-us-profile-card .contact-details {
    margin-top: 15px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    padding: 12px 15px;
}
.page-contact-us .contact-us-profile-card .contact-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.page-contact-us .contact-us-profile-card .contact-item i {
    font-size: 1.2rem;
    margin-right: 10px;
}
.page-contact-us .contact-us-profile-card .contact-item span {
    font-size: 0.95rem;
}

@media only screen and (min-width: 769px) {
    .page-contact-us .contact-us-profile-card{
        margin: 10px 0;
    }
}
/* contact us page profile card */

/* clients-say-contact */
.clients-say-contact {
    position: relative;
    padding: 0 30px 140px;
    text-align: center;
    z-index: 2;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact {
        padding: 30px 100px;
    }
}
@media only screen and (min-width: 1034px) {
    .clients-say-contact {
        /* padding: 0 100px 370px; */
        padding: 30px 100px;
    }
}
@media only screen and (min-width: 1401px) {
    .clients-say-contact {
        padding: 100px 140px 250px;
        margin: 30px 0px 0px 0px;
    }
}
.clients-say-contact h2 {
    margin-top: 0;
}
.clients-say-contact .wrap-quote-and-author {
    position: relative;
    margin: 40px 10px 10px;
    color: white;
    text-shadow: 2px 2px 4px black;
}
.clients-say-contact .wrap-quote-and-author .wrap-quote-top,
.clients-say-contact .wrap-quote-and-author .wrap-quote-bottom{
    text-shadow: none;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-quote-and-author {
        margin: 60px 60px 0;
    }
    
}
.clients-say-contact .wrap-quote-and-author .quote-author {
    font-size: 22px;
    font-weight: 300;
    margin-bottom: 35px;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-quote-and-author .quote-author {
        margin-bottom: 0;
    }
}
.clients-say-contact .wrap-quote-and-author .wrap-quote-top {
    position: absolute;
    top: -40px;
    left: 0;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-quote-and-author .wrap-quote-top {
        top: -40px;
        left: -40px;
    }
}
.clients-say-contact .wrap-quote-and-author .wrap-quote-bottom {
    position: absolute;
    bottom: 30px;
    right: 0;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-quote-and-author .wrap-quote-bottom {
        bottom: 30px;
        right: -40px;
    }
}
.clients-say-contact .wrap-carousel {
    width: 100%;
    overflow-x: hidden;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-carousel {
        width: calc(75% + 120px);
        margin: 0 auto;
    }
}
@media only screen and (min-width: 1034px) {
    .clients-say-contact .wrap-carousel {
        width: calc(50% + 120px);
        margin: 0 auto;
    }
}
.clients-say-contact .wrap-carousel .swiper-container-contact-clients-say .swiper-wrapper {
    height: auto;
}
.clients-say-contact .wrap-carousel .swiper-container-contact-clients-say .swiper-wrapper .swiper-slide {
    position: relative;
}
.clients-say-contact .wrap-nav {
    display: flex;
    justify-content: center;
    z-index: 10;
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-nav {
        margin-top: 100px;
    }
}
.clients-say-contact .wrap-nav .swiper-clients-say-button-next,
.clients-say-contact .wrap-nav .swiper-clients-say-button-prev {
    position: relative;
    height: 40px;
    width: 40px;
    margin: 0 10px;
    border: 1px solid #ffffff;
    border-radius: 50%;
    cursor: pointer;
    transition: transform 0.4s cubic-bezier(0.76, 0, 0.24, 1);
}
@media only screen and (min-width: 769px) {
    .clients-say-contact .wrap-nav .swiper-clients-say-button-next,
    .clients-say-contact .wrap-nav .swiper-clients-say-button-prev {
        height: 55px;
        width: 55px;
    }
}
.clients-say-contact .wrap-nav .swiper-clients-say-button-next:hover,
.clients-say-contact .wrap-nav .swiper-clients-say-button-prev:hover {
    transform: scale(0.85);
}
.clients-say-contact .wrap-nav .swiper-clients-say-button-next svg,
.clients-say-contact .wrap-nav .swiper-clients-say-button-prev svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 9.5px;
}


@media only screen and (max-width: 550px) {
    .page-contact-us .intro-contact{
        text-align: center;
    }
    .page-contact-us .contact-us-profile-card{
        margin: 0px 0px 10px 0px;
    }
    .clients-say-contact{
        padding: 30px 10px 20px;
    }
}

/* clients-say-contact */

.form-and-form-details-contact .contact-us-form .form-label{
    font-weight: 600;
    font-size: .8rem;
}

.border-rounded-14{
    border-radius: 14px;
}