/* All Products page: editorial layout inspired by the supplied reference image. */
body.px-catalog-page { background:#f4f0e7; color:#243127; }
.nara-products-hero { background:#102319; color:#f7f1e5; overflow:hidden; }
.nara-products-hero-inner { width:min(1440px,100%); min-height:205px; margin:0 auto; display:grid; grid-template-columns:1.15fr .85fr; align-items:stretch; }
.nara-products-hero-copy { padding:32px clamp(24px,4vw,64px) 28px; align-self:center; }
.nara-products-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 12px; color:#c6a66b; font-size:9px; letter-spacing:.22em; }
.nara-products-eyebrow span { display:block; width:22px; height:1px; background:#c6a66b; }
.nara-products-hero h1 { max-width:700px; margin:0; color:#f7f1e5; font-family:'DM Serif Display',Georgia,serif; font-size:clamp(30px,3.4vw,48px); font-weight:400; line-height:1.08; letter-spacing:-.025em; }
.nara-products-hero-copy > p:last-child { max-width:610px; margin:14px 0 0; color:rgba(247,241,229,.7); font-size:12px; line-height:1.7; }
.nara-products-hero-image { min-height:205px; background:linear-gradient(90deg,#102319 0%,rgba(16,35,25,.06) 35%),url('../images/products/incense-user-hero.jpeg') center 58%/cover no-repeat; }
.nara-products-catalog { padding:36px clamp(18px,2.6vw,42px) 32px; background:#f4f0e7; }
.nara-products-grid { width:min(1420px,100%); margin:0 auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:clamp(28px,5vw,76px); row-gap:34px; }
.nara-product-feature { display:grid; grid-template-columns:minmax(125px,.95fr) minmax(0,1fr); align-items:start; gap:clamp(16px,2.2vw,28px); min-width:0; }
.nara-product-photo { display:block; position:relative; overflow:hidden; aspect-ratio:1/1.04; background:#e2dccf; }
.nara-product-photo img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .6s ease; }
.nara-product-photo:hover img { transform:scale(1.04); }
.nara-product-copy { padding:4px 0 0; }
.nara-product-kicker { margin:0 0 5px; color:#7d806f; font-size:8px; font-weight:600; letter-spacing:.19em; line-height:1.5; }
.nara-product-copy h2 { margin:0; color:#1e3025; font-family:'DM Serif Display',Georgia,serif; font-size:clamp(21px,2vw,29px); font-weight:400; line-height:1.02; letter-spacing:-.02em; }
.nara-product-copy h2 a { color:inherit; text-decoration:none; }
.nara-product-copy h2 a:hover { color:#927446; }
.nara-product-subtitle { margin:12px 0 10px !important; padding-top:9px; position:relative; color:#6e766a; font-size:10px !important; font-style:italic; line-height:1.5 !important; }
.nara-product-subtitle:before { content:""; position:absolute; left:0; top:0; width:24px; height:1px; background:#c5a56a; }
.nara-product-copy > p:not(.nara-product-kicker):not(.nara-product-subtitle) { margin:0; color:#62675e; font-size:10px; line-height:1.7; }
.nara-product-link { display:inline-flex; align-items:center; gap:12px; margin-top:15px; padding-bottom:3px; color:#29372d; font-size:10px; text-decoration:none; border-bottom:1px solid transparent; }
.nara-product-link:hover { border-color:#bca06c; color:#856b3f; }
.nara-products-signoff { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px; padding:20px 16px 22px; background:#ebe6da; text-align:center; }
.nara-products-signoff span { width:24px; height:1px; background:#c9c7b8; }
.nara-products-signoff p { margin:0; color:#667466; font-size:9px; letter-spacing:.32em; }
.nara-products-signoff small { flex-basis:100%; margin-top:-5px; color:#858779; font-size:7px; letter-spacing:.2em; }
@media (min-width:1200px) { .nara-products-grid { row-gap:38px; } .nara-product-photo { aspect-ratio:1/1.02; } }
@media (max-width:760px) { .nara-products-hero-inner { grid-template-columns:1fr; } .nara-products-hero-copy { padding:28px 22px 22px; } .nara-products-hero-image { min-height:180px; background-position:center 58%; } .nara-products-catalog { padding:24px 16px; } .nara-products-grid { grid-template-columns:1fr; gap:28px; } .nara-product-feature { grid-template-columns:minmax(110px,.9fr) minmax(0,1fr); gap:16px; } .nara-product-copy h2 { font-size:24px; } .nara-product-copy > p:not(.nara-product-kicker):not(.nara-product-subtitle) { font-size:11px; } }
@media (max-width:390px) { .nara-product-feature { grid-template-columns:1fr; } .nara-product-photo { aspect-ratio:1.4/1; } .nara-product-copy { padding-top:0; } }
