    :root {
      --primary-navy: #073763;
      --deep-navy: #052B4F;
      --medical-blue: #0B5F9E;
      --healthcare-teal: #00A6A6;
      --teal-dark: #008C8C;
      --soft-blue: #EAF6F8;
      --light-bg: #F7FAFC;
      --white: #FFFFFF;
      --text-dark: #1F2A37;
      --text-muted: #5F6B7A;
      --border-soft: #DCE8EF;
      --shadow-soft: 0 12px 36px rgba(7, 55, 99, 0.08);
      --shadow-medium: 0 18px 44px rgba(7, 55, 99, 0.13);
    }

    * { box-sizing: border-box; }

    html { scroll-behavior: smooth; }

    body {
      font-family: Arial, Helvetica, sans-serif;
      color: var(--text-dark);
      background: var(--white);
      font-size: 16px;
      line-height: 1.7;
    }

    a { text-decoration: none; }

    p {
      color: var(--text-muted);
      font-size: 16px;
    }

    .top-bar {
      background: var(--deep-navy);
      color: var(--white);
      font-size: 14px;
      padding: 9px 0;
    }

    .top-bar a { color: var(--white); }
    .top-bar i { color: var(--healthcare-teal); }

    .navbar {
      background: var(--white);
      box-shadow: 0 3px 18px rgba(7, 55, 99, 0.10);
      padding: 14px 0;
    }

    .navbar-brand {
      display: flex;
      align-items: center;
      gap: 11px;
      font-weight: 800;
      color: var(--primary-navy) !important;
      font-size: 22px;
      letter-spacing: -0.3px;
    }

    .brand-icon {
      width: 40px;
      height: 40px;
      border-radius: 12px;
      background: linear-gradient(135deg, var(--healthcare-teal), var(--medical-blue));
      color: var(--white);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 18px;
      box-shadow: 0 8px 22px rgba(0, 166, 166, 0.25);
    }

    .navbar-nav .nav-link {
      font-weight: 700;
      color: var(--text-dark);
      margin-left: 10px;
      font-size: 15px;
      transition: 0.25s ease;
    }

    .navbar-nav .nav-link:hover {
      color: var(--healthcare-teal);
    }

    .nav-contact-btn {
      background: var(--healthcare-teal);
      color: var(--white) !important;
      border-radius: 7px;
      padding: 8px 17px !important;
      margin-left: 16px;
      box-shadow: 0 8px 20px rgba(0, 166, 166, 0.22);
    }

    .nav-contact-btn:hover {
      background: var(--teal-dark);
      color: var(--white) !important;
    }

    .dropdown-menu {
      border: 0;
      border-radius: 14px;
      padding: 12px;
      box-shadow: 0 18px 42px rgba(7, 55, 99, 0.14);
      margin-top: 0;
      min-width: 280px;
    }

    .dropdown-item {
      color: var(--primary-navy);
      font-weight: 700;
      font-size: 14.5px;
      padding: 10px 14px;
      border-radius: 9px;
      transition: 0.25s ease;
    }

    .dropdown-item:hover {
      background: var(--soft-blue);
      color: var(--healthcare-teal);
    }

    .navbar-nav .dropdown-toggle::after {
      margin-left: 7px;
      vertical-align: middle;
    }

    @media (min-width: 992px) {
      .navbar .dropdown {
        position: relative;
      }

      .navbar .dropdown-menu {
        display: none;
        top: 100%;
        left: 0;
        margin-top: 0;
      }

      .navbar .dropdown:hover > .dropdown-menu {
        display: block;
      }

      .navbar .dropdown:hover > .dropdown-toggle {
        color: var(--healthcare-teal);
      }
    }

    .hero {
      position: relative;
      background:
        linear-gradient(
          90deg,
          rgba(5, 43, 79, 0.70) 0%,
          rgba(7, 55, 99, 0.52) 48%,
          rgba(11, 95, 158, 0.22) 100%
        ),
        url('/assets/images/gls-hero-office.png') center center / cover no-repeat;
      color: var(--white);
      padding: 125px 0 115px;
      overflow: hidden;
    }

    .hero-content {
      position: relative;
      z-index: 2;
    }

    .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.18);
      color: var(--white);
      padding: 8px 15px;
      border-radius: 50px;
      font-size: 14px;
      font-weight: 800;
      margin-bottom: 20px;
      border: 1px solid rgba(255, 255, 255, 0.28);
      backdrop-filter: blur(4px);
    }

    .hero-badge i { color: #7FF2F2; }

    .hero h1 {
      font-size: 56px;
      font-weight: 800;
      line-height: 1.12;
      letter-spacing: -1.2px;
      max-width: 820px;
      margin-bottom: 0;
      color: var(--white);
      text-shadow: 0 4px 20px rgba(0, 0, 0, 0.28);
    }

    .hero p {
      font-size: 19px;
      max-width: 720px;
      color: #F0FBFC;
      margin-top: 22px;
      margin-bottom: 0;
      text-shadow: 0 3px 14px rgba(0, 0, 0, 0.22);
    }

    .btn-primary-custom {
      background: var(--healthcare-teal);
      border: 2px solid var(--healthcare-teal);
      color: var(--white);
      padding: 13px 28px;
      border-radius: 8px;
      font-weight: 800;
      display: inline-block;
      transition: 0.3s ease;
      box-shadow: 0 10px 24px rgba(0, 166, 166, 0.23);
    }

    .btn-primary-custom:hover {
      background: var(--teal-dark);
      border-color: var(--teal-dark);
      color: var(--white);
      transform: translateY(-2px);
    }

    .btn-outline-custom {
      border: 2px solid rgba(255, 255, 255, 0.92);
      color: var(--white);
      padding: 13px 28px;
      border-radius: 8px;
      font-weight: 800;
      display: inline-block;
      transition: 0.3s ease;
      background: rgba(255, 255, 255, 0.06);
      backdrop-filter: blur(4px);
    }

    .btn-outline-custom:hover {
      background: var(--white);
      color: var(--primary-navy);
      transform: translateY(-2px);
    }

    .hero-card {
      background: rgba(255, 255, 255, 0.94);
      color: var(--text-dark);
      border-radius: 24px;
      padding: 36px;
      box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
      position: relative;
      z-index: 2;
      border: 1px solid rgba(255, 255, 255, 0.50);
      backdrop-filter: blur(4px);
    }

    .hero-card h4 {
      color: var(--primary-navy);
      font-weight: 800;
      margin-bottom: 22px;
      letter-spacing: -0.3px;
    }

    .hero-service-row {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      padding: 16px 0;
      border-bottom: 1px solid var(--border-soft);
    }

    .hero-service-row:last-child {
      border-bottom: 0;
      padding-bottom: 0;
    }

    .hero-service-row i {
      width: 44px;
      height: 44px;
      background: var(--soft-blue);
      color: var(--healthcare-teal);
      border-radius: 13px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      font-size: 18px;
    }

    .hero-service-row strong {
      color: var(--primary-navy);
      display: block;
      font-size: 16px;
      margin-bottom: 2px;
    }

    .hero-service-row span {
      color: var(--text-muted);
      font-size: 14.5px;
      display: block;
      line-height: 1.55;
    }

    .hero-points {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
      margin-top: 28px;
    }

    .hero-point {
      background: rgba(255, 255, 255, 0.16);
      border: 1px solid rgba(255, 255, 255, 0.28);
      border-radius: 10px;
      padding: 10px 14px;
      color: var(--white);
      font-size: 14px;
      font-weight: 800;
      backdrop-filter: blur(4px);
    }

    .hero-point i {
      color: #7FF2F2;
      margin-right: 6px;
    }

    .section-padding { padding: 92px 0; }
    .light-section { background: var(--light-bg); }
    .soft-section { background: var(--soft-blue); }

    .eyebrow {
      color: var(--healthcare-teal);
      font-weight: 800;
      font-size: 13px;
      text-transform: uppercase;
      letter-spacing: 1.4px;
      margin-bottom: 10px;
      display: block;
    }

    .section-title {
      font-weight: 800;
      color: var(--primary-navy);
      margin-bottom: 16px;
      letter-spacing: -0.5px;
      line-height: 1.25;
    }

    .section-subtitle {
      color: var(--text-muted);
      max-width: 780px;
      margin: 0 auto;
      font-size: 17px;
    }

    .about-card,
    .service-card,
    .why-card,
    .contact-card,
    .trust-card,
    .detail-service-card {
      background: var(--white);
      box-shadow: var(--shadow-soft);
      border: 1px solid rgba(7, 55, 99, 0.06);
    }

    .about-card {
      border-radius: 22px;
      padding: 36px;
      height: 100%;
    }

    .check-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .check-list li {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 16px;
      color: var(--text-dark);
      font-size: 15.8px;
    }

    .check-list li:last-child { margin-bottom: 0; }

    .check-list i {
      color: var(--healthcare-teal);
      margin-top: 5px;
    }

    .trust-card {
      border-radius: 18px;
      padding: 28px;
      height: 100%;
      transition: 0.3s ease;
    }

    .trust-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-medium);
    }

    .trust-card i {
      width: 54px;
      height: 54px;
      background: var(--soft-blue);
      color: var(--medical-blue);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 15px;
      font-size: 22px;
      margin-bottom: 18px;
    }

    .trust-card h5 {
      color: var(--primary-navy);
      font-weight: 800;
      margin-bottom: 10px;
    }

    .service-card {
      border-radius: 22px;
      padding: 36px;
      height: 100%;
      transition: 0.3s ease;
      position: relative;
      overflow: hidden;
    }

    .service-card::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 5px;
      background: linear-gradient(90deg, var(--healthcare-teal), var(--medical-blue), var(--primary-navy));
    }

    .service-card:hover {
      transform: translateY(-6px);
      box-shadow: var(--shadow-medium);
    }

    .service-icon {
      width: 70px;
      height: 70px;
      background: var(--soft-blue);
      color: var(--healthcare-teal);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 29px;
      border-radius: 19px;
      margin-bottom: 22px;
    }

    .service-card h3 {
      color: var(--primary-navy);
      font-weight: 800;
      margin-bottom: 12px;
    }

    .blue-note {
      background: linear-gradient(135deg, rgba(11, 95, 158, 0.10), rgba(0, 166, 166, 0.10));
      border-left: 4px solid var(--healthcare-teal);
      padding: 18px 20px;
      border-radius: 12px;
      color: var(--text-dark);
      font-weight: 700;
      margin-top: 24px;
    }

    .detail-service-card {
      border-radius: 20px;
      padding: 30px;
      height: 100%;
      transition: 0.3s ease;
      scroll-margin-top: 120px;
    }

    .detail-service-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-medium);
    }

    .detail-service-card i {
      width: 56px;
      height: 56px;
      background: var(--soft-blue);
      color: var(--healthcare-teal);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 16px;
      font-size: 24px;
      margin-bottom: 18px;
    }

    .detail-service-card h5 {
      color: var(--primary-navy);
      font-weight: 800;
      margin-bottom: 10px;
    }

    .why-card {
      border-radius: 18px;
      padding: 31px 22px;
      text-align: center;
      height: 100%;
      transition: 0.3s ease;
    }

    .why-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-medium);
    }

    .why-card i {
      width: 60px;
      height: 60px;
      background: var(--soft-blue);
      color: var(--healthcare-teal);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 17px;
      font-size: 24px;
      margin-bottom: 18px;
    }

    .why-card h6 {
      color: var(--primary-navy);
      font-weight: 800;
    }

    .why-card p { font-size: 14.5px; }

    .process-strip {
      background: linear-gradient(135deg, var(--primary-navy), var(--deep-navy));
      color: var(--white);
      border-radius: 25px;
      padding: 40px;
      box-shadow: 0 18px 44px rgba(7, 55, 99, 0.18);
    }

    .process-item {
      display: flex;
      gap: 14px;
      align-items: flex-start;
    }

    .process-number {
      width: 40px;
      height: 40px;
      background: var(--healthcare-teal);
      color: var(--white);
      border-radius: 50%;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-weight: 800;
      flex-shrink: 0;
    }

    .process-item h6 {
      font-weight: 800;
      margin-bottom: 5px;
      color: var(--white);
    }

    .process-item p {
      margin-bottom: 0;
      color: #EAF6F8;
      font-size: 14px;
    }

    .contact-section { background: var(--light-bg); }

    .contact-card {
      border-radius: 22px;
      padding: 38px;
      height: 100%;
    }

    .contact-info-line {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      margin-bottom: 18px;
    }

    .contact-info-line i {
      width: 40px;
      height: 40px;
      background: var(--soft-blue);
      color: var(--healthcare-teal);
      border-radius: 11px;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      flex-shrink: 0;
    }

    .contact-info-line strong {
      display: block;
      color: var(--primary-navy);
    }

    .contact-info-line span,
    .contact-info-line a {
      color: var(--text-muted);
      font-size: 15px;
    }

    .form-label {
      font-weight: 800;
      color: var(--primary-navy);
      font-size: 14px;
    }

    .form-control,
    .form-select {
      padding: 13px 14px;
      border-radius: 9px;
      border: 1px solid #D8E3EA;
      font-size: 15px;
      color: var(--text-dark);
    }

    .form-control:focus,
    .form-select:focus {
      border-color: var(--healthcare-teal);
      box-shadow: 0 0 0 0.2rem rgba(0, 166, 166, 0.14);
    }

    .cta-section {
      background:
        radial-gradient(circle at 15% 20%, rgba(0, 166, 166, 0.20) 0%, transparent 32%),
        linear-gradient(135deg, var(--primary-navy), var(--deep-navy));
      color: var(--white);
      padding: 78px 0;
    }

    .cta-section p {
      color: #EAF6F8;
      font-size: 17px;
    }

    

    .text-primary { color: var(--primary-navy) !important; }

    @media (max-width: 991px) {
      .hero {
        padding: 88px 0;
        background:
          linear-gradient(
            90deg,
            rgba(5, 43, 79, 0.78) 0%,
            rgba(5, 43, 79, 0.60) 100%
          ),
          url('assets/images/gls-hero-office.jpg') center center / cover no-repeat;
      }

      .hero h1 { font-size: 42px; }
      .hero-card { margin-top: 38px; }

      .navbar-collapse { padding-top: 20px; }

      .navbar-nav .nav-link {
        margin-left: 0;
        padding: 12px 0;
      }

      .navbar-nav .dropdown-menu {
        display: none;
        position: static;
        float: none;
        box-shadow: none;
        border-radius: 12px;
        margin-top: 6px;
        margin-bottom: 12px;
        padding: 10px;
        background: var(--light-bg);
      }

      .navbar-nav .dropdown.open > .dropdown-menu {
        display: block;
      }

      .dropdown-item { padding: 11px 14px; }

      .nav-contact-btn {
        display: inline-block;
        margin-left: 0;
        margin-top: 8px;
        padding: 10px 16px !important;
      }

      .process-item { margin-bottom: 22px; }
    }

    @media (max-width: 767px) {
      .top-bar { text-align: center; }
      .top-bar .container { gap: 6px; }

      .navbar-brand { font-size: 18px; }
      .brand-icon { width: 36px; height: 36px; }

      .hero {
        text-align: center;
        padding: 72px 0;
      }

      .hero h1 { font-size: 34px; }
      .hero p { font-size: 16px; }
      .hero-points { justify-content: center; }

      .btn-primary-custom,
      .btn-outline-custom {
        width: 100%;
        margin-bottom: 10px;
      }

      .section-padding { padding: 66px 0; }

      .about-card,
      .service-card,
      .contact-card {
        padding: 28px;
      }

      .process-strip { padding: 30px; }

      .footer { text-align: center; }
      .footer-links { margin-top: 18px; }
      .footer-links a { margin: 0 6px; }
    }
    

    /* Enhanced Footer */
