/* Detail pages only. The existing home/header/card rules remain untouched. */
.detail-page{max-width:1188px;margin:30px auto 56px;padding:0 24px;display:grid;grid-template-columns:minmax(0,812px) 300px;gap:28px;align-items:start;color:#25332e;font-size:17px;line-height:1.8}
.detail-page .article-body{min-width:0;background:#fff;border:1px solid #dce2d8;border-radius:8px;padding:26px 25px 30px}
.detail-page .article-header{background:#fff;border:0;border-bottom:2px solid var(--accent);padding:0 0 22px;margin:0 0 24px}
.detail-page .article-header h1{font-size:32px;line-height:1.45;letter-spacing:.01em;margin:0 0 14px;overflow-wrap:anywhere}
.detail-page .article-header .eyebrow{font-size:13px;margin-bottom:10px;letter-spacing:.03em}
.detail-page .date{font-size:13px;line-height:1.65;color:#536258;margin:0}
.detail-page .article-body p{margin:0 0 24px;line-height:1.8}
.detail-page .article-body .lead{font-size:17px;line-height:1.8}
.detail-page .article-body h2{font-size:26px;line-height:1.5;margin:38px 0 20px;padding:13px 16px;background:var(--pale);border:0;border-left:4px solid var(--accent);border-radius:0 5px 5px 0;overflow-wrap:anywhere}
.detail-page .article-body h3{font-size:20px;line-height:1.55;margin:26px 0 15px;padding-left:12px;overflow-wrap:anywhere}
.detail-page .article-body li{margin:8px 0;line-height:1.8}
.detail-page .article-body ul,.detail-page .article-body ol{padding-left:1.5em;margin:18px 0 26px}
.detail-page .detail-facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:9px 16px;border-block:1px solid #d8e0d3;background:var(--pale);padding:15px 17px;margin:0 0 24px;font-size:16px;line-height:1.65}
.detail-page .detail-facts dt{font-weight:700;color:var(--accent)}
.detail-page .detail-facts dd{margin:0;min-width:0;overflow-wrap:anywhere;font-weight:700}
.detail-page .detail-facts dd small{display:block;font-size:13px;font-weight:400;color:#516056;margin-top:2px}
.detail-page .article-body .detail-disclosure{font-size:13px;color:#536258;margin:0 0 18px}
.detail-page .photo{margin:16px 0}.detail-page .photo img{width:100%;height:auto;max-height:740px;object-fit:contain;background:white}
.detail-page .product .photo img{max-height:580px}.detail-page .product .photo{margin-bottom:0}
.detail-page .gallery{gap:14px}.detail-page .gallery .photo{margin:6px 0}.detail-page .gallery .photo img{aspect-ratio:auto;max-height:500px;object-fit:contain}
.detail-page figcaption,.detail-page .small{font-size:14px;line-height:1.7;color:#526158}.detail-page .credit{font-size:12px;line-height:1.6}
.detail-page .product{margin:24px 0;padding-top:4px}.detail-page .product>.small{margin-top:10px}.detail-page .photo figcaption{padding-top:6px}
.detail-page .buy-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 14px}
.detail-page .buy-buttons a{font-size:15px;line-height:1.55;padding:12px;min-height:48px;word-break:normal;overflow-wrap:anywhere}
.detail-page .specs{font-size:16px;margin:24px 0;table-layout:auto}.detail-page .specs th{width:28%}.detail-page .specs th,.detail-page .specs td{padding:12px 14px;line-height:1.7;overflow-wrap:anywhere}
.detail-page .table-scroll{margin:24px 0;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:4px;scrollbar-gutter:stable}
.detail-page .comparison{min-width:600px;font-size:16px;line-height:1.7}.detail-page .comparison th,.detail-page .comparison td{padding:12px 14px;word-break:normal}
.detail-page .related{padding:18px 20px;margin:28px 0}.detail-page .related p{font-size:15px;line-height:1.75;margin:8px 0 0}
.detail-page .talk p{font-size:16px;margin:6px 0 0}.detail-page .qa p{margin:10px 0 16px}.detail-page .sources p{font-size:15px}
.detail-page .detail-aside{width:300px;min-width:0;padding:0;font-size:15px;line-height:1.65}
.detail-page .detail-aside h2{font-size:17px;line-height:1.6;border:0;border-bottom:2px solid var(--accent);padding:0 0 9px;margin:0 0 16px;color:var(--accent)}
.detail-page .detail-side-section{margin:0 0 28px}.detail-page .detail-side-card{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #dce2d8;border-radius:6px;overflow:hidden;margin:0 0 20px}
.detail-page .detail-side-card img{width:100%;height:auto;max-height:360px;object-fit:contain;background:#fff;padding:0}
.detail-page .detail-side-copy{padding:10px 12px 12px}.detail-page .detail-side-title{display:block;font-size:16px;line-height:1.65;font-weight:700;overflow-wrap:anywhere}
.detail-page .detail-side-price{display:block;color:var(--accent);font-weight:700;font-size:16px;line-height:1.65;margin-top:7px;overflow-wrap:anywhere}
.detail-page .detail-side-price small{display:block;font-size:12px;font-weight:400;color:#536258;margin-top:3px}
.detail-page .detail-side-card:hover .detail-side-title{text-decoration:underline;text-underline-offset:4px}
.detail-page .detail-side-card[hidden]{display:none!important}
.detail-page .detail-side-list>.detail-ad{margin:26px 0 24px}
.detail-page .detail-search{border:1px solid #cad4c6;background:#fff;border-radius:6px;padding:13px 14px;margin:0 0 26px}
.detail-page .detail-search summary{cursor:pointer;font-weight:700;color:var(--accent);font-size:16px}
.detail-page .detail-search label{display:block;font-size:14px;margin:15px 0 7px}
.detail-page .detail-search input{font:inherit;width:100%;min-width:0;padding:10px 11px;border:1px solid #9cab98;border-radius:4px;background:#fff;color:#25332e}
.detail-page .detail-search-status{font-size:13px;margin:10px 0 0;color:#536258}
.detail-page .detail-search-results{padding:0;list-style:none;margin:12px 0 0}.detail-page .detail-search-results li{border-top:1px solid #dce2d8;padding:10px 0;margin:0}.detail-page .detail-search-results a{display:block;font-size:15px;line-height:1.65}
.detail-page .detail-ad{width:300px;max-width:100%;margin:28px 0 0;padding:0;border:0}.detail-page .detail-ad-label{font-size:12px;color:#536258;margin:0 0 7px;letter-spacing:.03em}.detail-page .detail-ad-slot{width:300px;min-height:250px;background:#f4f5f1}.detail-page .detail-ad-caption{font-size:12px;line-height:1.6;color:#536258;margin:8px 0 0}
@media(max-width:1119px){.detail-page{max-width:828px;grid-template-columns:minmax(0,1fr);gap:30px}.detail-page .detail-aside{width:100%;max-width:760px;margin:auto}.detail-page .detail-side-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.detail-page .detail-side-card{margin:0}.detail-page .detail-current-card{max-width:360px}.detail-page .detail-search{max-width:100%}.detail-page .detail-ad{margin:28px auto 0}}
@media(min-width:768px) and (max-width:1119px){.detail-page .detail-side-list>.detail-ad{grid-column:1/-1;justify-self:center}}
@media(max-width:767px){.detail-page{display:block;margin:20px auto 38px;padding:0 16px;font-size:16.5px;line-height:1.8;background:#fff}.detail-page .article-body{padding:0;border:0;border-radius:0}.detail-page .article-header{padding:0 0 18px;margin-bottom:20px}.detail-page .article-header h1{font-size:26px;line-height:1.5;letter-spacing:0}.detail-page .article-body p{margin-bottom:18px}.detail-page .article-body .lead{font-size:16.5px}.detail-page .article-body h2{font-size:22px;line-height:1.55;padding:11px 12px;margin:30px 0 17px}.detail-page .article-body h3{font-size:19px;margin:24px 0 14px;padding-left:10px}.detail-page .detail-facts{padding:12px;gap:8px 12px;font-size:16px;margin-bottom:20px}.detail-page .photo{margin:20px 0}.detail-page .photo img,.detail-page .product .photo img{max-height:640px}.detail-page .gallery{grid-template-columns:minmax(0,1fr);gap:16px}.detail-page .gallery .photo img{max-height:560px}.detail-page figcaption,.detail-page .small{font-size:14px;line-height:1.7}.detail-page .buy-buttons{grid-template-columns:minmax(0,1fr);gap:9px}.detail-page .buy-buttons a{font-size:16px;min-height:48px;padding:12px}.detail-page .specs{display:block;border:1px solid #cdd4c9;font-size:16px;margin:20px 0}.detail-page .specs tbody{display:grid;grid-template-columns:minmax(5.5em,max-content) minmax(0,1fr);width:100%}.detail-page .specs tr{display:contents}.detail-page .specs th,.detail-page .specs td{display:block;width:auto;padding:10px 11px;line-height:1.7;font-size:16px;min-width:0;border-bottom:1px solid #cdd4c9}.detail-page .specs th{grid-column:1;max-width:10em}.detail-page .specs td{grid-column:2;overflow-wrap:anywhere}.detail-page .specs tr[data-detail-wide] th,.detail-page .specs tr[data-detail-wide] td,.detail-page .specs tr[data-full-width] th,.detail-page .specs tr[data-full-width] td{grid-column:1/-1;max-width:none}.detail-page .specs tr[data-detail-wide] th,.detail-page .specs tr[data-full-width] th{border-bottom:0;padding-bottom:3px}.detail-page .specs tr[data-detail-wide] td,.detail-page .specs tr[data-full-width] td{padding-top:5px}.detail-page .comparison{font-size:16px;min-width:600px}.detail-page .table-scroll{margin:20px 0}.detail-page .related{padding:15px;margin:24px 0}.detail-page .talk{gap:10px}.detail-page .talk>div{padding:11px 12px}.detail-page .talk p{font-size:16px;margin-bottom:0}.detail-page .article-aside{padding-top:28px}.detail-page .detail-side-list{display:block}.detail-page .detail-side-card{margin:0 0 20px}.detail-page .detail-current-card{max-width:none}.detail-page .detail-side-card img{max-height:420px}.detail-page .detail-side-title,.detail-page .detail-side-price{font-size:17px}.detail-page .detail-side-copy{padding:13px 14px}.detail-page .detail-search{padding:13px}.detail-page .detail-ad{margin-top:24px}}
@media(max-width:340px){.detail-page{padding-inline:10px}.detail-page .detail-facts{padding:10px;gap:8px}.detail-page .specs tbody{grid-template-columns:6em minmax(0,1fr)}}
.detail-page>.article-aside{padding-top:0}
@media(max-width:767px){.detail-page .photo{margin:12px 0}.detail-page .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-page .gallery .photo{margin:4px 0}.detail-page .product{margin:20px 0}.detail-page .product h3{margin-top:18px}.detail-page .buy-buttons{margin-top:8px}.detail-page .detail-side-copy{padding:10px 12px 12px}.detail-page .detail-side-price{margin-top:5px}.detail-page .detail-side-card{margin-bottom:16px}.detail-page>.article-aside{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.detail-page *{scroll-behavior:auto;animation:none;transition:none}}
@media(max-width:767px){.detail-page .article-body .specs th{white-space:normal}}
