/* Mobile adaptation: existing controls and pricing remain the source of truth. */
.mobile-wallet-options{display:none}
@media(max-width:800px){
 html{scroll-padding-top:80px}
 body{padding-bottom:env(safe-area-inset-bottom);overflow-x:clip}
 .shell{width:calc(100% - 36px)}
 .site-header{min-height:64px;height:auto;padding-block:16px;border-bottom:1px solid var(--line);gap:12px}
 .site-header .wordmark{font-size:22px;letter-spacing:-1px}
 .site-header nav{gap:10px;flex-wrap:nowrap}
 .site-header nav>a[href="#catalog"]{display:none}
 .site-header .language-switch{max-width:100px}
 .catalog{padding:24px 0 18px;margin:0;border-bottom:1px solid var(--line)}
 .catalog-heading{display:block;margin:0 0 14px}
 .catalog-heading h1{font-size:clamp(1.35rem,5.7vw,1.7rem);letter-spacing:-.04em;line-height:1.25;margin:0}
 .catalog-heading p{font-size:13px;line-height:1.5;margin:7px 0 0;color:#adb4a7}
 .catalog-filters{display:flex;gap:6px;overflow-x:auto;flex-wrap:nowrap;margin:0 0 12px;padding-bottom:3px;scrollbar-width:thin}
 .catalog-filters button{flex:none;min-height:44px;padding:8px 12px;font-size:12px;border-radius:24px}
 .catalog-products{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 0 10px;scrollbar-width:thin}
 .catalog-product{flex:0 0 112px;min-width:0;min-height:100px;padding:12px 10px!important;border-radius:12px;gap:6px;scroll-snap-align:start;text-align:left;justify-content:center}
 .catalog-product[hidden]{display:none}
 .catalog-product::before,.catalog-product::after{display:none!important}
 .catalog-product .catalog-brand{font-size:15px!important;line-height:1.2;letter-spacing:-.02em}
 .catalog-product .catalog-kind{font-size:12px;line-height:1.35;color:#a9afa2}
 .catalog-product .catalog-status{font-size:12px;margin-top:2px}
 .catalog-product[aria-pressed="true"]{background:#1d2817;border-color:var(--lime)}
 .shop{display:block;position:relative;padding:22px 0 30px;gap:0;min-height:0;margin:0}
 .product-stage{position:absolute;inset-block-start:24px;inset-inline-end:0;width:100px;height:66px;padding:0;min-height:0;background:none;border:0;overflow:visible}
 .product-stage::before,.product-stage::after{display:none}
 .product-stage .gift-card,.product-stage .gift-card[data-product]{width:100%;max-width:none;height:66px;min-height:0;aspect-ratio:1.52;transform:none;border-radius:10px;box-shadow:none;margin:0}
 .product-stage .card-content{padding:10px!important}
 .product-stage .card-top{gap:4px}
 .product-stage #card-brand{font-size:18px!important;line-height:1}
 .product-stage .card-japan,.product-stage .card-bottom{display:none}
 .product-stage .card-art{opacity:.65}
 .purchase{padding:0;min-width:0}
 .purchase .product-tag{font-size:12px;line-height:1.4;margin-bottom:7px;padding-right:110px;gap:6px}
 .purchase .japan-flag{width:15px;height:10px}
 .purchase h2{font-size:28px;line-height:1.1;letter-spacing:-.04em;margin:0 110px 10px 0}
 .purchase .product-title-suffix{display:block;font-size:12px;line-height:1.4;color:#b6beaf;letter-spacing:0;margin-top:5px}
 .product-uses{font-size:13px;line-height:1.6;margin:12px 0 3px}
 .product-description{font-size:12px;line-height:1.5;margin:0 0 20px;color:#aeb6a5}
 .amount-fieldset{margin:0;padding:0;border:0}
 .amount-fieldset legend{font-size:12px;margin-bottom:9px}
 .amount-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch}
 .amount-option{display:flex;min-width:0}
 .amount-face{flex:1;box-sizing:border-box;min-height:76px;height:100%;padding:14px 12px;border-radius:12px;display:flex;flex-direction:column;justify-content:center}
 .amount-top{font-size:22px;gap:5px;line-height:1.25}
 .radio-mark{width:15px;height:15px;flex:none}
 .amount-reference,.amount-caption{font-size:12px;line-height:1.4;margin-top:5px}
 .quantity-row{margin:14px 0;padding:0;min-height:44px;gap:10px}
 #quantity-label,#checkout-quantity-label{font-size:13px}
 .quantity-row small{font-size:12px;display:block;margin:3px 0 0;color:#aeb6a5}
 .quantity-picker{height:44px;min-height:44px;border-radius:10px}
 .quantity-picker button{width:44px;min-width:44px;height:44px;font-size:22px;padding:0}
 .quantity-picker output{min-width:28px;font-size:16px}
 .price-row{margin:18px 0 0;padding:14px 0 0;border-top:1px solid var(--line);align-items:center}
 .price-row>span{font-size:12px}
 .price-row p{margin:0;line-height:1.1}
 #order-price{font-size:32px;letter-spacing:-.04em}
 .currency{font-size:12px;margin-left:6px}
 .price-note{font-size:12px;margin:5px 0 12px;min-height:0}
 .purchase>.primary-button{margin:0;min-height:54px;border-radius:12px;font-size:15px}
 .preview-note{font-size:12px;line-height:1.5;margin:10px 0 0;text-align:center;color:#b5beab}
 .redemption,.brand-usage,.faq{margin:0;padding:26px 0;border-top:1px solid var(--line)}
 .redemption-heading h2,.faq>h2,.brand-usage>h2{font-size:20px}
 .redemption-steps{gap:18px}
 .site-footer{padding-top:24px}
 #checkout-dialog{box-sizing:border-box;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:24px 20px calc(28px + env(safe-area-inset-bottom));background:var(--bg);overflow-y:auto;overscroll-behavior:contain}
 #checkout-dialog::backdrop{background:#0b0d0be6}
 #checkout-dialog .close-button{position:absolute;top:14px;right:14px;width:44px;height:44px;z-index:2;background:var(--surface);border-radius:50%}
 #checkout-title{font-size:24px;line-height:1.3;margin:0 50px 22px 0;letter-spacing:-.035em}
 .checkout-item{gap:14px;margin:0 0 14px;padding-bottom:16px;border-bottom:1px solid var(--line)}
 .checkout-card{width:72px;height:48px;min-width:72px;border-radius:8px}
 .checkout-item-info strong{font-size:15px}
 .checkout-item-info span{font-size:12px}
 #checkout-form>.quantity-row{margin:10px 0 18px}
 #checkout-form .email-label{display:block;font-size:12px;margin:18px 0 8px}
 #checkout-form input[type=email],#checkout-form select{font-size:16px;min-height:48px;padding:12px;border-radius:10px;width:100%;box-sizing:border-box;background:#151a13;border-color:#343c2e}
 #checkout-form .field-help{font-size:12px;line-height:1.5;margin:7px 0 0;color:#aeb6a5}
 .mobile-wallet-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 8px}
 .mobile-wallet-options button{font:inherit;font-size:12px;min-height:48px;padding:10px 4px;border:1px solid #343c2e;border-radius:10px;background:var(--surface);color:var(--white)}
 .mobile-wallet-options button[aria-pressed=true]{border-color:var(--lime);background:#202d17;color:var(--lime)}
 .mobile-wallet-options button:disabled{opacity:.45}
 #connect-wallet{width:100%;min-height:52px;margin-top:12px;border-radius:10px;font-size:15px;border-color:var(--lime);color:var(--lime)}
 .checkout-total{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:13px}
 #checkout-total{font-size:24px}
 .checkout-policy{font-size:12px;line-height:1.5}
 #pay-button{min-height:54px;border-radius:12px;font-size:15px}
 .checkout-status{font-size:12px;line-height:1.6}
 .payment-details{font-size:12px}
 button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
}
@media(prefers-reduced-motion:reduce){.catalog-products{scroll-behavior:auto}}
@media(max-width:800px){
 .catalog-product{height:100px;min-height:100px;align-self:flex-start}
 .purchase #page-title{font-size:28px;margin-bottom:8px}
 .purchase .product-title-suffix{margin-left:0}
 .purchase #product-uses{font-size:13px;margin:10px 0 3px;line-height:1.5}
 .purchase #product-description{font-size:12px;margin:0 0 16px;line-height:1.5}
 .product-stage .gift-card .card-content{display:none}
 .catalog-products{padding-bottom:8px}
}
@media(max-width:800px){
 .catalog{padding-top:18px;padding-bottom:12px}
 .catalog-product{height:90px;min-height:90px}
 .catalog-product .catalog-kind{font-size:12px}
 .catalog-product .catalog-status{font-size:12px}
 .shop{padding-top:18px}
 .product-stage{inset-block-start:20px}
 .mobile-wallet-options{grid-template-columns:repeat(4,minmax(0,1fr))}
 #payment-wallet.mobile-wallet-select:not(.mobile-expanded){display:none}
}

@media(max-width:800px){
 .catalog-product{flex-basis:126px;height:104px;min-height:104px;padding:12px!important}
 .catalog-product .catalog-brand{font-weight:600}
 #checkout-form input::placeholder{color:#a7b19e}
 .checkout-card{padding:8px}
}
@media(max-width:800px){
 .catalog-product[data-product] .catalog-status{padding-right:0;min-height:0;line-height:1.4;width:auto;align-self:flex-start}
 .catalog-product{justify-content:flex-start;gap:6px}
 .catalog-product .catalog-kind{white-space:normal}
}

/* Five layout concepts, scoped to the local design comparison. */
@media(max-width:800px){
 body{--bg:#0b0e0a;--surface:#171c13;--line:#30392a;background:var(--bg);padding-bottom:140px}
 ::selection{background:#c1ff72;color:#15200b}
 input{caret-color:#c1ff72}
 .shell{width:calc(100% - 40px)}
 .catalog-heading h1{font-size:clamp(1.5rem,1rem + 2.8vw,1.8rem);line-height:1.35;letter-spacing:-.03em}
 .catalog-products{scrollbar-width:none}
 .catalog-product{position:relative;flex-basis:116px;height:96px;min-height:96px;background:#151a12;border-color:#2c3624}
 .catalog-product .catalog-kind{font-size:11px}
 .catalog-product .catalog-status{font-size:11px}
 .catalog-product[aria-pressed=true]{background:#28391a;border-color:#c1ff72}
 .purchase-dock{position:fixed;inset:auto 0 0;z-index:5;background:#141c10;border-top:1px solid #35462a;padding:14px 20px calc(14px + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,1.1fr);column-gap:18px;align-items:center}
 .purchase-dock[hidden]{display:none}
 .purchase-dock .price-row{display:block;margin:0;padding:0;border:0;grid-column:1;grid-row:1}
 .purchase-dock .price-row>span{font-size:11px;color:#c4ceb9}
 .purchase-dock .price-row p{margin-top:3px;white-space:nowrap}
 .purchase-dock #order-price{font-size:27px;font-weight:600}
 .purchase-dock .currency{font-size:11px}
 .purchase-dock .price-note{grid-column:1;grid-row:2;text-align:left;font-size:11px;margin:4px 0 0}
 .purchase-dock #buy-button{grid-column:2;grid-row:1 / 3;min-height:54px;border-radius:12px;font-size:14px;margin:0;padding:12px;line-height:1.4}
 .product-stage{width:90px;height:60px}
 .product-stage .gift-card[data-product]{height:60px}
 .purchase #page-title{font-size:32px;margin-right:100px;line-height:1.2}
 .purchase .product-tag{padding-right:100px;color:#aeba9f}
 .amount-face{min-height:80px;background:#141a10;border-color:#35432c}
 .amount-option input:checked+.amount-face{background:#223519}
 .purchase .quantity-row{padding:16px 0;margin:0;border-bottom:1px solid var(--line)}
 .preview-note{text-align:left;font-size:12px;line-height:1.6;margin-top:16px;color:#b0bca3}
 .selection-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;color:#b5c3a6;font-size:12px}
 .selection-bar button{font:inherit;color:#c1ff72;background:none;border:0;min-height:44px;padding:4px 0 4px 16px}
 #checkout-dialog{background:#0d120a}
 #checkout-form .mobile-wallet-options button{border-radius:12px}
 #checkout-form input[type=email],#checkout-form select{background:#192113}
 .purchase-steps{display:flex;gap:10px;padding:16px 0}
 .purchase-steps button{flex:1;font:inherit;font-size:13px;background:#192113;border:1px solid #34432b;color:#bdc9b0;min-height:48px;border-radius:12px}
 .purchase-steps button[aria-current=step]{background:#c1ff72;color:#18230c;border-color:#c1ff72}

}
@media(max-width:800px){
 .compact-design{padding-bottom:124px;--bg:#0c100a;--surface:#192113;--line:#35412b}
 .compact-design .site-header{height:62px;min-height:62px;padding-block:12px}
 .compact-design .compact-title{font-family:var(--display);font-size:24px;line-height:1.3;letter-spacing:-.025em;margin:22px 0 20px;font-weight:650}
 .compact-design .catalog-heading{display:none}
 .compact-design .catalog{padding:0;margin:0;border:0}
 .compact-design .catalog-filters{display:none}
 .compact-design .shop{padding:20px 0 8px;margin:0;scroll-margin-top:10px}
 .compact-design .product-stage{width:74px;height:48px;top:56px;right:0}
 .compact-design .product-stage .gift-card[data-product]{height:48px;border-radius:8px}
 .compact-design .purchase .product-tag{font-size:12px;margin-bottom:8px;padding-right:86px}
 .compact-design .purchase #page-title{font-size:28px;line-height:1.2;margin-right:86px;margin-bottom:10px}
 .compact-design .product-title-suffix{font-size:12px!important;margin-left:0!important;display:block!important}
 .compact-design #product-uses{font-size:14px;margin:10px 0 4px}
 .compact-design #product-description{font-size:12px;line-height:1.5;margin-bottom:18px}
 .compact-design .amount-face{min-height:70px;border-radius:12px;padding:14px}
 .compact-design .amount-top{font-size:22px}
 .compact-design .quantity-row{padding:12px 0;border:0}
 .compact-design .preview-note{font-size:12px;margin:8px 0 12px;line-height:1.6}
 .compact-design .change-product{font:inherit;font-size:13px;color:#c1ff72;background:transparent;border:0;border-bottom:1px solid var(--line);width:100%;text-align:left;min-height:48px;padding:0 0 12px;margin-bottom:20px}
 .compact-design .change-product[hidden]{display:none}
 .brand-field label,.search-field label{display:block;font-size:13px;color:#c3cfb8;margin:0 0 8px}
 .brand-field select,.search-field input{font:inherit;font-size:16px;background:#1b2514;color:#f2f7ec;border:1px solid #647653;width:100%;min-height:54px;padding:12px;border-radius:12px;box-sizing:border-box;caret-color:#c1ff72}
 .search-field input::placeholder{color:#afbea0}
 .brand-field select:focus-visible,.search-field input:focus-visible{outline:2px solid #c1ff72;outline-offset:3px}
 .search-field{margin-bottom:18px}
 .buying-information{border-top:1px solid #35432b;margin-top:16px;padding-top:2px}
 .buying-information>summary{font-size:13px;min-height:48px;display:list-item;padding:14px 2px;color:#c3cfb8;cursor:pointer}
 .buying-information .redemption,.buying-information .brand-usage,.buying-information .faq{padding:16px 0}
 .compact-design .site-footer{padding:22px 0;gap:12px}
 .compact-design .footer-wordmark{display:none}
 .compact-design .footer-policy,.compact-design .kol-contact{font-size:12px}
 .compact-design .purchase-dock{padding-top:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
 .compact-design .purchase-dock #buy-button{min-height:52px}
 .empty-search{font-size:14px;padding:24px 0;color:#c3cfb8}
 .empty-search[hidden]{display:none}
 /* 06: familiar selector + all purchase controls in one compact form. */
 body[data-design="6"] #catalog{display:none}
 body[data-design="6"] .product-stage{top:22px}
 body[data-design="6"] .shop{padding-top:22px}
 body[data-design="6"] .brand-field{padding-bottom:20px;border-bottom:1px solid #35432b}

}

@media(max-width:800px){
 .compact-design #checkout-dialog{padding-top:20px}
 .compact-design #checkout-title{font-size:22px;margin-bottom:16px}
 .compact-design .checkout-item{margin-bottom:0;padding-bottom:12px}
 .compact-design .checkout-quantity-edit{border-bottom:1px solid var(--line);padding:0;margin:0 0 12px}
 .compact-design .checkout-quantity-edit>summary{font-size:12px;color:#c1ff72;min-height:40px;padding:10px 0;cursor:pointer;display:list-item}
 .compact-design #checkout-form .email-label{margin-top:12px}
 .compact-design #checkout-form .checkout-total{margin-top:16px;padding-top:12px}
 .compact-design #checkout-form .checkout-policy{font-size:11px;margin-block:10px}
}

/* Selected direction: a short purchase form; secondary copy expands on demand. */
@media(max-width:800px){
 body[data-design="6"] .compact-title{font-size:22px;margin:16px 0}
 body[data-design="6"] .brand-field{padding-bottom:16px}
 body[data-design="6"] .brand-field select{min-height:50px}
 body[data-design="6"] .shop{padding-top:16px}
 body[data-design="6"] .product-stage{top:16px;width:64px;height:42px}
 body[data-design="6"] .product-stage .gift-card[data-product]{height:42px}
 body[data-design="6"] .purchase .product-tag{margin-bottom:5px;padding-right:76px}
 body[data-design="6"] .purchase #page-title{font-size:22px;margin:0 76px 16px 0;line-height:1.25}
 body[data-design="6"] .product-title-suffix{font-size:12px!important;margin-top:4px}
 body[data-design="6"] .amount-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:8px}
 body[data-design="6"] .amount-face{min-height:64px;padding:10px;border-radius:12px}
 body[data-design="6"] .amount-top{font-size:19px;gap:4px}
 body[data-design="6"] .radio-mark{width:16px;height:16px;flex-shrink:0}
 body[data-design="6"] .amount-option{min-width:0}
 body[data-design="6"] .amount-options:has(.amount-option:nth-child(3):not([hidden])) .amount-top{font-size:17px;justify-content:center}
 body[data-design="6"] .amount-options:has(.amount-option:nth-child(3):not([hidden])) .radio-mark{display:none}
 body[data-design="6"] .quantity-row{padding:12px 0 8px}
 body[data-design="6"] .preview-note{margin:8px 0;font-size:12px}
 body[data-design="6"] .selected-card-details{border-top:1px solid var(--line);margin-top:12px}
 body[data-design="6"] .selected-card-details>summary{min-height:44px;padding:12px 0;color:#c3cfb8;font-size:13px;cursor:pointer}
 body[data-design="6"] .selected-card-details #product-description{margin-bottom:12px}
 body[data-design="6"] .buying-information{margin-top:0}
 body[data-design="6"] .purchase-dock{gap:4px 12px;padding-inline:20px}
 body[data-design="6"] .purchase-dock #purchase-price{font-variant-numeric:tabular-nums}
}
@media(max-width:800px) and (max-height:700px){
 body[data-design="6"] .site-header{height:54px;min-height:54px;padding-block:8px}
 body[data-design="6"] .compact-title{font-size:20px;margin:12px 0}
 body[data-design="6"] .brand-field{padding-bottom:12px}
 body[data-design="6"] .shop{padding-top:12px}
 body[data-design="6"] .product-stage{top:12px}
 body[data-design="6"] .purchase #page-title{margin-bottom:12px}
}
