:root{--color-bg:var(--forest);--color-bg-mid:var(--forest-mid);--color-surface:var(--cream);--color-primary:var(--green-glow);--color-primary-deep:var(--green-deep);--color-primary-mid:var(--green-mid);--color-accent:var(--amber);--color-text-on-dark:var(--white);--color-text-on-light:var(--text-dark);--color-text-muted-dark-bg:var(--stone);--color-text-muted-light-bg:var(--text-muted);--color-border-on-dark:#ffffff26;--color-border-on-light:#2d5a2726;--text-xs:.65rem;--text-sm:.82rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.6rem;--text-xl:clamp(1.8rem, 4vw, 2.8rem);--text-2xl:clamp(2.2rem, 4.5vw, 3.8rem);--text-3xl:clamp(2.8rem, 7vw, 6rem);--text-4xl:clamp(3.5rem, 10vw, 9rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--space-10:4rem;--space-12:6rem;--space-16:8rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:100px;--radius-circle:50%;--shadow-sm:0 8px 32px #0003;--shadow-md:0 8px 32px #0000004d;--shadow-lg:0 30px 60px #00000040;--shadow-glow:0 0 0 2px #4ade80, 0 30px 60px #00000040;--duration-fast:.2s;--duration-base:.3s;--duration-slow:.4s;--duration-slower:.5s;--duration-page:.38s;--nav-height:76px;--content-max-width:1440px;--z-base:1;--z-grain:3;--z-content:4;--z-mobile-bar:90;--z-nav:100;--z-menu-overlay:999;--z-sweep:9998;--v3-bg:#fafaf7;--v3-forest:#0f2e22;--v3-primary:#22c55e;--v3-gold:#f6c453;--v3-text-muted:#0f2e229e;--v3-border:#0f2e221a;--forest:#0a1a0f;--forest-mid:#0f2410;--green-deep:#2d5a27;--green-mid:#4a7c3f;--green-light:#6aab5e;--green-glow:#4ade80;--white:#fff;--off-white:#ede0cc;--cream:#f0e6d3;--stone:#8a9a85;--amber:#e8975a;--text-dark:#0a1a0f;--text-muted:#5a6a55;--font-head:"Playfair Display", Georgia, serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"Space Mono", monospace;--green:#2d5a27;--green-light-legacy:#4ade80;--glacier:#f0e6d3}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a1a0f;min-height:100vh;font-weight:400;overflow-x:hidden}::selection{background:var(--green-glow);color:var(--forest)}@media (hover:hover) and (pointer:fine){body,button,a{cursor:none}}#root{text-align:left;background:#0a1a0f;border:none;width:100%;max-width:100%;min-height:100svh;margin:0;display:block}h1,h2,h3{font-family:var(--font-head);font-weight:700;line-height:1.05}p,span,li,label,input,select,button,textarea{font-family:var(--font-body)}h1 span,h2 span,h3 span{font-family:inherit}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#4ade804d;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#4ade8099}.marquee-track{overflow:hidden}.marquee-row{white-space:nowrap;will-change:transform;display:flex}@keyframes marquee-fwd{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-rev{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes grain-shift{0%{transform:translate(0)}10%{transform:translate(-2%,-3%)}20%{transform:translate(-4%,1%)}30%{transform:translate(3%,-2%)}40%{transform:translate(-1%,4%)}50%{transform:translate(-3%,-1%)}60%{transform:translate(4%,2%)}70%{transform:translate(-2%,3%)}80%{transform:translate(3%,-4%)}90%{transform:translate(-1%,-1%)}to{transform:translate(0)}}.trips-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=1024px){.trips-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=767px){.trips-grid{grid-template-columns:1fr}}.trip-card{transition:transform var(--duration-base), box-shadow var(--duration-base), border-color var(--duration-base)}.trip-card:hover{box-shadow:var(--shadow-lg);border-color:#4ade8059;transform:translateY(-6px)}.trip-card-image-wrap{overflow:hidden}.trip-card-image{transition:transform .5s}.trip-card:hover .trip-card-image{transform:scale(1.08)}.trip-info-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;gap:3rem;display:grid}.testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;display:grid}.leaflet-container{font-family:var(--font-body);z-index:var(--z-base)}.leaflet-control-attribution{opacity:.5;font-size:9px}.map-tiles-dark{filter:invert()hue-rotate(180deg)brightness(.85)contrast(.9)saturate(.3)}@keyframes pulse-ring{0%{box-shadow:0 0 #4ade8099}to{box-shadow:0 0 0 10px #0000}}.marker-active{animation:1s ease-out infinite pulse-ring}@media (width<=767px){.itinerary-layout{flex-direction:column!important}.itinerary-layout>div:first-child{border-bottom:1px solid #4ade801a;flex-direction:row;overflow:auto hidden;border-right:none!important;width:100%!important;max-height:160px!important}.itinerary-layout>div:first-child>div{flex-direction:row;padding:0 .5rem;display:flex}.itinerary-layout>div:last-child{flex:none!important;height:380px!important}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(10px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.gallery-masonry{columns:3;column-gap:1rem}@media (width<=900px){.gallery-masonry{columns:2}}@media (width<=600px){.gallery-masonry{columns:1}}.gallery-card:hover .gallery-overlay{opacity:1!important}.nav-logo{object-fit:contain!important;border-radius:50%!important;flex-shrink:0!important;width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;min-height:64px!important;max-height:64px!important;display:block!important}.hero-logo{object-fit:contain!important;width:84px!important;min-width:84px!important;height:84px!important;min-height:84px!important;display:block!important}@media (height<=520px){.hero-logo{width:56px!important;min-width:56px!important;height:56px!important;min-height:56px!important}}.nav-link{display:inline-block;position:relative}.nav-link:after{content:"";background:var(--green-glow);width:0;height:1px;transition:width .3s;position:absolute;bottom:-2px;left:0}.nav-link:hover:after{width:100%}.nav-link:hover{color:var(--green-glow)!important}.story-beat{border-bottom:1px solid #2d5a271a;grid-template-columns:5rem 1fr auto;align-items:center;gap:1.5rem;padding:2rem 0;transition:background .2s;display:grid}.story-beat:hover{background:#2d5a2708}@media (width<=767px){.testimonials-grid{grid-template-columns:1fr}}@keyframes media-hero-kenburns{0%{transform:scale(1)translate(0,0)}to{transform:scale(1.12)translate(-1.5%,-1.5%)}}.media-hero-kenburns{will-change:transform;animation:20s ease-in-out infinite alternate media-hero-kenburns}@media (prefers-reduced-motion:reduce){.media-hero-kenburns{animation:none}}.journey-carousel-region{position:relative}.journey-carousel-track{--journey-card-w:clamp(280px, 38vw, 460px);--journey-gutter:clamp(1.5rem, 6vw, 6rem);scrollbar-width:none;-ms-overflow-style:none}.journey-carousel-track::-webkit-scrollbar{display:none}.journey-card{transform:scale(var(--emphasis-scale,1));box-shadow:var(--emphasis-shadow,0 2px 24px #0f2e2214);opacity:var(--emphasis-opacity,1);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1),opacity .35s}.journey-card:hover{transform:scale(var(--emphasis-scale,1)) translateY(-6px);box-shadow:0 24px 56px #0f2e2229}.journey-card:hover .journey-card-image{transform:scale(1.03)}.journey-card:focus-visible{outline:2px solid var(--v3-primary);outline-offset:3px}.journey-carousel-region:focus-visible{outline:2px solid var(--v3-primary);outline-offset:4px}@media (prefers-reduced-motion:reduce){.journey-card{transition:box-shadow .35s}}.journey-card-hit{z-index:1;border-radius:inherit;cursor:none;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}.journey-card-hit:focus-visible{outline:2px solid var(--v3-primary);outline-offset:-3px}.card-photo-controls{z-index:2;pointer-events:none;position:absolute;inset:0}.card-photo-arrow{pointer-events:auto;touch-action:none;border-radius:var(--radius-circle);color:#fff;-webkit-backdrop-filter:blur(6px);cursor:none;opacity:.92;background:#0f2e2280;border:1px solid #fff9;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s,opacity .2s,transform .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #0000002e}.card-photo-prev{left:.75rem}.card-photo-next{right:.75rem}.card-photo-arrow:hover,.card-photo-arrow:focus-visible{opacity:1;background:#0f2e22b8;transform:translateY(-50%)scale(1.06)}.card-photo-arrow:focus-visible{outline-offset:2px;outline:2px solid #fff}.card-photo-count{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=767px){.card-photo-arrow{width:40px;height:40px}.card-photo-prev{left:.6rem}.card-photo-next{right:.6rem}}@media (prefers-reduced-motion:reduce){.card-photo-arrow{transition:none}}.variant-option{transition:background .2s,color .2s,border-color .2s}.variant-option[aria-checked=false]:hover{border-color:#fff9}.variant-option:focus-visible{outline:2px solid var(--amber);outline-offset:3px}@media (prefers-reduced-motion:reduce){.variant-option{transition:none}}.journey-arrow-btn{z-index:2;border-radius:var(--radius-circle);-webkit-backdrop-filter:blur(12px);cursor:none;width:52px;height:52px;color:var(--v3-forest);background:#ffffff8c;border:1px solid #0f2e2214;justify-content:center;align-items:center;transition:transform .25s,background .25s,box-shadow .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 28px #0f2e2224}.journey-arrow-btn:hover{background:#ffffffd9;transform:translateY(-50%)scale(1.08);box-shadow:0 12px 32px #0f2e2233}.journey-arrow-btn:focus-visible{outline:2px solid var(--v3-primary);outline-offset:3px}.journey-arrow-prev{left:clamp(.25rem,2vw,1.5rem)}.journey-arrow-next{right:clamp(.25rem,2vw,1.5rem)}@media (width<=767px){.journey-arrow-btn{display:none}}.departure-card:focus-visible,.sharing-tile:focus-visible,.booking-cta-btn:focus-visible{outline:2px solid var(--green-glow);outline-offset:3px}.trip-booking-grid{gap:var(--space-8);grid-template-columns:1.6fr 1fr;align-items:start;display:grid}.trip-booking-sticky{position:sticky;top:100px}@media (width<=900px){.trip-booking-grid{grid-template-columns:1fr}.trip-booking-sticky{display:none}}.trip-mobile-booking-bar{display:none}@media (width<=900px){.trip-mobile-booking-bar{z-index:var(--z-mobile-bar);background:#0a1a0f;border-top:1px solid #4ade8026;display:block;position:fixed;bottom:0;left:0;right:0}}.trip-mobile-bar-spacer{display:none}@media (width<=900px){.trip-mobile-bar-spacer{height:calc(170px + env(safe-area-inset-bottom,0px));background:var(--v3-forest);display:block}}@media (width<=768px){.trips-scroll-mobile{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:1rem;padding-bottom:1rem;display:flex;overflow-x:auto}.trips-scroll-mobile::-webkit-scrollbar{height:3px}.trips-scroll-mobile>*{scroll-snap-align:start;flex:0 0 280px}}:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--green-glow);outline-offset:3px}.booking-modal :where(button,input,textarea):focus-visible{outline-color:var(--green-deep)}.booking-modal{padding:3rem}@media (width<=480px){.booking-modal{padding:1.75rem 1.25rem;border-radius:18px!important}}#trip-booking-options{scroll-margin-top:calc(var(--nav-height) + 1.5rem)}
