  
    /* ── Reset ─────────────────────────────────────────── */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    :root {
      --t1:    #1a7abf;
      --t2:    #0d5a9e;
      --t3:    #eaf4fb;
      --t4:    #a8cce8;
      --dark:  #0c1a2e;
      --mid:   #2e4470;
      --muted: #6b82a0;
      --text:  #1c2e48;
      --bg:    #f4f8fc;
      --white: #ffffff;
      --sh:    0 2px 20px rgba(13,90,158,.1);
      --sh2:   0 8px 40px rgba(13,90,158,.18);
    }
    html { scroll-behavior: smooth; }
    body { font-family: 'Inter', sans-serif; color: var(--text); background: var(--white); overflow-x: hidden; line-height: 1.6; }
    h1,h2,h3,h4 { font-family: 'Playfair Display', serif; line-height: 1.25; }
    a { text-decoration: none; color: inherit; }
    img { display: block; max-width: 100%; }

    /* ── Accent strip ──────────────────────────────────── */
    .strip { height: 3px; background: linear-gradient(90deg, var(--t2), var(--t1) 50%, var(--t2)); }

    /* ═══════════════════════════════════════════════════ */
    /* HEADER                                              */
    /* ═══════════════════════════════════════════════════ */
    header {
      position: fixed; top: 3px; width: 100%; z-index: 200;
      background: rgba(255,255,255,.95);
      backdrop-filter: blur(12px);
      border-bottom: 1px solid rgba(168,204,232,.4);
      transition: box-shadow .3s;
    }
    header.scrolled { box-shadow: var(--sh); }
    .nav-wrap {
      max-width: 1280px; margin: 0 auto;
      display: flex; align-items: center; justify-content: space-between;
      padding: .85rem 2rem;
    }
    .logo { display: flex; align-items: center; gap: .9rem; }
    .logo-flags { font-size: 1.4rem; letter-spacing: .1em; line-height: 1; }
    .logo-text { display: flex; flex-direction: column; line-height: 1.2; }
    .logo-name { font-family: 'Playfair Display', serif; font-size: 1.1rem; font-weight: 700; color: var(--t2); letter-spacing: .02em; }
    .logo-tagline { font-size: .65rem; color: var(--muted); letter-spacing: .08em; text-transform: uppercase; font-weight: 500; }
    nav { display: flex; align-items: center; gap: 2rem; }
    nav a {
      font-size: .82rem; font-weight: 500; color: var(--mid);
      letter-spacing: .04em; text-transform: uppercase;
      position: relative; padding-bottom: 2px;
    }
    nav a::after {
      content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 2px;
      background: var(--t1); transition: width .25s;
    }
    nav a:hover { color: var(--t1); }
    nav a:hover::after { width: 100%; }
    .nav-btn {
      background: var(--t1); color: var(--white) !important;
      padding: .5rem 1.25rem; border-radius: 50px; font-size: .8rem !important;
      font-weight: 600 !important; letter-spacing: .05em;
      transition: background .25s, transform .2s !important;
    }
    .nav-btn:hover { background: var(--t2) !important; transform: translateY(-1px); }
    .nav-btn::after { display: none !important; }
    .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 4px; }
    .hamburger span { display: block; width: 22px; height: 2px; background: var(--t2); border-radius: 1px; transition: .3s; }
    .drawer {
      display: none; background: var(--white);
      border-top: 1px solid var(--t3); padding: 1.2rem 2rem 1.8rem;
    }
    .drawer.open { display: block; }
    .drawer ul { list-style: none; display: flex; flex-direction: column; gap: .9rem; }
    .drawer a { font-size: .95rem; font-weight: 500; color: var(--mid); }
    .drawer a:hover { color: var(--t1); }

    /* ═══════════════════════════════════════════════════ */
    /* HERO SLIDER                                         */
    /* ═══════════════════════════════════════════════════ */
    #home { position: relative; height: 100vh; min-height: 600px; overflow: hidden; }
    .slide {
      position: absolute; inset: 0; opacity: 0;
      transition: opacity 1.4s cubic-bezier(.4,0,.2,1);
      display: flex; align-items: center; justify-content: center;
    }
    .slide.active { opacity: 1; }
    .slide-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
    .slide-bg::after {
      content: ''; position: absolute; inset: 0;
      background: linear-gradient(160deg, rgba(12,30,38,.82) 0%, rgba(12,30,38,.45) 100%);
    }
    .slide-inner {
      position: relative; z-index: 2; text-align: center;
      padding: 0 2rem; max-width: 900px;
    }
    .slide-label {
      display: inline-flex; align-items: center; gap: .5rem;
      font-size: .72rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
      color: var(--t4); margin-bottom: 1.4rem;
    }
    .slide-label::before, .slide-label::after {
      content: ''; flex: 1; width: 28px; height: 1px; background: var(--t4); opacity: .6;
    }
    .slide-inner h2 {
      font-family: 'Playfair Display', serif; font-size: clamp(2rem, 5.5vw, 4rem);
      color: var(--white); font-weight: 700; line-height: 1.15;
      text-shadow: 0 2px 20px rgba(0,0,0,.4); margin-bottom: 1rem;
    }
    .slide-inner p {
      font-size: clamp(1rem, 2vw, 1.2rem); color: rgba(255,255,255,.82);
      font-weight: 300; line-height: 1.7; margin-bottom: 2.2rem;
    }
    .slide-cta {
      display: inline-block; background: var(--t1); color: var(--white);
      padding: .85rem 2.4rem; border-radius: 50px; font-size: .88rem;
      font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
      transition: background .25s, transform .2s, box-shadow .25s;
      box-shadow: 0 4px 20px rgba(26,122,191,.45);
    }
    .slide-cta:hover { background: var(--t2); transform: translateY(-2px); box-shadow: 0 8px 30px rgba(26,122,191,.5); }
    .slider-dots {
      position: absolute; bottom: 2.5rem; left: 50%; transform: translateX(-50%);
      display: flex; gap: 8px; z-index: 10; align-items: center;
    }
    .dot {
      width: 8px; height: 8px; border-radius: 50%;
      background: rgba(255,255,255,.35); cursor: pointer; border: none;
      transition: background .3s, transform .3s, width .3s;
    }
    .dot.active { background: var(--white); width: 22px; border-radius: 4px; }
    .scroll-down {
      position: absolute; bottom: 2.6rem; left: 50%; transform: translateX(-50%); z-index: 10;
      display: flex; flex-direction: column; align-items: center; gap: .35rem;
      color: rgba(255,255,255,.45); font-size: .65rem; letter-spacing: .12em; text-transform: uppercase;
    }
    .scroll-down::after {
      content: ''; width: 1px; height: 36px;
      background: linear-gradient(to bottom, rgba(255,255,255,.4), transparent);
      animation: pulse 2s ease infinite;
    }
    @keyframes pulse { 0%,100%{opacity:.3}50%{opacity:.9} }

    /* ═══════════════════════════════════════════════════ */
    /* SECTION BASE                                        */
    /* ═══════════════════════════════════════════════════ */
    section { scroll-margin-top: 72px; }
    .wrap { max-width: 1280px; margin: 0 auto; padding: 6rem 2rem; }
    .sec-head { text-align: center; margin-bottom: 4rem; }
    .sec-label {
      display: inline-block; font-size: .7rem; font-weight: 600;
      letter-spacing: .15em; text-transform: uppercase;
      color: var(--t1); margin-bottom: .8rem;
    }
    .sec-title {
      font-family: 'Playfair Display', serif;
      font-size: clamp(2rem, 4vw, 2.8rem); color: var(--dark);
      font-weight: 700; margin-bottom: .8rem;
    }
    .sec-sub { font-size: 1rem; color: var(--muted); font-weight: 300; max-width: 560px; margin: 0 auto; }
    .rule {
      width: 48px; height: 2px; margin: 1rem auto 0;
      background: linear-gradient(90deg, var(--t1), var(--t4));
      border-radius: 1px;
    }

    /* ═══════════════════════════════════════════════════ */
    /* ABOUT                                               */
    /* ═══════════════════════════════════════════════════ */
    #about { background: var(--white); overflow: hidden; }

    /* — Photo + quote column — */
    .about-photo-wrap {
      position: relative; border-radius: 20px; overflow: hidden;
      box-shadow: var(--sh2); aspect-ratio: 4/5;
    }
    .about-photo-wrap img {
      width: 100%; height: 100%; object-fit: cover; display: block;
      transition: transform 6s ease;
    }
    .about-photo-wrap:hover img { transform: scale(1.04); }
    .about-photo-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(12,30,38,.85) 0%, transparent 55%);
    }
    .about-quote {
      position: absolute; bottom: 0; left: 0; right: 0; padding: 2rem;
    }
    .about-quote blockquote {
      font-family: 'Playfair Display', serif; font-size: 1.1rem;
      font-style: italic; color: var(--white); line-height: 1.6;
      margin-bottom: .6rem;
    }
    .about-quote cite { font-size: .75rem; color: var(--t4); font-style: normal; letter-spacing: .06em; text-transform: uppercase; }

    /* — Text column — */
    .about-layout { display: grid; grid-template-columns: 1fr 1.15fr; gap: 4rem; align-items: start; }
    .about-intro { font-size: 1.5rem; font-family: 'Playfair Display', serif; color: var(--dark); line-height: 1.5; font-weight: 400; margin-bottom: 1.4rem; }
    .about-intro em { color: var(--t1); font-style: italic; }
    .about-body p { font-size: .95rem; color: var(--mid); line-height: 1.9; margin-bottom: 1rem; }

    /* — Feature cards — */
    .feat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .85rem; margin-top: 2rem; }
    .feat-card {
      background: var(--bg); border-radius: 14px; padding: 1.1rem 1.1rem .9rem;
      border: 1px solid rgba(168,204,232,.4);
      transition: box-shadow .25s, transform .25s, border-color .25s;
    }
    .feat-card:hover { box-shadow: var(--sh); transform: translateY(-2px); border-color: var(--t4); }
    .feat-card-icon {
      width: 40px; height: 40px; border-radius: 11px; margin-bottom: .8rem;
      background: var(--t3); border: 1px solid rgba(168,204,232,.5);
      color: var(--t1);
      display: flex; align-items: center; justify-content: center;
    }
    .feat-card-icon svg { width: 20px; height: 20px; }
    .feat-card-title { font-size: .82rem; font-weight: 600; color: var(--dark); margin-bottom: .2rem; }
    .feat-card-desc { font-size: .76rem; color: var(--muted); line-height: 1.55; }

    /* — Stats bar — */
    .stats-bar {
      display: grid; grid-template-columns: repeat(4, 1fr);
      background: var(--white);
      border: 1px solid rgba(168,204,232,.4);
      border-radius: 20px; overflow: hidden; margin-top: 4rem;
      box-shadow: var(--sh);
    }
    .stat-item {
      padding: 2.4rem 1.5rem 2rem; text-align: center;
      border-right: 1px solid rgba(168,204,232,.35);
      transition: background .25s;
    }
    .stat-item:last-child { border-right: none; }
    .stat-item:hover { background: var(--t3); }
    .stat-ico {
      width: 44px; height: 44px; border-radius: 12px; margin: 0 auto 1rem;
      background: var(--t3); border: 1px solid rgba(168,204,232,.5);
      color: var(--t1);
      display: flex; align-items: center; justify-content: center;
    }
    .stat-ico svg { width: 22px; height: 22px; }
    .stat-n {
      font-family: 'Playfair Display', serif;
      font-size: 3rem; font-weight: 700; color: var(--t2);
      line-height: 1; display: block; letter-spacing: -.02em;
    }
    .stat-unit { font-size: 1.6rem; color: var(--t1); }
    .stat-l {
      font-size: .8rem; color: var(--muted); margin-top: .55rem;
      line-height: 1.5; font-weight: 400; letter-spacing: .01em;
    }

    @media (max-width: 900px) {
      .about-layout { grid-template-columns: 1fr; }
      .about-photo-wrap { aspect-ratio: 16/9; }
      .stats-bar { grid-template-columns: 1fr 1fr; }
      .stat-item:nth-child(2) { border-right: none; }
      .stat-item:nth-child(3) { border-top: 1px solid rgba(168,204,232,.35); }
      .stat-item:nth-child(4) { border-top: 1px solid rgba(168,204,232,.35); border-right: none; }
    }
    @media (max-width: 500px) {
      .feat-grid { grid-template-columns: 1fr; }
      .stats-bar { grid-template-columns: 1fr 1fr; }
    }

    /* ═══════════════════════════════════════════════════ */
    /* TOURS                                               */
    /* ═══════════════════════════════════════════════════ */
    /* ═══════════════════════════════════════════════════ */
    /* TOURS                                               */
    /* ═══════════════════════════════════════════════════ */
    #tours { background: var(--bg); }

    /* Filter bar */
    .tours-filter {
      display: flex; flex-wrap: wrap; gap: .5rem;
      justify-content: center; margin-bottom: 2.6rem;
    }
    .tours-filter-btn {
      font-size: .78rem; font-weight: 600; letter-spacing: .04em;
      padding: .48rem 1.35rem; border-radius: 50px; cursor: pointer;
      border: 1.5px solid rgba(26,122,191,.3);
      background: var(--white); color: var(--t1);
      transition: background .2s, color .2s, border-color .2s, box-shadow .2s;
    }
    .tours-filter-btn:hover { border-color: var(--t1); box-shadow: 0 2px 10px rgba(26,122,191,.15); }
    .tours-filter-btn.active {
      background: var(--t1); color: var(--white); border-color: var(--t1);
      box-shadow: 0 4px 14px rgba(26,122,191,.3);
    }
    .tour-empty {
      grid-column: 1/-1; text-align: center; padding: 3rem 1rem;
      color: var(--muted); font-size: .95rem; display: none;
    }

    /* Grid */
    /* Grid */
    .tours-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.8rem;
    }
    .tour-card {
      background: var(--white); border-radius: 20px;
      box-shadow: 0 2px 16px rgba(13,90,158,.07);
      overflow: hidden; display: flex; flex-direction: column;
      transition: box-shadow .3s, transform .3s;
      border: 1px solid rgba(168,204,232,.3);
    }
    .tour-card.hidden { display: none; }
    .tour-card:hover { box-shadow: var(--sh2); transform: translateY(-5px); }

    /* Card image */
    .tour-card-img {
      width: 100%; height: 200px; object-fit: cover; display: block;
    }

    /* Card image with overlay */
    .tour-card-img-wrap {
      position: relative; height: 200px; overflow: hidden;
    }
    .tour-card-img {
      width: 100%; height: 100%; object-fit: cover; display: block;
      transition: transform .4s ease;
    }
    .tour-card:hover .tour-card-img { transform: scale(1.04); }
    .tour-card-img-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(10,20,40,.85) 0%, rgba(10,20,40,.15) 60%, transparent 100%);
    }
    .tour-card-img-top {
      position: absolute; top: .75rem; left: .75rem;
    }
    .tour-badge {
      width: 32px; height: 32px; border-radius: 9px;
      background: var(--t1); color: var(--white);
      font-family: 'Playfair Display', serif; font-size: 1rem; font-weight: 700;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 2px 8px rgba(0,0,0,.3);
    }
    .tour-card-img-bottom {
      position: absolute; bottom: 0; left: 0; right: 0;
      padding: .75rem 1rem;
    }
    .tour-tags { display: flex; flex-wrap: wrap; gap: .25rem; margin-bottom: .4rem; }
    .tour-tag {
      font-size: .58rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
      color: var(--t4); background: rgba(168,204,232,.15);
      border: 1px solid rgba(168,204,232,.3); border-radius: 50px;
      padding: .1rem .5rem;
    }
    .tour-img-title {
      font-family: 'Playfair Display', serif; color: var(--white);
      font-size: 1rem; font-weight: 700; line-height: 1.3;
    }
    .tour-img-meta {
      font-size: .67rem; color: rgba(255,255,255,.6); margin-top: .15rem;
    }

    /* Card header — removed */
    .tour-top { display: none; }

    /* Card body */
    .tour-body { padding: 1.4rem 1.6rem; flex: 1; display: flex; flex-direction: column; gap: .9rem; }

    /* Stats strip */
    .tour-stats { display: flex; gap: .5rem; }
    .tour-stat {
      flex: 1; display: flex; flex-direction: column; align-items: center;
      background: var(--t3); border-radius: 12px; padding: .65rem .4rem;
      border: 1px solid rgba(168,204,232,.4);
    }
    .tour-stat-val { font-family: 'Playfair Display', serif; font-size: 1rem; font-weight: 700; color: var(--t1); line-height: 1; }
    .tour-stat-lbl { font-size: .62rem; color: var(--muted); margin-top: .25rem; text-align: center; line-height: 1.3; }

    .tour-desc { font-size: .86rem; line-height: 1.8; color: var(--mid); }

    /* Expand button */
    .tour-expand {
      display: inline-flex; align-items: center; gap: .5rem;
      font-size: .79rem; font-weight: 600;
      background: var(--t1); color: var(--white);
      border: none; border-radius: 50px; padding: .55rem 1.3rem; cursor: pointer;
      align-self: flex-start;
      transition: background .2s, transform .15s;
    }
    .tour-expand:hover { background: var(--t2); transform: translateY(-1px); }

    /* Bottom CTA */
    .tour-cta {
      display: flex; align-items: center; justify-content: space-between;
      margin-top: auto; padding-top: .7rem; border-top: 1px solid rgba(168,204,232,.25);
    }
    .tour-cta-link {
      font-size: .79rem; font-weight: 600; color: var(--t1);
      display: inline-flex; align-items: center; gap: .35rem;
      transition: gap .2s, color .2s;
    }
    .tour-cta-link:hover { gap: .6rem; color: var(--t2); }

    /* ── Tour Modal ─────────────────────────────────────── */
    .tour-modal-overlay {
      position: fixed; inset: 0; z-index: 500;
      background: rgba(12,30,38,.6); backdrop-filter: blur(6px);
      display: flex; align-items: center; justify-content: center;
      padding: 1.5rem; opacity: 0; pointer-events: none;
      transition: opacity .25s;
    }
    .tour-modal-overlay.open { opacity: 1; pointer-events: all; }
    .tour-modal {
      background: var(--white); border-radius: 20px;
      max-width: 680px; width: 100%; max-height: 90vh;
      display: flex; flex-direction: column;
      box-shadow: 0 24px 80px rgba(13,90,158,.25);
      transform: translateY(20px); transition: transform .3s;
      overflow: hidden;
    }
    .tour-modal-overlay.open .tour-modal { transform: translateY(0); }
    .tour-modal-head {
      background: linear-gradient(135deg, var(--t2) 0%, var(--t1) 100%);
      padding: 1.6rem 2rem; position: relative; flex-shrink: 0;
    }
    .tour-modal-head h3 {
      font-family: 'Playfair Display', serif; color: var(--white);
      font-size: 1.3rem; font-weight: 700; margin-bottom: .3rem;
    }
    .tour-modal-meta { font-size: .8rem; color: rgba(255,255,255,.7); }
    .tour-modal-tags { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .75rem; }
    .tour-modal-close {
      position: absolute; top: 1rem; right: 1rem;
      width: 34px; height: 34px; border-radius: 50%;
      background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.3);
      color: var(--white); cursor: pointer; font-size: 1.1rem; line-height: 1;
      display: flex; align-items: center; justify-content: center;
      transition: background .2s;
    }
    .tour-modal-close:hover { background: rgba(255,255,255,.3); }
    .tour-modal-body { padding: 1.8rem 2rem; overflow-y: auto; flex: 1; }
    .tour-modal-stats { display: flex; gap: .6rem; margin-bottom: 1.6rem; }
    .tour-modal-stat {
      flex: 1; text-align: center; background: var(--t3);
      border-radius: 12px; padding: .7rem .5rem;
      border: 1px solid rgba(168,204,232,.4);
    }
    .tour-modal-stat-val { font-family: 'Playfair Display', serif; font-size: 1.1rem; font-weight: 700; color: var(--t1); }
    .tour-modal-stat-lbl { font-size: .65rem; color: var(--muted); margin-top: .2rem; }
    .tour-modal-section-title {
      font-family: 'Playfair Display', serif; font-size: 1rem; color: var(--dark);
      margin-bottom: 1rem; padding-bottom: .5rem;
      border-bottom: 2px solid var(--t3);
    }
    /* Timeline in modal */
    .tour-timeline { position: relative; padding-left: 2.1rem; }
    .tour-timeline::before {
      content: ''; position: absolute; left: 10px; top: 6px; bottom: 6px; width: 2px;
      background: linear-gradient(to bottom, var(--t1), rgba(168,204,232,.25));
      border-radius: 2px;
    }
    .day-row { position: relative; margin-bottom: .8rem; font-size: .84rem; line-height: 1.7; color: var(--mid); }
    .day-dot {
      position: absolute; left: -2.1rem; top: .15rem;
      width: 22px; height: 22px; border-radius: 50%;
      background: var(--t1); color: var(--white); font-size: .64rem; font-weight: 700;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 0 0 3px var(--white), 0 0 0 4.5px rgba(26,122,191,.2);
      z-index: 1;
    }
    .day-row:first-child .day-dot,
    .day-row:last-child .day-dot { background: var(--t2); }
    /* Included box */
    .tour-incl {
      margin-top: 1.4rem; padding: 1rem 1.1rem; background: var(--t3);
      border-radius: 10px; font-size: .81rem; color: var(--mid); line-height: 1.85;
      border-left: 3px solid var(--t1);
    }
    .tour-incl-title {
      font-weight: 700; font-size: .72rem; text-transform: uppercase;
      letter-spacing: .07em; color: var(--t1); margin-bottom: .35rem; display: block;
    }
    .tour-modal-contact {
      margin-top: 1.5rem; text-align: center;
    }
    .tour-modal-contact a {
      display: inline-flex; align-items: center; gap: .5rem;
      background: var(--t1); color: var(--white);
      font-size: .87rem; font-weight: 600; padding: .75rem 2rem;
      border-radius: 50px; transition: background .2s, transform .15s;
      box-shadow: 0 4px 16px rgba(26,122,191,.3);
    }
    .tour-modal-contact a:hover { background: var(--t2); transform: translateY(-1px); }

    @media (max-width: 760px) {
      .tours-grid { grid-template-columns: 1fr; }
      .tours-filter { gap: .4rem; }
      .tours-filter-btn { font-size: .74rem; padding: .42rem 1rem; }
      .tour-modal-body { padding: 1.4rem 1.2rem; }
      .tour-modal-head { padding: 1.3rem 1.2rem; }
      .tour-modal-head h3 { font-size: 1.1rem; }
    }

    /* ═══════════════════════════════════════════════════ */
    /* MICE                                                */
    /* ═══════════════════════════════════════════════════ */
    #mice { background: var(--dark); }
    #mice .sec-label { color: var(--t4); }
    #mice .sec-title { color: var(--white); }
    #mice .sec-sub { color: rgba(255,255,255,.5); }
    #mice .rule { background: linear-gradient(90deg, var(--t1), var(--t4)); }
    .mice-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1.2rem; margin-bottom: 3rem; }
    .mice-card {
      background: rgba(255,255,255,.05);
      border: 1px solid rgba(168,204,232,.15);
      border-radius: 16px; padding: 1.8rem 1.5rem; text-align: center;
      backdrop-filter: blur(4px);
      transition: background .25s, transform .25s, border-color .25s;
    }
    .mice-card:hover {
      background: rgba(26,122,191,.18); border-color: rgba(168,204,232,.35);
      transform: translateY(-4px);
    }
    .mice-ico {
      width: 56px; height: 56px; border-radius: 16px; margin: 0 auto 1rem;
      background: rgba(26,122,191,.25); border: 1px solid rgba(168,204,232,.2);
      color: var(--t4);
      display: flex; align-items: center; justify-content: center;
    }
    .mice-ico svg { width: 26px; height: 26px; }
    .mice-card h3 { font-family: 'Playfair Display', serif; font-size: 1rem; color: var(--white); margin-bottom: .5rem; }
    .mice-card p { font-size: .83rem; color: rgba(168,204,232,.75); line-height: 1.7; }
    .mice-bottom { text-align: center; max-width: 820px; margin: 0 auto; }
    .mice-bottom p { font-size: .93rem; color: rgba(255,255,255,.55); line-height: 1.9; margin-bottom: 1.5rem; }
    .mice-bottom strong { color: var(--t4); font-weight: 600; }
    .dest-tags { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
    .dest-tag {
      font-size: .78rem; padding: .3rem .9rem; border-radius: 50px;
      background: rgba(255,255,255,.06); color: rgba(168,204,232,.85);
      border: 1px solid rgba(168,204,232,.18);
      transition: background .2s;
    }
    .dest-tag:hover { background: rgba(26,122,191,.25); }

    /* ═══════════════════════════════════════════════════ */
    /* CONTACT                                             */
    /* ═══════════════════════════════════════════════════ */
    #contact { background: var(--bg); }
    .contact-wrap {
      display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start;
    }
    .contact-cards { display: flex; flex-direction: column; gap: 1rem; }
    .c-card {
      background: var(--white); border-radius: 16px; padding: 1.2rem 1.4rem;
      display: flex; align-items: center; gap: 1.1rem;
      border: 1px solid rgba(168,204,232,.35);
      box-shadow: 0 2px 12px rgba(13,90,158,.06);
      transition: box-shadow .25s, transform .25s;
    }
    .c-card:hover { box-shadow: var(--sh); transform: translateY(-2px); }
    .c-ico {
      width: 48px; height: 48px; border-radius: 14px; flex-shrink: 0;
      background: var(--t3); border: 1px solid var(--t4);
      color: var(--t1);
      display: flex; align-items: center; justify-content: center;
    }
    .c-ico svg { width: 22px; height: 22px; }
    .c-info strong { display: block; font-size: .75rem; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: .06em; margin-bottom: .25rem; }
    .c-info span { font-size: .95rem; color: var(--mid); line-height: 1.5; }
    .c-phone { font-size: 1.25rem !important; font-weight: 700 !important; color: var(--t1) !important; }
    .c-email {
      font-size: 1rem; font-weight: 600; color: var(--t1);
      text-decoration: none; transition: color .2s;
    }
    .c-email:hover { color: var(--t2); text-decoration: underline; }
    /* CTA panel */
    .contact-cta-panel {
      background: linear-gradient(145deg, var(--t2) 0%, var(--t1) 100%);
      border-radius: 20px; padding: 2.4rem 2rem;
      color: var(--white); position: relative; overflow: hidden;
    }
    .contact-cta-panel::before {
      content: ''; position: absolute; right: -30px; top: -30px;
      width: 160px; height: 160px; border-radius: 50%;
      background: rgba(255,255,255,.07); pointer-events: none;
    }
    .contact-cta-panel::after {
      content: ''; position: absolute; left: -20px; bottom: -40px;
      width: 120px; height: 120px; border-radius: 50%;
      background: rgba(255,255,255,.05); pointer-events: none;
    }
    .contact-cta-panel h3 {
      font-family: 'Playfair Display', serif; font-size: 1.55rem;
      font-weight: 700; margin-bottom: .75rem; line-height: 1.25;
    }
    .contact-cta-panel p {
      font-size: .9rem; color: rgba(255,255,255,.75); line-height: 1.8; margin-bottom: 1.6rem;
    }
    .contact-cta-btns { display: flex; flex-direction: column; gap: .75rem; }
    .cta-btn-primary {
      display: flex; align-items: center; justify-content: center; gap: .5rem;
      background: var(--white); color: var(--t1);
      font-weight: 700; font-size: .9rem;
      padding: .85rem 1.5rem; border-radius: 50px; text-decoration: none;
      transition: transform .2s, box-shadow .2s;
      box-shadow: 0 4px 20px rgba(0,0,0,.15);
    }
    .cta-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(0,0,0,.2); }
    .cta-btn-secondary {
      display: flex; align-items: center; justify-content: center; gap: .5rem;
      background: rgba(255,255,255,.15); color: var(--white);
      border: 1.5px solid rgba(255,255,255,.35);
      font-weight: 600; font-size: .87rem;
      padding: .8rem 1.5rem; border-radius: 50px; text-decoration: none;
      transition: background .2s;
    }
    .cta-btn-secondary:hover { background: rgba(255,255,255,.25); }
    .contact-reassurance {
      margin-top: 1.6rem; padding-top: 1.4rem;
      border-top: 1px solid rgba(255,255,255,.2);
      display: flex; flex-direction: column; gap: .5rem;
    }
    .contact-reassurance span {
      font-size: .8rem; color: rgba(255,255,255,.65);
      display: flex; align-items: center; gap: .5rem;
    }
    @media (max-width: 900px) {
      .contact-wrap { grid-template-columns: 1fr; }
    }

    /* ═══════════════════════════════════════════════════ */
    /* FOOTER                                              */
    /* ═══════════════════════════════════════════════════ */
    footer { background: var(--dark); padding: 3rem 2rem 2rem; }
    .footer-inner {
      max-width: 1280px; margin: 0 auto;
      display: flex; flex-direction: column; align-items: center; gap: 1.2rem;
      text-align: center;
    }
    .footer-logo-row { display: flex; align-items: center; gap: .8rem; }
    .footer-logo-row span:first-child { font-size: 1.5rem; }
    .footer-name { font-family: 'Playfair Display', serif; font-size: 1.1rem; color: var(--white); font-weight: 600; }
    .footer-script { font-size: 1.1rem; color: rgba(168,204,232,.35); letter-spacing: .08em; }
    .footer-links { display: flex; flex-wrap: wrap; gap: 1.5rem; justify-content: center; }
    .footer-links a { font-size: .8rem; color: rgba(255,255,255,.4); letter-spacing: .06em; text-transform: uppercase; transition: color .2s; }
    .footer-links a:hover { color: var(--t4); }
    .footer-copy { font-size: .78rem; color: rgba(255,255,255,.2); border-top: 1px solid rgba(255,255,255,.06); padding-top: 1.5rem; width: 100%; text-align: center; }

    /* ═══════════════════════════════════════════════════ */
    /* RESPONSIVE                                          */
    /* ═══════════════════════════════════════════════════ */
    @media (max-width: 900px) {
      nav { display: none; }
      .hamburger { display: flex; }
      .about-layout { grid-template-columns: 1fr; }
      .feat-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 600px) {
      .wrap { padding: 4rem 1.2rem; }
    }

    /* Tour card image */
    .tour-card-img {
      width: 100%; height: 200px; object-fit: cover;
      border-radius: 20px 20px 0 0; display: block;
    }

    /* Modal slideshow */
    .modal-slideshow {
      position: relative; height: 250px; overflow: hidden;
      border-radius: 12px; margin-bottom: 1.6rem; background: var(--dark);
    }
    .modal-slide {
      position: absolute; inset: 0; opacity: 0;
      transition: opacity .8s ease;
    }
    .modal-slide.active { opacity: 1; }
    .modal-slide img {
      width: 100%; height: 100%; object-fit: cover; display: block;
    }
    .modal-slide-dots {
      position: absolute; bottom: .6rem; left: 50%; transform: translateX(-50%);
      display: flex; gap: 6px; z-index: 5;
    }
    .modal-slide-dot {
      width: 7px; height: 7px; border-radius: 50%;
      background: rgba(255,255,255,.4); border: none; cursor: pointer;
      transition: background .3s;
    }
    .modal-slide-dot.active { background: #fff; }
  
