  body.travel-page {
        background: #f4f6fb !important;
    }

    #airport-layout {
        max-width: 1200px;
        margin: 40px auto;
        padding: 0 20px;
    }

    #airport-layout h1 {
        font-size: 2rem;
        margin-bottom: 10px;
        color: #162f7b;
    }

   #airport-layout .section-title {
    font-weight: 700;
    color: #003A5C;
    font-size: 1.1rem;
    margin-bottom: 24px;
}
 

    .airport-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
        gap: 20px;
    }

    .airport-card {
        background: #ffffff;
        border-radius: 14px;
        padding: 16px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.06);
        border: 1px solid #e3e6f0;
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .airport-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
    }

    .airport-code {
        font-size: 1.4rem;
        font-weight: 700;
        color: #162f7b;
    }

    .airport-city {
        font-size: 0.95rem;
        color: #555;
    }

    .airport-country {
        font-size: 0.9rem;
        color: #777;
    }

    .airport-links {
        margin-top: 8px;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .airport-links a {
        flex: 1 1 120px;
        text-align: center;
        padding: 8px 10px;
        border-radius: 8px;
        text-decoration: none;
        font-size: 0.9rem;
        font-weight: 600;
        color: #003A5C;
        background: #f2f6ff;
        border: 1px solid #d0ddff;
        transition: background .2s ease, color .2s ease, border-color .2s ease;
    }

    .airport-links a:hover {
        background: #003A5C;
        color: #fff;
        border-color: #003A5C;
    }

#quick-tools {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 32px;
}

/* Pill button */
.qt-pill {
    background: #e8f1ff;
    padding: 10px 18px;
    border-radius: 30px;
    font-weight: 600;
    color: #003A5C;
    text-decoration: none;
    border: 1px solid #cddcff;
    transition: 0.2s;
}
.qt-pill:hover {
    background: #003A5C;
    color: #fff;
}

/* Wide banner */
.qt-banner {
    flex: 1;
    background: linear-gradient(90deg, #f0f7ff, #e3ecff);
    padding: 12px 18px;
    border-radius: 10px;
    font-weight: 600;
    color: #003A5C;
    text-decoration: none;
    border: 1px solid #d0ddff;
    transition: 0.2s;
}
.qt-banner:hover {
    background: #003A5C;
    color: #fff;
}

/* Minimal link */
.qt-link {
    font-weight: 600;
    color: #003A5C;
    text-decoration: underline;
    padding: 10px 0;
    transition: 0.2s;
}
.qt-link:hover {
    color: #001f33;
}

/* Square button */
.qt-square {
    width: 120px;
    text-align: center;
    background: #e9f8ef;
    padding: 12px 0;
    border-radius: 12px;
    font-weight: 600;
    color: #0b5c2c;
    text-decoration: none;
    border: 1px solid #bfe8cf;
    transition: 0.2s;
}
.qt-square:hover {
    background: #0b5c2c;
    color: #fff;
}

#logo-area {
    background-image: url('/assets/logo/puntacana2.jpg');
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 150px; /* or whatever height you want */
}


.destination-spotlight {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.destination-spotlight h3 {
    margin-top: 0;
}

.spot-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.spot-icon {
    font-size: 32px;
}

.spot-title {
    font-weight: 700;
    font-size: 18px;
}

.spot-temp {
    color: #0077cc;
    font-weight: 600;
}

.spot-tip {
    font-size: 14px;
    opacity: 0.85;
}

.travel-checklist {
    background: #f8fafc;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    border-left: 4px solid #0077cc;
}

.travel-checklist h3 {
    margin-top: 0;
}

.travel-checklist ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.travel-checklist li {
    margin: 6px 0;
    font-size: 15px;
}
.airport-map-section {
    margin: 30px 0;
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

.airport-map-section h3 {
    margin-top: 0;
}

.airport-map-frame {
    margin-top: 10px;
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
    overflow: hidden;
    border-radius: 10px;
}

.airport-map-frame iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


.destination-spotlight {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

#spotlight-content {
    transition: opacity 0.4s ease;
}

.spot-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.spot-icon {
    font-size: 32px;
}

.spot-title {
    font-weight: 700;
    font-size: 18px;
}

.spot-temp {
    color: #0077cc;
    font-weight: 600;
}

.spot-tip {
    font-size: 14px;
    opacity: 0.8;
}
.destination-spotlight {
    background-image: url('/assets/logo/clouds.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);

    color: #fff; /* makes text readable */
    position: relative;
    overflow: hidden;
}
.destination-spotlight::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.25); /* subtle dark overlay */
    z-index: 0;
}

.destination-spotlight * {
    position: relative;
    z-index: 1;
}

#travel-checklist {
  background: #f8fbff;
  border: 1px solid #dbe9ff;
  padding: 20px;
  border-radius: 12px;
  margin-top: 20px;
}

