html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

@media (max-width: 1024px) {
  .elementor-search-box {
    flex-direction: column !important;
    display: flex !important;
    gap: 1rem !important;
  }

  .elementor-search-box-pd-dt-form {
    flex-direction: column !important;
    display: flex !important;
    gap: 1rem !important;
    margin-top: -50px;
  }

  .elementor-search-box-pd-dt-item-form {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .elementor-mini-form {
    width: 100% !important;
  }

  .elementor-search-box-acc-form {
    flex-direction: column !important;
    display: flex !important;
    gap: 1rem !important;
  }

  .elementor-vehicle-content-box {
    float: none !important;
    width: 100% !important;
    margin-top: 20px !important;
  }

  .elementor-vehicle-content div {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  .elementor h1 {
    font-size: 32px !important;
    text-align: center !important;
  }

  .car-icon svg {
    display: block !important;
    margin: 0 auto !important;
  }

  .elementor-content-header {
    text-align: center !important;
  }

  .elementor-vehicle-content img {
    width: 60px !important;
    height: auto !important;
  }

  .elementor-vehicle-content a>div {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
  }
}

.elementor-search-box {
  max-width: 900px;
  margin: 0 auto !important;
  padding: 20px;
}

/* Optional: Center on smaller screens with padding */
@media (max-width: 768px) {
  .elementor-search-box {
    padding: 10px;
    width: 95%;
  }
}

@media (max-width: 576px) {
  .search-form-button {
    width: 100% !important;
    font-size: 16px !important;
  }

  .elementor h1 {
    font-size: 24px !important;
  }

  .elementor-vehicle-content a>div {
    width: 100% !important;
    text-align: center !important;
  }

  .elementor-vehicle-content a img {
    width: 50px !important;
  }

  #feefo-service-review-carousel-widgetId {
    width: 100% !important;
  }
}

/* Base style */
select {
  width: 100%;
  max-width: 100%;
  padding: 10px;
  font-size: 16px;
  border-radius: 6px;
  border: 1px solid #ccc;
  box-sizing: border-box;
}

/* Responsive tweaks */
@media (max-width: 768px) {
  select {
    font-size: 14px;
    padding: 12px;
  }

  option,
  optgroup {
    font-size: 14px;
  }
}

@media (max-width: 480px) {
  select {
    font-size: 13px;
  }

  option,
  optgroup {
    font-size: 13px;
  }
}


/* navbar */
/* MOBILE MENU STYLING */
.navbar-content {
  width: 90% !important;
  display: flex !important;
  justify-content: space-between !important;
}

@media (max-width:1300px) {
  .navbar-content {
    width: 94% !important;
    display: flex !important;
    justify-content: space-between !important;
  }
}

.nav-container {
  display: none;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
  position: absolute;
  top: 120px;
  left: 0px;
  z-index: 999;
}

.nav-container.active-nav {
  display: flex !important;
}

.header-nav-links {
  display: flex;
  flex-direction: column;
  padding: 0;
  margin: 0;
  list-style: none;
  width: 100%;
}

@media (max-width: 768px) {
  .header-nav-links li {
    width: 100% !important;
    text-align: center !important;
    padding: 14px 0;
    border-bottom: 1px solid #ddd;
  }

  .header-nav-links li a {
    display: block;
    width: 100%;
    text-align: center;
    text-decoration: none;
    color: #333;
    font-weight: bold;
  }

}

/* Submenu (mobile view) */
.sub-menu {
  display: none;
  flex-direction: column;
  background: #f9f9f9;
}

.hfe-has-submenu-container.active>.sub-menu {
  display: flex;
}

.sub-menu li {
  padding: 12px 0;
  border-bottom: 1px solid #ccc;
}

.sub-menu li a {
  text-align: center;
  width: 100%;
}

/* === MOBILE HOVER FULL WIDTH === */
.header-nav-links li:hover {
  background-color: #f0f0f0 !important;
  /* change to your desired hover color */
}

.header-nav-links li a:hover {
  background-color: transparent !important;
  /* prevent double background */
  color: #000 !important;
  /* optional: text color on hover */
}

.hfe-has-submenu-container:hover .sub-menu {
  visibility: visible;
  opacity: 1;
  transition: visibility 0s, opacity 0.3s ease-in;
}

.sub-menu {
  padding: 0px;
  position: absolute;
  visibility: visible;
  opacity: 0;
  background-color: #fff;
  min-width: 230px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  transition: visibility 0s 0.3s, opacity 0.3s ease-in;
}

.sub-menu li a {
  color: #333;
  text-decoration: none;
  display: block;
  width: 100%;
  text-align: left;
}

.sub-menu li {
  padding: 15px 5px !important;
  border-bottom: 0.1px solid #ccc;
}

.sub-menu li:hover {
  background-color: #252d87 !important;
  color: #fff !important;
}

.sub-menu li:hover a {
  /* background-color: #252d87 !important; */
  color: #fff !important;
}

/* DESKTOP STYLES */
@media (min-width: 768px) {
  .nav-container {
    display: block !important;
    position: static;
    background: none;
  }

  .header-nav-links {
    flex-direction: row;
    justify-content: flex-end;
    gap: 20px;
  }

  .header-nav-links li {
    border: none;
    padding: 0;
    text-align: left;
  }

  .hfe-nav-menu__toggle {
    display: none;
  }

  .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  }

  .hfe-has-submenu-container:hover .sub-menu {
    display: block;
  }
}


