/* Lenoa design tokens: shared with configurable branding and PDF theme. */
:root{--primary:#71534A;--accent:#71534A;--ivory:#F3EFE6;--ink:#545454;--muted:#655D55;--line:#DFD3C3;--taupe:#C7B198;--blush:#E4C4BE;--surface:#FFFFFF;--artwork-background:#F3EFE6;--on-primary:#FFFFFF;--green:#245f45;--radius:5px;--font:'Glacial Indifference','Lenoa Currency',Arial,Helvetica,sans-serif;--display:'Cinzel','Lenoa Currency',Georgia,serif}
@font-face{font-family:'Glacial Indifference';src:url("fonts/GlacialIndifference-Regular.2c67694d6bbc.ttf") format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Glacial Indifference';src:url("fonts/GlacialIndifference-Bold.8b75fedd58b1.ttf") format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:'Cinzel';src:url("fonts/Cinzel-Regular.89d1f34f38a7.ttf") format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Cinzel';src:url("fonts/Cinzel-Bold.459fbf6f9a76.ttf") format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:'Lenoa Currency';src:url("fonts/LenoaCurrency-Regular.f2a171b0bab5.woff2") format('woff2');font-style:normal;font-weight:400;font-display:swap;unicode-range:U+20A1}
@font-face{font-family:'Lenoa Currency';src:url("fonts/LenoaCurrency-Bold.5d24ca06caf4.woff2") format('woff2');font-style:normal;font-weight:600 900;font-display:swap;unicode-range:U+20A1}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:1rem}body{margin:0;color:var(--ink);background:var(--ivory);font-family:var(--font);font-size:1.125rem;line-height:1.55;-webkit-text-size-adjust:100%}a{color:var(--primary);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}input,select,textarea{max-width:100%;min-width:0;width:100%;min-height:48px;padding:11px 13px;background:var(--surface);color:var(--ink);border:1px solid var(--muted);border-radius:var(--radius)}textarea{resize:vertical}input[type=checkbox],input[type=radio]{width:22px;height:22px;min-height:22px;accent-color:var(--primary);flex:0 0 auto}input[type=color]{width:110px;height:52px;padding:5px}input:disabled{background:var(--ivory);color:var(--muted)}label{display:block;font-size:1rem;font-weight:600;margin-bottom:6px}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{color:var(--primary)}h1,h2{font-family:var(--display);font-weight:400;line-height:1.1;letter-spacing:-1.3px}h1{font-size:clamp(2.375rem,5vw,4rem);margin-bottom:20px}h2{font-size:clamp(1.875rem,3.5vw,2.6875rem);margin-bottom:18px}h3{font-size:1.188rem;line-height:1.35}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:4px}main:focus{outline:none}.content-width{width:min(1240px,calc(100% - 80px));margin-inline:auto}.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--surface);padding:14px 20px;color:var(--primary)}.skip-link:focus{top:12px}.demo-banner{background:var(--taupe);color:var(--ink);text-align:center;font-size:0.8125rem;padding:7px 16px}.site-header{border-bottom:1px solid var(--line)}.header-inner{width:min(1240px,calc(100% - 80px));margin:auto;display:flex;justify-content:space-between;align-items:center;min-height:104px;gap:18px}.wordmark{font-family:var(--display);font-size:3.75rem;letter-spacing:-4px;font-weight:400;text-decoration:none;line-height:1}.wordmark-dot{color:var(--accent)}.wordmark img{max-height:74px;width:auto;object-fit:contain}.wordmark.small{font-size:2.688rem;letter-spacing:-2px}.header-inner nav{display:flex;gap:30px;align-items:center}.header-inner nav a{min-height:48px;display:flex;align-items:center;gap:28px;text-decoration:none;font-size:1.062rem}.header-inner nav a[aria-current]{text-decoration:underline}.eyebrow{font-size:0.75rem;line-height:1.5;font-weight:700;letter-spacing:2px;color:var(--accent);margin-bottom:23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:52px;padding:13px 23px;border:1px solid var(--primary);border-radius:var(--radius);background:var(--primary);color:var(--on-primary);text-decoration:none;font-size:1rem;font-weight:600;line-height:1.4;text-align:center}.button:hover{filter:brightness(.96)}.button.secondary{background:transparent;color:var(--primary)}.button:disabled{opacity:.6;cursor:wait}.plain-button{border:0;padding:11px 2px;min-height:44px;background:transparent;color:var(--primary);text-decoration:underline;font-size:1rem}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-block:50px 56px}.hero-copy{padding:20px 0}.hero h1{font-size:clamp(3.125rem,5.7vw,4.9375rem);line-height:1.06;margin-bottom:24px}.hero-intro{max-width:380px;font-size:1.188rem;color:var(--muted);margin-bottom:28px}.soft-note{font-size:0.8125rem;color:var(--muted);margin:16px 0 0;max-width:340px}.hero-visual{position:relative;min-width:0;aspect-ratio:1/.99;background:var(--ivory);overflow:hidden;border-radius:120px 4px 4px 4px}.hero-visual>a{display:block;height:100%;width:100%}.hero-visual img{height:100%;width:100%;object-fit:cover}.hero-label{position:absolute;bottom:0;left:0;right:0;background:var(--surface);font-size:0.8125rem;color:var(--primary);padding:15px 20px;display:flex;justify-content:space-between;gap:15px}.hero-label>span:last-child{font-size:1.375rem;line-height:1}.hero-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:var(--display);font-size:2.125rem;color:var(--primary)}.ornament{font-size:8.75rem;font-weight:100;line-height:1;margin-bottom:25px}.category-band{background:var(--ivory);border-block:1px solid var(--line);padding:26px 0 32px}.category-band .eyebrow{margin-bottom:14px}.category-links{display:flex;flex-wrap:wrap;gap:10px}.category-chip{display:inline-flex;gap:25px;align-items:center;min-height:46px;border:1px solid var(--line);border-radius:30px;padding:8px 20px;font-size:1rem;text-decoration:none}.category-chip.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.product-section{padding-block:62px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:29px}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2{margin-bottom:0}.text-link{font-size:0.9375rem;min-height:48px;display:inline-flex;align-items:center;gap:20px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 24px}.product-card{min-width:0}.product-card-link{display:block;text-decoration:none}.product-picture{position:relative;aspect-ratio:1/1.12;background:var(--ivory);overflow:hidden;border-radius:3px}.product-picture img{width:100%;height:100%;object-fit:contain;background:var(--ivory)}.card-arrow{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface);width:35px;height:35px;font-size:1.375rem}.product-info{padding-top:15px}.product-category{text-transform:uppercase;font-size:0.75rem;letter-spacing:1.6px;color:var(--muted);margin-bottom:7px}.product-info h3{font-family:var(--font);font-weight:400;font-size:1.375rem;line-height:1.23;margin-bottom:10px}.price{font-size:1.062rem;color:var(--ink);font-weight:600;margin-bottom:3px}.availability-text{font-size:0.75rem;color:var(--muted)}.availability{position:absolute;left:11px;top:12px;font-size:0.75rem;padding:5px 11px;background:var(--surface);color:var(--primary);border-radius:20px;border:1px solid var(--line)}.image-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;background:var(--ivory);color:var(--muted);height:100%;min-height:200px;padding:25px;font-size:1rem}.discovery-note{display:flex;align-items:center;gap:28px;padding:34px 38px;background:var(--blush);border:1px solid var(--line);margin-bottom:65px}.discovery-note>span{font-size:4.688rem;color:var(--accent);line-height:1}.discovery-note>div{flex:1}.discovery-note h2{font-size:1.938rem;margin-bottom:10px}.discovery-note p{font-size:1rem;color:var(--muted);max-width:650px;margin:0}.site-footer{border-top:1px solid var(--line);background:var(--ivory);padding:40px 0 28px}.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:35px}.footer-inner p{font-size:0.875rem;margin:14px 0 0;color:var(--muted)}.footer-inner>div:nth-child(2){display:flex;flex-direction:column;align-items:flex-end;justify-content:center}.footer-inner>div:nth-child(2)>a{font-size:0.875rem;min-height:36px;overflow-wrap:anywhere}.footer-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px}.breadcrumb{font-size:0.8125rem;color:var(--muted);margin-bottom:30px}.breadcrumb a{text-decoration:none}.catalog-section{padding-block:28px 70px}.catalog-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:24px}.catalog-heading .eyebrow{margin-bottom:12px}.catalog-heading h1{margin-bottom:0}.catalog-heading>p{color:var(--muted);font-size:1rem;max-width:230px;margin-bottom:5px}.catalog-controls{border-bottom:1px solid var(--line);padding-block:15px 0}.search-line{display:flex;gap:12px;max-width:800px}.search-line input{flex:1}.filters{margin-top:15px}.filters summary{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding-block:12px;font-size:1rem;font-weight:600;cursor:pointer;list-style:none;color:var(--primary)}.filters summary::-webkit-details-marker{display:none}.filters summary span{font-size:1.562rem;line-height:1}.filters[open] summary span{transform:rotate(45deg)}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-block:12px 23px}.filter-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;grid-column:1/-1}.filter-actions a{font-size:0.9375rem}.results-line{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-block:24px}.results-line p{font-size:1rem;margin:0}.results-line span{font-size:0.8125rem;color:var(--muted)}.empty-state{text-align:center;padding:65px 24px;background:var(--ivory);border:1px solid var(--line);margin:15px 0}.empty-state>span{font-size:4.375rem;line-height:1;color:var(--accent);display:block;margin-bottom:16px}.empty-state p{color:var(--muted);font-size:1.062rem}.empty-state h2{font-size:1.938rem}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;padding-top:40px}.pagination>span{font-size:0.875rem;color:var(--muted)}.back-link{display:inline-flex;align-items:center;min-height:46px;font-size:0.9375rem;margin-bottom:22px}.detail-section{padding-block:27px 65px}.product-detail{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start}.gallery{min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.gallery-item{margin:0;min-width:0}.gallery-item:first-child{grid-column:1/-1}.gallery-item img{width:100%;height:auto;aspect-ratio:1/1.07;object-fit:contain;background:var(--ivory)}.gallery-item figcaption{font-size:0.75rem;color:var(--muted);padding-top:7px}.detail-copy{position:sticky;top:24px;padding-top:20px}.detail-copy h1{font-size:clamp(2.1875rem,3.7vw,3.3125rem)}.detail-copy .eyebrow{margin-bottom:14px}.sku{font-size:0.8125rem;color:var(--muted);margin-bottom:22px}.detail-price{font-size:1.688rem;color:var(--primary);font-weight:600;line-height:1.25;margin-bottom:16px}.stock{font-size:0.875rem;color:var(--green);display:flex;align-items:center;gap:8px;margin-bottom:28px}.stock span{font-size:0.75rem}.stock.unavailable{color:var(--muted)}.description{font-size:1.062rem;color:var(--muted);margin-bottom:24px}.attributes{border-block:1px solid var(--line);padding:14px 0;margin-bottom:25px;font-size:0.9375rem}.attributes>div{display:grid;grid-template-columns:100px 1fr;gap:15px;padding-block:5px}.attributes dt{font-weight:600}.attributes dd{margin:0}.inquiry p{font-size:0.8125rem;color:var(--muted);margin-top:13px}.inquiry-button{width:100%}.detail-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.detail-tags span{border:1px solid var(--line);border-radius:20px;padding:4px 12px;font-size:0.75rem;color:var(--muted)}
/* Staff screens share readable controls, clear states and keyboard focus. */
.staff-body{font-size:1rem;background:var(--ivory)}.staff-header{background:var(--ivory);border-bottom:1px solid var(--line)}.staff-header>.content-width{min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:25px}.staff-label{font-family:var(--font);font-size:0.75rem;letter-spacing:2px;margin-left:18px;text-transform:uppercase}.staff-account{display:flex;align-items:center;gap:22px;font-size:0.875rem;flex-wrap:wrap}.staff-account form{margin:0}.staff-nav{display:flex;flex-wrap:wrap;column-gap:24px;border-bottom:1px solid var(--line);padding-block:10px}.staff-nav a{font-size:0.875rem;min-height:44px;display:inline-flex;align-items:center;text-decoration:none}.staff-nav a:hover{text-decoration:underline}.staff-main{padding-block:34px 60px;min-height:65vh}.staff-main h1{font-size:2.625rem}.staff-main h2{font-size:1.75rem}.staff-main h3{font-size:1.25rem}.staff-page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:22px}.staff-page-heading h1{margin-bottom:12px}.staff-page-heading p{margin-bottom:0;color:var(--muted)}.staff-page-heading .eyebrow{margin-bottom:8px;font-size:0.75rem}.staff-footer{border-top:1px solid var(--line);font-size:0.8125rem;color:var(--muted);padding-block:22px}.quick-actions{display:flex;flex-wrap:wrap;gap:12px 22px;margin-block:0 26px}.quick-actions a{font-size:0.875rem;min-height:32px;display:flex;align-items:center}.panel,.card{border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:26px;margin-bottom:24px}.staff-filters .filter-grid{padding:0;grid-template-columns:repeat(3,minmax(0,1fr))}.field{min-width:0;margin-bottom:2px}.help-text,.helptext{font-size:0.8125rem;line-height:1.5;color:var(--muted);margin-top:7px;margin-bottom:0}.required{font-weight:400;font-size:0.75rem;color:var(--muted)}.message{padding:17px 20px;border:1px solid #bccec1;background:#edf5ee;border-radius:4px;font-size:1rem;color:#244534}.message.error,.errorlist{color:#8b2634}.message.error{background:#fff0ed;border-color:#d9a2a7}.message.info{background:var(--ivory);color:var(--primary);border-color:var(--line)}.message.warning{background:#fcf0d9;color:#694816;border-color:#d8c69d}.messages{padding-top:12px}.message ul{margin-block:8px 0}.checkbox-label{display:flex;align-items:center;gap:11px;font-size:0.9375rem;line-height:1.4;margin-bottom:0}.bulk-panel{background:var(--ivory)}.bulk-controls{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-top:20px}.bulk-controls>.field{flex:1;min-width:150px}.bulk-controls .button{padding-inline:16px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:5px;background:var(--surface);max-width:100%}table{width:100%;border-collapse:collapse;font-size:0.875rem;text-align:left}th{background:var(--ivory);font-size:0.75rem;color:var(--muted);font-weight:700;padding:15px}td{padding:15px;vertical-align:middle;border-top:1px solid var(--line)}td small{display:block;color:var(--muted);font-size:0.75rem;margin-top:5px}th,td{overflow-wrap:anywhere}.product-cell{display:flex;align-items:center;gap:15px;text-decoration:none;min-width:210px}.product-cell img,.tiny-placeholder{width:56px;height:62px;object-fit:contain;border-radius:3px;background:var(--ivory);flex-shrink:0}.tiny-placeholder{display:grid;place-items:center;font-size:1.5rem}.product-cell strong{font-weight:600;display:block;max-width:300px}.table-checkbox{display:grid;place-items:center;min-height:46px;min-width:40px;margin:0}.table-edit{display:flex;align-items:center;min-height:44px;white-space:nowrap}.nowrap{white-space:nowrap}.badge{font-size:0.75rem;display:inline-block;padding:3px 9px;border-radius:20px;background:var(--taupe);color:var(--ink);white-space:nowrap}.badge.published{background:#e1eee5;color:#225439}.badge.archived{background:var(--ivory);color:var(--muted)}.form-panel>.field{margin-bottom:23px}.form-panel>.field:last-child{margin-bottom:0}.form-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;padding-top:10px}.form-actions a{font-size:0.875rem}.staff-edit-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:26px;align-items:start}.product-tools{font-size:0.9375rem}.product-tools .button{font-size:0.875rem}.staff-photo{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.staff-photo>img{width:100%;height:220px;object-fit:contain;background:var(--ivory);border-radius:3px;margin-bottom:14px}.staff-photo p{margin-bottom:12px}.photo-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:17px}.photo-actions .button{padding:9px 13px;min-height:44px}.danger{color:#8b2634!important;border-color:#ae626b!important}.field-errors{font-size:0.875rem;margin-top:6px;color:#8b2634}.errorlist{padding-left:19px;font-size:0.875rem;margin-block:6px}.has-error input,.has-error select,.has-error textarea{border:2px solid #a43d4c}.narrow{max-width:740px}.audit-details{max-width:360px;font-size:0.75rem}hr{border:0;border-top:1px solid var(--line);margin-block:24px}progress{width:100%;height:20px;accent-color:var(--primary)}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--ivory);padding:16px;border:1px solid var(--line);font-size:0.8125rem}code{font-size:.9em;overflow-wrap:anywhere}iframe{max-width:100%;border:1px solid var(--line)}.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-block:20px}form>p>label{display:block}form>p>input[type=checkbox]{width:22px}.staff-main form:not(.bulk-form) ul{padding-left:23px}
@media(min-width:1450px){.hero{gap:100px}.hero-visual{aspect-ratio:1/1.03}}
@media(max-width:1000px){.content-width,.header-inner{width:calc(100% - 48px)}.hero{gap:35px}.hero h1{font-size:3.75rem}.hero-intro{font-size:1.062rem}.hero-copy .button{font-size:0.875rem;padding-inline:15px;gap:14px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px}.product-info h3{font-size:1.312rem}.discovery-note{padding:30px 24px}.discovery-note>span{display:none}.product-detail{gap:35px}.detail-copy h1{font-size:2.438rem}.staff-account{gap:12px}.staff-edit-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.bulk-controls>.button{flex-grow:1}}
@media(max-width:760px){.hero{grid-template-columns:1fr 1fr;gap:22px;padding-block:36px}.hero h1{font-size:3rem}.hero-visual{min-height:360px;aspect-ratio:auto;border-top-left-radius:70px}.hero-copy .eyebrow{font-size:0.75rem;letter-spacing:1.5px}.soft-note{font-size:0.75rem}.hero-label{font-size:0.75rem;padding:12px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.discovery-note{display:block}.discovery-note .button{margin-top:23px}.product-detail{grid-template-columns:1fr}.gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:12px}.gallery-item{flex:0 0 86%;scroll-snap-align:start}.gallery-item:only-child{flex-basis:100%}.gallery-item img{max-height:560px}.detail-copy{position:static;padding-top:0}.detail-copy h1{font-size:2.562rem}.detail-copy .description{max-width:600px}.inquiry-button{width:auto;min-width:280px}.staff-header>.content-width{align-items:flex-start;padding-block:22px}.staff-account{justify-content:flex-end;max-width:270px}.staff-account>span{display:none}.staff-nav{column-gap:19px}.staff-nav a{font-size:0.8125rem}.staff-edit-layout{grid-template-columns:1fr}.staff-filters .filter-grid{grid-template-columns:1fr 1fr}.staff-page-heading .button{white-space:nowrap}.filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){body{font-size:1.125rem}.content-width,.header-inner{width:calc(100% - 40px)}.header-inner{min-height:84px}.wordmark{font-size:3.188rem}.header-inner nav{gap:14px}.header-inner nav a{font-size:0.875rem;gap:12px}.header-inner nav a:nth-child(2){font-size:0.75rem}.hero{display:flex;flex-direction:column;gap:30px;padding-block:34px 32px;align-items:stretch}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:0.75rem;letter-spacing:1.7px;margin-bottom:17px}.hero h1{font-size:3.688rem;line-height:1.05;letter-spacing:-2px;margin-bottom:21px}.hero h1 br:nth-child(2){display:none}.hero-intro{font-size:1.062rem;margin-bottom:24px;max-width:360px}.hero-copy .button{font-size:0.9375rem;min-height:54px;padding-inline:19px;gap:23px}.soft-note{font-size:0.75rem}.hero-visual{min-height:0;aspect-ratio:1/1.06;border-radius:86px 4px 4px 4px}.hero-label{font-size:0.75rem;padding:16px}.category-band{padding-block:22px}.category-band .eyebrow{font-size:0.75rem;letter-spacing:1.5px}.category-chip{font-size:0.875rem;padding:8px 15px;gap:16px;min-height:44px}.category-links{gap:8px}.product-section{padding-block:38px}.section-heading{gap:12px;margin-bottom:24px}.section-heading .eyebrow{font-size:0.75rem;letter-spacing:1.4px}.section-heading h2{font-size:2.125rem}.section-heading .text-link{font-size:0.8125rem;gap:8px;white-space:nowrap}.product-grid{grid-template-columns:1fr;gap:33px}.product-picture{aspect-ratio:1/1.06}.product-info h3{font-size:1.625rem}.product-category{font-size:0.75rem}.price{font-size:1.125rem}.availability-text{font-size:0.8125rem}.product-info{padding-top:17px}.card-arrow{width:42px;height:42px;right:15px;bottom:15px}.discovery-note{margin-bottom:40px;padding:25px}.discovery-note h2{font-size:1.938rem}.discovery-note p{font-size:1rem}.footer-inner{grid-template-columns:1fr;gap:23px}.footer-inner>div:nth-child(2){align-items:flex-start}.footer-note{margin-top:0!important}.catalog-section{padding-top:20px}.breadcrumb{margin-bottom:24px}.catalog-heading{display:block;margin-bottom:20px}.catalog-heading h1{font-size:3rem}.catalog-heading>p{max-width:none;margin-top:15px}.catalog-heading .eyebrow{font-size:0.75rem}.search-line{gap:8px}.search-line input{font-size:1rem;padding-inline:10px}.search-line .button{padding:12px 16px;min-height:50px;font-size:0.875rem}.filter-grid{grid-template-columns:1fr}.filter-actions{gap:17px}.results-line{align-items:flex-start}.results-line p{font-size:0.875rem;max-width:65%}.results-line>span{font-size:0.75rem;white-space:nowrap}.pagination{gap:12px}.pagination .button{padding-inline:15px;font-size:0.875rem}.pagination>span{width:100%;text-align:center;order:-1}.detail-section{padding-top:16px}.detail-copy h1{font-size:2.375rem}.gallery{gap:10px}.gallery-item{flex-basis:93%}.inquiry-button{width:100%;min-width:0;font-size:0.9375rem;gap:15px}.attributes>div{grid-template-columns:80px 1fr}.detail-copy .eyebrow{font-size:0.75rem}.staff-header>.content-width{flex-direction:column;gap:12px;padding-block:17px}.staff-account{justify-content:flex-start;max-width:none;gap:22px}.staff-account a,.staff-account button{font-size:0.8125rem}.staff-label{font-size:0.75rem}.staff-header .wordmark{font-size:2.562rem}.staff-nav{gap:0 19px}.staff-nav a{min-height:41px;font-size:0.8125rem}.staff-main{padding-top:25px}.staff-main h1{font-size:2.125rem}.staff-main h2{font-size:1.625rem}.staff-page-heading{display:block}.staff-page-heading>.button{margin-top:18px}.staff-page-heading p{font-size:0.875rem}.quick-actions{gap:7px 18px}.quick-actions a{font-size:0.8125rem}.panel,.card{padding:20px}.staff-filters .filter-grid{grid-template-columns:1fr}.bulk-controls{display:grid;grid-template-columns:1fr}.bulk-controls>.field{min-width:0}.checkbox-label{font-size:0.875rem;align-items:flex-start}.bulk-panel .help-text{margin-top:12px}.table-scroll{margin-inline:-1px}.staff-edit-layout{gap:0}.form-actions{gap:16px}.form-actions .button{width:100%}.staff-footer{font-size:0.75rem}.staff-photo>img{height:280px}}
@media(min-width:480px) and (max-width:600px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 17px}.product-info h3{font-size:1.375rem}.hero-visual{aspect-ratio:1/1}.product-picture{aspect-ratio:1/1.16}}
@media(max-width:359px){.content-width,.header-inner{width:calc(100% - 32px)}.hero h1{font-size:3.188rem}.hero-copy .button{width:100%;font-size:0.875rem;gap:11px;padding-inline:13px}.hero-visual{border-top-left-radius:65px}.hero-label{font-size:0.75rem;padding-inline:12px}.section-heading h2{font-size:1.812rem}.section-heading .eyebrow{font-size:0.75rem}.section-heading .text-link{font-size:0.75rem}.wordmark{font-size:2.938rem}.catalog-heading h1{font-size:2.688rem}.header-inner nav a{font-size:0.8125rem;gap:8px}.search-line .button{padding-inline:12px}.detail-copy h1{font-size:2.125rem}.inquiry-button{font-size:0.875rem;padding-inline:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.site-header,.site-footer,.staff-header,.staff-nav,.button,.back-link{display:none}.content-width{width:100%}.detail-copy{position:static}.product-grid{grid-template-columns:repeat(2,1fr)}}

/* Minimum readable sizes apply at every breakpoint; rem respects preferred text size. */
.availability-text,.availability,.stock,.sku,.gallery-item figcaption,.product-category{font-size:.875rem}
.staff-nav a,.staff-label,.staff-account a,.staff-account button,.quick-actions a,.staff-footer,.badge,td small,th{font-size:.875rem}
.button,.hero-copy .button,.search-line .button,.inquiry-button,.product-tools .button,.photo-actions .button,.pagination .button{font-size:1rem}
.auth-card{max-width:520px;margin:25px auto 60px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:34px}
.auth-card h1{font-size:2.25rem}.auth-card form p{margin-bottom:23px}.auth-card .helptext{display:block;margin-top:7px}
.table-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:5px;background:var(--surface)}
.staff-main button:not([class]){display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:13px 23px;border:1px solid var(--primary);border-radius:var(--radius);background:var(--primary);color:var(--on-primary);font-size:1rem;font-weight:600;line-height:1.4}
.staff-main form p{overflow-wrap:anywhere}.staff-main .muted{color:var(--muted)}
@media(max-width:600px){.auth-card{padding:24px 20px}.auth-card h1{font-size:2rem}.auth-card button{width:100%}.staff-nav{column-gap:17px}.product-category{letter-spacing:1px}.hero-copy .button{gap:12px}.section-heading{align-items:flex-end}.section-heading .eyebrow{max-width:190px}}

