/* ==========================================================================
   Ednan.fyi Template Kit — design system
   Tokens locked in Phase 1 Direction. Olive is a line/border colour only:
   it is never used for text on cream (2.8:1, fails).
   ========================================================================== */

:root{
  --ed-leaf:#173D22;      /* Deep Leaf   — structural surface */
  --ed-ink:#4A2B1E;       /* Coffee Brown— default ink */
  --ed-cherry:#A91F32;    /* Coffee Cherry— one action per screen */
  --ed-green:#2E6B35;     /* Leaf Green  — pillar tags, eyebrows */
  --ed-cream:#F6F0DF;     /* Warm Cream  — reading ground */
  --ed-olive:#87985A;     /* Muted Olive — lines only */

  --ed-hair:rgba(74,43,30,.14);
  --ed-hair-strong:rgba(74,43,30,.20);
  --ed-hair-soft:rgba(74,43,30,.10);
  --ed-on-leaf-dim:rgba(246,240,223,.72);
  --ed-on-leaf-body:rgba(246,240,223,.84);
  --ed-hair-leaf:rgba(246,240,223,.20);

  --ed-r:2px;             /* everything */
  --ed-r-img:4px;         /* images only */

  --ed-fast:180ms;
  --ed-base:320ms;
  --ed-slow:480ms;
  --ed-ease:cubic-bezier(.2,.7,.25,1);
  --ed-stagger:70ms;
  --ed-rise:20px;

  --ed-max:1240px;
  --ed-gut:clamp(18px,4vw,48px);
}

/* --------------------------------------------------------------------------
   1. Base
   -------------------------------------------------------------------------- */
body.ednanfyi{background:var(--ed-cream);color:var(--ed-ink);-webkit-font-smoothing:antialiased;text-wrap:pretty}
.ednanfyi a{color:var(--ed-cherry);text-decoration:none}
.ednanfyi a:hover{color:var(--ed-leaf)}
.ednanfyi *:focus-visible{outline:3px solid var(--ed-cherry);outline-offset:3px}
.ednanfyi ::selection{background:var(--ed-cherry);color:var(--ed-cream)}
html{scroll-behavior:smooth}

/* No shadows anywhere — separation is a surface change or a 1px rule. */
.ednanfyi .elementor-widget-container,
.ednanfyi .e-con{box-shadow:none}

/* --------------------------------------------------------------------------
   2. Surfaces
   -------------------------------------------------------------------------- */
.ed-surface-leaf{background:var(--ed-leaf);color:var(--ed-cream)}
.ed-surface-leaf h1,.ed-surface-leaf h2,.ed-surface-leaf h3,
.ed-surface-leaf p,.ed-surface-leaf .elementor-heading-title{color:var(--ed-cream)}
.ed-surface-leaf a{color:var(--ed-cream)}
.ed-surface-leaf a:hover{color:var(--ed-olive)}

.ed-surface-cherry{background:var(--ed-cherry);color:var(--ed-cream)}
.ed-surface-cherry h1,.ed-surface-cherry h2,.ed-surface-cherry p,
.ed-surface-cherry .elementor-heading-title{color:var(--ed-cream)}

.ed-surface-tint{background:rgba(46,107,53,.07);
  border-top:1px solid var(--ed-hair);border-bottom:1px solid var(--ed-hair)}

/* --------------------------------------------------------------------------
   3. Eyebrow / labels
   -------------------------------------------------------------------------- */
.ed-eyebrow{display:flex;align-items:center;gap:10px;
  font-size:.6875rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.ed-eyebrow::before{content:"";width:22px;height:1px;background:var(--ed-olive);flex:0 0 auto}
.ed-surface-leaf .ed-eyebrow{color:var(--ed-on-leaf-dim)}

.ed-label{font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.ed-label--green{color:var(--ed-green)}
.ed-label--cherry{color:var(--ed-cherry)}

/* Section rule: heading + note over a 2px ink hairline */
.ed-sectionhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;
  padding-bottom:14px;border-bottom:2px solid var(--ed-ink)}
.ed-sectionhead h2{margin:0;font-size:clamp(1.25rem,2vw,1.5rem);font-weight:700;letter-spacing:-.015em}
.ed-sectionhead .ed-note{font-size:.875rem}

/* --------------------------------------------------------------------------
   4. Pillar chips
   -------------------------------------------------------------------------- */
.ed-chip{display:inline-block;font-size:.6875rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;padding:6px 10px;border-radius:var(--ed-r)}
.ed-chip--travel{background:var(--ed-leaf);color:var(--ed-cream)}
.ed-chip--updates{background:var(--ed-cherry);color:var(--ed-cream)}
.ed-chip--beyond{background:var(--ed-green);color:var(--ed-cream)}
.ed-chip--ghost{color:var(--ed-green);border:1px solid rgba(46,107,53,.4);padding:5px 9px}
.ed-chip--new{font-size:.625rem;letter-spacing:.12em;color:var(--ed-cherry);
  background:rgba(169,31,50,.1);padding:5px 8px}

/* Category colour is driven by the post's own category slug. */
.ed-cat-travel{--ed-accent:var(--ed-leaf)}
.ed-cat-travel-updates{--ed-accent:var(--ed-cherry)}
.ed-cat-beyond-travel{--ed-accent:var(--ed-green)}
.ednanfyi{--ed-accent:var(--ed-olive)}

/* --------------------------------------------------------------------------
   5. Cards — flat, hairline, coloured top edge. Tickets, not app tiles.
   -------------------------------------------------------------------------- */
.ed-card{display:flex;flex-direction:column;gap:10px;padding:22px 22px 20px;
  background:var(--ed-cream);border:1px solid rgba(74,43,30,.18);
  border-top:3px solid var(--ed-accent,var(--ed-olive));
  border-radius:var(--ed-r);color:var(--ed-ink);
  transition:background var(--ed-fast) var(--ed-ease),border-color var(--ed-fast) var(--ed-ease)}
.ed-card:hover{border-color:var(--ed-accent,var(--ed-olive));background:rgba(46,107,53,.05)}
.ed-card__kicker{font-size:.6875rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.ed-card__title{font-size:1.3125rem;font-weight:700;line-height:1.2;letter-spacing:-.02em}
.ed-card__body{font-size:.9375rem;line-height:1.6}
.ed-card__more{margin-top:auto;display:flex;align-items:center;gap:8px;
  font-size:.8125rem;font-weight:700;color:var(--ed-green)}
.ed-card__more::after{content:"→"}

/* The four doors */
.ed-doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(226px,1fr));
  gap:clamp(12px,1.6vw,20px)}

