
/* Expanded footer — same navy/cyan brand system as approved designs */
footer.sr-footer-rich{box-sizing:border-box;position:relative;width:100%;padding:0!important;overflow:hidden;background:radial-gradient(ellipse at 96% -20%,#13529a88,transparent 48%),linear-gradient(135deg,#021027 0%,#05244c 100%);color:#fff;font-family:Inter,Segoe UI,Arial,sans-serif}
footer.sr-footer-rich *{box-sizing:border-box}
footer.sr-footer-rich:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#0477ff,#30d1ff 48%,#0068ff)}
footer.sr-footer-rich .sf-container{width:min(1440px,calc(100% - 100px));margin:0 auto;padding:48px 0 20px}
footer.sr-footer-rich .sf-top{display:flex;justify-content:space-between;gap:40px;align-items:center;padding-bottom:37px;border-bottom:1px solid #ffffff2c}
footer.sr-footer-rich .sf-brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:#fff!important}
footer.sr-footer-rich .sf-brand img{width:78px;height:52px;object-fit:contain;object-position:center;background:transparent;box-shadow:none;filter:none}
footer.sr-footer-rich .sf-brand strong{font-size:clamp(21px,2vw,27px);letter-spacing:-.7px;color:#fff}
footer.sr-footer-rich .sf-intro p{max-width:555px;margin:13px 0 0;color:#bbd4ef;font-size:14px;line-height:1.7}
footer.sr-footer-rich .sf-contact{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
footer.sr-footer-rich .sf-contact>span{color:#48c9ff;font-size:11px;font-weight:850;letter-spacing:2px}
footer.sr-footer-rich .sf-contact>strong{font-size:23px;letter-spacing:-.5px}
footer.sr-footer-rich .sf-quote{display:inline-flex;align-items:center;gap:14px;padding:13px 20px;border:1px solid #5fd7ff;border-radius:9px;background:linear-gradient(115deg,#078eff,#0551f0);box-shadow:0 5px 15px #027dff3b;color:#fff!important;font-size:14px;font-weight:750;text-decoration:none;margin-top:5px}
footer.sr-footer-rich .sf-quote:hover,footer.sr-footer-rich .sf-quote:focus-visible{background:#168cfa}
footer.sr-footer-rich .sf-featured{display:grid;grid-template-columns:1.22fr 1.16fr 1fr 1fr;gap:clamp(24px,4.2vw,72px);padding:38px 0 35px}
footer.sr-footer-rich .sf-column{display:flex;flex-direction:column;gap:10px;min-width:0}
footer.sr-footer-rich h3{font-size:15px;letter-spacing:.1px;margin:0 0 8px;color:#fff;font-weight:800;line-height:1.4}
footer.sr-footer-rich h3:after{content:"";display:block;background:#19c3ff;width:38px;height:2px;margin-top:12px;border-radius:2px}
footer.sr-footer-rich .sf-column a,footer.sr-footer-rich .sf-link-list a{font-size:13px;line-height:1.48;color:#c0d4ed;text-decoration:none}
footer.sr-footer-rich a:hover,footer.sr-footer-rich a:focus-visible{color:#5cd6ff!important;text-decoration:underline;text-underline-offset:3px}
footer.sr-footer-rich .sf-directory{border-top:1px solid #ffffff27;border-bottom:1px solid #ffffff27;margin:0 0 21px}
footer.sr-footer-rich .sf-directory summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;list-style:none;cursor:pointer;color:#fff}
footer.sr-footer-rich .sf-directory summary::-webkit-details-marker{display:none}
footer.sr-footer-rich .sf-directory summary>span:first-child{display:flex;flex-direction:column;gap:4px}
footer.sr-footer-rich .sf-directory summary strong{font-size:15px}
footer.sr-footer-rich .sf-directory summary small{color:#b7cfe9;font-size:12px}
footer.sr-footer-rich .sf-expand{font-size:29px;font-weight:350;line-height:1;color:#40caff;transition:transform .15s ease}
footer.sr-footer-rich details[open] .sf-expand{transform:rotate(45deg)}
footer.sr-footer-rich .sf-directory-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;padding:12px 0 30px}
footer.sr-footer-rich .sf-directory-grid h4{font-size:14px;color:#5bd2ff;margin:0 0 18px}
footer.sr-footer-rich .sf-link-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 22px}
footer.sr-footer-rich .sf-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:#91adcd;line-height:1.6}
footer.sr-footer-rich .sf-bottom>div{display:flex;flex-wrap:wrap;gap:20px}
footer.sr-footer-rich .sf-bottom a{font-size:12px;color:#bad0e9;text-decoration:none}
@media(max-width:1080px){footer.sr-footer-rich .sf-featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 42px}}
@media(max-width:700px){footer.sr-footer-rich .sf-container{width:calc(100% - 36px);padding:30px 0 18px}footer.sr-footer-rich .sf-top{flex-direction:column;align-items:stretch;gap:24px;padding-bottom:25px}footer.sr-footer-rich .sf-featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 18px;padding:30px 0}footer.sr-footer-rich .sf-directory-grid{grid-template-columns:1fr;gap:28px}footer.sr-footer-rich .sf-bottom{flex-direction:column;align-items:flex-start}footer.sr-footer-rich .sf-link-list{grid-template-columns:1fr}}
@media(max-width:430px){footer.sr-footer-rich .sf-featured{grid-template-columns:1fr}footer.sr-footer-rich .sf-brand strong{font-size:21px}}
/* Keep technology section title as two balanced lines and seven cards aligned. */
body.reference-home .reference-tech .tech-title h2{line-height:1.07!important;max-width:370px!important;letter-spacing:-.75px!important}
body.reference-home .reference-tech .tech-title h2 .tech-line{display:block!important;white-space:nowrap}
@media(max-width:360px){body.reference-home .reference-tech .tech-title h2 .tech-line{white-space:normal}}
/* Keep overview heading on its two intended lines at desktop sizes. */
@media(min-width:1120px){body.reference-home .split .overview-heading{font-size:clamp(30px,2.5vw,41px)!important;line-height:1.10!important}}
