/*
Theme Name: OpenShack Shop
Theme URI: https://shop.openshack.com
Author: OpenShack
Description: OpenShack storefront theme, WooCommerce-ready and aligned with openshack.com.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: dl2cc-shop
*/

/* ── Fonts (self-hosted, bundled) ─────────────────────────── */
@font-face{font-family:'Archivo';src:url(fonts/archivo-latin-2d6953d7.woff2) format('woff2');font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(fonts/hanken-grotesk-latin-e9265aa2.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/ibm-plex-mono-latin-e2661bcc.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/ibm-plex-mono-latin-0bc96cd0.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/ibm-plex-mono-latin-1b581b15.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}

/* ── Tokens ───────────────────────────────────────────────── */
:root{
  --ink:#08090c;--ink-2:#0d0f15;--panel:#13161e;--panel-2:#1a1e28;
  --line:rgba(255,255,255,.085);--line-2:rgba(255,255,255,.15);
  --amber:#f6c90e;--amber-2:#ffe06a;--amber-dim:rgba(246,201,14,.14);
  --phosphor:#46e3aa;--phosphor-d:rgba(70,227,170,.16);
  --text:#f2f4f8;--text-dim:#9aa4b4;--text-mute:#66707f;
  --radius:12px;--radius-lg:18px;--nav-h:66px;--max-w:1180px;
  --f-display:'Archivo','Segoe UI',sans-serif;
  --f-body:'Hanken Grotesk','Segoe UI',sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,monospace;
}

/* ── Base ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--f-body);color:var(--text);background:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--amber);color:#11130a}
body::before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}
::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:var(--ink-2)}::-webkit-scrollbar-thumb{background:#2a3140;border-radius:6px;border:2px solid var(--ink-2)}
.sh-wrap{max-width:var(--max-w);margin:0 auto;padding:0 28px}
h1,h2,h3{font-family:var(--f-display);color:var(--text);line-height:1.08}

/* ── Morse rule ───────────────────────────────────────────── */
/* DL2CC Studio in ITU Morse: dot=5px dash=15px inter-el=5px inter-char=15px word-gap=35px → 840px tile */
.morse-rule{height:13px;width:100%;overflow:hidden;opacity:.6;-webkit-mask-image:linear-gradient(90deg,transparent,#000 11%,#000 89%,transparent);mask-image:linear-gradient(90deg,transparent,#000 11%,#000 89%,transparent);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='840' height='13'%3E%3Crect rx='2' x='0' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='20' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='30' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='50' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='60' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='80' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='90' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='110' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='120' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='130' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='150' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='170' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='200' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='220' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='230' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='250' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='270' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='290' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='300' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='320' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='360' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='370' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='390' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='410' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='430' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='450' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='480' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='500' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='520' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='550' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='580' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='600' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='620' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='630' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='640' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='650' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='660' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='690' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='710' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='720' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='740' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='760' y='4' width='5' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='770' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3Crect rx='2' x='790' y='4' width='15' height='5' fill='%23f6c90e'/%3E%3C/svg%3E") left center repeat-x;background-size:840px 13px}

/* ── Nav ──────────────────────────────────────────────────── */
.sh-nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(12px);background:rgba(8,9,12,.72);border-bottom:1px solid var(--line)}
.sh-nav-in{display:flex;align-items:center;justify-content:space-between;height:var(--nav-h)}
.sh-nav-right{display:flex;align-items:center;gap:16px}
.sh-lang{display:flex;gap:4px;font-family:var(--f-mono);font-size:11px}
.sh-lang-btn{padding:4px 8px;border-radius:6px;border:1px solid var(--line);color:var(--text-dim);transition:.15s;letter-spacing:.06em}
.sh-lang-btn:hover{border-color:var(--amber);color:var(--amber)}
.sh-lang-btn.active{border-color:var(--amber);color:var(--amber);background:rgba(246,201,14,.08)}
.sh-logo{font-family:var(--f-display);font-weight:800;font-size:19px;color:var(--text)}
.sh-logo b{color:var(--amber)}
.sh-logo small{font-family:var(--f-mono);font-weight:400;font-size:11px;letter-spacing:.3em;color:var(--text-mute);margin-left:8px;text-transform:uppercase}
.sh-links{display:flex;gap:28px;font-family:var(--f-mono);font-size:13px;color:var(--text-dim)}
.sh-links a:hover{color:var(--amber)}
.sh-cart{font-family:var(--f-mono);font-size:13px;border:1px solid var(--line-2);padding:9px 16px;border-radius:10px;display:inline-flex;align-items:center;gap:9px;color:var(--text);transition:.2s}
.sh-cart:hover{border-color:var(--amber);color:var(--amber)}
.sh-cart .d{width:6px;height:6px;border-radius:50%;background:var(--phosphor);box-shadow:0 0 8px var(--phosphor)}

/* ── Eyebrow / buttons ────────────────────────────────────── */
.sh-eyebrow{font-family:var(--f-mono);font-size:12px;font-weight:500;letter-spacing:.26em;text-transform:uppercase;color:var(--amber);display:inline-flex;align-items:center;gap:10px}
.sh-eyebrow::before{content:"";width:24px;height:1px;background:var(--amber);opacity:.7}
.sh-btn{font-family:var(--f-mono);font-size:13px;font-weight:500;letter-spacing:.05em;padding:14px 26px;border-radius:11px;transition:.22s;display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;border:1px solid transparent}
.sh-btn-amber{background:var(--amber);color:#1c1a06;font-weight:600}
.sh-btn-amber:hover{box-shadow:0 0 0 3px var(--amber-dim),0 10px 32px -10px var(--amber);transform:translateY(-1px)}
.sh-btn-ghost{border-color:var(--line-2);color:var(--text)}
.sh-btn-ghost:hover{border-color:var(--amber);color:var(--amber)}

/* ── Hero ─────────────────────────────────────────────────── */
.sh-hero{padding:74px 0 56px;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.sh-h1{font-weight:800;font-size:clamp(40px,5.4vw,64px);letter-spacing:-.015em;margin:18px 0 16px}
.sh-h1 em{font-style:italic;color:var(--amber)}
.sh-lead{color:var(--text-dim);font-size:17px;max-width:46ch;margin-bottom:26px}
.sh-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}
.sh-specs{display:flex;flex-wrap:wrap;gap:8px}
.sh-specs span{font-family:var(--f-mono);font-size:11.5px;color:var(--text-dim);border:1px solid var(--line);padding:6px 11px;border-radius:8px}
.sh-specs span b{color:var(--text);font-weight:500}
.sh-device{position:relative;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);padding:30px;overflow:hidden}
.sh-tag{position:absolute;top:16px;right:18px;font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;color:var(--text-mute);z-index:2}
.sh-glow{position:absolute;inset:0;background:radial-gradient(420px 300px at 50% 62%,var(--amber-dim),transparent 70%);pointer-events:none}
.sh-device img{position:relative;width:100%;border-radius:12px;filter:drop-shadow(0 30px 50px rgba(0,0,0,.55))}

/* ── Section heads ────────────────────────────────────────── */
.sh-sec{padding:26px 0 40px}
.sh-sec-head{margin:34px 0 24px}
.sh-sec-head h2{font-weight:700;font-size:clamp(24px,3vw,33px);letter-spacing:-.01em;margin-top:6px}

/* ── Footer ───────────────────────────────────────────────── */
.sh-foot{border-top:1px solid var(--line);margin-top:60px;padding:38px 0 54px;background:var(--ink-2)}
.sh-foot-in{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start}
.sh-pay{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.sh-pay span{font-family:var(--f-mono);font-size:11px;color:var(--text-dim);border:1px solid var(--line);padding:6px 11px;border-radius:8px}
.sh-foot-links{display:flex;gap:22px;font-family:var(--f-mono);font-size:12px;color:var(--text-dim);flex-wrap:wrap}
.sh-foot-links a:hover{color:var(--amber)}
.sh-foot-note{font-family:var(--f-mono);font-size:11px;color:var(--text-mute);margin-top:18px;width:100%}

/* ══ WooCommerce ══════════════════════════════════════════════ */
.sh-wc{padding-top:30px;padding-bottom:20px;min-height:50vh}
.woocommerce-breadcrumb{font-family:var(--f-mono);font-size:12px;color:var(--text-mute);margin-bottom:20px}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{color:var(--text-dim)}
.woocommerce-products-header__title,.woocommerce h1,.woocommerce h2{font-family:var(--f-display);color:var(--text)}

/* Product grid */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 0 30px;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;position:relative;transition:transform .25s,border-color .25s,box-shadow .25s}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 24px 50px -28px rgba(0,0,0,.9)}
.woocommerce ul.products li.product a img{border-radius:10px;margin:0 0 14px;background:var(--ink-2)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-display);font-weight:700;font-size:18px;color:var(--text);padding:0;margin:4px 0 8px}
.woocommerce ul.products li.product .price{color:var(--amber)!important;font-family:var(--f-mono);font-weight:600;font-size:20px;display:block;margin-bottom:12px}
.woocommerce ul.products li.product .price del{color:var(--text-mute)!important;font-weight:400}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{background:var(--amber);color:#1c1a06;border-radius:7px;font-family:var(--f-mono);font-weight:600;min-height:auto;min-width:auto;padding:3px 10px;top:12px;right:12px;left:auto;margin:0}

/* Buttons */
.woocommerce a.button,.woocommerce button.button,.woocommerce .button,.woocommerce #respond input#submit,.woocommerce input.button,.woocommerce #place_order{background:var(--amber)!important;color:#1c1a06!important;border:0;border-radius:9px;font-family:var(--f-mono);font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:12.5px;padding:12px 18px;transition:.2s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover,.woocommerce input.button:hover{background:var(--amber-2)!important;color:#1c1a06!important}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--amber)!important;color:#1c1a06!important}

/* Single product */
.woocommerce div.product .product_title{font-family:var(--f-display);font-weight:800;color:var(--text);font-size:32px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--amber)!important;font-family:var(--f-mono);font-weight:600;font-size:28px}
.woocommerce div.product .woocommerce-product-details__short-description,.woocommerce div.product .woocommerce-tabs,.woocommerce div.product{color:var(--text-dim)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--panel);border-color:var(--line);border-radius:8px 8px 0 0}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--panel-2)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--text)}
.woocommerce div.product .woocommerce-tabs .panel{background:var(--panel);border:1px solid var(--line);border-radius:0 0 12px 12px;padding:20px;color:var(--text-dim)}
.woocommerce .quantity .qty{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);border-radius:8px;padding:8px}

