/* Public product detail pages. Base site branding and header stay unchanged. */
.product-page{padding-top:32px}
.product-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:9px 12px;margin-bottom:32px;color:var(--muted,#56635b);font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.product-breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.product-breadcrumbs [aria-current]{color:var(--ink,#17231d)}
.product-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(28px,5vw,76px);align-items:start}
.product-page-photo{position:sticky;top:112px;min-width:0;background:#fff;border:1px solid var(--line,#dce2d9);border-radius:24px;padding:clamp(20px,3vw,40px)}
.product-page-photo img{display:block;width:100%;height:auto;max-height:480px;aspect-ratio:6/5;object-fit:contain}
.product-photo-empty{display:grid;place-content:center;min-height:290px;text-align:center;background:#f4f6f0;border-radius:16px;color:#485347}
.product-photo-empty span{font-size:24px;font-weight:800;letter-spacing:.06em}
.product-photo-empty p{font-size:15px;margin:14px 0 0}
.product-page-image-note{margin:22px 0 0;color:#52604f;font-size:12px;line-height:1.65}
.product-page-info{min-width:0;overflow-wrap:anywhere}
.product-page h1{font-size:clamp(26px,3vw,42px);line-height:1.16;letter-spacing:-.035em;margin:12px 0 16px}
.product-page .eyebrow{font-size:12px;line-height:1.6;color:#43523b}
.product-page-sku{font-size:14px;color:#52604f;margin:0 0 22px;line-height:1.6}
.product-page-description{font-size:16px;line-height:1.8;color:#344332}
.product-page-description p{margin:0 0 12px}
.product-page-temperature{padding:16px 18px;background:#f0f5e9;border-left:3px solid #4b6428;border-radius:0 10px 10px 0;font-size:14px;line-height:1.7;color:#34432c;margin:22px 0}
.product-page-conditions{padding:24px 0;border-block:1px solid var(--line,#dce2d9);margin-top:24px}
.product-page-conditions p{margin:8px 0;font-size:14px;line-height:1.65}
.product-page-conditions .product-page-price{font-weight:800;font-size:clamp(25px,3vw,32px);margin:0 0 10px;line-height:1.3;letter-spacing:-.02em}
.product-page-conditions .product-page-terms,.product-page-conditions .product-page-action-note{color:#52604f;font-size:13px;line-height:1.65}
.product-page-request{margin:18px 0 8px;max-width:100%;white-space:normal;text-align:left;line-height:1.5}
.product-page h2{font-size:21px;line-height:1.35;margin:30px 0 16px;letter-spacing:-.02em}
.product-page-specs dl{margin:0}
.product-page-specs dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line,#dce2d9);font-size:14px;line-height:1.7}
.product-page-specs dt{color:#52604f}
.product-page-specs dd{margin:0;color:var(--ink,#17231d)}
.product-page-list ul,.product-page-benefits ul{padding-left:20px;margin:0;font-size:15px;line-height:1.8}
.product-page-list li,.product-page-benefits li{margin:8px 0}
.product-page-back{display:inline-block;margin-top:28px;padding:10px 0;text-decoration:underline;text-underline-offset:4px;line-height:1.6;font-size:14px}
.product-page a:focus-visible{outline:3px solid #43601f;outline-offset:5px;border-radius:5px}
@media(max-width:760px){.product-page{padding-top:22px}.product-breadcrumbs{margin-bottom:24px}.product-page-grid{grid-template-columns:minmax(0,1fr);gap:28px}.product-page-photo{position:static;padding:24px}.product-page-photo img{max-height:320px}.product-page-specs dl>div{gap:12px}}
@media(max-width:380px){.product-page-specs dl>div{grid-template-columns:1fr;gap:4px}.product-page-request{width:100%;justify-content:space-between}.product-page-photo{padding:18px}}
@media print{.product-page-photo{position:static}.product-page-request,.product-page-back{display:none}.product-page-grid{gap:24px}}
