/* country */
    .destination-box {
        max-height: 218px;
    }

    .main-slider {
        height: 80vh;
    }

    .slide-content {
        height: 80vh;
    }

    
  .world-destinations {
    background: #f7f5f2;
    padding: 70px 20px 90px;
  }
 
  .world-destinations .container {
    max-width: 1180px;
    margin: 0 auto;
  }
 
  /* ---------- Intro + search ---------- */
  .wd-intro {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 36px;
  }
 
  .wd-intro .wd-eyebrow {
    color: var(--primary-color);
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 6px;
  }
 
  .wd-intro h2 {
    
    font-weight: 400;
    font-size: 40px;
    color: #2b2a28;
    margin: 0 0 12px;
  }
 
  .wd-intro p {
    color: #6b6864;
    font-size: 15px;
    line-height: 1.7;
    margin: 0 0 28px;
  }
 
  .wd-search {
    position: relative;
    max-width: 420px;
    margin: 0 auto;
  }
 
  .wd-search input {
    width: 100%;
    height: 52px;
    border: 2px solid var(--primary-color);
    border-radius: 30px;
    padding: 0 52px 0 22px;
    font-size: 14px;
    
    color: #2b2a28;
    outline: none;
    background: #fff;
    transition: box-shadow .2s;
  }
 
  .wd-search input::placeholder { color: #a19d97; }
 
  .wd-search input:focus {
    box-shadow: 0 0 0 4px rgba(84, 82, 78, .12);
  }
 
  .wd-search button {
    position: absolute;
    right: 6px;
    top: 6px;
    height: 40px;
    width: 40px;
    border: none;
    border-radius: 50%;
    background: var(--primary-color);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }
 
  .wd-search button svg { width: 16px; height: 16px; }
 
  /* ---------- Quick continent nav ---------- */
  .wd-quicknav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 34px 0 54px;
  }
 
  .wd-quicknav a {
    display: inline-flex;
    align-items: center;
    padding: 9px 20px;
    border-radius: 50px;
    border: 2px solid var(--primary-color);
    color: var(--primary-color);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .3px;
    text-decoration: none;
    transition: all .25s ease;
  }
 
  .wd-quicknav a:hover,
  .wd-quicknav a.is-active {
    background: var(--primary-color);
    color: #fff;
  }
 
  /* ---------- Continent block ---------- */
  .wd-continent { margin-bottom: 46px; 
padding: 15px;
     background: #fff;
      border: 1px solid #ece7de;
      border-top: none;
      border-radius: 18px;
    box-shadow: var(--shadow);
}
  .wd-continent:last-child { margin-bottom: 0; }
 
  .wd-banner {
    position: relative;
    height: 380px;
    border-radius: 18px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    scroll-margin-top: 110px;
    margin: 10px;
  }
 
  .wd-banner img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.2s ease;
  }
 
  .wd-banner:hover img { transform: scale(1.04); }
 
  .wd-banner::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(20,18,16,.88) 0%, rgba(20,18,16,.25) 55%, rgba(20,18,16,0) 100%);
  }
 
  .wd-banner-text {
    position: relative;
    z-index: 2;
    padding: 26px 34px;
    display: flex;
    align-items: baseline;
    gap: 16px;
    flex-wrap: wrap;
  }
 
  .wd-banner-text h3 {
    
    font-weight: 400;
    font-size: 38px;
    color: #fff;
    margin: 0;
  }
 
  .wd-banner-text .wd-count {
    color: rgba(255,255,255,.75);
    font-size: 13px;
    font-weight: 500;
    border-left: 1px solid rgba(255,255,255,.4);
    padding-left: 16px;
  }
 
  /* ---------- Country panel + grid ---------- */
  .wd-panel {
      padding: 30px 26px 18px;
      margin-top: -6px;
   
  }
 
