
    body {
      min-height: 100vh;
      background:
        radial-gradient(circle at top left, rgba(13,110,253,.18), transparent 35%),
        linear-gradient(135deg, #f8fafc, #e2e8f0);
      color: #1e2b6f;
    }

    .booking-wrapper {
      max-width: 1080px;
      margin: 0 auto;
      padding: 32px 14px;
    }

    .booking-hero {
      background: linear-gradient(135deg, #1e2b6f, #1e2b6f);
      color: #fff;
      border-radius: 22px;
      padding: 28px;
      box-shadow: 0 14px 36px rgba(15,23,42,.18);
      margin-bottom: 22px;
    }

    .booking-hero .badge {
      background: rgba(255,255,255,.12);
      border: 1px solid rgba(255,255,255,.22);
      color: #fff;
    }

    .booking-card {
      border: 0;
      border-radius: 22px;
      box-shadow: 0 14px 34px rgba(15,23,42,.10);
      overflow: hidden;
    }

    .section-title {
      display: flex;
      align-items: center;
      gap: 8px;
      font-weight: 700;
      color: #0f172a;
      margin-bottom: 14px;
      padding-bottom: 10px;
      border-bottom: 1px solid #e5e7eb;
    }

    .form-label {
      font-weight: 600;
      color: #334155;
      font-size: .92rem;
    }

    .required::after {
      content: " *";
      color: #dc3545;
    }

    .total-box {
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      border-radius: 16px;
      padding: 16px;
    }

    .total-value {
      font-size: 1.45rem;
      font-weight: 800;
      color: #0f172a;
    }

    .footer-note {
      color: #64748b;
      font-size: .88rem;
    }

    .lang-switch .btn {
      min-width: 70px;
      font-weight: 700;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
    }

    .small-help {
      color: #64748b;
      font-size: .82rem;
    }

    @media (max-width: 576px) {
      .booking-wrapper {
        padding: 18px 10px;
      }

      .booking-hero {
        padding: 22px;
        border-radius: 18px;
      }

      .booking-card .card-body {
        padding: 22px !important;
      }

      .lang-switch .btn {
        min-width: auto;
      }
    }