*{box-sizing:border-box}html{scroll-behavior:smooth}main{max-width:1500px;margin:auto;padding:0 4vw}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.1}h1{font-size:clamp(2.2rem,4.2vw,4.4rem);margin:12px 0 20px}h1 em{color:#86744e}h2{font-size:2.1rem;margin:10px 0}p{line-height:1.65}.intro{display:grid;grid-template-columns:1.4fr 1fr;gap:5vw;padding:45px 0 32px;align-items:center}.intro p{max-width:65ch}.intro aside{border-left:2px solid #aa9468;padding:22px 30px}.intro strong{font:2.1rem Georgia}.cta{display:inline-block;background:#233d43;color:white;border:0;padding:13px 19px;text-decoration:none;font:inherit;cursor:pointer}.controls{background:#233d43;color:white;padding:20px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.controls label{display:grid;gap:5px;font-size:.9rem}select{font:inherit;padding:9px;border:1px solid #becac7;border-radius:0;background:white;color:#233d43}.controls p{font-size:.9rem;margin-left:auto;max-width:36ch}.months{display:grid;grid-template-columns:repeat(12,1fr);margin:16px 0;gap:5px}button{font:inherit;cursor:pointer}.months button{background:transparent;color:#233d43;border:1px solid #bac7c3;padding:12px 4px}.months button[aria-pressed=true]{background:#233d43;color:white}.month-head{display:flex;justify-content:space-between;align-items:center;margin:30px 0 10px}.month-head p{margin:5px 0}.paging{display:flex;gap:8px}.paging button{background:white;border:1px solid #a4b4b0;width:44px;height:44px}.paging button:disabled{opacity:.3;cursor:default}.hint,#count{font-size:.9rem;margin:5px 0}.calendar-wrap{margin-top:18px;border:1px solid #bbc6c2}.weekdays,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{background:#e8edea;text-align:center;padding:10px;font-size:.9rem}.day{min-height:105px;border-top:1px solid #d6ddda;border-right:1px solid #d6ddda;padding:8px;background:#fff}.day.blank{background:#f0f2ef}.day-number{font-size:.85rem;color:#60716e}.event{display:block;width:100%;text-align:left;background:#e9eeeb;color:#233d43;border:0;border-left:3px solid #a28c60;padding:8px;margin:5px 0;font-size:.88rem;line-height:1.4}.event small{display:block;font-size:.75rem;text-transform:uppercase;font-weight:bold;margin-bottom:4px}.event:hover{background:#dce5df}.agenda{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.agenda button{border:1px solid #bac7c3;background:white;color:#233d43;text-align:left;padding:18px;line-height:1.5}.agenda strong{display:block;font:1.25rem/1.25 Georgia;margin:8px 0}.agenda small{font-size:.85rem}.schedule-note{font-size:.9rem;color:#526763;max-width:110ch}.explain{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:55px 0;border-bottom:1px solid #b9c4c0}.tailored{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:65px 0}.tailored h2{font-size:2.7rem}form{align-self:center;background:#e9ede9;padding:30px}form label{display:block;font-weight:bold}textarea{font:inherit;width:100%;padding:12px;margin:14px 0;resize:vertical;border:1px solid #a5b4ae}form p{font-size:.9rem}pre{white-space:pre-wrap;font:inherit;overflow-wrap:anywhere}dialog{border:1px solid #aebbb6;max-width:720px;width:calc(100% - 30px);max-height:90vh;overflow:auto;padding:40px;background:#f7f8f6;color:#233d43}dialog::backdrop{background:#10272cbf}.close{float:right;font-size:1.7rem;background:transparent;border:0;color:inherit}dt{font-weight:bold;margin-top:18px;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}dd{margin:5px 0 0;line-height:1.6}.brief-note{border-top:1px solid #cad3cf;padding-top:16px;font-size:.9rem}footer{padding:30px 4vw;border-top:1px solid #cbd2cf;font-size:.9rem}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #b29756;outline-offset:3px}[hidden]{display:none!important}@media(max-width:950px){.months{grid-template-columns:repeat(6,1fr)}.agenda{grid-template-columns:repeat(2,1fr)}.day{min-height:75px}.event{font-size:.75rem;padding:4px}.intro{gap:20px}.intro aside{padding:15px}}@media(max-width:650px){.intro,.tailored,.explain{grid-template-columns:1fr}.intro{padding-top:25px}.intro aside{border-left:0;border-top:1px solid #bac7c3}.controls{gap:12px}.controls p{margin:0}.controls label,select{max-width:100%}.calendar-wrap{display:none}.agenda{grid-template-columns:1fr}.months button{font-size:.9rem}.month-head h2{font-size:1.8rem}.tailored{padding:35px 0}.explain{gap:20px;padding:30px 0}form{padding:20px}.buy-header{flex-wrap:wrap;gap:10px}dialog{padding:25px}.hint{font-size:.85rem}}
a.cta{color:#fff}.intro{padding-top:25px;padding-bottom:20px}.intro h1{font-size:clamp(2.2rem,3.6vw,3.7rem)}

.day.weekend{background:#e9ece9;color:#71807a}.weekdays span:nth-last-child(-n+2){color:#65756f}
