/* ========================================================================== 
   NMD Creations v0.2.5 — Blue Steel Theme Lock + Raised 3D Controls
   Loaded after the legacy catalog styles so NMD merchandise pages remain
   blue/silver/charcoal with no F.T.M. amber, gold, pink, or purple UI bleed.
   Product artwork colors are intentionally untouched.
   ========================================================================== */

:root {
  --nmd025-ice: #eefcff;
  --nmd025-pale: #ccefff;
  --nmd025-sky: #8cddff;
  --nmd025-blue: #45b9ea;
  --nmd025-blue-mid: #268fc5;
  --nmd025-blue-deep: #15577f;
  --nmd025-steel: #8ea7b4;
  --nmd025-charcoal: #11171b;
  --nmd025-black: #06090b;
  --nmd025-line: rgba(137, 218, 250, .36);
  --nmd025-line-strong: rgba(191, 239, 255, .78);
  --nmd025-glow: rgba(69, 185, 234, .28);
  --nmd025-glow-strong: rgba(73, 194, 244, .44);
}

html body {
  /* Remap legacy F.T.M. variables so any old rule that survives becomes NMD blue. */
  --gold: var(--nmd025-blue) !important;
  --gold-2: var(--nmd025-blue-deep) !important;
  --gold-soft: var(--nmd025-pale) !important;
  --champagne: var(--nmd025-ice) !important;
  --cream: #dcebf1 !important;
  --ivory: #f8fdff !important;
  --muted: #b7c8d0 !important;
  --muted-2: #8399a5 !important;
  --line: var(--nmd025-line) !important;
  --line-strong: var(--nmd025-line-strong) !important;
  --tumbler-line: var(--nmd025-line) !important;
  --tumbler-panel: #0b1013 !important;
  --uniform-accent: var(--nmd025-blue) !important;
  --uniform-accent-soft: var(--nmd025-line-strong) !important;
}

/* ----------------------------- Header identity ----------------------------- */
.brand > img,
.logo-image-wrap .brand-logo-img,
.logo-mark img {
  animation: nmd025MarkBlue 8s ease-in-out infinite !important;
  box-shadow: 0 0 18px rgba(73, 194, 244, .15) !important;
}

.brand-copy strong,
.brand-text strong,
.site-header .brand-text strong {
  color: var(--nmd025-pale) !important;
  -webkit-text-fill-color: transparent !important;
  background-image: linear-gradient(
    100deg,
    #7f98a5 0%,
    #edfaff 20%,
    #79d5fb 38%,
    #ffffff 52%,
    #3faee0 72%,
    #bfeeff 88%,
    #819aa7 100%
  ) !important;
  background-size: 300% 100% !important;
  background-position: 0% 50% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  animation: nmd025BlueText 7.2s ease-in-out infinite !important;
  filter: drop-shadow(0 0 10px rgba(80, 194, 238, .15)) !important;
}

.logo-image-wrap::before {
  background: conic-gradient(
    from 0deg,
    #637b88,
    #dff7ff,
    #4fb8e7,
    #ffffff,
    #258cc1,
    #bcecff,
    #637b88
  ) !important;
}

@keyframes nmd025MarkBlue {
  0%, 100% {
    filter: grayscale(.08) brightness(.98) contrast(1.10) drop-shadow(0 0 5px rgba(87, 194, 235, .12));
    box-shadow: 0 0 14px rgba(71, 177, 222, .12);
  }
  50% {
    filter: grayscale(0) brightness(1.13) contrast(1.12) drop-shadow(0 0 8px rgba(117, 218, 255, .24));
    box-shadow: 0 0 27px rgba(84, 202, 249, .31);
  }
}

/* ------------------------------ Title system ------------------------------ */
:where(
  body.apparel-site main h1,
  body.apparel-site main h2,
  body.apparel-site main h3,
  body.tumbler-site main h1,
  body.tumbler-site main h2,
  body.tumbler-site main h3,
  body.apparel-site .apparel-card-copy h3,
  body.apparel-site .apparel-card-copy h3 > a,
  body.apparel-site .apparel-product-card h3,
  body.apparel-site .apparel-product-card h3 > a,
  body.tumbler-site .tumbler-card h3,
  body.tumbler-site .tumbler-bevel-box h2,
  body.tumbler-site .tumbler-buy-panel h1,
  body.apparel-site .uniform-product-panel h1,
  body.apparel-site .selector-heading strong
) {
  color: var(--nmd025-pale) !important;
  -webkit-text-fill-color: transparent !important;
  background-image: linear-gradient(
    100deg,
    #7e98a6 0%,
    #eaf9ff 18%,
    #72d1f8 36%,
    #ffffff 50%,
    #3ba8dc 68%,
    #bcecff 84%,
    #839daa 100%
  ) !important;
  background-size: 310% 100% !important;
  background-position: 0% 50% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  animation: nmd025BlueText 7.4s ease-in-out infinite !important;
  text-shadow: none !important;
  filter: drop-shadow(0 2px 12px rgba(72, 183, 229, .16)) !important;
}

body.apparel-site .apparel-product-card:nth-child(3n + 2) .apparel-card-copy h3,
body.apparel-site .apparel-product-card:nth-child(3n + 2) .apparel-card-copy h3 > a {
  animation-delay: -2.4s !important;
}
body.apparel-site .apparel-product-card:nth-child(3n) .apparel-card-copy h3,
body.apparel-site .apparel-product-card:nth-child(3n) .apparel-card-copy h3 > a {
  animation-delay: -4.8s !important;
}

@keyframes nmd025BlueText {
  0%, 100% { background-position: 0% 50%; filter: brightness(.96) drop-shadow(0 2px 10px rgba(72,183,229,.11)); }
  50% { background-position: 100% 50%; filter: brightness(1.18) drop-shadow(0 2px 17px rgba(81,201,249,.24)); }
}

/* ---------------------------- Raised panel system -------------------------- */
body.apparel-site :is(
  .card,
  .apparel-page-hero .card,
  .custom-apparel-panel,
  .custom-service-card,
  .shop-sidebar-desktop,
  .shop-sidebar-mobile,
  .shop-content > .section-head,
  .apparel-product-card,
  .apparel-buy-panel,
  .apparel-description-card,
  .apparel-guide-card,
  .apparel-related-heading,
  .apparel-policy-notice p,
  .uniform-product-panel,
  .uniform-selected
),
body.tumbler-site :is(
  .card,
  .tumbler-card,
  .tumbler-bevel-box,
  .tumbler-buy-panel,
  .tumbler-summary,
  .tumbler-includes,
  .tumbler-addon,
  .tumbler-specialty-options,
  .tumbler-straw-lineup,
  .uniform-product-panel,
  .uniform-selected
) {
  position: relative;
  border: 1px solid var(--nmd025-line) !important;
  background:
    linear-gradient(155deg, rgba(31,42,49,.96) 0%, rgba(13,19,23,.98) 46%, rgba(7,11,14,.99) 100%),
    var(--metal-texture) center / cover no-repeat !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.18),
    inset 0 7px 15px rgba(255,255,255,.035),
    inset -3px -3px 0 rgba(0,0,0,.88),
    inset 0 -10px 18px rgba(0,0,0,.40),
    0 2px 0 rgba(156,221,248,.16),
    0 13px 0 rgba(3,8,11,.55),
    0 22px 46px rgba(0,0,0,.52),
    0 0 24px rgba(60,164,210,.08) !important;
}

