/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-9qnnnagw4s] {
	display: none;
	position: fixed;
	inset: auto 0 0;
	z-index: 1000;
	padding: var(--space-3) 4rem var(--space-3) var(--space-4);
	background: var(--surface);
	color: var(--text);
	border-top: 1px solid var(--accent);
	box-shadow: var(--shadow-soft);
}

#blazor-error-ui .reload[b-9qnnnagw4s] {
	text-decoration: underline;
}

#blazor-error-ui .dismiss[b-9qnnnagw4s] {
	position: absolute;
	top: var(--space-2);
	right: var(--space-2);
	width: 2.75rem;
	height: 2.75rem;
	border: 1px solid var(--border);
	background: var(--surface);
	color: var(--text);
	font-size: 1.25rem;
	cursor: pointer;
}

#blazor-error-ui :focus-visible[b-9qnnnagw4s] {
	outline: 2px solid var(--accent-strong);
	outline-offset: 2px;
}

/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-yyd6j5912o],
.components-reconnect-repeated-attempt-visible[b-yyd6j5912o],
.components-reconnect-failed-visible[b-yyd6j5912o],
.components-pause-visible[b-yyd6j5912o],
.components-resume-failed-visible[b-yyd6j5912o],
.components-rejoining-animation[b-yyd6j5912o] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-retrying[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-failed[b-yyd6j5912o],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-yyd6j5912o] {
    display: block;
}


#components-reconnect-modal[b-yyd6j5912o] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-yyd6j5912o 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-yyd6j5912o 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-yyd6j5912o 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-yyd6j5912o]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-yyd6j5912o 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-yyd6j5912o {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-yyd6j5912o {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-yyd6j5912o {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-yyd6j5912o] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-yyd6j5912o] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-yyd6j5912o] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-yyd6j5912o] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-yyd6j5912o] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-yyd6j5912o] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-yyd6j5912o] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-yyd6j5912o 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-yyd6j5912o] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-yyd6j5912o {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/ShopByBranch.razor.rz.scp.css */
.branch-index[b-wo9a5ghohp] {
  padding: 2.5rem 2rem;
  color: var(--parchment-ink);
  background: url("/img/art/ornaments/parchment.svg") var(--color-parchment);
  border: 2px solid var(--parchment-gold);
  border-radius: 10px;
  outline: 1px solid rgba(185, 138, 28, 0.6);
  outline-offset: -10px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.5), inset 0 0 70px rgba(120, 80, 20, 0.22);
}
.medallion-grid[b-wo9a5ghohp] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5) var(--space-3);
}
/* Each gold vine is a grid item on its row so it runs through the disc centres (same technique as the homepage band). */
.medallion-grid[b-wo9a5ghohp]::before,
.medallion-grid[b-wo9a5ghohp]::after {
  content: "";
  grid-column: 1 / -1;
  align-self: start;
  /* 11rem tall, centred on the 6.4rem disc: (6.4 - 11) / 2 = -2.3rem. */
  height: 11rem;
  margin-top: -2.3rem;
  background: url("/img/art/ornaments/branch-vine.svg") center / 100% auto no-repeat;
  pointer-events: none;
}
.medallion-grid[b-wo9a5ghohp]::before { grid-row: 1; }
.medallion-grid[b-wo9a5ghohp]::after { grid-row: 2; }
.medallion-grid > li[b-wo9a5ghohp] { position: relative; z-index: 1; }
.medallion-grid > li:nth-child(-n+4)[b-wo9a5ghohp] { grid-row: 1; }
.medallion-grid > li:nth-child(n+5)[b-wo9a5ghohp] { grid-row: 2; }
.medallion-grid > li:nth-child(4n+1)[b-wo9a5ghohp] { grid-column: 1; }
.medallion-grid > li:nth-child(4n+2)[b-wo9a5ghohp] { grid-column: 2; }
.medallion-grid > li:nth-child(4n+3)[b-wo9a5ghohp] { grid-column: 3; }
.medallion-grid > li:nth-child(4n)[b-wo9a5ghohp] { grid-column: 4; }
.branch-index__note[b-wo9a5ghohp] { margin: var(--space-4) 0 0; color: var(--parchment-ink); text-align: center; font-family: var(--font-serif); font-style: italic; font-size: 1.1rem; }

