:root{--void:#05070d;--ink:#f3f7f6;--soft:#b5c5c8;--muted:#82979d;--line:rgba(177,220,224,.16);--line-strong:rgba(177,220,224,.3);--green:#69f2b0;--cyan:#63d9f2;--blue:#6298ff;--panel:rgba(7,13,23,.54);--display:"Inter Tight",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--body:"Inter Tight",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"Roboto Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--shell:1280px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--void)}body{background:var(--void);color:var(--ink);font:18px/1.55 var(--body);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 4% 13%,rgba(34,132,111,.14),transparent 26%),radial-gradient(circle at 95% 35%,rgba(40,119,154,.12),transparent 24%)}body>*:not(canvas){position:relative;z-index:1}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}.shell{width:min(var(--shell),calc(100% - 96px));margin:auto}.section-pad{padding:150px 0}.scroll-progress{position:fixed;top:0;left:0;z-index:50;width:100%;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;box-shadow:0 0 18px var(--green)}.cursor-glow{position:fixed;z-index:1;width:230px;height:230px;border-radius:50%;pointer-events:none;background:rgba(86,216,206,.1);filter:blur(50px);opacity:0;transform:translate(-50%,-50%);transition:opacity .25s}.cursor-glow.is-hovering{background:rgba(105,242,176,.17)}#space{position:fixed;inset:0;z-index:0;width:100%;height:100%;pointer-events:none}.skip-link{position:fixed;z-index:100;top:-100px;left:16px;padding:11px 16px;background:var(--green);color:#04100b;border-radius:999px}.skip-link:focus{top:16px}.announcement{border-bottom:1px solid var(--line);color:var(--soft);font:12px var(--mono);letter-spacing:.04em}.announcement-inner{min-height:42px;display:flex;justify-content:space-between;align-items:center;gap:20px}.announcement span:first-child,.announcement a{color:var(--green)}.announcement b{font-size:15px}.announcement i,.live-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:999px;background:var(--green);box-shadow:0 0 13px var(--green)}.site-header{position:sticky;top:0;z-index:40;padding:22px 0;transition:padding .25s,background .25s,border-color .25s}.site-header.scrolled{padding:14px 0;background:rgba(5,7,13,.7);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:9px;font:600 19px var(--display);letter-spacing:-.06em}.brand b{color:var(--green)}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--green);color:#07110d;font:500 14px var(--mono);transition:transform .25s}.brand:hover .brand-mark{transform:rotate(16deg) scale(1.08)}.nav-links{display:flex;align-items:center;gap:28px;color:var(--muted);font-size:14px}.nav-links a{transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--ink)}.nav-button,.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;overflow:hidden;border-radius:999px;transform:translate(var(--mag-x,0),var(--mag-y,0));transition:transform .22s,background .22s,border-color .22s,color .22s}.nav-button{padding:11px 17px;background:var(--green);color:#07100c;font-weight:700}.nav-button:hover{background:#c4ffdc}.menu-button{display:none;border:1px solid var(--line);background:transparent;width:43px;height:38px;padding:9px;border-radius:10px}.menu-button span{display:block;height:1px;margin:5px 0;background:var(--ink)}.hero{position:relative;min-height:760px;padding:105px 0 80px;display:grid;align-items:center;overflow:hidden}.hero-scanline{display:none}.hero-orbit{position:absolute;border:1px solid rgba(99,217,242,.16);border-radius:50%;pointer-events:none}.hero-orbit-one{right:-290px;top:20px;width:700px;height:700px}.hero-orbit-two{right:8%;top:46%;width:230px;height:230px;border-color:rgba(105,242,176,.17)}.hero-shell{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(400px,.75fr);gap:78px;align-items:center}.hero-main{max-width:780px}.eyebrow,.section-kicker{font:500 12px var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--green)}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}.eyebrow-slash{color:var(--muted)}.hero h1{font:400 clamp(76px,10vw,148px)/.84 var(--display);letter-spacing:-.095em}.hero h1 em{font-style:normal;color:var(--green)}.hero-lead{max-width:570px;margin:34px 0;color:var(--soft);font-size:22px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:51px;padding:13px 20px;font-size:15px;font-weight:600}.button-primary{background:var(--green);color:#07100c}.button-primary:hover{background:#c7ffdf;box-shadow:0 10px 36px rgba(105,242,176,.2)}.button-line{border:1px solid var(--line-strong);background:rgba(255,255,255,.02)}.button-line:hover{border-color:var(--green);color:var(--green)}.hero-contact-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:42px;color:var(--muted);font:14px var(--mono)}.hero-contact-row a:hover,.contact-links a:hover{color:var(--green)}.hero-contact-row span,.contact-links span{color:var(--green)}.launch-card{overflow:hidden;border:1px solid var(--line-strong);border-radius:24px;background:rgba(8,15,24,.62);backdrop-filter:blur(9px);transform:perspective(1000px) rotateX(var(--tilt-y,0)) rotateY(var(--tilt-x,0));transition:transform .22s,border-color .22s}.launch-card:hover{border-color:rgba(105,242,176,.55)}.launch-card-top{display:flex;align-items:center;gap:10px;height:50px;padding:0 18px;border-bottom:1px solid var(--line);font:11px var(--mono)}.window-dots{display:flex;gap:5px;margin-right:auto}.window-dots i{width:6px;height:6px;border-radius:50%;background:var(--muted)}.mono{color:var(--muted)}.launch-status{color:var(--green)}.launch-visual{position:relative;display:grid;place-items:center;min-height:330px;overflow:hidden}.launch-visual:before,.launch-visual:after,.planet-orbit{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(99,217,242,.22);border-radius:50%;animation:spin 22s linear infinite}.launch-visual:after{width:180px;height:180px;border-color:rgba(105,242,176,.3);animation-direction:reverse;animation-duration:15s}.planet{position:relative;z-index:2;display:grid;place-items:center;width:130px;height:130px;border-radius:50%;background:rgba(76,209,164,.1);border:1px solid var(--green);box-shadow:0 0 65px rgba(105,242,176,.2),inset 0 0 34px rgba(105,242,176,.14);font:600 68px var(--display);animation:breathe 5s ease-in-out infinite}.planet-orbit-a{width:350px;height:160px;transform:rotate(-28deg);animation-duration:18s}.planet-orbit-b{width:235px;height:345px;transform:rotate(43deg);animation-direction:reverse}.planet-label{position:absolute;z-index:3;bottom:25px;left:24px;color:var(--green);font:12px var(--mono);letter-spacing:.14em}.launch-info{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:24px}.small-label{display:block;color:var(--muted);font:11px var(--mono);letter-spacing:.13em}.launch-info strong{display:block;margin:7px 0;font:500 30px/.9 var(--display);letter-spacing:-.06em}.launch-info strong i{font-style:normal;font-size:16px;color:var(--green)}.countdown{display:flex;align-items:start;gap:8px}.countdown div{display:grid;gap:3px}.countdown b{color:var(--green);font:500 25px/.9 var(--mono)}.countdown span{color:var(--muted);font:10px var(--mono)}.countdown em{color:var(--muted);font-style:normal}.scroll-cue{position:absolute;bottom:24px;left:50%;display:flex;gap:10px;align-items:center;color:var(--muted);font:11px var(--mono);transform:translateX(-50%)}.scroll-cue span{display:block;width:18px;height:1px;background:var(--green)}.quick-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(4,9,15,.35)}.quick-facts-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-facts-grid>div{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:114px;padding:0 28px;border-right:1px solid var(--line)}.quick-facts-grid>div:first-child{border-left:1px solid var(--line)}.fact-number{color:var(--green);font:400 24px var(--mono)}.quick-facts strong{font-size:15px;font-weight:500;color:var(--soft)}.sponsor-logo-rail{padding:26px 0;border-bottom:1px solid var(--line)}.sponsor-logo-rail-inner{display:flex;align-items:center;gap:35px}.sponsor-logo-rail-label{min-width:155px;color:var(--green);font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase}.sponsor-logo-row{display:flex;flex:1;gap:10px;align-items:center;justify-content:space-between}.sponsor-logo-pill{display:grid;place-items:center;min-width:120px;height:55px;padding:9px 18px;border-radius:12px;background:rgba(255,255,255,.93);transition:transform .25s}.sponsor-logo-pill:hover{transform:translateY(-4px)}.sponsor-logo-pill img{max-width:135px;max-height:32px;object-fit:contain}.sponsor-logo-pill-devswarm{background:#0b0527}.sponsor-logo-pill-devswarm img{max-height:42px}.section-heading{display:grid;grid-template-columns:1.1fr .7fr;align-items:end;gap:90px;margin-bottom:64px}.section-heading h2,.section-intro h2,.register-card h2{margin-top:14px;font:400 clamp(70px,8vw,122px)/.84 var(--display);letter-spacing:-.09em}.section-heading>p,.section-aside{max-width:530px;color:var(--soft);font-size:20px}.sponsor-layout{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.confirmed-sponsor,.sponsor-ask{position:relative;min-height:430px;padding:32px;border:1px solid var(--line);border-radius:24px;background:var(--panel);overflow:hidden;transition:transform .25s,border-color .25s,background .25s}.confirmed-sponsor:hover,.sponsor-ask:hover{transform:translateY(-7px);border-color:rgba(105,242,176,.55);background:rgba(8,18,27,.82)}.sponsor-card-top{display:flex;align-items:center;gap:7px;color:var(--green);font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase}.sponsor-card-top .live-dot{width:6px;height:6px;margin:0}.sponsor-card-top b{margin-left:auto;font-size:17px}.sponsor-brand{display:flex;align-items:center;min-height:78px;margin-top:28px}.sponsor-brand img{max-width:290px;max-height:62px;object-fit:contain}.sponsor-brand-xyz,.sponsor-brand-momen{padding:9px 18px;border-radius:10px;background:#fff;width:max-content}.sponsor-brand-protoflow{max-width:260px}.sponsor-brand-devswarm{max-width:260px;background:#0b0527;padding:8px;border-radius:10px}.confirmed-sponsor h3,.sponsor-ask h3{margin-top:26px;font:400 clamp(34px,3.1vw,48px)/.95 var(--display);letter-spacing:-.075em}.confirmed-sponsor>p,.sponsor-ask>p:not(.section-kicker){margin-top:15px;color:var(--soft);font-size:18px}.sponsor-link{display:block;position:absolute;right:32px;bottom:30px;left:32px;color:var(--green);font:13px/1.4 var(--mono)}.sponsor-ask{display:flex;flex-direction:column;justify-content:center;background:rgba(11,30,30,.4)}.sponsor-ask-symbol{color:var(--green);font:400 46px/1 var(--display)}.sponsor-ask .section-kicker{margin-top:18px}.about-section,.prizes-section{background:rgba(4,10,16,.34)}.idea-board{display:grid;grid-template-columns:1.15fr .85fr;min-height:430px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.idea-copy{padding:48px 0}.board-mark{display:block;color:var(--green);font:400 36px var(--display)}.idea-copy h3{max-width:650px;margin-top:38px;font:400 clamp(46px,5.3vw,78px)/.9 var(--display);letter-spacing:-.08em}.idea-copy p{max-width:600px;margin-top:23px;color:var(--soft);font-size:20px}.idea-tags{display:flex;flex-wrap:wrap;align-content:center;gap:10px;padding:48px;border-left:1px solid var(--line)}.idea-tags span{padding:9px 13px;border:1px solid var(--line-strong);border-radius:999px;color:var(--soft);font-size:15px}.organizer-card{display:grid;grid-template-columns:180px 1fr;gap:36px;align-items:center;margin-top:16px;padding:34px 0;border-bottom:1px solid var(--line)}.organizer-number{color:var(--green);font:12px var(--mono);letter-spacing:.11em}.organizer-card h3{margin-top:10px;font:400 38px/.95 var(--display);letter-spacing:-.075em}.organizer-card p:not(.section-kicker){max-width:690px;margin-top:12px;color:var(--soft);font-size:18px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid var(--line)}.feature-grid article{min-height:270px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .25s}.feature-grid article:first-child{border-left:1px solid var(--line)}.feature-grid article:hover{background:rgba(99,217,242,.04)}.feature-index{color:var(--green);font:12px var(--mono)}.feature-grid h3{margin-top:70px;font:400 34px var(--display);letter-spacing:-.07em}.feature-grid p{margin-top:12px;color:var(--soft);font-size:17px}.weekend-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.weekend-card{min-height:650px;padding:34px;border:1px solid var(--line);border-radius:24px;background:var(--panel);transition:transform .25s,border-color .25s}.weekend-card:hover{transform:translateY(-7px);border-color:var(--cyan)}.weekend-card-green{background:var(--panel)}.weekend-card-top{display:flex;justify-content:space-between;color:var(--green);font:12px var(--mono);letter-spacing:.12em}.weekend-icon{display:none}.weekend-card h3{margin-top:75px;font:400 clamp(56px,5vw,74px)/.9 var(--display);letter-spacing:-.09em}.weekend-card>p{max-width:470px;margin-top:20px;color:var(--soft);font-size:19px}.timeline{margin-top:40px;border-top:1px solid var(--line)}.timeline>div{display:grid;grid-template-columns:115px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.timeline time{color:var(--green);font:12px var(--mono)}.timeline span{color:var(--soft);font-size:16px}.prize-board{border-top:1px solid var(--line)}.prize-board article{display:grid;grid-template-columns:78px 1fr auto;align-items:center;gap:20px;padding:31px 0;border-bottom:1px solid var(--line);transition:padding .25s}.prize-board article:hover{padding-left:14px}.prize-board article>span{color:var(--green);font:12px var(--mono)}.prize-board h3{font:400 30px var(--display);letter-spacing:-.06em}.prize-board p{color:var(--soft);font-size:18px}.prize-big>b{color:var(--green);font-size:27px}.prize-board-footer{display:flex;justify-content:space-between;gap:20px;padding:22px 0;color:var(--muted);font:13px var(--mono)}.prize-board-footer a{color:var(--green)}.split-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:105px;align-items:start}.section-intro{position:sticky;top:115px}.section-aside{margin-top:28px}.rule-list,.score-list,.faq-list{border-top:1px solid var(--line)}.rule-row{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.rule-row>span,.score-list>div>span{color:var(--green);font:12px var(--mono)}.rule-row h3{font:400 27px var(--display);letter-spacing:-.055em}.rule-row p{margin-top:5px;color:var(--soft);font-size:17px}.score-list>div{display:grid;grid-template-columns:70px 1fr 1fr;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line)}.score-list strong{font:400 29px var(--display);letter-spacing:-.06em}.score-list p{color:var(--soft);font-size:17px;text-align:right}.narrow-shell{width:min(980px,calc(100% - 96px))}.centered{display:block;text-align:center}.centered .section-kicker{display:block}.faq-list details{padding:24px 0;border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:25px;cursor:pointer;list-style:none;font:400 27px var(--display);letter-spacing:-.055em}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--green);font:400 29px var(--mono);transition:transform .2s}.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list details p{max-width:720px;padding-top:14px;color:var(--soft);font-size:18px}.register-section{padding-top:70px}.register-card{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:55px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.register-card h2{font-size:clamp(65px,7vw,108px)}.register-card>div>p:not(.section-kicker){max-width:630px;margin-top:14px;color:var(--soft);font-size:20px}.contact-links{display:flex;flex-wrap:wrap;gap:12px 23px;margin-top:27px;color:var(--muted);font:14px var(--mono)}.site-footer{padding:50px 0 28px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:center}.footer-top>p{color:var(--muted);font-size:15px}.footer-top nav{display:flex;justify-content:flex-end;gap:20px;color:var(--soft);font-size:14px}.footer-top nav a:hover,.footer-bottom a:hover{color:var(--green)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:70px;color:#597077;font:12px var(--mono)}.footer-bottom span:last-child{display:flex;gap:12px}.footer-bottom i{color:var(--line)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}.reveal-delay{transition-delay:.11s}.reveal-delay-two{transition-delay:.22s}.reveal.visible{opacity:1;transform:translateY(0)}.click-ripple{position:absolute;width:10px;height:10px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);pointer-events:none;animation:ripple .6s ease-out forwards}@keyframes spin{to{transform:rotate(360deg)}}@keyframes breathe{50%{transform:scale(1.07);box-shadow:0 0 86px rgba(105,242,176,.3),inset 0 0 38px rgba(105,242,176,.18)}}@keyframes ripple{to{opacity:0;transform:translate(-50%,-50%) scale(22)}}@media(max-width:1050px){.shell{width:min(var(--shell),calc(100% - 64px))}.hero{padding-top:80px}.hero-shell{grid-template-columns:1fr}.launch-card{max-width:680px}.section-heading{gap:50px}.sponsor-logo-rail-inner{display:block}.sponsor-logo-rail-label{margin-bottom:15px}.sponsor-layout{grid-template-columns:1fr}.split-layout{gap:55px}.footer-top{grid-template-columns:1fr 1fr}.footer-top nav{grid-column:1/-1;justify-content:flex-start}}@media(max-width:740px){.shell,.narrow-shell{width:calc(100% - 40px)}.announcement-inner{padding:8px 0;min-height:48px;flex-wrap:wrap}.announcement-inner span:nth-child(2){display:none}.site-header{padding:15px 0}.menu-button{display:block}.nav-links{position:absolute;top:58px;right:0;left:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:9px;border:1px solid var(--line);border-radius:16px;background:rgba(5,10,17,.97)}.nav-links.open{display:flex}.nav-links a{padding:12px}.nav-button{justify-content:center;margin-top:7px}.hero{min-height:0;padding:68px 0 88px}.hero h1{font-size:clamp(68px,18vw,116px)}.hero-lead{font-size:19px}.hero-contact-row{gap:11px;margin-top:34px}.hero-orbit-one{right:-390px}.launch-visual{min-height:280px}.launch-info{align-items:flex-start;flex-direction:column}.countdown{width:100%;justify-content:space-between}.quick-facts-grid{grid-template-columns:repeat(2,1fr)}.quick-facts-grid>div{min-height:90px;padding:0 17px;border-bottom:1px solid var(--line)}.quick-facts-grid>div:nth-child(odd){border-left:1px solid var(--line)}.sponsor-logo-row{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.sponsor-logo-pill{min-width:0}.section-pad{padding:104px 0}.section-heading,.split-layout{grid-template-columns:1fr;gap:28px;margin-bottom:50px}.section-heading h2,.section-intro h2{font-size:clamp(61px,16vw,95px)}.section-heading>p,.section-aside{font-size:19px}.confirmed-sponsor,.sponsor-ask{min-height:390px;padding:27px}.idea-board{grid-template-columns:1fr}.idea-copy{padding:34px 0}.idea-tags{padding:30px 0;border-top:1px solid var(--line);border-left:0}.organizer-card{grid-template-columns:1fr;gap:17px}.feature-grid,.weekend-grid{grid-template-columns:1fr}.feature-grid article{min-height:220px;border-left:1px solid var(--line);border-bottom:0}.feature-grid article:last-child{border-bottom:1px solid var(--line)}.feature-grid h3{margin-top:40px}.weekend-card{min-height:auto;padding:27px}.weekend-card h3{margin-top:58px}.prize-board article{grid-template-columns:42px 1fr;padding:23px 0}.prize-board article>b{display:none}.prize-board-footer,.register-card,.footer-bottom{flex-direction:column;align-items:flex-start}.score-list>div{grid-template-columns:43px 1fr}.score-list p{grid-column:2;text-align:left}.register-card{padding:40px 0}.footer-top{grid-template-columns:1fr}.footer-top nav{grid-column:auto;justify-content:flex-start;flex-wrap:wrap}.footer-bottom{margin-top:45px}.footer-bottom span:last-child{flex-wrap:wrap}}@media(max-width:460px){body{font-size:17px}.hero-actions{flex-direction:column}.button{width:100%}.hero-contact-row{display:grid;grid-template-columns:1fr}.quick-facts strong{font-size:13px}.confirmed-sponsor h3,.sponsor-ask h3{font-size:40px}.weekend-card h3{font-size:55px}.timeline>div{grid-template-columns:90px 1fr}.timeline span,.rule-row p,.prize-board p,.faq-list details p{font-size:16px}.faq-list summary{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cursor-glow,.launch-visual:before,.launch-visual:after,.planet,.planet-orbit{animation:none}.reveal{opacity:1;transform:none;transition:none}.button,.nav-button,.launch-card,.confirmed-sponsor,.sponsor-ask,.weekend-card{transform:none!important}}
/* Wider layout and Mobbin sponsor treatment. */
:root{--shell:1500px}
.shell{width:min(var(--shell),calc(100% - 96px))}
.narrow-shell{width:min(1080px,calc(100% - 96px))}
.hero-shell{grid-template-columns:minmax(0,1.05fr) minmax(480px,.78fr);gap:96px}
.sponsor-layout{gap:18px}
.sponsor-logo-row{gap:14px}
.sponsor-logo-pill-mobbin{background:#f5f5f5}
.sponsor-logo-pill-mobbin img{max-width:150px;max-height:29px}
.sponsor-brand-mobbin{width:max-content;padding:12px 18px;border:1px solid #292d30;border-radius:8px;background:#f5f5f5}
.sponsor-brand-mobbin img{width:250px;max-width:100%;height:auto;max-height:42px}
.confirmed-sponsor[aria-label="Tin Computer confirmed support"] .sponsor-brand img{filter:invert(1) brightness(1.15)}
@media(max-width:1050px){.shell,.narrow-shell{width:min(var(--shell),calc(100% - 64px))}.hero-shell{grid-template-columns:1fr;gap:64px}}
@media(max-width:740px){.shell,.narrow-shell{width:calc(100% - 40px)}.sponsor-logo-row{gap:9px}.sponsor-brand-mobbin{max-width:100%}}
.section-pad{padding-top:108px;padding-bottom:108px}
.judging-section{padding-top:92px;padding-bottom:92px}
.judging-section .split-layout{gap:64px}
.judging-section .section-intro h2{margin-bottom:12px}
.judging-section .score-list>div{padding:20px 0}
.quick-facts-grid{grid-template-columns:repeat(5,1fr)}
@media(max-width:1050px){.quick-facts-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:740px){.section-pad,.judging-section{padding-top:78px;padding-bottom:78px}.quick-facts-grid{grid-template-columns:repeat(2,1fr)}}
.sponsor-logo-marquee{flex:1;min-width:0;overflow:hidden}
.sponsor-logo-row{display:flex;flex:0 0 auto;width:max-content;min-width:max-content;justify-content:flex-start;gap:18px;animation:sponsor-marquee 18s linear infinite;will-change:transform}
.sponsor-logo-pill{min-width:170px;height:76px;padding:14px 24px;border-radius:15px}
.sponsor-logo-pill img{max-width:158px;max-height:41px}
.sponsor-logo-pill-devswarm img{max-height:50px}
.sponsor-logo-pill-devswarm img{width:220px;max-width:220px;max-height:58px}
.sponsor-logo-pill-mobbin img{max-width:170px;max-height:39px}
.logo-fallback{display:none;color:#161616;font:600 17px var(--display)}
@keyframes sponsor-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.sponsor-logo-marquee:hover .sponsor-logo-row{animation-play-state:paused}
@media(max-width:740px){.sponsor-logo-marquee{width:100%}.sponsor-logo-pill{min-width:145px;height:68px;padding:12px 18px}.sponsor-logo-pill img{max-width:135px;max-height:36px}}
@media(prefers-reduced-motion:reduce){.sponsor-logo-row{animation:none}}
.sponsor-logo-pill-tin{background:#fff}
.sponsor-logo-pill-tin img{width:158px;max-width:100%;max-height:44px;object-fit:contain}
.sponsor-brand-tin{width:max-content;max-width:100%;min-height:0;padding:14px 20px;border-radius:9px;background:#fff}
.sponsor-brand-tin img{width:270px;max-width:100%;height:auto;max-height:76px;object-fit:contain}
.confirmed-sponsor[aria-label="Tin Computer confirmed support"] .sponsor-brand-tin img{filter:none}
.sponsor-brand-devswarm{width:360px;max-width:100%;min-height:0;padding:0;background:#0b0527;border-radius:10px;overflow:hidden}
.sponsor-brand-devswarm img{width:360px;max-width:100%;height:auto;max-height:none;object-fit:contain}

/* CodeCrafters sponsor */
.sponsor-logo-pill-codecrafters{background:#f5f5f5}
.sponsor-logo-pill-codecrafters img{max-width:170px;max-height:30px}
.sponsor-brand-codecrafters{width:max-content;max-width:100%;padding:13px 18px;border:1px solid #292d30;border-radius:8px;background:#f5f5f5}
.sponsor-brand-codecrafters img{width:285px;max-width:100%;height:auto;max-height:42px}
.sponsor-brand-codecrafters:hover{border-color:var(--green)}
@media(max-width:740px){.sponsor-brand-codecrafters{max-width:100%}.sponsor-logo-pill-codecrafters img{max-width:145px}}


/* Final layout fixes */
.confirmed-sponsor{padding-bottom:92px}
.devswarm-sponsor{padding-bottom:108px}
.sponsor-ask .button{margin-top:28px}
.idea-copy h3{margin-top:0}
@media(max-width:740px){
  .confirmed-sponsor{padding-bottom:88px}
  .devswarm-sponsor{padding-bottom:100px}
  .sponsor-ask .button{margin-top:24px}
}

/* Rise Research sponsor */
.sponsor-logo-pill-rise{background:#114f3d;overflow:hidden}
.sponsor-logo-pill-rise img{width:145px;max-width:145px;max-height:42px;object-fit:contain}
.sponsor-brand-rise{width:max-content;max-width:100%;padding:10px 14px;border-radius:10px;background:#114f3d;overflow:hidden}
.sponsor-brand-rise img{width:285px;max-width:100%;height:auto;max-height:70px;object-fit:contain}
@media(max-width:740px){.sponsor-brand-rise{max-width:100%}.sponsor-logo-pill-rise img{max-width:135px}}

/* n8n sponsor */
.sponsor-logo-pill-n8n{background:#fff}
.sponsor-logo-pill-n8n img{width:160px;max-width:100%;max-height:43px;object-fit:contain}
.sponsor-brand-n8n{width:max-content;max-width:100%;padding:14px 20px;border-radius:10px;background:#fff}
.sponsor-brand-n8n img{width:285px;max-width:100%;height:auto;max-height:78px;object-fit:contain}
.sponsor-brand-n8n:hover{box-shadow:0 0 0 1px rgba(105,242,176,.55)}
@media(max-width:740px){.sponsor-brand-n8n{max-width:100%}.sponsor-logo-pill-n8n img{max-width:140px}}

/* Sponsor sizing cleanup + updated DevSwarm artwork */
.sponsor-layout{align-items:stretch}
.sponsor-layout>.confirmed-sponsor{min-height:535px;height:100%}

/* Keep every logo tile on the moving sponsor rail visually consistent. */
.sponsor-logo-pill,
.sponsor-logo-pill-tin,
.sponsor-logo-pill-mobbin,
.sponsor-logo-pill-codecrafters,
.sponsor-logo-pill-rise,
.sponsor-logo-pill-n8n,
.sponsor-logo-pill-firecrawl,
.sponsor-logo-pill-onlyoffice,
.sponsor-logo-pill-devswarm{
  width:182px;
  min-width:182px;
  height:76px;
  padding:13px 18px;
  overflow:hidden;
}
.sponsor-logo-pill img,
.sponsor-logo-pill-tin img,
.sponsor-logo-pill-mobbin img,
.sponsor-logo-pill-codecrafters img,
.sponsor-logo-pill-rise img,
.sponsor-logo-pill-n8n img{
  width:auto;
  max-width:148px;
  height:auto;
  max-height:42px;
  object-fit:contain;
}
.sponsor-logo-pill-onlyoffice img{
  width:auto;
  max-width:154px;
  height:auto;
  max-height:36px;
  object-fit:contain;
}
.sponsor-logo-pill-firecrawl img{
  width:auto;
  max-width:154px;
  height:auto;
  max-height:40px;
  object-fit:contain;
}
.sponsor-logo-pill-devswarm{padding:0;background:#0b0527}
.sponsor-logo-pill-devswarm img{
  width:100%;
  max-width:none;
  height:100%;
  max-height:none;
  object-fit:cover;
}

/* Give the larger sponsor-card logo areas one common footprint. */
.sponsor-brand,
.sponsor-brand-tin,
.sponsor-brand-xyz,
.sponsor-brand-momen,
.sponsor-brand-protoflow,
.sponsor-brand-devswarm,
.sponsor-brand-mobbin,
.sponsor-brand-codecrafters,
.sponsor-brand-rise,
.sponsor-brand-n8n,
.sponsor-brand-firecrawl,
.sponsor-brand-onlyoffice{
  width:300px;
  max-width:100%;
  height:86px;
  min-height:86px;
  padding:13px 18px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.sponsor-brand img,
.sponsor-brand-tin img,
.sponsor-brand-xyz img,
.sponsor-brand-momen img,
.sponsor-brand-protoflow img,
.sponsor-brand-mobbin img,
.sponsor-brand-codecrafters img,
.sponsor-brand-rise img,
.sponsor-brand-n8n img,
.sponsor-brand-firecrawl img,
.sponsor-brand-onlyoffice img{
  width:auto;
  max-width:260px;
  height:auto;
  max-height:58px;
  object-fit:contain;
}
.sponsor-brand-devswarm{padding:0;background:#0b0527}
.sponsor-brand-devswarm img{
  width:100%;
  max-width:none;
  height:100%;
  max-height:none;
  object-fit:cover;
  filter:none;
}

@media(max-width:740px){
  .sponsor-layout>.confirmed-sponsor{min-height:0}
  .sponsor-logo-pill,
  .sponsor-logo-pill-tin,
  .sponsor-logo-pill-mobbin,
  .sponsor-logo-pill-codecrafters,
  .sponsor-logo-pill-rise,
  .sponsor-logo-pill-n8n,
  .sponsor-logo-pill-devswarm{
    width:150px;
    min-width:150px;
    height:68px;
    padding:11px 14px;
  }
  .sponsor-logo-pill-devswarm{padding:0}
  .sponsor-brand,
  .sponsor-brand-tin,
  .sponsor-brand-xyz,
  .sponsor-brand-momen,
  .sponsor-brand-protoflow,
  .sponsor-brand-devswarm,
  .sponsor-brand-mobbin,
  .sponsor-brand-codecrafters,
  .sponsor-brand-rise,
  .sponsor-brand-n8n,
  .sponsor-brand-firecrawl,
  .sponsor-brand-onlyoffice{
    width:280px;
    height:80px;
    min-height:80px;
  }
}


/* Firecrawl sponsor */
.sponsor-logo-pill-firecrawl{background:#fff}
.sponsor-logo-pill-firecrawl img{width:162px;max-width:100%;max-height:41px;object-fit:contain}
.sponsor-brand-firecrawl{width:max-content;max-width:100%;padding:14px 20px;border-radius:10px;background:#fff}
.sponsor-brand-firecrawl img{width:270px;max-width:100%;height:auto;max-height:56px;object-fit:contain}
.sponsor-brand-firecrawl:hover{box-shadow:0 0 0 1px rgba(105,242,176,.55)}
@media(max-width:740px){.sponsor-brand-firecrawl{max-width:100%}.sponsor-logo-pill-firecrawl img{max-width:145px}}

/* Pyxel Edit sponsor */
.sponsor-logo-pill-pyxel{background:#fff}
.sponsor-logo-pill-pyxel img{width:164px;max-width:100%;max-height:42px;object-fit:contain}
.sponsor-brand-pyxel{width:max-content;max-width:100%;padding:10px 18px;border-radius:10px;background:#fff}
.sponsor-brand-pyxel img{width:270px;max-width:100%;height:auto;max-height:58px;object-fit:contain}
.sponsor-brand-pyxel:hover{box-shadow:0 0 0 1px rgba(105,242,176,.55)}
@media(max-width:740px){.sponsor-brand-pyxel{max-width:100%}.sponsor-logo-pill-pyxel img{max-width:145px}}


/* ONLYOFFICE sponsor */
.sponsor-logo-pill-onlyoffice{background:#fff}
.sponsor-logo-pill-onlyoffice img{width:164px;max-width:100%;max-height:36px;object-fit:contain}
.sponsor-brand-onlyoffice{width:max-content;max-width:100%;padding:14px 20px;border-radius:10px;background:#fff}
.sponsor-brand-onlyoffice img{width:285px;max-width:100%;height:auto;max-height:54px;object-fit:contain}
.sponsor-brand-onlyoffice:hover{box-shadow:0 0 0 1px rgba(105,242,176,.55)}
@media(max-width:740px){.sponsor-brand-onlyoffice{max-width:100%}.sponsor-logo-pill-onlyoffice img{max-width:145px}}


/* Featured ONLYOFFICE sponsor */
.sponsor-logo-pill-onlyoffice{order:-1;border:1px solid rgba(105,242,176,.28);box-shadow:0 0 0 1px rgba(255,255,255,.06) inset}
.onlyoffice-featured{grid-column:1 / -1;min-height:0;padding:34px 34px 36px;border-color:rgba(105,242,176,.34);background:linear-gradient(135deg,rgba(12,24,34,.92),rgba(8,16,25,.84));box-shadow:0 0 0 1px rgba(105,242,176,.08) inset}
.onlyoffice-featured:hover{border-color:rgba(105,242,176,.62);background:linear-gradient(135deg,rgba(13,27,38,.96),rgba(8,18,27,.9))}
.onlyoffice-featured-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.75fr);gap:28px;margin-top:18px;align-items:start}
.onlyoffice-featured .sponsor-brand-onlyoffice{width:340px;height:96px;min-height:96px;padding:16px 22px;border-radius:14px;box-shadow:0 0 0 1px rgba(255,255,255,.06) inset}
.onlyoffice-featured .sponsor-brand-onlyoffice img{width:300px;max-width:100%;max-height:58px}
.onlyoffice-featured h3{margin-top:22px;font-size:56px;line-height:.98;max-width:860px}
.onlyoffice-featured p{max-width:900px}
.onlyoffice-featured strong{color:var(--ink)}
.onlyoffice-support-note{color:var(--soft)!important;margin-top:12px}
.sponsor-benefits{display:grid;gap:10px;margin-top:18px;padding-left:0;list-style:none}
.sponsor-benefits li{position:relative;padding-left:22px;color:var(--soft);font-size:17px;line-height:1.5}
.sponsor-benefits li:before{content:"+";position:absolute;left:0;top:0;color:var(--green);font:500 16px var(--mono)}
.sponsor-link-featured{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:22px;padding:12px 18px;border:1px solid rgba(105,242,176,.34);border-radius:999px;color:var(--ink);background:rgba(255,255,255,.03)}
.sponsor-link-featured:hover{border-color:rgba(105,242,176,.62);color:var(--green)}
.onlyoffice-featured-side{display:grid;gap:16px}
.onlyoffice-badge,.onlyoffice-highlight-box{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.03)}
.onlyoffice-badge{padding:18px 18px 14px}
.onlyoffice-badge-label,.mini-label{display:block;color:var(--green);font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.onlyoffice-badge img{width:220px;max-width:100%;margin-top:14px}
.onlyoffice-highlight-box{padding:18px}
.onlyoffice-highlight-box strong{display:block;margin-top:10px;font:500 28px/1.02 var(--display);letter-spacing:-.05em}
.onlyoffice-highlight-box span:last-child{display:block;margin-top:8px;color:var(--soft);font-size:16px;line-height:1.45}
@media(max-width:1050px){.onlyoffice-featured-grid{grid-template-columns:1fr}.onlyoffice-featured h3{font-size:48px}}
@media(max-width:740px){.onlyoffice-featured{padding:28px}.onlyoffice-featured .sponsor-brand-onlyoffice{width:100%;height:88px;min-height:88px}.onlyoffice-featured h3{font-size:40px}.sponsor-benefits li{font-size:16px}}


/* Featured sponsor badge in hero */
.hero-featured-sponsor{display:grid;grid-template-columns:auto minmax(140px,210px) auto auto;align-items:center;gap:16px;width:min(100%,650px);margin-top:28px;padding:12px 14px 12px 16px;border:1px solid rgba(105,242,176,.28);border-radius:16px;background:rgba(8,16,24,.68);backdrop-filter:blur(10px);transition:transform .22s,border-color .22s,background .22s}
.hero-featured-sponsor:hover{transform:translateY(-3px);border-color:rgba(105,242,176,.58);background:rgba(10,21,30,.86)}
.hero-featured-label{display:flex;align-items:center;color:var(--green);font:500 10px var(--mono);letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.hero-featured-label .live-dot{width:6px;height:6px;margin-right:7px}
.hero-featured-logo{display:flex;align-items:center;justify-content:center;height:54px;padding:7px 13px;border-radius:10px;background:#fff;overflow:hidden}
.hero-featured-logo img{width:190px;max-width:100%;max-height:40px;object-fit:contain}
.hero-featured-copy{display:grid;gap:2px;min-width:max-content}
.hero-featured-copy strong{font:600 16px var(--display);letter-spacing:-.035em;color:var(--ink)}
.hero-featured-copy small{color:var(--muted);font:11px var(--mono)}
.hero-featured-arrow{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(105,242,176,.11);color:var(--green);font-size:18px}
@media(max-width:740px){.hero-featured-sponsor{grid-template-columns:1fr auto;gap:10px 12px}.hero-featured-label{grid-column:1 / -1}.hero-featured-logo{justify-self:stretch}.hero-featured-copy{display:none}.hero-featured-arrow{align-self:center}.hero-contact-row{margin-top:28px}}


/* Simplified ONLYOFFICE featured card */
.onlyoffice-featured{min-height:0!important;padding:34px!important}
.onlyoffice-simple{margin-top:18px;max-width:980px}
.onlyoffice-simple h3{margin-top:22px;font-size:56px;line-height:1}
.onlyoffice-simple p{max-width:900px}
.onlyoffice-about{margin-top:12px;color:var(--soft)!important}
@media(max-width:740px){.onlyoffice-featured{padding:28px!important}.onlyoffice-simple h3{font-size:40px}}


/* Top sponsor rail */
.sponsor-logo-rail-top{padding:18px 0 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(4,9,15,.32)}
.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:min(1740px,calc(100% - 48px));margin:0 auto;max-width:none}
.sponsor-logo-rail-top .sponsor-logo-rail-label{min-width:210px;font-size:12px}
.sponsor-logo-rail-top .sponsor-logo-marquee{flex:1;min-width:0;overflow:hidden}
.sponsor-logo-rail-top .sponsor-logo-row{gap:18px}
.sponsor-logo-rail-top .sponsor-logo-pill,
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters,
.sponsor-logo-rail-top .sponsor-logo-pill-rise,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{width:230px;min-width:230px;height:90px;padding:15px 22px;border-radius:18px}
.sponsor-logo-rail-top .sponsor-logo-pill img,
.sponsor-logo-rail-top .sponsor-logo-pill-tin img,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin img,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters img,
.sponsor-logo-rail-top .sponsor-logo-pill-rise img,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n img,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl img,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice img{max-width:180px;max-height:48px}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{padding:0}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
@media(max-width:1050px){.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:min(100%,calc(100% - 32px))}.sponsor-logo-rail-top .sponsor-logo-rail-label{min-width:170px}}
@media(max-width:740px){.sponsor-logo-rail-top{padding:14px 0}.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:calc(100% - 20px)}.sponsor-logo-rail-top .sponsor-logo-rail-label{min-width:0;margin-bottom:12px}.sponsor-logo-rail-top .sponsor-logo-pill,
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters,
.sponsor-logo-rail-top .sponsor-logo-pill-rise,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{width:185px;min-width:185px;height:74px;padding:12px 16px}.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{padding:0}.sponsor-logo-rail-top .sponsor-logo-pill img,
.sponsor-logo-rail-top .sponsor-logo-pill-tin img,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin img,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters img,
.sponsor-logo-rail-top .sponsor-logo-pill-rise img,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n img,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl img,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice img{max-width:150px;max-height:40px}}


/* Compact sponsor tiles */
.sponsor-layout{display:flex!important;flex-wrap:wrap;align-items:flex-start!important;gap:16px!important}
.sponsor-layout>.confirmed-sponsor,.sponsor-layout>.sponsor-ask{flex:1 1 calc(50% - 8px);width:calc(50% - 8px);min-height:0!important;height:auto!important;padding-bottom:32px!important;align-self:flex-start!important}
.sponsor-layout>.devswarm-sponsor{padding-bottom:32px!important}
.confirmed-sponsor:not(.onlyoffice-featured),.sponsor-ask{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand{margin-bottom:2px}
.confirmed-sponsor:not(.onlyoffice-featured) h3{margin-top:0!important}
.confirmed-sponsor:not(.onlyoffice-featured) p{margin-top:0!important}
.confirmed-sponsor:not(.onlyoffice-featured) .sponsor-link,.sponsor-ask .button{margin-top:2px!important}
.onlyoffice-featured{flex:1 1 100%!important;width:100%!important}
@media(max-width:1050px){.sponsor-layout>.confirmed-sponsor,.sponsor-layout>.sponsor-ask{flex-basis:100%;width:100%}}


/* Smaller linked sponsor rail */
.sponsor-logo-rail-top{padding:14px 0 13px}
.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:min(1680px,calc(100% - 56px));gap:24px}
.sponsor-logo-rail-top .sponsor-logo-rail-label{min-width:170px;font-size:11px}
.sponsor-logo-rail-top .sponsor-logo-row{gap:14px}
.sponsor-logo-rail-top .sponsor-logo-pill,
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters,
.sponsor-logo-rail-top .sponsor-logo-pill-rise,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{width:205px;min-width:205px;height:78px;padding:12px 18px;border-radius:15px}
.sponsor-logo-rail-top .sponsor-logo-pill img,
.sponsor-logo-rail-top .sponsor-logo-pill-tin img,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin img,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters img,
.sponsor-logo-rail-top .sponsor-logo-pill-rise img,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n img,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl img,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice img{max-width:162px;max-height:42px}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{padding:0}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
@media(max-width:740px){.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:calc(100% - 20px)}.sponsor-logo-rail-top .sponsor-logo-pill,
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters,
.sponsor-logo-rail-top .sponsor-logo-pill-rise,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{width:165px;min-width:165px;height:66px;padding:10px 14px}.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{padding:0}.sponsor-logo-rail-top .sponsor-logo-pill img,
.sponsor-logo-rail-top .sponsor-logo-pill-tin img,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin img,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters img,
.sponsor-logo-rail-top .sponsor-logo-pill-rise img,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n img,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl img,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice img{max-width:135px;max-height:36px}}


/* Rise Research prizes */
.prize-sponsor-label{margin:0 0 8px!important;color:var(--green)!important;font:500 11px var(--mono)!important;letter-spacing:.12em;text-transform:uppercase}
.rise-prize{border-color:rgba(105,242,176,.32)!important;background:linear-gradient(135deg,rgba(17,79,61,.32),rgba(255,255,255,.025))!important}
.rise-prize-small{border-color:rgba(105,242,176,.2)!important}

/* Confirmed judges */
.judges-section{position:relative;overflow:hidden}
.judges-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:42px}
.judge-card{position:relative;min-height:390px;padding:30px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.025);overflow:hidden;transition:transform .22s,border-color .22s,background .22s}
.judge-card:hover{transform:translateY(-4px);border-color:rgba(105,242,176,.36);background:rgba(255,255,255,.04)}
.judge-card:after{content:"";position:absolute;right:-72px;bottom:-88px;width:220px;height:220px;border:1px solid rgba(105,242,176,.14);border-radius:50%}
.judge-card-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font:500 11px var(--mono);letter-spacing:.11em}
.judge-card-top span:last-child{color:var(--green)}
.judge-monogram{display:grid;place-items:center;width:92px;height:92px;margin-top:42px;border:1px solid rgba(105,242,176,.35);border-radius:50%;background:rgba(105,242,176,.07);color:var(--green);font:600 28px var(--display);letter-spacing:-.04em}
.judge-card h3{position:relative;z-index:1;margin:26px 0 10px;font:600 36px/1 var(--display);letter-spacing:-.05em}
.judge-card p{position:relative;z-index:1;max-width:620px;margin:0;color:var(--soft);font-size:17px;line-height:1.6}
.judge-role{position:relative;z-index:1;display:inline-block;margin-top:24px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font:11px/1.5 var(--mono);letter-spacing:.05em;text-transform:uppercase}
.judge-note{display:flex;align-items:center;gap:14px;margin-top:18px;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)}
.judge-note span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:rgba(105,242,176,.1);color:var(--green);font:500 20px var(--mono)}
.judge-note p{margin:0;color:var(--soft);font-size:15px;line-height:1.5}
@media(max-width:820px){.judges-grid{grid-template-columns:1fr}.judge-card{min-height:0}.judge-monogram{margin-top:30px}.judge-card h3{font-size:32px}}


/* Compact section spacing and sponsor logo links */
.section-pad{padding-top:68px!important;padding-bottom:68px!important}
.section-heading{margin-bottom:42px!important}
.judges-section{padding-top:68px!important;padding-bottom:68px!important}
.faq-section{padding-bottom:48px!important}
.register-section{padding-top:48px!important;padding-bottom:68px!important}
.sponsor-section{padding-bottom:58px!important}
.judges-section{padding-top:58px!important}
#sponsors .sponsor-brand{cursor:pointer}
#sponsors a.sponsor-brand:hover{transform:translateY(-2px)}
@media(max-width:740px){.section-pad,.judges-section{padding-top:52px!important;padding-bottom:52px!important}.section-heading{margin-bottom:34px!important}.faq-section{padding-bottom:36px!important}.register-section{padding-top:36px!important}}


/* =========================================================
   MOTION UPGRADE
   Original Cosmo Hacks colors, layout, cards and surfaces stay intact.
   Only motion behavior and the clean typography above are upgraded.
   ========================================================= */
:root{--motion-ease:cubic-bezier(.22,1,.36,1);--motion-soft:cubic-bezier(.16,1,.3,1)}
body.menu-open{overflow:hidden}

/* Cleaner soft entrance while keeping the original geometry. */
.reveal{opacity:0;transform:translateY(38px);clip-path:inset(0 0 12% 0);filter:blur(6px);transition:opacity .82s var(--motion-ease),transform .92s var(--motion-ease),clip-path 1s var(--motion-ease),filter .82s var(--motion-ease)}
.reveal.reveal-delay{transition-delay:.09s}.reveal.reveal-delay-two{transition-delay:.16s}
.reveal.is-visible,.reveal.visible{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0);filter:blur(0)}
body.loaded .hero-main.reveal,body.loaded .launch-card.reveal,body.loaded .sponsor-logo-rail-inner.reveal{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0);filter:blur(0)}
body.loaded .hero-main.reveal{transition-delay:.06s}body.loaded .launch-card.reveal{transition-delay:.18s}

/* Keep the original neon/cosmic artwork, but let it move more naturally. */
.announcement i,.live-dot{animation:signalPulse 2.4s ease-in-out infinite}
.hero-orbit-one{animation:orbitDriftA 18s ease-in-out infinite alternate}
.hero-orbit-two{animation:orbitDriftB 14s ease-in-out infinite alternate}
.planet{animation:planetFloat 5.6s var(--motion-soft) infinite alternate}
.countdown em{animation:countdownBlink 1.1s steps(1) infinite}

/* Smooth magnetic/tilt transforms from the redesign while preserving card styling. */
.brand,.hero-featured-sponsor,.contact-links a{transform:translate(var(--mag-x,0),var(--mag-y,0));transition:transform .28s var(--motion-ease),color .22s,border-color .22s,background .22s}
.launch-card{transform:perspective(1000px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .34s var(--motion-ease),border-color .22s}
.confirmed-sponsor,.sponsor-ask,.weekend-card,.feature-grid article,.register-card{--lift:0px;transform:perspective(1200px) translateY(var(--lift)) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .36s var(--motion-ease),border-color .25s,background .25s}
.confirmed-sponsor:hover,.sponsor-ask:hover{--lift:-7px}
.weekend-card:hover,.feature-grid article:hover{--lift:-4px}

/* Original sponsor tiles and rail, just slower and smoother. */
.sponsor-logo-row{animation-duration:30s;animation-timing-function:linear}
.sponsor-logo-pill{transition:transform .4s var(--motion-ease),background .25s,border-color .25s}
.sponsor-logo-pill:hover{transform:translateY(-4px) scale(1.015)}

/* FAQ answer movement. */
.faq-list details[open] p{animation:faqOpen .45s var(--motion-ease) both}
.faq-list summary:after{transition:transform .38s var(--motion-ease),color .25s}

/* Tactile ripple compatible with the upgraded JS. */
.click-ripple{animation:clickRipple .68s ease-out forwards}

/* Fallback only appears if an old package is missing a logo image. */
.logo-text-fallback{display:none;color:#07100c;font:500 14px var(--body);text-align:center}
.is-missing-image>img{display:none!important}.is-missing-image>.logo-text-fallback{display:block}
.sponsor-brand.is-missing-image>.logo-text-fallback{color:var(--ink);font-size:22px}

@keyframes signalPulse{0%,100%{opacity:.45;transform:scale(.76)}50%{opacity:1;transform:scale(1.18)}}
@keyframes orbitDriftA{from{transform:rotate(-6deg) translate3d(-10px,0,0)}to{transform:rotate(3deg) translate3d(20px,-14px,0)}}
@keyframes orbitDriftB{from{transform:rotate(10deg) translate3d(0,0,0)}to{transform:rotate(18deg) translate3d(-21px,12px,0)}}
@keyframes planetFloat{from{transform:translateY(-8px) rotate(-2deg)}to{transform:translateY(10px) rotate(2deg)}}
@keyframes countdownBlink{0%,49%{opacity:.28}50%,100%{opacity:1}}
@keyframes faqOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes clickRipple{to{transform:translate(-50%,-50%) scale(12);opacity:0}}

@media(prefers-reduced-motion:reduce){.reveal,.reveal.is-visible{opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important;transition:none!important}.announcement i,.live-dot,.hero-orbit-one,.hero-orbit-two,.planet,.countdown em,.sponsor-logo-row,.faq-list details[open] p{animation:none!important}.brand,.hero-featured-sponsor,.contact-links a,.launch-card,.confirmed-sponsor,.sponsor-ask,.weekend-card,.feature-grid article,.register-card{transform:none!important;transition:none!important}}


/* Full width sponsor rail update */
.sponsor-logo-rail-top{padding:14px 0 13px;overflow:hidden}
.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:100%;max-width:none;margin:0;padding:0 14px;gap:18px}
.sponsor-logo-rail-top .sponsor-logo-rail-label{min-width:118px;margin:0;font-size:11px}
.sponsor-logo-rail-top .sponsor-logo-marquee{flex:1;min-width:0;overflow:hidden}
.sponsor-logo-rail-top .sponsor-logo-row{width:max-content;flex:none;justify-content:flex-start;gap:14px;animation-duration:42s!important}
@media(max-width:740px){.sponsor-logo-rail-top .sponsor-logo-rail-inner{width:100%;padding:0 10px;gap:12px}.sponsor-logo-rail-top .sponsor-logo-rail-label{min-width:88px}.sponsor-logo-rail-top .sponsor-logo-row{gap:10px;animation-duration:38s!important}}


/* Quick facts single-line layout */
.quick-facts-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.quick-facts-grid>div{min-height:114px}
@media(max-width:1200px){.quick-facts-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:740px){.quick-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}


/* --- Final layout/content cleanup updates --- */

/* sponsor rail label above the logos and full-width marquee */
.sponsor-logo-rail-top{padding:18px 0 16px!important;overflow:hidden}
.sponsor-logo-rail-top .sponsor-logo-rail-inner{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.sponsor-logo-rail-top .sponsor-logo-rail-label{display:block!important;min-width:0!important;margin:0 0 12px!important;padding:0 48px!important;font-size:12px!important}
.sponsor-logo-rail-top .sponsor-logo-marquee{display:block;width:100%;overflow:hidden}
.sponsor-logo-rail-top .sponsor-logo-row{display:flex!important;width:max-content!important;justify-content:flex-start!important;gap:14px!important;animation-duration:44s!important}

/* fix devswarm centering in top rail */
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;padding:0 10px!important}

/* consistent sponsor card logo sizing */
#sponsors .confirmed-sponsor .sponsor-brand,
#sponsors .confirmed-sponsor .sponsor-brand-tin,
#sponsors .confirmed-sponsor .sponsor-brand-xyz,
#sponsors .confirmed-sponsor .sponsor-brand-momen,
#sponsors .confirmed-sponsor .sponsor-brand-protoflow,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm,
#sponsors .confirmed-sponsor .sponsor-brand-mobbin,
#sponsors .confirmed-sponsor .sponsor-brand-codecrafters,
#sponsors .confirmed-sponsor .sponsor-brand-rise,
#sponsors .confirmed-sponsor .sponsor-brand-n8n,
#sponsors .confirmed-sponsor .sponsor-brand-firecrawl,
#sponsors .confirmed-sponsor .sponsor-brand-onlyoffice{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,320px)!important;
  height:92px!important;
  min-height:92px!important;
  padding:14px 18px!important;
  margin-bottom:16px!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
#sponsors .confirmed-sponsor .sponsor-brand img,
#sponsors .confirmed-sponsor .sponsor-brand-tin img,
#sponsors .confirmed-sponsor .sponsor-brand-xyz img,
#sponsors .confirmed-sponsor .sponsor-brand-momen img,
#sponsors .confirmed-sponsor .sponsor-brand-protoflow img,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm img,
#sponsors .confirmed-sponsor .sponsor-brand-mobbin img,
#sponsors .confirmed-sponsor .sponsor-brand-codecrafters img,
#sponsors .confirmed-sponsor .sponsor-brand-rise img,
#sponsors .confirmed-sponsor .sponsor-brand-n8n img,
#sponsors .confirmed-sponsor .sponsor-brand-firecrawl img,
#sponsors .confirmed-sponsor .sponsor-brand-onlyoffice img{
  width:auto!important;
  max-width:240px!important;
  max-height:48px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
}
#sponsors .confirmed-sponsor .sponsor-brand-devswarm img{max-width:250px!important;max-height:56px!important}

/* remove circular judge initials and plus-style extras */
.judge-monogram,
.sponsor-ask-symbol,
.judge-note span{display:none!important}
.judge-card:after{display:none!important}
.judge-card h3{margin-top:18px!important}
.judge-note{padding:16px 0!important;border:none!important;background:transparent!important}
.faq-list summary:after,
.faq-list details[open] summary:after{display:none!important;content:none!important}

/* Make the top Discord and Instagram links bigger */
.hero-contact-row{gap:24px!important;align-items:center}
.hero-contact-row a:first-child{font:14px var(--mono)!important}
.hero-contact-row a:nth-child(2),
.hero-contact-row a:nth-child(3){font:600 18px var(--display)!important;letter-spacing:-.03em;color:var(--ink)!important}
.hero-contact-row a:nth-child(2):hover,
.hero-contact-row a:nth-child(3):hover{color:var(--green)!important}

/* no periods / clean section labels feel */
.section-heading h2,
.section-intro h2,
.register-card h2{letter-spacing:-.085em}

@media(max-width:1050px){
  .sponsor-logo-rail-top .sponsor-logo-rail-label{padding:0 32px!important}
}
@media(max-width:740px){
  .sponsor-logo-rail-top .sponsor-logo-rail-label{padding:0 20px!important;margin-bottom:10px!important}
  .sponsor-logo-rail-top .sponsor-logo-row{gap:10px!important;animation-duration:40s!important}
  #sponsors .confirmed-sponsor .sponsor-brand,
  #sponsors .confirmed-sponsor .sponsor-brand-tin,
  #sponsors .confirmed-sponsor .sponsor-brand-xyz,
  #sponsors .confirmed-sponsor .sponsor-brand-momen,
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow,
  #sponsors .confirmed-sponsor .sponsor-brand-devswarm,
  #sponsors .confirmed-sponsor .sponsor-brand-mobbin,
  #sponsors .confirmed-sponsor .sponsor-brand-codecrafters,
  #sponsors .confirmed-sponsor .sponsor-brand-rise,
  #sponsors .confirmed-sponsor .sponsor-brand-n8n,
  #sponsors .confirmed-sponsor .sponsor-brand-firecrawl,
  #sponsors .confirmed-sponsor .sponsor-brand-onlyoffice{width:100%!important;height:82px!important;min-height:82px!important}
  #sponsors .confirmed-sponsor .sponsor-brand img,
  #sponsors .confirmed-sponsor .sponsor-brand-tin img,
  #sponsors .confirmed-sponsor .sponsor-brand-xyz img,
  #sponsors .confirmed-sponsor .sponsor-brand-momen img,
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow img,
  #sponsors .confirmed-sponsor .sponsor-brand-devswarm img,
  #sponsors .confirmed-sponsor .sponsor-brand-mobbin img,
  #sponsors .confirmed-sponsor .sponsor-brand-codecrafters img,
  #sponsors .confirmed-sponsor .sponsor-brand-rise img,
  #sponsors .confirmed-sponsor .sponsor-brand-n8n img,
  #sponsors .confirmed-sponsor .sponsor-brand-firecrawl img,
  #sponsors .confirmed-sponsor .sponsor-brand-onlyoffice img{max-width:210px!important;max-height:42px!important}
  .hero-contact-row a:nth-child(2),
  .hero-contact-row a:nth-child(3){font-size:16px!important}
}


/* Typography cleanup: less compressed, cleaner company feel */
:root{
  --display:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --body:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/* Pull back the aggressive negative tracking across the site */
.brand{letter-spacing:-.035em!important}
.hero h1{letter-spacing:-.055em!important}
.section-heading h2,
.section-intro h2,
.register-card h2{letter-spacing:-.05em!important}
.confirmed-sponsor h3,
.sponsor-ask h3,
.idea-copy h3,
.organizer-card h3,
.feature-grid h3,
.weekend-card h3,
.prize-board h3,
.rule-row h3,
.score-list strong,
.faq-list summary,
.judge-card h3{letter-spacing:-.035em!important}

/* Body/UI text should breathe a little more */
body{letter-spacing:-.008em}
.nav-links,.hero-contact-row,.contact-links{letter-spacing:0}


/* Judging + judges + featured sponsor placement update */
#judging .score-list>div{grid-template-columns:70px minmax(210px,.8fr) minmax(300px,1.2fr)!important}
#judging .score-list p{max-width:620px}

/* Prevent Judges title from being clipped */
#judges{overflow:visible!important}
#judges .shell{overflow:visible!important}
#judges .section-heading{overflow:visible!important;padding-top:10px}
#judges .section-heading h2{overflow:visible!important;line-height:.95!important;padding-bottom:.08em!important;white-space:normal!important}

/* Put the featured ONLYOFFICE sponsor higher and make it feel primary */
.hero-featured-sponsor{margin-top:26px!important;margin-bottom:24px!important;width:min(100%,720px)!important}
.hero-featured-logo{min-width:210px}
.hero-actions{margin-top:0!important}

@media(max-width:740px){
  #judging .score-list>div{grid-template-columns:43px 1fr!important}
  #judging .score-list p{grid-column:2!important;text-align:left!important}
  #judges .section-heading h2{font-size:clamp(58px,16vw,92px)!important;line-height:1!important}
  .hero-featured-sponsor{margin-top:22px!important;margin-bottom:20px!important}
}


/* ONLYOFFICE hero placement fix */
.hero-side{display:flex;flex-direction:column;gap:18px;align-self:center;min-width:0}
.hero-side .hero-featured-sponsor{
  width:100%!important;
  margin:0!important;
  align-self:stretch;
}
.hero-side .launch-card{width:100%}
@media(max-width:1050px){
  .hero-side{max-width:680px;width:100%;gap:16px}
}
@media(max-width:740px){
  .hero-side{gap:14px}
}


/* ===== Requested August 28 refinements ===== */

/* Remove the hero featured sponsor and let the countdown panel sit higher */
.hero-side{justify-content:flex-start!important;align-self:start!important;gap:18px!important}
.hero-side .launch-card{margin-top:12px!important}
@media(max-width:1050px){.hero-side .launch-card{margin-top:12px!important}}
@media(max-width:740px){.hero-side .launch-card{margin-top:10px!important}}

/* Sponsor rail: slower, seamless, and no ONLYOFFICE appearing first */
.sponsor-logo-rail-top .sponsor-logo-row{animation-duration:46s!important}

/* Quick fact wording */
.quick-facts-grid > div:nth-child(2) .fact-number{letter-spacing:-.02em}

/* Make sponsor cards compact and consistent */
.sponsor-layout{align-items:start!important}
.sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured),
.sponsor-layout > .sponsor-ask{min-height:0!important;height:auto!important}
#sponsors .confirmed-sponsor{padding:30px!important}
#sponsors .confirmed-sponsor .sponsor-brand,
#sponsors .confirmed-sponsor .sponsor-brand-tin,
#sponsors .confirmed-sponsor .sponsor-brand-xyz,
#sponsors .confirmed-sponsor .sponsor-brand-momen,
#sponsors .confirmed-sponsor .sponsor-brand-protoflow,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm,
#sponsors .confirmed-sponsor .sponsor-brand-mobbin,
#sponsors .confirmed-sponsor .sponsor-brand-codecrafters,
#sponsors .confirmed-sponsor .sponsor-brand-rise,
#sponsors .confirmed-sponsor .sponsor-brand-n8n,
#sponsors .confirmed-sponsor .sponsor-brand-firecrawl{
  width:min(100%,320px)!important;
  height:90px!important;
  min-height:90px!important;
}
#sponsors .confirmed-sponsor .sponsor-brand img,
#sponsors .confirmed-sponsor .sponsor-brand-tin img,
#sponsors .confirmed-sponsor .sponsor-brand-xyz img,
#sponsors .confirmed-sponsor .sponsor-brand-momen img,
#sponsors .confirmed-sponsor .sponsor-brand-protoflow img,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm img,
#sponsors .confirmed-sponsor .sponsor-brand-mobbin img,
#sponsors .confirmed-sponsor .sponsor-brand-codecrafters img,
#sponsors .confirmed-sponsor .sponsor-brand-rise img,
#sponsors .confirmed-sponsor .sponsor-brand-n8n img,
#sponsors .confirmed-sponsor .sponsor-brand-firecrawl img{max-width:235px!important;max-height:46px!important}
#sponsors .codecrafters-sponsor .sponsor-brand-codecrafters{width:min(100%,320px)!important;height:90px!important;min-height:90px!important}
#sponsors .codecrafters-sponsor .sponsor-brand-codecrafters img{max-width:235px!important;max-height:46px!important}

/* Make ONLYOFFICE feel clearly primary in the sponsors section */
#sponsors .onlyoffice-featured{padding:38px 42px 40px!important;border-color:rgba(105,242,176,.42)!important;background:linear-gradient(135deg,rgba(10,23,35,.96),rgba(7,15,23,.88))!important}
#sponsors .onlyoffice-featured .onlyoffice-simple{max-width:none!important;margin-top:8px!important}
#sponsors .onlyoffice-featured .sponsor-card-top{margin-bottom:18px!important}
#sponsors .onlyoffice-featured .sponsor-brand-onlyoffice{
  width:min(100%,460px)!important;
  height:128px!important;
  min-height:128px!important;
  padding:18px 28px!important;
  border-radius:18px!important;
  margin-bottom:22px!important;
}
#sponsors .onlyoffice-featured .sponsor-brand-onlyoffice img{
  width:auto!important;
  max-width:360px!important;
  max-height:82px!important;
  height:auto!important;
}
#sponsors .onlyoffice-featured h3{font-size:72px!important;line-height:.94!important;max-width:980px!important;margin-top:0!important}
#sponsors .onlyoffice-featured p{font-size:19px!important;max-width:980px!important}
#sponsors .onlyoffice-featured .onlyoffice-about{margin-top:14px!important;font-size:17px!important;color:var(--soft)!important}
@media(max-width:1050px){
  #sponsors .onlyoffice-featured h3{font-size:58px!important}
}
@media(max-width:740px){
  #sponsors .onlyoffice-featured{padding:30px 24px 32px!important}
  #sponsors .onlyoffice-featured .sponsor-brand-onlyoffice{width:100%!important;height:104px!important;min-height:104px!important}
  #sponsors .onlyoffice-featured .sponsor-brand-onlyoffice img{max-width:290px!important;max-height:64px!important}
  #sponsors .onlyoffice-featured h3{font-size:42px!important;line-height:.98!important}
}

/* Judges: show credentials clearly, shrink boxes to content height */
#judges .section-heading{margin-bottom:34px!important}
.judges-grid{align-items:start!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
.judge-card{
  min-height:0!important;
  height:auto!important;
  padding:26px 28px 28px!important;
  overflow:hidden!important;
}
.judge-card h3{margin:18px 0 8px!important;font-size:34px!important;line-height:1.02!important}
.judge-card p{font-size:18px!important;line-height:1.35!important;color:var(--ink)!important;max-width:none!important}
.judge-role{margin-top:16px!important;padding-top:14px!important;font-size:11px!important;letter-spacing:.11em!important;color:var(--soft)!important}
@media(max-width:820px){
  .judges-grid{grid-template-columns:1fr!important}
  .judge-card h3{font-size:30px!important}
}

/* Launch card: more animated and expandable on click */
.launch-card{position:relative;cursor:pointer;isolation:isolate;transform-origin:center center}
.launch-card::after{
  content:"";
  position:absolute;
  inset:auto auto 18px 18px;
  width:116px;
  height:116px;
  border-radius:38% 62% 54% 46% / 44% 42% 58% 56%;
  background:radial-gradient(circle at 30% 30%,rgba(105,242,176,.12),rgba(99,217,242,0));
  filter:blur(10px);
  animation:blobMorph 10s ease-in-out infinite alternate;
  pointer-events:none;
  z-index:0;
}
.launch-visual:before,.launch-visual:after,.planet-orbit{animation-timing-function:cubic-bezier(.22,1,.36,1)!important}
.planet{
  border-radius:42% 58% 54% 46% / 44% 40% 60% 56%;
  animation:planetMorph 7.5s ease-in-out infinite alternate!important;
  transition:border-radius .5s var(--motion-ease),transform .5s var(--motion-ease),box-shadow .35s ease;
}
.launch-card .planet-label::after{
  content:"  •  click to expand";
  color:var(--muted);
}
.launch-card.is-expanded{border-color:rgba(105,242,176,.66)!important;box-shadow:0 18px 50px rgba(0,0,0,.26),0 0 0 1px rgba(105,242,176,.12) inset}
.launch-card.is-expanded .launch-visual{min-height:390px!important}
.launch-card.is-expanded .planet{transform:scale(1.12) rotate(8deg);box-shadow:0 0 85px rgba(105,242,176,.28),inset 0 0 42px rgba(105,242,176,.18);border-radius:58% 42% 39% 61% / 45% 58% 42% 55%}
.launch-card.is-expanded .planet-orbit-a{width:410px;height:188px}
.launch-card.is-expanded .planet-orbit-b{width:270px;height:390px}
.launch-card.is-expanded .launch-status{letter-spacing:.18em}
.launch-card.is-expanded .planet-label::after{content:"  •  click to collapse"}
.launch-card.is-expanded .launch-card-top,
.launch-card.is-expanded .launch-info{background:rgba(255,255,255,.018)}

/* More subtle motion across the site */
.confirmed-sponsor,
.sponsor-ask,
.weekend-card,
.feature-grid article,
.judge-card,
.register-card,
.organizer-card,
.idea-board{animation:cardFloat 9s ease-in-out infinite}
.confirmed-sponsor:nth-child(2n),
.weekend-card:nth-child(2n),
.judge-card:nth-child(2n),
.feature-grid article:nth-child(2n){animation-duration:11s}
.confirmed-sponsor::before,
.sponsor-ask::before,
.weekend-card::before,
.feature-grid article::before,
.judge-card::before,
.register-card::before,
.organizer-card::before,
.idea-board::before{
  content:"";
  position:absolute;
  right:-32px;
  top:-28px;
  width:150px;
  height:150px;
  border:1px solid rgba(105,242,176,.06);
  border-radius:42% 58% 63% 37% / 36% 42% 58% 64%;
  animation:shapeShift 14s ease-in-out infinite alternate;
  pointer-events:none;
}
.confirmed-sponsor:hover,
.weekend-card:hover,
.feature-grid article:hover,
.judge-card:hover,
.register-card:hover{--lift:-8px}

@keyframes planetMorph{
  0%{transform:translateY(-6px) rotate(-2deg);border-radius:42% 58% 54% 46% / 44% 40% 60% 56%}
  50%{transform:translateY(4px) rotate(3deg);border-radius:54% 46% 38% 62% / 48% 58% 42% 52%}
  100%{transform:translateY(12px) rotate(6deg);border-radius:60% 40% 56% 44% / 40% 52% 48% 60%}
}
@keyframes blobMorph{
  0%{transform:translate3d(0,0,0) scale(1);border-radius:38% 62% 54% 46% / 44% 42% 58% 56%}
  100%{transform:translate3d(28px,-18px,0) scale(1.24);border-radius:61% 39% 44% 56% / 48% 62% 38% 52%}
}
@keyframes cardFloat{
  0%,100%{transform:perspective(1200px) translateY(0) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg))}
  50%{transform:perspective(1200px) translateY(-4px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg))}
}
@keyframes shapeShift{
  0%{transform:translate(0,0) rotate(0deg);border-radius:42% 58% 63% 37% / 36% 42% 58% 64%}
  100%{transform:translate(-18px,16px) rotate(28deg);border-radius:63% 37% 47% 53% / 58% 44% 56% 42%}
}

@media(prefers-reduced-motion:reduce){
  .launch-card::after,
  .confirmed-sponsor,
  .sponsor-ask,
  .weekend-card,
  .feature-grid article,
  .judge-card,
  .register-card,
  .organizer-card,
  .idea-board,
  .confirmed-sponsor::before,
  .sponsor-ask::before,
  .weekend-card::before,
  .feature-grid article::before,
  .judge-card::before,
  .register-card::before,
  .organizer-card::before,
  .idea-board::before,
  .planet{animation:none!important}
}


/* ===== Final sponsor rail and hero card fixes ===== */

/* Sponsor rail should not show ONLYOFFICE back to back at the seam */
.sponsor-logo-rail-top .sponsor-logo-row{animation-duration:48s!important}
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice{order:5}
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl{order:10}
.sponsor-logo-rail-top .sponsor-logo-pill-tin{order:1}

/* Keep the top right launch card permanently large and polished */
.launch-card,
.launch-card.is-expanded{
  border-color:rgba(105,242,176,.64)!important;
  box-shadow:0 18px 54px rgba(0,0,0,.28),0 0 0 1px rgba(105,242,176,.12) inset;
}
.launch-card .launch-visual,
.launch-card.is-expanded .launch-visual{min-height:390px!important}
.launch-card .planet,
.launch-card.is-expanded .planet{
  transform:scale(1.1) rotate(4deg);
  box-shadow:0 0 82px rgba(105,242,176,.26),inset 0 0 42px rgba(105,242,176,.18);
  border-radius:56% 44% 40% 60% / 46% 57% 43% 54%;
}
.launch-card .planet-orbit-a,
.launch-card.is-expanded .planet-orbit-a{width:405px!important;height:188px!important}
.launch-card .planet-orbit-b,
.launch-card.is-expanded .planet-orbit-b{width:270px!important;height:388px!important}
.launch-card .planet-label::after,
.launch-card.is-expanded .planet-label::after{content:""!important}
@media(max-width:740px){
  .launch-card .launch-visual,
  .launch-card.is-expanded .launch-visual{min-height:340px!important}
}

/* Make CodeCrafters match the other sponsor logo cards */
#sponsors .codecrafters-sponsor .sponsor-brand-codecrafters{
  width:min(100%,410px)!important;
  height:108px!important;
  min-height:108px!important;
  padding:18px 24px!important;
  border-radius:14px!important;
}
#sponsors .codecrafters-sponsor .sponsor-brand-codecrafters img{
  width:auto!important;
  max-width:320px!important;
  max-height:62px!important;
  height:auto!important;
  object-fit:contain!important;
}
@media(max-width:740px){
  #sponsors .codecrafters-sponsor .sponsor-brand-codecrafters{
    width:100%!important;
    height:92px!important;
    min-height:92px!important;
    padding:14px 18px!important;
  }
  #sponsors .codecrafters-sponsor .sponsor-brand-codecrafters img{
    max-width:250px!important;
    max-height:50px!important;
  }
}


/* ===== ProtoFlow + DevSwarm uploaded asset normalization ===== */

/* top scrolling sponsor rail */
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{
  width:220px!important;
  min-width:220px!important;
  height:78px!important;
  padding:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow{background:#05070d!important}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm{background:#0b0527!important}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow img,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* keep sponsor cards visually consistent */
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){
  min-height:420px!important;
}
#sponsors .confirmed-sponsor .sponsor-brand,
#sponsors .confirmed-sponsor .sponsor-brand-tin,
#sponsors .confirmed-sponsor .sponsor-brand-xyz,
#sponsors .confirmed-sponsor .sponsor-brand-momen,
#sponsors .confirmed-sponsor .sponsor-brand-protoflow,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm,
#sponsors .confirmed-sponsor .sponsor-brand-mobbin,
#sponsors .confirmed-sponsor .sponsor-brand-codecrafters,
#sponsors .confirmed-sponsor .sponsor-brand-rise,
#sponsors .confirmed-sponsor .sponsor-brand-n8n,
#sponsors .confirmed-sponsor .sponsor-brand-firecrawl{
  width:min(100%,360px)!important;
  height:102px!important;
  min-height:102px!important;
  border-radius:14px!important;
}
#sponsors .confirmed-sponsor .sponsor-brand img,
#sponsors .confirmed-sponsor .sponsor-brand-tin img,
#sponsors .confirmed-sponsor .sponsor-brand-xyz img,
#sponsors .confirmed-sponsor .sponsor-brand-momen img,
#sponsors .confirmed-sponsor .sponsor-brand-mobbin img,
#sponsors .confirmed-sponsor .sponsor-brand-codecrafters img,
#sponsors .confirmed-sponsor .sponsor-brand-rise img,
#sponsors .confirmed-sponsor .sponsor-brand-n8n img,
#sponsors .confirmed-sponsor .sponsor-brand-firecrawl img{
  max-width:250px!important;
  max-height:50px!important;
}

/* use the uploaded ProtoFlow and DevSwarm images directly inside both sponsor sections */
#sponsors .confirmed-sponsor .sponsor-brand-protoflow,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm{
  padding:0!important;
  overflow:hidden!important;
}
#sponsors .confirmed-sponsor .sponsor-brand-protoflow{background:#05070d!important}
#sponsors .confirmed-sponsor .sponsor-brand-devswarm{background:#0b0527!important}
#sponsors .confirmed-sponsor .sponsor-brand-protoflow img,
#sponsors .confirmed-sponsor .sponsor-brand-devswarm img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* keep CodeCrafters aligned with the same logo box size */
#sponsors .codecrafters-sponsor .sponsor-brand-codecrafters{
  width:min(100%,360px)!important;
  height:102px!important;
  min-height:102px!important;
  padding:16px 22px!important;
}
#sponsors .codecrafters-sponsor .sponsor-brand-codecrafters img{
  max-width:255px!important;
  max-height:52px!important;
}

