.app{min-height:100vh;background:var(--bg)}.disclaimer-banner{background:#fef3c7;border-bottom:2px solid #f59e0b;padding:.5rem 0;position:sticky;top:0;z-index:20}.disclaimer-content{display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#92400e}.disclaimer-content a{color:#d97706;font-weight:600;text-decoration:underline}.disclaimer-content a:hover{color:#b45309}.site-header{position:sticky;top:42px;background:var(--surface);border-bottom:1px solid var(--border);z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;height:56px;position:relative}.brand-link{color:var(--text);text-decoration:none;font-weight:700;letter-spacing:.2px;display:inline-flex;align-items:center;gap:.5rem}.brand-logo{display:inline-block;object-fit:contain;height:auto;max-width:100%}.brand-text{line-height:1}.desktop-nav{display:flex;gap:1rem}.mobile-menu-toggle{display:none;background:transparent;border:none;cursor:pointer;padding:.5rem;z-index:1001}.hamburger{display:flex;flex-direction:column;gap:4px;width:24px}.hamburger-line{display:block;width:100%;height:2px;background:var(--text);transition:all .3s ease}.mobile-menu-toggle[aria-expanded=true] .hamburger-line:nth-child(1){transform:rotate(45deg) translateY(6px)}.mobile-menu-toggle[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0}.mobile-menu-toggle[aria-expanded=true] .hamburger-line:nth-child(3){transform:rotate(-45deg) translateY(-6px)}.mobile-nav{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:1000;transform:translate(-100%);transition:transform .3s ease}.mobile-nav.open{transform:translate(0)}.mobile-nav-inner{display:flex;flex-direction:column;padding:100px 2rem 2rem;gap:0}.mobile-nav .nav-link{display:block;padding:1rem;font-size:1.125rem;border-bottom:1px solid var(--border)}.nav-link{color:var(--muted);text-decoration:none;padding:.5rem .75rem;border-radius:6px;transition:all .15s ease}.nav-link:hover{color:var(--text);background:var(--surface-2)}.nav-link.active{color:var(--primary);background:#4f46e51a;font-weight:500}.site-main{padding:1.5rem 0}.site-footer{border-top:1px solid var(--border);color:var(--muted);padding:1rem 0;background:var(--surface)}.button{display:inline-block;padding:.55rem .9rem;border:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none;background:var(--surface)}.button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.button:hover{filter:brightness(.98)}.hero{padding:2rem 0}.hero-title{font-size:2rem;color:var(--text);margin-bottom:.5rem}.hero-subtitle{color:var(--muted);margin-bottom:1rem}.hero-cta{display:flex;gap:.75rem}.contest-info{max-width:1200px;margin:0 auto;background:var(--surface);border-radius:16px;box-shadow:0 8px 24px #00000014;overflow:hidden}.home-header{margin:0}.home-hero-card{margin:2rem 0}.contest-header{background-image:url(/images/brand/interlake-banner.png);background-size:cover;background-position:center center;position:relative;color:#fff;padding:4rem 2rem;text-align:center;z-index:1;border-radius:16px 16px 0 0;overflow:hidden}.contest-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#4f46e5d9,#7c4ba2d9);z-index:-1;pointer-events:none;border-radius:inherit}.contest-header>*{position:relative;z-index:2}.contest-header h1{font-size:4rem;margin:0;font-weight:700;letter-spacing:2px}.home-header .contest-acronym{letter-spacing:3px}.contest-header h2{font-size:1.5rem;margin:.5rem 0;font-weight:400;opacity:.95}.contest-header h2.fullname{font-size:1.75rem;margin:0 0 .5rem}.contest-header .tagline{font-size:1.1rem;margin:0 0 2rem;opacity:.9;font-style:italic}.hero-registration{margin:2rem 0}.hero-registration .button.large{font-size:1.25rem;padding:1rem 2.5rem;font-weight:600;background:#fff;color:var(--primary);box-shadow:0 4px 15px #0003}.hero-registration .button.large:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.contest-date{margin:1rem 0 0;font-size:1.25rem;color:#fff}.contest-date strong{font-weight:600}.target-audience{margin:.5rem 0 0;font-size:1.1rem;opacity:.9}.mission-statement{max-width:800px;margin:2rem auto 1rem;font-size:1.1rem;line-height:1.6;text-align:left}.competition-info{background:var(--surface);padding:1.5rem;border-radius:8px;margin:2rem 0}.competition-info h3{color:var(--primary);margin:0 0 1rem}section{padding:2rem;border-bottom:1px solid #e5e7eb}section:last-child{border-bottom:none}section h3{color:#1f2937;font-size:1.75rem;margin:0 0 1.5rem;font-weight:600}section h4{color:#374151;font-size:1.25rem;margin:1rem 0 .5rem;font-weight:600}section h5{color:#4b5563;font-size:1.1rem;margin:1rem 0 .5rem;font-weight:600}.venue-details address{font-style:normal;color:#6b7280;line-height:1.6}.parking-info{background:#f3f4f6;padding:1rem;border-radius:8px;margin:1rem 0}.directions{margin-top:1.5rem}.direction-item{background:#f9fafb;padding:1rem;border-radius:8px;margin:.5rem 0;border:1px solid #e5e7eb}.direction-item summary{cursor:pointer;font-weight:500;color:#4b5563}.direction-item summary:hover{color:var(--primary)}.direction-item ol{margin:1rem 0 0 1.5rem;color:#6b7280}.rounds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.round-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.round-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.round-card h4{color:var(--text);margin:0 0 1rem}.round-details p{margin:.5rem 0;color:#6b7280}.round-details p strong{color:#4b5563}.round-details .description{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;font-style:italic}.events-list{display:flex;flex-wrap:wrap;gap:1rem}.event-item{background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:20px;display:inline-flex;align-items:center;gap:.5rem}.prize-badge{background:#fbbf24;color:#78350f;padding:.25rem .5rem;border-radius:12px;font-size:.875rem;font-weight:600}.scoring-chart{background:#f9fafb;border-radius:8px;padding:1.5rem;max-width:500px}.score-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e5e7eb}.score-total{display:flex;justify-content:space-between;padding:.75rem 0;font-weight:600;font-size:1.1rem;color:#1f2937}.score-label{color:#4b5563}.score-value{color:var(--primary);font-weight:600}.registration-details{color:#6b7280}.requirements{background:#f3f4f6;padding:1rem;border-radius:8px;margin-top:1rem}.requirements h4{margin-top:0}.requirements ul{margin:.5rem 0 0 1.5rem}.sponsors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:2rem 0}.sponsor-item{background:#1a1a1a;padding:2rem;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:160px;transition:transform .2s,box-shadow .2s;border:1px solid #333}.sponsor-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000004d}.sponsor-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem;text-align:center;width:100%}.sponsor-card h3{margin:1rem 0 .5rem;color:var(--text)}.sponsor-card p{color:var(--muted)}.sponsor-logo{display:block;max-height:120px;max-width:260px;width:auto;height:auto;margin:0 auto;object-fit:contain}.venue-location-map{margin-top:2rem}.map-embed{position:relative;width:100%;height:450px;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;margin-top:1rem}.google-map{width:100%;height:100%;border:0}.venue-maps{margin-top:2rem}.maps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1rem}.map-item{background:#f9fafb;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.venue-map{width:100%;height:auto;display:block;cursor:pointer;transition:transform .2s}.venue-map:hover{transform:scale(1.02)}.map-caption{padding:.75rem;text-align:center;font-weight:500;color:#4b5563;background:#fff;border-top:1px solid #e5e7eb}.registration-cta{background:#f0fdf4;border:2px solid #22c55e;border-radius:12px;padding:2rem;text-align:center;margin-bottom:2rem}.registration-cta h3{color:#15803d;margin:0 0 1rem;font-size:1.5rem}.registration-cta .button{font-size:1.1rem;padding:.75rem 2rem;margin:1rem 0}.fee-notes{color:#dc2626;font-weight:500;margin-top:.5rem}.contact-details a{color:var(--primary);text-decoration:none;margin-left:.5rem}.contact-details a:hover{text-decoration:underline}.copy-btn{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:8px;padding:.4rem .75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;position:relative}.copy-btn:hover{background:var(--surface-2);border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px #4f46e526}.copy-btn.copied{background:var(--primary);color:#fff;border-color:var(--primary)}.copy-btn.copied .copy-icon{animation:checkmark .3s ease}@keyframes checkmark{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.copy-icon{width:14px;height:14px;transition:transform .15s ease}.copy-text{font-size:.875rem}.copy-inline{margin-left:.75rem}.home-content{padding:2rem}.about-section{max-width:800px;margin:0 auto 2rem;text-align:center}.about-text{font-size:1.1rem;line-height:1.7;color:var(--muted)}.key-details{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.75rem;margin:2rem auto 3rem;max-width:900px}.key-details h3{color:var(--primary);margin:0 0 1rem;font-size:1.5rem}.detail-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}.detail-list li{color:var(--text);line-height:1.6}.detail-list li strong{color:var(--primary)}.highlights{margin:3rem 0}.highlights h2{text-align:center;color:var(--text);margin-bottom:2rem;font-size:2rem}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.highlight{background:#f9fafb;border-radius:8px;padding:1.5rem;border:1px solid #e5e7eb}.highlight h4{color:var(--text);margin:0 0 .5rem;font-size:1.1rem}.highlight p{color:#6b7280;line-height:1.6;margin:0}.sponsor-section{margin:3rem 0;text-align:center}.sponsor-section h3{color:var(--text);margin-bottom:2rem;font-size:1.5rem}.sponsors-home{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem;max-width:700px;margin-left:auto;margin-right:auto}.sponsors-home .sponsor-item{background:#1a1a1a;padding:2.5rem;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:180px;transition:transform .2s,box-shadow .2s;border:1px solid #333}.sponsors-home .sponsor-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000004d}.sponsors-home .sponsor-logo{max-height:120px;max-width:100%;width:auto;object-fit:contain;display:block}.sponsors-page{max-width:1000px;margin:0 auto}.sponsors-intro{text-align:center;font-size:1.1rem;color:var(--muted);margin-bottom:2rem}.sponsor-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;text-align:center;transition:transform .2s,box-shadow .2s}.sponsor-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.sponsor-card h3{margin:1rem 0;color:var(--text);font-size:1.25rem}.sponsor-card p{margin:.5rem 0;color:var(--muted)}.sponsor-card a{color:var(--primary);text-decoration:none}.sponsor-card a:hover{text-decoration:underline}.sponsor-card .sponsor-logo{max-height:100px;width:auto;object-fit:contain}.faq-section{max-width:800px;margin:0 auto}.faq-list{margin:2rem 0}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:1rem;overflow:hidden}.faq-question{padding:1rem 1.5rem;cursor:pointer;font-weight:500;color:var(--text);background:var(--surface);transition:background .15s ease;list-style:none}.faq-question:hover{background:var(--surface-2)}.faq-question:before{content:"▸";display:inline-block;margin-right:.5rem;transition:transform .2s ease}details[open] .faq-question:before{transform:rotate(90deg)}.faq-answer{padding:0 1.5rem 1rem 2.5rem;color:var(--muted);line-height:1.6}.faq-contact{text-align:center;padding:2rem;background:var(--surface-2);border-radius:8px;margin-top:3rem}.faq-contact h3{color:var(--text);margin-bottom:1rem}.faq-contact a{color:var(--primary);text-decoration:none}.faq-contact a:hover{text-decoration:underline}@media (max-width: 768px){.desktop-nav{display:none}.mobile-menu-toggle,.mobile-nav{display:block}.site-header{position:sticky;top:40px;padding:0;z-index:100;background:#fff;box-shadow:0 2px 4px #0000001a;height:56px}.header-inner{padding:.75rem 1rem;justify-content:space-between;height:100%}.brand-logo{width:60px;height:auto}.brand-text{font-size:1.25rem}.app{padding:0}.disclaimer-banner{padding:.5rem 1rem;position:sticky;top:0;z-index:999;min-height:40px}.disclaimer-content{font-size:.75rem;text-align:center}.contest-header{padding:2rem 1rem;margin-top:0}.home-hero-card{margin:1.5rem 0 1.75rem}.contest-header h1{font-size:2rem}.contest-header h2{font-size:1.25rem}section{padding:1.5rem 1rem}.rounds-grid{grid-template-columns:1fr}.map-embed{height:300px}.schedule-table{font-size:.9rem}.schedule-table th,.schedule-table td{padding:.75rem .5rem}.schedule-notes{margin:1rem}}.email-address{display:inline-flex;align-items:center;gap:.25rem}.email-link,.email-text{font-family:inherit}.email-copy-btn{position:relative;display:inline-flex;align-items:center;padding:.125rem;background:transparent;border:none;cursor:pointer;opacity:.5;transition:opacity .2s}.email-copy-btn:hover{opacity:1}.email-copy-btn .copy-icon{width:14px;height:14px}.email-copy-btn.copied{opacity:1}.email-copy-btn.copied .copy-icon{color:var(--success, #10b981)}.copy-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.25rem;padding:.25rem .5rem;background:var(--text);color:var(--bg);font-size:.75rem;border-radius:4px;white-space:nowrap;pointer-events:none;animation:tooltip-appear .2s ease-out}@keyframes tooltip-appear{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.rules-section{padding:2rem}.rules-section h2{color:var(--primary);margin-bottom:2rem}.rules-content{display:grid;gap:2rem}.rule-category{background:var(--surface);padding:1.5rem;border-radius:8px;border-left:4px solid var(--primary)}.rule-category h3{color:var(--primary);margin:0 0 1rem;font-size:1.25rem}.rules-list{list-style:none;padding:0;margin:0}.rules-list li{padding:.5rem 0 .5rem 1.5rem;position:relative;line-height:1.6}.rules-list li:before{content:"▸";position:absolute;left:0;color:var(--primary);font-weight:700}.rules-list li strong{color:#dc2626;font-weight:600}.rules-footer{margin-top:2rem;padding:1.5rem;background:#fef3c7;border-radius:8px;border:1px solid #fbbf24}.important-note{margin:0;line-height:1.6;color:#92400e}.schedule-section{padding:2rem}.schedule-section h2{color:var(--primary);margin-bottom:2rem}.schedule-header{text-align:center;margin-bottom:2rem}.schedule-header h3{font-size:1.5rem;color:var(--text);margin:0 0 .5rem}.venue-note{color:var(--muted);font-size:1.1rem}.schedule-container{max-width:800px;margin:0 auto 2rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.schedule-table thead{background:var(--primary);color:#fff}.schedule-table th{padding:1rem;text-align:left;font-weight:600}.schedule-table tbody tr{border-bottom:1px solid var(--border)}.schedule-table tbody tr:last-child{border-bottom:none}.schedule-table tbody tr:hover{background:var(--surface)}.schedule-table td{padding:1rem}.time-col{font-weight:600;white-space:nowrap;color:var(--primary)}.event-name{font-weight:500;color:var(--text)}.event-note{font-size:.9rem;color:var(--muted);font-style:italic;margin-top:.25rem}.duration-col{color:var(--muted);text-align:right}.schedule-notes{max-width:800px;margin:0 auto;padding:1.5rem;background:#fef3c7;border-radius:8px;border:1px solid #fbbf24}.schedule-notes h4{color:#92400e;margin:0 0 1rem}.schedule-notes ul{list-style:disc;padding-left:1.5rem;margin:0}.schedule-notes li{color:#92400e;line-height:1.6;margin:.5rem 0}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);color:var(--text)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg: #f8fafc;--surface: #ffffff;--surface-2: #f1f5f9;--text: #0f172a;--muted: #475569;--border: #e5e7eb;--primary: #4f46e5}.list{margin:.5rem 0 0 1.25rem;color:var(--muted)}.muted{color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 1rem}
