
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */



/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
/*# sourceURL=/wp-includes/css/classic-themes.min.css */



:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
/*# sourceURL=global-styles-inline-css */



.rll-youtube-player{position:relative;padding-bottom:56.23%;height:0;overflow:hidden;max-width:100%;}.rll-youtube-player:focus-within{outline: 2px solid currentColor;outline-offset: 5px;}.rll-youtube-player iframe{position:absolute;top:0;left:0;width:100%;height:100%;z-index:100;background:0 0}.rll-youtube-player img{bottom:0;display:block;left:0;margin:auto;max-width:100%;width:100%;position:absolute;right:0;top:0;border:none;height:auto;-webkit-transition:.4s all;-moz-transition:.4s all;transition:.4s all}.rll-youtube-player img:hover{-webkit-filter:brightness(75%)}.rll-youtube-player .play{height:100%;width:100%;left:0;top:0;position:absolute;background:url(https://ura6jg86lt2bdsmy.public.blob.vercel-storage.com/plugins/wp-rocket/assets/img/youtube.png) no-repeat center;background-color: transparent !important;cursor:pointer;border:none;}.wp-embed-responsive .wp-has-aspect-ratio .rll-youtube-player{position:absolute;padding-bottom:0;width:100%;height:100%;top:0;bottom:0;left:0;right:0}
/*# sourceURL=rocket-lazyload-inline-css */



.eas-couple-page blockquote.eas-pillar-quote,.eas-honeymoon-page blockquote.eas-pillar-quote,.eas-family-page blockquote.eas-pillar-quote,.eas-solo-page blockquote.eas-pillar-quote,.eas-milestone-page blockquote.eas-pillar-quote,.eas-wellness-page blockquote.eas-pillar-quote,
.eas-couple-page .eas-pull-quote blockquote.eas-pillar-quote,.eas-honeymoon-page .eas-pull-quote blockquote.eas-pillar-quote,.eas-family-page .eas-pull-quote blockquote.eas-pillar-quote,.eas-solo-page .eas-pull-quote blockquote.eas-pillar-quote,.eas-milestone-page .eas-pull-quote blockquote.eas-pillar-quote,.eas-wellness-page .eas-pull-quote blockquote.eas-pillar-quote,
.eas-couple-page .eas-pull-quote blockquote,.eas-honeymoon-page .eas-pull-quote blockquote,.eas-family-page .eas-pull-quote blockquote,.eas-solo-page .eas-pull-quote blockquote,.eas-milestone-page .eas-pull-quote blockquote,.eas-wellness-page .eas-pull-quote blockquote{
  background:transparent!important;background-color:transparent!important;
  border:none!important;border-left:none!important;border-right:none!important;border-bottom:none!important;
  box-shadow:none!important;quotes:none!important;padding:0!important;margin:0!important;
  font-family:'Cormorant Garamond',serif!important;font-style:normal!important;
  color:#1A0F06!important;
}
.eas-couple-page blockquote.eas-pillar-quote::before,.eas-honeymoon-page blockquote.eas-pillar-quote::before,.eas-family-page blockquote.eas-pillar-quote::before,.eas-solo-page blockquote.eas-pillar-quote::before,.eas-milestone-page blockquote.eas-pillar-quote::before,.eas-wellness-page blockquote.eas-pillar-quote::before,
.eas-couple-page blockquote.eas-pillar-quote::after,.eas-honeymoon-page blockquote.eas-pillar-quote::after,.eas-family-page blockquote.eas-pillar-quote::after,.eas-solo-page blockquote.eas-pillar-quote::after,.eas-milestone-page blockquote.eas-pillar-quote::after,.eas-wellness-page blockquote.eas-pillar-quote::after,
.eas-couple-page .eas-pull-quote blockquote::before,.eas-honeymoon-page .eas-pull-quote blockquote::before,.eas-family-page .eas-pull-quote blockquote::before,.eas-solo-page .eas-pull-quote blockquote::before,.eas-milestone-page .eas-pull-quote blockquote::before,.eas-wellness-page .eas-pull-quote blockquote::before,
.eas-couple-page .eas-pull-quote blockquote::after,.eas-honeymoon-page .eas-pull-quote blockquote::after,.eas-family-page .eas-pull-quote blockquote::after,.eas-solo-page .eas-pull-quote blockquote::after,.eas-milestone-page .eas-pull-quote blockquote::after,.eas-wellness-page .eas-pull-quote blockquote::after,
.eas-couple-page .entry-content blockquote::before,.eas-honeymoon-page .entry-content blockquote::before,.eas-family-page .entry-content blockquote::before,.eas-solo-page .entry-content blockquote::before,.eas-milestone-page .entry-content blockquote::before,.eas-wellness-page .entry-content blockquote::before,
.eas-couple-page .entry-content blockquote::after,.eas-honeymoon-page .entry-content blockquote::after,.eas-family-page .entry-content blockquote::after,.eas-solo-page .entry-content blockquote::after,.eas-milestone-page .entry-content blockquote::after,.eas-wellness-page .entry-content blockquote::after{
  content:none!important;display:none!important;visibility:hidden!important;
  width:0!important;height:0!important;opacity:0!important;color:transparent!important;
  background:none!important;border:none!important;font-size:0!important;
}
.eas-couple-page .rb-quote-icon,.eas-honeymoon-page .rb-quote-icon,.eas-family-page .rb-quote-icon,.eas-solo-page .rb-quote-icon,.eas-milestone-page .rb-quote-icon,.eas-wellness-page .rb-quote-icon,
.eas-couple-page .rb-pullquote-icon,.eas-honeymoon-page .rb-pullquote-icon,.eas-family-page .rb-pullquote-icon,.eas-solo-page .rb-pullquote-icon,.eas-milestone-page .rb-pullquote-icon,.eas-wellness-page .rb-pullquote-icon,
.eas-couple-page .foxiz-pullquote,.eas-honeymoon-page .foxiz-pullquote,.eas-family-page .foxiz-pullquote,.eas-solo-page .foxiz-pullquote,.eas-milestone-page .foxiz-pullquote,.eas-wellness-page .foxiz-pullquote{display:none!important;}



/* FIX 1 — zero out any WordPress/Foxiz body offset on EAS templates */
body.page-template-eas-destination-single,body.page-template-eas-itinerary-v3-final,body.page-template-eas-itinerary-archive,body.page-template-eas-family-legacy,body.page-template-page-wellness-safari-tanzania{
  margin-top:0!important;padding-top:0!important;
}
/* FIX 1 — site header floats over hero (position absolute, transparent bg) */
body.page-template-eas-destination-single .site-header,body.page-template-eas-destination-single #site-header,body.page-template-eas-destination-single .foxiz-header,body.page-template-eas-destination-single header.site-header,body.page-template-eas-destination-single .eas-header,body.page-template-eas-itinerary-v3-final .site-header,body.page-template-eas-itinerary-v3-final #site-header,body.page-template-eas-itinerary-v3-final .foxiz-header,body.page-template-eas-itinerary-v3-final header.site-header,body.page-template-eas-itinerary-v3-final .eas-header,body.page-template-eas-itinerary-archive .site-header,body.page-template-eas-itinerary-archive #site-header,body.page-template-eas-itinerary-archive .foxiz-header,body.page-template-eas-itinerary-archive header.site-header,body.page-template-eas-itinerary-archive .eas-header,body.page-template-eas-family-legacy .site-header,body.page-template-eas-family-legacy #site-header,body.page-template-eas-family-legacy .foxiz-header,body.page-template-eas-family-legacy header.site-header,body.page-template-eas-family-legacy .eas-header,body.page-template-page-wellness-safari-tanzania .site-header,body.page-template-page-wellness-safari-tanzania #site-header,body.page-template-page-wellness-safari-tanzania .foxiz-header,body.page-template-page-wellness-safari-tanzania header.site-header,body.page-template-page-wellness-safari-tanzania .eas-header{
  position:absolute!important;top:0;left:0;right:0;z-index:999;
  background:transparent!important;
}
/* FIX 4 — footer inherits forest green palette on EAS templates */
body.page-template-eas-destination-single footer,body.page-template-eas-destination-single .site-footer,body.page-template-eas-destination-single #site-footer,body.page-template-eas-itinerary-v3-final footer,body.page-template-eas-itinerary-v3-final .site-footer,body.page-template-eas-itinerary-v3-final #site-footer,body.page-template-eas-itinerary-archive footer,body.page-template-eas-itinerary-archive .site-footer,body.page-template-eas-itinerary-archive #site-footer,body.page-template-eas-family-legacy footer,body.page-template-eas-family-legacy .site-footer,body.page-template-eas-family-legacy #site-footer,body.page-template-page-wellness-safari-tanzania footer,body.page-template-page-wellness-safari-tanzania .site-footer,body.page-template-page-wellness-safari-tanzania #site-footer{
  background-color:#243022!important;color:#F2EBD9!important;
}
body.page-template-eas-destination-single footer a,body.page-template-eas-destination-single .site-footer a,body.page-template-eas-itinerary-v3-final footer a,body.page-template-eas-itinerary-v3-final .site-footer a,body.page-template-eas-itinerary-archive footer a,body.page-template-eas-itinerary-archive .site-footer a,body.page-template-eas-family-legacy footer a,body.page-template-eas-family-legacy .site-footer a,body.page-template-page-wellness-safari-tanzania footer a,body.page-template-page-wellness-safari-tanzania .site-footer a{
  color:#B8780A!important;
}