@media (max-width: 560px) {
  .branch-index[b-wo9a5ghohp] { padding: 1.75rem 1rem; }
  .medallion-grid[b-wo9a5ghohp] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .medallion-grid[b-wo9a5ghohp]::before, .medallion-grid[b-wo9a5ghohp]::after { display: none; }
  .medallion-grid > li:nth-child(n)[b-wo9a5ghohp] { grid-row: auto; grid-column: auto; }
}
/* /Components/Shared/BranchMedallion.razor.rz.scp.css */
.medallion[b-nwy3925jtp] { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; text-align: center; color: var(--parchment-ink); }
.medallion:hover[b-nwy3925jtp] { text-decoration: none; }
.medallion:focus-visible[b-nwy3925jtp] { outline: 2px solid var(--parchment-ink); outline-offset: 4px; }
.medallion__disc[b-nwy3925jtp] {
  position: relative;
  display: grid;
  place-items: center;
  width: 6.4rem;
  height: 6.4rem;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 35%, #3b2570, #140f26 75%);
  border: 2px solid var(--parchment-gold);
  box-shadow: 0 0 0 4px rgba(244, 236, 216, 0.9), 0 0 0 5px var(--parchment-gold), 0 6px 14px rgba(0, 0, 0, 0.35);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.medallion__disc > img[b-nwy3925jtp] { width: 55%; height: 55%; }
.medallion__disc > .medallion__art[b-nwy3925jtp] { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; object-position: center 40%; }
.medallion:hover .medallion__disc[b-nwy3925jtp],
.medallion:focus-visible .medallion__disc[b-nwy3925jtp] {
  transform: translateY(-3px);
  box-shadow: 0 0 0 4px rgba(244, 236, 216, 0.9), 0 0 0 5px var(--parchment-gold), 0 0 22px rgba(255, 184, 74, 0.75);
}
.medallion__label[b-nwy3925jtp] {
  max-width: 8.5rem;
  font-family: var(--font-display);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

/* Dim only the disc; the label keeps full contrast. */
.medallion--growing .medallion__disc > img[b-nwy3925jtp] { opacity: 0.55; }
.medallion--growing .medallion__disc > .medallion__art[b-nwy3925jtp] { opacity: 0.8; }
.medallion--growing .medallion__disc[b-nwy3925jtp] { filter: saturate(0.6); }
.medallion__sprout[b-nwy3925jtp] {
  position: absolute;
  right: -0.5rem;
  bottom: -0.35rem;
  display: grid;
  place-items: center;
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 50%;
  background: var(--color-parchment);
  border: 1.5px solid var(--parchment-gold);
}
.medallion__sprout img[b-nwy3925jtp] { width: 1.05rem; height: 1.05rem; }
/* /Components/Shared/FeaturedCollections.razor.rz.scp.css */
.collections[b-ij9e3vtz5k] {
  position: relative;
  padding-block: var(--space-6);
  overflow: hidden;
}
/* Crystals framing both sides of the row. */
.collections[b-ij9e3vtz5k]::before,
.collections[b-ij9e3vtz5k]::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  width: clamp(8rem, 18vw, 16rem);
  aspect-ratio: 4 / 3;
  background: url("/img/art/ornaments/crystals.svg") center bottom / contain no-repeat;
  opacity: 0.85;
  pointer-events: none;
}
.collections[b-ij9e3vtz5k]::before { left: -2rem; }
.collections[b-ij9e3vtz5k]::after { right: -2rem; transform: scaleX(-1); }

.collections .container[b-ij9e3vtz5k] { position: relative; z-index: 1; }

.collections__grid[b-ij9e3vtz5k] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
}

