/* 제품 카탈로그(전자의수 전제품 · 의족 세트 · 의족 부품) 전용 — style.css · functional.css 위에 덧붙임 (2026-10-26) */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* 카탈로그 탭 */
.cat-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 0 clamp(34px,4vw,54px);}
.cat-tabs a{display:block;padding:12px 24px;border:1px solid var(--line);font-size:14px;font-weight:500;color:var(--muted);transition:.3s var(--ease);}
.cat-tabs a:hover{border-color:var(--gold);color:var(--gold-deep);}
.cat-tabs a[aria-current="page"]{background:var(--black);border-color:var(--black);color:var(--white);}

.mh3{font-size:clamp(1.2rem,2vw,1.55rem);font-weight:500;letter-spacing:-.02em;margin:clamp(44px,5vw,70px) 0 14px;}
.tab em{font-style:normal;font-family:var(--font-display);font-size:11px;opacity:.65;margin-left:4px;}

/* 전자의수 제품 카드 */
.mgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:clamp(30px,3.5vw,48px);}
.mgrid.g3{grid-template-columns:repeat(3,1fr);}
.mgrid.g4{grid-template-columns:repeat(4,1fr);}
.mcard{background:var(--white);border:1px solid var(--line-soft);display:flex;flex-direction:column;scroll-margin-top:calc(var(--header-h) + 16px);}
.mcard-img{aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px;border-bottom:1px solid var(--line-soft);}
.mcard-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}
.mcard-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1;}
.mcard .k{font-family:var(--font-display);font-size:11px;letter-spacing:.12em;color:var(--gold-deep);text-transform:uppercase;}
.mcard h3{font-size:1.1rem;font-weight:700;letter-spacing:-.01em;line-height:1.4;}
.mcard h3 small{display:block;font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--muted);margin-top:2px;}
.mlist{display:grid;gap:7px;font-size:14px;line-height:1.7;color:var(--black-soft);}
.mlist li{position:relative;padding-left:14px;}
.mlist li::before{content:"";position:absolute;left:0;top:.8em;width:5px;height:1px;background:var(--gold-deep);}
.mcard .fit{margin-top:auto;padding-top:12px;border-top:1px solid var(--line-soft);font-size:13.5px;color:var(--muted);line-height:1.75;}
.mcard .fit b{color:var(--black-soft);font-weight:500;margin-right:6px;}
.mnote{font-size:12.5px;color:var(--muted);}
.chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip{font-size:12px;line-height:1.5;padding:2px 10px;background:var(--ivory-light);border:1px solid var(--line-soft);color:var(--black-soft);}
.kchip{display:inline-block;font-family:var(--font-display);font-size:11.5px;font-weight:600;letter-spacing:.04em;padding:1px 8px;margin-right:4px;border:1px solid var(--gold);color:var(--gold-deep);}

.pose-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:22px;}
.pose-grid li{background:#fff;border:1px solid var(--line-soft);display:flex;flex-direction:column;}
.pose-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--ivory-light);}
.pose-grid span{padding:8px 10px 10px;font-family:var(--font-display);font-size:12px;letter-spacing:.02em;color:var(--black-soft);text-align:center;}
.mfig{margin:34px auto 0;max-width:880px;}
.mfig img{width:100%;height:auto;background:#fff;border:1px solid var(--line-soft);}
.mfig figcaption{margin-top:10px;font-size:13.5px;color:var(--muted);text-align:center;line-height:1.7;}
.mpair{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:34px;align-items:start;}
.mpair .mfig{margin:0;}
.fx-table caption{caption-side:top;text-align:left;padding:0 0 10px;font-weight:500;color:var(--black);}

/* 의족 부품 카드 */
.filters{display:flex;flex-wrap:wrap;gap:12px 16px;justify-content:center;margin:0 0 14px;}
.filters label{display:flex;flex-direction:column;gap:5px;font-size:12px;letter-spacing:.04em;color:var(--muted);}
.filters select,.filters input{font:inherit;font-size:14px;color:var(--black);padding:10px 12px;border:1px solid var(--line);background:#fff;min-width:150px;border-radius:0;}
.filters .f-search{flex:1 1 240px;max-width:340px;}
.filters .f-search input{width:100%;}
.f-count{text-align:center;font-size:13.5px;color:var(--muted);margin:0 0 22px;}
.f-empty{text-align:center;padding:40px 0;color:var(--muted);}
.part-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.part-card{background:#fff;border:1px solid var(--line-soft);display:flex;flex-direction:column;scroll-margin-top:calc(var(--header-h) + 16px);}
.part-card[hidden]{display:none;}
.part-card.is-target{outline:2px solid var(--gold);outline-offset:2px;}
.part-card .pimg{aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px;border-bottom:1px solid var(--line-soft);}
.part-card .pimg img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}
.part-card .pbody{padding:18px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.part-card .pk{font-family:var(--font-display);font-size:11px;letter-spacing:.12em;color:var(--gold-deep);text-transform:uppercase;}
.part-card h3{font-size:1.08rem;font-weight:700;letter-spacing:-.01em;line-height:1.4;}
.part-desc p{font-size:13.5px;line-height:1.75;color:var(--black-soft);margin:0 0 6px;}
.part-spec{margin-top:auto;padding-top:12px;border-top:1px solid var(--line-soft);font-size:13px;line-height:1.7;}
.part-spec div{display:grid;grid-template-columns:78px 1fr;gap:8px;padding:2px 0;}
.part-spec dt{color:var(--muted);}
.part-spec dd{color:var(--black-soft);margin:0;}

/* 세트 */
.set-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px;}
.set-group{background:#fff;border:1px solid var(--line-soft);padding:20px 22px 22px;}
.set-group h4{font-size:1rem;font-weight:700;margin-bottom:10px;}
.set-group h4 em{font-style:normal;font-family:var(--font-display);font-size:11px;color:var(--gold-deep);margin-left:6px;}
.set-list{display:grid;gap:5px;font-size:14px;line-height:1.6;}
.set-list a{color:var(--black);border-bottom:1px solid var(--line);}
.set-list a:hover{color:var(--gold-deep);border-color:var(--gold);}
.set-list small{font-size:11.5px;color:var(--muted);margin-left:4px;}
.set-list small.kk{font-family:var(--font-display);color:var(--gold-deep);}
.fx-table td a{color:var(--black);border-bottom:1px solid var(--line);}
.fx-table td a:hover{color:var(--gold-deep);border-color:var(--gold);}
.fx-table td:first-child{white-space:normal;}

/* 첫 화면 */
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.hub-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line-soft);color:var(--black);transition:transform .35s,box-shadow .35s;}
.hub-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -22px rgba(42,33,29,.35);}
.hub-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;padding:16px;border-bottom:1px solid var(--line-soft);}
.hub-card > div{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1;}
.hub-card .k{font-family:var(--font-display);font-size:11px;letter-spacing:.12em;color:var(--gold-deep);text-transform:uppercase;}
.hub-card h3{font-size:1.2rem;font-weight:700;letter-spacing:-.01em;}
.hub-card p{font-size:14px;line-height:1.75;color:var(--black-soft);}
.hub-card .go{margin-top:auto;padding-top:10px;font-size:13.5px;color:var(--gold-deep);}