body:has(.eas-header) #rb-user-popup-form,
body:has(.eas-header) .rb-user-popup-form,
body:has(.eas-header) .popup-newsletter,
body.eas-home-page #rb-user-popup-form,
body.eas-accommodation-single #rb-user-popup-form,
body.eas-dest-archive-page #rb-user-popup-form,
body.eas-journals-archive-page #rb-user-popup-form {
  display: none !important;
}


.rll-youtube-player, [data-lazy-src]{display:none !important;}

[data-wpr-lazyrender] {content-visibility: auto;}


/* Shell contract (LAW 17) — scoped to .eas-dest-archive-page */
/* ══════════════════════════════════════════
   RESET & ROOT TOKENS
══════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
.eas-dest-archive-page { scroll-behavior: smooth; font-size: 18px; }

/* LAW 19 canonical token set (Honeymoon reference), scoped to the page
   wrapper — never :root, so this page can no longer leak color tokens onto
   the rest of the site (or be overridden by another page's :root block). */
.eas-dest-archive-page {
  --canvas:         #FAF7F0;
  --cream:          #FEFDFB;
  --forest:         #2C3424;
  --ink:            #1C1A14;
  --gold:           #B8780A;
  --gold-on-light:  #924F08;
  --amber-deep:     #924F08;
  --amber:          #C9963C;
  --tobacco:        #B59E7D;
  --char:           #3A2F22;
  --ink-muted:      #5C513F;
  --ink-faint:      rgba(88,71,56,0.12);
  --gold-dim:       rgba(184,120,10,0.5);
  --gold-pale:      rgba(184,120,10,0.12);
  --parchment:      #F2EBD9;
  --parchment-soft: #EDE5CE;

  /* Page-local aliases derived from the canonical tokens above — kept so this
     template's existing utility classes don't need a full selector rewrite.
     No colors outside the canonical set are introduced. */
  --ink-mid:        var(--ink-muted);
  --gold-trace:     rgba(184,120,10,0.15);
  --parchment-dim:  rgba(242,235,217,0.06);
  --forest-mid:     rgba(44,52,36,0.92);
  --cream-75:       rgba(254,253,251,0.75);
  --ease:           cubic-bezier(0.22,1,0.36,1);
}