/* Tables / cart / checkout */
.woocommerce table.shop_table{background:var(--panel);border:1px solid var(--line);border-radius:12px;color:var(--text)}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--line);color:var(--text)}
.woocommerce-cart table.cart td.actions,.woocommerce .cart-collaterals{color:var(--text-dim)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);border-radius:8px;padding:10px}
.woocommerce-checkout #payment{background:var(--panel);border-radius:12px}
.woocommerce label,.woocommerce-checkout label,.woocommerce h3{color:var(--text)}
.woocommerce a{color:var(--amber)}

/* ── Stripe Payment Element (card field) readability ──────────
   The card input is a Stripe-hosted iframe we cannot style directly; the Stripe
   plugin auto-derives its colours by sampling these checkout styles each load.
   Keep the payment area text + the input placeholder high-contrast so the field
   (labels "Card number" etc. + placeholders) stays readable on the dark theme. */
.woocommerce-checkout #payment{color:var(--text)}
.woocommerce form .form-row input.input-text::placeholder,
.woocommerce-checkout input::placeholder,
#wc-stripe-hidden-style-input::placeholder{color:#b6c0cf;opacity:1}
#wc-stripe-hidden-style-input{background:var(--panel-2);color:var(--text);border:1px solid var(--line-2);border-radius:8px;padding:10px}

