:root {
      --fc-navy-primary: #091c36;
      --fc-navy-dark: #051122;
      --fc-navy-light: #112a52;
      --fc-gold-primary: #d4a838;
      --fc-gold-dark: #b88a22;
      --fc-gold-light: #fcf6e8;
      --fc-gold-border: rgba(212, 168, 56, 0.35);
      --fc-slate-bg: #f5f8fc;
      --fc-text-dark: #1e293b;
      --fc-text-muted: #64748b;
      --fc-card-border: #e2e8f0;
      --fc-shadow-card: 0 12px 35px -8px rgba(9, 28, 54, 0.08), 0 4px 12px -2px rgba(9, 28, 54, 0.04);
      --fc-shadow-hover: 0 20px 40px -10px rgba(9, 28, 54, 0.14);
    }

    /*body {*/
    /*  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;*/
    /*  background-color: var(--fc-slate-bg);*/
    /*  color: var(--fc-text-dark);*/
    /*  overflow-x: hidden;*/
    /*  min-height: 100vh;*/
    /*  display: flex;*/
    /*  flex-direction: column;*/
    /*}*/
    
    .fw-bold{
        font-weight:bold;
    }

    .font-serif-college {
      font-family: 'Cinzel', Georgia, serif;
    }

    /* Top Info Bar */
    .top-info-bar {
      background-color: var(--fc-navy-dark);
      color: #cbd5e1;
      font-size: 0.78rem;
      border-bottom: 1px solid rgba(212, 168, 56, 0.25);
    }
    .top-info-bar a {
      color: #cbd5e1;
      text-decoration: none;
      transition: color 0.2s ease;
    }
    .top-info-bar a:hover {
      color: var(--fc-gold-primary);
    }

    /* Header & Branding */
    .college-header {
      background: #ffffff;
      border-bottom: 1px solid rgba(226, 232, 240, 0.9);
      box-shadow: 0 2px 12px rgba(9, 28, 54, 0.04);
      position: sticky;
      top: 0;
      z-index: 1020;
    }

    .college-logo-badge {
      width: 46px;
      height: 46px;
      border-radius: 12px;
      background: linear-gradient(135deg, var(--fc-navy-primary), var(--fc-navy-light));
      color: var(--fc-gold-primary);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 10px rgba(9, 28, 54, 0.2);
      border: 1px solid var(--fc-gold-border);
    }

    .affiliation-tag {
      font-size: 0.68rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font-weight: 700;
      color: var(--fc-gold-dark);
      background-color: var(--fc-gold-light);
      padding: 2px 8px;
      border-radius: 4px;
      border: 1px solid var(--fc-gold-border);
      display: inline-block;
    }

    /* Hero Banner Area */
    .hero-strip {
      background: radial-gradient(circle at 80% 20%, rgba(212, 168, 56, 0.12) 0%, transparent 40%),
                  linear-gradient(135deg, var(--fc-navy-primary) 0%, var(--fc-navy-light) 100%);
      color: #ffffff;
      padding: 2.2rem 0;
      border-bottom: 3px solid var(--fc-gold-primary);
    }

    /* Step Indicator Container */
    .stepper-wrapper {
      position: relative;
      margin-top: -1.8rem;
      z-index: 10;
    }

    .stepper-card {
      background: #ffffff;
      border-radius: 18px;
      box-shadow: var(--fc-shadow-card);
      border: 1px solid rgba(226, 232, 240, 0.95);
      padding: 1.25rem 1.5rem;
    }

    .step-track-line {
      position: absolute;
      top: 36px;
      left: 10%;
      right: 10%;
      height: 4px;
      background-color: #e2e8f0;
      z-index: 1;
      border-radius: 999px;
    }

    .step-track-progress {
      position: absolute;
      top: 36px;
      left: 10%;
      height: 4px;
      background: linear-gradient(90deg, var(--fc-gold-primary), var(--fc-gold-dark));
      z-index: 2;
      border-radius: 999px;
      transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      width: 0%;
    }

    .step-node {
      position: relative;
      z-index: 3;
      text-align: center;
      cursor: pointer;
      flex: 0.2;
      top: 10px;
    }

    .step-circle {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background-color: #ffffff;
      border: 2px solid #cbd5e1;
      color: #64748b;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-weight: 700;
      font-size: 0.95rem;
      transition: all 0.3s ease;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }

    .step-node.active .step-circle {
      background: linear-gradient(135deg, var(--fc-navy-primary), var(--fc-navy-light));
      border-color: var(--fc-gold-primary);
      color: var(--fc-gold-primary);
      box-shadow: 0 0 0 5px rgba(212, 168, 56, 0.25), 0 6px 14px rgba(9, 28, 54, 0.2);
      transform: scale(1.06);
    }

    .step-node.completed .step-circle {
      background-color: #10b981;
      border-color: #10b981;
      color: #ffffff;
      box-shadow: 0 3px 10px rgba(16, 185, 129, 0.3);
    }

    .step-label {
      font-size: 0.78rem;
      font-weight: 600;
      color: #64748b;
      margin-top: 0.5rem;
      transition: color 0.3s ease;
      display: block;
    }

    .step-node.active .step-label {
      color: var(--fc-navy-primary);
      font-weight: 700;
    }

    .step-node.completed .step-label {
      color: #0f766e;
    }

    /* Main Form Container */
    .form-main-card {
      background: #ffffff;
      border-radius: 20px;
      box-shadow: var(--fc-shadow-card);
      border: 1px solid var(--fc-card-border);
      overflow: hidden;
      transition: all 0.3s ease;
    }

    .section-headline {
      border-bottom: 1px solid #f1f5f9;
      padding-bottom: 1rem;
      margin-bottom: 1.5rem;
    }

    .section-title {
      font-size: 1.25rem;
      font-weight: 700;
      color: var(--fc-navy-primary);
      display: flex;
      align-items: center;
      gap: 0.5rem;
      margin-bottom: 0.2rem;
    }

    /* Floating Labels & Form Elements */
    .form-label {
      font-size: 0.8rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      color: #334155;
      margin-bottom: 0.35rem;
    }

    .form-control, .form-select {
      border-radius: 10px;
      border: 1.5px solid #cbd5e1;
      padding: 0.65rem 0.95rem;
      font-size: 0.92rem;
      transition: border-color 0.2s ease, box-shadow 0.2s ease;
      color: var(--fc-text-dark);
    }

    .form-control:focus, .form-select:focus {
      border-color: var(--fc-navy-primary);
      box-shadow: 0 0 0 4px rgba(9, 28, 54, 0.1);
      outline: none;
    }

    .input-group-text {
      background-color: #f8fafc;
      border: 1.5px solid #cbd5e1;
      border-radius: 10px 0 0 10px;
      color: #475569;
      font-weight: 600;
      font-size: 0.88rem;
    }

    .input-group .form-control {
      border-radius: 0 10px 10px 0;
    }

    /* Program Selection Cards */
    .program-select-radio, .intake-select-radio, .gender-radio {
      display: none;
    }

    .program-card-box {
      border: 2px solid #e2e8f0;
      border-radius: 16px;
      padding: 1.35rem;
      cursor: pointer;
      transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
      background-color: #ffffff;
      height: 100%;
      position: relative;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .program-card-box:hover {
      border-color: rgba(212, 168, 56, 0.7);
      transform: translateY(-3px);
      box-shadow: var(--fc-shadow-hover);
    }

    .program-select-radio:checked + .program-card-box {
      border-color: var(--fc-gold-primary);
      background: linear-gradient(180deg, var(--fc-gold-light) 0%, #ffffff 45%);
      box-shadow: 0 0 0 3px rgba(212, 168, 56, 0.25), var(--fc-shadow-card);
    }

    .program-icon-badge {
      width: 48px;
      height: 48px;
      border-radius: 12px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 1.3rem;
      margin-bottom: 0.8rem;
    }

    .badge-cyber {
      background: rgba(14, 116, 144, 0.12);
      color: #0e7490;
    }

    .badge-hospitality {
      background: rgba(184, 138, 34, 0.12);
      color: #b88a22;
    }

    .program-tag {
      font-size: 0.72rem;
      background-color: #f1f5f9;
      color: #334155;
      padding: 3px 8px;
      border-radius: 6px;
      display: inline-block;
      margin: 2px 2px 2px 0;
      font-weight: 500;
    }

    /* Intake Selectors */
    .intake-card-box {
      border: 1.5px solid #e2e8f0;
      border-radius: 12px;
      padding: 0.95rem 1.15rem;
      cursor: pointer;
      transition: all 0.2s ease;
      background: #ffffff;
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .intake-card-box:hover {
      border-color: var(--fc-navy-primary);
      background-color: #f8fafc;
    }

    .intake-select-radio:checked + .intake-card-box {
      border-color: var(--fc-navy-primary);
      background: #f1f5f9;
      box-shadow: 0 0 0 2px var(--fc-navy-primary);
    }

    /* Gender Pill Group */
    .gender-pill-label {
      border: 1.5px solid #cbd5e1;
      border-radius: 10px;
      padding: 0.55rem 0.9rem;
      font-size: 0.86rem;
      font-weight: 600;
      color: #475569;
      cursor: pointer;
      text-align: center;
      transition: all 0.2s ease;
      width: 100%;
      background: #ffffff;
    }

    .gender-pill-label:hover {
      background-color: #f8fafc;
      border-color: #94a3b8;
    }

    .gender-radio:checked + .gender-pill-label {
      background-color: var(--fc-navy-primary);
      border-color: var(--fc-navy-primary);
      color: #ffffff;
      box-shadow: 0 3px 8px rgba(9, 28, 54, 0.2);
    }

    /* Action Buttons */
    .btn-forbes-primary {
      background: linear-gradient(135deg, var(--fc-navy-primary), var(--fc-navy-light));
      color: #ffffff;
      font-weight: 700;
      font-size: 0.92rem;
      padding: 0.72rem 1.8rem;
      border-radius: 10px;
      border: none;
      box-shadow: 0 4px 12px rgba(9, 28, 54, 0.2);
      transition: all 0.25s ease;
    }

    .btn-forbes-primary:hover {
      background: linear-gradient(135deg, var(--fc-navy-dark), var(--fc-navy-primary));
      color: var(--fc-gold-primary);
      transform: translateY(-1px);
      box-shadow: 0 6px 16px rgba(9, 28, 54, 0.25);
    }

    .btn-forbes-gold {
      background: linear-gradient(135deg, var(--fc-gold-primary), var(--fc-gold-dark));
      color: var(--fc-navy-dark);
      font-weight: 800;
      font-size: 0.95rem;
      padding: 0.75rem 2.2rem;
      border-radius: 10px;
      border: none;
      box-shadow: 0 4px 14px rgba(212, 168, 56, 0.35);
      transition: all 0.25s ease;
    }

    .btn-forbes-gold:hover {
      background: linear-gradient(135deg, #e5b945, var(--fc-gold-primary));
      color: var(--fc-navy-primary);
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(212, 168, 56, 0.45);
    }

    .btn-forbes-outline {
      background: #ffffff;
      color: #475569;
      font-weight: 600;
      font-size: 0.92rem;
      padding: 0.72rem 1.5rem;
      border-radius: 10px;
      border: 1.5px solid #cbd5e1;
      transition: all 0.2s ease;
    }

    .btn-forbes-outline:hover {
      background-color: #f1f5f9;
      color: var(--fc-navy-primary);
      border-color: #94a3b8;
    }

    /* Live Summary Card (Step 4) */
    .summary-card {
      background: #f8fafc;
      border-radius: 14px;
      border: 1px solid #e2e8f0;
      padding: 1.25rem 1.5rem;
    }

    .summary-item-label {
      font-size: 0.75rem;
      text-transform: uppercase;
      font-weight: 700;
      color: #64748b;
      margin-bottom: 2px;
    }

    .summary-item-value {
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--fc-navy-primary);
      word-break: break-word;
    }

    /* Success Receipt Modal/Card */
    .receipt-box {
      border: 2px dashed #cbd5e1;
      border-radius: 14px;
      padding: 1.5rem;
      background-color: #fbfcfe;
    }

    /* Responsive adjustments */
    @media (max-width: 767.98px) {
      .step-label {
        font-size: 0.68rem;
      }
      .step-circle {
        width: 36px;
        height: 36px;
        font-size: 0.85rem;
      }
      .step-track-line, .step-track-progress {
        top: 30px;
      }
      .hero-strip {
        padding: 1.6rem 0;
      }
    }

    /*@media print {*/
    /*  body * {*/
    /*    visibility: hidden;*/
    /*  }*/
    /*  #printableReceipt, #printableReceipt * {*/
    /*    visibility: visible;*/
    /*  }*/
    /*  #printableReceipt {*/
    /*    position: absolute;*/
    /*    left: 0;*/
    /*    top: 0;*/
    /*    width: 100%;*/
    /*    margin: 0;*/
    /*    padding: 20px;*/
    /*    background: #ffffff !important;*/
    /*  }*/
    /*}*/
 
 
 
 
 /* ================= PRINT STYLES ================= */
@media print {
  /* 1. Restrict body height to exactly 1 page to kill blank pages */
  html, body {
    height: 100vh !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  /* 2. Hide everything by default */
  body * {
    visibility: hidden;
  }

  /* 3. CRITICAL: Completely remove the main form & layout from the print flow so it doesn't take up invisible space */
  form#forbesAdmissionForm, 
  header, 
  footer, 
  main, 
  .header-banner {
    display: none !important;
  }

  /* 4. Hide Facebook plugins and action buttons */
  #fb-root,
  .fb_dialog,
  .fb-customerchat,
  .fb_dialog_mobile,
  .fb-root,
  iframe[name*="fb_"],
  .d-print-none {
    display: none !important;
  }

  /* 5. Strip Bootstrap modal fixed overlay and backdrops */
  .modal,
  .modal-dialog,
  .modal-content,
  .modal-body {
    position: static !important;
    display: block !important;
    overflow: visible !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .modal-backdrop {
    display: none !important;
  }

  /* 6. Display ONLY #printableReceipt and its children */
  #printableReceipt,
  #printableReceipt * {
    visibility: visible !important;
  }

  /* 7. Position the receipt perfectly at the top left of the first page */
  #printableReceipt {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    background: #ffffff !important;
    color: #000000 !important;
  }

  /* Force borders and colors to print */
  .receipt-box {
    border: 1px solid #dee2e6 !important;
    padding: 15px !important;
    border-radius: 8px !important;
  }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Remove default browser print headers/footers */
  @page {
    margin: 1cm;
    size: auto;
  }
}