/*
Theme Name: OTUNNELS Elementor
Theme URI: https://otunnels.com/
Author: OTUNNELS
Description: Mobile-first OTUNNELS theme with Elementor and WooCommerce support, bundled starter pages, and four Custom Order art directions.
Version: 2.6.1
Requires at least: 6.5
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: otunnels
License: GNU General Public License v2 or later
*/

:root{--ot-bg:#201e1d;--ot-black:#090909;--ot-paper:#e8e4db;--ot-red:#c72b22;--ot-muted:#9a918b;--ot-line:#ffffff20;--ot-display:Impact,"Arial Narrow",sans-serif;--ot-serif:Georgia,serif;--ot-sans:Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ot-bg);color:var(--ot-paper);font-family:var(--ot-sans);overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{z-index:100000;top:8px;left:8px;width:auto;height:auto;padding:12px;background:#fff;color:#111;clip:auto}
.ot-grain{position:fixed;z-index:300;inset:0;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E")}.ot-strip{min-height:32px;padding:8px 14px;background:var(--ot-red);display:flex;justify-content:center;align-items:center;gap:10px;text-align:center;text-transform:uppercase;font-size:var(--e-global-typography-ot-micro-font-size);font-weight:700;letter-spacing:.13em}.ot-site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--ot-line);background:rgba(18,17,17,.96);position:relative;z-index:90}.ot-brand{display:block;width:166px;height:36px;background:url("assets/brand/otunnels-logo-light.png") left center/contain no-repeat;font-size:0}.ot-primary{display:none}.ot-primary ul,.ot-footer-nav ul{list-style:none;margin:0;padding:0}.ot-actions{display:flex;align-items:center;gap:14px;text-transform:uppercase;font-size:var(--e-global-typography-ot-micro-font-size);letter-spacing:.09em}.ot-count{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--ot-paper);color:var(--ot-black)}.ot-menu-toggle{width:38px;height:38px;border:0;background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer}.ot-menu-toggle span,.ot-menu-toggle:before,.ot-menu-toggle:after{content:"";display:block;width:24px;height:1px;background:currentColor;transition:.25s}.ot-menu-toggle span{margin:5px 0}.ot-mobile-panel{display:none;position:absolute;z-index:100;top:100%;left:0;right:0;background:#111;border-bottom:1px solid var(--ot-line);padding:24px 18px}.ot-mobile-panel.is-open{display:block}.ot-mobile-panel ul{list-style:none;padding:0;margin:0}.ot-mobile-panel a{display:block;padding:15px 0;border-bottom:1px solid var(--ot-line);font:36px/.9 var(--ot-display);text-transform:uppercase}.ot-main{min-height:65vh}.ot-page-head{padding:82px 18px 52px;background:#171615}.ot-kicker{color:var(--ot-red);font-size:var(--e-global-typography-ot-micro-font-size);font-weight:700;letter-spacing:.16em;text-transform:uppercase}.ot-page-head h1,.ot-display{font:clamp(58px,15vw,132px)/.78 var(--ot-display);letter-spacing:-.045em;margin:16px 0;text-transform:uppercase}.ot-page-head h1 em,.ot-display em{font-family:var(--ot-serif);font-weight:400;color:var(--ot-red)}.ot-copy{max-width:620px;color:#bbb2ac;font-size:16px;line-height:1.65}.ot-content{width:min(100%,1100px);padding:58px 18px;margin:0 auto}.ot-content p,.ot-content li{font-size:16px;line-height:1.65}.ot-content a{text-decoration:underline;text-decoration-color:var(--ot-red)}.ot-elementor-content{min-height:55vh}.ot-button,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-block;border:0;border-radius:0;background:var(--ot-red);color:#fff;padding:16px 20px;text-transform:uppercase;font-family:var(--e-global-typography-ot-label-font-family);font-size:var(--e-global-typography-ot-label-font-size);font-weight:var(--e-global-typography-ot-label-font-weight);letter-spacing:var(--e-global-typography-ot-label-letter-spacing)}.ot-footer{background:#090909;padding:65px 18px 25px;display:grid;gap:34px;border-top:1px solid var(--ot-line)}.ot-footer-tagline{font:30px/.92 var(--ot-display);color:var(--ot-red);text-transform:uppercase}.ot-footer-nav a{display:block;padding:7px 0;text-transform:uppercase;font-size:var(--e-global-typography-ot-micro-font-size);letter-spacing:.08em}.ot-footer small{color:#756e69}.ot-woocommerce{padding:46px 18px 80px}.ot-size-note{padding:13px;border-left:3px solid var(--ot-red);background:#171615;color:#c7beb8;font-size:var(--e-global-typography-ot-kicker-font-size)}.woocommerce ul.products{display:grid!important;grid-template-columns:1fr 1fr;gap:32px 10px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{width:auto!important;margin:0!important}.woocommerce ul.products li.product img{aspect-ratio:.78;object-fit:cover;margin:0 0 10px!important}.woocommerce div.product .product_title{font:clamp(48px,12vw,105px)/.82 var(--ot-display);text-transform:uppercase}.woocommerce div.product p.price,.woocommerce ul.products li.product .price{color:var(--ot-red)!important}.woocommerce table.shop_table{border-color:var(--ot-line)!important}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce select{background:#171615;color:#fff;border:1px solid #554e4a;padding:13px}.woocommerce-message,.woocommerce-info{background:#171615;color:#fff;border-top-color:var(--ot-red)}.ot-tip{margin:18px 0;padding:18px;border:1px solid var(--ot-line);background:#151414}.ot-tip label{display:block;margin-bottom:8px;font-size:var(--e-global-typography-ot-label-font-size);text-transform:uppercase;letter-spacing:.12em}.ot-tip p{color:var(--ot-muted);font-size:var(--e-global-typography-ot-meta-font-size);line-height:1.5}.ot-tip select{width:100%;padding:12px;font-size:var(--e-global-typography-ot-meta-font-size);background:#201e1d;color:#fff;border:1px solid #5b5350}.elementor-page .ot-content{max-width:none;padding:0}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1280px}
@media(min-width:820px){.ot-site-header{height:86px;padding:0 5vw}.ot-primary{display:block}.ot-primary ul{display:flex;gap:30px}.ot-primary a{text-transform:uppercase;font-size:var(--e-global-typography-ot-micro-font-size);letter-spacing:.1em}.ot-menu-toggle{display:none}.ot-page-head{padding:110px 6vw 65px}.ot-content{padding:85px 5vw}.ot-footer{padding:85px 5vw 30px;grid-template-columns:1fr 1fr auto;align-items:start}.ot-footer-tagline{font-size:44px}.ot-woocommerce{padding:70px 5vw 110px}.woocommerce ul.products{grid-template-columns:repeat(4,1fr);gap:58px 16px}.woocommerce div.product{padding:35px 0}}

/* Red Static footer */
.ot-footer{display:block;padding:0;background:#090909;border-top:1px solid var(--ot-line)}
.ot-footer-cta{padding:58px 18px;background:var(--ot-red);color:var(--ot-black);display:grid;gap:28px}
.ot-footer-cta span,.ot-footer-column>strong{font-size:8px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.ot-footer-cta h2{font:clamp(48px,14vw,112px)/.8 var(--ot-display);letter-spacing:-.045em;text-transform:uppercase;margin:16px 0 0}
.ot-footer-cta h2 em{font-family:var(--ot-serif);font-weight:400;color:var(--ot-paper)}
.ot-footer-shop{min-height:58px;padding:0 18px;border:2px solid var(--ot-black);display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;font-size:9px;font-weight:700;letter-spacing:.13em;box-shadow:6px 6px 0 var(--ot-black)}
.ot-footer-main{padding:58px 18px;display:grid;gap:42px}
.ot-footer-identity p{max-width:310px;color:var(--ot-muted);font-size:11px;line-height:1.65;margin:24px 0}
.ot-footer-rating{display:flex;align-items:center;gap:13px}.ot-footer-rating>strong{font:52px/1 var(--ot-serif)}
.ot-footer-rating>span{color:var(--ot-red);font-size:11px;letter-spacing:.12em}.ot-footer-rating small{display:block;color:var(--ot-muted);font:7px var(--ot-sans);letter-spacing:.08em;margin-top:5px}
.ot-footer-column{display:flex;flex-direction:column;align-items:flex-start}.ot-footer-column>strong{color:var(--ot-red);margin-bottom:16px}
.ot-footer-column>a{padding:7px 0;border-bottom:1px solid transparent;text-transform:uppercase;font-size:10px;letter-spacing:.08em}
.ot-footer-column>a:hover,.ot-footer-column>a:focus{color:var(--ot-red);border-bottom-color:var(--ot-red)}
.ot-footer-contact p{color:var(--ot-muted);font-size:10px;line-height:1.65;margin-top:18px}
.ot-footer-bottom{padding:22px 18px 28px;border-top:1px solid var(--ot-line);display:flex;flex-wrap:wrap;gap:12px 22px;justify-content:space-between;color:#756e69;font-size:7px;letter-spacing:.1em;text-transform:uppercase}
.ot-footer-bottom a{color:var(--ot-paper)}
@media(min-width:820px){.ot-footer-cta{padding:78px 5vw;grid-template-columns:minmax(0,1fr) 280px;align-items:end}.ot-footer-main{padding:78px 5vw;grid-template-columns:1.45fr repeat(3,1fr);gap:5vw}.ot-footer-bottom{padding:24px 5vw 30px}}

/* Red Static header */
.ot-site-header{height:82px;padding:0 18px;background:rgba(9,9,9,.97);border-bottom:1px solid rgba(255,255,255,.14)}
.ot-site-header .ot-brand{width:188px;height:46px;background-image:url("assets/brand/otunnels-logo-light.png")}
.ot-actions{gap:9px}.ot-shop-link{display:none}.ot-cart-link{position:relative;display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.14)}
.ot-cart-skull{display:block;width:42px;height:42px}.ot-cart-link .ot-count{position:absolute;right:-5px;top:-5px;width:21px;height:21px;border:2px solid #090909;background:var(--ot-red);color:#fff;font-size:8px;font-weight:700}
.ot-menu-toggle{width:50px;height:50px;border:1px solid rgba(255,255,255,.14)}
.ot-primary a{transition:color .2s}.ot-primary a:hover,.ot-primary a:focus{color:var(--ot-red)}
@media(max-width:420px){.ot-site-header .ot-brand{width:164px}.ot-cart-link{width:48px;height:48px}.ot-cart-skull{width:38px;height:38px}.ot-menu-toggle{width:46px;height:48px}}
@media(min-width:820px){.ot-site-header{height:94px;padding:0 5vw}.ot-site-header .ot-brand{width:218px;height:52px}.ot-actions{gap:14px}.ot-shop-link{display:block}.ot-cart-link{width:58px;height:58px}.ot-cart-skull{width:46px;height:46px}}

/* ============================================================
   OTUNNELS — WooCommerce cart ([woocommerce_cart] shortcode)
   Scope: body.woocommerce-cart — present regardless of template.
   Tokens: Elementor kit globals, declared on .elementor-kit-11 (<body>).
   No !important anywhere.
   ============================================================ */

/* --- layout shell ---------------------------------------- */
.woocommerce-cart .woocommerce{display:grid;gap:30px}
.woocommerce-cart .woocommerce-notices-wrapper{grid-column:1/-1}

/* --- items table ----------------------------------------- */
.woocommerce-cart .woocommerce-cart-form{margin:0}
.woocommerce-cart table.shop_table.cart{width:100%;margin:0;border:0;border-radius:0;border-top:1px solid var(--e-global-color-ot-line);border-collapse:collapse}
.woocommerce-cart table.shop_table.cart,
.woocommerce-cart table.shop_table.cart tbody,
.woocommerce-cart table.shop_table.cart>tbody>tr{display:block;width:100%}
.woocommerce-cart table.shop_table.cart thead{display:none}

.woocommerce-cart tr.cart_item{
  display:grid;
  grid-template-columns:105px minmax(0,1fr) auto;
  grid-template-areas:"thumb name subtotal" "thumb qty remove";
  column-gap:15px;row-gap:16px;align-items:start;
  padding:22px 0;border-bottom:1px solid var(--e-global-color-ot-line)}
.woocommerce-cart tr.cart_item>td{display:block;padding:0;border:0;background:none;text-align:left;vertical-align:top}
.woocommerce-cart tr.cart_item>td:before{display:none}

.woocommerce-cart td.product-thumbnail{grid-area:thumb}
.woocommerce-cart td.product-thumbnail img{display:block;width:105px;height:138px;object-fit:cover}

/* item name — fully tokenized via ot-item-title */
.woocommerce-cart td.product-name{grid-area:name}
.woocommerce-cart td.product-name a{
  font-family:var(--e-global-typography-ot-item-title-font-family);
  font-weight:var(--e-global-typography-ot-item-title-font-weight);
  font-size:var(--e-global-typography-ot-item-title-font-size);
  line-height:var(--e-global-typography-ot-item-title-line-height);
  letter-spacing:var(--e-global-typography-ot-item-title-letter-spacing);
  text-transform:var(--e-global-typography-ot-item-title-text-transform);
  color:var(--e-global-color-ot-paper)}
.woocommerce-cart td.product-name a:hover{color:var(--e-global-color-ot-red)}
.woocommerce-cart td.product-name .variation{
  margin:8px 0 0;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}
.woocommerce-cart td.product-name .variation dt,
.woocommerce-cart td.product-name .variation dd{display:inline;float:none;margin:0;padding:0}
.woocommerce-cart td.product-name .variation dd:after{content:"";display:block}

/* line subtotal (not unit price) */
.woocommerce-cart td.product-price{display:none}
.woocommerce-cart td.product-subtotal{
  grid-area:subtotal;text-align:right;white-space:nowrap;
  font-family:var(--e-global-typography-ot-serif-font-family);
  font-weight:var(--e-global-typography-ot-serif-font-weight);
  font-size:var(--e-global-typography-ot-serif-font-size);
  color:var(--e-global-color-ot-paper)}

/* quantity */
.woocommerce-cart td.product-quantity{grid-area:qty;align-self:end}
.woocommerce-cart .quantity{display:inline-flex;height:38px;border:1px solid var(--e-global-color-ot-field-border)}
.woocommerce-cart .quantity .qty{
  width:52px;height:100%;border:0;background:var(--e-global-color-ot-field-bg);
  color:var(--e-global-color-ot-paper);text-align:center;-moz-appearance:textfield;
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-cart .quantity .qty::-webkit-outer-spin-button,
.woocommerce-cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce-cart .quantity .ot-qty-btn{
  width:36px;height:100%;padding:0;border:0;border-radius:0;cursor:pointer;
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size);line-height:1}
.woocommerce-cart .quantity .ot-qty-btn:hover{background:var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper)}

/* remove */
.woocommerce-cart td.product-remove{grid-area:remove;align-self:end;text-align:right}
.woocommerce-cart td.product-remove a.remove{
  display:inline-block;width:auto;height:auto;border-radius:0;background:none;
  color:var(--e-global-color-ot-red);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-cart td.product-remove a.remove:hover{background:none;color:var(--e-global-color-ot-paper)}

/* --- actions row: coupon + update ------------------------ */
.woocommerce-cart table.shop_table.cart td.actions{display:grid;gap:12px;padding:22px 0;border:0;text-align:left}
.woocommerce-cart .coupon{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;float:none;width:100%}
.woocommerce-cart .coupon .input-text{
  width:100%;min-width:0;height:44px;margin:0;padding:0 12px;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-cart .coupon .input-text::placeholder{color:var(--e-global-color-ot-faint)}
.woocommerce-cart td.actions>button[name=update_cart]{width:100%}

/* --- summary heading (theme-injected, above the panel) ---- */
.woocommerce-cart .ot-cart-title{
  margin:0;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-display-font-family);
  font-weight:var(--e-global-typography-ot-display-font-weight);
  font-size:var(--e-global-typography-ot-display-font-size);
  line-height:var(--e-global-typography-ot-display-line-height);
  letter-spacing:var(--e-global-typography-ot-display-letter-spacing);
  text-transform:var(--e-global-typography-ot-display-text-transform)}

/* coupon disclosure (JS-wrapped) */
.woocommerce-cart .ot-coupon{width:100%}
.woocommerce-cart .ot-coupon>summary{
  display:inline-block;cursor:pointer;list-style:none;padding:2px 0;
  border-bottom:1px solid var(--e-global-color-ot-field-border);
  color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}
.woocommerce-cart .ot-coupon>summary::-webkit-details-marker{display:none}
.woocommerce-cart .ot-coupon>summary:hover{color:var(--e-global-color-ot-paper);border-bottom-color:var(--e-global-color-ot-paper)}
.woocommerce-cart .ot-coupon[open]>summary{margin-bottom:12px}

/* --- totals panel ---------------------------------------- */
.woocommerce-cart .cart-collaterals{width:100%;margin:0}
.woocommerce-cart .cart_totals{
  float:none;width:100%;padding:22px 18px;
  background:var(--e-global-color-ot-panel);
  border-top:4px solid var(--e-global-color-ot-red)}
.woocommerce-cart .cart_totals h2{
  margin:0 0 16px;padding-bottom:16px;
  border-bottom:1px solid var(--e-global-color-ot-divider);
  color:var(--e-global-color-ot-red);
  font-family:var(--e-global-typography-ot-kicker-font-family);
  font-size:var(--e-global-typography-ot-kicker-font-size);
  font-weight:var(--e-global-typography-ot-kicker-font-weight);
  line-height:var(--e-global-typography-ot-kicker-line-height);
  letter-spacing:var(--e-global-typography-ot-kicker-letter-spacing);
  text-transform:var(--e-global-typography-ot-kicker-text-transform)}
.woocommerce-cart .cart_totals table{width:100%;margin:0;border:0;border-collapse:collapse}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td{
  padding:13px 0;border:0;border-bottom:1px solid var(--e-global-color-ot-divider);background:none;
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-cart .cart_totals table th{color:var(--e-global-color-ot-muted);font-weight:400;text-align:left}
.woocommerce-cart .cart_totals table td{color:var(--e-global-color-ot-paper);text-align:right}
.woocommerce-cart .cart_totals .order-total th{
  color:var(--e-global-color-ot-paper);
  text-transform:var(--e-global-typography-ot-label-text-transform);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  font-weight:var(--e-global-typography-ot-label-font-weight)}
.woocommerce-cart .cart_totals .order-total td{
  font-family:var(--e-global-typography-ot-serif-font-family);
  font-size:var(--e-global-typography-ot-serif-font-size)}

/* shipping block */
.woocommerce-cart .woocommerce-shipping-methods{margin:0;padding:0;list-style:none}
.woocommerce-cart .woocommerce-shipping-destination,
.woocommerce-cart .woocommerce-shipping-calculator{
  color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}
.woocommerce-cart .shipping-calculator-button{color:var(--e-global-color-ot-red);text-decoration:underline}
.woocommerce-cart .shipping-calculator-form .input-text,
.woocommerce-cart .shipping-calculator-form select{
  width:100%;height:42px;padding:0 10px;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper)}

/* workshop tip (theme-injected) */
.woocommerce-cart .ot-tip-row td{padding:0;border-bottom:0}
.woocommerce-cart .ot-tip{margin:14px 0;padding:16px;background:var(--e-global-color-ot-surface);border:1px solid var(--e-global-color-ot-line);text-align:left}
.woocommerce-cart .ot-tip label{
  display:block;margin-bottom:8px;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-cart .ot-tip select{
  width:100%;height:44px;padding:0 10px;border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-cart .ot-tip p{
  margin:9px 0 0;color:var(--e-global-color-ot-muted);text-align:left;
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}

/* made-to-order note (theme-injected, above the checkout button) */
.woocommerce-cart .ot-cart-note{display:flex;gap:12px;padding:20px 0 4px}
.woocommerce-cart .ot-cart-note>span{color:var(--e-global-color-ot-red);line-height:1.2}
.woocommerce-cart .ot-cart-note strong{
  display:block;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-cart .ot-cart-note p{
  margin:5px 0 0;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}

/* checkout button */
.woocommerce-cart .wc-proceed-to-checkout{padding:20px 0 0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  width:100%;min-height:56px;margin:0;padding:0 18px;border-radius:0;
  background:var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:after{content:"\2192";font-size:1.2em;line-height:1}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--e-global-color-ot-black);color:var(--e-global-color-ot-paper)}

/* in-cart variation switcher (theme-injected) */
.woocommerce-cart .ot-cart-variation-editor{display:grid;gap:10px;margin:14px 0 0;max-width:280px}
.woocommerce-cart .ot-cart-variation-editor label>span{
  display:block;margin-bottom:6px;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-micro-font-family);
  font-size:var(--e-global-typography-ot-micro-font-size);
  font-weight:var(--e-global-typography-ot-micro-font-weight);
  letter-spacing:var(--e-global-typography-ot-micro-letter-spacing);
  text-transform:var(--e-global-typography-ot-micro-text-transform)}
.woocommerce-cart .ot-cart-variation-editor select{
  width:100%;height:44px;padding:0 30px 0 11px;border-radius:0;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-cart .ot-cart-variation-editor select:disabled{opacity:.55}
.woocommerce-cart .ot-cart-variation-status{
  min-height:16px;margin:0;color:var(--e-global-color-ot-red);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}

/* notices + empty state */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error{
  background:var(--e-global-color-ot-surface);color:var(--e-global-color-ot-paper);
  border-top-color:var(--e-global-color-ot-red);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-cart .cart-empty.woocommerce-info{margin:0;padding:34px 20px 34px 52px}
.woocommerce-cart .return-to-shop{margin-top:18px}

/* price formatting */
.woocommerce-cart .woocommerce-Price-amount{white-space:nowrap}

/* --- desktop --------------------------------------------- */
@media(min-width:820px){
  .woocommerce-cart .woocommerce{grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);gap:5vw;align-items:start}
  .woocommerce-cart .woocommerce-cart-form{grid-column:1;grid-row:1/span 2}
  .woocommerce-cart .ot-cart-title{grid-column:2;grid-row:1;align-self:start;margin-bottom:18px}
  .woocommerce-cart .cart-collaterals{display:contents}
  .woocommerce-cart .cart_totals{grid-column:2;grid-row:2;position:sticky;top:24px}
  .woocommerce-cart .cross-sells{grid-column:1/-1;margin-top:60px}
  .woocommerce-cart tr.cart_item{grid-template-columns:180px minmax(0,1fr) auto;column-gap:24px;padding:26px 0}
  .woocommerce-cart td.product-thumbnail img{width:180px;height:230px}
}
/* ============================================================
   OTUNNELS — WooCommerce checkout ([woocommerce_checkout] shortcode)
   Scope: body.woocommerce-checkout. Renders via page.php inside
   .ot-content. Same tokens and panel treatment as the cart.
   ============================================================ */

.woocommerce-checkout .ot-content{width:min(100%,1280px)}

/* coupon toggle (WooCommerce already collapses this natively) */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  margin:0 0 20px;padding:14px 16px;background:var(--e-global-color-ot-surface);
  border-top:2px solid var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}
.woocommerce-checkout .checkout_coupon{
  margin:0 0 26px;padding:18px;border:1px solid var(--e-global-color-ot-line);
  background:var(--e-global-color-ot-surface);border-radius:0}

/* section headings */
.woocommerce-checkout .woocommerce h3,
.woocommerce-checkout #ship-to-different-address{
  margin:0 0 16px;padding-bottom:12px;
  border-bottom:1px solid var(--e-global-color-ot-divider);
  color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-checkout #order_review_heading{
  margin:0 0 16px;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-item-title-font-family);
  font-size:var(--e-global-typography-ot-item-title-font-size);
  font-weight:var(--e-global-typography-ot-item-title-font-weight);
  line-height:var(--e-global-typography-ot-item-title-line-height);
  letter-spacing:var(--e-global-typography-ot-item-title-letter-spacing);
  text-transform:var(--e-global-typography-ot-item-title-text-transform)}

/* form fields */
.woocommerce-checkout .form-row{display:block;margin:0 0 16px;padding:0}
.woocommerce-checkout .form-row label{
  display:block;margin:0 0 7px;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}
.woocommerce-checkout .form-row .required{color:var(--e-global-color-ot-red);text-decoration:none}
.woocommerce-checkout .woocommerce form .form-row input.input-text,
.woocommerce-checkout .woocommerce form .form-row textarea,
.woocommerce-checkout .woocommerce form .form-row select,
.woocommerce-checkout .select2-container .select2-selection--single{
  width:100%;height:46px;padding:0 12px;border-radius:0;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-checkout .woocommerce form .form-row textarea{height:auto;min-height:110px;padding:12px}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{
  line-height:44px;padding:0;color:var(--e-global-color-ot-paper)}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:44px}
.woocommerce-checkout .form-row input::placeholder,
.woocommerce-checkout .form-row textarea::placeholder{color:var(--e-global-color-ot-faint)}
.woocommerce-checkout .woocommerce-invalid input.input-text{border-color:var(--e-global-color-ot-red)}

/* order review panel — same treatment as the cart totals */
.woocommerce-checkout #order_review{
  padding:22px 18px;background:var(--e-global-color-ot-panel);
  border-top:4px solid var(--e-global-color-ot-red)}
.woocommerce-checkout table.woocommerce-checkout-review-order-table{
  width:100%;margin:0;border:0;border-collapse:collapse;background:none}
.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td{
  padding:13px 0;border:0;border-bottom:1px solid var(--e-global-color-ot-divider);background:none;
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-checkout table.woocommerce-checkout-review-order-table th{
  color:var(--e-global-color-ot-muted);font-weight:400;text-align:left}
.woocommerce-checkout table.woocommerce-checkout-review-order-table td{
  color:var(--e-global-color-ot-paper);text-align:right}
.woocommerce-checkout .cart_item .product-name{color:var(--e-global-color-ot-paper)}
.woocommerce-checkout .product-quantity{color:var(--e-global-color-ot-muted)}
.woocommerce-checkout tr.order-total th{
  color:var(--e-global-color-ot-paper);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-checkout tr.order-total td{
  font-family:var(--e-global-typography-ot-serif-font-family);
  font-size:var(--e-global-typography-ot-serif-font-size)}

/* payment box */
.woocommerce-checkout #payment{background:none;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{
  margin:0;padding:18px 0 0;border:0;border-top:1px solid var(--e-global-color-ot-divider);list-style:none}
.woocommerce-checkout #payment ul.payment_methods li{
  margin:0 0 10px;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.woocommerce-checkout #payment div.payment_box{
  margin:10px 0 0;padding:14px;border-radius:0;
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}
.woocommerce-checkout #payment div.payment_box:before{display:none}
/* Stripe card field container (gateway currently disabled — unverified) */
.woocommerce-checkout .wc-stripe-elements-field,
.woocommerce-checkout .wc-stripe-iban-element-field{
  padding:13px 12px;border-radius:0;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg)}

/* place order */
.woocommerce-checkout #place_order{
  display:block;width:100%;min-height:56px;margin:18px 0 0;padding:0 18px;border-radius:0;
  background:var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.woocommerce-checkout #place_order:hover{background:var(--e-global-color-ot-black)}

/* terms + privacy */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout .woocommerce-privacy-policy-text{
  color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}
.woocommerce-checkout .woocommerce-privacy-policy-text a{color:var(--e-global-color-ot-red)}

/* notices */
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info{
  background:var(--e-global-color-ot-surface);color:var(--e-global-color-ot-paper);
  border-top-color:var(--e-global-color-ot-red);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}

@media(min-width:900px){
  .woocommerce-checkout form.checkout{
    display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
    gap:4vw;align-items:start}
  .woocommerce-checkout #customer_details{grid-column:1;grid-row:1/span 2}
  .woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1}
  .woocommerce-checkout #order_review{grid-column:2;grid-row:2;position:sticky;top:24px}
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{
    display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
  .woocommerce-checkout .form-row-wide,
  .woocommerce-checkout #order_comments_field,
  .woocommerce-checkout #billing_address_1_field,
  .woocommerce-checkout #billing_address_2_field{grid-column:1/-1}
}

/* ============================================================
   OTUNNELS — catalog controls (size picker, filters, loop button)
   Scope: shortcode output, placed in the Elementor archive template.
   ============================================================ */

/* --- size picker: prominent, never collapses ------------- */
.ot-size-picker{
  padding:22px 18px;margin:0 0 14px;
  background:var(--e-global-color-ot-surface);
  border-top:4px solid var(--e-global-color-ot-red)}
.ot-size-picker__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:14px}
.ot-size-picker__title{
  margin:0;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-item-title-font-family);
  font-size:var(--e-global-typography-ot-item-title-font-size);
  font-weight:var(--e-global-typography-ot-item-title-font-weight);
  line-height:var(--e-global-typography-ot-item-title-line-height);
  letter-spacing:var(--e-global-typography-ot-item-title-letter-spacing);
  text-transform:var(--e-global-typography-ot-item-title-text-transform)}
