/* =========================================================
   FILMHANS 공통 다듬기 (톤앤매너 통일) — 2026-10-30 · P1
   지금 분위기(베이지 · 골드 · 마루부리)는 그대로. 페이지마다 조금씩 다르던 값을 한 벌로 맞추고,
   손에 닿는 반응(누름 · 포커스 · 열림)을 애플식으로 다듬음.
   각 페이지 위젯 코드는 건드리지 않고 이 파일이 위에 덮어씀 → 지우면 원래대로
   (위젯 스타일이 이 파일보다 뒤에 읽히므로 선택자 앞에 html body 를 붙여 우선순위를 올림)
========================================================= */

/* ---------- 1. 색 한 벌 ----------
   잉크 #141413 · 바탕 #F8F7F4 · 카드 #FCFBF8 · 본문 #4F4A43 · 보조 #6F6A63
   골드(글자) #866943 — 작은 글씨도 잘 읽히는 진한 골드로 통일 (예전 #9C8058은 대비가 약했음)
   골드(포인트 면·선) #B89B72 · 선 #DDD8CF · 진한 선 #D6CFC3 */

/* A 계열 (메인 · 문의 · 자료실 — 상품 페이지는 이미 같은 값이라 그대로. 메인과 상품이 같은 .fhp-root/#fhpRoot 를 써서 body[data-page] 로 구분): --gold 가 밝은 골드, --gold-d 가 글자 골드 */
html body[data-page="home"] .fhp-root,
html body :is(.fhv-root, .fhrv, .fhrv-sheet, .fhrv-toast, .fhrs, .fhrs-bottom, .fhrs-sheet, .fhrs-toast, .fhrs-bar){
  --ink:#141413; --off:#F8F7F4; --off2:#F2EFE9; --card:#FCFBF8;
  --gold:#B89B72; --gold-d:#866943;
  --grey:#6F6A63; --line:#DDD8CF; --line2:#D6CFC3;
}
/* B 계열 (포트폴리오 · 프리웨딩 · 제휴 · FAQ · 웨딩홀): --gold 가 글자 골드, --gold-l 이 밝은 골드 */
html body :is(.fhpfp-root, .fhpfm-root, .fhptp, .fhptm, .fhfaqpc-root, .fhfaq-root),
html body :is(#fhhlwpRoot, #fhhlwmRoot, #fhhlpRoot, #fhhlmRoot){
  --ink:#141413; --bg:#F8F7F4; --card:#FCFBF8;
  --gold:#866943; --gold-l:#B89B72;
  --body:#4F4A43; --muted:#6F6A63;
  --line:#DDD8CF; --line2:#D6CFC3;
}
html body .fhft{ --ink:#141413; --gold:#866943; --line:#DDD8CF; }

/* ---------- 2. 글자 다듬기 ---------- */
#fhMain{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; font-kerning:normal }
#fhMain :is(h1,h2){ text-wrap:balance }
#fhMain p{ text-wrap:pretty }
::selection{ background:rgba(184,155,114,.28); color:#141413 }

/* ---------- 3. 누르는 순간 반응 (scale 속성이라 기존 transform 위치와 안 부딪힘) ---------- */
#fhMain :is(button, [role="button"], a[class*="btn"], a[class*="cta"], a[class*="-go"], a[class*="kakao"], a[class*="chip"], [class*="-tab"]):not([disabled]){
  transition-property:scale, color, background-color, border-color, box-shadow, opacity, gap;
  transition-duration:.12s, .2s, .2s, .2s, .2s, .2s, .25s;
  transition-timing-function:ease-out;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
#fhMain :is(button, [role="button"], a[class*="btn"], a[class*="cta"], a[class*="-go"], a[class*="kakao"], a[class*="chip"], [class*="-tab"]):not([disabled]):active{ scale:.97 }

/* 키보드로 다닐 때 어디 있는지 보이게 */
#fhMain :focus-visible, .fhhd :focus-visible, .fhft :focus-visible{
  outline:2px solid #B89B72; outline-offset:3px; border-radius:4px;
}

/* ---------- 4. 열고 닫는 것은 부드럽게 ---------- */
#fhMain details{ interpolate-size:allow-keywords }
#fhMain details::details-content{ transition:height .4s cubic-bezier(.22,1,.36,1), content-visibility .4s allow-discrete; height:0; overflow:clip }
#fhMain details[open]::details-content{ height:auto }
html{ scroll-behavior:smooth }

/* ---------- 5. 상단 헤더: 유리 재질 · 선 대신 은은한 그림자 ---------- */
.fhhd{ background:rgba(248,247,244,.88); -webkit-backdrop-filter:saturate(1.8) blur(20px); backdrop-filter:saturate(1.8) blur(20px) }
html.fh-scrolled .fhhd{ border-bottom-color:transparent; box-shadow:0 1px 0 rgba(20,20,19,.05), 0 10px 24px -20px rgba(20,20,19,.35) }
.fhhd-logo{ transition:opacity .2s }
.fhhd-logo:active{ opacity:.6 }
.fhhd-sub{ border-radius:10px; overflow:hidden; background:rgba(252,251,248,.92); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px) }
.fhhd-dd:hover .fhhd-sub, .fhhd-dd:focus-within .fhhd-sub{ transition-timing-function:cubic-bezier(.22,1,.36,1) }

