:root{--radius-s: 8px;--radius-m: 12px;--radius-l: 18px;--shadow-s: 0 1px 2px rgba(20, 53, 33, .06), 0 1px 6px rgba(20, 53, 33, .05);--shadow-m: 0 2px 6px rgba(20, 53, 33, .07), 0 10px 28px rgba(20, 53, 33, .09);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:17px;line-height:1.7;color:var(--text);background:var(--bg)}h1,h2,h3{font-family:var(--font-sans);font-weight:800;letter-spacing:-.022em;line-height:1.22;color:var(--primary-dark);margin:2em 0 .5em;scroll-margin-top:90px}h1{font-size:clamp(1.7rem,1.2rem + 2.2vw,2.35rem);margin-top:.6em}h2{font-size:clamp(1.35rem,1.15rem + .9vw,1.6rem)}h3{font-size:1.15rem}p{margin:.75em 0}a{color:var(--primary);text-decoration-color:color-mix(in srgb,var(--primary) 35%,transparent);text-underline-offset:3px}a:hover{color:var(--primary-dark);text-decoration-color:currentColor}img{max-width:100%}.wrap{max-width:920px;margin:0 auto;padding:0 22px}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 84%,transparent);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent)}.site-header .wrap{max-width:1160px;display:flex;align-items:center;gap:16px;padding-top:12px;padding-bottom:12px}.wordmark{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:1.12rem;letter-spacing:-.02em;color:var(--primary-dark);text-decoration:none;white-space:nowrap}.wordmark em{font-style:normal;color:var(--accent)}.logo-mark{flex:0 0 auto;display:block;border-radius:7px}nav.main-nav{display:flex;align-items:center;gap:2px;margin-left:auto;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}nav.main-nav::-webkit-scrollbar{display:none}nav.main-nav a{text-decoration:none;color:var(--muted);font-size:.92rem;font-weight:600;padding:7px 11px;border-radius:999px;white-space:nowrap;transition:color .15s,background-color .15s}nav.main-nav a:hover{color:var(--primary-dark);background:color-mix(in srgb,var(--primary) 8%,transparent)}.nav-cta{flex:0 0 auto;background:var(--accent);color:var(--primary-dark);font-weight:700;font-size:.9rem;text-decoration:none;padding:9px 16px;border-radius:999px;white-space:nowrap;box-shadow:var(--shadow-s);transition:filter .15s,transform .15s}.nav-cta:hover{color:var(--primary-dark);filter:brightness(1.06);transform:translateY(-1px)}.updated{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.84rem;font-weight:600;margin:.3em 0 1.1em;text-transform:uppercase;letter-spacing:.05em}.updated:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}.hero-img{display:block;width:100%;aspect-ratio:16 / 7;object-fit:cover;border-radius:var(--radius-l);margin:.4rem 0 1.6rem;box-shadow:var(--shadow-m)}.quick-answer{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow-s);padding:40px 24px 18px;margin:1.4em 0}.quick-answer:before{content:"Quick answer";position:absolute;top:14px;left:24px;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--primary-dark);background:color-mix(in srgb,var(--accent) 22%,var(--surface));border-radius:999px;padding:3px 10px}.note{color:var(--muted);font-size:.9rem}.table-scroll{overflow-x:auto;margin:1.4em 0;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--shadow-s)}table{border-collapse:collapse;width:100%;background:var(--surface);font-size:.94rem}th,td{padding:12px 16px;text-align:left;vertical-align:top;border:0}thead th{background:var(--primary-dark);color:#fff;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}tbody tr{border-top:1px solid var(--border)}tbody tr:hover{background:color-mix(in srgb,var(--bg) 65%,var(--surface))}td strong{color:var(--primary-dark)}.company{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow-s);padding:22px 26px;margin:1.2em 0;transition:box-shadow .2s,transform .2s}.company:hover{box-shadow:var(--shadow-m);transform:translateY(-2px)}.company h3{margin-top:6px;font-size:1.25rem}.company .best-for{display:inline-block;background:color-mix(in srgb,var(--accent) 20%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 45%,var(--surface));color:var(--primary-dark);border-radius:999px;padding:3px 12px;font-size:.8rem;font-weight:700;text-decoration:none}.company .meta{color:var(--muted);font-size:.88rem;margin:12px 0 0;padding-top:12px;border-top:1px dashed var(--border)}ul.checklist{padding-left:0;list-style:none;margin:1em 0}ul.checklist li{padding:7px 0 7px 34px;position:relative}ul.checklist li:before{content:"✓";position:absolute;left:0;top:8px;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-weight:800;font-size:.8rem;line-height:22px;text-align:center}.faq details{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);margin:10px 0;padding:0;box-shadow:var(--shadow-s)}.faq details[open]{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.faq summary{cursor:pointer;font-weight:700;padding:15px 44px 15px 18px;color:var(--primary-dark);list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);font-weight:700;line-height:24px;text-align:center;transition:transform .2s,background-color .2s}.faq details[open] summary:after{content:"−";background:var(--primary);color:#fff;transform:translateY(-50%)}.faq details p{padding:0 18px 15px;margin:0;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.lead{background:linear-gradient(135deg,var(--primary-dark),color-mix(in srgb,var(--primary) 70%,var(--primary-dark)));color:#eef0e8;border-radius:var(--radius-l);padding:32px 30px 26px;margin:2.4em 0;box-shadow:var(--shadow-m)}.lead h2{color:#fff;margin-top:0}.lead p{color:color-mix(in srgb,#ffffff 72%,var(--primary-dark))}.lead form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.lead label{display:block;font-size:.82rem;font-weight:600;margin-bottom:5px;color:color-mix(in srgb,#ffffff 80%,var(--primary-dark))}.lead input,.lead select{width:100%;padding:12px 14px;border-radius:var(--radius-s);border:1px solid color-mix(in srgb,#ffffff 25%,var(--primary-dark));font-size:1rem;font-family:inherit;background:#fff;color:var(--text)}.lead input:focus-visible,.lead select:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px}.lead .full{grid-column:1 / -1}.lead .consent{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;font-weight:400;color:color-mix(in srgb,#ffffff 66%,var(--primary-dark))}.lead .consent input{width:auto;margin-top:3px;accent-color:var(--accent)}.lead button{grid-column:1 / -1;background:var(--accent);color:var(--primary-dark);font-weight:800;font-size:1.08rem;font-family:inherit;border:none;border-radius:999px;padding:15px;cursor:pointer;box-shadow:var(--shadow-s);transition:filter .15s,transform .15s}.lead button:hover{filter:brightness(1.07);transform:translateY(-1px)}.hp-field{position:absolute;left:-9999px}.site-footer{margin-top:4em;background:var(--primary-dark);color:color-mix(in srgb,#ffffff 70%,var(--primary-dark))}.site-footer .wrap{padding-top:34px;padding-bottom:34px}.site-footer .foot-brand{font-weight:800;font-size:1.05rem;letter-spacing:-.02em;color:#fff;margin:0 0 14px}.site-footer .foot-brand em{font-style:normal;color:var(--accent)}.site-footer nav{display:flex;flex-wrap:wrap;gap:4px 22px;margin-bottom:16px}.site-footer nav a{color:color-mix(in srgb,#ffffff 78%,var(--primary-dark));font-size:.88rem;font-weight:600;text-decoration:none}.site-footer nav a:hover{color:#fff;text-decoration:underline}.site-footer p{color:color-mix(in srgb,#ffffff 52%,var(--primary-dark));font-size:.82rem;border-top:1px solid color-mix(in srgb,#ffffff 14%,var(--primary-dark));padding-top:16px;margin-bottom:0}.city-nav{display:flex;flex-wrap:wrap;gap:8px;margin:1.3em 0}.city-nav a{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 15px;font-size:.88rem;text-decoration:none;color:var(--primary-dark);font-weight:700;box-shadow:var(--shadow-s);transition:background-color .15s,color .15s,border-color .15s}.city-nav a:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}h2 .count{color:var(--muted);font-weight:500;font-size:.8em}.dir-card .facts{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--muted);font-size:.88rem;margin:8px 0 10px}.dir-card .flag{background:color-mix(in srgb,var(--accent) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 40%,var(--surface));color:var(--primary-dark);border-radius:999px;padding:1px 10px;font-weight:700}.dir-card .tags{font-size:.88rem;color:var(--muted)}.dir-card .tag{display:inline-block;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:1px 10px;margin:2px 4px 2px 0}@media(max-width:640px){body{font-size:16px}.site-header .wrap{gap:10px}.wordmark{font-size:1rem}.nav-cta{padding:8px 12px;font-size:.82rem}.hero-img{aspect-ratio:16 / 9;border-radius:var(--radius-m)}.company{padding:18px}.lead{padding:24px 18px 20px;border-radius:var(--radius-m)}.lead form{grid-template-columns:1fr}}
