*,*::before,*::after{box-sizing:border-box}
html{background:var(--color-bg);scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:
 radial-gradient(circle at 10% -10%,rgba(218,158,143,.18),transparent 30%),
 radial-gradient(circle at 90% 10%,rgba(201,161,100,.1),transparent 24%),
 var(--color-bg);color:var(--color-text);font-family:var(--font-ui);line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{color:var(--color-text-strong);line-height:1.15}
h1,h2{font-family:var(--font-display);font-weight:500}
:focus-visible{outline:3px solid rgba(199,125,110,.42);outline-offset:3px}
[hidden]{display:none!important}
.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}
.icon{width:1.25rem;height:1.25rem;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.icon--sm{width:1rem;height:1rem}.icon--lg{width:1.6rem;height:1.6rem}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.route-view{opacity:1!important;transform:none!important;animation:none!important}.wave.is-recording span,.voice-transcription-loader__track,.coach-response-loading__spinner{animation:none!important}}
