:root {
  --ktpc-navy: #071827;
  --ktpc-blue: #1f6feb;
  --ktpc-sky: #eaf4ff;
  --ktpc-gold: #f5b942;
  --ktpc-ink: #102033;
  --ktpc-muted: #607086;
  --ktpc-card: #ffffff;
  --ktpc-border: #dce6f2;
  --ktpc-radius: 22px;
  --ktpc-shadow: 0 18px 45px rgba(7, 24, 39, .10);
}

body {
  background: #f7fbff;
}

.site-main,
.content-container,
.entry-content-wrap {
  background: transparent !important;
}

.entry-content,
.tpas-wrap {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.tpas-wrap {
  max-width: 1180px !important;
}

.tpas-hero {
  border-radius: 32px;
  background:
    radial-gradient(circle at top right, rgba(245, 185, 66, .30), transparent 36%),
    linear-gradient(135deg, #071827 0%, #103452 54%, #1f6feb 100%);
  color: #fff;
  padding: clamp(42px, 6vw, 82px) !important;
  margin-top: 22px;
  box-shadow: var(--ktpc-shadow);
  overflow: hidden;
}

.tpas-hero h1,
.tpas-hero h2,
.tpas-hero h3,
.tpas-hero p,
.tpas-hero li {
  color: #fff;
}

.tpas-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(31, 111, 235, .22);
  background: rgba(31, 111, 235, .08);
  color: var(--ktpc-blue) !important;
  border-radius: 999px;
  padding: 7px 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tpas-hero .tpas-eyebrow {
  background: rgba(255, 255, 255, .14);
  border-color: rgba(255, 255, 255, .22);
  color: #fff !important;
}

.tpas-lead {
  font-size: clamp(18px, 2vw, 22px);
  line-height: 1.55;
  opacity: .92;
}

.tpas-card {
  border: 1px solid var(--ktpc-border) !important;
  border-radius: var(--ktpc-radius) !important;
  background: var(--ktpc-card) !important;
  box-shadow: 0 10px 30px rgba(7, 24, 39, .07) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.tpas-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--ktpc-shadow) !important;
  border-color: rgba(31, 111, 235, .24) !important;
}

.tpas-score-card {
  background: rgba(255, 255, 255, .13) !important;
  border-color: rgba(255, 255, 255, .22) !important;
  backdrop-filter: blur(12px);
}

.tpas-score-card:hover {
  transform: none;
}

.tpas-aff-card h3::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--ktpc-gold);
  margin-right: 10px;
  vertical-align: middle;
}

.tpas-btn,
.tpas-btn-small,
.wp-block-button__link {
  border-radius: 999px !important;
  font-weight: 800 !important;
  letter-spacing: .01em;
  box-shadow: 0 10px 24px rgba(31, 111, 235, .24);
}

.tpas-btn,
.tpas-btn-small {
  background: var(--ktpc-blue) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
}

.tpas-btn:hover,
.tpas-btn-small:hover {
  filter: brightness(.95);
  transform: translateY(-1px);
}

.tpas-btn-light {
  background: #fff !important;
  color: var(--ktpc-navy) !important;
}

.tpas-empty-widget,
.tpas-widget {
  border-radius: 18px !important;
  background: var(--ktpc-sky) !important;
  border: 1px dashed rgba(31, 111, 235, .24) !important;
}

