/* Pocket Companions product page template only. */
.product-template .detail-layout{align-items:center;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);column-gap:0}
.product-template .detail-layout>div:first-child{position:relative;z-index:2}
.product-template .detail-status{max-width:410px}
.product-template .detail-visual.product-isolated{border:0;background:transparent;min-height:0;aspect-ratio:1/1.05;overflow:hidden;width:108%;margin-left:-18%}
.product-template .detail-visual.product-isolated img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;transform:none}
.product-template .detail-disclaimer{text-align:center;font-size:12px;line-height:1.8;letter-spacing:.3px;margin:18px 0 0;color:#536179}
/* On wider phones, keep the introduction beside the product. Specifications follow both. */
@media(max-width:700px){
.product-template .detail-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:14px;row-gap:24px;align-items:center}
.product-template .detail-copy{display:contents}
.product-template .detail-intro{grid-column:1;grid-row:1;min-width:0;position:relative;z-index:2}
.product-template .detail-visual-group{grid-column:2;grid-row:1;min-width:0}
.product-template .detail-info{grid-column:1/-1;grid-row:2;min-width:0}
.product-template .detail h1{font-size:clamp(27px,5.7vw,36px);line-height:1.35;letter-spacing:.5px}
.product-template .detail-label{font-size:8px;letter-spacing:.3px;margin-bottom:18px;padding:7px 8px}
.product-template .detail-subtitle{font-size:14px;line-height:1.8}
.product-template .detail .description{font-size:12px;line-height:1.9;margin-bottom:0}
.product-template .detail-status{max-width:none;font-size:12px}
.product-template .detail-visual.product-isolated{aspect-ratio:1/1.08;width:112%;margin-left:-12%}
.product-template .detail-visual.product-isolated img{transform:none}
.product-template .detail-disclaimer{font-size:11px;margin-top:12px}
.product-template .product-specs{margin-top:0}
}
/* Narrow phones: introduction, product, then specifications and return link. */
@media(max-width:419px){
.product-template .detail-layout{grid-template-columns:minmax(0,1fr);row-gap:24px}
.product-template .detail-intro{grid-column:1;grid-row:1}
.product-template .detail-visual-group{grid-column:1;grid-row:2}
.product-template .detail-info{grid-column:1;grid-row:3}
.product-template .detail h1{font-size:36px}
.product-template .detail-subtitle{font-size:16px}
.product-template .detail-label{font-size:9px;margin-bottom:25px}
.product-template .detail-visual.product-isolated{width:100%;margin-left:0}
}
@media(min-width:1051px){.product-template .description{max-width:545px;width:calc(100% + 70px)}}

.product-specs{max-width:410px;margin:24px 0 0;padding:20px 0 0;border-top:1px solid var(--line)}
.product-specs h2{font-size:12px;letter-spacing:1.1px;color:#173b66;margin:0 0 15px}
.product-specs dl{margin:0;display:grid;grid-template-columns:135px 1fr;gap:12px 14px;font-size:12px;line-height:1.8}
.product-specs dt{color:#536179}.product-specs dd{margin:0;color:#173b66}
.product-specs .spec-note{font-size:10px;line-height:1.9;margin:15px 0 0;color:#68748a}
@media(max-width:700px){.product-specs{max-width:none}.product-specs dl{grid-template-columns:110px minmax(0,1fr);font-size:12px;gap:10px 10px}.product-specs .spec-note{font-size:10px}}

.product-template .detail h1 .title-unit{white-space:nowrap;color:inherit}
