.gm-page-hero{position:relative;padding:clamp(40px,6vw,72px) var(--gm-gutter);overflow:hidden;text-align:center;color:#fff;background:linear-gradient(135deg,var(--gm-teal) 0%,var(--gm-teal-light) 42%,var(--gm-forest) 100%);border-bottom:1px solid rgba(255,255,255,.12)}.gm-page-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.1;pointer-events:none}.gm-page-hero__banner{position:absolute;top:0;z-index:0;height:100%;width:auto;object-fit:contain;pointer-events:none;user-select:none}.gm-page-hero__banner--left{left:0;object-position:left center}.gm-page-hero__banner--right{right:0;object-position:right center}@media(max-width:1239px){.gm-page-hero__banner{display:none}}.gm-page-hero__inner{position:relative;z-index:1;max-width:720px;margin-inline:auto}.gm-page-hero__title{margin:0;font-size:var(--gm-h2-fs);font-weight:600;line-height:var(--gm-h2-lh);color:#fff}.gm-page-hero__subtitle{margin:clamp(12px,2vw,18px) auto 0;max-width:680px;font-size:clamp(16px,2.2vw,20px);line-height:1.55;color:#ffffffeb}.gm-page-hero .home-heading-divider{justify-content:center;margin-bottom:16px}.gm-page-hero .home-heading-divider:before,.gm-page-hero .home-heading-divider:after{background:#ffffff73}:root{--loc-hk-island: var(--gm-blue, #6a9af4);--loc-kowloon: var(--gm-orange, #ff8f10);--loc-new-territories: var(--gm-lime, #30b55a);--loc-toolbar-top: calc(var(--gm-header-h, 96px) + 12px)}.loc-page{background:linear-gradient(180deg,#f4fbfc,#fff 28%)}.loc-hero .home-heading-divider.home-section-header__divider:before,.loc-hero .home-heading-divider.home-section-header__divider:after{width:80px}.loc-main{padding-block:clamp(28px,4vw,40px) clamp(72px,8vw,96px)}.loc-directory{display:flex;flex-direction:column;gap:clamp(20px,3vw,28px)}.loc-toolbar{position:relative;z-index:3;flex-shrink:0}.loc-toolbar__primary{display:flex;flex-direction:column;gap:14px;padding:14px 16px;border-radius:16px;background:#fffffff0;border:1px solid rgba(21,87,90,.1);box-shadow:0 8px 32px #15575a14;backdrop-filter:blur(12px)}@media(min-width:768px){.loc-toolbar__primary{flex-direction:row;align-items:center;justify-content:space-between;gap:20px}}.loc-toolbar__link{flex-shrink:0;display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;border:1px solid rgba(21,87,90,.14);background:#fff;color:var(--gm-teal-dark);font-size:14px;font-weight:600;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease}.loc-toolbar__link:hover{border-color:#18978859;background:#e0fcf6a6;color:var(--gm-teal)}.loc-regions{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.loc-regions::-webkit-scrollbar{display:none}@media(min-width:768px){.loc-regions{flex-wrap:wrap;overflow:visible;justify-content:flex-end}}.loc-regions__chip{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:40px;white-space:nowrap;border:1px solid rgba(21,87,90,.14);border-radius:999px;padding:9px 16px;background:#fff;color:var(--gm-forest);font-size:13px;font-weight:600;line-height:1.2;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.loc-regions__chip--active{color:#fff;border-color:transparent;box-shadow:0 4px 14px #15575a24}.loc-regions__chip--active:not(.loc-regions__chip--hk):not(.loc-regions__chip--kl):not(.loc-regions__chip--nt){background:var(--gm-teal)}.loc-regions__chip--hk.loc-regions__chip--active{background:var(--loc-hk-island)}.loc-regions__chip--kl.loc-regions__chip--active{background:var(--loc-kowloon)}.loc-regions__chip--nt.loc-regions__chip--active{background:var(--loc-new-territories)}.loc-regions__chip--hk:not(.loc-regions__chip--active){border-color:#6a9af466;color:var(--loc-hk-island)}.loc-regions__chip--kl:not(.loc-regions__chip--active){border-color:#ff8f1066;color:var(--loc-kowloon)}.loc-regions__chip--nt:not(.loc-regions__chip--active){border-color:#30b55a66;color:var(--loc-new-territories)}.loc-regions__chip--hk:hover:not(.loc-regions__chip--active){background:#6a9af41a;border-color:#6a9af473;color:var(--loc-hk-island)}.loc-regions__chip--kl:hover:not(.loc-regions__chip--active){background:#ff8f101a;border-color:#ff8f1073;color:var(--loc-kowloon)}.loc-regions__chip--nt:hover:not(.loc-regions__chip--active){background:#30b55a1a;border-color:#30b55a73;color:var(--loc-new-territories)}.loc-regions__chip:hover:not(.loc-regions__chip--active):not(.loc-regions__chip--hk):not(.loc-regions__chip--kl):not(.loc-regions__chip--nt){background:#e0fcf6a6;border-color:#18978847;color:var(--gm-forest)}.loc-districts{display:flex;flex-wrap:wrap;gap:8px;padding-top:12px;border-top:1px dashed rgba(21,87,90,.1)}.loc-districts__chip{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border-radius:999px;border:1px solid rgba(21,87,90,.12);background:#ffffffeb;color:#15575ad1;font-size:12px;font-weight:600;line-height:1.2;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.loc-districts__chip:hover{border-color:#18978847;background:#e0fcf68c}.loc-districts__chip--active{border-color:#18978859;background:#e0fcf6d9;color:var(--gm-teal-dark)}.loc-districts--hk .loc-districts__chip{border-color:#6a9af459;color:var(--loc-hk-island);background:#6a9af40f}.loc-districts--hk .loc-districts__chip:hover:not(.loc-districts__chip--active){border-color:#6a9af473;background:#6a9af41f;color:var(--loc-hk-island)}.loc-districts--hk .loc-districts__chip--active{border-color:transparent;background:var(--loc-hk-island);color:#fff;box-shadow:0 3px 10px #6a9af447}.loc-districts--kl .loc-districts__chip{border-color:#ff8f1059;color:var(--loc-kowloon);background:#ff8f100f}.loc-districts--kl .loc-districts__chip:hover:not(.loc-districts__chip--active){border-color:#ff8f1073;background:#ff8f101f;color:var(--loc-kowloon)}.loc-districts--kl .loc-districts__chip--active{border-color:transparent;background:var(--loc-kowloon);color:#fff;box-shadow:0 3px 10px #ff8f1047}.loc-districts--nt .loc-districts__chip{border-color:#30b55a59;color:var(--loc-new-territories);background:#30b55a0f}.loc-districts--nt .loc-districts__chip:hover:not(.loc-districts__chip--active){border-color:#30b55a73;background:#30b55a1f;color:var(--loc-new-territories)}.loc-districts--nt .loc-districts__chip--active{border-color:transparent;background:var(--loc-new-territories);color:#fff;box-shadow:0 3px 10px #30b55a47}.loc-layout{display:grid;gap:clamp(20px,3vw,28px)}@media(min-width:1024px){.loc-layout{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(20px,2.5vw,28px)}}.loc-aside{position:relative;z-index:2;min-width:0}.loc-aside__panel{padding:18px 18px 16px;border-radius:16px;background:#fff;border:1px solid rgba(21,87,90,.1);box-shadow:0 4px 24px #15575a0f}.loc-aside__title{margin:0;font-size:15px;font-weight:700;color:var(--gm-forest)}.loc-aside__hint{margin:6px 0 14px;font-size:13px;line-height:1.5;color:#15575a9e}.loc-map-wrap{display:flex;flex-direction:column;gap:14px;width:100%}.loc-map-wrap--compact{gap:0}.loc-map__hint{margin:0;font-size:14px;color:#15575aad;text-align:center}.loc-map-shell{width:100%;height:clamp(200px,22vw,280px);border-radius:12px;overflow:hidden;background:var(--gm-mint);box-shadow:inset 0 0 0 1px #15575a0f}.loc-map-wrap--compact .loc-map-shell{width:100%;height:auto;aspect-ratio:935 / 745}.loc-map{display:block;width:100%;height:100%}.loc-map__group{cursor:pointer;outline:none;pointer-events:bounding-box;-webkit-tap-highlight-color:transparent}.loc-map:hover .loc-map__group:not(:hover){opacity:.5}.loc-map__group:hover{opacity:1}.loc-map__shape{transform-box:fill-box;transform-origin:center;transition:transform .28s ease,filter .28s ease}.loc-map__group:hover .loc-map__shape{transform:scale(1);filter:drop-shadow(0 4px 10px rgba(21,87,90,.2))}.loc-map__group:hover .loc-map__label{font-size:35px}.loc-map-wrap--compact .loc-map__group:hover .loc-map__label{font-size:31px}.loc-map__group:focus,.loc-map__group:focus-visible{outline:none}.loc-map__group--dim{opacity:.85}.loc-map:hover .loc-map__group--dim:not(:hover){opacity:.45}.loc-map__region{cursor:pointer;pointer-events:visiblePainted;stroke:#15575a59;stroke-width:2;transition:fill .28s ease,opacity .28s ease,stroke .28s ease,stroke-width .28s ease}.loc-map__group:hover .loc-map__region{stroke:#15575a9e;stroke-width:3}.loc-map__label{font-size:34px;font-weight:700;text-anchor:middle;dominant-baseline:middle;pointer-events:none;paint-order:stroke fill;stroke:#fffffff2;stroke-width:5;transition:font-size .28s ease}.loc-map__label--nt{fill:var(--loc-new-territories)}.loc-map__label--kl{fill:var(--loc-kowloon)}.loc-map__label--hk{fill:var(--loc-hk-island)}.loc-map-wrap--compact .loc-map__label{font-size:30px}.loc-map__label--active{fill:#fff;stroke:#15575a59;stroke-width:4}.loc-map__controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 20px}.loc-map__legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px}.loc-map__legend-item{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--gm-forest)}.loc-map__legend-swatch{width:14px;height:14px;border-radius:3px}.loc-map__legend-swatch--hk{background:var(--loc-hk-island)}.loc-map__legend-swatch--kl{background:var(--loc-kowloon)}.loc-map__legend-swatch--nt{background:var(--loc-new-territories)}.loc-map__all{border:1px solid rgba(21,87,90,.18);border-radius:999px;padding:9px 20px;background:#fff;color:var(--gm-forest);font-size:14px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.loc-map__all--active{border-color:var(--gm-teal);background:var(--gm-teal);color:#fff;font-weight:600}.loc-map__all:hover:not(.loc-map__all--active){border-color:#18978866;background:#e0fcf68c}.loc-list{position:relative;z-index:1;isolation:isolate;overflow:hidden;min-width:0;min-height:0;padding:clamp(18px,2.5vw,24px);border-radius:16px;background:#fff;border:1px solid rgba(21,87,90,.1);box-shadow:0 4px 24px #15575a0f}.loc-list__head{display:flex;flex-direction:column;gap:12px;margin-bottom:clamp(18px,2.5vw,24px);padding-bottom:16px;border-bottom:1px solid rgba(21,87,90,.08)}.loc-list__logo{display:block;width:auto;max-width:min(100%,420px);height:clamp(52px,6.5vw,76px);margin-inline:0;object-fit:contain;object-position:left center}.loc-page--stores .loc-list__logo{max-width:min(100%,520px);height:clamp(72px,9vw,108px)}.loc-list__title{margin:0;font-size:clamp(1.25rem,2.2vw,1.5rem);font-weight:700;line-height:1.35;color:var(--gm-forest)}.loc-list__desc{margin:0;font-size:.9375rem;line-height:1.5;color:#15575ab8}.loc-list__head .loc-districts{padding-top:0;border-top:none}.loc-list{display:flex;flex-direction:column;min-height:0;box-sizing:border-box}.loc-list__head{flex-shrink:0}.loc-list__scroll{position:relative;flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:10px 12px 14px;scrollbar-width:thin;scrollbar-color:rgba(21,87,90,.28) transparent}.loc-list__loading{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#ffffffe0;backdrop-filter:blur(4px)}.loc-list__loading-spinner{width:36px;height:36px;border:3px solid rgba(21,87,90,.14);border-top-color:var(--gm-teal);border-radius:50%;animation:loc-list-spin .75s linear infinite}.loc-list__loading-text{font-size:14px;font-weight:600;color:#15575ab8}@keyframes loc-list-spin{to{transform:rotate(360deg)}}@media(max-width:1023px){.loc-list__scroll{flex:none;width:100%}}.loc-list__scroll::-webkit-scrollbar{width:6px}.loc-list__scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#15575a47}.loc-list__scroll::-webkit-scrollbar-track{background:transparent}@media(min-width:1024px){.loc-aside{display:flex;flex-direction:column}.loc-aside__panel{flex:1;min-height:0}}.loc-grid{display:grid;grid-template-columns:1fr;gap:16px;list-style:none;margin:0;padding:0}.loc-list__scroll .loc-grid{gap:10px}.loc-list__scroll .loc-card--directory{border-radius:10px;border-left:3px solid var(--loc-card-accent);box-shadow:0 1px 8px #15575a0f;background:#fff}.loc-list__scroll .loc-card--directory .loc-card__accent{display:none}.loc-list__scroll .loc-card--directory:hover{transform:none;border-color:color-mix(in srgb,var(--loc-card-accent) 40%,var(--loc-card-border));box-shadow:0 4px 18px color-mix(in srgb,var(--loc-card-accent) 14%,rgba(21,87,90,.1))}.loc-list__scroll .loc-card--directory .loc-card__body{gap:8px;padding:12px 14px 8px;background:#fff}.loc-list__scroll .loc-card--directory.loc-card--academy .loc-card__body{background:#fff}.loc-list__scroll .loc-card--directory .loc-card__footer{padding:0 10px 10px;margin-top:0;background:transparent}.loc-list__scroll .loc-card--directory .loc-card__content{gap:0}.loc-list__scroll .loc-card--directory .loc-card__content>.loc-card__top{gap:8px;margin-bottom:8px;align-items:center}.loc-list__scroll .loc-card--directory .loc-card__name{font-size:.9375rem;line-height:1.25}.loc-list__scroll .loc-card--directory .loc-card__region{padding:2px 8px;font-size:10px}.loc-list__scroll .loc-card--directory .loc-card__info{gap:6px;padding:0;border:none;border-radius:0;background:transparent}.loc-list__scroll .loc-card--directory .loc-card__address{gap:6px;font-size:12px;line-height:1.45}.loc-list__scroll .loc-card--directory .loc-card__address svg{width:14px;height:14px;margin-top:1px}.loc-list__scroll .loc-card--directory .loc-card__hours{gap:6px;padding-top:6px;border-top:1px solid color-mix(in srgb,var(--loc-card-accent) 16%,transparent)}.loc-list__scroll .loc-card--directory .loc-card__hours svg{width:13px;height:13px}.loc-list__scroll .loc-card--directory .loc-card__hours-list{gap:2px}.loc-list__scroll .loc-card--directory .loc-card__hours-list li{gap:8px;font-size:11px;line-height:1.35}.loc-list__scroll .loc-card--directory .loc-card__hours-fallback{font-size:11px;line-height:1.4}.loc-list__scroll .loc-card--directory .loc-card__actions{gap:5px;grid-template-columns:repeat(4,minmax(0,1fr))}.loc-list__scroll .loc-card--directory .loc-card__action{gap:4px;min-height:32px;padding:5px 4px;border-radius:7px;font-size:11px}.loc-list__scroll .loc-card--directory .loc-card__action svg{width:14px;height:14px}@media(max-width:767px){.loc-list__scroll .loc-card--directory .loc-card__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.loc-list__loading-spinner{animation:none;border-right-color:var(--gm-teal)}.loc-list__scroll .loc-card--directory:hover{box-shadow:0 1px 8px #15575a0f}}.loc-card{--loc-card-accent: var(--gm-teal);--loc-card-bg: rgba(224, 252, 246, .45);--loc-card-border: rgba(21, 87, 90, .1);position:relative;display:flex;flex-direction:column;gap:0;height:100%;overflow:hidden;border-radius:16px;background:#fff;border:1px solid var(--loc-card-border);box-shadow:0 2px 16px #15575a0f;transition:border-color .22s ease,box-shadow .22s ease,outline-color .25s ease,transform .22s ease}.loc-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #15575a1a}.loc-card--region-nt{--loc-card-accent: var(--loc-new-territories);--loc-card-bg: rgba(48, 181, 90, .1);--loc-card-border: rgba(48, 181, 90, .18);--loc-card-text: #1f6b3f;--loc-card-text-muted: rgba(31, 107, 63, .72);--loc-card-info-bg: rgba(48, 181, 90, .08);--loc-card-info-border: rgba(48, 181, 90, .18)}.loc-card--region-kl{--loc-card-accent: var(--loc-kowloon);--loc-card-bg: rgba(255, 143, 16, .1);--loc-card-border: rgba(255, 143, 16, .2);--loc-card-text: #9a4f00;--loc-card-text-muted: rgba(154, 79, 0, .72);--loc-card-info-bg: rgba(255, 143, 16, .08);--loc-card-info-border: rgba(255, 143, 16, .2)}.loc-card--region-hk{--loc-card-accent: var(--loc-hk-island);--loc-card-bg: rgba(106, 154, 244, .12);--loc-card-border: rgba(106, 154, 244, .2);--loc-card-text: #2f5099;--loc-card-text-muted: rgba(47, 80, 153, .72);--loc-card-info-bg: rgba(106, 154, 244, .08);--loc-card-info-border: rgba(106, 154, 244, .2)}.loc-card__accent{height:5px;background:linear-gradient(90deg,var(--loc-card-accent) 0%,color-mix(in srgb,var(--loc-card-accent) 55%,white) 100%)}.loc-card__body{display:flex;flex-direction:column;gap:14px;padding:18px 20px 16px;background:linear-gradient(180deg,var(--loc-card-bg) 0%,#fff 42%)}.loc-card--academy .loc-card__body{background:linear-gradient(180deg,color-mix(in srgb,var(--loc-card-bg) 80%,rgba(224,252,246,.5)),#fff 48%)}.loc-card--highlight{outline:2px solid var(--gm-orange);outline-offset:2px;box-shadow:0 8px 28px #ff8f1024}.loc-card__footer{margin-top:auto;padding:0 16px 16px;background:color-mix(in srgb,var(--loc-card-bg) 35%,#fff)}.loc-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.loc-card__badges{display:flex;flex-wrap:wrap;gap:6px}.loc-card__badge{display:inline-block;padding:3px 10px;border-radius:4px;font-size:12px;font-weight:600;line-height:1.4}.loc-card__badge--academy{background:#1897881f;color:var(--gm-teal-dark)}.loc-card--region-nt .loc-card__badge--academy,.loc-card--region-kl .loc-card__badge--academy,.loc-card--region-hk .loc-card__badge--academy{background:color-mix(in srgb,var(--loc-card-accent) 16%,#fff);color:var(--loc-card-text);border:1px solid color-mix(in srgb,var(--loc-card-accent) 24%,transparent)}.loc-card__badge--stores{background:#15575a0f;color:var(--gm-forest)}.loc-card__badge--drwong{background:#ff8f101f;color:#b45309}.loc-card__code{margin:0;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--loc-card-accent)}.loc-card__location-labels{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}.loc-card__top .loc-card__location-labels{margin-left:0;flex-shrink:0;justify-content:flex-end}.loc-card__content>.loc-card__top{align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.loc-card__top .loc-card__name{margin:0;flex:1;min-width:0}.loc-card__location-labels .loc-card__region{margin-left:0}.loc-card__region{flex-shrink:0;margin-left:auto;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:700;color:#fff;background:var(--loc-card-accent);box-shadow:0 2px 8px color-mix(in srgb,var(--loc-card-accent) 35%,transparent)}.loc-card__region--nt{background:var(--loc-new-territories)}.loc-card__region--kl{background:var(--loc-kowloon)}.loc-card__region--hk{background:var(--loc-hk-island)}.loc-card__name{margin:0;font-size:clamp(1.05rem,2vw,1.2rem);font-weight:700;line-height:1.35;color:var(--loc-card-text, var(--gm-forest))}.loc-card__info{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:12px;background:var(--loc-card-info-bg, rgba(255, 255, 255, .72));border:1px solid var(--loc-card-info-border, rgba(21, 87, 90, .06))}.loc-card__address{display:flex;align-items:flex-start;gap:8px;margin:0;color:var(--loc-card-text, var(--gm-forest));font-size:14px;line-height:1.6}.loc-card__address svg{flex:0 0 auto;margin-top:2px;color:var(--loc-card-accent)}.loc-card__address-en{margin:0;font-size:13px;line-height:1.5;color:var(--loc-card-text-muted, rgba(21, 87, 90, .58))}.loc-card__hours{display:flex;align-items:flex-start;gap:8px;margin:0;padding-top:10px;border-top:1px dashed color-mix(in srgb,var(--loc-card-accent) 22%,transparent)}.loc-card__hours svg{flex:0 0 auto;margin-top:2px;color:var(--loc-card-accent);opacity:.9}.loc-card__hours-list{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:4px}.loc-card__hours-list li{display:flex;align-items:baseline;gap:16px;font-size:12px;line-height:1.45}.loc-card__hours-day{flex:0 0 auto;white-space:nowrap;font-weight:600;color:var(--loc-card-text, var(--gm-forest))}.loc-card__hours-weekday{font-weight:500;color:var(--loc-card-text-muted, rgba(21, 87, 90, .58))}.loc-card__hours-time{flex:0 0 auto;margin-left:auto;white-space:nowrap;text-align:right;color:var(--loc-card-text-muted, rgba(21, 87, 90, .72))}.loc-card__hours-fallback{margin:0;flex:1;font-size:12px;line-height:1.55;color:var(--loc-card-text-muted, rgba(21, 87, 90, .72))}.loc-card__content{display:flex;flex-direction:column;gap:8px}.loc-card__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.loc-card__action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:9px 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--loc-card-accent) 22%,rgba(21,87,90,.12));background:color-mix(in srgb,var(--loc-card-info-bg) 65%,#fff);color:var(--loc-card-text, var(--gm-forest));font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.loc-card__action svg{flex-shrink:0}.loc-card__action--whatsapp{border-color:transparent;background:var(--gm-teal);color:#fff;box-shadow:0 4px 14px #18978838}.loc-card__action--whatsapp:hover,.loc-card:hover .loc-card__action--whatsapp:hover{border-color:transparent;background:var(--gm-teal-dark);color:#fff;box-shadow:0 6px 18px #18978857;transform:translateY(-1px)}.loc-card:hover .loc-card__action--whatsapp{background:var(--gm-teal);color:#fff;border-color:transparent}.loc-card__action--call:hover,.loc-card__action--map:hover{border-color:color-mix(in srgb,var(--loc-card-accent) 45%,white);background:color-mix(in srgb,var(--loc-card-accent) 16%,white);color:var(--loc-card-text, var(--gm-forest))}.loc-card__actions--detail{max-width:none}.loc-card__actions--detail .loc-card__action--call,.loc-card__actions--detail .loc-card__action--map,.loc-card__actions--detail .loc-card__action--outline{border:1px solid var(--loc-card-info-border);background:#fff;box-shadow:0 1px color-mix(in srgb,var(--loc-card-accent) 8%,transparent)}.loc-card__actions--detail .loc-card__action--call:hover,.loc-card__actions--detail .loc-card__action--map:hover,.loc-card__actions--detail .loc-card__action--outline:hover{border-color:color-mix(in srgb,var(--loc-card-accent) 45%,white);background:color-mix(in srgb,var(--loc-card-accent) 10%,white);color:var(--loc-card-text, var(--gm-forest))}.loc-detail{padding-block:clamp(32px,5vw,48px) clamp(72px,8vw,96px)}.loc-detail__back{display:inline-flex;margin-bottom:20px;color:var(--gm-teal-dark);font-size:14px;font-weight:600;text-decoration:none}.loc-detail__back:hover{color:var(--gm-teal)}.loc-detail__card{width:100%;max-width:none;padding:clamp(24px,4vw,32px);border-radius:16px;background:#fff;border:1px solid var(--loc-card-border, rgba(21, 87, 90, .1));box-shadow:0 4px 24px #15575a0f}.loc-detail__card.loc-card--region-nt,.loc-detail__card.loc-card--region-kl,.loc-detail__card.loc-card--region-hk{background:linear-gradient(180deg,color-mix(in srgb,var(--loc-card-bg) 55%,#fff),#fff 38%)}.loc-detail__card--academy{border-left:4px solid var(--loc-card-accent, var(--gm-teal))}.loc-detail__title{margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.3;color:var(--loc-card-text, var(--gm-forest))}.loc-detail__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,46%);gap:clamp(24px,4vw,40px);align-items:stretch;margin-top:16px}.loc-detail__layout--no-media{grid-template-columns:minmax(0,1fr)}.loc-detail__content{display:flex;flex-direction:column;gap:0;min-width:0;min-height:100%}.loc-detail__content .loc-card__actions--detail{margin-top:auto}.loc-detail__media{margin:0;min-height:100%;border-radius:12px;overflow:hidden;border:1px solid var(--loc-card-info-border);background:color-mix(in srgb,var(--loc-card-info-bg) 55%,#fff)}.loc-detail__media img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover}.loc-detail__info{display:flex;flex-direction:column;gap:10px;margin:20px 0 24px}.loc-detail__disciplines{margin-top:14px}.loc-detail__disciplines-title{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--loc-card-text, var(--gm-forest))}.loc-detail__discipline-list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.loc-detail__discipline{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;font-size:13px;font-weight:700;line-height:1.3}.loc-detail__discipline--music{color:var(--gm-teal-dark);background:#1897881f;border:1px solid rgba(24,151,136,.2)}.loc-detail__discipline--dance{color:#9a4f00;background:#ff8f101f;border:1px solid rgba(255,143,16,.22)}.loc-detail__discipline--art{color:#7a3f86;background:#c26ed31f;border:1px solid rgba(194,110,211,.22)}.loc-detail__address,.loc-detail__address-en,.loc-detail__hours,.loc-detail__phone{margin:0;line-height:1.6;color:var(--loc-card-text, var(--gm-forest))}.loc-detail__address-en,.loc-detail__hours,.loc-detail__phone{color:var(--loc-card-text-muted, rgba(21, 87, 90, .72));font-size:15px}.loc-detail__hours-title{margin:0 0 6px;font-weight:700;color:var(--loc-card-text, var(--gm-forest))}.loc-detail__hours-list{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:4px}.loc-empty{padding:48px 24px;border-radius:12px;background:var(--gm-mint);border:1px solid rgba(24,151,136,.12);text-align:center;color:var(--gm-forest)}@media(max-width:1023px){.loc-detail__layout{grid-template-columns:1fr}.loc-detail__media{order:-1}.loc-detail__media img{min-height:240px;max-height:360px}}@media(max-width:767px){.loc-toolbar__primary{gap:10px;padding:10px 12px;border-radius:12px}.loc-regions__chip{min-height:34px;padding:7px 12px;font-size:12px}.loc-toolbar__link{width:100%;justify-content:center;padding:8px 12px;font-size:13px}.loc-list{padding:16px}}@media(prefers-reduced-motion:reduce){.loc-card:hover{transform:none}.loc-map__group:hover .loc-map__shape{transform:none;filter:none}.loc-map__group:hover .loc-map__label{font-size:inherit}}
