:root{--primary:#5B7CFA;--secondary:#0A1020;--bg:#fff;--surface:#f6f8f7;--text:#17201d;--xs:.5rem;--sm:.875rem;--md:1.5rem;--lg:3rem;--xl:6rem;--r-sm:8px;--r-md:16px;--r-lg:28px;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text)}*{box-sizing:border-box}body{margin:0;background:var(--bg);line-height:1.6}a{color:inherit;text-decoration:none}.site-header,main>section,footer{padding-left:max(var(--md),calc((100vw - 1160px)/2));padding-right:max(var(--md),calc((100vw - 1160px)/2))}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e6e9e7}.brand{font-weight:800;font-size:1.12rem}.brand span{color:var(--primary);font-size:1.5rem}.site-header nav{display:flex;align-items:center;gap:var(--md)}.button,button{background:var(--primary);border:0;border-radius:var(--r-sm);padding:.85rem 1.1rem;font:inherit;font-weight:750;cursor:pointer}.small{padding:.55rem .8rem;font-size:.9rem}.hero{padding-top:var(--xl);padding-bottom:var(--xl);background:linear-gradient(120deg,#fff 60%,#eef1ff);display:grid;grid-template-columns:1.2fr .8fr;gap:var(--lg);align-items:center}.eyebrow{font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:#425aaf}.hero h1,.intro h1{font-size:clamp(2.4rem,6vw,5.6rem);line-height:1.02;letter-spacing:-.055em;margin:.2rem 0 var(--md);max-width:800px}.lead{font-size:1.18rem;max-width:670px}.finder{display:flex;max-width:620px;margin-top:var(--lg);gap:var(--xs);background:#fff;padding:var(--xs);border:1px solid #dbe0ea;border-radius:var(--r-md)}input{min-width:0;flex:1;border:0;padding:.7rem;font:inherit}.hint{font-size:.85rem;color:#61706b}.hero-art{min-height:320px;background:var(--secondary);border-radius:var(--r-lg);position:relative;overflow:hidden}.hero-art span{position:absolute;right:16%;bottom:8%;font-size:8rem;color:#fff}.brick{position:absolute;background:var(--primary);height:48px;width:55%;transform:rotate(-20deg)}.brick-a{top:22%;left:-10%}.brick-b{top:42%;right:-13%;background:#aebcff}.brick-c{bottom:16%;left:5%;width:42%;background:#fff}.section{padding-top:var(--xl);padding-bottom:var(--xl)}.compact{padding-top:var(--lg);padding-bottom:var(--lg)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:var(--md);margin-bottom:var(--lg)}h2{font-size:clamp(1.8rem,3.8vw,3.3rem);letter-spacing:-.04em;line-height:1.05;margin:.25rem 0}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sm)}.card{padding:var(--md);border-radius:var(--r-md);background:var(--surface);transition:.2s}.card:hover{transform:translateY(-3px);background:#edf0ff}.card h2,.card h3{margin:.3rem 0;font-size:1.3rem}.icon{font-size:1.6rem;color:var(--primary)}.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--xl);background:var(--secondary);color:#fff}.split .eyebrow{color:#b9c5ff}.text-link{font-weight:750;text-decoration:underline}.intro{padding-top:var(--xl);padding-bottom:var(--lg);background:var(--surface)}.crumbs{padding:max(var(--sm),1rem) max(var(--md),calc((100vw - 1160px)/2));font-size:.9rem;display:flex;gap:.5rem;flex-wrap:wrap}.crumbs a{text-decoration:underline}.place-card .code{color:#425aaf;font-weight:800}.company-list{display:grid;gap:var(--sm)}.company{padding:var(--md);border:1px solid #dde2df;border-radius:var(--r-md);display:flex;justify-content:space-between;gap:var(--md);align-items:center}.company h3{font-size:1.3rem;margin:.2rem 0}.company p{margin:.2rem 0}.notice{padding:var(--md);border-left:4px solid var(--primary);background:#f1f3ff}.link-row{display:flex;flex-wrap:wrap;gap:.6rem}.link-row a{padding:.55rem .75rem;background:var(--surface);border-radius:var(--r-sm)}.pager{display:flex;justify-content:space-between;margin-top:var(--md);font-weight:750}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}footer{background:var(--secondary);color:#fff;padding-top:var(--lg);padding-bottom:var(--lg);display:grid;grid-template-columns:2fr 1fr;gap:var(--md)}footer a{display:block;margin:.3rem 0;text-decoration:underline}footer small{grid-column:1/-1;color:#bbc3d6}@media(max-width:720px){.site-header nav>a:first-child{display:none}.hero,.split{grid-template-columns:1fr}.hero-art{min-height:220px}.card-grid{grid-template-columns:1fr}.section-head{display:block}.section-head>a{display:inline-block;margin-top:var(--sm)}.company{align-items:flex-start;flex-direction:column}.site-header{height:68px}footer{grid-template-columns:1fr}}
