/* Local classes deliberately avoid the shared hero/nav/card/profile selectors. */
.la-page { margin:0; background:var(--surface-card); color:var(--white); font-family:var(--font-sans); font-size:14px; line-height:1.55; }
.la-page *, .la-page *::before, .la-page *::after { box-sizing:border-box; }
.la-main h1,.la-main h2,.la-main h3,.la-main p { margin:0; }
.la-main h1,.la-main h2,.la-main h3 { font-family:var(--font-display); color:var(--white); }
.la-main a { color:inherit; text-decoration:none; }
.la-main button,.la-main input { font:inherit; }
.la-main button { cursor:pointer; }
.la-main button:disabled { cursor:default; opacity:.45; }
.la-main :focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
/* The search box draws its own focus ring around the whole field. */
.la-main .la-search input:focus-visible { outline:none; }
/* The title takes focus on navigation for screen readers; it is not a control, so no ring. */
.la-main [tabindex="-1"]:focus-visible { outline:none; }
.la-page [hidden] { display:none!important; }
/* The shared footer (css/footer.css) expects the reset and base .btn other pages get from their page CSS.
   :where() keeps the reset at zero specificity, as a bare * reset is, so footer.css still wins. */
:where(.la-page #footer-placeholder *) { margin:0; padding:0; }
.la-page .cta-form .btn { display:inline-flex; align-items:center; justify-content:center; padding:10px 20px; border-radius:8px; border:1px solid transparent; font-family:inherit; font-size:15px; font-weight:500; white-space:nowrap; cursor:pointer; }
.la-main a:hover { color:var(--blue); }
.la-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.la-skip { position:fixed; top:-100px; left:20px; z-index:100; background:var(--surface-card); padding:12px; }
.la-skip:focus { top:10px; }
.la-page .la-button { padding:12px 20px; display:inline-flex; align-items:center; justify-content:center; gap:28px; border-radius:6px; font-weight:600; font-size:14px; min-height:46px; }
.la-page .la-button-primary { background:var(--blue); color:var(--text-on-inverse); }
.la-page .la-button-primary:hover { background:var(--blue-hover); color:var(--text-on-inverse); }
/* Site nav: the same chassis as the profile pages (css/company-profile.css);
   js/mobile-nav.js fills in the menus and the theme sheet colours it. */
.la-page { padding-top:70px; }
nav.site-nav { position:fixed; top:0; left:0; right:0; z-index:1000; padding:0 2rem; background:var(--navy); border-bottom:1px solid var(--border-light); }
nav.site-nav .nav-inner { max-width:1280px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; height:70px; }
nav.site-nav .logo { display:flex; align-items:center; text-decoration:none; }
nav.site-nav .logo img { height:28px; width:auto; display:block; }
nav.site-nav .nav-center { display:flex; gap:2rem; }
nav.site-nav .nav-link { color:var(--text-light); text-decoration:none; font-size:.9375rem; font-weight:500; }
nav.site-nav .nav-link:hover { color:var(--white); }
nav.site-nav .nav-right { display:flex; gap:.75rem; align-items:center; }
nav.site-nav .btn { display:inline-flex; align-items:center; justify-content:center; padding:.625rem 1.25rem; border-radius:8px; font-size:.9375rem; font-weight:500; text-decoration:none; border:1px solid transparent; white-space:nowrap; }
nav.site-nav .btn-ghost { background:transparent; color:var(--white); }
nav.site-nav .short-text { display:none; }
@media(max-width:860px) { nav.site-nav { padding:0 1rem; } nav.site-nav .nav-center { display:none; } nav.site-nav .full-text { display:none; } nav.site-nav .short-text { display:inline; } }
/* Same edges as the nav: its 1280px row inside 2rem (1rem on phones) of padding. */
.la-main { max-width:calc(1280px + 4rem); margin:auto; padding:0 2rem; }
@media(max-width:860px) { .la-main { padding:0 1rem; } }
.la-main { padding-bottom:64px; }
.la-error { margin-top:20px; padding:14px 16px; border-radius:6px; background:var(--row-spotlight); color:var(--amber-ink); }
.la-empty,.la-note { color:var(--text-light); font-size:13px; line-height:1.6; }
.la-empty { padding:24px 16px; }

/* Type colours: one series token per level, used as a small dot. */
[data-type="continent"] { --type:var(--series-c1); }
[data-type="country_region"] { --type:var(--series-c2); }
[data-type="country"] { --type:var(--series-c3); }
[data-type="state"] { --type:var(--series-c4); }
[data-type="city_region"] { --type:var(--series-c5); }
[data-type="city"] { --type:var(--series-c6); }
.la-type { display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:600; color:var(--text-light); white-space:nowrap; }
.la-type::before,.la-filters i,.la-chips i { content:""; width:8px; height:8px; border-radius:2px; background:var(--type); flex-shrink:0; display:inline-block; }

.la-intro { padding:44px 0 22px; max-width:760px; }
.la-intro h1 { font-size:clamp(34px,4vw,48px); line-height:1.05; letter-spacing:-.03em; font-weight:600; }
.la-intro p { margin-top:12px; font-size:15px; line-height:1.65; color:var(--text-light); }
.la-search { display:flex; gap:12px; align-items:center; padding:0 16px; min-height:58px; border:1px solid var(--border-mid); border-radius:10px; background:var(--surface-card); box-shadow:var(--shadow-sm); }
.la-search:focus-within { border-color:var(--blue); box-shadow:var(--vc-control-focus-shadow); }
.la-search svg { width:20px; height:20px; fill:none; stroke:var(--text-faint); stroke-width:1.8; flex-shrink:0; }
.la-search input { flex:1; min-width:0; border:0; outline:none; background:transparent; color:var(--white); font-size:17px; }
.la-search input::placeholder { color:var(--text-faint); }
.la-bar { display:flex; align-items:center; gap:12px; margin:14px 0 0; }
.la-bar-types { flex-wrap:wrap; gap:6px; margin:8px 0 12px; }
/* Type pills and the two toggles wrap as one flow, not as two blocks. */
.la-bar-types .la-filters { display:contents; }
.la-bar-rule { width:1px; height:20px; margin:0 6px; background:var(--border-light); flex:none; }
.la-filters { display:flex; flex-wrap:wrap; gap:6px; }
.la-filters button { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--border-light); background:var(--surface-card); color:var(--text-light); border-radius:20px; padding:6px 12px; font-size:12px; min-height:34px; }
.la-filters button span { color:var(--text-faint); }
.la-filters button[aria-pressed="true"] { border-color:var(--blue); background:var(--surface-tray); color:var(--blue-ink); font-weight:600; }
.la-filters a { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--border-light); background:var(--surface-card); color:var(--text-light); border-radius:20px; padding:6px 12px; font-size:12px; min-height:34px; text-decoration:none; }
.la-filters a span { color:var(--text-faint); }
.la-filters a[aria-current="true"] { border-color:var(--blue); background:var(--surface-tray); color:var(--blue-ink); font-weight:600; }
.la-tabs { display:flex; gap:22px; margin-top:22px; border-bottom:1px solid var(--border-light); overflow-x:auto; scrollbar-width:none; }
@media (max-width:420px) { .la-tabs { gap:16px; } }
.la-tabs a { white-space:nowrap; padding:8px 0 10px; margin-bottom:-1px; border-bottom:2px solid transparent; color:var(--text-light); font-weight:600; font-size:14px; text-decoration:none; }
.la-tabs a[aria-current="true"] { color:var(--white); border-bottom-color:var(--blue); }
.la-checks { padding-bottom:48px; }
.la-checks .la-check-intro { margin:16px 0 12px; max-width:760px; color:var(--text-light); font-size:14px; line-height:1.65; }
.la-check-state { display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--text-light); }
.la-check-state select { font:inherit; font-weight:500; color:var(--white); background:var(--surface-card); border:1px solid var(--border-light); border-radius:8px; padding:6px 10px; min-height:34px; }
.la-checks .la-count { margin:10px 0 8px!important; }
.la-check-table { border:1px solid var(--border-light); border-radius:10px; overflow-x:auto; background:var(--surface-card); }
.la-check-table table { width:100%; border-collapse:collapse; font-size:13px; }
.la-check-table th { text-align:left; font-weight:600; font-size:11px; color:var(--text-faint); text-transform:uppercase; letter-spacing:.04em; padding:10px 14px; border-bottom:1px solid var(--border-light); background:var(--surface-tray); white-space:nowrap; }
.la-check-table td { padding:9px 14px; border-bottom:1px solid var(--border-light); vertical-align:top; }
.la-check-table tr:last-child td { border-bottom:0; }
.la-check-table td small { color:var(--text-faint); font-size:11px; }
.la-check-table a { color:var(--blue); text-decoration:none; }
.la-check-table .la-num { text-align:right; font-variant-numeric:tabular-nums; }
.la-checks .la-more { margin-top:10px; border:1px solid var(--border-light); border-radius:10px; }
.la-method { max-width:760px; padding:8px 0 56px; font-size:15px; line-height:1.65; color:var(--text-light); }
.la-method-date { margin:16px 0 0!important; font-size:13px; color:var(--text-faint); }
.la-method h2 { font-size:19px; font-weight:600; color:var(--white); margin:30px 0 8px!important; }
.la-method p { margin:0 0 10px!important; }
.la-method ul,.la-method ol { margin:0 0 10px; padding-left:22px; }
.la-method li { margin-bottom:6px; padding-left:2px; }
.la-method a { color:var(--blue); }
.la-method code { font-family:var(--font-mono); font-size:13px; }
.la-method pre { margin:12px 0 0; padding:14px 16px; border:1px solid var(--border-light); border-radius:10px; background:var(--surface-card); overflow-x:auto; font-size:12.5px; line-height:1.6; color:var(--white); }
.la-curated { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--border-light); background:var(--surface-card); color:var(--text-light); border-radius:20px; padding:6px 12px; font-size:12px; min-height:34px; white-space:nowrap; }
.la-curated span { color:var(--text-faint); }
.la-curated[aria-pressed="true"] { border-style:solid; border-color:var(--blue); background:var(--surface-tray); color:var(--blue-ink); font-weight:600; }
.la-count { margin-left:auto!important; font-size:12px; color:var(--text-faint); white-space:nowrap; }

