/* Grandeur through type, proportion, and a distinct field of color. */
.grand-solutions{padding:100px 0 94px;scroll-margin-top:84px;background:#f5f1e8;color:#102b50}
.grand-solutions-inner{max-width:1200px}
.grand-solutions h2{margin:0;font:400 clamp(3rem,5.3vw,4.875rem)/1.06 var(--serif);letter-spacing:-.045em;color:inherit;text-wrap:balance}
.grand-solutions h2 em{font-weight:400}
.grand-explanation p{margin:0;font:400 1.1875rem/1.8 var(--sans);text-wrap:pretty;color:#526174}
.grand-explanation .grand-support{margin-top:26px;color:#102b50;font:400 1.75rem/1.4 var(--serif);letter-spacing:-.02em;text-wrap:pretty}
.grand-solutions .grand-outcome{margin:50px auto 0;color:inherit;font:400 clamp(2.25rem,3.2vw,3rem)/1.25 var(--serif);letter-spacing:-.03em;text-wrap:balance}
.grand-outcome em{font-weight:400}

/* A: A spacious statement on ivory. */
html[data-grand-solutions="a"] .grand-solutions{text-align:center}
html[data-grand-solutions="a"] .grand-solutions h2{max-width:1180px;margin-inline:auto}
html[data-grand-solutions="a"] .grand-solutions h2>span{display:block}
html[data-grand-solutions="a"] .grand-explanation{max-width:750px;margin:38px auto 0}
html[data-grand-solutions="a"] .grand-explanation .grand-support{max-width:680px;margin:25px auto 0}
html[data-grand-solutions="a"] .grand-outcome{max-width:1050px;margin-top:48px;font-size:clamp(2.125rem,3.2vw,3rem)}

/* B: A full-width navy field, with the promise beside the personal work. */
html[data-grand-solutions="b"] .grand-solutions{background:#102b50;color:#f8f5ed;padding-block:102px}
html[data-grand-solutions="b"] .grand-solutions-main{display:grid;grid-template-columns:1.05fr .95fr;gap:78px;align-items:center}
html[data-grand-solutions="b"] .grand-solutions h2{font-size:clamp(3rem,4.7vw,4.5rem);line-height:1.09}
html[data-grand-solutions="b"] .grand-solutions h2 em{color:#d2c29e}
html[data-grand-solutions="b"] .grand-research{color:#d9e3f0;font-size:1.125rem;line-height:1.85}
html[data-grand-solutions="b"] .grand-explanation .grand-support{color:#f8f5ed;font-size:1.75rem;margin-top:28px}
html[data-grand-solutions="b"] .grand-outcome{max-width:1080px;margin:64px auto 0;text-align:center;font-size:clamp(2.25rem,3.3vw,3.125rem)}

/* C: Soft sage, an editorial headline, and a composed closing statement. */
html[data-grand-solutions="c"] .grand-solutions{background:#edf1e8;color:#243c33}
html[data-grand-solutions="c"] .grand-solutions-inner{max-width:1120px}
html[data-grand-solutions="c"] .grand-solutions h2{max-width:1000px;font-size:clamp(3rem,5.1vw,4.75rem)}
html[data-grand-solutions="c"] .grand-solutions h2 em{color:#476150}
html[data-grand-solutions="c"] .grand-explanation{display:grid;grid-template-columns:1.35fr .85fr;gap:62px;align-items:center;margin:38px 0 0 70px}
html[data-grand-solutions="c"] .grand-research{font-size:1.125rem;color:#536153;line-height:1.8}
html[data-grand-solutions="c"] .grand-explanation .grand-support{font-size:1.75rem;color:#243c33;margin:0}
html[data-grand-solutions="c"] .grand-outcome{max-width:none;margin-top:48px;padding:35px 44px;background:#ffffffab;border-radius:6px;text-align:center;font-size:clamp(2rem,3vw,2.875rem)}

@media(max-width:1050px) and (min-width:701px){
 html[data-grand-solutions="b"] .grand-solutions-main{gap:40px}
 html[data-grand-solutions="c"] .grand-explanation{margin-left:30px;gap:35px}
}
@media(max-width:700px){
 .grand-solutions,html[data-grand-solutions="b"] .grand-solutions{padding:62px 0}
 .grand-solutions-inner{width:calc(100% - 40px)}
 html[data-grand-solutions] .grand-solutions h2{font-size:clamp(2.625rem,10vw,3.5rem);line-height:1.09;letter-spacing:-.04em}
 html[data-grand-solutions="a"] .grand-solutions h2>span{display:inline}
 html[data-grand-solutions="a"] .grand-solutions{text-align:left}
 html[data-grand-solutions] .grand-explanation{display:block;margin:28px 0 0}
 html[data-grand-solutions] .grand-explanation .grand-research{font-size:1.0625rem;line-height:1.8}
 html[data-grand-solutions] .grand-explanation .grand-support{font-size:1.5rem;line-height:1.4;margin:23px 0 0}
 html[data-grand-solutions="b"] .grand-solutions-main{display:block}
 html[data-grand-solutions] .grand-solutions .grand-outcome{margin:35px 0 0;font-size:clamp(1.875rem,7.4vw,2.375rem);line-height:1.3;text-align:left}
 html[data-grand-solutions="c"] .grand-outcome{padding:27px 22px}
}