@media (max-width:1080px){.mgrid.g4{grid-template-columns:repeat(2,1fr);}.part-grid,.set-groups,.hub-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:720px){.mgrid,.mgrid.g3,.mgrid.g4,.part-grid,.set-groups,.hub-grid,.mpair{grid-template-columns:1fr;}
  .cat-tabs a{padding:10px 16px;font-size:13px;}
  .filters label{flex:1 1 44%;}.filters select,.filters input{min-width:0;width:100%;}
  .pose-grid{grid-template-columns:repeat(2,1fr);}}

.mcard-img{max-height:420px;}
.fx-fixed{table-layout:fixed;}
.fx-fixed td:first-child,.fx-fixed th:first-child{width:38%;}
.fx-fixed td:nth-child(2),.fx-fixed th:nth-child(2){width:18%;}

/* 유튜브 영상 카드 */
.vid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px;}
.vid{display:block;background:#fff;border:1px solid var(--line-soft);color:var(--black);transition:transform .35s,box-shadow .35s;}
.vid:hover{transform:translateY(-3px);box-shadow:0 16px 36px -22px rgba(42,33,29,.35);}
.vid-img{position:relative;display:block;aspect-ratio:16/9;background:var(--ivory);overflow:hidden;}
.vid-img img{width:100%;height:100%;object-fit:cover;display:block;}
.vid-img i{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(42,33,29,.72);}
.vid-img i::after{content:"";position:absolute;left:18px;top:14px;border-left:14px solid #fff;border-top:9px solid transparent;border-bottom:9px solid transparent;}
.vid-t{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;padding:14px 16px 16px;font-size:14px;line-height:1.6;}
@media (max-width:1080px){.vid-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:720px){.vid-grid{grid-template-columns:1fr;}}

/* 세트 카드 · 부품 묶음 제목 */
.set-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px;}
.set-card{background:#fff;border:1px solid var(--line-soft);display:flex;flex-direction:column;}
.set-img{display:flex;gap:8px;justify-content:center;align-items:center;padding:14px;border-bottom:1px solid var(--line-soft);background:#fff;height:210px;}
.set-img img{flex:1 1 0;min-width:0;max-width:50%;max-height:100%;width:auto;height:auto;object-fit:contain;}
.set-body{padding:18px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.set-card .k{font-family:var(--font-display);font-size:11px;letter-spacing:.12em;color:var(--gold-deep);}
.set-card h3{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;line-height:1.4;}
.set-card .part-spec{margin-top:auto;}
.set-card .part-spec div{grid-template-columns:56px 1fr;}
.set-card .part-spec a{border-bottom:1px solid var(--line);}
.set-card .part-spec a:hover{color:var(--gold-deep);border-color:var(--gold);}
.part-group{margin-top:clamp(30px,4vw,52px);}
.part-group[hidden]{display:none;}
.part-group-d{font-size:14px;color:var(--muted);margin:-6px 0 18px;}
.mh3 em{font-style:normal;font-family:var(--font-display);font-size:12px;color:var(--gold-deep);margin-left:8px;}
.legal-note{text-align:center;margin:0 0 56px;}
@media (max-width:1080px){.set-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:720px){.set-grid{grid-template-columns:1fr;}}
