@import"https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&family=Inter:wght@400;500;600&display=swap";:root{--ink: #114C5C;--ink-soft: #2E6577;--paper: #EEF1F2;--paper-line: #E1E5E7;--rule: #E1E5E7;--margin-red: #B5544A;--gold: #114C5C;--accent-tint: #DCE7EA}*{box-sizing:border-box}body{margin:0;font-family:"Source Serif 4",Georgia,serif;background:var(--paper);color:var(--ink);overflow-x:hidden}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}.app-shell{min-height:100vh}.app-header{border-bottom:2px solid var(--ink);padding:18px 24px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{height:34px;width:auto;display:block}.brand-name{font-size:22px;font-weight:700;letter-spacing:-.01em}.label{display:block;font-family:Inter,sans-serif;font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:4px}.input{width:100%;border:1px solid var(--paper-line);border-radius:5px;padding:8px 10px;font-family:Inter,sans-serif;font-size:13.5px;background:#fff;color:var(--ink)}.fadein{animation:fadein .25s ease}@keyframes fadein{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.booking-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.booking-wrap .summary-panel{align-self:start;position:sticky;top:24px}@media (max-width: 820px){.booking-wrap{grid-template-columns:minmax(0,1fr)}.booking-wrap .summary-panel{order:-1;position:static}}.calendar-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.calendar-wrap .side-col{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}@media (max-width: 900px){.calendar-wrap{grid-template-columns:minmax(0,1fr)}.calendar-wrap .side-col{position:static;max-height:none;overflow-y:visible}}.step-row{display:flex;align-items:center;margin-bottom:24px;overflow-x:auto;gap:4px}.step-pill{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;white-space:nowrap;font-family:Inter,sans-serif;font-size:13px;color:var(--ink-soft);border:1px solid transparent}.step-pill.clickable{cursor:pointer}.step-pill.clickable:hover{background:#fff}.step-connector{width:16px;height:1px;background:var(--paper-line);flex:none}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:6px;font-family:Inter,sans-serif;font-size:13px;font-weight:500;box-shadow:0 8px 24px #0003;z-index:50}
