@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--forest:#102e28;--forest2:#1d5040;--lime:#d5f282;--cream:#f7f8f2;--ink:#1b2e28;--muted:#6d7d75;--line:#dce4dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}h1,h2,h3{font-family:Outfit,Arial,sans-serif;margin:0}h2{font-size:clamp(28px,3.5vw,43px)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}.top{display:flex;gap:24px;align-items:center;justify-content:space-between;background:#fff;padding:15px max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px}.brand b{display:block;font-family:Outfit;font-size:25px;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:1.8px;color:var(--muted)}.logo{background:var(--forest);color:var(--lime);font-size:26px;font-weight:800;border-radius:12px;padding:9px 15px}.top nav{display:flex;gap:23px;font-size:13px;font-weight:700}.top nav a:hover{color:#4b8062}.account{display:flex;gap:8px;align-items:center;font-size:12px;flex-wrap:wrap}.outline{border:1px solid #9ab3a5;background:transparent;padding:11px 15px;border-radius:9px;font-weight:700;color:var(--forest)}.primary{background:var(--forest);color:white;border:0;padding:15px 21px;border-radius:10px;font-weight:800}.primary:hover{background:var(--forest2)}.linkbutton{display:inline-flex;gap:30px;align-items:center}.full{width:100%}.hero{background:var(--forest);color:white;display:grid;grid-template-columns:1.1fr .9fr;min-height:475px;overflow:hidden}.heroText{padding:80px max(30px,calc((100vw - 1200px)/2)) 55px;min-width:0}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:800;color:var(--lime);margin-bottom:17px}.eyebrow.green{color:#528b55}.hero h1{font-size:clamp(54px,6vw,88px);line-height:1.03;letter-spacing:-2.5px}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{max-width:440px;color:#d5e1d7;line-height:1.75;font-size:15px;margin:22px 0 28px}.hero .primary{background:var(--lime);color:var(--forest)}.heroFacts{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#d8e6d9;margin-top:42px}.heroArt{background:linear-gradient(145deg,#2b6650,#173c31);display:flex;align-items:center;justify-content:center;position:relative;min-height:350px}.courtArt{width:60%;height:75%;min-height:280px;background:#5caa8b;transform:perspective(650px) rotateX(12deg) rotateZ(-13deg);border:8px solid #c8edbd;box-shadow:0 30px 0 #194536,0 40px 55px #09231e;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.courtArt:before{content:'';position:absolute;inset:7%;border:4px solid white}.courtArt:after{content:'';position:absolute;top:50%;left:7%;right:7%;border-top:4px solid white}.courtArt span{font-size:45px;letter-spacing:12px;color:#c5e8cf;opacity:.5;font-weight:800}.net{position:absolute;top:8%;bottom:8%;left:50%;border-left:4px dashed white}.ball{position:absolute;right:22%;top:24%;color:var(--lime);font-size:45px}.artTag{position:absolute;bottom:30px;right:25px;font-size:12px;letter-spacing:3px;font-weight:800;color:var(--lime)}.section{max-width:1200px;margin:auto;padding:72px 24px}.sectionHead{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.sectionHead p{color:var(--muted);margin:10px 0 0}.pill{background:#e7efe8;border-radius:30px;padding:10px 14px;font-size:12px;font-weight:700}.bookingGrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:22px}.panel{background:white;border:1px solid var(--line);padding:28px;border-radius:18px;box-shadow:0 6px 22px #123b2710}.fieldrow{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:23px}label{display:block;font-size:13px;font-weight:700}label input:not([type=radio]),label select{display:block;width:100%;border:1px solid #d2ded5;border-radius:9px;padding:12px;margin-top:8px;background:white;color:var(--ink)}.fieldlabel{font-size:13px;font-weight:800;margin:18px 0 11px}.muted{font-weight:400;color:var(--muted)}.choiceRow{display:flex;gap:9px;flex-wrap:wrap}.choice{border:1px solid var(--line);border-radius:10px;padding:12px;background:#f9fbf7}.choice input{accent-color:var(--forest)}.info{align-self:center;background:#eff5ec;border-radius:10px;padding:13px;font-size:12px;color:#446a4c;line-height:1.5}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.slot{background:#f7faf5;border:1px solid #dbe7da;border-radius:10px;padding:13px 7px;text-align:center;color:var(--ink);font-size:12px;font-weight:800}.slot small{display:block;color:#74847b;font-weight:500;font-size:10px;margin-top:4px}.slot.selected{background:var(--forest);border-color:var(--forest);color:white}.slot.selected small{color:#e0efc7}.slot:disabled{background:#f0f1ee;color:#9ca8a0}.tiny{font-size:12px;color:var(--muted);line-height:1.6;margin-top:14px}.summary h3{font-size:26px;margin-bottom:26px}.sumLine{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:15px 0;font-size:13px}.sumLine span{color:var(--muted)}.sumLine strong{text-align:right}.total{display:flex;justify-content:space-between;align-items:center;margin:27px 0}.total strong{font-family:Outfit;font-size:34px;color:var(--forest)}.pay{background:#eef6e9;padding:17px;border-radius:12px;margin-bottom:18px}.pay b{font-size:13px}.pay .number{font-family:Outfit;font-weight:800;font-size:22px;margin:10px 0}.pay small{color:#526c57;line-height:1.5;display:block}.textbutton{border:0;background:none;color:#32704c;text-decoration:underline;font-size:12px;font-weight:800;padding:7px}.rateGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}.rateCard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.rateCard span{font-size:10px;font-weight:800;letter-spacing:1px;color:#5c8768}.rateCard h3{font-size:34px;margin:18px 0}.rateCard h3 small{font-family:'DM Sans';font-size:11px}.rateCard p{font-size:13px;line-height:1.6;color:var(--muted)}.rateCard.highlight{background:#eaf4d8}.empty{background:white;border:1px solid var(--line);padding:26px;border-radius:12px;color:var(--muted)}.bookingItem{background:white;border:1px solid var(--line);padding:20px;border-radius:12px;margin:12px 0}.bookingItem header{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.bookingItem p{font-size:13px;line-height:1.7;margin:10px 0}.bookingItem .actions{display:flex;gap:8px;flex-wrap:wrap}.status{border-radius:30px;background:#f5e9c7;color:#6d5014;padding:6px 10px;font-size:11px;font-weight:800}.status.confirmed{background:#d8f2df;color:#185b35}.status.rejected,.status.cancelled{background:#f3dedd;color:#7e3838}footer{background:var(--forest);color:#e1eee2;padding:30px max(24px,calc((100vw - 1200px)/2));display:flex;gap:15px;flex-wrap:wrap;justify-content:space-between;font-size:12px}.modal{position:fixed;inset:0;background:#0d231dd9;z-index:30;display:flex;align-items:center;justify-content:center;padding:18px}.modal[hidden],[hidden]{display:none!important}.dialog{position:relative;background:white;border-radius:18px;padding:30px;max-width:470px;width:100%;max-height:92vh;overflow:auto}.dialog h2{margin-bottom:18px}.dialog form{display:grid;gap:16px}.dialog p{line-height:1.6}.close{position:absolute;right:18px;top:15px;background:none;border:0;font-size:28px}.notice{padding:14px 18px;background:#fcead6;color:#79471d;border-radius:10px;margin:15px 0}.notice.good{background:#e1f4e3;color:#23613a}@media(max-width:850px){.hero{grid-template-columns:1fr}.heroText{padding:60px 26px}.heroArt{min-height:270px}.courtArt{height:230px;min-height:230px;width:55%}.bookingGrid{grid-template-columns:1fr}.rateGrid{grid-template-columns:repeat(2,1fr)}.top{padding:12px 20px}.top nav{order:3;width:100%;justify-content:space-between}.section{padding:48px 16px}}@media(max-width:500px){.fieldrow{grid-template-columns:1fr}.slots{grid-template-columns:repeat(2,1fr)}.rateGrid{grid-template-columns:1fr}.hero h1{font-size:56px}.sectionHead{align-items:start;flex-direction:column}.panel{padding:19px}}
