/* A real page should be intentional with or without optional media. */
body.svp-brand-only #hero-carousel {
  min-height: 208px;
  height: 240px;
  background: linear-gradient(125deg, #211436, #513195 68%, #7653bb);
  isolation: isolate;
}
body.wknd-owner-nudge-reserved #svp-owner-profile-nudge-slot { min-height: 134px; }
body.svp-brand-only #hero-carousel::before {
  content: "";
  position: absolute;
  width: 270px;
  height: 270px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  top: -140px;
  right: -55px;
  box-shadow: 0 0 0 48px rgba(255,255,255,.035), 0 0 0 96px rgba(255,255,255,.025);
  pointer-events: none;
}
body.svp-brand-only #carousel-inner,
body.svp-brand-only #carousel-dots,
body.svp-brand-only #hero-photos-pill { display: none !important; }
body.svp-brand-only .fsvp-hero-overlay { background: none; }
body.svp-brand-only #avatar-wrap { backdrop-filter: none; }
.svp-brand-logo #avatar-placeholder { display: none !important; }
.svp-brand-initials { display: grid; place-items: center; width: 100%; height: 100%; font-size: 22px; font-weight: 800; color: #fff; }
body.svp-brand-only #bio-section { padding-top: 24px; }
body.svp-no-gallery:not(.wknd-owner-full-profile) #photos-section,
body.svp-no-gallery #hero-photos-pill { display: none !important; }
body.svp-single-intro #svp-bio-pull,
body.svp-single-location #svp-proof-nums,
body.svp-no-upcoming #events-section { display: none !important; }
/* The native photo counter and TOC were a second, floating navigation system.
   The portfolio rail is the persistent customer index; media remains in-flow. */
body #hero-photos-pill,
body #svp-toc-fab { display: none !important; }
#svp-main .svp-profile-sections:not(.vp-shopper-nav) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin: 0 20px 24px;
  padding: 12px 0;
  border-block: 1px solid var(--maker-line, #e4ddd2);
}
#svp-main .svp-profile-sections:not(.vp-shopper-nav) a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #f4edf8;
  color: var(--maker-plum, #5f4387);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
#svp-main .svp-profile-sections:not(.vp-shopper-nav) a:hover { background: #eae0f3; }
#svp-main .svp-profile-sections:not(.vp-shopper-nav) a:focus-visible {
  outline: 2px solid var(--maker-plum, #5f4387);
  outline-offset: 3px;
}
#svp-main #eco-latest-public {
  margin: 0 0 24px;
  padding: 24px 20px;
  border-top: 1px solid var(--maker-line, #e4ddd2);
  font-family: var(--wknd-public-sans, inherit);
  scroll-margin-top: 100px;
  --eco-ink: var(--maker-ink, #29243a);
  --eco-muted: #675d70;
  --eco-line: var(--maker-line, #e4ddd2);
  --eco-card: #fffdf8;
  --eco-violet: var(--maker-plum, #5f4387);
}
#svp-main #eco-latest-public .eco-latest-head { margin-bottom: 10px; }
#svp-main #eco-latest-public .eco-public-note { font-size: 13px; line-height: 1.6; }
#svp-main #eco-latest-public .eco-social-card { border-radius: 16px 5px 16px 5px; }
#svp-main #eco-latest-public .eco-social-slot { background: #f4edf8; }
#svp-main #eco-latest-public .eco-button-soft,
#svp-main #eco-latest-public .eco-button-primary {
  min-height: 44px;
}
#svp-main #eco-latest-public iframe { max-width: 100%; }
#svp-main .eco-highlight-provenance {
  grid-column: 1 / -1;
  margin: 0 0 4px;
  color: #675d70;
  font-size: 13px;
  line-height: 1.6;
}
.eco-curated-source {
  display: block;
  padding: 10px 12px 0;
  color: #675d70;
  font-size: 11px;
  font-weight: 700;
}
/* No event flyer is a dated native list, not a large empty photo panel. */
#events-grid.ev-photo-grid.svp-event-list { grid-template-columns: minmax(0, 1fr); }
#events-grid .ev-photo-card.svp-event-text-only {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: #fffdf8;
}
#events-grid .svp-event-text-only .ev-photo-wrap {
  display: grid;
  place-items: center;
  flex: 0 0 66px;
  width: 66px;
  height: 80px;
  aspect-ratio: auto;
  border-radius: 10px;
  background: #f4edf8 !important;
}
#events-grid .svp-event-text-only .ev-photo-gradient,
#events-grid .svp-event-text-only .ev-status-dot,
#events-grid .svp-event-text-only .ev-photo-wrap img { display: none; }
#events-grid .svp-event-text-only .ev-date-chip {
  position: static;
  padding: 6px;
  background: none;
  color: var(--maker-plum, #5f4387);
  backdrop-filter: none;
  text-align: center;
}
#events-grid .svp-event-text-only .ev-date-chip-day { font-size: 26px; }
#events-grid .svp-event-text-only .ev-card-footer {
  flex: 1;
  min-width: 0;
  padding: 0;
  background: transparent;
}
#events-grid .svp-event-text-only .ev-card-name { overflow-wrap: anywhere; }
@media (max-width: 767px) {
  #svp-main #eco-latest-public .eco-social-grid { grid-template-columns: 1fr; }
}
.wknd-owner-full-profile .svp-owner-profile-nudge {
  width: min(640px, calc(100% - 32px));
  margin: 10px auto 14px;
  padding: 11px 14px;
  border: 1px solid #e3dced;
  border-left: 3px solid #8063a8;
  border-radius: 8px;
  background: #f8f5fb;
  color: #463b52;
  font-family: inherit;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
}
.wknd-owner-full-profile .svp-owner-profile-nudge-title {
  display: block;
  color: #352b40;
  font-size: 13px;
  font-weight: 700;
}
.wknd-owner-full-profile .svp-owner-profile-nudge-copy {
  margin: 3px 0 9px;
  color: #675d70;
  font-size: 12px;
}
.wknd-owner-full-profile .svp-owner-profile-nudge-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
}
.wknd-owner-full-profile .svp-owner-profile-nudge-actions a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  color: #604880;
  font-size: 12px;
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.wknd-owner-full-profile .svp-owner-profile-nudge-actions a:focus-visible {
  outline: 2px solid #8063a8;
  outline-offset: 3px;
}
.vp-owner-nudge-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #604880;
  color: #fff !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}