@media(max-width:740px){
  .sponsor-logo-rail-top .sponsor-logo-pill-protoflow,
  .sponsor-logo-rail-top .sponsor-logo-pill-devswarm{
    width:176px!important;
    min-width:176px!important;
    height:64px!important;
  }
  #sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){min-height:0!important}
  #sponsors .confirmed-sponsor .sponsor-brand,
  #sponsors .confirmed-sponsor .sponsor-brand-tin,
  #sponsors .confirmed-sponsor .sponsor-brand-xyz,
  #sponsors .confirmed-sponsor .sponsor-brand-momen,
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow,
  #sponsors .confirmed-sponsor .sponsor-brand-devswarm,
  #sponsors .confirmed-sponsor .sponsor-brand-mobbin,
  #sponsors .confirmed-sponsor .sponsor-brand-codecrafters,
  #sponsors .confirmed-sponsor .sponsor-brand-rise,
  #sponsors .confirmed-sponsor .sponsor-brand-n8n,
  #sponsors .confirmed-sponsor .sponsor-brand-firecrawl{
    width:100%!important;
    height:86px!important;
    min-height:86px!important;
  }
  #sponsors .confirmed-sponsor .sponsor-brand img,
  #sponsors .confirmed-sponsor .sponsor-brand-tin img,
  #sponsors .confirmed-sponsor .sponsor-brand-xyz img,
  #sponsors .confirmed-sponsor .sponsor-brand-momen img,
  #sponsors .confirmed-sponsor .sponsor-brand-mobbin img,
  #sponsors .confirmed-sponsor .sponsor-brand-codecrafters img,
  #sponsors .confirmed-sponsor .sponsor-brand-rise img,
  #sponsors .confirmed-sponsor .sponsor-brand-n8n img,
  #sponsors .confirmed-sponsor .sponsor-brand-firecrawl img{max-width:220px!important;max-height:44px!important}
}

