/* Light surfaces keep the same Neurobots typography, shapes and blue actions. */
.header .theme-toggle{order:2;width:36px;height:40px;border-radius:50%;color:var(--text)}
.theme-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.theme-toggle .theme-moon,.brand .brand-light{display:none}
html[data-theme=light] .theme-toggle .theme-sun,html[data-theme=light] .brand .brand-dark{display:none}
html[data-theme=light] .theme-toggle .theme-moon,html[data-theme=light] .brand .brand-light{display:block}
.theme-toggle svg{stroke-linecap:round}
html[data-theme=light]{color-scheme:light;--bg:#f5f8fc;--surface:#fff;--raised:#eaf0f8;--border:#cbd6e5;--text:#10233c;--muted:#52657b;--cyan:#147880;--line:#c6d2e3;--glass:radial-gradient(ellipse at 24% 120%,#84d6dc26,transparent 48%),radial-gradient(ellipse at 100% 110%,#a0b9ff24,transparent 48%),linear-gradient(125deg,#fff,#f0f5fc);--control:linear-gradient(130deg,#fff,#eaf1fa);--overlay:linear-gradient(135deg,#fff,#edf3fb);background:var(--bg)}
html[data-theme=light] body{--bg:#f5f8fc;--line:#c6d2e3;background:var(--bg);color:var(--text)}
html[data-theme=light] .header{background:#f5f8fcef;border-color:#b7c7dc;box-shadow:0 10px 36px #24416b16,inset 0 1px 0 #fff}
html[data-theme=light] .header:before{background:linear-gradient(110deg,#84d6dc35,transparent 30%,#8bb1ff40 65%,#c9c4f540);background-size:260% 100%}
html[data-theme=light] .brand img{filter:none}
html[data-theme=light] .nav-contact,html[data-theme=light] .menu-toggle{color:var(--text)}
html[data-theme=light] .header nav{background:var(--overlay);border-color:var(--border);box-shadow:0 16px 48px #24416b24}
html[data-theme=light] .header nav>a,html[data-theme=light] .nav-solutions summary,html[data-theme=light] .menu-search{color:var(--muted)}
html[data-theme=light] .header nav .nav-active{color:#164ad0;background:#245bff0c}
html[data-theme=light] .header nav>a:hover,html[data-theme=light] .nav-solutions summary:hover,html[data-theme=light] .menu-search:hover{color:var(--text);background:#245bff0b}
html[data-theme=light] .dropdown{background:#fff9;border-color:var(--border)}
html[data-theme=light] .hero.shell{background:radial-gradient(ellipse at 0% 104%,#84d6dc50,transparent 42%),radial-gradient(ellipse at 100% 100%,#81a8ff55,transparent 44%),#edf3fc;border-bottom-color:#a9c7df}
html[data-theme=light] .hero.shell:before{background:radial-gradient(ellipse at 18% 83%,#84d6dc99,transparent 36%),radial-gradient(ellipse at 80% 86%,#80aaff99,transparent 39%),radial-gradient(ellipse at 55% 74%,#c8c0ef66,transparent 38%)}
html[data-theme=light] .about-lead,html[data-theme=light] .hero-bottom{color:#3b536f}
html[data-theme=light] .hero-bottom .down-arrow{color:#245bff;border-color:#9db4d5}
html[data-theme=light] .hero-secondary{background:#ffffff90;border-color:#b7c9e2;color:var(--text)}
html[data-theme=light] .visual-caption strong{color:#f4f7ff}
html[data-theme=light] :is(.hero h1,h2) .text-gradient{color:#147880;-webkit-text-fill-color:currentColor}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
html[data-theme=light] :is(.hero h1,h2) .text-gradient{background-image:linear-gradient(110deg,#10233c 0%,#167880 22%,#2269bb 40%,#244dda 58%,#6250a4 76%,#167880 90%,#10233c 100%);color:transparent;-webkit-text-fill-color:transparent}
}
html[data-theme=light] .quote-section{background:radial-gradient(ellipse at 0% 0%,#e3dff580,transparent 55%),#edf3fb}
html[data-theme=light] .solution-tabs{background:#eaf0f8}
html[data-theme=light] .solution-tabs button:hover{color:var(--text);background:#fff9}
html[data-theme=light] .solution-tabs button[aria-selected=true]{color:#14365f;background:#fff;border-color:#88a5cc}
html[data-theme=light] .is-interactive .solution-info .text-link{background:#fff9;border-color:#91bbc6}
html[data-theme=light] .lab-panel{background:#ecf3fa}
html[data-theme=light] .lab-image:after{background:linear-gradient(90deg,#edf4fc 5%,#edf4fcf0 40%,#edf4fc30 100%)}
html[data-theme=light] .lab-copy>p:not(.eyebrow){color:#405874}
html[data-theme=light] .lab-caption{background:#edf4fce6;color:#244765;padding:6px 12px;border-radius:6px}
html[data-theme=light] .partner-logos>div{background:#fff}
html[data-theme=light] .award-logos .brand-swap .brand-white,html[data-theme=light] .partner-logos .brand-swap .brand-white{filter:brightness(0) saturate(100%) invert(16%) sepia(20%) saturate(1050%) hue-rotate(175deg)!important;opacity:.9}
html[data-theme=light] .award-logos img.gsvc-logo,html[data-theme=light] .media-grid img,html[data-theme=light] .socials img{filter:brightness(0) saturate(100%) invert(16%) sepia(20%) saturate(1050%) hue-rotate(175deg);opacity:.9}
html[data-theme=light] .contact-panel{background:radial-gradient(ellipse at 10% 120%,#84d6dc55,transparent 52%),radial-gradient(ellipse at 90% 120%,#8fb0ff66,transparent 55%),#edf3fc;border-color:#b8cbe3;box-shadow:inset 0 1px 1px #fff,0 12px 40px #294c7010}
html[data-theme=light] .contact-action>p{color:var(--muted)}
html[data-theme=light] .contact .primary{color:#fff;background:var(--primary);border-color:var(--primary)}
html[data-theme=light] .footer{border-top-color:var(--border)}
html[data-theme=light] dialog{background:#f5f8fc;color:var(--text);border-color:#aebfd6}
html[data-theme=light] input,html[data-theme=light] textarea{background:#fff;color:var(--text);border-color:#9fb2cc}
html[data-theme=light] input::placeholder,html[data-theme=light] textarea::placeholder{color:var(--muted)}
html[data-theme=light] dialog .primary{background:var(--primary);color:#fff;border-color:var(--primary)}
html[data-theme=light] .skip{background:#147880;color:#fff}
html[data-theme=light] ::selection{background:#245bff30;color:#10233c}
@media(hover:hover) and (pointer:fine){html[data-theme=light] .award-logos img.gsvc-logo:hover{filter:none;opacity:1}html[data-theme=light] .award-logos .brand-swap:hover .brand-white,html[data-theme=light] .partner-logos>div:hover .brand-white{opacity:0}}
@media(max-width:720px){html[data-theme=light] .lab-image:after{background:linear-gradient(90deg,#edf4fcf5,#edf4fcd9)}}
@media(max-width:450px){.header-inner.shell{gap:5px;padding-inline:12px 8px}.header .brand img{width:94px}.nav-shortcuts{gap:5px}.nav-shortcuts .button{padding-inline:9px;font-size:.8125rem}.header .menu-toggle{width:34px;padding-left:4px}.header .theme-toggle{width:32px}.header .theme-toggle svg{width:19px;height:19px}}
@media(max-width:360px){.header-inner.shell{gap:4px;padding-inline:10px 6px}.header .brand img{width:76px}.nav-shortcuts .button{padding-inline:7px;font-size:.75rem}.nav-shortcuts{gap:4px}.header .menu-toggle{width:30px}.header .theme-toggle{width:30px}}
@media(forced-colors:active){html[data-theme=light] :is(.hero h1,h2) .text-gradient{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}}

/* Stronger light glass, shared by home and About. */
html[data-theme=light]{--glass:radial-gradient(ellipse at 0% 0%,#ffffffed,transparent 62%),radial-gradient(ellipse at 12% 110%,#84d6dc48,transparent 55%),radial-gradient(ellipse at 105% 100%,#739aff40,transparent 58%),linear-gradient(135deg,#ffffffa3,#e8f1ff70);--control:linear-gradient(135deg,#fffffff0,#ffffff75 46%,#dce9ff88);--overlay:linear-gradient(135deg,#ffffffeb,#edf4ffdf 60%,#e5f6f5e6);--glass-shadow:inset 0 1px 1px #fff,inset 0 -1px 2px #aac0dc70,0 12px 36px #244e7e14,0 2px 6px #244e7e08}
html[data-theme=light] body{background-image:radial-gradient(ellipse 65vw 750px at 0% 22%,#84d6dc16,transparent 75%),radial-gradient(ellipse 70vw 850px at 100% 65%,#739aff18,transparent 75%)}
html[data-theme=light] .header{background:linear-gradient(125deg,#ffffffb8,#e7f1ff80 60%,#f4f8ff99);border:1px solid #ffffffde;box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #a4bddd70,0 0 0 1px #a5bdd547,0 12px 40px #244e7e24;backdrop-filter:blur(28px) saturate(1.65);-webkit-backdrop-filter:blur(28px) saturate(1.65)}
html[data-theme=light] .header nav{background:var(--overlay);border-color:#fff;box-shadow:var(--glass-shadow);backdrop-filter:blur(30px) saturate(1.5);-webkit-backdrop-filter:blur(30px) saturate(1.5)}
html[data-theme=light] :is(.stats>div,.quote-section,.is-interactive .solution-card,.award-card,.partner-logos>div,.team-photo){background:var(--glass);border-color:#b1c6df8c;box-shadow:var(--glass-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
html[data-theme=light] :is(.nav-contact,.theme-toggle:hover,.solution-tabs,.lab-copy .button){background:var(--control);border-color:#ffffffd9;box-shadow:inset 0 1px 2px #fff,inset 0 -1px 1px #a3b9d34d,0 3px 10px #244e7e0f}
html[data-theme=light] .solution-tabs button[aria-selected=true]{background:linear-gradient(130deg,#fff,#f5faffbd);box-shadow:inset 0 1px 1px #fff,0 3px 12px #244e7e1a}
html[data-theme=light] :is(.lab-panel,.contact-panel){border-color:#b1c6df8c;box-shadow:var(--glass-shadow)}
html[data-theme=light] .contact-panel{background:radial-gradient(ellipse at 10% 120%,#84d6dc70,transparent 52%),radial-gradient(ellipse at 90% 120%,#8fb0ff80,transparent 55%),linear-gradient(145deg,#ffffffd9,#edf3fc8c);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
html[data-theme=light] dialog{background:var(--overlay);border-color:#ffffffd9;box-shadow:var(--glass-shadow),0 24px 80px #10233c30;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}
html[data-theme=light] .header nav{background:linear-gradient(135deg,#e3ebf6fc,#dce7f4fc 60%,#e4e9f5fc);backdrop-filter:blur(32px) saturate(1.15);-webkit-backdrop-filter:blur(32px) saturate(1.15)}
html[data-theme=light] .header nav>a,html[data-theme=light] .nav-solutions summary,html[data-theme=light] .menu-search{color:#30465f}

/* JC follows the same monochrome treatment as the other press logos. */
.award-photo img.award-photo-updated{object-position:60% 25%}
@media(max-width:720px){.award-photo img.award-photo-updated{object-fit:contain;object-position:center;background:var(--surface)}}
.media-grid img.jc-logo,html[data-theme=light] .media-grid img.jc-logo{max-width:180px;max-height:52px;height:auto;object-fit:contain;border-radius:3px}
@media(max-width:720px){.media-grid img.jc-logo,html[data-theme=light] .media-grid img.jc-logo{max-width:135px;max-height:40px}}

/* Cart stays visible outside the expanded menu in both themes. */
.header .header-cart,.header .theme-toggle{display:grid;place-items:center;width:40px;height:40px;min-width:40px;flex:0 0 40px;padding:0;box-sizing:border-box;border-radius:50%;transform:none}
.header .header-cart svg,.header .theme-toggle svg{display:block;width:22px;height:22px;margin:0}
.header .theme-toggle .theme-moon{display:none}
html[data-theme=light] .header .theme-toggle .theme-sun{display:none}
html[data-theme=light] .header .theme-toggle .theme-moon{display:block}
@media(max-width:720px){.header .header-cart,.header .theme-toggle{width:36px;height:36px;min-width:36px;flex-basis:36px}.header .header-cart svg,.header .theme-toggle svg{width:20px;height:20px}.header .header-cart:is(:hover,:active,:focus-visible),.header .theme-toggle:is(:hover,:active,:focus-visible){transform:none;box-shadow:inset 0 0 0 1px #a9bed44d;background:#a9bed41a}html[data-theme=light] .header .header-cart:is(:hover,:active,:focus-visible),html[data-theme=light] .header .theme-toggle:is(:hover,:active,:focus-visible){background:#c6daed80;box-shadow:inset 0 0 0 1px #90abc94d}}
@media(max-width:360px){.header .header-cart,.header .theme-toggle{width:32px;height:32px;min-width:32px;flex-basis:32px}}
.header-cart{order:1;color:var(--text);width:40px;height:42px;border-radius:50%}
html[data-theme=light] .header-cart:hover{background:var(--control);border-color:#ffffffd9}
@media(max-width:450px){.header-cart{width:32px}.header-cart svg{width:19px;height:19px}.header-inner.shell{gap:4px}.nav-shortcuts .button{padding-inline:7px}}
@media(max-width:360px){.header-cart{width:28px}.header-inner.shell{gap:3px}}

.media-grid a>.jc-wordmark{position:static;font-size:1.25rem;font-weight:600;line-height:1.2;letter-spacing:-.045em;color:#fff;opacity:.8;max-width:220px}
html[data-theme=light] .media-grid a>.jc-wordmark{color:#304159;opacity:.9}
@media(max-width:720px){.media-grid a>.jc-wordmark{font-size:1.0625rem;max-width:150px}}

.award-logos .gsvc-wordmark{display:flex;flex-direction:column;justify-content:center;flex:0 1 210px;color:var(--text);line-height:1.15;white-space:nowrap;letter-spacing:-.035em}
.gsvc-wordmark strong{font-size:1.35rem;font-weight:700}.gsvc-wordmark>span{font-size:1rem}
@media(max-width:720px){.award-logos .gsvc-wordmark{flex-basis:auto}.gsvc-wordmark strong{font-size:.95rem}.gsvc-wordmark>span{font-size:.6875rem}}

html.contact-modal-open{overflow:hidden}#contact-dialog{width:min(760px,calc(100% - 24px));max-width:760px;max-height:calc(100dvh - 24px);padding:24px;border-radius:24px;overflow:auto}#contact-dialog .dialog-heading h2{font-size:1.75rem}#contact-dialog .contact-frame{display:block;width:100%;height:min(660px,calc(100dvh - 170px));min-height:320px;border:0;border-radius:14px;background:#fff}.contact-fallback{font-size:.8125rem;color:var(--muted);margin:16px 0 0}.contact-fallback a{text-decoration:underline}#contact-dialog::backdrop{background:#030918b3;backdrop-filter:blur(10px)}@media(max-width:450px){#contact-dialog{padding:16px}#contact-dialog .dialog-heading h2{font-size:1.4rem}}

.contact-form{display:grid;gap:16px}.contact-form label{display:grid;gap:7px;font-size:.875rem;color:var(--text)}.contact-form input,.contact-form textarea{width:100%;padding:15px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;min-height:50px}.contact-form textarea{resize:vertical;min-height:115px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted)}.contact-form :is(input,textarea):focus{outline:2px solid var(--cyan);outline-offset:2px}.contact-form .button{justify-self:start}.contact-form .button:disabled{opacity:.55;cursor:not-allowed}.contact-status{font-size:.8125rem;color:var(--muted);margin:0;line-height:1.5}.contact-fallback{margin-top:12px}html[data-theme=light] .contact-form input,html[data-theme=light] .contact-form textarea{background:#ffffffd9;border-color:#b1c6df}
@media(min-width:721px){.quote-break{display:none}}
.eleva-product-image{background:linear-gradient(135deg,#e9eef3,#d9e6ef)!important}.eleva-product-image>img{object-fit:contain;mix-blend-mode:normal;padding:22px;filter:drop-shadow(0 12px 18px #17263a28)}html[data-theme=light] .eleva-product-image{background:linear-gradient(135deg,#edf5fb,#d8ecf1)!important}

/* Aligned GSVC wordmark, with the original brand blue on hover. */
.award-logos .gsvc-wordmark{width:220px;flex:0 1 220px;transition:color 180ms ease;cursor:default}.gsvc-wordmark strong,.gsvc-wordmark>span{display:block;width:100%;text-align:justify;text-align-last:justify}.gsvc-wordmark strong{font-size:1.35rem}.gsvc-wordmark>span{font-size:1rem}.award-logos .gsvc-wordmark:hover{color:#062b48}
@media(max-width:720px){.award-logos .gsvc-wordmark{width:150px;flex:0 1 150px}.gsvc-wordmark strong{font-size:.95rem}.gsvc-wordmark>span{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){.award-logos .gsvc-wordmark{transition:none}}

/* Compact GSVC lettering: use normal word spacing instead of justification. */
.award-logos .gsvc-wordmark{width:220px;flex:0 1 220px;gap:3px;letter-spacing:-.025em}
.gsvc-wordmark strong,.gsvc-wordmark>span{text-align:center;text-align-last:center;word-spacing:normal;line-height:1.1}
.gsvc-wordmark strong{font-size:1.35rem}.gsvc-wordmark>span{font-size:1rem}
html:not([data-theme=light]) .award-logos .gsvc-wordmark{color:#edf5ff}
html[data-theme=light] .award-logos .gsvc-wordmark{color:#17364f}
.award-logos .gsvc-wordmark strong,.award-logos .gsvc-wordmark>span{color:inherit;-webkit-text-fill-color:currentColor;filter:none}
html:not([data-theme=light]) .award-logos .gsvc-wordmark:hover{color:#76afea}
html[data-theme=light] .award-logos .gsvc-wordmark:hover{color:#1760a5}
@media(max-width:720px){.award-logos .gsvc-wordmark{width:150px;flex:0 1 150px;gap:2px}.gsvc-wordmark strong{font-size:.95rem}.gsvc-wordmark>span{font-size:.7rem}}

/* Shared desktop opening: editorial copy beside the image or slideshow. */
@media(min-width:901px){.hero .hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:64px;max-width:1328px;margin-inline:auto;padding-block:24px 48px}.hero .hero-copy{text-align:left;min-width:0}.hero .hero-copy h1{margin:0;font-size:clamp(2.6rem,3.8vw,4.25rem);line-height:1.12}.hero .hero-buttons{justify-content:flex-start}.hero .hero-visual{width:100%;height:auto;aspect-ratio:1.1;border-radius:24px;min-width:0}.about-hero .about-lead{margin:24px 0 0;text-wrap:pretty}.about-hero .about-hero-image{width:100%;margin:0}.hero .hero-visual .visual-caption{min-width:0;left:20px;right:20px;bottom:20px;font-size:.9375rem}.about-hero .hero-bottom{border-top:1px solid var(--border);padding:26px 0 30px}}
@media(min-width:901px) and (max-width:1100px){.hero .hero-grid{gap:32px}.hero .hero-copy h1{font-size:clamp(2.4rem,3.8vw,3.3rem)}}

/* Image captions use one separate band across pages. */
.hero .hero-visual{height:auto;aspect-ratio:auto;border-radius:24px;border-bottom:1px solid var(--border)}.home-slide-frame{position:relative;aspect-ratio:1.1;overflow:hidden}.home-slide-frame>.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1200ms ease}.home-slide-frame>.hero-slide.is-current{opacity:1}.hero .lab-hero-photo{aspect-ratio:auto}.hero .lab-hero-photo>img{height:auto;aspect-ratio:1.1;object-fit:cover}.hero .lab-hero-photo:after{display:none}.hero .lab-hero-photo figcaption,.hero .hero-caption,.about-hero-image:has(.about-slide-frame) figcaption{position:static;display:block;margin:0;padding:18px 24px;min-height:60px;font-family:"IBM Plex Mono",monospace;font-size:.8125rem;line-height:1.6;letter-spacing:.06em;text-transform:uppercase;color:#c7dfe7;background:#0b1423;border-top:1px solid #b8cbef30}html[data-theme=light] .hero .lab-hero-photo figcaption,html[data-theme=light] .hero .hero-caption,html[data-theme=light] .about-hero-image:has(.about-slide-frame) figcaption{color:#304b63;background:#e7f0f8;border-top-color:#b1c6df8c}@media(max-width:720px){.home-slide-frame{aspect-ratio:16/9}.hero .lab-hero-photo>img{aspect-ratio:16/10}.hero .lab-hero-photo figcaption,.hero .hero-caption,.about-hero-image:has(.about-slide-frame) figcaption{padding:16px 24px}}@media(prefers-reduced-motion:reduce){.home-slide-frame>.hero-slide{transition:none}}
.header-cart{position:relative}.cart-badge{position:absolute;right:-3px;top:-2px;min-width:18px;height:18px;padding:0 3px;border-radius:99px;background:#245bff;color:#fff;font:600 10px/18px Manrope,sans-serif;text-align:center}.cart-badge[hidden]{display:none}.cart-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:80;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:0 8px 40px #0004;padding:16px 24px;border-radius:16px;max-width:calc(100% - 32px);width:max-content;font-size:.9375rem}.cart-toast a{color:var(--cyan);text-decoration:underline}.cart-toast[hidden]{display:none}.shop-detail{font-size:.875rem;color:var(--muted);text-align:center;margin-top:14px;text-decoration:underline}
html[data-theme=light] .hero.shell{background:radial-gradient(ellipse at 4% 98%,#68d6e070,transparent 52%),radial-gradient(ellipse at 95% 90%,#80a7ff85,transparent 58%),#edf4fc}
html[data-theme=light] .hero.shell:before{inset:-32%;background:radial-gradient(ellipse at 15% 78%,#54cbded9,transparent 37%),radial-gradient(ellipse at 86% 82%,#6295f7d9,transparent 42%),radial-gradient(ellipse at 50% 94%,#94b6ff99,transparent 40%);opacity:.7}
@keyframes light-hero-flow{0%,100%{transform:translate3d(-14%,8%,0) scale(1.02);opacity:.6}50%{transform:translate3d(17%,-3%,0) scale(1.14);opacity:.85}}
@media(prefers-reduced-motion:no-preference){html[data-theme=light] .hero.shell:before{animation:light-hero-flow 7s ease-in-out infinite}}
@media(prefers-reduced-motion:reduce){html[data-theme=light] .hero.shell:before{animation:none;opacity:.65}}
@media(min-width:721px){.solution-tabs button{flex:1 1 0;padding-inline:14px}}

.hero .hero-visual .hero-notification{position:absolute;display:flex;align-items:center;gap:16px;left:24px;right:24px;bottom:24px;width:auto;max-width:440px;min-width:0;min-height:84px;padding:18px 20px;border:1px solid #a9bed447;border-radius:18px;background:linear-gradient(135deg,#172738ee,#0c1728e8);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 12px 30px #0003,inset 0 1px 0 #ffffff20;font-size:1rem;line-height:1.5;color:#c6d2e0;z-index:3;transform-origin:right bottom}.hero-notification img{width:40px;height:34px;flex-shrink:0}.hero-notification strong{font-weight:600;color:#f4f7ff}html[data-theme=light] .hero .hero-visual .hero-notification{background:linear-gradient(135deg,#ffffffeb,#e3effbe8);border-color:#fff;box-shadow:0 12px 34px #10345b26,inset 0 1px 0 #fff;color:#405874}html[data-theme=light] .hero-notification strong{color:#10233c}@keyframes notification-arrive{0%{opacity:0;transform:translateY(28px) scale(.94)}70%{opacity:1;transform:translateY(-3px) scale(1.015)}100%{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:no-preference){.hero-notification.notification-arrived{animation:notification-arrive 750ms 180ms cubic-bezier(.2,.8,.2,1) both}}@media(max-width:720px){.hero .hero-visual .hero-notification{left:12px;right:12px;bottom:12px;padding:12px 14px;min-height:70px;gap:12px;font-size:.875rem;border-radius:14px}.hero-notification img{width:32px;height:28px}}


/* Theme switch feedback: current theme marker plus hover and keyboard tooltip. */
.header .theme-toggle{position:relative;isolation:isolate}
.header .theme-toggle::before{content:'';position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 2px var(--bg);pointer-events:none}
.header .theme-toggle::after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);left:50%;z-index:70;padding:5px 8px;border:1px solid #fff3;border-radius:4px;background:#111827;color:#fff;font:500 12px/1.3 Manrope,'Segoe UI',sans-serif;white-space:nowrap;box-shadow:0 4px 14px #0003;opacity:0;transform:translate(-50%,-3px);pointer-events:none;transition:opacity 140ms ease,transform 140ms ease}
.header .theme-toggle:is(:hover,:focus-visible)::after{opacity:1;transform:translate(-50%,0)}
.header .theme-toggle:is(:hover,:focus-visible,:active){background:#a9bed41a;border-color:#a9bed44d;box-shadow:inset 0 0 0 1px #a9bed433}
html[data-theme=light] .header .theme-toggle:is(:hover,:focus-visible,:active){background:linear-gradient(135deg,#fff,#e6f0ff);border-color:#90abc966;box-shadow:inset 0 1px 2px #fff,inset 0 -1px 1px #a3b9d34d,0 3px 12px #244e7e18}
@media(prefers-reduced-motion:reduce){.header .theme-toggle::after{transition:none}}

/* Keep the awards row inside the page width on tablets and narrow phones. */
@media(max-width:900px){.award-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-items:center;gap:24px;padding:28px 24px}.award-logos>*{min-width:0;max-width:100%}.award-logos img{width:100%;max-width:130px;height:45px}.award-logos .gsvc-wordmark{width:100%;max-width:170px;flex:none;white-space:normal}}
@media(max-width:720px){.award-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:24px 18px}.award-logos img{max-width:130px}.award-logos .gsvc-wordmark{width:100%;max-width:150px;flex:none}}
