/* ============================================================
   Buttons — one family (owner, 2026-10-02: "now the buttons are
   mixed"). Every button has the same shape, weight and press; only
   the colour changes, and the colour says what it does:

     RED   = buy        Add, Add to basket, Basket, Checkout, Place order
     BLUE  = go / do     Sign in, Keep shopping, How it works, In shop,
                         search, filters, page numbers
     WHITE = see more   See details, See all, back links — and any
                         button sitting on a blue panel or the header

   Shape: 12px corners, bold, a solid edge underneath that presses in.
   Loaded last, so it has the final say on buttons.
   ============================================================ */
:root {
  --btn-r: 12px;
  --btn-blue: #3371b5; --btn-blue-hi: #2c65a6; --btn-blue-edge: #234f8f;
  --btn-red-edge: var(--buy-edge);
  --btn-white-edge: rgba(11, 34, 57, .22);
}

/* ── One shape for all ── */
.nw-btn, .button, button.button, a.button, input[type="submit"].button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.nw-more, .nw-hd-btn, .nw-co-change, .nw-modal-go, .cardscan-tc-btn,
.nw-co-side #place_order, .nw-summary .wc-proceed-to-checkout .checkout-button {
  border-radius: var(--btn-r) !important;
  font-weight: 900;
  transition: background-color .15s ease, background-position .7s ease, color .15s ease, transform .12s ease, box-shadow .12s ease;
}

/* ── No solid colour (owner: "no solid colour" — the buttons get the same
      red/blue blend as the page). The whole blend shows all the time; hover brightens it.
      The red parts can be changed in Management → Settings → 🎨 Website Colours (assets/brand.css :root). ── */