.theme-line{
  margin-top:22px;
  color:var(--green);
  font:500 12px var(--mono);
  letter-spacing:.14em;
  text-transform:uppercase;
}
@media(max-width:740px){
  .theme-line{margin-top:18px;font-size:11px}
}


/* ===== ProtoFlow visibility fixes ===== */
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow{
  width:236px!important;
  min-width:236px!important;
  height:78px!important;
  padding:12px 16px!important;
  border-radius:16px!important;
  background:#ffffff!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow img{
  width:auto!important;
  height:auto!important;
  max-width:210px!important;
  max-height:52px!important;
  object-fit:contain!important;
  object-position:center center!important;
}

#sponsors .confirmed-sponsor .sponsor-brand-protoflow{
  width:min(100%,380px)!important;
  height:112px!important;
  min-height:112px!important;
  padding:14px 20px!important;
  border-radius:14px!important;
  background:#ffffff!important;
  overflow:hidden!important;
}
#sponsors .confirmed-sponsor .sponsor-brand-protoflow img{
  width:auto!important;
  height:auto!important;
  max-width:340px!important;
  max-height:70px!important;
  object-fit:contain!important;
  object-position:center center!important;
}

@media(max-width:740px){
  .sponsor-logo-rail-top .sponsor-logo-pill-protoflow{
    width:190px!important;
    min-width:190px!important;
    height:68px!important;
    padding:10px 14px!important;
  }
  .sponsor-logo-rail-top .sponsor-logo-pill-protoflow img{
    max-width:168px!important;
    max-height:44px!important;
  }
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow{
    width:100%!important;
    height:92px!important;
    min-height:92px!important;
    padding:12px 16px!important;
  }
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow img{
    max-width:280px!important;
    max-height:58px!important;
  }
}


