/* v6 공용 스타일 — 홈(home.css 뒤에 로드)과 하위 페이지가 함께 씀. home.css와 겹치지 않게 이름을 따로 둠 */
@font-face{font-family:"Pretendard";src:url(../fonts/Pretendard-sub.woff2?v=7b7f7e1e8f) format("woff2-variations");font-weight:100 900;font-display:swap}
:root{--k:#1d1d1b;--k2:#55534e;--k3:#6b6861;--ln:#e2ded5;--ln2:#cfcac0;--cr:#f5f2ec;--bd:#efebe3;--gr:#144232;--gd:#7d5f36;--gdl:#c6a46e}
.pg{margin:0;font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:var(--k);background:#fff;font-size:15px;line-height:1.6;letter-spacing:-.01em;word-break:keep-all;-webkit-text-size-adjust:100%}
.pg *,.pg *::before,.pg *::after{box-sizing:border-box}
.pg h1,.pg h2,.pg h3,.pg p,.pg ul,.pg dl,.pg dd,.pg figure{margin:0;padding:0}
.pg [hidden]{display:none!important}
.pg ul{list-style:none}.pg a{color:inherit;text-decoration:none}.pg img{display:block;max-width:100%;height:auto}
.pg button,.pg input,.pg select,.pg textarea{font:inherit;color:inherit}
.cw{max-width:1200px;margin:0 auto;padding:0 40px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px}
.pg :focus-visible{outline:2px solid var(--gr);outline-offset:2px}
/* 상단 */
.util{background:var(--gr);color:#e3ebe6;font-size:12.5px}
.util .cw{display:flex;justify-content:space-between;height:34px;align-items:center;gap:16px}
.util a{color:#fff}.util span+span{margin-left:16px}
.sh{border-bottom:1px solid var(--ln);background:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:50}
.sh__in{display:flex;align-items:center;height:72px;gap:26px}
.brand{display:flex;align-items:center;gap:10px;flex:none}
.brand b{font-weight:800;font-size:24px;letter-spacing:.02em;color:var(--gr);line-height:1}
.brand b i{font-style:normal;color:var(--gd)}
.brand span{font-size:13px;line-height:1.25;border-left:1px solid var(--ln2);padding-left:10px}
.brand span em{display:block;font-style:normal;color:var(--k3);font-size:11.5px}
.gnav{display:flex;gap:24px;margin-left:auto;font-size:15px;font-weight:500}
.gnav a{padding:24px 0;border-bottom:2px solid transparent}
.gnav a:hover{color:var(--gr)}
.gnav a.on{border-color:var(--gr);color:var(--gr)}
.gnav a.pc{color:var(--k2)}
.sh .cta{flex:none;background:var(--gr);color:#fff;font-size:14px;font-weight:600;padding:9px 16px}
.sh__mb{display:none}
.mcat,.smenu{display:none}
/* 공통 */
.crumb{font-size:12.5px;color:var(--k3);padding:18px 0 0}
.crumb a:hover{color:var(--k)}.crumb i{font-style:normal;margin:0 6px;color:#a39e94}
.pghead{padding:14px 0 26px;border-bottom:1px solid var(--ln);display:flex;align-items:flex-end;gap:8px 20px;flex-wrap:wrap}
.pghead h1{font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.3}
.pghead p{color:var(--k2);font-size:14.5px;padding-bottom:4px}
.h2{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.35}
.lnk{font-size:14px;color:var(--k2);border-bottom:1px solid var(--ln2);white-space:nowrap}
.lnk:hover{color:var(--gr);border-color:var(--gr)}
.ui-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;font-size:14.5px;font-weight:600;border:1px solid var(--k);background:#fff;color:var(--k);cursor:pointer;text-align:center}
.ui-btn:hover{background:var(--cr)}
.ui-btn.pr{background:var(--gr);border-color:var(--gr);color:#fff}
.ui-btn.pr:hover{background:#0f3527}
.nt{font-size:12.5px;color:var(--k3)}
.sec{padding:64px 0 0}
.sec-h{display:flex;align-items:baseline;gap:10px 22px;margin-bottom:22px;flex-wrap:wrap}
.sec-h .lnk{margin-left:auto}
.blk{margin-top:64px}
.blk .h2{margin-bottom:6px}.blk>.nt{margin-bottom:18px}
/* 제품 카드 */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 22px}
.pgrid .im{aspect-ratio:1/1;overflow:hidden;background:var(--bd)}
.pgrid .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pgrid a:hover .im img{transform:scale(1.04)}
.pgrid .n{margin-top:12px;font-size:14.5px;font-weight:600;line-height:1.4}
.pgrid .n em{font-style:normal;font-weight:400;color:var(--k2)}
.pgrid .s{font-size:12.5px;color:var(--k3);margin-top:3px}
.pgrid li[hidden]{display:none}
/* 홈 블록 */
.lines{display:grid;grid-template-columns:7fr 5fr;gap:24px;padding:72px 0 0}
.lines a{display:block}
.lines .im{height:300px;overflow:hidden;background:var(--bd)}
.lines img{width:100%;height:100%;object-fit:cover}
.lines .cap{display:flex;justify-content:space-between;align-items:baseline;gap:4px 12px;padding:14px 0 12px;border-bottom:1px solid var(--ln)}
.lines .cap b{font-size:18px;font-weight:700}
.lines .cap span{font-size:13.5px;color:var(--k2)}
.lines a:hover b{color:var(--gr)}
.tabs{display:flex;gap:4px 16px;font-size:14px}
.tabs button{background:none;border:0;padding:4px 0;color:var(--k2);cursor:pointer;border-bottom:1px solid transparent}
.tabs button[aria-selected=true]{color:var(--k);font-weight:600;border-color:var(--k)}
.finder{margin-top:34px;padding:16px 0;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);display:flex;gap:10px 22px;flex-wrap:wrap;font-size:14px;align-items:baseline}
.finder b{font-weight:600;margin-right:4px}
.finder a{color:var(--k2)}.finder a:hover{color:var(--gr);text-decoration:underline}
.finder small{color:var(--k3);margin-left:3px;font-size:12px}
.finder .fsep{width:1px;height:12px;background:var(--ln2)}
.finder .nt{width:100%}
.types{border-top:1px solid var(--k)}
.types li{display:grid;grid-template-columns:160px 230px 1fr 170px;gap:28px;align-items:center;padding:18px 0;border-bottom:1px solid var(--ln)}
.types img{width:160px;height:90px;object-fit:cover}
.types b{font-size:16.5px;display:block}
.types .te{font-size:12.5px;color:var(--k3);letter-spacing:.02em}
.types p{color:var(--k2);font-size:14px}
.types .kw{font-size:13px;color:var(--gd);text-align:right}
.strip{display:flex;gap:16px;overflow-x:auto;scrollbar-width:thin;padding-bottom:8px}
.strip figure{flex:none;width:360px}
.strip img{width:360px;height:240px;object-fit:cover}
.strip figcaption,.gal figcaption{font-size:13px;color:var(--k2);margin-top:8px}
.strip figcaption b,.gal figcaption b{color:var(--k);font-weight:600;margin-right:6px}
.strip a:hover b{color:var(--gr)}
.cc{display:grid;grid-template-columns:1fr 1fr;margin-top:72px;border-top:1px solid var(--k)}
.cc>div{padding:34px 0 40px}
.cc>div+div{border-left:1px solid var(--ln);padding-left:40px}
.cat-row{display:flex;gap:24px;margin-top:18px;align-items:flex-start}
.cat-row img{width:220px;height:124px;object-fit:cover;border:1px solid var(--ln)}
.dl{display:grid;grid-template-columns:72px 1fr;row-gap:8px;font-size:15px;margin-top:18px}
.dl dt{color:var(--k3);font-size:14px}
.dl dd a{border-bottom:1px solid var(--ln2)}
.dl dd .maps{display:flex;gap:12px;margin-top:4px;font-size:13px}
/* 하단 */
.sf{margin-top:88px;background:var(--cr);border-top:1px solid var(--ln);font-size:13.5px;color:var(--k2)}
.sf .cw{padding-top:36px;padding-bottom:36px;display:grid;grid-template-columns:240px 1fr auto;gap:30px}
.sf p{line-height:1.8}.sf p b{color:var(--k)}
.sf nav{display:flex;flex-direction:column;gap:6px;text-align:right}
.sf nav a:hover{color:var(--gr)}
.sf .cp{grid-column:1/-1;border-top:1px solid var(--ln);padding-top:16px;font-size:12px;color:var(--k3)}
/* 목록 */
.lay{display:grid;grid-template-columns:220px 1fr;gap:40px;padding-top:28px}
.lay>div{min-width:0}
.flt h3{font-size:13px;color:var(--k3);font-weight:500;margin-bottom:6px}
.flt__top{display:flex;justify-content:space-between;align-items:baseline}
.flt__top button{background:none;border:0;font-size:12.5px;color:var(--k2);text-decoration:underline;cursor:pointer;padding:0}
.flt__close{display:none}
.fg{border-top:1px solid var(--ln)}
.fg:last-of-type{border-bottom:1px solid var(--ln)}
.fg summary{list-style:none;display:flex;justify-content:space-between;padding:13px 0;font-size:14.5px;font-weight:600;cursor:pointer}
.fg summary::-webkit-details-marker{display:none}
.fg summary::after{content:"+";font-weight:400;color:var(--k3)}
.fg[open] summary::after{content:"−"}
.fg label{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--k2);padding:4px 0;cursor:pointer}
.fg label input{width:15px;height:15px;accent-color:var(--gr);margin:0}
.fg label small{margin-left:auto;color:var(--k3);font-size:12px}
.fg .last{padding-bottom:12px}
.flt .nt{margin-top:12px;line-height:1.5}
.bar{display:flex;align-items:center;gap:14px;margin-bottom:22px;font-size:14px;flex-wrap:wrap}
.bar .cnt b{font-weight:700}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{font-size:12.5px;border:1px solid var(--ln2);padding:3px 10px;color:var(--k2);background:#fff;cursor:pointer}
.chip::after{content:" ×";color:var(--k3)}
.bar .sr{margin-left:auto;display:flex;gap:8px}
.bar input,.bar select{height:38px;border:1px solid var(--ln2);padding:0 10px;background:#fff;font-size:14px;border-radius:0}
.bar input{width:210px}
.pager{display:flex;gap:4px;justify-content:center;margin-top:44px;font-size:14px;flex-wrap:wrap}
.pager button{min-width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;background:none;cursor:pointer;padding:0 8px}
.pager button[aria-current=page]{border-color:var(--k);font-weight:600}
.empty-r{padding:60px 0;text-align:center;color:var(--k2)}
.mflt{display:none}
.scrim{display:none}
/* 상세 */
.pd{display:grid;grid-template-columns:1fr 440px;gap:48px;padding-top:24px}
.pd>div{min-width:0}
.gmain{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--bd);border:0;padding:0;cursor:zoom-in}
.gmain img{width:100%;height:100%;object-fit:cover}
.gmain.tall img{object-fit:contain}
.gmain.port{aspect-ratio:3/4}.gmain.port img{object-fit:contain}
.thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:8px}
.thumbs button{border:0;padding:0;background:var(--bd);cursor:pointer;aspect-ratio:1/1;overflow:hidden}
.thumbs img{width:100%;height:100%;object-fit:cover;opacity:.8}
.thumbs button[aria-current=true] img{opacity:1;outline:2px solid var(--k);outline-offset:-2px}
.pi h1{font-size:30px;font-weight:700;letter-spacing:-.01em;line-height:1.2}
.pi .ko{font-size:16px;color:var(--k2);margin-top:4px}
.pi .alt{font-size:13px;color:var(--k3);margin-top:6px}
.spec{width:100%;border-collapse:collapse;margin-top:24px;font-size:14px;border-top:1px solid var(--k)}
.spec th{width:110px;text-align:left;font-weight:500;color:var(--k3);padding:11px 12px 11px 0;border-bottom:1px solid var(--ln);vertical-align:top}
.spec td{padding:11px 0;border-bottom:1px solid var(--ln)}
.spec .na{color:var(--k3)}
.spec a{border-bottom:1px solid var(--ln2)}
.pi .act{display:flex;gap:8px;margin-top:24px}
.pi .act .ui-btn{flex:1}
.pi .notes{margin-top:18px;font-size:12.5px;color:var(--k3);line-height:1.7}
.slab2{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:start}
.slab2 img{width:100%}
.slab2 .r p{margin-top:12px;font-size:14px;color:var(--k2)}
.slab1{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:end}
.slab1 p{font-size:14px;color:var(--k2)}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 18px}
.gal img{width:100%;aspect-ratio:3/2;object-fit:cover;background:var(--bd)}
.gal button{display:block;width:100%;border:0;padding:0;background:none;cursor:zoom-in}
.lbx{position:fixed;inset:0;z-index:300;background:#111;display:flex;align-items:center;justify-content:center;padding:48px 16px}
.lbx[hidden]{display:none}
.lbx img{max-width:100%;max-height:100%;object-fit:contain}
.lbx button{position:absolute;top:10px;right:12px;background:none;border:0;color:#fff;font-size:30px;line-height:1;cursor:pointer;padding:8px 12px}
.lbx p{position:absolute;left:0;right:0;bottom:14px;text-align:center;color:#ddd;font-size:13px}
/* 프로젝트·회사·견적·카탈로그 */
.empty{margin-top:34px;background:var(--cr);padding:44px 48px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.empty b{font-size:19px;display:block;margin-bottom:8px}
.empty p{color:var(--k2);font-size:14.5px;max-width:640px}
.empty .act{display:flex;gap:8px}
.ab{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:34px;align-items:start}
.ab .lead{font-size:19px;line-height:1.65;font-weight:500}
.ab .lead+p{margin-top:14px;color:var(--k2)}
.info{width:100%;border-collapse:collapse;border-top:1px solid var(--k);font-size:14.5px}
.info th{width:130px;text-align:left;font-weight:500;color:var(--k3);padding:12px 12px 12px 0;border-bottom:1px solid var(--ln);vertical-align:top}
.info td{padding:12px 0;border-bottom:1px solid var(--ln)}
.ab-img img{width:100%;height:420px;object-fit:cover}
.ab-img figcaption{margin-top:8px}
.loc{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.loc .dl{margin-top:0}
.loc .act{display:flex;gap:8px;flex-wrap:wrap}
.qt{display:grid;grid-template-columns:1fr 320px;gap:56px;padding-top:30px}
.frm .row{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--ln);align-items:start;margin:0;border-left:0;border-right:0;border-top:0;min-width:0}
.frm fieldset.row{padding:14px 0}
.frm .row:first-child{border-top:1px solid var(--k)}
.frm .lb{font-size:14px;font-weight:600;padding-top:9px}
.frm legend.lb{float:left;width:150px;padding:9px 20px 0 0}
.frm .lb i{color:#a3262f;font-style:normal;margin-left:2px}
.frm input[type=text],.frm input[type=tel],.frm input[type=email],.frm select,.frm textarea{width:100%;height:44px;border:1px solid var(--ln2);padding:0 12px;background:#fff;font-size:15px;border-radius:0}
.frm textarea{height:150px;padding:10px 12px;resize:vertical}
.frm .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.frm .opts{display:flex;flex-wrap:wrap;gap:8px 18px;padding-top:9px;font-size:14px}
.frm .opts label{display:flex;gap:6px;align-items:center;cursor:pointer}
.frm .opts input{accent-color:var(--gr);margin:0}
.frm .help{font-size:12.5px;color:var(--k3);margin-top:6px}
.frm .err{color:#a3262f;font-size:13px;margin-top:10px}
.frm .hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.frm .st{font-size:14px;margin-top:12px;line-height:1.6}.frm .st.ok{color:var(--gr);font-weight:600}.frm .st.bad{color:#a3262f}.frm .st a{color:inherit;text-decoration:underline}
.frm button[aria-busy=true]{opacity:.6;cursor:progress}
.agree{margin-top:18px;background:var(--cr);padding:16px 18px;font-size:13px;color:var(--k2)}
.agree label{display:flex;gap:8px;color:var(--k);font-weight:600;margin-top:8px;align-items:center;cursor:pointer}
.agree input{accent-color:var(--gr);margin:0}
.submit{margin-top:22px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.side{border-top:1px solid var(--k);padding-top:18px;font-size:14px}
.side h2{font-size:16px;margin-bottom:12px}
.side .big{font-size:24px;font-weight:700;color:var(--gr);letter-spacing:0}
.side .dl{grid-template-columns:56px 1fr;font-size:14px;margin-top:12px}
.side hr{border:0;border-top:1px solid var(--ln);margin:20px 0}
.ctab{width:100%;border-collapse:collapse;margin-top:30px;border-top:1px solid var(--k)}
.ctab td{border-bottom:1px solid var(--ln);padding:22px 0;vertical-align:top;font-size:14.5px}
.ctab .cv{width:300px}
.ctab .cv img{width:260px;border:1px solid var(--ln)}
.ctab b{font-size:18px;display:block;margin-bottom:6px}
.ctab .meta{color:var(--k2);font-size:13.5px}
.ctab .bt{width:290px;text-align:right}
.ctab .bt .ui-btn{margin:0 0 6px 6px}
.toc{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:20px}
.toc h3{font-size:16px;padding-bottom:10px;border-bottom:1px solid var(--k)}
.toc li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--ln);font-size:14px}
.toc li a{color:var(--k2);white-space:nowrap}.toc li a:hover{color:var(--gr);text-decoration:underline}
/* 홈 전용 덮어쓰기: 줌 글씨는 고딕 */
.hero h1{font-family:"Pretendard",sans-serif;font-weight:700;letter-spacing:-.03em}
.zoom__name .en,.sp .en{font-family:"Pretendard",sans-serif;font-weight:600;letter-spacing:-.02em}
.zoom__name .en{font-size:clamp(34px,4.6vw,64px);line-height:1.1}
.sp .en{font-size:20px}
.home-main{background:#fff}
@media (max-width:1100px){
 .gnav{gap:16px;font-size:14px}.brand span{display:none}
 .types li{grid-template-columns:140px 1fr 1fr;gap:18px}.types .kw{grid-column:2/-1;text-align:left}
 .types img{width:140px}
}
@media (max-width:767px){
 .pg{font-size:14.5px}
 .cw{padding:0 20px}
 .util{display:none}
 .sh__in{height:58px;gap:12px}
 .brand b{font-size:21px}.brand span{display:block;font-size:12px}.brand span em{display:none}
 .gnav,.sh .cta{display:none}
 .sh__mb{display:flex;margin-left:auto;gap:4px;align-items:center;font-size:14px}
 .sh__mb a{padding:10px 8px;font-weight:600;color:var(--gr)}
 .sh__btn{width:44px;height:44px;background:none;border:0;position:relative;cursor:pointer;padding:0}
 .sh__btn span{position:absolute;left:11px;right:11px;height:2px;background:var(--k);transition:transform .2s}
 .sh__btn span:first-child{top:17px}.sh__btn span:last-child{top:25px}
 .sh.is-open .sh__btn span:first-child{transform:translateY(4px) rotate(45deg)}
 .sh.is-open .sh__btn span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .smenu{display:block;max-height:0;overflow:hidden;transition:max-height .3s;background:#fff}
 .sh.is-open .smenu{max-height:560px;border-top:1px solid var(--ln)}
 .smenu a{display:block;padding:14px 20px;font-size:16px;border-bottom:1px solid var(--ln)}
 .smenu a.q{color:var(--gr);font-weight:700}
 .mcat{display:flex;gap:18px;overflow-x:auto;white-space:nowrap;padding:0 20px;height:44px;align-items:center;border-top:1px solid var(--ln);font-size:14px;font-weight:500;scrollbar-width:none}
 .mcat::-webkit-scrollbar{display:none}
 .mcat a.on{color:var(--gr);font-weight:700}
 .pghead h1{font-size:24px}
 .lines{grid-template-columns:1fr;gap:20px;padding-top:48px}
 .lines .im{height:200px}
 .lines .cap{flex-direction:column}
 .sec{padding-top:52px}
 .sec-h .tabs{order:3;width:100%}
 .pgrid{grid-template-columns:repeat(2,1fr);gap:24px 12px}
 .pgrid .n{font-size:13.5px}
 .types li{grid-template-columns:96px 1fr;gap:4px 14px;padding:14px 0}
 .types img{width:96px;height:96px;grid-row:span 3}
 .types .kw{grid-column:auto;text-align:left}
 .strip{gap:10px}.strip figure{width:250px}.strip img{width:250px;height:170px}
 .cc{grid-template-columns:1fr;margin-top:52px}
 .cc>div+div{border-left:0;padding-left:0;border-top:1px solid var(--ln)}
 .cat-row img{width:130px;height:74px}
 .finder{gap:8px 14px}.finder .fsep{display:none}.finder b{width:100%}
 .sf{margin-top:64px}
 .sf .cw{grid-template-columns:1fr;gap:14px}
 .sf nav{flex-direction:row;flex-wrap:wrap;gap:6px 14px;text-align:left}
 .lay{grid-template-columns:1fr;gap:0;padding-top:16px}
 .flt{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fff;max-height:82vh;overflow-y:auto;padding:18px 20px 24px;transform:translateY(105%);transition:transform .3s;box-shadow:0 -6px 24px rgba(0,0,0,.15);visibility:hidden}
 .flt.is-open{transform:none;visibility:visible}
 .flt__close{display:flex;position:sticky;bottom:-24px;margin:16px -20px -24px;padding:12px 20px;background:#fff;border-top:1px solid var(--ln);gap:8px}
 .flt__close .ui-btn{flex:1}
 .scrim{display:block;position:fixed;inset:0;z-index:89;background:rgba(0,0,0,.35)}
 .scrim[hidden]{display:none}
 .mflt{display:flex;gap:8px;overflow-x:auto;margin-bottom:14px;scrollbar-width:none}
 .mflt button{flex:none;border:1px solid var(--ln2);padding:7px 12px;font-size:13.5px;background:#fff;cursor:pointer}
 .mflt button.f{background:var(--k);color:#fff;border-color:var(--k)}
 .bar{gap:10px}
 .bar .sr{margin-left:0;width:100%}
 .bar input{flex:1;width:auto;min-width:0}
 .pd{grid-template-columns:1fr;gap:26px;padding-top:14px}
 .thumbs{gap:5px}
 .pi h1{font-size:25px}
 .pi .act{flex-direction:column}.pi .act .ui-btn{flex:none;width:100%}
 .slab2,.slab1{grid-template-columns:1fr}
 .slab2>img,.slab1>img{width:60%}
 .gal{grid-template-columns:1fr;gap:18px}
 .blk{margin-top:48px}
 .empty{grid-template-columns:1fr;padding:28px 22px}
 .empty .act{flex-direction:column}
 .ab,.loc,.qt{grid-template-columns:1fr;gap:28px}
 .ab .lead{font-size:17px}
 .ab-img img{height:240px}
 .frm .row{grid-template-columns:1fr;gap:6px;padding:12px 0}
 .frm legend.lb{float:none;width:auto;padding:0 0 6px}
 .frm .lb{padding-top:0}
 .frm .two{grid-template-columns:1fr}
 .ctab,.ctab tbody,.ctab tr,.ctab td{display:block;width:100%!important}
 .ctab td{border:0;padding:8px 0;text-align:left!important}
 .ctab tr{border-bottom:1px solid var(--ln);padding:16px 0}
 .ctab .cv img{width:100%}
 .ctab .bt .ui-btn{margin:0 6px 6px 0}
 .toc{grid-template-columns:1fr;gap:28px}
 .zoom__name .en{font-size:30px}
}
.hd.is-open .mnav{max-height:600px}

/* 모바일 메뉴: 열면 화면 전체를 불투명하게 덮음(아래 페이지·가로 메뉴가 비치지 않게). 열린 동안 스크롤은 site.js가 잠금 */
@media (max-width:767px){
 .sh.is-open{z-index:200}
 .sh.is-open .sh__in{position:fixed;top:0;left:0;right:0;z-index:2;background:#fff;border-bottom:1px solid var(--ln)}
 .sh.is-open .smenu{position:fixed;left:0;right:0;top:58px;bottom:0;height:calc(100vh - 58px);height:calc(100dvh - 58px);max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:1;background:#fff;transition:none}
 .hd.is-open{z-index:200}
 .hd.is-open .mnav{height:calc(100vh - 60px);height:calc(100dvh - 60px);max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#fff}
}

/* '슬랩' 묶음 메뉴: PC 드롭다운 · 모바일 아코디언 (기존 글꼴·색, 작은 화살표만) */
.dd{position:relative;display:flex;align-items:center}
.dd__btn{display:flex;align-items:center;gap:6px;background:none;border:0;padding:24px 0;margin:0;font:inherit;color:inherit;cursor:pointer;border-bottom:2px solid transparent}
.gnav .dd__btn:hover{color:var(--gr)}
.gnav .dd__btn.on{border-color:var(--gr);color:var(--gr)}
.arw{display:block;flex:none;transition:transform .2s}
.dd.is-open .arw,.acc__btn[aria-expanded=true] .arw{transform:rotate(180deg)}
.dd__menu{position:absolute;top:100%;left:-16px;min-width:170px;background:#fff;border:1px solid var(--ln);padding:6px 0;z-index:30;color:var(--k);text-align:left}
.dd__menu::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.dd__menu[hidden]{display:none}
.pg .dd__menu a,.gnb .dd__menu a{display:block;padding:10px 16px;border:0;font-size:14.5px;font-weight:500;color:var(--k);opacity:1;white-space:nowrap;text-decoration:none}
.pg .dd__menu a:hover{background:var(--cr);color:var(--gr)}
.pg .dd__menu a.on{color:var(--gr);font-weight:700}
.gnb .dd__btn{padding:0;font-size:15px;font-weight:500;opacity:.92}
.gnb .dd__btn:hover,.gnb .dd.is-open .dd__btn{opacity:1}
.gnb .dd__menu{top:calc(100% + 16px)}
.acc__btn{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 20px;margin:0;font:inherit;font-size:16px;background:none;border:0;border-bottom:1px solid var(--ln);text-align:left;color:inherit;cursor:pointer}
.mnav .acc__btn{padding:15px var(--pad);border-bottom:1px solid var(--line)}
.acc__panel[hidden]{display:none}
.pg .acc__panel a{padding-left:36px;font-size:15px;color:var(--k2)}
.mnav .acc__panel a{padding-left:calc(var(--pad) + 16px)}
.pg .acc__panel a.on{color:var(--gr);font-weight:700}
.mnav .acc__panel a:last-child{color:var(--k2);font-weight:400;border-bottom:1px solid var(--line)}
@media (min-width:768px){.acc__btn,.acc__panel{display:none}}

/* 홈 모바일 메뉴를 하위 페이지 메뉴와 똑같이(열린 상태만): 머리 'BDL | 바라디엠에스' + 전화 + ×, 항목 글자·줄 간격·색 동일, 견적요청은 사이트 기본 초록(--gr).
   닫힌 홈 머리(히어로 위 투명)는 그대로 */
.hd .brand,.hd .hd__tel{display:none}
@media (max-width:767px){
 .hd.is-open{background:#fff;color:var(--k);border-bottom:0}
 .hd.is-open .hd__in{height:58px;gap:4px;padding:0 20px;background:#fff;border-bottom:1px solid var(--ln)}
 .hd.is-open .logo{display:none}
 .hd.is-open .brand{display:flex}
 .hd.is-open .hd__tel{display:block;margin-left:auto;padding:10px 8px;font-size:14px;font-weight:600;color:var(--gr)}
 .hd.is-open .hd__menu{margin-left:0;width:44px;height:44px;color:var(--k)}
 .hd.is-open .hd__menu span{left:11px;right:11px;height:2px;background:var(--k)}
 .hd.is-open .hd__menu span:first-child{top:17px;transform:translateY(4px) rotate(45deg)}
 .hd.is-open .hd__menu span:last-child{top:25px;transform:translateY(-4px) rotate(-45deg)}
 .hd.is-open .mnav{height:calc(100vh - 58px);height:calc(100dvh - 58px);border-top:1px solid var(--ln);color:var(--k)}
 .mnav a,.mnav a:last-child{display:block;padding:14px 20px;font-size:16px;font-weight:400;color:var(--k);border-bottom:1px solid var(--ln)}
 .mnav a.q{color:var(--gr);font-weight:700}
 .mnav .acc__btn{padding:14px 20px;border-bottom:1px solid var(--ln)}
 .mnav .acc__panel a,.mnav .acc__panel a:last-child{padding-left:36px;font-size:15px;color:var(--k2);font-weight:400}
 .mnav .acc__panel a.on{color:var(--gr);font-weight:700}
 /* 아이폰 홈 막대(safe-area)에 마지막 항목이 가리지 않게 */
 .sh.is-open .smenu,.hd.is-open .mnav{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
}
