*{box-sizing:border-box}body{color:#24362f;background:#f5f6ee;margin:0;font:16px/1.6 system-ui,-apple-system,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:#354682}h1,h2,h3,p{margin-top:0}h1{color:#273b6a;letter-spacing:-1.5px;margin-bottom:14px;font:clamp(36px,5vw,52px)/1.1 Georgia,serif}h2{letter-spacing:-.6px;font-size:26px;line-height:1.25}h3{margin-top:26px;font-size:17px}p{color:#58665d}.header,main,footer{max-width:1150px;margin:auto}.header{border-bottom:1px solid #e1e5dc;justify-content:space-between;align-items:center;padding:28px 24px;display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand img{object-fit:contain;width:43px;height:43px}.brand b{font:700 23px Georgia,serif}.brand small{letter-spacing:2px;color:#3d4c40;font-size:10px;display:block}.intro{padding:44px 0 24px}.eyebrow,.step{letter-spacing:2px;color:#56735c;margin-bottom:16px;font-size:11px;font-weight:750;display:block}.step{color:#697f69;margin-bottom:12px}main{padding:0 24px 36px}.layout{grid-template-columns:minmax(0,2.25fr) minmax(250px,1fr);gap:28px;display:grid}.card{background:#fff;border:1px solid #e2e6dd;border-radius:19px;padding:30px;box-shadow:0 3px 18px #29392d04}.side{background:#edf1e5}.side h2{font:30px/1.2 Georgia,serif}.line{gap:13px;margin:24px 0;display:flex}.line svg{color:#61805c;flex-shrink:0}.help{gap:8px;font-size:14px;font-weight:600;display:flex}.choices{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.choice{text-align:left;color:inherit;background:#fff;border:1px solid #d9dfd5;border-radius:12px;flex-direction:column;gap:7px;padding:18px;display:flex}.choice b{line-height:1.3}.choice small{color:#6d786e;font-size:12px}.active{box-shadow:0 0 0 1px #465492;color:#34437d!important;background:#edf0fb!important;border-color:#465492!important}label{flex-direction:column;gap:8px;margin:18px 0 22px;font-size:14px;font-weight:600;display:flex}input,select,textarea{color:#29352d;background:#fff;border:1px solid #cdd6ca;border-radius:9px;width:100%;min-height:48px;padding:10px 12px}input:focus,select:focus{outline-offset:2px;outline:2px solid #455292}input[readonly]{background:#f0f2ed}.fields{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.check{flex-direction:row;align-items:flex-start;font-weight:400;display:flex}.check input{width:18px;min-height:18px;margin-top:4px}.primary,.secondary{border:1px solid #3e4c8b;border-radius:10px;justify-content:center;align-items:center;gap:12px;padding:15px 20px;font-weight:650;display:inline-flex}.primary{color:#fff;background:#3e4c8b;box-shadow:0 3px 10px #39488020}.secondary{color:#3e4c8b;background:#fff}.link-button{color:#3c4b84;background:0 0;border:0;align-items:center;gap:7px;padding:8px 0;font-size:14px;display:inline-flex}.account{border-bottom:1px solid #e5e8e1;justify-content:space-between;gap:10px;margin-bottom:24px;padding-bottom:14px;display:flex}.alert{background:#f0f3e9;border:1px solid #dde3d4;border-radius:11px;align-items:flex-start;gap:10px;margin:18px 0;padding:16px 18px;font-size:14px;display:flex}.alert svg{flex-shrink:0}.error{color:#903a2d;background:#fff0ed;border-color:#efcbc3}.success{color:#3e653c;background:#edf5e8}.dates{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:9px;margin:24px 0;display:grid}.date{background:#fff;border:1px solid #dce1d7;border-radius:10px;padding:8px 5px}.date small{font-size:12px;display:block}.date b{font-size:23px;line-height:1.3;display:block}.slots{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:9px;margin:18px 0 28px;display:grid}.slots button{background:#fff;border:1px solid #dce1d7;border-radius:9px;padding:9px 5px;font-size:14px}.slots button:disabled{background:#eee;text-decoration:line-through}.muted{color:#69766b;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;font-size:12px;display:flex}.appointment{border:1px solid #dce4d8;border-radius:13px;margin:18px 0;padding:20px}.appointment h3{margin:14px 0 8px}.appointment p{margin-bottom:7px}.badge{background:#f2ead5;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:650;display:inline-block}.badge.confirmed{color:#3c6337;background:#e6f0df}.badge.cancelled,.badge.rejected{color:#8b4432;background:#f5e2dc}dl{border:1px solid #dfe4dc;border-radius:12px;grid-template-columns:1fr 1.5fr;margin:24px 0;display:grid;overflow:hidden}dt,dd{border-bottom:1px solid #e5e9e2;margin:0;padding:13px;font-size:14px}dd{text-align:right;font-weight:650}.actions{justify-content:space-between;gap:12px;margin-top:28px;display:flex}footer{color:#73806f;border-top:1px solid #e0e4da;justify-content:space-between;padding:22px 24px;font-size:11px;display:flex}details{margin:18px 0}summary{cursor:pointer}@media (max-width:760px){.layout{grid-template-columns:1fr}.header{padding:20px}.brand b{font-size:19px}main{padding:0 16px 25px}.intro{padding-top:32px}.card{padding:22px}.side{margin-top:0}.fields{grid-template-columns:1fr}.choices{gap:8px}.choice{padding:13px}.primary{width:100%}.actions .primary{width:auto}.dates{grid-template-columns:repeat(5,1fr)}.slots{grid-template-columns:repeat(4,1fr)}footer{gap:15px}dl{grid-template-columns:1fr 1.5fr}dt,dd{padding:11px;font-size:12px}}
