:root{
  /* Brand */
  --green:#2b6f2d;   /* headings, accents */
  --blue:#2A9DF4;    /* links, primary buttons */
  --yellow:#FBC02D;  /* highlights, chips */
  --orange:#F57C00;  /* accents */
  --brown:#8D5524;   /* otter / doodles */
  --cream:#FDFBF5;   /* page bg */
  --text:#2b2f36;    /* softened dark text */

  /* UI */
  --radius-xl: 24px;
  --radius-lg: 12px;
  --radius-md: 8px;
  --shadow-sm: 0 4px 12px rgba(0,0,0,.06);
  --shadow-md: 0 10px 24px rgba(0,0,0,.08);
  --shadow-lg: 0 18px 40px rgba(0,0,0,.12);
}

*{box-sizing:border-box}
html{
  background:var(--cream);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body{
  margin:0;
  color:var(--text);
  font-family:Nunito,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  font-weight:400;
  font-size:16.5px;     /* was 17px */
  line-height:1.7;      /* was 1.55 */
  letter-spacing:.1px;
}

/* Type */
h1,h2,h3,h4{
  font-family:Fredoka,system-ui,sans-serif;
  color:var(--green);
  font-weight:600;       /* lighter (was 700/900) */
  line-height:1.15;
  letter-spacing:-.2px;
  margin:.15em 0 .35em;
}
h1{font-size: clamp(26px, 3.8vw, 40px);}  /* down from 44px */
h2{font-size: clamp(20px, 3vw, 28px);}
h3{font-size: clamp(18px, 2.2vw, 22px);}

/* Comfortable reading width for long content */
.content{margin-inline:auto;}
.content p{margin:0 0 .9rem}

/* Links & buttons */
a{color:var(--blue);text-decoration:none}
a:hover{opacity:.9;text-decoration:underline}

.btn{
  display:inline-block; font-weight:700;       /* was 800 */
  padding:.8rem 1.1rem; border-radius:999px;
  transition:transform .12s ease, box-shadow .12s ease, opacity .2s;
  box-shadow: var(--shadow-sm);
}
.btn-primary{ background:var(--blue); color:#fff; }
.btn-yellow{ background:var(--yellow); color:#302a1a; }
.btn:hover{ transform: translateY(-2px); box-shadow: var(--shadow-md); }

/* Layout */
.container{max-width:1100px;margin:0 auto;padding:2rem 1rem;}
.hidden {display:none;}
/* Buttons: larger variants + green outline */
.btn-2tone--lg{ padding: 1rem 1.35rem; font-size: 1.05rem; }
.btn-outline-green{
  display:inline-flex; align-items:center; gap:.6rem;
  padding:.95rem 1.3rem; border-radius:999px; font-weight:700; /* was 900 */
  color: var(--green); background:#fff; border: 3px solid var(--green);
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  transition: transform .12s ease, box-shadow .12s ease;
}
.btn-outline-green:hover{ transform: translateY(-2px); box-shadow: 0 10px 26px rgba(0,0,0,.12); }
.btn-outline-green--lg{ font-size: 1.05rem; }

/* Tidy spacing before the feed */
.container > h2:first-of-type{ margin-top: 1rem; }

/* Grid & cards */
.grid{
  display:grid; gap:1.5rem;
  grid-template-columns: repeat(auto-fill,minmax(260px,1fr));
}
.card{
  background:#fff; border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  padding: .9rem; transition: transform .12s ease, box-shadow .12s ease;
}
.card:hover{ transform: translateY(-3px); box-shadow: var(--shadow-lg); }
.card img{
  width:100%; aspect-ratio:16/10; object-fit:cover;
  border-radius: var(--radius-md);
}
.card h3{margin:.6rem 0 .3rem}
.meta{font-size:.9rem; opacity:.7}

/* Tags (pill labels) */
.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.35rem 0 .2rem}
.tag{
  display:inline-block; padding:.32rem .7rem; font-weight:700; font-size:.8rem; /* lighter */
  border-radius:999px; box-shadow: var(--shadow-sm);
}
.tag--nature{background:var(--green);color:#fff}
.tag--days{background:var(--yellow);color:#332}
.tag--hols{background:var(--orange);color:#fff}
.tag--fun{background:#8EC5FF;color:#09375a}

/* Post content */
.content img{border-radius: var(--radius-lg); width:100%; height:auto}
hr.dash{margin:2rem 0;border:none;border-top:3px dashed var(--yellow)}

/* Footer */
.footer{
  margin-top:2.2rem; background:#fff; border-top:3px solid var(--green);
  box-shadow: 0 -2px 16px rgba(0,0,0,.04);
  padding: 2rem 0;
}
.footer .container{padding-top:0;padding-bottom:0}
.footer form input[type="email"]{
  padding:.7rem .9rem; border-radius:14px; border:2px solid var(--green);
  margin-right:.6rem; font-size:1rem; outline:none;
}
.footer form input[type="email"]:focus{box-shadow:0 0 0 4px #e3f3e6}

/* ====== Two-tone buttons ====== */
.btn-2tone{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.85rem 1.2rem; border-radius:999px; font-weight:600;  /* was 900 */
  color:#fff; box-shadow: 0 6px 18px rgba(0,0,0,.12), inset 0 -3px rgba(0,0,0,.15);
  background: linear-gradient(90deg, var(--green) 0%, var(--blue) 100%);
  transition: transform .12s ease, box-shadow .12s ease, opacity .15s;
}
.btn-2tone:hover{ transform: translateY(-2px); box-shadow: 0 10px 26px rgba(0,0,0,.16), inset 0 -3px rgba(0,0,0,.18); }
.btn-ghost{
  display:inline-flex; align-items:center; gap:.6rem;
  padding:.8rem 1.2rem; border-radius:999px; font-weight:700; /* lighter */
  color: var(--green); background:#fff; border:2px solid var(--green);
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}
.btn-ghost:hover{ transform: translateY(-2px); }

/* Patterned colour hero (soft icons like footer) */
.aa-hero--pattern{
  position:relative; border:0; overflow:hidden;
  background: linear-gradient(180deg,#e9f5ff 0%, #ffffff 55%, #fff3df 100%);
}
.aa-hero--pattern::before{
  content:""; position:absolute; inset:0; opacity:.35; pointer-events:none;
  background:
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='220' height='140' viewBox='0 0 220 140'>\
<defs><style>.i{fill:none;stroke:%239ac7ff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.7}</style></defs>\
<path class='i' d='M30 95 l30-45 30 45 M45 72 l30 45 M20 95 h80'/>\
<circle class='i' cx='165' cy='38' r='18'/>\
<path class='i' d='M165 22 v4 M165 50 v4 M149 38 h4 M177 38 h4 M165 28 l6 10 -10 6z'/>\
<path class='i' d='M40 28 l12-12 12 12 -8 0 8 8 -8 0 8 8 H44 l8-8 -8 0 8-8z'/>\
<path class='i' d='M52 44 v10'/>\
<ellipse class='i' cx='140' cy='96' rx='6' ry='10' transform='rotate(-20 140 96)'/>\
<ellipse class='i' cx='155' cy='108' rx='5' ry='8' transform='rotate(-20 155 108)'/>\
</svg>") repeat;
  background-size: 440px auto;
}
.aa-hero--pattern .aa-hero__inner{ position:relative; padding:44px 16px; }


/* ===== Clean Full-Width Header ===== */
.header {
  position: sticky;
  top: 0;
  z-index: 1000;                  /* ↑ keep header above content */
  width: 100%;
  background: #fff;
  border-bottom: 2px solid rgba(0,0,0,.05);
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
}

.header__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: .9rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: nowrap;              /* ⬅ prevent row wrapping */
}

.header__left {
  display: flex;
  align-items: center;
  gap: .6rem;
  flex: 1 1 auto;                 /* ⬅ allow shrinking */
  min-width: 0;                   /* ⬅ enables ellipsis */
}

.header__left img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}

.header__brand {
  font-family: Fredoka, system-ui, sans-serif;
  font-weight: 700; /* slightly lighter */
  font-size: 1.2rem;
  color: var(--green);
  white-space: nowrap;            /* ⬅ no wrap */
  overflow: hidden;               /* ⬅ allow truncation */
  text-overflow: ellipsis;
}

.header__tagline {
  font-size: .85rem;
  opacity: .6;
}

.header__right {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.header__right a {
  font-weight: 600;             /* lighter */
  text-decoration: none;
  color: var(--text);
}

.header__right a:hover {
  color: var(--blue);
}

.header__cta { margin-left: .5rem; }

/* Utility: screen-reader only */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* (Keep a single consolidated header block; if you had a duplicate earlier, this one supersedes it) */

/* Burger button */
.nav-toggle{
  display:none; position:relative; width:44px;height:40px;border:0;background:transparent;cursor:pointer;
  margin-left:auto;               /* ⬅ push to far right */
}
.nav-toggle__bar{display:block;width:24px;height:3px;background:var(--text);border-radius:2px;margin:4px auto;transition:transform .2s,opacity .2s}
.nav-toggle.open .nav-toggle__bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open .nav-toggle__bar:nth-child(2){opacity:0}
.nav-toggle.open .nav-toggle__bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Hide tagline on very small screens to prevent crowding */
@media (max-width: 560px){
  .header__tagline{ display:none; }
}


/* Desktop defaults (apply to all first) */
.nav-toggle{ display:none; }                 /* burger hidden on desktop */

.header__right{
  position: static;                          /* normal inline nav */
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0;                                /* no stray padding */
  background: transparent;
  border: 0;
  box-shadow: none;
  max-height: none;                          /* ensure not limited */
  overflow: visible;
}

/* --- Mobile layout --- */
@media (max-width: 820px){
  .nav-toggle{ display:block; }

  /* Base state (closed menu) */
  .header__right{
    position: absolute;
    left: 0; right: 0; top: 100%;
    background: #fff;
    border-bottom: 2px solid rgba(0,0,0,.06);
    display: block;
    max-height: 0;
    overflow: hidden;
    padding: 0;                              /* no whitespace when closed */
    box-shadow: 0 10px 28px rgba(0,0,0,.08);
    transition: max-height .3s ease-in-out, padding .3s ease-in-out;
  }

  /* Open state (burger menu expanded) */
  .header__right.open{
    max-height: 380px;
    padding: .6rem 1rem;                     /* only when open */
  }

  .header__right a{
    display: block;
    padding: .55rem .25rem;
  }

  .header__cta{
    display: block;
    margin: .35rem 0 0;
    text-align: center;
  }
}

/* Optional: lock body scroll when menu open (global is fine) */
html.nav-open, html.nav-open body{ overflow: hidden; }

/* ====== Hero banner (Base44 style) ====== */
.hero-banner{
  padding: 24px 22px;
  background: linear-gradient(180deg,#f4fbff 0%,#fff 60%, #fff3df 100%);
  border-radius: 28px; box-shadow: var(--shadow-md);
  text-align:center; position:relative; overflow:hidden;
}
.hero-badge{
  width:84px; height:84px; border-radius:50%; background:#fff; margin:0 auto 10px;
  display:grid; place-items:center; box-shadow: 0 6px 18px rgba(0,0,0,.12);
}
.hero-badge img{width:64px; height:64px}
.hero-banner h1{margin:.2rem 0 .4rem; font-size: clamp(30px,5vw,48px)}
.hero-banner h1 .accent{color: var(--blue)}
.hero-banner p{max-width:760px; margin:0 auto .9rem; opacity:.85}
.hero-actions{display:flex; gap:.7rem; justify-content:center; flex-wrap:wrap; margin-top:.6rem}

/* ====== Footer subscribe row ====== */
.footer{ background:#EEF6EE; border-top:4px solid var(--green); }
.footer__inner{ padding:26px 16px; display:grid; gap:12px; justify-items:center; text-align:center }
.subscribe{
  display:flex; gap:.5rem; flex-wrap:wrap; justify-content:center; margin-top:.2rem;
}
.subscribe input[type="email"]{
  padding:.8rem 1rem; border-radius:14px; border:2px solid var(--green); min-width:260px; font-size:1rem;
  outline:none; background:#fff;
}
.subscribe input[type="email"]:focus{ box-shadow:0 0 0 4px #e3f3e6 }

/* === Archie Hero === */
.aa-hero{
  position: relative;
  padding: 0 0 22px;
  overflow: hidden;
  border-bottom: 4px solid rgba(0,0,0,.04);
}
.aa-hero__bg{
  position:absolute; inset:0;
  background: linear-gradient(180deg,#e9f5ff 0%, #ffffff 55%, #fff3df 100%);
  opacity: .9;
}
.aa-hero__inner{
  position: relative;
  margin: 12px auto 0;
  border-radius: 28px;
  padding: clamp(20px, 4vw, 34px) clamp(16px, 3.5vw, 28px);
  text-align: center;
}
.aa-hero__badge{
  width: 86px; height: 86px; margin: 0 auto 10px;
  display:grid; place-items:center; background:#fff; border-radius:50%;
  box-shadow: 0 10px 26px rgba(0,0,0,.12);
}
.aa-hero__title{
  font-family: Fredoka, system-ui, sans-serif;
  color: var(--green); font-weight: 700;     /* softer than 900 */
  font-size: clamp(32px, 5.2vw, 56px);
  line-height:1.05;
  margin: .2rem 0 .5rem;
}
.aa-accent{ color: var(--blue); }
.aa-hero__lead{
  max-width: 880px; margin: 0 auto .9rem;
  font-size: clamp(16px, 2vw, 19px);
  line-height: 1.65; opacity: .9;
}
.aa-pop{ color:#ff8a00; font-weight: 800; margin-left:.15rem }
.aa-hero__actions{
  display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; margin-top:.4rem;
}
.aa-btn-lg{ padding: 1rem 1.35rem; font-size: 1.05rem; border-radius: 999px; }
.aa-ico{ font-weight:900; margin-right:.35rem }
.aa-btn-outline{
  display:inline-flex; align-items:center; gap:.6rem;
  background:#fff; color: var(--green);
  border: 3px solid var(--green);
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  transition: transform .12s ease, box-shadow .12s ease;
}
.aa-btn-outline:hover{ transform:translateY(-2px); box-shadow: 0 10px 26px rgba(0,0,0,.12) }
.aa-hero__orn{ position:absolute; width:84px; opacity:.55; filter:saturate(.95) }
.aa-hero__orn--left{ left:16px; top:22px }
.aa-hero__orn--right{ right:18px; bottom:26px }
.container > h2:first-of-type{ margin-top: 1.1rem; }

/* ===== Post page ===== */
.aa-post__back{
  display:inline-block; margin:.4rem 0 1rem; font-weight:700; opacity:.8;
}
.aa-post__cover{
  width:100%; max-height:400px; border-radius:24px; box-shadow: var(--shadow-md);
  margin: .2rem 0 2rem; object-fit: cover;
}
.aa-post__title{
  font-family: Fredoka, system-ui, sans-serif;
  color: var(--green); font-weight: 700;
  font-size: clamp(28px, 4.5vw, 42px);
  margin: .2rem 0 .2rem;
}
.aa-post__subtitle{
  opacity:.85; font-size: clamp(16px, 2vw, 18px);
  margin: 0 0 .6rem;
}
.aa-post__meta{
  display:flex; flex-wrap:wrap; align-items:center; gap:.5rem;
  margin-bottom: 0.9rem;
}
.aa-post__meta-chip{
  display:inline-block; padding:.35rem .7rem;
  font-weight:700; font-size:.9rem;
}

/* Sub card */
.aa-sub__card{
  padding: 2rem;
  color: var(--green);
  background-color: #fff; 
  box-shadow: var(--shadow-md);
  border-radius:12px;
  margin: 3rem 0rem;
}
.aa-sub__card p{ margin: 0 0 1rem; }
.aa-sub__card strong{ color: var(--text); }

/* Content card */
.aa-post__card{
 margin-top: 3rem;
  color: var(--green);
}
.aa-post__card p{ margin: 0 0 1rem; }
.aa-post__card strong{ color: var(--text); }

/* Bottom CTA */
.aa-post__footer{
  margin: 1.1rem 0 0;
  padding-top: .9rem;
  display:grid; justify-items:center; gap:.6rem; text-align:center;
}
.aa-post__mini{ width:28px; height:28px; border-radius:50% }
hr.dash{margin:1.5rem 0;border:none;border-top:3px dashed var(--yellow)}

/* ===== Listing Grid & Card ===== */
.aa-grid{
  display:grid;
  gap: 3rem 2rem;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  align-items: stretch;          /* make grid cells equal height */
}
.aa-card{
  display:block; background:#fff; border-radius: 20px;
  box-shadow: var(--shadow-md); overflow:hidden;
  transition: transform .12s ease, box-shadow .12s ease;
  text-decoration:none; color: inherit;

  /* equal-height support: let body stretch */
  display:flex; flex-direction:column; height:100%;
}
.aa-card:hover{ transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.aa-card__media{ position:relative; overflow:hidden; flex-shrink:0; }
.aa-card__media img{ width:100%; height:220px; object-fit: cover; display:block; }
.aa-card__body{ padding: .95rem 1rem 1.1rem; flex:1; display:flex; flex-direction:column; }
.aa-card__toprow{
  display:flex; align-items:center; justify-content:space-between; gap:.75rem;
  margin-bottom:.35rem;
}
.aa-card__title{
  font-family: Fredoka, system-ui, sans-serif;
  color: var(--green); font-weight: 700;
  font-size: clamp(18px, 2.2vw, 24px);
  margin: .2rem 0 .25rem;
}
.aa-card__excerpt{ margin:0 0 .6rem; opacity:.85; }
.aa-card__meta{ display:flex; align-items:center; gap:.6rem; }
.aa-card__footer{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:.6rem; }
.aa-card__more{ font-weight:700; font-size:.95rem; color:var(--blue); text-decoration:none; }
.aa-card__more:hover{ opacity:.85; text-decoration: underline; }

/* pill (category) */
.aa-pill{
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.42rem .75rem; border-radius: 999px; font-weight: 700; /* lighter */
  font-size:.85rem; background:#E9F5EC; color:#165e23;
  box-shadow: var(--shadow-sm); border:2px solid #cfe7d4; text-transform: lowercase;
}
.aa-pill:is(.days, .day, .days-out){ background:#FFF6D6; color:#6b560e; border-color:#fbe9a2; }
.aa-pill.holidays{ background:#E6F5FC; color:#0a67a8; border-color:#cdeafa; }

.aa-meta{ font-size:.9rem; opacity:.7; }

@media (min-width: 1100px){
  .aa-card__media img{ height: 260px; }
}

/* Filter bar */
.aa-filter{
  display:flex; flex-wrap:wrap; gap:.8rem; align-items:center;
  justify-content:space-between; margin: 1rem 0 3rem;
}
.aa-filter__scroller{ display:flex; gap:.5rem; flex-wrap:wrap; }
.aa-filter .chip{
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.55rem 1rem; border-radius:999px; font-weight:700; /* lighter */
  background:#f7fafc; border:2px solid rgba(0,0,0,.06); box-shadow: var(--shadow-sm);
  cursor:pointer; user-select:none;
}
.aa-filter .chip[aria-pressed="true"]{ outline:3px solid rgba(42,157,244,.25); }
.aa-filter__search input{
  padding:.65rem .85rem; border-radius:12px; border:2px solid rgba(0,0,0,.08);
  min-width:220px; outline:none;
}
.aa-filter__search input:focus{ box-shadow:0 0 0 4px #e3f3e6; border-color: var(--green); }

.aa-empty{
  grid-column: 1 / -1; margin: .6rem 0 0; padding: .9rem 1rem;
  background:#fff; border:2px dashed #e5ecf3; border-radius:14px; text-align:center;
  color:#6b7280; font-weight:700;
}

/* Subscribe layout adjustments */
.subscribe { display: grid; gap: .6rem; justify-items: center; text-align: center; }
.subscribe__row { display: flex; gap: .5rem; flex-wrap: nowrap; }
.subscribe__row input[type="email"]{
  padding: .8rem 1rem; border-radius: 14px; border: 2px solid var(--green);
  min-width: 260px; font-size: 1rem; outline: none; background: #fff;
}
.subscribe__row input[type="email"]:focus{ box-shadow: 0 0 0 4px #e3f3e6; }
.subscribe__agree{ font-size: .9rem; color: var(--text); }

.hero-subscribe {
  display: grid;
  gap: .6rem;
  justify-items: center;
  margin-top: 1rem;
}
.hero-subscribe__row {
  display: flex;
  gap: .5rem;
  flex-wrap: nowrap;
}
.hero-subscribe__row input[type="email"] {
  padding: .9rem 1rem;
  border-radius: 14px;
  border: 2px solid var(--green);
  min-width: 280px;
  font-size: 1rem;
}
.hero-subscribe__row input[type="email"]:focus {
  box-shadow: 0 0 0 4px #e3f3e6;
}
.hero-subscribe__agree { font-size: .85rem; color: var(--text); }
.hero-share {
  margin-top: 1.2rem;
  font-size: .9rem;
  display: flex;
  gap: .8rem;
  flex-wrap: wrap;
  justify-content: center;
}
.hero-share a { font-weight: 700; color: var(--blue); }
.hero-share a:hover { opacity: .8; }

/* Mobile polish for hero */
@media (max-width: 640px){
  .hero-banner{ padding: 16px 14px; border-radius: 20px; }
  .hero-badge{ width:64px; height:64px; }
  .hero-badge img{ width:48px; height:48px; }
  .hero-banner h1{ margin: .1rem 0 .35rem; }
  .hero-subscribe{ width:100%; }
  .hero-subscribe__row{ flex-wrap: wrap; width:100%; gap: .5rem; }
  .hero-subscribe__row input[type="email"]{ width:100%; min-width: 0; }
  .hero-subscribe__row button{ width:100%; }
  .hero-subscribe__agree{ text-align:left; width:100%; line-height:1.3; }
  .hero-share{ gap:.5rem; font-size:.95rem; }
  .hero-share a{
    display:inline-flex; align-items:center; padding:.5rem .75rem; border-radius:999px;
    background:#fff; border:1.5px solid rgba(0,0,0,.06);
  }
}

/* ===== Archie Footer ===== */
.aa-footer{
  margin-top: 40px;
  background: #f8fbff; /* base layer under doodles */
  position: relative;
  border-top: 4px solid var(--green);
}

/* curved top strip */
.aa-footer__wave{
  position:absolute; inset:0 0 auto 0; height:18px;
  background:
    radial-gradient(120% 22px at 50% -6px, #fff 52%, transparent 55%),
    linear-gradient(#fff, #fff);
}

/* inner card */
.aa-footer__inner{
  position: relative;
  z-index: 1;
  margin-top: 10px;
  padding: 28px 16px;
  border-radius: 24px 24px 0 0;
  background: #fff;
  box-shadow: 0 -10px 28px rgba(0,0,0,.06);

  /* subtle doodle pattern */
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='140' viewBox='0 0 180 140'%3E%3Cg fill='none' stroke='%23e9eef5' stroke-width='2'%3E%3Ccircle cx='28' cy='26' r='8'/%3E%3Crect x='72' y='20' width='22' height='22' rx='5'/%3E%3Cpath d='M132 22l14 14M146 22l-14 14'/%3E%3Crect x='16' y='84' width='28' height='12' rx='6'/%3E%3Ccircle cx='96' cy='98' r='7'/%3E%3Cpath d='M128 94h30M143 86v16'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 220px 160px;
  background-position: center;
}

/* 3-column grid */
.aa-footer__inner{
  display: grid;
  grid-template-columns: 140px 1fr 220px;
  gap: 24px;
  align-items: start;
}

.aa-footer__brand img{
  display:block;
  width: 120px; height: 120px;
  border-radius: 50%;
  box-shadow: 0 8px 22px rgba(0,0,0,.12);
}

.aa-footer__about h3,
.aa-footer__nav h3{
  font-family: Fredoka, system-ui, sans-serif;
  color: var(--green);
  font-size: clamp(18px, 2vw, 20px);
  margin: 0 0 8px;
}

.aa-footer__about p{
  margin: 0;
  opacity: .9;
  line-height: 1.6;
}

.aa-footer__nav ul{
  list-style: none; margin: 0; padding: 0;
  display: grid; gap: 8px;
}
.aa-footer__nav a{
  color: var(--text); text-decoration: none; font-weight: 700;
}
.aa-footer__nav a:hover{ color: var(--blue); }

/* legal bar */
.aa-footer__legal{
  border-top: 1px solid rgba(0,0,0,.06);
  background: #fff;
}
.aa-footer__legal .container{
  padding: 12px 16px;
}
.aa-footer__legal p{
  margin: 0; text-align: center; font-size: .95rem; opacity: .75;
}

/* responsive */
@media (max-width: 860px){
  .aa-footer__inner{
    grid-template-columns: 100%;
    text-align: left;
  }
  .aa-footer__brand{
    justify-self: start;
  }
}
/* --- footer socials --- */
.aa-footer__socials{
  display:flex; gap:10px; margin:14px 0 6px;
}
.aa-social{
  display:inline-grid; place-items:center;
  width:36px; height:36px; border-radius:50%;
  color:#234; background:#f4f7fb; border:1px solid #e8eef6;
  box-shadow: var(--shadow-sm);
  transition: transform .12s ease, box-shadow .12s ease, color .12s;
}
.aa-social:hover{
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
  color: var(--blue);
}

/* --- mini subscribe --- */
.aa-footer__miniform{ margin-top:8px; }
.aa-minirow{
  display:flex; gap:8px; align-items:center;
}
.aa-minirow input[type="email"]{
  flex:1 1 auto;
  padding:.65rem .8rem;
  border:2px solid rgba(0,0,0,.08);
  border-radius:12px;
  outline:none; background:#fff;
}
.aa-minirow input[type="email"]:focus{
  border-color: var(--green);
  box-shadow: 0 0 0 4px #e3f3e6;
}

.aa-mini-btn{
  padding:.65rem .9rem;
  border-radius:999px; border:0; cursor:pointer;
  color:#fff;
  background: linear-gradient(90deg, var(--green) 0%, var(--blue) 100%);
  box-shadow: 0 6px 18px rgba(0,0,0,.12), inset 0 -3px rgba(0,0,0,.15);
  font-weight:900;
}
.aa-mini-btn:hover{ transform: translateY(-1px); box-shadow: 0 10px 26px rgba(0,0,0,.16), inset 0 -3px rgba(0,0,0,.18); }

.aa-mini-note{
  display:block; margin-top:6px; font-size:.85rem; opacity:.65;
}

/* mobile stacking inside nav column */
@media (max-width: 860px){
  .aa-footer__socials{ margin-top:16px; }
  .aa-minirow{ flex-wrap:wrap; }
  .aa-minirow input[type="email"]{ min-width: 240px; }
}

/* ===== New full-width footer (3 columns + adventure pattern) ===== */
.aa-footer3{
  position: relative;
  overflow: hidden;
  background: #ffffff;
  border-top: 4px solid var(--green);
  margin-top: 2.2rem;
}
.aa-footer3__bg{
  position:absolute; inset:0;
  opacity:.7;
  background:
    /* subtle tiled SVG with tent, compass, trees, footprints */
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='220' height='140' viewBox='0 0 220 140'>\
<defs><style>\
.icon{fill:none;stroke:%23e7efe7;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}\
</style></defs>\
<!-- tent -->\
<path class='icon' d='M30 95 l30-45 30 45 M45 72 l30 45 M20 95 h80'/>\
<!-- compass -->\
<circle class='icon' cx='165' cy='38' r='18'/>\
<path class='icon' d='M165 22 v4 M165 50 v4 M149 38 h4 M177 38 h4 M165 28 l6 10 -10 6z'/>\
<!-- tree -->\
<path class='icon' d='M40 28 l12-12 12 12 -8 0 8 8 -8 0 8 8 H44 l8-8 -8 0 8-8z'/>\
<path class='icon' d='M52 44 v10'/>\
<!-- boot print -->\
<ellipse class='icon' cx='140' cy='96' rx='6' ry='10' transform='rotate(-20 140 96)'/>\
<ellipse class='icon' cx='155' cy='108' rx='5' ry='8' transform='rotate(-20 155 108)'/>\
</svg>") repeat;
  background-size: 440px auto; /* roomy, very subtle */
  pointer-events:none;
}
.aa-footer3__grid{
  position:relative;
  z-index:1;
  padding: 32px 16px 26px;
  display:grid;
  grid-template-columns: 1.6fr 1fr 1.2fr;
  gap: 28px 22px;
  align-items:start;
}
.aa-footer3__legal{
  position:relative; z-index:1;
  border-top:1px solid rgba(0,0,0,.06);
  background:#f8faf9;
  font-size:.95rem;
}
.aa-footer3__legal .container{ padding:10px 16px }

/* column bits */
.aa-foot__logo{ display:block; width:120px; height:120px; border-radius:50%; }
.aa-foot__h{
  font-family: Fredoka, system-ui, sans-serif;
  color: var(--green);
  margin: .4rem 0 .35rem;
  font-size: clamp(18px, 2.2vw, 20px);
}
.aa-foot__p{ margin:0; max-width:46ch; opacity:.9 }

/* nav list */
.aa-foot__list{ list-style:none; margin:.2rem 0 0; padding:0; display:grid; gap:.35rem }
.aa-foot__list a{
  text-decoration:none; color: var(--text); font-weight:700;
}
.aa-foot__list a:hover{ color: var(--blue) }

/* subscribe */
.aa-sub__form{ margin-top:.2rem }
.aa-sub__row{
  display:flex; gap:.6rem; align-items:center; flex-wrap:nowrap;  max-width: 600px; margin: auto;
}
.aa-sub__row input[type="email"]{
  flex:1 1 auto; min-width:240px;
  padding:.75rem .95rem; border-radius:14px;
  border:2px solid rgba(0,0,0,.08); background:#fff; outline:none;
}
.aa-sub__row input[type="email"]:focus{
  border-color: var(--green);
  box-shadow:0 0 0 4px #e3f3e6;
}
.aa-sub__btn{
  padding:.8rem 1.05rem; border-radius:999px; border:0; cursor:pointer;
  color:#fff; font-weight:900;
  background: linear-gradient(90deg, var(--green) 0%, var(--blue) 100%);
  box-shadow: 0 6px 18px rgba(0,0,0,.12), inset 0 -3px rgba(0,0,0,.15);
}
.aa-sub__btn:hover{ transform:translateY(-1px); box-shadow:0 10px 26px rgba(0,0,0,.16), inset 0 -3px rgba(0,0,0,.18) }
.aa-sub__agree{
  display:block; margin-top:.55rem; font-size:.9rem; opacity:.85;
}
.aa-sub__agree input{ margin-right:.4rem }

/* responsive: stack columns and keep visual hierarchy */
@media (max-width: 980px){
  .aa-footer3__grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px){
  .aa-footer3__grid{ grid-template-columns: 1fr; }
  .aa-foot__logo{ width:96px;height:96px }
  .aa-sub__row{ flex-wrap:wrap }
  .aa-sub__row input[type="email"]{ min-width:100% }
  .aa-sub__btn{ width:100% }
}

/* screen-reader only (duplicate kept for completeness) */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Top row above cover image */
.aa-post__topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin:.5rem 0 1rem;
}

/* Share button (pill) */
.aa-sharebtn{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.55rem .9rem;
  border-radius:999px; border:2px solid rgba(0,0,0,.08);
  background:#fff; color:var(--text);
  font-weight:700; cursor:pointer;
  box-shadow: var(--shadow-sm);
  transition: transform .12s ease, box-shadow .12s ease, color .12s ease;
}
.aa-sharebtn:hover{
  transform: translateY(-1px);
  box-shadow: var(--shadow-md);
  color: var(--blue);
}
.aa-sharebtn svg{ display:block }
