/** Shopify CDN: Minification failed

Line 1122:0 Expected "}" to go with "{"

**/
/* =========================================================
   LUMINA CUSTOM — Premium beauty store polish layer
   Safe override layer for creamy beige Shopify theme
   ========================================================= */

:root {
  --lumina-radius-sm: 12px;
  --lumina-radius-md: 18px;
  --lumina-radius-lg: 28px;
  --lumina-radius-pill: 999px;

  --lumina-soft-shadow: 0 18px 45px rgb(68 45 30 / 0.08);
  --lumina-hover-shadow: 0 24px 60px rgb(68 45 30 / 0.13);
  --lumina-border-soft: rgb(var(--color-foreground-rgb) / 0.08);
  --lumina-border-glow: rgb(var(--color-foreground-rgb) / 0.13);

  --lumina-cream-overlay: rgb(255 250 242 / 0.72);
  --lumina-deep-blur: blur(20px);
  --lumina-motion: 560ms cubic-bezier(0.16, 1, 0.3, 1);
  --lumina-motion-fast: 280ms cubic-bezier(0.16, 1, 0.3, 1);
}

html {
  scroll-padding-top: calc(var(--header-height, 72px) + 20px);
}

body {
  background:
    radial-gradient(circle at 10% 5%, rgb(var(--color-foreground-rgb) / 0.035), transparent 32rem),
    radial-gradient(circle at 95% 18%, rgb(var(--color-foreground-rgb) / 0.025), transparent 26rem),
    var(--color-background);
}

/* Softer text rhythm */
.content-for-layout :is(h1, .h1, h2, .h2) {
  letter-spacing: -0.035em;
}

.content-for-layout :is(p, .paragraph) {
  letter-spacing: 0.005em;
}

/* =========================================================
   Header: premium floating/glass feeling
   ========================================================= */

.header-section {
  isolation: isolate;
}

.header__row {
  backdrop-filter: saturate(155%) blur(18px);
  -webkit-backdrop-filter: saturate(155%) blur(18px);
  transition:
    background-color var(--lumina-motion-fast),
    box-shadow var(--lumina-motion-fast),
    border-color var(--lumina-motion-fast),
    transform var(--lumina-motion-fast);
}

#header-component:not([transparent]) .header__row,
#header-component.lumina-scrolled .header__row,
#header-component[data-sticky-state='active'] .header__row {
  background-color: rgb(var(--color-background-rgb) / 0.86);
  border-bottom-color: rgb(var(--color-foreground-rgb) / 0.075);
  box-shadow: 0 14px 38px rgb(60 40 25 / 0.055);
}

.header__columns {
  min-height: 64px;
}

.header-logo,
.header__heading-logo-wrapper,
.header__heading-link {
  transition: transform var(--lumina-motion-fast), opacity var(--lumina-motion-fast);
}

.header-logo:hover,
.header__heading-link:hover {
  transform: translateY(-1px);
}

/* Header icons */
.header-actions__action,
.header__icon--summary,
.search-action .header-actions__action {
  min-width: 44px;
  min-height: 44px;
  border-radius: var(--lumina-radius-pill);
  transition:
    background-color var(--lumina-motion-fast),
    transform var(--lumina-motion-fast),
    box-shadow var(--lumina-motion-fast),
    opacity var(--lumina-motion-fast);
}

.header-actions__action:hover,
.header__icon--summary:hover,
.search-action .header-actions__action:hover {
  background-color: rgb(var(--color-foreground-rgb) / 0.055);
  transform: translateY(-1px);
}

/* Desktop menu underline animation */
.menu-list__link-title {
  position: relative;
}

.menu-list__link-title::after {
  content: '';
  position: absolute;
  left: calc(var(--gap-xl) / 2);
  right: calc(var(--gap-xl) / 2);
  bottom: -0.45rem;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: center;
  opacity: 0.72;
  transition: transform var(--lumina-motion-fast), opacity var(--lumina-motion-fast);
}

.menu-list__list-item:hover .menu-list__link-title::after,
.menu-list__link--active .menu-list__link-title::after {
  transform: scaleX(1);
}

/* Mega menu polish */
.menu-list__submenu,
.overflow-menu::part(overflow) {
  border-top: 1px solid rgb(var(--color-foreground-rgb) / 0.065);
  box-shadow: 0 34px 70px rgb(50 35 25 / 0.08);
}

