
:root {
  --nbk-blue:#0b47a1;
  --nbk-blue-deep:#061935;
  --nbk-yellow:#ffd54a;
  --nbk-green:#39c16e;
  --nbk-orange:#ff8a2b;
  --nbk-cream:#fff9ee;
  --nbk-base:#f9fbff;
  --nbk-text:#101b34;
  --nbk-muted:#70809c;
  --nbk-card:rgba(255,255,255,.88);
  --nbk-glass:rgba(255,255,255,.68);
  --nbk-radius:28px;
  --nbk-shadow:0 16px 45px rgba(6,25,53,.12);
  --nbk-shadow-lift:0 24px 65px rgba(6,25,53,.18);
}

html { scroll-behavior:smooth; }
body {
  background:
    radial-gradient(circle at 12% 0%, rgba(255,213,74,.24), transparent 24rem),
    radial-gradient(circle at 100% 12%, rgba(57,193,110,.16), transparent 26rem),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 42%, #f5f9ff 100%);
}

.wp-site-blocks {
  background:
    radial-gradient(circle at 0 0, rgba(11,71,161,.07), transparent 28rem),
    radial-gradient(circle at 100% 16%, rgba(255,138,43,.09), transparent 18rem);
}

main.wp-block-group,
main.wp-block-post-content {
  position: relative;
}

main.wp-block-group:before,
main.wp-block-post-content:before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(11,71,161,.18), transparent);
}

a { text-underline-offset: .18em; }
a:hover { text-decoration-thickness: 2px; }

header.wp-block-template-part {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(16px);
}

