/*
Theme Name: Ink Pulse Streetwear
Theme URI: https://inkpulseprint.com
Author: Andrew Hansen
Description: A premium streetwear WooCommerce theme built for custom printed sneakers, tees, and wearable art.
Version: 2.1.5
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPL v2 or later
Text Domain: inkpulse-streetwear
Tags: e-commerce, custom-colors, custom-logo, featured-images, block-styles, streetwear
*/

:root{
  --ink-bg:#08080b;
  --ink-card:#12121a;
  --ink-text:#f8f8fb;
  --ink-muted:#b8b8c7;
  --ink-hot:#ff2e88;
  --ink-blue:#10d7ff;
  --ink-lime:#b8ff39;
  --ink-orange:#ff8a1f;
  --ink-white:#ffffff;
  --ink-border:rgba(255,255,255,.12);
  --ink-radius:24px;
  --ink-shadow:0 18px 60px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 15% 8%, rgba(255,46,136,.18), transparent 32%),
    radial-gradient(circle at 88% 12%, rgba(16,215,255,.16), transparent 34%),
    linear-gradient(180deg,#07070a 0%,#101018 55%,#07070a 100%);
  color:var(--ink-text);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.container{width:min(1180px,92vw);margin:auto}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(8,8,11,.82);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--ink-border);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}
.logo-wrap{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.logo-mark{
  width:40px;height:40px;border-radius:13px;
  background:linear-gradient(135deg,var(--ink-hot),var(--ink-orange),var(--ink-blue));
  box-shadow:0 0 28px rgba(255,46,136,.35);
}
.site-title{font-size:1rem}
.main-nav ul{list-style:none;display:flex;gap:22px;padding:0;margin:0;align-items:center}
.main-nav a{font-weight:800;font-size:.9rem;color:var(--ink-muted)}
.main-nav a:hover{color:var(--ink-white)}
.header-actions{display:flex;align-items:center;gap:12px}
.btn,.button,button,input[type=submit],.wp-block-button__link,.added_to_cart{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 20px;border-radius:999px;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--ink-hot),var(--ink-orange));
  color:#fff!important;font-weight:900;text-transform:uppercase;letter-spacing:.04em;
  box-shadow:0 12px 32px rgba(255,46,136,.28);
  transition:transform .18s ease, box-shadow .18s ease;
}
.btn:hover,.button:hover,button:hover,input[type=submit]:hover,.wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(255,46,136,.38)}
.btn.alt{background:rgba(255,255,255,.08);border:1px solid var(--ink-border);box-shadow:none}
.hero{position:relative;overflow:hidden;padding:88px 0 70px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);gap:42px;align-items:center}
.hero-copy{position:relative;z-index:2}
.kicker{color:var(--ink-lime);font-weight:950;text-transform:uppercase;letter-spacing:.18em;font-size:.82rem}
.hero h1,.page-title{
  font-size:clamp(3rem,7vw,6.5rem);line-height:.88;margin:14px 0 18px;
  letter-spacing:-.07em;text-transform:uppercase;
}
.gradient-text{
  background:linear-gradient(95deg,#fff 0%,#fff 28%,var(--ink-blue),var(--ink-hot),var(--ink-orange));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero p{font-size:1.16rem;color:var(--ink-muted);max-width:620px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-card{
  position:relative;border-radius:36px;padding:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.04));
  border:1px solid var(--ink-border);box-shadow:var(--ink-shadow);
  transform:rotate(1deg);
  min-height:clamp(360px,42vw,560px);
}
.hero-card:before{
  content:"";position:absolute;inset:-2px;border-radius:38px;z-index:-1;
  background:linear-gradient(135deg,var(--ink-hot),transparent,var(--ink-blue),var(--ink-lime));
  filter:blur(20px);opacity:.45;
}
.hero-media{border-radius:26px;overflow:hidden;background:#fff;aspect-ratio:4/5;min-height:clamp(340px,40vw,540px);display:flex;align-items:center;justify-content:center}
.hero-card-featured{align-self:stretch;display:flex}
.hero-card-featured .hero-media{width:100%;height:100%}
.hero-media img{width:100%;height:100%;object-fit:cover}
.badge-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.badge{padding:8px 13px;border:1px solid var(--ink-border);border-radius:999px;color:var(--ink-muted);font-weight:800;font-size:.84rem;background:rgba(255,255,255,.05)}
.section{padding:68px 0}
.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}
.section h2{font-size:clamp(2rem,4vw,4rem);line-height:.95;text-transform:uppercase;letter-spacing:-.05em;margin:0}
.section p.lead{color:var(--ink-muted);max-width:620px}
.grid{display:grid;gap:20px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.card{
  border:1px solid var(--ink-border);background:rgba(255,255,255,.055);
  border-radius:var(--ink-radius);padding:24px;box-shadow:var(--ink-shadow);
}
.category-card{min-height:260px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}
.category-card:after{content:"";position:absolute;inset:auto -20% -40% -20%;height:70%;background:radial-gradient(circle,var(--ink-hot),transparent 58%);opacity:.18}
.category-card h3{font-size:1.7rem;margin:0 0 8px;text-transform:uppercase}
.category-card p{color:var(--ink-muted);margin:0}
.marquee{overflow:hidden;border-block:1px solid var(--ink-border);background:#fff;color:#07070a;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.marquee span{display:inline-block;padding:14px 24px;white-space:nowrap}
.products ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:22px;margin:0;padding:0}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  width:auto!important;margin:0!important;float:none!important;
  border:1px solid var(--ink-border);border-radius:24px;padding:14px!important;
  background:rgba(255,255,255,.06);box-shadow:var(--ink-shadow);overflow:hidden;
}
.woocommerce ul.products li.product a img{border-radius:18px;background:#fff;margin:0 0 14px!important}
.woocommerce-loop-product__title{color:#fff;font-size:1rem!important;font-weight:900;text-transform:uppercase}
.price{color:var(--ink-lime)!important;font-weight:950!important}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:42px}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important}
.woocommerce div.product div.images img{border-radius:28px;background:#fff}
.product_title{font-size:clamp(2.2rem,5vw,5rem);line-height:.9;text-transform:uppercase;letter-spacing:-.06em}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:rgba(255,255,255,.08);border-top-color:var(--ink-hot);color:#fff}
input,textarea,select{
  background:#fff;color:#07070a;border:0;border-radius:14px;padding:13px 14px;max-width:100%;
}
.footer{padding:46px 0;border-top:1px solid var(--ink-border);color:var(--ink-muted);background:#07070a}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:26px}
.footer h4{color:#fff;text-transform:uppercase;margin:0 0 10px}
.footer ul{list-style:none;margin:0;padding:0}
.footer li{margin:8px 0}
.mobile-toggle{display:none;background:transparent;border:1px solid var(--ink-border);box-shadow:none;padding:9px 12px}

@media(max-width:900px){
  .hero-grid,.woocommerce div.product,.footer-grid{grid-template-columns:1fr}
  .grid-3,.products ul.products{grid-template-columns:repeat(2,1fr)}
  .main-nav{display:none;position:absolute;top:73px;left:0;right:0;background:#08080b;border-bottom:1px solid var(--ink-border);padding:18px}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;align-items:flex-start}
  .mobile-toggle{display:inline-flex}
}
@media(max-width:560px){
  .grid-3,.products ul.products{grid-template-columns:1fr}
  .hero{padding:54px 0}
  .hero-actions{flex-direction:column}
  .btn,.button{width:100%}
}


/* 1.0.1 readability fixes: keep all button wording visible on dark sections */
a.btn,
.btn,
.button,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.wp-block-button__link,
.added_to_cart,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--ink-hot), var(--ink-orange)) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.35);
}

a.btn *,
.btn *,
.button *,
button *,
.wp-block-button__link *,
.added_to_cart *,
.woocommerce a.button *,
.woocommerce button.button * {
  color: #ffffff !important;
}

.btn.alt,
.header-actions .btn.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  color: #08080b !important;
  background: #ffffff !important;
  border: 1px solid #ffffff !important;
  text-shadow: none !important;
}

.btn.alt *,
.header-actions .btn.alt *,
.woocommerce a.button.alt *,
.woocommerce button.button.alt *,
.woocommerce input.button.alt * {
  color: #08080b !important;
}

/* Form fields and contact form readability */
input,
textarea,
select,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select {
  color: #ffffff !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 14px;
}

input::placeholder,
textarea::placeholder {
  color: rgba(255,255,255,.68) !important;
}

label,
.wpforms-field-label,
.woocommerce form .form-row label,
.ipp-contact-form label {
  color: #ffffff !important;
}

.ipp-contact-form,
.contact-form,
.wpcf7,
.wpforms-container {
  color: #ffffff !important;
}

.inkpulse-contact-shortcode{margin-top:28px;}
.inkpulse-contact-shortcode .btn,.inkpulse-contact-shortcode button,.inkpulse-contact-shortcode input[type="submit"]{color:#fff!important;}


/* 1.0.2 checkout/payment and product layout refinements */

/* Make Afterpay/PayPal messaging readable on the dark theme */
[class*="afterpay" i],
[class*="afterpay" i] *,
[class*="paypal" i],
[class*="paypal" i] *,
.wc_payment_method,
.wc_payment_method *,
.woocommerce-checkout-payment,
.woocommerce-checkout-payment *,
.woocommerce-privacy-policy-text,
.woocommerce-privacy-policy-text *,
.payment_box,
.payment_box *,
.woocommerce div.product .summary .payment-methods,
.woocommerce div.product .summary .payment-methods * {
  color: #ffffff !important;
}

[class*="afterpay" i] a,
[class*="paypal" i] a,
.wc_payment_method a,
.woocommerce-checkout-payment a,
.woocommerce-privacy-policy-text a,
.payment_box a {
  color: var(--ink-lime) !important;
  text-decoration: underline;
}

.payment_box,
.woocommerce-checkout #payment,
.woocommerce-checkout #payment div.payment_box {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 18px !important;
}

/* Quantity field: larger and readable */
.woocommerce .quantity,
.woocommerce div.product form.cart div.quantity {
  min-width: 104px !important;
  margin-right: 14px !important;
}