.wd-country-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 8px;
}
 
  .wd-country-grid a {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 8px;
    color: #3d3c39;
    text-decoration: none;
    font-size: 22px;
    border-bottom: 1px dashed #e7e2d9;
    transition: color .18s ease, padding-left .18s ease;
  }
 
  .wd-country-grid a::before {
    content: '';
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--primary-color);
    opacity: .45;
    transition: opacity .18s ease, transform .18s ease;
  }
 
  .wd-country-grid a:hover {
    color: var(--primary-color);
    padding-left: 13px;
  }
 
  .wd-country-grid a:hover::before {
    opacity: 1;
    transform: scale(1.3);
  }
 
  /* ---------- Responsive ---------- */
  @media (max-width: 991px) {
    .wd-country-grid { grid-template-columns: repeat(3, 1fr); }
  }
 
  @media (max-width: 767px) {
    .world-destinations { padding: 46px 14px 60px; }
    .wd-intro h2 { font-size: 28px; }
    .wd-banner { height: 190px; border-radius: 14px; }
    .wd-banner-text { padding: 18px 20px; }
    .wd-banner-text h3 { font-size: 35px; }
    .wd-banner-text .wd-count {font-size: 18px;}
    .wd-panel { padding: 20px 14px 8px; border-radius: 0 0 14px 14px; }
    .wd-country-grid { grid-template-columns: repeat(2, 1fr); }
    .wd-quicknav { gap: 8px; margin: 24px 0 34px; }
    .wd-quicknav a { padding: 7px 15px; font-size: 11.5px; }
    .wd-continent {
        padding:1px;
    }
  }
 
  @media (max-width: 420px) {
    .wd-country-grid { grid-template-columns: 1fr 1fr; }
  }


  /* detail page */
    .destination-box {
        max-height: 218px;
    }

    .main-slider {
        height: 80vh;
    }

    .slide-content {
        height: 80vh;
    }

     .asia-destinations {
    background: #fff;
    padding: 70px 20px 90px;
  }
 
  .asia-destinations .container {
    max-width: 1180px;
    margin: 0 auto;
  }
 
  .ad-intro {
    text-align: center;
    max-width: 620px;
    margin: 0 auto 46px;
  }
 
  .ad-intro .ad-kicker {
    color: var(--primary-color);
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 6px;
  }
 
  .ad-intro h2 {
    
    font-weight: 400;
    font-size: 38px;
    color: #2b2a28;
    margin: 0 0 12px;
  }
 
  .ad-intro p {
    color: #6b6864;
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
  }
 
  /* ---------- Grid ---------- */
  .ad-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
 
  /* ---------- Card ---------- */
  .ad-card {
    background: #fff;
    border: 1px solid #ece7de;
    /* border-radius: 16px; */
    overflow: hidden;
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
    transition: transform .3s ease, box-shadow .3s ease;
    padding: 15px 10px;
    border: 3px solid var(--primary-light);
 
    box-shadow: var(--shadow);
  }
 
  .ad-card:hover {
    transform: translateY(-5px);
  }
 
  .ad-card-img {
    position: relative;
    height: 250px;
    overflow: hidden;
    margin-bottom: 15px;
    /* border-radius: 16px; */
  }
 
  .ad-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s ease;
  }
 
  .ad-card:hover .ad-card-img img {
    transform: scale(1.08);
  }
 
  .ad-card-region {
    position: absolute;
    top: 14px;
    left: 14px;
    background: rgba(20,18,16,.55);
    backdrop-filter: blur(3px);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .3px;
    padding: 6px 13px;
    border-radius: 30px;
  }
 
  .ad-card-days {
    position: absolute;
    bottom: 14px;
    right: 14px;
    background: var(--primary-color);
    color: #fff;
    font-size: 11.5px;
    font-weight: 700;
    padding: 6px 12px;
    border-radius: 8px;
  }
 
  .ad-card-body {
 
    display: flex;
    flex-direction: column;
    flex: 1;
  }
 
  .ad-card-body h3 {
    
    font-weight: 400;
    font-size: 23px;
    color: #2b2a28;
    margin: 0 0 4px;
  }
 
  .ad-card-body .ad-country {
    font-size: 12px;
    color: var(--primary-color);
    font-weight: 600;
    margin-bottom: 12px;
  }
 
  .ad-card-body p {
    font-size: 14px;
    line-height: 1.7;
    color: #63615d;
    margin: 0 0 20px;
    flex: 1;
  }
 
  /* ---------- Actions ---------- */
  .ad-card-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-top: 16px;
    border-top: 1px dashed #e7e2d9;
  }
 
  .ad-btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 11px 12px;
    /* border-radius: 8px; */
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .2px;
    text-decoration: none;
    cursor: pointer;
    border: 1.5px solid var(--primary-color);
    transition: all .2s ease;
  }
 
  .ad-btn svg { width: 14px; height: 14px; flex: 0 0 auto; }
 
  .ad-btn-ghost {
    background: transparent;
    color: var(--primary-color);
  }
 
  .ad-btn-ghost:hover {
    background: var(--primary-color);
    color: #fff;
  }
 
  .ad-btn-solid {
    background: var(--primary-color);
    color: #fff;
  }
 
  .ad-btn-solid:hover {
    opacity: .87;
  }
 
  /* ---------- Responsive ---------- */
  @media (max-width: 991px) {
    .ad-grid { grid-template-columns: repeat(2, 1fr); }
  }
 
  @media (max-width: 620px) {
    .asia-destinations { padding: 46px 14px 60px; }
    .ad-intro h2 { font-size: 27px; }
    .ad-grid { grid-template-columns: 1fr; gap: 22px; }
    .ad-card-actions { flex-direction: column; }
    .ad-btn { width: 100%; }
  }



        .trip-types {
          width: 100%;
          overflow: hidden;
          position: relative;
          padding: 20px;
        }

        .trip-types-heading {
          text-align: center;
          font-size: 28px;
          
          color: #1f1f1f;
          margin-bottom: 44px;
          text-transform: uppercase;
          letter-spacing: 0.5px;
        }

        .trip-types-slider {
          position: relative;
          overflow: hidden;
          width: 100%;
    
        }

        .trip-types-track {
          display: flex;
          transition: transform 0.6s ease;
          will-change: transform;
        }

        .trip-type-card {
          flex: 0 0 25%;
          height: 400px;
          position: relative;
          overflow: hidden;
          border-right: 3px solid #fff;
          box-sizing: border-box;
          text-decoration: none;
          display: block;
        }

        .trip-type-card:last-child {
          border-right: 0;
        }

        .trip-type-card img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          display: block;
          transition: transform 0.6s ease;
        }

        .trip-type-card::after {
          content: "";
          position: absolute;
          left: 0;
          right: 0;
          bottom: 0;
          height: 82px;
          background: rgba(0, 0, 0, 0.35);
          z-index: 1;
          transition: background 0.4s ease, height 0.4s ease;
        }

        .trip-type-title {
          position: absolute;
          left: 15px;
          right: 15px;
          bottom: 25px;
          z-index: 2;
          color: #fff;
          text-align: center;
          
          font-size: 27px;
          line-height: 1.2;
          
          text-transform: uppercase;
          text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
          transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
        }

        .trip-type-card:hover img {
          transform: scale(1.05);
        }

        .trip-type-card:hover::after {
          background: rgba(0, 0, 0, 0.55);
          height: 100%;
        }

        .trip-type-card:hover .trip-type-title {
          transform: translateY(-30px);
        }

        /* Explore button — shared by trip-type-card and destination-region */
        .card-explore-btn {
          position: absolute;
          left: 50%;
          bottom: 45%;
          transform: translate(-50%, 16px);
          opacity: 0;
          visibility: hidden;
          z-index: 3;
          display: inline-flex;
          align-items: center;
          gap: 6px;
       background: var(--primary-color);
          color: #fff;
          border: 2px solid var(--primary-color);
          padding: 20px 40px;
          
          font-size: 12px;
          
          text-transform: uppercase;
          letter-spacing: 0.6px;
          white-space: nowrap;
          transition:
            transform 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.05s,
            opacity 0.35s ease 0.05s,
            visibility 0s linear 0.45s,
            background 0.25s ease,
            color 0.25s ease;
        }

        .card-explore-btn i {
          font-size: 14px;
          transition: transform 0.3s ease;
        }

        .trip-type-card:hover .card-explore-btn,
        .destination-region:hover .card-explore-btn {
          transform: translate(-50%, 0);
          opacity: 1;
          visibility: visible;
          transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
            opacity 0.4s ease,
            visibility 0s linear 0s,
            background 0.25s ease, color 0.25s ease;
        }

        .trip-type-card:hover .card-explore-btn:hover,
        .destination-region:hover .card-explore-btn:hover {
          background: var(--primary-color);
          color: #fff;
          border-color: var(--primary-color);
        }

        .trip-type-card:hover .card-explore-btn:hover i,
        .destination-region:hover .card-explore-btn:hover i {
          transform: translateX(4px);
        }

        /* Slider arrows */
        .trip-types-arrow {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          width: 48px;
          height: 48px;
          border: 0;
          border-radius: 50%;
          background: rgba(0, 0, 0, 0.55);
          color: #fff;
          font-size: 28px;
          line-height: 48px;
          text-align: center;
          cursor: pointer;
          z-index: 5;
          transition: all 0.3s ease;
        }

        .trip-types-arrow:hover {
          background: rgba(0, 0, 0, 0.8);
        }

        .trip-types-prev {
          left: 18px;
        }

        .trip-types-next {
          right: 18px;
        }

        .trip-types-arrow:disabled {
          opacity: 0.35;
          cursor: not-allowed;
        }

        /* Dots */
        .trip-types-dots {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 8px;
          padding: 22px 0 18px;
        }

        .trip-types-dot {
          width: 9px;
          height: 9px;
          padding: 0;
          border: 0;
          border-radius: 50%;
          background: #bbb;
          cursor: pointer;
          transition: all 0.3s ease;
        }

        .trip-types-dot.active {
          width: 28px;
          border-radius: 10px;
          background: #333;
        }

        @media (max-width: 991px) {
          .trip-type-card {
            flex: 0 0 50%;
          }
        }

        @media (max-width: 575px) {
          .trip-type-card {
            flex: 0 0 100%;
            height: 330px;
            border-right: 0;
          }

          .trip-type-title {
            font-size: 21px;
            bottom: 23px;
          }

          .trip-types-arrow {
            width: 40px;
            height: 40px;
            line-height: 40px;
            font-size: 23px;
          }

          .trip-types-prev {
            left: 10px;
          }

          .trip-types-next {
            right: 10px;
          }

          /* On touch devices hover states are unreliable — show the button plainly */
          .card-explore-btn {
            opacity: 1;
            visibility: visible;
           
          }

          .trip-type-title {
            transform: none !important;
          }

          .trip-type-card::after {
            height: 82px !important;
          }
        }
