/* Compact storefront. Scope previews to product cards; dialogs retain their size. */
.shop-intro{padding-block:42px 30px}
.shop-products{gap:22px;align-items:stretch;scroll-margin-top:24px}
#products>.shop-product{display:grid;grid-template-columns:40% minmax(0,1fr);grid-template-rows:auto auto auto 1fr;padding:18px 20px 16px;column-gap:18px;align-content:start}
#products .shop-product-copy{grid-column:2;grid-row:1;min-height:0;padding:8px 0 0}
#products .shop-product-copy .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:12px}
#products .shop-product-title{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:12px}
#products .shop-product-title h2{font-size:32px;line-height:1.1}
#products .shop-product-title h2 i{font-size:17px}
#products .shop-product-title .badge{font-size:11px;padding:5px 10px}
#products .shop-product-copy>p:last-child{font-size:14px;line-height:1.55}
#products .shop-scene.scene-realistic{grid-column:1;grid-row:1;height:268px;margin:0;min-width:0;align-self:start}
#products .scene-stage{position:absolute;width:390px;height:455px;left:50%;top:0;transform:translateX(-50%) scale(.51);transform-origin:top center}
#products .scene-detail{display:none}
#products .stage-assistant .shop-device{left:50%;transform:translateX(-50%) rotate(3deg)}
#products .stage-import .shop-device{width:222px;height:430px;right:20px;transform:rotate(3deg)}
#products .real-source-paper{width:155px;height:230px;left:8px;top:126px;padding:18px 12px;transform:rotate(-10deg)}
#products .real-source-paper h3{font-size:17px;margin-block:18px 14px}
#products .real-source-paper i{font-size:13px}
#products .source-brand{font-size:9px}
#products .scene-realistic figcaption{font-size:10px;line-height:1.3;padding:5px 8px 9px}
#products .shop-quota,#products .shop-pack-benefits{grid-column:1/-1;grid-row:2;min-height:112px;padding:16px 0;gap:10px;margin:0;font-size:13px;align-self:start}
#products .shop-quota strong{font-size:27px}
#products .shop-quota span{font-size:12px;line-height:1.4}
#products .shop-quota li{gap:4px}
#products .shop-pack-benefits{gap:7px}
.shop-product .shop-price-row{margin:0;padding:14px 0;gap:14px;flex-wrap:wrap}
#products .shop-price-row{grid-column:1/-1;grid-row:3;margin-top:0}
.shop-product .shop-price-row strong{font-size:30px}
.shop-product .shop-price-row .button{font-size:13px;min-height:44px;padding:12px 18px;gap:22px;flex:none}
#products .shop-terms{grid-column:1/-1;grid-row:4;align-self:start;min-height:0;padding:0;margin:0;font-size:12px;line-height:1.5}
.shop-products+#diary{padding-block:38px;gap:40px;grid-template-columns:.8fr 1.2fr}
#diary .shop-diary-image img{max-height:260px;width:100%;object-fit:contain}
#diary .shop-diary-image>.badge{left:12px;top:12px;font-size:11px;padding:5px 9px}
#diary .shop-diary-copy .eyebrow{margin-bottom:12px}
#diary .shop-diary-copy h2{font-size:32px;line-height:1.15}
#diary .shop-diary-copy h2 br{display:none}
#diary .shop-diary-copy>.lead{font-size:16px;line-height:1.5;margin:12px 0 8px}
#diary .shop-diary-copy>p:not(.eyebrow):not(.lead):not(.meta){font-size:14px;line-height:1.5}
#diary .shop-diary-copy .button{margin:16px 0 10px;padding:12px 18px;min-height:44px;font-size:13px}
#diary .shop-diary-copy .meta{font-size:12px;line-height:1.5}
#notebook{grid-template-columns:.7fr 1.3fr;scroll-margin-top:24px}
#notebook .notebook-gallery{padding:12px 12px 0;justify-content:center}
#notebook .notebook-zoom>img{height:250px;aspect-ratio:auto;object-fit:contain}
#notebook .notebook-view-controls{gap:10px;padding:10px 0 8px}
#notebook .notebook-view-controls button{width:60px}
#notebook .notebook-view-controls button>span{font-size:11px;padding:5px 2px 3px}
#notebook .notebook-artwork-link{margin-bottom:14px;font-size:11px}
#notebook .shop-notebook-content{padding:24px 28px 8px}
#notebook .shop-product-copy{padding:0;min-height:0}
#notebook .shop-product-copy .eyebrow{margin-bottom:12px;font-size:10px}
#notebook .shop-product-title{flex-direction:row;align-items:center;gap:14px;margin-bottom:12px}
#notebook .shop-product-title h2{font-size:32px;line-height:1.15}
#notebook .shop-product-title h2 br{display:none}
#notebook .shop-product-title .badge{margin:0;font-size:11px}
#notebook .shop-product-copy>p:last-child{font-size:14px;line-height:1.55}
#notebook .shop-pack-benefits{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;padding:16px 0;margin:0;font-size:13px;line-height:1.5}
#notebook .shop-pack-benefits li:before{margin-right:8px}
#notebook .shop-price-row{margin-top:auto}
.shop-paper-products+.shop-activation{margin-top:38px}
@media(min-width:801px) and (max-width:1080px){
 .shop-products{grid-template-columns:1fr}
 #products>.shop-product{grid-template-columns:240px minmax(0,1fr)}
 #products .shop-product-copy{padding-top:14px}
 #products .shop-product-title{flex-direction:row;align-items:center}
 #products .shop-quota,#products .shop-pack-benefits{grid-column:2;grid-row:2;min-height:0;padding-top:8px}
 #products .shop-scene.scene-realistic{grid-row:1/3}
 #notebook .shop-pack-benefits{grid-template-columns:1fr}
}
@media(max-width:800px){
 .shop-intro{padding-block:30px 24px}
 #products>.shop-product{grid-template-columns:210px minmax(0,1fr);padding:18px;column-gap:18px}
 .shop-products+#diary{gap:24px;grid-template-columns:1fr 1fr;padding-block:32px}
 #diary .shop-diary-copy h2{font-size:28px}
 #notebook{grid-template-columns:1fr 1.3fr}
 #notebook .shop-notebook-content{padding:20px}
 #notebook .shop-product-title{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
 #notebook .shop-product-title h2{font-size:28px}
 #notebook .shop-pack-benefits{grid-template-columns:1fr}
}
@media(max-width:600px){
 #products>.shop-product{grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;padding:18px}
 #products .shop-product-copy{grid-column:1;grid-row:1;padding:0}
 #products .shop-product-copy .eyebrow{margin-bottom:10px}
 #products .shop-product-title{flex-direction:row;align-items:center;gap:8px;margin-bottom:10px}
 #products .shop-product-title h2{font-size:29px}
 #products .shop-product-title h2 i{font-size:15px}
 #products .shop-product-title .badge{font-size:10px;padding:5px 8px}
 #products .shop-scene.scene-realistic{grid-column:1;grid-row:2;height:220px;margin-top:16px}
 #products .scene-stage{transform:translateX(-50%) scale(.43);top:0}
 #products .stage-assistant .shop-device{transform:translateX(-50%) rotate(3deg)}
 #products .scene-realistic figcaption{font-size:10px;padding-bottom:7px}
 #products .shop-quota,#products .shop-pack-benefits{grid-column:1;grid-row:3;min-height:0;padding:16px 0;gap:8px}
 #products .shop-quota{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 #products .shop-quota li{flex-direction:row;align-items:center;gap:9px}
 #products .shop-quota strong{font-size:26px;min-width:29px}
 #products .shop-quota span{font-size:12px}
 #products .shop-price-row{grid-column:1;grid-row:4}
 #products .shop-terms{grid-column:1;grid-row:5}
 .shop-product .shop-price-row .button{gap:12px;padding-inline:14px}
 .shop-products+#diary{grid-template-columns:1fr;gap:20px}
 #diary .shop-diary-image img{max-height:220px}
 #diary .shop-diary-copy h2{font-size:29px}
 #diary .shop-diary-copy>.lead{font-size:15px}
 #notebook{grid-template-columns:1fr}
 #notebook .notebook-gallery{padding-top:10px}
 #notebook .notebook-zoom>img{height:210px}
 #notebook .shop-notebook-content{padding:18px 18px 6px}
 #notebook .shop-product-title{flex-direction:row;align-items:center;flex-wrap:wrap}
 #notebook .shop-product-title h2{font-size:29px}
 #notebook .shop-pack-benefits{padding-block:14px;gap:7px}
}
@media(max-width:370px){
 #products>.shop-product{padding:16px}
 #products .shop-product-title{flex-wrap:wrap}
 #products .shop-product-title h2{font-size:28px}
 .shop-product .shop-price-row{gap:12px}
 .shop-product .shop-price-row .button{width:100%;justify-content:space-between}
 #notebook .shop-notebook-content{padding-inline:16px}
}