.site-footer {
  background:
    radial-gradient(circle at 12% 20%, rgba(0, 166, 166, 0.16) 0%, transparent 30%),
    linear-gradient(135deg, var(--deep-navy), #031F3A);
  color: #DDEAF0;
  font-size: 15px;
}

.footer-main {
  padding: 58px 0 42px;
}

.footer-brand p {
  color: #CFE0E8;
  margin: 18px 0 22px;
  max-width: 420px;
  font-size: 15px;
  line-height: 1.75;
}

.footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--white);
  font-weight: 800;
  font-size: 21px;
  letter-spacing: -0.3px;
}

.footer-logo:hover {
  color: var(--white);
}

.footer-logo-icon {
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: linear-gradient(135deg, var(--healthcare-teal), var(--medical-blue));
  color: var(--white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 22px rgba(0, 166, 166, 0.25);
}

.site-footer h5 {
  color: var(--white);
  font-weight: 800;
  font-size: 17px;
  margin-bottom: 18px;
  position: relative;
  padding-bottom: 11px;
}

.site-footer h5::after {
  content: "";
  width: 42px;
  height: 3px;
  background: var(--healthcare-teal);
  position: absolute;
  left: 0;
  bottom: 0;
  border-radius: 20px;
}

.footer-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-menu li {
  margin-bottom: 10px;
}

.footer-menu a,
.footer-contact-line a,
.footer-bottom a {
  color: #CFE0E8;
  text-decoration: none;
  transition: 0.25s ease;
}

.footer-menu a:hover,
.footer-contact-line a:hover,
.footer-bottom a:hover {
  color: var(--healthcare-teal);
}

.footer-contact-line {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 11px;
  color: #CFE0E8;
}

.footer-contact-line i {
  color: var(--healthcare-teal);
  width: 18px;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  padding: 20px 0;
}

.footer-bottom p {
  color: #AFC4CF;
  font-size: 14px;
}

.footer-bottom-links a {
  margin-left: 18px;
  font-size: 14px;
  font-weight: 600;
}

@media (max-width: 991px) {
  .footer-main {
    padding: 48px 0 34px;
  }

  .footer-bottom-links a {
    margin-left: 0;
    margin-right: 16px;
  }
}

@media (max-width: 767px) {
  .site-footer {
    text-align: left;
  }

  .footer-main {
    padding: 42px 0 28px;
  }

  .footer-logo {
    font-size: 19px;
  }

  .footer-bottom {
    text-align: center;
  }

  .footer-bottom-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px 16px;
  }

  .footer-bottom-links a {
    margin: 0;
  }

  .site-footer h5 {
    margin-top: 10px;
  }
}

    
    /* Inner Legal Pages */
