
/* Seasonal Discoveries — page-seasonal-discoveries.
   Southern-hemisphere seasons, HU palette with one accent per season. */
#page-seasonal-discoveries{ background:#fff !important; font-family:'Nunito',system-ui,sans-serif;
  --sd-navy:#243447; --sd-ink:#2D2D2D; --sd-mute:#5A6472; --sd-faint:#8A93A0;
  --sd-line:rgba(18,33,58,.10); --sd-line2:rgba(18,33,58,.2); --sd-mist:#FAFBF9;
  --sd-acc:#5C8582; --sd-acc-soft:#EAF2F1; }
#page-seasonal-discoveries *{ box-sizing:border-box; }
#page-seasonal-discoveries[data-season="sum"]{ --sd-acc:#C98A2E; --sd-acc-soft:#FBF2E2; }
#page-seasonal-discoveries[data-season="aut"]{ --sd-acc:#A8663C; --sd-acc-soft:#F8EDE5; }
#page-seasonal-discoveries[data-season="win"]{ --sd-acc:#5C8582; --sd-acc-soft:#EAF2F1; }
#page-seasonal-discoveries[data-season="spr"]{ --sd-acc:#6F9272; --sd-acc-soft:#EEF4EC; }

.sd-wrap{ max-width:1180px; margin:0 auto; padding:0 20px 80px; }
.sd-banner{ background:linear-gradient(135deg,var(--sd-acc-soft) 0%,#FDFDFB 100%); border-bottom:1px solid var(--sd-line); }
.sd-banner-in{ max-width:1180px; margin:0 auto; padding:26px 20px 24px; }
.sd-eb{ font-size:.68rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; margin:0 0 6px;
  color:var(--sd-acc) !important; -webkit-text-fill-color:var(--sd-acc) !important; }
.sd-h1{ font-family:'Playfair Display',Georgia,serif; font-weight:700; font-size:clamp(1.7rem,3.2vw,2.4rem);
  line-height:1.1; margin:0 0 8px; color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-lede{ margin:0 0 16px; font-size:.98rem; line-height:1.65; max-width:64ch;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }
.sd-acts{ display:flex; flex-wrap:wrap; gap:10px; }
.sd-btn{ cursor:pointer; font-family:inherit; font-size:.86rem; font-weight:800; border-radius:999px;
  padding:11px 20px; min-height:44px; border:1px solid var(--sd-line2); background:#fff;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; transition:.16s; }
.sd-btn:hover{ background:var(--sd-acc-soft); border-color:var(--sd-acc); }
.sd-btn.is-primary{ background:var(--sd-navy); border-color:var(--sd-navy);
  color:#fff !important; -webkit-text-fill-color:#fff !important; }
.sd-btn.is-sm{ padding:8px 14px; font-size:.79rem; min-height:38px; }
.sd-btn:focus-visible,.sd-chip:focus-visible,.sd-seas:focus-visible,.sd-item:focus-visible{ outline:3px solid #CF9E3F; outline-offset:2px; }

/* season switcher */
.sd-seasons{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:18px 0 0; }
.sd-seas{ cursor:pointer; font-family:inherit; border:1px solid var(--sd-line); border-radius:16px; padding:12px 10px;
  background:#fff; text-align:center; transition:.16s; }
.sd-seas:hover{ border-color:var(--sd-acc); background:var(--sd-acc-soft); }
.sd-seas.is-on{ background:var(--sd-navy); border-color:var(--sd-navy); }
.sd-seas-e{ display:block; font-size:1.25rem; }
.sd-seas-n{ display:block; font-size:.86rem; font-weight:800; margin-top:3px;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-seas-m{ display:block; font-size:.7rem; margin-top:1px;
  color:var(--sd-faint) !important; -webkit-text-fill-color:var(--sd-faint) !important; }
.sd-seas.is-on .sd-seas-n,.sd-seas.is-on .sd-seas-m{ color:#fff !important; -webkit-text-fill-color:#fff !important; }
.sd-now{ display:inline-block; margin-top:2px; font-size:.62rem; font-weight:800; letter-spacing:.08em;
  text-transform:uppercase; border-radius:999px; padding:2px 8px; background:var(--sd-acc-soft);
  color:var(--sd-acc) !important; -webkit-text-fill-color:var(--sd-acc) !important; }
.sd-seas.is-on .sd-now{ background:rgba(255,255,255,.2); color:#fff !important; -webkit-text-fill-color:#fff !important; }

/* sections */
.sd-sec{ margin-top:38px; }
.sd-h2{ font-family:'Playfair Display',Georgia,serif; font-weight:700; font-size:1.3rem; margin:0 0 4px;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-sub{ margin:0 0 16px; font-size:.9rem; line-height:1.65; max-width:76ch;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }
.sd-card{ background:#fff; border:1px solid var(--sd-line); border-radius:20px; padding:20px; }
.sd-card.is-tint{ background:var(--sd-mist); }

/* filters */
.sd-tools{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:14px; }
.sd-search{ flex:1 1 240px; min-width:0; border:1.5px solid var(--sd-line); border-radius:14px; padding:11px 14px;
  font-family:inherit; font-size:.92rem; background:var(--sd-mist); color:var(--sd-navy); min-height:44px; }
.sd-search:focus{ outline:none; border-color:var(--sd-acc); background:#fff; }
.sd-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.sd-chip{ cursor:pointer; font-family:inherit; font-size:.8rem; font-weight:700; border-radius:999px; padding:8px 14px;
  min-height:40px; border:1px solid var(--sd-line); background:#fff;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-chip:hover{ background:var(--sd-acc-soft); border-color:var(--sd-acc); }
.sd-chip.is-on{ background:var(--sd-navy); border-color:var(--sd-navy); color:#fff !important; -webkit-text-fill-color:#fff !important; }

/* produce grid */
.sd-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.sd-item{ cursor:pointer; text-align:left; font-family:inherit; width:100%; background:#fff;
  border:1px solid var(--sd-line); border-radius:18px; padding:16px; transition:.18s; display:flex; flex-direction:column; }
.sd-item:hover{ transform:translateY(-2px); border-color:var(--sd-acc); box-shadow:0 12px 30px rgba(36,52,71,.09); }
.sd-item-top{ display:flex; align-items:center; gap:10px; margin-bottom:9px; }
.sd-item-e{ font-size:1.5rem; }
.sd-item-n{ font-size:.98rem; font-weight:800; line-height:1.25;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-item-m{ font-size:.72rem; font-weight:700; margin-bottom:8px;
  color:var(--sd-acc) !important; -webkit-text-fill-color:var(--sd-acc) !important; }
.sd-item-d{ font-size:.82rem; line-height:1.55; margin:0;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }
.sd-item-f{ margin-top:auto; padding-top:10px; font-size:.72rem; font-weight:800; letter-spacing:.06em;
  text-transform:uppercase; color:var(--sd-faint) !important; -webkit-text-fill-color:var(--sd-faint) !important; }
.sd-star{ margin-left:auto; font-size:1rem; color:var(--sd-acc); }

/* peak strip */
.sd-peak{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.sd-peak-c{ border:1px solid var(--sd-line); border-radius:18px; padding:18px; background:var(--sd-acc-soft); }
.sd-peak-e{ font-size:1.7rem; display:block; margin-bottom:6px; }
.sd-peak-n{ font-size:1rem; font-weight:800; margin:0 0 4px;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-peak-d{ font-size:.83rem; line-height:1.55; margin:0;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }

/* generic list rows */
.sd-row{ border:1px solid var(--sd-line); border-radius:16px; padding:15px 17px; background:#fff; }
.sd-row + .sd-row{ margin-top:10px; }
.sd-row-t{ font-size:.94rem; font-weight:800; margin:0 0 4px;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-row-d{ font-size:.85rem; line-height:1.6; margin:0;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }
.sd-swap{ display:grid; grid-template-columns:1fr auto 1fr; gap:12px; align-items:center; margin-bottom:8px; }
.sd-swap-a{ font-size:.88rem; font-weight:700; color:var(--sd-faint) !important; -webkit-text-fill-color:var(--sd-faint) !important;
  text-decoration:line-through; }
.sd-swap-x{ color:var(--sd-acc); font-weight:800; }
.sd-swap-b{ font-size:.94rem; font-weight:800; color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }

/* nourish */
.sd-nour-list{ margin:12px 0 0; padding-left:20px; }
.sd-nour-list li{ font-size:.88rem; line-height:1.7; margin-bottom:6px;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }

/* year table */
.sd-year-scroll{ overflow-x:auto; border:1px solid var(--sd-line); border-radius:18px; background:#fff; }
.sd-year{ width:100%; border-collapse:collapse; font-size:.85rem; min-width:620px; }
.sd-year th,.sd-year td{ text-align:left; padding:11px 15px; border-bottom:1px solid #F0EDE6; vertical-align:top; }
.sd-year thead th{ background:var(--sd-mist); font-size:.66rem; letter-spacing:.11em; text-transform:uppercase; font-weight:800;
  color:var(--sd-acc) !important; -webkit-text-fill-color:var(--sd-acc) !important; white-space:nowrap; }
.sd-year tbody th{ font-weight:800; white-space:nowrap;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-year tbody td{ color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }
.sd-year tbody tr:last-child th,.sd-year tbody tr:last-child td{ border-bottom:none; }
.sd-year tr.is-now th,.sd-year tr.is-now td{ background:var(--sd-acc-soft); }

/* sheet */
.sd-sheet-bg{ position:fixed; inset:0; background:rgba(20,30,40,.44); z-index:200000; display:flex;
  align-items:center; justify-content:center; padding:20px; }
.sd-sheet{ background:#fff; border-radius:24px; width:100%; max-width:600px; max-height:88vh; overflow-y:auto;
  padding:24px; box-shadow:0 30px 80px rgba(20,30,40,.3); }
.sd-sheet-h{ display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:6px; }
.sd-sheet-x{ cursor:pointer; border:1px solid var(--sd-line); background:#fff; border-radius:50%;
  width:38px; height:38px; font-size:1.1rem; line-height:1; flex:none;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-def{ margin-top:16px; }
.sd-def dt{ font-size:.66rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; margin-bottom:4px;
  color:var(--sd-acc) !important; -webkit-text-fill-color:var(--sd-acc) !important; }
.sd-def dd{ margin:0 0 14px; font-size:.88rem; line-height:1.65;
  color:var(--sd-mute) !important; -webkit-text-fill-color:var(--sd-mute) !important; }
.sd-taglist{ display:flex; flex-wrap:wrap; gap:7px; }
.sd-tagx{ display:inline-block; border-radius:999px; padding:4px 11px; font-size:.76rem; font-weight:700;
  background:var(--sd-acc-soft); color:var(--sd-acc) !important; -webkit-text-fill-color:var(--sd-acc) !important; }
.sd-sheet-foot{ display:flex; gap:10px; flex-wrap:wrap; margin-top:18px; }
.sd-note{ font-size:.8rem; line-height:1.6; margin:12px 0 0;
  color:var(--sd-faint) !important; -webkit-text-fill-color:var(--sd-faint) !important; }
.sd-safety{ margin-top:14px; border:1px dashed var(--sd-acc); border-radius:14px; padding:13px 16px;
  background:var(--sd-acc-soft); font-size:.83rem; line-height:1.6;
  color:var(--sd-navy) !important; -webkit-text-fill-color:var(--sd-navy) !important; }
.sd-empty{ font-size:.86rem; font-style:italic; color:var(--sd-faint) !important; -webkit-text-fill-color:var(--sd-faint) !important; }

@media (max-width:1024px){ .sd-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); } .sd-peak{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px){
  .sd-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sd-seasons{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sd-sheet{ max-width:none; border-radius:22px 22px 0 0; align-self:flex-end; max-height:92vh; }
  .sd-sheet-bg{ padding:0; align-items:flex-end; }
  .sd-swap{ grid-template-columns:1fr; gap:4px; }
  .sd-swap-x{ display:none; }
}
@media (max-width:420px){ .sd-grid,.sd-peak{ grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:reduce){ #page-seasonal-discoveries *{ transition:none !important; } .sd-item:hover{ transform:none; } }

/* The back bar that leads the page (Aug 2026). Sits above the banner so the
   way out is the first thing on the page, not the fourth chip in a row of
   section jumps. */
#page-seasonal-discoveries .sd-backbar{
  max-width:1180px; margin:0 auto; padding:14px clamp(16px,4vw,30px) 0;
  display:flex; gap:10px; flex-wrap:wrap;
}
#page-seasonal-discoveries .sd-back{
  display:inline-flex; align-items:center; gap:8px; min-height:44px;
}
#page-seasonal-discoveries .sd-back svg{
  width:17px; height:17px; flex:none; stroke:currentColor; fill:none;
  stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round;
}
