@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@600;700&display=swap');
/* Strong display typography; reading and form text keep DM Sans. */
.poster-title,.hero-cinematic h1,.content-section h2,main h2,dialog h2,.duel-score>span,.duel-score>strong{font-family:'Oswald','Arial Narrow',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:-.025em;line-height:1.08}
.poster-title>span{font-size:clamp(27px,3.5vw,52px);font-weight:600;letter-spacing:.03em}
.poster-title>strong{font-size:clamp(40px,5.4vw,80px);font-weight:700;margin-top:4px}
.poster-title i{font-family:'DM Sans',sans-serif}
.hero-cinematic h1{font-size:clamp(40px,4.5vw,66px)}
.primary{font-weight:700;min-height:48px}.primary:disabled:hover{transform:none}
.product-info h3{font-weight:700}.product-info .text-link{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:760px){
 html{scroll-padding-top:20px}header{height:72px;padding:0 5%;gap:12px}.brand{font-size:20px;white-space:nowrap}.brand-icon{margin-right:7px}.header-cta{font-size:12px;line-height:1.25;text-align:right;max-width:105px;min-height:44px;display:flex;align-items:center}
 .hero-cinematic .duel{height:470px}.duel-art{width:130%;left:-15%;top:42px;height:auto;object-fit:contain}.hero-cinematic .duel-kicker{top:18px;font-size:9px;letter-spacing:1.8px}
 .poster-title{top:57%;letter-spacing:0}.poster-title>span{font-size:22px}.poster-title>strong{font-size:37px;margin-top:3px}
 .duel-score{bottom:92px;gap:5px}.duel-score>span{font-size:21px}.duel-score>strong{font-size:50px;letter-spacing:-2px}.duel-score small{font:700 9px 'DM Sans',sans-serif;letter-spacing:1px}
 .hero-cinematic .duel-bottom{padding:0 5% 16px}.hero-cinematic .duel-bottom p{font-size:11px;line-height:1.5;margin-top:10px}.art-credit{top:35px}
 .hero-cinematic .hero-copy{padding:28px 6% 36px}.hero-cinematic h1{font-size:42px;line-height:1.1;letter-spacing:-1px}.hero-cinematic .hero-copy>p{font-size:16px}.hero-actions{flex-direction:column;width:100%}.hero-actions .primary{width:100%;justify-content:space-between;gap:10px;padding:16px!important;font-size:14px}.hero-actions .text-link{min-height:44px;display:flex;align-items:center}.hero-benefits{gap:12px;font-size:12px}
 .content-section{padding:42px 5%}.content-section h2,main h2{font-size:35px;letter-spacing:-.5px}.section-heading{margin-bottom:24px}.section-heading>p{font-size:14px}
 main{padding:40px 5%;gap:26px;min-height:0}.viewer{order:-1;min-height:350px}.viewer-top{padding:18px;font-size:10px}.stage{min-height:235px}.tilt{width:87%}.viewer-bottom{padding:0 14px 20px}.viewer-bottom p{font-size:12px}#flip{min-height:48px}
 .editor .intro{font-size:16px;max-width:none}.theme{min-height:112px}.theme strong{font-size:14px}.theme small{font-size:12px}.field-label,legend{font-size:15px}#name,form input:not([type=checkbox]),textarea{font-size:16px;min-height:48px}.upload{min-height:72px;font-size:15px}.purchase{min-height:54px}.purchase-price small{font-size:12px}.physical-perk{font-size:13px}
 .phone-row{flex-direction:column}.phone-row .primary{font-size:15px;min-height:50px}.consent{font-size:13px}.consent input{width:22px;height:22px}.faq-items summary{font-size:16px;line-height:1.5}.faq-items p{font-size:15px}dialog{padding:28px 20px;max-height:90dvh}.order-summary{gap:12px}.dialog-close{min-width:44px;min-height:44px;top:4px;right:4px}
 .color-lab{top:auto;bottom:16px;right:12px;display:flex;flex-direction:column-reverse;align-items:flex-end}.color-toggle{min-height:44px}.color-lab #color-panel{margin:0 0 10px;max-height:calc(100dvh - 100px)}
}
@media(max-width:480px){
 .product-grid{grid-template-columns:1fr;gap:20px}.product-art{height:230px}.mini-card{width:78%;max-width:320px}.mini-title{font-size:18px}.mini-number{font-size:42px}.mini-logo{width:25px;height:25px}.mini-owner{font-size:9px}.product-format{font-size:10px}.product-info{padding:18px}.product-info h3{font-size:18px}.product-info p{font-size:14px;min-height:0;margin-bottom:14px}.product-info strong{font-size:22px}.product-info button{font-size:14px}.product-info>div{flex-wrap:nowrap}.physical-visual{min-height:290px}.sample-pvc>span{font-size:20px}
}
@media(max-width:360px){.brand{font-size:18px}.header-cta{font-size:11px}.hero-cinematic .duel{height:450px}.poster-title{top:53%}.poster-title>strong{font-size:32px}.duel-score>strong{font-size:44px}.hero-cinematic h1{font-size:37px}.product-art{height:205px}.hero-actions .primary{font-size:13px}.hero-actions .primary span{padding-left:10px}}
.mobile-review{display:none}
@media(max-width:760px){
 .hero-cinematic .duel{height:410px}.poster-title{top:53%;background:#10141470;padding:8px 14px;border-radius:4px}.poster-title>span{font-size:17px}.poster-title>strong{font-size:29px}.duel-score{bottom:80px}.duel-score>strong{font-size:43px}.duel-score>span{font-size:18px}.duel-score small{font-size:9px}
 .hero-cinematic .hero-copy{padding:22px 6% 24px}.hero-cinematic h1{font-size:36px;margin:12px 0}.hero-cinematic .hero-copy>p{font-size:15px;line-height:1.5;margin:12px auto 18px}.hero-cinematic .hero-actions{gap:8px}.hero-benefits{margin-top:12px!important}
 .mobile-review{display:block;width:100%;min-height:48px;padding:12px 16px;border:1px solid #ffffff55;border-radius:8px;background:#ffffff09;color:#fff;font:600 15px 'DM Sans',sans-serif;cursor:pointer;margin:16px 0 0}.delivery-mode .mobile-review{display:none}
 .viewer,.editor{scroll-margin-top:16px}.viewer-bottom .mobile-review{margin-top:12px}.editor:focus-within~.color-lab{display:none}
 .color-toggle{width:44px;height:44px;overflow:hidden;font-size:0;padding:10px;gap:0}.color-toggle i{flex-shrink:0}.color-lab{bottom:max(12px,env(safe-area-inset-bottom))}.color-lab:has(#color-panel:not([hidden])) .color-toggle{width:auto;font-size:13px;gap:8px}
 body:has(input:focus,textarea:focus) .color-lab{display:none}.purchase{scroll-margin-bottom:85px}footer{padding-bottom:80px}
 dialog{width:calc(100% - 24px);max-width:480px;max-height:calc(100dvh - 24px);padding:44px 18px 24px}.order-summary .promo-price{flex-shrink:0}.order-summary>div{overflow-wrap:anywhere}.order-summary .promo-price small{font-size:10px}.checkout-footnote{font-size:12px}
 .hero-actions .primary{flex-wrap:wrap}.hero-actions .cta-price{margin-left:auto}.primary:active,#flip:active{transform:translateY(1px)}
}
@media(max-width:360px){.hero-cinematic .duel{height:395px}.poster-title{top:50%}.poster-title>strong{font-size:26px}.duel-score>strong{font-size:39px}.hero-cinematic h1{font-size:33px}.hero-actions .primary{font-size:12px}.themes{gap:8px}.theme{padding:10px}.theme strong{font-size:13px}.theme small{font-size:11px}}