/* section 2 */
/* === BASE STYLES (can be adjusted to your layout needs) === */
.advanced-check-in {
  /* padding: 60px 30px; */
  /* background-color: #000; Or your desired background */
  /* box-sizing: border-box; */

}

.advanced-check-in-content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 40px;
  /* max-width: 1200px; */
  width: 100%;
  margin: 0 auto;
}

.advanced-check-in-content-box,
.advanced-check-in-text-box {
  flex: 1;
}

.advanced-check-in-check-box {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 30px 0;
}

.advanced-check-in-check-box-image svg {
  width: 100px;
  height: 100px;
}

.advanced-check-in-check-box-text p {
  margin: -10px;
}

.advanced-check-in-check-in-button {
  margin-top: 20px;
}

.advanced-check-in-check-in-button button {
  color: #fff;
  padding: 12px 25px;
  font-size: 16px;
  border: none;
  cursor: pointer;
  font-weight: bold;
  border-radius: 4px;
}

/* === RESPONSIVE MEDIA QUERIES === */
@media (max-width: 768px) {
  .advanced-check-in-content {
    flex-direction: column !important;
    align-items: center;
    text-align: center;
  }
  .advanced-check-in-content-box h1{
    font-size: 26px;
  }

  .advanced-check-in {
    margin-top: -30px;
  }

  .advance-check {
    font-size: 30px;
    text-align: center;
    margin-top: -20px;
  }

  .advanced-check-in-check-box {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center;
  }

  .advanced-check-in-check-box-image svg {
    width: 50px !important;
    height: 50px !important;
    margin-top: -40px;
  }

  .advanced-check-in-check-in-button {
    display: flex;
    justify-content: center;
    margin-top: -20px;
  }

  .advanced-check-in-text-box {
    margin-top: -8px;
  }

  .advanced-check-in-text-box-image {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 20px;
  }

  .advanced-check-in-text-box-image img {
    width: 100px;
    height: auto;
  }
}


/* section 3 */
.top-branches {
  padding: 60px 30px;
  box-sizing: border-box;
}

.top-branches-content {
  max-width: 95%;
  margin: 0 auto;
}

.top-branches-content-box {
  text-align: center;
  margin-bottom: 30px;
}

.top-branches-content-box h1 {
  font-size: 32px;
  margin-bottom: 10px;
}

