/* =========================================================
   ABOUT PAGE — TYPOGRAPHY + LAYOUT
   Desktop first; Mobile overrides at the end.
   --------------------------------------------------------- */

/* Container */
.about-page-container {
  margin: 10px 120px 39px;
}
.page-template-template-ALP-privacy .about-page-container {
  margin-top: 53px;
  margin-bottom: 0;
}

/* Typography defaults (desktop) */
.about-page-container,
.about-page-content {
  font-family: 'Archivo', sans-serif;
  font-size: 24px;
  line-height: 1.5;
  font-weight: 400;
  color: #191919;
}

/* Ensure everything inside inherits base text */
.about-page-container h1,
.about-page-container h2,
.about-page-container h3,
.about-page-container h4,
.about-page-container h5,
.about-page-container h6,
.about-page-container p,
.about-page-container li,
.about-page-container a,
.about-page-container blockquote,
.about-page-container figcaption,
.about-page-content h1,
.about-page-content h2,
.about-page-content h3,
.about-page-content h4,
.about-page-content h5,
.about-page-content h6,
.about-page-content p,
.about-page-content li,
.about-page-content a,
.about-page-content blockquote,
.about-page-content figcaption {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: normal;
}

/* H5 exception */
.about-page-container h5,
.about-page-content h5 {
  font-size: 18px;
  font-style: italic;
  line-height: 1.5;
  font-weight: 400;
}

/* Header styles */
.about-page-container h2 {
  font-weight: 700;
  margin-bottom: 10px;
}
.about-page-container h3 {
  font-weight: 600;
  color: #191919;
  margin: 0;
}

/* Paragraphs */
.about-page-container p {
  text-align: center;
  margin: 12px auto 22px;
}

/* ACF WYSIWYG Blog Styling */
.about-page-content {
  max-width: 750px;
  margin: 0 auto;
  line-height: 1.5;
  color: #222;
}
.about-page-content p {
  margin: 0 0 1rem;
}

/* Lists */
.about-page-content ul,
.about-page-content ol {
  margin: .75rem 0 .75rem 1.5rem;
}
.about-page-content li {
  margin: .4rem 0;
}

/* Checklist */
.about-page-content .checklist {
  list-style: none;
  margin-left: 0;
}
.about-page-content .checklist li {
  position: relative;
  padding-left: 1.75rem;
}
.about-page-content .checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: .15rem;
  font-weight: 700;
  color: #ff3b30;
}

/* Feature list cards */
.about-page-content .feature-list {
  list-style: none;
  margin-left: 0;
}
.about-page-content .feature-list li {
  border: 1px solid #eee;
  border-left: 4px solid #ff3b30;
  border-radius: 8px;
  padding: .75rem .9rem;
  margin: .6rem 0;
  background: #fff;
  box-shadow: 0 1px 0 rgba(0,0,0,.02);
}

/* Highlight */
.about-page-content mark {
  background: linear-gradient(180deg, rgba(255,235,140,.7), rgba(255,235,140,.7));
  padding: 0 .15em;
  border-radius: .15em;
}

/* Blockquotes / Pullquotes */
.about-page-content blockquote,
.about-page-content .pullquote {
  margin: 1.5rem 0;
  padding: 1rem 1.25rem;
  border-left: 4px solid #ff3b30;
  background: #fff7f6;
  border-radius: 6px;
}
.about-page-content blockquote p,
.about-page-content .pullquote p {
  font-style: italic;
  margin: 0 0 .5rem;
}
.about-page-content blockquote cite,
.about-page-content .pullquote cite {
  display: block;
  font-size: 0.9em;
  color: #666;
  margin-top: .25rem;
}

/* Figures & Images */
.about-page-content figure {
  margin: 1rem 0;
}
.about-page-content figure img {
  display: block;
  width: 100%;
  height: auto;
}
.about-page-content figure figcaption {
  font-size: .9rem;
  color: #666;
  text-align: center;
  margin-top: .5rem;
}

/* Links */
.about-page-content a {
  text-decoration: none;
  color: #191919;
}

/* Tighten spacing */
.about-page-content h2 + p,
.about-page-content h3 + p,
.about-page-content h3 + ul {
  margin-top: .25rem;
}

/* TOC container */
#toc {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  background: #f8f9fa;
  border: 1px solid #e2e3e5;
  border-radius: 8px;
  padding: 12px 14px;
  line-height: 1.4;
  margin: 16px 0 24px;
}

/* TOC title */
#toc .toc-title {
  font-weight: 700;
  margin: 0 0 8px;
}

/* List reset */
#toc ol, #toc ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Indentation per level */
#toc .toc-level-2 { padding-left: 0; }
#toc .toc-level-3 { padding-left: 14px; }
#toc .toc-level-4 { padding-left: 28px; }

/* Links */
#toc a {
  text-decoration: none;
  color: #0b2d35;
}
#toc a:hover { text-decoration: underline; }

/* Desktop float (right column feel) */
@media (min-width: 992px) {
  #toc {
    float: right;
    width: 320px;
    margin: 0 0 24px 24px; /* pushes it to the right of content */
    position: sticky;
    top: 24px;
  }
}

/* Mobile: full width, stacked */
@media (max-width: 991px) {
  #toc { width: 100%; float: none; position: static; }
}


/* =========================
   MOBILE (≤1024px)
   ========================= */
@media (max-width: 1024px) {
  .about-page-container {
    margin: 30px 10px;
    padding: 10px;

  }
  .page-template-template-ALP-privacy .about-page-container {
    margin-top: 30px;
  }

  /* Override base text size */
  .about-page-container,
  .about-page-content {
    font-size: 18px;
    line-height: 1.5;
    font-weight: 400;
  }

  /* H5 smaller italic */
  .about-page-container h5,
  .about-page-content h5 {
    font-size: 12px;
    font-style: italic;
    line-height: 1.5;
  }

  .about-page-container h2,
  .about-page-container h3,
  .about-page-container p {
    margin-top: 20px;
    text-align: center;
  }
}
