/* Perspective: neutral and versatile. Each use gets its own patterns. */
:root{
  --per-r: var(--wp--custom--radius--base, 8px);
  --per-display: var(--wp--custom--font-display, Georgia, serif);
  --per-tint: color-mix(in oklch, var(--twa-accent) 8%, var(--twa-surface));
}
.perspective-header a { text-decoration: none; }
.perspective-footer { font-size: var(--wp--preset--font-size--small); color: var(--twa-ink-soft); border-top: 1px solid var(--twa-line); }
.perspective-footer a { color: inherit; }
.wp-block-button__link { border-radius: var(--per-r); }
.is-style-eyebrow { font-size: .78rem !important; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--twa-accent-ink); }
.is-style-lede { font-size: var(--wp--preset--font-size--medium); color: var(--twa-ink-soft); max-width: 38rem; }
.is-style-big { font-family: var(--per-display); font-size: clamp(1.7rem, 1.3rem + 1.6vw, 2.5rem) !important; line-height: 1.25; max-width: 44rem; }
.is-style-impact { font-family: var(--per-display); font-size: clamp(2.4rem, 1.6rem + 3.4vw, 4.2rem) !important; line-height: 1; color: var(--twa-accent-ink); font-variant-numeric: tabular-nums; margin-bottom: .2rem; }
.wp-block-group.is-style-card, .perspective-cards .wp-block-post-template > li { border: 1px solid var(--twa-line); border-radius: var(--per-r); padding: var(--wp--preset--spacing--50); height: 100%; transition: border-color .15s; }
.wp-block-group.is-style-card:hover, .perspective-cards .wp-block-post-template > li:hover { border-color: var(--twa-accent); }
.perspective-cards .wp-block-post-featured-image { margin: calc(var(--wp--preset--spacing--50) * -1) calc(var(--wp--preset--spacing--50) * -1) var(--wp--preset--spacing--30); }
.perspective-cards .wp-block-post-featured-image img { border-radius: var(--per-r) var(--per-r) 0 0; }
.perspective-cards .wp-block-post-title a { text-decoration: none; }
.perspective-cards .wp-block-read-more { color: var(--twa-accent-ink); font-weight: 600; font-size: var(--wp--preset--font-size--small); text-decoration: none; }
.wp-block-group.is-style-band { background: var(--per-tint); border-radius: calc(var(--per-r) + 4px); padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50); }
.wp-block-group.is-style-facts { border-block: 1px solid var(--twa-line); padding-block: var(--wp--preset--spacing--40); }
.wp-block-group.is-style-facts p { margin: 0; }
.wp-block-group.is-style-facts strong { display: block; font-size: var(--wp--preset--font-size--small); font-weight: 400; color: var(--twa-ink-soft); }
.wp-block-group.is-style-info { border: 1px solid var(--twa-line); border-radius: var(--per-r); padding: var(--wp--preset--spacing--50); height: 100%; }
.wp-block-group.is-style-help { background: var(--per-tint); border-radius: var(--per-r); padding: var(--wp--preset--spacing--50); height: 100%; }
.wp-block-group.is-style-mark > :first-child { width: 44px; height: 44px; border-radius: calc(var(--per-r) + 2px); background: var(--per-tint); color: var(--twa-accent-ink); display: grid; place-items: center; font-family: var(--per-display); font-weight: 700; margin-bottom: .6rem; }
.wp-block-columns.is-style-process { counter-reset: per-p; }
.wp-block-columns.is-style-process > .wp-block-column { counter-increment: per-p; border-top: 2px solid var(--twa-ink); padding-top: .8rem; }
.wp-block-columns.is-style-process > .wp-block-column::before { content: "0" counter(per-p); display: block; font-weight: 700; color: var(--twa-accent-ink); font-size: .85rem; margin-bottom: .3rem; }
.wp-block-table.is-style-hours td { border: 0; border-bottom: 1px solid var(--twa-line); padding: .35rem 0; }
.wp-block-table.is-style-hours td:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.perspective-logos { opacity: .6; }
.perspective-logos img { max-height: 28px; width: auto; filter: grayscale(1); }
.perspective-author-card { border-top: 1px solid var(--twa-line); }
@media (prefers-reduced-motion: reduce) { .wp-block-group.is-style-card, .perspective-cards .wp-block-post-template > li { transition: none; } }
@media print { .perspective-header, .perspective-footer, .wp-block-buttons { display: none !important; } }
