/* Business needs use the same compact two-column catalogue rhythm. */
#solutions .solutions-layout{display:block}
#solutions .solutions-intro{max-width:760px;margin-bottom:30px}
#solutions .needs-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border:0;align-items:start}
#solutions .needs-list details{min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
#solutions .needs-list summary{display:flex;align-items:flex-start;padding:21px 18px;gap:12px;min-height:100px;font-size:20px;line-height:1.4}
#solutions .needs-list summary>span:nth-child(2){flex:1;min-width:0}
#solutions .need-number{flex-shrink:0;padding-top:4px}
#solutions .need-symbol{flex-shrink:0;margin-top:7px}
#solutions .need-detail{padding:0 18px 22px}
#solutions .need-detail h3{font-size:19px;line-height:1.4;margin-bottom:12px}
#solutions .need-detail p{font-size:15px;line-height:1.65}
@media(max-width:650px){
 #solutions .needs-list{gap:12px}
 #solutions .needs-list summary{padding:15px 12px;gap:7px;min-height:125px;font-size:17px;line-height:1.35;flex-wrap:wrap}
 #solutions .needs-list summary>span:nth-child(2){flex-basis:calc(100% - 24px);flex-grow:1}
 #solutions .need-number{font-size:10px;padding-top:3px}
 #solutions .need-symbol{margin:7px 0 0 auto;width:15px;height:15px}
 #solutions .need-detail{padding:0 12px 17px}
 #solutions .need-detail h3{font-size:15px;line-height:1.45;margin-bottom:10px}
 #solutions .need-detail p{font-size:13px;line-height:1.65}
}
@media(max-width:359px){
 #solutions .needs-list{gap:9px}
 #solutions .needs-list summary{font-size:15px;padding:13px 10px;min-height:125px}
 #solutions .need-detail{padding:0 10px 15px}
 #solutions .need-detail p{font-size:12px}
}
/* Uniform closed-card shapes and consistently anchored accordion controls. */
#solutions .needs-list summary{display:grid;grid-template-columns:20px minmax(0,1fr);grid-template-rows:1fr 20px;align-items:start;column-gap:10px;row-gap:12px;height:160px;min-height:160px}
#solutions .needs-list .need-number{grid-column:1;grid-row:1}
#solutions .needs-list summary>span:nth-child(2){grid-column:2;grid-row:1;min-width:0;overflow-wrap:break-word}
#solutions .needs-list .need-symbol{grid-column:2;grid-row:2;justify-self:end;align-self:end;margin:0}
@media(max-width:650px){
 #solutions .needs-list summary{grid-template-columns:17px minmax(0,1fr);column-gap:6px;height:205px;min-height:205px;padding:16px 12px}
}
@media(max-width:359px){
 #solutions .needs-list summary{grid-template-columns:15px minmax(0,1fr);column-gap:5px;height:225px;min-height:225px;padding:14px 10px}
}
/* Quiet, content-specific artwork fills the lower area without competing with titles. */
#solutions .needs-list summary{position:relative;isolation:isolate}
#solutions .need-art{position:absolute;left:24px;bottom:14px;width:110px;height:64px;color:#1776b3;opacity:.55;pointer-events:none;transition:opacity .2s}
#solutions .need-art .gold{stroke:#ad833a}
html[data-mode=dark] #solutions .need-art{color:#35d9e8;opacity:.38}
html[data-mode=dark] #solutions .need-art .gold{stroke:#c9ad78}
#solutions summary:hover .need-art,#solutions summary:focus-visible .need-art{opacity:.75}
#solutions .needs-list .need-symbol{z-index:2}
@media(max-width:650px){#solutions .need-art{left:17px;bottom:19px;width:96px;height:57px}}
@media(max-width:359px){#solutions .need-art{left:12px;bottom:18px;width:88px;height:52px}}
@media(prefers-reduced-motion:reduce){#solutions .need-art{transition:none}}