body.apparel-site :is(
  .card,
  .custom-apparel-panel,
  .custom-service-card,
  .shop-sidebar-desktop,
  .shop-content > .section-head,
  .apparel-product-card,
  .apparel-buy-panel,
  .apparel-description-card,
  .apparel-guide-card,
  .apparel-related-heading
)::before,
body.tumbler-site :is(
  .card,
  .tumbler-card,
  .tumbler-buy-panel,
  .tumbler-summary,
  .tumbler-includes,
  .tumbler-addon,
  .tumbler-specialty-options,
  .tumbler-straw-lineup
)::before {
  content: "";
  position: absolute;
  inset: 4px;
  z-index: 0;
  border: 1px solid rgba(207,240,253,.12) !important;
  border-radius: inherit;
  pointer-events: none;
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,.16),
    inset -1px -1px 0 rgba(0,0,0,.76) !important;
}

body.apparel-site :is(
  .card,
  .custom-apparel-panel,
  .custom-service-card,
  .shop-sidebar-desktop,
  .shop-content > .section-head,
  .apparel-product-card,
  .apparel-buy-panel,
  .apparel-description-card,
  .apparel-guide-card,
  .apparel-related-heading
) > *,
body.tumbler-site :is(
  .card,
  .tumbler-card,
  .tumbler-bevel-box,
  .tumbler-buy-panel,
  .tumbler-summary,
  .tumbler-includes,
  .tumbler-addon,
  .tumbler-specialty-options,
  .tumbler-straw-lineup
) > * {
  position: relative;
  z-index: 1;
}

body.apparel-site :is(.card,.custom-service-card,.apparel-product-card):is(:hover,:focus-within),
body.tumbler-site :is(.card,.tumbler-card):is(:hover,:focus-within) {
  border-color: var(--nmd025-line-strong) !important;
  transform: translateY(-5px);
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.23),
    inset 0 7px 15px rgba(255,255,255,.05),
    inset -3px -3px 0 rgba(0,0,0,.90),
    inset 0 -10px 18px rgba(0,0,0,.42),
    0 2px 0 rgba(183,235,255,.22),
    0 13px 0 rgba(3,8,11,.50),
    0 28px 56px rgba(0,0,0,.58),
    0 0 34px var(--nmd025-glow) !important;
}

/* The tumbler section-heading box had a stubborn warm inner rim. */
body.tumbler-site .tumbler-bevel-box,
body.tumbler-site .tumbler-bevel-box::before {
  border-color: var(--nmd025-line) !important;
}
body.tumbler-site .tumbler-bevel-box {
  background:
    linear-gradient(155deg, rgba(27,38,45,.98), rgba(8,13,16,.99)) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.18),
    inset -3px -3px 0 rgba(0,0,0,.88),
    inset 0 -9px 16px rgba(0,0,0,.38),
    0 3px 0 rgba(120,207,243,.16),
    0 11px 0 rgba(3,8,11,.54),
    0 20px 44px rgba(0,0,0,.48),
    0 0 24px rgba(69,185,234,.10) !important;
}

/* ----------------------------- Button system ------------------------------ */
body :is(
  .btn,
  .details-link,
  .uniform-add-cart,
  .add-cart-btn,
  .cart-nav-link,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button
) {
  position: relative !important;
  isolation: isolate;
  overflow: hidden !important;
  border: 1px solid rgba(166,225,249,.46) !important;
  color: #f1fbff !important;
  -webkit-text-fill-color: currentColor !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.17) 0%, rgba(255,255,255,.035) 38%, transparent 42%),
    linear-gradient(145deg, #394a54 0%, #17242b 43%, #0a1115 68%, #223640 100%) !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.78) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.24),
    inset -2px -3px 0 rgba(0,0,0,.72),
    inset 0 -7px 10px rgba(0,0,0,.24),
    0 3px 0 #061017,
    0 8px 15px rgba(0,0,0,.34),
    0 0 0 rgba(69,185,234,0) !important;
  transition: transform .18s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease !important;
}

body :is(.btn-primary,.uniform-add-cart,.add-cart-btn) {
  color: #031017 !important;
  -webkit-text-fill-color: #031017 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.62) 0%, rgba(255,255,255,.16) 38%, transparent 40%),
    linear-gradient(145deg, #eafdff 0%, #a8e7ff 22%, #53bce9 50%, #287fae 76%, #8bdcff 100%) !important;
  border-color: rgba(215,247,255,.88) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.45) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.70),
    inset -2px -3px 0 rgba(8,66,94,.54),
    inset 0 -8px 13px rgba(12,91,127,.18),
    0 3px 0 #0c4d6e,
    0 9px 17px rgba(0,0,0,.36),
    0 0 0 rgba(69,185,234,0) !important;
}

body :is(
  .btn,
  .details-link,
  .uniform-add-cart,
  .add-cart-btn,
  .cart-nav-link,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button
)::before {
  content: "" !important;
  position: absolute !important;
  inset: 2px 3px auto 3px !important;
  height: 42% !important;
  border-radius: inherit !important;
  background: linear-gradient(180deg, rgba(255,255,255,.20), rgba(255,255,255,0)) !important;
  box-shadow: none !important;
  opacity: .72 !important;
  transform: none !important;
  animation: none !important;
  pointer-events: none !important;
  z-index: -1 !important;
}

body :is(
  .btn,
  .details-link,
  .uniform-add-cart,
  .add-cart-btn,
  .cart-nav-link,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button
)::after {
  content: "" !important;
  position: absolute !important;
  z-index: 3 !important;
  left: -70% !important;
  top: -35% !important;
  width: 34% !important;
  height: 170% !important;
  border-radius: 50% !important;
  background: linear-gradient(90deg, transparent, rgba(190,240,255,.92), transparent) !important;
  box-shadow: 0 0 18px rgba(69,185,234,.48) !important;
  opacity: 0;
  transform: skewX(-18deg) !important;
  transition: left .62s cubic-bezier(.2,.72,.2,1), opacity .18s ease !important;
  animation: none !important;
  pointer-events: none !important;
}

body :is(
  .btn,
  .details-link,
  .uniform-add-cart,
  .add-cart-btn,
  .cart-nav-link,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button
):is(:hover,:focus-visible) {
  border-color: rgba(210,247,255,.94) !important;
  transform: translateY(-3px) !important;
  filter: brightness(1.08) saturate(1.04) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.34),
    inset -2px -3px 0 rgba(0,0,0,.72),
    inset 0 -7px 10px rgba(0,0,0,.22),
    0 3px 0 #082e43,
    0 12px 22px rgba(0,0,0,.42),
    0 10px 26px var(--nmd025-glow-strong),
    0 0 34px var(--nmd025-glow) !important;
}

