/* The size guide uses the approved storefront palette and type. */
body.pa-storefront .pa-size-guide {
  padding-block: clamp(2rem, 4vw, 4rem) clamp(3rem, 6vw, 6rem);
  color: #20252a;
}

body.pa-storefront .pa-size-guide > .breadcrumbs { margin-bottom: clamp(1.8rem, 4vw, 3.5rem); }
body.pa-storefront .pa-size-guide__back {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  margin: -.5rem 0 1.5rem;
  color: #18394a;
  font-size: .88rem;
  text-decoration: none;
}
body.pa-storefront .pa-size-guide__back:hover { text-decoration: underline; }
body.pa-storefront .pa-size-guide__intro { max-width: 58rem; margin-bottom: clamp(2rem, 4vw, 3.5rem); }
body.pa-storefront .pa-size-guide__intro h1,
body.pa-storefront .pa-size-guide__section-head h2,
body.pa-storefront .pa-size-guide__choose h2 {
  margin: .7rem 0 0;
  color: #18394a;
  font: 500 clamp(2.3rem, 5vw, 4.9rem)/1.04 "Papin Cormorant", Georgia, serif;
  letter-spacing: -.015em;
}
body.pa-storefront .pa-size-guide__intro p {
  max-width: 48rem;
  margin: 1.25rem 0 0;
  color: #626b73;
  font-size: clamp(1rem, 1.25vw, 1.12rem);
  line-height: 1.65;
}
body.pa-storefront .pa-size-guide__prep {
  display: grid;
  grid-template-columns: minmax(8rem, 1fr) repeat(3, minmax(0, 1.5fr));
  gap: 1.3rem;
  align-items: center;
  padding: 1.4rem 0;
  border-block: 1px solid #dfe4e7;
  font-size: .9rem;
  line-height: 1.55;
}
body.pa-storefront .pa-size-guide__prep strong { color: #18394a; font-weight: 600; }
body.pa-storefront .pa-size-guide__prep span { padding-left: 1rem; border-left: 1px solid #cfb697; }
body.pa-storefront .pa-size-guide__core { padding-top: clamp(3rem, 6vw, 5.5rem); }
body.pa-storefront .pa-size-guide__section-head { max-width: 48rem; margin-bottom: 1.7rem; }
body.pa-storefront .pa-size-guide__section-head h2,
body.pa-storefront .pa-size-guide__choose h2 { font-size: clamp(2rem, 3.8vw, 3.7rem); }
body.pa-storefront .pa-size-guide__section-head p {
  margin: .9rem 0 0;
  color: #626b73;
  line-height: 1.6;
}
body.pa-storefront .pa-size-guide__core-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
body.pa-storefront .pa-size-guide__selector {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-width: 0;
  max-width: 40rem;
  padding: 0;
  margin: 0 0 1.5rem;
  border: 1px solid #809fb2;
}
body.pa-storefront .pa-size-guide__selector input,
body.pa-storefront .pa-size-guide__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
body.pa-storefront .pa-size-guide__selector label {
  display: grid;
  place-items: center;
  min-height: 3.25rem;
  margin: 0;
  padding: .7rem .5rem;
  cursor: pointer;
  color: #18394a;
  font-size: .95rem;
  font-weight: 500;
}
body.pa-storefront .pa-size-guide__selector label:hover { background: #dfeaf0; }
body.pa-storefront .pa-size-guide__selector input:checked + label { background: #18394a; color: #fff; }
body.pa-storefront .pa-size-guide__selector input:focus-visible + label { outline: 3px solid #0b668f; outline-offset: 4px; z-index: 1; }
body.pa-storefront .pa-size-guide__figure {
  margin: 0;
  min-width: 0;
}
body.pa-storefront .pa-size-guide__figure svg {
  display: block;
  width: 100%;
  max-width: 34rem;
  height: auto;
  margin-inline: auto;
}
body.pa-storefront .pa-size-guide__measure { display: none; }
body.pa-storefront .pa-size-guide__measure path {
  fill: none;
  stroke: #18394a;
  stroke-width: 8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.pa-storefront .pa-size-guide__core:has(#measure-height:checked) [data-line="height"],
body.pa-storefront .pa-size-guide__core:has(#measure-chest:checked) [data-line="chest"],
body.pa-storefront .pa-size-guide__core:has(#measure-waist:checked) [data-line="waist"],
body.pa-storefront .pa-size-guide__core:has(#measure-hips:checked) [data-line="hips"] { display: inline; }
body.pa-storefront .pa-size-guide__instructions [data-instruction] { display: none; }
body.pa-storefront .pa-size-guide__core:has(#measure-height:checked) [data-instruction="height"],
body.pa-storefront .pa-size-guide__core:has(#measure-chest:checked) [data-instruction="chest"],
body.pa-storefront .pa-size-guide__core:has(#measure-waist:checked) [data-instruction="waist"],
body.pa-storefront .pa-size-guide__core:has(#measure-hips:checked) [data-instruction="hips"] { display: block; }
body.pa-storefront .pa-size-guide__instructions h3 {
  margin: 0 0 1.25rem;
  color: #18394a;
  font: 500 clamp(2rem, 3.6vw, 3.7rem)/1.1 "Papin Cormorant", Georgia, serif;
}
body.pa-storefront .pa-size-guide__instructions p { max-width: 35rem; margin: 0 0 1.25rem; font-size: 1.05rem; line-height: 1.75; }
body.pa-storefront .pa-size-guide__instructions .pa-size-guide__tip { padding-block: 1.25rem; border-block: 1px solid #cfb697; color: #18394a; }
body.pa-storefront .pa-size-guide__instructions .pa-size-guide__scheme-note { margin: 0; font-size: .8rem; color: #626b73; }
body.pa-storefront .pa-size-guide__figure figcaption {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 34rem;
  margin: .5rem auto 0;
  padding-left: 10%;
  color: #626b73;
  font-size: .78rem;
  line-height: 1.5;
  text-align: center;
}
body.pa-storefront .pa-size-guide__extra-grid summary {
  display: flex;
  align-items: center;
  gap: 1rem;
  cursor: pointer;
  list-style: none;
}
body.pa-storefront .pa-size-guide__extra-grid summary::-webkit-details-marker { display: none; }
body.pa-storefront .pa-size-guide__toggle {
  display: inline-grid;
  flex: 0 0 1.9rem;
  place-items: center;
  width: 1.9rem;
  height: 1.9rem;
  margin-left: auto;
  border: 1px solid #809fb2;
  border-radius: 50%;
  color: #18394a;
  font: 400 1.25rem/1 "Papin Manrope", sans-serif;
}
body.pa-storefront .pa-size-guide__toggle::before { content: "+"; transform: translateY(-.06em); }
body.pa-storefront details[open] > summary .pa-size-guide__toggle { color: #fff; background: #18394a; border-color: #18394a; }
body.pa-storefront details[open] > summary .pa-size-guide__toggle::before { content: "-"; }
body.pa-storefront .pa-size-guide summary:focus-visible,
body.pa-storefront .pa-size-guide a:focus-visible { outline: 3px solid #0b668f; outline-offset: 3px; }
body.pa-storefront .pa-size-guide__choose {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  gap: 1rem clamp(2rem, 5vw, 5rem);
  margin-top: clamp(3rem, 7vw, 7rem);
  padding: clamp(2rem, 4vw, 4rem);
  background: #18394a;
  color: #eaf1f4;
}
body.pa-storefront .pa-size-guide__choose h2 { color: #fff; }
body.pa-storefront .pa-size-guide__choose ol {
  display: grid;
  gap: 0;
  align-self: start;
  margin: 0;
  padding: 0;
  list-style: none;
}
body.pa-storefront .pa-size-guide__choose li {
  display: grid;
  grid-template-columns: 2.2rem minmax(0, 1fr);
  gap: .75rem;
  align-items: baseline;
  padding: 1rem 0;
  border-bottom: 1px solid rgb(234 241 244 / 26%);
}
body.pa-storefront .pa-size-guide__choose li:first-child { padding-top: 0; }
body.pa-storefront .pa-size-guide__choose li span { color: #cfb697; font-size: .78rem; }
body.pa-storefront .pa-size-guide__choose li p { max-width: 37rem; margin: 0; line-height: 1.6; }
body.pa-storefront .pa-size-guide__actions { grid-column: 2; display: flex; flex-wrap: wrap; gap: .75rem; margin-top: .5rem; }
body.pa-storefront .pa-size-guide__actions a {
  display: inline-flex;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: .7rem 1.15rem;
  font-size: .88rem;
  font-weight: 600;
  text-decoration: none;
}
body.pa-storefront .pa-size-guide__primary { color: #18394a; background: #fff; }
body.pa-storefront .pa-size-guide__primary:hover { color: #18394a; background: #dfeaf0; }
body.pa-storefront .pa-size-guide__secondary { color: #fff; border: 1px solid rgb(234 241 244 / 75%); }
body.pa-storefront .pa-size-guide__secondary:hover { color: #fff; border-color: #fff; background: rgb(255 255 255 / 10%); }
body.pa-storefront .pa-size-guide__return-note { grid-column: 2; margin: 0; color: #b8cbd5; font-size: .8rem; }
body.pa-storefront .pa-size-guide__extra { padding-top: clamp(3rem, 7vw, 7rem); }
body.pa-storefront .pa-size-guide__extra-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
body.pa-storefront .pa-size-guide__extra-grid details { align-self: start; min-width: 0; border-top: 1px solid #809fb2; border-bottom: 1px solid #dfe4e7; }
body.pa-storefront .pa-size-guide__extra-grid summary { min-height: 5.2rem; color: #18394a; font: 500 clamp(1.35rem, 2vw, 1.8rem)/1.15 "Papin Cormorant", Georgia, serif; }
body.pa-storefront .pa-size-guide__extra-grid dl { margin: 0 0 1.5rem; }
body.pa-storefront .pa-size-guide__extra-grid dt { margin-top: 1rem; font-size: .89rem; font-weight: 600; }
body.pa-storefront .pa-size-guide__extra-grid dd { margin: .35rem 0 0; color: #626b73; font-size: .86rem; line-height: 1.55; }
body.pa-storefront .pa-size-guide__closing { max-width: 50rem; margin: 2rem 0 0; color: #626b73; line-height: 1.65; }

@media (max-width: 63rem) {
  body.pa-storefront .pa-size-guide__prep { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.pa-storefront .pa-size-guide__core-layout { gap: 2rem; }
  body.pa-storefront .pa-size-guide__extra-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 42rem) {
  body.pa-storefront .pa-size-guide { padding-top: 1.8rem; }
  body.pa-storefront .pa-size-guide__intro { margin-bottom: 1.8rem; }
  body.pa-storefront .pa-size-guide__intro h1 { font-size: clamp(2.25rem, 10vw, 3.2rem); }
  body.pa-storefront .pa-size-guide__prep { grid-template-columns: 1fr; gap: .65rem; padding-block: 1.1rem; }
  body.pa-storefront .pa-size-guide__prep span { padding-left: .85rem; }
  body.pa-storefront .pa-size-guide__core { padding-top: 3rem; }
  body.pa-storefront .pa-size-guide__core-layout { grid-template-columns: 1fr; gap: 1.5rem; }
  body.pa-storefront .pa-size-guide__figure svg { max-width: 19rem; }
  body.pa-storefront .pa-size-guide__figure figcaption { max-width: 19rem; }
  body.pa-storefront .pa-size-guide__instructions h3 { margin-bottom: .75rem; }
  body.pa-storefront .pa-size-guide__instructions p { font-size: .95rem; line-height: 1.65; }
  body.pa-storefront .pa-size-guide__choose { grid-template-columns: 1fr; gap: 1.5rem; padding: 1.6rem 1.35rem; }
  body.pa-storefront .pa-size-guide__actions,
  body.pa-storefront .pa-size-guide__return-note { grid-column: 1; }
  body.pa-storefront .pa-size-guide__actions { display: grid; }
  body.pa-storefront .pa-size-guide__extra-grid { grid-template-columns: 1fr; gap: .25rem; }
}
@supports not selector(:has(*)) {
  body.pa-storefront .pa-size-guide__selector { display: none; }
  body.pa-storefront .pa-size-guide__instructions [data-instruction] { display: block; }
}
