/* Approved demo parity. Gold is Phase 02's original accent, used on dark-text controls. */
:root { --rt-color-catalog-gold: #B08D57; }
.rt-catalog { padding-inline:32px; padding-bottom:0; }
.rt-featured-products .rt-container { padding-inline:32px; }
.rt-featured-products .rt-catalog-grid { margin-top:32px; }
.rt-featured-products .rt-catalog-card__photo { aspect-ratio:1/1; }
.rt-catalog p { margin:0; }
.rt-catalog-intro { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:40px 0 32px; }
.rt-catalog-eyebrow { color:var(--rt-color-primary); font-size:12px; }
.rt-catalog-intro .rt-catalog-eyebrow { display:flex; align-items:center; gap:12px; }
.rt-catalog-intro .rt-catalog-eyebrow:before { content:""; width:32px; height:1px; background:var(--rt-color-catalog-gold); }
.rt-catalog-intro h1 { font-size:48px; line-height:1.5; margin:8px 0 16px; text-wrap:balance; }
.rt-catalog-intro__note { border-inline-start:1px solid var(--rt-color-catalog-gold); padding-inline-start:24px; flex-shrink:0; }
.rt-catalog-intro__note span { font-size:14px; color:var(--rt-color-text-secondary); }
.rt-catalog-quick { display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:16px 0; border-block:1px solid var(--rt-color-border); }
.rt-catalog-quick>span { color:var(--rt-color-text-secondary); font-size:14px; margin-inline-end:16px; }
.rt-catalog-quick>a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:8px 24px; border:1px solid transparent; border-radius:8px; }
.rt-catalog-quick>a[aria-current] { background:var(--rt-color-catalog-gold); color:var(--rt-color-primary); }
.rt-catalog-quick>a:hover { border-color:var(--rt-color-catalog-gold); }
.rt-catalog-filterbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:24px 0; border-bottom:1px solid var(--rt-color-border); }
.rt-catalog-filter { position:relative; }
.rt-catalog-filter>summary { display:flex; align-items:center; gap:16px; min-height:44px; padding:8px 16px; font-size:14px; border:1px solid var(--rt-color-border); border-radius:12px; background:var(--rt-color-surface); cursor:pointer; list-style:none; }
.rt-catalog-filter>summary::-webkit-details-marker { display:none; }
.rt-catalog-filter[open]>summary { border-color:var(--rt-color-catalog-gold); }
.rt-catalog-filter__selected { background:var(--rt-color-catalog-gold); color:var(--rt-color-primary); border-radius:4px; padding-inline:6px; }
.rt-catalog-filter__panel { position:absolute; inset-inline-start:0; top:calc(100% + 8px); z-index:15; background:var(--rt-color-surface); border:1px solid var(--rt-color-border); border-radius:12px; padding:16px; width:280px; max-width:calc(100vw - 32px); max-height:320px; overflow:auto; box-shadow:var(--rt-shadow-md); }
.rt-catalog-filter__panel label { display:flex; align-items:center; gap:12px; min-height:44px; cursor:pointer; font-size:14px; }
.rt-catalog-filter__panel input { accent-color:var(--rt-color-primary); width:18px; height:18px; }
.rt-catalog-order { margin-inline-start:auto; }
.rt-catalog-order select { font:inherit; font-size:14px; min-height:44px; background:var(--rt-color-surface); border:1px solid var(--rt-color-border); border-radius:12px; padding:8px 16px; max-width:100%; color:var(--rt-color-text); }
.rt-catalog-all { background:var(--rt-color-primary); color:var(--rt-color-white); padding:8px 20px; min-height:44px; }
.rt-catalog-filterbar.is-expanded { align-items:start; }
.rt-catalog-filterbar.is-expanded .rt-catalog-filter { flex:1 1 160px; }
.rt-catalog-filterbar.is-expanded .rt-catalog-filter__panel { position:static; box-shadow:none; width:100%; margin-top:8px; }
.rt-catalog-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-top:24px; margin-bottom:16px; }
.rt-catalog-toolbar>p { font-size:14px; }
.rt-catalog-search { width:320px; max-width:100%; position:relative; }
.rt-catalog-search input[type=search] { width:100%; font-size:16px; min-height:48px; border:1px solid var(--rt-color-border); border-radius:8px; padding:8px 12px 8px 48px; color:var(--rt-color-text); background:var(--rt-color-surface); }
.rt-catalog-search button { position:absolute; inset-inline-end:0; top:0; width:44px; min-height:48px; background:none; border:0; display:grid; place-items:center; cursor:pointer; }
.rt-catalog-price-note { font-size:12px; padding-bottom:24px; }
.rt-catalog-price-note a { color:var(--rt-color-text); text-decoration:underline; text-underline-offset:5px; margin-inline-start:8px; }
.rt-catalog-active { display:flex; flex-wrap:wrap; gap:8px; }
.rt-catalog-active a { display:flex; align-items:center; min-height:44px; font-size:12px; border:1px solid var(--rt-color-border); border-radius:8px; padding:8px 12px; margin-bottom:16px; }
.rt-catalog-active .rt-catalog-reset { border-color:transparent; text-decoration:underline; }
.rt-catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 24px; scroll-margin-top:112px; }
.rt-catalog-card { min-width:0; background:var(--rt-color-surface); border:1px solid var(--rt-color-border); border-radius:24px; overflow:hidden; display:flex; flex-direction:column; }
.rt-catalog-card__photo { display:block; position:relative; aspect-ratio:1/1; overflow:hidden; }
.rt-catalog-card__photo img { width:100%; height:100%; object-fit:cover; transition:transform .2s; }
.rt-catalog-card__photo:hover img { transform:scale(1.025); }
.rt-catalog-card__stock { position:absolute; inset-inline-start:16px; top:16px; background:var(--rt-color-background); color:var(--rt-color-text); padding:4px 12px; border-radius:8px; font-size:12px; }
.rt-catalog-card__body { padding:16px; display:flex; flex-direction:column; flex:1; }
.rt-catalog-card__identity { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:12px; min-height:24px; color:var(--rt-color-text-secondary); }
.rt-catalog-card h2 { font-size:18px; line-height:1.8; min-height:65px; margin:8px 0 16px; }
.rt-catalog-card__specs { display:flex; flex-wrap:wrap; gap:4px 12px; align-items:center; min-height:32px; font-size:12px; color:var(--rt-color-text-secondary); }
.rt-catalog-card__specs span+span { border-inline-start:1px solid var(--rt-color-border); padding-inline-start:12px; }
.rt-catalog-card__uses { display:flex; flex-wrap:wrap; align-content:flex-start; gap:8px; padding-top:16px; min-height:88px; }
.rt-catalog-card__uses span { background:var(--rt-color-background); border:1px solid var(--rt-color-border); border-radius:8px; padding:4px 8px; font-size:12px; }
.rt-catalog-card__uses .rt-catalog-card__more { background:none; border-color:transparent; color:var(--rt-color-text-secondary); padding-inline:0; }
.rt-catalog-card__actions { display:flex; flex-direction:column; gap:12px; border-top:1px solid var(--rt-color-border); padding-top:16px; margin-top:auto; }
.rt-catalog-card__login,.rt-catalog-card__price { display:flex; align-items:center; justify-content:center; min-height:40px; font-size:12px; padding:4px 8px; border-radius:8px; }
.rt-catalog-card__login:hover { background:var(--rt-color-background); text-decoration:underline; }
.rt-catalog-card .rt-catalog-card__button { background:var(--rt-color-primary); color:var(--rt-color-white); min-height:48px; padding:8px 16px; display:flex; justify-content:space-between; font-size:14px; }
.rt-catalog-card .rt-catalog-card__button:hover,.rt-catalog-cta>.rt-button:hover { background:var(--rt-color-catalog-gold); color:var(--rt-color-primary); }
.rt-catalog-cta { margin-block:64px; padding:48px 0; border-top:1px solid var(--rt-color-catalog-gold); border-bottom:1px solid var(--rt-color-border); display:flex; align-items:center; justify-content:space-between; gap:32px; }
.rt-catalog-cta h2 { font-size:32px; margin:8px 0; line-height:1.5; }
.rt-catalog-cta p { font-size:14px; }
.rt-catalog-empty { padding:64px 24px; text-align:center; border:1px solid var(--rt-color-border); border-radius:12px; }
.rt-catalog-empty h2 { font-size:24px; }.rt-catalog-empty p { margin-bottom:24px; }
.rt-catalog :focus-visible { outline:2px solid var(--rt-color-primary); outline-offset:4px; }
/* Match the approved shared header; keep the existing accessible mobile drawer. */
.rt-header { background:var(--rt-color-background); backdrop-filter:none; }
.rt-header__inner { flex-wrap:nowrap; min-height:96px; gap:24px; padding:16px 32px; }
.rt-header__logo { display:flex; flex-direction:column; align-items:center; line-height:1; }
.rt-header__logo img { display:block; }
.rt-header__logo img { max-height:48px; }
.rt-header__logo .rt-brand-name { font-size:12px; }
.rt-nav { flex:1; }
.rt-nav__list { gap:8px; flex-wrap:nowrap; justify-content:flex-start; }
.rt-nav__list>li>a { padding:8px; font-size:14px; white-space:nowrap; border-radius:8px; }
.rt-header a,.rt-header a:hover,.rt-mobile-menu a,.rt-mobile-menu a:hover { text-decoration:none; }
.rt-nav__list a[aria-current=page] { color:var(--rt-color-text); }
.rt-nav__list a[aria-current=page]:before { content:""; width:6px; height:6px; border-radius:50%; background:var(--rt-color-catalog-gold); margin-inline-end:8px; }
.rt-header__phone { display:none!important; }
.rt-header__actions { gap:16px; }
.rt-header__account { border:1px solid var(--rt-color-catalog-gold); padding:8px 16px; min-height:48px; }
.post-type-archive-product .rt-header-search,.tax-fabric_family .rt-header-search { display:none; }
.rt-submenu-toggle { width:28px; }
.rt-nav__list .sub-menu { border-top:2px solid var(--rt-color-catalog-gold); min-width:280px; border-radius:0 0 20px 20px; box-shadow:none; }
.rt-nav__list .rt-submenu-enhanced.is-open>.sub-menu { display:grid; grid-template-columns:1fr 1fr; width:480px; gap:8px 24px; padding:24px; }
.rt-nav__list .sub-menu .rt-menu-browse { grid-column:1; }
.rt-nav__list .sub-menu .rt-menu-use { grid-column:2; }
.rt-nav__list .sub-menu .rt-menu-use-first { grid-row:1; }
.rt-nav__list .sub-menu .rt-menu-use-second { grid-row:2; }
.rt-nav__list .sub-menu .rt-menu-use-third { grid-row:3; }
.rt-mobile-menu__header { position:relative; justify-content:center; padding-bottom:16px; }
.rt-mobile-menu__brand { display:flex; flex-direction:column; align-items:center; gap:4px; font-size:12px; }
.rt-mobile-menu__brand img { width:40px; height:40px; object-fit:contain; }
.rt-mobile-menu__close { position:absolute; inset-inline-end:0; top:0; }
@media(min-width:1440px) { .rt-catalog-intro h1 { font-size:52px; } }
@media(min-width:1024px) and (max-width:1190px) { .rt-header__actions>.rt-button--primary { display:none; } .rt-header-search { display:none; } }
@media(max-width:1000px) { .rt-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.rt-catalog-card__body { padding:24px; }.rt-catalog-intro__note { display:none; } }
@media(max-width:1023px) {
	.rt-header__inner { display:grid; grid-template-columns:1fr auto 1fr; min-height:80px; padding:12px 16px; gap:8px; }
	.rt-header__logo,html[dir] .rt-header__logo { position:static; transform:none; grid-column:2; grid-row:1; max-width:none; width:auto; justify-self:center; }
	.rt-header__logo img { max-height:38px; }
	.rt-header__actions { display:contents; }
	.rt-header__actions>.rt-hide-mobile,.rt-header-search { display:none!important; }
	.rt-header__account { grid-column:3; grid-row:1; justify-self:end; font-size:12px; padding:8px; min-height:44px; }
	.rt-header__menu-toggle { grid-column:1; grid-row:1; justify-self:start; }
	.rt-nav { display:none; }
}
@media(max-width:650px) {
	.rt-catalog { padding-inline:16px; }
	.rt-catalog-intro { padding:32px 0 24px; }.rt-catalog-intro h1 { font-size:32px; }.rt-catalog-intro p { font-size:14px; max-width:34ch; }
	.rt-catalog-quick { gap:4px; }.rt-catalog-quick>span { width:100%; }.rt-catalog-quick>a { padding-inline:16px; }
	.rt-catalog-filterbar { gap:8px; padding-block:16px; }.rt-catalog-filter>summary { padding-inline:12px; font-size:12px; }
	.rt-catalog-filter { position:static; }.rt-catalog-filterbar { position:relative; }.rt-catalog-filter__panel { inset-inline-start:0; top:100%; width:100%; }
	.rt-catalog-order { margin-inline-start:0; flex:1; }.rt-catalog-order select { width:100%; }
	.rt-catalog-filterbar.is-expanded { display:grid; grid-template-columns:1fr 1fr; }.rt-catalog-filterbar.is-expanded .rt-catalog-filter__panel { max-height:260px; padding:8px; }
	.rt-catalog-toolbar { flex-wrap:wrap; }.rt-catalog-search { width:100%; }
	.rt-catalog-grid { grid-template-columns:1fr; gap:24px; }.rt-catalog-card__photo { aspect-ratio:4/3; }.rt-catalog-card__body { padding:24px; }
	.rt-catalog-card h2 { font-size:20px; min-height:0; margin-bottom:12px; }.rt-catalog-card__uses { min-height:0; padding-block:16px 24px; }.rt-catalog-card__specs { font-size:14px; }
	.rt-catalog-cta { display:block; margin-block:48px; padding-block:32px; }.rt-catalog-cta h2 { font-size:24px; }.rt-catalog-cta>.rt-button { margin-top:24px; }
}
@media(prefers-reduced-motion:reduce) { .rt-catalog-card__photo img { transition:none; }.rt-catalog-card__photo:hover img { transform:none; } }