#travel-checklist h3 {
  margin-bottom: 12px;
}

#travel-checklist .checklist {
  list-style: none;
  padding: 0;
  margin: 0 0 15px 0;
}

#travel-checklist .checklist li {
  margin: 8px 0;
  font-size: 1rem;
}

#travel-checklist input[type="checkbox"] {
  transform: scale(1.3);
  margin-right: 10px;
}

.print-btn {
  background: #0078ff;
  color: white;
  border: none;
  padding: 10px 16px;
  border-radius: 8px;
  cursor: pointer;
}

.print-btn:hover {
  background: #005fcc;
}

@media print {

  /* Hide everything on the page */
  body * {
    visibility: hidden !important;
  }

  /* Show ONLY the checklist */
  #travel-checklist, 
  #travel-checklist * {
    visibility: visible !important;
  }

  /* Make the checklist the printed page */
  #travel-checklist {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 40px;
    background: white !important;
    border: 2px solid #d0d7e5 !important;
    border-radius: 12px;
    box-shadow: none !important;
  }

  /* Logo styling */
  #travel-checklist .print-logo {
    display: block;
    margin: 0 auto 20px auto;
    width: 160px;
  }

  /* Title styling */
  #travel-checklist h3 {
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 25px;
    color: #003A5C;
  }

  /* Checklist spacing */
  #travel-checklist ul.checklist {
    margin-top: 10px;
    font-size: 1.1rem;
    line-height: 1.6;
  }

  /* Hide the print button */
  .print-btn {
    display: none !important;
  }
}
#travel-checklist .print-logo {
    width: 300px !important;
    height: auto !important;
    display: block;
    margin: 0 auto 20px auto;
}

#travel-checklist {
    overflow: visible !important;
}
.destination-spotlight,
#airport-layout {
    overflow: visible !important;
}
.fun-checklist .section-title {
    margin-top: 18px;
    font-weight: 700;
    font-size: 1.1rem;
    color: #003A5C;
    padding-bottom: 4px;
    border-bottom: 2px solid #dbe9ff;
}

.fun-checklist li {
    margin: 10px 0;
    display: flex;
    align-items: center;
}

.fun-checklist input[type="checkbox"] {
    transform: scale(1.3);
    margin-right: 10px;
}

.fun-checklist span {
    font-size: 1rem;
    display: inline-block;
}

