/* Shared Our Focus panels: centered library icons and one irregular fiber network. */
html:has(.focus-panels){overflow-x:clip}
.focus-panels{--focus-gap:16px;--focus-pad:clamp(20px,1.8vw,28px);position:relative;isolation:isolate;width:100%;margin:0 auto;padding:76px 0 88px;scroll-margin-top:104px}
.focus-panels:before{content:'';position:absolute;inset:5% 0 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,#1b548b21,transparent 70%)}
.focus-panels>h2{margin:0 0 48px;text-align:center;font-size:clamp(34px,3.6vw,54px);line-height:1.2;font-weight:500;letter-spacing:-.035em;color:#eef5fa;text-wrap:balance}
.focus-panels>h2>span{color:#9fd2f7}
.focus-panels .focus-network{width:100vw;margin-inline:calc(50% - 50vw);padding-inline:calc((100vw - 100%)/2);overflow:hidden}
.focus-panels .focus-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--focus-gap);align-items:stretch}
.focus-panels .focus-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.focus-panels .focus-card{position:relative;display:grid;grid-template-rows:100px auto 1fr;gap:22px;align-content:start;min-width:0;padding:var(--focus-pad);border:1px solid #4487b440;border-radius:18px;background:linear-gradient(145deg,#102d3f5c,#0615228f)}
@supports(grid-template-rows:subgrid){.focus-panels .focus-card{grid-template-rows:subgrid;grid-row:span 3}}
.focus-panels .focus-visual{position:relative;display:grid;place-items:center;height:100px;min-width:0}
.focus-panels .focus-visual>img{position:relative;z-index:2;width:58px;height:58px;filter:brightness(0) invert(1);opacity:.95}
.focus-panels .focus-fibers{position:absolute;z-index:1;left:calc(0px - var(--focus-pad) - var(--focus-gap)/2);top:-6px;width:calc(100% + var(--focus-pad)*2 + var(--focus-gap));height:112px;overflow:hidden;pointer-events:none}
.focus-panels .focus-edge{display:none;width:50vw}
.focus-panels .focus-edge--left{left:auto;right:calc(100% + var(--focus-pad) + var(--focus-gap)/2)}
.focus-panels .focus-edge--right{left:calc(100% + var(--focus-pad) + var(--focus-gap)/2);right:auto}
.focus-panels .focus-card:first-child .focus-edge--left,.focus-panels .focus-card:last-child .focus-edge--right{display:block}
.focus-panels .focus-fiber-base path{fill:none;stroke:#5da5d6;stroke-width:.65;opacity:.38}
.focus-panels .focus-fiber-base .focus-capillary{stroke-width:.4;opacity:.28}
.focus-panels .focus-glimmer{opacity:.18;animation:focus-bloom 12.7s ease-in-out infinite;animation-play-state:paused}
.focus-panels .focus-glimmer path{fill:none;stroke:#94d9ff;stroke-width:1;stroke-linecap:round}
.focus-panels .focus-fibers circle{stroke:none}
.focus-panels .focus-light-core{fill:#d3f2ff}
.focus-panels .focus-glimmer--a{animation-delay:-2.3s}
.focus-panels .focus-glimmer--b{animation-duration:16.3s;animation-delay:-9.7s}
.focus-panels .focus-glimmer--c{animation-duration:19.1s;animation-delay:-5.4s}
.focus-panels .focus-card:nth-child(2) .focus-glimmer--a{animation-duration:15.1s;animation-delay:-8.1s}
.focus-panels .focus-card:nth-child(2) .focus-glimmer--b{animation-delay:-3.8s}
.focus-panels .focus-card:nth-child(3) .focus-glimmer--a{animation-duration:17.3s;animation-delay:-11.6s}
.focus-panels .focus-card:nth-child(3) .focus-glimmer--c{animation-delay:-14.2s}
.focus-panels .focus-card:nth-child(4) .focus-glimmer--a{animation-duration:14.3s;animation-delay:-6.6s}
.focus-panels .focus-card:nth-child(4) .focus-glimmer--b{animation-duration:18.7s;animation-delay:-13.3s}
.focus-panels[data-active=true] .focus-glimmer{animation-play-state:running}
.focus-panels .focus-card h3{position:relative;margin:0;color:#f0f5f8;font-size:clamp(21px,1.75vw,26px);line-height:1.3;font-weight:600;letter-spacing:-.025em;text-align:start;text-wrap:pretty}
.focus-panels .focus-copy{position:relative;min-width:0}
.focus-panels .focus-copy p{margin:0;color:#b6cbdc;font-size:15.5px;line-height:1.75;text-align:start;overflow-wrap:break-word;text-wrap:pretty}
.focus-panels .focus-copy p+p{margin-top:24px}
.focus-panels .focus-note{margin:32px auto 0;max-width:75ch;text-align:center;font-size:15px;line-height:1.75;color:#b6cbdc}
.focus-panels .focus-note a{color:#d0eaff;text-underline-offset:5px;text-decoration:underline}
.focus-panels .focus-note a:focus-visible{outline:2px solid #bddfff;outline-offset:5px}
@keyframes focus-bloom{0%,100%{opacity:.08}22%{opacity:.17}40%{opacity:.7}53%{opacity:.22}72%{opacity:.12}86%{opacity:.4}}
@media(max-width:1120px){.focus-panels{--focus-gap:20px;--focus-pad:26px}.focus-panels .focus-grid:not(.focus-grid--three){grid-template-columns:repeat(2,minmax(0,1fr))}.focus-panels .focus-card h3{font-size:24px}.focus-panels .focus-copy p{font-size:16px}}
@media(max-width:1120px){.focus-panels .focus-grid:not(.focus-grid--three) .focus-card:nth-child(odd) .focus-edge--left,.focus-panels .focus-grid:not(.focus-grid--three) .focus-card:nth-child(even) .focus-edge--right{display:block}}
@media(max-width:900px){.focus-panels .focus-grid--three{grid-template-columns:minmax(0,1fr);max-width:620px;margin-inline:auto}}
@media(max-width:900px){.focus-panels .focus-grid--three .focus-edge{display:block}}
@media(max-width:600px){.focus-panels{padding:52px 0 60px;--focus-gap:22px;--focus-pad:24px}.focus-panels>h2{margin-bottom:30px;font-size:36px}.focus-panels .focus-grid:not(.focus-grid--three){grid-template-columns:minmax(0,1fr)}.focus-panels .focus-card{grid-template-rows:88px auto 1fr;gap:20px;grid-row:auto}.focus-panels .focus-visual{height:88px}.focus-panels .focus-fibers{top:-12px}.focus-panels .focus-visual>img{width:54px;height:54px}.focus-panels .focus-card h3{font-size:24px}.focus-panels .focus-copy p{line-height:1.7}.focus-panels .focus-copy p+p{margin-top:21px}}
@media(max-width:600px){.focus-panels .focus-edge{display:block}}
@media(prefers-reduced-motion:reduce){.focus-panels .focus-glimmer{animation:none;opacity:.2}}
.still .focus-panels .focus-glimmer{animation-play-state:paused!important}
@media(forced-colors:active){.focus-panels:before,.focus-panels .focus-fibers{display:none!important}.focus-panels .focus-card{border-color:CanvasText;background:Canvas}.focus-panels .focus-visual>img{filter:none}.focus-panels .focus-card h3,.focus-panels .focus-copy p{color:CanvasText}.focus-panels .focus-note a{color:LinkText}}
@media print{.focus-panels .focus-fibers,.focus-panels:before{display:none!important}.focus-panels{width:100%;padding:24px 0}.focus-panels .focus-network{width:100%;margin:0;padding:0}.focus-panels .focus-card{break-inside:avoid;background:none;border-color:#ccc}.focus-panels .focus-card h3,.focus-panels .focus-copy p{color:#111}}
