@charset "utf-8";
/* 풋살클럽형 1 (futsal1) — 짙은 피치 그린 헤더 · 형광 라임 포인트 · 굵은 좁은 영문(Bebas Neue) · 트랙별 색(키즈 노랑 · 남성 파랑 · 여성 분홍 · 소셜 라임)
 * 첫 화면은 왼쪽 문구 · 오른쪽 사진 분할, 사진 위에 '오늘은 어디서?' 판. 평일 실내는 짙은 색, 주말 야외는 잔디 초록으로 구분한다. */
:root{
  --fs-ink:#0b1a14; --fs-body:#4b5a52; --fs-mut:#86938c; --fs-line:#e2e8e4; --fs-bg:#f3f6f4; --fs-dark:#07140f; --fs-pitch:#0f3d2c; --fs-turf:#1f8a55; --fs-turf-l:#e6f4ea;
  --fs-lime:#d4ff3a; --fs-lime-d:#a8cc12; --fs-coral:#ff5a3c;
  --fs-kids:#ffb81c; --fs-men:#3d9bff; --fs-women:#ff6b93; --fs-social:#b5e61d;
  --fs-en:"Bebas Neue", "Pretendard Variable", sans-serif;
  --fs-sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
  --fs-r:16px; --fs-fixedh:72px;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; scroll-padding-top:calc(var(--fs-fixedh) + 12px); }
