@font-face{font-family:'DM Sans';src:url('/assets/dm-sans-latin.woff2') format('woff2');font-style:normal;font-weight:400 750;font-display:swap}
@font-face{font-family:'Outfit';src:url('/assets/outfit-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Outfit';src:url('/assets/outfit-semibold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'IBM Plex Sans Condensed';src:url('/assets/plex-condensed-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans Condensed';src:url('/assets/plex-condensed-semibold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'Borussia Display';src:url('/assets/borussia-display.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:'Borussia Text';src:url('/assets/borussia-text.woff2') format('woff2');font-display:swap;font-weight:300 700}
:root{--paper:#f5f6f8;--ink:#202329;--muted:#626872;--blue:#2e4cfa;--line:#d9dde4;--white:#fff;--gutter:clamp(24px,5.2vw,88px);--container:1600px;--font:'DM Sans',Arial,sans-serif;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:80px;--space-7:128px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);font-size:16px;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}::selection{background:var(--blue);color:white}.shell{max-width:var(--container);padding-left:var(--gutter);padding-right:var(--gutter);margin:auto}.skip-link{position:fixed;left:20px;top:-100px;background:white;padding:16px;z-index:100}.skip-link:focus{top:20px}.site-header{height:100px;display:flex;justify-content:space-between;align-items:center}.wordmark{display:inline-flex;align-items:center;flex:0 0 auto;width:14.5rem;min-height:44px}.wordmark img{display:block;width:100%;height:auto}.site-header{gap:12px}.site-header nav{display:flex;gap:36px;font-size:15px}.site-header nav a{padding:10px 0}.site-header nav a:hover{color:var(--blue)}
.hero{min-height:min(850px,calc(92svh - 100px));padding-top:clamp(28px,5svh,72px);padding-bottom:56px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}h1{font-size:clamp(68px,10.5vw,166px);line-height:.94;font-weight:550;letter-spacing:-.075em}h1>span{display:block}h1>span:last-child{color:var(--blue)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:8px}.hero-bottom>p{max-width:465px;font-size:clamp(18px,1.6vw,22px);line-height:1.5;letter-spacing:-.025em}.discover{display:flex;align-items:center;gap:40px;font-size:15px;padding:12px 0;flex-shrink:0}.discover>span:last-child{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;font-size:20px;transition:background .2s,transform .3s}.discover:hover>span:last-child{background:var(--blue);color:white;transform:translateY(5px)}
.about{padding-top:140px;padding-bottom:130px}.about-heading>p{font-size:16px;margin-bottom:28px}.about h2{font-size:clamp(46px,6.8vw,100px);font-weight:500;letter-spacing:-.07em;line-height:1.03}.about h2 span{color:#8b929d}.about-body{display:grid;grid-template-columns:.7fr 1fr;gap:clamp(60px,10vw,160px);margin-top:65px;align-items:center;max-width:1130px}.about-copy>p{font-size:20px;letter-spacing:-.025em;line-height:1.6;max-width:540px}.about-copy>p+p{margin-top:24px;color:var(--muted)}.about-copy details{border-bottom:1px solid var(--line);padding:20px 0}.about-copy details:first-of-type{margin-top:28px;border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:15px;line-height:1.4}summary::-webkit-details-marker{display:none}summary>span{font-size:20px;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details>p{font-size:16px;line-height:1.65;color:var(--muted);margin-top:16px}.contact{padding-top:70px;padding-bottom:100px;border-top:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:60px}.contact h2{font-size:clamp(64px,8vw,120px);font-weight:500;line-height:1;letter-spacing:-.075em}.contact>div{padding-top:7px}.contact p{font-size:18px;line-height:1.6;color:var(--muted)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:25px;padding-bottom:30px;border-top:1px solid var(--line)}.site-footer>.wordmark{width:12.5rem}.site-footer>span{font-size:14px;color:var(--muted)}.site-footer>button{border:0;background:transparent;padding:8px 0;font-size:14px;color:var(--muted)}.site-footer>button:hover{color:var(--blue)}
dialog{border:0;background:var(--paper);padding:48px;width:min(700px,calc(100% - 32px));max-height:88dvh;border-radius:10px;color:var(--ink);box-shadow:0 30px 100px #0003}dialog::backdrop{background:#17243965;backdrop-filter:blur(10px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted);margin-bottom:24px}.dialog-head button,.dialog-close{border:1px solid var(--line);border-radius:50%;width:40px;height:40px;background:transparent;font-size:24px;display:grid;place-items:center}.dialog-close{position:absolute;right:24px;top:24px}.dialog-kicker{font-size:14px;color:var(--muted);margin:10px 35px 24px 0}dialog h2{font-size:clamp(34px,5vw,54px);line-height:1.03;letter-spacing:-.06em;font-weight:500;margin-bottom:24px}dialog p{font-size:17px;line-height:1.65;color:var(--muted)}#project-dialog-body>p+p{margin-top:20px}.dialog-facts{margin:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;gap:40px}.dialog-facts>div{display:flex;flex-direction:column;gap:8px}.dialog-facts dd{font-size:36px;font-weight:500;letter-spacing:-.055em;margin:0;order:-1}.dialog-facts dt{font-size:14px;color:var(--muted)}#project-dialog-body .dialog-footnote{font-size:13px;margin-top:24px}.reveal{transition:opacity .85s,transform .85s cubic-bezier(.16,1,.3,1)}.reveal.waiting{opacity:0;transform:translateY(30px)}
/* One stage, four distinct products. */
.work-story{position:relative;scroll-margin-top:0}.story-sticky{position:relative;background:#e8edf3}.chapter{position:relative;min-height:740px;padding:64px var(--gutter);overflow:hidden}.chapter-train{background:#f5e9e9}.chapter-rdnd{background:#e8edf3}.chapter-system{background:#e8ece3}.chapter-tech{background:#f1eeee}.chapter-layout{height:100%;min-height:570px;max-width:1440px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:5%;align-items:center}.chapter-copy{padding-bottom:12px;position:relative;z-index:2}.chapter-kind{font-size:15px;line-height:1.5;max-width:330px;margin-bottom:26px}.chapter h2{font-size:clamp(54px,6.3vw,94px);font-weight:500;letter-spacing:-.075em;line-height:.97}.chapter-premise{font-size:clamp(28px,3.3vw,48px);line-height:1.06;letter-spacing:-.055em;margin-top:28px}.chapter-description{font-size:17px;line-height:1.55;color:#566070;margin-top:28px;max-width:410px}.detail-button{display:inline-flex;align-items:center;gap:24px;margin-top:28px;border:0;border-bottom:1px solid #20232955;background:transparent;padding:0 0 9px;font-size:14px}.detail-button>span{font-size:21px;line-height:1}.detail-button:hover{border-color:var(--ink)}.chapter-art{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;min-height:530px}.art-object{width:100%;will-change:transform;transform:translateY(var(--art-y,0px)) rotate(var(--art-angle,0deg)) scale(var(--art-scale,1));transform-origin:center}.chapter-nav{display:flex;justify-content:center;gap:50px;padding:24px var(--gutter);background:var(--paper)}.chapter-nav>a{position:relative;padding:15px 0;font-size:15px;white-space:nowrap}.chapter-nav>a>span{margin-right:8px;opacity:.5;font-size:12px}.chapter-nav i{position:absolute;bottom:3px;left:0;height:2px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left}.chapter-nav a[aria-current="true"] i{transform:scaleX(var(--chapter-progress,0))}.chapter-nav a:not([aria-current="true"]){opacity:.65}.chapter-nav a:hover{opacity:1}
.motion-on .work-story{height:var(--story-height)}.motion-on .story-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.motion-on .chapter-stack{height:100%;position:relative}.motion-on .chapter{position:absolute;inset:0;min-height:0;padding-top:42px;padding-bottom:100px;transform-origin:center;will-change:transform,opacity;visibility:hidden}.motion-on .chapter.is-active,.motion-on .chapter.is-transitioning{visibility:visible}.motion-on .chapter-layout{min-height:0}.motion-on .chapter-nav{position:absolute;z-index:10;bottom:0;left:0;width:100%;background:transparent;padding-top:10px;padding-bottom:23px}.motion-on .chapter-nav:before{content:'';position:absolute;inset:0;backdrop-filter:blur(14px);background:#ffffff45;z-index:-1}
/* Traintrack: real tabs, directly linked to native scroll progress. */
.train-ui{font-family:'Outfit',sans-serif;color:#312f32;background:white;border-radius:16px;padding:28px;max-width:610px;box-shadow:0 28px 65px -30px #62212835}.app-top{display:flex;justify-content:space-between;align-items:center}.train-logo{display:block;width:180px;height:auto}.app-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff0f0;color:#ef3039;font-size:13px;font-weight:600}.train-viewport{margin-top:28px}.train-panel{padding:0 2px 20px;min-width:0}.train-panel+.train-panel{padding-top:28px;border-top:1px solid #ebebeb}.app-welcome>span{font-size:14px;color:#5a595b}.app-welcome strong{display:block;font-size:32px;line-height:1.05;font-weight:600;letter-spacing:-.035em;color:#19213d;margin-top:8px}.build-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px;margin:32px 0 25px}.build-facts dt{font-size:14px;color:#5a595b;margin-bottom:6px}.build-facts dd{font-size:21px;color:#19213d;margin:0;font-weight:600;line-height:1.15}.train-bottom-line{font-size:14px;line-height:1.4;color:#5a595b;margin-top:auto;padding-top:18px}.community-content{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center;margin-top:24px}.community-content>img{width:100%;height:160px;object-fit:cover;border-radius:10px}.community-content dl{margin:0;display:flex;flex-direction:column;gap:20px}.community-content dd{margin:0;font-size:38px;font-weight:600;letter-spacing:-.055em;color:#ef3039;line-height:1}.community-content dt{font-size:14px;color:#5a595b;margin-top:4px}.sighting-route{margin:30px 0 20px;display:flex;justify-content:space-between;position:relative;padding-bottom:30px;font-size:14px;color:#19213d}.route-line{position:absolute;left:8px;right:8px;bottom:5px;height:3px;background:#e3efff}.route-line:before,.route-line:after,.route-line>i{content:'';position:absolute;top:-4px;width:11px;height:11px;border-radius:50%;background:#ef3039}.route-line:before{left:0}.route-line:after{right:0;background:#19213d}.route-line>i{left:calc(var(--route-progress,.5) * (100% - 11px));box-shadow:0 0 0 5px #ef30391a}.sighting-copy{font-size:19px;line-height:1.4;color:#19213d;max-width:450px}.train-tabs{display:none}.js .train-viewport{overflow:hidden}.js .train-track{display:flex;transform:translateX(calc(var(--train-position,0) * -100%));will-change:transform}.js .train-panel{flex:0 0 100%;width:100%;height:auto;min-height:330px;display:flex;flex-direction:column;padding:0 2px 18px;border:0}.js .train-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ebebeb;position:relative}.train-tabs:before{content:'';position:absolute;top:-1px;left:0;width:calc(100% / 3);height:3px;background:#ef3039;transform:translateX(calc(var(--train-position,0) * 100%));border-radius:3px}.train-tabs button{border:0;background:transparent;color:#5a595b;padding:19px 0 3px;font-size:14px;font-weight:600;min-height:45px}.train-tabs button[aria-selected=true]{color:#ef3039}.train-tabs button:focus-visible{outline-offset:-3px;border-radius:5px}.manual-change .train-track,.manual-change .train-tabs:before{transition:transform .45s cubic-bezier(.22,.61,.36,1)}
/* RDND: original 72/28 perforated tickets, a selection that becomes a match. */
.rdnd-ui{font-family:'IBM Plex Sans Condensed',sans-serif;background:#f7f8fa;color:#001437;padding:30px;border:1px solid white;border-radius:20px;max-width:510px;box-shadow:0 28px 65px -30px #00143740}.rdnd-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.rdnd-top img{width:108px;height:auto}.rdnd-top>span{font-size:14px;color:#526074}.rdnd-heading{margin:30px 0 27px}.rdnd-heading>span{font-size:15px;color:#526074}.rdnd-heading>strong{font-weight:600;font-size:36px;letter-spacing:-.035em;display:block;margin-top:5px;line-height:1.1}.rdnd-deck{display:grid;gap:13px;padding:12px 0 23px;perspective:900px}.rdnd-ticket{background:white;min-height:64px;display:grid;grid-template-columns:72% 28%;position:relative;border-radius:8px;filter:drop-shadow(0 2px 3px #0014370a);transform-origin:center;will-change:transform}.rdnd-ticket:before,.rdnd-ticket:after{content:'';position:absolute;width:12px;height:12px;background:#f7f8fa;border-radius:50%;left:calc(72% - 6px);z-index:2}.rdnd-ticket:before{top:-6px}.rdnd-ticket:after{bottom:-6px}.rdnd-ticket>div{padding:13px 12px;display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}.rdnd-ticket b{color:#d4552a;font-size:15px;font-weight:600;line-height:1}.rdnd-ticket div>span{font-size:14px;line-height:1;white-space:nowrap;font-weight:600;display:flex;gap:6px;align-items:center}.rdnd-ticket i{color:#ec6839;font-size:16px;font-style:normal}.rdnd-ticket em{font-style:normal}.rdnd-ticket>strong{align-self:stretch;display:flex;justify-content:center;align-items:center;color:#d4552a;font-size:23px;font-weight:600;position:relative}.rdnd-ticket>strong:before{content:'';position:absolute;top:8px;bottom:8px;left:0;border-left:1px dashed #00143744}.ticket-confirmed-stripe{position:absolute;left:0;top:0;bottom:0;width:5px;background:#81c784;border-radius:8px 0 0 8px;opacity:var(--confirmation,1)}.ticket-selected{z-index:2}.motion-on .ticket-back{transform:translateY(calc(var(--ticket-focus,0) * -10px)) rotate(calc(var(--ticket-focus,0) * -3deg));opacity:calc(1 - var(--ticket-focus,0) * .35)}.motion-on .ticket-selected{transform:translateX(calc(var(--ticket-focus,0) * -12px)) scale(calc(1 + var(--ticket-focus,0) * .07));filter:drop-shadow(0 12px 16px #0014371a)}.motion-on .ticket-last{transform:translateY(calc(var(--ticket-focus,0) * 10px)) rotate(calc(var(--ticket-focus,0) * 3deg));opacity:calc(1 - var(--ticket-focus,0) * .35)}.rdnd-status{position:relative;min-height:69px}.rdnd-stage-label{display:flex;align-items:center;justify-content:center;background:#ec6839;color:#001437;min-height:50px;font-size:18px;font-weight:600;border-radius:12px;opacity:calc(1 - var(--confirmation,1))}.rdnd-match{position:absolute;inset:0;display:flex;align-items:center;gap:12px;background:#eaf3ea;border-radius:12px;padding:14px 18px;opacity:var(--confirmation,1);transform:translateY(calc((1 - var(--confirmation,1)) * 18px))}.rdnd-check{display:grid;place-items:center;border-radius:50%;color:#287430;background:#d9ead9;width:32px;height:32px;flex-shrink:0}.rdnd-match b,.rdnd-match span>span{display:block}.rdnd-match b{font-weight:600;font-size:18px}.rdnd-match span>span{font-size:14px;color:#436047;margin-top:3px}.rdnd-example{font-size:13px;color:#526074;text-align:center;margin-top:20px}
/* Borussia: Bungee, Signika, the diamond and the actual palette. */
.borussia-board{max-width:610px;background:#000;border-radius:16px;color:white;padding:28px;font-family:'Borussia Text',sans-serif;box-shadow:0 28px 65px -30px #18320040}.borussia-brand{display:flex;align-items:center;gap:14px}.borussia-brand img{width:26px;height:auto}.borussia-brand>span{font-size:19px;font-weight:600}.borussia-type{margin:24px 0}.borussia-type>span{font-size:14px;color:#c6c6c6}.borussia-type>strong{display:block;font-family:'Borussia Display',sans-serif;font-size:clamp(24px,2.5vw,38px);line-height:1.12;font-weight:400;margin-top:10px;letter-spacing:0}.borussia-components{display:grid;grid-template-columns:.55fr 1fr;gap:18px}.borussia-label{font-size:14px;display:flex;align-items:center;gap:7px}.borussia-label:before{content:'';background:#7ab929;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);width:9px;height:15px}.borussia-platforms{display:flex;gap:9px;margin-top:24px}.borussia-platforms>span{padding:8px 14px;border-radius:5px;background:#1e1e1e;color:#c6c6c6;font-size:14px}.borussia-platforms>span:first-child{background:#fff;color:#000}
/* A real thumbnail, with no embedded player or autoplay. */
.tech-frame{background:#171717;color:white;padding:24px;border:1px solid #ffffff10;border-radius:14px;box-shadow:0 30px 65px -30px #1c111160;max-width:610px;overflow:hidden}.tech-titlebar{display:flex;justify-content:space-between;align-items:center;padding:0 2px}.tech-titlebar>span{font-size:25px;font-weight:650;letter-spacing:-.065em}.tech-titlebar>img{width:42px;height:42px;display:block}.tech-thumbnail{display:block;border:0;background:transparent;padding:0;width:100%;margin-top:20px;border-radius:8px;overflow:hidden}.tech-thumbnail img{display:block;width:100%;height:auto;aspect-ratio:16/9;transition:transform .45s}.tech-thumbnail:hover img{transform:scale(1.035)}.tech-video-title{font-size:17px;font-weight:500;margin-top:18px}.tech-audience{display:flex;align-items:center;gap:18px;border-top:1px solid #ffffff26;padding-top:18px;margin-top:18px}.tech-audience>b{font-size:37px;letter-spacing:-.06em;font-weight:500}.tech-audience>span{font-size:13px;color:#bbb;line-height:1.4}
.portrait{max-width:420px;transform:rotate(-3deg)}.portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:52% center;border-radius:4px}.portrait figcaption{font-size:13px;margin-top:14px;color:var(--muted)}.contact-email{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:25px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:clamp(18px,2vw,26px);letter-spacing:-.04em;overflow-wrap:anywhere}.contact-email>span{color:var(--blue)}.contact-email:hover{color:var(--blue)}.site-footer>a:last-child{font-size:14px}.project-external{display:inline-flex;gap:24px;border-bottom:1px solid var(--line);padding-bottom:6px}
@media(max-width:1100px){.chapter-layout{grid-template-columns:.85fr 1.15fr;gap:4%}.chapter h2{font-size:64px}.chapter-premise{font-size:36px}.chapter-description{font-size:16px}.train-ui,.rdnd-ui,.borussia-board,.tech-frame{padding:22px}.train-logo{width:155px}.app-welcome strong{font-size:29px}.community-content{gap:18px}.community-content dd{font-size:33px}.rdnd-heading>strong{font-size:32px}.rdnd-ticket div>span{font-size:12px;gap:4px}.rdnd-ticket>strong{font-size:21px}.borussia-type>strong{font-size:29px}.about-body{gap:60px}.contact{gap:35px}.contact p{font-size:16px}}
@media(max-width:800px){.ticket-last{display:none}.site-header{height:82px}.wordmark{width:12.5rem}.site-header nav{gap:20px;font-size:14px}.site-header nav a:last-child{display:none}.hero{min-height:calc(86svh - 82px);padding-top:34px;padding-bottom:42px;gap:38px;justify-content:center}h1{font-size:12.2vw;line-height:.98}.hero-bottom{display:block;margin-top:0}.hero-bottom>p{max-width:430px;font-size:19px;line-height:1.5}.discover{margin-top:22px;justify-content:space-between;max-width:430px}.chapter{padding:48px var(--gutter) 60px;min-height:0}.chapter-layout{display:flex;flex-direction:column;align-items:stretch;gap:32px;min-height:0;justify-content:center}.chapter-copy{padding:0}.chapter-kind{font-size:14px;margin-bottom:14px;max-width:none}.chapter h2{font-size:52px}.chapter-premise{font-size:26px;line-height:1.12;margin-top:13px}.chapter-description{font-size:16px;line-height:1.45;margin-top:15px;max-width:430px}.chapter-description br{display:none}.detail-button{font-size:14px;margin-top:17px;padding-bottom:7px;gap:16px}.chapter-art{min-height:0;max-width:440px;width:100%;align-self:center}.train-ui,.rdnd-ui,.borussia-board,.tech-frame{padding:20px}.train-logo{width:150px}.train-viewport{margin-top:22px}.js .train-panel{height:auto;min-height:300px;padding-bottom:16px}.app-welcome strong{font-size:26px}.app-welcome>span{font-size:13px}.build-facts{margin:25px 0 0;gap:22px 16px}.build-facts dd{font-size:18px}.build-facts dt{font-size:13px}.train-bottom-line{font-size:13px;padding-top:15px}.community-content{margin-top:20px;gap:17px;grid-template-columns:1fr 1fr}.community-content>img{height:141px}.community-content dd{font-size:31px}.community-content dt{font-size:13px}.community-content dl{gap:18px}.sighting-route{margin:26px 0 19px;font-size:13px}.sighting-copy{font-size:17px}.train-tabs button{font-size:13px;padding-top:16px}.rdnd-top img{width:92px}.rdnd-top>span{font-size:13px}.rdnd-heading{margin:24px 0 21px}.rdnd-heading>strong{font-size:30px}.rdnd-heading>span{font-size:14px}.rdnd-ticket>div{padding:12px}.rdnd-ticket b{font-size:14px}.rdnd-ticket div>span{font-size:12px;gap:4px}.rdnd-ticket>strong{font-size:21px}.rdnd-deck{gap:11px;padding:9px 0 20px}.rdnd-example{font-size:12px;margin-top:16px}.rdnd-match{padding:12px 14px}.rdnd-match b{font-size:17px}.rdnd-stage-label{font-size:17px}.borussia-type{margin:20px 0}.borussia-type>strong{font-size:27px}.borussia-brand img{width:22px}.borussia-brand>span{font-size:17px}.borussia-components{gap:14px;grid-template-columns:.5fr 1fr}.borussia-label{font-size:13px}.borussia-platforms{margin-top:20px}.borussia-platforms>span{padding:7px 12px;font-size:13px}.tech-titlebar>span{font-size:22px}.tech-titlebar>img{width:34px;height:34px}.tech-thumbnail{margin-top:16px}.tech-video-title{font-size:16px}.tech-audience{margin-top:16px;padding-top:14px}.tech-audience>b{font-size:30px}.chapter-nav{gap:clamp(14px,4vw,26px);padding:20px var(--gutter)}.chapter-nav>a{font-size:13px}.chapter-nav>a>span{display:none}.motion-on .chapter{padding-top:30px;padding-bottom:90px}.motion-on .chapter-layout{gap:32px;justify-content:center}.motion-on .chapter-description{display:none}.motion-on .chapter-nav{padding-bottom:19px}.motion-on .chapter-copy{flex-shrink:0}.about{padding-top:85px;padding-bottom:75px}.about-heading>p{font-size:15px;margin-bottom:23px}.about h2{font-size:48px}.about-body{grid-template-columns:1fr;gap:35px;margin-top:38px}.portrait{max-width:380px;width:80%;justify-self:center}.about-copy>p{font-size:19px;line-height:1.6}.contact{padding-top:45px;padding-bottom:65px;display:block}.contact h2{font-size:64px}.contact>div{margin-top:30px}.contact p{font-size:17px}.contact-email{font-size:21px;max-width:420px}.site-footer{flex-wrap:wrap;gap:17px;padding-top:24px;padding-bottom:28px}.site-footer>.wordmark{width:12.5rem}.site-footer>span{font-size:13px}.site-footer>a:last-child{font-size:14px}dialog{padding:32px 24px}.dialog-close{top:18px;right:18px}.dialog-facts{gap:25px;flex-wrap:wrap}.dialog-facts dd{font-size:31px}.dialog-facts dt{font-size:13px}}
@media(max-width:400px){.site-header .wordmark{width:10rem}.site-header nav{gap:14px}.chapter h2{font-size:47px}.chapter-premise{font-size:24px}.chapter-kind{font-size:13px}.train-ui,.rdnd-ui,.borussia-board,.tech-frame{padding:17px}.app-welcome strong{font-size:25px}.train-logo{width:140px}.js .train-panel{height:auto;min-height:295px}.build-facts dd{font-size:17px}.community-content dd{font-size:29px}.sighting-copy{font-size:16px}.rdnd-ticket>div{padding:11px 9px}.rdnd-ticket div>span{gap:3px}.rdnd-ticket>strong{font-size:20px}.borussia-type>strong{font-size:25px}.borussia-components{gap:12px;grid-template-columns:.45fr 1fr}.about h2{font-size:43px}.chapter-nav>a{font-size:12px}.motion-on .chapter-layout{gap:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.art-object{will-change:auto;transform:none}.reveal.waiting{opacity:1;transform:none}.tech-thumbnail:hover img{transform:none}.train-track{will-change:auto}}

/* Digital components foreground the work; inherited brand assets provide context. */
.borussia-components{grid-template-columns:1.05fr 1fr;gap:16px}
.bmg-content-module,.bmg-icon-module,.bmg-account-module{background:#1e1e1e;border-radius:12px}
.bmg-content-module{padding:22px;display:flex;flex-direction:column}
.bmg-content-module>strong{font-family:'Borussia Display',sans-serif;font-size:23px;line-height:1.2;font-weight:400;display:block;margin:18px 0 24px}
.bmg-content-module>a{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#7ab929;color:black;border-radius:5px;padding:11px 12px;font-size:14px;font-weight:600}
.bmg-content-module>a:hover{background:#90cf3d}.bmg-content-module>a>img{width:18px;height:18px}
.bmg-side-modules{display:flex;flex-direction:column;gap:16px}.bmg-icon-module{display:flex;align-items:center;justify-content:space-around;gap:12px;padding:18px}
.bmg-icon-module>img{width:23px;height:23px;filter:invert(1)}
.bmg-account-module{padding:20px;flex:1}.bmg-account-module>span{font-size:14px;color:#c6c6c6}.bmg-account-module>p{font-size:20px;line-height:1.3;font-weight:600;margin-top:12px}
.motion-on .bmg-content-module{transform:translateY(calc(var(--detail-shift,0px) * -.3))}
.motion-on .bmg-side-modules{transform:translateY(calc(var(--detail-shift,0px) * .3))}
.tech-audience>b{font-size:32px}.tech-audience>span{font-size:14px}
@media(max-width:1100px){.bmg-content-module{padding:17px}.bmg-content-module>strong{font-size:20px}.bmg-account-module{padding:17px}.bmg-account-module>p{font-size:18px}.bmg-icon-module{padding:17px 14px}}
@media(max-width:800px){.borussia-components{gap:12px}.bmg-content-module{padding:16px}.bmg-content-module>strong{font-size:19px;margin:16px 0 20px}.bmg-content-module>a{font-size:13px;padding:10px}.bmg-side-modules{gap:12px}.bmg-icon-module{padding:15px 12px;gap:10px}.bmg-icon-module>img{width:19px;height:19px}.bmg-account-module{padding:15px}.bmg-account-module>span{font-size:13px}.bmg-account-module>p{font-size:17px;margin-top:10px}.tech-audience>b{font-size:29px}}
@media(max-width:360px){.bmg-content-module{padding:12px}.bmg-content-module>strong{font-size:17px}.bmg-content-module>a{font-size:12px;padding:9px 7px;gap:4px}.bmg-icon-module{gap:8px;padding:14px 10px}.bmg-icon-module>img{width:17px;height:17px}.bmg-account-module{padding:12px}.bmg-account-module>p{font-size:16px}}

/* Direct project destinations, kept separate from the project details. */
.project-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:18px}
.project-links>a{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;border-bottom:1px solid #20232940;font-size:14px;line-height:1.3}
.project-links>a:hover{color:var(--blue);border-color:currentColor}
.project-links>a>span{font-size:16px}
#project-dialog-body>.project-links{margin-top:28px}
@media(max-width:800px){.chapter-copy>.project-links{margin-top:6px}.motion-on .chapter-layout{gap:20px}.motion-on .chapter-copy .detail-button{margin-top:12px}.motion-on .chapter-copy>.project-links>a{min-height:40px}}
@media(max-width:800px) and (max-height:820px){.motion-on .chapter-train .chapter-layout{gap:16px}.motion-on .train-viewport{margin-top:16px}.motion-on .train-panel{min-height:275px}}
/* Shared legal, project and consent surfaces. */
[hidden]{display:none!important}
.footer-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 22px;font-size:14px}
.footer-links button,.text-action{font:inherit;background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.footer-links a,.footer-links button{min-height:32px;display:inline-flex;align-items:center}
.document{max-width:1060px;min-height:65vh;padding-top:60px;padding-bottom:100px}
.document h1{font-size:clamp(40px,5.5vw,76px);font-weight:500;line-height:1.07;letter-spacing:-.055em;max-width:900px;margin:22px 0 40px;overflow-wrap:anywhere}
.document-body{max-width:740px;font-size:17px;line-height:1.75}
.document-body p+p{margin-top:20px}.document-body section{margin-top:36px}.document-body h2,.related-projects h2{font-size:24px;line-height:1.3;font-weight:550;letter-spacing:-.025em;margin-bottom:14px}
.document-body a:not(.project-links a){text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.document-body a:hover,.footer-links a:hover,.footer-links button:hover{color:var(--blue)}
.document-kicker,.back-link,.document-date{font-size:14px;color:var(--muted)}.document-kicker{margin-top:36px}.back-link{display:inline-flex;align-items:center;min-height:44px}.document-date{margin-top:40px}.document-lead{font-size:20px;line-height:1.6}.document .dialog-facts{flex-wrap:wrap}.document code{font-size:.9em;overflow-wrap:anywhere}
.related-projects{margin-top:64px;padding-top:28px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 28px}.related-projects h2{width:100%;font-size:18px}.related-projects>a{font-size:16px;min-height:44px;display:flex;align-items:center}
.cookie-banner{position:fixed;z-index:50;right:24px;bottom:24px;width:min(420px,calc(100% - 32px));padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 50px #20232917;max-height:calc(100dvh - 32px);overflow:auto}
.cookie-banner h2{font-size:22px;line-height:1.2;font-weight:550;letter-spacing:-.035em;margin-bottom:12px}.cookie-banner p{font-size:14px;line-height:1.6;color:var(--muted)}.cookie-banner .cookie-current:empty{display:none}.cookie-current{margin-top:10px}
.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.cookie-actions button{min-height:44px;border:1px solid var(--blue);border-radius:6px;background:#fff;color:var(--blue);font-size:14px;font-weight:550;padding:10px 8px}.cookie-actions button:hover{background:#eef1ff}.cookie-actions button:focus-visible{outline-offset:3px}
.cookie-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;font-size:12px;line-height:1.5;color:var(--muted)}.cookie-meta a{text-decoration:underline;text-underline-offset:3px}.cookie-meta span{width:100%}
@media(max-width:800px){.site-footer{align-items:flex-start}.footer-links{width:100%;justify-content:flex-start;gap:4px 20px}.document{padding-top:32px;padding-bottom:64px}.document h1{font-size:clamp(36px,8vw,56px)}.document-body{font-size:16px}.cookie-banner{right:16px;bottom:16px;padding:20px}.cookie-meta{font-size:13px}}
