:root{
	--red:#ff4444; --red-deep:#c62828; --red-blood:#1a0505; --red-dark:#380d0d;
	--fill-crimson:#8a0002; --fill-crimson-hot:#c00000; /* the only approved red FILLS = Eric's PDP (#8a0002) and PLP (#c00000) button colours; #ff4444 is a line/text colour, never a fill (Eric 2026-09-06 / 09-10) */
	--green:#00ff88; --amber:#ffa500;
	--bg:#0a0a0a; --bg-2:#050505; --card:#161616; --card-deep:#0d0d0d; --bd:#2a2a2a; --field-bd:rgba(255,68,68,.6); /* form-field hairline: red at rest, never grey (Eric 2026-09-10) */
	--tx:#ededed; --dim:#c9c9c9; --white:#fff;
	--display:'League Spartan','Segoe UI',Roboto,Arial,sans-serif;
	--body:'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
	--mono:'Courier New','Consolas',monospace;
	--maxw:1320px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--tx);font-family:var(--body);font-size:15px;line-height:1.5}
img{max-width:100%;height:auto}
a{color:var(--red);text-decoration:none}
h1,h2,h3,h4{font-family:var(--display);text-transform:uppercase;letter-spacing:.5px;color:var(--white);margin:0 0 .5em}
.no-bullet{list-style:none;margin:0;padding:0}
.tac-slash{color:var(--red);font-family:var(--mono)}
button{font-family:inherit;cursor:pointer}
html.rta-cart-open,html.rta-cart-open body{overflow:hidden}
/* The tawk.to launcher is fixed bottom-left at z-index 1000003 and floats over the drawer, covering the left
   ~19% of Start Checkout on a phone (measured iPhone 13: a 67px launcher over a 351px button, so a tap there
   opens chat instead — one of the taps Eric reported as lost, 2026-09-17). The drawer is a modal; stand the
   launcher down while it is open. Phone widths only: at wider viewports the 420px drawer never reaches it.
   #min-widget is tawk's own container for the minimised launcher, and the one node in the chain CSS can
   reach: the wrapper above it carries a random id and an inline display:block !important that no stylesheet
   can beat, and the iframe below it carries inline visibility:visible !important. It fails safe. */
