:root{
  --bg:#050505;
  --panel:#0a0a0a;
  --text:#f2f2ee;
  --muted:#989894;
  --line:#222220;
  --yellow:#ffd90a;
  --red:#ef2024;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.section-shell{width:min(1320px,calc(100% - 64px));margin:0 auto}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid rgba(255,255,255,.10);background:rgba(5,5,5,.86);backdrop-filter:blur(16px)}
.identity{display:flex;align-items:center;gap:13px;font-size:14px;letter-spacing:.01em}.identity img{width:34px;height:34px;object-fit:contain}
.apply-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid #3a3a37;border-radius:999px;font-size:13px;transition:.2s ease}.apply-button:hover{background:var(--text);color:var(--bg);border-color:var(--text)}
.hero{min-height:calc(100svh - 20px);padding-top:96px;padding-bottom:36px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(340px,1.02fr);gap:clamp(36px,5vw,84px);align-items:center;border-bottom:1px solid var(--line)}
.hero-copy{max-width:620px}.hero-visual{display:flex;justify-content:center;align-items:center;min-height:380px}.hero-visual img{width:min(620px,100%);filter:grayscale(1) contrast(1.03);opacity:.96}
.section-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
h1,h2{margin:0;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(42px,5.4vw,76px);line-height:1.02}h2{font-size:clamp(34px,4vw,60px);line-height:1.02}
.intro{margin:22px 0 0;max-width:520px;font-size:20px;line-height:1.5;color:#c9c9c4}
.format-section{padding:84px 0 28px;display:grid;grid-template-columns:180px 1fr;gap:64px}.format-content h2{max-width:900px;font-size:clamp(30px,4vw,56px);font-weight:400;line-height:1.08}
.band-section{padding:0 0 28px}.band-shell{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.belgian-flag{width:72px;height:36px;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #f2f2ee;background:#111}.belgian-flag.centered{margin:0 auto 26px}.belgian-flag span:nth-child(1){background:#111}.belgian-flag span:nth-child(2){background:var(--yellow)}.belgian-flag span:nth-child(3){background:var(--red)}
.marquee{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scrollbar-width:none;background:#070707;cursor:grab}.marquee::-webkit-scrollbar{display:none}
.marquee-track{display:flex;width:max-content}.marquee-group{display:flex;flex:0 0 auto}.marquee.is-dragging{cursor:grabbing;user-select:none}
.uni-card{width:272px;min-height:396px;flex:0 0 auto;display:grid;grid-template-rows:1fr 104px;border-right:1px solid var(--line);background:#070707}
.city{padding:30px 22px 18px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:18px;background:#070707}.city img{width:194px;height:194px;object-fit:contain}.city span{align-self:flex-start;font-size:12px;color:#b8b8b2}
.uni-logo{background:#040404;display:grid;place-items:center;padding:16px 12px 18px;border-top:1px solid var(--line);min-height:104px}
.uni-logo img{width:auto;height:auto;max-width:172px;max-height:54px;object-fit:contain}
.uni-logo .logo-ucl{max-width:98px;max-height:62px}.uni-logo .logo-namur{max-width:108px;max-height:68px}.uni-logo .logo-ulb{max-width:88px;max-height:58px}.uni-logo .logo-brugge{max-width:176px;max-height:50px}.uni-logo .logo-kul{max-width:154px;max-height:44px}.uni-logo .logo-liege{max-width:148px;max-height:60px}.uni-logo .logo-ua{max-width:136px;max-height:46px}.uni-logo .logo-hasselt{max-width:146px;max-height:46px}.uni-logo .logo-gent{max-width:160px;max-height:58px}.uni-logo .logo-mons{max-width:142px;max-height:60px}
.format-grid-wrap{padding:42px 0 0}.format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}.format-grid>div{min-height:220px;padding:24px 28px 0 0;border-right:1px solid var(--line)}.format-grid>div+div{padding-left:28px}.format-grid>div:last-child{border-right:none}.number{font-size:12px;color:var(--muted)}.format-grid p{margin:68px 0 0;max-width:250px;font-size:17px;line-height:1.45}
.assembly-section{padding:150px 0 0;border-bottom:1px solid var(--line)}.assembly-heading{display:grid;grid-template-columns:180px 1fr;gap:64px}.assembly-heading p{margin:24px 0 0;max-width:620px;color:var(--muted);font-size:17px;line-height:1.6}
.assembly-stage{min-height:120vh;display:grid;place-items:center;position:relative}.split-drone{position:sticky;top:18vh;width:min(760px,84vw);aspect-ratio:1.32;--p:0}
.drone-tile{position:absolute;width:33.3334%;height:33.3334%;background-image:url('drone-exploded.png');background-repeat:no-repeat;background-size:300% 300%;filter:grayscale(1) contrast(1.08);will-change:transform}
.tile-1{left:0;top:0;background-position:0 0;transform:translate(calc((1 - var(--p))*-72px),calc((1 - var(--p))*-58px)) rotate(calc((1 - var(--p))*-3deg))}
.tile-2{left:33.3334%;top:0;background-position:50% 0;transform:translateY(calc((1 - var(--p))*-86px))}
.tile-3{left:66.6668%;top:0;background-position:100% 0;transform:translate(calc((1 - var(--p))*76px),calc((1 - var(--p))*-54px)) rotate(calc((1 - var(--p))*3deg))}
.tile-4{left:0;top:33.3334%;background-position:0 50%;transform:translateX(calc((1 - var(--p))*-92px))}
.tile-5{left:33.3334%;top:33.3334%;background-position:50% 50%;transform:scale(calc(.92 + var(--p)*.08))}
.tile-6{left:66.6668%;top:33.3334%;background-position:100% 50%;transform:translateX(calc((1 - var(--p))*96px))}
.tile-7{left:0;top:66.6668%;background-position:0 100%;transform:translate(calc((1 - var(--p))*-70px),calc((1 - var(--p))*64px)) rotate(calc((1 - var(--p))*3deg))}
.tile-8{left:33.3334%;top:66.6668%;background-position:50% 100%;transform:translateY(calc((1 - var(--p))*82px))}
.tile-9{left:66.6668%;top:66.6668%;background-position:100% 100%;transform:translate(calc((1 - var(--p))*78px),calc((1 - var(--p))*70px)) rotate(calc((1 - var(--p))*-3deg))}
.apply-section{padding:170px 0;display:grid;grid-template-columns:180px 1fr;gap:64px;border-bottom:1px solid var(--line)}.apply-copy p{max-width:560px;margin:24px 0 34px;color:var(--muted);font-size:16px;line-height:1.55}.apply-button.large{min-height:48px;padding:0 20px}
.footer{min-height:120px;display:flex;justify-content:space-between;align-items:flex-end;padding-top:30px;padding-bottom:30px;color:#74746f;font-size:12px}
@media (max-width:900px){
  .section-shell{width:min(100% - 36px,1320px)}
  .site-header{height:68px;padding:0 18px}.identity span{display:none}
  .hero{min-height:auto;padding-top:88px;padding-bottom:28px;grid-template-columns:1fr;gap:22px;align-items:start}.hero-visual{order:2;min-height:260px}.hero-visual img{width:min(520px,96%)}
  h1{font-size:clamp(40px,11vw,62px)}.intro{font-size:18px}
  .format-section,.assembly-heading,.apply-section{grid-template-columns:1fr;gap:24px;padding-top:86px;padding-bottom:86px}.format-section{padding-bottom:24px}
  .belgian-flag{width:62px;height:30px}.belgian-flag.centered{margin-bottom:18px}
  .uni-card{width:238px;min-height:352px;grid-template-rows:1fr 90px}.city{padding:22px 16px 14px}.city img{width:165px;height:165px}.uni-logo{min-height:90px;padding:14px 10px 16px}
  .uni-logo img{max-width:150px;max-height:48px}.uni-logo .logo-ucl{max-width:88px;max-height:56px}.uni-logo .logo-namur{max-width:98px;max-height:62px}.uni-logo .logo-ulb{max-width:82px;max-height:54px}.uni-logo .logo-brugge{max-width:160px;max-height:46px}.uni-logo .logo-kul{max-width:140px;max-height:40px}.uni-logo .logo-liege{max-width:130px;max-height:54px}.uni-logo .logo-ua{max-width:122px;max-height:42px}.uni-logo .logo-hasselt{max-width:130px;max-height:42px}.uni-logo .logo-gent{max-width:142px;max-height:50px}.uni-logo .logo-mons{max-width:126px;max-height:50px}
  .format-grid-wrap{padding-top:26px}.format-grid{grid-template-columns:1fr}.format-grid>div,.format-grid>div+div{min-height:auto;padding:22px 0 26px;border-right:0;border-bottom:1px solid var(--line)}.format-grid>div:last-child{border-bottom:0}.format-grid p{margin:26px 0 0}
  .assembly-section{padding-top:100px}.assembly-stage{min-height:90vh}.split-drone{width:94vw;top:25vh}
  .footer{flex-direction:column;align-items:flex-start;gap:10px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.drone-tile{transform:none!important}}