.woocommerce .quantity .qty,
.woocommerce input.qty,
input[type="number"].qty {
  width: 96px !important;
  min-width: 96px !important;
  height: 52px !important;
  padding: 10px 14px !important;
  font-size: 1.15rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  color: #ffffff !important;
  background: rgba(255,255,255,.12) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  border-radius: 16px !important;
}

/* Wider product cards for You May Also Like / Upsells / Related Products */
.woocommerce .related.products,
.woocommerce .up-sells.upsells.products,
.woocommerce .cross-sells {
  margin-top: 56px;
  clear: both;
}

.woocommerce .related.products ul.products,
.woocommerce .up-sells.upsells.products ul.products,
.woocommerce .cross-sells ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(260px, 1fr)) !important;
  gap: 28px !important;
  align-items: stretch;
}

.woocommerce .related.products ul.products li.product,
.woocommerce .up-sells.upsells.products ul.products li.product,
.woocommerce .cross-sells ul.products li.product {
  width: auto !important;
  min-width: 0 !important;
  padding: 18px !important;
}

.woocommerce .related.products ul.products li.product a img,
.woocommerce .up-sells.upsells.products ul.products li.product a img,
.woocommerce .cross-sells ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

@media(max-width:900px){
  .woocommerce .related.products ul.products,
  .woocommerce .up-sells.upsells.products ul.products,
  .woocommerce .cross-sells ul.products {
    grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
  }
}

@media(max-width:560px){
  .woocommerce .related.products ul.products,
  .woocommerce .up-sells.upsells.products ul.products,
  .woocommerce .cross-sells ul.products {
    grid-template-columns: 1fr !important;
  }

  .woocommerce .quantity,
  .woocommerce div.product form.cart div.quantity {
    width: 100% !important;
    margin: 0 0 12px 0 !important;
  }

  .woocommerce .quantity .qty,
  .woocommerce input.qty,
  input[type="number"].qty {
    width: 100% !important;
  }
}


/* 1.0.3 stronger readable payment messaging + hero image slider */

/* Payment provider messaging on dark product pages */
afterpay-placement,
afterpay-placement *,
.afterpay-placement,
.afterpay-placement *,
.afterpay-paragraph,
.afterpay-paragraph *,
.afterpay-main-text,
.afterpay-main-text *,
[class*="afterpay" i]:not(img):not(svg):not(path),
[class*="afterpay" i] *:not(img):not(svg):not(path),
.wc-stripe-afterpay-msg,
.wc-stripe-afterpay-msg *,
.ppcp-messages,
.ppcp-messages *,
.paypal-messages,
.paypal-messages *,
.wc-ppcp-product-pay-later-msg,
.wc-ppcp-product-pay-later-msg *,
.wc-ppcp-product-payment-methods,
.wc-ppcp-product-payment-methods *,
[class*="ppcp" i],
[class*="ppcp" i] *,
[class*="paypal" i]:not(img):not(svg):not(path),
[class*="paypal" i] *:not(img):not(svg):not(path),
[id*="paypal" i]:not(img):not(svg):not(path),
[id*="paypal" i] *:not(img):not(svg):not(path) {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.8) !important;
}

afterpay-placement a,
.afterpay-placement a,
[class*="afterpay" i] a,
.ppcp-messages a,
.paypal-messages a,
.wc-ppcp-product-pay-later-msg a,
[class*="paypal" i] a,
[id*="paypal" i] a {
  color: var(--ink-lime) !important;
  border-color: var(--ink-lime) !important;
  text-decoration-color: var(--ink-lime) !important;
}

/* Extra protection for third-party message wrappers that inject dark text inline */
.woocommerce div.product .summary p[style],
.woocommerce div.product .summary span[style],
.woocommerce div.product .summary div[style] {
  color: inherit;
}

.woocommerce div.product .summary afterpay-placement,
.woocommerce div.product .summary .afterpay-placement,
.woocommerce div.product .summary .ppcp-messages,
.woocommerce div.product .summary .paypal-messages,
.woocommerce div.product .summary .wc-ppcp-product-pay-later-msg {
  display: block !important;
  margin: 14px 0 !important;
  padding: 10px 0 !important;
}

/* Hero slider */
.hero-media.hero-slider{
  position:relative;
  min-height:440px;
  overflow:hidden;
}
.hero-slider .hero-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  transform:scale(1.035) translateX(22px);
  transition:opacity .8s ease, transform .8s ease;
}
.hero-slider .hero-slide.is-active{
  opacity:1;
  transform:scale(1) translateX(0);
}
@media (max-width: 760px){
  .hero-media.hero-slider{min-height:320px;}
}


/* 1.0.4 responsive WooCommerce product page fixes */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.container,
.woocommerce,
.woocommerce-page,
.woocommerce div.product,
.woocommerce div.product div.images,
.woocommerce div.product div.summary,
.woocommerce-tabs,
.woocommerce-Tabs-panel,
.related.products,
.up-sells.upsells.products {
  max-width: 100%;
  min-width: 0;
}

.woocommerce div.product {
  grid-template-columns: minmax(280px, 46%) minmax(0, 1fr);
  align-items: start;
  overflow: hidden;
}

.woocommerce div.product div.images {
  max-width: 560px;
  justify-self: center;
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce div.product div.images a {
  max-width: 100%;
}

.woocommerce div.product div.images img,
.woocommerce-product-gallery__image img,
.woocommerce div.product div.images .wp-post-image {
  width: 100% !important;
  max-width: 560px !important;
  height: auto !important;
  max-height: 620px;
  object-fit: contain;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.woocommerce div.product div.images .flex-control-thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
  gap: 10px;
  margin-top: 12px !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  width: auto !important;
  float: none !important;
}

.woocommerce div.product div.summary {
  overflow-wrap: anywhere;
  word-break: normal;
}

.woocommerce div.product form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.woocommerce div.product form.cart .button {
  min-height: 52px;
  white-space: normal;
}

.woocommerce div.product .woocommerce-tabs {
  grid-column: 1 / -1;
  overflow: hidden;
}

.woocommerce table,
.woocommerce table.shop_attributes,
.woocommerce-cart table.cart,
.woocommerce-checkout table.shop_table {
  width: 100%;
  max-width: 100%;
  table-layout: auto;
}

.woocommerce table.shop_attributes td,
.woocommerce table.shop_attributes th,
.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
  overflow-wrap: anywhere;
}

.woocommerce .related.products ul.products,
.woocommerce .up-sells.upsells.products ul.products,
.woocommerce .cross-sells ul.products,
.products ul.products {
  width: 100%;
  max-width: 100%;
}

.woocommerce .related.products ul.products li.product,
.woocommerce .up-sells.upsells.products ul.products li.product,
.woocommerce .cross-sells ul.products li.product,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  min-width: 0 !important;
  overflow: hidden;
}

.woocommerce .related.products ul.products li.product a img,
.woocommerce .up-sells.upsells.products ul.products li.product a img,
.woocommerce .cross-sells ul.products li.product a img,
.woocommerce ul.products li.product a img {
  max-width: 100% !important;
  height: auto !important;
}

@media (min-width: 1200px) {
  .woocommerce div.product div.images {
    max-width: 520px;
  }

  .woocommerce div.product div.images img,
  .woocommerce-product-gallery__image img,
  .woocommerce div.product div.images .wp-post-image {
    max-width: 520px !important;
  }
}

@media (max-width: 1024px) {
  .container {
    width: min(94vw, 980px);
  }

  .woocommerce div.product {
    grid-template-columns: minmax(260px, 44%) minmax(0, 1fr);
    gap: 28px;
  }

  .woocommerce div.product div.images,
  .woocommerce div.product div.images img,
  .woocommerce-product-gallery__image img,
  .woocommerce div.product div.images .wp-post-image {
    max-width: 460px !important;
  }

  .product_title {
    font-size: clamp(2rem, 6vw, 3.8rem);
  }
}

@media (max-width: 768px) {
  .header-inner {
    gap: 12px;
  }

  .site-title {
    max-width: 44vw;
    overflow-wrap: anywhere;
  }

  .woocommerce div.product {
    display: block;
    overflow: visible;
  }

  .woocommerce div.product div.images,
  .woocommerce div.product div.summary {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 26px;
  }

  .woocommerce div.product div.images img,
  .woocommerce-product-gallery__image img,
  .woocommerce div.product div.images .wp-post-image {
    max-width: 100% !important;
    max-height: 520px;
  }

  .woocommerce div.product form.cart {
    align-items: stretch;
  }

  .woocommerce div.product form.cart .button {
    flex: 1 1 220px;
  }

  .woocommerce-tabs ul.tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-left: 0 !important;
  }

  .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
  }
}

@media (max-width: 480px) {
  .container {
    width: 92vw;
  }

  .product_title {
    font-size: clamp(2rem, 12vw, 3rem);
  }

  .woocommerce div.product div.images img,
  .woocommerce-product-gallery__image img,
  .woocommerce div.product div.images .wp-post-image {
    max-height: 420px;
  }

  .woocommerce div.product form.cart,
  .woocommerce div.product form.cart .button {
    width: 100%;
  }

  .woocommerce div.product form.cart .button,
  .single_add_to_cart_button {
    flex-basis: 100%;
  }

  .woocommerce table.shop_table {
    font-size: .9rem;
  }
}


/* 1.0.5 payment readability + unwanted option notice suppression */

/* Hide WooCommerce's repeating variable-product option notice on shop/category pages. */
.woocommerce-shop .woocommerce-notices-wrapper,
.post-type-archive-product .woocommerce-notices-wrapper,
.tax-product_cat .woocommerce-notices-wrapper {
  display: none !important;
}

/* Extra safety: hide this specific notice once JS flags it. */
.inkpulse-hide-product-options-notice {
  display: none !important;
}

/* Give third-party payment text a readable panel on dark backgrounds.
   This also helps PayPal Messages/Pay Later if the provider renders black text inside an iframe. */
