/* Supplied future care island artwork, displayed without crops or image edits. */
.tl-world{padding:96px 24px 100px;position:relative;isolation:isolate;color:#1a1a1a}
.tl-world__inner{max-width:1300px;margin:0 auto}
.tl-world__header{text-align:center;margin:0 auto 38px}
.tl-world__eyebrow{font-size:16px;font-weight:800;letter-spacing:.12em;margin:0 0 20px}
.tl-world__header h2{font-size:clamp(30px,3.8vw,48px);font-weight:800;line-height:1.45;letter-spacing:.025em;margin:0}
.tl-world__intro{font-size:16px;font-weight:700;line-height:1.9;margin:22px 0 0}
.tl-world__art{margin:0 auto;max-width:1260px}
.tl-world__art img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.tl-world__legend{list-style:none;padding:0;margin:36px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px;max-width:1060px}
.tl-world__legend li{list-style:none;margin:0;padding:16px 18px;border:1px solid #1a1a1a;border-radius:18px;background:#fff;position:relative;padding-left:36px;min-width:0}
.tl-world__legend li:before{content:"";position:absolute;left:16px;top:21px;width:10px;height:10px;border-radius:50%;background:var(--island-color);border:1px solid #1a1a1a}
.tl-world__legend strong{display:block;font-weight:800;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.tl-world__legend span{display:block;font-size:12px;line-height:1.7;margin-top:4px}
@media(max-width:700px){.tl-world{padding:62px 16px 66px}.tl-world__header{margin-bottom:26px}.tl-world__eyebrow{font-size:12px;margin-bottom:15px}.tl-world__header h2{font-size:clamp(23px,5.9vw,32px)}.tl-world__intro{font-size:13px;line-height:1.85;margin-top:18px}.tl-world__art{margin:0 -8px}.tl-world__legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.tl-world__legend li{padding:13px 10px 13px 25px;border-radius:13px}.tl-world__legend li:before{left:10px;top:17px;width:7px;height:7px}.tl-world__legend strong{font-size:12px}.tl-world__legend span{font-size:10px}}
@media(max-width:360px){.tl-world__legend{grid-template-columns:1fr}}
/* Interactive care island: progressive enhancement, shared accessible callout. */
.tl-world__hint{text-align:center;font-size:13px;font-weight:700;margin:0 0 22px;line-height:1.8}
.tl-world__hint>span{display:inline-grid;place-items:center;width:24px;height:24px;border:1.5px solid #1a1a1a;border-radius:50%;background:#ffe06a;margin-right:7px}
.tl-world__explorer{position:relative;max-width:1260px;margin:auto}
.tl-world__pins,.tl-world__choices{display:none}
.tl-world--interactive .tl-world__pins{display:block;position:absolute;inset:0;pointer-events:none}
.tl-world--interactive .tl-world__choices{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:34px auto 0;max-width:1060px}
.tl-world__pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-100%);padding:0;border:0;background:none;color:#1a1a1a;cursor:pointer;pointer-events:auto;display:flex;flex-direction:column;align-items:center;z-index:2;font:inherit;isolation:isolate}
.tl-world__pin-face{display:grid;place-items:center;position:relative;background:#fff;border:2px solid #1a1a1a;border-radius:50% 50% 45% 45%;box-shadow:3px 4px 0 #1a1a1a;width:58px;height:58px;transition:transform .2s,background .2s}
.tl-world__pin-face:after{content:"";position:absolute;bottom:-6px;left:23px;width:10px;height:10px;background:#fff;border-right:2px solid #1a1a1a;border-bottom:2px solid #1a1a1a;transform:rotate(45deg);z-index:-1}
.tl-world__pin-face svg{width:45px;height:45px;overflow:hidden;position:relative}
.tl-world__pin-plus{position:absolute;right:-6px;top:-5px;border:1.5px solid #1a1a1a;border-radius:50%;background:var(--pin-color);font-size:15px;font-weight:800;width:21px;height:21px;line-height:19px;text-align:center}
.tl-world__pin-label{margin-top:10px;padding:4px 10px;border:1.5px solid #1a1a1a;border-radius:20px;background:var(--pin-color);font-size:11px;font-weight:800;line-height:1.5;white-space:nowrap;box-shadow:2px 2px 0 #1a1a1a}
.tl-world__pin[aria-expanded=true]{z-index:4}
.tl-world__pin[aria-expanded=true] .tl-world__pin-face{transform:translateY(-5px);background:var(--pin-color)}
.tl-world__pin:focus-visible,.tl-world__choice:focus-visible,.tl-world__info a:focus-visible,.tl-world__info-close:focus-visible{outline:3px solid #005cff;outline-offset:5px}
.tl-world__choice{display:flex;align-items:center;gap:12px;border:1.5px solid #1a1a1a;border-radius:30px;padding:10px 15px;background:#fff;color:#1a1a1a;font:inherit;font-size:12px;font-weight:800;cursor:pointer;box-shadow:2px 3px 0 #1a1a1a;transition:transform .18s,box-shadow .18s}
.tl-world__choice:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--pin-color);border:1px solid #1a1a1a;flex-shrink:0}
.tl-world__choice[aria-expanded=true]{background:var(--pin-color);transform:translate(1px,2px);box-shadow:1px 1px 0 #1a1a1a}
.tl-world__info{position:absolute;z-index:8;width:330px;max-width:calc(100% - 16px);box-sizing:border-box;padding:23px 24px;background:#fff;border:2px solid #1a1a1a;border-radius:22px;box-shadow:5px 6px 0 #1a1a1a;color:#1a1a1a;text-align:left;animation:world-reveal .2s ease-out}
.tl-world__info[hidden]{display:none!important}
.tl-world__info:after{content:"";position:absolute;left:var(--tail,50%);bottom:-9px;width:15px;height:15px;background:#fff;border-right:2px solid #1a1a1a;border-bottom:2px solid #1a1a1a;transform:rotate(45deg)}
.tl-world__info-category{display:inline-block;background:var(--info-color,#a8e4d8);padding:4px 9px;border-radius:8px;font-size:11px;font-weight:800;margin:0 22px 12px 0;line-height:1.7}
.tl-world__info h3{font-size:19px;font-weight:800;line-height:1.5;margin:0 0 10px;letter-spacing:0}
.tl-world__info-description{font-size:13px;line-height:1.9;margin:0 0 17px;font-weight:400}
.tl-world__info-link{display:flex;justify-content:space-between;gap:12px;color:#1a1a1a;text-decoration:none;border-top:1px solid #ddd;padding-top:12px;font-size:12px;font-weight:800}
.tl-world__info-link span{background:var(--info-color,#a8e4d8);border:1px solid #1a1a1a;border-radius:50%;width:25px;height:25px;display:grid;place-items:center}
.tl-world__info-close{position:absolute;right:8px;top:8px;width:32px;height:32px;border:0;border-radius:50%;background:#f3f3f3;font:inherit;font-size:22px;line-height:1;color:#1a1a1a;cursor:pointer}
.tl-world--arrived .tl-world__pin-face{animation:world-pop .5s cubic-bezier(.2,.9,.3,1.2) var(--delay) backwards}
@keyframes world-pop{from{opacity:0;transform:translateY(12px) scale(.65)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes world-reveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.tl-world__pin:hover .tl-world__pin-face{transform:translateY(-5px)}.tl-world__choice:hover{background:var(--pin-color)}}
@media(max-width:700px){.tl-world__explorer{margin:0 -8px}.tl-world__art{margin:0}.tl-world__pins{height:auto;bottom:auto!important;aspect-ratio:4/3}.tl-world__pin-face{width:42px;height:42px;box-shadow:2px 3px 0 #1a1a1a}.tl-world__pin{min-width:44px;min-height:44px}.tl-world__pin-face svg{width:33px;height:33px}.tl-world__pin-face:after{left:15px}.tl-world__pin-label{display:none}.tl-world__pin-plus{width:17px;height:17px;font-size:12px;line-height:15px;right:-3px}.tl-world__hint{font-size:11px;margin-bottom:15px}.tl-world__info{position:relative!important;left:auto!important;top:auto!important;width:auto;max-width:none;margin:24px 8px 0;padding:22px;animation:world-reveal .2s ease-out}.tl-world__info:after{display:none}.tl-world__info h3{font-size:18px}.tl-world__choices{gap:9px!important;margin-top:24px!important}.tl-world__choice{font-size:11px;padding:10px 12px;gap:7px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.tl-world__pin-face,.tl-world__info{animation:none!important;transition:none!important}.tl-world__choice{transition:none}}

/* Facility names live on the map; redundant selectors removed. */
.tl-world__pin-label{max-width:145px;white-space:normal;text-align:center;overflow-wrap:anywhere}
@media(max-width:700px){.tl-world__pin-label{display:block;box-sizing:border-box;width:60px;max-width:60px;padding:3px 2px;font-size:9px;line-height:1.35;margin-top:7px;border-radius:8px}}
@media(max-width:360px){.tl-world__pin-label{width:52px;max-width:52px;font-size:8px}}

.tl-world__pin-face .tl-world__nodax-icon{display:block;width:48px;height:48px;object-fit:contain;mix-blend-mode:normal}
@media(max-width:700px){.tl-world__pin-face .tl-world__nodax-icon{width:36px;height:36px}}