/* Country/State select2 — keep selected text + dropdown readable on dark */
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--text)}
.select2-container--default .select2-selection--single{background:var(--panel-2);border:1px solid var(--line-2)}
.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:var(--text-dim) transparent transparent transparent}
.select2-dropdown{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text)}
.select2-container--default .select2-results__option{color:var(--text-dim)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--amber);color:#1c1a06}
.select2-container--default .select2-search--dropdown .select2-search__field{background:var(--ink-2);border:1px solid var(--line-2);color:var(--text)}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--panel);border-top:3px solid var(--amber);color:var(--text);border-radius:8px}
.woocommerce-message::before,.woocommerce-info::before{color:var(--amber)}

/* ── In-description product notes (cable requirement, system req.) ── */
.sh-prod-note{border-left:3px solid var(--amber);background:rgba(246,201,14,.06);padding:10px 14px;border-radius:8px;margin:14px 0;font-size:14px;color:var(--text-dim);line-height:1.55}
.sh-prod-note strong{color:var(--text)}
.sh-prod-note a{color:var(--amber);border-bottom:1px solid rgba(246,201,14,.4)}

/* ── Reveal ───────────────────────────────────────────────── */
.sh-rv{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}
.sh-rv.in{opacity:1;transform:none}

/* ── USD approximation label ──────────────────────────────── */
.sh-usd-approx{font-size:.72em;color:var(--text-mute);font-weight:400;white-space:nowrap}

