.catalog-heading{padding-bottom:45px;background:#e8eae4}.catalog-heading h1{font-size:clamp(44px,5vw,72px)}.catalog-heading>p:last-child{max-width:680px;margin:26px 0 0;color:#59635b}.catalog-body{padding-top:38px}.catalog-tools{display:grid;grid-template-columns:2fr 1.3fr 1fr;gap:24px;margin-bottom:28px}.catalog-tools label{display:flex;flex-direction:column;gap:8px;font-size:14px}.catalog-tools input,.catalog-tools select{font:inherit;width:100%;padding:13px 15px;border:1px solid #c9cfc5;background:white;color:#171e1b;min-height:49px;border-radius:0}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}.catalog-card{display:block;border-bottom:1px solid #d8dcd5;padding-bottom:20px}.catalog-card-image{aspect-ratio:3/4;background:#e9ebe6;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.catalog-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:transform .3s}.catalog-card:hover img{transform:scale(1.015)}.catalog-card-image span{position:absolute;bottom:10px;left:10px;background:#fffffff0;padding:5px 9px;font-size:11px}.catalog-card-meta{padding-top:14px}.catalog-card-meta small{font-size:11px;color:#6c776d;letter-spacing:.7px}.catalog-card h3{font-size:17px;font-weight:500;line-height:1.5;margin:8px 0}.catalog-card p{font-size:13px;margin:0;color:#697269}.catalog-result-bar{display:flex;justify-content:space-between;align-items:center;margin:20px 0 26px;color:#667165;font-size:14px}.reset-filter{border:0;border-bottom:1px solid #9ca996;background:none;font-size:13px;color:#171e1b}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:40px 0 0}.pagination a{border:1px solid #c9cfc5;min-width:42px;padding:8px 13px;text-align:center;font-size:14px}.pagination a[aria-current=page]{background:#171e1b;color:#fff;border-color:#171e1b}.pagination .ellipsis{padding:8px}.collection-entry{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:35px;padding-top:25px;border-top:1px solid #d8dcd5}.collection-entry p{font-size:14px;color:#687165;margin:0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;padding:24px 6%;font-size:12px;color:#697569}.product-detail{padding:10px 6% 65px;display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:start}.detail-figure{margin:0;background:#e9ebe6}.detail-figure>a{display:block}.detail-figure img{display:block;max-height:690px;width:100%;object-fit:contain}.detail-figure figcaption{position:static;display:block;color:#667064;font-size:12px;letter-spacing:0;padding:15px 20px;background:#f1f3ee;line-height:1.6}.detail-info{padding-top:12px}.detail-info h1{font-size:clamp(32px,3vw,48px);line-height:1.2;letter-spacing:-.5px;overflow-wrap:anywhere}.detail-intro{color:#606b5e;font-size:15px;line-height:1.8;margin:24px 0}.specs{margin:26px 0 30px}.specs>div{display:grid;grid-template-columns:115px 1fr;gap:20px;border-top:1px solid #d8dcd5;padding:13px 0;font-size:14px}.specs dt{color:#6c7669}.specs dd{margin:0}.product-article{padding:65px 6%;background:#e8eae4;display:grid;grid-template-columns:1fr 1fr;gap:10%}.product-article h2{font-size:42px}.product-article h3{font-size:19px;font-weight:500;margin:0 0 12px}.product-article p{font-size:15px;color:#606b5e;margin:0 0 28px}.archive-note{background:#eee7d9;color:#655137;padding:14px;font-size:13px}.related .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#catalog-empty{text-align:center;padding:60px 20px}#catalog-empty h2{font-size:32px}@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.related .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 12px}.catalog-tools{grid-template-columns:1fr 1fr;gap:15px}.search-label{grid-column:1/-1}.catalog-tools input,.catalog-tools select{font-size:16px}.catalog-card h3{font-size:14px}.catalog-card-meta small{font-size:10px}.catalog-card-image span{font-size:10px;padding:4px 7px;bottom:6px;left:6px}.collection-entry{display:block}.collection-entry .button{margin-top:20px}.product-detail{grid-template-columns:1fr;gap:30px}.detail-figure img{max-height:560px}.detail-info h1{font-size:36px}.product-article{grid-template-columns:1fr;gap:30px}.product-article h2{font-size:36px}.specs>div{grid-template-columns:100px 1fr;gap:15px}.catalog-heading{padding-top:40px}.catalog-heading h1{font-size:46px}}@media(max-width:400px){.catalog-tools{grid-template-columns:1fr}.search-label{grid-column:auto}}@media(prefers-reduced-motion:reduce){.catalog-card-image img{transition:none}}

.product-thumbnails{display:flex;gap:9px;overflow-x:auto;padding:14px 0;max-width:100%;}.product-thumbnails button{flex:0 0 70px;height:90px;padding:3px;border:1px solid #d8dcd5;background:white}.product-thumbnails button[aria-pressed=true]{border:2px solid #ad803c}.product-thumbnails img{width:100%;height:100%;object-fit:cover}.product-gallery{padding:45px 5%;border-top:1px solid #d8dcd5}.product-gallery h2{font-family:'Playfair Display',serif;font-size:36px;font-weight:400}.product-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product-gallery-grid a{border:1px solid #d8dcd5;background:white;padding:10px}.product-gallery-grid img{width:100%;height:300px;object-fit:contain;background:#f4f4ef}.product-gallery-grid span{display:block;font-size:13px;margin:12px 3px}.gallery-note{font-size:12px;color:#59645a}@media(max-width:700px){.product-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-gallery-grid img{height:220px}}

.collections .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:900px){.collections .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Owner-approved covers fill every 3:4 card without letterboxing or distortion. */
.catalog-card-image{width:100%;aspect-ratio:3/4}
.catalog-card-image img{object-fit:cover;object-position:center;background:#f4f4ef}.detail-figure>a>img{object-fit:contain;object-position:center}

/* Homepage function groups */
.home-function-nav{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 45px}.home-function-nav a{padding:12px 18px;border:1px solid #b8bfb4;font-size:15px}.home-function-nav a:hover,.home-function-nav a:focus-visible{background:#171e1b;color:white}.home-function-group{margin-top:50px;scroll-margin-top:110px}.home-function-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:25px}.home-function-heading h3{font-size:clamp(26px,3vw,36px);font-weight:500;margin:0 0 12px}.home-function-heading p{max-width:650px;color:#606b5e;font-size:15px;margin:0}.home-function-heading>.text-link{flex-shrink:0}.home-function-more{display:flex;justify-content:center;margin:28px 0 45px}#collection{scroll-margin-top:100px}@media(max-width:700px){.home-function-heading{display:block}.home-function-heading>.text-link{display:inline-block;margin-top:18px}.home-function-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-function-nav a{text-align:center;padding:12px 8px;font-size:14px}.home-function-group{margin-top:38px}}

/* Consistent 3:4 product gallery frames, matching catalog covers. */
.product-gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;object-position:center}.product-gallery-grid a{min-width:0}.detail-figure img[src*="/guong-ghep-tuong-"]{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;object-position:center}

/* Wall-art previews fill the same portrait frame as other products. */
.catalog-card-image img[src*="/tranh-guong-"]{object-fit:cover;object-position:center;width:100%;height:100%}

/* Homepage: eight previews per function, two rows on desktop. */
.home-function-group .catalog-grid>.catalog-card:nth-child(n+9){display:none}
.home-frames .catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.home-frames .catalog-grid>.catalog-card:nth-child(n+9){display:block}.home-frames .catalog-grid>.catalog-card:nth-child(n+11){display:none}@media(max-width:900px){.home-frames .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.frame-category .catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:900px){.frame-category .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Two bathroom art products: consistent portrait display, including selected images. */
.detail-figure>a>img[src*="/bath-art-nang-tien-ca-mr-hai-"],.detail-figure>a>img[src*="/bath-art-con-duong-que-toi-"]{width:100%;height:auto;max-height:none;aspect-ratio:3/4;object-fit:contain;object-position:center;background:#e8e0d4}

/* Product details and purchase information belong below the image at every width.
   Zero minimum tracks keep long thumbnail strips inside their own scroll area. */
.product-detail{grid-template-columns:minmax(0,1fr);gap:28px;padding-bottom:28px}
.product-detail>.detail-figure,.product-detail>.detail-info{min-width:0;width:100%;max-width:100%}
.product-detail>.detail-info{padding-top:0}
.detail-figure>a,.product-thumbnails{min-width:0;max-width:100%}
.detail-info .approved-price-offer,.detail-info .actions{min-width:0;max-width:100%}
.detail-info .specs>div{grid-template-columns:minmax(100px,150px) minmax(0,1fr)}
.detail-info .specs dd,.detail-info .actions a{min-width:0;overflow-wrap:anywhere}
.detail-info .actions a{max-width:100%;white-space:normal}
.product-detail+.purchase-card-actions{padding:0 6% 40px}
.product-detail+.purchase-card-actions .purchase-cta{width:auto;min-width:min(100%,280px);max-width:100%;white-space:normal}
@media(max-width:700px){.product-detail{gap:24px}.detail-info .specs>div{grid-template-columns:minmax(80px,100px) minmax(0,1fr);gap:15px}.product-detail+.purchase-card-actions .purchase-cta{width:100%}}
