:root{--primary:#0c2b64;--primary-light:#16408b;--primary-dark:#07193b;--secondary:#d32f2f;--secondary-hover:#b71c1c;--accent-green:#2e7d32;--accent-gold:#f5a623;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#94a3b8;--bg-main:#f8fafc;--bg-card:#fff;--bg-nav:#0c2b64fa;--border-color:#e2e8f0;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-premium:0 20px 25px -5px #0c2b641a, 0 10px 10px -5px #0c2b640a;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-xl:30px;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--font-title:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--header-height:80px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);color:var(--primary-dark);font-weight:700}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.app-container{flex-direction:column;min-height:100vh;display:flex;position:relative}.top-brand-bar{border-bottom:1px solid var(--border-color);background-color:#fff;justify-content:space-between;align-items:center;padding:10px 5%;display:flex}.brand-left{align-items:center;gap:15px;display:flex}.hospital-logo{object-fit:contain;width:auto;height:65px}.brand-title-group h1{letter-spacing:-.5px;font-size:20px;line-height:1.2}.brand-title-group span{letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700}.brand-title-group .trust{color:var(--primary)}.brand-title-group .care{color:var(--accent-green)}.brand-title-group .precision{color:var(--secondary)}.brand-contact-info{gap:25px;font-size:13px;display:flex}.contact-item{flex-direction:column;align-items:flex-end;display:flex}.contact-label{text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.contact-value{color:var(--primary);font-weight:600}header{background-color:var(--primary);color:var(--text-white);z-index:100;box-shadow:var(--shadow-md);position:sticky;top:0}.nav-container{justify-content:space-between;align-items:center;max-width:1400px;height:60px;margin:0 auto;padding:0 5%;display:flex}.nav-links{gap:30px;list-style:none;display:flex}.nav-links li button{color:#ffffffd9;text-transform:uppercase;cursor:pointer;transition:var(--transition);background:0 0;border:none;border-bottom:3px solid #0000;padding:18px 0;font-size:14px;font-weight:500}.nav-links li button:hover,.nav-links li button.active{color:#fff;border-bottom-color:var(--accent-gold)}.book-btn{background-color:var(--secondary);color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;cursor:pointer;transition:var(--transition);border:none;padding:10px 22px;font-size:13px;font-weight:600;box-shadow:0 4px 6px #d32f2f33}.book-btn:hover{background-color:var(--secondary-hover);transform:translateY(-2px);box-shadow:0 6px 12px #d32f2f4d}.hero-section{color:#fff;background:linear-gradient(135deg,#07193b 0%,#0c2b64 100%);justify-content:space-between;align-items:center;min-height:480px;padding:80px 10%;display:flex;position:relative;overflow:hidden}.hero-overlay{pointer-events:none;background:radial-gradient(circle at 80%,#d32f2f26 0%,#0000 60%);position:absolute;inset:0}.hero-content{z-index:2;max-width:600px;animation:.8s ease-out slideInLeft}.hero-tagline{color:var(--accent-gold);text-transform:uppercase;letter-spacing:2px;margin-bottom:15px;font-size:13px;font-weight:700;display:inline-block}.hero-content h2{color:#fff;margin-bottom:20px;font-size:48px;line-height:1.15}.hero-description{color:#fffc;margin-bottom:30px;font-size:16px}.hero-actions{gap:15px;display:flex}.btn-primary{background-color:var(--secondary);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);border:none;padding:14px 30px;font-size:15px;font-weight:600}.btn-primary:hover{background-color:var(--secondary-hover);transform:translateY(-2px)}.btn-secondary{color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);background-color:#0000;border:2px solid #ffffff4d;padding:12px 28px;font-size:15px;font-weight:600}.btn-secondary:hover{background-color:#ffffff0d;border-color:#fff}.hero-graphic{z-index:2;justify-content:center;align-items:center;width:320px;height:320px;animation:3s ease-in-out infinite pulseHeart;display:flex;position:relative}.heart-pulse-svg{filter:drop-shadow(0 0 30px #d32f2f80);width:100%;height:100%}.about-hospital-container{background-color:#fff;flex-direction:column;gap:40px;padding:60px 10%;display:flex}.section-header{text-align:center;max-width:700px;margin:0 auto}.section-subtitle{color:var(--secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-size:12px;font-weight:700}.section-header h2{margin-bottom:15px;font-size:32px}.section-description{color:var(--text-secondary)}.mv-cards-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.mv-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;transition:var(--transition);padding:30px}.mv-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-light);transform:translateY(-5px)}.mv-icon{width:60px;height:60px;color:var(--primary);background-color:#0c2b6414;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:24px;display:flex}.mv-card h3{margin-bottom:12px;font-size:18px}.mv-card p{color:var(--text-secondary);font-size:14px}.services-section{background-color:var(--bg-main);padding:80px 10%}.services-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-top:40px;display:grid}.service-card{background-color:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);border-top:4px solid var(--primary);padding:30px}.service-card:hover{box-shadow:var(--shadow-lg);border-top-color:var(--secondary);transform:translateY(-5px)}.service-icon{margin-bottom:15px;font-size:32px}.service-card h3{margin-bottom:12px;font-size:18px}.service-card ul{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:14px;list-style:none;display:flex}.service-card ul li:before{content:"•";color:var(--secondary);width:1em;margin-left:-.2em;font-weight:700;display:inline-block}.doctor-profile-section{background-color:#fff;padding:80px 10%}.profile-layout{align-items:center;gap:50px;display:flex}.profile-image-container{flex:1;justify-content:center;max-width:450px;display:flex;position:relative}.profile-image-bg{background-color:var(--primary);border-radius:var(--radius-lg);z-index:1;width:80%;height:90%;position:absolute;bottom:0}.doctor-photo{z-index:2;border-radius:var(--radius-lg);width:85%;height:auto;box-shadow:var(--shadow-lg);object-fit:cover;position:relative}.profile-info{flex:1.5}.doctor-title{color:var(--secondary);text-transform:uppercase;letter-spacing:1px;font-size:14px;font-weight:700}.doctor-name{margin:5px 0;font-size:40px}.doctor-credentials{color:var(--text-secondary);font-size:16px;font-weight:500}.doctor-designation{color:var(--primary);margin-bottom:20px;font-size:18px;font-weight:600}.doctor-tag{background-color:var(--primary);color:#fff;border-radius:var(--radius-sm);margin-bottom:25px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-block}.doctor-sections-grid{grid-template-columns:repeat(2,1fr);gap:25px;display:grid}.doc-info-block{margin-bottom:20px}.doc-info-block h3{border-left:3px solid var(--secondary);margin-bottom:12px;padding-left:10px;font-size:16px}.doc-info-block ul{color:var(--text-secondary);flex-direction:column;gap:8px;font-size:14px;list-style:none;display:flex}.doc-info-block ul li{line-height:1.4}.doc-info-block ul li strong{color:var(--primary-dark)}.doctor-quote-box{border-left:4px solid var(--primary);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-primary);background-color:#f1f5f9;margin-top:30px;padding:20px;font-size:15px;font-style:italic}.doctor-quote-box span{text-align:right;color:var(--primary);margin-top:10px;font-size:13px;font-style:normal;font-weight:700;display:block}.contact-section{background-color:var(--bg-main);padding:80px 10%}.contact-layout{grid-template-columns:1.2fr 1.8fr;gap:40px;margin-top:30px;display:grid}.contact-card-box{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;height:fit-content;padding:30px}.contact-block{margin-bottom:25px}.contact-block:last-child{margin-bottom:0}.contact-block h3{color:var(--primary);margin-bottom:8px;font-size:16px}.contact-block p{color:var(--text-secondary);font-size:14px}.action-card-grid{grid-template-columns:1fr;gap:25px;display:grid}.action-card{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);background:#fff;align-items:center;gap:20px;padding:30px;display:flex}.action-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.action-icon-circle{width:60px;height:60px;color:var(--accent-green);background-color:#2e7d321a;border-radius:50%;justify-content:center;align-items:center;font-size:28px;display:flex}.action-icon-circle.blue{color:var(--primary);background-color:#0c2b641a}.action-text h3{margin-bottom:4px;font-size:18px}.action-text p{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.whatsapp-btn{background-color:var(--accent-green);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:8px;padding:8px 18px;font-size:13px;font-weight:600;display:inline-flex}.whatsapp-btn:hover{background-color:#1b5e20}.portal-section{min-height:600px;padding:80px 10%}.portal-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);border:1px solid var(--border-color);background:#fff;max-width:900px;margin:0 auto;overflow:hidden}.portal-login-split{grid-template-columns:1fr 1fr;min-height:480px;display:grid}.portal-login-hero{background:linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);color:#fff;flex-direction:column;justify-content:center;padding:40px;display:flex}.portal-login-hero h2{color:#fff;margin-bottom:15px;font-size:32px}.portal-login-hero p{color:#fffc;font-size:14px}.portal-login-form-container{flex-direction:column;justify-content:center;padding:50px 40px;display:flex}.portal-login-form-container h3{margin-bottom:10px;font-size:24px}.form-subtitle{color:var(--text-secondary);margin-bottom:25px;font-size:14px}.form-group{margin-bottom:20px}.form-group label{color:var(--primary-dark);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-input{border:1.5px solid var(--border-color);border-radius:var(--radius-md);width:100%;transition:var(--transition);padding:12px 16px;font-size:15px}.form-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #0c2b6426}.form-input::placeholder{color:var(--text-muted)}.portal-submit-btn{background-color:var(--primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;transition:var(--transition);border:none;margin-top:10px;padding:14px;font-size:15px;font-weight:600}.portal-submit-btn:hover{background-color:var(--primary-light)}.portal-submit-btn:disabled{background-color:var(--text-muted);cursor:not-allowed}.otp-wrapper{gap:10px;margin-bottom:15px;display:flex}.otp-cell-input{text-align:center;letter-spacing:1px;width:100%;font-size:20px;font-weight:700}.resend-link-btn{color:var(--secondary);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.resend-link-btn:hover{text-decoration:underline}.dashboard-header{background-color:var(--primary-dark);color:#fff;justify-content:space-between;align-items:center;padding:30px 40px;display:flex}.dashboard-patient-welcome h2{color:#fff;margin-bottom:4px;font-size:22px}.patient-badge{color:var(--accent-gold);font-size:13px;font-weight:600}.logout-btn{color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background-color:#ffffff26;border:none;padding:8px 16px;font-weight:600}.logout-btn:hover{background-color:#ffffff4d}.dashboard-content{background-color:#fff;padding:40px}.dashboard-appointments-section h3{border-bottom:1px solid var(--border-color);margin-bottom:20px;padding-bottom:10px;font-size:18px}.appointments-list{flex-direction:column;gap:15px;display:flex}.appointment-item{border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition);justify-content:space-between;align-items:center;padding:20px;display:flex}.appointment-item:hover{border-color:var(--primary-light);box-shadow:var(--shadow-sm)}.appt-info-main{gap:25px;display:flex}.appt-date-block{color:var(--primary);border-radius:var(--radius-md);text-align:center;font-family:var(--font-title);background-color:#0c2b640d;min-width:90px;padding:10px 18px}.appt-date-day{font-size:24px;font-weight:800;line-height:1}.appt-date-month{text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:700}.appt-details-text h4{color:var(--primary-dark);margin-bottom:4px;font-size:16px}.appt-details-text p{color:var(--text-secondary);font-size:13px}.appt-reason{color:var(--text-muted);margin-top:5px;font-size:13px;font-style:italic}.appt-status-cancel{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700}.status-badge.booked{color:var(--accent-green);background-color:#2e7d321a}.status-badge.cancelled{color:var(--secondary);background-color:#d32f2f1a}.cancel-appt-btn{border:1px solid var(--secondary);color:var(--secondary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background:0 0;padding:6px 12px;font-size:12px;font-weight:600}.cancel-appt-btn:hover{background-color:var(--secondary);color:#fff}.no-appointments-box{border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;color:var(--text-secondary);padding:40px}.no-appointments-box button{margin-top:15px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background-color:#07193bb3;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content-container{border-radius:var(--radius-lg);background:#fff;width:95%;max-width:600px;animation:.4s cubic-bezier(.16,1,.3,1) slideUp;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-header{background-color:var(--primary);color:#fff;justify-content:space-between;align-items:center;padding:20px 30px;display:flex}.modal-header h2{color:#fff;font-size:20px}.close-modal-btn{color:#fffc;cursor:pointer;transition:var(--transition);background:0 0;border:none;font-size:24px}.close-modal-btn:hover{color:#fff}.modal-body{max-height:75vh;padding:30px;overflow-y:auto}.form-grid-2{grid-template-columns:1fr 1fr;gap:15px;display:grid}.form-alert{border-radius:var(--radius-md);margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.form-alert.error{color:var(--secondary);background-color:#d32f2f1a;border:1px solid #d32f2f33}.form-alert.success{color:var(--accent-green);background-color:#2e7d321a;border:1px solid #2e7d3233}footer{background-color:var(--primary-dark);color:#ffffffb3;margin-top:auto;padding:60px 10% 30px}.footer-grid{border-bottom:1px solid #ffffff1a;grid-template-columns:1.5fr 1fr 1.5fr;gap:40px;margin-bottom:30px;padding-bottom:40px;display:grid}.footer-col h3{color:#fff;margin-bottom:20px;font-size:18px}.footer-col ul{flex-direction:column;gap:10px;font-size:14px;list-style:none;display:flex}.footer-col ul li{transition:var(--transition)}.footer-col ul li:hover{color:#fff;transform:translate(3px)}.footer-logo-title{align-items:center;gap:10px;margin-bottom:15px;display:flex}.footer-logo{filter:brightness(0)invert();width:auto;height:40px}.footer-logo-title h2{color:#fff;font-size:18px}.footer-bottom{justify-content:space-between;align-items:center;font-size:13px;display:flex}.sms-simulator-widget{z-index:150;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:25px;right:25px}.sms-toggle-btn{background-color:var(--primary-dark);color:#fff;border:2px solid var(--accent-gold);cursor:pointer;width:60px;height:60px;box-shadow:var(--shadow-lg);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex;position:relative}.sms-toggle-btn:hover{transform:scale(1.05)}.sms-badge-count{background-color:var(--secondary);color:#fff;border:2px solid var(--bg-main);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;animation:2s infinite pulseBadge;display:flex;position:absolute;top:-3px;right:-3px}.phone-mockup-container{border-radius:var(--radius-lg);background-color:#1e1e1e;border:8px solid #333;flex-direction:column;width:320px;height:480px;margin-bottom:15px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:flex;overflow:hidden;box-shadow:0 20px 40px #0006}.phone-speaker{background-color:#555;border-radius:2px;width:60px;height:4px;margin:8px auto 4px}.phone-screen{background-color:#121212;flex-direction:column;flex:1;display:flex;overflow:hidden}.phone-header{color:#fff;background-color:#1c1c1e;border-bottom:1px solid #2c2c2e;justify-content:space-between;align-items:center;padding:10px 15px;font-size:11px;display:flex}.phone-title-bar{text-align:center;background-color:#1c1c1e;border-bottom:1px solid #2c2c2e;padding:8px 15px}.phone-title-bar h4{color:var(--accent-gold);text-transform:uppercase;letter-spacing:1px;font-size:12px}.phone-title-bar p{color:#8e8e93;margin-top:2px;font-size:9px}.sms-inbox{flex-direction:column;flex:1;gap:12px;padding:15px;display:flex;overflow-y:auto}.sms-bubble{color:#fff;background-color:#2c2c2e;border-radius:16px 16px 16px 4px;align-self:flex-start;max-width:85%;padding:12px;font-size:13px;line-height:1.4;position:relative;box-shadow:0 2px 4px #00000026}.sms-bubble-meta{color:#8e8e93;justify-content:space-between;margin-top:6px;font-size:9px;display:flex}.sms-bubble-phone{color:var(--accent-gold);font-weight:700}.sms-bubble-copy{color:#0a84ff;cursor:pointer;background:0 0;border:none;padding:0 2px;font-weight:600}.sms-bubble-copy:hover{text-decoration:underline}.sms-bubble-copy.copied{color:var(--accent-green)}.no-sms-view{color:#8e8e93;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:20px;display:flex}.no-sms-icon{color:#2c2c2e;margin-bottom:12px;font-size:40px}.no-sms-view p{font-size:13px}.phone-actions-footer{background-color:#1c1c1e;border-top:1px solid #2c2c2e;justify-content:center;padding:10px;display:flex}.clear-sms-btn{color:#ff453a;cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #e12b2b;border-radius:12px;padding:5px 12px;font-size:11px;font-weight:600}.clear-sms-btn:hover{color:#fff;background-color:#ff453a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes pulseHeart{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes pulseBadge{0%{box-shadow:0 0 #d32f2fb3}70%{box-shadow:0 0 0 8px #d32f2f00}to{box-shadow:0 0 #d32f2f00}}@media (width<=1024px){.hero-section{padding:60px 5%}.hero-content h2{font-size:38px}.profile-layout{flex-direction:column;gap:30px}.profile-image-container{max-width:320px}.contact-layout{grid-template-columns:1fr}}@media (width<=768px){.top-brand-bar{text-align:center;flex-direction:column;gap:15px}.brand-contact-info{justify-content:center;width:100%}.nav-container{flex-direction:column;gap:10px;height:auto;padding:10px}.nav-links{gap:15px}.nav-links li button{padding:8px 0}.hero-section{text-align:center;flex-direction:column;gap:40px}.hero-content{max-width:100%}.hero-actions{justify-content:center}.mv-cards-grid,.doctor-sections-grid,.portal-login-split{grid-template-columns:1fr}.portal-login-hero{text-align:center;min-height:auto;padding:30px}.portal-login-form-container{padding:30px}.form-grid-2{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:30px}}
