h1,h2,h3,h4{margin-bottom:.6em;color:var(--primary-color)}body,li,ol,p,ul{color:var(--text-dark)}a,h1,h2,h3,h4{color:var(--primary-color)}.top-header,body{background-color:var(--background-white)}.mobile-nav header,.top-header{border-bottom:1px solid var(--border-light)}.download-button:hover,.start-button:hover,.submit-button:hover,a.start-button:hover,button[type=submit]:hover,input[type=submit]:hover{background-color:var(--button-hover);transform:scale(1.03)}:root{--primary-color:#6E54C5;--secondary-color:#B29ADD;--background-white:#FFF;--background-light:#FAFAFD;--background-alt:#F2F0FA;--text-dark:#3A3A3A;--border-light:#DDD;--button-hover:#5B3BA3;--back-button-hover:#CFCFCF;--link-active:#6E54C5;--danger-red:#D9534F;--progress-bar:#9784D8;--progress-bar-stripe:#E0E0E0;--progress-width:0%;--question-button-bg:#F5F9F8;--question-button-hover-bg:#dde4df;--question-button-text:#343A40;--question-button-border:#BBB;--font-sm:1rem;--font-base:1.2rem;--font-lg:1.35rem;--font-xl:1.5rem;--font-xxl:2rem}html{font-size:16px;overflow-y:scroll}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;font-size:var(--font-base);line-height:1.6}h1{font-size:var(--font-xxl)}h2{font-size:var(--font-xl)}h3{font-size:var(--font-lg)}h4{font-size:1.1rem}li,ol,p,ul{font-size:var(--font-base);line-height:1.7}a{text-decoration:none}a:focus,a:hover{color:var(--button-hover);text-decoration:underline}.active-link{color:var(--primary-color)!important;text-decoration:underline!important}.desktop-nav ul li a,.hamburger-menu,.mobile-nav header,.mobile-nav ul li a,.top-header{color:var(--primary-color)}.container{max-width:1000px;margin:2em auto;padding:1.5em;border-radius:10px;box-shadow:0 4px 10px rgba(0,0,0,.05)}.mobile-nav,.top-header{box-shadow:0 2px 4px rgba(0,0,0,.1);width:100%}.top-header{position:relative;padding:1em 0;text-align:center}.header-container{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 1em}.logo-container{display:flex;align-items:center;justify-content:center}.collapsible.active .collapsible-content,.desktop-nav,.logo,.mobile-nav.active{display:block}.logo{height:auto;margin:0 auto}.desktop-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1em}.desktop-nav ul li a{text-decoration:none;font-weight:500;font-size:1.1em;padding:.4em .6em;transition:background-color .2s ease-in-out,color .2s;border-radius:6px}.desktop-nav ul li a:hover,.mobile-nav ul li a:hover{background-color:rgba(110,84,197,.1);color:var(--primary-color)}.homepage-buttons,.mobile-menu-container{text-align:center;margin-top:1em}.hamburger-menu{background:0 0;border:none;font-size:1.8em;cursor:pointer;display:inline-block}.mobile-nav{position:absolute;top:100%;left:0;background-color:var(--background-light);border-top:1px solid var(--border-light);z-index:1000;display:none;transition:.3s}.mobile-nav header{font-size:1.2em;font-weight:600;padding:.5em 1em}.mobile-nav ul{list-style:none;margin:0;padding:0}.mobile-nav ul li{margin:1em 0}.mobile-nav ul li a{text-decoration:none;font-weight:500;font-size:1.2em;padding:.4em .6em;border-radius:6px;transition:background-color .2s,color .2s}.collapsible{position:relative}.collapsible-button{background:0 0;color:inherit;font-weight:600;border:none;padding:.5em 0;width:100%;text-align:left;cursor:pointer}.collapsible-content{display:none;margin:.5em 0 0 1em}.footer-content,.two-column-layout{display:flex;max-width:1200px;margin:0 auto}.flash-message-container{max-width:1000px;margin:1em auto}.flash-message{background-color:var(--primary-color);color:#fff;padding:12px;border-radius:6px;text-align:center;margin-bottom:12px}.main-column,.sidebar-column{border-radius:10px;background-color:var(--background-white)}.fade-out{opacity:0;transition:opacity .5s}.two-column-layout{gap:2em;align-items:stretch;padding:1.5em}.main-column{flex:1;padding:2em;box-shadow:0 4px 10px rgba(0,0,0,.05)}.sidebar-column{flex:0 0 280px;color:var(--primary-color);padding:1.5em;box-shadow:0 2px 5px rgba(0,0,0,.05)}.sidebar-container h2{margin-top:0;color:var(--primary-color)}.sidebar-container ul{list-style:none;margin:1em 0;padding:0}.form-group label,.sidebar-container ul li{margin-bottom:.5em}.sidebar-container ul li a{color:var(--primary-color);font-weight:600;text-decoration:none;transition:color .2s ease-in-out}.sidebar-container ul li a:hover{color:var(--button-hover)}.footer{background-color:var(--background-white);border-top:2px solid var(--primary-color);padding:1em 0;text-align:center;font-size:.9em}.footer-content{padding:0 1em;flex-direction:column;align-items:center;gap:.5em}.social-nav{margin-top:.5em}.social-links{list-style:none;margin:0;padding:0;display:flex;gap:1em}.social-links li a{display:inline-block;transition:transform .2s}.social-links li a:focus,.social-links li a:hover{transform:scale(1.1)}.social-icon{display:block;width:24px;height:24px}.button-container{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.5em;align-items:stretch}.back-button,.download-button,.start-button,.submit-button,a.start-button,button[type=submit],input[type=submit]{padding:.8em 1.5em;font-weight:600;display:inline-block;box-shadow:2px 2px 5px rgba(0,0,0,.05);transition:background-color .2s ease-in-out,transform .1s;font-size:1.1em;cursor:pointer;text-align:center}.back-button,.download-button,.start-button,a.start-button{flex:1;border:none;border-radius:8px;text-decoration:none}.start-button,a.start-button{background-color:var(--primary-color);color:#fff}.start-button:hover,a.start-button:hover{text-decoration:var(--background-light)}.download-button{background-color:var(--secondary-color);color:#fff}.back-button,a.back-button{background-color:var(--border-light);color:var(--text-dark)}.back-button:hover,a.back-button:hover{background-color:var(--back-button-hover);text-decoration:none;transform:scale(1.03)}.submit-button,button[type=submit],input[type=submit]{flex:1;border:none;border-radius:8px;text-decoration:none;background-color:var(--primary-color);color:#fff}.survey-button-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;grid-auto-rows:100px}.survey-button-container .question-button{width:100%;height:100%;box-sizing:border-box}.question-button{font-size:1.1em;font-weight:400;border:1px solid var(--question-button-border);border-radius:4px;cursor:pointer;text-align:center;background-color:var(--question-button-bg);color:var(--question-button-text);white-space:normal;word-wrap:break-word}.question-button:hover{background-color:var(--question-button-hover-bg)}.question-button.active{background-color:var(--primary-color);color:var(--background-light);border-color:var(--primary-color)}.form-group{margin-bottom:1em}.form-group label{font-weight:700;display:block}.form-group input,.form-group textarea{width:100%;font-size:1em;padding:.8em;border:1px solid var(--border-light);border-radius:6px;box-sizing:border-box;transition:border-color .2s ease-in-out}.form-group textarea{min-height:140px;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 0 4px rgba(110,84,197,.2)}.form-error{color:var(--danger-red);font-size:.9em;margin-top:.25em}.progress-bar{width:100%;height:15px;background-color:var(--progress-bar-stripe);border-radius:10px;overflow:hidden;margin:15px 0}.progress{height:100%;background-color:var(--progress-bar);width:var(--progress-width,0%);transition:width .4s ease-in-out}.case-study{padding:1em;border-radius:10px;margin-bottom:1em;background-color:var(--background-light);box-shadow:0 2px 10px rgba(0,0,0,.03);transition:transform .2s ease-in-out}.case-study:hover,.service-card:hover{transform:scale(1.01)}.case-study:nth-of-type(2n){background-color:var(--background-alt)}.case-logo{float:right;max-width:120px;height:auto;margin-left:1em;margin-top:-.5em}.case-study h2{display:flex;align-items:center;gap:.5em;margin-top:0;font-size:1.6em;color:var(--primary-color)}.case-study p,.case-study ul,.service-card p{font-size:1.05em;line-height:1.6;color:var(--text-dark)}.about-team h2,.case-study strong,.service-card h3,.service-section h2,.team-member h3{color:var(--primary-color)}.case-study ul{margin-top:.5em;padding-left:1.2em}.homepage-hero{background-color:var(--background-white);padding:1em;text-align:center;margin-bottom:2em}.homepage-hero h1{font-size:2.4em;margin-bottom:.4em}.homepage-hero .lead{font-size:1.2em;max-width:800px;margin:0 auto;color:var(--text-dark)}.homepage-section{max-width:800px;margin:1em auto;font-size:1.1em;line-height:1.7;color:var(--text-dark);padding:0 1em}.mission-duo{display:flex;flex-direction:column;gap:2rem;margin-top:2rem}.mission-block{background-color:var(--background-alt);padding:1.5rem;border-radius:10px;box-shadow:0 1px 6px rgba(0,0,0,.04)}.service-card,.team-member{background-color:var(--background-light);border-radius:10px;box-shadow:0 1px 6px rgba(0,0,0,.05)}.service-grid{display:grid;grid-template-columns:1fr;gap:1em;margin:1em 0}.service-card{padding:1em;transition:transform .2s}.service-card h3{margin-top:0;font-size:1.25em}.service-section h2{margin-top:1em;font-size:1.8em}.about-intro,.about-values{max-width:900px;margin:1em auto;padding:0 1em;font-size:1.1em;line-height:1.7;color:var(--text-dark)}.about-team{max-width:1000px;margin:2em auto;padding:0 1em}.about-team h2{text-align:center;margin-bottom:1em}.team-grid{display:grid;grid-template-columns:1fr;gap:1em}@media screen and (min-width:768px){.mission-duo{flex-direction:row}.mission-block{flex:1}.service-grid,.team-grid{grid-template-columns:repeat(2,1fr)}}.team-member{padding:1em;text-align:left}.team-member h3{margin-top:0;font-size:1.3em}.team-member p{margin-bottom:.6em;color:var(--text-dark)}@media screen and (max-width:768px){.mobile-menu-container{width:100%;text-align:center;margin-top:1em}.hamburger-menu{display:inline-block}.desktop-nav,.sidebar-column{display:none}.button-container,.two-column-layout{flex-direction:column}.button-container>*{width:100%}}@media screen and (max-width:576px){.logo{width:300px}.survey-button-container{grid-template-columns:1fr}}@media screen and (min-width:577px) and (max-width:992px){.logo{width:400px}.survey-button-container{grid-template-columns:2fr}}@media screen and (min-width:993px) and (max-width:1200px){.logo{width:500px}}@media screen and (min-width:1201px){.logo{width:600px}}