.la-display { flex:none; display:inline-flex; border:1px solid var(--border-light); border-radius:8px; overflow:hidden; }
.la-display button { border:0; background:var(--surface-card); color:var(--text-light); font:inherit; font-size:12px; padding:6px 12px; min-height:34px; }
.la-display button + button { border-left:1px solid var(--border-light); }
.la-display button[aria-pressed="true"] { background:var(--surface-tray); color:var(--blue-ink); font-weight:600; }
.la-gallery { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:12px; }
.la-gcard { display:flex; flex-direction:column; gap:6px; padding:10px; border:1px solid var(--border-light); border-radius:10px; background:var(--surface-card); color:inherit; text-decoration:none; min-width:0; }
.la-gcard:hover { border-color:var(--blue); }
.la-gcard:hover strong { color:var(--blue); }
.la-card-shape { display:flex; align-items:center; justify-content:center; aspect-ratio:160/108; border-radius:6px; background:var(--surface-tray); overflow:hidden; }
.la-card-shape svg { width:100%; height:100%; display:block; }
.la-shape { fill:var(--blue); fill-opacity:.22; stroke:var(--blue); stroke-width:1.4; stroke-linejoin:round; fill-rule:evenodd; vector-effect:non-scaling-stroke; }
.la-shape-land { fill:var(--surface-card); stroke:none; fill-rule:evenodd; }
.la-shape-border { fill:none; stroke:var(--border-mid); stroke-width:.7; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.la-shape-country { stroke-width:.9; }
.la-shape-county { fill:none; stroke:var(--border-light); stroke-width:.5; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.la-shape-context { fill:var(--blue); fill-opacity:.06; stroke:var(--border-mid); stroke-width:1; stroke-linejoin:round; fill-rule:evenodd; vector-effect:non-scaling-stroke; }
.la-shape-dot { fill:var(--blue); stroke:var(--surface-card); stroke-width:1.5; }
.la-card-noshape { font-size:11px; color:var(--text-faint); }
.la-card-name { font-size:13px; line-height:1.3; min-width:0; overflow-wrap:anywhere; }
.la-card-name strong { font-weight:600; }
.la-card-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px; font-size:11px; color:var(--text-faint); }
.la-gallery + .la-more { margin-top:12px; border:1px solid var(--border-light); border-radius:10px; }
@media(max-width:420px) { .la-gallery { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:8px; } }

.la-table { border:1px solid var(--border-light); border-radius:10px; overflow:hidden; background:var(--surface-card); }
.la-thead,.la-row { display:grid; grid-template-columns:minmax(0,1fr) 110px 150px 130px; gap:12px; align-items:center; padding:0 16px; }
.la-thead { min-height:40px; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; color:var(--text-faint); background:var(--navy-light); border-bottom:1px solid var(--border-light); }
.la-num { text-align:right; font-variant-numeric:tabular-nums; }
.la-row { min-height:46px; border-bottom:1px solid var(--border-light); font-size:13px; }
.la-row:last-child { border-bottom:0; }
.la-row:hover { background:var(--navy-light); }
.la-row .la-num { color:var(--text-light); }
.la-name { display:flex; align-items:center; gap:6px; min-width:0; padding-left:calc(var(--depth) * 22px); }
.la-name a { min-width:0; padding:8px 0; }
.la-name strong { font-weight:500; }
.la-name a:hover strong { color:var(--blue); }
.la-name small { display:block; font-size:11px; color:var(--text-faint); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.la-caret,.la-caret-space { width:24px; height:24px; flex-shrink:0; margin-right:4px; }
/* A filled +/− square: + when closed, a solid blue − when open. */
.la-caret { position:relative; border:1px solid var(--border-tray); border-radius:6px; background:var(--surface-tray); color:var(--blue); }
.la-caret::before,.la-caret::after { content:""; position:absolute; left:50%; top:50%; width:10px; height:2px; border-radius:1px; background:currentColor; transform:translate(-50%,-50%); }
.la-caret::after { transform:translate(-50%,-50%) rotate(90deg); transition:transform .15s; }
.la-caret[aria-expanded="true"] { background:var(--blue); border-color:var(--blue); color:var(--text-on-inverse); }
.la-caret[aria-expanded="true"]::after { transform:translate(-50%,-50%) rotate(0deg); }
.la-caret:hover { border-color:var(--blue); }
.la-caret[aria-expanded="false"]:hover { background:var(--blue-light); }
.la-row-more { min-height:40px; }
.la-row-more button { border:0; background:transparent; color:var(--blue); font-size:12px; font-weight:600; padding:8px 0; }
.la-row-more button span { color:var(--text-faint); font-weight:400; }
.la-more { display:block; width:100%; border:0; border-top:1px solid var(--border-light); background:var(--navy-light); color:var(--blue); font-weight:600; font-size:13px; min-height:44px; }

.la-location { padding:28px 0 0; }
.la-crumbs { font-size:13px; color:var(--text-faint); display:flex; flex-wrap:wrap; gap:6px; }
.la-crumbs a { color:var(--blue); }
.la-loc-head { margin:22px 0 22px; }
.la-loc-meta { display:flex; flex-wrap:wrap; align-items:center; gap:14px; font-size:12px; color:var(--text-faint); }
.la-loc-head h1 { font-size:clamp(36px,4.4vw,56px); line-height:1.04; letter-spacing:-.03em; font-weight:600; margin-top:10px; }
.la-loc-platform { margin-top:10px!important; font-size:17px; line-height:1.4; color:var(--text-light); }
.la-loc-platform strong { color:var(--white); font-weight:600; }
.la-loc-platform + .la-loc-sub { margin-top:4px!important; }
.la-partner { display:inline-block; margin-left:8px; padding:1px 7px; border-radius:10px; background:var(--surface-tray); color:var(--blue-ink); font-size:11px; font-weight:600; vertical-align:1px; }
.la-curated-tag { display:inline-block; margin-left:8px; padding:0 6px; border:1px solid var(--border-light); border-radius:10px; color:var(--text-light); font-size:11px; font-weight:500; vertical-align:1px; }
.la-platform { display:block; font-size:12px; color:var(--text-light); font-weight:400; }
.la-loc-sub { margin-top:10px!important; font-size:13px; line-height:1.6; color:var(--text-light); }
.la-loc-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr); gap:16px; }
.la-loc-rel { margin-top:16px; grid-template-columns:1fr 1fr; }
.la-card { border:1px solid var(--border-light); border-radius:10px; padding:22px; background:var(--surface-card); margin:0; min-width:0; }
.la-card h2 { font-size:20px; font-weight:600; margin-bottom:14px; }
.la-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:0 0 14px; background:var(--border-light); border:1px solid var(--border-light); border-radius:8px; overflow:hidden; }
.la-stats div { background:var(--surface-card); padding:14px 16px; }
.la-stats dt { font-size:12px; color:var(--text-faint); }
.la-stats dd { margin:4px 0 0; font-family:var(--font-display); font-size:28px; font-weight:600; letter-spacing:-.02em; font-variant-numeric:tabular-nums; }
.la-card .la-button { margin-top:16px; width:100%; gap:12px; }
.la-links { margin:16px 0 0; padding-top:14px; border-top:1px solid var(--border-light); display:grid; gap:10px; font-size:14px; }
.la-links dt { font-size:12px; color:var(--text-light); }
.la-links dd { margin:2px 0 0; overflow-wrap:anywhere; }
.la-links a { color:var(--blue); font-weight:600; }
.la-mapcard { display:flex; flex-direction:column; gap:10px; }
.la-locmap { aspect-ratio:4/3; border-radius:8px; overflow:hidden; background:var(--navy-light); display:grid; place-items:center; position:relative; z-index:0; }
.la-locmap.leaflet-container { display:block; font-family:var(--font-sans); }
.la-locmap .leaflet-control-attribution { font-size:10px; }
.la-subname { padding:5px 9px; border-radius:6px; background:var(--surface-card); color:var(--white); font-size:12px; font-weight:600; box-shadow:var(--shadow-sm); pointer-events:none; }
.la-locmap .leaflet-tooltip { font-family:var(--font-sans); font-size:12px; font-weight:600; color:var(--white); border-color:var(--border-light); box-shadow:var(--shadow-sm); }
.la-map-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 12px; }
.la-map-head h2 { margin-bottom:0!important; }
.la-layer-toggles { display:flex; flex-wrap:wrap; gap:6px; position:relative; z-index:2; }
/* Pill tooltips: shown at once on hover, under the row of pills. */
.la-layer-toggles button[data-tip]::after { content:attr(data-tip); position:absolute; top:calc(100% + 6px); right:0; width:max-content; max-width:min(320px, 100%); padding:8px 10px; border-radius:6px; background:var(--surface-inverse); color:var(--text-on-inverse); font-size:12px; font-weight:400; line-height:1.45; white-space:normal; text-align:left; box-shadow:var(--shadow-md); pointer-events:none; opacity:0; visibility:hidden; }
.la-layer-toggles button[data-tip]:hover::after, .la-layer-toggles button[data-tip]:focus-visible::after { opacity:1; visibility:visible; }
.la-layer-toggles button { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--border-light); background:var(--surface-card); color:var(--text-light); border-radius:20px; padding:5px 12px 5px 9px; font-size:12px; min-height:32px; white-space:nowrap; }
.la-layer-toggles button::before { content:""; width:12px; height:12px; border-radius:3px; border:1.5px solid var(--border-mid); box-sizing:border-box; }
.la-layer-toggles button[aria-pressed="true"] { border-color:var(--blue); color:var(--blue-ink); background:var(--surface-tray); font-weight:600; }
.la-layer-toggles button[aria-pressed="true"]::before { background:var(--blue); border-color:var(--blue); }
.la-mapcard figcaption { font-size:12px; }
.la-mapnote { display:inline; }
.la-mapnote summary { display:inline; cursor:pointer; color:var(--blue); }
.la-mapnote[open] { display:block; margin-top:6px; }
.la-layer-toggles button[data-layer="unlinked"][aria-pressed="true"]::before { background:var(--purple); border-color:var(--purple); }
.la-dotkey { list-style:none; margin:0 0 8px; padding:0; display:flex; flex-wrap:wrap; gap:4px 16px; font-size:12px; color:var(--text-light); }
.la-dotkey li { display:flex; align-items:center; gap:6px; }
.la-dot { flex:none; width:11px; height:11px; border-radius:50%; box-sizing:border-box; border:1.5px solid var(--surface-card); background:var(--blue); box-shadow:0 0 0 1px var(--border-light); }
.la-dot-osm { background:var(--surface-card); border:2px solid var(--blue); box-shadow:none; }
.la-dot-stray { background:var(--orange); }
.la-dot-outside { background:var(--status-negative); }
.la-dot-unlinked { width:8px; height:8px; background:var(--purple); }
.la-check-line { margin:10px 0 0; font-size:13px; line-height:1.55; color:var(--text-light); }
.la-check-line strong { color:var(--white); }
.la-check-line a { color:var(--blue); }
.la-checks .la-check-intro a { color:var(--blue); }
.la-check-table .la-row-open { margin-left:8px; font-size:12px; font-weight:600; white-space:nowrap; }
@media (hover:hover) {
  .la-check-table .la-row-open { opacity:0; transition:opacity .12s; }
  .la-check-table tr:hover .la-row-open,.la-check-table tr:focus-within .la-row-open { opacity:1; }
}
.la-group + .la-group,.la-group + .la-deeper,.la-deeper + .la-group { margin-top:18px; }
.la-group h3 { font-size:13px; font-weight:600; margin-bottom:8px!important; font-family:var(--font-sans); }
.la-group h3 span { color:var(--text-faint); font-weight:400; margin-left:4px; }
.la-group p { font-size:12px; line-height:1.6; color:var(--text-light); margin-bottom:8px!important; }
.la-chips { display:flex; flex-wrap:wrap; gap:6px; }
.la-chips a { display:inline-flex; align-items:center; gap:7px; font-size:12px; line-height:1.3; padding:6px 10px; border-radius:20px; border:1px solid var(--border-light); background:var(--surface-card); color:var(--white); }
.la-chips a:hover { border-color:var(--blue); color:var(--blue); }
.la-chips-more { font-size:12px; line-height:1.3; padding:6px 12px; border-radius:20px; border:1px solid var(--blue); background:var(--navy-light); color:var(--blue); font-weight:600; min-height:32px; }
.la-chips-more span { font-weight:400; color:var(--text-light); }
.la-deeper { margin-top:18px; border-top:1px solid var(--border-light); padding-top:14px; }
.la-deeper summary { cursor:pointer; font-size:13px; font-weight:600; color:var(--blue); }
.la-deeper[open] summary { margin-bottom:6px; }
.la-deeper > .la-note { margin:0 0 14px; }
@media(max-width:900px) { .la-loc-grid,.la-loc-rel { grid-template-columns:1fr; } }
@media(max-width:700px) {
  .la-intro { padding:30px 0 18px; } .la-intro p { font-size:14px; }
  .la-search { min-height:52px; } .la-search input { font-size:16px; }
  .la-bar { flex-wrap:wrap; } .la-bar .la-areas { flex-basis:100%; } .la-bar-types { gap:6px; } .la-bar-rule { display:none; }
  .la-thead,.la-row { grid-template-columns:minmax(0,1fr) 76px; padding:0 10px; }
  .la-thead span:nth-child(n+3),.la-row > span:nth-child(n+3) { display:none; }
  .la-name { padding-left:calc(var(--depth) * 14px); }
  .la-card { padding:18px; } .la-stats dd { font-size:23px; }
}
@media(prefers-reduced-motion:reduce) { .la-caret::after { transition:none; } }
.la-options { margin:8px 0 0; padding:0; list-style:none; display:grid; gap:8px; min-width:240px; }
#la-decide .la-check-table td:first-child { min-width:150px; }
#la-decide .la-check-table td:nth-child(2) { min-width:200px; max-width:300px; }
#la-decide .la-check-table td:nth-child(3) { min-width:220px; max-width:340px; color:var(--text-light); }
#la-decide summary { cursor:pointer; color:var(--blue-ink); white-space:nowrap; }

/* Parents as a tree: broadest at the top, the location at the bottom, each
   level joined to its parent by an elbow (as on the profile pages). */
.la-tree, .la-tree-node, .la-tree-kids { display:block; }
.la-tree { line-height:1.8; font-size:14px; }
.la-tree a { color:var(--blue); text-decoration:none; }
.la-tree a:hover { text-decoration:underline; }
.la-tree strong { font-weight:700; color:var(--white); }
.la-tree-kids { margin-left:5px; padding-left:15px; }
.la-tree-node { position:relative; }
.la-tree-kids > .la-tree-node::before { content:""; position:absolute; left:-15px; top:0; width:10px; height:0.9em; border-left:1px solid var(--border-mid); border-bottom:1px solid var(--border-mid); border-bottom-left-radius:4px; }
.la-tree-kids > .la-tree-node:not(:last-child)::after { content:""; position:absolute; left:-15px; top:0; bottom:0; border-left:1px solid var(--border-mid); }
