.himalayan-pdp {
  --stone: #f6e3c9; --stone-deep: #f0d8b4; --stone-recess: #e5c69c; --ink: #14181a; --ink-soft: #5c6360; --rule: #d8bb92; --accent: #902c1b;
  --gutter: clamp(20px, 5vw, 72px);
  display: block; color: var(--ink); background: var(--stone);
  font-family: 'Barlow Semi Condensed', 'Helvetica Neue', Arial, sans-serif; font-size: 17px; line-height: 1.62;
  *, *::before, *::after { box-sizing: border-box; }
  [hidden] { display: none !important; }
  h1, h2 { font-family: 'Cinzel', Georgia, serif; text-wrap: initial; }
  h3 { font-family: inherit; text-wrap: initial; }
  .essay h3, .ocard h3 { line-height: 1.62; }
  a { color: inherit; }
  .shell { position: relative; width: 100%; max-width: 1320px; padding: 0 var(--gutter); margin: 0 auto; }
  .label { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: var(--ink-soft); }
  .plate { position: relative; overflow: hidden; box-shadow: inset 0 0 0 1px var(--rule); }
  .plate__img { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: cover; }
  .related .himalayan-catalogue-card__plate { background: radial-gradient(120% 90% at 50% 12%, #f2dcbd 0%, var(--stone-deep) 46%, var(--stone-recess) 100%); }
.crumb{padding:14px 0 0;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft)}
.crumb a{text-decoration:none}
.crumb a:hover{text-decoration:underline;text-underline-offset:3px}
.crumb i{font-style:normal;padding:0 8px;opacity:.5}

.hero{display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,30vw,428px);
  gap:clamp(24px,3vw,54px);padding:clamp(16px,2.2vw,30px) 0 clamp(36px,4.5vw,64px);align-items:start}
@media (max-width:1000px){.hero{grid-template-columns:1fr;gap:30px}}
.gal{display:flex;gap:12px;align-items:stretch;min-width:0}
.gal__rail{display:flex;flex-direction:column;gap:8px;width:66px;flex:none;align-self:flex-start;margin:0;padding:0;list-style:none}
.gal__rail li{display:flex}
.thumb{appearance:none;padding:0;border:0;background:none;cursor:pointer;width:100%;aspect-ratio:1;
  position:relative;box-shadow:inset 0 0 0 1px var(--rule);opacity:.62;
  background-size:cover;background-position:center;transition:box-shadow .22s,opacity .22s}
.thumb:hover{opacity:.9}
.thumb[aria-current="true"]{opacity:1;box-shadow:inset 0 0 0 1px var(--accent)}
.gal__main{margin:0;position:relative;flex:1;min-width:0;aspect-ratio:var(--shot, 1)}
.gal__main .plate__img{object-fit:cover;padding:0}
@media (max-width:1000px){.gal{flex-direction:column-reverse}.gal__rail{flex-direction:row;width:100%;align-self:stretch}.gal__rail li{flex:1}.thumb{width:auto}}

.buy{display:block;position:sticky;top:26px;min-width:0}
@media (max-width:1000px){.buy{position:static}}
.buy__eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.buy__eyebrow::after{content:"";flex:1;height:1px;background:var(--rule)}
.buy__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.title{margin:0;font-size:clamp(24px,2.5vw,30px);font-weight:700;letter-spacing:.022em;text-transform:uppercase;line-height:1.06}
.price{margin:0;padding-top:4px;font-size:21px;font-weight:700;letter-spacing:.03em;white-space:nowrap}
.names{margin:10px 0 0;font-family:"Courier Prime","Courier New",monospace;font-size:14.5px;color:var(--ink-soft)}
.deck{margin:14px 0 0;font-size:16.5px;line-height:1.6;color:#2C3234;max-width:40ch}
.opt{display:flex;align-items:center;gap:16px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  padding:13px 0;margin:22px 0 20px}
.opt__k{font-size:14px;color:var(--ink-soft);flex:none;min-width:96px}
.opt__v{flex:1;min-width:0;border:0;background:none;font-family:"Courier Prime","Courier New",monospace;
  font-size:14px;color:var(--ink);padding:2px 0;cursor:pointer}
.opt__v:focus{outline:none}
.cta{display:block;width:100%;padding:20px;margin:0 0 9px;background:var(--accent);color:var(--stone);
  border:1px solid var(--accent);font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s}
.cta:hover{background:transparent;color:var(--accent)}
.cta--ghost{background:transparent;color:var(--accent);margin-bottom:20px}
.cta--ghost:hover{background:var(--accent);color:var(--stone)}
.info{border-top:1px solid var(--rule);padding:20px 0 4px;margin-top:20px}
.info__h{margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.info ul{margin:0;padding:0 0 0 15px;list-style:none}
.info li{position:relative;font-size:15px;line-height:1.62;color:#2C3234;margin-bottom:5px}
.info li::before{content:"·";position:absolute;left:-15px;color:var(--ink-soft)}
.spec{width:100%;border-collapse:collapse;margin:0}
.spec th,.spec td{text-align:left;padding:9px 0;border-bottom:1px solid var(--rule);font-size:15px;font-weight:400;vertical-align:top}
.spec th{width:38%;color:var(--ink-soft);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:11.5px;padding-top:12px}
.spec tr:last-child th,.spec tr:last-child td{border-bottom:0}
.spec tbody[data-variant-facts]:has(~ tbody:not([data-variant-facts-empty])) tr:last-child :is(th,td){border-bottom:1px solid var(--rule)}

.about{padding:clamp(34px,4vw,58px) 0;border-top:1px solid var(--rule);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,72px)}
@media (max-width:860px){.about{grid-template-columns:1fr;gap:24px}}
.about h2{margin:12px 0 0;font-size:clamp(20px,2.1vw,26px);font-weight:700;line-height:1.26}
.about p{margin:14px 0 0;font-size:16px;line-height:1.74;color:#2C3234;max-width:52ch}
.related{padding:clamp(34px,4vw,58px) 0 clamp(40px,5vw,68px);border-top:1px solid var(--rule)}
.rgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.2vw,32px);margin-top:clamp(18px,2.2vw,28px)}
@media (max-width:1000px){.rgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.rgrid{grid-template-columns:1fr}}


.prose{
  font-weight:400;
  font-size:clamp(19px,2vw,24px);
  line-height:1.5;
  letter-spacing:0;
}
.cert{
  margin:1em 0;
  font-family:"Courier Prime","Courier New",monospace;
  font-size:12.5px;
  line-height:1.8;
  letter-spacing:.01em;
  color:var(--ink-soft);
  text-transform:lowercase;
}
.rule{border:0;border-top:1px solid var(--rule);margin:0}

:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.cert--buy{padding-top:22px;border-top:1px solid var(--rule)}


.statement{
  padding:clamp(38px,4.5vw,64px) 0;
  border-top:1px solid var(--rule);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:clamp(24px,5vw,72px);
}
@media (max-width:860px){.statement{grid-template-columns:1fr;gap:22px}}
.statement p{margin:0;max-width:52ch}
.statement p + p{margin-top:1.1em}


.origin{padding:clamp(38px,4.5vw,64px) 0;border-top:1px solid var(--rule)}
.origin__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.6vw,34px);margin-top:clamp(20px,2.6vw,32px)}
@media (max-width:820px){.origin__grid{grid-template-columns:1fr;gap:26px}}
.ocard{text-decoration:none;color:inherit;display:block}
.ocard .plate{aspect-ratio:4/3;display:grid;place-items:center;transition:box-shadow .25s}
.ocard .plate::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;box-shadow:inset 0 0 0 1px var(--rule)}
.ocard .plate:has(.diagram){background:radial-gradient(120% 90% at 50% 12%,#F2DCBD 0%,var(--stone-deep) 46%,var(--stone-recess) 100%)}
.ocard .plate:has(.diagram)::after{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;background-image:radial-gradient(var(--rule) .5px,transparent .5px);background-size:4px 4px}
a.ocard:hover .plate{box-shadow:inset 0 0 0 1px var(--ink)}
.ocard h3{margin:14px 0 0;font-size:13.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ocard p{margin:7px 0 0;font-size:15.5px;line-height:1.6;color:#2C3234;max-width:34ch}
.ocard em{font-style:normal;display:inline-block;margin-top:9px;font-size:12.5px;font-weight:700;letter-spacing:.05em;border-bottom:1px solid var(--ink)}

.swatches{
  display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(14px,2.4vw,34px);
  list-style:none;margin:clamp(26px,3vw,38px) 0 0;padding:24px 0 0;border-top:1px solid var(--rule);
}
@media (max-width:720px){.swatches{grid-template-columns:repeat(2,1fr);gap:26px 20px}}
.swatch__dot{
  width:clamp(46px,5.4vw,68px);aspect-ratio:1;border-radius:50%;
  margin-bottom:15px;box-shadow:inset 0 -6px 14px rgba(0,0,0,.22),inset 0 3px 8px rgba(255,255,255,.2);
}
.swatch__name{display:block;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.swatch__cn{display:block;font-size:13.5px;color:var(--ink-soft);margin-top:3px}
.swatch__src{display:block;font-size:13px;color:var(--ink-soft);margin-top:8px;line-height:1.5}


.detail{display:grid;grid-template-columns:minmax(0,1fr) clamp(252px,21vw,304px);gap:clamp(28px,3.4vw,54px);align-items:start}
.detail--single{grid-template-columns:minmax(0,1fr)}
@media (max-width:960px){.detail{grid-template-columns:1fr;gap:34px}}
.tabs{position:sticky;top:26px;border-top:1px solid var(--ink);padding-top:14px}
@media (max-width:960px){.tabs{position:static}}
.tabs__list{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 22px;padding:0;list-style:none}
.tabs__btn{
  appearance:none;border:0;background:none;padding:7px 11px;cursor:pointer;
  font-family:inherit;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-soft);transition:color .18s,background .18s;
}
.tabs__btn:hover{color:var(--ink);background:var(--stone-deep)}
.tabs__btn[aria-selected="true"]{background:var(--accent);color:var(--stone)}
.tabs__btn[aria-selected="true"]:hover{background:var(--accent)}
.tabs__panel[hidden]{display:none}
.tabs__panel p{margin:0 0 .95em;font-size:15.5px;line-height:1.72;color:#2C3234}
.tabs__panel p:last-child{margin-bottom:0}
.tabs__panel dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:11px 22px;font-size:14.5px}
.tabs__panel dt{color:var(--ink-soft)}
.tabs__panel dd{margin:0;color:#2C3234}


.essay{padding:clamp(38px,4.5vw,64px) 0 clamp(20px,2.4vw,32px);border-top:1px solid var(--rule)}
.essay article{padding-bottom:clamp(28px,3.2vw,44px)}
.essay article p,.essay article ul{max-width:74ch}
.essay article + article{border-top:1px solid var(--rule);padding-top:clamp(28px,3.2vw,44px)}
.essay h2{margin:0 0 16px;font-size:clamp(20px,2.1vw,25px);font-weight:700;line-height:1.28;letter-spacing:.004em}
.essay h3{margin:26px 0 9px;font-size:16.5px;font-weight:700;letter-spacing:.01em}
.essay p{margin:0 0 1.05em;font-size:16px;line-height:1.75;color:#2C3234}
.essay p:last-child{margin-bottom:0}
.essay article ul{margin:0;padding:0 0 0 16px;list-style:none}
.essay article li{position:relative;font-size:16px;line-height:1.7;color:#2C3234;margin-bottom:7px}
.essay article li::before{content:"·";position:absolute;left:-16px;color:var(--ink-soft)}


.qa{padding:clamp(38px,4.5vw,64px) 0;border-top:1px solid var(--rule)}
.qa__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(26px,3.4vw,48px);margin-top:clamp(20px,2.6vw,32px)}
@media (max-width:820px){.qa__grid{grid-template-columns:1fr;gap:26px}}
.qa h3{margin:0 0 9px;font-size:17px;font-weight:700;letter-spacing:.005em;line-height:1.35}
.qa p{margin:0;font-size:16px;line-height:1.68;color:#2C3234;max-width:46ch}



.gal__col{flex:1;min-width:0;display:flex;flex-direction:column}
.gal__col .gal__main{flex:1;min-height:0}
@media (max-width:1000px){.gal__col{width:100%}}


.gal__cap{margin:11px 0 0;font-family:"Courier Prime","Courier New",monospace;
  font-size:12.5px;color:var(--ink-soft);text-transform:lowercase}
@media (max-width:1000px){.gal__cap{margin-top:9px}}


.diagram .d-grid path{stroke:var(--rule);stroke-width:.7;fill:none}
.diagram .d-body{fill:none;stroke:var(--ink);stroke-width:1.1;opacity:.34;stroke-linejoin:round;stroke-linecap:round}
.diagram .d-axis{stroke:var(--ink);stroke-width:1;opacity:.6}
.diagram .d-band path{stroke:var(--ink);stroke-width:1.3;fill:none}
.diagram .d-lead path{stroke:var(--ink);stroke-width:.7;opacity:.4;fill:none}
.diagram .d-scale path{stroke:var(--ink);stroke-width:.9;opacity:.55;fill:none}
.diagram text{font-family:"Courier Prime","Courier New",monospace;font-size:8px;fill:var(--ink-soft)}
.diagram--card{width:88%;height:auto;background:none;box-shadow:none}
  .crumb { margin: 0; white-space: nowrap; overflow-x: auto; scrollbar-width: none; }
  .gal__item { margin: 0; }
  .gal__main { width: 100%; }
  .gal__main .plate__img { position: absolute; inset: 0; }
  .gal__main video, .gal__main iframe { width: 100%; height: 100%; }
  .gal__zoom { position: absolute; right: 12px; bottom: 12px; border: 0; padding: 8px 12px; background: var(--stone); color: var(--ink); font: inherit; font-size: 12px; cursor: zoom-in; }
  .thumb { overflow: hidden; min-width: 0; }
  .thumb img { width: 100%; height: 100%; object-fit: cover; }
  .gal__empty { display: grid; place-items: center; width: 100%; aspect-ratio: 4/5; background: var(--stone-deep); color: var(--ink-soft); }
  .demo-label { margin: 10px 0 0; font-size: 10px; font-weight: 700; letter-spacing: .07em; color: var(--accent); text-transform: uppercase; }
  .demo-action { font-size: 13px; color: var(--accent); }
  .pdp-form { margin: 0; }
  .cta { border-radius: 0; box-shadow: none; line-height: normal; }
  .cta:disabled { opacity: .55; cursor: default; }
  .prose p { font-size: inherit; line-height: inherit; }
  .essay--about { padding-top: 0; border-top: 0; }
  .essay--about .label { margin-bottom: 16px; }
  .tabs__panel .spec th, .tabs__panel .spec td { font-size: 14.5px; font-weight: 400; border: 0; padding: 5px 0; text-transform: none; letter-spacing: 0; }
  .qa__grid { display: block; }
  .qa__grid > .metafield-rich_text_field { columns: 2; column-gap: clamp(26px, 3.4vw, 48px); }
  .qa__grid h3 { break-after: avoid; }
  .qa__grid p { break-inside: avoid; margin-bottom: 24px; }
  .pdp-dialog { width: min(560px, calc(100vw - 32px)); max-height: 90svh; padding: 40px; border: 1px solid var(--rule); background: var(--stone); color: var(--ink); }
  .pdp-dialog form { display: grid; gap: 8px; }
  .pdp-dialog input, .pdp-dialog textarea { padding: 12px; border: 1px solid var(--rule); border-radius: 0; background: transparent; color: inherit; font: inherit; }
  .pdp-dialog h2 { font-size: 24px; }
  .pdp-dialog label { font-size: 13px; text-transform: uppercase; }
  .pdp-dialog .cta { margin-top: 16px; }
  dialog::backdrop { background: rgb(20 24 26 / .65); }
  .pdp-dialog__close { position: absolute; right: 8px; top: 8px; width: 40px; height: 40px; border: 0; background: var(--stone); color: var(--ink); font: 28px sans-serif; cursor: pointer; z-index: 1; }
  .pdp-zoom { padding: 0; border: 0; max-width: 95vw; max-height: 95svh; background: var(--stone); }
  .pdp-zoom img { width: auto; height: auto; max-width: 95vw; max-height: 95svh; object-fit: contain; }
  @media (max-width:1000px) {
    .gal__rail { min-width: 0; max-width: 100%; overflow-x: auto; scrollbar-width: thin; padding: 4px; scroll-padding-inline: 4px; }
    .gal__rail li { flex: 0 0 60px; }
    .thumb { width: 60px; height: 60px; }
  }
  @media (max-width:820px) { .qa__grid > .metafield-rich_text_field { columns: 1; } }
  @media (max-width:540px) { .pdp-dialog { padding: 28px 20px; } }
}
