/* WalsonParker Institute — scoped editorial landing. */
.wpi { --ink:#051c2c; --blue:#2255ff; --paper:#f3f4f3; color:var(--ink); background:#fff; font-family:'wspfont',Arial,sans-serif; font-size:17px; line-height:1.7; }
.wpi * { box-sizing:border-box; }
.wpi .wpi-wrap { width:min(1280px,calc(100% - 96px)); margin-inline:auto; }
.wpi h1,.wpi h2,.wpi h3 { font-family:'wspserif',Georgia,serif; font-weight:400; color:inherit; }
.wpi h1 { font-size:clamp(48px,5.1vw,78px); letter-spacing:-.045em; line-height:1.05; margin:24px 0 28px; max-width:880px; }
.wpi h1 em { font-style:normal; color:#b9d8eb; }
.wpi h2 { font-size:clamp(36px,3.6vw,54px); line-height:1.13; letter-spacing:-.035em; margin:0 0 30px; }
.wpi h3 { font-size:29px; line-height:1.2; letter-spacing:-.02em; margin:0 0 18px; }
.wpi p { margin:0 0 22px; }
.wpi a { color:inherit; }
.wpi a:focus-visible,.wpi button:focus-visible { outline:3px solid #00a9f4; outline-offset:6px; }
.wpi .wpi-eyebrow,.wpi .wpi-label { font-size:11px; font-weight:700; line-height:1.5; letter-spacing:.15em; text-transform:uppercase; margin:0 0 25px; }
.wpi .wpi-eyebrow { display:flex; align-items:center; gap:14px; }
.wpi .wpi-eyebrow::before { content:''; width:30px; height:2px; background:var(--blue); flex:none; }
.wpi .wpi-lead { font-size:23px; line-height:1.5; letter-spacing:-.015em; }
.wpi .wpi-section { padding:100px 0; scroll-margin-top:30px; }
.wpi .wpi-paper { background:var(--paper); }
.wpi .wpi-navy { background:var(--ink); color:#fff; }
.wpi .wpi-navy p { color:#c6d0d8; }
.wpi .wpi-navy .wpi-eyebrow,.wpi .wpi-navy .wpi-label { color:#94c9ea; }
.wpi .wpi-split { display:grid; grid-template-columns: .9fr 1.1fr; gap:100px; }
.wpi .wpi-section-head { display:grid; grid-template-columns:1.1fr 1fr; gap:100px; align-items:end; margin-bottom:54px; }
.wpi .wpi-section-head h2 { margin-bottom:0; }
.wpi .wpi-section-head>p,.wpi .wpi-section-head>div>p:last-child { margin-bottom:0; }
.wpi .wpi-link { display:inline-flex; align-items:center; gap:24px; padding:7px 0; font-size:15px; line-height:1.5; font-weight:700; border-bottom:1px solid currentColor; text-decoration:none; }
.wpi .wpi-link:hover { color:var(--blue); }
.wpi .wpi-navy .wpi-link:hover { color:#9edcff; }
.wpi .wpi-hero { position:relative; isolation:isolate; overflow:hidden; background:#03111e; color:#fff; }
.wpi .wpi-hero-image { position:absolute; inset:0 0 0 28%; z-index:-2; }
.wpi .wpi-hero-image img { width:100%; height:100%; object-fit:cover; object-position:65% center; }
.wpi .wpi-hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#03111e 4%,rgba(3,17,30,.96) 26%,rgba(3,17,30,.66) 55%,rgba(3,17,30,.08)),linear-gradient(0deg,rgba(3,17,30,.6),transparent 40%); z-index:-1; }
.wpi .wpi-hero-inner { padding-top:95px; padding-bottom:30px; }
.wpi .wpi-hero .wpi-eyebrow { color:#c1d4e1; }
.wpi .wpi-hero-deck { max-width:620px; font-size:20px; line-height:1.65; color:#d5e0e8; margin-bottom:32px; }
.wpi .wpi-button { display:inline-flex; align-items:center; justify-content:space-between; gap:35px; padding:15px 24px; background:#fff; color:var(--ink); font-size:14px; font-weight:700; text-decoration:none; border:1px solid #fff; }
.wpi .wpi-button:hover { background:#d8e8f2; color:var(--ink); }
.wpi .wpi-hero-foot { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #ffffff30; margin-top:80px; padding-top:22px; color:#c1d4e1; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.wpi .wpi-nav { border-bottom:1px solid #dfe3e6; background:#fff; }
.wpi .wpi-nav>div { display:flex; align-items:center; gap:25px; overflow-x:auto; padding-block:21px; }
.wpi .wpi-nav span { font-size:10px; text-transform:uppercase; letter-spacing:.12em; font-weight:700; flex:none; padding-right:20px; border-right:1px solid #dfe3e6; }
.wpi .wpi-nav a { flex:none; font-size:12px; text-decoration:none; }
.wpi .wpi-nav a:hover { color:var(--blue); text-decoration:underline; }
.wpi .wpi-columns { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; }
.wpi .wpi-research { border-top:1px solid #a5afb8; padding-top:25px; display:flex; flex-direction:column; align-items:flex-start; }
.wpi .wpi-index { font-family:'wspserif',Georgia,serif; font-size:42px; line-height:1.2; color:var(--blue); margin-bottom:30px; }
.wpi .wpi-research p { font-size:16px; }
.wpi .wpi-research .wpi-question { margin-top:auto; padding-top:12px; font-weight:700; }
.wpi .wpi-ledger>div { display:grid; grid-template-columns:34px 1fr; gap:0 18px; border-top:1px solid #ffffff30; padding:25px 0 10px; }
.wpi .wpi-ledger span { color:#83c7f2; font-size:12px; padding-top:6px; }
.wpi .wpi-ledger h3 { font-size:25px; }
.wpi .wpi-ledger p { grid-column:2; font-size:16px; }
.wpi .wpi-matrix { display:grid; grid-template-columns:1fr 1fr; gap:0 65px; }
.wpi .wpi-matrix article { border-top:1px solid #c4cbd1; padding:32px 0 15px; }
.wpi .wpi-matrix .wpi-label { color:#576b7b; margin-bottom:15px; }
.wpi .wpi-note { margin-top:35px; padding:28px 30px; border-left:3px solid var(--blue); background:#fff; }
.wpi .wpi-note h3 { font-size:25px; }
.wpi .wpi-note p:last-child { margin-bottom:0; font-size:16px; }
.wpi .wpi-horizons article { display:grid; grid-template-columns:1fr 2fr; gap:60px; border-top:1px solid #c4cbd1; padding:35px 0 15px; }
.wpi .wpi-horizon-label { color:var(--blue); font-size:14px; font-weight:700; }
.wpi .wpi-horizon-label span { display:block; color:#536575; font-size:12px; font-weight:400; margin-top:9px; }
.wpi .wpi-method { display:grid; grid-template-columns:repeat(5,1fr); gap:26px; padding:0; margin:0; list-style:none; }
.wpi .wpi-method li { border-top:1px solid #ffffff40; padding-top:24px; }
.wpi .wpi-method li>span { color:#94c9ea; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.wpi .wpi-method h3 { font-size:25px; margin-top:20px; }
.wpi .wpi-method p { font-size:15px; }
.wpi .wpi-method-footer { display:flex; align-items:center; gap:70px; border-top:1px solid #ffffff30; margin-top:35px; padding-top:30px; }
.wpi .wpi-method-footer p { max-width:800px; margin:0; font-size:15px; }
.wpi .wpi-method-footer a { flex-shrink:0; }
.wpi .wpi-publications { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.wpi .wpi-publications>a { display:flex; flex-direction:column; align-items:flex-start; padding:36px 30px; background:#f3f4f3; border-top:3px solid var(--ink); text-decoration:none; transition:background .2s; }
.wpi .wpi-publications>a:hover { background:#e8eef4; border-color:var(--blue); }
.wpi .wpi-publications p { font-size:16px; }
.wpi .wpi-pub-link { margin-top:auto; padding-top:20px; display:flex; width:100%; justify-content:space-between; font-size:14px; font-weight:700; }
.wpi .wpi-publication-footer { display:flex; align-items:center; gap:60px; margin-top:35px; }
.wpi .wpi-publication-footer p { font-size:14px; color:#536575; margin:0; max-width:800px; }
.wpi .wpi-publication-footer a { flex-shrink:0; }
.wpi .wpi-closing { display:grid; grid-template-columns:repeat(3,1fr); gap:45px; border-top:1px solid #c4cbd1; margin-top:50px; padding-top:40px; }
.wpi .wpi-closing h3 { font-size:25px; }
.wpi .wpi-closing p { font-size:16px; }
@media(min-width:1600px) { .wpi .wpi-hero-inner { padding-top:120px; } .wpi .wpi-hero-foot { margin-top:100px; } }
@media(max-width:1100px) {
.wpi .wpi-wrap { width:calc(100% - 64px); }
.wpi .wpi-split,.wpi .wpi-section-head { gap:50px; }
.wpi .wpi-columns { gap:25px; }
.wpi .wpi-method { grid-template-columns:repeat(3,1fr); }
.wpi .wpi-method-footer,.wpi .wpi-publication-footer { flex-wrap:wrap; gap:20px; }
.wpi .wpi-publications>a { padding:26px 22px; }
}
@media(max-width:767px) {
.wpi { font-size:16px; }
.wpi .wpi-wrap { width:calc(100% - 40px); }
.wpi .wpi-section { padding:62px 0; }
.wpi .wpi-split,.wpi .wpi-section-head,.wpi .wpi-columns,.wpi .wpi-matrix,.wpi .wpi-publications,.wpi .wpi-closing { grid-template-columns:1fr; gap:28px; }
.wpi h1 { font-size:48px; } .wpi h2 { font-size:38px; margin-bottom:22px; }
.wpi .wpi-lead { font-size:21px; }
.wpi .wpi-hero-inner { padding-top:60px; }
.wpi .wpi-hero-image { inset:0; opacity:.6; }
.wpi .wpi-hero::before { background:linear-gradient(90deg,rgba(3,17,30,.94),rgba(3,17,30,.55)); }
.wpi .wpi-hero-deck { font-size:18px; }
.wpi .wpi-hero-foot { margin-top:55px; flex-direction:column; gap:8px; }
.wpi .wpi-section-head { margin-bottom:35px; }
.wpi .wpi-nav>div { gap:22px; }
.wpi .wpi-nav span { display:none; }
.wpi .wpi-research .wpi-question { padding-top:0; }
.wpi .wpi-index { margin-bottom:18px; }
.wpi .wpi-horizons article { grid-template-columns:1fr; gap:20px; }
.wpi .wpi-method { grid-template-columns:1fr; gap:12px; }
.wpi .wpi-method h3 { margin-top:10px; }
.wpi .wpi-note { padding:24px; }
.wpi .wpi-closing { margin-top:30px; }
}
@media(prefers-reduced-motion:reduce) { .wpi * { transition:none!important; scroll-behavior:auto!important; } }
@media print { .wpi .wpi-nav,.wpi .wpi-button { display:none; } .wpi .wpi-section { padding:30px 0; } .wpi .wpi-navy { background:#fff; color:#051c2c; } .wpi .wpi-navy p { color:#051c2c; } .wpi .wpi-wrap { width:100%; } .wpi .wpi-hero-image { display:none; } .wpi .wpi-hero { background:#fff; color:#051c2c; } .wpi .wpi-hero::before { display:none; } }
