    /* ── PACKAGE LISTING PAGE – inline override to bypass caching ── */
    .pkg-page-wrap {
      max-width: 1200px;
      margin: 0 auto;
      padding: 3rem 2rem 0
    }

    .pkg-filter-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: .5rem;
      margin-bottom: 2.5rem;
      justify-content: center
    }

    .pkg-filter-tab {
      display: flex;
      align-items: center;
      gap: .35rem;
      padding: .55rem 1.2rem;
      border-radius: 50px;
      font-size: .84rem;
      font-weight: 600;
      cursor: pointer;
      border: 1.5px solid #d4ddd2;
      background: #fff;
      color: #4a5a46;
      transition: all .2s;
      user-select: none;
      font-family: inherit
    }

    .pkg-filter-tab:hover {
      border-color: #4a6741;
      color: #4a6741
    }

    .pkg-filter-tab.active {
      background: #2c3d29;
      color: #fff;
      border-color: #2c3d29
    }

    .pkg-cards-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
      gap: 1.8rem;
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 2rem 5rem
    }

    .pkg-card {
      background: #fff;
      border-radius: 18px;
      overflow: hidden;
      box-shadow: 0 2px 18px rgba(26, 36, 25, .08);
      transition: transform .25s, box-shadow .25s;
      display: flex;
      flex-direction: column;
      cursor: pointer
    }

    .pkg-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 18px 50px rgba(26, 36, 25, .15)
    }

    .pkg-card-img {
      position: relative;
      height: 220px;
      overflow: hidden
    }

    .pkg-card-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform .45s ease;
      display: block
    }

    .pkg-card:hover .pkg-card-img img {
      transform: scale(1.06)
    }

    .pkg-card-badge-new {
      position: absolute;
      top: 12px;
      left: 12px;
      background: #2c3d29;
      color: #fff;
      font-size: .67rem;
      font-weight: 700;
      letter-spacing: .1em;
      padding: .28rem .72rem;
      border-radius: 20px
    }

    .pkg-card-badge-continent {
      position: absolute;
      top: 12px;
      right: 12px;
      background: rgba(255, 255, 255, .88);
      color: #4a5a46;
      font-size: .67rem;
      font-weight: 700;
      letter-spacing: .1em;
      padding: .28rem .72rem;
      border-radius: 20px;
      border: 1px solid rgba(74, 90, 70, .2);
      backdrop-filter: blur(4px)
    }

    .pkg-card-duration {
      position: absolute;
      bottom: 10px;
      left: 12px;
      display: flex;
      align-items: center;
      gap: .3rem;
      background: rgba(26, 36, 25, .62);
      color: #fff;
      font-size: .76rem;
      font-weight: 500;
      padding: .26rem .68rem;
      border-radius: 20px;
      backdrop-filter: blur(4px)
    }

    .pkg-card-body {
      padding: 1.3rem 1.4rem 1.5rem;
      display: flex;
      flex-direction: column;
      flex: 1
    }

    .pkg-card-country {
      font-size: .7rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: #8a9a87;
      margin-bottom: .38rem
    }

    .pkg-card-title {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.28rem;
      font-weight: 700;
      color: #2c3d29;
      margin-bottom: .45rem;
      line-height: 1.3
    }

    .pkg-card-desc {
      font-size: .83rem;
      color: #6b7f68;
      line-height: 1.55;
      margin-bottom: 1rem
    }

    .pkg-card-divider {
      height: 1px;
      background: #e8ede7;
      margin-bottom: 1rem
    }

    .pkg-card-features {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: .32rem .5rem;
      margin-bottom: 1.1rem
    }

    .pkg-card-feature {
      display: flex;
      align-items: center;
      gap: .3rem;
      font-size: .78rem;
      color: #5a6e57
    }

    .pkg-card-prices {
      display: flex;
      gap: 1rem;
      margin-bottom: 1.1rem
    }

    .pkg-card-price-col {
      flex: 1
    }

    .pkg-card-price-label {
      font-size: .63rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .07em;
      color: #8a9a87;
      margin-bottom: .12rem
    }

    .pkg-card-price-value {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.55rem;
      font-weight: 700;
      color: #2c3d29;
      line-height: 1.1
    }

    .pkg-card-price-suffix {
      font-size: .75rem;
      font-weight: 400;
      color: #8a9a87
    }

    .pkg-card-price-sub {
      font-size: .7rem;
      color: #8a9a87
    }

    .pkg-card-cta {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: .4rem;
      background: #2c3d29;
      color: #fff;
      font-size: .9rem;
      font-weight: 700;
      padding: .8rem 1.2rem;
      border-radius: 50px;
      border: none;
      cursor: pointer;
      transition: background .2s, transform .15s;
      text-decoration: none;
      font-family: inherit;
      margin-top: auto
    }

    .pkg-card-cta:hover {
      background: #4a6741
    }

    @media(max-width:720px) {
      .pkg-page-wrap {
        padding: 2rem 1rem 0
      }

      .pkg-cards-grid {
        grid-template-columns: 1fr;
        padding: 0 1rem 3rem
      }
    }
