/* Resource pages use the same tokens, typography and controls as the homepage. */
.resource-shell { max-width: 1160px; margin: 0 auto; padding: 56px clamp(20px, 4vw, 32px) 80px; }
.resource-breadcrumb { display: inline-block; margin-bottom: 32px; font-size: 14px; }
.resource-eyebrow { margin: 0 0 16px; color: var(--brand-700); font: 600 12px var(--font-body); letter-spacing: .12em; text-transform: uppercase; }
.resource-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .85fr); grid-template-areas: "intro form" "about form"; gap: 32px clamp(32px, 5vw, 72px); align-items: start; }
.resource-intro { grid-area: intro; }
.resource-form-card { grid-area: form; }
.resource-title { margin: 0 0 24px; color: var(--neutral-900); font: 800 clamp(32px, 4vw, 48px)/1.15 var(--font-display); letter-spacing: -.04em; overflow-wrap: break-word; }
.resource-summary { margin: 0; color: var(--neutral-700); font-size: 17px; line-height: 1.8; }
.resource-preview { margin: 32px 0 0; padding: 24px; border: 1px solid var(--card-border); border-radius: var(--radius-xl); background: var(--brand-50); }
.resource-preview img { display: block; width: 100%; height: auto; border-radius: var(--radius-md); box-shadow: var(--shadow-sm); }
.resource-preview figcaption { margin-top: 14px; font-size: 13px; line-height: 1.6; }
.resource-preview figcaption a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 3px; }
.resource-about { grid-area: about; padding-top: 28px; border-top: 1px solid var(--card-border); }
.resource-about h2 { margin: 0 0 12px; color: var(--neutral-900); font: 700 22px/1.4 var(--font-display); letter-spacing: -.03em; }
.resource-about p { margin: 0 0 16px; color: var(--neutral-700); font-size: 16px; line-height: 1.8; }
.resource-about a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; }
.resource-form-card { padding: clamp(24px, 3vw, 36px); background: var(--card); border: 1px solid var(--card-border); border-radius: var(--radius-xl); box-shadow: var(--shadow-sm); }
.resource-form-card h2 { margin: 0 0 10px; font: 700 24px/1.3 var(--font-display); letter-spacing: -.03em; color: var(--neutral-900); }
.resource-form-card > p { margin: 0 0 24px; font-size: 14px; line-height: 1.7; }
.resource-form { display: grid; gap: 20px; }
.resource-form .pl-field { min-width: 0; }
.resource-form .pl-input { width: 100%; }
.resource-form .pl-btn { width: 100%; min-height: 48px; white-space: normal; }
.resource-note { font-size: 12px; line-height: 1.7; margin: 0; }
.resource-honeypot { display: none; }
.resource-error { margin: 0; padding: 12px; color: var(--error-foreground); background: var(--error-bg); border-radius: var(--radius-md); font-size: 14px; }
.resource-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin: 28px 0 12px; }
.resource-actions .pl-btn { min-height: 44px; }
.resource-share-status { min-height: 24px; font-size: 14px; overflow-wrap: anywhere; }
@media (max-width: 899px) {
  .resource-shell { padding-top: 32px; }
  .resource-layout { grid-template-columns: 1fr; grid-template-areas: "intro" "form" "about"; }
  .resource-preview { max-width: 600px; }
}
@media (max-width: 479px) {
  .resource-title { font-size: 32px; }
  .resource-actions { align-items: stretch; flex-direction: column; }
  .resource-preview { padding: 14px; }
}