body :is(.btn-primary,.uniform-add-cart,.add-cart-btn):is(:hover,:focus-visible) {
  color: #020b10 !important;
  -webkit-text-fill-color: #020b10 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72) 0%, rgba(255,255,255,.18) 38%, transparent 40%),
    linear-gradient(145deg, #ffffff 0%, #c8f2ff 20%, #69cdf4 48%, #2f94c6 75%, #a9eaff 100%) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.78),
    inset -2px -3px 0 rgba(9,73,102,.55),
    inset 0 -8px 13px rgba(12,91,127,.16),
    0 3px 0 #0a587e,
    0 13px 24px rgba(0,0,0,.42),
    0 10px 30px rgba(62,188,238,.42),
    0 0 38px rgba(69,185,234,.28) !important;
}

body :is(
  .btn,
  .details-link,
  .uniform-add-cart,
  .add-cart-btn,
  .cart-nav-link,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button
):is(:hover,:focus-visible)::after {
  left: 138% !important;
  opacity: .9 !important;
}

body :is(
  .btn,
  .details-link,
  .uniform-add-cart,
  .add-cart-btn,
  .cart-nav-link,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button
):active {
  transform: translateY(2px) !important;
  box-shadow:
    inset 2px 3px 7px rgba(0,0,0,.48),
    inset -1px -1px 0 rgba(255,255,255,.11),
    0 1px 0 #07141b,
    0 4px 9px rgba(0,0,0,.34),
    0 0 18px rgba(69,185,234,.20) !important;
}

/* Selected filters and option buttons use blue, never amber. */
body.apparel-site :is(
  .apparel-filter-bar button.active,
  .apparel-filter-btn.active,
  .shop-side-links a.active,
  .apparel-size-btn.active,
  .apparel-swatch.active,
  .apparel-thumb.active
),
body.tumbler-site :is(
  .tumbler-cup-picker button.active,
  .tumbler-design-picker button.active,
  .tumbler-gallery-thumbs button.active,
  .tumbler-straw-picker button.active,
  .uniform-choice-row button.active,
  .uniform-choice-row button[aria-pressed="true"]
) {
  color: #031017 !important;
  -webkit-text-fill-color: #031017 !important;
  border-color: rgba(215,247,255,.90) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.08) 40%, transparent 42%),
    linear-gradient(145deg, #eefdff 0%, #a9e8ff 24%, #52bce9 52%, #2b84b2 78%, #91ddfb 100%) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.66),
    inset -2px -3px 0 rgba(8,65,92,.48),
    0 3px 0 #0b5275,
    0 8px 18px rgba(0,0,0,.34),
    0 0 24px rgba(69,185,234,.30) !important;
}

/* -------------------------- Remaining warm accents ------------------------- */
body.apparel-site :is(
  .eyebrow,
  .apparel-breadcrumbs,
  .apparel-breadcrumbs a,
  .apparel-card-bottom strong,
  .custom-service-price strong,
  .custom-service-price span,
  .apparel-price,
  .apparel-selected em,
  .apparel-status strong,
  .uniform-kicker,
  .uniform-section-heading,
  .uniform-option-group > span,
  .uniform-quantity > span
),
body.tumbler-site :is(
  .eyebrow,
  .tumbler-price,
  .tumbler-summary em,
  .tumbler-field > span,
  .tumbler-addon legend,
  .tumbler-bevel-box .eyebrow,
  .tumbler-finished-placeholder,
  .uniform-kicker,
  .uniform-section-heading,
  .uniform-option-group > span,
  .uniform-quantity > span
) {
  color: var(--nmd025-pale) !important;
  -webkit-text-fill-color: var(--nmd025-pale) !important;
  text-shadow: 0 0 14px rgba(69,185,234,.16) !important;
}

body.apparel-site :is(.apparel-card-copy h3::after,.section-head h2::after,.apparel-related-heading h2::after),
body.tumbler-site :is(.tumbler-card h3::after,.tumbler-bevel-box h2::after,.section-head h2::after),
body :is(.section-heading::after,.ornament-divider::before,.ornament-divider::after) {
  background: linear-gradient(90deg, transparent, #2f9fd2, #8bdeff, #2f9fd2, transparent) !important;
  box-shadow: 0 0 14px rgba(69,185,234,.24) !important;
}

body.apparel-site :is(.apparel-page-hero,.apparel-product-hero,.section.alt,.apparel-details-section),
body.tumbler-site :is(.tumbler-collection-hero,.section,.section.alt) {
  background:
    radial-gradient(circle at 18% 8%, rgba(61,160,205,.10), transparent 30rem),
    radial-gradient(circle at 84% 22%, rgba(50,131,169,.08), transparent 28rem),
    linear-gradient(145deg, rgba(7,11,14,.97), rgba(14,21,25,.95)) !important;
  border-color: rgba(137,218,250,.17) !important;
}

body.apparel-site :is(.apparel-status,.apparel-policy-notice p,.catalog-status,.nmd-pending-note),
body.tumbler-site :is(.catalog-status,.nmd-pending-note,.tumbler-turnaround) {
  border-color: rgba(137,218,250,.28) !important;
  border-left-color: var(--nmd025-blue) !important;
  background: linear-gradient(135deg, rgba(48,145,188,.12), rgba(255,255,255,.025)) !important;
  color: #c4d2d9 !important;
}

/* Keep image wells dark-neutral. Product artwork itself is never recolored. */
body.apparel-site :is(.apparel-card-image,.apparel-main-image,.apparel-gallery figure),
body.tumbler-site :is(.tumbler-card-rotator,.tumbler-hero-finished,.tumbler-gallery,.tumbler-mock-stage) {
  border-color: rgba(137,218,250,.22) !important;
  background: radial-gradient(circle at 50% 35%, #222d33 0%, #10171b 64%, #070b0d 100%) !important;
}

@media (prefers-reduced-motion: reduce) {
  .brand > img,
  .logo-image-wrap .brand-logo-img,
  .logo-mark img,
  .brand-copy strong,
  .brand-text strong,
  body.apparel-site main h1,
  body.apparel-site main h2,
  body.apparel-site main h3,
  body.tumbler-site main h1,
  body.tumbler-site main h2,
  body.tumbler-site main h3,
  body.apparel-site .apparel-card-copy h3,
  body.apparel-site .apparel-card-copy h3 > a,
  body.tumbler-site .tumbler-card h3 {
    animation: none !important;
    background-position: 50% 50% !important;
  }
}


/* ========================================================================== 
   NMD Creations v0.2.5 — final sitewide cool-color lock
   Fixes homepage warm borders, removes hue-generated pink/purple from the
   logo, gives every clickable control a quick silver sweep, and strengthens
   the raised blue-steel bevel without recoloring product art or photography.
   ========================================================================== */

/* Hard-lock the NMD interface palette everywhere, including homepage/policies. */
html body {
  --gold: #49b9e8 !important;
  --gold-2: #195f87 !important;
  --gold-soft: #d9f3ff !important;
  --champagne: #f4fbff !important;
  --cream: #e5f0f5 !important;
  --ivory: #ffffff !important;
  --line: rgba(139, 215, 247, .34) !important;
  --line-strong: rgba(215, 246, 255, .76) !important;
  --uniform-accent: #49b9e8 !important;
  --uniform-accent-soft: #ccefff !important;
  --tumbler-line: rgba(139, 215, 247, .34) !important;
}

/* The logo image is neutral artwork. Never hue-rotate it again. */
html body .brand > img,
html body .logo-image-wrap .brand-logo-img,
html body .logo-mark img {
  animation: nmd025MarkBlue 7.2s ease-in-out infinite !important;
  filter: grayscale(.04) brightness(1.03) contrast(1.11) !important;
}

html body .logo-image-wrap::before {
  background: conic-gradient(
    from 0deg,
    #536d7b,
    #dff7ff,
    #67c7ee,
    #ffffff,
    #2b8fc0,
    #bcecff,
    #536d7b
  ) !important;
}

/* Every live NMD title uses silver/ice/blue only. */
html body :is(
  main h1,
  main h2,
  main h3,
  .brand-copy strong,
  .brand-text strong,
  .apparel-card-copy h3,
  .apparel-card-copy h3 > a,
  .apparel-product-card h3,
  .apparel-product-card h3 > a,
  .tumbler-card h3,
  .selector-heading strong,
  .uniform-product-panel h1,
  .tumbler-buy-panel h1
) {
  color: #dff5ff !important;
  -webkit-text-fill-color: transparent !important;
  background-image: linear-gradient(
    100deg,
    #7f98a5 0%,
    #eaf9ff 18%,
    #75d3f9 35%,
    #ffffff 50%,
    #43afe0 67%,
    #c4efff 84%,
    #839daa 100%
  ) !important;
  background-size: 310% 100% !important;
  background-position: 0% 50% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  animation: nmd025BlueText 7.1s ease-in-out infinite !important;
  filter: drop-shadow(0 2px 12px rgba(72, 183, 229, .15)) !important;
  text-shadow: none !important;
}

/* Raised 3D blue-steel boxes across both the homepage and merchandise pages. */
html body :is(
  .card,
  .section-head,
  .cta-band,
  .hero-art,
  .logo-panel,
  .contact-card,
  .notice,
  .product-shell,
  .custom-apparel-panel,
  .custom-service-card,
  .shop-sidebar-desktop,
  .shop-sidebar-mobile,
  .apparel-product-card,
  .apparel-buy-panel,
  .apparel-description-card,
  .apparel-guide-card,
  .apparel-related-heading,
  .apparel-policy-notice p,
  .uniform-product-panel,
  .uniform-selected,
  .tumbler-card,
  .tumbler-bevel-box,
  .tumbler-buy-panel,
  .tumbler-summary,
  .tumbler-includes,
  .tumbler-addon,
  .tumbler-specialty-options,
  .tumbler-straw-lineup,
  .cart-panel,
  .cart-summary
) {
  border-color: rgba(140, 217, 248, .36) !important;
  background:
    linear-gradient(155deg, rgba(34,47,55,.96) 0%, rgba(14,21,25,.985) 45%, rgba(6,10,13,.995) 100%),
    var(--metal-texture) center / cover no-repeat !important;
  box-shadow:
    inset 3px 3px 1px rgba(255,255,255,.19),
    inset 0 8px 16px rgba(255,255,255,.035),
    inset -3px -4px 1px rgba(0,0,0,.92),
    inset 0 -12px 20px rgba(0,0,0,.43),
    0 3px 0 rgba(181,235,255,.17),
    0 10px 0 rgba(3,8,11,.58),
    0 23px 48px rgba(0,0,0,.54),
    0 0 26px rgba(64,176,221,.09) !important;
}

html body.home-page :is(.card,.section-head,.cta-band,.hero-art,.logo-panel) {
  border-color: rgba(142, 219, 250, .40) !important;
}

html body :is(.card,.apparel-product-card,.tumbler-card,.product-shell):is(:hover,:focus-within) {
  border-color: rgba(218, 247, 255, .82) !important;
  box-shadow:
    inset 3px 3px 1px rgba(255,255,255,.24),
    inset 0 8px 16px rgba(255,255,255,.05),
    inset -3px -4px 1px rgba(0,0,0,.92),
    inset 0 -12px 20px rgba(0,0,0,.43),
    0 3px 0 rgba(205,244,255,.24),
    0 11px 0 rgba(3,8,11,.52),
    0 29px 58px rgba(0,0,0,.60),
    0 0 36px rgba(69,185,234,.25) !important;
}

/* Cool metallic pills/badges and the generated cup-name plate. */
html body :is(.badge,.pill,.luxury-badge,.product-meta span) {
  color: #e5f7ff !important;
  -webkit-text-fill-color: #e5f7ff !important;
  border-color: rgba(155,224,251,.35) !important;
  background: linear-gradient(145deg, rgba(58,82,94,.72), rgba(12,18,22,.94)) !important;
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,.19),
    inset -1px -2px 0 rgba(0,0,0,.72),
    0 4px 9px rgba(0,0,0,.24) !important;
}

html body .tumbler-plate-label {
  color: #061016 !important;
  background: linear-gradient(180deg, #eafdff 0%, #a8e7ff 38%, #4cafda 100%) !important;
  border: 1px solid rgba(222,249,255,.84) !important;
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,.70),
    inset -1px -2px 0 rgba(12,76,105,.55),
    0 4px 10px rgba(0,0,0,.28) !important;
}

/* Dark raised control surface. This covers tabs, selectors, swatches and links
   that behave like buttons, while leaving plain text links alone. */
html body :is(
  .btn,
  .details-link,
  .card-link,
  .nav-cta,
  .cart-nav-link,
  .menu-toggle,
  .nav-toggle,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .uniform-quantity button,
  .cart-quantity button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button,
  .tumbler-upload button,
  .tumbler-finished-image-button
) {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  border-color: rgba(159,225,250,.48) !important;
  color: #f0fbff !important;
  -webkit-text-fill-color: currentColor !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.035) 37%, transparent 41%),
    linear-gradient(145deg, #3a4d57 0%, #17252c 42%, #081015 69%, #213944 100%) !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.82) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.25),
    inset -2px -3px 0 rgba(0,0,0,.77),
    inset 0 -7px 11px rgba(0,0,0,.26),
    0 3px 0 #061017,
    0 9px 17px rgba(0,0,0,.37),
    0 0 0 rgba(69,185,234,0) !important;
  transition: transform .17s ease, box-shadow .2s ease, border-color .2s ease, filter .2s ease !important;
}

