:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius)}:focus:not(:focus-visible){outline:none}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{max-width:var(--container-max);margin:0 auto;padding:0 24px}.section{padding:var(--section-gap) 0}.section-label{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:12px;font-size:.75rem;font-weight:500}.section-title{font-family:var(--font-headline);color:var(--color-text-primary);font-size:clamp(1.8rem,4vw,2.5rem);font-weight:800;line-height:1.15}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.animate-on-scroll{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(32px)}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.animate-on-scroll{opacity:1;transition:none;transform:none}}
