/* Rohall Impact Blueprints extension: authored for the warm-white / crimson identity. */
#roadblocks,#origin{scroll-margin-top:94px}
.impact-problems{background:linear-gradient(135deg,#fffdf8,#f8f2ed);color:#29242c;border-block:1px solid #e9ddda}
.impact-problems .copy{color:#635a63}
.problem-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.problem-card{position:relative;padding:34px 30px 31px;border:1px solid #e6d8d6;background:#fffefa;min-height:300px;box-shadow:0 11px 28px rgba(86,45,57,.035)}
.problem-card:before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#b92b46,#e38d6a,#9775b0)}
.problem-card>span{color:#aa2b44;font:700 10px 'Space Grotesk',sans-serif;letter-spacing:.14em}
.problem-card h3{color:#29212a;font-size:clamp(21px,2vw,27px);margin:28px 0 14px}
.problem-card p{color:#695e65;font-size:13px;line-height:1.86;margin:0}
.impact-research{margin-top:23px;display:grid;grid-template-columns:.85fr 1.45fr;gap:32px;background:radial-gradient(circle at 100% 0,rgba(225,103,92,.17),transparent 48%),#362632;color:#fff9f3;padding:38px 42px 25px}
.impact-research-intro>span{font:700 11px 'Space Grotesk',sans-serif;color:#f2a183;letter-spacing:.17em}
.impact-research-intro h3{font-size:27px;margin:18px 0 13px;max-width:440px}
.impact-research-intro p{color:#decbd2;font-size:12px;line-height:1.8;margin:0}
.impact-research-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.impact-research-stats>div{padding:17px 17px 9px;border-left:1px solid rgba(255,236,228,.23)}
.impact-research-stats strong{display:block;color:#f5ac90;font:600 clamp(40px,4.2vw,57px)/1 'Space Grotesk',sans-serif;letter-spacing:-.06em;margin-bottom:15px}
.impact-research-stats p{font-size:12px;line-height:1.75;color:#e0ccd5;margin:0}
.impact-research-footer{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:14px 25px;border-top:1px solid rgba(245,219,217,.19);margin-top:9px;padding-top:19px}
.impact-research-footer a{color:#ffd0ba;font-size:12px;text-decoration:underline;text-decoration-color:rgba(255,190,162,.4);text-underline-offset:4px}
.impact-research-context{grid-column:1/-1;font-size:11px;line-height:1.8;color:#d2bcc6;margin:0}
.impact-calculator-note{display:grid;grid-template-columns:.5fr 1.3fr auto;gap:24px;align-items:center;margin-top:15px;padding:26px 31px;background:#f4e7e0;border-left:4px solid #bb2e46}
.impact-calculator-note strong{font:600 19px/1.3 'Space Grotesk',sans-serif;color:#392833}
.impact-calculator-note p{font-size:12px;line-height:1.8;color:#65565e;margin:0}
.impact-calculator-note a{font-size:11px;font-weight:700;color:#9d2940;white-space:nowrap}
.case-library{padding:45px 0 10px;margin-top:45px;border-top:1px solid #e2d7d3}
.case-library-head{display:grid;grid-template-columns:1.05fr .95fr;align-items:end;gap:50px;margin-bottom:27px}
.case-library-head h3{font-size:clamp(28px,3.1vw,43px);line-height:1.13;color:#29242c;margin:20px 0 0}
.case-library-head>p{font-size:14px;line-height:1.85;color:#6c6169;margin:0}
.impact-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:15px}
.impact-case{background:#fffefa;border:1px solid #e6d9d6;box-shadow:0 8px 21px rgba(85,43,55,.025);min-width:0}
.impact-case[open]{box-shadow:0 15px 35px rgba(96,49,62,.075);border-color:#d0adb4}
.impact-case summary{position:relative;list-style:none;cursor:pointer;min-height:230px;padding:30px 57px 30px 29px}
.impact-case summary::-webkit-details-marker{display:none}
.impact-case summary:focus-visible{outline:3px solid #dd865d;outline-offset:-4px}
.impact-case summary:hover .case-title{color:#ab2b43}
.case-sector{display:block;color:#ab2b43;font:700 10px 'Space Grotesk',sans-serif;letter-spacing:.11em}
.case-title{display:block;margin:22px 0 14px;font:600 clamp(22px,2.1vw,28px)/1.24 'Space Grotesk',sans-serif;color:#2b232d;letter-spacing:-.035em}
.case-summary{display:block;color:#6b5f68;line-height:1.8;font-size:13px}
.case-toggle{position:absolute;top:27px;right:25px;width:27px;height:27px;display:grid;place-items:center;font:400 24px/1 'Space Grotesk',sans-serif;border:1px solid #d9b7be;color:#a62b44;transition:transform .2s,background .2s}
.impact-case[open] .case-toggle{transform:rotate(45deg);background:#fff1ec}
.case-body{border-top:1px solid #eedfdc;padding:11px 29px 25px;background:#fffaf6}
.case-body dl{margin:0}
.case-body dl>div{padding:16px 0;border-bottom:1px solid #eee3df}
.case-body dt{font:700 10px 'Space Grotesk',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#b22f48;margin-bottom:7px}
.case-body dd{margin:0;color:#5d535d;font-size:13px;line-height:1.8}
.case-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.case-tags span{padding:7px 9px;background:#f6eae6;border:1px solid #ebd7d3;color:#7b4351;font-size:10px;font-weight:600}
.case-library-note{font-size:11px;line-height:1.75;color:#80747b;margin:20px 0 15px}
.sector-expertise{padding:36px 0 6px;border-top:1px solid #e2d7d3}
.sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.sector-grid article{padding:25px 25px 22px;background:#f9efea;border:1px solid #ecdcd6}
.sector-grid strong{display:block;color:#542b3b;font:600 16px 'Space Grotesk',sans-serif;margin-bottom:11px}
.sector-grid p{font-size:12px;line-height:1.8;color:#685c64;margin:0}
.organisation-groups{display:grid;gap:22px;align-content:start}
.organisation-groups h4{font:700 11px 'Space Grotesk',sans-serif;text-transform:uppercase;letter-spacing:.13em;color:#9b2a43;margin:0 0 13px}
.org-chips span{font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:600;letter-spacing:.005em}
.velocity-origin{background:linear-gradient(115deg,#fffdf8,#f5eae4);color:#2a232d}
.velocity-origin-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}
.velocity-origin .copy{color:#685b65;max-width:690px}
.velocity-origin h2{color:#2b232c;margin-bottom:25px}
.origin-link{display:inline-flex;margin-top:10px;color:#a92b43;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:5px;font-weight:700}
.origin-principle{padding:44px 39px;color:#fffaf5;background:radial-gradient(circle at 100% 100%,rgba(205,81,93,.25),transparent 50%),#362632;border:1px solid #6d4a55;box-shadow:17px 17px 0 rgba(113,67,74,.1)}
.origin-principle>span{font:700 11px 'Space Grotesk',sans-serif;letter-spacing:.16em;color:#efa28e}
.origin-chain{display:grid;margin:30px 0 26px;border-top:1px solid rgba(255,229,224,.22)}
.origin-chain>div{position:relative;padding:21px 0 20px 32px;border-bottom:1px solid rgba(255,229,224,.2)}
.origin-chain>div:before{content:'';position:absolute;left:0;top:24px;height:12px;width:12px;background:#ed9a80;transform:rotate(45deg)}
.origin-chain strong{display:block;font:600 19px 'Space Grotesk',sans-serif;color:#fff7f2;margin-bottom:6px}
.origin-chain small{color:#d4bfcb;font-size:12px;line-height:1.5}
.origin-principle p{font-size:13px;line-height:1.75;color:#dfc9d2;margin:0}
.recognition-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.recognition-grid>div{padding:35px 30px 30px;display:flex;flex-direction:column;min-width:0}
.recognition-grid h3{font-size:25px;overflow-wrap:anywhere}
.recognition-grid a{display:inline-flex;align-items:center;margin-top:auto;padding-top:20px;font-size:12px;font-weight:700;color:#ae2b43;text-decoration:underline;text-underline-offset:4px}
.endorsement-note{display:grid;grid-template-columns:.7fr 1.3fr;gap:35px;margin-top:18px;padding:25px 30px;background:#f4e7e0;border-left:3px solid #b92e49}
.endorsement-note strong{font:600 20px/1.3 'Space Grotesk',sans-serif;color:#342631}
.endorsement-note p{font-size:13px;color:#695761;line-height:1.8;margin:0}
.endorsement-note a{color:#b42c43;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){
  .problem-grid,.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .impact-research{grid-template-columns:1fr}
  .impact-research-footer{grid-column:auto}
  .impact-calculator-note{grid-template-columns:1fr 1.6fr}.impact-calculator-note a{grid-column:2}
  .velocity-origin-grid{gap:40px}
  .recognition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .case-library-head,.velocity-origin-grid,.endorsement-note{grid-template-columns:1fr;gap:22px}
  .impact-case-grid,.recognition-grid{grid-template-columns:1fr}
  .impact-research-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .origin-principle{padding:33px 29px}
}
@media(max-width:580px){
  .problem-grid,.sector-grid,.impact-research-stats{grid-template-columns:1fr}
  .problem-card{min-height:0;padding:29px 25px}
  .impact-research{padding:30px 23px 25px;gap:22px}
  .impact-research-stats>div{padding:12px 0 12px 16px}
  .impact-research-stats strong{font-size:43px}
  .impact-calculator-note{grid-template-columns:1fr;padding:22px 23px;gap:14px}.impact-calculator-note a{grid-column:auto;white-space:normal}
  .impact-case summary{min-height:0;padding:27px 55px 29px 24px}
  .case-body{padding:11px 23px 24px}
  .case-title{font-size:23px}
  .sector-grid article{padding:22px}
  .origin-principle{box-shadow:8px 8px 0 rgba(113,67,74,.09)}
}
