.relief-collection {
  padding: 86px 0 0;
}

.relief-hero {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
  align-items: center;
  gap: clamp(32px, 5vw, 90px);
  padding-block: clamp(32px, 4vw, 66px);
}

.relief-crumb {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  color: var(--muted);
  font-size: 13px;
}

.relief-crumb a:hover,
.relief-detail:hover h3 {
  text-decoration: underline;
  text-underline-offset: .15em;
}

.relief-collection h1,
.relief-collection h2,
.relief-collection h3 {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
}

.relief-collection h1 {
  font-size: clamp(52px, 6.7vw, 106px);
  letter-spacing: -.055em;
  line-height: .99;
  margin: .3em 0 .23em;
  max-width: 10.2ch;
}

.relief-intro > p,
.relief-book p,
.relief-section-head p {
  max-width: 49ch;
  color: var(--muted);
  line-height: 1.6;
  margin: 0;
}

.relief-request { margin-top: 24px; }
.relief-request .extra-pattern { margin-block: 12px; }
.relief-request button.relief-link { background: transparent; border: 0; cursor: pointer; font-family: inherit; }
.relief-request button[hidden] { display: none; }
.focus-showroom { margin: 20px 0 0; }
.focus-showroom img { display: block; width: 130px; height: auto; }
.focus-showroom figcaption a { display: inline-block; margin-top: 6px; text-decoration: underline; }
.relief-request label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 6px; }
.relief-request select {
  display: block;
  width: min(100%, 340px);
  font-size: 16px;
  border: 1px solid #85867b;
  border-radius: 0;
  padding: 10px;
  background: #fff;
}

.relief-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 12px; }
.relief-actions .btn { padding: 10px 15px; min-height: 46px; font-size: 14px; letter-spacing: 0; text-align: center; }
.relief-entry-actions { margin-top: 20px; }
.relief-entry-actions .relief-link { flex-basis: 100%; width: fit-content; min-height: 44px; display: flex; align-items: center; }
.relief-hero-photo { margin: 0; }
.relief-hero-photo img { width: 100%; aspect-ratio: 1.25; height: auto; object-fit: cover; }
.relief-hero-photo figcaption { color: var(--muted); font-size: 13px; margin-top: 8px; }

.relief-patterns,
.relief-book { padding-block: clamp(38px, 5vw, 82px); border-top: 1px solid var(--line); }
.relief-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.relief-collection h2 { font-size: clamp(32px, 3.4vw, 56px); letter-spacing: -.043em; line-height: 1.05; margin: 0 0 .35em; }
.relief-section-head p { max-width: 62ch; }
.relief-link { display: inline-block; padding: 7px 0; text-decoration: underline; text-underline-offset: 4px; font-size: 14px; }
.relief-link:hover { color: #675335; }
.relief-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 2vw, 32px); }
.relief-detail { display: block; }
.relief-texture { display: block; aspect-ratio: 1.48; overflow: hidden; position: relative; background: var(--paper-2); }
.relief-texture img { width: 165%; height: 165%; max-width: none; object-fit: cover; position: absolute; top: -32.5%; left: -32.5%; }
.relief-sku { display: block; margin-top: 13px; font: 13px/1.5 ui-monospace, Consolas, monospace; letter-spacing: .04em; color: var(--muted); }
.relief-card h3 { font-size: clamp(21px, 1.8vw, 32px); line-height: 1.1; margin: 4px 0; }

.relief-book { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 6vw, 94px); align-items: center; }
.relief-book img { width: 100%; height: auto; }
.relief-book .relief-book-price { color: var(--ink); font-weight: 600; margin-top: 20px; }
.relief-book .relief-actions { gap: 16px; }
@media (max-width: 800px) {
  .relief-hero, .relief-book { grid-template-columns: 1fr; gap: 24px; }
  .relief-collection h1 { max-width: 14ch; }
  .relief-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 24px; }
  .relief-section-head { flex-direction: column; align-items: start; gap: 8px; }
}
@media (min-width: 801px) and (max-height: 760px) {
  .relief-hero { padding-top: 24px; }
}
@media (max-width: 650px) {
  .relief-collection { padding-top: 70px; }
  .relief-hero { gap: 12px; padding-top: 22px; }
  .relief-intro { display: contents; }
  .relief-crumb { grid-row: 1; }
  .relief-intro h1 { grid-row: 2; margin: 0; }
  .relief-hero-photo { grid-row: 5; }
  .relief-hero-photo img { aspect-ratio: 1.85; }
  .relief-entry-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 8px; margin-top: 4px; }
  .relief-entry-actions .btn { height: 100%; padding-inline: 8px; }
  .relief-entry-actions .relief-link { grid-column: 1 / -1; }
  .relief-request select { width: 100%; }
  .relief-request .btn { flex: 1 1 130px; }
}
@media (max-width: 650px) and (max-height: 700px) {
  .relief-entry-actions { grid-row: 3; }
}

