@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" layer(base);:root{--color-black:#111;--color-white:#fff;--color-blush:#f7d9df;--color-rose:#df7f93;--color-soft-pink:#fcecef;--color-light-gray:#f6f6f6;--color-border:#eadfe2;--color-text-muted:var(--color-text-muted);--color-bg-primary:var(--color-white);--color-bg-secondary:var(--color-soft-pink);--color-bg-tertiary:var(--color-light-gray);--color-bg-card:var(--color-white);--color-bg-card-hover:var(--color-soft-pink);--color-bg-elevated:var(--color-white);--color-border-subtle:var(--color-border);--color-border-default:var(--color-border);--color-border-strong:#d4c4c8;--color-border-focus:var(--color-rose);--color-border-error:var(--color-rose);--color-text-primary:var(--color-black);--color-text-secondary:#333;--color-text-inverse:var(--color-white);--color-text-brand:var(--color-rose);--color-brand-primary:var(--color-black);--color-brand-primary-hover:#333;--color-brand-primary-active:#000;--color-brand-secondary:var(--color-rose);--color-brand-secondary-hover:#c96d82;--color-success:#2d8a3e;--color-success-bg:#2d8a3e1a;--color-success-border:#2d8a3e33;--color-warning:#c09040;--color-warning-bg:#c090401a;--color-warning-border:#c0904033;--color-danger:#c03030;--color-danger-bg:#c030301a;--color-danger-border:#c0303033;--color-rose-50:#fef5f7;--color-rose-100:var(--color-soft-pink);--color-rose-200:var(--color-blush);--color-rose-300:#f0a8b8;--color-rose-400:#e690a4;--color-rose-500:var(--color-rose);--color-rose-600:#c96d82;--color-rose-700:#b05a70;--color-rose-800:#964a5e;--color-rose-900:#7d3d4d;--color-neutral-0:#fff;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#e8e8e8;--color-neutral-300:#d0d0d0;--color-neutral-400:#a8a8a8;--color-neutral-500:#888;--color-neutral-600:#686868;--color-neutral-700:#484848;--color-neutral-800:#303030;--color-neutral-900:#202020;--color-neutral-950:#141414;--color-neutral-1000:var(--color-black);--font-serif:"Playfair Display", "Cormorant Garamond", Georgia, serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:.7rem;--text-sm:.8125rem;--text-base:.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.2;--leading-normal:1.5;--leading-relaxed:1.7;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000a, 0 1px 1px #00000008;--shadow-md:0 4px 8px #0000000f, 0 2px 4px #0000000a;--shadow-lg:0 12px 24px #00000014, 0 4px 8px #0000000d;--shadow-xl:0 20px 40px #0000001a, 0 8px 16px #0000000f;--shadow-focus:0 0 0 3px #e0a0a059;--shadow-brand:0 4px 16px #c080802e;--shadow-card:0 2px 8px #0000000d, 0 1px 2px #0000000a;--transition-fast:.12s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-popover:400;--z-tooltip:500;--container-max:1200px;--header-height:64px;--sidebar-width:280px}@media (prefers-color-scheme:dark){:root[data-theme=dark]{--color-bg-primary:var(--color-neutral-1000);--color-bg-secondary:var(--color-neutral-950);--color-bg-tertiary:var(--color-neutral-900);--color-bg-card:var(--color-neutral-950);--color-bg-card-hover:var(--color-neutral-900);--color-bg-elevated:var(--color-neutral-800);--color-border-subtle:var(--color-neutral-800);--color-border-default:var(--color-neutral-700);--color-border-strong:var(--color-neutral-600);--color-text-primary:var(--color-neutral-50);--color-text-secondary:var(--color-neutral-400);--color-text-muted:var(--color-neutral-600);--color-text-inverse:var(--color-neutral-950);--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--shadow-xl:0 16px 48px #0009;--shadow-card:0 2px 8px #0000004d, 0 1px 2px #0003}}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh;margin:0}#root{min-height:100vh}:focus-visible{ring:2px solid var(--color-border-focus);ring-offset:2px;ring-offset-color:var(--color-bg-primary);outline:none}::selection{background:var(--color-brand-primary);color:var(--color-text-inverse)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-neutral-700);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-600)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.w-full{width:100%}.max-w-container{max-width:var(--container-max);margin:0 auto}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.border{border:1px solid var(--color-border-default)}.border-subtle{border:1px solid var(--color-border-subtle)}.border-strong{border:1px solid var(--color-border-strong)}.bg-card{background:var(--color-bg-card)}.bg-elevated{background:var(--color-bg-elevated)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-brand{color:var(--color-text-brand)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.transition{transition:all var(--transition-normal)}.transition-fast{transition:all var(--transition-fast)}.marketing-shell{color:#111;min-height:100vh;font-family:var(--font-sans);background:radial-gradient(circle at 14% 32%,#f7d9dfc7,#0000 28rem),linear-gradient(#fff 0%,#fcecef 100%);overflow-x:hidden}.marketing-nav{justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:0 auto;padding:18px 24px 10px;display:flex}.brand-lockup{color:#111;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-lockup img{object-fit:contain;width:92px;height:auto}.brand-lockup span{font-family:var(--font-serif,Georgia, serif);letter-spacing:0;font-size:30px}.brand-lockup small{color:#df7f93}.marketing-links{align-items:center;gap:18px;display:flex}.marketing-links a{color:#111;font-size:14px;font-weight:700;text-decoration:none}.pill-button{color:#fff;letter-spacing:0;background:#111;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 22px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 18px 40px #11111129}.pill-button.rose{background:#df7f93}.pill-button.outline{color:#111;box-shadow:none;background:0 0;border:1px solid #df7f93}.pill-button.disabled{color:#7c4b57;box-shadow:none;cursor:not-allowed;background:#f4d5dc}.marketing-hero{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;gap:48px;max-width:1180px;margin:0 auto;padding:38px 24px 34px;display:grid}.eyebrow{color:#df7f93;text-transform:uppercase;background:#fcecef;border-radius:999px;width:fit-content;padding:8px 13px;font-size:12px;font-weight:800}.display-title{font-family:var(--font-serif,Georgia, serif);margin:22px 0;font-size:clamp(48px,7vw,88px);font-weight:400;line-height:.95}.display-title em{color:#df7f93;font-style:italic}.hero-copy{color:#333;max-width:560px;font-size:18px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:14px;margin:30px 0 26px;display:flex}.trust-row{color:#333;align-items:center;gap:12px;font-size:14px;display:flex}.stars{color:#df7f93;letter-spacing:2px}.mockup-stage{background:linear-gradient(135deg,#fff 0%,#fcecef 100%);border:1px solid #eadfe2;border-radius:18px;min-height:470px;padding:28px;position:relative;overflow:hidden;box-shadow:0 24px 70px #1111111a}.dashboard-mock{background:#fff;border:1px solid #eadfe2;border-radius:18px;padding:24px;box-shadow:0 18px 50px #0000000f}.mock-header,.mock-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.mock-card{overflow-wrap:anywhere;background:#fff;border:1px solid #eadfe2;border-radius:16px;min-width:0;padding:18px}.mock-card strong{margin-top:8px;font-size:28px;display:block}.mock-list{gap:12px;margin-top:22px;display:grid}.mock-appointment{background:#fcecef;border-radius:14px;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.mock-appointment span,.mock-appointment small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.phone-mock{background:#fff;border:8px solid #111;border-radius:24px;width:154px;padding:14px 10px;position:absolute;bottom:24px;right:24px;box-shadow:0 20px 50px #0003}.phone-mock h4{text-align:center;margin:0 0 14px;font-size:13px}.phone-service,.phone-time{background:#fcecef;border-radius:10px;margin-bottom:8px;padding:9px;font-size:11px}.feature-strip,.marketing-section{max-width:1180px;margin:0 auto;padding:24px}.feature-grid,.pricing-grid{grid-template-columns:repeat(5,1fr);gap:16px;display:grid}.feature-card,.price-card{background:#fff;border:1px solid #eadfe2;border-radius:18px;padding:24px;box-shadow:0 18px 50px #0000000d}.feature-icon{color:#df7f93;background:#fcecef;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:14px;display:grid;position:relative}.feature-icon span,.feature-icon:before,.feature-icon:after{content:"";box-sizing:border-box;position:absolute}.icon-calendar span{border:2px solid;border-radius:5px;width:23px;height:22px}.icon-calendar span:before{content:"";border-top:2px solid;position:absolute;inset:6px 0 auto}.icon-calendar:before,.icon-calendar:after{background:currentColor;width:2px;height:6px;top:11px}.icon-calendar:before{left:18px}.icon-calendar:after{right:18px}.icon-bell span{border:2px solid;border-bottom:0;border-radius:14px 14px 8px 8px;width:22px;height:24px}.icon-bell:before{border-top:2px solid;width:28px;bottom:14px}.icon-bell:after{background:currentColor;border-radius:50%;width:6px;height:6px;bottom:10px}.icon-card span{border:2px solid;border-radius:5px;width:27px;height:20px}.icon-card:before{border-top:2px solid;width:27px;top:20px}.icon-card:after{border-top:2px solid;width:8px;bottom:17px;right:14px}.icon-users span{border:2px solid;border-radius:50%;width:12px;height:12px;top:11px}.icon-users:before,.icon-users:after{border:2px solid;border-radius:14px 14px 0 0;width:20px;height:11px;bottom:11px}.icon-users:before{left:9px}.icon-users:after{right:9px}.icon-chart span{border:2px solid;border-radius:2px;width:5px;height:12px;bottom:13px;left:14px}.icon-chart:before{border:2px solid;border-radius:2px;width:5px;height:21px;bottom:13px}.icon-chart:after{border:2px solid;border-radius:2px;width:5px;height:28px;bottom:13px;right:14px}.section-heading{font-family:var(--font-serif,Georgia, serif);text-align:center;margin:32px auto;font-size:clamp(38px,5vw,64px);font-weight:400;line-height:1}.section-heading em{color:#df7f93;font-style:italic}.pricing-grid{grid-template-columns:repeat(3,1fr)}.price-card.featured{border-color:#df7f93;box-shadow:0 24px 70px #df7f932e}.price{font-family:var(--font-serif,Georgia, serif);margin:12px 0;font-size:54px}.price span{font-family:var(--font-sans);color:#6f6f6f;font-size:15px}.price-card ul{color:#333;padding-left:18px;line-height:2}.home-products{max-width:1180px;margin:0 auto;padding:38px 24px 86px}.home-products-heading{max-width:820px;margin-bottom:28px}.home-products-heading .section-heading{text-align:left;margin:18px 0 14px}.home-products-heading p{color:#333;font-size:17px;line-height:1.65}.product-explainer-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:stretch;gap:18px;display:grid}.product-explainer{background:#fff;border:1px solid #eadfe2;border-radius:18px;min-width:0;padding:26px;box-shadow:0 18px 50px #0000000d}.product-explainer.app{grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:24px;display:grid}.product-explainer.platform{color:#fff;background:#171214}.product-kicker{color:#df7f93;text-transform:uppercase;background:#fcecef;border-radius:999px;width:fit-content;padding:7px 12px;font-size:12px;font-weight:800}.product-explainer.platform .product-kicker{color:#f7d9df;background:#ffffff1f}.product-explainer h3{font-family:var(--font-serif,Georgia, serif);margin:16px 0 14px;font-size:clamp(32px,4vw,46px);font-weight:400;line-height:1}.product-explainer p{color:#333;line-height:1.65}.product-explainer.platform p{color:#ffffffc7}.product-explainer ul{color:#333;margin:18px 0 24px;padding-left:20px;line-height:1.9}.product-explainer img{object-fit:contain;object-position:top center;background:#fff8fa;border:1px solid #eadfe2;border-radius:14px;width:100%;height:420px;display:block}.platform-proof{gap:10px;margin:22px 0 26px;display:grid}.platform-proof div{background:#ffffff0f;border:1px solid #ffffff24;border-radius:12px;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.platform-proof strong{font-family:var(--font-serif,Georgia, serif);font-size:27px;font-weight:400;line-height:1}.platform-proof span{color:#ffffffc7;font-size:13px;line-height:1.4}.auth-lux-wrapper{background:radial-gradient(circle at 18% 12%,#f7d9dfd1,#0000 25rem),radial-gradient(circle at 84% 88%,#df7f932e,#0000 22rem),linear-gradient(#fff 0%,#fcecef 100%);justify-content:center;align-items:center;min-height:100vh;padding:48px 20px;display:flex}.auth-visual{display:none}.auth-visual h1{font-family:var(--font-serif,Georgia, serif);margin:0;font-size:clamp(42px,5vw,74px);font-weight:400;line-height:1}.auth-visual em{color:#df7f93;font-style:italic}.auth-panel{justify-content:center;width:100%;padding:0;display:flex}.auth-card{background:#ffffffeb;border:1px solid #eadfe2;border-radius:18px;width:min(100%,460px);padding:34px;box-shadow:0 24px 70px #1111111a}.auth-brand{text-align:center;margin-bottom:22px}.auth-brand img{width:150px;height:auto;margin:0 auto 10px;display:block}.auth-brand p{color:#6f6f6f;margin:0;font-size:14px;line-height:1.45}.auth-heading{text-align:center;margin-bottom:24px}.auth-heading h1{font-family:var(--font-serif,Georgia, serif);color:#111;margin:0 0 8px;font-size:34px;font-weight:400;line-height:1.05}.auth-heading p{color:#6f6f6f;max-width:320px;margin:0 auto;font-size:14px;line-height:1.45}.auth-form{gap:15px;display:grid}.auth-form button{margin-top:4px}.auth-row{justify-content:space-between;align-items:center;gap:14px;font-size:13px;display:flex}.auth-row label{color:#6f6f6f;align-items:center;gap:7px;display:inline-flex}.auth-row a,.auth-footnote a{color:#df7f93;font-weight:700;text-decoration:none}.auth-footnote{text-align:center;color:#6f6f6f;border-top:1px solid #eadfe2;margin:20px 0 0;padding-top:18px;font-size:14px}.auth-error{color:#a83e56;background:#fff5f7;border:1px solid #f0b8c5;border-radius:12px;margin-bottom:16px;padding:11px 13px;font-size:14px;line-height:1.4}.auth-success{color:#27633c;background:#f3fbf6;border:1px solid #b9dec7;border-radius:12px;margin-bottom:16px;padding:11px 13px;font-size:14px;line-height:1.4}.form-label{color:#4b4043;font-size:14px;font-weight:700}.form-select,.form-textarea{box-sizing:border-box;color:#171214;width:100%;font:inherit;background:#fff;border:1px solid #e7d7dc;border-radius:10px;padding:12px 14px}.legal-wrap{max-width:860px;margin:0 auto;padding:48px 24px 80px}.legal-wrap .section-heading{text-align:left;margin:18px 0 10px}.legal-updated,.legal-intro,.legal-section p{color:#333;line-height:1.7}.legal-intro{max-width:760px;font-size:18px}.legal-section{border-top:1px solid #eadfe2;padding:26px 0}.legal-section h2{font-family:var(--font-serif,Georgia, serif);margin:0 0 10px;font-size:28px;font-weight:400}.download-hero{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:42px;max-width:1180px;margin:0 auto;padding:58px 24px 76px;display:grid}.download-heading{text-align:left;margin:20px 0}.download-copy{color:#333;max-width:620px;font-size:18px;line-height:1.65}.download-note{color:#6f6f6f;max-width:600px;font-size:14px;line-height:1.6}.download-panel{background:#fff;border:1px solid #eadfe2;border-radius:18px;padding:28px;box-shadow:0 18px 50px #0000000d}.download-panel img{width:142px;height:auto;margin-bottom:20px;display:block}.download-panel h2{font-family:var(--font-serif,Georgia, serif);margin:0 0 22px;font-size:34px;font-weight:400;line-height:1.05}.download-panel dl{gap:14px;margin:0;display:grid}.download-panel dl div{border-top:1px solid #eadfe2;justify-content:space-between;gap:18px;padding-top:14px;display:flex}.download-panel dt{color:#6f6f6f;font-size:13px;font-weight:700}.download-panel dd{color:#111;text-align:right;overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:800}.download-section{max-width:1180px;margin:0 auto;padding:0 24px 76px}.purpose-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.purpose-card{background:#fff;border:1px solid #eadfe2;border-radius:18px;padding:24px;box-shadow:0 18px 50px #0000000d}.purpose-card h2{font-family:var(--font-serif,Georgia, serif);margin:0 0 12px;font-size:30px;font-weight:400;line-height:1.05}.purpose-card p,.download-section-heading p,.toolkit-shot p{color:#333;line-height:1.6}.download-section-heading{max-width:760px;margin-bottom:28px}.download-section-heading .section-heading{text-align:left;margin:18px 0 14px}.download-section-heading p{font-size:17px}.toolkit-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.toolkit-shot{background:#fff;border:1px solid #eadfe2;border-radius:18px;min-width:0;padding:16px;box-shadow:0 18px 50px #0000000d}.toolkit-shot.featured{grid-column:span 2}.toolkit-shot img{object-fit:contain;object-position:top center;background:#fff8fa;border:1px solid #eadfe2;border-radius:12px;width:100%;height:360px;display:block}.toolkit-shot.featured img{height:430px}.toolkit-shot h3{font-family:var(--font-serif,Georgia, serif);margin:18px 0 8px;font-size:26px;font-weight:400;line-height:1.05}.toolkit-shot p{margin:0;font-size:14px}.download-bottom-cta{justify-content:center;margin-top:30px;display:flex}@media (width<=900px){.marketing-nav,.marketing-links{flex-wrap:wrap}.brand-lockup img{width:86px}.marketing-hero{grid-template-columns:1fr}.mockup-stage{border-radius:16px;min-height:0;padding:18px}.dashboard-mock{border-radius:16px;padding:16px}.auth-lux-wrapper{align-items:flex-start;padding:24px 14px}.auth-card{padding:22px}.auth-heading h1{font-size:30px}.feature-grid,.pricing-grid{grid-template-columns:1fr}.home-products{padding:30px 24px 62px}.product-explainer-grid,.product-explainer.app{grid-template-columns:1fr}.product-explainer img{height:430px}.download-hero{grid-template-columns:1fr;padding:36px 24px 54px}.purpose-grid,.toolkit-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.toolkit-shot.featured{grid-column:span 2}.phone-mock{border-width:10px;border-radius:28px;width:180px;margin:18px auto 0;padding:18px 12px;position:static}.phone-mock h4{font-size:16px}.phone-service,.phone-time{padding:10px;font-size:12px}}@media (width<=560px){.marketing-nav{justify-content:center;padding:16px 14px 8px}.brand-lockup img{width:78px}.marketing-links{justify-content:center;gap:10px;width:100%}.marketing-links a{font-size:13px}.marketing-links .pill-button{min-height:38px;padding:0 14px}.marketing-hero{gap:28px;padding:28px 14px 22px}.display-title{margin:18px 0;font-size:clamp(40px,14vw,52px)}.hero-copy{font-size:16px;line-height:1.55}.hero-actions{gap:10px;margin:24px 0 20px}.hero-actions .pill-button{flex:145px}.trust-row{align-items:flex-start;font-size:13px}.mockup-stage,.dashboard-mock{padding:12px}.mock-header{gap:8px}.mock-card{border-radius:12px;padding:10px 8px;font-size:11px}.mock-card strong{margin-top:5px;font-size:20px}.mock-list{gap:8px;margin-top:14px}.mock-appointment{grid-template-columns:46px minmax(0,1fr) 42px;gap:8px;padding:10px;font-size:12px}.phone-mock{border-width:8px;width:min(100%,176px);padding:14px 10px}.feature-strip,.marketing-section{padding:14px}.home-products{padding:24px 14px 50px}.home-products-heading p{font-size:16px;line-height:1.55}.feature-card,.price-card,.product-explainer{border-radius:14px;padding:18px}.product-explainer img{height:min(520px,118vw)}.platform-proof div{grid-template-columns:64px minmax(0,1fr)}.download-hero{gap:28px;padding:30px 14px 46px}.download-copy{font-size:16px;line-height:1.55}.download-panel{border-radius:14px;padding:20px}.download-panel h2{font-size:30px}.download-section{padding:0 14px 50px}.purpose-grid,.toolkit-gallery{grid-template-columns:1fr}.toolkit-shot.featured{grid-column:auto}.toolkit-shot img,.toolkit-shot.featured img{height:min(520px,118vw)}.download-bottom-cta .pill-button{width:100%}}.public-booking-wrapper{background:var(--color-bg);min-height:100vh;padding:var(--space-6)}.booking-container{max-width:720px;margin:0 auto}.loading-state{min-height:60vh;color:var(--color-text-muted);justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-card{text-align:center;max-width:480px;padding:var(--space-10) var(--space-6);margin:120px auto}.error-card h1{color:var(--color-text);margin-bottom:var(--space-3);font-size:var(--text-2xl)}.error-card p{color:var(--color-text-muted);margin-bottom:var(--space-6)}.back-link{color:var(--color-primary);font-weight:500;text-decoration:none}.back-link:hover{text-decoration:underline}.client-account-bar{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-bottom:var(--space-8);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.account-prompt{color:var(--color-text-muted);font-weight:500}.account-link{color:var(--color-primary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);transition:all var(--transition-fast);font-weight:600;text-decoration:none}.account-link:hover{background:var(--color-primary-bg);text-decoration:none}.account-link-primary{background:var(--color-primary);color:var(--color-bg)}.account-link-primary:hover{background:var(--color-primary-hover);color:var(--color-bg)}.account-separator{color:var(--color-text-muted)}.account-benefit{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:500}.booking-header{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);margin-bottom:var(--space-8);text-align:center}.business-avatar{margin-bottom:var(--space-4)}.business-name{color:var(--color-text);font-size:var(--text-3xl);margin-bottom:var(--space-3);font-weight:700}.business-bio{color:var(--color-text-muted);font-size:var(--text-base);max-width:500px;margin:0 auto var(--space-4);line-height:1.6}.business-meta{justify-content:center;gap:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.progress-indicator{margin-bottom:var(--space-8);padding:var(--space-4);justify-content:center;align-items:center;gap:var(--space-2);display:flex}.progress-step{align-items:center;gap:var(--space-2);z-index:1;flex-direction:column;display:flex;position:relative}.step-circle{background:var(--color-surface);border:2px solid var(--color-border);width:36px;height:36px;color:var(--color-text-muted);font-size:var(--text-sm);transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.progress-step.active .step-circle{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg)}.progress-step.completed .step-circle{background:var(--color-success);border-color:var(--color-success);color:var(--color-bg)}.step-label{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;white-space:nowrap;max-width:80px}.progress-step.active .step-label{color:var(--color-primary);font-weight:500}.progress-step.completed .step-label{color:var(--color-success)}.progress-line{background:var(--color-border);width:60px;height:2px;transition:background-color var(--transition-fast);flex-shrink:0}.progress-line.completed{background:var(--color-success)}.error-message{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--color-error-text);font-size:var(--text-sm);margin-bottom:var(--space-6);align-items:center;gap:var(--space-2);display:flex}.booking-section{margin-bottom:var(--space-8)}.section-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.section-title{color:var(--color-text);font-size:var(--text-xl);margin:0;font-weight:600}.services-grid{gap:var(--space-4);display:grid}.service-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);text-align:left;cursor:pointer;transition:all var(--transition-fast);width:100%}.service-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.service-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.service-name{color:var(--color-text);font-size:var(--text-lg);flex:1;margin:0;font-weight:600}.service-price{color:var(--color-primary);font-size:var(--text-xl);white-space:nowrap;font-weight:700}.service-description{color:var(--color-text-muted);font-size:var(--text-sm);margin:0 0 var(--space-3);line-height:1.5}.service-meta{gap:var(--space-2);flex-wrap:wrap;display:flex}.deposit-badge{background:var(--color-warning-bg)!important;border-color:var(--color-warning-border)!important;color:var(--color-warning-text)!important}.selected-service-summary{background:var(--color-surface);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6)}.selected-service-name{color:var(--color-text);font-size:var(--text-lg);margin:0 0 var(--space-3);font-weight:600}.selected-service-meta{gap:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.date-picker-card{text-align:center;max-width:320px;margin:0 auto}.date-label{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-3);display:block}.date-input{text-align:center;width:100%;font-size:var(--text-lg)!important;padding:var(--space-3) var(--space-4)!important}.selected-date-card{background:var(--color-surface);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.selected-date-content{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.selected-date-content strong{color:var(--color-text)}.slots-grid{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(100px,1fr));display:grid}.slot-button{background:var(--color-surface);border:2px solid var(--color-border);color:var(--color-text);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);transition:all var(--transition-fast);font-weight:500}.slot-button:hover{border-color:var(--color-primary);background:var(--color-primary-bg)}.slot-button:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.slot-button[aria-selected=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg)}.no-slots-card{text-align:center;padding:var(--space-8) var(--space-6)}.no-slots-card p{color:var(--color-text);margin-bottom:var(--space-2)}.no-slots-card .subtext{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-4)}.booking-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8)}.form-group{margin-bottom:var(--space-5)}.form-label{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-2);font-weight:500;display:block}.required{color:var(--color-error)}.form-group input,.form-group textarea{box-sizing:border-box;width:100%}.textarea{resize:vertical;min-height:80px;font-family:inherit}.checkbox-group{margin-bottom:var(--space-4)}.checkbox-label{align-items:flex-start;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-base);cursor:pointer;line-height:1.5;display:flex}.checkbox-label input[type=checkbox]{opacity:0;pointer-events:none;position:absolute}.checkbox-custom{border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);width:20px;height:20px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:var(--color-primary);border-color:var(--color-primary)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"✓";color:var(--color-bg);font-size:var(--text-sm);font-weight:700}.checkbox-label:focus-within .checkbox-custom{box-shadow:0 0 0 3px var(--color-focus-ring)}.health-title{color:var(--color-text);font-size:var(--text-lg);margin:var(--space-8) 0 var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-border);font-weight:600}.policy-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm);background:#fff8fa;line-height:1.6}.policy-card p{margin:0 0 var(--space-3)}.policy-card p:last-child{margin-bottom:0}.policy-title{color:var(--color-text);font-size:var(--text-base);margin:0 0 var(--space-3);font-weight:700}.policy-note{color:var(--color-text-muted)}.inline-policy-link{color:var(--color-primary);text-underline-offset:2px;font-weight:700;text-decoration:underline}.consent-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6)}.consent-label{align-items:flex-start;gap:var(--space-3);cursor:pointer;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.6;display:flex}.consent-label input[type=checkbox]{opacity:0;pointer-events:none;position:absolute}.consent-text strong{color:var(--color-text)}.submit-button{width:100%;padding:var(--space-4)!important;font-size:var(--text-lg)!important;font-weight:700!important}.submit-button:disabled{opacity:.5;cursor:not-allowed}.confirmation-card{max-width:560px;margin:var(--space-8) auto;text-align:center;padding:var(--space-10) var(--space-6)}.success-icon{margin-bottom:var(--space-6);font-size:5rem}.confirmation-card h1{color:var(--color-text);font-size:var(--text-2xl);margin-bottom:var(--space-4);font-weight:700}.confirmation-card>p{color:var(--color-text-muted);font-size:var(--text-base);margin-bottom:var(--space-8);line-height:1.6}.booking-details{text-align:left;margin-bottom:var(--space-6)}.booking-details h3{color:var(--color-primary);font-size:var(--text-lg);margin-bottom:var(--space-4);font-weight:600}.detail-row{padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);justify-content:space-between;display:flex}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{color:var(--color-text-muted);font-size:var(--text-sm)}.detail-row span:last-child{color:var(--color-text);font-size:var(--text-base);font-weight:600}.info-box{background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6);text-align:left}.info-box p{color:var(--color-success-text);font-size:var(--text-sm);margin-bottom:var(--space-2)}.info-box .subtext{color:var(--color-text-muted);font-size:var(--text-xs);margin:0}.home-link{color:var(--color-primary);font-size:var(--text-base);font-weight:500;text-decoration:none}.home-link:hover{text-decoration:underline}@media (width<=640px){.public-booking-wrapper{padding:var(--space-4)}.booking-header{padding:var(--space-6) var(--space-4)}.business-name{font-size:var(--text-2xl)}.progress-line{width:40px}.step-label{max-width:70px;font-size:10px}.booking-form{padding:var(--space-5)}.slots-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.client-dashboard{background:var(--color-bg-primary);min-height:100vh;padding:var(--space-8) var(--space-4)}.client-dashboard .loading-overlay{justify-content:center;align-items:center;gap:var(--space-4);min-height:50vh;color:var(--color-text-muted);flex-direction:column;display:flex}.client-dashboard .spinner{border:3px solid var(--color-border-default);border-top-color:var(--color-brand-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.dashboard-header{margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.header-left{align-items:center;gap:var(--space-5);display:flex}.business-name{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-brand-primary);letter-spacing:-.02em;margin:0}.welcome-text{color:var(--color-text-secondary);font-size:var(--text-base);margin:var(--space-1) 0 0}.header-right{gap:var(--space-3);display:flex}.tab-nav{gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:1px solid var(--color-border-subtle);padding-bottom:var(--space-4);display:flex;overflow-x:auto}.tab-button{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;display:flex}.tab-button:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.tab-button.active{background:var(--color-brand-primary);color:#fff}.tab-button.active .tab-count{background:#fff3}.tab-count{min-width:20px;height:20px;padding:0 var(--space-2);background:var(--color-bg-tertiary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);justify-content:center;align-items:center;display:inline-flex}.tab-button.active .tab-count{color:#fff;background:#fff3}.tab-panel{animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;padding:var(--space-12) var(--space-6);background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-icon{margin-bottom:var(--space-4);opacity:.6;font-size:48px}.empty-state h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-2)}.empty-state p{color:var(--color-text-secondary);margin:0 0 var(--space-6);max-width:300px}.appointments-list{gap:var(--space-4);flex-direction:column;display:flex}.appointment-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);transition:all var(--transition-fast)}.appointment-card:hover{border-color:var(--color-border-default);box-shadow:var(--shadow-md)}.appointment-card.past{opacity:.85}.appointment-main{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.appointment-info{flex:1;min-width:0}.service-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-3)}.appointment-meta{gap:var(--space-4);font-size:var(--text-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.meta-item{align-items:center;gap:var(--space-1);display:flex}.meta-item.price{font-weight:var(--font-semibold);color:var(--color-brand-primary)}.appointment-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.action-buttons{gap:var(--space-2);display:flex}.appointment-details{gap:var(--space-3);padding-top:var(--space-4);margin-top:var(--space-4);border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;display:flex}.deposit-info,.notes-info{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);display:flex}.deposit-info{color:var(--color-warning)}.preferences-card{max-width:720px}.preferences-title{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-1)}.preferences-subtitle{color:var(--color-text-secondary);margin:0 0 var(--space-8);font-size:var(--text-base)}.preferences-form{margin-bottom:var(--space-8)}.form-grid{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group.full-width{grid-column:1/-1}.form-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary)}.form-select,.form-textarea{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--text-base);transition:all var(--transition-fast);font-family:inherit}.form-select:focus,.form-textarea:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-primary-bg);outline:none}.form-textarea{resize:vertical;min-height:80px}.form-actions{gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-border-subtle);flex-direction:column;display:flex}.save-message{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);display:flex}.save-message.success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.save-message.error{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.preferences-divider{background:var(--color-border-subtle);height:1px;margin:var(--space-8) 0}.profile-section{padding-top:var(--space-4)}.section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-5)}.profile-fields{gap:var(--space-4);flex-direction:column;display:flex}.profile-field{padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.profile-field:last-child{border-bottom:none}.field-label{color:var(--color-text-secondary);font-size:var(--text-base)}.field-value{color:var(--color-text-primary);font-size:var(--text-base);font-weight:var(--font-medium);text-align:right;word-break:break-word;max-width:60%}.error-card{text-align:center;max-width:480px;padding:var(--space-10) var(--space-6);background:var(--color-danger-bg);border-color:var(--color-danger-border);margin:0 auto}.error-icon{margin-bottom:var(--space-4);font-size:48px}.error-card h2{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-danger);margin:0 0 var(--space-2)}.error-card p{color:var(--color-text-secondary);margin:0 0 var(--space-6)}@media (width<=640px){.client-dashboard{padding:var(--space-6) var(--space-3)}.dashboard-header{align-items:flex-start;gap:var(--space-4);flex-direction:column}.header-right{justify-content:flex-end;width:100%}.tab-nav{gap:var(--space-1)}.tab-button{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.appointment-main{gap:var(--space-3);flex-direction:column}.appointment-actions{justify-content:space-between;width:100%}.action-buttons{justify-content:flex-end;width:100%}.form-grid{grid-template-columns:1fr}.profile-field{align-items:flex-start;gap:var(--space-1);flex-direction:column}.field-value{text-align:left;max-width:100%}}