/* ── W2M animation (was line 4654 of index.html) ── */
  @keyframes w2mSpin{to{transform:rotate(360deg)}}.w2m-pkg-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 16px rgba(26,36,25,.09);border:1px solid rgba(74,103,65,.1);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.w2m-pkg-card:hover{transform:translateY(-5px);box-shadow:0 14px 40px rgba(26,36,25,.16)}

/* ── Blog filter tabs (was lines 7709-7715) ── */
      #lightbox.open {

        display: flex !important;

      }

/* ── Footer (was lines 8751-8988) ── */
    .footer {

      background: #1a2419;

      color: #8ab87a;

      padding: 4rem 2rem 2rem;

      margin-top: 6rem;

      font-family: 'DM Sans', sans-serif;

    }



    .footer-container {

      max-width: 1200px;

      margin: 0 auto;

      display: grid;

      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

      gap: 3rem;

      margin-bottom: 3rem;

    }



    .footer-brand {

      grid-column: 1;

      padding-right: 2rem;

    }



    .footer-brand p {

      color: #8ab87a;

      font-size: 0.95rem;

      line-height: 1.6;

      max-width: 280px;

    }



    .footer-section h3 {

      font-size: 0.75rem;

      font-weight: 700;

      text-transform: uppercase;

      letter-spacing: 0.14em;

      color: #c9d9c8;

      margin-bottom: 1.2rem;

      display: flex;

      align-items: center;

      gap: 0.6rem;

    }



    .footer-section h3::before {

      content: '';

      display: block;

      width: 16px;

      height: 2px;

      background: #8ab87a;

      border-radius: 1px;

      flex-shrink: 0;

    }



    .footer-section ul {

      list-style: none;

      padding: 0;

      margin: 0;

    }



    .footer-section ul li {

      margin-bottom: 0.8rem;

    }



    .footer-section a {

      color: #8ab87a;

      text-decoration: none;

      font-size: 0.95rem;

      transition: color 0.2s;

      cursor: pointer;

    }



    .footer-section a:hover {

      color: #a8d98a;

    }



    .footer-section p {

      margin: 0 0 0.8rem 0;

      color: #8ab87a;

      font-size: 0.95rem;

      line-height: 1.6;

    }



    .footer-bottom {

      border-top: 1px solid rgba(138, 184, 122, 0.2);

      padding-top: 2rem;

      text-align: center;

      color: #5a7856;

      font-size: 0.85rem;

    }

    .footer-payments {
      margin-top: 1.5rem;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: .7rem;
    }

    .footer-payments-label {
      font-size: .72rem;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: #5a7856;
    }

    .footer-payments-icons {
      display: flex;
      flex-wrap: wrap;
      gap: .5rem;
      justify-content: center;
      align-items: center;
    }

    .pay-icon {
      border-radius: 5px;
      opacity: .85;
      transition: opacity .2s, transform .2s;
      cursor: default;
    }

    .pay-icon:hover {
      opacity: 1;
      transform: translateY(-2px);
    }

    @media (max-width: 768px) {

      .footer-container {

        grid-template-columns: 1fr;

        gap: 2rem;

      }



      .footer-section h3::before {

        display: none;

      }



      .footer-section h3 {

        margin-bottom: 1rem;

      }

    }

/* ── Cookie toggle knobs (was lines 9120-9124) ── */
    #cookie-modal.open {
      display: flex !important;
    }