.eas-dest-archive-page {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  /* LAW 19: page canvas = --canvas, never --parchment (that's for card/strip
     surfaces only) — fixed 2026-07-16, background-token audit. */
  background: var(--canvas);
  color: var(--ink);
  /* overflow-x:hidden removed 2026-07-16 (Part 3, sticky map) — it forces
     the browser to compute overflow-y as auto (CSS Overflow spec: a
     non-visible overflow-x with a visible overflow-y forces the other axis
     to auto), which creates a new scroll container and silently breaks
     position:sticky relative to the viewport. The hero component clips its
     own Ken Burns zoom internally (.eas-comp-hero-image has its own
     overflow:hidden), so nothing here actually depended on this rule. */
  padding-top: 0 !important;
}

/* Film grain — fixed overlay on all sections */
.eas-dest-archive-page::after {
  content: '';
  position: fixed;
  top: 0; left: 0; width: 100%; height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");
  opacity: 0.035;
  pointer-events: none;
  z-index: 9998;
}

/* Foxiz suppression */
.ekit-template-content-header,
.rb-header, #masthead, .site-header,
.foxiz-header, .boxed-header,
#rb-user-popup-form, .rb-user-popup-form, .popup-newsletter { display: none !important; }

/* ══════════════════════════════════════════
   TYPOGRAPHY BASE
══════════════════════════════════════════ */
.eas-dest-archive-page h1, .eas-dest-archive-page h2, .eas-dest-archive-page h3, .eas-dest-archive-page h4 {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 300;
  line-height: 1.1;
}
.d { font-family: 'Cormorant Garamond', Georgia, serif; }
.m { font-family: 'Jost', Helvetica, Arial, sans-serif; }
.lbl {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-dim);
  display: block;
}
.eas-dest-archive-page a { text-decoration: none; color: inherit; }

/* ══════════════════════════════════════════
   REVEAL ANIMATIONS
══════════════════════════════════════════ */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.85s var(--ease), transform 0.85s var(--ease);
}
.reveal.in { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: 0.12s; }
.reveal-delay-2 { transition-delay: 0.24s; }
.reveal-delay-3 { transition-delay: 0.36s; }
.reveal-delay-4 { transition-delay: 0.48s; }
.reveal-delay-5 { transition-delay: 0.60s; }

