.shop-page{background:var(--espresso);color:var(--ivory)}
.shop-hero{padding:clamp(88px,10vw,154px) 0 clamp(93px,10vw,142px)}
.shop-hero-layout,.shop-section-head,.shop-help-layout,.shop-final-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(55px,8vw,130px)}
.shop-hero-layout{align-items:end}
.shop-page h1,.shop-page h2{font:400 clamp(49px,5.8vw,89px)/1.1 var(--serif);letter-spacing:-.05em;margin:0}
.shop-page h1 em,.shop-final h2 em{color:var(--rose);font-weight:400}
.shop-hero-copy{max-width:520px;padding-bottom:5px}
.shop-hero-copy p,.shop-final-layout>div:last-child p{font-size:18px;line-height:1.75;color:var(--warm-muted);margin:0 0 17px}
.shop-hero-copy p:first-child{font:400 clamp(23px,2.3vw,31px)/1.48 var(--serif);color:var(--ivory);margin-bottom:22px}
.shop-hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:34px}
.shop-hero .text-link{color:var(--ivory);border-bottom-color:var(--gold)}
.shop-hero .text-link:hover{color:var(--gold);border-bottom-color:var(--gold)}
.shop-collection{background:var(--ivory);color:var(--espresso);padding:clamp(78px,9vw,125px) 0 clamp(83px,9vw,120px)}
.shop-section-head{align-items:end;margin-bottom:55px}
.shop-collection .eyebrow,.shop-help .eyebrow{color:var(--ink-soft)}
.shop-collection .eyebrow-line,.shop-help .eyebrow-line{background:var(--rose)}
.shop-collection h2,.shop-help h2{font-size:clamp(46px,5vw,76px)}
.shop-collection h2 em,.shop-help h2 em{font-weight:400;color:var(--espresso)}
.shop-section-head>p{font-size:17px;line-height:1.75;color:var(--ink-soft);max-width:510px;margin:0}
.shop-finder{border-top:1px solid rgba(41,35,31,.28);border-bottom:1px solid rgba(41,35,31,.28);padding:36px 0 32px}
.shop-finder-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 30px}
.shop-finder-field{min-width:0}
.shop-finder-wide{grid-column:1/-1}
.shop-finder-field label{display:block;font-size:16px;font-weight:700;margin-bottom:12px}
.shop-finder-field label span{font-size:13px;font-weight:400;color:var(--ink-soft)}
.shop-finder-field select,.shop-finder-field input{display:block;width:100%;min-height:54px;padding:13px 42px 13px 16px;background:#fffaf2;color:var(--espresso);border:1px solid #81776d;border-radius:0;font:400 16px/1.4 var(--sans)}
.shop-finder-field input{padding-right:16px}
.shop-finder-field select:focus-visible,.shop-finder-field input:focus-visible,.shop-finder button:focus-visible{outline:3px solid var(--evergreen);outline-offset:3px}
.shop-color-question{border:0;padding:0;margin:0}
.shop-color-question legend{font-size:16px;font-weight:700;padding:0;margin-bottom:10px}
.shop-color-question legend span{font-size:13px;font-weight:400;color:var(--ink-soft)}
.shop-color-intro,.shop-palette-reassurance,.shop-palette-status{font-size:14px;line-height:1.6;color:var(--ink-soft);margin:0 0 18px}
.shop-palette-list:not(:empty){margin-bottom:18px}
.shop-palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.shop-palette-open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.shop-color-question .shop-palette-choice{display:flex;align-items:flex-start;gap:12px;min-height:106px;padding:16px;background:#fffaf2;border:1px solid #9a9085;margin:0;cursor:pointer;font-weight:400}
.shop-palette-choice:has(input:checked){background:#e8dfd0;border:2px solid var(--evergreen);padding:15px}
.shop-palette-choice input{width:19px;height:19px;min-height:0;padding:0;margin:3px 0 0;accent-color:var(--evergreen);flex:none}
.shop-palette-choice strong{display:block;font-size:16px;line-height:1.35;color:var(--espresso)}
.shop-palette-choice small{display:block;font-size:13px;line-height:1.5;color:var(--ink-soft);margin-top:6px}
.shop-palette-swatches{display:flex;gap:5px;margin:12px 0 0}
.shop-palette-swatch{display:block;width:33px;height:33px;border:1px solid rgba(41,35,31,.28)}
.shop-palette-notes{margin-top:22px}
.shop-palette-notes[hidden]{display:none}
.shop-color-question .shop-palette-notes label{margin-bottom:10px}
.shop-palette-notes textarea{display:block;width:100%;min-height:106px;padding:14px 16px;background:#fffaf2;color:var(--espresso);border:1px solid #81776d;border-radius:0;font:400 16px/1.5 var(--sans);resize:vertical}
.shop-color-question input:focus-visible,.shop-palette-notes textarea:focus-visible{outline:3px solid var(--evergreen);outline-offset:3px}
.shop-palette-reassurance{margin:19px 0 0}
.shop-finder-end{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:30px}
.shop-finder-end p{font-size:14px;line-height:1.65;color:var(--ink-soft);max-width:410px;margin:0}
.shop-finder-end .button{flex:none;cursor:pointer}
.shop-availability{display:flex;align-items:baseline;gap:28px;margin-top:38px;max-width:860px}
.shop-availability-label{font-size:11px;font-weight:900;letter-spacing:.16em;white-space:nowrap;margin:0}
.shop-availability p:last-child{font-size:15px;line-height:1.65;color:var(--ink-soft);margin:0}
.shop-help{background:var(--parchment);color:var(--espresso);padding:clamp(83px,9vw,125px) 0}
.shop-help-copy{max-width:555px}
.shop-help-copy>p{font-size:17px;line-height:1.75;color:var(--ink-soft);margin:0 0 24px}
.shop-help-copy .shop-price{font-size:15px;font-weight:900;color:var(--espresso);margin-bottom:31px}
.shop-help-copy .shop-help-note{font-size:14px;margin:24px 0 0}
.shop-help-note a{font-weight:700;text-decoration-thickness:1px;text-underline-offset:5px}
.shop-help-note a:hover{color:var(--ink-soft)}
.shop-final{padding:clamp(87px,10vw,140px) 0}
.shop-final-layout{align-items:end}
.shop-final-layout>div:last-child{max-width:525px}
.shop-final-layout>div:last-child p{margin-bottom:29px}
@media(max-width:800px){
  .shop-hero-layout,.shop-section-head,.shop-help-layout,.shop-final-layout{display:block}
  .shop-page h1,.shop-page h2{font-size:clamp(48px,9.5vw,75px)}
  .shop-hero-layout>div:first-child,.shop-section-head>div,.shop-help-layout>div:first-child,.shop-final-layout>div:first-child{margin-bottom:38px}
  .shop-finder-fields{grid-template-columns:1fr}
  .shop-finder-wide{grid-column:auto}
  .shop-palette-grid,.shop-palette-open{grid-template-columns:1fr}
  .shop-finder-end{display:block}
  .shop-finder-end p{margin-bottom:22px}
}
@media(max-width:520px){
  .shop-hero{padding:72px 0 83px}
  .shop-page h1,.shop-page h2{font-size:clamp(45px,11.2vw,58px)}
  .shop-hero-copy p,.shop-final-layout>div:last-child p{font-size:16px}
  .shop-hero-actions{align-items:stretch;flex-direction:column;gap:24px}
  .shop-hero-actions .button,.shop-help .button,.shop-final .button{width:100%}
  .shop-collection,.shop-help,.shop-final{padding:72px 0 78px}
  .shop-finder{padding:28px 0}
  .shop-finder-fields{gap:22px}
  .shop-finder-end{margin-top:26px}
  .shop-finder-end .button{width:100%}
  .shop-availability{display:block;margin-top:30px}
  .shop-availability-label{margin-bottom:9px}
}