.menu-list__submenu-inner,
.overflow-menu::part(overflow-list) {
  border-radius: 0 0 var(--lumina-radius-lg) var(--lumina-radius-lg);
}

.mega-menu__link {
  transition:
    color var(--lumina-motion-fast),
    opacity var(--lumina-motion-fast),
    transform var(--lumina-motion-fast);
}

.mega-menu__link:hover {
  transform: translateX(3px);
}

.mega-menu__link-image,
.resource-card__image,
.collection-card__image,
.product-card__image,
.card-gallery {
  border-radius: var(--lumina-radius-md);
  overflow: hidden;
}

/* =========================================================
   Mobile drawer: smoother, softer, less default
   ========================================================= */

.menu-drawer {
  width: min(88vw, 430px);
  max-width: min(88vw, 430px);
  border-right: 1px solid var(--lumina-border-soft);
  border-radius: 0 var(--lumina-radius-lg) var(--lumina-radius-lg) 0;
  box-shadow: 30px 0 90px rgb(35 25 18 / 0.18);
  transform: translate3d(-104%, 0, 0);
  transition:
    transform 520ms cubic-bezier(0.16, 1, 0.3, 1),
    visibility 520ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 420ms ease;
}

.menu-open > .menu-drawer {
  transform: translate3d(0, 0, 0);
}

.menu-drawer__backdrop {
  backdrop-filter: blur(6px) brightness(0.82);
  -webkit-backdrop-filter: blur(6px) brightness(0.82);
  background: rgb(25 18 12 / 0.08);
}

.menu-drawer__close-button {
  margin-inline-start: auto;
  margin-inline-end: var(--padding-xs);
  margin-block-start: env(safe-area-inset-top);
  border-radius: var(--lumina-radius-pill);
  background-color: rgb(var(--color-foreground-rgb) / 0.045);
  box-shadow: none;
}

.menu-drawer__close-button:hover {
  background-color: rgb(var(--color-foreground-rgb) / 0.075);
}

.menu-drawer__navigation {
  padding-block-start: var(--padding-sm);
}

.menu-drawer__menu {
  padding-inline: clamp(22px, 6vw, 36px);
}

.menu-drawer__menu > .menu-drawer__list-item {
  min-height: 58px;
}

.menu-drawer__menu-item {
  border-radius: var(--lumina-radius-md);
  transition:
    background-color var(--lumina-motion-fast),
    color var(--lumina-motion-fast),
    transform var(--lumina-motion-fast),
    padding-inline var(--lumina-motion-fast);
}

.menu-drawer__menu-item:hover {
  background-color: rgb(var(--color-foreground-rgb) / 0.045);
  transform: translateX(3px);
  padding-inline-start: 12px;
}

.menu-drawer__menu-item--mainlist {
  font-size: clamp(1.25rem, 5.8vw, 2.05rem);
  letter-spacing: -0.035em;
}

.menu-drawer__menu-item--child,
.menu-drawer__menu-item--parent {
  opacity: 0.86;
}

.menu-drawer__submenu {
  border-radius: 0 var(--lumina-radius-lg) var(--lumina-radius-lg) 0;
}

.menu-drawer__back-button {
  border-radius: var(--lumina-radius-pill);
  margin: var(--padding-sm);
  width: calc(100% - var(--padding-sm) * 2);
}

.menu-drawer__featured-content-list {
  padding-inline: clamp(22px, 6vw, 36px);
  scroll-snap-type: x mandatory;
}

.menu-drawer__featured-content-list-item {
  scroll-snap-align: start;
}

.menu-drawer__link-image {
  border-radius: var(--lumina-radius-md);
}

/* Fix mobile drawer horizontal overflow risk */
@media screen and (max-width: 749px) {
  .menu-drawer,
  .menu-drawer__submenu,
  .menu-drawer__inner-submenu {
    max-width: 100vw;
    overflow-x: hidden;
  }

  .menu-drawer__menu--grid {
    gap: 14px;
  }

  .menu-drawer__utility-links {
    margin-inline: clamp(22px, 6vw, 36px);
  }
}

/* =========================================================
   Product / collection cards: soft luxury interaction
   ========================================================= */

.product-grid {
  gap: clamp(14px, 2vw, 26px);
}

