/* Precision Atelier. Palette aliases derive from theme.json. */
@font-face { font-family: Manrope; src: url('../fonts/manrope-latin-ext.woff2') format('woff2'); font-style: normal; font-weight: 200 800; 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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: Manrope; src: url('../fonts/manrope-latin.woff2') format('woff2'); font-style: normal; font-weight: 200 800; 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; }
:root {
  color-scheme: dark;
  --color-bg: var(--wp--preset--color--graphite, #0d1117);
  --color-surface: var(--wp--preset--color--surface, #161b22);
  --color-text: var(--wp--preset--color--text, #e6edf3);
  --color-accent: var(--wp--preset--color--teal, #1cb0a8);
  --color-paper: var(--wp--preset--color--paper, #f2f0ea);
  --color-muted: #a8b2bf; --color-border: #30363d; --color-ink: #121820;
  --font-body: Manrope, system-ui, sans-serif; --font-display: var(--font-body);
  --space-1: .25rem; --space-2: .5rem; --space-3: .75rem; --space-4: 1rem;
  --space-5: 1.5rem; --space-6: 2rem; --space-7: 3rem; --space-8: 5rem;
}
* { box-sizing: border-box; }
html { scroll-padding-top: 2rem; scrollbar-gutter: stable; scrollbar-color: #66717e var(--color-bg); scrollbar-width: thin; }
body { margin: 0; background: var(--color-bg); color: var(--color-text); font: 400 1rem/1.65 var(--font-body); overflow-wrap: break-word; }
body, input, textarea, select, button { font-family: var(--font-body); }
a { color: inherit; text-underline-offset: .22em; }
a:hover { color: var(--color-accent); }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button, input, select, textarea { font-size: 1rem; }
button, a { touch-action: manipulation; }
button { cursor: pointer; }
[hidden] { display: none !important; }
:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 4px; }
main:focus { outline: none; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--font-display); }
h1 { font-size: clamp(2.5rem, 5vw, 4.5rem); line-height: 1.08; letter-spacing: -.055em; font-weight: 600; }
h2 { font-size: clamp(1.8rem, 3.3vw, 3rem); line-height: 1.15; letter-spacing: -.045em; font-weight: 500; }
h3 { font-size: 1.25rem; letter-spacing: -.02em; }
img { max-width: 100%; height: auto; }
svg { flex-shrink: 0; vertical-align: middle; }
.shell { width: min(1320px, calc(100% - 48px)); margin-inline: auto; }
.screen-reader-text { border: 0; clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; white-space: nowrap; }
.skip-link { position: fixed; left: 16px; top: -120px; z-index: 1000; background: var(--color-paper); color: var(--color-ink); padding: 12px 20px; }
.skip-link:focus { top: 16px; }
.site-header { border-bottom: 1px solid var(--color-border); }
.header-row { min-height: 100px; display: flex; gap: 64px; align-items: center; }
.brand { text-decoration: none; display: flex; gap: 14px; align-items: center; color: var(--color-text); flex-shrink: 0; }
.brand-mark { font-size: 36px; font-weight: 800; letter-spacing: -.085em; line-height: 1; }
.brand-mark > span { color: var(--color-accent); font-size: 12px; vertical-align: top; letter-spacing: 0; margin-left: 3px; }
.brand-sub { font: 400 10px/1.2 ui-monospace, monospace; letter-spacing: .18em; border-left: 1px solid var(--color-border); padding: 10px 0 10px 14px; }
.header-actions { display: flex; align-items: center; gap: 28px; margin-left: auto; }
.icon-link { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; min-width: 44px; color: var(--color-text); background: transparent; border: 0; padding: 0; text-decoration: none; white-space: nowrap; font-size: 12px; }
.cart-count { border: 1px solid var(--color-border); font: 11px/1 ui-monospace, monospace; padding: 5px; min-width: 22px; text-align: center; border-radius: 50%; }
.product-search { position: relative; display: flex; flex: 1; max-width: 460px; align-items: center; border-bottom: 1px solid #4c5662; gap: 0; }
.product-search input[type=search] { min-width: 0; width: 100%; height: 46px; border: 0; background: transparent; color: var(--color-text); font-size: 13px; padding: 8px 4px; }
.product-search input::placeholder { color: var(--color-muted); opacity: 1; }
.product-search input::-webkit-search-cancel-button { display: none; }
.product-search button { flex-shrink: 0; width: 44px; height: 44px; background: transparent; color: var(--color-text); border: 0; }
.nav-inner { display: flex; align-items: center; gap: 32px; min-height: 54px; }
.nav-inner a { display: inline-flex; min-height: 44px; align-items: center; font-size: 12px; text-decoration: none; }
.nav-inner a[aria-current] { color: var(--color-accent); }
.nav-note { margin-left: auto; color: var(--color-muted); font: 10px/1.4 ui-monospace, monospace; letter-spacing: .05em; }
.menu-toggle { display: none; }
.home-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; padding-block: 64px 80px; align-items: stretch; }
.hero-copy { padding-block: 32px 0; }
.eyebrow { font: 11px/1.5 ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; color: var(--color-muted); margin-bottom: 28px; }
.accent-dash { display: inline-block; width: 24px; height: 2px; background: var(--color-accent); vertical-align: middle; margin-right: 10px; }
.hero-copy h1 { font-size: clamp(3.6rem, 6.3vw, 5.65rem); font-weight: 500; line-height: 1.04; margin-bottom: 30px; letter-spacing: -.075em; }
.hero-copy h1 span { color: var(--color-accent); }
.hero-description { color: var(--color-muted); font-size: 15px; max-width: 380px; margin-bottom: 30px; line-height: 1.8; }
.button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wp-element-button, .wc-block-components-button:not(.is-link) { display: inline-flex; align-items: center; justify-content: center; gap: 24px; min-height: 48px; border: 1px solid transparent; border-radius: 4px; background: var(--color-accent); color: var(--color-ink); font-size: 13px; font-weight: 700; line-height: 1.5; padding: 14px 22px; text-decoration: none; transition: background-color 180ms, color 180ms; box-shadow: none; }
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .wp-element-button:hover, .wc-block-components-button:not(.is-link):hover { background: #53c7c0; color: var(--color-ink); }
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { opacity: .5; padding: 14px 22px; cursor: not-allowed; }
.hero-signature { display: flex; align-items: center; gap: 20px; color: var(--color-muted); font: 9px/1.6 ui-monospace, monospace; letter-spacing: .12em; margin: 54px 0 0; }
.hero-signature span { color: var(--color-accent); }
.hero-canvas { min-width: 0; min-height: 560px; background: var(--color-paper); color: var(--color-ink); position: relative; overflow: hidden; border-radius: 3px; }
.canvas-label { position: absolute; left: 28px; top: 28px; font: 9px/1 ui-monospace, monospace; letter-spacing: .12em; }
.canvas-footer { position: absolute; bottom: 26px; inset-inline: 28px; display: flex; justify-content: space-between; align-items: center; font: 10px/1.4 ui-monospace, monospace; }
.canvas-footer > :last-child { font: 800 24px/1 var(--font-display); letter-spacing: -.07em; }
.layer-sculpture { position: absolute; width: 70%; height: 260px; left: 15%; top: 22%; transform: rotate(-24deg); }
.layer-sculpture span { position: absolute; width: 100%; height: 215px; border: 1px solid #136760; border-radius: 50%; background: #1a9992; top: calc(var(--layer) * 6px); transform: translateX(calc(var(--layer) * -1px)); box-shadow: 1px 4px 0 #136b66; }
.layer-sculpture span:last-child { background: var(--color-paper); box-shadow: inset 0 0 0 22px #29b0a7, 1px 4px 0 #136b66; }
.hero-product { display: flex; height: 100%; flex-direction: column; text-decoration: none; color: var(--color-ink); }
.hero-product > img { width: 100%; height: 100%; max-height: 510px; object-fit: contain; flex: 1; }
.hero-product-caption { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 28px; font-size: 14px; }
.product-section { padding-block: 0 80px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 32px; }
.section-heading .eyebrow { margin-bottom: 14px; }
.section-heading h2 { margin-bottom: 0; }
.text-link { display: inline-flex; gap: 18px; align-items: center; min-height: 44px; font-size: 12px; text-decoration: none; }
.catalog-empty { display: flex; align-items: center; gap: 30px; padding: 44px; border: 1px solid var(--color-border); border-radius: 4px; }
.catalog-empty h2, .catalog-empty h3 { margin-bottom: 8px; font-size: 20px; line-height: 1.35; }
.catalog-empty p { color: var(--color-muted); font-size: 13px; max-width: 550px; margin-bottom: 0; }
.empty-symbol { color: var(--color-accent); font-size: 40px; font-weight: 200; width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid var(--color-border); flex-shrink: 0; }
.empty-tag { font: 9px/1.6 ui-monospace, monospace; color: var(--color-muted); margin-left: auto; white-space: nowrap; }
.material-section { border-block: 1px solid var(--color-border); padding-block: 72px; }
.material-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }
.material-layout > div > p:last-child { max-width: 410px; font-size: 14px; color: var(--color-muted); }
.material-notes article { display: flex; gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--color-border); }
.material-notes article:first-child { padding-top: 0; }
.material-notes article:last-child { border-bottom: 0; padding-bottom: 0; }
.material-notes article > span { color: var(--color-accent); font-size: 24px; line-height: 1; width: 24px; flex-shrink: 0; }
.material-notes h3 { margin-bottom: 6px; font-size: 16px; }
.material-notes p { margin-bottom: 0; font-size: 13px; color: var(--color-muted); max-width: 400px; }
.site-footer { padding-block: 64px 24px; }
.footer-main { display: flex; gap: 100px; padding-bottom: 56px; }
.footer-main > div:first-child { flex: 1; }
.footer-main p { color: var(--color-muted); font-size: 13px; line-height: 1.7; margin: 24px 0 0; }
.footer-main h2 { font-size: 13px; font-weight: 700; letter-spacing: 0; margin-bottom: 14px; }
.footer-main nav a { display: block; padding-block: 10px; font-size: 12px; color: var(--color-muted); text-decoration: none; min-height: 44px; }
.footer-main nav a:hover { color: var(--color-accent); }
.footer-main ul { list-style: none; padding: 0; margin: 0; }
.footer-bottom { border-top: 1px solid var(--color-border); padding-top: 24px; display: flex; gap: 24px; font: 10px/1.7 ui-monospace, monospace; color: var(--color-muted); }
.footer-bottom > :last-child { margin-left: auto; }
.content-page, .shop-content { padding-block: 56px 80px; min-height: 55vh; }
.content-page h1 { margin-bottom: 40px; }
.entry-content > :not(.woocommerce):not([class*=wp-block-woocommerce]) { max-width: 900px; }
.woocommerce .woocommerce-breadcrumb { color: var(--color-muted); font-size: 12px; margin-bottom: 30px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--color-muted); }
.woocommerce .woocommerce-products-header { padding-block: 12px 24px; }
.woocommerce .woocommerce-products-header h1 { font-size: clamp(2.5rem, 5vw, 4rem); }
.woocommerce .woocommerce-result-count { color: var(--color-muted); font-size: 13px; padding-block: 12px; }
.woocommerce .woocommerce-ordering { margin-bottom: 30px; }
.woocommerce ul.products, ul.products { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px 24px; list-style: none; margin: 0; padding: 0; clear: both; }
.woocommerce ul.products::before, .woocommerce ul.products::after, ul.products::before, ul.products::after { display: none; }
.woocommerce ul.products li.product, ul.products li.product { width: auto; float: none; margin: 0; min-width: 0; }
ul.products li.product a { text-decoration: none; }
.woocommerce ul.products li.product a img, ul.products li.product a img { width: 100%; aspect-ratio: 4/5; object-fit: contain; background: var(--color-paper); margin-bottom: 18px; border-radius: 3px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title, ul.products li.product .woocommerce-loop-product__title { font-size: 16px; line-height: 1.45; margin: 0; padding: 0 0 8px; letter-spacing: -.02em; font-weight: 600; }
.woocommerce ul.products li.product .price, ul.products li.product .price { display: block; color: var(--color-text); font-size: 14px; margin-block: 8px 0; }
.woocommerce ul.products li.product .button, ul.products li.product .button { margin-top: 18px; background: transparent; border: 1px solid var(--color-border); color: var(--color-text); width: 100%; }
.woocommerce ul.products li.product .button:hover { border-color: var(--color-accent); }
.product-type { display: block; font-size: 11px; color: var(--color-muted); }
.woocommerce span.onsale { color: var(--color-ink); background: var(--color-accent); border-radius: 3px; line-height: 1.4; min-height: 0; padding: 7px 10px; }
.woocommerce nav.woocommerce-pagination ul { border-color: var(--color-border); margin-top: 32px; }
.woocommerce nav.woocommerce-pagination ul li { border-color: var(--color-border); }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 44px; min-height: 44px; display: grid; place-items: center; }
.woocommerce nav.woocommerce-pagination ul li span.current { color: var(--color-ink); background: var(--color-accent); }
.woocommerce div.product div.images { width: 54%; }
.woocommerce div.product div.summary { width: 40%; }
.woocommerce div.product div.images img { background: var(--color-paper); border-radius: 3px; }
.woocommerce div.product .product_title { font-size: clamp(2rem, 3.5vw, 3.5rem); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--color-text); font-size: 24px; }
.woocommerce-product-details__short-description { color: var(--color-muted); font-size: 14px; }
.woocommerce div.product form.cart { margin-top: 28px; }
.woocommerce div.product form.cart .button { background: var(--color-accent); color: var(--color-ink); }
.woocommerce div.product form.cart .variations label { font-size: 13px; }
.woocommerce div.product form.cart .variations select { width: 100%; margin: 0; }
.woocommerce div.product form.cart div.quantity { margin-right: 12px; }
.woocommerce .quantity .qty { min-height: 49px; width: 70px; }
.product-facts { margin-block: 28px; padding: 0; border-top: 1px solid var(--color-border); }
.product-facts > div { padding-block: 14px; border-bottom: 1px solid var(--color-border); }
.product-facts dt { font-size: 11px; color: var(--color-muted); }
.product-facts dd { font-size: 13px; margin: 4px 0 0; }
.product_meta { display: flex; flex-direction: column; font-size: 12px; color: var(--color-muted); gap: 8px; }
.woocommerce div.product .woocommerce-tabs { padding-top: 40px; clear: both; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--color-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: transparent; border: 0; margin: 0 24px 0 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--color-muted); padding: 14px 0; font-size: 13px; min-height: 44px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: transparent; border-bottom: 2px solid var(--color-accent); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--color-text); }
.woocommerce div.product .woocommerce-tabs .panel { color: var(--color-muted); }
.woocommerce div.product .woocommerce-tabs .panel h2 { color: var(--color-text); font-size: 26px; }
.woocommerce .related.products { padding-top: 40px; }
.sticky-buy { position: fixed; z-index: 30; inset: auto 0 0; background: var(--color-surface); border-top: 1px solid var(--color-border); padding: 12px max(24px, calc((100vw - 1320px)/2)); display: flex; align-items: center; justify-content: space-between; gap: 20px; box-shadow: 0 -10px 40px #0003; }
.sticky-buy > div { min-width: 0; }
.sticky-buy strong { display: block; font-size: 13px; max-width: 50vw; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sticky-buy span { font-size: 12px; }
body.has-sticky-buy { padding-bottom: 94px; }
:where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]), select, textarea) { background: var(--color-surface); border: 1px solid #66717e; color: var(--color-text); border-radius: 4px; padding: 12px; max-width: 100%; }
input[type=checkbox], input[type=radio] { accent-color: var(--color-accent); }
textarea { min-height: 120px; }
.product-search input[type=search] { background: transparent; border: 0; }
.woocommerce-info, .woocommerce-message, .woocommerce-error { color: var(--color-text); background: var(--color-surface); border-top-color: var(--color-accent); border-radius: 4px; }
.woocommerce-info::before, .woocommerce-message::before { color: var(--color-accent); }
.woocommerce-error { border-top-color: #f85149; }
.woocommerce-error::before { color: #f85149; }
.woocommerce .woocommerce-MyAccount-navigation { width: 24%; }
.woocommerce .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--color-border); }
.woocommerce .woocommerce-MyAccount-navigation a { display: block; padding: 16px 12px; font-size: 14px; text-decoration: none; }
.woocommerce .woocommerce-MyAccount-navigation .is-active { background: var(--color-surface); color: var(--color-accent); }
.woocommerce .woocommerce-MyAccount-content { width: 70%; }
.woocommerce form.login, .woocommerce form.register, .woocommerce form.checkout_coupon { border-color: var(--color-border); border-radius: 4px; }
.woocommerce form .form-row label { font-size: 13px; line-height: 1.6; padding-bottom: 6px; }
.woocommerce form .show-password-input { width: 44px; height: 44px; min-width: 44px; min-height: 44px; top: 2px; right: 2px; display: flex; align-items: center; justify-content: center; }
.woocommerce form .show-password-input::after { margin: 0; }
.woocommerce form .password-input input { padding-right: 52px; }
.empty-cart-return { text-align: center; }
.woocommerce table.shop_table { border-color: var(--color-border); border-radius: 4px; }
.woocommerce table.shop_table td, .woocommerce table.shop_table th, .woocommerce table.shop_table tfoot th { border-color: var(--color-border); padding: 16px; }
.woocommerce-cart .cart-collaterals .cart_totals table th { width: 40%; }
.woocommerce-cart table.cart td.actions .coupon .input-text { width: 160px; min-height: 48px; }
.woocommerce-checkout #payment { background: var(--color-surface); }
.woocommerce-checkout #payment div.payment_box { background: var(--color-bg); color: var(--color-text); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--color-bg); }
.woocommerce table.shop_table_responsive tr:nth-child(2n) td { background: #ffffff04; }
/* Woo blocks retain their event handling, validation and extension points. */
.wc-block-components-sidebar-layout { gap: 32px; }
.wc-block-components-order-summary, .wc-block-components-totals-wrapper, .wc-block-cart-items { border-color: var(--color-border); }
.wc-block-components-text-input input[type], .wc-block-components-combobox .wc-block-components-combobox-control input, .wc-blocks-components-select .wc-blocks-components-select__select { background: var(--color-surface); color: var(--color-text); border-color: #66717e; }
.wc-block-components-text-input label, .wc-blocks-components-select label { color: var(--color-muted); }
.wc-block-components-text-input.is-active label { color: var(--color-muted); }
.wc-block-components-notice-banner { color-scheme: light; }
.wc-block-components-notice-banner.is-info { background: #e9f7f5; color: #143d38; }
.wc-block-components-checkbox__input[type=checkbox] { background: var(--color-surface); border-color: #66717e; }
.wc-block-components-checkbox__mark { fill: var(--color-accent); }
.wc-block-components-product-name { color: var(--color-text); }
.wc-block-components-order-summary-item__image img, .wc-block-cart-item__image img { background: var(--color-paper); }
.wp-block-woocommerce-empty-cart-block { padding-block: 48px; }
@media (min-width: 1440px) { .home-hero { gap: 100px; } }
@media (max-width: 1050px) {
  .header-row { gap: 32px; } .header-actions { gap: 14px; } .account-link span, .cart-label { display: none; }
  .home-hero { gap: 40px; } .hero-canvas { min-height: 500px; }
  .hero-copy h1 { font-size: clamp(3rem, 6.5vw, 4.5rem); }
  .empty-tag { display: none; } .material-layout { gap: 48px; }
}
@media (max-width: 760px) {
  .shell { width: calc(100% - 40px); }
  .header-row { min-height: 80px; flex-wrap: wrap; gap: 0; padding-block: 20px 16px; }
  .brand-mark { font-size: 30px; } .brand-sub { font-size: 9px; }
  .header-actions { gap: 9px; } .account-link { display: inline-flex; } .account-link span { display: none; }
  .cart-link { gap: 3px; } .cart-count { border: 0; padding: 0; min-width: 12px; }
  .product-search { order: 3; flex-basis: 100%; max-width: none; margin-top: 18px; }
  .menu-toggle:not([hidden]) { display: inline-flex; }
  .nav-enhanced .menu-toggle[hidden] { display: inline-flex !important; visibility: hidden; }
  .nav-inner { flex-wrap: wrap; gap: 0 20px; padding-block: 8px; }
  .nav-note { display: none; }
  .nav-enhanced .shop-nav { display: none; }
  .nav-enhanced .shop-nav.is-open { display: block; }
  .nav-enhanced .nav-inner { flex-direction: column; align-items: stretch; padding-block: 8px 16px; }
  .nav-inner a { min-height: 48px; }
  .home-hero { grid-template-columns: 1fr; gap: 32px; padding-block: 36px 56px; }
  .hero-copy { padding: 0; } .hero-copy .eyebrow { margin-bottom: 22px; font-size: 10px; }
  .hero-copy h1 { font-size: clamp(3rem, 13vw, 4.7rem); margin-bottom: 24px; }
  .hero-description { font-size: 14px; margin-bottom: 24px; }
  .hero-signature { margin-top: 28px; font-size: 8px; gap: 14px; }
  .hero-canvas { min-height: 390px; }
  .layer-sculpture { top: 15%; height: 180px; }
  .layer-sculpture span { height: 165px; top: calc(var(--layer) * 4.5px); }
  .canvas-label { font-size: 8px; left: 20px; top: 22px; }
  .canvas-footer { inset-inline: 20px; bottom: 20px; font-size: 9px; }
  .hero-product > img { max-height: 420px; }
  .section-heading { display: block; margin-bottom: 24px; }
  .section-heading .text-link { margin-top: 14px; }
  .product-section { padding-bottom: 56px; }
  .catalog-empty { align-items: flex-start; padding: 24px; gap: 18px; }
  .empty-symbol { width: 32px; height: 32px; font-size: 24px; }
  .catalog-empty h2, .catalog-empty h3 { font-size: 17px; }
  .catalog-empty p { font-size: 12px; }
  .material-section { padding-block: 48px; }
  .material-layout { grid-template-columns: 1fr; gap: 30px; }
  .material-notes article { gap: 20px; }
  .site-footer { padding-top: 48px; }
  .footer-main { flex-wrap: wrap; gap: 40px; padding-bottom: 32px; }
  .footer-main > div:first-child { flex-basis: 100%; }
  .footer-bottom { flex-wrap: wrap; gap: 12px 24px; }
  .footer-bottom > :last-child { margin-left: 0; }
  .shop-content, .content-page { padding-block: 32px 48px; }
  .woocommerce ul.products, ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 16px; }
  .woocommerce ul.products li.product, ul.products li.product { width: 100%; margin: 0; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title, ul.products li.product .woocommerce-loop-product__title { font-size: 14px; }
  .woocommerce ul.products li.product .button, ul.products li.product .button { font-size: 12px; padding-inline: 10px; }
  .woocommerce div.product div.images, .woocommerce div.product div.summary { width: 100%; float: none; }
  .woocommerce div.product div.summary { margin-top: 28px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { margin-right: 20px; }
  .woocommerce .woocommerce-MyAccount-navigation, .woocommerce .woocommerce-MyAccount-content { width: 100%; float: none; }
  .woocommerce .woocommerce-MyAccount-content { margin-top: 32px; }
  .woocommerce .woocommerce-ordering, .woocommerce .woocommerce-result-count { float: none; }
  .sticky-buy { padding: 12px 20px max(12px, env(safe-area-inset-bottom)); }
  .sticky-buy .button { font-size: 11px; gap: 8px; padding-inline: 14px; }
  .sticky-buy strong { max-width: 38vw; }
  .sticky-buy .button svg { width: 18px; }
}
/* Digital departments use the existing palette and WooCommerce category pages. */
.staging-notice { background: #e9dcae; color: #26200d; text-align: center; padding: 8px 20px; font-size: 12px; line-height: 1.5; }
.brand img { width: 144px; height: 60px; object-fit: contain; }
.brand { gap: 12px; flex-shrink: 0; }
.brand-sub { border-left: 1px solid var(--color-border); padding-left: 12px; }
.studio-return { margin-left: auto; color: var(--color-muted); font-size: 12px; }
.campaign-strip { background: #133c3b; border-bottom: 1px solid #285a56; font-size: 12px; }
.campaign-strip .shell { display: flex; gap: 10px 24px; flex-wrap: wrap; align-items: center; justify-content: center; padding-block: 12px; }
.campaign-strip strong { color: #b7fff0; }
.campaign-strip a { text-decoration: underline; text-underline-offset: 3px; }
.hero-copy h1 { font-size: clamp(2.6rem, 4.7vw, 4.7rem); line-height: 1.08; letter-spacing: -.045em; }
.home-hero { padding-block: 48px 64px; gap: 56px; }
.hero-canvas.has-product { background: #11171c; border: 1px solid var(--color-border); min-height: 480px; }
.hero-product { padding: 0; }
.hero-product > img { width: 100%; height: auto; max-height: none; object-fit: contain; }
.hero-product-caption { background: #11171ce8; color: var(--color-text); inset-inline: 0; bottom: 0; padding: 22px; }
.hero-product-caption small { display: block; color: var(--color-accent); margin-top: 8px; }
.hero-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; }
.hero-price { font-size: 13px; color: var(--color-muted); display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.hero-price strong { color: var(--color-accent); font-size: 19px; }
.hero-description { margin-bottom: 16px; }
@media (min-width: 1180px) { .home ul.products { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 20px; } }
.canvas-label { z-index: 1; color: var(--color-muted); }
.department-links { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding-bottom: 64px; }
.department-links > a { display: block; border: 1px solid var(--color-border); padding: 32px; background: var(--color-surface); position: relative; }
.department-links > a:hover { border-color: var(--color-accent); }
.department-links h2 { font-size: 26px; margin-block: 20px 10px; }
.department-links p { color: var(--color-muted); margin-bottom: 0; }
.department-links svg { position: absolute; right: 28px; top: 28px; }
.shopping-guide { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 32px; padding-block: 64px; }
.shopping-guide h2 { font-size: 22px; margin-block: 24px 16px; }
.shopping-guide p, .product-help { color: var(--color-muted); font-size: 13px; }
.product-help { padding-top: 18px; border-top: 1px solid var(--color-border); }
.product-help a { text-decoration: underline; text-underline-offset: 3px; }
.woocommerce div.product form.cart .variations select { min-height: 44px; }
.woocommerce div.product p.price, .woocommerce ul.products li.product .price { color: var(--color-accent); }
.woocommerce div.product div.images img, .woocommerce ul.products li.product a img { background: #11171c; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 3em; }
.woocommerce a.added_to_cart { display: inline-block; padding: 12px 0; }
.woocommerce .woocommerce-error, .woocommerce .woocommerce-info, .woocommerce .woocommerce-message { color: var(--color-text); background: var(--color-surface); }
.woocommerce .woocommerce-form__label-for-checkbox input { accent-color: var(--color-accent); }
.woocommerce-checkout #payment { background: var(--color-surface); }
.woocommerce form .form-row .select2-container { color: #202a32; }
.menu-close { display: none; }
@media (max-width: 760px) {
  .brand img { width: 115px; height: 48px; } .brand { gap: 7px; } .brand-sub { padding-left: 7px; }
  .header-row { padding-top: 10px; } .header-actions { margin-left: auto; }
  .campaign-strip .shell { gap: 4px 12px; font-size: 11px; } .campaign-strip .shell > span { display: none; }
  .home-hero { padding-block: 28px 40px; gap: 24px; }
  .hero-copy h1 { font-size: clamp(2.4rem, 10vw, 3.8rem); margin-bottom: 18px; }
  .hero-copy .eyebrow { margin-bottom: 16px; } .hero-signature { display: none; }
  .hero-canvas.has-product { min-height: 0; } .hero-product-caption { padding: 15px; font-size: 12px; }
  .hero-product-caption small { margin-top: 4px; } .hero-canvas .canvas-label { font-size: 8px; left: 15px; top: 16px; }
  .department-links, .shopping-guide { grid-template-columns: 1fr; gap: 18px; padding-block: 24px 40px; }
  .department-links > a { padding: 24px; } .shopping-guide article { border-bottom: 1px solid var(--color-border); padding-bottom: 22px; }
  .nav-enhanced .shop-nav.is-open { position: fixed; inset: 0; z-index: 1000; background: var(--color-bg); overflow-y: auto; padding: 24px 0; }
  .nav-enhanced .shop-nav.is-open .nav-inner { gap: 12px; }
  .nav-enhanced .shop-nav.is-open .menu-close:not([hidden]) { display: inline-flex; align-self: flex-end; gap: 12px; margin-bottom: 30px; }
  .nav-enhanced .studio-return { margin-left: 0; margin-top: 24px; }
  .menu-is-open { overflow: hidden; }
}
.digital-hub { padding-block: 48px 64px; }
.digital-intro { max-width: 820px; margin-bottom: 40px; }
.digital-intro h1 { margin-bottom: 24px; }
.digital-lead { color: var(--color-muted); font-size: clamp(1.1rem, 2vw, 1.4rem); }
.digital-departments { display: grid; gap: 20px; }
.digital-department { display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-surface); min-width: 0; }
.digital-department .eyebrow { color: var(--color-accent); margin-bottom: 32px; }
.digital-department h3 { font-size: 1.5rem; line-height: 1.3; }
.digital-department > p:not(.eyebrow) { color: var(--color-muted); font-size: .9rem; }
.digital-department .digital-spec { font-family: ui-monospace, monospace; font-size: .75rem; padding-block: 20px; border-block: 1px solid var(--color-border); margin-top: auto; }
.digital-department .digital-status { font-size: .8rem; }
.digital-department .text-link { justify-content: space-between; gap: 12px; }
.digital-guide { display: grid; gap: 24px; margin-top: 56px; padding-block: 40px; border-top: 1px solid var(--color-border); }
.digital-guide dl { margin: 0; }
.digital-guide dl > div { margin-bottom: 24px; }
.digital-guide dt { font-weight: 700; margin-bottom: 8px; }
.digital-guide dd { color: var(--color-muted); margin: 0; }
.digital-teaser { display: flex; flex-wrap: wrap; gap: 24px 48px; align-items: center; justify-content: space-between; padding: 32px 0 56px; border-top: 1px solid var(--color-border); }
.digital-teaser > div { max-width: 640px; }
.digital-teaser .eyebrow { margin-bottom: 16px; }
.digital-teaser p:last-child { color: var(--color-muted); margin-bottom: 0; }
@media (min-width: 900px) {
  .digital-hub { padding-block: 72px 80px; }
  .digital-intro { margin-bottom: 56px; }
  .digital-departments { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .digital-guide { grid-template-columns: 1fr 1.3fr; gap: 64px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