.relief-quote { display: inline-block; margin-top: 10px; padding: 5px 0; background: none; color: var(--ink); border: 0; font: inherit; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.relief-series { border-top: 1px solid var(--line); }
.relief-series:last-child { border-bottom: 1px solid var(--line); }
.relief-series summary { padding: 16px 0; cursor: pointer; font-weight: 600; }
.relief-series summary span { margin-inline-start: 12px; color: var(--muted); font-size: 14px; font-weight: 400; }
.relief-series ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 18px; margin: 0 0 24px; padding: 0; list-style: none; }
.relief-series li a { display: grid; gap: 6px; font: 14px ui-monospace, monospace; }
.relief-series li a:hover { text-decoration: underline; }
.relief-series img { width: 100%; height: auto; aspect-ratio: 1.4; object-fit: contain; }
.relief-section-head p + p { margin-top: .85em; }

.buy-section { padding-block:clamp(36px,5vw,72px); border-top:1px solid var(--line); }
.buy-section > p { max-width:74ch; line-height:1.65; margin:12px 0; }
.buy-section .buy-lead { font-size:clamp(16px,1.3vw,20px); }
.buy-app { padding-block:25px; border-top:1px solid var(--line); }
.buy-app:first-of-type { margin-top:24px; }
.buy-app h3 { font-size:clamp(24px,2.6vw,38px); margin:0 0 8px; }
.buy-app > p { max-width:82ch; line-height:1.6; margin:0 0 18px; }
.buy-views { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,2vw,28px); }
.buy-views figure { margin:0; min-width:0; }
.buy-frame { display:block; position:relative; width:100%; aspect-ratio:1.36; background:#f2f0eb; overflow:hidden; }
.buy-frame img,.buy-frame svg { position:absolute; inset:0; display:block; height:100%; width:100%; object-fit:contain; }
.buy-frame.detail img { object-fit:cover; }
.buy-frame.furniture-detail img { object-fit:cover; transform:scale(2.8); transform-origin:20% 50%; }
.buy-views figcaption,.focus-photo figcaption { margin-top:8px; color:var(--muted); font-size:14px; line-height:1.45; }
.buy-views figcaption strong { display:block; color:var(--ink); font-weight:600; }
.buy-specs { max-width:96ch; margin:20px 0 26px; }
.buy-specs > div,.focus-specs > div { display:grid; grid-template-columns:minmax(135px,1fr) 2.7fr; gap:18px; padding:13px 0; border-top:1px solid var(--line); }
.buy-specs dt,.focus-specs dt { font-weight:600; }
.buy-specs dd,.focus-specs dd { margin:0; line-height:1.55; }
#buyer-faq details { max-width:92ch; border-top:1px solid var(--line); }
#buyer-faq summary { font-weight:600; padding-block:16px; cursor:pointer; }
#buyer-faq details p { margin:0 0 18px; max-width:74ch; line-height:1.6; }
#buyer-faq p a,.buy-app > a,.focus-other a { text-decoration:underline; text-underline-offset:3px; }
.focus-page { padding-top:var(--header-h,88px); }
.focus-page .material-back-nav { padding:26px var(--page); }
.focus-body { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:clamp(28px,5vw,76px); padding-block:32px 52px; align-items:start; }
.focus-photo { margin:0; }
.focus-photo img { display:block; width:100%; max-height:70vh; object-fit:contain; background:#f2f0eb; }
.focus-body h1,.focus-support h2 { font-family:Georgia,serif; font-weight:400; line-height:1.05; letter-spacing:-.035em; }
.focus-body h1 { font-size:clamp(37px,4.4vw,66px); margin:0 0 10px; }
.focus-body p,.focus-support p { line-height:1.6; max-width:70ch; }
.focus-code { margin:0 0 20px; }
.focus-specs { margin-block:20px; }
.focus-specs > div { grid-template-columns:minmax(100px,1fr) 2.3fr; }
.focus-support { border-top:1px solid var(--line); padding-block:32px 52px; }
.focus-support h2 { font-size:clamp(26px,3vw,42px); margin:0 0 12px; }
.focus-other { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:20px; }
.focus-body .btn { font-size:14px; text-align:center; }
@media(max-width:760px) {
  .focus-body { grid-template-columns:1fr; padding-top:12px; }
  .focus-photo img { max-height:45vh; }
  .focus-page .material-back-nav { padding-block:16px; }
  .buy-views { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .buy-views .scale-view { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:center; }
  .buy-views .scale-view figcaption { margin:0; }
}
@media(max-width:500px) {
  .buy-specs > div,.focus-specs > div { grid-template-columns:1fr; gap:4px; }
  .buy-views figcaption { font-size:13px; }
  .focus-page { padding-top:70px; }
}
