.elementor-187 .elementor-element.elementor-element-29c1f8a{--display:flex;}.elementor-187 .elementor-element.elementor-element-29c1f8a:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-29c1f8a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B241C;}.elementor-187 .elementor-element.elementor-element-5c32df8{--display:flex;}.elementor-187 .elementor-element.elementor-element-ac227ac{--display:flex;}.elementor-187 .elementor-element.elementor-element-ac227ac:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-ac227ac > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B241CF7;}.elementor-187 .elementor-element.elementor-element-bbee59a{--display:flex;}.elementor-187 .elementor-element.elementor-element-cb2c0da{--display:flex;}.elementor-187 .elementor-element.elementor-element-cb2c0da:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-cb2c0da > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4EFE6;}.elementor-187 .elementor-element.elementor-element-f85b72e{--display:flex;}.elementor-187 .elementor-element.elementor-element-f9fae30{--display:flex;}.elementor-187 .elementor-element.elementor-element-79e1c00{--display:flex;}.elementor-187 .elementor-element.elementor-element-1580b46{--display:flex;}.elementor-187 .elementor-element.elementor-element-518bf6b{--display:flex;}.elementor-187 .elementor-element.elementor-element-d7a3616{--display:flex;}.elementor-187 .elementor-element.elementor-element-b029050{--display:flex;}.elementor-187 .elementor-element.elementor-element-e4f45a5{--display:flex;}.elementor-187 .elementor-element.elementor-element-3ed187f{--display:flex;}.elementor-187 .elementor-element.elementor-element-809d26f{--display:flex;}.elementor-187 .elementor-element.elementor-element-809d26f:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-809d26f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F2;}.elementor-187 .elementor-element.elementor-element-f7e250c{--display:flex;}.elementor-187 .elementor-element.elementor-element-53c1865{--display:flex;}.elementor-187 .elementor-element.elementor-element-5aba968{--display:flex;}.elementor-187 .elementor-element.elementor-element-b3db971{--display:flex;}.elementor-187 .elementor-element.elementor-element-2b25566{--display:flex;}.elementor-187 .elementor-element.elementor-element-9fdbad5{--display:flex;}.elementor-187 .elementor-element.elementor-element-9ec68fb{--display:flex;}.elementor-187 .elementor-element.elementor-element-79cc503{--display:flex;}.elementor-187 .elementor-element.elementor-element-2317db9{--display:flex;}.elementor-187 .elementor-element.elementor-element-e569589{--display:flex;}.elementor-187 .elementor-element.elementor-element-64b18ac{--display:flex;}.elementor-187 .elementor-element.elementor-element-3d991e5{--display:flex;}.elementor-187 .elementor-element.elementor-element-183123b{--display:flex;}.elementor-187 .elementor-element.elementor-element-9449db6{--display:flex;}.elementor-187 .elementor-element.elementor-element-8a58ed4{--display:flex;}.elementor-187 .elementor-element.elementor-element-6ba3dad{--display:flex;}.elementor-187 .elementor-element.elementor-element-abeacb9{--display:flex;}.elementor-187 .elementor-element.elementor-element-013043e{--display:flex;}.elementor-187 .elementor-element.elementor-element-1ffbbd0{--display:flex;}.elementor-187 .elementor-element.elementor-element-8bcbe06{--display:flex;}.elementor-187 .elementor-element.elementor-element-d8dd6c3{--display:flex;}.elementor-187 .elementor-element.elementor-element-36d1fe9{--display:flex;}.elementor-187 .elementor-element.elementor-element-141b45b{--display:flex;}.elementor-187 .elementor-element.elementor-element-fd20a00{--display:flex;}.elementor-187 .elementor-element.elementor-element-c0cd37e{--display:flex;}.elementor-187 .elementor-element.elementor-element-c0cd37e:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-c0cd37e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B241C;}.elementor-187 .elementor-element.elementor-element-b289306{--display:flex;}.elementor-187 .elementor-element.elementor-element-21d20ac{--display:flex;}.elementor-187 .elementor-element.elementor-element-5b8b266{--display:flex;}.elementor-187 .elementor-element.elementor-element-dde2bc5{--display:flex;}.elementor-187 .elementor-element.elementor-element-6993acb{--display:flex;}.elementor-187 .elementor-element.elementor-element-b27c948{--display:flex;}.elementor-187 .elementor-element.elementor-element-a30a149{--display:flex;}.elementor-187 .elementor-element.elementor-element-15b95e4{--display:flex;}.elementor-187 .elementor-element.elementor-element-4a14479{--display:flex;}.elementor-187 .elementor-element.elementor-element-aca22fa{--display:flex;}.elementor-187 .elementor-element.elementor-element-e7140d7{--display:flex;}.elementor-187 .elementor-element.elementor-element-c549aa6{--display:flex;}.elementor-187 .elementor-element.elementor-element-b90d636{--display:flex;}.elementor-187 .elementor-element.elementor-element-fe01e0b{--display:flex;}.elementor-187 .elementor-element.elementor-element-fe01e0b:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-fe01e0b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4EFE6;}.elementor-187 .elementor-element.elementor-element-dcb1fe2{--display:flex;}.elementor-187 .elementor-element.elementor-element-b6836ae{--display:flex;}.elementor-187 .elementor-element.elementor-element-d04b6cb{--display:flex;}.elementor-187 .elementor-element.elementor-element-6961dc9{--display:flex;}.elementor-187 .elementor-element.elementor-element-3f99c49 .elementor-tab-title, .elementor-187 .elementor-element.elementor-element-3f99c49 .elementor-tab-title:before, .elementor-187 .elementor-element.elementor-element-3f99c49 .elementor-tab-title:after, .elementor-187 .elementor-element.elementor-element-3f99c49 .elementor-tab-content, .elementor-187 .elementor-element.elementor-element-3f99c49 .elementor-tabs-content-wrapper{border-width:1px;}.elementor-187 .elementor-element.elementor-element-8d29b3e{--display:flex;}.elementor-187 .elementor-element.elementor-element-4a90ef1{--display:flex;}.elementor-187 .elementor-element.elementor-element-6d85b07{--display:flex;}.elementor-187 .elementor-element.elementor-element-e823cb3{--display:flex;}.elementor-187 .elementor-element.elementor-element-e0f7f8b{--display:flex;}.elementor-187 .elementor-element.elementor-element-c2a0692{--display:flex;}.elementor-187 .elementor-element.elementor-element-c2a0692:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-c2a0692 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F2;}.elementor-187 .elementor-element.elementor-element-9fd8629{--display:flex;}.elementor-187 .elementor-element.elementor-element-f5a74f9{--display:flex;}.elementor-187 .elementor-element.elementor-element-f0576cf{--display:flex;}.elementor-187 .elementor-element.elementor-element-500d7c1{--display:flex;}.elementor-187 .elementor-element.elementor-element-340932a{--display:flex;}.elementor-187 .elementor-element.elementor-element-01b93e8{--display:flex;}.elementor-187 .elementor-element.elementor-element-82bbbf6{--display:flex;}.elementor-187 .elementor-element.elementor-element-c844a71{--display:flex;}.elementor-187 .elementor-element.elementor-element-6f58bca{--display:flex;}.elementor-187 .elementor-element.elementor-element-6f58bca:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-6f58bca > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4EFE6;}.elementor-187 .elementor-element.elementor-element-56b29b8{--display:flex;}.elementor-187 .elementor-element.elementor-element-297ff6b .elementor-tab-title, .elementor-187 .elementor-element.elementor-element-297ff6b .elementor-tab-title:before, .elementor-187 .elementor-element.elementor-element-297ff6b .elementor-tab-title:after, .elementor-187 .elementor-element.elementor-element-297ff6b .elementor-tab-content, .elementor-187 .elementor-element.elementor-element-297ff6b .elementor-tabs-content-wrapper{border-width:1px;}.elementor-187 .elementor-element.elementor-element-6a5d852{--display:flex;}.elementor-187 .elementor-element.elementor-element-6a5d852:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-6a5d852 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B241C;}.elementor-187 .elementor-element.elementor-element-6b10f9b{--display:flex;}.elementor-187 .elementor-element.elementor-element-32575dd{--display:flex;}.elementor-187 .elementor-element.elementor-element-e445e71{--display:flex;}.elementor-187 .elementor-element.elementor-element-6c8ed03{--display:flex;}.elementor-187 .elementor-element.elementor-element-90acfed{--display:flex;}.elementor-187 .elementor-element.elementor-element-de52607{--display:flex;}.elementor-187 .elementor-element.elementor-element-da7b880{--display:flex;}.elementor-187 .elementor-element.elementor-element-2c7e352{--display:flex;}.elementor-187 .elementor-element.elementor-element-01024a8{--display:flex;}.elementor-187 .elementor-element.elementor-element-663e3b5{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-29c1f8a *//* ============================================================================
   READ ME FIRST - how to change how this page looks

   MOST THINGS DO NOT NEED THIS FILE:

   - Section background colours .... click the section, then Style > Background.
   - Wording, day text, prices ..... click the text and type. The price tables are
                                     inside the Mid-range / Luxury tabs.
   - Photos ........................ click the image and swap it (Media Library).
   - Buttons ....................... click the button: change its text or link.
   - Seasons, days, add-ons ........ each is its own box; duplicate or delete like
                                     any Elementor container. A season's months and a
                                     day's map text are under Advanced > Attributes.
   - The route map ................. the HTML widget at the left of the Days section.

   THIS FILE CONTROLS:

   - The colour palette and the fonts - the PALETTE block below. Change a colour
     there once and it updates everywhere on the page, including every faded or
     see-through version of it.
   - The fine layout (spacing, card shapes, the seasons band, the rates table).

   TWO RULES IF YOU EDIT THE PALETTE:

   1. Every colour has a plain line and an "-rgb" line. CHANGE BOTH, and keep them
      matching. For #C2622D the three numbers are 194,98,45. Any "hex to rgb"
      search will convert it for you.
   2. Do not delete a line. If you want a colour gone, set it to another colour.

   Elementor keeps a revision history (the clock icon at the bottom of the panel),
   so you can always step back.
   ============================================================================ */

/* --- Elementor's container defaults off, inside this page's sections only ---
   :where() adds no specificity, so every rule of the page stylesheet below still wins.
   Containers become plain blocks; the stylesheet sets display/gap where a row needs them
   (those declarations carry !important because Elementor's own container CSS does). */
body .e-con:where(.jx-root),body :where(.jx-root) .e-con,body :where(.jx-root) .e-con-inner{
  --display:block;display:block !important;
  --flex-direction:row;flex-direction:row !important;
  --align-items:normal;align-items:normal !important;
  --justify-content:normal;justify-content:normal !important;
  --gap:normal;gap:normal !important;--position:static;position:static;
  --flex-wrap:nowrap;flex-wrap:nowrap;--flex-wrap-mobile:nowrap;align-content:normal;
  --padding-block-start:0;--padding-block-end:0;--padding-inline-start:0;--padding-inline-end:0;
  padding:0;margin:0;max-width:none;width:auto;--width:auto;--min-height:0;
}
body :where(.jx-root) .elementor-widget{position:static;z-index:auto;width:auto;margin:0;
  gap:normal;align-items:normal;justify-content:normal;flex-direction:row;flex-wrap:nowrap;align-content:normal}
body :where(.jx-root) .elementor-widget-container{display:contents !important}
/* text, image and button widgets add a wrapper the design never had: take it out of the layout */
body :where(.jx-root) .elementor-widget-text-editor,
body :where(.jx-root) .elementor-widget-image,
body :where(.jx-root) .elementor-widget-button,
body :where(.jx-root) .elementor-widget-html,
body :where(.jx-root) .jx-i{display:contents;text-align:inherit}
/* Elementor prints width/height on every image, which implies an aspect ratio the design never set */
body :where(.jx-root) img{aspect-ratio:auto}
/* a Heading widget's class sits on a <div>: give that div the browser's own heading defaults, at zero
   specificity, so a heading the design left at its natural size stays that size */
body :where(.jx-root) :where(.elementor-widget-heading:has(> h1)){font-size:2em;font-weight:bold;margin-block:.67em}
body :where(.jx-root) :where(.elementor-widget-heading:has(> h2)){font-size:1.5em;font-weight:bold;margin-block:.83em}
body :where(.jx-root) :where(.elementor-widget-heading:has(> h3)){font-size:1.17em;font-weight:bold;margin-block:1em}
body :where(.jx-root) :where(.elementor-widget-heading:has(> h4)){font-weight:bold;margin-block:1.33em}
/* in the editor the wrappers need a box so they can be clicked */
body.elementor-editor-active :where(.jx-root) .elementor-widget-text-editor,
body.elementor-editor-active :where(.jx-root) .elementor-widget-button{display:block}

/* ============================================================================
   PALETTE - change a colour here and it updates everywhere on the page,
   including every faded/see-through version of it. Each colour is written
   twice: the normal one, and an "-rgb" line for the see-through versions.
   ============================================================================ */
body{
  /* Deep bush green, near black - dark sections, main text */
  --ink:#1B241C;
  --ink-rgb:27,36,28;
  /* Softer green-black - secondary text on light sections */
  --ink-soft:#2C3A2E;
  --ink-soft-rgb:44,58,46;
  /* Cream - light sections, text on dark sections */
  --cream:#F4EFE6;
  --cream-rgb:244,239,230;
  /* Sand - labels on dark sections, "good" season colour */
  --sand:#D9C9A8;
  --sand-rgb:217,201,168;
  /* Terracotta - buttons, accents, kicker labels */
  --terracotta:#C2622D;
  --terracotta-rgb:194,98,45;
  /* Dark terracotta - button hover, accent text on cream */
  --terracotta-dark:#A24F22;
  --terracotta-dark-rgb:162,79,34;
  /* Button orange - behind white text (4.8:1 contrast) */
  --terracotta-fill:#B35A29;
  --terracotta-fill-rgb:179,90,41;
  /* Light terracotta - script titles and accents on dark sections */
  --terracotta-light:#E07A3F;
  --terracotta-light-rgb:224,122,63;
  /* Soft orange - script lines inside the season photos */
  --glow:#E9935F;
  --glow-rgb:233,147,95;
  /* Savanna green - "green season" colour */
  --savanna:#7F9D6C;
  --savanna-rgb:127,157,108;
  /* Paper white - cards on cream sections */
  --paper:#FDFBF6;
  --paper-rgb:253,251,246;
  /* Warm white - the Days and Add-ons section backgrounds */
  --paper-2:#FBF8F2;
  --paper-2-rgb:251,248,242;
  /* Night green - panels inside dark sections */
  --night:#232E24;
  --night-rgb:35,46,36;
  /* White */
  --white:#FFFFFF;
  --white-rgb:255,255,255;
  /* Warm umber - the soft shading in the paper texture */
  --umber:#785A32;
  --umber-rgb:120,90,50;
  /* Deepest green - the shade over the season photos */
  --deep-night:#141A15;
  --deep-night-rgb:20,26,21;
  /* Rust - the hatched "to confirm" price placeholders */
  --rust:#9A3B1F;
  --rust-rgb:154,59,31;
  /* Blush - "to confirm" placeholders inside the selected column */
  --blush:#F0B390;
  --blush-rgb:240,179,144;
  /* Fonts: headings, script accents, body text */
  --font-display:"Gilda Display", "Times New Roman", serif;
  --font-script:"Aleita", "Brush Script MT", cursive;
  --font-body:"DM Sans", "Helvetica Neue", Arial, sans-serif;
  /* Layout */
  --container:1280px;
  --gutter:40px;
  --ease:cubic-bezier(.165, .84, .44, 1);
  /* Paper texture on the cream sections (drawn, not a photo) */
  --paper-grain:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20width='320'%20height='320'><filter%20id='g'><feTurbulence%20type='fractalNoise'%20baseFrequency='0.85'%20numOctaves='3'%20stitchTiles='stitch'/><feColorMatrix%20values='0%200%200%200%200.36%200%200%200%200%200.27%200%200%200%200%200.16%200%200%200%200.11%200'/></filter><rect%20width='100%'%20height='100%'%20filter='url(#g)'/></svg>");
  --paper-mottle:url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20width='900'%20height='900'><filter%20id='m'><feTurbulence%20type='fractalNoise'%20baseFrequency='0.012'%20numOctaves='2'%20seed='7'%20stitchTiles='stitch'/><feColorMatrix%20values='0%200%200%200%200.45%200%200%200%200%200.33%200%200%200%200%200.18%200%200%200%200.09%200'/></filter><rect%20width='100%'%20height='100%'%20filter='url(#m)'/></svg>");
}

/* ============================ PAGE STYLESHEET ============================ */
@font-face{font-family: "Gilda Display";
  src: url("https://simbapridesafaris.com/wp-content/uploads/simba-fonts/GildaDisplay-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;}@font-face{font-family: "Aleita";
  src: url("https://simbapridesafaris.com/wp-content/uploads/simba-fonts/Aleita.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;}@font-face{font-family: "DM Sans";
  src: url("https://simbapridesafaris.com/wp-content/uploads/simba-fonts/DM-Sans-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;}@font-face{font-family: "DM Sans";
  src: url("https://simbapridesafaris.com/wp-content/uploads/simba-fonts/DM-Sans-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;}
body{--gutter:40px}
body :where(.jx-root) *,body :where(.jx-root) *::before,body :where(.jx-root) *::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body :where(.jx-root) a{color:inherit;text-decoration:none}
body :where(.jx-root) img{display:block;max-width:100%}
body :where(.jx-root) button{font:inherit}
body .elementor-widget-button.btn .elementor-button{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;font-size:14.5px;font-weight:600;letter-spacing:.02em;border-radius:999px;border:1px solid transparent;transition:background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease)}
body .btn svg{width:16px;height:16px;transition:transform .3s var(--ease)}
body .btn:hover svg{transform:translateX(4px)}
body .elementor-widget-button.btn-primary .elementor-button{background:var(--terracotta-fill);color:var(--white)}
body .elementor-widget-button.btn-primary .elementor-button:hover{background:var(--terracotta-dark)}
body .elementor-widget-button.btn-ghost .elementor-button{color:var(--white);border-color:rgba(var(--white-rgb),.55);backdrop-filter:blur(4px)}
body .elementor-widget-button.btn-ghost .elementor-button:hover{background:rgba(var(--white-rgb),.12);border-color:var(--white)}
@media (max-width: 1024px){
body{--gutter:28px}
}@media (max-width: 640px){
body{--gutter:20px}
body .elementor-widget-button.btn .elementor-button{padding:14px 20px;font-size:14px}
}@media (prefers-reduced-motion: reduce){
html{scroll-behavior:auto}
}body :where(.jx-root) section[id]{scroll-margin-top:72px}
body .title-script{position:relative;z-index:1;display:block;font-family:var(--font-script);line-height:1;color:var(--terracotta);transform:rotate(-3deg);transform-origin:center bottom;pointer-events:none}
body .title-serif{display:block;font-family:var(--font-display);line-height:1.02;letter-spacing:-.01em;color:var(--ink)}
@media (max-width: 767px){
body .title-script{margin:0 0 -10px 2px;font-size:clamp(40px, 12vw, 54px);transform-origin:left bottom}
body .title-serif{font-size:clamp(30px, 8.6vw, 40px)}
}body .ghero{position:relative;min-height:62vh;display:flex !important;align-items:flex-end !important;color:var(--white);overflow:hidden}
body .ghero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
body .ghero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(var(--ink-rgb),.7) 0%, rgba(var(--ink-rgb),.15) 40%, rgba(var(--ink-rgb),.85) 100%)}
body .ghero-inner{position:relative;z-index:1;width:100%;max-width:var(--container);margin:0 auto;padding:200px var(--gutter) 64px}
body .ghero-eyebrow{margin:0;font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--sand)}
body .ghero-title{margin:10px 0 0 !important;font-weight:400}
body .ghero-title .title-script{display:block;margin:0 0 -20px 2px;font-family:var(--font-script);font-size:clamp(44px, 5vw, 72px);line-height:1;color:var(--terracotta-light);transform:rotate(-3deg);transform-origin:left bottom}
body .ghero-title .title-serif{display:block;font-family:var(--font-display);font-size:clamp(44px, 6vw, 84px);line-height:1;color:var(--white)}
body .ghero-lead{max-width:620px;margin:22px 0 0;font-size:17px;line-height:1.6;color:rgba(var(--white-rgb),.88)}
body .guide{color:var(--ink)}
body .guide-inner{max-width:var(--container);margin:0 auto;padding:40px var(--gutter) 60px}
body .gsec{display:grid !important;grid-template-columns:300px minmax(0, 1fr);gap:48px !important;padding:56px 0;border-bottom:1px solid rgba(var(--ink-rgb),.12);scroll-margin-top:130px}
body .gsec:last-child{border-bottom:0}
body .gsec-head{position:sticky;top:130px;align-self:start}
body .gsec-num{display:block;font-size:12px;font-weight:600;letter-spacing:.24em;color:var(--terracotta)}
body .gsec-head h2{margin:8px 0 0;font-family:var(--font-display);font-weight:400;font-size:clamp(30px, 3vw, 40px);line-height:1.1}
body .gsec-lead{margin:0 0 24px;font-family:var(--font-display);font-size:21px;line-height:1.35}
body .gcards{display:grid !important;grid-template-columns:repeat(2, minmax(0, 1fr));gap:14px !important}
body .gcard{padding:20px 22px;border-radius:8px;background:var(--white);border:1px solid rgba(var(--ink-rgb),.1)}
body .gcard h3{margin:0;font-family:var(--font-display);font-weight:400;font-size:21px}
body .gcard p{margin:8px 0 0;font-size:14.5px;line-height:1.55;color:var(--ink-soft)}
body .faq{border-bottom:1px solid rgba(var(--ink-rgb),.12)}
body .faq summary{list-style:none;cursor:pointer;padding:16px 40px 16px 0;position:relative;font-family:var(--font-display);font-size:20px}
body .faq summary::-webkit-details-marker{display:none}
body .faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:26px;color:var(--terracotta);transition:transform .3s var(--ease)}
body .faq[open] summary::after{transform:rotate(45deg)}
body .faq p{margin:0 0 18px;max-width:680px;font-size:15px;line-height:1.6;color:var(--ink-soft)}
@media (max-width: 1024px){
body .gsec{grid-template-columns:1fr;gap:20px !important}
body .gsec-head{position:static}
}@media (max-width: 767px){
body .ghero-inner{padding:150px var(--gutter) 44px}
body .gcards{grid-template-columns:1fr}
body .gsec{padding:40px 0;scroll-margin-top:70px}
}body .ghero-stats{list-style:none;display:flex;gap:36px;margin:30px 0 0;padding:22px 0 0;border-top:1px solid rgba(var(--white-rgb),.25)}
body .ghero-stats li{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(var(--white-rgb),.7)}
body .ghero-stats b{display:block;font-family:var(--font-display);font-size:30px;letter-spacing:0;text-transform:none;color:var(--white)}
@media (max-width: 1024px){
body .ghero-stats{gap:22px;flex-wrap:wrap}
}@media (max-width: 767px){
body .ghero-stats b{font-size:24px}
}body .paper,body .guide{background-image:var(--paper-grain), var(--paper-mottle), radial-gradient(120% 80% at 50% 0%, rgba(var(--white-rgb),.35), rgba(var(--white-rgb),0) 60%), radial-gradient(100% 100% at 50% 100%, rgba(var(--umber-rgb),.14), rgba(var(--umber-rgb),0) 60%), radial-gradient(60% 40% at 0% 0%, rgba(var(--umber-rgb),.08), rgba(var(--umber-rgb),0) 70%), radial-gradient(60% 40% at 100% 100%, rgba(var(--umber-rgb),.08), rgba(var(--umber-rgb),0) 70%);background-blend-mode:multiply, multiply, normal, normal, normal, normal}
body .gcard{background-color:var(--paper)}
body .gsec-body{min-width:0}
body .itn-crumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;font-size:13px;color:rgba(var(--white-rgb),.7)}
body .itn-crumbs a:hover{color:var(--white)}
body .itn-crumbs b{font-weight:600;color:var(--sand)}
body .itn-hero{min-height:78vh}
body .itn .gsec{grid-template-columns:1fr;gap:22px !important}
body .itn .gsec-head{position:static}
body .itn .gsec-head h2{max-width:640px}
body .itn .gsec-body > p,body .itn .gsec-body > .elementor-element > p{font-size:16px;line-height:1.7;color:var(--ink-soft)}
body .itn .gsec-body > p.gsec-lead,body .itn .gsec-body > .elementor-element > p.gsec-lead{font-size:21px;line-height:1.35;color:var(--ink)}
@media (max-width: 767px){
body .itn-hero{min-height:70vh}
}@media print{
body .ghero{min-height:0;color:var(--ink)}
body .ghero img,body .ghero::after{display:none !important}
body .ghero-inner{padding:20px 0}
body .ghero-title .title-serif,body .ghero-stats b{color:var(--ink)}
body .ghero-lead,body .ghero-stats li,body .itn-crumbs{color:var(--ink-soft)}
}body .jx-wrap{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
body .jx-kicker{margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--terracotta)}
body .jx-kicker-light{color:var(--sand)}
body .jx-h2{margin:0 0 18px !important;font-family:var(--font-display);font-weight:400;font-size:clamp(34px, 4vw, 54px);line-height:1.05;color:var(--ink)}
body .jx-h2 em{font-style:normal;font-family:var(--font-script);font-size:1.15em;line-height:.8;color:var(--terracotta)}
body .jx-h2-light{color:var(--white)}
body .jx-h2-light em{color:var(--terracotta-light)}
body .jx-rail{position:sticky;top:70px;z-index:12;color:var(--cream);box-shadow:0 10px 30px rgba(0,0,0,.18);transition:top .35s var(--ease)}
body:has(.site-header.is-hidden) .jx-rail{top:0}
body .jx-rail-inner{position:relative;display:flex !important;align-items:center !important;gap:24px !important;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
body .jx-rail-days{position:relative;display:flex;flex:1;justify-content:space-between;margin:0;padding:14px 0;list-style:none}
body .jx-rail-days::before{content:"";position:absolute;left:14px;right:14px;top:28px;height:2px;background:rgba(var(--cream-rgb),.16)}
body .jx-rail-fill{position:absolute;left:calc(var(--gutter) + 14px);top:28px;height:2px;width:0;background:var(--terracotta);transition:width .3s var(--ease);pointer-events:none}
body .jx-rail-days a{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px}
body .jx-rail-days i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid rgba(var(--cream-rgb),.35);background:var(--ink);font-style:normal;font-size:12px;font-weight:600;transition:background .3s var(--ease), border-color .3s var(--ease)}
body .jx-rail-days span{font-size:11.5px;letter-spacing:.06em;color:rgba(var(--cream-rgb),.6);white-space:nowrap}
body .jx-rail-days a.is-done i{background:var(--terracotta);border-color:var(--terracotta)}
body .jx-rail-days a.is-active i{background:var(--cream);border-color:var(--cream);color:var(--ink);box-shadow:0 0 0 5px rgba(var(--terracotta-rgb),.45)}
body .jx-rail-days a.is-active span{color:var(--white)}
body .jx-rail-links{display:flex;gap:6px;padding-left:20px;border-left:1px solid rgba(var(--cream-rgb),.15)}
body .jx-rail-links a{padding:7px 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:rgba(var(--cream-rgb),.75)}
body .jx-rail-links a:hover{background:rgba(var(--cream-rgb),.1);color:var(--white)}
body .jx-days{padding:100px 0 60px}
body .jx-days-grid{display:grid !important;grid-template-columns:minmax(0, 5fr) minmax(0, 6fr);gap:64px !important;align-items:start !important}
body .jx-mapcard{position:sticky;top:160px}
body .jx-mapcard-in{padding:22px;border-radius:16px;background:var(--ink);color:var(--cream);box-shadow:0 30px 60px rgba(var(--ink-rgb),.25)}
body .jx-map-now{display:flex;flex-direction:column;gap:2px;margin:0 0 12px}
body .jx-map-now span{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--terracotta-light)}
body .jx-map-now b{font-family:var(--font-display);font-weight:400;font-size:22px;color:var(--white)}
body .jx-map{display:block;width:100%;height:auto}
body .jx-legs polyline{fill:none;stroke:rgba(var(--cream-rgb),.18);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 6;transition:stroke .4s var(--ease), stroke-width .4s var(--ease)}
body .jx-legs polyline.is-past{stroke:rgba(var(--terracotta-light-rgb),.55);stroke-dasharray:none}
body .jx-legs polyline.is-now{stroke:var(--terracotta-light);stroke-width:5;stroke-dasharray:none}
body .jx-pins circle{fill:var(--ink);stroke:rgba(var(--cream-rgb),.7);stroke-width:1.5}
body .jx-pins .is-stay circle{fill:var(--terracotta);stroke:var(--cream);stroke-width:2}
body .jx-pins text{font-size:12px;font-weight:600;fill:rgba(var(--cream-rgb),.85);paint-order:stroke;stroke:var(--ink);stroke-width:4px}
body .jx-jeep{transition:transform .6s var(--ease)}
body .jx-jeep circle{fill:var(--cream);stroke:var(--terracotta-light);stroke-width:3}
body .jx-jeep path{fill:var(--ink)}
body .jx-map-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 0;padding:14px 0 0;list-style:none;border-top:1px solid rgba(var(--cream-rgb),.14)}
body .jx-map-meta small{display:block;font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(var(--cream-rgb),.5)}
body .jx-map-meta b{display:block;margin-top:4px;font-size:14px;font-weight:400;color:var(--cream)}
body .jx-ch{position:relative;padding:0 0 90px;scroll-margin-top:150px}
body .jx-ch + .jx-ch{padding-top:70px;border-top:1px solid rgba(var(--ink-rgb),.12)}
body .jx-ch-head{position:relative;margin-bottom:22px}
body .jx-ch-num{position:absolute;right:0;top:-30px;font-family:var(--font-display);font-size:150px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(var(--terracotta-rgb),.35);pointer-events:none}
body .jx-ch-kind{margin:0 0 8px;font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--terracotta)}
body .jx-ch-head h3{position:relative;max-width:460px;margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(30px, 3vw, 42px);line-height:1.08}
body .jx-ch-photo{margin:0 0 24px;border-radius:12px;overflow:hidden;aspect-ratio:16 / 10;box-shadow:0 20px 40px rgba(var(--ink-rgb),.15)}
body .jx-ch-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
body .jx-ch.is-active .jx-ch-photo img{transform:scale(1.04)}
body .jx-ch-text p{margin:0 0 14px;font-size:16px;line-height:1.75;color:var(--ink-soft)}
body .jx-notes{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));margin:22px 0 0;border-top:2px solid var(--ink)}
body .jx-notes div{padding:14px 16px 0 0}
body .jx-notes div + div{padding-left:16px;border-left:1px solid rgba(var(--ink-rgb),.12)}
body .jx-notes dt{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--terracotta)}
body .jx-notes dd{margin:6px 0 0;font-size:14px;line-height:1.45}
body .jx-notes em{display:block;margin-top:4px;font-style:normal;font-size:12px;color:var(--ink-soft)}
body .jx-when{position:relative;padding:120px 0 100px;color:var(--cream);overflow:hidden}
body .jx-when-top{position:relative;display:grid !important;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:60px !important;align-items:end !important;margin-bottom:44px}
body .jx-when-intro{margin:0 0 18px;font-size:16.5px;line-height:1.7;color:rgba(var(--cream-rgb),.78)}
body .jx-seasons{display:flex !important;gap:10px !important;height:560px}
body .jx-season{position:relative;flex:1 1 0 !important;min-width:0;border-radius:18px;overflow:hidden;cursor:pointer;outline:none;transition:flex-grow .7s cubic-bezier(.65, 0, .25, 1), box-shadow .4s var(--ease)}
body .jx-season[aria-expanded="true"]{flex-grow:5 !important;cursor:default;box-shadow:0 30px 60px rgba(0,0,0,.35)}
body .jx-season:focus-visible{box-shadow:0 0 0 3px var(--terracotta-light)}
body .jx-season img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.2s var(--ease), filter .6s var(--ease);filter:saturate(.7) brightness(.75)}
body .jx-season[aria-expanded="true"] img{transform:scale(1);filter:none}
body .jx-season::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(var(--deep-night-rgb),.15) 0%, rgba(var(--deep-night-rgb),.35) 45%, rgba(var(--deep-night-rgb),.92) 100%)}
body .jx-season::before{content:"";position:absolute;left:0;right:0;top:0;z-index:2;height:5px;background:var(--sand)}
body .jx-season.is-best::before{background:var(--terracotta-light)}
body .jx-season.is-green::before{background:var(--savanna)}
body .jx-season-strip{position:absolute;left:0;right:0;bottom:26px;z-index:1;display:flex;flex-direction:column;align-items:center;gap:10px;transition:opacity .4s var(--ease)}
body .jx-season-strip b{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--font-display);font-weight:400;font-size:24px;color:var(--white);white-space:nowrap}
body .jx-season-strip span{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sand);white-space:nowrap}
body .jx-season[aria-expanded="true"] .jx-season-strip{opacity:0;pointer-events:none}
body .jx-season-body{position:absolute;left:0;bottom:0;z-index:1;width:min(560px, 100%);padding:36px 40px;opacity:0;transform:translateY(20px);transition:opacity .5s var(--ease), transform .6s var(--ease);pointer-events:none}
body .jx-season[aria-expanded="true"] .jx-season-body{opacity:1;transform:none;transition-delay:.35s;pointer-events:auto}
body .jx-season-tag{display:inline-block;margin:0 0 14px;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;background:var(--sand);color:var(--ink)}
body .jx-season.is-best .jx-season-tag{background:var(--terracotta-light);color:var(--white)}
body .jx-season.is-green .jx-season-tag{background:var(--savanna);color:var(--white)}
body .jx-season-script{margin:0 0 -10px;font-family:var(--font-script);font-size:40px;line-height:1;color:var(--glow);transform:rotate(-3deg);transform-origin:left bottom}
body .jx-season-body h3{margin:0 0 12px;font-family:var(--font-display);font-weight:400;font-size:clamp(34px, 3.4vw, 50px);line-height:1.05;color:var(--white)}
body .jx-season-where{margin:0;font-size:15.5px;line-height:1.6;color:rgba(var(--cream-rgb),.85)}
body .jx-season-trip{margin:18px 0 0;padding:14px 16px;border-radius:10px;background:rgba(var(--cream-rgb),.1);border-left:3px solid var(--terracotta-light);font-size:14.5px;line-height:1.5;color:var(--cream)}
body .jx-season-trip small{display:block;margin-bottom:4px;font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--glow)}
body .jx-season-foot{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:30px !important;margin-top:20px}
body .jx-yearbar{display:grid;flex:1;grid-template-columns:repeat(12, minmax(0, 1fr));gap:4px;margin:0;padding:0;list-style:none}
body .jx-yearbar li{padding:9px 0 7px;border-radius:6px;border-bottom:3px solid rgba(var(--cream-rgb),.12);background:rgba(var(--cream-rgb),.04);text-align:center;font-family:var(--font-display);font-size:15px;color:rgba(var(--cream-rgb),.45);transition:background .4s var(--ease), color .4s var(--ease), border-color .4s var(--ease)}
body .jx-yearbar li.is-on{background:rgba(var(--cream-rgb),.12);color:var(--white);border-bottom-color:var(--sand)}
body .jx-yearbar li.is-on.is-best{border-bottom-color:var(--terracotta-light)}
body .jx-yearbar li.is-on.is-green{border-bottom-color:var(--savanna)}
body .jx-when-key{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;list-style:none;font-size:13px;color:rgba(var(--cream-rgb),.7)}
body .jx-when-key span{display:inline-block;width:20px;height:5px;margin-right:8px;border-radius:3px;vertical-align:middle}
body .jx-when-key .is-best{background:var(--terracotta-light)}
body .jx-when-key .is-good{background:var(--sand)}
body .jx-when-key .is-green{background:var(--savanna)}
body .jx-season-note{margin:18px 0 0;font-size:13px;font-style:italic;color:rgba(var(--cream-rgb),.5)}
@media (max-width: 1100px){
body .jx-when-top{grid-template-columns:1fr;gap:16px !important}
body .jx-seasons{height:520px}
body .jx-season-body{padding:28px}
body .jx-season-foot{flex-direction:column !important;align-items:stretch !important;gap:14px !important}
}@media (max-width: 767px){
body .jx-seasons{flex-direction:column !important;height:auto}
body .jx-season{flex:none !important;height:84px;transition:height .6s cubic-bezier(.65, 0, .25, 1)}
body .jx-season[aria-expanded="true"]{height:460px}
body .jx-season-strip{top:0;bottom:0;flex-direction:row;justify-content:space-between;padding:0 22px}
body .jx-season-strip b{writing-mode:horizontal-tb;transform:none;font-size:22px}
body .jx-season-body{padding:22px}
body .jx-season-script{font-size:32px}
body .jx-yearbar{grid-template-columns:repeat(6, minmax(0, 1fr))}
}@media (prefers-reduced-motion: reduce){
body .jx-season,body .jx-season img,body .jx-season-body{transition:none}
}body .jx-price{padding:120px 0}
body .jx-price-top{display:grid !important;grid-template-columns:minmax(0, 1fr) auto;gap:60px !important;align-items:end !important;margin-bottom:34px}
body .jx-price-intro{max-width:620px;margin:0;font-size:16px;line-height:1.7;color:var(--ink-soft)}
body .jx-price-from{display:grid;justify-items:end;gap:2px;margin:0 0 6px;text-align:right}
body .jx-price-from small{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft)}
body .jx-price-from b{font-family:var(--font-display);font-weight:400;font-size:52px;line-height:1;color:var(--terracotta)}
body .jx-pnote{margin-bottom:26px;padding:18px 22px;border:1px solid rgba(var(--terracotta-rgb),.28);border-radius:10px;background:rgba(var(--terracotta-rgb),.07)}
body .jx-pnote b{display:block;margin-bottom:6px;font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--terracotta-dark)}
body .jx-pnote p{margin:0;font-size:15px;line-height:1.65;color:var(--ink-soft)}
body .jx-ptabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
body .jx-ptab{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 12px;padding:14px 20px;border:1px solid rgba(var(--ink-rgb),.18);border-radius:12px;background:var(--paper);text-align:left;color:var(--ink);cursor:pointer;transition:background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease)}
body .jx-ptab b{font-family:var(--font-display);font-weight:400;font-size:21px}
body .jx-ptab span{grid-column:1;font-size:13px;color:var(--ink-soft)}
body .jx-ptab .jx-soon{grid-column:2;grid-row:1 / span 2;font-style:normal;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:3px 7px;border:1px dashed currentColor;border-radius:4px;opacity:.6}
body .jx-ptab:hover{border-color:rgba(var(--ink-rgb),.4)}
body .jx-ptab[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:var(--cream)}
body .jx-ptab[aria-selected="true"] span{color:rgba(var(--cream-rgb),.7)}
body .jx-ptab[aria-selected="true"] .jx-soon{opacity:.75}
body .jx-pblock-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 20px;margin-bottom:16px}
body .jx-pblock-top h3{margin:0;font-family:var(--font-display);font-weight:400;font-size:26px}
body .jx-supp{padding:7px 14px;border:1px solid rgba(var(--terracotta-rgb),.3);border-radius:999px;background:rgba(var(--terracotta-rgb),.08);font-size:13.5px;color:var(--ink-soft)}
body .jx-supp em{font-style:normal;margin-left:4px}
body .jx-pblock:not([hidden]){animation:jx-fade .45s ease both}
body .jx-ptable-wrap{overflow-x:auto;border:1px solid rgba(var(--terracotta-rgb),.28);border-radius:12px;background:var(--paper);box-shadow:0 30px 60px -40px rgba(var(--ink-rgb),.5)}
body .jx-ptable{width:100%;min-width:860px;border-collapse:collapse}
body .jx-ptable th,body .jx-ptable td{padding:18px 14px;text-align:center;border-bottom:1px dotted rgba(var(--ink-rgb),.18);transition:background .3s var(--ease), color .3s var(--ease)}
body .jx-ptable thead th{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta-dark);border-bottom:1px solid rgba(var(--terracotta-rgb),.3);cursor:pointer}
body .jx-ptable thead th small{display:block;margin-top:3px;font-size:10px;letter-spacing:.16em;color:var(--ink-soft)}
body .jx-ptable .jx-plbl{width:190px;text-align:left;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);cursor:default}
body .jx-ptable tbody td{font-family:var(--font-display);font-size:25px;color:var(--ink);cursor:pointer}
body .jx-ptable .jx-prooms td{font-family:var(--font-body);font-size:14.5px;color:var(--ink-soft)}
body .jx-ptable tbody tr:last-child > *,body .jx-ptable tbody tr:last-child > .elementor-element > *{border-bottom:0}
body .jx-ptable [data-g="6"]{background:rgba(var(--sand-rgb),.22)}
body .jx-ptable thead [data-g="6"]{color:var(--ink)}
body .jx-ptable .is-sel{background:var(--ink) !important;color:var(--cream) !important}
body .jx-ptable thead .is-sel,body .jx-ptable thead .is-sel small{color:var(--cream) !important}
body .jx-ptable .jx-prooms .is-sel{color:rgba(var(--cream-rgb),.8) !important}
body .jx-ptable td:hover,body .jx-ptable thead th[data-g]:hover{background:rgba(var(--terracotta-rgb),.1)}
body .jx-todo{display:inline-block;padding:3px 8px;border-radius:3px;outline:1px dashed rgba(var(--rust-rgb),.45);outline-offset:-1px;background:repeating-linear-gradient(45deg, rgba(var(--rust-rgb),.05) 0 6px, rgba(var(--rust-rgb),.11) 6px 12px);font-family:ui-monospace, SFMono-Regular, Menlo, monospace;font-size:12.5px;letter-spacing:.04em;color:var(--rust);white-space:nowrap}
body .is-sel .jx-todo{color:var(--blush);outline-color:rgba(var(--blush-rgb),.6);background:repeating-linear-gradient(45deg, rgba(var(--blush-rgb),.08) 0 6px, rgba(var(--blush-rgb),.16) 6px 12px)}
body .jx-rates-cta{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:20px !important;margin-top:16px;padding:18px 24px;border-radius:14px;background:var(--ink);color:var(--cream)}
body .jx-rates-cta p{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0}
body .jx-rates-cta small{width:100%;font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(var(--cream-rgb),.55)}
body .jx-rates-cta b{font-family:var(--font-display);font-weight:400;font-size:22px;color:var(--white)}
body .jx-rates-cta p > span,body .jx-rates-cta p > .elementor-element > span{font-size:14px;color:rgba(var(--cream-rgb),.7)}
body .jx-pchild{margin-top:24px;padding:24px 26px;border-radius:12px;border:1px solid rgba(var(--ink-rgb),.12);background:var(--paper)}
body .jx-pchild h3{margin:0 0 8px;font-family:var(--font-display);font-weight:400;font-size:24px}
body .jx-pchild p{margin:0;font-size:15px;line-height:1.7;color:var(--ink-soft)}
body .jx-ledger{display:grid !important;grid-template-columns:1fr 1fr;gap:50px !important;margin-top:60px;padding-top:40px;border-top:1px solid rgba(var(--ink-rgb),.15)}
body .jx-inc-script{margin:0 0 8px;font-family:var(--font-script);font-size:34px;line-height:1;color:var(--terracotta)}
body .jx-yes,body .jx-no{margin:0;padding:0;list-style:none}
body .jx-yes li,body .jx-no li{position:relative;padding:11px 0 11px 28px;border-bottom:1px dashed rgba(var(--ink-rgb),.2);font-size:14.5px;line-height:1.45}
body .jx-yes li::before{content:"\2713";position:absolute;left:2px;top:10px;font-weight:700;color:var(--terracotta)}
body .jx-no li{color:var(--ink-soft)}
body .jx-no li::before{content:"\2014";position:absolute;left:2px;top:10px;color:rgba(var(--ink-rgb),.4)}
@media (max-width: 900px){
body .jx-price-top{grid-template-columns:1fr;gap:20px !important}
body .jx-price-from{justify-items:start;text-align:left}
body .jx-ptable{min-width:0}
body .jx-ptable thead{display:none}
body .jx-ptable,body .jx-ptable tbody{display:block}
body .jx-ptable tbody{display:grid;grid-template-columns:auto 1fr auto}
body .jx-ptable tbody tr{display:contents}
body .jx-ptable tbody th.jx-plbl{display:none}
body .jx-ptable tbody td{display:flex;align-items:center;padding:14px 16px;text-align:left;border-bottom:1px dotted rgba(var(--ink-rgb),.18)}
body .jx-ptable tbody tr:first-child td{grid-column:2;font-size:21px}
body .jx-ptable tbody tr:first-child td::before{content:attr(data-l);position:absolute;left:16px;font-family:var(--font-body);font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--terracotta-dark)}
body .jx-ptable tbody .jx-prooms td{grid-column:3;justify-content:flex-end;font-size:13px}
body .jx-ptable tbody tr:first-child td{position:relative;padding-left:130px}
body .jx-ptable tbody td[data-g="1"]{grid-row:1}
body .jx-ptable tbody td[data-g="2"]{grid-row:2}
body .jx-ptable tbody td[data-g="3"]{grid-row:3}
body .jx-ptable tbody td[data-g="4"]{grid-row:4}
body .jx-ptable tbody td[data-g="5"]{grid-row:5}
body .jx-ptable tbody td[data-g="6"]{grid-row:6;border-bottom:0}
body .jx-ptable tbody tr:first-child td{grid-column:1 / 3}
}@media (max-width: 767px){
body .jx-ptab{flex:1 1 100%}
body .jx-rates-cta{flex-direction:column !important;align-items:stretch !important}
body .jx-rates-cta .elementor-widget-button.btn .elementor-button{justify-content:center}
body .jx-ledger{grid-template-columns:1fr;gap:30px !important}
body .jx-ptable tbody tr:first-child td{padding-left:118px}
}body .jx-extras{padding:110px 0}
body .jx-extras-head{display:flex !important;justify-content:space-between !important;align-items:flex-end !important;gap:40px !important;margin-bottom:34px}
body .jx-extras-head > p,body .jx-extras-head > .elementor-element > p{max-width:420px;margin:0 0 18px;font-size:15.5px;line-height:1.6;color:var(--ink-soft)}
body .jx-extras-row{display:grid !important;grid-template-columns:repeat(4, minmax(0, 1fr));gap:18px !important}
body .jx-x{position:relative;display:flex !important;flex-direction:column !important;border-radius:14px;overflow:hidden;background:var(--paper);border:1px solid rgba(var(--ink-rgb),.1);cursor:pointer;transition:transform .4s var(--ease), box-shadow .4s var(--ease), border-color .3s var(--ease)}
body .jx-x:hover{transform:translateY(-5px);box-shadow:0 22px 40px rgba(var(--ink-rgb),.14)}
body .jx-x input{position:absolute;opacity:0;pointer-events:none}
body .jx-x img{width:100%;aspect-ratio:4 / 3;object-fit:cover}
body .jx-x-body{display:grid;gap:6px;padding:16px 18px 20px}
body .jx-x-body small{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--terracotta)}
body .jx-x-body b{font-family:var(--font-display);font-weight:400;font-size:21px;line-height:1.2}
body .jx-x-body em{font-style:normal;font-size:14px;line-height:1.5;color:var(--ink-soft)}
body .jx-x-tick{justify-self:start;margin-top:8px;padding:7px 14px 7px 32px;position:relative;border-radius:999px;border:1px solid rgba(var(--ink-rgb),.25);font-style:normal;font-size:13px;font-weight:600}
body .jx-x-tick::before{content:"+";position:absolute;left:13px;top:5px;font-size:15px}
body .jx-x.is-on{border-color:var(--terracotta);box-shadow:0 0 0 2px var(--terracotta)}
body .jx-x.is-on .jx-x-tick{background:var(--terracotta-fill);border-color:var(--terracotta);color:var(--white)}
body .jx-x.is-on .jx-x-tick::before{content:"\2713";font-size:12px;top:7px}
body .jx-x:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
body .jx-extras-picked{margin:26px 0 0;padding:16px 20px;border-radius:12px;background:var(--ink);color:var(--cream);font-size:15px}
body .jx-extras-picked a{margin-left:10px;font-weight:600;color:var(--terracotta-light)}
body .jx-before{padding:110px 0}
body .jx-tabs{display:flex;gap:6px;margin:10px 0 28px;border-bottom:1px solid rgba(var(--ink-rgb),.15);overflow-x:auto;scrollbar-width:none}
body .jx-tabs button{flex:none;padding:14px 18px;border:0;border-bottom:3px solid transparent;background:none;font-size:15px;font-weight:600;color:var(--ink-soft);cursor:pointer}
body .jx-tabs button[aria-selected="true"]{border-bottom-color:var(--terracotta);color:var(--ink)}
body .jx-facts4{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:18px}
body .jx-facts4 > div,body .jx-facts4 > .elementor-element > div{padding:22px;border-radius:12px;background:var(--paper);border:1px solid rgba(var(--ink-rgb),.1)}
body .jx-facts4 small{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--terracotta)}
body .jx-facts4 b{display:block;margin:8px 0;font-family:var(--font-display);font-weight:400;font-size:21px;line-height:1.2}
body .jx-facts4 p{margin:0;font-size:14px;line-height:1.6;color:var(--ink-soft)}
body .jx-panel .faq{max-width:820px}
body .jx-next{padding:110px 0 120px;color:var(--cream)}
body .jx-ticket{display:grid !important;grid-template-columns:minmax(0, 1fr) 240px;border-radius:18px;background:var(--cream);color:var(--ink);overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.35)}
body .jx-ticket-main{padding:50px 56px}
body .jx-ticket-script{margin:0;font-family:var(--font-script);font-size:38px;line-height:1;color:var(--terracotta)}
body .jx-ticket-main h2{margin:6px 0 14px;font-family:var(--font-display);font-weight:400;font-size:clamp(32px, 3.6vw, 48px);line-height:1.05}
body .jx-ticket-main h2 em{font-style:normal;color:var(--terracotta)}
body .jx-ticket-main > p,body .jx-ticket-main > .elementor-element > p{max-width:560px;font-size:16px;line-height:1.65;color:var(--ink-soft)}
body .jx-ticket-actions{display:flex !important;flex-wrap:wrap;gap:12px !important;margin-top:24px}
body .jx-ticket-actions .elementor-widget-button.btn-ghost .elementor-button{color:var(--ink);border-color:rgba(var(--ink-rgb),.35)}
body .jx-ticket-actions .elementor-widget-button.btn-ghost .elementor-button:hover{background:rgba(var(--ink-rgb),.06);border-color:var(--ink)}
body .jx-ticket-stub{position:relative;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:4px !important;padding:30px;border-left:2px dashed rgba(var(--ink-rgb),.25);background:var(--sand);text-align:center}
body .jx-ticket-stub::before,body .jx-ticket-stub::after{content:"";position:absolute;left:-14px;width:26px;height:26px;border-radius:50%;background:var(--ink)}
body .jx-ticket-stub::before{top:-13px}
body .jx-ticket-stub::after{bottom:-13px}
body .jx-ticket-stub small{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft)}
body .jx-ticket-stub b{font-family:var(--font-display);font-weight:400;font-size:72px;line-height:1}
body .jx-ticket-stub span{margin:14px 0;font-size:12px;letter-spacing:.3em;color:var(--ink-soft)}
body .jx-ticket-stub button{padding:0;border:0;background:none;font-size:13px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
body .jx-next-kicker{margin-top:80px;color:var(--sand)}
body .jx-next-row{display:grid !important;grid-template-columns:repeat(3, minmax(0, 1fr));gap:18px !important}
body .jx-trip{position:relative;display:block !important;border-radius:14px;overflow:hidden;aspect-ratio:4 / 3}
body .jx-trip img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
body .jx-trip:hover img{transform:scale(1.06)}
body .jx-trip::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(var(--ink-rgb),0) 40%, rgba(var(--ink-rgb),.85))}
body .jx-trip span{position:absolute;left:20px;right:20px;bottom:18px;z-index:1;display:grid;gap:4px}
body .jx-trip small{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--sand)}
body .jx-trip b{font-family:var(--font-display);font-weight:400;font-size:24px;color:var(--white)}
@media (max-width: 1100px){
body .jx-rail-links{display:none}
body .jx-days-grid{grid-template-columns:minmax(0, 4fr) minmax(0, 5fr);gap:36px !important}
body .jx-extras-row{grid-template-columns:1fr 1fr}
body .jx-facts4{grid-template-columns:1fr 1fr}
}@media (max-width: 800px){
body .jx-days-grid{grid-template-columns:1fr}
body .jx-mapcard{position:sticky;top:64px;z-index:5;margin:0 calc(var(--gutter) * -1)}
body .jx-mapcard-in{display:grid !important;grid-template-columns:120px minmax(0, 1fr);gap:4px 14px !important;align-items:center !important;padding:10px var(--gutter);border-radius:0}
body .jx-map{grid-row:span 2}
body .jx-map-now{margin:0}
body .jx-map-now b{font-size:16px;line-height:1.2}
body .jx-map-meta{grid-template-columns:1fr;gap:0;margin:0;padding:0;border:0}
body .jx-map-meta li:last-child{display:none}
body .jx-map-meta small{display:none}
body .jx-map-meta b{font-size:12.5px;color:rgba(var(--cream-rgb),.7)}
body .jx-pins text{display:none}
body .jx-rail{top:0}
body .jx-rail-days span{display:none}
body .jx-ch-num{font-size:96px;top:-14px}
}@media (max-width: 600px){
body .jx-days,body .jx-when,body .jx-price,body .jx-extras,body .jx-before,body .jx-next{padding:70px 0}
body .jx-notes{grid-template-columns:1fr}
body .jx-notes div + div{padding-left:0;border-left:0;border-top:1px solid rgba(var(--ink-rgb),.12);padding-top:10px;margin-top:10px}
body .jx-extras-row,body .jx-facts4,body .jx-next-row{grid-template-columns:1fr}
body .jx-extras-head{flex-direction:column !important;align-items:flex-start !important;gap:0 !important}
body .jx-ticket{grid-template-columns:minmax(0, 1fr)}
body .jx-ticket-main{padding:34px 24px}
body .jx-ticket-stub{flex-direction:row !important;gap:10px !important;border-left:0;border-top:2px dashed rgba(var(--ink-rgb),.25)}
body .jx-ticket-stub b{font-size:40px}
body .jx-ticket-stub span{margin:0 8px}
body .jx-ticket-stub::before,body .jx-ticket-stub::after{display:none !important}
}@media (prefers-reduced-motion: reduce){
body .jx-jeep{transition:none}
}@media print{
body .jx-rail,body .jx-when,body .jx-extras,body .jx-next .jx-next-row,body .jx-mapcard{display:none !important}
body .jx-days-grid{display:block !important}
body .jx-ch{break-inside:avoid;padding-bottom:30px}
body .jx-panel[hidden]{display:block !important}
}body .itn-solo .guide-inner{padding-top:70px;padding-bottom:30px}
body .itn-solo .gsec{border-bottom:0}
@media (max-width: 600px){
body .jx-notes dt,body .jx-facts4 small,body .jx-ch-kind,body .jx-season-strip span,body .jx-season-tag,body .jx-season-trip small,body .jx-yearbar li,body .jx-x-body small,body .jx-trip small,body .jx-price-from small,body .jx-soon,body .jx-ptable small,body .jx-ticket-stub small,body .jx-map-now span,body .jx-pnote b,body .jx-rates-cta small,body .jx-rail-days span{font-size:12px !important}
}@keyframes jx-fade{from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; }}
/* ================================= GLUE ================================== */
/* --- Heading widget: the class sits on the wrapper, the heading tag is printed inside it ---
   Let the inner heading take everything from the wrapper; rules written as descendants of a
   parent (.gsec-head h2, .jx-ch-head h3) still style it directly. */
