@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@500;600;700&display=swap";:root{font-size:15px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;color:#0f1b2a;background-color:#f6f3eb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--slate-blue-900: #0f2a4f;--slate-blue-700: #17497a;--slate-blue-500: #1e6fb4;--slate-blue-300: #57a0d5;--slate-cream: #f6f3eb;--slate-sand: #ede7dc;--slate-ink: #0f1b2a;--slate-muted: #4b5a6b;--slate-outline: rgba(15, 42, 79, .15);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--shadow-soft: 0 20px 45px rgba(15, 42, 79, .15);--shadow-hover: 0 24px 60px rgba(15, 42, 79, .22)}body{margin:0;min-height:100vh;background:linear-gradient(215deg,#0f294deb,#17497ae0 45%,#1e6db3d9);color:var(--slate-ink)}a{font-weight:500;color:var(--slate-blue-500);text-decoration:none}a:hover,a:focus-visible{color:var(--slate-blue-300)}#root{min-height:100vh;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xml:space='preserve'%20width='133.222'%20height='65.564'%20shape-rendering='geometricPrecision'%20text-rendering='geometricPrecision'%20image-rendering='optimizeQuality'%20fill-rule='evenodd'%20clip-rule='evenodd'%20viewBox='0%200%20843.42%20415.08'%3e%3cpath%20fill='white'%20fill-rule='nonzero'%20d='M1.11%20401.23v-61.42c19.67%2013.76%2040.18%2020.6%2061.42%2020.6%2021.8%200%2032.7-9.14%2032.7-27.34%200-7.2-2.86-13.3-8.59-18.29-5.82-4.9-14.04-10.53-24.66-16.63-25.77-14.78-42.58-28.91-50.34-42.49C3.88%20242.17%200%20227.49%200%20211.88c0-24.94%208.59-45.07%2025.58-60.5%2017.09-15.42%2040.64-23.18%2070.75-23.18%2020.78%200%2039.81%203.42%2057.08%2010.34v60.03c-19.12-10.43-35.84-15.7-50.34-15.7-21.8%200-32.7%209.15-32.7%2027.34%200%205.73%201.94%2011.08%205.82%2015.98%203.88%204.9%2013.76%2011.73%2029.65%2020.51%2024.01%2013.76%2039.81%2026.97%2047.57%2039.81%207.76%2012.84%2011.64%2027.62%2011.64%2044.43%200%2024.85-8.31%2045.08-25.03%2060.68-16.63%2015.61-40.92%2023.46-72.6%2023.46-27.43%200-49.51-4.62-66.32-13.85zm180.93%208.96V0h70.57v410.19h-70.57zm220.65%200v-36.58h-1.11c-13.3%2027.62-35.19%2041.47-65.49%2041.47-19.49%200-35.28-7.3-47.29-21.8-12.1-14.5-18.19-34.08-18.19-58.56%200-51.82%2025.77-83.03%2077.12-93.66l54.96-11.08v-7.57c0-25.31-13.58-37.87-40.55-37.87-21.89%200-45.72%208.68-71.49%2026.23v-62.25c28.91-13.58%2056.71-20.32%2083.59-20.32%2035.56%200%2060.96%208.68%2076.11%2025.95%2015.15%2017.36%2022.72%2045.44%2022.72%2084.24v171.8h-70.38zm0-134.2-32.23%206.74c-21.06%204.52-31.59%2018.19-31.59%2041.1%200%2011.36%202.59%2020.04%207.94%2026.05%205.36%205.91%2011.73%208.87%2019.4%208.87%2011.55%200%2020.5-4.9%2026.88-14.68%206.37-9.88%209.6-23.28%209.6-40.18V276zm225.82%20130.42c-14.41%205.73-29.92%208.68-46.55%208.68-47.29%200-70.93-28.26-70.93-84.7V190.74h-33.81v-57.63h33.81V71.13c.18%200%202.12-.65%205.73-1.85%2040.73-13.58%2062.35-20.32%2064.66-20.32v84.14h47.1v57.63h-47.1v133.65c0%2021.7%208.59%2032.51%2025.68%2032.51%207.94%200%2015.15-1.66%2021.43-4.9v54.4zm73.7-112.59c.74%2043.32%2021.06%2064.93%2060.87%2064.93%2020.78%200%2041.93-6.28%2063.64-18.93v58.19c-23.65%2011.36-48.4%2017.09-74.17%2017.09-38.98%200-69-12.19-89.96-36.58-21.06-24.29-31.5-59.76-31.5-106.31%200-42.02%209.88-76.57%2029.74-103.54%2019.86-26.97%2047.57-40.45%2083.31-40.45%2032.51%200%2057.17%2011.08%2073.98%2033.16%2016.9%2022.08%2025.31%2053.76%2025.31%2094.86v37.59H702.21zm74.72-49.78c0-19.49-2.49-34.64-7.48-45.44-4.99-10.81-13.95-16.25-26.88-16.25-25.12%200-38.51%2020.6-40.36%2061.7h74.72z'/%3e%3c/svg%3e"),url(/assets/li-banner-C7yU2VtC.svg),linear-gradient(90deg,#00669e);background-repeat:no-repeat,no-repeat;background-position:16px 16px,right top,left top;background-size:auto 48px,min(800px,45vw) 64px,100% 64px;background-attachment:fixed,fixed,fixed}button{font-family:inherit}.app-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(2rem,5vw,4rem)}.booking-card{width:min(1100px,100%);background:linear-gradient(155deg,#fffffffa 0% 60%,#fff);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);overflow:hidden;display:grid;grid-template-rows:auto 1fr}.booking-card__hero{padding:clamp(.9rem,2.2vw,1.3rem) clamp(3rem,4vw,3.5rem) clamp(1rem,2.2vw,1.5rem);background:linear-gradient(135deg,#071426 0%,var(--slate-blue-900) 45%,#133a63 100%);color:#fff;position:relative;isolation:isolate}.booking-card__hero:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff24,#0f2a4f00 55%);mix-blend-mode:screen;opacity:.5;pointer-events:none}.booking-card__body{margin-top:-8px;position:relative;z-index:1}.booking-card__badge{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1.05rem;border-radius:999px;background-color:#f6f3eb2e;color:#fff;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;position:relative;z-index:1}.booking-card__hero h1{font-family:Poppins,Inter,sans-serif;font-size:clamp(2rem,3.2vw,2.6rem);margin:.5rem 0 .25rem;line-height:1.06;position:relative;z-index:1}.booking-card__subtitle{max-width:46ch;font-size:1rem;margin:0;color:#f6f3ebe0;position:relative;z-index:1}.booking-card__body{padding:clamp(2rem,3.5vw,2.6rem) clamp(3rem,4vw,3.5rem) clamp(2.2rem,4vw,3rem);display:grid;grid-template-columns:minmax(220px,240px) 1fr;gap:clamp(1.75rem,3vw,3rem)}@media (max-width: 960px){.booking-card__body{grid-template-columns:1fr}.stepper{position:static;order:-1}}.stepper{position:sticky;top:clamp(1rem,3vw,1.75rem);align-self:start}.stepper ol{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.stepper__button{width:100%;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.7rem 1rem;border-radius:var(--radius-md);background:#fff;border:1px solid var(--slate-outline);color:var(--slate-ink);font-size:.9rem;text-align:left;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.stepper__button:disabled{cursor:not-allowed;opacity:.6}.stepper__button:hover:not(:disabled),.stepper__button:focus-visible{transform:translateY(-2px);border-color:#1e6fb44d;box-shadow:0 12px 30px #0f2a4f2e}.stepper__button.is-active{border-color:#1e6fb473;box-shadow:0 0 0 2px #1e6fb440}.stepper__button.is-complete{background:linear-gradient(135deg,#1e6fb41a,#17497a1f)}.stepper__index{width:2.45rem;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#1e6fb41f;font-weight:600;color:var(--slate-blue-700)}.stepper__button.is-complete .stepper__index{background:var(--slate-blue-500);color:#fff}.stepper__label{font-weight:600;letter-spacing:.01em}.step-content{display:grid;gap:clamp(1.5rem,2.5vw,2.25rem)}.step-pane>h2{font-family:Poppins,Inter,sans-serif;font-size:clamp(1.5rem,2.4vw,1.9rem);margin-bottom:.45rem;color:var(--slate-blue-900)}.step-pane__intro{margin:0 0 1.2rem;color:var(--slate-muted);max-width:60ch}.appointment-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.appointment-card{position:relative;display:grid;gap:.55rem;cursor:pointer;padding:1.1rem 1.2rem;border:1px solid rgba(15,42,79,.12);background:#fff;border-radius:var(--radius-md);text-align:left;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;grid-template-rows:auto auto 1fr auto}.appointment-card:focus-visible,.appointment-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:#1e6fb466}.appointment-card.is-active{border-color:#1e6fb48c;box-shadow:var(--shadow-hover);background:linear-gradient(140deg,#1e6fb414,#17497a17)}.appointment-card__duration{font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--slate-blue-700)}.appointment-card__title{font-family:Poppins,Inter,sans-serif;font-size:1.35rem;font-weight:600}.appointment-card__description{color:var(--slate-muted);line-height:1.6;margin:0}.appointment-card__cta{font-weight:600;color:var(--slate-blue-500);margin-top:auto}.view-toggle{display:inline-flex;padding:.35rem;border-radius:999px;background:#f6f3ebe6;border:1px solid rgba(15,42,79,.12);gap:.5rem;margin-bottom:clamp(1.8rem,3vw,2.6rem)}.toggle{border:none;background:transparent;padding:.65rem 1.4rem;border-radius:999px;font-weight:600;color:var(--slate-muted);transition:background .25s ease,color .25s ease,box-shadow .25s ease}.toggle.is-active{background:#fff;color:var(--slate-blue-700);box-shadow:0 6px 12px #0f2a4f1f}.list-view{display:grid;gap:1.5rem}.day-card{border-radius:var(--radius-md);background:#fff;border:1px solid var(--slate-outline);box-shadow:0 12px 24px #0f2a4f14;transition:border-color .25s ease,box-shadow .25s ease}.day-card.is-selected{border-color:#1e6fb466;box-shadow:var(--shadow-hover)}.day-card__header{width:100%;display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:1.25rem 1.6rem 1rem;border:none;background:transparent;font-family:inherit;color:inherit;cursor:pointer;text-align:left}.day-card__header:hover,.day-card__header:focus-visible{color:var(--slate-blue-700)}.day-card__dow{font-weight:600;font-size:1.05rem}.day-card__slots{font-size:.95rem;color:var(--slate-muted)}.day-card__slots-grid{display:flex;flex-wrap:wrap;gap:.75rem;padding:0 1.6rem 1.6rem}.slot-chip{padding:.55rem 1.1rem;border-radius:999px;border:1px solid rgba(15,42,79,.16);background:#f6f3ebcc;color:var(--slate-ink);font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.slot-chip:hover,.slot-chip:focus-visible{background:#fff;border-color:#1e6fb459;transform:translateY(-2px)}.slot-chip.is-active{background:var(--slate-blue-500);color:#fff;border-color:transparent}.calendar-view{background:#fff;border-radius:var(--radius-md);border:1px solid var(--slate-outline);box-shadow:0 12px 24px #0f2a4f14;padding:1.5rem;display:grid;gap:1.5rem}.calendar-view__header{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:1.05rem;color:var(--slate-blue-900)}.calendar-view__header button{border:none;background:#f6f3ebcc;color:var(--slate-blue-700);width:2.5rem;height:2.5rem;border-radius:50%;font-size:1.6rem;font-family:inherit;cursor:pointer;transition:background .25s ease,color .25s ease}.calendar-view__header button:hover,.calendar-view__header button:focus-visible{background:var(--slate-blue-500);color:#fff}.calendar-view__title{font-family:Poppins,Inter,sans-serif}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.calendar-grid__heading{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--slate-muted);text-align:center}.calendar-day{position:relative;border:none;background:#f6f3ebd9;border-radius:var(--radius-sm);padding:.75rem 0;font-size:1rem;color:var(--slate-muted);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.calendar-day.is-muted{opacity:.4}.calendar-day.is-available{background:#1e6fb41f;color:var(--slate-blue-700)}.calendar-day.is-available:hover,.calendar-day.is-available:focus-visible{transform:translateY(-2px);box-shadow:0 10px 20px #0f2a4f29}.calendar-day.is-selected{background:var(--slate-blue-500);color:#fff;box-shadow:0 12px 24px #0f2a4f38}.calendar-view__slots{display:grid;gap:.9rem}.calendar-view__slots h3{margin:0;font-family:Poppins,Inter,sans-serif;font-size:1.2rem;color:var(--slate-blue-900)}.calendar-view__slot-rail{display:flex;flex-wrap:wrap;gap:.75rem}.slot-pill{padding:.55rem 1.25rem;border-radius:999px;border:1px solid rgba(15,42,79,.16);background:#f6f3ebe6;font-weight:600;color:var(--slate-ink);cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.slot-pill:hover,.slot-pill:focus-visible{background:#fff;border-color:#1e6fb459;transform:translateY(-2px)}.slot-pill.is-active{background:var(--slate-blue-500);color:#fff;border-color:transparent}.confirmation-step{display:grid;grid-template-columns:minmax(240px,260px) 1fr;gap:clamp(2rem,4vw,3rem)}@media (max-width: 840px){.confirmation-step{grid-template-columns:1fr}}.summary-card{background:#fff;border-radius:var(--radius-md);border:1px solid var(--slate-outline);box-shadow:0 12px 24px #0f2a4f14;padding:1.75rem 1.85rem;display:grid;gap:1rem}.summary-card h2{margin:0;font-family:Poppins,Inter,sans-serif;font-size:1.3rem;color:var(--slate-blue-900)}.summary-card dl{margin:0;display:grid;gap:.85rem}.summary-card dt{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--slate-muted)}.summary-card dd{margin:.25rem 0 0;font-weight:600;color:var(--slate-ink)}.confirmation-form{background:#fff;border-radius:var(--radius-md);border:1px solid var(--slate-outline);box-shadow:0 12px 24px #0f2a4f14;padding:clamp(1.75rem,3vw,2.5rem);display:grid;gap:1.5rem}.confirmation-form fieldset{border:none;padding:0;margin:0;display:grid;gap:1.25rem}.confirmation-form legend{font-family:Poppins,Inter,sans-serif;font-size:1.2rem;margin-bottom:.5rem;color:var(--slate-blue-900)}.field{display:grid;gap:.45rem}.field label{font-weight:600;color:var(--slate-muted)}.field input,.field textarea{width:100%;border-radius:var(--radius-sm);border:1px solid rgba(15,42,79,.18);padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#f6f3eb80}.field input:focus-visible,.field textarea:focus-visible{outline:none;border-color:#1e6fb473;box-shadow:0 0 0 3px #1e6fb42e;background:#fff}.confirm-button,.secondary-button{border:none;border-radius:999px;font-weight:600;padding:.85rem 1.9rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.confirm-button{background:linear-gradient(135deg,var(--slate-blue-700),var(--slate-blue-500));color:#fff;box-shadow:0 18px 32px #0f2a4f33}.confirm-button:hover:not(:disabled),.confirm-button:focus-visible:not(:disabled){transform:translateY(-2px);box-shadow:0 22px 45px #0f2a4f3d}.confirm-button:disabled{opacity:.65;cursor:progress}.secondary-button{background:#f6f3ebe6;color:var(--slate-blue-700);border:1px solid rgba(30,111,180,.25)}.secondary-button:hover,.secondary-button:focus-visible{background:#fff;transform:translateY(-2px);box-shadow:0 15px 30px #0f2a4f2e}.ghost-link{background:none;border:none;color:var(--slate-blue-700);font-weight:600;margin-top:1.25rem;cursor:pointer;text-decoration:none;padding:0}.ghost-link:hover,.ghost-link:focus-visible{text-decoration:underline;color:var(--slate-blue-500)}.success-panel{background:#fff;border-radius:var(--radius-md);border:1px solid rgba(30,111,180,.25);box-shadow:0 20px 40px #0f2a4f29;padding:clamp(2.25rem,4vw,3rem);display:grid;gap:1.5rem}.success-panel h2{margin:0;font-family:Poppins,Inter,sans-serif;font-size:clamp(2rem,4vw,2.6rem);color:var(--slate-blue-900)}.success-panel p{margin:0;color:var(--slate-muted)}.success-panel ul{list-style:none;display:grid;gap:1rem;margin:0;padding:0}.success-panel li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-weight:600;color:var(--slate-ink)}.success-panel__label{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--slate-muted)}@media (max-width: 720px){.booking-card__body{padding:clamp(2rem,5vw,2.6rem)}.summary-card,.confirmation-form,.calendar-view,.day-card{padding:clamp(1.4rem,4vw,1.8rem)}.day-card__slots-grid,.calendar-view__slot-rail{justify-content:center}.success-panel li{flex-direction:column;align-items:flex-start}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-region{display:grid;gap:1rem}.skeleton-day-card{height:120px;border-radius:var(--radius-md);border:1px solid var(--slate-outline);background:linear-gradient(90deg,#ede7dc99,#ffffffe6,#ede7dc99);background-size:200% 100%;animation:shimmer 1.2s linear infinite;box-shadow:0 10px 20px #0f2a4f0f}.skeleton-cell{height:44px;border-radius:var(--radius-sm);background:linear-gradient(90deg,#ede7dc99,#ffffffe6,#ede7dc99);background-size:200% 100%;animation:shimmer 1.2s linear infinite}.empty-state{background:#fff;border:1px solid var(--slate-outline);border-radius:var(--radius-md);box-shadow:0 10px 24px #0f2a4f14;padding:1.5rem;text-align:center}.empty-state h3{margin:0 0 .35rem;font-family:Poppins,Inter,sans-serif;color:var(--slate-blue-900)}.empty-state p{margin:0;color:var(--slate-muted)}.empty-hint{text-align:center;color:var(--slate-muted)}.empty-inline{padding:.5rem .75rem;color:var(--slate-muted)}
