/* WordPress block wrappers: retain the approved design. */
.wp-site-blocks { padding: 0; }
.wp-site-blocks > *, .wp-block-post-content > *, .wp-block-group > * { margin-block-start: 0; }
.wp-block-post-content { max-width: none; }
.wp-block-image { margin: 0; }
.wp-block-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: inherit; }
.hero-image { width: 100%; margin: 0; }
.hero-image img { object-position: center 52%; }
.wp-block-buttons { display: flex; flex-wrap: wrap; gap: .75rem; }
.wp-block-button { margin-top: .8rem; }
.wp-block-button__link { display: inline-block; border: 0; border-radius: 999px; background: var(--red); color: white; padding: .9rem 1.25rem; font-family: var(--sans); font-weight: 800; line-height: 1.65; text-align: center; text-decoration: none; }
.site-header .wp-block-image { flex-shrink: 0; }
.site-header .brand-logo img, .footer-brand .footer-logo img { height: auto; border-radius: .2rem; }
.sgs-header-shell { position: absolute; top: 0; left: 0; width: 100%; z-index: 10; }
.site-header { position: relative; }
.sgs-header-shell .wp-block-group { margin: 0; }
.sgs-navigation { margin: -.6rem 0 0; align-self: flex-start; gap: .4rem; font-family: var(--sans); }
.sgs-navigation .wp-block-navigation__container { gap: .4rem; }
.sgs-navigation .wp-block-navigation-item__content { display: inline-block; padding: .65rem .65rem; border: 1px solid rgba(255,255,255,.75); border-radius: 999px; font-size: .82rem; font-weight: 700; white-space: nowrap; }
.sgs-navigation .wp-block-navigation__responsive-container.is-menu-open { background: var(--green-deep); color: white; }
.sgs-navigation .wp-block-navigation__responsive-container-open { color: white; }
.sgs-navigation .wp-block-navigation__responsive-container-open svg { width: 32px; height: 32px; }
.hero .wp-block-heading { font-weight: 500; }
.offer-card > .wp-block-image { width: 100%; }
.offer-card > .wp-block-image img { height: 290px; }
.tree-photos > figure { margin: 0; }
.tree-photos > figure img { height: 100%; width: 100%; object-fit: cover; object-position: inherit; }
.hamper-gallery > .wp-block-image { width: 100%; }
.hamper-gallery .hamper-main img { height: 100%; }
.preserves-grid > .wp-block-image { height: 480px; }
.preserves-grid figcaption { margin: 0; color: var(--ink); font-size: 1rem; }
.delivery-photo { margin: 0; }
.delivery-photo img { height: 100%; object-position: inherit; }
.delivery-background[style] { background-size: cover; background-repeat: no-repeat; background-position: center 84%; }
.order > .wp-block-image { width: 100%; margin: 0; }
.order > .wp-block-image img { height: 100%; object-position: center 35%; }
.order-columns { margin-inline: auto; }
.opening-hours .hours-row { padding: 1rem 0; border-bottom: 1px solid #d8ccb8; margin-bottom: 0; }
.form-actions .wp-block-button { margin-top: 0; }
.shopping-grid .offer-card > .wp-block-image img { height: 310px; }
.sgs-footer-shell { display: block; padding: 0; background: transparent; }
.sgs-footer-shell > footer { display: flex; }
.footer-brand { flex-shrink: 0; }
.footer-brand p { font-weight: 700; }
.sgs-page-shell { max-width: 1180px; margin: auto; padding: 3rem 20px 6rem; min-height: 60vh; }
.sgs-inner-header { position: relative; background: var(--green-deep); }
.admin-bar .sgs-header-shell:not(.sgs-inner-header) { top: 32px; }
.sgs-wordpress .hero-intro { margin-bottom: 1rem; }
@media (max-width: 1000px) {
  .site-header { gap: .75rem; }
  .sgs-navigation .wp-block-navigation-item__content { padding-inline: .5rem; font-size: .75rem; }
}
@media (max-width: 850px) {
  .site-header { justify-content: space-between; }
  .sgs-navigation { margin-top: 0; margin-left: auto; align-self: center; }
  .sgs-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container { flex-wrap: wrap; }
  .sgs-navigation a:not(.nav-cta) { display: inline-block; }
  .preserves-grid > .wp-block-image { height: 390px; }
  .shopping-grid .offer-card > .wp-block-image img { height: auto; aspect-ratio: 4 / 3; }
  .shopping-grid .offer-card > .santa-night-photo img { aspect-ratio: 4 / 5; }
  .sgs-footer-shell > footer { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 600px) {
  .sgs-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .sgs-navigation .wp-block-navigation__responsive-container-open { display: flex; }
  .admin-bar .sgs-header-shell:not(.sgs-inner-header) { top: 46px; }
  .sgs-navigation .wp-block-navigation__responsive-container.is-menu-open a { display: inline-block; }
  .preserves-grid > .wp-block-image { height: 430px; }
  .sgs-wordpress .hero-actions .wp-block-button { max-width: 100%; }
  .sgs-wordpress .hero-actions .wp-block-button__link { font-size: .95rem; }
}
