@font-face{font-family:Hanken;src:url('assets/hanken.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--paper:#ffffff;--ink:#242623;--muted:#666666;--pink:#e82b83;--line:#e5e5e5;--gutter:clamp(24px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Hanken,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img,svg{display:block}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--pink);outline-offset:7px}::selection{background:var(--pink);color:#fff}.wrap{width:min(100%,1600px);padding-inline:var(--gutter);margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;padding:12px 20px;background:var(--ink);color:var(--paper);z-index:50;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.site-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:104px;border-bottom:1px solid var(--line)}.brand{display:block;width:124px}.brand img{width:100%;height:auto;margin-block:-15px}.site-header nav,.site-footer nav{display:flex;gap:38px;font-size:15px}.site-header nav a,.site-footer nav a{display:flex;gap:16px;align-items:center}.site-header nav span,.site-footer nav span{font-size:17px}.header-contact{justify-self:end;font-size:15px;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--ink);padding-block:10px}.header-contact span{font-size:20px}.site-header a:hover,.site-footer a:hover{color:#a41655}
.hero{padding-top:72px}.hero-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin:0}.dot{width:6px;height:6px;border-radius:50%;background:var(--pink);flex:none}h1,h2,p{margin-top:0}h1{font-weight:400;font-size:clamp(56px,6.2vw,98px);line-height:.98;letter-spacing:-.065em;margin-bottom:0;margin-top:29px}h1 em,h2 em{font-style:normal;color:var(--muted)}.hero-description{font-size:20px;line-height:1.4;letter-spacing:-.025em;margin:0 3% 6px 0}.hero-description span{display:block;font-size:14px;color:var(--muted);line-height:1.6;letter-spacing:0;margin-top:20px}
.network{position:relative;margin-top:46px}.network-origin{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:2;background:var(--paper);width:192px;text-align:center;padding:0 14px 9px}.network-origin img{width:166px;height:72px;margin-top:-9px;margin-bottom:-14px}.network-origin>span{display:block;font-size:10px;color:var(--muted);letter-spacing:.02em}.network-lines{position:absolute;top:0;left:0;width:100%;height:260px;overflow:visible}.connection,.signal{fill:none;stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.connection-faint{stroke-dasharray:2 4;opacity:.65}.signal{stroke:var(--pink);stroke-width:1.6;stroke-dasharray:12 440;stroke-dashoffset:440;opacity:0}.junction{fill:var(--pink)}.satellite{fill:var(--paper);stroke:#999999;stroke-width:1}.directions{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,10vw,180px);padding-top:148px}.direction{display:block;min-width:0}.direction-art{height:184px;position:relative;display:flex;justify-content:center;align-items:center}.art-note{position:absolute;top:0;left:50%;transform:translateX(-50%);font-size:10px;line-height:1.4;color:var(--muted);white-space:nowrap;background:var(--paper);padding-inline:10px}.film-stack{position:relative;width:196px;height:113px;transform:rotate(-3deg);margin-top:15px}.frame{position:absolute;inset:0;border:1px solid #777777;background:#f4f4f4}.frame-back{transform:translate(-11px,-9px) rotate(-5deg);border-color:#b5b5b5}.frame-middle{transform:translate(9px,6px) rotate(6deg);border-color:#777777}.frame-front{overflow:hidden;border:0;box-shadow:0 7px 14px #24262310}.frame-front img{width:100%;height:100%;object-fit:cover}.frame-front:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,#24262355)}.frame-corner{position:absolute;z-index:1;width:12px;height:12px;border-color:#fff9}.corner-one{top:9px;left:9px;border-top:1px solid;border-left:1px solid}.corner-two{bottom:9px;right:9px;border-bottom:1px solid;border-right:1px solid}.film-play{position:absolute;top:calc(50% - 16px);left:calc(50% - 16px);font-size:22px;line-height:30px;text-align:center;width:32px;height:32px;border-radius:50%;color:#fff;border:1px solid #fff9;background:#24262322;z-index:1}.film-caption{position:absolute;bottom:9px;left:10px;font-size:6px;letter-spacing:.12em;color:#fff;z-index:1}.frame-dot{position:absolute;width:9px;height:9px;background:var(--pink);border:2px solid var(--paper);border-radius:50%;bottom:-13px;right:-16px}.film-timeline{display:flex;position:absolute;bottom:3px;left:50%;transform:translateX(-50%);gap:4px}.film-timeline i{width:10px;height:3px;background:#e5e5e5}.film-timeline i:nth-child(4){background:var(--pink)}
.workflow{position:relative;width:300px;height:150px;margin-top:27px}.workflow-lines{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#aaaaaa;stroke-width:1}.workflow-trace{stroke:var(--pink);stroke-width:1.5;stroke-dasharray:12 360;stroke-dashoffset:360;opacity:0}.workflow-node{position:absolute;display:flex;justify-content:center;align-items:center;background:#f4f4f4;border:1px solid #777777}.node-input{width:56px;height:56px;top:13px;left:20px;gap:4px;transform:rotate(-5deg)}.node-input i{width:4px;background:#777777;height:18px}.node-input i:nth-child(2){height:27px;background:var(--pink)}.node-input i:nth-child(3){height:12px}.node-core{width:56px;height:56px;top:81px;left:178px;border-radius:50%;background:var(--ink);border-color:var(--ink)}.core-cross{position:relative;width:22px;height:22px}.core-cross:before,.core-cross:after{content:"";position:absolute;top:50%;left:0;width:22px;height:1px;background:var(--paper);transform:rotate(45deg)}.core-cross:after{transform:rotate(-45deg)}.node-output{width:45px;height:45px;top:15px;left:244px;border-color:#b5b5b5;transform:rotate(4deg)}.node-output svg{width:23px;height:23px;fill:none;stroke:var(--ink);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.workflow-label{position:absolute;font-size:6px;letter-spacing:.14em;color:var(--muted)}.label-input{left:20px;top:82px}.label-output{left:247px;top:71px}.workflow-spark{position:absolute;top:103px;left:114px;width:8px;height:8px;border:2px solid var(--paper);border-radius:50%;background:var(--pink)}
.direction-content{padding-top:28px}.direction-content>.eyebrow{color:var(--muted);font-size:10px}.direction-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:17px 0 17px;border-bottom:1px solid var(--line);padding-bottom:21px}.direction-heading h2{font-size:clamp(35px,3.4vw,53px);font-weight:400;line-height:1;letter-spacing:-.05em;margin:0}.direction-heading h2>span{color:var(--pink)}.route-arrow{width:47px;height:47px;border:1px solid #b5b5b5;border-radius:50%;display:grid;place-content:center;font-size:25px;flex:none;transition:background .25s,color .25s,transform .25s,border-color .25s}.direction-content>p:not(.eyebrow){font-size:15px;line-height:1.6;color:var(--muted);margin-bottom:24px}.route-label{font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:35px;padding-bottom:5px;border-bottom:1px solid var(--ink)}.route-label span{font-size:17px}.direction:hover .route-arrow,.direction:focus-visible .route-arrow{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:rotate(45deg)}.direction:hover .route-label,.direction:focus-visible .route-label{color:#a41655;border-color:#a41655}.direction:hover .frame-front img{filter:saturate(1.14)}.network-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:53px;padding:20px 0 24px;color:var(--muted);font-size:11px}.motion-toggle{display:flex;align-items:center;justify-content:center;gap:8px;background:none;border:0;padding:10px 0 10px 14px;cursor:pointer;font-size:11px;min-height:44px;flex:none}.motion-toggle[hidden]{display:none}.motion-icon{width:9px;height:10px;border-left:2px solid currentColor;border-right:2px solid currentColor}.motion-toggle[data-paused="true"] .motion-icon{border:0;border-left:8px solid currentColor;border-block:5px solid transparent;width:8px;height:10px}.motion-toggle:hover{color:var(--ink)}
.contact{margin-top:34px;background:var(--ink);color:var(--paper);padding-block:89px 90px}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:12%}.contact .eyebrow{color:#cccccc;font-size:10px}.contact h2{font-size:clamp(36px,4.4vw,65px);line-height:1.08;letter-spacing:-.055em;font-weight:400;margin:30px 0 0}.contact h2 em{color:#aaaaaa}.contact-detail{padding-top:3px;max-width:420px}.contact-detail p{font-size:16px;line-height:1.6;color:#cccccc;margin-bottom:25px}.contact-detail a{display:flex;align-items:center;justify-content:space-between;font-size:clamp(22px,2.3vw,32px);letter-spacing:-.025em;border-bottom:1px solid #666666;padding:5px 0 13px;gap:20px}.contact-detail a:hover{color:#ffa3cc}.contact-detail a span{font-size:30px}.site-footer{display:grid;grid-template-columns:1fr 1.1fr 1fr auto;align-items:center;gap:32px;min-height:142px;padding-block:32px}.site-footer p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.site-footer nav{gap:28px;font-size:13px}.copyright{font-size:11px;color:var(--muted);white-space:nowrap}
.is-animated .signal{opacity:1;animation:signal-travel 7s linear infinite}.is-animated .signal-tech{animation-delay:-3.5s}.is-animated .film-stack{animation:frame-float 7s ease-in-out infinite}.is-animated .workflow-trace{opacity:1;animation:workflow-travel 6s linear infinite}.is-animated .core-cross{animation:core-turn 12s ease-in-out infinite}.is-animated .frame-dot{animation:node-glow 7s ease-in-out infinite}.is-animated .workflow-spark{animation:node-glow 7s 3.5s ease-in-out infinite}.is-animated.is-paused *{animation-play-state:paused!important}
@keyframes signal-travel{0%{stroke-dashoffset:440}75%,100%{stroke-dashoffset:0}}@keyframes workflow-travel{0%{stroke-dashoffset:360}85%,100%{stroke-dashoffset:0}}@keyframes frame-float{0%,100%{transform:translateY(2px) rotate(-3deg)}50%{transform:translateY(-5px) rotate(0deg)}}@keyframes core-turn{0%,25%{transform:rotate(0)}50%,75%{transform:rotate(90deg)}100%{transform:rotate(180deg)}}@keyframes node-glow{0%,40%,100%{box-shadow:0 0 0 0 #e82b8300}50%{box-shadow:0 0 0 5px #e82b8316}}
@media(min-width:1500px){.hero{padding-top:90px}.network{margin-top:55px}.direction-art{height:205px}.directions{padding-top:155px}.contact{margin-top:45px}}
@media(max-width:1000px){.hero{padding-top:58px}.hero-description{font-size:17px;margin-right:0}.directions{gap:60px}.direction-content>p:not(.eyebrow){font-size:14px}.direction-heading h2{font-size:37px}.route-arrow{width:40px;height:40px;font-size:22px}.contact-grid{gap:8%;grid-template-columns:1.2fr 1fr}.site-footer{grid-template-columns:1fr 1fr auto}.site-footer p{display:none}.site-footer nav{justify-content:center}}
@media(max-width:700px){.site-header{height:84px;grid-template-columns:1fr auto}.brand{width:110px}.site-header nav{gap:24px;font-size:13px}.site-header nav span{font-size:14px}.header-contact{display:none}.hero{padding-top:45px}.hero-intro{display:block}.hero-intro .eyebrow{font-size:9px;gap:9px;letter-spacing:.075em}h1{font-size:clamp(49px,9.4vw,66px);margin-top:22px;line-height:1.02;letter-spacing:-.06em}.hero-description{font-size:15px;margin-top:27px;line-height:1.5}.hero-description br{display:none}.hero-description span{font-size:13px;margin-top:4px}.network{margin-top:36px}.network-origin{left:26px;width:170px;transform:none;text-align:left;padding:0 10px 8px 0}.network-origin img{width:136px;height:62px;margin-left:-10px;margin-bottom:-14px}.network-origin>span{font-size:9px;margin-left:0}.network-lines{display:none}.network:before{content:"";position:absolute;top:58px;left:0;bottom:85px;border-left:1px solid var(--line)}.directions{display:block;padding-top:112px;padding-left:26px}.direction{position:relative;display:grid;grid-template-columns:minmax(0,1fr);padding-bottom:37px}.direction:before{content:"";position:absolute;left:-26px;top:101px;width:26px;border-top:1px solid var(--line)}.direction:after{content:"";position:absolute;left:-29px;top:98px;width:7px;height:7px;border:1px solid var(--paper);background:var(--pink);border-radius:50%}.direction-art{height:173px}.art-note{font-size:9px}.direction-content{padding-top:20px}.direction-heading{padding-bottom:17px;margin-top:15px}.direction-heading h2{font-size:clamp(30px,7.5vw,42px)}.direction-content>.eyebrow{font-size:9px;letter-spacing:.08em}.direction-content>p:not(.eyebrow){font-size:14px;margin-bottom:18px}.direction-content>p:not(.eyebrow) br{display:none}.route-label{font-size:12px}.direction-tech{padding-top:30px;padding-bottom:0}.direction-tech:before{top:131px}.direction-tech:after{top:128px}.network-caption{margin-top:35px;align-items:center;gap:16px;font-size:10px;padding-block:14px}.network-caption>span{max-width:160px;line-height:1.5}.motion-toggle{font-size:10px;gap:7px}.contact{margin-top:23px;padding-block:58px}.contact-grid{display:block}.contact h2{font-size:clamp(37px,8vw,52px);margin-top:25px}.contact-detail{margin-top:33px;max-width:none}.contact-detail p{font-size:15px}.contact-detail a{font-size:26px}.site-footer{grid-template-columns:1fr auto;gap:24px;padding-block:30px;min-height:140px}.site-footer nav{font-size:12px;gap:22px}.copyright{grid-column:1/-1;font-size:10px}.film-stack{width:187px;height:108px}.workflow{transform:scale(.9)}.site-footer .brand{width:100px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.network *{animation:none!important;transition:none!important}.signal,.workflow-trace{opacity:0!important}.motion-toggle{display:none!important}.route-arrow{transition:none}}
@media(max-width:700px){.hero-description br,.direction-content>p:not(.eyebrow) br{display:initial}.workflow{flex:none}}
@media(max-width:370px){.workflow{transform:scale(.75)}.hero-intro .eyebrow{font-size:8px;letter-spacing:.04em}.direction-heading{gap:12px}.route-arrow{width:35px;height:35px}}
.contact .contact-detail{margin-top:28px}.hub-enquiry{padding-top:4px;min-width:0}.hub-enquiry label{display:block;margin-bottom:24px}.hub-enquiry label>span{display:block;font-size:11px;line-height:1.5;color:#d6d6d6;margin-bottom:10px}.hub-enquiry input,.hub-enquiry textarea,.hub-enquiry select{display:block;width:100%;font:inherit;font-size:14px;line-height:1.6;background:transparent;color:#fff;border:0;border-bottom:1px solid #696969;border-radius:0;padding:9px 0 13px;resize:vertical;min-width:0}.hub-enquiry input::placeholder,.hub-enquiry textarea::placeholder{color:#a0a0a0;opacity:1}.hub-enquiry input:focus,.hub-enquiry textarea:focus,.hub-enquiry select:focus{outline:2px solid var(--pink);outline-offset:4px;border-bottom-color:var(--pink)}.hub-enquiry select{max-width:100%;text-overflow:ellipsis;padding-right:20px}.hub-enquiry select option{background:var(--ink);color:#fff}.hub-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.hub-submit{display:flex;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:18px 24px;border:0;border-radius:40px;font-size:14px;font-weight:500;background:#fff;color:var(--ink);cursor:pointer}.hub-submit:hover{background:#ededed}.hub-submit>span:last-child{font-size:22px}.hub-enquiry .form-note{color:#b9b9b9;margin:15px 0 0;max-width:350px}.hub-enquiry .form-result{border:1px solid #696969;margin-top:20px}.hub-enquiry .form-note a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.hub-enquiry{margin-top:40px;padding-top:30px;border-top:1px solid #696969}.contact .contact-detail{margin-top:25px}.hub-enquiry input,.hub-enquiry textarea,.hub-enquiry select{font-size:16px}}
@media(max-width:420px){.hub-form-row{grid-template-columns:1fr;gap:0}}
