/* Shared day/night control. The page's theme is set before the first paint. */
/* Keep the loading slot empty; reveal the sphere only after its first real frame. */
.sculpture-stage{visibility:hidden}
.sculpture-stage.ready,.sculpture-stage[data-render-mode=fallback]{visibility:visible}
.sculpture-stage[data-render-mode=fallback] .sculpture-fallback{visibility:visible}
.theme-toggle{width:70px;height:36px;flex:0 0 70px;display:flex;align-items:center;justify-content:space-around;position:relative;border:1px solid #ffffff25;border-radius:25px;background:#ffffff06;color:#9c91ac;isolation:isolate;cursor:pointer}
.theme-toggle:before{content:'';position:absolute;left:3px;top:3px;width:28px;height:28px;border-radius:50%;background:#b9a3db2b;transform:translateX(34px);transition:transform .25s,background .25s;z-index:-1}
.theme-toggle svg{width:17px;height:17px}.theme-toggle .moon-icon{color:#eee4ff}.theme-toggle:focus-visible{outline:2px solid #baa0de;outline-offset:5px}
.sculpture-stage{isolation:isolate;opacity:1}.sculpture-stage:before{content:'';position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,#7f50a71a,transparent 70%);z-index:-1}.sculpture-fallback{inset:12%;border:1px solid #a688cc42;border-radius:50%;transform:none;background:radial-gradient(circle at 30% 30%,#60427a20,#1c11252b);box-shadow:inset -15px -10px 55px #9970bd16,0 0 60px #9970bd12;overflow:hidden}.sculpture-fallback i{border:1px solid #ac8bcc40;box-shadow:none;inset:5% 27%;border-radius:50%;transform:rotate(25deg)}.sculpture-fallback i:nth-child(2){inset:27% 5%;border:1px solid #ac8bcc40;transform:rotate(-20deg)}.sculpture-fallback i:nth-child(3){inset:5% 12%;border:1px solid #ac8bcc40;transform:rotate(65deg)}

/* Light mode: polished pale surfaces with readable ink and restrained purple. */
:root[data-theme=light]{color-scheme:light;--color-ink:#f7f4fb;--color-ink-2:#fcfaff;--color-paper:#292332;--color-paper-2:#eeeaf5;--color-slate:#655b71;--color-line:#dcd5e6;--color-brand:#705c9b;--color-brand-dark:#594477;--color-accent:#705591}
[data-theme=light] body{background:#f8f6fc;color:#292332}
[data-theme=light] .theme-toggle{background:linear-gradient(#fff,#eae4f3);border-color:#cfc3df;color:#82708f;box-shadow:inset 0 1px 0 #fff,0 3px 10px #5a3e7210}
[data-theme=light] .theme-toggle:before{transform:translateX(0);background:#fff;box-shadow:0 1px 5px #523c6c25}
[data-theme=light] .theme-toggle .sun-icon{color:#956328}[data-theme=light] .theme-toggle .moon-icon{color:#7b6d88}
[data-theme=light] .site-header{background:#faf8fce8;border-bottom:1px solid #ddd5e660;box-shadow:0 3px 30px #7d5d9310}
[data-theme=light] :is(header,footer) svg path[fill="#FFFFFF"]{fill:#2d2438}
[data-theme=light] .desktop-navigation,[data-theme=light] .header-contact{color:#3c304a}
[data-theme=light] .header-contact{border-color:#cfc5dd}
[data-theme=light] .nav-dropdown,[data-theme=light] .mobile-navigation{background:linear-gradient(145deg,#fff,#f1ebf7);border-color:#d8cfe4;box-shadow:0 15px 45px #69508020,inset 0 1px 0 #fff}
[data-theme=light] .nav-dropdown a:hover{background:#9271ae10;color:#4e356a}
[data-theme=light] .menu-toggle span{background:#40304f}
[data-theme=light] .mobile-group>span,[data-theme=light] .nav-group summary span{color:#756183}
[data-theme=light] a:hover{color:#5c3e7a}
[data-theme=light] .cinematic-hero{background:radial-gradient(ellipse at 83% 40%,#d8c6ec62,transparent 48%),linear-gradient(135deg,#fdfbff,#f1ebf8)}
[data-theme=light] .hero-copy h1{color:#30273b;-webkit-text-fill-color:currentColor}
[data-theme=light] .hero-copy>.eyebrow{color:#725c86}
[data-theme=light] .hero-copy>p:not(.eyebrow){color:#64566f}
[data-theme=light] .cinematic-hero>.relative span{color:#66566f}
[data-theme=light] .sculpture-stage:before{background:radial-gradient(circle,#d6c0e94a,transparent 70%)}
[data-theme=light] .sculpture-fallback{border-color:#8561a442;background:radial-gradient(circle at 30% 30%,#fff9,#d7c3ea45);box-shadow:inset -15px -10px 55px #9970bd16,0 0 60px #9970bd12}
[data-theme=light] .sculpture-fallback i{border-color:#8561a442}
[data-theme=light] .text-ink{color:#292332}[data-theme=light] .text-slate{color:#655b71}
[data-theme=light] :is(.text-brand,.text-brand-dark,.eyebrow){color:#705591}
[data-theme=light] [class*="text-paper/"]{color:#655b71}
[data-theme=light] [class*="text-slate/"]{color:#655b71}
[data-theme=light] :is(.bg-white,.bg-ink,.bg-ink-2){background:linear-gradient(140deg,#fff,#f5f1fa);box-shadow:inset 0 1px 0 #fff}
[data-theme=light] .bg-paper{background:#f8f6fc}
[data-theme=light] .bg-paper-2{background:linear-gradient(125deg,#f0ebf7,#f9f6fd)}
[data-theme=light] [class*="bg-white/"]{background:#ffffffb8}
[data-theme=light] [class*="border-white/"]{border-color:#d7cde1}
[data-theme=light] :is(.border-line,.border-ink){border-color:#d7cde1}
[data-theme=light] section{border-color:#d7cde180!important}
[data-theme=light] .bg-brand{background:linear-gradient(135deg,#7f65a7,#6b5292);color:#fff!important;border:1px solid #ffffff45;box-shadow:inset 0 1px 0 #ffffff60,0 5px 18px #77539925}
[data-theme=light] .bg-brand:hover{background:#745796!important;color:#fff!important}
[data-theme=light] .live-section{background:linear-gradient(#f5f0fa,#faf8fd)}
[data-theme=light] .operations-window{background:linear-gradient(140deg,#ffffffed,#f9f5ffdd);border-color:#d8cee4;box-shadow:0 20px 70px #79568e16,inset 0 1px 0 #fff}
[data-theme=light] .operations-toolbar{background:linear-gradient(#fff,#f0eaf8);border-color:#ded5e9}
[data-theme=light] .operations-toolbar>span:last-child{color:#685471;border-color:#cfc0dd}
[data-theme=light] .window-dots i{background:#c9bbd7}[data-theme=light] .window-dots i:nth-child(2){background:#ab92c0}[data-theme=light] .window-dots i:nth-child(3){background:#87699f}
[data-theme=light] .connected-systems{border-color:#e0d8e9;background:#f5f0fa60}
[data-theme=light] .system-node svg{color:#795791}
[data-theme=light] .system-node p:last-child{color:#75637f}
[data-theme=light] .system-item:nth-child(3) .system-node{background:#a18ab414;border-color:#b9a3cb66}
[data-theme=light] .activity-event{border-color:#e1d9eb}
[data-theme=light] .event-time{color:#776580}[data-theme=light] .event-system{color:#76548c}[data-theme=light] .event-detail{color:#382b45}
[data-theme=light] .activity-event>svg{color:#42705a}
[data-theme=light] .approval-event{background:linear-gradient(130deg,#f4edfbe6,#fff);border-color:#b7a0c955;box-shadow:inset 0 1px 0 #fff,0 4px 16px #79568e08}
[data-theme=light] .approval-heading>span{color:#76548c}
[data-theme=light] .approval-heading>span:last-child{border-color:#c8b7d7;background:#fff9}
[data-theme=light] .approval-context>span:first-child{color:#74617f}
[data-theme=light] .approval-context>span:last-child>span{border-color:#ccbdd9;color:#5d476e}
[data-theme=light] .approval-context>span:last-child>span:last-child{background:#78608f;color:#fff}
[data-theme=light] .service-row{border-color:#dad0e4}
[data-theme=light] .service-row>p{color:#6b5a77}
[data-theme=light] .service-row>div span{color:#76558b}
[data-theme=light] .service-row>span:last-child{color:#70528b}
[data-theme=light] .service-row.active,[data-theme=light] .service-row:hover{background:linear-gradient(90deg,#bca2d112,transparent)}
[data-theme=light] :is(.safety-principles,.principle){border-color:#d9cee5}
[data-theme=light] .principle>p:last-of-type{color:#6b5a77}
[data-theme=light] .process-step{border-color:#bcacca}
[data-theme=light] :is(input,select,textarea){background:#ffffffdb!important;border-color:#cbbcd8!important;color:#392b45!important;box-shadow:inset 0 1px 3px #79568e08,0 1px 0 #fff}
[data-theme=light] input::placeholder,[data-theme=light] textarea::placeholder{color:#7d6a89!important}
[data-theme=light] select option{background:#fff}
[data-theme=light] :is(.delivery-note,.form-status){color:#75617f}
[data-theme=light] .form-status a{color:#654181}
[data-theme=light] footer{background:#f4eff9!important;border-color:#d9cee5}
[data-theme=light] .prose{color:#63526f}[data-theme=light] .prose :is(h1,h2,h3,strong){color:#30233b}[data-theme=light] .prose a{color:#71488d}
[data-theme=light] [class~="bg-[#e4f1f2]"]{background:linear-gradient(125deg,#fff,#e9ddf5);border-color:#cdbadc;box-shadow:inset 0 1px 0 #fff,0 15px 40px #79568e0c}
[data-theme=light] [class~="text-[#9a6514]"]{color:#77592f}
@media(max-width:1100px){.header-inner{gap:20px}.desktop-navigation{gap:21px}}
@media(max-width:650px){.header-inner{gap:14px}.theme-toggle{width:64px;flex-basis:64px;height:34px}.theme-toggle:before{width:26px;height:26px;transform:translateX(30px)}.theme-toggle svg{width:16px;height:16px}.header-contact{font-size:13px}.header-contact span{display:none}.header-inner>a:first-child svg{width:108px!important}.menu-toggle{width:26px;flex:0 0 26px}}
/* Keep the primary contact link visible and easy to tap on narrow phones. */
.header-contact{white-space:nowrap;min-height:44px;align-items:center;flex-shrink:0;touch-action:manipulation}
@media(max-width:359px){.header-inner{gap:8px}.header-inner>a:first-child svg{width:100px!important}.header-contact{display:flex;font-size:13px}.theme-toggle{width:56px;flex-basis:56px;height:32px}.theme-toggle:before{width:24px;height:24px;transform:translateX(26px)}[data-theme=light] .theme-toggle:before{transform:translateX(0)}.menu-toggle{width:32px;flex-basis:32px;min-height:44px}}
@media(max-width:960px){.desktop-navigation{display:none}.menu-toggle{display:block}}

/* Keep the gold flow sphere in its own layout space beside the copy. */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,1fr);align-items:center;column-gap:clamp(26px,3.5vw,68px);row-gap:38px;padding-block:clamp(60px,7vh,110px)}
.hero-copy{max-width:none;min-width:0}.hero-copy h1{max-width:1100px}
.sculpture-stage{position:relative;inset:auto;width:100%;max-width:720px;height:auto;aspect-ratio:1;margin:0;transform:none;justify-self:center;align-self:center;min-width:0;touch-action:pan-y}
.sculpture-stage canvas{mask-image:radial-gradient(ellipse,#000 70%,transparent 98%);-webkit-mask-image:radial-gradient(ellipse,#000 70%,transparent 98%)}
.sculpture-stage:before{background:radial-gradient(circle,#d7a41609,transparent 68%)}
.sculpture-fallback{border-color:#d9b43140;background:radial-gradient(circle at 35% 30%,#b8911720,transparent 68%);box-shadow:inset -15px -10px 55px #c59a1410,0 0 60px #c59a1408}.sculpture-fallback i{border-color:#d9b43138}
@media(max-width:1100px){.hero-grid{grid-template-columns:minmax(0,1fr);min-height:0;padding-block:60px 36px;row-gap:36px}.hero-copy{max-width:850px}.hero-copy>p:not(.eyebrow){max-width:740px}.sculpture-stage{width:clamp(300px,50vw,480px);max-width:100%}}
@media(max-width:650px){.hero-grid{padding-top:42px;padding-bottom:34px;row-gap:30px}.sculpture-stage{width:clamp(250px,82vw,360px);max-width:100%}.hero-copy>.flex{margin-top:26px}}

/* Large closing wordmark: each letter catches the cursor, like the reference. */
.footer-wordmark{position:relative;isolation:isolate;display:flex;justify-content:center;align-items:flex-start;gap:.005em;width:100%;height:.88em;overflow:hidden;font-family:Jakarta,Arial,sans-serif;font-size:clamp(64px,20vw,780px);font-weight:700;letter-spacing:-.055em;line-height:1.1;margin-top:24px;padding-top:.055em;mask-image:linear-gradient(to bottom,#000 48%,#0008 75%,transparent 98%);-webkit-mask-image:linear-gradient(to bottom,#000 48%,#0008 75%,transparent 98%)}
footer .footer-wordmark .footer-letter{position:relative;display:inline-block;font-size:inherit!important;font-weight:inherit;line-height:inherit;color:#39323f;transition:color .5s,transform .5s,text-shadow .5s;cursor:default;z-index:1;user-select:none}
.footer-wordmark:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 170px 100px at var(--cursor-x,50%) var(--cursor-y,50%),#ad7eea14,transparent 80%);opacity:0;transition:opacity .4s;pointer-events:none}
.footer-wordmark.is-hovered:before{opacity:1}
footer .footer-wordmark .footer-letter:hover,footer .footer-wordmark .footer-letter.is-lit{color:#c8a4f2;transform:translateY(-.035em);text-shadow:0 0 .22em #a36ee740;transition-duration:.14s}
[data-theme=light] footer .footer-wordmark .footer-letter{color:#c5b9d2}
[data-theme=light] footer .footer-wordmark .footer-letter:hover,[data-theme=light] footer .footer-wordmark .footer-letter.is-lit{color:#785396;text-shadow:0 0 .22em #a677c525}
[data-theme=light] .footer-wordmark:before{background:radial-gradient(ellipse 170px 100px at var(--cursor-x,50%) var(--cursor-y,50%),#9670b714,transparent 80%)}
@media(max-width:650px){.footer-wordmark{margin-top:10px;height:.95em}footer .footer-wordmark .footer-letter{color:#655573}[data-theme=light] footer .footer-wordmark .footer-letter{color:#b7a2c7}}
@media(prefers-reduced-motion:reduce){footer .footer-wordmark .footer-letter:hover,footer .footer-wordmark .footer-letter.is-lit{transform:none}.footer-wordmark:before{display:none}}
