/*
Theme Name: Marché Rosé (preview)
Author: The Cabinet of Curiositeas
Description: Event thema voor Marché Rosé — "Made to mingle". Gebaseerd op het Tea Netherlands Curiositeas B2B-thema (v2.0.29): dezelfde WooCommerce-functionaliteit en techniek, maar met kleuren, typografie, header-indeling en homepage-opbouw aangepast aan het echte marcherose.com (magenta/roze, vetgedrukte sans headlines, ronde knoppen, logo links in de header). Mapnaam bewust uniek gekozen (curiositeas-marche-rose-preview) zodat uploaden nooit een "thema vervangen"-prompt kan geven en dus nooit een bestaand thema kan overschrijven.
Version: 1.7.02
Text Domain: curiositeas-marche-rose-preview
*/
:root{--pink:#f6c5d2;--accent:#efa0b6;--ink:#252426;--paper:#f8dbe3;--line:rgba(37,36,38,.16);--tab:#efa0b6;--tabtext:#252426;--max:1440px}
*{box-sizing:border-box}body{margin:0;background:var(--pink);color:var(--ink);font-family:Arial,sans-serif;line-height:1.55}a{color:inherit}img{max-width:100%;height:auto}.shell,.content{max-width:var(--max);margin:auto;padding-left:28px;padding-right:28px}
.service{background:var(--accent);overflow:hidden;white-space:nowrap;font-size:11px;font-weight:700;letter-spacing:.05em}.service-track{display:inline-block;padding:8px 0;animation:marq 45s linear infinite}.service span{padding:0 28px}@keyframes marq{to{transform:translateX(-50%)}}
header{background:var(--pink);position:relative;z-index:20}.head{min-height:105px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);gap:20px}.side{display:flex;gap:18px;font-size:12px}.side.right{justify-content:flex-end}.side a{text-decoration:none}.custom-logo{max-height:72px;width:auto}.site-title{font:700 30px Georgia,serif;text-decoration:none}.navwrap{border-bottom:1px solid var(--line)}.nav{display:flex;justify-content:center;gap:28px;min-height:50px;align-items:center;list-style:none;margin:0;padding:0;font-size:11px;font-weight:700}.nav a{text-decoration:none}.nav>li{position:static}.nav>li.menu-item-has-children:hover>.sub-menu,.nav>li.menu-item-has-children:focus-within>.sub-menu{display:grid}.nav>li>.sub-menu{display:none;position:absolute;left:3vw;right:3vw;top:100%;grid-template-columns:repeat(4,1fr);gap:28px;background:var(--paper);padding:32px;list-style:none;border:1px solid var(--line);box-shadow:0 18px 35px #0001}.nav>li>.sub-menu>li>a{font:700 18px Georgia,serif}.nav .sub-menu .sub-menu{display:block!important;position:static!important;list-style:none;padding:10px 0 0;margin:0}.nav .sub-menu .sub-menu a{font:400 12px Arial}.mobile{display:none;background:none;border:0;font-weight:700}.content{padding-top:48px;padding-bottom:80px}.entry-title,.woocommerce-products-header__title{font-family:Georgia,serif;font-weight:700;font-size:var(--h1-size);line-height:1;letter-spacing:-1.5px;margin:0 0 28px;color:var(--heading-color)}

/* loops: equal cards and aligned controls */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;display:flex!important;flex-direction:column;height:100%;position:relative}
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;text-decoration:none}
.woocommerce ul.products li.product a img{width:100%!important;aspect-ratio:1/1;object-fit:contain;background:rgba(255,255,255,.13);margin:0 0 15px!important;transition:transform .25s}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:700 17px/1.35 Georgia,serif!important;padding:0!important;margin:5px 0!important;min-height:2.7em}
.woocommerce ul.products li.product .price{color:var(--price-color)!important;font-size:var(--price-size)!important;margin-top:auto!important;padding-top:5px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--button-bg)!important;color:var(--button-text)!important;border:1px solid var(--button-bg)!important;border-radius:0!important;padding:11px 14px!important;font-size:var(--button-size)!important;text-transform:uppercase;font-weight:700!important}
.woocommerce ul.products li.product>.button{margin-top:12px!important;min-height:42px;display:flex!important;align-items:center;justify-content:center}
.tn-loop-quick{margin-top:12px;transition:.2s ease}.tn-quick-row{display:grid;grid-template-columns:38px 58px 38px 1fr;min-height:42px;box-shadow:0 5px 16px #0001}.tn-quick-row button,.tn-quick-row input{border:0!important;border-right:1px solid var(--line)!important;border-radius:0!important;margin:0!important}.tn-qbtn{background:var(--paper);font-size:18px;cursor:pointer}.tn-quick-row .qty{width:100%;text-align:center;background:var(--paper);font-weight:700}.tn-quick-row .single_add_to_cart_button{height:100%!important;padding:0 8px!important}
@media(hover:hover) and (min-width:981px){.woocommerce ul.products li.product .tn-loop-quick{opacity:0;transform:translateY(5px)}.woocommerce ul.products li.product:hover .tn-loop-quick,.woocommerce ul.products li.product:focus-within .tn-loop-quick{opacity:1;transform:none}.woocommerce ul.products li.product:hover img{transform:scale(1.025)}}

/* single product finesse */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:clamp(38px,6vw,90px);align-items:start}.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important}.single-product .woocommerce div.product div.images{position:sticky;top:25px}.single-product .summary{padding-top:22px;max-width:550px}.woocommerce div.product .product_title{font-family:Georgia,serif;font-weight:700;font-size:var(--h1-size);line-height:.98;letter-spacing:-2px;margin:0 0 15px;color:var(--heading-color)}.woocommerce div.product p.price{color:var(--price-color)!important;font-size:var(--price-size)!important}.woocommerce-product-details__short-description{font-size:var(--body-size);line-height:var(--body-line);color:var(--body-color);margin:22px 0}.product_meta{border-top:1px solid var(--line);padding-top:18px;font-size:var(--meta-size);line-height:1.8;color:var(--meta-color)}.woocommerce div.product form.cart{display:flex;gap:10px;margin:25px 0}.woocommerce .quantity .qty{min-height:44px;border:1px solid var(--ink);background:transparent}

/* tabs -> accordion, retains plugin/WC tab contents */
.woocommerce-tabs{grid-column:1/-1;margin-top:45px;border-top:1px solid var(--line)}.woocommerce-tabs ul.tabs{display:none!important}.woocommerce-tabs .woocommerce-Tabs-panel{display:block!important;margin:0!important;padding:0!important;border-bottom:1px solid var(--line)}
.acc-title{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:var(--tab);color:var(--tabtext);padding:17px 20px;text-align:left;font-weight:700;cursor:pointer}.acc-title b{font-size:20px;font-weight:400;transition:.2s}.acc-title[aria-expanded=true] b{transform:rotate(45deg)}.acc-body{padding:22px 20px 28px;background:rgba(255,255,255,.11)}.acc-body[hidden]{display:none!important}
.related.products,.upsells.products{grid-column:1/-1;margin-top:65px}.related.products>h2,.upsells.products>h2{font:700 30px Georgia,serif}
.woocommerce table.shop_table{border-radius:0!important;background:#ffffff20}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{border:1px solid var(--line);border-radius:0;background:#ffffff55;padding:11px}
footer{background:var(--accent);padding:55px 0 24px}.foot{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:40px}.bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:18px;font-size:10px;display:flex;justify-content:space-between}
@media(max-width:980px){.head{grid-template-columns:auto 1fr auto}.side.left{display:none}.side.right a:not(:last-child){display:none}.mobile{display:block}.navwrap{display:none}.navwrap.open{display:block}.nav{display:block;padding:15px 28px}.nav li{padding:7px 0}.nav>li>.sub-menu{display:block!important;position:static;box-shadow:none;border:0;padding:12px 0}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}.woocommerce div.product{grid-template-columns:1fr}.single-product .woocommerce div.product div.images{position:static}.foot{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.shell,.content{padding-left:16px;padding-right:16px}.custom-logo{max-height:55px}.woocommerce ul.products{gap:24px 12px!important}.foot{grid-template-columns:1fr}}


/* === v1.3 HKLiving-inspired product information hierarchy === */
:root{
  --tag:#ef6a3b;
  --tagtext:#ef6a3b;
}

/* Keep all product information in the right-hand summary column */
.single-product .woocommerce div.product{
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);
}
.single-product .woocommerce div.product .summary{
  display:flex;
  flex-direction:column;
  max-width:560px;
}
.single-product .woocommerce div.product .summary .woocommerce-tabs{
  grid-column:auto;
  margin-top:18px;
  border-top:1px solid var(--line);
  width:100%;
}
.single-product .woocommerce div.product .summary .woocommerce-tabs .woocommerce-Tabs-panel{
  width:100%;
}

/* Product meta: SKU and category stay editorial; tags become outlined pills */
.single-product .product_meta{
  order:20;
  margin-top:8px;
  padding:18px 0 0;
  border-top:1px solid var(--line);
  font-size:11px;
  line-height:1.8;
}
.single-product .product_meta > span{
  display:block;
  margin:5px 0;
}
.single-product .product_meta a{
  text-decoration:none;
  border-bottom:1px solid currentColor;
}
.single-product .product_meta .tagged_as{
  margin-top:16px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.single-product .product_meta .tagged_as > a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:6px 18px;
  border:1px solid var(--tag);
  border-radius:999px;
  color:var(--tagtext);
  background:transparent;
  text-transform:uppercase;
  letter-spacing:.04em;
  font:400 12px Georgia,serif;
  text-decoration:none;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.single-product .product_meta .tagged_as > a:hover,
.single-product .product_meta .tagged_as > a:focus{
  background:var(--tag);
  color:#fff;
  transform:translateY(-1px);
}

/* Accordion is now compact and editorial instead of a large coloured block */
.single-product .summary .woocommerce-tabs{
  order:30;
}
.single-product .summary .woocommerce-tabs .acc-title{
  min-height:52px;
  padding:14px 2px;
  background:transparent;
  color:var(--ink);
  border-bottom:0;
  font-size:12px;
  letter-spacing:.02em;
}
.single-product .summary .woocommerce-tabs .woocommerce-Tabs-panel{
  border-bottom:1px solid var(--line);
}
.single-product .summary .woocommerce-tabs .acc-body{
  padding:4px 2px 24px;
  background:transparent;
  font-size:13px;
  line-height:1.7;
}
.single-product .summary .woocommerce-tabs .acc-body h2:first-child{
  display:none;
}
.single-product .summary .woocommerce-tabs .acc-title::before{
  content:"";
  display:block;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--tab);
  margin-right:10px;
  flex:0 0 auto;
}
.single-product .summary .woocommerce-tabs .acc-title span:first-child{
  margin-right:auto;
}

/* Related/upsell sections remain full width below both columns */
.single-product .woocommerce div.product > .related.products,
.single-product .woocommerce div.product > .upsells.products{
  grid-column:1/-1;
}

@media(max-width:980px){
  .single-product .woocommerce div.product{grid-template-columns:1fr}
  .single-product .woocommerce div.product .summary{max-width:none}
}


/* === v1.3.1 polish + configurable typography === */
:root{
 --body-color:#252426; --body-size:14px; --body-line:1.55;
 --heading-color:#252426; --h1-size:62px; --h2-size:36px; --h3-size:28px;
 --h4-size:22px; --h5-size:17px; --h6-size:14px;
 --link-color:#252426; --link-hover:#ef6a3b;
 --price-color:#252426; --price-size:18px; --meta-color:#4b4648; --meta-size:11px;
 --button-bg:#252426; --button-text:#ffffff; --button-size:10px;
}
body{color:var(--body-color);font-size:var(--body-size);line-height:var(--body-line)}
h1,h2,h3,h4,h5,h6{color:var(--heading-color)}
h1{font-size:var(--h1-size)} h2{font-size:var(--h2-size)} h3{font-size:var(--h3-size)}
h4{font-size:var(--h4-size)} h5{font-size:var(--h5-size)} h6{font-size:var(--h6-size)}
a{color:var(--link-color);transition:color .16s ease} a:hover{color:var(--link-hover)}
.woocommerce div.product p.price,.woocommerce ul.products li.product .price{color:var(--price-color)!important}
.woocommerce div.product p.price{font-size:var(--price-size)}
.product_meta{color:var(--meta-color);font-size:var(--meta-size)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.single_add_to_cart_button{background:var(--button-bg)!important;color:var(--button-text)!important;font-size:var(--button-size)!important}

/* Breadcrumb */
.tn-breadcrumb-wrap{max-width:var(--max);margin:0 auto;padding:22px 28px 0}
.single-product .woocommerce-breadcrumb{margin:0;color:var(--meta-color);font-size:11px;letter-spacing:.01em}
.single-product .woocommerce-breadcrumb a{text-decoration:none;border-bottom:1px solid transparent}
.single-product .woocommerce-breadcrumb a:hover{border-bottom-color:currentColor}

/* Meta hierarchy */
.single-product .product_meta{padding-top:20px}
.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{margin:9px 0}
.single-product .product_meta .sku_wrapper::before,
.single-product .product_meta .posted_in::before,
.single-product .product_meta .tagged_as::before{
 display:inline-block;min-width:82px;margin-right:12px;
 font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)
}
.single-product .product_meta .sku_wrapper::before{content:"SKU"}
.single-product .product_meta .posted_in::before{content:"Categorie"}
.single-product .product_meta .tagged_as::before{content:"Tags"}
.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in{font-size:0}
.single-product .product_meta .sku_wrapper .sku{font-size:var(--meta-size)}
.single-product .product_meta .posted_in a{font-size:12px}

/* Category gets same outlined treatment as tags */
.single-product .product_meta .posted_in{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as>a{
 display:inline-flex;align-items:center;justify-content:center;min-height:34px;
 padding:5px 16px;border:1px solid var(--tag);border-radius:999px;color:var(--tagtext);
 background:transparent;text-transform:uppercase;letter-spacing:.04em;
 font:400 11px Georgia,serif;text-decoration:none!important;
}
.single-product .product_meta .posted_in a:hover,
.single-product .product_meta .tagged_as>a:hover{background:var(--tag);color:#fff}

/* True + / - accordions */
.acc-title b{transform:none!important;font-family:Arial,sans-serif;font-size:18px;font-weight:400}
.acc-title[aria-expanded=true] b{transform:none!important}

/* Clear B2B quantity stepper on product page */
.single-product form.cart{display:flex!important;align-items:stretch;gap:10px}
.single-product form.cart .quantity{
 display:grid;grid-template-columns:36px 54px 36px;min-height:44px;border:1px solid var(--ink)
}
.single-product form.cart .quantity .qty{
 grid-column:2;border:0!important;border-left:1px solid var(--line)!important;border-right:1px solid var(--line)!important;
 width:54px;min-height:42px;text-align:center;background:transparent;-moz-appearance:textfield
}
.single-product form.cart .quantity .qty::-webkit-outer-spin-button,
.single-product form.cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tn-single-qbtn{border:0;background:transparent;color:var(--ink);font-size:18px;cursor:pointer;padding:0}
.tn-single-qbtn:hover{background:rgba(255,255,255,.22)}
.tn-pack-note{display:block;margin-top:7px;font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--meta-color)}

@media(max-width:980px){.tn-breadcrumb-wrap{padding-left:28px;padding-right:28px}}
@media(max-width:560px){
 .tn-breadcrumb-wrap{padding-left:16px;padding-right:16px}
 .single-product .product_meta .sku_wrapper::before,
 .single-product .product_meta .posted_in::before,
 .single-product .product_meta .tagged_as::before{min-width:70px}
}


/* === v1.3.2 Single product UX polish === */

/* A calmer, more coherent right-hand purchase flow */
.single-product .woocommerce div.product{
  grid-template-columns:minmax(0,1.1fr) minmax(390px,.70fr);
  gap:clamp(48px,6.5vw,100px);
}
.single-product .woocommerce div.product .summary{
  padding-top:10px;
  max-width:570px;
}
.single-product .woocommerce div.product .product_title{
  font-size:var(--h1-size);
  line-height:1.01;
  letter-spacing:-1.6px;
  margin-bottom:20px;
}
.single-product .woocommerce div.product p.price{
  margin:0 0 24px;
}
.single-product .woocommerce-product-details__short-description{
  margin:0 0 20px;
  max-width:520px;
}
.single-product .woocommerce-product-details__short-description p:last-child{margin-bottom:0}

/* Backorder / stock notices read as content, not another UI block */
.single-product .summary .stock,
.single-product .summary .available-on-backorder{
  margin:18px 0 20px;
  line-height:1.55;
}

/* Purchase controls: one component; pack size becomes supporting copy */
.single-product form.cart{
  display:flex!important;
  align-items:stretch;
  gap:10px;
  margin:22px 0 8px!important;
  flex-wrap:nowrap;
}
.single-product form.cart .quantity{
  flex:0 0 128px;
  grid-template-columns:38px 52px 38px;
  min-height:44px;
}
.single-product form.cart .quantity .qty{
  width:52px;
}
.single-product form.cart .single_add_to_cart_button{
  flex:1 1 auto;
  min-height:44px;
  white-space:nowrap;
}
.tn-pack-note{
  width:100%;
  margin:0 0 22px;
  padding-left:0;
  font-size:10px;
  font-weight:400;
  letter-spacing:.01em;
  text-transform:none;
}
.tn-pack-note::before{content:"Verkoopeenheid: ";font-weight:700}

/* One quiet divider before product metadata */
.single-product .product_meta{
  order:20;
  margin-top:0;
  padding:20px 0;
  border-top:1px solid var(--line);
  border-bottom:0;
}
.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{
  display:grid;
  grid-template-columns:92px 1fr;
  align-items:center;
  column-gap:12px;
  row-gap:8px;
  margin:8px 0;
}
.single-product .product_meta .sku_wrapper::before,
.single-product .product_meta .posted_in::before,
.single-product .product_meta .tagged_as::before{
  min-width:0;
  margin:0;
  align-self:center;
}
.single-product .product_meta .sku_wrapper{font-size:var(--meta-size)}
.single-product .product_meta .sku_wrapper .sku{grid-column:2}
.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as > a{
  margin:0;
  width:max-content;
  max-width:100%;
}
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{
  display:flex;
  padding-left:104px;
  position:relative;
}
.single-product .product_meta .posted_in::before,
.single-product .product_meta .tagged_as::before{
  position:absolute;
  left:0;
  top:8px;
  width:92px;
}
.single-product .product_meta .tagged_as{
  margin-top:10px;
}
/* WooCommerce's literal "Tags:" / "Category:" text can remain as a text node.
   Hide it visually by zeroing the wrapper text size; pill links retain their own font. */
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{font-size:0}

/* Accordion joins the same vertical axis as all other summary content */
.single-product .summary .woocommerce-tabs{
  margin-top:0;
  border-top:1px solid var(--line);
}
.single-product .summary .woocommerce-tabs .acc-title{
  padding:17px 0;
  min-height:54px;
  letter-spacing:0;
}
.single-product .summary .woocommerce-tabs .acc-title::before{display:none}
.single-product .summary .woocommerce-tabs .acc-body{
  padding:2px 0 24px;
  max-width:100%;
}
.single-product .summary .woocommerce-tabs .woocommerce-Tabs-panel{
  border-bottom:1px solid var(--line);
}
.single-product .summary .woocommerce-tabs .acc-title b{
  margin-left:20px;
}

/* Breadcrumb closer to the product and quieter */
.tn-breadcrumb-wrap{
  padding-top:18px;
  padding-bottom:0;
}
.single-product .woocommerce-breadcrumb{
  opacity:.72;
  font-size:10px;
}
.single-product .content{
  padding-top:30px;
}

/* Prevent button focus styling from looking like a permanent blue outline */
.tn-single-qbtn:focus-visible,
.acc-title:focus-visible{
  outline:1px solid currentColor;
  outline-offset:2px;
}

@media(max-width:980px){
  .single-product .woocommerce div.product{gap:32px}
  .single-product .woocommerce div.product .summary{padding-top:0}
}
@media(max-width:560px){
  .single-product form.cart{flex-wrap:wrap}
  .single-product form.cart .single_add_to_cart_button{width:100%}
  .single-product .product_meta .posted_in,
  .single-product .product_meta .tagged_as{padding-left:82px}
  .single-product .product_meta .posted_in::before,
  .single-product .product_meta .tagged_as::before{width:70px}
}


/* === v1.3.3 Customizer authority layer ===
   Component styling may define layout, weight and spacing, but user-editable
   colours/sizes are resolved here from Customizer CSS variables. */
html body{
  background:var(--pink);
  color:var(--body-color);
  font-size:var(--body-size);
  line-height:var(--body-line);
}
header{background:var(--pink)}
h1,h2,h3,h4,h5,h6,
.entry-title,.woocommerce-products-header__title,
.single-product .woocommerce div.product .product_title{
  color:var(--heading-color)!important;
}
h1,.entry-title,.woocommerce-products-header__title,
.single-product .woocommerce div.product .product_title{font-size:var(--h1-size)!important}
h2{font-size:var(--h2-size)!important}
h3{font-size:var(--h3-size)!important}
h4{font-size:var(--h4-size)!important}
h5{font-size:var(--h5-size)!important}
h6{font-size:var(--h6-size)!important}

body a{color:var(--link-color)}
body a:hover{color:var(--link-hover)}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price{
  color:var(--price-color)!important;
  font-size:var(--price-size)!important;
}

.product_meta,
.single-product .product_meta,
.single-product .woocommerce-breadcrumb{
  color:var(--meta-color)!important;
  font-size:var(--meta-size)!important;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.single_add_to_cart_button{
  background:var(--button-bg)!important;
  border-color:var(--button-bg)!important;
  color:var(--button-text)!important;
  font-size:var(--button-size)!important;
}

/* Category/tag colours always come from Customizer. */
.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as > a{
  border-color:var(--tag)!important;
  color:var(--tagtext)!important;
}
.single-product .product_meta .posted_in a:hover,
.single-product .product_meta .tagged_as > a:hover{
  background:var(--tag)!important;
  border-color:var(--tag)!important;
  color:#fff!important;
}

/* Accordion colour controls remain authoritative even after component polish. */
.single-product .summary .woocommerce-tabs .acc-title{
  color:var(--tabtext)!important;
}
.single-product .summary .woocommerce-tabs .acc-title b{
  color:var(--tabtext)!important;
}

/* WooCommerce outputs "SKU: " as a text node inside .sku_wrapper.
   Keep that source text hidden; our own left-hand label remains visible. */
.single-product .product_meta .sku_wrapper{
  font-size:0!important;
}
.single-product .product_meta .sku_wrapper .sku{
  font-size:var(--meta-size)!important;
  color:var(--meta-color)!important;
}


/* === v1.3.4 Purchase controls + meta alignment polish === */

/* SKU uses exactly the same label/value axis as category and tags. */
.single-product .product_meta .sku_wrapper{
  display:grid!important;
  grid-template-columns:92px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:12px!important;
  padding-left:0!important;
  margin:8px 0!important;
}
.single-product .product_meta .sku_wrapper::before{
  grid-column:1!important;
  position:static!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}
.single-product .product_meta .sku_wrapper .sku{
  grid-column:2!important;
  display:block!important;
  margin:0!important;
  line-height:1.4!important;
}

/* Quantity is self-explanatory: remove the separate pack-size line. */
.tn-pack-note{display:none!important}

/* Strong, unmistakable minus / plus controls. */
.single-product form.cart .quantity{
  border:1px solid var(--ink)!important;
  overflow:hidden;
}
.single-product form.cart .quantity .tn-single-qbtn{
  background:var(--ink)!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  font-size:19px!important;
  font-weight:400!important;
  line-height:1!important;
  min-width:38px;
  cursor:pointer;
  transition:background .15s ease,color .15s ease;
}
.single-product form.cart .quantity .tn-single-qbtn:hover,
.single-product form.cart .quantity .tn-single-qbtn:focus{
  background:#fff!important;
  color:var(--ink)!important;
}
.single-product form.cart .quantity .qty{
  background:transparent!important;
  color:var(--body-color)!important;
  border-top:0!important;
  border-bottom:0!important;
  border-left:1px solid var(--ink)!important;
  border-right:1px solid var(--ink)!important;
  font-weight:600;
}

/* Keep the purchase row visually compact now the pack note is gone. */
.single-product form.cart{
  margin-bottom:22px!important;
}


/* === v1.3.5 Fast B2B ordering + clean product meta === */

/* SKU: use flex rather than CSS grid.
   WooCommerce includes a literal "SKU:" text node; font-size:0 makes that node
   take no visual space, while ::before and .sku form one clean horizontal row. */
.single-product .product_meta .sku_wrapper{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:0!important;
  margin:8px 0!important;
  font-size:0!important;
  min-height:34px;
}
.single-product .product_meta .sku_wrapper::before{
  content:"SKU"!important;
  position:static!important;
  display:block!important;
  flex:0 0 92px!important;
  width:92px!important;
  min-width:92px!important;
  margin:0!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:var(--ink)!important;
}
.single-product .product_meta .sku_wrapper .sku{
  display:block!important;
  flex:1 1 auto!important;
  margin:0!important;
  padding:0!important;
  font-size:var(--meta-size)!important;
  line-height:1.4!important;
  color:var(--meta-color)!important;
}

/* Related/archive product cards: one commercial rhythm from image to order action. */
.woocommerce ul.products{
  align-items:stretch!important;
}
.woocommerce ul.products li.product{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
.woocommerce 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{
  min-height:2.7em!important;
}
.woocommerce ul.products li.product .price{
  margin-top:auto!important;
  padding-top:18px!important;
  padding-bottom:14px!important;
}

/* Simple products get the quick-order bar, so hide WooCommerce's duplicate
   standard add-to-cart button underneath. Variable/grouped/external products
   keep their normal "read more / choose options" button. */
.woocommerce ul.products li.product .product_type_simple.add_to_cart_button{
  display:none!important;
}

/* Quick order is always visible: no hover-only controls.
   This is B2B, so ordering should require no discovery step. */
.woocommerce ul.products li.product .tn-loop-quick{
  opacity:1!important;
  transform:none!important;
  margin-top:auto!important;
  width:100%!important;
}
.woocommerce ul.products li.product .tn-loop-quick form{
  margin:0!important;
  width:100%!important;
}
.woocommerce ul.products li.product .tn-quick-row{
  display:grid!important;
  grid-template-columns:42px 58px 42px minmax(105px,1fr)!important;
  min-height:46px!important;
  width:100%!important;
  box-shadow:none!important;
  border:1px solid var(--ink)!important;
  background:transparent!important;
}
.woocommerce ul.products li.product .tn-quick-row .tn-qbtn{
  background:var(--ink)!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  font-size:19px!important;
  line-height:1!important;
  cursor:pointer!important;
  transition:background .15s ease,color .15s ease!important;
}
.woocommerce ul.products li.product .tn-quick-row .tn-qbtn:hover,
.woocommerce ul.products li.product .tn-quick-row .tn-qbtn:focus{
  background:#fff!important;
  color:var(--ink)!important;
}
.woocommerce ul.products li.product .tn-quick-row .qty{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  padding:0 4px!important;
  margin:0!important;
  text-align:center!important;
  background:rgba(255,255,255,.16)!important;
  color:var(--body-color)!important;
  border:0!important;
  border-left:1px solid var(--ink)!important;
  border-right:1px solid var(--ink)!important;
  border-radius:0!important;
  font-weight:700!important;
  -moz-appearance:textfield;
}
.woocommerce ul.products li.product .tn-quick-row .qty::-webkit-outer-spin-button,
.woocommerce ul.products li.product .tn-quick-row .qty::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}
.woocommerce ul.products li.product .tn-quick-row .single_add_to_cart_button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0 10px!important;
  background:var(--button-bg)!important;
  color:var(--button-text)!important;
  border:0!important;
  border-radius:0!important;
  white-space:nowrap!important;
  font-size:var(--button-size)!important;
}

/* Non-simple product CTA still aligns to the same bottom edge. */
.woocommerce ul.products li.product > a.button:not(.product_type_simple){
  width:100%!important;
  min-height:46px!important;
  margin-top:auto!important;
}

/* Related products specifically: slightly calmer spacing and no giant dead zones. */
.single-product .related.products ul.products li.product .price,
.single-product .upsells.products ul.products li.product .price{
  padding-top:14px!important;
  padding-bottom:14px!important;
}

/* Tablet/mobile: keep fast order controls usable without squeezing the CTA. */
@media(max-width:760px){
  .woocommerce ul.products li.product .tn-quick-row{
    grid-template-columns:40px 52px 40px minmax(92px,1fr)!important;
  }
}
@media(max-width:430px){
  .woocommerce ul.products li.product .tn-quick-row{
    grid-template-columns:38px 48px 38px minmax(86px,1fr)!important;
  }
}


/* === v1.3.6 WooCommerce archive: compact, fast, commercial === */
.tn-archive-breadcrumb{
  width:min(1400px,calc(100% - 64px));
  margin:28px auto 0;
}
.tn-archive-breadcrumb .woocommerce-breadcrumb{
  margin:0!important;
  padding:0!important;
  font-size:11px!important;
  line-height:1.4!important;
  opacity:.65;
}
.tn-archive-breadcrumb .tn-bc-sep{padding:0 6px}

/* Header/result/sorting become one calmer retail header. */
.woocommerce-products-header,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{
  margin-bottom:24px;
}
.woocommerce .woocommerce-ordering select{
  min-height:38px;
  padding:7px 34px 7px 12px;
  background:transparent;
  border:1px solid rgba(0,0,0,.35);
  border-radius:0;
  font:inherit;
}

/* Product cards: no artificial vertical deserts. */
.woocommerce ul.products li.product{
  justify-content:flex-start!important;
}
.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{
  flex:0 0 auto!important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:0!important;
  margin:14px 0 8px!important;
}
.woocommerce ul.products li.product .price{
  margin:0!important;
  padding:0 0 14px!important;
}
.woocommerce ul.products li.product .stock,
.woocommerce ul.products li.product .tn-preorder-note,
.woocommerce ul.products li.product p:not(.price){
  margin:0 0 10px!important;
}

/* New archive order form is the single CTA. */
.woocommerce ul.products li.product .tn-archive-fast-order{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  margin-top:auto!important;
}
.tn-archive-order-row{
  display:grid!important;
  grid-template-columns:42px 58px 42px minmax(112px,1fr)!important;
  width:100%!important;
  min-height:46px!important;
  border:1px solid var(--ink)!important;
  background:transparent!important;
}
.tn-archive-qbtn{
  border:0!important;
  border-radius:0!important;
  margin:0!important;
  padding:0!important;
  background:var(--ink)!important;
  color:#fff!important;
  font-size:20px!important;
  line-height:1!important;
  cursor:pointer!important;
}
.tn-archive-qbtn:hover,
.tn-archive-qbtn:focus{
  background:#fff!important;
  color:var(--ink)!important;
}
.tn-archive-order-row .qty{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  padding:0!important;
  text-align:center!important;
  border:0!important;
  border-left:1px solid var(--ink)!important;
  border-right:1px solid var(--ink)!important;
  border-radius:0!important;
  background:rgba(255,255,255,.18)!important;
  color:var(--body-color)!important;
  font-weight:700!important;
  -moz-appearance:textfield;
}
.tn-archive-order-row .qty::-webkit-outer-spin-button,
.tn-archive-order-row .qty::-webkit-inner-spin-button{
  -webkit-appearance:none;margin:0;
}
.tn-archive-add{
  width:100%!important;
  height:100%!important;
  min-height:44px!important;
  margin:0!important;
  padding:0 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  white-space:nowrap!important;
}

/* Disable the older experimental quick-order UI so there can never be two. */
.woocommerce ul.products li.product .tn-loop-quick{display:none!important}

/* Keep image area visually consistent while respecting transparent PNG/JPEG artwork. */
.woocommerce ul.products li.product a img{
  width:100%!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  margin-bottom:0!important;
}

/* Cards align by content groups rather than pushing price miles downward. */
.woocommerce ul.products{
  row-gap:46px!important;
}
.woocommerce ul.products li.product{
  gap:0!important;
}

/* Sale badge: cleaner and less dominant. */
.woocommerce span.onsale{
  min-width:auto!important;
  min-height:auto!important;
  padding:8px 11px!important;
  line-height:1!important;
  border-radius:999px!important;
}

@media(max-width:768px){
  .tn-archive-breadcrumb{width:calc(100% - 32px);margin-top:18px}
  .tn-archive-order-row{
    grid-template-columns:40px 52px 40px minmax(100px,1fr)!important;
  }
  .woocommerce ul.products{row-gap:34px!important}
}


/* v1.3.9 repair-only: accordion remains line-based; Customizer accent controls its line,
   not a filled panel. */
.single-product .woocommerce-tabs,
.single-product .woocommerce-tabs .panel,
.single-product .tn-product-accordion,
.single-product .tn-product-accordion .tn-acc-head,
.single-product .tn-product-accordion .tn-acc-panel{
  background:transparent!important;
}

/* === v1.4.0 CATEGORY / ARCHIVE COMMERCE UX === */

/* Hide legacy breadcrumb wrappers; v1.4.0 renders one canonical trail. */
.tn-breadcrumb-wrap,.tn-archive-breadcrumb{display:none!important}
.tn-breadcrumb-v140{
  width:min(1400px,calc(100% - 64px));
  margin:28px auto 0;
  color:var(--meta-color);
}
.tn-breadcrumb-v140 nav{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  font-family:Arial,sans-serif;font-size:12px;line-height:1.3;
}
.tn-breadcrumb-v140 a,.tn-breadcrumb-v140 .tn-bc-current{
  color:inherit;text-decoration:none;font-family:Arial,sans-serif;
}
.tn-breadcrumb-v140 a:hover{color:var(--link-hover)}
.tn-bc-arrow{font-size:17px;line-height:1;font-weight:400;opacity:.75}
.tn-home-icon{font-size:17px;line-height:1;font-family:Arial,sans-serif;font-weight:400}

/* Category hero: centered editorial introduction using WooCommerce's native category description. */
.tax-product_cat .woocommerce-products-header,
.tax-product_tag .woocommerce-products-header,
.post-type-archive-product .woocommerce-products-header{
  text-align:center;
  max-width:820px;
  margin:42px auto 54px!important;
}
.tax-product_cat .woocommerce-products-header__title,
.tax-product_tag .woocommerce-products-header__title,
.post-type-archive-product .woocommerce-products-header__title{
  margin:0 auto 20px!important;
  text-align:center;
  font-family:Georgia,serif;
  font-size:clamp(42px,5vw,var(--h1-size))!important;
  line-height:.98!important;
  letter-spacing:-1.5px;
  color:var(--heading-color)!important;
}
.woocommerce-products-header .term-description{
  max-width:720px;margin:0 auto!important;
  text-align:center;font-family:Arial,sans-serif;
  font-size:var(--body-size);line-height:var(--body-line);color:var(--body-color);
}
.woocommerce-products-header .term-description p{margin:0}

/* Result count and sort sit on one quiet baseline above the grid. */
.woocommerce .woocommerce-result-count{float:left!important;margin:0 0 24px!important;font-size:12px;color:var(--meta-color)}
.woocommerce .woocommerce-ordering{float:right!important;margin:0 0 24px!important}
.woocommerce .woocommerce-ordering select{
  min-width:190px;min-height:40px;padding:8px 36px 8px 12px;
  font-family:Arial,sans-serif;font-size:12px;color:var(--body-color);
  background:transparent;border:1px solid var(--line);border-radius:0;
}
.woocommerce .products{clear:both}

/* Product grid: consistent image/title/info/order zones for fast B2B scanning. */
.woocommerce ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  column-gap:22px!important;row-gap:54px!important;
}
.woocommerce ul.products li.product{
  display:grid!important;
  grid-template-rows:auto minmax(3.1em,auto) minmax(2.7em,auto) auto;
  align-content:start;height:100%;gap:0!important;
}
.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{
  display:contents!important;
}
.woocommerce ul.products li.product a img{
  grid-row:1;width:100%!important;aspect-ratio:1/1!important;object-fit:contain!important;
  margin:0 0 16px!important;background:rgba(255,255,255,.13);
  transition:transform .22s ease,opacity .22s ease;
}
@media(hover:hover){.woocommerce ul.products li.product:hover a img{transform:scale(1.018)}}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  grid-row:2;min-height:0!important;margin:0 0 10px!important;padding:0!important;
  font:700 17px/1.28 Georgia,serif!important;color:var(--heading-color)!important;
}
.woocommerce ul.products li.product .price{
  grid-row:3;align-self:start;margin:0!important;padding:0 0 14px!important;
}
.woocommerce ul.products li.product .stock,
.woocommerce ul.products li.product .tn-preorder-note,
.woocommerce ul.products li.product p:not(.price){
  font-size:12px;line-height:1.4;margin:0 0 9px!important;
}
.woocommerce ul.products li.product .tn-archive-fast-order{
  grid-row:4;align-self:end;width:100%!important;margin:0!important;
}
.tn-archive-order-row{
  display:grid!important;grid-template-columns:46px 62px 46px minmax(118px,1fr)!important;
  min-height:48px!important;width:100%!important;border:0!important;background:transparent!important;
}
.tn-archive-qbtn{
  background:var(--button-bg)!important;color:var(--button-text)!important;
  border:1px solid var(--button-bg)!important;font-family:Arial,sans-serif!important;
  font-size:20px!important;font-weight:400!important;
}
.tn-archive-qbtn:hover,.tn-archive-qbtn:focus{
  background:var(--button-text)!important;color:var(--button-bg)!important;
}
.tn-archive-order-row .qty{
  height:48px!important;background:transparent!important;color:var(--body-color)!important;
  border:1px solid var(--button-bg)!important;border-left:0!important;border-right:0!important;
  font-family:Arial,sans-serif!important;font-size:13px!important;font-weight:700!important;
}
.tn-archive-add{
  min-height:48px!important;padding:0 12px!important;
  font-family:Arial,sans-serif!important;font-size:var(--button-size)!important;
  font-weight:700!important;letter-spacing:.02em!important;text-transform:uppercase!important;
}