.inner-hero {
  background: linear-gradient(135deg, var(--deep-navy), var(--primary-navy));
  color: var(--white);
  padding: 110px 0 115px;
}

.inner-hero h1 {
  font-size: 52px;
  font-weight: 800;
  color: var(--white);
  margin-bottom: 28px;
  letter-spacing: 1px;
}

.inner-hero p {
  max-width: 1060px;
  color: #EAF6F8;
  font-size: 22px;
  line-height: 1.8;
  margin-bottom: 0;
}

.legal-content-wrap {
  background: var(--light-bg);
  padding: 0 0 90px;
}

.legal-card {
  background: var(--white);
  border-radius: 20px;
  padding: 46px;
  box-shadow: var(--shadow-soft);
  margin-top: -45px;
  position: relative;
  z-index: 2;
}

.legal-card h2 {
  color: var(--primary-navy);
  font-size: 25px;
  font-weight: 800;
  margin-top: 38px;
  margin-bottom: 14px;
}

.legal-card h2:first-child {
  margin-top: 0;
}

.legal-card p {
  color: var(--text-muted);
  font-size: 16px;
  margin-bottom: 15px;
}

.legal-card ul {
  margin-top: 16px;
  margin-bottom: 22px;
}

.legal-card li {
  color: var(--text-muted);
  margin-bottom: 10px;
  font-size: 16px;
}

