
/* The research campaign composes the reviewed report artwork and Regel tokens. */
.research-campaign { padding: 112px var(--landing-gutter) 0; }
.research-campaign > * { max-width: var(--landing-content-width); margin-inline: auto; }
.campaign-text-link { display: inline-block; color: var(--text-primary); text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; transition: color var(--motion-normal, 240ms) var(--motion-ease-out, ease); }
.campaign-text-link:hover { color: var(--text-secondary); }
.research-campaign .report-policy-scene { position: absolute; top: 50%; left: 50%; width: 1070px; height: 601.875px; min-height: 0; transform-origin: center; transform: translate(-50%, -50%) scale(calc(100cqw / 1070px)); }
.campaign-chapter h2 { margin: 0; font-size: var(--regel-display-md-size); line-height: var(--regel-display-md-line); letter-spacing: var(--regel-display-md-tracking); font-weight: var(--regel-type-display-weight); }
.campaign-studies { margin-top: 0; }
.campaign-chapter { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; padding-block: 96px; border-top: 1px solid var(--border-default); scroll-margin-top: 100px; }
.campaign-chapter:nth-child(even) .campaign-chapter-copy { order: 2; }
.campaign-chapter:nth-child(even) .campaign-chapter-visual { order: 1; }
.campaign-chapter-copy { max-width: 560px; }
.campaign-chapter-kicker { display: flex; align-items: center; gap: 16px; margin: 0 0 40px; color: var(--text-secondary); }
.campaign-chapter-kicker span { color: var(--text-tertiary); }
.campaign-finding { margin: 0 0 24px; font-size: clamp(72px, 9vw, 136px); line-height: 1; letter-spacing: -.06em; font-weight: var(--regel-type-display-weight); }
.campaign-finding span { font-size: .4em; letter-spacing: -.03em; }
.campaign-chapter h2 { font-size: var(--regel-heading-lg-size); line-height: var(--regel-heading-lg-line); letter-spacing: var(--regel-heading-lg-tracking); }
.campaign-chapter-copy > p:not(.campaign-chapter-kicker):not(.campaign-finding) { margin: 24px 0 32px; color: var(--text-secondary); }
.campaign-chapter-visual { min-width: 0; }
.campaign-chapter-visual .report-app-cover { aspect-ratio: 1 / 1; margin: 0; border-radius: var(--regel-media-frame-radius); }
.campaign-chapter-visual > p { margin: 16px 0 0; color: var(--text-tertiary); }
@media (max-width: 1100px) {
 .research-campaign { padding-top: 88px; }
 .campaign-chapter { gap: 40px; padding-block: 72px; }
 .campaign-chapter-kicker { margin-bottom: 32px; }
}
@media (max-width: 699px) {
 .research-campaign { padding-top: 64px; }
 .campaign-chapter { grid-template-columns: 1fr; gap: 32px; padding-block: 48px 64px; }
 .campaign-chapter:nth-child(even) .campaign-chapter-copy, .campaign-chapter:nth-child(even) .campaign-chapter-visual { order: initial; }
 .campaign-chapter-visual .report-app-cover { aspect-ratio: 4 / 3; }
 .campaign-chapter-kicker { margin-bottom: 24px; }
 .campaign-finding { font-size: 88px; }
}

/* Centred campaign header: established website type, with Product source artwork. */
:root #prototype-main > .research-campaign { padding-top: 48px; }
.campaign-hero { position: relative; display: grid; place-items: center; isolation: isolate; min-height: 660px; padding: 112px 0 128px; }
:root #prototype-main .campaign-hero { align-items: center; }
.campaign-hero .campaign-category { margin-bottom: 24px; background: var(--yellow-300); color: var(--neutral-950); }
:root #prototype-main .campaign-hero .campaign-hero-lockup { position: relative; z-index: 1; display: block; width: min(100%, 600px); margin: 0 auto; text-align: center; }
:root #prototype-main .research-campaign .campaign-hero h1 { margin: 0; font-size: var(--prototype-hero-size); line-height: var(--prototype-hero-line); letter-spacing: var(--prototype-hero-tracking); font-weight: var(--regel-type-display-weight); }
.campaign-hero-copy { max-width: 600px; margin: 24px auto 0; }
.campaign-hero-copy p { margin: 0; }
.campaign-hero-copy .regel-button { margin-top: 32px; }
.campaign-text-link:focus-visible { outline: 2px solid var(--text-primary); outline-offset: 6px; }
@media (max-width: 1100px) {
 :root #prototype-main .campaign-hero .campaign-hero-lockup { max-width: 520px; }
}
@media (max-width: 799px) {
 :root #prototype-main > .research-campaign { padding-top: 24px; }
 .campaign-hero { min-height: 680px; padding-block: 144px 168px; }
 :root #prototype-main .campaign-hero .campaign-hero-lockup { max-width: 480px; }
 .campaign-hero-copy { max-width: 440px; }
}
@media (max-width: 599px) {
 .campaign-hero-copy { margin-top: 24px; }
}
@media (prefers-reduced-motion: reduce) {
}