.collection-card[b-ij9e3vtz5k] {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 0.75rem 0.75rem 1.25rem;
  color: var(--parchment-ink);
  background: url("/img/art/ornaments/parchment.svg") var(--color-parchment);
  border: 2px solid var(--parchment-gold);
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45);
}
.collection-card__media[b-ij9e3vtz5k] {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 6px;
  background: radial-gradient(circle at 50% 40%, #3b2570, #140f26 80%);
}
.collection-card__media img[b-ij9e3vtz5k] { width: 100%; height: 100%; object-fit: cover; }
.collection-card__media .collection-card__art[b-ij9e3vtz5k] { width: auto; height: 92%; object-fit: contain; filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.55)); }
.collection-card h3[b-ij9e3vtz5k] { margin: 0.9rem 0 0.15rem; font-size: 1.1rem; font-weight: 700; color: var(--parchment-ink); }
.collection-card p[b-ij9e3vtz5k] { margin: 0 0 1rem; font-size: 0.9rem; }
.collection-card__cta[b-ij9e3vtz5k] {
  margin-top: auto;
  padding: 0.55rem 1.6rem;
  background: linear-gradient(180deg, #4b2e83, #2a1a4a);
  color: var(--color-cream);
  border: 1px solid var(--parchment-gold);
  border-radius: 0.4rem;
  font-family: var(--font-display);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.collection-card__cta:hover[b-ij9e3vtz5k] { text-decoration: none; filter: brightness(1.15); }
.collection-card__cta:focus-visible[b-ij9e3vtz5k] { outline: 2px solid var(--parchment-ink); outline-offset: 3px; }

.collections__all[b-ij9e3vtz5k] { text-align: center; margin: var(--space-4) 0 0; }
.collections__all a[b-ij9e3vtz5k] {
  font-family: var(--font-display);
  font-size: 0.85rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: underline;
}

@media (max-width: 960px) { .collections__grid[b-ij9e3vtz5k] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .collections__grid[b-ij9e3vtz5k] { grid-template-columns: minmax(0, 1fr); } .collections[b-ij9e3vtz5k]::before, .collections[b-ij9e3vtz5k]::after { display: none; } }
/* /Components/Shared/FeatureTiles.razor.rz.scp.css */
.tiles[b-gg41x9sz68] { padding-block: var(--space-5); }
.tiles__grid[b-gg41x9sz68] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
}
.tile[b-gg41x9sz68] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.6rem;
  padding: 1.4rem 1.25rem;
  background: linear-gradient(180deg, rgba(75, 46, 131, 0.38), rgba(20, 15, 38, 0.85));
  border: 1px solid rgba(201, 162, 39, 0.6);
  border-radius: 10px;
  box-shadow: inset 0 0 0 4px rgba(20, 15, 38, 0.6), inset 0 0 0 5px rgba(201, 162, 39, 0.25);
}
.tile img[b-gg41x9sz68] { width: 3rem; height: 3rem; }
.tile h2[b-gg41x9sz68] {
  margin: 0;
  text-align: left;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--accent-strong);
}
.tile p[b-gg41x9sz68] { margin: 0; font-size: 0.9rem; color: var(--text-muted); }
.tile a[b-gg41x9sz68] {
  margin-top: auto;
  align-self: stretch;
  padding: 0.55rem 0.75rem;
  text-align: center;
  border: 1px solid var(--accent);
  border-radius: 0.4rem;
  color: var(--text);
  font-family: var(--font-display);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.tile a:hover[b-gg41x9sz68] { text-decoration: none; color: var(--accent-strong); box-shadow: 0 0 14px rgba(255, 184, 74, 0.35); }
.tile a:focus-visible[b-gg41x9sz68] { outline: 2px solid var(--accent-strong); outline-offset: 3px; }

@media (max-width: 1000px) { .tiles__grid[b-gg41x9sz68] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .tiles__grid[b-gg41x9sz68] { grid-template-columns: minmax(0, 1fr); } }
/* /Components/Shared/HeroScene.razor.rz.scp.css */
.hero-scene[b-rb65p6qqqv] {
  background: var(--bg);
  border-bottom: 1px solid var(--border);
  overflow: hidden;
}

/* The stage keeps the art's aspect ratio so card positions (percentages) stay on the branches. */
.hero-scene__stage[b-rb65p6qqqv] {
  position: relative;
  container-type: inline-size;
  width: clamp(min(100%, 820px), calc((100vh - 6.25rem) * 1.5988), 100%);
  margin-inline: auto;
}

.hero-scene__art[b-rb65p6qqqv] { display: block; -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent); mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent); }
.hero-scene__art img[b-rb65p6qqqv] { display: block; width: 100%; height: auto; }

/* Keeps the headline readable over the painting. */
.hero-scene__stage[b-rb65p6qqqv]::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(20, 15, 38, 0.9) 0%, rgba(20, 15, 38, 0.55) 24%, rgba(20, 15, 38, 0) 44%);
}