.product-grid__item,
.resource-list__item {
  border-radius: var(--lumina-radius-md);
  overflow: hidden;
  background: rgb(var(--color-background-rgb) / 0.64);
  border-color: rgb(var(--color-foreground-rgb) / 0.075);
  transition:
    transform var(--lumina-motion),
    box-shadow var(--lumina-motion),
    border-color var(--lumina-motion),
    background-color var(--lumina-motion);
}

.product-card,
.collection-card,
.resource-card {
  border-radius: var(--lumina-radius-md);
}

.product-grid__card {
  transition: transform var(--lumina-motion), opacity var(--lumina-motion);
}

@media (any-pointer: fine) and (prefers-reduced-motion: no-preference) {
  .product-grid__item:hover,
  .resource-list__item:hover,
  .collection-card:hover,
  .resource-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--lumina-hover-shadow);
    border-color: var(--lumina-border-glow);
    background-color: rgb(var(--color-background-rgb) / 0.9);
  }

  .product-card:hover .card-gallery img,
  .collection-card:hover img,
  .resource-card:hover img,
  .product-grid__item:hover img {
    transform: scale(1.045);
  }
}

.product-card img,
.collection-card img,
.resource-card img,
.card-gallery img,
.product-media-container img {
  transition: transform 850ms cubic-bezier(0.16, 1, 0.3, 1), filter 850ms ease;
}

.product-grid__item:hover img,
.collection-card:hover img,
.resource-card:hover img {
  filter: saturate(1.035) contrast(1.015);
}

/* Product info spacing */
.product-card__content,
.product-grid__card {
  gap: clamp(8px, 1.5vw, 14px);
}

/* Badges */
.product-badges,
.badge,
.price,
product-price {
  transition: transform var(--lumina-motion-fast), opacity var(--lumina-motion-fast);
}

/* =========================================================
   Buttons: elegant pill movement
   ========================================================= */

.button:not(.button-unstyled),
.button-secondary,
button.shopify-payment-button__button--unbranded {
  position: relative;
  overflow: hidden;
  border-radius: var(--lumina-radius-pill);
  transition:
    transform var(--lumina-motion-fast),
    box-shadow var(--lumina-motion-fast),
    background-color var(--lumina-motion-fast),
    color var(--lumina-motion-fast);
}

.button:not(.button-unstyled)::after,
.button-secondary::after,
button.shopify-payment-button__button--unbranded::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 0%, rgb(255 255 255 / 0.22) 45%, transparent 70%);
  transform: translateX(-120%);
  transition: transform 720ms cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.button:not(.button-unstyled):hover,
.button-secondary:hover,
button.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgb(50 35 25 / 0.12);
}

.button:not(.button-unstyled):hover::after,
.button-secondary:hover::after,
button.shopify-payment-button__button--unbranded:hover:not([disabled])::after {
  transform: translateX(120%);
}

/* Inputs/search/modal softness */
input,
textarea,
select,
.dialog-modal,
.cart-drawer__dialog {
  border-radius: var(--lumina-radius-md);
}

.dialog-modal,
.cart-drawer__dialog,
.account-popover__panel,
.localization-wrapper {
  box-shadow: var(--lumina-soft-shadow);
}

/* Cart drawer polish */
.cart-drawer__dialog {
  border-left: 1px solid var(--lumina-border-soft);
}

.cart-drawer__header {
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgb(var(--color-foreground-rgb) / 0.065);
}

.cart-drawer__summary {
  box-shadow: 0 -18px 45px rgb(50 35 25 / 0.055);
}

/* =========================================================
   Section reveal animations
   JS adds .lumina-ready and .lumina-reveal
   ========================================================= */

@media (prefers-reduced-motion: no-preference) {
  body.lumina-ready .lumina-reveal {
    opacity: 0;
    transform: translateY(24px);
    filter: blur(8px);
    transition:
      opacity 760ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 760ms cubic-bezier(0.16, 1, 0.3, 1),
      filter 760ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--lumina-delay, 0ms);
  }

  body.lumina-ready .lumina-reveal.lumina-visible {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }

  .content-for-layout > .shopify-section:first-child.lumina-reveal {
    transform: translateY(10px);
  }
}

/* Reduce motion respectfully */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
/* =========================================================
   LUMINA CUSTOM — Resource card premium refinement
   Works with snippets/resource-card.liquid
   ========================================================= */