.vp-owner-nudge-link:focus-visible { outline: 2px solid #604880; outline-offset: 3px; }
.fsvp-prod-card.svp-text-offering .fsvp-prod-card-img-ph,
.fsvp-prod-card.svp-text-offering .fsvp-prod-card-img,
.shop-card.svp-text-offering .shop-card-ph { display: none !important; }
.fsvp-prod-card.svp-text-offering {
  background: #faf8ff;
  border: 1px solid #e7e0f2;
  min-height: 148px;
}
.fsvp-prod-card.svp-text-offering .fsvp-prod-card-body { padding: 22px 18px; }
.fsvp-prod-card.svp-text-offering .fsvp-prod-card-name { font-size: 19px; line-height: 1.3; }
.fsvp-prod-card.svp-text-offering .fsvp-prod-card-desc { line-height: 1.55; }
.svp-qr-unavailable { display: none !important; }
body.wknd-private-profile #share-section,
body.wknd-private-profile #share-btn { display: none !important; }
body.wknd-embedded-preview { padding-top: 0 !important; padding-bottom: 0 !important; }
html.wknd-embedded-root, html.wknd-embedded-root body { min-height: 0 !important; height: auto; }
body.wknd-embedded-preview #svp-owner-bar,
body.wknd-embedded-preview .topbar,
body.wknd-embedded-preview #svp-float-bar,
body.wknd-embedded-preview #fsvp-float-bar,
body.wknd-embedded-preview #svp-jump-pill,
body.wknd-embedded-preview .svp-jump-pill,
body.wknd-embedded-preview .svp-quick-nav,
body.wknd-embedded-preview #share-section,
body.wknd-embedded-preview .fsvp-tip-link,
body.wknd-embedded-preview #fsvp-tip-evt,
body.wknd-embedded-preview #report-btn { display: none !important; }
body.wknd-embedded-preview #svp-toc-fab { display: none !important; }
body.wknd-embedded-preview #svp-main { margin-top: 0 !important; }
body.wknd-embedded-preview .fsvp-identity { padding-bottom: 12px !important; }
body.wknd-embedded-preview .fsvp-btn-row { display: none !important; }
body.wknd-embedded-preview .fsvp-action-btn { cursor: default; }
@media (max-width: 420px) {
  body.svp-brand-only #hero-carousel { height: 220px; }
}
@media (prefers-reduced-motion: reduce) {
  body.wknd-embedded-preview * { animation: none !important; transition: none !important; }
}

/* One complete, keyboard-reachable section index. The fixed cue makes the
   horizontal continuation discoverable without hiding any destination. */
#svp-main .vp-shopper-nav {
  display: flex;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  position: relative;
  align-items: center;
  min-height: 54px !important;
  overflow: hidden;
  gap: 0;
  padding: 4px 0;
}
#svp-main .vp-shopper-nav-rail {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-padding-inline: 8px;
  scrollbar-width: thin;
  padding: 2px 2px 6px 2px;
}
#svp-main .vp-shopper-nav-rail > a {
  flex: 0 0 auto;
  min-height: 44px;
  /* Complete labels must fit the scrollport, including narrow owner previews. */
  max-width: 100%;
  padding: 8px 11px;
  white-space: normal;
  overflow-wrap: anywhere;
  overflow: visible;
  text-overflow: clip;
}
#svp-main .vp-shopper-nav-rail:focus-visible {
  outline: 2px solid var(--premium-ink, #21383C);
  outline-offset: -2px;
  border-radius: 8px;
}
#svp-main .vp-shopper-nav-cue {
  position: static;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  padding: 0 8px 2px;
  background: transparent;
  color: var(--premium-muted, #52676A);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  pointer-events: none;
}
#svp-main .vp-shopper-nav-cue::after {
  content: "→";
  margin-left: 4px;
  font-size: 14px;
}
@media (max-width: 767px) {
  #svp-main .vp-shopper-nav {
    display: flex;
    grid-template-columns: none;
    margin: 0 12px 12px;
    padding: 5px 0;
  }
  #svp-main .vp-shopper-nav-rail { gap: 8px; }
  #svp-main .vp-shopper-nav-rail > a {
    min-height: 48px;
    padding: 8px 10px;
    font-size: 12px;
    line-height: 1.35;
  }
}
@media (max-width: 360px) {
  #svp-main .vp-shopper-nav { margin-inline: 9px; }
  #svp-main .vp-shopper-nav-rail > a { padding-inline: 9px; }
}

