


.card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(18em, 1fr)); gap: 1.5em; }
.moment-list, .terms-list { list-style: none; margin: 0; padding: 0; max-width: 46em; }
.step-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.4em; }
.faq-list { max-width: 48em; }


.order-layout {
  display: grid;
  grid-template-areas: "brief aside";
  grid-template-columns: 1.45fr 1fr;
  gap: var(--rhythm-wide);
  align-items: start;
}
.order-brief { grid-area: brief; }
.order-aside { grid-area: aside; position: sticky; top: 8.5em; }


.formula-band { display: grid; grid-template-areas: "intro" "carousel"; gap: var(--rhythm-base); }
.formula-intro { grid-area: intro; }
.formula-carousel { grid-area: carousel; background: rgba(19, 13, 11, 0.42); border: 1px solid var(--edge-soft); border-top: 2px solid var(--edge-strong); border-radius: var(--edge-round-wide); padding: 1.4em; }

.section-body { position: relative; }


.page-masthead { padding: 9.5em 1em 2.4em; background: linear-gradient(180deg, #2b1d16 0%, #1c1411 100%); }
.page-masthead h1 { font-size: 2.6em; max-width: 14em; }
.page-masthead .page-stamp { color: var(--content-muted); font-size: 0.9em; margin: 0; }
.prose-block { max-width: 44em; }
.prose-block h2 { font-size: 1.45em; margin-top: var(--rhythm-wide); }
.prose-block h3 { font-size: 1.12em; margin-top: var(--rhythm-base); }
.prose-block ul { padding-left: 1.3em; margin: 0 0 var(--rhythm-base); }
.prose-block li { margin-bottom: 0.5em; }
.prose-block a { text-decoration: underline; }
.prose-contact { border: 1px solid var(--edge-strong); border-radius: var(--edge-round-wide); padding: 1.4em 1.6em; background: rgba(19, 13, 11, 0.4); }
.prose-contact p { margin-bottom: 0.4em; }

@media (max-width: 1024px) {
  .order-layout { grid-template-areas: "brief" "aside"; grid-template-columns: 1fr; }
  .order-aside { position: static; }
  .step-row { grid-template-columns: 1fr 1fr; }
  .page-masthead { padding-top: 9em; }
  .page-masthead h1 { font-size: 2.1em; }
}


@media (max-width: 768px) {
  .card-grid { grid-template-columns: 1fr; gap: 1em; }
  .step-row { grid-template-columns: 1fr; }
  .page-masthead { padding: 8em 1.1em 2em; }
  .page-masthead h1 { font-size: 1.85em; }

  .is-collapsible { border-bottom: 1px solid var(--edge-soft); }
  .is-collapsible .section-title {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.6em;
    max-width: none;
    margin-bottom: 0.6em;
  }
  .is-collapsible .section-title::after {
    content: "\25BE";
    font-size: 0.62em;
    color: var(--action-hover);
    transition: transform var(--motion-glide);
  }
  .is-collapsible.is-collapsed .section-title::after { transform: rotate(-90deg); }
  .is-collapsible .section-body { max-height: 420em; overflow: hidden; transition: max-height var(--motion-glide); }
  .is-collapsible.is-collapsed .section-body { max-height: 0; }
  .is-collapsible.is-collapsed .section-lede { display: none; }
}