body :where(.jx-root) .elementor-heading-title{
  font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;line-height:inherit;margin:0;padding:0;
}

/* --- Image widget: Elementor makes the <img> inline-block; the design's images are blocks --- */
body :where(.jx-root) .elementor-widget-image img{display:block;vertical-align:baseline}

/* --- Button widget -> the page's .btn look ---
   The widget's classes land on the wrapper; the clickable <a class="elementor-button"> gets the
   design (rewritten rules above). Strip Elementor's own button chrome first. */
body :where(.jx-root) .elementor-widget-button .elementor-button{
  /* Elementor's own grey button off: the .btn rules above supply the look */
  width:auto;background:none;border:1px solid transparent;border-radius:0;box-shadow:none;padding:0;
  font:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;
  color:inherit;fill:currentColor;text-decoration:none;transition:none;white-space:normal;
}
body :where(.jx-root) .elementor-button-wrapper{display:contents}
body :where(.jx-root) .elementor-button .elementor-button-content-wrapper{display:contents}
/* Elementor puts two <span>s inside every button; a page rule written for spans (.jx-ticket-stub span)
   must not restyle them - they take everything from the button itself */
body :where(.jx-root) .elementor-button .elementor-button-text,
body :where(.jx-root) .elementor-button .elementor-button-content-wrapper{flex-grow:0;margin:0;padding:0;border:0;
  font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;background:none;opacity:1}