/* ---------- 6. 설정 존중 ---------- */
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto }
  #fhMain *, #fhMain *::before, #fhMain *::after{ transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important }
}
@media (prefers-reduced-transparency:reduce){
  .fhhd, .fhhd-sub{ background:#F8F7F4; -webkit-backdrop-filter:none; backdrop-filter:none }
}

/* =========================================================
   P2 — 눈에 보이는 통일: 제목 크기 · 버튼 · 모서리
   (메인 첫 화면 대표 문구는 브랜드 얼굴이라 그대로 둠)
========================================================= */
html body{
  --fh-h1:48px; --fh-h1-lh:1.32;   /* 페이지 제목 */
  --fh-h2:38px; --fh-h2-lh:1.4;    /* 구역 제목 */
  --fh-h3:28px; --fh-h3-lh:1.4;    /* 카드 제목 */
  --fh-btn-h:56px; --fh-r-btn:4px; --fh-r-card:8px; --fh-r-media:6px;
}
@media (max-width:767px){
  html body{ --fh-h1:30px; --fh-h1-lh:1.36; --fh-h2:25px; --fh-h2-lh:1.42; --fh-h3:22px; --fh-btn-h:52px }
}

/* 페이지 제목 */
html body #fhMain :is(.fhpfp-h1, .fhpfm-h1, [data-page="wedding"] #fhpRoot h1, #fhm4Root h1, .fhhlwp-h1, .fhhlwm-h1, .fhptp-h1, .fhptm-h1,
  .fhfaqpc-title, .fhfaq-title, .fhhlp-h1, .fhhlm-h1, .fhrv .fhrv-side h1, .fhrs h1){
  font-size:var(--fh-h1) !important; line-height:var(--fh-h1-lh) !important; letter-spacing:-.03em !important; font-weight:300 !important;
}
/* 구역 제목 */
html body #fhMain :is([data-page="home"] .fhp-root h2, .fhv-root h2, [data-page="wedding"] #fhpRoot h2, #fhm4Root h2, .fhhlwp-h2, .fhhlwm-h2, .fhhlwp-cta-title, .fhhlwm-cta-title,
  .fhptp-cta-title, .fhptm-cta-title, .fhfaqpc-cta-title, .fhfaq-cta-title, .fhhlp-h2, .fhhlm-h2, .fhhlp-cta-title, .fhhlm-cta-title){
  font-size:var(--fh-h2) !important; line-height:var(--fh-h2-lh) !important; letter-spacing:-.025em !important; font-weight:300 !important;
}
/* 카드 제목 */
html body #fhMain :is(.fhp-priv-title, .fhv-priv-title, .fhm-name, .fhptp-card-name, .fhptm-card-name, .fhpfp-more-title){
  font-size:var(--fh-h3) !important; line-height:var(--fh-h3-lh) !important; letter-spacing:-.02em !important;
}

/* 버튼: 높이 · 모서리 한 벌 (작은 칩은 둥근 알약 모양 그대로) */
html body #fhMain :is(.fhp-btn, .fhv-btn, .fhpfp-kakao, .fhpfm-kakao, .fhpfp-load-more-btn, .fhm-cta, .fhhlwp-ghost, .fhhlwm-ghost, .fhhlwp-kakao, .fhhlwm-kakao,
  .fhptp-btn, .fhptm-btn, .fhptp-cta-btn, .fhptm-cta-btn, #fhfaqpcKakao, #fhfaqKakao, .fhhlp-kakao, .fhhlm-kakao, .fhrv-go, .fhrv-kbtn, .fhrs-btn){
  height:var(--fh-btn-h) !important; min-height:0 !important; border-radius:var(--fh-r-btn) !important; font-size:15px !important; letter-spacing:-.01em !important;
}