/* ── Product page: hide single tab nav, product meta ─────── */
.woocommerce-tabs ul.tabs{display:none}
.woocommerce-tabs .woocommerce-Tabs-panel{border-top:1px solid var(--line);padding-top:24px}

/* ── Colour swatches ──────────────────────────────────────── */
.sh-hidden-select{display:none!important}
.sh-colour-picker{display:flex;gap:16px;flex-wrap:wrap;padding:4px 0}
.sh-colour-opt{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;user-select:none}
.sh-colour-swatch{width:30px;height:30px;border-radius:50%;border:2px solid var(--line);box-sizing:border-box;transition:border-color .18s,box-shadow .18s}
.sh-colour-opt:hover .sh-colour-swatch{border-color:var(--line-2)}
.sh-colour-opt.active .sh-colour-swatch{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-dim)}
.sh-colour-label{font-size:10px;color:var(--text-mute);font-family:var(--f-mono);letter-spacing:.05em;text-transform:uppercase;transition:color .18s}
.sh-colour-opt.active .sh-colour-label{color:var(--amber)}
.sh-c-black .sh-colour-swatch{background:#1c1f27}
.sh-c-red   .sh-colour-swatch{background:#c0392b}
.sh-c-white .sh-colour-swatch{background:#e8eaf0;border-color:var(--line-2)}

/* ── Non-EU import duties notice in checkout ─────────────── */
.sh-import-notice th{padding:10px 0 4px;font-weight:400;font-size:.82em;color:var(--text-mute);border-top:1px solid var(--line);line-height:1.5}
.sh-import-icon{color:var(--amber);margin-right:4px}

@media(max-width:900px){
  .sh-hero{grid-template-columns:1fr;gap:30px}
  .woocommerce ul.products{grid-template-columns:1fr 1fr}
  .sh-links{display:none}
}
@media(max-width:560px){.woocommerce ul.products{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.sh-rv{opacity:1;transform:none}}

/* OpenShack visual system — shared with openshack.com */
:root{
  --ink:#11231f;
  --ink-2:#29423b;
  --panel:#fffdf8;
  --panel-2:#ebe5d8;
  --line:rgba(17,35,31,.16);
  --line-2:rgba(17,35,31,.34);
  --amber:#e85d32;
  --amber-2:#f3764f;
  --amber-dim:rgba(232,93,50,.14);
  --phosphor:#c8df59;
  --phosphor-d:rgba(200,223,89,.24);
  --text:#11231f;
  --text-dim:#476059;
  --text-mute:#62736d;
  --radius:0;
  --radius-lg:0;
}

body{background:var(--paper,#f4f0e6);color:var(--ink);}
body::before{display:none}
::selection{background:var(--lime,#c8df59);color:var(--ink)}
::-webkit-scrollbar-track{background:var(--paper-2,#ebe5d8)}
::-webkit-scrollbar-thumb{background:var(--ink-2);border-radius:0;border-color:var(--paper-2,#ebe5d8)}
h1,h2,h3{color:var(--ink)}

.sh-news{background:var(--lime,#c8df59);border-bottom:1px solid var(--ink);color:var(--ink);font:500 12px/1.45 var(--f-mono);letter-spacing:.02em;text-align:center;padding:9px 16px}
.sh-news strong{color:var(--ink);font-weight:700}
.sh-nav{background:rgba(244,240,230,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.sh-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}
.sh-brand img{width:42px;height:42px;flex:0 0 auto}
.sh-logo{color:var(--ink);font-size:21px;font-weight:850;letter-spacing:-.045em;line-height:.83}
.sh-logo small{display:block;color:var(--muted,#62736d);font-size:9px;letter-spacing:.17em;margin:5px 0 0;text-transform:uppercase}
.sh-links{color:var(--ink-2);font-size:12px;font-weight:500}
.sh-links a:hover{color:var(--amber)}
.sh-lang{gap:0;border-left:1px solid var(--line);padding-left:14px}
.sh-lang-btn,.sh-lang-btn.active{border:0;border-radius:0;padding:6px 8px;color:var(--muted,#62736d);background:transparent}
.sh-lang-btn:hover,.sh-lang-btn.active{color:var(--ink);background:var(--lime,#c8df59)}
.sh-cart{border:2px solid var(--ink);border-radius:0;padding:8px 13px;color:var(--ink);font-weight:600}
.sh-cart:hover{border-color:var(--orange,var(--amber));color:var(--ink);background:var(--lime,#c8df59)}
.sh-cart .d{width:7px;height:7px;border-radius:0;background:var(--orange,var(--amber));box-shadow:none}
.morse-rule{height:6px;opacity:1;-webkit-mask-image:none;mask-image:none;background:var(--orange,var(--amber));background-size:auto}

.sh-hero{padding:82px 0 62px;gap:56px}
.sh-h1{color:var(--ink);font-size:clamp(46px,5.8vw,74px);line-height:.91;letter-spacing:-.065em;max-width:10ch}
.sh-h1 em{color:var(--orange,var(--amber));font-style:normal}
.sh-lead{color:var(--ink-2);font-size:18px;line-height:1.48;max-width:48ch}
.sh-eyebrow{color:var(--orange,var(--amber));font-weight:700}
.sh-eyebrow::before{background:currentColor}
.sh-btn{border:2px solid var(--ink);border-radius:0;padding:14px 21px;color:var(--ink);font-weight:700}
.sh-btn-amber{background:var(--orange,var(--amber));color:#fff;border-color:var(--orange,var(--amber))}
.sh-btn-amber:hover{background:var(--orange-dark,#b93d1d);border-color:var(--orange-dark,#b93d1d);box-shadow:none;transform:translateY(-2px)}
.sh-btn-ghost{background:transparent;border-color:var(--ink);color:var(--ink)}
.sh-btn-ghost:hover{background:var(--ink);border-color:var(--ink);color:var(--white,#fffdf8)}
.sh-specs span{border-color:var(--line);border-radius:0;color:var(--ink-2);background:var(--paper-2,#ebe5d8);padding:7px 10px}
.sh-specs span b{color:var(--ink)}
.sh-device{border:2px solid var(--ink);border-radius:0;background:var(--ink);padding:17px;box-shadow:10px 10px 0 var(--lime,#c8df59)}
.sh-tag{color:var(--lime,#c8df59)}
.sh-glow{background:radial-gradient(420px 300px at 50% 62%,rgba(200,223,89,.2),transparent 70%)}
.sh-device img{border-radius:0}
.sh-sec{padding:40px 0 52px}
.sh-sec-head h2{color:var(--ink);font-size:clamp(30px,3.4vw,42px);letter-spacing:-.045em}

.woocommerce ul.products{gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.woocommerce ul.products li.product{background:var(--paper,#f4f0e6);border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:20px;min-height:410px}
.woocommerce ul.products li.product:hover{background:var(--white,#fffdf8);border-color:var(--line);box-shadow:none;transform:translateY(-4px)}
.woocommerce ul.products li.product a img{border-radius:0;background:var(--white,#fffdf8);border:1px solid var(--line);padding:8px}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-products-header__title,.woocommerce h1,.woocommerce h2{color:var(--ink)}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--orange,var(--amber))!important}
.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{background:var(--lime,#c8df59);color:var(--ink);border-radius:0;padding:4px 9px}
.woocommerce a.button,.woocommerce button.button,.woocommerce .button,.woocommerce #respond input#submit,.woocommerce input.button,.woocommerce #place_order{background:var(--orange,var(--amber))!important;color:#fff!important;border:2px solid var(--orange,var(--amber));border-radius:0;padding:11px 16px;font-weight:700}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover,.woocommerce input.button:hover{background:var(--orange-dark,#b93d1d)!important;border-color:var(--orange-dark,#b93d1d);color:#fff!important}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--orange,var(--amber))!important;color:#fff!important}

.woocommerce div.product .product_title,.woocommerce label,.woocommerce-checkout label,.woocommerce h3{color:var(--ink)}
.woocommerce div.product .woocommerce-product-details__short-description,.woocommerce div.product .woocommerce-tabs,.woocommerce div.product,.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering,.woocommerce-cart table.cart td.actions,.woocommerce .cart-collaterals{color:var(--ink-2)}
.woocommerce div.product .woocommerce-tabs ul.tabs li,.woocommerce div.product .woocommerce-tabs ul.tabs li.active,.woocommerce div.product .woocommerce-tabs .panel,.woocommerce table.shop_table,.woocommerce-checkout #payment{background:var(--white,#fffdf8);border-color:var(--line);border-radius:0;color:var(--ink)}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--line);color:var(--ink)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection,.woocommerce .quantity .qty,#wc-stripe-hidden-style-input{background:var(--white,#fffdf8);border:1px solid var(--line-2);border-radius:0;color:var(--ink)}
.woocommerce form .form-row input.input-text::placeholder,.woocommerce-checkout input::placeholder,#wc-stripe-hidden-style-input::placeholder{color:var(--muted,#62736d)}
.select2-container--default .select2-selection--single{background:var(--white,#fffdf8);border:1px solid var(--line-2)}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--ink)}
.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:var(--ink-2) transparent transparent transparent}
.select2-dropdown{background:var(--white,#fffdf8);border-color:var(--line-2);color:var(--ink)}
.select2-container--default .select2-results__option{color:var(--ink-2)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--lime,#c8df59);color:var(--ink)}
.select2-container--default .select2-search--dropdown .select2-search__field{background:var(--paper,#f4f0e6);border-color:var(--line-2);color:var(--ink)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--white,#fffdf8);border-top:3px solid var(--orange,var(--amber));border-radius:0;color:var(--ink)}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce a,.sh-import-icon{color:var(--orange,var(--amber))}
.sh-prod-note,.sh-prod-dev{border-radius:0!important;border-color:var(--line)!important;border-left:3px solid var(--orange,var(--amber))!important;background:rgba(232,93,50,.07)!important;color:var(--ink-2)!important}
.sh-prod-note strong{color:var(--ink)}
.sh-prod-note a{color:var(--orange,var(--amber));border-color:rgba(232,93,50,.4)}
.sh-colour-swatch{border-radius:0;border-color:var(--line-2)}
.sh-colour-opt.active .sh-colour-swatch{border-color:var(--orange,var(--amber));box-shadow:0 0 0 3px var(--amber-dim)}
.sh-colour-opt.active .sh-colour-label{color:var(--orange,var(--amber))}
.sh-foot{background:var(--ink);border-top:7px solid var(--orange,var(--amber));margin-top:62px;padding:36px 0 48px}
.sh-foot .sh-logo{color:var(--white,#fffdf8)}
.sh-foot .sh-logo small,.sh-foot-note{color:#b8c8c0}
.sh-foot .sh-brand img{background:var(--paper,#f4f0e6);padding:3px}
.sh-pay span{border-color:rgba(255,255,255,.22);border-radius:0;color:#dfe7e3}
.sh-foot-links{color:#dfe7e3}
.sh-foot-links a:hover{color:var(--lime,#c8df59)}

@media(max-width:900px){.sh-links{display:none}.sh-hero{gap:38px}.woocommerce ul.products{gap:0}}
@media(max-width:560px){.sh-wrap{padding:0 16px}.sh-nav-in{height:70px}.sh-brand img{width:36px;height:36px}.sh-logo{font-size:18px}.sh-lang{padding-left:7px}.sh-cart{padding:7px 9px;font-size:11px}.sh-hero{padding:50px 0 45px}.sh-h1{font-size:clamp(43px,14vw,60px)}.sh-btn{width:100%;justify-content:center}.sh-device{box-shadow:6px 6px 0 var(--lime,#c8df59)}.woocommerce ul.products li.product{min-height:0}}
