.regulamin-page {
  position: relative;
  overflow: hidden;
  background: var(--color-void);
}

.regulamin-page .section {
  position: relative;
}

.regulamin-intro {
  border-bottom: 1px solid var(--color-steel);
  background-image: linear-gradient(rgba(56, 189, 248, 0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(56, 189, 248, 0.045) 1px, transparent 1px);
  background-size: 32px 32px;
}

.regulamin-intro__copy {
  width: min(100%, 43.75rem);
  min-width: 0;
  padding-left: var(--space-5);
  border-left: 3px solid var(--color-signal-orange);
}

.regulamin-intro__copy > .eyebrow {
  margin-bottom: var(--space-3);
}

.regulamin-intro__copy h1 {
  margin-bottom: var(--space-5);
}

.regulamin-intro__copy .lead {
  margin-bottom: 0;
}

.regulamin-status {
  display: grid;
  width: min(100%, 56.25rem);
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  margin-top: var(--space-6);
  border: var(--border-default);
  background: var(--surface-panel);
  box-shadow: var(--shadow-panel);
}

.regulamin-status__row {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(7rem, 0.7fr) minmax(10rem, 1fr) minmax(0, 2fr);
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--color-steel);
}

.regulamin-status__row:last-child {
  border-bottom: 0;
}

.regulamin-status__row > * {
  min-width: 0;
}

.regulamin-status__row strong,
.regulamin-status__row .mono {
  overflow-wrap: anywhere;
}

.regulamin-status__row .mono {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}

.regulamin-status__row--scope {
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: start;
}

.regulamin-status__row--scope p {
  margin: 0;
  font-size: var(--text-sm);
}

.regulamin-section__heading {
  min-width: 0;
}

.regulamin-section__heading > .eyebrow {
  margin-bottom: var(--space-3);
}

.regulamin-section__heading h2 {
  margin-bottom: 0;
}

.regulamin-section__heading--standard {
  width: min(100%, 45rem);
  margin-bottom: var(--space-6);
}

.regulamin-section__heading--usage {
  width: min(100%, 38.75rem);
  margin-bottom: var(--space-6);
}

.regulamin-section__heading--usage h2 {
  margin-bottom: var(--space-4);
}

.regulamin-section__heading--usage .lead {
  margin-bottom: 0;
}

.service-modules {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(15.625rem, 1fr) minmax(17.5rem, 1.2fr) minmax(15.625rem, 1fr);
  align-items: start;
  gap: var(--space-4);
}

.service-module {
  display: grid;
  min-width: 0;
  grid-template-columns: 100%;
  gap: var(--space-4);
  padding: var(--space-5);
  border: var(--border-default);
  background: var(--surface-panel);
  box-shadow: var(--shadow-panel);
}

.service-module--limit {
  border-left: 3px solid var(--color-signal-orange);
}

.service-module__number {
  width: max-content;
  min-width: 0;
  color: var(--color-beam-blue);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.08em;
}

.service-module__content {
  min-width: 0;
}

.service-module__content > .badge {
  margin-bottom: var(--space-3);
}

.service-module__content h3 {
  margin-bottom: var(--space-4);
}

.service-module__content p {
  max-width: 58rem;
  margin-bottom: 0;
  font-size: var(--text-sm);
}

.usage-grid {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(17.5rem, 0.34fr) minmax(26.25rem, 0.66fr);
  align-items: start;
  gap: var(--space-6);
}

.usage-grid > * {
  min-width: 0;
}

.usage-allowed,
.usage-protection {
  margin: 0;
}

.usage-allowed {
  padding: var(--space-5);
}

.usage-allowed > .tech-label,
.usage-prohibited > .tech-label {
  margin-bottom: var(--space-3);
}

.usage-allowed h3,
.usage-protection h3,
.usage-prohibited h3 {
  margin-bottom: var(--space-4);
}

.usage-allowed p,
.usage-protection p,
.usage-prohibited p {
  margin-bottom: 0;
}

.usage-allowed p:not(.tech-label) {
  max-width: 37.5rem;
}

.usage-protection {
  width: 100%;
}

.usage-protection p {
  max-width: 42.5rem;
}

.usage-prohibited {
  width: min(100%, 51.25rem);
  min-width: 0;
  margin-top: var(--space-6);
  padding: var(--space-5);
}

.usage-prohibited p:not(.tech-label) {
  max-width: 37.5rem;
}

.redirect-panels {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  justify-items: start;
  gap: var(--space-5);
}