/* 카드 · 상자 */
html body #fhMain :is(.fhhlwp-pkg, .fhhlwm-pkg, .fhhlp-pkg, .fhhlm-pkg, .fhhlwp-promo, .fhhlwm-promo, .fhptp-how, .fhptm-how, .fhrv-sec, .fhrv-pc){
  border-radius:var(--fh-r-card) !important;
}
/* 영상 · 사진 */
html body #fhMain :is(.fhpfp-featured-video, .fhpfm-featured-video, .fhpfp-card-video, .fhpfm-card-video, .fhhlwp-hero-video, .fhhlwm-hero-video,
  .fhhlp-hero-video, .fhhlm-hero-video, .fhptp-card-img, .fhptm-card-img, .fhrs-video){
  border-radius:var(--fh-r-media) !important; overflow:hidden;
}

/* =========================================================
   P3 — 페이지 첫 화면 · 카카오 버튼
========================================================= */
/* 첫 화면 소제목: 모든 페이지 같은 모양 (짧은 금선 + 작은 영문) */
html body #fhMain :is(.fhpfp-kick, .fhpfm-kick, .fhm-intro .fhm-kick, .fhfaqpc-kicker, .fhrv-kicker, .fhrs-kicker, .fhp-kicker, .fhv-kicker){
  display:inline-flex !important; align-items:center; font-size:11px !important; font-weight:500 !important; letter-spacing:.24em !important; line-height:1 !important; color:#866943 !important;
}
html body #fhMain :is(.fhpfp-kick, .fhpfm-kick, .fhm-intro .fhm-kick, .fhfaqpc-kicker, .fhrv-kicker, .fhrs-kicker, .fhp-kicker, .fhv-kicker)::before{
  content:""; flex:none; width:26px; height:1px; margin-right:14px; background:currentColor;
}
html body #fhMain :is(.fhptp-kline, .fhptm-kline, .fhhlwp-kline, .fhhlwm-kline, .fhhlp-kline, .fhhlm-kline){ width:26px !important; margin-right:14px !important }
/* 어두운 구역 위 메인 소제목은 밝은 골드 */
html body #fhMain :is(.fhp-root, .fhv-root) [class*="dark"] :is(.fhp-kicker, .fhv-kicker){ color:#B89B72 !important }

/* 첫 화면 바탕: 소개 페이지는 모두 연한 베이지 띠 (프리웨딩 · 제휴 · 웨딩홀과 같은 색)
   FAQ · 문의는 왼쪽 안내 + 오른쪽 입력 구조라 띠 없이 그대로 */
