:root {
  --heloise-blue: #085fb8;
  --heloise-sky: #1fb6ff;
  --heloise-yellow: #ffd21f;
  --heloise-ink: #1f2a44;
  --heloise-muted: #667085;
}

body {
  color: var(--heloise-ink);
}

p {
  color: var(--heloise-muted);
}

.logo img {
  max-width: 190px;
  width: auto;
}

.background-header .logo img {
  max-width: 165px;
}

.header-area .main-nav .nav li {
  padding-left: 13px;
  padding-right: 13px;
}

.header-area .main-nav .nav li:last-child {
  padding-left: 24px;
}

.gradient-button a,
.border-button a:hover,
.white-button a:hover,
footer #search button {
  background: linear-gradient(105deg, var(--heloise-blue) 0%, var(--heloise-sky) 100%);
}

.white-button a,
.border-button a,
.section-heading h4 em,
.header-area .main-nav .nav li:hover a,
.header-area .main-nav .nav li a.active,
.background-header .main-nav .nav li:hover a,
.background-header .main-nav .nav li a.active,
.text-button a {
  color: var(--heloise-blue) !important;
}

.border-button a {
  border-color: var(--heloise-blue);
}

.heloise-brand-pill {
  display: inline-block;
  color: var(--heloise-blue);
  background: rgba(255, 210, 31, 0.2);
  border: 1px solid rgba(255, 210, 31, 0.75);
  border-radius: 999px;
  padding: 8px 16px;
  font-weight: 700;
  letter-spacing: 0.3px;
  margin-bottom: 22px;
}

.heloise-hero-stats {
  margin-top: 28px;
}

.heloise-stat {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 18px;
  padding: 18px 16px;
  box-shadow: 0 10px 30px rgba(8, 95, 184, 0.12);
  height: 100%;
}

.heloise-stat strong {
  display: block;
  color: var(--heloise-blue);
  font-size: 24px;
  line-height: 1.1;
}

.heloise-stat span {
  display: block;
  color: var(--heloise-muted);
  margin-top: 6px;
  font-size: 13px;
}

.heloise-photo-frame {
  background: #fff;
  border-radius: 32px;
  padding: 16px;
  box-shadow: 0 25px 60px rgba(8, 95, 184, 0.16);
}

.heloise-photo-frame img,
.heloise-gallery-card img,
.heloise-video-card video {
  border-radius: 24px;
  object-fit: cover;
}

.heloise-photo-frame img {
  height: 520px;
}

.heloise-service-note {
  margin-top: 16px;
  color: var(--heloise-blue);
  font-weight: 600;
}

.heloise-route-pill {
  display: inline-block;
  margin: 5px 5px 0 0;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(8, 95, 184, 0.08);
  color: var(--heloise-blue);
  font-size: 13px;
  font-weight: 600;
}

.heloise-gallery {
  padding: 60px 0 80px;
}

.heloise-gallery-card {
  background: #fff;
  padding: 10px;
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(8, 95, 184, 0.11);
  margin: 18px 8px;
}

.heloise-gallery-card img {
  width: 100%;
  height: 260px;
}

.heloise-gallery-card p {
  margin: 10px 8px 2px;
  color: var(--heloise-ink);
  font-weight: 600;
  line-height: 1.4;
}

.heloise-video-card {
  margin-top: 30px;
  background: #fff;
  border-radius: 24px;
  padding: 12px;
  box-shadow: 0 10px 30px rgba(8, 95, 184, 0.11);
}

.heloise-video-card video {
  display: block;
  width: 100%;
  max-height: 540px;
  background: #000;
}

.heloise-route-card {
  background: #fff;
  border-radius: 24px;
  padding: 26px;
  box-shadow: 0 10px 30px rgba(8, 95, 184, 0.09);
  height: 100%;
}

.heloise-route-card h4 {
  color: var(--heloise-ink);
  font-weight: 700;
}

.heloise-route-card ul,
.heloise-policy-list {
  margin: 15px 0 0;
  padding-left: 18px;
}

.heloise-route-card li,
.heloise-policy-list li {
  color: var(--heloise-muted);
  line-height: 1.8;
}

.heloise-contact-card {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 20px;
  padding: 22px;
  height: 100%;
}

.heloise-contact-card h4,
.heloise-contact-card p,
.heloise-contact-card a,
.heloise-contact-card li {
  color: #fff;
}

.heloise-contact-card ul {
  padding-left: 18px;
  margin-bottom: 0;
}

.heloise-footer-note {
  color: rgba(255, 255, 255, 0.86);
}

.heloise-mini-label {
  color: var(--heloise-yellow);
  font-weight: 700;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 1px;
}

.heloise-faq .accordion-item {
  border: none;
  border-radius: 18px;
  box-shadow: 0 8px 28px rgba(8, 95, 184, 0.08);
  margin-bottom: 14px;
  overflow: hidden;
}

.heloise-faq .accordion-button {
  font-weight: 700;
  color: var(--heloise-ink);
}

.heloise-faq .accordion-button:not(.collapsed) {
  color: var(--heloise-blue);
  background: rgba(8, 95, 184, 0.06);
}

#modal .popupBody textarea,
#modal .popupBody select {
  width: 100%;
  padding: 13px;
  border: 1px solid #ddd;
  color: #666;
  border-radius: 4px;
  margin-bottom: 15px;
}

#modal .social_login .social_box.whatsapp {
  background: #25d366;
}

#modal .social_login .social_box.phone {
  background: var(--heloise-blue);
}

#modal .social_login .social_box.business {
  background: var(--heloise-yellow);
  color: var(--heloise-ink);
}

@media (max-width: 991px) {
  .heloise-photo-frame img {
    height: auto;
  }

  .heloise-gallery-card img {
    height: 220px;
  }
}

#modal {
  display: none;
}

/* Mailbox integration */
.header-area .main-nav .nav li a.heloise-mailbox-link {
  color: var(--heloise-ink) !important;
  font-weight: 700;
}

.header-area .main-nav .nav li a.heloise-mailbox-link::before {
  content: "\f0e0";
  font-family: FontAwesome;
  margin-right: 6px;
  color: var(--heloise-blue);
}

.social_box.mailbox {
  background: linear-gradient(105deg, var(--heloise-blue) 0%, var(--heloise-sky) 100%);
  color: #fff;
}

.social_box.mailbox .icon,
.social_box.mailbox .icon_title {
  color: #fff;
}