/* CSS hero load animations (not IntersectionObserver — fires on page load) */
@keyframes fu { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@keyframes fw { from { width:0; } to { width:48px; } }
@keyframes fb { 0%,100% { transform:scaleY(1); opacity:0.4; } 50% { transform:scaleY(1.4); opacity:0.8; } }

/* ══════════════════════════════════════════
   S1 — HERO
══════════════════════════════════════════ */
.eas-da-hero {
  background: var(--forest);
  min-height: 92vh;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 0 7vw 6rem;
  position: relative;
  overflow: hidden;
}

.eas-da-hero-bg {
  position: absolute;
  inset: 0;
  background-image: url('https://ura6jg86lt2bdsmy.public.blob.vercel-storage.com/uploads/2026/02/arusha-national-park.webp');
  background-size: cover;
  background-position: center 40%;
  opacity: 0.28;
  transform: scale(1.04);
  animation: hz 10s cubic-bezier(0.25,0.46,0.45,0.94) forwards;
  z-index: 0;
}
@keyframes hz { to { transform:scale(1); } }

.eas-da-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(36,48,34,0.15) 0%,
    rgba(36,48,34,0) 30%,
    rgba(36,48,34,0.65) 70%,
    rgba(36,48,34,0.88) 100%
  );
  z-index: 1;
}

.eas-da-hero-content {
  position: relative;
  z-index: 2;
  max-width: 780px;
}

.eas-da-hero-kicker {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-dim);
  display: block;
  margin-bottom: 1.4rem;
  opacity: 0;
  animation: fu 0.9s var(--ease) 0.2s forwards;
}

.eas-da-hero-h1 {
  font-size: clamp(2.6rem, 5.5vw, 5rem);
  font-weight: 300;
  color: var(--parchment);
  line-height: 1.05;
  opacity: 0;
  animation: fu 1s var(--ease) 0.5s forwards;
}
.eas-da-hero-h1 em {
  font-style: normal;
  color: var(--gold);
}

.eas-da-hero-rule {
  display: block;
  width: 0;
  height: 1px;
  background: var(--gold);
  margin: 1.8rem 0;
  animation: fw 0.7s var(--ease) 0.9s forwards;
}

.eas-da-hero-body {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 1.05rem;
  font-style: normal;
  color: var(--cream-75);
  line-height: 1.78;
  max-width: 520px;
  opacity: 0;
  animation: fu 1s var(--ease) 1.1s forwards;
}

.eas-da-hero-countries {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(242,235,217,0.4);
  display: block;
  margin-top: 1.8rem;
  opacity: 0;
  animation: fu 0.9s var(--ease) 1.3s forwards;
}

.eas-da-hero-scroll {
  position: absolute;
  bottom: 2.8rem;
  right: 7vw;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  opacity: 0;
  animation: fu 0.8s var(--ease) 1.8s forwards;
}
.eas-da-hero-scroll-line {
  width: 1px;
  height: 48px;
  background: var(--gold);
  opacity: 0.5;
  animation: fb 2.5s ease-in-out infinite;
}
.eas-da-hero-scroll-lbl {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(242,235,217,0.3);
  writing-mode: vertical-rl;
}

/* ══════════════════════════════════════════
   S2 — COUNTRY SELECTOR
══════════════════════════════════════════ */
.eas-da-countries {
  background: var(--canvas);
  padding: 5rem 7vw;
  border-bottom: 1px solid var(--gold-trace);
}
.eas-da-countries-label {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 2.5rem;
}
.eas-da-countries-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--gold-trace);
  max-width: 960px;
}
.eas-da-country {
  background: var(--parchment);
  padding: 2.2rem 2rem;
  position: relative;
}
.eas-da-country--active {
  border-bottom: 2px solid var(--gold);
}
/* Desaturated only — never opacity. A blanket opacity on the card compounds
   with its own text's already-compliant color alpha, dragging effective
   contrast under the 0.72 floor (measured: 0.72 text alpha × 0.42 card
   opacity ≈ 0.30 rendered). Fixed 2026-07-16, Part 1b. */
.eas-da-country--locked {
  filter: grayscale(0.6);
  background: var(--parchment-soft);
}
.eas-da-country-status {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 0.6rem;
}
.eas-da-country-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.5rem;
  font-weight: 300;
  color: var(--ink);
  display: block;
  margin-bottom: 0.4rem;
  line-height: 1.15;
}
.eas-da-country-note {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.89rem;
  font-style: normal;
  color: var(--ink-mid);
  line-height: 1.5;
}
.eas-da-country--active .eas-da-country-status { color: var(--gold); }
.eas-da-country--active .eas-da-country-name { color: var(--ink); }