/* ===== Final polish updates ===== */
.hero h1 em{content:none}

/* Make judging and rules scroll as one section */
.judging-section .section-intro,
.rules-section .section-intro{
  position:static !important;
  top:auto !important;
}

/* ONLYOFFICE featured section cleaner layout */
#sponsors .onlyoffice-featured{
  padding:42px 44px 40px !important;
}
#sponsors .onlyoffice-featured .onlyoffice-simple{
  display:grid !important;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr) !important;
  grid-template-areas:
    'logo title'
    'logo primary'
    'logo secondary'
    'logo points' !important;
  column-gap:38px !important;
  row-gap:12px !important;
  align-items:start !important;
  max-width:none !important;
  margin-top:6px !important;
}
#sponsors .onlyoffice-featured .sponsor-brand-onlyoffice{
  grid-area:logo !important;
  width:100% !important;
  max-width:360px !important;
  min-width:0 !important;
  height:120px !important;
  min-height:120px !important;
  padding:18px 26px !important;
  border-radius:16px !important;
  align-self:start !important;
  justify-self:start !important;
}
#sponsors .onlyoffice-featured .sponsor-brand-onlyoffice img{
  max-width:300px !important;
  max-height:66px !important;
  width:auto !important;
  height:auto !important;
}
#sponsors .onlyoffice-featured h3{
  grid-area:title !important;
  font-size:clamp(52px,6vw,80px) !important;
  line-height:.94 !important;
  margin:0 !important;
  max-width:none !important;
}
#sponsors .onlyoffice-featured p:first-of-type{
  grid-area:primary !important;
  font-size:21px !important;
  line-height:1.45 !important;
  margin:0 !important;
  max-width:860px !important;
}
#sponsors .onlyoffice-featured .onlyoffice-about{
  grid-area:secondary !important;
  margin:0 !important;
  font-size:18px !important;
  line-height:1.55 !important;
  color:var(--soft) !important;
  max-width:820px !important;
}
#sponsors .onlyoffice-featured .onlyoffice-points{
  grid-area:points !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:4px !important;
}
#sponsors .onlyoffice-featured .onlyoffice-points span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:38px !important;
  padding:8px 14px !important;
  border:1px solid rgba(105,242,176,.25) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.03) !important;
  color:var(--ink) !important;
  font:500 13px var(--mono) !important;
  letter-spacing:.04em !important;
}

