.appointment-main{max-width:1280px;margin:auto;padding:24px;color:#351343}.appointment-nav,.appointment-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.appointment-nav{margin-bottom:24px}.appointment-nav a{padding:10px 14px;border:1px solid #d4b875;border-radius:9px;background:#fffaf0;color:#4d245c;text-decoration:none}.appointment-intro{padding:32px;border:1px solid #d6b777;border-radius:16px;background:linear-gradient(115deg,#32143f,#65417b);color:#fff7e7}.appointment-intro h1{font:38px/1.2 Georgia;color:#f9e6b4;margin:10px 0 18px}.appointment-intro p{max-width:880px;line-height:1.7}.appointment-main .eyebrow,#offline-advisors-dialog .eyebrow{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:#d4b168}.appointment-controls{display:flex;align-items:end;gap:20px;flex-wrap:wrap;margin:28px 0}.appointment-controls label{min-width:220px}.appointment-main label{display:grid;gap:8px;font-weight:600}.appointment-main input,.appointment-main select,.appointment-main textarea{box-sizing:border-box;width:100%;padding:13px;border:1px solid #bfa7cc;border-radius:8px;background:#fffdf9;color:#351343;font:inherit}.appointment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.appointment-card,.appointment-request,.offline-inline{padding:24px;border:1px solid #d6b777;border-radius:14px;background:#fffcf8;box-shadow:0 4px 16px #35134309}.appointment-card-head{display:flex;gap:16px;align-items:center}.appointment-card-head img{border-radius:50%;object-fit:cover;flex:0 0 84px;width:84px;height:84px}.appointment-card h2{font:25px/1.2 Georgia;margin:0 0 8px;overflow-wrap:anywhere}.appointment-card h2 a{color:#351343;text-decoration:none}.appointment-card p{line-height:1.6}.appointment-state{font-size:13px;color:#70517d}.appointment-card[data-state=available] .appointment-state{color:#23664c}.appointment-card[data-state=busy] .appointment-state{color:#815520}.appointment-actions{align-items:stretch;flex-direction:column}.appointment-actions>a{text-align:center}.appointment-button,.appointment-main button,#offline-advisors-dialog button{box-sizing:border-box;display:inline-block;padding:13px 17px;border:1px solid #d0ac61;border-radius:9px;background:#542366;color:#fff9ec;font:600 15px/1.4 Arial,sans-serif;text-decoration:none;cursor:pointer}.appointment-button.secondary{background:#f8e6b7;color:#351343}.appointment-button:hover{filter:brightness(1.08)}.appointment-slots{padding-left:0;list-style:none}.appointment-slots li{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid #e9dfee}.appointment-card details{margin-top:18px}.appointment-card summary{cursor:pointer}.appointment-fine{font-size:13px!important;line-height:1.6;color:#786280}.appointment-request{margin-top:30px;scroll-margin-top:24px}.appointment-request h2,.offline-inline h2{font:29px Georgia}.appointment-request form{display:grid;gap:20px;max-width:700px}.appointment-notice{padding:15px;border:1px solid #52846b;background:#eff9f2}.appointment-error{padding:15px;border:1px solid #ae5353;background:#fff0f0}.appointment-main [hidden],.offline-inline[hidden]{display:none!important}.appointment-main button:disabled{opacity:.65;cursor:default}.offline-inline{margin:24px 0}.offline-inline p{line-height:1.6}#offline-advisors-dialog{position:fixed;box-sizing:border-box;width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;padding:38px 32px 28px;border:1px solid #d5b573;border-radius:18px;background:#fffaf2;color:#351343;box-shadow:0 24px 80px #170b2855;z-index:10000}#offline-advisors-dialog:not([open]){display:none}#offline-advisors-dialog::backdrop{background:#21102baf;backdrop-filter:blur(3px)}#offline-advisors-dialog h2{font:34px/1.2 Georgia;color:#351343;margin:12px 0 20px}#offline-advisors-dialog p{line-height:1.65}#offline-advisors-dialog .offline-dialog-close{position:absolute;top:10px;right:12px;padding:4px 12px;background:transparent;color:#542366;border:0;font-size:29px}#offline-advisors-dialog .offline-dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}#offline-advisors-dialog button[data-close-offline]:not(.offline-dialog-close){background:transparent;color:#542366;border:1px solid #bda4c6}#offline-advisors-dialog a:focus-visible,#offline-advisors-dialog button:focus-visible,.appointment-main a:focus-visible,.appointment-main button:focus-visible{outline:3px solid #af79ca;outline-offset:3px}@media(max-width:1000px){.appointment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.appointment-main{padding:16px}.appointment-grid{grid-template-columns:1fr}.appointment-intro{padding:24px}.appointment-intro h1{font-size:31px}.appointment-controls{display:block}.appointment-controls label{margin:14px 0}#offline-advisors-dialog{padding:36px 23px 24px}#offline-advisors-dialog h2{font-size:29px}.offline-dialog-actions>a,.offline-dialog-actions>button{width:100%;text-align:center}}
.appointment-promo{padding:16px;border:1px solid #d1ad61;border-radius:9px;background:#f9e7b9;color:#351343;line-height:1.6}.appointment-promo a{color:#542366}.appointment-intro .appointment-promo{max-width:880px}

#appointment-signin{box-sizing:border-box;width:min(590px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;padding:36px 28px 26px;border:1px solid #d1af67;border-radius:16px;background:#fffaf2;color:#351343;box-shadow:0 22px 75px #21102b55}#appointment-signin:not([open]){display:none}#appointment-signin::backdrop{background:#21102baa}#appointment-signin h2{font:31px/1.25 Georgia}#appointment-signin p{line-height:1.65}#appointment-signin button{padding:11px 16px;background:#542366;color:#fff9ec;border:1px solid #cdaa61;border-radius:8px;cursor:pointer}#appointment-signin .appointment-signin-close{position:absolute;right:12px;top:10px;font-size:24px;background:transparent;color:#542366;border:0}

#request{position:fixed;inset:0;box-sizing:border-box;width:min(680px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;margin:auto;padding:34px 26px 25px;box-shadow:0 22px 75px #21102b55;color:#351343;background:#fffcf7;border:1px solid #cbaa67;border-radius:16px;z-index:10001}#request:not([open]){display:none!important}#request::backdrop{background:#21102baa;backdrop-filter:blur(2px)}#request h2{font:28px/1.25 Georgia;margin:0 25px 15px 0}#request .appointment-signin-close{position:absolute;top:8px;right:10px;border:0;background:transparent;color:#542366;font-size:25px;padding:4px 10px}#request input,#request select,#request textarea{box-sizing:border-box;width:100%;padding:11px;font:inherit;border:1px solid #bda4c8;border-radius:7px;background:white;color:#351343}#request form{display:grid;gap:15px}#request label{display:grid;gap:7px;font-weight:600}#request p{line-height:1.6;font-size:15px}#request button[type=submit]{padding:13px 17px;background:#542366;color:#fff9ec;border:1px solid #caa45f;border-radius:8px;font-weight:600;cursor:pointer}
