
:root{
  --paper:#FAFAF8;
  --card:#FFFFFF;
  --line:#E4E6E2;        
  --line-input:#DCDFDA;  
  
  --ink:#14181B;
  --ink-2:#4C5561;
  --ink-3:#5A6470;
  --muted:#6A737D;
  --icon:#8A929C;
  
  --accent:#0F6B7E;
  --accent-dark:#0A4E5C;
  --accent-tint:#E6F2F4;
  --accent-tint-line:#CFE4E8;
  --accent-fill:#CDE9EF;
  --accent-fill-line:#A9D3DC;
  
  --amber-tint:#FDF1E3;
  --amber-ink:#8A4B0F;
  
  --r-panel:16px;
  --r-card:14px;
  --r-small:12px;
  --r-button:10px;
  --shell:1080px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
       Helvetica,Arial,"Noto Sans",sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--accent)}@media (hover: hover) and (pointer: fine){a:hover{color:var(--accent-dark)}}
.shell{max-width:var(--shell); margin:0 auto; padding:0 24px}
.banner{
  background:var(--amber-tint); color:var(--amber-ink);
  border-bottom:1px solid #F0DFC8;
  text-align:center; padding:10px 16px; font-size:14px; font-weight:600;
}
.site-head{background:var(--card); border-bottom:1px solid var(--line)}
.site-head .shell{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; min-height:68px; flex-wrap:wrap;
}
.wordmark{
  font-size:18px; font-weight:700; letter-spacing:-.01em;
  text-decoration:none; color:var(--ink); padding:10px 0;
}
.wordmark .hi{color:var(--accent)}   
.site-nav{display:flex; gap:4px; flex-wrap:wrap}
.site-nav a{
  display:inline-flex; align-items:center; min-height:44px;
  padding:0 12px; border-radius:var(--r-button);
  font-size:15px; text-decoration:none; color:var(--ink-2);
}@media (hover: hover) and (pointer: fine){.site-nav a:hover{background:var(--accent-tint); color:var(--accent-dark)}}
.site-nav a.is-active{color:var(--accent); font-weight:600}
main{display:block; padding:0 0 72px}
.hero{padding:40px 0 8px; max-width:640px}
.hero h1{
  font-size:clamp(28px,4.4vw,38px); line-height:1.15;
  letter-spacing:-.02em; margin:0 0 10px;
}
.hero p{margin:0; color:var(--ink-3); font-size:17px}
.hero .count{color:var(--ink); font-weight:600}
:root{
  --seg-E:var(--accent);
  --seg-A:#8FC3CE;
  --seg-B:#E3A15C;
}
.hero .tally{margin:18px 0 0; display:flex; align-items:baseline; gap:4px 10px; flex-wrap:wrap}
.tally-n{font-size:clamp(38px,5vw,46px); font-weight:750; letter-spacing:-.03em;
  line-height:1; color:var(--ink)}
.tally-l{font-size:17px; color:var(--ink-3)}
.mixbar{display:flex; gap:2px; height:14px; margin:16px 0 14px;
  border-radius:999px; overflow:hidden; background:var(--line)}
.mixbar .seg{display:block; flex-basis:0; min-width:8px}
.seg-E{background:var(--seg-E)}
.seg-A{background:var(--seg-A)}
.seg-B{background:var(--seg-B)}
.mixkey{list-style:none; margin:0; padding:0; display:grid; gap:7px;
  font-size:15px; line-height:1.4; color:var(--ink-2)}
.mixkey li{display:flex; align-items:baseline; gap:10px}
.mixkey .swatch{flex:none; width:12px; height:12px; border-radius:3px;
  position:relative; top:1px}
.mixkey strong{flex:none; min-width:3.2em; color:var(--ink); font-weight:700;
  font-variant-numeric:tabular-nums}
.hero .tally-note{margin:14px 0 0; color:var(--ink-3); font-size:15px}
.layout{display:grid; grid-template-columns:236px 1fr; gap:32px; padding-top:28px}
@media (max-width:860px){
  .layout{grid-template-columns:1fr; gap:24px}
  
  
  .layout{display:flex; flex-wrap:wrap; align-items:flex-start; gap:12px 6px}
  .layout > *{flex:1 1 100%; min-width:0}
  .layout > .rail, .layout > .stream{display:contents}
  .layout > .stream > *{order:4; flex:1 1 100%; min-width:0}
  .layout > .stream > .finder{order:0; margin-bottom:2px}
  .layout > .rail > .whennew{order:1; flex:1 1 100%}
  .layout > .stream > .finder + div{order:0}
  .layout > .rail > .panel.acc{order:2; flex:1 1 calc(50% - 3px)}
  .layout > .rail > .panel.acc[open]{flex:1 1 100%}
  .layout > .rail > .key{order:5}
  
  .panel.acc:not([open]){padding:0; border-radius:999px; border-color:var(--line-input)}
  .panel.acc:not([open]) > .acc-tap{
    min-height:44px; padding:0 12px 0 14px; gap:6px;
    font-size:14px; text-transform:none; letter-spacing:0;
    color:var(--ink-2); font-weight:600;
  }
  .panel.acc:not([open]) .acc-word{display:none}
  .acc[open]{border-color:var(--accent-tint-line)}
}
.panel.acc > .acc-tap{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  cursor:pointer; list-style:none; margin:0;
  font-size:13px; text-transform:uppercase; letter-spacing:.06em;
  color:var(--muted); font-weight:700;
}
.panel.acc[open] > .acc-tap{margin:0 0 12px}
.panel.acc > .acc-tap::-webkit-details-marker{display:none}
.acc-right{display:flex; align-items:center; gap:7px; flex:0 0 auto}
.acc-word{
  font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  color:var(--accent);
}
.panel.acc:not([open]) .acc-word::after{content:"Expand"}
.panel.acc[open] .acc-word::after{content:"Close"}
.acc-chev{
  font-size:20px; line-height:1; color:var(--icon); flex:0 0 auto;
  transform:rotate(90deg); transition:transform .15s;
}
.panel.acc[open] .acc-chev{transform:rotate(-90deg)}@media (hover: hover) and (pointer: fine){.panel.acc > .acc-tap:hover{color:var(--ink-2)}}@media (hover: hover) and (pointer: fine){.panel.acc > .acc-tap:hover .acc-word{color:var(--accent-dark)}}
.panel.acc > .acc-tap:focus-visible{outline:2px solid var(--accent); outline-offset:3px}
.rail{display:flex; flex-direction:column; gap:16px; min-width:0}
.panel{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-panel); padding:18px 18px 20px;
}
.panel h2{
  font-size:13px; text-transform:uppercase; letter-spacing:.06em;
  color:var(--muted); margin:0 0 12px; font-weight:700;
}
.citylist{list-style:none; margin:0; padding:0}
.citylist a{
  display:flex; justify-content:space-between; align-items:center; gap:10px;
  min-height:40px; padding:0 10px; margin:0 -10px;
  border-radius:var(--r-small);
  text-decoration:none; color:var(--ink-2); font-size:15px;
}@media (hover: hover) and (pointer: fine){.citylist a:hover{background:var(--accent-tint); color:var(--accent-dark)}}
.citylist a.is-active{background:var(--accent-tint); color:var(--accent); font-weight:600}
.citylist .n{color:var(--muted); font-size:13px; font-variant-numeric:tabular-nums}
.key p{margin:0 0 14px; font-size:14px; color:var(--ink-3); line-height:1.5}
.key p:last-child{margin-bottom:0}
.key .chip{margin-bottom:6px}
.stream{min-width:0}
.stream-head{
  display:flex; align-items:baseline; justify-content:space-between;
  gap:16px; margin:0 0 14px; flex-wrap:wrap;
}
.stream-head h2{font-size:18px; margin:0; letter-spacing:-.01em}
.stream-head .note{margin:0; font-size:14px; color:var(--muted)}
.cards{list-style:none; margin:0; padding:0; display:grid; gap:12px;
       grid-template-columns:minmax(0,1fr)}
