:root{--primary-blue: #15c0da;--primary-blue-dark: #28e1ea;--primary-blue-light: #e9f1fb;--secondary-blue: #15c0da;--secondary-blue-light: #edf4ff;--dark-text: #0f172a;--medium-text: #334155;--light-text: #64748b;--white: #ffffff;--light-bg: #f8fafc;--border-light: #e2e8f0;--border-medium: #cbd5e1;--shadow-light: rgba(26, 92, 176, .06);--shadow-medium: rgba(26, 92, 176, .12);--shadow-dark: rgba(26, 92, 176, .18);--gradient-primary: linear-gradient(135deg, #15c0da 0%, #15c0da 100%);--gradient-light: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);--border-radius-sm: 8px;--border-radius-md: 12px;--border-radius-lg: 16px;--transition-fast: .2s ease;--transition-medium: .3s ease}.dermatologist-app{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;color:var(--dark-text);line-height:1.6;overflow-x:hidden;-webkit-overflow-scrolling:touch}.container{max-width:1200px;margin:0 auto;padding:0 24px}.dermatologist-hero{background:linear-gradient(135deg,#f8fafc,#e8f2fc);padding:20px 0 35px;text-align:center;position:relative;overflow:hidden}.hero-content{position:relative;z-index:2;max-width:900px;margin:0 auto}.dermatologist-hero h1{font-size:2.8rem;font-weight:800;color:var(--dark-text);margin-bottom:15px;line-height:1.2;letter-spacing:-.5px}.dermatologist-hero h2{font-size:1.5rem;font-weight:600;color:var(--primary-blue);margin-bottom:25px;line-height:1.4}.hero-subtitle{font-size:1.2rem;color:var(--medium-text);margin-bottom:40px;max-width:700px;margin-left:auto;margin-right:auto;line-height:1.6;padding:20px;background:var(--white);border-radius:var(--border-radius-md);box-shadow:0 5px 20px #0000000d;border-left:4px solid var(--primary-blue)}.btn{display:inline-block;padding:12px 25px;border:none;border-radius:var(--border-radius-sm);font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--transition-medium);min-width:120px;text-align:center}.btn-primary{background:var(--gradient-primary);color:var(--white);box-shadow:0 4px 12px var(--shadow-medium)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-dark)}.btn-secondary{background:var(--white);color:var(--medium-text);border:2px solid var(--border-medium)}.btn-secondary:hover{background:var(--light-bg);border-color:var(--medium-text);transform:translateY(-2px)}.btn-large{background:var(--gradient-primary);color:var(--white);font-size:18px;font-weight:700;padding:20px 45px;border-radius:var(--border-radius-md);border:none;cursor:pointer;transition:all var(--transition-medium);position:relative;overflow:hidden;z-index:1;box-shadow:0 8px 25px var(--shadow-medium);display:inline-flex;align-items:center;gap:12px}.btn-large:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .7s;z-index:-1}.btn-large:hover{transform:translateY(-3px);box-shadow:0 15px 35px var(--shadow-dark)}.btn-large:hover:before{left:100%}.trust-badges{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-top:40px;padding-top:40px;border-top:1px solid rgba(52,152,219,.1);position:relative}.trust-badges:before{content:"Trusted By Patients Across The UK";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#f8fafc;padding:0 20px;color:var(--medium-text);font-size:.9rem;font-weight:600}.badge{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--medium-text);background:var(--white);padding:12px 20px;border-radius:var(--border-radius-sm);box-shadow:0 4px 12px var(--shadow-light);transition:all var(--transition-medium);border:1px solid transparent}.badge:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow-medium);border-color:var(--primary-blue-light)}.badge i{font-size:16px;color:var(--primary-blue);background:var(--primary-blue-light);padding:8px;border-radius:50%;transition:all var(--transition-medium)}.badge:hover i{transform:scale(1.1);background:var(--gradient-primary);color:var(--white)}.available-doctors-section{background-color:var(--light-bg);padding:60px 0;position:relative}.available-doctors-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);z-index:1}.doctors-header{text-align:center;margin-bottom:40px;position:relative}.doctors-content{display:grid;grid-template-columns:1fr 320px;gap:100px;max-width:1200px;margin:10px auto}.doctors-main{display:flex;flex-direction:column;gap:25px}.doctors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:18px}.doctor-card{background:var(--white);border-radius:var(--border-radius-lg);padding:20px;box-shadow:0 2px 12px #0000000f,0 0 0 1px #0000000a;border:1px solid var(--border-light);display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.doctor-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.doctor-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px #15c0da24,0 0 0 1px #15c0da1a}.doctor-card:hover:before{transform:scaleX(1)}.doctor-card-top{display:flex;align-items:flex-start;gap:14px}.doctor-avatar-wrap{position:relative;flex-shrink:0}.doctor-avatar-wrap img,.doctor-avatar-placeholder{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--border-light);box-shadow:0 2px 8px #0000001a;display:block}.doctor-avatar-placeholder{background:linear-gradient(135deg,#e9f6fb,#d0eef5);display:flex;align-items:center;justify-content:center;color:var(--primary-blue);font-size:28px}.doctor-status-dot{position:absolute;bottom:2px;right:2px;width:13px;height:13px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 3px #00000026}.doctor-status-dot.online{background:#22c55e}.doctor-status-dot.offline{background:#94a3b8}.doctor-identity{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.doctor-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.doctor-name-row h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--dark-text);line-height:1.25;letter-spacing:-.2px}.doctor-verified-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;color:#15803d;background:#dcfce7;border:1px solid #bbf7d0;border-radius:20px;padding:2px 7px;white-space:nowrap}.doctor-verified-badge i{font-size:10px}.doctor-specialization{color:var(--primary-blue);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.6px}.doctor-subspecialty{font-size:12px;color:var(--light-text)}.doctor-meta-row{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:5px}.doctor-meta-row span{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--medium-text)}.doctor-meta-row i{color:var(--primary-blue);font-size:11px;width:12px;text-align:center}.doctor-expertise{display:flex;flex-wrap:wrap;gap:6px}.expertise-tag{background:var(--primary-blue-light);color:var(--primary-blue);border-radius:20px;padding:3px 10px;font-size:11px;font-weight:500;text-transform:capitalize}.expertise-more{background:var(--border-light);color:var(--light-text)}.doctor-card-footer{border-top:1px solid var(--border-light);padding-top:14px;display:flex;flex-direction:column;gap:12px}.doctor-pricing-row{display:flex;background:linear-gradient(135deg,#f0fafc,#e8f5f8);border:1px solid rgba(21,192,218,.18);border-radius:var(--border-radius-sm);overflow:hidden}.pricing-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 12px;gap:2px}.pricing-item+.pricing-item{border-left:1px solid rgba(21,192,218,.18)}.pricing-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--light-text)}.pricing-amount{font-size:1.3rem;font-weight:800;color:var(--primary-blue);line-height:1.1}.pricing-followup{font-size:1.1rem;color:#0891b2}.doctor-actions{display:flex;gap:8px}.doctor-actions .btn{flex:1;padding:10px 12px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:6px;font-weight:600;border-radius:var(--border-radius-sm);min-height:40px;white-space:nowrap}.doctor-actions .btn-primary{background:var(--gradient-primary);box-shadow:0 2px 8px #15c0da4d}.doctor-actions .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 14px #15c0da66}.doctor-actions .btn-request{background:transparent;border:1.5px solid var(--primary-blue);color:var(--primary-blue)}.doctor-actions .btn-request:hover{background:var(--primary-blue-light)}.doctor-actions .btn-secondary{background:var(--white);border:1.5px solid var(--border-medium);color:var(--medium-text);flex:0 0 auto;padding:10px 16px}.doctor-actions .btn-secondary:hover{background:var(--light-bg);border-color:var(--primary-blue);color:var(--primary-blue)}.doctors-loading,.doctors-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;text-align:center;color:var(--light-text);font-size:1rem}.doctors-loading i{font-size:2rem;color:var(--primary-blue)}.doctors-error{color:#ef4444}.doctors-error i{font-size:2rem}.doctors-sidebar{display:flex;flex-direction:column;gap:22px}.sidebar-card{background:var(--white);border-radius:var(--border-radius-lg);padding:25px;box-shadow:0 6px 20px #00000012;border:1px solid var(--border-light);transition:all var(--transition-medium);position:relative;overflow:hidden}.sidebar-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);transform:scaleX(0);transition:transform var(--transition-medium)}.sidebar-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px var(--shadow-medium);border-color:var(--primary-blue-light)}.sidebar-card:hover:before{transform:scaleX(1)}.sidebar-card h3{margin:0 0 14px;font-size:1.2rem;font-weight:700;color:var(--dark-text);line-height:1.3}.sidebar-card p{color:var(--medium-text);font-size:13.5px;line-height:1.5;margin-bottom:20px}.specialties-card .btn{width:100%;justify-content:center;padding:12px;font-size:14px;font-weight:600}.metrics-card .metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metric-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 8px;border-radius:var(--border-radius-sm);background:linear-gradient(135deg,var(--light-bg) 0%,rgba(248,250,252,.8) 100%);transition:all var(--transition-medium);border:1px solid var(--border-light);position:relative;overflow:hidden}.metric-item:hover{background:linear-gradient(135deg,var(--primary-blue-light) 0%,rgba(233,241,251,.8) 100%);transform:translateY(-3px);border-color:var(--primary-blue-light);box-shadow:0 6px 15px var(--shadow-light)}.metric-icon{width:38px;height:38px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:10px;box-shadow:0 4px 8px #15c0da33;transition:all var(--transition-medium)}.metric-item:hover .metric-icon{transform:scale(1.1) rotate(5deg);box-shadow:0 6px 12px #15c0da4d}.metric-icon i{color:var(--white);font-size:16px}.metric-value{font-size:1.15rem;font-weight:800;color:var(--dark-text);margin-bottom:3px;line-height:1}.metric-label{font-size:11.5px;color:var(--medium-text);font-weight:600;letter-spacing:.3px}.modal-doctor-summary{background:linear-gradient(135deg,var(--primary-blue-light) 0%,rgba(235,245,251,.9) 100%);padding:18px 25px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden}.modal-doctor-summary:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary)}.doctor-summary-info h4{margin:0 0 5px;font-size:1.15rem;font-weight:700;color:var(--dark-text)}.doctor-summary-info p{margin:0 0 8px;color:var(--primary-blue);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.doctor-summary-details{display:flex;gap:12px;flex-wrap:wrap}.doctor-summary-details span{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--medium-text);background:#fff9;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.8)}.doctor-summary-details i{color:var(--primary-blue);font-size:11px}.doctor-summary-price{text-align:right;position:relative;z-index:1}.doctor-summary-price .price-label{font-size:11.5px;color:var(--medium-text);margin-bottom:5px;font-weight:600}.doctor-summary-price .price-amount{font-size:1.6rem;font-weight:800;color:var(--primary-blue);text-shadow:0 2px 4px rgba(21,192,218,.1)}@media(max-width:1024px){.doctors-content{grid-template-columns:1fr;gap:30px}.doctors-sidebar{flex-direction:row;gap:18px}.specialties-card,.metrics-card{flex:1}.metrics-card .metrics-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.available-doctors-section{padding:50px 0}.doctors-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.doctor-card{padding:16px}.doctor-actions{flex-wrap:wrap}.doctor-actions .btn-secondary{flex:1}.doctors-sidebar{flex-direction:column}.sidebar-card{padding:22px}.modal-doctor-summary{flex-direction:column;align-items:flex-start;gap:12px}.doctor-summary-price{text-align:left;width:100%;padding-top:12px;border-top:1px solid rgba(255,255,255,.3)}}@media(max-width:576px){.doctors-grid{grid-template-columns:1fr}.doctor-card{padding:18px}.doctor-name-row h3{font-size:1rem}.pricing-amount{font-size:1.2rem}.sidebar-card{padding:20px}.metrics-card .metrics-grid{grid-template-columns:repeat(3,1fr);gap:10px}.metric-item{padding:12px 6px}.metric-icon{width:34px;height:34px}.metric-icon i{font-size:14px}.metric-value{font-size:1.1rem}.metric-label{font-size:11px}}.section{padding:80px 0;position:relative}.section-title{text-align:center;margin-bottom:20px;color:var(--dark-text);font-size:2.2rem;font-weight:700;line-height:1.2}.section-subtitle{text-align:center;color:var(--medium-text);margin-bottom:50px;font-size:1.1rem;max-width:700px;margin-left:auto;margin-right:auto;line-height:1.6}.benefits-section{background-color:#fff}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;margin-top:50px}.benefit-card{background:var(--white);padding:35px 30px;border-radius:var(--border-radius-lg);box-shadow:0 8px 30px #0000000d;text-align:center;transition:all var(--transition-medium);border:1px solid transparent;position:relative;overflow:hidden}.benefit-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);transform:scaleX(0);transition:transform var(--transition-medium)}.benefit-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px var(--shadow-medium);border-color:var(--primary-blue-light)}.benefit-card:hover:before{transform:scaleX(1)}.benefit-icon{font-size:36px;color:var(--primary-blue);height:80px;width:80px;background:var(--primary-blue-light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;transition:all var(--transition-medium)}.benefit-card:hover .benefit-icon{transform:scale(1.1) rotate(5deg);background:var(--gradient-primary);color:var(--white)}.benefit-card h3{margin-bottom:15px;color:var(--dark-text);font-size:1.4rem;font-weight:600}.benefit-card p{color:var(--medium-text);font-size:15px;line-height:1.6;margin-bottom:0}.content-section{background-color:var(--light-bg)}.content-wrapper{max-width:800px;margin:0 auto;position:relative}.content-main h2{margin-top:40px;margin-bottom:20px;color:var(--dark-text);font-size:2rem;font-weight:700;line-height:1.3}.content-main h3{margin-top:30px;margin-bottom:15px;color:var(--dark-text);font-size:1.5rem;font-weight:600;line-height:1.4}.content-main p{margin-bottom:20px;line-height:1.7;color:var(--medium-text);font-size:16px}.info-box{background:linear-gradient(135deg,var(--primary-blue-light) 0%,rgba(235,245,251,.8) 100%);border-left:4px solid var(--primary-blue);padding:30px;margin:40px 0;border-radius:var(--border-radius-sm);border:1px solid var(--primary-blue-light);position:relative;overflow:hidden}.info-box p{margin-bottom:0;color:var(--dark-text);font-size:15px;font-weight:500}.platform-description-section{margin:50px 0;padding:30px 0;border-top:2px solid var(--border-light);border-bottom:2px solid var(--border-light)}.platform-description-section h3{margin-top:0;margin-bottom:30px;color:var(--dark-text);font-size:1.8rem;font-weight:700;padding-bottom:15px}.platform-description-box{display:flex;gap:40px;margin-bottom:30px}.description-column{flex:1;min-width:0}.description-block{background:var(--white);padding:25px;border-radius:var(--border-radius-md);border:1px solid var(--border-light);box-shadow:0 5px 15px #00000008;height:100%;transition:all var(--transition-medium)}.description-block:hover{box-shadow:0 8px 25px #00000014;transform:translateY(-3px);border-color:var(--primary-blue-light)}.description-block h4{color:var(--primary-blue);font-size:1.2rem;font-weight:600;margin-bottom:15px;line-height:1.4}.description-block p{font-size:15px;line-height:1.6;color:var(--medium-text);margin-bottom:15px}.description-block p:last-child{margin-bottom:0}.platform-continued{margin-top:40px;padding-top:30px;border-top:1px dashed var(--border-light)}.platform-continued p{font-size:16px;line-height:1.7;color:var(--medium-text);margin-bottom:20px}.cta-box{background:linear-gradient(135deg,#15c0da,#fff 120%);color:var(--white);padding:40px;border-radius:var(--border-radius-lg);text-align:center;margin-top:50px;position:relative;overflow:hidden;box-shadow:0 10px 40px var(--shadow-medium)}.cta-box h3{color:var(--white);margin-bottom:15px;font-size:1.8rem;font-weight:700;position:relative;z-index:1}.cta-box p{color:#ffffffe6;margin-bottom:30px;font-size:1.1rem;position:relative;z-index:1}.cta-box .btn-large{background:var(--white);color:var(--primary-blue);font-size:16px;font-weight:600;padding:16px 35px;border-radius:var(--border-radius-md)}.cta-box .btn-large:hover{background:var(--light-bg)}.testimonials-section{background-color:#fff}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;margin-top:50px}.testimonial-card{background:var(--white);padding:35px 30px;border-radius:var(--border-radius-lg);box-shadow:0 8px 30px #0000000d;border:1px solid var(--border-light);transition:all var(--transition-medium);position:relative}.testimonial-card:before{content:'"';position:absolute;top:20px;right:20px;font-size:60px;color:var(--primary-blue-light);font-family:Georgia,serif;line-height:1;opacity:.3}.testimonial-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px var(--shadow-medium);border-color:var(--primary-blue-light)}.testimonial-content{margin-bottom:25px;position:relative;z-index:1}.testimonial-content p{font-style:italic;color:var(--medium-text);line-height:1.7;font-size:15px;margin-bottom:0}.testimonial-author{display:flex;align-items:center;gap:15px;padding-top:20px;border-top:1px solid var(--border-light)}.author-avatar{width:50px;height:50px;background:var(--gradient-primary);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;flex-shrink:0}.author-info h4{margin-bottom:5px;color:var(--dark-text);font-size:1.1rem;font-weight:600}.author-info p{margin-bottom:0;color:var(--light-text);font-size:14px}.faq-section{background-color:var(--light-bg)}.faq-list{max-width:800px;margin:50px auto 0}.faq-item{margin-bottom:15px;border:1px solid var(--border-light);border-radius:var(--border-radius-md);overflow:hidden;transition:all var(--transition-medium);background:var(--white)}.faq-item.open{border-color:var(--primary-blue);box-shadow:0 8px 25px var(--shadow-light)}.faq-question{display:flex;justify-content:space-between;align-items:center;padding:22px 30px;background:var(--white);cursor:pointer;transition:background-color var(--transition-fast)}.faq-question:hover{background:var(--primary-blue-light)}.faq-question h3{margin:0;font-size:1.1rem;color:var(--dark-text);font-weight:600;line-height:1.4;flex:1;padding-right:20px}.faq-toggle{color:var(--primary-blue);font-size:14px;transition:transform var(--transition-medium);flex-shrink:0}.faq-item.open .faq-toggle{transform:rotate(180deg)}.faq-answer{padding:0 30px;max-height:0;overflow:hidden;transition:max-height .4s ease,padding var(--transition-medium)}.faq-item.open .faq-answer{max-height:1000px;padding:0 30px 25px}.faq-answer p{margin:0;color:var(--medium-text);line-height:1.7;font-size:15px}.ready-to-book-section{background:linear-gradient(135deg,#15c0da,#fff 120%);color:var(--white);text-align:center;padding:20px 0;position:relative;overflow:hidden}.ready-to-book-content{max-width:900px;margin:0 auto;padding:0 20px}.ready-to-book-content h2{font-size:2.5rem;font-weight:700;margin-bottom:40px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.trust-badges-row{display:flex;justify-content:center;gap:40px;margin-bottom:40px;flex-wrap:wrap}.trust-badge-item{display:flex;align-items:center;gap:15px;background:#ffffff1a;padding:20px 25px;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:all .3s ease;min-width:250px;text-align:left}.trust-badge-item i{font-size:2.2rem;color:#fff;background:#ffffff26;padding:20px;border-radius:50%;width:70px;height:70px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.trust-badge-text{display:flex;flex-direction:column}.trust-badge-text strong{font-size:1.1rem;font-weight:700;color:#fff;line-height:1.2;margin-bottom:5px}.trust-badge-text span{font-size:.95rem;color:#ffffffe6;line-height:1.2}.ready-to-book-section .btn-primary{background:#fff;color:#15c0da;font-size:1.1rem;font-weight:700;padding:18px 45px;border-radius:10px;box-shadow:0 8px 25px #00000026;display:inline-flex;align-items:center;gap:12px}.ready-to-book-section .btn-primary:hover{background:#f8f9fa}.booking-modal{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}}.modal-content{background:var(--white);border-radius:var(--border-radius-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;animation:modalSlideIn .4s ease;box-shadow:0 25px 50px #00000040}.modal-content.bm-modal{max-width:560px;overflow:hidden;max-height:90vh}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:25px 30px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;background:var(--gradient-primary);color:var(--white)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--white)}.modal-close{background:#fff3;border:none;font-size:20px;color:var(--white);cursor:pointer;padding:8px;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-step{padding:30px}.modal-step h3{margin-bottom:25px;color:var(--dark-text);font-size:1.3rem;font-weight:600;padding-bottom:10px;border-bottom:2px solid var(--primary-blue-light)}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--medium-text);font-size:14px}.form-group input,.form-group select{width:100%;padding:12px 15px;border:2px solid var(--border-light);border-radius:var(--border-radius-sm);font-size:15px;transition:all var(--transition-fast);background:var(--white);color:var(--dark-text)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px var(--primary-blue-light)}.form-group input::placeholder{color:var(--light-text)}.radio-group{display:flex;gap:15px}.radio-option{display:flex;align-items:center;gap:12px;cursor:pointer;flex:1;padding:20px;border:2px solid var(--border-light);border-radius:var(--border-radius-sm);transition:all var(--transition-medium);background:var(--light-bg)}.radio-option:hover{border-color:var(--primary-blue);background:var(--primary-blue-light)}.radio-option input[type=radio]{width:auto;margin:0}.radio-option span{color:var(--medium-text);font-weight:500;display:flex;align-items:center;gap:8px}.radio-option span i{color:var(--primary-blue);font-size:18px}.price-summary{background:var(--primary-blue-light);padding:25px;border-radius:var(--border-radius-sm);margin-top:30px;border:2px solid var(--primary-blue)}.price-summary p{margin-bottom:10px;color:var(--dark-text);font-size:15px;display:flex;justify-content:space-between;align-items:center}.price-summary p strong{font-size:1.8rem;color:var(--primary-blue)}.price-summary .note{font-size:13px;color:var(--medium-text);margin-top:15px;font-style:italic;display:flex;align-items:flex-start;gap:8px}.price-summary .note i{color:var(--primary-blue);margin-top:2px;flex-shrink:0}.modal-actions{padding:25px 30px;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:15px;background:var(--light-bg);border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg)}button,a,input,select,.faq-question{-webkit-tap-highlight-color:rgba(0,0,0,.1);min-height:44px}html{-webkit-text-size-adjust:100%}body.modal-open{overflow:hidden}@media(max-width:1024px){.container{padding:0 32px}.benefits-grid,.testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.trust-badges:before{font-size:.85rem;padding:0 15px;top:-10px}}@media(max-width:768px){.dermatologist-hero{padding:20px 0 35px}.dermatologist-hero h1{font-size:2.2rem}.dermatologist-hero h2{font-size:1.3rem}.section{padding:60px 0}.section-title{font-size:2rem}.ready-to-book-content h2{font-size:2rem;margin-bottom:30px;padding:0 10px}.platform-description-section{margin:40px 0;padding:20px 0}.platform-description-section h3{font-size:1.6rem;margin-bottom:25px}.platform-description-box{flex-direction:column;gap:25px}.description-column{width:100%}.description-block{padding:20px}.description-block h4{font-size:1.1rem}.platform-continued{margin-top:30px;padding-top:20px}.trust-badges:before{font-size:.8rem;padding:0 12px;white-space:normal;max-width:80%;text-align:center;line-height:1.3;top:-8px}.ready-to-book-section{padding:20px 0}.trust-badges-row{flex-direction:column;align-items:center;gap:15px;margin-bottom:30px}.trust-badge-item{width:100%;max-width:350px;min-width:auto}.ready-to-book-section .btn-primary{padding:16px 35px;font-size:1rem}.booking-modal{padding:20px 10px 10px;align-items:flex-start}.modal-content{max-width:100%;max-height:95vh;margin:0 auto;border-radius:16px 16px 0 0;animation:modalSlideUp .3s ease}@keyframes modalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{padding:20px;position:sticky;top:0;z-index:10}.modal-step{padding:20px}.modal-step h3{font-size:1.2rem;margin-bottom:20px}.form-group{margin-bottom:16px}.form-group label{font-size:14px;margin-bottom:6px}.form-group input,.form-group select{padding:14px 12px;font-size:16px;border-radius:10px}.radio-group{flex-direction:column;gap:10px}.radio-option{padding:16px;width:100%}.price-summary{padding:20px;margin-top:20px}.price-summary p strong{font-size:1.5rem}.modal-actions{padding:20px;position:sticky;bottom:0;background:var(--white);border-top:1px solid var(--border-light);gap:12px}.btn{padding:14px 20px;min-width:auto;width:100%;font-size:16px}input[type=text],input[type=email],input[type=tel],input[type=date],select{min-height:48px}}@media(max-width:576px){.container{padding:0 20px}.dermatologist-hero h1{font-size:1.8rem}.dermatologist-hero h2{font-size:1.1rem}.section-title{font-size:1.7rem}.benefit-card,.testimonial-card,.cta-box{padding:30px 20px}.platform-description-section{margin:30px 0;padding:15px 0}.platform-description-section h3{font-size:1.4rem;margin-bottom:20px}.description-block{padding:18px}.description-block h4{font-size:1rem}.description-block p,.platform-continued p{font-size:14px}.trust-badges:before{font-size:.75rem;padding:0 10px;max-width:85%;white-space:normal;line-height:1.2;top:-6px}.ready-to-book-section{padding:20px 0}.ready-to-book-content h2{font-size:1.8rem}.trust-badge-item{max-width:300px;padding:15px}.trust-badge-item i{font-size:1.8rem;padding:15px;width:60px;height:60px}.trust-badge-text strong{font-size:1rem}.trust-badge-text span{font-size:.9rem}.booking-modal{padding:0}.modal-content{border-radius:0;height:100vh;max-height:100vh}.modal-header h2{font-size:1.3rem}.modal-step{padding:16px}.modal-step h3{font-size:1.1rem}.form-group input,.form-group select{padding:16px 12px}.price-summary{padding:16px}.price-summary p{font-size:14px}.modal-actions{padding:16px;flex-direction:column}input[type=date]::-webkit-calendar-picker-indicator{padding:0;margin-left:10px}}@media(max-width:400px){.trust-badges:before{font-size:.7rem;padding:0 8px;max-width:90%;white-space:normal;line-height:1.1;top:-5px}.ready-to-book-content h2{font-size:1.6rem}.trust-badge-item{max-width:280px}.ready-to-book-section .btn-primary{width:90%;justify-content:center;padding:14px 25px}}@media(max-width:320px){.trust-badges:before{display:none}.trust-badges{padding-top:20px;border-top:none}}@supports (-webkit-touch-callout: none){.modal-content{max-height:-webkit-fill-available}input,select{font-size:16px!important}}@media(hover:none)and (pointer:coarse){.radio-option:active{background:var(--primary-blue-light);border-color:var(--primary-blue)}.btn:active{transform:scale(.98)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.dermatologist-hero .btn-large:hover,.benefit-card:hover,.testimonial-card:hover,.badge:hover{transform:none}}@media print{.dermatologist-hero .btn-large,.ready-to-book-section .btn-primary,.booking-modal{display:none!important}body{color:#000;background:#fff}a{color:#000;text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}}.appointment-booked-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.appointment-booked-modal-content{background:#fff;padding:20px;border-radius:8px;text-align:center;justify-items:center}.appointment-booked-modal-button{margin-top:15px;padding:10px 15px;background-color:#50cada;color:#fff;border:none;border-radius:5px;cursor:pointer}.appointment-booked-modal-button:hover{background-color:#3a929e}.appointment-booked-link{display:flex;flex-direction:column;row-gap:20px;color:#50cada!important;background-color:#f0f8ff;align-items:center;place-self:center;transition:.3s;border:1px solid #50cada;margin:5px;border-radius:8px;padding:8px;width:-webkit-fill-available}.appointment-booked-link:hover{text-decoration:none;color:#fff!important;background-color:#50cada}.appointment-calendar-buttons a:hover{text-decoration:none!important}.appointment-booked-modal-content h2{color:#50cada}.modal-overlay{position:fixed;inset:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:9999;pointer-events:auto;animation:fadeIn .3s ease-out}.modal-content{background:linear-gradient(135deg,#fff,#f8fafc);padding:2.5rem;border-radius:20px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 1px #ffffff0d;width:90%;max-width:420px;position:relative;z-index:10000;pointer-events:auto;margin:auto;transform:translateY(0);opacity:1;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;max-height:90vh;overflow-y:auto;text-align:center;border:1px solid rgba(255,255,255,.2)}.modal-content.hidden{opacity:0;transform:translateY(-20px) scale(.95)}.modal-close{position:absolute;top:1rem;right:1rem;border:none;background:#0000001a;color:#ff4417de;font-size:1.5rem;cursor:pointer;z-index:10001;padding:5px 10px 10px;line-height:1;pointer-events:auto;border-radius:50%;width:2.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close:hover{background:#ff4417de;color:#fff;transform:scale(1.1)}.formhead{text-align:center;margin-bottom:2rem;background:linear-gradient(135deg,#50cada,#007a8d);width:fit-content;color:#fff;padding:.75rem 1.5rem;border-radius:15px;font-size:1.25rem;font-weight:600;box-shadow:0 4px 15px #50cada4d;letter-spacing:.025em}.form-group{margin-bottom:1.5rem;position:relative;width:100%;text-align:left}.form-group label{font-weight:600;margin-bottom:.5rem;display:block;color:#374151;font-size:.875rem;letter-spacing:.025em}.form-group input,.form-group select{width:100%;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;background:#fff;box-sizing:border-box;transition:all .2s ease;font-family:inherit;margin-bottom:0;margin-left:0}.form-group input:focus,.form-group select:focus{outline:none;border-color:#50cada;box-shadow:0 0 0 3px #50cada1a;transform:translateY(-1px)}.form-group input:hover,.form-group select:hover{border-color:#d1d5db}.country-select{width:100%;padding:.875rem 2.5rem .875rem 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;background:#fff;cursor:pointer;transition:all .2s ease;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;box-sizing:border-box;margin-bottom:0}.country-select:focus{outline:none;border-color:#50cada;box-shadow:0 0 0 3px #50cada1a}.login-submit-button{width:100%;padding:.875rem 1.5rem;border:none;border-radius:12px;background:linear-gradient(135deg,#50cada,#007a8d);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1.5rem;box-shadow:0 4px 15px #50cada4d;letter-spacing:.025em}.login-submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #50cada66}.login-submit-button:active:not(:disabled){transform:translateY(0)}.login-submit-button:disabled{background:#d1d5db;cursor:not-allowed;transform:none;box-shadow:none}.modal-links{margin-top:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.modal-link{color:#50cada;text-align:center;text-decoration:none;cursor:pointer;transition:all .2s ease;background:none;border:none;font-size:.875rem;font-weight:500;padding:.5rem 1rem;border-radius:8px}.modal-link:hover{color:#007a8d;background:#50cada1a;transform:translateY(-1px)}.back-button{font-size:.875rem;padding:.5rem 1rem;font-weight:500}.google-login-container{margin-top:1.5rem;display:flex;justify-content:center;width:100%;padding:.5rem}.password-validation{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;padding:1rem;background:#f8fafc;border-radius:10px;border:1px solid #e5e7eb}.password-validation span{font-size:.75rem;padding:.25rem .5rem;border-radius:6px;background:#fffc;font-weight:500;display:flex;align-items:center;gap:.5rem}.password-validation span:before{content:"✓";font-weight:700}.password-strength-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;margin-top:.75rem;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0000001a}.password-strength-fill{height:100%;border-radius:4px;transition:all .3s ease;box-shadow:0 1px 3px #0003}.error-message{text-align:center;color:#dc2626;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:12px;padding:1rem;margin:1rem 0;box-shadow:0 2px 8px #dc26261a}.error-message p{margin:0 0 1rem;font-size:.875rem;font-weight:500}.otp-email-info{font-size:.875rem;color:#6b7280;margin-bottom:1rem;text-align:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:.75rem 1rem;border-radius:10px;border:1px solid #e2e8f0;font-weight:500}.password-input-wrapper{position:relative}.eye-button{position:absolute!important;right:.75rem!important;top:50%!important;transform:translateY(-50%)!important;background:none!important;border:none!important;cursor:pointer!important;color:#9ca3af!important;padding:.5rem!important;border-radius:6px!important;transition:all .2s ease!important}.eye-button:hover{color:#50cada!important;background:#50cada1a!important}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content{animation:slideIn .3s ease-out}@media screen and (max-width:768px){.modal-content{width:95%;margin:1rem;padding:2rem;max-height:95vh}.formhead{font-size:1.125rem;padding:.625rem 1.25rem}.form-group input,.form-group select{font-size:16px;padding:.75rem .875rem}.password-validation{font-size:.7rem;padding:.75rem}.login-submit-button{padding:.75rem 1.25rem;font-size:.875rem}}@media screen and (max-width:480px){.modal-content{width:98%;padding:1.5rem;border-radius:16px}.formhead{font-size:1rem;padding:.5rem 1rem}.form-group{margin-bottom:1.25rem}.form-group input,.form-group select{width:100%;font-size:16px;padding:.75rem .875rem}.login-submit-button{padding:.75rem 1rem;font-size:.875rem}.modal-close{top:.75rem;right:.75rem;width:2rem;height:2rem;font-size:1.25rem}}.modal-error-message{color:#d32f2f;background:#fff0f0;border:1.5px solid #f8bbbb;border-radius:8px;padding:10px 16px;margin:12px 0 8px;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:500;letter-spacing:.01em;box-shadow:0 2px 8px #f8bbbb33;text-align:left}.spm-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172aa6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:spmFadeIn .2s ease-out}@keyframes spmFadeIn{0%{opacity:0}to{opacity:1}}.spm-modal{display:flex;width:100%;max-width:860px;max-height:calc(100vh - 32px);border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px #0000000f,0 8px 24px #00000026,0 32px 64px #0000002e;animation:spmSlideUp .25s cubic-bezier(.16,1,.3,1);background:#fff;margin-top:10vh}@keyframes spmSlideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.spm-embedded{display:contents}.spm-modal--embedded{max-width:100%;max-height:none;border-radius:0;box-shadow:none;animation:none;margin-top:0;overflow:visible}.spm-modal--loading,.spm-modal--success{justify-content:center}.spm-left{flex:0 0 320px;background:#0a2540;color:#fff;display:flex;flex-direction:column;padding:20px 10px 10px;overflow-y:auto}.spm-summary-toggle{display:none}.spm-left__body{display:flex;flex-direction:column;gap:28px;flex:1}.spm-business{display:flex;align-items:center;gap:14px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.12)}.spm-business__avatar{width:48px;height:48px;border-radius:12px;background:#ffffff1f;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.spm-business__name{margin:0 0 2px;font-size:1rem;font-weight:700;color:#fff;letter-spacing:-.01em}.spm-business__tagline{margin:0;font-size:.78rem;color:#ffffff8c}.spm-line-items{display:flex;flex-direction:column;gap:10px}.spm-line-item{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.spm-line-item__label{color:#ffffffbf;display:flex;align-items:center;gap:6px}.spm-line-item__value{color:#fff;font-weight:600}.spm-line-item__original{color:#fff6;text-decoration:line-through;font-size:.82rem}.spm-line-item--discount .spm-line-item__label{color:#6ee7b7;font-size:.82rem}.spm-line-item__discount{color:#6ee7b7;font-weight:600}.spm-divider{height:1px;background:#ffffff1f;margin:4px 0}.spm-line-item--total{padding-top:4px}.spm-line-item--total .spm-line-item__label{color:#ffffffe6;font-weight:600;font-size:.95rem}.spm-line-item__total{color:#fff;font-weight:800;font-size:1.3rem;letter-spacing:-.02em}.spm-tag-icon{font-size:.7rem;opacity:.7}.spm-refund{background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:16px}.spm-refund__header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.spm-refund__icon{color:#34d399;font-size:1rem;flex-shrink:0}.spm-refund__title{font-size:.88rem;font-weight:700;color:#fff}.spm-refund__text{margin:0 0 10px;font-size:.78rem;color:#ffffffa6;line-height:1.6}.spm-refund__text strong{color:#6ee7b7;font-weight:700}.spm-refund__link{font-size:.78rem;color:#67e8f9;text-decoration:none;font-weight:600;transition:color .15s}.spm-refund__link:hover{color:#a5f3fc;text-decoration:underline}.spm-secure-note{display:flex;align-items:center;gap:8px;font-size:.72rem;color:#fff6;margin-top:auto;padding-top:8px}.spm-secure-note__icon{font-size:.7rem;flex-shrink:0}.spm-right{flex:1;background:#fff;padding:40px 36px 32px;overflow-y:auto;position:relative;display:flex;flex-direction:column}.spm-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#94a3b8;font-size:16px;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;padding:0}.spm-close:hover{background:#f1f5f9;color:#1e293b}.spm-close:disabled{opacity:.4;cursor:not-allowed}.spm-right__title{margin:0 0 4px;font-size:1.35rem;font-weight:700;color:#1a1f36;letter-spacing:-.02em}.spm-right__subtitle{margin:0 0 28px;font-size:.85rem;color:#64748b}.spm-form{display:flex;flex-direction:column;gap:18px;flex:1}.spm-field-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spm-field{display:flex;flex-direction:column;gap:5px}.spm-label{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:#374151;letter-spacing:.01em;margin:0}.spm-label__icon{font-size:.75rem;color:#6b7c93}.spm-input{width:100%;padding:11px 13px;border:1.5px solid #d1d5db;border-radius:8px;font-size:.9rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1a1f36;background:#fff;transition:border-color .15s,box-shadow .15s;box-sizing:border-box;outline:none}.spm-input:focus{border-color:#00a3bb;box-shadow:0 0 0 3px #00a3bb26}.spm-input::placeholder{color:#9ca3af}.spm-input--valid{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.spm-input--error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.spm-card-element{border:1.5px solid #d1d5db;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s;overflow:hidden}.spm-card-element .StripeElement{padding:13px 13px 11px}.spm-card-element:focus-within{border-color:#00a3bb;box-shadow:0 0 0 3px #00a3bb26}.spm-card-element .StripeElement--invalid~.spm-card-brands,.spm-card-element:has(.StripeElement--invalid){border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.spm-card-brands{display:flex;align-items:center;gap:4px;padding:6px 13px 8px;border-top:1px solid #f1f5f9}.spm-brand-badge{font-size:.6rem;font-weight:800;letter-spacing:.04em;padding:2px 5px;border-radius:4px;color:#fff}.spm-brand-badge--visa{background:#1a1f71}.spm-brand-badge--mc{background:#eb001b}.spm-brand-badge--amex{background:#2e77bc}.spm-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.spm-checkbox input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.spm-checkbox__box{width:18px;height:18px;border:2px solid #d1d5db;border-radius:5px;background:#fff;flex-shrink:0;transition:background .15s,border-color .15s;position:relative}.spm-checkbox input:checked~.spm-checkbox__box{background:#00a3bb;border-color:#00a3bb}.spm-checkbox input:checked~.spm-checkbox__box:after{content:"";position:absolute;left:4px;top:1px;width:6px;height:10px;border:2px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}.spm-checkbox__label{display:flex;align-items:center;gap:6px;font-size:.82rem;color:#374151}.spm-checkbox__icon{color:#6b7c93;font-size:.75rem}.spm-saved{border:1.5px solid #e5e7eb;border-radius:10px;padding:14px}.spm-saved__list{display:flex;flex-direction:column;gap:8px;margin:10px 0 4px}.spm-saved__item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1.5px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.spm-saved__item:hover{border-color:#00a3bb;background:#f0fdfe}.spm-saved__item--selected{border-color:#00a3bb;background:#ecfeff;box-shadow:0 0 0 3px #00a3bb1f}.spm-saved__card-icon{color:#6b7c93;font-size:1.1rem;flex-shrink:0}.spm-saved__card-info{flex:1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spm-saved__brand{font-size:.82rem;font-weight:700;color:#1a1f36;text-transform:capitalize}.spm-saved__digits{font-size:.82rem;color:#475569;font-family:monospace}.spm-saved__expiry{font-size:.75rem;color:#94a3b8}.spm-saved__radio{flex-shrink:0}.spm-radio{width:18px;height:18px;border:2px solid #d1d5db;border-radius:50%;transition:border-color .15s,box-shadow .15s;position:relative}.spm-radio--checked{border-color:#00a3bb}.spm-radio--checked:after{content:"";position:absolute;inset:3px;border-radius:50%;background:#00a3bb}.spm-promo{display:flex;flex-direction:column;gap:8px}.spm-promo__toggle{align-self:flex-start}.spm-promo__row{display:flex;gap:8px;align-items:center}.spm-promo__input{flex:1;text-transform:uppercase;letter-spacing:.05em}.spm-promo__apply{padding:15px;background:#00a3bb;color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:700;font-family:sans-serif;cursor:pointer;white-space:nowrap;transition:background .15s;display:flex;align-items:center;justify-content:center;min-width:72px}.spm-promo__apply:hover:not(:disabled){background:#0092a8}.spm-promo__apply:disabled{opacity:.55;cursor:not-allowed}.spm-promo__clear{width:36px;height:36px;background:none;border:1.5px solid #e5e7eb;border-radius:8px;color:#94a3b8;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s,color .15s;flex-shrink:0}.spm-promo__clear:hover:not(:disabled){border-color:#ef4444;color:#ef4444;background:#fef2f2}.spm-alert{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:8px;font-size:.83rem;line-height:1.5}.spm-alert svg{flex-shrink:0;margin-top:2px;font-size:.85rem}.spm-alert--success{background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.spm-alert--success svg{color:#10b981}.spm-alert--error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.spm-alert--error svg{color:#ef4444}.spm-alert--lg{padding:12px 16px;font-size:.87rem}.spm-link-btn{background:none;border:none;padding:0;font-family:inherit;font-size:.82rem;color:#00a3bb;cursor:pointer;display:inline-flex;align-items:center;gap:5px;text-decoration:none;font-weight:600;transition:color .15s}.spm-link-btn:hover{color:#0092a8;text-decoration:underline}.spm-pay-btn{width:100%;padding:14px 20px;background:linear-gradient(135deg,#00c4d4,#008fa0);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px 14px #00a3bb59;letter-spacing:-.01em;margin-top:4px}.spm-pay-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #00a3bb73}.spm-pay-btn:active:not(:disabled){transform:translateY(0)}.spm-pay-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.spm-pay-btn__lock{font-size:.85rem;opacity:.85}.spm-footer{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:4px;margin-top:auto}.spm-footer__powered{display:flex;align-items:center;gap:5px;font-size:.72rem;color:#94a3b8}.spm-footer__lock{font-size:.65rem}.spm-stripe-svg{width:36px;height:auto;vertical-align:middle;margin-top:-1px}.spm-footer__links{display:flex;align-items:center;gap:6px;font-size:.72rem}.spm-footer__links a{color:#94a3b8;cursor:pointer!important;text-decoration:none;transition:color .15s}.spm-footer__links a:hover{color:#00a3bb;text-decoration:underline}.spm-footer__sep{color:#cbd5e1}@keyframes spmSpin{to{transform:rotate(360deg)}}.spm-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,163,187,.25);border-top-color:#00a3bb;border-radius:50%;animation:spmSpin .7s linear infinite;flex-shrink:0}.spm-spinner--white{border-color:#ffffff4d;border-top-color:#fff}.spm-spinner--dark{border-color:#0000001a;border-top-color:#00a3bb;width:28px;height:28px;border-width:3px}.spm-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 32px;text-align:center}.spm-loading p{margin:0;font-size:.88rem;color:#64748b}.spm-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 36px;animation:spmSuccessIn .5s cubic-bezier(.16,1,.3,1)}@keyframes spmSuccessIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.spm-success__icon{font-size:56px;color:#10b981;margin-bottom:20px;animation:spmBounce .6s cubic-bezier(.36,.07,.19,.97)}@keyframes spmBounce{0%{transform:scale(0)}55%{transform:scale(1.15)}75%{transform:scale(.95)}to{transform:scale(1)}}.spm-success__title{margin:0 0 8px;font-size:1.5rem;font-weight:800;color:#1a1f36;letter-spacing:-.02em}.spm-success__subtitle{margin:0 0 28px;font-size:.9rem;color:#64748b}.spm-success__card{width:100%;max-width:340px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px 20px;display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.spm-success__row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.spm-success__row span:first-child{color:#64748b}.spm-success__row span:last-child{color:#1a1f36;font-weight:600}.spm-success__amount{color:#059669!important;font-weight:800!important;font-size:1.05rem!important}.spm-success__row--discount span{color:#10b981!important;font-size:.82rem}.spm-success__note{margin:0 0 12px;font-size:.78rem;color:#94a3b8}.spm-success__countdown{position:relative;width:52px;height:52px;display:flex;align-items:center;justify-content:center;margin:4px auto 6px}.spm-countdown-ring{position:absolute;inset:0;transform:rotate(-90deg);width:52px;height:52px}.spm-countdown-ring__bg{fill:none;stroke:#e2e8f0;stroke-width:3}.spm-countdown-ring__fill{fill:none;stroke:#10b981;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .9s linear}.spm-countdown-num{font-size:15px;font-weight:700;color:#1c1c1e;position:relative;z-index:1}.spm-success__closing-note{margin:0;font-size:.75rem;color:#94a3b8}.spm-success__closing-note strong{color:#64748b}@media(max-width:768px){.spm-overlay{padding:0;align-items:flex-end;height:fit-content}.spm-modal{flex-direction:column;max-width:100%;width:100%;max-height:96vh;border-radius:20px 20px 0 0;animation:spmSlideUpMobile .3s cubic-bezier(.16,1,.3,1)}@keyframes spmSlideUpMobile{0%{transform:translateY(100%);opacity:1}to{transform:translateY(0);opacity:1}}.spm-left{flex:0 0 auto;padding:0;background:#0a2540}.spm-summary-toggle{display:flex;align-items:center;width:100%;padding:16px 20px;background:none;border:none;color:#fff;cursor:pointer;font-family:inherit;font-size:.88rem;font-weight:600;gap:8px;border-bottom:1px solid rgba(255,255,255,.1)}.spm-summary-toggle__label{display:flex;align-items:center;gap:8px;flex:1}.spm-summary-toggle__icon{font-size:.85rem;color:#67e8f9}.spm-summary-toggle__amount{font-size:1rem;font-weight:800;margin-right:8px}.spm-summary-toggle__chevron{font-size:.75rem;opacity:.7}.spm-left__body{display:none;padding:20px 20px 16px;gap:20px}.spm-left__body--open{display:flex}.spm-right{padding:24px 20px 20px;flex:1;overflow-y:auto}.spm-right__title{font-size:1.15rem}.spm-right__subtitle{margin-bottom:20px}.spm-field-group{grid-template-columns:1fr;gap:14px}.spm-modal--loading,.spm-modal--success{border-radius:20px 20px 0 0;max-width:100%}}@media(max-width:480px){.spm-right{padding:20px 16px 16px}.spm-input,.spm-card-element .StripeElement{font-size:16px}.spm-pay-btn{padding:14px;font-size:.95rem}.spm-success{padding:36px 20px}.spm-success__icon{font-size:44px;margin-bottom:16px}.spm-success__title{font-size:1.25rem}}@media(hover:none)and (pointer:coarse){.spm-input,.spm-pay-btn,.spm-promo__apply,.spm-close,.spm-saved__item{min-height:44px}}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.spm-card-element .StripeElement{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.modal-direct-booking-overlay{position:fixed;inset:0;background:#0000007a;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}.modal-direct-booking-modal{background:#fff;border-radius:10px;width:min(900px,calc(100vw - 40px));max-height:min(90vh,860px);overflow:hidden;box-shadow:0 0 0 .5px #00000012,0 4px 20px #0000001a,0 24px 64px #00000029;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;margin-top:10vh}.modal-direct-booking-header{display:flex;justify-content:space-between;align-items:center;padding:10px 5px 5px 50px;border-bottom:1px solid rgba(0,0,0,.06);background:#fafafa;flex-shrink:0}.modal-direct-booking-title-section{flex:1;min-width:0}.modal-direct-booking-title{font-size:20px;font-weight:700;color:#1c1c1e;margin:0 0 3px;letter-spacing:-.4px}.modal-direct-booking-subtitle{font-size:13px;color:#8e8e93;margin:0;line-height:1.4}.modal-direct-booking-subtitle strong{color:#3a3a3c;font-weight:600}.modal-direct-booking-close-button{width:28px;height:28px;border-radius:50%;border:none;background:#ffbdbd;color:#6e6e73;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;flex-shrink:0;margin-right:16px;min-height:auto}.modal-direct-booking-close-button:hover{background:#76768038;color:#1c1c1e;transform:none}.modal-direct-booking-close-button svg{width:16px;height:16px}.dbm-type-toggle-row{display:flex;justify-content:center;align-items:center}.dbm-type-toggle{display:inline-flex;background:#e5e7eb;border-radius:999px;padding:3px;gap:2px}.dbm-type-btn{padding:6px 20px;border:none;border-radius:999px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s;background:transparent;color:#6b7280;white-space:nowrap;display:flex;align-items:center;gap:6px}.dbm-type-btn--active{background:#0891b2;color:#fff;box-shadow:0 1px 4px #0891b24d}.dbm-type-price{font-size:12px;font-weight:700;opacity:.85}.dbm-type-btn--active .dbm-type-price{opacity:1}.dbm-slot-locked{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f0fdf4;border:1px solid #86efac;border-radius:10px;font-size:13px;color:#166534;font-weight:500}.dbm-slot-locked-badge{margin-left:auto;font-size:11px;font-weight:600;background:#dcfce7;color:#15803d;padding:2px 8px;border-radius:999px;letter-spacing:.3px}.dbm-progress{display:flex;align-items:center;justify-content:center;padding:12px 24px 10px;background:#fafafa;border-bottom:1px solid rgba(0,0,0,.06);gap:0;flex-shrink:0}.dbm-progress-step{display:flex;flex-direction:column;align-items:center;gap:4px}.dbm-progress-circle{width:26px;height:26px;border-radius:50%;background:#e5e5ea;color:#8e8e93;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s}.dbm-progress-label{font-size:10px;font-weight:500;color:#8e8e93;white-space:nowrap;letter-spacing:.2px}.dbm-progress-step--active .dbm-progress-circle{background:linear-gradient(135deg,#50cada,#22c1d6);color:#fff;box-shadow:0 2px 8px #50cada59}.dbm-progress-step--active .dbm-progress-label{color:#0891b2;font-weight:700}.dbm-progress-step--done .dbm-progress-circle{background:#22c1d6;color:#fff}.dbm-progress-line{flex:1;height:2px;background:#e5e5ea;margin:0 8px 16px;min-width:40px}.modal-direct-booking-content{flex:1 1;padding:10px 15px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent;justify-items:center}.modal-direct-booking-content::-webkit-scrollbar{width:5px}.modal-direct-booking-content::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}.modal-direct-booking-step{display:flex;flex-direction:column;gap:2px;width:70%}.modal-direct-booking-step-header{text-align:left;margin-bottom:2px}.modal-direct-booking-step-title{font-size:14px;font-weight:700;color:#1c1c1e;margin:0 0 3px;letter-spacing:-.1px;text-transform:uppercase;font-size:11px;letter-spacing:.6px;color:#8e8e93}.modal-direct-booking-step-description{font-size:13px;color:#8e8e93;margin:0;line-height:1.4}.modal-direct-booking-type-cards{display:flex;gap:5px;justify-content:center}.modal-direct-booking-type-card{background:#fafafa;border:1.5px solid #e5e5ea;border-radius:10px;padding:5px;transition:all .18s ease;cursor:pointer;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.modal-direct-booking-type-card:hover{border-color:#50cada;box-shadow:0 4px 16px #50cada24;transform:translateY(-1px)}.modal-direct-booking-type-card.active{border-color:#22c1d6;background:#50cada0d;box-shadow:0 0 0 2px #50cada33,0 4px 16px #50cada1a;transform:translateY(-1px)}.modal-direct-booking-type-card.active .modal-direct-booking-type-card-header h4{color:#0891b2}.modal-direct-booking-type-card-header{display:flex;justify-content:space-between;align-items:center;gap:5px}.modal-direct-booking-type-card-header h4{font-size:14px;font-weight:700;color:#1c1c1e;margin:0;letter-spacing:-.1px}.modal-direct-booking-type-price{background:linear-gradient(135deg,#50cada,#22c1d6);color:#fff;padding:4px 11px;border-radius:20px;font-weight:700;font-size:14px;letter-spacing:-.2px}.modal-direct-booking-type-description{font-size:12.5px;color:#8e8e93;line-height:1.45;margin:0}.modal-direct-booking-type-select-btn{width:100%;padding:8px 16px;border:1.5px solid #e5e5ea;border-radius:9px;background:#fff;color:#6e6e73;font-weight:600;font-size:13px;cursor:pointer;transition:all .15s;font-family:inherit}.modal-direct-booking-type-select-btn:hover{border-color:#50cada;color:#0891b2}.modal-direct-booking-type-select-btn.selected{background:linear-gradient(135deg,#50cada,#22c1d6);border-color:transparent;color:#fff;box-shadow:0 2px 8px #50cada4d}.modal-direct-booking-date-time-selection{display:flex;flex-direction:column;gap:0}.modal-direct-booking-schedule-loading{display:flex;align-items:center;gap:10px;padding:14px 0;color:#8e8e93;font-size:14px}.modal-direct-booking-slot-selected{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f0fdf4;border:1px solid #86efac;border-radius:9px;font-size:13px;color:#166534;font-weight:500}.modal-direct-booking-alert-message{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff5f5;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-size:13px;font-weight:500}.modal-direct-booking-step-navigation{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:16px;border-top:1px solid rgba(0,0,0,.06);margin-top:4px}.modal-direct-booking-back-button{display:flex;align-items:center;gap:6px;padding:10px 20px;background:transparent;border:1.5px solid #e5e5ea;border-radius:10px;color:#6e6e73;font-weight:600;font-size:14px;cursor:pointer;transition:all .15s;font-family:inherit}.modal-direct-booking-back-button:hover{border-color:#c7c7cc;color:#3a3a3c;background:#f2f2f7}.modal-direct-booking-next-button,.modal-direct-booking-proceed-button{display:flex;align-items:center;gap:8px;padding:11px 28px;background:linear-gradient(135deg,#50cada,#22c1d6);border:none;border-radius:12px;color:#fff;font-weight:600;font-size:15px;cursor:pointer;transition:all .2s;box-shadow:0 2px 12px #50cada4d;font-family:inherit;letter-spacing:-.2px}.modal-direct-booking-next-button:hover,.modal-direct-booking-proceed-button:hover{transform:translateY(-1px);box-shadow:0 5px 20px #50cada66}.modal-direct-booking-proceed-button:disabled{background:#e5e5ea;color:#c7c7cc;cursor:not-allowed;transform:none;box-shadow:none}.loading-spinner{width:32px;height:32px;border:3px solid #e5e5ea;border-top-color:#50cada;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:840px){.modal-direct-booking-overlay{padding:0;align-items:flex-end}.modal-direct-booking-modal{width:100%;max-height:96dvh;border-radius:20px 20px 0 0;margin:0}.modal-direct-booking-header{padding:18px 20px 14px}.modal-direct-booking-content{padding:18px 20px}}@media(max-width:580px){.modal-direct-booking-type-cards{grid-template-columns:1fr;gap:3px}.modal-direct-booking-step-navigation{flex-direction:column-reverse}.modal-direct-booking-back-button,.modal-direct-booking-next-button,.modal-direct-booking-proceed-button{width:100%;justify-content:center}.modal-direct-booking-title{font-size:17px}}@media(hover:none)and (pointer:coarse){.modal-direct-booking-type-select-btn,.modal-direct-booking-proceed-button{min-height:48px}}.book-appointment-modal-overlay{position:fixed;inset:0;background:#0000007a;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}.book-appointment-modal-content{background:#fff;border-radius:20px;width:780px;max-width:calc(90vw - 40px);max-height:min(85vh);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 0 0 .5px #00000012,0 4px 20px #0000001a,0 24px 64px #00000029;position:relative;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;margin-top:9vh}.modal-close-btn{position:absolute;top:13px;right:13px;z-index:20;width:28px;height:28px;border-radius:50%;border:none;background:#ffbdbd;color:#6e6e73;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;font-family:inherit;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;min-height:auto}.modal-close-btn:hover{background:#76768038;color:#1c1c1e;transform:none;box-shadow:none}.bam-summary-bar{display:flex;align-items:center;padding:12px 24px;background:#f2f2f7;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.bam-summary-item{display:flex;flex-direction:column;gap:2px;padding:0 20px;flex:1;min-width:0}.bam-summary-item:first-child{padding-left:0}.bam-summary-label{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:#8e8e93;font-weight:600}.bam-summary-value{font-size:13px;font-weight:600;color:#1c1c1e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bam-summary-fee{color:#0891b2;font-size:15px;font-weight:700}.bam-summary-divider{width:1px;height:28px;background:#00000017;flex-shrink:0}.bam-type-toggle-row{display:flex;justify-content:center;align-items:center;padding:10px 24px;border-bottom:1px solid #f2f2f7;background:#fafafa;flex-shrink:0}.bam-type-toggle{display:inline-flex;background:#e5e7eb;border-radius:999px;padding:3px;gap:2px}.bam-type-btn{padding:6px 22px;border:none;border-radius:999px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s;background:transparent;color:#6b7280;white-space:nowrap}.bam-type-btn--active{background:#0891b2;color:#fff;box-shadow:0 1px 4px #0891b24d}.bam-progress{display:flex;align-items:flex-start;padding:5px 15px;background:#fff;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.bam-progress-step{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0;min-width:72px}.bam-progress-circle{width:28px;height:28px;border-radius:50%;background:#e5e5ea;color:#8e8e93;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .25s,color .25s,box-shadow .25s;flex-shrink:0}.bam-progress-step--active .bam-progress-circle{background:linear-gradient(135deg,#50cada,#22c1d6);color:#fff;box-shadow:0 2px 10px #50cada61}.bam-progress-step--done .bam-progress-circle{background:#10b981;color:#fff}.bam-progress-label{font-size:10px;font-weight:600;color:#c7c7cc;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;transition:color .25s}.bam-progress-step--active .bam-progress-label{color:#22c1d6}.bam-progress-step--done .bam-progress-label{color:#10b981}.bam-progress-line{flex:1;height:2px;background:#e5e5ea;border-radius:1px;margin-top:13px;transition:background .35s}.bam-progress-line--done{background:#10b981}.bam-body{flex:1;overflow-y:auto;padding:5px 15px;display:flex;flex-direction:column;gap:5px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}.bam-body::-webkit-scrollbar{width:5px}.bam-body::-webkit-scrollbar-track{background:transparent}.bam-body::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}.bam-section-header{padding:0;margin:0}.bam-section-header h3{font-size:20px;font-weight:700;color:#1c1c1e;margin:0 0 3px}.bam-section-header p{font-size:13px;color:#8e8e93;margin:0;line-height:1.4}.bam-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;position:relative}.form-field.full-width{grid-column:1 / -1}.form-field label{font-size:11px;font-weight:600;color:#8e8e93;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px;margin-top:0}.form-field input,.form-field select,.form-field textarea{width:100%;box-sizing:border-box;padding:10px 13px;border:1.5px solid #e5e5ea;border-radius:10px;font-size:14px;font-family:inherit;background:#fafafa;color:#1c1c1e;transition:border-color .15s,box-shadow .15s,background .15s;outline:none;margin-top:0;-webkit-appearance:none;appearance:none}.form-field input::placeholder,.form-field textarea::placeholder{color:#c7c7cc}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#50cada;background:#fff;box-shadow:0 0 0 3px #50cada24;transform:none}.form-field input.error,.form-field select.error,.form-field textarea.error{border-color:#ff3b30;background:#ff3b3008;box-shadow:0 0 0 3px #ff3b3014;animation:shake .3s ease}.form-field textarea{min-height:50px;resize:vertical}.form-field input[type=date]{cursor:pointer;width:100%;box-sizing:border-box}.form-field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;filter:invert(.4) sepia(1) saturate(5) hue-rotate(175deg)}.error-message{position:absolute;top:0;right:0;font-size:10px;font-weight:600;background:#ff3b30;color:#fff;padding:2px 7px;border-radius:4px;white-space:nowrap;z-index:10;animation:slideDown .2s ease;box-shadow:none}.bam-email-confirm{margin-top:8px;padding:10px 13px;background:#fffbeb;border:1px solid #fbbf24;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:nowrap}.bam-email-confirm-text{font-size:12.5px;color:#92400e;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bam-email-confirm-actions{display:flex;gap:7px;flex-shrink:0}.bam-email-confirm-yes{padding:5px 13px;background:#10b981;color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.bam-email-confirm-yes:hover{background:#059669}.bam-email-confirm-edit{padding:5px 11px;background:transparent;color:#92400e;border:1px solid #fbbf24;border-radius:7px;font-size:12px;cursor:pointer;font-family:inherit;transition:background .15s}.bam-email-confirm-edit:hover{background:#fef3c7}.bam-email-confirmed{display:flex;align-items:center;gap:5px;font-size:12px;color:#10b981;font-weight:600;margin-top:6px}.bam-why-verify{position:relative;display:inline-block;margin-top:6px}.bam-why-verify-trigger{font-size:11.5px;color:#8e8e93;cursor:default;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;-webkit-user-select:none;user-select:none}.bam-why-verify-popover{display:none;position:absolute;bottom:calc(100% + 8px);left:0;width:270px;background:#1c1c1e;color:#f2f2f7;border-radius:10px;padding:12px 14px;font-size:12.5px;line-height:1.5;box-shadow:0 8px 24px #0000003d;z-index:20;pointer-events:none}.bam-why-verify-popover strong{display:block;font-size:12px;font-weight:700;color:#fff;margin-bottom:5px;letter-spacing:.1px}.bam-why-verify-popover p{margin:0;color:#aeaeb2}.bam-why-verify:hover .bam-why-verify-popover{display:block}.bam-otp-wrapper{margin-top:10px;padding:14px 16px;background:#f0fdf4;border:1px solid #86efac;border-radius:10px;display:flex;flex-direction:column;gap:8px}.bam-otp-header{display:flex;align-items:center;gap:7px;color:#15803d;font-weight:700;font-size:13px}.bam-otp-desc{font-size:12.5px;color:#166534;margin:0;line-height:1.5}.bam-otp-input-row{display:flex;gap:8px;align-items:center}.bam-otp-input{flex:1;padding:9px 13px;border:1.5px solid #86efac;border-radius:8px;font-size:15px;font-family:inherit;letter-spacing:.15em;color:#1c1c1e;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;text-align:center}.bam-otp-input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b98126}.bam-otp-input.error{border-color:#ef4444}.bam-otp-verify-btn{padding:9px 18px;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,opacity .15s;white-space:nowrap;flex-shrink:0}.bam-otp-verify-btn:hover:not(:disabled){background:#059669}.bam-otp-verify-btn:disabled{opacity:.55;cursor:not-allowed}.bam-otp-error{font-size:12px;color:#ef4444;font-weight:500;margin-top:2px}.bam-health-section{border-top:1px solid #f2f2f7;padding-top:20px;display:flex;flex-direction:column;gap:12px}.bam-subsection-title{font-size:16px;font-weight:700;color:#1c1c1e;margin:0 0 2px;letter-spacing:-.2px}.bam-subsection-desc{font-size:13px;color:#8e8e93;margin:0}.body-chart-container{display:flex;flex-direction:column;align-items:center}.body-chart-container h4{font-size:11px;font-weight:600;color:#8e8e93;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;text-align:center}.chart-wrapper{position:relative;display:inline-block;cursor:crosshair;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000014}.charting-image{width:100%;height:auto;max-width:240px;border-radius:10px;display:block;margin:0 auto;image-rendering:-webkit-optimize-contrast}.body-point{position:absolute;width:22px;height:22px;background:#50cada;transform:translate(-50%,-50%);border-radius:50%;border:2px solid white;color:#fff;z-index:5;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #50cada66;transition:transform .2s}.body-point:hover{transform:translate(-50%,-50%) scale(1.1)}.body-chart-explanations{margin-top:4px}.body-chart-explanations h4{font-size:11px;font-weight:600;color:#8e8e93;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.bam-insurance-section{border-top:1px solid #f2f2f7;padding-top:16px}.bam-insurance-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 16px;background:#f2f2f7;border:1.5px solid #e5e5ea;border-radius:10px;font-size:13px;font-weight:500;color:#3a3a3c;cursor:pointer;transition:background .15s,border-color .15s;text-align:left;font-family:inherit;letter-spacing:0;text-transform:none}.bam-insurance-toggle:hover{background:#e8e8ed;border-color:#c7c7cc}.bam-insurance-toggle--saved{background:#f0fdf4;border-color:#86efac;color:#166534}.bam-insurance-toggle--saved:hover{background:#dcfce7}.bam-insurance-form{margin-top:12px;padding:16px;background:#f8f8fb;border-radius:10px;border:1px solid #e5e5ea}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.form-row:last-of-type{margin-bottom:0}.bam-insurance-form-actions{display:flex;gap:10px;margin-top:14px;justify-content:flex-end}.insurance-skip-button{padding:9px 18px;background:transparent;color:#6e6e73;border:1.5px solid #e5e5ea;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;min-height:auto;text-transform:none;letter-spacing:0}.insurance-skip-button:hover{border-color:#c7c7cc;color:#3a3a3c;background:#f2f2f7;transform:none;box-shadow:none}.insurance-save-button{padding:9px 20px;background:linear-gradient(135deg,#50cada,#22c1d6);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;min-height:auto;text-transform:none;letter-spacing:0;display:flex;align-items:center;justify-content:center;gap:6px}.insurance-save-button:hover{transform:translateY(-1px);box-shadow:0 3px 12px #50cada59}.insurance-save-button:disabled{background:#e5e5ea;color:#c7c7cc;cursor:not-allowed;opacity:1;transform:none;box-shadow:none}.bam-emergency-disclaimer{padding:10px 14px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;font-size:12px;color:#92400e;line-height:1.5}.terms-section{padding-top:0;border-top:none;margin-top:0}.terms-checkbox{display:flex;align-items:flex-start;gap:10px;color:#6e6e73}.terms-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#50cada;margin-top:2px;flex-shrink:0;cursor:pointer}.terms-checkbox label{font-size:12px;line-height:1.55;cursor:pointer;font-weight:400;color:#6e6e73;text-transform:none;letter-spacing:0;margin:0}.terms-checkbox a{color:#0891b2;text-decoration:none;font-weight:600}.terms-checkbox a:hover{text-decoration:underline}.step-actions{display:flex;align-items:center;gap:12px;padding:16px 28px;border-top:1px solid rgba(0,0,0,.06);background:#fafafa;flex-shrink:0;justify-content:unset}.bam-insurance-refund-note{flex:1;display:flex;align-items:center;gap:7px;font-size:12px;color:#6e6e73;line-height:1.45}.bam-insurance-refund-note svg{flex-shrink:0;color:#10b981}.bam-insurance-refund-note strong{color:#1c1c1e;font-weight:700}.back-button{padding:10px 22px;background:transparent;border:1.5px solid #e5e5ea;border-radius:10px;color:#6e6e73;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap;min-width:auto}.back-button:hover{border-color:#c7c7cc;color:#3a3a3c;background:#f2f2f7;transform:none;box-shadow:none}.proceed-button{flex:1;padding:12px 28px;background:linear-gradient(135deg,#50cada,#22c1d6);border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;box-shadow:0 2px 12px #50cada4d;display:flex;align-items:center;justify-content:center;gap:8px;max-width:none;width:auto;outline:none;position:relative;overflow:hidden;letter-spacing:-.2px}.proceed-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 20px #50cada66}.proceed-button:active:not(:disabled){transform:translateY(0)}.proceed-button:disabled{background:#e5e5ea;color:#c7c7cc;cursor:not-allowed;box-shadow:none;transform:none}.proceed-button:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);transform:translate(-100%);transition:transform .55s}.proceed-button:hover:not(:disabled):before{transform:translate(100%)}.modal-direct-booking-slot-selected{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;font-size:13px;color:#166534;margin-top:8px}.insurance-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1500;padding:20px}.insurance-modal-content{background:#fff;padding:0;border-radius:18px;max-width:580px;width:100%;max-height:85vh;overflow:hidden;box-shadow:0 20px 60px #00000026;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;border:none}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:840px){.book-appointment-modal-overlay{padding:0;align-items:flex-end}.book-appointment-modal-content{width:100%;max-width:100%;max-height:96dvh;border-radius:20px 20px 0 0;margin:0}.bam-body{padding:10px;gap:5px}.bam-form-grid{grid-template-columns:1fr}.step-actions{padding:14px 20px}.proceed-button{font-size:14px;padding:11px 20px}}@media(max-width:480px){.bam-summary-bar{padding:10px 16px;flex-wrap:wrap;gap:6px}.bam-summary-item{padding:0 10px}.bam-summary-divider{display:none}.bam-body{padding:12px;gap:5px}.bam-section-header h3{font-size:19px}.step-actions{padding:12px 16px}.bam-email-confirm{flex-wrap:wrap}.bam-email-confirm-text{white-space:normal}.form-row{grid-template-columns:1fr}}@media(hover:none)and (pointer:coarse){.form-field input,.form-field select,.form-field textarea{font-size:16px;padding:12px 13px}.proceed-button,.back-button{min-height:48px}.modal-close-btn{width:36px;height:36px}}@media(max-width:768px)and (orientation:landscape){.book-appointment-modal-content{max-height:80dvh;border-radius:12px 12px 0 0}.bam-body{gap:5px}}.modal-backdrop{position:fixed;inset:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:4000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s}.appointment-request-modal{background:#fff;border-radius:2.5vh;box-shadow:0 8px 40px #00a3bb22;padding:2.5vh 4vw 2vh 4vw;max-width:90vw;width:520px;text-align:center;animation:scaleIn .3s;max-height:95vh;overflow-y:auto;box-sizing:border-box;position:relative}.appointment-request-modal .modal-close-btn{background:#ffffffe6!important;color:#00a3bb!important;border:none!important;font-size:1.8rem!important;position:absolute!important;top:15px!important;right:15px!important;cursor:pointer!important;z-index:10!important;transition:all .3s ease!important;line-height:1!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;width:35px!important;height:35px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 2px 8px #0000001a!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;margin-top:0!important;padding:0!important}.appointment-request-modal .modal-close-btn:hover{color:#1a3c4f!important;background:#fff!important;box-shadow:0 4px 16px #00000026!important;transform:scale(1.1)!important}.appointment-request-modal h2{margin-top:0;color:#00a3bb;font-size:1.4rem;margin-bottom:.8vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.appointment-request-modal p{color:#444;font-size:.95rem;margin-bottom:1.5vh;line-height:1.4;font-family:Inter,sans-serif;text-align:justify}.appointment-request-modal form{display:flex;flex-direction:column;gap:1vh;margin-bottom:1.5vh;width:100%;box-sizing:border-box}.appointment-request-modal input,.appointment-request-modal textarea{padding:1vh 1.5vw;border:1px solid #b2ebf2;border-radius:1vh;font-size:.95rem;font-family:Inter,sans-serif;transition:border-color .3s ease;box-sizing:border-box}.appointment-request-modal input:focus,.appointment-request-modal textarea:focus{outline:none;border-color:#00a3bb;box-shadow:0 0 0 2px #00a3bb1a}.appointment-request-modal input:disabled,.appointment-request-modal textarea:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.appointment-request-modal textarea{min-height:60px;resize:vertical}.recaptcha-container{display:flex;justify-content:center;margin:.8vh 0}.appointment-request-modal button{background:#22c1d6;color:#fff;border:none;border-radius:25px;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600;padding:2vh 3vh;box-shadow:0 .3vh 2vh #00a3bb22;cursor:pointer;transition:background .2s;margin-top:.8vh}.appointment-request-modal button:hover:not(:disabled){background:#00a3bb}.appointment-request-modal button:disabled{background:#ccc;cursor:not-allowed;box-shadow:none}.submit-btn-disabled{background:#ccc!important;cursor:not-allowed!important;box-shadow:none!important}.status-message{margin-top:1.5vh;padding:.8vh 2vh;border-radius:1vh;font-size:.9rem;font-family:Inter,sans-serif}.status-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:768px){.appointment-request-modal{width:95vw;padding:3vh 3vw 2vh 3vw;max-height:95vh}.appointment-request-modal h2{font-size:1.3rem}.appointment-request-modal p{font-size:.9rem}.appointment-request-modal input,.appointment-request-modal textarea{font-size:.9rem;padding:1vh 1.2vw}.appointment-request-modal button{font-size:1rem;padding:1vh 2.5vh}}@media(max-width:480px){.appointment-request-modal{width:98vw;padding:2.5vh 2.5vw 2vh 2.5vw}.appointment-request-modal h2{font-size:1.2rem}.appointment-request-modal p{font-size:.85rem}.appointment-request-modal form{gap:1.2vh}.modal-close-btn-req{background:#ffffffe6!important;color:#50cada!important;border:none!important;font-size:1.8rem!important;position:absolute!important;top:16px!important;right:16px!important;cursor:pointer!important;z-index:10!important;transition:all .3s ease!important;line-height:1!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;width:40px!important;height:40px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 2px 8px #0000001a!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.modal-close-btn-req:hover{color:#1a3c4f!important;background:#fff!important;box-shadow:0 4px 16px #00000026!important;transform:scale(1.1)!important}}:root{--vt-calendar-primary: #00a3bb;--vt-calendar-primary-light: #50cada;--vt-calendar-primary-dark: #008a9e;--vt-calendar-secondary: #1a3c4f;--vt-calendar-accent: #e0f7fa;--vt-calendar-accent-light: #f0fdfd;--vt-calendar-background: #ffffff;--vt-calendar-text: #1a3c4f;--vt-calendar-text-light: #666;--vt-calendar-text-muted: #888;--vt-calendar-border: #e0f7fa;--vt-calendar-shadow: rgba(0, 163, 187, .1);--vt-calendar-shadow-hover: rgba(0, 163, 187, .2);--vt-calendar-space-xs: .25rem;--vt-calendar-space-sm: .5rem;--vt-calendar-space-md: .75rem;--vt-calendar-space-lg: 1rem;--vt-calendar-space-xl: 1.5rem;--vt-calendar-radius-sm: 4px;--vt-calendar-radius-md: 8px;--vt-calendar-radius-lg: 12px;--vt-calendar-radius-xl: 16px;--vt-calendar-transition: .2s ease;--vt-calendar-transition-slow: .3s ease}.vt-modern-calendar{background:var(--vt-calendar-background);border-radius:var(--vt-calendar-radius-xl);box-shadow:0 4px 20px var(--vt-calendar-shadow);border:1px solid var(--vt-calendar-border);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vt-calendar-controls{display:flex;align-items:center;justify-content:space-between;padding:var(--vt-calendar-space-lg) var(--vt-calendar-space-xl);background:linear-gradient(135deg,var(--vt-calendar-accent) 0%,var(--vt-calendar-accent-light) 100%);border-bottom:1px solid var(--vt-calendar-border)}.vt-calendar-navigation{display:flex;gap:var(--vt-calendar-space-sm)}.vt-nav-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--vt-calendar-background);border:1px solid var(--vt-calendar-border);border-radius:var(--vt-calendar-radius-md);color:var(--vt-calendar-text);cursor:pointer;transition:all var(--vt-calendar-transition);font-size:14px}.vt-nav-button:hover{background:var(--vt-calendar-primary);color:var(--vt-calendar-background);border-color:var(--vt-calendar-primary);transform:translateY(-1px);box-shadow:0 2px 8px var(--vt-calendar-shadow-hover)}.vt-nav-button:active{transform:translateY(0)}.vt-calendar-title{font-size:1.25rem;font-weight:600;color:var(--vt-calendar-text);text-align:center;flex:1;margin:0 var(--vt-calendar-space-xl)}.vt-calendar-view-modes{display:flex;gap:var(--vt-calendar-space-xs);background:var(--vt-calendar-background);border-radius:var(--vt-calendar-radius-md);padding:2px;border:1px solid var(--vt-calendar-border)}.vt-view-mode-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--vt-calendar-radius-sm);color:var(--vt-calendar-text-muted);cursor:pointer;transition:all var(--vt-calendar-transition);font-size:12px}.vt-view-mode-btn:hover{background:var(--vt-calendar-accent);color:var(--vt-calendar-text)}.vt-view-mode-btn.active{background:var(--vt-calendar-primary);color:var(--vt-calendar-background);box-shadow:0 2px 4px var(--vt-calendar-shadow)}.vt-calendar-content{position:relative}.vt-calendar-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:var(--vt-calendar-text-light)}.vt-loading-spinner{width:32px;height:32px;border:3px solid var(--vt-calendar-accent);border-top:3px solid var(--vt-calendar-primary);border-radius:50%;animation:vt-spin 1s linear infinite;margin-bottom:var(--vt-calendar-space-lg)}@keyframes vt-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vt-calendar-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:var(--vt-calendar-text-light);text-align:center;padding:var(--vt-calendar-space-xl)}.vt-calendar-error p{margin-bottom:var(--vt-calendar-space-lg);font-size:1rem}.vt-retry-button{padding:var(--vt-calendar-space-md) var(--vt-calendar-space-lg);background:var(--vt-calendar-primary);color:var(--vt-calendar-background);border:none;border-radius:var(--vt-calendar-radius-md);font-weight:600;cursor:pointer;transition:all var(--vt-calendar-transition)}.vt-retry-button:hover{background:var(--vt-calendar-primary-dark);transform:translateY(-1px);box-shadow:0 2px 8px var(--vt-calendar-shadow-hover)}.vt-calendar-month-view{height:100%}.vt-calendar-header{background:var(--vt-calendar-accent-light);border-bottom:1px solid var(--vt-calendar-border)}.vt-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--vt-calendar-accent-light)}.vt-calendar-weekday{padding:var(--vt-calendar-space-lg) var(--vt-calendar-space-sm);text-align:center;font-weight:600;font-size:.875rem;color:var(--vt-calendar-text);border-right:1px solid var(--vt-calendar-border)}.vt-calendar-weekday:last-child{border-right:none}.vt-calendar-body{height:350px;overflow-y:auto}.vt-calendar-week{display:grid;grid-template-columns:repeat(7,1fr);min-height:50px;border-bottom:1px solid var(--vt-calendar-border)}.vt-calendar-day{position:relative;padding:var(--vt-calendar-space-sm);border-right:1px solid var(--vt-calendar-border);border-bottom:1px solid var(--vt-calendar-border);cursor:pointer;transition:all var(--vt-calendar-transition);min-height:50px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.vt-calendar-day:last-child{border-right:none}.vt-calendar-day:hover{background:var(--vt-calendar-accent)}.vt-calendar-day.other-month{color:var(--vt-calendar-text-muted);background:#fafafa}.vt-calendar-day.today{background:var(--vt-calendar-accent);font-weight:600}.vt-calendar-day.today .vt-day-number{color:var(--vt-calendar-primary);font-weight:700}.vt-calendar-day.selected{background:var(--vt-calendar-primary);color:var(--vt-calendar-background)}.vt-calendar-day.selected .vt-day-number{color:var(--vt-calendar-background);font-weight:700}.vt-calendar-day.has-slots{position:relative}.vt-day-number{font-size:.875rem;font-weight:500;margin-bottom:var(--vt-calendar-space-xs)}.vt-day-indicator{position:absolute;bottom:0;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:2px}.vt-slot-dot{width:6px;height:6px;background:var(--vt-calendar-primary);border-radius:50%;margin:0 auto}.vt-slot-count{font-size:.6rem;font-weight:600;color:var(--vt-calendar-primary);background:var(--vt-calendar-background);border-radius:8px;padding:1px 4px;min-width:12px;text-align:center;line-height:1}.vt-calendar-day.selected .vt-slot-dot{background:var(--vt-calendar-background)}.vt-calendar-day.selected .vt-slot-count{background:var(--vt-calendar-primary);color:var(--vt-calendar-background)}.vt-slots-full-view{height:100%;background:var(--vt-calendar-background);border-radius:var(--vt-calendar-radius-md);animation:vt-slideInSlots .3s ease-out}@keyframes vt-slideInSlots{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.vt-slots-full-view .vt-slots-header{background:linear-gradient(135deg,var(--vt-calendar-primary) 0%,var(--vt-calendar-primary-dark) 100%);color:var(--vt-calendar-background);padding:var(--vt-calendar-space-lg) var(--vt-calendar-space-xl);border-bottom:1px solid var(--vt-calendar-border)}.vt-slots-header-content{display:flex;align-items:center;gap:var(--vt-calendar-space-lg)}.vt-back-to-calendar{display:flex;align-items:center;gap:var(--vt-calendar-space-sm);background:#fff3;color:var(--vt-calendar-background);border:1px solid rgba(255,255,255,.3);border-radius:var(--vt-calendar-radius-md);padding:var(--vt-calendar-space-sm) var(--vt-calendar-space-md);cursor:pointer;transition:all var(--vt-calendar-transition);font-weight:600;font-size:.875rem}.vt-back-to-calendar:hover{background:#ffffff4d;transform:translate(-2px)}.vt-slots-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--vt-calendar-background)!important}.vt-slots-content{padding:var(--vt-calendar-space-xl);height:calc(100% - 80px);overflow-y:auto}.vt-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:0;max-width:100%;padding:var(--vt-calendar-space-md) 0;border:1px solid var(--vt-calendar-border);border-radius:var(--vt-calendar-radius-md)}.vt-slot-card{position:relative;padding:var(--vt-calendar-space-sm);border:1px solid #00a3bb!important;cursor:pointer;transition:all var(--vt-calendar-transition);min-height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--vt-calendar-background);margin:2px}.vt-slot-card:nth-child(7n){border-right:none}.vt-slot-card:hover{background:var(--vt-calendar-accent)}.vt-slot-card.available{position:relative}.vt-slot-card.available:hover{background:var(--vt-calendar-primary);color:var(--vt-calendar-background)}.vt-slot-card.available:hover .vt-slot-time{color:var(--vt-calendar-background)}.vt-slot-card.booked{background:#fafafa;color:var(--vt-calendar-text-muted);cursor:not-allowed;opacity:.6}.vt-slot-card .vt-slot-time{font-size:.875rem;font-weight:600;color:var(--vt-calendar-text);transition:all var(--vt-calendar-transition)}.vt-slot-card.available .vt-slot-time{color:var(--vt-calendar-primary)}.vt-slot-card.booked .vt-slot-time{color:var(--vt-calendar-text-muted);opacity:.5}.vt-slot-card.selected{background:var(--vt-calendar-primary);color:var(--vt-calendar-background);border-color:var(--vt-calendar-primary);box-shadow:0 2px 8px #00a3bb4d;transform:scale(1.05);z-index:10}.vt-slot-card.selected .vt-slot-time{color:var(--vt-calendar-background);font-weight:700}.vt-slot-card.selected:hover{background:var(--vt-calendar-primary);color:var(--vt-calendar-background);transform:scale(1.05)}.vt-calendar-day.expanded,.vt-calendar-day-column.expanded{background:var(--vt-calendar-primary);color:var(--vt-calendar-background);transform:scale(1.05);z-index:10;box-shadow:0 4px 20px var(--vt-calendar-shadow-hover)}.vt-calendar-week-view{height:100%}.vt-calendar-week-grid{display:grid;grid-template-columns:repeat(7,1fr);height:350px}.vt-calendar-day-column{position:relative;padding:var(--vt-calendar-space-sm);border-right:1px solid #00a3bb!important;cursor:pointer;transition:all var(--vt-calendar-transition);display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.vt-calendar-day-column:last-child{border-right:none}.vt-calendar-day-column:hover,.vt-calendar-day-column.today{background:var(--vt-calendar-accent)}.vt-calendar-day-column.selected{background:var(--vt-calendar-primary);color:var(--vt-calendar-background)}.vt-day-slots-preview{display:flex;flex-direction:column;align-items:center;gap:var(--vt-calendar-space-xs);margin-top:var(--vt-calendar-space-sm)}.vt-slot-indicator{width:8px;height:8px;background:var(--vt-calendar-primary);border-radius:50%}.vt-calendar-day-column.selected .vt-slot-indicator{background:var(--vt-calendar-background)}.vt-slots-count{font-size:.75rem;color:var(--vt-calendar-text-light);font-weight:500}.vt-calendar-day-column.selected .vt-slots-count{color:var(--vt-calendar-background)}.vt-calendar-day-view{height:100%}.vt-calendar-day-header{text-align:center;padding:var(--vt-calendar-space-lg)}.vt-day-date{font-size:1.5rem;font-weight:700;color:var(--vt-calendar-text);margin-bottom:var(--vt-calendar-space-xs)}.vt-day-weekday{font-size:1rem;color:var(--vt-calendar-text-light);font-weight:500}.vt-day-time-slots{padding:var(--vt-calendar-space-lg);max-height:350px;overflow-y:auto}.vt-no-slots-message{text-align:center;padding:var(--vt-calendar-space-xl);color:var(--vt-calendar-text-light);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px}.vt-no-slots-icon{font-size:3rem;color:var(--vt-calendar-primary-light);margin-bottom:var(--vt-calendar-space-lg);opacity:.7}.vt-no-slots-message h3{color:var(--vt-calendar-text);font-size:1.5rem;font-weight:600;margin-bottom:var(--vt-calendar-space-md)}.vt-no-slots-message p{color:var(--vt-calendar-text-light);font-size:1rem;margin-bottom:var(--vt-calendar-space-sm);line-height:1.5}.vt-no-schedule-message{text-align:center;padding:var(--vt-calendar-space-xl) var(--vt-calendar-space-lg);color:var(--vt-calendar-text-light);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:var(--vt-calendar-accent-light);border-radius:var(--vt-calendar-radius-lg);margin:var(--vt-calendar-space-lg)}.vt-no-schedule-icon{font-size:4rem;color:var(--vt-calendar-primary-light);margin-bottom:var(--vt-calendar-space-xl);opacity:.6}.vt-no-schedule-message h3{color:var(--vt-calendar-text);font-size:1.5rem;font-weight:600;margin-bottom:var(--vt-calendar-space-md);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vt-no-schedule-message p{color:var(--vt-calendar-text-light);font-size:1rem;margin-bottom:var(--vt-calendar-space-sm);line-height:1.6;max-width:500px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.vt-back-to-calendar-btn{background:var(--vt-calendar-primary);color:var(--vt-calendar-background);border:none;border-radius:var(--vt-calendar-radius-md);padding:var(--vt-calendar-space-md) var(--vt-calendar-space-lg);font-size:.9rem;font-weight:500;cursor:pointer;transition:var(--vt-calendar-transition);display:flex;align-items:center;gap:var(--vt-calendar-space-sm);margin-top:var(--vt-calendar-space-lg)}.vt-back-to-calendar-btn:hover{background:var(--vt-calendar-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px var(--vt-calendar-shadow-hover)}.vt-schedule-summary{padding:var(--vt-calendar-space-lg) var(--vt-calendar-space-xl);background:linear-gradient(135deg,var(--vt-calendar-primary) 0%,var(--vt-calendar-primary-dark) 100%);color:var(--vt-calendar-background);border-bottom:1px solid var(--vt-calendar-border)}.vt-summary-stats{display:flex;justify-content:space-around;align-items:center;gap:var(--vt-calendar-space-lg)}.vt-stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.vt-stat-number{font-size:1.5rem;font-weight:700;line-height:1;margin-bottom:var(--vt-calendar-space-xs)}.vt-stat-label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.vt-calendar-time-slots{padding:var(--vt-calendar-space-xl);background:var(--vt-calendar-accent-light);border-top:1px solid var(--vt-calendar-border)}.vt-calendar-time-slots h4{margin:0 0 var(--vt-calendar-space-lg) 0;font-size:1.125rem;font-weight:600;color:var(--vt-calendar-text)}.vt-time-slots-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--vt-calendar-space-md)}.vt-time-slot-item{display:flex;justify-content:space-between;align-items:center;padding:var(--vt-calendar-space-md);background:var(--vt-calendar-background);border:1px solid var(--vt-calendar-border);border-radius:var(--vt-calendar-radius-md);transition:all var(--vt-calendar-transition)}.vt-time-slot-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px var(--vt-calendar-shadow)}.vt-time-slot-item.available{border-color:var(--vt-calendar-primary);background:var(--vt-calendar-accent-light)}.vt-time-slot-item.booked{border-color:#e0e0e0;background:#f5f5f5;color:var(--vt-calendar-text-muted)}.vt-time-slot-item .vt-slot-time{font-weight:600;font-size:.875rem}.vt-time-slot-item .vt-slot-status{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:12px;background:var(--vt-calendar-accent)}.vt-time-slot-item.available .vt-slot-status{background:var(--vt-calendar-primary);color:var(--vt-calendar-background)}.vt-time-slot-item.booked .vt-slot-status{background:#e0e0e0;color:var(--vt-calendar-text-muted)}@media(max-width:768px){.vt-calendar-controls{flex-direction:column;gap:var(--vt-calendar-space-lg);padding:var(--vt-calendar-space-lg)}.vt-calendar-navigation{order:2}.vt-calendar-title{order:1;margin:0;font-size:1.125rem}.vt-calendar-view-modes{order:3}.vt-calendar-body{height:300px}.vt-calendar-week{min-height:40px}.vt-calendar-day{min-height:40px;padding:var(--vt-calendar-space-xs)}.vt-day-number{font-size:.75rem}.vt-time-slots-grid,.vt-time-slots-list{grid-template-columns:1fr}}@media(max-width:480px){.vt-calendar-controls{padding:var(--vt-calendar-space-md);flex-direction:row}.vt-calendar-title{font-size:1rem}.vt-nav-button{width:32px;height:32px;font-size:12px}.vt-view-mode-btn{width:28px;height:28px;font-size:10px}.vt-calendar-body{height:250px}.vt-calendar-day{min-height:35px}.vt-day-number{font-size:.7rem}.vt-slot-dot{width:4px;height:4px}}.vt-modern-calendar{box-shadow:none;border:1px solid #e5e5ea;border-radius:12px}.vt-cal-layout{display:flex;min-height:270px}.vt-mini-cal-panel{width:320px;flex-shrink:0;padding:14px 12px 14px 14px;border-right:1px solid #f2f2f7}.vt-mini-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.vt-mini-nav-btn{width:26px;height:26px;border-radius:7px;border:none;background:transparent;color:#8e8e93;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0}.vt-mini-nav-btn:hover{background:#50cada1f;color:#22c1d6}.vt-mini-month-label{font-size:13px;font-weight:700;color:#1c1c1e;letter-spacing:-.2px}.vt-mini-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.vt-mini-wd{text-align:center;font-size:10px;font-weight:600;color:#aeaeb2;text-transform:uppercase;padding:2px 0 5px;letter-spacing:.2px}.vt-mini-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.vt-mini-day-btn{aspect-ratio:auto;border:none;background:transparent;border-radius:50%;font-size:11.5px;color:#d1d1d6;cursor:default;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .15s;padding:0;line-height:1;width:100%}.vt-mini-day-btn.vt-has-slots{cursor:pointer}.vt-mini-day-btn.vt-has-slots .vt-day-num{color:#1c1c1e;font-weight:600}.vt-mini-day-btn.vt-has-slots:not(.vt-active):hover{background:#50cada1a}.vt-mini-day-btn.vt-has-slots:not(.vt-active):hover .vt-day-num{color:#22c1d6}.vt-mini-day-btn.vt-past{opacity:.3;cursor:not-allowed;pointer-events:none}.vt-mini-day-btn.vt-today .vt-day-num{color:#22c1d6;font-weight:700}.vt-mini-day-btn.vt-active{background:linear-gradient(135deg,#50cada,#22c1d6)}.vt-mini-day-btn.vt-active .vt-day-num{color:#fff!important;font-weight:700}.vt-mini-day-btn.vt-active .vt-dot{background:#fff9}.vt-day-num{font-size:11.5px;line-height:1}.vt-dot{width:3px;height:3px;background:#50cada;border-radius:50%;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.vt-cal-divider{width:1px;background:#f2f2f7;flex-shrink:0}.vt-time-slots-panel{flex:1 1;padding:10px 5px;display:flex;flex-direction:column;min-width:0;overflow-y:auto;scrollbar-width:thin}.vt-slots-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.vt-slots-empty-state p{font-size:12px;color:#aeaeb2;margin:0;line-height:1.5}.vt-slots-panel-header{display:flex;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #f2f2f7;flex-shrink:0;flex-direction:column;gap:5px}.vt-slots-panel-date-label{font-size:12.5px;font-weight:700;color:#1c1c1e}.vt-slots-avail-count{font-size:11px;font-weight:600;background:#50cada1a;padding:2px 8px;border-radius:10px}.vt-slots-compact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:5px;overflow-y:auto;scrollbar-width:thin}.vt-slot-pill{padding:7px 4px;border:1.5px solid #e5e5ea;border-radius:8px;background:#fff;font-size:11px;font-weight:600;color:#3a3a3c;cursor:pointer;text-align:center;transition:all .15s;font-family:inherit;letter-spacing:-.1px}.vt-slot-pill.vt-slot-avail:hover{border-color:#22c1d6;color:#0891b2;background:#50cada0f}.vt-slot-pill.vt-slot-booked{opacity:.35;cursor:not-allowed;text-decoration:line-through;color:#aeaeb2}.vt-slot-pill.vt-slot-past{opacity:.3;cursor:not-allowed;color:#aeaeb2;text-decoration:line-through}.vt-slot-pill.vt-slot-selected{background:linear-gradient(135deg,#50cada,#22c1d6);border-color:transparent;color:#fff;box-shadow:0 2px 8px #50cada47}.vt-slots-none-msg{flex:1;display:flex;align-items:center;justify-content:center;font-size:12px;color:#aeaeb2;text-align:center}.vt-cal-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:36px 20px;color:#8e8e93;font-size:13px}.vt-cal-error{display:flex;align-items:center;justify-content:center;padding:36px 20px;color:#b91c1c;font-size:13px}@media(max-width:520px){.vt-mini-cal-panel{border-right:none;border-bottom:1px solid #f2f2f7;padding:12px}.vt-cal-divider{display:none}.vt-time-slots-panel{max-height:350px;padding:10px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){.vt-modern-calendar{--vt-calendar-shadow: rgba(0, 0, 0, .3);--vt-calendar-shadow-hover: rgba(0, 0, 0, .4)}}@media(max-width:768px){.vt-slots-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.vt-slots-content{padding:var(--vt-calendar-space-lg)}.vt-slots-header-content{flex-direction:column;align-items:flex-start;gap:var(--vt-calendar-space-md)}.vt-slots-title{font-size:1.125rem}.vt-slot-card{padding:var(--vt-calendar-space-xs);min-height:40px}.vt-slot-card .vt-slot-time{font-size:.75rem}}@media(max-width:480px){.vt-slots-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.vt-slots-content,.vt-slots-header{padding:var(--vt-calendar-space-md)}.vt-slots-title{font-size:1rem}.vt-back-to-calendar{font-size:.8rem;padding:var(--vt-calendar-space-xs) var(--vt-calendar-space-sm)}.vt-slot-card{padding:var(--vt-calendar-space-xs);min-height:35px}.vt-slot-card .vt-slot-time{font-size:.7rem}.vt-cal-layout{flex-direction:row}.vt-mini-cal-panel{width:50%}.modal-direct-booking-step{width:-webkit-fill-available}.vt-slots-compact-grid{display:flex;flex-direction:column}}:root{--vt-teal: #22c1d6;--vt-teal-dark: #0891b2;--vt-teal-light: #50cada;--vt-text: #1c1c1e;--vt-text-muted: #6e6e73;--vt-border: rgba(0, 0, 0, .08);--vt-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif}.vt-header{position:sticky;top:0;z-index:900;background:#fffffff5;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(0,0,0,.07);transition:box-shadow .25s;font-family:var(--vt-font)}.vt-header--scrolled{box-shadow:0 1px #0000000f,0 4px 24px #00000012}.vt-header-inner{max-width:1200px;margin:0 auto;padding:0 28px;height:56px;display:flex;align-items:center;gap:8px}.vt-header-brand{display:flex;align-items:center;gap:9px;text-decoration:none;flex-shrink:0;min-height:unset}.vt-header-brand-name{font-size:24px;font-weight:700;color:#50cada;letter-spacing:-.3px;line-height:1;font-family:montserrat}.vt-header-brand-accent{color:#00a3bb;font-weight:400;font-family:montserrat}.vt-header-actions{flex-shrink:0;margin-left:auto;display:flex;align-items:center}.vt-header-cta{display:inline-flex;align-items:center;justify-content:center;height:34px;min-height:unset;padding:0 18px;background:linear-gradient(135deg,var(--vt-teal-light) 0%,var(--vt-teal-dark) 100%);color:#fff!important;font-size:13px;border-radius:8px;text-decoration:none}.vt-header-cta:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 4px 14px #0891b259}.vt-footer{background:#0f172a;color:#94a3b8;font-family:var(--vt-font)}.vt-footer-inner{max-width:1200px;margin:0 auto;padding:56px 24px 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.vt-footer-col--brand{padding-right:24px}.vt-footer-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:14px}.vt-footer-logo{width:32px;height:32px;flex-shrink:0}.vt-footer-logo svg{width:32px;height:32px;display:block}.vt-footer-brand-name{font-size:17px;font-weight:700;color:#f1f5f9;letter-spacing:-.3px}.vt-footer-brand-accent{color:var(--vt-teal-light)}.vt-footer-tagline{font-size:13.5px;line-height:1.6;color:#64748b;margin:0 0 18px}.vt-footer-trust-badges{display:flex;flex-wrap:wrap;gap:8px}.vt-trust-badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:#94a3b8;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);padding:4px 10px;border-radius:999px;letter-spacing:.2px}.vt-trust-badge i{color:var(--vt-teal-light);font-size:10px}.vt-footer-contact-info{display:flex;flex-direction:column;gap:8px;margin-top:16px}.vt-footer-contact-link{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:#64748b;text-decoration:none;transition:color .15s}.vt-footer-contact-link i{color:var(--vt-teal-light);width:14px;font-size:12px}.vt-footer-contact-link:hover{color:var(--vt-teal-light)}.vt-footer-col-title{font-size:12px;font-weight:700;color:#f1f5f9;text-transform:uppercase;letter-spacing:.8px;margin:0 0 16px}.vt-footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.vt-footer-links a{font-size:13.5px;color:#64748b;text-decoration:none;transition:color .15s}.vt-footer-links a:hover{color:var(--vt-teal-light)}.vt-footer-bottom{border-top:1px solid rgba(255,255,255,.07)}.vt-footer-bottom-inner{max-width:1200px;margin:0 auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.vt-footer-copyright{font-size:12.5px;color:#475569;margin:0}.vt-footer-disclaimer{font-size:12px;color:#475569;margin:0;max-width:480px;text-align:right}.vt-footer-disclaimer strong{color:#94a3b8}@media(max-width:900px){.vt-footer-inner{grid-template-columns:1fr 1fr;gap:36px}.vt-footer-col--brand{grid-column:1 / -1;padding-right:0}}@media(max-width:640px){.vt-header-nav{display:none}.vt-header-inner{gap:0}.vt-header-cta{height:32px;padding:0 14px;font-size:12.5px}.vt-footer-inner{grid-template-columns:1fr 1fr;padding:40px 20px 32px;gap:28px}.vt-footer-bottom-inner{flex-direction:column;align-items:flex-start;gap:8px}.vt-footer-disclaimer{text-align:left}}@media(max-width:420px){.vt-footer-inner{grid-template-columns:1fr}}