/* Dominican Republic (PUJ) */
.airport-card.dr .airport-code {
    background: linear-gradient(90deg, #002D62, #CE1126);
    color: #fff;
}

/* Jamaica (MBJ) */
.airport-card.jm .airport-code {
    background: linear-gradient(90deg, #000000, #009B3A, #FED100);
    color: #fff;
}

/* Mexico (CUN) */
.airport-card.mx .airport-code {
    background: linear-gradient(90deg, #006847, #CE1126);
    color: #fff;
}

/* Bahamas (NAS) */
.airport-card.bs .airport-code {
    background: linear-gradient(90deg, #00A3E0, #FFC72C, #000000);
    color: #fff;
}

.vip-know-section {
    overflow: hidden;
    margin-top: 40px;
    padding: 48px 32px; /* bigger pill */
    background: #ffffff;
    border-radius: 20px; /* more premium */
    border: 1px solid #e7e3df;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08); /* stronger shadow */
}

.vip-title {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center;
}

.vip-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
}

.vip-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.vip-icon {
    font-size: 1.6rem;
}

.vip-text {
    font-size: 0.95rem;
    line-height: 1.35rem;
    color: #444;
}

.vip-know-section {
    border-top: 4px solid #f4c542;
}

.vip-know-section {
    width: 120%;
}
.vip-know-section {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.vip-know-section.dr .vip-title::before {
    color: #CE1126;
}

.vip-know-section.dr {
    box-shadow: 0 0 12px rgba(206, 17, 38, 0.35);
}

.vip-know-section.dr {
    border-top: 4px solid #CE1126;
}
.vip-know-section.jm {
    border-top: 4px solid #009B3A; /* Jamaica green */
}

.vip-know-section.jm {
    margin-left: -39px;
}

.vip-know-section.mx {
    border-top: 4px solid #006847; /* Mexico green */
}


.vip-know-section.mx {
    margin-left: 0px; /* adjust to 30px, 40px, etc. */
}
.vip-know-section.dr {
    margin-left: -80px; /* adjust to -10, -30, etc. */
}
.vip-know-section.bs {
    border-top: 4px solid #00A3E0; /* Bahamas aqua */
}

.vip-know-section.bs {
    margin-left: 39px;
}

.popular-destinations {
    margin-bottom: 30px;
}

.popular-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 15px;
}

.vip-know-section {
    margin-top: 80px; /* adjust to 40px or 50px if you want more space */
}

/* Dominican Republic – soft red */
.pill-tab.dr,
.airport-card.dr .airport-header {
    background: rgba(255, 80, 80, 0.15);
    border: 1px solid rgba(255, 80, 80, 0.25);
}

/* Jamaica – soft green */
.pill-tab.jm,
.airport-card.jm .airport-header {
    background: rgba(0, 180, 90, 0.15);
    border: 1px solid rgba(0, 180, 90, 0.25);
}

/* Mexico – soft teal */
.pill-tab.mx,
.airport-card.mx .airport-header {
    background: rgba(0, 150, 170, 0.15);
    border: 1px solid rgba(0, 150, 170, 0.25);
}

/* Bahamas – soft blue */
.pill-tab.bs,
.airport-card.bs .airport-header {
    background: rgba(70, 130, 255, 0.15);
    border: 1px solid rgba(70, 130, 255, 0.25);
}

/* Dominican Republic – soft red */
.vip-know-section.dr {
    background: rgba(255, 80, 80, 0.12);
    border-left: 6px solid rgba(255, 80, 80, 0.35);
}

/* Jamaica – soft green */
.vip-know-section.jm {
    background: rgba(0, 180, 90, 0.12);
    border-left: 6px solid rgba(0, 180, 90, 0.35);
}

/* Mexico – soft teal */
.vip-know-section.mx {
    background: rgba(0, 150, 170, 0.12);
    border-left: 6px solid rgba(0, 150, 170, 0.35);
}

/* Bahamas – soft blue */
.vip-know-section.bs {
    background: rgba(70, 130, 255, 0.12);
    border-left: 6px solid rgba(70, 130, 255, 0.35);
}


/* Dominican Republic – soft red */
.qtpill-dr {
    background: rgba(255, 80, 80, 0.15);
    border: 1px solid rgba(255, 80, 80, 0.25);
}

/* Jamaica – soft green */
.qtpill-jm {
    background: rgba(0, 180, 90, 0.15);
    border: 1px solid rgba(0, 180, 90, 0.25);
}

/* Mexico – soft teal */
.qtpill-mx {
    background: rgba(0, 150, 170, 0.15);
    border: 1px solid rgba(0, 150, 170, 0.25);
}

/* Bahamas – soft blue */
.qtpill-bs {
    background: rgba(70, 130, 255, 0.15);
    border: 1px solid rgba(70, 130, 255, 0.25);
}

.airport-card .airport-country[data-i18n="country_canada"]::before {
    content: "🇨🇦 ";
}
/* Wide banner */
.qt-banner {
    flex: 1;
    background: linear-gradient(90deg, #f0f7ff, #e3ecff);
    padding: 12px 18px;
    border-radius: 10px;
    font-weight: 600;
    color: #003A5C;
    text-decoration: none;
    border: 1px solid #d0ddff;
    transition: 0.2s;
}
.qt-banner:hover {
    background: #003A5C;
    color: #fff;
}

/* Minimal link */
.qt-link {
    font-weight: 600;
    color: #003A5C;
    text-decoration: underline;
    padding: 10px 0;
    transition: 0.2s;
}
.qt-link:hover {
    color: #001f33;
}

/* Square button */
.qt-square {
    width: 120px;
    text-align: center;
    background: #e9f8ef;
    padding: 12px 0;
    border-radius: 12px;
    font-weight: 600;
    color: #0b5c2c;
    text-decoration: none;
    border: 1px solid #bfe8cf;
    transition: 0.2s;
}
.qt-square:hover {
    background: #0b5c2c;
    color: #fff;
}
#logo-area {
    background-image: url('/assets/logo/puntacana2.jpg');
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 150px; /* or whatever height you want */
}


.destination-spotlight {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.destination-spotlight h3 {
    margin-top: 0;
}

.spot-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.spot-icon {
    font-size: 32px;
}

.spot-title {
    font-weight: 700;
    font-size: 18px;
}

.spot-temp {
    color: #0077cc;
    font-weight: 600;
}

.spot-tip {
    font-size: 14px;
    opacity: 0.85;
}

.travel-checklist {
    background: #f8fafc;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    border-left: 4px solid #0077cc;
}

.travel-checklist h3 {
    margin-top: 0;
}

.travel-checklist ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.travel-checklist li {
    margin: 6px 0;
    font-size: 15px;
}
.airport-map-section {
    margin: 30px 0;
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

.airport-map-section h3 {
    margin-top: 0;
}

.airport-map-frame {
    margin-top: 10px;
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
    overflow: hidden;
    border-radius: 10px;
}

.airport-map-frame iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.destination-spotlight {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

#spotlight-content {
    transition: opacity 0.4s ease;
}

.spot-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.spot-icon {
    font-size: 32px;
}

.spot-title {
    font-weight: 700;
    font-size: 18px;
}

.spot-temp {
    color: #0077cc;
    font-weight: 600;
}

.spot-tip {
    font-size: 14px;
    opacity: 0.8;
}
.destination-spotlight {
    background-image: url('/assets/logo/clouds.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);

    color: #fff; /* makes text readable */
    position: relative;
    overflow: hidden;
}
.destination-spotlight::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.25); /* subtle dark overlay */
    z-index: 0;
}

.destination-spotlight * {
    position: relative;
    z-index: 1;
}

#travel-checklist {
  background: #f8fbff;
  border: 1px solid #dbe9ff;
  padding: 20px;
  border-radius: 12px;
  margin-top: 20px;
}

#travel-checklist h3 {
  margin-bottom: 12px;
}

#travel-checklist .checklist {
  list-style: none;
  padding: 0;
  margin: 0 0 15px 0;
}

#travel-checklist .checklist li {
  margin: 8px 0;
  font-size: 1rem;
}

