/* One editorial type system across the storefront; page content stays unchanged. */
body.dyona-site {
  --serif: "Bodoni Moda", "Bodoni 72", Didot, Georgia, serif;
  --sans: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  font-family: var(--sans);
  font-kerning: normal;
  font-optical-sizing: auto;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
body.dyona-site :is(h1,h2,h3) {
  line-height: 1.12;
  text-wrap: balance;
  overflow-wrap: break-word;
  font-kerning: normal;
  font-optical-sizing: auto;
}
body.dyona-site :is(button,input,select,textarea) { font-family: var(--sans); font-optical-sizing: auto; }
body.dyona-site .online-page { font-family: var(--sans); }
body.dyona-site .online-page :is(h1,h2,.online-chapter__copy h3,.online-fit__sizes) { font-family: var(--serif); }
body.dyona-site .online-route__title h3 { font-family: var(--sans); }
body.dyona-site .online-hero__photo img { height: 100%; }
body.dyona-site .atelier-hero__line { width: 100%; max-width: 26ch; font-size: 34px; line-height: 1.3; }
body.dyona-site :is(.content-wrap,.dyona-page-blocks__inner) p { max-width: 70ch; font-size: 17px; line-height: 1.7; }
body.dyona-site :is(.request-intro,.configurator-intro,.request-summary-copy,.dress-studio__panel-head,.collection-card__description) p { font-size: 16px; line-height: 1.6; }
body.dyona-site :is(.request-field input,.request-field select,.request-field textarea) { font-size: 16px; }
body.dyona-site :is(.request-after,.request-intro-copy,.request-step-help,.dress-studio__hint,.about-details,.bride-album-heading) p { font-size: 15px; line-height: 1.65; }
body.dyona-site :is(.request-summary-note,.dyona-options-note,.contact-field-help,.contact-required-note,.contact-submit-note,.collection-filter-note,.rental-selection__demo) { font-size: 13px; line-height: 1.6; }
body.dyona-site .configurator-selection strong { font-size: 25px; line-height: 1.2; overflow-wrap: anywhere; }
body.dyona-site .site-header .main-nav a { font-weight: 500; }
body.dyona-site :is(a,button,input,textarea,select,summary):focus-visible { outline: 2px solid var(--red); outline-offset: 4px; }
@media (max-width: 700px) {
  body.dyona-site :is(h1,.display) { font-size: 42px; line-height: 1.08; }
  body.dyona-site .editorial-hero h1 { font-size: 68px; line-height: 1.02; }
  body.dyona-site .atelier-hero__line { font-size: 28px; max-width: none; }
  body.dyona-site :is(.section-title,.content-wrap h2) { font-size: 34px; line-height: 1.12; }
  body.dyona-site .request-configurator .configurator-intro h1 { font-size: 34px; }
  body.dyona-site .dress-studio__panel-head h3 { font-size: 34px; }
  body.dyona-site .site-header .main-nav a { font-size: 30px; }
}

body.dyona-site .atelier-process__panel h3 { max-width: 100%; }
/* Fractional tracks include the gutter instead of adding it beyond 100%. */
@media (min-width: 761px) and (max-width: 1100px) {
  body.dyona-site .atelier-mosaic { grid-template-columns: minmax(0,2fr) minmax(0,3fr); }
}
body.dyona-site .brides-tools { flex-wrap: wrap; }
body.dyona-site .brides-cover .brides-kicker { max-width: none; }
body.dyona-site .brides-search-field { flex: 1 1 220px; min-width: min(100%,220px); }
body.dyona-site .brides-sort-field { flex: 0 1 190px; min-width: 160px; }
body.dyona-site .brides-tools :is(input,select),
body.dyona-site .rental-refine select { font-size: 16px; }
body.dyona-site .rental-refine__reset { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 600px) {
  body.dyona-site .brides-search-field,
  body.dyona-site .brides-sort-field { flex-basis: 100%; min-width: 0; max-width: none; }
}
@media (max-width: 480px) {
  body.dyona-site .rental-refine { grid-template-columns: minmax(0,1fr); }
}
@media (min-width: 701px) and (max-width: 980px) {
  body.dyona-site .dyona-mobile-product-heading { display: block; max-width: 660px; margin-inline: auto; padding: 3px 0 20px; }
  body.dyona-site .dyona-mobile-product-heading > p { margin: 0 0 8px; color: var(--product-wine); font-size: 10px; text-transform: uppercase; }
  body.dyona-site .dyona-mobile-product-heading > div { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: baseline; gap: 8px 16px; }
  body.dyona-site .dyona-mobile-product-name { margin: 0; font-family: var(--serif); font-size: 48px; line-height: 1.12; overflow-wrap: anywhere; }
  body.dyona-site .dyona-mobile-product-heading > div > span { font-size: 18px; line-height: 1.5; }
  body.dyona-site .dyona-mobile-product-heading del { display: block; color: var(--product-muted); font-size: 13px; }
  body.dyona-site .dyona-mobile-product-heading ins { background: none; text-decoration: none; }
}
/* The drawn wordmark keeps its original letterforms. */
body.dyona-site .brand { --serif: "Bona Nova", Georgia, serif; --sans: "Hanken Grotesk", Arial, sans-serif; }
body.dyona-site .request-page :is(h1,h2,h3),
body.dyona-site :is(.request-hero figcaption,.request-summary-photo figcaption) { font-family: var(--serif); }
body.dyona-site .request-kicker { font-family: var(--sans); }
body.dyona-site.term-uncategorized .collection-intro h1 { font-size: 64px; }
@media (max-width: 980px) {
  body.dyona-site.term-uncategorized .collection-intro h1 { font-size: 48px; }
}
@media (max-width: 380px) {
  body.dyona-site.term-uncategorized .collection-intro h1 { font-size: 40px; }
}

/* Only the homepage appointment heading; content and other headings are unchanged. */
body.home .home-appointment #invitation-title { font-size: 72px; }
@media (max-width: 1100px) {
  body.home .home-appointment #invitation-title { font-size: 56px; }
}
@media (max-width: 760px) {
  body.home .home-appointment #invitation-title { font-size: 40px; }
}
