.resource-page {
  padding-bottom:clamp(64px,7vw,104px);
}

.resource-header {
  max-width:1100px;
  padding-top:clamp(40px,6vw,80px);
  padding-bottom:clamp(32px,4vw,52px);
}

.resource-header h1 {
  max-width:900px;
  font-size:clamp(36px,4.1vw,56px);
  line-height:1.1;
  letter-spacing:-.028em;
  text-wrap:balance;
}

.resource-header .eyebrow {
  margin-bottom:16px;
}

.resource-breadcrumb {
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin-bottom:36px;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}

.resource-breadcrumb a {
  text-decoration:underline;
  text-underline-offset:4px;
}

.resource-breadcrumb a:hover {
  color:var(--ink);
}

.resource-coverage {
  max-width:800px;
  margin-top:24px;
  color:var(--muted);
  font-size:14px;
  line-height:1.65;
}

.resource-reading {
  max-width:1000px;
}

.resource-contents {
  margin-bottom:40px;
  border-block:1px solid var(--line);
}

.resource-scope {
  margin-bottom:24px;
  padding:0 22px;
  border-radius:var(--radius-input);
  background:var(--section-tint);
  font-size:15px;
  line-height:1.65;
}

.resource-scope summary {
  cursor:pointer;
  font-weight:500;
  min-height:44px;
  margin-inline:-22px;
  padding:18px 22px;
}

.resource-scope[open] { padding-bottom:18px; }
.resource-scope > p:first-of-type { margin-top:0; }

.resource-scope summary span {
  margin-left:12px;
  color:var(--muted);
  font-size:13px;
  font-weight:400;
}

.resource-scope > p { margin-top:18px; }
.resource-scope ul { margin-block:18px; padding:0; list-style:none; }
.resource-scope li { display:flex; align-items:baseline; gap:14px; }
.resource-scope li + li { margin-top:8px; }
.resource-scope li > span { flex:none; color:var(--muted); font-size:13px; }
.resource-scope-note { color:var(--muted); font-size:13px; }
.resource-scope a,
.resource-classification-note a { text-decoration:underline; text-underline-offset:3px; }

.resource-contents summary {
  padding:17px 0;
  cursor:pointer;
  font-size:16px;
  font-weight:500;
}

.resource-contents summary span {
  margin-left:12px;
  color:var(--muted);
  font-size:13px;
  font-weight:400;
}

.resource-contents nav {
  padding:0 0 24px;
}

.resource-contents ol {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 36px;
  padding-left:22px;
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.5;
}

.resource-contents a {
  color:var(--ink);
  text-decoration:underline;
  text-decoration-color:var(--line);
  text-underline-offset:4px;
}

.resource-contents a:hover {
  text-decoration-color:var(--ink);
}

.resource-prose {
  font-size:17px;
  line-height:1.75;
  overflow-wrap:break-word;
}

.resource-prose > p:first-child {
  font-size:20px;
  line-height:1.65;
}

.resource-prose section {
  margin-top:48px;
}

.resource-prose h2 {
  margin-bottom:20px;
  font-size:clamp(28px,2.7vw,36px);
  line-height:1.15;
  letter-spacing:-.025em;
  scroll-margin-top:32px;
  text-wrap:balance;
}

.resource-prose h3 {
  margin-top:30px;
  margin-bottom:12px;
  font-size:20px;
  line-height:1.4;
  letter-spacing:-.015em;
}

.resource-prose p + p {
  margin-top:18px;
}

.resource-prose a {
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-decoration-color:var(--muted);
  text-underline-offset:3px;
  overflow-wrap:anywhere;
}

.resource-prose a:hover {
  text-decoration-color:var(--ink);
  text-decoration-thickness:2px;
}

.resource-prose ul,
.resource-prose ol {
  padding-left:25px;
  margin:22px 0;
}

.resource-prose li + li {
  margin-top:12px;
}

.resource-prose li::marker {
  color:var(--muted);
}

.resource-table {
  max-width:100%;
  margin:28px 0;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  border:1px solid var(--line);
  border-radius:var(--radius-input);
}

.resource-table table {
  width:100%;
  border-collapse:collapse;
  font-size:15px;
  line-height:1.6;
  text-align:left;
}

.resource-table caption {
  padding:14px 18px;
  background:var(--surface);
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font-size:13px;
  text-align:left;
}

.resource-table th,
.resource-table td {
  min-width:160px;
  padding:15px 18px;
  vertical-align:top;
}

.resource-table th {
  background:var(--section-tint);
  font-weight:500;
}

.resource-table tr + tr td,
.resource-table tbody tr:first-child td {
  border-top:1px solid var(--line);
}