.nbk-topbar {
  background: linear-gradient(90deg, #061935, #0b47a1 60%, #39c16e);
  color: #fff;
  font-size: .9rem;
}

.nbk-header-shell {
  background: rgba(255,255,255,.82);
  box-shadow: 0 10px 35px rgba(6,25,53,.08);
  border-bottom: 1px solid rgba(11,71,161,.08);
}

.wp-block-navigation .wp-block-navigation-item__content,
.wp-block-page-list .wp-block-navigation-item__content {
  border-radius: 999px;
  padding: .55rem .85rem;
  transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content {
  background: rgba(11,71,161,.08);
  color: var(--nbk-blue);
  transform: translateY(-1px);
}

.wp-element-button,
.wp-block-button__link,
button,
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wc-block-components-button {
  border-radius: 999px !important;
  font-weight: 800;
  letter-spacing: .01em;
  padding: .9rem 1.25rem;
  box-shadow: 0 14px 30px rgba(11,71,161,.18);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease, background-color .18s ease;
}

.wp-element-button:hover,
.wp-block-button__link:hover,
button:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:hover {
  transform: translateY(-2px) scale(1.01);
  box-shadow: 0 20px 36px rgba(11,71,161,.24);
  filter: saturate(1.08);
}

.nbk-pill,
.nbk-badge {
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  border-radius:999px;
  padding:.55rem .9rem;
  font-weight:800;
  box-shadow: 0 10px 24px rgba(6,25,53,.10);
}

.nbk-badge {
  background: rgba(255,255,255,.9);
  color: var(--nbk-blue-deep);
}

.nbk-pill {
  background: linear-gradient(135deg, rgba(255,213,74,.98), rgba(255,138,43,.96));
  color: #1b2135;
}

.nbk-hero-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 36px;
  box-shadow: var(--nbk-shadow-lift);
  background:
    radial-gradient(circle at top right, rgba(57,193,110,.24), transparent 20rem),
    radial-gradient(circle at left center, rgba(255,213,74,.20), transparent 26rem),
    linear-gradient(135deg, #061935 0%, #0b47a1 48%, #124aa6 62%, #39c16e 160%);
}

.nbk-hero-wrap:before {
  content:"";
  position:absolute;
  inset:auto -10% -30% auto;
  width:360px;
  height:360px;
  border-radius:50%;
  background: radial-gradient(circle, rgba(255,255,255,.28), transparent 65%);
}

.nbk-hero-card {
  border-radius: 34px;
  background: rgba(255,255,255,.14);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 22px 44px rgba(0,0,0,.18);
}

.nbk-hero-image img {
  border-radius: 28px;
  box-shadow: 0 24px 46px rgba(6,25,53,.26);
}

.nbk-stat-card {
  border-radius: 22px;
  background: rgba(255,255,255,.92);
  box-shadow: var(--nbk-shadow);
  border: 1px solid rgba(11,71,161,.10);
}

.nbk-section {
  border-radius: 34px;
  background: rgba(255,255,255,.76);
  box-shadow: inset 0 0 0 1px rgba(11,71,161,.08), 0 16px 40px rgba(6,25,53,.06);
  backdrop-filter: blur(8px);
}

.nbk-card,
.woocommerce ul.products li.product,
.wc-block-grid__product,
.wp-block-post-template > li,
.wc-block-components-totals-wrapper,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout-review-order {
  border: 1px solid rgba(11,71,161,.10);
  border-radius: var(--nbk-radius);
  background: var(--nbk-card);
  box-shadow: var(--nbk-shadow);
  overflow: hidden;
}

.nbk-card-hover,
.woocommerce ul.products li.product,
.wc-block-grid__product {
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.nbk-card-hover:hover,
.woocommerce ul.products li.product:hover,
.wc-block-grid__product:hover {
  transform: translateY(-6px);
  box-shadow: var(--nbk-shadow-lift);
  border-color: rgba(11,71,161,.18);
}

.nbk-category-card {
  position:relative;
  overflow:hidden;
}

.nbk-category-card:before {
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(135deg, rgba(11,71,161,.08), rgba(255,213,74,.14));
  pointer-events:none;
}

.nbk-icon-circle {
  width:64px;
  height:64px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background: linear-gradient(135deg, #0b47a1, #39c16e);
  color:#fff;
  font-size:1.7rem;
  box-shadow: 0 16px 30px rgba(11,71,161,.22);
}

.nbk-ribbon {
  display:inline-block;
  padding:.4rem .8rem;
  border-radius:999px;
  background: rgba(11,71,161,.08);
  color: var(--nbk-blue);
  font-size:.85rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform: uppercase;
}

.nbk-glow-strip {
  border-radius: 30px;
  background: linear-gradient(135deg, #061935 0%, #0b47a1 52%, #39c16e 150%);
  color: #fff;
  box-shadow: var(--nbk-shadow-lift);
  position:relative;
  overflow:hidden;
}

.nbk-glow-strip:after {
  content:"";
  position:absolute;
  inset:auto -10% -35% auto;
  width:280px;
  height:280px;
  border-radius:50%;
  background: radial-gradient(circle, rgba(255,213,74,.35), transparent 68%);
}

.nbk-number {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 900;
  line-height: 1;
  color: var(--nbk-yellow);
}

.nbk-highlight-text {
  background: linear-gradient(135deg, #ffd54a, #ff8a2b);
  -webkit-background-clip:text;
  background-clip:text;
  color: transparent;
}

.woocommerce span.onsale,
.wc-block-components-product-sale-badge,
.nbk-sale-badge {
  min-height: auto;
  min-width: auto;
  border-radius: 999px;
  background: linear-gradient(135deg, #ffd54a, #ff8a2b);
  color: #1c2238;
  padding: .45rem .7rem;
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(255,138,43,.25);
}

.woocommerce ul.products li.product,
.wc-block-grid__product {
  padding: 16px !important;
}

.woocommerce ul.products li.product img,
.wc-block-grid__product img,
.wc-block-grid__product-image img {
  border-radius: 20px;
  background: #fff;
}

.woocommerce ul.products li.product .price,
.price,
.woocommerce-Price-amount,
.wc-block-components-product-price {
  color: var(--nbk-blue);
  font-weight: 900;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
  border-radius: 18px;
  border: none;
  box-shadow: var(--nbk-shadow);
}

.site-footer,
footer.wp-block-template-part {
  background:
    radial-gradient(circle at right top, rgba(57,193,110,.20), transparent 18rem),
    linear-gradient(180deg, #0a1630 0%, #061935 100%);
  color: #fff9ee;
}

footer.wp-block-template-part a,
.site-footer a {
  color: #fff9ee;
}

.nbk-footer-card {
  background: rgba(255,255,255,.06);
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.08);
}

@media (max-width: 782px) {
  .nbk-hero-wrap { border-radius: 26px; }
  .nbk-hero-card { border-radius: 24px; }
  .nbk-section { border-radius: 24px; }
}
