.sol-page{--sol-navy:#102a43;--sol-ink:#18364c;--sol-muted:#526579;--sol-paper:#f5f8fb;--sol-line:#d7e1eb;--sol-orange:#bf470d;background:#fff;color:var(--sol-ink);font-family:Inter,Arial,sans-serif;line-height:1.7}
.sol-page *{box-sizing:border-box}.sol-page .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.sol-wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.sol-page h1,.sol-page h2,.sol-page h3{font-family:Barlow,Inter,sans-serif;line-height:1.12;letter-spacing:-.025em;font-weight:700;text-wrap:balance}.sol-page h1{font-size:clamp(2.45rem,4.5vw,4.4rem);margin:18px 0 24px;color:var(--sol-navy)}.sol-page h2{font-size:clamp(1.8rem,3.2vw,2.75rem);margin:0 0 26px}.sol-page h3{font-size:1.35rem;margin:0 0 12px}.sol-page p{margin:0 0 20px;color:var(--sol-muted)}.sol-page a{color:inherit}.sol-page a:focus-visible,.sol-page button:focus-visible,.sol-page input:focus-visible{outline:3px solid #1675c0;outline-offset:4px}.sol-kicker{font-size:.73rem!important;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--sol-orange)!important;margin:0 0 16px!important}.sol-breadcrumb{font-size:.76rem;color:#64798b;display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px}.sol-breadcrumb a{text-decoration:none}.sol-breadcrumb a:hover{text-decoration:underline}.sol-hero{padding:46px 0 68px;background:linear-gradient(180deg,#fff 0%,#f5f8fb 100%);border-bottom:1px solid var(--sol-line)}.sol-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:64px}.sol-lead{font-size:1.12rem;line-height:1.8;max-width:650px}.sol-hero-figure{margin:0;position:relative}.sol-hero-figure img{display:block;width:100%;height:390px;object-fit:cover;border-radius:16px;background:#e4ebf1}.sol-photo-caption{font-size:.66rem;line-height:1.6;color:#607587;padding:10px 2px}.sol-photo-caption a{text-decoration:underline;text-underline-offset:2px}.sol-hero-tag{display:inline-flex;align-items:center;gap:8px;font-size:.73rem;font-weight:600;color:#486477;border:1px solid var(--sol-line);padding:6px 10px;border-radius:5px;margin-top:10px}.sol-hero-tag:before{content:'';width:5px;height:5px;border-radius:50%;background:#bf470d}.sol-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.sol-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:47px;padding:12px 19px;border:1px solid var(--sol-orange);border-radius:7px;background:var(--sol-orange);color:#fff!important;font-size:.86rem;font-weight:650;text-decoration:none;line-height:1.4;cursor:pointer}.sol-button:hover{background:#9e3809;border-color:#9e3809}.sol-button-secondary{background:transparent;border-color:#9cafbf;color:var(--sol-navy)!important}.sol-button-secondary:hover{background:#e9f0f5;border-color:#7c94a7}.sol-arrow{font-size:1.15rem}.sol-index-hero{background:var(--sol-navy);color:#fff;padding:64px 0}.sol-index-hero h1{color:#fff;max-width:740px}.sol-index-hero .sol-kicker{color:#f3b58f!important}.sol-index-hero p{color:#c7d7e4}.sol-index-hero .sol-breadcrumb{color:#b3c7d7}.sol-index-hero .sol-hero-figure img{height:370px}.sol-index-hero .sol-photo-caption{color:#c7d7e4}.sol-index-hero .sol-button-secondary{border-color:#859daf;color:#fff!important}.sol-index-hero .sol-button-secondary:hover{background:#24445f}.sol-index-hero h1 em{font-style:normal;color:#f3b58f}.sol-stats{display:flex;gap:32px;flex-wrap:wrap;border-top:1px solid #3d566b;padding-top:24px;margin-top:32px}.sol-stats strong{font-family:Barlow,Inter,sans-serif;font-size:1.9rem;color:#fff;display:block;line-height:1.1}.sol-stats span{font-size:.67rem;letter-spacing:.05em;text-transform:uppercase;color:#aebfce}.sol-section{padding:76px 0;scroll-margin-top:106px}.sol-section-soft{background:var(--sol-paper);border-block:1px solid #e6edf3}.sol-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}.sol-section-head h2{margin-bottom:0}.sol-section-head p{font-size:.9rem;max-width:430px;margin:0}.sol-overview{display:grid;grid-template-columns:1.2fr 1fr;gap:76px}.sol-prose p{font-size:.95rem;max-width:760px}.sol-uses{display:flex;flex-direction:column;gap:0}.sol-use{padding:20px 0;border-bottom:1px solid var(--sol-line)}.sol-use:first-child{padding-top:0}.sol-use h3{font-size:1.2rem}.sol-use p{font-size:.85rem;margin:0}.sol-subnav{position:sticky;top:72px;z-index:30;background:#ffffffef;border-bottom:1px solid var(--sol-line);backdrop-filter:blur(10px)}.sol-subnav .sol-wrap{display:flex;gap:30px;overflow:auto;padding-block:16px;scrollbar-width:thin}.sol-subnav a{font-size:.76rem;font-weight:650;color:#526579;text-decoration:none;white-space:nowrap}.sol-subnav a:hover{color:var(--sol-orange)}.sol-concept{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}.sol-figure{margin:0;border:1px solid var(--sol-line);border-radius:12px;background:#fff;overflow:hidden}.sol-figure-head{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e7edf3;padding:17px 22px;font-size:.72rem}.sol-figure-head strong{font-weight:700;color:#24445f}.sol-figure-head span{color:#6a8194}.sol-diagram{background:#f8fafc;padding:12px 8px 0;overflow:hidden}.sol-diagram svg{display:block;width:100%;height:auto;max-height:460px}.sol-figure figcaption{padding:16px 22px;font-size:.73rem;line-height:1.7;color:#526579;border-top:1px solid #e7edf3}.sol-figure figcaption a{display:inline-block;color:#9e3809;text-underline-offset:3px;margin-top:8px}.sol-stage-list{display:flex;flex-direction:column;gap:10px}.sol-stage{width:100%;padding:20px;text-align:left;border:1px solid var(--sol-line);border-radius:9px;background:#fff;cursor:pointer;color:var(--sol-navy);font:inherit;transition:border-color .2s,background .2s}.sol-stage small{display:block;color:#8b6b54;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.sol-stage strong{font-family:Barlow,Inter,sans-serif;display:block;font-size:1.18rem;line-height:1.2;margin-bottom:9px}.sol-stage span{display:block;color:#526579;font-size:.8rem;line-height:1.65}.sol-stage[aria-pressed=true]{border-color:#d88e65;background:#fff7f1;box-shadow:inset 3px 0 #bf470d}.sol-readout{font-size:.72rem!important;margin:16px 2px 0!important;color:#526579!important}.sol-diagram [data-stage]{transition:opacity .3s ease}.sol-diagram[data-focus=source] [data-stage=controls],.sol-diagram[data-focus=source] [data-stage=branches],.sol-diagram[data-focus=controls] [data-stage=source],.sol-diagram[data-focus=controls] [data-stage=branches],.sol-diagram[data-focus=branches] [data-stage=source],.sol-diagram[data-focus=branches] [data-stage=controls]{opacity:.28}.sol-diagram .iso{--anatomy-paper:#f8fafc}.sol-table-wrap{overflow:auto;border:1px solid var(--sol-line);border-radius:10px;background:#fff}.sol-page table{border-collapse:collapse;width:100%;min-width:640px;font-size:.84rem;line-height:1.7;text-align:left}.sol-page thead{background:#102a43;color:#fff}.sol-page th,.sol-page td{padding:20px 23px;border-bottom:1px solid var(--sol-line);vertical-align:top}.sol-page thead th{font-size:.69rem;text-transform:uppercase;letter-spacing:.08em}.sol-page tbody th{width:22%;font-weight:650;color:#18364c}.sol-page tbody td{color:#526579}.sol-page tbody tr:last-child>*{border-bottom:0}.sol-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.sol-product{display:flex;flex-direction:column;border:1px solid var(--sol-line);border-top:2px solid #d7865c;padding:24px;border-radius:10px;background:#fff;text-decoration:none;transition:transform .2s,box-shadow .2s}.sol-product:hover{transform:translateY(-2px);box-shadow:0 8px 20px #102a430b}.sol-product small{font-size:.65rem;color:#7b90a2;letter-spacing:.08em;text-transform:uppercase}.sol-product h3{font-size:1.25rem;line-height:1.23;margin:14px 0 18px;flex:1}.sol-product span{font-size:.74rem;font-weight:600;color:#9e3809}.sol-scope{padding:26px 30px;border-left:3px solid #bf470d;background:#fff7f1;border-radius:0 8px 8px 0;margin-top:30px}.sol-scope strong{display:block;color:#873b19;font-size:.8rem;margin-bottom:8px}.sol-scope p{font-size:.85rem;margin:0;color:#614e43}.sol-brief{display:grid;grid-template-columns:1fr 1fr;gap:64px}.sol-checklist{padding:0;list-style:none;counter-reset:brief;margin:0}.sol-checklist li{counter-increment:brief;border-bottom:1px solid var(--sol-line);padding:15px 0;font-size:.87rem;display:flex;gap:18px}.sol-checklist li:before{content:counter(brief,decimal-leading-zero);font-family:Barlow,Inter,sans-serif;font-weight:650;color:#a14a21}.sol-brief-panel{padding:36px;background:#102a43;border-radius:12px;color:#fff}.sol-brief-panel h3{font-size:1.8rem;color:#fff}.sol-brief-panel p{font-size:.89rem;color:#c7d7e4}.sol-brief-panel .sol-button-secondary{color:#fff!important;border-color:#7e97aa}.sol-brief-panel .sol-button-secondary:hover{background:#24445f}.sol-faq{max-width:900px}.sol-faq details{border-bottom:1px solid var(--sol-line);padding:22px 0}.sol-faq summary{font-family:Barlow,Inter,sans-serif;font-size:1.18rem;font-weight:600;cursor:pointer;line-height:1.4}.sol-faq details p{font-size:.88rem;margin:16px 0 0;max-width:780px}.sol-references{margin-top:44px;padding-top:26px;border-top:1px solid var(--sol-line)}.sol-references h3{font-size:1rem}.sol-references p,.sol-references li{font-size:.75rem;color:#62798b}.sol-references a{text-decoration:underline;text-underline-offset:3px}.sol-references ul{padding-left:18px;display:flex;flex-direction:column;gap:9px}.sol-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sol-related a{padding:28px;border:1px solid var(--sol-line);border-radius:10px;text-decoration:none;background:#fff}.sol-related h3{font-size:1.5rem}.sol-related span{font-size:.75rem;color:#9e3809}.sol-filter-panel{border-bottom:1px solid var(--sol-line);padding:34px 0;background:#fff}.sol-search-row{display:flex;align-items:center;gap:18px;justify-content:space-between;margin-bottom:20px}.sol-search-row h2{font-size:1.7rem;margin:0}.sol-search{display:flex;align-items:center;gap:10px;max-width:400px;width:100%}.sol-search input{width:100%;border:1px solid #a6b9c8;border-radius:7px;padding:12px 15px;font:inherit;font-size:.82rem;color:#102a43;background:#fff}.sol-search button{background:none;border:0;color:#9e3809;font-size:.76rem;text-decoration:underline;cursor:pointer}.sol-filters{display:flex;gap:9px;flex-wrap:wrap}.sol-filter{border:1px solid var(--sol-line);background:#f5f8fb;padding:9px 13px;border-radius:6px;color:#486477;font:inherit;font-size:.74rem;cursor:pointer}.sol-filter[aria-pressed=true]{background:#102a43;color:#fff;border-color:#102a43}.sol-result-count{font-size:.75rem!important;margin:18px 0 0!important;color:#6c8193!important}.sol-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.sol-card{border:1px solid var(--sol-line);border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.sol-card:hover{transform:translateY(-3px);box-shadow:0 9px 24px #102a430c}.sol-card img{display:block;width:100%;height:168px;object-fit:cover;background:#e2eaf0}.sol-card-content{padding:23px;display:flex;flex-direction:column;flex:1}.sol-card-content .sol-kicker{font-size:.59rem!important;letter-spacing:.08em;line-height:1.6}.sol-card h3{font-size:1.65rem;line-height:1.1}.sol-card p{font-size:.8rem;line-height:1.7;flex:1;margin:0 0 24px}.sol-card a{text-decoration:none}.sol-card-link{font-size:.77rem;font-weight:650;color:#9e3809!important;display:inline-flex;align-items:center;gap:12px}.sol-empty{padding:35px;border:1px solid var(--sol-line);border-radius:8px;color:#526579;font-size:.9rem}.sol-page [hidden]{display:none!important}.sol-method{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.sol-method article{border-top:1px solid #c0cfdb;padding-top:20px}.sol-method small{font-family:Barlow,Inter,sans-serif;font-size:1.5rem;color:#bf470d}.sol-method h3{margin:16px 0 13px;font-size:1.5rem}.sol-method p{font-size:.87rem;margin:0}.sol-footnote{font-size:.74rem!important;margin-top:26px!important;color:#6b8193!important}.sol-mosaic-credit{font-size:.65rem!important;color:#6d8294!important;margin:16px 0 0!important}.sol-end-banner{background:#102a43;padding:58px 0;color:#fff}.sol-end-banner h2{color:#fff;font-size:2.4rem;margin:0 0 16px}.sol-end-banner p{color:#c7d7e4;max-width:700px;font-size:.94rem}.sol-end-banner .sol-button-secondary{color:#fff!important;border-color:#8aa2b5}.sol-end-banner .sol-button-secondary:hover{background:#24445f}
@media(max-width:1100px){.sol-hero-grid{gap:36px}.sol-card-grid,.sol-products{grid-template-columns:repeat(2,minmax(0,1fr))}.sol-hero-figure img{height:350px}.sol-concept{grid-template-columns:1.4fr 1fr}.sol-overview{gap:42px}}
@media(max-width:760px){.sol-wrap{width:calc(100% - 36px)}.sol-hero{padding:27px 0 40px}.sol-breadcrumb{margin-bottom:28px}.sol-hero-grid,.sol-overview,.sol-concept,.sol-brief{grid-template-columns:1fr;gap:30px}.sol-hero-figure img,.sol-index-hero .sol-hero-figure img{height:270px}.sol-page h1{font-size:2.65rem;letter-spacing:-.035em}.sol-lead{font-size:1rem}.sol-index-hero{padding:40px 0}.sol-stats{gap:23px}.sol-stats strong{font-size:1.65rem}.sol-stats span{font-size:.6rem}.sol-section{padding:46px 0;scroll-margin-top:128px}.sol-section-head{display:block;margin-bottom:27px}.sol-section-head p{margin-top:18px}.sol-subnav{top:64px}.sol-subnav .sol-wrap{gap:23px;padding-block:13px}.sol-subnav a{font-size:.7rem}.sol-figure-head{padding:14px 16px;font-size:.65rem}.sol-figure figcaption{padding:15px 16px}.sol-stage{padding:17px}.sol-stage-list{gap:8px}.sol-stage strong{font-size:1.08rem}.sol-diagram{padding:0}.sol-diagram svg{width:114%;max-width:114%;margin-left:-7%}.sol-brief-panel{padding:27px}.sol-scope{padding:23px}.sol-related{grid-template-columns:1fr;gap:13px}.sol-related a{padding:23px}.sol-search-row{display:block}.sol-search{margin-top:20px;max-width:none}.sol-card-grid{gap:16px}.sol-card img{height:145px}.sol-card-content{padding:18px}.sol-card h3{font-size:1.35rem}.sol-card p{font-size:.76rem}.sol-method{grid-template-columns:1fr;gap:29px}.sol-actions{gap:10px}.sol-end-banner{padding:42px 0}.sol-end-banner h2{font-size:2rem}}
@media(max-width:440px){.sol-card-grid,.sol-products{grid-template-columns:1fr}.sol-card img{height:205px}.sol-card h3{font-size:1.65rem}.sol-card p{font-size:.83rem}.sol-card-content{padding:24px}.sol-actions{flex-direction:column}.sol-button{width:100%}}
@media(prefers-reduced-motion:reduce){.sol-page *, .sol-diagram [data-stage]{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