#travel-checklist input[type="checkbox"] {
  transform: scale(1.3);
  margin-right: 10px;
}
.print-btn {
  background: #0078ff;
  color: white;
  border: none;
  padding: 10px 16px;
  border-radius: 8px;
  cursor: pointer;
}

.print-btn:hover {
  background: #005fcc;
}

@media print {

  /* Hide everything on the page */
  body * {
    visibility: hidden !important;
  }

  /* Show ONLY the checklist */
  #travel-checklist, 
  #travel-checklist * {
    visibility: visible !important;
  }

  /* Make the checklist the printed page */
  #travel-checklist {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 40px;
    background: white !important;
    border: 2px solid #d0d7e5 !important;
    border-radius: 12px;
    box-shadow: none !important;
  }

  /* Logo styling */
  #travel-checklist .print-logo {
    display: block;
    margin: 0 auto 20px auto;
    width: 160px;
  }

  /* Title styling */
  #travel-checklist h3 {
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 25px;
    color: #003A5C;
  }

  /* Checklist spacing */
  #travel-checklist ul.checklist {
    margin-top: 10px;
    font-size: 1.1rem;
    line-height: 1.6;
  }

  /* Hide the print button */
  .print-btn {
    display: none !important;
  }
}
#travel-checklist .print-logo {
    width: 300px !important;
    height: auto !important;
    display: block;
    margin: 0 auto 20px auto;
}

#travel-checklist {
    overflow: visible !important;
}
.destination-spotlight,
#airport-layout {
    overflow: visible !important;
}
.fun-checklist .section-title {
    margin-top: 18px;
    font-weight: 700;
    font-size: 1.1rem;
    color: #003A5C;
    padding-bottom: 4px;
    border-bottom: 2px solid #dbe9ff;
}

.fun-checklist li {
    margin: 10px 0;
    display: flex;
    align-items: center;
}

.fun-checklist input[type="checkbox"] {
    transform: scale(1.3);
    margin-right: 10px;
}

.fun-checklist span {
    font-size: 1rem;
    display: inline-block;
}