.notice{padding:18px 22px;border:1px solid var(--line);background:var(--ivory);color:var(--primary);border-radius:5px;margin-block:20px;font-size:1rem}
.help{font-size:.875rem;line-height:1.5;color:var(--muted);margin-block:8px 0}.form-stack>.field{margin-bottom:23px}.form-stack>button{margin-block:8px}.form-stack>section{margin-top:30px}
.checkbox{display:flex;gap:12px;align-items:flex-start;line-height:1.5;font-size:1rem;padding-block:12px}
.product-info h3,.detail-copy h1,.hero-copy h1,.staff-main h1{overflow-wrap:anywhere}.staff-main input[type=file]{padding:10px;overflow:hidden}
.auth-card .button{width:100%}.auth-card>p:last-child{font-size:.875rem;margin-bottom:0;margin-top:22px}

.current-logo{display:flex;flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:12px;font-size:.875rem}

/* Keep long names and enlarged text inside the reading column. */
h1,h2,h3,p,dd,.product-cell strong{overflow-wrap:anywhere}
@media(max-width:600px){.hero h1{font-size:clamp(2.6rem,12vw,3.05rem);line-height:1.12;letter-spacing:-.07rem}.hero h1 br:nth-child(2){display:initial}}

/* Two readable product cards per row, including smaller phones. */
.demo-banner { background:var(--line); }
.discovery-note p { color:var(--ink); }
.discovery-note .button.secondary { background:var(--surface); }
.product-info h3 { font-weight:700; }
@media (max-width:600px) {
  .catalog-section { padding-top:16px; }
  .catalog-section .breadcrumb,.catalog-heading .eyebrow,.catalog-heading>p { display:none; }
  .catalog-heading { margin-bottom:16px; }
  .catalog-heading h1 { font-size:2.125rem; }
  .catalog-controls { padding-top:0; }
  .filters { margin-top:8px; }
  .filters summary { min-height:48px; padding-block:8px; }
  .results-line { padding-block:16px; }
  .product-grid {
    /* At most two columns; larger user-selected text can reflow to one. */
    grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8.5rem,calc((100% - 12px)/2))),1fr));
    gap:30px 12px;
  }
  .product-picture { aspect-ratio:1/1.12; }
  .product-picture .image-placeholder { min-height:0; padding:12px; font-size:.875rem; }
  .product-info { padding-top:12px; }
  .product-info h3 { font-size:1.125rem; line-height:1.4; margin-bottom:8px; }
  .product-category { text-transform:none; letter-spacing:0; margin-bottom:6px; }
  .product-info .price { font-size:1.125rem; line-height:1.5; margin-bottom:4px; }
  .product-info .availability-text { font-size:.875rem; line-height:1.5; }
  .product-picture .card-arrow,.product-picture .availability { display:none; }
}
@media (max-width:360px) {
  .content-width,.header-inner { width:calc(100% - 32px); }
}

