/* Shared public theme. Loaded after page styles; admin does not load this file. */
:root {
 --surface-base: var(--color-night); --surface-raised: #101e2a; --surface-panel: var(--color-panel);
 --text-primary: var(--color-ivory); --text-secondary: var(--color-silver); --accent: var(--color-gold);
 --border-color: #304252; --border-soft: 1px solid rgb(116 145 166 / .22);
 --panel-radius: 9px; --shell-radius: 6px; --panel-shadow: 0 8px 25px #0002;
 --space-1: .5rem; --space-2: 1rem; --space-3: 1.5rem; --space-4: 2rem;
 --page-gutter: clamp(16px,3.3vw,72px); --section-space: clamp(40px,5vw,88px);
 --editorial-font: Georgia,'Times New Roman',serif;
 --font-body: 1.0625rem;
 --font-small: .875rem;
 --font-label: .8125rem;
 --font-control: 1rem;
 --font-card: .9375rem;
 --font-price: 1rem;
 --font-intro: clamp(1rem,1.4vw,1.1875rem);
}
body.public-page { padding: 6px .65vw; background: #070e15; color: var(--text-primary); color-scheme: dark; }
.public-page .public-shell { width: 100%; max-width: none; margin: 0; background: linear-gradient(140deg,#07131c,#0b1823); border: 1px solid #53677924; border-radius: var(--shell-radius); box-shadow: none; overflow: clip; }
.public-page .navbar { min-height: 76px; padding: 0 var(--page-gutter); display: grid; grid-template-columns: 1fr auto 1fr; gap: var(--space-3); background: #07121b; border-bottom: var(--border-soft); }
.public-page .navbar .logo { color: var(--text-primary); font: 600 clamp(22px,2.1vw,32px)/1 var(--editorial-font); letter-spacing: .22em; white-space: nowrap; }
.public-page .nav-links { gap: clamp(18px,2.3vw,36px); }
.public-page .nav-links a { position: relative; color: var(--text-secondary); padding: 25px 0; font-size: 13px; letter-spacing: .03em; transition: color var(--transition-quiet); }
.public-page .nav-links a:hover { color: var(--text-primary); }
.public-page .nav-links a[aria-current="page"] { color: var(--color-gold-hover); }
.public-page .nav-links a[aria-current="page"]::after { content: ''; position: absolute; bottom: 15px; left: 0; width: 23px; height: 1px; background: var(--accent); }
.public-page .header-tools { display: flex; justify-content: flex-end; gap: 8px; }
.public-page .header-tools a { display: grid; place-items: center; width: 44px; height: 44px; }
.public-page .header-tools svg { width: 21px; height: 21px; stroke: currentColor; fill: none; stroke-width: 1.4; }
.public-page .header-tools a:first-child { color: var(--accent); }
.public-page :is(.menu-toggle,.mobile-menu-close) { min-width: 44px; min-height: 44px; color: var(--text-primary); }
.public-page .menu-toggle span { background: var(--text-primary); }
.public-page .mobile-menu { background: var(--surface-base); color: var(--text-primary); }
.public-page :is(.mobile-menu-header,.mobile-menu-footer) { border-color: var(--border-color); }
.public-page .mobile-menu-links a[aria-current="page"] { border-left: 2px solid var(--accent); padding-left: 16px; }
.public-page .mobile-menu-links a:hover { color: var(--color-gold-hover); }
.public-footer { padding: 24px var(--page-gutter); display: flex; flex-wrap: wrap; align-items: center; gap: 18px 24px; border-top: var(--border-soft); background: #07121b; }
.footer-wordmark { font: 21px var(--editorial-font); letter-spacing: .15em; }
.public-footer > p { border-left: 1px solid var(--accent); padding-left: 22px; }
.public-footer :is(p,small,nav) { font-size: 12px; color: var(--text-secondary); }
.public-footer nav { margin-left: auto; display: flex; flex-wrap: wrap; gap: 10px 20px; }
.public-footer nav a { padding-block: 8px; }
.public-footer a:hover { color: var(--color-gold-hover); }
.public-page :is(.catalog,.product-page,.about,.contact) { padding-inline: var(--page-gutter); padding-bottom: var(--section-space); }
.public-page :is(.catalog-header,.about-hero,.contact-header) { min-height: 0; max-width: 1100px; padding: var(--section-space) 0 40px; }
.public-page :is(.catalog-header,.about-hero,.contact-header) h1 { font: 400 clamp(36px,5.5vw,82px)/1.06 var(--editorial-font); letter-spacing: -.035em; margin-bottom: 20px; overflow-wrap: anywhere; }
.public-page :is(.catalog-label,.about-label,.contact-label,.related-header > p) { color: var(--accent); font-size: 11px; letter-spacing: .22em; margin-bottom: 16px; }
.public-page :is(.catalog-description,.about-intro,.contact-header > p:last-child) { color: var(--text-secondary); font-size: clamp(15px,1.3vw,18px); line-height: 1.75; max-width: 65ch; }
.public-page .button,.public-page .product-action { background: linear-gradient(110deg,#ebcd96,#c4a36b); color: #09121b; border: 1px solid var(--accent); border-radius: var(--radius-small); min-height: 46px; transition: background-color var(--transition-quiet); }
.public-page .button:hover,.public-page .product-action:not(:disabled):hover { background: var(--color-gold-hover); transform: none; }
/* Shared cards preserve original image colors and existing hover behavior. */
.public-page .product-card { padding: 8px; border: var(--border-soft); border-radius: var(--panel-radius); background: linear-gradient(135deg,#172631,#0d1a24); box-shadow: var(--panel-shadow); transition: border-color var(--transition-quiet); }
.public-page .product-card:hover { border-color: #9b865e; }
.public-page .product-image { border-radius: 5px; margin-bottom: 12px; background: var(--surface-base); }
.public-page .product-image img { background: #fff; }
.public-page .product-brand { color: var(--text-primary); font-size: 13px; font-weight: 600; text-transform: none; letter-spacing: .025em; }
.public-page .product-info h3 { font-size: 13px; color: var(--text-secondary); line-height: 1.5; font-weight: 400; }
.public-page .product-price { color: var(--text-primary); font-size: 14px; font-weight: 600; }
.public-page .stock-badge { background: var(--surface-panel); color: var(--color-gold-hover); border: 1px solid #b3936066; border-radius: 3px; }
.public-page .catalog-controls { border: var(--border-soft); border-radius: var(--panel-radius); padding: 18px; background: var(--surface-panel); margin-bottom: 20px; box-shadow: var(--panel-shadow); }
.public-page :is(.search-input,.catalog-tools select,.sort-menu summary) { background: var(--surface-base); color: var(--text-primary); border: 1px solid var(--border-color); border-radius: 5px; min-width: 0; min-height: 46px; }
.public-page .search-input::placeholder { color: var(--text-secondary); }
.public-page .sort-options { background: var(--surface-raised); border: var(--border-soft); border-radius: var(--panel-radius); box-shadow: var(--shadow-soft); }
.public-page .sort-options > label:first-child { color: var(--text-secondary); }
.public-page .sort-menu[open] summary,.public-page .filter-button.active { border-color: var(--accent); background: #c4a36b16; color: var(--text-primary); }
.public-page .stock-filter-label input { accent-color: var(--accent); }
.public-page .catalog-count { color: var(--text-secondary); font-size: 13px; padding: 12px 0; border-bottom: var(--border-soft); }
.public-page :is(.no-products,.product-error) { background: var(--surface-panel); border: var(--border-soft); border-radius: var(--panel-radius); padding: clamp(24px,5vw,64px); color: var(--text-secondary); }
.public-page .product-error { min-height: 280px; }
.public-page .product-error h1 { color: var(--text-primary); font: 36px/1.2 var(--editorial-font); }
/* Product controls retain their layout, selectors, and states. */
.public-page .back-link { color: var(--text-secondary); margin-bottom: 24px; }
.public-page .product-data,.public-page .order-panel { padding: clamp(16px,2vw,28px); background: var(--surface-panel); border: var(--border-soft); border-radius: var(--panel-radius); }
.public-page .product-gallery { padding: 12px; background: var(--surface-raised); border: var(--border-soft); border-radius: var(--panel-radius); }
.public-page .product-main-image { border-radius: 6px; }
.public-page .thumbnail-button { border-radius: 4px; }
.public-page .thumbnail-button.active { border: 2px solid var(--accent); }
.public-page .product-data h1 { font: 400 clamp(28px,2.7vw,48px)/1.14 var(--editorial-font); letter-spacing: -.025em; }
.public-page .product-price-detail { color: var(--text-primary); font-size: 22px; margin-bottom: 25px; }
.public-page :is(.product-brand-detail,.product-option-label,.stock-status,.product-description p,.outfit-hint,.outfit-info legend) { color: var(--text-secondary); }
.public-page :is(.product-option,.product-description,.related-section) { border-color: var(--border-color); }
.public-page .size-button { background: var(--surface-base); border-color: var(--border-color); border-radius: 5px; min-height: 44px; color: var(--text-primary); }
.public-page .size-button:not(:disabled):hover { border-color: var(--accent); }
.public-page .size-button.selected { background: #c4a36b20; border-color: var(--accent); color: var(--text-primary); }
.public-page .size-button:disabled { opacity: .5; }
.public-page .quantity-control { background: var(--surface-base); border-color: var(--border-color); }
.public-page .quantity-control button { background: var(--color-secondary); width: 36px; height: 40px; }
.public-page .outfit { padding: 16px; background: #091722; border: var(--border-soft); border-radius: var(--panel-radius); }
.public-page .outfit-card { background: var(--surface-raised); border: var(--border-soft); border-radius: 6px; }
.public-page .outfit-card:has(input:checked) { border-color: #c4a36b99; background: #1b2730; }
.public-page .outfit-info input { accent-color: var(--accent); }
.public-page .order-panel h2 { font: 25px var(--editorial-font); }
.public-page .order-panel #order-summary { color: var(--text-primary); font-size: 16px; line-height: 1.85; padding-block: 16px; border-top: var(--border-soft); }
.public-page .related-section { margin-top: var(--section-space); padding-top: 32px; }
.public-page .related-header h2 { font: 400 clamp(26px,3vw,42px)/1.2 var(--editorial-font); }
.public-page .image-viewer { background: rgb(8 18 29 / .62); border-color: var(--border-color); border-radius: var(--panel-radius); }
.public-page :is(.viewer-close,.viewer-arrow) { background: #10202ded; border-color: var(--border-color); }
/* Existing brand and contact copy, presented as editorial panels. */
.public-page .about-content { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; border: 0; }
.public-page .about-block { grid-template-columns: 32px minmax(0,1fr); gap: 20px; padding: clamp(24px,3vw,42px); border: var(--border-soft); border-radius: var(--panel-radius); background: var(--surface-panel); }
.public-page .about-block:last-child { grid-column: 1/-1; }
.public-page .about-number { color: var(--accent); padding-top: 8px; }
.public-page .about-block h2 { font: 32px/1.2 var(--editorial-font); }
.public-page .about-block div p { color: var(--text-secondary); max-width: 70ch; }
.public-page .about-cta { min-height: 0; padding-top: var(--section-space); }
.public-page .about-cta p { font: 400 clamp(28px,4vw,54px)/1.15 var(--editorial-font); }
.public-page .contact-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; border: 0; }
.public-page .contact-card { min-width: 0; padding: clamp(24px,3vw,42px); border: var(--border-soft); border-radius: var(--panel-radius); background: var(--surface-panel); gap: 18px; transition: border-color var(--transition-quiet); }
.public-page .contact-card:not(.disabled):hover { padding-left: clamp(24px,3vw,42px); border-color: var(--accent); }
.public-page .contact-card h2 { font: 400 clamp(24px,3vw,38px)/1.2 var(--editorial-font); overflow-wrap: anywhere; }
.public-page .contact-card span,.public-page .contact-type { color: var(--accent); }
.public-page .contact-card.disabled { opacity: 1; color: var(--text-secondary); background: #0c1720; border-style: dashed; }
.public-page .contact-info { padding-top: 30px; gap: 20px; }
.public-page .contact-info > div { padding: 24px; border-top: var(--border-soft); }
.public-page .contact-info div > p:last-child { color: var(--text-secondary); }
.public-page :focus-visible { outline: 2px solid var(--color-gold-hover); outline-offset: 4px; }
@media (min-width:1800px) { .public-page .catalog > .product-grid { grid-template-columns: repeat(5,minmax(0,1fr)); } }
@media (max-width:1100px) {
 .public-page .navbar { grid-template-columns: auto 1fr auto; gap: 16px; }
 .public-page .nav-links { justify-content: center; gap: 18px; }
 .public-page .product-detail { gap: 16px; }
}
@media (max-width:850px) {
 .public-page .product-thumbnails { overflow-x: auto; max-width: 100%; }
 .public-page .product-thumbnails .thumbnail-button { flex-shrink: 0; }
 .public-page .about-content,.public-page .contact-options { grid-template-columns: 1fr; }
}
@media (max-width:650px) {
 body.public-page { padding: 0; }
 .public-page .public-shell { border: 0; border-radius: 0; }
 .public-page .navbar { min-height: 64px; grid-template-columns: minmax(0,1fr) auto auto; gap: 4px; padding-inline: 12px; }
 .public-page .navbar .logo { font-size: 20px; letter-spacing: .13em; }
 .public-page .nav-links { display: none; }
 .public-page .header-tools { gap: 0; }
 .public-page .header-tools a { width: 36px; }
 .public-page .catalog-controls { padding: 12px; }
 .public-page .product-grid { gap: 10px; }
 .public-page .product-card { padding: 6px; }
 .public-page .product-brand,.public-page .product-info h3 { font-size: 12px; }
 .public-page .product-price { font-size: 13px; }
 .public-page .product-data,.public-page .order-panel { padding: 16px; }
 .public-page .outfit { padding: 10px; }
 .public-page .outfit-card { flex-basis: 100%; }
 .public-page .about-block { grid-template-columns: 1fr; gap: 8px; }
 .public-footer { gap: 12px; padding: 24px 16px; }
 .public-footer > p { border-left: 0; padding: 0; flex-basis: 100%; }
 .public-footer nav { margin-left: 0; flex-basis: 100%; }
 .public-footer small { flex-basis: 100%; }
}

/* Public readability scale: preserve large editorial headings and card columns. */
body.public-page { font-size: var(--font-body); }
.public-page .nav-links a { font-size: var(--font-card); }
.public-page :is(.public-footer p,.public-footer small,.public-footer nav,.back-link,.catalog-count,.stock-status,.outfit-hint,.outfit-info legend,.viewer-toolbar,.viewer-counter) { font-size: var(--font-small); line-height: 1.6; }
.public-page :is(.catalog-label,.about-label,.contact-label,.contact-type,.related-header>p,.product-brand-detail,.product-option-label,.stock-badge) { font-size: var(--font-label); }
.public-page :is(.catalog-description,.about-intro,.contact-header>p:last-child) { font-size: var(--font-intro); }
.public-page :is(.button,.product-action,.size-button,.search-input,.catalog-tools select,.sort-menu summary,.sort-options select,.filter-button,.stock-filter-label) { font-size: var(--font-control); }
.public-page .sort-options>label:first-child { font-size: var(--font-small); }
.public-page :is(.product-brand,.product-info h3) { font-size: var(--font-card); overflow-wrap: anywhere; }
.public-page .product-price { font-size: var(--font-price); }
.public-page .product-price-detail { font-size: 1.5rem; }
.public-page .product-data h1 { font-size: clamp(30px,2.8vw,50px); overflow-wrap: anywhere; }
.public-page .catalog-header h1 { font-size: clamp(38px,5.5vw,84px); }
.public-page :is(.product-option-value,.product-description p,.about-block div p,.contact-info div>p:last-child) { font-size: var(--font-body); line-height: 1.75; max-width: 65ch; }
.public-page :is(.outfit-info label,.outfit-info>p,.order-error) { font-size: var(--font-card); }
.public-page .outfit h2 { font-size: 1.375rem; overflow-wrap: anywhere; }
.public-page .order-panel #order-summary { font-size: var(--font-body); overflow-wrap: anywhere; }
.public-page .quantity-control .quantity-value { font-size: var(--font-small); }
.public-page .quantity-control input { font-size: var(--font-control); }
.public-page .about-block h2 { font-size: clamp(30px,3vw,34px); }
.public-page .contact-card h2 { font-size: clamp(25px,3vw,40px); }
.public-page .contact-card>div { min-width: 0; }
.public-page .order-confirmation { font-size: var(--font-body); }
.public-page .order-confirmation h3 { font-size: 1.0625rem; }
.public-page .confirmation-totals strong { font-size: 1.25rem; }
.public-page .hero-content>p:not(.hero-label) { font-size: var(--font-control); }
.public-page :is(.hero-label,.eyebrow,.inspiration-copy .eyebrow,.outline-cta,.editorial-tiles a span,.release-label,.release-cta) { font-size: var(--font-label); }
.public-page .hero .button { font-size: var(--font-label); white-space: normal; }
.public-page .hero-signature p { font-size: .75rem; }
.public-page .hero-signature p:last-child { font-size: var(--font-label); }
.public-page .home-benefits h2 { font-size: var(--font-small); }
.public-page .home-benefits p { font-size: var(--font-label); }
.public-page :is(.home-benefits li>div,.inspiration-copy) { min-width: 0; }
.public-page .section-header { flex-wrap: wrap; }
.public-page .section-header h2 { font-size: 1.375rem; }
.public-page :is(.section-header>a,.featured-catalog>[role],.inspiration-copy>p:not(.eyebrow),.release-brand) { font-size: var(--font-small); }
.public-page .release-name { font-size: clamp(1.3rem,2vw,1.9rem); }
.public-page .inspiration-copy>p:not(.eyebrow) { max-width: 55ch; }
.public-page :is(.editorial-tiles a span,.confirmation-items h3) { overflow-wrap: anywhere; }
@media(max-width:650px) {
 .public-page :is(.product-brand,.product-info h3) { font-size: var(--font-small); }
 .public-page .product-price { font-size: var(--font-card); }
 .public-page .hero { padding-bottom: 100px; }
 .public-page .hero-signature { max-width: 88%; flex-wrap: wrap; gap: 10px; }
 .public-page .catalog-tools { min-width: 0; }
}

/* Responsive refinement shared by public pages only. */
.public-page{--layout-gap:clamp(12px,1.5vw,24px);--touch-size:44px;--font-body:clamp(1.0625rem,1vw,1.1875rem)}
.public-page :is(.catalog-tools,.product-info,.product-data,.order-panel,.about-block>div,.contact-card>div){min-width:0}
.public-page :is(.product-info,.outfit-info,.order-panel,.about-block,.contact-info){overflow-wrap:anywhere}
.public-page .product-card>a{display:flex;flex-direction:column;height:100%}
.public-page .product-info{display:flex;flex-direction:column;flex:1}
.public-page .product-info h3{margin-bottom:10px}
.public-page .product-price{margin-top:auto;padding-top:4px}
.public-page .product-image{flex-shrink:0}
.public-page :is(.catalog>.product-grid,.related-products,.related-section>.product-grid){grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--layout-gap)}
.public-page .catalog>.product-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}
.public-page :is(.button,.product-action,.confirmation-actions button){white-space:normal;overflow-wrap:anywhere;line-height:1.4;min-height:var(--touch-size)}
.public-page .size-button{min-width:44px;min-height:44px;max-width:100%;overflow-wrap:anywhere}
.public-page .quantity-control button{width:44px;height:44px;flex-shrink:0}
.public-page .quantity-control input{min-height:44px;width:36px}
.public-page .outfit-info .size-button{min-width:44px;min-height:44px}
.public-page .public-footer nav a{display:inline-flex;align-items:center;min-height:44px}
.public-page .public-footer :is(p,nav,small){min-width:0;overflow-wrap:anywhere}
.public-page .contact-card h2{font-size:clamp(21px,2.5vw,38px);word-break:normal;overflow-wrap:normal}
.public-page .contact-card{flex-wrap:wrap}
.public-page .contact-card>span{flex-shrink:0}
.public-page .low-stock-note{line-height:1.6}
@media(min-width:651px) and (max-width:950px){
 .public-page .navbar{grid-template-columns:1fr auto;gap:8px 16px;padding-top:14px}
 .public-page .navbar .nav-links{grid-column:1/-1;grid-row:2;justify-content:center;flex-wrap:wrap;gap:12px 24px}
 .public-page .nav-links a{padding:14px 0}
 .public-page .nav-links a[aria-current="page"]::after{bottom:6px}
 .public-page .header-tools{grid-column:2;grid-row:1}
}
@media(max-width:850px){
 .public-page .product-detail{grid-template-columns:minmax(0,1fr)}
 .public-page .product-gallery{position:static;display:flex;flex-direction:column;align-items:center}
 .public-page .product-main-image{height:min(48svh,440px);max-width:440px}
 .public-page .product-thumbnails{width:100%;display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;padding:4px}
 .public-page .order-panel{grid-column:1;position:static}
 .public-page .about-block{padding:clamp(20px,4vw,32px)}
}
@media(max-width:650px){
 .public-page .header-tools a{width:44px}
 .public-page .mobile-menu{height:100dvh;overflow-y:auto;overscroll-behavior:contain}
 .public-page .mobile-menu-links a{font-size:clamp(24px,7vw,36px);min-height:44px}
 .public-page .catalog>.product-grid,.public-page .related-section>.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .public-page .product-main-image{height:min(42svh,350px)}
 .public-page .outfit-card,.public-page .outfit-card:has(input:checked){display:flex;flex-direction:column}
 .public-page .outfit-card:has(input:checked) .outfit-info{display:block}
 .public-page .outfit-card>img{align-self:flex-start}
 .public-page .outfit-info{width:100%}
 .public-page .outfit-list{scroll-padding-inline:2px}
 .public-page .contact-card{padding:20px;gap:12px}
}
@media(max-width:359px){
 .public-page .catalog>.product-grid,.public-page .related-section>.product-grid{grid-template-columns:minmax(0,1fr)}
 .public-page .catalog-tools{grid-template-columns:minmax(0,1fr)}
 .public-page .catalog-tools>*{grid-column:1;grid-row:auto}
 .public-page .contact-card{padding:16px}
}
@media(min-width:1800px){
 .public-page .catalog>.product-grid,.public-page .related-section>.product-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
 .public-page .product-detail{max-width:2000px;margin-inline:auto;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(280px,.65fr)}
 .public-page .product-main-image{max-width:520px;height:640px}
 .public-page .nav-links a{font-size:1rem}
}

/* Public motion tokens and restrained visual feedback. */
.public-page{--transition-quiet:130ms ease;--motion-fast:130ms;--motion-normal:190ms;--motion-slide:220ms;--motion-entry:260ms;--motion-ease:cubic-bezier(.2,.7,.2,1);--motion-distance:6px}
@media(prefers-reduced-motion:no-preference){

 .public-page :is(button,.button,.outline-cta,.brand-explorer a,.contact-card,.editorial-tiles a,.product-card,.size-button,.thumbnail-button){transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}
 .public-page :is(button:not(:disabled),.button,.outline-cta):active{transform:scale(.985)}
 .public-page :is(button:disabled,.quantity-inactive button){transform:none}
 .public-page :is(.nav-links a,.nav-links a::after){transition:color var(--motion-fast) var(--motion-ease),opacity var(--motion-fast) var(--motion-ease)}
 .public-page .mobile-menu{transform:translateY(-4px);transition:opacity var(--motion-normal) var(--motion-ease),transform var(--motion-normal) var(--motion-ease),visibility var(--motion-normal)}
 .public-page .mobile-menu.open{transform:translateY(0)}
 .public-page .outfit-card{transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),opacity var(--motion-fast) var(--motion-ease)}
 .public-page .product-image img{transition:opacity var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}
 .public-page .mobile-menu .mobile-menu-links a{opacity:1;transform:none;transition:color var(--motion-fast) var(--motion-ease);transition-delay:0s}
 .public-page :is(.no-products,.product-error){animation:public-page-enter var(--motion-fast) var(--motion-ease)}
 .public-page .release-slide{animation:public-page-enter var(--motion-slide) var(--motion-ease)}
 .public-page .release-dot::before{transition:background-color var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}
 .public-page :is(.contact-card>span,.brand-explorer a span){transition:transform var(--motion-fast) var(--motion-ease)}
 .public-page :is(.product-card:focus-within,.contact-card:focus-visible,.editorial-tiles a:focus-visible){border-color:var(--accent)}
 .public-page .low-stock-note{transition:opacity var(--motion-fast) var(--motion-ease)}
 .public-page .low-stock-note:empty{opacity:0}
 .public-page .order-confirmation{opacity:0;transform:scale(.99);transition:opacity 160ms var(--motion-ease),transform 160ms var(--motion-ease),display 160ms allow-discrete,overlay 160ms allow-discrete}
 .public-page .order-confirmation[open]{opacity:1;transform:scale(1);transition-duration:190ms}
 .public-page .order-confirmation::backdrop{opacity:0;transition:opacity 160ms var(--motion-ease),display 160ms allow-discrete,overlay 160ms allow-discrete}
 .public-page .order-confirmation[open]::backdrop{opacity:1}
 @starting-style{.public-page .order-confirmation[open]{opacity:0;transform:scale(.99)}.public-page .order-confirmation[open]::backdrop{opacity:0}}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .public-page :is(.product-card,.contact-card,.editorial-tiles a):hover{transform:translateY(-2px)}
 .public-page .product-card:hover .product-image img{transform:scale(1.02)}
 .public-page :is(.contact-card:hover>span,.brand-explorer a:hover span){transform:translateX(2px)}
}
@keyframes public-page-enter{from{opacity:.4}to{opacity:1}}
@media(max-width:650px){.public-page{--motion-entry:220ms;--motion-distance:4px}}
@media(prefers-reduced-motion:reduce){
 .public-page :is(.product-card,.contact-card,.editorial-tiles a,button,.button,.outline-cta,.mobile-menu,.order-confirmation,.release-dot::before){transform:none}
 .public-page .low-stock-note{translate:none}
 .public-page .order-confirmation[open],.public-page .order-confirmation[open]::backdrop{opacity:1}
}

/* Shared card status: one compact label, independent of image hover. */
.public-page .product-image{position:relative}
.public-page .product-badge{position:absolute;top:8px;left:8px;z-index:2;max-width:calc(100% - 16px);padding:5px 7px;border:1px solid #d6bc8799;border-radius:3px;background:#e6cea0;color:#17212a;font-size:clamp(.625rem,1.1vw,.75rem);font-weight:700;letter-spacing:.04em;line-height:1.3;pointer-events:none;overflow-wrap:anywhere}
.public-page :is(.product-badge--new,.product-badge--low-stock,.product-badge--sold-out){background:transparent;color:#e6cea0;border-color:#d6bc87;text-shadow:0 1px 2px #071018,0 0 3px #071018;box-shadow:0 0 2px #07101880,inset 0 0 2px #07101880}
.public-page .product-badge--sold-out{color:#d6dce1;border-color:#c5cdd4}