.redirect-panel {
  display: flex;
  width: min(100%, 47.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

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

.redirect-panel--primary {
  border-top: 2px solid var(--color-signal-orange);
}

.redirect-panel--primary p:not(.tech-label) {
  max-width: 42.5rem;
}

.redirect-panel--external {
  width: min(100%, 40.625rem);
  margin-left: 3.5rem;
  border-left: 3px solid var(--color-beam-blue);
}

.redirect-panel--external p:not(.tech-label) {
  max-width: 37.5rem;
}

.redirect-panel__id {
  display: grid;
  min-width: 0;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: var(--space-4);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-steel);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
}

.redirect-panel__id span {
  color: var(--color-text-muted);
}

.redirect-panel__id code {
  width: max-content;
  max-width: 100%;
  overflow-wrap: normal;
  white-space: nowrap;
}

.liability-modules {
  display: grid;
  width: min(100%, 49.5rem);
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
}

.liability-module {
  display: grid;
  min-width: 0;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  gap: var(--space-5);
  padding: var(--space-5) 0;
  border-top: 1px solid var(--color-steel);
}

.liability-module:last-child {
  border-bottom: 1px solid var(--color-steel);
}

.liability-module--last {
  border-bottom: 2px solid var(--color-signal-orange) !important;
}

.liability-module__number {
  min-width: 0;
  color: var(--color-beam-blue);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.08em;
}

.liability-module__content {
  min-width: 0;
}

.liability-module__content h3 {
  margin-bottom: var(--space-3);
}

.liability-module__content p {
  max-width: 45rem;
  margin-bottom: 0;
}

.final-panels {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(22.5rem, 0.55fr) minmax(20rem, 0.45fr);
  align-items: start;
  gap: var(--space-5);
}

.final-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

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

.final-panel--update {
  border-top: 2px solid var(--color-signal-orange);
}

.final-panel--acceptance {
  margin-top: var(--space-6);
  border-left: 3px solid var(--color-beam-blue);
}

.final-panel p:not(.tech-label) {
  max-width: 36.25rem;
}

.regulamin-contact {
  border-top: 1px solid var(--color-steel);
}

.regulamin-contact__intro {
  width: min(100%, 35rem);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.regulamin-contact__intro > .eyebrow {
  margin-bottom: var(--space-3);
}

.regulamin-contact__intro h2 {
  margin-bottom: var(--space-4);
}

.regulamin-contact__intro .lead {
  margin-bottom: 0;
}

.contact-panel {
  display: grid;
  width: min(100%, 47.5rem);
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
  border: var(--border-blue);
  font-style: normal;
}

.contact-panel__row {
  display: grid;
  min-width: 0;
  grid-template-columns: 7.5rem minmax(0, 1fr);
  align-items: center;
  gap: var(--space-4);
  min-height: 3.5rem;
  padding: var(--space-3) var(--space-5);
  border-bottom: 1px solid var(--color-steel);
}

.contact-panel__row:last-child {
  border-bottom: 0;
}

.contact-panel__row > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

.contact-panel__row a {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
}

@media (max-width: 56.25rem) {
  .service-modules,
  .usage-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .service-modules {
    gap: var(--space-4);
  }

  .service-module {
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: start;
  }

  .usage-grid {
    gap: var(--space-5);
  }

  .usage-prohibited {
    width: 100%;
  }
}

@media (max-width: 53.125rem) {
  .final-panels {
    grid-template-columns: minmax(0, 1fr);
  }

  .final-panel--acceptance {
    margin-top: 0;
  }
}

@media (max-width: 50rem) {
  .redirect-panel--external {
    margin-left: 0;
  }
}

@media (max-width: 43.75rem) {
  .regulamin-intro__copy {
    width: 100%;
  }

  .regulamin-status,
  .regulamin-section__heading--standard,
  .regulamin-section__heading--usage,
  .liability-modules,
  .regulamin-contact__intro {
    width: 100%;
  }

  .liability-module {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
  }
}

@media (max-width: 37.5rem) {
  .regulamin-intro__copy {
    padding-left: var(--space-4);
  }

  .regulamin-status__row,
  .regulamin-status__row--scope {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
    padding: var(--space-4);
  }

  .service-module {
    grid-template-columns: minmax(0, 1fr);
    padding: var(--space-5);
  }

  .usage-allowed,
  .usage-prohibited {
    padding: var(--space-5);
  }

  .redirect-panel__id {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  .redirect-panel__id code {
    width: 100%;
    overflow-x: auto;
  }

  .contact-panel__row {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: var(--space-2);
    padding: var(--space-4);
  }
}

@media (prefers-reduced-motion: reduce) {
  .regulamin-page,
  .regulamin-page * {
    transition: none !important;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }
