/* Local Nirvana fixes. Baseline styles use the existing published r153 assets. */
/* Product-gallery videos share the image stage's explicit bounds. A portrait
   video's intrinsic grid minimum must not enlarge the child past the clipped
   slide. Contain preserves the entire recording and its native aspect ratio. */
.nv-pdp .nv-gallery__slide--video {
    min-width: 0;
    min-height: 0;
}
.nv-pdp .nv-gallery__slide--video > video {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    padding: 0;
    object-fit: contain;
    object-position: center;
    transform: none;
}

/* Borderless product video on phones/tablets: native desktop controls remain. */
.nv-video-controls[hidden] { display: none; }
@media (max-width: 1023px) {
  .nv-pdp .nv-gallery__slide--video,
  .nv-pdp .nv-gallery__slide--video > video { border: 0; outline: 0; box-shadow: none; border-radius: 0; }
  .nv-pdp .nv-video-controls { position: absolute; right: .75rem; bottom: .75rem; z-index: 4; display: flex; align-items: center; gap: .5rem; padding: 0; margin: 0; border: 0; background: transparent; box-shadow: none; }
  .nv-pdp .nv-video-controls[hidden] { display: none; }
  .nv-pdp .nv-video-controls button { display: grid; place-items: center; width: 44px; height: 44px; padding: 10px; margin: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.9); color: #1b1917; box-shadow: none; cursor: pointer; }
  .nv-pdp .nv-video-controls svg { display: block; width: 24px; height: 24px; }
  .nv-pdp .nv-video-controls button:focus-visible { outline: 2px solid var(--nv-action,#9a5b2e); outline-offset: 2px; }
  .nv-pdp .nv-gallery:has(.nv-gallery__thumb--video[aria-selected="true"]) .nv-gallery__counter { top: .75rem; bottom: auto; }
}
/* A product video must be identifiable in the thumbnail rail at every width. */
.nv-pdp .nv-gallery__thumb--video .nv-gallery__play {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    color: #fff;
    pointer-events: none;
}
.nv-pdp .nv-gallery__thumb--video .nv-gallery__play svg {
    display: block;
    width: 28px;
    height: 28px;
    padding: 6px;
    border: 0;
    border-radius: 50%;
    background: rgba(27,25,23,.82);
    color: #fff;
    fill: currentColor;
}
/* Keep the mobile product player borderless even when the swipe track receives
   focus. Thumbnail and individual control keyboard focus indicators remain. */
@media (max-width: 1023px) {
  .nv-pdp .nv-gallery,
  .nv-pdp .nv-gallery__stage,
  .nv-pdp .nv-gallery__slides,
  .nv-pdp .nv-gallery__slides:focus,
  .nv-pdp .nv-gallery__slides:focus-visible,
  .nv-pdp .nv-gallery__slide--video,
  .nv-pdp .nv-gallery__slide--video > video,
  .nv-pdp .nv-gallery__slide--video > video:focus,
  .nv-pdp .nv-gallery__slide--video > video:focus-visible {
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 0;
  }
}
/* Explicitly clip the right/bottom raster edge of mobile video slides. This
   also clips compositor-edge artifacts which border/outline resets cannot
   remove. Only one rendered pixel of the edge is masked; media bytes and
   object-fit, thumbnail focus and player controls stay unchanged. */
@media (max-width: 1023px) {
  .nv-pdp .nv-gallery__slide--video {
    overflow: hidden;
    isolation: isolate;
    -webkit-clip-path: inset(0 1px 1px 0);
    clip-path: inset(0 1px 1px 0);
  }
}
/* Selected native SKU remains the only source of stock and purchase state. */
.nv-pdp [data-nv-badge-sold][hidden], .nv-pdp [data-nv-badge-sale][hidden] { display: none !important; }
.nv-pdp .nv-tile__media { width: 52px; height: 52px; border-radius: 50%; }
.nv-pdp .nv-tile__media img { border-radius: 50%; object-fit: cover; padding: 0; }
.nv-pdp .nv-tile__name { white-space: normal; overflow: visible; min-height: 2.4em; }

/* Keep the complete product recognisable in its colour thumbnail. */
.nv-pdp .nv-tile__media img { transform: none; object-fit: contain; padding: 4%; }
.nv-pdp .nv-tile[aria-pressed="true"] .nv-tile__media { outline: none !important; outline-offset: 0; }
/* Existing refinements draw the selection with an inset shadow. Keyboard
   focus reuses that one ring, changing its colour instead of adding a ring. */
.nv-pdp .nv-option__values--tiles > .nv-tile:focus-visible .nv-tile__media { outline: none !important; outline-offset: 0; box-shadow: inset 0 0 0 2px var(--nv-ink,#292929) !important; }

/* Match the adjacent collection headers: title left, shop action right. */
.nv-home section[aria-labelledby="NirvanaRangeHeading"] > .nv-section__head {
  display: flex; flex-wrap: nowrap; align-items: flex-end;
  justify-content: space-between; gap: 12px;
}
.nv-home section[aria-labelledby="NirvanaRangeHeading"] > .nv-section__head > div {
  flex: 1 1 auto; width: auto; min-width: 0;
}
.nv-home section[aria-labelledby="NirvanaRangeHeading"] > .nv-section__head > .nv-btn {
  flex: 0 0 auto;
}
@media (max-width: 479px) {
  .nv-home section[aria-labelledby="NirvanaRangeHeading"] > .nv-section__head .nv-h2 { font-size: 1.125rem; }
  .nv-home section[aria-labelledby="NirvanaRangeHeading"] > .nv-section__head .nv-lead { font-size: .75rem; }
  .nv-home section[aria-labelledby="NirvanaRangeHeading"] > .nv-section__head > .nv-btn {
    padding-inline: .625rem; font-size: .6rem; letter-spacing: .04em;
  }
}

/* Native fashion media: retain complete original composition and a stable stage. */
.nv-pdp .nv-gallery__slide > img.nv-fashion-image {width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;padding:0!important;border-radius:0;}
.nv-home [data-nv-hero-slide] {background-color:var(--nv-banner-backdrop,transparent);}
.nv-home [data-nv-hero-slide] .nv-hero__copy,.nv-home [data-nv-hero-slide] .nv-hero__title,.nv-home [data-nv-hero-slide] .nv-hero__text,.nv-home [data-nv-hero-slide] .nv-hero__eyebrow {color:var(--nv-banner-text,#fff)!important;}
.nv-home [data-nv-hero-slide] .nv-hero__cta {background:var(--nv-banner-button,var(--nv-action))!important;color:var(--nv-banner-button-text,#fff)!important;border-color:var(--nv-banner-button,var(--nv-action))!important;}

/* Editorial product photography: two calm columns and a fully usable sticky purchase panel. */
@media (min-width:1024px) {
 .nv-pdp > .nv-shell {max-width:1800px;padding-inline:24px;}
 .nv-pdp .nv-pdp__top.nv-pdp__top--independent {display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr)!important;gap:48px;align-items:start;}
 .nv-pdp .nv-gallery--editorial {display:block!important;position:static!important;grid-column:1;grid-row:1;min-width:0;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__rail,.nv-pdp .nv-gallery--editorial .nv-gallery__pager,.nv-pdp .nv-gallery--editorial .nv-gallery__arrow,.nv-pdp .nv-gallery--editorial .nv-gallery__counter {display:none!important;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__stage {position:static;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__slides {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,1.4vw,28px)!important;overflow:visible!important;scroll-snap-type:none;max-height:none!important;height:auto!important;margin:0!important;padding:0!important;border-radius:0;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__slide {width:100%!important;height:auto!important;min-width:0;aspect-ratio:4/5!important;max-height:none!important;margin:0!important;flex:none!important;scroll-snap-align:none;border:0!important;box-shadow:none!important;border-radius:0!important;background:#f1efeb;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__slide > img,.nv-pdp .nv-gallery--editorial .nv-gallery__slide > video {position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;border-radius:0!important;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__slide--video {order:1;}
 .nv-pdp .nv-gallery--editorial .nv-gallery__slide--fashion {order:0;background:#f5f4f2;}
 .nv-pdp .nv-pdp__purchase-column {position:sticky!important;top:var(--nv-purchase-sticky-top,112px)!important;align-self:start;grid-column:2;grid-row:1;min-width:0;}
 .nv-pdp .nv-pdp__purchase-column .nv-buy {position:static!important;padding:20px 0 0!important;max-height:none!important;overflow:visible!important;}
 .nv-pdp .nv-pdp__purchase-column .nv-pdp__information--details {margin-top:24px;width:100%;grid-column:auto;}
 .nv-pdp .nv-pdp__purchase-column .nv-buy__title {font-size:clamp(1.65rem,2.1vw,2.25rem);}
}


/* Equal catalogue frames and one visual scale for studio products. Model photos
   retain their full composition; whitespace metadata never chooses a product image. */
.nv-card .nv-card__media{aspect-ratio:1!important;overflow:hidden!important;background:#f7f7f7;}
.nv-card .nv-card__img{position:absolute!important;left:0!important;top:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center!important;padding:10%!important;transform:none!important;}
.nv-card .nv-card__img--normalized{left:var(--nv-photo-left)!important;top:var(--nv-photo-top)!important;width:var(--nv-photo-width)!important;height:var(--nv-photo-height)!important;padding:0!important;}

/* Missing native colour media clears the previous gallery without changing availability. */
.nv-gallery__empty { display:flex; min-height:320px; aspect-ratio:4/5; align-items:center; justify-content:center; flex-direction:column; gap:20px; padding:32px; background:#f5f4f2; color:var(--nv-muted); text-align:center; font-size:.8125rem; }
.nv-gallery__empty-mark { width:56px; height:40px; border:1px solid #c5c0b8; border-radius:4px; }
.nv-gallery__empty[hidden], .nv-pdp .nv-gallery.nv-gallery--editorial.has-empty .nv-gallery__slides, .nv-pdp .nv-gallery [data-nv-gallery-prev][hidden], .nv-pdp .nv-gallery [data-nv-gallery-next][hidden], .nv-pdp .nv-gallery [data-nv-gallery-counter][hidden], .nv-pdp .nv-gallery [data-nv-gallery-thumbs][hidden], .nv-pdp .nv-gallery [data-nv-gallery-pager][hidden], .nv-holds[hidden] { display:none!important; }
.nv-tile__no-photo { font-size:.625rem; color:var(--nv-muted); }
.nv-card.has-no-colour-photo .nv-card__img, .nv-card.has-no-colour-photo .nv-card__img--inside { display:none!important; }

.nv-holds__media[hidden]{display:none!important}.nv-holds--text-only .nv-holds__grid{grid-template-columns:minmax(0,1fr)}.nv-holds--text-only .nv-holds__copy{max-width:48rem;width:100%;margin-inline:auto;}

/* Common frame scale: this changes layout only and does not remove photographed shadows. */
.nv-card__img,.nv-pdp .nv-gallery__slide>img,.nv-pdp .nv-holds__media img,.nv-tile__media img{filter:none!important;box-shadow:none!important;}
.nv-card .nv-card__media{aspect-ratio:1!important;position:relative;overflow:hidden!important;}
.nv-card .nv-card__img{position:absolute!important;left:0!important;top:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center!important;padding:15%!important;transform:none!important;box-shadow:none!important;filter:none!important;}
.nv-card .nv-card__img.nv-native-photo-framed,.nv-pdp .nv-gallery__slide>img.nv-native-photo-framed{position:absolute!important;inset:auto!important;left:var(--nv-native-left)!important;top:var(--nv-native-top)!important;width:var(--nv-native-width)!important;height:var(--nv-native-height)!important;max-width:none!important;max-height:none!important;padding:0!important;transform:none!important;box-shadow:none!important;filter:none!important;}
.nv-pdp .nv-gallery__slide>img.nv-fashion-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;padding:0!important;transform:none!important;box-shadow:none!important;filter:none!important;}

/* Category settings choose the photo; measured foreground gives each carry tile
   the same footprint. Unknown uploads keep their complete composition. */
.nv-home .nv-carry__grid{align-items:start!important;}
.nv-home .nv-carry .nv-carry__media{display:block!important;position:relative!important;width:100%!important;aspect-ratio:1;overflow:hidden!important;}
.nv-home .nv-carry .nv-carry__media>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center!important;padding:15%!important;transform:none!important;filter:none!important;box-shadow:none!important;}
.nv-home .nv-carry .nv-carry__media>img.nv-native-photo-framed{inset:auto!important;left:var(--nv-native-left)!important;top:var(--nv-native-top)!important;width:var(--nv-native-width)!important;height:var(--nv-native-height)!important;padding:0!important;}
.nv-card .nv-card__img.nv-fashion-image{inset:0!important;left:0!important;top:0!important;width:100%!important;height:100%!important;padding:0!important;object-fit:contain!important;object-position:center!important;transform:none!important;}
.nv-card .nv-card__img.nv-card__img--compact-photo:not(.nv-native-photo-framed){padding:17.5%!important;}

/* Fashion photography sits inside a quiet, even matte. Keep the complete source
   scene; sizing uses contain rather than cropping models, straps or products. */
.nv-pdp .nv-gallery--editorial .nv-gallery__slide--fashion {
  --nv-fashion-matte: clamp(12px,1.25vw,24px);
  background: #f1efeb;
  border-radius: 0;
}
.nv-pdp .nv-gallery--editorial .nv-gallery__slide--fashion > img.nv-fashion-image {
  box-sizing: border-box;
  padding: var(--nv-fashion-matte) !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent;
}
@media (max-width:1023px) {
  .nv-pdp .nv-gallery--editorial:has(.nv-gallery__slide--fashion) .nv-gallery__slide {
    aspect-ratio: 4/5;
    border-radius: 0;
    background: #f1efeb;
  }
  .nv-pdp .nv-gallery--editorial .nv-gallery__slide--fashion {
    --nv-fashion-matte: 12px;
  }
}

/* Identify shared product demonstrations without presenting their filmed finish
   as the selected colour. The compact label stays clear of playback controls. */
.nv-pdp .nv-gallery__film-caption{position:absolute;z-index:2;top:12px;left:12px;right:12px;max-width:max-content;padding:7px 10px;background:rgba(247,245,241,.94);color:#514b43;font-size:10px;line-height:1.45;letter-spacing:.025em;pointer-events:none;}

/* Studio-only desktop galleries do not need the portrait space reserved for
   fashion scenes. Square cells bring successive product rows closer together. */
@media (min-width:1024px) {
  .nv-pdp .nv-gallery--editorial:not(:has(.nv-gallery__slide--fashion)) .nv-gallery__slide {
    aspect-ratio: 1 !important;
  }
}

/* Keep the complete scene on a phone while leaving room for the product title.
   A shared track height also prevents portrait images from stretching the row. */
@media (max-width:1023px) {
  .nv-pdp .nv-gallery--editorial {
    --nv-mobile-gallery-height: clamp(280px,52vh,440px);
    --nv-mobile-gallery-height: clamp(280px,52svh,440px);
  }
  .nv-pdp .nv-gallery--editorial .nv-gallery__slides {
    height: var(--nv-mobile-gallery-height) !important;
    min-height: 0 !important;
    max-height: var(--nv-mobile-gallery-height) !important;
    align-items: stretch;
  }
  .nv-pdp .nv-gallery--editorial .nv-gallery__slide {
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    aspect-ratio: auto !important;
  }
  .nv-pdp .nv-gallery--editorial .nv-gallery__slide--fashion {
    --nv-fashion-matte: 10px;
  }
  .nv-pdp .nv-gallery--editorial .nv-gallery__empty {
    height: var(--nv-mobile-gallery-height);
    min-height: 0;
    aspect-ratio: auto;
  }
}

/* Wallets collection videos lead in DOM, thumbnails and desktop grid alike. */
@media (min-width:1024px) {
  .nv-pdp .nv-gallery--editorial[data-nv-wallet-video-first] .nv-gallery__slide--video {
    order: 0;
  }
}

/* Homepage product rails: reveal the existing paging controls over the photos. */
.nv-home .nv-home__collection-section .nv-carousel > .nv-section__foot .nv-product-rail__controls {
  display: flex !important;
}
.nv-home .nv-home__collection-section .nv-carousel .nv-product-rail__arrow {
  width: 44px;
  height: 44px;
  color: var(--nv-ink,#1b1917) !important;
}
.nv-home .nv-home__collection-section .nv-carousel .nv-product-rail__arrow:disabled {
  opacity: .25;
  pointer-events: none;
}
.nv-home .nv-home__collection-section .nv-carousel.is-static .nv-product-rail__controls {
  visibility: hidden !important;
  pointer-events: none;
}
@media (min-width:640px) {
  .nv-home .nv-home__collection-section .nv-carousel {
    container-type: inline-size;
  }
  .nv-home .nv-home__collection-section .nv-carousel > .nv-section__foot .nv-product-rail__controls {
    position: absolute;
    z-index: 3;
    top: calc(16.6665cqw - .25rem);
    left: 10px;
    right: 10px;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
  }
  .nv-home .nv-home__collection-section .nv-carousel .nv-product-rail__arrow {
    background: rgba(255,255,255,.95) !important;
    border: 1px solid rgba(27,25,23,.12) !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(27,25,23,.08) !important;
    pointer-events: auto;
  }
  .nv-home .nv-home__collection-section .nv-carousel .nv-product-rail__arrow:disabled {
    pointer-events: none;
  }
}
@media (min-width:1024px) {
  .nv-home .nv-home__collection-section .nv-carousel > .nv-section__foot .nv-product-rail__controls {
    top: calc(12.5cqw - .3rem);
  }
}
@media (min-width:640px) and (hover:hover) and (pointer:fine) {
  .nv-home .nv-home__collection-section .nv-carousel > .nv-section__foot .nv-product-rail__controls {
    opacity: 0;
  }
  .nv-home .nv-home__collection-section .nv-carousel:hover > .nv-section__foot .nv-product-rail__controls,
  .nv-home .nv-home__collection-section .nv-carousel:focus-within > .nv-section__foot .nv-product-rail__controls {
    opacity: 1;
  }
  .nv-home .nv-home__collection-section .nv-carousel:not(:hover):not(:focus-within) .nv-product-rail__arrow {
    pointer-events: none;
  }
}
/* Full-scene portrait merchandising: equal editorial stages for product/model views. */
.nv-card .nv-card__media {
  aspect-ratio: 4 / 5 !important;
  height: auto !important;
  padding-bottom: 0 !important;
  background: #f7f7f7;
}
.nv-card .nv-card__img.nv-fashion-image {
  object-fit: contain !important;
  object-position: center !important;
  padding: 0 !important;
}
/* Exact-source presentation mask: keep the complete wallet above the reflective table. */
.nv-card img[src*="vintage-wallet--black-mill-with-blue-strip--01.jpg"],
.nv-pdp .nv-gallery__slide > img[src*="vintage-wallet--black-mill-with-blue-strip--01.jpg"] {
  clip-path: inset(0 0 23% 0);
}
.nv-pdp .nv-gallery__slide > img[data-nv-studio-original-src*="vintage-wallet--black-mill-with-blue-strip--01.jpg"],
.nv-card img[data-nv-studio-original-src*="vintage-wallet--black-mill-with-blue-strip--01.jpg"] { clip-path: inset(0 0 23% 0); }
/* A modest readability increase for the merchant announcement ribbon. */
.nv-ribbon, .nv-ribbon .nv-ribbon__message { font-size: 15px; line-height: 1.5; }
@media (max-width: 767px) {
  .nv-ribbon, .nv-ribbon .nv-ribbon__message { font-size: 14px; }
}
/* Tropical Tote: matching fashion film leads; contents demonstration remains last. */
.nv-gallery[data-nv-fashion-video-first] .nv-gallery__slide--video.nv-gallery__slide--fashion { order: -1; }
.nv-gallery[data-nv-fashion-video-first] .nv-gallery__slide--video:not(.nv-gallery__slide--fashion) { order: 1; }
/* Owner final readability adjustment and exact-source stray line mask. */
.nv-ribbon, .nv-ribbon .nv-ribbon__message { font-size: 14px; }
@media (max-width:767px) { .nv-ribbon, .nv-ribbon .nv-ribbon__message { font-size: 13px; } }
.nv-pdp img[data-nv-studio-original-src*="everyday-clutch--yellow-mill--03.jpg"],
.nv-card img[data-nv-studio-original-src*="everyday-clutch--yellow-mill--03.jpg"],
img[src*="k6ej5Z7xHWABQsZrA4zbIBqJ6VTnAWJq.webp"] { clip-path: inset(2% 0 0 0); }
/* Exact-source wall remnant outside Tote Pro Max's photographed leather/handle. */
.nv-pdp img[data-nv-studio-original-src*="tote-pro-max--all--02.jpg"],
.nv-card img[data-nv-studio-original-src*="tote-pro-max--all--02.jpg"],
img[src*="8PfDJMaJXA4dEX4Eq76Qcmq8t4yfuEqq.webp"] {
  clip-path: polygon(22% 0,100% 0,100% 100%,0 100%,0 22.5%,22% 22.5%);
}

/* Keep the complete campaign scene on large screens and zoomed-out viewports. */
@media (min-width:1600px) {
  .nv-home .nv-hero--full {
    width:100%;
    max-width:none;
    margin-inline:auto;
  }
  .nv-home .nv-hero--full [data-nv-hero-slide] {
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:1672 / 941;
  }
  .nv-home .nv-hero--full [data-nv-hero-slide] picture {
    inset:0;
    width:100%;
    height:100%;
  }
  .nv-home .nv-hero--full [data-nv-hero-slide] picture img {
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }
}
/* Let wide-screen reels use the available rail width without enlarging cards indefinitely. */
@media (min-width:1600px) {
  .nv-home .nv-rail__stage--reels {
    width:100%; max-width:none; margin-inline:0; min-width:0;
  }
  .nv-home .nv-rail__stage--reels > .nv-reels__track {
    width:100%; max-width:none; margin-inline:0; min-width:0;
  }
  .nv-home .nv-reels__track > .nv-reel {
    flex:0 0 clamp(240px,15vw,360px); max-width:360px;
  }
}
/* Bound ticker paint and keep the many hero slide controls inside small screens. */
.nv-header .nv-ribbon--ticker { min-width:0; max-width:100%; overflow:hidden; }
@media (max-width:767px) {
  .nv-home .nv-hero__controls { min-width:0; max-width:100%; padding-inline:1rem; box-sizing:border-box; }
  .nv-home .nv-hero__dots { min-width:0; max-width:100%; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
  .nv-home .nv-hero__dots::-webkit-scrollbar { display:none; }
  .nv-home .nv-hero__dots > button { flex-shrink:0; }
}
/* owner_quantity_and_gallery_controls */
.nv-buy__quantity-line{display:flex;align-items:center;gap:14px;flex-wrap:wrap;grid-column:1/-1;width:100%}.nv-buy__quantity-line .nv-buy__stock{margin:0;order:0}.nv-card__arrow:not([hidden]){display:inline-flex;opacity:0;pointer-events:none}.nv-card__arrow[hidden]{display:none}
.nv-card__badges .nv-badge--sold{background:#fff;color:var(--nv-ink);border:1px solid var(--nv-line);font-weight:500;text-transform:none;letter-spacing:0;box-shadow:none}
/* owner_neutral_stock_text */
.nv-body .nv-buy__quantity-line .nv-buy__stock{color:inherit;font:inherit;letter-spacing:normal;text-transform:none}
/* owner_mobile_cards_without_arrows: detail-gallery controls remain independent. */
@media(max-width:767px){.nv-body .nv-card .nv-card__arrow{display:none!important;pointer-events:none!important}}
/* owner_mobile_menu_width: leave a visible strip of the page beside the menu. */
@media(max-width:767px){.nv-body #NirvanaMenu{width:85vw;max-width:85vw;right:auto}}
/* owner_clear_sold_out */
.nv-body .nv-card__badges .nv-badge--sold{background:#211d1a;color:#fff;border:1px solid #211d1a;font-size:14px;font-weight:600;line-height:1.25;padding:8px 12px;letter-spacing:0;text-transform:none;opacity:1}
/* owner_desktop_hover_arrows */
@media(min-width:768px){.nv-body .nv-card:hover .nv-card__arrow:not([hidden]),.nv-body .nv-card:focus-within .nv-card__arrow:not([hidden]){opacity:1;pointer-events:auto}}
/* owner_mobile_card_rail_scroll */
@media(max-width:767px){.nv-card .nv-card__media,.nv-card .nv-card__media>a,.nv-card .nv-card__media img{touch-action:auto}}
/* owner_soft_hover_and_recommendation_edges */
.nv-card-hover-fade{z-index:1;pointer-events:none!important;transition:opacity .32s cubic-bezier(.2,.65,.3,1)!important}
[data-nv-product] [data-nv-product-extra] .nv-card__media{outline:1px solid #e5e2dd;outline-offset:-1px;border-radius:2px;box-shadow:none}
@media(prefers-reduced-motion:reduce){.nv-card-hover-fade{transition:none!important}}
/* Nirvana footer refinement: existing native merchant content and links remain authoritative. */
.nv-body .nv-footer{background:#211d1a;color:#f7f4ee;border-top:1px solid rgba(255,255,255,.14)}
.nv-body .nv-footer .nv-footer__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:48px;row-gap:40px;padding-top:56px;padding-bottom:44px}
.nv-body .nv-footer .nv-footer__brand{grid-column:1/-1;display:grid;grid-template-columns:minmax(160px,.8fr) minmax(220px,1.1fr) minmax(260px,1.2fr);gap:40px;align-items:start;padding-bottom:36px;border-bottom:1px solid rgba(247,244,238,.16)}
.nv-body .nv-footer .nv-footer__brand>.nv-logo{margin:0;display:inline-flex;align-items:flex-start;justify-content:flex-start;width:148px;max-width:100%}
.nv-body .nv-footer .nv-footer__brand>.nv-logo img{display:block;width:148px;height:52px;object-fit:contain;object-position:left center}
.nv-body .nv-footer .nv-footer__brand>p{margin:2px 0 0;max-width:34ch;color:#d7d0c6;font-size:15px;line-height:1.8;font-weight:400}
.nv-body .nv-footer .nv-footer__contact{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin:0;min-width:0;color:#c4bbb0;font-size:13px;line-height:1.7}
.nv-body .nv-footer .nv-footer__contact>a{color:#f7f4ee;text-decoration:none;overflow-wrap:anywhere}
.nv-body .nv-footer .nv-footer__contact>span{max-width:42ch}
.nv-body .nv-footer .nv-footer__nav{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.nv-body .nv-footer .nv-footer__nav>strong{margin:0 0 11px;color:#f7f4ee;font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.16em;text-transform:uppercase}
.nv-body .nv-footer .nv-footer__nav>a{color:#d7d0c6;font-size:14px;line-height:1.65;min-height:29px;padding:3px 0;text-decoration:none;text-underline-offset:5px;max-width:100%}
.nv-body .nv-footer .nv-footer__nav>a:hover,.nv-body .nv-footer .nv-footer__contact>a:hover,.nv-body .nv-footer .nv-footer__social>a:hover{color:#fff;text-decoration:underline}
.nv-body .nv-footer a:focus-visible{outline:2px solid #f7f4ee;outline-offset:5px;border-radius:1px}
.nv-body .nv-footer .nv-footer__bottom{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:14px 28px;border-top:1px solid rgba(247,244,238,.16);padding-top:20px;padding-bottom:22px;color:#bfb5a8;font-size:12px;line-height:1.65}
.nv-body .nv-footer .nv-footer__social{display:flex;flex-wrap:wrap;gap:16px}
.nv-body .nv-footer .nv-footer__social>a{color:#d7d0c6;text-decoration:none}
@media(min-width:768px) and (max-width:1023px){.nv-body .nv-footer .nv-footer__grid{column-gap:28px}.nv-body .nv-footer .nv-footer__brand{grid-template-columns:minmax(120px,.7fr) minmax(180px,1fr) minmax(220px,1.2fr);gap:24px}}
@media(max-width:767px){.nv-body .nv-footer .nv-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:30px;padding-top:36px;padding-bottom:28px}.nv-body .nv-footer .nv-footer__brand{display:flex;flex-direction:column;gap:18px;padding-bottom:28px}.nv-body .nv-footer .nv-footer__brand>.nv-logo{width:140px}.nv-body .nv-footer .nv-footer__brand>.nv-logo img{width:140px;height:46px}.nv-body .nv-footer .nv-footer__brand>p{max-width:33ch;margin:0;font-size:14px;line-height:1.8}.nv-body .nv-footer .nv-footer__contact{font-size:13px;gap:7px}.nv-body .nv-footer .nv-footer__nav{gap:0}.nv-body .nv-footer .nv-footer__nav>strong{margin-bottom:10px}.nv-body .nv-footer .nv-footer__nav>a{font-size:13px;line-height:1.6;padding:9px 0;min-height:39px}.nv-body .nv-footer .nv-footer__bottom{align-items:flex-start;justify-content:flex-start;gap:8px 20px;padding-top:18px;padding-bottom:22px;font-size:11px}.nv-body .nv-footer .nv-footer__social{width:100%;margin-top:4px}}