.hero-scene__copy[b-rb65p6qqqv] {
  position: absolute;
  z-index: 2;
  left: 4cqw;
  top: 50%;
  transform: translateY(-50%);
  width: 33cqw;
}

.hero-scene h1[b-rb65p6qqqv] { margin: 0; line-height: 1; }
.hero-scene__num[b-rb65p6qqqv] {
  display: block;
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: clamp(4.5rem, 15cqw, 12rem);
  line-height: 0.9;
  color: var(--color-cream);
  font-variant-numeric: lining-nums;
}
.hero-scene__word[b-rb65p6qqqv] {
  display: block;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.4rem, 3.9cqw, 3.4rem);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-cream);
  margin-top: 0.6cqw;
}
.hero-scene__divider[b-rb65p6qqqv] { display: block; width: clamp(9rem, 17cqw, 15rem); height: auto; margin: 1.6cqw 0; }
.hero-scene__statement[b-rb65p6qqqv] {
  margin: 0;
  font-family: var(--font-serif);
  font-weight: 500;
  font-size: clamp(1.25rem, 2.6cqw, 2.4rem);
  line-height: 1.2;
  color: var(--accent-strong);
}
.hero-scene__lede[b-rb65p6qqqv] {
  margin: 1.4cqw 0 2cqw;
  font-size: clamp(0.9rem, 1.35cqw, 1.2rem);
  color: var(--color-cream);
}
.hero-scene__ctas[b-rb65p6qqqv] { display: flex; flex-wrap: wrap; gap: 1cqw; }
.hero-scene__all[b-rb65p6qqqv] {
  display: inline-block;
  margin-top: 1.4cqw;
  font-size: clamp(0.75rem, 1cqw, 0.95rem);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

/* Cards hang from the branches. */
.hero-cards[b-rb65p6qqqv] {
  position: absolute;
  inset: 0;
  z-index: 2;
  list-style: none;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
.hero-card[b-rb65p6qqqv] {
  position: absolute;
  left: calc(var(--x) * 1%);
  top: calc(var(--y) * 1%);
  width: 8.6%;
  transform: translateX(-50%) rotate(var(--r));
  transform-origin: 50% -4cqw;
  pointer-events: auto;
}
.hero-card[b-rb65p6qqqv]::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 100%;
  width: 1px;
  height: 4cqw;
  background: linear-gradient(to top, rgba(224, 184, 79, 0.85), rgba(224, 184, 79, 0));
}
.hero-card a[b-rb65p6qqqv] { display: block; text-align: center; color: var(--text); text-decoration: none; border-radius: 6px; }
.hero-card a:focus-visible[b-rb65p6qqqv] { outline: 2px solid var(--accent-strong); outline-offset: 4px; }
.hero-card img[b-rb65p6qqqv] {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 5 / 8;
  filter: drop-shadow(0 0.8cqw 1.4cqw rgba(0, 0, 0, 0.6));
  transition: transform 0.25s ease, filter 0.25s ease;
}
.hero-card a:hover img[b-rb65p6qqqv],
.hero-card a:focus-visible img[b-rb65p6qqqv] {
  transform: translateY(-0.6cqw);
  filter: drop-shadow(0 0 1.2cqw rgba(255, 214, 120, 0.7)) drop-shadow(0 0.8cqw 1.4cqw rgba(0, 0, 0, 0.6));
}
.hero-card__name[b-rb65p6qqqv] {
  display: block;
  margin-top: 0.6cqw;
  font-family: var(--font-display);
  font-size: clamp(0.55rem, 0.95cqw, 0.9rem);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-cream);
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.9);
}

@media (prefers-reduced-motion: no-preference) {
  .hero-card[b-rb65p6qqqv] { animation: hero-sway-b-rb65p6qqqv 6s ease-in-out infinite alternate; animation-delay: calc(var(--d) * -1s); }
  @keyframes hero-sway-b-rb65p6qqqv {
    from { transform: translateX(-50%) rotate(calc(var(--r) - 1.2deg)); }
    to { transform: translateX(-50%) rotate(calc(var(--r) + 1.2deg)); }
  }
}