/* --------------------------------------------------------------------------
   6. Latest strip — hairline grid, no images, coloured top rule per pillar
   -------------------------------------------------------------------------- */
.ed-latest article.elementor-post > .elementor-post__text{display:contents}
.ed-latest .elementor-post__meta-data{order:1}
.ed-latest .elementor-post__title{order:2}
.ed-latest .elementor-post__excerpt{order:3}
.ed-latest .elementor-post__read-more{order:4}
.ed-latest .elementor-posts{display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:1px;background:var(--ed-hair);margin-top:1px}
.ed-latest article.elementor-post{display:flex;flex-direction:column;
  background:var(--ed-cream);padding:20px 22px 24px;
  border-top:2px solid var(--ed-accent,var(--ed-olive));margin:0;
  transition:background var(--ed-fast) var(--ed-ease)}
.ed-latest article.elementor-post:hover{background:rgba(46,107,53,.06)}
.ed-latest .elementor-post__title{font-size:1.125rem;font-weight:700;line-height:1.3;margin:0 0 8px}
.ed-latest .elementor-post__title a{color:var(--ed-ink)}
.ed-latest .elementor-post__excerpt p{font-size:.9375rem;line-height:1.55;color:var(--ed-ink);margin:0}
.ed-latest .elementor-post__meta-data{font-size:.75rem;margin-bottom:12px;color:var(--ed-ink)}

/* --------------------------------------------------------------------------
   7. Updates strip on green — dense dated rows
   -------------------------------------------------------------------------- */
.ed-updatestrip article.elementor-post > .elementor-post__text{display:contents}
.ed-updatestrip .elementor-posts{display:flex;flex-direction:column;gap:1px;
  background:var(--ed-hair-leaf)}
.ed-updatestrip article.elementor-post{display:grid;
  grid-template-columns:104px minmax(0,1fr) auto;gap:clamp(10px,2vw,24px);
  align-items:center;background:var(--ed-leaf);padding:16px 4px;margin:0;border:0;
  transition:background var(--ed-fast) var(--ed-ease)}
.ed-updatestrip article.elementor-post:hover{background:rgba(246,240,223,.07)}
.ed-updatestrip .elementor-post__meta-data{order:1;grid-column:1;margin:0;
  font-size:.75rem;font-weight:700;letter-spacing:.08em;color:rgba(246,240,223,.7);text-transform:uppercase}
.ed-updatestrip .elementor-post__title{order:2;grid-column:2;margin:0;min-width:0;
  font-size:clamp(1rem,1.4vw,1.125rem);font-weight:700;line-height:1.35}
.ed-updatestrip .elementor-post__title a{color:var(--ed-cream)}
.ed-updatestrip .elementor-post__excerpt,
.ed-updatestrip .elementor-post__read-more,
.ed-updatestrip .elementor-post__thumbnail__link{display:none}
@media(max-width:767px){
  .ed-updatestrip article.elementor-post{grid-template-columns:minmax(0,1fr);gap:6px}
  .ed-updatestrip .elementor-post__meta-data,
  .ed-updatestrip .elementor-post__title{grid-column:1}
}

/* --------------------------------------------------------------------------
   8. Archive rows — the Travel Updates layout, used by all three categories
   -------------------------------------------------------------------------- */
.ed-archive article.elementor-post > .elementor-post__text{display:contents}
.ed-archive .elementor-post__meta-data{order:1}
.ed-archive .elementor-post__title{order:2}
.ed-archive .elementor-post__excerpt{order:3}
.ed-archive .elementor-post__read-more{order:4}
.ed-archive .elementor-posts{display:flex;flex-direction:column;gap:clamp(14px,2vw,20px)}
.ed-archive article.elementor-post{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;
  padding:clamp(18px,2.6vw,26px);border:1px solid var(--ed-hair-strong);
  border-left:4px solid var(--ed-accent,var(--ed-olive));border-radius:var(--ed-r);
  margin:0;background:var(--ed-cream);
  transition:background var(--ed-fast) var(--ed-ease),border-color var(--ed-fast) var(--ed-ease)}
.ed-archive article.elementor-post:hover{border-color:var(--ed-accent,var(--ed-olive));
  background:rgba(46,107,53,.04)}
.ed-archive .elementor-post__meta-data{margin:0;font-size:.8125rem;font-weight:700;color:var(--ed-ink)}
.ed-archive .elementor-post__title{margin:0;max-width:42ch;
  font-size:clamp(1.25rem,2.2vw,1.625rem);font-weight:700;line-height:1.22;letter-spacing:-.02em}
.ed-archive .elementor-post__title a{color:var(--ed-ink)}
.ed-archive .elementor-post__title a:hover{color:var(--ed-cherry)}
.ed-archive .elementor-post__excerpt p{margin:0;max-width:68ch;font-size:1rem;line-height:1.6;color:var(--ed-ink)}
.ed-archive .elementor-post__thumbnail__link{display:none}
.ed-archive .elementor-post__read-more{font-size:.8125rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ed-cherry)}

/* Archive variant that keeps the thumbnail (Travel stories read better with one) */
.ed-archive--withimage article.elementor-post{
  grid-template-columns:clamp(120px,20%,200px) minmax(0,1fr);
  align-items:start;column-gap:clamp(16px,2.5vw,28px)}
.ed-archive--withimage .elementor-post__thumbnail__link{display:block;margin:0;
  grid-column:1;grid-row:1 / span 4}
.ed-archive--withimage .elementor-post__thumbnail{aspect-ratio:4/3;
  border-radius:var(--ed-r-img);overflow:hidden}