.ot-size-picker__current{
  margin:0;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.ot-size-picker__current strong{color:var(--e-global-color-ot-red)}
.ot-size-picker__list{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.ot-size-chip{
  display:block;padding:10px 12px;min-width:56px;text-align:center;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size);
  line-height:1;transition:background .15s,border-color .15s}
.ot-size-chip:hover{border-color:var(--e-global-color-ot-paper)}
.ot-size-chip.is-current{
  background:var(--e-global-color-ot-red);
  border-color:var(--e-global-color-ot-red);
  color:var(--e-global-color-ot-paper)}
.ot-size-picker__clear{
  display:inline-block;margin-top:12px;color:var(--e-global-color-ot-muted);
  border-bottom:1px solid var(--e-global-color-ot-field-border);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}
.ot-size-picker__clear:hover{color:var(--e-global-color-ot-paper)}

/* --- filters + sorting: compact control strip ------------ */
.ot-filters{margin:0 0 22px;border:1px solid var(--e-global-color-ot-line);background:var(--e-global-color-ot-panel)}
.ot-filters__toggle{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:13px 16px;cursor:pointer;list-style:none;
  color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.ot-filters__toggle::-webkit-details-marker{display:none}
.ot-filters__toggle:after{content:"+";margin-left:auto;color:var(--e-global-color-ot-red);font-size:1.4em;line-height:1}
.ot-filters[open] .ot-filters__toggle:after{content:"\2212"}
.ot-filters__count{
  display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;
  background:var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-micro-font-family);
  font-size:var(--e-global-typography-ot-micro-font-size)}
.ot-filters__body{padding:0 16px 16px;display:grid;gap:16px}
.ot-filters__group h3{
  margin:0 0 8px;color:var(--e-global-color-ot-red);
  font-family:var(--e-global-typography-ot-kicker-font-family);
  font-size:var(--e-global-typography-ot-kicker-font-size);
  font-weight:var(--e-global-typography-ot-kicker-font-weight);
  letter-spacing:var(--e-global-typography-ot-kicker-letter-spacing);
  text-transform:var(--e-global-typography-ot-kicker-text-transform)}
.ot-filters__group ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.ot-filter-chip{
  display:inline-flex;align-items:center;gap:6px;padding:8px 11px;
  border:1px solid var(--e-global-color-ot-field-border);
  color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);line-height:1}