.card{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-card); padding:18px 20px;
  min-width:0; overflow:hidden;
}@media (hover: hover) and (pointer: fine){.card:hover{border-color:var(--accent-tint-line)}}
.card-title{
  display:inline-block; font-size:17px; font-weight:600; line-height:1.35;
  color:var(--ink); text-decoration:none; letter-spacing:-.01em;
}@media (hover: hover) and (pointer: fine){.card-title:hover{color:var(--accent)}}
.card-meta{margin:5px 0 12px; color:var(--ink-3); font-size:14.5px}
.card-meta .dot{color:var(--icon); padding:0 6px}
.chip{
  display:inline-block; font-size:12.5px; font-weight:600; line-height:1;
  padding:6px 10px; border-radius:999px;
  background:var(--accent-tint); color:var(--accent-dark);
}
.chip-B{background:var(--amber-tint); color:var(--amber-ink)}
.chip-E{
  background:var(--accent-fill); color:var(--accent-dark);
  box-shadow:inset 0 0 0 1px var(--accent-fill-line);
}
.crumbs{margin:0 0 14px}
.crumbs ol{
  list-style:none; margin:0; padding:0;
  display:flex; flex-wrap:wrap; align-items:center; gap:2px 0;
  font-size:14px; color:var(--muted);
}
.crumbs li{display:inline-flex; align-items:baseline; min-width:0}
.crumbs li + li::before{
  content:"\203A"; margin:0 8px; color:var(--icon); flex:0 0 auto;
}
.crumbs a{color:var(--accent-dark); text-decoration:none}@media (hover: hover) and (pointer: fine){.crumbs a:hover{text-decoration:underline}}
.crumbs li:last-child span{color:var(--muted); min-width:0; overflow-wrap:anywhere}
.crumb{margin:26px 0 0; font-size:14.5px}
.crumb a{text-decoration:none}
.jobgrid{display:grid; grid-template-columns:1fr 268px; gap:32px; padding-top:8px}
@media (max-width:860px){ .jobgrid{grid-template-columns:1fr} }
.jobhead h1{
  font-size:clamp(24px,3.6vw,32px); line-height:1.2;
  letter-spacing:-.02em; margin:10px 0 6px;
}
.jobhead .card-meta{font-size:16px; margin-bottom:14px}
.excerpt{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-panel); padding:20px 22px; margin:22px 0 0;
}
.excerpt p{margin:0; color:var(--ink-2)}
.excerpt .label{
  display:block; font-size:12px; text-transform:uppercase; letter-spacing:.06em;
  color:var(--muted); font-weight:700; margin-bottom:10px;
}
.excerpt .only{margin:14px 0 0; font-size:13.5px; color:var(--muted)}
.cta{margin:22px 0 0}
.apply{
  display:inline-block; background:var(--accent); color:#fff;
  padding:14px 22px; border-radius:var(--r-button);
  text-decoration:none; font-weight:600; font-size:16px; line-height:1.3;
}@media (hover: hover) and (pointer: fine){.apply:hover{background:var(--accent-dark); color:#fff}}
.cta .away{margin:10px 0 0; font-size:13.5px; color:var(--muted)}
.why{
  background:var(--accent-tint); border:1px solid var(--accent-tint-line);
  border-radius:var(--r-panel); padding:18px 20px; margin:26px 0 0;
}
.why h2{font-size:15px; margin:0 0 8px; color:var(--accent-dark)}
.why p{margin:0; font-size:14.5px; color:var(--ink-2)}
.facts{list-style:none; margin:0; padding:0}
.facts li{padding:10px 0; border-top:1px solid var(--line); font-size:14.5px}
.facts li:first-child{border-top:0; padding-top:0}
.facts .k{display:block; color:var(--muted); font-size:12.5px; margin-bottom:2px}
.facts .v{color:var(--ink-2)}
.report{
  border:1px solid var(--line); border-radius:var(--r-panel);
  padding:18px 20px; margin:26px 0 0; background:var(--card);
}
.report h2{font-size:15px; margin:0 0 8px}
.report p{margin:0; font-size:14.5px; color:var(--ink-2)}
.report-do{display:flex; flex-wrap:wrap; gap:8px 18px; margin:12px 0 0 !important}
.report-do a{font-size:14.5px}
.disclaimer{font-size:13.5px; color:var(--muted); margin:28px 0 0; max-width:60ch}
:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
  border-radius:4px;
}
.apply:focus-visible{outline-color:var(--accent-dark)}
.skip{
  position:absolute; left:-9999px; top:0;
  background:var(--card); color:var(--accent-dark);
  border:1px solid var(--accent-tint-line); border-radius:var(--r-button);
  padding:12px 18px; font-weight:600; text-decoration:none; z-index:10;
}
.skip:focus{left:12px; top:12px}
.prose{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-panel); padding:32px 34px; margin-top:28px;
  max-width:720px;
}
.prose h1{font-size:clamp(24px,4vw,32px); line-height:1.2; margin:0 0 18px; letter-spacing:-.02em}
.prose h2{font-size:19px; margin:30px 0 8px; letter-spacing:-.01em}
.prose h3{font-size:16px; margin:24px 0 6px}
.prose p,.prose li{color:var(--ink-2)}
.prose a{overflow-wrap:anywhere}
.prose ul,.prose ol{padding-left:22px}
.prose code{
  background:var(--accent-tint); color:var(--accent-dark);
  padding:.12em .38em; border-radius:6px; font-size:.9em;
}
.empty{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-panel); padding:28px; color:var(--ink-3);
}
.employers{margin-top:34px}
.employers h2{
  font-size:13px; margin:0 0 12px; color:var(--muted);
  text-transform:uppercase; letter-spacing:.06em; font-weight:700;
}
.employer-band{display:flex; flex-wrap:wrap; gap:8px}
.employer-band span{
  background:var(--card); border:1px solid var(--line);
  border-radius:999px; padding:7px 13px; font-size:14px; color:var(--ink-3);
}
.site-foot{
  background:var(--card); border-top:1px solid var(--line);
  padding:30px 0 56px; font-size:14px; color:var(--ink-3);
}
.site-foot p{margin:0 0 9px; max-width:70ch}
.site-foot a{text-decoration:none}@media (hover: hover) and (pointer: fine){.site-foot a:hover{text-decoration:underline}}
.site-foot .built{color:var(--muted); font-size:13px; margin-top:14px}
.foot-links{display:flex; flex-wrap:wrap; gap:6px 18px}
@media (max-width:700px){
  .site-head .shell{min-height:0; padding-top:6px; padding-bottom:6px; gap:2px}
  .site-nav{
    flex-wrap:nowrap; overflow-x:auto; width:100%;
    scrollbar-width:none; -ms-overflow-style:none;
  }
  .site-nav::-webkit-scrollbar{display:none}
  .site-nav a{
    font-size:14px; padding:0 9px; white-space:nowrap; flex:0 0 auto;
  }
  .wordmark{padding:8px 0}
}
@media (max-width:560px){
  .shell{padding:0 16px}
  
  .prose{padding:22px 18px; margin-top:20px; border-radius:var(--r-card)}
  .prose h1{margin-bottom:14px}
  .prose h2{margin:24px 0 6px}
  .prose h3{margin:18px 0 4px}
  .prose ul,.prose ol{padding-left:20px}
  .hero{padding:26px 0 4px}
  .layout{padding-top:20px}
  .jobgrid{gap:22px}
  .crumb{margin-top:18px}
  .panel{padding:16px 16px 18px}
  .excerpt{padding:18px 16px}
  .why,.report{padding:16px 18px}
  
  .citylist a{min-height:44px}
  
  .apply{display:block; text-align:center; padding:15px 18px}
  .site-foot{padding:26px 0 44px}
}
:root{
  --line-control:#767E88;
}
.finder{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-panel); padding:14px; margin:0 0 14px;
}
.search{
  display:flex; align-items:center; gap:10px; height:48px; padding:0 14px;
  background:var(--card); border:1px solid var(--line-control);
  border-radius:var(--r-button);
}
.search:focus-within{
  border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-tint);
}
.search svg{flex:0 0 auto; color:var(--icon)}
.search input{
  width:100%; border:0; outline:0; background:transparent; color:var(--ink);
  font:inherit;
  font-size:16px;
}
.search input::placeholder{color:var(--muted)}
.filters{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.filter{
  display:inline-flex; align-items:center; min-height:40px; padding:0 14px;
  border:1px solid var(--line-control); border-radius:999px;
  background:var(--card); color:var(--ink-2);
  font-size:14px; font-weight:600; text-decoration:none;
}@media (hover: hover) and (pointer: fine){.filter:hover{border-color:var(--accent); color:var(--accent-dark)}}
.filter[aria-current]{
  background:var(--accent-tint); border-color:var(--accent); color:var(--accent-dark);
}
.filter.is-B[aria-current]{
  background:var(--amber-tint); border-color:#E0C29A; color:var(--amber-ink);
}
.filter.is-E[aria-current]{
  background:var(--accent-fill); border-color:var(--accent); color:var(--accent-dark);
}
.applied{
  display:flex; flex-wrap:wrap; align-items:center; gap:8px;
  margin-top:14px; padding-top:13px; border-top:1px solid var(--line);
}
.applied .lbl{
  font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:var(--muted); margin-right:2px;
}
.pill{
  display:inline-flex; align-items:center; gap:8px; min-height:40px;
  padding:0 14px; border-radius:999px;
  background:var(--accent-tint); border:1px solid var(--accent-tint-line);
  color:var(--accent-dark); font-size:14px; font-weight:600; text-decoration:none;
}@media (hover: hover) and (pointer: fine){.pill:hover{background:#D8EAEE; color:var(--accent-dark)}}
.pill .x{font-size:16px; line-height:1; color:var(--accent)}
.clear{font-size:14px; margin-left:2px}
.found{margin:0 0 12px; font-size:14.5px; color:var(--ink-3)}
.found strong{color:var(--ink)}
.empty h2{font-size:17px; margin:0 0 8px; color:var(--ink)}
.empty p{margin:0 0 16px}
.loosen{list-style:none; margin:0; padding:0; display:grid; gap:10px}
.loosen a{
  display:flex; justify-content:space-between; align-items:center; gap:14px;
  min-height:52px; padding:0 16px;
  background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r-small); text-decoration:none; color:var(--ink-2);
  font-size:15px;
}@media (hover: hover) and (pointer: fine){.loosen a:hover{border-color:var(--accent-tint-line); background:var(--accent-tint)}}
.loosen .n{
  color:var(--accent-dark); font-weight:700; font-size:14px;
  font-variant-numeric:tabular-nums; white-space:nowrap;
}
@media (max-width:560px){
  .finder{padding:12px; border-radius:var(--r-card)}
  .filter,.pill{min-height:44px}
  .filters{flex-wrap:wrap; overflow-x:visible}
  .filter{flex:1 1 100%; justify-content:center; white-space:normal;
          text-align:center; padding:8px 14px}
}
.wordmark{display:inline-flex; align-items:center; gap:9px}
.wordmark .mark{flex:0 0 auto}
@media (min-width:861px){          
  .rail .key{order:-1}
  .rail .whennew{order:-1}
}
.foot-say{max-width:68ch}
.foot-cols{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px 32px; margin:24px 0 0; max-width:860px;
}
.foot-col h2{
  font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:var(--muted); margin:0 0 10px;
}
.foot-col ul{list-style:none; margin:0; padding:0}
.foot-col li{margin:0 0 2px}
.foot-col a{
  display:inline-block; padding:5px 0; font-size:14.5px; color:var(--ink-3);
}@media (hover: hover) and (pointer: fine){.foot-col a:hover{color:var(--accent-dark)}}
.site-foot .built{
  max-width:860px;
  margin-top:26px; padding-top:16px; border-top:1px solid var(--line);
  color:var(--muted); font-size:13px;
}
.site-foot .built .sep{padding:0 4px; color:var(--icon)}
@media (max-width:700px){
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 20px}
}
@media (max-width:420px){
  .foot-cols{grid-template-columns:1fr}
}
.prose h4{font-size:15px; margin:20px 0 4px; color:var(--ink)}
.prose li{margin:0 0 6px}
.prose li > ul, .prose li > ol{margin:6px 0}
.prose table{
  width:100%; border-collapse:collapse; margin:20px 0; font-size:15px;
}
.prose th,.prose td{
  padding:10px 12px; text-align:left; vertical-align:top;
  border-bottom:1px solid var(--line);
  font-variant-numeric:tabular-nums;
}
.prose thead th{
  font-size:12.5px; text-transform:uppercase; letter-spacing:.05em;
  color:var(--muted); font-weight:700; border-bottom:2px solid var(--line);
}
.prose tbody tr:last-child td{border-bottom:0}
.prose .scroll{overflow-x:auto; margin:20px 0}
.prose .scroll table{margin:0}
.prose blockquote{
  margin:20px 0; padding:2px 0 2px 16px;
  border-left:3px solid var(--accent-tint-line); color:var(--ink-3);
}
.prose blockquote p:last-child{margin-bottom:0}
.prose hr{border:0; border-top:1px solid var(--line); margin:28px 0}
.prose pre{
  margin:18px 0; padding:14px 16px; overflow-x:auto;
  background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r-small);
}
.prose pre code{background:none; color:var(--ink-2); padding:0; font-size:13.5px}
.prose img{display:block; max-width:100%; height:auto; border-radius:var(--r-small); margin:18px 0}
.prose figure{margin:18px 0}
.prose figcaption{font-size:13.5px; color:var(--muted); margin-top:8px}
.prose .note{
  margin:18px 0; padding:14px 16px; font-size:15px;
  background:var(--paper); border:1px solid var(--line);
  border-left:3px solid var(--ink-3); border-radius:var(--r-small);
}
.prose .note p:last-child{margin-bottom:0}
@media (max-width:560px){
  .prose table{font-size:13.5px}
  .prose th,.prose td{padding:9px 8px}
}
.linkcards{list-style:none; margin:22px 0 0; padding:0; display:grid; gap:12px}
@media (min-width:820px){ .linkcards{grid-template-columns:1fr 1fr} }
.linkcard{
  display:block; background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-card); padding:18px 20px; text-decoration:none;
}@media (hover: hover) and (pointer: fine){.linkcard:hover{border-color:var(--accent-tint-line); background:#FDFEFE}}
.linkcard h2{
  margin:0 0 5px; font-size:17px; font-weight:600; letter-spacing:-.01em;
  color:var(--ink);
}@media (hover: hover) and (pointer: fine){.linkcard:hover h2{color:var(--accent)}}
.linkcard p{margin:0; font-size:14.5px; color:var(--ink-3); line-height:1.5}
.gone{max-width:640px; margin:0 auto; padding:56px 0 24px; text-align:center}
.gone h1{font-size:clamp(24px,4vw,32px); line-height:1.2; letter-spacing:-.02em; margin:0 0 12px}
.gone p{margin:0 0 14px; color:var(--ink-3); font-size:16.5px}
.gone p:last-of-type{margin-bottom:26px}
.gone .ways{
  display:flex; flex-wrap:wrap; gap:10px; justify-content:center;
  border-top:1px solid var(--line); padding-top:24px;
}
.gone .ways a{
  display:inline-flex; align-items:center; min-height:44px; padding:0 18px;
  border:1px solid var(--line-control); border-radius:999px;
  font-size:15px; font-weight:600; color:var(--ink-2); text-decoration:none;
}@media (hover: hover) and (pointer: fine){.gone .ways a:hover{border-color:var(--accent); color:var(--accent-dark); background:var(--accent-tint)}}
.gone .ways a.go{background:var(--accent); border-color:var(--accent); color:#fff}@media (hover: hover) and (pointer: fine){.gone .ways a.go:hover{background:var(--accent-dark); color:#fff}}
@media (max-width:560px){
  .gone{padding:36px 0 16px; text-align:left}
  .gone .ways{justify-content:flex-start}
  .gone .ways a{flex:1 1 100%; justify-content:center}
}
.pager{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin:22px 0 0; padding-top:18px; border-top:1px solid var(--line);
  flex-wrap:wrap;
}
.pager .where{margin:0; font-size:14.5px; color:var(--ink-3); font-variant-numeric:tabular-nums}
.pager .where strong{color:var(--ink)}
.pages{display:flex; align-items:center; gap:6px; list-style:none; margin:0; padding:0;
       margin-left:auto; flex-wrap:wrap; justify-content:flex-end; min-width:0}
.pages a,.pages span{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:44px; min-height:44px; padding:0 12px;
  border:1px solid var(--line-control); border-radius:var(--r-button);
  font-size:15px; color:var(--ink-2); text-decoration:none;
  font-variant-numeric:tabular-nums;
}@media (hover: hover) and (pointer: fine){.pages a:hover{border-color:var(--accent); color:var(--accent-dark); background:var(--accent-tint)}}
.pages [aria-current]{
  background:var(--accent); border-color:var(--accent); color:#fff; font-weight:600;
}
.pages .gap{border:0; min-width:20px; padding:0; color:var(--icon)}
@media (max-width:699px){
  .pager{gap:14px}
  .pager .where{order:2; width:100%; text-align:center}
  .pages{order:1; width:100%; justify-content:space-between; margin-left:0}
  .pages .num,.pages .gap{display:none}
  .pages .step{flex:0 0 auto}
}
.jump{
  width:100%; order:3; display:flex; flex-wrap:wrap; align-items:center;
  gap:8px 10px; margin-top:4px; padding-top:12px;
  border-top:1px dashed var(--line);
}
.jump-lab{
  font-size:12.5px; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted); flex:none;
}
.rungs{
  list-style:none; margin:0; padding:0;
  display:flex; flex-wrap:wrap; gap:6px; min-width:0;
}
.rungs a,.rungs span{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:44px; min-height:44px; padding:0 10px;
  border:1px dashed var(--line-input); border-radius:var(--r-button);
  font-size:14px; color:var(--ink-2); text-decoration:none;
  font-variant-numeric:tabular-nums;
}@media (hover: hover) and (pointer: fine){.rungs a:hover{
  border-style:solid; border-color:var(--accent);
  color:var(--accent-dark); background:var(--accent-tint);
}}
.rungs [aria-current]{
  border-style:solid; border-color:var(--accent);
  color:var(--accent-dark); font-weight:600;
}
.pager:not(:has(.jump)) .pages{padding-right:150px}
.jump{padding-right:150px}
@media (max-width:560px){
  .pager:not(:has(.jump)) .pages{padding-right:60px}
  .jump{padding-right:60px}
  .totop{width:44px; min-width:44px; padding:0; justify-content:center;
         border-radius:50%}
  .totop span{
    position:absolute; width:1px; height:1px; overflow:hidden;
    clip-path:inset(50%); white-space:nowrap;
  }
  .totop::before{content:"\2191"; font-size:19px; line-height:1}
}
.prose .labeldef{
  margin:20px 0; padding:18px 20px;
  background:var(--paper); border:1px solid var(--line);
  border-left:3px solid var(--accent);
  border-radius:var(--r-card);
}
.prose .labeldef.b{border-left-color:#C9822C}
.prose .labeldef > .chip{margin:0 0 14px}
.prose .labeldef h3{
  margin:14px 0 4px; font-size:12.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em; color:var(--accent-dark);
}
.prose .labeldef.b h3{color:var(--amber-ink)}
.prose .labeldef > .chip + h3{margin-top:0}
.prose .labeldef h3.not::before{
  content:""; display:inline-block; width:14px; height:2px; margin-right:8px;
  vertical-align:middle; background:currentColor; opacity:.55;
}
.prose .labeldef p{margin:0; color:var(--ink-2); font-size:15px}
.prose .labeldef p + h3{margin-top:14px}
.prose .bilingual{
  display:grid; grid-template-columns:1fr 1fr;
  margin:20px 0; border:1px solid var(--line); border-radius:var(--r-card);
  overflow:hidden;
}
.prose .bilingual > div{padding:16px 18px}
.prose .bilingual > .de{background:var(--paper); border-right:1px solid var(--line)}
.prose .bilingual > .en{background:var(--card)}
.prose .bilingual h3{
  margin:0 0 8px; font-size:11.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em; color:var(--muted);
}
.prose .bilingual .de h3{color:var(--ink-2)}
.prose .bilingual p{margin:0 0 10px; font-size:14.5px}
.prose .bilingual p:last-child{margin-bottom:0}
.prose .bilingual .en p{color:var(--ink-3)}
@media (max-width:700px){
  .prose .bilingual{grid-template-columns:1fr}
  .prose .bilingual > .de{border-right:0; border-bottom:1px solid var(--line)}
}
.prose .reviewed{
  margin:22px 0 0; padding-top:14px; border-top:1px solid var(--line);
  font-size:13.5px; color:var(--muted);
}
.card-meta .where{white-space:normal}
.card-meta .loc{white-space:nowrap}
.card-meta .loc-more{color:var(--muted); white-space:nowrap}
.form{margin:0 0 26px}
.field{margin:0 0 18px}
.field label{
  display:block; font-size:14.5px; font-weight:600; color:var(--ink-2);
  margin:0 0 6px;
}
.field .opt{font-weight:400; color:var(--muted)}
.field input[type="text"],
.field input[type="email"],
.field select,
.field textarea{
  display:block; width:100%; font:inherit; font-size:16px; color:var(--ink);
  background:var(--card); border:1px solid var(--line-control);
  border-radius:var(--r-button); padding:11px 13px;
}
.field textarea{resize:vertical; min-height:150px; line-height:1.55}
.field input:focus, .field select:focus, .field textarea:focus{
  outline:0; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-tint);
}
.field .hint{
  display:block; margin-top:6px; font-size:13.5px; color:var(--muted);
}
.form .apply{width:auto; min-width:200px; cursor:pointer; border:0}
.hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
.note-problem{border-left-color:var(--amber-ink); background:var(--amber-tint)}
.note-quiet{font-size:14px; color:var(--muted); margin:0 0 22px}
.prose a[target="_blank"]::after{
  content:"\2197"; display:inline-block; margin-left:2px;
  font-size:.85em; line-height:1; color:var(--icon); text-decoration:none;
}
.acc-tap{color:inherit; text-decoration:none}
.totop{
  position:fixed; right:16px; bottom:16px; z-index:20;
  display:inline-flex; align-items:center; min-height:44px; padding:0 16px;
  background:var(--card); border:1px solid var(--line-control);
  border-radius:999px; color:var(--ink-2);
  font-size:14px; font-weight:600; text-decoration:none;
}@media (hover: hover) and (pointer: fine){.totop:hover{border-color:var(--accent); color:var(--accent-dark); background:var(--accent-tint)}}
@supports (animation-timeline: scroll()){
  .totop{
    opacity:0; visibility:hidden;
    animation:totop-in linear both;
    animation-timeline:scroll();
    animation-range:100px 600px;
  }
  @keyframes totop-in{
    from{opacity:0; visibility:hidden}
    1%{visibility:visible}
    to{opacity:1; visibility:visible}
  }
}
@media (prefers-reduced-motion:reduce){
  .totop{animation:none; opacity:1; visibility:visible}
}
@media print{ .totop{display:none} }
.key .key-more{margin-top:2px; font-size:14px}
.key .key-more a{text-decoration:none; font-weight:600}
.card-x{display:flex; gap:14px; align-items:flex-start}
.card-body{flex:1 1 auto; min-width:0}
.card-av{
  flex:0 0 auto; width:40px; height:40px; border-radius:11px;
  display:grid; place-items:center;
  background:#EEF0EC; color:var(--ink-2);
  font-size:16px; font-weight:700; line-height:1;
}
.card-x .card-meta{margin-bottom:10px}
.card-facts{display:flex; flex-wrap:wrap; align-items:center; gap:6px 6px}
.fact{
  display:inline-block; font-size:12.5px; font-weight:600; line-height:1;
  padding:5px 8px; border-radius:6px;
  border:1px solid var(--line-input); background:var(--card); color:var(--ink-2);
}
.card-facts .new{
  margin-left:auto; font-size:11.5px; font-weight:700; letter-spacing:.05em;
  text-transform:uppercase; color:var(--accent);
}
@media (max-width:560px){
  .card-av{display:none}
  .card-facts .new{margin-left:0}
}
@media (min-width:360px){ .card-facts .chip{white-space:nowrap} }
.strip{
  background:#F1F8FA; border:1px solid var(--accent-fill-line);
  border-radius:var(--r-panel); padding:16px 16px 6px; margin:0 0 22px;
}
.strip-head{display:flex; justify-content:space-between; align-items:baseline;
  gap:6px 14px; flex-wrap:wrap}
.strip-head h2{margin:0; font-size:17px; letter-spacing:-.01em}
.strip-head a{font-size:14.5px; font-weight:600; text-decoration:none}
.strip-sub{margin:2px 0 12px; font-size:14px; color:var(--ink-3)}
.strip .cards{gap:10px}
.strip .card{padding:14px 16px}
.strip .cards{margin-bottom:10px}
.rail-more{display:inline-block; margin-top:10px; font-size:14.5px;
  font-weight:600; text-decoration:none}
.placegrid{list-style:none; margin:24px 0 0; padding:0; display:grid; gap:10px;
  grid-template-columns:repeat(auto-fill, minmax(190px, 1fr))}
.placegrid:not(.is-medium){grid-template-columns:repeat(auto-fill, minmax(232px, 1fr))}
.place.is-big{gap:0; padding:18px 20px 16px}
.place.is-big .place-n{
  font-size:30px; font-weight:750; letter-spacing:-.02em; line-height:1.05;
  color:var(--ink);
}
.place.is-big .place-name{font-size:17px; margin-top:6px}
.place-note{font-size:13.5px; color:var(--muted); font-variant-numeric:tabular-nums}
.placegrid.is-medium{margin-top:10px}
.place-h{
  margin:30px 0 0; font-size:13px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--muted);
}
.place-h.place-country{
  margin:44px 0 0; padding-top:20px; border-top:1px solid var(--line);
  font-size:20px; letter-spacing:0; text-transform:none; color:var(--ink);
}
.place-h.place-country:first-of-type{margin-top:8px; padding-top:0; border-top:0}
.place-country-link{margin:4px 0 14px; font-size:14.5px}
.place-lede{margin:6px 0 0; max-width:60ch; font-size:14.5px; color:var(--muted)}
.placechips{list-style:none; margin:12px 0 0; padding:0;
  display:flex; flex-wrap:wrap; gap:8px}
.placechips a{
  display:inline-flex; align-items:center; gap:8px; min-height:44px;
  padding:0 14px; border-radius:999px;
  background:var(--card); border:1px solid var(--line);
  color:var(--ink-2); font-size:14.5px; text-decoration:none;
}@media (hover: hover) and (pointer: fine){.placechips a:hover{border-color:var(--accent-tint-line); color:var(--accent-dark)}}
.placechips span{
  color:var(--muted); font-size:13px; font-variant-numeric:tabular-nums;
}
.place{
  display:flex; flex-direction:column; gap:2px; min-height:72px;
  padding:14px 16px; border-radius:var(--r-small);
  background:var(--card); border:1px solid var(--line);
  text-decoration:none; color:var(--ink);
}@media (hover: hover) and (pointer: fine){.place:hover{border-color:var(--accent-tint-line); background:#FDFEFE}}
.place-name{font-size:16.5px; font-weight:650}@media (hover: hover) and (pointer: fine){.place:hover .place-name{color:var(--accent)}}
.place-n{font-size:14px; color:var(--muted); font-variant-numeric:tabular-nums}
.place.is-remote{background:#F1F8FA; border-color:var(--accent-fill-line)}
@media (max-width:560px){
  .placegrid{grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px}
  .place{padding:12px 14px}
  .place-name{overflow-wrap:anywhere}
}
.similar{
  margin:26px 0 0; padding:18px 20px; border-radius:var(--r-card);
  background:var(--card); border:1px solid var(--line);
}
.similar h2{margin:0 0 6px; font-size:17px; letter-spacing:-.01em}
.similar ul{list-style:none; margin:0; padding:0}
.similar li{padding:12px 0; border-top:1px solid var(--line)}
.similar li:first-child{border-top:0}
.similar li > a{font-weight:600; color:var(--ink); text-decoration:none;
  line-height:1.35}@media (hover: hover) and (pointer: fine){.similar li > a:hover{color:var(--accent)}}
.similar-meta{display:flex; flex-wrap:wrap; align-items:center; gap:4px 0;
  margin-top:4px; font-size:14px; color:var(--ink-3)}
.similar-meta .dot{color:var(--icon); padding:0 8px}
.similar-all{display:inline-block; margin-top:8px; font-size:14.5px;
  font-weight:600; text-decoration:none}
@media (max-width:560px){ .similar{padding:16px} }
.guidecard{display:flex; gap:14px; align-items:flex-start}
.gicon{
  flex:0 0 auto; width:40px; height:40px; padding:9px; border-radius:11px;
  background:var(--accent-tint); fill:none; stroke:var(--accent-dark);
  stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;
}
.gtext{min-width:0}
.guidecard h2, .guidecard h3{
  margin:0 0 4px; font-size:17px; line-height:1.3; letter-spacing:-.01em;
  color:var(--ink);
}@media (hover: hover) and (pointer: fine){.guidecard:hover h2, .guidecard:hover h3{color:var(--accent)}}
.gtime{display:inline-block; margin-top:8px; font-size:12.5px; font-weight:600;
  color:var(--muted)}
.guideband{margin-top:48px; padding-top:32px; border-top:1px solid var(--line)}
.guideband-head{display:flex; justify-content:space-between; align-items:baseline;
  gap:6px 14px; flex-wrap:wrap}
.guideband-head h2{margin:0; font-size:22px; letter-spacing:-.02em}
.guideband-head a{font-size:15px; font-weight:600; text-decoration:none}
.guideband .linkcards{margin-top:16px}
.guidegroup{margin-top:34px}
.guidegroup:first-of-type{margin-top:26px}
.guidegroup > h2{
  margin:0; font-size:13px; font-weight:700; text-transform:uppercase;
  letter-spacing:.07em; color:var(--muted);
}
.guidegroup .linkcards{margin-top:12px}
.foot-top{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);
  gap:22px 40px; align-items:start;
  padding-bottom:26px; border-bottom:1px solid var(--line);
}
.foot-mark{
  display:inline-flex; align-items:center; gap:9px;
  font-size:18px; font-weight:700; letter-spacing:-.01em; color:var(--ink);
}@media (hover: hover) and (pointer: fine){.site-foot a.foot-mark:hover{text-decoration:none}}
.foot-mark .hi{color:var(--accent)}
.foot-mark .mk-a{fill:#0F6B7E}
.foot-mark .mk-b{fill:#D9862B}
.site-foot .foot-say{margin:10px 0 0; font-size:15px; line-height:1.55; color:var(--ink-3)}
.foot-promises{list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px}
.foot-promises li{
  display:flex; flex-direction:column; gap:10px;
  padding:14px 14px 15px; border-radius:var(--r-small);
  background:var(--paper); border:1px solid var(--line);
  font-size:14px; line-height:1.45; color:var(--ink-3);
}
.foot-promises strong{color:var(--ink); font-weight:650}
.foot-promises svg{
  width:34px; height:34px; padding:7px; border-radius:9px;
  background:var(--accent-tint); fill:none; stroke:var(--accent-dark);
  stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;
}
.foot-cols{margin-top:26px}
.site-foot .built{max-width:none}
.foot-more{font-weight:600}
.site-foot .foot-col a.foot-more{color:var(--accent)}
@media (max-width:860px){
  .foot-top{grid-template-columns:1fr}
}
@media (max-width:560px){
  .foot-promises{grid-template-columns:1fr; gap:8px}
  .foot-promises li{flex-direction:row; align-items:center; gap:12px; padding:12px}
  .foot-promises svg{flex:0 0 auto}
}
.foot-dark{
  background:#0A4E5C; border-top:0; color:#CFE4E8;
}
.foot-dark .foot-top{border-bottom-color:rgba(255,255,255,.14)}
.foot-dark .foot-mark{color:#fff}
.foot-dark .foot-mark .hi{color:#9FD3DE}
.foot-dark .foot-mark .mk-a{fill:#E6F2F4}
.foot-dark .foot-say{color:#CFE4E8}
.foot-dark .foot-promises li{
  background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12); color:#CFE4E8;
}
.foot-dark .foot-promises strong{color:#fff}
.foot-dark .foot-promises svg{background:rgba(255,255,255,.1); stroke:#fff}
.foot-dark .foot-col h2{color:#9FC6CE}
.foot-dark .foot-col a{color:#E6F2F4}@media (hover: hover) and (pointer: fine){.foot-dark .foot-col a:hover{color:#fff}}
.site-foot.foot-dark .foot-col a.foot-more{color:#F2C08A}
.foot-dark .built{border-top-color:rgba(255,255,255,.14); color:#9FC6CE}
.foot-dark .built .sep{color:#6FA3AE}
.prose p, .prose li{overflow-wrap:break-word}
@media (max-width:560px){
  .prose th, .prose td{overflow-wrap:anywhere; hyphens:auto}
}
.ad{margin:40px 0 0; padding-top:12px; border-top:1px solid var(--line)}
.ad-label{margin:0 0 8px; font-size:12px; letter-spacing:.06em;
  text-transform:uppercase; color:var(--muted)}
@supports selector(:has(*)){
  .ad .ad-label{display:none}
  .ad:has(ins[data-ad-status="filled"]) .ad-label{display:block}
  .ad:has(ins[data-ad-status="unfilled"]){display:none}
  .ad:not(:has(ins[data-ad-status])){border-top:0; padding-top:0}
}
.card{position:relative}
.card-title::after{content:""; position:absolute; inset:0}
@media (hover: hover) and (pointer: fine){.card:hover{cursor:pointer; border-color:var(--accent-tint-line)}}
.toc{
  margin:18px 0 22px; padding:14px 16px;
  background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r-card);
}
.toc h2{
  margin:0 0 10px; font-size:12px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--muted);
}
.toc ol{list-style:none; margin:0; padding:0; counter-reset:toc}
.toc li{counter-increment:toc}
.toc a{
  display:flex; gap:10px; align-items:baseline; min-height:40px;
  padding:4px 0; font-size:14.5px; line-height:1.35;
  color:var(--ink-2); text-decoration:none;
}
.toc a::before{
  content:counter(toc); flex:none; min-width:1.3em;
  font-size:12.5px; font-weight:700; color:var(--icon);
  font-variant-numeric:tabular-nums;
}@media (hover: hover) and (pointer: fine){.toc a:hover{color:var(--accent-dark)}}@media (hover: hover) and (pointer: fine){.toc a:hover::before{color:var(--accent)}}
@media (min-width:900px){
  .prose.has-toc{
    max-width:1024px;
    display:grid; grid-template-columns:minmax(0,1fr) 236px;
    column-gap:30px; align-items:start;
  }
  .prose.has-toc > *{grid-column:1; min-width:0}
  .prose.has-toc > .toc{
    grid-column:2; grid-row:1 / span 200;
    margin:6px 0 0; background:transparent; border:0;
    border-left:1px solid var(--line); border-radius:0; padding:2px 0 2px 16px;
    position:sticky; top:20px; max-height:calc(100vh - 40px); overflow:auto;
  }
}
.prose h2{scroll-margin-top:18px}
.similar li{padding:0}
.similar-row{
  display:block; padding:11px 0; text-decoration:none; color:var(--ink);
}
.similar-title{display:block; font-weight:600; line-height:1.35}@media (hover: hover) and (pointer: fine){.similar-row:hover .similar-title{color:var(--accent)}}
.similar-meta{margin-top:4px}
@media (max-width:700px){
  .key-more a, .strip-head a, .similar-all, .rail-more, .foot-more,
  .report-do a, .guideband-head a, .stream-head a{
    display:inline-flex; align-items:center; min-height:44px;
  }
  .report-do{display:flex; flex-wrap:wrap; gap:0 22px}
  .facts a{display:inline-flex; align-items:center; min-height:44px}
}
.site-head{position:relative}          
.site-nav{align-items:center}
.menu{position:static}
.site-nav .menu-tap{
  display:inline-flex; align-items:center; gap:6px; min-height:44px;
  padding:0 12px; border-radius:var(--r-button);
  font-size:15px; color:var(--ink-2); text-decoration:none; cursor:pointer;
}
.site-nav .menu-tap::after{
  content:"\2304"; font-size:15px; line-height:1; color:var(--icon);
  position:relative; top:-2px;
}@media (hover: hover) and (pointer: fine){.site-nav .menu-tap:hover{background:var(--accent-tint); color:var(--accent-dark)}}
.site-nav .menu-tap.is-active{color:var(--accent); font-weight:600}
.menu-panel{display:none; background:var(--card)}
.menu-cols{display:grid; gap:18px 26px; grid-template-columns:repeat(4,minmax(0,1fr))}
.menu-cols.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.menu-col h2{
  margin:0 0 6px; font-size:11.5px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; color:var(--muted);
}
.site-nav .menu-col a{
  display:flex; justify-content:space-between; align-items:baseline; gap:12px;
  min-height:34px; padding:4px 0; font-size:14.5px; line-height:1.3;
  color:var(--ink-2); text-decoration:none;
}@media (hover: hover) and (pointer: fine){.site-nav .menu-col a:hover{color:var(--accent-dark)}}
.site-nav .menu-col a .n{
  flex:0 0 auto; font-size:12.5px; color:var(--icon);
  font-variant-numeric:tabular-nums;
}@media (hover: hover) and (pointer: fine){.site-nav .menu-col a:hover .n{color:var(--muted)}}
.site-nav .menu-all{color:var(--accent); font-weight:600; padding:4px 0}
.site-nav .menu-close{display:none}
@media (min-width:861px){
  .menu-panel{
    position:absolute; top:calc(100% - 1px); right:24px; z-index:40;
    width:min(880px, calc(100vw - 48px));
    border:1px solid var(--line); border-top:0;
    border-radius:0 0 var(--r-panel) var(--r-panel);
    box-shadow:0 10px 24px rgba(20,24,27,.10);
    padding:20px 22px 22px;
  }
  .menu-panel.narrow{width:min(560px, calc(100vw - 48px))}
  .menu:target .menu-panel,
  .menu:focus-within .menu-panel{display:block}
  .site-nav .menu:target .menu-tap,
  .site-nav .menu:focus-within .menu-tap{background:var(--accent-tint); color:var(--accent-dark)}
  
  .site-nav .menu:target .menu-close{display:inline-flex; min-height:36px; margin-top:12px}
}
@media (max-width:860px){
  .menu{display:contents}
  .menu-tap{order:0}
  .menu-panel{
    order:9; flex:1 1 100%; margin:2px 0 8px;
    border:1px solid var(--line); border-radius:var(--r-card); padding:12px 14px;
  }
  .menu:target .menu-panel{display:block}
  .menu-cols,.menu-cols.two{grid-template-columns:1fr; gap:10px}
  .site-nav .menu-col a{min-height:44px; padding:4px 0; border-bottom:1px solid #F1F2EF; font-size:15px}
  .site-nav .menu-col a:last-child{border-bottom:0}
  .site-nav .menu-close{display:inline-flex; min-height:44px; margin-top:6px}
  .site-nav{flex-wrap:wrap; overflow:visible}
  .site-nav .menu-tap{font-size:14px; padding:0 9px; gap:4px}
  @media (max-width:380px){ .site-nav .menu-tap .wide{display:none} }
  @media (max-width:345px){
    .site-nav a, .site-nav .menu-tap{padding:0 7px}
    .site-nav{gap:0}
  }
}
@media (min-width:861px){
  .hero-split{
    max-width:none; display:grid; gap:36px; align-items:start;
    grid-template-columns:minmax(0,1fr) 440px;
    padding:36px 0 4px;
  }
  .hero-lede{max-width:620px}
  .hero-panel{
    background:var(--card); border:1px solid var(--line);
    border-radius:var(--r-panel); padding:20px 22px;
  }
  .hero-split .hero-panel .tally{margin:0}
  .hero-split .hero-panel .tally-n{font-size:40px}
  .hero-split .hero-panel .mixbar{margin:14px 0 13px}
  .hero-split .hero-panel .mixkey{gap:6px; font-size:14px}
}
.hero-sub{max-width:56ch}
.hero .hero-sub{margin:0; color:var(--ink-3); font-size:17px; line-height:1.55}
@media (max-width:700px){
  .hero .hero-sub{font-size:15.5px; line-height:1.5}
  .hero{padding-top:22px}
  .hero .tally{margin-top:14px}
  .hero .mixbar{margin:12px 0 12px}
}
@media (min-width:861px){
  .finder{
    position:sticky; top:0; z-index:30;
    display:flex; align-items:center; flex-wrap:wrap; gap:10px 12px;
    padding:12px 14px;
    border-radius:0 0 var(--r-panel) var(--r-panel);
    background:var(--card);
    box-shadow:0 6px 14px -10px rgba(20,24,27,.35);
  }
  .finder:not(:has(.filter)):not(:has(.search)):not(:has(.applied)){display:none}
  
  .finder .search{flex:1 1 260px; min-width:200px; height:44px; margin:0}
  .finder .filters{margin:0; flex:0 1 auto; gap:8px}
  .filter{min-height:36px; padding:0 12px; font-size:13.5px}
  .finder .applied{flex:1 1 100%; margin:0; padding:0; border-top:0; gap:8px}
  .finder .applied .pill{min-height:32px; padding:0 12px; font-size:13.5px}
  .finder .applied .lbl{font-size:11.5px}
  
  .cards .card,.stream-head,.strip,.found{scroll-margin-top:170px}
}
.card-tE::before,.card-tA::before,.card-tB::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:4px;
  pointer-events:none;
}
.card-tE::before{background:var(--seg-E)}
.card-tA::before{background:var(--seg-A)}
.card-tB::before{background:var(--seg-B)}
.card-tE,.card-tA,.card-tB{padding-left:20px}
.site-nav .menu-shut{display:none}
.site-nav .menu:target .menu-tap{display:none}
.site-nav .menu:target .menu-shut{display:inline-flex}
.site-nav .menu-close{
  align-items:center; gap:8px; padding:0;
  font-size:14px; font-weight:600; color:#B3261E;
}
.site-nav .menu:target .menu-tap::after{transform:rotate(180deg)}
.site-nav .menu-close::before{
  content:"\00D7"; font-size:19px; line-height:1; font-weight:400;
  position:relative; top:-1px;
}@media (hover: hover) and (pointer: fine){.site-nav .menu-close:hover{color:#8E1E17; text-decoration:underline}}
.jobtitle{border-left:4px solid var(--line); padding-left:16px; margin-bottom:22px}
.jt-E{border-left-color:var(--seg-E)}
.jt-A{border-left-color:var(--seg-A)}
.jt-B{border-left-color:var(--seg-B)}
.jobtitle h1{margin-top:0}
@media (min-width:861px){
  .jobgrid{grid-template-columns:1fr 300px}
  .rail > .p-apply{position:sticky; top:16px}
  .p-apply{padding:16px}
}
.p-apply{
  border-color:var(--accent-tint-line);
  box-shadow:0 0 0 3px var(--accent-tint), 0 6px 18px rgba(15,107,126,.10);
}
.p-apply .cta{margin:0}
.p-apply .apply{display:block; text-align:center}
.p-facts h2{margin-top:0}
.railjobs,.raillinks{list-style:none; margin:0; padding:0}
.railjobs li{border-top:1px solid var(--line)}
.railjobs li:first-child{border-top:0}
.railjob{
  display:block; padding:10px 0 10px 11px; border-left:3px solid var(--line);
  text-decoration:none; color:var(--ink);
}@media (hover: hover) and (pointer: fine){.railjob:hover .rj-title{color:var(--accent)}}
.rj-title{display:block; font-size:14.5px; font-weight:600; line-height:1.35; margin-bottom:6px}
.raillinks li{border-top:1px solid var(--line)}
.raillinks li:first-child{border-top:0}
.raillinks a{
  display:flex; justify-content:space-between; align-items:baseline; gap:12px;
  min-height:44px; padding:6px 0; font-size:14.5px; color:var(--ink-2);
  text-decoration:none;
}@media (hover: hover) and (pointer: fine){.raillinks a:hover{color:var(--accent-dark)}}
.raillinks .n{color:var(--muted); font-size:12.5px; font-variant-numeric:tabular-nums}
@media (max-width:860px){
  .jobgrid{display:flex; flex-wrap:wrap; align-items:flex-start; gap:0}
  .jobgrid > .jobhead, .jobgrid > .rail{display:contents}
  .jobgrid > .jobhead > *{order:5; flex:1 1 100%; min-width:0}
  .jobgrid > .jobhead > .jobtitle{order:1}
  .jobgrid > .jobhead > .excerpt{order:2}
  .jobgrid > .rail > .panel{order:9; flex:1 1 100%; margin-top:16px}
  .jobgrid > .rail > .p-apply{order:3; margin:0}
  .jobgrid > .rail > .p-facts{order:4; margin:16px 0 20px}
  .jobtitle{border-left-width:3px; padding-left:12px}
}
@media (min-width:701px){
  .placegrid.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.placegrid > li{display:grid}
.hub-other{
  margin:34px 0 0; padding:18px 20px 20px;
  background:var(--paper); border:1px dashed var(--line-input); border-radius:var(--r-panel);
}
.hub-other h2{margin:0 0 6px; font-size:16px; letter-spacing:-.01em}
.hub-other p{margin:0 0 12px; color:var(--ink-3); font-size:14.5px; max-width:62ch}
.hub-other-link{font-size:14.5px; font-weight:600; color:var(--accent);
  display:inline-flex; align-items:center; min-height:44px}
@media (min-width:861px){
  .hero-wide{max-width:none}
  .hero-wide .hero-lede{max-width:72ch}
}
.hero-note{margin-top:12px}
.hero-note p{margin:0}
.hero .hero-note .tally-note{margin:0}
.hero h1{font-size:clamp(28px,4.4vw,38px)}
.prose h1,.jobtitle h1{font-size:clamp(25px,3.6vw,32px)}
:root{--page-top:22px; --crumbs-h:36px}
.crumbs{margin-top:var(--page-top)}
.hero{padding-top:14px}
.hero:first-child{padding-top:calc(var(--page-top) + var(--crumbs-h) + 14px)}
.prose{padding-top:14px; margin-top:0}
.jobgrid{padding-top:14px}
@media (min-width:861px){
  :root{--page-top:26px}
  .hero{padding-top:18px}
  .hero:first-child{padding-top:calc(var(--page-top) + var(--crumbs-h) + 18px)}
  .prose,.jobgrid{padding-top:18px}
}
.card-when{
  margin:8px 0 0; font-size:12.5px; line-height:1.35; color:var(--muted);
}
.jobhead .card-when{display:none}
.daygroup{margin-top:26px}
.stream > .daygroup:first-of-type{margin-top:0}
.stream-head a{font-size:14.5px; font-weight:600; text-decoration:none}
.afternote{
  margin:26px 0 0; padding-top:16px; border-top:1px solid var(--line);
  font-size:14px; line-height:1.55; color:var(--ink-3); max-width:62ch;
}
.daypills{display:flex; gap:6px; flex-wrap:wrap}
.daypill{
  flex:1 1 86px; min-width:86px; min-height:44px;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:2px; padding:9px 6px 8px; text-decoration:none;
  background:var(--card); border:1px solid var(--line-input); border-radius:10px;
}
.daypill .dp-l{font-size:12.5px; font-weight:600; color:var(--ink-2); white-space:nowrap}
.daypill .dp-n{font-size:16px; font-weight:700; color:var(--ink); letter-spacing:-.01em}
.daypill.is-on{background:var(--accent-tint); border-color:var(--accent-tint-line)}
.daypill.is-on .dp-l, .daypill.is-on .dp-n{color:var(--accent)}
.daynote{margin:9px 0 0; font-size:12.5px; line-height:1.45; color:var(--muted)}
.prose sup{line-height:0}
.prose .footnote-ref{
  font-size:12px; font-weight:600; text-decoration:none; white-space:nowrap;
  padding:0 1px;
}
.prose .footnote-ref:focus-visible,.prose .footnote-backref:focus-visible{
  outline:2px solid currentColor; outline-offset:2px;
}
.prose .sources{
  margin:28px 0 0; padding-top:14px; border-top:1px solid var(--line);
  font-size:14px; color:var(--ink-2);
}
.prose .sources h2{font-size:18px; margin:0 0 10px}
.prose .sources ol{margin:0; padding-left:26px}
.prose .sources li{margin:0 0 8px; overflow-wrap:anywhere}
.prose .sources li p{margin:0}
.prose .sources .footnote-backref{text-decoration:none; margin-left:4px}
.prose .sources li:target{background:var(--line); border-radius:4px}
.card-emp,
.card-city,
.fact-link,
a.fact-kind{position:relative; z-index:1}
.card-emp,
.card-city{color:inherit; text-decoration:none}.card-emp:focus-visible, .card-city:focus-visible{color:var(--accent); text-decoration:underline}
@media (hover: hover) and (pointer: fine){.card-emp:hover, .card-city:hover{color:var(--accent); text-decoration:underline}}
.card-meta .loc-in{white-space:nowrap; color:var(--muted)}
.fact-link{text-decoration:none}.fact-link:focus-visible{
  border-color:var(--accent-tint-line); color:var(--accent);
}
@media (hover: hover) and (pointer: fine){.fact-link:hover{
  border-color:var(--accent-tint-line); color:var(--accent);
}}
.fact-kind{
  border-style:dashed; color:var(--muted);
  font-weight:500;
}
a.fact-kind{text-decoration:none}a.fact-kind:focus-visible{
  border-color:var(--accent-tint-line); color:var(--accent);
}
@media (hover: hover) and (pointer: fine){a.fact-kind:hover{
  border-color:var(--accent-tint-line); color:var(--accent);
}}
.note-empty{margin-top:4px}
.frow{margin-top:12px; display:flex; flex-wrap:wrap; gap:8px; align-items:flex-start}
.flab{
  flex:0 0 68px; align-self:center; font-size:11px; font-weight:700;
  letter-spacing:.09em; text-transform:uppercase; color:var(--muted);
  padding-right:2px;
}
.fchips{display:flex; flex-wrap:wrap; gap:8px; flex:1 1 220px; min-width:0}
.fsep{
  flex:0 0 1px; align-self:stretch; min-height:26px;
  background:var(--line); margin:0 3px;
}
.filter .wn{
  margin-left:7px; font-weight:500; color:var(--muted);
  font-variant-numeric:tabular-nums;
}
.filter[aria-current] .wn{color:inherit; opacity:.75}
.filter.is-in{background:var(--paper); border-color:var(--accent-tint-line)}
.filter.is-step{border-style:dashed}
.filter.is-dead{color:var(--muted); background:var(--paper); cursor:default}
.filter.is-lang{border-color:transparent; font-weight:600}
.filter.is-lang.is-A{background:var(--accent-tint); color:var(--accent-dark)}
.filter.is-lang.is-B{background:var(--amber-tint); color:var(--amber-ink)}
.filter.is-lang.is-E{
  background:var(--accent-fill); color:var(--accent-dark);
  box-shadow:inset 0 0 0 1px var(--accent-fill-line);
}@media (hover: hover) and (pointer: fine){.filter.is-lang:hover{border-color:transparent; box-shadow:inset 0 0 0 1.5px var(--accent)}}
.filter.is-lang[aria-current]{box-shadow:inset 0 0 0 2px var(--accent)}
.filter.is-lang.is-B[aria-current]{box-shadow:inset 0 0 0 2px var(--amber-ink)}
.filter.is-off{
  background:var(--paper); border:1px dashed var(--line);
  color:var(--icon); font-weight:500; box-shadow:none;
}
.filter .x{
  margin-left:8px; font-size:11px; opacity:.7; font-weight:400;
}
.lnote{
  margin:8px 0 0 76px; font-size:13px; color:var(--icon); line-height:1.45;
}
.loc-en{color:var(--muted); font-weight:400}@media (hover: hover) and (pointer: fine){a.card-city:hover .loc-en{color:inherit}}
.scopebar{background:#101418; color:#F4F5F3}
.scopebar .shell{
  display:flex; align-items:center; flex-wrap:wrap; gap:9px;
  padding-top:10px; padding-bottom:10px;
}
.scopebar .sb-total{margin:0; font-size:14.5px; white-space:nowrap}
.scopebar .sb-total strong{font-weight:700; font-size:16px}
.scopebar .sb-of{color:#98A0A8; margin-left:5px}
.sb-tok{
  display:inline-flex; align-items:center; gap:9px;
  background:#222A31; border:1px solid #333C45; border-radius:999px;
  padding:5px 7px 5px 13px; font-size:14px; color:#fff;
}
.sb-tok a{
  display:inline-grid; place-items:center; width:20px; height:20px;
  border-radius:50%; background:#39434C; color:#E8EBEA;
  font-size:11px; text-decoration:none;
}@media (hover: hover) and (pointer: fine){.sb-tok a:hover{background:#4C5761; color:#fff}}
.sb-clear{
  margin-left:auto; color:#9FD6E2; font-size:13.5px; text-decoration:underline;
}@media (hover: hover) and (pointer: fine){.sb-clear:hover{color:#fff}}
@media (max-width:860px){
  .scopebar{position:sticky; top:0; z-index:30}
  .scopebar .shell{gap:7px; padding-top:8px; padding-bottom:8px}
  .scopebar .sb-total{font-size:13.5px}
  .sb-tok{font-size:13px; padding:4px 5px 4px 11px}
  .sb-clear{font-size:12.5px}
}
.citylist .dead{
  display:flex; justify-content:space-between; gap:10px; align-items:baseline;
  padding:7px 0; color:var(--muted); font-size:14.5px;
}
.citylist .dead .n{font-variant-numeric:tabular-nums; color:var(--icon)}
p, li, dd, dt, figcaption,
.found, .hero-sub, .note, .note-quiet, .tally-note, .menu-gone, .lnote{
  text-wrap:pretty;
}
h1, h2, h3, h4, .card-title{text-wrap:balance}
.found-promise{color:var(--muted); font-size:13px}
.hero-note .wider{margin:0; font-size:14.5px}
.hero-note .wider .quiet{color:var(--muted); margin-left:8px; font-size:13.5px}
.regionpanel,.regionplaces,.placepanel{margin:0 0 22px}
.regionpanel h2,.regionplaces h2,.placepanel h2{margin:0; font-size:16px}
.moreplaces{margin:10px 0 0}
.moreplaces > summary{
  display:inline-flex; align-items:center; gap:8px; width:auto;
  min-height:44px; padding:0 15px; border-radius:999px;
  background:var(--paper); border:1px dashed var(--line-input);
  color:var(--accent); font-size:14.5px; font-weight:600; cursor:pointer;
  list-style:none;
}
.moreplaces > summary::-webkit-details-marker{display:none}
.moreplaces > summary::after{content:"\002B"; font-weight:700; color:var(--icon)}
.moreplaces[open] > summary::after{content:"\2212"}@media (hover: hover) and (pointer: fine){.moreplaces > summary:hover{border-color:var(--accent-tint-line); color:var(--accent-dark)}}
.moreplaces > summary:focus-visible{outline:2px solid var(--accent); outline-offset:2px}
.moreplaces .moreinner{padding:2px 0 0}
.regionplaces .placechips .dead{
  display:inline-flex; align-items:center; gap:6px; padding:6px 11px;
  border:1px solid var(--line); border-radius:999px;
  background:var(--paper); color:var(--muted); font-size:14px; font-weight:600;
}
.regionplaces .placechips .dead span{color:var(--muted)}
@media (max-width:560px){
  .flab{flex-basis:100%; align-self:flex-start}
  .lnote{margin-left:0}
  .fsep{display:none}
}
@media (max-width:560px){
  .fchips .filter{
    flex:0 1 auto; padding:0 13px; white-space:nowrap; text-align:left;
  }
  .fchips .filter.is-lang{flex:1 1 100%; white-space:normal}
  .frow{gap:7px}
}
.menu-scope{
  margin:0; padding:11px 18px; font-size:13px; line-height:1.45;
  background:var(--accent-tint); border-bottom:1px solid var(--accent-tint-line);
  color:var(--accent-dark);
}
.menu-scope strong{font-weight:700}
.menu-scope a{color:var(--accent-dark); margin-left:4px}
.menu-gone{
  margin:9px 0 0; font-size:12px; line-height:1.45; color:var(--icon);
}
.site-nav .dotl{
  display:inline-block; width:10px; height:10px; padding:0; border-radius:50%;
  margin-right:9px; vertical-align:1px; flex:0 0 auto;
}
.site-nav .menu-col a:has(.dotl){justify-content:flex-start; gap:0}
.site-nav .menu-sub{
  margin:12px 0 3px; font-size:10.5px; font-weight:700; letter-spacing:.06em;
  text-transform:uppercase; color:var(--icon);
}
.site-nav .menu-col > .menu-sub:first-of-type{margin-top:2px}
@media (max-width:860px){
  .card-emp,
  .card-city{padding-block:6px}
  
  .sb-tok a{position:relative}
  .sb-tok a::after{content:""; position:absolute; inset:-8px}
}
.citylist a.is-active .n, .place .place-note{color:var(--ink-3)}
@media (hover: hover) and (pointer: fine){.site-nav .menu-col a:hover .n{color:var(--ink-3)}}
.fact-sub{border-color:#EBEEEA}
.jobtitle h1,
a.card-title,
.card-emp{overflow-wrap:break-word}
.site-nav .menu-sub,
.menu-gone,
.lnote,
.citylist .dead .n,
.filter.is-off{color:var(--muted)}
.prose .footnote-ref,
.prose .sources .footnote-backref{position:relative}
.prose .sources .footnote-backref{
  display:inline-block; min-width:26px; text-align:center; margin-left:0;
}
.prose .footnote-ref::after,
.prose .sources .footnote-backref::after{
  content:""; position:absolute; z-index:0;
  left:50%; top:50%; transform:translate(-50%,-50%);
  width:max(100%, 26px); height:26px;
}
.prose sup + sup{margin-left:6px}
.fopen, .fopen-btn{display:none}
@media (max-width:860px){
  @supports selector(:has(*)){
    .fopen{
      display:block; position:absolute; width:1px; height:1px;
      margin:0; opacity:0; pointer-events:none;
    }
    .fopen-btn{
      display:flex; align-items:center; gap:8px; width:100%;
      min-height:44px; margin:10px 0 0; padding:0 14px;
      border:1px solid var(--line-input); border-radius:999px;
      background:var(--card); color:var(--ink-2);
      font-size:14px; font-weight:600; cursor:pointer;
    }
    .fopen-btn svg{flex:0 0 auto; color:var(--icon)}
    .fopen-btn .fo-chev{
      margin-left:auto; font-size:20px; line-height:1; color:var(--icon);
      transform:rotate(90deg); transition:transform .15s;
    }
    .fopen-btn .fo-hide{display:none}
    .fopen:checked + .fopen-btn{border-color:var(--accent-tint-line); color:var(--accent-dark)}
    .fopen:checked + .fopen-btn .fo-show{display:none}
    .fopen:checked + .fopen-btn .fo-hide{display:inline}
    .fopen:checked + .fopen-btn .fo-chev{transform:rotate(-90deg)}
    .fopen:focus-visible + .fopen-btn{outline:2px solid var(--accent); outline-offset:3px}
    
    .finder:has(> .fopen:not(:checked)) > .frow,
    .finder:has(> .fopen:not(:checked)) > .lnote{display:none}
    .layout:has(.finder > .fopen:not(:checked)) > .rail > .panel.acc{display:none}
    .finder > .fopen:first-child + .fopen-btn{margin-top:0}
  }
  
  .layout > .rail > .whennew{order:5}
}
@media (min-width:861px){
  .rail .key, .rail .whennew{order:0}
}
.browsefold{margin:0 0 14px}
.browsefold > .panel{
  background:none; border:0; border-radius:0; padding:0; margin:0 0 18px;
}
.browsefold > .panel:last-child{margin-bottom:0}
.browsefold > .panel h2{font-size:14px}
.report-do a.report-btn{
  display:inline-flex; align-items:center; min-height:44px; padding:0 16px;
  border:1px solid var(--line-control); border-radius:var(--r-button);
  background:var(--card); color:var(--ink-2); font-weight:600;
  text-decoration:none;
}@media (hover: hover) and (pointer: fine){.report-do a.report-btn:hover{border-color:var(--accent); color:var(--accent-dark)}}
.report-do{align-items:center}
.btn-send{
  display:inline-block; min-width:200px; background:var(--accent); color:#fff;
  padding:14px 22px; border:0; border-radius:var(--r-button); cursor:pointer;
  font:inherit; font-weight:600; font-size:16px; line-height:1.3;
}@media (hover: hover) and (pointer: fine){.btn-send:hover{background:var(--accent-dark)}}
.btn-send:focus-visible{outline-color:var(--accent-dark)}
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.rl-job{
  background:var(--accent-tint); border:1px solid var(--accent-tint-line);
  border-radius:var(--r-panel); padding:16px 18px; margin:0 0 22px;
}
.rl .rl-k{margin:0 0 4px; font-size:12.5px; font-weight:700; letter-spacing:.06em;
  text-transform:uppercase; color:var(--accent-dark)}
.rl .rl-title{margin:0 0 12px; font-size:18px; font-weight:700; color:var(--ink); line-height:1.35}
.rl-facts{margin:0; display:grid; gap:8px}
.rl-facts div{display:grid; grid-template-columns:92px 1fr; gap:10px}
.rl-facts dt{font-size:13px; color:var(--muted); margin:0}
.rl-facts dd{margin:0; font-size:14.5px; color:var(--ink-2); min-width:0}
.rl-url{overflow-wrap:anywhere}
.rl-reasons{border:0; padding:0; margin:0 0 18px}
.rl-reasons legend{padding:0; margin:0 0 8px; font-size:14.5px; font-weight:600; color:var(--ink-2)}
.rl-chips{display:flex; flex-wrap:wrap; gap:8px}
.rl-chip{position:relative; display:inline-flex}
.rl-chip input{position:absolute; opacity:0; width:1px; height:1px}
.rl-chip span{
  display:inline-flex; align-items:center; min-height:44px; padding:0 14px;
  border:1px solid var(--line-control); border-radius:999px; background:var(--card);
  font-size:14.5px; color:var(--ink-2); cursor:pointer;
}
.rl-chip input:checked + span{
  background:var(--accent); border-color:var(--accent); color:#fff; font-weight:600;
}
.rl-chip input:focus-visible + span{outline:2px solid var(--accent); outline-offset:2px}
.rl-more{margin:0 0 18px}
.rl-more > summary{
  cursor:pointer; font-size:14.5px; font-weight:600; color:var(--accent);
  min-height:44px; display:flex; align-items:center; gap:8px;
}
.rl-more > summary .opt{font-weight:400; color:var(--muted)}
.rl-more .field textarea{min-height:110px}
@media (max-width:560px){ .rl-chip, .rl-chip span{width:100%} }