afterpay-placement,
.afterpay-placement,
.afterpay-paragraph,
.afterpay-main-text,
.wc-stripe-afterpay-msg,
.ppcp-messages,
.paypal-messages,
.wc-ppcp-product-pay-later-msg,
.wc-ppcp-product-payment-methods,
[class*="afterpay" i]:not(img):not(svg):not(path):not(a):not(button),
[class*="paypal" i]:not(img):not(svg):not(path):not(a):not(button),
[id*="paypal" i]:not(img):not(svg):not(path):not(a):not(button),
[id*="ppcp" i]:not(img):not(svg):not(path):not(a):not(button) {
  color: #08080b !important;
}

.woocommerce div.product .summary afterpay-placement,
.woocommerce div.product .summary .afterpay-placement,
.woocommerce div.product .summary .afterpay-paragraph,
.woocommerce div.product .summary .wc-stripe-afterpay-msg,
.woocommerce div.product .summary .ppcp-messages,
.woocommerce div.product .summary .paypal-messages,
.woocommerce div.product .summary .wc-ppcp-product-pay-later-msg,
.woocommerce-cart afterpay-placement,
.woocommerce-cart .afterpay-placement,
.woocommerce-cart .afterpay-paragraph,
.woocommerce-cart .wc-stripe-afterpay-msg,
.woocommerce-cart .ppcp-messages,
.woocommerce-cart .paypal-messages,
.woocommerce-cart .wc-ppcp-product-pay-later-msg,
.woocommerce-checkout afterpay-placement,
.woocommerce-checkout .afterpay-placement,
.woocommerce-checkout .afterpay-paragraph,
.woocommerce-checkout .wc-stripe-afterpay-msg,
.woocommerce-checkout .ppcp-messages,
.woocommerce-checkout .paypal-messages,
.woocommerce-checkout .wc-ppcp-product-pay-later-msg {
  display: block !important;
  background: rgba(255,255,255,.94) !important;
  color: #08080b !important;
  padding: 12px 14px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.20) !important;
  margin: 14px 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-shadow: none !important;
}

.woocommerce div.product .summary afterpay-placement *,
.woocommerce div.product .summary .afterpay-placement *,
.woocommerce div.product .summary .afterpay-paragraph *,
.woocommerce div.product .summary .wc-stripe-afterpay-msg *,
.woocommerce div.product .summary .ppcp-messages *,
.woocommerce div.product .summary .paypal-messages *,
.woocommerce div.product .summary .wc-ppcp-product-pay-later-msg *,
.woocommerce-cart afterpay-placement *,
.woocommerce-cart .afterpay-placement *,
.woocommerce-cart .afterpay-paragraph *,
.woocommerce-cart .wc-stripe-afterpay-msg *,
.woocommerce-cart .ppcp-messages *,
.woocommerce-cart .paypal-messages *,
.woocommerce-cart .wc-ppcp-product-pay-later-msg *,
.woocommerce-checkout afterpay-placement *,
.woocommerce-checkout .afterpay-placement *,
.woocommerce-checkout .afterpay-paragraph *,
.woocommerce-checkout .wc-stripe-afterpay-msg *,
.woocommerce-checkout .ppcp-messages *,
.woocommerce-checkout .paypal-messages *,
.woocommerce-checkout .wc-ppcp-product-pay-later-msg * {
  color: #08080b !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.woocommerce div.product .summary .ppcp-messages iframe,
.woocommerce div.product .summary .paypal-messages iframe,
.woocommerce div.product .summary .wc-ppcp-product-pay-later-msg iframe,
.woocommerce-cart .ppcp-messages iframe,
.woocommerce-cart .paypal-messages iframe,
.woocommerce-cart .wc-ppcp-product-pay-later-msg iframe,
.woocommerce-checkout .ppcp-messages iframe,
.woocommerce-checkout .paypal-messages iframe,
.woocommerce-checkout .wc-ppcp-product-pay-later-msg iframe {
  background: #ffffff !important;
  border-radius: 12px !important;
  max-width: 100% !important;
}

.woocommerce div.product .summary .afterpay-placement a,
.woocommerce div.product .summary .afterpay-paragraph a,
.woocommerce div.product .summary .wc-stripe-afterpay-msg a,
.woocommerce div.product .summary .ppcp-messages a,
.woocommerce div.product .summary .paypal-messages a,
.woocommerce div.product .summary .wc-ppcp-product-pay-later-msg a,
.woocommerce-cart .afterpay-placement a,
.woocommerce-cart .afterpay-paragraph a,
.woocommerce-cart .wc-stripe-afterpay-msg a,
.woocommerce-cart .ppcp-messages a,
.woocommerce-cart .paypal-messages a,
.woocommerce-cart .wc-ppcp-product-pay-later-msg a,
.woocommerce-checkout .afterpay-placement a,
.woocommerce-checkout .afterpay-paragraph a,
.woocommerce-checkout .wc-stripe-afterpay-msg a,
.woocommerce-checkout .ppcp-messages a,
.woocommerce-checkout .paypal-messages a,
.woocommerce-checkout .wc-ppcp-product-pay-later-msg a {
  color: #005fcc !important;
  text-decoration: underline !important;
  text-shadow: none !important;
}


/* 1.0.6 payment readability + safer WooCommerce notice cleanup */
.inkpulse-hide-product-options-notice { display:none !important; }

/* Payment messaging containers on product/cart/checkout */
.woocommerce div.product .summary [class*="afterpay" i],
.woocommerce div.product .summary [class*="paypal" i],
.woocommerce-cart [class*="afterpay" i],
.woocommerce-cart [class*="paypal" i],
.woocommerce-checkout [class*="afterpay" i],
.woocommerce-checkout [class*="paypal" i],
.woocommerce div.product .summary [id*="afterpay" i],
.woocommerce div.product .summary [id*="paypal" i],
.woocommerce-cart [id*="afterpay" i],
.woocommerce-cart [id*="paypal" i],
.woocommerce-checkout [id*="afterpay" i],
.woocommerce-checkout [id*="paypal" i] {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}

.woocommerce div.product .summary [class*="afterpay" i] *,
.woocommerce div.product .summary [class*="paypal" i] *,
.woocommerce-cart [class*="afterpay" i] *,
.woocommerce-cart [class*="paypal" i] *,
.woocommerce-checkout [class*="afterpay" i] *,
.woocommerce-checkout [class*="paypal" i] *,
.woocommerce div.product .summary [id*="afterpay" i] *,
.woocommerce div.product .summary [id*="paypal" i] *,
.woocommerce-cart [id*="afterpay" i] *,
.woocommerce-cart [id*="paypal" i] *,
.woocommerce-checkout [id*="afterpay" i] *,
.woocommerce-checkout [id*="paypal" i] * {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}

/* Common PayPal/Afterpay plugin selectors */
.afterpay-paragraph,
.afterpay-paragraph *,
.afterpay-payment-info,
.afterpay-payment-info *,
.afterpay-main-text,
.afterpay-main-text *,
.wc-afterpay-message,
.wc-afterpay-message *,
.paypal-messaging,
.paypal-messaging *,
.paypal-message,
.paypal-message *,
.ppcp-messages,
.ppcp-messages *,
.ppc-button-wrapper,
.ppc-button-wrapper *,
#wc-ppcp-product-pay-later-msg,
#wc-ppcp-product-pay-later-msg *,
#wc-ppcp-cart-pay-later-msg,
#wc-ppcp-cart-pay-later-msg *,
#wc-ppcp-checkout-pay-later-msg,
#wc-ppcp-checkout-pay-later-msg * {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}

/* If payment providers inject dark inline text, place it on a visible panel. */
.afterpay-paragraph,
.wc-afterpay-message,
.paypal-messaging,
.paypal-message,
.ppcp-messages,
#wc-ppcp-product-pay-later-msg,
#wc-ppcp-cart-pay-later-msg,
#wc-ppcp-checkout-pay-later-msg {
  display:block !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  margin:10px 0 !important;
}

/* Guard against full-page horizontal overflow */
html, body, .site, .site-main, .woocommerce, .woocommerce-page {
  max-width:100%;
  overflow-x:hidden;
}


/* 1.0.7 dynamic collection cards */
.ipp-collection-card{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:32px;
  min-height:460px;
  background:#111;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 60px rgba(0,0,0,.28);
}
.ipp-collection-image{
  position:absolute;
  inset:0;
}
.ipp-collection-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .55s ease, filter .55s ease;
}
.ipp-collection-card:hover .ipp-collection-image img{
  transform:scale(1.06);
  filter:saturate(1.1) contrast(1.04);
}
.ipp-collection-overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:32px;
  background:
    linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,.18) 55%, rgba(0,0,0,.05)),
    radial-gradient(circle at 20% 100%, rgba(255,46,136,.25), transparent 40%);
  z-index:2;
}
.ipp-collection-overlay h3{
  color:#fff;
  font-size:clamp(28px,3vw,42px);
  font-weight:900;
  line-height:1;
  margin:0 0 12px;
  text-transform:uppercase;
  letter-spacing:-.04em;
}
.ipp-collection-overlay p{
  color:rgba(255,255,255,.88);
  font-size:clamp(16px,1.6vw,22px);
  margin:0;
}
.ipp-collection-placeholder{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 25% 20%, rgba(255,46,136,.24), transparent 28%),
    radial-gradient(circle at 78% 30%, rgba(16,215,255,.22), transparent 32%),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
}

/* 1.0.7 prevent WooCommerce variation images disappearing/collapsing */
.woocommerce div.product div.images,
.woocommerce div.product div.images .woocommerce-product-gallery,
.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.flex-viewport,
.flex-control-thumbs{
  opacity:1 !important;
  visibility:visible !important;
  max-width:100% !important;
}
.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.flex-viewport{
  min-height:280px;
}
.woocommerce div.product div.images img,
.woocommerce-product-gallery img{
  max-width:100% !important;
  height:auto !important;
  object-fit:contain;
}

@media (max-width: 900px){
  .ipp-collection-card{min-height:360px;}
  .ipp-collection-overlay{padding:26px;}
}
@media (max-width: 600px){
  .ipp-collection-card{min-height:320px;border-radius:24px;}
  .ipp-collection-overlay{padding:22px;}
  .woocommerce-product-gallery,
  .woocommerce-product-gallery__wrapper,
  .flex-viewport{min-height:220px;}
}


