/* Optional webfont; all pages remain usable offline with the system fallback. */
@import url('https://fonts.googleapis.com/css2?family=Albert+Sans:wght@400;500;600;700&display=swap');
*,*::before,*::after{box-sizing:border-box}
html{font-family:var(--font-body);font-size:100%;line-height:var(--line-height);letter-spacing:var(--letter-spacing);font-weight:var(--weight-regular);color:var(--fg);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums;caret-color:var(--brand-primary-border)}
::selection{background:var(--brand-primary-muted);color:var(--fg)}
body{margin:0} h1,h2,h3,h4,h5,h6,p,figure{margin:0} h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semibold);overflow-wrap:anywhere;text-wrap:balance}
h1{font-size:var(--text-2xl);line-height:var(--line-height-tight);font-weight:var(--weight-medium);letter-spacing:var(--letter-spacing-tight)}
h2{font-size:var(--text-lg);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-snug)}h3{font-size:var(--text-body-lg);line-height:var(--line-height-compact);letter-spacing:var(--letter-spacing-snug)}h4{font-size:var(--text-md);line-height:var(--line-height-normal)}
a{color:var(--fg);font-weight:var(--weight-medium);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;text-decoration-color:var(--border-strong);transition:text-decoration-color var(--motion-fast) var(--ease)}a:hover{color:var(--fg);text-decoration-color:currentColor}
button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}
img,svg{max-width:100%;vertical-align:middle}img{height:auto}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:var(--focus-offset)}
[hidden]{display:none!important}button svg,.icon{width:1.25rem;height:1.25rem;flex:none}svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.muted{color:var(--fg-muted)}.secondary{color:var(--fg-secondary)}.small{font-size:var(--text-sm);line-height:var(--line-height-normal)}
.text-label,.eyebrow{font:var(--weight-semibold) var(--text-xs)/var(--line-height-normal) var(--font-body);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.eyebrow{color:var(--fg-muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:100;background:var(--bg-surface);padding:var(--space-3);border-radius:var(--radius-sm);transform:translateY(-200%)}.skip-link:focus{transform:none}
.num{font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Shared text styles. Product ramp: 3xl 56 · 2xl 40 · xl 28 · lg 22 · body-lg 18 · md 16 · ui 15 · sm 13 · xs 12. */
.text-xs{font-size:var(--text-xs);line-height:var(--line-height-compact)}
.text-sm{font-size:var(--text-sm);line-height:var(--line-height-normal)}
.text-ui{font-size:var(--text-ui);line-height:var(--line-height-compact)}
.text-md{font-size:var(--text-md);line-height:var(--line-height-normal)}
.text-body-lg{font-size:var(--text-body-lg);line-height:var(--line-height-compact)}
.text-lg{font-size:var(--text-lg);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-snug)}
.text-xl{font-size:var(--text-xl);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-snug)}
.text-2xl{font-size:var(--text-2xl);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}
.text-3xl{font-size:var(--text-3xl);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}
/* Display sizes: review hub and showcase only. */
.text-4xl,.text-5xl,.text-6xl,.text-7xl,.text-8xl{line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}
.text-4xl{font-size:var(--text-4xl)}.text-5xl{font-size:var(--text-5xl)}.text-6xl{font-size:var(--text-6xl)}.text-7xl{font-size:var(--text-7xl)}.text-8xl{font-size:var(--text-8xl)}
.font-regular{font-weight:var(--weight-regular)}.font-medium{font-weight:var(--weight-medium)}.font-semibold{font-weight:var(--weight-semibold)}.font-bold,strong,b{font-weight:var(--weight-bold)}
.leading-tight{line-height:var(--line-height-tight)}.leading-snug{line-height:var(--line-height-snug)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}
code,kbd,samp,pre{font-family:var(--font-mono);font-size:inherit}

/* Phosphor SVGs use filled paths, including regular outlines and duotone layers. */
svg.ph-icon{fill:currentColor;stroke:none}
