.vp-home-header, .vp-home-main {
  --vp-lavender-50: var(--wp--preset--color--vp-lavender-50, #f6f2f9);
  --vp-lavender-100: var(--wp--preset--color--vp-lavender-100, #eee7f4);
  --vp-lavender-200: var(--wp--preset--color--vp-lavender-200, #dccfe8);
  --vp-lavender-600: var(--wp--preset--color--vp-lavender-600, #8f78a8);
  --vp-cream: var(--wp--preset--color--vp-cream, #faf8f5);
  --vp-text: var(--wp--preset--color--vp-text, #28242d);
  color: var(--vp-text);
  font-family: Arial, sans-serif;
  letter-spacing: 0;
}
.vp-home-header *, .vp-home-main * { box-sizing: border-box; }
.vp-home-header a, .vp-home-main a { color: inherit; }
.vp-home-header :focus-visible, .vp-home-main :focus-visible { outline: 2px solid #67507f; outline-offset: 5px; }
.vp-home-header { background: #fdfcfe; }
.vp-home-header__inner {
  display: grid;
  grid-template-columns: minmax(0,1fr) 240px minmax(0,1fr);
  align-items: center;
  min-height: 100px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 12px 48px;
  position: relative;
  gap: 20px;
}
.vp-home-header .vp-home-header__inner > * { margin: 0; min-width: 0; }
.vp-home-nav, .vp-home-nav .wp-block-navigation__container { gap: 28px; }
.vp-home-nav a { text-decoration: none; font-size: 12px; text-transform: uppercase; font-weight: 500; padding-block: 14px; }
.vp-home-nav a:hover { text-decoration: underline; text-underline-offset: 5px; }
.vp-home-brand.wp-block-site-title { width: 155px; justify-self: center; font: 400 31px/1.05 Georgia,serif; text-transform: uppercase; text-align: center; }
.vp-home-brand a { text-decoration: none; }
.vp-home-header .vp-brand-lockup { display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; gap: 12px; width: 100%; }
.vp-home-header .vp-brand-lockup > * { margin: 0; flex-shrink: 0; }
.vp-brand-lockup .wp-block-site-logo img { display: block; width: 64px; height: 64px; object-fit: contain; }
.vp-home-actions { display: flex; justify-content: end; gap: 8px; }
.vp-home-actions .wp-block-search__button, .vp-home-actions .wc-block-mini-cart__button, .vp-preview-icon { display: inline-flex; justify-content: center; align-items: center; width: 44px; min-height: 44px; padding: 9px; color: var(--vp-text); background: transparent; border: 0; border-radius: 0; cursor: pointer; }
.vp-home-actions .wp-block-search__button svg, .vp-home-actions .wc-block-mini-cart__button svg, .vp-preview-icon img { width: 24px; height: 24px; }
.vp-home-nav .wp-block-navigation__responsive-container-open, .vp-home-nav .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
.vp-home-search.wp-block-search { width: auto; }
.vp-home-search .wp-block-search__inside-wrapper { padding: 0; }
.vp-home-search .wp-block-search__input { max-width: 170px; font-size: 16px; }
.vp-home-main { margin-block-start: 0; background: var(--vp-cream); }
.vp-home-main.wp-block-group > * { margin-block: 0; }
.vp-home-main .vp-hero { width: 100%; height: min(590px,64svh); min-height: 360px; margin: 0; overflow: hidden; background: var(--vp-lavender-100); }
.vp-home-main .vp-hero img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 58%; }
.vp-pillars { background: var(--vp-lavender-100); padding: 36px 48px; }
.vp-pillars .vp-pillars__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; max-width: 1200px; margin: 0 auto; }
.vp-pillar { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 4px 20px; min-height: 140px; min-width: 0; }
.vp-pillar + .vp-pillar { border-left: 1px solid var(--vp-lavender-200); }
.vp-pillar figure { margin: 0; }
.vp-pillar img { display: block; width: 38px; height: 38px; opacity: .62; }
.vp-pillar .wp-block-heading { font: 500 13px/1.5 Arial,sans-serif; text-transform: uppercase; margin: 0; }
.vp-pillar a { text-decoration: none; }
.vp-pillar a::after { content: ""; position: absolute; inset: 0; }
.vp-pillar::after { content: ""; width: 18px; height: 18px; background: url("assets/arrow-right.svg") center / contain no-repeat; }
.vp-pillar:hover { background: var(--vp-lavender-50); }
.vp-pillar:focus-within { outline: 2px solid #67507f; outline-offset: -2px; }
.vp-favorites { padding: 44px 48px 72px; }
.vp-favorites .vp-section-title { margin: 0 0 32px; font: 400 34px/1.2 Georgia,serif; text-align: center; color: var(--vp-text); }
.vp-favorites__products { max-width: 1200px; margin: 0 auto; }
.vp-home-main .vp-favorites .vp-favorites__products .wc-block-grid__products { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); list-style: none; gap: 26px; margin: 0; padding: 0; }
.vp-home-main .vp-favorites__products .wc-block-grid__products .wc-block-grid__product { border: 0; min-width: 0; max-width: none; width: auto; margin: 0; padding: 0; text-align: left; }
.vp-favorites__products .wc-block-grid__product-link { display: block; text-decoration: none; }
.vp-favorites__products .wc-block-grid__product-image { margin: 0 0 15px; }
.vp-favorites__products .wc-block-grid__product-image img { display: block; aspect-ratio: 1; width: 100%; height: auto; object-fit: contain; background: #f4f3f2; }
.vp-favorites__products .wc-block-grid__product-title { font: 400 14px/1.5 Arial,sans-serif; min-height: 42px; margin: 0 0 8px; overflow-wrap: anywhere; }
.vp-favorites__products .wc-block-grid__product-price { font: 400 14px/1.6 Arial,sans-serif; margin: 0; }
.vp-favorites__products .wc-block-grid__product-onsale { display: none; }
@media (max-width: 1024px) {
  .vp-home-header__inner { padding-inline: 24px; }
  .vp-home-nav, .vp-home-nav .wp-block-navigation__container { gap: 14px; }
  .vp-home-nav a { font-size: 11px; }
}
@media (max-width: 900px) {
  .vp-home-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .vp-home-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
  .vp-home-nav .is-menu-open { padding: 28px; background: #f6f2f9; }
  .vp-home-nav .is-menu-open a { font-size: 20px; }
  .vp-favorites { padding-inline: 24px; }
  .vp-home-main .vp-favorites .vp-favorites__products .wc-block-grid__products { gap: 18px; }
}
@media (max-width: 600px) {
  .vp-home-header__inner { min-height: 82px; padding: 10px 12px; grid-template-columns: 88px minmax(0,1fr) 88px; gap: 4px; }
  .vp-home-header .vp-brand-lockup { gap: 6px; }
  .vp-brand-lockup .wp-block-site-logo img { width: 42px; height: 42px; }
  .vp-home-brand.wp-block-site-title { width: 102px; font-size: 22px; }
  .vp-home-actions { gap: 0; }
  .vp-home-main .vp-hero { height: 460px; min-height: 0; max-height: 66svh; }
  .vp-home-main .vp-hero img { object-position: 58% 58%; }
  .vp-pillars { padding: 12px 24px; }
  .vp-pillars .vp-pillars__grid { grid-template-columns: minmax(0,1fr); }
  .vp-pillar { flex-direction: row; justify-content: start; min-height: 86px; padding: 12px 8px; gap: 20px; }
  .vp-pillar + .vp-pillar { border-left: 0; border-top: 1px solid var(--vp-lavender-200); }
  .vp-pillar img { width: 30px; height: 30px; }
  .vp-pillar::after { margin-left: auto; }
  .vp-favorites { padding: 38px 20px 48px; }
  .vp-favorites .vp-section-title { font-size: 27px; margin-bottom: 26px; }
  .vp-home-main .vp-favorites .vp-favorites__products .wc-block-grid__products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 16px; }
  .vp-favorites__products .wc-block-grid__product-title { font-size: 13px; min-height: 59px; }
  .vp-favorites__products .wc-block-grid__product-price { font-size: 13px; }
  .vp-home-search .wp-block-search__input { max-width: 100%; }
  .vp-home-search.wp-block-search__searchfield-hidden .wp-block-search__input { display: none; }
  .vp-home-search:not(.wp-block-search__searchfield-hidden) { position: absolute; left: 12px; right: 12px; top: 82px; z-index: 5; background: #fff; padding: 12px; box-shadow: 0 3px 6px #28242d12; }
}