/* ProtoFlow should be slightly smaller and fit better */
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow,
.sponsor-logo-pill-protoflow{
  width:220px !important;
  min-width:220px !important;
  height:74px !important;
  padding:12px 16px !important;
  overflow:hidden !important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow img,
.sponsor-logo-pill-protoflow img{
  max-width:180px !important;
  max-height:46px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}
#sponsors .confirmed-sponsor .sponsor-brand-protoflow{
  width:min(100%,330px) !important;
  height:100px !important;
  min-height:100px !important;
  padding:14px 20px !important;
  border-radius:14px !important;
  overflow:hidden !important;
}
#sponsors .confirmed-sponsor .sponsor-brand-protoflow img{
  max-width:270px !important;
  max-height:58px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}

@media (max-width: 1050px){
  #sponsors .onlyoffice-featured .onlyoffice-simple{
    grid-template-columns:1fr !important;
    grid-template-areas:
      'logo'
      'title'
      'primary'
      'secondary'
      'points' !important;
  }
  #sponsors .onlyoffice-featured .sponsor-brand-onlyoffice{
    max-width:380px !important;
  }
}

@media (max-width: 740px){
  #sponsors .onlyoffice-featured{
    padding:30px 22px 28px !important;
  }
  #sponsors .onlyoffice-featured .sponsor-brand-onlyoffice{
    height:96px !important;
    min-height:96px !important;
    padding:14px 18px !important;
  }
  #sponsors .onlyoffice-featured .sponsor-brand-onlyoffice img{
    max-width:245px !important;
    max-height:54px !important;
  }
  #sponsors .onlyoffice-featured h3{
    font-size:42px !important;
  }
  #sponsors .onlyoffice-featured p:first-of-type{
    font-size:18px !important;
  }
  #sponsors .onlyoffice-featured .onlyoffice-about{
    font-size:16px !important;
  }
  .sponsor-logo-pill-protoflow,
  .sponsor-logo-rail-top .sponsor-logo-pill-protoflow{
    width:188px !important;
    min-width:188px !important;
    height:66px !important;
    padding:10px 12px !important;
  }
  .sponsor-logo-pill-protoflow img,
  .sponsor-logo-rail-top .sponsor-logo-pill-protoflow img{
    max-width:154px !important;
    max-height:40px !important;
  }
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow{
    width:100% !important;
    height:88px !important;
    min-height:88px !important;
    padding:12px 14px !important;
  }
  #sponsors .confirmed-sponsor .sponsor-brand-protoflow img{
    max-width:230px !important;
    max-height:50px !important;
  }
}