.legal-note {
  background: linear-gradient(135deg, rgba(11, 95, 158, 0.10), rgba(0, 166, 166, 0.10));
  border-left: 5px solid var(--healthcare-teal);
  padding: 20px 22px;
  border-radius: 13px;
  margin: 24px 0;
  color: var(--text-dark);
}

.legal-note p {
  margin-bottom: 0;
  color: var(--text-dark);
  font-weight: 700;
}

.legal-card a {
  color: var(--healthcare-teal);
  font-weight: 700;
  text-decoration: none;
}

.legal-card a:hover {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .inner-hero {
    padding: 72px 0 90px;
  }

  .inner-hero h1 {
    font-size: 36px;
  }

  .inner-hero p {
    font-size: 17px;
  }

  .legal-card {
    padding: 28px;
    margin-top: -35px;
  }

  .legal-card h2 {
    font-size: 22px;
  }
}


/* Contact Inner Page */
.contact-page-wrap {
  background: var(--light-bg);
  padding: 0 0 90px;
}

.contact-page-card {
  background: var(--white);
  border-radius: 22px;
  padding: 42px;
  box-shadow: var(--shadow-soft);
  margin-top: -45px;
  position: relative;
  z-index: 2;
}

.contact-feature-box {
  background: var(--white);
  border-radius: 18px;
  padding: 28px;
  box-shadow: var(--shadow-soft);
  border: 1px solid rgba(7, 55, 99, 0.06);
  height: 100%;
}

