body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-dark:#1a2e0d;--primary:#2c4c1c;--primary-light:#4d7336;--accent:#d4a017;--text-light:#f4f1e4;--text-dark:#1f1f1f;--background-dark:#101a09;--background-light:#f2f2f2;--warning:#a32800}*{box-sizing:border-box;font-family:Roboto Mono,monospace,sans-serif;margin:0;padding:0}body{background-color:#101a09;background-color:var(--background-dark);color:#f4f1e4;color:var(--text-light);line-height:1.6}.App{display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:Montserrat,sans-serif;letter-spacing:2px;margin-bottom:1rem;text-transform:uppercase}a{color:#d4a017;color:var(--accent);text-decoration:none;transition:color .3s ease}a:hover,button{color:#f4f1e4;color:var(--text-light)}button{background-color:#2c4c1c;background-color:var(--primary);border:none;cursor:pointer;font-weight:700;letter-spacing:1px;padding:10px 20px;text-transform:uppercase;transition:background-color .3s ease}button:hover{background-color:#4d7336;background-color:var(--primary-light)}.container{margin:0 auto;max-width:1200px;padding:0 20px}main{background-color:#101a09;background-color:var(--background-dark);flex:1 1;padding:2rem 0}@media (max-width:768px){h1{font-size:1.8rem}h2{font-size:1.5rem}.container{padding:0 15px}main{padding:1rem 0}}.navigation{background-color:var(--primary-dark);box-shadow:0 2px 10px #0000004d;position:sticky;top:0;z-index:100}.nav-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem 2rem}.site-logo{display:block;height:90px;margin:0;max-width:500px;object-fit:contain;padding:0;width:auto}.nav-logo{align-items:center;background:none;border:none;border-radius:0;display:flex;min-height:0;padding:0}.nav-logo a{color:var(--accent);font-size:1.5rem;font-weight:700;letter-spacing:2px;position:relative;text-decoration:none;text-shadow:1px 1px 2px #00000080;z-index:2}.nav-links{display:flex;list-style:none}.nav-links li{margin-left:2rem}.nav-links a{color:var(--text-light);font-weight:500;letter-spacing:1px;padding:.5rem 0;position:relative;text-decoration:none;transition:color .3s ease}.nav-links a:after{background-color:var(--accent);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{width:100%}.hamburger{cursor:pointer;display:none;flex-direction:column}.hamburger span{background-color:var(--text-light);border-radius:2px;height:3px;margin-bottom:5px;transition:all .3s ease;width:25px}@media (max-width:768px){.hamburger{display:flex}.nav-links{background-color:var(--primary-dark);box-shadow:0 5px 10px #0003;flex-direction:column;left:0;opacity:0;padding:1rem 0;position:absolute;top:100%;transform:translateY(-10px);transition:all .3s ease;visibility:hidden;width:100%}.nav-links.active{opacity:1;transform:translateY(0);visibility:visible}.nav-links li{margin:0;padding:1rem;text-align:center}.nav-links a:after{display:none}}.footer{background-color:var(--primary-dark);box-shadow:0 -2px 10px #0003;color:var(--text-light);margin-top:auto;padding:3rem 0 1rem}.footer-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1200px;padding:0 2rem}.footer-info h3{color:var(--accent);margin-bottom:1rem}.footer-info p{font-size:.9rem;margin-bottom:1rem}.footer-contact h4,.footer-links h4{color:var(--accent);margin-bottom:1rem}.footer-links ul{list-style:none}.footer-links li{margin-bottom:.5rem}.footer-links a{color:var(--text-light);text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:var(--accent)}.footer-contact p{font-size:.9rem;margin-bottom:.5rem}.footer-disclaimer{border-top:1px solid #ffffff1a;color:#ffffffb3;font-size:.8rem;margin:2rem auto 0;max-width:1200px;padding:1.5rem 2rem 0;text-align:center}.copyright{font-size:.8rem;margin-top:1rem}@media (max-width:768px){.footer-content{gap:2rem;grid-template-columns:1fr;padding:0 1.5rem}.footer-contact,.footer-info,.footer-links{text-align:center}.footer-disclaimer{padding:1.5rem 1.5rem 0}}.home-container{margin:0 auto;max-width:1200px;padding:2rem 0}.hero-section{background-color:var(--primary-dark);background-image:linear-gradient(#101a09b3,#101a09cc),url(/static/media/north-park-orange-trail.be7347089b74b39c12ba.jpg);background-position:50%;background-size:cover;border-radius:5px;box-shadow:0 5px 15px #0000004d;color:var(--text-light);margin-bottom:3rem;padding:7rem 2rem;text-align:center}.hero-section h1{font-size:3.2rem;letter-spacing:4px;margin-bottom:1.2rem;text-shadow:2px 2px 4px #00000080}.tagline{color:var(--accent);font-size:1.3rem;font-style:italic;margin:0 auto;max-width:600px;text-shadow:1px 1px 2px #0000004d}section{background-color:var(--primary-dark);border-radius:5px;box-shadow:0 4px 10px #0003;margin-bottom:3rem;padding:2rem}section h2{border-bottom:2px solid var(--primary-light);color:var(--accent);font-size:1.8rem;margin-bottom:1.5rem;padding-bottom:.5rem}.race-info p{margin-bottom:1rem;text-align:justify}.details-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr)}.detail-item{background-color:var(--primary);border-radius:5px;box-shadow:0 2px 6px #0000001a;padding:1.5rem}.detail-item h3{color:var(--accent);font-size:1.2rem;margin-bottom:.5rem}.rules-section ul{list-style-type:none;padding-left:1rem}.rules-section li{margin-bottom:1rem;padding-left:1.5rem;position:relative}.rules-section li:before{color:var(--accent);content:"→";left:0;position:absolute}@media (max-width:768px){.hero-section{padding:3rem 1rem}.hero-section h1{font-size:2rem}.details-grid{gap:1rem;grid-template-columns:1fr}}.course-container{margin:0 auto;max-width:1200px;padding:2rem}.course-container h1{background-image:linear-gradient(#101a09cc,#101a09e6),url(/static/media/north-park-orange-trail.be7347089b74b39c12ba.jpg);background-position:50%;background-size:cover;color:var(--accent);font-size:2.5rem;padding:3rem;text-align:center;text-shadow:1px 1px 3px #0000004d}.course-container h1,.course-description{border-radius:5px;box-shadow:0 4px 10px #0003;margin-bottom:2rem}.course-description{background-color:var(--primary-dark);padding:2rem}.course-description p{line-height:1.7;margin-bottom:1rem;text-align:justify}.course-map{background-color:var(--primary-dark);border-radius:5px;box-shadow:0 4px 10px #0003;margin-bottom:2rem;padding:2rem}.course-map h2{border-bottom:2px solid var(--primary-light);color:var(--accent);margin-bottom:1.5rem;padding-bottom:.5rem}.map-placeholder{align-items:center;background-color:var(--primary);border:2px dashed var(--primary-light);border-radius:5px;display:flex;height:300px;justify-content:center;margin-top:1rem;padding:1rem;text-align:center}.course-features{background-color:var(--primary-dark);border-radius:5px;box-shadow:0 4px 10px #0003;margin-bottom:2rem;padding:2rem}.course-features h2{border-bottom:2px solid var(--primary-light);color:var(--accent);margin-bottom:1.5rem;padding-bottom:.5rem}.course-features ul{list-style-type:none;padding-left:.5rem}.course-features li{align-items:baseline;display:flex;margin-bottom:1rem}.course-features strong{color:var(--accent);margin-right:.5rem;min-width:120px}.book-checkpoints{background-color:var(--primary-dark);border-radius:5px;box-shadow:0 4px 10px #0003;padding:2rem}.book-checkpoints h2{border-bottom:2px solid var(--primary-light);color:var(--accent);margin-bottom:1.5rem;padding-bottom:.5rem}.book-checkpoints p{line-height:1.7;margin-bottom:1rem;text-align:justify}@media (max-width:768px){.course-container{padding:1rem}.course-container h1{font-size:2rem}.map-placeholder{height:200px}.course-features li{flex-direction:column}.course-features strong{margin-bottom:.3rem}}.register-container{margin:0 auto;max-width:1200px;padding:2rem}.register-container h1{background-image:linear-gradient(#101a09cc,#101a09e6),url(/static/media/north-park-orange-trail.be7347089b74b39c12ba.jpg);background-position:50%;background-size:cover;border-radius:5px;box-shadow:0 4px 10px #0003;color:var(--accent);font-size:2.5rem;margin-bottom:2rem;padding:3rem;text-align:center;text-shadow:1px 1px 3px #0000004d}.race-requirements,.registration-info,.registration-placeholder,.registration-process{background-color:var(--primary-dark);border-radius:5px;box-shadow:0 4px 10px #0003;margin-bottom:2rem;padding:2rem}.registration-info p,.registration-process p{line-height:1.7;margin-bottom:1rem;text-align:justify}h2{border-bottom:2px solid var(--primary-light);color:var(--accent);margin-bottom:1.5rem;padding-bottom:.5rem}.registration-process ol{margin-bottom:1.5rem;margin-left:1.5rem}.registration-process li{margin-bottom:.8rem;padding-left:.5rem}.form-coming-soon{background-color:var(--primary);border:2px dashed var(--primary-light);border-radius:5px;padding:3rem 2rem;text-align:center}.race-requirements ul{list-style-type:none;padding-left:1rem}.race-requirements li{margin-bottom:1rem;padding-left:1.5rem;position:relative}.race-requirements li:before{color:var(--accent);content:"→";left:0;position:absolute}.warning{background-color:#282828b3;border-left:4px solid #d4a017;border-radius:4px;box-shadow:0 2px 6px #00000026;color:#ffcb8c;font-weight:700;margin:15px 0;padding:15px}.warning strong{color:#f0c14b;font-size:1.05em}.password-gate{align-items:center;display:flex;gap:1rem;justify-content:center;margin:2rem 0 2.5rem}.password-gate label{color:var(--text-light);font-size:1.2rem;letter-spacing:1px;margin-right:.5rem}.password-gate input[type=password]{background:#202d16;border:1.5px solid var(--primary-light);border-radius:4px;color:var(--text-light);font-size:1.1rem;min-width:220px;outline:none;padding:.7rem 1.2rem;transition:border .2s}.password-gate input[type=password]:focus{background:#26381a;border:1.5px solid var(--accent)}.password-gate button{background:var(--primary);border:none;border-radius:4px;color:var(--text-light);cursor:pointer;font-family:inherit;font-size:1.1rem;font-weight:600;letter-spacing:1px;margin-left:.5rem;padding:.7rem 2rem;transition:background .2s,color .2s}.password-gate button:hover{background:var(--primary-light);color:var(--accent)}.registration-form{align-items:center;display:flex;flex-direction:column;gap:1.2rem;margin:2rem 0 2.5rem}.registration-form label{align-self:flex-start;color:var(--text-light);font-size:1.1rem;letter-spacing:1px;margin-bottom:.2rem}.registration-form input[type=email],.registration-form input[type=text],.registration-form select{background:#202d16;border:1.5px solid var(--primary-light);border-radius:4px;color:var(--text-light);font-size:1.1rem;min-width:220px;outline:none;padding:.7rem 1.2rem;transition:border .2s;width:100%}.registration-form input[type=email]:focus,.registration-form input[type=text]:focus,.registration-form select:focus{background:#26381a;border:1.5px solid var(--accent)}.registration-form button{background:var(--primary);border:none;border-radius:4px;color:var(--text-light);cursor:pointer;font-family:inherit;font-size:1.1rem;font-weight:600;letter-spacing:1px;margin-top:.5rem;padding:.7rem 2rem;transition:background .2s,color .2s}.registration-form button:hover{background:var(--primary-light);color:var(--accent)}.success-message{background:#283c14cc;border-radius:4px;color:#b6ffb6;font-weight:600;letter-spacing:1px;margin-top:1rem;padding:1rem 2rem;text-align:center}.registrants-display{background-color:var(--primary-dark);border-radius:5px;box-shadow:0 4px 10px #0003;margin-bottom:2rem;padding:2rem}.registrants-display h2{border-bottom:2px solid var(--primary-light);color:var(--accent);margin-bottom:1.5rem;padding-bottom:.5rem}.registrants-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.registrant-item{align-items:center;background-color:var(--primary);border-radius:4px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:1rem}.registrant-name{color:var(--text-light);font-weight:600}.registrant-distance{color:var(--accent);font-size:.9rem;font-weight:500}@media (max-width:768px){.register-container{padding:1rem}.register-container h1{font-size:2rem}.race-requirements,.registration-info,.registration-placeholder,.registration-process{padding:1.5rem}.form-coming-soon{padding:2rem 1rem}.registrants-list{grid-template-columns:1fr}.registrant-item{align-items:flex-start;flex-direction:column;gap:.5rem}}@media (max-width:600px){.password-gate{align-items:stretch;flex-direction:column;gap:.7rem}.password-gate label{font-size:1rem;margin-bottom:.2rem;margin-right:0}.password-gate button,.password-gate input[type=password]{box-sizing:border-box;margin-left:0;min-width:0;width:100%}}
/*# sourceMappingURL=main.ba829705.css.map*/