.resource-card {
  row-gap: 12px;
  isolation: isolate;
}

.resource-card__media {
  position: relative;
  overflow: hidden;
  border-radius: var(--lumina-radius-md);
  background:
    linear-gradient(135deg, rgb(var(--color-foreground-rgb) / 0.035), transparent),
    rgb(var(--color-background-rgb) / 0.55);
}

.resource-card__media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.055);
  background:
    radial-gradient(circle at 30% 20%, rgb(255 255 255 / 0.18), transparent 34%),
    linear-gradient(to bottom, transparent 58%, rgb(0 0 0 / 0.045));
  opacity: 0;
  transition: opacity var(--lumina-motion);
}

.resource-card:hover .resource-card__media::after {
  opacity: 1;
}

.resource-card__image,
.resource-card__image--secondary,
.resource-card__collection-image {
  border-radius: inherit;
  transition:
    opacity 620ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 900ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 900ms ease;
}

.resource-card:hover .resource-card__image,
.resource-card:focus-within .resource-card__image {
  transform: scale(1.045);
  filter: saturate(1.04) contrast(1.015);
}

.resource-card__content {
  padding-inline: 3px;
  transition:
    transform var(--lumina-motion-fast),
    opacity var(--lumina-motion-fast);
}

.resource-card:hover .resource-card__content {
  transform: translateY(-1px);
}

.resource-card__title {
  letter-spacing: -0.018em;
}

.resource-card__subtext,
.resource-card .price,
.resource-card product-price {
  opacity: 0.78;
}

.resource-card:hover .resource-card__subtext,
.resource-card:hover .price,
.resource-card:hover product-price {
  opacity: 1;
}

/* Overlay collection/menu cards */
.resource-card--overlay {
  border-radius: var(--lumina-radius-md);
  overflow: hidden;
}

.resource-card--overlay::before {
  background:
    linear-gradient(to top, rgb(20 12 7 / 0.58), rgb(20 12 7 / 0.18) 48%, transparent);
  inset: 0;
  opacity: 0.9;
  transition: opacity var(--lumina-motion);
}

.resource-card--overlay:hover::before {
  opacity: 1;
}

.resource-card--overlay .resource-card__content {
  padding: clamp(16px, 2vw, 24px);
}

.resource-card--overlay .resource-card__title {
  text-shadow: 0 8px 26px rgb(0 0 0 / 0.28);
}

/* Multiple collection thumbnails */
.resource-card__image-wrapper {
  border-radius: var(--lumina-radius-md);
  overflow: hidden;
  background-color: rgb(var(--color-foreground-rgb) / 0.035);
}

.resource-card__collection-image {
  transition: transform 800ms cubic-bezier(0.16, 1, 0.3, 1), filter 800ms ease;
}

.resource-card:hover .resource-card__collection-image:nth-child(1) {
  transform: scale(1.04) translate(-1px, -1px);
}

.resource-card:hover .resource-card__collection-image:nth-child(2) {
  transform: scale(1.04) translate(1px, -1px);
}

.resource-card:hover .resource-card__collection-image:nth-child(3) {
  transform: scale(1.04) translate(-1px, 1px);
}

.resource-card:hover .resource-card__collection-image:nth-child(4) {
  transform: scale(1.04) translate(1px, 1px);
}

/* Product card link transition wrapper */
product-card-link {
  display: block;
  height: 100%;
}

/* Mobile: keep it elegant but not jumpy */
@media screen and (max-width: 749px) {
  .resource-card {
    row-gap: 9px;
  }

  .resource-card__content {
    padding-inline: 1px;
  }

  .resource-card__title {
    font-size: max(0.92rem, var(--font-paragraph--size));
    line-height: 1.25;
  }

  .resource-card__subtext.paragraph {
    font-size: 0.78rem;
  }
/* =========================================================
   LUMINA CUSTOM — Product page premium refinement
   For sections/product-information.liquid + blocks/buy-buttons.liquid
   ========================================================= */

/* Product page atmosphere */
main[data-template*='product'] {
  background:
    radial-gradient(circle at 8% 8%, rgb(var(--color-foreground-rgb) / 0.035), transparent 28rem),
    radial-gradient(circle at 92% 28%, rgb(var(--color-foreground-rgb) / 0.025), transparent 24rem),
    var(--color-background);
}

/* Product media/gallery polish */
main[data-template*='product'] media-gallery,
main[data-template*='product'] .product-media-gallery,
main[data-template*='product'] .product-media-container {
  border-radius: var(--lumina-radius-lg);
}

main[data-template*='product'] .product-media-container {
  background:
    linear-gradient(135deg, rgb(var(--color-foreground-rgb) / 0.035), transparent),
    rgb(var(--color-background-rgb) / 0.55);
  box-shadow: inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.06);
}