/* ══════════════════════════════════════════
   S3 — MAP + CIRCUIT FILTER
══════════════════════════════════════════ */
.eas-da-map-section {
  background: var(--canvas);
  padding: 7rem 7vw;
}
.eas-da-map-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
  align-items: start;
  max-width: 1200px;
  margin: 0 auto;
}

/* SVG Map — real Tanzania geography (Part 2, 2026-07-16). Mainland outline,
   islands, and national-park texture are real traced shapes (see PHP docblock
   above); circuit "zones" are soft gradient highlights, not real boundaries.
   Sticky-media pattern reused verbatim from the Couple pillar's
   .eas-cp-split__media (page-couple-safari-tanzania.php) — same breakpoint,
   same top offset, same mobile fallback to normal static stacking. */
.eas-da-map-wrap {
  position: relative;
  width: 100%;
}
@media (min-width: 981px) {
  .eas-da-map-wrap {
    position: sticky;
    top: 140px;
    align-self: start;
  }
}
.eas-da-map-svg {
  width: 100%;
  max-width: 380px;
  height: auto;
  display: block;
  margin: 0 auto;
}
.eas-map-outline-real {
  fill: var(--parchment);
  stroke: var(--gold);
  stroke-width: 1.1;
  stroke-opacity: 0.85;
}
.eas-map-island {
  fill: var(--parchment);
  stroke: var(--gold);
  stroke-width: 1.1;
  stroke-opacity: 0.85;
}
.eas-map-parks path {
  fill: var(--char);
  fill-opacity: 0.16;
  stroke: var(--gold);
  stroke-width: 0.4;
  stroke-opacity: 0.4;
}
.eas-map-northern,
.eas-map-southern,
.eas-map-western,
.eas-map-coastal {
  cursor: pointer;
  transition: opacity 0.25s, filter 0.25s;
  stroke-width: 0.9;
  opacity: 0.85;
}
.eas-map-northern { stroke: var(--gold); }
.eas-map-southern { stroke: var(--gold); }
.eas-map-western  { stroke: var(--forest); }
.eas-map-coastal  { stroke: var(--gold); }

.eas-map-northern:hover,
.eas-map-southern:hover,
.eas-map-western:hover,
.eas-map-coastal:hover,
.eas-map-northern.eas-map-active,
.eas-map-southern.eas-map-active,
.eas-map-western.eas-map-active,
.eas-map-coastal.eas-map-active {
  stroke-width: 1.6;
  opacity: 1;
  filter: brightness(1.15);
}

.eas-map-lbl {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 15px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  fill: var(--char);
  pointer-events: none;
  opacity: 0.85;
  font-weight: 500;
}
.eas-map-lbl-coast { font-size: 15px; writing-mode: horizontal-tb; }

/* Map tooltip */
.eas-map-tooltip {
  position: fixed;
  background: var(--forest);
  border-left: 2px solid var(--gold);
  padding: 0.9rem 1.2rem;
  max-width: 240px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.15s;
  z-index: 9997;
}
.eas-map-tooltip.visible { opacity: 1; }
.eas-map-tooltip-name {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  display: block;
  margin-bottom: 0.4rem;
}
.eas-map-tooltip-text {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.89rem;
  font-style: normal;
  color: var(--cream-75);
  line-height: 1.55;
}

/* Circuit legend */
.eas-da-circuit-legend { }
.eas-da-circuit-legend-title {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 2.5rem;
}
.eas-da-circuit-entry {
  padding: 2rem 0;
  border-top: 1px solid var(--gold-trace);
  cursor: pointer;
  transition: padding-left 0.2s var(--ease);
}
.eas-da-circuit-entry:hover { padding-left: 0.5rem; }
.eas-da-circuit-entry.eas-circuit-active { border-top-color: var(--gold); }
.eas-da-circuit-num {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 0.6rem;
}
.eas-da-circuit-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.3rem;
  font-weight: 300;
  color: var(--ink);
  margin-bottom: 0.5rem;
  line-height: 1.15;
}
.eas-da-circuit-char {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.9rem;
  font-style: normal;
  color: var(--ink-mid);
  line-height: 1.65;
  margin-bottom: 0.8rem;
}
.eas-da-circuit-meta {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 1rem;
}
.eas-da-circuit-btn {
  display: inline-block;
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  border: 1px solid var(--gold-trace);
  padding: 0.5rem 1.1rem;
  transition: background 0.2s, color 0.2s;
}
.eas-da-circuit-btn:hover,
.eas-da-circuit-entry.eas-circuit-active .eas-da-circuit-btn {
  background: var(--gold);
  color: var(--parchment);
}