/* Supplied Lenoa identity; the original mark pixels are never altered. */
h1,h2{letter-spacing:0;line-height:1.22}
.hero h1{letter-spacing:0;line-height:1.15}
.product-info h3{font-family:var(--font)}
.product-category{text-transform:none;letter-spacing:0}
.brand-mark{display:inline-flex;align-items:center;gap:10px;min-height:54px;flex:0 0 auto;text-decoration:none;line-height:1}
.brand-artwork{display:flex;flex:0 0 auto;align-items:center;gap:8px;background:var(--artwork-background)}
.brand-lotus{display:block;flex:0 0 32px;width:32px;height:32px;object-fit:contain}
.brand-wordmark-window{position:relative;display:block;flex:0 0 134px;width:134px;height:54px;overflow:hidden}
.brand-wordmark-window img{position:absolute;left:50%;top:50%;width:194px;height:194px;max-width:none;transform:translate(-50%,-50%)}
.brand-upload{display:block;flex-shrink:0;width:auto;height:64px;max-width:190px;object-fit:contain}
.header-inner nav{flex-wrap:wrap;justify-content:flex-end}
.footer-inner .brand-mark{align-self:flex-start}
.footer-socials{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.footer-socials a{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;border:1px solid var(--primary);border-radius:50%;color:var(--primary);text-decoration:none}
.footer-socials a:hover{background:var(--primary);color:var(--on-primary)}
.footer-socials svg{display:block;flex-shrink:0}
@media(max-width:600px){.hero h1{font-size:clamp(2.2rem,10.6vw,2.8rem);letter-spacing:0;line-height:1.19}.brand-upload{height:54px;max-width:170px}.header-inner{gap:12px}.product-info h3{font-size:1.125rem;line-height:1.4}.product-info .price{font-size:1.125rem}.product-info .availability-text{font-size:.875rem}}
@media(max-width:380px){.header-inner .brand-lotus{display:none}.header-inner nav{column-gap:10px}.header-inner nav a{gap:7px}}

/* A centered, easy-to-find entry into the catalog at every screen width. */
.hero-action{display:flex;justify-content:center}
.hero-copy .hero-catalog-link{width:fit-content;min-width:min(100%,210px);max-width:100%;font-size:1.0625rem}
.hero-copy .soft-note{margin-inline:auto;text-align:center}

/* General contact stays separate from the cart's purchase consultation. */
.whatsapp-float{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:20;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:12px 20px;border:1px solid var(--on-primary);border-radius:40px;background:var(--primary);color:var(--on-primary);box-shadow:0 3px 14px #0002;font-size:1rem;font-weight:600;line-height:1.4;text-decoration:none}
.whatsapp-float svg{flex-shrink:0}
.whatsapp-float:hover{filter:brightness(.94)}
.has-whatsapp-contact .site-footer{padding-bottom:calc(94px + env(safe-area-inset-bottom))}
@media(max-width:600px){.whatsapp-float{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));min-height:52px;padding:11px 16px;font-size:.9375rem}}
@media print{.whatsapp-float{display:none}.has-whatsapp-contact .site-footer{padding-bottom:28px}}

