/* ══════════════════════════════════════════
   결 피부과 — 피부과 홈페이지 데모 (2026-09-25)
   사용자 지시 — *"피부과는 이 세 개 벤치마킹으로"* → 「셋을 섞어서 1개」.
     Everbody (everbody.com) = **톤 · 뼈대** — 실측: 제목 Lora 60/84 · h2 48/60 · 본문 Manrope Light 16/24 ·
       진청록 #005453 네모 버튼(48 / 64 높이) · 돌색 패널 #F5F3EF · 검은 푸터 · 가운데 자간 넓은 로고 + 2단 메뉴 ·
       사진 + 돌색 패널 분할 · 「이런 고민으로」 칩 → 진료 카드 셋 · 의료진 카드 캐러셀 · 선 긋는 FAQ
     Parsley Health = 테두리 배지 한 줄 · 큰 숫자 한 개 · 5단 진료 과정(사진 + 물결선) · 흐르는 질환 띠
     Tia = 아이콘 증상 목록 + 사진 카드 · 가운데 「나」를 둘러싼 원형 도식 + 01–04 단계 · 진료 안내 카드 둘
   **의료법 제56조** — Everbody 의 「첫 방문 20% 할인」 카드 → 첫 방문 진단 안내 / 전후 사진 후기 → 뺌 /
     Parsley 의 「89% 개선」 → 치료 효과 수치 대신 「첫 진료 30분」(진료 방식) / 시술 장면 사진 없음 / 비급여 비용 게시(예시).
   의료진 · 모델 사진은 AI 생성 가상 인물 — 푸터에 고지.
   빌더 demos/build_gyeol.py — html 을 직접 고치지 말 것.
   ══════════════════════════════════════════ */
@font-face{font-family:'P';font-weight:400;font-display:swap;src:url('../../assets/fonts/Pretendard-Regular.woff2') format('woff2')}
@font-face{font-family:'P';font-weight:600;font-display:swap;src:url('../../assets/fonts/Pretendard-SemiBold.woff2') format('woff2')}

:root{
  --teal:#005453; --teal2:#003F3E; --ink:#000; --txt:#1A1A1A; --sub:#5A5A5A; --stone:#F5F3EF; --stone2:#ECE8E1; --mint:#EAF0EC; --line:#D8D4CC;
  --serif:'Lora','Noto Serif KR',serif; --sans:'Manrope','P',sans-serif;
  --px:clamp(16px,2.2vw,32px);
  --itge-acc:#3E4A2A; --itge-sig:#A8402A;
}
*{margin:0;padding:0;box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-weight:300;background:#fff;color:var(--txt);word-break:keep-all;font-size:16px;line-height:24px;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
b,strong{font-weight:500}
.wrap{max-width:1440px;margin:0 auto;padding:0 var(--px);position:relative}
.in{max-width:1064px;margin:0 auto}
.ul{text-decoration:underline;text-underline-offset:4px;display:inline-block;padding:4px 0}
.ul:hover{color:var(--teal)}

/* 네모 버튼 — Everbody */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 28px;background:var(--teal);color:#fff;border:1px solid var(--teal);
  font-weight:400;font-size:16px;white-space:nowrap;cursor:pointer;transition:background .2s}
