.hero-photo{object-position:center 43%;transform:scale(1.01)}

/* Optical icon alignment: one visual language, no font glyphs */
.hero-icon,.brand-compass,.weather-next,.near-button,.filter-toggle,.card-cta,.save-button,.more-discover{line-height:1}
.hero-icon svg,.brand-compass svg,.weather-next svg,.near-button svg,.filter-toggle svg,.card-cta svg,.save-button svg,.sort-chevron,.more-discover svg{display:block!important;transform-origin:50% 50%}
.hero-icon svg{transform:translateY(.25px)}
#heroSaved svg{transform:translateY(.7px)}
#heroMenu svg{transform:none}
.brand-compass svg{transform:translate(.2px,-.2px)}
.near-button svg{transform:translateY(-.3px)}
.filter-toggle svg{transform:translateY(-.2px)}
.weather-next svg{transform:translateX(.7px)}
.sort-chevron{transform:translateY(-50%)!important}
.results-section .card-cta svg{transform:translateX(1px)!important}
.results-section .save-button svg{transform:translateY(.4px)}

.weather-card{padding-right:50px!important}
.weather-days{align-items:stretch}
.weather-day{grid-template-rows:auto auto;align-content:center;justify-items:center;row-gap:7px}
.weather-day .weather-icon{display:flex!important;align-items:center!important;justify-content:center!important;flex:none}
.weather-day .weather-icon svg{width:100%!important;height:100%!important;display:block!important}
.weather-day__copy{min-width:0;width:100%}
.weather-day__copy b,.weather-day__copy strong,.weather-condition{white-space:nowrap}
.weather-day:first-child{grid-template-columns:52px minmax(0,1fr)!important;grid-template-rows:1fr!important;column-gap:12px!important}
.weather-day:first-child .weather-day__copy{min-width:0}
.weather-next{right:10px!important}

/* Cards: heart is the only save metaphor and all action icons share the same stroke */
.results-section .save-button,.dialog-star{color:#647064!important}
.results-section .save-button svg,.dialog-star svg{fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.results-section .save-button.is-saved svg,.dialog-star.is-saved svg{fill:currentColor!important}
.results-section .card-meta svg{stroke-width:1.65!important}

@media(max-width:720px){
  .hero-photo{object-position:50% 44%;transform:scale(1.015)}
  .weather-card{padding-right:40px!important}
  .weather-days{grid-template-columns:minmax(116px,1.45fr) repeat(3,minmax(62px,.82fr))!important}
  .weather-day{min-height:104px!important;padding:11px 5px!important;row-gap:5px!important}
  .weather-day .weather-icon{width:34px!important;height:34px!important;margin:0 auto!important}
  .weather-day:first-child{grid-template-columns:35px minmax(0,1fr)!important;column-gap:7px!important;padding:11px 9px!important}
  .weather-day:first-child .weather-icon{width:35px!important;height:35px!important}
  .weather-day__copy b{font-size:9px!important;margin-bottom:4px!important}
  .weather-day__copy strong{font-size:19px!important;line-height:1.05!important}
  .weather-day:first-child .weather-day__copy strong{font-size:29px!important}
  .weather-condition{font-size:7px!important;line-height:1.2!important;overflow:hidden;text-overflow:ellipsis}
  .weather-next{width:30px!important;height:30px!important;right:6px!important}
  .weather-next svg{width:16px!important;height:16px!important}
}

@media(max-width:430px){
  .hero-photo{object-position:50% 45%;transform:scale(1.02)}
  .weather-card{padding-right:36px!important}
  .weather-days{grid-template-columns:minmax(112px,1.5fr) repeat(3,minmax(58px,.76fr))!important}
  .weather-day{min-height:98px!important;padding:9px 4px!important}
  .weather-day .weather-icon{width:31px!important;height:31px!important}
  .weather-day:first-child{grid-template-columns:32px minmax(0,1fr)!important;column-gap:6px!important;padding:9px 7px!important}
  .weather-day:first-child .weather-icon{width:32px!important;height:32px!important}
  .weather-day__copy b{font-size:8px!important}
  .weather-day__copy strong{font-size:17px!important}
  .weather-day:first-child .weather-day__copy strong{font-size:27px!important}
  .weather-day:not(:first-child) .weather-condition{display:none!important}
}