.ed-archive--withimage .elementor-post__meta-data,
.ed-archive--withimage .elementor-post__title,
.ed-archive--withimage .elementor-post__excerpt,
.ed-archive--withimage .elementor-post__read-more{grid-column:2}
@media(max-width:767px){
  .ed-archive--withimage article.elementor-post{grid-template-columns:minmax(0,1fr)}
  .ed-archive--withimage .elementor-post__thumbnail__link{grid-column:1;grid-row:auto}
  .ed-archive--withimage .elementor-post__meta-data,
  .ed-archive--withimage .elementor-post__title,
  .ed-archive--withimage .elementor-post__excerpt,
  .ed-archive--withimage .elementor-post__read-more{grid-column:1}
}

/* Pagination */
.ednanfyi .elementor-pagination{margin-top:clamp(24px,3vw,36px);display:flex;flex-wrap:wrap;gap:8px}
.ednanfyi .page-numbers{display:inline-flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;padding:0 12px;border:1px solid var(--ed-hair-strong);
  border-radius:var(--ed-r);font-size:.875rem;font-weight:700;color:var(--ed-ink)}
.ednanfyi .page-numbers:hover{border-color:var(--ed-cherry);color:var(--ed-cherry)}
.ednanfyi .page-numbers.current{background:var(--ed-leaf);border-color:var(--ed-leaf);color:var(--ed-cream)}

/* --------------------------------------------------------------------------
   9. Filter chips (archive)
   -------------------------------------------------------------------------- */
.ed-filters{display:flex;flex-wrap:wrap;gap:10px 8px;align-items:center}
.ed-filters__label{font-size:.625rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;margin-right:6px}
.ed-filters a{font-size:.8125rem;font-weight:700;color:var(--ed-ink);
  border:1px solid rgba(74,43,30,.28);padding:7px 13px;border-radius:999px;
  transition:all var(--ed-fast) var(--ed-ease)}
.ed-filters a:hover{border-color:var(--ed-cherry);color:var(--ed-cherry)}
.ed-filters a.is-active{background:var(--ed-leaf);border-color:var(--ed-leaf);color:var(--ed-cream)}
.ed-filters__sort{margin-left:auto;font-size:.8125rem}

/* --------------------------------------------------------------------------
   10. Article
   -------------------------------------------------------------------------- */
.ed-progress{position:fixed;left:0;top:0;height:3px;width:0;background:var(--ed-cherry);z-index:9999}

.ed-breadcrumbbar{position:sticky;top:var(--ed-header-h,63px);z-index:20;
  background:rgba(246,240,223,.96);backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(74,43,30,.12)}
.ed-breadcrumbbar .ed-inner{max-width:var(--ed-max);margin:0 auto;padding:9px var(--ed-gut);
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;
  font-size:.75rem;font-weight:700;letter-spacing:.06em}
.ed-breadcrumbbar a{color:var(--ed-ink)}
.ed-breadcrumbbar a:hover{color:var(--ed-cherry)}
.ed-breadcrumbbar .elementor-icon-list-item span.elementor-icon-list-text{color:var(--ed-ink)}
.ed-breadcrumbbar nav .separator,
.ed-breadcrumbbar .ed-sep{color:var(--ed-olive)}
.ed-breadcrumbbar .ed-here{margin-left:auto;display:flex;align-items:center;gap:9px;
  text-transform:uppercase;letter-spacing:.1em}
.ed-breadcrumbbar .ed-here::before{content:"";width:7px;height:7px;border-radius:999px;
  background:var(--ed-accent,var(--ed-cherry))}

.ed-articlemeta{display:flex;flex-wrap:wrap;align-items:center;gap:10px clamp(14px,2vw,26px);
  padding:14px 0;border-top:1px solid var(--ed-hair);border-bottom:1px solid var(--ed-hair);
  font-size:.8125rem}
.ed-articlemeta .elementor-icon-list-item{margin:0}
.ed-articlemeta .ed-firsthand{font-weight:700;color:var(--ed-green)}

/* Body copy — 18-19px on a 68ch measure is the single biggest completion factor */
.ed-prose{font-size:clamp(1.125rem,.35vw + 1rem,1.1875rem);line-height:1.72;color:var(--ed-ink)}
.ed-prose p{margin:0 0 24px;max-width:68ch}
.ed-prose .ed-block > p{max-width:68ch}
.ed-prose p.ed-standfirst,.ed-prose .ed-standfirst{
  font-size:clamp(1.1875rem,1.5vw,1.3125rem);line-height:1.6;margin:0 0 26px}
.ed-prose h2{margin:clamp(30px,4vw,46px) 0 16px;font-size:clamp(1.5rem,2.4vw,2rem);
  font-weight:700;line-height:1.18;letter-spacing:-.02em;scroll-margin-top:130px}
.ed-prose h3{margin:26px 0 14px;font-size:clamp(1.1875rem,1.7vw,1.375rem);font-weight:700;line-height:1.25}
.ed-prose img{border-radius:var(--ed-r-img);max-width:100%;height:auto}
.ed-prose figure{margin:clamp(26px,3.4vw,38px) 0}
.ed-prose figcaption{margin-top:10px;font-size:.8125rem;line-height:1.5;max-width:60ch}
.ed-prose blockquote{margin:clamp(28px,3.6vw,42px) 0;padding:4px 0 4px 20px;
  border-left:3px solid var(--ed-cherry)}
.ed-prose blockquote p{margin:0;font-size:clamp(1.25rem,2.1vw,1.5rem);font-weight:700;
  line-height:1.32;letter-spacing:-.015em}
.ed-prose a{border-bottom:1px solid rgba(169,31,50,.4)}
.ed-prose a:hover{border-bottom-color:var(--ed-leaf)}

/* Figures that hang into the notes column on desktop */
.ed-prose figure.ed-float{width:min(46%,300px);margin:4px 0 22px clamp(18px,3vw,34px);float:right}
@media(max-width:767px){.ed-prose figure.ed-float{float:none;width:100%;margin:24px 0}}

/* Table of contents, sticky */
.ed-toc{position:sticky;top:116px;align-self:flex-start}
.ed-toc .elementor-toc__header{padding:0 0 12px;background:none;border:0;
  font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ed-ink)}
