/* Four-feature reference presentation. No commerce or search handlers. */
#hero .zm-ref-hero, #categories.zm-ref-categories { --ref-accent: #f95228; font-family: 'Manrope', sans-serif; }
#hero:has(.zm-ref-hero.is-active) { height: auto; min-height: 560px; }
#hero:has(.zm-ref-hero.is-active) .hero__slides { flex: none; }
#hero .zm-ref-hero.is-active { position: relative; }
#hero .zm-ref-hero { background: #211710; color: #f7edda; }
#hero .zm-ref-hero__grid { max-width: 1480px; margin: auto; padding: 56px 20px 70px; display: grid; align-items: center; gap: 48px; min-height: 660px; }
#hero .zm-ref-hero__copy { max-width: 620px; }
#hero .zm-ref-hero__eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 28px; color: var(--ref-accent); font: 10px  monospace; text-transform: uppercase; letter-spacing: .2em; }
#hero .zm-ref-hero__eyebrow::before { content: ''; width: 40px; height: 1px; background: currentColor; }
#hero .zm-ref-hero h2 { margin: 0; color: #f7edda; font: 400 clamp(4rem,8.5vw,8.4rem)/.82 'Cormorant Garamond',serif; letter-spacing: -.035em; }
#hero .zm-ref-hero h2 em { color: var(--ref-accent); }
#hero .zm-ref-hero__description { max-width: 430px; margin: 32px 0 0; font-size: 15px; line-height: 28px; color: #f7eddaa8; }
#hero .zm-ref-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 36px; }
#hero .zm-ref-hero__actions a { display: inline-flex; align-items: center; gap: 8px; padding: 14px 20px; border: 1px solid #f7edda40; color: #f7eddad9; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; transition: transform .2s, color .2s, border-color .2s; }
#hero .zm-ref-hero__actions a:first-child { background: var(--ref-accent); border-color: var(--ref-accent); color: #211710; font-weight: 700; }
#hero .zm-ref-hero__actions a:first-child:hover { transform: translateY(-2px); }
#hero .zm-ref-hero__actions a:last-child:hover { border-color: #25d366; color: #25d366; }
#hero .zm-ref-hero__actions svg { width: 15px; height: 15px; }
#hero .zm-ref-hero__promises { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 460px; margin-top: 56px; border-top: 1px solid #f7edda26; padding-top: 20px; }
#hero .zm-ref-hero__promises div { padding: 0 16px; border-right: 1px solid #f7edda26; }
#hero .zm-ref-hero__promises div:first-child { padding-left: 0; }
#hero .zm-ref-hero__promises div:last-child { border: 0; }
#hero .zm-ref-hero__promises strong { display: block; color: var(--ref-accent); font: 400 30px 'Cormorant Garamond',serif; }
#hero .zm-ref-hero__promises span { display: block; margin-top: 4px; color: #f7edda73; font: 9px monospace; letter-spacing: .13em; text-transform: uppercase; }
#hero .zm-ref-hero__visual { position: relative; margin: 0 0; min-width: 0; }
#hero .zm-ref-hero__visual::before { content: ''; position: absolute; inset: -16px; border: 1px solid #f9522840; pointer-events: none; }
#hero .zm-ref-hero__image { position: relative; overflow: hidden; min-height: 330px; }
#hero .zm-ref-hero__image > img { display: block; width: 100%; height: 100%; min-height: 330px; object-fit: cover; }
#hero .zm-ref-hero__image::after { content: ''; position: absolute; inset: 0; background: #2117101a; pointer-events: none; }
#hero .zm-ref-hero__caption { position: absolute; z-index: 1; bottom: 16px; left: 16px; padding: 12px 16px; border: 1px solid #f7edda66; background: #211710bf; backdrop-filter: blur(4px); }
#hero .zm-ref-hero__caption span { color: var(--ref-accent); font: 9px monospace; letter-spacing: .16em; text-transform: uppercase; }
#hero .zm-ref-hero__caption p { margin: 8px 0 0; color: #f7edda; font: 20px 'Cormorant Garamond',serif; }
#hero .zm-ref-hero__footer { display: flex; justify-content: space-between; gap: 16px; padding: 12px max(20px,calc((100% - 1384px)/2)); border-top: 1px solid #f7edda1a; background: #f7edda0a; color: #f7edda73; font: 9px monospace; letter-spacing: .16em; text-transform: uppercase; }
#categories.zm-ref-categories { position: relative; overflow: hidden; padding: 40px 0; background: #e5dac9; color: #342218; background-image: radial-gradient(#34221809 .5px,transparent .5px); background-size: 4px 4px; }
#categories .zm-ref-categories__container { max-width: 1400px; margin: auto; padding: 0 20px; }
#categories header { max-width: 672px; margin: auto; text-align: center; }
#categories .zm-ref-categories__eyebrow { margin: 0; color: #6a2421; font: 10.24px/1 monospace; letter-spacing: .18em; text-transform: uppercase; }
#categories h2 { margin: 12px 0 0; color: #342218; font: 400 clamp(2.5rem,4.5vw,4.5rem)/.9 'Cormorant Garamond',serif; letter-spacing: -.035em; }
#categories header > p:last-child { max-width: 576px; margin: 12px auto 0; color: #705b49; font-size: 14px; line-height: 24px; }
#categories .zm-ref-categories__toolbar { display: flex; align-items: center; gap: 16px; margin-top: 24px; padding: 12px 0; border-block: 1px solid #34221826; }
#categories .zm-ref-categories__nav { flex: 1; min-width: 0; overflow-x: auto; white-space: nowrap; scrollbar-width: none; color: #705b49; font: 10px monospace; letter-spacing: .12em; text-transform: uppercase; }
#categories .zm-ref-categories__nav a { display: inline-block; margin-right: 16px; color: inherit; }
#categories .zm-ref-categories__nav a:hover { color: #6a2421; }
#categories .zm-ref-categories__prefix > span { display: none; }
#categories .zm-ref-categories__arrows { display: flex; gap: 8px; }
#categories .zm-ref-categories__arrows button { min-width: 36px; width: 36px; height: 36px; min-height: 36px; padding: 0; border: 1px solid #34221840; border-radius: 0; background: transparent; color: #342218; box-shadow: none; font: 24px/1 serif; }
#categories .zm-ref-categories__arrows button:hover { background: #342218; color: #f4eedf; }
#categories .zm-ref-categories__track { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-top: 24px; padding: 12px 4px; }
#categories .zm-ref-categories__track::-webkit-scrollbar, #categories .zm-ref-categories__nav::-webkit-scrollbar { display: none; }
#categories .zm-ref-category { display: flex; flex: 0 0 150px; min-width: 0; flex-direction: column; align-items: center; text-align: center; scroll-snap-align: start; color: #342218; }
#categories .zm-ref-category__circle { display: block; width: 166px; aspect-ratio: 1; align-self: flex-start; padding: 4px; border: 1px solid #f95228b3; border-radius: 50%; background: #f4eedf1a; transform-origin: left; transition: transform .5s; }
#categories .zm-ref-category__circle > span { display: block; position: relative; width: 100%; height: 100%; overflow: hidden; border-radius: 50%; }
#categories .zm-ref-category__circle img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .7s; }
#categories .zm-ref-category__circle > span::after { content: ''; position: absolute; inset: 0; background: #3422181a; transition: background .3s; }
#categories .zm-ref-category__circle i { position: absolute; z-index: 1; right: 12px; bottom: 12px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--ref-accent); color: #342218; font: 20px sans-serif; opacity: 0; transition: opacity .3s; }
#categories .zm-ref-category:is(:hover,:focus-visible) .zm-ref-category__circle { transform: translateY(-8px) scale(1.04); }
#categories .zm-ref-category:is(:hover,:focus-visible) img { transform: scale(1.1); }
#categories .zm-ref-category:is(:hover,:focus-visible) i { opacity: 1; }
#categories .zm-ref-category:is(:hover,:focus-visible) .zm-ref-category__circle > span::after { background: transparent; }
#categories .zm-ref-category__name { margin-top: 20px; font: 21.6px/1 'Cormorant Garamond',serif; }
#categories .zm-ref-category__detail { margin-top: 8px; color: #705b49; font: 9px monospace; text-transform: uppercase; letter-spacing: .14em; }
#categories .zm-ref-categories__progress { display: flex; align-items: center; gap: 16px; margin-top: 8px; }
#categories .zm-ref-categories__progress > div { flex: 1; height: 4px; overflow: hidden; background: #34221826; }
#categories .zm-ref-categories__progress > div > span { display: block; width: 12%; height: 100%; background: #6a2421; transition: width .2s; }
#categories .zm-ref-categories__progress > span { color: #705b49; font: 10px monospace; text-transform: uppercase; letter-spacing: .16em; }
#hero .zm-ref-hero a:focus-visible, #categories :is(a,button):focus-visible { outline: 2px solid #f95228; outline-offset: 3px; }
/* Only editorial text: no inherited selection rule on forms/editable regions. */
:is(#hero,#categories,#about,.zm-brand-page) :is(h1,h2,h3,p,em,strong,span):not(:where(form *,input,textarea,select,[contenteditable],[contenteditable] *,[role="textbox"],[role="textbox"] *))::selection { background: #f95228; color: #211710; }
@media (min-width: 640px) {
 #hero .zm-ref-hero__grid { padding-inline: 32px; }
 #hero .zm-ref-hero__description { font-size: 17px; }
 #categories.zm-ref-categories { padding-block: 48px; }
 #categories .zm-ref-categories__container { padding-inline: 32px; }
 #categories header > p:last-child { font-size: 16px; }
 #categories .zm-ref-categories__toolbar { margin-top: 28px; }
 #categories .zm-ref-categories__prefix > span { display: inline; }
 #categories .zm-ref-categories__track { gap: 28px; }
 #categories .zm-ref-category { flex-basis: 230px; }
 #categories .zm-ref-category__circle { width: 100%; }
 #categories .zm-ref-category__name { font-size: 24px; }
}
@media (min-width: 1024px) {
 #hero .zm-ref-hero__grid { grid-template-columns: .92fr 1.08fr; gap: 64px; padding: 80px 48px; }
 #hero .zm-ref-hero__visual::before { inset: -28px; }
 #hero .zm-ref-hero__image, #hero .zm-ref-hero__image > img { min-height: 530px; }
 #categories .zm-ref-categories__container { padding-inline: 48px; }
 #categories .zm-ref-categories__toolbar { padding-block: 16px; }
 #categories .zm-ref-categories__nav { font-size: 13px; letter-spacing: .16em; }
 #categories .zm-ref-category { flex-basis: 300px; }
}
@media (prefers-reduced-motion: reduce) {
 #hero .zm-ref-hero *, #categories * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
/* Skin WoodMart's original UI; its forms, AJAX, focus and open/close remain native. */
.whb-header .wd-header-search.wd-tools-element > a { width: 44px; min-height: 44px; padding: 0; border: 1px solid #34221833; background: #f4eedf; color: #342218; box-shadow: 0 1px 2px #0000000d; transition: background .2s; }
.whb-header .wd-header-search.wd-tools-element > a:hover { background: #e5dac9; }
.whb-header .wd-header-search .wd-tools-icon::before { content: ''; display: block; width: 20px; height: 20px; background: currentColor; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") center/contain no-repeat; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) { background: #000c; backdrop-filter: blur(12px); color: white; --wd-form-color: #fff; --wd-form-brd-color: #ffffff40; --wd-form-placeholder-color: #ffffff4d; transition: opacity .25s, visibility .25s; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .searchform { width: calc(100% - 32px); max-width: 896px; margin: 96px auto 0; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) input[name="s"] { height: auto; min-height: 76px; padding: 0 48px 16px; border: 0; border-bottom: 1px solid #ffffff40; border-radius: 0; background: transparent; color: white; text-align: center; font: italic 60px/1.15 'Cormorant Garamond',serif; box-shadow: none; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) input[name="s"]::placeholder { color: #ffffff4d; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .wd-close-search { top: 32px; right: 32px; color: #ffffff80; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .wd-close-search:hover { color: white; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) :is(.wd-search-info-text,.wd-search-title) { color: #ffffff80; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .searchsubmit { color: white; background: transparent; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .wd-search-requests a { padding: 8px 20px; border-radius: 999px; background: #ffffff1a; color: white; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .wd-search-requests a:hover { background: #ffffff33; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) .wd-search-results { max-width: 896px; margin-inline: auto; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2,.wd-search-dropdown) .autocomplete-suggestion { border-radius: 16px; background: #f4eedf; color: #342218; overflow: hidden; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2,.wd-search-dropdown) .suggestion-title { color: #342218; font-family: 'Cormorant Garamond',serif; font-size: 18px; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2,.wd-search-dropdown) .price { color: #f95228; }
body .zm-header-live-search { border-radius: 16px; background: #f4eedf; }
body .zm-header-live-search__item { border-radius: 16px; background: #f4eedf; }
body .zm-header-live-search__name { font: 700 18px/1.15 'Cormorant Garamond',serif; }
body .zm-header-live-search__price { color: #f95228; }
body :is(.wd-search-full-screen,.wd-search-full-screen-2) :is(a,button,input):focus-visible { outline: 2px solid #f95228; outline-offset: 3px; }
@media (max-width: 767px) {
 body :is(.wd-search-full-screen,.wd-search-full-screen-2) input[name="s"] { font-size: 36px; }
 body :is(.wd-search-full-screen,.wd-search-full-screen-2) .searchform { margin-top: 80px; }
}
@media (prefers-reduced-motion: reduce) {
 body :is(.wd-search-full-screen,.wd-search-full-screen-2), .whb-header .wd-header-search.wd-tools-element > a { transition: none; }
}
/* Existing homepage modal has its own search implementation; presentation only. */
#homepage-content #searchModal .search-modal__backdrop { background: #000c; backdrop-filter: blur(12px); }
#homepage-content #searchModal .search-modal__container { max-width: 896px; width: calc(100% - 32px); padding-top: 96px; }
#homepage-content #searchModal .search-modal__input { font: italic 60px/1.15 'Cormorant Garamond',serif; padding-bottom: 16px; color: white; border-bottom: 1px solid #ffffff40; }
#homepage-content #searchModal .search-modal__input::placeholder { color: #ffffff4d; }
#homepage-content #searchModal .search-modal__categories { margin-top: 32px; gap: 12px; }
#homepage-content #searchModal .search-modal__pill { padding: 8px 20px; border: 0; border-radius: 999px; background: #ffffff1a; color: white; font-size: 14px; }
#homepage-content #searchModal .search-modal__pill.is-active { background: #f95228; color: #342218; }
#homepage-content #searchModal .search-modal__results { margin-top: 48px; gap: 24px; max-height: 60vh; overflow-y: auto; }
#homepage-content #searchModal .search-modal__card { border-radius: 16px; background: #f4eedf; }
#homepage-content #searchModal .search-modal__card-title { color: #342218; font-family: 'Cormorant Garamond',serif; font-size: 18px; }
#homepage-content #searchModal .search-modal__card-price { color: #f95228; }
@media (max-width: 767px) { #homepage-content #searchModal .search-modal__input { font-size: 36px; } }
@media (prefers-reduced-motion: no-preference) {
 #hero .zm-ref-hero.is-active .zm-ref-hero__copy { animation: zmReferenceReveal .7s both; }
 #hero .zm-ref-hero.is-active .zm-ref-hero__visual { animation: zmReferenceReveal .7s .16s both; }
}
@keyframes zmReferenceReveal { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