/* Phones and small tablets: copy first, then the painting, then the cards in a grid. */
@media (max-width: 819px) {
  .hero-scene__stage[b-rb65p6qqqv] { width: 100%; display: flex; flex-direction: column; }
  .hero-scene__stage[b-rb65p6qqqv]::after { display: none; }
  .hero-scene__copy[b-rb65p6qqqv] { position: static; transform: none; width: auto; order: 1; padding: 2rem 1.25rem 1rem; text-align: center; }
  .hero-scene__art[b-rb65p6qqqv] { order: 2; }
  .hero-cards[b-rb65p6qqqv] { position: static; order: 3; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.75rem; padding: 1.25rem 1rem 2rem; pointer-events: auto; }
  .hero-card[b-rb65p6qqqv] { position: static; width: auto; transform: none; animation: none; }
  .hero-card[b-rb65p6qqqv]::before { display: none; }
  .hero-card__name[b-rb65p6qqqv] { font-size: 0.6rem; margin-top: 0.4rem; }
  .hero-scene__num[b-rb65p6qqqv] { font-size: 6rem; }
  .hero-scene__word[b-rb65p6qqqv] { font-size: 1.7rem; margin-top: 0.4rem; }
  .hero-scene__divider[b-rb65p6qqqv] { margin: 0.9rem auto; width: 11rem; }
  .hero-scene__statement[b-rb65p6qqqv] { font-size: 1.5rem; }
  .hero-scene__lede[b-rb65p6qqqv] { font-size: 1rem; margin: 0.7rem 0 1.2rem; }
  .hero-scene__ctas[b-rb65p6qqqv] { justify-content: center; gap: 0.75rem; }
  .hero-scene__all[b-rb65p6qqqv] { margin-top: 1rem; font-size: 0.8rem; }
}
/* /Components/Shared/InteractiveTree.razor.rz.scp.css */
/* Interactive tree (M4): inline-SVG trunk/branches + absolutely-positioned focusable nodes.
   Node positions come from InteractiveTree.razor's index/count layout, not fixed coordinates. */
.interactive-tree[b-k8ha1c769r] {
  position: relative;
  margin: var(--space-5) auto 0;
  max-width: 640px;
}

.interactive-tree__canvas[b-k8ha1c769r] { display: block; width: 100%; height: auto; }
.interactive-tree__trunk[b-k8ha1c769r] { fill: var(--color-wood); }
.interactive-tree__bough[b-k8ha1c769r] {
  fill: none;
  stroke: var(--color-gold);
  stroke-width: 4;
  stroke-linecap: round;
  opacity: 0.55;
}
.interactive-tree__twig[b-k8ha1c769r] {
  fill: none;
  stroke: var(--color-gold-warm);
  stroke-width: 2;
  opacity: 0.45;
}

.interactive-tree__nodes[b-k8ha1c769r] { position: absolute; inset: 0; }

.tree-node[b-k8ha1c769r] {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  transform: translate(-50%, -50%);
  border-radius: 50%;
}
.tree-node:hover[b-k8ha1c769r] { text-decoration: none; }
.tree-node:focus-visible[b-k8ha1c769r] {
  outline: 2px solid var(--accent-strong);
  outline-offset: 4px;
  border-radius: 50%;
}

.tree-node__dot[b-k8ha1c769r] {
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: var(--branch-accent, var(--accent));
  border: 2px solid var(--surface);
  box-shadow: 0 0 0 2px var(--border);
  transition: transform 0.15s ease;
}
.tree-node:hover .tree-node__dot[b-k8ha1c769r],
.tree-node:focus-visible .tree-node__dot[b-k8ha1c769r] { transform: scale(1.35); }

.tree-node__label[b-k8ha1c769r] {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, 0.5rem);
  min-width: 9rem;
  max-width: 12rem;
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius);
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: var(--shadow-soft);
  text-align: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 5;
}
.tree-node:hover .tree-node__label[b-k8ha1c769r],
.tree-node:focus-visible .tree-node__label[b-k8ha1c769r] { opacity: 1; }

.tree-node__name[b-k8ha1c769r] { display: block; font-family: var(--font-display); color: var(--text); font-size: 0.95rem; }
.tree-node__keywords[b-k8ha1c769r] { display: flex; flex-wrap: wrap; gap: var(--space-1); justify-content: center; margin-top: var(--space-1); }
.tree-node__keywords span[b-k8ha1c769r] { font-size: 0.65rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted); }

.interactive-tree__mobile[b-k8ha1c769r] { display: none; }

