:root{--lime:#c6f000;--black:#000;--ink:#171717;--muted:#bcbcbc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--black);color:white;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--lime);outline-offset:6px}a:hover{text-decoration:underline}header{display:flex;justify-content:space-between;align-items:center;padding:25px 5%;border-bottom:1px solid #333;gap:24px}.brand{font-size:1.8rem;font-weight:900;letter-spacing:-1px;line-height:1}.brand span{display:block;font-size:.75rem;letter-spacing:1.5px;margin-top:8px}nav{display:flex;gap:30px;align-items:center;font-size:.9rem}.navcta{padding:10px 22px;border:1px solid var(--lime);color:var(--lime)}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:700px;padding:52px 5% 60px;gap:6%}.eyebrow{font-size:.8rem;letter-spacing:1.7px;font-weight:700;margin:0 0 26px;color:var(--lime)}h1,h2{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;letter-spacing:-1px;line-height:1.01;margin:0}h1{font-size:clamp(3.4rem,6.6vw,6.5rem)}em{font-style:normal;color:var(--lime)}.intro{max-width:490px;color:#c5c5c5;margin:25px 0 30px;font-size:1.05rem}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-block;background:var(--lime);color:black;font-size:.9rem;padding:16px 24px;font-weight:800;line-height:1.4}.button:hover{background:#dcff39;text-decoration:none}.textlink{font-weight:700;font-size:.9rem;text-decoration:underline;text-underline-offset:6px}.hero-image{margin:0;position:relative;min-height:550px;overflow:hidden}.hero-image img{height:100%;width:100%;object-fit:cover;position:absolute;filter:brightness(.65)}figcaption{position:absolute;top:20px;left:24px;font-size:.75rem;letter-spacing:1.5px}.image-label{position:absolute;bottom:30px;left:25px;font-family:Impact,Arial,sans-serif;font-size:3.2rem;line-height:1.04}.ticker{display:flex;justify-content:space-around;gap:25px;flex-wrap:wrap;padding:22px 5%;background:var(--lime);color:black;font-weight:900;font-size:1.1rem;letter-spacing:2px}.section{padding:95px 5%}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:50px}h2{font-size:clamp(2.6rem,4.4vw,4.4rem)}.section-head>p{max-width:360px;color:var(--muted)}.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#333;border:1px solid #333}.programs article{background:var(--ink);padding:35px;position:relative}.number{font-family:Impact,Arial,sans-serif;font-size:3rem;color:#777}.programs .eyebrow{margin:30px 0 12px;font-size:.75rem}h3{font-size:1.6rem;line-height:1.2;margin:0 0 20px}.programs p:not(.eyebrow),.about p{color:var(--muted)}.programs .textlink{display:inline-block;margin-top:20px;color:var(--lime)}.camp{background:var(--lime);color:black;margin:0 5%;padding:60px;display:grid;grid-template-columns:1.4fr 1fr;gap:70px}.camp .eyebrow{color:black}.camp p:not(.eyebrow){max-width:440px}.dark{background:black;color:white;margin-top:15px}.dark:hover{background:#333}dl{margin:0}dl div{padding:18px 0;border-bottom:1px solid #6c8300}dt{font-size:.8rem;font-weight:700;letter-spacing:1px}dd{margin:3px 0 0;font-size:1.9rem;font-weight:800;line-height:1.2}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-bottom:1px solid #333}.credentials{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.credentials span{border:1px solid #444;padding:8px 12px;font-size:.85rem}details{border-bottom:1px solid #333;padding:22px 0;max-width:1000px}summary{font-size:1.1rem;cursor:pointer;font-weight:700}details p{color:var(--muted);max-width:750px}.faq h2{margin-bottom:30px}.contact{padding:75px 5% 100px;border-top:1px solid #333}.contact h2{font-size:clamp(3.4rem,7vw,7rem)}.contact p:not(.eyebrow){color:var(--muted);margin:25px 0 30px}.outline{background:transparent;color:white;border:1px solid #555}.outline:hover{background:#222}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:40px 5%;border-top:1px solid #333}footer p{color:var(--muted);font-size:.85rem}footer div{display:flex;gap:20px}.copyright{width:100%;margin:0}.skip{position:absolute;top:-100px;left:20px;background:var(--lime);color:black;padding:15px;z-index:10}.skip:focus{top:10px}@media(max-width:800px){header{padding:22px 6%;flex-wrap:wrap}nav{gap:20px;flex-wrap:wrap}.hero{grid-template-columns:1fr;padding:40px 6%;gap:35px}.hero-image{min-height:450px}.section{padding:65px 6%}.section-head{display:block}.section-head>p{margin-top:25px}.programs{grid-template-columns:1fr}.camp{margin:0;padding:50px 6%;grid-template-columns:1fr;gap:30px}.about{grid-template-columns:1fr;gap:35px}.contact{padding:65px 6%}.ticker{font-size:.9rem}.ticker span:last-child,.ticker b:last-of-type{display:none}h1{font-size:clamp(3.1rem,12vw,5rem)}footer{padding:35px 6%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.header-brand{display:flex;align-items:center;gap:16px}.brand-logo{display:block;width:80px;height:80px;object-fit:contain;flex-shrink:0}@media(max-width:800px){.brand-logo{width:64px;height:64px}.header-brand{gap:12px}}

.hero{align-items:center}.camp-poster{min-height:0;overflow:visible}.camp-poster>a{display:block}.camp-poster img{display:block;position:static;width:100%;height:auto;object-fit:contain;filter:none}.camp-poster figcaption{position:static;text-align:center;margin-top:16px;font-size:1rem;letter-spacing:0;color:var(--lime)}

.booking-main{max-width:1200px;margin:auto;padding:55px 5% 80px}.booking-main h1{font-size:clamp(3.5rem,7vw,6rem)}.booking-intro{max-width:650px;font-size:1.1rem;color:#bcbcbc}.booking-note{margin:28px 0 40px;padding:22px 26px;border-left:4px solid var(--lime);background:var(--ink);max-width:850px}.booking-note strong{color:var(--lime)}.booking-note p{margin:8px 0 0}.booking-note p:last-child{color:#bcbcbc}.booking-days{display:grid;gap:28px}.booking-day{border:1px solid #333;padding:26px}.booking-day h2{font-family:Arial,Helvetica,sans-serif;font-size:1.35rem;line-height:1.3;letter-spacing:0;margin-bottom:20px}.slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.slot{display:flex;flex-direction:column;gap:10px;background:#171717;border:1px solid #444;padding:18px;font-weight:700}.slot:hover{border-color:var(--lime);background:#242b0a;text-decoration:none}.slot-action{color:var(--lime);font-size:.875rem}nav [aria-current=page]{color:var(--lime);text-decoration:underline;text-underline-offset:6px}.booking-help{margin-top:30px;color:#bcbcbc}@media(max-width:800px){.slots{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-main{padding:40px 6% 60px}.booking-day{padding:22px}}@media(max-width:480px){.slots{grid-template-columns:1fr}.slot{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}.booking-note{padding:18px}.booking-help .textlink{display:block;margin-top:10px}}

.shop-main{max-width:1400px;margin:auto;padding:55px 5% 80px}.shop-main h1{font-size:clamp(3.5rem,7vw,6rem);margin-bottom:35px}.shop-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:start}.kit-photo{width:100%;height:auto;display:block}.product-title{font-family:Arial,Helvetica,sans-serif;font-size:1.7rem;line-height:1.3;letter-spacing:0;margin-top:25px}.kit-price{font-size:2rem;font-weight:800;color:var(--lime)}.kit-price span{font-size:1rem;font-weight:400;color:#bcbcbc}.order-panel{background:#171717;border:1px solid #333;padding:30px}.order-panel h2{font-family:Arial,Helvetica,sans-serif;font-size:1.7rem;line-height:1.3;letter-spacing:0}.order-panel>p{color:#bcbcbc}form label{display:block;font-weight:700;margin:20px 0 6px}form label span{font-weight:400;color:#bcbcbc}input,textarea{width:100%;background:#000;color:#fff;border:1px solid #666;padding:12px;font:inherit;border-radius:0}input:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.size-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-note{font-size:.875rem;color:#bcbcbc}.order-total{font-size:1.5rem;font-weight:700}.order-total output{color:var(--lime)}button.button{border:0;cursor:pointer;font:inherit;font-weight:800;width:100%}@media(max-width:800px){.shop-grid{grid-template-columns:1fr;gap:25px}.shop-main{padding:40px 6% 60px}.order-panel{padding:22px}}@media(max-width:380px){.size-grid{grid-template-columns:1fr;gap:0}}

#booking-form{display:grid;gap:18px;max-width:640px}#booking-form label{display:grid;gap:8px}#booking-form input:not([type=checkbox]),#booking-form select,#booking-form textarea{width:100%;padding:14px;background:#171717;color:white;border:1px solid #555;border-radius:4px;font:inherit}#booking-form input[type=checkbox]{width:20px;height:20px}#booking-form button{cursor:pointer}#booking-form [hidden]{display:none}