.ed-toc .elementor-toc__header-title{font-size:.625rem;letter-spacing:.16em;text-transform:uppercase}
.ed-toc .elementor-toc__body{padding:0 0 0 12px;border-left:1px solid rgba(135,152,90,.6);background:none}
.ed-toc .elementor-toc__list-item{margin-bottom:10px}
.ed-toc .elementor-toc__list-item-text{font-size:.875rem;line-height:1.4;color:var(--ed-ink)}
.ed-toc .elementor-toc__list-item-text:hover,
.ed-toc .elementor-toc__list-item.elementor-item-active .elementor-toc__list-item-text{color:var(--ed-cherry)}
.ed-toc .elementor-toc__spinner-container{display:none}
@media(max-width:1024px){.ed-toc{position:static}}

/* Notes column — tips, cost boxes, map facade, sources */
.ed-notes{position:sticky;top:116px;align-self:flex-start;
  display:flex;flex-direction:column;gap:16px}
@media(max-width:1024px){.ed-notes{position:static}}
.ed-note-box{border:1px solid rgba(74,43,30,.18);border-radius:var(--ed-r)}
.ed-note-box__head{padding:11px 14px;background:rgba(135,152,90,.12);
  border-bottom:1px solid var(--ed-hair);
  font-size:.625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.ed-note-box__body{padding:14px 16px;font-size:.9375rem;line-height:1.6}
.ed-note-box--green{border-left:3px solid var(--ed-green);padding:14px 16px}
.ed-note-box--green .ed-note-box__title{font-size:.625rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ed-green);margin-bottom:8px}

/* In-copy callout, cost table, status box */
.ed-callout{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin:0 0 24px;
  background:rgba(169,31,50,.06);border-left:3px solid var(--ed-cherry);border-radius:var(--ed-r);
  font-size:1.0625rem;line-height:1.65}
.ed-callout::before{content:"";flex:0 0 auto;width:8px;height:8px;margin-top:9px;
  border-radius:999px;background:var(--ed-cherry)}
.ed-callout--olive{background:rgba(135,152,90,.09);border:1px solid var(--ed-olive);
  border-left:3px solid var(--ed-olive)}
.ed-callout--olive::before{background:var(--ed-olive);width:9px;height:9px}

.ed-costs{margin:0 0 26px;border:1px solid rgba(74,43,30,.18);border-radius:var(--ed-r)}
.ed-costs__head{background:rgba(46,107,53,.09);padding:12px 18px;
  border-bottom:1px solid var(--ed-hair);display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline}
.ed-costs__head .ed-label{color:var(--ed-green)}
.ed-costs__head .ed-note{margin-left:auto;font-size:.75rem}
.ed-costs__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;
  padding:11px 18px;border-bottom:1px solid var(--ed-hair-soft);font-size:1rem}
.ed-costs__row:last-child{border-bottom:0}

.ed-status{border:1px solid var(--ed-hair-strong);border-radius:var(--ed-r);margin-bottom:26px}
.ed-status__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 18px;
  background:rgba(135,152,90,.16);border-bottom:1px solid var(--ed-hair)}
.ed-status__checked{margin-left:auto;font-size:.75rem;font-weight:700;color:var(--ed-cherry)}
.ed-status__body{padding:18px;font-size:1rem;line-height:1.68}
.ed-status__foot{padding:12px 18px;border-top:1px solid var(--ed-hair);font-size:.8125rem}

/* Passport tabs */
.ed-tabs{margin:0 0 30px;border:1px solid var(--ed-hair-strong);border-radius:var(--ed-r)}
.ed-tabs__head{display:flex;align-items:center;gap:10px;padding:12px 16px;
  background:var(--ed-leaf);color:var(--ed-cream)}
.ed-tabs__btns{display:flex;flex-wrap:wrap;gap:8px;padding:16px}
.ed-tabs__btn{flex:1 1 auto;padding:11px 14px;font:inherit;font-size:.875rem;font-weight:700;
  text-align:left;background:transparent;color:var(--ed-ink);
  border:1px solid rgba(74,43,30,.28);border-radius:var(--ed-r);cursor:pointer;
  transition:all var(--ed-fast) var(--ed-ease)}
.ed-tabs__btn[aria-selected="true"]{background:var(--ed-leaf);color:var(--ed-cream);border-color:var(--ed-leaf)}
.ed-tabs__panel{padding:0 16px 18px;font-size:1rem;line-height:1.65}
.ed-tabs__panel[hidden]{display:none}
.ed-tabs__panel p{margin:0 0 10px}
.ed-tabs__panel p:last-child{margin:0}

/* Checklist */
.ed-check{border:1px solid var(--ed-hair-strong);border-radius:var(--ed-r);margin:0 0 12px;overflow:hidden}
.ed-check__item{display:flex;gap:14px;align-items:flex-start;width:100%;text-align:left;
  padding:14px 18px;background:none;border:0;border-bottom:1px solid rgba(74,43,30,.12);
  cursor:pointer;font:inherit;transition:background var(--ed-fast) var(--ed-ease)}
.ed-check__item:last-child{border-bottom:0}
.ed-check__item:hover{background:rgba(46,107,53,.05)}
.ed-check__box{flex:0 0 auto;width:20px;height:20px;margin-top:2px;
  border:2px solid rgba(74,43,30,.4);border-radius:var(--ed-r);background:transparent;
  color:var(--ed-cream);font-size:.8125rem;font-weight:700;line-height:17px;text-align:center}
.ed-check__item[aria-pressed="true"] .ed-check__box{background:var(--ed-green);border-color:var(--ed-green)}
.ed-check__item[aria-pressed="true"] .ed-check__box::after{content:"✓"}
.ed-check__text{font-size:1rem;line-height:1.6}
.ed-check__note{font-size:.8125rem;margin-bottom:8px}

/* Stat grid inside articles */
.ed-statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;
  background:var(--ed-hair);border:1px solid var(--ed-hair);border-radius:var(--ed-r);margin:0 0 26px}