/* ══════════════════════════════════════════
   S4 — DESTINATION CARDS GRID
══════════════════════════════════════════ */
.eas-da-grid-section {
  background: var(--canvas);
  padding: 6rem 7vw;
}
.eas-da-grid-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 3.5rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.eas-da-grid-heading {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.6rem, 2.5vw, 2.4rem);
  font-weight: 300;
  color: var(--ink);
}
.eas-da-grid-filter-label {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}
.eas-da-reset-btn {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-mid);
  background: none;
  border: 1px solid var(--ink-faint);
  padding: 0.4rem 1rem;
  cursor: pointer;
  display: none;
  transition: border-color 0.2s, color 0.2s;
}
.eas-da-reset-btn:hover { color: var(--gold); border-color: var(--gold); }
.eas-da-reset-btn.visible { display: inline-block; }

.eas-da-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.2rem;
}

/* ─── Destination Card ─── */
.eas-dest-card {
  background: var(--parchment);
  border: 1px solid var(--gold-trace);
  overflow: hidden;
  transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease), border-color 0.3s;
  display: flex;
  flex-direction: column;
}
.eas-dest-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px var(--ink-faint);
  border-color: rgba(184,120,10,0.35);
}
.eas-dest-card.filtered-out {
  display: none;
}

.eas-dest-card-image {
  position: relative;
  height: 220px;
  overflow: hidden;
  background: var(--parchment-soft);
}
.eas-dest-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s var(--ease);
}
.eas-dest-card:hover .eas-dest-card-image img {
  transform: scale(1.04);
}
.eas-dest-card-image-fallback {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 4rem;
  font-weight: 300;
  color: var(--gold-dim);
  background: var(--parchment-soft);
}
.eas-dest-card-badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  background: var(--parchment);
  padding: 0.28rem 0.6rem;
  border: 1px solid var(--gold-trace);
}

.eas-dest-card-body {
  padding: 1.6rem 1.8rem 1.8rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.eas-dest-card-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.3rem;
  font-weight: 300;
  color: var(--ink);
  line-height: 1.2;
  margin-bottom: 0.6rem;
}
.eas-dest-card-rule {
  width: 32px;
  height: 1px;
  background: var(--gold);
  margin-bottom: 0.8rem;
  transition: width 0.3s var(--ease);
}
.eas-dest-card:hover .eas-dest-card-rule { width: 56px; }

.eas-dest-card-identity {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.89rem;
  font-style: normal;
  color: var(--ink-mid);
  line-height: 1.65;
  margin-bottom: 1rem;
  flex: 1;
}

.eas-dest-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
  margin-bottom: 1rem;
}
.eas-dest-card-tag {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(184,120,10,0.8);
  border: 1px solid rgba(184,120,10,0.3);
  padding: 0.18rem 0.5rem;
}

.eas-dest-card-meta {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
  margin-bottom: 1.2rem;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid var(--ink-faint);
}
.eas-dest-card-meta-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.eas-dest-meta-label {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  /* Phase 4 item 2 — was var(--ink-faint) (12% opacity), a token meant for
     hairline borders, not text. Confirmed via a real computed-style check
     against the real parchment card background: effectively invisible
     (rgba(88,71,56,0.12) over rgb(242,235,217)). Real data was always
     present (_eas_best_season set on all 10 posts) — this was purely a
     contrast bug, not missing content. Raised to --ink-muted, the same
     token this page's own card-related/empty-state text already uses for
     legible secondary copy. */
  color: var(--ink-muted);
  display: block;
}
.eas-dest-meta-value {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  color: var(--gold);
  display: block;
}

.eas-dest-card-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  padding-top: 0;
}
.eas-dest-card-cta-arrow {
  display: inline-block;
  transition: transform 0.2s var(--ease);
}
.eas-dest-card:hover .eas-dest-card-cta-arrow { transform: translateX(5px); }

/* ─── Signature card — first destination only (Part 4, 2026-07-16) ───
   Full-bleed dark photo treatment, gold frame, crown badge — the same
   visual language as the site's signature itinerary cards, rebuilt as
   page-scoped CSS rather than reusing .eas-comp-* (LAW 18b). Crown sits
   pinned to the top, title block pinned to the bottom, with a fixed
   min-height between them — the same safe layout as the healthy
   Accommodations-style cards, never the absolutely-positioned overlap
   pattern that caused the Offers/Departures badge bug. */
