.terms-page {
  overflow: hidden;
}

.terms-page__hero {
  position: relative;
  padding-block-start: var(--space-10);
  background: linear-gradient(90deg, rgba(23, 18, 24, 0.96), rgba(11, 10, 13, 0.4));
}

.terms-page__hero::before {
  position: absolute;
  top: 0;
  left: 0;
  width: min(36rem, 60vw);
  height: 14rem;
  background: radial-gradient(circle at 35% 20%, rgba(230, 164, 87, 0.17), transparent 67%);
  content: "";
  pointer-events: none;
}

.terms-page__hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.terms-page__title-block {
  grid-column: 1 / span 8;
  min-width: 0;
}

.terms-page__title-block h1 {
  max-width: 12ch;
}

.terms-page__intro {
  max-width: 58ch;
}

.terms-page__metadata {
  display: flex;
  align-items: center;
  width: fit-content;
  min-width: 0;
  min-height: 2.75rem;
  padding-top: var(--space-3);
  border-top: var(--border-copper);
  color: var(--color-mist-white);
  font-family: var(--font-heading);
  font-size: var(--text-sm);
  font-weight: 500;
}

.terms-page__annotation {
  grid-column: 10 / span 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-width: 0;
  gap: var(--space-3);
  padding-left: var(--space-4);
  border-left: var(--border-copper);
}

.terms-page__annotation > span:last-child,
.terms-page__context-rail > span:last-child {
  display: block;
  width: 100%;
  max-width: 8rem;
  height: 1px;
  background: var(--color-copper);
}

.terms-page__section-heading {
  width: 100%;
  max-width: 26rem;
  margin-bottom: var(--space-6);
}

.terms-page__paired-clauses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: calc((100% - (var(--space-5) * 2)) * 0.833333);
  min-width: 0;
  gap: var(--space-5);
}

.terms-page__clause-panel,
.terms-page__lead-use,
.terms-page__compact-module,
.terms-page__property-panel {
  min-width: 0;
  border: var(--border-copper);
  background: var(--color-slate-plum);
}

.terms-page__clause-panel {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  gap: var(--space-4);
  padding: var(--panel-padding);
  box-shadow: var(--shadow-fold), var(--shadow-module);
}

.terms-page__clause-panel > * {
  min-width: 0;
  margin: 0;
}

.terms-page__clause-panel p {
  max-width: 46ch;
}

.terms-page__address {
  padding-top: var(--space-3);
  border-top: var(--border-subtle);
  color: var(--color-white);
  font-family: var(--font-heading);
  font-weight: 600;
}

.terms-page__use {
  background: var(--color-plum-black);
}

.terms-page__use-heading,
.terms-page__property-heading {
  width: 100%;
  max-width: 34rem;
  margin-bottom: var(--space-6);
}

.terms-page__use-matrix {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
}

.terms-page__lead-use {
  grid-column: 1 / span 6;
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
  padding: var(--panel-padding-feature);
  box-shadow: var(--shadow-fold), var(--shadow-panel);
}

.terms-page__lead-use > * {
  min-width: 0;
  margin: 0;
}

.terms-page__lead-use p:last-child {
  max-width: 52ch;
}

.terms-page__use-rail {
  grid-column: 8 / span 5;
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-5);
}

.terms-page__compact-module {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
  padding: var(--panel-padding);
}

.terms-page__compact-module > * {
  min-width: 0;
  margin: 0;
}

.terms-page__compact-module p,
.terms-page__compact-module .terms-page__rule-list {
  max-width: 38ch;
}

.terms-page__rule-list {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-3);
  margin: 0;
}

.terms-page__rule-list li {
  position: relative;
  min-width: 0;
  padding-left: var(--space-4);
}

.terms-page__rule-list li::before {
  position: absolute;
  top: 0.68em;
  left: 0;
  width: 0.4rem;
  height: 1px;
  background: var(--color-copper);
  content: "";
}

.terms-page__information-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  min-width: 0;
  gap: var(--space-5);
}

.terms-page__reading-slab {
  grid-column: 1 / span 8;
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-6);
  padding: var(--panel-padding-feature);
  border: var(--border-copper);
  background: var(--color-plum-black);
  box-shadow: var(--shadow-panel);
}

.terms-page__reading-slab > * {
  min-width: 0;
  margin: 0;
}

.terms-page__reading-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-6);
}

.terms-page__reading-clause,
.terms-page__availability-clause {
  min-width: 0;
}

.terms-page__reading-clause p,
.terms-page__availability-clause p {
  max-width: 62ch;
}

.terms-page__availability-clause {
  padding: var(--space-5);
  border-left: 2px solid var(--color-copper);
  background: var(--color-slate-plum);
}

.terms-page__availability-clause > :last-child {
  margin-bottom: 0;
}

.terms-page__context-rail {
  grid-column: 10 / span 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  gap: var(--space-3);
  padding-top: var(--space-8);
}

.terms-page__context-rail .utility-label {
  max-width: 24ch;
}

.terms-page__property {
  background: var(--color-plum-black);
}

.terms-page__property-panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: calc((100% - (var(--space-5) * 2)) * 0.833333);
  min-width: 0;
  gap: var(--space-5);
}

.terms-page__property-panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  gap: var(--space-4);
  padding: var(--panel-padding);
  box-shadow: var(--shadow-module);
}

.terms-page__property-panel > * {
  min-width: 0;
  margin: 0;
}

.terms-page__property-panel p,
.terms-page__property-panel .terms-page__rule-list {
  max-width: 45ch;
}

.terms-page__liability-panel {
  display: flex;
  flex-direction: column;
  width: calc((100% - (var(--space-5) * 3)) * 0.75);
  min-width: 0;
  gap: var(--space-6);
  padding: var(--panel-padding-feature);
  border: var(--border-copper);
  background: var(--color-plum-black);
  box-shadow: var(--shadow-fold), var(--shadow-panel);
}

