.catalog-page{background:#f7f5ee;color:#202a24;overflow:hidden;font-family:'Be Vietnam Pro',Be,Arial,sans-serif}
.catalog-wrap{max-width:1512px;margin-inline:auto;padding-inline:40px}
.catalog-top{position:relative;z-index:10;border-bottom:2px solid #07482e}
.breadcrumb{display:flex;gap:9px;align-items:center;padding:28px 20px 55px;font-size:24px;font-weight:300}
.breadcrumb a{color:#58675d}.breadcrumb a:hover{text-decoration:underline;text-underline-offset:5px}
.toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 22px 22px;gap:20px}
.filter-buttons{display:flex;gap:20px;flex-wrap:wrap}.filter-buttons button,.sort-shell>button{border:1px solid #07482e;background:transparent;color:#07482e;padding:6px 10px;min-height:34px;font-size:14px;font-weight:400;line-height:1.4;border-radius:0;transition:background .2s,color .2s}
.filter-buttons .filter-main,.sort-shell>button,.filter-buttons button:hover,.filter-buttons button:focus-visible{background:#07482e;color:#fff}.filter-buttons .filter-main{padding-inline:13px}.filter-main span{display:inline-block;margin-right:4px}
.filter-control{position:relative}.filter-shortcut[aria-expanded=true]{background:#07482e;color:#fff}.filter-popover{position:absolute;z-index:12;top:calc(100% + 8px);left:0;width:290px;max-width:calc(100vw - 32px);padding:19px 20px 22px;border:1px solid #07482e;background:#f7f5ee;box-shadow:0 8px 22px #202a2426}.filter-popover[hidden]{display:none}#quick-price{width:350px}#quick-price .price-range{margin-top:17px}#quick-price .range-labels{gap:16px;font-size:14px;white-space:nowrap}#quick-color .color-options{flex-wrap:wrap;justify-content:flex-start;gap:18px 23px;padding:0}#quick-material{width:205px}#quick-material .check-row{margin:0}
.sort-area{display:flex;align-items:center;gap:72px;font-size:14px;font-weight:300;white-space:nowrap}.sort-shell{position:relative;z-index:8}.sort-shell>button{min-width:121px}.sort-chevron{display:inline-block;transform:rotate(180deg);margin-left:2px}.sort-shell>button[aria-expanded=true] .sort-chevron{transform:none}
.sort-menu{position:absolute;top:calc(100% + 6px);right:0;width:212px;padding:18px 21px;background:#fff;border:1px solid #202a24;box-shadow:0 7px 18px #0001}.sort-menu[hidden]{display:none}.sort-menu button{display:flex;justify-content:space-between;width:100%;border:0;background:transparent;text-align:left;padding:4px 0;color:#202a24;font-size:14px;line-height:1.3}.sort-menu button:hover{text-decoration:underline}.sort-menu button span{visibility:hidden}.sort-menu button[aria-current=true] span{visibility:visible}
.catalog-results{padding-top:40px}.catalog-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:48px;row-gap:50px}.product-card{grid-column:span 2;min-width:0}.product-card.wide-feature{grid-column:span 4}.product-card.full-card{grid-column:1/-1}.product-card[hidden]{display:none}
.product-photo{position:relative;background:#d9d9d9;aspect-ratio:445/450;overflow:hidden}.product-card.wide-feature .product-photo{aspect-ratio:939/450}.product-card.full-card .product-photo{aspect-ratio:1430/450}.product-photo>img{width:100%;height:100%;object-fit:contain;transition:transform .55s ease}.wide-feature .product-photo>img,.full-card .product-photo>img{object-fit:cover;object-position:center}
.product-photo{cursor:pointer}
.product-card:hover .product-photo>img{transform:scale(1.02)}.badge{position:absolute;top:19px;left:22px;z-index:1;background:#07482e;color:#fff;font:400 14px/1.4 'Be Vietnam Pro',sans-serif;padding:8px 15px}
.favorite{position:absolute;top:24px;right:30px;z-index:2;width:31px;height:31px;border:0;padding:0;background:transparent;color:#07482e}.favorite svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8}.favorite[aria-pressed=true] svg{fill:#07482e}
.product-meta{padding:17px 0 0}.product-name{font-size:18px;font-weight:400;line-height:1.4}.product-name:hover{text-decoration:underline;text-underline-offset:4px}.product-meta p{margin:0 0 14px;font-size:15px;font-weight:300;color:#4d5b50}.swatches{display:flex;gap:10px;margin-bottom:20px}.swatches button{width:42px;height:22px;border:0;background:var(--swatch);padding:0}.swatches button.selected{outline:1px solid #07482e;outline-offset:2px}.product-meta strong{display:block;font-size:18px;font-weight:400}
#empty-results{font-size:18px;padding:50px;text-align:center}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;padding:65px 0 64px}.pagination button{background:transparent;border:0;color:#344339;font-size:15px;padding:4px}.pagination button.current{border-bottom:1px solid #344339}.pagination button:disabled{opacity:.35;cursor:default}.pagination #prev-page,.pagination #next-page{font-size:24px}
.sofa-room{border-top:2px solid #07482e;padding:68px 80px 72px;display:grid;grid-template-columns:54% 38%;gap:8%;align-items:center}.sofa-room>img{width:100%;aspect-ratio:736/810;object-fit:cover}.sofa-room h2,.look-section h2{font:400 36px/1.35 Noto,Georgia,serif;margin:0 0 30px}.sofa-room p{font:300 18px/1.45 'Be Vietnam Pro',sans-serif;max-width:430px;margin:0 0 56px}.sofa-room .button{font-size:18px;min-height:0;padding:5px 12px}
.look-section{padding:0 54px 90px}.look-section h2{text-align:center;margin-bottom:70px}.look-image{position:relative;aspect-ratio:1364/784}.look-image>img{width:100%;height:100%;object-fit:cover}.hotspot{position:absolute;left:var(--x);top:var(--y);z-index:2;width:1px;height:1px}.hotspot.active{z-index:5}.hotspot-dot{position:absolute;left:-10px;top:-10px;width:20px;height:20px;border:1px solid #277b6a;border-radius:50%;background:#eef6ef;box-shadow:0 0 0 3px #fff6;z-index:2;padding:0;transition:opacity .18s,transform .18s}.hotspot-dot:hover{transform:scale(1.12)}.hotspot-card{position:absolute;left:18px;bottom:-9px;width:258px;min-height:134px;background:#fff;display:flex;gap:10px;padding:16px;color:#202a24;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;box-shadow:0 6px 18px #0002}.hotspot-card.card-left{left:auto;right:18px}.hotspot-card img{width:82px;height:100px;object-fit:cover;background:#e8eee8}.hotspot-card span{min-width:0;display:flex;flex-direction:column;gap:5px}.hotspot-card b{font:400 13px/1.3 'Be Vietnam Pro',sans-serif}.hotspot-card small{font:300 12px 'Be Vietnam Pro',sans-serif;color:#777}.hotspot-card strong{font:500 13px Noto,Georgia,serif}.mini-swatches{display:block;width:70px;height:9px;background:linear-gradient(90deg,#603b25 0 27%,transparent 27% 34%,#9b7651 34% 64%,transparent 64% 70%,#d4b998 70%)}
.hotspot:hover .hotspot-dot,.hotspot:focus-within .hotspot-dot,.hotspot.active .hotspot-dot{opacity:0}.hotspot:hover .hotspot-card,.hotspot:focus-within .hotspot-card,.hotspot.active .hotspot-card{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}.hotspot-card:hover{text-decoration:underline;text-underline-offset:3px}
.filter-layer{position:fixed;inset:0;z-index:60}.filter-layer[hidden]{display:none}.filter-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(237,244,238,.82);cursor:default}.filter-drawer{position:absolute;right:0;top:0;height:100%;width:min(484px,100vw);display:flex;flex-direction:column;background:#f7f5ee;box-shadow:-12px 0 35px #0001;color:#0b422c}
.filter-title{height:176px;padding:95px 38px 25px;display:flex;align-items:center;gap:28px;flex:none}.filter-title h2{font:500 28px/1.2 'Be Vietnam Pro',sans-serif;margin:0}.filter-title>span{font-size:29px;line-height:1}.filter-close{position:absolute;top:24px;right:28px;border:0;background:transparent;font-size:26px;line-height:1;padding:0;color:#587161}
.filter-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain}.tag-options{display:flex;gap:8px;overflow-x:auto;padding:10px 28px 20px;scrollbar-width:none;white-space:nowrap}.tag-options::-webkit-scrollbar{display:none}.tag-options button{padding:7px 15px;background:transparent;color:#07482e;border:1px solid #07482e;font-size:14px;line-height:1.3}.tag-options button[aria-pressed=true],.tag-options button:hover{background:#07482e;color:#fff}
.filter-scroll details{border-top:1px solid #07482e;padding:18px 28px 32px;color:#202a24}.filter-scroll details:last-child{border-bottom:1px solid #07482e}.filter-scroll summary{font:400 21px/1.4 'Be Vietnam Pro',sans-serif;list-style:none;cursor:pointer;display:flex;justify-content:space-between}.filter-scroll summary::-webkit-details-marker{display:none}.filter-scroll summary:after{content:'⌃';font-size:25px;line-height:1}.filter-scroll details:not([open]) summary:after{content:'⌄'}
.price-range{position:relative;margin:22px 12px 8px;height:20px;border-top:2px solid #07482e}.price-range input{position:absolute;top:-11px;left:-8px;width:calc(100% + 16px);height:20px;appearance:none;background:transparent;pointer-events:none;margin:0}.price-range input::-webkit-slider-thumb{appearance:none;width:11px;height:11px;border-radius:50%;background:#07482e;pointer-events:auto;cursor:grab}.price-range input::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:#07482e;pointer-events:auto;cursor:grab}.range-labels{display:flex;justify-content:space-between;font:400 16px Noto,Georgia,serif;color:#07482e}
.color-options{display:flex;justify-content:space-around;gap:18px;padding:18px 0 0}.color-options label{font:400 15px Noto,Georgia,serif;color:#07482e;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.color-options input{position:absolute;opacity:0}.color-options span{display:block;width:34px;height:34px;border-radius:50%;background:var(--color)}.color-options input:checked+span{outline:2px solid #07482e;outline-offset:3px}.check-row{display:flex;align-items:center;gap:15px;margin:12px 0 0 12px;font:400 16px Noto,Georgia,serif;color:#07482e;cursor:pointer}.check-row input{appearance:none;width:19px;height:19px;border-radius:50%;border:1px solid #202a24;margin:0}.check-row input:checked{background:#07482e;box-shadow:inset 0 0 0 4px #f7f5ee}.check-row span{color:#a0bbab}
.filter-actions{display:flex;gap:10px;padding:18px 28px;border-top:1px solid #07482e}.filter-actions button{flex:1;min-height:44px;border:1px solid #07482e;background:transparent;color:#07482e;font-size:14px}.filter-actions button:last-child,.filter-actions button:hover{background:#07482e;color:#fff}
body.filter-open{overflow:hidden}
@media(max-width:1100px){.catalog-grid{column-gap:24px}.catalog-wrap{padding-inline:30px}.sofa-room{padding-inline:45px}.breadcrumb{font-size:20px}.sort-area{gap:20px}.look-section{padding-inline:40px}}
@media(max-width:700px){.catalog-wrap{padding-inline:20px}.breadcrumb{font-size:15px;padding:24px 0 30px}.toolbar{padding:0 0 20px;align-items:flex-start;flex-direction:column}.filter-buttons{gap:8px}.filter-buttons button{font-size:12px;min-height:40px}.sort-area{width:100%;justify-content:space-between;font-size:13px}.catalog-results{padding-top:20px}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:28px}.product-card,.product-card.wide-feature{grid-column:span 1}.product-card.full-card{grid-column:1/-1}.product-photo,.product-card.wide-feature .product-photo{aspect-ratio:1}.product-card.full-card .product-photo{aspect-ratio:1.6}.badge{left:8px;top:8px;font-size:9px;padding:5px}.favorite{top:9px;right:9px;width:24px;height:24px}.favorite svg{width:21px;height:21px}.product-meta{padding-top:9px}.product-name,.product-meta strong{font-size:13px}.product-meta p{font-size:12px}.swatches{gap:5px;margin-bottom:8px}.swatches button{width:24px;height:13px}.pagination{padding-block:35px}.sofa-room{display:block;padding:35px 20px}.sofa-room>img{width:100%;aspect-ratio:736/810}.sofa-room>div{padding:25px 5px 0}.sofa-room h2,.look-section h2{font-size:26px}.sofa-room p{font-size:15px;margin-bottom:25px}.sofa-room .button{font-size:14px}.look-section{padding:0 20px 50px}.look-section h2{margin:0 0 28px}.look-image{aspect-ratio:1.25;overflow:visible}.look-image>img{object-fit:cover}.hotspot-card{width:185px;min-height:96px;padding:8px}.hotspot-card img{width:50px;height:73px}.hotspot-card b,.hotspot-card strong{font-size:10px}.hotspot-card small{font-size:9px}.hotspot-card.card-left{right:12px}.hotspot-dot{width:17px;height:17px;left:-8px;top:-8px}.filter-title{height:130px;padding:60px 25px 15px}.filter-title h2{font-size:23px}.filter-scroll details{padding-inline:24px}}
@media(prefers-reduced-motion:reduce){.product-photo>img,.hotspot-card,.hotspot-dot{transition:none}}