/* A browser-local bag for a single, customer-sent WhatsApp consultation. */
[hidden]{display:none!important}
.bag-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:52px;margin-left:auto;color:var(--primary);font-size:1rem;text-decoration:none;flex-shrink:0}
.bag-link>svg{width:24px;height:24px;flex-shrink:0}
.bag-count{display:grid;place-items:center;min-width:25px;min-height:25px;padding:2px 5px;border-radius:20px;background:var(--primary);color:var(--on-primary);font-size:.8125rem;line-height:1.3;font-weight:700}
.bag-add-quantity{max-width:155px;margin-bottom:16px}
.add-to-bag .inquiry-button{gap:14px}
.add-to-bag [data-bag-add-status]{font-size:1rem;color:var(--primary);font-weight:700}
.button:disabled{cursor:not-allowed;opacity:.65}
.bag-section{padding-block:28px 60px;min-height:60vh}
.bag-heading{max-width:740px;margin:24px 0 32px}
.bag-heading .eyebrow{margin-bottom:12px}
.bag-heading h1{margin-bottom:14px}
.bag-heading>p:last-child{color:var(--muted);font-size:1.0625rem;margin-bottom:0}
.bag-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:40px}
.bag-count-label{font-size:1rem;color:var(--muted);margin-bottom:18px}
.bag-items{list-style:none;margin:0;padding:0}
.bag-item{display:grid;grid-template-columns:110px minmax(0,1fr);gap:22px;padding:24px 0;border-top:1px solid var(--line)}
.bag-item:last-child{border-bottom:1px solid var(--line)}
.bag-item-image{aspect-ratio:1/1.15;align-self:start;display:flex;align-items:center;justify-content:center;background:var(--line);border-radius:4px;overflow:hidden}
.bag-item-image img{width:100%;height:100%;object-fit:contain;background:var(--ivory)}
.bag-item-image span{font-size:.875rem;padding:10px;overflow-wrap:anywhere;text-align:center;color:var(--ink)}
.bag-item-details{min-width:0}
.bag-item h2{font-family:var(--font);font-size:1.188rem;font-weight:700;line-height:1.4;margin-bottom:7px}
.bag-item h2 a{text-decoration:none}
.bag-item h2 a:hover{text-decoration:underline}
.bag-item-sku{font-size:.875rem;overflow-wrap:anywhere;color:var(--muted);margin-bottom:8px}
.bag-item-price{font-size:1rem;margin-bottom:12px}
.bag-item-unavailable{font-size:1rem;color:var(--primary)}
.bag-item-controls{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap}
.bag-item-quantity label{font-size:.875rem}
.bag-item-quantity input{width:88px;min-height:48px;font-size:1.0625rem}
.bag-item-controls .plain-button{min-width:48px;min-height:48px;font-size:.9375rem}
.bag-summary{position:sticky;top:24px;padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:5px}
.bag-summary h2{font-size:1.65rem;line-height:1.3;margin-bottom:18px}
.bag-subtotal{font-size:1.125rem;font-weight:700;margin-bottom:12px}
.bag-summary-help{font-size:.9375rem;color:var(--muted);line-height:1.6;margin-block:14px}
.bag-summary-help:last-child{margin-bottom:0}
.bag-clear-notice{padding:16px;background:var(--ivory);border-left:3px solid var(--primary);margin-block:22px 18px;font-size:1rem;line-height:1.5}
.bag-clear-notice strong{color:var(--primary)}
.bag-clear-notice p{margin:7px 0 0}
.bag-consult{width:100%;min-width:0;min-height:54px;gap:12px;font-size:1rem}
.bag-message-preview{border-block:1px solid var(--line);margin-block:20px;font-size:.9375rem}
.bag-message-preview summary{min-height:48px;padding-block:12px;cursor:pointer;color:var(--primary);font-weight:700}
.bag-message-preview p{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;line-height:1.6;padding-block:12px}
.bag-empty{padding:40px 20px;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:5px}
.bag-empty-icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 24px;border-radius:50%;background:var(--ivory);color:var(--primary)}
.bag-empty-icon svg{width:34px;height:34px}
.bag-empty h2,.bag-handoff h2{font-size:1.875rem}
.bag-empty p{max-width:440px;margin:0 auto 24px;font-size:1.0625rem}
.bag-notice,.bag-storage-notice{padding:18px 22px;background:var(--ivory);border:1px solid var(--primary);border-radius:5px;margin-block:20px;font-size:1rem}
.bag-notice p,.bag-storage-notice p{margin:0}
.bag-handoff{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:5px}
.bag-handoff>a{margin-right:18px}
@media(max-width:900px){.bag-layout{grid-template-columns:1fr;gap:30px}.bag-summary{position:static}.bag-summary h2{font-size:1.75rem}.bag-item{grid-template-columns:100px minmax(0,1fr)}}
@media(max-width:600px){.bag-section{padding-block:20px 40px}.bag-heading{margin-block:18px 26px}.bag-heading h1{font-size:2.375rem}.bag-item{grid-template-columns:76px minmax(0,1fr);gap:14px;padding-block:20px}.bag-item h2{font-size:1.125rem}.bag-item-controls{gap:18px}.bag-summary{padding:20px 18px}.bag-summary h2{font-size:1.625rem}.bag-clear-notice{padding:14px 12px}.bag-consult{font-size:1rem;padding-inline:12px}.bag-empty{padding:30px 18px}.bag-empty h2{font-size:1.75rem}.bag-link{gap:6px;font-size:.9375rem}.bag-link>svg{width:22px;height:22px}}
@media print{.bag-link,.bag-consult,.bag-clear-notice,.bag-item-controls,.bag-storage-notice{display:none}.bag-summary{position:static}}