/* Primary and selected controls use blue steel only—no rose/violet stop. */
html body :is(.btn-primary,.uniform-add-cart,.add-cart-btn),
html body.apparel-site :is(
  .apparel-filter-bar button.active,
  .apparel-filter-btn.active,
  .shop-side-links a.active,
  .apparel-size-btn.active,
  .apparel-swatch.active,
  .apparel-thumb.active
),
html body.tumbler-site :is(
  .tumbler-cup-picker button.active,
  .tumbler-design-picker button.active,
  .tumbler-gallery-thumbs button.active,
  .tumbler-straw-picker button.active,
  .uniform-choice-row button.active,
  .uniform-choice-row button[aria-pressed="true"]
) {
  color: #031017 !important;
  -webkit-text-fill-color: #031017 !important;
  border-color: rgba(222,249,255,.94) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.68) 0%, rgba(255,255,255,.16) 37%, transparent 41%),
    linear-gradient(145deg, #f6fdff 0%, #c8f2ff 18%, #83d8f8 39%, #43aeda 63%, #1f739e 80%, #9de5ff 100%) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.47) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.75),
    inset -2px -3px 0 rgba(8,66,94,.58),
    inset 0 -8px 13px rgba(12,91,127,.18),
    0 3px 0 #0c4d6e,
    0 9px 18px rgba(0,0,0,.38),
    0 0 26px rgba(69,185,234,.29) !important;
}

html body :is(
  .btn,
  .details-link,
  .card-link,
  .nav-cta,
  .cart-nav-link,
  .menu-toggle,
  .nav-toggle,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .uniform-quantity button,
  .cart-quantity button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button,
  .tumbler-upload button
):is(:hover,:focus-visible) {
  border-color: rgba(221,249,255,.96) !important;
  transform: translateY(-3px) !important;
  filter: brightness(1.08) saturate(1.02) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.38),
    inset -2px -3px 0 rgba(0,0,0,.74),
    inset 0 -7px 10px rgba(0,0,0,.22),
    0 3px 0 #082e43,
    0 13px 23px rgba(0,0,0,.44),
    0 10px 28px rgba(69,185,234,.39),
    0 0 35px rgba(69,185,234,.24) !important;
}

html body :is(
  .btn,
  .details-link,
  .card-link,
  .nav-cta,
  .cart-nav-link,
  .menu-toggle,
  .nav-toggle,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .uniform-quantity button,
  .cart-quantity button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button,
  .tumbler-upload button
):active {
  transform: translateY(2px) !important;
  box-shadow:
    inset 2px 4px 8px rgba(0,0,0,.50),
    inset -1px -1px 0 rgba(255,255,255,.12),
    0 1px 0 #07141b,
    0 4px 9px rgba(0,0,0,.36),
    0 0 18px rgba(69,185,234,.20) !important;
}

/* Quick silver flash across every actual button and every button-like tab/link.
   This deliberately wins over old gold and violet ::before/::after sweeps. */
