.page-hero img{object-position:55% 40%}
.process-pic{aspect-ratio:21/9;overflow:hidden;margin-bottom:clamp(48px,6vw,72px)}

.materials{margin-top:clamp(56px,7vw,88px)}

.collection .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3.4vw,56px);align-items:start}
.collection .work:nth-child(2){margin-top:clamp(40px,7vw,110px)}
.collection .pic{display:block;aspect-ratio:3/4;overflow:hidden;background:#e7e0d5}
.collection .pic img{transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.collection .work:hover .pic img{transform:scale(1.04)}
.collection .foot{text-align:center;margin-top:clamp(48px,6vw,72px)}
.collection .foot p{color:var(--sub);font-size:16px;margin-bottom:24px}

.ways{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.4vw,32px)}
.way{border:1px solid var(--line);padding:clamp(32px,4vw,48px) clamp(24px,3vw,40px);background:var(--ivory)}
.way .n{font-family:var(--serif-en);font-style:italic;font-weight:300;font-size:40px;line-height:1;color:var(--gold)}
.way h3{font-weight:400;font-size:24px;letter-spacing:.04em;margin:16px 0 6px}
.way .tag{font-size:13px;color:var(--gold);letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.way p{color:var(--sub);font-size:17px}
.way .lines{margin-top:16px}
.way .lines li{font-size:16px;padding:10px 0 10px 26px}
.way .lines li::before{top:24px}
.way.premium{background:var(--dark);color:var(--on-dark);border-color:var(--dark)}
.way.premium p{color:#b9b0a4}
.way.premium .n,.way.premium .tag{color:#c9b391}
.way.premium .lines li{border-color:rgba(239,232,221,.16)}

.where{display:grid;grid-template-columns:5fr 7fr;gap:clamp(36px,6vw,96px);align-items:center}
.where-pic{aspect-ratio:3/4;overflow:hidden;background:var(--beige)}
.places{display:grid;grid-template-columns:1fr;gap:clamp(28px,3vw,40px)}
.place{border-top:1px solid var(--gold);padding-top:24px;display:flex;flex-direction:column}
.place .badge{align-self:flex-start;font-family:var(--serif-en);font-size:11px;letter-spacing:.24em;border:1px solid var(--gold);color:var(--gold);padding:1px 10px;margin-bottom:12px}
.place h3{font-weight:400;font-size:23px;letter-spacing:.04em;margin-bottom:10px}
.place p{color:var(--sub);font-size:17px;flex:1}
.place .text-link{margin-top:20px}
.ship{text-align:center;color:var(--sub);margin-top:clamp(48px,6vw,64px);font-size:17px}

/* 英語版：見出しの字間を英語向けに */
.split h2,.numbered h3{letter-spacing:.04em;line-height:1.5}
.numbered h3{font-size:23px}
.numbered p,.split p{font-size:17px}

@media (max-width:860px){
  .collection .grid{grid-template-columns:1fr;gap:48px;max-width:440px;margin:0 auto}
  .collection .work:nth-child(2){margin-top:0}
  .ways,.places,.where{grid-template-columns:1fr}
  .where-pic{max-width:420px}
}
