/* brand.smaxh.com/courts — 코트 탭. lessons.css(레슨 탭)를 그대로 쓰고, 코트에만 있는 것만 여기에:
   톤(코트 잔디 사진의 짙은 초록) · 지역 묶음 제목 · 시간대별 가격 줄 · 상세 하단 바 자리. 보라는 앱 버튼에만. */
.p-courts,.p-court{--clay:#1F5A3E;--clay-deep:#0E241A;--clay-tint:#EDF4F0}
/* 첫 화면: 레슨보다 낮게 — 첫 코트 카드 사진이 더 걸치게(검토 2026-11-08 '카드가 첫 화면에 76px만') */
.ct-hero{min-height:clamp(204px,52vw,360px)}
.ct-hero .ls-hero__in{padding-top:56px;padding-bottom:20px}
.p-courts .ls-list{padding-top:20px}
.p-courts .ls-list__hd{margin-bottom:10px}
/* 코트 사진은 항상 13:12(코트 반 면 — 앱 사진 에셋과 같은 비율, 대표 2026-11-08): 목록·전체·도시 카드, 근처 코트, 상세 사진.
   파일도 13:12로 자른다(photos/c<id>_<n>_c 600×554 · _d 783×723). 첫 화면 배경(KV)·링크 미리보기(OG)는 매체 규격 그대로 */
.p-courts .ls-card__ph,.p-court .ls-card__ph,.p-court .ls-gal img{aspect-ratio:13/12}
@media (min-width:960px){
  .p-court .ls-gal{grid-template-columns:calc(var(--gal-h) * 13 / 12) calc((var(--gal-h) - 8px) / 2 * 13 / 12);width:fit-content}
  .p-court .ls-gal--one{grid-template-columns:calc(var(--gal-h) * 13 / 12)}
  .p-court .ls-gal img{aspect-ratio:auto}
}
.ct-hero .ls-hero__kv img{object-position:50% 30%}
/* 웹: 첫 화면 사진 높이를 매치 · 레슨과 같게(대표 2026-11-10 '특히 코트는 높이가 너무 낮아' — 360px였음), 글은 세로 가운데 */
@media (min-width:960px){
  .ct-hero{min-height:clamp(440px,calc(100vh - 300px),560px);align-items:center}
  .ct-hero .ls-hero__in{padding-top:48px;padding-bottom:48px}
  .ct-hero .ls-hero__kv img{object-position:50% 40%}
}
/* 폰 첫 화면: 코트 전경이 보이게(대표 2026-11-08 '폰에서 hero 코트 전경이 너무 안 보여') — 더 높게, 사진은 하늘 대신 코트 쪽으로,
   어둡게 덮는 건 글자 뒤(아래 ⅓)만. 첫 카드 사진은 여전히 첫 화면 아래에 걸친다 */
@media (max-width:959px){
  .ct-hero{min-height:clamp(320px,88vw,420px)}
  .ct-hero .ls-hero__kv img{object-position:50% 74%}
  .ct-hero .ls-hero__kv::after{background:linear-gradient(180deg,rgba(8,24,16,.18) 0%,rgba(8,24,16,0) 22%,rgba(8,24,16,0) 50%,rgba(8,24,16,.5) 74%,rgba(8,24,16,.82) 100%)}
}
.ct-hero .ls-hero__kv::after{background:linear-gradient(180deg,rgba(8,24,16,0) 34%,rgba(8,24,16,.55) 62%,rgba(8,24,16,.86) 100%)}
.ct-hero .ls-hero__copy{text-shadow:0 1px 18px rgba(8,24,16,.45)}
.p-courts .ls-end::before{background:linear-gradient(180deg,rgba(8,24,16,.78) 0%,rgba(8,24,16,.62) 100%)}

/* 목록: 지역마다 제목 한 줄 + 카드 줄. 지역 사이는 여백으로 */
.ct-region+.ct-region{margin-top:36px}
.ct-region__t{display:flex;align-items:baseline;gap:8px;margin-bottom:10px;font-size:17px;line-height:24px;font-weight:700;letter-spacing:-.02em}
.ct-region__t span{font-size:14px;font-weight:500;color:var(--mute)}

/* 상세: 시간대별 가격 = 요일 · 시간 · 값(오른쪽, 진하게) */
.ct-prices b{min-width:44px}
.ct-prices em{color:var(--ink);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.ct-prices span{min-width:0}
.ct-kw{margin-top:4px}
.p-court .ft{padding-bottom:calc(32px + 76px + env(safe-area-inset-bottom))}
@media (min-width:960px){
  .p-court .ft{padding-bottom:32px}
  .ct-region+.ct-region{margin-top:48px}
  .ls-days--side.ct-prices em{font-size:15px}
}
/* 다른 언어: 요일·시간이 길면 줄을 바꾸되 값은 오른쪽 한 줄 */
html:not(:lang(ko)) .ct-prices li{flex-wrap:wrap;row-gap:0}
html:not(:lang(ko)) .ct-prices b{min-width:0}
/* 하단 바 가격은 한 줄(다른 언어 'от 25 000 ₩'가 세 줄로 접히지 않게), 버튼이 줄어든다 */
.p-court .ls-dock__price b{white-space:nowrap}
/* 지도 출처도 14px(목록·상세 글자 14px 이상) */
.p-court .ls-mapbox figcaption{font-size:14px;line-height:20px}
/* 길찾기 두 개(구글 · 네이버): 한 줄에 안 들어가면 아래로 */
.ct-maps{display:flex;flex-wrap:wrap;column-gap:24px}

/* 목록 → 전체 코트 버튼: 지역 묶음 아래 한 줄, 폰은 꽉 차게 (보라는 앱 버튼에만 → 검정 테두리) */
.ct-more{margin-top:32px}
.ct-more__btn{width:100%;min-height:52px}
@media (min-width:960px){.ct-more{margin-top:48px;text-align:center}.ct-more__btn{width:auto;min-width:320px}}

/* 코트 카드: 스매시 유저 선호 코트 알약(검정 월계수, styles.css '월계수 상')은 사진 왼쪽 위, 실내/야외 · 면 수 칩은 왼쪽 아래(대표 2026-11-09).
   폰 전체 · 도시 목록(작은 사진 128px)은 알약 대신 글 첫 줄(.ct-fav, 보통 굵기 — 매치 탭 근처 코트 카드의 윗줄 자리). */
.ct-ph .ls-badge{top:auto;bottom:12px}
.ct-ph .mc-pill{left:12px;top:12px;max-width:calc(100% - 24px);gap:3px;padding:5px 10px 5px 8px}
.ct-ph .mc-pill__t{min-width:0;text-wrap:balance} /* 좁은 카드에서 긴 언어는 두 줄(실내/야외 칩 .ls-badge와 같은 방식) — 상 이름을 자르지 않는다 */
html:not(:lang(ko)) .ct-ph .mc-pill{border-radius:14px}
.ct-fav{display:none;align-items:center;gap:3px;margin-bottom:2px;font-size:14px;line-height:20px;font-weight:500;color:var(--ink)}
.ct-fav .mc-laurel{width:11px;height:21px} /* 9px는 괄호처럼 보임(검토 4판) */
/* 전체 · 도시 페이지 (src/brand-courts-browse.njk) */
.ct-browse{padding:16px 0 64px}
.ct-browse__h1{margin-top:8px;font-size:26px;line-height:34px;font-weight:800;letter-spacing:-.03em}
.ct-browse__lead{margin-top:6px;font-size:15px;line-height:22px;color:var(--sub)}
.ct-chips ul{display:flex;gap:8px;list-style:none;margin:20px calc(-1 * var(--g)) 0;padding:0 var(--g);overflow-x:auto;scrollbar-width:none}
.ct-chips ul::-webkit-scrollbar{display:none}
.ct-chips a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:999px;font-size:15px;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}
.ct-chips a span{font-weight:500;color:var(--mute)}
.ct-city{margin-top:40px;scroll-margin-top:84px}
.ct-city__t{display:flex;align-items:baseline;gap:8px;margin-bottom:14px;font-size:20px;line-height:28px;font-weight:700;letter-spacing:-.02em}
.ct-city__t a{display:inline-flex;align-items:baseline;gap:8px;min-height:44px;color:inherit;text-decoration:none}
.ct-city__t span{font-size:15px;font-weight:500;color:var(--mute)}
.ct-city__t i{font-style:normal;font-size:16px;color:var(--mute)}
/* 카드 윗줄 = 동네 · ★ 별점 (리뷰 수). 한 줄에 다 안 들어가면(320–360 폭 전체 · 도시 목록의 좁은 글 칸 130px) 동네를 '…'로 자르지 않고
   별점을 다음 줄로(대표 2026-11-09 리뷰 수를 넣자 320 폭에서 동네 54/93곳이 잘림 → 0). 동네가 칸보다 길면 그때만 '…' */
.p-courts .ls-card__top,.p-court .ls-card__top{flex-wrap:wrap;row-gap:0}
.p-courts .ls-card__where,.p-court .ls-card__where{flex:1 0 auto;max-width:100%}
/* 폰: 사진 왼쪽 · 글 오른쪽(한 화면에 여러 곳), 넓으면 목록과 같은 카드 그리드 */
.ct-grid{display:grid;grid-template-columns:1fr;gap:16px;list-style:none;margin:0;padding:0}
.ct-grid--city{margin-top:24px}
@media (max-width:599px){
  .ct-grid .ls-card{display:grid;grid-template-columns:128px minmax(0,1fr);gap:14px;align-items:center}
  .ct-grid .ls-card__ph{border-radius:12px}
  .ct-grid .ls-card__ph img{border-radius:12px}
  .ct-grid .ls-badge{display:none}
  .ct-grid .ct-ph .mc-pill{display:none}
  .ct-grid .ct-fav{display:flex}
  .ct-grid .ls-card__body{padding-top:0}
  .ct-grid .ls-card__where{font-size:15px;line-height:22px}
  .ct-grid .ls-card__rate{font-size:14px;line-height:22px}
  .ct-grid .ls-card__t{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
}
@media (min-width:600px){.ct-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}}
@media (min-width:960px){
  .ct-browse{padding:24px 0 96px}
  .ct-browse__h1{font-size:34px;line-height:44px}
  .ct-chips ul{flex-wrap:wrap;margin:24px 0 0;padding:0;overflow:visible}
  .ct-city{margin-top:56px}
  .ct-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 20px}
  .ct-city__t a:hover{text-decoration:underline;text-underline-offset:4px}
}
@media (min-width:1200px){.ct-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.ct-chips--more{margin-top:48px}
.ct-chips--more ul{flex-wrap:wrap;margin:0;padding:0;overflow:visible}

/* 상세: 가격 기준일 한 줄 · 근처 다른 코트(카드 줄) */
.ct-asof{margin-top:10px;font-size:14px;line-height:20px;color:var(--mute)}
.ct-near .ls-link{margin-top:8px}
@media (min-width:960px){.ct-near__list{--n:4}.ct-near .ls-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- 한국어 밖 = 구글 광고 착지(대표 2026-11-10 '메인 코트도 90점까지 올려줘', 검토 1판 여섯 명 평균 82.0) */
/* 폰: 광고로 온 첫 화면에 회사 탭 줄을 두지 않는다 — 매치 목록과 같은 규칙('Story · History가 출구', 'Seoul 탭이 서울 코트로 읽힘') */
@media (max-width:959px){
  html:not(:lang(ko)) body.p-courts{--hd2:0px}
  html:not(:lang(ko)) body.p-courts .hd__nav{display:none}
}
/* 사진 위 큰 제목은 600(landing §5 · 800은 핵심 숫자 하나) */
html:not(:lang(ko)) .ct-hero .ls-hero__h1{font-weight:600}
/* 목록 바로 아래 앱 버튼 + 안심 한 줄 */
.ct-cta{display:flex;flex-direction:column;align-items:stretch;margin-top:16px}
.ct-cta .btn{width:100%}
.ct-trust{margin-top:12px;font-size:14px;line-height:20px;color:var(--sub);text-align:center}
@media (min-width:960px){.ct-cta{align-items:center}.ct-cta .btn{width:auto;min-width:280px}}
/* 섹션 제목 글꼴 하나로(리뷰 · 앱 예약 띠도 목록 · FAQ 제목과 같은 본문 글꼴) */
html:not(:lang(ko)) .p-courts #rv-t,html:not(:lang(ko)) .p-courts #ls-end-t{font-family:var(--body);font-weight:800;letter-spacing:-.03em}
/* 리뷰 본문은 세 줄까지(폰 5–6줄 → 3줄) */
html:not(:lang(ko)) .p-courts .rv__text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
/* 데스크톱 넓은 폭: 코트 줄은 네 칸(다섯 칸이면 4 · 3 · 2장 줄 오른쪽이 비고 이름 · 별점이 꺾임) */
@media (min-width:1200px){html:not(:lang(ko)) .p-courts .ct-region .ls-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}}
/* 3판(검토 2판 반영): 서울 근처 한 줄 이름 첫 글자 대문자 · 전체 코트는 글 링크 · 리뷰 화면 덜 빽빽하게 · 끝 띠 사진 덜 어둡게 · 독일어 H1 줄바꿈 */
html:not(:lang(ko)) .ct-region__t--near::first-letter{text-transform:uppercase}
.ct-all{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:8px;font-size:15px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.ct-all::after{content:"\00a0\203A"}
.ct-cta .ct-all{align-self:center}
html:not(:lang(ko)) .p-courts #rv-t{font-weight:600}
@media (max-width:959px){html:not(:lang(ko)) .p-courts .rv__kt,html:not(:lang(ko)) .p-courts .rv__kw{display:none}}
html:not(:lang(ko)) .p-courts .ls-end::before{background:linear-gradient(180deg,rgba(8,24,16,.66) 0%,rgba(8,24,16,.42) 55%,rgba(8,24,16,.22) 100%)}
@media (min-width:960px){html:not(:lang(ko)) .p-courts .ls-end::before{background:linear-gradient(90deg,rgba(8,24,16,.7) 0%,rgba(8,24,16,.4) 45%,rgba(8,24,16,.08) 100%)}}
html:lang(de) .ct-hero .ls-hero__h1 br{display:none}
html:lang(de) .ct-hero .ls-hero__h1{text-wrap:balance}
.ct-region__t--near{display:block}