/* Rise Research and Formaloo updated logos */
.sponsor-logo-pill-rise,
.sponsor-logo-pill-formaloo{
  min-width:150px;
  height:58px;
  padding:7px 14px;
}
.sponsor-logo-pill-rise img{
  max-width:160px;
  max-height:42px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.sponsor-logo-pill-formaloo img{
  max-width:150px;
  max-height:42px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.sponsor-brand-rise,
.sponsor-brand-formaloo{
  width:max-content;
  max-width:100%;
  padding:10px 16px;
  border-radius:12px;
  background:rgba(255,255,255,.95);
}
.sponsor-brand-rise img{
  max-width:320px;
  max-height:80px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.sponsor-brand-formaloo img{
  max-width:330px;
  max-height:80px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.formaloo-sponsor .sponsor-link{color:var(--green)}
@media (max-width: 740px){
  .sponsor-logo-pill-formaloo,
  .sponsor-logo-pill-rise{
    min-width:132px;
    height:54px;
    padding:6px 10px;
  }
  .sponsor-logo-pill-formaloo img,
  .sponsor-logo-pill-rise img{
    max-width:130px;
    max-height:34px;
  }
  .sponsor-brand-formaloo img,
  .sponsor-brand-rise img{
    max-width:250px;
    max-height:62px;
  }
}


/* === Sponsor logo consistency patch === */
.sponsor-logo-row{justify-content:flex-start!important;gap:14px!important}
.sponsor-logo-pill,
.sponsor-logo-pill-tin,
.sponsor-logo-pill-mobbin,
.sponsor-logo-pill-codecrafters,
.sponsor-logo-pill-rise,
.sponsor-logo-pill-formaloo,
.sponsor-logo-pill-n8n,
.sponsor-logo-pill-firecrawl,
.sponsor-logo-pill-onlyoffice,
.sponsor-logo-pill-protoflow,
.sponsor-logo-pill-devswarm{
  flex:0 0 auto!important;
  width:270px!important;
  min-width:270px!important;
  height:96px!important;
  padding:14px 20px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:#f6f6f6!important;
}
.sponsor-logo-pill img,
.sponsor-logo-pill-tin img,
.sponsor-logo-pill-mobbin img,
.sponsor-logo-pill-codecrafters img,
.sponsor-logo-pill-rise img,
.sponsor-logo-pill-formaloo img,
.sponsor-logo-pill-n8n img,
.sponsor-logo-pill-firecrawl img,
.sponsor-logo-pill-onlyoffice img,
.sponsor-logo-pill-protoflow img,
.sponsor-logo-pill-devswarm img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
}
.sponsor-logo-pill-devswarm{background:#0b0527!important;padding:8px!important}
.sponsor-logo-pill-protoflow{padding:12px 18px!important}
.sponsor-logo-pill-protoflow img{width:92%!important;height:92%!important}
.sponsor-logo-pill-onlyoffice{border:1px solid rgba(105,242,176,.28)!important;box-shadow:0 0 0 1px rgba(255,255,255,.06) inset!important}
.sponsor-logo-pill-rise,.sponsor-logo-pill-formaloo{background:#f6f6f6!important}
.sponsor-logo-pill .logo-fallback{display:none!important}

.sponsor-brand,
.sponsor-brand-tin,
.sponsor-brand-xyz,
.sponsor-brand-momen,
.sponsor-brand-protoflow,
.sponsor-brand-devswarm,
.sponsor-brand-mobbin,
.sponsor-brand-codecrafters,
.sponsor-brand-rise,
.sponsor-brand-formaloo,
.sponsor-brand-n8n,
.sponsor-brand-firecrawl,
.sponsor-brand-onlyoffice{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,430px)!important;
  max-width:100%!important;
  height:118px!important;
  min-height:118px!important;
  padding:16px 24px!important;
  border-radius:16px!important;
  background:#f6f6f6!important;
  overflow:hidden!important;
}
.sponsor-brand img,
.sponsor-brand-tin img,
.sponsor-brand-xyz img,
.sponsor-brand-momen img,
.sponsor-brand-protoflow img,
.sponsor-brand-devswarm img,
.sponsor-brand-mobbin img,
.sponsor-brand-codecrafters img,
.sponsor-brand-rise img,
.sponsor-brand-formaloo img,
.sponsor-brand-n8n img,
.sponsor-brand-firecrawl img,
.sponsor-brand-onlyoffice img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
}
.sponsor-brand-devswarm{background:#0b0527!important;padding:8px!important}
.sponsor-brand-protoflow img{width:92%!important;height:92%!important}
.sponsor-brand-codecrafters img{width:92%!important;height:92%!important}
.sponsor-brand-rise img,.sponsor-brand-formaloo img{width:96%!important;height:96%!important}
.onlyoffice-featured .sponsor-brand-onlyoffice{
  width:min(100%,520px)!important;
  height:132px!important;
  min-height:132px!important;
  padding:18px 28px!important;
  border-radius:18px!important;
}
.onlyoffice-featured .sponsor-brand-onlyoffice img{width:96%!important;height:96%!important}

@media(max-width:740px){
  .sponsor-logo-row{gap:10px!important}
  .sponsor-logo-pill,
  .sponsor-logo-pill-tin,
  .sponsor-logo-pill-mobbin,
  .sponsor-logo-pill-codecrafters,
  .sponsor-logo-pill-rise,
  .sponsor-logo-pill-formaloo,
  .sponsor-logo-pill-n8n,
  .sponsor-logo-pill-firecrawl,
  .sponsor-logo-pill-onlyoffice,
  .sponsor-logo-pill-protoflow,
  .sponsor-logo-pill-devswarm{
    width:220px!important;
    min-width:220px!important;
    height:82px!important;
    padding:12px 16px!important;
  }
  .sponsor-brand,
  .sponsor-brand-tin,
  .sponsor-brand-xyz,
  .sponsor-brand-momen,
  .sponsor-brand-protoflow,
  .sponsor-brand-devswarm,
  .sponsor-brand-mobbin,
  .sponsor-brand-codecrafters,
  .sponsor-brand-rise,
  .sponsor-brand-formaloo,
  .sponsor-brand-n8n,
  .sponsor-brand-firecrawl,
  .sponsor-brand-onlyoffice{
    width:min(100%,100%)!important;
    height:100px!important;
    min-height:100px!important;
    padding:14px 18px!important;
  }
  .onlyoffice-featured .sponsor-brand-onlyoffice{
    height:114px!important;
    min-height:114px!important;
  }
}


/* ===== Full website check cleanup ===== */
:root{
  --display:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --body:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/* Preserve DOM order in the marquee so cloned items never group by sponsor-specific order */
.sponsor-logo-row > *{order:0!important}
.sponsor-logo-rail-top .sponsor-logo-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  width:max-content!important;
  min-width:max-content!important;
}

/* Sponsor cards should be consistent without being taller than their content needs */
#sponsors .sponsor-layout{align-items:stretch!important}
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){
  min-height:0!important;
  height:auto!important;
  padding-bottom:84px!important;
}
#sponsors .sponsor-layout > .sponsor-ask{
  min-height:0!important;
  height:auto!important;
}

/* Three confirmed judges now fit cleanly on desktop */
#judges .judges-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
#judges .judge-card{min-height:0!important;height:auto!important;padding:26px 26px 28px!important}
#judges .judge-card h3{font-size:32px!important}
#judges .judge-card p{font-size:17px!important}

.schedule-extra-workshop{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  column-gap:28px;
  row-gap:6px;
  align-items:center;
  margin-top:18px;
  padding:22px 4px 2px;
  border-top:1px solid var(--line);
}
.schedule-extra-workshop > span{
  grid-row:1 / span 2;
  color:var(--green);
  font:500 11px var(--mono);
  letter-spacing:.12em;
}
.schedule-extra-workshop strong{
  font:500 22px var(--display);
  letter-spacing:-.035em;
}
.schedule-extra-workshop p{color:var(--soft);font-size:16px}

@media(max-width:1050px){
  #judges .judges-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:740px){
  .sponsor-logo-rail-top .sponsor-logo-row{display:flex!important;grid-template-columns:none!important}
  #judges .judges-grid{grid-template-columns:1fr!important}
  .schedule-extra-workshop{grid-template-columns:1fr;gap:8px}
  .schedule-extra-workshop > span{grid-row:auto}
}

/* =========================================================
   FINAL SPONSOR LOGO SYSTEM
   Uses the exact files currently in /assets on GitHub.
   Keep this block at the END of style.css so it wins over
   older sponsor-specific sizing rules above.
   ========================================================= */

/* One consistent footprint for every logo in the scrolling rail */
.sponsor-logo-rail-top .sponsor-logo-row {
  align-items: center !important;
  gap: 14px !important;
}

.sponsor-logo-rail-top .sponsor-logo-pill,
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice,
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters,
.sponsor-logo-rail-top .sponsor-logo-pill-rise,
.sponsor-logo-rail-top .sponsor-logo-pill-formaloo,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl {
  box-sizing: border-box !important;
  flex: 0 0 220px !important;
  width: 220px !important;
  min-width: 220px !important;
  height: 82px !important;
  padding: 12px 18px !important;
  border: 0 !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #fff !important;
}

.sponsor-logo-rail-top .sponsor-logo-pill img,
.sponsor-logo-rail-top .sponsor-logo-pill-tin img,
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow img,
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice img,
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin img,
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters img,
.sponsor-logo-rail-top .sponsor-logo-pill-rise img,
.sponsor-logo-rail-top .sponsor-logo-pill-formaloo img,
.sponsor-logo-rail-top .sponsor-logo-pill-n8n img,
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl img {
  display: block !important;
  width: 90% !important;
  height: 76% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: none !important;
}

/* Dark-logo canvases need a matching dark tile so no inner rectangle appears */
.sponsor-logo-rail-top .sponsor-logo-pill-tin {
  background: #07131a !important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow {
  background: #05070d !important;
  padding: 9px 15px !important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm {
  background: #12072f !important;
  padding: 0 !important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-devswarm img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Per-logo optical corrections — same tile size, similar visual weight */
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow img { width: 94% !important; height: 82% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-mobbin img { width: 88% !important; height: 72% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-codecrafters img { width: 88% !important; height: 70% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-rise img { width: 94% !important; height: 82% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-formaloo img { width: 94% !important; height: 80% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice img { width: 88% !important; height: 68% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-n8n img { width: 86% !important; height: 68% !important; }
.sponsor-logo-rail-top .sponsor-logo-pill-firecrawl img { width: 82% !important; height: 66% !important; }

/* One consistent footprint for normal sponsor cards */
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-tin,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-xyz,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-momen,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-devswarm,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-mobbin,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-codecrafters,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-rise,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-formaloo,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-n8n,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-firecrawl {
  box-sizing: border-box !important;
  width: min(100%, 360px) !important;
  max-width: 100% !important;
  height: 112px !important;
  min-height: 112px !important;
  padding: 15px 22px !important;
  border: 0 !important;
  border-radius: 15px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #fff !important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-tin img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-xyz img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-momen img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-mobbin img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-codecrafters img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-rise img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-formaloo img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-n8n img,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-firecrawl img {
  display: block !important;
  width: 90% !important;
  height: 78% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: none !important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-tin {
  background: #07131a !important;
}
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow {
  background: #05070d !important;
  padding: 11px 18px !important;
}
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-devswarm {
  background: #12072f !important;
  padding: 0 !important;
}
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-devswarm img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow img { width: 94% !important; height: 84% !important; }
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-mobbin img { width: 88% !important; height: 72% !important; }
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-codecrafters img { width: 88% !important; height: 72% !important; }
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-rise img { width: 95% !important; height: 84% !important; }
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-formaloo img { width: 95% !important; height: 82% !important; }
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-n8n img { width: 88% !important; height: 72% !important; }
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-firecrawl img { width: 84% !important; height: 68% !important; }

/* Keep the featured ONLYOFFICE card visibly larger without breaking the logo system */
#sponsors .onlyoffice-featured .sponsor-brand-onlyoffice {
  width: min(100%, 410px) !important;
  max-width: 100% !important;
  height: 126px !important;
  min-height: 126px !important;
  padding: 18px 26px !important;
  background: #fff !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
#sponsors .onlyoffice-featured .sponsor-brand-onlyoffice img {
  width: 88% !important;
  height: 72% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
}

/* Exact SVG is present now, so never show the old text fallback */
.sponsor-logo-pill-mobbin .logo-fallback,
.sponsor-logo-pill-mobbin .logo-text-fallback {
  display: none !important;
}

@media (max-width: 740px) {
  .sponsor-logo-rail-top .sponsor-logo-pill,
  .sponsor-logo-rail-top .sponsor-logo-pill-tin,
  .sponsor-logo-rail-top .sponsor-logo-pill-protoflow,
  .sponsor-logo-rail-top .sponsor-logo-pill-onlyoffice,
  .sponsor-logo-rail-top .sponsor-logo-pill-devswarm,
  .sponsor-logo-rail-top .sponsor-logo-pill-mobbin,
  .sponsor-logo-rail-top .sponsor-logo-pill-codecrafters,
  .sponsor-logo-rail-top .sponsor-logo-pill-rise,
  .sponsor-logo-rail-top .sponsor-logo-pill-formaloo,
  .sponsor-logo-rail-top .sponsor-logo-pill-n8n,
  .sponsor-logo-rail-top .sponsor-logo-pill-firecrawl {
    flex-basis: 178px !important;
    width: 178px !important;
    min-width: 178px !important;
    height: 70px !important;
    padding: 10px 14px !important;
  }

  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-tin,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-xyz,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-momen,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-devswarm,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-mobbin,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-codecrafters,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-rise,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-formaloo,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-n8n,
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-firecrawl {
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
    padding: 13px 17px !important;
  }
}


/* ===== FINAL TIN + PROTOFLOW LOGO FIX ===== */
/* ProtoFlow: remove the dark frame around the white logo asset */
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow,
#sponsors .sponsor-brand-protoflow{
  background:#ffffff!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow{
  padding:10px 14px!important;
}
#sponsors .sponsor-brand-protoflow{
  padding:12px 18px!important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-protoflow img,
#sponsors .sponsor-brand-protoflow img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}

/* Tin: the new square logo has whitespace, so enlarge and crop only the blank space */
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
#sponsors .sponsor-brand-tin{
  background:#f8f5ef!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-tin{
  padding:0!important;
}
.sponsor-logo-rail-top .sponsor-logo-pill-tin img{
  width:200px!important;
  height:200px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  flex:none!important;
}
#sponsors .sponsor-brand-tin{
  padding:0!important;
}
#sponsors .sponsor-brand-tin img{
  width:260px!important;
  height:260px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  flex:none!important;
}

@media(max-width:740px){
  .sponsor-logo-rail-top .sponsor-logo-pill-tin img{
    width:170px!important;
    height:170px!important;
  }
  #sponsors .sponsor-brand-tin img{
    width:230px!important;
    height:230px!important;
  }
}


/* ===== TIN COMPUTER HORIZONTAL WORDMARK FINAL ===== */
.sponsor-logo-rail-top .sponsor-logo-pill-tin,
#sponsors .sponsor-brand-tin{
  background:#ffffff!important;
  border:0!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}

.sponsor-logo-rail-top .sponsor-logo-pill-tin{
  padding:12px 18px!important;
}

.sponsor-logo-rail-top .sponsor-logo-pill-tin img{
  width:92%!important;
  height:78%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  flex:none!important;
}

#sponsors .sponsor-brand-tin{
  padding:14px 22px!important;
}

#sponsors .sponsor-brand-tin img{
  width:92%!important;
  height:80%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  flex:none!important;
}

@media(max-width:740px){
  .sponsor-logo-rail-top .sponsor-logo-pill-tin img{
    width:90%!important;
    height:76%!important;
  }
  #sponsors .sponsor-brand-tin img{
    width:90%!important;
    height:78%!important;
  }
}


/* ===== EQUAL SPONSOR CARDS + TIN CARD FINAL FIX ===== */

/* All normal sponsor cards use one compact footprint */
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){
  box-sizing:border-box!important;
  height:405px!important;
  min-height:405px!important;
  max-height:405px!important;
  padding:28px 30px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:12px!important;
  overflow:hidden!important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-card-top{
  flex:0 0 auto!important;
  margin-bottom:4px!important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand{
  flex:0 0 96px!important;
  width:330px!important;
  max-width:100%!important;
  height:96px!important;
  min-height:96px!important;
  margin:0 0 10px!important;
  padding:13px 20px!important;
  border-radius:14px!important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) h3{
  flex:0 0 auto!important;
  margin:0!important;
  font-size:clamp(35px,3vw,47px)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) p{
  flex:0 0 auto!important;
  margin:0!important;
  max-width:100%!important;
  font-size:17px!important;
  line-height:1.45!important;
}

#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-link{
  margin-top:auto!important;
  max-width:100%!important;
  font-size:13px!important;
  line-height:1.4!important;
}

/* Tin Computer: force a clean white plate in the sponsor card */
#sponsors .tin-sponsor .sponsor-brand-tin{
  background:#ffffff!important;
  border:0!important;
  box-shadow:none!important;
  padding:14px 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

#sponsors .tin-sponsor .sponsor-brand-tin img{
  display:block!important;
  width:94%!important;
  height:78%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}