html body #fhMain :is(.fhpfp-headrow, .fhpfm-head, .fhm-intro){
  background:#EFEAE2; box-shadow:0 0 0 100vmax #EFEAE2; clip-path:inset(0 -100vmax);
}
html body #fhMain .fhrs-hero-row{
  background:#EFEAE2; box-shadow:0 0 0 100vmax #EFEAE2; clip-path:inset(-88px -100vmax -48px);
}
@media (max-width:767px){ html body #fhMain .fhrs-hero-row{ clip-path:inset(-44px -100vmax -32px) } }

/* 카카오 버튼: 노란색 대신 브랜드 색 · 아이콘으로 카카오 표시
   어두운 구역 → 아이보리 버튼 / 밝은 구역 → 잉크 버튼 */
html body #fhMain :is(.fhpfp-kakao, .fhpfm-kakao, .fhhlwp-kakao, .fhhlwm-kakao, .fhptp-cta-btn, .fhptm-cta-btn, #fhfaqpcKakao, #fhfaqKakao, .fhhlp-kakao, .fhhlm-kakao){
  background:#F3EEE6 !important; color:#141413 !important; border-color:#F3EEE6 !important;
}
html body #fhMain :is(.fhpfp-kakao, .fhpfm-kakao, .fhhlwp-kakao, .fhhlwm-kakao, .fhptp-cta-btn, .fhptm-cta-btn, #fhfaqpcKakao, #fhfaqKakao, .fhhlp-kakao, .fhhlm-kakao):hover{ background:#FFFFFF !important }
html body #fhMain :is(.fhrv-kbtn, .fhrs-btn.is-kakao, .fhhlwm-bar-btn, .fhhlm-bar-btn){
  background:#141413 !important; color:#F8F7F4 !important; border-color:#141413 !important;
}
html body #fhMain :is(.fhrv-kbtn, .fhrs-btn.is-kakao, .fhhlwm-bar-btn, .fhhlm-bar-btn):hover{ background:#2A2926 !important }
html body #fhMain :is(.fhpfp-kakao, .fhpfm-kakao, .fhhlwp-kakao, .fhhlwm-kakao, .fhptp-cta-btn, .fhptm-cta-btn, #fhfaqpcKakao, #fhfaqKakao, .fhhlp-kakao, .fhhlm-kakao, .fhrv-kbtn, .fhrs-btn.is-kakao, .fhhlwm-bar-btn, .fhhlm-bar-btn) :not(svg):not(path){ color:inherit !important }
html body #fhMain :is(.fhpfp-kakao, .fhpfm-kakao, .fhhlwp-kakao, .fhhlwm-kakao, .fhptp-cta-btn, .fhptm-cta-btn, #fhfaqpcKakao, #fhfaqKakao, .fhhlp-kakao, .fhhlm-kakao) svg :is(path, circle, rect){ fill:#3C1E1E !important }
html body #fhMain :is(.fhrv-kbtn, .fhrs-btn.is-kakao, .fhhlwm-bar-btn, .fhhlm-bar-btn) svg :is(path, circle, rect){ fill:#FEE500 !important }
/* 마지막 예약 구역(어두운 바탕) 소제목도 같은 모양 · 밝은 골드 */
html body #fhMain :is(.fhhlp-kicker, .fhhlm-kicker, .fhhlwp-kicker, .fhhlwm-kicker, .fhfaqpc-cta-kicker, .fhfaq-cta-kicker){
  display:inline-flex !important; align-items:center; font-size:11px !important; letter-spacing:.24em !important; line-height:1 !important; color:#B89B72 !important;
}
html body #fhMain :is(.fhhlp-kicker, .fhhlm-kicker, .fhhlwp-kicker, .fhhlwm-kicker, .fhfaqpc-cta-kicker, .fhfaq-cta-kicker)::before{
  content:""; flex:none; width:26px; height:1px; margin-right:14px; background:currentColor;
}
/* 웨딩홀 촬영 노트 맨 위 소제목: 원본 코드의 짧은 줄(kline)과 위 ::before 줄이 겹쳐 두 줄로 보이던 것 → 원본 줄 숨김 (2026-11-12) */
html body #fhMain :is(.fhhlp-kline, .fhhlm-kline, .fhhlwp-kline, .fhhlwm-kline){ display:none !important }
/* 웨딩홀 · 프리웨딩 구역 소제목(label)도 같은 모양 */
html body #fhMain :is(.fhhlp-label, .fhhlm-label, .fhhlwp-label, .fhhlwm-label){
  display:inline-flex !important; align-items:center; font-size:11px !important; letter-spacing:.24em !important; line-height:1 !important; color:#866943 !important;
}
html body #fhMain :is(.fhhlp-label, .fhhlm-label, .fhhlwp-label, .fhhlwm-label).is-dark{ color:#B89B72 !important }
html body #fhMain :is(.fhhlp-label, .fhhlm-label, .fhhlwp-label, .fhhlwm-label)::before{
  content:""; flex:none; width:26px; height:1px; margin-right:14px; background:currentColor;
}

/* =========================================================
   P4 · 애플식 손맛 (움직임은 fh-motion.js 와 한 짝)
========================================================= */
/* 아래에서 올라오는 시트: 원래 짧은 등장 효과는 끄고 스프링이 맡음. 닫히는 동안에도 보이게 */
.fhrv-sheet .fhrv-box, .fhrs-sheet .fhrs-sheet-box{ animation:none !important; will-change:transform }
.fhrv-sheet.fh-leaving, .fhrs-sheet.fh-leaving{ display:flex !important; pointer-events:none }
@media (max-width:767px){
  /* 손잡이: 끌어내릴 수 있다는 표시 */
  .fhrv-box, .fhrs-sheet-box{ position:relative; touch-action:none }
  .fhrv-box .fhrv-wheel, .fhrs-sheet-box [class*="wheel"]{ touch-action:pan-y }
  .fhrv-box::before, .fhrs-sheet-box::before{
    content:""; position:absolute; top:8px; left:50%; width:36px; height:5px; margin-left:-18px; border-radius:3px; background:#D6CFC3;
  }
}

