/* LUNOREM v1.1 · editorial refinement. Fonts and colors inherit unchanged from the established stylesheets. */
.theme-shop .shop-header__nav a { font-size: 12.5px; letter-spacing: .105em; }
.theme-shop .shop-header__small { font-size: 9px; }
.theme-shop .section-kicker { font-size: 11.5px; letter-spacing: .21em; }
.theme-shop .micro-heading { font-size: 11.5px; line-height: 1.8; }
.theme-shop .section-copy, .theme-shop .section-copy p,
.theme-shop .subpage-main__copy p, .theme-shop .store-card__copy p,
.theme-shop .flagship-copy p, .theme-shop .art-introduction p,
.theme-shop .art-legend__body p, .theme-shop .contact-intro,
.theme-shop .contact-aside__desc { font-size: clamp(14.5px,1.08vw,16px); line-height: 2.05; letter-spacing: .045em; }
.theme-shop .section-copy--large { font-size: clamp(18px,1.55vw,22px); line-height: 1.9; }
.theme-shop .subpage-main__lead { font-size: clamp(17px,1.6vw,24px); line-height: 1.8; letter-spacing: .035em; }
.theme-shop .history-trigger, .theme-shop .site-footer__notice { font-size: 12px; }
.theme-shop .history-item { font-size: 13.5px; }
.theme-shop .history-item span:first-child { font-size: 12px; }
.theme-shop .page-badge { font-size: 17px; }
.theme-shop .fragrance-line__number { font-size: 15px; }
.theme-shop .fragrance-line__en { font-size: clamp(21px,2.3vw,30px); }
.theme-shop .form-field label, .theme-shop .form-field input,
.theme-shop .form-field select, .theme-shop .form-field textarea,
.theme-shop .proof-slot,.theme-shop .form-submit { font-size: 14px; }
.theme-shop .form-field input::placeholder,.theme-shop .form-field textarea::placeholder { opacity: .8; }
.theme-shop .contact-intro { max-width: 720px; }
.theme-shop .contact-aside__desc:empty { display:none; }
.theme-shop .product-card h3 { font-size: clamp(19px,1.8vw,26px); }
.theme-shop .product-card p { font-size: 13.5px; line-height: 1.85; }
.theme-shop .product-card__detail span { font-size: 15px; }
.theme-shop .product-card__detail small { font-size: 12px; }
.theme-shop .art-card h3 { font-size: clamp(22px,2.4vw,32px); }
.theme-shop .art-card p { font-size: 14px; line-height: 2; letter-spacing:.025em; }
.theme-shop .art-card .art-card__meta { font-size: 13px; line-height: 1.9; }
.theme-shop .art-card .art-card__description { font-size: 14px; line-height: 1.95; margin-top:18px; }
.theme-shop .art-card__index { font-size:11px; letter-spacing:.09em; }
.theme-shop .product-gallery { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 56px 27px; }
.theme-shop .product-card__copy { margin: 13px 0 0 !important; max-width: 26em; color:#6b5f5a; }
.theme-shop .gallery-section__intro { font: 300 15.5px/2.1 var(--type-ja); letter-spacing: .035em; color: #615650; max-width: 850px; margin: -4px 0 35px; }
.theme-shop .gallery-section { margin-bottom: clamp(100px,10vw,155px); }
.theme-shop .product-card__detail { border-top:1px solid var(--rule-soft); padding-top:13px; margin-top:20px !important; }
.theme-shop .subpage-main__inner > .page-intro { margin-bottom: 50px; }
/* Editorial brand section · generous text with real-world imagery */
.theme-shop .about-first .subpage-main__copy p + p { margin-top:14px; }
.theme-shop .brand-manifesto { margin: clamp(95px,12vw,170px) auto; padding: clamp(65px,8vw,115px) clamp(26px,8vw,120px); max-width: 1180px; background: rgba(250,246,241,.38); border-block: 1px solid var(--rule); text-align:center; }
.theme-shop .brand-manifesto .section-kicker { justify-content: center; }
.theme-shop .brand-manifesto h2 { font: 300 clamp(36px,5.5vw,74px)/1.4 var(--type-ja); letter-spacing: .055em; margin:35px 0; }
.theme-shop .brand-manifesto h2 em { font-style: normal; }
.theme-shop .brand-manifesto p { font: 300 clamp(14.5px,1.15vw,17px)/2.2 var(--type-ja); letter-spacing:.055em; color:#615650; margin: 18px auto 0; }
.theme-shop .heritage-lead { font:300 16px/2 var(--type-ja); color:#615650; margin: 0 0 40px; }
.theme-shop .heritage-feature { display:grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(34px,5vw,84px); align-items:start; }
.theme-shop .heritage-feature > figure { margin:0; position:sticky; top:calc(var(--nav-h) + 22px); aspect-ratio: 3 / 4; }
.theme-shop .heritage-feature > figure img { height: 100%; width:100%; object-fit:cover; }
.theme-shop .heritage-timeline { padding:0; margin:0; list-style:none; }
.theme-shop .heritage-timeline li { display:grid; grid-template-columns: 118px 1fr; gap:22px; padding:27px 0 32px; border-top:1px solid var(--rule); }
.theme-shop .heritage-timeline li:last-child { border-bottom:1px solid var(--rule); }
.theme-shop .heritage-timeline time { font: 400 clamp(39px,4.1vw,58px)/1.1 var(--type-en); color:#796b61; }
.theme-shop .heritage-timeline strong { display:block; font:400 clamp(16px,1.35vw,19px)/1.65 var(--type-ja); color:#403631; }
.theme-shop .heritage-timeline p { color:#645852; font:300 14.5px/2.0 var(--type-ja); margin:7px 0 0; }
.theme-shop .editorial-bridge { display:grid; grid-template-columns: minmax(0,1fr) minmax(0,.85fr); gap:clamp(35px,7vw,100px); align-items:center; border-top:1px solid var(--rule-soft); padding:75px 0 0; margin-top:clamp(95px,12vw,170px); }
.theme-shop .editorial-bridge h2 { font:300 clamp(26px,3.2vw,44px)/1.6 var(--type-ja); margin:14px 0 22px; }
.theme-shop .editorial-bridge p { font:300 15px/2.1 var(--type-ja); color:#645852; margin-bottom:30px; }
.theme-shop .editorial-bridge img { display:block; width:100%; aspect-ratio:5/4; object-fit:cover; }
/* Product photography, not banners: one deliberate editorial moment */
.theme-shop .collection-spotlight { display:grid; grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr); align-items:center; gap: clamp(35px,6vw,100px); margin:45px 0 110px; border-block:1px solid var(--rule-soft); padding: clamp(25px,5vw,65px) 0; }
.theme-shop .collection-spotlight__copy h2 { font:300 clamp(28px,3.3vw,48px)/1.6 var(--type-ja); margin:17px 0 20px; }
.theme-shop .collection-spotlight__copy p { font:300 16px/2 var(--type-ja); color:#655850; margin: 0 0 30px; }
.theme-shop .collection-spotlight__image { min-width:0; overflow:hidden; aspect-ratio: 6/5; }
.theme-shop .collection-spotlight__image img { width:100%; height:100%; display:block; object-fit:cover; }
/* P5 – let each artwork be viewed at a gallery scale. */
.theme-shop .flagship-page .subpage-main__inner { max-width: 1410px; }
.theme-shop .flagship-atelier { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:clamp(35px,6vw,100px); align-items:center; margin-top:clamp(90px,10vw,145px); }
.theme-shop .flagship-atelier .atelier-photo { margin:0; position:relative; min-width:0; }
.theme-shop .atelier-photo img { width:100%; aspect-ratio: 4/5; object-fit:cover; display:block; }
.theme-shop .atelier-photo figcaption { font:400 11px/1.7 var(--type-ui); margin-top:13px; color:#827367; letter-spacing:.12em; }
.theme-shop .atelier-copy h2 { font:300 clamp(27px,3.5vw,46px)/1.6 var(--type-ja); margin:28px 0; }
.theme-shop .atelier-copy p { font:300 15.5px/2.15 var(--type-ja); color:#5d514b; max-width:560px; margin:0 0 23px; }
.theme-shop .art-exhibition__subtitle { font:300 clamp(17px,1.6vw,22px)/1.9 var(--type-ja); color:#5d514b; margin:0 0 32px; }
.theme-shop .art-introduction { grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(20px,3vw,45px); }
.theme-shop .art-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(50px,6vw,90px) clamp(23px,4vw,65px); margin-top:75px; }
.theme-shop .art-card { min-width:0; }
.theme-shop .art-card__image { aspect-ratio:3/4; }
.theme-shop .art-card__text { padding: 5px 2px; }
.theme-shop .art-card__index { margin-top:20px; }
.theme-shop .art-card h3 { margin: 5px 0 12px; }
.theme-shop .art-discover { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:30px 0; border-top:1px solid var(--rule-soft); margin-top:65px; }
.theme-shop .art-discover p { font:300 14.5px/1.95 var(--type-ja); margin:0; color:#675b55; }
/* Legend copy no longer functions as a password instruction. */
.theme-shop .legend-feature { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap: clamp(40px,6vw,90px); align-items:center; margin:50px 0; }
.theme-shop .legend-feature__copy .legend-eyebrow { font:400 11px/1.8 var(--type-ui); letter-spacing:.18em; color:#9b8477; }
.theme-shop .legend-feature__copy .legend-quote { font:300 clamp(22px,3vw,40px)/1.6 var(--type-ja); letter-spacing:.06em; text-align:left; margin:25px 0 38px; padding:0; border:0; color:#4b3d36; }
.theme-shop .legend-feature__copy > p:not(.legend-quote):not(.legend-eyebrow) { color:#5d514b; font:300 15.5px/2.15 var(--type-ja); margin-bottom:23px; }
.theme-shop .legend-feature__image { margin:0; }
.theme-shop .legend-feature__image img { width:100%; aspect-ratio:4/5; object-fit:cover; display:block; }
.theme-shop .legend-feature__image figcaption { color:#8c7a6e; font:400 11px/1.6 var(--type-ui); letter-spacing:.12em; margin-top:14px; }
.theme-shop .archive-note { display:grid; grid-template-columns: 220px 1fr; gap:45px; border-block:1px solid var(--rule); padding:35px 0; }
.theme-shop .archive-note p { color:#675b55; font:300 14px/2.1 var(--type-ja); margin:0; }
.theme-shop .art-legend__credit { font-size:11px; }
@media(max-width:1050px) {
 .theme-shop .shop-header__nav a { font-size:11.5px; }
 .theme-shop .product-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .theme-shop .art-introduction { grid-template-columns:1fr; gap:18px; }
}
@media(max-width:740px){
 .theme-shop .heritage-feature, .theme-shop .editorial-bridge,
 .theme-shop .collection-spotlight, .theme-shop .flagship-atelier,
 .theme-shop .legend-feature { grid-template-columns:1fr; }
 .theme-shop .heritage-feature > figure { position:static; aspect-ratio:4/3; }
 .theme-shop .heritage-timeline { margin-top:20px; }
 .theme-shop .art-gallery { grid-template-columns:1fr; }
 .theme-shop .archive-note { grid-template-columns:1fr; gap:14px; }
 .theme-shop .art-discover { flex-direction:column; align-items:flex-start; }
 .theme-shop .flagship-atelier .atelier-photo img { aspect-ratio:4/3; }
}
@media(max-width:620px) {
 .theme-shop .shop-header__nav a { font-size:10.5px; }
 .theme-shop .section-kicker { font-size:10.5px; }
 .theme-shop .heritage-timeline li { grid-template-columns:83px 1fr; gap:15px; }
 .theme-shop .heritage-timeline time { font-size:39px; }
 .theme-shop .product-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px 14px; }
 .theme-shop .product-card h3 { font-size:17px; }
 .theme-shop .product-card p { font-size:14px; line-height:1.85; }
 .theme-shop .product-card__detail span { font-size:13px; }
 .theme-shop .art-card__image { aspect-ratio:3/4; }
 .theme-shop .art-card p { font-size:14px; }
 .theme-shop .store-card__copy p { font-size:15px; }
 .theme-shop .site-footer__notice { font-size:11px; }
}
@media(max-width:390px){
 .theme-shop .product-gallery { grid-template-columns:1fr; }
 .theme-shop .product-card__image { aspect-ratio:4/5; }
}
@media(prefers-reduced-motion:reduce){
 .theme-shop .heritage-feature > figure { position:static; }
}
