.control-input{width:100%;min-height:44px;border-radius:1rem;border:1px solid #c3c6d7;background:#fff;padding:.75rem .9rem;color:#0b1c30;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.control-input:focus{border-color:#004ac6;box-shadow:0 0 0 3px #004ac629}.brand-mark-control,.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;flex:none;border-radius:1.1rem;background:linear-gradient(135deg,var(--demo-primary, #004ac6),var(--demo-accent, #8da4f5));color:#fff;font-size:1.35rem;font-weight:900;box-shadow:0 12px 30px #0b1c302e}.brand-mark-sm{width:2.75rem;height:2.75rem;border-radius:.9rem;font-size:1rem;box-shadow:none}.brand-mark-control{--demo-primary: #004ac6;--demo-accent: #8da4f5;width:4.25rem;height:4.25rem;color:#fff}.color-swatch{display:inline-flex;min-height:40px;align-items:center;justify-content:flex-start;gap:.5rem;border-radius:1rem;border:1px solid #d7dbea;background:#fff;padding:.5rem .65rem;color:#0b1c30;font-size:.8rem;font-weight:800;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.color-swatch span{width:1rem;height:1rem;flex:none;border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff73}.color-swatch.is-selected{border-color:var(--demo-primary, #004ac6);background:var(--demo-soft, #dbeafe);box-shadow:0 0 0 3px color-mix(in srgb,var(--demo-primary, #004ac6) 16%,transparent)}.info-button{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(0,74,198,.25);background:#dbe1ff;color:#00174b;font-weight:800;transition:transform .16s ease,background-color .16s ease}.info-button:hover{background:#d3e4fe}.info-button:focus-visible{outline:3px solid rgba(0,74,198,.28);outline-offset:2px}.toggle-card{position:relative;display:flex;min-height:68px;cursor:pointer;align-items:center;gap:.85rem;border-radius:1.25rem;border:1px solid #c3c6d7;background:#f8f9ff;padding:.8rem;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.toggle-card:hover{border-color:#004ac673;background:#eff4ff}.toggle-switch{pointer-events:none;position:relative;display:inline-flex;height:30px;width:52px;flex:none;align-items:center;border-radius:999px;background:#c3c6d7;padding:3px;transition:background-color .16s ease}.toggle-switch span{pointer-events:none;display:block;height:24px;width:24px;border-radius:999px;background:#fff;box-shadow:0 2px 8px #0b1c3033;transition:transform .16s ease}.peer:checked+.toggle-switch{background:#004ac6}.peer:checked+.toggle-switch span{transform:translate(22px)}.preview-mode-switch{display:inline-flex;width:-moz-fit-content;width:fit-content;border-radius:999px;border:1px solid #d7dbea;background:#fff;padding:.25rem;box-shadow:0 10px 28px #0b1c3014}.preview-mode{min-height:40px;border-radius:999px;padding:.5rem 1rem;color:#4d5668;font-size:.82rem;font-weight:900;white-space:nowrap;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.preview-mode:focus-visible,.demo-primary-button:focus-visible,.public-cta:focus-visible{outline:3px solid color-mix(in srgb,var(--demo-primary, #004ac6) 35%,transparent);outline-offset:2px}.preview-mode.is-active{background:#0b1c30;color:#fff;box-shadow:0 8px 20px #0b1c302e}.preview-shell{--demo-primary: #004ac6;--demo-primary-dark: #102b4a;--demo-accent: #8da4f5;--demo-soft: #dbeafe}.preview-panel.hidden{display:none}.public-topbar{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid #e3e7f2;background:#fff;padding:1rem 1.25rem}.public-hero{display:grid;gap:1.5rem;align-items:end;background:radial-gradient(circle at 88% 12%,rgba(255,255,255,.22),transparent 24rem),linear-gradient(135deg,var(--demo-primary-dark),var(--demo-primary) 55%,var(--demo-accent));color:#fff;padding:2rem 1.25rem}.public-hero-copy h3,.booking-flow-hero h3{margin-top:1rem;max-width:36rem;color:#fff;font-family:var(--font-display, inherit);font-size:clamp(2.2rem,5vw,4.6rem);font-weight:900;letter-spacing:0;line-height:.94}.public-hero-copy p,.booking-flow-hero p{margin-top:1rem;max-width:34rem;color:#ffffffd6;font-size:1rem;line-height:1.7}.public-hero-card{border-radius:1.5rem;border:1px solid rgba(255,255,255,.22);background:#fffffff0;color:#0b1c30;padding:1rem;box-shadow:0 22px 60px #0b1c3038}.public-hero-card strong,.public-hero-card span{display:block}.public-hero-card strong{margin-top:.55rem;font-size:1.35rem;line-height:1.1}.public-hero-card span{margin-top:.35rem;color:#4d5668;font-weight:700}.public-cta{margin-top:1rem;display:inline-flex;min-height:44px;width:100%;align-items:center;justify-content:center;border-radius:1rem;background:var(--demo-primary);color:#fff;font-weight:900;box-shadow:0 12px 28px color-mix(in srgb,var(--demo-primary) 26%,transparent)}.demo-primary-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border-radius:1rem;background:var(--demo-primary);color:#fff;padding:.75rem 1rem;font-weight:900;box-shadow:0 12px 28px color-mix(in srgb,var(--demo-primary) 22%,transparent);transition:filter .16s ease,transform .16s ease}.demo-primary-button:hover{filter:brightness(.95)}.demo-primary-button-sm{min-height:40px;border-radius:999px;padding:.5rem 1rem;font-size:.875rem}.public-body{display:grid;gap:1rem;background:#f7f8fc;padding:1.25rem}.public-services,.public-details,.booking-panel{min-width:0}.public-service-card{display:grid;gap:.75rem;border-radius:1.25rem;border:1px solid #d7dbea;background:#fff;padding:1rem;color:#0b1c30;box-shadow:0 10px 24px #0b1c300d}.public-service-card.is-selected{border-color:var(--demo-primary);background:var(--demo-soft)}.public-service-card strong{font-size:1rem;line-height:1.25}.public-service-card span{color:#4d5668;font-size:.9rem;font-weight:700}.booking-flow-hero{display:flex;flex-direction:column;gap:1rem;justify-content:space-between;background:radial-gradient(circle at 92% 18%,rgba(255,255,255,.2),transparent 18rem),linear-gradient(135deg,var(--demo-primary-dark),var(--demo-primary) 58%,var(--demo-accent));color:#fff;padding:1.5rem}.booking-flow-hero h3{margin-top:.35rem;font-size:clamp(2rem,4vw,3.6rem)}.booking-flow-body{display:grid;gap:1rem;background:#f7f8fc;padding:1rem}.booking-panel,.booking-success{border-radius:1.5rem;border:1px solid #d7dbea;background:#fff;padding:1rem;box-shadow:0 12px 28px #0b1c300d}.booking-success{border-color:color-mix(in srgb,var(--demo-primary) 32%,#d7dbea);background:var(--demo-soft);color:#0b1c30}.booking-success h3{margin-top:.5rem;font-size:1.6rem;font-weight:900;line-height:1.05}.booking-success p{margin-top:.65rem;color:#334155;font-size:.95rem;line-height:1.65}.service-card.is-selected,.day-card.is-selected,.slot-card.is-selected{border-color:var(--demo-primary, #004ac6);background:var(--demo-soft, #dbeafe);color:#0b1c30;box-shadow:0 0 0 3px color-mix(in srgb,var(--demo-primary, #004ac6) 15%,transparent)}.day-card{display:flex;min-height:62px;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.1}.day-card span:first-child{font-size:.95rem;font-weight:900}.day-card span:last-child{margin-top:.2rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.slot-card{min-height:54px;line-height:1.1}.sync-badge{display:inline-flex;min-height:28px;align-items:center;border-radius:999px;background:#ffffff29;padding:.25rem .65rem;color:#fff;font-size:.74rem;font-weight:900;box-shadow:inset 0 0 0 1px #ffffff24}.day-toggle.is-active{border-color:#004ac6;background:#004ac6;color:#fff}@media(prefers-reduced-motion:no-preference){.info-button:hover,.toggle-card:hover{transform:translateY(-1px)}#feature-tip[data-astro-cid-q4sf7heq]:not(.hidden){animation:tip-in .18s ease-out}@keyframes tip-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media(min-width:640px){.public-service-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.booking-panel,.booking-success{padding:1.25rem}}@media(min-width:1024px){.public-hero{grid-template-columns:minmax(0,1fr) minmax(16rem,.42fr);padding:2.75rem}.public-body{grid-template-columns:minmax(0,1fr) minmax(15rem,.42fr);padding:1.5rem}.booking-flow-hero{flex-direction:row;align-items:flex-start;padding:2rem}.booking-flow-body{grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr);padding:1.25rem}.booking-flow-body>:nth-child(3),.booking-flow-body>:nth-child(4){grid-column:2}}@media(max-width:520px){.public-topbar{align-items:flex-start;flex-direction:column}.preview-mode-switch{width:100%}.preview-mode{flex:1;padding-inline:.65rem}}
