.wtt-seasonal-weather{
  --wtt-wx-ink:var(--heading-color,#141414);
  --wtt-wx-muted:rgba(var(--font-color-rgb,87,87,87),.85);
  --wtt-wx-line:rgba(var(--heading-color-rgb,20,20,20),.1);
  --wtt-wx-surface:#f7f5f3;
  --wtt-wx-accent:var(--primary-color,#E79372);
  --wtt-wx-font:var(--primary-font,Work Sans,sans-serif);
  margin:0 0 1.5em;
  padding:1rem 0 0.35rem;
  border-top:1px solid var(--wtt-wx-line);
  border-bottom:1px solid var(--wtt-wx-line);
  color:var(--wtt-wx-ink);
  font-family:var(--wtt-wx-font);
  box-sizing:border-box;
}
.wtt-seasonal-weather__header{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:0.45rem;
  margin:0 0 0.95rem;
}
.wtt-seasonal-weather__header:empty{
  display:none;
  margin:0;
}
.wtt-seasonal-weather__heading{
  margin:0;
  font-family:var(--secondary-font,Ovo,serif);
  font-size:1.05rem;
  font-weight:400;
  letter-spacing:0.01em;
  color:var(--wtt-wx-ink);
  line-height:1.3;
}
.wtt-seasonal-weather__current{
  margin:0;
  font-size:0.88rem;
  font-weight:500;
  color:var(--wtt-wx-muted);
  line-height:1.35;
}
.wtt-seasonal-weather__alert{
  margin:0;
  max-width:42rem;
  padding:0.45rem 0.65rem;
  font-size:0.86rem;
  font-weight:500;
  line-height:1.4;
  border-left:3px solid transparent;
}
.wtt-seasonal-weather__alert[data-side="hot"][data-level="unusual"]{
  color:#7a4a00;
  background:#fff6e8;
  border-left-color:#e0a020;
}
.wtt-seasonal-weather__alert[data-side="hot"][data-level="extreme"]{
  color:#6b1c12;
  background:#fdecea;
  border-left-color:#c0392b;
}
.wtt-seasonal-weather__alert[data-side="cold"][data-level="unusual"]{
  color:#1a4a6b;
  background:#eaf4fb;
  border-left-color:#3a8ec7;
}
.wtt-seasonal-weather__alert[data-side="cold"][data-level="extreme"]{
  color:#0f2f5c;
  background:#e3eefc;
  border-left-color:#1d4f91;
}
.wtt-seasonal-weather__card.is-current-season{
  box-shadow:inset 0 0 0 1px rgba(var(--heading-color-rgb,20,20,20),.18);
}
.wtt-seasonal-weather__city-picker{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:0.35rem 0.65rem;
  width:100%;
}
.wtt-seasonal-weather__city-label{
  flex:0 0 auto;
  font-size:0.78rem;
  font-weight:500;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--wtt-wx-muted);
  line-height:1.4;
}
.wtt-seasonal-weather__cities{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0.15rem 0;
  min-width:0;
}
/* Beat theme button styles (especially mobile entry-content button rules). */
.entry-content .wtt-seasonal-weather button.wtt-seasonal-weather__city,
.wtt-seasonal-weather button.wtt-seasonal-weather__city{
  appearance:none;
  -webkit-appearance:none;
  display:inline;
  margin:0;
  padding:0.2rem 0;
  min-height:0;
  width:auto;
  max-width:none;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  font-family:var(--wtt-wx-font);
  font-size:0.92rem;
  font-weight:500;
  line-height:1.4;
  letter-spacing:normal;
  text-transform:none;
  text-align:left;
  color:var(--wtt-wx-muted);
  cursor:pointer;
  text-decoration:none;
}
.entry-content .wtt-seasonal-weather button.wtt-seasonal-weather__city:hover,
.entry-content .wtt-seasonal-weather button.wtt-seasonal-weather__city:focus,
.entry-content .wtt-seasonal-weather button.wtt-seasonal-weather__city:focus-visible,
.wtt-seasonal-weather button.wtt-seasonal-weather__city:hover,
.wtt-seasonal-weather button.wtt-seasonal-weather__city:focus,
.wtt-seasonal-weather button.wtt-seasonal-weather__city:focus-visible{
  color:var(--wtt-wx-ink);
  background:transparent;
  box-shadow:none;
  outline:none;
}
.entry-content .wtt-seasonal-weather button.wtt-seasonal-weather__city.is-active,
.wtt-seasonal-weather button.wtt-seasonal-weather__city.is-active{
  color:var(--wtt-wx-ink);
  background:transparent;
  cursor:default;
}
.wtt-seasonal-weather__city-name{
  border-bottom:1px solid transparent;
  transition:border-color .15s ease;
}
.wtt-seasonal-weather__city.is-active .wtt-seasonal-weather__city-name{
  border-bottom-color:var(--wtt-wx-accent);
}
.wtt-seasonal-weather__city-sep{
  display:inline-block;
  margin:0 0.5rem;
  color:rgba(var(--font-color-rgb,87,87,87),.45);
  font-weight:400;
  pointer-events:none;
  user-select:none;
}
.wtt-seasonal-weather.is-loading .wtt-seasonal-weather__grid{
  opacity:0.55;
  transition:opacity .2s ease;
}
.wtt-seasonal-weather__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0.75rem;
}
@media (min-width:640px){
  .wtt-seasonal-weather__grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1rem;
  }
}
.wtt-seasonal-weather__card{
  display:flex;
  flex-direction:column;
  background:var(--wtt-wx-surface);
  padding:0.85rem 0.75rem;
  min-width:0;
}
.wtt-seasonal-weather__title{
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:0.35rem;
  row-gap:0.1rem;
  align-items:center;
  margin:0 0 0.35rem;
}
.wtt-seasonal-weather__emoji{
  grid-row:1 / -1;
  align-self:start;
  flex:0 0 auto;
  font-size:1rem;
  line-height:1.25;
  font-style:normal;
  /* Pin to system emoji fonts. Parent Work Sans has no emoji glyphs;
     on mobile Safari the webfont swap can blank these after first paint. */
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
  font-variant-emoji:emoji;
}
.entry-content .wtt-seasonal-weather .wtt-seasonal-weather__emoji,
.wtt-seasonal-weather .wtt-seasonal-weather__emoji{
  width:auto;
  height:auto;
  max-width:none;
  font-size:1rem;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
}
/* If wp-emoji swaps characters for Twemoji <img>, keep them visible/sized. */
.entry-content .wtt-seasonal-weather .wtt-seasonal-weather__emoji img.emoji,
.wtt-seasonal-weather .wtt-seasonal-weather__emoji img.emoji{
  display:inline-block !important;
  width:1em !important;
  height:1em !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  vertical-align:-0.1em;
  visibility:visible !important;
  opacity:1 !important;
}
.wtt-seasonal-weather__name{
  grid-row:1;
  grid-column:2;
  min-width:0;
  font-size:0.95rem;
  font-weight:600;
  line-height:1.25;
}
.wtt-seasonal-weather__months{
  grid-row:2;
  grid-column:2;
  margin:0;
  padding:0;
  font-size:0.72rem;
  font-weight:500;
  letter-spacing:0.02em;
  color:var(--wtt-wx-muted);
  line-height:1.2;
}
.wtt-seasonal-weather__temps{
  font-size:1.05rem;
  font-weight:600;
  margin:0 0 0.25rem;
  letter-spacing:-0.01em;
}
.wtt-seasonal-weather__blurb{
  font-size:0.85rem;
  line-height:1.35;
  color:var(--wtt-wx-muted);
  margin:0;
}
.wtt-seasonal-weather__details{
  display:inline-block;
  margin-top:auto;
  padding-top:0.55rem;
  font-size:0.8rem;
  font-weight:600;
  letter-spacing:0.01em;
  color:var(--wtt-wx-ink);
  text-decoration:underline;
  text-underline-offset:2px;
}
.wtt-seasonal-weather__details:hover,
.wtt-seasonal-weather__details:focus{
  color:var(--wtt-wx-accent);
}
