/* Procession / Grayslake + Mundelein. Existing copy, imagery and behavior are preserved. */
body.theme-procession:is(.gl-film, .mu-choice) main {
  --pr-local-ink: #f6f2e8;
  --pr-local-copy: #d6ded7;
  --pr-local-accent: #d4b477;
  --pr-local-line: #6f7e68;
  background: var(--pr-forest, #0b2922);
  color: var(--pr-local-ink);
}

/* Legacy Mundelein uses important left alignment; explicitly reconcile it here. */
body.theme-procession:is(.gl-film, .mu-choice) main :is(h1, h2, h3, h4, p, blockquote, figcaption) {
  margin-inline: auto !important;
  text-align: center !important;
}
body.theme-procession:is(.gl-film, .mu-choice) main :is(h1, h2, h3) {
  color: var(--pr-local-ink);
  line-height: 1.15;
  letter-spacing: -.035em;
}
body.theme-procession:is(.gl-film, .mu-choice) main h1 { max-width: 24ch; font-size: clamp(2.25rem, 3.65vw, 3.5rem); }
body.theme-procession:is(.gl-film, .mu-choice) main h2 { max-width: 30ch; font-size: clamp(1.9rem, 2.9vw, 2.75rem); }
body.theme-procession:is(.gl-film, .mu-choice) main h3 { font-size: clamp(1.45rem, 2vw, 1.9rem); }
body.theme-procession:is(.gl-film, .mu-choice) main p {
  max-width: 66ch;
  color: var(--pr-local-copy);
  font-size: 1rem;
  line-height: 1.75;
}
body.theme-procession:is(.gl-film, .mu-choice) main .eyebrow {
  max-width: 66ch;
  color: var(--pr-local-accent);
  font: 700 .75rem/1.6 var(--sans);
  letter-spacing: .1em;
  text-align: center !important;
}
body.theme-procession:is(.gl-film, .mu-choice) main :is(article, figure, picture, blockquote) { min-width: 0; }
body.theme-procession:is(.gl-film, .mu-choice) main picture { display: block; }
body.theme-procession:is(.gl-film, .mu-choice) main img { filter: none; object-fit: cover; }
body.theme-procession:is(.gl-film, .mu-choice) main .button { max-width: 100%; white-space: normal; }

/* Pale sections use locally inherited tokens, including their headings and FAQs. */
body.theme-procession.gl-film :is(.gl-film-statement, .gl-film-planning, .gl-film-pricing, .gl-film-related),
body.theme-procession.mu-choice :is(.mu-choice-pricing, .mu-choice-local) {
  --pr-local-ink: #13342b;
  --pr-local-copy: #3f5148;
  --pr-local-accent: #685026;
  --pr-local-line: #b9c0b5;
  background: var(--pr-stone, #f0eee5);
  color: var(--pr-local-ink);
  border-color: var(--pr-local-line);
}
body.theme-procession.gl-film .gl-film-faq,
body.theme-procession.mu-choice .mu-choice-faq {
  --pr-local-ink: #13342b;
  --pr-local-copy: #3f5148;
  --pr-local-accent: #685026;
  --pr-local-line: #c3cbbf;
  background: #f7f4ec;
  color: var(--pr-local-ink);
}
body.theme-procession.gl-film :is(.gl-film-sequence, .gl-film-planning, .gl-film-pricing, .gl-film-faq, .gl-film-related, .gl-film-coverage),
body.theme-procession.mu-choice :is(.mu-choice-story, .mu-choice-pricing, .mu-choice-services, .mu-choice-local, .mu-choice-faq, .mu-choice-conversation) {
  padding-block: clamp(2.75rem, 4.6vw, 4.5rem);
}
body.theme-procession.gl-film :is(.gl-film-heading, .gl-film-related__heading),
body.theme-procession.mu-choice .mu-choice-section-heading { max-width: 900px; margin: 0 auto 2.25rem; }
body.theme-procession.gl-film :is(.gl-film-heading, .gl-film-related__heading) > p:last-child,
body.theme-procession.mu-choice .mu-choice-section-heading > p:last-child { margin-bottom: 0; }

/* Grayslake: retain the photographic sequence and documentary coverage ledger. */
body.theme-procession.gl-film :is(.gl-film-hero, .gl-film-sequence, .gl-film-coverage, .gl-film-privacy, .gl-film-conversation) {
  background: var(--pr-forest, #0b2922);
  color: var(--pr-local-ink);
}
body.theme-procession.gl-film .gl-film-hero { overflow: visible; }
body.theme-procession.gl-film .gl-film-hero__grid,
body.theme-procession.gl-film .gl-film-conversation__grid {
  width: min(100% - 80px, 1280px);
  margin-inline: auto;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 2.5rem;
  align-items: center;
  min-height: 0;
  padding-block: 2.5rem 3rem;
}
body.theme-procession.gl-film :is(.gl-film-hero__copy, .gl-film-conversation__copy) {
  min-width: 0;
  min-height: 0;
  padding: 0;
  justify-items: center;
  text-align: center;
}
body.theme-procession.gl-film :is(.gl-film-hero__copy, .gl-film-conversation__copy) > p:not(.eyebrow) { max-width: 54ch; margin-bottom: 1.5rem; }
body.theme-procession.gl-film .gl-film-hero__text-link,
body.theme-procession.gl-film :is(.gl-film-coverage__intro, .gl-film-privacy__copy) > a,
body.theme-procession.gl-film .gl-film-pricing__link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  max-width: 100%;
  padding-block: .625rem;
  color: var(--pr-local-accent);
  font: 600 .9375rem/1.65 var(--sans);
  letter-spacing: 0;
  text-transform: none;
  text-decoration: underline;
  text-underline-offset: .3em;
  text-align: center;
}
body.theme-procession.gl-film .gl-film-hero__figure { border: 0; position: static; }
body.theme-procession.gl-film .gl-film-hero__figure picture { height: auto; }
body.theme-procession.gl-film .gl-film-hero__figure img { min-height: 0; height: clamp(330px, 33vw, 460px); max-height: 460px; }
body.theme-procession.gl-film .gl-film-hero__figure figcaption {
  position: static;
  max-width: none;
  padding: .875rem .5rem 0;
  border: 0;
  background: transparent;
  color: var(--pr-local-copy);
  font: 400 .9375rem/1.65 var(--sans);
}
body.theme-procession.gl-film .gl-film-frames { border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-frames figure { padding: .75rem .75rem 1.25rem; border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-frames img { height: clamp(160px, 16vw, 220px); max-height: 220px; }
body.theme-procession.gl-film .gl-film-frames figcaption { padding: 1rem 0 0; }
body.theme-procession.gl-film .gl-film-frames figcaption span { color: var(--pr-local-ink); font-size: 1.5rem; line-height: 1.25; }
body.theme-procession.gl-film .gl-film-frames figcaption small { color: var(--pr-local-copy); font-size: .9375rem; line-height: 1.65; }
body.theme-procession.gl-film .gl-film-statement__image { border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-statement__image img { height: clamp(230px, 25vw, 340px); max-height: 340px; }
body.theme-procession.gl-film .gl-film-statement__copy { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); align-items: center; gap: 3rem; padding-block: 2.5rem; }
body.theme-procession.gl-film .gl-film-statement__copy p { margin: 0; max-width: 28ch; font: 500 clamp(1.85rem, 3vw, 2.8rem)/1.2 var(--serif); color: var(--pr-local-ink); letter-spacing: -.035em; }
body.theme-procession.gl-film .gl-film-statement__copy span { max-width: 36ch; justify-self: center; padding: 0 0 0 2rem; border-color: var(--pr-local-line); color: var(--pr-local-copy); font-size: 1rem; line-height: 1.7; text-align: center; }
body.theme-procession.gl-film .gl-film-settings { border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-settings article { min-height: 0; padding: 1.75rem 1.25rem; border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-settings h3 { max-width: 22ch; }
body.theme-procession.gl-film .gl-film-settings p { margin-bottom: 0; }
body.theme-procession.gl-film .gl-film-planning__note { max-width: 66ch; margin-top: 1.75rem; font-family: var(--sans); font-style: normal; }
body.theme-procession.gl-film .gl-film-coverage__grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 3.5rem; align-items: center; }
body.theme-procession.gl-film .gl-film-coverage__intro { align-self: center; text-align: center; }
body.theme-procession.gl-film .gl-film-coverage__list { border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-coverage__list article { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1.5rem; align-items: center; padding-block: 1.75rem; border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-coverage__list :is(h3, p) { margin-bottom: 0; }
body.theme-procession.gl-film .gl-film-privacy__grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); min-height: 0; gap: 3rem; padding-block: 3.5rem; border-top: 1px solid var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-privacy picture { padding: 0; border: 0; }
body.theme-procession.gl-film .gl-film-privacy img { height: clamp(230px, 26vw, 340px); max-height: 340px; }
body.theme-procession.gl-film .gl-film-pricing__row { border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-pricing__row article { display: grid; grid-template-rows: 1.75rem auto auto 1fr; row-gap: .875rem; min-height: 0; padding: 2rem 1.5rem; border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-pricing__row h3 { grid-row: 2; margin-block: 0; font-size: clamp(1.5rem, 2vw, 1.9rem); }
body.theme-procession.gl-film .gl-film-pricing__row .gl-film-pricing__amount { grid-row: 3; margin-block: 0; color: var(--pr-local-accent); font: 500 clamp(2rem, 3vw, 2.8rem)/1.2 var(--serif); }
body.theme-procession.gl-film .gl-film-pricing__amount span { margin-bottom: .375rem; color: var(--pr-local-copy); font: 400 .9375rem/1.6 var(--sans); letter-spacing: 0; text-transform: none; }
body.theme-procession.gl-film .gl-film-pricing__row article > p:last-child { grid-row: 4; max-width: 36ch; color: var(--pr-local-copy); font-size: 1rem; line-height: 1.75; }
body.theme-procession.gl-film .gl-film-pricing__featured { background: #e3e8de; }
body.theme-procession.gl-film .gl-film-pricing__badge { grid-row: 1; align-self: start; margin: 0; padding: .3rem .65rem; background: var(--pr-gold, #d4b477); color: #102a23; font: 600 .75rem/1.4 var(--sans); letter-spacing: .035em; }
body.theme-procession.gl-film .gl-film-pricing__link { margin-top: 1.5rem; margin-bottom: 0; }
body.theme-procession.gl-film .gl-film-faq__grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 3rem; align-items: start; }
body.theme-procession.gl-film .gl-film-faq__content { min-width: 0; }
body.theme-procession.gl-film .gl-film-faq__heading { margin: 0 auto 1.5rem; }
body.theme-procession.gl-film .gl-film-faq__figure { max-width: 620px; margin-top: 2rem; padding: 0; border: 0; background: transparent; }
body.theme-procession.gl-film .gl-film-faq__figure img { height: clamp(240px, 26vw, 350px); max-height: 350px; }
body.theme-procession.gl-film .gl-film-faq__figure figcaption { padding: 1rem .5rem 0; color: var(--pr-local-copy); font: 400 1rem/1.7 var(--sans); }
body.theme-procession.gl-film .gl-film-related__links { border-color: var(--pr-local-line); }
body.theme-procession.gl-film .gl-film-related__links a { min-height: 120px; padding: 1.5rem 1.25rem; justify-items: center; border-color: var(--pr-local-line); color: var(--pr-local-ink); text-align: center; }
body.theme-procession.gl-film .gl-film-related__links a span { max-width: 25ch; font-size: clamp(1.4rem, 1.9vw, 1.75rem); line-height: 1.25; text-decoration: underline; text-underline-offset: .2em; }
body.theme-procession.gl-film .gl-film-related__links a small { color: var(--pr-local-copy); font-size: .9375rem; line-height: 1.65; }
body.theme-procession.gl-film .gl-film-related__links a:hover { background: #e3e8de; }
body.theme-procession.gl-film .gl-film-conversation picture { height: auto; }
body.theme-procession.gl-film .gl-film-conversation img { min-height: 0; height: clamp(250px, 28vw, 370px); max-height: 370px; }

/* Mundelein: retain its choice-led plans, three-part story, and service comparison. */
body.theme-procession.mu-choice :is(.mu-choice-hero, .mu-choice-story, .mu-choice-services, .mu-choice-conversation) { background: var(--pr-forest, #0b2922); color: var(--pr-local-ink); border-color: var(--pr-local-line); }
body.theme-procession.mu-choice .mu-choice-hero { width: min(100% - 80px, 1280px); margin-inline: auto; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 2.5rem; align-items: center; min-height: 0; padding-block: 2.5rem 3rem; overflow: visible; }
body.theme-procession.mu-choice .mu-choice-hero__copy { min-width: 0; padding: 0; align-items: center; text-align: center; }
body.theme-procession.mu-choice .mu-choice-hero__copy > p:not(.eyebrow) { max-width: 52ch; margin-bottom: 1.75rem; }
body.theme-procession.mu-choice .mu-choice-hero__media { min-height: 0; height: auto; }
body.theme-procession.mu-choice .mu-choice-hero__media img { height: clamp(330px, 33vw, 460px); max-height: 460px; }
body.theme-procession.mu-choice .mu-choice-story__grid { grid-template-columns: minmax(0, 1fr) minmax(0, .85fr) minmax(0, .5fr); gap: 2rem; }
body.theme-procession.mu-choice .mu-choice-story figure { aspect-ratio: auto; height: auto; }
body.theme-procession.mu-choice .mu-choice-story figure img { height: clamp(240px, 25vw, 330px); max-height: 330px; }
body.theme-procession.mu-choice .mu-choice-story blockquote { max-width: 26ch; padding-left: 1.5rem; border-color: var(--pr-local-line); }
body.theme-procession.mu-choice .mu-choice-story blockquote p { margin: 0; color: var(--pr-local-accent); font: 500 clamp(1.5rem, 2.15vw, 2rem)/1.3 var(--serif); }
body.theme-procession.mu-choice .mu-choice-story__copy > a,
body.theme-procession.mu-choice .mu-choice-pricing__grid article > a { min-height: 44px; max-width: 100%; justify-content: center; padding-block: .625rem; color: var(--pr-local-accent); font: 600 .9375rem/1.65 var(--sans); letter-spacing: 0; text-transform: none; text-align: center; }
body.theme-procession.mu-choice .mu-choice-pricing__grid { border-color: var(--pr-local-line); }
body.theme-procession.mu-choice .mu-choice-pricing__grid article { display: grid; grid-template-rows: 1.75rem auto auto auto 1fr auto; gap: .875rem; align-items: start; min-height: 0; padding: 2rem 1.5rem; border-color: var(--pr-local-line); }
body.theme-procession.mu-choice .mu-choice-pricing__grid h3 { grid-row: 2; margin-block: 0; font-size: clamp(1.5rem, 2vw, 1.9rem); }
body.theme-procession.mu-choice .mu-choice-pricing__grid .mu-choice-price { grid-row: 3; margin-block: 0; color: var(--pr-local-accent); font: 500 clamp(2rem, 3vw, 2.8rem)/1.2 var(--serif); }
body.theme-procession.mu-choice .mu-choice-price span { margin-bottom: .375rem; color: var(--pr-local-copy); font: 400 .9375rem/1.6 var(--sans); letter-spacing: 0; text-transform: none; }
body.theme-procession.mu-choice .mu-choice-pricing__grid .mu-choice-duration { grid-row: 4; margin: .25rem 0 0; padding-top: 1rem; border-color: var(--pr-local-line); color: var(--pr-local-ink); font-size: 1rem; }
body.theme-procession.mu-choice .mu-choice-pricing__grid article > p:not(.mu-choice-price):not(.mu-choice-duration):not(.mu-choice-badge) { grid-row: 5; max-width: 36ch; margin-block: 0; color: var(--pr-local-copy); font-size: 1rem; line-height: 1.75; }
body.theme-procession.mu-choice .mu-choice-pricing__grid article > a { grid-row: 6; align-self: end; margin-top: .5rem; }
body.theme-procession.mu-choice .mu-choice-pricing__featured { padding-top: 2rem !important; background: #e3e8de; }
body.theme-procession.mu-choice .mu-choice-pricing__grid .mu-choice-badge { position: static; grid-row: 1; align-self: start; justify-self: center; margin: 0; padding: .3rem .65rem; background: var(--pr-gold, #d4b477); color: #102a23; font: 600 .75rem/1.4 var(--sans); letter-spacing: .035em; }
body.theme-procession.mu-choice .mu-choice-services__grid { gap: 2rem; }
body.theme-procession.mu-choice .mu-choice-services__grid article { max-width: 100%; text-align: center; }
body.theme-procession.mu-choice .mu-choice-services__image { aspect-ratio: auto; margin-bottom: 1.25rem; }
body.theme-procession.mu-choice .mu-choice-services__image picture { height: auto; }
body.theme-procession.mu-choice .mu-choice-services__image img { height: clamp(180px, 18vw, 250px); max-height: 250px; }
body.theme-procession.mu-choice .mu-choice-services__image:hover img { transform: none; }
body.theme-procession.mu-choice .mu-choice-services__grid h3 { margin-bottom: .5rem !important; }
body.theme-procession.mu-choice .mu-choice-services__grid h3 a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; color: var(--pr-local-ink); text-decoration: underline; text-underline-offset: .2em; }
body.theme-procession.mu-choice .mu-choice-services__grid .mu-choice-service-price { margin-bottom: 1rem; color: var(--pr-local-accent); font: 500 1.25rem/1.5 var(--serif); }
body.theme-procession.mu-choice .mu-choice-local__grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 3rem; }
body.theme-procession.mu-choice .mu-choice-local__lead { padding: 1.5rem; border-color: var(--pr-local-line); }
body.theme-procession.mu-choice .mu-choice-local__lead .mu-choice-local__statement { margin: 0; max-width: 20ch; color: var(--pr-local-ink); font: 500 clamp(1.85rem, 2.8vw, 2.7rem)/1.2 var(--serif); letter-spacing: -.035em; }
body.theme-procession.mu-choice .mu-choice-local__copy a { color: #254c40; text-underline-offset: .25em; }
body.theme-procession.mu-choice .mu-choice-faq__grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 3rem; }
body.theme-procession.mu-choice .mu-choice-faq header { position: static; top: auto; }
body.theme-procession.mu-choice .mu-choice-conversation .shell { max-width: 940px; }
body.theme-procession.mu-choice .mu-choice-conversation .button-row { gap: 1rem; justify-content: center; }
body.theme-procession.mu-choice .mu-choice-conversation__secondary { border-color: var(--pr-gold, #d4b477); background: transparent; color: var(--pr-ivory, #f6f2e8); }
body.theme-procession.mu-choice .mu-choice-conversation__secondary:hover { border-color: var(--pr-gold, #d4b477); background: var(--pr-gold, #d4b477); color: #102a23; }

/* Existing accordion buttons retain their JS and native hidden / expanded states. */
body.theme-procession:is(.gl-film, .mu-choice) main :is(.faq-list, .faq-item) { border-color: var(--pr-local-line); }
body.theme-procession:is(.gl-film, .mu-choice) main .faq-item > h3 { max-width: none; margin: 0; }
body.theme-procession:is(.gl-film, .mu-choice) main .faq-question { width: 100%; min-height: 60px; padding: 1.15rem 2.5rem; background: transparent; color: var(--pr-local-ink); font: 600 1rem/1.65 var(--sans); letter-spacing: 0; text-align: center; }
body.theme-procession:is(.gl-film, .mu-choice) main .faq-question::after { right: .65rem; top: 1.15rem; color: #536d5e; }
body.theme-procession:is(.gl-film, .mu-choice) main .faq-question:hover { background: #e9ede4; }
body.theme-procession:is(.gl-film, .mu-choice) main .faq-answer { padding: 0 .875rem 1.5rem; color: var(--pr-local-copy); font-size: 1rem; line-height: 1.75; }
body.theme-procession:is(.gl-film, .mu-choice) main .faq-answer p { max-width: 64ch; margin-bottom: 0; color: var(--pr-local-copy); font-size: 1rem; line-height: 1.75; }

@media (max-width: 1100px) {
  body.theme-procession.gl-film .gl-film-coverage__grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 2rem; }
  body.theme-procession.gl-film .gl-film-coverage__list article { grid-template-columns: minmax(0, 1fr); gap: .625rem; }
  body.theme-procession.gl-film .gl-film-faq__grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 2rem; }
  body.theme-procession.gl-film .gl-film-settings { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.theme-procession.mu-choice .mu-choice-story__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.theme-procession.mu-choice .mu-choice-story blockquote { grid-column: 1 / -1; max-width: 54ch; padding: 1.5rem 0 0; border-left: 0; border-top: 1px solid var(--pr-local-line); }
  body.theme-procession.mu-choice .mu-choice-story blockquote p { max-width: 44ch; }
}

@media (max-width: 1023px) {
  body.theme-procession.gl-film :is(.gl-film-hero__grid, .gl-film-conversation__grid),
  body.theme-procession.mu-choice .mu-choice-hero { width: min(100% - 48px, 900px); gap: 1.75rem; }
}

@media (max-width: 820px) {
  body.theme-procession.gl-film :is(.gl-film-hero__grid, .gl-film-coverage__grid, .gl-film-privacy__grid, .gl-film-faq__grid, .gl-film-conversation__grid, .gl-film-statement__copy),
  body.theme-procession.mu-choice :is(.mu-choice-hero, .mu-choice-story__grid, .mu-choice-local__grid, .mu-choice-faq__grid) { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  body.theme-procession.gl-film .gl-film-frames { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.theme-procession.gl-film .gl-film-statement__copy span { padding: 1rem 0 0; border-left: 0; border-top: 1px solid var(--pr-local-line); }
  body.theme-procession.gl-film .gl-film-faq__figure { width: 100%; margin: 0 auto; }
  body.theme-procession.gl-film .gl-film-faq__figure img { height: 290px; }
  body.theme-procession.mu-choice .mu-choice-local__lead { padding: 0 0 1.75rem; border-left: 0; border-bottom: 1px solid var(--pr-local-line); }
  body.theme-procession.mu-choice .mu-choice-story blockquote { grid-column: auto; }
  body.theme-procession.gl-film .gl-film-related__links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  body.theme-procession.gl-film :is(.gl-film-hero__grid, .gl-film-conversation__grid),
  body.theme-procession.mu-choice .mu-choice-hero { width: calc(100% - 40px); padding-block: 2.125rem 2.5rem; }
  body.theme-procession:is(.gl-film, .mu-choice) main h1 { font-size: clamp(2.15rem, 8.1vw, 3rem); }
  body.theme-procession:is(.gl-film, .mu-choice) main h2 { font-size: clamp(1.85rem, 6.6vw, 2.4rem); }
  body.theme-procession:is(.gl-film, .mu-choice) main h3 { font-size: 1.5rem; }
  body.theme-procession.gl-film .gl-film-hero__figure img,
  body.theme-procession.mu-choice .mu-choice-hero__media img { height: clamp(220px, 61vw, 310px); max-height: 310px; }
  body.theme-procession.gl-film .gl-film-frames img { height: clamp(120px, 27vw, 205px); }
  body.theme-procession.gl-film .gl-film-frames figure { padding: .5rem .5rem 1rem; }
  body.theme-procession.gl-film .gl-film-frames figcaption span { font-size: 1.35rem; }
  body.theme-procession.gl-film .gl-film-frames figcaption small { font-size: .9375rem; }
  body.theme-procession.gl-film :is(.gl-film-statement__image, .gl-film-privacy, .gl-film-conversation) img,
  body.theme-procession.mu-choice .mu-choice-story figure img { height: clamp(220px, 56vw, 300px); max-height: 300px; }
  body.theme-procession.gl-film .gl-film-pricing__row,
  body.theme-procession.mu-choice :is(.mu-choice-pricing__grid, .mu-choice-services__grid) { grid-template-columns: minmax(0, 1fr); }
  body.theme-procession.gl-film .gl-film-pricing__row article { grid-template-rows: auto auto auto auto; padding: 1.75rem 1.125rem; }
  body.theme-procession.mu-choice .mu-choice-pricing__grid article { grid-template-rows: auto auto auto auto auto auto; padding: 1.75rem 1.125rem; }
  body.theme-procession.mu-choice .mu-choice-pricing__featured { padding-top: 1.75rem !important; }
  body.theme-procession.mu-choice .mu-choice-services__grid { gap: 2.5rem; }
  body.theme-procession.mu-choice .mu-choice-services__grid article { width: 100%; max-width: 540px; }
  body.theme-procession.mu-choice .mu-choice-services__image img { height: clamp(190px, 56vw, 260px); max-height: 260px; }
  body.theme-procession.mu-choice .mu-choice-conversation .button-row .button { flex: 0 1 auto; width: min(100%, 350px); min-width: 0; }
  body.theme-procession:is(.gl-film, .mu-choice) main .faq-question { padding-inline: 1.75rem; }
  body.theme-procession:is(.gl-film, .mu-choice) main .faq-question::after { right: .375rem; }
}

@media (max-width: 480px) {
  body.theme-procession.gl-film :is(.gl-film-settings, .gl-film-related__links) { grid-template-columns: minmax(0, 1fr); }
  body.theme-procession.gl-film .gl-film-settings article + article { border-left: 0; border-top: 1px solid var(--pr-local-line); }
  body.theme-procession.gl-film .gl-film-related__links a { border-left: 0; min-height: 100px; }
  body.theme-procession.gl-film .gl-film-hero__copy .button,
  body.theme-procession.gl-film .gl-film-conversation__copy .button,
  body.theme-procession.mu-choice .mu-choice-hero__copy .button { width: min(100%, 350px); padding-inline: 1rem; }
}

@media (max-width: 360px) {
  body.theme-procession.gl-film :is(.gl-film-hero__grid, .gl-film-conversation__grid),
  body.theme-procession.mu-choice .mu-choice-hero { width: calc(100% - 32px); }
}

@media (prefers-reduced-motion: reduce) {
  body.theme-procession.mu-choice .mu-choice-services__image img { transition: none; }
}