/* Keep the other logo plates visually aligned */
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-mobbin,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-codecrafters,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-rise,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-formaloo,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-n8n,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-firecrawl,
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-momen{
  background:#ffffff!important;
}

/* DevSwarm keeps its branded dark image */
#sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-devswarm{
  background:#130734!important;
  padding:0!important;
}

/* Tin and ProtoFlow should use the available space without looking oversized */
#sponsors .tin-sponsor .sponsor-brand-tin img{width:90%!important;height:76%!important}
#sponsors .protoflow-sponsor .sponsor-brand-protoflow img{width:88%!important;height:76%!important}

/* Tablet and mobile: same visual style, but height can adapt to prevent clipping */
@media(max-width:1050px){
  #sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){
    height:370px!important;
    min-height:370px!important;
    max-height:370px!important;
  }
}

@media(max-width:740px){
  #sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){
    height:auto!important;
    min-height:340px!important;
    max-height:none!important;
    padding:24px!important;
  }
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand{
    width:100%!important;
    height:88px!important;
    min-height:88px!important;
    flex-basis:88px!important;
  }
  #sponsors .confirmed-sponsor:not(.onlyoffice-featured) h3{
    font-size:36px!important;
  }
}


/* ===== REQUESTED FINAL LAYOUT FIX ===== */

