@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");*{box-sizing:border-box;padding:0;margin:0}*,html{font-family:Roboto,sans-serif}html{font-size:16px;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;scroll-snap-type:y mandatory;overflow-y:scroll;scroll-padding-top:clamp(80px,10vh,100px)}@media (max-width:639px){html{font-size:clamp(14px,3.5vw,16px);scroll-padding-top:clamp(60px,8vh,80px)}}:root{--color-primary:#5b6b8c;--color-primary-dark:#4a5568;--color-primary-light:#718096;--color-secondary:#6b8c9d;--color-secondary-dark:#5a7a8a;--color-accent:#7c8ba3;--color-accent-light:#8b9bb3;--color-gradient-start:#f7f8fa;--color-gradient-end:#f1f3f5;--color-text-dark:#2d3748;--color-text-medium:#4a5568;--color-text-light:#718096;--color-bg-light:#f7f8fa;--color-bg-warm:#fafbfc;--color-bg-mauve:#d7ced2;--color-white:#fff;--color-border:#e2e8f0;--color-purple:#5b6b8c;--color-teal:#6b8c9d;--color-pink:#7c8ba3}body{max-width:100vw;overflow-x:hidden;font-family:Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.75;color:var(--color-text-medium);background-color:var(--color-bg-mauve);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);font-feature-settings:"kern" 1;text-rendering:optimizeLegibility;font-size:1rem}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif;font-weight:600;line-height:1.3;margin-bottom:1.5rem;color:var(--color-text-dark);letter-spacing:-.01em}h1{font-weight:700;letter-spacing:-.02em;line-height:1.2}h2{letter-spacing:-.015em;line-height:1.3}h2,h3{font-weight:600}h3{letter-spacing:-.01em;line-height:1.35}p{margin-bottom:1.25rem;line-height:1.8;font-size:1.0625rem;color:var(--color-text-medium);font-family:Roboto,sans-serif}ol,ul{margin-bottom:1rem}img{max-width:100%;height:auto;display:block}a,button,input[type=button],input[type=submit]{min-height:44px;min-width:44px;touch-action:manipulation}input,select,textarea{font-size:16px;text-transform:none}@media (max-width:480px){input,select,textarea{font-size:16px}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.skip-link{position:absolute;left:-9999px;top:1rem;z-index:9999;background-color:var(--color-primary);color:var(--color-white);padding:.75rem 1.5rem;border-radius:4px;text-decoration:none;font-weight:600;font-size:1rem;transition:left .3s ease}.skip-link:focus{left:1rem}html{scroll-behavior:smooth}.animate-out{opacity:0;transform:translateY(30px)}.animate-in{animation:fadeInUp .8s ease-out forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-in,.animate-out{opacity:1;transform:none;animation:none!important}}.scrollCue{position:relative;left:auto;bottom:auto;transform:none;background:transparent;border:0;padding:0;cursor:pointer;z-index:100;color:var(--color-text-dark);text-align:center;margin-top:clamp(-6rem,-6vw,-4rem);margin-bottom:clamp(3rem,6vw,5rem)}@media (max-width:639px){.scrollCue{margin-top:clamp(-1rem,-2vw,-.5rem);margin-bottom:clamp(3rem,6vw,5rem)}}.scrollCueLabel{font-size:14px;letter-spacing:.1em;color:var(--color-text-dark);font-weight:400;text-decoration:underline;text-underline-offset:4px;transition:opacity .3s ease}.scrollCue:hover .scrollCueLabel{opacity:.7}.aboutImages .aboutMainImage,.aboutImages img.aboutMainImage{width:clamp(400px,40vw,480px);height:clamp(450px,45vw,540px);max-width:100%;object-fit:cover}@media (max-width:639px){.aboutImages .aboutMainImage,.aboutImages img.aboutMainImage{width:100%;max-width:clamp(240px,65vw,280px);height:auto;aspect-ratio:8/9}}