.btn:hover{background:var(--teal2)}
.btn.lg{min-height:64px;padding:10px 34px;font-size:18px}
.btn.blk{background:#000;border-color:#000}
.btn.lt{background:none;color:var(--txt);border-color:var(--txt)}
.btn.lt:hover{background:var(--txt);color:#fff}

/* ══ 잇지 데모 바 ══ */
.itgebar{background:var(--itge-acc);color:#fff;position:relative;z-index:50;font-family:'P';font-weight:400;line-height:1.5}
.itgebar .wrap{display:flex;align-items:center;gap:14px;height:40px;font-size:12.5px;max-width:none}
.itgebar .k{color:rgba(255,255,255,.62);font-size:10.5px;letter-spacing:.1em}
.itgebar .t{color:rgba(255,255,255,.9);font-weight:600}
.itgebar .sep{color:rgba(255,255,255,.3)}
.itgebar .back{margin-left:auto;background:var(--itge-sig);color:#fff;font-size:12px;font-weight:600;padding:6px 13px;border-radius:3px;white-space:nowrap}
@media(max-width:760px){.itgebar .t,.itgebar .sep{display:none}}

/* ══ 머리 — 가운데 로고 + 아래 메뉴 ══ */
header{background:#fff;position:relative;z-index:30;border-bottom:1px solid #eee}
header .top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px 0 6px}
header .hi{display:flex;flex-direction:column;font-size:12.5px;line-height:1.5;color:var(--sub)}
header .hi b{font-weight:500;font-size:13.5px;color:var(--teal)}
.logo{display:flex;align-items:center;gap:12px;white-space:nowrap;color:var(--ink);line-height:1}
.logo .lm{width:40px;height:40px;color:var(--teal);flex:none}
.logo b{display:block;font-family:var(--serif);font-weight:500;font-size:27px;letter-spacing:.08em}
.logo small{display:block;font-family:var(--sans);font-size:8.5px;letter-spacing:.34em;color:var(--sub);margin-top:6px;font-weight:500}
header .book{justify-self:end}
header nav{display:flex;justify-content:center;gap:40px;padding:6px 0 12px}
header nav a{font-size:16px;font-weight:400;line-height:1.3;padding:8px 0;white-space:nowrap}
header nav a:hover,header nav a.on{color:var(--teal)}
.nvt{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.navbtn{display:none}
@media(max-width:900px){
  header .top{grid-template-columns:auto 1fr auto;gap:10px;padding:10px 0}
  header .hi{display:none}
  .logo .lm{width:32px;height:32px}.logo b{font-size:21px}.logo small{font-size:7.5px;letter-spacing:.26em}
  .logo{font-size:20px;text-align:left;padding-left:0;letter-spacing:.24em}
  header .book{justify-self:end;min-height:42px;padding:6px 16px;font-size:14px;margin-right:50px}
  header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;gap:0;padding:6px var(--px) 16px;border-bottom:1px solid var(--line)}
  header nav a{padding:13px 0;border-bottom:1px solid #eee}
  header nav br{display:none}
  .nvt:checked~nav{display:flex}
  .navbtn{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;cursor:pointer}
  .navbtn i{display:block;width:22px;height:1.5px;background:#000;margin-left:auto}
}

/* ══ 첫 화면 — 전면 사진 + 떠 있는 카드 ══ */
.hero{position:relative;min-height:560px;height:min(620px,72vh);color:#fff;overflow:hidden;display:flex;align-items:center}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 35%}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,30,22,.5) 0%,rgba(40,30,22,.28) 42%,rgba(40,30,22,0) 62%)}
.hero .wrap{position:relative;z-index:1;width:100%}
.hero h1{font-family:var(--serif);font-weight:400;font-size:60px;line-height:84px;max-width:680px;letter-spacing:-.005em}
.hero .sub{font-family:var(--serif);font-size:22px;line-height:32px;margin-top:10px;max-width:560px}
.hero .bt{display:flex;align-items:center;gap:22px;margin-top:26px;flex-wrap:wrap}
.hero .bt .ul{color:#fff;font-size:15px}
.float{position:absolute;right:var(--px);bottom:26px;z-index:2;display:flex;align-items:center;background:#fff;color:var(--txt);border-radius:8px;overflow:hidden;
  width:min(420px,calc(100% - 32px));box-shadow:0 8px 24px rgba(0,0,0,.14)}
.float img{width:120px;height:110px;object-fit:cover;flex:none}
.float div{padding:14px 20px}
.float b{display:block;font-weight:500;font-size:17px;line-height:1.35;padding-bottom:8px;border-bottom:1px solid var(--line)}
.float span{display:block;font-size:14px;margin-top:8px}
@media(max-width:760px){
  .hero{height:auto;min-height:600px;align-items:flex-start;padding:56px 0 150px}
  .hero::after{background:linear-gradient(180deg,rgba(40,30,22,.55),rgba(40,30,22,.15) 70%)}
  .hero h1{font-size:36px;line-height:50px}.hero .sub{font-size:18px;line-height:27px}
  .hero>img{object-position:72% center}
}

/* 테두리 배지 한 줄 — Parsley */
.badges{background:var(--mint);padding:26px 0}
.badges .in{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;max-width:1120px;padding:0 var(--px)}
.badges .in>div{border:1px solid #8FB5A3;border-radius:12px;text-align:center;padding:16px 10px 14px;font-size:15px;font-weight:400;line-height:1.35;background:#fff}
.badges svg{display:block;width:26px;height:26px;margin:0 auto 8px;color:var(--teal)}
@media(max-width:860px){.badges .in{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.badges .in{grid-template-columns:1fr 1fr}}

/* ══ 사진 + 돌색 패널 분할 — Everbody ══ */
.split{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;margin:90px auto 0;max-width:1440px;padding:0 var(--px)}
.split>*{min-width:0}
.split>img{width:100%;aspect-ratio:580/350;object-fit:cover;position:relative;z-index:1}
.split .pan{background:var(--stone);padding:80px clamp(24px,7vw,110px) 80px clamp(40px,9vw,140px);margin-left:-80px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.h2{font-family:var(--serif);font-weight:400;font-size:48px;line-height:60px;color:var(--ink);letter-spacing:-.005em}
.lines{margin-top:40px;border-top:1px solid var(--line)}
.lines>div{padding:18px 0 20px;border-bottom:1px solid var(--line)}
.lines b{display:block;font-weight:400;font-size:18px;line-height:26px;color:var(--ink)}
.lines p{font-size:14px;line-height:21px;margin-top:4px}
.pan .ul{margin-top:28px;align-self:flex-start}
.split.rev{grid-template-columns:1.1fr .9fr}
.split.rev>img{order:2}
.split.rev .pan{margin-left:0;margin-right:-80px;padding:80px clamp(40px,9vw,140px) 80px clamp(24px,5vw,80px)}
@media(max-width:860px){.split,.split.rev{grid-template-columns:1fr;margin-top:60px}.split .pan,.split.rev .pan{margin:0;padding:44px 24px}.split.rev>img{order:0}.h2{font-size:34px;line-height:44px}}

/* ══ 이런 고민으로 — 칩 → 진료 카드 셋 ══ */
.concern{margin:110px auto 0;max-width:1064px;padding:0 var(--px)}
.concern .lab{font-weight:500;font-size:16px;letter-spacing:.02em}
.crd{position:absolute;opacity:0;width:0;height:0}
.chips{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:14px}
.chips label{display:inline-flex;align-items:center;gap:8px;font-size:17px;font-weight:400;cursor:pointer;min-height:44px}
.chips label i{width:30px;height:30px;border-radius:50%;border:1px solid #999;display:grid;place-items:center;color:#666}
.chips label i svg{width:17px;height:17px}
.chips label span{border-bottom:1px solid transparent}
.tcards{display:none;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px}
.tcards figure{min-width:0}
.tcards img{width:100%;aspect-ratio:342/455;object-fit:cover}
.tcards figcaption{font-size:18px;font-weight:400;margin-top:12px;color:var(--ink)}
.tcards figcaption small{display:block;font-size:14px;color:var(--sub);margin-top:2px;font-weight:300}
#k1:checked~.chips label[for=k1] span,#k2:checked~.chips label[for=k2] span,#k3:checked~.chips label[for=k3] span,#k4:checked~.chips label[for=k4] span,#k5:checked~.chips label[for=k5] span{border-bottom-color:#000}
#k1:checked~.chips label[for=k1] i,#k2:checked~.chips label[for=k2] i,#k3:checked~.chips label[for=k3] i,#k4:checked~.chips label[for=k4] i,#k5:checked~.chips label[for=k5] i{border-color:var(--teal);color:var(--teal);background:var(--mint)}
#k1:checked~.t1,#k2:checked~.t2,#k3:checked~.t3,#k4:checked~.t4,#k5:checked~.t5{display:grid}
.concern .all{text-align:center;margin-top:44px}
.concern .all a{font-family:var(--serif);font-size:24px;text-decoration:underline;text-underline-offset:6px;display:inline-block;padding:6px 0}
@media(max-width:700px){.tcards{grid-template-columns:repeat(3,72%);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(var(--px) * -1)}.tcards::-webkit-scrollbar{display:none}.tcards figure{scroll-snap-align:start}}

/* 큰 숫자 한 개 — Parsley */
.bignum{background:var(--mint);margin-top:110px;padding:60px 0 70px;overflow:hidden}
.bignum .in{text-align:right}
.bignum .n{font-family:var(--serif);font-weight:400;font-size:clamp(120px,15vw,210px);line-height:.95;color:var(--teal);letter-spacing:-.02em}
.bignum .n small{font-size:.42em;margin-left:6px}
.bignum p{font-family:var(--serif);font-size:clamp(20px,2vw,28px);line-height:1.35;margin-top:14px}
.bignum p em{font-style:italic}
.bignum .fine{font-family:var(--sans);font-size:13px;color:var(--sub);margin-top:8px}

/* 5단 진료 과정 — Parsley */
.flow{margin:110px auto 0;max-width:1440px;padding:0 var(--px);position:relative}
.flow h2{text-align:center;font-family:var(--serif);font-weight:400;font-size:44px;line-height:54px}
.flow .cols{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:44px;position:relative}
.flow .cols>div{min-width:0;position:relative;z-index:1}
.flow h3{font-family:var(--serif);font-weight:400;font-size:22px;line-height:28px}
.flow p{font-size:13px;line-height:19px;margin-top:10px;min-height:57px}
.flow img{width:100%;aspect-ratio:230/260;object-fit:cover;margin-top:16px}
.flow svg.wave{position:absolute;left:0;right:0;bottom:90px;width:100%;height:120px;z-index:0;pointer-events:none}
@media(max-width:900px){.flow .cols{grid-template-columns:repeat(5,70%);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.flow .cols::-webkit-scrollbar{display:none}.flow .cols>div{scroll-snap-align:start}.flow svg.wave{display:none}.flow h2{font-size:32px;line-height:40px}}

/* 증상 목록 + 사진 카드 — Tia */
.symp{background:var(--stone);margin-top:110px;padding:80px 0}
.symp .hd{text-align:center}
.symp .hd h2{font-family:var(--serif);font-weight:400;font-size:44px;line-height:52px}
.symp .hd p{margin-top:12px}
.symp .g{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:1120px;margin:34px auto 0}
.symp .g>*{min-width:0}
.symp ul{list-style:none;display:grid;gap:10px}
.symp li a{display:flex;align-items:center;gap:14px;background:#fff;border-radius:8px;padding:14px 18px;font-size:15px;font-weight:400;min-height:52px}
.symp li a:hover{color:var(--teal)}
.symp li svg{width:22px;height:22px;color:var(--teal);flex:none}
.symp li a::after{content:'⟶';margin-left:8px}
.symp .card{background:#fff;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}
.symp .card img{width:100%;aspect-ratio:560/350;object-fit:cover}
.symp .card div{padding:26px 26px 30px}
.symp .card .k{font-size:12px;letter-spacing:.08em;font-weight:500}
.symp .card h3{font-family:var(--serif);font-weight:400;font-size:34px;line-height:42px;margin-top:10px}
.symp .card p{margin-top:12px;font-size:15px}
.symp .card .btn{margin-top:20px}
.symp .more{text-align:center;margin-top:22px}
@media(max-width:860px){.symp .g{grid-template-columns:1fr}.symp .hd h2{font-size:32px;line-height:40px}}

/* 흐르는 질환 띠 — Parsley */
.marq{background:var(--mint);padding:18px 0;overflow:hidden;white-space:nowrap}
.marq div{display:inline-flex;gap:26px;animation:mq 50s linear infinite;font-size:17px;font-weight:400}
.marq span::after{content:'•';margin-left:26px;color:#6E8F82}
@keyframes mq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marq div{animation:none}}

/* 의료진 — 돌색 패널 + 카드 캐러셀 (Everbody) */
.team{display:grid;grid-template-columns:minmax(0,520px) 1fr;gap:0;margin:110px auto 0;max-width:1440px;padding:0 var(--px);align-items:start}
.team>*{min-width:0}
.team .pan{background:var(--stone);padding:70px 48px 70px;min-height:500px}
.team .pan p{font-size:14px;line-height:21px;margin-top:10px;max-width:420px}
.team .lines{margin-top:30px}
.team .lines>div{padding:12px 0}
.team .lines b{font-size:15px}
.team .pan .ul{margin-top:34px}
.docs{position:relative;padding:34px 0 0 40px}
.docs .trk{display:grid;grid-auto-flow:column;grid-auto-columns:170px;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.docs .trk::-webkit-scrollbar{display:none}
.docs figure{scroll-snap-align:start;min-width:0}
.docs img{width:100%;aspect-ratio:170/232;object-fit:cover;background:var(--stone2)}
.docs figcaption{font-size:17px;line-height:26px;margin-top:10px;font-weight:400;color:var(--ink)}
.docs figcaption small{display:block;font-size:12.5px;line-height:17px;color:var(--sub);font-weight:300;margin-top:2px}
.docs .dnote{font-size:12.5px;color:var(--sub);margin-top:18px;border-top:1px solid var(--line);padding-top:10px}
.docs .nav{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;border-bottom:1px solid var(--line);padding-bottom:6px}
.docs .nav button{width:40px;height:40px;border:0;background:none;cursor:pointer;font-size:20px;color:#999}
.docs .nav button:hover{color:#000}
@media(max-width:860px){.team{grid-template-columns:1fr}.team .pan{min-height:0;padding:44px 24px}.docs{padding:24px 0 0}}

/* 원형 도식 + 단계 — Tia */
.how{margin:110px auto 0;max-width:1120px;padding:0 var(--px)}
.how>h2{text-align:center;font-family:var(--serif);font-weight:400;font-size:44px;line-height:52px}
.how>p{text-align:center;margin-top:10px}
.how .g{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:40px}
.how .g>*{min-width:0}
.how h3{font-family:var(--serif);font-weight:500;font-size:28px;line-height:36px;margin-top:22px}
.how h3:first-child{margin-top:0}
.how .g p{margin-top:6px;font-size:15px}
.how .bt{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}
.orbit{position:relative;aspect-ratio:1;max-width:460px;margin:0 auto;width:100%}
.orbit .bg{position:absolute;inset:12%;border-radius:50%;background:var(--stone2)}
.orbit .ct{position:absolute;inset:30%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.orbit .ct svg{width:62%;height:auto;color:#2A2A2A}
.orbit .ct b{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(24px,2.6vw,34px);line-height:1.2}
.orbit .ct small{font-size:12px;color:var(--sub);margin-top:6px;letter-spacing:.08em}
.orbit span{position:absolute;width:21%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;color:#fff;font-size:13px;line-height:1.25;
  font-weight:400;transform:translate(-50%,-50%);padding:6px}
@media(max-width:860px){.how .g{grid-template-columns:1fr}.how>h2{font-size:32px;line-height:40px}.orbit span{font-size:11px}}

/* 진료 안내 카드 둘 — Tia */
.plans{margin:110px auto 0;max-width:1120px;padding:0 var(--px)}
.plans>h2{font-family:var(--serif);font-weight:400;font-size:44px;line-height:52px}
.plans .g{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
.plans .g>div{min-width:0;border-radius:10px;padding:30px 30px 34px}
.plans .g>div:first-child{background:var(--teal);color:#fff}
.plans .g>div:last-child{background:#fff;border:1px solid var(--line)}
.plans .k{font-size:13px;font-weight:500;letter-spacing:.04em}
.plans h3{font-family:var(--serif);font-weight:400;font-size:30px;line-height:39px;margin-top:6px}
.plans ul{list-style:none;margin-top:18px;display:grid;gap:8px;font-size:15px}
.plans li::before{content:'✓';margin-right:10px}
.plans .btn{margin-top:24px}
.plans .g>div:first-child .btn{background:#fff;color:var(--teal);border-color:#fff}
@media(max-width:760px){.plans .g{grid-template-columns:1fr}.plans>h2{font-size:32px;line-height:40px}}

/* FAQ — Everbody */
.faq{margin:110px auto 0;max-width:1064px;padding:0 var(--px)}
.faq .hd{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.faq h2{font-family:var(--serif);font-weight:400;font-size:32px;line-height:44.8px}
.faq .list{margin-top:24px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:56px;padding:12px 0;font-size:17px;font-weight:400}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:24px;font-weight:300}
.faq details[open] summary::after{content:'–'}
.faq details p{padding:0 0 18px;font-size:15px;color:var(--sub)}

/* ══ 하위 페이지 ══ */
.phead{background:var(--stone);padding:70px 0 60px}
.phead .in{padding:0 var(--px)}
.phead h1{font-family:var(--serif);font-weight:400;font-size:48px;line-height:60px}
.phead p{margin-top:12px;max-width:640px}
.crumb{font-size:13px;color:var(--sub);margin-bottom:12px}
.crumb a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.phead h1{font-size:34px;line-height:44px}}
.trows{max-width:1064px;margin:70px auto 0;padding:0 var(--px);display:grid;gap:60px}
.trows>article{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center}
.trows>article>*{min-width:0}
.trows img{width:100%;aspect-ratio:4/3.3;object-fit:cover}
.trows h2{font-family:var(--serif);font-weight:400;font-size:34px;line-height:44px}
.trows p{margin-top:10px}
.trows ul{list-style:none;margin-top:18px;border-top:1px solid var(--line)}
.trows li{padding:10px 0;border-bottom:1px solid var(--line);font-size:15px;display:flex;justify-content:space-between;gap:10px}
.trows li span{color:var(--sub);font-size:13px}
@media(max-width:760px){.trows>article{grid-template-columns:1fr;gap:18px}}
.fee{max-width:1064px;margin:80px auto 0;padding:0 var(--px)}
.fee h2{font-family:var(--serif);font-weight:400;font-size:34px;line-height:44px}
.fee table{width:100%;border-collapse:collapse;margin-top:18px;font-size:15px}
.fee th,.fee td{border-bottom:1px solid var(--line);padding:12px 8px;text-align:left}
.fee th{font-weight:500;font-size:13px;color:var(--sub);border-bottom-color:#000}
.fee td.n{text-align:right;font-variant-numeric:tabular-nums;font-weight:400}
.fee .fine{font-size:13px;color:var(--sub);margin-top:10px}
.dgrid{max-width:1064px;margin:60px auto 0;padding:0 var(--px);display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.dgrid>article{min-width:0}
.dgrid img{width:100%;aspect-ratio:3/4;object-fit:cover}
.dgrid h2{font-family:var(--serif);font-weight:400;font-size:26px;margin-top:14px}
.dgrid .role{font-size:14px;color:var(--teal);font-weight:500}
.dgrid ul{list-style:none;margin-top:10px;font-size:14px;color:var(--sub);display:grid;gap:4px}
@media(max-width:760px){.dgrid{grid-template-columns:1fr}}
.bookw{max-width:1064px;margin:60px auto 0;padding:0 var(--px);display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}
.bookw>*{min-width:0}
.form{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:var(--stone);padding:30px}
.form>*{min-width:0}
.form label{display:grid;gap:6px;font-size:13px;font-weight:500}
.form .f{grid-column:1/-1}
.form input,.form select,.form textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:0;padding:8px 12px;font-size:15px;background:#fff;font-weight:300}
.form textarea{min-height:100px;resize:vertical}
.form .btn{grid-column:1/-1}
.form .fine{grid-column:1/-1;font-size:12.5px;color:var(--sub);text-align:center}
.hours h3{font-family:var(--serif);font-weight:400;font-size:26px}
.hours table{width:100%;border-collapse:collapse;margin-top:10px;font-size:15px}
.hours td{padding:10px 0;border-bottom:1px solid var(--line)}
.hours td:last-child{text-align:right}
.hours p{margin-top:18px;font-size:15px}
@media(max-width:860px){.bookw{grid-template-columns:1fr}}
@media(max-width:460px){.form{grid-template-columns:1fr;padding:22px 16px}}
.spacer{height:110px}

/* ══ 검은 푸터 — Everbody ══ */
footer{background:#000;color:#fff;margin-top:110px}
footer .g{display:grid;grid-template-columns:1.3fr .8fr .8fr .8fr 1fr;gap:30px;padding:60px 0 50px;max-width:1300px;margin:0 auto}
footer .g>*{min-width:0}
footer .disc{display:flex;gap:14px;font-size:11.5px;line-height:1.55;color:#ddd}
footer .disc i{flex:none;width:52px;height:52px;border-radius:50%;border:2px solid #7FB89A;display:grid;place-items:center;font-style:normal;font-size:9px;text-align:center;line-height:1.1;color:#7FB89A;font-weight:600}
footer h4{font-size:12px;font-weight:500;margin-bottom:12px}
footer ul{list-style:none;font-size:14px;line-height:1.4}
footer li a{display:inline-block;padding:4px 0}
footer li a:hover{text-decoration:underline}
footer .pay{font-size:12px}
footer .pay div{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
footer .pay span{border:1px solid #666;border-radius:3px;padding:2px 6px;font-size:10.5px}
footer .bot{border-top:1px solid #333;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:22px var(--px) 26px;gap:12px}
footer .bot .logo{color:#fff;justify-self:center}
footer .bot .logo .lm{color:#fff}
footer .bot .logo small{color:#bbb}
footer .bot .soc{justify-self:end;display:flex;gap:10px;align-items:center;font-size:13px}
footer .bot .soc a{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#000}
footer .bot .soc svg{width:15px;height:15px}
footer .biz{text-align:center;font-size:11.5px;color:#aaa;padding:0 var(--px) 22px;line-height:1.8}
footer .biz b{color:#fff;font-weight:500}
@media(max-width:900px){footer .g{grid-template-columns:1fr 1fr;padding:44px var(--px) 34px}footer .disc{grid-column:1/-1}footer .bot{grid-template-columns:1fr;text-align:center}footer .bot .soc{justify-self:center}}

.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--teal);color:#fff;font-size:14px;padding:12px 20px;opacity:0;pointer-events:none;
  transition:.25s;z-index:60;max-width:calc(100% - 32px);line-height:1.5}
.toast.on{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ══ 모바일 탭 타겟 ══ */
@media(max-width:760px){
  .itgebar .back{padding:9px 14px}
  footer li a{padding:10px 0}
}

/* ══ 모바일 탭 타겟 40px (자동 삽입) ══ */
@media(max-width:820px){
  .itgebar .back{min-height:40px;display:inline-flex;align-items:center;padding:0 15px}
  .legal a,.disc a,.dfoot a,footer a{display:inline-block;padding:11px 0}
  .logo,header .logo{min-height:40px;display:inline-flex;align-items:center}
  .notice .hd a,.sechd a,.sec a.more{display:inline-block;padding:10px 0}
}
