*{box-sizing:border-box}
:root{--pdp-paper:#f7f5f0;--pdp-white:#fff;--pdp-mist:#eee9e0;--pdp-ink:#292724;--pdp-muted:#68635b;--pdp-line:#d5cec2;--pdp-gold:#98753a;--pdp-dark:#20201f}
.skip-link{position:fixed;left:16px;top:-70px;z-index:1000;padding:12px 18px;background:var(--pdp-dark);color:#fff}.skip-link:focus{top:12px}
.product-page{overflow-x:hidden}.product-page.is-loading main{opacity:.45}.product-page main{transition:opacity .2s ease}
.product-breadcrumb{display:flex;align-items:center;gap:10px;width:min(1360px,calc(100% - 48px));margin:auto;padding:17px 0;color:#716b62;font-size:1.05rem;letter-spacing:.08em;white-space:nowrap;overflow:hidden}.product-breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis}
.pdp{min-height:720px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);border-top:1px solid var(--pdp-line);border-bottom:1px solid var(--pdp-line)}
.pdp-media{min-width:0;padding:clamp(28px,4.5vw,70px);background:var(--pdp-mist)}.pdp-main-image{aspect-ratio:1/1;display:grid;place-items:center;background:#fbfaf7;overflow:hidden}.pdp-main-image img{width:100%;height:100%;object-fit:contain;padding:4%}.pdp-thumbs{display:flex;gap:10px;margin-top:14px;padding-bottom:3px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}.pdp-thumb{flex:0 0 78px;width:78px;height:78px;padding:6px;border:1px solid #c8c0b4;background:#fbfaf7;cursor:pointer;scroll-snap-align:start}.pdp-thumb.active{border:2px solid var(--pdp-ink)}.pdp-thumb img{width:100%;height:100%;object-fit:contain}
.pdp-info{min-width:0;padding:clamp(44px,6vw,92px);display:flex;flex-direction:column;justify-content:center;background:#fbfaf7}.pdp-kicker,.pdp-details span,.pdp-section-heading>span,.pdp-safety span,.pdp-decision>div>span,.pdp-related header>span,.pdp-final>span{color:var(--pdp-gold);font-size:1.05rem;font-weight:500;letter-spacing:.2em}.pdp-info h1{margin:22px 0 18px;font-family:'Noto Serif JP',serif;font-size:clamp(3.3rem,4.3vw,5.8rem);font-weight:300;line-height:1.24;overflow-wrap:anywhere}.pdp-lead{max-width:58ch;margin:0 0 32px;color:var(--pdp-muted);font-size:1.5rem;line-height:1.9}.pdp-selector>span{display:block;margin-bottom:11px;color:#716b62;font-size:1rem;letter-spacing:.14em}.pdp-selector>div{display:flex;gap:8px;flex-wrap:wrap}.variant-button{min-height:48px;padding:8px 16px;border:1px solid #aaa298;background:#fff;cursor:pointer;color:var(--pdp-ink)}.variant-button b{display:block;font-size:1.05rem;font-weight:500}.variant-button small{font-size:.95rem}.variant-button.active{background:var(--pdp-ink);color:#fff;border-color:var(--pdp-ink)}.pdp-price{margin:26px 0;font-size:2.6rem;font-weight:500;font-variant-numeric:tabular-nums}.pdp-actions{display:grid;grid-template-columns:1.3fr .7fr;gap:10px}.pdp-primary,.pdp-secondary{min-height:56px;display:flex;align-items:center;justify-content:center;border:1px solid var(--pdp-ink);cursor:pointer;font:500 1.2rem 'Noto Sans JP',sans-serif;letter-spacing:.08em}.pdp-primary{background:var(--pdp-ink);color:#fff}.pdp-secondary{background:#fbfaf7}.pdp-primary:hover,.pdp-secondary:hover{background:var(--pdp-gold);border-color:var(--pdp-gold);color:#fff}.pdp-message{min-height:24px;margin:12px 0;color:#7a5a24;font-size:1.1rem}.pdp-message a{text-decoration:underline;text-underline-offset:3px}.pdp-assurance{margin-top:16px;border-top:1px solid var(--pdp-line)}.pdp-assurance>div{padding:14px 0;display:grid;grid-template-columns:150px 1fr;gap:14px;border-bottom:1px solid var(--pdp-line)}.pdp-assurance b{font-size:1.12rem}.pdp-assurance span,.pdp-assurance a{color:var(--pdp-muted);font-size:1.08rem}.pdp-assurance a{text-decoration:underline;text-underline-offset:3px}
.pdp-details{display:grid;grid-template-columns:repeat(3,1fr);background:var(--pdp-paper);border-bottom:1px solid var(--pdp-line)}.pdp-details article{padding:clamp(42px,4.5vw,68px);border-right:1px solid var(--pdp-line)}.pdp-details article:last-child{border-right:0}.pdp-details h2,.pdp-section-heading h2,.pdp-safety h2,.pdp-decision h2,.pdp-related h2{margin:20px 0;font-family:'Noto Serif JP',serif;font-size:clamp(2.5rem,3vw,4rem);font-weight:300;line-height:1.35}.pdp-details p{margin:0;color:#5d5851;font-size:1.42rem;line-height:2}
.pdp-choice,.pdp-routine{padding:clamp(72px,8vw,118px) max(24px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);gap:clamp(48px,8vw,110px);border-bottom:1px solid var(--pdp-line)}.pdp-choice{background:#fbfaf7}.pdp-routine{background:var(--pdp-mist)}.pdp-section-heading p{max-width:54ch;color:var(--pdp-muted);font-size:1.4rem;line-height:1.9}.pdp-check-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--pdp-line)}.pdp-check-list li{display:grid;grid-template-columns:90px 1fr;gap:26px;padding:21px 0;border-bottom:1px solid var(--pdp-line)}.pdp-check-list b{font-family:'Noto Serif JP',serif;font-size:1.7rem;font-weight:400}.pdp-check-list span{color:var(--pdp-muted);line-height:1.85}.pdp-routine-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #c7bfb2;border-left:1px solid #c7bfb2}.pdp-routine-steps li{min-height:150px;padding:24px;border-right:1px solid #c7bfb2;border-bottom:1px solid #c7bfb2;background:rgba(255,255,255,.5)}.pdp-routine-steps span{color:var(--pdp-gold);font-family:'Cormorant Garamond',serif;font-size:2.5rem}.pdp-routine-steps p{margin:22px 0 0;color:#514d47;line-height:1.75}
.pdp-safety{padding:clamp(76px,9vw,128px) max(24px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(48px,8vw,120px);background:var(--pdp-dark);color:#f7f5f0}.pdp-safety p{color:#c4beb5;font-size:1.42rem;line-height:2}.pdp-safety p+p{margin-top:16px}.pdp-safety a{display:inline-block;margin-top:22px;color:#dfbc74;text-decoration:underline;text-underline-offset:5px}
.pdp-decision{padding:clamp(72px,8vw,118px) max(24px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(48px,8vw,110px);background:var(--pdp-mist)}.pdp-specs{background:#fbfaf7}.pdp-decision dl{margin:0;border-top:1px solid #c8c0b4}.pdp-decision dl>div{padding:18px 0;display:grid;grid-template-columns:170px 1fr;gap:24px;border-bottom:1px solid #c8c0b4}.pdp-decision dt{font-weight:500}.pdp-decision dd{margin:0;color:#5d5851;line-height:1.8}.pdp-decision a{text-decoration:underline;text-underline-offset:3px}
.pdp-related{padding:clamp(72px,8vw,118px) max(24px,calc((100vw - 1280px)/2));background:var(--pdp-paper);overflow:hidden}.pdp-related header{max-width:720px;margin:0 auto 42px;text-align:center}.pdp-related header p{color:var(--pdp-muted);line-height:1.8}.pdp-swipe-hint{display:none;color:#6d675e;font-size:1.1rem;letter-spacing:.06em}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d0c9bd;border-left:1px solid #d0c9bd}.related-card{min-width:0;padding:24px;display:flex;flex-direction:column;border-right:1px solid #d0c9bd;border-bottom:1px solid #d0c9bd;background:#fbfaf7}.related-card img{aspect-ratio:1/1;width:100%;object-fit:contain;padding:8%;background:var(--pdp-mist)}.related-card small{margin-top:20px;color:var(--pdp-gold);font-size:1rem;letter-spacing:.16em}.related-card h3{margin:9px 0;font-family:'Noto Serif JP',serif;font-size:1.85rem;font-weight:400;line-height:1.35;overflow-wrap:anywhere}.related-card p{margin:0 0 16px;color:#5d5851;font-size:1.15rem;line-height:1.75}.related-card b{margin-top:auto;font-size:1.3rem}
.pdp-final{padding:clamp(76px,9vw,120px) 24px;text-align:center;background:#fbfaf7}.pdp-final h2{max-width:20ch;margin:20px auto 0;font:300 clamp(3rem,4vw,5rem) 'Noto Serif JP',serif;line-height:1.35;word-break:keep-all;overflow-wrap:normal}.pdp-final>p{max-width:52ch;margin:20px auto 0;color:var(--pdp-muted)}.pdp-final>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:32px}.pdp-final a{min-height:48px;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #80796f;font-size:1.08rem}.pdp-final a:hover{background:var(--pdp-ink);color:#fff}
.product-not-found{padding:150px 24px;text-align:center}.product-not-found h2{font:300 5rem 'Noto Serif JP',serif}.product-not-found a{display:inline-block;margin-top:20px;padding:15px 24px;background:var(--pdp-ink);color:#fff}.product-footer{padding:52px max(24px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:1fr auto;gap:30px;background:#171716;color:#e9e5dc}.product-footer strong{font:400 2.2rem 'Cormorant Garamond',serif;letter-spacing:.16em}.product-footer nav{display:flex;gap:18px;flex-wrap:wrap}.product-footer a{color:#aaa49a;font-size:1rem}.product-footer small{grid-column:1/-1;padding-top:22px;border-top:1px solid #373634;color:#777168}
@media(max-width:900px){.product-breadcrumb{width:calc(100% - 32px)}.pdp{grid-template-columns:1fr}.pdp-info{padding:52px 24px}.pdp-details{grid-template-columns:1fr}.pdp-details article{border-right:0;border-bottom:1px solid var(--pdp-line)}.pdp-choice,.pdp-routine,.pdp-safety,.pdp-decision{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}.product-footer{grid-template-columns:1fr}.product-footer nav{justify-content:flex-start}}
@media(max-width:560px){body.product-page{padding-bottom:118px}.product-breadcrumb{gap:7px;padding:12px 0;font-size:1rem}.pdp{min-height:0}.pdp-media{padding:16px}.pdp-main-image img{padding:2%}.pdp-thumb{flex-basis:68px;width:68px;height:68px}.pdp-info{padding:34px 20px 38px}.pdp-info h1{margin:16px 0 14px;font-size:clamp(2.75rem,9vw,3.5rem);line-height:1.3}.pdp-lead{margin-bottom:26px;font-size:1.5rem;line-height:1.9}.pdp-price{margin:22px 0;font-size:2.35rem}.pdp-actions{position:fixed;left:0;right:0;bottom:0;z-index:120;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(251,250,247,.97);border-top:1px solid #c9c1b5;box-shadow:0 -8px 28px rgba(36,35,33,.09);backdrop-filter:blur(12px);transform:translateY(calc(100% + 14px));opacity:0;pointer-events:none;transition:transform .25s ease,opacity .2s ease}.show-mobile-purchase .pdp-actions{transform:translateY(0);opacity:1;pointer-events:auto}.pdp-actions .pdp-primary{min-width:0;flex:1 1 0;min-height:50px;padding:0 8px;font-size:1.05rem}.pdp-actions .pdp-secondary{min-width:0;flex:0 0 94px;min-height:50px;padding:0 8px;font-size:1.05rem}.pdp-assurance>div{grid-template-columns:1fr;gap:4px;padding:13px 0}.pdp-details article{padding:42px 20px}.pdp-details h2,.pdp-section-heading h2,.pdp-safety h2,.pdp-decision h2,.pdp-related h2{font-size:2.65rem}.pdp-details p{font-size:1.5rem}.pdp-choice,.pdp-routine,.pdp-safety,.pdp-decision{padding:56px 20px;gap:28px}.pdp-check-list li{grid-template-columns:66px 1fr;gap:16px}.pdp-routine-steps{grid-template-columns:1fr}.pdp-routine-steps li{min-height:0;padding:20px}.pdp-routine-steps p{margin-top:10px}.pdp-decision dl>div{grid-template-columns:1fr;gap:5px;padding:16px 0}.pdp-related{padding:56px 20px}.pdp-related header{margin-bottom:22px;text-align:left}.pdp-related header h2{margin-bottom:12px}.pdp-swipe-hint{display:flex;justify-content:space-between;margin:0 0 14px}.related-grid{display:flex;width:100%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;border:0;padding-bottom:8px;scrollbar-width:none}.related-grid::-webkit-scrollbar{display:none}.related-card{flex:0 0 100%;max-width:none;padding:18px;scroll-snap-align:start;scroll-snap-stop:always;border:1px solid #d0c9bd}.related-card img{max-height:285px}.pdp-final{padding:62px 20px 92px}.pdp-final h2{font-size:2.8rem;max-width:100%;word-break:keep-all;overflow-wrap:normal}.pdp-final>div{flex-direction:column}.pdp-final a{width:100%;min-height:52px}.product-footer{padding:44px 20px 150px;grid-template-columns:1fr}.product-footer nav{flex-direction:column;gap:4px}.product-footer a{padding:7px 0;font-size:1.12rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