@media (max-width: 720px) {
  .interactive-tree__canvas[b-k8ha1c769r],
  .interactive-tree__nodes[b-k8ha1c769r] { display: none; }
  .interactive-tree__mobile[b-k8ha1c769r] { display: grid; margin-top: var(--space-5); }
}
/* /Components/Shared/ProductCard.razor.rz.scp.css */
.product-card[b-clupgeclvn] {
  display: flex;
  flex-direction: column;
  padding: 0.75rem;
  color: var(--parchment-ink);
  background: url("/img/art/ornaments/parchment.svg") var(--color-parchment);
  border: 2px solid var(--parchment-gold);
  border-radius: 10px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.42);
  transition: transform 0.15s ease, box-shadow 0.2s ease;
}
.product-card:hover[b-clupgeclvn] { text-decoration: none; transform: translateY(-3px); box-shadow: 0 14px 34px rgba(0, 0, 0, 0.5), 0 0 22px rgba(255, 184, 74, 0.35); }
.product-card:focus-visible[b-clupgeclvn] { outline: 3px solid var(--parchment-ink); outline-offset: 3px; }

.product-card__media[b-clupgeclvn] {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 6px;
  background: radial-gradient(circle at 50% 40%, #3b2570, #140f26 80%);
}
.product-card__media img[b-clupgeclvn] { width: 100%; height: 100%; object-fit: cover; }
.product-card__media .product-card__placeholder[b-clupgeclvn] { width: 45%; height: auto; opacity: 0.8; }
.product-card__flag[b-clupgeclvn] {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  padding: 0.15rem 0.6rem;
  border-radius: 999px;
  background: var(--color-parchment);
  color: var(--parchment-ink);
  border: 1px solid var(--parchment-gold);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-card__body[b-clupgeclvn] { display: flex; flex-direction: column; align-items: center; gap: 0.25rem; padding: 0.9rem 0.25rem 0.5rem; text-align: center; }
.product-card__body .num[b-clupgeclvn] { font-family: var(--font-display); font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--parchment-gold-text); }
.product-card__body h3[b-clupgeclvn] { margin: 0; font-size: 1.05rem; font-weight: 700; color: var(--parchment-ink); }
.product-card__body .price[b-clupgeclvn] { margin: 0.35rem 0 0; font-family: var(--font-display); font-size: 1rem; font-weight: 600; color: var(--parchment-gold-text); }
/* /Components/Shared/ShopByBranchBand.razor.rz.scp.css */
.band[b-0wjpyinnri] { padding-block: var(--space-6); }

.band__panel[b-0wjpyinnri] {
  width: calc(100% - 2rem);
  max-width: var(--container-max);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2.3fr);
  gap: var(--space-5);
  align-items: center;
  padding: 2.5rem 3rem;
  color: var(--parchment-ink);
  background: url("/img/art/ornaments/parchment.svg") var(--color-parchment);
  border: 2px solid var(--parchment-gold);
  border-radius: 10px;
  outline: 1px solid rgba(185, 138, 28, 0.6);
  outline-offset: -10px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.5), inset 0 0 70px rgba(120, 80, 20, 0.22);
}

.band__title[b-0wjpyinnri] {
  margin: 0 0 var(--space-3);
  text-align: left;
  font-size: clamp(1.4rem, 2.4vw, 1.9rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--parchment-ink);
}
.band__intro p[b-0wjpyinnri] { margin: 0 0 var(--space-4); }
.band__note[b-0wjpyinnri] { grid-column: 2; text-align: center; margin: 0; }
.band__note .coming-soon[b-0wjpyinnri] { color: var(--parchment-gold-text); }