/* Match the Become a Sponsor card to the normal sponsor card beside it */
#sponsors .sponsor-layout > .sponsor-ask{
  box-sizing:border-box!important;
  height:405px!important;
  min-height:405px!important;
  max-height:405px!important;
  padding:28px 30px!important;
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:14px!important;
  overflow:hidden!important;
}

#sponsors .sponsor-layout > .sponsor-ask .button{
  margin-top:auto!important;
}

/* Tin sponsor CARD only: use the square tin.png cleanly.
   Scrolling rail continues using the horizontal SVG. */
#sponsors .tin-sponsor .sponsor-brand-tin{
  width:330px!important;
  max-width:100%!important;
  height:96px!important;
  min-height:96px!important;
  padding:0!important;
  background:#f8f5ef!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

#sponsors .tin-sponsor .sponsor-brand-tin img{
  width:190px!important;
  height:190px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

/* Add breathing room between the large Judges heading and judge cards */
.judges-section .section-heading{
  margin-bottom:104px!important;
}

.judges-section .judges-grid{
  margin-top:0!important;
}

/* Keep the oversized Sponsors heading clear of the featured card. */
.sponsor-section .section-heading{
  margin-bottom:104px!important;
}

/* Subtle per-letter motion for section headings. */
.section-heading h2,
.section-intro h2{
  cursor:default;
}
.hero h1{cursor:default}
.heading-letter{
  display:inline-block;
  transition:transform .35s var(--motion-ease);
}
.heading-word{display:inline-block;white-space:nowrap}
.section-heading h2:hover .heading-letter,
.section-intro h2:hover .heading-letter,
.hero h1:hover .heading-letter{
  transform:translateY(-.09em);
  transition-delay:calc(var(--letter-index) * 22ms);
}
.section-heading h2:hover .heading-word .heading-letter:nth-child(odd),
.section-intro h2:hover .heading-word .heading-letter:nth-child(odd),
.hero h1:hover .heading-word .heading-letter:nth-child(odd){transform:translateY(-.045em) rotate(-.5deg)}
.section-heading h2:hover .heading-word .heading-letter:nth-child(even),
.section-intro h2:hover .heading-word .heading-letter:nth-child(even),
.hero h1:hover .heading-word .heading-letter:nth-child(even){transform:translateY(-.045em) rotate(.5deg)}

@media(prefers-reduced-motion:reduce){
  .heading-letter{transition:none}
  .section-heading h2:hover .heading-letter,
  .section-intro h2:hover .heading-letter,
  .hero h1:hover .heading-letter{transform:none}
}

/* Sponsor card headers do not need a decorative arrow. */
.sponsor-card-top>b{
  display:none!important;
}

/* Lift the Judges heading clear of the cards below it. */
.judges-section .section-heading{
  position:relative;
  top:-24px;
}

@media(max-width:1050px){
  #sponsors .sponsor-layout > .sponsor-ask{
    height:370px!important;
    min-height:370px!important;
    max-height:370px!important;
  }

  .judges-section .section-heading{
    margin-bottom:82px!important;
  }
}

@media(max-width:740px){
  #sponsors .sponsor-layout > .sponsor-ask{
    height:auto!important;
    min-height:340px!important;
    max-height:none!important;
    padding:24px!important;
  }

  #sponsors .tin-sponsor .sponsor-brand-tin{
    width:100%!important;
    height:88px!important;
    min-height:88px!important;
  }

  #sponsors .tin-sponsor .sponsor-brand-tin img{
    width:170px!important;
    height:170px!important;
  }

  .judges-section .section-heading{
    margin-bottom:64px!important;
    top:-16px;
  }

  .sponsor-section .section-heading{
    margin-bottom:64px!important;
  }
}


/* ===== Final compact sponsor cards + current schedule fixes ===== */
#sponsors .onlyoffice-featured .onlyoffice-points span:nth-child(2){text-transform:none!important}

#sponsors .sponsor-layout{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  gap:16px!important;
}
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured),
#sponsors .sponsor-layout > .sponsor-ask{
  flex:1 1 calc(50% - 8px)!important;
  width:calc(50% - 8px)!important;
  min-height:0!important;
  height:auto!important;
  padding:28px 28px 24px!important;
  align-self:flex-start!important;
}
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:12px!important;
}
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) h3,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) p,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-link{
  margin-top:0!important;
  margin-bottom:0!important;
}
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-tin,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-xyz,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-momen,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-protoflow,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-devswarm,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-mobbin,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-codecrafters,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-rise,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-formaloo,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-n8n,
#sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured) .sponsor-brand-firecrawl{
  margin-bottom:4px!important;
}
#sponsors .sponsor-layout > .sponsor-ask{
  padding-bottom:28px!important;
}
.schedule-note{
  margin-top:16px;
  color:var(--soft);
  font-size:16px;
}
@media (max-width: 1050px){
  #sponsors .sponsor-layout > .confirmed-sponsor:not(.onlyoffice-featured),
  #sponsors .sponsor-layout > .sponsor-ask{
    flex-basis:100%!important;
    width:100%!important;
  }
}

/* Final interest-form and Tin Computer wordmark overrides. */
.interest-form{display:grid;grid-template-columns:1fr;gap:10px;width:min(100%,390px)}
.interest-form label{color:var(--soft);font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.interest-form input{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:10px;background:rgba(2,7,13,.52);color:var(--ink);font:15px var(--body);outline:none}
.interest-form input::placeholder{color:var(--muted)}
.interest-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(105,242,176,.12)}
.interest-form .button{width:100%;margin-top:4px;border:0;cursor:pointer}
.form-note{color:var(--muted);font-size:12px;line-height:1.45}
#sponsors .tin-sponsor .sponsor-brand-tin{width:330px!important;max-width:100%!important;height:96px!important;min-height:96px!important;padding:16px 22px!important;background:#f8f5ef!important}
#sponsors .tin-sponsor .sponsor-brand-tin img{width:100%!important;height:100%!important;max-width:280px!important;max-height:58px!important;object-fit:contain!important;object-position:center!important}
@media(max-width:740px){#sponsors .tin-sponsor .sponsor-brand-tin{width:100%!important;height:88px!important;min-height:88px!important}#sponsors .tin-sponsor .sponsor-brand-tin img{max-width:250px!important;max-height:52px!important}}

/* Keep the Tin card visually identical to the white sponsor-rail tile. */
#sponsors .tin-sponsor a.sponsor-brand-tin{
  background:#fff!important;
  background-color:#fff!important;
  border-color:#fff!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}

/* Keep the full Tin Computer wordmark readable on the sponsor detail card. */
#sponsors .tin-sponsor a.sponsor-brand-tin{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:330px!important;
  max-width:100%!important;
  height:96px!important;
  min-height:96px!important;
  padding:16px 22px!important;
  background:#fff!important;
  background-image:none!important;
  border:0!important;
  border-radius:12px!important;
  box-shadow:none!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
#sponsors .tin-sponsor a.sponsor-brand-tin img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:280px!important;
  max-height:58px!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}

/* This selector deliberately outranks the older dark Tin-card rule above. */
#sponsors .confirmed-sponsor.tin-sponsor:not(.onlyoffice-featured) a.sponsor-brand-tin{
  background:#fff!important;
  background-color:#fff!important;
  background-image:none!important;
  border-color:#fff!important;
}

/* Keep document scrolling entirely in the browser's native control. */
html{scroll-behavior:auto!important;scroll-snap-type:none!important}
body{overscroll-behavior-y:auto;touch-action:pan-y}

/* A responsive ambient layer; the canvas handles the detailed star movement. */
.cursor-glow{width:340px;height:340px;background:rgba(77,220,192,.12);filter:blur(64px);transition:opacity .3s ease,background .3s ease}
.cursor-glow.is-hovering{background:rgba(105,242,176,.19)}
@media(max-width:740px),(prefers-reduced-motion:reduce){.cursor-glow{display:none}}

/* Final interaction polish: motion stays content-first rather than decorative. */
.nav-links a:not(.nav-button){position:relative}
.nav-links a:not(.nav-button):after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:var(--green);transform:scaleX(0);transform-origin:right;transition:transform .32s var(--motion-ease)}
.nav-links a:not(.nav-button):hover:after,.nav-links a:not(.nav-button).active:after{transform:scaleX(1);transform-origin:left}
.site-header{transition:padding .28s var(--motion-ease),background .28s ease,border-color .28s ease,box-shadow .28s ease}
.site-header.scrolled{box-shadow:0 12px 34px rgba(0,0,0,.16)}

.confirmed-sponsor:before,.weekend-card:before,.judge-card:before{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;background:radial-gradient(320px circle at var(--card-x,50%) var(--card-y,50%),rgba(105,242,176,.12),transparent 62%);opacity:0;transition:opacity .38s ease}
.confirmed-sponsor:hover:before,.weekend-card:hover:before,.judge-card:hover:before{opacity:1}
.confirmed-sponsor>*,.weekend-card>*,.judge-card>*{position:relative;z-index:1}
.sponsor-logo-rail-top{margin-top:16px;background:linear-gradient(90deg,rgba(105,242,176,.025),transparent 28%,transparent 72%,rgba(99,217,242,.03))}
@media(prefers-reduced-motion:reduce){.nav-links a:not(.nav-button):after{transition:none}.confirmed-sponsor:before,.weekend-card:before,.judge-card:before{display:none}}

/* Premium finishing pass: every motion has a clear interaction purpose. */
.scroll-progress{transition:transform .12s linear}
body.loaded .hero h1{animation:hero-title-arrive .9s var(--motion-ease) both}
body.loaded .hero-lead{animation:hero-copy-arrive .8s .16s var(--motion-ease) both}
body.loaded .hero-actions{animation:hero-copy-arrive .8s .25s var(--motion-ease) both}
.theme-line{position:relative;display:inline-flex;overflow:hidden}
.theme-line:after{content:"";position:absolute;inset:0 auto 0 -120%;width:72%;background:linear-gradient(90deg,transparent,rgba(105,242,176,.45),transparent);transform:skewX(-20deg);animation:signal-sweep 7s 1.8s ease-in-out infinite}

.quick-facts-grid>div{transition:background .32s ease,transform .32s var(--motion-ease)}
.quick-facts-grid>div:hover{background:rgba(105,242,176,.045);transform:translateY(-3px)}
.timeline>div{transition:background .25s ease,padding .25s var(--motion-ease),border-color .25s ease}
.timeline>div:hover{padding-left:12px;background:rgba(105,242,176,.045);border-color:rgba(105,242,176,.28)}
.timeline>div:hover time{color:#c8ffdf}
.faq-list details{transition:background .3s ease,padding .3s var(--motion-ease)}
.faq-list details[open]{padding-left:16px;padding-right:16px;background:rgba(105,242,176,.035)}
.faq-list summary{transition:color .25s ease}
.faq-list details:hover summary,.faq-list details[open] summary{color:#d9f7e8}

.sponsor-logo-rail-top .sponsor-logo-marquee{mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
@keyframes hero-title-arrive{from{opacity:0;transform:translateY(42px) scale(.97);filter:blur(9px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes hero-copy-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes signal-sweep{0%,72%{left:-120%}88%,100%{left:145%}}
@media(max-width:740px){.sponsor-logo-rail-top .sponsor-logo-marquee{mask-image:linear-gradient(90deg,#000 2%,#000 98%)}}
@media(prefers-reduced-motion:reduce){body.loaded .hero h1,body.loaded .hero-lead,body.loaded .hero-actions,.theme-line:after{animation:none}.quick-facts-grid>div:hover,.timeline>div:hover{transform:none}.scroll-progress{transition:none}}

/* Use more of wide screens while preserving the existing laptop/mobile breakpoints. */
:root{--shell:1560px}

/* Site-wide motion: deliberately quiet, with one shared timing language. */
body.motion-enabled .quick-facts-grid > div,
body.motion-enabled .timeline > div,
body.motion-enabled .prize-board article,
body.motion-enabled .faq-list details{
  opacity:0;
  transform:translateY(12px);
  transition:opacity .52s ease var(--sequence-delay,0ms),transform .52s cubic-bezier(.2,.75,.25,1) var(--sequence-delay,0ms);
}
body.motion-enabled .quick-facts-grid > div.is-in-view,
body.motion-enabled .timeline > div.is-in-view,
body.motion-enabled .prize-board article.is-in-view,
body.motion-enabled .faq-list details.is-in-view{opacity:1;transform:none}

.confirmed-sponsor:focus-within,
.confirmed-sponsor:hover{box-shadow:0 18px 46px rgba(0,0,0,.2),0 0 0 1px rgba(105,242,176,.08)}
.sponsor-brand,.sponsor-logo-pill{transition:transform .3s cubic-bezier(.2,.75,.25,1),box-shadow .3s ease}
.confirmed-sponsor:hover .sponsor-brand{transform:translateY(-3px)}
.sponsor-logo-pill:hover{box-shadow:0 10px 25px rgba(0,0,0,.18)}

.countdown b.countdown-tick{animation:countdown-tick .4s cubic-bezier(.2,.75,.25,1)}
.faq-list details[open] p{animation:faq-answer-in .32s ease both}
@keyframes countdown-tick{0%{opacity:.35;transform:translateY(-6px)}100%{opacity:1;transform:translateY(0)}}
@keyframes faq-answer-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  body.motion-enabled .quick-facts-grid > div,
  body.motion-enabled .timeline > div,
  body.motion-enabled .prize-board article,
  body.motion-enabled .faq-list details{opacity:1;transform:none;transition:none}
  .countdown b.countdown-tick,.faq-list details[open] p{animation:none}
}
