:root{--ink:#1c1d20;--ink2:#292a2d;--cream:#f4f4f5;--paper:#fff;--line:#e7e7e9;--muted:#77797d;--gold:#1c1d20;--serif:'DM Sans','Noto Sans Khmer',sans-serif}
body{background:var(--cream);color:var(--ink)}
.wrap,.header-inner{width:min(100% - 48px,1180px)}
.header{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
.header-inner{height:72px}
.logo-symbol{display:grid;place-items:center;width:44px;height:44px;padding-right:4px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--sans);font-size:28px;font-weight:700;letter-spacing:-.12em}
.logo-symbol span{color:#fff}.logo-text{font-size:14px;letter-spacing:.06em}.logo-text small,.edition{color:var(--muted)}
.lang-toggle{background:var(--cream);color:var(--ink);border:1px solid var(--line);border-radius:100px;padding:9px 12px}
.lang-toggle:hover,.lang-toggle:focus-visible{border-color:var(--ink)}
.intro{background:#fff;color:var(--ink);padding:35px 0 26px}.kicker{color:var(--muted);letter-spacing:.16em}.kicker-line{background:var(--ink)}
.intro h1{font-weight:700}.intro p,.intro-count small{color:var(--muted)}.intro-count{font-family:var(--sans);font-weight:700;letter-spacing:-.06em;color:var(--ink)}
.catalog{padding-top:22px}.filter-chip{border:1px solid #e1e1e3;border-radius:100px;background:#fff;color:#686a6d;font-weight:600}.filter-chip.active{background:var(--ink);border-color:var(--ink)}
.search{height:44px;border-radius:100px;padding:0 15px}.search span,.result-count,.card-meta{color:var(--muted)}
.grid{gap:16px}.card{overflow:hidden;border-radius:20px;border:1px solid #ececed}.card:hover{box-shadow:0 13px 27px rgba(0,0,0,.09)}
.card-image{aspect-ratio:1.12;background:#e9e9eb}.card-index{border-radius:100px;background:rgba(28,29,32,.87)}
.card-body{padding:14px 14px 13px}.card h2{font-weight:700;min-height:42px;margin:9px 0 11px}.card-bottom{border-color:var(--line);color:var(--ink);font-weight:700}
.catalog-note{border-color:#dfdfe1;color:var(--muted)}.footer{background:#fff;color:var(--muted);border-top:1px solid var(--line)}
.mobile-nav{display:none}
.detail-top{color:var(--muted)}.back-link{color:var(--ink)}.detail-layout{gap:32px}
.gallery{align-self:start;overflow:hidden;border-radius:25px;background:var(--ink)}.hero-photo{aspect-ratio:1.15;background:#25262a}.photo-count{border-radius:100px;background:rgba(0,0,0,.74)}
.thumbs{padding:10px;gap:8px}.thumb{border-radius:10px;background:#35363a}.thumb.selected{border-color:#fff}.photo-note{color:#e5e5e5;padding:0 12px 12px;margin:0}
.detail-main>.kicker{color:var(--muted)}.detail-main h1{font-weight:700}.detail-lead{color:var(--muted)}
.price-box{border-radius:17px;background:#fff;padding:17px 18px}.price-box>span,.price-box small{color:var(--muted)}.price-box strong{color:var(--ink)}
.detail-section{border:0}.section-head>span{font-family:var(--sans);color:var(--muted);font-size:10px}.section-head h2{font-weight:700}
.specs{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.spec{display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-height:94px;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.spec>span{color:var(--muted)}.spec strong{font-weight:700}.disclaimer{color:var(--muted)}.detail-nav{border-color:#dbdbdc;color:var(--ink)}
.sticky-cta{border-color:var(--line);box-shadow:0 -6px 22px rgba(0,0,0,.05)}.sticky-inner{height:74px}.sticky-inner>div.sticky-actions{display:flex;flex-direction:row;gap:8px;min-width:auto}
.sticky-car small{color:var(--muted)}.share-button,.contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:11px 17px;border:0;border-radius:100px;font-weight:700}.share-button,.sticky-actions .share-button{background:var(--cream);color:var(--ink)}.share-button:hover,.sticky-actions .share-button:hover{background:#e9e9ea}.contact-button{background:var(--ink);color:#fff}.contact-button:hover{background:#000}
.photo-missing{background:#e9e9eb;color:var(--muted)}
@media(max-width:960px){.specs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 body[data-page=catalog]{padding-bottom:80px}.wrap,.header-inner{width:calc(100% - 28px)}.header-inner{height:64px}.logo-symbol{width:38px;height:38px;font-size:24px}.logo-text{font-size:13px}
 .intro{padding:24px 0 21px}.intro h1{font-size:29px}.intro p{font-size:11px}.intro-count{font-size:32px}
 .catalog{padding-top:13px}.toolbar{display:flex;flex-direction:column-reverse;align-items:stretch;gap:13px}.search{height:46px;margin:0;width:100%}.filter-scroll{margin:0 -14px;padding:0 14px 3px}.filter-chip{font-size:11px;padding:8px 13px}.result-count{margin:14px 0 10px}
 .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{border-radius:17px}.card-image{aspect-ratio:1.02}.card-index{padding:5px 7px}.card-body{padding:10px 10px 11px}.card h2{min-height:35px;margin:7px 0 8px;font-size:12px}.card-bottom{padding-top:7px}
 .catalog-note{margin-bottom:18px}.footer{padding:20px 14px}.mobile-nav{position:fixed;z-index:20;left:14px;right:14px;bottom:calc(10px + env(safe-area-inset-bottom));height:64px;display:flex;align-items:center;justify-content:space-around;border-radius:32px;background:var(--ink);color:#fff;box-shadow:0 9px 30px rgba(0,0,0,.23)}.mobile-nav a{min-width:70px;display:flex;align-items:center;flex-direction:column;gap:2px;font-size:9px;font-weight:600}.mobile-nav a>span:first-child{font-family:Arial,sans-serif;font-size:22px;line-height:1}
 .detail-top{height:50px;padding:0 14px;background:var(--ink);color:#b8b8ba}.back-link{color:#fff}.detail-layout{display:block;width:100%;padding-bottom:118px}.gallery{width:100%;border-radius:0 0 25px 25px}.hero-photo{aspect-ratio:1.1}.thumbs{padding:8px 14px 12px}.detail-main{position:relative;margin-top:-16px;padding:25px 14px 0;border-radius:24px 24px 0 0;background:var(--cream)}.detail-main h1{font-size:28px}.price-box{margin-top:19px}.specs{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.spec{min-height:94px;padding:10px;border-radius:12px}.spec>span{font-size:9px}.spec strong{font-size:11px}
 .sticky-inner{width:calc(100% - 28px);height:75px}.sticky-car{max-width:33%}.sticky-car strong{font-size:10px}.sticky-inner>div.sticky-actions{gap:6px}.share-button,.contact-button{min-height:42px;padding:10px 11px;font-size:10px}
}
@media(max-width:390px){.intro-count{font-size:27px}.card-body{padding:9px 8px}.card h2{font-size:11px}.card-meta{font-size:8px}.specs{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-car{max-width:29%}}
@media(prefers-reduced-motion:reduce){.card,.card-image img{transition:none}}
