@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;800&display=swap'); :root{--yellow: #A8E6CF;--yellow-bright: #6FD3A8;--bg: #F4FBF8;--ink: #171717;--ink-2: #737373;--ink-2-strong: #5f5f5f;--dark: #163B32;--line: #DCEFE6;--white: #FFFFFF;--on-dark-2: #A9C9BE;--danger: #b42318;--font-body: "Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display: "Inter","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--step--1: clamp(0.875rem,0.85rem + 0.1vw,0.9375rem);--step-0: clamp(1rem,0.96rem + 0.2vw,1.0625rem);--step-1: clamp(1.1875rem,1.1rem + 0.4vw,1.375rem);--step-2: clamp(1.5rem,1.3rem + 0.9vw,2rem);--step-3: clamp(2rem,1.6rem + 2vw,3.25rem);--step-4: clamp(2.75rem,1.9rem + 4.4vw,5.75rem);--s-1: 0.25rem;--s-2: 0.5rem;--s-3: 0.75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4rem;--s-9: 6rem;--s-10: 8rem;--section: clamp(4rem,3rem + 5vw,8rem);--gutter: clamp(1rem,0.6rem + 2vw,2.5rem);--max: 76rem;--radius-s: 6px;--radius-m: 10px;--ease: cubic-bezier(0.2,0.7,0.2,1);--t-fast: 160ms;--t: 240ms;--t-slow: 600ms;--header-h: 4.25rem}
*,*::before,*::after{box-sizing: border-box}
html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: calc(var(--header-h) + 1rem)}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior: smooth}
}
body{margin: 0;background: var(--bg);color: var(--ink);font-family: var(--font-body);font-size: var(--step-0);line-height: 1.6;font-feature-settings: "cv11","ss01";-webkit-font-smoothing: antialiased;overflow-x: hidden}
img,svg{display: block;max-width: 100%}
[hidden]{display: none !important}
h1,h2,h3,h4{font-family: var(--font-display);font-weight: 800;line-height: 1.02;letter-spacing: -0.035em;margin: 0;text-wrap: balance}
h3{font-weight: 700;letter-spacing: -0.02em;line-height: 1.15;font-size: var(--step-1)}
p{margin: 0;text-wrap: pretty}
a{color: inherit}
button,input,select,textarea{font: inherit;color: inherit}
::selection{background: var(--yellow);color: var(--ink)}
:focus-visible{outline: 3px solid var(--ink);outline-offset: 3px;border-radius: 2px}
.on-dark :focus-visible,.site-footer :focus-visible{outline-color: var(--yellow)}
.skip-link{position: absolute;left: var(--s-4);top: -100px;z-index: 100;background: var(--yellow);color: var(--ink);padding: var(--s-3) var(--s-4);border-radius: var(--radius-s);font-weight: 500;text-decoration: none}
.skip-link:focus{top: var(--s-3)}
.visually-hidden{position: absolute !important;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap}
.wrap{width: 100%;max-width: var(--max);margin-inline: auto;padding-inline: var(--gutter)}
.section{padding-block: var(--section)}
.lede{font-size: var(--step-1);line-height: 1.5;color: var(--ink-2-strong);max-width: 34ch}
.site-header{position: sticky;top: env(safe-area-inset-top,0px);z-index: 50;background: color-mix(in srgb,var(--bg) 94%,transparent);border-bottom: 1px solid transparent;transition: border-color var(--t) var(--ease)}
.site-header.is-scrolled{border-bottom-color: var(--line)}
.site-header__inner{display: flex;align-items: center;justify-content: space-between;height: var(--header-h);gap: var(--s-5)}
.brand{display: inline-flex;align-items: center;gap: 0.6rem;text-decoration: none;font-family: var(--font-display);font-weight: 800;font-size: 1.25rem;letter-spacing: -0.03em}
.brand__logo{display: block;height: 40px;width: auto;flex: none;color: var(--ink,#171717)}
.nav-toggle{display: inline-flex;align-items: center;gap: var(--s-2);min-height: 44px;padding: 0 var(--s-3);margin-right: calc(var(--s-3) * -1);background: none;border: 0;cursor: pointer;font-weight: 500}
.nav-toggle__icon{width: 22px;height: 12px;position: relative}
.nav-toggle__icon::before,.nav-toggle__icon::after{content: "";position: absolute;left: 0;right: 0;height: 2px;background: var(--ink);transition: transform var(--t) var(--ease),top var(--t) var(--ease)}
.nav-toggle__icon::before{top: 0}
.nav-toggle__icon::after{top: 10px}
.nav-toggle[aria-expanded="true"] .nav-toggle__icon::before{top: 5px;transform: rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle__icon::after{top: 5px;transform: rotate(-45deg)}
.site-nav{display: none}
.site-nav.is-open{display: block;position: fixed;inset: var(--header-h) 0 0 0;z-index: 49;background: var(--bg);padding: var(--s-6) var(--gutter);overflow-y: auto;animation: menu-in var(--t) var(--ease)}
@keyframes menu-in{from{opacity: 0;transform: translateY(-6px)}
to{opacity: 1;transform: none}
}
.site-nav ul{list-style: none;margin: 0;padding: 0}
.site-nav.is-open li{border-bottom: 1px solid var(--line)}
.site-nav.is-open .nav-link{display: flex;align-items: center;min-height: 60px;font-family: var(--font-display);font-weight: 700;font-size: 1.75rem;letter-spacing: -0.03em}
.site-nav.is-open .nav-cta{margin-top: var(--s-6)}
.site-nav.is-open .nav-cta .btn{width: 100%;justify-content: center}
.nav-link{text-decoration: none;position: relative}
.nav-link[aria-current="page"]{color: var(--ink)}
body.menu-open{overflow: hidden}
@media (min-width: 900px){.nav-toggle{display: none}
.site-nav,.site-nav.is-open{display: flex;position: static;inset: auto;padding: 0;background: none;animation: none;overflow: visible;align-items: center;gap: var(--s-6)}
.site-nav ul{display: flex;gap: var(--s-6)}
.site-nav.is-open li{border: 0}
.site-nav .nav-link,.site-nav.is-open .nav-link{display: inline-block;min-height: 0;font-family: var(--font-body);font-weight: 500;font-size: 0.95rem;letter-spacing: 0;padding-block: var(--s-2);color: var(--ink-2-strong);transition: color var(--t-fast) var(--ease)}
.site-nav .nav-link::after{content: "";position: absolute;left: 0;right: 0;bottom: 2px;height: 2px;background: var(--yellow-bright);transform: scaleX(0);transform-origin: left;transition: transform var(--t) var(--ease)}
.site-nav .nav-link:hover,.site-nav .nav-link[aria-current="page"]{color: var(--ink)}
.site-nav .nav-link:hover::after,.site-nav .nav-link[aria-current="page"]::after{transform: scaleX(1)}
.site-nav.is-open .nav-cta,.site-nav .nav-cta{margin: 0}
.site-nav.is-open .nav-cta .btn{width: auto}
}
.btn{--btn-bg: var(--yellow);--btn-fg: var(--ink);display: inline-flex;align-items: center;gap: 0.6rem;min-height: 48px;padding: 0 1.35rem;background: var(--btn-bg);color: var(--btn-fg);border: 1px solid transparent;border-radius: var(--radius-s);font-weight: 500;font-size: 1rem;line-height: 1;text-decoration: none;cursor: pointer;transition: background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}
.btn:hover{--btn-bg: var(--yellow-bright)}
.btn:active{transform: translateY(1px)}
.btn--sm{min-height: 40px;padding: 0 1rem;font-size: 0.95rem}
.btn--dark{--btn-bg: var(--ink);--btn-fg: var(--white)}
.btn--dark:hover{--btn-bg: #163B32}
.btn--ghost{--btn-bg: transparent;border-color: var(--line)}
.btn--ghost:hover{--btn-bg: var(--white);border-color: var(--ink)}
.btn[disabled]{opacity: 0.6;cursor: progress}
.btn__arrow{width: 16px;height: 16px;flex: none;transition: transform var(--t) var(--ease)}
.btn:hover .btn__arrow,.btn:focus-visible .btn__arrow{transform: translateX(4px)}
.text-link{display: inline-flex;align-items: center;gap: 0.4rem;font-weight: 500;text-decoration: none;background-image: linear-gradient(var(--yellow-bright),var(--yellow-bright));background-size: 100% 2px;background-position: 0 100%;background-repeat: no-repeat;padding-bottom: 2px;transition: background-size var(--t) var(--ease)}
.text-link:hover{background-size: 100% 100%}
.hero{position: relative;overflow: hidden;padding-top: clamp(2.5rem,1rem + 5vw,5rem);padding-bottom: var(--section);isolation: isolate}
.hero__grid{display: grid;gap: var(--s-7);align-items: end}
.hero__title{font-size: var(--step-4);max-width: 11ch}
.hero__copy{margin-top: var(--s-5)}
.hero__actions{display: flex;flex-wrap: wrap;gap: var(--s-3);align-items: center;margin-top: var(--s-6)}
.hero-glow{position: absolute;z-index: -1;width: 520px;height: 520px;border-radius: 50%;left: 0;top: 0;pointer-events: none;opacity: 0;background: radial-gradient(closest-side,rgba(168,230,207,0.32),rgba(168,230,207,0));transform: translate3d(var(--gx,-999px),var(--gy,-999px),0) translate(-50%,-50%);transition: opacity var(--t-slow) var(--ease)}
.hero.has-glow .hero-glow{opacity: 1}
@media (min-width: 900px){.hero__grid{grid-template-columns: minmax(0,1.25fr) minmax(0,0.75fr);gap: var(--s-8)}
}
.facts{border-top: 1px solid var(--line);border-bottom: 1px solid var(--line);background: var(--white)}
.fact__icon{width: 40px;height: 40px;flex: none}
.section-head{display: grid;gap: var(--s-4);margin-bottom: var(--s-8)}
.section-head h2{font-size: var(--step-3);max-width: 16ch}
.section-head p{color: var(--ink-2-strong);max-width: 46ch;font-size: var(--step-1);line-height: 1.5}
@media (min-width: 900px){.section-head--split{grid-template-columns: 1fr 1fr;align-items: end;gap: var(--s-8)}
}
.on-dark{background: var(--dark);color: var(--white)}
.on-dark .section-head p{color: var(--on-dark-2)}
.steps{list-style: none;margin: 0;padding: 0;position: relative;counter-reset: step}
.steps::before{content: "";position: absolute;top: 0.5rem;bottom: 0.5rem;left: 19px;width: 3px;background: repeating-linear-gradient(to bottom,var(--yellow-bright) 0 18px,transparent 18px 32px)}
.step{position: relative;display: grid;grid-template-columns: 41px 1fr;gap: var(--s-5);padding-bottom: var(--s-8);counter-increment: step}
.step:last-child{padding-bottom: 0}
.step__num{width: 41px;height: 41px;border-radius: 50%;background: var(--ink);color: var(--yellow);display: grid;place-items: center;font-family: var(--font-display);font-weight: 800;font-size: 1rem;position: relative;z-index: 1;box-shadow: 0 0 0 6px var(--bg)}
.step__body{padding-top: 0.35rem;max-width: 52ch}
.step__title{font-size: var(--step-2);font-weight: 800;letter-spacing: -0.03em;line-height: 1.1}
.step__text{margin-top: var(--s-3);color: var(--ink-2-strong)}
@media (min-width: 900px){.steps-layout{display: grid;grid-template-columns: minmax(0,0.8fr) minmax(0,1.2fr);gap: var(--s-9);align-items: start}
.steps-layout .section-head{position: sticky;top: calc(var(--header-h) + 2rem);margin-bottom: 0}
}
.split{display: grid;gap: var(--s-7)}
@media (min-width: 900px){.split{grid-template-columns: 1fr 1fr;gap: var(--s-9);align-items: start}
}
.checks{list-style: none;margin: 0;padding: 0;border-top: 1px solid var(--line)}
.checks li{display: grid;grid-template-columns: 24px 1fr;gap: var(--s-4);padding: var(--s-5) 0;border-bottom: 1px solid var(--line)}
.checks svg{width: 24px;height: 24px;margin-top: 2px}
.checks strong{font-weight: 500;display: block}
.checks span{color: var(--ink-2-strong)}
.faq{border-top: 1px solid var(--line)}
.faq__item{border-bottom: 1px solid var(--line)}
.faq__q{list-style: none;cursor: pointer;display: grid;grid-template-columns: 1fr 28px;gap: var(--s-4);align-items: center;padding: var(--s-5) 0;font-family: var(--font-display);font-weight: 700;font-size: var(--step-1);letter-spacing: -0.02em;line-height: 1.3;transition: color var(--t-fast) var(--ease)}
.faq__q::-webkit-details-marker{display: none}
.faq__q:hover{color: #000}
.faq__icon{width: 28px;height: 28px;border-radius: 50%;border: 1px solid var(--line);position: relative;transition: background-color var(--t) var(--ease),border-color var(--t) var(--ease)}
.faq__icon::before,.faq__icon::after{content: "";position: absolute;left: 50%;top: 50%;width: 12px;height: 2px;background: var(--ink);transform: translate(-50%,-50%);transition: transform var(--t) var(--ease)}
.faq__icon::after{transform: translate(-50%,-50%) rotate(90deg)}
.faq__q:hover .faq__icon{border-color: var(--ink)}
.faq__item[open] .faq__icon{background: var(--yellow);border-color: var(--yellow)}
.faq__item[open] .faq__icon::after{transform: translate(-50%,-50%) rotate(0deg)}
.faq__a{padding: 0 2.75rem var(--s-6) 0;color: var(--ink-2-strong);max-width: 64ch}
.faq__a p + p{margin-top: var(--s-3)}
@media (prefers-reduced-motion: no-preference){.faq__item[open] .faq__a{animation: faq-in var(--t) var(--ease)}
}
@keyframes faq-in{from{opacity: 0;transform: translateY(-4px)}
to{opacity: 1;transform: none}
}
.cta-band{background: var(--yellow)}
.cta-band__inner{display: grid;gap: var(--s-6);padding-block: clamp(3.5rem,2.5rem + 4vw,6rem);align-items: end}
.cta-band h2{font-size: var(--step-3);max-width: 14ch}
.cta-band p{margin-top: var(--s-4);max-width: 40ch;font-size: var(--step-1);line-height: 1.5}
@media (min-width: 900px){.cta-band__inner{grid-template-columns: 1fr auto}
}
.page-intro{padding-top: clamp(2.5rem,1.5rem + 4vw,5.5rem);padding-bottom: var(--s-8)}
.page-intro h1{font-size: var(--step-4);max-width: 13ch}
.page-intro .lede{margin-top: var(--s-5);max-width: 44ch}
.page-intro--rule{border-bottom: 1px solid var(--line)}
.form-layout{display: grid;gap: var(--s-8)}
@media (min-width: 900px){.form-layout{grid-template-columns: minmax(0,1.35fr) minmax(0,0.65fr);gap: var(--s-9)}
}
.aside{display: grid;gap: var(--s-6);align-content: start}
.aside__block{padding-top: var(--s-5);border-top: 2px solid var(--ink)}
.aside__block h2{font-size: var(--step-1);letter-spacing: -0.02em;font-weight: 700}
.aside__block p,.aside__block li{color: var(--ink-2-strong);margin-top: var(--s-2)}
.aside__block ul{margin: 0;padding-left: 1.1rem}
@media (min-width: 900px){.aside{position: sticky;top: calc(var(--header-h) + 2rem)}
}
.site-footer{background: var(--dark);color: var(--white);padding-top: var(--s-9);padding-bottom: var(--s-6)}
.footer__top{display: grid;gap: var(--s-7);padding-bottom: var(--s-8)}
.footer__statement{font-family: var(--font-display);font-weight: 800;letter-spacing: -0.035em;line-height: 1.05;font-size: var(--step-3);max-width: 14ch}
.footer__cols{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: var(--s-6)}
.footer__col h2{font-family: var(--font-body);font-size: 0.875rem;font-weight: 500;letter-spacing: 0;color: var(--on-dark-2);margin-bottom: var(--s-3)}
.footer__col ul{list-style: none;margin: 0;padding: 0;display: grid;gap: var(--s-1)}
.footer__col a{display: inline-block;padding-block: 0.3rem;text-decoration: none;transition: color var(--t-fast) var(--ease)}
.footer__col a:hover{color: var(--yellow)}
.footer__bottom{display: flex;flex-wrap: wrap;gap: var(--s-3) var(--s-6);justify-content: space-between;padding-top: var(--s-5);border-top: 1px solid #2B5247;font-size: var(--step--1);color: var(--on-dark-2)}
@media (min-width: 900px){.footer__top{grid-template-columns: 1.3fr 1fr}
.footer__cols{grid-template-columns: repeat(3,minmax(0,11rem));justify-content: end}
}
.notfound{min-height: 60vh;display: grid;align-content: center;gap: var(--s-5);padding-block: var(--section)}
.notfound h1{font-size: var(--step-4);max-width: 12ch}
.cursor-dot{position: fixed;left: 0;top: 0;z-index: 200;width: 10px;height: 10px;border-radius: 50%;background: var(--yellow-bright);pointer-events: none;opacity: 0;transform: translate3d(var(--cx,-100px),var(--cy,-100px),0) translate(-50%,-50%) scale(var(--cs,1));transition: opacity var(--t) var(--ease),width var(--t) var(--ease),height var(--t) var(--ease),background-color var(--t) var(--ease);mix-blend-mode: multiply}
.cursor-dot.is-visible{opacity: 1}
.cursor-dot.is-active{width: 34px;height: 34px;background: rgba(111,211,168,0.45)}
.cursor-dot.is-dark{mix-blend-mode: normal}
.js [data-reveal]{opacity: 0;transform: translateY(14px);transition: opacity var(--t-slow) var(--ease),transform var(--t-slow) var(--ease);transition-delay: var(--delay,0ms)}
.js [data-reveal].is-in{opacity: 1;transform: none}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important}
.js [data-reveal]{opacity: 1;transform: none}
.cursor-dot,.hero-glow{display: none}
}
@media (hover: none),(pointer: coarse){.cursor-dot,.hero-glow{display: none}
}
.section--tight-top{padding-top: 0}
.section-head--flush{margin-bottom: 0}
.facts.section{border-bottom: 0}
.cta-band__actions{display: flex;flex-wrap: wrap;gap: var(--s-5);align-items: center}
.cta-band .text-link{background-image: linear-gradient(var(--ink),var(--ink))}
.cta-band .text-link:hover{background-image: linear-gradient(var(--white),var(--white))}
.hero__copy{max-width: 40ch}
@media (min-width: 1200px){.hero__title{font-size: clamp(5.75rem,2rem + 4.6vw,6.75rem)}
}
.art-frame{margin: 0;border-radius: 12px;overflow: hidden}
.art-frame svg{width: 100%;height: auto;transition: transform var(--t-slow) var(--ease)}
@media (hover: hover){.art-frame:hover svg{transform: scale(1.025)}
}
.art-frame--side{margin-top: var(--s-6);max-width: 30rem}
.hero__title--wide{max-width: 13ch}
.hero__photo{justify-self: stretch;width: 100%;max-width: 30rem}
@media (min-width: 900px){.hero__grid--even{grid-template-columns: minmax(0,1.1fr) minmax(0,0.9fr);align-items: center}
.hero__grid--even .hero__photo{justify-self: end}
}
@media (max-width: 899px){.hero__photo{max-width: 24rem}
}
.benefits{background: var(--white);border-top: 1px solid var(--line);border-bottom: 1px solid var(--line)}
.benefits__grid{display: grid;gap: var(--s-7)}
.benefits__list{margin: 0;display: grid;border-top: 1px solid var(--line)}
.benefit{display: grid;gap: var(--s-2);padding: var(--s-5) 0;border-bottom: 1px solid var(--line)}
.benefit dt{display: flex;align-items: center;gap: var(--s-4);font-family: var(--font-display);font-weight: 700;font-size: var(--step-2);letter-spacing: -0.03em;line-height: 1.15}
.benefit dt .fact__icon{width: 36px;height: 36px}
.benefit dd{margin: 0 0 0 calc(36px + var(--s-4));color: var(--ink-2-strong);max-width: 46ch}
@media (min-width: 900px){.benefits__grid{grid-template-columns: minmax(0,0.8fr) minmax(0,1.2fr);gap: var(--s-9);align-items: start}
.benefits__grid .section-head{position: sticky;top: calc(var(--header-h) + 2rem)}
}
.timeline{list-style: none;margin: 0;padding: 0;display: grid;gap: var(--s-7);position: relative}
.timeline::before{content: "";position: absolute;left: 19px;top: 0.5rem;bottom: 0.5rem;width: 3px;background: repeating-linear-gradient(to bottom,var(--yellow-bright) 0 18px,transparent 18px 32px)}
.timeline__step{position: relative;display: grid;grid-template-columns: 41px 1fr;column-gap: var(--s-5);row-gap: var(--s-2)}
.timeline__num{grid-row: span 2;width: 41px;height: 41px;border-radius: 50%;background: var(--yellow);color: var(--ink);display: grid;place-items: center;font-family: var(--font-display);font-weight: 800;position: relative;z-index: 1;box-shadow: 0 0 0 6px var(--dark)}
.timeline__step h3{font-size: var(--step-2);font-weight: 800;letter-spacing: -0.03em;padding-top: 0.35rem}
.timeline__step p{color: var(--on-dark-2);max-width: 34ch}
@media (min-width: 900px){.timeline{grid-template-columns: repeat(4,1fr);gap: var(--s-6)}
.timeline::before{left: 0.5rem;right: 0.5rem;top: 19px;bottom: auto;width: auto;height: 3px;background: repeating-linear-gradient(to right,var(--yellow-bright) 0 18px,transparent 18px 32px)}
.timeline__step{grid-template-columns: 1fr;row-gap: var(--s-4)}
.timeline__num{grid-row: auto}
.timeline__step h3{padding-top: var(--s-2)}
}
.needs{padding-bottom: 0}
.brand{white-space: nowrap}
@media (max-width: 380px){.brand{font-size: 1.05rem}
.brand__logo{height: 34px}
}
:root{--header-h: 5.5rem;--mint-deep: #2F8F6B}
.site-header{background: transparent;border-bottom: 0;padding-top: 12px;pointer-events: none}
.site-header.is-scrolled{border-bottom: 0}
.site-header__inner{pointer-events: auto;height: 60px;max-width: calc(var(--max) - 2 * var(--gutter));width: calc(100% - 2 * var(--gutter));padding: 0 8px 0 20px;margin-inline: auto;background: rgba(255,255,255,0.92);border: 1px solid var(--line);border-radius: 999px;transition: box-shadow var(--t) var(--ease)}
.site-header.is-scrolled .site-header__inner{box-shadow: 0 6px 24px rgba(22,59,50,0.08)}
.site-header .btn--sm{border-radius: 999px}
.nav-toggle{margin-right: 0;border-radius: 999px}
@media (min-width: 900px){.site-nav .nav-link::after{bottom: 0}
}
.site-nav.is-open{top: calc(var(--header-h) + 8px)}
.btn{border-radius: 999px}
.hero2{position: relative;overflow: hidden;isolation: isolate;text-align: center;padding-top: clamp(3rem,2rem + 5vw,6.5rem);padding-bottom: var(--section)}
.hero2__actions{display: flex;flex-wrap: wrap;gap: var(--s-3);justify-content: center;align-items: center;margin-top: var(--s-6)}
@keyframes pulse{0%{box-shadow: 0 0 0 0 rgba(111,211,168,0.6)}
70%{box-shadow: 0 0 0 10px rgba(111,211,168,0)}
100%{box-shadow: 0 0 0 0 rgba(111,211,168,0)}
}
.uses{background: var(--white);border-top: 1px solid var(--line);border-bottom: 1px solid var(--line)}
.uses__grid{display: grid;gap: var(--s-6)}
.uses__tabs{display: flex;flex-wrap: wrap;gap: var(--s-2)}
.uses__tab{min-height: 48px;padding: 0 20px;border-radius: 999px;border: 1px solid var(--line);background: var(--bg);font-family: var(--font-display);font-weight: 700;font-size: 1.05rem;letter-spacing: -0.01em;cursor: pointer;color: var(--ink-2-strong);transition: background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}
.uses__tab:hover{color: var(--ink);border-color: var(--ink)}
.uses__tab[aria-selected="true"]{background: var(--yellow);border-color: var(--yellow);color: var(--ink)}
.uses__panel{display: grid;gap: var(--s-6);align-items: center}
.uses__panel:focus-visible{outline-offset: 6px}
.uses__art{margin: 0;border-radius: 16px;overflow: hidden}
.uses__art svg{width: 100%;height: auto;display: block}
.uses__lead{font-family: var(--font-display);font-weight: 700;font-size: var(--step-2);letter-spacing: -0.03em;line-height: 1.15;max-width: 22ch;margin-bottom: var(--s-5)}
.checks--compact li{padding: var(--s-4) 0}
@media (min-width: 900px){.uses__grid{grid-template-columns: 260px minmax(0,1fr);gap: var(--s-8);align-items: start}
.uses__tabs{flex-direction: column}
.uses__tab{text-align: left;font-size: 1.35rem;min-height: 60px}
.uses__panel{grid-template-columns: minmax(0,1fr) minmax(0,1fr);gap: var(--s-7)}
}
.steps-row{list-style: none;margin: 0;padding: 0;display: grid;gap: var(--s-6)}
.steps-row__item{display: grid;gap: var(--s-3);padding-top: var(--s-5);border-top: 2px solid var(--ink)}
.steps-row__item:first-child{border-top-color: var(--yellow-bright)}
.steps-row__num{font-family: var(--font-display);font-weight: 800;font-size: var(--step-3);letter-spacing: -0.04em;line-height: 1;color: var(--mint-deep);font-variant-numeric: tabular-nums}
.steps-row__item h3{font-size: var(--step-1)}
.steps-row__item p{color: var(--ink-2-strong);max-width: 30ch}
@media (min-width: 640px){.steps-row{grid-template-columns: repeat(2,minmax(0,1fr))}
}
@media (min-width: 1024px){.steps-row{grid-template-columns: repeat(4,minmax(0,1fr))}
}
.steps-row-section{padding-bottom: 0}
.compare__grid{display: grid;gap: var(--s-4)}
@media (min-width: 900px){.compare__grid{grid-template-columns: 1fr 1fr}
}
.compare__col{padding: clamp(1.5rem,1rem + 2vw,2.5rem);border-radius: 20px;border: 1px solid var(--line);background: var(--white)}
.compare__col h3{font-size: var(--step-2);font-weight: 800;letter-spacing: -0.03em;margin-bottom: var(--s-5)}
.compare__col--us{background: var(--dark);border-color: var(--dark);color: var(--white)}
.compare__list{list-style: none;margin: 0;padding: 0;display: grid;gap: var(--s-4)}
.compare__list li{display: grid;grid-template-columns: 22px 1fr;gap: var(--s-3);color: var(--ink-2-strong)}
.compare__list li::before{content: "";width: 14px;height: 2px;background: #A9C7BA;margin-top: 0.75em}
.compare__list--us li{color: #E3F2EC}
.compare__list--us li::before{width: 18px;height: 18px;margin-top: 0.2em;border-radius: 50%;background: var(--yellow) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 12.3 3.2 3.2L17 9' fill='none' stroke='%23163B32' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat}
.compare__note{margin-top: var(--s-5);font-size: var(--step--1);color: var(--ink-2-strong);max-width: 70ch}
.compare{padding-bottom: 0}
.faq-teaser .section-head h2{font-size: var(--step-3)}
.cta2-section{padding-block: var(--section)}
.cta2{background: var(--yellow);border-radius: 28px;text-align: center;padding: clamp(3rem,2rem + 5vw,6rem) clamp(1.25rem,1rem + 3vw,4rem)}
.cta2 h2{font-size: var(--step-3);max-width: 16ch;margin-inline: auto}
.cta2 p{margin-top: var(--s-4);font-size: var(--step-1)}
.cta2 .text-link{background-image: linear-gradient(var(--ink),var(--ink))}
.footer__wordmark{font-family: var(--font-display);font-weight: 800;letter-spacing: -0.05em;line-height: 0.9;font-size: clamp(1.9rem,8.2vw,7.4rem);color: var(--yellow);margin: 0 0 var(--s-8);white-space: nowrap}
.footer__visit{display: grid;gap: var(--s-4);padding-bottom: var(--s-8)}
@media (min-width: 900px){.footer__visit{grid-template-columns: minmax(0,0.8fr) minmax(0,1.2fr);align-items: stretch}
}
.visit__hours,.visit__map{border: 1px solid #2B5247;border-radius: 20px;background: #1A4237}
.visit__hours{padding: clamp(1.5rem,1rem + 2vw,2.25rem);display: flex;flex-direction: column;gap: var(--s-5)}
.visit__title{font-family: var(--font-display);font-weight: 800;font-size: var(--step-2);letter-spacing: -0.03em}
.visit__list{margin: 0;display: grid}
.visit__list>div{display: flex;justify-content: space-between;gap: var(--s-4);padding: var(--s-3) 0;border-bottom: 1px solid #2B5247}
.visit__list dt{color: var(--on-dark-2)}
.visit__list dd{margin: 0;font-weight: 500;text-align: right;font-variant-numeric: tabular-nums}
.visit__note{font-size: var(--step--1);color: var(--on-dark-2);margin-top: auto}
.visit__map{overflow: hidden;display: flex;flex-direction: column}
.visit__mapart{width: 100%;height: auto;display: block}
.visit__address{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;gap: var(--s-4);padding: var(--s-5) clamp(1.25rem,1rem + 1.5vw,2rem)}
.visit__address p{margin: 0;line-height: 1.5}
.nav-cta{display: flex;align-items: center;gap: var(--s-5)}
.site-nav.is-open .nav-cta{flex-direction: column;align-items: stretch;gap: var(--s-4)}
.promo{overflow: hidden;display: grid;grid-template-columns: 1fr;gap: var(--s-4) var(--s-6);align-items: center;text-align: left;max-width: 60rem;margin: 0 auto var(--s-8);padding: clamp(1.25rem,1rem + 1.5vw,2rem) clamp(1.25rem,1rem + 2vw,2.5rem);background: var(--dark);color: var(--white);border-radius: 22px}
.promo__eyebrow{margin: 0 0 var(--s-2);font-size: 0.8rem;font-weight: 600;letter-spacing: 0.1em;text-transform: uppercase;color: var(--yellow)}
.promo__title{font-size: clamp(1.5rem,1.1rem + 1.6vw,2.25rem);line-height: 1.1;letter-spacing: -0.03em;text-wrap: balance}
.promo__title span{color: var(--yellow);white-space: nowrap}
.promo__title sup{font-size: 0.5em;margin-left: 2px}
.promo__title sup a{color: var(--on-dark-2);text-decoration: none}
.promo__sub{margin: var(--s-3) 0 0;color: var(--on-dark-2);max-width: 46ch}
.promo__btn{justify-self: start;margin-top: var(--s-5)}
.promo__note{grid-column: 1 / -1;margin: 0;padding-top: var(--s-4);border-top: 1px solid #2B5247;font-size: 0.8rem;line-height: 1.5;color: var(--on-dark-2)}
.promo :focus-visible{outline-color: var(--yellow)}
.promo__photo{grid-column: 1 / -1;display: block;width: calc(100% + 2 * clamp(1.25rem,1rem + 2vw,2.5rem));max-width: none;margin: calc(-1 * clamp(1.25rem,1rem + 1.5vw,2rem)) calc(-1 * clamp(1.25rem,1rem + 2vw,2.5rem)) var(--s-2);height: auto;aspect-ratio: 16 / 7;object-fit: cover;object-position: 50% 35%}
@media (max-width: 759px){.promo__photo{aspect-ratio: 4 / 3;object-position: 45% 30%}
}
.visit__maplink{display: block}
.visit__maplink:hover .visit__mapart{opacity: .92}
.promo{position: relative;overflow: hidden;isolation: isolate}
.promo>:not(.promo__photo){position: relative;z-index: 1}
.promo__photo{position: absolute;z-index: 0;max-width: none;top: 0;right: 0;height: 100%;width: 62%;object-fit: cover;object-position: 60% 30%;pointer-events: none;-webkit-mask-image: linear-gradient(to right,transparent 0%,rgba(0,0,0,.55) 30%,#000 65%);mask-image: linear-gradient(to right,transparent 0%,rgba(0,0,0,.55) 30%,#000 65%)}
.promo::after{content: "";position: absolute;inset: 0;z-index: 0;pointer-events: none;background: linear-gradient(90deg,var(--dark) 0%,rgba(22,59,50,.92) 38%,rgba(22,59,50,.35) 70%,rgba(22,59,50,.15) 100%),linear-gradient(to top,rgba(22,59,50,.95) 0%,rgba(22,59,50,0) 32%)}
.promo__text{max-width: 34rem}
@media (min-width: 760px){.promo{min-height: 22rem;padding-bottom: var(--s-5)}
.promo__note{max-width: 52rem}
}
@media (max-width: 759px){.promo{padding-top: 14rem}
.promo__photo{left: 0;right: 0;width: auto;min-width: 100%;height: 17rem;bottom: auto;object-position: 62% 25%;-webkit-mask-image: linear-gradient(to bottom,#000 45%,transparent 100%);mask-image: linear-gradient(to bottom,#000 45%,transparent 100%)}
.promo::after{background: linear-gradient(to bottom,rgba(22,59,50,.1) 0%,rgba(22,59,50,.35) 45%,var(--dark) 72%)}
}
.promo{max-width: none}
.promo__title{font-size: clamp(1.75rem,1.1rem + 2.6vw,3.25rem)}
.promo__sub{font-size: var(--step-1)}
.promo__text{max-width: 40rem}
@media (min-width: 760px){.promo{min-height: 30rem;padding: clamp(2rem,1.5rem + 2vw,3.25rem)}
.promo__photo{width: 64%}
}
@media (max-width: 759px){.promo{padding-top: 17rem}
.promo__photo{height: 20rem}
}
.promo__photo{margin: 0;aspect-ratio: auto;top: 0;right: 0;bottom: 0;height: 100%;object-fit: cover;object-position: 55% 35%}
@media (max-width: 759px){.promo__photo{left: 0;right: 0;bottom: auto;width: 100%;height: 20rem;object-position: 60% 30%}
}
@media (min-width: 760px){.promo__photo{left: 38%;right: 0;width: auto}
}
@media (max-width: 759px){.promo__photo{left: 0;right: 0;width: auto}
}
.promo__photo{grid-column: auto;grid-row: auto;min-width: 0}
@media (min-width: 760px){.promo__photo{left: auto;right: 0;width: 62%;height: 100%}
}
@media (max-width: 759px){.promo__photo{left: 0;right: auto;width: 100%}
}
.hero2 .promo{margin-bottom: 0}
/* ---------- Rush Hour Connect app (home-screen install) ---------- */
.app-get{display:flex;align-items:center;gap:.85rem;margin:0 0 1.25rem;padding:.85rem 1rem;background:var(--white,#fff);border:1px solid var(--line,#DCEFE6);border-radius:18px;box-shadow:0 6px 20px rgba(22,59,50,.06)}
.app-get__icon{width:52px;height:52px;border-radius:12px;flex:none}
.app-get__body{flex:1;min-width:0}
.app-get__title{margin:0;font-weight:800;color:var(--dark,#163B32);line-height:1.25}
.app-get__text{margin:.15rem 0 0;font-size:.875rem;color:var(--ink-2-strong,#5f5f5f);line-height:1.4}
.app-get__share{display:inline-flex;vertical-align:-3px;color:#0A84FF}
.app-get__actions{display:flex;align-items:center;gap:.35rem;flex:none}
.app-get__btn{min-height:40px;padding:0 1.1rem;border:0;border-radius:999px;background:#22C28C;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.app-get__btn[hidden]{display:none}
.app-get__close{width:36px;height:36px;border:0;border-radius:999px;background:transparent;color:var(--ink-2,#737373);font-size:1.4rem;line-height:1;cursor:pointer}
.is-app body{padding-bottom:env(safe-area-inset-bottom,0px);-webkit-tap-highlight-color:transparent}
.is-app .app-get{display:none}