/* WKND's vendor introduction is an editorial text rail, not a set of tags. */
body.wknd-public-entry #svp-main #fsvp-ident-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  gap: 0 !important;
  min-width: 0;
  padding: 0 0 8px !important;
  color: var(--premium-muted, #665f59);
  font-size: 13px !important;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.55 !important;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip > :is(
  .fsvp-ident-loc, .fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating
) {
  display: inline !important;
  min-width: 0;
  min-height: 0 !important;
  max-width: 100%;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  overflow-wrap: anywhere;
  text-decoration: none;
  box-shadow: none !important;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip > :is(
  .fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating
)::before {
  content: "·";
  display: inline;
  padding-inline: 8px;
  color: #9a8c7d;
  font-weight: 400;
  text-decoration: none;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip .fsvp-ident-cat-pill {
  color: var(--premium-ink, #514b47) !important;
  text-decoration: underline !important;
  text-decoration-color: #a99a89 !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip .fsvp-ident-price,
body.wknd-public-entry #svp-main #fsvp-ident-strip .fsvp-ident-rating {
  color: var(--premium-muted, #665f59) !important;
  font-weight: 500 !important;
}

#svp-main #quickpay-section #fsvp-pay-btn:focus-visible {
  outline: 3px solid var(--premium-ink, #21383C);
  outline-offset: 3px;
}
#svp-main #quickpay-section .svp-quickpay-shortcut {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  margin: 0 0 14px;
  padding: 11px 14px;
  border-radius: 10px;
  background: var(--premium-wash, #DCE7D9);
  color: var(--premium-muted, #52676A);
  font-size: 13px;
  line-height: 1.4;
}
#svp-main #quickpay-section .svp-quickpay-shortcut > span {
  flex: 1 1 10ch;
  min-width: 0;
  overflow-wrap: anywhere;
}
#svp-main #quickpay-section .svp-quickpay-shortcut:has(#fsvp-pay-btn[hidden]) {
  display: none !important;
}
#svp-main #quickpay-section #fsvp-pay-btn {
  flex: 0 0 auto;
  min-height: 44px;
  white-space: normal;
}
#svp-main #quickpay-section #fsvp-pay-btn {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: auto !important;
  min-height: var(--wknd-action-height, 48px) !important;
  padding: var(--wknd-action-padding-block, 10px) var(--wknd-action-padding-inline, 16px) !important;
  border-radius: var(--wknd-action-radius, 12px) !important;
  font-size: var(--wknd-action-font-size, 14px) !important;
  font-weight: 700 !important;
  line-height: var(--wknd-action-line-height, 20px) !important;
  text-align: center;
  text-decoration: none !important;
  white-space: normal;
  overflow-wrap: anywhere;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}
#svp-main #quickpay-section #fsvp-pay-btn {
  background: var(--premium-surface, #FFFDF8) !important;
  color: var(--wknd-action-ink, #21383C) !important;
  border: 1px solid var(--wknd-action-border, #D9DED2) !important;
}
#svp-main #quickpay-section #fsvp-pay-btn:hover {
  background: var(--premium-sage, #DCE7D9) !important;
}
#svp-main #quickpay-section #fsvp-pay-btn:active {
  transform: translateY(1px);
}
/* Public profile metadata stays readable and wraps as a single tag group. */
body.wknd-public-entry :is(.fsvp-kw-pills, .fsvp-tag-row, .vp-tags, .wknd-epk-pills) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}
body.wknd-public-entry :is(.fsvp-kw-pill, .fsvp-tag, .fsvp-ident-cat-pill, .vp-tags > *, .wknd-epk-pill) {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  border-color: var(--premium-line, #D9DED2) !important;
  background: transparent !important;
  color: #514b47 !important;
}
body.wknd-public-entry #svp-main {
  width: min(var(--wknd-public-rail, 1120px), calc(100% - var(--wknd-public-gutter, 16px) * 2)) !important;
  max-width: var(--wknd-public-rail, 1120px) !important;
  margin-inline: auto;
}
body.wknd-public-entry #fsvp-ident-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
}
body.wknd-public-entry #fsvp-ident-strip :is(
  .fsvp-ident-cat-pill, .fsvp-ident-loc) {
  max-width: 100%;
  overflow-wrap: anywhere;
  color: #514b47 !important;
  background: transparent !important;
  border: 1px solid #cfc6bb !important;
  border-radius: 999px;
}
body.wknd-public-entry #fsvp-ident-strip .fsvp-ident-sep {
  display: none !important;
}
body.wknd-public-entry #shop-section [class*="price"] {
  color: var(--premium-ink, #21383C) !important;
}
@media (max-width: 767px) {
  body.wknd-public-entry :is(.fsvp-kw-pills, .fsvp-tag-row, .vp-tags, .wknd-epk-pills) {
    gap: 8px;
    padding-inline: 0;
  }
}

/* Image and video highlights share the same 4:3 browsing stage. Keep captions
   and the video play/expand actions in normal flow beneath that stage. */
#svp-main #vp-curated-carousel .eco-curated-item:not([data-media-type="video"]) {
  display: flex;
  flex-direction: column;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
}
#svp-main #vp-curated-carousel .eco-curated-item:not([data-media-type="video"]) .eco-curated-open,
#svp-main #vp-curated-carousel .eco-curated-item:not([data-media-type="video"]) .eco-curated-link {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 4 / 3;
}
#svp-main #vp-curated-carousel .eco-curated-item:not([data-media-type="video"]) :is(.eco-curated-caption, .eco-curated-permalink) {
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  #svp-main #vp-curated-carousel .eco-curated-item:not([data-media-type="video"]) .eco-curated-open,
  #svp-main #vp-curated-carousel .eco-curated-item:not([data-media-type="video"]) .eco-curated-link,
  #svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"] .eco-curated-video-stage,
  #svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"] .eco-external-player {
    max-height: 240px;
    aspect-ratio: 4 / 3;
  }
}

/* Owner and shopper navigation share real section targets, including embedded previews. */
#svp-main :is(#bio-section,#events-section,#quickpay-section,#past-section,#reviews-section,
  #shop-section,#photos-section,#vp-organizers,#follow-section){
  scroll-margin-top:24px
}
#svp-main :is(#bio-section,#events-section,#quickpay-section,#past-section,#reviews-section,
  #shop-section,#photos-section,#vp-organizers,#follow-section):focus{
  outline:2px solid #8063a8;outline-offset:3px
}
body.svp-no-upcoming #events-section{display:block!important}