/* full-width buttons in the rates bar and the seat card */
@media (max-width: 767px){ body .jx-rates-cta .elementor-widget-button .elementor-button{justify-content:center;width:100%} }
/* "Print itinerary" is a text link, not a pill */
body .elementor-widget-button.jx-link .elementor-button{padding:0;border:0;border-radius:0;background:none;
  font-size:13px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* --- rates: Elementor Tabs -> the tier cards + the price table ---
   Tab 1 is Mid-range, so the page opens on the priced tier. */
body .jx-ptabs-w .elementor-tabs-wrapper{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px;overflow:visible}
body .jx-ptabs-w .elementor-tab-desktop-title{
  display:block;padding:14px 20px;border:1px solid rgba(var(--ink-rgb),.18) !important;border-radius:12px;
  background:var(--paper);font-family:var(--font-display);font-weight:400;font-size:21px;line-height:1.2;color:var(--ink);
  transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease);
}
body .jx-ptabs-w .elementor-tab-desktop-title:hover{border-color:rgba(var(--ink-rgb),.4) !important}
body .jx-ptabs-w .elementor-tab-desktop-title.elementor-active{background:var(--ink);border-color:var(--ink) !important;color:var(--cream)}
body .jx-ptabs-w .elementor-tab-desktop-title.elementor-active::before{display:none}
/* Elementor draws the active tab's underline with ::after; here ::after is the badge, so undo its line styles */
body .jx-ptabs-w .elementor-tab-desktop-title.elementor-active::after{content:"rates pending" !important;display:inline-block;position:static !important;
  inset:auto !important;width:auto !important;height:auto !important;border:1px dashed currentColor !important;opacity:.75}
