/* Readable bold Gothic typography for the storefront. */
:root{--shop-gothic:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif}
body{font-family:var(--shop-gothic);font-size:16px}
:is(.page,header,footer,.drawer) :is(h1,h2,h3,h4,h5,h6),.sec-title,.pcard-name,.pcard-price,.rank-name,.rank-price,.cmp-title,.cat-name,.story-title,.info-title,.d-title,.d-price,.cart-ttl,.c-item-name,.c-item-price,.summary-ttl,.co-sec-title,.ft-heading{font-family:var(--shop-gothic)!important;font-weight:700!important;letter-spacing:.02em}
.sec-title{font-size:clamp(28px,3.4vw,38px)!important;line-height:1.5}.sec-sub{font-size:14px;line-height:1.9;letter-spacing:.03em}
.pcard-name{font-size:18px!important;line-height:1.65!important;overflow-wrap:anywhere}.pcard-desc{font-size:14px!important;line-height:1.8}.pcard-price{font-size:25px!important}.pcard-price small{font-size:12px}
.d-title{font-size:clamp(25px,3vw,34px)!important;line-height:1.55}.d-price{font-size:34px!important}
.btn-p,.btn-o,.add-btn,.btn-add-cart,.checkout-btn{font-family:var(--shop-gothic);font-weight:700;font-size:15px;line-height:1.6}
.nav-item{font-weight:700;font-size:14px}.feat-txt p{font-size:15px;font-weight:700}.feat-txt span{font-size:12px}
.ec-baum-cameo p{font-weight:700;font-size:14px}.ec-baum-caption p{font-weight:700;font-size:12px}
@media(max-width:600px){.sec-title{font-size:28px!important}.sec-sub{font-size:12px}.pcard-name{font-size:15px!important;line-height:1.6!important}.pcard-desc{font-size:12px!important}.pcard-price{font-size:21px!important}.add-btn{font-size:12px;letter-spacing:0;padding:11px 5px}.feat-txt p{font-size:13px}.feat-txt span{font-size:11px}.ec-baum-cameo p{font-size:12px}.ec-baum-caption p{font-size:11px}.d-title{font-size:25px!important}.form-input,.form-sel{font-size:16px}}
/* Compact product-led hero: 450px on desktop, photo then copy on small screens. */
#heroSection.shop-hero{height:450px;min-height:450px;max-height:450px;display:flex;justify-content:center;background:#faf5e9;isolation:isolate}
.shop-hero .hero-bg{left:40%;z-index:-2}.shop-hero .hero-bg img{object-fit:cover;object-position:60% center;transform:none}
.shop-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#faf5e9 0%,#faf5e9 37%,rgba(250,245,233,.88) 45%,rgba(250,245,233,0) 64%);pointer-events:none}
.shop-hero-copy{width:100%;max-width:1280px;margin:auto;padding:25px 5%;position:relative}
.shop-hero-eyebrow{font-size:12px;font-weight:700;color:#896139;letter-spacing:.06em;margin-bottom:13px}
.shop-hero-copy h1{font-family:var(--shop-gothic);font-size:clamp(28px,2.7vw,39px);font-weight:700;line-height:1.45;color:#35261c;letter-spacing:.01em;margin:0 0 15px}
.shop-hero-copy h1 em{font-style:normal;color:#986131}.shop-hero-description{font-size:13px;line-height:1.9;color:#594837;margin-bottom:23px}
.shop-hero-actions{display:flex;align-items:center;gap:20px}.shop-hero-actions .btn-p{font-size:13px;padding:13px 22px}.shop-hero-actions>a:last-child{font-size:12px;font-weight:700;color:#65452e;text-decoration:underline;text-underline-offset:5px}
@media(max-width:767px){#heroSection.shop-hero{height:auto;min-height:0;max-height:none;display:flex;padding-top:0}.shop-hero .hero-bg{position:relative;inset:auto;height:220px;width:100%;z-index:0}.shop-hero .hero-bg img{object-position:center}.shop-hero:after{display:none}.shop-hero-copy{padding:25px 24px 30px}.shop-hero-eyebrow{font-size:10px}.shop-hero-copy h1{font-size:28px;line-height:1.5}.shop-hero-description{font-size:12px}.shop-hero-actions{gap:16px;flex-wrap:wrap}.shop-hero-actions .btn-p{font-size:12px;padding:12px 18px}.shop-hero-actions>a:last-child{font-size:11px}}
@media(max-width:767px){.shop-hero-copy h1{font-size:clamp(20px,6vw,28px)}}
