/* Problem Solver. Scoped styles avoid changing unrelated site templates. */
.solutions-hub,.solutions-article { max-width: 1120px; }
.solutions-intro,.solutions-article-header { background:linear-gradient(140deg,#edf9f7,#f6fafc 65%,#eef5fa); color:#172f42; padding:clamp(1.5rem,4vw,3rem); border-radius:1.15rem; border:1px solid #cbe2e3; margin-bottom:1.5rem; }
.solutions-eyebrow,.solutions-card-topic { color:#08727b; font-size:.78rem; letter-spacing:.065em; text-transform:uppercase; font-weight:750; margin:0 0 .65rem; }
.solutions-intro h1,.solutions-article-header h1 { max-width:840px; line-height:1.15; margin:0 0 1rem; }
.solutions-deck { max-width:780px; line-height:1.75; font-size:1.08rem; margin:0 0 .5rem; }
.solutions-meta { color:#3b6172; font-size:.9rem; margin:1rem 0 0; }
.solutions-intro-content { max-width:880px; line-height:1.8; margin-bottom:2rem; }
.solutions-intro-content h2 { margin:2rem 0 .65rem; font-size:1.45rem; }
.solutions-chooser { border:1px solid var(--border,#d5e2e4); border-radius:1rem; padding:1.4rem; margin-bottom:1.3rem; background:var(--card,#fff); }
.solutions-chooser h2 { font-size:1.35rem; margin:0 0 .7rem; }
.solutions-chooser label { display:block; margin-bottom:.5rem; font-weight:650; }
.solutions-chooser select { width:min(100%,480px); border:1px solid #8ca6ae; background:#fff; color:#192f3b; border-radius:.55rem; padding:.7rem .8rem; font-size:1rem; }
.solutions-chooser select:focus-visible { outline:3px solid #139fac; outline-offset:2px; }
#solutions-filter-result { margin:.7rem 0 0; color:var(--muted,#526b7a); }
.solutions-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:1rem; margin:1.4rem 0 2.5rem; }
.solutions-grid [hidden] { display:none !important; }
.solutions-card { background:var(--card,#fff); border:1px solid var(--border,#cbdce0); border-radius:.9rem; padding:1.35rem 1.4rem; display:flex; flex-direction:column; min-height:220px; box-shadow:0 3px 15px rgba(8,45,62,.035); }
.solutions-card h2 { font-size:1.24rem; line-height:1.35; margin:.2rem 0 .65rem; }
.solutions-card h2 a { color:var(--text,#154552); text-decoration:none; }
.solutions-card h2 a:hover,.solutions-card h2 a:focus-visible { text-decoration:underline; }
.solutions-card p:not(.solutions-card-topic) { color:var(--muted,#455f6d); line-height:1.65; font-size:.95rem; margin:0 0 1.2rem; }
.solutions-card .solutions-card-link { margin-top:auto; font-weight:700; color:#067a84; }
.solutions-next-step,.solutions-end-links { border-top:1px solid var(--border,#d0dce0); padding-top:1.35rem; margin-top:1.5rem; line-height:1.75; }
.solutions-next-step h2,.solutions-end-links h2 { font-size:1.35rem; margin:0 0 .35rem; }
.solutions-article { max-width:1000px; }
.solutions-article-content { max-width:900px; line-height:1.8; font-size:1.015rem; }
.solutions-article-content h2 { font-size:1.52rem; margin:2.3rem 0 .85rem; line-height:1.35; }
.solutions-article-content h3 { font-size:1.19rem; margin:1.7rem 0 .6rem; }
.solutions-article-content p,.solutions-article-content li { max-width:85ch; }
.solutions-article-content li { margin:.35rem 0; }
.solutions-article-content table { display:block; overflow-x:auto; border-collapse:collapse; margin:1rem 0 1.35rem; max-width:100%; }
.solutions-article-content th,.solutions-article-content td { text-align:left; border:1px solid var(--border,#c8d7df); padding:.65rem .85rem; vertical-align:top; min-width:100px; }
.solutions-article-content th { background:rgba(5,107,123,.08); }
.solutions-article-content pre { padding:1rem; overflow-x:auto; border-radius:.6rem; background:#102633; color:#f6feff; margin:1rem 0; font-size:.95rem; }
.solutions-article-content code:not(pre code) { padding:.08rem .28rem; background:rgba(10,100,115,.08); border-radius:.25rem; }
.solutions-article-content a { text-underline-offset:2px; }
@media (prefers-color-scheme:dark) { html.dark .solutions-intro,html.dark .solutions-article-header {background:linear-gradient(140deg,#12343c,#142b3a);color:#eefafa;border-color:#245464;} html.dark .solutions-deck,html.dark .solutions-meta {color:#d4e7ea;} html.dark .solutions-eyebrow,html.dark .solutions-card-topic {color:#6de6d9;} html.dark .solutions-chooser select {background:#1b2c37;color:#f5feff;border-color:#637982;} html.dark .solutions-card .solutions-card-link {color:#70ded4;} }
@media (max-width:640px) { .solutions-chooser,.solutions-card { padding:1.05rem; } .solutions-article-content table {font-size:.9rem;} }