/* the dashed "rates pending" badge on every tier until its rates are typed in */
body .jx-ptabs-w .elementor-tab-title::after{content:"rates pending";display:inline-block;margin-left:12px;padding:3px 7px;
  border:1px dashed currentColor;border-radius:4px;font-family:var(--font-body);font-size:10.5px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;vertical-align:middle;opacity:.6;position:static;width:auto;height:auto}
body .jx-ptabs-w.jx-rates-set .elementor-tab-title::after{content:none !important}
body .jx-ptabs-w .elementor-tab-title.jx-tier-live::after{content:none !important}
body .jx-ptabs-w .elementor-tab-content{padding:0;border:0 !important}
body .jx-ptabs-w .elementor-tabs-content-wrapper{border:0 !important}
body .jx-ptab-sub{margin:-12px 0 14px;font-size:13px;color:var(--ink-soft)}
body .jx-ptabs-w .elementor-tab-mobile-title{margin-bottom:8px;padding:12px 16px;border:1px solid rgba(var(--ink-rgb),.18) !important;
  border-radius:10px;background:var(--paper);font-family:var(--font-display);font-size:19px;line-height:1.2;color:var(--ink)}
body .jx-ptabs-w .elementor-tab-mobile-title.elementor-active{background:var(--ink);color:var(--cream)}

