:root{--bg-global:#f7f9f6;--surface:#fff;--primary:#2e7d4f;--primary-hover:#24623e;--medium:#52a875;--light:#d4edda;--alert:#c0392b;--warning:#b7770d;--text-main:#1a1a1a;--text-muted:#5a6b61;--border-light:#2e7d4f1a;--shadow-diffusion:0 20px 40px -15px #0000000d;--spring-easing:cubic-bezier(.175, .885, .32, 1.1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-global);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif;line-height:1.6}h1,h2,h3,.font-display{letter-spacing:-.02em;color:var(--text-main);font-family:Fraunces,serif;font-weight:600}.logo-typography{letter-spacing:.35em;text-transform:uppercase;font-family:Raleway,sans-serif;font-weight:300}a{color:inherit;text-decoration:none;transition:color .2s}ul{list-style:none}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 24px}.btn{cursor:pointer;transition:all .3s var(--spring-easing);border:none;border-radius:100px;justify-content:center;align-items:center;padding:16px 32px;font-size:1rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 4px 14px #2e7d4f33}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px #2e7d4f4d}.btn-primary:active{transform:scale(.98)}.btn-white{background-color:var(--surface);color:var(--primary)}.btn-white:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px #0000001a}.reveal{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.reveal.active{opacity:1;transform:translateY(0)}.navbar{-webkit-backdrop-filter:blur(12px);z-index:100;background:#f7f9f6cc;border-bottom:1px solid #ffffff4d;width:100%;padding:20px 0;transition:padding .3s,background .3s;position:fixed;top:0;left:0}.navbar.scrolled{background:#f7f9f6f2;padding:12px 0;box-shadow:0 4px 20px #00000008}.nav-content{justify-content:space-between;align-items:center;display:flex}.logo{color:var(--primary);align-items:center;gap:8px;font-size:1.5rem;display:flex}.nav-logo-image{width:auto;height:32px;display:block}.hero-scroll-track{width:100%;position:relative}.sticky-hero{z-index:0;justify-content:center;align-items:center;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.hero-video-bg{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;top:0;left:0}.hero-overlay{z-index:-1;background:linear-gradient(90deg,#000000bf 0%,#000000a6 40%,#0003 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-grid-center{text-align:left;z-index:1;justify-content:flex-start;align-items:center;width:100%;display:flex;position:relative}.hero-content{max-width:600px;margin:0;padding-left:80px}.hero-content h1{color:#fff;margin-bottom:24px;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.05}.hero-content p{color:#ffffffd9;max-width:600px;margin-bottom:40px;font-size:1.125rem}.hero-cta{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.hero-note{color:#fffc;justify-content:flex-start;align-items:center;gap:8px;font-size:.875rem;display:flex}.hero-note:before{content:"";background-color:var(--medium);border-radius:50%;width:8px;height:8px;display:block}.cta-white-text{color:#fff!important}.social-proof{border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);background:linear-gradient(90deg,#fff0,#ffffff80,#fff0);padding:60px 0}.metrics-grid{text-align:center;grid-template-columns:repeat(3,1fr);gap:40px;display:grid}.metric-item .number{color:var(--primary);font-variant-numeric:tabular-nums;margin-bottom:8px;font-family:Fraunces,serif;font-size:2.5rem;display:block}.metric-item .label{color:var(--text-muted);font-size:.95rem;font-weight:500}.features{background-color:var(--surface);padding:80px 0}.section-header{text-align:center;margin-bottom:40px}.section-header h2{margin-bottom:16px;font-size:clamp(2rem,4vw,3rem)}.feature-showcase{aspect-ratio:16/9;border:1px solid var(--border-light);background-color:#0d1f17;border-radius:24px;width:100%;max-width:900px;margin:0 auto 60px;position:relative;overflow:hidden;box-shadow:0 40px 80px -20px #2e7d4f26}.feature-showcase-video{object-fit:cover;width:100%;height:100%;display:block}.carousel-viewport{width:100%;padding:20px 0 60px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)}.carousel-track{-webkit-overflow-scrolling:touch;gap:24px;width:max-content;animation:45s linear infinite marquee;display:flex}.carousel-viewport:hover .carousel-track,.carousel-viewport:active .carousel-track{animation-play-state:paused!important}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-33.3333%)}}.feature-card{background:var(--surface);border:1px solid var(--border-light);box-shadow:var(--shadow-diffusion);transition:transform .4s var(--spring-easing), box-shadow .4s ease;border-radius:24px;flex:0 0 320px;min-width:320px;padding:40px;position:relative;overflow:hidden}.feature-card:after{content:"";pointer-events:none;border:1px solid #ffffff80;border-radius:24px;position:absolute;inset:0}.feature-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -15px #2e7d4f14}.feature-icon{background:var(--light);width:48px;height:48px;color:var(--primary);border-radius:16px;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.feature-icon svg{stroke-width:1.5px;stroke:currentColor;fill:none;width:24px;height:24px}.feature-card h3{margin-bottom:12px;font-family:Inter,sans-serif;font-size:1.25rem}.feature-card p{color:var(--text-muted);font-size:.95rem}.pricing{padding:120px 0}.pricing-grid{grid-template-columns:repeat(3,1fr);align-items:center;gap:32px;display:grid}.pricing-card{background:var(--surface);border:1px solid var(--border-light);box-shadow:var(--shadow-diffusion);transition:transform .4s var(--spring-easing), box-shadow .4s ease;z-index:1;border-radius:32px;padding:48px 40px;position:relative}.pricing-card:hover{z-index:3;transform:translateY(-8px)scale(1.02);box-shadow:0 30px 60px -15px #2e7d4f1f}.pricing-card.pro{border:2px solid var(--primary);z-index:2;transform:scale(1.05);box-shadow:0 40px 80px -20px #2e7d4f26}.pricing-card.pro:hover{transform:translateY(-8px)scale(1.07);box-shadow:0 50px 100px -20px #2e7d4f40}.badge{background:var(--primary);color:#fff;letter-spacing:.05em;text-transform:uppercase;border-radius:100px;padding:4px 16px;font-size:.75rem;font-weight:600;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.plan-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px;font-size:1rem;font-weight:600}.plan-price{color:var(--text-main);align-items:baseline;margin-bottom:32px;font-family:Fraunces,serif;font-size:3rem;display:flex}.plan-price span{color:var(--text-muted);margin-left:8px;font-family:Inter,sans-serif;font-size:1rem}.plan-features{margin-bottom:40px}.plan-features li{color:var(--text-main);align-items:flex-start;gap:12px;margin-bottom:16px;font-size:.95rem;display:flex}.plan-features li svg{width:20px;height:20px;color:var(--primary);flex-shrink:0;margin-top:2px}.pricing-card .btn{width:100%}.pricing-card:not(.pro) .btn{border:1px solid var(--border-light);color:var(--text-main);background:0 0}.pricing-card:not(.pro) .btn:hover{border-color:var(--primary);color:var(--primary)}.pricing-note{text-align:center;color:var(--text-muted);margin-top:40px;font-size:.9rem}.target{background:var(--surface);padding:120px 0}.target-grid{grid-template-columns:1fr 1fr;gap:64px;display:grid}.target-col{background:var(--bg-global);border:1px solid var(--border-light);border-radius:32px;padding:48px}.target-col h3{color:var(--primary);margin-bottom:16px;font-family:Inter,sans-serif;font-size:1.5rem}.target-col p{color:var(--text-muted);font-size:1.1rem}.testimonials{padding:120px 0}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.testimonial-card{background:var(--surface);border:1px solid var(--border-light);box-shadow:var(--shadow-diffusion);border-radius:24px;padding:40px}.testi-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.testi-avatar{width:48px;height:48px;color:var(--text-muted);background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.testi-info h4{color:var(--text-main);font-family:Inter,sans-serif;font-size:1rem}.testi-info span{color:var(--text-muted);font-size:.85rem}.testi-text{color:var(--text-muted);font-size:1rem;font-style:italic}.faq{background:var(--surface);padding:120px 0}.faq-container{max-width:800px;margin:0 auto}.faq-item{border-bottom:1px solid var(--border-light)}.faq-question{text-align:left;width:100%;color:var(--text-main);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:32px 0;font-family:Inter,sans-serif;font-size:1.125rem;font-weight:500;display:flex}.faq-icon{width:24px;height:24px;color:var(--primary);transition:transform .3s}.faq-item.active .faq-icon{transform:rotate(45deg)}.faq-answer{max-height:0;transition:max-height .4s var(--spring-easing), padding .4s ease, opacity .3s ease;opacity:0;overflow:hidden}.faq-item.active .faq-answer{opacity:1;max-height:200px;padding-bottom:32px}.faq-answer p{color:var(--text-muted);max-width:90%}.cta-final{background:var(--primary);color:#fff;text-align:center;padding:120px 0;position:relative;overflow:hidden}.cta-final:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff0d 0%,#0000 60%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.cta-final h2{color:#fff;margin-bottom:24px;max-width:800px;margin-inline:auto;font-size:clamp(2.5rem,5vw,4rem)}.cta-final p{color:#fffc;margin-bottom:48px;max-width:600px;margin-inline:auto;font-size:1.25rem}.cta-note{color:#fff9;margin-top:24px;font-size:.9rem}.footer{color:#888;background:#1a1a1a;padding:60px 0}.footer-content{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:40px;display:flex}.footer-logo{color:#fff;font-family:Fraunces,serif;font-size:1.5rem}.footer-links{gap:32px;display:flex}.footer-links a:hover{color:#fff}.footer-bottom{text-align:center;font-size:.85rem}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;opacity:0;pointer-events:none;background:#0006;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:fixed;inset:0}.modal-overlay.active{opacity:1;pointer-events:all}.modal-card{background:var(--surface);width:100%;max-width:480px;transition:transform .4s var(--spring-easing);border-radius:32px;padding:48px;position:relative;transform:translateY(20px)scale(.95);box-shadow:0 40px 80px #0003}.modal-overlay.active .modal-card{transform:translateY(0)scale(1)}.modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:8px;position:absolute;top:24px;right:24px}.modal-card h3{color:var(--text-main);margin-bottom:32px;font-family:Fraunces,serif;font-size:1.75rem}.form-group{margin-bottom:24px}.form-group label{color:var(--text-main);margin-bottom:8px;font-size:.9rem;font-weight:500;display:block}.form-control{border:1px solid var(--border-light);background:var(--bg-global);width:100%;color:var(--text-main);border-radius:12px;outline:none;padding:16px;font-family:Inter,sans-serif;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2e7d4f1a}.modal-card .btn{width:100%;margin-top:8px}.modal-note{text-align:center;color:var(--text-muted);margin-top:16px;font-size:.85rem}.success-message{text-align:center;padding:20px 0;display:none}.success-message svg{width:64px;height:64px;color:var(--primary);margin-bottom:24px}.success-message h4{margin-bottom:12px;font-family:Fraunces,serif;font-size:1.5rem}.success-message p{color:var(--text-muted)}@media (width<=992px){.target-grid{grid-template-columns:1fr}.hero-content{text-align:center;order:2}.hero-content p{margin:0 auto 40px}.hero-cta{align-items:center}.hero-visual{order:1}.pricing-grid{grid-template-columns:1fr;gap:48px}.pricing-card.pro{transform:scale(1)}.metrics-grid,.features-grid,.testimonials-grid{grid-template-columns:1fr}}@media (width<=768px){.footer-content{flex-direction:column;gap:32px}.hero{padding-top:140px}}.patient-portal{border-top:1px solid var(--border-light);background-color:#f7f9f6;padding:120px 0}.patient-portal-container{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.patient-portal-content h2{margin-bottom:24px;font-size:3rem;line-height:1.1}.patient-portal-subtitle{color:var(--text-muted);max-width:500px;margin-bottom:40px;font-size:1.125rem}.patient-portal-bullets{flex-direction:column;gap:20px;display:flex}.patient-portal-bullets li{align-items:flex-start;gap:16px;font-size:1.05rem;font-weight:500;display:flex}.patient-portal-bullets svg{width:24px;height:24px;color:var(--primary);flex-shrink:0}.patient-portal-mockup{justify-content:center;display:flex}.phone-frame{color:#52a875;letter-spacing:-.02em;background-color:#0d1f17;border:2px solid #2e7d4f;border-radius:40px;justify-content:center;align-items:center;width:375px;height:667px;font-size:1.25rem;font-weight:500;display:flex;position:relative;overflow:hidden;box-shadow:0 40px 80px -20px #2e7d4f33}@media (width<=992px){.patient-portal-container{text-align:center;grid-template-columns:1fr;gap:60px}.patient-portal-subtitle{margin:0 auto 40px}.patient-portal-bullets li{justify-content:center}}html,body{overflow-x:hidden}@media (width<=768px){section{padding:48px 20px!important}.section-header{margin-bottom:32px!important}.btn{justify-content:center;align-items:center;min-height:44px;display:flex}.hero.sticky-hero{justify-content:center!important;align-items:center!important;width:100%!important;height:100svh!important;padding:0!important;display:flex!important;position:sticky!important;top:0!important}.hero-video-bg{object-fit:cover!important;z-index:0!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.hero-overlay{z-index:1!important;background:linear-gradient(#000000b3 0%,#0000004d 50%,#0009 100%)!important;position:absolute!important;inset:0!important}.hero-continue-indicator{z-index:3;color:#fff;opacity:0;pointer-events:none;flex-direction:column;align-items:center;gap:8px;transition:opacity .5s;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.hero-continue-indicator.visible{opacity:1}.hero-continue-indicator svg{width:24px;height:24px;animation:2s infinite bounce}.hero .container{z-index:2!important;text-align:center!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;width:100%!important;padding:0 20px!important;display:flex!important;position:relative!important}.hero-content{flex-direction:column!important;align-items:center!important;gap:16px!important;width:100%!important;display:flex!important}h2{font-size:clamp(1.6rem,5vw,2rem)!important}.hero h1{font-size:clamp(2rem,7vw,3rem)!important}body,p,li{font-size:.95rem!important}.plan-price{font-size:2.2rem!important}.carousel-track{-webkit-overflow-scrolling:touch!important;flex-direction:row!important;gap:16px!important;width:max-content!important;padding:0 20px!important;display:flex!important}.carousel-viewport{touch-action:pan-x;padding:0!important;overflow:hidden!important;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)!important;mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)!important}.feature-card{flex:0 0 280px!important;width:280px!important;min-width:280px!important;max-width:none!important;padding:20px!important}.feature-icon svg{width:40px!important;height:40px!important}.pricing-grid{flex-direction:column!important;gap:24px!important;display:flex!important}.pricing-card{width:100%!important;box-shadow:none!important;border-radius:20px!important;padding:32px 24px!important}.pricing-card.pro,.pricing-card.pro:hover{transform:none!important}.plan-name{font-size:.85rem!important}.plan-features li{font-size:.9rem!important}.navbar{align-items:center!important;height:60px!important;padding:0!important;display:flex!important}.navbar .container{justify-content:space-between!important;align-items:center!important;width:100%!important;padding:0 20px!important;display:flex!important}.logo img{flex-shrink:0;width:auto!important;height:28px!important}.logo-typography{white-space:nowrap;letter-spacing:.15em!important;font-size:12px!important}.navbar .btn{white-space:nowrap;flex-shrink:0;min-height:0!important;padding:8px 14px!important;font-size:12px!important}.modal-card{box-sizing:border-box!important;border-radius:0!important;flex-direction:column!important;justify-content:center!important;width:100vw!important;max-width:100vw!important;height:100svh!important;max-height:100svh!important;margin:0!important;padding:32px 24px!important;display:flex!important;position:fixed!important;inset:0!important;overflow-y:auto!important;transform:none!important}.modal-close{justify-content:center!important;align-items:center!important;width:44px!important;height:44px!important;display:flex!important;top:16px!important;right:16px!important}.footer{padding:48px 20px!important}.footer-content{text-align:center;flex-direction:column!important;align-items:center!important;gap:24px!important}.footer-links{flex-direction:column!important;align-items:center!important;gap:16px!important;display:flex!important}.footer-links a{font-size:12px!important}.footer .logo-typography{font-size:1.2rem!important}.footer-bottom{margin-top:16px!important;font-size:12px!important}.faq-item{padding:16px 0!important}.faq-question{font-size:.95rem!important}.faq-answer{font-size:.9rem!important}.cta-final{padding:60px 24px!important}.cta-final h2{font-size:1.8rem!important}.cta-final p{font-size:.95rem!important}.cta-final .btn{width:100%!important;max-width:320px!important;margin:0 auto!important}.audience-grid{flex-direction:column!important;gap:24px!important;display:flex!important}.patient-portal-container{grid-template-columns:1fr!important}.patient-portal-mockup .phone-frame{aspect-ratio:375/667;max-width:375px;width:100%!important;height:auto!important}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}