.eas-dest-card--signature {
  grid-column: 1 / -1;
  position: relative;
  min-height: 460px;
  border: 1px solid var(--gold);
  flex-direction: row;
}
.eas-dest-card--signature .eas-dest-card-image {
  position: absolute;
  inset: 0;
  height: 100%;
}
.eas-dest-card--signature .eas-dest-card-image::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(28,26,20,0.92) 0%, rgba(28,26,20,0.35) 45%, rgba(28,26,20,0.05) 70%);
}
.eas-dest-card--signature .eas-dest-card-badge {
  background: rgba(28,26,20,0.75);
  color: var(--amber);
  border-color: var(--gold);
}
.eas-dest-card--signature .eas-dest-card-body {
  position: relative;
  z-index: 2;
  margin-top: auto;
  max-width: 620px;
  padding: 2.5rem 2.75rem 2.75rem;
}
.eas-dest-card--signature .eas-dest-card-title {
  font-size: clamp(2rem, 3.4vw, 2.8rem);
  color: var(--cream);
}
.eas-dest-card--signature .eas-dest-card-identity {
  color: rgba(254,253,251,0.82);
  -webkit-line-clamp: 3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.eas-dest-card--signature .eas-dest-card-meta { border-bottom-color: rgba(254,253,251,0.18); }
.eas-dest-card--signature .eas-dest-meta-label { color: rgba(254,253,251,0.55); }
.eas-dest-card--signature .eas-dest-card-cta { color: var(--amber); }
.eas-dest-card-crown {
  position: absolute;
  top: 1.6rem;
  right: 1.8rem;
  z-index: 3;
  color: var(--amber);
  font-size: 1.1rem;
}
@media (max-width: 640px) {
  .eas-dest-card--signature { min-height: 380px; }
  .eas-dest-card--signature .eas-dest-card-body { padding: 2rem 1.5rem 2rem; max-width: 100%; }
}

/* ══════════════════════════════════════════
   S5 — PAN-AFRICAN EDITORIAL
══════════════════════════════════════════ */
.eas-da-expansion {
  /* Panel law: light panels only outside photography/final-CTA/footer
     contexts (LAW 19) — this section is editorial copy, not a photo, so it
     no longer carries a full-bleed dark forest background. Canvas, not
     parchment — parchment is a card/strip surface only. */
  background: var(--canvas);
  padding: 8rem 7vw;
  text-align: center;
  position: relative;
  overflow: hidden;
  border-top: 1px solid var(--gold-trace);
  border-bottom: 1px solid var(--gold-trace);
}
.eas-da-expansion::before {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  width: 600px; height: 600px;
  border-radius: 50%;
  border: 1px solid rgba(184,120,10,0.12);
  pointer-events: none;
}
.eas-da-expansion-inner {
  position: relative;
  z-index: 2;
  max-width: 680px;
  margin: 0 auto;
}
.eas-da-expansion-kicker {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 2rem;
}
.eas-da-expansion-quote {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.4rem, 2.8vw, 2.2rem);
  font-weight: 300;
  font-style: normal;
  color: var(--ink);
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
.eas-da-expansion-rule {
  display: block;
  width: 32px;
  height: 1px;
  background: var(--gold);
  margin: 0 auto 2rem;
  opacity: 0.6;
}
.eas-da-expansion-body {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.95rem;
  line-height: 1.82;
  color: var(--ink-muted);
  margin-bottom: 2rem;
}
.eas-da-expansion-horizon {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
}

/* ══════════════════════════════════════════
   S6 — SEASON INTELLIGENCE STRIP
══════════════════════════════════════════ */
/* Restyled 2026-07-16, Part 3 — same peak/good/off data, refined presentation
   only: Cormorant section header (matches every other section's eyebrow +
   heading pair), gold-accent bars with a peak marker instead of flat solid
   fills, and a framed panel instead of a bare border-top. */
.eas-da-seasons {
  background: var(--canvas);
  padding: 6rem 7vw;
}
.eas-da-seasons-inner {
  max-width: 1100px;
  margin: 0 auto;
}
.eas-da-seasons-title {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  display: block;
  margin-bottom: 1rem;
}
.eas-da-seasons-heading {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 300;
  font-size: clamp(1.6rem, 2.5vw, 2.2rem);
  color: var(--ink);
  margin-bottom: 3rem;
}
.eas-da-seasons-panel {
  background: var(--parchment);
  border: 1px solid var(--gold-trace);
  padding: 2.5rem 2rem 1rem;
}
.eas-da-seasons-grid {
  display: grid;
  grid-template-columns: 120px repeat(12, 1fr);
  gap: 0;
  border-top: 1px solid var(--gold-dim);
}
.eas-da-months-row {
  display: contents;
}
.eas-da-month-spacer { }
.eas-da-month-lbl {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ink-muted);
  text-align: center;
  padding: 0.6rem 0;
  border-bottom: 1px solid var(--ink-faint);
}
.eas-da-circuit-row {
  display: contents;
}
.eas-da-circuit-row-label {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-muted);
  display: flex;
  align-items: center;
  padding: 1rem 0;
  border-bottom: 1px solid var(--ink-faint);
}
.eas-da-season-cell {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  padding: 1rem 2px;
  border-bottom: 1px solid var(--ink-faint);
  position: relative;
}
.eas-da-season-dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--gold);
  opacity: 0;
}
.eas-da-season-cell.is-peak .eas-da-season-dot { opacity: 1; }
.eas-da-season-bar {
  width: 100%;
  height: 5px;
  border-radius: 3px;
  background: var(--ink-faint);
  transition: transform 0.2s;
}
.eas-da-season-bar.peak {
  background: linear-gradient(90deg, var(--gold-on-light), var(--gold));
  height: 6px;
}
.eas-da-season-bar.good { background: var(--gold-dim); }
.eas-da-season-cell:hover .eas-da-season-bar { transform: scaleY(1.3); }