/* Product meta pills: same typographic language as commerce buttons. */
.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as > a{
  font-family:Arial,sans-serif!important;
  font-size:10px!important;font-weight:700!important;
  line-height:1!important;letter-spacing:.045em!important;text-transform:uppercase!important;
}

/* Minimal pagination inspired by the supplied reference. */
.woocommerce nav.woocommerce-pagination{clear:both;margin:52px 0 10px!important;text-align:center!important}
.woocommerce nav.woocommerce-pagination ul{
  display:inline-flex!important;align-items:center!important;gap:24px!important;
  border:0!important;margin:0!important;padding:0!important;
}
.woocommerce nav.woocommerce-pagination ul li{float:none!important;border:0!important;overflow:visible!important}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:0!important;margin:0!important;padding:4px 1px 7px!important;
  border:0!important;background:transparent!important;color:var(--body-color)!important;
  font-family:Arial,sans-serif!important;font-size:16px!important;font-weight:400!important;line-height:1!important;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:transparent!important;border-bottom:1px solid currentColor!important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover{background:transparent!important;color:var(--link-hover)!important}
.woocommerce nav.woocommerce-pagination .prev,.woocommerce nav.woocommerce-pagination .next{font-size:24px!important;padding-bottom:4px!important}

@media(max-width:980px){
  .tn-breadcrumb-v140{width:calc(100% - 40px);margin-top:22px}
  .tax-product_cat .woocommerce-products-header,.tax-product_tag .woocommerce-products-header,.post-type-archive-product .woocommerce-products-header{margin:34px auto 42px!important;padding:0 20px}
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .tn-breadcrumb-v140{width:calc(100% - 32px);margin-top:18px}
  .tn-breadcrumb-v140 nav{gap:9px;font-size:10px;white-space:nowrap;overflow:hidden}
  .tn-breadcrumb-v140 .tn-bc-current{overflow:hidden;text-overflow:ellipsis}
  .tax-product_cat .woocommerce-products-header__title,.tax-product_tag .woocommerce-products-header__title,.post-type-archive-product .woocommerce-products-header__title{font-size:38px!important}
  .woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none!important;width:100%;text-align:left}
  .woocommerce .woocommerce-ordering select{width:100%}
  .woocommerce ul.products{column-gap:12px!important;row-gap:36px!important}
  .woocommerce ul.products li.product{grid-template-rows:auto minmax(3.2em,auto) minmax(2.7em,auto) auto}
  .tn-archive-order-row{grid-template-columns:40px 50px 40px minmax(82px,1fr)!important;min-height:44px!important}
  .tn-archive-order-row .qty,.tn-archive-add{height:44px!important;min-height:44px!important}
  .tn-archive-add{padding:0 6px!important;font-size:9px!important}
  .woocommerce nav.woocommerce-pagination ul{gap:18px!important}
}