/* 모바일 메뉴: 헤더에서 아래로 살짝 내려오며 차례로 나타나고, 닫을 때는 같은 길로 되돌아감 */
.fhhd-panel nav > *, .fhhd-panel-foot{ opacity:0; translate:0 -8px; transition:opacity .2s ease, translate .2s ease }
.fhhd-panel.is-open nav > *, .fhhd-panel.is-open .fhhd-panel-foot{ opacity:1; translate:0 0; transition:opacity .45s cubic-bezier(.22,1,.36,1), translate .45s cubic-bezier(.22,1,.36,1) }
.fhhd-panel.is-open nav > :nth-child(2){ transition-delay:.03s } .fhhd-panel.is-open nav > :nth-child(3){ transition-delay:.06s }
.fhhd-panel.is-open nav > :nth-child(4){ transition-delay:.09s } .fhhd-panel.is-open nav > :nth-child(5){ transition-delay:.12s }
.fhhd-panel.is-open nav > :nth-child(6){ transition-delay:.15s } .fhhd-panel.is-open nav > :nth-child(n+7){ transition-delay:.18s }
.fhhd-panel.is-open .fhhd-panel-foot{ transition-delay:.2s }
.fhhd-panel :is(a, .fhhd-mgroup > span){ -webkit-tap-highlight-color:transparent }
.fhhd-panel a{ transition:color .2s, opacity .12s } .fhhd-panel a:active{ opacity:.55 }
.fhhd-burger{ -webkit-tap-highlight-color:transparent; touch-action:manipulation }
.fhhd-burger:active{ scale:.92 }

/* PC 하위 메뉴: 누른 메뉴 바로 아래에서 펼쳐짐 */
.fhhd-sub{ scale:none; transition:opacity .15s, visibility .15s } /* 2026.11.03 커지는 효과 제거 */