main[data-template*='product'] .product-media-container img {
  transition:
    transform 950ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 950ms ease;
}

@media (any-pointer: fine) and (prefers-reduced-motion: no-preference) {
  main[data-template*='product'] .product-media-container:hover img {
    transform: scale(1.025);
    filter: saturate(1.035) contrast(1.015);
  }
}

/* Product details area */
main[data-template*='product'] product-form-component,
main[data-template*='product'] .buy-buttons-block {
  display: block;
  width: 100%;
}

main[data-template*='product'] .product-form-buttons {
  gap: 12px;
}

/* Add-to-cart / buy buttons */
main[data-template*='product'] .product-form-buttons button,
main[data-template*='product'] .add-to-cart-button,
main[data-template*='product'] shopify-accelerated-checkout,
main[data-template*='product'] shopify-accelerated-checkout-cart {
  min-height: var(--height-buy-buttons);
}

main[data-template*='product'] .add-to-cart-button {
  font-weight: 600;
  letter-spacing: 0.015em;
}

main[data-template*='product'] .add-to-cart-button .svg-wrapper {
  transition: transform var(--lumina-motion-fast);
}

main[data-template*='product'] .add-to-cart-button:hover .svg-wrapper {
  transform: translateX(-2px) rotate(-4deg);
}

/* Variant buttons: more elegant and less default */
main[data-template*='product'] .variant-option__button-label {
  border-radius: var(--lumina-radius-pill);
  min-height: 46px;
  background-color: rgb(var(--color-background-rgb) / 0.65);
  box-shadow: inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.045);
  transition:
    transform var(--lumina-motion-fast),
    background-color var(--lumina-motion-fast),
    border-color var(--lumina-motion-fast),
    box-shadow var(--lumina-motion-fast);
}

main[data-template*='product'] .variant-option__button-label:hover {
  transform: translateY(-1px);
  background-color: rgb(var(--color-foreground-rgb) / 0.045);
  box-shadow: inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.12);
}

main[data-template*='product'] .variant-option__button-label:has(:checked) {
  box-shadow:
    inset 0 0 0 1.5px currentColor,
    0 10px 24px rgb(50 35 25 / 0.08);
}

/* Quantity selector */
main[data-template*='product'] .quantity-selector,
main[data-template*='product'] .quantity-selector button,
main[data-template*='product'] .quantity-selector input {
  border-radius: var(--lumina-radius-pill);
}

main[data-template*='product'] .quantity-selector {
  background-color: rgb(var(--color-background-rgb) / 0.68);
  box-shadow: inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.07);
}

/* Volume pricing / pickup availability */
main[data-template*='product'] .volume-pricing__table,
main[data-template*='product'] .pickup-availability__row {
  border-radius: var(--lumina-radius-md);
  overflow: hidden;
  border: 1px solid rgb(var(--color-foreground-rgb) / 0.07);
  background-color: rgb(var(--color-background-rgb) / 0.56);
}

main[data-template*='product'] .volume-pricing__row {
  padding-inline: 18px;
}

/* Premium trust note under buttons */
.lumina-product-trust {
  flex: 1 0 100%;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 2px;
}

.lumina-product-trust__item {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: var(--lumina-radius-pill);
  background-color: rgb(var(--color-foreground-rgb) / 0.04);
  color: rgb(var(--color-foreground-rgb) / 0.72);
  font-size: 0.78rem;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}

/* Sticky add-to-cart bar */
.sticky-add-to-cart__bar {
  border-radius: var(--lumina-radius-pill);
  box-shadow:
    0 22px 70px rgb(45 30 20 / 0.16),
    inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.075);
  backdrop-filter: blur(22px) saturate(155%);
  -webkit-backdrop-filter: blur(22px) saturate(155%);
}

.sticky-add-to-cart__image {
  border-radius: var(--lumina-radius-pill);
}

