fieldset{min-inline-size:0}.header nav{flex-wrap:wrap;min-width:0}.details{min-width:0}
:root{font-family:system-ui,sans-serif;color:#1f2937;background:#fff}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:3px solid #d18720;outline-offset:3px}[hidden]{display:none!important}.header{max-width:1248px;margin:auto;padding:20px 24px;border-bottom:1px solid #8eb9e8;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:700;text-decoration:none;color:#2c66a8}.header nav{display:flex;align-items:center;gap:20px}.header a{color:#2c66a8}.header select{padding:5px}main{max-width:1200px;margin:auto;padding:40px 24px}.intro{margin-bottom:30px}.intro h1{font-size:38px;margin:0 0 12px}.intro p{max-width:760px;line-height:1.6;color:#526276}.layout{border-top:1px solid #8eb9e8;padding-top:28px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:42px}.calendar{min-width:0}fieldset{border:0;padding:0;margin:0 0 24px}legend{font-weight:650;text-align:center;width:100%;margin-bottom:12px}.duration{display:flex;justify-content:center;gap:10px}.duration label,.times label{position:relative;display:block;cursor:pointer}.duration input,.times input{position:absolute;opacity:0;width:1px;height:1px}.duration span,.times span{display:block;text-align:center;border:1px solid #aac7e4;border-radius:4px;padding:12px 18px;color:#24598e;background:white}.duration input:checked+span,.times input:checked+span{color:white;background:#2c66a8}.duration input:focus-visible+span,.times input:focus-visible+span{outline:3px solid #d18720}.week-nav{display:flex;justify-content:center;align-items:center;gap:15px;margin:12px 0}.week-nav button,.days button,.details button{background:#2c66a8;color:white;border:0;border-radius:4px;padding:10px}.days{display:grid;grid-template-columns:repeat(5,minmax(96px,1fr));gap:10px;overflow-x:auto}.day{background:#f0f7ff;padding:10px 5px;text-align:center;border-radius:5px}.day h3{font-size:13px;text-transform:capitalize;margin:0 0 10px}.day button{width:100%;min-height:45px}.day button[aria-pressed=true]{background:#173b60}.times{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.details{background:#f4f8fc;border:1px solid #dbe6f2;border-radius:8px;padding:24px}.details h2{margin-top:0}.details label{display:block;margin-bottom:15px;font-weight:600}.details input,.details select,.details textarea{display:block;width:100%;padding:10px;border:1px solid #bdccd8;border-radius:4px;background:white;margin-top:5px}.muted{color:#526276;font-size:14px}@media(max-width:850px){.layout{grid-template-columns:1fr;gap:24px}.details{padding:20px}.intro h1{font-size:32px}.days{grid-template-columns:repeat(5,minmax(90px,1fr))}.header{flex-wrap:wrap}}

#confirmation{width:min(90vw,480px);border:0;border-radius:12px;padding:32px;text-align:center;box-shadow:0 16px 60px #0003;color:#1f2937}#confirmation::backdrop{background:#10243a99}#confirmation h2{margin-top:0}#confirmation p{line-height:1.6}#confirmation a{display:inline-block;background:#2c66a8;color:white;text-decoration:none;border-radius:4px;padding:12px 24px;margin-top:8px}
