/* location pages (SEO build) */
.loc .eyebrow a{color:inherit}
.loc-meta{margin-top:1.1rem;font-family:var(--font-accent);font-size:.95rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gray-300)}
.btn-outline{border:1px solid rgba(var(--ink-rgb),calc(.25*var(--ink-mul)));color:var(--ink-strong)}
.faq{margin-top:3.5rem}
.faq__item{border-top:var(--border-dim);padding:1.1rem 0}
.faq__item:last-child{border-bottom:var(--border-dim)}
.faq__item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"+";font-family:var(--font-display);font-size:1.8rem;color:var(--accent-text,var(--accent));line-height:1}
.faq__item[open] summary::after{content:"\2212"}
.faq__item summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.article__body .faq__q{margin:0;font-family:var(--font-accent);font-size:1.15rem;font-weight:700;color:var(--ink-strong)}
.faq__item p{margin:.9rem 0 0}
.loc-map{margin:3rem 0 0;border:var(--border-dim);aspect-ratio:16/9;background:var(--surface-2)}
.loc-map iframe{width:100%;height:100%;border:0;display:block}
.loc-related{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding-top:2rem;border-top:var(--border-dim)}
.article__body .loc-related__h{font-family:var(--font-accent);font-size:.9rem;font-weight:700;letter-spacing:.18em;margin:0 0 .9rem;color:var(--gray-300)}
.loc-related ul{list-style:none;padding:0;margin:0}
.loc-related li{font-size:1rem;margin-bottom:.55rem}
.loc-grid{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.article__body .loc-card{margin:0}
.loc-card a{display:flex;flex-direction:column;gap:.5rem;height:100%;padding:1.25rem 1.4rem;border:var(--border-dim);background:var(--surface-2);text-decoration:none!important;transition:border-color var(--t-fast)}
.loc-card a:hover,.loc-card a:focus-visible{border-color:var(--accent)}
.loc-card__name{font-family:var(--font-display);font-size:1.6rem;line-height:1;text-transform:uppercase;color:var(--ink-strong)}
.loc-card__dek{font-size:.95rem;line-height:1.55;color:var(--gray-200);font-weight:300}
.tbl-wrap{overflow-x:auto;margin:1.5rem 0 1.5rem}
.cmp{width:100%;border-collapse:collapse;font-size:1rem;min-width:620px}
.cmp th,.cmp td{border-bottom:var(--border-dim);padding:.85rem .9rem;text-align:left;vertical-align:top;line-height:1.55}
.cmp thead th{font-family:var(--font-accent);font-size:.95rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-strong);border-bottom:2px solid var(--accent)}
.cmp tbody th{font-family:var(--font-accent);font-weight:700;color:var(--ink-strong);white-space:nowrap}
.cmp td{color:var(--gray-100);font-weight:300}
.usm-wrap{width:min(1120px,calc(100vw - 2 * var(--gutter)));position:relative;left:50%;transform:translateX(-50%);margin:1.75rem 0 1.5rem;padding:1.5rem;border:var(--border-dim);background:radial-gradient(ellipse at 50% 45%,rgba(110,140,255,.16),transparent 65%),var(--surface-2);box-sizing:border-box;overflow:hidden}
.usm-wrap::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(110,140,255,.18) 1px,transparent 1.2px);background-size:18px 18px;opacity:.5;pointer-events:none}
.usm{width:100%;height:auto;display:block;position:relative}
.usm-s{fill:url(#usmg);stroke:var(--surface-2);stroke-width:1.2;transition:fill .25s,filter .25s}
.usm a{cursor:pointer}
.usm a:hover .usm-s,.usm a:focus-visible .usm-s{fill:#8FA6FF;filter:drop-shadow(0 0 8px rgba(110,140,255,.8))}
.usm a:focus-visible{outline:none}
.usm-home{fill:#9DB0FF}
.usm-l text{fill:#fff;font-family:var(--font-accent);font-weight:700;font-size:15px;text-anchor:middle;pointer-events:none}
.usm-l text.usm-c{fill:var(--ink-strong)}
.usm.js-anim .usm-s{opacity:0;transform:translateY(10px) scale(.94);transform-box:fill-box;transform-origin:center}
.usm.js-anim.is-in .usm-s{animation:usmIn .7s cubic-bezier(.2,.75,.2,1) forwards;animation-delay:var(--d,0ms)}
.usm.js-anim.is-in .usm-home{animation:usmIn .7s cubic-bezier(.2,.75,.2,1) forwards,usmPulse 2.6s ease-in-out 1.8s infinite;animation-delay:var(--d,0ms),1.8s}
.usm.js-anim .usm-l{opacity:0}
.usm.js-anim.is-in .usm-l{opacity:1;transition:opacity .8s ease 1.2s}
@keyframes usmIn{to{opacity:1;transform:none}}
@keyframes usmPulse{0%,100%{filter:drop-shadow(0 0 0 rgba(157,176,255,0))}50%{filter:drop-shadow(0 0 12px rgba(157,176,255,.95))}}
.usm-wrap figcaption{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:1.1rem;font-family:var(--font-accent);font-size:.95rem;font-weight:600;letter-spacing:.06em;color:var(--gray-200)}
.usm-stat{display:inline-flex;align-items:baseline;gap:.6rem;margin-right:.5rem}
.usm-count{font-family:var(--font-display);font-size:3.2rem;line-height:1;color:var(--ink-strong);min-width:2ch}
.usm-stat span:last-child{text-transform:uppercase;letter-spacing:.14em;font-size:.9rem}
.usm-key{display:inline-flex;align-items:center;gap:.5rem}
.usm-hint{flex-basis:100%;font-weight:500;letter-spacing:.03em;color:var(--gray-300)}
.usm-sw{width:14px;height:14px;background:linear-gradient(135deg,#2B59FF,#5B7FFF);display:inline-block}
.usm-sw--home{background:#9DB0FF}
.article__body p.usm-list{font-size:1rem;color:var(--gray-200)}
@media (prefers-reduced-motion: reduce){.usm-s,.usm-home{animation:none!important}}
@media(max-width:640px){.usm-wrap{padding:.75rem}.usm-l text{font-size:20px}.usm-l text.usm-c{display:none}}
@media(max-width:760px){.loc-related{grid-template-columns:1fr}}
