.elementor-5491 .elementor-element.elementor-element-e0513a4{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e196dc0{--display:flex;}.elementor-5491 .elementor-element.elementor-element-ee8a8ca{--display:flex;}.elementor-5491 .elementor-element.elementor-element-cee86ae{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e9d124f{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8191d42{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d74f401{--display:flex;}.elementor-5491 .elementor-element.elementor-element-a29a10f{--display:flex;}.elementor-5491 .elementor-element.elementor-element-4c1f47f{--display:flex;}.elementor-5491 .elementor-element.elementor-element-050ed9b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-95a7daf{--display:flex;}.elementor-5491 .elementor-element.elementor-element-41b1cb2{--display:flex;}.elementor-5491 .elementor-element.elementor-element-50cb7aa{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d611523{--display:flex;}.elementor-5491 .elementor-element.elementor-element-1a5b046{--display:flex;}.elementor-5491 .elementor-element.elementor-element-1a5b046:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-1a5b046 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F1;}.elementor-5491 .elementor-element.elementor-element-81b6a3d{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9b087a5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-c7b3eed{--display:flex;}.elementor-5491 .elementor-element.elementor-element-4e09ad8{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e8ae0a8{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f3573c9{--display:flex;}.elementor-5491 .elementor-element.elementor-element-95e3349{--display:flex;}.elementor-5491 .elementor-element.elementor-element-140e21b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-140e21b:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-140e21b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#151917;}.elementor-5491 .elementor-element.elementor-element-1215f8c{--display:flex;}.elementor-5491 .elementor-element.elementor-element-3d9ff21{--display:flex;}.elementor-5491 .elementor-element.elementor-element-fe14334{--display:flex;}.elementor-5491 .elementor-element.elementor-element-5a93aba{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f570d7c{--display:flex;}.elementor-5491 .elementor-element.elementor-element-010e808{--display:flex;}.elementor-5491 .elementor-element.elementor-element-010e808:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-010e808 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F1;}.elementor-5491 .elementor-element.elementor-element-5da6e45{--display:flex;}.elementor-5491 .elementor-element.elementor-element-b86385b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8157ac5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d78b936{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8fbbacb{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8fbbacb:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-8fbbacb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#151917;}.elementor-5491 .elementor-element.elementor-element-14c01d5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-0aeec05{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8f91f10{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d46a2fd{--display:flex;}.elementor-5491 .elementor-element.elementor-element-207ede5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-207ede5:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-207ede5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#151917;}.elementor-5491 .elementor-element.elementor-element-761ea4f{--display:flex;}.elementor-5491 .elementor-element.elementor-element-94aa851{--display:flex;}.elementor-5491 .elementor-element.elementor-element-153c3bd{--display:flex;}.elementor-5491 .elementor-element.elementor-element-641b78d{--display:flex;}.elementor-5491 .elementor-element.elementor-element-7ab3791{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d87803f{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d87803f:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-d87803f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#151917;}.elementor-5491 .elementor-element.elementor-element-84bec51{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d3cb7b8{--display:flex;}.elementor-5491 .elementor-element.elementor-element-c14bb13{--display:flex;}.elementor-5491 .elementor-element.elementor-element-c8fa659{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f9fdaa3{--display:flex;}.elementor-5491 .elementor-element.elementor-element-4ca9327{--display:flex;}.elementor-5491 .elementor-element.elementor-element-4ca9327:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-4ca9327 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#151917;}.elementor-5491 .elementor-element.elementor-element-239ae2c{--display:flex;}.elementor-5491 .elementor-element.elementor-element-dc11acb{--display:flex;}.elementor-5491 .elementor-element.elementor-element-1c500ad{--display:flex;}.elementor-5491 .elementor-element.elementor-element-6562895{--display:flex;}.elementor-5491 .elementor-element.elementor-element-b1b4d27{--display:flex;}.elementor-5491 .elementor-element.elementor-element-b1b4d27:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-b1b4d27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F1;}.elementor-5491 .elementor-element.elementor-element-c5cd696{--display:flex;}.elementor-5491 .elementor-element.elementor-element-3d74cee{--display:flex;}.elementor-5491 .elementor-element.elementor-element-c645c00{--display:flex;}.elementor-5491 .elementor-element.elementor-element-6871192{--display:flex;}.elementor-5491 .elementor-element.elementor-element-7e2b1a0{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f271e97{--display:flex;}.elementor-5491 .elementor-element.elementor-element-38f3640{--display:flex;}.elementor-5491 .elementor-element.elementor-element-20d6324{--display:flex;}.elementor-5491 .elementor-element.elementor-element-95a2ff1{--display:flex;}.elementor-5491 .elementor-element.elementor-element-27084b6{--display:flex;}.elementor-5491 .elementor-element.elementor-element-458e5d6{--display:flex;}.elementor-5491 .elementor-element.elementor-element-069f18d{--display:flex;}.elementor-5491 .elementor-element.elementor-element-b7e95ee{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e87bad0{--display:flex;}.elementor-5491 .elementor-element.elementor-element-3790fe1{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9f734a6{--display:flex;}.elementor-5491 .elementor-element.elementor-element-384d5d6{--display:flex;}.elementor-5491 .elementor-element.elementor-element-3ac3b1b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-b622e0b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-60aecc3{--display:flex;}.elementor-5491 .elementor-element.elementor-element-60aecc3:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-60aecc3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EAE4DA;}.elementor-5491 .elementor-element.elementor-element-339af85{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8366ddd{--display:flex;}.elementor-5491 .elementor-element.elementor-element-74362a7{--display:flex;}.elementor-5491 .elementor-element.elementor-element-257f453{--display:flex;}.elementor-5491 .elementor-element.elementor-element-1cf157d{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8107b9b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-c10faef{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e007bc0{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f3f0abd{--display:flex;}.elementor-5491 .elementor-element.elementor-element-39bea53{--display:flex;}.elementor-5491 .elementor-element.elementor-element-a7df3c0{--display:flex;}.elementor-5491 .elementor-element.elementor-element-48cae8e{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e28da4c{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e28da4c:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-e28da4c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F1;}.elementor-5491 .elementor-element.elementor-element-4c5006e{--display:flex;}.elementor-5491 .elementor-element.elementor-element-abe823d{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9b0a4b9{--display:flex;}.elementor-5491 .elementor-element.elementor-element-7b84fcf{--display:flex;}.elementor-5491 .elementor-element.elementor-element-6da4fcf{--display:flex;}.elementor-5491 .elementor-element.elementor-element-6da4fcf:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-6da4fcf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EAE4DA;}.elementor-5491 .elementor-element.elementor-element-48677ec{--display:flex;}.elementor-5491 .elementor-element.elementor-element-60dd058{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e839b5a{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f21d46b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-820f9f2{--display:flex;}.elementor-5491 .elementor-element.elementor-element-466ab76{--display:flex;}.elementor-5491 .elementor-element.elementor-element-db6e506{--display:flex;}.elementor-5491 .elementor-element.elementor-element-0d27b28{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d048ee3{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d491109{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9bc0629{--display:flex;}.elementor-5491 .elementor-element.elementor-element-0fc1971{--display:flex;}.elementor-5491 .elementor-element.elementor-element-0fc1971:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-0fc1971 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1C1F1E;}.elementor-5491 .elementor-element.elementor-element-a95e896{--display:flex;}.elementor-5491 .elementor-element.elementor-element-0523d5c{--display:flex;}.elementor-5491 .elementor-element.elementor-element-794da62{--display:flex;}.elementor-5491 .elementor-element.elementor-element-7295f13{--display:flex;}.elementor-5491 .elementor-element.elementor-element-7295f13:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-7295f13 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F1;}.elementor-5491 .elementor-element.elementor-element-51aa416{--display:flex;}.elementor-5491 .elementor-element.elementor-element-6b1e3cd{--display:flex;}.elementor-5491 .elementor-element.elementor-element-bed2d44{--display:flex;}.elementor-5491 .elementor-element.elementor-element-29c8b90{--display:flex;}.elementor-5491 .elementor-element.elementor-element-475b123{--display:flex;}.elementor-5491 .elementor-element.elementor-element-e708d34{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d145761{--display:flex;}.elementor-5491 .elementor-element.elementor-element-fb7ad3b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9df0ab5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9df0ab5:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-9df0ab5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EAE4DA;}.elementor-5491 .elementor-element.elementor-element-6dd35b3{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8f529e7{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d9f496d{--display:flex;}.elementor-5491 .elementor-element.elementor-element-61d2aa8{--display:flex;}.elementor-5491 .elementor-element.elementor-element-5ac86ea{--display:flex;}.elementor-5491 .elementor-element.elementor-element-0c80dbc{--display:flex;}.elementor-5491 .elementor-element.elementor-element-fdb37a5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-fdb37a5:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-fdb37a5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F5F1;}.elementor-5491 .elementor-element.elementor-element-fd07ad3{--display:flex;}.elementor-5491 .elementor-element.elementor-element-b0fdd95{--display:flex;}.elementor-5491 .elementor-element.elementor-element-135268b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-135268b:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-135268b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#121614;}.elementor-5491 .elementor-element.elementor-element-29ee78c{--display:flex;}.elementor-5491 .elementor-element.elementor-element-8271f4b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-7bc54e1{--display:flex;}.elementor-5491 .elementor-element.elementor-element-3c7a51b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-baa17f1{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d7ffbb5{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d7ffbb5:not(.elementor-motion-effects-element-type-background), .elementor-5491 .elementor-element.elementor-element-d7ffbb5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EAE4DA;}.elementor-5491 .elementor-element.elementor-element-25c2b8b{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f3bcd84{--display:flex;}.elementor-5491 .elementor-element.elementor-element-f54c548{--display:flex;}.elementor-5491 .elementor-element.elementor-element-57f9d95{--display:flex;}.elementor-5491 .elementor-element.elementor-element-9fe23ab{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d0b332a{--display:flex;}.elementor-5491 .elementor-element.elementor-element-d6ed9fe{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-e0513a4 *//* ============================================================================
   READ ME FIRST  —  Active Kili Top, safari plan / day trip template
   ----------------------------------------------------------------------------
   You do NOT need this CSS for the everyday changes:
     - Section background colour  ->  select the section, Style > Background
     - Any heading or paragraph   ->  click it and type
     - A photo                    ->  click the image, choose a new one.
       Empty photo slots show their brief ("ADD IMAGE ...") until a photo is set.
     - Button label               ->  click the button, retype it (plain words)
     - FAQ                        ->  the Accordion widget, one item per question
     - The WordPress map          ->  the Shortcode widget under "The route"

   Kept as HTML widgets on purpose (the standard's escape hatch — they rely on
   SVG or on the page script, which a Text Editor would destroy):
     - the drawn route map and the day list beside it
     - the "Begin here" enquiry form (posts to /send-inquiry.php)
     - the page script at the very bottom
   Change those only in the source (plans/*.py -> build_itinerary.py) and
   re-export, or they drift from the other plans.

   Block order in this field is fixed. Nothing goes after GLUE except glue.
     1 READ ME   2 ELEMENTOR RESET   3 PALETTE   4 REFERENCE SHEET   5 GLUE
   ========================================================================== */

/* ============================================================================
   2. ELEMENTOR RESET  -  scoped with :where() so it adds zero specificity.
   ========================================================================== */
body { margin:0; padding:0; box-sizing:border-box; }
body * { margin:0; padding:0; box-sizing:border-box; }

body .e-con:where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap),
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .e-con,
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .e-con-inner {
  display:block !important;
  gap:0 !important;
  padding:0 !important;
  --content-width:none;
  --flex-direction:row !important;
  --flex-wrap:nowrap !important;
  width:auto !important;
  --width:auto;
}
/* playbook 3.12: Elementor caps top-level containers at (0,2,0); roots only */
body .e-con:where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) { max-width:none !important; }
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-widget { position:static; width:auto; max-width:none !important; gap:0; }
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-widget-container { display:contents !important; }

/* ==========================================================================
   3. PALETTE  -  the -rgb companions every tint is built from. The colours
   themselves are the :root tokens at the top of the reference sheet below.
   Tints are written rgba(var(--x-rgb), .n) so they follow their colour.
   ======================================================================== */
body {
  --c-000000: #000000;
  --c-060a08: #060a08;
  --c-080c0a: #080c0a;
  --c-0a0c0b: #0a0c0b;
  --c-a23b2a: #a23b2a;
  --c-f3eee3: #f3eee3;
  --c-f4f1ec: #f4f1ec;
  --c-000000-rgb: 0, 0, 0;
  --c-060a08-rgb: 6, 10, 8;
  --c-080c0a-rgb: 8, 12, 10;
  --c-0a0c0b-rgb: 10, 12, 11;
  --c-a23b2a-rgb: 162, 59, 42;
  --c-f3eee3-rgb: 243, 238, 227;
  --c-f4f1ec-rgb: 244, 241, 236;
  --cream-rgb: 247, 245, 241;
  --forest-d-rgb: 18, 20, 19;
  --forest2-rgb: 47, 90, 54;
  --gold-l-rgb: 143, 181, 143;
  --ink-rgb: 30, 36, 34;
  --ocean-rgb: 143, 187, 225;
  --paper-rgb: 255, 255, 255;
}

/* ==========================================================================
   4. REFERENCE SHEET  -  the page CSS, every .elementor-5491 .elementor-element.elementor-element-e0513a4 prefixed `body `,
   pruned to the rules that can match this markup.
   ======================================================================== */
:root{
  --cream:#F7F5F1;
  --paper:#FFFFFF;
  --linen:#EAE4DA;
  --linen-d:#DCD4C6;
  --ink:#1E2422;
  --ink-soft:#454E4B;
  --stone:#78807C;
  --gold:#487848;
  --gold-d:#35593A;
      --forest: #1C1F1E; --forest-d: #121413; --moss: #3A403D; --sage: #EAE4DA;
  --gold-l:#8FB58F;
  --olive:#2E3331;
  --hair:#D5CDBF;
  --mf:'DM Sans',system-ui,sans-serif;
  --md:'Playfair Display',Georgia,serif;
  --me:cubic-bezier(.16,1,.3,1);
  --nh:74px;
  --ub:36px;
}body *, body *::before, body *::after{box-sizing:border-box;margin:0;padding:0}body a{text-decoration:none;color:inherit}body button{cursor:pointer;font-family:inherit;background:none;border:none;color:inherit}body img{max-width:100%;display:block}
@media(max-width:720px){:root{--nh:64px}}
@media(max-width:420px){:root{--nh:60px}}:root{
  --cream:      #F7F5F1;
  --paper:      #FFFFFF;
  --linen:      #EAE4DA;
  --ink:        #1E2422;
  --ink-soft:   #454E4B;
  --stone:      #78807C;
  /* Brand accent — Active Kili Top forest green (was literal gold #487848)
     Variables still named --gold so 48 existing refs work unchanged.
     Dark sections (.mk-strip, .mk-cta, .mk-mine) override these
     back to real gold below — where gold pops on ink. */
  --gold:       #487848;
  --gold-dark:  #35593A;
  --gold-tint:  #DDE7DC;
  --hair:       #D5CDBF;
  --hair-soft:  #E2DBCF;
  /* Forest-green structural tokens (v2.0 green-main retrofit) */
  --forest:     #1C1F1E;
  --forest-d:   #121413;
  --forest-l:   #2E3331;
  --moss:       #3A403D;
  --sage:       #EAE4DA;
  --d: 'Playfair Display', 'Cormorant Garamond', Georgia, serif;
  --b: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --ease: cubic-bezier(.16,1,.3,1);
}body{
  font-family: var(--b);
  font-size: 18px;
  line-height: 1.75;
  color: var(--ink);
  background: var(--cream) !important;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  margin: 0;
}
@media (max-width: 680px){body{font-size: 17px}}/* ─────────────────────────────────────────────── */

/* ------------------------------------------------------------------
   ACTIVE KILI TOP - ocean blue
   Taken from the sky in the badge. Used for the coast: Zanzibar, Pemba and anything on the water. Green stays the land accent.
   ------------------------------------------------------------------ */
:root{
  --ocean:   #8FBBE1;   /* the brand ocean blue */
  --ocean-d: #2F6A9B;   /* darker, for text on cream (contrast) */
  --ocean-l: #C4DCF0;   /* lighter, for washes */
}/* ─────────────────────────────────────────────── */

/* ══════════════════════════════════════════════════════════════
   ACTIVE KILI TOP — header + explore section
   Structure and rhythm after madeforspainandportugal.com:
   a fixed translucent bar with a centred logo, a full-bleed hero
   with a credential marquee, then a filterable explore block.
   Colour is Active Kili's own: forest #487848, ocean #8FBBE1.
   ══════════════════════════════════════════════════════════════ */
:root{
  --ub:0px;          /* utility bar retired — folded into the nav */
  --nh:78px;         /* nav height, incl. the 4px accent rule */
  --akt-rule:#487848;
  --nv-util-w:308px;
}

@media(max-width:1440px){:root{--nv-util-w:268px}}
@media(max-width:1280px){:root{--nv-util-w:178px}}/* ─────────────────────────────────────────────── */

/* ══════════════════════════════════════════════════════════════
   ACTIVE KILI TOP — the remaining sections
   Same language as the header: section heads after
   madeforspainandportugal, dark photo cards after kaer.co, quiet category eyebrows after sabbatical, and the
   scroller/counter treatment after 66nord.
   Layered over the original markup by document order — the older
   rules are left intact so any section can be reverted.
   ══════════════════════════════════════════════════════════════ */
:root{
  --akt-b:'DM Sans',system-ui,sans-serif;
  --akt-d:'Playfair Display',Georgia,serif;
  --akt-dark:#12100E;
}/* ─────────────────────────────────────────────── */

/* ══════════════════════════════════════════════════════════════
   FOOTER IN OCEAN BLUE
   The client's #8FBBE1 had been scoped to the coast section only.
   This gives it the footer too: a deep ocean ground with the blue
   as the accent. One variable switches the ground back to basalt
   if only the accents are wanted — see --akt-ft-bg below.
   ══════════════════════════════════════════════════════════════ */
:root{
  /* the one dial for the footer ground:
     #1E2422 basalt (accents only) · #101E29 deep ocean, near-black
     #15323F committed ocean (current) · #1B4257 brighter, more teal */
  --akt-ft-bg:#15323F;
  --akt-ft-line:rgba(var(--ocean-rgb),.20);
}/* ─────────────────────────────────────────────── */

/* ══════════════════════════════════════════════════════════════
   TYPEFACES — Cormorant Garamond + Jost
   Replaces Playfair Display + DM Sans. Playfair is the default
   "elegant" choice and reads a little generic; Cormorant is a
   high-contrast old-style with far better italics, which matter
   here because every accent on the page is italic. Jost is a
   geometric sans whose letterspaced caps carry the eyebrows.
   Every face on the page routes through the six vars below.
   ══════════════════════════════════════════════════════════════ */
:root{
  --md:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --mf:'Jost',system-ui,-apple-system,sans-serif;
  --d:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --b:'Jost',system-ui,-apple-system,sans-serif;
  --akt-d:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --akt-b:'Jost',system-ui,-apple-system,sans-serif;
}/* ══════════════════════════════════════════════════════════════
   DESTINATION TEMPLATE
   One page shape reused for every destination. Sits on top of
   css/site.css and uses the same tokens, faces and devices as the
   home page — rule-and-eyebrow heads, dark photo cards, the green
   land accent, the ocean blue for coastal destinations.
   ══════════════════════════════════════════════════════════════ */

/* ── shared shell ── */
body .dst-wrap{max-width:1320px; margin:0 auto; padding:0 clamp(20px,3vw,48px)}body .dst-wrap-narrow{max-width:880px}body .dst-sec{padding:clamp(56px,6.5vw,104px) 0}body .dst-sec-alt{}body .dst-sec-dark{ color:var(--cream)}body .dst-rule{display:flex; align-items:center; gap:20px; margin-bottom:20px}body .dst-rule::after{content:''; height:1px; flex:1 1 auto; background:var(--hair)}body .dst-rule span{
  font-family:var(--akt-b); font-size:11.5px; font-weight:500;
  letter-spacing:.3em; text-transform:uppercase; color:var(--ink-soft);
  white-space:nowrap;
}body .dst-sec-dark .dst-rule::before, body .dst-sec-dark .dst-rule::after{background:rgba(var(--paper-rgb),.22)}body .dst-sec-dark .dst-rule span{color:var(--gold-l)}body .dst-sec h2{
  font-family:var(--akt-d); font-weight:500;
  font-size:clamp(28px,4vw,52px); line-height:1.08;
  color:var(--ink); margin:0 0 18px;
}body .dst-sec-dark h2{color:var(--cream)}body .dst-lead{font-size:17px !important; line-height:1.72; color:var(--ink-soft); margin:0 0 18px}body .dst-sec p{font-family:var(--akt-b); font-size:16px; line-height:1.75; color:var(--ink-soft); margin:0 0 16px}body .dst-sec-dark p{color:rgba(var(--paper-rgb),.76)}body .dst-inline-link{
  display:inline-flex; align-items:center; gap:10px; margin-top:12px;
  font-family:var(--akt-b); font-size:11.5px; font-weight:500;
  letter-spacing:.24em; text-transform:uppercase; color:var(--gold-d);
  padding-bottom:6px; border-bottom:1px solid var(--gold);
  transition:gap .25s var(--me);
}body .dst-inline-link:hover{gap:16px}/* ── hero ── */
body .dst-hero{
  position:relative; isolation:isolate; overflow:hidden;
  min-height:clamp(520px,68vh,760px);
  display:flex; flex-direction:column; justify-content:flex-end;
  background:#0B0906; color:#fff;
  padding-top:var(--nh);
}body .dst-hero-media{position:absolute; inset:0; z-index:-1}body .dst-hero-media img{width:100%; height:100%; object-fit:cover; display:block}body .dst-hero-media::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(var(--c-060a08-rgb),.52) 0%,rgba(var(--c-060a08-rgb),.28) 34%,rgba(var(--c-060a08-rgb),.86) 100%);
}body .dst-hero-body{max-width:1320px; width:100%; margin:0 auto; padding:0 clamp(20px,3vw,48px) clamp(26px,3vw,42px)}body .dst-crumb{display:flex; align-items:center; gap:10px; margin-bottom:20px; flex-wrap:wrap}body .dst-crumb a, body .dst-crumb em, body .dst-crumb span{
  font-family:var(--akt-b); font-size:11px; font-weight:500;
  letter-spacing:.2em; text-transform:uppercase; font-style:normal;
}body .dst-crumb a{color:rgba(var(--paper-rgb),.66); transition:color .25s}body .dst-crumb a:hover{color:#fff}body .dst-crumb span{color:rgba(var(--paper-rgb),.32)}body .dst-crumb em{color:var(--gold-l)}body .dst-kicker{
  display:block; margin-bottom:14px;
  font-family:var(--akt-b); font-size:12px; font-weight:500;
  letter-spacing:.3em; text-transform:uppercase; color:var(--gold-l);
}body .dst-hero h1{
  font-family:var(--akt-d); font-weight:500;
  font-size:clamp(40px,6.4vw,86px); line-height:1; letter-spacing:.005em;
  color:#fff; margin:0 0 16px;
}body .dst-hero-body p{
  font-family:var(--akt-b); font-size:17px; line-height:1.7;
  color:rgba(var(--paper-rgb),.82); max-width:62ch; margin:0;
}body .dst-hero-facts{
  position:relative; z-index:1;
  max-width:1320px; width:100%; margin:0 auto;
  padding:0 clamp(20px,3vw,48px) clamp(22px,2.4vw,34px);
  display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:1px; background:rgba(var(--paper-rgb),.16);
  border-top:1px solid rgba(var(--paper-rgb),.16);
}body .dst-hero-facts > div:where(:not([class*="elementor-widget"])){
  background:rgba(var(--c-080c0a-rgb),.42);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  padding:15px 16px; display:flex; flex-direction:column; gap:6px;
}body .dst-hero-facts .k{font-family:var(--akt-b); font-size:9.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:rgba(var(--paper-rgb),.56)}body .dst-hero-facts .v{font-family:var(--akt-d); font-style:italic; font-size:19px; color:#fff; line-height:1.15}/* ── sticky sub-nav ── */
body .dst-jump{
  position:sticky; top:var(--nh); z-index:700;
  background:rgba(var(--cream-rgb),.94);
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--hair);
}body .dst-jump-in{
  max-width:1320px; margin:0 auto; padding:0 clamp(20px,3vw,48px);
  display:flex; align-items:center; gap:clamp(14px,1.8vw,30px);
  overflow-x:auto; scrollbar-width:none;
}body .dst-jump-in::-webkit-scrollbar{display:none}body .dst-jump a{
  padding:15px 0; white-space:nowrap; position:relative;
  font-family:var(--akt-b); font-size:11px; font-weight:500;
  letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft);
  transition:color .25s;
}body .dst-jump a::after{
  content:''; position:absolute; left:0; right:0; bottom:11px; height:1px;
  background:var(--gold); opacity:0; transition:opacity .25s;
}body .dst-jump a:hover{color:var(--gold-d)}body .dst-jump a:hover::after{opacity:1}body .dst-jump-cta{
  margin-left:auto; flex:0 0 auto;
  padding:8px 18px !important; color:#fff !important;
  background:var(--gold); border:1px solid var(--gold);
}body .dst-jump-cta::after{display:none !important}body .dst-jump-cta:hover{background:var(--gold-d); border-color:var(--gold-d)}/* ── faq ── */
body .dst-faq{border-top:1px solid var(--hair)}body .dst-faq details{border-bottom:1px solid var(--hair)}body .dst-faq summary{
  list-style:none; cursor:pointer; padding:20px 34px 20px 0; position:relative;
  font-family:var(--akt-d); font-weight:500; font-size:21px; line-height:1.28; color:var(--ink);
}body .dst-faq summary::-webkit-details-marker{display:none}body .dst-faq summary::after{
  content:''; position:absolute; right:6px; top:31px;
  width:11px; height:1px; background:var(--gold);
  box-shadow:0 0 0 0 transparent;
}body .dst-faq summary::before{
  content:''; position:absolute; right:11px; top:26px;
  width:1px; height:11px; background:var(--gold);
  transition:transform .3s var(--me), opacity .3s;
}body .dst-faq details[open] summary::before{transform:rotate(90deg); opacity:0}body .dst-faq details p{padding:0 40px 22px 0; margin:0 !important; font-size:15.5px !important}body .dst-btn{
  display:inline-flex; align-items:center; gap:12px;
  font-family:var(--akt-b); font-size:11px; font-weight:500;
  letter-spacing:.26em; text-transform:uppercase;
  padding:17px 34px; transition:background .3s,color .3s,border-color .3s;
}body .dst-btn{background:var(--cream); color:var(--ink); border:1px solid var(--cream)}body .dst-btn:hover{background:var(--gold); border-color:var(--gold); color:#fff}

/* ── narrow ── */
@media(max-width:980px){body .dst-hero{min-height:auto; padding-bottom:0}body .dst-hero-body{padding-top:clamp(40px,10vw,70px)}}
@media(max-width:640px){body .dst-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}body .itn-eyebrow{
  font-family:var(--akt-b); font-size:10.5px; font-weight:500;
  letter-spacing:.24em; text-transform:uppercase; color:var(--stone);
}/* ── hero: the route line under the title ─────────────────────────────── */
body .itn-hero-route{
  display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; margin:22px 0 0;
  font-family:var(--akt-b); font-size:11px; font-weight:500;
  letter-spacing:.2em; text-transform:uppercase; color:rgba(var(--paper-rgb),.82);
}body .itn-hero-route i{
  width:22px; height:1px; background:rgba(var(--paper-rgb),.45); position:relative;
}body .itn-hero-route i::after{
  content:''; position:absolute; right:0; top:-2px; width:5px; height:5px;
  border-top:1px solid rgba(var(--paper-rgb),.6); border-right:1px solid rgba(var(--paper-rgb),.6);
  transform:rotate(45deg);
}/* ═══ 1. SECTION HEADS ═════════════════════════════════════════════════════ */
body .itn-shape-head{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(24px,4vw,72px); align-items:end; margin-bottom:clamp(30px,3.6vw,52px)}body .itn-shape-head p{margin:0 !important}/* ═══ 2. THE ROUTE — the map (base styles, used by the route section and cards) */
body .itn-map{background:var(--paper); box-shadow:0 0 0 1px var(--hair); padding:clamp(14px,1.6vw,22px)}body .itn-map svg{display:block; width:100%; height:auto}body .itn-map .land{fill:var(--cream)}body .itn-map .park{fill:#E3EBDD; stroke:#C7D5C1; stroke-width:1}body .itn-map .park.nca{fill:#EDE8DC; stroke:var(--hair)}body .itn-map .water{fill:#D8E6F1; stroke:#BFD4E6; stroke-width:1}body .itn-map .crater{fill:#DCE7D5; stroke:#9DB396; stroke-width:1.2}body .itn-map .plab{font-family:var(--akt-b); font-size:10px; letter-spacing:.2em; text-transform:uppercase; fill:#7E9A78}body .itn-map .plab.nca{fill:#A99E88}body .itn-map .wlab{font-family:var(--akt-d); font-style:italic; font-size:13px; fill:#6C8DAA}body .itn-map .road{fill:none; stroke:var(--hair); stroke-width:1.2; stroke-dasharray:3 3}body .itn-map .leg{fill:none; stroke:transparent; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; transition:stroke .45s, stroke-width .45s, opacity .45s}
@keyframes itn-draw{to{stroke-dashoffset:0}}body .itn-map .node circle{fill:var(--paper); stroke:var(--ink); stroke-width:1.2}body .itn-map .node.via circle{fill:var(--ink); stroke:none}body .itn-map .node text{font-family:var(--akt-b); font-size:12px; paint-order:stroke; stroke:var(--cream); stroke-width:3px; stroke-linejoin:round; font-weight:500; letter-spacing:.08em; fill:var(--ink)}body .itn-map .node.via text{font-weight:400; fill:var(--stone); font-size:10.5px}body .itn-map .node.stay circle.halo{fill:none; stroke:var(--gold); stroke-width:1; opacity:0; transition:opacity .4s}body .itn-map .node.stay.is-on circle.halo{opacity:1}body .itn-map .node.stay.is-on circle:not(.halo){fill:var(--gold); stroke:var(--gold)}body .itn-map .compass{font-family:var(--akt-b); font-size:9px; fill:var(--stone); letter-spacing:.2em}/* the route section: the whole loop, big, beside the list of days.
   Every leg is visible without the script; with it, .is-drawn plays them in
   order once, and .is-hl dims all but the day being pointed at. */
body .itn-rgrid{display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:clamp(24px,4vw,64px); align-items:center}body .itn-rmap{padding:clamp(16px,2vw,30px); border-radius:18px}body .itn-rmap .leg{stroke:var(--gold-l); stroke-width:2.6}body .itn-rmap.is-armed .leg{stroke-dasharray:var(--len, none); stroke-dashoffset:var(--len, 0)}body .itn-rmap.is-drawn .leg{animation:itn-draw 1.1s var(--me) forwards; animation-delay:calc(var(--d) * .32s)}body .itn-rmap.is-hl .leg{opacity:.2}body .itn-rmap.is-hl .leg.is-hl{opacity:1; stroke-width:3.8}body .itn-rlist{list-style:none; margin:0; padding:0; border-top:1px solid rgba(var(--paper-rgb),.55)}body .itn-rlist a{display:grid; grid-template-columns:44px minmax(0,1fr); column-gap:14px; padding:13px 10px 13px 0; border-bottom:1px solid rgba(var(--paper-rgb),.12); color:inherit; text-decoration:none; transition:background .25s, padding .35s var(--me)}body .itn-rlist b{grid-row:span 2; font-family:var(--akt-d); font-weight:500; font-size:30px; line-height:1; color:rgba(var(--paper-rgb),.35); transition:color .25s}body .itn-rlist .rt{font-family:var(--akt-d); font-size:18px; line-height:1.25; color:#fff}body .itn-rlist .rt em{margin-left:10px; padding:2px 7px; vertical-align:2px; font:500 9px/1.4 var(--akt-b); letter-spacing:.2em; text-transform:uppercase; font-style:normal; background:var(--gold-l); color:#151917; white-space:nowrap}body .itn-rlist .h{font-family:var(--akt-b); font-size:12px; letter-spacing:.06em; color:rgba(var(--paper-rgb),.5); margin-top:2px}body .itn-rlist a:hover, body .itn-rlist a:focus-visible, body .itn-rlist a.is-on{background:rgba(var(--gold-l-rgb),.08); padding-left:12px}body .itn-rlist a:hover b, body .itn-rlist a:focus-visible b, body .itn-rlist a.is-on b{color:var(--gold-l)}body .itn-rkey{display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:18px; font-family:var(--akt-b); font-size:12px; color:rgba(var(--paper-rgb),.5)}body .itn-rkey span{display:inline-flex; align-items:center; gap:8px}body .itn-rkey i{display:inline-block; border-radius:50%}body .itn-rkey i.st{width:9px; height:9px; box-shadow:inset 0 0 0 1.2px rgba(var(--paper-rgb),.8)}body .itn-rkey i.vi{width:5px; height:5px; background:rgba(var(--paper-rgb),.55)}/* ═══ 3. DAY BY DAY — stacking cards ═══════════════════════════════════════
   Each card is sticky. A later card sits later in the flow, so it scrolls up
   and lands on top of the one before, which shrinks and darkens (--cv, 0→1, set by js/itinerary.js). The script also sets each card's `top`: a card
   taller than the screen sticks only once its bottom is in view, so no line
   of it is covered before it has been read. */
body .itn-stack{position:relative}body .itn-anchor{display:block; height:0; scroll-margin-top:calc(var(--nh) + 20px)}body .itn-card{position:sticky; top:calc(var(--nh) + 18px + var(--n) * 12px); margin-bottom:12vh}body .itn-card:last-child{margin-bottom:0}body .itn-card-in{
  position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
  min-height:min(640px, calc(100vh - var(--nh) - 130px));
  border-radius:22px; overflow:hidden; background:#151917;
  box-shadow:0 40px 90px -40px rgba(var(--c-0a0c0b-rgb),.7);
  transform-origin:50% 0; transform:scale(calc(1 - var(--cv, 0) * .05));
}body .itn-card-in.itn-dark::before{display:none}body .itn-card-in::after{content:''; position:absolute; inset:0; z-index:4; pointer-events:none; background:#0B0D0C; opacity:calc(var(--cv, 0) * .55)}/* left: the day's photograph. A day still waiting for one gets a plain ink
   panel with a gap marker — never a borrowed picture. */
body .itn-card-media{position:relative; overflow:hidden; background:#1C211F; min-height:320px}body .itn-card-media > img, body .itn-card-media > :where(.elementor-widget) > :where(.elementor-widget-container) > img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}body .itn-card-media::after{content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(var(--c-0a0c0b-rgb),.35) 0%, rgba(var(--c-0a0c0b-rgb),0) 28%, rgba(var(--c-0a0c0b-rgb),.1) 55%, rgba(var(--c-0a0c0b-rgb),.88) 100%)}body .itn-card-media.is-empty{background:radial-gradient(120% 90% at 30% 20%, #232B27, #151917 70%); box-shadow:inset 0 0 0 1px rgba(var(--paper-rgb),.06)}body .itn-card-media.is-empty::after{background:linear-gradient(180deg, transparent 55%, rgba(var(--c-0a0c0b-rgb),.6) 100%)}body .itn-card-need{position:absolute; z-index:2; left:50%; top:42%; transform:translate(-50%,-50%); max-width:86%; text-align:center}body .itn-card-need .itn-gap{white-space:normal; line-height:1.9; -webkit-box-decoration-break:clone; box-decoration-break:clone}body .itn-card-place{position:absolute; z-index:2; left:clamp(18px,2vw,30px); top:clamp(18px,2vw,26px); font:500 10px/1 var(--akt-b); letter-spacing:.24em; text-transform:uppercase; color:#fff}body .itn-card-cap{position:absolute; z-index:2; left:0; right:0; bottom:0; padding:clamp(20px,2.2vw,32px)}body .itn-card-n{display:flex; align-items:baseline; gap:10px; font-family:var(--akt-d); font-weight:400; font-size:clamp(64px,7vw,104px); line-height:.85; color:#fff}body .itn-card-n small{font-family:var(--akt-b); font-size:11px; letter-spacing:.22em; color:rgba(var(--paper-rgb),.6)}body .itn-card-cap p{margin:12px 0 0 !important; max-width:34ch; font-size:15px !important; line-height:1.55 !important; color:rgba(var(--paper-rgb),.85) !important}/* right: the facts and the day's hours */
body .itn-card-body{position:relative; padding:clamp(24px,3vw,46px) clamp(22px,3vw,48px) clamp(24px,2.6vw,40px); display:flex; flex-direction:column; background:radial-gradient(700px 400px at 100% 0%, rgba(var(--gold-l-rgb),.09), transparent 60%)}body .itn-day-rt{display:block; margin:6px 0 10px; font-family:var(--akt-b); font-size:11px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-d)}body .itn-card h3{font-family:var(--akt-d); font-weight:500; font-size:clamp(26px,2.6vw,38px); line-height:1.08; color:#fff; margin:0}body .itn-day-meta{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:22px 0 14px; border-top:1px solid var(--ink); border-bottom:1px solid var(--hair)}body .itn-day-meta > div:where(:not([class*="elementor-widget"])){padding:11px 10px 11px 0}body .itn-day-meta > div:where(:not([class*="elementor-widget"])) + div:where(:not([class*="elementor-widget"])){padding-left:10px; border-left:1px solid var(--hair)}body .itn-day-meta dt{font-family:var(--akt-b); font-size:9.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--stone); margin-bottom:5px}body .itn-day-meta dd{margin:0; font-family:var(--akt-d); font-size:17px; line-height:1.25; color:var(--ink)}body .itn-day-t{list-style:none; margin:0 0 14px; padding:0}body .itn-day-t li{display:grid; grid-template-columns:92px minmax(0,1fr); gap:16px; padding:10px 0; border-bottom:1px dashed var(--hair)}body .itn-day-t li:last-child{border-bottom:0}body .itn-day-t .w{font-family:var(--akt-b); font-size:10.5px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:var(--stone); padding-top:4px}body .itn-day-t p{margin:0 !important; font-size:15px !important; line-height:1.65 !important}body .itn-day-note{margin-top:auto; padding:14px 18px 14px 20px; background:var(--paper); border-left:2px solid var(--gold); border-radius:0 10px 10px 0}body .itn-day-note b{display:block; font-family:var(--akt-d); font-style:italic; font-weight:500; font-size:18px; color:var(--ink); margin-bottom:3px}body .itn-day-note p{margin:0 !important; font-size:14px !important; line-height:1.6 !important}/* ═══ 4. WHERE YOU SLEEP — nights as a proportional strip ══════════════════ */
body .itn-nights{display:grid; grid-template-columns:var(--cols); column-gap:clamp(10px,1.2vw,18px)}body .itn-nstrip{grid-column:1 / -1; display:grid; grid-template-columns:subgrid; margin-bottom:22px}body .itn-nseg{display:grid; grid-template-columns:repeat(var(--n),1fr); gap:3px}body .itn-nseg i{height:10px; background:var(--forest)}body .itn-night{background:var(--paper); box-shadow:0 0 0 1px var(--hair); padding:clamp(18px,2vw,28px); display:flex; flex-direction:column}body .itn-night-k{display:flex; justify-content:space-between; gap:10px; align-items:baseline}body .itn-night-k b{font-family:var(--akt-d); font-style:italic; font-weight:500; font-size:clamp(28px,2.6vw,38px); line-height:1; color:var(--gold-d)}body .itn-night h3{font-family:var(--akt-d); font-weight:500; font-size:clamp(22px,2vw,28px); line-height:1.1; margin:14px 0 4px; color:var(--ink)}body .itn-night .ty{font-family:var(--akt-b); font-size:12.5px; color:var(--stone); margin:0 0 14px}body .itn-night p{font-size:14.5px !important; line-height:1.65 !important; margin:0 0 12px !important}body .itn-night dl{margin:auto 0 0; padding-top:12px; border-top:1px dashed var(--hair)}body .itn-night dt{font-family:var(--akt-b); font-size:9.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--stone); margin-top:10px}body .itn-night dd{margin:3px 0 0; font-family:var(--akt-b); font-size:13.5px; line-height:1.55; color:var(--ink-soft)}body .itn-mid{margin-top:clamp(24px,3vw,40px); display:grid; grid-template-columns:auto minmax(0,1fr); gap:clamp(18px,3vw,48px); padding:clamp(20px,2.4vw,32px); background:var(--forest); color:var(--cream)}body .itn-mid h3{font-family:var(--akt-d); font-weight:500; font-size:clamp(22px,2.2vw,30px); line-height:1.1; margin:0; max-width:12ch; color:var(--cream)}body .itn-mid ul{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 28px}body .itn-mid li{font-family:var(--akt-b); font-size:14px; line-height:1.6; color:rgba(var(--paper-rgb),.78); padding-left:18px; position:relative}body .itn-mid li::before{content:''; position:absolute; left:0; top:.7em; width:8px; height:1px; background:var(--gold-l)}body .itn-mid li b{color:#fff; font-weight:500}/* ═══ 4. INCLUDED ══════════════════════════════════════════════════════════ */
body .itn-inc{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(20px,3vw,48px)}body .itn-inc h3{font-family:var(--akt-d); font-weight:500; font-size:26px; margin:0 0 6px; color:var(--ink); display:flex; align-items:center; gap:12px}body .itn-inc h3 i{width:26px; height:26px; border-radius:50%; display:inline-grid; place-items:center; font-style:normal; font-family:var(--akt-b); font-size:13px}body .itn-inc .y h3 i{background:var(--gold); color:#fff}body .itn-inc .n h3 i{box-shadow:inset 0 0 0 1px var(--stone); color:var(--stone)}body .itn-inc ul{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink)}body .itn-inc li{padding:12px 0; border-bottom:1px solid var(--hair); font-family:var(--akt-b); font-size:15px; line-height:1.55; color:var(--ink-soft)}body .itn-inc li b{color:var(--ink); font-weight:500}body .itn-inc li small{display:block; font-size:13px; color:var(--stone); margin-top:2px}/* ═══ 5. MAKE IT YOURS — variations ════════════════════════════════════════ */
body .itn-vars{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(12px,1.4vw,20px)}body .itn-var{background:var(--paper); box-shadow:0 0 0 1px var(--hair); padding:clamp(20px,2vw,28px); display:flex; flex-direction:column; transition:box-shadow .3s, transform .4s var(--me)}body .itn-var:hover{box-shadow:0 0 0 1px var(--gold); transform:translateY(-3px)}body .itn-var-d{align-self:flex-start; padding:5px 10px; font-family:var(--akt-b); font-size:10.5px; font-weight:500; letter-spacing:.16em; text-transform:uppercase; background:var(--gold-tint,#DDE7DC); color:var(--gold-d)}body .itn-var h3{font-family:var(--akt-d); font-weight:500; font-size:24px; line-height:1.15; margin:16px 0 8px; color:var(--ink)}body .itn-var p{font-size:14.5px !important; line-height:1.65 !important; margin:0 0 14px !important}body .itn-var .wh{margin-top:auto; padding-top:12px; border-top:1px dashed var(--hair); font-family:var(--akt-b); font-size:13px; line-height:1.55; color:var(--ink-soft)}body .itn-var .wh b{display:block; font-size:9.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--stone); margin-bottom:3px}body .itn-var a.dst-inline-link{align-self:flex-start; margin-top:14px}/* ═══ 6. WHEN — twelve months, this route only ═════════════════════════════ */
body .itn-yr{display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); border-top:1px solid rgba(var(--paper-rgb),.3)}body .itn-mo{padding:14px 8px 16px; border-left:1px solid rgba(var(--paper-rgb),.12); display:flex; flex-direction:column; gap:10px}body .itn-mo:first-child{border-left:0}body .itn-mo b{font-family:var(--akt-d); font-weight:500; font-size:22px; color:var(--cream)}body .itn-mo .r{display:flex; flex-direction:column-reverse; gap:3px; height:44px}body .itn-mo .r i{flex:1; background:rgba(var(--paper-rgb),.12)}body .itn-mo[data-r="1"] .r i:nth-child(-n+1), body .itn-mo[data-r="2"] .r i:nth-child(-n+2), body .itn-mo[data-r="3"] .r i:nth-child(-n+3){background:var(--gold-l)}body .itn-mo span{font-family:var(--akt-b); font-size:11.5px; line-height:1.45; color:rgba(var(--paper-rgb),.66)}body .itn-mo.is-now{background:rgba(var(--gold-l-rgb),.1); box-shadow:inset 0 2px 0 var(--gold-l)}body .itn-yr-key{display:flex; flex-wrap:wrap; gap:8px 26px; margin-top:18px; font-family:var(--akt-b); font-size:12.5px; color:rgba(var(--paper-rgb),.66)}/* ═══ 7. COST — what moves the price ═══════════════════════════════════════ */
body .itn-cost-h{display:flex; justify-content:space-between; padding-bottom:10px; font-family:var(--akt-b); font-size:9.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--stone)}body .itn-cost{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink)}body .itn-cost li{display:grid; grid-template-columns:minmax(0,1fr) 88px; gap:18px; padding:16px 0; border-bottom:1px solid var(--hair); align-items:center}body .itn-cost h4{margin:0 0 3px; font-family:var(--akt-d); font-weight:500; font-size:20px; color:var(--ink)}body .itn-cost p{margin:0 !important; font-size:14.5px !important; line-height:1.6 !important}body .itn-cost .m{display:flex; gap:3px; justify-content:flex-end}body .itn-cost .m i{width:14px; height:14px; box-shadow:inset 0 0 0 1px var(--hair)}body .itn-cost .m i.on{background:var(--ink); box-shadow:none}/* ═══ 8. OTHER PLANS ═══════════════════════════════════════════════════════ */
body .itn-rel{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:clamp(10px,1.2vw,16px)}body .itn-rel a{display:flex; flex-direction:column; gap:10px; padding:20px; background:var(--paper); box-shadow:0 0 0 1px var(--hair); color:inherit; text-decoration:none; transition:box-shadow .3s}body .itn-rel a:hover{box-shadow:0 0 0 1px var(--gold)}body .itn-rel b{font-family:var(--akt-d); font-weight:500; font-size:22px; line-height:1.15; color:var(--ink)}body .itn-rel em{margin-top:auto; font-style:normal; font-family:var(--akt-b); font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold-d)}

/* ═══ responsive ═══════════════════════════════════════════════════════════ */
@media (max-width:1100px){body .itn-vars{grid-template-columns:repeat(2,minmax(0,1fr))}body .itn-yr{grid-template-columns:repeat(6,minmax(0,1fr))}body .itn-mo:nth-child(7){border-left:0}body .itn-mo:nth-child(n+7){border-top:1px solid rgba(var(--paper-rgb),.12)}}
@media (max-width:980px){body .itn-shape-head{grid-template-columns:1fr; align-items:start}body .itn-nights{grid-template-columns:1fr; row-gap:12px}body .itn-nstrip{display:none}body .itn-mid{grid-template-columns:1fr}}
@media (max-width:760px){body .itn-day-meta{grid-template-columns:repeat(2,minmax(0,1fr))}body .itn-day-meta > div:where(:not([class*="elementor-widget"])):nth-child(3){padding-left:0; border-left:0}body .itn-day-meta > div:where(:not([class*="elementor-widget"])):nth-child(n+3){border-top:1px solid var(--hair)}body .itn-day-t li{grid-template-columns:1fr; gap:4px}body .itn-inc, body .itn-vars, body .itn-mid ul{grid-template-columns:minmax(0,1fr)}/* a long marker must wrap on a phone, not push its column past the screen */
  body .itn-gap{white-space:normal; -webkit-box-decoration-break:clone; box-decoration-break:clone}body .itn-yr{grid-template-columns:repeat(4,minmax(0,1fr))}body .itn-mo:nth-child(n){border-left:1px solid rgba(var(--paper-rgb),.12)}body .itn-mo:nth-child(4n+1){border-left:0}body .itn-mo:nth-child(n+5){border-top:1px solid rgba(var(--paper-rgb),.12)}body .itn-mo span{display:none}body .itn-cost li{grid-template-columns:1fr}body .itn-cost .m{justify-content:flex-start}}/* ═══════════════════════════════════════════════════════════════════════════
   v2 — the "dossier" layer: numbered sections, editorial hero, a dark day-by-day, and the commercial sections (details, rates, properties, flights, extras).
   ═══════════════════════════════════════════════════════════════════════════ */

/* visible marker for anything only the client can supply — never a guess */
body .itn-gap{background:#FFF1C2; color:#5A4200; padding:1px 7px; border-bottom:1px solid #DDAF00; font:500 12.5px/1.5 var(--akt-b); letter-spacing:0; text-transform:none; font-style:normal; white-space:nowrap}/* Roman numeral in each section eyebrow */
body .itn-rule span{display:inline-flex; align-items:baseline; gap:14px}body .itn-rule span i{font-family:var(--akt-d); font-style:italic; font-weight:500; font-size:20px; letter-spacing:0; text-transform:none; color:var(--gold)}body .dst-sec-dark .itn-rule span i, body .itn-dark .itn-rule span i{color:var(--gold-l)}/* ── hero, editorial ── */
body .itn-hero{min-height:clamp(620px,94vh,1040px)}body .itn-hero .dst-hero-media img{animation:itn-kb 22s ease-out both}
@keyframes itn-kb{from{transform:scale(1.08)}to{transform:scale(1)}}body .itn-hero .dst-hero-media::after{background:linear-gradient(180deg,rgba(var(--c-0a0c0b-rgb),.55) 0%,rgba(var(--c-0a0c0b-rgb),.05) 30%,rgba(var(--c-0a0c0b-rgb),.25) 55%,rgba(var(--c-0a0c0b-rgb),.86) 100%) !important}body .itn-hero h1{font-size:clamp(46px,7.4vw,118px) !important; line-height:.96 !important; letter-spacing:-.015em; max-width:11ch}body .itn-hero .dst-hero-body > p, body .itn-hero .dst-hero-body > :where(.elementor-widget) > :where(.elementor-widget-container) > p{max-width:58ch}body .itn-hero-coords{
  position:absolute; top:calc(var(--nh) + 26px); right:clamp(20px,3vw,48px); z-index:1;
  display:flex; flex-direction:column; align-items:flex-end; gap:6px;
  font-family:var(--akt-b); font-size:10.5px; letter-spacing:.24em; color:rgba(var(--paper-rgb),.72);
}body .itn-hero-coords span{padding-right:14px; border-right:1px solid rgba(var(--paper-rgb),.4)}body .itn-hero-act{display:flex; flex-wrap:wrap; align-items:center; gap:14px 28px; margin-top:30px}body .itn-hero-link{font-family:var(--akt-b); font-size:11.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:#fff; padding-bottom:6px; border-bottom:1px solid rgba(var(--paper-rgb),.5); transition:border-color .25s}body .itn-hero-link:hover{border-color:#fff}
@media (prefers-reduced-motion:reduce){body .itn-hero .dst-hero-media img{animation:none}}/* ── I. overview ── */
body .itn-ov-grid{display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr); gap:clamp(30px,5vw,96px); align-items:start}body .itn-ov-l h2{font-size:clamp(32px,4.2vw,58px) !important; max-width:16ch}body .itn-ov-p{columns:2 280px; column-gap:40px; margin-top:26px}body .itn-ov-p p{break-inside:avoid}body .itn-ov-p p:first-child::first-letter{float:left; font-family:var(--akt-d); font-size:74px; line-height:.8; padding:6px 10px 0 0; color:var(--gold-d)}body .itn-ov-att{margin-top:30px; padding-top:18px; border-top:1px solid var(--ink)}body .itn-ov-att ol{list-style:none; margin:14px 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px}body .itn-ov-att li{display:flex; align-items:baseline; gap:12px; font-family:var(--akt-d); font-size:21px; color:var(--ink)}body .itn-ov-att li b{font-family:var(--akt-b); font-size:10.5px; font-weight:500; letter-spacing:.2em; color:var(--gold)}body .itn-ov-card{position:sticky; top:calc(var(--nh) + 76px); background:var(--forest); color:var(--cream); padding:clamp(22px,2.4vw,34px); box-shadow:0 30px 60px -30px rgba(var(--forest-d-rgb),.55)}body .itn-ov-card-h{display:flex; justify-content:space-between; align-items:baseline; padding-bottom:14px; border-bottom:1px solid rgba(var(--paper-rgb),.18)}body .itn-ov-card-h .itn-eyebrow{color:var(--gold-l)}body .itn-ov-card-h b{font-family:var(--akt-d); font-style:italic; font-weight:500; font-size:26px; color:#fff}body .itn-ov-card dl{margin:0 0 22px}body .itn-ov-card dl > div:where(:not([class*="elementor-widget"])){display:flex; justify-content:space-between; gap:18px; padding:11px 0; border-bottom:1px solid rgba(var(--paper-rgb),.1)}body .itn-ov-card dt{font-family:var(--akt-b); font-size:10px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:rgba(var(--paper-rgb),.55); padding-top:3px; flex:0 0 auto}body .itn-ov-card dd{margin:0; text-align:right; font-family:var(--akt-d); font-size:17px; line-height:1.3; color:#fff}body .itn-ov-card .dst-btn{width:100%; justify-content:center}body .itn-ov-wa{display:block; margin-top:14px; text-align:center; font-family:var(--akt-b); font-size:12.5px; color:rgba(var(--paper-rgb),.66)}body .itn-ov-wa b{color:#fff; font-weight:500}/* ── III. day by day, after dark ── */
body .itn-dark{background:#151917; color:var(--cream); position:relative}body .itn-dark::before{content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(1200px 600px at 12% 0%, rgba(var(--gold-l-rgb),.10), transparent 60%)}body .itn-dark .dst-wrap{position:relative}body .itn-dark h2{color:var(--cream)}body .itn-dark p{color:rgba(var(--paper-rgb),.72)}body .itn-dark .dst-rule::after{background:rgba(var(--paper-rgb),.18)}body .itn-dark .dst-rule span{color:var(--gold-l)}body .itn-days-head{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(24px,4vw,72px); align-items:end; margin-bottom:clamp(34px,4vw,60px)}body .itn-days-head p{margin:0 !important}body .itn-dark .itn-map{background:#1C211F; box-shadow:0 0 0 1px rgba(var(--paper-rgb),.1), 0 40px 80px -40px rgba(var(--c-000000-rgb),.8)}body .itn-dark .itn-map .land{fill:#1C211F}body .itn-dark .itn-map .park{fill:#243328; stroke:#2F4535}body .itn-dark .itn-map .park.nca{fill:#2A2925; stroke:#3A3830}body .itn-dark .itn-map .water{fill:#1D3040; stroke:#27425A}body .itn-dark .itn-map .crater{fill:#26382B; stroke:#4F6D55}body .itn-dark .itn-map .plab{fill:#6F8F72}body .itn-dark .itn-map .plab.nca{fill:#8A8270}body .itn-dark .itn-map .wlab{fill:#6E93B3}body .itn-dark .itn-map .road{stroke:rgba(var(--paper-rgb),.18)}body .itn-dark .itn-map .node circle{fill:#1C211F; stroke:rgba(var(--paper-rgb),.8)}body .itn-dark .itn-map .node.via circle{fill:rgba(var(--paper-rgb),.55)}body .itn-dark .itn-map .node text{fill:#F2EFE8; stroke:#1C211F}body .itn-dark .itn-map .node.via text{fill:rgba(var(--paper-rgb),.55)}body .itn-dark .itn-map .node.stay circle.halo{stroke:var(--gold-l)}body .itn-dark .itn-map .node.stay.is-on circle:not(.halo){fill:var(--gold-l); stroke:var(--gold-l)}body .itn-dark .itn-map .compass{fill:rgba(var(--paper-rgb),.5)}body .itn-day-co{display:block; font-family:var(--akt-b); font-size:10px; letter-spacing:.22em; color:var(--stone)}body .itn-dark .itn-day-co{color:rgba(var(--paper-rgb),.42)}body .itn-dark .itn-day-rt{color:var(--gold-l)}body .itn-dark .itn-day-meta{border-top-color:rgba(var(--paper-rgb),.55); border-bottom-color:rgba(var(--paper-rgb),.12)}body .itn-dark .itn-day-meta > div:where(:not([class*="elementor-widget"])) + div:where(:not([class*="elementor-widget"])){border-left-color:rgba(var(--paper-rgb),.12)}body .itn-dark .itn-day-meta dt{color:rgba(var(--paper-rgb),.45)}body .itn-dark .itn-day-meta dd{color:#fff}body .itn-dark .itn-day-t li{border-bottom-color:rgba(var(--paper-rgb),.12)}body .itn-dark .itn-day-t .w{color:var(--gold-l)}body .itn-dark .itn-day-note{background:rgba(var(--paper-rgb),.04); border-left-color:var(--gold-l)}body .itn-dark .itn-day-note b{color:#fff}/* ── IV. rates ── */
body .itn-rt-tabs{display:inline-flex; padding:4px; background:var(--linen); gap:4px; margin-bottom:22px}body .itn-rt-tabs button{appearance:none; border:0; cursor:pointer; padding:10px 22px; background:transparent; font-family:var(--akt-b); font-size:11px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft); transition:background .25s, color .25s}body .itn-rt-tabs button[aria-selected="true"]{background:var(--forest); color:#fff}body .itn-rt-scroll{overflow-x:auto}body .itn-rt{width:100%; border-collapse:collapse; min-width:640px}body .itn-rt caption{caption-side:top; text-align:left; padding-bottom:12px; font-family:var(--akt-d); font-style:italic; font-size:20px; color:var(--ink)}body .itn-rt th, body .itn-rt td{padding:16px 14px; text-align:center; border-bottom:1px solid var(--hair)}body .itn-rt thead th{font-family:var(--akt-b); font-size:10px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:var(--stone); border-bottom:1px solid var(--ink)}body .itn-rt tbody th{text-align:left; font-family:var(--akt-b); font-size:13px; font-weight:500; color:var(--ink)}body .itn-rt thead th:first-child{text-align:left}body .itn-rt td{font-family:var(--akt-d); font-size:24px; color:var(--ink)}body .itn-rt tbody td:last-child{background:var(--gold-tint,#DDE7DC)}body .itn-rt-notes{display:grid; grid-template-columns:auto minmax(0,1fr); gap:clamp(20px,4vw,64px); margin-top:22px}body .itn-rt-notes b{display:block; margin-top:6px; font-family:var(--akt-d); font-size:22px; font-weight:500}body .itn-rt-notes p{margin:6px 0 0 !important}body .itn-rt-more{display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:clamp(24px,4vw,72px); margin-top:clamp(40px,5vw,70px); align-items:start}body .itn-rt-more h3, body .itn-props h3{font-family:var(--akt-d); font-weight:500; font-size:28px; margin:0 0 16px; color:var(--ink)}body .itn-rt-cta{background:var(--linen); padding:clamp(22px,2.4vw,34px)}body .itn-rt-cta p{font-family:var(--akt-d) !important; font-size:21px !important; line-height:1.4 !important; color:var(--ink) !important; margin:0 0 20px !important}/* ── V. properties table ── */
body .itn-props{margin-top:clamp(30px,4vw,54px)}body .itn-rt-props{min-width:520px}body .itn-rt-props td{font-size:18px; text-align:left}body .itn-rt-props th:not(:first-child){text-align:left}body .itn-rt-props tbody td:last-child{background:none}body .itn-rt-props tbody th{font-family:var(--akt-d); font-size:20px; font-weight:500}/* add-on price */
body .itn-var-top{display:flex; justify-content:space-between; align-items:center; gap:10px}/* ── IX. flights & extras ── */
body .itn-tv{display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:clamp(30px,5vw,88px)}body .itn-fls{display:grid; gap:0; border-top:1px solid var(--ink)}body .itn-fl{display:grid; grid-template-columns:110px minmax(0,1fr); column-gap:20px; padding:18px 0; border-bottom:1px solid var(--hair)}body .itn-fl .itn-eyebrow{grid-row:span 2; padding-top:6px; color:var(--gold-d)}body .itn-fl h3{margin:0 0 4px; font-family:var(--akt-d); font-weight:500; font-size:22px; color:var(--ink)}body .itn-fl p{margin:0 !important; font-size:14.5px !important; line-height:1.65 !important}body .itn-ex{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink); counter-reset:ex}body .itn-ex li{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:14px 0; border-bottom:1px solid var(--hair); counter-increment:ex}body .itn-ex li > div:where(:not([class*="elementor-widget"])){display:flex; flex-direction:column}body .itn-ex li > div:where(:not([class*="elementor-widget"]))::before{content:counter(ex, decimal-leading-zero); font-family:var(--akt-b); font-size:10px; letter-spacing:.2em; color:var(--stone); margin-bottom:2px}body .itn-ex b{font-family:var(--akt-d); font-weight:500; font-size:20px; color:var(--ink)}body .itn-ex small{font-family:var(--akt-b); font-size:12.5px; color:var(--stone)}body .itn-ex li > span, body .itn-ex li > :where(.elementor-widget) > :where(.elementor-widget-container) > span{font-family:var(--akt-b); font-size:13px; color:var(--ink-soft); text-align:right}/* ── X. why us ── */
body .itn-why-g{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--ink); margin-top:clamp(20px,3vw,40px)}body .itn-why-g > div:where(:not([class*="elementor-widget"])){padding:24px clamp(14px,1.6vw,26px) 8px 0}body .itn-why-g > div:where(:not([class*="elementor-widget"])) + div:where(:not([class*="elementor-widget"])){padding-left:clamp(14px,1.6vw,26px); border-left:1px solid var(--hair)}body .itn-why-g b{font-family:var(--akt-d); font-style:italic; font-weight:400; font-size:clamp(40px,4vw,60px); line-height:1; color:var(--gold)}body .itn-why-g h3{font-family:var(--akt-d); font-weight:500; font-size:23px; line-height:1.15; margin:14px 0 8px; color:var(--ink)}body .itn-why-g p{font-size:14.5px !important; line-height:1.65 !important}

@media (max-width:1100px){body .itn-why-g{grid-template-columns:repeat(2,minmax(0,1fr))}body .itn-why-g > div:where(:not([class*="elementor-widget"])):nth-child(3){padding-left:0; border-left:0}}
@media (max-width:980px){body .itn-ov-grid, body .itn-days-head, body .itn-rt-more, body .itn-tv{grid-template-columns:1fr}body .itn-ov-card{position:static}body .itn-hero-coords{display:none}}
@media (max-width:760px){body .itn-why-g{grid-template-columns:1fr}body .itn-why-g > div:where(:not([class*="elementor-widget"])) + div:where(:not([class*="elementor-widget"])){padding-left:0; border-left:0; border-top:1px solid var(--hair)}body .itn-rt-notes{grid-template-columns:1fr}body .itn-fl{grid-template-columns:1fr}body .itn-fl .itn-eyebrow{grid-row:auto; padding:0 0 4px}body .itn-ov-p p:first-child::first-letter{font-size:58px}}body .itn-dark .itn-day-note{border-radius:0 10px 10px 0}

/* ═══ route + cards, responsive ═══════════════════════════════════════════ */
@media (max-width:1100px){body .itn-rgrid{grid-template-columns:1fr}body .itn-rlist{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px}body .itn-card-in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}body .itn-day-meta{grid-template-columns:repeat(2,minmax(0,1fr))}body .itn-day-meta > div:where(:not([class*="elementor-widget"])):nth-child(3){padding-left:0; border-left:0}body .itn-day-meta > div:where(:not([class*="elementor-widget"])):nth-child(n+3){border-top:1px solid rgba(var(--paper-rgb),.12)}}
@media (max-width:760px){body .itn-rlist{grid-template-columns:1fr}body .itn-rmap{padding:10px; border-radius:14px}body .itn-card{margin-bottom:8vh}body .itn-card-in{grid-template-columns:1fr; min-height:0; border-radius:18px}body .itn-card-media{min-height:0; aspect-ratio:4/3.4}body .itn-card-n{font-size:58px}body .itn-card-cap p{font-size:14px !important}body .itn-day-t li{grid-template-columns:1fr; gap:4px}}
/* no shrinking or dimming under reduced motion; the cards still stack */
@media (prefers-reduced-motion:reduce){body .itn-card-in{transform:none}body .itn-card-in::after{opacity:0}body .itn-rmap.is-drawn .leg{animation:none; stroke-dashoffset:0}}/* ═══ the route map from a WordPress shortcode ════════════════════════════
   The inline script in section III moves the shortcode's output into the
   slot and adds .is-embed / .has-embed. The drawn map's legend and hint no
   longer describe what is on screen, so they go. */
body .itn-rmap.is-embed{padding:0; overflow:hidden; display:flex; min-height:clamp(320px,40vw,560px)}body .itn-rmap.is-embed > *, body .itn-rmap.is-embed > :where(.elementor-widget) > :where(.elementor-widget-container) > *{flex:1 1 auto; width:100% !important; min-height:inherit}body .has-embed .itn-rhint, body .has-embed .itn-rkey{display:none}body .itn-map-sc:empty{display:none}/* the Golden Safari Itinerary map: its block and canvas fill the whole slot (the plugin's own
   floor is 360px, which left a dark band under it in a 560px slot) */
body .itn-rmap.is-embed .gsi-block--map{display:flex; flex-direction:column; height:auto}body .itn-rmap.is-embed #routeMap{flex:1 1 auto; height:auto !important; min-height:clamp(320px,40vw,560px) !important}body /* "body .itn-map svg{width:100%;height:auto}" is for the drawn map; on the plugin map it shrank Leaflet's
   route layer (an svg in a zero-size pane) to 0x0, so the road route and day line never showed */
.itn-map.is-embed .leaflet-pane svg{width:auto !important; height:auto !important; max-width:none !important; display:inline}/* ═══ Golden Safari Itinerary price bars (build_itinerary.plugin_slots) ═════
   The shortcodes render in hidden blocks; the inline script moves them into the
   Trip details card and the Rates CTA box. "On request" until prices exist. */
body .itn-sc{display:none}body .itn-pb{margin:0 0 18px; padding:14px 0 0; border-top:1px solid var(--hair); font-family:var(--akt-b); color:var(--ink)}body .itn-pb--rates{margin:0 0 16px; padding:0 0 14px; border-top:0; border-bottom:1px solid var(--hair)}/* the Trip details card is dark: the bar's text must be light there */
body .itn-ov-card .itn-pb{border-top-color:rgba(var(--c-f3eee3-rgb),.16)}body .itn-ov-card .itn-pb, body .itn-ov-card .itn-pb *{color:#F3EEE3 !important}body .itn-pdf-btn{display:inline-flex}body .itn-pdf-btn a{display:inline-flex !important; align-items:center; justify-content:center; gap:12px;
  font-family:var(--akt-b) !important; font-size:11px !important; font-weight:500 !important; line-height:1.2 !important;
  letter-spacing:.26em !important; text-transform:uppercase !important; padding:17px 34px !important; border-radius:0 !important;
  background:transparent !important; color:var(--cream) !important; border:1px solid rgba(var(--paper-rgb),.34) !important;
  transition:background .3s,color .3s,border-color .3s; text-decoration:none !important}body .itn-pdf-btn a:hover{background:var(--cream) !important; color:var(--ink) !important; border-color:var(--cream) !important}/* in the sticky section bar, beside Enquire (client's screenshot, 25 Sep 2026): Enquire's size, outline gold */
body .itn-pdf-btn--nav{flex:0 0 auto}/* the extra button pushed the bar past 1320px and it was clipped at "DOWNLOA" — tighter link spacing here */
body .dst-jump-in:has(.itn-pdf-btn--nav){gap:clamp(12px,1.2vw,20px)}body .dst-jump-in:has(.itn-pdf-btn--nav) a{letter-spacing:.15em !important}body .dst-jump .itn-pdf-btn--nav a{padding:8px 18px !important; font-size:11px !important;
  letter-spacing:.2em !important; color:var(--gold-d) !important; border:1px solid var(--gold) !important; background:transparent !important; white-space:nowrap}body .dst-jump .itn-pdf-btn--nav a::after{display:none !important}body .dst-jump .itn-pdf-btn--nav a:hover{background:var(--gold) !important; color:#fff !important}/* ═══ BEGIN HERE — the enquiry, as a safari field permit ═══════════════════
   Night bush with contour lines behind; on it a cream permit card with a
   rubber stamp, luggage-tag chips and a paw-print trail that fills in as each
   step is done. Without JavaScript every step shows and the form posts. */
body .itn-bk{position:relative; isolation:isolate; overflow:hidden; background:#121614; color:#F3EEE3; padding:clamp(72px,9vw,140px) 0}body .itn-bk-sym{position:absolute; width:0; height:0; overflow:hidden}body .itn-bk-bg{position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    repeating-radial-gradient(ellipse 58% 44% at 14% 22%, transparent 0 26px, rgba(var(--gold-l-rgb),.075) 26px 27px),
    repeating-radial-gradient(ellipse 40% 52% at 92% 88%, transparent 0 22px, rgba(var(--gold-l-rgb),.06) 22px 23px),
    radial-gradient(900px 600px at 80% 10%, rgba(var(--gold-l-rgb),.12), transparent 60%);
}body .itn-bk-bg span{position:absolute; left:-1vw; bottom:-4vw; font-family:var(--akt-d); font-style:italic; font-weight:500; font-size:clamp(140px,24vw,380px); line-height:1; color:transparent; -webkit-text-stroke:1px rgba(var(--c-f3eee3-rgb),.07); white-space:nowrap}body .itn-bk-grid{display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(34px,5vw,90px); align-items:start}/* left: the pitch, and the trail */
body .itn-bk-l{position:sticky; top:calc(var(--nh) + 40px)}body .itn-bk .dst-rule span{color:var(--gold-l)}body .itn-bk .dst-rule::after{background:rgba(var(--c-f3eee3-rgb),.2)}body .itn-bk-l h2{margin:18px 0 18px; font-family:var(--akt-d); font-weight:500; font-size:clamp(34px,4vw,58px); line-height:1.02; color:#fff}body .itn-bk-l > p, body .itn-bk-l > :where(.elementor-widget) > :where(.elementor-widget-container) > p{margin:0 !important; max-width:44ch; font-size:16.5px !important; line-height:1.7 !important; color:rgba(var(--c-f3eee3-rgb),.72) !important}body .itn-bk-trail{list-style:none; margin:clamp(30px,4vw,48px) 0 0; padding:0}body .itn-bk-trail li{position:relative; display:grid; grid-template-columns:22px 34px minmax(0,1fr); align-items:center; column-gap:12px; padding-bottom:30px; font-family:var(--akt-b); color:rgba(var(--c-f3eee3-rgb),.45); transition:color .4s}body .itn-bk-trail li:last-child{padding-bottom:0}body .itn-bk-trail .pt{width:14px; height:14px; margin-left:4px; border-radius:50%; box-shadow:inset 0 0 0 1.5px currentColor; transition:background .4s, box-shadow .4s, transform .4s var(--me)}body .itn-bk-trail b{font-weight:500; font-size:11px; letter-spacing:.2em}body .itn-bk-trail span{font-family:var(--akt-d); font-size:21px; line-height:1.2}/* the path between waypoints: dashes that turn into paw prints once walked */
body .itn-bk-trail li:not(:last-child)::before{content:''; position:absolute; left:10.5px; top:22px; bottom:4px; border-left:1.5px dashed rgba(var(--c-f3eee3-rgb),.2)}body .itn-bk-trail .paws{position:absolute; left:3px; top:22px; bottom:6px; display:flex; flex-direction:column; justify-content:space-around; pointer-events:none}body .itn-bk-trail li:last-child .paws{display:none}body .itn-bk-trail .paws svg{width:13px; height:13px; fill:var(--gold-l); opacity:0; transform:scale(.4) rotate(-20deg); transition:opacity .35s, transform .45s var(--me)}body .itn-bk-trail .paws svg:nth-child(2){margin-left:5px; transform:scale(.4) rotate(18deg)}body .itn-bk-trail li.is-on{color:#fff}body .itn-bk-trail li.is-on .pt{background:var(--gold-l); box-shadow:0 0 0 6px rgba(var(--gold-l-rgb),.18); transform:scale(1.1)}body .itn-bk-trail li.is-done{color:rgba(var(--c-f3eee3-rgb),.8)}body .itn-bk-trail li.is-done .pt{background:rgba(var(--c-f3eee3-rgb),.8); box-shadow:none}body .itn-bk-trail li.is-done::before{border-color:transparent}body .itn-bk-trail li.is-done .paws svg{opacity:1; transform:scale(1) rotate(-20deg)}body .itn-bk-trail li.is-done .paws svg:nth-child(2){transform:scale(1) rotate(18deg); transition-delay:.12s}body .itn-bk-trail li.is-done .paws svg:nth-child(3){transition-delay:.24s}body .itn-bk-alt{display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 18px; margin-top:clamp(30px,4vw,48px); padding-top:18px; border-top:1px solid rgba(var(--c-f3eee3-rgb),.14); font-family:var(--akt-b); font-size:13.5px; color:rgba(var(--c-f3eee3-rgb),.55)}body .itn-bk-alt a{color:#fff; font-weight:500; text-decoration:none; border-bottom:1px solid rgba(var(--gold-l-rgb),.6); padding-bottom:2px}body .itn-bk-alt a:hover{border-color:#fff}/* right: the permit */
body .itn-bk-card{--paper:#F3EEE3; --ink2:#1E2422; --forest2:#2F5A36;
  position:relative; background:var(--paper); color:var(--ink2); border-radius:6px;
  padding:clamp(22px,2.8vw,40px) clamp(20px,3vw,44px) clamp(22px,2.6vw,34px);
  box-shadow:0 50px 100px -40px rgba(var(--c-000000-rgb),.8), 0 0 0 1px rgba(var(--c-000000-rgb),.04);
  background-image:
    radial-gradient(circle at 100% 100%, transparent 0 60px, rgba(var(--forest2-rgb),.05) 60px 61px, transparent 61px 80px, rgba(var(--forest2-rgb),.05) 80px 81px, transparent 81px),
    linear-gradient(var(--paper), var(--paper));
  transform:rotate(-.6deg);
}body .itn-bk-card::after{content:''; position:absolute; inset:9px; border:1px dashed rgba(var(--ink-rgb),.18); border-radius:3px; pointer-events:none}body .itn-bk-head{position:relative; display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding-bottom:20px; margin-bottom:6px}/* the tear line, with a ticket notch at each end */
body .itn-bk-head::after{content:''; position:absolute; left:calc(-1 * clamp(20px,3vw,44px)); right:calc(-1 * clamp(20px,3vw,44px)); bottom:0; height:22px; transform:translateY(50%);
  background:radial-gradient(circle at 0 50%, #121614 0 11px, transparent 11.5px), radial-gradient(circle at 100% 50%, #121614 0 11px, transparent 11.5px),
             linear-gradient(90deg, transparent 18px, rgba(var(--ink-rgb),.28) 18px) 0 50% / 100% 1px no-repeat;
  -webkit-mask:linear-gradient(#000,#000); z-index:2}body .itn-bk-head::before{content:''; position:absolute; left:0; right:0; bottom:0; border-bottom:1.5px dashed rgba(var(--ink-rgb),.3)}body .itn-bk-k{display:block; font:500 10.5px/1 var(--akt-b); letter-spacing:.26em; text-transform:uppercase; color:var(--forest2)}body .itn-bk-head b{display:block; margin:10px 0 6px; font-family:var(--akt-d); font-weight:500; font-size:clamp(24px,2.3vw,32px); line-height:1.05; color:var(--ink2)}body .itn-bk-sub{font:400 13px/1.4 var(--akt-b); color:#6B706D}body .itn-bk-stamp{flex:0 0 auto; width:clamp(84px,8vw,112px); margin:-8px -6px 0 0; transform:rotate(-14deg); fill:none; stroke:var(--forest2); stroke-width:2; opacity:.78; mix-blend-mode:multiply}body .itn-bk-stamp circle + circle{stroke-width:1}body .itn-bk-stamp text{fill:var(--forest2); stroke:none; font:600 8.6px var(--akt-b); letter-spacing:.2em}body .itn-bk-stamp text.big{font:500 30px var(--akt-d); letter-spacing:0}body .itn-bk-stamp text.sm{font:600 7.5px var(--akt-b); letter-spacing:.3em}body .itn-bk-form{position:relative}body .itn-bk-hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}body .itn-bk-step{border:0; margin:0; padding:22px 0 0; min-width:0}body .itn-bk-step[hidden], body .itn-bk-done[hidden], body .itn-bk-err[hidden], body .itn-bk-ages[hidden], body .itn-bk-foot [hidden]{display:none !important}body .itn-bk-form.is-js .itn-bk-step{animation:itn-bk-in .5s var(--me) both}
@keyframes itn-bk-in{from{opacity:0; transform:translateX(18px)}}body .itn-bk-step legend{display:flex; align-items:baseline; gap:14px; padding:0; margin:0 0 20px; font-family:var(--akt-d); font-weight:500; font-size:clamp(26px,2.5vw,34px); line-height:1.1; color:var(--ink2); outline:0}body .itn-bk-step legend i{font-style:italic; font-weight:400; font-size:1.5em; line-height:.8; color:transparent; -webkit-text-stroke:1px var(--forest2)}body .itn-bk-form:not(.is-js) .itn-bk-step + .itn-bk-step{margin-top:26px; border-top:1px dashed rgba(var(--ink-rgb),.25)}body .itn-bk-row{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px}body .itn-bk-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}body .itn-bk-f{margin-bottom:20px; min-width:0}body .itn-bk-f > label, body .itn-bk-f > :where(.elementor-widget) > :where(.elementor-widget-container) > label, body .itn-bk-lab{display:block; margin-bottom:8px; font:500 10.5px/1.3 var(--akt-b); letter-spacing:.2em; text-transform:uppercase; color:#5E6461}body .itn-bk-f small, body .itn-bk-lab small{font-size:10px; letter-spacing:.1em; text-transform:none; color:#8C918E; margin-left:6px}body .itn-bk input[type=text], body .itn-bk input[type=email], body .itn-bk input[type=tel], body .itn-bk select, body .itn-bk textarea{
  width:100%; box-sizing:border-box; padding:10px 2px 9px; border:0; border-bottom:1.5px solid rgba(var(--ink-rgb),.35); border-radius:0; background:transparent;
  font:400 17px/1.4 var(--akt-b); color:var(--ink2); transition:border-color .25s, background .25s; -webkit-appearance:none; appearance:none}body .itn-bk select{padding-right:26px; background:linear-gradient(45deg,transparent 50%,#5E6461 50%) calc(100% - 9px) 55% / 5px 5px no-repeat, linear-gradient(-45deg,transparent 50%,#5E6461 50%) calc(100% - 4px) 55% / 5px 5px no-repeat; cursor:pointer}body .itn-bk textarea{min-height:104px; resize:vertical; border:1.5px solid rgba(var(--ink-rgb),.2); padding:12px 14px; border-radius:4px; background:rgba(var(--paper-rgb),.35)}body .itn-bk input:focus, body .itn-bk select:focus, body .itn-bk textarea:focus{outline:0; border-color:var(--forest2); background-color:rgba(var(--forest2-rgb),.05)}body .itn-bk-small{margin:8px 0 0 !important; font-size:12.5px !important; line-height:1.55 !important; color:#7A7F7C !important}body .itn-bk-msg{display:none; margin-top:6px; font:500 12.5px/1.4 var(--akt-b); color:#A23B2A}body .itn-bk-f.is-bad input{border-color:#A23B2A}body .itn-bk-f.is-bad .itn-bk-msg{display:block}/* flexibility: a segmented strip */
body .itn-bk-pills{display:flex; flex-wrap:wrap; gap:0; border:1.5px solid rgba(var(--ink-rgb),.3); border-radius:999px; padding:3px; width:max-content; max-width:100%}body .itn-bk-pills label{position:relative; cursor:pointer}body .itn-bk-pills input, body .itn-bk-tag input, body .itn-bk-rc input, body .itn-bk-ok input{position:absolute; opacity:0; width:1px; height:1px}body .itn-bk-pills span{display:block; padding:8px 16px; border-radius:999px; font:500 13px/1 var(--akt-b); color:#4A504D; transition:background .25s, color .25s}body .itn-bk-pills input:checked + span{background:var(--ink2); color:var(--paper)}body .itn-bk-pills input:focus-visible + span, body .itn-bk-tag input:focus-visible + span, body .itn-bk-rc input:focus-visible ~ span, body .itn-bk-ok input:focus-visible + span{outline:2px solid var(--forest2); outline-offset:2px}/* interests: luggage tags */
body .itn-bk-tags{display:flex; flex-wrap:wrap; gap:10px 8px}body .itn-bk-tag{cursor:pointer}body .itn-bk-tag span{position:relative; display:block; padding:9px 14px 9px 26px; font:500 13px/1 var(--akt-b); color:var(--ink2);
  background:#E6DFCF; clip-path:polygon(12px 0,100% 0,100% 100%,12px 100%,0 50%); transition:background .25s, color .25s, transform .35s var(--me)}body .itn-bk-tag span::before{content:''; position:absolute; left:11px; top:50%; width:6px; height:6px; margin-top:-3px; border-radius:50%; background:var(--paper); box-shadow:inset 0 0 0 1px rgba(var(--ink-rgb),.25)}body .itn-bk-tag:hover span{transform:rotate(-2deg)}body .itn-bk-tag input:checked + span{background:var(--forest2); color:#fff; transform:rotate(-2deg)}/* radio cards with icons */
body .itn-bk-rcs{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px}body .itn-bk-rcs-t{grid-template-columns:repeat(5,minmax(0,1fr))}body .itn-bk-rc{position:relative; display:flex; flex-direction:column; align-items:center; gap:8px; padding:14px 6px 12px; cursor:pointer; text-align:center;
  border:1.5px solid rgba(var(--ink-rgb),.18); border-radius:10px; background:rgba(var(--paper-rgb),.4); transition:border-color .25s, background .25s, transform .35s var(--me)}body .itn-bk-rc:hover{transform:translateY(-2px); border-color:rgba(var(--ink-rgb),.4)}body .itn-bk-rc svg{width:30px; height:30px; fill:none; stroke:var(--ink2); stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round}body .itn-bk-rc span{font:500 12.5px/1.2 var(--akt-b); color:var(--ink2)}body .itn-bk-rc small{margin:0; font:400 11.5px/1.35 var(--akt-b); letter-spacing:0; text-transform:none; color:#7A7F7C}body .itn-bk-rc em{display:block; margin-top:4px; font:500 9px/1 var(--akt-b); font-style:normal; letter-spacing:.18em; text-transform:uppercase; color:var(--forest2)}body .itn-bk-rc-t{align-items:flex-start; text-align:left; padding:14px 12px}body .itn-bk-rc-t span{font-family:var(--akt-d); font-size:19px}body .itn-bk-rc:has(input:checked){border-color:var(--forest2); background:rgba(var(--forest2-rgb),.08)}body .itn-bk-rc:has(input:checked)::after{content:'\2713'; position:absolute; top:-8px; right:-8px; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; background:var(--forest2); color:#fff; font:600 12px/1 var(--akt-b); transform:rotate(-10deg)}body .itn-bk-rc:has(input:checked) svg{stroke:var(--forest2)}/* counters */
body .itn-bk-ct{display:flex; align-items:center; gap:10px}body .itn-bk-ct button{flex:0 0 auto; width:38px; height:38px; border-radius:50%; border:1.5px solid rgba(var(--ink-rgb),.35); background:transparent; cursor:pointer; font:400 20px/1 var(--akt-b); color:var(--ink2); transition:background .2s, color .2s, border-color .2s}body .itn-bk-ct button:hover{background:var(--ink2); color:var(--paper); border-color:var(--ink2)}body .itn-bk-ct input{width:3.2ch; padding:0; border:0; background:transparent; text-align:center; font:500 30px/1 var(--akt-d); color:var(--ink2); -moz-appearance:textfield}body .itn-bk-ct input::-webkit-inner-spin-button, body .itn-bk-ct input::-webkit-outer-spin-button{-webkit-appearance:none; margin:0}body .itn-bk-ok{position:relative; display:flex; gap:12px; align-items:flex-start; margin:4px 0 6px; cursor:pointer; font:400 13.5px/1.55 var(--akt-b); color:#4A504D}body .itn-bk-ok span::before{content:''; flex:0 0 auto; display:inline-block; width:18px; height:18px; margin:1px 12px 0 0; vertical-align:-4px; border:1.5px solid rgba(var(--ink-rgb),.45); border-radius:4px; background:#fff center / 12px no-repeat}body .itn-bk-ok input:checked + span::before{background-color:var(--forest2); border-color:var(--forest2); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.4l2.6 2.5L10 3.4' fill='none' stroke='%23fff' stroke-width='1.8'/%3E%3C/svg%3E")}body .itn-bk-ok.is-bad span::before{border-color:#A23B2A}body .itn-bk-ok span{display:block}body .itn-bk-err{margin:4px 0 0 !important; padding:12px 14px; border-left:3px solid #A23B2A; background:rgba(var(--c-a23b2a-rgb),.08); font-size:14px !important; color:#6E2A1E !important}body .itn-bk-err a{color:inherit; font-weight:600}/* footer: back, the trail track, next */
body .itn-bk-foot{display:flex; align-items:center; gap:16px; margin-top:18px; padding-top:18px; border-top:1.5px dashed rgba(var(--ink-rgb),.25)}body .itn-bk-back{border:0; background:none; padding:8px 0; cursor:pointer; font:500 12px/1 var(--akt-b); letter-spacing:.18em; text-transform:uppercase; color:#5E6461}body .itn-bk-back:hover{color:var(--ink2)}body .itn-bk-track{position:relative; flex:1 1 auto; height:22px; --p:0}body .itn-bk-track i{position:absolute; left:0; right:0; top:50%; border-top:1.5px dashed rgba(var(--ink-rgb),.25)}body .itn-bk-track i::after{content:''; position:absolute; left:0; top:-1.5px; height:1.5px; width:calc(var(--p) * 100%); background:var(--forest2); transition:width .6s var(--me)}body .itn-bk-track svg{position:absolute; top:0; left:calc(var(--p) * (100% - 22px)); width:22px; height:22px; fill:var(--forest2); transform:rotate(90deg); transition:left .6s var(--me)}body .itn-bk-count{font:500 11px/1 var(--akt-b); letter-spacing:.18em; text-transform:uppercase; color:#7A7F7C; white-space:nowrap}body .itn-bk-count b{font-weight:600; color:var(--ink2)}body .itn-bk-next{flex:0 0 auto; display:inline-flex; align-items:center; gap:10px; padding:15px 26px; border:0; border-radius:999px; cursor:pointer;
  background:var(--forest2); color:#fff; font:500 12px/1 var(--akt-b); letter-spacing:.2em; text-transform:uppercase; transition:background .25s, transform .3s var(--me), box-shadow .3s}body .itn-bk-next:hover{background:#244A2A; transform:translateY(-2px); box-shadow:0 12px 24px -12px rgba(var(--forest2-rgb),.8)}body .itn-bk-next span{transition:transform .3s var(--me)}body .itn-bk-next:hover span{transform:translateX(4px)}body .itn-bk-next.is-busy{opacity:.7; pointer-events:none}body .itn-bk-next.is-busy span{animation:itn-bk-walk .8s linear infinite}
@keyframes itn-bk-walk{50%{transform:translateX(6px)}}body .itn-bk-form:not(.is-js) [data-bk=next], body .itn-bk-form:not(.is-js) [data-bk=back], body .itn-bk-form:not(.is-js) .itn-bk-track, body .itn-bk-form:not(.is-js) .itn-bk-count{display:none}body .itn-bk-form:not(.is-js) .itn-bk-foot{justify-content:flex-end}/* sent: the stamp comes down */
body .itn-bk-card.is-sent .itn-bk-form{display:none}body .itn-bk-card.is-sent{animation:itn-bk-thump .5s .35s both}
@keyframes itn-bk-thump{30%{transform:rotate(-.6deg) translateY(4px) scale(.994)}}body .itn-bk-done{position:relative; padding:26px 0 4px}body .itn-bk-seal{position:absolute; right:0; top:4px; width:150px; height:150px; border-radius:50%; display:grid; place-items:center; align-content:center; gap:6px; text-align:center;
  border:3px double #A23B2A; color:#A23B2A; mix-blend-mode:multiply; opacity:.85; transform:rotate(-16deg);
  animation:itn-bk-stamp .55s cubic-bezier(.2,1.6,.4,1) both}body .itn-bk-seal span{font:600 14px/1.15 var(--akt-b); letter-spacing:.2em; text-transform:uppercase}body .itn-bk-seal small{font:500 9px/1 var(--akt-b); letter-spacing:.2em; text-transform:uppercase}body .itn-bk-seal em{font-style:normal}
@keyframes itn-bk-stamp{from{opacity:0; transform:rotate(-30deg) scale(2.4)}}body .itn-bk-done h3{margin:0 0 12px; max-width:calc(100% - 160px); font-family:var(--akt-d); font-weight:500; font-size:clamp(30px,3vw,42px); line-height:1.05; color:var(--ink2); outline:0}body .itn-bk-done > p, body .itn-bk-done > :where(.elementor-widget) > :where(.elementor-widget-container) > p{max-width:calc(100% - 160px); margin:0 0 22px !important; font-size:15.5px !important; line-height:1.65 !important; color:#4A504D !important}body .itn-bk-sum{margin:0 0 22px; border-top:1.5px solid var(--ink2)}body .itn-bk-sum div:where(:not([class*="elementor-widget"])){display:grid; grid-template-columns:90px minmax(0,1fr); gap:14px; padding:10px 0; border-bottom:1px dashed rgba(var(--ink-rgb),.25)}body .itn-bk-sum dt{font:500 10px/1.6 var(--akt-b); letter-spacing:.2em; text-transform:uppercase; color:#7A7F7C}body .itn-bk-sum dd{margin:0; font-family:var(--akt-d); font-size:18px; color:var(--ink2)}body .itn-bk-wa{font:500 12px/1 var(--akt-b); letter-spacing:.18em; text-transform:uppercase; color:var(--forest2); text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:3px}

@media (max-width:1100px){body .itn-bk-rcs{grid-template-columns:repeat(3,minmax(0,1fr))}body .itn-bk-rcs-t{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){body .itn-bk-grid{grid-template-columns:1fr}body .itn-bk-l{position:static}/* the trail turns sideways above the card */
  body .itn-bk-trail{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px}body .itn-bk-trail li{grid-template-columns:1fr; row-gap:8px; padding:0; justify-items:start}body .itn-bk-trail li::before, body .itn-bk-trail .paws{display:none}body .itn-bk-trail b{display:none}body .itn-bk-trail span{font-size:15px}body .itn-bk-trail .pt{margin-left:0}}
@media (max-width:760px){body .itn-bk-card{transform:none; padding:22px 18px 20px}body .itn-bk-head::after{left:-18px; right:-18px}body .itn-bk-row, body .itn-bk-row-3{grid-template-columns:1fr}body .itn-bk-rcs{grid-template-columns:repeat(3,minmax(0,1fr))}body .itn-bk-rcs-t{grid-template-columns:1fr 1fr}body .itn-bk-pills{width:auto}body .itn-bk-pills span{padding:8px 12px}body .itn-bk-foot{flex-wrap:wrap}body .itn-bk-track{order:-1; flex-basis:100%}body .itn-bk-count{margin-right:auto}body .itn-bk-next{flex:1 1 100%; justify-content:center}body .itn-bk-seal{position:relative; right:auto; top:auto; width:120px; height:120px; margin:0 0 18px auto}body .itn-bk-done h3, body .itn-bk-done > p, body .itn-bk-done > :where(.elementor-widget) > :where(.elementor-widget-container) > p{max-width:none}body .itn-bk-card.is-sent{animation:none}}
@media (prefers-reduced-motion:reduce){body .itn-bk-form.is-js .itn-bk-step, body .itn-bk-seal, body .itn-bk-card.is-sent{animation:none}}/* ═══ many regions ═══════════════════════════════════════════════════════
   Flights are dashed and fade in rather than draw; places a plan does not
   use stay faint and unlabelled. */
body .itn-map .leg.fly{stroke-dasharray:6 5 !important; stroke-dashoffset:0 !important; animation:none !important}body .itn-rmap.is-armed:not(.is-drawn) .leg.fly{opacity:0}body .itn-rmap.is-drawn .leg.fly{transition:opacity .6s calc(var(--d) * .32s)}body .itn-map .node.is-quiet{opacity:.4}body .itn-map polygon.land{fill:#1C211F; stroke:rgba(var(--paper-rgb),.14); stroke-width:1}body .itn-dark .itn-map polygon.water{fill:#1D3040; stroke:#27425A}/* ADD IMAGE — the master prompt's one placeholder. A real URL shows at once;
   an empty slot stays a tidy panel with its label. CSS only, never a script. */
body .ph{background:linear-gradient(155deg,#22330f,#0c1408 72%)}body .ph-img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; display:block}body .ph-img:not([src="ADD IMAGE"]) ~ .ph-l, body .ph-img:not([src="ADD IMAGE"]) ~ .itn-card-need{display:none}body .ph-l{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; text-align:center; padding:18px; font:500 12px/1.5 var(--akt-b); letter-spacing:.2em; text-transform:uppercase; color:rgba(var(--c-f4f1ec-rgb),.35)}body .dst-hero-media.ph{position:absolute}

/* ═══ narrow screens, last word ══════════════════════════════════════════
   These must come AFTER every base rule above: the marker's base
   `white-space:nowrap` sits later in this file than the first responsive
   block, so a phone rule placed there silently lost. On a phone a long marker
   wraps, and no card grid is pushed wider than the screen by its content. */
@media (max-width:980px){body .itn-nights{grid-template-columns:minmax(0,1fr) !important}}
@media (max-width:760px){body .itn-gap{white-space:normal; -webkit-box-decoration-break:clone; box-decoration-break:clone}}/* an empty hero photo slot: its brief sits small in the top corner, never across the title */
body .dst-hero-media.ph .ph-l{align-items:flex-start; justify-content:flex-end; text-align:right; padding:calc(var(--nh) + 84px) clamp(20px,3vw,48px) 0 45%; font-size:10px; line-height:1.6; color:rgba(var(--c-f4f1ec-rgb),.4)}
@media (max-width:980px){body .dst-hero-media.ph .ph-l{display:none}}

/* ═══════════════════════════════════════════════════════════════════════════
   MOTION — shared by the experience and destination page families.

   Both families were readable and completely inert: nothing responded to
   scroll, the sticky sub-navs never said where you were, and moving between
   pages was a white flash. Three techniques, in order of how new they are:

     1. cross-document view transitions   @view-transition
     2. scroll-driven animations           animation-timeline: scroll() / view()
     3. IntersectionObserver reveals       .mo-rise, driven by js/motion.js

   1 and 2 sit behind @supports, so browsers without them get the static page.
   3 only ever applies once motion.js sets .js-motion on <html>, which means a
   script that fails to load cannot leave content invisible.

   Everything is switched off under prefers-reduced-motion except the scroll-spy,
   which is navigation rather than decoration and lives in the JS.

   Keyframes are shared and prefixed mo-. Family-specific rules are grouped
   below; anything generic lives in the EXPERIENCE block only because it was
   written there first — .mo-rise, the view transitions, scroll-behavior and
   interpolate-size all apply to both.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════════
   MOTION LAYER
   The pages were readable and completely inert — nothing responded to scroll,
   the sticky sub-nav never said where you were, and moving between pages was a
   white flash. Three techniques, in order of how new they are:

     1. cross-document view transitions   @view-transition
     2. scroll-driven animations           animation-timeline: scroll() / view()
     3. IntersectionObserver reveals       .mo-rise, driven by experience.js

   1 and 2 are progressive: behind @supports, and absent browsers simply get the
   static page. 3 only ever applies once motion.js has set .js-motion, so a
   failed script cannot leave content invisible.

   Every one of them is switched off under prefers-reduced-motion.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 1. page-to-page transitions ─────────────────────────────────────────
   Same-origin navigation between any two pages that load this stylesheet
   cross-fades instead of flashing white. The hero image is a named element,
   so navigating from a hub card to its page morphs the picture across. */
@view-transition { navigation: auto; }

@media (prefers-reduced-motion: no-preference) {body ::view-transition-old(root){ animation: mo-vt-out .22s var(--me) both; }body ::view-transition-new(root){ animation: mo-vt-in  .38s var(--me) both; }
  @keyframes mo-vt-out { to { opacity: 0; transform: translateY(-8px); } }
  @keyframes mo-vt-in  { from { opacity: 0; transform: translateY(14px); } }body ::view-transition-group(page-hero){ animation-duration: .5s; }}
@media (prefers-reduced-motion: reduce) {body ::view-transition-old(root), body ::view-transition-new(root){ animation: none; }}

/* ── 2. scroll-driven, no JavaScript at all ──────────────────────────────*/
@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes mo-progress { to { transform: scaleX(1); } }
    @keyframes mo-hero-drift {
      from { transform: scale(1.14) translateY(-1.5%); }
      to   { transform: scale(1.02) translateY(3.5%); }
    }
    @keyframes mo-hero-lift { to { opacity: 0; transform: translateY(-26px); } }
    @keyframes mo-rail { to { transform: scaleY(1); } }
    @keyframes mo-num { from { opacity: 0; transform: translateY(10px); } }}}

/* ── 5. the FAQ opens instead of snapping ────────────────────────────────*/
@supports (interpolate-size: allow-keywords) {
  @media (prefers-reduced-motion: no-preference) {:root{ interpolate-size: allow-keywords; }}}

/* ── 6b. the hero arrives, once, on load ─────────────────────────
   Staggered rather than all at once, so the eye lands on the kicker, then the
   headline, then the standfirst — which is the order it should read in. */
@media (prefers-reduced-motion: no-preference) {
  @keyframes mo-enter { from { opacity: 0; transform: translateY(20px); } }}

/* ── 7. anything that scrolls, scrolls smoothly ──────────────────────────*/
@media (prefers-reduced-motion: no-preference) {html{ scroll-behavior: smooth; }}


/* ═══════════════════════════════════════════════════════════════════════════
   DESTINATION FAMILY
   Same three techniques as above, tuned to the destination tokens. The two
   differences that matter: the destination sub-nav sits on cream rather than
   near-black, so the active state is gold-on-ink instead of white-on-fire; and
   the signature element here is the month strip rather than a time rail.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── scroll-driven, no JavaScript ───────────────────────────────────────*/
@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {body .dst-jump::after{
      content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px;
      background: linear-gradient(90deg, var(--gold-d), var(--gold));
      transform: scaleX(0); transform-origin: 0 50%;
      animation: mo-progress linear both;
      animation-timeline: scroll(root block);
    }body .dst-hero-media img{
      animation: mo-hero-drift linear both;
      animation-timeline: view();
      animation-range: cover 0% cover 100%;
    }body .dst-hero-body, body .dst-hero-facts{
      animation: mo-hero-lift linear both;
      animation-timeline: view();
      animation-range: exit 0% exit 78%;
    }/* the section rules draw themselves in rather than just being there */
    body .dst-rule::before, body .dst-rule::after{
      transform-origin: 0 50%;
      animation: mo-rule linear both;
      animation-timeline: view(); animation-range: entry 10% entry 90%;
    }
    @keyframes mo-rule { from { transform: scaleX(0); } to { transform: scaleX(1); } }}}/* ── the sub-nav actually navigates ─────────────────────────────────────*/
body .dst-jump a{ transition: color .25s; }body .dst-jump{ transition: background .3s var(--me), box-shadow .3s var(--me); }/* the anchor offset has to clear the header and the sub-nav together */
body .dst-sec[id]{ scroll-margin-top: calc(var(--nh) + 58px); }

/* ── hero entrance ──────────────────────────────────────────────────────*/
@media (prefers-reduced-motion: no-preference) {body .dst-crumb, body .dst-kicker, body .dst-hero h1, body .dst-hero-body p, body .dst-hero-facts{
    animation: mo-enter .82s var(--me) both;
  }body .dst-crumb{ animation-delay: .04s; }body .dst-kicker{ animation-delay: .13s; }body .dst-hero h1{ animation-delay: .20s; }body .dst-hero-body p{ animation-delay: .32s; }body .dst-hero-facts{ animation-delay: .44s; }}

/* ── the FAQ opens instead of snapping ──────────────────────────────────*/
@supports (interpolate-size: allow-keywords) {
  @media (prefers-reduced-motion: no-preference) {body .dst-faq details::details-content{
      block-size: 0; overflow: clip;
      transition: block-size .42s var(--me), content-visibility .42s allow-discrete;
    }body .dst-faq details[open]::details-content{ block-size: auto; }}}body .dst-faq summary{ transition: color .25s; }body .dst-faq summary:hover, body .dst-faq details[open] summary{ color: var(--gold-d); }body .dst-btn, body .dst-jump-cta{ transition: background .25s, color .25s, transform .25s var(--me); }
@media (prefers-reduced-motion: no-preference) {body .dst-btn:hover, body .dst-jump-cta:hover{ transform: translateY(-2px); }}

/* ── cross-page hero morph ──────────────────────────────────────────────
   Shares the name with the experience hero, so moving between a destination
   and an experience carries the picture across rather than cutting. */
@media (prefers-reduced-motion: no-preference) {body .dst-hero-media img{ view-transition-name: page-hero; }}
/* ============================================================================
   5. GLUE  -  Elementor's widget markup vs what the reference sheet expects.
   ========================================================================== */
body :where(.elementor-widget-heading) :where(.elementor-heading-title) {
  font: inherit; color: inherit; margin: 0; letter-spacing: inherit;
}
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-widget-heading .elementor-heading-title { line-height: inherit; }

/* Images: the sheet sizes the <img>; Elementor's figure/link wrappers vanish */
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-widget-image,
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-widget-image figure,
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-widget-image a { display: contents; }
/* the widget's <img> carries no class, so the sizing class on the wrapper is
   handed down (playbook section 4) */
body .elementor-widget-image.ph-img img,
body .dst-hero-media .elementor-widget-image img,
body .itn-card-media .elementor-widget-image img,
body .itn-hub-m .elementor-widget-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; display:block; }
/* ADD IMAGE: the empty slot hides its <img> and shows its brief; a real URL
   hides the brief. CSS only (master prompt 3.3). */
body .elementor-widget-image img[src="ADD IMAGE"] { display:none !important; }
body :where(.ph, .itn-card-media, .dst-hero-media, .itn-hub-m):has(.elementor-widget-image img:not([src="ADD IMAGE"])) :where(.ph-l, .itn-card-need) { display:none !important; }

/* Buttons: strip Elementor's chrome, let the sheet style the wrapper, and
   stretch the anchor over the whole box (playbook 3.6, 3.7) */
body .elementor-widget-button .elementor-button { background-color: transparent; border-radius: 0; box-shadow: none; fill: currentColor; }
body .elementor-widget-button > .elementor-widget-container,
body .elementor-widget-button .elementor-button-wrapper,
body .elementor-widget-button .elementor-button-content-wrapper { display: contents; }
body .elementor-widget-button .elementor-button-text { font: inherit; color: inherit; }
body :where(.dst-hero,.dst-jump,.dst-sec,.itn-bk,.dst-cta,.itn-map-sc-wrap) .elementor-button.elementor-button {
  padding: 0; line-height: inherit; font: inherit; color: inherit;
  letter-spacing: inherit; text-transform: inherit;
}
body .elementor-widget-button { position: relative; }
body .elementor-widget-button .elementor-button::after { content: ""; position: absolute; inset: 0; }
body .dst-jump-in > .elementor-widget-button { flex: 0 0 auto; }

/* Kit defaults (Global colours/typography) written at (0,3,0) — hand them back */
body.elementor-page .elementor-widget-heading .elementor-heading-title,
body.elementor-page .elementor-widget-text-editor,
body.elementor-page .elementor-widget-icon-list .elementor-icon-list-text {
  color: inherit; font-family: inherit; font-weight: inherit;
}
body.elementor-page .elementor-widget-button .elementor-button { background-color: transparent; }

/* the reset forces display with !important; the `hidden` attribute (rate
   panels, form steps) must still win */
body [hidden][hidden] { display: none !important; }

/* Text Editors are pass-throughs: the wrapper keeps the class, its container
   vanishes from layout */
body .elementor-widget-text-editor > .elementor-widget-container { display: contents; }
/* a pass-through widget is not a box at all: the element inside it is */
body .elementor-widget-text-editor.ba-pass { display: contents !important; }
body :where(.ba-t-span, .ba-t-b, .ba-t-i, .ba-t-em, .ba-t-strong, .ba-t-small,
            .ba-t-a, .ba-t-cite, .ba-t-time, .ba-t-abbr, .ba-t-code,
            .ba-t-mark, .ba-t-sub, .ba-t-sup) { display: inline; }

/* link containers (hub and related cards) are real <a> elements */
body a.e-con { color: inherit; text-decoration: none; }

/* HTML widgets are pass-throughs too: the markup inside is the design */
body .elementor-widget-html,
body .elementor-widget-html > .elementor-widget-container { display: contents !important; }
/* a subgrid inherits its parent's gap; the reset's gap:0 would stop that */
body .e-con.itn-nstrip { gap: normal !important; }

/* FAQ: Elementor's Accordion restyled to the page's question list */
body .dst-faq .elementor-accordion { border-top: 1px solid var(--hair); }
body .dst-faq .elementor-accordion .elementor-accordion-item { border: 0; border-bottom: 1px solid var(--hair); }
body .dst-faq .elementor-accordion .elementor-tab-title {
  padding: 20px 40px 20px 0; border: 0; font-family: var(--akt-d); font-size: 21px;
  font-weight: 500; line-height: 1.3; color: var(--ink); cursor: pointer; position: relative;
}
body .dst-faq .elementor-accordion .elementor-tab-title a { color: inherit; }
body .dst-faq .elementor-accordion .elementor-tab-content {
  padding: 0 40px 22px 0; border: 0; font-family: var(--akt-b); font-size: 15.5px; line-height: 1.75; color: var(--ink-soft);
}
body .dst-faq .elementor-accordion .elementor-accordion-icon { color: var(--gold); }

/* Rows that are now containers, and so are also `.e-con`. The reset
   above neutralises Elementor layout with !important, which would
   otherwise beat these plain declarations (standard rule 6). Generated
   from the classes actually used as containers - not hand-listed. */
body .dst-wrap:where(.e-con, .elementor-widget){max-width:1320px !important;margin:0 auto !important;padding:0 clamp(20px,3vw,48px) !important;}
body .dst-wrap-narrow:where(.e-con, .elementor-widget){max-width:880px !important;}
body .dst-sec:where(.e-con, .elementor-widget){padding:clamp(56px,6.5vw,104px) 0 !important;}
body .dst-sec-dark:where(.e-con, .elementor-widget){color:var(--cream) !important;}
body .dst-sec-dark .dst-rule span:where(.e-con){color:var(--gold-l) !important;}
body .dst-sec h2:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:clamp(28px,4vw,52px) !important;line-height:1.08 !important;color:var(--ink) !important;margin:0 0 18px !important;}
body .dst-sec-dark h2:where(.elementor-heading-title){color:var(--cream) !important;}
body .dst-hero:where(.e-con, .elementor-widget){min-height:clamp(520px,68vh,760px) !important;display:flex !important;flex-direction:column !important;justify-content:flex-end !important;color:#fff !important;padding-top:var(--nh) !important;}
body .dst-hero-body:where(.e-con, .elementor-widget){max-width:1320px !important;width:100% !important;margin:0 auto !important;padding:0 clamp(20px,3vw,48px) clamp(26px,3vw,42px) !important;}
body .dst-crumb:where(.e-con, .elementor-widget){display:flex !important;align-items:center !important;gap:10px !important;margin-bottom:20px !important;flex-wrap:wrap !important;}
body .dst-crumb a:where(.e-con), body .dst-crumb span:where(.e-con){font-family:var(--akt-b) !important;font-size:11px !important;font-weight:500 !important;letter-spacing:.2em !important;text-transform:uppercase !important;font-style:normal !important;}
body .dst-crumb a:where(.e-con){color:rgba(var(--paper-rgb),.66) !important;}
body .dst-crumb a:where(.e-con):hover{color:#fff !important;}
body .dst-crumb span:where(.e-con){color:rgba(var(--paper-rgb),.32) !important;}
body .dst-hero h1:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:clamp(40px,6.4vw,86px) !important;line-height:1 !important;letter-spacing:.005em !important;color:#fff !important;margin:0 0 16px !important;}
body .dst-hero-facts:where(.e-con, .elementor-widget){max-width:1320px !important;width:100% !important;margin:0 auto !important;padding:0 clamp(20px,3vw,48px) clamp(22px,2.4vw,34px) !important;display:grid !important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr)) !important;gap:1px !important;}
body .dst-hero-facts > div:where(.e-con), body .dst-hero-facts > :where(.elementor-widget) > :where(.elementor-widget-container) > div:where(.e-con){padding:15px 16px !important;display:flex !important;flex-direction:column !important;gap:6px !important;}
body .dst-jump-in:where(.e-con, .elementor-widget){max-width:1320px !important;margin:0 auto !important;padding:0 clamp(20px,3vw,48px) !important;display:flex !important;align-items:center !important;gap:clamp(14px,1.8vw,30px) !important;}
body .dst-jump a:where(.e-con){padding:15px 0 !important;font-family:var(--akt-b) !important;font-size:11px !important;font-weight:500 !important;letter-spacing:.2em !important;text-transform:uppercase !important;color:var(--ink-soft) !important;}
body .dst-jump a:where(.e-con):hover{color:var(--gold-d) !important;}
/* ── narrow ── */
@media(max-width:980px){
body .dst-hero:where(.e-con, .elementor-widget){min-height:auto !important;padding-bottom:0 !important;}
body .dst-hero-body:where(.e-con, .elementor-widget){padding-top:clamp(40px,10vw,70px) !important;}
}
@media(max-width:640px){
body .dst-hero-facts:where(.e-con, .elementor-widget){grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
body .itn-shape-head:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) !important;gap:clamp(24px,4vw,72px) !important;align-items:end !important;margin-bottom:clamp(30px,3.6vw,52px) !important;}
body .itn-rgrid:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) !important;gap:clamp(24px,4vw,64px) !important;align-items:center !important;}
body .itn-card:where(.e-con, .elementor-widget){margin-bottom:12vh !important;}
body .itn-card:last-child:where(.e-con, .elementor-widget){margin-bottom:0 !important;}
body .itn-card-in:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr) !important;min-height:min(640px, calc(100vh - var(--nh) - 130px)) !important;}
body .itn-card-media:where(.e-con, .elementor-widget){min-height:320px !important;}
body .itn-card-cap:where(.e-con, .elementor-widget){padding:clamp(20px,2.2vw,32px) !important;}
body .itn-card-body:where(.e-con, .elementor-widget){padding:clamp(24px,3vw,46px) clamp(22px,3vw,48px) clamp(24px,2.6vw,40px) !important;display:flex !important;flex-direction:column !important;}
body .itn-card h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:clamp(26px,2.6vw,38px) !important;line-height:1.08 !important;color:#fff !important;margin:0 !important;}
body .itn-day-note:where(.e-con, .elementor-widget){margin-top:auto !important;padding:14px 18px 14px 20px !important;}
body .itn-nights:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:var(--cols) !important;column-gap:clamp(10px,1.2vw,18px) !important;}
body .itn-nstrip:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:subgrid !important;margin-bottom:22px !important;}
body .itn-nseg:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:repeat(var(--n),1fr) !important;gap:3px !important;}
body .itn-night:where(.e-con, .elementor-widget){padding:clamp(18px,2vw,28px) !important;display:flex !important;flex-direction:column !important;}
body .itn-night-k:where(.e-con, .elementor-widget){display:flex !important;justify-content:space-between !important;gap:10px !important;align-items:baseline !important;}
body .itn-night h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:clamp(22px,2vw,28px) !important;line-height:1.1 !important;margin:14px 0 4px !important;color:var(--ink) !important;}
body .itn-mid:where(.e-con, .elementor-widget){margin-top:clamp(24px,3vw,40px) !important;display:grid !important;grid-template-columns:auto minmax(0,1fr) !important;gap:clamp(18px,3vw,48px) !important;padding:clamp(20px,2.4vw,32px) !important;color:var(--cream) !important;}
body .itn-mid h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:clamp(22px,2.2vw,30px) !important;line-height:1.1 !important;margin:0 !important;max-width:12ch !important;color:var(--cream) !important;}
body .itn-inc:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:clamp(20px,3vw,48px) !important;}
body .itn-inc h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:26px !important;margin:0 0 6px !important;color:var(--ink) !important;display:flex !important;align-items:center !important;gap:12px !important;}
body .itn-vars:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:clamp(12px,1.4vw,20px) !important;}
body .itn-var:where(.e-con, .elementor-widget){padding:clamp(20px,2vw,28px) !important;display:flex !important;flex-direction:column !important;}
body .itn-var h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:24px !important;line-height:1.15 !important;margin:16px 0 8px !important;color:var(--ink) !important;}
body .itn-yr-key:where(.e-con, .elementor-widget){display:flex !important;flex-wrap:wrap !important;gap:8px 26px !important;margin-top:18px !important;font-family:var(--akt-b) !important;font-size:12.5px !important;color:rgba(var(--paper-rgb),.66) !important;}
body .itn-cost-h:where(.e-con, .elementor-widget){display:flex !important;justify-content:space-between !important;padding-bottom:10px !important;font-family:var(--akt-b) !important;font-size:9.5px !important;font-weight:500 !important;letter-spacing:.22em !important;text-transform:uppercase !important;color:var(--stone) !important;}
body .itn-rel:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;gap:clamp(10px,1.2vw,16px) !important;}
body .itn-rel a:where(.e-con){display:flex !important;flex-direction:column !important;gap:10px !important;padding:20px !important;color:inherit !important;}
/* ═══ responsive ═══════════════════════════════════════════════════════════ */
@media (max-width:1100px){
body .itn-vars:where(.e-con, .elementor-widget){grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:980px){
body .itn-shape-head:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;align-items:start !important;}
body .itn-nights:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;row-gap:12px !important;}
body .itn-nstrip:where(.e-con, .elementor-widget){display:none !important;}
body .itn-mid:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
}
@media (max-width:760px){
body .itn-inc:where(.e-con, .elementor-widget), body .itn-vars:where(.e-con, .elementor-widget){grid-template-columns:minmax(0,1fr) !important;}
}
body .itn-hero:where(.e-con, .elementor-widget){min-height:clamp(620px,94vh,1040px) !important;}
body .itn-hero h1:where(.elementor-heading-title){font-size:clamp(46px,7.4vw,118px) !important;line-height:.96 !important;letter-spacing:-.015em !important;max-width:11ch !important;}
body .itn-hero-coords:where(.e-con, .elementor-widget){display:flex !important;flex-direction:column !important;align-items:flex-end !important;gap:6px !important;font-family:var(--akt-b) !important;font-size:10.5px !important;letter-spacing:.24em !important;color:rgba(var(--paper-rgb),.72) !important;}
body .itn-hero-coords span:where(.e-con){padding-right:14px !important;}
body .itn-hero-act:where(.e-con, .elementor-widget){display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:14px 28px !important;margin-top:30px !important;}
body .itn-ov-grid:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr) !important;gap:clamp(30px,5vw,96px) !important;align-items:start !important;}
body .itn-ov-l h2:where(.elementor-heading-title){font-size:clamp(32px,4.2vw,58px) !important;max-width:16ch !important;}
body .itn-ov-p:where(.e-con, .elementor-widget){column-gap:40px !important;margin-top:26px !important;}
body .itn-ov-att:where(.e-con, .elementor-widget){margin-top:30px !important;padding-top:18px !important;}
body .itn-ov-card:where(.e-con, .elementor-widget){color:var(--cream) !important;padding:clamp(22px,2.4vw,34px) !important;}
body .itn-ov-card-h:where(.e-con, .elementor-widget){display:flex !important;justify-content:space-between !important;align-items:baseline !important;padding-bottom:14px !important;}
body .itn-ov-card dl > div:where(.e-con), body .itn-ov-card dl > :where(.elementor-widget) > :where(.elementor-widget-container) > div:where(.e-con){display:flex !important;justify-content:space-between !important;gap:18px !important;padding:11px 0 !important;}
body .itn-dark:where(.e-con, .elementor-widget){color:var(--cream) !important;}
body .itn-dark h2:where(.elementor-heading-title){color:var(--cream) !important;}
body .itn-dark .dst-rule span:where(.e-con){color:var(--gold-l) !important;}
body .itn-days-head:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) !important;gap:clamp(24px,4vw,72px) !important;align-items:end !important;margin-bottom:clamp(34px,4vw,60px) !important;}
body .itn-rt-tabs:where(.e-con, .elementor-widget){display:inline-flex !important;padding:4px !important;gap:4px !important;margin-bottom:22px !important;}
body .itn-rt-notes:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:auto minmax(0,1fr) !important;gap:clamp(20px,4vw,64px) !important;margin-top:22px !important;}
body .itn-rt-more:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) !important;gap:clamp(24px,4vw,72px) !important;margin-top:clamp(40px,5vw,70px) !important;align-items:start !important;}
body .itn-rt-more h3:where(.elementor-heading-title), body .itn-props h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:28px !important;margin:0 0 16px !important;color:var(--ink) !important;}
body .itn-rt-cta:where(.e-con, .elementor-widget){padding:clamp(22px,2.4vw,34px) !important;}
body .itn-props:where(.e-con, .elementor-widget){margin-top:clamp(30px,4vw,54px) !important;}
body .itn-var-top:where(.e-con, .elementor-widget){display:flex !important;justify-content:space-between !important;align-items:center !important;gap:10px !important;}
body .itn-tv:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) !important;gap:clamp(30px,5vw,88px) !important;}
body .itn-fls:where(.e-con, .elementor-widget){display:grid !important;gap:0 !important;}
body .itn-fl:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:110px minmax(0,1fr) !important;column-gap:20px !important;padding:18px 0 !important;}
body .itn-fl h3:where(.elementor-heading-title){margin:0 0 4px !important;font-family:var(--akt-d) !important;font-weight:500 !important;font-size:22px !important;color:var(--ink) !important;}
body .itn-why-g:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;margin-top:clamp(20px,3vw,40px) !important;}
body .itn-why-g > div:where(.e-con), body .itn-why-g > :where(.elementor-widget) > :where(.elementor-widget-container) > div:where(.e-con){padding:24px clamp(14px,1.6vw,26px) 8px 0 !important;}
body .itn-why-g > div + div:where(.e-con), body .itn-why-g > :where(.elementor-widget) > :where(.elementor-widget-container) > div + div:where(.e-con){padding-left:clamp(14px,1.6vw,26px) !important;}
body .itn-why-g h3:where(.elementor-heading-title){font-family:var(--akt-d) !important;font-weight:500 !important;font-size:23px !important;line-height:1.15 !important;margin:14px 0 8px !important;color:var(--ink) !important;}
@media (max-width:1100px){
body .itn-why-g:where(.e-con, .elementor-widget){grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
body .itn-why-g > div:where(.e-con):nth-child(3){padding-left:0 !important;}
}
@media (max-width:980px){
body .itn-ov-grid:where(.e-con, .elementor-widget), body .itn-days-head:where(.e-con, .elementor-widget), body .itn-rt-more:where(.e-con, .elementor-widget), body .itn-tv:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
body .itn-hero-coords:where(.e-con, .elementor-widget){display:none !important;}
}
@media (max-width:760px){
body .itn-why-g:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
body .itn-why-g > div + div:where(.e-con), body .itn-why-g > :where(.elementor-widget) > :where(.elementor-widget-container) > div + div:where(.e-con){padding-left:0 !important;}
body .itn-rt-notes:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
body .itn-fl:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
}
/* ═══ route + cards, responsive ═══════════════════════════════════════════ */
@media (max-width:1100px){
body .itn-rgrid:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
body .itn-card-in:where(.e-con, .elementor-widget){grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;}
}
@media (max-width:760px){
body .itn-card:where(.e-con, .elementor-widget){margin-bottom:8vh !important;}
body .itn-card-in:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;min-height:0 !important;}
body .itn-card-media:where(.e-con, .elementor-widget){min-height:0 !important;}
}
body .itn-map-sc:empty:where(.e-con, .elementor-widget){display:none !important;}
body .itn-sc:where(.e-con, .elementor-widget){display:none !important;}
body .itn-pdf-btn:where(.e-con, .elementor-widget){display:inline-flex !important;}
body .itn-pdf-btn a:where(.e-con){display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:12px !important;font-family:var(--akt-b) !important;font-size:11px !important;font-weight:500 !important;line-height:1.2 !important;letter-spacing:.26em !important;text-transform:uppercase !important;padding:17px 34px !important;color:var(--cream) !important;}
body .itn-pdf-btn a:where(.e-con):hover{color:var(--ink) !important;}
body .itn-pdf-btn--nav:where(.e-con, .elementor-widget){flex:0 0 auto !important;}
body .dst-jump-in:has(.itn-pdf-btn--nav):where(.e-con, .elementor-widget){gap:clamp(12px,1.2vw,20px) !important;}
body .dst-jump-in:has(.itn-pdf-btn--nav) a:where(.e-con){letter-spacing:.15em !important;}
body .dst-jump .itn-pdf-btn--nav a:where(.e-con){padding:8px 18px !important;font-size:11px !important;letter-spacing:.2em !important;color:var(--gold-d) !important;}
body .dst-jump .itn-pdf-btn--nav a:where(.e-con):hover{color:#fff !important;}
body .itn-bk:where(.e-con, .elementor-widget){color:#F3EEE3 !important;padding:clamp(72px,9vw,140px) 0 !important;}
body .itn-bk-sym:where(.e-con, .elementor-widget){width:0 !important;height:0 !important;}
body .itn-bk-grid:where(.e-con, .elementor-widget){display:grid !important;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr) !important;gap:clamp(34px,5vw,90px) !important;align-items:start !important;}
body .itn-bk .dst-rule span:where(.e-con){color:var(--gold-l) !important;}
body .itn-bk-l h2:where(.elementor-heading-title){margin:18px 0 18px !important;font-family:var(--akt-d) !important;font-weight:500 !important;font-size:clamp(34px,4vw,58px) !important;line-height:1.02 !important;color:#fff !important;}
body .itn-bk-alt:where(.e-con, .elementor-widget){display:flex !important;flex-wrap:wrap !important;align-items:baseline !important;gap:6px 18px !important;margin-top:clamp(30px,4vw,48px) !important;padding-top:18px !important;font-family:var(--akt-b) !important;font-size:13.5px !important;color:rgba(var(--c-f3eee3-rgb),.55) !important;}
body .itn-bk-alt a:where(.e-con){color:#fff !important;font-weight:500 !important;padding-bottom:2px !important;}
@media (max-width:980px){
body .itn-bk-grid:where(.e-con, .elementor-widget){grid-template-columns:1fr !important;}
}
body .ph-img:where(.e-con, .elementor-widget){width:100% !important;height:100% !important;display:block !important;}
/* ═══ narrow screens, last word ══════════════════════════════════════════
   These must come AFTER every base rule above: the marker's base
   `white-space:nowrap` sits later in this file than the first responsive
   block, so a phone rule placed there silently lost. On a phone a long marker
   wraps, and no card grid is pushed wider than the screen by its content. */
@media (max-width:980px){
body .itn-nights:where(.e-con, .elementor-widget){grid-template-columns:minmax(0,1fr) !important;}
}

/* Inline style attributes from the source, as classes. */
body .ba-st-1{--n:0 !important}
body .ba-st-2{--n:1 !important}
body .ba-st-3{--n:2 !important}
body .ba-st-4{--n:3 !important}
body .ba-st-5{--cols:minmax(0,1fr) minmax(0,1.4fr) !important}/* End custom CSS */