*,*::before,*::after{box-sizing:border-box}
:where(h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol){margin:0;padding:0}
:where(ul,ol){list-style:none}
:where(img,picture,video,svg){display:block;max-width:100%;height:auto}
:where(button,input,select,textarea){font:inherit;color:inherit}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--sol-bg);color:var(--sol-ink);font-family:var(--sol-font-ui);font-weight:400;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
:where(h1,h2,h3){font-family:var(--sol-font-display);font-weight:300;line-height:1.04;letter-spacing:-.005em}
.sol-display-xl{font-family:var(--sol-font-display);font-weight:300;font-size:clamp(2.9rem,7.4vw,6.4rem);line-height:1.02}
.sol-display-l{font-family:var(--sol-font-display);font-weight:300;font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.06}
.sol-display-m{font-family:var(--sol-font-display);font-weight:300;font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.1}
.sol-display-xl em,.sol-display-l em,.sol-display-m em{font-style:italic;line-height:1.14;display:inline-block;padding-bottom:.06em}
.sol-lede{font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.65;color:var(--sol-muted);max-width:var(--sol-measure)}
.sol-body{max-width:var(--sol-measure)}
.sol-label{font-size:12px;font-weight:500;letter-spacing:var(--sol-track);text-transform:uppercase;color:var(--sol-muted)}
.sol-muted{color:var(--sol-muted)}
a{color:inherit;text-decoration:none}
.sol-link{border-bottom:1px solid var(--sol-lavender);padding-bottom:2px;transition:border-color var(--sol-dur-fast) var(--sol-ease)}
.sol-link:hover{border-bottom-color:var(--sol-accent)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--sol-accent);outline-offset:3px}
.sol-wrap{width:100%;max-width:var(--sol-max);margin-inline:auto;padding-inline:var(--sol-gutter)}
.sol-section{padding-block:var(--sol-space-xxl)}
.sol-rule{height:1px;background:var(--sol-line);border:0;margin:0}
.sol-btn{display:inline-flex;align-items:center;gap:10px;background:var(--sol-accent);color:var(--sol-bg);border:1px solid var(--sol-accent);border-radius:var(--sol-radius);font-family:var(--sol-font-ui);font-weight:500;font-size:12px;letter-spacing:var(--sol-track);text-transform:uppercase;padding:16px 30px;cursor:pointer;transition:opacity var(--sol-dur-fast) var(--sol-ease)}
.sol-btn__arrow{display:inline-block;transition:transform var(--sol-dur-fast) var(--sol-ease)}
.sol-btn:hover .sol-btn__arrow{transform:translateX(4px)}
.sol-btn--ghost{background:transparent;color:var(--sol-accent)}
.sol-btn--onDark{background:var(--sol-bg);color:var(--sol-accent);border-color:var(--sol-bg)}
.sol-btn--ghostOnDark{background:transparent;color:var(--sol-bg);border-color:var(--sol-bg)}
.sol-btn[disabled]{opacity:.45;cursor:not-allowed}
.sol-field{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid var(--sol-line);border-radius:0;padding:10px 0;transition:border-color var(--sol-dur-fast) var(--sol-ease)}
.sol-field:focus{outline:none;border-bottom-color:var(--sol-accent)}
.sol-field::placeholder{color:var(--sol-muted);opacity:.7}
.sol-field-label{display:block;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sol-muted);margin-bottom:6px}
.sol-badge{display:inline-block;background:var(--sol-signal);color:var(--sol-bg);border-radius:var(--sol-radius);font-size:10px;font-weight:500;letter-spacing:var(--sol-track);text-transform:uppercase;padding:5px 9px}
.sol-swatch{width:22px;height:22px;border-radius:999px;border:1px solid var(--sol-line);padding:0;cursor:pointer;background-clip:padding-box}
.sol-swatch[aria-pressed="true"]{box-shadow:0 0 0 1px var(--sol-accent),0 0 0 4px var(--sol-bg)}
.sol-skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--sol-accent);color:var(--sol-bg);padding:12px 20px}
.sol-skip:focus{left:12px;top:12px}
.sol-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sol-ph{background:var(--sol-mist);border-radius:var(--sol-radius)}
.js .sol-reveal{opacity:0;transform:translateY(22px)}
.js .sol-reveal.is-in{opacity:1;transform:none;transition:opacity var(--sol-dur-slow) var(--sol-ease),transform var(--sol-dur-slow) var(--sol-ease)}
@media (prefers-reduced-motion:reduce){.js .sol-reveal{opacity:1;transform:none}*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}
