/* Reset and scaffolding shared by every landing-page version. The look lives in each version's own <style>. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,picture{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit}
button,input{font:inherit;color:inherit}
button{cursor:pointer}
output,[data-rp-bind]{font-variant-numeric:tabular-nums}
.wrap{width:min(100% - 2*var(--gut,24px),var(--max,1296px));margin-inline:auto}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
:focus-visible{outline:2px solid var(--focus,currentColor);outline-offset:3px}

/* Range sliders. Style with custom properties on the input or an ancestor:
   --trk (rail colour) --fill (filled part) --trk-h --thumb --th (thumb size) --th-b (thumb border) --th-r (thumb radius) --th-sh
   rp.js sets --p to the filled percentage. */
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:30px;margin:0;background:transparent;cursor:pointer;--p:50%}
input[type=range]::-webkit-slider-runnable-track{height:var(--trk-h,2px);border-radius:var(--trk-r,99px);background:linear-gradient(to right,var(--fill,currentColor) var(--p),var(--trk,rgba(128,128,128,.3)) var(--p))}
input[type=range]::-moz-range-track{height:var(--trk-h,2px);border-radius:var(--trk-r,99px);background:linear-gradient(to right,var(--fill,currentColor) var(--p),var(--trk,rgba(128,128,128,.3)) var(--p))}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--th,20px);height:var(--th,20px);border-radius:var(--th-r,50%);background:var(--thumb,#fff);border:var(--th-b,1.5px solid currentColor);margin-top:calc((var(--trk-h,2px) - var(--th,20px))/2);box-shadow:var(--th-sh,none)}
input[type=range]::-moz-range-thumb{width:var(--th,20px);height:var(--th,20px);border-radius:var(--th-r,50%);background:var(--thumb,#fff);border:var(--th-b,1.5px solid currentColor);box-shadow:var(--th-sh,none)}

/* list scaffolding from rp.js */
.rp-city__bar{display:block}
.rp-city__bar i{display:block;height:100%;width:var(--w)}
.rp-ticker{overflow:hidden;white-space:nowrap}
.rp-ticker__row{display:inline-flex;gap:var(--tick-gap,44px);padding-right:var(--tick-gap,44px);animation:rp-tick var(--tick-t,70s) linear infinite}
.rp-tick i{font-style:normal}
@keyframes rp-tick{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.rp-ticker__row{animation:none}html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* version switcher: the same on every version, for comparing them. Remove with the × or add ?bare to the URL. */
.rp-switch{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:999;display:flex;align-items:center;gap:1px;padding:4px;border-radius:999px;background:rgba(18,18,18,.9);color:#fff;font:500 12px/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:0;box-shadow:0 8px 28px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.rp-switch a,.rp-switch button{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;text-decoration:none;color:#fff;background:none;border:0;padding:0}
.rp-switch a:hover,.rp-switch button:hover{background:rgba(255,255,255,.16)}
.rp-switch a[aria-current]{background:#fff;color:#121212}
.rp-switch button{opacity:.6;font-size:16px}
@media print{.rp-switch{display:none}}