.band__cta[b-0wjpyinnri] {
  display: inline-block;
  padding: 0.7rem 1.4rem;
  background: linear-gradient(180deg, #4b2e83, #2a1a4a);
  color: var(--color-cream);
  border: 1px solid var(--parchment-gold);
  border-radius: 0.4rem;
  font-family: var(--font-display);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.band__cta:hover[b-0wjpyinnri] { text-decoration: none; filter: brightness(1.15); }
.band__cta:focus-visible[b-0wjpyinnri] { outline: 2px solid var(--parchment-ink); outline-offset: 4px; }

/* Two rows of four medallions. Each gold vine is a grid item sitting on its row, so it always runs through the disc centres. */
.medallions[b-0wjpyinnri] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4) var(--space-3);
}
.medallions[b-0wjpyinnri]::before,
.medallions[b-0wjpyinnri]::after {
  content: "";
  grid-column: 1 / -1;
  align-self: start;
  /* 11rem tall, centred on the 6.4rem disc: (6.4 - 11) / 2 = -2.3rem. */
  height: 11rem;
  margin-top: -2.3rem;
  background: url("/img/art/ornaments/branch-vine.svg") center / 100% auto no-repeat;
  pointer-events: none;
}
.medallions[b-0wjpyinnri]::before { grid-row: 1; }
.medallions[b-0wjpyinnri]::after { grid-row: 2; }
.medallions > li[b-0wjpyinnri] { position: relative; z-index: 1; }
.medallions > li:nth-child(-n+4)[b-0wjpyinnri] { grid-row: 1; }
.medallions > li:nth-child(n+5)[b-0wjpyinnri] { grid-row: 2; }
.medallions > li:nth-child(4n+1)[b-0wjpyinnri] { grid-column: 1; }
.medallions > li:nth-child(4n+2)[b-0wjpyinnri] { grid-column: 2; }
.medallions > li:nth-child(4n+3)[b-0wjpyinnri] { grid-column: 3; }
.medallions > li:nth-child(4n)[b-0wjpyinnri] { grid-column: 4; }
.medallion[b-0wjpyinnri] { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; text-align: center; color: var(--parchment-ink); }
.medallion:hover[b-0wjpyinnri] { text-decoration: none; }
.medallion__disc[b-0wjpyinnri] {
  display: grid;
  place-items: center;
  width: 5.2rem;
  height: 5.2rem;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 35%, #3b2570, #140f26 75%);
  border: 2px solid var(--parchment-gold);
  box-shadow: 0 0 0 4px rgba(244, 236, 216, 0.9), 0 0 0 5px var(--parchment-gold), 0 6px 14px rgba(0, 0, 0, 0.35);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.medallion__disc img[b-0wjpyinnri] { width: 55%; height: 55%; }
.medallion:hover .medallion__disc[b-0wjpyinnri],
.medallion:focus-visible .medallion__disc[b-0wjpyinnri] {
  transform: translateY(-3px);
  box-shadow: 0 0 0 4px rgba(244, 236, 216, 0.9), 0 0 0 5px var(--parchment-gold), 0 0 22px rgba(255, 184, 74, 0.75);
}
.medallion__label[b-0wjpyinnri] {
  max-width: 8.5rem;
  font-family: var(--font-display);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.medallion[b-0wjpyinnri] { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; text-align: center; color: var(--parchment-ink); }
.medallion:hover[b-0wjpyinnri] { text-decoration: none; }
.medallion__disc[b-0wjpyinnri] {
  display: grid;
  place-items: center;
  width: 5.2rem;
  height: 5.2rem;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 35%, #3b2570, #140f26 75%);
  border: 2px solid var(--parchment-gold);
  box-shadow: 0 0 0 4px rgba(244, 236, 216, 0.9), 0 0 0 5px var(--parchment-gold), 0 6px 14px rgba(0, 0, 0, 0.35);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.medallion__disc img[b-0wjpyinnri] { width: 55%; height: 55%; }
.medallion:hover .medallion__disc[b-0wjpyinnri],
.medallion:focus-visible .medallion__disc[b-0wjpyinnri] {
  transform: translateY(-3px);
  box-shadow: 0 0 0 4px rgba(244, 236, 216, 0.9), 0 0 0 5px var(--parchment-gold), 0 0 22px rgba(255, 184, 74, 0.75);
}
.medallion__label[b-0wjpyinnri] {
  max-width: 8.5rem;
  font-family: var(--font-display);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .band__panel[b-0wjpyinnri] { grid-template-columns: minmax(0, 1fr); padding: 1.75rem 1.25rem; text-align: center; }
  .band__title[b-0wjpyinnri] { text-align: center; }
  .band__note[b-0wjpyinnri] { grid-column: 1; }
}
@media (max-width: 560px) {
  .medallions[b-0wjpyinnri] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .medallions[b-0wjpyinnri]::before, .medallions[b-0wjpyinnri]::after { display: none; }
  .medallions > li:nth-child(n)[b-0wjpyinnri] { grid-row: auto; grid-column: auto; }
}
