/* BIOVANKOREA v4 drafts — shared base (type scale · global nav · search · local nav · footer · components)
   Spec: v4/APPLE_SPEC.md. One type scale for every page and every draft. */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css");
:root{
 --g:#72AF2C;--m:#898989;--k:#000;--ink:#1d1d1f;--gr:#f5f5f7;--l:#d2d2d7;--l2:#e8e8ed;
 --ff:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;
 /* type scale (desktop ≥1069) — measured from apple.com/kr */
 --t-hero:80px;--lh-hero:1.15;      /* page-header 80/92 */
 --t-h1:56px;--lh-h1:1.18;          /* tile/section headline 56/66 */
 --t-h2:48px;--lh-h2:1.19;          /* section headline 48/57 */
 --t-h3:28px;--lh-h3:1.25;          /* tile subhead / card headline 28/35 */
 --t-lead:21px;--lh-lead:1.52;      /* intro copy 21/32 */
 --t-callout:19px;--lh-callout:1.32;/* tile callout 19/25 */
 --t-body:17px;--lh-body:1.59;      /* body 17/27 */
 --t-sm:14px;--lh-sm:1.57;          /* link / eyebrow 14/22 */
 --t-xs:12px;--lh-xs:1.42;          /* caption / footer 12/17 */
 --t-nav:14px;
 --gn-h:44px;--ln-h:52px;--wrap:1024px;--pad:22px;
 --r-xl:32px;--r-l:18px;--r-m:12px;--gap:20px;
}
@media(max-width:1068px){:root{--t-hero:64px;--t-h1:48px;--t-h2:40px;--t-h3:24px;--t-lead:19px}}
@media(max-width:833px){:root{--gn-h:48px;--ln-h:48px;--pad:22px}}
@media(max-width:734px){:root{--t-hero:48px;--lh-hero:1.19;--t-h1:32px;--lh-h1:1.22;--t-h2:32px;--lh-h2:1.22;--t-h3:21px;--lh-h3:1.29;--t-lead:19px;--lh-lead:1.42;--t-callout:17px;--r-xl:24px;--r-l:16px;--gap:12px;--pad:24px}}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--gn-h) + var(--ln-h) + 12px)}
body{font-family:var(--ff);font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss06"}
a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}ul,ol{list-style:none}button,input{font:inherit;color:inherit}
h1,h2,h3,h4{font-weight:600;letter-spacing:-.015em;word-break:keep-all}p,li,dd{word-break:keep-all}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.t-hero{font-size:var(--t-hero);line-height:var(--lh-hero);font-weight:700;letter-spacing:-.025em}
.t-h1{font-size:var(--t-h1);line-height:var(--lh-h1);font-weight:700;letter-spacing:-.02em}
.t-h2{font-size:var(--t-h2);line-height:var(--lh-h2);font-weight:700;letter-spacing:-.02em}
.t-h3{font-size:var(--t-h3);line-height:var(--lh-h3);font-weight:600}
.t-lead{font-size:var(--t-lead);line-height:var(--lh-lead);font-weight:500}
.t-callout{font-size:var(--t-callout);line-height:var(--lh-callout)}
.t-sm{font-size:var(--t-sm);line-height:var(--lh-sm)}.t-xs{font-size:var(--t-xs);line-height:var(--lh-xs)}
.eyebrow{font-size:var(--t-sm);line-height:var(--lh-sm);font-weight:700;color:var(--m);letter-spacing:0}
.mute{color:var(--m)}.g-dot:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--g);margin-right:8px;vertical-align:2px}
/* ---------- global nav (identical on every page) ---------- */
.gn{position:sticky;top:0;z-index:1000;height:var(--gn-h);font-family:var(--ff);line-height:1}
.gn:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(251,251,253,.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}
.gn:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(0,0,0,.08)}
.gn-in{position:relative;max-width:var(--wrap);height:100%;margin:0 auto;padding:0 22px;display:flex;align-items:center;justify-content:space-between}
.gn-logo{display:flex;align-items:center;height:100%;flex:0 0 auto}.gn-logo img{width:59px;height:22px}
.gn-menu{display:flex;align-items:center;gap:40px;height:100%}
.gn-menu a{position:relative;display:flex;align-items:center;height:100%;font-size:var(--t-nav);font-weight:500;letter-spacing:-.01em;white-space:nowrap;color:var(--ink);opacity:.8;transition:opacity .2s}
.gn-menu a:hover,.gn-menu a[aria-current]{opacity:1}
.gn-menu a[aria-current]:after{content:"";position:absolute;left:50%;bottom:7px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--g)}
.gn-act{display:flex;align-items:center;height:100%;flex:0 0 auto}
.gn-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-right:-13px;background:none;border:0;cursor:pointer;color:var(--ink);opacity:.8;transition:opacity .2s,color .2s;-webkit-tap-highlight-color:transparent}
.gn-btn:hover{opacity:1;color:var(--g)}.gn-btn svg{width:17px;height:17px}
.gn-burger{display:none;position:relative}.gn-burger i{position:absolute;left:14px;width:17px;height:1.2px;background:currentColor;transition:transform .3s,top .3s}.gn-burger i:first-child{top:18px}.gn-burger i:last-child{top:25px}
.gn.open .gn-burger i:first-child{top:21.5px;transform:rotate(45deg)}.gn.open .gn-burger i:last-child{top:21.5px;transform:rotate(-45deg)}
@media(max-width:833px){
 .gn-burger{display:flex}.gn-search{margin-right:0}
 .gn-menu{position:fixed;left:0;right:0;top:var(--gn-h);height:calc(100dvh - var(--gn-h));flex-direction:column;align-items:stretch;gap:0;padding:12px 48px 48px;background:#fbfbfd;overflow-y:auto;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}
 .gn.open .gn-menu{visibility:visible;opacity:1}
 .gn-menu a{height:auto;min-height:56px;font-size:28px;font-weight:600;letter-spacing:-.02em;opacity:0;transform:translateY(-6px);transition:opacity .35s,transform .35s}
 .gn.open .gn-menu a{opacity:1;transform:none}.gn-menu a[aria-current]:after{left:auto;right:0;top:50%;bottom:auto;margin:-2px 0 0}
 .gn.open .gn-menu a:nth-child(2){transition-delay:.03s}.gn.open .gn-menu a:nth-child(3){transition-delay:.06s}.gn.open .gn-menu a:nth-child(4){transition-delay:.09s}.gn.open .gn-menu a:nth-child(5){transition-delay:.12s}
 .gn-in{padding:0 16px}
}
body.lock{overflow:hidden}
/* ---------- search panel ---------- */
.sp{position:fixed;left:0;right:0;top:var(--gn-h);z-index:999;background:#fbfbfd;max-height:calc(100dvh - var(--gn-h));overflow-y:auto;visibility:hidden;opacity:0;transform:translateY(-12px);transition:opacity .28s,transform .28s,visibility .28s;border-bottom:1px solid rgba(0,0,0,.06)}
.sp.on{visibility:visible;opacity:1;transform:none}
.sp-in{max-width:var(--wrap);margin:0 auto;padding:40px 22px 64px}
.sp-f{display:flex;align-items:center;gap:12px;padding:0 0 0 2px}
.sp-f svg{width:22px;height:22px;flex:0 0 auto;color:var(--m)}
.sp-q{flex:1;min-width:0;height:48px;border:0;background:none;outline:0;font-size:24px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.sp-q::placeholder{color:var(--m)}.sp-q::-webkit-search-cancel-button{display:none}
.sp-x{flex:0 0 auto;width:44px;height:44px;border:0;background:none;cursor:pointer;color:var(--m);font-size:22px;line-height:1;border-radius:50%}.sp-x:hover{color:var(--ink)}
.sp-r{margin-top:28px}
.sp-g+.sp-g{margin-top:24px}
.sp-h{font-size:12px;line-height:16px;color:var(--m);margin-bottom:10px}
.sp-r a{display:flex;align-items:center;gap:12px;min-height:44px;padding:6px 8px;margin:0 -8px;border-radius:10px;font-size:15px;line-height:1.4;color:var(--ink)}
.sp-r a:before{content:"→";color:var(--m);font-size:13px;flex:0 0 auto}
.sp-r a:hover,.sp-r a.sel{background:rgba(0,0,0,.05)}.sp-r a:hover:before,.sp-r a.sel:before{color:var(--g)}
.sp-r a small{margin-left:auto;padding-left:16px;font-size:12px;color:var(--m);white-space:nowrap}
.sp-r a mark{background:none;color:inherit;font-weight:700;box-shadow:inset 0 -2px 0 var(--g)}
.sp-none{font-size:17px;color:var(--m);padding:8px 0}.sp-none small{display:block;font-size:12px;margin-top:6px}
.sp-scrim{position:fixed;left:0;right:0;top:var(--gn-h);bottom:0;z-index:998;background:rgba(232,232,237,.4);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);visibility:hidden;opacity:0;transition:opacity .28s,visibility .28s}
.sp-scrim.on{visibility:visible;opacity:1}
@media(max-width:734px){.sp-in{padding:24px 24px 48px}.sp-q{font-size:21px}.sp-r a small{display:none}}
/* ---------- local nav (subpages) ---------- */
.ln{position:sticky;top:var(--gn-h);z-index:900;height:var(--ln-h)}
.ln:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(251,251,253,.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}
.ln:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(0,0,0,.16)}
.ln-in{max-width:var(--wrap);height:100%;margin:0 auto;padding:0 22px;display:flex;align-items:center;justify-content:space-between}
.ln-t{font-size:21px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}
.ln-m{display:flex;gap:24px}.ln-m a{font-size:12px;line-height:22px;color:var(--ink);opacity:.88;white-space:nowrap}.ln-m a:hover{opacity:1;color:var(--g)}
.ln-tg{display:none;width:44px;height:44px;margin-right:-12px;border:0;background:none;cursor:pointer;color:inherit}.ln-tg svg{width:12px;height:12px;margin:auto;transition:transform .3s}
@media(max-width:833px){.ln-in{padding:0 16px}.ln-t{font-size:19px}.ln-tg{display:flex}
 .ln-m{position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;padding:8px 16px 16px;background:#fbfbfd;border-bottom:1px solid rgba(0,0,0,.16);visibility:hidden;opacity:0;transform:translateY(-6px);transition:.25s}
 .ln.open .ln-m{visibility:visible;opacity:1;transform:none}.ln.open .ln-tg svg{transform:rotate(180deg)}
 .ln-m a{font-size:17px;line-height:44px;min-height:44px;border-bottom:1px solid var(--l2)}.ln-m a:last-child{border:0}}
/* ---------- buttons & links ---------- */
.btns{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 21px;border-radius:980px;font-size:17px;line-height:1.18;font-weight:500;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s;white-space:nowrap}
.btn.pri{background:var(--ink);color:#fff}.btn.pri:hover{background:var(--g)}
.btn.sec{border-color:currentColor;background:transparent}.btn.sec:hover{color:var(--g)}
.on-dark .btn.pri,.dk .btn.pri{background:#f5f5f7;color:#000}.on-dark .btn.pri:hover,.dk .btn.pri:hover{background:var(--g);color:#fff}
.lk{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-size:var(--t-callout);color:inherit}.lk:after{content:"›";font-size:1.2em;line-height:1;transform:translateY(-1px)}.lk:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--g)}
/* ---------- chips / filters ---------- */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:7px 14px;border-radius:980px;border:1px solid var(--l);background:transparent;font-size:14px;line-height:1.2;cursor:pointer;color:inherit;transition:.2s}
.chip em{font-style:normal;font-size:12px;color:var(--m)}.chip:hover{border-color:var(--ink)}
.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.chip.on em{color:#bdbdbd}
@media(max-width:734px){.chip{min-height:44px;padding:10px 16px}}
.fx{display:grid;grid-template-columns:120px 1fr;gap:10px 24px;align-items:start;padding:14px 0;border-top:1px solid var(--l2)}
.fx>p{font-size:12px;line-height:36px;font-weight:600;color:var(--m)}
.fbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 32px}
.fbar .cnt{font-size:14px;color:var(--m)}.fbar .cnt b{font-size:28px;font-weight:700;color:var(--ink);margin-right:6px;letter-spacing:-.02em}
.qbox{position:relative;width:320px;max-width:100%}.qbox input{width:100%;height:44px;padding:0 16px 0 40px;border:1px solid var(--l);border-radius:12px;background:#fff;font-size:15px;outline:0;color:var(--ink)}.qbox input:focus{border-color:var(--ink)}
.qbox svg{position:absolute;left:14px;top:50%;width:15px;height:15px;margin-top:-7.5px;color:var(--m)}
.ftg{display:none}
@media(max-width:734px){.fx{grid-template-columns:1fr;gap:6px}.fx>p{line-height:20px}.fbar{flex-direction:column;align-items:stretch}.qbox{width:100%}
 .ftg{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:0 16px;border:1px solid var(--l);border-radius:12px;background:transparent;font-size:15px;font-weight:600;cursor:pointer}
 .ftg i{font-style:normal;font-size:20px;font-weight:400}.fl[data-c]:not(.open)>.fx{display:none}}
/* ---------- footer (grey sitemap) ---------- */
.ft{background:var(--gr);color:rgba(0,0,0,.56);font-size:12px;line-height:1.42}
.ft-in{max-width:var(--wrap);margin:0 auto;padding:17px 22px 21px}
.ft-note{padding:0 0 17px;border-bottom:1px solid var(--l)}
.ft-map{display:grid;grid-template-columns:repeat(5,1fr);gap:0 24px;padding:20px 0 30px}
.ft-col summary{list-style:none;font-weight:600;color:rgba(0,0,0,.88);margin-bottom:9px;cursor:default}.ft-col summary::-webkit-details-marker{display:none}
.ft-col li{margin-bottom:8px}.ft-col a{color:rgba(0,0,0,.72)}.ft-col a:hover{color:var(--ink);text-decoration:underline}
.ft-col .mt{margin-top:20px}
.ft-bt{display:flex;justify-content:space-between;gap:24px;padding-top:16px;border-top:1px solid var(--l)}.ft-bt .r{text-align:right}
@media(max-width:833px){.ft-map{grid-template-columns:1fr;padding:6px 0 16px}.ft-col{border-bottom:1px solid var(--l)}
 .ft-col summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin:0;font-size:14px;cursor:pointer}.ft-col summary:after{content:"+";font-weight:300;font-size:20px;color:var(--m)}.ft-col[open] summary:after{content:"−"}
 .ft-col ul{padding:0 0 12px 12px}.ft-col li{margin:0}.ft-col li a,.ft-col li span{display:block;padding:8px 0;font-size:14px}
 .ft-bt{flex-direction:column}.ft-bt .r{text-align:left}}
/* ---------- reveal ---------- */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.25,.1,.25,1),transform .9s cubic-bezier(.25,.1,.25,1)}
.rv.in{opacity:1;transform:none}.noanim .rv{opacity:1;transform:none;transition:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}*{scroll-behavior:auto!important}}
/* ---------- shared diagram strokes ---------- */
.dg .ln{fill:none;stroke:currentColor;stroke-width:1.4}.dg .ln.g,.dg .g{stroke:var(--g)}.dg .dot{fill:var(--g)}.dg .fill{fill:var(--ink)}
.dg .lb{font:600 20px var(--ff);fill:currentColor;letter-spacing:-.02em}.dg .lbe{font:600 10px var(--ff);fill:var(--m);letter-spacing:.16em}.dg .lbw{font:700 20px var(--ff);fill:#fff}.dg .lbk{font:700 16px var(--ff);fill:currentColor}
.dk .dg .fill{fill:#f5f5f7}.dk .dg .lbw{fill:#000}
/* ---------- data-driven parts ---------- */
.yrs{display:flex;align-items:flex-end;gap:6px;height:96px;width:100%}
.yrs i{position:relative;flex:1;min-width:6px;background:currentColor;opacity:.28;border-radius:3px 3px 0 0}.yrs i.g{background:var(--g);opacity:1}
.yrs i span{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);font-size:11px;font-style:normal;color:var(--m);white-space:nowrap;display:none}.yrs i.lab span{display:block}
.empty{padding:64px 0;text-align:center;color:var(--m);font-size:19px}.empty small{display:block;font-size:14px;margin-top:8px}
.hl{outline:2px solid var(--g);outline-offset:4px}
.chip:disabled{opacity:.35;cursor:default}.chip:disabled:hover{border-color:var(--l)}
.mx-w{overflow-x:auto;-webkit-overflow-scrolling:touch}
.mx{width:100%;border-collapse:collapse;font-size:15px;min-width:720px}.mx th,.mx td{padding:16px 12px;text-align:center;border-bottom:1px solid var(--l2);font-weight:400}.mx th{font-size:12px;color:var(--m);font-weight:600}.mx td:first-child,.mx th:first-child{text-align:left;font-weight:700}
.mx .y{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--g)}.mx .n{color:var(--l)}
.mxm{display:none}
@media(max-width:734px){.mx-w{display:none}.mxm{display:grid;gap:12px}.mxm>div{padding:20px;border-radius:var(--r-l);border:1px solid var(--l2)}.mxm h4{font-size:19px;margin-bottom:8px}.mxm li{font-size:15px;padding:4px 0}.mxm li:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--g);margin-right:10px;vertical-align:1px}}
html.noln{--ln-h:0px}