.ot-filter-chip span{color:var(--e-global-color-ot-faint)}
.ot-filter-chip:hover{border-color:var(--e-global-color-ot-paper)}
.ot-filter-chip.is-current{background:var(--e-global-color-ot-red);border-color:var(--e-global-color-ot-red)}
.ot-filter-chip.is-current span{color:var(--e-global-color-ot-paper)}

/* --- loop add-to-cart ------------------------------------ */
/* the anchor sits on the button; pull the whole card into view */
.ot-loop-add[id^="ot-product-"]{scroll-margin-block-start:55vh}
.ot-loop-add{
  display:inline-block;text-align:center;
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.ot-loop-add--choose,
.ot-loop-add--unavailable{
  background:transparent;color:var(--e-global-color-ot-muted);
  border:1px solid var(--e-global-color-ot-field-border)}
.ot-loop-add--choose:hover,
.ot-loop-add--unavailable:hover{color:var(--e-global-color-ot-paper);border-color:var(--e-global-color-ot-paper)}

@media(min-width:820px){
  .ot-size-picker{padding:26px 5vw}
  .ot-filters__body{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
  .ot-filters__toggle{padding:14px 5vw}
  .ot-filters__body{padding:0 5vw 20px}
}

/* ============================================================
   OTUNNELS — single product hero ([otunnels_product_hero])
   Wraps WooCommerce's own gallery and variation form.
   ============================================================ */

.ot-hero{display:grid;gap:26px;padding:0 0 34px}
.ot-hero__gallery .woocommerce-product-gallery{width:100%;margin:0;float:none}
.ot-hero__gallery img{display:block;width:100%;height:auto}

.ot-hero__status{
  display:inline-block;margin:0 0 12px;padding:6px 10px;
  background:var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-micro-font-family);
  font-size:var(--e-global-typography-ot-micro-font-size);
  font-weight:var(--e-global-typography-ot-micro-font-weight);
  letter-spacing:var(--e-global-typography-ot-micro-letter-spacing);
  text-transform:var(--e-global-typography-ot-micro-text-transform)}
.ot-hero__name{
  margin:0;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-display-font-family);
  font-size:var(--e-global-typography-ot-display-font-size);
  font-weight:var(--e-global-typography-ot-display-font-weight);
  line-height:var(--e-global-typography-ot-display-line-height);
  letter-spacing:var(--e-global-typography-ot-display-letter-spacing);
  text-transform:var(--e-global-typography-ot-display-text-transform)}
