:root{--ink:#173d31;--muted:#6e7b74;--line:#e1e6dd;--green:#174b3b;--paper:#f6f6f0;--lime:#d3e78a}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink)}header,main,footer{max-width:1160px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:30px 32px;border-bottom:1px solid var(--line)}a{color:inherit;text-decoration:none}.brand{display:flex;gap:12px;align-items:center;font-size:16px;font-weight:650}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;font-size:15px;letter-spacing:-1px}.brand small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}.header-label{font-size:12px;color:var(--muted)}main{display:grid;grid-template-columns:1fr 1.14fr;gap:75px;padding:64px 32px 80px}.intro{padding-top:18px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;display:flex;align-items:center;gap:8px}.eyebrow i{width:6px;height:6px;background:#5c8a4c;border-radius:50%}h1{font-size:88px;line-height:.99;letter-spacing:-6px;font-weight:550;margin:30px 0 26px}p{font-size:15px;line-height:1.65;color:var(--muted)}.facts{display:flex;gap:22px;margin-top:33px;font-size:11px;color:var(--muted)}.facts span{padding-right:20px;border-right:1px solid #d9dfd3}.facts span:last-child{padding-right:0;border:0}.facts b{display:block;font-size:22px;font-weight:500;color:var(--ink);margin-bottom:5px}.note{display:flex;gap:18px;align-items:center;margin-top:45px}.note>span{font-size:32px}.note p{font-size:12px;line-height:1.7}.pilot{font-size:11px;color:var(--muted);line-height:1.7;max-width:325px;margin-top:30px}.booking{background:#fff;padding:32px;border:1px solid #e2e6dc;border-radius:20px;box-shadow:0 18px 55px #233c2410;min-height:500px}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:30px}.card-top .eyebrow{font-size:9px;color:var(--muted);letter-spacing:1.6px}h2{font-size:25px;letter-spacing:-.8px;font-weight:550;margin:10px 0 0}.step{font-size:10px;border:1px solid var(--line);padding:7px 9px;border-radius:20px;color:var(--muted);white-space:nowrap}.section-label{display:flex;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:12px}.section-label span{font-size:10px;font-weight:400;color:var(--muted)}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 0;cursor:pointer;color:var(--muted);font:inherit;font-size:10px}.day b{display:block;font-size:19px;margin-top:7px;font-weight:500;color:var(--ink)}button{font-family:inherit}button:focus-visible,input:focus-visible{outline:3px solid #97b75f;outline-offset:3px}.day.selected{background:var(--green);border-color:var(--green);color:#d8e4d9}.day.selected b{color:white}.time-label{margin-top:27px}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 0;font-size:14px;color:var(--ink);cursor:pointer}.slot.selected{background:var(--lime);border-color:#bdd36b;color:#203f1f;font-weight:650}.slot:hover,.day:hover{border-color:#5e8061}.status{font-size:12px;margin:14px 0 4px;min-height:20px}.text-button{background:none;border:0;color:var(--green);font-size:12px;cursor:pointer;padding:8px 0}.primary{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 18px;background:var(--green);color:white;border:0;border-radius:9px;font-size:13px;margin-top:20px;cursor:pointer}.primary span{font-size:18px;line-height:1}.primary:disabled{background:#e4e8e0;color:#92998e;cursor:default}.helper{font-size:10px;line-height:1.6;text-align:center;margin:11px 0 0}.summary{background:#f2f5eb;border:1px solid #e4ebd8;border-radius:9px;padding:14px 16px;margin-top:16px;font-size:13px;line-height:1.6}.summary strong{display:block}.summary small{color:var(--muted)}label:not(.consent){display:block;font-size:12px;font-weight:600;margin:23px 0 9px}input:not([type=checkbox]){width:100%;border:1px solid var(--line);border-radius:8px;padding:14px;font:inherit;font-size:14px;color:var(--ink);background:#fff}.field-note{font-size:11px;margin:7px 0}.consent{display:flex;gap:10px;font-size:10px;line-height:1.6;color:var(--muted);margin-top:23px}.consent input{width:16px;height:16px;flex-shrink:0;accent-color:var(--green);margin:2px 0 0}.error{color:#9f3324;font-size:12px}.success-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;font-size:25px;background:var(--lime);margin:15px 0 25px}#success>p{font-size:14px}#success .helper{text-align:left}#again{margin-top:25px}footer{display:flex;justify-content:space-between;padding:24px 32px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:850px){main{gap:35px;grid-template-columns:1fr 1.3fr}h1{font-size:67px;letter-spacing:-4px}.booking{padding:24px}.facts{gap:10px}.facts span{padding-right:10px}.facts b{font-size:19px}}@media(max-width:650px){header{padding:20px}.header-label{display:none}main{display:block;padding:32px 18px 45px}.intro{padding:0 4px}h1{font-size:52px;line-height:1.12;letter-spacing:-1.2px;margin:18px 0 16px}h1 br{display:none}.intro>p{font-size:14px}.facts{margin:22px 0 24px;gap:23px}.facts b{font-size:20px}.note{display:none}.pilot{max-width:none;margin:0 0 25px;font-size:10px}.booking{padding:25px 20px;border-radius:16px;min-height:480px}.card-top{margin-bottom:27px}h2{font-size:23px}.day{padding:11px 0}.slots{grid-template-columns:repeat(4,1fr)}footer{padding:20px;line-height:1.7}footer span:last-child{display:none}}

.duration-options{display:flex;gap:8px;margin:0 0 25px}.duration-options button{flex:1;padding:12px;border-radius:8px;border:1px solid var(--line);background:white;color:var(--ink);font-size:13px;cursor:pointer}.duration-options button.selected{border-color:var(--green);background:#edf3e7;font-weight:600}

.activity-options{display:grid;gap:8px;margin-bottom:14px}.activity-options button,.audience-options button{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:14px;font-size:13px;text-align:left;cursor:pointer}.activity-options button.selected,.audience-options button.selected{border-color:var(--green);background:#edf3e7;font-weight:600}.audience-options{display:flex;gap:8px;margin-bottom:24px}.audience-options button{flex:1;font-size:12px}.activity-scene{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f2f5eb;border-radius:10px;margin:0 0 22px;padding:10px 14px;color:#376b54;overflow:hidden}.activity-scene svg{width:160px;height:64px;flex-shrink:0}.activity-scene>span{font-size:11px;line-height:1.5;max-width:110px}.activity-scene svg>g{display:none}.activity-scene[data-activity=swim] .scene-swim,.activity-scene[data-activity=gym] .scene-gym,.activity-scene[data-activity=martial] .scene-martial{display:block}.waves{animation:wave 2.7s ease-in-out infinite}.swimmer-arm{transform-origin:100px 30px;animation:swim 2.7s ease-in-out infinite}.dumbbell{animation:lift 2.2s ease-in-out infinite}.punch{transform-origin:96px 27px;animation:strike 2.2s ease-in-out infinite}@keyframes wave{0%,100%{transform:translateX(-5px)}50%{transform:translateX(5px)}}@keyframes swim{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes lift{0%,100%{transform:translateY(5px)}50%{transform:translateY(-5px)}}@keyframes strike{0%,45%,100%{transform:translateX(-7px)}55%,65%{transform:translateX(7px)}}@media(prefers-reduced-motion:reduce){.waves,.swimmer-arm,.dumbbell,.punch{animation:none}}

.swim-body{animation:swim-glide 3.6s ease-in-out infinite;transform-origin:90px 30px}.swim-reach{animation:swim-reach 3.6s ease-in-out infinite;transform-origin:88px 27px}.water-back{animation:water-drift 3.6s ease-in-out infinite}.water-front{animation:water-drift 4.4s ease-in-out infinite reverse;opacity:.5}.boxing-glove{animation:glove-move 3.6s cubic-bezier(.45,0,.25,1) infinite;transform-origin:99px 38px}.strike-accent{animation:glove-accent 3.6s ease-out infinite}@keyframes swim-glide{0%,100%{transform:translate(-3px,1px) rotate(-2deg)}50%{transform:translate(3px,-1px) rotate(1deg)}}@keyframes swim-reach{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(8deg)}}@keyframes water-drift{0%,100%{transform:translateX(-4px)}50%{transform:translateX(4px)}}@keyframes glove-move{0%,55%,100%{transform:translateX(-2px) rotate(-4deg)}68%,76%{transform:translateX(6px) rotate(3deg)}}@keyframes glove-accent{0%,57%,100%{opacity:0;transform:translateX(-3px)}69%,74%{opacity:.65;transform:translateX(2px)}85%{opacity:0;transform:translateX(6px)}}@media(prefers-reduced-motion:reduce){.swim-body,.swim-reach,.water-back,.water-front,.boxing-glove,.strike-accent{animation:none}.strike-accent{opacity:.5}}

#swim-audience,#timing{scroll-margin-top:24px}
