/* Product pages (termek/<slug>.html), generated by tools/build-products.mjs. */
.product-main{padding:22px 7% 40px}
.product-breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 24px;padding:0;list-style:none;font-size:13px;color:#716457}
.product-breadcrumb li+li::before{content:'›';margin-right:6px}
.product-breadcrumb a{color:inherit}
.product-breadcrumb [aria-current]{color:var(--ink)}

.product-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:44px;align-items:start}

/* Gallery: thumbnails stacked vertically, the selected image large to their right. */
.product-gallery{display:flex;gap:14px;align-items:flex-start;position:sticky;top:20px}
.product-thumbs{display:flex;flex:none;flex-direction:column;gap:10px;width:84px;margin:0;padding:0;list-style:none}
.product-thumb{display:block;width:100%;padding:0;border:1px solid var(--line);background:var(--sand);cursor:pointer;opacity:.7;transition:opacity .15s,border-color .15s}
.product-thumb img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.product-thumb:hover{opacity:1}
.product-thumb[aria-pressed="true"]{opacity:1;border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.product-thumb:focus-visible{outline:3px solid #805b35;outline-offset:2px}
.product-stage{flex:1;min-width:0;border:1px solid var(--line);background:var(--sand)}
.product-stage img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}

.product-info .eyebrow{margin-bottom:10px;color:#716457}
.product-info h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,4vw,46px);margin:0 0 12px;letter-spacing:-.02em}
.product-lead{margin:0 0 18px;font-size:17px;color:#5c5248}
.product-price{margin:0 0 6px}
.product-price strong{font-size:24px}
.product-availability{display:flex;flex-wrap:wrap;gap:4px 10px;margin:0 0 20px;font-size:13px}
.product-availability>span:first-child{font-weight:600}
.product-availability.is-in_stock>span:first-child{color:#3f6b3a}
.product-availability.is-out_of_stock>span:first-child{color:#8a3b2e}
.product-lead-time{color:#716457}
.product-lead-time::before{content:"· ";}

.product-buy{display:flex;gap:12px;align-items:flex-end}
.product-qty{display:grid;gap:4px;font-size:12px;color:#716457}
.product-qty input{width:76px;min-height:44px;padding:0 10px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:15px}
.product-qty input:focus-visible{outline:3px solid #805b35;outline-offset:2px}
.product-buy .shop-add{flex:1;max-width:320px}
.product-basket-link{margin:12px 0 0;font-size:13px}
.product-basket-link a{color:inherit}

.product-section{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}
.product-section h2{margin:0 0 10px;font-size:13px;font-family:inherit;letter-spacing:.14em;text-transform:uppercase}
.product-section p{margin:0 0 10px}
.product-features{margin:0;padding-left:18px}
.product-features li{margin-bottom:4px}
.product-specs{display:grid;margin:0}
.product-specs div{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:7px 0;border-bottom:1px solid #eee4d8}
.product-specs dt{color:#716457}
.product-specs dd{margin:0}

.product-related{margin-top:56px}
.product-related h2{font-family:Georgia,'Times New Roman',serif;font-size:28px;margin-bottom:18px}
.product-related ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.product-related-card{display:flex;flex-direction:column;gap:6px;height:100%;border:1px solid var(--line);color:inherit;text-decoration:none;background:#fff}
.product-related-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--sand)}
.product-related-name{padding:0 14px;font-family:Georgia,'Times New Roman',serif;font-size:18px}
.product-related-price{padding:0 14px 14px;font-size:14px;color:#716457}
.product-related-card:hover .product-related-name{text-decoration:underline}
.product-related-card:focus-visible{outline:3px solid #805b35;outline-offset:3px}

@media(max-width:900px){
  .product-detail{grid-template-columns:1fr;gap:28px}
  .product-gallery{position:static}
  .product-related ul{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .product-main{padding:16px 22px 30px}
  .product-thumbs{width:60px;gap:8px}
  .product-specs div{grid-template-columns:110px 1fr}
  .product-related ul{gap:14px}
}