.ed-statgrid > div{background:var(--ed-cream);padding:16px}
.ed-statgrid strong{display:block;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}

/* Advice card grid */
.ed-advice{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:0 0 26px}
.ed-advice > div{border:1px solid rgba(74,43,30,.18);border-top:3px solid var(--ed-olive);
  border-radius:var(--ed-r);padding:16px}
.ed-advice > div:nth-child(4n+1){border-top-color:var(--ed-leaf)}
.ed-advice > div:nth-child(4n+2){border-top-color:var(--ed-green)}
.ed-advice > div:nth-child(4n+3){border-top-color:var(--ed-olive)}
.ed-advice > div:nth-child(4n+4){border-top-color:var(--ed-cherry)}
.ed-advice strong{display:block;font-size:1rem;margin-bottom:7px}
.ed-advice span{font-size:.9375rem;line-height:1.6}

/* Map facade — no third-party JS until clicked */
.ed-map{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;text-align:center;padding:14px;cursor:pointer;
  background-image:repeating-linear-gradient(135deg,rgba(135,152,90,.2) 0 7px,rgba(135,152,90,0) 7px 15px)}
.ed-map__hint{font-size:.625rem;font-weight:700;letter-spacing:.1em;line-height:1.6}
.ed-map__btn{font-size:.75rem;font-weight:700;color:var(--ed-cream);background:var(--ed-cherry);
  padding:8px 12px;border-radius:var(--ed-r);border:0;cursor:pointer}
.ed-map iframe{width:100%;height:100%;border:0}

/* --------------------------------------------------------------------------
   11. Author box / read next
   -------------------------------------------------------------------------- */
.ed-author{border-top:2px solid var(--ed-ink);padding-top:22px}
.ed-author .elementor-author-box__avatar img{border-radius:999px}
.ed-author .elementor-author-box__name{font-size:1.25rem;font-weight:700;letter-spacing:-.015em}
.ed-author .elementor-author-box__bio{font-size:1rem;line-height:1.6;max-width:62ch}

.ed-readnext a{display:flex;flex-wrap:wrap;align-items:center;gap:16px clamp(20px,3vw,40px);
  padding:clamp(20px,3vw,30px);border:1px solid var(--ed-hair-strong);border-radius:var(--ed-r);
  color:var(--ed-ink);transition:all var(--ed-fast) var(--ed-ease)}
.ed-readnext a:hover{border-color:var(--ed-cherry);background:rgba(169,31,50,.04)}
.ed-readnext .elementor-posts{display:block}
.ed-readnext article.elementor-post > .elementor-post__text{display:contents}
.ed-readnext .elementor-post__read-more{order:3;flex:0 0 auto;
  font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ed-cherry)}
.ed-readnext article.elementor-post{display:flex;flex-wrap:wrap;align-items:center;
  gap:16px clamp(20px,3vw,40px);padding:clamp(20px,3vw,30px);
  border:1px solid var(--ed-hair-strong);border-radius:var(--ed-r);margin:0;
  transition:all var(--ed-fast) var(--ed-ease)}
.ed-readnext article.elementor-post:hover{border-color:var(--ed-cherry);background:rgba(169,31,50,.04)}
.ed-readnext .elementor-post__thumbnail__link,
.ed-readnext .elementor-post__excerpt{display:none}
.ed-readnext .elementor-post__title{order:2;flex:1 1 300px;margin:0;min-width:0;
  font-size:clamp(1.25rem,2.2vw,1.625rem);font-weight:700;line-height:1.25;letter-spacing:-.02em}
.ed-readnext .elementor-post__title a{color:var(--ed-ink)}
.ed-readnext .elementor-post__meta-data{order:1;flex:0 0 auto;margin:0;
  font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}

/* Related grid */
.ed-related article.elementor-post > .elementor-post__text{display:contents}
.ed-related .elementor-post__thumbnail__link{order:1;margin:0}
.ed-related .elementor-post__meta-data{order:2}
.ed-related .elementor-post__title{order:3}
.ed-related .elementor-posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:clamp(12px,1.6vw,20px)}
.ed-related article.elementor-post{display:flex;flex-direction:column;gap:10px;padding:16px;
  border:1px solid rgba(74,43,30,.16);border-top:2px solid var(--ed-olive);
  border-radius:var(--ed-r);margin:0;transition:all var(--ed-fast) var(--ed-ease)}
.ed-related article.elementor-post:hover{border-color:var(--ed-leaf);background:rgba(23,61,34,.04)}
.ed-related .elementor-post__thumbnail{aspect-ratio:16/10;border-radius:var(--ed-r);overflow:hidden}
.ed-related .elementor-post__meta-data{margin:0;font-size:.6875rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ed-ink)}
.ed-related .elementor-post__title{margin:0;font-size:1.0625rem;font-weight:700;line-height:1.3}
.ed-related .elementor-post__title a{color:var(--ed-ink)}
.ed-related .elementor-post__excerpt{display:none}

/* --------------------------------------------------------------------------
   12. Header / footer
   -------------------------------------------------------------------------- */
.ed-header{position:sticky;top:0;z-index:100;background:rgba(246,240,223,.96);
  backdrop-filter:blur(6px);border-bottom:1px solid rgba(74,43,30,.14)}
.ed-logo{display:flex;align-items:center;gap:9px}
.ed-logo svg{display:block;flex:0 0 auto}
.ed-logo__word{font-size:1.375rem;font-weight:700;letter-spacing:-.03em;color:var(--ed-ink)}
.ed-logo__word i{font-style:normal;color:var(--ed-cherry)}
.ed-nav .elementor-item{font-size:.875rem;font-weight:700;color:var(--ed-ink);
  padding:6px 2px;border-bottom:2px solid transparent}
.ed-nav .elementor-item:hover,.ed-nav .elementor-item.elementor-item-active{
  color:var(--ed-cherry);border-bottom-color:var(--ed-cherry)}
.ed-search input[type=search]{width:clamp(120px,22vw,210px);padding:8px 10px;font-size:.875rem;
  border:1px solid rgba(74,43,30,.3);border-radius:var(--ed-r);background:var(--ed-cream);color:var(--ed-ink)}