/* --- "Before you go": Elementor Tabs -> the underlined tab row --- */
body .jx-tabs-w .elementor-tabs-wrapper{display:flex;gap:6px;margin:10px 0 28px;border-bottom:1px solid rgba(var(--ink-rgb),.15);overflow-x:auto;scrollbar-width:none}
body .jx-tabs-w .elementor-tab-desktop-title{
  flex:none;display:block;padding:14px 18px;border:0 !important;border-bottom:3px solid transparent !important;
  background:none;font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1.2;color:var(--ink-soft);
}
body .jx-tabs-w .elementor-tab-desktop-title.elementor-active{border-bottom-color:var(--terracotta) !important;color:var(--ink)}
body .jx-tabs-w .elementor-tab-desktop-title.elementor-active::before,
body .jx-tabs-w .elementor-tab-desktop-title.elementor-active::after{display:none}
body .jx-tabs-w .elementor-tab-content,body .jx-tabs-w .elementor-tabs-content-wrapper{padding:0;border:0 !important}
body .jx-tabs-w .elementor-tab-mobile-title{padding:14px 0;border:0 !important;border-bottom:1px solid rgba(var(--ink-rgb),.15) !important;
  font-family:var(--font-display);font-size:20px;color:var(--ink)}
body .jx-tabs-w .elementor-tab-mobile-title.elementor-active{color:var(--terracotta)}
@media (max-width: 767px){ body .jx-tabs-w .elementor-tab-content{padding:16px 0 20px} }