/* A separate console with the same readable Lenoa identity. */
.console-role{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-block:20px 0}
.console-role .eyebrow{margin:0}
.role-badge{display:inline-flex;border:1px solid var(--line);border-radius:22px;padding:6px 13px;font-size:.875rem;background:var(--surface);color:var(--primary)}
.staff-body .badge{background:var(--line);color:var(--ink)}
.staff-body .badge.published{background:#e1eee5;color:#225439}
.staff-body .badge.archived{background:var(--ivory);color:var(--muted)}
.staff-header .brand-mark-staff{flex-wrap:wrap}
.staff-header .staff-label{font-size:.875rem;letter-spacing:0;text-transform:none}
.staff-account a,.staff-account .plain-button{min-height:44px;display:inline-flex;align-items:center}
.staff-nav{column-gap:22px;row-gap:0}
.staff-nav a{font-size:1rem;min-height:48px}
.technical-addresses{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:12px 22px;font-size:1rem}
.technical-addresses dt{font-weight:700}.technical-addresses dd{margin:0;overflow-wrap:anywhere}
.staff-main .auth-card{margin-block:10px 30px}
.staff-body .staff-photo input[type=file]{font-size:1rem}
@media(max-width:600px){.staff-header>.content-width{gap:4px}.staff-account{column-gap:18px;row-gap:0}.staff-account a,.staff-account .plain-button{font-size:.9375rem}.staff-nav{column-gap:18px}.staff-nav a{font-size:.9375rem;min-height:46px}.console-role{padding-top:16px}.technical-addresses{grid-template-columns:1fr;gap:4px}.technical-addresses dd{margin-bottom:12px}}

/* Editable storefront copy must wrap even when it contains a long code or URL. */
.demo-banner,.hero-copy .eyebrow,.hero-intro,.soft-note,.hero-label,.site-footer p{overflow-wrap:anywhere}