.terms-page__liability-panel > * {
  min-width: 0;
  margin: 0;
}

.terms-page__numbered-clauses {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.terms-page__numbered-clause {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-4);
  padding-block: var(--space-5);
  border-top: 1px solid var(--color-deep-slate);
}

.terms-page__numbered-clause:first-child {
  padding-top: 0;
  border-top: 0;
}

.terms-page__numbered-clause:last-child {
  padding-bottom: 0;
}

.terms-page__clause-number {
  min-width: 0;
  color: var(--color-copper);
  font-family: var(--font-heading);
  font-size: var(--text-lg);
  font-weight: 700;
  line-height: var(--leading-heading);
}

.terms-page__numbered-copy {
  min-width: 0;
}

.terms-page__numbered-copy p {
  max-width: 62ch;
}

.terms-page__questions-panel {
  display: flex;
  flex-direction: column;
  width: calc((100% - (var(--space-5) * 4)) * 0.666667);
  min-width: 0;
  gap: var(--space-5);
  padding: var(--panel-padding-feature);
  border: var(--border-copper);
  background: linear-gradient(135deg, rgba(230, 164, 87, 0.12), transparent 30%), var(--color-plum-black);
  box-shadow: var(--shadow-panel);
}

.terms-page__questions-panel > * {
  min-width: 0;
  margin: 0;
}

.terms-page__questions-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  gap: var(--space-4);
}

.terms-page__questions-content > * {
  min-width: 0;
  margin: 0;
}

.terms-page__questions-content > p:first-child {
  max-width: 48ch;
}

.terms-page__contact-action {
  width: fit-content;
}

.terms-page__contact-links {
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
  gap: var(--space-3) var(--space-5);
}

.terms-page__contact-links > * {
  min-width: 0;
}

.terms-page__questions-address {
  color: var(--color-muted-lilac);
  font-size: var(--text-sm);
}

@media (max-width: 59.99rem) {
  .terms-page__hero-grid,
  .terms-page__information-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .terms-page__title-block {
    grid-column: 1 / span 8;
  }

  .terms-page__annotation {
    grid-column: 1 / span 8;
    flex-direction: row;
    align-items: center;
    padding-left: 0;
    border-left: 0;
  }

  .terms-page__annotation > span:last-child {
    max-width: 5rem;
  }

  .terms-page__paired-clauses,
  .terms-page__property-panels {
    width: 100%;
  }

  .terms-page__use-matrix {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .terms-page__lead-use {
    grid-column: 1 / span 8;
  }

  .terms-page__use-rail {
    grid-column: 1 / span 8;
  }

  .terms-page__reading-slab {
    grid-column: 1 / span 8;
  }

  .terms-page__context-rail {
    grid-column: 1 / span 8;
    flex-direction: row;
    align-items: center;
    padding-top: 0;
  }

  .terms-page__context-rail .utility-label {
    max-width: none;
  }

  .terms-page__context-rail > span:last-child {
    max-width: 5rem;
  }

  .terms-page__liability-panel,
  .terms-page__questions-panel {
    width: 100%;
    box-shadow: var(--shadow-panel);
  }
}

@media (max-width: 56.24rem) {
  .terms-page__paired-clauses,
  .terms-page__property-panels {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 47.49rem) {
  .terms-page__hero {
    padding-block-start: var(--space-8);
  }

  .terms-page__hero-grid,
  .terms-page__information-grid,
  .terms-page__use-matrix {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .terms-page__title-block,
  .terms-page__annotation,
  .terms-page__lead-use,
  .terms-page__use-rail,
  .terms-page__reading-slab,
  .terms-page__context-rail {
    grid-column: 1;
    width: 100%;
  }

  .terms-page__title-block h1 {
    font-size: clamp(2.5rem, 11vw, 3.5rem);
  }

  .terms-page__annotation,
  .terms-page__context-rail {
    display: none;
  }

  .terms-page__section-heading,
  .terms-page__use-heading,
  .terms-page__property-heading {
    margin-bottom: var(--space-5);
  }

  .terms-page__paired-clauses,
  .terms-page__property-panels {
    gap: var(--space-4);
  }

  .terms-page__clause-panel,
  .terms-page__compact-module,
  .terms-page__property-panel {
    padding: var(--panel-padding);
    box-shadow: var(--shadow-module);
  }

  .terms-page__lead-use,
  .terms-page__reading-slab,
  .terms-page__liability-panel,
  .terms-page__questions-panel {
    padding: var(--panel-padding);
    box-shadow: var(--shadow-module);
  }

  .terms-page__use-rail,
  .terms-page__reading-content,
  .terms-page__liability-panel {
    gap: var(--space-5);
  }

  .terms-page__availability-clause {
    padding: var(--space-4);
  }

  .terms-page__numbered-clause {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
    padding-block: var(--space-5);
  }

  .terms-page__clause-number {
    font-size: var(--text-sm);
    letter-spacing: 0.12em;
  }

  .terms-page__contact-action {
    width: 100%;
  }

  .terms-page__contact-links {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-3);
  }
}

/* mobile-photo-center */
@media (max-width: 56.25rem) {
  img,
  video {
    object-position: center !important;
  }

  .image-frame,
  .media-frame,
  .card__media,
  [class*='__media'] {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    justify-self: stretch;
    overflow: hidden;
    grid-column: 1 / -1;
  }

  .image-frame img,
  .media-frame img,
  .media-frame video,
  .card__media img,
  [class*='__media'] img,
  [class*='hero'] img,
  [class*='hero__image'] {
    width: 100%;
    height: 100%;
    max-width: none;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    object-position: center !important;
  }
}
