/* 자동 생성 — wp_theme.py 가 만듭니다. 여기를 고치지 말고 원본(shell/ · src/)을 고친 뒤 다시 돌리세요. */

  .loc{padding:min(2.6vh,34px) 0 clamp(36px,4vw,72px)}
  .loc>.wrap{width:100%}
  .loc .section-head{margin-bottom:min(1.7vh,20px)}
  .loc .section-head h2{margin-top:min(1.2vh,14px);font-size:min(var(--fs-h2),5vh)}
  .loc .section-head p{margin-top:min(1.2vh,14px);
    font-size:min(var(--fs-body),2.05vh);line-height:1.8}
  .loc .eyebrow{font-size:min(var(--fs-eyebrow),1.7vh)}

  /* 지도(왼쪽) + 안내(오른쪽) 2단. 안내는 위에서 아래로 흐른다 */
  .loc-main{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.82fr);
    gap:clamp(22px,2.6vw,58px);align-items:start}
  .loc-mapcol{min-width:0}

  .map-slot{aspect-ratio:3/2}
  .map-slot{position:relative;margin:0;border-radius:6px;overflow:hidden;
    border:1.5px dashed #C3CDC2;display:grid;place-items:center;
    background:
      repeating-linear-gradient(0deg,rgba(10,58,99,.055) 0 1px,transparent 1px 46px),
      repeating-linear-gradient(90deg,rgba(10,58,99,.055) 0 1px,transparent 1px 46px),
      linear-gradient(160deg,#EFF4F0,#E4EDE6)}
  .map-slot .slot-label{position:absolute;left:0;right:0;bottom:clamp(14px,1.6vw,26px)}
  .slot-label{font-size:var(--fs-small);line-height:1.8;text-align:center;color:#8C9A8E}
  .map-pin{position:absolute;left:50%;top:44%;width:clamp(30px,2.8vw,42px);height:auto;
    transform:translate(-50%,-100%);filter:drop-shadow(0 8px 14px rgba(10,58,99,.3))}
  .map-ring{position:absolute;left:50%;top:44%;width:clamp(56px,5.4vw,84px);aspect-ratio:1;
    transform:translate(-50%,-50%);border-radius:50%;
    border:1.5px solid rgba(46,139,58,.5);background:rgba(46,139,58,.08)}

  .loc-btns{margin-top:min(1.5vh,16px);display:flex;gap:9px;flex-wrap:wrap}
  .lbtn{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:3px;
    padding:.72em 1.4em;font-size:min(var(--fs-small),1.7vh);font-weight:700;color:var(--muted);
    transition:border-color .25s,color .25s,background-color .25s}
  .lbtn:hover{border-color:var(--brand);color:var(--brand)}
  .lbtn.primary{background:var(--cta);border-color:var(--cta);color:#fff}
  .lbtn.primary:hover{background:var(--cta-hover);border-color:var(--cta-hover);color:#fff}

  .loc-info{display:grid;gap:min(1.9vh,22px);align-content:start}
  .loc-item{border-top:2px solid var(--navy);padding-top:min(1.2vh,14px)}
  .loc-item b{display:block;font-size:min(var(--fs-small),1.6vh);font-weight:700;
    letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}
  .loc-item p{margin-top:min(.8vh,9px);font-size:min(var(--fs-h3),2.05vh);font-weight:700;
    letter-spacing:-.02em;color:var(--navy);line-height:1.45}
  .loc-item span{display:block;margin-top:min(.7vh,8px);font-size:min(var(--fs-small),1.6vh);
    line-height:1.72;color:var(--muted)}

  /* 창이 충분히 높을 때만 첫 화면에 딱 맞춘다 (낮은 창에서는 지도를 줄이지 않고 스크롤) */
  @media (min-height:840px) and (min-width:1101px){
    .loc{padding:min(2.4vh,30px) 0;height:calc(100svh - var(--hh) - var(--sbh));
      display:flex;align-items:center}
    .loc>.wrap{width:100%}
    .map-slot{aspect-ratio:auto;height:min(52vh,600px)}
  }
  /* 아주 넓은 모니터: 지도를 세로로도 더 키워 빈 여백을 줄인다 */
  @media (min-width:1700px){
    .loc-main{grid-template-columns:minmax(0,1.35fr) minmax(380px,.8fr)}
    .map-slot{aspect-ratio:3/2;height:auto;max-height:min(58vh,760px)}
  }
  @media (max-width:1100px){
    .loc-main{grid-template-columns:1fr;gap:clamp(20px,3vw,32px)}
    .map-slot{aspect-ratio:16/10}
    .loc-info{grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,28px)}
  }
  @media (max-width:900px){ .map-slot{aspect-ratio:3/2} }
  @media (max-width:560px){ .loc-info{grid-template-columns:1fr} .map-slot{aspect-ratio:4/3} }

  .map-slot.live{border:0;background:#EDF1EE}
  .map-slot.live .slot-label,
  .map-slot.live .map-pin,
  .map-slot.live .map-ring{display:none}
  .map-canvas{position:absolute;inset:0}
  .map-canvas img{max-width:none}
  .map-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .kakao-pin{position:relative;width:38px;height:50px;transform:translate(-50%,-100%);
    filter:drop-shadow(0 8px 14px rgba(10,58,99,.35));pointer-events:none}
  .kakao-label{position:absolute;left:50%;top:52px;transform:translateX(-50%);
    white-space:nowrap;background:#fff;color:var(--navy);border:1px solid var(--line);
    border-radius:99px;padding:.34em .9em;font-size:13px;font-weight:800;letter-spacing:-.02em;
    box-shadow:0 6px 18px -8px rgba(10,58,99,.4)}
  .map-zoom{position:absolute;right:12px;bottom:12px;z-index:4;display:flex;flex-direction:column;
    border-radius:6px;overflow:hidden;box-shadow:0 4px 14px -4px rgba(10,58,99,.35)}
  .map-zoom button{width:34px;height:34px;border:0;background:#fff;color:var(--navy);
    font-size:18px;font-weight:700;line-height:1;cursor:pointer}
  .map-zoom button+button{border-top:1px solid var(--line)}
  .map-zoom button:hover{background:var(--paper)}
  /* 로컬에서 확인할 때만 보이는 진단 줄 */
  .map-diag{position:absolute;left:0;right:0;top:0;z-index:5;background:#FFF3D6;color:#8A5A00;
    font-size:12px;line-height:1.6;padding:8px 12px;text-align:left;border-bottom:1px dashed #E0B053}
  .map-diag code{background:rgba(0,0,0,.06);padding:0 .3em;border-radius:3px}