/* 1.0.9 professional streetwear polish
   Premium dark retail styling, stronger product merchandising, and cleaner mobile UX. */
:root{
  --ink-bg:#050508;
  --ink-card:#101018;
  --ink-panel:rgba(255,255,255,.075);
  --ink-text:#fafafa;
  --ink-muted:#c6c6d6;
  --ink-hot:#ff2d75;
  --ink-blue:#00d4ff;
  --ink-lime:#ccff33;
  --ink-orange:#ff7a1a;
  --ink-border:rgba(255,255,255,.14);
  --ink-radius:28px;
  --ink-shadow:0 28px 80px rgba(0,0,0,.42);
}
body{
  background:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px),
    radial-gradient(circle at 10% 0%, rgba(255,45,117,.28), transparent 26%),
    radial-gradient(circle at 88% 8%, rgba(0,212,255,.18), transparent 30%),
    linear-gradient(180deg,#050508 0%,#11111a 48%,#050508 100%);
  background-size:42px 42px,42px 42px,auto,auto,auto;
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:radial-gradient(circle at center, transparent 0%, rgba(0,0,0,.48) 78%);
}
.site-header{background:rgba(5,5,8,.76);box-shadow:0 10px 50px rgba(0,0,0,.24)}
.announcement-bar{
  background:linear-gradient(90deg,var(--ink-lime),#fff,var(--ink-blue));
  color:#060609;text-align:center;font-weight:950;text-transform:uppercase;
  letter-spacing:.12em;font-size:.72rem;padding:8px 16px;
}
.logo-mark{border-radius:50%;position:relative}
.logo-mark:after{content:"";position:absolute;inset:10px;border:2px solid rgba(0,0,0,.55);border-radius:50%}
.site-title{font-weight:950;letter-spacing:.08em}
.main-nav a{position:relative}
.main-nav a:after{
  content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;
  background:linear-gradient(90deg,var(--ink-hot),var(--ink-blue));
  transform:scaleX(0);transform-origin:left;transition:transform .2s ease;
}
.main-nav a:hover:after{transform:scaleX(1)}
.hero{padding:104px 0 82px}
.hero h1,.page-title,.section h2,.product_title{
  font-family:Impact, Haettenschweiler, "Arial Narrow Bold", Inter, sans-serif;
  font-weight:900;
  text-wrap:balance;
}
.hero p,.section p.lead{font-size:1.08rem;color:#ddddea}
.hero-card{transform:rotate(-1deg);isolation:isolate}
.hero-card:after{
  content:"DROP READY";position:absolute;right:20px;bottom:20px;z-index:2;
  background:#050508;color:var(--ink-lime);border:1px solid rgba(204,255,51,.55);
  border-radius:999px;padding:9px 13px;font-weight:950;font-size:.76rem;letter-spacing:.12em;
}
.hero-media{background:linear-gradient(135deg,#fff,#e9e9f2)}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .8s ease, transform 2.6s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-media{position:relative}
.badge{backdrop-filter:blur(12px);background:rgba(255,255,255,.075)}
.marquee span{animation:inkpulse-marquee 20s linear infinite}
@keyframes inkpulse-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.card,.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  background:
    linear-gradient(180deg,rgba(255,255,255,.095),rgba(255,255,255,.045));
  border-color:rgba(255,255,255,.16);
}
.card:hover,.woocommerce ul.products li.product:hover{
  transform:translateY(-5px);box-shadow:0 24px 70px rgba(0,0,0,.5);
  border-color:rgba(255,255,255,.26);
}
.category-card{
  background:
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.42)),
    radial-gradient(circle at 85% 12%,rgba(0,212,255,.24),transparent 32%),
    linear-gradient(135deg,rgba(255,45,117,.17),rgba(255,255,255,.04));
}
.category-card h3{font-size:2rem}
.woocommerce ul.products li.product a img{
  aspect-ratio:1/1;object-fit:cover;border:1px solid rgba(0,0,0,.08);
  transition:transform .25s ease, filter .25s ease;
}
.woocommerce ul.products li.product:hover a img{transform:scale(1.035);filter:saturate(1.08) contrast(1.04)}
.woocommerce-loop-product__title{letter-spacing:.02em}
.woocommerce ul.products li.product .price{font-size:1rem}
.woocommerce span.onsale{
  background:var(--ink-lime)!important;color:#050508!important;
  border-radius:999px!important;font-weight:950!important;text-transform:uppercase;
  min-height:auto!important;line-height:1!important;padding:9px 12px!important;
}
.woocommerce div.product div.summary{
  background:rgba(255,255,255,.055);border:1px solid var(--ink-border);
  border-radius:28px;padding:28px;box-shadow:var(--ink-shadow);
}
.woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .summary p{color:#eeeeF6}
.woocommerce table.shop_table,
.woocommerce-cart-form,
.woocommerce-checkout-review-order,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register{
  background:rgba(255,255,255,.055);border:1px solid var(--ink-border)!important;
  border-radius:24px;overflow:hidden;color:#fff;
}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{color:#fff;border-color:rgba(255,255,255,.12)!important}
.value-strip{
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px;
}
.value-pill{
  border:1px solid var(--ink-border);border-radius:18px;padding:14px 16px;
  background:rgba(255,255,255,.06);font-weight:900;text-transform:uppercase;font-size:.8rem;
}
.footer{
  background:
    radial-gradient(circle at 20% 0%, rgba(255,45,117,.13), transparent 28%),
    #050508;
}
.footer h4{letter-spacing:.08em}
@media(max-width:900px){
  .announcement-bar{font-size:.66rem}
  .header-inner{padding:13px 0}
  .main-nav{top:104px;background:rgba(5,5,8,.98)}
  .hero{padding:70px 0 54px}
  .value-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .hero h1,.page-title{font-size:clamp(3rem,18vw,4.8rem)}
  .hero-card:after{right:14px;bottom:14px;font-size:.68rem}
  .value-strip{grid-template-columns:1fr}
  .section-head{display:block}
  .header-actions .btn.alt{padding:10px 12px;font-size:.74rem}
}

/* Removed from homepage hero per layout update. */
.home .value-strip{display:none!important}


/* 1.0.10 homepage hero layout update: replace top-right info boxes with the hero image */
.home .hero-grid{
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  align-items:center;
}
.home .value-strip{display:none!important}
.home .hero-card-featured{
  align-self:stretch;
  display:flex;
  min-height:clamp(380px,44vw,580px);
}
.home .hero-card-featured .hero-media{
  width:100%;
  height:100%;
  min-height:clamp(360px,42vw,560px);
  aspect-ratio:4/5;
}
.home .hero-slider .hero-slide{
  object-fit:cover;
  object-position:center;
}
@media(max-width:900px){
  .home .hero-grid{grid-template-columns:1fr}
  .home .hero-card-featured{min-height:auto}
  .home .hero-card-featured .hero-media{min-height:360px;aspect-ratio:16/12}
}
@media(max-width:560px){
  .home .hero-card-featured .hero-media{min-height:300px;aspect-ratio:1/1}
}


/* 1.0.11 product gallery reliability */
.woocommerce div.product div.images .woocommerce-product-gallery__image.flex-active-slide,
.woocommerce div.product div.images .flex-active-slide {
  opacity: 1 !important;
  visibility: visible !important;
}
.woocommerce div.product div.images .flex-control-thumbs img {
  cursor: pointer;
  border-radius: 12px;
}
.woocommerce div.product div.images .flex-control-thumbs img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs img:hover {
  outline: 2px solid var(--ink-hot);
  outline-offset: 2px;
}


/* Product gallery stability fix: use a clean manual main-image swapper. */
.woocommerce div.product div.images.inkpulse-gallery-fixed {
  opacity: 1 !important;
  visibility: visible !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .flex-viewport,
.woocommerce div.product div.images.inkpulse-gallery-fixed .woocommerce-product-gallery__wrapper {
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .woocommerce-product-gallery__image {
  width: 100% !important;
  margin: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .woocommerce-product-gallery__image:not(:first-child) {
  display: none !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .woocommerce-product-gallery__image:first-child img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .flex-control-thumbs li {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .flex-control-thumbs img {
  cursor: pointer;
  border: 2px solid transparent;
  border-radius: 14px !important;
  opacity: .72 !important;
  background: #fff;
}
.woocommerce div.product div.images.inkpulse-gallery-fixed .flex-control-thumbs img.flex-active,
.woocommerce div.product div.images.inkpulse-gallery-fixed .flex-control-thumbs img.inkpulse-active-thumb {
  border-color: var(--ink-hot);
  opacity: 1 !important;
}



/* 1.0.13 product gallery thumbnail restore */
.woocommerce div.product div.images.inkpulse-gallery-fixed,
.woocommerce-product-gallery.inkpulse-gallery-fixed {
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .flex-viewport,
.woocommerce-product-gallery.inkpulse-gallery-fixed .woocommerce-product-gallery__wrapper {
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .woocommerce-product-gallery__image {
  width: 100% !important;
  margin: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .woocommerce-product-gallery__image:not(:first-child) {
  display: none !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .woocommerce-product-gallery__image:first-child img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .flex-control-thumbs {
  display: none !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-manual-thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px !important;
  opacity: 1 !important;
  visibility: visible !important;
  min-height: 0 !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb {
  display: block !important;
  appearance: none;
  border: 2px solid transparent;
  border-radius: 14px;
  padding: 0;
  margin: 0;
  cursor: pointer;
  overflow: hidden;
  background: #fff;
  opacity: .74;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1;
  height: auto !important;
  object-fit: cover;
  border-radius: 12px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb.is-active,
.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb:hover {
  border-color: var(--ink-hot);
  opacity: 1;
}

@media(max-width: 560px) {
  .woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-manual-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}


/* 1.0.14 professional retail finish */
:root{
  --ink-bg:#050507;
  --ink-card:#111116;
  --ink-panel:rgba(255,255,255,.07);
  --ink-text:#f7f3ed;
  --ink-muted:#b9b4ad;
  --ink-hot:#e72d61;
  --ink-blue:#25c7d9;
  --ink-lime:#d8f35b;
  --ink-orange:#f27a2c;
  --ink-cream:#f7f3ed;
  --ink-border:rgba(247,243,237,.14);
  --ink-radius:18px;
  --ink-shadow:0 24px 70px rgba(0,0,0,.46);
}

body{
  background:
    linear-gradient(rgba(247,243,237,.024) 1px, transparent 1px),
    linear-gradient(90deg, rgba(247,243,237,.018) 1px, transparent 1px),
    radial-gradient(circle at 8% 0%, rgba(231,45,97,.18), transparent 24%),
    radial-gradient(circle at 92% 5%, rgba(37,199,217,.12), transparent 25%),
    linear-gradient(180deg,#050507 0%,#111114 52%,#050507 100%);
  background-size:56px 56px,56px 56px,auto,auto,auto;
  color:var(--ink-text);
  letter-spacing:0;
}

.container{width:min(1240px,92vw)}
.site-header{background:rgba(5,5,7,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(247,243,237,.1)}
.announcement-bar{
  background:#f7f3ed;
  color:#070708;
  letter-spacing:.16em;
  font-size:.68rem;
  padding:9px 16px;
}
.header-inner{padding:15px 0}
.logo-wrap{gap:11px}
.logo-mark{
  width:38px;height:38px;border-radius:10px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.22),transparent 35%),
    linear-gradient(135deg,var(--ink-hot),var(--ink-orange) 48%,var(--ink-blue));
}
.logo-mark:after{display:none}
.site-title{font-size:.92rem;letter-spacing:.14em}
.main-nav a{color:#d8d3ca;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.main-nav a:after{bottom:-9px;background:var(--ink-cream)}

.btn,
.button,
button,
input[type=submit],
.wp-block-button__link,
.added_to_cart,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  border-radius:6px!important;
  background:var(--ink-cream)!important;
  color:#070708!important;
  box-shadow:none!important;
  border:1px solid var(--ink-cream)!important;
  min-height:46px;
  letter-spacing:.12em;
  font-size:.78rem;
}
.btn:hover,
.button:hover,
button:hover,
input[type=submit]:hover,
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{
  transform:translateY(-1px);
  background:var(--ink-lime)!important;
  border-color:var(--ink-lime)!important;
  color:#070708!important;
}
.btn.alt,
.header-actions .btn.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
  background:transparent!important;
  color:var(--ink-cream)!important;
  border-color:rgba(247,243,237,.28)!important;
}
.btn.alt:hover,
.header-actions .btn.alt:hover{
  background:rgba(247,243,237,.1)!important;
  color:var(--ink-cream)!important;
}

.hero{padding:96px 0 78px}
.hero-grid{gap:56px}
.kicker{
  color:var(--ink-lime);
  font-size:.72rem;
  letter-spacing:.22em;
}
.hero h1,
.page-title,
.section h2,
.product_title{
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing:-.055em;
  line-height:.9;
}
.hero h1{font-size:clamp(3.4rem,8vw,7.6rem);max-width:780px}
.gradient-text{
  background:linear-gradient(95deg,#f7f3ed 0%,#f7f3ed 54%,var(--ink-blue) 73%,var(--ink-hot) 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.hero p{max-width:660px;color:#d0cbc4;font-size:1.1rem}
.hero-actions{margin-top:32px}
.badge-row{margin-top:26px}
.badge{
  border-radius:6px;
  background:rgba(247,243,237,.055);
  color:#d8d3ca;
  font-size:.76rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.hero-card{
  border-radius:16px;
  padding:10px;
  transform:none;
  background:rgba(247,243,237,.08);
}
.hero-card:before{
  border-radius:18px;
  background:linear-gradient(135deg,rgba(231,45,97,.5),transparent 42%,rgba(37,199,217,.45));
  opacity:.32;
}
.hero-card:after{
  content:"PRINT LAB";
  right:18px;
  bottom:18px;
  border-radius:6px;
  color:#070708;
  background:var(--ink-lime);
  border:0;
}
.hero-media{border-radius:10px;background:#f7f3ed}
.home .hero-card-featured .hero-media{aspect-ratio:4/5}
.marquee{
  background:#f7f3ed;
  color:#070708;
  letter-spacing:.14em;
  font-size:.82rem;
}
.marquee span{padding:15px 28px}

.section{padding:78px 0}
.section-head{margin-bottom:32px}
.section p.lead{color:#cfc9c1}
.card{
  border-radius:12px;
  padding:28px;
  background:linear-gradient(180deg,rgba(247,243,237,.085),rgba(247,243,237,.038));
}
.card h3,
.card h2{margin-top:0;text-transform:uppercase;letter-spacing:.02em}

.value-strip{
  display:grid!important;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.home .value-strip{display:grid!important}
.value-pill{
  border-radius:8px;
  background:rgba(247,243,237,.07);
  color:#f7f3ed;
  border-color:rgba(247,243,237,.14);
  min-height:68px;
  display:flex;
  align-items:center;
}

.ipp-collection-card{
  border-radius:14px;
  min-height:500px;
  background:#0c0c10;
}
.ipp-collection-overlay{
  padding:30px;
  background:
    linear-gradient(to top, rgba(0,0,0,.86), rgba(0,0,0,.36) 58%, rgba(0,0,0,.06)),
    linear-gradient(135deg,rgba(231,45,97,.2),transparent 42%);
}
.ipp-collection-overlay h3{
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing:-.045em;
}
.ipp-collection-overlay p{font-size:1rem;color:#eee9e0}

.products ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  border-radius:12px;
  padding:12px!important;
  background:#121217;
}
.woocommerce ul.products li.product a img{
  border-radius:8px;
  background:#f7f3ed;
  margin-bottom:16px!important;
}
.woocommerce-loop-product__title{
  font-size:.92rem!important;
  letter-spacing:.06em;
  min-height:2.6em;
}
.woocommerce ul.products li.product .price,
.price{
  color:var(--ink-lime)!important;
  font-size:.95rem!important;
}
.woocommerce span.onsale{border-radius:6px!important}

.woocommerce div.product{
  gap:34px;
}
.woocommerce div.product div.summary{
  border-radius:14px;
  background:linear-gradient(180deg,rgba(247,243,237,.08),rgba(247,243,237,.04));
}
.woocommerce div.product div.images img,
.woocommerce-product-gallery__image img,
.woocommerce div.product div.images .wp-post-image{
  border-radius:10px;
  background:#f7f3ed;
}
.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb{
  border-radius:8px;
  background:#f7f3ed!important;
}
.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb img{border-radius:6px!important}
input,
textarea,
select,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select{
  border-radius:8px!important;
}

.footer{
  padding:54px 0;
  background:#050507;
}
.footer-grid{grid-template-columns:1.6fr 1fr 1fr}
.footer p,
.footer li,
.footer a{color:#bdb7ae}

@media(max-width:1024px){
  .products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .main-nav{top:97px}
  .hero{padding:66px 0 56px}
  .hero-grid{gap:34px}
  .value-strip{grid-template-columns:repeat(2,1fr)}
  .products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .announcement-bar{font-size:.58rem;letter-spacing:.1em}
  .site-title{font-size:.78rem;max-width:38vw}
  .mobile-toggle{border-radius:6px!important;width:auto!important}
  .hero h1,.page-title{font-size:clamp(3rem,17vw,4.7rem)}
  .home .hero-card-featured .hero-media{min-height:320px}
  .value-strip,
  .products ul.products{grid-template-columns:1fr}
  .ipp-collection-card{min-height:360px;border-radius:12px}
  .footer-grid{grid-template-columns:1fr}
}


/* 1.0.15 product gallery thumbnail placement */
.woocommerce div.product div.images,
.woocommerce div.product div.images .woocommerce-product-gallery,
.woocommerce-product-gallery.inkpulse-gallery-fixed {
  display: block !important;
  float: none !important;
}

.woocommerce div.product div.images .flex-viewport,
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce div.product div.images .woocommerce-product-gallery__image {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}

.woocommerce div.product div.images .flex-control-thumbs,
.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-manual-thumbs {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  clear: both !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.woocommerce-product-gallery.inkpulse-gallery-fixed .flex-control-thumbs {
  display: none !important;
}

.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb {
  width: auto !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
}

.woocommerce div.product div.images .flex-control-thumbs img,
.woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-gallery-thumb img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

@media(max-width: 700px) {
  .woocommerce div.product div.images .flex-control-thumbs,
  .woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-manual-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}


/* 1.0.16 readable product headings */
.woocommerce div.product .product_title {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(2.1rem, 4.5vw, 4.25rem) !important;
  font-weight: 850 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.025em !important;
  text-transform: none !important;
  max-width: 12ch;
}

.woocommerce-loop-product__title {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .96rem !important;
  font-weight: 800 !important;
  line-height: 1.28 !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
  min-height: 2.6em;
}

@media(max-width: 560px) {
  .woocommerce div.product .product_title {
    font-size: clamp(2rem, 10vw, 3rem) !important;
    max-width: 100%;
  }
}


/* 1.0.17 cleaner homepage hero */
.home .hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 520px) !important;
  align-items: center !important;
}

.home .hero-copy {
  align-self: center;
}

.home .hero-card-featured {
  width: min(100%, 520px);
  min-height: 0 !important;
  align-self: center !important;
  justify-self: end;
}

.home .hero-card-featured .hero-media,
.home .hero-media.hero-slider {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
}

.home .hero-slider .hero-slide {
  object-fit: cover;
  object-position: center;
}

.home .badge-row,
.home .value-strip {
  display: none !important;
}

@media(max-width: 900px) {
  .home .hero-grid {
    grid-template-columns: 1fr !important;
  }

  .home .hero-card-featured {
    justify-self: center;
    width: min(100%, 560px);
  }
}


/* 1.0.18 collection card and product button polish */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product .button,
.woocommerce-page ul.products li.product .added_to_cart,
.products ul.products li.product .button,
.products ul.products li.product .added_to_cart {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 14px !important;
  line-height: 1.15 !important;
  white-space: normal !important;
  word-break: normal !important;
}

.woocommerce ul.products li.product .button::after,
.woocommerce-page ul.products li.product .button::after {
  margin-left: 7px;
}


/* 1.0.19 professional readable checkout */
body.woocommerce-checkout {
  background: #050507 !important;
}

.woocommerce-checkout .woocommerce,
.woocommerce-checkout .woocommerce * {
  box-sizing: border-box;
}

.woocommerce-checkout .woocommerce {
  color: #f7f3ed;
}

.woocommerce-checkout .page-title,
.woocommerce-checkout h1,
.woocommerce-checkout h2,
.woocommerce-checkout h3 {
  color: #f7f3ed !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-error {
  background: #f7f3ed !important;
  color: #111116 !important;
  border: 1px solid rgba(247,243,237,.22) !important;
  border-top: 0 !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
  margin: 0 0 18px !important;
}

.woocommerce-checkout .woocommerce-info *,
.woocommerce-checkout .woocommerce-message *,
.woocommerce-checkout .woocommerce-error *,
.woocommerce-checkout .woocommerce-form-coupon-toggle *,
.woocommerce-checkout .woocommerce-form-login-toggle * {
  color: #111116 !important;
}

.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 28px;
  align-items: start;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.login {
  width: 100% !important;
  float: none !important;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.login {
  background: #f7f3ed !important;
  color: #111116 !important;
  border: 1px solid rgba(17,17,22,.12) !important;
  border-radius: 14px !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.34) !important;
  padding: 24px !important;
  overflow: hidden;
}

.woocommerce-checkout #customer_details {
  grid-column: 1;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
  grid-column: 2;
}

.woocommerce-checkout #order_review_heading {
  margin: 0 0 12px !important;
  align-self: end;
}

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading {
  color: #f7f3ed !important;
  font-size: clamp(1.5rem, 2.6vw, 2.25rem);
  line-height: 1.08;
  letter-spacing: -.03em;
}

.woocommerce-checkout .col2-set h3 {
  color: #111116 !important;
}

.woocommerce-checkout .col2-set *,
.woocommerce-checkout .woocommerce-checkout-review-order *,
.woocommerce-checkout form.checkout_coupon *,
.woocommerce-checkout form.login * {
  color: #111116 !important;
  text-shadow: none !important;
}

.woocommerce-checkout label,
.woocommerce-checkout .woocommerce form .form-row label,
.woocommerce-checkout .form-row label,
.woocommerce-checkout .woocommerce-input-wrapper,
.woocommerce-checkout .required {
  color: #111116 !important;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container--default .select2-selection--single {
  background: #ffffff !important;
  color: #111116 !important;
  -webkit-text-fill-color: #111116 !important;
  border: 1px solid rgba(17,17,22,.22) !important;
  border-radius: 8px !important;
  min-height: 48px !important;
  padding: 12px 13px !important;
  box-shadow: none !important;
}

.woocommerce-checkout textarea {
  min-height: 120px !important;
}

.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder {
  color: rgba(17,17,22,.55) !important;
  -webkit-text-fill-color: rgba(17,17,22,.55) !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__placeholder,
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow b {
  color: #111116 !important;
}

.select2-dropdown,
.select2-results,
.select2-results__option {
  background: #ffffff !important;
  color: #111116 !important;
}

.select2-results__option--highlighted,
.select2-results__option--highlighted * {
  background: #111116 !important;
  color: #ffffff !important;
}

.woocommerce-checkout .form-row {
  margin-bottom: 16px !important;
}

.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
  width: calc(50% - 8px) !important;
}

.woocommerce-checkout table.shop_table {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 0 18px !important;
}

.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td,
.woocommerce-checkout table.shop_table strong,
.woocommerce-checkout table.shop_table bdi,
.woocommerce-checkout table.shop_table span,
.woocommerce-checkout table.shop_table a {
  color: #111116 !important;
  border-color: rgba(17,17,22,.14) !important;
}

.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td {
  padding: 14px 10px !important;
}

.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-payment,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment div.payment_box {
  background: #ffffff !important;
  color: #111116 !important;
  border: 1px solid rgba(17,17,22,.12) !important;
  border-radius: 12px !important;
}

.woocommerce-checkout #payment {
  padding: 16px !important;
}

.woocommerce-checkout #payment ul.payment_methods {
  padding: 0 0 14px !important;
  border-width: 0 0 1px !important;
  border-radius: 0 !important;
}

.woocommerce-checkout #payment div.payment_box {
  margin: 12px 0 !important;
  padding: 13px 14px !important;
}

.woocommerce-checkout #payment *,
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-privacy-policy-text *,
.woocommerce-checkout .wc_payment_method,
.woocommerce-checkout .wc_payment_method * {
  color: #111116 !important;
  -webkit-text-fill-color: #111116 !important;
}

.woocommerce-checkout #payment a,
.woocommerce-checkout .woocommerce-privacy-policy-text a {
  color: #005fcc !important;
  text-decoration: underline;
}

.woocommerce-checkout #place_order,
.woocommerce-checkout button.button,
.woocommerce-checkout input.button {
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
  background: #111116 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #111116 !important;
  min-height: 54px !important;
  margin-top: 12px !important;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout button.button:hover,
.woocommerce-checkout input.button:hover {
  background: var(--ink-hot) !important;
  border-color: var(--ink-hot) !important;
}

@media(max-width: 900px) {
  .woocommerce-checkout form.checkout {
    display: block;
  }

  .woocommerce-checkout #order_review_heading {
    margin-top: 28px !important;
  }
}

@media(max-width: 620px) {
  .woocommerce-checkout .col2-set,
  .woocommerce-checkout .woocommerce-checkout-review-order,
  .woocommerce-checkout form.checkout_coupon,
  .woocommerce-checkout form.login {
    padding: 18px !important;
  }

  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    width: 100% !important;
    float: none !important;
  }
}


/* 1.0.20 grey brand base + checkout/cart readability */
:root{
  --ink-bg:#6d6868;
  --ink-card:#5f5b5b;
  --ink-panel:rgba(255,255,255,.16);
  --ink-border:rgba(255,255,255,.24);
}

body,
body.woocommerce-checkout,
body.woocommerce-cart {
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    radial-gradient(circle at 10% 0%, rgba(231,45,97,.14), transparent 24%),
    radial-gradient(circle at 92% 6%, rgba(37,199,217,.12), transparent 24%),
    linear-gradient(180deg,#6d6868 0%,#5f5b5b 52%,#6d6868 100%) !important;
  background-size:56px 56px,56px 56px,auto,auto,auto !important;
}

.site-header,
.footer,
.main-nav {
  background: rgba(88,84,84,.92) !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.card,
.woocommerce div.product div.summary {
  background: rgba(255,255,255,.14) !important;
  border-color: rgba(255,255,255,.25) !important;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.login,
.woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-cart .cross-sells {
  background: #f7f3ed !important;
  color: #161414 !important;
  border: 1px solid rgba(22,20,20,.14) !important;
  border-radius: 14px !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.22) !important;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.login {
  text-align: center;
}

.woocommerce-checkout .form-row,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
  text-align: left;
}

.woocommerce-checkout .woocommerce-checkout-review-order table,
.woocommerce-checkout .woocommerce-checkout-review-order #payment,
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .place-order {
  text-align: center !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order *,
.woocommerce-checkout .col2-set *,
.woocommerce-cart-form *,
.woocommerce-cart .cart-collaterals .cart_totals *,
.woocommerce-cart .cross-sells * {
  color: #161414 !important;
  text-shadow: none !important;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-cart input.input-text,
.woocommerce-cart input[type="text"],
.woocommerce-cart input[type="number"],
.woocommerce-cart textarea,
.woocommerce-cart select {
  background: #ffffff !important;
  color: #161414 !important;
  -webkit-text-fill-color: #161414 !important;
  border-color: rgba(22,20,20,.25) !important;
}

.woocommerce-checkout #place_order,
.woocommerce-checkout button#place_order,
.woocommerce-checkout .place-order #place_order,
.woocommerce-checkout button.button#place_order {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #2b2929 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid #2b2929 !important;
  border-radius: 8px !important;
  text-align: center !important;
  opacity: 1 !important;
}

.woocommerce-checkout #place_order *,
.woocommerce-checkout button#place_order * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout button#place_order:hover {
  background: #e72d61 !important;
  border-color: #e72d61 !important;
}

.woocommerce-cart a.remove,
.woocommerce-cart a.remove:visited,
.woocommerce-cart td.product-remove a,
.woocommerce-cart td.product-remove a:visited {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  border-radius: 999px !important;
  background: #2b2929 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid #2b2929 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

.woocommerce-cart a.remove:hover,
.woocommerce-cart td.product-remove a:hover {
  background: #e72d61 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #e72d61 !important;
}

.woocommerce-cart .button,
.woocommerce-cart button.button,
.woocommerce-cart input.button,
.woocommerce-cart .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  background: #2b2929 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #2b2929 !important;
}

.woocommerce-cart .button:hover,
.woocommerce-cart button.button:hover,
.woocommerce-cart input.button:hover,
.woocommerce-cart .checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: #e72d61 !important;
  border-color: #e72d61 !important;
}

.woocommerce-cart .cart_totals table,
.woocommerce-cart table.shop_table {
  background: transparent !important;
}


/* 2.0.0 safe cart/checkout button fixes */
.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link),
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link),
.wc-block-cart .wc-block-components-button:not(.is-link),
.wc-block-checkout .wc-block-components-button:not(.is-link),
.wc-block-components-checkout-place-order-button,
.wc-block-components-product-button .wc-block-components-button {
  background: #2b2929 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid #2b2929 !important;
  opacity: 1 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}

.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link) *,
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link) *,
.wc-block-components-checkout-place-order-button *,
.wc-block-components-button__text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}

.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link):hover,
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link):hover,
.wc-block-cart .wc-block-components-button:not(.is-link):hover,
.wc-block-checkout .wc-block-components-button:not(.is-link):hover,
.wc-block-components-checkout-place-order-button:hover {
  background: #e72d61 !important;
  border-color: #e72d61 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.wp-block-woocommerce-cart .wc-block-cart-item__remove-link,
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link:visited,
.wc-block-cart .wc-block-cart-item__remove-link,
.wc-block-cart .wc-block-cart-item__remove-link:visited {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: #2b2929 !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.wp-block-woocommerce-cart .wc-block-cart-item__remove-link:hover,
.wc-block-cart .wc-block-cart-item__remove-link:hover {
  background: #e72d61 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}


/* 2.0.1 cart/checkout text, radio, and alignment polish */
.woocommerce-cart,
.woocommerce-checkout,
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout,
.wc-block-cart,
.wc-block-checkout {
  color: #ffffff !important;
}

.wp-block-woocommerce-cart :where(h1,h2,h3,h4,h5,h6,p,span,div,label,strong,em,small,th,td,li,a),
.wp-block-woocommerce-checkout :where(h1,h2,h3,h4,h5,h6,p,span,div,label,strong,em,small,th,td,li,a),
.wc-block-cart :where(h1,h2,h3,h4,h5,h6,p,span,div,label,strong,em,small,th,td,li,a),
.wc-block-checkout :where(h1,h2,h3,h4,h5,h6,p,span,div,label,strong,em,small,th,td,li,a) {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}

.wp-block-woocommerce-cart :where(input,textarea,select,option),
.wp-block-woocommerce-checkout :where(input,textarea,select,option),
.wc-block-cart :where(input,textarea,select,option),
.wc-block-checkout :where(input,textarea,select,option) {
  color: #161414 !important;
  -webkit-text-fill-color: #161414 !important;
  text-shadow: none !important;
}

.wp-block-woocommerce-cart :where(input[type="radio"],input[type="checkbox"]),
.wp-block-woocommerce-checkout :where(input[type="radio"],input[type="checkbox"]),
.wc-block-cart :where(input[type="radio"],input[type="checkbox"]),
.wc-block-checkout :where(input[type="radio"],input[type="checkbox"]) {
  accent-color: #ffffff !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #ffffff !important;
}

.wc-block-components-radio-control__input,
.wc-block-components-checkbox .wc-block-components-checkbox__input {
  accent-color: #ffffff !important;
  border-color: #ffffff !important;
  outline-color: #ffffff !important;
}

.wc-block-components-radio-control__option,
.wc-block-components-checkbox,
.wc-block-components-address-card,
.wc-block-components-totals-wrapper,
.wc-block-components-order-summary,
.wc-block-components-checkout-step__container,
.wc-block-cart-items__row {
  border-color: rgba(255,255,255,.28) !important;
}

.wc-block-components-address-card,
.wc-block-components-panel,
.wc-block-components-radio-control,
.wc-block-components-order-summary,
.wc-block-components-totals-coupon,
.wc-block-components-totals-wrapper {
  background: rgba(255,255,255,.06) !important;
}

.wc-block-components-totals-item,
.wc-block-cart-item__wrap,
.wc-block-components-product-metadata,
.wc-block-components-checkout-step__heading,
.wc-block-components-checkout-step__description {
  text-align: left !important;
}

.wc-block-components-button:not(.is-link),
.wc-block-components-checkout-place-order-button,
.wc-block-components-product-button .wc-block-components-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  background: #2b2929 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #2b2929 !important;
}

.wc-block-components-button:not(.is-link) *,
.wc-block-components-checkout-place-order-button *,
.wc-block-components-button__text {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-align: center !important;
}


/* 2.0.2 cart recommendations and checkout field readability */
.woocommerce-cart .cross-sells ul.products li.product .button,
.woocommerce-cart .cross-sells ul.products li.product .added_to_cart,
.woocommerce-cart .wc-block-grid__products .wc-block-grid__product .wp-block-button__link,
.woocommerce-cart .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-button__button,
.woocommerce-cart .wp-block-woocommerce-product-button .wp-block-button__link,
.woocommerce-cart .wc-block-components-product-button .wc-block-components-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 14px !important;
  border-radius: 6px !important;
  background: #2b2929 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid #2b2929 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}

.woocommerce-cart .cross-sells ul.products li.product .button *,
.woocommerce-cart .wc-block-grid__products .wc-block-grid__product .wp-block-button__link *,
.woocommerce-cart .wc-block-components-product-button .wc-block-components-button * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}

.woocommerce-cart .cross-sells ul.products li.product .button:hover,
.woocommerce-cart .wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover,
.woocommerce-cart .wc-block-components-product-button .wc-block-components-button:hover {
  background: #e72d61 !important;
  border-color: #e72d61 !important;
}

.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-text-input textarea,
.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
.woocommerce-checkout .wc-block-components-combobox input,
.woocommerce-checkout .wc-block-components-country-input input,
.woocommerce-checkout .wc-block-components-state-input input,
.woocommerce-checkout .wc-block-components-select select,
.woocommerce-checkout .wc-block-components-address-form input,
.woocommerce-checkout .wc-block-components-address-form textarea,
.woocommerce-checkout .wc-block-components-address-form select,
.wp-block-woocommerce-checkout .wc-block-components-text-input input,
.wp-block-woocommerce-checkout .wc-block-components-text-input textarea,
.wp-block-woocommerce-checkout .wc-block-components-combobox input,
.wp-block-woocommerce-checkout .wc-block-components-select select,
.wp-block-woocommerce-checkout .wc-block-components-address-form input,
.wp-block-woocommerce-checkout .wc-block-components-address-form textarea,
.wp-block-woocommerce-checkout .wc-block-components-address-form select {
  background: #ffffff !important;
  color: #161414 !important;
  -webkit-text-fill-color: #161414 !important;
  caret-color: #161414 !important;
  text-shadow: none !important;
}

.woocommerce-checkout .wc-block-components-text-input input::placeholder,
.woocommerce-checkout .wc-block-components-text-input textarea::placeholder,
.woocommerce-checkout .wc-block-components-combobox input::placeholder,
.woocommerce-checkout .wc-block-components-address-form input::placeholder,
.woocommerce-checkout .wc-block-components-address-form textarea::placeholder,
.wp-block-woocommerce-checkout .wc-block-components-text-input input::placeholder,
.wp-block-woocommerce-checkout .wc-block-components-combobox input::placeholder,
.wp-block-woocommerce-checkout .wc-block-components-address-form input::placeholder {
  color: rgba(22,20,20,.55) !important;
  -webkit-text-fill-color: rgba(22,20,20,.55) !important;
}

.woocommerce-checkout .wc-block-components-text-input label,
.woocommerce-checkout .wc-block-components-combobox label,
.woocommerce-checkout .wc-block-components-select label,
.woocommerce-checkout .wc-block-components-address-form label,
.wp-block-woocommerce-checkout .wc-block-components-text-input label,
.wp-block-woocommerce-checkout .wc-block-components-combobox label,
.wp-block-woocommerce-checkout .wc-block-components-select label,
.wp-block-woocommerce-checkout .wc-block-components-address-form label {
  color: #161414 !important;
  -webkit-text-fill-color: #161414 !important;
  text-shadow: none !important;
}


/* 2.0.3 align product-card buttons to the bottom */
.woocommerce ul.products,
.woocommerce-page ul.products,
.products ul.products,
.woocommerce .related.products ul.products,
.woocommerce .up-sells.upsells.products ul.products,
.woocommerce .cross-sells ul.products {
  align-items: stretch !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.products ul.products li.product,
.woocommerce .related.products ul.products li.product,
.woocommerce .up-sells.upsells.products ul.products li.product,
.woocommerce .cross-sells ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product > a.woocommerce-LoopProduct-link,
.products ul.products li.product > a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.products ul.products li.product .woocommerce-loop-product__title {
  min-height: 2.7em !important;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.products ul.products li.product .price {
  margin-top: auto !important;
  min-height: 1.4em !important;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product .button,
.woocommerce-page ul.products li.product .added_to_cart,
.products ul.products li.product .button,
.products ul.products li.product .added_to_cart,
.woocommerce .related.products ul.products li.product .button,
.woocommerce .up-sells.upsells.products ul.products li.product .button,
.woocommerce .cross-sells ul.products li.product .button {
  margin-top: auto !important;
}

.wc-block-grid__products,
.wp-block-woocommerce-product-collection .wc-block-grid__products {
  align-items: stretch !important;
}

.wc-block-grid__product,
.wp-block-woocommerce-product-collection .wc-block-grid__product {
  display: flex !important;
  flex-direction: column !important;
}

.wc-block-grid__product .wc-block-grid__product-link,
.wc-block-grid__product .wc-block-grid__product-title,
.wc-block-grid__product .wc-block-grid__product-price {
  flex: 0 0 auto;
}

.wc-block-grid__product .wp-block-button,
.wc-block-grid__product .wc-block-components-product-button,
.wp-block-woocommerce-product-collection .wp-block-button,
.wp-block-woocommerce-product-collection .wc-block-components-product-button {
  margin-top: auto !important;
}


/* 2.0.4 product page size guide link color */
.single-product a[href*="size-guide"],
.single-product a[href*="size_guide"],
.single-product a[class*="size" i],
.single-product button[class*="size" i],
.single-product [class*="size-guide" i],
.single-product [class*="size_guide" i] {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration-color: rgba(255,255,255,.7) !important;
}


/* 2.0.5 stricter product size guide link override */
body.single-product .summary a,
body.single-product .entry-summary a,
body.single-product form.cart a,
body.single-product table.variations a,
body.single-product .product_meta a {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration-color: rgba(255,255,255,.75) !important;
}

body.single-product .summary a[style],
body.single-product .entry-summary a[style],
body.single-product form.cart a[style],
body.single-product a[href*="size" i],
body.single-product a[title*="size" i],
body.single-product a[aria-label*="size" i],
body.single-product a[data-title*="size" i],
body.single-product .size-guide,
body.single-product .size-guide *,
body.single-product .size_guide,
body.single-product .size_guide *,
body.single-product .ct-size-guide,
body.single-product .ct-size-guide *,
body.single-product .kiwi-sizing-modal-link,
body.single-product .kiwi-sizing-modal-link *,
body.single-product .ks-chart-modal-link,
body.single-product .ks-chart-modal-link *,
body.single-product .button_sg,
body.single-product .button_sg * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration-color: rgba(255,255,255,.75) !important;
}


/* 2.0.6 related products alignment */
.single-product .related.products {
  width: 100% !important;
  clear: both !important;
}

.single-product .related.products > h2 {
  margin-bottom: 24px !important;
}

.single-product .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-product .related.products ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: auto !important;
  height: 100% !important;
  min-height: 0 !important;
  float: none !important;
  margin: 0 !important;
}

.single-product .related.products ul.products li.product > a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}

.single-product .related.products ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  max-height: none !important;
  object-fit: cover !important;
  margin: 0 0 16px !important;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
  min-height: 3.8em !important;
  margin: 0 0 10px !important;
}

.single-product .related.products ul.products li.product .price {
  margin-top: auto !important;
  min-height: 1.5em !important;
  display: flex !important;
  align-items: center !important;
}

.single-product .related.products ul.products li.product .button,
.single-product .related.products ul.products li.product .added_to_cart {
  margin-top: 14px !important;
  width: 100% !important;
}

@media(max-width: 1024px) {
  .single-product .related.products ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media(max-width: 760px) {
  .single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width: 520px) {
  .single-product .related.products ul.products {
    grid-template-columns: 1fr !important;
  }
}


/* 2.0.7 two-by-two recommendation sections */
.single-product .related.products,
.single-product .up-sells.upsells.products {
  max-width: 760px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.single-product .related.products ul.products,
.single-product .up-sells.upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  justify-content: start !important;
  justify-items: stretch !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 760px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.single-product .related.products ul.products li.product,
.single-product .up-sells.upsells.products ul.products li.product {
  width: auto !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
}

.single-product .related.products ul.products li.product:nth-child(n+5),
.single-product .up-sells.upsells.products ul.products li.product:nth-child(n+5) {
  display: none !important;
}

.single-product .up-sells.upsells.products ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.single-product .up-sells.upsells.products ul.products li.product > a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}

.single-product .up-sells.upsells.products ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  object-fit: cover !important;
  margin: 0 0 16px !important;
}

.single-product .up-sells.upsells.products ul.products li.product .woocommerce-loop-product__title {
  min-height: 3.8em !important;
  margin: 0 0 10px !important;
}

.single-product .up-sells.upsells.products ul.products li.product .price {
  margin-top: auto !important;
  min-height: 1.5em !important;
}

.single-product .up-sells.upsells.products ul.products li.product .button,
.single-product .up-sells.upsells.products ul.products li.product .added_to_cart {
  margin-top: 14px !important;
  width: 100% !important;
}

@media(max-width: 620px) {
  .single-product .related.products,
  .single-product .up-sells.upsells.products,
  .single-product .related.products ul.products,
  .single-product .up-sells.upsells.products ul.products {
    max-width: 100% !important;
  }

  .single-product .related.products ul.products,
  .single-product .up-sells.upsells.products ul.products {
    grid-template-columns: 1fr !important;
  }
}


/* 2.0.8 prevent duplicate product gallery images */
.single-product .woocommerce-product-gallery .inkpulse-manual-thumbs,
.single-product .woocommerce-product-gallery.inkpulse-gallery-fixed .inkpulse-manual-thumbs {
  display: none !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  clear: both !important;
  position: static !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  background: #f7f3ed !important;
}

@media(max-width: 560px) {
  .single-product .woocommerce-product-gallery .flex-control-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}


/* 2.0.9 keep product gallery in-page */
.single-product .woocommerce-product-gallery__image a {
  cursor: default !important;
}


/* 2.1.0 professional footer */
.footer {
  border-top: 1px solid rgba(255,255,255,.18) !important;
}

.footer-grid-pro {
  grid-template-columns: minmax(280px, 1.6fr) minmax(150px,.8fr) minmax(180px,.9fr) minmax(180px,.9fr) !important;
  gap: 34px !important;
  align-items: start;
}

.footer-brand-block p {
  max-width: 520px;
  margin: 14px 0 0;
  color: rgba(255,255,255,.78);
}

.footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #ffffff !important;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.footer-logo .logo-mark {
  flex: 0 0 auto;
}

.footer h4 {
  font-size: .82rem;
  letter-spacing: .16em;
  margin-bottom: 14px;
}

.footer ul {
  display: grid;
  gap: 10px;
}

.footer a {
  color: rgba(255,255,255,.78) !important;
  transition: color .18s ease, transform .18s ease, border-color .18s ease;
}

.footer a:hover {
  color: #ffffff !important;
}

.footer-socials {
  display: flex;
  gap: 10px;
  margin-top: 22px;
}

.footer-socials a {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: #ffffff !important;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0;
}

.footer-socials a:hover {
  transform: translateY(-2px);
  border-color: #d8f35b;
  color: #d8f35b !important;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-top: 34px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.14);
}

.footer-bottom p {
  margin: 0;
  color: rgba(255,255,255,.64);
  font-size: .88rem;
}

@media(max-width: 900px) {
  .footer-grid-pro {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width: 560px) {
  .footer-grid-pro {
    grid-template-columns: 1fr !important;
  }

  .footer-bottom {
    display: grid;
  }
}


/* ── 2.1.5 size guide modal — universal nuclear fix ────────────────────────
   ROOT CAUSE: body { color: #f8f8fb } (near-white) is inherited by every
   modal appended to <body>, making text invisible on light popup backgrounds.
   Also, the theme's  button *  rule forces color:#fff on all children,
   which cascades into modal content.

   STRATEGY: target modals by structure (direct body children + ARIA roles)
   rather than specific plugin class names, so this works regardless of which
   size guide plugin is installed. Cover every lightbox library too.
─────────────────────────────────────────────────────────────────────────── */

/* ── 1. ARIA-role targeting (most reliable, plugin-agnostic) ── */
[role="dialog"],
[role="dialog"] *,
[aria-modal="true"],
[aria-modal="true"] *,
[aria-label*="size" i],
[aria-label*="size" i] * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 2. Direct <body> children — modals are almost always portaled here ── */
body > [class*="modal"],
body > [class*="modal"] *,
body > [class*="popup"],
body > [class*="popup"] *,
body > [class*="overlay"]:not(.mfp-overlay),
body > [class*="overlay"]:not(.mfp-overlay) *,
body > [class*="dialog"],
body > [class*="dialog"] *,
body > [class*="lightbox"],
body > [class*="lightbox"] *,
body > [class*="fancybox"],
body > [class*="fancybox"] *,
body > [class*="chart"],
body > [class*="chart"] * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 3. MagnificPopup — used by most WP size guide plugins ── */
.mfp-content,
.mfp-content *,
.mfp-wrap .mfp-container,
.mfp-wrap .mfp-container *,
.white-popup,
.white-popup *,
.mfp-inline-holder .mfp-content,
.mfp-inline-holder .mfp-content * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 4. FancyBox 3 / 4 ── */
.fancybox-container,
.fancybox-container *,
.fancybox-slide,
.fancybox-slide *,
.fancybox-content,
.fancybox-content * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 5. WooCommerce Backbone modal ── */
.wc-backbone-modal-main,
.wc-backbone-modal-main *,
#wc-backbone-modal-dialog,
#wc-backbone-modal-dialog * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 6. Known size-guide plugin classes (belt-and-braces) ── */
/* Kiwi Sizing Chart */
.kiwi-sizing-modal, .kiwi-sizing-modal *,
#kiwi-sizing-chart-modal, #kiwi-sizing-chart-modal *,
/* WooCommerce Size Chart */
.woo-size-guide-popup, .woo-size-guide-popup *,
#woo-size-guide, #woo-size-guide *,
/* Iconic WooCommerce Fitted */
.iconic-was-guide-modal, .iconic-was-guide-modal *,
/* YITH WooCommerce Size Charts */
.yith-woosc-popup, .yith-woosc-popup *,
/* WooCommerce Size Chart by WPeka */
.wc-size-chart, .wc-size-chart *,
/* Size Chart for WooCommerce by Sparks */
.sparks-size-chart-modal, .sparks-size-chart-modal *,
/* SgPopup / Popup Maker */
.sg-popup-content, .sg-popup-content *,
.pum-content, .pum-content * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 7. Any element whose class contains both "size" and a popup keyword ── */
[class*="size"][class*="modal"],   [class*="size"][class*="modal"] *,
[class*="size"][class*="popup"],   [class*="size"][class*="popup"] *,
[class*="size"][class*="chart"],   [class*="size"][class*="chart"] *,
[class*="size"][class*="guide"]:not(a):not(button),
[class*="size"][class*="guide"]:not(a):not(button) *,
[id*="size"][id*="modal"],         [id*="size"][id*="modal"] *,
[id*="size"][id*="chart"],         [id*="size"][id*="chart"] * {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 8. Table cells, headings, paragraphs inside any modal wrapper ── */
[class*="modal"] table,  [class*="modal"] table *,
[class*="popup"] table,  [class*="popup"] table *,
[class*="modal"] h1, [class*="modal"] h2, [class*="modal"] h3,
[class*="modal"] h4, [class*="modal"] h5, [class*="modal"] h6,
[class*="popup"] h1, [class*="popup"] h2, [class*="popup"] h3,
[class*="popup"] h4, [class*="popup"] h5, [class*="popup"] h6,
[class*="modal"] p,  [class*="popup"] p,
[class*="modal"] li, [class*="popup"] li,
[class*="modal"] td, [class*="modal"] th,
[class*="popup"] td, [class*="popup"] th {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
}

/* ── 9. Close buttons — keep them visible against the modal chrome ── */
.mfp-close,
.fancybox-button,
.fancybox-close-small,
[class*="modal"] [class*="close"],
[class*="popup"] [class*="close"],
.kiwi-sizing-modal__close {
  color: #1a1a1a !important;
  -webkit-text-fill-color: #1a1a1a !important;
  background: transparent !important;
  text-shadow: none !important;
}

/* ── 10. Dimmer overlay — keep the dark scrim but not the content text ── */
.mfp-overlay {
  background: rgba(0,0,0,0.7) !important;
}