.ed-search button{background:none;border:1px solid rgba(74,43,30,.18);border-radius:var(--ed-r)}

.ed-footer{background:var(--ed-leaf);color:var(--ed-cream)}
.ed-footer a{color:var(--ed-cream);font-size:.9375rem}
.ed-footer a:hover{color:var(--ed-olive)}
.ed-footer .ed-collabel{font-size:.625rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(246,240,223,.5);margin-bottom:3px;display:block}
.ed-footer .ed-legal{border-top:1px solid rgba(246,240,223,.18);
  font-size:.8125rem;color:rgba(246,240,223,.6)}

/* --------------------------------------------------------------------------
   13. Subscribe band — the one red thing, and it wins the page
   -------------------------------------------------------------------------- */
.ed-subscribe .ed-form{display:flex;flex-wrap:wrap;gap:10px}
.ed-subscribe input[type=email]{flex:1 1 180px;min-width:0;padding:15px 14px;font:inherit;
  font-size:1rem;border:1px solid rgba(246,240,223,.55);border-radius:var(--ed-r);
  background:var(--ed-cream);color:var(--ed-ink)}
.ed-subscribe button,.ed-subscribe .elementor-button{flex:0 0 auto;padding:15px 22px;
  font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ed-cream);background:var(--ed-leaf);border:0;border-radius:var(--ed-r);cursor:pointer;
  transition:all var(--ed-fast) var(--ed-ease)}
.ed-subscribe button:hover,.ed-subscribe .elementor-button:hover{background:var(--ed-cream);color:var(--ed-cherry)}
.ed-subscribe .ed-formnote{font-size:.8125rem;color:rgba(246,240,223,.72);width:100%}
.ed-subscribe .ed-formlabel{font-size:.6875rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(246,240,223,.75);display:block;margin-bottom:10px}

/* --------------------------------------------------------------------------
   14. Stats row (hero)
   -------------------------------------------------------------------------- */
.ed-stats{display:flex;flex-wrap:wrap;gap:10px clamp(20px,3vw,40px);
  padding-top:18px;border-top:1px solid rgba(246,240,223,.2)}
.ed-stats__n{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}
.ed-stats__l{font-size:.6875rem;font-weight:700;letter-spacing:.13em;
  text-transform:uppercase;color:rgba(246,240,223,.6)}
.ed-stats--ink .ed-stats__l{color:var(--ed-ink)}

/* Placeholder frame — shown wherever no image has been set yet */
.ed-ph{display:flex;align-items:flex-end;padding:18px;border-radius:var(--ed-r-img);
  border:1px dashed rgba(135,152,90,.9);
  background-image:repeating-linear-gradient(135deg,rgba(135,152,90,.2) 0 7px,rgba(135,152,90,0) 7px 15px)}
.ed-ph--onleaf{border-color:rgba(246,240,223,.42);
  background-image:repeating-linear-gradient(135deg,rgba(246,240,223,.13) 0 7px,rgba(246,240,223,0) 7px 15px)}
.ed-ph span{font-size:.6875rem;font-weight:700;letter-spacing:.1em;line-height:1.6}
.ed-ph--onleaf span{color:rgba(246,240,223,.75)}
.ed-ph--45{aspect-ratio:4/5}
.ed-ph--169{aspect-ratio:16/10}
.ed-ph--1{aspect-ratio:1;border-radius:999px;align-items:center;justify-content:center;text-align:center}

/* --------------------------------------------------------------------------
   15. The route — the signature. Dashed olive line, numbered pins, compass.
   -------------------------------------------------------------------------- */
/* The rail is fixed to the left gutter and only appears where there is real
   margin beside the 1240px measure, so it can never overlap the reading column.
   Below that width the 3px progress line at the top carries orientation. */
.ed-rail{display:none}
@media(min-width:1440px){
  .ed-rail{position:fixed;left:0;top:0;z-index:15;
    width:104px;height:100vh;padding:calc(var(--ed-header-h,63px) + 22px) 0 26px;
    display:flex;flex-direction:column;align-items:center;
    box-sizing:border-box;border-right:1px solid rgba(74,43,30,.12);background:var(--ed-cream)}
}
.ed-rail__line{flex:1 1 auto;width:100%;display:flex;justify-content:center;padding:18px 0;min-height:0}
.ed-rail svg{display:block}
.ed-rail__needle{transform-box:fill-box;transform-origin:center;
  transition:transform var(--ed-slow) var(--ed-ease)}
.ed-pin circle{transition:fill var(--ed-base) var(--ed-ease),stroke var(--ed-base) var(--ed-ease)}
.ed-pin.is-active circle{fill:var(--ed-cherry);stroke:var(--ed-cherry)}
.ed-pin text{font-size:9px;font-weight:700;fill:var(--ed-ink)}
.ed-pin.is-active text{fill:var(--ed-cream)}
.ed-rail__label{color:var(--ed-ink);opacity:.7}
/* The rail sits in the gutter; the page itself is never shifted. */
.ed-surface-leaf,.ed-surface-cherry,.ed-footer{position:relative;z-index:16}

.ed-totop{position:fixed;right:20px;bottom:20px;z-index:40;width:46px;height:46px;
  border:1px solid rgba(74,43,30,.2);border-radius:var(--ed-r);background:var(--ed-cream);
  cursor:pointer;opacity:0;pointer-events:none;display:flex;align-items:center;justify-content:center;
  transition:opacity var(--ed-base) var(--ed-ease),border-color var(--ed-fast) var(--ed-ease)}
.ed-totop.is-on{opacity:1;pointer-events:auto}
.ed-totop:hover{border-color:var(--ed-cherry);color:var(--ed-cherry)}

/* --------------------------------------------------------------------------
   16. Motion — transform and opacity only. Zero CLS.
   -------------------------------------------------------------------------- */
.ed-rise{opacity:0;transform:translateY(var(--ed-rise));
  transition:opacity var(--ed-base) var(--ed-ease),transform var(--ed-base) var(--ed-ease)}
.ed-rise.is-in{opacity:1;transform:none}

