:root {
  --ink: #101214;
  --muted: #65676a;
  --orange: #ff8000;
  --deep-orange: var(--orange);
  --paper: #f7f7f7;
  --line: #e5e5e5;
  --surface: #fff;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 15px/1.75 Vazirmatn, Tahoma, sans-serif; }
a { color: inherit; text-decoration: none; }
button, select, input { font: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 3px solid var(--deep-orange); outline-offset: 3px; }
h1, h2, h3, p { margin: 0; }
.wrap { width: min(100% - 3rem, 86rem); margin-inline: auto; }
.symbols { position: absolute; }
.icon { width: 21px; height: 21px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.top-note { background: #070809; color: #f0f0f0; font-size: .75rem; }
.top-note .wrap { display: flex; align-items: center; justify-content: space-between; min-height: 33px; gap: 1rem; }
.top-note i, .eyebrow span { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--orange); margin-inline-end: .4rem; }
.site-header { position: sticky; top: 0; z-index: 20; background: var(--surface); border-bottom: 1px solid var(--line); }
.head-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: clamp(1rem, 4vw, 4rem); padding-block: 1rem; }
.wordmark { display: flex; align-items: center; gap: .55rem; font-size: 1.85rem; line-height: .95; font-weight: 900; }
.wordmark small { display: block; font: 800 .49rem/1.6 Arial, sans-serif; letter-spacing: .13em; }
.mark { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: var(--ink); background: var(--orange); font-size: 1.55rem; }
.search { position: relative; display: flex; align-items: center; gap: .65rem; min-width: 0; background: #f4f2ef; border-radius: .7rem; padding: .3rem .6rem .3rem .3rem; color: var(--muted); }
.search input { border: 0; background: transparent; min-width: 0; width: 100%; color: var(--ink); padding: .45rem .15rem; }
.search button { background: #262321; color: #fff; border: 0; border-radius: .5rem; padding: .48rem .95rem; }
.suggestions { position: absolute; inset-inline: 0; top: calc(100% + .35rem); z-index: 1; max-height: min(60vh, 24rem); overflow: auto; background: var(--surface); border: 1px solid var(--line); border-radius: .75rem; box-shadow: 0 10px 28px #211f1d22; color: var(--ink); }
.suggestion-heading { padding: .55rem .85rem; color: var(--muted); font-size: .8rem; }
.suggestions a { display: flex; align-items: center; justify-content: space-between; gap: .5rem; border-top: 1px solid var(--line); padding: .5rem .85rem; overflow-wrap: anywhere; }
.suggestions a:hover, .suggestions a[aria-selected="true"] { background: #f3f3f3; }
.suggestions small { color: var(--muted); }
.head-actions { display: flex; align-items: center; gap: .9rem; }
.account-link { white-space: nowrap; font-weight: 750; font-size: .87rem; }
.bag { display: flex; align-items: center; gap: .45rem; white-space: nowrap; font-weight: 750; }
.bag b { background: #f3f3f3; color: #ff8000; border-radius: 50%; min-width: 1.5rem; text-align: center; }
.nav { display: flex; align-items: stretch; gap: 1.5rem; min-height: 45px; font-size: .86rem; font-weight: 650; }
.nav-extras { display:flex; gap:inherit; }
.nav-more { display:none; }
.nav a { display: flex; align-items: center; gap: .45rem; }
.nav a:hover { color: var(--deep-orange); }
.about-copy { white-space: pre-line; }
.nav .nav-main { background: var(--orange); padding-inline: .95rem; border-radius: .65rem .65rem 0 0; color: var(--ink); }
.nav .nav-main:hover, .nav .nav-main:focus-visible { color:var(--ink); }
.nav .compare-launcher:hover, .nav .compare-launcher:focus-visible { color:var(--ink); }
.nav .nav-main:active, .nav .compare-launcher:active,
.primary:hover, .primary:focus-visible, .primary:active,
.add:hover, .add:focus-visible, .add:active { color:var(--ink); }
.hero { position: relative; isolation: isolate; overflow: hidden; min-height: 312px; border-radius: 1.25rem; margin-block: 1.25rem 1rem; color: #fff7ee; background: radial-gradient(ellipse at 18% 75%, #4f230d, transparent 64%), #201b19; display: grid; grid-template-columns: 1fr 1.35fr; align-items: center; }
.hero-copy { padding: clamp(1.3rem, 4vw, 3.4rem); z-index: 1; }
.eyebrow { color: #ff8000; font-size: .8rem; font-weight: 700; }
.hero h1 { font-size: clamp(2.15rem, 4.1vw, 4.3rem); line-height: 1.14; font-weight: 900; margin-block: .6rem .8rem; }
.hero em { color: var(--orange); font-style: normal; }
.hero p { max-width: 32rem; color: #ebdbce; font-size: .94rem; }
.hero-art { display: block; width: 100%; height: auto; }
.primary, .secondary { display: inline-flex; justify-content: center; align-items: center; gap: .55rem; border: 0; border-radius: .6rem; padding: .53rem .9rem; font-weight: 800; }
.primary { background: var(--orange); color: #221a15; }
.primary:hover, .add:hover { background: #ff8000; }
.hero .primary { margin-top: 1.1rem; }
.secondary { background: #f3f3f3; color: #332721; }
.secondary:hover { background: #f3f3f3; }
.quick { display: grid; grid-template-columns: repeat(4, 1fr); gap: .75rem; }
.quick a { display: flex; align-items: center; gap: .7rem; padding: .75rem; background: var(--surface); border: 1px solid var(--line); border-radius: .85rem; }
.quick a:hover, .item:hover { border-color: #ff8000; }
.quick a > span { background: #f3f3f3; color: #ff8000; width: 2.5rem; height: 2.5rem; display: grid; place-items: center; border-radius: .65rem; font-size: 1.4rem; }
.quick small { display: block; color: var(--muted); font-size: .73rem; }
.catalog { margin-block: 1.9rem; }
.section-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: .6rem; margin-block-end: .9rem; }
.section-kicker { color: var(--deep-orange); font-size: .76rem; font-weight: 800; }
.section-head h2 { font-size: 1.55rem; line-height: 1.4; }
.result { color: var(--muted); font-size: .83rem; }
.catalog-layout { display: grid; grid-template-columns: minmax(10.5rem, 14rem) minmax(0, 1fr); gap: .9rem; align-items: start; }
.filter, .item, .cart, .detail { background: var(--surface); border: 1px solid var(--line); border-radius: .85rem; }
.filter { padding: .9rem; }
.filter h3 { display: flex; align-items: center; gap: .45rem; font-size: .96rem; }
.filter form { display: grid; gap: .8rem; margin-block: .8rem 0; }
.check { display: flex; gap: .35rem; align-items: center; font-size: .82rem; }
.check input { accent-color: var(--deep-orange); }
.sort { display: grid; gap: .35rem; color: var(--muted); font-size: .82rem; }
.sort select, .cart-line input { width: 100%; background: #fff; color: var(--ink); border: 1px solid #d2cac3; border-radius: .45rem; padding: .36rem; }
.reset { display: block; margin-top: .55rem; color: var(--deep-orange); font-size: .78rem; }
.grid { display: grid; grid-template-columns: repeat(var(--catalog-columns, 4), minmax(0, 1fr)); gap: .65rem; }
.item { display: flex; flex-direction: column; min-width: 0; padding: .65rem; text-align:var(--card-text-align, inherit); }
.product-media { position: relative; display: block; height: clamp(115px, 12vw, 174px); overflow: hidden; border-radius: .6rem; }
.product-media img, .detail-media img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: scale-down; object-position: center; }
.product-media img { padding: .35rem; }
.media-empty { width: 100%; height: 100%; min-height: 105px; display: grid; align-content: center; justify-items: center; gap: .35rem; background: #f7f4f0; color: #76685d; }
.media-empty .icon { width: 2rem; height: 2rem; color: #ff8000; }
.media-empty small { font-size: .7rem; }
.item h3 { font-size: .89rem; line-height: 1.45; margin-block: .6rem .35rem; overflow-wrap: anywhere; }
.item h3 a:hover { color: var(--deep-orange); }
.stock { min-height: 1.5rem; color: var(--muted); font-size: .71rem; display: flex; align-items: center; gap: .18rem; }
.stock .icon { width: 13px; height: 13px; }
.stock-in { color: #28724d; }
.item-bottom { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: .3rem; margin-top: auto; padding-top: .52rem; }
.item-bottom strong { font-size: .96rem; }
.item-bottom small { font-size: .7rem; color: var(--muted); }
.add { display: grid; place-items: center; width: 33px; height: 33px; border: 0; border-radius: .48rem; background: #f3f3f3; color: #ff8000; }
.empty { grid-column: 1 / -1; padding: 2rem; background: #fff; border-radius: .85rem; }
.pages { display: flex; flex-wrap: wrap; gap: .8rem; align-items: center; justify-content: center; margin-block: 1.2rem; }
.pages a { padding: .35rem .75rem; background: #fff; border: 1px solid var(--line); border-radius: .5rem; }
.cart { padding: 1.2rem; margin-block: 1.5rem; }
.cart-line { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .5rem; padding-block: .45rem; border-bottom: 1px solid var(--line); }
.cart-line input { width: 3.8rem; }
[data-wishlist-button][aria-pressed="true"] .icon { fill:var(--orange); stroke:var(--orange); }
[data-warranty-block] { width:100%; min-width:0; }
[data-warranty-product] { min-width:0; margin:.65rem 0; padding:.6rem; border:1px solid var(--line); border-radius:.65rem; text-align:right; }
[data-warranty-product] legend { padding-inline:.35rem; font-size:.8rem; font-weight:700; }
[data-warranty-product] select, .cart-line select { width:100%; max-width:100%; min-width:0; padding:.6rem; border:1px solid #d2cac3; border-radius:.45rem; font:inherit; color:var(--ink); background:#fff; color-scheme:light; }
[data-warranty-product] option, .cart-line option { color:#101214; background:#fff; }
body:has([data-sticky-warranty-wrap]:not([hidden])) { padding-bottom:11rem; }
.notice { padding: .65rem; background: #f3f3f3; border-radius: .5rem; overflow-wrap: anywhere; }
.crumb { margin-block: 1.25rem .6rem; color: var(--muted); }
.detail { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1rem, 5vw, 4rem); padding: clamp(.8rem, 3vw, 2rem); margin-bottom: 2rem; }
.gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .5rem; }
.detail-media { position: relative; display: block; height: 75px; overflow: hidden; border: 1px solid var(--line); border-radius: .6rem; }
.detail-media.media-empty { display: grid; }
.detail-media:first-child { grid-column: 1 / -1; height: min(430px, 50vw); }
.detail-media[data-gallery-thumb][aria-current="true"] { border-color:var(--orange); box-shadow:inset 0 0 0 1px var(--orange); }
[data-gallery-main] { cursor:zoom-in; }
html.photo-viewer-open { overflow:hidden; }
#product-lightbox { width:min(calc(100% - 2rem),70rem); height:min(90dvh,54rem); max-width:none; max-height:calc(100dvh - 2rem); padding:1rem; border:1px solid var(--line); border-radius:1rem; color:var(--ink); background:var(--surface); }
#product-lightbox[open] { display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:.8rem; }
#product-lightbox::backdrop { background:#101214cc; }
.lightbox-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.lightbox-heading h2 { font-size:1rem; }
#product-lightbox button { min-height:44px; border:1px solid var(--line); border-radius:.6rem; padding:.45rem .9rem; background:var(--paper); color:var(--ink); }
#product-lightbox button:hover, #product-lightbox button:focus-visible { border-color:var(--orange); }
#product-lightbox [data-lightbox-close] { width:44px; padding:0; font-size:1.8rem; line-height:1; }
.lightbox-stage { position:relative; display:grid; place-items:center; min-width:0; min-height:0; margin:0; overflow:hidden; }
.lightbox-stage img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.lightbox-stage img[hidden], .lightbox-stage p[hidden] { display:none; }
.lightbox-stage p { color:var(--muted); text-align:center; }
.lightbox-controls { display:flex; justify-content:center; align-items:center; gap:1rem; }
.lightbox-controls button:disabled { opacity:.45; cursor:default; }
[data-lightbox-count] { min-width:3rem; text-align:center; }
@media(max-width:550px) {
  #product-lightbox { width:calc(100% - 1rem); height:calc(100dvh - 1rem); max-height:calc(100dvh - 1rem); padding:.75rem; }
  .lightbox-controls { gap:.5rem; }
}
.detail-info h1 { font-size: clamp(1.45rem, 3vw, 2.5rem); overflow-wrap: anywhere; }
.detail-info p, .detail-info form { margin-top: .75rem; }
.detail-info strong { display: block; margin-top: .6rem; font-size: 1.3rem; }
.catalog, .cart { scroll-margin-top: 10rem; }
.customer { max-width: 46rem; margin: 1.5rem auto; background: var(--surface); border: 1px solid var(--line); border-radius: .85rem; padding: clamp(1rem, 4vw, 2rem); }
.customer h1 { margin-bottom: .75rem; }
.customer p, .customer form { margin-block: .75rem; }
.customer a { color: var(--deep-orange); text-decoration: underline; }
.customer label { display: grid; gap: .25rem; margin-block: .7rem; }
.customer input { width: 100%; padding: .55rem; border: 1px solid var(--line); border-radius: .5rem; }
.customer-order { border-top: 1px solid var(--line); padding-block: .6rem; overflow-wrap: anywhere; }
.checkout fieldset { border: 1px solid var(--line); border-radius: .65rem; margin: 1rem 0; padding: .65rem 1rem; min-width: 0; }
.checkout legend { font-weight: 800; padding-inline: .35rem; }
.checkout .delivery-option { grid-template-columns: auto 1fr auto; align-items: center; }
.delivery-option input { width: auto; accent-color: var(--deep-orange); }
.delivery-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 .75rem; }
.delivery-fields textarea { width: 100%; min-width: 0; font: inherit; border: 1px solid var(--line); border-radius: .5rem; padding: .5rem; }
.delivery-summary { background: #f7f4ef; border-radius: .65rem; padding: 1rem; margin-block: 1rem; }
.delivery-back { margin-inline-start: .65rem; }
.footer { background: #22201e; color: #e2d8d0; margin-top: 2rem; }
.footer .wrap { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .7rem; padding-block: 1.35rem; font-size: .83rem; }
.footer strong { color: #ff8000; }
.sort input { width:100%; min-width:0; border:1px solid var(--line); border-radius:.45rem; padding:.35rem; }
.product-specs { display:grid; grid-template-columns:minmax(7rem,1fr) 2fr; }
.product-specs dt, .product-specs dd { margin:0; padding:.5rem; border-bottom:1px solid var(--line); }
.shop-mega { position:relative; align-content:center; }
.shop-mega summary { cursor:pointer; }
.shop-mega-panel { position:absolute; z-index:10; inset-inline-start:0; top:100%; width:min(80vw,65rem); min-width:0; padding:1rem; background:var(--surface); border:1px solid var(--line); border-radius:.85rem; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.85rem; max-height:min(70dvh,40rem); overflow:auto; overscroll-behavior:contain; box-shadow:0 1rem 2rem #0002; }
.mega-category-list { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:.4rem; padding-bottom:.85rem; border-bottom:1px solid var(--line); }
.nav .mega-category-list a { display:block; padding:.4rem .65rem; border-radius:.5rem; background:var(--paper); white-space:normal; }
.mega-column { min-width:0; padding:.65rem; border:1px solid var(--line); border-radius:.65rem; }
.nav .mega-group-heading { display:grid; grid-template-columns:72px minmax(0,1fr); gap:.75rem; min-height:72px; margin-bottom:.5rem; }
.mega-column h3 { margin:0; font-size:.92rem; overflow-wrap:anywhere; }
.mega-column img, .mega-image-placeholder { display:grid; place-items:center; width:72px; height:72px; object-fit:contain; border-radius:.5rem; background:#fff; }
.mega-image-placeholder { background:var(--paper); color:var(--muted); }
.mega-group-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.15rem .5rem; }
.nav .mega-group-links a { display:block; padding:.3rem .4rem; font-size:.8rem; white-space:normal; overflow-wrap:anywhere; border-radius:.35rem; }
.nav .mega-group-links a:hover, .nav .mega-category-list a:hover { background:var(--paper); color:var(--ink); box-shadow:inset -2px 0 var(--orange); }
.variant-choices { border:1px solid var(--line); border-radius:.5rem; min-width:0; margin-block:.5rem; }
.variant-option { display:flex; align-items:center; gap:.3rem; font-size:.82rem; padding:.3rem 0; cursor:pointer; }
.swatch { display:inline-block; width:1rem; height:1rem; border:1px solid #999; border-radius:50%; flex-shrink:0; }
.buy-buttons { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.4rem; }
[data-cart-form] input[type=number] { width:4rem; font:inherit; }
.item-bottom { flex-wrap:wrap; }
.item-bottom [data-cart-form] { width:100%; }
.mobile-filter { min-width:0; }
.mobile-filter > summary { cursor:pointer; padding:.75rem; background:var(--surface); border:1px solid var(--line); border-radius:.5rem; }
[data-catalog][aria-busy] { opacity:.65; }
#cart-drawer { position:fixed; inset:1rem auto auto 1rem; margin:0; width:min(calc(100vw - 2rem),22.5rem); max-width:none; height:auto; max-height:calc(100dvh - 2rem); border:1px solid var(--line); border-radius:1rem; padding:0; overflow:auto; overscroll-behavior:contain; color:var(--ink); background:var(--surface); box-shadow:0 1.25rem 4rem #0003; }
#cart-drawer::backdrop { background:#10121466; }
.drawer-heading { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
#cart-drawer .drawer-heading { position:sticky; top:0; z-index:1; padding:.85rem 1rem; background:var(--surface); border-bottom:1px solid var(--line); }
#cart-drawer h2 { display:flex; align-items:center; gap:.5rem; font-size:1rem; }
#cart-drawer h2 .icon { color:var(--orange); }
#cart-drawer [data-cart-close] { display:flex; align-items:center; gap:.5rem; min-height:36px; padding:.25rem .6rem; border:1px solid var(--line); border-radius:.5rem; background:var(--paper); color:var(--ink); font-size:.8rem; }
#cart-drawer [data-cart-close] span { font-size:1.3rem; line-height:1; }
#cart-drawer [data-cart-content] { padding:0 1rem 1rem; }
.cart-empty { display:grid; justify-items:center; gap:.85rem; padding:2rem 1rem; color:var(--muted); text-align:center; }
.cart-empty > .icon { width:44px; height:44px; padding:9px; box-sizing:content-box; border-radius:50%; background:var(--paper); color:var(--orange); }
.cart-item-heading { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.25rem .5rem; width:100%; overflow-wrap:anywhere; }
.cart-item-heading bdi { font-weight:700; }
.cart-item-price { font-weight:650; white-space:nowrap; }
#cart-drawer .cart-line { display:block; padding:.9rem 0; font-size:.85rem; }
#cart-drawer .cart-line form { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:end; gap:.6rem; margin-top:.65rem; }
#cart-drawer .cart-line label { display:grid; gap:.25rem; min-width:0; color:var(--muted); font-size:.75rem; }
#cart-drawer .cart-warranty { grid-column:1/-1; }
#cart-drawer .cart-line input { max-width:100%; min-height:36px; }
#cart-drawer .cart-line select { font-size:.8rem; padding:.45rem; }
#cart-drawer .cart-line button { min-height:36px; padding:.35rem .6rem; border:1px solid var(--line); border-radius:.5rem; background:var(--paper); color:var(--ink); font-size:.75rem; }
#cart-drawer .cart-line .cart-remove { background:var(--surface); color:#a12626; }
#cart-drawer button:hover { border-color:var(--orange); }
.cart-summary { padding-top:1rem; }
.cart-total { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem; }
.cart-delivery-note { color:var(--muted); font-size:.75rem; margin-block:.5rem .85rem; }
#cart-drawer .cart-summary .primary { display:block; width:100%; text-align:center; padding:.7rem; border-radius:.6rem; }
#shop-feedback:not(:empty) { position:fixed; z-index:50; inset:auto 1rem 1rem; margin:0; padding:1rem; background:#f3f3f3; color:var(--ink); border:1px solid var(--orange); border-radius:.6rem; }
@media (min-width:781px) {
  .js-shop .mobile-filter > summary { display:none; }
  [data-filter-close] { display:none; }
}
@media (max-width:780px) {
  .js-shop .mobile-filter[open] > .filter { position:fixed; inset:0 0 0 auto; z-index:40; width:min(90vw,24rem); overflow:auto; padding:1rem; box-shadow:-10vw 0 0 100vw #0007; }
  .detail-info .detail-buy { position:static; padding:0; border:0; }
}
.product-list-actions, .saved-product { display:flex; gap:.55rem; flex-wrap:wrap; align-items:center; padding-block:.4rem; }
.product-list-actions button, .compare-table button, .saved-product button { font:inherit; cursor:pointer; }
.compare-scroll { overflow:auto; }
.compare-table { width:100%; border-collapse:collapse; }
.compare-table th, .compare-table td { border:1px solid var(--line); padding:.6rem; min-width:7rem; text-align:start; }
.compare-table caption { text-align:start; padding:.75rem 0; }
.compare-table thead th { min-width:15rem; vertical-align:top; }
.compare-table thead th:first-child { width:8rem; min-width:7rem; }
.compare-photo { display:block; width:100%; height:9rem; object-fit:contain; margin-bottom:.5rem; }
.compare-table form { margin-block:.65rem; font-weight:400; }
.compare-table select { max-width:100%; font:inherit; }
.compare-table tbody th { position:sticky; inset-inline-start:0; background:#faf8f5; z-index:1; }
.compare-table .compare-different td { background:#f3f3f3; }
.compare-toggle { display:inline-flex; gap:.5rem; align-items:center; margin:1rem; cursor:pointer; }
.compare-table tr[hidden] { display:none; }
.quick-view-link { margin-block:.7rem .3rem; color:var(--deep-orange); font-size:.85rem; }
#quick-view-dialog { width:min(65rem,94vw); max-height:90dvh; padding:1rem; border:1px solid var(--line); border-radius:1rem; color:var(--ink); }
#quick-view-dialog::backdrop { background:#0008; }
#quick-view-dialog .drawer-heading { position:sticky; top:-1rem; z-index:2; background:var(--surface); padding:.5rem 0; }
#quick-view-dialog .detail { margin-bottom:1rem; padding:1rem; gap:1.25rem; }
#quick-view-dialog .detail-info h1 { font-size:1.4rem; }
#quick-view-dialog .detail-media:first-child { height:18rem; }
#quick-view-dialog .variant-choices { max-height:14rem; overflow:auto; }
.sticky-purchase { position:fixed; inset:auto 0 0; z-index:18; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.75rem; padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom)); background:var(--surface); border-top:1px solid var(--line); box-shadow:0 -.4rem 1.5rem #0001; }
.sticky-purchase[hidden] { display:none; }
.sticky-purchase img { object-fit:contain; }
.sticky-title { display:grid; min-width:0; }
.sticky-purchase label { display:grid; font-size:.75rem; gap:.2rem; }
.sticky-purchase select { max-width:12rem; padding:.35rem; font:inherit; }
.sticky-purchase input { width:4rem; font:inherit; }
body:has(.sticky-purchase) { padding-bottom:7rem; }
.suggestions [role=option] { display:flex; align-items:center; gap:.65rem; text-align:start; }
.suggestions [role=option] img { object-fit:contain; flex-shrink:0; width:4rem; height:4rem; }
.suggestion-content { display:grid; gap:.2rem; min-width:0; }
.suggestion-content bdi, .suggestion-content small { overflow-wrap:anywhere; }
.suggestions [data-search-all] { display:block; padding:.7rem; border-top:1px solid var(--line); color:var(--deep-orange); }
@media (max-width:780px) {
  .sticky-purchase { gap:.4rem; justify-content:space-between; }
  .sticky-purchase img { display:none; }
  .sticky-title { flex-basis:100%; grid-template-columns:1fr auto; gap:.4rem; font-size:.8rem; }
  .sticky-purchase .secondary { display:none; }
  .sticky-purchase .primary { flex:1; font-size:.8rem; }
  .sticky-purchase select { max-width:8rem; }
  .compare-table thead th { min-width:12rem; }
  .compare-table tbody th { max-width:7rem; min-width:6rem; }
}
.hero-image { width:100%; height:100%; object-fit:contain; }
.detail-media-end .detail-info { order:-1; }
.quick-view summary { cursor:pointer; }
.quick-view p { margin:.35rem 0; overflow-wrap:anywhere; }
@media (max-width:780px) {
  .detail-info .detail-buy { position:fixed; inset:auto 0 0; z-index:19; margin:0; padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom)); background:var(--surface); border-top:1px solid var(--line); }
  .detail-buy button { width:100%; }
  body:has(.detail-buy) { padding-bottom:4.5rem; }
}
@media (max-width: 1100px) { .grid { grid-template-columns: repeat(var(--catalog-tablet-columns, 3), minmax(0, 1fr)); } }
@media (max-width: 780px) {
  .wrap { width: calc(100% - 1.35rem); }
  .head-row { grid-template-columns: 1fr auto; gap: .7rem; padding-block: .7rem; }
  .search { grid-row: 2; grid-column: 1 / -1; }
  .head-actions { gap: .55rem; }
  .nav { gap: .65rem; flex-wrap:wrap; min-height: 42px; }
  .hero { min-height: 0; grid-template-columns: 1fr 1fr; }
  .quick { grid-template-columns: repeat(2, 1fr); }
  .catalog-layout { grid-template-columns: 1fr; }
  .filter form { display: flex; align-items: end; flex-wrap: wrap; }
  .filter .check { min-height: 2.4rem; }
  .grid { grid-template-columns: repeat(var(--catalog-mobile-columns, 2), minmax(0, 1fr)); }
}
@media (max-width: 430px) {
  .top-note .wrap { font-size: .65rem; }
  .bag > span { display: none; }
  .hero { grid-template-columns: 1fr; }
  .hero-art { width: 75%; margin: -1.6rem auto -.3rem; }
  .detail { grid-template-columns: 1fr; }
  .detail-media:first-child { height: 240px; }
  .delivery-fields { grid-template-columns: 1fr; }
}

/* One saturated brand orange across the interface and the supplied logo. */
.brand-logo { display:block; width:56px; height:70px; object-fit:contain; flex:none; }
.hero { background:radial-gradient(ellipse at 18% 75%, #49300d, transparent 64%), #070809; }
.primary:hover, .add:hover { background:#ff8000; }
.footer { background:#070809; color:#e9e9e9; border-top:4px solid var(--orange); }
.footer .footer-grid { display:grid; grid-template-columns:1.2fr .9fr 1fr; align-items:start; gap:2.2rem; padding-block:2.3rem; }
.footer-brand { display:flex; gap:1rem; align-items:center; }
/* The SVG filter maps the white background to transparency and the mark to #ff8000. */
.brand-logo, .footer-logo { filter:url(#brand-orange); }
.footer-logo { width:80px; height:100px; object-fit:contain; background:transparent; flex:none; }
.footer .footer-brand strong { color:var(--orange); display:block; margin-bottom:.5rem; }
.footer .footer-brand p { color:#bfc1c2; margin-top:.3rem; }
.footer h2 { font-size:1rem; color:var(--orange); margin:0 0 1rem; }
.contact-phones { list-style:none; margin:0; padding:0; display:grid; gap:.65rem; }
.contact-phones li { display:flex; align-items:center; justify-content:space-between; gap:1.1rem; }
.contact-phones li > span { font-size:.8rem; color:var(--muted); }
.contact-phones a { font-size:1.05rem; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
.contact-phones .contact-phone-featured a { font-weight:900; }
.footer .contact-phones li > span { color:#bfc1c2; }
.footer a:hover { color:var(--orange); }
.footer address, .contact-card address { font-style:normal; line-height:2.2; }
.footer-location > a { display:inline-block; color:var(--orange); margin-top:.8rem; text-decoration:underline; text-underline-offset:.25em; }
.footer .footer-bottom { border-top:1px solid #ffffff24; padding-block:1rem; display:flex; }
.contact-intro { margin-top:1.6rem; padding:2.4rem; border-radius:1rem; background:#070809; color:white; border-inline-start:5px solid var(--orange); }
.contact-intro .section-kicker { color:var(--orange); }
.contact-intro h1 { margin:.5rem 0; font-size:clamp(1.8rem,4vw,2.7rem); }
.contact-intro > p:last-child { color:#d4d5d6; }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin-block:1.4rem 3rem; }
.contact-card { background:white; padding:2rem; border:1px solid var(--line); border-radius:1rem; }
.contact-card h2 { font-size:1.2rem; margin-bottom:1.5rem; }
.contact-card .contact-phones { gap:1.1rem; }
.contact-card .contact-phones a { font-size:1.3rem; color:var(--deep-orange); }

/* Home carousel for products and network services. */
.hero-slider { position:relative; display:grid; margin-block:1.25rem 1rem; border-radius:1.25rem; overflow:hidden; background:#070809; }
/* Every slide contributes to the shared row, so changing text cannot resize the banner. */
.hero-slide { grid-area:1 / 1; align-self:stretch; min-width:0; margin:0; min-height:390px; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); border-radius:0; }
.hero-slide[hidden] { display:grid; visibility:hidden; pointer-events:none; }
.hero-controls[hidden] { display:none; }
.hero-slide .hero-copy { padding-bottom:5rem; }
.hero-slide h1, .hero-slide h2 { font-size:clamp(1.9rem,3.5vw,3.5rem); line-height:1.4; font-weight:900; margin-block:.6rem .8rem; }
.hero-slide .eyebrow { color:var(--orange); }
.hero-scene { position:relative; display:flex; align-items:center; justify-content:center; gap:1rem; padding:1.5rem; min-height:350px; width:100%; min-width:0; align-self:stretch; overflow:hidden; }
.hero-orbit { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:var(--orange); stroke-width:1; opacity:.3; }
.hero-device { position:relative; display:flex; align-items:center; justify-content:center; flex:1; min-width:0; margin:0; padding:0; }
/* The visible frame belongs to the image itself and follows its natural proportions. */
.hero-device img { display:block; width:auto; height:auto; max-width:100%; max-height:280px; object-fit:contain; background:white; border:1px solid var(--orange); border-radius:.8rem; box-shadow:0 1rem 2rem #0006; }
.hero-fallback { position:absolute; width:140px; height:140px; inset:25% auto auto 35%; color:var(--orange); }
.hero-controls { position:absolute; bottom:1rem; inset-inline-start:clamp(1.3rem,4vw,3.4rem); display:flex; align-items:center; gap:.55rem; z-index:2; }
.hero-controls > button { width:40px; height:40px; display:grid; place-items:center; border:1px solid #ffffff60; border-radius:.6rem; background:#070809; color:white; font:inherit; cursor:pointer; }
.hero-controls > button:hover { border-color:var(--orange); color:var(--orange); }
[data-hero-prev] .icon { transform:rotate(180deg); }
.hero-dots { display:flex; align-items:center; gap:.15rem; }
.hero-dots button { display:grid; place-items:center; width:32px; height:40px; padding:0; background:transparent; border:0; }
.hero-dots button::before { content:''; width:9px; height:9px; border:1px solid var(--orange); border-radius:1rem; }
.hero-dots [aria-current=true]::before { width:23px; background:var(--orange); }

/* Quiet, full-width purchase actions with secondary icon actions underneath. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.nav .compare-launcher { margin-inline-start:auto; align-self:center; background:var(--orange); color:var(--ink); padding:.45rem .75rem; border-radius:.6rem; white-space:nowrap; }
.compare-launcher b { background:var(--ink); color:white; border-radius:1rem; min-width:1.5rem; text-align:center; }
.catalog-tools { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:.8rem; }
.catalog-sort { display:flex; flex-wrap:wrap; align-items:center; gap:.4rem; font-size:.85rem; }
.catalog-sort select { font:inherit; max-width:100%; border:1px solid var(--line); border-radius:.5rem; padding:.4rem .65rem; background:var(--surface); color:var(--ink); }
.item .stock { justify-content:var(--card-align-items, flex-start); }
.item .item-bottom { display:block; }
.item .item-bottom > strong { display:block; padding-block:.35rem .6rem; }
.item .buy-buttons { display:grid; grid-template-columns:1fr; gap:.4rem; }
.item .buy-buttons button, .item .quick-view-link { width:100%; min-height:42px; }
.item .quick-view-link { display:flex; align-items:center; justify-content:center; border:1px solid var(--line); border-radius:.6rem; margin-block:.4rem 0; color:var(--ink); }
.product-list-actions { justify-content:center; gap:.6rem; }
.product-list-actions form { margin:0; }
.product-list-actions .icon-button { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; padding:0; border:1px solid var(--line); border-radius:.6rem; background:var(--surface); color:var(--ink); }
.product-list-actions .icon-button:hover { border-color:var(--orange); color:var(--orange); }
.product-list-actions [data-wishlist-button][aria-pressed="true"] { color:var(--orange); border-color:var(--orange); }
.product-list-actions [data-compare-button][aria-pressed="true"] { background:var(--orange); color:var(--ink); border-color:var(--orange); }
.product-list-actions .icon-button:disabled { opacity:.6; cursor:wait; }
.item .variant-option { justify-content:var(--card-align-items, flex-start); }
/* Keep small text readable; use the exact orange as an accent instead of a brown substitute. */
.section-kicker, .reset, .customer a, .contact-card .contact-phones a, .suggestions [data-search-all] { color:var(--ink); text-decoration:underline; text-decoration-color:var(--orange); text-underline-offset:.3em; }
.contact-intro .section-kicker { color:var(--orange); }
.bag b, .quick a > span { background:var(--orange); color:var(--ink); }
:focus-visible { outline-color:var(--ink); box-shadow:0 0 0 2px var(--orange); }
.contact-note { color:var(--muted); font-size:.85rem; margin-top:1.5rem; }
.contact-location .primary { display:inline-block; margin-top:1.6rem; }
@media(max-width:900px) { .footer .footer-grid { grid-template-columns:1fr 1fr; } .footer-brand { grid-column:1/-1; } }
@media(max-width:600px) {
  .brand-logo { width:42px; height:53px; }
  .footer .footer-grid, .contact-grid { grid-template-columns:1fr; }
  .footer-brand { grid-column:auto; }
  .contact-intro, .contact-card { padding:1.4rem; }
  .footer .footer-grid { gap:1.8rem; }
}

@media (max-width:1024px), (max-width:1366px) and (hover:none) and (pointer:coarse) {
  .top-note, .nav-extras { display:none; }
  .head-row { gap:.35rem 1rem; padding-block:.3rem; }
  .wordmark { font-size:1.45rem; }
  .head-row .brand-logo { width:36px; height:45px; }
  .account-link, .bag { display:flex; align-items:center; min-height:44px; }
  .nav { position:relative; align-items:center; flex-wrap:nowrap; gap:.35rem; padding-block:.15rem .3rem; }
  .nav .nav-main, .nav .compare-launcher { justify-content:center; min-height:44px; min-width:44px; border-radius:.6rem; padding:.35rem .65rem; }
  .nav .shop-mega { position:static; min-width:0; }
  .shop-mega > summary { align-content:center; min-height:44px; padding-inline:.4rem; overflow-wrap:anywhere; }
  .shop-mega-panel { width:100%; top:calc(100% + .25rem); grid-template-columns:repeat(2,minmax(0,1fr)); max-height:min(65dvh,32rem); }
  .nav-more { display:block; }
  .nav-more > summary { display:grid; place-items:center; width:44px; height:44px; cursor:pointer; border:1px solid var(--line); border-radius:.6rem; }
  .nav-more > summary::-webkit-details-marker { display:none; }
  .nav-more[open] > summary { background:var(--paper); border-color:var(--orange); }
  .nav-more-panel { position:absolute; z-index:10; inset-inline-start:0; top:calc(100% + .25rem); width:min(15rem,100%); max-height:min(65dvh,24rem); overflow:auto; overscroll-behavior:contain; padding:.35rem; background:var(--surface); border:1px solid var(--line); border-radius:.65rem; box-shadow:0 .75rem 1.5rem #0002; }
  .nav-more-panel a { min-height:44px; padding:.35rem .65rem; border-radius:.4rem; }
  .nav-more-panel a:hover { background:var(--paper); color:var(--ink); }

  .hero-slider { margin-block:.65rem .7rem; border-radius:1rem; }
  .hero-slide { min-height:254px; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); }
  .hero-slide .hero-copy { padding:1rem 1.35rem 3.9rem; overflow-wrap:anywhere; }
  .hero-slide h1, .hero-slide h2 { font-size:clamp(1.45rem,3.6vw,2.3rem); line-height:1.25; margin-block:.35rem .45rem; }
  .hero-slide .primary { min-height:44px; margin-top:.55rem; }
  .hero-scene { min-height:0; padding:.75rem .95rem 3.15rem; }
  .hero-device + .hero-device { display:none; }
  .hero-device img { max-height:164px; }
  .hero-fallback { position:relative; inset:auto; width:min(100%,110px); height:auto; aspect-ratio:1; }
  .hero-controls { bottom:.4rem; inset-inline-start:1.35rem; gap:.25rem; }
  .hero-controls > button, .hero-dots button { width:44px; height:44px; }
}

@media (max-width:550px) {
  .nav { font-size:.78rem; }
  .nav .nav-main, .nav .compare-launcher { padding-inline:.45rem; }
  .nav .nav-main > span, .nav .compare-launcher > span, .head-actions .bag > span { display:block; position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .shop-mega-panel { grid-template-columns:1fr; padding:.65rem; }
  .hero-slide { min-height:213px; grid-template-columns:minmax(0,1fr) minmax(0,34%); }
  .hero-slide .hero-copy { padding:.75rem .8rem 3.55rem .25rem; }
  .hero-slide h1, .hero-slide h2 { font-size:clamp(1.2rem,4.65vw,1.55rem); }
  .hero-slide p { display:none; }
  .hero-slide .primary { padding:.35rem .5rem; font-size:.79rem; line-height:1.45; }
  .hero-slide .primary .icon { width:16px; height:16px; }
  .hero-scene { padding:.55rem .6rem 3rem; }
  .hero-device img { max-height:117px; }
  .hero-controls { inset-inline-start:.8rem; }
  .hero-dots button { width:30px; }
}