html body :is(
  button,
  .btn,
  .details-link,
  .card-link,
  .nav-cta,
  .cart-nav-link,
  .main-nav a,
  .nav-links a,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-related-heading a
)::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  z-index: 20 !important;
  top: -65% !important;
  left: -54% !important;
  width: 24% !important;
  height: 230% !important;
  border-radius: 50% !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(221,242,251,.10) 18%,
    rgba(255,255,255,.97) 48%,
    rgba(188,229,246,.50) 68%,
    transparent 100%
  ) !important;
  box-shadow: 0 0 16px rgba(218,246,255,.48) !important;
  opacity: 0 !important;
  transform: skewX(-18deg) !important;
  transition: left .48s cubic-bezier(.18,.72,.22,1), opacity .10s ease !important;
  animation: none !important;
  pointer-events: none !important;
}

html body :is(
  button,
  .btn,
  .details-link,
  .card-link,
  .nav-cta,
  .cart-nav-link,
  .main-nav a,
  .nav-links a,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-related-heading a
):is(:hover,:focus-visible)::after {
  left: 136% !important;
  opacity: .94 !important;
}

/* Preserve a top highlight separately from the traveling silver sweep. */
html body :is(
  .btn,
  .details-link,
  .card-link,
  .nav-cta,
  .cart-nav-link,
  .menu-toggle,
  .nav-toggle,
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .uniform-quantity button,
  .cart-quantity button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button,
  .tumbler-upload button
)::before {
  content: "" !important;
  position: absolute !important;
  inset: 2px 3px auto 3px !important;
  height: 40% !important;
  border-radius: inherit !important;
  background: linear-gradient(180deg, rgba(255,255,255,.23), rgba(255,255,255,0)) !important;
  box-shadow: none !important;
  opacity: .78 !important;
  transform: none !important;
  animation: none !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

/* Header navigation receives the silver sweep but keeps a slimmer profile. */
html body :is(.main-nav a,.nav-links a) {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
}
html body :is(.main-nav a.active,.nav-links a[aria-current="page"]) {
  color: #eafaff !important;
  border-color: rgba(157,225,250,.34) !important;
  background: linear-gradient(145deg, rgba(44,91,112,.50), rgba(13,25,31,.88)) !important;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.14), 0 0 18px rgba(69,185,234,.17) !important;
}

/* Replace all visible NMD UI divider accents with blue/silver. */
html body :is(
  .apparel-card-copy h3::after,
  .section-head h2::after,
  .apparel-related-heading h2::after,
  .tumbler-card h3::after,
  .tumbler-bevel-box h2::after,
  .section-heading::after,
  .ornament-divider::before,
  .ornament-divider::after
) {
  background: linear-gradient(90deg, transparent, #2f9fd2, #c8f2ff, #5cc3eb, transparent) !important;
  box-shadow: 0 0 14px rgba(69,185,234,.25) !important;
}

html body :focus-visible {
  outline: 2px solid #9de5ff !important;
  outline-offset: 3px !important;
}

@media (prefers-reduced-motion: reduce) {
  html body :is(button,.btn,.details-link,.card-link,.nav-cta,.cart-nav-link,.main-nav a,.nav-links a)::after {
    transition: none !important;
  }
}

/* ========================================================================== 
   v0.2.5 specificity seal — these rules intentionally mirror the exact body
   classes used by the merchandise pages so older F.T.M. declarations cannot
   win merely because they contain a longer selector.
   ========================================================================== */
html body.apparel-site :is(
  .card,
  .custom-apparel-panel,
  .custom-service-card,
  .shop-sidebar-desktop,
  .shop-sidebar-mobile,
  .shop-content > .section-head,
  .apparel-product-card,
  .apparel-buy-panel,
  .apparel-description-card,
  .apparel-guide-card,
  .apparel-related-heading,
  .apparel-policy-notice p,
  .uniform-product-panel,
  .uniform-selected
),
html body.tumbler-site :is(
  .card,
  .tumbler-card,
  .tumbler-bevel-box,
  .tumbler-buy-panel,
  .tumbler-summary,
  .tumbler-includes,
  .tumbler-addon,
  .tumbler-specialty-options,
  .tumbler-straw-lineup,
  .uniform-product-panel,
  .uniform-selected
) {
  border-color: rgba(140, 217, 248, .36) !important;
  background:
    linear-gradient(155deg, rgba(34,47,55,.96) 0%, rgba(14,21,25,.985) 45%, rgba(6,10,13,.995) 100%),
    var(--metal-texture) center / cover no-repeat !important;
  box-shadow:
    inset 3px 3px 1px rgba(255,255,255,.19),
    inset 0 8px 16px rgba(255,255,255,.035),
    inset -3px -4px 1px rgba(0,0,0,.92),
    inset 0 -12px 20px rgba(0,0,0,.43),
    0 3px 0 rgba(181,235,255,.17),
    0 10px 0 rgba(3,8,11,.58),
    0 23px 48px rgba(0,0,0,.54),
    0 0 26px rgba(64,176,221,.09) !important;
}

html body.apparel-site :is(
  .apparel-filter-bar button,
  .apparel-filter-btn,
  .apparel-category-links a,
  .shop-side-links a,
  .apparel-size-btn,
  .apparel-swatch,
  .apparel-thumb,
  .uniform-choice-row button,
  .uniform-quantity button
),
html body.tumbler-site :is(
  .tumbler-cup-picker button,
  .tumbler-design-picker button,
  .tumbler-gallery-thumbs button,
  .tumbler-straw-picker button,
  .uniform-choice-row button,
  .uniform-quantity button,
  .tumbler-carousel-controls > button,
  .tumbler-lightbox button,
  .tumbler-upload button
) {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  border-color: rgba(159,225,250,.48) !important;
  color: #f0fbff !important;
  -webkit-text-fill-color: currentColor !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.035) 37%, transparent 41%),
    linear-gradient(145deg, #3a4d57 0%, #17252c 42%, #081015 69%, #213944 100%) !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.82) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.25),
    inset -2px -3px 0 rgba(0,0,0,.77),
    inset 0 -7px 11px rgba(0,0,0,.26),
    0 3px 0 #061017,
    0 9px 17px rgba(0,0,0,.37),
    0 0 0 rgba(69,185,234,0) !important;
}

/* Primary actions get the brighter blue-steel face instead of inheriting the
   dark generic control face. */
html body .btn.btn-primary,
html body button.uniform-add-cart,
html body button.add-cart-btn,
html body .uniform-add-cart.add-cart-btn,
html body.apparel-site .apparel-cart-row .uniform-add-cart.add-cart-btn,
html body.tumbler-site .apparel-cart-row .uniform-add-cart.add-cart-btn {
  color: #031017 !important;
  -webkit-text-fill-color: #031017 !important;
  border-color: rgba(222,249,255,.94) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.68) 0%, rgba(255,255,255,.16) 37%, transparent 41%),
    linear-gradient(145deg, #f6fdff 0%, #c8f2ff 18%, #83d8f8 39%, #43aeda 63%, #1f739e 80%, #9de5ff 100%) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.47) !important;
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,.75),
    inset -2px -3px 0 rgba(8,66,94,.58),
    inset 0 -8px 13px rgba(12,91,127,.18),
    0 3px 0 #0c4d6e,
    0 9px 18px rgba(0,0,0,.38),
    0 0 26px rgba(69,185,234,.29) !important;
}

