/* WooCommerce and WordPress pieces styled to match the v3 design system (base.css). */
.content{font-size:16px;line-height:1.65}
.content a{color:var(--p);text-decoration:underline}
.content img{max-width:100%;height:auto}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.card .pr del{font-weight:500;color:var(--mut);font-size:14px}
.card .pr ins{text-decoration:none}
.card .img img{background:var(--g)}
.card .added_to_cart{display:block;text-align:center;margin-top:8px;font-size:14px;font-weight:700;color:var(--p)}
.card .btn.loading{opacity:.6}
.card .btn.added::after{content:" ✓"}
.grid.products{list-style:none;margin:0;padding:0}

/* shop toolbar */
.woocommerce-result-count{margin:0;color:var(--mut)}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{height:44px;border:1px solid #CFCAD9;border-radius:6px;padding:0 12px;background:#fff;font-weight:600}
.woocommerce-pagination{margin-top:32px;text-align:center}
.woocommerce-pagination ul{list-style:none;display:inline-flex;gap:6px;padding:0;margin:0;border:0}
.woocommerce-pagination li{border:0 !important}
.woocommerce-pagination a,.woocommerce-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 12px;border:1.5px solid #CFCAD9;border-radius:6px;font-weight:700}
.woocommerce-pagination span.current{background:var(--night);border-color:var(--night);color:#fff}
.woocommerce-breadcrumb a{color:var(--mut)}
.spb-tt{min-height:44px;padding:0 16px;border:1.5px solid #CFCAD9;background:#fff;color:var(--ink)}
.spb-tt[aria-pressed=true]{border-color:var(--night);background:var(--night);color:#fff}

/* product page */
.spb-product .woocommerce-product-gallery{position:relative;margin:0 !important;width:100% !important;float:none !important}
.spb-product .woocommerce-product-gallery__wrapper{margin:0}
.spb-product .woocommerce-product-gallery__image{background:var(--g);border-radius:10px;overflow:hidden}
.spb-product .woocommerce-product-gallery__image img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.spb-product .flex-control-thumbs{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 0;padding:0}
.spb-product .flex-control-thumbs img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--g);border-radius:8px;border:2px solid transparent;cursor:pointer;opacity:1}
.spb-product .flex-control-thumbs img.flex-active{border-color:var(--p)}
.spb-product .woocommerce-product-gallery__trigger{position:absolute;top:12px;right:12px;z-index:3;width:40px;height:40px;border-radius:20px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:0}
.spb-product .woocommerce-product-gallery__trigger::before{content:"⤢";font-size:18px;color:var(--ink)}
.spb-product #gal .tag{z-index:4;font-size:14px}
.spb-price del{font-size:20px;color:var(--mut);font-weight:500}
.spb-price ins{text-decoration:none}
.spb-cartform form.cart{display:flex;flex-direction:column;gap:14px;margin:0}
.spb-cartform table.variations{border:0;margin:0;width:100%}
.spb-cartform table.variations tr{display:block}
.spb-cartform table.variations th,.spb-cartform table.variations td{display:block;padding:0;text-align:left;border:0;background:none}
.spb-cartform table.variations th label{font-weight:700;display:block;margin-bottom:8px}
.spb-hidden-select{position:absolute !important;left:0;top:0;width:1px !important;min-width:0 !important;height:1px !important;margin:0;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);opacity:0;pointer-events:none}
.spb-cartform .reset_variations{display:none !important}
.spb-pills{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}
.spb-pills .pill{min-height:52px}
.spb-cartform .single_variation .price{font-size:24px;font-weight:800}
.spb-cartform .woocommerce-variation-availability p{margin:4px 0 0;font-size:14px;color:var(--ok);font-weight:700}
.spb-cartform .woocommerce-variation-availability .out-of-stock{color:#B4235A}
.spb-cartform .woocommerce-variation-add-to-cart,.spb-cartform form.cart:not(.variations_form){display:flex;gap:10px;flex-direction:row}
.spb-cartform .quantity input.qty{width:84px;height:52px;border:1px solid var(--line);border-radius:6px;text-align:center;font-weight:700;font-size:16px}
.spb-cartform .single_add_to_cart_button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .button,.wc-block-components-button{background:var(--p) !important;color:#fff !important;border:0 !important;border-radius:6px !important;min-height:48px;padding:0 24px !important;font-weight:700 !important;font-size:15px !important;display:inline-flex !important;align-items:center;justify-content:center;cursor:pointer;line-height:1 !important}
.spb-cartform .single_add_to_cart_button{flex:1;min-height:52px;font-size:16px !important}
.woocommerce a.button:hover,.woocommerce button.button:hover,.spb-cartform .single_add_to_cart_button:hover{background:var(--pd) !important}
.spb-cartform .single_add_to_cart_button.disabled,.spb-cartform .single_add_to_cart_button:disabled{background:#E6E3EC !important;color:#6B7180 !important;cursor:not-allowed}
.spb-cartform .stock{font-weight:700;color:var(--ok);margin:0}
.spb-cartform .stock.out-of-stock{color:#B4235A}

/* notices */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:16px 0;padding:14px 16px;border-radius:8px;background:var(--g);border-left:4px solid var(--p);display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.woocommerce-error{border-left-color:#B4235A}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}

/* cart drawer mini cart */
#cartd .widget_shopping_cart_content{display:flex;flex-direction:column;gap:14px}
#cartd ul.woocommerce-mini-cart{list-style:none;margin:0;padding:0;display:grid;gap:16px}
#cartd .woocommerce-mini-cart-item{position:relative;display:block;padding-left:76px;padding-right:28px;min-height:64px;font-size:15px}
#cartd .woocommerce-mini-cart-item a:not(.remove){font-weight:700;display:block}
#cartd .woocommerce-mini-cart-item img{position:absolute;left:0;top:0;width:64px !important;height:64px !important;object-fit:contain;background:var(--g);border-radius:6px;margin:0}
#cartd .woocommerce-mini-cart-item .remove{position:absolute;right:0;top:0;width:24px;height:24px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--mut) !important;font-size:18px;background:none}
#cartd .woocommerce-mini-cart-item .remove:hover{background:var(--g);color:#B4235A !important}
#cartd .woocommerce-mini-cart-item .quantity{color:var(--mut);display:block;margin-top:2px}
#cartd .woocommerce-mini-cart-item dl.variation{margin:2px 0 0;font-size:14px;color:var(--mut);display:flex;gap:4px}
#cartd .woocommerce-mini-cart-item dl.variation dd,#cartd .woocommerce-mini-cart-item dl.variation p{margin:0}
#cartd .woocommerce-mini-cart__total{display:flex;justify-content:space-between;font-size:19px;font-weight:800;padding-top:12px;border-top:1px solid var(--line);margin:0}
#cartd .woocommerce-mini-cart__buttons{display:grid;gap:10px;margin:0}
#cartd .woocommerce-mini-cart__buttons .button{width:100%}
#cartd .woocommerce-mini-cart__buttons .button:not(.checkout){background:#fff !important;color:var(--ink) !important;border:1.5px solid #CFCAD9 !important}
#cartd .woocommerce-mini-cart__empty-message{color:var(--mut);text-align:center;padding:40px 0}

/* cart, checkout, account pages */
.wc-page{max-width:1100px}
.wc-page input.input-text,.wc-page select,.wc-page textarea{height:46px;border:1px solid #CFCAD9;border-radius:6px;padding:0 12px;width:100%;background:#fff}
.wc-page textarea{height:auto;padding:10px 12px}
.wc-page table.shop_table{border-collapse:collapse;width:100%;border:1px solid var(--line);border-radius:10px}
.wc-page table.shop_table th,.wc-page table.shop_table td{padding:12px;border-top:1px solid var(--line);text-align:left}
.wc-page .cart_totals,.wc-page #order_review{background:var(--g);border-radius:10px;padding:20px}

/* layout rules moved from v3 inline styles */
@media (max-width:900px){
	#hero,#bogo,#pd,#coahero,#shopwrap{grid-template-columns:1fr !important}
	#gal{position:static !important}
	#cattiles{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
	#facts{grid-template-columns:repeat(2,1fr) !important}
	#bogolist{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
	#tt{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
	.grid.products{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
	.util{padding:10px 16px}.wrap{padding:0 16px}.srch form .btn{display:none}.ib{padding:0 8px}.icons{gap:0}
}
@media (max-width:1100px) and (min-width:901px){.grid.products{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
/* cart drawer (woocommerce/cart/mini-cart.php) */
#cartd .widget_shopping_cart_content{flex:1;display:flex;flex-direction:column;gap:0}
#cartd .drawer-note{font-size:13px}
#cartd .spb-mc{list-style:none;margin:0;padding:0;display:block}
#cartd .spb-mc-i{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}
#cartd .spb-mc-i:first-child{padding-top:4px}
#cartd .spb-mc-i .im{display:block;width:64px;height:64px;border-radius:8px;overflow:hidden;background:var(--g)}
#cartd .spb-mc-i .im img{width:64px !important;height:64px !important;object-fit:cover;display:block;margin:0}
#cartd .spb-mc-i .tx{display:grid;gap:2px;min-width:0}
#cartd .spb-mc-i .nm{font-weight:700;line-height:1.3;color:var(--ink);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#cartd .spb-mc-i .nm:hover{color:var(--p)}
#cartd .spb-mc-i .sz{font-size:14px;color:var(--mut)}
#cartd .spb-mc-i .quantity{font-size:14px;color:var(--mut)}
#cartd .spb-mc-i .quantity .amount{color:inherit}
#cartd .spb-mc-i .rt{display:grid;justify-items:end;gap:6px;white-space:nowrap}
#cartd .spb-mc-i .rt b{font-size:15px}
#cartd .spb-mc-i a.remove{position:static;width:auto;height:auto;font-size:13px;font-weight:600;color:var(--mut) !important;background:none !important;text-decoration:underline;text-underline-offset:2px;border-radius:0;display:inline}
#cartd .spb-mc-i a.remove:hover{color:#B4235A !important}
#cartd .spb-mc-end{position:sticky;bottom:-16px;margin:auto -20px -16px;padding:16px 20px;background:var(--bg,#fff);border-top:1px solid var(--line);display:grid;gap:12px}
#cartd .spb-mc-sub{display:flex;justify-content:space-between;align-items:baseline;margin:0;font-size:18px;font-weight:800}
#cartd .spb-mc-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#cartd .spb-mc-btns .btn{width:100%;min-height:48px}
#cartd .spb-mc-btns .btn-o{order:-1}
#cartd .spb-mc-empty{text-align:center;padding:48px 0;display:grid;gap:16px;justify-items:center;color:var(--mut)}
#cartd .spb-mc-empty p{margin:0}
#cartd .gift{flex:none}
/* cart page (woocommerce/cart/cart.php) */
.wc-page .spb-cart{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}
.spb-cart-main{display:grid;gap:18px}
.spb-ci-list{border:1px solid var(--line);border-radius:12px;padding:0 20px;background:none}
.spb-ci{display:grid;grid-template-columns:88px minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}
.spb-ci:first-child{border-top:0}
.spb-ci .im{display:block;width:88px;height:88px;border-radius:10px;overflow:hidden;background:var(--g)}
.spb-ci .im img{width:100%;height:100%;object-fit:cover;display:block}
.spb-ci .tx{display:grid;gap:3px;min-width:0}
.spb-ci .nm{font-weight:700;font-size:17px;line-height:1.3;color:var(--ink);text-decoration:none}
.spb-ci .nm:hover{color:var(--p)}
.spb-ci .sz,.spb-ci .pr{font-size:14px;color:var(--mut)}
.spb-ci .pr .amount{color:inherit}
.spb-ci .quantity input.qty{width:76px;height:44px;border:1.5px solid #CFCAD9;border-radius:8px;text-align:center;font-weight:700;font-size:16px;background:var(--bg,#fff);color:var(--ink)}
.spb-ci .rt{display:grid;justify-items:end;gap:6px;min-width:88px}
.spb-ci .rt b{font-size:17px}
.spb-ci a.remove{font-size:13px;font-weight:600;color:var(--mut) !important;text-decoration:underline;text-underline-offset:2px;background:none !important;width:auto;height:auto;display:inline;line-height:1.4}
.spb-ci a.remove:hover{color:#B4235A !important}
.spb-cart .actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.spb-cart .coupon{display:flex;gap:8px;flex:1;max-width:420px}
.spb-cart .coupon input.input-text{height:46px;flex:1;min-width:0}
.spb-cart .coupon .button,.spb-cart .spb-upd{min-height:46px !important;padding:0 20px !important;border-radius:8px !important;font-weight:700 !important}
.spb-cart .coupon .button.btn-o{background:var(--bg,#fff) !important;color:var(--ink) !important;border:1.5px solid #CFCAD9 !important}
.spb-cart .spb-upd{background:none !important;color:var(--mut) !important;border:0 !important;text-decoration:underline;padding:0 !important}
.spb-cart .spb-upd:disabled{opacity:.5}
.spb-cont{font-weight:700;color:var(--p);text-decoration:none;justify-self:start}
.spb-cart .gift{margin:0}
.spb-cart-side{position:sticky;top:96px;display:grid;gap:12px}
.spb-cart-side .cart-collaterals{width:auto;float:none}
.wc-page .spb-cart-side .cart_totals{float:none;width:auto;background:var(--g);border-radius:12px;padding:22px}
.spb-cart-side .cart_totals h2{font-family:'Archivo',sans-serif;font-size:22px;margin:0 0 12px}
.spb-cart-side .cart_totals table.shop_table{border:0;border-radius:0;margin:0}
.spb-cart-side .cart_totals table.shop_table th,.spb-cart-side .cart_totals table.shop_table td{padding:12px 0;border-top:1px solid var(--line);background:none;font-size:15px;vertical-align:top}
.spb-cart-side .cart_totals table.shop_table tr:first-child th,.spb-cart-side .cart_totals table.shop_table tr:first-child td{border-top:0}
.spb-cart-side .cart_totals th{font-weight:600;color:var(--mut);width:40%}
.spb-cart-side .cart_totals td{text-align:right}
.spb-cart-side .cart_totals .order-total th,.spb-cart-side .cart_totals .order-total td{font-size:19px;font-weight:800;color:var(--ink)}
.spb-cart-side #shipping_method{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.spb-cart-side #shipping_method li{display:flex;gap:8px;justify-content:flex-end;align-items:center;text-align:right}
.spb-cart-side #shipping_method input{accent-color:#6B46C1;margin:0}
.spb-cart-side .woocommerce-shipping-destination,.spb-cart-side .shipping-calculator-button{font-size:13px;color:var(--mut);margin:6px 0 0}
.spb-cart-side .shipping-calculator-form{text-align:left}
.spb-cart-side .wc-proceed-to-checkout{padding:16px 0 0}
.spb-cart-side .wc-proceed-to-checkout .checkout-button{display:flex !important;align-items:center;justify-content:center;width:100%;min-height:54px;font-size:17px !important;border-radius:8px !important;margin:0}
.spb-cart-note{font-size:13px;color:var(--mut);margin:0}
.wc-page .cart-empty.woocommerce-info{background:var(--g);border:0;border-radius:12px;padding:24px;font-size:17px}
@media (max-width:900px){.wc-page .spb-cart{grid-template-columns:1fr}.spb-cart-side{position:static}.spb-ci{grid-template-columns:72px minmax(0,1fr) auto;gap:12px}.spb-ci .im{width:72px;height:72px}.spb-ci .product-quantity{grid-column:2;grid-row:2}.spb-ci .rt{grid-column:3;grid-row:1/3}}
html[data-theme=dark] .spb-ci .quantity input.qty,html[data-theme=dark] .spb-cart .coupon .button.btn-o{border-color:var(--fld) !important}
.spb-cart-side .cart_totals table.shop_table td{text-align:right !important}
.spb-cart .actions button.spb-upd{background:none !important;color:var(--mut) !important;border:0 !important;text-decoration:underline;padding:0 !important;min-height:0 !important;font-weight:600 !important}
html[data-theme=dark] .spb-ci .nm,html[data-theme=dark] #cartd .spb-mc-i .nm{color:var(--ink)}
html[data-theme=dark] .spb-ci .nm:hover{color:#B79DF5}
@media (max-width:768px){.spb-cart-side .cart_totals table.shop_table tr td,.spb-cart-side .cart_totals table.shop_table tr:nth-child(2n) td{background:none !important}}
/* the "Variation Swatch Buttons" site snippet adds a second row of size buttons; the theme already shows its own pills */
.spb-cartform .spb-swatch-group{display:none!important}

/* About this compound (inc/compound.php): description first, spec card beside it, disclaimer as a note */
.cmp-title{font:500 12px 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--p);margin:0 0 18px}
.cmp-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;align-items:start}
.cmp-main p{font-size:16px;line-height:1.7;color:var(--mut);margin:0 0 14px}
.cmp-desc p:first-child{font-size:18px;line-height:1.65;color:var(--ink)}
.cmp-main strong{color:var(--ink);font-weight:600}
.cmp-sec{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.cmp-sec h3{font-family:'Archivo',sans-serif;font-size:18px;font-weight:700;margin:0 0 10px;color:var(--ink)}
.cmp-sec h4{font-size:15px;font-weight:600;margin:18px 0 6px;color:var(--ink)}
.cmp-sec .cmp-dl{margin:6px 0 14px}
.cmp-specs{background:var(--g);border:1px solid var(--line);border-radius:10px;padding:22px 24px;position:sticky;top:96px}
.cmp-k{display:block;font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin-bottom:12px}
.cmp-dl{margin:0}
.cmp-dl>div{display:grid;grid-template-columns:minmax(104px,38%) minmax(0,1fr);gap:14px;padding:11px 0;border-top:1px solid var(--line)}
.cmp-dl>div:first-child{border-top:0;padding-top:2px}
.cmp-dl dt{font-size:13px;line-height:1.5;color:var(--mut)}
.cmp-dl dd{margin:0;font-size:14px;line-height:1.5;color:var(--ink);font-weight:500;overflow-wrap:anywhere}
.cmp-note{margin-top:36px;padding:16px 20px;border-left:3px solid var(--p);background:var(--g);border-radius:0 8px 8px 0}
.cmp-note .cmp-k{margin-bottom:6px}
.cmp-note p{font-size:13px;line-height:1.6;color:var(--mut);margin:0}
.cmp-raw{max-width:820px;font-size:16px;line-height:1.7;color:var(--mut)}
.cmp-raw p{margin:0 0 14px}.cmp-raw strong{color:var(--ink)}
.cmp-raw h2,.cmp-raw h3{font-family:'Archivo',sans-serif;color:var(--ink);font-size:19px;margin:28px 0 8px}
html[data-theme=dark] .cmp-title{color:#B79DF5}
@media (max-width:900px){.cmp-grid{grid-template-columns:1fr;gap:24px}.cmp-specs{position:static;order:-1;padding:18px 18px}.cmp-desc p:first-child{font-size:16px}}
