/* Generated from the approved EMF Protection designs. Edit the source designs, then rerun build/split_css.py. */
@media (max-width:900px){.gallery{position: relative; background: linear-gradient(145deg, #0d2035 0%, #1a3a52 60%, #16324a 100%); aspect-ratio: 1/1; overflow: hidden;}}
@media (max-width:900px){.gallery-main{width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}}
@media (max-width:900px){.gallery-img-placeholder{opacity: 0.18;}}
@media (max-width:900px){.gallery-badge{position: absolute; top: 1rem; left: 1rem; background: var(--white); color: var(--action); font-size: 0.6875rem; font-weight: 700; padding: 0.3rem 0.75rem; border-radius: 100px; box-shadow: var(--sh);}}
@media (max-width:900px){.gallery-sale-badge{position: absolute; top: 1rem; right: 1rem; background: var(--amber); color: var(--white); font-size: 0.6875rem; font-weight: 700; padding: 0.3rem 0.75rem; border-radius: 100px;}}
@media (max-width:900px){.gallery-wishlist{position: absolute; bottom: 1rem; right: 1rem; width: 44px; height: 44px; background: rgba(255,255,255,0.9); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--ink-light); box-shadow: var(--sh-md); -webkit-tap-highlight-color: transparent;}}
@media (max-width:900px){.gallery-wishlist:active{color: #e05a5a;}}
@media (max-width:900px){.gallery-dots{position: absolute; bottom: 1rem; left: 50%; transform: translateX(-50%); display: flex; gap: 5px;}}
@media (max-width:900px){.gallery-dot{width: 6px; height: 6px; border-radius: 50%; background: rgba(255,255,255,0.4);}}
@media (max-width:900px){.gallery-dot.active{background: var(--white); width: 18px; border-radius: 3px;}}
@media (max-width:900px){.gallery-thumbs{display: flex; gap: 0.5rem; padding: 0.75rem 1.25rem; overflow-x: auto; background: var(--surface); border-bottom: 1px solid var(--border); -webkit-overflow-scrolling: touch; scrollbar-width: none;}}
@media (max-width:900px){.gallery-thumbs::-webkit-scrollbar{display: none;}}
@media (max-width:900px){.gallery-thumb{width: 56px; height: 56px; border-radius: var(--r); flex-shrink: 0; overflow: hidden; border: 2px solid transparent; -webkit-tap-highlight-color: transparent;}}
@media (max-width:900px){.gallery-thumb.active{border-color: var(--action);}}
@media (max-width:900px){.gallery-thumb-inner{width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}}
@media (max-width:900px){.gt-1{background: linear-gradient(135deg, #0d2035, #1a3a52);}}
@media (max-width:900px){.gt-2{background: linear-gradient(135deg, #1a3040, #2a5060);}}
@media (max-width:900px){.gt-3{background: linear-gradient(135deg, #162838, #1e4050);}}
@media (max-width:900px){.gt-4{background: linear-gradient(135deg, #0f2030, #24404e);}}
@media (max-width:900px){.product-info{padding: 1.25rem;}}
@media (max-width:900px){.product-eyebrow{font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--action); margin-bottom: 0.375rem;}}
@media (max-width:900px){.product-title{font-size: 1.5rem; font-weight: 800; color: var(--ink); letter-spacing: -0.025em; line-height: 1.15; margin-bottom: 0.375rem;}}
@media (max-width:900px){.product-subtitle{font-size: 0.875rem; color: var(--ink-light); margin-bottom: 1rem;}}
@media (max-width:900px){.product-rating-row{display: flex; align-items: center; gap: 0.625rem; margin-bottom: 1.125rem; flex-wrap: wrap;}}
@media (max-width:900px){.stars{display: flex; gap: 1px; color: var(--amber);}}
@media (max-width:900px){.rating-score{font-size: 0.875rem; font-weight: 700; color: var(--ink);}}
@media (max-width:900px){.rating-count{font-size: 0.8125rem; color: var(--action); text-decoration: underline;}}
@media (max-width:900px){.divider{height: 1px; background: var(--border); margin: 1.125rem 0;}}
@media (max-width:900px){.price-row{display: flex; align-items: baseline; gap: 0.625rem; margin-bottom: 0.375rem;}}
@media (max-width:900px){.price-main{font-size: 1.875rem; font-weight: 800; color: var(--ink); letter-spacing: -0.02em; line-height: 1;}}
@media (max-width:900px){.price-range-note{font-size: 0.8125rem; color: var(--ink-light);}}
@media (max-width:900px){.price-note{font-size: 0.8125rem; color: var(--ink-light); margin-bottom: 1.125rem;}}
@media (max-width:900px){.klarna-row{display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1.125rem; background: var(--surface); border-radius: var(--r); padding: 0.625rem 0.875rem;}}
@media (max-width:900px){.klarna-logo{font-size: 0.75rem; font-weight: 800; color: #17120e; background: #ffd6e0; border-radius: 4px; padding: 0.2rem 0.4rem;}}
@media (max-width:900px){.klarna-text{font-size: 0.8125rem; color: var(--ink-mid);}}
@media (max-width:900px){.option-label{font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ink-light); margin-bottom: 0.625rem; display: flex; align-items: center; justify-content: space-between;}}
@media (max-width:900px){.option-label a{font-size: 0.75rem; font-weight: 600; color: var(--action); text-transform: none; letter-spacing: 0;}}
@media (max-width:900px){.size-options{display: flex; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 1.125rem;}}
@media (max-width:900px){.size-opt{padding: 0.625rem 1rem; border-radius: var(--r); border: 1.5px solid var(--border); font-size: 0.9375rem; font-weight: 600; color: var(--ink-mid); background: var(--white); -webkit-tap-highlight-color: transparent; cursor: pointer; transition: all 150ms;}}
@media (max-width:900px){.size-opt.active{border-color: var(--action); color: var(--action); background: var(--action-pale);}}
@media (max-width:900px){.size-opt.unavailable{opacity: 0.38; cursor: not-allowed; text-decoration: line-through;}}
@media (max-width:900px){.qty-row{display: flex; align-items: center; gap: 1rem; margin-bottom: 1.125rem;}}
@media (max-width:900px){.qty-label{font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ink-light);}}
@media (max-width:900px){.qty-ctrl{display: flex; align-items: center; border: 1.5px solid var(--border); border-radius: var(--r); overflow: hidden;}}
@media (max-width:900px){.qty-btn{width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; font-size: 1.25rem; font-weight: 600; color: var(--ink-mid); -webkit-tap-highlight-color: transparent;}}
@media (max-width:900px){.qty-btn:active{background: var(--surface);}}
@media (max-width:900px){.qty-val{min-width: 36px; text-align: center; font-size: 1rem; font-weight: 700; color: var(--ink);}}
@media (max-width:900px){.trust-bullets{display: flex; flex-direction: column; gap: 0.625rem; margin-bottom: 1.125rem;}}
@media (max-width:900px){.trust-bullet{display: flex; align-items: center; gap: 0.625rem; font-size: 0.875rem; color: var(--ink-mid);}}
@media (max-width:900px){.trust-bullet-icon{width: 20px; height: 20px; border-radius: 50%; background: var(--action-pale); display: flex; align-items: center; justify-content: center; color: var(--action); flex-shrink: 0;}}
@media (max-width:900px){.atc-bar{position: fixed; left: 0; right: 0; bottom: 0; height: var(--atc-height); background: var(--white); border-top: 1px solid var(--border); display: flex; align-items: center; padding: 0 1.25rem; gap: 0.875rem; z-index: 200; box-shadow: 0 -4px 20px rgba(15,30,46,0.10);}}
@media (max-width:900px){.atc-price-block{flex-shrink: 0;}}
@media (max-width:900px){.atc-price-from{font-size: 0.6875rem; color: var(--ink-light); display: block;}}
@media (max-width:900px){.atc-price{font-size: 1.375rem; font-weight: 800; color: var(--ink); letter-spacing: -0.02em; line-height: 1.1;}}
@media (max-width:900px){.atc-btn{flex: 1; display: flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.9375rem; background: var(--action); color: var(--white); font-size: 1rem; font-weight: 700; border-radius: var(--r-lg); border: none; -webkit-tap-highlight-color: transparent;}}
@media (max-width:900px){.atc-btn:active{background: var(--action-dark); transform: scale(0.98);}}
@media (max-width:900px){.atc-wishlist{width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; border: 1.5px solid var(--border); border-radius: var(--r-lg); color: var(--ink-light); flex-shrink: 0; -webkit-tap-highlight-color: transparent;}}
@media (max-width:900px){.atc-wishlist:active{border-color: #e05a5a; color: #e05a5a;}}
@media (max-width:900px){.tabs-bar{display: flex; border-bottom: 2px solid var(--border); overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none;}}
@media (max-width:900px){.tabs-bar::-webkit-scrollbar{display: none;}}
@media (max-width:900px){.tab-btn{flex-shrink: 0; padding: 0.875rem 1.25rem; font-size: 0.875rem; font-weight: 600; color: var(--ink-light); background: none; border: none; border-bottom: 2px solid transparent; margin-bottom: -2px; -webkit-tap-highlight-color: transparent; cursor: pointer; white-space: nowrap;}}
@media (max-width:900px){.tab-btn.active{color: var(--action); border-bottom-color: var(--action);}}
@media (max-width:900px){.tab-panel{display: none; padding: 1.5rem 1.25rem;}}
@media (max-width:900px){.tab-panel.active{display: block;}}
@media (max-width:900px){.product-desc-text{font-size: 0.9375rem; color: var(--ink-mid); line-height: 1.75; margin-bottom: 1.25rem;}}
@media (max-width:900px){.feature-list{list-style: none; display: flex; flex-direction: column; gap: 0.625rem;}}
@media (max-width:900px){.feature-item{display: flex; align-items: flex-start; gap: 0.625rem; font-size: 0.9375rem; color: var(--ink-mid);}}
@media (max-width:900px){.feature-check{width: 20px; height: 20px; background: var(--action-pale); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--action); flex-shrink: 0; margin-top: 2px;}}
@media (max-width:900px){.spec-table{width: 100%; border-collapse: collapse;}}
@media (max-width:900px){.spec-table tr{border-bottom: 1px solid var(--surface);}}
@media (max-width:900px){.spec-table tr:last-child{border-bottom: none;}}
@media (max-width:900px){.spec-table td{padding: 0.75rem 0; font-size: 0.9375rem; vertical-align: top;}}
@media (max-width:900px){.spec-table td:first-child{color: var(--ink-light); width: 40%; padding-right: 1rem; font-size: 0.875rem;}}
@media (max-width:900px){.spec-table td:last-child{color: var(--ink); font-weight: 600;}}
@media (max-width:900px){.cert-pills{display: flex; gap: 0.5rem; flex-wrap: wrap; margin-top: 1.25rem;}}
@media (max-width:900px){.cert-pill{background: var(--action-pale); border: 1px solid rgba(56,119,128,0.18); border-radius: 100px; padding: 0.3rem 0.75rem; font-size: 0.75rem; font-weight: 700; color: var(--action-dark);}}
@media (max-width:900px){.review-summary{background: var(--surface); border-radius: var(--r-lg); padding: 1.25rem; margin-bottom: 1.25rem; display: flex; align-items: center; gap: 1.25rem;}}
@media (max-width:900px){.review-big-score{font-size: 3rem; font-weight: 800; color: var(--ink); letter-spacing: -0.04em; line-height: 1;}}
@media (max-width:900px){.review-stars-lg{display: flex; gap: 3px; margin-bottom: 0.25rem; color: var(--amber);}}
@media (max-width:900px){.review-total{font-size: 0.8125rem; color: var(--ink-light);}}
@media (max-width:900px){.review-bars{display: flex; flex-direction: column; gap: 0.3rem; flex: 1;}}
@media (max-width:900px){.review-bar-row{display: flex; align-items: center; gap: 0.375rem;}}
@media (max-width:900px){.review-bar-label{font-size: 0.6875rem; color: var(--ink-light); width: 8px; flex-shrink: 0;}}
@media (max-width:900px){.review-bar-track{flex: 1; height: 5px; background: var(--border); border-radius: 3px; overflow: hidden;}}
@media (max-width:900px){.review-bar-fill{height: 100%; background: var(--amber); border-radius: 3px;}}
@media (max-width:900px){.review-cards{display: flex; flex-direction: column; gap: 1rem;}}
@media (max-width:900px){.review-card{border: 1px solid var(--border); border-radius: var(--r-lg); padding: 1.125rem;}}
@media (max-width:900px){.review-head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.625rem;}}
@media (max-width:900px){.review-author{font-size: 0.875rem; font-weight: 700; color: var(--ink);}}
@media (max-width:900px){.review-date{font-size: 0.75rem; color: var(--ink-light);}}
@media (max-width:900px){.r-stars{display: flex; gap: 2px; margin-bottom: 0.5rem; color: var(--amber);}}
@media (max-width:900px){.review-title{font-size: 0.9375rem; font-weight: 700; color: var(--ink); margin-bottom: 0.375rem;}}
@media (max-width:900px){.review-text{font-size: 0.875rem; color: var(--ink-mid); line-height: 1.65; font-style: italic;}}
@media (max-width:900px){.review-verified-row{display: flex; align-items: center; gap: 0.25rem; font-size: 0.6875rem; font-weight: 600; color: var(--action); margin-top: 0.625rem;}}
@media (max-width:900px){.related-section{padding: 1.5rem 0 1.5rem; background: var(--surface); border-top: 1px solid var(--border);}}
@media (max-width:900px){.related-header{padding: 0 1.25rem; margin-bottom: 1rem;}}
@media (max-width:900px){.related-eyebrow{font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--action); margin-bottom: 0.25rem;}}
@media (max-width:900px){.related-title{font-size: 1.25rem; font-weight: 800; color: var(--ink);}}
@media (max-width:900px){.related-scroll{display: flex; gap: 0.875rem; overflow-x: auto; padding: 0.25rem 1.25rem 0.5rem; -webkit-overflow-scrolling: touch; scrollbar-width: none;}}
@media (max-width:900px){.related-scroll::-webkit-scrollbar{display: none;}}
@media (max-width:900px){.related-card{background: var(--white); border-radius: var(--r-lg); border: 1px solid var(--border); width: 200px; flex-shrink: 0; overflow: hidden; box-shadow: var(--sh);}}
@media (max-width:900px){.related-img{aspect-ratio: 4/3; display: flex; align-items: center; justify-content: center;}}
@media (max-width:900px){.ri-1{background: linear-gradient(135deg, #1a3040, #2a5060);}}
@media (max-width:900px){.ri-2{background: linear-gradient(135deg, #162838, #1e4050);}}
@media (max-width:900px){.ri-3{background: linear-gradient(135deg, #0f2030, #24404e);}}
@media (max-width:900px){.related-body{padding: 0.75rem;}}
@media (max-width:900px){.related-name{font-size: 0.8125rem; font-weight: 700; color: var(--ink); margin-bottom: 0.25rem; line-height: 1.3;}}
@media (max-width:900px){.related-rating{display: flex; align-items: center; gap: 0.25rem; margin-bottom: 0.5rem; font-size: 0.6875rem; color: var(--ink-light);}}
@media (max-width:900px){.related-price{font-size: 0.9375rem; font-weight: 800; color: var(--ink);}}
@media (max-width:900px){.site-footer{background: var(--footer-bg); padding: 2rem 1.25rem 1.5rem;}}
@media (max-width:900px){.fc{background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.09); border-radius: 4px; padding: 0.2rem 0.5rem; font-size: 0.625rem; font-weight: 600; color: rgba(255,255,255,0.35);}}
@media (max-width:900px){.payment-icons{display: flex; gap: 0.375rem; flex-wrap: wrap;}}
@media (max-width:900px){.pay{display: inline-flex; border-radius: 4px; overflow: hidden; line-height: 0;}}
.sticky-bar{position:fixed;bottom:0;left:0;right:0;z-index:300;background:var(--white);border-top:2px solid var(--border);padding:0.875rem 1.5rem;box-shadow:0 -4px 24px rgba(15,30,46,0.12);transform:translateY(100%);transition:transform 250ms ease-out}
.sticky-bar.show{transform:translateY(0)}
.sticky-inner{max-width:1340px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.sticky-product{display:flex;align-items:center;gap:1rem}
.sticky-thumb{width:48px;height:48px;border-radius:var(--r);background:linear-gradient(135deg,#0d2035,#1a3a52);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sticky-name{font-size:0.9375rem;font-weight:700;color:var(--ink)}
.sticky-price{font-size:0.875rem;color:var(--ink-mid)}
.sticky-actions{display:flex;align-items:center;gap:1rem}
.sticky-size-lbl{font-size:0.875rem;color:var(--ink-mid)}
.product-wrap{max-width:1340px;margin:0 auto;padding:2.5rem 1.5rem 0;display:grid;grid-template-columns:1fr 400px;gap:4rem;align-items:start}
.gallery{position:sticky;top:88px}
.thumb-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0.625rem;margin-bottom:0.875rem}
.thumb{aspect-ratio:1;border-radius:var(--r);overflow:hidden;cursor:pointer;border:2px solid transparent;display:flex;align-items:center;justify-content:center;transition:border-color 150ms}
.t1{background:linear-gradient(135deg,#0d2035,#1a3a52)}
.t2{background:linear-gradient(135deg,#1a3040,#2a5060)}
.t3{background:linear-gradient(135deg,#162838,#264858)}
.t4{background:linear-gradient(135deg,#0f2030,#1e3c4c)}
.thumb.active,.thumb:hover{border-color:var(--action)}
.thumb:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.main-img{aspect-ratio:1;border-radius:var(--r-lg);background:linear-gradient(135deg,#0d2035 0%,#1a3a52 45%,#0f2438 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:1rem}
.main-img-tag{position:absolute;top:1rem;left:1rem;background:rgba(255,255,255,0.92);color:var(--ink);font-size:0.6875rem;font-weight:700;padding:0.3rem 0.75rem;border-radius:100px;box-shadow:var(--sh)}
.main-img-zoom{position:absolute;bottom:1rem;right:1rem;width:36px;height:36px;background:rgba(255,255,255,0.9);border-radius:var(--r);display:flex;align-items:center;justify-content:center;color:var(--ink-mid);cursor:pointer;transition:background 150ms}
.main-img-zoom:hover{background:var(--white);color:var(--action)}
.lab-panel{background:var(--ink);border-radius:var(--r-lg);padding:1.5rem}
.lab-panel-title{font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:1.125rem}
.freq-row{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.625rem}
.freq-row:last-child{margin-bottom:0}
.freq-name{font-size:0.8125rem;color:rgba(255,255,255,0.45);width:100px;flex-shrink:0}
.freq-bar{flex:1;height:4px;background:rgba(255,255,255,0.1);border-radius:2px;overflow:hidden}
.freq-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--brand) 0%,var(--action) 100%)}
.freq-val{font-size:0.8125rem;font-weight:700;color:rgba(255,255,255,0.72);width:40px;text-align:right}
.lab-cert{font-size:0.6875rem;color:rgba(255,255,255,0.3);margin-top:0.875rem;padding-top:0.875rem;border-top:1px solid rgba(255,255,255,0.07);display:flex;justify-content:space-between}
.lab-cert strong{color:rgba(255,255,255,0.6)}
.purchase-panel{position:sticky;top:88px}
.pp{background:var(--white);border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-md)}
.pp-head{background:var(--ink);padding:1.25rem 1.5rem}
.pp-cat{font-size:0.6875rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:0.25rem}
.pp-name{font-size:1rem;font-weight:700;color:var(--white);line-height:1.3}
.pp-body{padding:1.5rem}
.pp-stars{display:flex;align-items:center;gap:0.625rem;margin-bottom:1rem}
.star-row{display:flex;gap:2px;color:var(--amber)}
.pp-review-link{font-size:0.875rem;color:var(--action);text-decoration:underline;text-underline-offset:2px}
.cert-strip{display:flex;align-items:center;gap:0.625rem;background:var(--ink);border-radius:var(--r);padding:0.875rem 1rem;margin-bottom:1.25rem;color:var(--white);font-size:0.875rem;font-weight:600}
.cert-icon{color:var(--action);flex-shrink:0}
.price-block{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.price-main{font-size:2.25rem;font-weight:800;color:var(--ink);letter-spacing:-0.04em;line-height:1}
.price-note{font-size:0.8125rem;color:var(--ink-light);margin-top:0.3rem}
.sp-row{display:flex;align-items:center;gap:0.5rem;font-size:0.8125rem;margin-bottom:0.4rem}
.sp-row.bought{font-weight:700;color:var(--action-dark)}
.sp-row.viewing{color:var(--ink-light)}
.sp-dot{width:7px;height:7px;border-radius:50%;background:var(--success);animation:blink 1.5s infinite;flex-shrink:0}
@keyframes blink{0%,100%{opacity:1}
50%{opacity:0.4}}
.field-lbl{font-size:0.75rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--ink-light);margin-bottom:0.5rem;display:flex;justify-content:space-between;align-items:center}
.size-guide{font-size:0.75rem;font-weight:600;color:var(--action);text-transform:none;letter-spacing:0}
.size-opts{display:flex;gap:0.375rem;flex-wrap:wrap;margin-bottom:1rem}
.sz-btn{font-size:0.875rem;font-weight:600;padding:0.5625rem 1rem;border-radius:var(--r);border:2px solid var(--border);color:var(--ink-mid);cursor:pointer;background:var(--white);transition:all 150ms}
.sz-btn:hover{border-color:var(--action);color:var(--action)}
.sz-btn.active{background:var(--ink);color:var(--white);border-color:var(--ink)}
.sz-btn:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.stock-row{display:flex;align-items:center;gap:0.5rem;font-size:0.8125rem;margin-bottom:1rem}
.stock-in{color:var(--success);font-weight:600}
.stock-dot-in{width:8px;height:8px;border-radius:50%;background:var(--success)}
.qty-block{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}
.qty-ctrl{display:flex;align-items:center;border:2px solid var(--border);border-radius:var(--r);overflow:hidden;background:var(--white)}
.qty-btn-ctrl{width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:var(--ink-mid);cursor:pointer;transition:background 150ms,color 150ms}
.qty-btn-ctrl:hover{background:var(--surface);color:var(--ink)}
.qty-n{width:40px;text-align:center;font-size:0.9375rem;font-weight:700;color:var(--ink)}
.pay-row{display:flex;align-items:center;justify-content:center;gap:0.5rem;margin-bottom:1.25rem;flex-wrap:wrap}
.pay-badge{display:inline-flex;border-radius:4px;overflow:hidden;line-height:0}
.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem}
.trust-item{display:flex;align-items:center;gap:0.5rem;padding:0.625rem 0.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r)}
.trust-icon{color:var(--action);flex-shrink:0}
.trust-txt{font-size:0.75rem;font-weight:500;color:var(--ink-mid);line-height:1.3}
.upsell{margin-top:1rem;background:var(--warm);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}
.upsell-hd{padding:0.875rem 1rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.upsell-title{font-size:0.8125rem;font-weight:700;color:var(--ink)}
.upsell-save{background:rgba(196,123,30,0.12);color:var(--amber);font-size:0.6875rem;font-weight:700;padding:0.2rem 0.5rem;border-radius:100px;border:1px solid rgba(196,123,30,0.2)}
.upsell-item{display:flex;align-items:center;gap:0.875rem;padding:0.875rem 1rem;border-bottom:1px solid var(--border)}
.upsell-item:last-child{border-bottom:none}
.upsell-check{width:18px;height:18px;border-radius:3px;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:all 150ms}
.upsell-check.on{background:var(--action);border-color:var(--action)}
.upsell-img{width:38px;height:38px;border-radius:var(--r);flex-shrink:0;display:flex;align-items:center;justify-content:center}
.upsell-name{font-size:0.8125rem;font-weight:600;color:var(--ink)}
.upsell-sub{font-size:0.75rem;color:var(--ink-light)}
.upsell-price{font-size:0.8125rem;font-weight:700;color:var(--ink-mid);white-space:nowrap}
.tabs-section{max-width:1340px;margin:0 auto;padding:4rem 1.5rem}
.tab-nav{display:flex;border-bottom:2px solid var(--border);margin-bottom:2.5rem;overflow-x:auto}
.tab-btn{font-size:0.9375rem;font-weight:600;color:var(--ink-light);padding:0.875rem 1.375rem;cursor:pointer;border:none;background:none;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color 150ms,border-color 150ms}
.tab-btn:hover{color:var(--ink)}
.tab-btn.active{color:var(--action);border-bottom-color:var(--action)}
.tab-btn:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.tab-pane{display:none}
.tab-pane.active{display:block}
.tab-pane h3{font-size:1.0625rem;font-weight:700;color:var(--ink);margin-bottom:0.625rem;margin-top:1.5rem}
.tab-pane h3:first-child{margin-top:0}
.tab-pane p{font-size:0.9375rem;color:var(--ink-mid);line-height:1.7;margin-bottom:0.875rem}
.tab-pane ul{font-size:0.9375rem;color:var(--ink-mid);line-height:1.7;padding-left:1.25rem;margin-bottom:0.875rem}
.tab-pane li{margin-bottom:0.3rem}
.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem}
.spec-row{display:flex;justify-content:space-between;padding:0.75rem 1rem;background:var(--white);border:1px solid var(--border);border-radius:var(--r);font-size:0.875rem}
.spec-k{color:var(--ink-light)}
.spec-v{font-weight:700;color:var(--ink)}
.faq-item{border-bottom:1px solid var(--border);padding:1.25rem 0}
.faq-item:first-child{padding-top:0}
.faq-q{font-size:1rem;font-weight:700;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq-q::after{content:'▾';font-size:0.875rem;color:var(--ink-light);flex-shrink:0}
.faq-a{font-size:0.9375rem;color:var(--ink-mid);line-height:1.7;margin-top:0.75rem}
.features-section{background:var(--ink);padding:5rem 1.5rem}
.features-inner{max-width:1340px;margin:0 auto}
.feat-eyebrow{font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--action);margin-bottom:0.625rem}
.feat-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;color:var(--white);letter-spacing:-0.025em;margin-bottom:3.5rem;text-wrap:balance}
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.feat-card{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:var(--r-lg);padding:1.75rem;transition:background 150ms}
.feat-card:hover{background:rgba(255,255,255,0.1)}
.feat-icon{width:44px;height:44px;background:rgba(56,119,128,0.2);border-radius:var(--r);display:flex;align-items:center;justify-content:center;color:var(--action);margin-bottom:1.125rem}
.feat-card-title{font-size:1rem;font-weight:700;color:var(--white);margin-bottom:0.5rem}
.feat-card-desc{font-size:0.875rem;color:rgba(255,255,255,0.58);line-height:1.65}
.reviews-section{background:var(--warm);padding:5rem 1.5rem}
.reviews-inner{max-width:1340px;margin:0 auto}
.reviews-layout{display:grid;grid-template-columns:220px 1fr;gap:3rem;align-items:start}
.rating-summary-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:2rem;text-align:center;box-shadow:var(--sh)}
.r-big{font-size:3.75rem;font-weight:800;color:var(--ink);letter-spacing:-0.04em;line-height:1}
.r-stars-big{display:flex;gap:2px;justify-content:center;color:var(--amber);margin:0.5rem 0}
.r-lbl{font-size:0.875rem;font-weight:700;color:var(--ink)}
.r-count{font-size:0.75rem;color:var(--ink-light)}
.r-bars{display:flex;flex-direction:column;gap:0.5rem;margin-top:1.5rem}
.r-bar-row{display:flex;align-items:center;gap:0.75rem;font-size:0.8125rem}
.r-bar-n{width:16px;color:var(--ink-mid);font-weight:600;text-align:right}
.r-bar-track{flex:1;height:6px;background:var(--surface);border-radius:3px;overflow:hidden}
.r-bar-fill{height:100%;border-radius:3px;background:var(--amber)}
.r-bar-pct{width:28px;color:var(--ink-light);text-align:right}
.reviews-right-title{font-size:clamp(1.5rem,2vw,1.875rem);font-weight:800;color:var(--ink);letter-spacing:-0.025em;margin-bottom:0.5rem}
.reviews-right-sub{font-size:0.9375rem;color:var(--ink-light);margin-bottom:1.5rem}
.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.review-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.75rem;box-shadow:var(--sh)}
.r-stars{display:flex;gap:2px;color:var(--amber);margin-bottom:0.875rem}
.r-title{font-size:0.9375rem;font-weight:700;color:var(--ink);margin-bottom:0.5rem}
.r-text{font-size:0.875rem;color:var(--ink-mid);line-height:1.65;margin-bottom:1.125rem;font-style:italic}
.r-footer{display:flex;justify-content:space-between;align-items:flex-end;padding-top:1rem;border-top:1px solid var(--border)}
.r-author{font-size:0.8125rem;font-weight:700;color:var(--ink)}
.r-verified{display:flex;align-items:center;gap:0.25rem;font-size:0.6875rem;font-weight:600;color:var(--action);margin-top:0.2rem}
.r-date{font-size:0.75rem;color:var(--ink-light)}
.related-section{background:var(--white);padding:5rem 1.5rem}
.related-inner{max-width:1340px;margin:0 auto}
.rel-eyebrow{font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--action);margin-bottom:0.5rem}
.rel-title{font-size:clamp(1.625rem,2.5vw,2.125rem);font-weight:800;color:var(--ink);letter-spacing:-0.025em;margin-bottom:2rem}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.related-card{background:var(--warm);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:box-shadow 200ms,transform 200ms;display:flex;flex-direction:column}
.related-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.related-img{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.related-body{padding:1.125rem;display:flex;flex-direction:column;flex:1}
.related-name{font-size:0.9375rem;font-weight:700;color:var(--ink);margin-bottom:0.25rem}
.related-price{font-size:0.875rem;color:var(--ink-light);margin-bottom:0.625rem}
.related-link{font-size:0.875rem;font-weight:700;color:var(--action);display:inline-flex;align-items:center;gap:0.375rem;margin-top:auto}
footer{background:#070f18;padding:4rem 1.5rem 4rem}
.fc{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.09);border-radius:4px;padding:0.25rem 0.5rem;font-size:0.6875rem;font-weight:600;color:rgba(255,255,255,0.35)}
.payment-row{display:flex;gap:0.5rem}
.pay{display:inline-flex;border-radius:4px;overflow:hidden;line-height:0}
@media(max-width:1100px){.product-wrap{grid-template-columns:1fr;gap:2.5rem}
.gallery{position:static}
.purchase-panel{position:static}
.feat-grid{grid-template-columns:repeat(2,1fr)}
.reviews-layout{grid-template-columns:1fr;gap:1.5rem}
.reviews-grid{grid-template-columns:1fr}
.related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.spec-grid{grid-template-columns:1fr}
.trust-grid{grid-template-columns:1fr}
.feat-grid{grid-template-columns:1fr}
.related-grid{grid-template-columns:1fr}}
@media(max-width:640px){.sticky-inner{gap:0.75rem}
.sticky-bar{padding:0.75rem 1rem}}