.campaign-intro.insight-article-body { max-width: 680px; margin-block: 0; margin-inline: auto; padding-block: 96px 0; text-align: left; scroll-margin-top: 96px; }
.campaign-study-story { padding-block: 40px 96px; scroll-margin-top: 96px; }
.campaign-study-story + .campaign-intro.insight-article-body { padding-top: 0; }
.campaign-intro.insight-article-body .campaign-study-metric { margin: 64px auto 40px; max-width: 480px; text-align: center; }
.campaign-intro.insight-article-body > .campaign-study-metric:first-child { margin-top: 0; }
.campaign-study-metric .campaign-study-number { color: var(--green-500); margin: 0 0 16px; font-size: var(--regel-display-lg-size); line-height: var(--regel-display-lg-line); letter-spacing: var(--regel-display-lg-tracking); font-weight: var(--regel-type-display-weight); font-variant-numeric: tabular-nums; }
.campaign-study-metric figcaption > p { margin: 0; }
.campaign-study-metric figcaption > p + p { margin-top: 8px; }

@media (max-width: 699px) { .campaign-intro.insight-article-body { padding-block: 64px 0; } .campaign-study-story { padding-block: 32px 64px; } }


/* Research scope uses the article statistics, followed by separate study chapters. */
.campaign-research-scope { margin: 64px 0 0; }
.campaign-research-scope .campaign-research-totals { grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 0; }
.campaign-research-totals dd { margin: 0; }
.campaign-research-divider { margin: 80px 0 0; border: 0; border-top: 1px solid var(--border-default); }
.campaign-study-header { margin-bottom: 32px; }
.campaign-study-header .campaign-category { margin-bottom: 24px; background: var(--yellow-300); color: var(--neutral-950); }
.research-campaign .campaign-study-header h2 { margin: 0; text-align: left; }
.campaign-intro.insight-article-body .campaign-study-metric { margin-bottom: 0; }
@media (max-width: 699px) {
 .campaign-research-scope { margin-top: 48px; }
 .campaign-research-scope .campaign-research-totals { gap: 16px; }
 .campaign-research-divider { margin-top: 64px; }
 .campaign-study-header .campaign-category { margin-bottom: 16px; }
 .research-campaign .campaign-study-header h2 { font-size: var(--regel-heading-lg-size); line-height: var(--regel-heading-lg-line); letter-spacing: var(--regel-heading-lg-tracking); }
}