/* Reduced motion is a real path, not a bolted-on media query. */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ed-rise{opacity:1;transform:none;transition:none}
  .ed-rail__needle{transform:none!important;transition:none}
  .ed-progress{transition:none}
  .ednanfyi *{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

/* --------------------------------------------------------------------------
   17. Responsive
   -------------------------------------------------------------------------- */
@media(max-width:1024px){
  .ed-articlemeta{font-size:.75rem}
}
@media(max-width:767px){
  .ed-sectionhead{gap:4px 12px}
  .ed-doors{grid-template-columns:1fr}
  .ed-breadcrumbbar .ed-here{margin-left:0;width:100%}
  .ed-prose p{max-width:none}
  .ed-subscribe .ed-form{flex-direction:column}
  .ed-subscribe button,.ed-subscribe .elementor-button{width:100%}
  .ed-filters__sort{margin-left:0;width:100%}
}

/* --------------------------------------------------------------------------
   18. Featured story — the one place the grid breaks, to the viewport edge
   -------------------------------------------------------------------------- */
.ed-featured .elementor-posts{display:block}
.ed-featured article.elementor-post{display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr);
  align-items:end;gap:clamp(20px,3vw,44px);margin:0;padding:0;border:0;background:none}
.ed-featured .elementor-post__thumbnail__link{margin:0;grid-column:1}
.ed-featured .elementor-post__thumbnail{aspect-ratio:16/10;border:1px solid var(--ed-hair-strong);
  border-left:none;border-radius:0 var(--ed-r-img) var(--ed-r-img) 0;overflow:hidden}
.ed-featured .elementor-post__text{grid-column:2;padding:0 var(--ed-gut) clamp(4px,1vw,16px) 0}
.ed-featured .elementor-post__meta-data{margin:0 0 14px;font-size:.8125rem;color:var(--ed-ink)}
.ed-featured .elementor-post__title{margin:0 0 14px;
  font-size:clamp(1.625rem,3.2vw,2.625rem);font-weight:700;line-height:1.06;letter-spacing:-.03em}
.ed-featured .elementor-post__title a{color:var(--ed-ink)}
.ed-featured .elementor-post__title a:hover{color:var(--ed-cherry)}
.ed-featured .elementor-post__excerpt p{margin:0 0 18px;max-width:46ch;
  font-size:clamp(1.0625rem,1.3vw,1.1875rem);line-height:1.6;color:var(--ed-ink)}
.ed-featured .elementor-post__read-more{font-size:.875rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ed-cherry)}
.ed-featured .elementor-post__read-more::after{content:" →"}
@media(max-width:900px){
  .ed-featured article.elementor-post{grid-template-columns:minmax(0,1fr)}
  .ed-featured .elementor-post__thumbnail__link,
  .ed-featured .elementor-post__text{grid-column:1}
  .ed-featured .elementor-post__thumbnail{border-radius:var(--ed-r-img);border-left:1px solid var(--ed-hair-strong)}
  .ed-featured .elementor-post__text{padding:0 var(--ed-gut)}
}

/* --------------------------------------------------------------------------
   19. From Beyond Travel — wider cards, image left, sources visible
   -------------------------------------------------------------------------- */
.ed-beyondlist .elementor-posts{display:flex;flex-direction:column;gap:16px}
.ed-beyondlist article.elementor-post{display:grid;
  grid-template-columns:clamp(96px,16vw,190px) minmax(0,1fr);
  gap:clamp(16px,2.5vw,32px);align-items:start;
  padding:clamp(16px,2.5vw,26px);border:1px solid rgba(74,43,30,.16);
  border-radius:var(--ed-r);margin:0;
  transition:all var(--ed-fast) var(--ed-ease)}
.ed-beyondlist article.elementor-post:hover{border-color:var(--ed-green);background:rgba(46,107,53,.05)}
.ed-beyondlist .elementor-post__thumbnail__link{margin:0}
.ed-beyondlist .elementor-post__thumbnail{aspect-ratio:4/3;border-radius:var(--ed-r);overflow:hidden}
.ed-beyondlist .elementor-post__meta-data{margin:0 0 10px;font-size:.6875rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ed-green)}
.ed-beyondlist .elementor-post__title{margin:0 0 10px;
  font-size:clamp(1.25rem,2.2vw,1.625rem);font-weight:700;line-height:1.22;letter-spacing:-.02em}
.ed-beyondlist .elementor-post__title a{color:var(--ed-ink)}
.ed-beyondlist .elementor-post__excerpt p{margin:0 0 10px;max-width:62ch;font-size:1rem;
  line-height:1.6;color:var(--ed-ink)}
.ed-beyondlist .elementor-post__read-more{font-size:.8125rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ed-cherry)}
@media(max-width:600px){
  .ed-beyondlist article.elementor-post{grid-template-columns:minmax(0,1fr)}
}

/* Search form in the header */
.ed-searchform input[type=search]{width:clamp(120px,22vw,210px);padding:8px 10px;font-size:.875rem;
  border:1px solid rgba(74,43,30,.3);border-radius:var(--ed-r);background:var(--ed-cream);color:var(--ed-ink)}

/* Footer nav columns */
.ed-footnav .elementor-nav-menu{flex-direction:column;gap:9px}
.ed-footnav .elementor-item{padding:0!important;font-size:.9375rem;color:var(--ed-cream)}
.ed-footnav .elementor-item:hover{color:var(--ed-olive)}

/* Crumbs */
.ed-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px}

/* Breadcrumb sitting on the green hero rather than in the sticky bar */
.ed-crumbs-onleaf .ed-crumbs{font-size:.75rem;font-weight:700;letter-spacing:.06em}
.ed-crumbs-onleaf .ed-crumbs a{color:var(--ed-cream)}
.ed-crumbs-onleaf .ed-crumbs a:hover{color:var(--ed-olive)}
.ed-crumbs-onleaf .ed-sep{color:var(--ed-olive)}
.ed-crumbs-onleaf .ed-here{display:none}

/* Lead image + caption on a single */
.ed-lead img{border-radius:var(--ed-r-img);width:100%;height:auto}
.ed-lead figcaption,.ed-lead .widget-image-caption{margin-top:10px;font-size:.8125rem;
  max-width:60ch;color:var(--ed-ink);text-align:left}
