/* ============================================================
   Experts Business First — blog chrome (unique to this brand).
   Cream / navy / coral. Independently authored EBF chrome.
   Loaded late so it wins over the article inline sheet.
   Form fields, IDs and enquiry routes are untouched.
   ============================================================ */

.ebf-blog,
.ebf-blog-wrapper.ebf-blog{
  --ebfb-navy:#14202B;
  --ebfb-coral:#C4400E;
  --ebfb-coral-dk:#D2410E;
  --ebfb-cream:#F3EEE4;
  --ebfb-line:#D9E3EC;
  --ebfb-soft:#4A6173;
  --ebfb-paper:#fff;
  background:var(--ebfb-cream);
  color:var(--ebfb-navy);
  font-family:inherit;
}

/* ---- Hub hero: cream editorial, not navy+gold concourse ---- */
.page-hero.ebf-blog-hero{
  background:#F3EEE4 !important;
  color:#14202B;
  border-bottom:1px solid #D9E3EC;
  overflow:visible;
}
.page-hero.ebf-blog-hero .page-crumbs{color:var(--ebfb-soft,#4A6173)}
.page-hero.ebf-blog-hero .page-crumbs a{color:var(--ebfb-coral,#C4400E)}
.page-hero.ebf-blog-hero .page-kicker{color:var(--ebfb-coral,#C4400E);font-family:inherit}
.page-hero.ebf-blog-hero h1{
  color:var(--ebfb-navy,#14202B);
  font-family:inherit;
  font-weight:750;
  letter-spacing:-.03em;
  max-width:22ch;
}
.page-hero.ebf-blog-hero .page-lead{color:var(--ebfb-soft,#4A6173)}

.ebf-blog.blog-hub{background:var(--ebfb-cream,#F3EEE4)}
.ebf-blog .hub-card,
.ebf-blog .airline-hub-card{
  border-radius:14px;
  border:1px solid var(--ebfb-line,#D9E3EC);
  box-shadow:none;
  transform:none;
}
.ebf-blog .hub-card:hover,
.ebf-blog .airline-hub-card:hover{
  transform:none;
  border-color:rgba(240,83,28,.35);
  box-shadow:0 10px 28px rgba(20,32,43,.08);
}
.ebf-blog .hub-chip{
  color:var(--ebfb-coral,#C4400E);
  background:rgba(240,83,28,.1);
}
.ebf-blog .hub-card-body h2,
.ebf-blog .hub-card-body h2 a,
.ebf-blog .airline-hub-card__body h2 a{
  font-family:inherit;
  font-weight:700;
  color:var(--ebfb-navy,#14202B);
}
.ebf-blog .hub-card-body h2 a:hover,
.ebf-blog .hub-read{color:var(--ebfb-coral,#C4400E)}
.ebf-blog .hub-panel{
  background:var(--ebfb-paper,#fff);
  border:1px solid var(--ebfb-line,#D9E3EC);
  border-radius:14px;
  border-top:3px solid var(--ebfb-coral,#C4400E) !important;
  box-shadow:none;
}
.ebf-blog .hub-panel h3{color:var(--ebfb-navy,#14202B);font-family:inherit;font-weight:750}
.ebf-blog .hub-cats a.on,
.ebf-blog .hub-search button{
  background:var(--ebfb-coral,#C4400E);
  color:#fff;
  border-color:var(--ebfb-coral,#C4400E);
}

/* ---- Article page ---- */
.ebf-blog.ebf-blog-wrapper{
  --ebfb-navy:#14202B;
  --ebfb-coral:#C4400E;
}
.ebf-blog .ebf-blog-layout{
  margin-top:1.5rem;
  margin-bottom:4rem;
}
.ebf-blog .ebf-blog-main{
  opacity:1;
  animation:none;
  background:#fff;
  border:1px solid var(--ebfb-line,#D9E3EC);
  border-radius:16px;
  box-shadow:0 8px 28px rgba(20,32,43,.06);
  padding:clamp(1.4rem,3vw,2.6rem);
}
.ebf-blog .tbf-rich-text,
.ebf-blog .tbf-rich-text h1,
.ebf-blog .tbf-rich-text h2,
.ebf-blog .tbf-rich-text h3,
.ebf-blog .tbf-w-title,
.ebf-blog .tbf-hero-modern h1{
  font-family:inherit;
}
.ebf-blog .tbf-rich-text h2{
  color:var(--ebfb-navy,#14202B);
  font-weight:750;
  letter-spacing:-.02em;
  padding-bottom:.4rem;
  border-bottom:2px solid rgba(240,83,28,.35);
}
.ebf-blog .tbf-rich-text a{color:var(--ebfb-coral,#C4400E)}
.ebf-blog .ebf-blog-aside{
  opacity:1;
  animation:none;
  gap:1.1rem;
}
.ebf-blog .ebf-blog-widget{
  background:#fff;
  border:1px solid var(--ebfb-line,#D9E3EC);
  border-radius:14px;
  border-top:3px solid var(--ebfb-coral,#C4400E);
  box-shadow:none;
}
.ebf-blog .ebf-blog-widget:hover{
  transform:none;
  box-shadow:0 10px 26px rgba(20,32,43,.08);
}
.ebf-blog .ebf-blog-widget-header{
  background:transparent;
  color:var(--ebfb-navy,#14202B);
  font-family:inherit;
  font-weight:750;
  letter-spacing:.02em;
}
.ebf-blog .ebf-blog-widget-header svg{color:var(--ebfb-coral,#C4400E);stroke:currentColor}
.ebf-blog .ebf-blog-rel{border-color:var(--ebfb-line,#D9E3EC)}
.ebf-blog .ebf-blog-rel-title{color:var(--ebfb-navy,#14202B)}
.ebf-blog .ebf-blog-rel-date,
.ebf-blog .ebf-blog-rel:hover .ebf-blog-rel-date{color:var(--ebfb-coral,#C4400E)}
.ebf-blog .ebf-blog-share-btn:hover{
  background:var(--ebfb-coral,#C4400E);
  box-shadow:none;
  transform:none;
}
.ebf-blog .ebf-blog-tag{
  background:rgba(240,83,28,.1);
  color:var(--ebfb-coral,#C4400E);
  border-color:transparent;
}

/* ---- Sidebar fare card: cream quote panel, not burgundy TBF tile ---- */
.ebf-blog .blog-promo-wrap,
.bcf-side .blog-promo-wrap{
  background:#fff;
  border:1px solid #D9E3EC;
  border-radius:14px;
  border-top:3px solid #C4400E;
  box-shadow:none;
}
.ebf-blog .blog-promo-inner,
.bcf-side .blog-promo-inner{
  background:#F3EEE4;
  color:#14202B;
}
.ebf-blog .blog-promo-pill,
.bcf-side .blog-promo-pill{
  background:rgba(240,83,28,.12);
  border:1px solid rgba(240,83,28,.28);
  color:#D2410E;
}
.ebf-blog .blog-promo-city,
.bcf-side .blog-promo-city{color:#14202B}
.ebf-blog .blog-promo-class,
.bcf-side .blog-promo-class{color:#C4400E}
.ebf-blog .blog-promo-fare .amt,
.bcf-side .blog-promo-fare .amt{color:#14202B}
.ebf-blog .blog-promo-note,
.ebf-blog .blog-promo-trust,
.bcf-side .blog-promo-note,
.bcf-side .blog-promo-trust{color:#4A6173}
.ebf-blog .blog-promo-trust span,
.bcf-side .blog-promo-trust span{border-color:#D9E3EC}
.ebf-blog .blog-promo-dots button.on,
.bcf-side .blog-promo-dots button.on{background:#C4400E}
.ebf-blog .blog-promo-prev:hover,
.ebf-blog .blog-promo-next:hover,
.bcf-side .blog-promo-prev:hover,
.bcf-side .blog-promo-next:hover{border-color:#C4400E;color:#C4400E}

.bcf-side-card{
  background:#fff;
  border:1px solid #D9E3EC;
  border-radius:14px;
  border-top:3px solid #C4400E;
}
.bcf-side-card h2,
.bcf-side-card h3{color:#14202B;font-family:inherit}

.ebf-blog .tbf-hero-badge,
.ebf-blog .tbf-hero-meta,
.ebf-blog .ebf-blog-share-row strong,
.ebf-blog .ebf-blog-tag,
.ebf-blog .tbf-btn,
.ebf-blog .ebf-blog-widget-header,
.ebf-blog .tbf-d-dest,
.ebf-blog .tbf-d-route{
  font-family:inherit;
}
.ebf-blog .tbf-hero-modern h1,
.ebf-blog .tbf-w-title,
.ebf-blog .tbf-d-amt,
.ebf-blog .tbf-rich-text blockquote{
  font-family:inherit;
  font-style:normal;
}
.ebf-blog .tbf-rich-text a:hover{
  background:rgba(240,83,28,.08);
  border-color:var(--ebfb-coral,#C4400E);
}
.ebf-blog .ebf-blog-share-btn:hover{
  box-shadow:none;
  transform:none;
}
.ebf-blog .tbf-btn.primary{
  color:#fff;
  box-shadow:none;
}
.ebf-blog .tbf-btn.primary:hover{
  box-shadow:none;
}
.ebf-blog .blog-money-hero .money-hero-kicker,
.ebf-blog .blog-money-hero .money-hero-lead a{
  color:#C4400E;
}
.ebf-blog .blog-money-hero h1{
  font-family:inherit;
  font-weight:750;
}
.ebf-blog .blog-promo-city{font-family:inherit;font-weight:750;color:#14202B}
.ebf-blog .blog-promo-table{
  background:#fff;
  border:1px solid #D9E3EC;
}
.ebf-blog .blog-promo-table .trow + .trow{border-color:#D9E3EC}
.ebf-blog .blog-promo-table .th{color:#4A6173;background:rgba(20,32,43,.05)}
.ebf-blog .blog-promo-table .apt{color:#14202B}
.ebf-blog .blog-promo-table .old{color:#8AA6B8}
.ebf-blog .blog-promo-table .new{color:#C4400E}
.ebf-blog .blog-promo-cta .btn-line{
  border:1.5px solid #14202B !important;
  color:#14202B !important;
  background:transparent !important;
}
.ebf-blog .blog-promo-cta .btn-line:hover{
  background:#14202B !important;
  color:#fff !important;
}

.bcf-side .airline-side__eyebrow{color:#C4400E;font-family:inherit}
.bcf-side .airline-side__title{font-family:inherit;font-weight:750;color:#14202B}
.bcf-side .airline-side__phone:hover{color:#C4400E}

body.theme-studio .ebf-blog .hub-chip{
  color:#D2410E !important;
  background:rgba(240,83,28,.12) !important;
}
body.theme-studio .ebf-blog .hub-panel,
body.theme-studio .ebf-blog .ebf-blog-widget,
body.theme-studio .bcf-side-card,
body.theme-studio .bcf-side .blog-promo-wrap{
  border-top:3px solid #C4400E !important;
  box-shadow:none;
}
body.theme-studio .ebf-blog-wrapper.ebf-blog{
  background:#F3EEE4;
}
body.theme-studio .ebf-blog .blog-faq{
  background:#F3EEE4 !important;
  border-color:#D9E3EC !important;
}
body.theme-studio .ebf-blog .ebf-blog-widget{
  border-radius:14px;
}

@media (max-width:992px){
  .ebf-blog .ebf-blog-layout{padding:0 1rem;margin-top:1rem}
}

/* ============================================================
   Blog article v2 — shared template (no per-article <style>)
   Critical text is visible without JS. No opacity:0 on content.
   ============================================================ */

.ebf-blog-article .ebf-blog-crumbs{
  margin:0 0 1rem;
  font-size:.85rem;
}
.ebf-blog-article .ebf-blog-crumbs ol{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .5rem;
  margin:0;
  padding:0;
  color:#F3EEE4;
}
.ebf-blog-article .ebf-blog-crumbs li:not(:last-child)::after{
  content:"/";
  margin-left:.5rem;
  opacity:.7;
}
.ebf-blog-article .ebf-blog-crumbs a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.ebf-blog-article .ebf-blog-crumbs [aria-current="page"]{opacity:.9}

.ebf-blog-article .ebf-blog-main,
.ebf-blog-article .ebf-blog-aside,
.ebf-blog-article .money-hero-copy,
.ebf-blog-article .money-hero-cta,
.ebf-blog-article .blog-toc,
.ebf-blog-article h1,
.ebf-blog-article .ebf-blog-content{
  opacity:1 !important;
  visibility:visible !important;
  transform:none;
}
.ebf-blog .blog-money-hero,
.ebf-blog .blog-money-hero .money-hero-bg,
.ebf-blog .blog-money-hero .money-hero-bg img{
  background-attachment:scroll !important;
}

/* Same content box as the hero above it.
   This band used max-width:1240px with 1.25rem side padding while the hero
   uses a Bootstrap .container (max-width 1320px, .75rem gutters). The two
   therefore agreed at no viewport: at 1440px the article sat 48px further in
   than the H1 above it, and at 1280px it sat 42px further OUT - the left edge
   visibly stepped in opposite directions as the window resized. Matching the
   container's numbers makes the hero, the breadcrumb and the article share one
   left edge at every width. */
.ebf-blog-layout{
  width:100%;
  max-width:1366px;
  margin:1.25rem auto 4rem;
  padding-inline:12px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:2rem;
  align-items:start;
}
.ebf-blog-main{
  background:#fff;
  border:1px solid #D9E3EC;
  border-radius:14px;
  padding:2rem 2.1rem 2.5rem;
  box-shadow:none;
}
.ebf-blog-content{
  font-size:1.125rem;
  line-height:1.8;
  color:#14202B;
  max-width:42rem;
}
.ebf-blog-content p{margin:0 0 1.25rem}
.ebf-blog-content h2{
  font-size:1.45rem;
  font-weight:750;
  line-height:1.3;
  /* An edge per section. Fourteen consecutive h2 sections with nothing but a
     34px margin between them is the longest undifferentiated run on the site. */
  border-top:1px solid #EDF1F5;
  padding-top:1.5rem;
  margin:2.1rem 0 .85rem;
  color:#14202B;
  scroll-margin-top:5.5rem;
}
.ebf-blog-content h3{
  font-size:1.15rem;
  font-weight:700;
  margin:1.5rem 0 .6rem;
  scroll-margin-top:5.5rem;
}
.ebf-blog-content img,
.ebf-blog-content video,
.ebf-blog-content iframe{
  max-width:100%;
  height:auto;
}
.ebf-blog-content a{
  color:#14202B;
  text-decoration:underline;
  text-decoration-color:#C4400E;
  text-underline-offset:3px;
}
.ebf-blog-content a:focus-visible,
.ebf-blog-article a:focus-visible,
.blog-toc a:focus-visible{
  outline:2px solid #C4400E;
  outline-offset:3px;
}
.ebf-blog-content .table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  max-width:100%;
  margin:0 0 1.25rem;
}
.ebf-blog-content table{
  width:100%;
  border-collapse:collapse;
}
.ebf-blog-content th{
  background:#14202B;
  color:#fff;
  text-align:left;
  padding:.65rem .75rem;
}
.ebf-blog-content td{
  padding:.6rem .75rem;
  border-bottom:1px solid #D9E3EC;
}

.blog-quick-answer{
  margin:0 0 1.5rem;
  padding:1rem 1.1rem;
  background:#F3EEE4;
  border-left:4px solid #C4400E;
  border-radius:0 10px 10px 0;
}
.blog-toc{
  margin:0 0 1.75rem;
  padding:1rem 1.1rem;
  background:#fff;
  border:1px solid #D9E3EC;
  border-radius:12px;
}
.blog-toc__label{
  margin:0 0 .6rem;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#4A6173;
}
.blog-toc ol{margin:0;padding-left:1.2rem}
.blog-toc li{margin:.35rem 0}
.blog-toc a{color:#14202B}

.blog-related-destinations,
.blog-sources,
.ebf-blog-article .blog-faq{
  margin:2rem 0 0;
  padding-top:1.25rem;
  border-top:1px solid #D9E3EC;
}
/* Band headings must outrank the article's own subheadings. These were 20px at
   weight 500 while .ebf-blog-content h2 is 23.2px at weight 750, so a reader
   scanning the page met fourteen loud headings and then three quiet ones and
   concluded the article had ended fourteen headings earlier. */
.blog-related-destinations h2,
.blog-sources h2,
.ebf-blog-article .blog-faq .money-faq-head h2{font-size:1.6rem;font-weight:700;margin:0 0 .6rem}
.blog-related-destinations ul,
.blog-sources ul{margin:0;padding-left:1.15rem}
.blog-related-destinations li,
.blog-sources li{margin:.4rem 0}
.blog-sources__host{color:#4A6173;font-size:.85rem;margin-left:.4rem}

.ebf-blog-share{margin-top:2rem;padding-top:1.25rem;border-top:1px solid #D9E3EC}
.ebf-blog-final-cta{margin:1.5rem 0 0}
.ebf-blog-article .ebf-blog-share-btn{
  width:44px;height:44px;min-width:44px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #D9E3EC;border-radius:999px;color:#14202B;
}
.ebf-blog-article .visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

.ebf-blog-article .blog-promo-card{display:none;opacity:1}
.ebf-blog-article .blog-promo-card:first-child,
.ebf-blog-article .blog-promo-card.is-active{display:block;opacity:1}

.ebf-blog-article .ebf-blog-aside{position:sticky;top:5.5rem;display:flex;flex-direction:column;gap:1.25rem}
.ebf-blog-article .ebf-blog-widget{background:#fff;border:1px solid #D9E3EC;border-radius:14px;overflow:hidden}
.ebf-blog-article .ebf-blog-rel{
  display:flex;gap:.85rem;padding:1rem 1.1rem;
  border-bottom:1px solid #D9E3EC;color:inherit;text-decoration:none;
}
.ebf-blog-article .ebf-blog-rel:last-child{border-bottom:none}
.ebf-blog-article .ebf-blog-rel-img{width:70px;height:70px;border-radius:8px;object-fit:cover;background:#D9E3EC;flex-shrink:0}
.ebf-blog-article .ebf-blog-rel-title{font-weight:650;color:#14202B;line-height:1.35}
.ebf-blog-article .ebf-blog-rel-date{font-size:.8rem;color:#4A6173}
.ebf-blog-article .ebf-blog-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}
.ebf-blog-article .ebf-blog-tag{
  padding:.45rem .8rem;border-radius:999px;background:#F3EEE4;color:#14202B;
  text-decoration:none;font-size:.82rem;min-height:44px;display:inline-flex;align-items:center;
}
.ebf-blog-article .ebf-blog-share-row{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}
.ebf-blog-article .ebf-blog-mobile-cta{
  display:none;position:fixed;top:0;left:0;right:0;z-index:1030;
  transform:translateY(-110%);transition:transform .2s ease;pointer-events:none;
}
.ebf-blog-article .ebf-blog-mobile-cta.is-visible{transform:translateY(0);pointer-events:auto}
.ebf-blog-article .ebf-blog-widget-header{
  padding:.85rem 1rem;border-bottom:1px solid #D9E3EC;
  font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
}

@media (max-width:1024px){
  .ebf-blog-layout{
    display:block;
  }
  .ebf-blog-aside{margin-top:1.5rem}
  .ebf-blog-article .ebf-blog-aside{position:static}
}
@media (max-width:768px){
  .ebf-blog-main{padding:1.25rem 1rem 1.75rem}
  .ebf-blog-content{font-size:1rem;line-height:1.75;max-width:none}
  .ebf-blog-content h2{font-size:1.28rem;margin:1.6rem 0 .7rem}
  .ebf-blog-article .ebf-blog-mobile-cta.is-prepared{display:block}
  .ebf-blog-content .table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .ebf-blog-content table{width:max-content;min-width:100%;font-size:.82rem}
  .ebf-blog-article .ebf-blog-aside .ebf-blog-widget.premium-cta{display:none}
}
@media (max-width:360px){
  .ebf-blog,.ebf-blog-wrapper,.ebf-blog-layout,.ebf-blog-main,.ebf-blog-content{max-width:100%;overflow-x:clip}
}
@media (prefers-reduced-motion:reduce){
  .ebf-blog-article *,
  .ebf-blog-article *::before,
  .ebf-blog-article *::after{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }
  .ebf-blog-article .ebf-blog-mobile-cta:not(.is-visible){
    display:none !important;
    transform:none !important;
  }
}



/* ------------------------------- FAQ inside the article card -------------- */
/* .money-faq is a full-bleed grey band on a money page, where it is a direct
   child of <main>. Rendered inside this white bordered article card it brought
   the grey, both hairline borders and 72px of vertical padding with it, so the
   FAQ read as a grey slab floating inside a white card - and the theme layers
   set that background with !important, which is why scoping the base rule was
   not enough on its own. Plain treatment here; the questions keep their own
   component styling. */
body.theme-compete .ebf-blog-main .money-faq,
body.theme-studio .ebf-blog-main .money-faq,
body .ebf-blog-main .money-faq{
  background:transparent!important;
  border:0!important;
  padding-block:0!important;
  margin-block:2rem 0;
}