body{ margin:0; background:#fff; color:var(--fs-ink); font-family:var(--fs-sans); font-size:16px; line-height:1.7; word-break:keep-all; -webkit-text-size-adjust:100%; }
a{ color:inherit; text-decoration:none; }
img{ display:block; max-width:100%; height:auto; }
h1,h2,h3,h4{ margin:0; font-size:inherit; font-weight:inherit; }
ul,ol,dl,dd,p,figure{ margin:0; padding:0; }
ul,ol{ list-style:none; }
button{ font:inherit; cursor:pointer; }
p, li, dd, dt, h1, h2, h3, h4, strong, b, small{ word-break:keep-all; overflow-wrap:break-word; }   /* 그누보드 기본 css 의 break-all 을 되돌린다 */
.fs-wrap{ width:100%; max-width:1280px; margin:0 auto; padding:0 24px; }
.fs-skip{ position:absolute; left:-9999px; top:0; z-index:999; padding:10px 16px; background:var(--fs-lime); color:var(--fs-ink); }
.fs-skip:focus{ left:10px; }
.fs-ico{ width:1.15em; height:1.15em; flex:none; }
.fs-num{ font-variant-numeric:tabular-nums; }
.fs-empty{ padding:24px; border:1px dashed var(--fs-line); border-radius:var(--fs-r); text-align:center; color:var(--fs-mut); }
#fs-main [hidden], .fs-drawer[hidden], .fs-subpart [hidden]{ display:none !important; }

.fs-rv{ opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.fs-rv.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .fs-rv{ opacity:1; transform:none; transition:none; } html{ scroll-behavior:auto; } }

.fs-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; height:54px; padding:0 28px; border:2px solid transparent; border-radius:10px; font-size:16px; font-weight:800; transition:background .2s, color .2s, border-color .2s, transform .2s; }
.fs-btn:hover{ transform:translateY(-2px); }
.fs-btn--lime{ background:var(--fs-lime); color:var(--fs-ink); }
.fs-btn--lime:hover{ background:#fff; }
.fs-btn--line{ border-color:rgba(255,255,255,.4); color:#fff; }
.fs-btn--line:hover{ border-color:var(--fs-lime); color:var(--fs-lime); }
.fs-more{ display:inline-flex; align-items:center; gap:6px; font-size:15px; font-weight:800; color:var(--fs-turf); }
.fs-more:hover{ color:var(--fs-ink); }
.fs-more .fs-ico{ transition:transform .2s; }
.fs-more:hover .fs-ico{ transform:translateX(3px); }

/* 트랙 색 */
.fs-trk{ display:inline-block; padding:2px 10px; border-radius:6px; font-style:normal; font-size:12.5px; font-weight:800; background:var(--fs-bg); color:var(--fs-ink); }
.fs-trk--kids{ background:#fff1cf; color:#8a5d00; }
.fs-trk--men{ background:#e0eeff; color:#1a5fb0; }
.fs-trk--women{ background:#ffe4ec; color:#b3325b; }
.fs-trk--social{ background:#eefad0; color:#4d6a00; }
.fs-dot{ display:inline-block; width:9px; height:9px; margin-right:6px; border-radius:50%; background:var(--fs-mut); }
.fs-dot--kids{ background:var(--fs-kids); } .fs-dot--men{ background:var(--fs-men); } .fs-dot--women{ background:var(--fs-women); } .fs-dot--social{ background:var(--fs-social); }
.fs-venue{ display:inline-flex; align-items:center; gap:4px; padding:2px 9px; border-radius:6px; font-size:12.5px; font-weight:800; }
.fs-venue--indoor{ background:var(--fs-pitch); color:#fff; }
.fs-venue--outdoor{ background:var(--fs-turf-l); color:var(--fs-turf); }
.fs-st{ display:inline-flex; align-items:center; gap:5px; margin-left:4px; font-size:12.5px; font-weight:800; }
.fs-st::before{ content:""; width:7px; height:7px; border-radius:50%; background:#20b36b; }
.fs-st.is-few{ color:#b36b00; } .fs-st.is-few::before{ background:#f5a524; }
.fs-st.is-full{ color:var(--fs-coral); } .fs-st.is-full::before{ background:var(--fs-coral); }

/* 칩 */
.fs-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.fs-chips button, .fs-chips--radio span{ display:inline-flex; align-items:center; height:40px; padding:0 16px; border:1px solid var(--fs-line); border-radius:10px; background:#fff; color:var(--fs-body); font-size:14.5px; font-weight:700; transition:.15s; }
.fs-chips button:hover, .fs-chips--radio label:hover span{ border-color:var(--fs-turf); color:var(--fs-turf); }
.fs-chips button.is-on, .fs-chips--radio input:checked + span{ background:var(--fs-ink); border-color:var(--fs-ink); color:var(--fs-lime); }
.fs-chips--radio label{ position:relative; cursor:pointer; }
.fs-chips--radio input{ position:absolute; opacity:0; width:1px; height:1px; }
.fs-chips--radio input:focus-visible + span{ outline:2px solid var(--fs-turf); outline-offset:2px; }

/* 표 */
.fs-tbl{ overflow-x:auto; border:1px solid var(--fs-line); border-radius:12px; background:#fff; }
.fs-tbl table{ width:100%; border-collapse:collapse; font-size:15px; color:var(--fs-ink); }
.fs-tbl th, .fs-tbl td{ padding:12px 16px; border-bottom:1px solid var(--fs-line); text-align:left; white-space:nowrap; }
.fs-tbl thead th{ background:var(--fs-bg); color:var(--fs-body); font-size:13.5px; font-weight:700; }
.fs-tbl tbody tr:last-child > *{ border-bottom:0; }
.fs-tbl tbody th small{ display:block; font-size:12.5px; font-weight:500; color:var(--fs-mut); }
.fs-tbl__note{ margin-top:12px; font-size:13.5px; color:var(--fs-mut); }

/* 데모 띠 */
.fs-demo{ display:flex; flex-wrap:wrap; justify-content:center; gap:4px 16px; padding:7px 16px; background:#000; color:#9fb3a8; font-size:12.5px; text-align:center; }
.fs-demo b{ color:#fff; }
.fs-demo a{ color:var(--fs-lime); font-weight:700; }

/* 헤더 — 늘 짙은 색 */
.fs-fixed{ position:sticky; top:0; z-index:100; background:var(--fs-dark); color:#fff; transition:box-shadow .3s; }
.fs-fixed.is-solid{ box-shadow:0 10px 30px rgba(0,0,0,.3); }
.fs-header__in{ display:flex; align-items:center; gap:24px; height:72px; }
.fs-logo{ display:flex; align-items:center; gap:10px; flex:none; }
.fs-logo__mark{ display:inline-flex; width:40px; height:40px; align-items:center; justify-content:center; border-radius:10px; background:var(--fs-lime); color:var(--fs-ink); }
.fs-logo__mark .fs-ico{ width:26px; height:26px; }
.fs-logo__txt{ display:flex; flex-direction:column; line-height:.95; }
.fs-logo__txt strong{ font-family:var(--fs-en); font-size:30px; font-weight:400; letter-spacing:.04em; }
.fs-logo__txt small{ font-family:var(--fs-en); font-size:13px; letter-spacing:.24em; color:var(--fs-lime); }
.fs-gnb{ flex:1; }
.fs-gnb > ul{ display:flex; justify-content:flex-end; }
.fs-gnb > ul > li{ position:relative; }
.fs-gnb > ul > li > a{ display:block; padding:24px 18px; font-size:16px; font-weight:700; color:rgba(255,255,255,.88); }
.fs-gnb > ul > li:hover > a, .fs-gnb > ul > li:focus-within > a{ color:var(--fs-lime); }
.fs-gnb li ul{ position:absolute; left:50%; top:calc(100% - 6px); min-width:180px; padding:8px; border-radius:12px; background:#fff; box-shadow:0 18px 40px rgba(0,0,0,.25); opacity:0; visibility:hidden; transform:translate(-50%,8px); transition:.18s; }
.fs-gnb li:hover ul, .fs-gnb li:focus-within ul{ opacity:1; visibility:visible; transform:translate(-50%,0); }
.fs-gnb li ul a{ display:block; padding:9px 14px; border-radius:8px; font-size:15px; font-weight:600; color:var(--fs-ink); white-space:nowrap; }
.fs-gnb li ul a:hover{ background:var(--fs-turf-l); color:var(--fs-turf); }
.fs-gnb__empty{ font-size:13px; text-align:right; }
.fs-header__act{ display:flex; align-items:center; gap:10px; flex:none; }
.fs-header__cta{ display:inline-flex; align-items:center; height:42px; padding:0 18px; border-radius:10px; background:var(--fs-lime); color:var(--fs-ink); font-size:15px; font-weight:800; }
.fs-header__cta:hover{ background:#fff; }
.fs-burger{ display:none; width:44px; height:44px; padding:11px 10px; border:0; background:none; color:#fff; }
.fs-burger span{ display:block; height:2px; margin:5px 0; border-radius:2px; background:currentColor; }

/* 전체 메뉴 */
.fs-drawer{ position:fixed; inset:0; z-index:200; background:rgba(0,0,0,.6); }
.fs-drawer__panel{ position:absolute; right:0; top:0; bottom:0; width:min(390px,88vw); padding:20px 22px 26px; background:var(--fs-dark); color:#fff; overflow-y:auto; display:flex; flex-direction:column; }
.fs-drawer__top{ display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.fs-drawer__close{ width:42px; height:42px; border:1px solid rgba(255,255,255,.25); border-radius:10px; background:none; color:#fff; font-size:16px; }
.fs-drawer__menu > li{ padding:14px 0; border-bottom:1px solid rgba(255,255,255,.1); }
.fs-drawer__menu > li > a{ font-size:18px; font-weight:800; }
.fs-drawer__menu ul{ display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:8px; }
.fs-drawer__menu ul a{ font-size:15px; color:rgba(255,255,255,.7); }
.fs-drawer__foot{ display:grid; gap:8px; margin-top:auto; padding-top:22px; }
.fs-drawer__foot a{ display:flex; align-items:center; justify-content:center; gap:8px; height:52px; border-radius:10px; background:var(--fs-lime); color:var(--fs-ink); font-weight:800; }
.fs-drawer__foot a + a{ background:none; border:1px solid rgba(255,255,255,.25); color:#fff; }

/* 1. 첫 화면 — 분할 */
.fs-hero{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); min-height:clamp(620px, calc(100vh - var(--fs-fixedh)), 860px); background:var(--fs-dark); color:#fff; }
.fs-hero__txt{ position:relative; display:flex; flex-direction:column; justify-content:center; padding:60px max(24px, calc((100vw - 1280px) / 2 + 24px)); padding-right:48px; overflow:hidden; background:linear-gradient(160deg, var(--fs-pitch), var(--fs-dark) 70%); }
.fs-hero__en{ position:relative; z-index:1; font-family:var(--fs-en); font-size:22px; letter-spacing:.14em; color:var(--fs-lime); }
.fs-hero__head{ position:relative; z-index:1; margin-top:10px; font-size:clamp(34px,3.6vw,54px); font-weight:900; line-height:1.18; letter-spacing:-.035em; }
.fs-hero__desc{ position:relative; z-index:1; margin-top:18px; font-size:clamp(16px,1.3vw,18px); color:rgba(255,255,255,.78); }
.fs-hero__btns{ position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.fs-hero__trk{ position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:34px; font-size:14.5px; font-weight:700; color:rgba(255,255,255,.8); }
.fs-hero__ghost{ position:absolute; left:-10px; bottom:-40px; font-family:var(--fs-en); font-size:clamp(140px,16vw,260px); line-height:1; color:transparent; -webkit-text-stroke:1px rgba(212,255,58,.14); pointer-events:none; }
.fs-hero__media{ position:relative; overflow:hidden; min-height:460px; }
.fs-hero__img{ position:absolute; inset:0; opacity:0; transition:opacity 1.4s ease; }
.fs-hero__img.is-on{ opacity:1; }
.fs-hero__img img{ width:100%; height:100%; object-fit:cover; }
.fs-hero__img figcaption{ position:absolute; right:20px; top:20px; padding:6px 14px; border-radius:8px; background:rgba(7,20,15,.72); font-size:13.5px; font-weight:700; }
.fs-hero__media::after{ content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(7,20,15,.55), rgba(7,20,15,0) 50%); pointer-events:none; }

/* 오늘은 어디서? */
.fs-today{ position:absolute; left:28px; bottom:28px; z-index:2; width:min(460px, calc(100% - 56px)); padding:22px 22px 18px; border-radius:18px; background:rgba(7,20,15,.86); border:1px solid rgba(212,255,58,.25); backdrop-filter:blur(10px); color:#fff; }
.fs-today__label{ font-family:var(--fs-en); font-size:18px; letter-spacing:.12em; color:var(--fs-lime); }
.fs-today__label span{ margin-left:6px; color:rgba(255,255,255,.7); }
.fs-today__head h3, .fs-today h3{ margin-top:2px; font-size:22px; font-weight:800; letter-spacing:-.02em; }
.fs-today__venues{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:14px; }
.fs-tv{ position:relative; display:flex; gap:10px; align-items:center; padding:12px; border-radius:12px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.04); transition:.2s; }
.fs-tv__ico{ display:inline-flex; flex:none; width:36px; height:36px; align-items:center; justify-content:center; border-radius:9px; background:rgba(255,255,255,.08); color:rgba(255,255,255,.7); }
.fs-tv__body{ display:flex; flex-direction:column; min-width:0; line-height:1.35; }
.fs-tv__body em{ font-style:normal; font-size:12px; font-weight:700; color:rgba(255,255,255,.6); }
.fs-tv__body b{ font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.fs-tv__body small{ font-size:12px; color:rgba(255,255,255,.55); }
.fs-tv__now{ display:none; position:absolute; right:8px; top:-9px; padding:1px 8px; border-radius:6px; background:var(--fs-lime); color:var(--fs-ink); font-size:11.5px; font-weight:900; }
.fs-tv.is-today{ border-color:var(--fs-lime); background:rgba(212,255,58,.1); }
.fs-tv.is-today .fs-tv__ico{ background:var(--fs-lime); color:var(--fs-ink); }
.fs-tv.is-today .fs-tv__now{ display:block; }
.fs-today__list{ display:grid; gap:6px; margin-top:14px; max-height:150px; overflow:auto; }
.fs-today__list li{ display:flex; align-items:center; gap:10px; font-size:14px; }
.fs-today__list li > span{ flex:none; font-weight:800; color:var(--fs-lime); }
.fs-today__list li b{ flex:1; min-width:0; font-weight:700; }
.fs-today__none{ color:rgba(255,255,255,.7); }
.fs-today__rain{ display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:12px; padding-top:12px; border-top:1px solid rgba(255,255,255,.12); font-size:13px; color:rgba(255,255,255,.8); }
.fs-today__rain a{ color:var(--fs-lime); font-weight:800; }

/* 2. 공지 한 줄 */
.fs-notice{ background:var(--fs-lime); color:var(--fs-ink); }
.fs-notice__in{ display:flex; align-items:center; gap:14px; min-height:56px; font-size:15px; }
.fs-notice__in b{ flex:none; padding:2px 10px; border-radius:6px; background:var(--fs-ink); color:var(--fs-lime); font-size:13px; }
.fs-notice__in > a:first-of-type{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:700; }
.fs-notice__in time{ font-size:13.5px; opacity:.7; }
.fs-notice__all{ display:inline-flex; align-items:center; gap:4px; font-size:13.5px; font-weight:800; }

/* 섹션 공통 */
.fs-sec{ padding:110px 0; }
.fs-sec--dark{ background:var(--fs-dark); color:#fff; }
.fs-sec--gray{ background:var(--fs-bg); }
.fs-sec--turf{ background:repeating-linear-gradient(90deg, #eef6f0 0 80px, #e6f1ea 80px 160px); }
.fs-head{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:0 24px; align-items:start; margin-bottom:44px; }
.fs-head__no{ font-family:var(--fs-en); font-size:88px; line-height:.8; color:transparent; -webkit-text-stroke:2px var(--fs-turf); }
.fs-sec--dark .fs-head__no{ -webkit-text-stroke-color:var(--fs-lime); }
.fs-head__en{ font-family:var(--fs-en); font-size:20px; letter-spacing:.14em; color:var(--fs-turf); }
.fs-sec--dark .fs-head__en{ color:var(--fs-lime); }
.fs-head h2{ font-size:clamp(28px,3.2vw,42px); font-weight:900; line-height:1.3; letter-spacing:-.03em; }
.fs-head > div > p:not(.fs-head__en){ margin-top:12px; max-width:720px; color:var(--fs-body); }
.fs-sec--dark .fs-head > div > p:not(.fs-head__en){ color:rgba(255,255,255,.72); }
.fs-head--row{ display:flex; justify-content:space-between; align-items:flex-end; gap:20px; }

/* 3. 클래스 */
.fs-stats{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:34px; }
.fs-stats > div{ padding:20px 22px; border-radius:var(--fs-r); background:var(--fs-bg); border-left:4px solid var(--fs-lime-d); }
.fs-stats dd{ font-size:16px; font-weight:800; color:var(--fs-turf); }
.fs-stats dd b{ margin-right:3px; font-family:var(--fs-en); font-size:52px; font-weight:400; line-height:1; color:var(--fs-ink); }
.fs-stats dt{ font-size:14.5px; color:var(--fs-body); }
.fs-tracks__tabs{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-bottom:26px; }
.fs-tracks__tabs button{ display:flex; flex-direction:column; align-items:flex-start; padding:16px 20px; border:1px solid var(--fs-line); border-bottom:4px solid var(--fs-line); border-radius:12px; background:#fff; text-align:left; transition:.15s; }
.fs-tracks__tabs em{ font-family:var(--fs-en); font-style:normal; font-size:18px; letter-spacing:.1em; color:var(--fs-mut); }
.fs-tracks__tabs b{ font-size:19px; font-weight:900; }
.fs-tracks__tabs button:hover{ border-color:var(--fs-turf); }
.fs-tracks__tabs button[aria-selected="true"]{ background:var(--fs-ink); border-color:var(--fs-ink); color:#fff; }
.fs-tracks__tabs button[aria-selected="true"] em{ color:var(--fs-lime); }
.fs-tab--kids[aria-selected="true"]{ border-bottom-color:var(--fs-kids) !important; }
.fs-tab--men[aria-selected="true"]{ border-bottom-color:var(--fs-men) !important; }
.fs-tab--women[aria-selected="true"]{ border-bottom-color:var(--fs-women) !important; }
.fs-tab--social[aria-selected="true"]{ border-bottom-color:var(--fs-social) !important; }
.fs-tracks__intro{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:36px; align-items:center; margin-bottom:24px; }
.fs-tracks__pic{ position:relative; aspect-ratio:16/10; border-radius:18px; overflow:hidden; background:var(--fs-bg); }
.fs-tracks__pic img{ width:100%; height:100%; object-fit:cover; }
.fs-tracks__pic span{ position:absolute; left:18px; bottom:6px; font-family:var(--fs-en); font-size:72px; line-height:1; color:#fff; text-shadow:0 4px 20px rgba(0,0,0,.35); }
.fs-tracks__intro h3{ font-size:30px; font-weight:900; letter-spacing:-.02em; }
.fs-tracks__intro > div > p{ margin-top:10px; color:var(--fs-body); }
.fs-tracks__intro ul{ display:grid; gap:8px; margin:18px 0 22px; }
.fs-tracks__intro li{ display:flex; align-items:center; gap:8px; font-weight:700; }
.fs-tracks__intro li .fs-ico{ color:var(--fs-turf); }
.fs-classes{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.fs-class{ display:flex; flex-direction:column; padding:18px 20px; border-radius:14px; background:#fff; border:1px solid var(--fs-line); border-top:4px solid var(--fs-mut); color:var(--fs-ink); }
.fs-class--kids{ border-top-color:var(--fs-kids); } .fs-class--men{ border-top-color:var(--fs-men); } .fs-class--women{ border-top-color:var(--fs-women); } .fs-class--social{ border-top-color:var(--fs-social); }
.fs-class__top{ display:flex; justify-content:space-between; gap:6px; flex-wrap:wrap; }
.fs-class h4{ margin-top:10px; font-size:19px; font-weight:900; }
.fs-class dl{ display:grid; gap:4px; margin:10px 0 14px; font-size:14px; }
.fs-class dl > div{ display:flex; gap:10px; }
.fs-class dt{ flex:none; width:32px; color:var(--fs-mut); }
.fs-class dd{ color:var(--fs-body); }
.fs-class__fee{ margin-top:auto; padding-top:12px; border-top:1px dashed var(--fs-line); font-size:14px; color:var(--fs-body); }
.fs-class__fee b{ font-family:var(--fs-en); font-size:30px; font-weight:400; color:var(--fs-ink); letter-spacing:.02em; }

/* 4. 반 찾기 · 수강료 */
.fs-finder{ padding:28px; border-radius:20px; background:#10261c; border:1px solid rgba(212,255,58,.2); }
.fs-finder h3{ display:flex; align-items:center; gap:8px; font-size:21px; font-weight:900; }
.fs-finder h3 .fs-ico{ color:var(--fs-lime); }
.fs-finder__f{ display:grid; grid-template-columns:auto auto minmax(0,1fr); gap:18px 28px; align-items:end; margin-top:18px; }
.fs-finder__lb{ display:block; margin-bottom:8px; font-size:14px; font-weight:700; color:rgba(255,255,255,.72); }
.fs-finder select{ height:42px; min-width:120px; padding:0 12px; border:1px solid rgba(255,255,255,.2); border-radius:10px; background:#0b1d15; color:#fff; font:inherit; font-size:15px; }
.fs-finder .fs-chips--radio span{ background:transparent; border-color:rgba(255,255,255,.2); color:rgba(255,255,255,.85); }
.fs-finder .fs-chips--radio input:checked + span{ background:var(--fs-lime); border-color:var(--fs-lime); color:var(--fs-ink); }
.fs-finder__msg{ margin:22px 0 14px; font-size:16px; font-weight:800; color:var(--fs-lime); }
.fs-finder__cta{ margin-top:20px; }
.fs-feeall{ margin-top:22px; border-radius:16px; background:#10261c; }
.fs-feeall > summary{ display:flex; justify-content:space-between; align-items:center; padding:18px 24px; cursor:pointer; list-style:none; font-weight:800; }
.fs-feeall > summary::-webkit-details-marker{ display:none; }
.fs-feeall[open] > summary .fs-ico{ transform:rotate(180deg); }
.fs-feeall .fs-fee{ padding:0 24px 24px; }
.fs-fee{ display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:20px; align-items:start; }
.fs-fee__side{ padding:22px; border-radius:14px; background:#fff; color:var(--fs-ink); }
.fs-fee__extra li{ display:flex; justify-content:space-between; gap:10px; padding:10px 2px; border-bottom:1px solid var(--fs-line); font-size:14.5px; }
.fs-fee__extra b{ text-align:right; }
.fs-fee__note{ display:grid; gap:6px; margin-top:14px; }
.fs-fee__note li{ position:relative; padding-left:12px; font-size:13px; color:var(--fs-mut); line-height:1.6; }
.fs-fee__note li::before{ content:""; position:absolute; left:0; top:.7em; width:4px; height:4px; border-radius:50%; background:var(--fs-turf); }

/* 5. 주간 시간표 */
.fs-week .fs-chips{ margin-bottom:18px; }
.fs-week__grid{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; }
.fs-day{ display:flex; flex-direction:column; border-radius:14px; background:var(--fs-bg); overflow:hidden; border:2px solid transparent; }
.fs-day__head{ display:flex; justify-content:space-between; align-items:center; padding:10px 12px; background:var(--fs-pitch); color:#fff; }
.fs-day--outdoor .fs-day__head{ background:var(--fs-turf); }
.fs-day__head b{ font-size:17px; font-weight:900; }
.fs-day__head b i{ margin-left:4px; padding:1px 6px; border-radius:5px; background:var(--fs-lime); color:var(--fs-ink); font-style:normal; font-size:11px; vertical-align:2px; }
.fs-day__head span{ display:inline-flex; align-items:center; gap:3px; font-size:12px; font-weight:700; opacity:.85; }
.fs-day ul{ display:grid; gap:6px; padding:8px; }
.fs-slot{ display:flex; flex-direction:column; padding:9px 10px; border-radius:9px; background:#fff; border-left:4px solid var(--fs-mut); font-size:13px; line-height:1.4; transition:opacity .2s; }
.fs-slot span{ font-weight:800; color:var(--fs-body); }
.fs-slot b{ margin-top:2px; font-size:14px; font-weight:800; }
.fs-slot small{ color:var(--fs-mut); }
.fs-slot--kids{ border-left-color:var(--fs-kids); } .fs-slot--men{ border-left-color:var(--fs-men); } .fs-slot--women{ border-left-color:var(--fs-women); } .fs-slot--social{ border-left-color:var(--fs-social); }
.fs-slot--none{ border-left-color:transparent; color:var(--fs-mut); text-align:center; }
.fs-slot.is-dim{ opacity:.22; }
.fs-day.is-today{ border-color:var(--fs-lime-d); box-shadow:0 10px 30px rgba(31,138,85,.18); }

/* 6. 구장 비교 */
.fs-vs{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.fs-vcard{ display:flex; flex-direction:column; border-radius:20px; overflow:hidden; background:#fff; box-shadow:0 14px 40px rgba(11,26,20,.08); }
.fs-vcard__pic{ position:relative; aspect-ratio:16/9; background:var(--fs-bg); }
.fs-vcard__pic img{ width:100%; height:100%; object-fit:cover; }
.fs-vcard__pic span{ position:absolute; left:16px; top:16px; display:inline-flex; align-items:center; gap:6px; padding:6px 14px; border-radius:8px; font-size:14px; font-weight:900; }
.fs-vcard--indoor .fs-vcard__pic span{ background:var(--fs-pitch); color:#fff; }
.fs-vcard--outdoor .fs-vcard__pic span{ background:var(--fs-lime); color:var(--fs-ink); }
.fs-vcard__body{ display:flex; flex-direction:column; flex:1; padding:24px 26px 26px; }
.fs-vcard h3{ font-size:24px; font-weight:900; }
.fs-vcard__addr{ display:flex; gap:6px; margin-top:6px; font-size:14.5px; color:var(--fs-body); }
.fs-vcard__addr .fs-ico{ margin-top:.25em; color:var(--fs-turf); }
.fs-vcard dl{ display:grid; margin:16px 0; border-top:2px solid var(--fs-ink); }
.fs-vcard dl > div{ display:flex; gap:14px; padding:10px 2px; border-bottom:1px solid var(--fs-line); font-size:14.5px; }
.fs-vcard dt{ flex:none; width:44px; font-weight:800; }
.fs-vcard dd{ color:var(--fs-body); }
.fs-vcard__note{ margin-bottom:16px; padding:12px 14px; border-radius:10px; background:var(--fs-bg); font-size:14px; font-weight:600; }
.fs-vcard--outdoor .fs-vcard__note{ background:#fff7e0; color:#7a5200; }
.fs-vcard .fs-more{ margin-top:auto; }
.fs-rain{ margin-top:20px; padding:26px; border-radius:20px; background:var(--fs-ink); color:#fff; }
.fs-rain h3{ display:flex; align-items:center; gap:8px; font-size:20px; font-weight:900; }
.fs-rain h3 .fs-ico{ color:var(--fs-lime); }
.fs-rain ol{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:16px; counter-reset:rn; }
.fs-rain li{ padding:16px; border-radius:12px; background:rgba(255,255,255,.06); counter-increment:rn; }
.fs-rain li::before{ content:counter(rn); display:inline-flex; width:26px; height:26px; align-items:center; justify-content:center; margin-bottom:8px; border-radius:50%; background:var(--fs-lime); color:var(--fs-ink); font-weight:900; font-size:13px; }
.fs-rain li b{ display:block; font-size:15px; }
.fs-rain li p{ margin-top:4px; font-size:13.5px; color:rgba(255,255,255,.72); }
.fs-map{ display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:30px; align-items:center; margin-top:20px; padding:20px; border-radius:20px; background:#fff; }
.fs-map img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:14px; }
.fs-map h3{ margin-bottom:12px; font-size:22px; font-weight:900; }
.fs-map p{ display:flex; gap:8px; margin-bottom:8px; font-size:15px; color:var(--fs-body); }
.fs-map p b{ display:inline-flex; align-items:center; gap:4px; flex:none; color:var(--fs-ink); }

/* 7. 코치진 */
.fs-coaches{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.fs-coaches > li{ display:flex; flex-direction:column; gap:14px; padding:24px 22px; border-radius:18px; background:var(--fs-bg); }
.fs-coach__ini{ display:inline-flex; width:64px; height:64px; align-items:center; justify-content:center; border-radius:50%; background:var(--fs-pitch); color:var(--fs-lime); font-family:var(--fs-en); font-size:30px; }
.fs-coaches p em{ font-style:normal; font-size:13px; font-weight:800; color:var(--fs-turf); }
.fs-coaches h3{ font-size:20px; font-weight:900; }
.fs-coaches h3 small{ font-size:14px; font-weight:600; color:var(--fs-mut); }
.fs-coaches li ul{ display:grid; gap:4px; margin-top:8px; }
.fs-coaches li li{ position:relative; padding-left:12px; font-size:13.5px; color:var(--fs-body); }
.fs-coaches li li::before{ content:""; position:absolute; left:0; top:.65em; width:5px; height:5px; border-radius:50%; background:var(--fs-lime-d); }

/* 8. 대회 · 이벤트 */
.fs-event__list{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.fs-event__list a{ display:block; border-radius:var(--fs-r); overflow:hidden; background:#fff; transition:box-shadow .25s; }
.fs-event__list a:hover{ box-shadow:0 18px 40px rgba(11,26,20,.12); }
.fs-event__pic{ position:relative; display:block; aspect-ratio:3/2; background:var(--fs-bg); overflow:hidden; }
.fs-event__pic img{ width:100%; height:100%; object-fit:cover; transition:transform .8s; }
.fs-event__list a:hover img{ transform:scale(1.05); }
.fs-event__pic em{ position:absolute; left:14px; top:14px; padding:3px 11px; border-radius:6px; background:var(--fs-lime); color:var(--fs-ink); font-style:normal; font-size:13px; font-weight:900; }
.fs-event__body{ display:block; padding:18px 20px 22px; }
.fs-event__body small{ display:block; font-size:13.5px; font-weight:800; color:var(--fs-turf); font-variant-numeric:tabular-nums; }
.fs-event__body strong{ display:block; margin-top:4px; font-size:18px; font-weight:900; line-height:1.45; }

/* 9. 갤러리 */
.fs-gal{ padding-top:90px; }
.fs-gal__list{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.fs-gal__list a{ position:relative; display:block; aspect-ratio:4/3; border-radius:14px; overflow:hidden; background:var(--fs-bg); }
.fs-gal__list img{ width:100%; height:100%; object-fit:cover; transition:transform .8s; }
.fs-gal__list a:hover img{ transform:scale(1.06); }
.fs-gal__list span{ position:absolute; left:0; right:0; bottom:0; padding:36px 16px 14px; background:linear-gradient(transparent, rgba(7,20,15,.85)); color:#fff; font-size:14.5px; font-weight:800; }
.fs-gal__list em{ display:block; font-style:normal; font-size:12px; color:var(--fs-lime); }

/* 10. FAQ + 체험 신청 */
.fs-trial{ background:var(--fs-bg); }
.fs-trial__in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:48px; align-items:start; }
.fs-faq details{ border-bottom:1px solid var(--fs-line); }
.fs-faq summary{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:18px 0; cursor:pointer; list-style:none; }
.fs-faq summary::-webkit-details-marker{ display:none; }
.fs-faq summary h3{ font-size:16.5px; font-weight:800; }
.fs-faq summary .fs-ico{ color:var(--fs-turf); transition:transform .2s; }
.fs-faq details[open] summary .fs-ico{ transform:rotate(180deg); }
.fs-faq details p{ padding:0 0 18px; font-size:15px; color:var(--fs-body); }
.fs-faq .fs-more{ margin-top:20px; }
.fs-form{ display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:32px; border-radius:20px; background:#fff; box-shadow:0 20px 50px rgba(11,26,20,.08); border-top:6px solid var(--fs-lime); }
.fs-form .is-wide{ grid-column:1 / -1; }
.fs-form__row > label, .fs-form__lb{ display:block; margin-bottom:6px; font-size:14px; font-weight:800; color:var(--fs-body); }
.fs-form__row b, .fs-form__lb b{ color:var(--fs-coral); }
.fs-form input[type=text], .fs-form input[type=tel], .fs-form select, .fs-form textarea{ width:100%; height:50px; padding:0 14px; border:1px solid var(--fs-line); border-radius:10px; background:#fff; font:inherit; font-size:15.5px; color:var(--fs-ink); }
.fs-form textarea{ height:auto; padding:12px 14px; resize:vertical; }
.fs-form input:focus, .fs-form select:focus, .fs-form textarea:focus{ outline:none; border-color:var(--fs-turf); box-shadow:0 0 0 3px rgba(31,138,85,.15); }
.fs-form__captcha #captcha{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.fs-form__captcha #captcha input{ width:140px !important; height:44px !important; border:1px solid var(--fs-line) !important; border-radius:10px; }
.fs-form__agree{ display:flex; justify-content:space-between; gap:10px; font-size:14.5px; color:var(--fs-body); }
.fs-form__agree input{ width:17px; height:17px; vertical-align:-3px; accent-color:var(--fs-turf); }
.fs-form__agree a{ color:var(--fs-turf); font-weight:800; }
.fs-form__err{ padding:12px 14px; border-radius:10px; background:#ffe9e4; color:#c23a22; font-size:14.5px; font-weight:700; }
.fs-form__done{ grid-column:1 / -1; display:flex; align-items:center; gap:8px; padding:14px 16px; border-radius:10px; background:var(--fs-turf-l); color:var(--fs-turf); font-weight:800; }
.fs-form__submit{ width:100%; height:58px; font-size:17px; background:var(--fs-ink); color:var(--fs-lime); }
.fs-form__submit:hover{ background:var(--fs-pitch); }
.fs-form__submit:disabled{ opacity:.6; cursor:wait; }

/* 푸터 */
.fs-footer{ position:relative; padding:80px 0 40px; background:var(--fs-dark); color:#8fa399; font-size:14px; overflow:hidden; }
.fs-footer__big{ position:absolute; right:-20px; top:-30px; font-family:var(--fs-en); font-size:clamp(120px,18vw,280px); line-height:1; color:transparent; -webkit-text-stroke:1px rgba(212,255,58,.1); pointer-events:none; }
.fs-footer__top{ position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr); gap:40px; padding-bottom:30px; border-bottom:1px solid rgba(255,255,255,.1); }
.fs-footer .fs-logo__txt strong{ color:#fff; }
.fs-footer__brand > p{ margin:14px 0 18px; }
.fs-footer__venues{ display:grid; gap:14px; }
.fs-footer__venues li{ display:flex; flex-direction:column; }
.fs-footer__venues em{ font-style:normal; font-size:12.5px; font-weight:800; color:var(--fs-lime); }
.fs-footer__venues b{ color:#e0e8e3; }
.fs-footer__call p{ font-weight:800; color:#e0e8e3; }
.fs-footer__call a{ display:block; margin:4px 0 8px; font-family:var(--fs-en); font-size:40px; line-height:1.05; color:#fff; letter-spacing:.02em; }
.fs-footer__call small{ display:block; font-size:13px; }
.fs-footer__menu{ display:flex; flex-wrap:wrap; gap:8px 24px; padding:22px 0; border-bottom:1px solid rgba(255,255,255,.1); }
.fs-footer__menu a{ color:#e0e8e3; font-weight:700; }
.fs-footer__menu a:hover{ color:var(--fs-lime); }
.fs-footer__co{ padding:20px 0 14px; line-height:1.8; }
.fs-footer__co p{ margin:0; }
.fs-footer__bottom{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; padding-top:16px; border-top:1px solid rgba(255,255,255,.1); font-size:12.5px; }
.fs-footer__bottom ul{ display:flex; gap:16px; }
.fs-footer__bottom b{ color:#fff; }

/* 빠른 메뉴 */
.fs-quick{ position:fixed; right:18px; bottom:24px; z-index:90; display:flex; flex-direction:column; gap:6px; transition:opacity .3s, transform .3s; }
.fs-quick.is-hide{ opacity:0; transform:translateY(16px); pointer-events:none; }
.fs-quick a{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; width:62px; height:62px; border-radius:14px; background:var(--fs-dark); color:#fff; font-size:11.5px; font-weight:700; box-shadow:0 10px 26px rgba(0,0,0,.25); }
.fs-quick .fs-ico{ width:21px; height:21px; color:var(--fs-lime); }
.fs-quick a.is-accent{ background:var(--fs-lime); color:var(--fs-ink); }
.fs-quick a.is-accent .fs-ico{ color:var(--fs-ink); }
.fs-quick a:first-child{ display:none; }

/* 서브 */
.fs-sbanner{ position:relative; padding:80px 0 70px; background:var(--fs-dark); color:#fff; overflow:hidden; }
.fs-sbanner__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.5; }
.fs-sbanner::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(7,20,15,.9), rgba(7,20,15,.2)); }
.fs-sbanner .fs-wrap{ position:relative; z-index:1; }
.fs-sbanner__en{ font-size:15px; font-weight:800; color:var(--fs-lime); }
.fs-sbanner h1{ margin-top:4px; font-size:clamp(30px,3.8vw,46px); font-weight:900; letter-spacing:-.03em; }
.fs-stabs{ position:sticky; top:var(--fs-fixedh); z-index:50; background:#fff; border-bottom:1px solid var(--fs-line); }
.fs-stabs ul{ display:flex; overflow-x:auto; scrollbar-width:none; }
.fs-stabs ul::-webkit-scrollbar{ display:none; }
.fs-stabs a{ display:block; padding:17px 20px; font-size:15.5px; font-weight:700; color:var(--fs-body); white-space:nowrap; border-bottom:3px solid transparent; }
.fs-stabs a.is-on{ color:var(--fs-ink); font-weight:900; border-bottom-color:var(--fs-lime-d); }
.fs-sub{ padding:64px 0 110px; min-height:50vh; }
#ctt > header{ display:none; }
#ctt_con{ font-size:16px; color:var(--fs-body); }
.fs-subpart{ margin-top:50px; }
.fs-subpart__t{ margin:40px 0 16px; font-size:24px; font-weight:900; color:var(--fs-ink); }
.fs-subpart .fs-finder{ color:#fff; }

/* 내용관리 본문 부품 (co_content 안에서 쓰는 클래스) */
.fsp h3{ margin:0 0 14px; font-size:clamp(24px,2.6vw,32px); font-weight:900; line-height:1.4; letter-spacing:-.02em; color:var(--fs-ink); }
.fsp h3 em{ font-style:normal; color:var(--fs-turf); }
.fsp h4{ margin:0 0 6px; font-size:18px; font-weight:800; color:var(--fs-ink); }
.fsp p{ margin:0 0 14px; line-height:1.85; }
.fsp-en{ display:block; margin-bottom:4px !important; font-family:var(--fs-en); font-size:20px; letter-spacing:.14em; color:var(--fs-turf); }
.fsp-sec{ margin-top:70px; }
.fsp-sec:first-child{ margin-top:0; }
.fsp-split{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:50px; align-items:center; }
.fsp-split.is-rev > :first-child{ order:2; }
.fsp-img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:18px; }
.fsp-gallery{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.fsp-gallery img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:12px; }
.fsp-spec{ width:100%; border-collapse:collapse; border-top:2px solid var(--fs-ink); font-size:15.5px; }
.fsp-spec th, .fsp-spec td{ padding:14px 16px; border-bottom:1px solid var(--fs-line); text-align:left; vertical-align:top; }
.fsp-spec th{ width:28%; background:var(--fs-bg); color:var(--fs-ink); font-weight:800; }
.fsp-cards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; }
.fsp-cards li{ padding:24px 22px; border-radius:16px; background:var(--fs-bg); border-top:4px solid var(--fs-lime-d); }
.fsp-cards li b{ display:block; margin-bottom:6px; font-family:var(--fs-en); font-size:34px; font-weight:400; line-height:1; color:var(--fs-turf); }
.fsp-cards li p{ margin:0; font-size:15px; }
.fsp-steps{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0; padding:0; list-style:none; }
.fsp-steps li{ padding:20px; border-radius:14px; border:1px solid var(--fs-line); background:#fff; }
.fsp-steps li b{ display:inline-block; margin-bottom:8px; padding:2px 10px; border-radius:6px; background:var(--fs-ink); color:var(--fs-lime); font-size:13px; }
.fsp-steps li p{ margin:0; font-size:14.5px; }
.fsp-note{ margin-top:20px; padding:16px 20px; border-radius:12px; background:var(--fs-bg); font-size:14.5px; color:var(--fs-ink); }
.fsp-cta{ display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.fsp-cta a{ display:inline-flex; align-items:center; height:52px; padding:0 26px; border-radius:10px; background:var(--fs-ink); color:var(--fs-lime) !important; font-weight:800; text-decoration:none !important; }
.fsp-cta a + a{ background:none; border:2px solid var(--fs-ink); color:var(--fs-ink) !important; }

/* 반응형 */
@media (max-width:1200px){
  .fs-gnb > ul > li > a{ padding:24px 12px; font-size:15px; }
  .fs-week__grid{ grid-template-columns:repeat(7,minmax(150px,1fr)); overflow-x:auto; padding-bottom:6px; }
  .fs-trial__in, .fs-fee{ grid-template-columns:minmax(0,1fr); }
  .fs-finder__f{ grid-template-columns:minmax(0,1fr); }
  .fs-rain ol, .fs-coaches{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:1024px){
  :root{ --fs-fixedh:64px; }
  .fs-gnb{ display:none; }
  .fs-header__in{ height:64px; justify-content:space-between; }
  .fs-burger{ display:block; }
  .fs-hero{ grid-template-columns:minmax(0,1fr); min-height:0; }
  .fs-hero__txt{ padding:54px 24px 60px; }
  .fs-hero__media{ min-height:0; display:flex; flex-direction:column; }
  .fs-hero__img{ position:relative; inset:auto; display:none; aspect-ratio:16/10; }
  .fs-hero__img.is-on{ display:block; }
  .fs-hero__media::after{ display:none; }
  .fs-today{ position:relative; left:auto; bottom:auto; width:auto; margin:-40px 16px 0; background:var(--fs-dark); }
  .fs-hero__media{ padding-bottom:24px; }
  .fs-classes{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fs-tracks__intro, .fs-vs, .fs-map, .fsp-split{ grid-template-columns:minmax(0,1fr); gap:24px; }
  .fsp-split.is-rev > :first-child{ order:0; }
  .fs-event__list{ grid-template-columns:minmax(0,1fr); }
  .fs-footer__top{ grid-template-columns:minmax(0,1fr); gap:26px; }
  .fs-quick{ left:0; right:0; bottom:0; flex-direction:row; gap:0; background:var(--fs-dark); padding-bottom:env(safe-area-inset-bottom); }
  .fs-quick a{ flex:1; width:auto; height:58px; border-radius:0; box-shadow:none; }
  .fs-quick a:first-child{ display:flex; }
  .fs-quick.is-hide{ opacity:1; transform:none; pointer-events:auto; }
  body{ padding-bottom:58px; }
}
@media (max-width:760px){
  .fs-head{ grid-template-columns:minmax(0,1fr); gap:6px; }
  .fs-head__no{ font-size:56px; }
  .fs-head--row{ flex-direction:column; align-items:flex-start; }
  .fs-stats{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fs-tracks__tabs{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fs-classes{ grid-template-columns:minmax(0,1fr); }
  .fs-gal__list{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fs-rain ol, .fs-coaches, .fsp-cards, .fsp-gallery{ grid-template-columns:minmax(0,1fr); }
  .fsp-steps{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px){
  body{ font-size:15px; }
  .fs-wrap{ padding:0 16px; }
  .fs-logo__mark{ width:34px; height:34px; }
  .fs-logo__txt strong{ font-size:26px; }
  .fs-demo span:nth-child(2){ display:none; }
  .fs-hero__txt{ padding:44px 16px 56px; }
  .fs-hero__btns .fs-btn{ height:50px; padding:0 20px; font-size:15px; }
  .fs-today{ margin:-36px 12px 0; padding:18px 16px 14px; }
  .fs-today h3{ font-size:19px; }
  .fs-tv{ padding:10px; gap:8px; }
  .fs-tv__ico{ width:30px; height:30px; }
  .fs-notice__in{ flex-wrap:wrap; gap:4px 10px; padding:12px 16px; }
  .fs-notice__in time, .fs-notice__all{ display:none; }
  .fs-sec{ padding:72px 0; }
  .fs-stats dd b{ font-size:42px; }
  .fs-tracks__tabs button{ padding:12px 14px; }
  .fs-tracks__intro h3{ font-size:24px; }
  .fs-tracks__pic span{ font-size:54px; }
  .fs-finder{ padding:20px 16px; }
  .fs-feeall > summary{ padding:16px; }
  .fs-feeall .fs-fee{ padding:0 12px 12px; }
  .fs-vcard__body{ padding:20px 18px; }
  .fs-rain{ padding:20px 16px; }
  .fs-map{ padding:14px; }
  .fs-form{ grid-template-columns:minmax(0,1fr); padding:24px 18px; }
  .fs-form__agree{ flex-wrap:wrap; }
  .fs-sbanner{ padding:54px 0 46px; }
  .fs-stabs a{ padding:14px 15px; font-size:14.5px; }
  .fs-sub{ padding:40px 0 80px; }
  .fsp-spec th{ width:34%; }
  .fsp-steps{ grid-template-columns:minmax(0,1fr); }
}
