﻿:root {
      --page8-forest: var(--luxury-forest);
      --page8-forest-deep: var(--luxury-forest-deep);
      --page8-gold: var(--luxury-gold);
      --page8-gold-soft: var(--luxury-gold-soft);
      --page8-ink: var(--luxury-text);
      --page8-muted: var(--luxury-muted);
      --page8-surface: rgba(255, 253, 248, 0.98);
      --page8-surface-soft: rgba(247, 242, 232, 0.96);
      --page8-line: rgba(23, 57, 44, 0.1);
      --page8-shadow: 0 24px 58px rgba(15, 40, 30, 0.1);
      --page8-shadow-strong: 0 28px 68px rgba(15, 40, 30, 0.14);
      --page8-radius-xl: 30px;
      --page8-radius-lg: 22px;
      --page8-radius-md: 18px;
    }

    html {
      scroll-behavior: smooth;
    }

    body.page-gorilla-wildlife-8 {
      margin: 0;
      color: var(--page8-ink);
      font-family: "Lato", "Segoe UI", Arial, sans-serif;
      font-size: 1rem;
      line-height: 1.72;
      overflow-x: clip;
      background:
        radial-gradient(circle at top left, rgba(199, 162, 93, 0.12), transparent 24%),
        linear-gradient(180deg, var(--luxury-surface-soft) 0%, #f7f5ef 42%, #edf4ee 100%);
    }

    .page-gorilla-wildlife-8 main.page {
      width: 100%;
      max-width: none;
      margin: 0 auto;
      padding: 24px 0 72px;
    }

    .page-gorilla-wildlife-8 .hero {
      position: relative;
      display: grid;
      align-items: end;
      min-height: 82vh;
      margin-top: 18px;
      padding: 138px 0 54px;
      border-radius: 0;
      overflow: hidden;
      background:
        linear-gradient(180deg, rgba(8, 20, 15, 0.08) 0%, rgba(8, 20, 15, 0.16) 46%, rgba(8, 20, 15, 0.48) 100%),
        url("../images/queen.webp") center/cover no-repeat;
      box-shadow: var(--page8-shadow-strong);
    }

    .page-gorilla-wildlife-8 .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 20% 16%, rgba(255, 255, 255, 0.08), transparent 30%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.02), transparent 38%);
      pointer-events: none;
    }

    .page-gorilla-wildlife-8 .hero-shell {
      width: min(100%, calc(100% - 40px));
      margin: 0 auto;
    }

    .page-gorilla-wildlife-8 .hero-content {
      position: relative;
      z-index: 1;
      width: min(620px, 100%);
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: 0;
      backdrop-filter: none;
      box-shadow: none;
    }

    .page-gorilla-wildlife-8 .hero-kicker {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin: 0 0 14px;
      color: var(--page8-gold-soft);
      font-size: var(--fs-label);
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      text-shadow: 0 2px 12px rgba(0, 0, 0, 0.55);
    }

    .page-gorilla-wildlife-8 .hero h1 {
      margin: 0;
      color: var(--luxury-cream);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(2rem, 4vw, 3.6rem);
      line-height: 1.02;
      letter-spacing: -0.03em;
      text-wrap: balance;
      text-shadow: 0 3px 18px rgba(0, 0, 0, 0.65);
    }

    .page-gorilla-wildlife-8 .table-card,
    .page-gorilla-wildlife-8 .day-block,
    .page-gorilla-wildlife-8 .itinerary-inquiry-section,
    .page-gorilla-wildlife-8 .safari-page-brand {
      max-width: 900px;
      margin-left: auto;
      margin-right: auto;
    }

    .page-gorilla-wildlife-8 .table-card {
      margin-top: 28px;
      padding: 0 0 clamp(20px, 3vw, 34px);
      border: 0;
      border-bottom: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
    }

    .page-gorilla-wildlife-8 .table-card h2,
    .page-gorilla-wildlife-8 .story-copy h2,
    .page-gorilla-wildlife-8 .story-copy h3,
    .page-gorilla-wildlife-8 .inclusion-column h3,
    .page-gorilla-wildlife-8 .checklist-card h4 {
      margin: 0;
      color: var(--page8-forest);
      font-family: Georgia, "Times New Roman", serif;
      letter-spacing: -0.02em;
      text-wrap: balance;
    }

    .page-gorilla-wildlife-8 .table-card h2,
    .page-gorilla-wildlife-8 .story-copy h2 {
      font-size: clamp(1.55rem, 2.3vw, 2.28rem);
      line-height: 1.08;
    }

    .page-gorilla-wildlife-8 .story-copy h3,
    .page-gorilla-wildlife-8 .inclusion-column h3 {
      font-size: 1.12rem;
      line-height: 1.18;
    }

    .page-gorilla-wildlife-8 .table-card p,
    .page-gorilla-wildlife-8 .story-copy p,
    .page-gorilla-wildlife-8 .story-copy li,
    .page-gorilla-wildlife-8 .snap-panel p,
    .page-gorilla-wildlife-8 .acc-panel p,
    .page-gorilla-wildlife-8 .checklist li,
    .page-gorilla-wildlife-8 .pack-list li,
    .page-gorilla-wildlife-8 .note {
      color: var(--page8-muted);
      font-size: 0.9rem;
      line-height: 1.58;
    }

    .page-gorilla-wildlife-8 .table-card p {
      margin: 14px 0 0;
    }

    .page-gorilla-wildlife-8 .itinerary {
      width: 100%;
      margin-top: 18px;
      border-collapse: collapse;
      border-spacing: 0;
      overflow: visible;
      border-radius: 0;
      box-shadow: none;
      background: transparent;
    }

    .page-gorilla-wildlife-8 .itinerary th,
    .page-gorilla-wildlife-8 .itinerary td {
      padding: 10px 12px;
      border-bottom: 1px solid rgba(23, 57, 44, 0.08);
      text-align: left;
      font-size: 0.9rem;
      line-height: 1.48;
    }

    .page-gorilla-wildlife-8 .itinerary thead th {
      background: transparent;
      color: var(--page8-forest);
      font-weight: 700;
      letter-spacing: 0.02em;
    }

    .page-gorilla-wildlife-8 .itinerary tbody tr:last-child td {
      border-bottom: 0;
    }

    .page-gorilla-wildlife-8 .day-block {
      margin-top: 0;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) {
      position: relative;
      overflow: visible;
      padding: clamp(18px, 2.8vw, 32px) 0;
      border-top: 0;
      background: transparent;
      box-shadow: none;
      isolation: auto;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) + .day-block:not(#gorilla-wildlife-inclusions) {
      margin-top: clamp(10px, 1.8vw, 18px);
      padding-top: clamp(30px, 4vw, 46px);
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) + .day-block:not(#gorilla-wildlife-inclusions)::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 9px;
      margin: 0 auto;
      background:
        radial-gradient(circle, rgba(199, 162, 93, 0.86) 0 2px, transparent 2.8px),
        linear-gradient(
          90deg,
          transparent 0%,
          rgba(23, 57, 44, 0.1) 14%,
          rgba(199, 162, 93, 0.72) 50%,
          rgba(23, 57, 44, 0.1) 86%,
          transparent 100%
        );
      background-position: center, center;
      background-repeat: no-repeat;
      background-size: 9px 9px, 100% 1px;
      pointer-events: none;
    }

    .page-gorilla-wildlife-8 .magazine-day {
      position: relative;
      overflow: visible;
      padding: clamp(18px, 2.8vw, 32px) 0;
      border-radius: 0;
      background: transparent;
      border: 0;
      box-shadow: none;
      isolation: isolate;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions)::after {
      content: "";
      display: block;
      clear: both;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) > * {
      position: relative;
      z-index: 1;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy {
      min-width: 0;
    }

    .page-gorilla-wildlife-8 .day-number,
    .page-gorilla-wildlife-8 .story-copy > .day-number {
      display: none !important;
    }

    .page-gorilla-wildlife-8 .story-copy h3 {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-top: 16px;
      color: #315845;
      font-family: "Lato", "Segoe UI", Arial, sans-serif;
      font-size: 0.78rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      line-height: 1;
      text-transform: uppercase;
    }

    .page-gorilla-wildlife-8 .story-copy h3::after {
      content: "";
      width: 44px;
      height: 1px;
      background: linear-gradient(90deg, rgba(199, 162, 93, 0.78), transparent);
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy > p {
      color: #35463f;
      font-size: 0.9rem;
      line-height: 1.58;
      letter-spacing: 0;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy > p strong {
      color: var(--page8-forest);
      font-weight: 800;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy > p:first-of-type {
      margin-top: 2px;
    }

    .page-gorilla-wildlife-8 .story-copy p + p {
      margin-top: 9px;
    }

    .page-gorilla-wildlife-8 .story-copy ul,
    .page-gorilla-wildlife-8 .pack-list,
    .page-gorilla-wildlife-8 .checklist {
      display: grid;
      gap: 7px;
      margin: 12px 0 0;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy > ul {
      padding-left: 0;
      list-style: none;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy > ul li {
      position: relative;
      padding: 0 0 0 20px;
      border-radius: 0;
      background: transparent;
      border: 0;
      color: #43564e;
      box-shadow: none;
      line-height: 1.58;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-copy > ul li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0.74em;
      width: 10px;
      height: 1px;
      border-radius: 0;
      background: var(--page8-gold);
      box-shadow: none;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-media {
      float: right;
      width: min(30%, 260px);
      max-width: 260px;
      margin: 0 0 18px clamp(22px, 3vw, 38px);
      display: block;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions):nth-of-type(even) .story-media {
      float: left;
      margin: 0 clamp(22px, 3vw, 38px) 18px 0;
    }

    .page-gorilla-wildlife-8 .story-media {
      display: grid;
      justify-items: center;
      margin: 22px auto 0;
    }

    .page-gorilla-wildlife-8 .story-media img {
      display: block;
      width: min(100%, 260px);
      border-radius: 14px;
      object-fit: cover;
      border: 0;
      box-shadow: none;
      background: transparent;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-media img {
      width: 100%;
      aspect-ratio: 1.08 / 1;
    }

    .page-gorilla-wildlife-8 .day-meta {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
      margin-top: 20px;
    }

    .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .day-meta {
      clear: both;
    }

    .page-gorilla-wildlife-8 .snapshot,
    .page-gorilla-wildlife-8 .accommodation-box,
    .page-gorilla-wildlife-8 .inclusion-column,
    .page-gorilla-wildlife-8 .checklist-card {
      padding: 0 0 0 14px;
      border-radius: 0;
      background: transparent;
      border: 0;
      border-left: 2px solid rgba(199, 162, 93, 0.76);
      box-shadow: none;
    }

    .page-gorilla-wildlife-8 .snapshot h4,
    .page-gorilla-wildlife-8 .accommodation-box h4 {
      margin: 0;
      color: var(--page8-forest);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 1rem;
      line-height: 1.16;
    }

    .page-gorilla-wildlife-8 .snapshot-tabs,
    .page-gorilla-wildlife-8 .accommodation-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 10px;
    }

    .page-gorilla-wildlife-8 .snap-tab,
    .page-gorilla-wildlife-8 .acc-tab {
      appearance: none;
      min-height: 30px;
      padding: 6px 10px;
      border-radius: 999px;
      border: 1px solid rgba(23, 57, 44, 0.12);
      background: transparent;
      color: var(--page8-forest);
      font: inherit;
      font-size: 0.8rem;
      font-weight: 700;
      cursor: pointer;
      transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
    }

    .page-gorilla-wildlife-8 .snap-tab:hover,
    .page-gorilla-wildlife-8 .snap-tab:focus-visible,
    .page-gorilla-wildlife-8 .acc-tab:hover,
    .page-gorilla-wildlife-8 .acc-tab:focus-visible {
      transform: translateY(-1px);
      box-shadow: none;
    }

    .page-gorilla-wildlife-8 .snap-tab.active,
    .page-gorilla-wildlife-8 .acc-tab.active {
      background: linear-gradient(135deg, rgba(23, 57, 44, 0.98), rgba(39, 89, 71, 0.98));
      border-color: transparent;
      color: var(--luxury-cream);
      box-shadow: 0 12px 24px rgba(15, 40, 30, 0.16);
    }

    .page-gorilla-wildlife-8 .snap-panel,
    .page-gorilla-wildlife-8 .acc-panel {
      display: none;
      margin-top: 10px;
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: 0;
    }

    .page-gorilla-wildlife-8 .snap-panel.active,
    .page-gorilla-wildlife-8 .acc-panel.active {
      display: block;
    }

    .page-gorilla-wildlife-8 .snap-panel p,
    .page-gorilla-wildlife-8 .acc-panel p,
    .page-gorilla-wildlife-8 .note {
      margin: 0;
    }

    .page-gorilla-wildlife-8 .inclusion-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
      margin-top: 16px;
    }

    .page-gorilla-wildlife-8 .checklist,
    .page-gorilla-wildlife-8 .pack-list {
      padding-left: 0;
      list-style: none;
    }

    .page-gorilla-wildlife-8 .checklist li,
    .page-gorilla-wildlife-8 .pack-list li {
      padding: 8px 0 8px 12px;
      border-radius: 0;
      background: transparent;
    }

    .page-gorilla-wildlife-8 .checklist.included li {
      border-left: 4px solid #3f7c61;
    }

    .page-gorilla-wildlife-8 .checklist.excluded li {
      border-left: 4px solid #b96d4f;
    }

    .page-gorilla-wildlife-8 .checklist-card h4 {
      font-size: 1rem;
      line-height: 1.18;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section {
      margin-top: 36px;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-panel {
      max-width: 760px;
      margin: 0 auto;
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: 0;
      box-shadow: none;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .section-kicker,
    .page-gorilla-wildlife-8 .itinerary-inquiry-section .section-title,
    .page-gorilla-wildlife-8 .itinerary-inquiry-section .section-lead {
      text-align: center;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .section-kicker {
      display: inline-flex;
      width: 100%;
      justify-content: center;
      margin: 0 0 10px;
      color: var(--page8-gold);
      font-size: var(--fs-label);
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .section-title {
      margin: 0;
      color: var(--page8-forest);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(1.6rem, 2.4vw, 2.3rem);
      line-height: 1.08;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .section-lead {
      max-width: 62ch;
      margin: 12px auto 0;
      color: var(--page8-muted);
      font-size: 0.9rem;
      line-height: 1.58;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-context,
    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-form {
      max-width: 680px;
      margin-left: auto;
      margin-right: auto;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-context {
      justify-content: center;
      margin-top: 18px;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-form-actions {
      justify-items: center;
      text-align: center;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-form-meta {
      margin: 0;
      max-width: 60ch;
      color: var(--page8-muted);
      font-size: 0.86rem;
      line-height: 1.5;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-submit-button {
      width: min(250px, 100%);
      min-height: 50px;
      padding: 12px 18px;
      border: none;
      border-radius: 999px;
      background: linear-gradient(135deg, var(--luxury-gold-soft) 0%, var(--page8-gold) 100%);
      color: var(--luxury-forest-deep);
      font: inherit;
      font-weight: 700;
      cursor: pointer;
      box-shadow: 0 16px 30px rgba(185, 145, 66, 0.24);
      transition: transform 0.22s ease, box-shadow 0.22s ease, filter 0.22s ease;
    }

    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-submit-button:hover,
    .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-submit-button:focus-visible {
      transform: translateY(-2px);
      box-shadow: 0 20px 36px rgba(185, 145, 66, 0.28);
      filter: saturate(1.04);
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .itinerary-stack {
      max-width: 900px;
      margin: 18px auto 0;
      gap: 16px;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card {
      display: block;
      padding: clamp(18px, 2.8vw, 32px) 0;
      border-radius: 0;
      background: transparent;
      border: 0;
      box-shadow: none;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card::after {
      content: "";
      display: block;
      clear: both;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-image {
      float: left;
      width: min(30%, 260px);
      max-width: 260px;
      margin: 0 28px 18px 0;
      display: block;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card:nth-of-type(even) .day-image {
      float: right;
      margin: 0 0 18px 28px;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-image img {
      width: 100%;
      aspect-ratio: 1.08 / 1;
      border-radius: 14px;
      object-fit: cover;
      box-shadow: none;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-content {
      display: block;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-content h2,
    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-content h3 {
      font-size: clamp(1.28rem, 1.8vw, 1.74rem) ;
      line-height: 1.12 ;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-content p,
    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-content li,
    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card p,
    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card li {
      font-size: 0.9rem;
      line-height: 1.58 ;
    }

    .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card .day-meta {
      clear: both;
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    @media (max-width: 980px) {
      .page-gorilla-wildlife-8 .day-meta,
      .page-gorilla-wildlife-8 .inclusion-grid,
      .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card .day-meta {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 760px) {
      .page-gorilla-wildlife-8 main.page {
        width: 100%;
        padding: 16px 0 56px;
      }

      .page-gorilla-wildlife-8 .hero {
        min-height: auto;
        padding: 116px 0 42px;
        border-radius: 0;
      }

      .page-gorilla-wildlife-8 .hero-shell {
        width: min(100%, calc(100% - 24px));
      }

      .page-gorilla-wildlife-8 .table-card,
      .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions),
      .page-gorilla-wildlife-8 .magazine-day,
      .page-gorilla-wildlife-8 .itinerary-inquiry-section .inquiry-panel {
        padding-left: 16px;
        padding-right: 16px;
      }

      .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) + .day-block:not(#gorilla-wildlife-inclusions)::before {
        left: 16px;
        right: 16px;
        width: auto;
      }

      .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions) .story-media,
      .page-gorilla-wildlife-8 .day-block:not(#gorilla-wildlife-inclusions):nth-of-type(even) .story-media {
        float: none;
        width: min(100%, 420px);
        max-width: 100%;
        margin: 0 auto 18px;
      }

      .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card {
        display: grid;
        padding: 18px;
      }

      .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-image,
      .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card:nth-of-type(even) .day-image {
        float: none;
        width: min(100%, 420px);
        max-width: 100%;
        margin: 0 auto 18px;
      }

      .shared-itinerary-layout-page.page-gorilla-wildlife-8 .day-card .day-meta {
        clear: none;
      }
    }