/* Preserve the Regel display steps when the shared compact header breakpoint activates. */
.campaign-hero { --prototype-hero-size: var(--regel-display-lg-size); --prototype-hero-line: var(--regel-display-lg-line); --prototype-hero-tracking: var(--regel-display-lg-tracking); }
@media (max-width: 1100px) {
 .campaign-hero { --prototype-hero-size: var(--regel-display-md-size); --prototype-hero-line: var(--regel-display-md-line); --prototype-hero-tracking: var(--regel-display-md-tracking); }
}
@media (max-width: 599px) {
 .campaign-hero { --prototype-hero-size: var(--regel-display-sm-size); --prototype-hero-line: var(--regel-display-sm-line); --prototype-hero-tracking: var(--regel-display-sm-tracking); }
}
/* Original Product assets, with matched visual sizes and independent depth. */
figure.campaign-source-field.product-showcase-sources { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; min-height: 0; margin: 0; aspect-ratio: auto; pointer-events: none; overflow: hidden; }
.campaign-source-field.product-showcase-sources .product-document-batch { inset: 56px 0; transform: none; }
.campaign-source-field.product-showcase-sources .product-document-file { left: clamp(72px, var(--file-x), calc(100% - 72px)); transform: translate(-50%, calc(-50% + var(--source-parallax-y, 0px))) rotate(var(--file-angle)) scale(.85); }
.campaign-source-field .campaign-source-reveal { display: flex; flex-direction: column; align-items: center; gap: 8px; width: 100%; }
.campaign-source-field .campaign-source-reveal > img { flex: none; width: 56px; height: 56px; object-fit: contain; }
.campaign-source-field .campaign-source-reveal > span { display: block; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: center; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(1) { --file-x: 7%; --file-y: 19%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(2) { --file-x: 13%; --file-y: 32%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(3) { --file-x: 35%; --file-y: 5%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(4) { --file-x: 63%; --file-y: 18%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(5) { --file-x: 95%; --file-y: 39%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(6) { --file-x: 83%; --file-y: 29%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(7) { --file-x: 16%; --file-y: 56%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(8) { --file-x: 10%; --file-y: 70%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(9) { --file-x: 94%; --file-y: 84%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(10) { --file-x: 68%; --file-y: 73%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(11) { --file-x: 5%; --file-y: 45%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(12) { --file-x: 37%; --file-y: 73%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(13) { --file-x: 76%; --file-y: 93%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(14) { --file-x: 52%; --file-y: 0%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(15) { --file-x: 87%; --file-y: 8%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(16) { --file-x: 43%; --file-y: 11%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(17) { --file-x: 21%; --file-y: 89%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(18) { --file-x: 49%; --file-y: 88%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(19) { --file-x: 86%; --file-y: 62%; }
.campaign-source-field.product-showcase-sources .product-document-file:nth-child(20) { --file-x: 22%; --file-y: 11%; }

@media (min-width: 1101px) and (max-width: 1199px) {
 .campaign-source-field.product-showcase-sources .product-document-file:is(:nth-child(19), :nth-child(20)) { display: none; }
}
@media (min-width: 800px) and (max-width: 1100px) {
 :root .campaign-source-field.product-showcase-sources .product-document-file { display: none; width: 130px; left: clamp(64px, var(--file-x), calc(100% - 64px)); }
 :root .campaign-source-field.product-showcase-sources .product-document-file:is(:nth-child(1), :nth-child(2), :nth-child(3), :nth-child(4), :nth-child(6), :nth-child(7), :nth-child(9), :nth-child(10), :nth-child(11), :nth-child(12), :nth-child(13), :nth-child(15), :nth-child(17)) { display: flex; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(15) { --file-x: 76%; --file-y: 10%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(3) { --file-x: 36%; --file-y: 3%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(4) { --file-x: 64%; --file-y: 17%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(6) { --file-x: 90%; --file-y: 26%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(9) { --file-x: 92%; --file-y: 78%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(10) { --file-x: 70%; --file-y: 72%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(13) { --file-x: 75%; --file-y: 94%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(12) { --file-x: 43%; --file-y: 84%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(17) { --file-x: 22%; --file-y: 94%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(11) { --file-x: 8%; --file-y: 65%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(7) { --file-x: 7%; --file-y: 40%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(1) { --file-x: 11%; --file-y: 17%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(2) { --file-x: 23%; --file-y: 9%; }
}
@media (max-width: 799px) {
 :root .campaign-source-field.product-showcase-sources .product-document-file { display: none; width: 100px; left: clamp(48px, var(--file-x), calc(100% - 48px)); }
 :root .campaign-source-field.product-showcase-sources .product-document-file:is(:nth-child(2), :nth-child(4), :nth-child(6), :nth-child(9), :nth-child(12), :nth-child(17)) { display: flex; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(2) { --file-x: 18%; --file-y: 9%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(4) { --file-x: 48%; --file-y: 0%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(6) { --file-x: 82%; --file-y: 13%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(9) { --file-x: 14%; --file-y: 89%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(12) { --file-x: 51%; --file-y: 98%; }
 .campaign-source-field.product-showcase-sources .product-document-file:nth-child(17) { --file-x: 84%; --file-y: 85%; }
}
@media (prefers-reduced-motion: reduce) {
 .campaign-source-field .campaign-source-reveal[data-grid-reveal] { animation: none; opacity: 1; translate: none; }
 .campaign-source-field.product-showcase-sources .product-document-file { transform: translate(-50%, -50%) rotate(var(--file-angle)) scale(.85); }
}

