.appointment{background:#f8faff;color:#10254b;padding:80px 44px;scroll-margin-top:24px}.appointment-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:.65fr 1fr;gap:64px;align-items:center}.appointment-context .eyebrow{font-size:12px;color:#164bd8;margin:0 0 18px}.appointment-context h2{font:650 clamp(30px,2.8vw,40px)/1.15 'DM Sans',Arial,sans-serif;letter-spacing:-.045em;margin:0 0 24px}.appointment-purpose{font-size:16px;line-height:1.65;color:#4e6788;margin:0 0 20px}.appointment-reassurance{font-size:15px;line-height:1.65;color:#647993;margin:0 0 24px}.appointment-duration{font-size:14px;font-weight:500;color:#164bd8;margin:0}.appointment-module{background:#fff;border:1px solid #dce5f2;border-radius:10px;min-width:0}.appointment-module-heading{padding:24px 26px;border-bottom:1px solid #e4eaf4;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.appointment-module-heading h3{font:600 18px 'DM Sans',Arial,sans-serif;letter-spacing:-.02em;margin:0}.appointment-module-heading span{font-size:12px;color:#697e98}.appointment-placeholder{min-height:330px;padding:40px 30px;display:flex;flex-direction:column;justify-content:center;text-align:center}.appointment-placeholder strong{font:500 17px/1.5 'DM Sans',Arial,sans-serif;color:#4b6386;overflow-wrap:anywhere}.appointment-placeholder p{font-size:14px;line-height:1.65;color:#71839b;max-width:400px;margin:18px auto 0}.appointment-confirmation{border-top:1px solid #e4eaf4;margin:0;padding:18px 26px;font-size:12px;line-height:1.6;color:#71839b;overflow-wrap:anywhere}@media(max-width:900px){.appointment-inner{gap:32px;grid-template-columns:.8fr 1fr}.appointment-module-heading{padding:22px}.appointment-placeholder{padding:30px 22px}}@media(max-width:760px){.appointment{padding:52px 24px}.appointment-inner{display:block}.appointment-context h2{font-size:33px}.appointment-module{margin-top:30px}.appointment-placeholder{min-height:280px;padding:30px 20px}.appointment-placeholder strong{font-size:16px}.appointment-confirmation{padding:18px 20px}}
/* Live inline booking. Cal manages the iframe height as the visitor progresses. */
#rendez-vous .appointment-inner{grid-template-columns:minmax(230px,.48fr) minmax(0,1fr);gap:35px;align-items:start}
#rendez-vous .appointment-calendar{width:100%;min-height:620px;overflow:auto}
#rendez-vous .appointment-calendar-help{font:400 12px/1.6 'DM Sans',Arial,sans-serif;color:#647993;margin:0;padding:14px 22px;border-top:1px solid #e4eaf4}
#rendez-vous .appointment-calendar-help a{color:#164bd8;text-underline-offset:3px}
@media(max-width:1000px){#rendez-vous .appointment-inner{display:block}#rendez-vous .appointment-context{max-width:640px}#rendez-vous .appointment-module{margin-top:30px}}
@media(max-width:540px){#rendez-vous{padding-left:16px;padding-right:16px}#rendez-vous .appointment-calendar{min-height:660px}}
