:root{--blue-900:#0a3d57;--blue-800:#0d4e70;--blue-700:#125f89;--blue-500:#3b84ac;--blue-200:#bfdce9;--blue-100:#e7f1f6;--blue-50:#f5fafc;--green:#c1cd42;--green-dark:#9ba633;--ink:#0e2733;--ink-soft:#4c6472;--white:#fff;--line:#d7e5ec;--shadow:0 20px 40px -20px #0a3d5759;--radius:14px;--font-display:"Anton", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"Space Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-body);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:inherit}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--green-dark);outline-offset:3px}.wrap{max-width:1180px;margin:0 auto;padding:0 20px}header.site{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.site-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1180px;margin:0 auto;padding:14px 20px;display:flex}.brand{align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.brand img{width:auto;height:42px}.brand-word{font-family:var(--font-mono);letter-spacing:.14em;color:var(--blue-700);text-transform:uppercase;font-size:12px;line-height:1.3}.brand-word strong{font-family:var(--font-display);letter-spacing:.02em;color:var(--ink);text-transform:none;font-size:17px;display:block}.site-nav{flex-shrink:0;gap:4px;display:flex}.btn{font-family:var(--font-body);border:2px solid var(--blue-700);background:var(--blue-700);min-height:44px;color:var(--white);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .15s,background .15s,color .15s;display:inline-flex}.btn:hover{background:var(--blue-900);border-color:var(--blue-900);transform:translateY(-1px)}.btn.ghost{color:var(--blue-700);background:0 0}.btn.ghost:hover{background:var(--blue-100);color:var(--blue-900)}.btn.on-dark{border-color:var(--green);background:var(--green);color:var(--ink)}.btn.on-dark:hover{background:#d3de5c;border-color:#d3de5c}.btn.ghost.on-navy{color:var(--white);border-color:#ffffff4d}.btn.ghost.on-navy:hover{color:var(--white);background:#ffffff14;border-color:#ffffff80}.hero .lede em{color:var(--green);font-style:normal}.btn[disabled],.btn.disabled{opacity:.55;cursor:default;pointer-events:none}.hero{background:var(--blue-900);color:var(--white);border-bottom:1px solid var(--line);padding:56px 0 48px}.hero-grid{grid-template-columns:1fr;align-items:center;gap:32px;display:grid}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--green);align-items:center;gap:10px;margin-bottom:20px;font-size:12px;display:inline-flex}.eyebrow:before{content:"";background:var(--green);width:22px;height:2px;display:inline-block}.hero h1{font-family:var(--font-display);letter-spacing:.01em;color:var(--white);margin:0 0 20px;font-size:clamp(40px,11vw,84px);font-weight:400;line-height:1.02}.hero h1 em{color:var(--green);font-style:normal}.hero .lede{color:var(--blue-200);max-width:620px;margin:0 0 28px;font-size:16px;line-height:1.65}.hero-meta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--blue-100);flex-direction:column;gap:10px;margin-bottom:28px;font-size:13px;display:flex}.hero-meta a{color:var(--green);border-bottom:1px solid #c1cd4266;text-decoration:none}.hero-meta a:hover{border-color:var(--green)}.hero-flyer{border-radius:var(--radius);box-shadow:var(--shadow);background:var(--blue-800);border:1px solid #ffffff26;margin:0;overflow:hidden}.hero-flyer img{width:100%;height:auto}.section{padding:64px 0}.section-head{margin-bottom:32px}.section-head h2{font-family:var(--font-display);color:var(--ink);margin:6px 0 0;font-size:clamp(30px,6vw,48px);font-weight:400}.section-head p{color:var(--ink-soft);max-width:560px;margin:12px 0 0;font-size:15px;line-height:1.6}.events-grid{grid-template-columns:1fr;gap:18px;display:grid}.event-card{background:var(--white);border:2px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:14px;padding:24px 22px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.event-card:hover{box-shadow:var(--shadow);border-color:var(--blue-500);transform:translateY(-3px)}.event-card.urgent{border-color:#c8321e}.event-card.urgent:hover{border-color:#c8321e;box-shadow:0 20px 40px -20px #c8321e66}.event-card.soldout{opacity:.7}.event-card.soldout:hover{box-shadow:none;border-color:var(--line);transform:none}.event-tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--blue-700);background:var(--blue-50);border:1px solid var(--line);border-radius:999px;align-self:flex-start;padding:5px 10px;font-size:11px}.event-card h3{font-family:var(--font-display);color:var(--ink);margin:0;font-size:28px;font-weight:400}.event-card .desc{color:var(--ink-soft);flex-grow:1;margin:0;font-size:14.5px;line-height:1.6}.event-price{align-items:baseline;gap:8px;display:flex}.event-price .amount{font-family:var(--font-display);color:var(--blue-700);font-size:24px}.event-price .tax{font-family:var(--font-mono);color:var(--ink-soft);font-size:11px}.event-spots{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-soft);font-size:11.5px}.event-spots.low{color:#b3541e;font-weight:700}.event-spots.out{color:#a33b20;font-weight:700}.event-spots.urgent{color:var(--white);letter-spacing:.1em;text-transform:uppercase;background:#c8321e;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.event-spots.urgent:before{content:"";background:var(--white);border-radius:50%;flex:none;width:7px;height:7px;animation:1.8s ease-in-out infinite spots-pulse}.event-spots.hot{color:var(--green-dark);align-items:center;gap:7px;font-weight:700;display:inline-flex}.event-spots.hot:before{content:"";background:var(--green-dark);border-radius:50%;flex:none;width:7px;height:7px;animation:1.8s ease-in-out infinite spots-pulse}@keyframes spots-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.register-grid{grid-template-columns:1fr;align-items:start;gap:28px;display:grid}.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px 20px}.form-grid{grid-template-columns:1fr;gap:16px;display:grid}.field{flex-direction:column;gap:7px;display:flex}.field label,.fieldset-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.field label .req{color:var(--green-dark)}.field input:not([type=radio]):not([type=checkbox]),.field select,.field textarea{font-family:var(--font-body);color:var(--ink);background:var(--white);border:1.5px solid var(--line);border-radius:10px;width:100%;min-height:48px;padding:12px 14px;font-size:16px;line-height:1.4;transition:border-color .15s,box-shadow .15s}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='8'%20viewBox='0%200%2012%208'%3E%3Cpath%20d='M1%201l5%205%205-5'%20fill='none'%20stroke='%234C6472'%20stroke-width='2'%20stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:12px;padding-right:38px}.field input:not([type=radio]):not([type=checkbox]):focus,.field select:focus{border-color:var(--blue-700);box-shadow:0 0 0 3px var(--blue-100);outline:none}.field .error-msg{color:#a33b20;font-size:13px}.phone-row{grid-template-columns:1fr;gap:10px;display:grid}.radio-row{border:none;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;display:flex}.radio-opt{border:1.5px solid var(--line);cursor:pointer;width:100%;min-height:44px;color:var(--ink);touch-action:manipulation;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14.5px;transition:border-color .15s,background .15s;display:flex}.radio-opt:has(input:checked){border-color:var(--blue-700);background:var(--blue-50)}.radio-opt input{width:18px;height:18px;accent-color:var(--blue-700);flex:none;margin-top:2px}.form-foot{margin-top:20px}.form-foot .btn{width:100%}.summary-card{background:var(--blue-50);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px}.summary-card h3{font-family:var(--font-display);margin:0 0 16px;font-size:22px;font-weight:400}.summary-row{color:var(--ink-soft);border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:9px 0;font-size:14.5px;display:flex}.summary-row.total{font-family:var(--font-display);color:var(--ink);border-bottom:none;padding-top:14px;font-size:20px}.summary-note{font-family:var(--font-mono);color:var(--ink-soft);margin:12px 0 0;font-size:11px;line-height:1.5}.notice{border-radius:10px;margin-bottom:18px;padding:13px 16px;font-size:14.5px;line-height:1.55}.notice.info{background:var(--blue-100);border:1px solid var(--blue-500);color:var(--blue-900)}.notice.error{color:#7c3a1d;background:#fdf1ec;border:1px solid #d2673f}.notice.success{border:1px solid var(--green-dark);color:var(--ink);background:#f8fae9}.notice a{font-weight:700}.page-narrow{max-width:640px;margin:0 auto;padding:64px 20px}.page-narrow h1{font-family:var(--font-display);margin:0 0 16px;font-size:clamp(30px,7vw,46px);font-weight:400;line-height:1.05}.page-narrow p{color:var(--ink-soft);font-size:15.5px;line-height:1.7}.confirm-box{background:var(--blue-50);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);margin:24px 0;padding:22px 20px}.confirm-box .row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:8px 0;font-size:14.5px;display:flex}.confirm-box .row:last-child{border-bottom:none}.confirm-box .row span:first-child{color:var(--ink-soft)}.confirm-box .row span:last-child{text-align:right;overflow-wrap:break-word;font-weight:600}.admin-table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table.admin{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}table.admin th{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);text-align:left;background:var(--blue-50);border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 14px;font-size:10.5px}table.admin td{border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink);padding:11px 14px}table.admin tbody tr:last-child td{border-bottom:none}.admin-counts{grid-template-columns:1fr;gap:14px;margin:24px 0 32px;display:grid}.count-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--blue-50);padding:18px}.count-card h3{font-family:var(--font-display);margin:0 0 10px;font-size:20px;font-weight:400}.count-card .nums{font-family:var(--font-mono);color:var(--ink-soft);gap:18px;font-size:12px;display:flex}.count-card .nums b{font-family:var(--font-display);color:var(--blue-700);font-size:26px;font-weight:400;display:block}footer.site{background:var(--ink);color:var(--blue-100);margin-top:64px;padding:48px 0 30px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.footer-inner img{width:auto;height:44px}.footer-inner .meta{font-family:var(--font-mono);letter-spacing:.08em;color:var(--blue-500);font-size:11px}.footer-inner a{color:var(--blue-200);text-decoration:none}.footer-inner a:hover{color:var(--white)}@media (min-width:480px){.phone-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}@media (min-width:640px){.form-grid{grid-template-columns:1fr 1fr}.form-grid .field.full{grid-column:1/-1}.admin-counts{grid-template-columns:repeat(3,1fr)}}@media (min-width:900px){.hero{padding:88px 0 72px}.hero-grid{grid-template-columns:1.05fr .95fr;gap:48px}.events-grid{grid-template-columns:repeat(3,1fr)}.register-grid{grid-template-columns:1.15fr .85fr;gap:48px}.summary-card{position:sticky;top:88px}.form-card{padding:30px}.section{padding:90px 0}}@media (max-width:639px){input,select,textarea{font-size:16px}.hero .btn,.page-narrow .btn,.event-card .btn{width:100%}.page-narrow .btn+.btn{margin-top:10px}}@media (max-width:479px){.site-inner{gap:8px;padding:10px 14px}.brand-word{display:none}.site-nav{gap:2px}.site-nav .btn{padding:9px 10px;font-size:13px}.nav-long{display:none}.confirm-box .row{flex-direction:column;gap:2px}.confirm-box .row span:last-child{text-align:left}}.rb-champs{text-align:center;background:var(--blue-900);color:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:28px;padding:32px 20px;position:relative;overflow:hidden}.rb-champs .eyebrow{color:var(--green)}.rb-champs h2{font-family:var(--font-display);color:var(--green);overflow-wrap:anywhere;margin:8px 0 6px;font-size:clamp(34px,8vw,64px);font-weight:400;line-height:1.05}.rb-champs p{font:700 14px var(--font-mono);color:var(--blue-200);margin:0}.rb-trophy{margin-bottom:6px;font-size:44px;line-height:1;animation:2.4s ease-in-out infinite rb-bob;display:block}@keyframes rb-bob{50%{transform:translateY(-6px)rotate(-4deg)}}@media (prefers-reduced-motion:reduce){.rb-trophy{animation:none}}.rb-bracket{grid-template-columns:1fr;gap:22px;display:grid}.rb-col h4{font-family:var(--font-display);color:var(--blue-900);margin:0 0 10px;font-size:20px;font-weight:400}.rb-ties{flex-direction:column;justify-content:space-around;gap:12px;display:flex}.rb-tie{border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:10px 12px;position:relative}.rb-tie small{font:700 11px var(--font-mono);color:var(--blue-700);margin-bottom:4px;display:block}.rb-tie div{color:var(--ink-soft);justify-content:space-between;gap:10px;padding:3px 0;font-weight:500;display:flex}.rb-tie div.win{color:var(--blue-900);font-weight:800}.rb-tie div.win span:before{content:"✓ ";color:var(--green-dark)}.rb-tie b{font-family:var(--font-mono);white-space:nowrap}.rb-col:last-child .rb-tie{border-color:var(--green-dark);box-shadow:0 0 0 3px #c1cd4259}@media (min-width:820px){.rb-bracket{grid-template-columns:repeat(3,1fr);gap:0}.rb-col{flex-direction:column;padding:0 14px;display:flex;position:relative}.rb-ties{flex:1}.rb-col:first-child{padding-left:0}.rb-col:last-child{padding-right:0}.rb-col:not(:last-child) .rb-tie:after{content:"";border-top:2px solid var(--blue-200);width:14px;position:absolute;top:50%;right:-15px}}
