:root{--ink:#1d1d1f;--ink2:#6e6e73;--gray:#f5f5f7;--line:#d2d2d7;--accent:#c2410c;--accent-h:#9a3412;--link:#b4400f;--r:28px;--rs:18px;--max:1200px;--gut:clamp(22px,4vw,40px);
--font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;overflow-x:hidden;font-family:var(--font);color:var(--ink);background:#fff;font-size:17px;line-height:1.47;letter-spacing:-.022em;-webkit-font-smoothing:antialiased}
h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.025em;line-height:1.08}
p{margin:0}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 16px;z-index:99}
.wrap{max-width:calc(var(--max) + 2*var(--gut));margin:0 auto;padding:0 var(--gut);width:100%}.narrow>*{max-width:720px}
/* nav */
.gnav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.08)}
.gnav-in{max-width:calc(var(--max) + 2*var(--gut));margin:0 auto;padding:0 var(--gut);height:64px;display:flex;align-items:center;justify-content:space-between}
.wordmark{font-weight:700;font-size:clamp(22px,2.2vw,26px);letter-spacing:-.035em;color:var(--ink)}.wordmark:hover{text-decoration:none}
.nav{display:flex;align-items:center;gap:26px}
.nav a{font-size:14px;color:rgba(0,0,0,.8);letter-spacing:-.01em}.nav a:hover{color:var(--ink);text-decoration:none}
.nav a[aria-current=page]{color:var(--ink);font-weight:600}
.nav-cta{background:var(--accent);color:#fff!important;padding:5px 13px;border-radius:999px;font-weight:500}.nav-cta:hover{background:var(--accent-h)}
.menu-btn{display:none;background:none;border:0;width:36px;height:36px;position:relative;cursor:pointer}
.menu-btn span{position:absolute;left:9px;right:9px;height:1.5px;background:var(--ink);transition:transform .3s}
.menu-btn span:first-child{top:14px}.menu-btn span:last-child{top:21px}
.menu-btn[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-btn[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
@media(max-width:900px){.menu-btn{display:block}.nav{position:fixed;top:64px;left:0;right:0;bottom:0;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);flex-direction:column;align-items:flex-start;gap:0;padding:20px var(--gut);opacity:0;visibility:hidden;transition:opacity .25s}
.nav.open{opacity:1;visibility:visible}.nav a{font-size:28px;font-weight:600;padding:8px 0;color:var(--ink)}.nav-cta{margin-top:20px;font-size:17px!important;padding:12px 22px!important}}
/* type */
.eyebrow{font-size:17px;font-weight:600;color:var(--accent);margin-bottom:10px;letter-spacing:-.01em}
.display{font-size:clamp(56px,10vw,136px);font-weight:800;letter-spacing:-.05em;line-height:.98}
.display-m{font-size:clamp(40px,6vw,80px);font-weight:700;letter-spacing:-.04em;line-height:1.05}
.lede{font-size:clamp(19px,2.2vw,24px);line-height:1.35;color:var(--ink2);font-weight:500;letter-spacing:-.02em;margin-top:14px;max-width:34em}
.fine{font-size:12px;color:var(--ink2);letter-spacing:-.005em;line-height:1.5}.fine a{color:var(--ink2);text-decoration:underline;text-underline-offset:2px;text-decoration-color:#c7c7cc}
.link{font-size:19px;color:var(--link)}
/* buttons */
.pill{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:12px 24px;font:500 17px var(--font);letter-spacing:-.02em;cursor:pointer;transition:background .2s}
.pill:hover{background:var(--accent-h);text-decoration:none;color:#fff}
.pill-ghost{background:transparent;color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.pill-ghost:hover{background:var(--accent);color:#fff}
.ctas{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:30px}
/* home hero */
.hero{position:relative;height:min(calc(100svh - 64px),940px);min-height:560px;overflow:hidden;color:#fff;display:flex;align-items:flex-end}
.hero picture,.phero picture{position:absolute;inset:0}.hero img,.phero img{width:100%;height:100%;object-fit:cover}
.hero img{animation:kb 18s ease-out both}@keyframes kb{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero::after,.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,.15) 55%,rgba(0,0,0,.62) 100%)}
.hero-in,.phero-in{position:relative;z-index:1;max-width:calc(var(--max) + 2*var(--gut));margin:0 auto;width:100%;padding:0 var(--gut) 9vh}
.hero .eyebrow,.phero .eyebrow{color:#ffd8b5}.hero .lede,.phero .lede{color:rgba(255,255,255,.88)}.hero .link{color:#fff}
.hero h1{text-shadow:0 2px 30px rgba(0,0,0,.25)}
/* page hero */
.phero{position:relative;height:min(68vh,640px);min-height:440px;overflow:hidden;color:#fff;display:flex;align-items:flex-end}
.phero h1{font-size:clamp(44px,7.5vw,104px);font-weight:800;letter-spacing:-.045em;line-height:1.03;max-width:12em;text-shadow:0 2px 30px rgba(0,0,0,.25)}
.phero-in{padding-bottom:64px}
/* sections */
.sec{padding:110px 0}.gray{background:var(--gray)}
.sechead{margin-bottom:44px}
.dayh{font-size:24px;font-weight:600;margin:56px 0 18px;letter-spacing:-.02em}.dayh:first-of-type{margin-top:0}
/* rail */
.rail-wrap{position:relative;width:100vw;margin-left:calc(50% - 50vw)}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(360px,82vw);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px max(var(--gut),calc((100vw - var(--max))/2)) 30px;scrollbar-width:none;scroll-padding:max(var(--gut),calc((100vw - var(--max))/2))}
.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start}
.rail-ctl{display:flex;justify-content:flex-end;gap:12px;padding:0 max(var(--gut),calc((100vw - var(--max))/2))}
.rbtn{width:40px;height:40px;border-radius:50%;border:0;background:#e8e8ed;color:var(--ink);font-size:24px;line-height:1;cursor:pointer;transition:background .2s}.rbtn:hover{background:#dcdce1}
.gray .rbtn{background:#e3e3e8}
/* cards */
.card{background:var(--gray);border-radius:var(--r);padding:32px 30px 26px;display:flex;flex-direction:column;gap:10px;min-height:100%;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.gray .card{background:#fff}
.card:hover{transform:scale(1.015)}
.kicker{font-size:12px;font-weight:600;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em}
.card h3{font-size:28px;letter-spacing:-.03em;line-height:1.12}
.desc{color:var(--ink);font-size:17px;line-height:1.45}
.meta{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:6px;font-size:15px}
.meta li span{display:block;font-size:12px;color:var(--ink2);font-weight:500}
.card .fine{margin-top:auto;padding-top:14px}
.flag{font-size:12px;font-weight:600;color:var(--accent)}
.flag-i{font-size:12px;font-weight:600;color:var(--accent);white-space:nowrap}
.grid{display:grid;gap:20px;grid-template-columns:1fr}@media(min-width:700px){.grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.grid.g3{grid-template-columns:repeat(3,1fr)}}
/* bento */
.bento{display:grid;gap:20px;grid-template-columns:1fr}
@media(min-width:760px){.bento{grid-template-columns:repeat(3,1fr);grid-auto-rows:340px}.t-wide{grid-column:span 2}}
.tile{position:relative;border-radius:var(--r);overflow:hidden;min-height:300px;color:#fff;display:block;background:#ddd}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,0) 60%)}
.tile:hover{text-decoration:none}.tile:hover img{transform:scale(1.05)}
.tile-txt{position:relative;z-index:1;padding:30px}.tile h3{font-size:28px;letter-spacing:-.03em}.tile p{margin-top:6px;font-size:17px;color:rgba(255,255,255,.9)}
/* signup */
.bh-card{margin:34px 0 14px;max-width:560px;background:#fff;border-radius:22px;padding:8px 8px 4px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 28px rgba(0,0,0,.06);min-height:200px;overflow:hidden}.bh-card iframe{border-radius:16px}
.signup-sec{background:var(--gray);padding:120px 0}
.signup{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 14px;max-width:520px}
.signup input{flex:1;min-width:220px;font:17px var(--font);padding:13px 20px;border-radius:999px;border:1px solid var(--line);background:#fff;letter-spacing:-.02em}
.signup input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(194,65,12,.15)}
/* sponsor strip */
.spon{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:44px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.spon h3{font-size:28px;letter-spacing:-.03em;margin-bottom:6px}
.tiers{display:grid;gap:20px;grid-template-columns:1fr}@media(min-width:700px){.tiers{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.tiers{grid-template-columns:repeat(4,1fr)}}
.tier{background:var(--gray);border-radius:var(--r);padding:34px 28px}.tier.feat{background:var(--ink);color:#fff}.tier.feat .eyebrow{color:#ffb380}.tier.feat ul{color:#d2d2d7}
.tier h3{font-size:26px;margin-bottom:14px}.tier ul{margin:0;padding-left:1.1em;color:var(--ink2);font-size:15px;display:grid;gap:6px}
/* finder */
.filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px;position:sticky;top:64px;z-index:5;background:rgba(255,255,255,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:12px;border-radius:999px;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 8px 30px rgba(0,0,0,.06)}
.filters label{display:flex;align-items:center}
.filters select{appearance:none;-webkit-appearance:none;font:500 15px var(--font);letter-spacing:-.01em;color:var(--ink);background:var(--gray) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236e6e73' fill='none' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;border:0;border-radius:999px;padding:10px 36px 10px 16px;cursor:pointer}
.filters .chk{gap:8px;font-size:15px;font-weight:500;padding:0 10px}.filters .chk input{accent-color:var(--accent);width:18px;height:18px}
.lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media(max-width:700px){.filters{border-radius:22px;top:60px}.filters label:not(.chk){flex:1 1 45%}.filters select{width:100%}}
.count{font-size:14px;color:var(--ink2);margin:0 0 24px 6px}
/* tables */
.notice{font-size:15px;color:var(--ink2);margin-bottom:32px;max-width:46em}
table{width:100%;border-collapse:collapse;font-size:15px}
th{text-align:left;font-size:12px;font-weight:600;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em;padding:0 16px 12px;border-bottom:1px solid var(--line)}
td{padding:18px 16px;border-bottom:1px solid #e8e8ed;vertical-align:top}td:first-child{font-weight:600}
td a{color:var(--ink2);font-size:13px;text-decoration:underline;text-decoration-color:#c7c7cc}
tr{transition:background .2s}tbody tr:hover{background:var(--gray)}
@media(max-width:760px){table,thead,tbody,tr,td{display:block}thead{display:none}tr{background:var(--gray);border-radius:var(--rs);padding:18px 20px;margin-bottom:12px}tbody tr:hover{background:var(--gray)}td{border:0;padding:3px 0}td:first-child{font-size:19px;margin-bottom:6px}td[data-l]::before{content:attr(data-l);display:block;font-size:11px;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em;margin-top:6px}}
/* prose */
.prose>*{max-width:680px}.prose{font-size:19px;line-height:1.6}.prose p{margin-bottom:22px}.prose h2{font-size:32px;margin:48px 0 14px}
.back{margin-top:48px}
.credits{padding-left:1.1em;color:var(--ink2);font-size:15px;display:grid;gap:12px}
/* footer */
.gfoot{background:var(--gray);padding:40px 0 30px;font-size:12px;color:var(--ink2);margin-top:0}
.gfoot-grid{display:grid;gap:28px;padding-bottom:24px;border-bottom:1px solid var(--line)}@media(min-width:760px){.gfoot-grid{grid-template-columns:2fr 1fr 1fr}}
.gfoot .wordmark{font-size:17px;margin-bottom:8px}.gfoot h4{margin:0 0 8px;font-size:12px;color:var(--ink);font-weight:600}
.gfoot a{display:block;color:var(--ink2);padding:3px 0}.gfoot a:hover{color:var(--ink)}
.legal{padding-top:18px}
/* reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.hero img{animation:none}.card,.tile img{transition:none}}
@media(max-width:700px){.sec{padding:72px 0}.signup-sec{padding:80px 0}.hero{height:calc(100svh - 64px);min-height:520px}.phero{height:60vh;min-height:400px}.phero-in{padding-bottom:40px}.card{padding:26px 24px 22px}.card h3{font-size:23px}.tile-txt{padding:24px}.tile h3{font-size:24px}.rail-ctl{display:none}}

.stats-sec{padding:90px 0}.stats{display:grid;gap:40px;grid-template-columns:1fr}@media(min-width:700px){.stats{grid-template-columns:repeat(3,1fr)}}
.stats b{display:block;font-size:clamp(64px,9vw,104px);font-weight:700;letter-spacing:-.05em;line-height:1;background:linear-gradient(135deg,#c2410c,#ea8a3a);-webkit-background-clip:text;background-clip:text;color:transparent}
.stats span{display:block;margin-top:8px;font-size:19px;color:var(--ink2);font-weight:500}
.brk{position:relative;height:min(80vh,760px);min-height:480px;overflow:hidden;display:flex;align-items:center;color:#fff}
.brk img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.brk::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.6),rgba(0,0,0,.1) 70%)}
.brk-in{position:relative;z-index:1;max-width:calc(var(--max) + 2*var(--gut));margin:0 auto;width:100%;padding:0 var(--gut)}.brk .lede{color:rgba(255,255,255,.88)}.brk .link{display:inline-block;margin-top:22px;color:#fff}
@media(min-width:761px){th:first-child,td:first-child{padding-left:0}}
.hero::after{background:linear-gradient(180deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,0) 25%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.7) 100%),linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,0) 65%)}.hero .eyebrow,.phero .eyebrow{text-shadow:0 1px 12px rgba(0,0,0,.5)}
@media(max-width:700px){.bh-card{padding:0;margin-left:-8px;margin-right:-8px;border-radius:18px}}
