:root{--primary:#2563eb;--primary-dark:#1d4ed8;--primary-light:#dbeafe;--secondary:#64748b;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--background:#f8fafc;--card:#ffffff;--text:#1e293b;--text-light:#64748b;--border:#e2e8f0}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}body{background-color:var(--background);color:var(--text);line-height:1.6;overflow-x:hidden}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;font-size:1rem;transition:all .2s;text-decoration:none}.btn-outline{color:var(--secondary)}.btn-outline:hover{background-color:#f1f5f9}h1,h2,h3,h4,h5,h6{color:var(--text);line-height:1.2}p{color:var(--text-light)}section{padding:5rem 0}@media (max-width:768px){section{padding:3rem 0}}.hero-section{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:white;padding:6rem 0;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;width:100%;height:100%;top:0;left:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.1) 0,transparent 20%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.1) 0,transparent 20%);z-index:1}.hero-section .container{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:1200px;margin:0 auto;padding:0 1.5rem}.hero-section h1{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2;max-width:800px}.hero-section p{font-size:1.25rem;margin-bottom:2.5rem;opacity:.9;max-width:700px;color:rgba(255,255,255,.9)}.hero-section .buttons{display:flex;gap:1rem;margin-top:1rem}.hero-section .btn-primary{background-color:white;color:var(--primary);border:none;box-shadow:0 4px 6px rgba(0,0,0,.1)}.hero-section .btn-primary:hover{background-color:rgba(255,255,255,.9);transform:translateY(-2px);box-shadow:0 6px 8px rgba(0,0,0,.1)}.hero-section .btn-outline{background-color:transparent;color:white;border:2px solid rgba(255,255,255,.5)}.hero-section .btn-outline:hover{background-color:rgba(255,255,255,.1);border-color:white;transform:translateY(-2px)}@media (max-width:768px){.hero-section{padding:4rem 0}.hero-section h1{font-size:2.5rem}.hero-section p{font-size:1.125rem}.hero-section .buttons{flex-direction:column;width:100%;max-width:300px}}.mission-section{padding:6rem 0;background-color:white}.mission-section .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.mission-section .section-header{text-align:center;margin-bottom:4rem}.mission-section h2{font-size:2.5rem;font-weight:700;color:var(--text);margin-bottom:1rem;position:relative;display:inline-block}.mission-section h2:after{content:"";position:absolute;width:50px;height:3px;background-color:var(--primary);bottom:-12px;left:50%;transform:translateX(-50%)}.mission-section .subtitle{color:var(--text-light);font-size:1.125rem;max-width:700px;margin:1.5rem auto 0}.mission-section .grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem}@media (min-width:768px){.mission-section .grid{grid-template-columns:repeat(3,1fr)}}.mission-section .card{background-color:var(--card);padding:2.5rem 2rem;border-radius:1rem;box-shadow:0 10px 30px rgba(0,0,0,.05);transition:all .3s ease;height:100%;display:flex;flex-direction:column}.mission-section .card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.mission-section .icon{width:60px;height:60px;background-color:var(--primary-light);display:flex;align-items:center;justify-content:center;border-radius:1rem;color:var(--primary);margin:0 auto 1.5rem}.mission-section .icon svg{width:30px;height:30px}.mission-section h3{font-size:1.25rem;font-weight:700;margin-bottom:1rem;text-align:center;color:var(--text)}.mission-section p{color:var(--text-light);text-align:center;flex-grow:1}.services-section{padding:6rem 0;background-color:#f9fafc;position:relative;overflow:hidden}.services-section:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 10% 90%,var(--primary-light) 0,transparent 300px),radial-gradient(circle at 90% 10%,var(--primary-light) 0,transparent 300px);opacity:.4;z-index:1}.services-section .container{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 1.5rem}.services-section .section-header{text-align:center;margin-bottom:4rem}.services-section h2{font-size:2.5rem;font-weight:700;color:var(--text);margin-bottom:1rem;position:relative;display:inline-block}.services-section h2:after{content:"";position:absolute;width:50px;height:3px;background-color:var(--primary);bottom:-12px;left:50%;transform:translateX(-50%)}.services-section .subtitle{color:var(--text-light);font-size:1.125rem;max-width:700px;margin:1.5rem auto 0}.services-section .grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2.5rem}@media (min-width:768px){.services-section .grid{grid-template-columns:repeat(3,1fr)}}.services-section .card{background-color:var(--card);border-radius:1rem;box-shadow:0 10px 30px rgba(0,0,0,.05);overflow:hidden;transition:all .3s ease;height:100%;display:flex;flex-direction:column;position:relative}.services-section .card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.services-section .image{height:200px;background-color:#f1f5f9;display:flex;align-items:center;justify-content:center;color:var(--primary);position:relative;overflow:hidden}.services-section .image:before{top:-50px;left:-50px;width:100px;height:100px}.services-section .image:after,.services-section .image:before{content:"";position:absolute;background-color:rgba(37,99,235,.1);border-radius:50%}.services-section .image:after{bottom:-30px;right:-30px;width:80px;height:80px}.services-section .image svg{position:relative;z-index:1;width:80px;height:80px}.services-section .content{padding:2rem;flex-grow:1;display:flex;flex-direction:column}.services-section h3{font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:var(--text)}.services-section p{color:var(--text-light);margin-bottom:1.5rem;flex-grow:1}.history-section{padding:6rem 0;background-color:white}.history-section .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.history-section .section-header{text-align:center;margin-bottom:4rem}.history-section h2{font-size:2.5rem;font-weight:700;color:var(--text);margin-bottom:1rem;position:relative;display:inline-block}.history-section h2:after{content:"";position:absolute;width:50px;height:3px;background-color:var(--primary);bottom:-12px;left:50%;transform:translateX(-50%)}.history-section .subtitle{color:var(--text-light);font-size:1.125rem;max-width:700px;margin:1.5rem auto 0}.history-section .timeline{position:relative;max-width:1000px;margin:0 auto;padding:2rem 0}.history-section .timeline:before{content:"";position:absolute;width:3px;background-color:var(--border);top:0;bottom:0;left:50%;transform:translateX(-50%);border-radius:1rem}.history-section .timeline-item{padding:0 0 4rem;position:relative;width:50%;box-sizing:border-box}.history-section .timeline-item:last-child{padding-bottom:0}.history-section .timeline-item:nth-child(odd){left:0;padding-right:3rem;text-align:right}.history-section .timeline-item:nth-child(2n){left:50%;padding-left:3rem}.history-section .timeline-content{padding:2rem;background-color:var(--card);border-radius:1rem;box-shadow:0 5px 25px rgba(0,0,0,.05);position:relative;transition:all .3s ease}.history-section .timeline-content:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.1)}.history-section .timeline-year{position:absolute;width:4rem;height:4rem;border-radius:50%;background-color:var(--primary);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;top:50%;transform:translateY(-50%);z-index:1;box-shadow:0 5px 15px rgba(37,99,235,.3)}.history-section .timeline-item:nth-child(odd) .timeline-year{right:-2rem}.history-section .timeline-item:nth-child(2n) .timeline-year{left:-2rem}.history-section .timeline-content h3{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:var(--text)}.history-section .timeline-content p{color:var(--text-light);margin:0}@media (max-width:768px){.history-section .timeline:before{left:2rem}.history-section .timeline-item{width:100%;left:0}.history-section .timeline-item,.history-section .timeline-item:nth-child(odd){padding-left:4rem;padding-right:0;text-align:left}.history-section .timeline-item:nth-child(2n){left:0}.history-section .timeline-item:nth-child(odd) .timeline-year,.history-section .timeline-year{left:0;right:auto}}.accreditations-section{padding:6rem 0;background-color:#f9fafc;position:relative;overflow:hidden}.accreditations-section:before{width:400px;height:400px;top:-200px;right:-200px}.accreditations-section:after,.accreditations-section:before{content:"";position:absolute;background-color:var(--primary-light);border-radius:50%;opacity:.4;z-index:1}.accreditations-section:after{width:300px;height:300px;bottom:-150px;left:-150px}.accreditations-section .container{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 1.5rem}.accreditations-section .section-header{text-align:center;margin-bottom:4rem}.accreditations-section h2{font-size:2.5rem;font-weight:700;color:var(--text);margin-bottom:1rem;position:relative;display:inline-block}.accreditations-section h2:after{content:"";position:absolute;width:50px;height:3px;background-color:var(--primary);bottom:-12px;left:50%;transform:translateX(-50%)}.accreditations-section .subtitle{color:var(--text-light);font-size:1.125rem;max-width:700px;margin:1.5rem auto 0}.accreditations-section .grid{display:flex;flex-wrap:wrap;justify-content:center;gap:2.5rem;margin-top:2rem}.accreditations-section .card{text-align:center;padding:2.5rem 2rem;border-radius:1rem;width:220px;transition:all .3s ease;background-color:white;box-shadow:0 10px 30px rgba(0,0,0,.05);position:relative;z-index:2}.accreditations-section .card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.accreditations-section .icon{width:100px;height:100px;background:linear-gradient(135deg,var(--primary-light),#f1f5f9);border-radius:50%;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;color:var(--primary)}.accreditations-section .icon svg{width:50px;height:50px}.accreditations-section h3{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:var(--text)}.accreditations-section p{color:var(--text-light);font-size:.875rem}@media (max-width:768px){.accreditations-section .card{width:calc(50% - 1.25rem);padding:2rem 1.5rem}.accreditations-section .icon{width:80px;height:80px}.accreditations-section .icon svg{width:40px;height:40px}}@media (max-width:480px){.accreditations-section .card{width:100%;max-width:280px}}.footer{background-color:var(--text);color:white;padding:5rem 0 2rem;position:relative;overflow:hidden}.footer:before{width:500px;height:500px;top:-200px;right:-200px}.footer:after,.footer:before{content:"";position:absolute;background:radial-gradient(circle,rgba(255,255,255,.03) 0,transparent 70%)}.footer:after{width:400px;height:400px;bottom:-200px;left:-200px}.footer .container{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 1.5rem}.footer .grid{display:grid;grid-template-columns:repeat(1,1fr);gap:3rem;margin-bottom:4rem}@media (min-width:768px){.footer .grid{grid-template-columns:1.5fr 1fr 1fr 1fr}}.footer .branding,.footer .logo{margin-bottom:1.5rem}.footer .logo{display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:white}.footer .logo svg{margin-right:.75rem}.footer .about{color:rgba(255,255,255,.7);margin-bottom:2rem;line-height:1.6}.footer .social{display:flex;gap:1rem}.footer .social-icon{width:2.5rem;height:2.5rem;background-color:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.footer .social-icon:hover{background-color:var(--primary);transform:translateY(-3px)}.footer h3{font-size:1.125rem;font-weight:600;margin-bottom:1.5rem;position:relative;padding-bottom:.75rem;color:white}.footer h3:after{content:"";position:absolute;width:3rem;height:2px;background-color:var(--primary);bottom:0;left:0}.footer .links{list-style:none;padding:0;margin:0}.footer .links li{margin-bottom:1rem}.footer .links a{color:rgba(255,255,255,.7);text-decoration:none;transition:all .3s ease;display:inline-block}.footer .links a:hover{color:white;transform:translateX(5px)}.footer .divider{height:1px;background-color:rgba(255,255,255,.1);margin-bottom:2rem}.footer .bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.footer .copyright{opacity:.7;font-size:.875rem}.footer .policies{display:flex;gap:2rem;flex-wrap:wrap}.footer .policies a{color:rgba(255,255,255,.7);text-decoration:none;font-size:.875rem;transition:color .3s}.footer .policies a:hover{color:white}@media (max-width:768px){.footer .bottom{flex-direction:column;text-align:center}.footer .policies{justify-content:center}.footer h3:after{left:50%;transform:translateX(-50%)}.footer .links,.footer h3{text-align:center}.footer .social{justify-content:center}}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:1000;justify-content:center;align-items:center}.modal.show{display:flex}.modal-content{background-color:white;border-radius:.5rem;padding:2rem;width:90%;max-width:500px;box-shadow:0 4px 12px rgba(0,0,0,.1);position:relative}.close-modal{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-light)}.modal-header{margin-bottom:1.5rem}.modal-title{font-size:1.5rem;color:var(--text);margin:0 0 .5rem}.form-group{margin-bottom:1.25rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text)}.form-control{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:.375rem;font-size:1rem}.remember-forgot{justify-content:space-between}.remember-forgot,.remember-me{display:flex;align-items:center}.remember-me input{margin-right:.5rem}.forgot-password{color:var(--primary);text-decoration:none}.btn{padding:.75rem 1.5rem;border-radius:.375rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary{background-color:var(--primary);color:white;border:none}.btn-primary:hover{background-color:var(--primary-dark)}.btn-outline{background-color:transparent;color:var(--text);border:1px solid var(--border);font-weight:500}.btn-outline:hover{background-color:var(--bg-light)}.btn-disabled{background-color:var(--border);color:var(--text-light);cursor:default;border:none}.btn-full{width:100%;margin-top:1rem}.triage-intro{text-align:center;padding:2rem}.triage-container{background-color:white;box-shadow:0 2px 10px rgba(0,0,0,.05);padding:2rem}.patient-card,.triage-container{border-radius:.5rem;margin-bottom:2rem}.patient-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1.5rem;background-color:var(--bg-light)}.patient-info-item{display:flex;flex-direction:column}.patient-info-label{font-size:.875rem;color:var(--text-light);margin-bottom:.25rem}.patient-info-value{font-weight:500;color:var(--text)}.progress-bar-container{margin:2rem 0;position:relative}.progress-bar{height:4px;background-color:var(--primary);border-radius:2px;transition:width .3s ease}.progress-steps{display:flex;justify-content:space-between;position:relative;margin-top:-2px}.progress-step{width:12px;height:12px;border-radius:50%;background-color:white;border:2px solid var(--border);position:relative}.progress-step.completed{background-color:var(--primary);border-color:var(--primary)}.progress-step.current{border-color:var(--primary);box-shadow:0 0 0 2px rgba(37,99,235,.2)}.progress-step:after{content:attr(data-label);position:absolute;top:20px;left:50%;transform:translateX(-50%);font-size:.75rem;color:var(--text-light);white-space:nowrap}.triage-questions-container{margin-top:2rem}.question{margin-bottom:2rem}.question-header{margin-bottom:1rem}.question-text{font-weight:500;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.question-number{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background-color:var(--primary);color:white;border-radius:50%;font-size:.875rem;margin-right:.5rem}.required-badge{background-color:rgba(37,99,235,.1);color:var(--primary);padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.pain-scale{display:flex;justify-content:space-between;margin:1rem 0}.pain-option{flex-direction:column;cursor:pointer}.pain-option,.pain-value{display:flex;align-items:center}.pain-value{width:36px;height:36px;border-radius:50%;background-color:white;border:2px solid var(--border);justify-content:center;margin-bottom:.25rem;transition:all .2s ease}.pain-value.selected{background-color:var(--primary);color:white;border-color:var(--primary)}.pain-label{font-size:.75rem;color:var(--text-light)}.radio-group{display:flex;gap:1rem;margin:1rem 0}.radio-option{display:flex;align-items:center;cursor:pointer}.radio-option input{margin-right:.5rem}.input-container{margin:1rem 0}.input-container textarea{width:100%;min-height:100px;padding:.75rem;border:1px solid var(--border);border-radius:.375rem;resize:vertical}.action-bar{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.actions{display:flex;justify-content:space-between}.action-group{display:flex;gap:1rem}.analysis-result{margin-top:2rem;padding:1rem;background-color:rgba(37,99,235,.1);border-radius:.5rem}.analysis-title{color:var(--primary);margin-bottom:.5rem}.analysis-recommendation{font-weight:700;font-size:1.25rem;margin-bottom:.5rem}.analysis-reasoning{margin-bottom:.5rem}.analysis-confidence{font-size:.875rem;color:var(--text-light)}.login-required-card{background:linear-gradient(135deg,#e0f7fa,#f8fafc);border-radius:18px;box-shadow:0 6px 32px rgba(0,124,240,.1);padding:2.5rem 2rem 2rem;max-width:420px;margin:3rem auto 2rem;text-align:center;position:relative;border:1.5px solid #b2ebf2;animation:popIn .3s}.login-required-icon{margin-bottom:1.2rem;display:flex;justify-content:center;align-items:center}.login-required-title{font-size:2rem;font-weight:700;color:#007cf0;margin-bottom:.5rem;letter-spacing:.5px}.login-required-message{color:#333;font-size:1.1rem;margin-bottom:1.5rem;line-height:1.5}@media (max-width:600px){.login-required-card{padding:1.5rem .5rem;max-width:98vw}.login-required-title{font-size:1.3rem}}@media (max-width:768px){.actions{flex-direction:column}.action-group{width:100%;justify-content:space-between}.question-text{font-size:1rem}.patient-card{grid-template-columns:1fr}}@media (max-width:480px){.question-header{flex-direction:column;align-items:flex-start}.required-badge{margin-left:2rem;margin-top:.25rem}.action-group{flex-wrap:wrap}.action-group .btn{flex:1 1 calc(50% - 0.375rem);text-align:center;padding-left:.5rem;padding-right:.5rem}}.contact-section{padding:6rem 0;background-color:white;position:relative;overflow:hidden}.contact-section:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,var(--primary-light) 0,transparent 70%);top:-250px;left:-250px;opacity:.5;z-index:1}.contact-section .container{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 1.5rem}.contact-section .section-header{text-align:center;margin-bottom:4rem}.contact-section h2{font-size:2.5rem;font-weight:700;color:var(--text);margin-bottom:1rem;position:relative;display:inline-block}.contact-section h2:after{content:"";position:absolute;width:50px;height:3px;background-color:var(--primary);bottom:-12px;left:50%;transform:translateX(-50%)}.contact-section .subtitle{color:var(--text-light);font-size:1.125rem;max-width:700px;margin:1.5rem auto 0}.contact-section{display:grid;grid-template-columns:repeat(1,1fr);gap:3rem}.grid{display:grid;grid-template-columns:1.5fr 2fr;gap:1rem}@media (max-width:767px){.grid{grid-template-columns:1fr}}.contact-section,.info{display:flex;flex-direction:column;gap:2rem}.contact-section .info-item{display:flex;gap:1.5rem;align-items:flex-start}.contact-section .icon{background-color:var(--primary-light);color:var(--primary);border-radius:50%;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-section .content h3{font-weight:600;margin-bottom:.5rem;color:var(--text)}.contact-section .content p{color:var(--text-light);line-height:1.5}.contact-section{padding:2.5rem}.contact-section,.form{background-color:var(--card);border-radius:1rem;box-shadow:0 10px 30px rgba(0,0,0,.05)}.form{padding:2rem;margin-top:-1rem}.contact-section .form h3{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text)}.contact-section .form-group{margin-bottom:1.5rem}.contact-section label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text)}.contact-section input,.contact-section textarea{width:100%;padding:.875rem 1rem;border:1px solid var(--border);border-radius:.5rem;font-size:1rem;transition:all .3s ease;background-color:#f9fafc}.contact-section input:focus,.contact-section textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.contact-section input::placeholder,.contact-section textarea::placeholder{color:#a0aec0}.contact-section textarea{min-height:150px;resize:vertical}.contact-section .btn-submit{width:100%;background-color:var(--primary);color:white;border:none;padding:1rem;border-radius:.5rem;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.contact-section .btn-submit:hover{background-color:var(--primary-dark);transform:translateY(-2px)}@media (max-width:767px){.form{margin-top:1rem}.contact-section{padding:0}}