/* 入口、公開展示與學員導覽沿用現有單頁架構。 */
.gateway-brand img { position:absolute; top:24px; left:32px; width:clamp(120px,14vw,190px); height:auto; max-width:100%; margin:0; z-index:2; }
.gateway-subtitle { font-size:22.5px; letter-spacing:.24em; line-height:1.6; }
.gateway-map { opacity:.6; }
.site-header { background:linear-gradient(115deg,#0b1010ed,#291024e8),url('../assets/pitch.svg') center/cover; border-bottom:2px solid #9b2464; }
.site-header::before { content:""; position:absolute; inset:0; background:url('../assets/logo.png') 54% 50%/180px no-repeat; opacity:.055; pointer-events:none; }
.header-row { min-height:156px; gap:20px; }
.brand img { width:108px; height:108px; }
.brand-text strong { font-size:28.5px; }
.brand-text span { font-size:16.5px; letter-spacing:.12em; }
.header-row .location-badges span { font-size:18px; padding:13px 18px; }
.header-row .location-badges { gap:10px; }
.header-row .menu-toggle,.header-row .login-button { font-size:14px; padding:12px 14px; min-height:44px; }
.header-row .login-button { gap:8px; }
.header-social { display:flex; align-items:center; gap:6px; order:2; }
.header-social a { display:grid; place-items:center; width:44px; height:44px; color:#eee; }
.header-social a:hover { color:var(--pink-light); }
.header-row #member-menu-toggle { order:5; }
.desktop-nav { z-index:2; }
.hero-intro { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); gap:30px; align-items:center; min-width:0; }
.hero-copy { min-width:0; }
.hero-copy>h1,.hero-copy>.hero-description,.hero-copy>.cta { translate:40px 0; }
.hero-copy>.eyebrow { font-size:24px; letter-spacing:.1em; }
.hero-description { max-width:640px; text-wrap:wrap; }
.keep-phrase { white-space:nowrap; }
.home-kit { margin:0; min-width:0; max-height:440px; display:grid; justify-items:center; transform:translateX(-40px); }
.home-kit .shirt { width:100%; max-width:350px; filter:drop-shadow(12px 18px 12px #0009); }
.home-kit figcaption { font-size:12px; text-align:center; color:#e5c9d7; margin-top:12px; letter-spacing:.08em; }
.hero-copy .cta { font-size:22px; min-height:70px; padding:22px 32px; border:2px solid #ff87c5; box-shadow:0 10px 40px #ff008c65; }
.district-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.district-grid .feature-card { min-height:220px; }
.footer-row { flex-wrap:nowrap; justify-content:space-between; text-align:left; }
.footer-brand { display:flex; align-items:center; gap:12px; }
.footer-brand img { width:48px; height:48px; object-fit:contain; }
.footer-spacer { flex:1; }
/* 商品圖片包含整套球衣及球褲，沒有購物車或付款流程。 */
#website[data-public-scene="store"] .category-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; }
#website[data-public-scene="store"] .category-heading .cta { min-height:48px; margin-block:12px 20px; font-size:16px; gap:12px; }
.store-hero { padding:40px; background:linear-gradient(125deg,#5d1038,#19131e 55%); border-left:4px solid var(--pink); }
.store-hero h2 { font-size:clamp(30px,5vw,62px); margin:0 0 18px; }
.store-hero>p:last-child { color:#ddc2d0; }
.store-product { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; padding-block:48px; align-items:start; }
.store-kit-photo { min-height:0; }
.store-kit-photo .locker-brand { padding:18px 12px; }
.store-kit-photo .locker-brand img { width:48px; height:48px; }
.store-kit-photo .locker-brand strong { font-size:22px; }
.store-kit-photo .locker-bays { grid-template-columns:repeat(2,minmax(0,1fr)); padding-bottom:46px; }
.store-kit-photo .locker-bay { height:auto; min-height:0; margin:0; padding:42px 8px 24px; flex-direction:column; align-items:center; justify-content:flex-start; }
.store-kit-cutout { width:100%; aspect-ratio:1/2; position:relative; overflow:hidden; z-index:1; filter:drop-shadow(0 12px 8px #000b); }
.store-kit-cutout img { position:absolute; display:block; height:auto; }
.store-kit-front img { width:118.851%; left:-6.104%; top:-3.950%; mask-image:url('../assets/kits/kit-front-mask.svg'); mask-size:100% 100%; mask-repeat:no-repeat; }
.store-kit-back img { width:109.648%; left:-2.613%; top:-3.116%; mask-image:url('../assets/kits/kit-back-mask.svg'); mask-size:100% 100%; mask-repeat:no-repeat; }
.store-kit-photo figcaption { margin-top:12px; font-size:12px; color:#d6ba80; letter-spacing:.12em; }
.store-kit-photo .locker-floor { height:74px; }
.store-kit-photo .locker-bench { bottom:52px; }
.store-product-copy { min-width:0; }
.store-product-copy h2 { font:italic 900 clamp(32px,4vw,58px)/1.1 Arial,sans-serif; margin:0 0 24px; }
.store-price { font-size:32px; font-weight:800; color:var(--pink-light); }
.store-price span { font-size:14px; color:var(--muted); }
.store-product-copy>p:not(.eyebrow) { line-height:1.9; }
/* 只將背心及冬季預告整組縮至80%，Home Kit維持原尺寸。 */
.store-upcoming { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; width:80%; zoom:.8; }
.store-upcoming article { padding:30px; background:linear-gradient(160deg,#281724,#111217); border:1px solid #58414e; }
.store-upcoming span { color:var(--pink-light); font-size:12px; letter-spacing:.15em; }
.store-upcoming p { color:var(--muted); font-size:14px; }
.store-vest-photo { display:block; width:100%; height:auto; margin-bottom:24px; }
.store-vest .store-price { font-size:24px; color:var(--pink-light); }
.store-vest .store-price span { color:var(--muted); letter-spacing:normal; font-size:14px; }
.product-silhouette { width:100px; height:140px; background:linear-gradient(#52414d,#25212b); margin:10px auto 35px; }
.vest { clip-path:polygon(25% 0,40% 10%,60% 10%,75% 0,80% 28%,95% 38%,95% 100%,5% 100%,5% 38%,20% 28%); }
.jacket { width:150px; clip-path:polygon(35% 0,65% 0,80% 12%,100% 85%,85% 90%,70% 40%,70% 100%,30% 100%,30% 40%,15% 90%,0 85%,20% 12%); }
/* 人物陣容卡片，主教練與助教分開，不按司職位置分類。 */
.coach-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin-block:40px; }
.coach-card { min-width:0; background:linear-gradient(145deg,#21151e,#101217); border:1px solid #543147; }
.coach-portrait { aspect-ratio:4/5; overflow:hidden; position:relative; background:radial-gradient(ellipse at 50% 100%,#b11868,#281221 55%,#111217); display:grid; place-items:center; }
.coach-portrait::after { content:"HAT-TRICK FC"; position:absolute; bottom:15px; left:20px; font:italic 900 20px Arial,sans-serif; color:#ffffff25; }
.coach-portrait img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain; }
/* 鋒Sir沿用已確認的4:5中央裁切，其餘宣傳照保留完整文字。 */
.coach-portrait img[src="assets/coach-hui-wang-fung.jpeg"] { object-fit:cover; object-position:center; }
.coach-silhouette { position:absolute; bottom:0; width:66%; height:65%; background:#0e0c12; border-radius:48% 48% 0 0; }
.coach-silhouette::before { content:""; position:absolute; width:50%; aspect-ratio:1; border-radius:50%; background:#0e0c12; left:25%; top:-35%; }
.coach-symbol { position:relative; color:#ffd4eb; font:900 48px Arial,sans-serif; }
.coach-copy { padding:24px; }
.coach-copy h2 { margin:0 0 8px; font-size:24px; }
.coach-call { font-size:18px; color:var(--pink-light); margin:0 0 24px; }
.coach-name-row { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 12px; margin-bottom:8px; }
.coach-name-row h2,.coach-name-row>.coach-call { margin:0; }
.coach-facts { padding-left:20px; margin:0; color:#d5c6d1; font-size:14px; line-height:1.9; }
.coach-facts li+li { margin-top:8px; }
.coach-facts span { color:#fff; }
.assistant-title { font-size:30px; border-top:1px solid var(--line); padding-top:34px; }
.assistant-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.assistant-card { border-left:3px solid var(--pink); background:#19151d; padding:22px; }
.assistant-card h3 { margin:0; font-size:18px; line-height:1.5; }
.assistant-card p { font-size:14px; color:#bba8b7; }
@media(max-width:1250px) {
  .header-row { flex-wrap:wrap; padding-block:18px; gap:12px; }
  .header-row .brand { margin-right:auto; }
  .header-row .location-badges { order:6; width:100%; justify-content:center; margin:0; }
  .brand img { width:86px; height:86px; }
  .brand-text strong { font-size:26px; }
  .brand-text span { font-size:14px; }
  .desktop-nav { top:100%; }
}
@media(max-width:700px) {
  .gateway { padding:70px 20px 30px; }
  .gateway-brand img { top:18px; left:18px; width:90px; }
  .gateway-subtitle { font-size:20px; letter-spacing:.1em; }
  .header-row { min-height:0; gap:8px; padding-block:12px; }
  .header-row .brand { flex-basis:100%; justify-content:center; margin:0; }
  .brand img { width:63px; height:63px; }
  .brand-text strong { font-size:21px; }
  .brand-text span { display:block; font-size:12px; letter-spacing:.12em; }
  .header-social { margin-right:auto; gap:0; }
  .header-social a { width:44px; }
  .header-row .menu-toggle,.header-row .login-button { font-size:13px; padding:8px 10px; min-height:44px; }
  .header-row #member-menu-toggle { font-size:13px; padding:10px; }
  .header-row .location-badges { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .header-row .location-badges span { font-size:14px; padding:8px 5px; justify-content:center; gap:5px; }
  .hero-intro { grid-template-columns:minmax(0,1fr) minmax(0,.55fr); gap:12px; align-items:start; }
  .hero-copy { display:contents; }
  .hero-copy>h1,.hero-copy>.hero-description,.hero-copy>.cta { translate:6px 0; }
  .hero-copy>.eyebrow { grid-column:1/-1; grid-row:1; font-size:17px; letter-spacing:.04em; line-height:1.5; gap:8px; }
  .hero-copy>.eyebrow::before { width:14px; flex-shrink:0; }
  .hero-copy h1 { grid-column:1; grid-row:2; font-size:clamp(28px,8vw,44px); }
  .hero-description { grid-column:1/-1; grid-row:3; font-size:14px; line-height:1.9; }
  .home-kit { grid-column:2; grid-row:2; margin-top:0; transform:translateX(-6px); }
  .home-kit figcaption { font-size:10px; line-height:1.6; letter-spacing:0; }
  .hero-copy .cta { grid-column:1/-1; grid-row:4; min-height:62px; font-size:17px; padding:16px; gap:10px; }
  .district-grid { gap:12px; }
  .district-grid .feature-card { padding:18px 14px; min-height:240px; }
  .district-grid h3 { font-size:18px; line-height:1.5; }
  .district-grid p { font-size:12px; overflow-wrap:anywhere; }
  .footer-row { flex-wrap:wrap; justify-content:space-between; gap:24px; }
  .footer-spacer { display:none; }
  .footer-row>span:last-child { width:100%; text-align:right; font-size:11px; }
  .store-hero { padding:26px; }
  .store-product { grid-template-columns:1fr; gap:28px; padding-block:30px; }
  .store-kit-photo .locker-brand strong { font-size:18px; }
  .store-kit-photo .locker-bays { margin-inline:3%; padding-inline:0; }
  .store-kit-photo .locker-bay { padding:32px 6px 18px; border-inline-width:4px; }
  .store-upcoming { gap:14px; }
  .store-upcoming article { padding:20px 14px; }
  .product-silhouette { max-width:100%; }
  .store-upcoming h3 { font-size:18px; }
  .coach-grid { grid-template-columns:1fr; gap:24px; }
  .coach-portrait { max-height:440px; }
  .coach-copy { padding:24px; }
  .assistant-grid { grid-template-columns:1fr 1fr; gap:12px; }
  .assistant-card { padding:16px; }
  .assistant-card h3 { font-size:16px; }
}
@media(min-width:701px) and (max-width:1000px) {
  .coach-grid { grid-template-columns:1fr 1fr; }
  .hero-copy>.eyebrow { font-size:20px; }
  .hero-copy h1 { font-size:54px; }
}
