:root{color-scheme:light;--ink:#172529;--muted:#5d6b6e;--teal:#087b89;--line:#dce5e5;--paper:#fff;--wash:#f5f9f9;font-family:Arial,Helvetica,sans-serif;font-synthesis:none;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}
body{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:6px}
[hidden]{display:none!important}
.page{max-width:1400px;margin:auto;padding:0 64px}
.skip-link{position:absolute;top:12px;left:12px;padding:12px 18px;background:var(--ink);color:white;z-index:10;transform:translateY(-200%)}
.skip-link:focus{transform:translateY(0)}
.header{height:136px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:block;width:190px;line-height:0}
.brand img{display:block;width:100%;height:auto}
.languages{display:flex;gap:6px;align-items:center;color:#7b888a;font-size:12px;letter-spacing:.06em}
.languages button{cursor:pointer;border:0;background:none;color:var(--muted);font-size:12px;font-weight:700;min-width:44px;min-height:44px;padding:10px}
.languages button[aria-pressed=true]{color:var(--teal)}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 30%;gap:40px;align-items:center;padding:98px 0 100px}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;line-height:1.6;text-transform:uppercase;letter-spacing:.16em;font-weight:700;margin:0 0 28px}
.status-dot,.small-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--teal)}
h1{position:relative;z-index:1;font-size:clamp(46px,6.2vw,88px);line-height:1.02;letter-spacing:-.065em;font-weight:700;margin:0 0 32px}
h1 span{display:block}
.accent{color:var(--teal)}
.intro{max-width:410px;color:var(--muted);font-size:17px;line-height:1.7;margin:0 0 30px}
.primary-link{display:inline-flex;gap:44px;align-items:center;min-height:48px;padding:13px 20px;background:var(--ink);color:#fff;font-size:13px;font-weight:700;transition:background .2s ease}
.primary-link:hover{background:var(--teal)}
.primary-link>span:last-child{font-size:20px;font-weight:400}
.schematic{align-self:center;position:relative;isolation:isolate;aspect-ratio:1/1.12;max-height:370px;background:var(--wash);overflow:hidden}
.schematic-grid{position:absolute;inset:0;background-image:linear-gradient(#e4eded 1px,transparent 1px),linear-gradient(90deg,#e4eded 1px,transparent 1px);background-size:24px 24px;opacity:.6}
.corner{position:absolute;width:12px;height:12px;border-color:#8aa8aa;border-style:solid;z-index:2}
.top-left{top:0;left:0;border-width:1px 0 0 1px}.top-right{top:0;right:0;border-width:1px 1px 0 0}.bottom-left{bottom:0;left:0;border-width:0 0 1px 1px}.bottom-right{bottom:0;right:0;border-width:0 1px 1px 0}
.diagram-label{position:absolute;top:20px;left:18px;font:8px/1.6 Consolas,monospace;letter-spacing:.07em;color:#527175}
.orbit{position:absolute;left:50%;top:50%;border:1px solid #a8c3c5;border-radius:50%;transform:translate(-50%,-50%);aspect-ratio:1}
.orbit-outer{width:70%}.orbit-inner{width:48%;border-color:#c9dcdc}
.axis{position:absolute;background:#c9dcdc;left:50%;top:50%;transform:translate(-50%,-50%)}
.axis-horizontal{height:1px;width:88%}.axis-vertical{width:1px;height:65%}
.node{position:absolute;left:50%;width:7px;height:7px;border:1px solid var(--teal);background:var(--wash);transform:translate(-50%,-50%);border-radius:50%}
.node-top{top:19%}.node-bottom{top:81%}
.bolt{position:absolute;left:50%;top:50%;height:44%;width:29%;background:var(--teal);transform:translate(-50%,-50%);clip-path:polygon(88% 0,50% 42%,87% 42%,8% 100%,40% 56%,7% 56%)}
.diagram-foot{position:absolute;left:18px;bottom:20px;color:#527175;font:9px/1.6 Consolas,monospace;letter-spacing:.06em;display:flex;align-items:center;gap:7px}
.small-dot{width:5px;height:5px}
.contact{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:32px;align-items:center;padding:40px 0}
.contact-heading .eyebrow{font-size:9px;letter-spacing:.12em;color:var(--muted);margin-bottom:8px}
h2{margin:0;font-size:26px;letter-spacing:-.04em;line-height:1.2}
.contact-link{display:flex;flex-direction:column;gap:13px;padding:8px 0;min-width:0}
.contact-label{font-size:11px;color:var(--muted)}
.contact-address{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:600;transition:color .2s}
.contact-address>span{color:var(--teal);font-size:19px;font-weight:400}
.contact-link:hover .contact-address{color:var(--teal)}
.footer{display:flex;justify-content:space-between;gap:20px;padding:28px 0 34px;font-size:10px;line-height:1.5;color:var(--muted)}
@media(min-width:1400px){.hero{padding-top:112px;padding-bottom:114px}}
@media(max-width:1050px){.page{padding:0 40px}.hero{grid-template-columns:minmax(0,1fr) 27%;gap:24px;padding:80px 0}.diagram-label{max-width:120px;font-size:7px}.diagram-foot{font-size:7px}.contact{grid-template-columns:1fr 1fr;gap:28px}.contact-heading{grid-column:1/-1}.contact-address{justify-content:flex-start;gap:16px}}
@media(max-width:700px){.page{padding:0 24px}.header{height:105px}.brand{width:150px}.hero{display:block;padding:60px 0 52px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:25px}h1{font-size:clamp(32px,8.1vw,57px);letter-spacing:-.055em;margin-bottom:24px}.intro{font-size:15px;max-width:350px;margin-bottom:25px}.schematic{display:none}.contact{grid-template-columns:1fr;gap:22px;padding:30px 0}.contact-heading{margin-bottom:3px}h2{font-size:24px}.contact-link{gap:8px;padding:4px 0}.contact-address{font-size:14px;justify-content:space-between}.footer{padding:24px 0 28px;font-size:9px;gap:12px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