.sticky-add-to-cart__image-img {
  transition: transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

.sticky-add-to-cart__bar:hover .sticky-add-to-cart__image-img {
  transform: scale(1.06);
}

.sticky-add-to-cart__title {
  letter-spacing: -0.018em;
}

.sticky-add-to-cart__button {
  border-radius: var(--lumina-radius-pill);
}

/* Mobile product page */
@media screen and (max-width: 749px) {
  main[data-template*='product'] .product-form-buttons {
    gap: 10px;
  }

  main[data-template*='product'] .product-form-buttons > *:not(.quantity-selector-wrapper, .quantity-rules, .quantity-label, .volume-pricing) {
    flex-basis: 100%;
  }

  .lumina-product-trust {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .lumina-product-trust__item {
    min-height: 34px;
    font-size: 0.76rem;
  }

  .sticky-add-to-cart__bar {
    bottom: 10px;
    left: 10px;
    right: 10px;
    width: auto;
    max-width: none;
    transform: translateY(calc(100% + 40px));
    border-radius: var(--lumina-radius-lg);
    padding: 10px;
  }

  .sticky-add-to-cart__bar[data-stuck='true'] {
    transform: translateY(0);
  }

  .sticky-add-to-cart__button {
    border-radius: var(--lumina-radius-pill);
  }
/* =========================================================
   LUMINA CUSTOM — Homepage slideshow + collection list polish
   For sections/slideshow.liquid + sections/collection-list.liquid
   ========================================================= */

/* ------------------------------
   Slideshow / hero section
   ------------------------------ */

.slideshow-section {
  position: relative;
  isolation: isolate;
}

.slideshow-section slideshow-component {
  border-radius: var(--corner-radius, var(--lumina-radius-lg));
  overflow: hidden;
}

.slideshow-section slideshow-slide {
  position: relative;
  overflow: hidden;
  border-radius: var(--corner-radius, var(--lumina-radius-lg));
}

.slideshow-section slideshow-slide::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 30%, rgb(255 255 255 / 0.18), transparent 26rem),
    linear-gradient(to right, rgb(28 18 10 / 0.42), transparent 56%),
    linear-gradient(to top, rgb(20 12 7 / 0.30), transparent 45%);
  opacity: 0.78;
}

.slideshow-section .slideshow--content-below-media slideshow-slide::after {
  background:
    linear-gradient(to top, rgb(20 12 7 / 0.14), transparent 52%),
    radial-gradient(circle at 22% 18%, rgb(255 255 255 / 0.18), transparent 20rem);
  opacity: 0.55;
}

.slideshow-section img,
.slideshow-section video {
  transform: scale(1.01);
  transition:
    transform 1800ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 1400ms ease;
}

@media (any-pointer: fine) and (prefers-reduced-motion: no-preference) {
  .slideshow-section:hover img,
  .slideshow-section:hover video {
    transform: scale(1.045);
    filter: saturate(1.035) contrast(1.02);
  }
}

/* Hero text blocks */
.slideshow-section .text-block,
.slideshow-section .group-block,
.slideshow-section .button {
  position: relative;
  z-index: 2;
}

.slideshow-section .text-block :is(h1, h2, h3, .h1, .h2, .h3) {
  letter-spacing: -0.055em;
  text-wrap: balance;
}

.slideshow-section .text-block p {
  max-width: 44rem;
  text-wrap: pretty;
}

/* Controls */
.slideshow-section slideshow-controls,
.slideshow-section slideshow-arrows {
  z-index: 3;
}

.slideshow-section .slideshow-control {
  border-radius: var(--lumina-radius-pill);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  background-color: rgb(var(--color-background-rgb) / 0.68);
  box-shadow:
    0 14px 34px rgb(40 28 18 / 0.12),
    inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.07);
  transition:
    transform var(--lumina-motion-fast),
    background-color var(--lumina-motion-fast),
    opacity var(--lumina-motion-fast);
}

.slideshow-section .slideshow-control:hover {
  transform: translateY(-2px) scale(1.03);
  background-color: rgb(var(--color-background-rgb) / 0.86);
}

/* With-hints mode becomes editorial carousel */
.slideshow-section .slideshow--with-hints slideshow-slide {
  box-shadow: 0 18px 48px rgb(55 36 22 / 0.10);
  border: 1px solid rgb(var(--color-foreground-rgb) / 0.07);
}