.ed-standfirst p{margin:0;max-width:58ch}
.ednanfyi .elementor-widget-theme-post-excerpt.ed-standfirst .elementor-widget-container{max-width:58ch}

/* Archive furniture */
.ed-filterbar{border-bottom:1px solid var(--ed-hair);background:rgba(135,152,90,.06)}
.ed-archdesc p{margin:0;max-width:56ch;font-size:clamp(1.0625rem,1.5vw,1.25rem);
  line-height:1.55;color:rgba(246,240,223,.85)}
.ed-surface-leaf .ed-stats{border-top:0;padding-top:0}
.ed-searchform--big{display:flex;flex-wrap:wrap;gap:10px}
.ed-searchform--big input[type=search]{flex:1 1 240px;width:auto;padding:15px 14px;font-size:1rem;
  border:1px solid rgba(246,240,223,.55);background:var(--ed-cream)}
.ed-searchform--big button{flex:0 0 auto;padding:15px 22px;font-size:.875rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ed-cream);background:var(--ed-cherry);
  border:0;border-radius:var(--ed-r);cursor:pointer}
.ed-searchform--big button:hover{background:var(--ed-cream);color:var(--ed-cherry)}

/* --------------------------------------------------------------------------
   20. Article component variants carried over from the prototype
   -------------------------------------------------------------------------- */
.ed-block{display:contents}          /* grouping only — never affects layout */

/* Season / experiment pickers reuse the tab shell with a segmented button row */
.ed-tabs__btns--season{gap:0;padding:0;border-bottom:1px solid var(--ed-hair)}
.ed-tabs__btn--season{flex:1 1 120px;padding:13px 10px;text-align:center;
  border:0;border-right:1px solid var(--ed-hair);border-radius:0;
  font-size:.8125rem;letter-spacing:.04em}
.ed-tabs__btn--season:last-child{border-right:0}
.ed-tabs__btn--season[aria-selected="true"]{background:rgba(46,107,53,.1);
  color:var(--ed-green);border-color:var(--ed-hair)}

/* Boxes that only carry a dark head and a body (checklist, picker) */
.ed-check .ed-tabs__head,.ed-tabs .ed-tabs__head{border-radius:0}
.ed-tabs__head .ed-label{color:var(--ed-cream)}

/* Cost / stat rows inside the notes column reuse the same row rule */
.ed-note-box .ed-costs__row:last-child{border-bottom:0}

/* Panels inside a bare box (the phone article's picker) */
.ed-status__body > p:last-child{margin-bottom:0}

/* --------------------------------------------------------------------------
   21. Flex hygiene
   A flex item will not shrink below its min-content width unless told to, and
   an article body full of tables and code will happily push the notes column
   onto its own row. This is the rule that keeps the three-column article
   layout intact.
   -------------------------------------------------------------------------- */
.ednanfyi .e-con > .e-con,
.ednanfyi .e-con-inner > .e-con,
.ednanfyi .e-child{min-width:0}
.ed-prose,.ed-notes,.ed-toc,.ed-latest,.ed-archive,.ed-related{min-width:0}
.ed-prose img,.ed-prose table{max-width:100%}
.ed-prose .ed-costs,.ed-prose .ed-status,.ed-prose .ed-tabs,.ed-prose .ed-check{min-width:0}

/* Bold sub-labels inside body copy ("Travelling with kids", "One catch worth
   knowing") — the prototype styles these as small headings, not paragraphs. */
.ed-prose .ed-sublabel{margin:22px 0 6px;font-size:1rem;font-weight:700;line-height:1.4}

/* --------------------------------------------------------------------------
   22. The article's three columns
   Basis-based sizing put the row over budget at 1240px and dropped the notes
   column onto its own line. These widths are explicit instead: the contents
   rail and the notes column are fixed, and the reading measure takes the rest.
   -------------------------------------------------------------------------- */
@media(min-width:1025px){
  .ed-col-toc{flex:0 0 168px!important;min-width:0}
  .ed-col-prose{flex:1 1 0%!important;min-width:0}
  .ed-col-notes{flex:0 0 clamp(200px,18%,260px)!important;min-width:0}
  .ed-col-body{flex:1 1 0%!important;min-width:0}
  .ed-col-aside{flex:0 0 clamp(220px,22%,300px)!important;min-width:0}
}
@media(max-width:1024px){
  .ed-col-toc,.ed-col-prose,.ed-col-notes,
  .ed-col-body,.ed-col-aside{flex:1 1 100%!important;min-width:0}
  .ed-col-toc{order:1}.ed-col-prose,.ed-col-body{order:2}
  .ed-col-notes,.ed-col-aside{order:3}
}

/* --------------------------------------------------------------------------
   23. Narrow viewports
   The Nav Menu widget switches to a burger below its dropdown breakpoint, but
   these rules keep the flat list sane if that breakpoint is ever raised, and
   stop any single long word from pushing the page sideways.
   -------------------------------------------------------------------------- */
.ed-nav .elementor-nav-menu{flex-wrap:wrap}
.ed-header .elementor-widget-nav-menu,
.ed-header .ed-search,.ed-header .ed-logo{min-width:0}
@media(max-width:600px){
  .ed-nav .elementor-nav-menu{gap:2px 12px}
  .ed-nav .elementor-item{font-size:.8125rem;padding:4px 0}
  .ed-searchform input[type=search]{width:100%;min-width:0}
  .ed-header .ed-logo__word{font-size:1.125rem}
}
.ednanfyi h1,.ednanfyi h2,.ednanfyi h3,.ednanfyi p,
.ed-card__title,.elementor-post__title{overflow-wrap:break-word}
.ed-prose pre,.ed-prose table{overflow-x:auto;display:block;max-width:100%}

/* In a column-direction form the email field's flex-basis applies to its
   height, which stretched it into a large box on mobile. */
@media(max-width:767px){
  .ed-subscribe input[type=email]{flex:0 0 auto;width:100%}
  .ed-subscribe .ed-form{align-items:stretch}
}
