/* Public positioning only. No subscriber styles or external assets. */
.positioning-hero {
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 64px);
  min-height: 660px;
  padding: 64px max(24px, calc((100vw - 1240px) / 2));
  background: radial-gradient(ellipse at 90% 20%, #284d55, transparent 65%), #142a33;
}
.positioning-hero::after { display: none; }
.positioning-hero .public-hero-copy { width: auto; margin: 0; padding: 0; gap: 22px; text-shadow: none; }
.positioning-hero .public-hero-copy h1 { font-size: clamp(2.5rem, 4vw, 3.7rem); line-height: 1.08; max-width: 19ch; letter-spacing: -.035em; }
.positioning-hero .public-hero-copy h1 span { display: block; color: #a8dfd5; }
.positioning-hero .public-hero-copy p { margin: 0; max-width: 49ch; }
.positioning-hero .public-hero-copy .eyebrow { font-size: .78rem; color: #b9d6db; letter-spacing: .14em; }
.positioning-hero .public-hero-copy .positioning-lead { font-size: 1.15rem; line-height: 1.65; }
.positioning-hero .public-hero-copy .public-hero-limits { font-size: .9rem; color: #c9dce0; line-height: 1.55; }
.positioning-hero .public-hero-copy .positioning-explore { font-size: .95rem; }
.positioning-explore { display: flex; gap: 24px; flex-wrap: wrap; }
.positioning-explore a { color: #c4ede5; text-underline-offset: 5px; }
.positioning-hero a:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }
.noise-filter { margin: 0; min-width: 0; width: 100%; max-width: 530px; justify-self: end; }
.noise-fragments { position: relative; height: 124px; margin: 0 18px; }
.fragment { position: absolute; border: 1px solid #62818a; border-radius: 6px; background: #243e48; color: #b8cbd0; font-weight: 700; font-size: .85rem; letter-spacing: .08em; padding: 13px 18px; }
.fragment-one { left: 0; top: 12px; transform: rotate(-7deg); }
.fragment-two { right: 2px; top: 4px; transform: rotate(6deg); }
.fragment-three { left: 20%; bottom: 6px; transform: rotate(3deg); }
.fragment-four { right: 0; bottom: 0; transform: rotate(-4deg); }
.filter-divider { display: grid; justify-items: center; gap: 4px; margin: 18px 0 12px; color: #b7ddd5; font-size: .7rem; letter-spacing: .2em; }
.filter-divider::before { content: ''; width: 80%; border-top: 1px solid #719a9d; }
.filter-divider > span:first-of-type { padding-top: 7px; }
.filter-arrow { font-size: 1.5rem; line-height: 1; }
.strategy-preview { background: #f8fcfb; color: #17333b; padding: 25px; border: 1px solid #c9e0da; border-radius: 14px; box-shadow: 0 20px 50px #07192040; }
.preview-top { display: flex; gap: 10px; align-items: center; font-size: .72rem; font-weight: 700; letter-spacing: .12em; margin-bottom: 14px; }
.preview-mark { background: #d9eee8; padding: 3px 8px; border-radius: 50%; color: #235b4d; font-size: 1rem; }
.preview-row { display: flex; gap: 16px; align-items: center; padding: 14px 0; border-top: 1px solid #dce6e3; }
.preview-row > span { color: #53756e; font-size: .75rem; }
.preview-row strong { display: block; font-size: 1rem; line-height: 1.4; }
.preview-row small { display: block; color: #50666b; font-size: .84rem; margin-top: 3px; }
.strategy-preview .preview-note { margin: 10px 0 0; font-size: .72rem; color: #526b70; }
.positioning-differences, .positioning-value, .positioning-learn { padding-top: 56px; padding-bottom: 56px; }
.positioning-differences .public-card { border-top: 3px solid #557b7f; box-shadow: none; }
.positioning-kicker { color: #47666a; font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; margin: 0; }
.positioning-value { background: #eef5f3; }
.positioning-value-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 20px; }
.positioning-value-grid > article { grid-column: span 2; align-content: start; }
.positioning-value-grid > article:nth-last-child(-n+2) { grid-column: span 3; }
.positioning-step { color: #456c64; font-size: .8rem; font-weight: 700; }
.positioning-learn-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.positioning-learn .narrative-trap { margin-bottom: 20px; }
.positioning-questions { margin-top: 26px; border-top: 1px solid #b8c9c6; }
.positioning-questions details { border-bottom: 1px solid #b8c9c6; padding: 18px 0; }
.positioning-questions summary { cursor: pointer; font-weight: 700; padding: 8px 4px; }
.positioning-questions details p { max-width: 80ch; padding: 0 4px; }
.positioning-questions summary:focus-visible { outline: 3px solid #245d7e; outline-offset: 3px; }
.positioning-learn-next { margin-top: 24px; }
.positioning-value a:focus-visible,
.positioning-learn a:focus-visible,
#strategies .section-heading a:focus-visible { outline: 3px solid #245d7e; outline-offset: 3px; }
@media (max-width: 1050px) {
  .positioning-hero { gap: 28px; padding: 50px 32px; min-height: 620px; }
  .positioning-hero .public-hero-copy h1 { font-size: 2.75rem; }
  .strategy-preview { padding: 20px; }
  .fragment { padding: 10px 12px; font-size: .75rem; }
}
@media (max-width: 800px) {
  .positioning-hero { grid-template-columns: 1fr; padding: 40px 24px; gap: 30px; min-height: 0; }
  .positioning-hero .public-hero-copy { max-width: 620px; }
  .positioning-hero .public-hero-copy h1 { max-width: 22ch; }
  .noise-filter { justify-self: center; max-width: 480px; }
  .noise-fragments { height: 58px; }
  .fragment-three, .fragment-four { display: none; }
  .filter-divider { margin-top: 8px; }
  .positioning-value-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .positioning-value-grid > article, .positioning-value-grid > article:nth-last-child(-n+2) { grid-column: auto; }
  .positioning-value-grid > .positioning-alert { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .positioning-hero { padding: 20px 16px; gap: 16px; }
  .positioning-hero .public-hero-copy { gap: 12px; }
  .positioning-hero .public-hero-copy h1 { font-size: 2.25rem; }
  .positioning-hero .public-hero-copy .positioning-lead { font-size: 1rem; line-height: 1.5; }
  .positioning-hero .public-hero-copy .public-hero-limits { font-size: .85rem; }
  .positioning-hero .strategy-preview { padding: 12px 16px; }
  .positioning-hero .preview-top { margin-bottom: 8px; }
  .positioning-hero .preview-row { padding: 6px 0; gap: 12px; }
  .preview-row strong { font-size: .9rem; }
  .preview-row small { display: none; }
  .positioning-hero .noise-fragments { margin: 0 12px; height: 44px; }
  .fragment { padding: 8px 10px; }
  .positioning-hero .filter-divider { margin: 4px 0; }
  .positioning-differences, .positioning-value, .positioning-learn { padding-top: 36px; padding-bottom: 36px; }
  .positioning-value-grid, .positioning-learn-grid { grid-template-columns: minmax(0,1fr); }
}

@media (min-width: 981px) {
  .positioning-hero { padding-inline: max(clamp(24px, 2.5vw, 48px), calc((100vw - 1584px) / 2)); }
}