/* 설정 존중: 헤더 · 메뉴까지 */
@media (prefers-reduced-motion:reduce){
  .fhhd *, .fhhd-panel, .fhhd-panel *{ transition-duration:.01ms !important; transition-delay:0s !important }
  .fhhd-panel nav > *, .fhhd-panel-foot, .fhhd-sub{ translate:none !important; scale:none !important }
}
@media (prefers-contrast:more){
  .fhhd, .fhhd-sub{ background:#F8F7F4; -webkit-backdrop-filter:none; backdrop-filter:none; border-bottom:1px solid #141413 }
  #fhMain :focus-visible{ outline-color:#141413 }
}

/* =========================================================
   P5 · 한 장의 유리 + 메인 상품 카드 줄 맞춤 (2026-10-30)
========================================================= */
/* 유리 재질 하나: 맨 위 헤더 혼자일 때도, 탭 줄이 붙었을 때도 이것 한 장 */
.fh-glass{ position:fixed; top:0; left:0; right:0; z-index:9989; height:var(--fhhd-h); pointer-events:none }
/* 아임웹에서 쓰던 그 유리 그대로: 아주 옅은 바탕 + 강한 흐림 · 채도 */
.fh-glass::before{
  content:""; position:absolute; top:0; left:0; right:0; height:var(--fh-glass-h, var(--fhhd-h));
  background:rgba(250,249,246,.45);
  -webkit-backdrop-filter:blur(24px) saturate(190%) brightness(1.04); backdrop-filter:blur(24px) saturate(190%) brightness(1.04);
  box-shadow:0 8px 24px -6px rgba(30,26,20,0); transition:box-shadow .3s ease;
}
/* 내용이 유리 밑으로 들어가기 시작하면 아래 가장자리만 은은하게 (선 대신 그림자) */
html.fh-scrolled .fh-glass::before{ box-shadow:0 8px 24px -6px rgba(30,26,20,.08) }
/* 헤더 자체 배경 · 흐림은 끄고 유리 한 장에 맡김 */
html.fh-glass-ready body .fhhd, html.fh-glass-ready.fh-scrolled body .fhhd, html.fh-glass-ready[class*="-stack"].fh-scrolled body .fhhd{
  background:transparent !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; box-shadow:none !important; border-bottom-color:transparent !important;
}
/* 붙은 탭 줄: 자기 배경 · 흐림 · 그림자 · 아래 선을 끄고 같은 유리 위에 올라감 */
html body #fhMain .is-fixed.fh-joined{
  z-index:9989 !important;
  background:transparent !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; box-shadow:none !important; border-bottom-color:transparent !important;
}
html body #fhMain .is-fixed.fh-joined :is(.fhm-tabs){ border-bottom-color:transparent !important }
/* 메뉴 펼쳐졌을 땐 유리 대신 단색 (패널과 한 몸) */
html.fh-glass-ready:has(.fhhd-panel.is-open) .fh-glass::before{ background:#F8F7F4; box-shadow:none }
html:has(.fhhd-panel.is-open) body #fhMain .is-fixed.fh-joined{ z-index:1 !important }
@media (prefers-reduced-transparency:reduce){ .fh-glass::before{ background:#F8F7F4; -webkit-backdrop-filter:none; backdrop-filter:none } }
@media (prefers-contrast:more){ .fh-glass::before{ background:#F8F7F4; -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:0 1px 0 #141413 } }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){ .fh-glass::before{ background:rgba(248,247,244,.97) } }

/* 메인 상품 카드: 두 카드 높이 같게 · 위 줄(배지 유무) 높이 같게 · 가격 줄은 맨 아래로 */
html body[data-page="home"] #fhMain .fhp-lines{ align-items:stretch !important }
html body[data-page="home"] #fhMain .fhp-line{ display:flex; flex-direction:column }
html body[data-page="home"] #fhMain .fhp-line-body{ flex:1 1 auto; display:flex; flex-direction:column }
html body[data-page="home"] #fhMain .fhp-line-body > *{ flex:none }
html body[data-page="home"] #fhMain .fhp-line-top{ min-height:26px }
html body[data-page="home"] #fhMain .fhp-line-products{ align-self:flex-start }
html body[data-page="home"] #fhMain .fhp-line-price{ margin-top:auto !important; padding-top:28px }

/* 포트폴리오 영상 창 아래 정보: 너무 작던 글씨를 읽히는 크기로 (어두운 바탕이라 대비도 조금 올림) */
html body .fhpfp-modal-info{ padding-top:24px !important }
html body .fhpfp-modal-category{ margin-bottom:8px !important; color:rgba(255,255,255,.62) !important; font-size:12.5px !important; font-weight:600 !important; letter-spacing:.01em !important }
html body .fhpfp-modal-venue{ margin-bottom:8px !important; font-size:26px !important; font-weight:600 !important; letter-spacing:-.03em !important; line-height:1.3 !important }
html body .fhpfp-modal-meta{ color:rgba(255,255,255,.72) !important; font-size:14.5px !important; line-height:1.5 !important }
html body .fhpfp-modal-tags{ margin-top:12px !important; gap:6px 12px !important; color:rgba(255,255,255,.55) !important; font-size:13px !important }
html body .fhpfp-modal-hall-k{ font-size:11px !important }
html body .fhpfp-modal-hall-t{ font-size:16px !important }
html body .fhpfp-modal-hall{ padding:16px 22px !important; width:380px !important }
html body .fhpfm-modal-info{ padding-top:18px !important }
html body .fhpfm-modal-category{ margin-bottom:6px !important; color:rgba(255,255,255,.62) !important; font-size:11.5px !important; font-weight:600 !important }
html body .fhpfm-modal-venue{ margin-bottom:6px !important; font-size:20px !important; font-weight:600 !important; letter-spacing:-.03em !important; line-height:1.3 !important }
html body .fhpfm-modal-meta{ color:rgba(255,255,255,.72) !important; font-size:13px !important; line-height:1.5 !important }
html body .fhpfm-modal-tags{ margin-top:10px !important; gap:5px 10px !important; color:rgba(255,255,255,.55) !important; font-size:12px !important }
html body .fhpfm-modal-hall-k{ font-size:10.5px !important }
html body .fhpfm-modal-hall-t{ font-size:14.5px !important }

/* =========================================================
   P6 · 모바일 아래 버튼 줄 유리 · 푸터 · 모바일 작은 글씨 (2026-10-30)
========================================================= */
/* 1. 모바일 아래 버튼 줄: 위쪽 헤더와 같은 투명 유리 (선 대신 위로 번지는 옅은 그림자) */
@media (max-width:767px){
  html body :is(.fhhlm-bar, .fhhlwm-bar, .fhm-sbar){
    background:linear-gradient(0deg, rgba(255,255,255,.55) 0%, rgba(248,247,244,.38) 100%) !important; /* 프리웨딩 아임웹 버튼 줄과 같은 유리 */
    -webkit-backdrop-filter:blur(24px) saturate(190%) brightness(1.04) !important; backdrop-filter:blur(24px) saturate(190%) brightness(1.04) !important;
    border-top:0 !important; box-shadow:0 -8px 24px -6px rgba(30,26,20,.08) !important;
  }
  /* 올라오고 내려갈 때: 애플 시트 곡선 (같은 길로 오가기) */
  html body :is(.fhhlm-bar, .fhhlwm-bar){ transition:transform .45s cubic-bezier(.32,.72,0,1) !important }
  /* 유리 위 글씨는 살짝 진하게 (뒤 배경이 바뀌어도 읽히게) */
  html body :is(.fhhlm-bar-small, .fhhlwm-bar-small){ font-size:12px !important; color:#5F5A53 !important; font-weight:500 !important }
  html body .fhhlwm-bar-main{ font-size:14.5px !important }
}
@media (prefers-reduced-transparency:reduce), (prefers-contrast:more){
  html body :is(.fhhlm-bar, .fhhlwm-bar, .fhm-sbar){ background:#F8F7F4 !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important }
}

/* 2. 푸터: 여백 넉넉히, 글씨 대비 올림 (옅은 회색은 읽기 어려웠음), 로고 옆 문구는 다른 소제목과 같은 모양 */
html body .fhft{ --muted:#5F5A53; --sub:#77716A; --line:#DDD8CF }
html body .fhft-in{ padding:64px 40px 48px }
html body .fhft-top{ margin-bottom:22px }
html body .fhft-brand{ gap:18px }
html body .fhft-tag{ display:inline-flex; align-items:center; font-size:11px; letter-spacing:.24em; color:#866943 }
html body .fhft-tag::before{ content:""; flex:none; width:26px; height:1px; margin-right:14px; background:currentColor }
html body .fhft-sns{ gap:10px }
html body .fhft-sns a{ width:42px; height:42px; border-color:#DDD8CF; background:#FCFBF8; transition:color .2s, background-color .2s, border-color .2s, scale .12s ease-out; -webkit-tap-highlight-color:transparent }
html body .fhft-sns a:active{ scale:.92 }
html body .fhft-info > div{ font-size:13px; line-height:1.7 }
html body .fhft-bottom{ margin-top:30px; padding-top:22px }
html body :is(.fhft-copy, .fhft-note, .fhft-privacy){ font-size:12.5px }
html body .fhft-privacy{ font-weight:600 }
@media (max-width:767px){
  html body .fhft-in{ padding:48px 24px calc(40px + env(safe-area-inset-bottom)) }
  html body .fhft-top{ gap:20px; margin-bottom:22px }
  html body .fhft-brand{ gap:10px }
  html body .fhft-info{ gap:6px }
  html body .fhft-info > div{ font-size:13px }
  html body .fhft-info dt{ min-width:104px }
  html body .fhft-bottom{ gap:6px; margin-top:26px; padding-top:20px }
  html body :is(.fhft-copy, .fhft-note, .fhft-privacy){ font-size:12.5px }
  html body .fhft-links{ gap:6px }
  /* 아래 버튼 줄이 떠 있는 페이지: 푸터 끝이 버튼 줄에 가리지 않게 */
  html body:has(:is(.fhhlm-bar, .fhhlwm-bar, .fhm-sbar)) .fhft-in{ padding-bottom:calc(112px + env(safe-area-inset-bottom)) }
}

/* 3. 모바일 작은 글씨: 한글은 12px 아래로 안 내려가게, 영문 대문자 이름표는 10.5px 이상 */
@media (max-width:767px){
  /* 한글 */
  html body #fhMain :is(.fhhlm-note-label, .fhhlwm-note-label, .fhhlm-tags, .fhpfm-card-tags, .fhhlwm-hero-cap, .fhpfm-tag-group-label, .fhptm-ben-k, .fhv-priv-note){ font-size:12.5px !important }
  html body #fhMain :is(.fhv-review-proof b, .fhptm-stats dt, .fhhlm-about-item span, .fhrs-card-ft span){ font-size:12.5px !important }
  html body #fhMain :is(.fhv-review-proof small, .fhv-priv-stats small, .fhv-priv-txt small, .fhv-faq-list small, .l small){ font-size:12px !important }
  html body #fhMain .fhrs-badge{ font-size:11.5px !important }
  html body #fhMain :is(.fhhlm-hsel em, .fhhlm-hchip em, .fhrs-chip small, .fhptm-tab-c){ font-size:12px !important }
  /* 영문 이름표 · 배지 */
  html body #fhMain :is(.fhhlm-cap-cat, .fhhlm-sec-label, .fhhlm-sound-text, .fhhlwm-promo-label, .fhhlwm-sound-text, .fhhlwm-card-cat,
    .fhm-kick, .fhpfm-featured-label, .fhv-en, .fhv-sound-label, .fhv-line-label, .fhv-line-price span, .fhv-shield-top span,
    .fhhlm-about-item dt, .fhhlwm-glance-item dt, .fhrv-pc-line){ font-size:10.5px !important }
  html body #fhMain :is(.fhm-tag, .fhv-line-badge, .fhhlm-pkg-badge){ font-size:10px !important }
  html body #fhMain .fhptm-kicker{ font-size:11px !important }
  html body .fhm4v-lightbox-sub{ font-size:10.5px !important }
}

/* ---------- 포트폴리오(PC): 검색창을 태그 줄 오른쪽에 (fh-motion.js가 자리 옮김) ---------- */
html body #fhpfpRoot.fh-search-in-tags .fhpfp-headrow{ padding-bottom:28px }
html body #fhpfpRoot .fh-tagline{ display:flex; align-items:center; gap:28px; max-width:calc(var(--cw) + 80px); margin:0 auto; padding:36px 40px 0 }
html body #fhpfpRoot .fh-tagline-tags{ flex:1 1 auto; min-width:0 }
html body #fhpfpRoot .fh-tagline .fhpfp-tag-filter:not(.is-fixed){ max-width:none; margin:0; padding:0 !important }
html body #fhpfpRoot .fh-tagline .fhpfp-search-area{ flex:0 0 240px; padding:0 !important; margin-left:auto }
html body #fhpfpRoot .fh-tagline .fhpfp-tag-filter:not(.is-fixed){ gap:12px 24px }
html body #fhpfpRoot .fh-tagline .fhpfp-tag-filter:not(.is-fixed) .fhpfp-tag-group + .fhpfp-tag-group{ padding-left:24px }
html body #fhpfpRoot .fh-tagline .fhpfp-search-input{ height:40px; border-radius:999px; font-size:14px }
html body #fhpfpRoot .fh-tagline .fhpfp-search-suggestions{ z-index:20 }
@media (max-width:1100px){
  html body #fhpfpRoot .fh-tagline{ flex-wrap:wrap; gap:16px 24px }
  html body #fhpfpRoot .fh-tagline .fhpfp-search-area{ flex:1 1 260px; max-width:360px }
}

/* ===== Films 탭 줄 = 상품(Price) 탭 줄 기준으로 통일 (폭 · 여백 · 탭 크기 · 밑줄) ===== */
@media (min-width:768px){
  html body #fhpfpRoot{ --cw:1120px !important }
  html body #fhMain .fhpfp-category-scroll{ max-width:calc(1120px + 80px) !important; margin:0 auto !important; padding:0 40px !important; overflow:visible !important }
  html body #fhMain .fhpfp-category-list{ width:100% !important; min-width:0 !important; gap:0 !important; padding:0 !important; border-bottom:1px solid var(--line, #DDD8CF) !important; align-items:stretch !important }
  html body #fhMain .fhpfp-featured-inner{ max-width:calc(1120px + 80px) !important; margin-left:auto !important; margin-right:auto !important; padding-left:40px !important; padding-right:40px !important }
  html body #fhMain .fhpfp-category-btn{ flex:0 0 auto !important; min-width:0 !important; padding:20px 24px 18px !important; font-size:16px !important; text-align:center !important; white-space:nowrap }
  html body #fhMain .fhpfp-category-btn::after{ bottom:-1px !important }
  html body #fhMain .fhpfp-tabbar{ border-bottom:0 !important; box-shadow:none !important }
  html body #fhMain .fhpfp-tabbar::after, html body #fhMain .fhpfp-tabbar::before, html body #fhMain .fhpfp-hairline{ display:none !important }
}
@media (max-width:767px){
  html body #fhMain .fhpfm-category-scroll{ padding:0 20px !important }
  html body #fhMain .fhpfm-category-list{ min-width:100% !important; padding-right:0 !important; border-bottom:1px solid var(--line, #DDD8CF) !important }
  html body #fhMain .fhpfm-category-btn{ padding:14px 0 12px !important; font-size:15px !important }
  html body #fhMain .fhpfm-category-btn::after{ bottom:-1px !important }
  html body #fhMain .fhpfm-tabbar{ border-bottom:0 !important; box-shadow:none !important }
  html body #fhMain .fhpfm-tabbar::after, html body #fhMain .fhpfm-tabbar::before, html body #fhMain .fhpfm-hairline{ display:none !important }
}