/* --- Questions: Elementor Accordion -> the page's .faq look --- */
body .jx-faq-h{margin:46px 0 6px !important;font-family:var(--font-display);font-size:26px;font-weight:400;color:var(--ink)}
body .jx-faq-w .elementor-accordion{max-width:820px}
body .jx-faq-w .elementor-accordion-item{border:0 !important;border-bottom:1px solid rgba(var(--ink-rgb),.12) !important}
body .jx-faq-w .elementor-tab-title{position:relative;padding:16px 40px 16px 0;font-family:var(--font-display);font-size:20px;font-weight:400;line-height:1.3;color:var(--ink)}
body .jx-faq-w .elementor-accordion-title{color:inherit;font:inherit;text-decoration:none}
body .jx-faq-w .elementor-accordion-icon{display:none !important}
body .jx-faq-w .elementor-tab-title::after{content:"+";position:absolute;right:4px;top:12px;font-size:26px;color:var(--terracotta);transition:transform .3s var(--ease)}
body .jx-faq-w .elementor-tab-title.elementor-active::after{transform:rotate(45deg)}
body .jx-faq-w .elementor-tab-content{padding:0 0 18px;border:0 !important;font-size:15px;line-height:1.6;color:var(--ink-soft)}
body .jx-faq-w .elementor-tab-content p{margin:0;max-width:680px}

/* --- states the page script sets --- */
body .jx-extras-picked:not(.is-on){display:none}
body .jx-x{cursor:pointer}
/* the journey rail's orange progress line: width set by the script */
body .jx-rail-days::after{content:"";position:absolute;left:14px;top:28px;height:2px;width:var(--jx-fill,0px);
  background:var(--terracotta);transition:width .3s var(--ease);pointer-events:none}
/* the rates table: a column is picked by clicking any of its cells */
body .jx-ptable td{cursor:pointer}

/* --- editor only: open every season panel's text so it can be edited --- */
body.elementor-editor-active .jx-season-body{opacity:1;transform:none;pointer-events:auto}/* End custom CSS */