:root{--ink:#252021;--pink:#ac5167;--cream:#fff8f6}*{box-sizing:border-box}body{margin:0;font:16px/1.6 Arial,sans-serif;color:var(--ink);background:var(--cream)}header{position:sticky;top:0;background:#fff;z-index:3;border-bottom:1px solid #eadade;display:flex;align-items:center;justify-content:space-between;padding:18px 6%;gap:20px}.brand{font:26px Georgia,serif;letter-spacing:3px}.brand small{display:block;font:10px Arial;letter-spacing:3px;margin-top:5px}header nav{display:flex;gap:24px;flex-wrap:wrap}a{color:inherit;text-decoration:none}button{border:0;background:var(--pink);color:white;padding:13px 24px;font:inherit;cursor:pointer;border-radius:3px}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:42px;margin:12px 0 24px}h2{font-size:26px}h3{font-size:25px}main{padding:45px 6% 65px;max-width:1440px;margin:auto;background:white;min-height:75vh}.eyebrow{color:var(--pink);letter-spacing:3px;font-size:14px}.steps{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.steps button{background:#f6edf0;color:var(--ink);padding:11px 17px}.steps button.active{background:var(--pink);color:white}.bookinglayout{display:grid;grid-template-columns:2fr 1fr;gap:35px}.summary{background:var(--cream);padding:28px;align-self:start;border:1px solid #eadade;position:sticky;top:110px}.summary h2{margin-top:0}.summary .row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #eee}.total{font-size:20px}.categorytabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.categorytabs button{background:#f6edf0;color:var(--ink);padding:9px 14px;font-size:14px}.categorytabs .active{background:var(--pink);color:white}.option{display:flex;align-items:center;gap:15px;padding:17px 15px;border:1px solid #e5d8dc;margin:10px 0;cursor:pointer;background:white}.option.selected{border-color:var(--pink);background:#fff8fa}.option span{flex:1}.option small{display:block;color:#746a6d;font-size:13px}.option input{accent-color:var(--pink);width:18px;height:18px;flex-shrink:0}.option img{width:48px;height:48px;object-fit:cover;border-radius:50%}.option b{white-space:nowrap}.field{display:block;margin:18px 0}.field input{display:block;width:100%;font:inherit;border:1px solid #d6c5cb;padding:13px;margin-top:7px;background:white;border-radius:3px}.times{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.times button{background:#f6edf0;color:var(--ink);padding:10px 15px}.times .selected{background:var(--pink);color:white}.actions{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.secondary{background:#f6edf0;color:var(--ink)}.error{color:#a12441}.muted{color:#746a6d}.account-note{padding:15px;background:#fff8f6}.account-note a{text-decoration:underline;color:var(--pink)}footer{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:25px 6%;border-top:1px solid #eadade}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #6865b9;outline-offset:3px}@media(max-width:760px){header{padding:16px 5%;align-items:flex-start}header nav{gap:12px;font-size:13px;justify-content:flex-end}.brand{font-size:20px}main{padding:28px 5% 40px}.bookinglayout{grid-template-columns:1fr;gap:25px}.summary{position:static;grid-row:2;padding:22px}.steps{gap:7px}.steps button{font-size:13px;padding:9px 11px}h1{font-size:34px}.option{padding:13px 10px;gap:10px}.option b{font-size:14px}.actions button{padding:12px 18px}}
.family-section{margin-top:28px;padding:22px;background:#fff8f6;border:1px solid #eadade}.family-section .head{display:flex;justify-content:space-between;align-items:center;gap:12px}.field select{display:block;width:100%;padding:13px;font:inherit;border:1px solid #d6c5cb;background:white;margin-top:7px}.family-confirmation{border:1px solid #eadade;background:#fff8f6;padding:22px;margin:18px 0}.family-confirmation b{display:block;font-size:22px;color:#ac5167}.family-confirmation a{text-decoration:underline}