/* Mixed native and curated media use a shared bounded frame instead of source-ratio height. */
#svp-main #vp-highlight-carousel > .svp-photo-featured,
#svp-main #vp-highlight-carousel > .svp-feat-video-wrap,
#svp-main #vp-curated-carousel .eco-curated-item{
  position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto auto;
  aspect-ratio:4/3;min-width:0;min-height:0;height:auto;max-height:300px;
  overflow:hidden;border-radius:16px;background:#eee8f2
}
#svp-main #vp-highlight-carousel > .svp-photo-featured img,
#svp-main #vp-highlight-carousel > .svp-photo-featured video,
#svp-main #vp-highlight-carousel > .svp-feat-video-wrap img,
#svp-main #vp-highlight-carousel > .svp-feat-video-wrap video,
#svp-main #vp-highlight-carousel > .svp-photo-pair img,
#svp-main #vp-highlight-carousel > .svp-photo-pair video,
#svp-main #vp-highlight-carousel > .svp-showcase-grid img,
#svp-main #vp-highlight-carousel > .svp-showcase-grid video,
#svp-main #vp-curated-carousel .eco-curated-item img,
#svp-main #vp-curated-carousel .eco-curated-item video{
  width:100%;height:100%;max-width:none;object-fit:cover;object-position:center
}
#svp-main #vp-curated-carousel .eco-curated-open,
#svp-main #vp-curated-carousel .eco-curated-link{
  width:100%;height:100%;min-height:0;aspect-ratio:auto
}
#svp-main #vp-curated-carousel .eco-curated-video{width:100%;height:100%;min-height:0;aspect-ratio:auto}
#svp-main #vp-curated-carousel .eco-curated-caption{max-height:2.9em;margin:0;overflow:hidden}
#svp-main #vp-curated-carousel .eco-curated-permalink{min-height:25px;margin:0;padding:5px 10px}
/* Video cards now contain a dedicated thumbnail stage plus live controls and
   captions. Keep those siblings in normal flow rather than forcing the stage
   into the old bounded image-card grid row (which could overlap its actions). */
#svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"]{
  display:flex;
  flex-direction:column;
  height:auto;
  max-height:none;
  aspect-ratio:auto;
}
#svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"] .eco-curated-video-stage,
#svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"] .eco-external-player{
  flex:0 0 auto;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:4/3;
}
#svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"] .eco-curated-video{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:auto;
}
#svp-main #vp-curated-carousel .eco-curated-item[data-media-type="video"] .eco-curated-expand{
  flex:0 0 auto;
  scroll-margin-block-end:120px;
}
#svp-main #vp-highlight-carousel .svp-showcase-cell{
  min-width:0;min-height:0;aspect-ratio:4/3!important;height:auto!important;
  max-height:240px;overflow:hidden
}
#svp-main #vp-highlight-carousel .svp-showcase-cell img,
#svp-main #vp-highlight-carousel .svp-showcase-cell video{
  width:100%;height:100%;max-width:none;object-fit:cover;object-position:center
}
#svp-main #vp-highlight-carousel .svp-photo-pair,
#svp-main #vp-highlight-carousel .svp-showcase-grid{
  position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:auto;gap:5px;aspect-ratio:auto;height:auto;max-height:none;
  overflow:visible
}
#svp-main #vp-highlight-carousel .svp-photo-pair .svp-showcase-cell,
#svp-main #vp-highlight-carousel .svp-showcase-grid .svp-showcase-cell{
  min-width:0;min-height:0;margin:0;aspect-ratio:4/3!important;height:auto!important;
  max-height:240px;overflow:hidden
}
#svp-main .eco-curated-source,
#svp-main .eco-highlight-provenance{display:none!important}
/* Public avatar media sizing is stylesheet-owned, never inline: authorized
   contextual controls can then reserve a separate image column. */
.fsvp-hero-logo > img { width: 100%; height: 100%; object-fit: cover; }
.fsvp-hero-logo > .svp-avatar-zoom { border-radius: 13px; cursor: zoom-in; }

.fsvp-identity #fsvp-msg-btn{
  width:auto;min-width:104px;min-height:42px;display:inline-flex;align-items:center;
  justify-content:center;gap:7px;padding:8px 13px;border:1px solid #e5dfe9;
  border-radius:999px;background:#fff;color:#665871;font-size:12px;font-weight:700;
  box-shadow:none
}
.fsvp-identity #fsvp-msg-btn:hover{
  background:#f8f4fa;border-color:#d7c9e0;color:#493653
}
.svp-contact-icon{
  width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;flex:none
}
.svp-contact-label{line-height:1}
body.wknd-public-entry #follow-section .svp-follow-action .svp-follow-benefit{
  min-width:0;flex:none!important;margin:0!important;padding:0 0 0 14px!important;
  border-left:3px solid #b49bd8!important
}
@media(max-width:767px){
  #svp-main #vp-highlight-carousel > .svp-photo-featured,
  #svp-main #vp-highlight-carousel > .svp-feat-video-wrap,
  #svp-main #vp-highlight-carousel > .svp-photo-pair > .svp-showcase-cell,
  #svp-main #vp-highlight-carousel > .svp-showcase-grid > .svp-showcase-cell,
  #svp-main #vp-curated-carousel .eco-curated-item{
    height:auto;aspect-ratio:4/3;max-height:240px
  }
}
/* Authoritative phone hero layout. Hydration moves identity below the banner;
   the server-authorized noscript grid keeps it readable before that move.
   Keep this in the Page document, not the workspace or banner-dialog styles. */
