.locations-page{overflow:hidden;color:var(--body);background:#fff}.locations-page *{box-sizing:border-box}
.loc-hero{position:relative;isolation:isolate;overflow:hidden;padding:181px 0 95px;background:linear-gradient(259deg,#006cf5 7.09%,#0559d9 71.14%);color:#fff}.loc-hero::before{content:"";position:absolute;z-index:-1;width:680px;height:680px;right:-170px;top:-310px;border:1px solid rgba(255,255,255,.13);border-radius:50%}.loc-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:75px;align-items:center}.loc-hero-grid>div:first-child{max-width:740px}.loc-eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 19px;color:var(--blue);font:700 11px/1.2 var(--font-body);letter-spacing:.17em;text-transform:uppercase}.loc-eyebrow span{width:24px;height:2px;background:var(--yellow)}.loc-eyebrow--light{color:#dceaff}.loc-hero h1{margin:0;color:#fff;font:700 clamp(43px,4.7vw,68px)/1.13 var(--font-heading);letter-spacing:-.055em}.loc-hero h1 em,.loc-last h2 em{font-style:normal;color:var(--yellow)}.loc-hero-grid>div:first-child>p:not(.loc-eyebrow){max-width:660px;margin:25px 0 31px;color:#e2eeff;font-size:17px;line-height:1.78}.loc-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:16px 21px;border-radius:6px;background:var(--yellow);color:var(--ink);font-size:14px;font-weight:700;text-decoration:none;transition:transform .25s,background .25s,box-shadow .25s}.loc-button:hover{transform:translateY(-3px);background:#fff;box-shadow:0 14px 28px rgba(1,36,106,.18)}.loc-button span{font-size:19px;line-height:1}
.loc-map-art{position:relative;display:grid;place-items:center;width:min(100%,390px);height:390px;margin:auto}.loc-map-orbit{position:absolute;border:1px solid rgba(255,255,255,.25);border-radius:50%}.loc-map-orbit--one{inset:7px}.loc-map-orbit--two{inset:52px;border-style:dashed;animation:loc-turn 45s linear infinite}.loc-map-core{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;width:200px;height:200px;border:1px solid rgba(255,255,255,.47);border-radius:32px;background:rgba(255,255,255,.11);box-shadow:0 22px 70px rgba(1,42,123,.28);backdrop-filter:blur(8px);transform:rotate(-8deg);animation:loc-hover 7s ease-in-out infinite}.loc-map-core img{width:115px;height:auto;transform:rotate(8deg)}.loc-map-core small{margin-top:9px;color:#d9eaff;font-size:9px;font-weight:800;letter-spacing:.15em;transform:rotate(8deg)}.loc-map-dot{position:absolute;z-index:3;width:13px;height:13px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 9px rgba(255,193,7,.14);animation:loc-pulse 3s ease-in-out infinite}.loc-map-dot--one{left:52px;top:53px}.loc-map-dot--two{right:40px;top:105px;animation-delay:-1s}.loc-map-dot--three{right:78px;bottom:27px;animation-delay:-2s}.loc-map-line{position:absolute;height:1px;background:rgba(255,255,255,.32);transform-origin:left}.loc-map-line--one{left:64px;top:66px;width:140px;transform:rotate(43deg)}.loc-map-line--two{right:47px;top:119px;width:124px;transform:rotate(139deg)}
.loc-section{padding:92px 0}.loc-intro-grid,.loc-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.loc-intro h2,.loc-context h2,.loc-heading h2,.loc-method h2{margin:0;color:var(--ink);font:700 clamp(34px,3.5vw,48px)/1.2 var(--font-heading);letter-spacing:-.045em}.loc-intro h2 em,.loc-context h2 em,.loc-heading h2 em,.loc-method h2 em{font-style:normal;color:var(--blue)}.loc-intro-grid>p,.loc-context-grid>div>p{margin:0;font-size:17px;line-height:1.85}.loc-directory,.loc-provinces,.loc-method{background:#f7faff}.loc-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:35px}.loc-heading>div{max-width:680px}.loc-heading>p{max-width:420px;margin:0 0 5px;font-size:15px;line-height:1.75}
.loc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.loc-card{display:flex;flex-direction:column;min-height:282px;padding:26px;border:1px solid #e0eafc;border-radius:12px;background:#fff;color:var(--body);text-decoration:none;box-shadow:0 8px 24px rgba(13,77,171,.035);transition:transform .25s,border-color .25s,box-shadow .25s}.loc-card:hover{transform:translateY(-5px);border-color:#a8caff;box-shadow:0 16px 36px rgba(13,77,171,.1)}.loc-card--featured{background:linear-gradient(150deg,#fff 55%,#eaf4ff);border-color:#bcd7ff}.loc-card-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:21px}.loc-card-code{display:grid;place-items:center;width:49px;height:49px;border-radius:10px;background:#eaf3ff;color:var(--blue);font:800 16px/1 var(--font-heading)}.loc-card-arrow{display:grid;place-items:center;width:31px;height:31px;border:1px solid #d7e4fa;border-radius:50%;color:var(--blue);font-size:18px}.loc-card-kind{margin-bottom:6px;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.loc-card strong{color:var(--ink);font:700 22px/1.3 var(--font-heading);letter-spacing:-.035em}.loc-card-desc{margin:10px 0 18px;font-size:13px;line-height:1.65}.loc-card-bottom{display:flex;gap:10px;align-items:center;margin-top:auto;color:var(--blue);font-size:12px;font-weight:800}.loc-card-bottom span{font-size:17px}
.loc-last{padding:36px 0 90px;background:#f7faff}.loc-last-inner{display:flex;justify-content:space-between;align-items:center;gap:45px;padding:54px 60px;border-radius:15px;background:linear-gradient(115deg,#0444ad,#0774ff);color:#fff;box-shadow:0 25px 48px rgba(3,77,178,.14)}.loc-last-inner>div{max-width:670px}.loc-last h2{margin:0;color:#fff;font:700 clamp(31px,3vw,44px)/1.2 var(--font-heading);letter-spacing:-.04em}.loc-last p:not(.loc-eyebrow){margin:16px 0 0;color:#e1eeff;font-size:15px;line-height:1.7}.loc-last .loc-button{flex:none}
.loc-hero--detail{padding-bottom:83px}.loc-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:32px;color:#d9eaff;font-size:12px;font-weight:650}.loc-breadcrumb a{color:#fff;text-decoration:none}.loc-breadcrumb a:hover{text-decoration:underline}.loc-detail-art{position:relative;display:grid;place-items:center;width:min(100%,340px);height:340px;margin:auto}.loc-detail-orbit{position:absolute;inset:5px;border:1px solid rgba(255,255,255,.24);border-radius:50%}.loc-detail-orbit--inner{inset:47px;border-style:dashed;animation:loc-turn 40s linear infinite}.loc-detail-code{z-index:2;display:grid;place-items:center;width:175px;height:175px;border:1px solid rgba(255,255,255,.46);border-radius:30px;background:rgba(255,255,255,.1);box-shadow:0 20px 65px rgba(1,42,123,.2);color:#fff;font:800 65px/1 var(--font-heading);letter-spacing:-.05em;transform:rotate(-8deg)}.loc-detail-node{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 8px rgba(255,193,7,.14)}.loc-detail-node--one{right:41px;top:52px}.loc-detail-node--two{left:29px;bottom:75px;width:9px;height:9px;background:#cae5ff}.loc-detail-art small{position:absolute;bottom:2px;color:#d7eaff;font-size:9px;font-weight:700;letter-spacing:.16em}.loc-context-grid>div>p{max-width:650px}.loc-source{display:inline-flex;gap:8px;margin-top:19px;color:var(--blue);font-size:12px;font-weight:700;text-decoration:none}.loc-source:hover{text-decoration:underline}
.loc-province-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.loc-province-grid a{position:relative;display:flex;flex-direction:column;min-height:209px;padding:25px;border:1px solid #e1eafd;border-radius:10px;background:#fff;color:var(--body);text-decoration:none;transition:transform .25s,border-color .25s}.loc-province-grid a:hover{transform:translateY(-4px);border-color:#a8caff}.loc-province-arrow{position:absolute;top:20px;right:22px;color:var(--blue);font-size:19px}.loc-province-grid strong{max-width:90%;margin-bottom:11px;color:var(--ink);font:700 22px/1.25 var(--font-heading)}.loc-province-grid a>span:not(.loc-province-arrow){font-size:13px;line-height:1.65}.loc-province-grid small{margin-top:auto;padding-top:18px;color:var(--blue);font-size:12px;font-weight:800}
.loc-sectors{background:#fff}.loc-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.loc-sector-grid a{display:flex;flex-direction:column;min-height:273px;padding:25px;border:1px solid #e1eafd;border-radius:11px;background:#fff;color:var(--body);text-decoration:none;box-shadow:0 8px 28px rgba(13,77,171,.035);transition:transform .25s,box-shadow .25s}.loc-sector-grid a:hover{transform:translateY(-5px);box-shadow:0 17px 35px rgba(13,77,171,.1)}.loc-sector-symbol{display:grid;place-items:center;width:47px;height:47px;margin-bottom:24px;border-radius:10px;background:#eaf3ff;color:var(--blue)}.loc-sector-symbol svg{width:27px;height:27px;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.loc-sector-grid small{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.loc-sector-grid strong{margin:7px 0 10px;color:var(--ink);font:700 22px/1.25 var(--font-heading)}.loc-sector-grid a>span:not(.loc-sector-symbol){font-size:13px;line-height:1.65}.loc-sector-grid b{display:flex;gap:9px;align-items:center;margin-top:auto;padding-top:18px;color:var(--blue);font-size:12px}
.loc-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.loc-method-grid>div>p:not(.loc-eyebrow){max-width:570px;font-size:15px;line-height:1.8}.loc-method ol{display:grid;gap:13px;margin:0;padding:0;list-style:none}.loc-method li{display:flex;gap:20px;align-items:start;padding:20px 22px;border:1px solid #e1eafd;border-radius:9px;background:#fff}.loc-method li>span{color:var(--blue);font:800 14px/1.5 var(--font-heading)}.loc-method strong{color:var(--ink);font:700 17px/1.4 var(--font-heading)}.loc-method li p{margin:5px 0 0;font-size:13px;line-height:1.55}.loc-nearby{padding:60px 0;background:#f7faff}.loc-nearby-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.loc-nearby h2{margin:0;color:var(--ink);font:700 26px/1.25 var(--font-heading)}.loc-nearby-head a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.loc-nearby-list{display:flex;flex-wrap:wrap;gap:10px}.loc-nearby-list a{display:inline-flex;gap:12px;padding:11px 14px;border:1px solid #e1eafd;border-radius:6px;background:#fff;color:var(--ink);font-size:13px;font-weight:700;text-decoration:none}.loc-nearby-list a:hover{border-color:var(--blue)}.loc-nearby-list span{color:var(--blue)}
.locations-page a:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
@keyframes loc-turn{to{transform:rotate(360deg)}}@keyframes loc-hover{50%{transform:translateY(-6px) rotate(-8deg)}}@keyframes loc-pulse{50%{box-shadow:0 0 0 15px rgba(255,193,7,.035)}}
@media(max-width:1100px){.loc-hero-grid{gap:35px}.loc-grid,.loc-province-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.loc-hero{padding:158px 0 70px}.loc-hero-grid,.loc-intro-grid,.loc-context-grid,.loc-method-grid{grid-template-columns:1fr;gap:40px}.loc-map-art{width:295px;height:295px}.loc-map-core{width:160px;height:160px}.loc-map-core img{width:95px}.loc-map-orbit--two{inset:40px}.loc-map-dot--one{left:30px;top:38px}.loc-map-dot--two{right:25px;top:68px}.loc-map-dot--three{right:49px;bottom:20px}.loc-map-line{display:none}.loc-detail-art{display:none}.loc-section{padding:70px 0}.loc-heading{display:block}.loc-heading>p{margin-top:17px}.loc-last-inner{display:block;padding:40px}.loc-last .loc-button{margin-top:25px}.loc-intro-grid>p,.loc-context-grid>div>p{font-size:16px}}
@media(max-width:560px){.loc-hero{padding-top:151px}.loc-hero h1{font-size:clamp(39px,10vw,51px)}.loc-hero-grid>div:first-child>p:not(.loc-eyebrow){font-size:15px}.loc-map-art{width:255px;height:255px;margin-top:10px}.loc-map-core{width:135px;height:135px}.loc-map-core img{width:80px}.loc-map-core small{font-size:7px}.loc-grid,.loc-province-grid,.loc-sector-grid{grid-template-columns:1fr}.loc-card{min-height:240px}.loc-intro h2,.loc-context h2,.loc-heading h2,.loc-method h2{font-size:34px}.loc-last-inner{padding:34px 25px}.loc-nearby-head{align-items:start;flex-direction:column}.loc-nearby{padding:50px 0}}
@media(prefers-reduced-motion:reduce){.loc-map-orbit--two,.loc-map-core,.loc-map-dot,.loc-detail-orbit--inner{animation:none}.loc-card,.loc-province-grid a,.loc-sector-grid a,.loc-button{transition:none}}
.loc-detail-art{width:min(100%,420px);height:auto}.loc-detail-art img{display:block;width:100%;height:auto;animation:loc-art-float 7s ease-in-out infinite}
.loc-card-code svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
@keyframes loc-art-float{50%{transform:translateY(-7px)}}
@media(prefers-reduced-motion:reduce){.loc-detail-art img{animation:none}}