html body .btn.btn-primary:is(:hover,:focus-visible),
html body button.uniform-add-cart:is(:hover,:focus-visible),
html body button.add-cart-btn:is(:hover,:focus-visible),
html body .uniform-add-cart.add-cart-btn:is(:hover,:focus-visible) {
  color: #020b10 !important;
  -webkit-text-fill-color: #020b10 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.78) 0%, rgba(255,255,255,.20) 37%, transparent 41%),
    linear-gradient(145deg, #ffffff 0%, #dcf7ff 18%, #96e3ff 39%, #50bce7 63%, #287fa9 80%, #b9edff 100%) !important;
}

/* ========================================================================== 
   NMD Creations v0.2.6 — exact F.T.M. color eviction + silver-flash seal
   Fixes the last gold frames/dividers, yellow heading hovers, sidebar help,
   custom price boxes, selected summaries, radio dots, Quick Add, and both
   apparel/tumbler Add to Cart buttons. Product artwork remains untouched.
   ========================================================================== */
:root{
  --nmd026-ice:#f4fcff;--nmd026-pale:#d8f3ff;--nmd026-sky:#83dcff;
  --nmd026-blue:#49b9e8;--nmd026-deep:#15577f;
  --nmd026-line:rgba(140,217,248,.40);--nmd026-line-strong:rgba(218,247,255,.84);
}
html body{
  --gold:var(--nmd026-blue)!important;--gold-2:var(--nmd026-deep)!important;
  --gold-soft:var(--nmd026-pale)!important;--champagne:var(--nmd026-ice)!important;
  --line:var(--nmd026-line)!important;--line-strong:var(--nmd026-line-strong)!important;
  --uniform-accent:var(--nmd026-blue)!important;--uniform-accent-soft:var(--nmd026-pale)!important;
  --tumbler-line:var(--nmd026-line)!important;
}

/* Large hero plates that retained the original F.T.M. gold bevel. */
html body .page-hero>.container,
html body.apparel-site .apparel-page-hero>.container,
html body.apparel-site .apparel-product-hero>.container,
html body.tumbler-site .tumbler-collection-hero>.container,
html body .policy-hero>.container,html body .story-hero>.container,
html body .cart-page-hero>.container,html body .success-hero>.container{
  border-color:var(--nmd026-line)!important;outline-color:rgba(214,244,255,.11)!important;
  background:linear-gradient(155deg,rgba(31,44,52,.97),rgba(12,18,22,.99) 48%,rgba(5,9,12,.995)),var(--metal-texture) center/cover no-repeat!important;
  box-shadow:inset 3px 3px 1px rgba(255,255,255,.20),inset 0 8px 17px rgba(255,255,255,.035),inset -3px -4px 1px rgba(0,0,0,.92),inset 0 -12px 20px rgba(0,0,0,.43),0 3px 0 rgba(189,238,255,.18),0 8px 0 rgba(4,14,20,.72),0 12px 0 rgba(2,7,10,.72),0 25px 50px rgba(0,0,0,.55),0 0 30px rgba(69,185,234,.10)!important;
}

/* Section plaques plus the real divider pseudo-element (not h2::after). */
html body .section-head,
html body.apparel-site .shop-content>.section-head,
html body.tumbler-site #tumbler-collection .section-head{
  border-color:var(--nmd026-line)!important;outline-color:rgba(213,244,255,.085)!important;
  background:linear-gradient(155deg,rgba(34,48,56,.95),rgba(8,13,17,.985)),var(--metal-texture) center/cover no-repeat!important;
  box-shadow:inset 2px 2px 1px rgba(255,255,255,.20),inset -3px -3px 1px rgba(0,0,0,.90),inset 0 -8px 14px rgba(0,0,0,.34),0 3px 0 rgba(175,231,253,.17),0 8px 0 rgba(3,10,14,.62),0 18px 36px rgba(0,0,0,.43),0 0 25px rgba(69,185,234,.09)!important;
}
html body .section-head::after,html body .page-hero::after,
html body.apparel-site .apparel-page-hero::after,
html body.apparel-site .apparel-product-hero::after,
html body.tumbler-site .tumbler-collection-hero::after{
  background:linear-gradient(90deg,transparent,rgba(52,156,204,.26) 10%,#3ba8da 34%,#d9f5ff 51%,#62c8ef 70%,transparent)!important;
  box-shadow:0 0 14px rgba(69,185,234,.25)!important;
}

/* The remaining small warm boxes shown in the screenshots. */
html body.apparel-site .custom-service-price,
html body.apparel-site .shop-sidebar-help,
html body.apparel-site .apparel-selected,
html body .uniform-selected,html body.tumbler-site .tumbler-summary{
  border-color:rgba(145,219,248,.36)!important;
  background:linear-gradient(155deg,rgba(32,45,53,.94),rgba(7,12,15,.985)),var(--metal-texture) center/cover no-repeat!important;
  box-shadow:inset 2px 2px 0 rgba(255,255,255,.17),inset -2px -3px 0 rgba(0,0,0,.82),inset 0 -8px 13px rgba(0,0,0,.30),0 3px 0 rgba(164,225,249,.14),0 8px 16px rgba(0,0,0,.34),0 0 22px rgba(69,185,234,.08)!important;
}
html body.apparel-site .shop-sidebar-help{border-top-color:rgba(145,219,248,.38)!important}
html body.apparel-site .shop-sidebar-help strong,
html body.apparel-site .custom-service-price strong,
html body.apparel-site .apparel-selected em,
html body .uniform-selected em,html body.tumbler-site .tumbler-summary em{
  color:#e7f8ff!important;-webkit-text-fill-color:#e7f8ff!important;text-shadow:0 0 15px rgba(91,201,241,.20)!important;
}
html body.apparel-site .custom-service-price span,
html body.apparel-site .shop-sidebar-help p,
html body.apparel-site .apparel-selected span,html body.apparel-site .apparel-selected small,
html body .uniform-selected small,html body .shop-side-links a small,
html body .custom-service-card>p:not(.eyebrow){color:#bdd0d9!important;-webkit-text-fill-color:#bdd0d9!important}
html body.apparel-site .custom-service-number{color:rgba(155,224,250,.25)!important;-webkit-text-fill-color:rgba(155,224,250,.25)!important;text-shadow:0 0 16px rgba(69,185,234,.11)!important}

/* Sidebar active/hover states and left rail become blue steel. */
html body.apparel-site .shop-side-links a,
html body.apparel-site .shop-side-links a:is(:hover,:focus-visible,.active){
  border-color:rgba(151,221,249,.38)!important;color:#effbff!important;-webkit-text-fill-color:#effbff!important;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.02) 38%,transparent 42%),linear-gradient(145deg,#334752,#142128 45%,#081015 74%,#1d333d)!important;
  box-shadow:inset 2px 2px 0 rgba(255,255,255,.20),inset -2px -3px 0 rgba(0,0,0,.76),0 3px 0 #061017,0 8px 15px rgba(0,0,0,.30),0 0 20px rgba(69,185,234,.10)!important;
}
html body.apparel-site .shop-side-links a:is(:hover,:focus-visible,.active){border-color:rgba(218,247,255,.84)!important;transform:translateX(3px) translateY(-1px)!important;box-shadow:inset 2px 2px 0 rgba(255,255,255,.27),inset -2px -3px 0 rgba(0,0,0,.76),0 3px 0 #082e43,0 11px 20px rgba(0,0,0,.38),0 0 27px rgba(69,185,234,.25)!important}
html body.apparel-site .shop-side-links a.active{box-shadow:inset 4px 0 0 #69cdf4,inset 2px 2px 0 rgba(255,255,255,.25),inset -2px -3px 0 rgba(0,0,0,.76),0 3px 0 #082e43,0 10px 18px rgba(0,0,0,.36),0 0 27px rgba(69,185,234,.25)!important}
html body.apparel-site .shop-side-links a.active small{color:#cfefff!important;-webkit-text-fill-color:#cfefff!important}

/* Native selector dots/checks use NMD blue rather than F.T.M. amber. */
html body input[type=radio],html body input[type=checkbox],
html body.tumbler-site .tumbler-addon input[type=radio]{accent-color:#58bfea!important}

/* Beat the old unscoped F.T.M. hardcoded gold heading-hover animation. */
html body .product-card:hover h3,html body .product-shell:hover h3,
html body .card:hover h3,html body .card:hover h3>a,
html body.apparel-site .apparel-product-card:is(:hover,:focus-within) h3,
html body.apparel-site .apparel-product-card:is(:hover,:focus-within) h3>a,
html body.tumbler-site .tumbler-card:is(:hover,:focus-within) h3,
html body .section-head h2:is(:hover,:focus-visible),
html body .page-hero h1:is(:hover,:focus-visible),
html body.apparel-site .apparel-page-hero h1:is(:hover,:focus-visible),
html body.apparel-site .apparel-product-hero h1:is(:hover,:focus-visible),
html body.tumbler-site .tumbler-collection-hero h1:is(:hover,:focus-visible),
html body .uniform-title:is(:hover,:focus-visible),html body .uniform-section-heading:hover span,
html body .uniform-story-card h2:is(:hover,:focus-visible),html body .uniform-origin-card h2:is(:hover,:focus-visible){
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(100deg,#7f98a5,#eefaff 17%,#72d1f8 34%,#fff 49%,#43afe0 66%,#c7f0ff 83%,#829ca9)!important;
  background-size:310% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;
  animation:nmd026HoverTitleFlow 1.55s ease-in-out infinite!important;filter:brightness(1.16) drop-shadow(0 0 16px rgba(82,196,239,.28))!important;text-shadow:none!important;
}
@keyframes nmd026HoverTitleFlow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
html body :is(.details-link,.card-link,.main-nav a,.nav-links a,.apparel-category-links a,.shop-side-links a,.footer a,.apparel-related-heading a,.tumbler-custom-color-note a):is(:hover,:focus-visible){color:#effbff!important;-webkit-text-fill-color:#effbff!important}

/* Universal quick silver flash, including selectors and all actual buttons. */
html body button:not(:disabled),html body a.btn,html body a.details-link,
html body a.card-link,html body a.nav-cta,html body a.cart-nav-link,
html body .main-nav a,html body .nav-links a,html body .apparel-category-links a,
html body .shop-side-links a,html body details>summary{position:relative!important;isolation:isolate!important;overflow:hidden!important}
html body button:not(:disabled)::after,
html body button.add-cart-btn::after,html body button.uniform-add-cart::after,
html body button.uniform-add-cart.add-cart-btn::after,
html body.apparel-site .cart-action button.add-cart-btn::after,
html body.apparel-site .apparel-cart-row button.uniform-add-cart.add-cart-btn::after,
html body.tumbler-site button.uniform-add-cart.add-cart-btn::after,
html body a.btn::after,html body a.details-link::after,html body a.card-link::after,
html body a.nav-cta::after,html body a.cart-nav-link::after,
html body .main-nav a::after,html body .nav-links a::after,
html body .apparel-category-links a::after,html body .shop-side-links a::after,
html body details>summary::after{
  content:""!important;display:block!important;position:absolute!important;z-index:30!important;
  top:-70%!important;left:-58%!important;width:25%!important;height:240%!important;border-radius:50%!important;
  background:linear-gradient(90deg,transparent,rgba(215,241,251,.09) 16%,rgba(255,255,255,.98) 47%,rgba(197,233,247,.58) 68%,transparent)!important;
  box-shadow:0 0 17px rgba(222,248,255,.52)!important;opacity:0!important;transform:skewX(-18deg)!important;
  transition:none!important;animation:none!important;pointer-events:none!important;
}
html body button:not(:disabled):is(:hover,:focus-visible)::after,
html body button.add-cart-btn:is(:hover,:focus-visible)::after,
html body button.uniform-add-cart:is(:hover,:focus-visible)::after,
html body button.uniform-add-cart.add-cart-btn:is(:hover,:focus-visible)::after,
html body.apparel-site .cart-action button.add-cart-btn:is(:hover,:focus-visible)::after,
html body.apparel-site .apparel-cart-row button.uniform-add-cart.add-cart-btn:is(:hover,:focus-visible)::after,
html body.tumbler-site button.uniform-add-cart.add-cart-btn:is(:hover,:focus-visible)::after,
html body a.btn:is(:hover,:focus-visible)::after,html body a.details-link:is(:hover,:focus-visible)::after,
html body a.card-link:is(:hover,:focus-visible)::after,html body a.nav-cta:is(:hover,:focus-visible)::after,
html body a.cart-nav-link:is(:hover,:focus-visible)::after,html body .main-nav a:is(:hover,:focus-visible)::after,
html body .nav-links a:is(:hover,:focus-visible)::after,
html body .apparel-category-links a:is(:hover,:focus-visible)::after,
html body .shop-side-links a:is(:hover,:focus-visible)::after,
html body details>summary:is(:hover,:focus-visible)::after{animation:nmd026SilverFlash .54s cubic-bezier(.18,.72,.22,1) forwards!important}
@keyframes nmd026SilverFlash{0%{left:-58%;opacity:0}14%{opacity:.98}100%{left:138%;opacity:0}}

/* Exact high-specificity override for the old add-cart `display:none` sheen. */
html body button.add-cart-btn,html body button.uniform-add-cart,
html body button.uniform-add-cart.add-cart-btn,
html body.apparel-site .cart-action button.btn.btn-primary.add-cart-btn,
html body.apparel-site .apparel-cart-row button.uniform-add-cart.add-cart-btn,
html body.tumbler-site button.uniform-add-cart.add-cart-btn{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  color:#031017!important;-webkit-text-fill-color:#031017!important;border-color:rgba(222,249,255,.95)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.18) 37%,transparent 42%),linear-gradient(145deg,#f8feff,#cef4ff 18%,#88dcfa 39%,#46b2df 63%,#2079a6 80%,#a3e8ff)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.50)!important;
  box-shadow:inset 2px 2px 0 rgba(255,255,255,.78),inset -2px -3px 0 rgba(8,66,94,.60),inset 0 -8px 13px rgba(12,91,127,.18),0 3px 0 #0c4d6e,0 9px 18px rgba(0,0,0,.38),0 0 26px rgba(69,185,234,.30)!important;
}
html body button.add-cart-btn:is(:hover,:focus-visible),html body button.uniform-add-cart:is(:hover,:focus-visible),
html body button.uniform-add-cart.add-cart-btn:is(:hover,:focus-visible),
html body.apparel-site .cart-action button.btn.btn-primary.add-cart-btn:is(:hover,:focus-visible),
html body.apparel-site .apparel-cart-row button.uniform-add-cart.add-cart-btn:is(:hover,:focus-visible),
html body.tumbler-site button.uniform-add-cart.add-cart-btn:is(:hover,:focus-visible){
  color:#020b10!important;-webkit-text-fill-color:#020b10!important;border-color:#eefcff!important;
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.22) 37%,transparent 42%),linear-gradient(145deg,#fff,#e0f8ff 18%,#9be5ff 39%,#55c0ea 63%,#2a84ae 80%,#bdefff)!important;
  box-shadow:inset 2px 2px 0 rgba(255,255,255,.86),inset -2px -3px 0 rgba(8,66,94,.56),0 3px 0 #0a587e,0 13px 24px rgba(0,0,0,.43),0 10px 30px rgba(69,185,234,.43),0 0 38px rgba(69,185,234,.27)!important;
}
@media(prefers-reduced-motion:reduce){
  html body button:not(:disabled):is(:hover,:focus-visible)::after,
  html body a.btn:is(:hover,:focus-visible)::after,html body a.details-link:is(:hover,:focus-visible)::after,
  html body a.card-link:is(:hover,:focus-visible)::after,html body .main-nav a:is(:hover,:focus-visible)::after,
  html body .nav-links a:is(:hover,:focus-visible)::after,html body .shop-side-links a:is(:hover,:focus-visible)::after{animation:none!important;opacity:.55!important;left:38%!important}
}

/* ========================================================================== 
   NMD Creations v0.2.7 — cool footer seal + real reflective-sheen layer

   v0.2.6 relied on ::after pseudo-elements for the quick silver sweep. Those
   pseudo-elements collided with older button rules and were also suppressed
   whenever the visitor's operating system reported reduced motion. v0.2.7
   uses a small real DOM overlay instead, so the requested flash remains visible
   on buttons, tabs, image selectors, Quick Add, and Add to Cart in either motion
   preference. The overlay is decorative and never intercepts clicks.
   ========================================================================== */

:root {
  --nmd027-footer-line: rgba(128, 207, 240, .30);
  --nmd027-footer-line-bright: rgba(205, 241, 255, .48);
  --nmd027-footer-copy: #a9c0cb;
  --nmd027-footer-copy-bright: #dff6ff;
}

/* Final warm-color holdout: both footer systems used by the 53 pages. */
html body .footer,
html body .site-footer {
  border-top-color: var(--nmd027-footer-line) !important;
  background:
    linear-gradient(180deg, rgba(7, 12, 15, .965), rgba(3, 7, 9, .992)),
    var(--metal-texture) center / cover no-repeat !important;
  box-shadow:
    inset 0 1px 0 rgba(223, 247, 255, .055),
    0 -1px 0 rgba(75, 166, 207, .10) !important;
}

html body .footer .copyright,
html body .site-footer .footer-bottom {
  border-top-color: var(--nmd027-footer-line-bright) !important;
  color: var(--nmd027-footer-copy) !important;
  -webkit-text-fill-color: var(--nmd027-footer-copy) !important;
  text-shadow: 0 0 12px rgba(91, 191, 232, .08) !important;
}

html body .footer .footer-links > strong,
html body .site-footer .footer-grid h3 {
  color: var(--nmd027-footer-copy-bright) !important;
  -webkit-text-fill-color: var(--nmd027-footer-copy-bright) !important;
}

html body .footer a:is(:hover, :focus-visible),
html body .site-footer a:is(:hover, :focus-visible) {
  color: #eefbff !important;
  -webkit-text-fill-color: #eefbff !important;
}

/* Retire the v0.2.6 pseudo-element sweep. A real child layer below replaces it. */
html body button:not(:disabled)::after,
html body a.btn::after,
html body a.details-link::after,
html body a.card-link::after,
html body a.nav-cta::after,
html body a.cart-nav-link::after,
html body .main-nav a::after,
html body .nav-links a::after,
html body .apparel-category-links a::after,
html body .shop-side-links a::after,
html body details > summary::after {
  display: none !important;
  content: none !important;
  animation: none !important;
}

/* A class is added by site.js to every supported clickable surface, including
   controls that catalog.js creates after the page initially loads. */
html body .nmd-sheen-target {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

html body .nmd-sheen-target > .nmd-reflective-sheen {
  position: absolute !important;
  z-index: 2147483000 !important;
  top: -88% !important;
  left: -64%;
  width: 30% !important;
  height: 278% !important;
  display: block !important;
  border-radius: 999px !important;
  opacity: 0;
  pointer-events: none !important;
  transform: skewX(-19deg) translateZ(0);
  transform-origin: center !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(199, 232, 245, .06) 14%,
    rgba(235, 250, 255, .48) 31%,
    rgba(255, 255, 255, .99) 48%,
    rgba(221, 246, 255, .78) 58%,
    rgba(149, 209, 234, .20) 76%,
    transparent 100%
  ) !important;
  box-shadow:
    0 0 12px rgba(255, 255, 255, .64),
    0 0 24px rgba(191, 232, 248, .46) !important;
  mix-blend-mode: screen !important;
  will-change: left, opacity, transform !important;
}

html body .nmd-sheen-target.nmd-sheen-run > .nmd-reflective-sheen {
  animation: nmd027ReflectiveSweep .62s cubic-bezier(.16, .76, .20, 1) both !important;
}

@keyframes nmd027ReflectiveSweep {
  0%   { left: -64%; opacity: 0; transform: skewX(-19deg) translateZ(0); }
  11%  { opacity: .98; }
  52%  { opacity: 1; }
  100% { left: 142%; opacity: 0; transform: skewX(-19deg) translateZ(0); }
}

/* The user explicitly requested this decorative flash, so do not suppress it
   under prefers-reduced-motion as v0.2.6 accidentally did. It still runs only
   once per hover/focus/click rather than looping continuously. */


/* Keep the mobile apparel-category disclosure mark visible and cool-toned.
   Earlier universal sheen rules had repurposed its ::after pseudo-element. */
html body .shop-sidebar-mobile summary::after {
  content: "+" !important;
  position: static !important;
  inset: auto !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  transform: none !important;
  background: none !important;
  box-shadow: none !important;
  animation: none !important;
  color: #8fdcf4 !important;
  -webkit-text-fill-color: #8fdcf4 !important;
  font-size: 1.3rem !important;
  line-height: 1 !important;
}

html body .shop-sidebar-mobile[open] summary::after {
  content: "–" !important;
}

html body .shop-sidebar-mobile summary b {
  color: #bfeeff !important;
  -webkit-text-fill-color: #bfeeff !important;
}


/* ========================================================================== 
   NMD Creations v0.2.8 — hero content gutter + complete monogram seal
   Keeps the two large collection plates centered inside their beveled frames
   and uses the complete monogram crop from the existing NMD logo artwork.
   ========================================================================== */

/* These two frames acquired their bevel in the late theme lock, but not the
   interior padding from their original page systems. Give both a real content
   gutter without changing their overall centered container width. */
html body .page-hero > .container,
html body.tumbler-site .tumbler-collection-hero > .container {
  box-sizing: border-box !important;
  padding: clamp(1.7rem, 4vw, 3.35rem) !important;
}

/* Keep every NMD mark fully visible. The asset itself now comes from the
   complete monogram contained in the existing full NMD logo artwork. */
html body .brand > img,
html body .logo-image-wrap .brand-logo-img,
html body .logo-mark img {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

html body .logo-image-wrap,
html body .logo-mark {
  box-sizing: border-box !important;
  flex: 0 0 auto !important;
}

/* Direct marks used by the lighter homepage/footer shell keep their intended
   46px geometry instead of inheriting the 100% image dimensions above. */
html body .brand > img {
  width: 46px !important;
  height: 46px !important;
}

@media (max-width: 620px) {
  html body .page-hero > .container,
  html body.tumbler-site .tumbler-collection-hero > .container {
    padding: 1.35rem 1.15rem 1.55rem !important;
  }
}


/* ========================================================================== 
   NMD Creations v0.2.9 — centered brand mark + reinforced sticky navigation
   Raises the small brand mark slightly so it sits optically centered beside
   the wordmark and locks the primary navigation at the top while scrolling.
   ========================================================================== */

html {
  scroll-padding-top: 94px;
}

html body .site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 5000 !important;
  isolation: isolate !important;
  transform: translateZ(0);
  will-change: transform;
}

html body .nav-wrap {
  position: relative !important;
}

html body .site-header .brand,
html body .site-footer .brand {
  align-items: center !important;
}

/* The monogram artwork is unchanged; this is only a two-pixel optical lift. */
html body .site-header .brand > img,
html body .site-footer .brand > img {
  object-position: center !important;
  transform: translateY(-2px) !important;
}

@media (max-width: 880px) {
  html body .nav-links {
    top: calc(100% + 8px) !important;
  }
}
