/* =============================================================
   PFT International Students Page Styles
   File: pft-international.css
   Target: add to end of custom+added.css
   ============================================================= */

/* Fix text-lead height overflow */
.text-lead {
  height: auto !important;
  overflow: visible !important;
}

/* List spacing fix — desktop only */
@media (min-width: 992px) {
  .inner-pages-style ol > li,
  .inner-pages-style ul:not([class]) > li {
    margin-bottom: 18px;
  }
  .inner-pages-style ol ol > li,
  .inner-pages-style ol ul > li,
  .inner-pages-style ul:not([class]) ul > li {
    margin-bottom: 10px;
  }
}

/* ---- Hero: Special Offer Price Block ---- */
.pft-hero-offer {
  margin-top: 30px;
  margin-bottom: 20px;
  background: rgba(255, 255, 255, 0.95);
  padding: 20px 30px;
  display: inline-block;
  border-radius: 10px;
  color: #111;
  font-family: Arial, sans-serif;
  max-width: 90%;
  box-sizing: border-box;
}
.pft-hero-offer__badge {
  font-size: 14px;
  font-weight: bold;
  color: #ff5722;
  text-transform: uppercase;
  margin-bottom: 6px;
  text-align: center;
}
.pft-hero-offer__subtitle {
  font-size: 16px;
  margin-bottom: 12px;
  text-align: center;
}
.pft-hero-offer__prices {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
.pft-hero-offer__current {
  font-size: 32px;
  font-weight: bold;
  color: #ff5722;
  margin-right: 12px;
}
.pft-hero-offer__current sup {
  font-size: 16px;
}
.pft-hero-offer__old {
  font-size: 20px;
  text-decoration: line-through;
  color: #888;
}

/* ---- Hero: CTA Buttons Row ---- */
.pft-hero-buttons {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pft-hero-btn-primary {
  display: inline-block;
  background: #fbbf24;
  color: white !important;
  padding: 12px 28px;
  font-size: 18px;
  font-weight: bold;
  border-radius: 8px;
  text-decoration: none !important;
  margin-right: 16px;
  margin-bottom: 10px;
}
.pft-hero-btn-primary:hover {
  background: #e0a800;
  color: white !important;
  text-decoration: none !important;
}
.pft-hero-btn-outline {
  display: inline-block;
  background: transparent;
  color: white !important;
  padding: 12px 28px;
  font-size: 18px;
  font-weight: bold;
  border-radius: 8px;
  text-decoration: none !important;
  border: 2px solid rgba(255, 255, 255, 0.8);
  margin-right: 16px;
  margin-bottom: 10px;
}
.pft-hero-btn-outline:hover {
  background: #111;
  color: white !important;
  text-decoration: none !important;
}

/* ---- Hero: Image Float ---- */
.pft-hero-img {
  float: right;
  margin-left: 25px;
  margin-bottom: 20px;
}

/* ---- Spacer ---- */
.pft-spacer-40 {
  margin-bottom: 40px;
}

/* ---- Breadcrumbs ---- */
.pft-breadcrumbs {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 15px;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
}
.inner-pages-style .pft-breadcrumbs a {
  color: #007bff !important;
  text-decoration: none !important;
  white-space: nowrap;
}
.inner-pages-style .pft-breadcrumbs a:hover {
  color: #0056b3 !important;
  text-decoration: underline !important;
}
.pft-breadcrumbs__sep {
  color: #666;
  margin: 0 6px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-breadcrumbs__current {
  color: #000;
  white-space: nowrap;
}

/* ---- Table of Contents ---- */
.pft-toc {
  background: #f2f5f8;
  border-left: 4px solid #FBCF4D;
  padding: 20px 25px;
  margin-bottom: 30px;
  border-radius: 0 8px 8px 0;
}
.pft-toc-title {
  font-family: Reforma, sans-serif;
  font-size: 40px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 12px;
  color: #1C1C1C;
}
/* Override site list styles inside TOC */
.inner-pages-style .pft-toc ol {
  margin: 0;
  padding: 0 0 0 24px;
  list-style: decimal;
  counter-reset: none;
}
.inner-pages-style .pft-toc ol li {
  padding: 4px 0;
  padding-left: 0;
  font-size: 15px;
  line-height: 1.5;
  position: static;
}
.inner-pages-style .pft-toc ol li:before {
  display: none !important;
  content: none !important;
}
.inner-pages-style .pft-toc a {
  color: #333 !important;
  text-decoration: none !important;
  border-bottom: 1px dashed #ccc;
}
.inner-pages-style .pft-toc a:hover {
  color: #EBA044 !important;
  border-bottom-color: #EBA044;
}

/* ---- Infographic: Pathway Timeline ---- */
.pft-pathway {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 30px 20px;
  background: #1C1C1C;
  border-radius: 8px;
  margin: 30px 0;
  overflow-x: auto;
}
.pft-pathway-step {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  text-align: center;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 100px;
  position: relative;
}
.pft-pathway-step:not(:last-child):after {
  content: '';
  position: absolute;
  top: 25px;
  right: -50%;
  width: 100%;
  height: 2px;
  background: #FBCF4D;
  z-index: 0;
}
.pft-pathway-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #FBCF4D;
  color: #1C1C1C;
  font-family: Reforma, sans-serif;
  font-weight: 700;
  font-size: 18px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-pathway-icon--final {
  background: #67C55F;
  color: #fff;
}
.pft-pathway-label {
  color: #fff;
  font-family: Roboto, sans-serif;
  font-size: 13px;
  margin-top: 10px;
  line-height: 1.3;
}
.pft-pathway-label strong {
  display: block;
  font-size: 14px;
  color: #FBCF4D;
  margin-bottom: 2px;
}
@media (max-width: 768px) {
  .pft-pathway {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: stretch;
    align-items: stretch;
    padding: 20px 15px;
  }
  .pft-pathway-step {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    text-align: left;
    min-width: auto;
    padding: 10px 0;
  }
  .pft-pathway-step:not(:last-child):after {
    top: auto;
    right: auto;
    left: 24px;
    bottom: -10px;
    width: 2px;
    height: 20px;
  }
  .pft-pathway-label {
    margin-top: 0;
    margin-left: 15px;
  }
  .pft-pathway-icon {
    width: 40px;
    height: 40px;
    font-size: 15px;
  }
}

/* ---- Infographic: Florida Advantages ---- */
.pft-advantages {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px -10px;
}
.pft-adv-card {
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 200px;
  margin: 0 10px 20px;
  background: #f2f5f8;
  border-radius: 8px;
  padding: 25px 20px;
  text-align: center;
  border-top: 4px solid #FBCF4D;
  box-sizing: border-box;
}
.pft-adv-number {
  font-family: Reforma, sans-serif;
  font-size: 48px;
  font-weight: 600;
  color: #1C1C1C;
  line-height: 1;
  margin-bottom: 6px;
}
.pft-adv-unit {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  color: #EBA044;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 10px;
}
.pft-adv-desc {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  color: #333;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .pft-adv-card {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
  }
  .pft-adv-number {
    font-size: 36px;
  }
}

/* ---- Programs: Anniversary Offer ---- */
.pft-anniversary-prices {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 15px 0;
}
.pft-anniversary-current {
  font-size: 42px;
  font-weight: bold;
  color: #e8911c;
  font-family: Reforma, sans-serif;
  margin-right: 20px;
}
.pft-anniversary-current sup {
  font-size: 18px;
}
.pft-anniversary-old {
  font-size: 22px;
  text-decoration: line-through;
  color: #888;
  margin-right: 20px;
}
.pft-anniversary-save {
  font-size: 16px;
  color: #333;
}

/* ---- Tables: bottom margin ---- */
.pft-table-mb {
  margin-bottom: 30px;
}
.pft-table-mb-sm {
  margin-bottom: 25px;
}

/* ---- Final CTA Block ---- */
.pft-final-cta {
  text-align: center;
  padding: 30px;
}
.pft-final-cta__buttons {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  margin-top: 20px;
}
.pft-final-cta__buttons > .btn {
  margin: 0 8px 10px;
}
.inner-pages-style .pft-btn-whatsapp {
  background: #67C55F !important;
  color: #fff !important;
}
.inner-pages-style .pft-btn-whatsapp:hover {
  background: #56b34e !important;
}
.inner-pages-style .pft-btn-dark {
  background: #000 !important;
  color: #fff !important;
}
.inner-pages-style .pft-btn-dark:hover {
  background: #333 !important;
}


/* =============================================================
   HELICOPTER CPL PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: Flight Log Timeline (vertical) ---- */
.pft-flightlog {
  position: relative;
  margin: 30px 0;
  padding-left: 40px;
}
.pft-flightlog:before {
  content: '';
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  width: 3px;
  background: #FBCF4D;
}
.pft-flightlog-step {
  position: relative;
  padding: 0 0 28px 20px;
}
.pft-flightlog-step:last-child {
  padding-bottom: 0;
}
.pft-flightlog-dot {
  position: absolute;
  left: -26px;
  top: 2px;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #FBCF4D;
  color: #1C1C1C;
  font-family: Reforma, sans-serif;
  font-weight: 700;
  font-size: 13px;
  line-height: 25px;
  text-align: center;
}
.pft-flightlog-dot--done {
  background: #67C55F;
  color: #fff;
}
.pft-flightlog-title {
  font-family: Reforma, sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #1C1C1C;
  margin-bottom: 3px;
}
.pft-flightlog-meta {
  font-family: Roboto, sans-serif;
  font-size: 13px;
  color: #888;
  margin-bottom: 4px;
}
.pft-flightlog-desc {
  font-family: Roboto, sans-serif;
  font-size: 15px;
  color: #333;
  line-height: 1.5;
}

/* ---- Visual 2: Cockpit Stats Banner ---- */
.pft-cockpit {
  background: #1C1C1C;
  border-radius: 8px;
  padding: 28px 20px;
  margin: 30px 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
.pft-cockpit-gauge {
  text-align: center;
  padding: 12px 15px;
  min-width: 120px;
}
.pft-cockpit-value {
  font-family: Reforma, sans-serif;
  font-size: 40px;
  font-weight: 600;
  color: #FBCF4D;
  line-height: 1;
  margin-bottom: 6px;
}
.pft-cockpit-label {
  font-family: Roboto, sans-serif;
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.pft-cockpit-sub {
  font-family: Roboto, sans-serif;
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  margin-top: 3px;
}
@media (max-width: 600px) {
  .pft-cockpit {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
  }
  .pft-cockpit-gauge {
    padding: 10px 15px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    width: 100%;
  }
  .pft-cockpit-gauge:last-child {
    border-bottom: none;
  }
  .pft-cockpit-value {
    font-size: 32px;
  }
}

/* ---- Visual 3: Salary Bars ---- */
.pft-salary-bars {
  margin: 25px 0;
}
.pft-salary-row {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 12px;
}
.pft-salary-job {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #1C1C1C;
  width: 140px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  padding-right: 10px;
}
.pft-salary-track {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  background: #f2f5f8;
  border-radius: 4px;
  height: 28px;
  position: relative;
  overflow: hidden;
}
.pft-salary-fill {
  height: 100%;
  border-radius: 4px;
  background: #FBCF4D;
  background: -webkit-linear-gradient(left, #FBCF4D, #EBA044);
  background: linear-gradient(90deg, #FBCF4D, #EBA044);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  padding-right: 8px;
  min-width: 80px;
}
.pft-salary-amount {
  font-family: Roboto, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #1C1C1C;
  white-space: nowrap;
}
@media (max-width: 600px) {
  .pft-salary-row {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  .pft-salary-job {
    width: 100%;
    margin-bottom: 4px;
  }
  .pft-salary-track {
    width: 100%;
  }
}


/* =============================================================
   HELICOPTER PPL PAGE — Unique Visual: Preflight Checklist
   ============================================================= */

/* ---- Visual: Preflight Checklist Stats ---- */
.pft-preflight {
  background: #1C1C1C;
  border-radius: 8px;
  padding: 28px 20px;
  margin: 30px 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
.pft-preflight-item {
  text-align: center;
  padding: 12px 15px;
  min-width: 120px;
}
.pft-preflight-check {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #67C55F;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 36px;
  text-align: center;
  margin: 0 auto 10px;
}
.pft-preflight-value {
  font-family: Reforma, sans-serif;
  font-size: 36px;
  font-weight: 600;
  color: #FBCF4D;
  line-height: 1;
  margin-bottom: 6px;
}
.pft-preflight-unit {
  font-size: 18px;
  color: #EBA044;
  margin-left: 2px;
}
.pft-preflight-label {
  font-family: Roboto, sans-serif;
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
@media (max-width: 600px) {
  .pft-preflight {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
  }
  .pft-preflight-item {
    padding: 10px 15px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    width: 100%;
  }
  .pft-preflight-item:last-child {
    border-bottom: none;
  }
  .pft-preflight-value {
    font-size: 28px;
  }
}


/* =============================================================
   HELICOPTER IFR PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: IFR Instrument Panel (program breakdown) ---- */
.pft-ifr-panel {
  background: #1C1C1C;
  border-radius: 8px;
  padding: 30px 20px;
  margin: 30px 0;
  text-align: center;
}
.pft-ifr-panel__title {
  font-family: Reforma, sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 25px;
  letter-spacing: 1px;
}
.pft-ifr-panel__gauges {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
}
.pft-ifr-gauge {
  text-align: center;
  padding: 10px 18px;
  min-width: 110px;
}
.pft-ifr-gauge__ring {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  border: 3px solid #FBCF4D;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  margin: 0 auto 10px;
}
.pft-ifr-gauge__ring--accent {
  border-color: #67C55F;
  border-width: 4px;
}
.pft-ifr-gauge__value {
  font-family: Reforma, sans-serif;
  font-size: 28px;
  font-weight: 600;
  color: #FBCF4D;
  line-height: 1;
}
.pft-ifr-gauge__ring--accent .pft-ifr-gauge__value {
  color: #67C55F;
  font-size: 32px;
}
.pft-ifr-gauge__label {
  font-family: Roboto, sans-serif;
  font-size: 13px;
  color: rgba(255,255,255,0.85);
  font-weight: 600;
  margin-bottom: 2px;
}
.pft-ifr-gauge__unit {
  font-family: Roboto, sans-serif;
  font-size: 11px;
  color: rgba(255,255,255,0.45);
}
@media (max-width: 600px) {
  .pft-ifr-panel__gauges {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
  }
  .pft-ifr-gauge {
    padding: 12px 15px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    width: 100%;
  }
  .pft-ifr-gauge:last-child {
    border-bottom: none;
  }
  .pft-ifr-gauge__ring {
    width: 70px;
    height: 70px;
  }
  .pft-ifr-gauge__value {
    font-size: 22px;
  }
  .pft-ifr-gauge__ring--accent .pft-ifr-gauge__value {
    font-size: 26px;
  }
}

/* ---- Visual 2: IFR Career Cards ---- */
.pft-ifr-careers {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 25px -10px;
}
.pft-ifr-career-card {
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 200px;
  margin: 0 10px 20px;
  background: #f2f5f8;
  border-radius: 8px;
  padding: 25px 20px;
  text-align: center;
  border-top: 4px solid #FBCF4D;
  box-sizing: border-box;
}
.pft-ifr-career-card__icon {
  font-size: 32px;
  margin-bottom: 10px;
  color: #1C1C1C;
}
.pft-ifr-career-card__title {
  font-family: Reforma, sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #1C1C1C;
  margin-bottom: 6px;
}
.pft-ifr-career-card__salary {
  font-family: Reforma, sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: #EBA044;
  margin-bottom: 10px;
}
.pft-ifr-career-card__desc {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  color: #333;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .pft-ifr-career-card {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
  }
}


/* =============================================================
   HELICOPTER CFI PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: Logbook-style Program Breakdown ---- */
.pft-logbook {
  background: #1C1C1C;
  border-radius: 8px;
  padding: 25px 20px;
  margin: 30px 0;
}
.pft-logbook__title {
  font-family: Reforma, sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #FBCF4D;
}
.pft-logbook__entries {
  /* no flex needed, vertical stack */
}
.pft-logbook__entry {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.pft-logbook__entry:last-child {
  border-bottom: none;
}
.pft-logbook__entry--final {
  border-bottom: 2px solid rgba(255,255,255,0.15);
}
.pft-logbook__entry--total {
  padding-top: 14px;
}
.pft-logbook__hours {
  font-family: Reforma, sans-serif;
  font-size: 32px;
  font-weight: 600;
  color: #FBCF4D;
  min-width: 100px;
  line-height: 1;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-logbook__entry--total .pft-logbook__hours {
  color: #67C55F;
  font-size: 36px;
}
.pft-logbook__hours span {
  font-size: 14px;
  color: rgba(255,255,255,0.5);
  margin-left: 4px;
}
.pft-logbook__detail {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.pft-logbook__type {
  font-family: Roboto, sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 2px;
}
.pft-logbook__note {
  font-family: Roboto, sans-serif;
  font-size: 13px;
  color: rgba(255,255,255,0.5);
}
@media (max-width: 600px) {
  .pft-logbook__hours {
    font-size: 24px;
    min-width: 70px;
  }
  .pft-logbook__entry--total .pft-logbook__hours {
    font-size: 28px;
  }
  .pft-logbook__type {
    font-size: 14px;
  }
}

/* ---- Visual 2: Career Ladder ---- */
.pft-career-ladder {
  margin: 25px 0;
  padding: 0;
}
.pft-career-ladder__step {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  background: #f2f5f8;
  border-radius: 6px;
  padding: 16px 20px;
  margin-bottom: 8px;
  border-left: 4px solid #FBCF4D;
  position: relative;
}
.pft-career-ladder__step--current {
  background: #1C1C1C;
  border-left-color: #67C55F;
}
.pft-career-ladder__step--current .pft-career-ladder__title {
  color: #fff;
}
.pft-career-ladder__step--current .pft-career-ladder__rank {
  color: #67C55F;
}
.pft-career-ladder__step--current .pft-career-ladder__info {
  color: rgba(255,255,255,0.6);
}
.pft-career-ladder__step--top {
  border-left-color: #EBA044;
  background: #fffcf5;
}
.pft-career-ladder__rank {
  font-family: Reforma, sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: #EBA044;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  min-width: 100px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-career-ladder__title {
  font-family: Reforma, sans-serif;
  font-size: 32px;
  font-weight: 600;
  color: #1C1C1C;
  min-width: 200px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-career-ladder__info {
  font-family: Roboto, sans-serif;
  font-size: 20px;
  color: #666;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
@media (max-width: 768px) {
  .pft-career-ladder__step {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  .pft-career-ladder__rank {
    margin-bottom: 2px;
  }
  .pft-career-ladder__rank {
    font-size: 18px;
  }
  .pft-career-ladder__title {
    font-size: 24px;
    min-width: auto;
    margin-bottom: 2px;
  }
  .pft-career-ladder__info {
    font-size: 18px;
  }
}


/* =============================================================
   HELICOPTER PRO PROGRAM PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: Program Roadmap (5-step vertical) ---- */
.pft-program-roadmap {
  margin: 30px 0;
  padding: 0;
}
.pft-program-roadmap__step {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  background: #f2f5f8;
  border-radius: 8px;
  padding: 20px 24px;
  margin-bottom: 10px;
  border-left: 5px solid #FBCF4D;
}
.pft-program-roadmap__step--final {
  border-left-color: #67C55F;
  background: #f0faf0;
}
.pft-program-roadmap__number {
  font-family: Reforma, sans-serif;
  font-size: 42px;
  font-weight: 600;
  color: #FBCF4D;
  min-width: 60px;
  line-height: 1;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-program-roadmap__step--final .pft-program-roadmap__number {
  color: #67C55F;
}
.pft-program-roadmap__content {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.pft-program-roadmap__title {
  font-family: Reforma, sans-serif;
  font-size: 28px;
  font-weight: 600;
  color: #1C1C1C;
  margin-bottom: 4px;
}
.pft-program-roadmap__meta {
  font-family: Roboto, sans-serif;
  font-size: 20px;
  color: #666;
}
@media (max-width: 768px) {
  .pft-program-roadmap__number {
    font-size: 32px;
    min-width: 45px;
  }
  .pft-program-roadmap__title {
    font-size: 22px;
  }
  .pft-program-roadmap__meta {
    font-size: 18px;
  }
}

/* ---- Visual 2: Stats Strip ---- */
.pft-stats-strip {
  background: #1C1C1C;
  border-radius: 8px;
  padding: 28px 15px;
  margin: 30px 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
.pft-stats-strip__item {
  text-align: center;
  padding: 10px 15px;
  min-width: 100px;
}
.pft-stats-strip__value {
  font-family: Reforma, sans-serif;
  font-size: 48px;
  font-weight: 600;
  color: #FBCF4D;
  line-height: 1;
  margin-bottom: 6px;
}
.pft-stats-strip__label {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
@media (max-width: 600px) {
  .pft-stats-strip {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
  }
  .pft-stats-strip__item {
    padding: 10px 15px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    width: 100%;
  }
  .pft-stats-strip__item:last-child {
    border-bottom: none;
  }
  .pft-stats-strip__value {
    font-size: 36px;
  }
}


/* =============================================================
   HELICOPTER DISCOVERY FLIGHT PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: Discovery Steps (vertical numbered cards) ---- */
.pft-discovery-steps {
  margin: 30px 0;
  padding: 0;
}
.pft-discovery-step {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  background: #fff;
  border-radius: 8px;
  padding: 20px 24px;
  margin-bottom: 12px;
  border: 1px solid #e8e8e8;
  border-left: 5px solid #FBCF4D;
  position: relative;
}
.pft-discovery-step:last-child {
  border-left-color: #67C55F;
}
.pft-discovery-step__number {
  font-family: Reforma, sans-serif;
  font-size: 42px;
  font-weight: 600;
  color: #FBCF4D;
  min-width: 55px;
  line-height: 1;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-discovery-step:last-child .pft-discovery-step__number {
  color: #67C55F;
}
.pft-discovery-step__content {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.pft-discovery-step__title {
  font-family: Reforma, sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: #1C1C1C;
  margin-bottom: 6px;
}
.pft-discovery-step__desc {
  font-family: Roboto, sans-serif;
  font-size: 16px;
  color: #444;
  line-height: 1.6;
}
@media (max-width: 600px) {
  .pft-discovery-step {
    padding: 16px 16px;
  }
  .pft-discovery-step__number {
    font-size: 32px;
    min-width: 40px;
  }
  .pft-discovery-step__title {
    font-size: 20px;
  }
  .pft-discovery-step__desc {
    font-size: 15px;
  }
}

/* ---- Visual 2: Discovery Packages (pricing cards) ---- */
.pft-discovery-packages {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px -10px;
}
.pft-discovery-pkg {
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 220px;
  margin: 0 10px 20px;
  background: #f2f5f8;
  border-radius: 10px;
  padding: 28px 22px 22px;
  text-align: center;
  border-top: 4px solid #FBCF4D;
  box-sizing: border-box;
  position: relative;
}
.pft-discovery-pkg--featured {
  border-top-color: #EBA044;
  background: #fffcf5;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}
.pft-discovery-pkg__name {
  font-family: Reforma, sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: #1C1C1C;
  margin-bottom: 4px;
}
.pft-discovery-pkg__duration {
  font-family: Roboto, sans-serif;
  font-size: 16px;
  color: #888;
  margin-bottom: 14px;
}
.pft-discovery-pkg__price {
  font-family: Reforma, sans-serif;
  font-size: 42px;
  font-weight: 600;
  color: #EBA044;
  line-height: 1;
  margin-bottom: 18px;
}
.pft-discovery-pkg--featured .pft-discovery-pkg__price {
  color: #e8911c;
}
.pft-discovery-pkg__details {
  text-align: left;
  margin-bottom: 12px;
}
.inner-pages-style .pft-discovery-pkg__details ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.inner-pages-style .pft-discovery-pkg__details ul li {
  padding: 5px 0 5px 22px;
  font-family: Roboto, sans-serif;
  font-size: 15px;
  color: #333;
  position: relative;
  line-height: 1.4;
}
.inner-pages-style .pft-discovery-pkg__details ul li:before {
  content: '\2713';
  position: absolute;
  left: 0;
  top: 5px;
  color: #67C55F;
  font-weight: 700;
  font-size: 15px;
}
.pft-discovery-pkg__badge {
  display: inline-block;
  font-family: Roboto, sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: #FBCF4D;
  color: #1C1C1C;
  padding: 4px 14px;
  border-radius: 20px;
}
.pft-discovery-pkg__badge--accent {
  background: #EBA044;
  color: #fff;
}
@media (max-width: 768px) {
  .pft-discovery-pkg {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
  }
  .pft-discovery-pkg__price {
    font-size: 36px;
  }
  .pft-discovery-pkg__name {
    font-size: 22px;
  }
}


/* =============================================================
   HELICOPTER ADD-ON RATING PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: Add-On Compare (two-column transfers vs new) ---- */
.pft-addon-compare {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px -10px;
}
.pft-addon-compare__col {
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 250px;
  margin: 0 10px 20px;
  border-radius: 10px;
  padding: 24px 22px;
  box-sizing: border-box;
}
.pft-addon-compare__col--transfers {
  background: #f0faf0;
  border-top: 4px solid #67C55F;
}
.pft-addon-compare__col--new {
  background: #fffcf5;
  border-top: 4px solid #EBA044;
}
.pft-addon-compare__header {
  font-family: Reforma, sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: #1C1C1C;
  margin-bottom: 18px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.pft-addon-compare__item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 8px 0;
}
.pft-addon-compare__icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #67C55F;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 28px;
  text-align: center;
  margin-right: 12px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-addon-compare__icon--new {
  background: #EBA044;
  color: #fff;
  font-size: 10px;
}
.pft-addon-compare__text {
  font-family: Roboto, sans-serif;
  font-size: 16px;
  color: #333;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .pft-addon-compare__col {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
  }
  .pft-addon-compare__header {
    font-size: 20px;
  }
}

/* ---- Visual 2: Add-On Tracks (horizontal path cards) ---- */
.pft-addon-tracks {
  margin: 30px 0;
  padding: 0;
}
.pft-addon-track {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  background: #f2f5f8;
  border-radius: 8px;
  padding: 18px 24px;
  margin-bottom: 10px;
  border-left: 5px solid #FBCF4D;
}
.pft-addon-track--accent {
  border-left-color: #67C55F;
  background: #f0faf0;
}
.pft-addon-track__from {
  font-family: Reforma, sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: #666;
  min-width: 140px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-addon-track__arrow {
  font-size: 28px;
  color: #FBCF4D;
  font-weight: 700;
  margin: 0 16px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-addon-track--accent .pft-addon-track__arrow {
  color: #67C55F;
}
.pft-addon-track__to {
  font-family: Reforma, sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: #1C1C1C;
  min-width: 180px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.pft-addon-track__details {
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  text-align: right;
}
.pft-addon-track__hours {
  font-family: Reforma, sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #EBA044;
  margin-right: 20px;
}
.pft-addon-track__time {
  font-family: Roboto, sans-serif;
  font-size: 16px;
  color: #888;
}
@media (max-width: 768px) {
  .pft-addon-track {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    padding: 16px 18px;
  }
  .pft-addon-track__from {
    font-size: 18px;
    min-width: auto;
    margin-bottom: 2px;
  }
  .pft-addon-track__arrow {
    margin: 4px 0;
    font-size: 22px;
  }
  .pft-addon-track__to {
    font-size: 20px;
    min-width: auto;
    margin-bottom: 6px;
  }
  .pft-addon-track__details {
    text-align: left;
  }
  .pft-addon-track__hours {
    font-size: 18px;
    display: block;
    margin-right: 0;
    margin-bottom: 2px;
  }
}


/* =============================================================
   HELICOPTER HUB PAGE — Unique Visuals
   ============================================================= */

/* ---- Visual 1: Hero Numbers (stats in hero section) ---- */
.pft-hub-numbers {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 30px 0;
  padding: 20px 0;
  border-top: 1px solid rgba(255,255,255,0.15);
  border-bottom: 1px solid rgba(255,255,255,0.15);
}
.pft-hub-number {
  text-align: center;
  padding: 8px 15px;
  min-width: 100px;
}
.pft-hub-number__value {
  font-family: Reforma, sans-serif;
  font-size: 48px;
  font-weight: 600;
  color: #FBCF4D;
  line-height: 1;
  margin-bottom: 4px;
}
.pft-hub-number__label {
  font-family: Roboto, sans-serif;
  font-size: 13px;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
@media (max-width: 600px) {
  .pft-hub-numbers {
    -webkit-justify-content: space-around;
    justify-content: space-around;
  }
  .pft-hub-number {
    -webkit-flex: 0 0 45%;
    -ms-flex: 0 0 45%;
    flex: 0 0 45%;
    margin-bottom: 12px;
  }
  .pft-hub-number__value {
    font-size: 36px;
  }
}

/* ---- Visual 2: Hub Program Grid (table-based, MODX safe) ---- */
.inner-pages-style .pft-hub-grid-table {
  border: none !important;
  border-collapse: separate !important;
  border-spacing: 12px !important;
  margin: 30px 0;
  width: 100%;
}
.inner-pages-style .pft-hub-grid-table td.pft-hub-cell {
  background: #f2f5f8;
  border: none !important;
  border-top: 5px solid #FBCF4D !important;
  border-radius: 10px;
  padding: 24px 20px;
  vertical-align: top;
  width: 33.33%;
  text-align: center;
}
.inner-pages-style .pft-hub-grid-table td.pft-hub-cell--entry {
  background: #f0faf0;
  border-top-color: #67C55F !important;
}
.pft-hub-cell__tag {
  font-family: Roboto, sans-serif;
  font-size: 11px;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #EBA044;
}
.pft-hub-cell--entry .pft-hub-cell__tag {
  color: #67C55F;
}
.pft-hub-cell__name {
  font-family: Reforma, sans-serif;
  font-size: 22px;
  font-weight: 600 !important;
  color: #1C1C1C;
  display: block;
  margin-bottom: 4px;
}
.pft-hub-cell__stat {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  font-style: normal !important;
  color: #888;
}
.pft-hub-cell__price {
  font-family: Reforma, sans-serif;
  font-size: 28px;
  font-weight: 600 !important;
  color: #EBA044;
  display: block;
  margin: 8px 0;
}
.pft-hub-cell--entry .pft-hub-cell__price {
  color: #67C55F;
}
.pft-hub-cell__desc {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  color: #555;
  line-height: 1.5;
}
.inner-pages-style .pft-hub-cell__cta {
  display: inline-block;
  font-family: Roboto, sans-serif;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #EBA044 !important;
  text-decoration: none !important;
  margin-top: 10px;
}
.inner-pages-style .pft-hub-cell__cta:hover {
  color: #1C1C1C !important;
  text-decoration: underline !important;
}
.inner-pages-style .pft-hub-cell--entry .pft-hub-cell__cta {
  color: #67C55F !important;
}
@media (max-width: 768px) {
  .inner-pages-style .pft-hub-grid-table {
    border-spacing: 0 10px !important;
  }
  .inner-pages-style .pft-hub-grid-table,
  .inner-pages-style .pft-hub-grid-table tbody,
  .inner-pages-style .pft-hub-grid-table tr {
    display: block !important;
  }
  .inner-pages-style .pft-hub-grid-table td.pft-hub-cell {
    display: block !important;
    width: 100% !important;
    margin-bottom: 10px;
    box-sizing: border-box;
  }
}

/* ---- Visual 3: Hub Route (table-based, MODX safe) ---- */
.inner-pages-style .pft-hub-route-table {
  background: #1C1C1C;
  border-radius: 10px;
  border: none !important;
  margin: 30px 0;
  width: 100%;
}
.inner-pages-style .pft-hub-route-table th.pft-hub-route-th {
  background: #1C1C1C !important;
  color: rgba(255,255,255,0.5) !important;
  border: none !important;
  border-bottom: 2px solid rgba(255,255,255,0.1) !important;
  font-family: Roboto, sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 16px 14px 12px;
}
.inner-pages-style .pft-hub-route-table td {
  background: transparent !important;
  color: rgba(255,255,255,0.85) !important;
  border: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  font-family: Roboto, sans-serif;
  font-size: 15px;
  padding: 14px 14px;
  vertical-align: middle;
}
.inner-pages-style .pft-hub-route-table td strong {
  color: #fff !important;
}
.inner-pages-style .pft-hub-route-row--end td {
  border-bottom: none !important;
}
.pft-hub-route-marker {
  display: inline-block;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #FBCF4D;
  color: #1C1C1C !important;
  font-family: Reforma, sans-serif;
  font-weight: 700 !important;
  font-size: 16px;
  line-height: 36px;
  text-align: center;
}
.pft-hub-route-row--start .pft-hub-route-marker {
  font-size: 20px;
}
.pft-hub-route-marker--done {
  background: #67C55F;
  color: #fff !important;
}
.inner-pages-style .pft-hub-route-row--end td strong {
  color: #67C55F !important;
}
@media (max-width: 600px) {
  .inner-pages-style .pft-hub-route-table td {
    font-size: 13px;
    padding: 10px 8px;
  }
  .pft-hub-route-marker {
    width: 28px;
    height: 28px;
    font-size: 13px;
    line-height: 28px;
  }
}

/* ==========================================================================
   /flight-training — programs table, part61-vs-141 compare, howto, country list
   Added 2026-04-19
   ========================================================================== */

/* Programs comparison table */
.inner-pages-style .pft-program-table {
  margin: 30px 0;
  overflow-x: auto;
}
.inner-pages-style .pft-program-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 17px;
  background: #fff;
}
.inner-pages-style .pft-program-table thead th {
  background: #1C1C1C;
  color: #fff !important;
  font-weight: 600;
  font-size: 17px;
  text-align: left;
  padding: 16px 18px;
  border: 1px solid #1C1C1C;
}
.inner-pages-style .pft-program-table tbody td {
  padding: 14px 18px;
  border: 1px solid #e5e7eb;
  color: #1C1C1C;
  font-size: 17px;
  font-weight: 500;
}
.inner-pages-style .pft-program-table tbody tr:nth-child(even) td {
  background: #f2f5f8;
}
.inner-pages-style .pft-program-table a {
  color: #007bff !important;
  text-decoration: underline !important;
  font-weight: 600;
}
.inner-pages-style .pft-program-table a:hover {
  color: #EBA044 !important;
}

/* Part 61 vs Part 141 comparison block */
.pft-compare {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px 0;
}
.pft-compare__col {
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
  min-width: 280px;
  padding: 24px;
  margin: 10px;
  background: #f2f5f8;
  border-left: 4px solid #FBCF4D;
}
.pft-compare__col:nth-child(2) {
  border-left-color: #67C55F;
}
.inner-pages-style .pft-compare__col h3 {
  color: #1C1C1C !important;
  font-weight: 600;
  font-size: 22px;
  margin: 0 0 14px;
}
.inner-pages-style .pft-compare__col ul {
  margin: 0;
  padding-left: 20px;
}
.inner-pages-style .pft-compare__col ul li {
  color: #1C1C1C;
  font-weight: 500;
  padding: 6px 0;
}

/* HowTo numbered steps */
.inner-pages-style ol.pft-howto {
  counter-reset: howto;
  list-style: none;
  padding: 0;
  margin: 30px 0;
}
.inner-pages-style ol.pft-howto li {
  counter-increment: howto;
  position: relative;
  padding: 20px 24px 20px 84px;
  margin-bottom: 14px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-left: 4px solid #FBCF4D;
}
.inner-pages-style ol.pft-howto li:before {
  content: counter(howto);
  position: absolute;
  left: 20px;
  top: 22px;
  width: 44px;
  height: 44px;
  background: #1C1C1C;
  color: #FBCF4D !important;
  font-family: Reforma, sans-serif;
  font-weight: 700;
  font-size: 22px;
  text-align: center;
  line-height: 44px;
  border-radius: 50%;
}
.inner-pages-style ol.pft-howto li h3 {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 600;
  color: #1C1C1C !important;
}
.inner-pages-style ol.pft-howto li p {
  margin: 0;
  color: #1C1C1C;
  font-weight: 500;
}

/* Country list (International Students block) */
.inner-pages-style ul.pft-country-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 20px 0;
  padding: 0;
}
.inner-pages-style ul.pft-country-list li {
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin: 6px;
  padding: 0;
}
.inner-pages-style ul.pft-country-list li:before {
  display: none !important;
}
.inner-pages-style ul.pft-country-list li a {
  display: inline-block;
  padding: 8px 16px;
  background: #FBCF4D;
  color: #1C1C1C !important;
  font-weight: 600;
  text-decoration: none !important;
  border-radius: 4px;
  font-size: 15px;
}
.inner-pages-style ul.pft-country-list li a:hover {
  background: #EBA044;
  color: #fff !important;
}

@media (max-width: 600px) {
  .pft-compare__col {
    margin: 8px 0;
  }
  .inner-pages-style ol.pft-howto li {
    padding: 18px 16px 18px 68px;
  }
  .inner-pages-style ol.pft-howto li:before {
    width: 36px;
    height: 36px;
    line-height: 36px;
    font-size: 18px;
    left: 14px;
    top: 20px;
  }
}

/* ==========================================================================
   /flight-training — Final CTA grid (4 action cards)
   ========================================================================== */

.pft-cta-grid {
  margin: 30px 0 20px;
  padding: 32px 24px;
  background: #1C1C1C;
  border-radius: 6px;
}
.inner-pages-style .pft-cta-grid__title {
  color: #fff !important;
  font-weight: 600;
  font-size: 26px;
  text-align: center;
  margin: 0 0 28px;
}
.pft-cta-cards {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 -10px;
}
.pft-cta-card {
  -webkit-flex: 1 1 220px;
  -ms-flex: 1 1 220px;
  flex: 1 1 220px;
  max-width: 280px;
  min-width: 220px;
  margin: 10px;
  padding: 24px 20px 22px;
  background: #fff;
  border-radius: 6px;
  border-top: 4px solid #FBCF4D;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.pft-cta-card:nth-child(4) {
  border-top-color: #67C55F;
}
.pft-cta-card__num {
  width: 40px;
  height: 40px;
  margin: 0 auto 14px;
  background: #1C1C1C;
  color: #FBCF4D !important;
  font-weight: 700;
  font-size: 20px;
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
}
.pft-cta-card:nth-child(4) .pft-cta-card__num {
  background: #67C55F;
  color: #fff !important;
}
.inner-pages-style .pft-cta-card__title {
  color: #1C1C1C !important;
  font-weight: 600;
  font-size: 18px;
  margin: 0 0 10px;
}
.inner-pages-style .pft-cta-card__text {
  color: #1C1C1C;
  font-weight: 500;
  font-size: 15px;
  line-height: 1.45;
  margin: 0 0 14px;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}
.inner-pages-style .pft-cta-card__price {
  color: #1C1C1C;
  font-weight: 700;
  font-size: 16px;
  margin: 0 0 16px;
  padding: 8px 10px;
  background: #f2f5f8;
  border-radius: 4px;
}
.inner-pages-style .pft-cta-card__btn {
  display: inline-block;
  padding: 12px 20px;
  font-weight: 700 !important;
  font-size: 15px;
  text-align: center;
  text-decoration: none !important;
  border-radius: 4px;
  margin: 0;
}
.inner-pages-style .pft-cta-card__btn--primary {
  background: #FBCF4D !important;
  color: #1C1C1C !important;
}
.inner-pages-style .pft-cta-card__btn--primary:hover {
  background: #EBA044 !important;
  color: #fff !important;
}
.inner-pages-style .pft-cta-card__btn--dark {
  background: #1C1C1C !important;
  color: #fff !important;
}
.inner-pages-style .pft-cta-card__btn--dark:hover {
  background: #EBA044 !important;
  color: #fff !important;
}
.inner-pages-style .pft-cta-card__btn--whatsapp {
  background: #67C55F !important;
  color: #fff !important;
}
.inner-pages-style .pft-cta-card__btn--whatsapp:hover {
  background: #4ea846 !important;
  color: #fff !important;
}

.pft-cta-also {
  margin: 28px 0 0;
  padding: 18px 20px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 4px;
  text-align: center;
  font-size: 15px;
}
.pft-cta-also__label {
  color: #FBCF4D;
  font-weight: 600;
  margin-right: 8px;
}
.inner-pages-style .pft-cta-also a {
  color: #fff !important;
  text-decoration: underline !important;
  margin: 0 10px;
  font-weight: 500;
}
.inner-pages-style .pft-cta-also a:hover {
  color: #FBCF4D !important;
}

@media (max-width: 600px) {
  .pft-cta-grid {
    padding: 24px 16px;
  }
  .inner-pages-style .pft-cta-grid__title {
    font-size: 22px;
  }
  .pft-cta-card {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    max-width: 100%;
  }
  .inner-pages-style .pft-cta-also a {
    display: inline-block;
    margin: 4px 8px;
  }
}

/* ==========================================================================
   /admissions - Application Checklist (visual checkboxes)
   Added 2026-04-19
   ========================================================================== */

.inner-pages-style ul.pft-checklist {
  list-style: none;
  padding: 0;
  margin: 20px 0 30px;
}
.inner-pages-style ul.pft-checklist li {
  position: relative;
  padding: 14px 16px 14px 56px;
  margin-bottom: 10px;
  background: #f2f5f8;
  border-left: 4px solid #67C55F;
  color: #1C1C1C;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.45;
}
.inner-pages-style ul.pft-checklist li:before {
  content: "\2713";
  position: absolute;
  left: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  background: #67C55F;
  color: #fff !important;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  line-height: 28px;
  border-radius: 50%;
}

@media (max-width: 600px) {
  .inner-pages-style ul.pft-checklist li {
    padding: 12px 14px 12px 50px;
    font-size: 15px;
  }
  .inner-pages-style ul.pft-checklist li:before {
    width: 24px;
    height: 24px;
    font-size: 16px;
    line-height: 24px;
    left: 14px;
  }
}

/* ==========================================================================
   JUNE 2026 CONTENT BATCH — components used by the client-corrected pages
   (about-us, ar, conversion-program, es, from-zero-to-cpl, location,
    pilot-demand, programs-courses, pt, us-students)
   These classes were introduced in the HTML rewrite but were missing from
   the CSS, which broke the layout on paste into MODX. Added 2026-06-07.
   ========================================================================== */

/* ---- TOC title (BEM variant used by June pages: <h2 class="pft-toc__title">) ----
   It is an <h2>, so the site rule .inner-pages-style h2 { font-size:70px;
   text-transform:uppercase } hits it. Override to the canonical 40px TOC title. */
.inner-pages-style .pft-toc__title {
  font-family: Reforma, sans-serif;
  font-size: 40px !important;
  font-weight: 600;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  color: #1C1C1C !important;
}

/* ---- Pricing / data tables (<table class="pft-pricing-table">) ---- */
.inner-pages-style table.pft-pricing-table {
  width: 100%;
  border-collapse: collapse;
  margin: 30px 0;
  font-size: 16px;
  background: #fff;
}
.inner-pages-style table.pft-pricing-table thead th {
  background: #1C1C1C !important;
  color: #fff !important;
  font-family: Reforma, sans-serif;
  font-weight: 600;
  font-size: 16px;
  text-align: left;
  padding: 14px 16px;
  border: 1px solid #1C1C1C;
}
.inner-pages-style table.pft-pricing-table tbody td {
  padding: 12px 16px;
  border: 1px solid #e5e7eb;
  color: #1C1C1C;
  font-size: 16px;
  line-height: 1.45;
  vertical-align: top;
}
.inner-pages-style table.pft-pricing-table tbody tr:nth-child(even) td {
  background: #f2f5f8;
}
.inner-pages-style table.pft-pricing-table tbody tr:last-child td {
  background: #fffcf5;
  border-top: 2px solid #FBCF4D;
}
.inner-pages-style table.pft-pricing-table a {
  color: #007bff !important;
  text-decoration: underline !important;
}
.inner-pages-style table.pft-pricing-table a:hover {
  color: #EBA044 !important;
}

/* ---- FAQ accordion (native <details>/<summary> inside .pft-faq) ---- */
.pft-faq {
  margin: 25px 0 30px;
}
.pft-faq details {
  border: 1px solid #e5e7eb;
  border-left: 4px solid #FBCF4D;
  border-radius: 4px;
  margin-bottom: 10px;
  background: #fff;
}
.pft-faq summary {
  cursor: pointer;
  padding: 16px 20px;
  background: #f2f5f8;
  font-family: Reforma, sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #1C1C1C;
  list-style-position: inside;
  line-height: 1.4;
}
.pft-faq summary:hover {
  color: #EBA044;
}
.pft-faq details[open] summary {
  border-bottom: 1px solid #e5e7eb;
}
.inner-pages-style .pft-faq details > p,
.inner-pages-style .pft-faq details > ul,
.inner-pages-style .pft-faq details > ol {
  margin: 0;
  padding: 16px 20px;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}
.inner-pages-style .pft-faq details > p + p {
  padding-top: 0;
}
.inner-pages-style .pft-faq details a {
  color: #007bff !important;
  text-decoration: underline !important;
}
.inner-pages-style .pft-faq details a:hover {
  color: #EBA044 !important;
}

/* ---- Final CTA banner (<div class="pft-cta-banner">) ----
   Dark background so the white-text hero buttons inside stay readable. */
.pft-cta-banner {
  background: #1C1C1C;
  border-radius: 8px;
  padding: 28px 24px;
  margin: 30px 0;
  text-align: center;
}
.inner-pages-style .pft-cta-banner p {
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  margin: 0 0 16px;
}
.inner-pages-style .pft-cta-banner p:last-child {
  margin-bottom: 0;
}
.inner-pages-style .pft-cta-banner p strong {
  color: #FBCF4D;
}

/* ---- Programs catalogue (programs-courses): list + cards ---- */
.pft-program-list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px -10px;
}
.pft-program-card {
  -webkit-flex: 1 1 320px;
  -ms-flex: 1 1 320px;
  flex: 1 1 320px;
  min-width: 280px;
  margin: 0 10px 20px;
  padding: 24px 22px;
  background: #f2f5f8;
  border-radius: 8px;
  border-top: 4px solid #FBCF4D;
  box-sizing: border-box;
}
.inner-pages-style .pft-program-card h3 {
  font-size: 22px !important;
  font-weight: 600;
  margin: 0 0 10px !important;
  line-height: 1.3;
  text-transform: none !important;
}
.inner-pages-style .pft-program-card h3 a {
  color: #1C1C1C !important;
  text-decoration: none !important;
}
.inner-pages-style .pft-program-card h3 a:hover {
  color: #EBA044 !important;
  text-decoration: underline !important;
}
.inner-pages-style .pft-program-card p {
  font-size: 15px;
  line-height: 1.55;
  color: #333;
  margin: 0 0 10px;
}
.inner-pages-style .pft-program-card p:last-child {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .pft-program-card {
    -webkit-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
  }
}

/* ---- Infographic wrapper (pilot-demand) ---- */
.pft-infographic-block {
  background: #f2f5f8;
  border-left: 4px solid #FBCF4D;
  border-radius: 0 8px 8px 0;
  padding: 20px 24px;
  margin: 30px 0;
  overflow-x: auto;
}
.pft-infographic-block table.pft-pricing-table {
  margin: 0;
}

/* ---- Location: address block ---- */
.pft-address-block {
  background: #f2f5f8;
  border-left: 4px solid #FBCF4D;
  border-radius: 0 8px 8px 0;
  padding: 20px 24px;
  margin: 25px 0;
}
.inner-pages-style .pft-address-block p {
  margin: 0 0 6px;
  font-size: 16px;
  line-height: 1.5;
  color: #1C1C1C;
}
.inner-pages-style .pft-address-block p:last-child {
  margin-bottom: 0;
}
.inner-pages-style .pft-address-block a {
  color: #007bff !important;
  text-decoration: underline !important;
}

/* ---- Location: responsive map embed ---- */
.pft-map-embed {
  margin: 25px 0;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  line-height: 0;
}
.pft-map-embed iframe {
  display: block;
  width: 100%;
  min-height: 360px;
  border: 0;
}
@media (max-width: 600px) {
  .pft-map-embed iframe {
    min-height: 260px;
  }
}

/* ---- Hero on light background (container-less templates) ----
   conversion-program, from-zero-to-cpl, ar, es, pt render the HERO field on a
   white .section (no dark .text-lead). The hero buttons/offer were built for a
   dark hero, so on white the outline button (white text + white border) was
   invisible. Scope a light-bg variant via .pft-hero-light. Added 2026-06-07. */
.pft-hero-light .pft-hero-offer {
  border: 1px solid #e5e7eb;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}
.pft-hero-light .pft-hero-btn-outline {
  color: #1C1C1C !important;
  border-color: #1C1C1C !important;
}
.pft-hero-light .pft-hero-btn-outline:hover {
  background: #1C1C1C !important;
  color: #fff !important;
}

/* ---- Content figure (centered responsive image with caption) ---- */
.inner-pages-style figure.pft-figure {
  margin: 26px auto;
  text-align: center;
  max-width: 100%;
}
.inner-pages-style figure.pft-figure img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
}
.inner-pages-style figure.pft-figure figcaption {
  font-family: Roboto, sans-serif;
  font-size: 14px;
  color: #666;
  margin-top: 8px;
  line-height: 1.4;
}

/* ============================================================
   /reviews — CSS addon (2026-06-13, обновлён под слайдер + карточную форму)
   Дописать в КОНЕЦ /css/pft-international.css и перезалить.
   Правила проекта: только flexbox (без grid/gap), вендор-префиксы,
   без inline-стилей. Цвета: #1C1C1C / #FBCF4D / #EBA044 / #007bff.

   Уже есть на сайте (НЕ дублировать): .pft-breadcrumbs, .pft-toc,
   .pft-spacer-40, и РОДНОЙ аккордеон .faq-item / .faq-question / .faq-answer
   (css = /css/faq.css, js = /js/faq.js) — FAQ работает без нового CSS.
   ============================================================ */

/* --- Hero rating line --- */
.pft-rating-line { font-size: 18px; }
.pft-stars { color: #FBCF4D; letter-spacing: 2px; }

/* --- Platform badges --- */
.pft-platform-strip {
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
  margin: 24px 0 0 0;
}
.pft-platform-strip > .pft-platform-badge {
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  padding: 10px 16px;
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 8px;
  margin: 0 12px 12px 0;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 16px;
}
.pft-platform-name { margin-right: 8px; font-weight: 600; }
.pft-platform-score { color: #FBCF4D; }

/* --- Reviews intro --- */
.pft-reviews-intro { margin-top: 24px; }

/* ============================================================
   REVIEWS SLIDER (CSS scroll-snap; стрелки вставляет JS в .pft-slider-wrap)
   Разметка: .pft-reviews-slider > h2 + .pft-slider-hint
              > .pft-slider-wrap > .pft-reviews-track > .pft-review-card*
   ============================================================ */
.pft-reviews-slider { margin: 24px 0 8px 0; }
.pft-slider-hint { font-size: 14px; color: #666; margin: 0 0 12px 0; }

/* wrap создаёт «жёлоб» по бокам, где стоят стрелки (не перекрывают карточки) */
.pft-slider-wrap { position: relative; }
@media (min-width: 601px) { .pft-slider-wrap { padding: 0 52px; } }

.pft-reviews-track {
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding: 6px 2px 18px 2px;
}

/* карточка-слайд фиксированной ширины */
.pft-reviews-track > .pft-review-card {
  -webkit-flex: 0 0 320px; -ms-flex: 0 0 320px; flex: 0 0 320px;
  width: 320px;
  scroll-snap-align: start;
  margin: 0 16px 0 0;
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;
  min-height: 230px;
}
.pft-reviews-track > .pft-review-card > p {
  -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto;
}
@media (max-width: 600px) {
  .pft-reviews-track > .pft-review-card { -webkit-flex-basis: 86%; -ms-flex-preferred-size: 86%; flex-basis: 86%; width: 86%; }
}

/* стрелки (вставляются скриптом reviews-slider.js) */
.pft-slider-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%); transform: translateY(-50%);
  width: 44px; height: 44px;
  border: none;
  border-radius: 50%;
  background: #1C1C1C;
  color: #fff;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  z-index: 3;
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  -webkit-box-shadow: 0 2px 8px rgba(0,0,0,0.2); box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.pft-slider-arrow:hover { background: #FBCF4D; color: #1C1C1C; }
.pft-slider-prev { left: 0; }
.pft-slider-next { right: 0; }
.pft-slider-arrow.is-hidden { display: none; }
@media (max-width: 600px) { .pft-slider-arrow { display: none; } }

/* --- Review card visuals --- */
.pft-review-card {
  background: #f9f9f9;
  border-radius: 12px;
  padding: 22px;
  -webkit-box-shadow: 0 2px 8px rgba(0,0,0,0.04); box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.pft-review-head {
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between;
  -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start;
  margin-bottom: 12px;
}
.pft-review-author {
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-align-items: center; -ms-flex-align: center; align-items: center;
}
.pft-review-avatar {
  width: 44px; height: 44px;
  -webkit-flex: 0 0 44px; -ms-flex: 0 0 44px; flex: 0 0 44px;
  border-radius: 50%;
  background: #1C1C1C;
  color: #FBCF4D;
  font-weight: 700;
  display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  margin-right: 12px;
  font-size: 18px;
}
.pft-avatar-l { background: #2c3e50; }
.pft-avatar-c { background: #34495e; }
.pft-avatar-r { background: #1C1C1C; }
.pft-review-name { font-weight: 600; font-size: 16px; }
.pft-review-meta { font-size: 13px; color: #666; }
.pft-review-rating { color: #FBCF4D; font-size: 16px; letter-spacing: 1px; }
.pft-review-foot { margin-top: 12px; font-size: 14px; }

/* --- "Read all reviews" CTA row --- */
.pft-reviews-more { text-align: center; margin: 12px 0 8px 0; }

/* --- Featured success stories --- */
.pft-success-stories { margin: 32px 0; }
.pft-success-card {
  background: #f2f5f8;
  border-left: 4px solid #FBCF4D;
  border-radius: 8px;
  padding: 20px 24px;
  margin: 0 0 18px 0;
}
.pft-success-card h3 { margin-top: 0; }

/* --- Leave a review --- */
.pft-leave-review { margin: 32px 0; }
.pft-leave-review-list { list-style: none; padding: 0; margin: 16px 0; }
.pft-leave-review-list li { margin: 0 0 10px 0; }
.pft-note { font-size: 14px; color: #555; }

/* --- Native form section wrapper (саму форму стилизует сайт) --- */
.pft-native-form { margin: 32px 0; }

/* --- Primary CTA button (нет на сайте, добавляем) --- */
.pft-btn-primary {
  display: inline-block;
  background: #FBCF4D;
  color: #1C1C1C !important;
  font-weight: 700;
  text-decoration: none !important;
  padding: 12px 22px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-size: 16px;
}
.pft-btn-primary:hover { background: #EBA044; }