/* ---------- 평택호 issue page (v4) ---------- */
.ln-m a[aria-current]{opacity:1;color:var(--g)}
.pt-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 28px;padding:18px 22px;border-radius:var(--r-l);border:1px solid var(--l);font-size:15px;line-height:1.4;transition:border-color .2s}
.pt-cta b{font-weight:700;margin-right:10px}.pt-cta i{font-style:normal;font-size:22px;color:var(--m)}.pt-cta:hover{border-color:var(--g)}.pt-cta:hover i{color:var(--g)}
.pt-st{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);padding:4px 0 28px;border-bottom:1px solid var(--l2)}
.pt-st div b{display:block;font-size:40px;line-height:1.1;font-weight:700;letter-spacing:-.03em}.pt-st div b small{font-size:17px;font-weight:600;margin-left:3px;letter-spacing:0}
.pt-st div span{display:block;margin-top:4px;font-size:13px;color:var(--m)}.pt-up{grid-column:1/-1;font-size:12px;color:var(--m)}
.pt-yr{padding:28px 0 8px}.pt-yh{font-size:14px;font-weight:600;margin-bottom:14px}.pt-yh .mute{font-weight:400;font-size:12px;margin-left:8px}
.pyr{display:flex;align-items:flex-end;gap:8px;height:168px;padding-bottom:26px}
.pyr button{position:relative;flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;padding:0;border:0;background:none;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}
.pyr i{display:block;background:currentColor;opacity:.22;border-radius:4px 4px 0 0;transition:opacity .2s,background .2s}
.pyr em{font-style:normal;font-size:12px;font-weight:600;text-align:center;margin-bottom:4px;color:var(--m)}
.pyr span{position:absolute;left:0;right:0;bottom:-24px;text-align:center;font-size:11px;color:var(--m);white-space:nowrap}
.pyr button:hover i{opacity:.45}.pyr button.g i,.pyr button.on i{background:var(--g);opacity:1}.pyr button.on em,.pyr button.on span{color:var(--g);font-weight:700}
.pyr button.dim i{opacity:.12}.pyr button:focus-visible{outline:2px solid var(--g);outline-offset:2px;border-radius:4px}
.tgl{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:6px 14px 6px 8px;border-radius:980px;border:1px solid var(--l);background:transparent;font-size:14px;line-height:1.2;color:inherit;cursor:pointer;transition:.2s}
.tgl i{position:relative;width:34px;height:20px;border-radius:20px;background:var(--l);transition:background .2s}.tgl i:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .2s}
.tgl.on i{background:var(--g)}.tgl.on i:after{transform:translateX(14px)}.tgl em{font-style:normal;font-size:12px;color:var(--m)}.tgl:hover{border-color:var(--ink)}
.pt-my{font-style:normal;color:var(--g);font-weight:600}
.pt-note{margin-top:28px;font-size:12px;line-height:1.6;color:var(--m)}
@media(max-width:734px){.pt-st{grid-template-columns:1fr 1fr;gap:18px 12px}.pt-st div b{font-size:30px}.pyr{gap:4px;height:140px}.pyr em{font-size:10px}.pyr span{font-size:10px}.tgl{min-height:44px}.pt-cta{padding:16px 18px}}
/* ---------- 연혁 roadmap (계획) ---------- */
.rm{margin:48px 0 8px;padding:28px 28px 22px;border:1.5px dashed var(--l);border-radius:var(--r-l);color:#6e6e73}
.rm-h{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700;color:var(--ink);margin-bottom:20px}
.rm-tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1px solid var(--m);border-radius:980px;font-size:12px;font-weight:600;color:var(--m);letter-spacing:.02em}
.rm-l{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:none}
.rm-l li{position:relative;padding-top:18px;border-top:1px dashed var(--l)}
.rm-l li:before{content:"";position:absolute;left:0;top:-5px;width:9px;height:9px;border-radius:50%;border:1.5px solid var(--m);background:transparent}
.rm-l b{display:flex;align-items:baseline;gap:8px;font-size:28px;line-height:1.1;font-weight:700;letter-spacing:-.03em;color:var(--m)}
.rm-l b em{font-style:normal;font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--m)}
.rm-l h4{margin:10px 0 6px;font-size:16px;line-height:1.4;font-weight:600;color:#424245}
.rm-l p{font-size:14px;line-height:1.55;color:var(--m)}
.rm-n{margin-top:20px;font-size:12px;line-height:1.6;color:var(--m)}
@media(max-width:1068px){.rm-l{grid-template-columns:1fr 1fr;gap:24px 20px}}
@media(max-width:734px){.rm{padding:22px 20px 18px;margin-top:36px}.rm-l{grid-template-columns:1fr;gap:18px}.rm-l b{font-size:24px}}
.dg .fl text{font:500 13px var(--ff);fill:#898989;opacity:.6;letter-spacing:-.01em}
@media(max-width:734px){.dg .fl text{font-size:20px}}
/* 연도별 막대 (클릭 가능) */
.yrs.yc{height:auto;gap:6px;align-items:stretch}
.yb{position:relative;flex:1 1 0;min-width:0;height:124px;display:flex;flex-direction:column;justify-content:flex-end;padding:0;margin:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent}
.yb i{display:block;width:100%;background:currentColor;opacity:.28;border-radius:3px 3px 0 0;transition:opacity .2s,background-color .2s}
.yb.g i{background:var(--g);opacity:1}
.yb span{display:block;margin-top:8px;height:14px;font-size:11px;line-height:14px;font-style:normal;color:var(--m);text-align:center;white-space:nowrap;transition:color .2s}
.yb:hover i{opacity:.55}.yb.g:hover i{opacity:.8}.yb:hover span{color:currentColor}
.yrs.has .yb i,.yrs.has .yb.g i{background:currentColor;opacity:.18}
.yrs.has .yb:hover i{opacity:.4}
.yrs .yb.on i{background:var(--g);opacity:1}
.yrs .yb.on span{color:var(--g);font-weight:700}
.yb:focus-visible{outline:2px solid var(--g);outline-offset:3px;border-radius:4px}
#list{scroll-margin-top:96px}
@media(max-width:734px){.yrs.yc{overflow-x:auto;gap:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}.yrs.yc::-webkit-scrollbar{display:none}.yb{flex:1 0 44px;min-width:44px}.yb span{font-size:10px}}
.yb i{flex:none;min-width:0;position:static}
a.ph{display:block}
/* 프로젝트 목록 카드 전체 클릭 */
.pc{position:relative}.pc h3 a.pc-a{color:inherit}.pc h3 a.pc-a:after{content:"";position:absolute;inset:0;z-index:1}.pc .pc-rel{position:relative;z-index:2}.pc:hover h3 a{text-decoration:underline;text-underline-offset:4px}
/* 프로젝트 상세 */
.pdx{padding-top:40px}
.pd{max-width:1080px;margin:0 auto}
.pd-load{padding:120px 0;text-align:center}
.pd-bk a{display:inline-flex;align-items:center;min-height:44px;font-size:15px;color:var(--m)}.pd-bk a:hover{color:inherit}
.pd-hd{margin:12px 0 36px;max-width:860px}.pd-hd h1{margin-top:10px;word-break:keep-all}
.pd-hero{display:block;width:100%;padding:0;border:0;background:var(--gr);border-radius:20px;overflow:hidden;position:relative;aspect-ratio:16/9;cursor:zoom-in}
.pd-hero img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.pd-hero:hover img{transform:scale(1.015)}
.pd-hero.ph{cursor:default;display:flex;align-items:center;justify-content:center;aspect-ratio:21/9}.pd-hero.ph b{font-size:clamp(56px,10vw,120px);font-weight:700;letter-spacing:-.04em;color:var(--l)}
.pd-cnt{position:absolute;right:16px;bottom:16px;padding:8px 14px;border-radius:980px;background:rgba(0,0,0,.6);color:#fff;font-size:13px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.pd-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:32px 64px;margin-top:48px}
.pd-f{margin:0;border-top:1px solid var(--l)}.pd-f div{display:grid;grid-template-columns:96px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--l)}
.pd-f dt{font-size:14px;color:var(--m)}.pd-f dd{margin:0;font-size:17px;line-height:1.5;word-break:keep-all}
.pd-h{font-size:24px;line-height:1.25;font-weight:700;letter-spacing:-.02em;margin:0 0 16px}.pd-h span{color:var(--m);font-weight:500;margin-left:6px}
.pd-tx p{font-size:17px;line-height:1.7;color:var(--m);margin:0;word-break:keep-all}
.pd-s{margin-top:72px}
.pd-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pd-gal button{display:block;padding:0;border:0;background:var(--gr);border-radius:12px;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in}
.pd-gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s,opacity .2s}.pd-gal button:hover img{transform:scale(1.03)}
.pd-gal button:focus-visible,.pd-hero:focus-visible{outline:2px solid var(--g);outline-offset:3px}
.pd-news{list-style:none;margin:0;padding:0;border-top:1px solid var(--l)}.pd-news a{display:flex;flex-direction:column;gap:4px;padding:18px 0;border-bottom:1px solid var(--l);min-height:44px}.pd-news b{font-size:17px;font-weight:600;line-height:1.45}.pd-news small{font-size:13px;color:var(--m)}.pd-news a:hover b{color:var(--g)}
.pd-sib{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pd-sib a{display:flex;flex-direction:column;gap:6px}.pd-si{aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:var(--gr);display:flex;align-items:center;justify-content:center}.pd-si img{width:100%;height:100%;object-fit:cover}.pd-si i{font-style:normal;font-weight:700;font-size:24px;color:var(--l)}.pd-sib small{font-size:12px;color:var(--m);margin-top:4px}.pd-sib b{font-size:15px;font-weight:600;line-height:1.4}.pd-sib a:hover b{color:var(--g)}
.pd-pn{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-top:80px;padding-top:28px;border-top:1px solid var(--l)}
.pd-pn a{display:flex;flex-direction:column;gap:4px;min-height:44px;justify-content:center}.pd-pn .nx{text-align:right}.pd-pn small{font-size:13px;color:var(--m)}.pd-pn b{font-size:16px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pd-pn a:hover b{color:var(--g)}
.pd-pn .ls{padding:10px 20px;border:1px solid var(--l);border-radius:980px;font-size:14px;font-weight:600;white-space:nowrap}.pd-pn .ls:hover{border-color:currentColor}
.pd-miss{padding:120px 0;text-align:center}.pd-miss .btns{justify-content:center;margin-top:24px}
/* 라이트박스 */
.lb{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center}.lb[hidden]{display:none}
.lb-f{position:absolute;inset:64px 72px;display:flex;align-items:center;justify-content:center}.lb-f img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;user-select:none;-webkit-user-drag:none}
.lb button{position:absolute;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.lb button:hover{background:rgba(255,255,255,.24)}.lb button:focus-visible{outline:2px solid var(--g);outline-offset:2px}
.lb-x{top:12px;right:12px;font-size:20px!important}.lb-p{left:12px;top:50%;margin-top:-24px}.lb-n{right:12px;top:50%;margin-top:-24px}.lb button[hidden]{display:none}
.lb-c{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#d2d2d7;font-size:14px;margin:0}
@media(max-width:1068px){.pd-sib{grid-template-columns:repeat(3,1fr)}}
@media(max-width:734px){.pdx{padding-top:16px}.pd-hd{margin-bottom:24px}.pd-hero{border-radius:14px;aspect-ratio:4/3}.pd-hero.ph{aspect-ratio:16/9}.pd-body{grid-template-columns:1fr;margin-top:32px}.pd-f div{grid-template-columns:80px 1fr}.pd-f dd{font-size:16px}.pd-s{margin-top:56px}.pd-gal{grid-template-columns:repeat(2,1fr);gap:8px}.pd-sib{grid-template-columns:repeat(2,1fr);gap:12px}.pd-pn{grid-template-columns:1fr 1fr}.pd-pn .ls{grid-column:1/-1;grid-row:2;justify-self:center}.lb-f{inset:56px 8px}.lb-p,.lb-n{top:auto!important;bottom:8px;margin:0!important}.lb-c{bottom:22px}}
.lb{z-index:100000}.pd-body.one{grid-template-columns:1fr}.pd-body.one .pd-f{max-width:760px}
.btns.maps .btn{min-height:44px}.map-note{margin-top:14px;font-size:14px;line-height:1.6;color:var(--m)}.map-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}.map-note a:hover{color:var(--g)}
/* 서브 내비 (조용한 앵커 바) */
:root{--ln-h:44px}@media(max-width:833px){:root{--ln-h:44px}}html.noln{--ln-h:0px}
.ln{height:var(--ln-h)}.ln:after{background:rgba(0,0,0,.08)}
.ln-in{display:flex;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:0 var(--pad)}.ln-in::-webkit-scrollbar{display:none}
.ln-t,.ln-tg{display:none!important}
.ln-m{position:static!important;flex-direction:row!important;gap:28px;margin:0 auto;padding:0!important;background:none!important;border:0!important;visibility:visible!important;opacity:1!important;transform:none!important}
.ln-m a{font-size:13px;line-height:var(--ln-h);min-height:0;color:#898989;opacity:1;border:0!important;letter-spacing:-.01em;transition:color .2s;white-space:nowrap}
.ln-m a:hover{color:var(--ink)}
.ln-m a[aria-current]{color:var(--ink);font-weight:600}
@media(max-width:833px){.ln-m{gap:22px}.ln-m a{font-size:14px;line-height:var(--ln-h);min-height:44px;padding:0 2px}}
/* SUBION 벤 다이어그램 */
.venn .vn-o{fill:none;stroke:currentColor;stroke-width:1.2;opacity:.55}
.venn .vn-bg{fill:#f1f7e9}.venn .vn-gl{fill:none;stroke:var(--g);stroke-width:.75;opacity:.9}
.venn .vn-pl{fill:none;stroke:#898989;stroke-width:.6;opacity:.32}
.venn .vn-e{fill:none;stroke:var(--g);stroke-width:1.6}
.venn .vn-plate{fill:#fff;stroke:var(--g);stroke-width:1}
.venn .vn-t{font:700 14px var(--ff);letter-spacing:.06em;fill:#1d1d1f}
.dk .venn .vn-bg,.sx.k .venn .vn-bg{fill:#14200a}.dk .venn .vn-pl,.sx.k .venn .vn-pl{stroke:#c8c8c8;opacity:.22}.dk .venn .vn-plate,.sx.k .venn .vn-plate{fill:#000}.dk .venn .vn-t,.sx.k .venn .vn-t{fill:#f5f5f7}
.ln-m a{position:relative}.ln-m a[aria-current]:after{content:"";position:absolute;left:50%;bottom:6px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--g)}
/* 프로젝트 필터: 연도 우선 + 상세 필터 접기 */
.pjfl .fx.fy{border-top:1px solid var(--l2)}
.fdt{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:4px 0 0;padding:0 2px;border:0;background:none;color:var(--m);font:500 14px var(--ff);cursor:pointer;transition:color .2s}
.fdt:hover,.fl.dopen .fdt{color:var(--ink)}.fdt svg{width:12px;height:12px;transition:transform .35s ease}.fl.dopen .fdt svg{transform:rotate(180deg)}
.fdt:focus-visible{outline:2px solid var(--g);outline-offset:2px;border-radius:6px}
.fdn{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--g);color:#fff;font-size:11px;font-weight:700}.fdn[hidden]{display:none}
.fdd{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1)}.fl.dopen .fdd{grid-template-rows:1fr}
.fdi{overflow:hidden;min-height:0;opacity:0;transition:opacity .3s}.fl.dopen .fdi{opacity:1}
@media(max-width:833px){.pjfl .fx.fy .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:calc(var(--pad) * -1);padding-right:var(--pad)}.pjfl .fx.fy .chips::-webkit-scrollbar{display:none}.pjfl .fx.fy .chip{flex:none}}
/* 사진: 썸네일은 흑백, 상세(히어로·갤러리·라이트박스)는 컬러 */
img[src*="img/p/"]{filter:grayscale(1)}
#pd img,#lb img{filter:none!important}
/* 사업영역 실적 링크 */
.app-a{display:contents;color:inherit;text-decoration:none}
.app-n{display:inline-flex;align-items:center;min-height:32px;font-size:13px;font-weight:500;color:#898989;text-decoration:none;transition:color .2s}
a.app-n:hover,a.app-n:focus-visible{color:var(--g)}.app-n.z{opacity:.6}
/* 연혁 사진 링크: 테두리·배경 없는 작은 텍스트 링크 */
.hlk{display:inline;margin-left:6px;padding:0;border:0;background:none;outline:0;font-size:12px;font-weight:400;color:#898989;text-decoration:none;white-space:nowrap}
.hlk svg{display:none}
.hlk:hover{color:#72AF2C;text-decoration:underline;text-underline-offset:3px}
.hlk:focus-visible{color:#72AF2C;outline:2px solid #72AF2C;outline-offset:2px;border-radius:2px}
@media(max-width:833px){.hlk{display:inline-block;padding:6px 2px;margin:-6px 0 -6px 4px;font-size:12.5px}}
/* SUBION 용도 칩 링크 */
.chip.uc{padding:0}.chip.uc a{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;min-height:inherit;border-radius:inherit;color:inherit;text-decoration:none}
.chip.uc:hover,.chip.uc:focus-within{border-color:#72AF2C;color:#72AF2C}.chip.uc:hover em{color:#72AF2C}
.chip.uc0{cursor:default}
@media(max-width:833px){.chip.uc a{padding:10px 16px}}
/* 주요 사업지 분석 */
#sites{display:grid;gap:96px}
.st{scroll-margin-top:calc(var(--gn-h,52px) + var(--ln-h,44px) + var(--jp-h,0px) + 16px)}
.st-hd{padding-bottom:24px;border-bottom:1px solid var(--l2)}
.st-hd .t-h2{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.st-full{margin-top:8px;color:var(--m);font-size:15px}
.st-tag{display:inline-flex;align-items:center;height:26px;padding:0 12px;border-radius:13px;background:rgba(114,175,44,.12);color:#4f7d1c;font-size:13px;font-weight:600;letter-spacing:0}
.st-tag.old{background:rgba(0,0,0,.06);color:#6e6e73}
.st-g{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.st-c{padding-top:32px}.st-c p{margin-top:10px;line-height:1.7;color:var(--ink2,#424245)}
.st-h{font-size:13px;font-weight:600;color:var(--m);letter-spacing:.02em;margin-bottom:6px}
.st-n{margin-left:4px;color:#72AF2C}
.st-tl{list-style:none;padding:0;margin:8px 0 0;border-left:1px solid var(--l2)}
.st-tl li{position:relative;display:grid;grid-template-columns:150px 1fr;column-gap:12px;row-gap:2px;padding:10px 0 10px 18px;font-size:15px;line-height:1.5}
.st-tl li:before{content:"";position:absolute;left:-4px;top:17px;width:7px;height:7px;border-radius:50%;background:#72AF2C}
.st-tl li.z:before{background:#c7c7cc}
.st-tl b{font-weight:600;font-variant-numeric:tabular-nums;color:var(--m);font-size:13px;padding-top:2px}
.st-tl a{color:inherit;text-decoration:none}.st-tl a:hover{color:#72AF2C}
.st-tl .hlk{grid-column:2;margin-left:0}
.st-resp{margin:14px 0 0;padding-left:18px;color:var(--ink2,#424245);line-height:1.7;font-size:15px}
.st-is{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
.st-is div{padding:20px;border-radius:16px;background:var(--bg2,#f5f5f7)}
.st-is dt{font-weight:600;font-size:15px}.st-is dd{margin:8px 0 0;font-size:14px;line-height:1.65;color:var(--ink2,#424245)}
.st-nw{display:grid;gap:0;margin-top:8px;border-top:1px solid var(--l2)}
.st-a{display:grid;grid-template-columns:110px 1fr;gap:4px 16px;padding:16px 0;border-bottom:1px solid var(--l2)}
.st-a time{font-size:13px;color:var(--m);font-variant-numeric:tabular-nums;padding-top:3px}
.st-a h4{font-size:16px;font-weight:600;line-height:1.45}.st-a h4 a{color:inherit;text-decoration:none}.st-a h4 a:hover{color:#72AF2C}
.st-a p{grid-column:2;margin:0;font-size:14px;line-height:1.6;color:var(--ink2,#424245)}
.st-a .st-o{grid-column:2;font-size:12.5px;color:var(--m)}
.st-card{margin:12px 0 16px;padding:22px 24px;border-radius:16px;border:1px solid rgba(114,175,44,.45);background:rgba(114,175,44,.06)}
.st-card p{margin:8px 0 0;font-size:15px;line-height:1.7}.st-card .eyebrow{margin:0}
.st-more{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;font-size:14px;color:var(--m);text-decoration:none}.st-more:hover{color:#72AF2C}
.st-empty{padding:16px 0;color:var(--m);font-size:14px}
@media(max-width:833px){#sites{gap:72px}.st-g{grid-template-columns:1fr;gap:0}.st-is{grid-template-columns:1fr}.st-tl li{grid-template-columns:1fr}.st-tl .hlk{grid-column:1}.st-a{grid-template-columns:1fr}.st-a p,.st-a .st-o{grid-column:1}}
.nph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;min-height:100%}
.nph::before{content:"";display:block;width:36%;max-width:132px;aspect-ratio:117/44;background:url(logo@2x.png) center/contain no-repeat;filter:grayscale(1);opacity:.28}
.nph small{font-size:12px;font-style:normal;font-weight:500;line-height:1.3;color:#86868b;letter-spacing:-.01em}
.pd-hero.ph .nph::before{width:28%;max-width:220px}
.pd-hero.ph .nph small{font-size:15px}
.pd-si .nph{gap:8px}.pd-si .nph::before{width:44%}.pd-si .nph small{font-size:11px}
.b .nph::before{background-image:url(logo-w@2x.png);opacity:.22}
.b .nph small{color:#6e6e73}
.st-jump{margin-top:28px}
.st-jump .chip{text-decoration:none}
.mx a.mx-a{display:inline-flex;flex-direction:column;align-items:center;gap:6px;color:inherit;text-decoration:none;padding:4px 8px;margin:-4px 0;border-radius:8px}
.mx a.mx-a .y{transition:box-shadow .2s}
.mx a.mx-a small{font-size:11px;line-height:1;color:var(--m);font-weight:500;white-space:nowrap}
.mx a.mx-a:hover small,.mx a.mx-a:focus-visible small{color:var(--g)}
.mx a.mx-a:hover .y{box-shadow:0 0 0 4px rgba(114,175,44,.18)}
.mxm li{display:flex;align-items:center}
.mxm li .mxm-c{margin-left:auto;padding-left:12px;font-size:13px;color:var(--m);white-space:nowrap}
.mxm li .mxm-c:hover{color:var(--g)}
/* 주요 사업지 바로가기: 고정 + 반투명 + 스크롤스파이 */
.stj{position:sticky;top:calc(var(--gn-h) + var(--ln-h));z-index:800}
.stj:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(251,251,253,.6);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px)}
.stj:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(0,0,0,.06)}
.stj-in{max-width:var(--wrap);margin:0 auto;padding:10px 22px}
.stj .st-jump{margin:0;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.stj .st-jump::-webkit-scrollbar{display:none}
.stj .chip{flex:none;min-height:32px;padding:5px 14px;font-size:13px;white-space:nowrap;background:rgba(255,255,255,.55);opacity:.7;transition:opacity .2s,color .2s,border-color .2s,background .2s}
.stj .chip:hover,.stj .chip:focus-visible{opacity:1;border-color:var(--ink)}
.stj .chip[aria-current]{opacity:1;color:#3f6f12;border-color:rgba(114,175,44,.65);background:rgba(114,175,44,.1);font-weight:600}
.a .stj .chip:first-child{margin-left:auto}.a .stj .chip:last-child{margin-right:auto}
.b .stj:before{background:rgba(0,0,0,.55)}.b .stj:after{background:rgba(255,255,255,.08)}
.b .stj .chip{background:rgba(29,29,31,.55);border-color:#424245;color:#f5f5f7}
.b .stj .chip:hover,.b .stj .chip:focus-visible{border-color:#f5f5f7}
.b .stj .chip[aria-current]{color:#9fd36a;border-color:rgba(114,175,44,.7);background:rgba(114,175,44,.14)}
.c .stj:before{background:rgba(245,245,247,.62)}.c .stj-in{padding-left:0;padding-right:0}
@media(max-width:734px){.stj-in{padding:8px 16px}.c .stj-in{padding:8px 0}.stj .chip{min-height:30px;padding:4px 12px}}

.pd-bk{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pd-cx{font-size:13px;color:var(--m);font-variant-numeric:tabular-nums;white-space:nowrap}
.lb-c{pointer-events:none}

/* project: site participation timeline — same .st-tl component as sites.html (newest first) */
.pd-tl{margin:-12px 0 32px;max-width:860px}
.pd-tl .st-h span{font-weight:400;color:var(--m);margin-left:6px}
.pd-tl .st-tl{margin-top:4px}
.st-tl li.on .cur{color:#72AF2C;font-weight:600}
.st-tl li.on:before{box-shadow:0 0 0 3px rgba(114,175,44,.2)}
.st-tl li.on b{color:#72AF2C}
@media(max-width:833px){.pd-tl{margin:-8px 0 24px}}

html.ln0 .ln-m a,html.ln0 .ln-m a:after{transition:none!important;animation:none!important}

/* news: main-site tag */
.nc-ft a.nc-st{display:inline-block;margin-left:8px;padding:0 8px;border-radius:980px;font-size:12px;line-height:20px;font-weight:500;color:#72AF2C;background:rgba(114,175,44,.1);text-decoration:none;vertical-align:1px;white-space:nowrap}
.nc-ft a.nc-st:hover{background:rgba(114,175,44,.18);color:#5f9a1f}

/* 바이오밴 참여 timeline v2 (sites + project, same on desktop/mobile) */
.tl-wk{margin:2px 0 4px;font-size:15px;font-weight:600;letter-spacing:-.01em}
.st-tl.tl2 li{display:flex;flex-direction:column;gap:1px;padding:9px 0 9px 18px}
.st-tl.tl2 li:before{top:20px}
.st-tl.tl2 .tl-y{font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:inherit;text-decoration:none;align-self:flex-start}
.st-tl.tl2 a.tl-y:hover{color:#72AF2C}
.st-tl.tl2 .tl-ty{font-size:14px;line-height:1.4}
.st-tl.tl2 .tl-m{font-size:13px;line-height:1.5;color:var(--m);font-variant-numeric:tabular-nums}
.st-tl.tl2 .tl-ph{color:var(--m);text-decoration:none}
.st-tl.tl2 .tl-ph:hover{color:#72AF2C}
.st-tl.tl2 li.on .tl-y{color:#72AF2C}
.st-loc{font-size:14px;color:var(--m);margin:0 0 8px}
.pf-note{margin-top:14px;font-size:15px;color:var(--m)}
.pf-note b{color:#72AF2C;font-weight:600}

/* 바이오밴 참여 option 1 (A-1): summary + year chips */
.tl-sum{margin:4px 0 10px;font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.45}
.tl-chips{display:flex;flex-wrap:wrap;gap:8px}
.tl-chips .chip{font-variant-numeric:tabular-nums;text-decoration:none}
.tl-chips .chip.on{background:#72AF2C;border-color:#72AF2C;color:#fff;font-weight:600}
.st-resp1{margin-top:12px;font-size:15px;line-height:1.6;color:var(--m)}
.st-tl .hlk{font-size:13px;color:var(--m)}

/* in-place record switch */
.pd .pd-hd,.pd .pd-hero,.pd .pd-body{transition:opacity .25s ease}
.pd.sw .pd-hd,.pd.sw .pd-hero,.pd.sw .pd-body{opacity:.35;transition:none}

/* 견적·구매 page (self-contained container) */
.pu-w{max-width:1100px;margin:0 auto;padding:0 22px;text-align:left}
.pu-hero{padding:72px 0 36px}
.pu-hero h1{margin-top:8px}
.pu-hero .t-lead{max-width:720px;margin-top:14px}
.pu-s{padding:48px 0 96px}
.pu-s .t-h1{margin-top:6px}
.pu-flow{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:36px 0 0;padding:0;counter-reset:pf}
.pu-flow li{position:relative;padding:0 18px 0 0;counter-increment:pf}
.pu-flow li:before{content:counter(pf);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#72AF2C;color:#fff;font-weight:700;font-size:16px;position:relative;z-index:1}
.pu-flow li:after{content:"";position:absolute;left:40px;right:0;top:19px;height:2px;background:linear-gradient(90deg,#72AF2C,rgba(114,175,44,.25))}
.pu-flow li:last-child:after{display:none}
.pu-flow h3{margin-top:14px;font-size:20px;font-weight:600;letter-spacing:-.01em}
.pu-flow p{margin-top:6px;font-size:14px;line-height:1.55;color:var(--m);max-width:220px}
.pu-two{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:48px}
.pu-box{border-radius:22px;background:#f5f5f7;padding:26px 26px 24px}
.pu-box h3{font-size:19px;font-weight:600;letter-spacing:-.01em}
.pu-box>p{margin-top:6px;font-size:14px;color:var(--m);line-height:1.55}
.pu-chk{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.pu-chk li{display:grid;grid-template-columns:92px 1fr;gap:10px;font-size:15px;line-height:1.5}
.pu-chk b{font-weight:600}
.pu-chk b:before{content:"✓";color:#72AF2C;margin-right:6px;font-weight:700}
.pu-chk span{color:var(--m)}
.pu-cases{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pu-cases a{display:inline-block;padding:8px 14px;border-radius:980px;background:#fff;font-size:14px;font-weight:500;text-decoration:none;color:inherit}
.pu-cases a:hover{color:#72AF2C}
.pu-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:36px}
.pu-k{font-size:14px;color:var(--m);text-decoration:none}
.pu-k:hover{color:#72AF2C}
.pu-note{margin-top:14px;font-size:13px;color:var(--m);line-height:1.55}
.pu-feat{display:grid;grid-template-columns:1fr 1.15fr;gap:32px;align-items:center;margin-top:48px;border-radius:26px;background:#f5f5f7;padding:28px}
.pu-fv{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:4/3;border-radius:18px;background:#fff}
.pu-fv b{font-size:72px;font-weight:700;letter-spacing:-.04em;color:#72AF2C;line-height:1}
.pu-fv small{margin-top:10px;font-size:13px;color:var(--m)}
.pu-feat h3{font-size:34px;font-weight:600;letter-spacing:-.02em;line-height:1.15;margin-top:6px}
.pu-feat .pu-d{margin-top:10px;font-size:16px;line-height:1.6;color:var(--m)}
.pu-pts{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.pu-pts li{font-size:15px;line-height:1.5;padding-left:20px;position:relative}
.pu-pts li:before{content:"";position:absolute;left:2px;top:8px;width:7px;height:7px;border-radius:50%;background:#72AF2C}
.pu-badge{display:inline-block;padding:3px 10px;border-radius:980px;font-size:12px;font-weight:600;color:#72AF2C;background:rgba(114,175,44,.12)}
.pu-sub{margin-top:48px;font-size:19px;font-weight:600;letter-spacing:-.01em}
.pu-g{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:14px}
.pu-c{display:flex;flex-direction:column;border-radius:22px;background:#f5f5f7;padding:20px 20px 18px;min-width:0}
.pu-v{display:flex;align-items:center;justify-content:center;height:120px;border-radius:14px;background:#fff;overflow:hidden;margin-bottom:14px}
.pu-v svg{max-width:90%;height:104px;width:auto}
.pu-c h4{font-size:21px;font-weight:600;letter-spacing:-.01em;margin-top:4px}
.pu-c .pu-d{margin-top:6px;font-size:14px;line-height:1.55;color:var(--m)}
.pu-c .pu-b{margin-top:auto;padding-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.pu-c .btn{min-height:36px;padding:0 16px;font-size:14px}
@media(max-width:833px){
.pu-hero{padding:48px 0 24px}
.pu-s{padding:32px 0 72px}
.pu-flow{grid-template-columns:1fr;gap:0;margin-top:26px}
.pu-flow li{display:grid;grid-template-columns:40px 1fr;column-gap:14px;padding:0 0 22px}
.pu-flow li:before{grid-row:span 2}
.pu-flow li:after{left:19px;right:auto;top:40px;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,#72AF2C,rgba(114,175,44,.25))}
.pu-flow h3{margin-top:8px;font-size:18px}
.pu-flow p{margin-top:2px;max-width:none}
.pu-two{grid-template-columns:1fr;gap:14px;margin-top:28px}
.pu-box{padding:22px 20px}
.pu-feat{grid-template-columns:1fr;gap:18px;padding:20px;margin-top:32px}
.pu-fv b{font-size:56px}
.pu-feat h3{font-size:28px}
.pu-g{grid-template-columns:1fr;gap:12px}
}

/* 관련 보도: 바이오밴 대응 row */
.st-dv{display:flex;align-items:center;gap:10px;margin:0;padding:14px 0 0;font-size:12px;font-weight:600;letter-spacing:.02em;color:#5f9a22}
.st-dv:after{content:"";flex:1;height:1px;background:rgba(114,175,44,.3)}
.st-a.st-rsp{margin:10px 0;padding:18px 20px;border:0;border-radius:16px;background:rgba(114,175,44,.08);box-shadow:inset 3px 0 0 #72AF2C}
.st-rsp time{color:#5f9a22;font-weight:600}
.st-rsp .st-o{color:#5f9a22;font-weight:500;text-decoration:none;margin-top:4px}.st-rsp .st-o:hover{text-decoration:underline}
@media(min-width:834px){.st-a.st-rsp{margin:10px -20px;padding:18px 20px}}
.tl-sub{margin:10px 0 0;font-size:13px;line-height:1.6;color:var(--m)}.tl-sub a{color:inherit}.tl-sub a:hover{color:#72AF2C}.tl-sub .cur{color:var(--ink);font-weight:600}
.pt-cta[hidden]{display:none!important}
.st-tl.tl2 .tl-r a{color:inherit;text-decoration:none}.st-tl.tl2 .tl-r a:hover{color:#72AF2C}.st-tl.tl2 .tl-r b{font-weight:600;color:#72AF2C}.st-tl.tl2 .tl-r .tl-ph{color:var(--m);font-size:13px}
.pu-fv b{font-size:56px}.pu-mdl{margin-top:6px;font-size:13px;color:var(--m);letter-spacing:.01em}@media(max-width:833px){.pu-fv b{font-size:44px}}
.pu-mdl{margin-top:8px;font-size:17px;color:var(--ink);letter-spacing:0}.pu-mdl b{font-weight:600;color:#5f9a22}.pu-cert{margin-top:4px;font-size:13px;color:var(--m)}

/* SUBION hero variants (A 시안) */
.pu-fv.iv{position:relative;overflow:hidden;padding:0}
.iv-v{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.iv-v[hidden]{display:none}
.iv-svg{width:86%;height:auto}
.iv-cap{position:absolute;left:0;right:0;bottom:14px;text-align:center}
.iv-ba{position:relative;width:100%;height:100%}
.iv-ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none!important}
.iv-ba .iv-ba2{clip-path:inset(0 0 0 50%)}
.iv-ba:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06)}
.iv-ba span{position:absolute;top:12px;padding:3px 10px;border-radius:980px;font-size:12px;font-weight:600;color:#fff;background:rgba(0,0,0,.55)}
.iv-ba .iv-l{left:12px}.iv-ba .iv-r{right:12px;background:rgba(114,175,44,.92)}
.iv-ty{display:flex;flex-direction:column;align-items:center;gap:6px}
.iv-ty b{font-size:64px;font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--ink)}
.iv-ty .iv-wt{font-size:22px;font-weight:600;color:#72AF2C;letter-spacing:.02em}
.iv-ty .iv-bd{margin-top:10px;padding:6px 14px;border-radius:980px;border:1px solid rgba(114,175,44,.5);font-size:13px;font-weight:500;color:#5f9a22}
@media(max-width:833px){.iv-ty b{font-size:48px}}
/* 구매: align to site page container (gn-in 1024 + 22px gutter; 24px on mobile) */
.pu-w{max-width:1024px;padding:0 22px;box-sizing:border-box}
@media(max-width:833px){.pu-w{padding:0 24px}}
