/* Isolated to the single-lookbook document. No authored custom CSS classes. */
body[data-ajh-lookbook-single] {
  margin: 0;
  background: var(--e-global-color-ajh-ivory, #FFF8F2);
  color: var(--e-global-color-ajh-espresso, #392A24);
  font-family: var(--e-global-typography-ajh-body-font-family, "DM Sans"), sans-serif;
}

#ajh-lookbook-main {
  max-inline-size: var(--ajh-lookbook-max-width, 90rem);
  margin-inline: auto;
  padding: var(--ajh-lookbook-padding-y, 4rem) var(--ajh-lookbook-padding-x, 4rem);
  box-sizing: border-box;
}

#ajh-lookbook-story-heading { max-inline-size: 60rem; margin-block-end: 3rem; }
#ajh-lookbook-story-occasion {
  margin: 0 0 1rem;
  font-size: var(--e-global-typography-ajh-eyebrow-font-size, 0.75rem);
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
#ajh-lookbook-story-title {
  margin: 0;
  font-family: var(--e-global-typography-ajh-display-font-family, "Cormorant Garamond"), serif;
  font-size: clamp(3rem, 6vw, var(--e-global-typography-ajh-display-font-size, 6.75rem));
  font-weight: var(--e-global-typography-ajh-display-font-weight, 400);
  line-height: 1.02;
  letter-spacing: -0.025em;
  overflow-wrap: anywhere;
}
#ajh-lookbook-story-layout {
  display: grid;
  grid-template-columns: minmax(0, var(--ajh-lookbook-image-track, 56fr)) minmax(0, var(--ajh-lookbook-copy-track, 44fr));
  gap: var(--ajh-lookbook-gap, 4rem);
  align-items: start;
}
#ajh-lookbook-story-layout:not(:has(#ajh-lookbook-story-image)) { grid-template-columns: minmax(0, 1fr); }
#ajh-lookbook-story-image { margin: 0; }
#ajh-lookbook-story-image img { display: block; max-inline-size: 100%; block-size: auto; }
#ajh-lookbook-story-image figcaption {
  margin-block-start: 0.75rem;
  color: var(--e-global-color-ajh-brown, #745845);
  font-size: 0.875rem;
  line-height: 1.5;
}
#ajh-lookbook-story-copy { min-inline-size: 0; }
#ajh-lookbook-story-content {
  font-size: var(--ajh-lookbook-body-size, var(--e-global-typography-ajh-body-font-size, 1rem));
  line-height: var(--e-global-typography-ajh-body-line-height, 1.75);
  overflow-wrap: anywhere;
}
#ajh-lookbook-story-content :is(h2, h3), #ajh-lookbook-products-heading {
  font-family: var(--e-global-typography-ajh-card-font-family, "Cormorant Garamond"), serif;
  font-weight: var(--e-global-typography-ajh-card-font-weight, 400);
  font-size: clamp(1.75rem, 3vw, var(--e-global-typography-ajh-card-font-size, 2.6rem));
  line-height: 1.15;
}
#ajh-lookbook-story-content :is(img, video, iframe) { max-inline-size: 100%; }
#ajh-lookbook-story-products { margin-block-start: 2.5rem; padding-block-start: 2rem; border-block-start: 1px solid var(--e-global-color-ajh-taupe, #C2A893); }
#ajh-lookbook-story-products ul { list-style: none; margin: 0; padding: 0; }
#ajh-lookbook-story-products li + li { margin-block-start: 1.5rem; }
#ajh-lookbook-story-products h3 { font: inherit; font-weight: 500; line-height: 1.5; margin: 0 0 0.5rem; }
#ajh-lookbook-story-products a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-block-size: 2.75rem;
  padding: 0.75rem 1.5rem;
  background: var(--e-global-color-ajh-espresso, #392A24);
  color: var(--e-global-color-ajh-ivory, #FFF8F2);
  border: 1px solid var(--e-global-color-ajh-espresso, #392A24);
  text-decoration: none;
  font-size: var(--e-global-typography-ajh-label-font-size, 0.875rem);
}
#ajh-lookbook-story-products a:hover { background: var(--e-global-color-ajh-brown, #745845); }
#ajh-lookbook-story-content a { color: inherit; text-underline-offset: 0.2em; }
#ajh-lookbook-main :focus-visible,
#ajh-lookbook-fallback-header a:focus-visible,
#ajh-lookbook-fallback-footer a:focus-visible {
  outline: 3px solid var(--e-global-color-ajh-espresso, #392A24);
  outline-offset: 4px;
  box-shadow: 0 0 0 7px var(--e-global-color-ajh-ivory, #FFF8F2);
}
#ajh-lookbook-fallback-header, #ajh-lookbook-fallback-footer { padding: 1.5rem 4rem; }
#ajh-lookbook-fallback-footer { background: var(--e-global-color-ajh-peach, #F6DDC7); }
#ajh-lookbook-fallback-header a, #ajh-lookbook-fallback-footer a {
  display: inline-flex;
  align-items: center;
  min-block-size: 2.75rem;
  color: inherit;
  font-family: var(--e-global-typography-ajh-brand-font-family, "Cormorant Garamond"), serif;
  font-size: var(--e-global-typography-ajh-brand-font-size, 1.7rem);
  text-decoration: none;
}
#ajh-lookbook-skip {
  position: absolute;
  inset-inline-start: 1rem;
  inset-block-start: -12rem;
  z-index: 100000;
  padding: 0.75rem 1rem;
  background: var(--e-global-color-ajh-espresso, #392A24);
  color: var(--e-global-color-ajh-ivory, #FFF8F2);
}
#ajh-lookbook-skip:focus { inset-block-start: 3rem; outline: 3px solid var(--e-global-color-ajh-taupe, #C2A893); }

@media (max-width: 64rem) {
  #ajh-lookbook-main { padding: min(var(--ajh-lookbook-padding-y, 4rem), 3rem) min(var(--ajh-lookbook-padding-x, 4rem), 2rem); }
  #ajh-lookbook-story-layout { gap: min(var(--ajh-lookbook-gap, 4rem), 2rem); }
  #ajh-lookbook-fallback-header, #ajh-lookbook-fallback-footer { padding-inline: 2rem; }
}
@media (max-width: 47.9375rem) {
  #ajh-lookbook-main { padding: var(--ajh-lookbook-mobile-padding-y, 2.5rem) var(--ajh-lookbook-mobile-padding-x, 1.25rem); }
  #ajh-lookbook-story-title { font-size: var(--ajh-lookbook-mobile-title-size, 3rem); }
  #ajh-lookbook-story-heading { margin-block-end: 2rem; }
  #ajh-lookbook-story-layout { grid-template-columns: minmax(0, 1fr); }
  #ajh-lookbook-fallback-header, #ajh-lookbook-fallback-footer { padding-inline: 1.25rem; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-ajh-lookbook-single] *, body[data-ajh-lookbook-single] { scroll-behavior: auto; }
  #ajh-lookbook-main * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