/* ══════════════════════════════════════════
   S7 — CTA BLOCK
══════════════════════════════════════════ */
.eas-da-cta {
  background: var(--parchment);
  padding: 8rem 7vw;
  text-align: center;
  border-top: 1px solid var(--gold-trace);
}
.eas-da-cta-inner {
  max-width: 520px;
  margin: 0 auto;
}
.eas-da-cta-heading {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.6rem, 2.8vw, 2.2rem);
  font-weight: 300;
  font-style: normal;
  color: var(--ink);
  margin-bottom: 1.2rem;
  line-height: 1.3;
}
.eas-da-cta-body {
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 1rem;
  color: var(--ink-mid);
  line-height: 1.78;
  margin-bottom: 2.5rem;
}
.eas-da-cta-btn {
  display: inline-block;
  font-family: 'Jost', Helvetica, Arial, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  border: 1.5px solid var(--gold);
  padding: 1.2rem 3.2rem;
  transition: background 0.2s var(--ease), color 0.2s;
}
.eas-da-cta-btn:hover {
  background: var(--gold);
  color: var(--parchment);
}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media (max-width: 1100px) {
  .eas-da-grid { grid-template-columns: repeat(2, 1fr); }
}
/* Matches the sticky-media activation breakpoint above (981px) exactly —
   no dead zone where the grid is single-column but sticky is still armed. */
@media (max-width: 980px) {
  .eas-da-map-inner { grid-template-columns: 1fr; gap: 4rem; }
  .eas-da-map-svg { max-width: 300px; }
}
@media (max-width: 900px) {
  .eas-da-countries-grid { grid-template-columns: repeat(2, 1fr); }
  .eas-da-seasons-grid { grid-template-columns: 80px repeat(12, 1fr); overflow-x: auto; }
}
@media (max-width: 680px) {
  .eas-dest-archive-page { padding-top: 64px; }
  .eas-da-hero { padding: 0 5vw 5rem; min-height: 88vh; }
  .eas-da-hero-h1 { font-size: 2.2rem; }
  .eas-da-grid { grid-template-columns: 1fr; }
  .eas-da-countries-grid { grid-template-columns: 1fr 1fr; }
  .eas-da-map-section { padding: 5rem 5vw; }
  .eas-da-grid-section { padding: 4rem 5vw; }
  .eas-da-expansion { padding: 6rem 5vw; }
  .eas-da-cta { padding: 6rem 5vw; }
  .eas-da-seasons { display: none; } /* season strip not readable on very small screens */
}

/* ══════════════════════════════════════════
   TOUCH TARGETS — interactive elements >=44px
══════════════════════════════════════════ */
.eas-da-circuit-entry { min-height: 44px; }
.eas-da-circuit-btn { min-height: 44px; padding: 0.9rem 1.1rem; display: inline-flex; align-items: center; justify-content: center; }
.eas-da-reset-btn { min-height: 44px; padding: 0.7rem 1rem; }
.eas-da-cta-btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.eas-dest-card-cta { min-height: 44px; }
.eas-map-northern, .eas-map-southern, .eas-map-western, .eas-map-coastal { touch-action: manipulation; }

/* ══════════════════════════════════════════
   MOTION — respect prefers-reduced-motion
══════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  .eas-dest-archive-page *,
  .eas-dest-archive-page *::before,
  .eas-dest-archive-page *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .reveal { opacity: 1 !important; transform: none !important; }
}



      .st0 {
        fill: #c9963c;
      }

      .st1 {
        fill: #1a2e1a;
      }

      .st2 {
        fill: none;
        stroke: #1c2e1c;
        stroke-miterlimit: 10;
        stroke-width: .5px;
      }
    

