@font-face {
  font-family: "Plain";
  src: url("/fonts/Plain/Plain-Light.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Plain";
  src: url("/fonts/Plain/Plain-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Items Text";
  src: url("/fonts/Items Text/ItemsText-Regular.woff2") format("woff2"),
       url("/fonts/Items Text/ItemsText-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Items Text";
  src: url("/fonts/Items Text/ItemsText-RegularItalic.woff2") format("woff2"),
       url("/fonts/Items Text/ItemsText-RegularItalic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Items Text";
  src: url("/fonts/Items Text/ItemsText-Bold.woff2") format("woff2"),
       url("/fonts/Items Text/ItemsText-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Items Text";
  src: url("/fonts/Items Text/ItemsText-BoldItalic.woff2") format("woff2"),
       url("/fonts/Items Text/ItemsText-BoldItalic.woff") format("woff");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Control Compressed";
  src: url("/fonts/NY Phil Custom/ControlCompressed-NYPhil.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --bg: #e8e8e8;
  --card: #f3f3f3;
  --ink: #0b0b0b;
  --line: #c9c9c9;
  --magenta: #ea009f;
  --blue: #00aeef;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: "Plain", Arial, sans-serif;
  line-height: 1.45;
}

a,
a:visited {
  color: var(--ink);
  font-weight: 500;
  text-decoration: underline;
}

a:hover,
a:focus {
  color: var(--ink);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
audio:focus-visible,
[role="button"]:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 2px;
}

.tos-page {
  width: min(1080px, calc(100% - 32px));
  margin: 20px auto 72px;
}

.tos-header {
  margin: 0 0 20px;
  text-align: center;
}

.tos-header h1 {
  margin: 0;
  font-family: "Control Compressed", Impact, sans-serif !important;
  font-size: clamp(40px, 7vw, 72px);
  line-height: 0.95;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.tos-header p {
  margin: 6px 0 0;
  font-family: "Items Text", Georgia, serif;
  font-size: 18px;
}

.tos-content {
  background: var(--card);
  border-top: 3px solid var(--magenta);
  padding: 18px;
}

.mob-line > img.lrg-hero {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 0 14px;
  border: 1px solid var(--line);
}

.mob-line {
  font-size: 18px;
}

.mob-line p,
.mob-line {
  font-size: 18px;
}

.tos-sections {
  margin-top: 24px;
  display: grid;
  gap: 12px;
}

.tos-section {
  border: 1px solid var(--line);
  background: #fff;
}

.tos-section[open] {
  box-shadow: 0 1px 0 rgba(0,0,0,0.03);
}

.tos-section > summary {
  list-style: none;
  cursor: pointer;
  padding: 12px 14px;
  font-family: "Items Text", Georgia, serif;
  font-size: 22px;
  font-weight: 400;
  border-left: 4px solid var(--blue);
}

.tos-section > summary::-webkit-details-marker {
  display: none;
}

.tos-section > summary::after {
  content: "+";
  float: right;
  font-family: "Plain", Arial, sans-serif;
  font-weight: 500;
}

.tos-section[open] > summary::after {
  content: "−";
}

.tos-section__body {
  padding: 0 14px 14px;
  border-top: 1px solid var(--line);
  overflow: auto;
}

.tos-section__body p,
.tos-section__body li {
  font-size: 17px;
}

.tos-section__body img {
  max-width: 100%;
  height: auto !important;
}

.tos-section__body [style*="float: left"] {
  margin-right: 12px !important;
  margin-bottom: 10px !important;
}

.tos-section__body div[style*="float: left"][style*="width: 280px"] {
  width: min(100%, 280px) !important;
}

.page-acc {
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (max-width: 720px) {
  .tos-page {
    width: calc(100% - 16px);
    margin-top: 12px;
  }

  .tos-content {
    padding: 12px;
  }

  .mob-line,
  .mob-line p,
  .tos-section__body p,
  .tos-section__body li {
    font-size: 16px;
  }

  .tos-section > summary {
    font-size: 19px;
  }

  .tos-section__body [style*="float: left"] {
    float: none !important;
    margin-right: 0 !important;
  }
}