@media (max-width: 767px) {
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap #hero-carousel {
    display: block !important;
    height: clamp(154px, 46vw, 210px) !important;
    min-height: 154px !important;
    max-height: 240px !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: linear-gradient(125deg,#211436,#513195 68%,#7653bb);
    box-shadow: none;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap #carousel-inner {
    position: relative;
    width: 100%;
    height: 100% !important;
    overflow: hidden;
    border-radius: 0;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .hero-carousel-dots {
    top: calc(clamp(154px, 46vw, 210px) - 18px);
    bottom: auto;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .fsvp-hero-overlay {
    position: relative !important;
    inset: auto !important;
    z-index: 5;
    width: 100%;
    min-height: 78px;
    align-items: center;
    gap: 11px;
    padding: 10px 14px !important;
    border-bottom: 1px solid #eee7ef;
    background: #fffdf9 !important;
    pointer-events: auto !important;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .fsvp-hero-logo {
    position: relative;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border: 1px solid #e3d8e8;
    border-radius: 15px;
    box-shadow: none;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .fsvp-hero-text {
    flex: 1 1 auto;
    min-width: 0;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .fsvp-vendor-name {
    max-width: 100%;
    margin: 0;
    color: #30243a !important;
    font-size: clamp(19px, 5.7vw, 25px) !important;
    line-height: 1.12 !important;
    text-shadow: none;
    overflow-wrap: anywhere;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .fsvp-vendor-sub {
    margin-top: 3px;
    color: #716779 !important;
    text-shadow: none;
    overflow-wrap: anywhere;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap .seen-at-badge {
    top: 8px;
    right: auto;
    left: 8px;
  }
  body:is(.wknd-embedded-preview, .wknd-owner-full-profile, .wknd-public-entry)
    #svp-main .fsvp-card-wrap > .vp-mobile-identity {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 88px !important;
    height: auto !important;
    padding: 18px 16px !important;
    background: #fffdf9 !important;
    color: #30243a !important;
    transform: none !important;
    box-sizing: border-box;
    overflow: visible;
    z-index: 1;
  }
  /* Preserve the sparse Page's dedicated banner-tool row. */
  body.wknd-public-entry #hero-carousel:has(#carousel-inner > #hero-gradient:only-child):has(+ .vp-mobile-identity) {
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #svp-main .vp-shopper-nav-rail { scroll-behavior: auto; }
}

/* Final browsing-stage contract, after the older bounded-card rules. Captions
   and video actions never consume or overlap the shared photo/video stage. */
#svp-main #photos-section #vp-curated-carousel .eco-curated-item {
  display: flex;
  flex-direction: column;
  align-self: start;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
}
#svp-main #photos-section #vp-curated-carousel .eco-curated-item > :is(
  .eco-curated-open, .eco-curated-link, .eco-curated-video-stage, .eco-external-player) {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  aspect-ratio: 4 / 3;
}
#svp-main #photos-section #vp-curated-carousel .eco-curated-open > img,
#svp-main #photos-section #vp-curated-carousel .eco-external-player > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 0;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center;
}
@media (max-width: 767px) {
  #svp-main nav.vp-shopper-nav {
    min-height: 54px !important;
    height: auto !important;
    padding: 4px 0 !important;
  }
  #svp-main #follow-section .svp-follow-action,
  #svp-main #follow-section .svp-follow-benefit {
    min-width: 0 !important;
    max-width: 100%;
    box-sizing: border-box;
  }
  #svp-main #follow-section .svp-follow-benefit :is(h2,h3,p,strong,span) {
    min-width: 0;
    max-width: 100%;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}

body.wknd-public-entry #svp-main #fsvp-ident-strip {
  align-items: flex-start;
  gap: 8px !important;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip :is(.fsvp-ident-cat-pill, .fsvp-ident-loc) {
  min-height: 44px;
  padding: 7px 11px;
  white-space: normal;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip .fsvp-ident-cat-pill {
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
/* Approved vendor-page simplification: final overrides after legacy rules. */
body.wknd-public-entry #svp-main #fsvp-ident-strip {
  align-items: baseline !important;
  gap: 0 !important;
  padding: 0 0 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.55 !important;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip > :is(
  .fsvp-ident-loc, .fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating
) {
  display: inline !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--premium-muted, #665f59) !important;
  font: inherit !important;
  line-height: inherit !important;
  box-shadow: none !important;
  overflow-wrap: anywhere;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip > :is(
  .fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating
)::before {
  content: "·";
  padding-inline: 8px;
  color: #9a8c7d;
  font-weight: 400;
}
body.wknd-public-entry #svp-main #fsvp-ident-strip .fsvp-ident-cat-pill {
  color: var(--premium-ink, #514b47) !important;
  text-decoration: underline !important;
  text-decoration-color: #a99a89 !important;
  text-underline-offset: 3px;
}
body.wknd-public-entry #svp-main #svp-identity-rating:empty {
  display: none;
}
body.wknd-public-entry #svp-main #svp-identity-rating:not(:empty) {
  margin: 3px 0 5px;
  color: var(--premium-ink, #21383c);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  text-shadow: none;
  pointer-events: auto;
}
body.wknd-public-entry #svp-main #svp-identity-rating :is(a, button) {
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-decoration-color: currentColor;
  text-underline-offset: 2px;
  cursor: pointer;
}
body.wknd-public-entry #svp-main #svp-identity-rating :is(a, button):focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
body.wknd-public-entry.svp-brand-only #svp-main #svp-identity-rating:not(:empty),
body.wknd-public-entry #svp-main .vp-mobile-identity #svp-identity-rating:not(:empty) {
  color: var(--premium-ink, #21383c);
  text-shadow: none;
}
body.wknd-public-entry.svp-brand-only #svp-main #svp-identity-rating :is(a, button),
body.wknd-public-entry #svp-main .vp-mobile-identity #svp-identity-rating :is(a, button) {
  text-decoration-color: currentColor;
  outline-color: currentColor;
}
body.wknd-public-entry #svp-main #bio-section #svp-about-title {
  margin: 0;
  line-height: 1.25 !important;
}
/* Canonical public section index: keep geometry and the complete More cue
   together, scoped to the Page rather than workspace navigation. */
body.wknd-public-entry #svp-main .vp-shopper-nav {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-width: 0;
  overflow: hidden;
  border: 0 !important;
  border-block: 1px solid var(--premium-line, #d9ded2) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.wknd-public-entry #svp-main .vp-shopper-nav-rail {
  min-width: 0;
  width: 100%;
}
body.wknd-public-entry #svp-main .vp-shopper-nav-rail > a[aria-current="location"] {
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: inset 0 -2px 0 var(--premium-ink, #21383c) !important;
}
body.wknd-public-entry #svp-main .vp-shopper-nav-cue {
  position: static !important;
  inset: auto !important;
  z-index: auto !important;
  flex: 0 0 auto;
  /* Size the complete cue and arrow, rather than overflowing a fixed clamp. */
  max-width: none;
  padding-inline: 6px !important;
  white-space: nowrap;
  background: var(--premium-surface, #fffdf8) !important;
}
/* Main section titles use one typographic voice whether the template renders
   them as headings or inline labels. Nested labels stay intentionally quieter. */
body.wknd-public-entry #svp-main .fsvp-sec .fsvp-sec-title,
body.wknd-public-entry #svp-main .ve-community-head h3,
body.wknd-public-entry #svp-main #eco-latest-public .eco-latest-head :is(h2, h3),
body.wknd-public-entry #svp-main #vp-organizers-title {
  color: var(--premium-ink, #21383c) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: -.015em !important;
  line-height: 1.25 !important;
  text-transform: none !important;
}
body.wknd-public-entry #svp-main .fsvp-sec :is(h3, .fsvp-subheading) {
  font-size: 15px;
  font-weight: 650;
  line-height: 1.35;
}

/* Header action authority, mirrored in vendor_svp.html. Keep primary actions
   and compact utilities separate; sharing an ancestor must not share sizing.
   Payment visibility is owned exclusively by the readiness renderer. */
body.wknd-public-entry #svp-main .fsvp-identity {
  min-height: 0 !important;
  padding-bottom: 4px !important;
}
body.wknd-public-entry #svp-main .fsvp-hero-text {
  min-width: 0;
}
body.wknd-public-entry #svp-main #svp-identity-utilities {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 10px;
  width: 100% !important;
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: var(--wknd-action-font-size, 14px);
  pointer-events: auto;
}
body.wknd-public-entry #svp-main #vendor-action-hub #svp-identity-utilities .svp-identity-utility {
  box-sizing: border-box !important;
  display: inline-flex !important;
  order: 0;
  flex: none !important;
  align-items: center;
  align-self: stretch;
  justify-content: center;
  gap: 7px;
  width: 100% !important;
  min-width: 0;
  min-height: 48px !important;
  height: 48px !important;
  max-height: 48px !important;
  max-width: 100%;
  margin: 0;
  padding: 10px 12px !important;
  border: 1px solid #183F3D !important;
  border-radius: var(--wknd-action-radius, 12px) !important;
  background: #FFFFFF !important;
  color: #183F3D !important;
  font: inherit;
  font-size: var(--wknd-action-font-size, 14px) !important;
  font-weight: 700 !important;
  line-height: var(--wknd-action-line-height, 20px) !important;
  text-decoration: none !important;
  box-shadow: none !important;
  text-align: center;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  cursor: pointer;
}
body.wknd-public-entry #svp-main #svp-identity-utilities #fsvp-msg-btn {
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}
body.wknd-public-entry #svp-main #vendor-action-hub #svp-identity-utilities:has(#fsvp-pay-btn[hidden]) #fsvp-msg-btn {
  grid-column: 1 / -1 !important;
  justify-content: center !important;
  text-align: center;
}
body.wknd-public-entry #svp-main #svp-identity-utilities .svp-identity-utility svg {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
}
body.wknd-public-entry #svp-main #vendor-action-hub #svp-identity-utilities .svp-identity-utility:hover {
  background: #FFFFFF !important;
  color: #183F3D !important;
  border-color: #183F3D !important;
}
body.wknd-public-entry #svp-main #svp-identity-utilities .svp-identity-utility:focus-visible {
  outline: 3px solid #183F3D;
  outline-offset: 3px;
}
body.wknd-public-entry #svp-main #svp-identity-utilities #fsvp-pay-btn[hidden] {
  display: none !important;
}

/* The main profile actions share the identity's action area. Flexible bases let
   them sit together on wider screens and wrap cleanly at narrow/zoomed widths. */
body.wknd-public-entry #svp-main #vendor-action-hub {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: min(100%, 560px);
  min-width: 0;
  margin: 4px auto 16px;
  padding: 0 20px;
}
/* The rail scrolls, not its labels: long/enlarged tab names retain their full
   intrinsic width rather than overflowing a viewport-capped anchor. */
body.wknd-public-entry #svp-main .vp-shopper-nav-rail > a {
  max-width: none !important;
  width: max-content !important;
  height: auto !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub #follow-section {
  display: block !important;
  width: auto;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-action {
  display: block !important;
  container-type: inline-size;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none;
  min-width: 0;
  margin: 0;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls .vgi-public-entry {
  box-sizing: border-box;
  display: flex;
  order: 0;
  flex: 1 1 9em !important;
  font-size: var(--wknd-action-font-size, 14px);
  min-width: 0;
  max-width: 100%;
  flex-direction: row;
  align-items: stretch;
  margin: 0;
  gap: 0;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls .vgi-public-entry[hidden] {
  display: none !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls #action-follow-btn,
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls #svp-guest-invite-btn {
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  align-self: stretch !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  height: 48px !important;
  max-height: 48px !important;
  max-width: 100%;
  max-height: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  border: 1px solid var(--wknd-action-primary, #21383c) !important;
  border-radius: var(--wknd-action-radius, 12px) !important;
  background: var(--wknd-action-primary, #21383c) !important;
  color: var(--wknd-action-on-primary, #fffdf8) !important;
  box-shadow: none !important;
  font-size: var(--wknd-action-font-size, 14px) !important;
  font-weight: 700 !important;
  line-height: var(--wknd-action-line-height, 20px) !important;
  text-align: center;
  text-decoration: none !important;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  gap: 0;
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls #action-follow-btn {
  flex: 1 1 9em !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls #action-follow-btn .svp-cta-main {
  white-space: normal;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls :is(#action-follow-btn, [data-vgi-trigger]):hover {
  filter: brightness(.94);
}
body.wknd-public-entry #svp-main #vendor-action-hub :is(#action-follow-btn, #fsvp-msg-btn, [data-vgi-trigger]):active {
  transform: translateY(1px);
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls #svp-guest-invite-btn {
  border-color: #183F3D !important;
  background: #FFFFFF !important;
  color: #183F3D !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls #action-follow-btn:hover:not(:disabled) {
  transform: translateY(-1px);
  background: var(--premium-muted, #52676a) !important;
  border-color: var(--premium-muted, #52676a) !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls [data-vgi-trigger]:hover {
  background: #FFFFFF !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls :is(#action-follow-btn, [data-vgi-trigger]):focus-visible {
  outline: 3px solid var(--premium-ink, #21383c);
  outline-offset: 3px;
}
body.wknd-public-entry #svp-main #vendor-action-hub .vendor-organizer-actions {
  display: block;
  min-width: 0;
  margin: 0;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub .vendor-organizer-controls {
  display: flex;
  min-width: 0;
  margin: 0;
}
body.wknd-public-entry #svp-main #vendor-action-hub .vendor-organizer-actions:has(.vendor-organizer-controls:empty) {
  display: none !important;
}
@media (max-width: 767px) {
  body.wknd-public-entry #svp-main #vendor-action-hub {
    margin: 4px auto 16px;
    padding-inline: 16px;
  }
  body.wknd-public-entry #svp-main .fsvp-card-wrap .vp-mobile-identity {
    flex-wrap: wrap !important;
  }
}
@media (max-width: 360px) {
  body.wknd-public-entry #svp-main #vendor-action-hub {
    padding-inline: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.wknd-public-entry #svp-main #vendor-action-hub .svp-follow-controls :is(#action-follow-btn, [data-vgi-trigger]),
  body.wknd-public-entry #svp-main #svp-identity-utilities .svp-identity-utility {
    transition: none !important;
  }
}

/* Preserve the incoming main-app cohesion and product-card presentation;
   header action sizing above remains the only action authority. */
body.wknd-public-entry #svp-main #fsvp-ident-strip {
  min-height: 0 !important;
  align-content: start;
  gap: 4px 0 !important;
  border-bottom: 0 !important;
}
body.wknd-public-entry #svp-main #vendor-action-hub + .vp-shopper-nav {
  border-top: 0 !important;
}
body.wknd-public-entry #svp-main #bio-section {
  border-top: 0 !important;
  padding-top: 20px !important;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card {
  border-color: var(--premium-line, #d9ded2);
  border-radius: 12px;
  background: var(--premium-surface, #fffdf8);
  box-shadow: none;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-img,
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-img-ph {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  background: #eee8df;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-img-ph {
  display: flex;
  align-items: center;
  justify-content: center;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-body {
  padding: 12px 13px 14px;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-name {
  margin: 0 0 5px;
  color: var(--premium-ink, #302b28);
  font-size: 16px;
  font-weight: 650;
  line-height: 1.3;
  display: block;
  overflow: visible;
  overflow-wrap: anywhere;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-desc {
  margin: 0 0 8px;
  color: var(--premium-muted, #665f59);
  font-size: 13px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
body.wknd-public-entry #svp-main #shop-section .fsvp-prod-card-price {
  margin: 0;
  color: var(--premium-ink, #21383c);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}
body.wknd-public-entry #svp-main .eco-offer-card {
  border: 1px solid var(--premium-line, #d9ded2);
  border-radius: 12px;
  background: var(--premium-surface, #fffdf8);
  box-shadow: none;
}
body.wknd-public-entry #svp-main .eco-offer-card > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: center;
  background: #eee8df;
}
body.wknd-public-entry #svp-main .eco-offer-card > .eco-offer-image-empty {
  display: grid;
  min-height: 0;
  width: 100%;
  aspect-ratio: 4 / 3;
  place-items: center;
  padding: 14px;
  background: #eee8df;
  color: var(--premium-muted, #665f59);
  font-size: 13px;
  text-align: center;
}
body.wknd-public-entry #svp-main .eco-offer-body {
  padding: 12px 13px 14px;
}
body.wknd-public-entry #svp-main .eco-offer-body h3 {
  margin: 0;
  color: var(--premium-ink, #302b28);
  font-size: 16px;
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
body.wknd-public-entry #svp-main .eco-offer-body > p:not(.eco-product-provenance) {
  margin: 7px 0 10px;
  color: var(--premium-muted, #665f59);
  font-size: 13px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
body.wknd-public-entry #svp-main .eco-offer-body .eco-product-provenance {
  margin: 7px 0 10px;
  color: var(--premium-muted, #665f59);
  font-size: 11px;
  line-height: 1.4;
}
body.wknd-public-entry #svp-main .eco-offer-bottom {
  align-items: center;
  gap: 10px;
}
body.wknd-public-entry #svp-main .eco-offer-price {
  color: var(--premium-ink, #21383c);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}

/* Match public, owner, and embedded storefront modes. Tokens and color rules
   stay under #svp-main, leaving the owner toolbar and account controls alone. */
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main {
  /* The profile is a vertical section stack even when a legacy identity
     presentation leaves the main element as a flex container. */
  flex-direction: column !important;
  --premium-ink: #183F3D;
  --premium-muted: #5F706A;
  --premium-line: #D8C6A6;
  --premium-surface: #FFF3DC;
  --premium-sage: #EAD7B3;
  --premium-wash: #F7EAD0;
  --wknd-action-primary: #B54732;
  --wknd-action-on-primary: #FFF3DC;
  --wknd-action-border: #D8C6A6;
  --wknd-action-ink: #183F3D;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main :is(
  .fsvp-vendor-name, #svp-identity-rating:not(:empty), .fsvp-sec .fsvp-sec-title,
  .ve-community-head h3, #eco-latest-public .eco-latest-head :is(h2, h3),
  #vp-organizers-title, #bio-section #svp-about-title
):not(.svp-profile-header *) {
  color: #183F3D !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #fsvp-ident-strip > :is(
  .fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating
)::before {
  color: #bd5b45 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #fsvp-ident-strip .fsvp-ident-cat-pill {
  text-decoration-color: #bd5b45 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .vp-shopper-nav-rail > a {
  color: #5F706A !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .vp-shopper-nav-rail > a[aria-current="location"] {
  color: #183F3D !important;
  box-shadow: inset 0 -2px 0 #B54732 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .vp-shopper-nav-cue {
  color: #5F706A !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main :is(
  #shop-section .fsvp-prod-card, .eco-offer-card, #events-grid .ev-photo-card
) {
  border-color: #e2d8c6 !important;
  background-color: #fffaf0 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main :is(
  #shop-section .fsvp-prod-card-img, #shop-section .fsvp-prod-card-img-ph,
  .eco-offer-card > img, .eco-offer-card > .eco-offer-image-empty
) {
  background-color: #f1e8d7 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #svp-identity-utilities .svp-identity-utility {
  color: #5F706A !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #quickpay-section #fsvp-pay-btn {
  color: #5F706A !important;
  border-color: #D8C6A6 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main :is(
  #bio-section, #events-section, #quickpay-section, #past-section, #reviews-section,
  #shop-section, #photos-section, #vp-organizers, #follow-section
):focus {
  outline-color: #B54732 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main :is(
  #svp-main .vp-shopper-nav-rail, #action-follow-btn, #svp-guest-invite-btn,
  #fsvp-msg-btn, #fsvp-pay-btn, #ve-review-open
):focus-visible {
  outline-color: #B54732 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #photos-section :is(
  .eco-curated-item, .eco-curated-video-stage, .eco-curated-video,
  .eco-curated-open, .eco-curated-link
) {
  background-color: #f1e8d7 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #photos-section .eco-curated-featured {
  background-color: #F0DFB6 !important;
  color: #183F3D !important;
  border-color: #D9C58F !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #eco-latest-public .eco-social-slot {
  background-color: #F7EAD0 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-quickpay-loading {
  background-color: #F7EAD0 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #share-section {
  background-color: #F7EAD0 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #share-section #share-url {
  background-color: #FFF3DC !important;
  color: #5F706A !important;
  border-color: #D8C6A6 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #share-section :is(
  .copy-btn, .wknd-qr-download
) {
  background-color: #183F3D !important;
  color: #FFF3DC !important;
  border-color: #183F3D !important;
}

/* The top identity is a confident, solid-color welcome—not an overlay tint.
   The original name, bio, avatar and metadata nodes are assembled by the
   presentation module; owner tools remain outside #svp-main. */
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .fsvp-identity {
  padding: 0 !important;
  background: transparent !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
  padding: 25px max(20px, calc((100% - 1120px) / 2)) 22px;
  background: #124E4A;
  color: #FFF3DC;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header-identity {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header-copy {
  min-width: 0;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header .fsvp-hero-logo {
  border-color: rgba(255, 243, 220, .7);
  background: #B54732;
  box-shadow: none;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #vendor-name {
  margin: 0 0 5px !important;
  color: #FFF3DC !important;
  font-size: clamp(28px, 5vw, 38px) !important;
  font-weight: 850 !important;
  letter-spacing: -.035em !important;
  line-height: 1.05 !important;
  text-shadow: none !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header :is(#svp-identity-rating, .fsvp-vendor-sub, .fsvp-bio-text, #bio-more) {
  color: #FFF3DC !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #svp-identity-rating:not(:empty) {
  margin: 4px 0;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header .fsvp-vendor-sub {
  font-size: 14px !important;
  text-shadow: none !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #bio-section {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 8px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #FFF3DC;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #bio-section #svp-about-title {
  color: #FFF3DC !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #bio-section #bio-text {
  margin: 0;
  color: #FFF3DC !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  white-space: pre-wrap;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #bio-section #bio-more {
  padding: 6px 0 0;
  color: #FFD1B8 !important;
  font-weight: 750;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #fsvp-ident-strip {
  padding: 0 !important;
  color: #FFF3DC !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #fsvp-ident-strip > :is(.fsvp-ident-loc, .fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating) {
  background: transparent !important;
  color: #FFF3DC !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #fsvp-ident-strip > :is(.fsvp-ident-cat-pill, .fsvp-ident-price, .fsvp-ident-rating)::before {
  color: #FFD1B8 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header #fsvp-ident-strip .fsvp-ident-cat-pill {
  color: #FFF3DC !important;
  text-decoration-color: #FFD1B8 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .fsvp-hero-overlay {
  display: none !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub .svp-follow-controls #action-follow-btn {
  background: #B54732 !important;
  border-color: #B54732 !important;
  color: #FFF3DC !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub .svp-follow-controls #action-follow-btn:hover:not(:disabled) {
  background: #993D2C !important;
  border-color: #993D2C !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  width: min(100%, 560px) !important;
  min-width: 0 !important;
  margin: 4px auto 16px !important;
  padding-inline: 20px !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub #follow-section {
  display: block !important;
  width: 100% !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub .svp-follow-action {
  width: 100% !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub .svp-follow-controls,
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #svp-identity-utilities {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub .svp-follow-controls .vgi-public-entry {
  grid-column: auto !important;
  display: flex !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub .svp-follow-controls :is(#action-follow-btn, #svp-guest-invite-btn),
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub #svp-identity-utilities :is(#fsvp-msg-btn, #fsvp-pay-btn:not([hidden])) {
  box-sizing: border-box !important;
  grid-column: auto !important;
  grid-row: auto !important;
  display: inline-flex !important;
  flex: none !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub #fsvp-pay-btn[hidden] {
  display: none !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub :is(#svp-guest-invite-btn, #fsvp-msg-btn, #fsvp-pay-btn:not([hidden])) {
  border: 1px solid #183F3D !important;
  background: #FFFFFF !important;
  color: #183F3D !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub :is(#svp-guest-invite-btn, #fsvp-msg-btn, #fsvp-pay-btn:not([hidden])):hover {
  border-color: #183F3D !important;
  background: #FFFFFF !important;
  color: #183F3D !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub :is(#svp-guest-invite-btn, #fsvp-msg-btn, #fsvp-pay-btn:not([hidden])):focus-visible {
  outline: 3px solid #183F3D !important;
  outline-offset: 3px !important;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub:not(:has(#fsvp-pay-btn:not([hidden]))) #fsvp-msg-btn {
  grid-column: 1 / -1 !important;
  justify-self: stretch;
}
body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main #vendor-action-hub :is(#svp-guest-invite-btn, #fsvp-msg-btn, #fsvp-pay-btn:not([hidden])):active {
  transform: translateY(1px);
}
@media (max-width: 480px) {
  body.wknd-premium:is(.wknd-public-entry, .wknd-owner-full-profile, .svp-owner-mode, .wknd-embedded-preview) #svp-main .svp-profile-header {
    padding: 22px 18px 20px;
  }
}