:root {
  --mix-go:  linear-gradient(120deg, #3d7fc8 0%, #3371b5 46%, var(--hue-go-mid) 82%, var(--hue-go-end) 100%);
  --mix-buy: linear-gradient(120deg, var(--buy-hi) 0%, var(--buy) 46%, var(--buy-mid) 82%, #4f4aa6 100%);
  --mix-line: linear-gradient(120deg, #3371b5 0%, var(--hue-line-mid) 55%, var(--hue) 100%);
  --mix-edge: #2a2350;
}

/* GO / DO: blue melting into red */
.nw-btn, .button, button.button, a.button, input[type="submit"].button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.nw-btn-yellow, .nw-btn-navy, .nw-btn-aqua,
.nw-pcard .nw-btn.nw-add.nw-add-instore,
.nw-modal-go, .cardscan-tc-btn:not(.is-ghost) {
  color: #fff; border: 0;
  background-color: #3371b5; background-image: var(--mix-go); background-size: 100% 100%; background-position: 0 0; background-repeat: no-repeat;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 4px 0 var(--mix-edge);
}
.nw-btn:hover, .button:hover, button.button:hover, a.button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.nw-btn-yellow:hover, .nw-btn-navy:hover, .nw-btn-aqua:hover,
.nw-pcard .nw-btn.nw-add.nw-add-instore:hover,
.nw-modal-go:hover, .cardscan-tc-btn:not(.is-ghost):hover {
  color: #fff; text-decoration: none; transform: translateY(-1px);
  background-color: #3371b5; background-image: var(--mix-go); background-size: 100% 100%; background-position: 0 0; filter: brightness(1.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 5px 0 var(--mix-edge);
}

/* SEE MORE: white, with a blended blue-to-red edge */
.nw-btn-ghost, .nw-btn-glass, .nw-more, .nw-pcard .nw-btn-ghost, .nw-co-change,
.nw-hd-btn:not(.nw-hd-basket),
.nw-hero-product .nw-btn:not(.add_to_cart_button),
.nw-band-dark .nw-more,
.nw-coins-band .nw-btn, .nw-rewards .nw-btn, .nw-cat-hero .nw-btn, .nw-pagehero .nw-btn,
.nwa-hello .nw-btn, .nwa-coins-hero .nw-btn, .nw-ty-hero:not(.is-failed) .nw-btn, .nw-login-hello .nw-btn {
  color: #2c5f9e; border: 2px solid transparent;
  background: linear-gradient(#fff, #fff) padding-box, var(--mix-line) border-box;
  box-shadow: 0 4px 0 rgba(11, 34, 57, .22);
}
.nw-btn-ghost:hover, .nw-btn-glass:hover, .nw-more:hover, .nw-pcard .nw-btn-ghost:hover, .nw-co-change:hover,
.nw-hd-btn:not(.nw-hd-basket):hover,
.nw-hero-product .nw-btn:not(.add_to_cart_button):hover,
.nw-band-dark .nw-more:hover,
.nw-coins-band .nw-btn:hover, .nw-rewards .nw-btn:hover, .nw-cat-hero .nw-btn:hover, .nw-pagehero .nw-btn:hover,
.nwa-hello .nw-btn:hover, .nwa-coins-hero .nw-btn:hover, .nw-ty-hero:not(.is-failed) .nw-btn:hover, .nw-login-hello .nw-btn:hover {
  color: #234f8f; text-decoration: none; transform: translateY(-1px);
  background: linear-gradient(120deg, #eef5fd, var(--hue-tint)) padding-box, var(--mix-line) border-box;
  box-shadow: 0 5px 0 rgba(11, 34, 57, .22);
}
.nw-hd-btn:not(.nw-hd-basket) .nw-hd-txt small { color: rgba(11, 34, 57, .6); opacity: 1; }
.nw-more:hover { transform: translateY(-1px); }   /* was a sideways nudge */

/* BUY: red melting into blue, with the gloss shine passing over on hover */
.nw-hero-product .nw-btn.add_to_cart_button,
.nw-pcard .nw-btn.nw-add:not(.nw-add-instore),
.single_add_to_cart_button.button, .woocommerce button.button.single_add_to_cart_button,
.nw-hd-basket, .nw-ty-hero.is-failed .nw-btn-yellow {
  color: var(--buy-ink); border: 0;
  background-color: var(--buy);
  background-image: linear-gradient(110deg, transparent 38%, rgba(255, 255, 255, .45) 50%, transparent 62%), var(--mix-buy);
  background-size: 260% 100%, 100% 100%; background-position: 140% 0, 0 0; background-repeat: no-repeat;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 4px 0 var(--mix-edge);
}
.nw-hero-product .nw-btn.add_to_cart_button:hover,
.nw-pcard .nw-btn.nw-add:not(.nw-add-instore):hover,
.single_add_to_cart_button.button:hover, .woocommerce button.button.single_add_to_cart_button:hover,
.nw-hd-basket:hover, .nw-ty-hero.is-failed .nw-btn-yellow:hover {
  color: var(--buy-ink); transform: translateY(-1px);
  background-image: linear-gradient(110deg, transparent 38%, rgba(255, 255, 255, .45) 50%, transparent 62%), var(--mix-buy);
  background-size: 260% 100%, 100% 100%; background-position: -40% 0, 0 0; filter: brightness(1.06);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 5px 0 var(--mix-edge);
}
.nw-co-side #place_order, .nw-summary .wc-proceed-to-checkout .checkout-button {
  background-image: linear-gradient(110deg, transparent 38%, rgba(255, 255, 255, .45) 50%, transparent 62%), var(--mix-buy) !important;
  background-size: 260% 100%, 100% 100% !important; background-position: 140% 0, 0 0 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 5px 0 var(--mix-edge) !important;
}
.nw-co-side #place_order:hover, .nw-summary .wc-proceed-to-checkout .checkout-button:hover {
  background-position: -40% 0, 0 0 !important;
}
.nw-hero-slide.is-active .nw-btn.add_to_cart_button { animation: nwBuyPulseMix 2.8s ease-in-out 1.2s infinite; }
@keyframes nwBuyPulseMix {
  0%, 100% { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 4px 0 var(--mix-edge), 0 0 0 0 rgba(255, 255, 255, .55); }
  50%      { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 4px 0 var(--mix-edge), 0 0 0 9px rgba(255, 255, 255, 0); }
}

/* ── Every button presses in the same way ── */
.nw-btn:active, .button:active, .nw-more:active, .nw-hd-btn:active, .nw-co-change:active, .nw-modal-go:active,
.nw-co-side #place_order:active, .nw-summary .wc-proceed-to-checkout .checkout-button:active {
  transform: translateY(3px) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28), 0 1px 0 rgba(11, 34, 57, .3) !important;
}
.nw-pcard .nw-btn.nw-add.added:not(.nw-add-instore) { box-shadow: 0 4px 0 #0e6b38; }
.nw-btn[disabled], .button:disabled, .nw-modal-go:disabled { opacity: .5; transform: none; cursor: not-allowed; }

/* ── The search: a white field with a blue search button set inside it ── */
.nw-search { padding: 4px; }
.nw-search button { border-radius: 9px; width: 52px; color: #fff; background: var(--mix-go); transition: filter .2s ease; }
.nw-search button:hover { background: var(--mix-go); filter: brightness(1.1); }
.nw-search select { border-radius: 8px 0 0 8px; }

/* ── Small controls follow the same colours ── */
.nw-row-arrow { color: #2c5f9e; border: 2px solid transparent; background: linear-gradient(#fff, #fff) padding-box, var(--mix-line) border-box; box-shadow: 0 4px 0 var(--btn-white-edge), 0 8px 18px rgba(11, 34, 57, .12); }
.nw-row-arrow:hover { background: linear-gradient(120deg, #eef5fd, var(--hue-tint)) padding-box, var(--mix-line) border-box; }
.nw-filter-open-ico, .nw-view-toggle button.is-active, .nw-pagination .current, .nw-cat-meta i { background: var(--mix-go); color: #fff; }
.nw-cat-card:hover .nw-cat-meta i { background: var(--mix-buy); }

/* ── Section heads: just the title (owner: "don't want this" — no red label above,
      no line under). The carousel's "Just in" tag and the shop header's count stay. ── */
.nw-kicker { display: none !important; }
.nw-section-head h2::after { content: none !important; }
/* …and no "See all / Everything" button beside the titles either (owner: "still there"). */
.nw-section-head .nw-more { display: none !important; }
/* …and the titles themselves are gone too (owner: "still there — needs to be removed, gone").
   Home page rows start straight away; markup kept in front-page.php nws_section_head(). */
.nw-section-head { display: none !important; }