.top-branches-content-box p {
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.top-branches-image-box {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

.top-branches-image-box-item {
  flex: 1 1 22%;
  max-width: 33%;
  text-align: center;
}

.top-branches-image-box-item img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* === RESPONSIVE === */
@media (max-width: 992px) {
  .top-branches-image-box-item {
    flex: 1 1 45%;
    max-width: 45%;
  }
}

@media (max-width: 600px) {
  .top-branches-content-box h1 {
    font-size: 24px;
    margin-top: -30px;
  }

  .top-branches-content-box p {
    font-size: 14px;
    margin-top: -20px;
  }

  .top-branches-image-box-item {
    flex: 1 1 100%;
    max-width: 100%;
    margin-top: -20px;
  }
}


/* section 4 */
.blogs-news-content-body {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

/* Each blog/news box */
.blogs-news-content-body-box {
  background-color: #fff;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  max-width: 22%;
  flex: 1 1 22%;
  text-align: left;
  padding: 0;
  transition: transform 0.3s ease;
}

.blogs-news-content-body-box:hover {
  transform: translateY(-5px);
}

/* Image */
.blogs-news-content-body-box img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  aspect-ratio: 4 / 3;
}

/* Text wrapper */
.blog-news-content-body-box-content-item-text {
  padding: 15px;
}

.blog-news-content-body-box-content-item-text h4 {
  font-size: 16px;
  color: #333;
  margin: 0;
}

.blog-news-content-body-box-content-item-text h4 p {
  display: inline;
  color: inherit;
}

/* Date (optional: style <br> date separately if needed) */
.blog-news-content-body-box-content-item-text h4 br {
  display: none;
}

/* Link color override */
.blog-news-content-body-box-content-item-text a {
  color: #14db30;
  text-decoration: none;
  font-weight: 500;
}

/* Responsive Layouts */
@media (max-width: 992px) {
  .blogs-news-content-body-box {
    max-width: 45%;
    flex: 1 1 45%;
    margin-top: -10px;
  }
}

@media (max-width: 600px) {
  .blogs-news-content-body-box {
    max-width: 100%;
    flex: 1 1 100%;
  }

  .blogs-news {
    margin-top: -30px;
  }

  .blogs-news-content-header h1 {
    font-size: 20px;
  }

  .blogs-news-content-footer p {
    font-size: 10px;
    margin-top: -90px;
  }

  .blog-news-content-body-box-content-item-text h4 {
    font-size: 14px;
  }
}


/* section 5 */
.faq {
  padding: 60px 0px;
  box-sizing: border-box;
  width: 100%;
  /* margin: auto; */
}

.faq-content {
  display: flex;
  flex-wrap: wrap;
  max-width: 95%;
  justify-content: space-between;
  margin: 0 auto;
  gap: 30px;
}

.faq-content-box {
  flex: 1 1 calc(33.333% - 20px);
  /* better responsive logic */
  box-sizing: border-box;
}

.faq-content-box h1 {
  font-size: 20px;
  margin-bottom: 15px;
  line-height: 1.4;
}

.faq-content-box p {
  font-size: 15px;
  line-height: 1.7;
}

/* Tablet - 2 columns */
@media (max-width: 992px) {
  .faq-content-box {
    flex: 1 1 calc(50% - 15px);
  }
}

/* Mobile - 1 column */
@media (max-width: 600px) {
  .faq-content-box {
    flex: 1 1 100%;
  }

  .faq {
    margin-top: -40px;
  }
}




/* section 6 */
@media (max-width: 768px) {
  .booking-content-box {
    padding: 30px 15px;
  }

  .booking-content-box-icons-box {
    display: flex;
    flex-direction: column;
    gap: 0px;
    margin-top: -20px;
    align-items: center;
  }

  .booking-content-box-icons-box-item {
    display: flex;
    flex-direction: column;
    gap: 0px;
    align-items: center;
    width: 90%;
    margin: auto;
  }

  .booking-content-box-icons-box-item-icon {
    width: 100%;
    max-width: 500px;
    /* keep it centered and not too wide */
    text-align: center;
    padding: 10px;
  }

  .booking-content-box-icons-box-item-icon p {
    width: 100%;
    font-size: 16px;
    line-height: 1.5;
    word-spacing: 1px;
  }

  .booking-content-box-icons-box-item-icon h1 {
    font-size: 20px;
    /* margin: 10px 0; */
  }

  .booking-content-box h1 {
    font-size: 26px;
    text-align: center;
  }

  .booking-content-search-form {
    margin-top: -15px;
  }
}

@media (max-width: 480px) {
  .booking-content-box-icons-box-item-icon p {
    font-size: 14px;
  }

  .booking-content-box-icons-box-item-icon h1 {
    font-size: 18px;
  }

  .booking-content-box h1 {
    font-size: 27px;
  }
}

@media (max-width: 525px) {
  .elementor-body {
    display: flex;
    flex-direction: column !important;
    align-items: center;
    justify-content: center;
    gap: 20px;
  }
}



/* About */
/* Tablet and below */
@media (max-width: 991px) {
  .about-us-content {
    flex-direction: column;
    text-align: center;
  }

  .about-us-content-box {
    width: 82%;
    margin: auto !important;
  }

  /* .about-us-image-box {
    width: 97%;
    margin: auto;
  } */

  .about-us-image-box {
    margin-top: 20px;
  }

  .about-us-content-box h1,
  .about-us-content-box h2 {
    font-size: 22px;
  }

  .about-us-content-box p,
  .about-us-content-box li {
    font-size: 16px;
  }

  .about-us-image-box img {
    width: 98%;
    margin: 0 auto;
    display: block;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .about-us-content-box h1 {
    font-size: 20px;
  }

  .about-us-content-box h2 {
    font-size: 18px;
  }

  .about-us-content-box p,
  .about-us-content-box li {
    font-size: 14px;
  }

  .cta a {
    display: inline-block;
    margin-top: 15px;
    font-size: 16px;
  }
}


/* our branches */
/* Default (Desktop) */
.our-branches-content-box {
  width: 25%;
  /* padding: 15px; */
  box-sizing: border-box;
}

/* Tablet (2 columns) */
@media (max-width: 991px) {
  .our-branches-content-box {
    width: 48% !important;
  }
}

/* Mobile (1 column) */
@media (max-width: 576px) {
  .our-branches-content-box {
    width: 100% !important;
  }
}



/* Blog and News */
.blog-news-content-body-box-content {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  margin: 0px 15px;
}

.blog-news-content-body-box-content-item {
  width: 23%;
  background: white;
  border-radius: 8px;
  overflow: hidden;
  /* padding: 10px; */
  box-sizing: border-box;
  transition: transform 0.3s ease;
}

.blog-news-content-body-box-content-item:hover {
  transform: translateY(-5px);
}

.blog-news-content-body-box-content-item img {
  width: 100%;
  max-height: 240px;
  display: block;
  border-radius: 4px;
}

.blog-news-content-body-box-content-item-text h4 p {
  margin: 10px 0 0;
  color: rgba(0, 0, 0, 0.485);
  font-size: 16px;
  line-height: 1.4;
}

.blog-news-content-body-box-content-item-text h4 {
  display: flex;
  /* justify-content: space-between; */
  align-items: center;
  flex-wrap: wrap;
  color: #85080b;
  font-size: 16px;
  margin-top: 10px;
}

.blog-news-content-body-box-content-item-text .blog-date {
  font-size: 13px;
  color: #ccc;
  font-weight: normal;
  white-space: nowrap;
  margin-left: auto;
}

@media (max-width: 991px) {
  .blog-news-content-body-box-content-item {
    width: 48%;
  }
  .blog-news-content-body-box-content-item img {
  height: 270px ;
}
.blog-news-content-header h1{
  font-size: 28px;
}
}

@media (max-width: 576px) {
  .blog-news-content-body-box-content-item {
    width: 100%;
    /* padding: 10px; */
    background-color: white;
  }

  .blog-news-content-body-box-content-item-text {
    width: 90% !important;
    margin: auto !important;
  }

  .blog-news-content-body-box-content-item-text h4 p {
    font-size: 16px;
  }
}



/* Manage Booking */
/* === Mobile & Tablet (max 991px) === */
@media (max-width: 991px) {
  .manage-booking-content-header h1 {
    font-size: 28px !important;
    text-align: center;
  }

  .manage-booking-form-box {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }

  .manage-booking-guest-box,
  .manage-booking-existing-customer-box {
    width: 88%;
    margin: auto;
  }

  .manage-booking-input-box {
    width: 100%;
    margin-bottom: 15px;
  }

  .manage-booking-input-box input,
  .manage-booking-input-box select {
    /* width: 100%; */
    font-size: 16px;
  }

  .manage-booking-content-divider {
    justify-content: center;
    margin: 15px 0;
  }

  button {
    width: 100%;
    font-size: 16px;
    padding: 10px;
  }

  .manage-booking-forgot-password-box {
    text-align: right;
    margin-bottom: 10px;
  }
}

/* === Small Mobile Devices (max 576px) === */
@media (max-width: 576px) {
  .manage-booking-content-header h1 {
    font-size: 22px !important;
    line-height: 1.3;
    padding: 0 10px;
  }

  .create-account-content h1 {
    font-size: 20px;
  }

  .manage-booking-guest-box h1,
  .manage-booking-existing-customer-box h1 {
    font-size: 20px;
    text-align: center;
  }

  .manage-booking-input-box label {
    font-size: 14px;
  }

  .manage-booking-input-box input,
  .manage-booking-input-box select {
    font-size: 14px;
    padding: 8px;
  }
}


/* Contact */
@media (max-width: 991px) {
  .contact-us-content-header h1 {
    font-size: 28px;
    text-align: center;
    padding: 0 10px;
  }

  .contact-us-form-box {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }

  .contact-us-form-submit-box,
  .contact-us-info-box {
    width: 95%;
  }

  .contact-us-input-box {
    width: 100%;
    margin-bottom: 20px;
  }

  .contact-us-input-box input,
  .contact-us-input-box textarea {
    width: 100%;
    font-size: 16px;
    padding: 10px;
    box-sizing: border-box;
  }

  .contact-us-content-divider {
    justify-content: center;
    margin: 15px 0;
  }

  .contact-us-form-submit-box button {
    width: 100%;
    padding: 12px;
    font-size: 16px;
  }

  .contact-us-info-box-item {
    width: 100%;
    margin-left: -20px;
    text-align: left;
  }

  .contact-us-info-box-item h1,
  .contact-us-info-box-item h2 {
    font-size: 20px;
  }

  .contact-us-info-box-item p,
  .contact-us-info-box-item a {
    font-size: 14px;
  }
}

@media (max-width: 576px) {
  .contact-us-content-header h1 {
    font-size: 22px;
    line-height: 1.3;
  }

  .contact-us-input-box label {
    font-size: 14px;
  }

  .contact-us-input-box input,
  .contact-us-input-box textarea {
    font-size: 14px;
    padding: 8px;
  }

  .contact-us-info-box-item h1,
  .contact-us-info-box-item h2 {
    font-size: 18px;
  }

  .contact-us-info-box-item p,
  .contact-us-info-box-item a {
    font-size: 13px;
  }
}



/* Business */
/* Travel agents */
@media (max-width: 991px) {
  .travel-agents-content-header h1 {
    font-size: 28px;
    text-align: center;
    padding: 0 15px;
  }

  .travel-agents-body {
    flex-direction: column;
    display: flex;
    gap: 40px;
  }

  .travel-agents-body-content,
  .travel-agents-body-form {
    width: 100% !important;
  }

  .travel-agents-body-form {
    flex-direction: column;
    display: flex;
    gap: 30px;
  }

  .travel-agents-body-form-child {
    width: 88% !important;
    /* margin: auto !important; */
  }

  .travel-agents-body-form-item,
  .manage-booking-input-box {
    width: 100%;
    margin-bottom: 15px;
  }

  .travel-agents-body-form-item input,
  .manage-booking-input-box input {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    box-sizing: border-box;
  }

  .travel-agents-body-form-item label,
  .manage-booking-input-box label {
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
  }

  .travel-agents-body-content-item h1,
  .travel-agents-body-content-item h2 {
    font-size: 20px;
  }

  .travel-agents-body-content-item-text p {
    font-size: 15px;
  }

  .manage-booking-existing-customer-box {
    padding: 0;
  }

  .manage-booking-existing-customer-box button,
  .travel-agents-body-form-item button {
    width: 100%;
    padding: 12px;
    font-size: 16px;
  }
}

@media (max-width: 576px) {
  .travel-agents-content-header h1 {
    font-size: 22px;
    line-height: 1.3;
  }

  .travel-agents-body-content-item h1,
  .travel-agents-body-content-item h2 {
    font-size: 18px;
  }

  .travel-agents-body-content-item-text p {
    font-size: 14px;
  }

  .travel-agents-body-form-item input,
  .manage-booking-input-box input {
    font-size: 14px;
    padding: 8px;
  }

  .travel-agents-body-form-item label {
    font-size: 13px;
  }

  .travel-agents-body-form-item button {
    font-size: 15px;
  }
}



/* corporate */
/* Base Fix for Centering & Width */
/* .travel-agents-content {
  max-width: 95%;
  margin: 0 auto;
  padding: 20px 0;
  box-sizing: border-box;
} */


/* Force full width of the entire form container */


/* Each child section (column) inside the form */
/* .travel-agents-body-form-child {
  flex: 1 1 48%;
  box-sizing: border-box;
} */

/* --- EXISTING CORPORATE LOGIN Styling --- */
/* .manage-booking-existing-customer-box {
  width: 82%;
  max-width: 600px;
  margin: 0 auto;
  padding: 30px;
  background-color: #f9f9f9;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.manage-booking-existing-customer-box h1 {
  font-size: 24px;
  text-align: center;
  margin-bottom: 25px;
  color: #252d87;
}

.manage-booking-input-box {
  margin-bottom: 20px;
}

.manage-booking-input-box label {
  display: block;
  margin-bottom: 6px;
  font-weight: 500;
  font-size: 14px;
}

.manage-booking-input-box input {
  width: 100%;
  padding: 10px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
}

.manage-booking-existing-customer-box button {
  width: 100%;
  padding: 12px;
  background-color: #252d87;
  color: white;
  font-size: 16px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.manage-booking-existing-customer-box button:hover {
  background-color: #1d1e70;
} */

/* Responsive Adjustments */
@media (max-width: 991px) {
  .travel-agents-content-header h1 {
    font-size: 28px;
    text-align: center;
    padding: 0 10px;
  }

  .travel-agents-body,
  .travel-agents-body-form {
    flex-direction: column;
    gap: 30px;
  }

  .travel-agents-body-content {
    width: 92% !important;
    margin: auto;
  }
  .travel-agents-body-form-child {
    width: 82% !important;
    margin: auto;
  }

  .travel-agents-body-content-item,
  .travel-agents-body-form-item,
  .manage-booking-input-box {
    width: 97%;
    margin-bottom: 15px;
  }

  .travel-agents-body-content-item h1,
  .travel-agents-body-content-item h2,
  .travel-agents-body-form-child h1 {
    font-size: 22px;
    text-align: left;
  }

  .travel-agents-body-content-item-text p {
    font-size: 15px;
  }

  input,
  select,
  textarea {
    width: 100%;
    padding: 10px;
    font-size: 15px;
    box-sizing: border-box;
  }

  button {
    width: 100%;
    padding: 12px;
    font-size: 16px;
  }
}

@media (max-width: 576px) {
  .travel-agents-content-header h1 {
    font-size: 22px;
  }

  .travel-agents-body-content-item h1,
  .travel-agents-body-content-item h2,
  .travel-agents-body-form-child h1 {
    font-size: 18px;
  }

  .travel-agents-body-content-item-text p {
    font-size: 14px;
  }

  input,
  textarea,
  select {
    font-size: 14px;
    padding: 8px;
  }

  label {
    font-size: 13px;
  }

  button {
    font-size: 15px;
  }
}


/* franchies opportunities */
@media (max-width: 768px) {
  .franchise-opportunities-content-header h1 {
    font-size: 24px;
    text-align: center;
    padding: 0 10px;
  }

  .franchise-opportunities-body {
    flex-direction: column;
    padding: 0 15px;
  }

  .franchise-opportunities-body-content {
    width: 100%;
  }

  .franchise-opportunities-body-content-item {
    margin-bottom: 20px;
  }

  .franchise-opportunities-body-form {
    width: 98%;
    padding: 0 15px;
    height: 1020px !important;
    /* box-sizing: border-box; */
  }

  .franchise-opportunities-body-form-item {
    width: 100%;
    margin-bottom: 15px;
  }

  .franchise-opportunities-container {
    flex-direction: column;
    gap: 15px;
  }

  .franchise-radio-options {
    flex-direction: column;
    gap: 8px;
  }

  .franchise-opportunities-divider-separator {
    display: flex;
    justify-content: center;
    margin: 20px 0;
  }
}

/* Hide by default */
.hfe-has-submenu-container {
  position: relative;
}

.sub-menu {
  display: none;
  flex-direction: column;
  background: white;
  /* or match your nav background */
  padding: 10px;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999;
  text-align: center;
  min-width: 200px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.sub-menu a {
  text-align: center;
  padding: 8px 0;
  display: block;
  color: #000;
  text-decoration: none;
}

/* Show when toggled */
.sub-menu.show-submenu {
  display: flex;
}