@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500;12..96,600;12..96,700;12..96,800&family=Fraunces:ital,opsz,wght@0,9..144,500;0,9..144,600;1,9..144,500&family=Hanken+Grotesk:wght@400;500;600;700&display=swap";:root{--saffron: #f97316;--saffron-d: #c2410c;--green: #1a8a4f;--green-d: #136c3c;--navy: #0b1f3a;--navy-d: #061226;--chakra: #1f5fb0;--paper: #f7f1e6;--paper-2: #efe6d3;--paper-3: #e8dcc4;--ink: #1a1410;--ink-2: #3a2f23;--ink-3: #6b5d49;--line: #d9cbb0;--line-soft: rgba(26, 20, 16, .12);--color-bg-deep: var(--navy-d);--color-iaf-sky: var(--chakra);--color-gold: #b8862f;--color-text-main: var(--paper);--color-text-muted: rgba(247, 241, 230, .65);--color-border: rgba(255, 255, 255, .08);--font-display: "Bricolage Grotesque", sans-serif;--font-serif: "Fraunces", Georgia, serif;--font-body: "Hanken Grotesk", system-ui, sans-serif;--maxw: 1240px;--gutter: clamp(1.25rem, 4vw, 3rem);--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--saffron);color:#fff}::-webkit-scrollbar{width:11px}::-webkit-scrollbar-track{background:var(--paper-2)}::-webkit-scrollbar-thumb{background:var(--navy);border:3px solid var(--paper-2);border-radius:10px}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}section{position:relative;padding:clamp(4.5rem,9vw,8rem) 0}img{display:block;max-width:100%}ul{list-style:none}a{color:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.05;color:var(--ink)}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--navy)}.eyebrow:before{content:"";width:26px;height:2px;background:linear-gradient(90deg,var(--saffron),var(--green))}.eyebrow.center{justify-content:center}.eyebrow.center:after{content:"";width:26px;height:2px;background:linear-gradient(90deg,var(--green),var(--saffron))}.section-title{font-size:clamp(2.1rem,5vw,3.4rem);font-weight:700;margin:.85rem 0;letter-spacing:-.03em}.section-title em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--saffron-d)}.section-desc{font-size:1.05rem;color:var(--ink-3);max-width:60ch;line-height:1.65}.section-head{margin-bottom:clamp(2.5rem,5vw,4rem)}.section-head.center{text-align:center}.section-head.center .section-desc{margin-left:auto;margin-right:auto}.text-gradient{background:linear-gradient(135deg,#fff 30%,var(--color-gold) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}section:not(.surface-dark):not(.stats-section):not(.expo-section):not(.sponsors-section) .text-gradient,.highlight-dashboard-card .text-gradient,.calculator-section .text-gradient,.contact-wrapper .text-gradient{background:linear-gradient(120deg,var(--ink) 55%,var(--saffron-d) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.surface-dark,.stats-section,.expo-section,.sponsors-section{color:var(--paper)}.stats-section h1,.stats-section h2,.stats-section h3,.expo-section h1,.expo-section h2,.expo-section h3,.sponsors-section h1,.sponsors-section h2,.sponsors-section h3,.stats-section .section-title,.expo-section .section-title,.sponsors-section .section-title{color:#fff}.stats-section .section-title em,.expo-section .section-title em,.sponsors-section .section-title em{color:var(--saffron)}.stats-section .section-desc,.expo-section .section-desc,.sponsors-section .section-desc{color:#f7f1e6b3}.stats-section .section-tag,.expo-section .section-tag,.sponsors-section .section-tag{color:var(--saffron);background:#f973161f;border-color:#f973164d}.stats-section .eyebrow,.expo-section .eyebrow,.sponsors-section .eyebrow{color:var(--saffron)}.stats-section .eyebrow:before,.expo-section .eyebrow:before,.sponsors-section .eyebrow:before{background:linear-gradient(90deg,var(--saffron),var(--green))}.stats-section .eyebrow:after,.expo-section .eyebrow:after,.sponsors-section .eyebrow:after{background:linear-gradient(90deg,var(--green),var(--saffron))}.section-tag{display:inline-block;font-family:var(--font-body);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--navy);padding:.4rem .95rem;background:#1a14100d;border:1px solid var(--line);border-radius:999px;margin-bottom:1rem}.surface-dark .section-tag{color:var(--paper);background:#f7f1e60f;border-color:#f7f1e624}.tricolor-bar{height:5px;background:linear-gradient(90deg,var(--saffron) 0 33.33%,var(--paper) 33.33% 66.66%,var(--green) 66.66% 100%);background-size:200% 100%;animation:contrail-flow 6s linear infinite}@keyframes contrail-flow{0%{background-position:0% 0}to{background-position:-200% 0}}.btn{--btn-bg: var(--navy);display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--font-display);font-weight:700;font-size:.96rem;letter-spacing:.01em;padding:.95rem 1.9rem;border-radius:999px;border:none;cursor:pointer;text-decoration:none;position:relative;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .3s,color .3s;isolation:isolate}.btn-sm{padding:.6rem 1.25rem;font-size:.85rem}.btn-primary{background:var(--navy);color:var(--paper);box-shadow:0 6px 0 -1px var(--saffron-d),0 10px 24px -8px #0b1f3a80}.btn-primary:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,var(--saffron) 0%,var(--saffron-d) 100%);transform:translateY(101%);transition:transform .4s var(--ease)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 9px 0 -1px var(--navy),0 16px 30px -10px #c2410c99}.btn-primary:hover:before{transform:translateY(0)}.btn-gold{background:var(--navy);color:var(--paper);box-shadow:0 6px 0 -1px var(--saffron)}.btn-gold:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--saffron);transform:translateY(101%);transition:transform .4s var(--ease)}.btn-gold:hover{transform:translateY(-3px)}.btn-gold:hover:before{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--ink);border:1.5px solid var(--ink);box-shadow:4px 4px 0 0 var(--saffron)}.btn-secondary:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 0 var(--saffron);background:var(--ink);color:var(--paper)}.surface-dark .btn-secondary{color:var(--paper);border-color:var(--paper);box-shadow:4px 4px 0 0 var(--saffron)}.surface-dark .btn-secondary:hover{background:var(--paper);color:var(--ink)}header{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:all .4s var(--ease);padding:1.1rem 0}header.scrolled{background:#f7f1e6d1;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid var(--line);padding:.55rem 0;box-shadow:0 10px 30px -18px #1a141066}.nav-wrapper{display:flex;justify-content:space-between;align-items:center;gap:1rem}.logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:var(--font-display);font-weight:800;color:var(--ink);font-size:1.05rem}.logo img.event-logo-img{height:52px;width:auto;object-fit:contain;filter:drop-shadow(0 3px 6px rgba(11,31,58,.18));transition:transform .4s var(--ease)}.logo:hover .event-logo-img{transform:rotate(-6deg) scale(1.05)}.logo-text{display:flex;flex-direction:column;line-height:.95}.logo-text small{font-size:.6rem;letter-spacing:.25em;color:var(--ink-3);font-weight:700}.logo-accent{color:var(--saffron-d)}.patronage-logos{display:flex;align-items:center;gap:.6rem;margin-left:1rem;padding-left:1rem;border-left:1px solid var(--line)}.header-patron-logo{height:34px;width:auto;object-fit:contain;transition:transform .3s var(--ease)}.header-patron-logo:hover{transform:translateY(-3px) scale(1.08)}.nav-links{display:flex;align-items:center;gap:1.7rem}.nav-links>li>a,.nav-links .dropdown-trigger{font-family:var(--font-body);font-weight:600;font-size:.9rem;color:var(--ink-2);text-decoration:none;position:relative;cursor:pointer;transition:color .25s}.nav-links>li>a:after,.nav-links .dropdown-trigger:after{content:"";position:absolute;left:0;bottom:-6px;height:2px;width:0;background:linear-gradient(90deg,var(--saffron),var(--green));transition:width .3s var(--ease)}.nav-links>li>a:hover,.nav-links .dropdown-trigger:hover,.nav-links a.active{color:var(--ink)}.nav-links>li>a:hover:after,.nav-links .dropdown-trigger:hover:after,.nav-links a.active:after{width:100%}.dropdown-item{position:relative}.dropdown-trigger{display:inline-flex;align-items:center;gap:.25rem}.dropdown-menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%) translateY(8px);background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:.5rem;min-width:230px;list-style:none;opacity:0;visibility:hidden;transition:all .3s var(--ease);box-shadow:0 20px 40px -16px #1a141040;z-index:1000}.dropdown-item:hover .dropdown-menu,.dropdown-menu.active{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.dropdown-menu li a{display:block;padding:.6rem .9rem;border-radius:9px;color:var(--ink-2)!important;font-family:var(--font-body);font-size:.88rem;transition:background .2s,color .2s}.dropdown-menu li a:hover{background:var(--paper-2);color:var(--ink)!important}.menu-toggle{display:none;background:var(--navy);color:var(--paper);border:none;width:44px;height:44px;border-radius:12px;font-size:1.2rem;cursor:pointer}.hero{min-height:100svh;position:relative;overflow:hidden;padding:7rem 0 5rem;display:flex;align-items:center;background:radial-gradient(110% 80% at 86% 8%,rgba(249,115,22,.2),transparent 54%),radial-gradient(90% 70% at 12% 92%,rgba(26,138,79,.16),transparent 55%),var(--paper)}.hero-contrails{position:absolute;inset:0;z-index:0;pointer-events:none}.hero-contrails svg{position:absolute;top:-10%;left:-5%;width:120%;height:130%}.hero-grid-overlay{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.4;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(80% 60% at 50% 40%,#000,transparent 80%);-webkit-mask-image:radial-gradient(80% 60% at 50% 40%,#000,transparent 80%)}.hero-content{position:relative;z-index:3}.hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}.hero-eyebrow-row{display:inline-flex;align-items:center;gap:.85rem;margin-bottom:1.5rem}.hero-badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--navy);color:var(--paper);font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:.4rem .85rem;border-radius:999px}.hero-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--saffron);box-shadow:0 0 #f97316b3;animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%{box-shadow:0 0 #f97316b3}70%{box-shadow:0 0 0 8px #f9731600}to{box-shadow:0 0 #f9731600}}.hero-title{font-size:clamp(2.8rem,7vw,5.6rem);font-weight:800;line-height:.96;letter-spacing:-.035em;color:var(--ink)}.hero-title .line{display:block;overflow:hidden}.hero-title .line>span{display:inline-block;transform:translateY(110%);animation:rise .9s var(--ease) forwards}.hero-title .line:nth-child(2)>span{animation-delay:.12s}.hero-title .line:nth-child(3)>span{animation-delay:.24s}.hero-title em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--saffron-d)}@keyframes rise{to{transform:translateY(0)}}.hero-desc{font-size:1.13rem;color:var(--ink-2);max-width:48ch;margin:1.6rem 0 2.2rem;line-height:1.6}.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.hero-patronage-bar{display:inline-flex;align-items:center;gap:1.25rem;padding:.7rem 1.4rem;margin-top:2.6rem;background:#ffffff73;border:1px solid var(--line);border-radius:999px;backdrop-filter:blur(8px)}.patron-item{display:flex;align-items:center;gap:.6rem;font-family:var(--font-body);font-weight:600;font-size:.82rem;color:var(--ink-2)}.patron-item img{height:30px;width:auto;object-fit:contain}.patron-item.main-event-logo img{height:48px;filter:drop-shadow(0 2px 6px rgba(194,65,12,.3))}.patron-divider{width:1px;height:26px;background:var(--line)}.hero-visual{position:relative}.hero-photo-frame{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4 / 5;box-shadow:0 30px 60px -20px #0b1f3a73;transform:rotate(1.5deg);border:6px solid #fff}.hero-photo-frame img{width:100%;height:100%;object-fit:cover}.hero-photo-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(11,31,58,.55) 100%)}.hero-photo-tag{position:absolute;left:1.2rem;bottom:1.2rem;z-index:2;color:#fff}.hero-photo-tag .k{font-family:var(--font-body);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;opacity:.85}.hero-photo-tag .v{font-family:var(--font-display);font-size:1.25rem;font-weight:700}.countdown-container{position:relative;z-index:6;margin-top:3rem;display:flex;gap:.7rem;flex-wrap:wrap}.countdown-box{flex:0 0 88px;min-width:88px;padding:1rem .5rem .85rem;background:var(--navy);color:var(--paper);border-radius:16px;text-align:center;position:relative;overflow:hidden;box-shadow:0 10px 24px -10px #0b1f3a99}.countdown-box:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tristripe, linear-gradient(90deg, var(--saffron), var(--green)))}.countdown-box:nth-child(1){--tristripe: var(--saffron)}.countdown-box:nth-child(1):before{background:var(--saffron)}.countdown-box:nth-child(2):before{background:var(--paper)}.countdown-box:nth-child(3):before{background:var(--green)}.countdown-box:nth-child(4):before{background:var(--saffron)}.countdown-number{font-family:var(--font-display);font-weight:800;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1;color:var(--paper);font-variant-numeric:tabular-nums}.countdown-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.18em;color:#f7f1e699;margin-top:.4rem;font-weight:700}.hero-runners-track{position:absolute;left:0;bottom:0;width:100%;z-index:5;background:var(--navy);color:var(--paper);border-top:1px solid rgba(247,241,230,.12);padding:.7rem 0;overflow:hidden;display:flex;align-items:center}.runners-scroll{display:flex;gap:3rem;animation:scrollRunners 28s linear infinite;white-space:nowrap;padding-left:2rem}.runner-silhouette{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#f7f1e6cc}.runner-icon-svg{width:20px;height:20px;fill:var(--saffron)}@keyframes scrollRunners{0%{transform:translate(0)}to{transform:translate(-50%)}}.tribute-wrapper{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}.tribute-image-frame{position:relative;border-radius:18px;overflow:hidden;border:6px solid #fff;box-shadow:0 30px 60px -25px #1a141080;transform:rotate(-2deg);transition:transform .5s var(--ease)}.tribute-image-frame:hover{transform:rotate(0)}.tribute-img{width:100%;height:auto}.tribute-badge{position:absolute;bottom:16px;right:16px;background:var(--navy);color:var(--paper);padding:.45rem .9rem;border-radius:8px;font-family:var(--font-display);font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 8px 18px -6px #0006}.tribute-badge:before{content:"★ ";color:var(--saffron)}.tribute-story .section-title{margin-bottom:1.2rem}.tribute-story>p{color:var(--ink-2);margin-bottom:1.1rem}.tribute-story>p strong{color:var(--ink);font-weight:700}.tribute-quote{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.5;color:var(--ink);border-left:3px solid var(--saffron);padding:.4rem 0 .4rem 1.5rem;margin:1.6rem 0}.tribute-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.8rem}.tribute-timeline-item{padding:1.1rem;background:#ffffff80;border:1px solid var(--line);border-radius:14px;transition:transform .3s var(--ease),border-color .3s}.tribute-timeline-item:hover{transform:translateY(-4px);border-color:var(--saffron)}.timeline-year{display:block;font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:var(--saffron-d);line-height:1;margin-bottom:.4rem}.timeline-text{font-size:.85rem;color:var(--ink-3);line-height:1.45}.stats-section{background:var(--navy-d);overflow:hidden}.stats-section:before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;background-image:linear-gradient(rgba(247,241,230,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(247,241,230,.05) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(70% 70% at 50% 50%,#000,transparent 80%);-webkit-mask-image:radial-gradient(70% 70% at 50% 50%,#000,transparent 80%)}.stats-section .container{position:relative;z-index:1}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1.25rem;margin-bottom:4rem}.stat-card{padding:2rem 1.5rem;text-align:left;background:#f7f1e60a;border:1px solid rgba(247,241,230,.1);border-radius:18px;transition:all .35s var(--ease);position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-6px);background:#f7f1e612;border-color:#f9731680}.stat-card:after{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--saffron);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.stat-card:hover:after{transform:scaleX(1)}.stat-icon{font-size:1.8rem;display:block;margin-bottom:.8rem}.stat-number{font-family:var(--font-display);font-weight:800;font-size:clamp(2.4rem,4vw,3.2rem);color:var(--paper);line-height:1;font-variant-numeric:tabular-nums}.stat-label{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:#f7f1e699;margin-top:.5rem;font-weight:600}.gallery-filters{display:flex;justify-content:center;gap:.6rem;margin-bottom:2.5rem;flex-wrap:wrap}.filter-btn{font-family:var(--font-body);font-weight:700;font-size:.85rem;padding:.6rem 1.3rem;border-radius:999px;background:transparent;border:1.5px solid rgba(247,241,230,.25);color:var(--paper);cursor:pointer;transition:all .3s var(--ease)}.filter-btn:hover{border-color:var(--saffron);color:var(--saffron)}.filter-btn.active{background:var(--saffron);color:var(--navy-d);border-color:var(--saffron);box-shadow:0 4px 14px -4px #f9731680}section:not(.stats-section):not(.expo-section):not(.sponsors-section) .filter-btn{background:transparent;border:1.5px solid var(--line);color:var(--ink-2)}section:not(.stats-section):not(.expo-section):not(.sponsors-section) .filter-btn:hover{border-color:var(--ink);color:var(--ink)}section:not(.stats-section):not(.expo-section):not(.sponsors-section) .filter-btn.active{background:var(--navy);color:var(--paper);border-color:var(--navy);box-shadow:0 4px 0 -1px var(--saffron)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.4rem}.gallery-item{position:relative;border-radius:16px;overflow:hidden;background:var(--paper-2);border:1px solid var(--line);cursor:pointer;transition:transform .4s var(--ease),box-shadow .4s var(--ease);box-shadow:0 12px 30px -18px #1a141066}.gallery-item:hover{transform:translateY(-6px);box-shadow:0 22px 40px -18px #1a141080}.gallery-item.hidden{display:none!important}.gallery-media-wrapper{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--navy-d)}.gallery-img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.gallery-item:hover .gallery-img{transform:scale(1.06)}.video-overlay-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:var(--saffron);display:grid;place-items:center;box-shadow:0 0 #f9731699;transition:all .3s var(--ease);z-index:5;animation:pulse-dot 2.4s infinite}.video-overlay-icon:before{content:"";width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:15px solid #fff;margin-left:4px}.gallery-item:hover .video-overlay-icon{background:var(--navy)}.gallery-media-tag{position:absolute;top:12px;right:12px;z-index:10;padding:.3rem .65rem;border-radius:7px;font-family:var(--font-body);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.tag-photo{background:var(--navy);color:var(--paper)}.tag-video{background:var(--saffron);color:#fff}.gallery-info{padding:1.1rem 1.3rem;border-top:1px solid var(--line)}.gallery-info h4{font-size:1.05rem;margin-bottom:.2rem;color:var(--ink)}.gallery-info p{font-size:.84rem;color:var(--ink-3)}.tabs-control{display:flex;justify-content:center;gap:.5rem;margin-bottom:2.8rem;flex-wrap:wrap}.tab-btn{font-family:var(--font-body);font-weight:700;font-size:.85rem;padding:.6rem 1.25rem;border-radius:999px;background:transparent;border:1.5px solid var(--line);color:var(--ink-2);cursor:pointer;transition:all .3s var(--ease)}.tab-btn:hover{border-color:var(--ink);color:var(--ink)}.tab-btn.active{background:var(--navy);color:var(--paper);border-color:var(--navy);box-shadow:4px 4px 0 0 var(--saffron)}.tab-panel{display:none;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,4vw,3.5rem);align-items:center;padding:clamp(1.5rem,3vw,2.5rem);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 25px 50px -28px #1a14104d}.tab-panel.active{display:grid;animation:fadeIn .5s var(--ease) forwards}.map-box{display:grid;place-items:center;padding:1rem;background:var(--navy-d);border-radius:16px;overflow:hidden;position:relative}.map-box:before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;background-image:linear-gradient(rgba(247,241,230,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(247,241,230,.06) 1px,transparent 1px);background-size:28px 28px}.map-svg{width:100%;max-width:420px;height:auto;position:relative;z-index:1}.map-details{display:flex;flex-direction:column;gap:1.2rem}.map-details .section-tag{margin-bottom:.25rem}.map-details h3{font-size:clamp(1.6rem,3vw,2rem);color:var(--ink)}.map-details>p{color:var(--ink-2)}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.detail-item{padding:1rem;border-radius:12px;border:1px solid var(--line);background:var(--paper)}.detail-label{font-size:.7rem;color:var(--ink-3);text-transform:uppercase;letter-spacing:.12em;font-weight:700}.detail-value{font-family:var(--font-display);font-size:1.2rem;font-weight:800;color:var(--navy);margin-top:.2rem}.route-info-list{display:flex;flex-direction:column;gap:.55rem}.route-info-list li{position:relative;padding-left:1.6rem;font-size:.9rem;color:var(--ink-2)}.route-info-list li:before{content:"✦";position:absolute;left:0;color:var(--saffron-d)}.calculator-section{background:var(--paper-2)}.calc-container{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(1.5rem,3vw,2.5rem)}.calc-card,.calc-results-card{padding:clamp(1.5rem,3vw,2.25rem);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 40px -24px #1a141040}.calc-card h3{color:var(--ink);margin-bottom:1.3rem;font-size:1.3rem}.calc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.calc-form-group{display:flex;flex-direction:column;gap:.4rem;text-align:left}.calc-form-group label{font-size:.72rem;color:var(--ink-3);font-weight:700;text-transform:uppercase;letter-spacing:.12em}.calc-input,.calc-select{background:var(--paper);border:1.5px solid var(--line);border-radius:10px;padding:.8rem .9rem;color:var(--ink);font-family:var(--font-body);font-size:.95rem;transition:border-color .25s,box-shadow .25s}.calc-input:focus,.calc-select:focus{outline:none;border-color:var(--saffron);box-shadow:0 0 0 3px #f973162e}.calc-results-card{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:320px}.results-placeholder{color:var(--ink-3)}.results-placeholder-icon{font-size:2.6rem;margin-bottom:.8rem;opacity:.7}.results-placeholder h4{color:var(--ink);margin-bottom:.4rem}.results-placeholder p{font-size:.88rem}.calc-result-details{display:flex;flex-direction:column;gap:.9rem;width:100%;text-align:left}.calc-result-header{font-family:var(--font-display);font-weight:800;font-size:1.3rem;color:var(--ink);margin-bottom:.3rem}.calc-result-status{padding:.35rem .9rem;border-radius:999px;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;display:inline-block;margin-bottom:.8rem}.status-eligible{background:#1a8a4f1f;color:var(--green-d);border:1px solid rgba(26,138,79,.3)}.status-ineligible{background:#c2410c1f;color:var(--saffron-d);border:1px solid rgba(194,65,12,.3)}.calc-result-item{border-bottom:1px solid var(--line);padding-bottom:.7rem}.calc-result-item:last-child{border:none}.calc-result-label{font-size:.72rem;color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.calc-result-val{font-size:.95rem;color:var(--ink);font-weight:600;margin-top:.2rem}.calc-result-val strong{color:var(--saffron-d)}.hidden{display:none!important}.timeline-container{max-width:820px;margin:0 auto;position:relative}.timeline-container:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--saffron),var(--green));transform:translate(-50%);border-radius:3px}.timeline-event{width:50%;padding:1.2rem;position:relative}.timeline-event:nth-child(odd){left:0;text-align:right;padding-right:2.5rem}.timeline-event:nth-child(2n){left:50%;padding-left:2.5rem}.timeline-node{position:absolute;top:1.8rem;width:18px;height:18px;border-radius:50%;background:var(--paper);border:3px solid var(--saffron);z-index:2;box-shadow:0 0 0 4px var(--paper)}.timeline-event:nth-child(odd) .timeline-node{right:-9px}.timeline-event:nth-child(2n) .timeline-node{left:-9px}.timeline-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.2rem 1.35rem;box-shadow:0 14px 30px -20px #1a14104d;transition:transform .3s var(--ease)}.timeline-card:hover{transform:translateY(-3px)}.timeline-time{font-family:var(--font-display);font-weight:800;font-size:1rem;color:var(--saffron-d);margin-bottom:.25rem}.timeline-card h4{font-size:1.1rem;color:var(--ink);margin-bottom:.35rem}.timeline-card p{color:var(--ink-3);font-size:.86rem}.expo-section{background:var(--navy-d);overflow:hidden}.expo-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(1.5rem,3vw,3rem)}.expo-details-card{background:#f7f1e60a;border:1px solid rgba(247,241,230,.12);border-radius:18px;padding:clamp(1.5rem,3vw,2.25rem)}.expo-details-card h3{color:var(--paper);margin-bottom:1.4rem;font-size:1.3rem}.expo-detail-row{display:flex;gap:1rem;margin-bottom:1.4rem}.expo-detail-row:last-child{margin-bottom:0}.expo-detail-icon{width:44px;height:44px;border-radius:12px;flex-shrink:0;background:#f9731626;color:var(--saffron);display:grid;place-items:center;font-size:1.2rem}.expo-detail-text h4{color:var(--paper);font-size:1rem;margin-bottom:.2rem}.expo-detail-text p{color:#f7f1e6b3;font-size:.9rem}.expo-attractions{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.expo-attraction-card{background:#f7f1e60a;border:1px solid rgba(247,241,230,.1);border-radius:14px;padding:1.35rem;transition:all .3s var(--ease)}.expo-attraction-card:hover{transform:translateY(-4px);background:#f7f1e614;border-color:var(--saffron)}.expo-attraction-card span{font-size:1.6rem}.expo-attraction-card h4{color:var(--paper);font-size:1rem;margin:.5rem 0 .3rem}.expo-attraction-card p{color:#f7f1e6a6;font-size:.82rem}.kit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.3rem}.kit-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:2rem 1.5rem;text-align:center;position:relative;overflow:hidden;transition:all .35s var(--ease);box-shadow:0 14px 30px -22px #1a141040}.kit-card:hover{transform:translateY(-6px);box-shadow:0 22px 40px -22px #1a141066}.kit-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--saffron),var(--paper),var(--green))}.kit-icon{font-size:3rem;margin-bottom:1rem;display:inline-block;transition:transform .4s var(--ease)}.kit-card:hover .kit-icon{transform:scale(1.15) rotate(-6deg)}.kit-card h3{font-size:1.2rem;margin-bottom:.5rem;color:var(--ink)}.kit-card p{color:var(--ink-3);font-size:.88rem}.leaderboard-section{background:var(--paper-2)}.leaderboard-container{max-width:920px;margin:0 auto}.leaderboard-header-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.6rem;flex-wrap:wrap}.leaderboard-tabs{display:flex;gap:.3rem;background:#fff;border:1px solid var(--line);padding:.3rem;border-radius:999px}.leaderboard-tab-btn{font-family:var(--font-body);font-weight:700;font-size:.82rem;padding:.5rem 1.1rem;border:none;background:transparent;color:var(--ink-3);border-radius:999px;cursor:pointer;transition:all .3s var(--ease)}.leaderboard-tab-btn.active{background:var(--navy);color:var(--paper)}.leaderboard-search{position:relative;width:280px;max-width:100%}.leaderboard-search-input{width:100%;padding:.7rem 1rem .7rem 2.4rem;background:#fff;border:1.5px solid var(--line);border-radius:999px;color:var(--ink);font-family:var(--font-body);font-size:.88rem}.leaderboard-search-input:focus{outline:none;border-color:var(--saffron)}.leaderboard-search:before{content:"🔍";position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:.8rem;opacity:.6}.leaderboard-table-wrapper{overflow-x:auto;border-radius:16px;border:1px solid var(--line);background:#fff;box-shadow:0 18px 40px -24px #1a141040}.leaderboard-table{width:100%;border-collapse:collapse;min-width:600px}.leaderboard-table th{background:var(--navy);color:var(--paper);font-family:var(--font-body);font-weight:700;text-transform:uppercase;font-size:.74rem;letter-spacing:.1em;padding:1.1rem 1.4rem;text-align:left}.leaderboard-table td{padding:1.05rem 1.4rem;font-size:.92rem;color:var(--ink-2);border-bottom:1px solid var(--line-soft)}.leaderboard-table tr:last-child td{border-bottom:none}.leaderboard-table tr:hover td{background:var(--paper)}.leaderboard-name{color:var(--ink)}.leaderboard-station{color:var(--ink-3);font-size:.85rem}.rank-badge{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;font-family:var(--font-display);font-weight:800;font-size:.85rem}.rank-1{background:linear-gradient(135deg,#f7c948,var(--saffron-d));color:#fff;box-shadow:0 4px 10px -2px #c2410c80}.rank-2{background:linear-gradient(135deg,#cfd8dc,#90a4ae);color:#fff}.rank-3{background:linear-gradient(135deg,#cd7f32,#8b4513);color:#fff}.rank-other{background:var(--paper-2);color:var(--ink-3)}.leaderboard-table tr.hidden,.leaderboard-row.hidden{display:none!important}.leaderboard-table tr.no-results td{text-align:center;padding:3rem;color:var(--ink-3);font-style:italic}.faq-container{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:.8rem}.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .3s,box-shadow .3s}.faq-item.active{border-color:var(--saffron);box-shadow:0 14px 30px -22px #c2410c66}.faq-header{width:100%;padding:1.3rem 1.5rem;background:transparent;border:none;color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:700;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem}.faq-header:after{content:"+";font-size:1.6rem;color:var(--saffron-d);transition:transform .3s var(--ease);font-weight:400}.faq-item.active .faq-header:after{transform:rotate(45deg)}.faq-body{max-height:0;overflow:hidden;transition:max-height .4s var(--ease);padding:0 1.5rem;color:var(--ink-2);font-size:.95rem}.faq-item.active .faq-body{padding:0 1.5rem 1.4rem;max-height:280px}.contact-wrapper{display:grid;grid-template-columns:.9fr 1.2fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}.contact-info-cards{display:flex;flex-direction:column;gap:1rem}.info-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.3rem;display:flex;gap:1rem;align-items:center;box-shadow:0 14px 30px -24px #1a141040;transition:transform .3s var(--ease)}.info-card:hover{transform:translate(4px)}.info-icon{width:48px;height:48px;border-radius:13px;flex-shrink:0;background:var(--navy);color:var(--saffron);display:grid;place-items:center;font-size:1.3rem}.info-details h4{font-size:1.02rem;color:var(--ink);margin-bottom:.15rem}.info-details p{font-size:.88rem;color:var(--ink-3)}.contact-form{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(1.5rem,3vw,2.25rem);display:flex;flex-direction:column;gap:1.2rem;box-shadow:0 18px 40px -24px #1a141040}.form-group{position:relative}.form-input{width:100%;padding:1rem;background:var(--paper);border:1.5px solid var(--line);color:var(--ink);border-radius:11px;font-family:var(--font-body);font-size:1rem;transition:border-color .25s,box-shadow .25s}.form-input:focus{outline:none;border-color:var(--saffron);box-shadow:0 0 0 3px #f973162e}.form-label{position:absolute;left:.9rem;top:1rem;color:var(--ink-3);pointer-events:none;transition:all .25s var(--ease);font-size:1rem;background:transparent;padding:0 .35rem}.form-input:focus~.form-label,.form-input:not(:placeholder-shown)~.form-label{top:-.6rem;left:.7rem;font-size:.74rem;color:var(--saffron-d);background:#fff;font-weight:700}textarea.form-input{resize:vertical;min-height:120px}.sponsors-section{background:var(--navy-d);text-align:center;padding:clamp(4rem,8vw,6.5rem) 0}.sponsors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:2.5rem}.sponsor-card{background:#f7f1e60a;border:1px solid rgba(247,241,230,.1);border-radius:16px;padding:1.6rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.6rem;transition:all .3s var(--ease)}.sponsor-card:hover{transform:translateY(-5px);background:#f7f1e614;border-color:var(--saffron)}.sponsor-logo-placeholder{width:64px;height:64px;border-radius:50%;background:#f9731626;color:var(--saffron);display:grid;place-items:center;font-size:1.8rem;transition:all .3s var(--ease)}.sponsor-card:hover .sponsor-logo-placeholder{transform:scale(1.1) rotate(-6deg);background:var(--saffron);color:#fff}.sponsor-card h4{color:var(--paper);font-size:1rem}.sponsor-role{font-size:.7rem;color:var(--saffron);text-transform:uppercase;letter-spacing:.12em;font-weight:700}footer{background:var(--navy-d);color:var(--paper);padding:clamp(3.5rem,6vw,5rem) 0 0}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1.2fr;gap:clamp(2rem,5vw,4rem);margin-bottom:3rem}.footer-about .logo{color:var(--paper);margin-bottom:1rem}.footer-about p{color:#f7f1e6a6;font-size:.92rem;max-width:36ch}.footer-links h4,.footer-contact h4{color:var(--paper);font-size:1.05rem;margin-bottom:1.1rem}.footer-links ul{display:flex;flex-direction:column;gap:.6rem}.footer-links a{color:#f7f1e6a6;text-decoration:none;font-size:.92rem;transition:color .25s,padding .25s}.footer-links a:hover{color:var(--saffron);padding-left:4px}.footer-contact p{color:#f7f1e6a6;font-size:.92rem;margin-bottom:.6rem}.footer-contact-row{display:flex;align-items:center;gap:.55rem}.footer-contact-icon{width:1.1rem;min-width:1.1rem;display:inline-grid;place-items:center;line-height:1;font-size:.92rem;color:var(--saffron);font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;border-top:1px solid rgba(247,241,230,.1);padding:1.6rem 0}.footer-bottom p{font-size:.82rem;color:#f7f1e68c}.footer-tricolor-line{height:5px;background:linear-gradient(90deg,var(--saffron) 0 33.33%,var(--paper) 33.33% 66.66%,var(--green) 66.66% 100%)}.modal-overlay{position:fixed;inset:0;background:#0b1f3ac7;backdrop-filter:blur(8px);z-index:2000;display:none;align-items:center;justify-content:center;padding:1.5rem}.modal-overlay.active{display:flex;animation:fadeIn .3s var(--ease) forwards}.modal-content{width:100%;max-width:640px;position:relative;max-height:92vh;overflow:hidden;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 70px -20px #0009}.modal-header{padding:1.4rem 1.8rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;background:#fff}.modal-title{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--ink)}.modal-title.text-gradient{background:linear-gradient(120deg,var(--ink) 55%,var(--saffron-d) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.close-modal-btn{width:38px;height:38px;border-radius:10px;background:var(--paper-2);border:none;color:var(--ink);font-size:1.4rem;cursor:pointer;transition:all .3s var(--ease);display:grid;place-items:center}.close-modal-btn:hover{background:var(--saffron);color:#fff;transform:rotate(90deg)}.modal-body{padding:1.8rem;overflow-y:auto;flex-grow:1}.registration-notice-modal{max-width:560px}.registration-notice-body{padding:clamp(1.5rem,4vw,2.4rem)}.registration-open-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(1.5rem,4vw,2.2rem);box-shadow:0 18px 40px -26px #1a141059}.registration-open-card h4{font-size:clamp(1.5rem,4vw,2.1rem);margin-bottom:.8rem;color:var(--ink)}.registration-open-card p{color:var(--ink-2);margin-bottom:1.4rem;max-width:44ch}.wizard-steps{display:flex;justify-content:space-between;margin-bottom:2rem;position:relative}.wizard-steps:before{content:"";position:absolute;top:16px;left:0;width:100%;height:2px;background:var(--line);z-index:1}.wizard-step-node{position:relative;z-index:2;width:34px;height:34px;border-radius:50%;background:var(--paper);border:2px solid var(--line);color:var(--ink-3);font-family:var(--font-display);font-weight:800;font-size:.9rem;display:grid;place-items:center;transition:all .4s var(--ease)}.wizard-step-node.active{border-color:var(--saffron);color:var(--saffron-d);box-shadow:0 0 0 4px #f9731626}.wizard-step-node.completed{background:var(--saffron);border-color:var(--saffron);color:#fff}.wizard-panel{display:none}.wizard-panel.active{display:block;animation:slideIn .4s var(--ease) forwards}.wizard-panel h4{color:var(--ink)}.category-selection-grid{display:grid;grid-template-columns:1fr;gap:.7rem}.category-option-card{padding:1.1rem 1.25rem;border-radius:13px;border:1.5px solid var(--line);background:var(--paper);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:all .3s var(--ease)}.category-option-card:hover{border-color:var(--ink-3)}.category-option-card.selected{border-color:var(--saffron);background:#f9731612;box-shadow:0 0 0 3px #f973161f}.category-meta h4{font-size:1.1rem;color:var(--ink);margin-bottom:.15rem}.category-meta p{font-size:.8rem;color:var(--ink-3)}.category-price{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--saffron-d);white-space:nowrap}.wizard-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.grid-span-full{grid-column:span 2}.select-wrapper{position:relative}.select-wrapper select{width:100%;padding:1rem;background:var(--paper);border:1.5px solid var(--line);color:var(--ink);border-radius:11px;font-family:var(--font-body);font-size:1rem;appearance:none}.select-wrapper:after{content:"▼";font-size:.7rem;position:absolute;right:1rem;top:1.2rem;color:var(--ink-3);pointer-events:none}.wizard-footer{margin-top:1.8rem;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:1.4rem;gap:.8rem}.bib-container{display:flex;flex-direction:column;align-items:center;margin-bottom:1rem}.running-bib{width:100%;max-width:360px;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 14px 35px -10px #0000004d;border:6px solid var(--paper-2);color:var(--ink);font-family:var(--font-display)}.bib-header{background:linear-gradient(90deg,var(--saffron) 0%,var(--paper) 50%,var(--green) 100%);padding:.7rem;text-align:center;border-bottom:3px solid var(--navy)}.bib-header-title{font-weight:800;font-size:.85rem;color:var(--navy);letter-spacing:.06em;text-transform:uppercase}.bib-meta-row{display:flex;justify-content:space-between;padding:.5rem 1rem;background:var(--paper-2);font-size:.68rem;font-weight:700;color:var(--ink-3);border-bottom:1px dashed var(--line)}.bib-number{font-size:4.5rem;font-weight:800;text-align:center;line-height:1;padding:1.2rem 0;color:var(--ink);letter-spacing:.04em}.bib-runner-details{display:grid;grid-template-columns:1.2fr .8fr;padding:.4rem 1rem 1rem;align-items:center;gap:.5rem}.bib-runner-name{font-size:1.2rem;font-weight:800;color:var(--ink);text-transform:uppercase}.bib-category{font-size:.78rem;font-weight:700;background:var(--navy);color:var(--paper);padding:.25rem .7rem;border-radius:6px;text-align:center;justify-self:end}.bib-qr-code{width:56px;height:56px;display:block}.bib-footer{background:var(--navy);color:var(--paper);text-align:center;padding:.45rem;font-size:.64rem;font-weight:700;letter-spacing:.1em}.bib-download-info{font-size:.85rem;color:var(--ink-3);text-align:center;margin-top:1rem}.lightbox-overlay{position:fixed;inset:0;background:#0b1f3af2;backdrop-filter:blur(10px);z-index:3000;display:none;align-items:center;justify-content:center;padding:2rem}.lightbox-overlay.active{display:flex;animation:fadeIn .3s var(--ease) forwards}.lightbox-content{position:relative;max-width:900px;width:100%;display:flex;flex-direction:column;align-items:center}.lightbox-media-box{width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;border:1px solid rgba(247,241,230,.1);box-shadow:0 20px 50px #0009;background:#000}.lightbox-media-box img,.lightbox-media-box video{width:100%;height:100%;object-fit:contain}.lightbox-caption{margin-top:1.2rem;font-family:var(--font-display);font-size:1.15rem;color:var(--paper);text-align:center}.lightbox-close{position:absolute;top:-50px;right:0;font-size:2.2rem;background:none;border:none;color:#f7f1e6cc;cursor:pointer;transition:color .3s}.lightbox-close:hover{color:var(--saffron)}.game-canvas{width:100%;height:100%;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes drawPath{0%{stroke-dashoffset:1000}50%{stroke-dashoffset:0}to{stroke-dashoffset:-1000}}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease);will-change:transform,opacity}[data-reveal].in{opacity:1;transform:translateY(0)}[data-reveal-delay="1"]{transition-delay:.08s}[data-reveal-delay="2"]{transition-delay:.16s}[data-reveal-delay="3"]{transition-delay:.24s}[data-reveal-delay="4"]{transition-delay:.32s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}.hero-title .line>span{transform:none}}.highlights-section{background:var(--paper);padding:clamp(3.5rem,7vw,5.5rem) 0 2rem}.highlights-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.6rem}.highlight-dashboard-card{padding:clamp(1.6rem,3vw,2.4rem)!important;border-radius:20px!important;position:relative;overflow:hidden;text-align:left;background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 18px 40px -26px #1a141040!important;transition:transform .35s var(--ease),box-shadow .35s var(--ease)!important}.highlight-dashboard-card:hover{transform:translateY(-6px);box-shadow:0 26px 50px -26px #1a141066!important}.highlight-dashboard-card h3{color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;font-size:1.45rem!important;margin-bottom:.8rem!important}.highlight-dashboard-card p{color:var(--ink-2)!important;font-size:.95rem!important;margin-bottom:1.3rem!important}.highlight-dashboard-card .route-info-list li{color:var(--ink-2)!important;font-size:.9rem}.highlight-dashboard-card .route-info-list li strong{color:var(--ink)!important}@media(max-width:992px){.hero-inner{grid-template-columns:1fr}.hero-visual{order:-1;max-width:420px;margin-inline:auto}.hero-photo-frame{transform:rotate(1.5deg)}.tribute-wrapper{grid-template-columns:1fr;gap:2.5rem}.tribute-image-frame{max-width:440px}.tab-panel,.expo-grid,.calc-container,.contact-wrapper,.footer-grid{grid-template-columns:1fr}}@media(max-width:768px){section{padding:clamp(3.5rem,10vw,5rem) 0}.nav-links{position:fixed;top:0;right:0;height:100svh;width:min(82vw,340px);background:var(--paper);border-left:1px solid var(--line);flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:6rem 2rem 2rem;gap:1.2rem;transform:translate(100%);transition:transform .45s var(--ease);box-shadow:-20px 0 50px -20px #0000004d;display:flex}.nav-links.active{transform:translate(0)}.nav-links>li{width:100%}.nav-links>li>a,.nav-links .dropdown-trigger{font-size:1.1rem;color:var(--ink)}.menu-toggle{display:grid;place-items:center}.dropdown-menu{position:static;transform:none;opacity:1;visibility:visible;display:none;background:var(--paper-2);border:none;box-shadow:none;padding-left:1rem;min-width:100%;border-radius:10px;margin-top:.4rem}.dropdown-item.active .dropdown-menu{display:block}.patronage-logos{display:none}.hero-title{font-size:clamp(2.4rem,11vw,3.5rem)}.timeline-container:before{left:20px}.timeline-event{width:100%;text-align:left!important;padding:.8rem 0 .8rem 3rem!important}.timeline-event:nth-child(odd) .timeline-node,.timeline-event:nth-child(2n) .timeline-node{left:12px;right:auto}.timeline-event:nth-child(2n){left:0}.tribute-timeline,.wizard-form-grid{grid-template-columns:1fr}.grid-span-full{grid-column:span 1}.expo-attractions,.calc-form-grid{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.running-bib,.running-bib *{visibility:visible}.running-bib{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(1.5);box-shadow:none;border:4px solid var(--paper-2)}}
.nav-wrapper .logo img.event-logo-img{height:92px}
.nav-brand{display:flex;align-items:center;gap:.28rem;min-width:0}
.nav-wrapper{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:1rem}
.nav-links{justify-self:end;align-items:center;gap:1.15rem;flex-wrap:nowrap}
.nav-links>li{display:flex;align-items:center}
.nav-links>li>a,.nav-links .dropdown-trigger{white-space:nowrap;line-height:1.15}
.dropdown-trigger{display:inline-flex;align-items:center;gap:.2rem;white-space:nowrap}
.logo{gap:.3rem;align-items:center}
.logo-text{justify-content:center}
.logo-text small{line-height:1.1}
.patronage-logos{display:flex;align-items:center;gap:.3rem;margin-left:.55rem;padding-left:.7rem;border-left:1px solid var(--line)}
.header-patron-logo{width:54px;height:54px;object-fit:contain}
.header-patron-logo-iaf{transform:scale(1.12)}
.header-patron-logo-fitindia{width:74px;height:54px}
.header-patron-logo-sports{transform:scale(1.34)}
.hero-title{max-width:100%;font-size:clamp(2.2rem,4.55vw,4.15rem);text-wrap:initial}
.hero-title .line{overflow:hidden;padding-right:.22em}
.hero-title .line:nth-child(2)>span{font-family:var(--font-serif);font-style:italic;font-weight:600;color:var(--saffron);text-shadow:0 8px 22px rgba(249,115,22,.18);font-size:.91em}
.hero-title .line:nth-child(3)>span{letter-spacing:-.045em;font-size:.95em}
.hero-title .line:nth-child(2),.hero-title .line:nth-child(2)>span,.hero-title .line:nth-child(3),.hero-title .line:nth-child(3)>span{white-space:nowrap}
.sponsors-grid{align-items:stretch;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;max-width:1140px;margin:2.25rem auto 0}
.sponsor-card{justify-content:flex-start;padding:1.35rem 1rem;gap:.45rem}
.sponsor-logo-stage{width:100%;min-height:92px;display:flex;align-items:center;justify-content:center;margin-bottom:.45rem}
.sponsor-logo-img{height:92px;width:auto;max-width:210px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18))}
.sponsor-logo-img-wide{height:68px;max-width:210px}
.sponsor-card h4{min-height:2.2em;display:flex;align-items:center;justify-content:center;text-align:center;font-size:1.05rem}
.sponsor-role{min-height:2em;display:flex;align-items:flex-start;justify-content:center;text-align:center;font-size:.68rem}
.sponsor-logo-textmark{min-width:140px;padding:.9rem 1.1rem;border-radius:999px;border:1px solid rgba(249,115,22,.4);background:linear-gradient(135deg,rgba(249,115,22,.16),rgba(26,138,79,.14));color:#fff;font-family:var(--font-display);font-weight:800;font-size:1rem;letter-spacing:.12em;text-transform:uppercase}
.sponsor-card-group{grid-column:span 2}
.sponsor-logo-stage-group{gap:.8rem;flex-wrap:wrap;min-height:110px}
.sponsor-logo-img-group{height:84px;max-width:120px}
.sponsor-logo-img-endorsement{height:78px;max-width:300px}
@media(max-width:768px){.sponsor-card-group{grid-column:span 1}}
@media(min-width:993px){.hero-inner{grid-template-columns:minmax(0,1.52fr) minmax(320px,.48fr);gap:clamp(1.25rem,3vw,2.5rem)}.hero-copy{min-width:0;max-width:min(100%,46rem)}.hero-desc{max-width:54ch}}
@media(max-width:992px){.nav-wrapper{grid-template-columns:1fr auto}.nav-brand{min-width:0}.nav-links{justify-self:end}.hero-title{font-size:clamp(2.3rem,9vw,4.1rem)}.hero-title .line{padding-right:.08em}.hero-title .line:nth-child(2)>span,.hero-title .line:nth-child(3)>span{white-space:normal}.patronage-logos{display:none}}
@media(max-width:768px){body.nav-open{overflow:hidden}body.nav-open header{z-index:1004}.nav-scrim{position:fixed;inset:0;background:transparent;pointer-events:none;z-index:1001}.nav-links{z-index:1002}.menu-toggle{position:relative;z-index:1003}}
.other-cities-section{background:var(--paper-2);padding:clamp(3.5rem,7vw,5.5rem) 0;scroll-margin-top:96px}.other-cities-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(1.25rem,3vw,2rem);align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(1.4rem,3vw,2.4rem);box-shadow:0 18px 40px -26px #1a141040}.other-cities-copy h3{font-size:clamp(1.45rem,3vw,2rem);margin-bottom:.75rem;color:var(--ink)}.other-cities-copy p{color:var(--ink-2);max-width:54ch}.other-cities-link-card{min-height:190px;border:1.5px dashed rgba(11,31,58,.25);border-radius:16px;background:linear-gradient(135deg,rgba(249,115,22,.08),rgba(26,138,79,.08));display:flex;flex-direction:column;justify-content:space-between;gap:1rem;padding:1.4rem;color:var(--ink)}.other-cities-kicker{font-family:var(--font-body);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--saffron-d)}.other-cities-link-card strong{font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.1}.other-cities-status{align-self:flex-start;padding:.45rem .85rem;border-radius:999px;background:var(--navy);color:var(--paper);font-family:var(--font-body);font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}@media(max-width:768px){.other-cities-panel{grid-template-columns:1fr;border-radius:16px}.other-cities-link-card{min-height:160px}}
.tejas-card-silhouette{position:absolute;top:18px;right:-18px;width:220px;max-width:42%;height:auto;opacity:.08;pointer-events:none;transform:rotate(-7deg);z-index:0}.highlight-dashboard-card>:not(.tejas-card-silhouette){position:relative;z-index:1}@media(max-width:768px){.tejas-card-silhouette{width:170px;right:-28px;opacity:.06}}

.past-edition-actions{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;margin:-1rem 0 2.5rem}
.past-edition-actions .btn{min-width:170px}
.event-photos-modal{max-width:min(1120px,94vw);height:min(820px,90vh)}
.event-photos-frame-wrap{flex:1;min-height:0;background:var(--navy-d)}
.event-photos-frame{width:100%;height:100%;border:0;display:block;background:#fff}
@media(max-width:640px){.past-edition-actions{margin-top:-.5rem}.past-edition-actions .btn{width:100%;max-width:320px}.event-photos-modal{width:100%;height:94vh;border-radius:16px}}

#past-edition{scroll-margin-top:130px}
.past-edition-actions .past-action-btn{min-width:172px;border-radius:999px;padding:.95rem 2rem;font-family:var(--font-display);font-weight:800}
.past-edition-actions .past-action-photo{color:var(--paper);background:rgba(247,241,230,.1);border:1.5px solid rgba(247,241,230,.32);box-shadow:0 6px 0 -1px var(--saffron),0 18px 34px -22px rgba(0,0,0,.75)}
.past-edition-actions .past-action-photo:hover{background:rgba(247,241,230,.18);border-color:rgba(247,241,230,.55);color:#fff;transform:translateY(-3px);box-shadow:0 8px 0 -1px var(--saffron),0 22px 40px -24px rgba(0,0,0,.85)}
.past-edition-actions .past-action-results{background:var(--saffron);color:var(--navy-d);box-shadow:0 6px 0 -1px #c2410c,0 18px 34px -20px rgba(249,115,22,.8)}
.past-edition-actions .past-action-results:before{display:none}
.past-edition-actions .past-action-results:hover{background:#ff7a1a;color:var(--navy-d);transform:translateY(-3px);box-shadow:0 8px 0 -1px #c2410c,0 22px 40px -22px rgba(249,115,22,.9)}
@media(max-width:768px){#past-edition{scroll-margin-top:112px}}

.lightbox-media-box{position:relative}
.lightbox-video-switcher{position:absolute;inset:0;z-index:5;pointer-events:none}
.lightbox-video-nav{position:absolute;top:50%;width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(247,241,230,.92);color:var(--navy);font-family:var(--font-display);font-size:1.2rem;font-weight:800;line-height:1;cursor:pointer;pointer-events:auto;transform:translateY(-50%);transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease);box-shadow:0 14px 28px -18px rgba(0,0,0,.9)}
.lightbox-video-nav:hover{background:var(--saffron);color:#fff;transform:translateY(-50%) scale(1.04)}
.lightbox-video-nav[data-lightbox-prev]{left:1rem}
.lightbox-video-nav[data-lightbox-next]{right:1rem}
.lightbox-video-count{position:absolute;top:1rem;left:50%;min-width:54px;padding:.35rem .75rem;border-radius:999px;background:rgba(6,18,38,.74);border:1px solid rgba(247,241,230,.24);color:var(--paper);font-family:var(--font-body);font-size:.78rem;font-weight:800;text-align:center;letter-spacing:.08em;white-space:nowrap;pointer-events:none;transform:translateX(-50%);backdrop-filter:blur(10px)}
@media(max-width:480px){.lightbox-video-nav{width:38px;height:38px;font-size:1rem}.lightbox-video-nav[data-lightbox-prev]{left:.6rem}.lightbox-video-nav[data-lightbox-next]{right:.6rem}.lightbox-video-count{top:.7rem;font-size:.7rem}}

.gallery-media-wrapper{aspect-ratio:16/9;background:var(--navy-d)}
.gallery-media-wrapper:before{display:none}
.gallery-media-wrapper .gallery-img{position:relative;z-index:1;object-fit:cover;padding:0;background:transparent}
.gallery-media-wrapper .video-overlay-icon{z-index:2}
.gallery-item:hover .gallery-media-wrapper .gallery-img{transform:none}

.map-box{padding:0;background:transparent;border-radius:0}
.map-box:before{display:none}
.map-box img{display:block;width:100%!important;height:auto!important;object-fit:contain!important;border-radius:0}

#legacy .tribute-timeline-item{text-align:center}
#legacy .timeline-year{margin-bottom:.55rem}
#legacy .timeline-text{display:block;text-align:center}

@media(max-width:768px){
  .nav-links>li,.nav-links .dropdown-item{display:block;width:100%}
  .nav-links .dropdown-trigger{display:flex;width:100%;align-items:center;justify-content:space-between}
  .nav-links .dropdown-item{position:static}
  .nav-links .dropdown-menu{position:static;left:auto;top:auto;width:100%;min-width:0;margin-top:.55rem;padding:.75rem 1rem;transform:none!important;opacity:1;visibility:visible}
  .nav-links .dropdown-item:hover .dropdown-menu,.nav-links .dropdown-menu.active,.nav-links .dropdown-item.active .dropdown-menu{transform:none!important}
  .nav-links .dropdown-menu li{width:100%}
  .nav-links .dropdown-menu li a{display:block;width:100%;padding:.7rem 0}
}

.registration-notice-modal{max-width:min(1180px,96vw);height:min(860px,92vh)}
.registration-frame-wrap{flex:1;min-height:0;background:var(--navy-d)}
.registration-frame{width:100%;height:100%;border:0;display:block;background:#fff}
@media(max-width:640px){.registration-notice-modal{width:100%;height:94vh;border-radius:16px}}

body.registration-modal-open{overflow:hidden}
@media(max-width:640px){
  body.registration-modal-open{position:fixed;top:var(--registration-scroll-y,0);inset-inline:0;width:100%}
  #registration-modal.modal-overlay{align-items:stretch;justify-content:stretch;padding:0;overflow:hidden}
  #registration-modal .registration-notice-modal{width:100%;max-width:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border:0;border-radius:0;box-shadow:none}
  #registration-modal .modal-header{min-height:62px;padding:.7rem 1rem;flex-shrink:0}
  #registration-modal .modal-title{font-size:clamp(1.12rem,5.8vw,1.45rem);line-height:1.05;letter-spacing:0}
  #registration-modal .close-modal-btn{width:42px;height:42px;flex:0 0 42px;border-radius:9px;font-size:1.35rem}
  #registration-modal .registration-frame-wrap{flex:1 1 auto;min-height:0}
  #registration-modal .registration-frame{height:100%}
}
