*{margin:0;padding:0;box-sizing:border-box}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;font-weight:400;color-scheme:dark;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-bg-primary: #1a1815;--color-bg-secondary: #252220;--color-bg-card: #2d2a27;--color-bg-elevated: #353230;--color-surface: #f5f3f0;--color-surface-muted: #e8e5e0;--color-text-primary: #f5f3f0;--color-text-secondary: #a8a4a0;--color-text-muted: #7a7672;--color-text-dark: #1a1815;--color-accent: #5BA89D;--color-accent-hover: #4A9B8E;--color-accent-light: rgba(91, 168, 157, .15);--color-success: #5BA89D;--color-warning: #f5a623;--color-error: #e74c3c;--color-border: rgba(245, 243, 240, .1);--color-border-subtle: rgba(245, 243, 240, .05);color:var(--color-text-primary);background-color:var(--color-bg-primary)}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:var(--color-bg-primary);color:var(--color-text-primary);width:100%;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}#root{width:100%;min-height:100vh;margin:0;padding:0}a{color:var(--color-text-primary);text-decoration:none}a:hover{color:var(--color-accent)}button{font-family:inherit}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-accent);color:var(--color-text-dark);padding:8px 16px;z-index:10000;font-weight:600;text-decoration:none;border-radius:0 0 4px;transition:top .2s ease}.skip-link:focus{top:0;outline:2px solid var(--color-text-dark);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.provider-card:focus-visible,.service-card:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none}main:focus{outline:none}@media(prefers-contrast:high){.skip-link{background:#000;color:#fff}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #000}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:focus,.sr-only-focusable:active{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px;box-shadow:0 0 0 4px #04d8a74d}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);background:var(--color-accent);color:#000;padding:12px 24px;text-decoration:none;font-weight:600;border-radius:0 0 8px 8px;z-index:10000;transition:top .2s ease}.skip-link:focus{top:0;outline:3px solid #000;outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){:root{--primary-color: #00a67d;--text-color: #000;--background-color: #fff}.nav-button,.cta-button,button{border:2px solid currentColor}a{text-decoration:underline}}@media(forced-colors:active){.nav-button,.cta-button,button{border:2px solid currentColor}a:focus{outline:3px solid Highlight}}.live-region{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:#595959}.loading-spinner[aria-busy=true]:after{content:"Loading...";position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(pointer:coarse){button,a,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}}img{font-style:italic;font-size:.875rem}.service-card-link:focus-visible .service-card,.provider-card:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}input:invalid:not(:placeholder-shown),textarea:invalid:not(:placeholder-shown){border-color:#d32f2f}input:invalid:not(:placeholder-shown):focus,textarea:invalid:not(:placeholder-shown):focus{outline-color:#d32f2f;box-shadow:0 0 0 4px #d32f2f4d}.error-message{color:#d32f2f;font-size:.875rem;margin-top:4px}.required:after{content:" *";color:#d32f2f}.footer-main{background:var(--color-bg-secondary);color:var(--color-text-primary);padding:60px 0 0;margin-top:80px;border-top:1px solid var(--color-border)}.footer-container{max-width:1200px;margin:0 auto;padding:0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:32px;padding-bottom:48px;border-bottom:1px solid var(--color-border)}.footer-brand{max-width:350px}.footer-logo-section{display:flex;align-items:center;gap:0;margin-bottom:16px}.footer-logo{height:48px;width:auto}.footer-brand-name{font-size:28px;font-weight:700;color:var(--color-accent);margin:0}.footer-tagline{font-size:14px;line-height:1.6;color:var(--color-text-secondary);margin:0}.footer-section{display:flex;flex-direction:column}.footer-heading{font-size:16px;font-weight:700;color:var(--color-text-primary);margin:0 0 20px;letter-spacing:.5px}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.footer-links li{margin:0}.footer-links a{color:var(--color-text-secondary);text-decoration:none;font-size:14px;transition:all .2s ease;display:inline-block}.footer-links a:hover{color:var(--color-accent);transform:translate(4px)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:24px 0}.footer-copyright{margin:0;font-size:14px;color:var(--color-text-muted)}.footer-bottom-links{display:flex;align-items:center;gap:20px}.footer-social{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--color-bg-card);color:var(--color-text-secondary);text-decoration:none;transition:all .3s ease;font-size:16px}.footer-social:hover{background:var(--color-accent);color:var(--color-text-dark);transform:translateY(-2px)}.footer-admin-link{font-size:13px;color:var(--color-text-muted);text-decoration:none;padding:6px 12px;border-radius:4px;transition:all .2s ease;opacity:.6}.footer-admin-link:hover{color:var(--color-accent);background:var(--color-accent-light);opacity:1}.footer{background:var(--color-bg-secondary);padding:24px 0;text-align:center;border-top:1px solid var(--color-border);margin-top:60px}.footer-text{margin:0;color:var(--color-text-muted);font-size:14px}@media(max-width:1200px){.footer-grid{grid-template-columns:1fr 1fr 1fr 1fr;gap:32px}.footer-brand{max-width:100%;grid-column:1 / -1}}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{max-width:100%;grid-column:1 / -1}}@media(max-width:768px){.footer-main{padding:40px 0 0;margin-top:60px}.footer-container{padding:0 20px}.footer-grid{grid-template-columns:1fr;gap:32px;padding-bottom:32px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:16px;padding:20px 0}.footer-bottom-links{width:100%;justify-content:center;flex-wrap:wrap}.footer-copyright{text-align:center}}@media(max-width:480px){.footer-logo-section{flex-direction:column;align-items:flex-start}.footer-brand-name{font-size:24px}.footer-heading{font-size:15px}.footer-links a{font-size:13px}}.profile-dropdown{position:relative;display:flex;align-items:center}.profile-trigger{display:flex;align-items:center;gap:.75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:24px;padding:.35rem .75rem .35rem .35rem;cursor:pointer;transition:all .2s}.profile-trigger:hover{background-color:var(--color-bg-elevated);border-color:var(--color-accent)}.profile-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-accent);display:flex;align-items:center;justify-content:center;color:var(--color-text-dark);font-weight:600;font-size:14px;overflow:hidden;flex-shrink:0}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-info{display:flex;align-items:center;gap:.5rem}.profile-name{font-size:.95rem;font-weight:500;color:var(--color-text-primary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-info i{font-size:.75rem;color:var(--color-text-muted);transition:transform .2s}.profile-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 24px #0000004d;min-width:280px;z-index:10000;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-menu-header{display:flex;align-items:center;gap:.75rem;padding:1rem}.profile-menu-avatar{width:48px;height:48px;border-radius:50%;background:var(--color-accent);display:flex;align-items:center;justify-content:center;color:var(--color-text-dark);font-weight:600;font-size:18px;overflow:hidden;flex-shrink:0}.profile-menu-avatar img{width:100%;height:100%;object-fit:cover}.profile-menu-info{flex:1;min-width:0}.profile-menu-name{font-weight:600;font-size:1rem;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-email{font-size:.85rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:.15rem}.profile-menu-divider{height:1px;background:var(--color-border);margin:.5rem 0}.profile-menu-items{padding:.5rem 0}.profile-menu-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--color-text-primary);text-decoration:none;font-size:.95rem;font-weight:500;transition:all .2s;cursor:pointer;border:none;background:none;width:100%;text-align:left}.profile-menu-item:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.profile-menu-item i{width:20px;color:var(--color-text-muted);font-size:1rem}.profile-menu-item:hover i{color:var(--color-accent)}.profile-menu-signout{color:var(--color-error);margin-top:.25rem}.profile-menu-signout:hover{background:#e74c3c1a;color:var(--color-error)}.profile-menu-signout i{color:var(--color-error)}@media(max-width:768px){.profile-name{display:none}.profile-trigger{padding:.35rem}.profile-menu{min-width:260px;right:-8px}}@media(max-width:480px){.profile-menu{position:fixed;right:8px;left:8px;width:auto;min-width:unset}}.header{background-color:var(--color-bg-primary);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 3px #0000004d;width:100%;margin:0;position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--color-border)}.header-left{display:flex;align-items:center;gap:0;text-decoration:none}.logo{height:40px;width:auto;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.brand{color:var(--color-accent);font-size:1.5rem;font-weight:700;letter-spacing:-.5px}.header-nav{display:flex;gap:1rem;align-items:center}.nav-button{color:var(--color-text-primary);background-color:transparent;border:1px solid var(--color-border);padding:.5rem 1.25rem;text-decoration:none;border-radius:24px;font-size:.95rem;font-weight:500;transition:all .2s}.nav-button:hover{background-color:var(--color-bg-secondary);border-color:var(--color-accent);color:var(--color-text-primary)}.nav-button.primary{background:var(--color-accent);color:var(--color-text-dark);border-color:transparent}.nav-button.primary:hover{background:var(--color-accent-hover);transform:translateY(-1px)}@media(max-width:768px){.header{padding:1rem;flex-wrap:wrap}.header-nav{gap:.5rem;flex-wrap:wrap}.nav-button{font-size:.85rem;padding:.4rem 1rem}.brand{font-size:1.25rem}.logo{height:32px}}@media(min-width:769px)and (max-width:1024px){.header{padding:1rem 1.5rem}}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;z-index:1001;position:relative;-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media(max-width:768px){.menu-toggle{display:block}.header-nav{display:none!important}}.hamburger{width:32px;height:26px;position:relative;display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s ease}.hamburger span{display:block;height:3px;width:100%;background-color:var(--color-text-primary);border-radius:2px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;left:0;transform-origin:center}.hamburger span:nth-child(1){top:0}.hamburger span:nth-child(2){top:11.5px}.hamburger span:nth-child(3){top:23px}.menu-toggle.active .hamburger span:nth-child(1){top:11.5px;transform:rotate(45deg);background-color:var(--color-accent)}.menu-toggle.active .hamburger span:nth-child(2){opacity:0;transform:scale(0)}.menu-toggle.active .hamburger span:nth-child(3){top:11.5px;transform:rotate(-45deg);background-color:var(--color-accent)}.mobile-nav{display:none;position:fixed;top:72px;left:0;right:0;background:var(--color-bg-secondary);box-shadow:0 8px 24px #0000004d;z-index:1000;max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.68,-.55,.265,1.55),opacity .3s ease;opacity:0;-webkit-overflow-scrolling:touch;border-bottom:3px solid var(--color-accent)}@media(max-width:768px){.mobile-nav{display:flex;flex-direction:column}}.mobile-nav.active{max-height:500px;overflow-y:auto;opacity:1}.mobile-nav .nav-button{padding:18px 24px;text-decoration:none;color:var(--color-text-primary);font-size:16px;font-weight:500;border-bottom:1px solid var(--color-border);transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:var(--color-accent-light);touch-action:manipulation;display:flex;align-items:center;width:100%;position:relative;background:transparent}.mobile-nav .nav-button:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--color-accent);transition:width .3s ease}.mobile-nav .nav-button:hover:before,.mobile-nav .nav-button:active:before{width:4px}.mobile-nav .nav-button:hover,.mobile-nav .nav-button:active{background-color:var(--color-accent-light);padding-left:32px;color:var(--color-accent)}.mobile-nav .nav-button:first-child{margin-top:8px}.mobile-nav .nav-button:last-of-type:not(.primary){border-bottom:none;margin-bottom:8px}.mobile-nav .nav-button.primary{background:var(--color-accent);color:var(--color-text-dark);font-weight:600;margin:16px;border-radius:12px;text-align:center;border-bottom:none;padding:16px 24px;justify-content:center;box-shadow:0 4px 12px #5ba89d40}.mobile-nav .nav-button.primary:before{display:none}.mobile-nav .nav-button.primary:hover,.mobile-nav .nav-button.primary:active{background:var(--color-accent-hover);padding:16px 24px;transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px #5ba89d59}@media(max-width:768px)and (orientation:landscape){.mobile-nav{top:64px;max-height:calc(100vh - 64px)}.mobile-nav.active{max-height:calc(100vh - 64px)}.mobile-nav .nav-button{padding:14px 24px;font-size:15px}.mobile-nav .nav-button.primary{margin:12px 16px;padding:14px 24px}}@media(max-width:480px){.hamburger{width:30px;height:24px}.hamburger span{height:2.8px}.hamburger span:nth-child(2){top:10.6px}.hamburger span:nth-child(3){top:21.2px}.menu-toggle.active .hamburger span:nth-child(1),.menu-toggle.active .hamburger span:nth-child(3){top:10.6px}.mobile-nav{top:68px}.mobile-nav .nav-button{padding:16px 20px;font-size:15px}.mobile-nav .nav-button.primary{margin:12px;padding:14px 20px}}.menu-toggle:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}.mobile-nav .nav-button:focus{outline:2px solid var(--color-accent);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.hamburger span,.mobile-nav,.mobile-nav .nav-button,.menu-toggle.active .hamburger span{transition:none}}@media(min-width:769px)and (max-width:1024px){.menu-toggle{display:none}.mobile-nav{display:none!important}.header-nav{display:flex!important}}.section-container{max-width:1200px;margin:0 auto;padding:0 24px}.hero-section{padding:120px 24px 100px;background:var(--color-bg-primary);text-align:center}.hero-container{max-width:900px;margin:0 auto}.hero-headline{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;color:var(--color-text-primary);line-height:1.1;letter-spacing:-.02em;margin:0 0 24px}.hero-subheadline{font-size:clamp(1.125rem,2vw,1.375rem);color:var(--color-text-secondary);line-height:1.6;max-width:700px;margin:0 auto 40px}.hero-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.hero-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;font-size:16px;font-weight:600;text-decoration:none;border-radius:8px;transition:all .2s ease}.hero-button.primary{background:var(--color-accent);color:var(--color-text-dark)}.hero-button.primary:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.hero-button.secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.hero-button.secondary:hover{border-color:var(--color-accent);background:var(--color-accent-light)}.services-section{padding:100px 24px;background:var(--color-bg-secondary);border-top:1px solid var(--color-border)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service-card{background:var(--color-bg-card);border-radius:12px;padding:32px 28px;text-align:left;text-decoration:none;color:inherit;transition:all .2s ease;border:1px solid var(--color-border);display:flex;flex-direction:column;gap:12px}.service-card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.service-title{font-size:20px;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.3}.service-description{font-size:15px;color:var(--color-text-secondary);line-height:1.6;margin:0;flex:1}.service-link{font-size:14px;font-weight:600;color:var(--color-accent);margin-top:8px;transition:color .2s ease}.service-card:hover .service-link{color:var(--color-accent-hover)}.value-props-section{padding:100px 24px;background:var(--color-bg-primary);border-top:1px solid var(--color-border)}.value-props-grid{display:flex;flex-direction:column;gap:0;max-width:800px;margin:0 auto}.value-prop-card{padding:32px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:12px;transition:all .2s ease}.value-prop-card:hover{border-color:var(--color-accent)}.value-prop-title{font-size:18px;font-weight:700;color:var(--color-text-primary);margin:0}.value-prop-description{font-size:15px;color:var(--color-text-secondary);line-height:1.6;margin:0;flex:1}.value-prop-link{font-size:14px;font-weight:500;color:var(--color-accent);transition:color .2s ease}.value-prop-card:hover .value-prop-link{color:var(--color-accent-hover)}.providers-section{padding:100px 24px;background:var(--color-bg-secondary);border-top:1px solid var(--color-border)}.section-title{font-size:32px;font-weight:700;color:var(--color-text-primary);text-align:center;margin:0 0 8px}.section-subtitle{font-size:16px;color:var(--color-text-secondary);text-align:center;margin:0 0 48px}.providers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;max-width:900px;margin:0 auto}.provider-card{background:var(--color-bg-card);border-radius:12px;padding:32px;text-decoration:none;color:inherit;transition:all .2s ease;border:1px solid var(--color-border);display:flex;flex-direction:column;justify-content:space-between;gap:20px}.provider-card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.provider-info{display:flex;flex-direction:column;gap:8px}.provider-title{font-size:13px;font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em}.provider-name{font-size:22px;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.3}.provider-description{font-size:15px;color:var(--color-text-secondary);line-height:1.6;margin:0}.provider-location{font-size:14px;color:var(--color-text-muted);margin-top:4px}.provider-link{font-size:14px;font-weight:600;color:var(--color-accent);transition:color .2s ease}.provider-card:hover .provider-link{color:var(--color-accent-hover)}.cta-section{padding:100px 24px;background:var(--color-bg-primary);border-top:1px solid var(--color-border)}.cta-centered{max-width:600px;margin:0 auto;text-align:center}.cta-card{background:var(--color-bg-card);border-radius:12px;padding:40px 32px;text-align:center;border:1px solid var(--color-border)}.cta-title{font-size:22px;font-weight:700;color:var(--color-text-primary);margin:0 0 12px}.cta-description{font-size:15px;color:var(--color-text-secondary);line-height:1.6;margin:0 0 24px}.cta-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;font-size:15px;font-weight:600;text-decoration:none;border-radius:8px;transition:all .2s ease;background:var(--color-accent);color:var(--color-text-dark)}.cta-button:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.cta-button.secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.cta-button.secondary:hover{border-color:var(--color-accent);background:var(--color-accent-light)}.location-bar{padding:24px;background:var(--color-bg-secondary);border-top:1px solid var(--color-border);text-align:center}.location-text{font-size:14px;color:var(--color-text-muted);margin:0}@media(max-width:900px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.hero-section{padding:80px 20px 60px}.hero-headline{font-size:2rem}.hero-subheadline{font-size:1rem}.hero-cta{flex-direction:column;align-items:center}.hero-button{width:100%;max-width:280px}.services-section,.value-props-section,.providers-section,.cta-section{padding:80px 20px}.services-grid,.providers-grid{grid-template-columns:1fr}.section-title{font-size:26px}.service-card,.provider-card,.cta-card{padding:24px 20px}.value-prop-card{padding:24px 0}}.hero-button:focus-visible,.service-card:focus-visible,.value-prop-card:focus-visible,.provider-card:focus-visible,.cta-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.hero-button,.service-card,.value-prop-card,.provider-card,.cta-button{transition:none}.service-card:hover,.provider-card:hover,.cta-button:hover,.hero-button.primary:hover{transform:none}}.auth-container{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;min-height:calc(100vh - 73px);background:var(--color-bg-primary)}.auth-card{background:var(--color-bg-card);border-radius:16px;box-shadow:0 4px 6px #0003,0 10px 40px #0000004d;padding:48px;max-width:440px;width:100%;border:1px solid var(--color-border)}.auth-header{text-align:center;margin-bottom:32px}.auth-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin-bottom:8px}.auth-subtitle{font-size:16px;color:var(--color-text-secondary);line-height:1.5}.security-badge{display:inline-flex;align-items:center;gap:6px;background:var(--color-accent-light);color:var(--color-accent);padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;margin-top:16px}.oauth-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.oauth-button{width:100%;padding:14px 20px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-elevated);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--color-text-primary)}.oauth-button:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-bg-card);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.oauth-button:active:not(:disabled){transform:translateY(0)}.oauth-button:disabled{opacity:.6;cursor:not-allowed}.oauth-button.google{color:var(--color-text-primary)}.oauth-icon{width:20px;height:20px}.info-box{background:var(--color-accent-light);border-left:4px solid var(--color-accent);padding:16px;border-radius:8px;margin-bottom:24px}.info-box-title{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.info-box-text{font-size:13px;color:var(--color-text-secondary);line-height:1.6}.divider{text-align:center;margin:32px 0;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border)}.divider-text{position:relative;background:var(--color-bg-card);padding:0 16px;color:var(--color-text-muted);font-size:14px}.signup-link{text-align:center;font-size:15px;color:var(--color-text-secondary)}.signup-link a{color:var(--color-accent);text-decoration:none;font-weight:600}.signup-link a:hover{text-decoration:underline}.error-message{display:none;padding:16px;background:#e74c3c26;color:var(--color-error);border-radius:8px;margin-bottom:24px;text-align:center;font-weight:500;font-size:14px;border:1px solid rgba(231,76,60,.3)}.error-message.show{display:block}.success-message{display:none;padding:16px;background:var(--color-accent-light);color:var(--color-accent);border-radius:8px;margin-bottom:24px;text-align:center;font-weight:500;font-size:14px;border:1px solid rgba(91,168,157,.3)}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px}.form-group input{width:100%;padding:14px 16px;border:1px solid var(--color-border)!important;border-radius:8px;font-size:16px;transition:all .2s;box-sizing:border-box;background-color:var(--color-bg-elevated)!important;color:var(--color-text-primary)}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:hover,.form-group input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--color-bg-elevated) inset!important;-webkit-text-fill-color:var(--color-text-primary)!important;border:1px solid var(--color-border)!important;transition:background-color 5000s ease-in-out 0s}.form-group input:focus{outline:none;border-color:var(--color-accent)!important;box-shadow:0 0 0 3px #5ba89d26;background-color:var(--color-bg-elevated)!important}.form-footer{display:flex;justify-content:flex-end;margin-bottom:20px}.forgot-link{color:var(--color-accent);font-size:14px;text-decoration:none;font-weight:600}.forgot-link:hover{text-decoration:underline}.submit-button{width:100%;padding:14px 20px;background:var(--color-accent);color:var(--color-text-dark);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.submit-button:disabled{opacity:.6;cursor:not-allowed}.oauth-button[aria-busy=true]:before,.submit-button[aria-busy=true]:before{content:"";display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:8px;animation:spin .8s linear infinite}@media(max-width:768px){.auth-card{padding:32px 24px}.auth-title{font-size:28px}.auth-subtitle{font-size:14px}}.loading-spinner-container{display:flex;align-items:center;justify-content:center;padding:40px}.loading-spinner-container.full-screen{position:fixed;inset:0;background:#1a1815e6;z-index:9999;padding:0}.loading-spinner{position:relative;display:inline-block}.loading-spinner.small{width:30px;height:30px}.loading-spinner.medium{width:50px;height:50px}.loading-spinner.large{width:80px;height:80px}.spinner-ring{position:absolute;top:0;left:0;width:100%;height:100%;border:3px solid transparent;border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.spinner-ring:nth-child(2){border-top-color:#5ba89d99;animation-delay:-.33s}.spinner-ring:nth-child(3){border-top-color:var(--color-accent-hover);animation-delay:-.66s}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.provider-header{background-color:var(--color-bg-secondary);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 3px #0000004d;width:100%;margin:0;border-top:4px solid var(--color-accent);position:sticky;top:0;z-index:1000}.provider-header-left{display:flex;align-items:center;gap:0}.provider-header-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit}.provider-brand{color:var(--color-text-primary);font-size:1.5rem;font-weight:700;letter-spacing:-.5px}.provider-badge{display:inline-block;font-size:.7rem;color:var(--color-accent);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-left:.5rem}.provider-header-nav{display:flex;gap:1.5rem;align-items:center}.provider-nav-button{color:var(--color-text-primary);background-color:var(--color-bg-elevated);border:1px solid var(--color-border);padding:.5rem 1.25rem;text-decoration:none;border-radius:24px;font-size:.95rem;font-weight:500;transition:all .2s}.provider-nav-button:hover{background-color:var(--color-accent);color:var(--color-text-dark);border-color:var(--color-accent)}@media(max-width:768px){.provider-header{padding:.75rem 1rem;flex-wrap:nowrap}.provider-header-left{flex:1;min-width:0}.provider-header-link{flex-wrap:wrap}.provider-header-nav{display:none!important}.provider-brand{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-badge{font-size:.6rem;display:none}.menu-toggle{flex-shrink:0;margin-left:.5rem}}@media(min-width:769px)and (max-width:1024px){.provider-header-nav{display:flex!important}}.provider-restandrestore{--brand-primary: #E8927C;--brand-primary-light: #F4A798;--brand-secondary: #D98B7A;--brand-accent: #C96B5A;--brand-bg-cream: #F5EDE6;--brand-bg-soft: #FDFBF9;--brand-text: #2D2926;--brand-text-secondary: #4A4642;--brand-gradient: linear-gradient(135deg, #F4A798 0%, #C96B5A 100%)}.provider-restandrestore .provider-hero{background:linear-gradient(135deg,#fdfbf9,#f5ede6)}.provider-restandrestore .provider-hero-locations{color:var(--brand-primary)}.provider-restandrestore .rest-restore-logo-section{display:flex;flex-direction:column;align-items:center;margin-bottom:40px;padding:30px;background:var(--brand-bg-soft);border-radius:20px}.provider-restandrestore .rest-restore-logo-section h2{color:var(--brand-text);font-size:28px;margin-top:16px;margin-bottom:8px}.provider-restandrestore .rest-restore-logo-section p{color:var(--brand-text-secondary);font-size:16px}.provider-restandrestore .cta-button{background:var(--brand-gradient)}.provider-restandrestore .cta-button:hover{background:linear-gradient(135deg,#d98b7a,#b85a4a);box-shadow:0 4px 12px #e8927c4d}.provider-restandrestore .cta-button.secondary{background:#fff;color:var(--brand-primary);border:2px solid var(--brand-primary)}.provider-restandrestore .cta-button.secondary:hover{background:#fef7f3}.provider-restandrestore .service-card:hover{box-shadow:0 8px 30px #e8927c26;border-color:var(--brand-primary)}.provider-restandrestore .card-price{color:#8b3d32;background:linear-gradient(135deg,#fef7f3,#fff5ee);font-weight:800}.provider-restandrestore .card-features li:before{color:var(--brand-primary)}.provider-restandrestore .book-button{background:var(--brand-gradient);box-shadow:0 4px 12px #e8927c40}.provider-restandrestore .book-button:hover{background:linear-gradient(135deg,#d98b7a,#b85a4a);box-shadow:0 6px 20px #e8927c59}.provider-restandrestore .provider-page-nav-link.active,.provider-restandrestore .tab-button.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.provider-restandrestore .philosophy-section{background:linear-gradient(135deg,#fdfbf9,#f5ede6)}.provider-restandrestore .philosophy-author{color:var(--brand-primary)}.provider-restandrestore .values-section .value-card,.provider-restandrestore .benefit-card{border-left:4px solid var(--brand-primary)}.provider-restandrestore .contact-section{background:linear-gradient(135deg,#fdfbf9,#f5ede6)}.provider-restandrestore .contact-info-card:hover{box-shadow:0 6px 20px #e8927c26;border-color:var(--brand-primary)}.provider-restandrestore a.contact-value,.provider-restandrestore .contact-value a{color:var(--brand-primary)}.provider-restandrestore a.contact-value:hover,.provider-restandrestore .contact-value a:hover{color:var(--brand-secondary)}.provider-restandrestore .leave-review-button{background:var(--brand-gradient)}.provider-restandrestore .leave-review-button:hover{background:linear-gradient(135deg,#d98b7a,#b85a4a)}.provider-restandrestore .specialization-card:hover{box-shadow:0 2px 4px #00000014,0 8px 24px #e8927c33}.provider-restandrestore .venmo-note{background:linear-gradient(135deg,#fef7f3,#fff5ee);border:2px solid var(--brand-primary-light);border-radius:12px;padding:20px;margin:30px 0;text-align:center}.provider-restandrestore .venmo-note p{color:var(--brand-text);font-size:15px;margin:0}.provider-restandrestore .venmo-note strong{color:#7a3529;font-weight:700}.provider-restandrestore .content-section,.provider-restandrestore .section-title{color:var(--brand-text)}.provider-restandrestore .section-text,.provider-restandrestore .section-description{color:var(--brand-text-secondary)}.provider-restandrestore .specialization-card,.provider-restandrestore .specialization-card h3,.provider-restandrestore .specialization-card-title{color:var(--brand-text)}.provider-restandrestore .specialization-card p,.provider-restandrestore .specialization-card-description{color:var(--brand-text-secondary)}.provider-restandrestore .value-card,.provider-restandrestore .value-card h3,.provider-restandrestore .value-card-title{color:var(--brand-text)}.provider-restandrestore .value-card p,.provider-restandrestore .value-card-description{color:var(--brand-text-secondary)}.provider-restandrestore .philosophy-section p,.provider-restandrestore .philosophy-text,.provider-restandrestore .philosophy-quote,.provider-restandrestore .about-section,.provider-restandrestore .about-content,.provider-restandrestore .about-section h2,.provider-restandrestore .about-section h3{color:var(--brand-text)}.provider-restandrestore .about-section p,.provider-restandrestore .bio-text,.provider-restandrestore .credentials-text,.provider-restandrestore .benefit-card p,.provider-restandrestore .benefit-description{color:var(--brand-text-secondary)}.provider-restandrestore .benefit-card h3,.provider-restandrestore .benefit-title{color:var(--brand-text)}.provider-restandrestore .contact-section p{color:var(--brand-text-secondary)}.provider-restandrestore .contact-section h2,.provider-restandrestore .contact-section h3{color:var(--brand-text)}.provider-restandrestore .contact-label{color:#2d2926}.provider-restandrestore p{color:var(--brand-text-secondary)}.provider-restandrestore h1,.provider-restandrestore h2,.provider-restandrestore h3,.provider-restandrestore h4{color:var(--brand-text)}.provider-restandrestore li{color:var(--brand-text-secondary)}.provider-hero-with-shimmer{position:relative;overflow:hidden}.provider-hero-with-shimmer:before{content:"";position:absolute;top:var(--click-y, 50%);left:var(--click-x, 50%);width:200px;height:200px;margin-top:-100px;margin-left:-100px;background:radial-gradient(circle at center,rgba(91,168,157,.5) 0%,rgba(91,168,157,.3) 10%,transparent 25%);pointer-events:none;opacity:0;z-index:1;transform:scale(0);border-radius:50%}.provider-hero-with-shimmer.wave-active:before{animation:providerBouncingWave 3.5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes providerBouncingWave{0%{transform:scale(0);opacity:0}10%{opacity:1}40%{transform:scale(2.5);opacity:.8}55%{transform:scale(2.2);opacity:.6}70%{transform:scale(2.7);opacity:.4}80%{transform:scale(2.5);opacity:.2}to{transform:scale(3);opacity:0}}.provider-hero-with-shimmer .provider-hero-title,.provider-hero-with-shimmer .provider-hero-subtitle,.provider-hero-with-shimmer .provider-hero-locations{position:relative;z-index:2}.provider-hero{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%);padding:100px 20px 80px;text-align:center}.provider-hero-title{font-size:48px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px}.provider-hero-subtitle{font-size:20px;color:var(--color-text-secondary);max-width:700px;margin:0 auto 12px}.provider-hero-locations{font-size:16px;color:var(--color-accent);font-weight:600}.container{max-width:1200px;margin:0 auto;padding:60px 20px}.provider-content{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin-bottom:60px}.provider-image-section{position:sticky;top:100px}.provider-hero-image{width:100%;border-radius:12px;box-shadow:0 4px 12px #0000004d;margin-bottom:16px}.provider-rating{display:flex;align-items:center;gap:8px;font-size:16px}.rating-stars{color:#fbbc05}.rating-text{color:var(--color-text-primary);font-weight:500}.provider-info-section h2{font-size:32px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.provider-info-section p{font-size:16px;color:var(--color-text-secondary);line-height:1.6;margin-bottom:24px}.provider-cta{display:flex;gap:12px;flex-wrap:wrap}.cta-button{padding:14px 28px;background:var(--color-accent);color:var(--color-text-dark);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none}.cta-button:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #5ba89d4d}.cta-button.secondary{background:transparent;color:var(--color-accent);border:2px solid var(--color-accent)}.cta-button.secondary:hover{background:var(--color-accent-light)}.services-section{margin-bottom:80px}.section-header{text-align:center;margin-bottom:48px}.section-title{font-size:36px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px}.section-subtitle{font-size:18px;color:var(--color-text-secondary);max-width:700px;margin:0 auto}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:32px;margin-bottom:40px;width:100%;max-width:100%}.service-card{background:var(--color-bg-card);border-radius:20px;overflow:hidden;box-shadow:0 2px 12px #00000026;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;height:100%;border:2px solid var(--color-border);max-width:100%;min-width:0}.service-card:hover{box-shadow:0 8px 30px #5ba89d33;transform:translateY(-6px);border-color:var(--color-accent)}.card-image{width:100%;height:220px;object-fit:cover;display:block}.card-content{padding:24px;display:flex;flex-direction:column;flex:1;gap:12px;overflow:hidden;min-width:0}.card-header{display:flex;justify-content:flex-start;align-items:flex-start;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border);min-width:0;min-height:60px}.card-header:has(.card-price){justify-content:space-between}.card-title{font-size:19px;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;min-width:0;flex:1}.card-price{font-size:24px;font-weight:800;color:var(--color-accent);white-space:nowrap;line-height:1;background:var(--color-accent-light);padding:8px 14px;border-radius:8px;flex-shrink:0;align-self:flex-start}.card-sessions{font-size:13px;color:var(--color-text-secondary);font-weight:600;margin:0;display:flex;align-items:center;gap:6px;background:var(--color-bg-elevated);padding:8px 12px;border-radius:6px;width:fit-content}.card-sessions:before{content:"";font-size:14px}.card-description{font-size:14px;color:var(--color-text-secondary);line-height:1.6;margin:0;word-wrap:break-word;overflow-wrap:break-word}.card-section{margin-bottom:16px;margin-top:16px}.card-section-title{font-size:13px;font-weight:700;color:var(--color-text-primary);margin-bottom:12px;letter-spacing:.8px;text-transform:uppercase}.card-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.card-features li{font-size:13px;color:var(--color-text-secondary);padding:10px 12px 10px 36px;position:relative;background:var(--color-bg-elevated);border-radius:8px;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word}.card-features li:before{content:"";position:absolute;left:12px;top:10px;color:var(--color-accent);font-weight:900;font-size:14px}.insurance-note{background:var(--color-accent-light);border-left:4px solid var(--color-accent);padding:16px;border-radius:10px;margin-top:16px;margin-bottom:16px;box-shadow:0 2px 8px #5ba89d1a}.insurance-note-title{font-size:14px;font-weight:700;color:var(--color-text-primary);margin-bottom:6px;display:flex;align-items:center;gap:6px}.insurance-note-text{font-size:13px;color:var(--color-text-secondary);line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.book-button{display:block;width:100%;padding:15px;background:var(--color-accent);color:var(--color-text-dark)!important;text-align:center;text-decoration:none;border-radius:12px;font-size:16px;font-weight:700;border:none;cursor:pointer;transition:all .3s ease;margin-top:auto;box-shadow:0 4px 12px #5ba89d40;letter-spacing:.3px}.book-button:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 6px 20px #5ba89d59}.benefits-section{margin-bottom:80px}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}.benefit-card{text-align:left;padding:24px;background:var(--color-bg-card);border-radius:8px;border-left:4px solid var(--color-accent);box-shadow:0 1px 3px #00000026;transition:all .2s}.benefit-card:hover{box-shadow:0 2px 8px #0003;transform:translateY(-2px)}.benefit-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.benefit-description{font-size:15px;color:var(--color-text-secondary);line-height:1.6}.reviews-section{background:var(--color-bg-secondary);padding:60px 20px;margin-bottom:80px;border-radius:16px;border:1px solid var(--color-border)}.reviews-header{text-align:center;margin-bottom:48px}.reviews-title{font-size:36px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px}.reviews-subtitle{font-size:18px;color:var(--color-text-secondary);margin-bottom:24px}.rating-summary{display:flex;align-items:center;justify-content:center;gap:12px;font-size:20px}.stars{color:#fbbc05;font-size:24px}.review-coming-soon{text-align:center;padding:40px;background:var(--color-bg-card);border-radius:12px;box-shadow:0 2px 4px #00000026;border:1px solid var(--color-border)}.review-coming-soon h3{font-size:24px;color:var(--color-text-primary);margin-bottom:12px}.review-coming-soon p{font-size:16px;color:var(--color-text-secondary);max-width:600px;margin:0 auto 24px}.leave-review-button{display:inline-block;padding:12px 32px;background:var(--color-accent);color:var(--color-text-dark);text-decoration:none;border-radius:8px;font-weight:600;transition:all .2s}.leave-review-button:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.provider-not-found{text-align:center;padding:60px 20px}.provider-not-found h1{font-size:32px;color:var(--color-text-primary);margin-bottom:16px}.provider-not-found p{font-size:16px;color:var(--color-text-secondary)}.provider-page-nav{display:flex;gap:8px;margin-bottom:40px;border-bottom:2px solid var(--color-border)}.provider-page-nav-link{padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;font-size:16px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;margin-bottom:-2px;text-decoration:none}.provider-page-nav-link:hover{color:var(--color-text-primary)}.provider-page-nav-link.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.provider-tabs{display:flex;gap:8px;margin-bottom:40px;border-bottom:2px solid var(--color-border)}.tab-button{padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;font-size:16px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;margin-bottom:-2px}.tab-button:hover{color:var(--color-text-primary)}.tab-button.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.provider-about-section{margin-bottom:60px}.content-section{background:var(--color-bg-card);border-radius:12px;padding:50px;margin-bottom:40px;box-shadow:0 1px 2px #00000026,0 4px 12px #0000001a;border:1px solid var(--color-border)}.content-section .section-title{text-align:left;margin-bottom:24px}.content-section .section-text{font-size:18px;color:var(--color-text-secondary);line-height:1.8;text-align:left;margin-bottom:20px}.specializations-section{margin-bottom:60px}.specializations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:32px}.specialization-card{background:var(--color-bg-card);border-radius:12px;padding:30px;box-shadow:0 1px 2px #00000026,0 4px 12px #0000001a;transition:all .3s ease;border:1px solid var(--color-border)}.specialization-card:hover{transform:translateY(-4px);box-shadow:0 2px 4px #00000026,0 8px 24px #0003;border-color:var(--color-accent)}.specialization-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.specialization-text{font-size:15px;color:var(--color-text-secondary);line-height:1.6}.philosophy-section{background:var(--color-bg-secondary);padding:60px 40px;border-radius:16px;margin-bottom:60px;text-align:center;border:1px solid var(--color-border)}.philosophy-quote{font-size:24px;font-style:italic;color:var(--color-text-primary);line-height:1.6;margin-bottom:20px;max-width:800px;margin-left:auto;margin-right:auto}.philosophy-author{text-align:center;font-size:16px;color:var(--color-accent);font-weight:600}.values-section{margin-bottom:60px}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;margin-top:32px}.values-section .value-card{text-align:left;padding:24px;background:var(--color-bg-card);border-radius:8px;border-left:4px solid var(--color-accent);box-shadow:0 1px 3px #00000026}.values-section .value-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.values-section .value-text{font-size:15px;color:var(--color-text-secondary);line-height:1.6}.coming-soon-section{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:80px 20px}.coming-soon-content{text-align:center;max-width:600px;margin:0 auto}.coming-soon-icon{font-size:80px;margin-bottom:24px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.coming-soon-title{font-size:36px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px}.coming-soon-text{font-size:18px;color:var(--color-text-secondary);line-height:1.7;margin-bottom:40px}.coming-soon-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.contact-section{background:var(--color-bg-secondary);padding:60px 40px;border-radius:20px;margin-top:60px;margin-bottom:60px;border:1px solid var(--color-border)}.contact-note{text-align:center;font-size:16px;color:var(--color-text-secondary);max-width:600px;margin:0 auto 40px}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:32px}.contact-info-card{background:var(--color-bg-card);border-radius:16px;padding:32px;display:flex;align-items:flex-start;gap:20px;box-shadow:0 2px 8px #00000026;transition:all .3s ease;border:2px solid transparent}.contact-info-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #5ba89d33;border-color:var(--color-accent)}.contact-icon{font-size:32px;line-height:1;flex-shrink:0}.contact-details{flex:1;min-width:0}.contact-label{font-size:14px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px}.contact-value{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0;word-wrap:break-word;overflow-wrap:break-word}.contact-value a{color:var(--color-accent);text-decoration:none;transition:color .2s ease}.contact-value a:hover{color:var(--color-accent-hover);text-decoration:underline}a.contact-value{color:var(--color-accent);text-decoration:none;transition:color .2s ease}a.contact-value:hover{color:var(--color-accent-hover);text-decoration:underline}@media(max-width:768px){.provider-hero-title{font-size:32px}.provider-hero-subtitle{font-size:18px}.provider-content{grid-template-columns:1fr;gap:24px}.provider-image-section{position:static}.provider-cta{flex-direction:column}.cta-button{width:100%}.cards-grid,.benefits-grid{grid-template-columns:1fr}.provider-tabs{flex-wrap:wrap}.tab-button{padding:10px 16px;font-size:14px}.content-section{padding:30px 20px}.philosophy-section{padding:40px 20px}.philosophy-quote{font-size:20px}.specializations-grid,.values-grid{grid-template-columns:1fr}.contact-section{padding:40px 20px}.contact-info-grid{grid-template-columns:1fr}.coming-soon-section{padding:60px 20px}.coming-soon-icon{font-size:60px}.coming-soon-title{font-size:28px}.coming-soon-text{font-size:16px}.coming-soon-actions{flex-direction:column}.coming-soon-actions .cta-button{width:100%}}.rest-restore-logo-section{text-align:center;padding:40px 20px 20px;margin-bottom:20px}.rest-restore-logo-section h2{font-size:28px;font-weight:700;color:var(--color-text-primary);margin:16px 0 4px}.rest-restore-logo-section p{font-size:18px;color:var(--color-text-secondary);margin:0}@media(min-width:769px)and (max-width:1024px){.provider-content{gap:32px}.cards-grid{grid-template-columns:repeat(2,1fr)}}.profile-container{flex:1;max-width:800px;margin:0 auto;padding:40px 20px;width:100%}.profile-card{background:var(--color-bg-card);border-radius:16px;box-shadow:0 4px 6px #0003,0 10px 40px #0000004d;padding:32px;margin-bottom:24px;border:1px solid var(--color-border)}.profile-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin-bottom:32px}.profile-section{margin-bottom:32px}.profile-section-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.profile-field{margin-bottom:20px}.profile-field label{display:block;font-size:14px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px}.profile-value{font-size:16px;color:var(--color-text-primary);padding:12px 16px;background:var(--color-bg-elevated);border-radius:8px;border:1px solid var(--color-border)}.profile-id{font-family:monospace;font-size:14px;word-break:break-all}.profile-actions{margin-top:32px;padding-top:32px;border-top:1px solid var(--color-border)}.sign-out-button{padding:12px 24px;background:var(--color-error);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.sign-out-button:hover{background:#c0392b;transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d}@media(max-width:768px){.profile-card{padding:24px}.profile-title{font-size:28px}}.settings-container{flex:1;max-width:800px;margin:0 auto;padding:40px 20px;width:100%}.settings-card{background:var(--color-bg-card);border-radius:16px;box-shadow:0 4px 6px #0003,0 10px 40px #0000004d;padding:32px;margin-bottom:24px;border:1px solid var(--color-border)}.settings-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin-bottom:32px}.settings-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--color-border)}.settings-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.settings-section-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.settings-coming-soon{display:flex;align-items:center;gap:12px;padding:24px;background:var(--color-accent-light);border:1px solid var(--color-accent);border-radius:12px;color:var(--color-text-primary);font-size:16px;line-height:1.6}.settings-coming-soon i{color:var(--color-accent);font-size:24px}.settings-placeholder{color:var(--color-text-secondary);font-size:15px;line-height:1.6;padding:16px;background:var(--color-bg-elevated);border-radius:8px;border:1px solid var(--color-border)}@media(max-width:768px){.settings-card{padding:24px}.settings-title{font-size:28px}.settings-coming-soon{flex-direction:column;text-align:center}}.hero-with-shimmer{position:relative;overflow:hidden}.hero-with-shimmer:before{content:"";position:absolute;top:var(--click-y, 50%);left:var(--click-x, 50%);width:200px;height:200px;margin-top:-100px;margin-left:-100px;background:radial-gradient(circle at center,rgba(255,255,255,.5) 0%,rgba(255,255,255,.3) 10%,transparent 25%);pointer-events:none;opacity:0;z-index:1;transform:scale(0);border-radius:50%}.hero-with-shimmer.wave-active:before{animation:bouncingWave 3.5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes bouncingWave{0%{transform:scale(0);opacity:0}10%{opacity:1}40%{transform:scale(2.5);opacity:.8}55%{transform:scale(2.2);opacity:.6}70%{transform:scale(2.7);opacity:.4}80%{transform:scale(2.5);opacity:.2}to{transform:scale(3);opacity:0}}.hero-with-shimmer .hero-title,.hero-with-shimmer .hero-subtitle{position:relative;z-index:2}.about-hero{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%);color:var(--color-text-primary);padding:100px 20px 80px;text-align:center}.about-hero-title{font-size:48px;font-weight:700;margin-bottom:16px}.about-hero-subtitle{font-size:20px;max-width:700px;margin:0 auto;color:var(--color-text-secondary)}.about-section{background:var(--color-bg-card);border-radius:12px;padding:50px;margin-bottom:40px;box-shadow:0 1px 2px #0003,0 4px 12px #00000026;border:1px solid var(--color-border)}.section-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin-bottom:24px;text-align:center}.section-text{font-size:18px;color:var(--color-text-secondary);line-height:1.8;text-align:center;margin-bottom:20px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:40px}.value-card{background:var(--color-bg-card);border-radius:12px;padding:40px 30px;box-shadow:0 1px 2px #0003,0 4px 12px #00000026;transition:all .3s ease;text-align:center;border:1px solid var(--color-border)}.value-card:hover{transform:translateY(-4px);box-shadow:0 2px 4px #0003,0 8px 24px #00000040;border-color:var(--color-accent)}.value-icon{font-size:48px;margin-bottom:20px}.value-title{font-size:22px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.value-description{font-size:16px;color:var(--color-text-secondary);line-height:1.6}.how-it-works{background:var(--color-bg-secondary);border-radius:12px;padding:50px;margin-bottom:40px;border:1px solid var(--color-border)}.step-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-top:30px}.step{text-align:center}.step-number{display:inline-block;width:60px;height:60px;background:var(--color-accent);color:var(--color-text-dark);border-radius:50%;font-size:24px;font-weight:700;line-height:60px;margin-bottom:16px}.step-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.step-description{font-size:16px;color:var(--color-text-secondary);line-height:1.6}.cta-section{background:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:12px;padding:60px 50px;text-align:center;margin-bottom:40px;border:1px solid var(--color-border)}.cta-title{font-size:36px;font-weight:700;margin-bottom:16px}.cta-text{font-size:18px;margin-bottom:32px;color:var(--color-text-secondary)}.cta-button{display:inline-block;padding:16px 48px;background:var(--color-accent);color:var(--color-text-dark)!important;text-decoration:none;border-radius:50px;font-size:18px;font-weight:700;transition:all .2s;box-shadow:0 4px 12px #5ba89d40;border:2px solid transparent}.cta-button:hover{transform:scale(1.05);box-shadow:0 6px 16px #5ba89d59;background:var(--color-accent-hover)}.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.cta-button.secondary{background:transparent;color:var(--color-text-primary)!important;border:2px solid var(--color-border)}.cta-button.secondary:hover{background:var(--color-accent-light);border-color:var(--color-accent)}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card-link{text-decoration:none;color:inherit;display:block}.service-card{height:100%;display:flex;flex-direction:column;border:2px solid transparent}.service-card:hover{border-color:var(--color-accent)}.provider-name{font-size:14px;color:var(--color-accent);font-weight:600;margin-bottom:12px}.card-cta{margin-top:auto;padding-top:16px;color:var(--color-accent);font-weight:600;font-size:14px}@media(max-width:768px){.about-hero-title{font-size:32px}.about-hero-subtitle{font-size:18px}.about-section{padding:30px 20px}.section-title{font-size:28px}.cards-grid,.services-grid{grid-template-columns:1fr}.how-it-works{padding:30px 20px}.step-container{grid-template-columns:1fr}.cta-section{padding:40px 20px}.cta-title{font-size:28px}}.container{max-width:1000px;margin:0 auto;padding:60px 20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px}.contact-info-section{background:var(--color-bg-card);border-radius:12px;padding:40px;box-shadow:0 1px 2px #0003,0 4px 12px #00000026;height:fit-content;border:1px solid var(--color-border)}.info-title{font-size:28px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.info-text{font-size:16px;color:var(--color-text-secondary);line-height:1.6;margin-bottom:32px}.info-item{display:flex;gap:16px;margin-bottom:24px;align-items:flex-start}.info-icon{font-size:24px;flex-shrink:0}.info-label{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.info-value{font-size:16px;color:var(--color-text-secondary)}.info-link{color:var(--color-accent);text-decoration:none;transition:color .2s}.info-link:hover{color:var(--color-accent-hover);text-decoration:underline}.contact-form-section{background:var(--color-bg-card);border-radius:12px;padding:40px;box-shadow:0 1px 2px #0003,0 4px 12px #00000026;border:1px solid var(--color-border)}.form-title{font-size:28px;font-weight:600;color:var(--color-text-primary);margin-bottom:24px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:var(--color-text-secondary);margin-bottom:8px}.form-input,.form-textarea,select.form-input{width:100%;padding:12px 16px;border:1px solid var(--color-border)!important;border-radius:8px;font-size:16px;font-family:inherit;transition:all .2s;box-sizing:border-box;background-color:var(--color-bg-elevated)!important;color:var(--color-text-primary)}.form-input:-webkit-autofill,.form-input:-webkit-autofill:hover,.form-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--color-bg-elevated) inset!important;-webkit-text-fill-color:var(--color-text-primary)!important;border:1px solid var(--color-border)!important;transition:background-color 5000s ease-in-out 0s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent)!important;box-shadow:0 0 0 3px var(--color-accent-light);background-color:var(--color-bg-elevated)!important}.form-textarea{min-height:120px;resize:vertical;background-color:var(--color-bg-elevated)!important}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.submit-button{width:100%;padding:14px;background:var(--color-accent);color:var(--color-text-dark);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.submit-button:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #5ba89d4d}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-button[aria-busy=true]:before{content:"";display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:8px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.success-message{display:none;background:var(--color-accent);color:var(--color-text-dark);padding:30px;border-radius:12px;text-align:center;margin-bottom:20px;animation:slideDown .5s ease}.success-message.show{display:block}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.checkmark-container{display:inline-block;margin-bottom:16px}.checkmark{width:60px;height:60px;border-radius:50%;display:block;stroke-width:3;stroke:var(--color-text-dark);stroke-miterlimit:10;box-shadow:inset 0 0 0 var(--color-accent);animation:fillCheckmark .4s ease-in-out .4s forwards,scaleCheckmark .3s ease-in-out .9s both;margin:0 auto}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:3;stroke-miterlimit:10;stroke:var(--color-text-dark);fill:none;animation:strokeCheckmark .6s cubic-bezier(.65,0,.45,1) forwards}.checkmark-check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheckmark .3s cubic-bezier(.65,0,.45,1) .8s forwards}@keyframes strokeCheckmark{to{stroke-dashoffset:0}}@keyframes scaleCheckmark{0%,to{transform:none}50%{transform:scale3d(1.1,1.1,1)}}@keyframes fillCheckmark{to{box-shadow:inset 0 0 0 30px var(--color-accent)}}.success-message h3{font-size:24px;margin-bottom:8px}.success-message p{font-size:16px;opacity:.9}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:24px}.contact-info-section,.contact-form-section{padding:30px 20px}}.not-found-container{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%)}.not-found-content{text-align:center;max-width:600px}.not-found-title{font-size:120px;font-weight:700;color:var(--color-accent);margin:0;line-height:1}.not-found-subtitle{font-size:36px;font-weight:600;color:var(--color-text-primary);margin:20px 0 16px}.not-found-text{font-size:18px;color:var(--color-text-secondary);margin-bottom:40px;line-height:1.6}.not-found-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.not-found-button{display:inline-block;padding:14px 32px;border-radius:8px;font-size:16px;font-weight:600;text-decoration:none;transition:all .2s}.not-found-button.primary{background:var(--color-accent);color:var(--color-text-dark)}.not-found-button.primary:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #5ba89d4d}.not-found-button.secondary{background:var(--color-bg-card);color:var(--color-accent);border:2px solid var(--color-accent)}.not-found-button.secondary:hover{background:var(--color-accent);color:var(--color-text-dark)}@media(max-width:768px){.not-found-title{font-size:80px}.not-found-subtitle{font-size:28px}.not-found-text{font-size:16px}.not-found-actions{flex-direction:column}.not-found-button{width:100%}}.legal-page{min-height:100vh;padding:80px 24px;background:var(--color-bg-primary)}.legal-container{max-width:900px;margin:0 auto;background:var(--color-bg-card);padding:60px;border-radius:16px;box-shadow:0 2px 8px #0003;border:1px solid var(--color-border)}.legal-header{margin-bottom:48px;padding-bottom:32px;border-bottom:2px solid var(--color-border)}.legal-title{font-size:42px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px;line-height:1.2}.legal-subtitle{font-size:16px;color:var(--color-text-secondary);margin:0}.legal-update-date{font-size:14px;color:var(--color-text-muted);font-style:italic;margin-top:8px}.legal-alert{background:#f5a6231a;border:2px solid var(--color-warning);border-radius:12px;padding:24px;margin-bottom:40px;display:flex;gap:16px;align-items:flex-start}.legal-alert.warning{background:#f5a6231a;border-color:var(--color-warning)}.legal-alert.info{background:var(--color-accent-light);border-color:var(--color-accent)}.legal-alert.danger{background:#e74c3c1a;border-color:var(--color-error)}.legal-alert-icon{font-size:28px;line-height:1;flex-shrink:0}.legal-alert-content{flex:1}.legal-alert-title{font-size:18px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.legal-alert-text{font-size:15px;color:var(--color-text-secondary);line-height:1.6;margin:0}.legal-section{margin-bottom:48px}.legal-section-title{font-size:28px;font-weight:700;color:var(--color-text-primary);margin-bottom:20px;display:flex;align-items:center;gap:12px}.legal-section-number{color:var(--color-accent);font-weight:800}.legal-subsection-title{font-size:20px;font-weight:600;color:var(--color-text-secondary);margin:24px 0 12px}.legal-text{font-size:16px;line-height:1.8;color:var(--color-text-secondary);margin-bottom:16px}.legal-text:last-child{margin-bottom:0}.legal-text strong{color:var(--color-text-primary);font-weight:600}.legal-list{list-style:none;padding:0;margin:20px 0}.legal-list li{padding:12px 0 12px 32px;font-size:16px;line-height:1.7;color:var(--color-text-secondary);position:relative}.legal-list li:before{content:"•";position:absolute;left:12px;color:var(--color-accent);font-size:20px;font-weight:700}.legal-list.numbered{counter-reset:legal-counter}.legal-list.numbered li:before{content:counter(legal-counter) ".";counter-increment:legal-counter;font-size:16px;font-weight:600}.legal-contact-box{background:var(--color-accent-light);border:2px solid var(--color-accent);border-radius:12px;padding:32px;margin-top:48px;text-align:center}.legal-contact-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:12px}.legal-contact-text{font-size:16px;color:var(--color-text-secondary);line-height:1.6;margin-bottom:24px}.legal-contact-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:var(--color-accent);color:var(--color-text-dark);text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #5ba89d4d}.legal-contact-button:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 6px 20px #5ba89d66}@media(max-width:768px){.legal-page{padding:40px 20px}.legal-container{padding:32px 24px}.legal-title{font-size:32px}.legal-section-title{font-size:24px}.legal-subsection-title{font-size:18px}.legal-text,.legal-list li{font-size:15px}.legal-alert{flex-direction:column}.legal-alert-icon{font-size:24px}}.research-hero{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%);padding:100px 20px 80px;text-align:center}.research-hero .hero-title{font-size:56px;font-weight:700;color:var(--color-text-primary);margin-bottom:20px;letter-spacing:-1px}.research-hero .hero-subtitle{font-size:20px;color:var(--color-text-secondary);max-width:700px;margin:0 auto;line-height:1.6}.research-focus-areas{padding:60px 0;background:var(--color-bg-primary);border-bottom:1px solid var(--color-border)}.research-focus-areas .container{max-width:1200px;margin:0 auto;padding:0 20px}.focus-areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.focus-area{background:var(--color-bg-card);border-radius:16px;padding:32px;border:1px solid var(--color-border);transition:all .3s ease}.focus-area:hover{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:0 12px 40px #0003}.focus-area-icon{width:48px;height:48px;margin-bottom:20px;color:var(--color-accent)}.focus-area-icon svg{width:100%;height:100%}.focus-area-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 12px}.focus-area-description{font-size:15px;color:var(--color-text-secondary);line-height:1.6;margin:0 0 16px}.focus-area-count{font-size:13px;color:var(--color-accent);font-weight:600}.focus-area-exercise{border-top:3px solid #C8B89A;background:#c8b89a14}.focus-area-mobility{border-top:3px solid #8BB5A8;background:#8bb5a814}.focus-area-ai{border-top:3px solid #9B8EC4;background:#9b8ec414}.research-content{padding:60px 0}.research-content .container{max-width:1200px;margin:0 auto;padding:0 20px}.category-filter{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:48px}.category-button{padding:10px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:24px;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.category-button:hover{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-accent)}.category-button.active{background:var(--color-accent);color:var(--color-text-dark);border-color:var(--color-accent)}.articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:32px}.article-card{background:var(--color-bg-card);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:all .3s ease;border:1px solid var(--color-border)}.article-card:hover{transform:translateY(-6px);box-shadow:0 12px 40px #0000004d;border-color:var(--color-accent)}.article-image-wrapper{position:relative;width:100%;padding-top:56.25%;overflow:hidden}.article-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.article-card:hover .article-image{transform:scale(1.05)}.article-category{position:absolute;top:16px;left:16px;padding:6px 12px;border-radius:16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.category-exercise{background:#c8b89a;color:#1a1815}.category-mobility{background:#8bb5a8;color:#1a1815}.category-ai{background:#9b8ec4;color:#fff}.article-content{padding:24px}.article-title{font-size:20px;font-weight:700;color:var(--color-text-primary);margin:0 0 12px;line-height:1.3}.article-excerpt{font-size:14px;color:var(--color-text-secondary);line-height:1.6;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--color-text-muted)}.article-divider{color:var(--color-border)}.no-articles{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}@media(min-width:769px)and (max-width:1024px){.focus-areas-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.research-hero{padding:80px 20px 60px}.research-hero .hero-title{font-size:36px}.research-hero .hero-subtitle{font-size:16px}.focus-areas-grid{grid-template-columns:1fr;gap:20px}.focus-area{padding:24px}.focus-area-title{font-size:20px}.category-filter{gap:8px;padding:0 10px}.category-button{padding:8px 14px;font-size:12px}.articles-grid{grid-template-columns:1fr;gap:24px}.article-content{padding:20px}.article-title{font-size:18px}}.article-page{background:var(--color-bg-primary)}.article-hero{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%);padding:100px 20px 60px}.article-hero-content{max-width:800px;margin:0 auto;text-align:center}.back-link{display:inline-flex;align-items:center;color:var(--color-text-muted);text-decoration:none;font-size:13px;font-weight:500;margin-bottom:48px;transition:color .2s}.back-link:hover{color:var(--color-accent)}.back-link:before{content:"←";margin-right:6px}.article-category-badge{display:inline-block;background:var(--color-accent);color:var(--color-text-dark);padding:6px 16px;border-radius:16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:20px}.article-page-title{font-size:42px;font-weight:700;color:var(--color-text-primary);line-height:1.2;margin:0 0 24px}.article-byline{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--color-text-secondary)}.article-byline-divider{color:var(--color-border)}.article-author-name{color:var(--color-accent);font-weight:500}.article-share-buttons{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px}.share-label{font-size:14px;color:var(--color-text-muted);font-weight:500}.share-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease}.share-button:hover{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-accent);transform:translateY(-2px)}.share-twitter:hover{color:#1da1f2}.share-linkedin:hover{color:#0a66c2}.share-copy:hover{color:var(--color-accent)}.article-hero-image-wrapper{max-width:1000px;margin:-40px auto 0;padding:0 20px}.article-hero-image{width:100%;height:auto;border-radius:16px;box-shadow:0 8px 32px #0000004d}.article-body{max-width:800px;margin:0 auto;padding:60px 20px}.article-body-content{margin-bottom:60px}.article-markdown{font-size:18px;line-height:1.8;color:var(--color-text-secondary)}.article-markdown h1{font-size:32px;font-weight:700;color:var(--color-text-primary);margin:48px 0 24px}.article-markdown h2{font-size:28px;font-weight:700;color:var(--color-text-primary);margin:40px 0 20px}.article-markdown h3{font-size:22px;font-weight:600;color:var(--color-text-primary);margin:32px 0 16px}.article-markdown p{margin:0 0 20px}.article-markdown strong{color:var(--color-text-primary);font-weight:600}.article-markdown em{font-style:italic}.article-markdown ul,.article-markdown ol{margin:0 0 24px;padding-left:24px}.article-markdown li{margin-bottom:12px;padding-left:8px}.article-markdown a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.article-markdown a:hover{color:var(--color-accent-hover)}.article-references{margin-top:48px;padding-top:32px;border-top:1px solid var(--color-border)}.article-references h2{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 20px}.article-references ol{margin:0;padding-left:24px;counter-reset:ref-counter}.article-references li{margin-bottom:16px;font-size:14px;line-height:1.6;color:var(--color-text-secondary)}.article-references li a{color:var(--color-accent);text-decoration:none;transition:color .2s}.article-references li a:hover{color:var(--color-accent-hover);text-decoration:underline}.article-references .ref-journal{color:var(--color-text-muted);font-style:italic}.author-card{background:var(--color-bg-card);border-radius:16px;padding:32px;border:1px solid var(--color-border)}.author-card-title{font-size:18px;font-weight:700;color:var(--color-text-primary);margin:0 0 20px}.author-info{display:flex;gap:20px}.author-details{flex:1}.author-name{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.author-bio{font-size:14px;color:var(--color-text-secondary);line-height:1.6;margin:0 0 20px}.author-cta{display:inline-block;padding:12px 24px;background:var(--color-accent);color:var(--color-text-dark);text-decoration:none;border-radius:8px;font-size:14px;font-weight:600;transition:all .2s}.author-cta:hover{background:var(--color-accent-hover);transform:translateY(-2px)}.related-articles{background:var(--color-bg-secondary);padding:60px 0;border-top:1px solid var(--color-border)}.related-articles-container{max-width:1000px;margin:0 auto;padding:0 20px}.related-title{font-size:28px;font-weight:700;color:var(--color-text-primary);text-align:center;margin:0 0 40px}.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.related-card{background:var(--color-bg-card);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:all .3s ease;border:1px solid var(--color-border)}.related-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0003;border-color:var(--color-accent)}.related-image-wrapper{width:100%;height:180px;overflow:hidden}.related-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.related-card:hover .related-image{transform:scale(1.05)}.related-content{padding:20px}.related-card-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px;line-height:1.3}.related-read-time{font-size:13px;color:var(--color-text-muted)}@media(max-width:768px){.article-hero{padding:80px 20px 40px}.article-page-title{font-size:28px}.article-byline{gap:8px;font-size:13px}.article-hero-image-wrapper{margin-top:-20px}.article-body{padding:40px 20px}.article-markdown{font-size:16px}.article-markdown h1{font-size:26px}.article-markdown h2{font-size:22px}.article-markdown h3{font-size:18px}.author-card{padding:24px}.related-grid{grid-template-columns:1fr}}.learn-hero{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%);padding:100px 20px 60px;text-align:center}.learn-hero-title{font-size:48px;font-weight:700;color:var(--color-text-primary);margin:0 0 16px}.learn-hero-subtitle{font-size:18px;color:var(--color-text-secondary);max-width:500px;margin:0 auto}.learn-modules{background:var(--color-bg-primary);padding:60px 20px}.learn-container{max-width:1000px;margin:0 auto}.learn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.learn-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:28px;text-decoration:none;color:inherit;transition:all .3s ease;display:flex;flex-direction:column;position:relative;overflow:hidden}.learn-card:hover{transform:translateY(-4px);border-color:var(--accent-color, var(--color-accent));box-shadow:0 12px 32px #0000004d}.learn-card-icon{width:48px;height:48px;margin-bottom:20px}.learn-card-icon svg,.module-svg-icon{width:100%;height:100%;transition:transform .2s ease}.learn-card:hover .module-svg-icon{transform:scale(1.1)}.learn-card-title{font-size:22px;font-weight:700;color:var(--color-text-primary);margin:0 0 12px;line-height:1.3}.learn-card-description{font-size:14px;color:var(--color-text-secondary);line-height:1.6;margin:0 0 20px;flex-grow:1}.learn-card-meta{display:flex;gap:16px;margin-bottom:16px;font-size:13px;color:var(--color-text-muted)}.learn-card-sections:before{content:"";display:inline-block;width:4px;height:4px;background:var(--color-text-muted);border-radius:50%;margin-right:8px;vertical-align:middle}.learn-card-time:before{content:"";display:inline-block;width:4px;height:4px;background:var(--color-text-muted);border-radius:50%;margin-right:8px;vertical-align:middle}.learn-card-progress{height:4px;background:var(--color-bg-elevated);border-radius:2px;margin-bottom:16px;overflow:hidden}.learn-card-progress-bar{height:100%;border-radius:2px;transition:width .3s ease}.learn-card-cta{font-size:14px;font-weight:600;color:var(--accent-color, var(--color-accent));display:flex;align-items:center;gap:8px}.learn-card-arrow{transition:transform .2s ease}.learn-card:hover .learn-card-arrow{transform:translate(4px)}.learn-footer{background:var(--color-bg-secondary);padding:32px 20px;text-align:center;border-top:1px solid var(--color-border)}.learn-footer-text{font-size:13px;color:var(--color-text-muted);margin:0}@media(max-width:768px){.learn-hero{padding:80px 20px 40px}.learn-hero-title{font-size:32px}.learn-hero-subtitle{font-size:16px}.learn-grid{grid-template-columns:1fr;gap:20px}.learn-card{padding:24px}.learn-card-title{font-size:20px}}.workspace-topbar{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);flex-shrink:0}.topbar-brand{color:var(--color-text-primary);font-weight:700;font-size:16px;text-decoration:none;letter-spacing:.5px}.topbar-title{color:var(--color-text-secondary);font-size:13px}.topbar-user{display:flex;align-items:center;gap:12px}.topbar-avatar{width:26px;height:26px;border-radius:50%;background:var(--color-bg-elevated);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.topbar-exit{color:var(--color-text-muted);text-decoration:none;font-size:13px}.topbar-exit:hover{color:var(--color-text-secondary)}.filetree{display:flex;flex-direction:column;height:100%;overflow:hidden}.filetree-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--color-border);flex-shrink:0}.filetree-header-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.filetree-header-actions{display:flex;gap:4px}.filetree-header-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:2px 6px;border-radius:3px;font-size:12px;line-height:1}.filetree-header-btn:hover{color:var(--color-text-secondary);border-color:var(--color-border);background:var(--color-bg-elevated)}.filetree-list{flex:1;overflow-y:auto;padding:4px 0}.filetree-empty{padding:24px 16px;text-align:center;color:var(--color-text-muted);font-size:13px}.filetree-item{display:flex;align-items:center;padding:4px 8px;cursor:pointer;font-size:13px;color:var(--color-text-secondary);position:relative;-webkit-user-select:none;user-select:none}.filetree-item:hover{background:var(--color-bg-elevated)}.filetree-item.selected{background:var(--color-accent-light);color:var(--color-text-primary)}.filetree-item-icon{width:16px;flex-shrink:0;font-size:10px;color:var(--color-text-muted);text-align:center}.filetree-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:4px}.filetree-item-input{flex:1;background:var(--color-bg-elevated);border:1px solid var(--color-accent);color:var(--color-text-primary);font-size:13px;padding:1px 4px;margin-left:4px;border-radius:2px;outline:none}.filetree-item-delete{opacity:0;background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:14px;padding:0 4px;line-height:1}.filetree-item:hover .filetree-item-delete{opacity:1}.filetree-item-delete:hover{color:var(--color-error)}.editor{display:flex;flex-direction:column;height:100%;overflow:hidden}.editor-toolbar{display:flex;align-items:center;gap:2px;padding:6px 12px;border-bottom:1px solid var(--color-border);flex-shrink:0;background:var(--color-bg-secondary)}.editor-toolbar-btn{background:none;border:1px solid transparent;color:var(--color-text-muted);cursor:pointer;padding:4px 8px;border-radius:3px;font-size:13px;font-weight:500;line-height:1}.editor-toolbar-btn:hover{color:var(--color-text-secondary);background:var(--color-bg-elevated)}.editor-toolbar-btn.active{color:var(--color-accent);background:var(--color-accent-light)}.editor-content-wrapper{flex:1;overflow-y:auto;padding:24px 32px}.editor-content .tiptap{outline:none;min-height:100%;color:var(--color-text-secondary);font-size:15px;line-height:1.7}.editor-content .tiptap h1{color:var(--color-text-primary);font-size:28px;font-weight:700;margin:24px 0 12px;line-height:1.3}.editor-content .tiptap h2{color:var(--color-text-primary);font-size:22px;font-weight:600;margin:20px 0 10px;line-height:1.3}.editor-content .tiptap h3{color:var(--color-text-primary);font-size:18px;font-weight:600;margin:16px 0 8px;line-height:1.3}.editor-content .tiptap p{margin:0 0 8px}.editor-content .tiptap ul,.editor-content .tiptap ol{padding-left:24px;margin:0 0 8px}.editor-content .tiptap code{background:var(--color-bg-elevated);padding:2px 6px;border-radius:3px;font-size:13px;color:var(--color-accent)}.editor-content .tiptap pre{background:var(--color-bg-card);padding:16px;border-radius:6px;overflow-x:auto;margin:8px 0}.editor-content .tiptap pre code{background:none;padding:0;color:var(--color-text-secondary)}.editor-content .tiptap .is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--color-text-muted);float:left;height:0;pointer-events:none}.editor-saving{position:absolute;bottom:12px;right:12px;font-size:11px;color:var(--color-text-muted);background:var(--color-bg-card);padding:4px 8px;border-radius:4px}.editor-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:14px}.chat-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-panel-header{display:flex;align-items:center;padding:8px 12px;border-bottom:1px solid var(--color-border);flex-shrink:0}.chat-panel-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.chat-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.chat-empty{text-align:center;color:var(--color-text-muted);font-size:13px;padding:32px 16px}.chat-loading{color:var(--color-text-muted);font-size:13px;font-style:italic;padding:4px 0}.chat-message{display:flex;flex-direction:column;gap:4px}.chat-message-role{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px}.chat-message-content{font-size:13px;line-height:1.6;color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word}.chat-message-user .chat-message-content{color:var(--color-text-primary)}.chat-message-assistant .chat-message-content{color:var(--color-text-secondary)}.chat-input-area{padding:12px;border-top:1px solid var(--color-border);flex-shrink:0}.chat-context-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-muted);cursor:pointer;margin-bottom:8px;-webkit-user-select:none;user-select:none}.chat-context-toggle input[type=checkbox]{accent-color:var(--color-accent)}.chat-input-row{display:flex;gap:8px;align-items:flex-end}.chat-input{flex:1;background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:13px;padding:8px 10px;border-radius:6px;resize:none;outline:none;font-family:inherit;line-height:1.4}.chat-input:focus{border-color:var(--color-accent)}.chat-input::placeholder{color:var(--color-text-muted)}.chat-send-btn{background:var(--color-accent);border:none;color:var(--color-text-primary);cursor:pointer;padding:8px 12px;border-radius:6px;font-size:16px;line-height:1;flex-shrink:0}.chat-send-btn:hover{background:var(--color-accent-hover)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.workspace{display:flex;flex-direction:column;height:100vh;background:var(--color-bg-primary);color:var(--color-text-primary);overflow:hidden}.workspace-panels{display:flex;flex:1;overflow:hidden}.workspace-panel{overflow:hidden;display:flex;flex-direction:column}.workspace-panel-filetree{flex-shrink:0;background:var(--color-bg-secondary);border-right:1px solid var(--color-border)}.workspace-panel-editor{flex:1;min-width:0;background:var(--color-bg-primary)}.workspace-panel-chat{flex-shrink:0;background:var(--color-bg-secondary);border-left:1px solid var(--color-border)}.workspace-resize-handle{width:4px;cursor:col-resize;background:transparent;transition:background .15s;flex-shrink:0}.workspace-resize-handle:hover,.workspace-resize-handle.active{background:var(--color-accent)}.workspace-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--color-bg-primary);color:var(--color-text-secondary);font-size:14px}.error-boundary{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--color-bg-secondary)}.error-boundary-content{text-align:center;max-width:600px}.error-boundary-title{font-size:36px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px}.error-boundary-text{font-size:18px;color:var(--color-text-secondary);margin-bottom:40px;line-height:1.6}.error-boundary-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.error-boundary-button{display:inline-block;padding:14px 32px;border-radius:8px;font-size:16px;font-weight:600;text-decoration:none;transition:all .2s;border:none;cursor:pointer;background:linear-gradient(135deg,var(--color-accent) 0%,#7dc4b8 100%);color:#fff}.error-boundary-button:hover{background:linear-gradient(135deg,var(--color-accent-hover) 0%,#6bb3a7 100%);transform:translateY(-2px);box-shadow:0 4px 12px #5ba89d4d}.error-boundary-button.secondary{background:transparent;color:var(--color-accent);border:2px solid var(--color-accent)}.error-boundary-button.secondary:hover{background:var(--color-accent);color:#fff}.error-boundary-details{margin-top:40px;text-align:left;background:var(--color-bg-card);padding:20px;border-radius:8px;border:1px solid var(--color-border)}.error-boundary-details summary{cursor:pointer;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.error-boundary-details pre{font-size:12px;color:var(--color-text-secondary);overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}@media(max-width:768px){.error-boundary-title{font-size:28px}.error-boundary-text{font-size:16px}.error-boundary-actions{flex-direction:column}.error-boundary-button{width:100%}}