.tpas-total-card {
  background: linear-gradient(180deg, #ffffff, #f2f8ff) !important;
}

.tpas-total {
  color: var(--ktpc-blue) !important;
}

.tpas-disclosure {
  border-radius: 14px !important;
  background: #fff8e8 !important;
  border: 1px solid #ffe0a3 !important;
  color: #5c4410 !important;
}

.tpas-faq details {
  border: 1px solid var(--ktpc-border);
  border-radius: 16px;
  padding: 14px 16px;
  margin: 12px 0;
  background: #fbfdff;
}

.tpas-faq summary {
  cursor: pointer;
  font-weight: 800;
  color: var(--ktpc-ink);
}

.primary-sidebar,
.secondary-sidebar {
  border-radius: var(--ktpc-radius);
}

@media (max-width: 767px) {
  .tpas-hero {
    border-radius: 22px;
    padding: 32px 20px !important;
  }

  .tpas-cta-row {
    gap: 10px;
  }

  .tpas-btn,
  .tpas-btn-light {
    width: 100%;
    text-align: center;
  }
}

/* Great Price Flights logo sizing */
.site-branding .custom-logo,
.site-header .custom-logo {
    max-height: 76px;
    width: auto;
}
@media (max-width: 768px) {
    .site-branding .custom-logo,
    .site-header .custom-logo {
        max-height: 52px;
    }
}

/* v2.1 lettering fix: keep brand text crisp in header, preview, and mobile. */
.site-branding .custom-logo,
.site-header .custom-logo {
  max-height: 64px;
  width: auto;
  image-rendering: auto;
}
.site-title,
.site-title a,
.branding-title,
.site-branding a.brand {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: -0.035em;
  color: var(--ktpc-navy) !important;
  text-decoration: none !important;
}
.site-description {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  color: var(--ktpc-muted) !important;
  letter-spacing: .01em;
}
@media (max-width: 768px) {
  .site-branding .custom-logo,
  .site-header .custom-logo {
    max-height: 46px;
  }
}

/* v2.3 premium homepage polish overrides */
:root{--ktpc-navy:#06275f;--ktpc-blue:#0678e7;--ktpc-orange:#ff7900;--ktpc-orange-dark:#e85f00;--ktpc-sky:#eff7ff;--ktpc-border:#e2ecf7;--ktpc-shadow:0 18px 50px rgba(6,39,95,.10)}
.site-header{box-shadow:0 6px 28px rgba(6,39,95,.05)}
.site-branding .custom-logo,.site-header .custom-logo{max-height:66px;width:auto}.main-navigation .primary-menu-container > ul > li.menu-item > a{font-weight:800;color:var(--ktpc-navy)}
.tpas-premium-home .tpas-btn,.tpas-premium-home .tpas-btn-small{background:var(--ktpc-orange)!important;border-color:var(--ktpc-orange)!important;box-shadow:0 10px 24px rgba(255,121,0,.24)}
.tpas-premium-home .tpas-btn:hover,.tpas-premium-home .tpas-btn-small:hover{background:var(--ktpc-orange-dark)!important;border-color:var(--ktpc-orange-dark)!important}
.tpas-premium-home .tpas-btn-light,.tpas-premium-home .tpas-btn-outline{background:#fff!important;color:var(--ktpc-blue)!important;border-color:#b9d9ff!important;box-shadow:0 10px 24px rgba(6,120,231,.08)}
.tpas-premium-aff-card h3::before{display:none!important}.tpas-premium-home .tpas-eyebrow{background:rgba(6,120,231,.08);border-color:rgba(6,120,231,.18);color:var(--ktpc-blue)!important}.tpas-premium-hero .tpas-eyebrow{background:rgba(255,255,255,.65);border-color:rgba(255,255,255,.9);color:var(--ktpc-navy)!important}
.tpas-premium-home .tpas-card:hover{transform:translateY(-4px)}
.tpas-premium-home .tpas-disclosure{background:#fff8e8!important;border-color:#ffe0a3!important;color:#5c4410!important}.tpas-premium-home .tpas-empty-widget{background:transparent!important;border:0!important}.tpas-premium-home .tpas-widget{background:#fff!important;border-style:solid!important}.tpas-premium-home .tpas-total-card{background:linear-gradient(180deg,#fff,#f2f8ff)!important}
@media(max-width:768px){.site-branding .custom-logo,.site-header .custom-logo{max-height:48px}.tpas-premium-home .tpas-btn,.tpas-premium-home .tpas-btn-light,.tpas-premium-home .tpas-btn-outline{width:100%;justify-content:center}}


/* v2.5 Kadence live-site alignment fixes */
body.great-price-flights-premium-home .entry-hero,
body.great-price-flights-premium-home .entry-header,
body.great-price-flights-premium-home .page-title,
body.great-price-flights-premium-home .entry-title { display:none !important; }
body.great-price-flights-premium-home .site-container,
body.great-price-flights-premium-home .content-container,
body.great-price-flights-premium-home .entry-content-wrap,
body.great-price-flights-premium-home .content-bg,
body.great-price-flights-premium-home .site-main {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.great-price-flights-site .site-branding .custom-logo,
body.great-price-flights-site .site-header .custom-logo {
  max-height: 70px !important;
  width: auto !important;
}
body.great-price-flights-site .main-navigation .primary-menu-container > ul > li > a {
  font-weight: 800;
  color: #06275f;
}
body.great-price-flights-site .site-header-row-container-inner {
  box-shadow: 0 6px 26px rgba(6,39,95,.05);
}
body.great-price-flights-site .header-button,
body.great-price-flights-site .wp-block-button__link {
  background: #ff7900 !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 22px rgba(255,121,0,.22) !important;
}
@media (max-width: 768px) {
  body.great-price-flights-site .site-branding .custom-logo,
  body.great-price-flights-site .site-header .custom-logo { max-height: 48px !important; }
}

/* v2.6 live homepage lock: make the installed site match the premium mockup */
body.great-price-flights-premium-home .site-header,body.great-price-flights-premium-home header#masthead,body.great-price-flights-premium-home .entry-header,body.great-price-flights-premium-home .page-header{display:none!important}body.great-price-flights-premium-home .site-main,body.great-price-flights-premium-home .content-area,body.great-price-flights-premium-home .entry-content,body.great-price-flights-premium-home .content-container,body.great-price-flights-premium-home .site-container{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}body.great-price-flights-premium-home .entry-content-wrap,body.great-price-flights-premium-home .content-bg{padding:0!important;background:transparent!important}


/* v2.7 front page visual lock */
body.home,
body.page-template-default {
  background:#ffffff;
}
body.home .site-main,
body.home .content-area,
body.home .entry-content-wrap,
body.home .entry-content,
body.home .content-container,
body.home .site-container,
body.home #primary,
body.home #main {
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
body.home .entry-header,
body.home .entry-title,
body.home .page-title {
  display:none !important;
}
body.home .content-bg,
body.home .entry-content-wrap {
  background:transparent !important;
  box-shadow:none !important;
}


/* v2.8 mockup visual lock */
body.home .site-main,
body.home .content-area,
body.home .entry-content-wrap,
body.home .entry-content,
body.home .content-container,
body.home .site-container,
body.home #primary,
body.home #main {
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
body.home .entry-header,
body.home .entry-title,
body.home .page-title {
  display:none !important;
}


/* ============================================================
   Great Price Flights v11.6 CLEAN TOP NAVIGATION
   Keeps long guide/page titles from cluttering the header area.
   ============================================================ */

.site-header .main-navigation,
.site-header .header-navigation,
.site-header .primary-navigation,
.site-header .navigation,
.site-header .menu {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.site-header .main-navigation ul,
.site-header .header-navigation ul,
.site-header .primary-navigation ul,
.site-header .navigation ul,
.site-header .menu {
  gap: 10px !important;
  align-items: center !important;
}

.site-header .main-navigation a,
.site-header .header-navigation a,
.site-header .primary-navigation a,
.site-header .navigation a,
.site-header .menu a {
  color: #06275f !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.site-header .main-navigation a:hover,
.site-header .header-navigation a:hover,
.site-header .primary-navigation a:hover,
.site-header .navigation a:hover,
.site-header .menu a:hover {
  color: #0879e8 !important;
}

/* Safety fallback: if a theme fallback still tries to print every page, keep the header clean. */
.site-header .main-navigation > div > ul > li:nth-child(n+8),
.site-header .header-navigation > div > ul > li:nth-child(n+8),
.site-header .primary-navigation > div > ul > li:nth-child(n+8) {
  display: none !important;
}

@media (min-width: 1025px) {
  .site-header .site-branding {
    margin-right: 28px !important;
  }

  .site-header .main-navigation,
  .site-header .header-navigation,
  .site-header .primary-navigation {
    max-width: calc(100vw - 430px) !important;
    overflow: hidden !important;
  }

  .site-header .main-navigation ul,
  .site-header .header-navigation ul,
  .site-header .primary-navigation ul {
    flex-wrap: nowrap !important;
  }
}

@media (max-width: 1024px) {
  .site-header .main-navigation a,
  .site-header .header-navigation a,
  .site-header .primary-navigation a,
  .site-header .navigation a,
  .site-header .menu a {
    white-space: normal !important;
  }
}

/* v13.4 Trip calculator Start Planning CTA click repair */
html body .gpf-full-cta::after {
  pointer-events: none !important;
}
html body .gpf-full-cta > * {
  position: relative !important;
  z-index: 2 !important;
}
html body .gpf-full-cta .gpf-start-planning-btn {
  position: relative !important;
  z-index: 3 !important;
  pointer-events: auto !important;
}
