/*
 * Mac Steal theme styles.
 *
 * System: one variable family (Archivo, width axis 62–125%) on white and aluminium grey, black ink,
 * and one fluorescent orange (#ff5b14) that only ever marks a price, the cart count or the logo,
 * so on any page orange means "this is what it costs".
 *
 * WooCommerce's own stylesheets load first; selectors here are prefixed with .macsteal-theme
 * (a body class) where they must out-rank WooCommerce defaults.
 */

/* ---------- Fonts ---------- */
@font-face{font-family:Archivo;src:url('archivo-latin-ext.woff2') format('woff2');font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Archivo;src:url('archivo-latin.woff2') format('woff2');font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Tokens ---------- */
:root{
	--paper:#fff;
	--alu:#e6e8eb;          /* MacBook aluminium: image wells, quiet bands */
	--alu-deep:#d2d6db;
	--ink:#000;
	--graphite:#565b62;     /* secondary text, 6.6:1 on white */
	--line:#c5cad1;
	--sticker:#ff5b14;      /* price sticker; black text on it is 6.7:1 */
	--danger:#b42318;
	--font:Archivo,"Helvetica Neue",Arial,sans-serif;
	--narrow:62%;--condensed:78%;--normal:100%;--semi:112%;--wide:125%;
	--max:1360px;
	--gutter:clamp(16px,4vw,48px);
	--pad:max(var(--gutter),calc((100% - var(--max)) / 2));
	--radius:6px;
	--ease:cubic-bezier(.2,.8,.2,1);
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.55 var(--font);font-stretch:var(--normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{margin:0;font-weight:800;line-height:1.02;letter-spacing:-.01em;text-wrap:balance}
p{text-wrap:pretty}
input,textarea,select,button{font:inherit;color:inherit;max-width:100%}
.nobr{white-space:nowrap}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus,.screen-reader-text:focus{clip:auto;width:auto;height:auto;z-index:100;top:8px;left:8px;padding:12px 16px;background:var(--ink);color:#fff}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.site-footer :focus-visible{outline-color:#fff}

/* ---------- Buttons & links ---------- */
.button,.macsteal-theme a.button,.macsteal-theme button.button,.macsteal-theme input.button,.macsteal-theme a.button.alt,.macsteal-theme button.button.alt,.macsteal-contact__form button{
	display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border:2px solid var(--ink);border-radius:var(--radius);
	background:var(--ink);color:#fff;font:700 16px/1 var(--font);font-stretch:var(--semi);letter-spacing:0;text-decoration:none;cursor:pointer;
	transition:background-color .15s,color .15s,border-color .15s;
}
.button:hover,.macsteal-theme a.button:hover,.macsteal-theme button.button:hover,.macsteal-theme input.button:hover,.macsteal-theme a.button.alt:hover,.macsteal-theme button.button.alt:hover,.macsteal-contact__form button:hover{background:var(--sticker);border-color:var(--sticker);color:var(--ink)}
.macsteal-theme .button-quiet,.macsteal-theme button.button-quiet{background:transparent;color:var(--ink)}
.macsteal-theme .button-quiet:hover,.macsteal-theme button.button-quiet:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.macsteal-theme .button-invert{background:var(--ink);border-color:var(--ink);color:#fff}
.macsteal-theme .button-invert:hover{background:#fff;border-color:#fff;color:var(--ink)}
.macsteal-theme button.button:disabled,.macsteal-theme button.button:disabled[disabled],.macsteal-theme .button.disabled{opacity:.35;padding:0 26px;background:var(--ink);color:#fff;cursor:not-allowed}
.text-link{display:inline-block;font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;transition:text-decoration-color .15s}
.text-link:hover{text-decoration-color:var(--sticker)}

/* ---------- Prices ---------- */
/* Round sticker: the promo banner and 404 only. */
.price-sticker{
	--size:96px;
	display:grid;place-content:center;justify-items:center;width:var(--size);height:var(--size);margin:0;border-radius:50%;
	background:var(--sticker);color:var(--ink);text-align:center;
	font-family:var(--font);font-weight:800;font-stretch:var(--narrow);font-size:calc(var(--size) * .28);line-height:.88;letter-spacing:0;font-variant-numeric:lining-nums tabular-nums;
	box-shadow:0 1px 1px rgba(0,0,0,.2),0 10px 16px -12px rgba(0,0,0,.55);
	transform:rotate(var(--tilt,-8deg));
}
.price-sticker .amount,.price-sticker bdi{display:flex;flex-direction:column;align-items:center;word-spacing:-.3em}
.price-sticker .amount bdi{display:contents}
.price-sticker .woocommerce-Price-currencySymbol{margin-top:.18em;font-size:.48em;font-stretch:var(--normal);font-weight:700}
.sticker-from{font-size:.42em;font-stretch:var(--normal);font-weight:700;margin-bottom:.12em}
/* Price label: every listed price. WooCommerce markup is .price > .amount > bdi > "11,900&nbsp;" + .woocommerce-Price-currencySymbol */
.price-label,.macsteal-theme ul.products li.product .price,.macsteal-theme div.product p.price{
	display:inline-flex;align-items:baseline;gap:.3em;width:auto;margin:0;padding:.3em .5em .32em;border-radius:4px;
	background:var(--sticker);color:var(--ink);font-family:var(--font);font-weight:800;font-stretch:var(--condensed);line-height:1;letter-spacing:0;white-space:nowrap;font-variant-numeric:lining-nums;
}
.price-label .woocommerce-Price-currencySymbol,.macsteal-theme .price .woocommerce-Price-currencySymbol{font-size:.72em;font-weight:700}
.macsteal-theme .price del{font-size:.7em;opacity:.7}
.macsteal-theme .price ins{text-decoration:none}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
.admin-bar .site-header{top:32px}
@media(max-width:782px){.admin-bar .site-header{top:0;position:relative}}
.header-main{display:flex;align-items:center;gap:20px;height:72px;padding-inline:var(--pad)}
.site-logo{display:inline-flex;align-items:center;gap:10px;font-size:21px;font-weight:800;font-stretch:var(--semi);letter-spacing:-.02em;white-space:nowrap}
.site-logo img{width:36px;height:36px}
.header-search{display:flex;flex:1;align-items:center;max-width:600px;height:48px;margin-left:clamp(12px,3vw,48px);border:2px solid var(--ink);border-radius:999px;background:#fff}
.header-search:focus-within{outline:3px solid var(--ink);outline-offset:2px}
.header-search input[type=search]{flex:1;min-width:0;height:100%;padding:0 6px 0 20px;border:0;background:transparent;font-size:16px;outline:none;-webkit-appearance:none;appearance:none}
.header-search input::placeholder{color:var(--graphite);opacity:1}
.header-search button{display:grid;place-items:center;width:48px;height:100%;border:0;background:none;cursor:pointer}
.header-search svg,.account-link svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.account-link{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:15px;font-weight:600}
.account-link:hover span{text-decoration:underline;text-underline-offset:4px}
.cart-link{display:flex;align-items:center;gap:12px;height:48px;padding:0 18px 0 14px;border-radius:999px;background:var(--ink);color:#fff;font-size:15px;font-weight:700;transition:background-color .15s,color .15s}
.cart-link:hover{background:var(--sticker);color:var(--ink)}
.cart-icon-wrap{position:relative;display:grid}
.cart-icon{width:22px;height:22px}
.cart-icon path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cart-count{position:absolute;top:-8px;right:-10px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--sticker);color:var(--ink);font-size:12px;font-weight:800;font-stretch:var(--condensed);line-height:1}
.cart-count.is-empty{background:#fff}
.cart-total{font-weight:800;font-stretch:var(--condensed);font-size:16px;white-space:nowrap}
.cart-total .woocommerce-Price-currencySymbol{font-weight:600}
.primary-nav{border-top:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-inline:var(--pad)}
.range-links,.info-links{display:flex;gap:28px;margin:0;padding:0;list-style:none}
.range-links a,.info-links a{display:block;line-height:46px;font-size:15px}
.range-links a{font-weight:700}
.info-links a{color:var(--graphite);font-weight:500}
.range-links a:hover,.info-links a:hover{color:var(--ink);box-shadow:inset 0 -3px var(--line)}
.range-links a[aria-current="page"],.info-links .current-menu-item>a,.info-links .current_page_item>a{color:var(--ink);box-shadow:inset 0 -3px var(--sticker)}
.menu-toggle{display:none;padding:12px 8px;border:0;background:none;cursor:pointer}
.menu-toggle i{display:block;width:24px;height:2px;margin:6px 0;background:var(--ink);transition:transform .2s var(--ease)}
.menu-toggle[aria-expanded="true"] i:first-of-type{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] i:last-of-type{transform:translateY(-4px) rotate(-45deg)}

/* ---------- Home: promo banner + range tiles ---------- */
.home-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;padding:24px var(--pad) 0}
/* Clip so the sticker's oversized first animation frame never spills out of the banner. */
.promo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:460px;border-radius:12px;background:var(--alu);overflow:hidden;overflow:clip}
.promo-copy{display:flex;flex-direction:column;justify-content:center;gap:22px;padding:clamp(28px,3.4vw,52px);container-type:inline-size}
.hero-title{margin:0;font-weight:800;line-height:.86;letter-spacing:-.015em}
.hero-line{display:block;white-space:nowrap}
/* cqw = 1% of the copy column; both lines were measured to fill it exactly (narrow 62% / wide 125% width). */
.hero-line--narrow{font-stretch:var(--narrow);font-size:22cqw}
.hero-line--wide{font-stretch:var(--wide);font-size:13.1cqw;margin-top:.06em}
.hero-intro{max-width:42ch;font-size:clamp(16px,1.25vw,18px);line-height:1.5}
.hero-intro p{margin:0}
.hero-intro p+p{margin-top:10px}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.promo-media{position:relative;margin:0;min-height:100%}
.promo-media picture{position:absolute;inset:0}
.promo-media img{width:100%;height:100%;object-fit:cover;object-position:64% 50%}
.hero-sticker{--size:clamp(96px,8.6vw,128px);--tilt:-9deg;position:absolute;top:clamp(16px,2vw,28px);left:clamp(12px,1.6vw,24px)}
@keyframes macsteal-stretch{from{font-stretch:var(--narrow)}to{font-stretch:var(--wide)}}
@keyframes macsteal-slap{0%{opacity:0;transform:scale(1.7) rotate(-34deg)}55%{opacity:1;transform:scale(.92) rotate(-5deg)}100%{opacity:1;transform:scale(1) rotate(var(--tilt))}}
.hero-line--wide{animation:macsteal-stretch 1s var(--ease) .2s both}
.hero-sticker{animation:macsteal-slap .55s cubic-bezier(.3,1.3,.5,1) 1.05s both}

.range-tiles{display:grid;grid-template-rows:1fr 1fr;gap:16px;margin:0;padding:0;list-style:none}
.range-tiles a{display:grid;grid-template-columns:minmax(0,1fr) 44%;align-items:center;gap:8px;height:100%;padding:24px 16px 24px 28px;border-radius:12px;background:var(--alu);isolation:isolate;overflow:hidden}
.range-tiles img{width:100%;height:auto;mix-blend-mode:multiply;transition:transform .4s var(--ease)}
.range-tiles a:hover img{transform:scale(1.05)}
.tile-name{display:block;font-size:clamp(20px,1.75vw,26px);white-space:nowrap;font-weight:800;font-stretch:var(--semi);letter-spacing:-.02em;line-height:1.05}
.range-tiles a:hover .tile-name{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.tile-meta{display:block;margin-top:6px;color:var(--graphite);font-size:14px}
.tile-price{display:inline-flex;align-items:baseline;gap:.3em;margin-top:16px;padding:.3em .5em .32em;border-radius:4px;background:var(--sticker);font-size:17px;font-weight:800;font-stretch:var(--condensed);line-height:1;white-space:nowrap}
.tile-price .amount{font-size:1.1em}
.tile-price .woocommerce-Price-currencySymbol{font-size:.72em}

/* ---------- Home: service strip ---------- */
.service-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0 0;padding:0 var(--pad);list-style:none}
.service-strip li{border-block:1px solid var(--line)}
.service-strip a{display:flex;align-items:center;gap:14px;height:100%;padding:20px 16px 20px 0}
.service-strip svg{flex:none;width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.service-strip span{color:var(--graphite);font-size:14px;line-height:1.35}
.service-strip strong{display:block;margin-bottom:2px;color:var(--ink);font-size:16px;font-weight:700}
.service-strip a:hover strong{text-decoration:underline;text-underline-offset:3px}

/* ---------- Home: catalogue + help modules ---------- */
.lineup{padding:clamp(48px,5vw,72px) var(--pad) clamp(64px,6vw,96px)}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 40px;flex-wrap:wrap;margin-bottom:clamp(28px,3vw,40px)}
.section-heading p{margin:8px 0 0;color:var(--graphite)}
.lineup h2,.home-help h2{font-size:clamp(28px,2.8vw,40px);font-stretch:var(--semi);letter-spacing:-.02em}
.home-help{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 var(--pad) clamp(64px,7vw,104px)}
.grades,.guide-banner{padding:clamp(24px,3vw,44px);border-radius:12px}
.grades{background:var(--alu)}
.grades-intro p{margin:10px 0 24px;color:var(--graphite)}
.grade-scale{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink)}
.grade-scale li{display:grid;grid-template-columns:72px 1fr;gap:2px 16px;padding:16px 0;border-bottom:1px solid var(--alu-deep)}
.grade-letter{grid-row:1 / span 2;align-self:center;font-size:56px;font-weight:800;font-stretch:var(--wide);line-height:.8}
/* Wear made visible: each grade down the scale reads a little lighter. */
.grade-scale li:nth-child(2) .grade-letter{font-weight:600}
.grade-scale li:nth-child(3) .grade-letter{font-weight:400}
.grade-scale h3{align-self:end;font-size:18px;font-stretch:var(--semi)}
.grade-scale p{margin:0;color:var(--graphite);font-size:15px}
.guide-banner{display:flex;flex-direction:column;gap:28px;background:var(--ink);color:#fff}
.guide-copy p{max-width:44ch;margin:10px 0 24px;color:#c6c9ce}
.guide-banner :focus-visible{outline-color:#fff}
.macsteal-theme .guide-banner a.button{align-self:flex-start;background:#fff;border-color:#fff;color:var(--ink)}
.macsteal-theme .guide-banner a.button:hover{background:var(--sticker);border-color:var(--sticker);color:var(--ink)}
.model-index{margin:0;padding:0;list-style:none;border-top:2px solid #fff}
.model-index li{border-bottom:1px solid #3a3d42}
.model-index a{display:grid;grid-template-columns:1fr auto;gap:0 16px;padding:14px 0;transition:padding .2s var(--ease),background-color .2s}
.model-index a:hover{padding-inline:12px;background:#1d1e21}
.model-name{font-weight:700}
.model-configs{grid-row:2;color:#9a9ea5;font-size:14px}
.model-price{grid-row:1 / span 2;grid-column:2;align-self:center;font-weight:800;font-stretch:var(--condensed);font-size:19px;white-space:nowrap}
.model-price .woocommerce-Price-currencySymbol{font-weight:600}

/* ---------- Product cards (home + shop + related) ---------- */
.macsteal-theme ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(36px,4vw,56px) clamp(16px,2vw,28px);margin:0!important;padding:0!important;list-style:none}
.macsteal-theme ul.products::before,.macsteal-theme ul.products::after{display:none!important}
/* Card grid: the product link is display:contents so its image, title and specs share one grid with the price and the add-to-cart button. */
.macsteal-theme ul.products li.product{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"media media" "title title" "meta meta" "price cta" "added added";align-items:center;width:auto!important;min-width:0;float:none!important;clear:none!important;margin:0!important;padding:0!important;border:0;background:none;text-align:left}
.macsteal-theme ul.products li.product a.woocommerce-LoopProduct-link{display:contents;color:var(--ink)}
.macsteal-theme ul.products li.product a.woocommerce-LoopProduct-link:focus-visible .product-card-media{outline:3px solid var(--ink);outline-offset:3px}
.product-card-media{grid-area:media;position:relative;display:block;width:100%;margin-bottom:16px;border-radius:10px;background:var(--alu);isolation:isolate;overflow:hidden}
/* The catalog images sit on white; multiply drops that white into the aluminium well. */
.macsteal-theme ul.products li.product a img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;margin:0!important;padding:0;object-fit:cover;mix-blend-mode:multiply;box-shadow:none;transition:transform .5s var(--ease)}
.macsteal-theme ul.products li.product:hover a img{transform:scale(1.03)}
.product-card-tags{position:absolute;left:12px;bottom:12px;z-index:1;display:flex;flex-wrap:wrap;gap:6px}
.product-card-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:600;line-height:1.2}
.swatch{width:11px;height:11px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.macsteal-theme ul.products li.product .woocommerce-loop-product__title{grid-area:title;margin:0 0 12px!important;padding:0!important;font-size:18px!important;font-weight:700;font-stretch:var(--normal);line-height:1.25;letter-spacing:-.01em}
.macsteal-theme ul.products li.product:hover .woocommerce-loop-product__title{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.product-card-meta{grid-area:meta;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:10px 0 0;border-top:1px solid var(--line)}
.product-card-meta dt{color:var(--graphite);font-size:13px}
.product-card-meta dd{margin:2px 0 0;font-size:16px;font-weight:700;font-stretch:var(--condensed);white-space:nowrap}
.macsteal-theme ul.products li.product .price{grid-area:price;justify-self:start;margin:0!important;color:var(--ink)!important;font-size:22px!important;font-weight:800!important}
.macsteal-theme ul.products li.product .button{grid-area:cta;display:inline-flex;align-items:center;min-height:44px;margin:0!important;padding:0 18px;line-height:1;font-size:15px}
.macsteal-theme ul.products li.product .button.loading{opacity:.5}
.macsteal-theme ul.products li.product .button.loading::after{display:none}
.macsteal-theme ul.products li.product .button.added::after{content:'';display:inline-block;width:10px;height:5px;margin:-3px 0 0 2px;border:solid currentColor;border-width:0 0 2px 2px;transform:rotate(-45deg);font-family:inherit;vertical-align:middle}
.macsteal-theme ul.products li.product .added_to_cart{grid-area:added;justify-self:end;margin-top:10px;font-size:15px;font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.empty-products{padding:48px;border-radius:var(--radius);background:var(--alu)}
.empty-products h3{margin-bottom:20px;font-size:28px}

/* ---------- Shop archive ---------- */
.shop-main{min-height:70vh}
.shop-shell{padding:24px var(--pad) clamp(64px,7vw,104px)}
.macsteal-theme .woocommerce-breadcrumb{margin:0 0 20px;color:var(--graphite);font-size:14px}
.macsteal-theme .woocommerce-breadcrumb a{color:var(--graphite);text-decoration:underline;text-underline-offset:3px}
.macsteal-theme .woocommerce-products-header{margin-bottom:20px}
.macsteal-theme .woocommerce-products-header .page-description{margin-top:8px;color:var(--graphite)}
.macsteal-theme .woocommerce-products-header .page-description p{margin:0}
.macsteal-theme .woocommerce-products-header .page-title,.macsteal-theme h1.page-title{margin:0;font-size:clamp(30px,3.6vw,48px);font-weight:800;font-stretch:var(--semi);letter-spacing:-.02em;line-height:1}
.macsteal-theme .term-description{max-width:60ch;margin-top:16px;color:var(--graphite)}
.shop-filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;margin:0 0 16px;padding:14px 0;border-block:1px solid var(--line)}
.shop-ranges ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.shop-ranges a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:2px solid var(--ink);border-radius:999px;font-weight:600;transition:background-color .15s,color .15s}
.shop-ranges a:hover{background:var(--alu)}
.shop-ranges a[aria-current="page"]{background:var(--ink);color:#fff}
.range-count{color:var(--graphite);font-size:14px;font-weight:700;font-stretch:var(--condensed)}
.shop-ranges a[aria-current="page"] .range-count{color:#c9ccd1}
.shop-sort{display:flex;align-items:center;gap:12px}
.shop-sort label{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600}
.shop-sort select{height:44px;padding:0 40px 0 14px;border:2px solid var(--ink);border-radius:var(--radius);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;font-size:15px;appearance:none;-webkit-appearance:none;cursor:pointer}
.shop-sort .button{min-height:44px;height:44px;padding:0 20px;font-size:15px;line-height:1}
.macsteal-theme .woocommerce-ordering{display:none}
.macsteal-theme .woocommerce-result-count{float:none;margin:0 0 clamp(24px,3vw,36px);color:var(--graphite);font-size:14px}
.macsteal-theme nav.woocommerce-pagination ul{margin-top:56px;border:0}
.macsteal-theme nav.woocommerce-pagination ul li{border:0}
.macsteal-theme nav.woocommerce-pagination ul li a,.macsteal-theme nav.woocommerce-pagination ul li span{min-width:44px;padding:12px;border-radius:var(--radius);background:var(--alu);color:var(--ink)}
.macsteal-theme nav.woocommerce-pagination ul li span.current{background:var(--ink);color:#fff}

/* ---------- Single product ---------- */
.macsteal-theme div.product{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 clamp(24px,4vw,64px);align-items:start}
.macsteal-theme div.product div.images,.macsteal-theme div.product div.summary{float:none!important;width:auto!important;margin:0!important}
.macsteal-theme div.product div.images{grid-column:1 / span 7;position:relative}
.macsteal-theme div.product div.summary{grid-column:8 / -1;padding-top:8px}
.macsteal-theme div.product div.images .woocommerce-product-gallery__wrapper{margin:0}
.macsteal-theme div.product div.images .woocommerce-product-gallery__image{border-radius:var(--radius);background:var(--alu);overflow:hidden}
.macsteal-theme div.product div.images .woocommerce-product-gallery__image img{mix-blend-mode:multiply}
.macsteal-theme div.product div.images .flex-control-thumbs{margin-top:12px}
.macsteal-theme div.product div.images .flex-control-thumbs li img{border-radius:4px;background:var(--alu)}
.macsteal-theme div.product div.images .woocommerce-product-gallery__trigger{top:16px;right:16px;width:44px;height:44px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--line)}
.macsteal-theme div.product div.images .woocommerce-product-gallery__trigger::before{top:12px;left:12px;width:13px;height:13px;border-color:var(--ink)}
.macsteal-theme div.product div.images .woocommerce-product-gallery__trigger::after{top:26px;left:27px;background:var(--ink)}
.macsteal-theme div.product .product_title{margin:0 0 18px;font-size:clamp(30px,3.2vw,46px);font-weight:800;font-stretch:var(--semi);letter-spacing:-.02em;line-height:1.02}
.macsteal-theme div.product p.price{margin:0 0 24px!important;color:var(--ink)!important;font-size:32px!important;font-weight:800!important}
.macsteal-theme div.product .woocommerce-product-details__short-description{margin:0;font-size:18px;line-height:1.5}
.macsteal-theme div.product .woocommerce-product-details__short-description p{margin:0 0 10px}
.macsteal-theme div.product .woocommerce-product-details__short-description strong{font-weight:600;color:var(--graphite);font-size:16px}
.spec-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:24px 0 28px;border-top:2px solid var(--ink)}
.spec-sheet div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.spec-sheet dt{color:var(--graphite);font-size:15px}
.spec-sheet dd{margin:0;font-weight:700;font-stretch:var(--condensed);font-size:17px;text-align:right}
.macsteal-theme div.product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin:0 0 16px}
.buy-help{margin:0 0 24px;padding:6px 20px;border-radius:10px;background:var(--alu);list-style:none}
.buy-help li{border-bottom:1px solid var(--alu-deep)}
.buy-help li:last-child{border-bottom:0}
.buy-help a{display:block;padding:12px 0;font-size:15px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.buy-help a:hover{text-decoration-thickness:2px;text-decoration-color:var(--sticker)}
.macsteal-theme div.product form.cart::before,.macsteal-theme div.product form.cart::after{display:none}
.macsteal-theme div.product form.cart .quantity{float:none;margin:0}
.macsteal-theme .quantity .qty{width:72px;height:56px;padding:0 6px;border:2px solid var(--ink);border-radius:var(--radius);background:#fff;font-size:17px;font-weight:700;text-align:center}
.macsteal-theme div.product form.cart .button{flex:1;min-height:56px;float:none;font-size:17px}
.macsteal-theme .product_meta{color:var(--graphite);font-size:14px}
.macsteal-theme .product_meta>span{display:block;margin-bottom:4px}
.macsteal-theme .product_meta a{text-decoration:underline;text-underline-offset:3px}
.macsteal-theme div.product .woocommerce-tabs{grid-column:1 / -1;margin-top:clamp(48px,5vw,80px)}
.macsteal-theme div.product .woocommerce-tabs ul.tabs{display:flex;gap:32px;margin:0 0 40px;padding:0;border-bottom:2px solid var(--ink);overflow:visible}
.macsteal-theme div.product .woocommerce-tabs ul.tabs::before,.macsteal-theme div.product .woocommerce-tabs ul.tabs::after,.macsteal-theme div.product .woocommerce-tabs ul.tabs li::before,.macsteal-theme div.product .woocommerce-tabs ul.tabs li::after{display:none}
.macsteal-theme div.product .woocommerce-tabs ul.tabs li{margin:0 0 -2px;padding:0;border:0;border-radius:0;background:none}
.macsteal-theme div.product .woocommerce-tabs ul.tabs li a{display:block;padding:0 0 14px;color:var(--graphite);font-size:17px;font-weight:600;border-bottom:4px solid transparent}
.macsteal-theme div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--ink)}
.macsteal-theme div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--sticker)}
.macsteal-theme div.product .woocommerce-tabs .panel{max-width:720px;margin:0;font-size:18px;line-height:1.6}
.macsteal-theme div.product .woocommerce-tabs .panel>h2:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.macsteal-theme div.product .woocommerce-tabs .panel h2{margin:0 0 16px;font-size:32px;font-stretch:var(--semi)}
.macsteal-theme div.product .woocommerce-tabs .panel h3{margin:40px 0 12px;font-size:22px;font-stretch:var(--semi)}
.macsteal-theme div.product .woocommerce-tabs .panel a{text-decoration:underline;text-underline-offset:3px}
.macsteal-theme table.shop_attributes{max-width:720px;border:0;border-top:2px solid var(--ink)}
.macsteal-theme table.shop_attributes th,.macsteal-theme table.shop_attributes td{padding:14px 0;border:0;border-bottom:1px solid var(--line);background:transparent!important;font-style:normal;text-align:left}
.macsteal-theme table.shop_attributes th{width:40%;color:var(--graphite);font-weight:500}
.macsteal-theme table.shop_attributes td p{padding:0;font-weight:700}
.macsteal-theme div.product .related.products,.macsteal-theme div.product .upsells.products{grid-column:1 / -1;margin-top:clamp(56px,6vw,96px);padding-top:clamp(32px,3vw,48px);border-top:1px solid var(--line)}
.macsteal-theme .related.products>h2,.macsteal-theme .upsells.products>h2{margin-bottom:clamp(24px,3vw,36px);font-size:clamp(26px,2.6vw,36px);font-stretch:var(--semi);letter-spacing:-.02em}

/* ---------- Notices ---------- */
.macsteal-theme .woocommerce-message,.macsteal-theme .woocommerce-info,.macsteal-theme .woocommerce-error,.macsteal-theme .woocommerce-noreviews,.macsteal-theme p.no-comments{margin:0 0 32px;padding:18px 20px 18px 54px;border:0;border-left:4px solid var(--ink);border-radius:var(--radius);background:var(--alu);color:var(--ink);font-size:16px;list-style:none}
.macsteal-theme .woocommerce-message::before,.macsteal-theme .woocommerce-info::before{top:18px;left:20px;color:var(--ink)}
.macsteal-theme .woocommerce-error{border-left-color:var(--danger);background:#fbeae7}
.macsteal-theme [tabindex="-1"]:focus{outline:none}
.macsteal-theme .woocommerce-error::before{top:18px;left:20px;color:var(--danger)}
.macsteal-theme .woocommerce-message a:not(.button),.macsteal-theme .woocommerce-info a:not(.button),.macsteal-theme .woocommerce-error a:not(.button){text-decoration:underline;text-underline-offset:3px;font-weight:600}
.macsteal-theme .woocommerce-message .button,.macsteal-theme .woocommerce-info .button,.macsteal-theme .woocommerce-error .button{min-height:40px;margin:-8px 0 -8px 16px;padding:0 16px;font-size:15px}

/* ---------- Pages ---------- */
.page-main{min-height:60vh;padding:clamp(32px,4vw,56px) var(--pad) clamp(72px,8vw,120px)}
.page-article{max-width:var(--max);margin:0 auto}
.page-header{margin-bottom:clamp(28px,3vw,44px);padding-bottom:clamp(20px,2vw,28px);border-bottom:2px solid var(--ink)}
.page-header h1,.not-found h1{max-width:22ch;font-size:clamp(30px,4vw,54px);font-stretch:var(--semi);letter-spacing:-.025em;line-height:1.02}
.entry-content{font-size:18px;line-height:1.62}
.entry-content>*{max-width:68ch;margin-top:0;margin-bottom:22px}
.page-main--commerce .entry-content>*{max-width:none}
/* WooCommerce sections bring their own spacing; editorial heading margins would double it. */
.page-main--commerce .entry-content h2,.page-main--commerce .entry-content h3{margin-top:0}
.macsteal-theme .woocommerce-order-details,.macsteal-theme .woocommerce-customer-details{margin-top:48px}
/* Information pages: help-centre layout with a side menu of every info page. */
.page-main--info{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:clamp(32px,5vw,88px);align-items:start}
.page-main--info .page-article{max-width:780px;margin:0}
.info-nav{position:sticky;top:140px}
.info-nav-title{margin:0 0 12px;color:var(--graphite);font-size:14px;font-weight:600}
.info-nav ul{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink)}
.info-nav li{border-bottom:1px solid var(--line)}
.info-nav a{display:block;padding:12px 0;font-weight:600;transition:padding .2s var(--ease)}
.info-nav a:hover{padding-left:8px}
.info-nav a[aria-current="page"]{padding-left:12px;box-shadow:inset 3px 0 var(--sticker)}
.entry-content>p:first-child{font-size:clamp(19px,1.5vw,22px);line-height:1.45;font-weight:500}
.entry-content h2{margin:52px 0 16px;font-size:clamp(24px,2.2vw,32px);font-stretch:var(--semi);letter-spacing:-.02em;line-height:1.05}
.entry-content h3{margin:40px 0 12px;font-size:23px;font-stretch:var(--semi)}
.entry-content a:not(.button):not(.checkout-button):not(.remove){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.entry-content a:not(.button):not(.checkout-button):not(.remove):hover{text-decoration-thickness:2px;text-decoration-color:var(--sticker)}
.entry-content ul,.entry-content ol{padding-left:1.2em}
.entry-content li{margin-bottom:8px}
.entry-content li::marker{color:var(--graphite)}
.entry-content .wp-block-table{margin:32px 0;overflow-x:auto}
.entry-content .wp-block-table table{width:100%;border-collapse:collapse;font-size:16px}
.entry-content .wp-block-table thead th{padding:0 16px 10px 0;border-bottom:2px solid var(--ink);color:var(--graphite);font-size:14px;font-weight:600;text-align:left}
.entry-content .wp-block-table td{padding:14px 16px 14px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.entry-content .wp-block-table td:first-child{font-weight:700}
.entry-content .wp-block-table thead,.entry-content .wp-block-table tfoot{border:0}
.entry-content .wp-block-table td,.entry-content .wp-block-table th{border-left:0;border-right:0;border-top:0}
.entry-content details{margin:0;padding:0;border-top:1px solid var(--ink)}
.entry-content details:last-of-type{border-bottom:1px solid var(--ink)}
.entry-content details+p,.entry-content details+.wp-block-paragraph{margin-top:40px}
.entry-content summary{position:relative;display:block;padding:20px 56px 20px 0;font-size:clamp(18px,1.4vw,20px);font-weight:700;font-stretch:var(--semi);line-height:1.25;cursor:pointer;list-style:none}
.entry-content summary::-webkit-details-marker{display:none}
.entry-content summary::after{content:'';position:absolute;top:50%;right:6px;width:22px;height:22px;margin-top:-11px;background:linear-gradient(var(--ink),var(--ink)) center / 100% 2px no-repeat,linear-gradient(var(--ink),var(--ink)) center / 2px 100% no-repeat;transition:transform .25s var(--ease)}
.entry-content details[open] summary::after{transform:rotate(45deg)}
.entry-content summary:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.entry-content details>:not(summary){max-width:62ch;margin:0 0 24px;color:var(--graphite)}
.entry-card{padding:32px 0;border-bottom:1px solid var(--line)}
.entry-card h2{font-size:32px}

/* 404 */
.not-found{display:grid;justify-items:start;gap:28px;max-width:var(--max);margin:0 auto}
.not-found-sticker{--size:clamp(120px,14vw,180px);--tilt:-10deg}
.not-found p:not(.price-sticker){max-width:40ch;margin:0;font-size:20px}

/* ---------- Contact form (rendered by the demo mu-plugin shortcode) ---------- */
.macsteal-contact{max-width:68ch;margin:48px 0}
.macsteal-contact h2{margin-top:0}
.macsteal-contact__form{display:grid;gap:4px;margin-top:28px;padding:clamp(20px,3vw,36px);border-radius:var(--radius);background:var(--alu)}
.macsteal-contact__form p{margin:0 0 16px}
.macsteal-contact__form label{display:block;margin-bottom:8px;font-size:15px;font-weight:600}
.macsteal-contact__form input,.macsteal-contact__form textarea,.macsteal-contact__form select{display:block;width:100%;min-height:52px;padding:12px 14px;border:2px solid var(--ink);border-radius:var(--radius);background:#fff;font-size:17px}
.macsteal-contact__form textarea{min-height:160px;resize:vertical}
.macsteal-contact__form button{margin-top:4px}
.macsteal-contact__trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}
.macsteal-contact__notice{padding:16px 18px;border-left:4px solid var(--ink);border-radius:var(--radius);background:#fff;font-size:16px;font-weight:600}
.macsteal-contact__notice--error{border-left-color:var(--danger);background:#fbeae7}

/* ---------- Forms (WooCommerce) ---------- */
.macsteal-theme form .form-row{margin:0 0 18px;padding:0}
.macsteal-theme form .form-row label{display:block;margin-bottom:8px;font-size:15px;font-weight:600;line-height:1.3}
.macsteal-theme form .form-row .required{color:var(--danger);text-decoration:none}
.macsteal-theme form .form-row input.input-text,.macsteal-theme form .form-row textarea,.macsteal-theme form .form-row select,.macsteal-theme .woocommerce-input-wrapper input,.macsteal-theme #coupon_code{width:100%;min-height:52px;padding:12px 14px;border:2px solid var(--ink);border-radius:var(--radius);background:#fff;color:var(--ink);font-size:17px;line-height:1.2;box-shadow:none}
.macsteal-theme form .form-row.woocommerce-invalid input.input-text{border-color:var(--danger)}
.macsteal-theme form .form-row.woocommerce-validated input.input-text{border-color:var(--ink)}
.macsteal-theme form .form-row-first,.macsteal-theme form .form-row-last{width:calc(50% - 8px)}
.macsteal-theme form.login,.macsteal-theme form.register,.macsteal-theme form.lost_reset_password{max-width:560px;margin:0 0 32px;padding:clamp(20px,3vw,36px);border:0;border-radius:var(--radius);background:var(--alu)}

/* ---------- Cart ---------- */
.woocommerce-cart .entry-content>.woocommerce{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:24px clamp(32px,4vw,64px);align-items:start}
.woocommerce-cart .entry-content>.woocommerce>*{grid-column:1 / -1;max-width:none}
.woocommerce-cart .entry-content>.woocommerce>.woocommerce-cart-form{grid-column:1}
.woocommerce-cart .entry-content>.woocommerce>.cart-collaterals{grid-column:2}
.macsteal-theme table.shop_table{margin:0 0 24px;border:0;border-top:2px solid var(--ink);border-radius:0;border-collapse:collapse}
.macsteal-theme table.shop_table th{padding:14px 12px 14px 0;color:var(--graphite);font-size:14px;font-weight:600;text-align:left}
.macsteal-theme table.shop_table td{padding:20px 12px 20px 0;border-top:1px solid var(--line);font-size:17px;vertical-align:middle}
.macsteal-theme table.shop_table td.product-name a{font-weight:700;text-decoration:none}
.macsteal-theme table.shop_table td.product-name a:hover{text-decoration:underline;text-underline-offset:3px}
.macsteal-theme table.cart td.product-thumbnail{width:112px}
.macsteal-theme table.cart td.product-thumbnail a{display:block;width:96px;border-radius:4px;background:var(--alu);isolation:isolate;overflow:hidden}
.macsteal-theme table.cart img,.macsteal-theme.woocommerce-cart table.cart img{width:96px;mix-blend-mode:multiply}
.macsteal-theme table.cart td.product-remove{width:48px}
.macsteal-theme a.remove{text-decoration:none;display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--ink);border-radius:50%;color:var(--ink)!important;font-size:20px;font-weight:400;line-height:1}
.macsteal-theme a.remove:hover{background:var(--ink);color:#fff!important}
.macsteal-theme table.cart td.actions{padding-top:24px}
.macsteal-theme table.cart td.actions .coupon{display:flex;flex-wrap:wrap;gap:8px}
.macsteal-theme table.cart td.actions .coupon .input-text,.macsteal-theme #coupon_code{width:200px;min-height:48px;margin:0;font-size:16px}
.macsteal-theme table.cart td.actions .button{min-height:48px;font-size:15px}
.macsteal-theme table.cart td.actions>.button{float:right;background:transparent;color:var(--ink)}
.macsteal-theme table.cart td.actions>.button:not(:disabled):hover{background:var(--ink);color:#fff}
.macsteal-theme .cart-collaterals .cart_totals{float:none;width:auto;padding:clamp(20px,2.4vw,32px);border-radius:var(--radius);background:var(--alu)}
.macsteal-theme .cart-collaterals .cart_totals h2{margin-bottom:16px;font-size:26px;font-stretch:var(--semi)}
.macsteal-theme .cart_totals table.shop_table{border-top-width:2px}
.macsteal-theme .cart_totals table.shop_table th,.macsteal-theme .cart_totals table.shop_table td{border-top:1px solid var(--alu-deep);padding:14px 0}
.macsteal-theme .cart_totals table.shop_table td{text-align:right}
.macsteal-theme .cart_totals table.shop_table tr td,.macsteal-theme .cart_totals table.shop_table tr th{border-top:1px solid var(--alu-deep)!important}
.macsteal-theme .cart_totals table.shop_table tr:first-child td,.macsteal-theme .cart_totals table.shop_table tr:first-child th{border-top:0!important}
.macsteal-theme .cart_totals .order-total .amount{font-size:24px;font-weight:800;font-stretch:var(--condensed)}
.macsteal-theme .wc-proceed-to-checkout{padding:8px 0 0}
.macsteal-theme .wc-proceed-to-checkout a.checkout-button{display:flex;width:100%;min-height:60px;margin:0;font-size:18px}
.macsteal-theme .cart-empty.woocommerce-info{font-size:20px}
.macsteal-theme .return-to-shop{margin-top:8px}

/* ---------- Checkout ---------- */
.macsteal-theme form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:0 clamp(32px,4vw,64px);align-items:start}
.macsteal-theme form.checkout>*{grid-column:1 / -1}
.macsteal-theme form.checkout>#customer_details{grid-column:1;grid-row:1 / span 2}
.macsteal-theme form.checkout>#order_review_heading{grid-column:2;grid-row:1;margin:0;padding:24px clamp(20px,2.4vw,32px) 0;border-radius:var(--radius) var(--radius) 0 0;background:var(--alu);font-size:26px;font-stretch:var(--semi)}
.macsteal-theme form.checkout>#order_review{grid-column:2;grid-row:2;padding:16px clamp(20px,2.4vw,32px) clamp(20px,2.4vw,32px);border-radius:0 0 var(--radius) var(--radius);background:var(--alu)}
.macsteal-theme #customer_details.col2-set .col-1,.macsteal-theme #customer_details.col2-set .col-2{float:none;width:100%}
.macsteal-theme #customer_details h3{margin:0 0 24px;font-size:26px;font-stretch:var(--semi)}
.macsteal-theme #order_review table.shop_table td,.macsteal-theme #order_review table.shop_table th{padding:12px 0;border-top:1px solid var(--alu-deep)}
.macsteal-theme #order_review table.shop_table td:last-child,.macsteal-theme #order_review table.shop_table th:last-child{text-align:right}
.macsteal-theme #order_review .order-total .amount{font-size:24px;font-weight:800;font-stretch:var(--condensed)}
.macsteal-theme #payment{border-radius:var(--radius);background:transparent}
.macsteal-theme #payment ul.payment_methods{padding:16px 0;border-bottom:1px solid var(--alu-deep)}
.macsteal-theme #payment ul.payment_methods li{font-weight:700}
.macsteal-theme #payment div.payment_box{margin:12px 0 0;padding:14px 16px;border-radius:var(--radius);background:#fff;color:var(--ink);font-size:15px;font-weight:400}
.macsteal-theme #payment div.payment_box::before{border-bottom-color:#fff}
.macsteal-theme #payment div.form-row{padding:16px 0 0}
.macsteal-theme .woocommerce-privacy-policy-text{font-size:14px;color:var(--graphite)}
.macsteal-theme #payment #place_order{float:none;width:100%;min-height:60px;margin-top:8px;font-size:18px}
.macsteal-theme .woocommerce-form-coupon-toggle .woocommerce-info{margin-bottom:24px}
.macsteal-theme form.checkout_coupon{margin:0 0 32px;padding:20px;border:0;border-radius:var(--radius);background:var(--alu)}

/* Order received */
.macsteal-theme .woocommerce-order>p.woocommerce-thankyou-order-received,.macsteal-theme .woocommerce-notice--success{margin:0 0 40px;padding:0;border:0;background:none;font-size:clamp(24px,2.4vw,32px);font-weight:700;font-stretch:var(--semi);line-height:1.2}
.macsteal-theme ul.order_details{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;margin:0 0 56px;padding:0;border-top:2px solid var(--ink)}
.macsteal-theme ul.order_details::before,.macsteal-theme ul.order_details::after{display:none}
.macsteal-theme ul.order_details li{float:none;margin:0;padding:16px 16px 16px 0;border:0;border-bottom:1px solid var(--line);color:var(--graphite);font-size:14px;text-transform:none}
.macsteal-theme ul.order_details li strong{display:block;margin-top:4px;color:var(--ink);font-size:18px}
.macsteal-theme .woocommerce-order-details__title,.macsteal-theme .woocommerce-column__title{margin:0 0 20px;font-size:28px;font-stretch:var(--semi)}
.macsteal-theme .woocommerce-customer-details address{padding:20px;border:0;border-radius:var(--radius);background:var(--alu);font-style:normal}

/* My account */
.macsteal-theme .woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink)}
.macsteal-theme .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.macsteal-theme .woocommerce-MyAccount-navigation a{display:block;padding:12px 0;font-weight:600}
.macsteal-theme .woocommerce-MyAccount-navigation .is-active a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}

/* ---------- Footer ---------- */
.site-footer{background:var(--ink);color:#fff}
.footer-inner{padding:clamp(56px,6vw,88px) var(--pad) 28px}
.footer-brand{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 40px;padding-bottom:clamp(40px,4vw,56px);border-bottom:1px solid #3a3d42}
.footer-brand .site-logo{font-size:clamp(28px,3vw,40px)}
.footer-brand .site-logo img{width:clamp(40px,3.6vw,52px);height:auto}
.footer-brand p{max-width:32ch;margin:0;color:#c6c9ce;font-size:18px}
.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:40px 0 48px}
.footer-label{margin:0 0 14px;color:#9a9ea5;font-size:14px;font-weight:600}
.footer-grid a{display:block;width:fit-content;margin:0 0 10px;font-size:17px;font-weight:600}
.footer-grid a:hover{text-decoration:underline;text-decoration-color:var(--sticker);text-decoration-thickness:2px;text-underline-offset:5px}
.footer-demo{margin:0 0 20px;padding:18px 0;border-top:1px solid #3a3d42;color:#c6c9ce;font-size:14px;line-height:1.6}
.footer-demo a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.footer-demo a:hover{text-decoration-color:var(--sticker)}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;color:#9a9ea5;font-size:13px}

/* ---------- Tablet ---------- */
@media(max-width:1100px){
	.home-top{grid-template-columns:minmax(0,1fr)}
	.range-tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
	.service-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
	.macsteal-theme div.product div.images{grid-column:1 / span 6}
	.macsteal-theme div.product div.summary{grid-column:7 / -1}
	.spec-sheet{grid-template-columns:1fr}
	.woocommerce-cart .entry-content>.woocommerce{grid-template-columns:1fr}
	.woocommerce-cart .entry-content>.woocommerce>.cart-collaterals{grid-column:1}
	.macsteal-theme .cart-collaterals .cart_totals{max-width:520px;margin-left:auto}
	.account-link span{display:none}
}
@media(max-width:900px){
	.macsteal-theme ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
	.home-help{grid-template-columns:minmax(0,1fr)}
	.macsteal-theme div.product div.images,.macsteal-theme div.product div.summary{grid-column:1 / -1}
	.macsteal-theme div.product div.summary{padding-top:32px}
	.spec-sheet{grid-template-columns:repeat(2,minmax(0,1fr))}
	.macsteal-theme form.checkout{grid-template-columns:1fr}
	.macsteal-theme form.checkout>#customer_details,.macsteal-theme form.checkout>#order_review_heading,.macsteal-theme form.checkout>#order_review{grid-column:1;grid-row:auto}
	.macsteal-theme form.checkout>#order_review_heading{margin-top:32px}
	.page-main--info{grid-template-columns:1fr}
	.info-nav{position:static;order:2}
}

/* ---------- Mobile header ---------- */
@media(max-width:860px){
	.site-header{position:relative}
	.header-main{flex-wrap:wrap;gap:8px 12px;height:auto;padding-block:10px 12px}
	.menu-toggle{display:block;order:0;margin-left:-8px}
	.header-main .site-logo{order:1;font-size:19px}
	.header-main .site-logo img{width:32px;height:32px}
	.account-link{order:2;margin-left:auto;padding:8px}
	.header-cart{order:3}
	.cart-link{height:44px;padding:0 14px 0 12px}
	.header-search{order:4;flex:1 1 100%;max-width:none;height:46px;margin:2px 0 0}
	.primary-nav{position:absolute;top:100%;right:0;left:0;display:none;border-top:0;border-bottom:2px solid var(--ink);background:var(--paper)}
	.primary-nav.is-open{display:block}
	.nav-inner{display:block;padding:4px var(--gutter) 20px}
	.range-links,.info-links{display:block}
	.range-links li,.info-links li{border-bottom:1px solid var(--line)}
	.range-links a,.info-links a{padding:14px 0;line-height:1.2;font-size:22px;font-weight:700;font-stretch:var(--semi);color:var(--ink)}
	.info-links a{font-size:18px;font-weight:600}
	.range-links a[aria-current="page"],.info-links .current-menu-item>a{box-shadow:inset 3px 0 var(--sticker);padding-left:12px}
	.promo{grid-template-columns:1fr;min-height:0}
	.promo-media{aspect-ratio:16 / 10;min-height:0}
}

/* ---------- Phones ---------- */
@media(max-width:600px){
	body{font-size:16px}
	.home-top{padding-top:12px;gap:12px}
	.promo-copy{padding:24px 20px 28px}
	.hero-actions .button{flex:1}
	.range-tiles{gap:12px}
	.range-tiles a{grid-template-columns:1fr;padding:16px 16px 12px}
	.range-tiles img{order:-1;width:80%;margin:0 auto 4px}
	.tile-name{font-size:19px;white-space:normal}
	.tile-meta{font-size:13px}
	.tile-price{margin-top:10px;font-size:15px}
	.service-strip{grid-template-columns:1fr}
	.service-strip li+li{border-top:0}
	.service-strip a{padding:14px 0}
	.lineup h2,.home-help h2{font-size:28px}
	.home-help{gap:12px}
	/* Catalog becomes a list: image left, details right. */
	.macsteal-theme ul.products{grid-template-columns:1fr;gap:28px}
	.macsteal-theme ul.products li.product{grid-template-columns:38% minmax(0,1fr);grid-template-areas:"media title" "media meta" "media price" "media cta" "media added";column-gap:16px;align-items:start}
	.product-card-media{margin:0;align-self:start}
	.product-card-tags{left:6px;bottom:6px;gap:4px}
	.product-card-tag{padding:2px 7px;font-size:11px}
	.product-card-tag:nth-child(2){display:none}
	.macsteal-theme ul.products li.product .woocommerce-loop-product__title{margin:0 0 8px!important;font-size:16px!important}
	.product-card-meta{gap:8px;margin-bottom:10px;padding-top:8px}
	.product-card-meta dt{font-size:12px}
	.product-card-meta dd{font-size:14px}
	.macsteal-theme ul.products li.product .price{font-size:18px!important}
	.macsteal-theme ul.products li.product .button{justify-self:start;min-height:40px;margin-top:10px!important;padding:0 14px;font-size:14px}
	.macsteal-theme ul.products li.product .added_to_cart{justify-self:start;margin-top:8px}
	.shop-filters{display:grid;gap:12px}
	.shop-ranges a{min-height:40px;padding:0 14px;font-size:15px}
	.shop-sort{flex-wrap:wrap}
	.shop-sort label{flex:1}
	.shop-sort select{flex:1;min-width:0}
	.spec-sheet{grid-template-columns:1fr}
	.macsteal-theme div.product .woocommerce-tabs ul.tabs{gap:20px}
	.macsteal-theme div.product .woocommerce-tabs ul.tabs li a{font-size:16px}
	.entry-content{font-size:17px}
	.macsteal-theme form .form-row-first,.macsteal-theme form .form-row-last{width:100%}
	.macsteal-theme table.shop_table_responsive tr td{padding:10px 0;text-align:right}
	.macsteal-theme table.shop_table_responsive tr td::before{color:var(--graphite);font-weight:600}
	.macsteal-theme table.cart td.product-thumbnail a{margin-left:auto}
	.macsteal-theme table.shop_table_responsive tr td,.macsteal-theme table.shop_table_responsive tr:nth-child(2n) td{background:transparent}
	.macsteal-theme table.cart tr.cart_item td.product-remove{padding-top:16px;border-top:2px solid var(--ink)}
	.macsteal-theme table.cart tr.cart_item:first-child td.product-remove{border-top:0}
	.macsteal-theme table.cart td.actions .coupon .input-text{flex:1;width:auto}
	.macsteal-theme table.cart td.actions>.button{float:none;width:100%;margin-top:8px}
	.macsteal-theme table.shop_table_responsive tr td.product-remove,.macsteal-theme table.shop_table_responsive tr td.actions{text-align:left}
	.macsteal-theme .woocommerce-message .button,.macsteal-theme .woocommerce-info .button{display:flex;float:none;margin:12px 0 0}
	.footer-grid{grid-template-columns:1fr 1fr}
	.footer-grid div:last-child{grid-column:1 / -1}
	.footer-bottom{flex-direction:column}
}
@media(max-width:380px){
	/* Smallest phones: cart becomes an icon button so the header stays on one row. */
	.cart-total,.cart-word{display:none}
	.cart-link{padding:0 14px}
	.account-link{padding:8px 4px}
	.header-main .site-logo{font-size:17px}
}

/* ---------- Reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}
}
