/* One-time meeting: follows the existing monochrome program components. */
.meeting-intro p,.meeting-lead,.meeting-notes p{margin:0;font-size:14px;line-height:1.75;color:#606060}
.meeting-lead{margin-bottom:18px}
.meeting-notes p+p{margin-top:13px}
.meeting-pricing{position:static}
.meeting-pricing .price-bottom{padding:23px}
.mini-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.mini-calendar-head h3{font-size:16px;line-height:1.4;font-weight:600;letter-spacing:-.02em;margin:0}
.mini-month-controls{display:flex;gap:3px}
.mini-month-controls button{display:grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:8px;width:35px;height:35px;color:#555;padding:0}
.mini-month-controls button:hover{background:#f2f2f2;border-color:#e8e8e8}
.mini-month-controls svg{width:17px;height:17px}
.mini-month-grid{border-collapse:collapse;table-layout:fixed;width:100%;font-variant-numeric:tabular-nums;font-size:13px;text-align:center}
.mini-month-grid th{height:30px;font-size:10px;letter-spacing:.015em;color:#898989;font-weight:500}
.mini-month-grid td{height:38px;padding:1px 0;color:#464646}
.mini-month-grid td a{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;text-decoration:none;transition:background .15s,color .15s}
.mini-month-grid .outside-month{color:#bcbcbc}
.mini-month-grid .today a{background:#262626;color:white;box-shadow:0 2px 5px #00000010}
#calendar-note{font-size:12px;line-height:1.65;color:#444;margin:16px 0 0}
#calendar-note strong{font-weight:650;color:inherit}
.booking-next-step{font-size:12px;line-height:1.65;color:#737373;margin:9px 0 0}
.mini-month-grid td a:hover{background:#ededed;color:#222}
.mini-month-grid .today a:hover{background:#444;color:#fff}
.meeting-intro .meeting-credit{border-top:1px solid #e8e8e8;padding-top:14px;margin-top:14px;font-size:13px;line-height:1.7;color:#565656}
.meeting-pricing .booking-trigger{margin-top:17px}
.meeting-contact{margin-top:22px;padding-top:21px;border-top:1px solid #e8e8e8}
.meeting-contact .button{margin-top:12px;background:#f6f6f6;color:#303030;border-color:#dedede}
.meeting-contact .button:hover{background:#ededed;border-color:#bbb}
.booking-dialog{padding:0;border:1px solid #dedede;border-radius:18px;width:min(1060px,calc(100vw - 40px));max-width:none;height:min(850px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);background:#fff;color:#262626;box-shadow:0 28px 100px #00000030;overflow:hidden}
.booking-dialog::backdrop{background:#1119;backdrop-filter:blur(5px)}
.booking-shell{display:flex;flex-direction:column;height:100%;min-height:0}
.booking-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 22px;border-bottom:1px solid #e9e9e9;flex-shrink:0}
.booking-header h2{font-size:17px;line-height:1.4;margin:0;font-weight:600;letter-spacing:-.02em}
.booking-header p{margin:3px 0 0;font-size:12px;color:#777}
.booking-header .icon-button{width:40px;height:40px}
.booking-frame-wrap{position:relative;flex:1;min-height:0;background:#fff}
#booking-frame{position:relative;z-index:1;width:100%;height:100%;border:0;background:transparent;display:block}
.booking-loading{position:absolute;inset:25px 0 auto;text-align:center;font-size:14px;color:#888;margin:0}
.booking-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:5px 10px;padding:11px 16px;font-size:12px;color:#777;border-top:1px solid #eee;flex-shrink:0}
.booking-footer a{color:#333;text-underline-offset:3px}
body.booking-open{overflow:hidden}
@media(max-width:720px){
 .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
 .tab{min-width:0;white-space:normal;font-size:12px;line-height:1.35;gap:6px;padding:11px 6px;min-height:54px}
 .tab svg{width:15px;height:15px;flex-shrink:0}
 .meeting-pricing .price-bottom{padding:22px}
 .mini-calendar{max-width:350px;margin:auto}
 .mini-month-grid td{height:40px}
 .booking-dialog{width:calc(100vw - 16px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);border-radius:13px}
 .booking-header{padding:13px 15px}
 .booking-header h2{font-size:16px}
 .booking-footer{font-size:11px}
}
@media(max-width:380px){.tab{flex-direction:column;gap:4px;font-size:11px;min-height:64px}.tab svg{width:16px;height:16px}}
@media print{.mini-calendar,.booking-dialog,.meeting-contact{display:none!important}}