.contact-feature-box i {
  width: 54px;
  height: 54px;
  background: var(--soft-blue);
  color: var(--healthcare-teal);
  border-radius: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  margin-bottom: 18px;
}

.contact-feature-box h5 {
  color: var(--primary-navy);
  font-weight: 800;
  margin-bottom: 10px;
}

.contact-feature-box p {
  margin-bottom: 0;
  font-size: 15px;
}

.contact-page-card h2,
.contact-page-card h3 {
  color: var(--primary-navy);
  font-weight: 800;
}

.contact-form-note {
  background: linear-gradient(135deg, rgba(11, 95, 158, 0.08), rgba(0, 166, 166, 0.08));
  border-left: 4px solid var(--healthcare-teal);
  padding: 16px 18px;
  border-radius: 12px;
  margin-top: 20px;
}

.contact-form-note p {
  margin-bottom: 0;
  font-size: 14px;
  color: var(--text-dark);
}

.sms-consent-box {
  background: var(--light-bg);
  border: 1px solid var(--border-soft);
  border-radius: 14px;
  padding: 16px;
}

.sms-consent-box .form-check-label {
  font-size: 13.5px;
  color: var(--text-muted);
  line-height: 1.65;
}

.sms-consent-box a {
  color: var(--healthcare-teal);
  font-weight: 700;
}

@media (max-width: 767px) {
  .contact-page-card {
    padding: 28px;
    margin-top: -35px;
  }

  .contact-feature-box {
    padding: 24px;
  }
}
.footer-contact-line span {
  color: #CFE0E8;
  font-size: 15px;
  line-height: 1.7;
}

.contact-info-line span {
  display: block;
  color: var(--text-muted);
  font-size: 15px;
  line-height: 1.7;
}