@media (max-width:767px){html.rta-cart-open #min-widget{display:none!important}}

/* grid */
.grid-container{max-width:var(--maxw);margin:0 auto;padding:0 18px;width:100%}
.grid-x{display:flex;flex-wrap:wrap}
.align-middle{align-items:center}.align-center{justify-content:center}.align-right{text-align:right}
.cell{flex:0 0 100%;max-width:100%;min-width:0}
.flex-container{display:flex}.flex-child-shrink{flex:0 0 auto}
@media(min-width:640px){
	.medium-4{flex-basis:33.333%;max-width:33.333%}
	.medium-up-2>.cell{flex-basis:50%;max-width:50%}
	.medium-up-4>.cell{flex-basis:50%;max-width:50%}
}
@media(min-width:1024px){
	.large-3{flex-basis:25%;max-width:25%}.large-4{flex-basis:33.333%;max-width:33.333%}
	.large-5{flex-basis:41.666%;max-width:41.666%}.large-11{flex-basis:91.666%;max-width:91.666%}.large-12{flex-basis:100%;max-width:100%}
	.large-up-4>.cell{flex-basis:25%;max-width:25%}.large-up-2>.cell{flex-basis:50%;max-width:50%}
	.show-for-large{display:block}
}
@media(max-width:1023px){.show-for-large{display:none}}

/* top perks bar */
.top-header-container{background:var(--bg-2);border-bottom:1px solid var(--bd);overflow:hidden}
.text-slider{overflow:hidden;white-space:nowrap}
.text-slider-track{display:inline-flex;gap:34px;align-items:center;padding:7px 0;animation:rta-marquee 32s linear infinite;font-family:var(--mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase}
.text-slider-track:hover{animation-play-state:paused}
.ts-lead{color:var(--red);font-weight:700}
.ts-item{color:var(--amber)}
.ts-item::before{content:"\2726";color:var(--red);margin-right:34px}
@keyframes rta-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.text-slider-track{animation:none}}

/* header */
.site-header{position:sticky;top:0;z-index:200;background:var(--bg);border-bottom:1px solid var(--bd)}
.main-container{padding:10px 0}
.logo img,.logo .custom-logo{max-height:66px;width:auto}
.logo-text{font-family:var(--display);font-weight:900;font-size:26px;color:var(--white);text-transform:uppercase;letter-spacing:2px}
.logo-text::first-letter{color:var(--red)}

.search-container{position:relative;display:flex;align-items:center}
.search-products-form{display:flex;width:100%;border:1px solid var(--red);background:var(--card-deep)}
.search-text{flex:1;background:transparent;border:0;color:var(--white);padding:12px 14px;font-size:14px;min-width:0}
.search-text::placeholder{color:var(--dim)}
.search-text:focus{outline:none}
.search-submit{background:var(--fill-crimson);border:0;color:#fff;padding:0 16px;font-size:15px}

.toolbar{justify-content:flex-end;gap:22px}
.support{text-align:right;line-height:1.2}
.support p{margin:0;font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--dim)}
.support a{color:var(--amber);font-weight:700;font-size:15px;font-family:var(--mono)}
.toolbar-icons{display:flex;gap:20px}
.toolbar-icons li a{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--tx);font-size:11px;text-transform:uppercase;letter-spacing:.5px}
.toolbar-icons li a i{font-size:20px;color:var(--white)}
.toolbar-icons li a:hover,.toolbar-icons li a:hover i{color:var(--red)}
#_cart_item_count_button a{position:relative}
.cart-count{position:absolute;top:-6px;right:-10px;background:var(--red-deep);color:#fff;font-family:var(--mono);font-weight:700;font-size:10px;min-width:16px;height:16px;border-radius:9px;display:grid;place-items:center;padding:0 4px}

/* account tooltip */
#_account_container{position:relative}
#_account_tooltip_wrapper{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:10px;display:none;z-index:210}
#_account_container.is-open #_account_tooltip_wrapper{display:block}
#_account_tooltip{background:var(--card);border:1px solid var(--bd);border-top:3px solid var(--red);min-width:200px;padding:10px}
#_account_tooltip a{display:block;padding:8px 10px;color:var(--tx);text-transform:uppercase;font-size:12px;letter-spacing:.5px}
#_account_tooltip a:hover{background:var(--card-deep);color:var(--red)}
#_account_tooltip .account-logout{margin-top:6px;border-top:1px solid var(--bd);padding-top:12px}

/* nav */
.menu-container{background:var(--bg-2);border-top:1px solid var(--bd)}
.menu-container-mobile{display:none}
.header-nav .primary-menu{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.primary-menu>li{position:relative}
.primary-menu>li>a{display:block;padding:13px 16px;color:var(--tx);text-transform:uppercase;font-weight:700;font-size:13px;letter-spacing:.6px;font-family:var(--display)}
.primary-menu>li:hover>a,.primary-menu>li.shop-all>a{color:var(--white);background:var(--red-blood)}
.primary-menu>li.shop-all>a{color:var(--red)}
.primary-menu .sub-menu{position:absolute;top:100%;left:0;min-width:230px;background:var(--card);border:1px solid var(--bd);border-top:3px solid var(--red);list-style:none;margin:0;padding:6px 0;display:none;z-index:220;box-shadow:0 18px 40px -12px rgba(0,0,0,.8)}
.primary-menu>li:hover>.sub-menu{display:block}
.sub-menu li a{display:block;padding:9px 16px;color:var(--dim);font-size:13px;text-transform:uppercase;letter-spacing:.3px}
.sub-menu li a:hover{color:var(--red);background:var(--card-deep)}

/* mobile menu */
.mobile-menu{background:var(--card);border-bottom:2px solid var(--red)}
.mobile-menu-list{list-style:none;margin:0;padding:0}
.mobile-menu-list a{display:block;padding:13px 18px;color:var(--tx);text-transform:uppercase;font-size:14px;border-bottom:1px solid var(--bd)}
@media(max-width:1023px){
	.menu-container{display:none}
	.menu-container-mobile{display:block;border-top:1px solid var(--bd)}
	#_mobile_icon{width:100%;background:var(--red-blood);border:0;color:var(--white);padding:12px;text-transform:uppercase;font-weight:700;letter-spacing:1px;text-align:left}
	.toolbar{gap:16px}.support{display:none}
	.main-container .grid-x>.cell{margin-bottom:10px}
}

/* main */
#_main_content_wrapper{min-height:50vh}
.rta-page,.rta-woo{padding:26px 18px}
.page-title,.entry-title{font-family:var(--display);font-size:1.8rem}

/* footer */
.site-footer{background:var(--bg-2);border-top:2px solid var(--red);margin-top:40px}
.footer-container{padding:38px 0 20px}
.footer-container h2{color:var(--white);font-size:15px;letter-spacing:1.5px;border-bottom:1px solid var(--bd);padding-bottom:8px;margin-bottom:14px}
.footer-container .cell{padding:0 12px 20px}
.logo-footer,.contact-details .custom-logo{max-width:180px;margin-bottom:12px}
.about-text{color:var(--dim);font-size:13px;line-height:1.7}
.footer-menu li,.contact-us-container li{margin-bottom:9px}
.footer-menu a{color:var(--dim);font-size:13px;text-transform:uppercase;letter-spacing:.3px}
.footer-menu a:hover{color:var(--red)}
.payment-method{display:flex;gap:10px;margin-top:16px;font-size:28px;color:var(--dim)}
.contact-us-container .contact-details a{display:flex;align-items:center;gap:10px;color:var(--dim);font-size:13px}
.contact-us-container .contact-details a:hover{color:var(--red)}
.contact-us-container i{color:var(--red);width:18px;text-align:center}
.social-media-icons-footer{display:flex;gap:12px;margin-top:16px}
.social-media-icons-footer a{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--bd);color:var(--dim);font-size:16px}
.social-media-icons-footer a:hover{border-color:var(--red);color:var(--red)}
.copyright-container{background:var(--red-blood);border-top:1px solid var(--bd)}
.copyright-container .grid-x{padding:12px 0}
.copyright-container span{font-size:12px;color:var(--dim)}
.copyright-links{display:flex;gap:18px;justify-content:flex-end}
.copyright-links a{font-size:12px;color:var(--dim);text-transform:uppercase}
.copyright-links a:hover{color:var(--red)}

/* buttons */
.button,.btn,button.alt,.rta-btn{display:inline-block;background:var(--fill-crimson);color:#fff;border:2px solid var(--red);padding:12px 22px;font-family:var(--mono);font-weight:800;text-transform:uppercase;letter-spacing:1.2px;font-size:13px}
.button:hover,.btn:hover,.rta-btn:hover{box-shadow:0 0 20px rgba(255,68,68,.5)}

/* mini-cart — tactical manifest drawer */
#_mini_cart_scrim{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:900;opacity:0;pointer-events:none;transition:opacity .25s ease}
#_mini_cart_scrim.is-open{opacity:1;pointer-events:auto}
#_mini_cart_scrim[hidden],#_shopping_cart_modal[hidden]{display:none}
#_shopping_cart_modal{position:fixed;top:0;right:0;width:min(420px,100%);height:100dvh;background:#0d0d0d;border-left:3px solid var(--red);z-index:910;display:flex;flex-direction:column;box-shadow:-18px 0 44px rgba(0,0,0,.6);transform:translateX(103%);visibility:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),visibility 0s .3s}
#_shopping_cart_modal.is-open{transform:translateX(0);visibility:visible;transition:transform .3s cubic-bezier(.2,.8,.2,1),visibility 0s}
@media (prefers-reduced-motion: reduce){#_shopping_cart_modal,#_mini_cart_scrim{transition:none}}
#_shopping_cart_modal.rta-mc-busy{pointer-events:none;opacity:.7}
.shopping-cart-modal-content{display:flex;flex-direction:column;height:100%;min-height:0}
#mini_cart_header{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid rgba(255,68,68,.35);background:#0c0202}
#mini_cart_header h3{margin:0;color:var(--red);font-family:var(--mono);letter-spacing:2px;font-size:13px;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.rta-mc-live{width:8px;height:8px;border-radius:50%;background:#00ff88;box-shadow:0 0 6px rgba(0,255,136,.8);animation:rta-mc-blink 1.8s infinite}
@keyframes rta-mc-blink{50%{opacity:.3}}
.rta-mc-count-wrap{margin-left:auto;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:#fff}
.rta-mc-count{color:var(--red);font-weight:700}
#_close_mini_cart_button{background:none;border:1px solid #333;color:#fff;width:38px;height:38px;font-size:18px;line-height:1;cursor:pointer}
#_close_mini_cart_button:hover{border-color:var(--red);color:var(--red)}
#mini_cart_content{flex:1;overflow:hidden;padding:14px 18px;display:flex;flex-direction:column;min-height:0}
#mini_cart_content .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1;min-height:0}
.rta-mc-list{list-style:none;margin:0;padding:0 6px 0 0;display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#8b0000 #161616}
.rta-mc-list::-webkit-scrollbar{width:8px}
.rta-mc-list::-webkit-scrollbar-track{background:#161616}
.rta-mc-list::-webkit-scrollbar-thumb{background:#8b0000;border:1px solid #ff4444}
.rta-mc-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px dashed rgba(255,68,68,.3);position:relative;align-items:flex-start}
.rta-mc-thumb{flex:0 0 72px;width:72px;height:72px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.rta-mc-thumb img{max-width:64px;max-height:64px;width:auto;height:auto;object-fit:contain}
.rta-mc-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;padding-right:26px}
.rta-mc-name{color:#fff;font-weight:800;font-size:12.5px;text-transform:uppercase;line-height:1.25;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rta-mc-name:hover{color:var(--red)}
.rta-mc-sku{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:#ffa500}
.rta-mc-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}
.rta-mc-qty{display:inline-flex;align-items:center;border:1px solid #333;background:#0a0a0a}
.rta-mc-step{background:none;border:none;color:var(--red);font-size:15px;font-weight:700;width:30px;height:30px;cursor:pointer;line-height:1}
.rta-mc-step:hover{background:rgba(255,68,68,.12)}
.rta-mc-qty-n{font-family:var(--mono);font-size:13px;font-weight:700;color:#fff;min-width:26px;text-align:center}
.rta-mc-price{font-family:var(--mono);font-size:14px;font-weight:700;color:#fff;white-space:nowrap}
.rta-mc-price del{display:block;color:var(--red);font-size:.75em}
.rta-mc-price ins{text-decoration:none}
a.rta-mc-remove{position:absolute;top:12px;right:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:#fff!important;background:transparent;border:1px solid #333;font-size:15px;line-height:1;text-decoration:none}
a.rta-mc-remove:hover{color:#fff!important;background:var(--fill-crimson);border-color:var(--red)}
.rta-mc-readout{flex:0 0 auto;border:1px solid rgba(255,68,68,.35);border-top:2px solid var(--red);background:#120404;padding:12px 14px;margin-top:14px}
.rta-mc-readout-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em}
.rta-mc-readout-label{font-size:11px;color:#fff}
.rta-mc-readout-value{font-size:17px;font-weight:900;color:#fff}
.rta-mc-readout-note{font-family:var(--mono);font-size:10px;color:#ffa500;margin-top:6px;letter-spacing:.06em}
.rta-mc-buttons{flex:0 0 auto;display:flex;flex-direction:column;gap:9px;margin:14px 0 0}
.rta-mc-buttons a{text-align:center;border-radius:0}
a.rta-mc-btn-checkout{background:#8a0002!important;border:1px solid #ff4444!important;color:#fff!important;font-family:var(--mono);font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:14px 0;box-shadow:0 0 16px rgba(255,68,68,.3);animation:rta-cta-pulse 2.6s infinite}
a.rta-mc-btn-checkout:hover{background:#c00000!important}
a.rta-mc-btn-view{background:transparent!important;border:1px solid #fff!important;color:#fff!important;font-family:var(--mono);font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:12px 0}
a.rta-mc-btn-view:hover{border-color:var(--red)!important;color:var(--red)!important}
.rta-mc-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:44px 12px;text-align:center}
.rta-mc-empty-line{font-family:var(--mono);font-size:14px;font-weight:700;letter-spacing:.18em;color:var(--red)}
.rta-mc-empty-sub{color:#fff;font-size:13px}
@media (prefers-reduced-motion: reduce){.rta-mc-live,a.rta-mc-btn-checkout{animation:none}}

/* back to top */
#back-to-top{position:fixed;bottom:22px;right:22px;width:44px;height:44px;background:var(--fill-crimson);color:#fff;display:grid;place-items:center;z-index:800;opacity:0;pointer-events:none;transition:opacity .2s}
#back-to-top.is-visible{opacity:1;pointer-events:auto}

/* Logged-in admin bar overlays fixed elements — drop the drawer below it */
body.admin-bar #_shopping_cart_modal{top:var(--wp-admin--admin-bar--height,32px);height:calc(100dvh - var(--wp-admin--admin-bar--height,32px))}
body.admin-bar #_mini_cart_scrim{top:var(--wp-admin--admin-bar--height,32px)}

body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.rta-mc-buttons .rta-mc-btn-checkout{flex:1 1 100%;width:100%}

/* Touch (Eric 2026-09-17, iPhone: buttons needed two taps): controls opt out of the double-tap-zoom heuristic, and nothing a
   finger must reach may depend on :hover — iOS spends the first tap on a hover that reveals content and clicks on the second. */
a,button,input[type=submit],input[type=button],label,.rta-btn,.button,.add_to_cart_button{touch-action:manipulation}

/* Busy CTA (Eric 2026-09-17, iPhone: "PDP, PLP and minicart start checkout buttons are laggy or need a
   double-tap"). One tap always registers — measured on WebKit/iPhone 13 and Chromium/Pixel 7 — but every
   cart-context request is uncacheable (Kinsta BYPASS): add_to_cart, /cart/ and /checkout/ measured 1.4s to
   7.0s of server time. Nothing on the button acknowledged the tap, because WooCommerce's own .loading
   spinner CSS is dequeued (functions.php: woocommerce_enqueue_styles -> []), so the shopper tapped again.
   .loading is WooCommerce's own class on an AJAX add; .rta-cta-busy is ours for the taps that end in a page
   load (see the head script in inc/cart-fragments.php). Same treatment as the header search card's Add
   button (header-prod.css), which is the one cart control that already acknowledged a tap. */
.add_to_cart_button.loading,.rta-cta-busy{position:relative;opacity:.72;pointer-events:none}
.add_to_cart_button.loading::after,.rta-cta-busy::after{content:"";position:absolute;top:50%;right:11px;margin-top:-7px;width:12px;height:12px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:rta-gs-spin .7s linear infinite} /* absolute: an inline spinner grew the line box and nudged the card. rta-gs-spin: header-prod.css, enqueued on every page */
@media (prefers-reduced-motion:reduce){.add_to_cart_button.loading::after,.rta-cta-busy::after{animation:none;border-top-color:rgba(255,255,255,.35)}}
