:root{--brand:#174b45;--ink:#203330;--muted:#576862;--line:#d8e2dc;--paper:#f5f7f2}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,sans-serif}a{color:#176556}button,input,textarea{font:inherit}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b88019;outline-offset:3px}.top{display:flex;align-items:center;justify-content:space-between;padding:22px max(5vw,16px);background:#fff;border-bottom:1px solid var(--line);gap:20px}.brand{font-weight:900;font-size:23px;color:var(--ink);text-decoration:none;line-height:1.2}.brand span{display:block;font-size:12px;letter-spacing:2px;font-weight:500}.top nav{display:flex;gap:24px;flex-wrap:wrap}main{max-width:1200px;margin:auto;padding:28px 20px}h1,h2,h3{line-height:1.2}h1{font-size:clamp(30px,5vw,54px);letter-spacing:-1.5px}.hero{padding:44px;background:var(--brand);color:white;border-radius:20px;margin-bottom:32px}.hero h2{font-weight:500;font-size:24px}.hero p{max-width:800px}.eyebrow{font-size:12px;letter-spacing:2px;color:#e2d799}.logo{max-width:300px;max-height:100px;background:white;padding:10px;border-radius:6px}.banner{width:100%;max-height:300px;object-fit:cover;border-radius:12px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.course{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.course.featured{border:2px solid #b28b38}.course>img{width:100%;aspect-ratio:16/9;object-fit:cover}.course-placeholder{aspect-ratio:16/9;background:linear-gradient(135deg,#174b45,#426746);color:#edf2df;display:flex;align-items:center;justify-content:center;gap:14px;font-size:40px;font-weight:800}.course-placeholder span{border-left:1px solid;padding-left:14px;font-size:22px;letter-spacing:3px}.course-body{padding:24px;display:flex;flex-direction:column;flex:1}.course h2{font-size:21px}.course p{font-size:14px}.course .price{margin-top:auto;font-size:26px;font-weight:700}.button{display:inline-block;background:var(--brand);border:0;color:white;border-radius:8px;padding:12px 20px;font-weight:650;cursor:pointer;text-decoration:none;text-align:center}.button:disabled{opacity:.6;cursor:wait}.badge{color:#6c4b06;background:#fff0bc;padding:4px 10px;border-radius:20px;align-self:start;font-size:12px}.notice{padding:22px;background:#e4f0e5;border-left:5px solid #246548;border-radius:8px;margin:16px 0}.error{background:#fff0e9;border-color:#9a311a}.support{margin:48px 0}.support a{margin-right:18px}dialog{width:min(720px,94vw);max-height:90vh;border:0;border-radius:16px;padding:32px;color:var(--ink);overflow-y:auto}dialog::backdrop{background:#102923bb}.close{float:right;border:0;border-radius:50%;background:#edf0e8;width:40px;height:40px;font-size:28px;cursor:pointer}.modal-cover{width:100%;max-height:260px;object-fit:cover;border-radius:8px}.price{font-size:28px;font-weight:750}label{display:block;margin:14px 0}input,textarea{display:block;width:100%;border:1px solid #a4b6ad;border-radius:7px;padding:11px;background:white}input[type=checkbox]{width:auto;display:inline}.check{font-size:14px}.form-panel{max-width:760px;background:white;border:1px solid var(--line);border-radius:16px;padding:32px;margin:20px auto}.form-panel h1{font-size:32px}.address-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}footer{padding:32px 20px;text-align:center;background:#e6ece5;color:var(--muted)}[hidden]{display:none!important}@media(max-width:900px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.top{align-items:flex-start;flex-direction:column}.top nav{gap:16px}main{padding:16px}.hero{padding:26px}.course-grid,.address-grid{grid-template-columns:1fr}dialog,.form-panel{padding:22px}h1{letter-spacing:-.5px}}