.slideshow-section .slideshow--with-hints slideshow-slide:not([aria-hidden='true']) {
  transform: translateY(0);
}

.slideshow-section .slideshow--with-hints slideshow-slide[aria-hidden='true'] {
  opacity: 0.55;
  transform: scale(0.985);
}

/* Mobile hero */
@media screen and (max-width: 749px) {
  .slideshow-section slideshow-component {
    border-radius: var(--lumina-radius-lg);
  }

  .slideshow-section slideshow-slide::after {
    background:
      linear-gradient(to top, rgb(18 12 8 / 0.48), transparent 62%),
      radial-gradient(circle at 50% 18%, rgb(255 255 255 / 0.16), transparent 18rem);
  }

  .slideshow-section .text-block :is(h1, h2, h3, .h1, .h2, .h3) {
    letter-spacing: -0.04em;
  }
}

/* ------------------------------
   Collection list section
   ------------------------------ */

.section-resource-list {
  position: relative;
  isolation: isolate;
}

.section-resource-list::before {
  content: '';
  position: absolute;
  inset: 4% var(--page-margin) auto;
  height: 42%;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 0%, rgb(var(--color-foreground-rgb) / 0.04), transparent 24rem),
    radial-gradient(circle at 92% 18%, rgb(var(--color-foreground-rgb) / 0.028), transparent 22rem);
  opacity: 0.9;
}

.section-resource-list__content {
  margin-bottom: clamp(18px, 3vw, 36px);
}

.section-resource-list__content :is(h2, .h2, h3, .h3) {
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.section-resource-list__content p {
  color: rgb(var(--color-foreground-rgb) / 0.72);
  max-width: 48rem;
  text-wrap: pretty;
}

/* Collection cards */
.collection-card {
  border-radius: var(--lumina-radius-lg);
  overflow: hidden;
  background-color: rgb(var(--color-background-rgb) / 0.58);
  border: 1px solid rgb(var(--color-foreground-rgb) / 0.07);
}

.collection-card__inner {
  border-radius: inherit;
}

.collection-card__image,
.collection-card img,
.collection-card .background-image-container {
  border-radius: inherit;
}

.collection-card::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  background:
    linear-gradient(to top, rgb(18 12 8 / 0.36), transparent 56%),
    radial-gradient(circle at 30% 18%, rgb(255 255 255 / 0.15), transparent 22rem);
  opacity: 0.62;
  transition: opacity var(--lumina-motion);
}

.collection-card:hover::after {
  opacity: 0.86;
}

/* Collection title badges on image */
.collection-card .text-block,
.collection-card [class*='collection-title'],
.collection-card__content {
  position: relative;
  z-index: 2;
}

.collection-card [class*='collection-title'],
.collection-card .text-block {
  transition:
    transform var(--lumina-motion-fast),
    opacity var(--lumina-motion-fast);
}

.collection-card:hover [class*='collection-title'],
.collection-card:hover .text-block {
  transform: translateY(-2px);
}

/* Bento/editorial mood */
.section-resource-list .resource-list--bento .resource-list__item,
.section-resource-list .resource-list--editorial .resource-list__item {
  border-radius: var(--lumina-radius-lg);
  overflow: hidden;
}

.section-resource-list .resource-list__item {
  transition:
    transform var(--lumina-motion),
    box-shadow var(--lumina-motion),
    opacity var(--lumina-motion);
}

@media (any-pointer: fine) and (prefers-reduced-motion: no-preference) {
  .section-resource-list .resource-list__item:hover {
    transform: translateY(-6px);
    box-shadow: var(--lumina-hover-shadow);
  }
}

/* Carousel arrows in collection list */
.section-resource-list slideshow-arrows .slideshow-control,
.section-resource-list .slideshow-control {
  border-radius: var(--lumina-radius-pill);
  background-color: rgb(var(--color-background-rgb) / 0.76);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow:
    0 12px 30px rgb(45 30 18 / 0.12),
    inset 0 0 0 1px rgb(var(--color-foreground-rgb) / 0.07);
}

/* Mobile collection list */
@media screen and (max-width: 749px) {
  .section-resource-list__content {
    margin-bottom: 18px;
  }

  .collection-card {
    border-radius: var(--lumina-radius-md);
  }

  .section-resource-list::before {
    inset-inline: 0;
  }
}