/* Dominican Republic (PUJ) */
.airport-card.dr .airport-code {
    background: linear-gradient(90deg, #002D62, #CE1126);
    color: #fff;
}

/* Jamaica (MBJ) */
.airport-card.jm .airport-code {
    background: linear-gradient(90deg, #000000, #009B3A, #FED100);
    color: #fff;
}

/* Mexico (CUN) */
.airport-card.mx .airport-code {
    background: linear-gradient(90deg, #006847, #CE1126);
    color: #fff;
}

/* Bahamas (NAS) */
.airport-card.bs .airport-code {
    background: linear-gradient(90deg, #00A3E0, #FFC72C, #000000);
    color: #fff;
}

.vip-know-section {
    overflow: hidden;
    margin-top: 40px;
    padding: 48px 32px; /* bigger pill */
    background: #ffffff;
    border-radius: 20px; /* more premium */
    border: 1px solid #e7e3df;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08); /* stronger shadow */
}

.vip-title {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center;
}

.country-box.cu {
    background: rgba(0, 102, 204, 0.12);
    border: 1px solid rgba(0, 102, 204, 0.25);
}
.country-box.aw {
    background: rgba(0, 180, 220, 0.12);
    border: 1px solid rgba(0, 180, 220, 0.25);
}
.country-box.pr {
    background: rgba(220, 40, 60, 0.12);
    border: 1px solid rgba(220, 40, 60, 0.25);
}
.vip-know-section.cu {
    background: rgba(0, 102, 204, 0.12);
    border: 1px solid rgba(0, 102, 204, 0.25);
}
.vip-know-section.aw {
    background: rgba(0, 180, 220, 0.12);
    border: 1px solid rgba(0, 180, 220, 0.25);
}
.vip-know-section.pr {
    background: rgba(220, 40, 60, 0.12);
    border: 1px solid rgba(220, 40, 60, 0.25);
}
.vip-know-section.bb {
    background: rgba(255, 200, 40, 0.12);
    border: 1px solid rgba(255, 200, 40, 0.25);
}
.vip-know-section.cu {
    background: rgba(0, 102, 204, 0.12);
    border-left: 6px solid rgba(0, 102, 204, 0.35);
}
.vip-know-section.aw {
    background: rgba(0, 180, 220, 0.12);
    border-left: 6px solid rgba(0, 180, 220, 0.35);
}
.vip-know-section.pr {
    background: rgba(220, 40, 60, 0.12);
    border-left: 6px solid rgba(220, 40, 60, 0.35);
}
.vip-know-section.bb {
    background: rgba(255, 200, 40, 0.12);
    border-left: 6px solid rgba(255, 200, 40, 0.35);
}
/* Cuba (HAV) */
.airport-card.cu .airport-code {
    background: linear-gradient(90deg, #002A8F, #D52B1E);
    color: #fff;
}
/* Aruba (AUA) */
.airport-card.aw .airport-code {
    background: linear-gradient(90deg, #00A3E0, #FCD116, #EF3340);
    color: #fff;
}
/* Puerto Rico (SJU) */
.airport-card.pr .airport-code {
    background: linear-gradient(90deg, #0033A0, #ED0000);
    color: #fff;
}
/* Barbados (BGI) */
.airport-card.bb .airport-code {
    background: linear-gradient(90deg, #00267F, #FFC726, #00267F);
    color: #fff;
}

.vip-know-section.cu {
    background: rgba(0, 102, 204, 0.12);
    border-left: 6px solid rgba(0, 102, 204, 0.35);
}
.vip-know-section.aw {
    background: rgba(0, 180, 220, 0.12);
    border-left: 6px solid rgba(0, 180, 220, 0.35);
}
.vip-know-section.pr {
    background: rgba(220, 40, 60, 0.12);
    border-left: 6px solid rgba(220, 40, 60, 0.35);
}
.vip-know-section.bb {
    background: rgba(255, 200, 40, 0.12);
    border-left: 6px solid rgba(255, 200, 40, 0.35);
}
.qtpill-cu {
    background: rgba(0, 102, 204, 0.15);
    border: 1px solid rgba(0, 102, 204, 0.25);
}
.qtpill-aw {
    background: rgba(0, 180, 220, 0.15);
    border: 1px solid rgba(0, 180, 220, 0.25);
}
.qtpill-pr {
    background: rgba(220, 40, 60, 0.15);
    border: 1px solid rgba(220, 40, 60, 0.25);
}
.qtpill-bb {
    background: rgba(255, 200, 40, 0.15);
    border: 1px solid rgba(255, 200, 40, 0.25);
}
.airport-card.cu .airport-header {
    background: rgba(0, 102, 204, 0.15);
    border: 1px solid rgba(0, 102, 204, 0.25);
}
.airport-card.aw .airport-header {
    background: rgba(0, 180, 220, 0.15);
    border: 1px solid rgba(0, 180, 220, 0.25);
}
.airport-card.pr .airport-header {
    background: rgba(220, 40, 60, 0.15);
    border: 1px solid rgba(220, 40, 60, 0.25);
}
.airport-card.bb .airport-header {
    background: rgba(255, 200, 40, 0.15);
    border: 1px solid rgba(255, 200, 40, 0.25);
}
/* =============================== */
/* FULL-WIDTH HORIZONTAL FOOTER    */
/* =============================== */

.bottom-trust-section {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 40px 60px !important;

    background: #ffffff !important;  /* white */
    color: #000000 !important;       /* black */

    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 60px !important;
}

/* Make each section inside footer behave like columns */
.bottom-trust-section > * {
    flex: 1 !important;
}

/* Headings */
.bottom-trust-section h3,
.bottom-trust-section h4 {
    color: #000 !important;
    border: none !important;
    margin-bottom: 10px !important;
}

/* Text */
.bottom-trust-section p {
    color: #333 !important;
}

/* Links */
.bottom-trust-section a {
    color: #000 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.bottom-trust-section a:hover {
    text-decoration: underline !important;
}

/* Remove all <hr> lines */
.bottom-trust-section hr {
    display: none !important;
}
/* ============================
   Support & Policies (Cleaned)
   ============================ */

/* Wrapper */
.bottom-trust-section {
    width: 100% !important;
    margin-top: 48px !important;
    padding: 40px 60px !important;
    background: #ffffff !important;
    color: #000 !important;

    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 40px !important;

    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* FINAL OVERRIDE — MATCH INDEX CONTOUR BLOCK */
.bottom-trust-section {
    width: 100%;
    max-width: 1100px;
    margin: 40px auto;
    padding: 32px 40px;

    background: #ffffff !important;
    border-radius: 16px !important;
    border: 1px solid #e7e3df !important;
    box-shadow: 0 3px 10px rgba(0,0,0,0.06) !important;

    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    gap: 40px !important;
}

/* Columns */
.bottom-trust-section .trust-col {
    flex: 1 1 240px !important;
    min-width: 240px !important;
    overflow-wrap: break-word !important;
}
.pill-checklist {
    background: #e8f3ff !important;   /* soft light blue */
    color: #003A5C !important;        /* deep blue text */
    border-radius: 20px;
    padding: 8px 16px;
    font-weight: 600;
    border: 1px solid #c7e3ff;
    white-space: nowrap;
}

.pill-checklist:hover {
    background: #d4eaff !important;
    border-color: #a8d4ff;
}

.checklist-dropdown {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
}

.checklist-btn {
    background: #e8f3ff;
    color: #003A5C;
    padding: 10px 18px;
    border-radius: 30px;
    border: 1px solid #c7e3ff;
    font-weight: 600;
    cursor: pointer;
    font-size: 0.95rem;
}

.checklist-btn:hover {
    background: #003A5C;
    color: #fff;
}

.checklist-menu {
    display: none;
    position: absolute;
    background: #ffffff;
    border: 1px solid #d0ddff;
    border-radius: 12px;
    padding: 10px 0;
    min-width: 240px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    z-index: 20;
}

.checklist-menu a {
    display: block;
    padding: 10px 16px;
    color: #003A5C;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.95rem;
}

.checklist-menu a:hover {
    background: #e8f3ff;
}

.checklist-dropdown:hover .checklist-menu {
    display: block;
}

#canadian-airport-selector {
    margin: 20px 0 30px 0;
}

.selector-row {
    display: flex;
    gap: 12px;
}

.selector-row select {
    padding: 10px 14px;
    border-radius: 8px;
    border: 1px solid #c7e3ff;
    background: #e8f3ff;
    color: #003A5C;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
}

.selector-row select:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
/* Unified pill style for all quick tools */
.qt-pill,
.qt-banner,
.qt-link,
.qt-square,
.checklist-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    background: #e8f3ff;
    color: #003A5C;
    padding: 10px 16px;
    border-radius: 30px;
    border: 1px solid #c7e3ff;

    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;

    transition: background 0.2s ease, color 0.2s ease;
}

/* Hover */
.qt-pill:hover,
.qt-banner:hover,
.qt-link:hover,
.qt-square:hover,
.checklist-btn:hover {
    background: #003A5C;
    color: #ffffff;
}

/* Remove underline from Time Zone link */
.qt-link {
    text-decoration: none !important;
}

/* Fix the green currency box */
.qt-square {
    background: #e8f3ff !important;
    border: 1px solid #c7e3ff !important;
    border-radius: 30px !important;
}
.qt-pill,
.qt-banner,
.qt-link,
.qt-square,
.checklist-btn {
    padding: 10px 20px;
}
/* Force Currency Converter to match the pill size */
.qt-square {
    padding: 10px 20px !important;
    min-width: 180px; /* adjust this number until it visually matches */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
}

.checklist-dropdown .qt-pill {
    padding: 10px 18px;
    font-size: 16px;
    line-height: 1.3;
    height: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

#quick-tools {
    align-items: center !important;
}
#quick-tools .checklist-dropdown {
    margin-left: 4px !important; /* adjust to 4, 6, 8, etc. */
}
#quick-tools .qt-square span {
    white-space: nowrap !important;
}
/* Make Currency Converter pill wider (French-friendly) */
#quick-tools .qt-square {
    min-width: 230px !important;   /* adjust to 200–240 if needed */
    padding: 12px 22px !important; /* more breathing room */
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
/* Fix vertical alignment of the Travel Checklists pill */
#quick-tools .checklist-dropdown {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
}
.airport-block { display: none; }
.airport-block.active { display: block; }
.airport-block {
    display: none;
    margin-top: 20px;
}

.airport-block.active {
    display: block;
}

.selector-label {
    font-weight: 600;
    margin-bottom: 6px;
}

/* ============================
   FINAL CHECKLIST DROPDOWN FIX
   ============================ */



.checklist-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    background: #fff !important;
    padding: 12px !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    display: none !important;
    z-index: 9999999 !important;
}

.checklist-menu.open {
    display: block !important;
}
p.subhead {
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: #003A5C !important; /* your deep blue */
    margin-bottom: 20px !important;
}
.qt-square {
    background: #e8f1ff !important;
    color: #003A5C !important;
    border: 1px solid #cddcff !important;
}

.qt-square:hover {
    background: #003A5C !important;
    color: #fff !important;
}
/* Group Title */
.mega-title {
    font-size: 20px;
    font-weight: 700;
    color: #222;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Group Description */
.mega-desc {
    font-size: 13px;
    color: #666;
    margin-bottom: 12px;
}

/* Column Titles */
.mega-col h3 {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin-bottom: 6px;
}

/* Links */
.mega-col a {
    display: block;
    font-size: 14px;
    color: #222;
    padding: 3px 0;
}

/* Optional: subtle background tint per group */
.mega-group {
    background: rgba(255, 255, 255, 0.85);
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}
/* Base group styling */
.mega-group {
    padding: 18px;
    border-radius: 10px;
    margin-bottom: 20px;
}

/* Travel Gear */
.mega-group:nth-child(1) {
    background: rgba(0, 120, 255, 0.06); /* soft blue */
}

/* Travel Tech */
.mega-group:nth-child(2) {
    background: rgba(0, 200, 180, 0.06); /* soft teal */
}

/* Family Travel */
.mega-group:nth-child(3) {
    background: rgba(255, 220, 0, 0.08); /* soft yellow */
}

/* Resort Wear */
.mega-group:nth-child(4) {
    background: rgba(255, 150, 80, 0.07); /* soft peach */
}

/* Relaxing */
.mega-group:nth-child(5) {
    background: rgba(180, 120, 255, 0.07); /* soft lavender */
}
.mega-title {
    font-size: 20px;
    font-weight: 800; /* stronger bold */
    color: #1a1a1a;
    margin-bottom: 4px;
}
.mega-col h3 {
    font-size: 15px;
    font-weight: 700;
    color: #222;
    margin-bottom: 6px;
}

.mega-content {
    max-height: 80vh;   /* fits inside screen */
    overflow-y: auto;   /* enables scrolling */
    padding-right: 10px; /* avoids scrollbar overlap */
}
.checklist-wrapper {
    position: relative;
    display: inline-block;
}