/* === v1.4.1 ARCHIVE HEADER + CARD POLISH === */
.tax-product_cat .woocommerce-products-header,.tax-product_tag .woocommerce-products-header,.post-type-archive-product .woocommerce-products-header{display:none!important}
.tn-archive-intro-v141{width:min(1400px,calc(100% - 64px));margin:28px auto 44px}
.tn-archive-intro-v141 .tn-breadcrumb-v140{width:100%;margin:0 0 54px}
.tn-archive-copy-v141{max-width:820px;margin:0 auto;text-align:center}
.tn-archive-title-v141{margin:0 auto 20px!important;text-align:center!important;font-family:Georgia,serif;font-size:clamp(42px,5vw,var(--h1-size))!important;line-height:.98!important;letter-spacing:-1.5px;color:var(--heading-color)!important}
.tn-archive-description-v141{max-width:720px;margin:0 auto;text-align:center;font-family:Arial,sans-serif;font-size:var(--body-size);line-height:var(--body-line);color:var(--body-color)}
.tn-archive-description-v141 p{margin:0 0 10px}.tn-archive-description-v141 p:last-child{margin-bottom:0}
.woocommerce ul.products li.product{grid-template-rows:auto minmax(3.1em,auto) auto auto 48px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{grid-row:2!important}
.woocommerce ul.products li.product .price{grid-row:3!important;padding-bottom:10px!important}
.woocommerce ul.products li.product .stock,.woocommerce ul.products li.product .tn-preorder-note,.woocommerce ul.products li.product p:not(.price){grid-row:4!important;align-self:start}
.woocommerce ul.products li.product .tn-archive-fast-order{grid-row:5!important;align-self:end!important}
.tn-archive-add{border:1px solid var(--button-bg)!important;background:var(--button-bg)!important;color:var(--button-text)!important;transition:background-color .16s ease,color .16s ease,border-color .16s ease!important}
@media(hover:hover) and (pointer:fine){.tn-archive-add:hover,.tn-archive-add:focus{background:transparent!important;color:var(--button-bg)!important;border-color:var(--button-bg)!important}}
@media(max-width:980px){.tn-archive-intro-v141{width:calc(100% - 40px);margin-top:22px}.tn-archive-intro-v141 .tn-breadcrumb-v140{margin-bottom:40px}}
@media(max-width:560px){.tn-archive-intro-v141{width:calc(100% - 32px);margin-top:18px;margin-bottom:32px}.tn-archive-intro-v141 .tn-breadcrumb-v140{margin-bottom:30px}.tn-archive-title-v141{font-size:38px!important}.woocommerce ul.products li.product{grid-template-rows:auto minmax(3.2em,auto) auto auto 44px!important}}


/* === v1.4.2 NAVIGATION + MINI CART === */

/* Dropdowns: remove the hover gap and animate rather than hard display:none/block. */
.main-navigation .menu > li,
.site-header nav .menu > li,
nav .menu > li { position:relative; }

.main-navigation .sub-menu,
.site-header nav .sub-menu,
nav .menu .sub-menu{
  display:block!important;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;
  position:absolute;
  top:calc(100% - 1px);
  left:0;
  z-index:9999;
  min-width:230px;
  padding:14px 0;
  margin:0!important;
  background:var(--site-bg);
  border:1px solid rgba(0,0,0,.12);
  box-shadow:0 14px 30px rgba(0,0,0,.08);
}
.main-navigation .sub-menu:before,
.site-header nav .sub-menu:before,
nav .menu .sub-menu:before{
  content:"";position:absolute;left:0;right:0;top:-10px;height:10px;
}
.main-navigation li:hover > .sub-menu,
.main-navigation li:focus-within > .sub-menu,
.site-header nav li:hover > .sub-menu,
.site-header nav li:focus-within > .sub-menu,
nav .menu li:hover > .sub-menu,
nav .menu li:focus-within > .sub-menu,
.tn-submenu-open-v142 > .sub-menu{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
  transition-delay:0s;
}
.main-navigation .sub-menu a,
.site-header nav .sub-menu a,
nav .menu .sub-menu a{
  display:block;
  padding:10px 20px!important;
  white-space:nowrap;
  font-family:Arial,sans-serif!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:.035em;
  text-transform:uppercase;
  background:transparent!important;
}
.main-navigation .sub-menu a:hover,
.site-header nav .sub-menu a:hover,
nav .menu .sub-menu a:hover{
  text-decoration:underline;
  text-underline-offset:4px;
}

/* A small indicator beside parent menu links. */
.tn-has-submenu-v142 > a{padding-right:21px!important}
.tn-submenu-toggle-v142{
  position:absolute;right:3px;top:50%;transform:translateY(-50%);
  border:0;background:transparent;color:currentColor;padding:4px;
  font:inherit;line-height:1;cursor:pointer;
}
.tn-submenu-toggle-v142 span{display:block;transition:transform .16s ease}
.tn-submenu-open-v142 > .tn-submenu-toggle-v142 span{transform:rotate(180deg)}

/* Cart label/count */
.menu-item:has(> .tn-cart-trigger-v142){position:relative}
.tn-cart-trigger-v142{display:flex!important;align-items:center;gap:5px}
.tn-cart-count-v142{font-variant-numeric:tabular-nums}

/* Mini cart: refined, compact B2B dropdown. */
.tn-mini-cart-v142{
  position:absolute;right:0;left:auto;top:calc(100% + 12px);z-index:10000;
  width:min(390px,calc(100vw - 32px));
  padding:0;
  background:var(--site-bg);
  border:1px solid rgba(0,0,0,.15);
  box-shadow:0 18px 42px rgba(0,0,0,.12);
  visibility:hidden;opacity:0;pointer-events:none;transform:translateY(8px);
  transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;
  color:var(--body-color);
}
.tn-mini-cart-v142:before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.menu-item:hover > .tn-mini-cart-v142,
.menu-item:focus-within > .tn-mini-cart-v142,
.tn-cart-open-v142 > .tn-mini-cart-v142{
  visibility:visible;opacity:1;pointer-events:auto;transform:none;transition-delay:0s
}
.tn-mini-cart-head-v142{
  display:flex;justify-content:space-between;align-items:center;
  padding:18px 20px;border-bottom:1px solid rgba(0,0,0,.12);
  font-family:Arial,sans-serif;font-size:11px;letter-spacing:.05em
}
.tn-mini-cart-items-v142{max-height:390px;overflow:auto}
.tn-mini-cart-item-v142{
  display:grid;grid-template-columns:64px 1fr 22px;gap:13px;align-items:center;
  padding:14px 20px;border-bottom:1px solid rgba(0,0,0,.09)
}
.tn-mini-cart-thumb-v142 img{display:block;width:64px!important;height:64px!important;object-fit:contain;margin:0!important}
.tn-mini-cart-copy-v142{text-align:left;min-width:0}
.tn-mini-cart-name-v142 a{
  padding:0!important;text-transform:none!important;white-space:normal!important;
  font-family:Arial,sans-serif!important;font-size:12px!important;line-height:1.35!important;font-weight:700!important;
  text-decoration:none!important
}
.tn-mini-cart-meta-v142{margin-top:5px;font-family:Arial,sans-serif;font-size:12px}
.tn-mini-cart-remove-v142{
  display:flex!important;align-items:center;justify-content:center;
  width:22px!important;height:22px!important;padding:0!important;
  border:0!important;background:transparent!important;color:var(--body-color)!important;
  font-size:18px!important;text-decoration:none!important
}
.tn-mini-cart-empty-v142{padding:24px 20px;margin:0;font-family:Arial,sans-serif;font-size:13px}
.tn-mini-cart-foot-v142{padding:17px 20px 20px}
.tn-mini-cart-total-v142{
  display:flex;justify-content:space-between;gap:20px;margin-bottom:15px;
  font-family:Arial,sans-serif;font-size:12px
}
.tn-mini-cart-actions-v142{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tn-mini-cart-button-v142{
  display:flex!important;align-items:center;justify-content:center;
  min-height:42px;padding:10px 12px!important;
  border:1px solid var(--button-bg)!important;
  font-family:Arial,sans-serif!important;font-size:10px!important;font-weight:700!important;
  line-height:1.15!important;letter-spacing:.03em;text-transform:uppercase!important;text-decoration:none!important
}
.tn-view-cart-v142{background:transparent!important;color:var(--button-bg)!important}
.tn-checkout-v142{background:var(--button-bg)!important;color:var(--button-text)!important}
@media(hover:hover) and (pointer:fine){
  .tn-view-cart-v142:hover{background:var(--button-bg)!important;color:var(--button-text)!important}
  .tn-checkout-v142:hover{background:transparent!important;color:var(--button-bg)!important}
}

/* Quick-order feedback */
.tn-archive-add.tn-added-v142{background:transparent!important;color:var(--button-bg)!important}

/* Mobile: submenu and cart are click/tap accordions, not hover fly-outs. */
@media(max-width:900px){
  .tn-has-submenu-v142 > a{padding-right:46px!important}
  .tn-submenu-toggle-v142{right:12px;width:34px;height:34px}
  .main-navigation .sub-menu,
  .site-header nav .sub-menu,
  nav .menu .sub-menu{
    position:static!important;min-width:0!important;width:100%!important;
    max-height:0;overflow:hidden;padding:0!important;border:0!important;box-shadow:none!important;
    transform:none!important;opacity:1;visibility:visible;pointer-events:auto;
    transition:max-height .22s ease!important;
  }
  .tn-submenu-open-v142 > .sub-menu{max-height:800px;padding:6px 0 10px!important}
  .tn-mini-cart-v142{
    position:fixed;left:16px;right:16px;top:auto;bottom:16px;width:auto;
    max-height:calc(100vh - 32px);overflow:auto;transform:translateY(12px)
  }
}





/* === v1.4.6 NAVIGATION FIX ===
   IMPORTANT: actual header class is .navwrap (lowercase), not .navWrap.
   This replaces the original full-width mega-menu behavior on desktop. */
@media (min-width:981px){
  header .navwrap,
  header .navwrap > .shell{
    overflow:visible!important;
  }

  header .navwrap ul#menu-main.nav{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:var(--tn-menu-gap,28px)!important;
    overflow:visible!important;
  }

  header .navwrap ul#menu-main.nav > li{
    position:relative!important;
    margin:0!important;
    padding:0!important;
  }

  header .navwrap ul#menu-main.nav > li > a{
    display:block!important;
    padding:18px 0!important;
    color:var(--tn-menu-color,#222)!important;
    font-family:Arial,sans-serif!important;
    font-size:var(--tn-menu-size,11px)!important;
    font-weight:var(--tn-menu-weight,700)!important;
    letter-spacing:var(--tn-menu-spacing,0px)!important;
    text-transform:var(--tn-menu-transform,none)!important;
    text-decoration:none!important;
    white-space:nowrap!important;
  }

  header .navwrap ul#menu-main.nav > li:hover > a,
  header .navwrap ul#menu-main.nav > li:focus-within > a{color:var(--tn-menu-hover,#e98fa9)!important}
  header .navwrap ul#menu-main.nav > li.current-menu-item > a,
  header .navwrap ul#menu-main.nav > li.current-menu-parent > a,
  header .navwrap ul#menu-main.nav > li.current-menu-ancestor > a{color:var(--tn-menu-active,#e98fa9)!important}

  /* First-level dropdown: attached directly to parent, no dead hover zone. */
  header .navwrap ul#menu-main.nav > li.menu-item-has-children > ul.sub-menu{
    display:block!important;
    position:absolute!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    bottom:auto!important;
    width:var(--tn-sub-width,360px)!important;
    min-width:var(--tn-sub-width,360px)!important;
    max-width:calc(100vw - 32px)!important;
    height:auto!important;
    margin:0!important;
    padding:8px 0!important;
    list-style:none!important;
    grid-template-columns:none!important;
    gap:0!important;
    background:var(--tn-sub-bg,#f8dfe7)!important;
    border:1px solid var(--tn-sub-border,#e5c9d2)!important;
    box-shadow:var(--tn-sub-shadow,0 16px 36px rgba(0,0,0,.10))!important;
    transform:translate(-50%,6px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:100000!important;
    transition:opacity .14s ease,transform .14s ease,visibility 0s linear .14s!important;
  }

  header .navwrap ul#menu-main.nav > li.menu-item-has-children:hover > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.menu-item-has-children:focus-within > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.menu-item-has-children.tn-submenu-open-v142 > ul.sub-menu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0)!important;
    transition-delay:0s!important;
  }

  header .navwrap ul#menu-main.nav > li > ul.sub-menu > li{
    display:block!important;
    float:none!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  header .navwrap ul#menu-main.nav > li > ul.sub-menu > li > a{
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    padding:11px 18px!important;
    margin:0!important;
    background:transparent!important;
    color:var(--tn-sub-color,#222)!important;
    font-family:Arial,sans-serif!important;
    font-size:var(--tn-sub-size,11px)!important;
    font-weight:700!important;
    line-height:1.3!important;
    letter-spacing:.045em!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    white-space:normal!important;
  }
  header .navwrap ul#menu-main.nav > li > ul.sub-menu > li > a:hover,
  header .navwrap ul#menu-main.nav > li > ul.sub-menu > li > a:focus{
    background:var(--tn-sub-hover-bg,#fff)!important;
    color:var(--tn-sub-hover-color,#222)!important;
  }

  /* Nested submenu remains readable inside the compact dropdown. */
  header .navwrap ul#menu-main.nav > li > ul.sub-menu ul.sub-menu{
    display:block!important;
    position:static!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0 0 6px 12px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }

  /* Desktop uses hover/focus only. */
  header .navwrap .tn-submenu-toggle-v142{display:none!important}
  header .navwrap .tn-has-submenu-v142 > a{padding-right:0!important}
}


/* === v1.4.7 MULTI-COLUMN DROPDOWNS + OPAQUE MINI CART === */
/* The cart must be a real surface: never inherit a transparent site background. */
.tn-mini-cart-v142{
  background:var(--tn-sub-bg,#f8dfe7)!important;
  opacity:0;
  isolation:isolate;
}
.menu-item:hover > .tn-mini-cart-v142,
.menu-item:focus-within > .tn-mini-cart-v142,
.tn-cart-open-v142 > .tn-mini-cart-v142{opacity:1!important}
.tn-mini-cart-head-v142,
.tn-mini-cart-items-v142,
.tn-mini-cart-foot-v142,
.tn-mini-cart-item-v142{background:var(--tn-sub-bg,#f8dfe7)!important}

@media (min-width:981px){
  /* One-column stays compact. */
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-1 > ul.sub-menu{
    width:var(--tn-sub-width,360px)!important;
    min-width:var(--tn-sub-width,360px)!important;
  }

  /* Larger dropdowns become clean grids. Width scales with the chosen column count. */
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2 > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3 > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4 > ul.sub-menu{
    display:grid!important;
    align-items:start!important;
    column-gap:10px!important;
    row-gap:0!important;
    padding:12px!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2 > ul.sub-menu{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:min(calc(var(--tn-sub-width,360px) * 1.65),calc(100vw - 40px))!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3 > ul.sub-menu{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:min(calc(var(--tn-sub-width,360px) * 2.25),calc(100vw - 40px))!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4 > ul.sub-menu{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:min(calc(var(--tn-sub-width,360px) * 2.8),calc(100vw - 40px))!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2 > ul.sub-menu > li,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3 > ul.sub-menu > li,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4 > ul.sub-menu > li{
    min-width:0!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2 > ul.sub-menu > li > a,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3 > ul.sub-menu > li > a,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4 > ul.sub-menu > li > a{
    padding:11px 14px!important;
  }
}


/* === v1.4.8 HEADER STACKING + SOLID DROPDOWN SURFACES ===
   Product gallery/zoom controls can have high z-index values. Keep the entire
   navigation stacking context above WooCommerce content, not just the submenu. */
header{
  position:relative!important;
  z-index:1000000!important;
  isolation:isolate!important;
}
header .navwrap{
  position:relative!important;
  z-index:1000001!important;
  overflow:visible!important;
}
@media (min-width:981px){
  header .navwrap ul#menu-main.nav,
  header .navwrap ul#menu-main.nav > li{
    overflow:visible!important;
  }
  header .navwrap ul#menu-main.nav > li.menu-item-has-children > ul.sub-menu{
    z-index:1000002!important;
    opacity:0!important;
    /* force a fully painted surface; child opacity is never used */
    background-color:var(--tn-sub-bg,#f8dfe7)!important;
    background-image:none!important;
  }
  header .navwrap ul#menu-main.nav > li.menu-item-has-children:hover > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.menu-item-has-children:focus-within > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.menu-item-has-children.tn-submenu-open-v142 > ul.sub-menu{
    opacity:1!important;
  }
  .tn-mini-cart-v142{
    z-index:1000003!important;
    background-color:var(--tn-sub-bg,#f8dfe7)!important;
    background-image:none!important;
  }
}


/* === v1.4.9 DESKTOP ALIGNMENT + MOBILE NAV UX === */
@media (min-width:981px){
  /* Broad dropdowns align with the site's content shell rather than growing left from the parent label. */
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3 > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4 > ul.sub-menu{
    position:fixed!important;
    top:auto!important;
    left:max(28px,calc((100vw - var(--max)) / 2 + 28px))!important;
    right:auto!important;
    transform:translateY(6px)!important;
    max-width:min(calc(var(--max) - 56px),calc(100vw - 56px))!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:hover > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:focus-within > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3.tn-submenu-open-v142 > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:hover > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:focus-within > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4.tn-submenu-open-v142 > ul.sub-menu{
    transform:translateY(0)!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3 > ul.sub-menu{width:min(820px,calc(100vw - 56px))!important}
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4 > ul.sub-menu{width:min(calc(var(--max) - 56px),calc(100vw - 56px))!important}
}

@media (max-width:980px){
  header{isolation:isolate!important}
  .head{min-height:78px!important;grid-template-columns:1fr auto!important;padding-top:8px!important;padding-bottom:8px!important}
  .head > div:nth-child(2){grid-column:1;grid-row:1;justify-self:start!important}
  .side.right{grid-column:2;grid-row:1;display:flex!important;align-items:center!important;gap:10px!important}
  .side.right > a{display:none!important}
  .mobile{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
    min-width:88px!important;min-height:44px!important;padding:0 14px!important;border:1px solid var(--ink)!important;
    background:transparent!important;color:var(--ink)!important;font:700 11px/1 Arial,sans-serif!important;
    letter-spacing:.08em!important;text-transform:uppercase!important;cursor:pointer!important;border-radius:0!important
  }
  .tn-mobile-menu-icon,.tn-mobile-menu-icon:before,.tn-mobile-menu-icon:after{display:block;width:16px;height:1.5px;background:currentColor;content:"";transition:transform .18s ease,opacity .18s ease}
  .tn-mobile-menu-icon{position:relative}.tn-mobile-menu-icon:before{position:absolute;top:-5px}.tn-mobile-menu-icon:after{position:absolute;top:5px}
  body.tn-mobile-nav-open .tn-mobile-menu-icon{background:transparent}
  body.tn-mobile-nav-open .tn-mobile-menu-icon:before{top:0;transform:rotate(45deg)}
  body.tn-mobile-nav-open .tn-mobile-menu-icon:after{top:0;transform:rotate(-45deg)}

  .navwrap,.navwrap.open{
    display:block!important;position:absolute!important;left:0!important;right:0!important;top:100%!important;
    background:var(--pink)!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-8px)!important;
    transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s!important;z-index:1000005!important
  }
  .navwrap.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;transition-delay:0s!important}
  .navwrap > .shell{padding:0 20px 24px!important;max-height:calc(100vh - 100px)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
  .navwrap ul#menu-main.nav{display:block!important;min-height:0!important;padding:10px 0!important;margin:0!important}
  .navwrap ul#menu-main.nav > li{position:relative!important;padding:0!important;margin:0!important;border-bottom:1px solid var(--line)!important}
  .navwrap ul#menu-main.nav > li > a{display:flex!important;align-items:center!important;min-height:52px!important;padding:14px 52px 14px 2px!important;font-family:Arial,sans-serif!important;font-size:15px!important;font-weight:700!important;letter-spacing:.02em!important;text-decoration:none!important}
  .navwrap .tn-submenu-toggle-v142{
    display:flex!important;align-items:center!important;justify-content:center!important;position:absolute!important;right:0!important;top:4px!important;
    width:44px!important;height:44px!important;border:0!important;background:transparent!important;color:var(--ink)!important;font-size:0!important;cursor:pointer!important
  }
  .navwrap .tn-submenu-toggle-v142 span{display:none!important}
  .navwrap .tn-submenu-toggle-v142:before{content:"+";font:400 24px/1 Arial,sans-serif!important}
  .navwrap .tn-submenu-open-v142 > .tn-submenu-toggle-v142:before{content:"−"}
  .navwrap ul#menu-main.nav > li > ul.sub-menu{
    display:block!important;position:static!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;
    padding:0 0 0 14px!important;border:0!important;box-shadow:none!important;background:transparent!important;grid-template-columns:none!important;
    max-height:0!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:max-height .24s ease,opacity .18s ease!important
  }
  .navwrap ul#menu-main.nav > li.tn-submenu-open-v142 > ul.sub-menu{max-height:1600px!important;padding-bottom:12px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .navwrap ul#menu-main.nav > li > ul.sub-menu > li{padding:0!important;margin:0!important;border:0!important}
  .navwrap ul#menu-main.nav > li > ul.sub-menu > li > a{display:flex!important;align-items:center!important;min-height:44px!important;padding:10px 4px!important;font-family:Arial,sans-serif!important;font-size:12px!important;font-weight:700!important;letter-spacing:.055em!important;text-transform:uppercase!important;text-decoration:none!important}
  .navwrap ul.sub-menu ul.sub-menu{padding:0 0 6px 14px!important;background:transparent!important}
  .navwrap ul.sub-menu ul.sub-menu a{display:flex!important;align-items:center!important;min-height:44px!important;font-family:Arial,sans-serif!important;font-size:12px!important}
  .navwrap .menu-cart-icon{border-bottom:0!important}
  .navwrap .tn-cart-trigger-v142{display:flex!important;align-items:center!important;min-height:52px!important;padding:14px 2px!important}
  .tn-mini-cart-v142{display:none!important}
  body.tn-mobile-nav-open{overflow:hidden!important}
}
@media (max-width:560px){.head{padding-left:16px!important;padding-right:16px!important}.navwrap > .shell{padding-left:16px!important;padding-right:16px!important}}
@media (prefers-reduced-motion:reduce){.navwrap,.navwrap ul.sub-menu,.tn-mobile-menu-icon,.tn-mobile-menu-icon:before,.tn-mobile-menu-icon:after{transition:none!important}}


/* === v1.5.1 MOBILE NAV REBUILD ===
   Mobile navigation is a real off-canvas drawer. This intentionally overrides
   all earlier responsive nav positioning without changing desktop navigation. */
@media (max-width:980px){
  body.tn-mobile-nav-open{overflow:hidden!important}

  header .head{
    position:relative!important;
    z-index:1000012!important;
  }

  header button.mobile{
    position:relative!important;
    z-index:1000020!important;
    background:var(--pink)!important;
  }

  header .navwrap,
  header .navwrap.open{
    display:block!important;
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(88vw,420px)!important;
    height:100%!important;
    margin:0!important;
    padding:92px 0 24px!important;
    background:var(--pink)!important;
    border:0!important;
    border-left:1px solid var(--line)!important;
    box-shadow:-18px 0 42px rgba(0,0,0,.10)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateX(100%)!important;
    transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s!important;
    z-index:1000010!important;
  }

  header .navwrap.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateX(0)!important;
    transition-delay:0s!important;
  }

  header .navwrap > .shell{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0 24px!important;
    overflow:visible!important;
  }

  header .navwrap ul#menu-main.nav{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }

  header .navwrap ul#menu-main.nav > li{
    display:block!important;
    position:relative!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid var(--line)!important;
  }

  header .navwrap ul#menu-main.nav > li > a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:54px!important;
    margin:0!important;
    padding:14px 52px 14px 0!important;
    color:var(--tn-menu-color,var(--ink))!important;
    background:transparent!important;
    font-family:Arial,sans-serif!important;
    font-size:15px!important;
    font-weight:700!important;
    line-height:1.25!important;
    letter-spacing:.02em!important;
    text-transform:none!important;
    text-decoration:none!important;
    white-space:normal!important;
  }

  header .navwrap ul#menu-main.nav > li.current-menu-item > a,
  header .navwrap ul#menu-main.nav > li.current-menu-parent > a,
  header .navwrap ul#menu-main.nav > li.current-menu-ancestor > a{
    color:var(--tn-menu-active,var(--tn-menu-hover,var(--ink)))!important;
  }

  header .navwrap .tn-submenu-toggle-v142{
    display:flex!important;
    position:absolute!important;
    top:5px!important;
    right:0!important;
    width:44px!important;
    height:44px!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    background:transparent!important;
    color:var(--ink)!important;
    cursor:pointer!important;
    z-index:2!important;
  }
  header .navwrap .tn-submenu-toggle-v142 span{display:none!important}
  header .navwrap .tn-submenu-toggle-v142:before{
    content:"+"!important;
    font:400 24px/1 Arial,sans-serif!important;
  }
  header .navwrap .tn-submenu-open-v142 > .tn-submenu-toggle-v142:before{
    content:"−"!important;
  }

  header .navwrap ul#menu-main.nav > li > ul.sub-menu{
    display:block!important;
    position:static!important;
    inset:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    columns:auto!important;
    column-count:1!important;
    grid-template-columns:none!important;
    transform:none!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    overflow:hidden!important;
    max-height:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:max-height .26s ease,opacity .18s ease!important;
  }

  header .navwrap ul#menu-main.nav > li.tn-submenu-open-v142 > ul.sub-menu{
    max-height:1800px!important;
    padding:0 0 12px 16px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  header .navwrap ul#menu-main.nav > li > ul.sub-menu > li{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  header .navwrap ul#menu-main.nav > li > ul.sub-menu > li > a,
  header .navwrap ul#menu-main.nav ul.sub-menu ul.sub-menu a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:44px!important;
    padding:9px 0!important;
    color:var(--tn-sub-color,var(--ink))!important;
    background:transparent!important;
    font-family:Arial,sans-serif!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.3!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    white-space:normal!important;
  }

  header .navwrap ul.sub-menu ul.sub-menu{
    display:block!important;
    position:static!important;
    margin:0!important;
    padding:0 0 4px 14px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  header .navwrap .menu-cart-icon{
    display:block!important;
    border-bottom:0!important;
  }
  header .navwrap .tn-cart-trigger-v142{
    display:flex!important;
    min-height:54px!important;
    align-items:center!important;
    padding:14px 0!important;
  }
  header .tn-mini-cart-v142{display:none!important}
}

@media (max-width:560px){
  header .navwrap,
  header .navwrap.open{
    width:100%!important;
    border-left:0!important;
    box-shadow:none!important;
  }
  header .navwrap > .shell{padding-left:22px!important;padding-right:22px!important}
}

@media (prefers-reduced-motion:reduce){
  header .navwrap,
  header .navwrap ul.sub-menu{transition:none!important}
}


/* === v1.5.2 ISOLATED MOBILE MENU === */
@media(max-width:980px){
  /* Desktop navigation never acts as the mobile panel anymore. */
  header .navwrap,header .navwrap.open{display:none!important}
  body.tn-mobile-v152-open{overflow:hidden!important}
  #tn-mobile-panel-v152{
    display:block!important;position:fixed!important;z-index:2147483000!important;
    top:0!important;right:0!important;bottom:0!important;width:min(90vw,430px)!important;
    height:100dvh!important;margin:0!important;padding:0!important;
    background:var(--pink)!important;color:var(--ink)!important;
    border-left:1px solid var(--line)!important;box-shadow:-18px 0 48px rgba(0,0,0,.12)!important;
    overflow:hidden!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transform:translateX(102%)!important;transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s!important
  }
  #tn-mobile-panel-v152.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateX(0)!important;transition-delay:0s!important}
  .tn-mobile-panel-head-v152{height:78px!important;padding:0 22px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:1px solid var(--line)!important;background:var(--pink)!important}
  .tn-mobile-panel-head-v152 strong{font:700 12px/1 Arial,sans-serif!important;letter-spacing:.08em!important}
  .tn-mobile-close-v152{display:inline-flex!important;align-items:center!important;gap:9px!important;min-height:44px!important;padding:0 13px!important;border:1px solid var(--ink)!important;background:transparent!important;color:var(--ink)!important;font:700 11px/1 Arial,sans-serif!important;letter-spacing:.07em!important;cursor:pointer!important}
  .tn-mobile-close-v152 span{font-size:24px!important;font-weight:300!important;line-height:1!important}
  .tn-mobile-nav-v152{display:block!important;height:calc(100dvh - 78px)!important;padding:6px 22px 28px!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;background:var(--pink)!important}
  #tn-mobile-list-v152,#tn-mobile-list-v152 ul{display:block!important;position:static!important;width:100%!important;height:auto!important;min-height:0!important;max-width:none!important;margin:0!important;padding:0!important;list-style:none!important;columns:auto!important;transform:none!important;border:0!important;box-shadow:none!important;background:transparent!important;opacity:1!important;visibility:visible!important}
  #tn-mobile-list-v152>li{display:block!important;position:relative!important;width:100%!important;margin:0!important;padding:0!important;border-bottom:1px solid var(--line)!important}
  #tn-mobile-list-v152 li>a{display:flex!important;position:relative!important;align-items:center!important;width:100%!important;min-height:54px!important;margin:0!important;padding:14px 50px 14px 0!important;background:transparent!important;color:var(--tn-menu-color,var(--ink))!important;font-family:Arial,sans-serif!important;font-size:15px!important;font-weight:700!important;line-height:1.25!important;letter-spacing:.01em!important;text-transform:none!important;text-decoration:none!important;white-space:normal!important}
  #tn-mobile-list-v152 .tn-mobile-sub-v152{display:flex!important;position:absolute!important;z-index:3!important;top:5px!important;right:0!important;width:44px!important;height:44px!important;margin:0!important;padding:0!important;align-items:center!important;justify-content:center!important;border:0!important;background:transparent!important;color:var(--ink)!important;font:400 25px/1 Arial,sans-serif!important;cursor:pointer!important}
  #tn-mobile-list-v152 li>ul.sub-menu{display:none!important;padding:0 0 12px 15px!important}
  #tn-mobile-list-v152 li.tn-mobile-sub-open-v152>ul.sub-menu{display:block!important}
  #tn-mobile-list-v152 ul.sub-menu li{display:block!important;position:relative!important;width:100%!important;margin:0!important;padding:0!important;border:0!important}
  #tn-mobile-list-v152 ul.sub-menu li>a{min-height:44px!important;padding:9px 48px 9px 0!important;font-size:12px!important;letter-spacing:.055em!important;text-transform:uppercase!important}
  #tn-mobile-list-v152 ul.sub-menu ul.sub-menu{padding-left:14px!important}
  #tn-mobile-list-v152 .menu-cart-icon>a{padding-right:0!important}
}
@media(max-width:560px){#tn-mobile-panel-v152{width:100%!important;border-left:0!important;box-shadow:none!important}}
@media(min-width:981px){#tn-mobile-panel-v152{display:none!important}}


/* === v1.5.4 CATEGORY / SHOP REFINEMENT === */

/* Remove the long production/backorder notice from archive cards.
   Covers common WooCommerce/theme/plugin wrappers while preserving price. */
.tn-clean-product-archive-v154 ul.products li.product .stock,
.tn-clean-product-archive-v154 ul.products li.product .availability,
.tn-clean-product-archive-v154 ul.products li.product .backorder-notice,
.tn-clean-product-archive-v154 ul.products li.product .tn-backorder-message,
.tn-clean-product-archive-v154 ul.products li.product .woocommerce-product-details__short-description{
  display:none!important;
}

/* One archive heading only: hide the legacy/theme title that sits above our
   designed centred category hero. */
body.woocommerce.archive .page-title:not(.woocommerce-products-header__title),
body.post-type-archive-product .page-title:not(.woocommerce-products-header__title){
  display:none!important;
}

/* Archive hero spacing / hierarchy */
body.woocommerce.archive .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header{
  text-align:center!important;
  margin:0 auto 46px!important;
  padding-top:24px!important;
}
body.woocommerce.archive .woocommerce-products-header__title,
body.post-type-archive-product .woocommerce-products-header__title{
  margin:0 auto 14px!important;
  text-align:center!important;
}
body.woocommerce.archive .term-description,
body.post-type-archive-product .term-description{
  max-width:720px!important;
  margin:0 auto!important;
  text-align:center!important;
}

/* Consistent product-card structure. */
body.woocommerce.archive ul.products,
body.post-type-archive-product ul.products{
  align-items:stretch!important;
}
body.woocommerce.archive ul.products li.product,
body.post-type-archive-product ul.products li.product{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
body.woocommerce.archive ul.products li.product .woocommerce-loop-product__link,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__link{
  display:flex!important;
  flex-direction:column!important;
  flex:0 0 auto!important;
}
body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title{
  margin-top:16px!important;
  margin-bottom:10px!important;
}
body.woocommerce.archive ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price{
  margin-top:auto!important;
  margin-bottom:14px!important;
  min-height:24px!important;
}

/* Quick-order bar: controls and CTA are visually separate but remain one unit. */
body.woocommerce.archive ul.products li.product .tn-quick-order,
body.woocommerce.archive ul.products li.product .tn-archive-quick-order,
body.woocommerce.archive ul.products li.product form.cart,
body.post-type-archive-product ul.products li.product .tn-quick-order,
body.post-type-archive-product ul.products li.product .tn-archive-quick-order,
body.post-type-archive-product ul.products li.product form.cart{
  margin-top:auto!important;
}

/* The current archive quick-order implementation renders quantity + CTA in one
   horizontal control. Give the CTA breathing room without breaking its speed. */
body.woocommerce.archive ul.products li.product .quantity + .button,
body.woocommerce.archive ul.products li.product .quantity + button,
body.post-type-archive-product ul.products li.product .quantity + .button,
body.post-type-archive-product ul.products li.product .quantity + button{
  margin-left:8px!important;
}
body.woocommerce.archive ul.products li.product .tn-qty-wrap + .button,
body.woocommerce.archive ul.products li.product .tn-qty-wrap + button,
body.post-type-archive-product ul.products li.product .tn-qty-wrap + .button,
body.post-type-archive-product ul.products li.product .tn-qty-wrap + button{
  margin-left:8px!important;
}

/* CTA hover: unmistakable inversion. */
body.woocommerce.archive ul.products li.product .button,
body.post-type-archive-product ul.products li.product .button{
  transition:background-color .16s ease,color .16s ease,border-color .16s ease!important;
}
body.woocommerce.archive ul.products li.product .button:hover,
body.woocommerce.archive ul.products li.product .button:focus-visible,
body.post-type-archive-product ul.products li.product .button:hover,
body.post-type-archive-product ul.products li.product .button:focus-visible{
  background:#fff!important;
  color:#222!important;
  border-color:#222!important;
}

/* Ensure quick-order black segments do not visually run into one another. */
body.woocommerce.archive ul.products li.product .tn-quick-order,
body.woocommerce.archive ul.products li.product .tn-archive-quick-order,
body.post-type-archive-product ul.products li.product .tn-quick-order,
body.post-type-archive-product ul.products li.product .tn-archive-quick-order{
  gap:8px!important;
}

/* Mobile/tablet archive rhythm */
@media(max-width:980px){
  body.woocommerce.archive .woocommerce-products-header,
  body.post-type-archive-product .woocommerce-products-header{margin-bottom:30px!important;padding-top:14px!important}
}


/* === v1.5.6 CATEGORY TOP === */
body.woocommerce.archive .tn-archive-intro-v141,
body.post-type-archive-product .tn-archive-intro-v141{
  width:min(1400px,calc(100% - 64px))!important;
  margin:28px auto 38px!important;
}

/* Breadcrumb: same left axis as the product grid, compact and editorial. */
body.woocommerce.archive .tn-archive-intro-v141 .tn-breadcrumb-v140,
body.post-type-archive-product .tn-archive-intro-v141 .tn-breadcrumb-v140{
  width:100%!important;
  margin:0 0 38px!important;
  color:var(--archive-bc-color)!important;
}
body.woocommerce.archive .tn-breadcrumb-v140 nav,
body.post-type-archive-product .tn-breadcrumb-v140 nav{
  gap:11px!important;
  font-family:Arial,sans-serif!important;
  font-size:var(--archive-bc-size)!important;
  font-weight:600!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
body.woocommerce.archive .tn-bc-arrow,
body.post-type-archive-product .tn-bc-arrow{
  font-size:15px!important;
  opacity:.7!important;
}

/* Editorial category title + optional WooCommerce category description. */
body.woocommerce.archive .tn-archive-copy-v141,
body.post-type-archive-product .tn-archive-copy-v141{
  max-width:760px!important;
  margin:0 auto!important;
  text-align:center!important;
}
body.woocommerce.archive .tn-archive-title-v141,
body.post-type-archive-product .tn-archive-title-v141{
  margin:0 auto 15px!important;
  font-size:clamp(38px,4vw,var(--archive-title-size))!important;
  line-height:1.02!important;
  color:var(--archive-title-color)!important;
}
body.woocommerce.archive .tn-archive-description-v141,
body.post-type-archive-product .tn-archive-description-v141{
  max-width:680px!important;
  color:var(--archive-desc-color)!important;
  font-size:var(--archive-desc-size)!important;
  line-height:1.55!important;
}

/* Functional toolbar: one baseline, products left / sort right. */
body.woocommerce.archive .woocommerce-result-count,
body.post-type-archive-product .woocommerce-result-count{
  float:left!important;
  margin:0 0 20px!important;
  padding-top:12px!important;
  font-family:Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:var(--meta-color)!important;
}
body.woocommerce.archive .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering{
  float:right!important;
  margin:0 0 20px!important;
}
body.woocommerce.archive .woocommerce-ordering select,
body.post-type-archive-product .woocommerce-ordering select{
  min-width:205px!important;
  height:42px!important;
  padding:0 42px 0 14px!important;
  border:1px solid var(--archive-sort-border)!important;
  background-color:transparent!important;
  color:var(--body-color)!important;
  font-family:Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:600!important;
  text-transform:uppercase!important;
  outline:none!important;
}
body.woocommerce.archive .woocommerce-ordering select:hover,
body.woocommerce.archive .woocommerce-ordering select:focus,
body.post-type-archive-product .woocommerce-ordering select:hover,
body.post-type-archive-product .woocommerce-ordering select:focus{
  border-color:var(--body-color)!important;
}

/* Pull the first product row closer to the toolbar. */
body.woocommerce.archive ul.products,
body.post-type-archive-product ul.products{
  padding-top:0!important;
  clear:both!important;
}

/* Mobile: no hero-sized dead space. */
@media(max-width:700px){
  body.woocommerce.archive .tn-archive-intro-v141,
  body.post-type-archive-product .tn-archive-intro-v141{
    width:calc(100% - 32px)!important;
    margin:18px auto 28px!important;
  }
  body.woocommerce.archive .tn-archive-intro-v141 .tn-breadcrumb-v140,
  body.post-type-archive-product .tn-archive-intro-v141 .tn-breadcrumb-v140{
    margin-bottom:26px!important;
  }
  body.woocommerce.archive .tn-archive-title-v141,
  body.post-type-archive-product .tn-archive-title-v141{
    font-size:min(var(--archive-title-size),40px)!important;
    letter-spacing:-.8px!important;
  }
  body.woocommerce.archive .woocommerce-result-count,
  body.post-type-archive-product .woocommerce-result-count{
    float:left!important;
    width:auto!important;
    padding-top:14px!important;
  }
  body.woocommerce.archive .woocommerce-ordering,
  body.post-type-archive-product .woocommerce-ordering{
    float:right!important;
    width:auto!important;
  }
  body.woocommerce.archive .woocommerce-ordering select,
  body.post-type-archive-product .woocommerce-ordering select{
    width:auto!important;
    min-width:150px!important;
  }
}
@media(max-width:480px){
  body.woocommerce.archive .woocommerce-result-count,
  body.post-type-archive-product .woocommerce-result-count,
  body.woocommerce.archive .woocommerce-ordering,
  body.post-type-archive-product .woocommerce-ordering{
    float:none!important;
    width:100%!important;
  }
  body.woocommerce.archive .woocommerce-result-count,
  body.post-type-archive-product .woocommerce-result-count{
    padding-top:0!important;
    margin-bottom:12px!important;
  }
  body.woocommerce.archive .woocommerce-ordering select,
  body.post-type-archive-product .woocommerce-ordering select{
    width:100%!important;
  }
}


/* === v1.5.7 FAST B2B ORDER FEEDBACK === */

/* Button feedback: same footprint, no layout jump. */
body.woocommerce.archive ul.products li.product .button.tn-adding-v157,
body.post-type-archive-product ul.products li.product .button.tn-adding-v157{
  opacity:.65!important;
  cursor:progress!important;
}
body.woocommerce.archive ul.products li.product .button.tn-added-v157,
body.post-type-archive-product ul.products li.product .button.tn-added-v157{
  background:#fff!important;
  color:#222!important;
  border-color:#222!important;
}

/* Small, non-blocking confirmation. It confirms success without interrupting
   someone adding many SKUs in sequence. */
.tn-cart-toast-v157{
  position:fixed!important;
  z-index:2147482500!important;
  top:92px!important;
  right:22px!important;
  width:min(390px,calc(100vw - 32px))!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:15px 16px!important;
  background:var(--button-bg,#222)!important;
  color:var(--button-text,#fff)!important;
  border:1px solid var(--button-bg,#222)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.14)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(-8px)!important;
  transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s!important;
}
.tn-cart-toast-v157.is-visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0)!important;
  transition-delay:0s!important;
}
.tn-cart-toast-copy-v157{
  display:flex!important;
  min-width:0!important;
  flex-direction:column!important;
  gap:4px!important;
  font-family:Arial,sans-serif!important;
}
.tn-cart-toast-title-v157{
  font-size:11px!important;
  line-height:1.1!important;
  letter-spacing:.075em!important;
}
.tn-cart-toast-detail-v157{
  display:block!important;
  max-width:220px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:11px!important;
  line-height:1.3!important;
  opacity:.85!important;
}
.tn-cart-toast-link-v157{
  flex:0 0 auto!important;
  color:var(--button-text,#fff)!important;
  font-family:Arial,sans-serif!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.055em!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  white-space:nowrap!important;
}
.tn-cart-toast-link-v157:hover{opacity:.7!important}

/* On mobile put feedback near the bottom so it does not cover navigation/header. */
@media(max-width:700px){
  .tn-cart-toast-v157{
    top:auto!important;
    right:16px!important;
    bottom:16px!important;
    left:16px!important;
    width:auto!important;
  }
  .tn-cart-toast-detail-v157{max-width:52vw!important}
}
@media(max-width:430px){
  .tn-cart-toast-v157{align-items:flex-start!important;flex-direction:column!important;gap:9px!important}
  .tn-cart-toast-detail-v157{max-width:100%!important}
}
@media(prefers-reduced-motion:reduce){
  .tn-cart-toast-v157{transition:none!important}
}


/* v1.5.8: custom AJAX feedback owns archive add-to-cart confirmation. */
body.woocommerce.archive .woocommerce-notices-wrapper .woocommerce-message,
body.post-type-archive-product .woocommerce-notices-wrapper .woocommerce-message{
  /* JS removes old success notices; avoid flash before JS runs. */
}
body.woocommerce.archive .tn-archive-add:disabled,
body.post-type-archive-product .tn-archive-add:disabled{
  opacity:.72!important;
}


/* === v1.5.9 ARCHIVE MICRO-UX CLEANUP === */

/* Never allow WooCommerce's injected View cart link to create a second row. */
body.woocommerce.archive ul.products li.product a.added_to_cart,
body.post-type-archive-product ul.products li.product a.added_to_cart{
  display:none!important;
}

/* Short result count: deliberately quieter than product/card content. */
body.woocommerce.archive .woocommerce-result-count.tn-short-count-v159,
body.post-type-archive-product .woocommerce-result-count.tn-short-count-v159{
  font-family:Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}


/* === v1.5.10 CATEGORY ALIGNMENT + MENU SEAM === */

/* Desktop menu: make the parent item fill the complete nav height so the
   dropdown begins exactly on the nav border — no pink hover/dead gap. */
@media (min-width:981px){
  header .navwrap ul#menu-main.nav > li{
    align-self:stretch!important;
    display:flex!important;
    align-items:center!important;
    position:relative!important;
  }
  header .navwrap ul#menu-main.nav > li > a{
    display:flex!important;
    align-items:center!important;
    height:100%!important;
  }
  header .navwrap ul#menu-main.nav > li.menu-item-has-children > ul.sub-menu{
    top:100%!important;
    margin-top:0!important;
  }
}

/* Sale badge colours are independent Customizer values. */
.woocommerce span.onsale,
body.woocommerce.archive span.onsale,
body.post-type-archive-product span.onsale{
  background:var(--tn-sale-badge-bg,#969900)!important;
  color:var(--tn-sale-badge-text,#fff)!important;
  border-color:var(--tn-sale-badge-bg,#969900)!important;
}

/* v1.6.55: de WooCommerce Blocks "Product Collection"-badge (bijv. op
   /welke-stand-kies-jij/) is een ANDER component dan het klassieke
   "span.onsale" hierboven — eigen markup (.wc-block-components-product-
   sale-badge), standaard wit/zwart en los van de --tn-sale-badge-* vars.
   Zelfde Customizer-kleuren toegepast zodat de badge overal consistent is,
   ongeacht welk van de twee systemen een pagina gebruikt. */
.wc-block-components-product-sale-badge{
  background:var(--tn-sale-badge-bg,#969900)!important;
  color:var(--tn-sale-badge-text,#fff)!important;
  border-color:var(--tn-sale-badge-bg,#969900)!important;
}

/* Product card rhythm: image -> reserved title zone -> price -> quick order.
   This aligns prices within every desktop/tablet row without fixing the whole
   card height. */
@media (min-width:701px){
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title,
  body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title{
    min-height:3.05em!important;
    margin:16px 0 8px!important;
  }
  body.woocommerce.archive ul.products li.product .price,
  body.post-type-archive-product ul.products li.product .price{
    margin-top:0!important;
    margin-bottom:14px!important;
    min-height:26px!important;
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
  }
}

/* v1.5.10 owns the result count. */
body.woocommerce.archive .tn-result-count-v1510,
body.post-type-archive-product .tn-result-count-v1510{
  float:left!important;
  margin:0 0 20px!important;
  padding-top:12px!important;
  font-family:Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

/* === v1.5.11 MODERN B2B CART === */
.woocommerce-cart .content{max-width:1440px;padding-top:52px}.woocommerce-cart .entry-title{display:none}.tn-cart-page-v1511{font-family:Arial,sans-serif}.tn-cart-titlebar-v1511{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-bottom:26px;border-bottom:1px solid var(--line)}.tn-cart-titlebar-v1511 h1{font:700 clamp(36px,4vw,58px)/.95 Georgia,serif;margin:0 0 12px;color:var(--heading-color)}.tn-cart-titlebar-v1511 p{margin:0;font-size:13px}.tn-cart-continue-v1511,.tn-cart-remove-v1511{font-size:10px;font-weight:700;letter-spacing:.06em;text-decoration:none}.tn-cart-layout-v1511{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,.8fr);gap:54px;align-items:start;margin-top:34px}.tn-cart-items-v1511{border-top:1px solid var(--line)}.tn-cart-item-v1511{display:grid;grid-template-columns:130px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.tn-cart-thumb-v1511 img{display:block;width:130px;height:130px;object-fit:contain;background:rgba(255,255,255,.18)}.tn-cart-copy-v1511{display:flex;flex-direction:column;justify-content:space-between;min-width:0}.tn-cart-item-top-v1511{display:flex;justify-content:space-between;gap:24px}.tn-cart-item-v1511 h2{font:700 18px/1.25 Georgia,serif;margin:2px 0 7px}.tn-cart-item-v1511 h2 a{text-decoration:none}.tn-cart-meta-v1511{font-size:11px;color:var(--meta-color);text-transform:uppercase;letter-spacing:.03em}.tn-cart-line-total-v1511{font-size:16px;white-space:nowrap}.tn-cart-item-bottom-v1511{display:flex;align-items:center;gap:18px;margin-top:18px}.tn-cart-qty-v1511{display:grid;grid-template-columns:38px 54px 38px;height:40px}.tn-cart-qty-v1511 button{border:1px solid var(--button-bg);background:var(--button-bg);color:var(--button-text);font-size:18px;cursor:pointer}.tn-cart-qty-v1511 .quantity{margin:0!important}.tn-cart-qty-v1511 .qty,.tn-cart-qty-number-v1511{width:54px!important;height:40px!important;min-height:40px!important;border:1px solid var(--button-bg)!important;border-left:0!important;border-right:0!important;background:var(--paper)!important;text-align:center;font-weight:700;display:flex;align-items:center;justify-content:center;-moz-appearance:textfield}.tn-cart-qty-v1511 .qty::-webkit-inner-spin-button,.tn-cart-qty-v1511 .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.tn-native-cart-update-v1511{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}.tn-cart-summary-v1511{position:sticky;top:28px;background:rgba(255,255,255,.24);border:1px solid var(--line);padding:28px}.tn-cart-summary-v1511 h2,.tn-cart-cross-v1511>h2{font:700 18px/1.1 Arial,sans-serif;letter-spacing:.03em;margin:0 0 22px}.tn-cart-summary-row-v1511{display:flex;justify-content:space-between;gap:20px;padding:10px 0;font-size:13px}.tn-cart-grand-v1511{border-top:1px solid var(--ink);margin-top:10px;padding-top:18px;font-size:17px}.tn-cart-checkout-v1511{display:flex;align-items:center;justify-content:center;min-height:52px;margin-top:20px;background:var(--button-bg);color:var(--button-text);border:1px solid var(--button-bg);font-size:11px;font-weight:700;text-decoration:none;transition:.16s ease}.tn-cart-trust-v1511{display:grid;gap:7px;margin-top:20px;font-size:11px}.tn-cart-cross-v1511{margin-top:48px}.tn-cart-cross-grid-v1511{display:grid;gap:10px}.tn-cart-cross-item-v1511{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px;background:rgba(255,255,255,.22);border:1px solid rgba(37,36,38,.06)}.tn-cart-cross-image-v1511 img{display:block;width:76px;height:76px;object-fit:contain}.tn-cart-cross-copy-v1511{display:grid;gap:3px}.tn-cart-cross-copy-v1511 a{text-decoration:none}.tn-cart-cross-copy-v1511 strong{font:700 14px/1.2 Georgia,serif}.tn-cart-cross-copy-v1511 small{font-size:10px}.tn-cart-cross-label-v1511{font-size:9px;letter-spacing:.08em;color:var(--meta-color)}.tn-cart-cross-buy-v1511{display:flex;align-items:center;gap:14px}.tn-cart-cross-buy-v1511>strong{font-size:13px}.tn-cart-cross-add-v1511{white-space:nowrap!important;margin:0!important}.tn-cart-cross-add-v1511.added{background:transparent!important;color:var(--button-bg)!important}.tn-cart-cross-item-v1511 .added_to_cart{display:none!important}.tn-cart-update-note-v1511{font-size:10px;font-weight:700;opacity:0;transition:.2s}.tn-cart-update-note-v1511.is-visible{opacity:1}
@media(hover:hover) and (pointer:fine){.tn-cart-qty-v1511 button:hover,.tn-cart-checkout-v1511:hover,.tn-cart-cross-add-v1511:hover{background:var(--button-text)!important;color:var(--button-bg)!important}.tn-cart-remove-v1511:hover,.tn-cart-continue-v1511:hover{color:var(--link-hover)}}
@media(max-width:900px){.tn-cart-layout-v1511{grid-template-columns:1fr;gap:34px}.tn-cart-summary-v1511{position:static}.tn-cart-cross-v1511{margin-top:34px}}
@media(max-width:600px){.woocommerce-cart .content{padding:30px 16px 110px}.tn-cart-titlebar-v1511{display:block}.tn-cart-continue-v1511{display:inline-block;margin-top:18px}.tn-cart-item-v1511{grid-template-columns:86px 1fr;gap:14px;padding:18px 0}.tn-cart-thumb-v1511 img{width:86px;height:86px}.tn-cart-item-top-v1511{display:block}.tn-cart-line-total-v1511{display:block;margin-top:8px}.tn-cart-item-bottom-v1511{justify-content:space-between;gap:10px}.tn-cart-cross-item-v1511{grid-template-columns:62px 1fr}.tn-cart-cross-image-v1511 img{width:62px;height:62px}.tn-cart-cross-buy-v1511{grid-column:2;justify-content:space-between}.tn-cart-summary-v1511{padding:22px}.tn-cart-checkout-v1511{position:fixed;z-index:90;left:12px;right:12px;bottom:12px;box-shadow:0 10px 30px #0003}}


/* === v1.5.12 CHECKOUT VISUAL CLEANUP ===
   Scope deliberately limited to checkout styling.
   Swift Builder / fullwidth_text content is NOT modified.
*/

/* White functional input surfaces on the Curiositeas pink checkout */
body.woocommerce-checkout form.checkout input.input-text,
body.woocommerce-checkout form.checkout input[type="text"],
body.woocommerce-checkout form.checkout input[type="email"],
body.woocommerce-checkout form.checkout input[type="tel"],
body.woocommerce-checkout form.checkout input[type="number"],
body.woocommerce-checkout form.checkout input[type="password"],
body.woocommerce-checkout form.checkout textarea,
body.woocommerce-checkout form.checkout select,
body.woocommerce-checkout .select2-container--default .select2-selection--single,
body.woocommerce-checkout .select2-container--default .select2-selection--multiple {
    background: #fff !important;
    color: #222 !important;
    border: 1px solid rgba(34,34,34,.18) !important;
    box-shadow: none !important;
}

/* Consistent field height / breathing room */
body.woocommerce-checkout form.checkout input.input-text,
body.woocommerce-checkout form.checkout select,
body.woocommerce-checkout .select2-container--default .select2-selection--single {
    min-height: 44px;
}

body.woocommerce-checkout form.checkout textarea {
    min-height: 88px;
}

/* Remove browser/plugin green focus treatment; retain a clear accessible focus */
body.woocommerce-checkout form.checkout input:focus,
body.woocommerce-checkout form.checkout textarea:focus,
body.woocommerce-checkout form.checkout select:focus,
body.woocommerce-checkout .select2-container--focus .select2-selection,
body.woocommerce-checkout .select2-container--open .select2-selection {
    background: #fff !important;
    border-color: #222 !important;
    outline: 1px solid #222 !important;
    outline-offset: 1px;
    box-shadow: none !important;
}

/* Payment area: white card, while keeping the overall checkout pink */
body.woocommerce-checkout #payment,
body.woocommerce-checkout .woocommerce-checkout-payment {
    background: #fff !important;
    border: 1px solid rgba(34,34,34,.10);
    box-shadow: none;
}

/* Each gateway stays clean and white */
body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment ul.payment_methods li {
    background: #fff !important;
}

/* Gateway explanation gets only a very subtle hierarchy */
body.woocommerce-checkout #payment div.payment_box {
    background: #f7f5f5 !important;
    color: #222 !important;
}

body.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: #f7f5f5 !important;
}

/* Terms / privacy / place-order footer belongs to the white payment card */
body.woocommerce-checkout #payment .place-order,
body.woocommerce-checkout #payment .form-row.place-order {
    background: #fff !important;
}

/* Keep the main conversion action black */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order,
body.woocommerce-checkout .woocommerce-checkout-payment .button {
    background: #222 !important;
    color: #fff !important;
    border-color: #222 !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout button#place_order:hover,
body.woocommerce-checkout .woocommerce-checkout-payment .button:hover {
    background: #fff !important;
    color: #222 !important;
    border-color: #222 !important;
}

/* Select2 dropdown itself should match the white fields */
body.woocommerce-checkout .select2-dropdown,
body.woocommerce-checkout .select2-search__field {
    background: #fff !important;
}


/* ==========================================================
   v1.5.13 — MY ACCOUNT / B2B ACCOUNT UI
   Uses existing theme colours; no Customizer defaults changed.
   ========================================================== */

body.woocommerce-account .woocommerce {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 24px 90px;
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 42px;
    align-items: start;
}

/* Account navigation becomes a calm functional sidebar */
body.woocommerce-account .woocommerce-MyAccount-navigation {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(255,255,255,.52);
    border: 1px solid rgba(34,34,34,.10);
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 8px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(34,34,34,.08);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li::marker {
    content: "";
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 11px 14px;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: .055em;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    color: #222;
    transition: background .18s ease, color .18s ease, padding-left .18s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: rgba(255,255,255,.82);
    padding-left: 18px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    background: #222;
    color: #fff;
}

/* Main account panel */
body.woocommerce-account .woocommerce-MyAccount-content {
    width: auto !important;
    float: none !important;
    min-width: 0;
    margin: 0 !important;
    padding: 30px 32px 34px;
    background: rgba(255,255,255,.58);
    border: 1px solid rgba(34,34,34,.10);
}

body.woocommerce-account .woocommerce-MyAccount-content > h1,
body.woocommerce-account .woocommerce-MyAccount-content > h2,
body.woocommerce-account .woocommerce-MyAccount-content > h3 {
    margin-top: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content p:first-child {
    margin-top: 0;
}

/* Woo notices / email verification */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
    margin: 0 0 26px !important;
    padding: 17px 18px !important;
    background: #fff !important;
    border: 1px solid rgba(34,34,34,.12) !important;
    border-top: 3px solid #222 !important;
    color: #222 !important;
    box-shadow: none !important;
    font-family: Arial, Helvetica, sans-serif;
}

body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before {
    color: #222 !important;
}

body.woocommerce-account .woocommerce-message .button,
body.woocommerce-account .woocommerce-info .button {
    float: right;
    margin: -7px 0 -7px 18px;
}

/* Orders table: cleaner, card-like rows */
body.woocommerce-account table.shop_table,
body.woocommerce-account table.my_account_orders {
    width: 100%;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 8px !important;
    background: transparent !important;
    table-layout: auto;
}

body.woocommerce-account table.shop_table thead th,
body.woocommerce-account table.my_account_orders thead th {
    padding: 0 14px 8px !important;
    border: 0 !important;
    background: transparent !important;
    text-transform: uppercase;
    letter-spacing: .055em;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 10px;
    font-weight: 700;
    color: rgba(34,34,34,.68);
}

body.woocommerce-account table.shop_table tbody tr,
body.woocommerce-account table.my_account_orders tbody tr {
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(34,34,34,.10);
}

body.woocommerce-account table.shop_table tbody td,
body.woocommerce-account table.my_account_orders tbody td {
    padding: 15px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(34,34,34,.07) !important;
    vertical-align: middle;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    line-height: 1.4;
}

body.woocommerce-account table.shop_table tbody td:first-child,
body.woocommerce-account table.my_account_orders tbody td:first-child {
    border-left: 1px solid rgba(34,34,34,.10) !important;
}

body.woocommerce-account table.shop_table tbody td:last-child,
body.woocommerce-account table.my_account_orders tbody td:last-child {
    border-right: 1px solid rgba(34,34,34,.10) !important;
}

body.woocommerce-account table.my_account_orders .woocommerce-orders-table__cell-order-number a {
    color: #222;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Action buttons: less black mass, more hierarchy */
body.woocommerce-account .woocommerce-orders-table__cell-order-actions {
    min-width: 250px;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
body.woocommerce-account .woocommerce-MyAccount-content .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin: 2px 5px 2px 0 !important;
    padding: 10px 13px !important;
    border: 1px solid #222 !important;
    border-radius: 0 !important;
    background: #222 !important;
    color: #fff !important;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: .045em;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    transition: background .18s ease, color .18s ease;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content .button:hover {
    background: #fff !important;
    color: #222 !important;
}

/* Pagination matches the cleaner shop navigation */
body.woocommerce-account .woocommerce-pagination {
    margin-top: 22px;
    text-align: left;
}

body.woocommerce-account .woocommerce-pagination .button,
body.woocommerce-account .woocommerce-pagination a {
    min-width: 44px;
}

/* Forms inside account: white functional surfaces */
body.woocommerce-account .woocommerce-MyAccount-content input.input-text,
body.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
body.woocommerce-account .woocommerce-MyAccount-content textarea,
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-MyAccount-content .select2-selection {
    background: #fff !important;
    color: #222 !important;
    border: 1px solid rgba(34,34,34,.18) !important;
    box-shadow: none !important;
    min-height: 44px;
}

body.woocommerce-account .woocommerce-MyAccount-content input:focus,
body.woocommerce-account .woocommerce-MyAccount-content textarea:focus,
body.woocommerce-account .woocommerce-MyAccount-content select:focus {
    border-color: #222 !important;
    outline: 1px solid #222 !important;
    outline-offset: 1px;
}

/* Account details / address cards */
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-customer-details,
body.woocommerce-account .woocommerce-order-details {
    background: #fff;
    border: 1px solid rgba(34,34,34,.10);
    padding: 22px;
    margin-bottom: 22px;
}

/* Mobile: navigation becomes horizontal scroll; orders become cards */
@media (max-width: 820px) {
    body.woocommerce-account .woocommerce {
        display: block;
        padding: 32px 18px 70px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation {
        margin-bottom: 22px !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: flex;
        width: max-content;
        min-width: 100%;
        gap: 0;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation li {
        flex: 0 0 auto;
        border-bottom: 0;
        border-right: 1px solid rgba(34,34,34,.08);
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation a {
        white-space: nowrap;
        min-height: 42px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content {
        padding: 20px 16px 24px;
    }

    body.woocommerce-account table.my_account_orders {
        display: block;
    }

    body.woocommerce-account table.my_account_orders thead {
        display: none;
    }

    body.woocommerce-account table.my_account_orders tbody,
    body.woocommerce-account table.my_account_orders tr,
    body.woocommerce-account table.my_account_orders td {
        display: block;
        width: 100%;
    }

    body.woocommerce-account table.my_account_orders tbody tr {
        margin: 0 0 14px;
        padding: 8px 14px 12px;
        box-shadow: inset 0 0 0 1px rgba(34,34,34,.10);
    }

    body.woocommerce-account table.my_account_orders tbody td {
        display: grid;
        grid-template-columns: minmax(110px, 38%) 1fr;
        gap: 12px;
        padding: 9px 0 !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(34,34,34,.07) !important;
        text-align: right !important;
    }

    body.woocommerce-account table.my_account_orders tbody td::before {
        content: attr(data-title);
        text-align: left;
        text-transform: uppercase;
        letter-spacing: .045em;
        font-size: 10px;
        font-weight: 800;
        color: rgba(34,34,34,.65);
    }

    body.woocommerce-account table.my_account_orders tbody td:last-child {
        display: block;
        text-align: left !important;
        border-bottom: 0 !important;
        padding-top: 13px !important;
    }

    body.woocommerce-account table.my_account_orders tbody td:last-child::before {
        display: none;
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-actions {
        min-width: 0;
    }

    body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
        width: 100%;
        margin: 4px 0 !important;
    }

    body.woocommerce-account .woocommerce-message .button,
    body.woocommerce-account .woocommerce-info .button {
        float: none;
        width: 100%;
        margin: 12px 0 0 !important;
    }
}


/* ==========================================================
   v1.5.14 — MY ACCOUNT LAYOUT HOTFIX
   Corrects legacy Woo/theme floats and prevents the navigation
   and order content from separating vertically.
   ========================================================== */

@media (min-width: 821px) {
    body.woocommerce-account main .woocommerce,
    body.woocommerce-account .entry-content > .woocommerce,
    body.woocommerce-account .page-content > .woocommerce,
    body.woocommerce-account .woocommerce {
        box-sizing: border-box !important;
        width: min(1320px, calc(100% - 48px)) !important;
        max-width: 1320px !important;
        margin: 0 auto !important;
        padding: 56px 0 90px !important;

        display: grid !important;
        grid-template-columns: 250px minmax(0, 1fr) !important;
        grid-template-rows: auto !important;
        grid-auto-flow: row !important;
        column-gap: 38px !important;
        row-gap: 0 !important;
        align-items: start !important;
    }

    body.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation {
        box-sizing: border-box !important;
        display: block !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        width: 250px !important;
        max-width: 250px !important;
        min-width: 250px !important;
        float: none !important;
        clear: none !important;
        position: static !important;
        margin: 0 !important;
    }

    body.woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
        box-sizing: border-box !important;
        display: block !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: start !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        float: none !important;
        clear: none !important;
        position: static !important;
        margin: 0 !important;
        padding: 28px 30px 32px !important;
    }

    /* Any clearfix generated by legacy Woo themes must not become a grid item. */
    body.woocommerce-account .woocommerce > .clear,
    body.woocommerce-account .woocommerce > .clearfix {
        display: none !important;
    }
}

/* Notification should remain a horizontal strip, never collapse into a narrow column. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 64px;
    display: flex !important;
    align-items: center !important;
    gap: 16px;
    justify-content: space-between;
    clear: both !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error .button {
    flex: 0 0 auto;
    float: none !important;
    margin: 0 !important;
}

/* Orders use the available content width and cannot inherit old 70%/float rules. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table,
body.woocommerce-account .woocommerce-MyAccount-content table.my_account_orders,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: both !important;
}

/* Keep columns readable. */
@media (min-width: 821px) {
    body.woocommerce-account table.my_account_orders th:nth-child(1),
    body.woocommerce-account table.my_account_orders td:nth-child(1) { width: 11%; }

    body.woocommerce-account table.my_account_orders th:nth-child(2),
    body.woocommerce-account table.my_account_orders td:nth-child(2) { width: 15%; }

    body.woocommerce-account table.my_account_orders th:nth-child(3),
    body.woocommerce-account table.my_account_orders td:nth-child(3) { width: 23%; }

    body.woocommerce-account table.my_account_orders th:nth-child(4),
    body.woocommerce-account table.my_account_orders td:nth-child(4) { width: 16%; }

    body.woocommerce-account table.my_account_orders th:nth-child(5),
    body.woocommerce-account table.my_account_orders td:nth-child(5) { width: 35%; }
}

/* Mobile reset: one clean column, then horizontally scrollable account tabs. */
@media (max-width: 820px) {
    body.woocommerce-account .woocommerce {
        width: 100% !important;
        max-width: none !important;
        display: block !important;
        margin: 0 !important;
        padding: 28px 18px 70px !important;
    }

    body.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        float: none !important;
        clear: both !important;
        position: static !important;
    }

    body.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation {
        margin: 0 0 20px !important;
    }

    body.woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
        margin: 0 !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
        display: block !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error .button {
        width: 100% !important;
        margin-top: 12px !important;
    }
}


/* ==========================================================
   v1.5.15 — HEADER / CATALOGUS DROPDOWN REGRESSION FIX
   v1.5.14 account layout must never affect header navigation.
   ========================================================== */

/* Header/nav always remains outside account layout mechanics */
body.woocommerce-account header .woocommerce,
body.woocommerce-account .site-header .woocommerce,
body.woocommerce-account .navwrap .woocommerce,
body.woocommerce-account header nav,
body.woocommerce-account .navwrap {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ensure desktop submenus can render above account content */
body.woocommerce-account header,
body.woocommerce-account .site-header,
body.woocommerce-account .navwrap,
body.woocommerce-account .navwrap .shell,
body.woocommerce-account .navwrap .nav,
body.woocommerce-account .navwrap .menu-item-has-children {
    overflow: visible !important;
}

body.woocommerce-account .navwrap {
    position: relative !important;
    z-index: 1000 !important;
}

body.woocommerce-account .navwrap .sub-menu {
    z-index: 1001 !important;
}

/* Account content must stay below an open navigation dropdown */
body.woocommerce-account main,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
    position: relative;
    z-index: 1;
}

/* Catalogus/menu hover & focus safety net */
@media (min-width: 821px) {
    body.woocommerce-account .navwrap .menu-item-has-children:hover > .sub-menu,
    body.woocommerce-account .navwrap .menu-item-has-children:focus-within > .sub-menu,
    body.woocommerce-account .navwrap .menu-item-has-children.tn-submenu-open > .sub-menu {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}


/* ==========================================================
   v1.5.16 — CATALOGUS DROPDOWN DEFINITIVE FIX
   Do not change the nav's display mode: the header menu is flex-based.
   ========================================================== */

body.woocommerce-account header nav,
body.woocommerce-account .navwrap {
    display: revert !important;
    width: revert !important;
    max-width: revert !important;
    margin-left: revert !important;
    margin-right: revert !important;
}

/* Preserve the actual theme header geometry. */
body.woocommerce-account .navwrap,
body.woocommerce-account .navwrap .shell,
body.woocommerce-account .navwrap .nav,
body.woocommerce-account .navwrap ul.nav,
body.woocommerce-account .navwrap li.menu-item,
body.woocommerce-account .navwrap li.menu-item-has-children {
    overflow: visible !important;
}

body.woocommerce-account .navwrap {
    position: relative !important;
    z-index: 9990 !important;
}

body.woocommerce-account .navwrap ul.nav {
    position: relative;
    z-index: 9991;
}

/* Desktop submenu is positioned from its parent menu item. */
@media (min-width: 821px) {
    body.woocommerce-account .navwrap li.menu-item-has-children {
        position: relative !important;
    }

    body.woocommerce-account .navwrap li.menu-item-has-children > ul.sub-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        z-index: 9999 !important;
        pointer-events: none;
    }

    body.woocommerce-account .navwrap li.menu-item-has-children:hover > ul.sub-menu,
    body.woocommerce-account .navwrap li.menu-item-has-children:focus-within > ul.sub-menu,
    body.woocommerce-account .navwrap li.menu-item-has-children.tn-submenu-open > ul.sub-menu,
    body.woocommerce-account .navwrap li.menu-item-has-children.submenu-open > ul.sub-menu,
    body.woocommerce-account .navwrap li.menu-item-has-children.menu-item-open > ul.sub-menu {
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}

/* Account page can never paint over the open menu. */
body.woocommerce-account main,
body.woocommerce-account #main,
body.woocommerce-account .site-main,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
    z-index: auto !important;
}

/* Keep mobile submenu controlled by the existing mobile menu JS/CSS. */
@media (max-width: 820px) {
    body.woocommerce-account .navwrap li.menu-item-has-children > ul.sub-menu {
        position: static !important;
        z-index: auto !important;
    }
}


/* ==========================================================
   v1.5.17 — CATALOGUS ONLY DROPDOWN FIX
   Other dropdowns already work. Do not change global menu behaviour.
   Catalogus = menu-item-929 in the current WordPress menu.
   ========================================================== */

@media (min-width: 821px) {
    /* Catalogus is a wide/mega submenu; do not constrain it to the parent <li>. */
    #menu-main > #menu-item-929 {
        position: static !important;
    }

    #menu-main > #menu-item-929 > .sub-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        z-index: 9999 !important;
    }

    /* Only expose Catalogus when its own parent is active/hovered. */
    #menu-main > #menu-item-929:hover > .sub-menu,
    #menu-main > #menu-item-929:focus-within > .sub-menu,
    #menu-main > #menu-item-929.tn-submenu-open > .sub-menu {
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}


/* ==========================================================
   v1.5.18 — HEADER LIVE SEARCH
   ========================================================== */

.tn-search-menu-item-v158 {
    display: flex !important;
    align-items: center !important;
}

.tn-search-trigger-v158 {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 100%;
    padding: 0 10px;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
    font: inherit;
    font-size: inherit;
    text-transform: inherit;
    letter-spacing: inherit;
}

.tn-search-trigger-v158 svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
}

.tn-search-trigger-v158:hover {
    opacity: .58;
}

/* Panel attaches directly below the header/navigation line. */
.tn-live-search-panel-v158 {
    position: fixed;
    z-index: 10050;
    top: var(--tn-search-top, 0);
    left: 0;
    right: 0;
    display: none;
    background: #fff;
    border-top: 1px solid rgba(34,34,34,.15);
    border-bottom: 1px solid rgba(34,34,34,.15);
    box-shadow: 0 18px 35px rgba(0,0,0,.08);
}

.tn-live-search-panel-v158.is-open {
    display: block;
}

/* JS-independent positioning fallback; JS below updates it dynamically. */
.tn-live-search-inner-v158 {
    width: min(1320px, calc(100% - 48px));
    margin: 0 auto;
}

.tn-live-search-field-v158 {
    display: grid;
    grid-template-columns: 25px minmax(0,1fr) 34px;
    gap: 13px;
    align-items: center;
    min-height: 72px;
    border-bottom: 1px solid rgba(34,34,34,.12);
}

.tn-live-search-field-v158 > svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: #222;
    stroke-width: 1.5;
}

.tn-live-search-field-v158 input {
    width: 100%;
    height: 52px;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    color: #222 !important;
    font-family: Arial,Helvetica,sans-serif !important;
    font-size: 15px !important;
    font-weight: 600;
    letter-spacing: .035em;
}

.tn-live-search-close-v158 {
    appearance: none;
    width: 34px;
    height: 34px;
    border: 0;
    background: transparent;
    color: #222;
    cursor: pointer;
    font-size: 27px;
    font-weight: 300;
    line-height: 1;
}

.tn-live-search-results-v158 {
    max-height: min(560px, calc(100vh - 190px));
    overflow-y: auto;
}

.tn-search-label-v158 {
    padding: 17px 0 9px;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    color: rgba(34,34,34,.58);
}

.tn-search-products-v158 {
    display: grid;
}

.tn-search-result-v158 {
    display: grid;
    grid-template-columns: 64px minmax(0,1fr) auto;
    gap: 16px;
    align-items: center;
    min-height: 82px;
    padding: 9px 0;
    border-bottom: 1px solid rgba(34,34,34,.09);
    color: #222 !important;
    text-decoration: none !important;
}

.tn-search-result-v158:hover,
.tn-search-result-v158.is-active {
    background: rgba(0,0,0,.025);
}

.tn-search-result-v158 img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    background: #f4eeee;
}

.tn-search-result-copy-v158 {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
}

.tn-search-result-copy-v158 strong {
    overflow: hidden;
    color: #222;
    font-size: 14px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tn-search-meta-v158 {
    font-family: Arial,Helvetica,sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .055em;
    color: rgba(34,34,34,.52);
}

.tn-search-price-v158 {
    padding-left: 18px;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
}

.tn-search-all-v158 {
    display: block;
    padding: 17px 0 20px;
    color: #222 !important;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .055em;
    text-decoration: underline !important;
    text-underline-offset: 4px;
}

.tn-search-hint-v158,
.tn-search-loading-v158,
.tn-search-empty-v158 {
    padding: 24px 0 28px;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 13px;
    color: rgba(34,34,34,.68);
}

/* Mobile: full-width and touch friendly. */
@media (max-width: 820px) {
    .tn-search-trigger-v158 span {
        display: none;
    }

    .tn-search-trigger-v158 {
        min-width: 42px;
        justify-content: center;
        padding: 0 8px;
    }

    .tn-live-search-inner-v158 {
        width: calc(100% - 32px);
    }

    .tn-live-search-field-v158 {
        min-height: 62px;
    }

    .tn-search-result-v158 {
        grid-template-columns: 54px minmax(0,1fr);
        min-height: 72px;
        gap: 12px;
    }

    .tn-search-result-v158 img {
        width: 54px;
        height: 54px;
    }

    .tn-search-price-v158 {
        grid-column: 2;
        padding: 0;
        margin-top: -4px;
        font-size: 11px;
    }
}


/* ==========================================================
   v1.5.21 — PRODUCT SEARCH RESULTS VISUAL CONSISTENCY
   Search results should behave like category/product archives.
   ========================================================== */

/* Hide the verbose preorder/out-of-stock explanatory copy on search cards,
   matching the cleaned-up category archive. */
body.search.post-type-archive-product ul.products li.product .stock,
body.search ul.products li.product .stock,
body.search ul.products li.product .tn-preorder-message,
body.search ul.products li.product .backorder_notification,
body.search ul.products li.product p.stock.out-of-stock {
    display: none !important;
}

/* Prevent archive images from collapsing while lazy loading. */
body.search ul.products li.product .woocommerce-loop-product__link,
body.search ul.products li.product .product-image,
body.search ul.products li.product .product-image-wrap {
    display: block;
}

body.search ul.products li.product img {
    display: block !important;
    max-width: 100%;
    height: auto;
}

/* Search result cards use the same vertical rhythm as category cards. */
body.search ul.products li.product {
    display: flex;
    flex-direction: column;
}

body.search ul.products li.product .price {
    margin-top: auto;
}



/* ==========================================================
   v1.5.23 — ARCHIVE PRE-ORDER MESSAGE
   Hide WooCommerce/SalesKing backorder explanatory copy on
   catalogue/category/search cards. Keep price + preorder CTA.
   CSS-only: no MutationObserver / DOM rescans.
   ========================================================== */
.woocommerce ul.products li.product .stock.out-of-stock,
.woocommerce ul.products li.product p.stock.out-of-stock,
.woocommerce ul.products li.product .backorder_notification,
.woocommerce ul.products li.product .available-on-backorder,
.woocommerce ul.products li.product .tn-preorder-message,
.woocommerce-page ul.products li.product .stock.out-of-stock,
.woocommerce-page ul.products li.product p.stock.out-of-stock,
.woocommerce-page ul.products li.product .backorder_notification {
    display: none !important;
}

/* Known archive copy wrappers used by preorder/backorder output. */
.woocommerce ul.products li.product .preorder-message,
.woocommerce ul.products li.product .pre-order-message,
.woocommerce ul.products li.product .wc-pre-orders-message,
.woocommerce ul.products li.product .woocommerce-backorder-message {
    display: none !important;
}


/* ==========================================================
   v1.5.24 — CLEANER 3-LAYER DESKTOP HEADER
   1 ticker / 2 logo + utilities / 3 primary navigation
   ========================================================== */
@media (min-width:981px){
  header .head{
    min-height:112px!important;
    grid-template-columns:1fr auto 1fr!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
  }
  header .head .side.left{visibility:hidden!important;}
  header .tn-header-utilities-v1524{
    justify-self:end!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:22px!important;
    font-family:Arial,sans-serif!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:.02em!important;
  }
  header .tn-header-utilities-v1524 > a{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    color:var(--tn-menu-color,#222)!important;
    text-decoration:none!important;
    white-space:nowrap!important;
  }
  header .tn-header-utilities-v1524 > a:hover{
    color:var(--tn-menu-hover,#e98fa9)!important;
  }
  .tn-util-search-icon-v1524{
    width:14px;height:14px;display:inline-block;position:relative;
    border:1.6px solid currentColor;border-radius:50%;
  }
  .tn-util-search-icon-v1524:after{
    content:"";position:absolute;width:6px;height:1.6px;background:currentColor;
    right:-5px;bottom:-2px;transform:rotate(45deg);transform-origin:left center;
  }

  /* Utilities now live beside the logo, not among collection navigation. */
  header .navwrap ul#menu-main.nav > li.tn-desktop-utility-account-v1524,
  header .navwrap ul#menu-main.nav > li.tn-desktop-utility-login-v1524,
  header .navwrap ul#menu-main.nav > li.tn-desktop-utility-cart-v1524,
  header .navwrap ul#menu-main.nav > li#tn-search-menu-item-v158{
    display:none!important;
  }

  header .navwrap ul#menu-main.nav{
    gap:30px!important;
  }
}

/* Mobile: top header stays simple; account/cart remain in the mobile menu. */
@media (max-width:980px){
  header .tn-header-utilities-v1524 > a{display:none!important;}
  header .tn-header-utilities-v1524 .mobile{display:flex!important;}
}

/* The two linked preorder sentences are not useful in product grids.
   Their dedicated BESTEL VOORUIT control remains visible. */
.woocommerce ul.products li.product a.tn-preorder-copy-hidden-v1524{
  display:none!important;
}


/* ==========================================================
   v1.5.25 — RESTORED MINI CART ON NEW HEADER
   ========================================================== */
@media (min-width:981px){
  .tn-header-cart-wrap-v1525{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
  }
  header .tn-header-cart-wrap-v1525 > .tn-mini-cart-v142{
    display:block!important;
    top:calc(100% + 14px)!important;
    right:0!important;
    left:auto!important;
    z-index:10050!important;
  }
  header .tn-header-cart-wrap-v1525:hover > .tn-mini-cart-v142,
  header .tn-header-cart-wrap-v1525:focus-within > .tn-mini-cart-v142,
  header .tn-header-cart-wrap-v1525.tn-cart-open-v142 > .tn-mini-cart-v142{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  header .tn-header-cart-v1524.tn-cart-trigger-v142{
    padding:8px 0!important;
    min-height:0!important;
  }
}

/* Product-page fast-add states: keep the button stable while AJAX runs. */
.single-product .single_add_to_cart_button.tn-adding-v157,
.single-product .single_add_to_cart_button.tn-added-v157{
  opacity:1!important;
  cursor:default!important;
}


/* ==========================================================
   v1.5.27 — HEADER ICON REFINEMENT
   Smaller search magnifier + basket icon before MANDJE.
   ========================================================== */

/* Search icon: slightly smaller and visually quieter */
.tn-header-search-v1524 svg,
.tn-header-search-v1524 .tn-search-icon,
.tn-header-search-v1524::before {
    width: 15px !important;
    height: 15px !important;
    min-width: 15px !important;
    background-size: 15px 15px !important;
}
.tn-header-search-v1524 {
    gap: 7px !important;
}

/* Basket icon for the utility cart */
.tn-header-cart-v1524::before {
    content: "" !important;
    display: inline-block !important;
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    margin-right: 7px !important;
    vertical-align: -3px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23222222' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 9h14l-1.2 10H6.2L5 9Z'/%3E%3Cpath d='M9 9 12 4l3 5'/%3E%3C/svg%3E") !important;
}
.tn-header-cart-v1524 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
}


/* ==========================================================
   v1.5.28 — RAPID ORDER FEEDBACK
   ========================================================== */
.tn-cart-toast-v1528{
  position:fixed;
  z-index:12000;
  top:24px;
  right:24px;
  width:min(390px,calc(100vw - 48px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:16px 18px;
  background:#fff;
  color:#222;
  border:1px solid rgba(34,34,34,.14);
  box-shadow:0 14px 35px rgba(0,0,0,.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(-8px);
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  font-family:Arial,Helvetica,sans-serif;
}
.tn-cart-toast-v1528.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.tn-cart-toast-copy-v1528{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.tn-cart-toast-copy-v1528 strong{
  font-size:10px;
  font-weight:800;
  letter-spacing:.07em;
}
.tn-cart-toast-detail-v1528{
  overflow:hidden;
  font-size:12px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.tn-cart-toast-link-v1528{
  flex:0 0 auto;
  color:#222!important;
  font-size:10px;
  font-weight:800;
  letter-spacing:.045em;
  text-decoration:underline!important;
  text-underline-offset:3px;
  white-space:nowrap;
}
.woocommerce ul.products li.product .tn-archive-add.tn-adding-v1528,
.woocommerce ul.products li.product .tn-archive-add.tn-added-v1528{
  opacity:1!important;
  min-width:inherit;
}
@media(max-width:820px){
  .tn-cart-toast-v1528{
    top:auto;
    right:16px;
    bottom:16px;
    left:16px;
    width:auto;
  }
}

/* v1.6.0 Gutenberg foundation — additive; Swift Builder untouched */
.entry-content > .alignwide{width:min(1320px,calc(100% - 48px));max-width:1320px;margin-left:auto;margin-right:auto}
.entry-content > .alignfull{width:100%;max-width:none}
.entry-content > :where(p,ul,ol,h1,h2,h3,h4,h5,h6,.wp-block-buttons,.wp-block-quote,.wp-block-details){max-width:820px;margin-left:auto;margin-right:auto}
.entry-content h1{font-size:clamp(42px,6vw,82px);line-height:.98;text-wrap:balance}
.entry-content h2{font-size:clamp(32px,4vw,58px);line-height:1.02;text-wrap:balance}
.entry-content h3{font-size:clamp(24px,2.6vw,38px);line-height:1.08;text-wrap:balance}
.entry-content p,.entry-content li{line-height:1.65}
.entry-content .is-style-tn-lead{max-width:920px;font-size:clamp(20px,2vw,28px);line-height:1.42}
.wp-block-button__link{border-radius:3px!important;padding:13px 22px!important;font-family:Arial,Helvetica,sans-serif!important;font-size:11px!important;font-weight:800!important;letter-spacing:.055em!important;text-transform:uppercase!important;transition:transform .16s ease,opacity .16s ease}
.wp-block-button__link:hover{transform:translateY(-1px);opacity:.82}
.wp-block-columns{gap:clamp(22px,3vw,48px)}
.wp-block-media-text{gap:clamp(28px,5vw,80px)}
.wp-block-media-text .wp-block-media-text__content{padding:clamp(24px,5vw,72px)}
.wp-block-cover.is-style-tn-hero{min-height:clamp(480px,72vh,760px)}
.wp-block-cover.is-style-tn-hero .wp-block-cover__inner-container{width:min(1320px,calc(100% - 48px))}
.wp-block-group.is-style-tn-section{padding:clamp(52px,7vw,110px) max(24px,calc((100vw - 1320px)/2))}
.wp-block-group.is-style-tn-card{height:100%;padding:clamp(24px,3vw,42px);border:1px solid rgba(34,34,34,.12)}
.wp-block-quote.is-style-tn-big-quote{max-width:1040px;padding:0;border:0}
.wp-block-quote.is-style-tn-big-quote p{font-size:clamp(28px,4vw,54px);line-height:1.08}
.wp-block-details{padding:18px 0;border-top:1px solid rgba(34,34,34,.16);border-bottom:1px solid rgba(34,34,34,.16)}
.wp-block-details summary{cursor:pointer;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:800}
.wp-block-table{overflow-x:auto}.wp-block-table table{width:100%;border-collapse:collapse}.wp-block-table th,.wp-block-table td{padding:14px 16px;border:1px solid rgba(34,34,34,.12)}
@media(max-width:781px){.entry-content>.alignwide,.wp-block-cover.is-style-tn-hero .wp-block-cover__inner-container{width:calc(100% - 32px)}.wp-block-group.is-style-tn-section{padding:48px 16px}}

/* v1.6.1 Editorial Gutenberg — additive only */
.is-style-tn-eyebrow{font-family:Arial,sans-serif!important;font-size:10px!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important;margin-bottom:12px!important}
.is-style-tn-display{max-width:1100px!important;margin-left:auto!important;margin-right:auto!important;font-size:clamp(48px,7.2vw,104px)!important;line-height:.91!important;letter-spacing:-.035em!important;text-wrap:balance}
.wp-block-group.is-style-tn-editorial-section{padding-top:clamp(72px,10vw,150px);padding-bottom:clamp(72px,10vw,150px)}
.wp-block-image.is-style-tn-full-image img{width:100%;min-height:clamp(440px,68vw,900px);object-fit:cover}
.wp-block-media-text.is-style-tn-editorial-split{width:min(1440px,100%);max-width:1440px;gap:0;align-items:stretch}
.wp-block-media-text.is-style-tn-editorial-split .wp-block-media-text__media{min-height:clamp(520px,58vw,820px)}
.wp-block-media-text.is-style-tn-editorial-split .wp-block-media-text__media img{width:100%;height:100%;object-fit:cover}
.wp-block-media-text.is-style-tn-editorial-split .wp-block-media-text__content{display:flex;flex-direction:column;justify-content:center;padding:clamp(46px,8vw,120px)}
.wp-block-columns.is-style-tn-values{gap:0;border-top:1px solid rgba(34,34,34,.16);border-bottom:1px solid rgba(34,34,34,.16)}
.wp-block-columns.is-style-tn-values>.wp-block-column{padding:clamp(28px,4vw,52px) clamp(18px,3vw,38px)}
.wp-block-columns.is-style-tn-values>.wp-block-column+.wp-block-column{border-left:1px solid rgba(34,34,34,.16)}
.wp-block-group.is-style-tn-statement{padding:clamp(90px,14vw,210px) 24px;text-align:center}
.wp-block-group.is-style-tn-statement h2{max-width:1120px;font-size:clamp(42px,6vw,88px);line-height:.96;letter-spacing:-.025em}
@media(max-width:781px){.wp-block-media-text.is-style-tn-editorial-split .wp-block-media-text__media{min-height:430px}.wp-block-media-text.is-style-tn-editorial-split .wp-block-media-text__content{padding:42px 20px 58px}.wp-block-columns.is-style-tn-values>.wp-block-column+.wp-block-column{border-left:0;border-top:1px solid rgba(34,34,34,.16)}}

/* ==========================================================
   v1.6.2 — FASHION EDITORIAL TYPOGRAPHY
   DM Serif Display + DM Sans. Additive override only.
   ========================================================== */
:root{--tn-font-display:'DM Serif Display',Georgia,serif;--tn-font-sans:'DM Sans',Arial,sans-serif}
body,button,input,select,textarea,.nav,.side,.woocommerce,.tn-cart-page-v1511{font-family:var(--tn-font-sans)!important}
.entry-title,.woocommerce-products-header__title,.woocommerce div.product .product_title,
.tn-archive-title-v141,.tn-cart-titlebar-v1511 h1,
.wp-block-heading.is-style-tn-display,.is-style-tn-display,
.wp-block-group.is-style-tn-statement h2,
.entry-content h1,.entry-content h2,
.woocommerce-account .entry-title{font-family:var(--tn-font-display)!important;font-weight:400!important}
/* Keep product/UI hierarchy clean rather than turning the whole shop serif */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.tn-cart-item-v1511 h2,.tn-cart-cross-copy-v1511 strong,
.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{font-family:var(--tn-font-sans)!important}
.entry-title,.woocommerce-products-header__title,.woocommerce div.product .product_title,.tn-archive-title-v141{letter-spacing:-.025em!important}


/* ==========================================================
   v1.6.3 — SHOP UI COLOR TOKENS
   Scoped to commerce controls; typography colors stay separate.
   ========================================================== */
:root{
  --tn-ui-bg:#222222;
  --tn-ui-text:#ffffff;
  --tn-ui-hover:#e99bb2;
  --tn-qty-bg:#f3f1ef;
  --tn-qty-text:#222222;
  --tn-toast-bg:#ffffff;
  --tn-toast-text:#222222;
}

/* Product-grid quantity controls: minus / number / plus */
.woocommerce ul.products li.product form.cart .quantity button,
.woocommerce ul.products li.product form.cart .tn-qty-minus,
.woocommerce ul.products li.product form.cart .tn-qty-plus,
.woocommerce ul.products li.product .tn-qty-minus,
.woocommerce ul.products li.product .tn-qty-plus {
  background:var(--tn-ui-bg)!important;
  color:var(--tn-ui-text)!important;
  border-color:var(--tn-ui-bg)!important;
}
.woocommerce ul.products li.product form.cart .quantity input.qty,
.woocommerce ul.products li.product input.qty {
  background:var(--tn-qty-bg)!important;
  color:var(--tn-qty-text)!important;
}

/* Primary commerce buttons in cards and product detail */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product button.button,
.woocommerce ul.products li.product .tn-archive-add,
.single-product .single_add_to_cart_button,
.woocommerce a.checkout-button,
.woocommerce button[name="update_cart"],
.woocommerce button[name="apply_coupon"] {
  background:var(--tn-ui-bg)!important;
  color:var(--tn-ui-text)!important;
  border-color:var(--tn-ui-bg)!important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product button.button:hover,
.woocommerce ul.products li.product .tn-archive-add:hover,
.single-product .single_add_to_cart_button:hover,
.woocommerce a.checkout-button:hover,
.woocommerce button[name="update_cart"]:hover,
.woocommerce button[name="apply_coupon"]:hover {
  background:var(--tn-ui-hover)!important;
  border-color:var(--tn-ui-hover)!important;
}

/* Rapid-order notifications: both current and legacy toast markup */
.tn-cart-toast-v1528,
#tn-cart-toast-v157,
.tn-cart-toast-v157 {
  background:var(--tn-toast-bg)!important;
  color:var(--tn-toast-text)!important;
}
.tn-cart-toast-v1528 *,
#tn-cart-toast-v157 *,
.tn-cart-toast-v157 * {
  color:var(--tn-toast-text)!important;
}
.tn-cart-toast-v1528 a,
#tn-cart-toast-v157 a,
.tn-cart-toast-v157 a {
  color:var(--tn-toast-text)!important;
}

/* Keep disabled/working states readable with chosen colors. */
.woocommerce ul.products li.product .tn-archive-add.tn-adding-v1528,
.woocommerce ul.products li.product .tn-archive-add.tn-added-v1528,
.single-product .single_add_to_cart_button.tn-adding-v157,
.single-product .single_add_to_cart_button.tn-added-v157 {
  background:var(--tn-ui-bg)!important;
  color:var(--tn-ui-text)!important;
}

/* ==========================================================
   v1.6.4 — HEADER LANGUAGE SELECTOR
   Uses GTranslate's own shortcode/translation engine, but makes
   the selector a native part of the Curiositeas header.
   ========================================================== */
.tn-language-v164{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:34px;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:inherit;
}
.tn-language-globe-v164{
  width:15px;height:15px;border:1.4px solid currentColor;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:0;position:relative;flex:0 0 15px;
}
.tn-language-globe-v164:before,
.tn-language-globe-v164:after{content:"";position:absolute;left:2px;right:2px;border-top:1px solid currentColor}
.tn-language-globe-v164:before{top:4px}.tn-language-globe-v164:after{bottom:4px}
.tn-language-v164 .gtranslate_wrapper{display:flex!important;align-items:center!important}
.tn-language-v164 select,
.tn-language-v164 .gt_selector{
  appearance:none;-webkit-appearance:none;
  border:0!important;background:transparent!important;box-shadow:none!important;
  padding:4px 15px 4px 0!important;margin:0!important;
  min-width:42px!important;width:auto!important;height:auto!important;
  font:700 11px/1.2 "DM Sans",Arial,sans-serif!important;
  letter-spacing:.03em!important;text-transform:uppercase!important;color:inherit!important;
  cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;
  background-position:calc(100% - 7px) 50%,calc(100% - 3px) 50%!important;
  background-size:4px 4px,4px 4px!important;background-repeat:no-repeat!important;
}
.tn-language-v164 img,
.tn-language-v164 .gt-current-lang img{display:none!important}
.tn-language-v164 a{color:inherit!important;text-decoration:none!important}
.tn-language-placeholder-v164{padding-right:2px}
@media(max-width:900px){
  .tn-language-v164{order:-1}
  .tn-language-globe-v164{display:none}
  .tn-language-v164 select,.tn-language-v164 .gt_selector{font-size:10px!important;min-width:38px!important}
}

/* v1.6.5 — GTranslate compatibility fix */
.tn-language-v164 .switcher,
.tn-language-v164 .switcher .selected,
.tn-language-v164 .switcher .option{
  width:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-family:"DM Sans",Arial,sans-serif!important;
}
.tn-language-v164 .switcher .selected a{
  width:auto!important;
  padding:6px 18px 6px 0!important;
  border:0!important;
  background-color:transparent!important;
  font-size:11px!important;
  font-weight:700!important;
}
.tn-language-v164 .switcher .option{
  position:absolute!important;
  z-index:99999!important;
  background:#fff!important;
  min-width:150px!important;
  padding:6px!important;
  box-shadow:0 8px 30px rgba(0,0,0,.12)!important;
}
.tn-language-v164 .switcher .option a{
  display:block!important;
  padding:7px 10px!important;
  white-space:nowrap!important;
  font-size:11px!important;
}

/* v1.6.6 — Native Header Language widget */
.tn-language-v164 .tn-header-language-widget-v166,
.tn-language-v164 .widget{margin:0!important;padding:0!important}
.tn-language-v164 .widget-title{display:none!important}
.tn-language-v164 .tn-header-language-widget-v166 > *{margin:0!important}
.tn-language-v164 .gt_float_switcher,
.tn-language-v164 .gt_switcher,
.tn-language-v164 .switcher{
  box-shadow:none!important;border:0!important;background:transparent!important;
  font-family:"DM Sans",Arial,sans-serif!important
}

/* ==========================================================
   v1.6.7 — DARK EDITORIAL FOOTER
   ========================================================== */
:root{
 --tn-footer-bg:#3a1725;--tn-footer-text:#fff;--tn-footer-heading:#e99bb2;
 --tn-footer-hover:#e99bb2;--tn-footer-bottom-bg:#241018;--tn-footer-bottom-text:#fff
}
.tn-footer-v167{margin-top:80px;font-family:"DM Sans",Arial,sans-serif}
.tn-footer-main-v167{background:var(--tn-footer-bg);color:var(--tn-footer-text)}
.tn-footer-inner-v167{max-width:1440px;margin:0 auto;padding:64px 48px 72px}
.tn-footer-grid-v167{display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:48px}
.tn-footer-widget-v167{margin:0 0 28px;padding:0;background:transparent!important;border:0!important}
.tn-footer-title-v167{
 margin:0 0 22px;color:var(--tn-footer-heading)!important;
 font-family:"DM Sans",Arial,sans-serif!important;font-size:12px!important;
 line-height:1.2!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase
}
.tn-footer-v167,.tn-footer-v167 p,.tn-footer-v167 li,.tn-footer-v167 a{
 color:var(--tn-footer-text);font-size:15px;line-height:1.55
}
.tn-footer-v167 ul{list-style:none;margin:0;padding:0}
.tn-footer-v167 li{margin:0 0 12px;padding:0}
.tn-footer-v167 a{text-decoration:none!important;transition:opacity .18s ease,color .18s ease}
.tn-footer-v167 a:hover{color:var(--tn-footer-hover)!important}
.tn-footer-v167 img{max-width:190px;height:auto}
.tn-footer-bottom-v167{background:var(--tn-footer-bottom-bg);color:var(--tn-footer-bottom-text)}
.tn-footer-bottom-inner-v167{
 max-width:1440px;margin:0 auto;min-height:52px;padding:12px 48px;
 display:flex;align-items:center;justify-content:space-between;gap:28px
}
.tn-footer-copyright-v167,.tn-footer-bottom-v167 a{
 color:var(--tn-footer-bottom-text)!important;font-size:11px;line-height:1.3;
 letter-spacing:.04em;text-transform:uppercase
}
.tn-footer-bottom-widget-v167 .widget{margin:0;padding:0}
.tn-footer-bottom-widget-v167 img{max-height:24px;width:auto}
@media(max-width:980px){
 .tn-footer-grid-v167{grid-template-columns:repeat(2,1fr);gap:38px 30px}
 .tn-footer-column-1{grid-column:1/-1}
}
@media(max-width:620px){
 .tn-footer-v167{margin-top:56px}
 .tn-footer-inner-v167{padding:44px 24px 48px}
 .tn-footer-grid-v167{grid-template-columns:1fr;gap:18px}
 .tn-footer-column-1{grid-column:auto}
 .tn-footer-bottom-inner-v167{padding:16px 24px;min-height:0;align-items:flex-start;flex-direction:column}
}

/* v1.6.8 — three-column footer */
.tn-footer-grid-v167{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(40px,7vw,110px)!important;
}
@media(max-width:760px){
  .tn-footer-grid-v167{grid-template-columns:1fr!important;gap:24px!important}
  .tn-footer-column-1{grid-column:auto!important}
}

/* ==========================================================
   v1.6.9 — TRUE SEAMLESS TICKER
   Two identical measured groups; animation ends exactly where
   the second group begins, so there is no empty gap/reset.
   ========================================================== */
.tn-ticker-v1524,
.tn-ticker,
.announcement-marquee,
.tn-announcement{overflow:hidden!important}
.tn-ticker-v1524 .tn-ticker-track-v1524,
.tn-ticker .tn-ticker-track,
.announcement-marquee .marquee-track,
.tn-announcement .tn-announcement-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  width:max-content!important;
  will-change:transform;
  animation:tnSeamlessMarquee169 48s linear infinite!important;
}
.tn-marquee-set-v169{
  display:inline-flex!important;
  flex:none!important;
  align-items:center;
  white-space:nowrap!important;
}
.tn-marquee-piece-v169{display:inline-flex!important;flex:none!important;align-items:center}
@keyframes tnSeamlessMarquee169{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--tn-marquee-distance)),0,0)}
}
@media(prefers-reduced-motion:reduce){
 .tn-ticker-v1524 .tn-ticker-track-v1524,
 .tn-ticker .tn-ticker-track,
 .announcement-marquee .marquee-track,
 .tn-announcement .tn-announcement-track{animation:none!important}
}

/* v1.7.0 — original footer widget-area compatibility */
.tn-footer-grid-v167 > .tn-footer-column-v167 > .widget,
.tn-footer-grid-v167 > .tn-footer-column-v167 > section{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
.tn-footer-grid-v167 .widget{margin:0 0 28px!important;padding:0!important;background:transparent!important;border:0!important}
.tn-footer-grid-v167 .widget-title{
  margin:0 0 22px!important;
  color:var(--tn-footer-heading)!important;
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:12px!important;line-height:1.2!important;font-weight:700!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;
}


/* ==========================================================
   v1.7.2 — FOOTER TOP GAP FIX
   Content should connect directly to the dark footer.
   Keep the separate pink copyright bar untouched.
   ========================================================== */
.tn-footer-v167{
  margin-top:0!important;
}
body > .tn-footer-v167,
#page > .tn-footer-v167,
.site > .tn-footer-v167{
  margin-top:0!important;
}
.tn-footer-v167::before{
  display:none!important;
  content:none!important;
}
.tn-footer-main-v167{
  margin-top:0!important;
  border-top:0!important;
}

/* Prevent empty legacy footer spacing immediately before the new footer. */
.site-content + .tn-footer-v167,
#main + .tn-footer-v167,
main + .tn-footer-v167{
  margin-top:0!important;
}

@media(max-width:620px){
  .tn-footer-v167{
    margin-top:0!important;
  }
}

/* ==========================================================
   v1.7.3 — STRUCTURAL FOOTER + ACTUAL SERVICE TICKER FIX
   ========================================================== */

/* Header opens <main>; footer now closes it before <footer>.
   This prevents the page/main background from becoming a band
   inside/above the footer. */
main{margin-bottom:0!important;padding-bottom:0}
main > *:last-child{margin-bottom:0}
.tn-footer-v167{margin:0!important}

/* Actual ticker classes used by header.php. */
.service{
  overflow:hidden!important;
  white-space:nowrap!important;
  background:var(--tn-ticker-bg,#252426)!important;
  color:var(--tn-ticker-text,#fff)!important;
}
.service-track{
  display:flex!important;
  width:max-content!important;
  padding:8px 0!important;
  animation:tn-service-seamless-v173 var(--tn-ticker-speed,70s) linear infinite!important;
  will-change:transform;
}
.service-group{
  display:flex!important;
  flex:none!important;
  align-items:center!important;
  white-space:nowrap!important;
}
.service-group > span{
  display:block!important;
  flex:none!important;
  padding:0 28px!important;
}
/* v1.6.61: bolletje-scheidingsteken tussen de ticker-items niet fraai gevonden — gewoon
   verbergen. De spatiëring komt nog steeds netjes uit door de padding op
   .service-group > span hierboven, dus geen andere opmaak hoeft aangepast te worden. */
.service-separator{display:none!important}
/* v1.6.61: nu 10 kopieën i.p.v. 2 (zie header.php) voor een altijd-naadloze loop, dus
   1 cyclus is nu 1/10e van de totale tracklengte i.p.v. de helft. De totale duur
   (--tn-ticker-speed) blijft ongewijzigd, dus de scrolsnelheid in px/sec blijft precies
   hetzelfde als voorheen — alleen de kale plek aan het einde van elke cyclus is weg. */
@keyframes tn-service-seamless-v173{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-10%,0,0)}
}
@media(prefers-reduced-motion:reduce){
  .service-track{animation:none!important}
}

/* v1.8.0 — Gutenberg system refinements */
:where(.wp-site-blocks,.entry-content) .has-bordeaux-background-color a:not(.wp-block-button__link){color:inherit}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent!important;color:var(--tn-ui-bg,#222)!important;border:1px solid currentColor!important}
.is-style-tn-editorial-split.has-media-on-the-right .wp-block-media-text__content{order:1}
.is-style-tn-editorial-split.has-media-on-the-right .wp-block-media-text__media{order:2}

/* ==========================================================
   v1.8.1 — COLLECTION PAGE + GUTENBERG PRODUCT GRID
   ========================================================== */
.tn-collection-page-v181{padding-top:var(--wp--preset--spacing--xl);padding-bottom:var(--wp--preset--spacing--l)}
.tn-square-intro-v181{margin-top:0!important;margin-bottom:var(--wp--preset--spacing--xxl)!important}
.tn-square-intro-v181 .wp-block-media-text__media{aspect-ratio:1/1;overflow:hidden;background:var(--wp--preset--color--mist)}
.tn-square-intro-v181 .wp-block-media-text__media img{width:100%!important;height:100%!important;object-fit:cover!important}
.tn-square-intro-v181 .wp-block-media-text__content{padding:clamp(32px,6vw,88px)!important}

.tn-gutenberg-products-v181{margin-top:var(--wp--preset--spacing--xl)!important;margin-bottom:var(--wp--preset--spacing--xxl)!important}
.tn-gutenberg-products-v181 ul.products{
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:48px 24px!important;margin:38px 0 0!important;padding:0!important;width:100%!important
}
.tn-gutenberg-products-v181 ul.products:before,
.tn-gutenberg-products-v181 ul.products:after{display:none!important}
.tn-gutenberg-products-v181 ul.products li.product{
 float:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
 display:flex!important;flex-direction:column!important;position:relative!important
}
.tn-gutenberg-products-v181 ul.products li.product > a:first-child{display:block!important;width:100%!important}
.tn-gutenberg-products-v181 ul.products li.product img{
 width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important;
 display:block!important;margin:0 0 20px!important;background:rgba(255,255,255,.22)
}
.tn-gutenberg-products-v181 ul.products li.product h2,
.tn-gutenberg-products-v181 ul.products li.product .woocommerce-loop-product__title{
 font-family:"DM Serif Display",Georgia,serif!important;font-size:20px!important;line-height:1.12!important;
 min-height:2.35em!important;margin:0 0 12px!important;overflow-wrap:anywhere!important
}
.tn-gutenberg-products-v181 ul.products li.product .price{
 display:block!important;margin:0 0 18px!important;min-height:25px!important;font-size:16px!important
}
.tn-gutenberg-products-v181 ul.products li.product form.cart,
.tn-gutenberg-products-v181 ul.products li.product .tn-archive-cart,
.tn-gutenberg-products-v181 ul.products li.product .tn-archive-form{
 margin-top:auto!important;width:100%!important;min-width:0!important
}
.tn-gutenberg-products-v181 ul.products li.product .tn-archive-cart-row,
.tn-gutenberg-products-v181 ul.products li.product .tn-archive-cart-controls{
 width:100%!important;min-width:0!important
}
.tn-gutenberg-products-v181 ul.products li.product .button,
.tn-gutenberg-products-v181 ul.products li.product button{
 min-width:0!important;white-space:nowrap!important
}
.tn-related-products-v181{padding-top:var(--wp--preset--spacing--l)}
@media(max-width:1024px){
 .tn-gutenberg-products-v181 ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
 .tn-square-intro-v181{grid-template-columns:1fr!important}
 .tn-gutenberg-products-v181 ul.products{grid-template-columns:1fr!important;gap:40px!important}
 .tn-gutenberg-products-v181 ul.products li.product h2,
 .tn-gutenberg-products-v181 ul.products li.product .woocommerce-loop-product__title{min-height:0!important}
}

/* ==========================================================
   v1.8.2 — PRODUCT BLOCK REBUILD + B2B HOMEPAGE
   ========================================================== */

/* Pattern instructions belong in the editor, not on the live page. */
body:not(.wp-admin) .tn-pattern-helper-v182{display:none!important}

/* Gutenberg product cards: isolate every card so controls can never run into neighbours. */
.tn-gutenberg-products-v181 ul.products{
  align-items:stretch!important;
  column-gap:28px!important;
  row-gap:56px!important;
}
.tn-gutenberg-products-v181 ul.products li.product{
  box-sizing:border-box!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
.tn-gutenberg-products-v181 ul.products li.product .woocommerce-loop-product__link{
  min-width:0!important;
}
.tn-gutenberg-products-v181 ul.products li.product h2,
.tn-gutenberg-products-v181 ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--tn-font-sans)!important;
  font-size:17px!important;
  line-height:1.18!important;
  min-height:2.45em!important;
  margin:0 0 10px!important;
}
.tn-gutenberg-products-v181 ul.products li.product .stock,
.tn-gutenberg-products-v181 ul.products li.product .tn-preorder-note,
.tn-gutenberg-products-v181 ul.products li.product p:not(.price){
  font-size:12px!important;
  line-height:1.45!important;
  margin:0 0 10px!important;
}
.tn-gutenberg-products-v181 .tn-archive-fast-order{
  width:100%!important;
  min-width:0!important;
  margin-top:auto!important;
  overflow:hidden!important;
}
.tn-gutenberg-products-v181 .tn-archive-order-row{
  display:grid!important;
  grid-template-columns:38px 48px 38px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
}
.tn-gutenberg-products-v181 .tn-archive-qbtn,
.tn-gutenberg-products-v181 .tn-archive-order-row .qty,
.tn-gutenberg-products-v181 .tn-archive-add{
  box-sizing:border-box!important;
  min-width:0!important;
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
}
.tn-gutenberg-products-v181 .tn-archive-qbtn{font-size:17px!important}
.tn-gutenberg-products-v181 .tn-archive-add{
  padding:0 6px!important;
  font-size:9px!important;
  line-height:1.05!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media(max-width:1180px) and (min-width:1025px){
 .tn-gutenberg-products-v181 .tn-archive-order-row{grid-template-columns:34px 44px 34px minmax(0,1fr)!important}
 .tn-gutenberg-products-v181 .tn-archive-add{font-size:8px!important;padding:0 4px!important}
}

/* B2B homepage */
.tn-home-hero-v182{padding-top:clamp(80px,10vw,150px)!important;padding-bottom:clamp(70px,9vw,130px)!important}
.tn-home-hero-v182 h1{max-width:1000px;margin-left:auto!important;margin-right:auto!important}
.tn-home-hero-v182 .has-lead-font-size{max-width:720px;margin-left:auto!important;margin-right:auto!important}
.tn-home-meta-v182{margin-top:28px!important;font-size:11px!important;font-weight:700!important;letter-spacing:.08em!important}
.tn-home-routes-v182{padding-top:70px!important;padding-bottom:90px!important;border-top:1px solid rgba(34,34,34,.18)}
.tn-home-routes-v182 .wp-block-column{border-top:1px solid currentColor;padding-top:22px}
.tn-home-routes-v182 h3,.tn-home-usps-v182 h3{font-family:var(--tn-font-sans)!important;font-size:18px!important}
.tn-home-story-v182{margin-bottom:120px!important}
.tn-home-story-v182 .wp-block-media-text__media{aspect-ratio:1/1;overflow:hidden;background:var(--wp--preset--color--mist)}
.tn-home-story-v182 .wp-block-media-text__media img{width:100%!important;height:100%!important;object-fit:cover!important}
.tn-home-story-v182 .wp-block-media-text__content{padding:clamp(35px,6vw,90px)!important}
.tn-home-collections-v182{margin-bottom:120px!important}
.tn-home-collections-v182 .wp-block-columns{margin-top:38px!important;gap:24px!important}
.tn-home-collections-v182 .wp-block-column h3{font-family:var(--tn-font-sans)!important;font-size:16px!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.tn-home-campaign-v182{margin-top:110px!important;margin-bottom:100px!important;background:var(--wp--preset--color--soft-pink)}
.tn-home-usps-v182{padding-bottom:100px!important;gap:36px!important}
.tn-home-usps-v182 .wp-block-column{border-top:1px solid currentColor;padding-top:20px}
.tn-home-instagram-v182{padding-bottom:100px!important}
@media(max-width:781px){
 .tn-home-routes-v182,.tn-home-usps-v182{gap:38px!important}
 .tn-home-story-v182{margin-bottom:80px!important}
 .tn-home-collections-v182{margin-bottom:80px!important}
}

/* ==========================================================
   v1.8.3 — WIDER EDITORIAL LAYOUT + BLOCK VALIDATION
   ========================================================== */

/* The theme's legacy content wrappers were still constraining Gutenberg.
   Wide patterns now use the actual viewport much more effectively. */
.entry-content > .alignwide,
.wp-block-post-content > .alignwide,
main .alignwide{
  width:min(1440px,calc(100vw - 64px))!important;
  max-width:min(1440px,calc(100vw - 64px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.entry-content > .alignfull,
.wp-block-post-content > .alignfull,
main .alignfull{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}

/* Product section itself should use the full wide canvas. */
.tn-gutenberg-products-v181{
  width:min(1440px,calc(100vw - 64px))!important;
  max-width:min(1440px,calc(100vw - 64px))!important;
}
.tn-gutenberg-products-v181 ul.products{
  width:100%!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:64px 32px!important;
}
.tn-gutenberg-products-v181 ul.products li.product h2,
.tn-gutenberg-products-v181 ul.products li.product .woocommerce-loop-product__title{
  min-height:0!important;
}

/* More room for the add-to-cart label than v1.8.2. */
.tn-gutenberg-products-v181 .tn-archive-order-row{
  grid-template-columns:44px 56px 44px minmax(110px,1fr)!important;
}
.tn-gutenberg-products-v181 .tn-archive-add{
  font-size:10px!important;
  padding:0 10px!important;
  text-overflow:clip!important;
}

/* Homepage wide sections */
.tn-home-routes-v182,
.tn-home-story-v182,
.tn-home-collections-v182,
.tn-home-usps-v182,
.tn-home-instagram-v182{
  width:min(1440px,calc(100vw - 64px))!important;
  max-width:min(1440px,calc(100vw - 64px))!important;
  margin-left:auto!important;margin-right:auto!important;
}
.tn-home-routes-v182{gap:48px!important}
.tn-home-usps-v182{gap:48px!important}

@media(max-width:1024px){
 .entry-content > .alignwide,.wp-block-post-content > .alignwide,main .alignwide,
 .tn-gutenberg-products-v181,.tn-home-routes-v182,.tn-home-story-v182,
 .tn-home-collections-v182,.tn-home-usps-v182,.tn-home-instagram-v182{
   width:calc(100vw - 40px)!important;max-width:calc(100vw - 40px)!important
 }
 .tn-gutenberg-products-v181 ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
 .entry-content > .alignwide,.wp-block-post-content > .alignwide,main .alignwide,
 .tn-gutenberg-products-v181,.tn-home-routes-v182,.tn-home-story-v182,
 .tn-home-collections-v182,.tn-home-usps-v182,.tn-home-instagram-v182{
   width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)!important
 }
 .tn-gutenberg-products-v181 ul.products{grid-template-columns:1fr!important}
}

/* ==========================================================
   v1.8.4 — TRUE FULL-WIDTH PRODUCT GRID
   The constrained Group layout was still applying contentSize
   to the shortcode and WooCommerce wrapper inside the wide group.
   ========================================================== */

/* Break the product component out of Gutenberg's constrained inner width. */
.tn-gutenberg-products-v181.wp-block-group{
  box-sizing:border-box!important;
  width:min(1560px,calc(100vw - 80px))!important;
  max-width:min(1560px,calc(100vw - 80px))!important;
  padding-left:0!important;
  padding-right:0!important;
}
.tn-gutenberg-products-v181.wp-block-group > *,
.tn-gutenberg-products-v181 .wp-block-shortcode,
.tn-gutenberg-products-v181 .woocommerce,
.tn-gutenberg-products-v181 .woocommerce.columns-4{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* WooCommerce's legacy column widths are completely neutralised here. */
.tn-gutenberg-products-v181 ul.products,
.tn-gutenberg-products-v181 ul.products.columns-4{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:64px 36px!important;
  width:100%!important;
  max-width:none!important;
}
.tn-gutenberg-products-v181 ul.products li.product,
.tn-gutenberg-products-v181 ul.products.columns-4 li.product,
.woocommerce .tn-gutenberg-products-v181 ul.products li.product{
  box-sizing:border-box!important;
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
}

/* Cards get a generous image and a full-width ordering bar. */
.tn-gutenberg-products-v181 ul.products li.product img{
  width:100%!important;
  max-width:none!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
}
.tn-gutenberg-products-v181 .tn-archive-fast-order,
.tn-gutenberg-products-v181 form.cart{
  width:100%!important;
  max-width:none!important;
}
.tn-gutenberg-products-v181 .tn-archive-order-row{
  grid-template-columns:46px 62px 46px minmax(130px,1fr)!important;
}
.tn-gutenberg-products-v181 .tn-archive-add{
  white-space:nowrap!important;
  overflow:visible!important;
  font-size:10px!important;
}

/* Heading/helper align to the same full product canvas. */
.tn-gutenberg-products-v181 > h2,
.tn-gutenberg-products-v181 > .wp-block-heading,
.tn-gutenberg-products-v181 > .is-style-tn-eyebrow,
.tn-gutenberg-products-v181 > .tn-pattern-helper-v182{
  width:100%!important;
  max-width:none!important;
}

@media(max-width:1200px){
 .tn-gutenberg-products-v181.wp-block-group{
   width:calc(100vw - 48px)!important;max-width:calc(100vw - 48px)!important
 }
 .tn-gutenberg-products-v181 ul.products,
 .tn-gutenberg-products-v181 ul.products.columns-4{
   grid-template-columns:repeat(2,minmax(0,1fr))!important
 }
}
@media(max-width:680px){
 .tn-gutenberg-products-v181.wp-block-group{
   width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)!important
 }
 .tn-gutenberg-products-v181 ul.products,
 .tn-gutenberg-products-v181 ul.products.columns-4{
   grid-template-columns:1fr!important
 }
}

/* ==========================================================
   v1.8.5 — GUTENBERG PRODUCT CARD ISOLATION
   Reset legacy WooCommerce/theme column + flex rules inside
   Curiositeas Gutenberg product sections only.
   ========================================================== */

.tn-gutenberg-products-v181 .woocommerce.columns-4{
    display:block!important;
    width:100%!important;
    max-width:none!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products.columns-4,
.tn-gutenberg-products-v181 .woocommerce ul.products{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    column-gap:40px!important;
    row-gap:64px!important;
    width:100%!important;
    max-width:none!important;
    margin:36px 0 0!important;
    padding:0!important;
    align-items:stretch!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products.columns-4::before,
.tn-gutenberg-products-v181 .woocommerce ul.products.columns-4::after,
.tn-gutenberg-products-v181 .woocommerce ul.products::before,
.tn-gutenberg-products-v181 .woocommerce ul.products::after{
    display:none!important;
    content:none!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products.columns-4 > li.product,
.tn-gutenberg-products-v181 .woocommerce ul.products > li.product{
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    flex:0 0 auto!important;
    float:none!important;
    clear:none!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products > li.product > a.woocommerce-LoopProduct-link{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products > li.product img{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    margin:0 0 22px!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products > li.product .woocommerce-loop-product__title{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0 0 10px!important;
}

.tn-gutenberg-products-v181 .woocommerce ul.products > li.product .price{
    width:100%!important;
    margin:0 0 16px!important;
}

/* Push the rapid-order control to the bottom, but keep every control
   strictly inside its own product card. */
.tn-gutenberg-products-v181 .woocommerce ul.products > li.product form.cart,
.tn-gutenberg-products-v181 .woocommerce ul.products > li.product .tn-archive-fast-order,
.tn-gutenberg-products-v181 .woocommerce ul.products > li.product .tn-archive-form{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-top:auto!important;
    overflow:hidden!important;
}

.tn-gutenberg-products-v181 .tn-archive-order-row,
.tn-gutenberg-products-v181 .tn-archive-cart-row,
.tn-gutenberg-products-v181 .tn-archive-cart-controls{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:44px 56px 44px minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    overflow:hidden!important;
}

.tn-gutenberg-products-v181 .tn-archive-order-row > *,
.tn-gutenberg-products-v181 .tn-archive-cart-row > *,
.tn-gutenberg-products-v181 .tn-archive-cart-controls > *{
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
}

.tn-gutenberg-products-v181 .tn-archive-add,
.tn-gutenberg-products-v181 .add_to_cart_button,
.tn-gutenberg-products-v181 .ajax_add_to_cart{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding-left:8px!important;
    padding-right:8px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

/* Do not show pattern editing instructions on the storefront. */
body:not(.wp-admin) .tn-pattern-helper-v182{
    display:none!important;
}

@media (max-width:1100px){
    .tn-gutenberg-products-v181 .woocommerce ul.products.columns-4,
    .tn-gutenberg-products-v181 .woocommerce ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media (max-width:620px){
    .tn-gutenberg-products-v181 .woocommerce ul.products.columns-4,
    .tn-gutenberg-products-v181 .woocommerce ul.products{
        grid-template-columns:1fr!important;
        row-gap:44px!important;
    }
}

/* v1.8.6 — SIMPLE EDITORIAL ABOUT PAGE */
.tn-about-v186{padding-top:clamp(70px,9vw,140px)!important;padding-bottom:clamp(45px,6vw,90px)!important}
.tn-about-v186 h1{max-width:950px!important}
.tn-about-lead-v186{max-width:760px!important}
.tn-about-hero-image-v186{margin-bottom:clamp(70px,9vw,130px)!important}
.tn-about-hero-image-v186 img{width:100%!important}
.tn-about-story-v186{margin-bottom:clamp(80px,10vw,150px)!important}
.tn-about-story-v186 .wp-block-media-text__media{aspect-ratio:1/1;overflow:hidden;background:#f4eeee}
.tn-about-story-v186 .wp-block-media-text__media img{width:100%!important;height:100%!important;object-fit:cover!important}
.tn-about-story-v186 .wp-block-media-text__content{padding:clamp(35px,6vw,90px)!important}
.tn-about-statement-v186{padding:clamp(90px,12vw,180px) 32px!important}
.tn-about-statement-v186 h2{max-width:1100px!important;margin:auto!important}
.tn-about-values-v186{padding-top:90px!important;padding-bottom:110px!important;gap:50px!important}
.tn-about-values-v186 .wp-block-column{border-top:1px solid currentColor;padding-top:20px}
.tn-about-values-v186 h3{font-family:var(--tn-font-sans)!important;font-size:20px!important}
.tn-about-cta-v186{border-top:1px solid currentColor;padding-top:55px!important;padding-bottom:120px!important}
.tn-about-cta-v186 h2{max-width:750px!important}

/* v1.8.7 — ABOUT PAGE BASED ON EXISTING CURIOSITEAS STRUCTURE */
.tn-about-original-v187{padding-top:70px!important;padding-bottom:120px!important}
.tn-about-intro-v187{gap:70px!important;align-items:flex-start!important;margin-bottom:90px!important}
.tn-about-hello-v187{font-family:var(--tn-font-sans)!important;font-size:clamp(45px,5vw,82px)!important;line-height:.84!important;letter-spacing:-.055em!important;margin:0!important}
.tn-about-intro-v187 p,.tn-about-planet-v187 p,.tn-about-bottom-v187 p{font-size:16px!important;line-height:1.45!important}
.tn-lined-heading-v187{font-size:28px!important;display:flex!important;align-items:center!important;gap:14px!important;margin-bottom:34px!important;white-space:nowrap!important}
.tn-lined-heading-v187:before,.tn-lined-heading-v187:after{content:""!important;height:1px!important;background:currentColor!important;flex:1 1 auto!important}
.tn-about-signoff-v187{font-family:"DM Serif Display",Georgia,serif!important;font-size:24px!important;font-style:italic!important;margin-top:28px!important}
.tn-about-planet-v187{gap:70px!important;align-items:center!important;margin-bottom:100px!important}
.tn-about-photo-collage-v187{position:relative!important;min-height:590px!important}
.tn-about-photo-collage-v187 figure{position:absolute!important;margin:0!important;background:#fff!important;padding:8px!important;box-sizing:border-box!important}
.tn-about-photo-collage-v187 figure img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;background:#f4eeee}
.tn-about-photo-one-v187{width:58%!important;aspect-ratio:3/4!important;right:5%!important;top:0!important}
.tn-about-photo-two-v187{width:50%!important;aspect-ratio:3/4!important;left:5%!important;bottom:0!important;z-index:2!important}
.tn-about-bottom-v187{gap:70px!important}
.tn-about-bottom-v187 .wp-block-column{min-width:0!important}
@media(max-width:900px){
 .tn-about-intro-v187,.tn-about-planet-v187,.tn-about-bottom-v187{gap:45px!important}
 .tn-about-intro-v187{flex-wrap:wrap!important}
 .tn-about-intro-v187>.wp-block-column{flex-basis:100%!important}
 .tn-about-photo-collage-v187{min-height:480px!important}
}
@media(max-width:781px){
 .tn-lined-heading-v187{font-size:24px!important;white-space:normal!important}
 .tn-about-planet-v187,.tn-about-bottom-v187{display:block!important}
 .tn-about-planet-v187>.wp-block-column,.tn-about-bottom-v187>.wp-block-column{margin-bottom:55px!important}
 .tn-about-photo-collage-v187{min-height:520px!important}
}

/* ==========================================================
   v1.8.8 — ABOUT: WIDE EDITORIAL LAYOUT
   Keep the original column structure, but use the same generous
   canvas as the shop/product patterns.
   ========================================================== */
.tn-about-original-v187.wp-block-group{
  box-sizing:border-box!important;
  width:min(1560px,calc(100vw - 80px))!important;
  max-width:min(1560px,calc(100vw - 80px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.tn-about-original-v187.wp-block-group > *{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Intro: deliberately generous 34/66 split. */
.tn-about-intro-v187{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:clamp(60px,7vw,120px)!important;
  width:100%!important;
}
.tn-about-intro-v187 > .wp-block-column:first-child{flex:0 0 34%!important}
.tn-about-intro-v187 > .wp-block-column:last-child{flex:1 1 66%!important;min-width:0!important}

/* Hello becomes part of the same DM Serif editorial language. */
.tn-about-hello-v187{
  font-family:"DM Serif Display",Georgia,serif!important;
  font-weight:400!important;
  font-size:clamp(54px,5.8vw,96px)!important;
  line-height:.88!important;
  letter-spacing:-.035em!important;
}

/* Sustainability row uses the full canvas too. */
.tn-about-planet-v187{
  width:100%!important;
  gap:clamp(70px,8vw,130px)!important;
}
.tn-about-planet-v187 > .wp-block-column:first-child{flex:0 0 52%!important}
.tn-about-planet-v187 > .wp-block-column:last-child{flex:1 1 48%!important;min-width:0!important}

/* Bottom two-column story stays 50/50 but with breathing room. */
.tn-about-bottom-v187{
  width:100%!important;
  gap:clamp(60px,7vw,110px)!important;
}
.tn-about-bottom-v187 > .wp-block-column{
  flex:1 1 0!important;
  min-width:0!important;
}

@media(max-width:1100px){
 .tn-about-original-v187.wp-block-group{
   width:calc(100vw - 48px)!important;
   max-width:calc(100vw - 48px)!important;
 }
 .tn-about-intro-v187{gap:50px!important}
 .tn-about-hello-v187{font-size:clamp(48px,7vw,74px)!important}
}
@media(max-width:781px){
 .tn-about-original-v187.wp-block-group{
   width:calc(100vw - 28px)!important;
   max-width:calc(100vw - 28px)!important;
 }
 .tn-about-intro-v187{display:block!important}
 .tn-about-intro-v187 > .wp-block-column{width:100%!important;max-width:none!important}
 .tn-about-intro-v187 > .wp-block-column:first-child{margin-bottom:55px!important}
 .tn-about-hello-v187{font-size:clamp(48px,14vw,72px)!important}
}

/* ==========================================================
   v1.8.9 — REUSABLE LINED HEADING
   Gutenberg Heading > Styles > Curiositeas Lined
   ========================================================== */
.wp-block-heading.is-style-tn-lined{
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  width:100%!important;
}
.wp-block-heading.is-style-tn-lined::before,
.wp-block-heading.is-style-tn-lined::after{
  content:""!important;
  height:1px!important;
  background:currentColor!important;
  flex:1 1 40px!important;
  min-width:28px!important;
}
.wp-block-heading.is-style-tn-lined.has-text-align-left::before{flex-grow:.25!important}
.wp-block-heading.is-style-tn-lined.has-text-align-right::after{flex-grow:.25!important}

/* Global grid rule: verbose production/backorder prose never belongs on cards.
   Product detail pages retain the full explanation. */
ul.products li.product .tn-preorder-note,
ul.products li.product .tn-preorder-message,
ul.products li.product .preorder-message,
ul.products li.product .pre-order-message,
ul.products li.product .wc-pre-orders-message,
ul.products li.product .backorder-notification,
ul.products li.product .stock.out-of-stock{
  display:none!important;
}

/* Rapid-order grids use the compact toast, never Woo's large success banner. */
html.tn-has-rapid-order-grid-v1529 .woocommerce-notices-wrapper .woocommerce-message{
  display:none!important;
}

/* Mini cart is a fully opaque layer above BOTH header rows/navigation. */
header .tn-header-cart-wrap-v1525{
  z-index:2147483000!important;
}
header .tn-header-cart-wrap-v1525 > .tn-mini-cart-v142{
  z-index:2147483640!important;
  background:#f6b0b8!important;
  opacity:0!important;
  isolation:isolate!important;
  backdrop-filter:none!important;
}
header .tn-header-cart-wrap-v1525:hover > .tn-mini-cart-v142,
header .tn-header-cart-wrap-v1525:focus-within > .tn-mini-cart-v142,
header .tn-header-cart-wrap-v1525.tn-cart-open-v142 > .tn-mini-cart-v142{
  opacity:1!important;
}
header .tn-mini-cart-v142,
header .tn-mini-cart-v142 .tn-mini-cart-head-v142,
header .tn-mini-cart-v142 .tn-mini-cart-items-v142,
header .tn-mini-cart-v142 .tn-mini-cart-foot-v142,
header .tn-mini-cart-v142 .tn-mini-cart-item-v142{
  background:#f6b0b8!important;
}

/* ==========================================================
   v1.9.0 — NATIVE GUTENBERG SERVICE INFO + PARALLAX
   ========================================================== */
.wp-block-group.is-style-tn-info-card{
  border-top:1px solid currentColor!important;
  padding:24px 0 30px!important;
}
.wp-block-group.is-style-tn-info-card h3{
  margin-top:10px!important;margin-bottom:10px!important;
}
.tn-service-info-v190{gap:42px!important;margin-top:60px!important;margin-bottom:80px!important}

/* Core Cover supplies the image; theme supplies restrained parallax behavior. */
.wp-block-cover.is-style-tn-parallax{
  overflow:hidden!important;
  background-attachment:fixed!important;
  background-position:center!important;
  background-size:cover!important;
}
.wp-block-cover.is-style-tn-parallax .wp-block-cover__image-background{
  transform:scale(1.08)!important;
  min-height:112%!important;
}
.wp-block-cover.is-style-tn-parallax .wp-block-cover__inner-container{
  position:relative!important;z-index:2!important;
}
@media(max-width:900px),(prefers-reduced-motion:reduce){
 .wp-block-cover.is-style-tn-parallax{background-attachment:scroll!important}
 .wp-block-cover.is-style-tn-parallax .wp-block-cover__image-background{transform:none!important;min-height:100%!important}
}

/* Last-resort known wrappers: hidden in EVERY product grid, never on single product. */
ul.products li.product .stock.out-of-stock,
ul.products li.product p.stock.out-of-stock,
ul.products li.product .backorder_notification,
ul.products li.product .available-on-backorder,
ul.products li.product .tn-preorder-message,
ul.products li.product .tn-preorder-note,
ul.products li.product .preorder-message,
ul.products li.product .pre-order-message,
ul.products li.product .woocommerce-backorder-message{
 display:none!important;
}

/* ==========================================================
   v1.9.7 — SEMANTIC MEGA MENU LAYOUT
   ========================================================== */
@media(min-width:901px){
 body .tn-mega-parent-v191 > ul.sub-menu{
   width:100vw!important;min-width:100vw!important;max-width:none!important;
   left:0!important;right:auto!important;margin-left:calc(50% - 50vw)!important;
   padding:0!important;column-count:initial!important;
 }
 body .tn-mega-shell-v197{
   box-sizing:border-box!important;
   width:min(1560px,calc(100vw - 80px))!important;
   margin:0 auto!important;padding:34px 0 40px!important;
   display:grid!important;grid-template-columns:minmax(0,1fr) 320px!important;
   gap:70px!important;align-items:start!important;
 }
 body .tn-mega-columns-v197{
   display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
   gap:clamp(38px,4vw,72px)!important;width:100%!important;min-width:0!important;
 }
 body .tn-mega-lane-v197{min-width:0!important;width:100%!important}
 body .tn-mega-group-v197{margin:0 0 22px!important}
 body .tn-mega-title-v197{
   color:var(--tn-mega-heading-color,#fff)!important;
   font-family:var(--tn-font-sans,Arial,sans-serif)!important;
   font-size:11px!important;font-weight:800!important;line-height:1.2!important;
   letter-spacing:.09em!important;text-transform:uppercase!important;margin:0 0 10px!important;
 }
 body .tn-mega-links-v197,
 body .tn-mega-loose-v197{display:block!important;width:100%!important;min-width:0!important}
 body .tn-mega-links-v197>li,
 body .tn-mega-loose-v197>li{
   display:block!important;position:static!important;float:none!important;
   width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;
 }
 body .tn-mega-links-v197>li>a,
 body .tn-mega-loose-v197>li>a{
   display:block!important;width:100%!important;min-width:0!important;max-width:none!important;
   color:var(--tn-sub-color)!important;background:transparent!important;
   font-family:var(--tn-font-sans,Arial,sans-serif)!important;
   font-size:14px!important;font-weight:500!important;line-height:1.35!important;
   letter-spacing:0!important;text-transform:none!important;
   white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;
   padding:6px 0!important;margin:0!important;
 }
 body .tn-mega-links-v197>li>a:hover,
 body .tn-mega-loose-v197>li>a:hover{
   color:var(--tn-sub-hover-color)!important;background:transparent!important;
   text-decoration:underline!important;text-underline-offset:4px!important;
 }
 body .tn-mega-feature-v197{
   width:320px!important;min-width:320px!important;max-width:320px!important;
   position:static!important;float:none!important;
 }
 body .tn-mega-feature-v197>li{
   display:block!important;position:static!important;float:none!important;
   width:100%!important;margin:0!important;padding:0!important;
 }
 body .tn-mega-feature-v197 .tn-mega-feature-card-v191{display:block!important;width:100%!important;padding:0!important}
 body .tn-mega-feature-v197 .tn-mega-feature-image-v191{width:100%!important;aspect-ratio:16/8!important}
}
@media(max-width:900px){
 .tn-mega-shell-v197,.tn-mega-columns-v197{display:block!important}
 .tn-mega-lane-v197{display:block!important}
 .tn-mega-group-v197{margin-bottom:22px!important}
 .tn-mega-title-v197{color:var(--tn-mega-heading-color,#fff)!important;font-size:11px!important;font-weight:800!important;text-transform:uppercase!important}
}

/* ==========================================================
   v1.9.8 — PRIMARY NAV CART: icon + (quantity)
   v2.0.3 bugfix — op verzoek: de icoon-opmaak hieronder (afmetingen +
   outline-stroke) stond hiervoor VOLLEDIG binnen @media(min-width:901px),
   dus het "tasje"-icoontje bestond op mobiel letterlijk niet (0×0px) — in
   het mobiele menu bleef dan alleen een kaal getal "(1)" over, zonder
   icoon of label, wat aanvoelde als "er zit geen mandje in het menu".
   Deze basisopmaak (grootte, outline) staat daarom nu BUITEN de media
   query, dus geldt overal. Alleen de layout-details die specifiek de
   compacte icoon+aantal-weergave in de smalle desktop-navbalk regelen
   (rij-richting, marge, gap, het verborgen tekstlabel) blijven desktop-
   only hieronder — op mobiel pakt het grid van de #tn-mobile-list-v152
   menu-rij (zie elders in dit bestand) die layout gewoon op, inclusief nu
   ook het zichtbare "Mandje"-label.
   Het losse "@media(max-width:900px){.tn-menu-cart-v198{display:none}}"-
   blok dat hier stond is verwijderd: de aanname erachter ("de oude
   tekst-only 'Mandje'-koppeling blijft op mobiel bestaan") klopte niet
   meer — die bestond allang niet meer — en de regel had sowieso geen
   effect, omdat de generieke #tn-mobile-list-v152>li{display:block}-regel
   (hoger elders in dit bestand, een ID-selector) 'm door hogere
   specificiteit altijd overstemde. */
.tn-menu-cart-icon-v198{
 display:inline-flex!important;
 flex:none!important;
 width:17px!important;
 height:17px!important;
 align-items:center!important;
 justify-content:center!important;
}
.tn-menu-cart-icon-v198 svg{
 display:block!important;
 width:17px!important;
 height:17px!important;
 fill:none!important;
 stroke:currentColor!important;
 stroke-width:1.45!important;
 stroke-linecap:round!important;
 stroke-linejoin:round!important;
}
.tn-menu-cart-count-v198{
 font:inherit!important;
 letter-spacing:0!important;
}
/* v2.0.3: tekstlabel "Mandje" — alleen zichtbaar in het mobiele menu (zie
   hieronder), zodat de rij daar niet langer kaal "(1)" toont. */
.tn-menu-cart-label-v198{
 font:inherit!important;
}
@media(min-width:901px){
 .tn-menu-cart-v198{
   display:flex!important;
   align-items:center!important;
   margin-left:6px!important;
 }
 .tn-menu-cart-link-v198{
   display:inline-flex!important;
   align-items:center!important;
   gap:5px!important;
   padding-left:8px!important;
   padding-right:0!important;
   white-space:nowrap!important;
 }
 /* Compacte navbalk-weergave: alleen icoon + aantal, zoals voorheen. */
 .tn-menu-cart-label-v198{display:none!important}
 .tn-menu-cart-count-v198{display:inline!important}
}
@media(max-width:900px){
 /* v2.0.3: in #tn-mobile-list-v152 (het uitgeklapte mobiele menu) krijgt
    elke rij al label-tekst + rechts uitgelijnde elementen via de generieke
    "#tn-mobile-list-v152 li>a"-regel elders in dit bestand — hier alleen
    de kleine aanvullingen specifiek voor de mandje-rij: label en icoon+
    aantal netjes verdeeld (label links, icoon+aantal rechts, vóór de
    bestaande submenu-pijl-ruimte). */
 .tn-menu-cart-icon-v198{margin-left:auto!important}
 .tn-menu-cart-count-v198{margin-left:6px!important}
}

/* ==========================================================
   v1.10.0 — SELF-CONTAINED MENU CART
   The mini-cart now physically lives inside the Contact-adjacent menu item.
   No proxy to the removed top-header cart.
   ========================================================== */
@media(min-width:901px){
 .tn-menu-cart-v198{
   position:relative!important;
   display:flex!important;
   align-items:center!important;
 }
 .tn-menu-cart-v198 > .tn-mini-cart-v142{
   display:block!important;
   position:absolute!important;
   top:calc(100% + 12px)!important;
   right:0!important;
   left:auto!important;
   width:min(390px,calc(100vw - 32px))!important;
   min-width:360px!important;
   z-index:100050!important;
   opacity:0!important;
   visibility:hidden!important;
   pointer-events:none!important;
   transform:translateY(6px)!important;
   transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
 }
 .tn-menu-cart-v198:hover > .tn-mini-cart-v142,
 .tn-menu-cart-v198:focus-within > .tn-mini-cart-v142,
 .tn-menu-cart-v198.tn-cart-open-v142 > .tn-mini-cart-v142{
   opacity:1!important;
   visibility:visible!important;
   pointer-events:auto!important;
   transform:translateY(0)!important;
 }
 .tn-menu-cart-v198 > .tn-mini-cart-v142:before{
   content:""!important;
   position:absolute!important;
   left:0!important;right:0!important;top:-14px!important;height:14px!important;
 }
}

/* v2.0.0 production baseline — obsolete mega-menu experiments removed. */

/* ==========================================================
   v2.0.1 — DEFINITIVE MEGA MENU
   WordPress hierarchy is authoritative:
   Mega parent > marked column heading > genuinely nested links.
   No automatic distribution or interpretation of loose siblings.
   ========================================================== */
@media(min-width:901px){
 body .tn-mega-parent-v191 > ul.sub-menu{
   box-sizing:border-box!important;
   display:grid!important;
   grid-template-columns:repeat(4,minmax(0,1fr)) minmax(260px,320px)!important;
   gap:clamp(32px,3vw,58px)!important;
   align-items:start!important;
   width:min(1560px,calc(100vw - 80px))!important;
   min-width:0!important;
   max-width:1560px!important;
   left:50%!important;
   right:auto!important;
   transform:translateX(-50%)!important;
   margin:0!important;
   padding:34px 38px 40px!important;
   column-count:initial!important;
   background:var(--tn-sub-bg)!important;
 }

 /* A real marked heading is one complete column. */
 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-heading-v191{
   display:block!important;
   position:static!important;
   float:none!important;
   width:100%!important;
   min-width:0!important;
   margin:0!important;
   padding:0!important;
 }
 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-heading-v191 > a{
   display:block!important;
   color:var(--tn-mega-heading-color,#fff)!important;
   background:transparent!important;
   font-family:var(--tn-font-sans,Arial,sans-serif)!important;
   font-size:11px!important;
   font-weight:800!important;
   line-height:1.2!important;
   letter-spacing:.09em!important;
   text-transform:uppercase!important;
   padding:0!important;
   margin:0 0 12px!important;
   pointer-events:none!important;
 }

 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-heading-v191 > ul.sub-menu{
   display:flex!important;
   flex-direction:column!important;
   position:static!important;
   inset:auto!important;
   transform:none!important;
   opacity:1!important;
   visibility:visible!important;
   pointer-events:auto!important;
   width:100%!important;
   min-width:0!important;
   max-width:none!important;
   height:auto!important;
   margin:0!important;
   padding:0!important;
   background:transparent!important;
   border:0!important;
   box-shadow:none!important;
 }
 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-heading-v191 > ul.sub-menu > li{
   display:block!important;
   position:static!important;
   float:none!important;
   width:100%!important;
   min-width:0!important;
   margin:0!important;
   padding:0!important;
 }
 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-heading-v191 > ul.sub-menu > li > a{
   display:block!important;
   width:100%!important;
   color:var(--tn-sub-color)!important;
   background:transparent!important;
   font-family:var(--tn-font-sans,Arial,sans-serif)!important;
   font-size:14px!important;
   font-weight:500!important;
   line-height:1.35!important;
   letter-spacing:0!important;
   text-transform:none!important;
   white-space:normal!important;
   padding:6px 0!important;
   margin:0!important;
 }
 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-heading-v191 > ul.sub-menu > li > a:hover{
   color:var(--tn-sub-hover-color)!important;
   background:transparent!important;
   text-decoration:underline!important;
   text-underline-offset:4px!important;
 }

 /* Loose direct links are invalid mega structure: don't auto-place them. */
 body .tn-mega-parent-v191 > ul.sub-menu > li:not(.tn-mega-heading-v191):not(.tn-mega-featured-v191){
   display:none!important;
 }

 /* Featured always occupies the dedicated fifth column. */
 body .tn-mega-parent-v191 > ul.sub-menu > li.tn-mega-featured-v191{
   display:block!important;
   position:static!important;
   float:none!important;
   grid-column:5!important;
   grid-row:1 / span 4!important;
   width:100%!important;
   min-width:0!important;
   margin:0!important;
   padding:0!important;
 }
 body .tn-mega-parent-v191 .tn-mega-feature-card-v191{
   display:block!important;width:100%!important;padding:0!important;
 }
 body .tn-mega-parent-v191 .tn-mega-feature-image-v191{
   display:block!important;width:100%!important;
   aspect-ratio:16/8!important;
   margin:0 0 13px!important;
   background-size:cover!important;background-position:center!important;
 }
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191{
   display:block!important;width:100%!important;
 }
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 small,
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 strong,
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 span,
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 b{
   display:block!important;white-space:normal!important;
 }
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 small{font-size:10px!important;letter-spacing:.1em!important;text-transform:uppercase!important;margin-bottom:7px!important}
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 strong{font-family:var(--tn-font-serif,Georgia,serif)!important;font-size:25px!important;line-height:1.05!important;margin-bottom:7px!important}
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 span{font-size:13px!important;line-height:1.35!important;margin-bottom:11px!important}
 body .tn-mega-parent-v191 .tn-mega-feature-body-v191 b{font-size:12px!important;text-transform:uppercase!important;text-decoration:underline!important;text-underline-offset:5px!important}
}

/* v2.0.2 — Extra product information */
.single-product .tn-product-details-v202{
 margin:24px 0 8px!important;padding:22px 0 0!important;
 border-top:1px solid rgba(0,0,0,.16)!important;font-size:14px!important;line-height:1.65!important;
}
.single-product .tn-product-details-v202 p{margin:0 0 14px!important}
.single-product .tn-product-details-v202 strong{font-weight:700!important}
.single-product .tn-product-details-v202 .tn-detail-icon-v202{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 width:20px!important;min-width:20px!important;margin:0 4px 0 14px!important;
 font-size:15px!important;line-height:1!important;vertical-align:-1px!important;
}
.single-product .tn-product-details-v202 .tn-detail-icon-v202:first-child{margin-left:0!important}


/* ==========================================================
   v2.0.3 — B2B WOW LANDING PATTERN
   Uses the existing theme palette, DM Serif Display, DM Sans,
   global button styling, wide width and existing lined/parallax styles.
   ========================================================== */
.tn-wow-home-v203{overflow:hidden}
.tn-wow-hero-v203{background:var(--wp--preset--color--soft-pink,#F7E9ED)}
.tn-wow-hero-v203 .wp-block-cover__inner-container{width:100%}
.tn-wow-hero-inner-v203{
  width:min(1440px,calc(100vw - 64px))!important;
  max-width:min(1440px,calc(100vw - 64px))!important;
  margin-inline:auto!important;padding-block:clamp(80px,10vw,150px)!important
}
.tn-wow-title-v203{font-size:clamp(68px,8.4vw,138px)!important;line-height:.84!important;letter-spacing:-.035em!important;max-width:940px}
.tn-wow-lead-v203{max-width:680px;font-family:var(--wp--preset--font-family--editorial)!important;font-style:italic}
.tn-wow-strip-v203{padding:19px 24px!important;border-block:1px solid rgba(34,34,34,.14)}
.tn-wow-strip-v203 p{margin:0!important;font-size:11px!important;font-weight:700!important;letter-spacing:.075em!important}
.tn-wow-story-v203{
  width:min(1440px,calc(100vw - 64px))!important;max-width:min(1440px,calc(100vw - 64px))!important;
  margin-inline:auto!important;align-items:center!important;gap:clamp(45px,6vw,110px)!important;
  padding-block:clamp(80px,10vw,150px)!important
}
.tn-wow-image-v203{margin:0!important;min-height:520px;background:var(--wp--preset--color--mist,#F3F1EF)}
.tn-wow-image-v203 img:not([src]){display:none}
.tn-wow-story-title-v203{font-size:clamp(52px,5.4vw,90px)!important;line-height:.93!important}
.tn-wow-benefits-v203{
  width:min(1440px,calc(100vw - 64px))!important;max-width:min(1440px,calc(100vw - 64px))!important;
  margin-inline:auto!important;padding-bottom:clamp(90px,10vw,150px)!important
}
.tn-wow-benefit-columns-v203{gap:0!important;margin-top:52px!important}
.tn-wow-benefit-columns-v203>.wp-block-column{padding:4px clamp(22px,2.8vw,44px) 10px;border-right:1px solid rgba(34,34,34,.16)}
.tn-wow-benefit-columns-v203>.wp-block-column:first-child{padding-left:0}
.tn-wow-benefit-columns-v203>.wp-block-column:last-child{border-right:0;padding-right:0}
.tn-wow-benefit-columns-v203 h3{font-family:var(--wp--preset--font-family--sans)!important;font-size:18px!important;line-height:1.25!important}
.tn-wow-discover-v203{background-color:var(--wp--preset--color--bordeaux,#3A1725)}
.tn-wow-discover-v203 .wp-block-cover__inner-container{padding:70px 24px}
.tn-wow-discover-v203 .is-style-tn-eyebrow,.tn-wow-discover-title-v203{color:#fff!important}
.tn-wow-discover-title-v203{font-size:clamp(64px,7.5vw,118px)!important;line-height:.86!important}
.tn-wow-words-v203{padding:22px 24px!important;border-bottom:1px solid rgba(34,34,34,.14)}
.tn-wow-words-v203 p{font-family:var(--wp--preset--font-family--editorial)!important;font-size:clamp(22px,2.5vw,38px)!important;font-style:italic;margin:0!important}
.tn-wow-final-v203{
  width:min(1100px,calc(100vw - 64px))!important;max-width:min(1100px,calc(100vw - 64px))!important;
  margin-inline:auto!important;padding-block:clamp(90px,10vw,150px)!important
}
.tn-wow-final-v203 h2{margin-block:12px 22px!important}
@media(max-width:781px){
 .tn-wow-hero-inner-v203,.tn-wow-story-v203,.tn-wow-benefits-v203,.tn-wow-final-v203{width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important}
 .tn-wow-title-v203{font-size:clamp(56px,16vw,82px)!important}
 .tn-wow-story-v203{gap:34px!important}
 .tn-wow-image-v203{min-height:360px}
 .tn-wow-benefit-columns-v203>.wp-block-column{padding:24px 0!important;border-right:0;border-bottom:1px solid rgba(34,34,34,.16)}
 .tn-wow-benefit-columns-v203>.wp-block-column:last-child{border-bottom:0}
 .tn-wow-words-v203 p{line-height:1.5!important}
}

/* v2.0.8 — POST-FOOTER FLOW FIX
   wp_footer() outputs plugin UI after the visual footer. Some plugin
   containers can accidentally remain in normal document flow and create
   a large blank area below the copyright bar. */
html,body{margin-bottom:0!important;padding-bottom:0!important}
.tn-footer-v167{margin-bottom:0!important}

/* Utility/plugin containers known to be emitted after wp_footer().
   They are overlays/triggers/live regions, never page content. */
#glt-translate-trigger,
#glt-toolbar,
#glt-footer,
#tn-live-search-panel-v158,
#tn-mobile-panel-v152,
#inboxOverlay,
#wordfenceBox,
.tooltip-container,
.widget_shopping_cart_live_region,
.wc-block-components-notice-banner[aria-hidden="true"]{
  position:fixed!important;
  margin:0!important;
}

/* Hidden utility layers must occupy zero layout space. */
#tn-mobile-panel-v152[aria-hidden="true"],
#tn-live-search-panel-v158[aria-hidden="true"],
#inboxOverlay[style*="display: none"],
#wordfenceBox[style*="display: none"]{
  display:none!important;
}

/* Safety class applied by footer-layout-v208.js only to direct body
   children AFTER the footer that are utility/plugin nodes and still
   participate in normal flow. */
.tn-post-footer-flow-v208{
  position:fixed!important;
  margin:0!important;
}

/* ==========================================================
   v2.0.10 — EDITABLE WOW HERO + COMPACT CTA
   Cover image/overlay are controlled by native Gutenberg settings.
   No theme-level colour wash is forced onto the hero image.
   ========================================================== */
.tn-wow-hero-v203{background-color:transparent!important}
.tn-wow-hero-v203:before,.tn-wow-hero-v203:after{content:none!important}
.tn-wow-final-v203{
  padding-block:clamp(64px,6vw,96px)!important;
  min-height:0!important;
}
.tn-wow-final-v203>*:first-child{margin-top:0!important}
.tn-wow-final-v203>*:last-child{margin-bottom:0!important}
@media(max-width:781px){
 .tn-wow-final-v203{padding-block:56px!important}
}

/* ==========================================================
   v2.0.11 — PAGE TITLE SPACING
   When "Verberg paginatitel" is enabled, remove the wrapper's
   title-area top padding too. The first Gutenberg block can then
   start directly below the site header/navigation.
   ========================================================== */
body.tn-hide-page-title-v2011 .content{
  padding-top:0!important;
}
body.tn-hide-page-title-v2011 .content>article{
  margin-top:0!important;
  padding-top:0!important;
}
body.tn-hide-page-title-v2011 .content>article>:first-child{
  margin-top:0!important;
}


/* ==========================================================
   v2.0.12 — SHORTCODE PRODUCT COLUMNS + PAGE QUICK ORDER
   Respect WooCommerce [products columns="N"] on normal
   Gutenberg pages. The base theme grid is four columns, but
   shortcode-generated .columns-N classes must remain authoritative.
   ========================================================== */
@media (min-width:769px){
  .woocommerce ul.products.columns-1{grid-template-columns:minmax(0,1fr)!important}
  .woocommerce ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .woocommerce ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .woocommerce ul.products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .woocommerce ul.products.columns-5{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .woocommerce ul.products.columns-6{grid-template-columns:repeat(6,minmax(0,1fr))!important}
}
@media (max-width:768px){
  .woocommerce ul.products.columns-1{grid-template-columns:minmax(0,1fr)!important}
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce ul.products.columns-6{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:520px){
  .woocommerce ul.products.columns-1,
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce ul.products.columns-6{grid-template-columns:minmax(0,1fr)!important}
}


/* ==========================================================
   v2.0.13 — Gutenberg vertical rhythm
   Structural spacing for normal page content. Direct children
   only, so internal layout of Cover/Columns/Groups stays intact.
   ========================================================== */
:where(.page .content article) > :where(p,ul,ol,blockquote,figure,.wp-block-buttons,.wp-block-columns,.wp-block-group,.wp-block-cover,.wp-block-gallery,.wp-block-image,.wp-block-video,.wp-block-embed,.wp-block-table,.wp-block-separator,.wp-block-shortcode,.woocommerce,.wp-block-woocommerce-product-collection){margin-block-start:0;margin-block-end:0}
:where(.page .content article) > * + *{margin-block-start:24px!important}
/* Text reads as one unit. */
:where(.page .content article) > p + p,
:where(.page .content article) > :where(ul,ol) + p,
:where(.page .content article) > p + :where(ul,ol){margin-block-start:18px!important}
/* Headings belong to what follows, but open a new section above. */
:where(.page .content article) > :where(h2,h3,h4,h5,h6){margin-block-end:0!important}
:where(.page .content article) > * + :where(h2,h3,h4,h5,h6){margin-block-start:40px!important}
:where(.page .content article) > :where(h1,h2,h3,h4,h5,h6) + :where(p,ul,ol,blockquote,.wp-block-buttons){margin-block-start:16px!important}
/* Buttons need breathing room before the next section. */
:where(.page .content article) > .wp-block-buttons + :where(h2,h3,h4,h5,h6){margin-block-start:40px!important}
/* Large visual/layout blocks mark stronger section changes. */
:where(.page .content article) > :where(figure,.wp-block-image,.wp-block-gallery,.wp-block-video,.wp-block-embed,.wp-block-cover,.wp-block-columns,.wp-block-group,.wp-block-shortcode,.woocommerce,.wp-block-woocommerce-product-collection) + :where(h2,h3,h4,h5,h6){margin-block-start:48px!important}
:where(.page .content article) > :where(p,.wp-block-buttons) + :where(.wp-block-image,.wp-block-gallery,.wp-block-video,.wp-block-embed,.wp-block-cover,.wp-block-columns,.wp-block-shortcode,.woocommerce,.wp-block-woocommerce-product-collection){margin-block-start:32px!important}
/* Separator and spacer remain intentional author controls. */
:where(.page .content article) > .wp-block-separator{margin-block:40px!important}
:where(.page .content article) > .wp-block-spacer + *{margin-block-start:0!important}
@media(max-width:700px){
  :where(.page .content article) > * + *{margin-block-start:20px!important}
  :where(.page .content article) > * + :where(h2,h3,h4,h5,h6){margin-block-start:32px!important}
  :where(.page .content article) > :where(figure,.wp-block-image,.wp-block-gallery,.wp-block-video,.wp-block-embed,.wp-block-cover,.wp-block-columns,.wp-block-group,.wp-block-shortcode,.woocommerce,.wp-block-woocommerce-product-collection) + :where(h2,h3,h4,h5,h6){margin-block-start:38px!important}
}


/* v2.0.14 — prevent an incidental desktop mega-menu hover immediately after
   navigating Home from the WooCommerce breadcrumb. */
@media (hover:hover) and (min-width:901px){
  html.tn-breadcrumb-home-nav-v2014 .nav>li.menu-item-has-children>.sub-menu,
  html.tn-breadcrumb-home-nav-v2014 #menu-main>li.menu-item-has-children>.sub-menu{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* ==========================================================
   v2.0.20 — PRODUCTION MOBILE HEADER SAFETY
   Keep the account-page navigation overlay out of document flow on
   mobile. This prevents the nav wrapper from reserving a viewport-sized
   blank area before WooCommerce account content.
   ========================================================== */
@media (max-width:980px){
  body.woocommerce-account header .navwrap,
  body.woocommerce-account header .navwrap.open{
    position:fixed!important;
  }
}

/* GTranslate is rendered deliberately inside .tn-language-v164 in the
   header. Its legacy floating trigger / loading spinner are utility UI and
   must never occupy or overlay page content. */
#glt-translate-trigger,
.goog-te-spinner-pos{
  display:none!important;
}


/* ==========================================================
   v2.0.21 — CART FEEDBACK PRODUCTION FIX
   One toast only, always above the site navigation, and no
   duplicate WooCommerce “View cart” link under grid buttons.
   ========================================================== */

/* WooCommerce appends this after AJAX adds on archives AND shortcode grids.
   Curiositeas uses its own non-blocking toast, so suppress the duplicate CTA. */
ul.products li.product a.added_to_cart.wc-forward,
ul.products li.product a.added_to_cart {
  display:none!important;
}

/* Both supported toast variants live in the top UI layer. */
#tn-cart-toast-v157,
.tn-cart-toast-v157,
#tn-cart-toast-v1528,
.tn-cart-toast-v1528 {
  z-index:2147483000!important;
}

/* Desktop: clear the WP admin bar when logged in, otherwise sit near the top. */
@media (min-width:821px){
  .tn-cart-toast-v1528{top:16px!important}
  body.admin-bar .tn-cart-toast-v1528{top:48px!important}
}
@media (min-width:701px){
  #tn-cart-toast-v157,.tn-cart-toast-v157{top:16px!important}
  body.admin-bar #tn-cart-toast-v157,
  body.admin-bar .tn-cart-toast-v157{top:48px!important}
}

/* Mobile remains bottom anchored so feedback never covers header/navigation. */
@media (max-width:820px){
  #tn-cart-toast-v1528,.tn-cart-toast-v1528{
    top:auto!important;right:16px!important;bottom:16px!important;left:16px!important;width:auto!important;
  }
}


/* v2.0.22 — Footer menu/cart + heading colour hardening */
.tn-footer-v167 .tn-footer-grid-v167 h1,
.tn-footer-v167 .tn-footer-grid-v167 h2,
.tn-footer-v167 .tn-footer-grid-v167 h3,
.tn-footer-v167 .tn-footer-grid-v167 h4,
.tn-footer-v167 .tn-footer-grid-v167 h5,
.tn-footer-v167 .tn-footer-grid-v167 h6,
.tn-footer-v167 .tn-footer-grid-v167 .widget-title,
.tn-footer-v167 .tn-footer-grid-v167 .wp-block-heading {
  color:var(--tn-footer-heading)!important;
}


/* ==========================================================
   v2.0.23 — MINI CART COLORS INDEPENDENT FROM NAV/SUBMENU
   ========================================================== */
header .tn-mini-cart-v142,
header .tn-mini-cart-v142 .tn-mini-cart-head-v142,
header .tn-mini-cart-v142 .tn-mini-cart-items-v142,
header .tn-mini-cart-v142 .tn-mini-cart-foot-v142,
header .tn-mini-cart-v142 .tn-mini-cart-item-v142{
  background:var(--tn-minicart-bg,#f6b0b8)!important;
  color:var(--tn-minicart-text,#222222)!important;
}
header .tn-mini-cart-v142{border-color:var(--tn-minicart-border,#222222)!important}
header .tn-mini-cart-v142 .tn-mini-cart-head-v142,
header .tn-mini-cart-v142 .tn-mini-cart-item-v142,
header .tn-mini-cart-v142 .tn-mini-cart-foot-v142{border-color:var(--tn-minicart-border,#222222)!important}
header .tn-mini-cart-v142 a,
header .tn-mini-cart-v142 .tn-mini-cart-name-v142 a,
header .tn-mini-cart-v142 .tn-mini-cart-meta-v142,
header .tn-mini-cart-v142 .tn-mini-cart-total-v142,
header .tn-mini-cart-v142 .tn-mini-cart-empty-v142,
header .tn-mini-cart-v142 .tn-mini-cart-remove-v142{color:var(--tn-minicart-text,#222222)!important}
header .tn-mini-cart-v142 .tn-mini-cart-button-v142{
  background:var(--tn-minicart-button-bg,#222222)!important;
  color:var(--tn-minicart-button-text,#ffffff)!important;
  border-color:var(--tn-minicart-button-bg,#222222)!important;
}
header .tn-mini-cart-v142 .tn-view-cart-v142{
  background:transparent!important;
  color:var(--tn-minicart-text,#222222)!important;
  border-color:var(--tn-minicart-border,#222222)!important;
}
@media(hover:hover) and (pointer:fine){
  header .tn-mini-cart-v142 .tn-mini-cart-button-v142:hover{filter:brightness(.92)}
}


/* ==========================================================
   v2.0.24 — GUTENBERG PRODUCT PAGE SIDE-GUTTER FIX
   Keep shortcode product sections centred on normal pages.
   Category/archive grids are intentionally untouched.
   ========================================================== */
.page .tn-gutenberg-products-v181.wp-block-group{
  box-sizing:border-box!important;
  width:min(1560px,calc(100% - 80px))!important;
  max-width:1560px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.page .tn-gutenberg-products-v181 .wp-block-shortcode,
.page .tn-gutenberg-products-v181 .woocommerce,
.page .tn-gutenberg-products-v181 ul.products{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
@media(max-width:1200px){
  .page .tn-gutenberg-products-v181.wp-block-group{
    width:calc(100% - 48px)!important;
    max-width:calc(100% - 48px)!important;
  }
}
@media(max-width:680px){
  .page .tn-gutenberg-products-v181.wp-block-group{
    width:calc(100% - 28px)!important;
    max-width:calc(100% - 28px)!important;
  }
}

/* ==========================================================
   v2.0.25 — DESKTOP SUBMENU RELIABILITY
   - Multi-column dropdowns stay anchored to the navigation bar.
   - A Mega Menu parent without marked column headings falls back to
     a normal multi-column menu instead of hiding all direct links.
   ========================================================== */
@media (min-width:981px){
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu{
    position:absolute!important;
    top:100%!important;
    bottom:auto!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%) translateY(6px)!important;
    margin-top:0!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191):hover > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191):focus-within > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191).tn-submenu-open-v142 > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191):hover > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191):focus-within > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191).tn-submenu-open-v142 > ul.sub-menu{
    transform:translateX(-50%) translateY(0)!important;
  }

  /* Graceful fallback when Mega Menu is enabled on a flat submenu. */
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0 18px!important;
    position:absolute!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    width:min(900px,calc(100vw - 56px))!important;
    max-width:calc(100vw - 56px)!important;
    transform:translateX(-50%) translateY(6px)!important;
    padding:18px!important;
  }
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu > li:not(.tn-mega-featured-v191){
    display:block!important;
    position:static!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu > li > a{
    display:block!important;
    padding:11px 14px!important;
    font-family:var(--tn-font-sans,Arial,sans-serif)!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.35!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
    white-space:normal!important;
  }
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)):hover > ul.sub-menu,
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)):focus-within > ul.sub-menu,
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)).tn-submenu-open-v142 > ul.sub-menu{
    transform:translateX(-50%) translateY(0)!important;
  }
}

/* ==========================================================
   v2.0.26 — DESKTOP SUBMENU READING ORDER
   Fill multi-column flat dropdowns vertically (top-to-bottom)
   before continuing in the next column.
   ========================================================== */
@media (min-width:981px){
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2:not(.tn-mega-parent-v191) > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu,
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{
    display:block!important;
    column-gap:18px!important;
  }
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2:not(.tn-mega-parent-v191) > ul.sub-menu{column-count:2!important}
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu{column-count:3!important}
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu{column-count:4!important}
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:3!important}

  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2:not(.tn-mega-parent-v191) > ul.sub-menu > li,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu > li,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu > li,
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu > li{
    display:block!important;
    width:100%!important;
    break-inside:avoid!important;
    -webkit-column-break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
}


/* ==========================================================
   v2.0.27 — MEGA MENU VERTICAL READING ORDER
   Flat mega menus follow their automatic 2/3/4-column class and
   fill top-to-bottom before continuing in the next column.
   Structured mega menus with explicit column headings are unchanged.
   ========================================================== */
@media (min-width:981px){
  body .tn-mega-parent-v191.tn-menu-cols-2:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-3:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-4:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{
    display:block!important;
    grid-template-columns:none!important;
    column-gap:clamp(28px,3vw,56px)!important;
    column-fill:balance!important;
  }
  body .tn-mega-parent-v191.tn-menu-cols-2:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:2!important}
  body .tn-mega-parent-v191.tn-menu-cols-3:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:3!important}
  body .tn-mega-parent-v191.tn-menu-cols-4:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:4!important}

  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu > li{
    display:block!important;
    width:100%!important;
    break-inside:avoid!important;
    -webkit-column-break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
}


/* ==========================================================
   v2.0.28 — MENU ORDER IS SOURCE OF TRUTH
   Desktop multi-column dropdowns and flat mega menus preserve
   the exact WordPress menu order and flow TOP-TO-BOTTOM first,
   then continue in the next column. No alphabetical sorting.
   ========================================================== */
@media (min-width:981px){
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2:not(.tn-mega-parent-v191) > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-2:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-3:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-4:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{
    display:block!important;
    grid-template-columns:none!important;
    grid-auto-flow:initial!important;
    column-fill:balance!important;
  }

  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2:not(.tn-mega-parent-v191) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-2:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:2!important}

  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-3:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:3!important}

  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu,
  body .tn-mega-parent-v191.tn-menu-cols-4:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu{column-count:4!important}

  header .navwrap ul#menu-main.nav > li.tn-menu-cols-2:not(.tn-mega-parent-v191) > ul.sub-menu > li,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-3:not(.tn-mega-parent-v191) > ul.sub-menu > li,
  header .navwrap ul#menu-main.nav > li.tn-menu-cols-4:not(.tn-mega-parent-v191) > ul.sub-menu > li,
  body .tn-mega-parent-v191:not(:has(> ul.sub-menu > li.tn-mega-heading-v191)) > ul.sub-menu > li{
    display:block!important;
    width:100%!important;
    break-inside:avoid!important;
    -webkit-column-break-inside:avoid!important;
  }
}
