.jd-deck-page{overflow:hidden}
.jd-deck-page h1,.jd-deck-page h2,.jd-deck-page h3{font-family:var(--serif);font-weight:500;letter-spacing:-.02em}
.jd-deck-page h1,.jd-deck-page h2{text-wrap:balance}
.jd-deck-page em{font-weight:500}
.jd-deck-hero{padding:clamp(3.5rem,7vw,7rem) 0 clamp(4rem,8vw,7rem);background:var(--snow)}
.jd-deck-hero__grid{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);align-items:center;gap:clamp(2rem,6vw,6rem)}
.jd-deck-hero__copy{max-width:34rem}
.jd-deck-hero h1{font-size:clamp(4rem,6.3vw,6rem);line-height:.94;color:var(--ink);margin:0 0 2rem}
.jd-deck-hero h1 em{display:block;color:var(--alpenglow)}
.jd-deck-lead{max-width:32rem;font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.55;color:var(--ink-soft);margin:0 0 2rem}
.jd-deck-hero__note{font-size:.88rem;color:var(--slate);margin-top:1rem}
.jd-deck-hero__photo{position:relative;margin:0}
.jd-deck-hero__photo img{display:block;width:100%;height:auto;aspect-ratio:1.12;object-fit:cover;object-position:var(--deck-image-x,50%) var(--deck-image-y,50%);border-radius:18px}
.jd-deck-hero__photo figcaption{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin-top:.8rem;text-align:right}
.jd-deck-how{padding:clamp(4.5rem,8vw,7.5rem) 0;background:#fff}
.jd-deck-how__intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:end;gap:clamp(2rem,7vw,7rem);margin-bottom:clamp(2.8rem,6vw,5.5rem)}
.jd-deck-how h2,.jd-deck-pair h2,.jd-deck-close h2{font-size:clamp(2.8rem,5.2vw,5rem);line-height:1.01}
.jd-deck-how h2{color:var(--ink)}
.jd-deck-how h2 em,.jd-deck-close h2 em{color:var(--alpenglow)}
.jd-deck-how__intro p{max-width:32rem;font-size:1.1rem;line-height:1.65;color:var(--ink-soft)}
.jd-deck-how__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,4rem);list-style:none;padding:0;margin:0}
.jd-deck-how__steps li{padding-top:1.2rem;border-top:1px solid #cbd1d6}
.jd-deck-how__number{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:var(--alpenglow);margin-bottom:clamp(1.5rem,3vw,2.5rem)}
.jd-deck-how__steps h3{font-size:clamp(2rem,2.7vw,2.7rem);line-height:1.03;color:var(--ink);margin:0 0 .7rem}
.jd-deck-how__steps p{max-width:21rem;color:var(--ink-soft);line-height:1.6}
.jd-deck-pair{position:relative;background:var(--altitude-dk);color:#fff;padding:clamp(5rem,9vw,9rem) 0}
.jd-deck-pair__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:clamp(2rem,8vw,8rem)}
.jd-deck-pair h2{max-width:52rem;color:#fff;margin:0}
.jd-deck-pair h2 em{color:#f4a0c3}
.jd-deck-pair__copy p{font-size:1.1rem;line-height:1.7;color:#e1eaf0;margin:0 0 2rem}
.jd-deck-pair__spectrum{position:absolute;right:0;bottom:0;left:0;height:5px;background:var(--dawn)}
.jd-deck-checkout{padding:0;background:#fff}
.jd-deck-close{background:var(--snow);padding:clamp(5rem,9vw,9rem) 0}
.jd-deck-close__inner{max-width:52rem;text-align:center}
.jd-deck-close h2{color:var(--ink);margin:0 auto 1.5rem}
.jd-deck-close p{max-width:36rem;margin:0 auto 1.8rem;font-size:1.1rem;line-height:1.65;color:var(--ink-soft)}
.jd-deck-close__status{display:inline-block;border:1px solid #aeb6bf;border-radius:999px;padding:.72rem 1.2rem;font-family:var(--mono);font-size:.73rem;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft)}
@media(max-width:900px){
  .jd-deck-hero__grid,.jd-deck-how__intro,.jd-deck-pair__grid{grid-template-columns:1fr}
  .jd-deck-hero__copy{max-width:42rem}
  .jd-deck-hero__photo img{aspect-ratio:1.5}
  .jd-deck-how__intro{gap:1.5rem}
  .jd-deck-how__intro p{max-width:42rem}
  .jd-deck-pair__copy{max-width:35rem}
}
@media(max-width:640px){
  .jd-deck-hero{padding:3.5rem 0 4.5rem}
  .jd-deck-hero__grid{gap:2.4rem}
  .jd-deck-hero h1{font-size:clamp(3.4rem,13vw,4.5rem);margin-bottom:1.5rem}
  .jd-deck-hero__photo img{aspect-ratio:1.12;border-radius:12px}
  .jd-deck-hero__photo figcaption{text-align:left}
  .jd-deck-how{padding:4.5rem 0}
  .jd-deck-how__steps{grid-template-columns:1fr;gap:2.5rem}
  .jd-deck-how__number{margin-bottom:.9rem}
  .jd-deck-pair,.jd-deck-close{padding:5rem 0}
  .jd-deck-pair h2,.jd-deck-close h2,.jd-deck-how h2{font-size:clamp(2.7rem,11vw,3.7rem)}
  .jd-deck-hero .btn{width:100%;white-space:normal;text-align:center}
}