.ot-hero__type{
  margin:10px 0 0;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size);
  line-height:var(--e-global-typography-ot-meta-line-height)}
.ot-hero__price{
  margin:18px 0 0;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-serif-font-family);
  font-size:var(--e-global-typography-ot-serif-font-size);
  font-weight:var(--e-global-typography-ot-serif-font-weight)}
.ot-hero__price del{opacity:.55;margin-right:8px}
.ot-hero__price ins{text-decoration:none;color:var(--e-global-color-ot-red)}

.ot-hero .ot-size-note{margin:18px 0 0}

/* variation form */
.ot-hero__form{margin-top:22px}
.ot-hero__form .variations{width:100%;margin:0 0 16px;border:0;border-collapse:collapse}
.ot-hero__form .variations th,
.ot-hero__form .variations td{display:block;width:100%;padding:0;border:0;text-align:left}
.ot-hero__form .variations th label{
  display:block;margin:0 0 7px;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.ot-hero__form .variations td{margin:0 0 16px}
.ot-hero__form select{
  width:100%;height:48px;padding:0 12px;border-radius:0;
  border:1px solid var(--e-global-color-ot-field-border);
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.ot-hero__form .reset_variations{
  display:inline-block;margin-top:4px;color:var(--e-global-color-ot-muted);
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}
.ot-hero__form .woocommerce-variation-price{
  margin:0 0 14px;color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-serif-font-family);
  font-size:var(--e-global-typography-ot-serif-font-size)}
.ot-hero__form .woocommerce-variation-availability p,
.ot-hero__form .stock{
  margin:0 0 14px;
  font-family:var(--e-global-typography-ot-meta-font-family);
  font-size:var(--e-global-typography-ot-meta-font-size)}
.ot-hero__form .stock.in-stock{color:var(--e-global-color-ot-muted)}
.ot-hero__form .stock.out-of-stock,
.ot-hero__form .stock.available-on-backorder{color:var(--e-global-color-ot-red)}

.ot-hero__form .cart{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.ot-hero__form .cart .quantity{display:inline-flex;height:56px;border:1px solid var(--e-global-color-ot-field-border)}
.ot-hero__form .cart .quantity .qty{
  width:64px;height:100%;border:0;text-align:center;-moz-appearance:textfield;
  background:var(--e-global-color-ot-field-bg);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-body-font-family);
  font-size:var(--e-global-typography-ot-body-font-size)}
.ot-hero__form .cart .quantity .qty::-webkit-outer-spin-button,
.ot-hero__form .cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ot-hero__form .cart button.single_add_to_cart_button{
  flex:1 1 200px;min-height:56px;padding:0 20px;border:0;border-radius:0;
  background:var(--e-global-color-ot-red);color:var(--e-global-color-ot-paper);
  font-family:var(--e-global-typography-ot-label-font-family);
  font-size:var(--e-global-typography-ot-label-font-size);
  font-weight:var(--e-global-typography-ot-label-font-weight);
  letter-spacing:var(--e-global-typography-ot-label-letter-spacing);
  text-transform:var(--e-global-typography-ot-label-text-transform)}
.ot-hero__form .cart button.single_add_to_cart_button:hover{background:var(--e-global-color-ot-black)}
.ot-hero__form .cart button.single_add_to_cart_button.disabled{opacity:.5;cursor:not-allowed}

@media(min-width:900px){
  .ot-hero{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:4vw;align-items:start}
  .ot-hero__buy{position:sticky;top:24px}
}

/* Seamless announcement marquee */
.ot-strip{min-height:32px;padding:0;display:block;overflow:hidden;text-align:left;white-space:nowrap}
.ot-strip-track{display:flex;width:max-content;min-width:100%;will-change:transform;animation:ot-strip-marquee 24s linear infinite}
.ot-strip-group{display:flex;flex:0 0 auto;align-items:center;justify-content:space-around;gap:18px;min-width:max-content;padding:8px 20px}
.ot-strip-group span{display:inline-block}
.ot-strip-group b{font-size:8px;line-height:1}
.ot-strip:hover .ot-strip-track{animation-play-state:paused}
@keyframes ot-strip-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(max-width:819px){
  .ot-strip-track{animation-duration:19s}
  .ot-strip-group{gap:15px;padding:8px 16px}
}
@media(prefers-reduced-motion:reduce){
  .ot-strip-track{width:100%;animation:none;transform:none}
  .ot-strip-group:first-child{width:100%;overflow:hidden;justify-content:center}
  .ot-strip-group[aria-hidden=true]{display:none}
}

/* 2026 readable type system: optimized for mobile commerce */
:root{--ot-muted:#9a918b;--ot-red-text:#ff655b;--ot-red-text-light:#8f1f19}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:16px}
input,select,textarea{font-size:16px!important}
.ot-button,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{min-height:44px}
.ot-footer-column>strong,.ot-footer-column>a,.ot-footer-contact p,.ot-footer-bottom{font-size:11px;line-height:1.45}
body.ot-static-page main p:not(.eyebrow){font-size:15px!important;line-height:1.65!important}
body.ot-static-page main small{font-size:12px!important;line-height:1.5!important}
body.ot-static-page .eyebrow,body.ot-static-page .section-number,body.ot-static-page .hero-meta,body.ot-static-page .hero-index{font-size:11px!important;line-height:1.35!important}
body.ot-static-page main figcaption,body.ot-static-page main figcaption span,body.ot-static-page main figcaption b{font-size:11px!important;line-height:1.4!important}
body.ot-static-page .badge,body.ot-static-page .release-tag{font-size:10px!important}
body.ot-static-page footer nav,body.ot-static-page footer small{font-size:11px!important}
@media(max-width:819px){
  .ot-strip-group{font-size:10px}
  .ot-site-header{min-height:82px}
  body.ot-static-page .hero-copy>p{font-size:11px!important}
}
