.alatan-catalog { background: #f5f5f5; }
.alatan-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.alatan-filters label { display:block; min-width:0; font-size:13px; font-weight:700; color:#202020; }
.alatan-site .alatan-filters input,.alatan-site .alatan-filters select { display:block; width:100%; min-width:0; min-height:48px; margin-top:7px; padding:11px 12px; border:1px solid #ccc; border-radius:4px; background:#fff; color:#202020; font:inherit; font-size:14px; font-weight:400; box-shadow:none; }
.alatan-site .alatan-filters input:focus,.alatan-site .alatan-filters select:focus { outline:2px solid #d71920; outline-offset:2px; }
.alatan-site .alatan-filter-help { font-size:12px; margin:16px 0; color:#555; }
.alatan-filter-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; margin:20px 0 30px; }
.alatan-site .alatan-action { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; border:1px solid #d71920; border-radius:4px; background:#d71920; color:#fff; font:inherit; font-size:14px; font-weight:700; line-height:1.5; text-decoration:none; cursor:pointer; }
.alatan-site .alatan-action:hover { background:#b81218; border-color:#b81218; color:#fff; }
.alatan-site .alatan-action:focus-visible { outline:3px solid #202020; outline-offset:3px; }
.alatan-site .alatan-action--outline { background:#fff; color:#202020; border-color:#aaa; }
.alatan-site #alatan-reset { color:#b81218; font-size:14px; text-decoration:underline; }
.alatan-site #alatan-result-count { margin:0 0 0 auto; font-size:13px; }
.alatan-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.alatan-product-card { min-width:0; background:#fff; border:1px solid #e5e5e5; display:flex; flex-direction:column; border-radius:6px; overflow:hidden; }
.alatan-product-card[hidden],.alatan-no-results[hidden] { display:none !important; }
.alatan-product-card__image { display:block; position:relative; background:#fff; aspect-ratio:4 / 3; overflow:hidden; border-bottom:1px solid #f0f0f0; }
.alatan-product-card__image img { display:block; width:100%; height:100%; object-fit:contain; margin:0; padding:12px; }
.alatan-product-card__image > span { position:absolute; bottom:8px; right:8px; background:rgba(255,255,255,.94); color:#555; font-size:10px; padding:3px 7px; border-radius:2px; }
.alatan-product-card__body { padding:24px; display:flex; flex:1; flex-direction:column; }
.alatan-site .alatan-product-category { font-size:11px; color:#666; margin:0 0 9px; }
.alatan-site .alatan-product-card h3 { font-size:21px; margin:0 0 22px; overflow-wrap:anywhere; }
.alatan-product-card h3 a { color:#202020; }
.alatan-product-card h3 a:hover { color:#b81218; }
.alatan-product-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:0; margin:0 0 24px; }
.alatan-product-stats div { min-width:0; }
.alatan-product-stats dt { font-size:11px; line-height:1.5; font-weight:400; color:#666; }
.alatan-product-stats dd { font-size:24px; font-weight:700; line-height:1.4; color:#202020; margin:4px 0 0; }
.alatan-product-stats dd span { font-size:13px; font-weight:400; }
.alatan-product-more { display:flex; justify-content:space-between; gap:10px; margin-top:auto; border-top:1px solid #eee; padding-top:18px; color:#b81218; font-size:13px; font-weight:700; }
.alatan-no-results { padding:40px; border:1px dashed #ccc; background:#fff; text-align:center; }
.alatan-no-results a { color:#b81218; font-weight:700; }
.alatan-product-page { padding:30px 0 70px; min-height:55vh; background:#fff; }
.alatan-breadcrumb { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; font-size:12px; color:#666; margin:0 0 36px; }
.alatan-breadcrumb a { color:#555; }
.alatan-product-layout { display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:start; }
.alatan-gallery { min-width:0; }
.alatan-gallery-main { display:block; aspect-ratio:4 / 3; border:1px solid #e5e5e5; background:#fff; border-radius:6px; overflow:hidden; }
.alatan-gallery-main img { display:block; width:100%; height:100%; margin:0; padding:16px; object-fit:contain; }
.alatan-gallery-thumbs { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.alatan-gallery-thumbs a { width:calc(25% - 8px); max-width:120px; aspect-ratio:4 / 3; display:block; border:2px solid #e5e5e5; border-radius:3px; background:#fff; overflow:hidden; }
.alatan-gallery-thumbs a[aria-current="true"] { border-color:#d71920; }
.alatan-gallery-thumbs img { width:100%; height:100%; object-fit:contain; display:block; padding:4px; margin:0; }
.alatan-site .alatan-photo-caption { font-size:11px; color:#666; margin-top:12px; }
.alatan-product-summary { min-width:0; }
.alatan-site .alatan-product-summary h1 { font-size:clamp(30px,3.4vw,44px); line-height:1.15; color:#202020; font-weight:700; letter-spacing:-.025em; margin:0 0 18px; overflow-wrap:anywhere; }
.alatan-rental-tag { display:inline-block; padding:5px 10px; margin:0 0 20px; border-radius:3px; color:#a10d12; background:#fff0f0; font-size:12px; font-weight:700; }
.alatan-site .alatan-product-description { font-size:15px; line-height:1.8; }
.alatan-product-summary .alatan-product-stats { background:#f5f5f5; border-radius:4px; padding:18px; margin:24px 0; }
.alatan-product-summary .alatan-product-stats dd { font-size:29px; }
.alatan-product-cta { display:flex; flex-wrap:wrap; gap:10px; }
.alatan-site .alatan-product-terms { font-size:12px; margin-top:18px; color:#666; }
.alatan-specifications { margin:54px 0 32px; }
.alatan-specifications h2 { font-size:28px; }
.alatan-site .alatan-machine-note { padding:18px 22px; border-left:3px solid #d71920; background:#f5f5f5; font-size:14px; }
.alatan-spec-table-wrap { max-width:850px; }
.alatan-spec-table { width:100%; border-collapse:collapse; font-size:14px; margin:24px 0; border:1px solid #e5e5e5; }
.alatan-spec-table th,.alatan-spec-table td { padding:13px 18px; text-align:left; border:0; border-bottom:1px solid #e5e5e5; vertical-align:top; }
.alatan-spec-table th { width:55%; background:#fafafa; font-weight:600; color:#444; }
.alatan-spec-table td { color:#202020; }
.alatan-site .alatan-spec-note { font-size:12px; color:#666; max-width:850px; }
.alatan-back-link { color:#b81218; font-size:14px; font-weight:700; }
@media (max-width:950px) {
  .alatan-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .alatan-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .alatan-product-layout { grid-template-columns:1fr; gap:26px; }
  .alatan-gallery-main { max-height:540px; }
}
@media (max-width:600px) {
  .alatan-product-grid,.alatan-filters { grid-template-columns:1fr; }
  .alatan-filters { gap:14px; }
  .alatan-site #alatan-result-count { flex-basis:100%; margin:0; }
  .alatan-product-card__body { padding:20px; }
  .alatan-product-cta { flex-direction:column; align-items:stretch; }
  .alatan-spec-table th,.alatan-spec-table td { padding:11px 12px; font-size:13px; overflow-wrap:anywhere; }
  .alatan-specifications { margin-top:30px; }
  .alatan-breadcrumb { margin-bottom:24px; }
}

/* Category landing pages reuse the verified responsive product cards. */
.alatan-category-page h1 { font-size:clamp(30px,4vw,48px); line-height:1.15; letter-spacing:-.025em; margin:0 0 24px; overflow-wrap:anywhere; }
.alatan-category-copy { display:grid; grid-template-columns:1.4fr 1fr; gap:40px; margin:28px 0; }
.alatan-category-copy > * { min-width:0; }
.alatan-category-selection { background:#f5f5f5; border-left:3px solid #d71920; padding:24px; }
.alatan-site .alatan-category-selection h2 { font-size:21px; line-height:1.35; margin:0 0 16px; }
.alatan-category-selection ul { margin:0; padding-left:20px; }
.alatan-category-selection li { margin:0 0 10px; }
.alatan-category-all { margin-top:24px; }
.alatan-related-categories { display:flex; flex-wrap:wrap; gap:12px 24px; border-top:1px solid #e5e5e5; margin-top:32px; padding-top:24px; }
.alatan-related-categories a { color:#b81218; font-size:14px; }
@media (max-width:800px) { .alatan-category-copy { grid-template-columns:1fr; gap:20px; } }