.resource-related {
  max-width:1100px;
  margin-top:clamp(56px,7vw,88px);
}

.resource-related-heading {
  padding-top:32px;
  border-top:1px solid var(--line);
}

.resource-related-heading .eyebrow {
  margin-bottom:12px;
}

.resource-related h2,
.resource-section-heading h2,
.resource-method-feature h2,
.resource-strategy h2 {
  font-size:clamp(28px,2.8vw,38px);
  line-height:1.15;
  letter-spacing:-.025em;
}

.resource-related-links {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-top:26px;
}

.resource-related-links a {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  min-height:84px;
  padding:20px;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-input);
  font-size:16px;
  line-height:1.5;
}

.resource-related-links a > span:last-child {
  font-size:23px;
  line-height:1;
}

.resource-related-links a:hover {
  border-color:var(--ink);
}

.resource-strategy-wrap {
  max-width:1240px;
  margin-top:clamp(48px,6vw,80px);
}

.resource-strategy {
  padding:clamp(28px,4vw,48px);
  background:var(--section-tint);
  border-radius:var(--radius-panel);
}

.resource-strategy > div {
  max-width:650px;
}

.resource-strategy .eyebrow {
  margin-bottom:14px;
}

.resource-strategy p:not(.eyebrow) {
  margin-top:18px;
  color:var(--muted);
  font-size:17px;
  line-height:1.6;
}

.resource-strategy .button {
  margin-top:28px;
}

.resource-hub .resource-header,
.resource-guide-list,
.resource-method-feature {
  max-width:1240px;
}

.resource-hub .resource-header {
  padding-bottom:clamp(44px,6vw,76px);
}

.resource-hub-intro {
  max-width:720px;
  margin-top:24px;
  font-size:clamp(19px,1.8vw,22px);
  line-height:1.6;
}

.resource-classification-note {
  max-width:760px;
  margin-top:18px;
  color:var(--muted);
  font-size:15px;
  line-height:1.65;
}

.resource-section-heading {
  margin-bottom:28px;
}

.resource-section-heading p {
  margin-top:14px;
  color:var(--muted);
  font-size:17px;
}

.resource-guide-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

.resource-guide-card {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:28px;
  background:var(--surface);
  border-radius:var(--radius-panel);
}

.resource-guide-card .eyebrow { color:var(--muted); font-size:13px; margin-bottom:16px; }

.resource-guide-card h3 {
  margin-bottom:18px;
  font-family:var(--serif);
  font-size:clamp(25px,2.2vw,30px);
  font-weight:400;
  line-height:1.15;
  letter-spacing:-.025em;
}

.resource-guide-card h3 a:hover {
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:5px;
}

.resource-guide-card > p:not(.eyebrow) {
  font-size:16px;
  line-height:1.65;
  margin-bottom:24px;
  color:var(--muted);
}

.resource-guide-card .text-link {
  margin-top:auto;
  gap:18px;
  font-size:15px;
}

.resource-method-feature {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(28px,5vw,64px);
  margin-top:clamp(56px,7vw,88px);
}

.resource-method-feature > div {
  border-top:1px solid var(--line);
  padding-top:28px;
}

.resource-method-feature h2 {
  max-width:440px;
}

.resource-method-feature p:not(.eyebrow) {
  color:var(--muted);
  font-size:17px;
  line-height:1.7;
}

.resource-method-feature .text-link {
  margin-top:20px;
}

@media (min-width:701px) and (max-width:1050px) {
  .resource-guide-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .resource-related-links { grid-template-columns:1fr; }
}

@media (max-width:700px) {
  .resource-contents ol,
  .resource-related-links,
  .resource-guide-grid,
  .resource-method-feature {
    grid-template-columns:1fr;
  }

  .resource-breadcrumb {
    margin-bottom:28px;
  }

  .resource-scope summary span { display:block; margin:4px 0 0 18px; }

  .resource-prose {
    font-size:16px;
    line-height:1.75;
  }

  .resource-prose > p:first-child {
    font-size:19px;
  }

  .resource-prose section {
    margin-top:38px;
  }

  .resource-prose h3 {
    font-size:19px;
  }

  .resource-table th,
  .resource-table td {
    padding:12px 14px;
  }

  .resource-method-feature > div + div {
    border-top:0;
    padding-top:0;
  }

  .resource-strategy .button {
    width:100%;
    gap:18px;
    text-align:left;
  }

  .resource-guide-card .text-link {
    align-items:flex-start;
  }
}

@media print {
  .resource-contents,
  .resource-related,
  .resource-strategy-wrap {
    display:none;
  }

  .resource-reading,
  .resource-header {
    max-width:none;
    padding-inline:0;
  }

  .resource-table {
    overflow:visible;
  }
}
