/* ===== CELL BOX — 클린 산업재 라이트 테마 (화이트 베이스 + 다크 헤더 · 단일 틸 · 그라데이션 없음) ===== */
:root{
  --navy:#0D1B2A; --navy2:#12283C; --navy3:#0a1622;
  --ink:#1A2430; --muted:#5B6B7A; --muted2:#8A98A6;
  --line:#E4E9EF; --line2:#d3dbe4;
  --bg:#FFFFFF; --bg2:#F5F7FA; --bg3:#eef2f6;
  --accent:#0EA5A0; --accent-d:#0B8681; --accent-soft:#E6F6F5;
  --amber:#E8A31A;
  --maxw:1180px; --radius:14px;
  --shadow:0 1px 2px rgba(16,32,48,.04),0 8px 24px rgba(16,32,48,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Pretendard','Malgun Gothic',system-ui,-apple-system,sans-serif;
  background:var(--bg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-size:16px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{margin:0;line-height:1.3;letter-spacing:-.02em}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.accent{color:var(--accent)}
.center{text-align:center}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:8px;font-weight:700;font-size:15px;cursor:pointer;border:1.5px solid transparent;transition:.18s;white-space:nowrap}
.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn-primary:hover{background:var(--accent-d);border-color:var(--accent-d)}
.btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-outline-dark{background:transparent;color:var(--ink);border-color:var(--line2)}
.btn-outline-dark:hover{border-color:var(--accent);color:var(--accent)}

/* header (화이트) */
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 1px 8px rgba(16,32,48,.04)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:74px}
.logo{display:flex;align-items:center;gap:11px;color:var(--ink)}
.logo img.logo-img{height:40px;width:auto;display:block}
.logo .mk{width:34px;height:34px;display:grid;place-items:center}
.logo .mk svg{display:block}
.logo b{font-size:17px;font-weight:800;letter-spacing:-.01em}
.logo small{display:block;font-size:10px;color:var(--muted);letter-spacing:.1em;font-weight:600}
.nav{display:flex;align-items:center;gap:26px}
.nav a{color:var(--ink);font-size:15px;font-weight:600;transition:.15s}
.nav a:hover{color:var(--accent)}
.nav .btn{padding:10px 18px;font-size:14px}
.burger{display:none;background:none;border:0;color:var(--ink);font-size:24px;cursor:pointer;padding:6px}
.mnav{display:none;background:#fff;border-top:1px solid var(--line)}
.mnav a{display:block;padding:14px 24px;color:var(--ink);font-weight:600;border-bottom:1px solid var(--line)}
.mnav a.cta{color:var(--accent-d)}
@media(max-width:900px){.nav{display:none}.burger{display:block}.mnav.open{display:block}}

/* hero */
.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden;
  background-image:linear-gradient(0deg,rgba(13,27,42,.0),rgba(13,27,42,.0)),radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:auto,22px 22px}
.hero.has-bg{background-size:cover;background-position:center}
.hero.has-bg::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(13,27,42,.93) 0%,rgba(13,27,42,.66) 42%,rgba(13,27,42,.30) 100%)}
.hero.has-bg .wrap{position:relative;z-index:2}
.hero-eyebrow{display:inline-block;color:#dbe6ee;font-size:clamp(15px,1.9vw,21px);font-weight:600;margin-bottom:4px;letter-spacing:.02em;animation:cbRise .7s cubic-bezier(.16,.84,.24,1) .05s both}
/* 히어로 브랜드 워드마크 — 메탈릭 샤이닝 + 글린트 + 등장 모션 */
.hero-brand{
  position:relative;display:block;width:-moz-fit-content;width:fit-content;max-width:100%;
  font-size:clamp(46px,7.4vw,90px);font-weight:900;letter-spacing:-.025em;line-height:1;margin:2px 0 14px;
  background:linear-gradient(100deg,#0B8681 0%,#12b3ab 22%,#7ff0e8 42%,#ffffff 50%,#7ff0e8 58%,#12b3ab 78%,#0B8681 100%);
  background-size:220% 100%;background-position:180% 0;
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 3px 18px rgba(14,165,160,.35));
  animation:cbRise .8s cubic-bezier(.16,.84,.24,1) .12s both, cbShine 5.5s ease-in-out .9s infinite;
}
/* 문자 위를 스치는 밝은 글린트 */
.hero-brand::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);
  background-size:250% 100%;background-position:200% 0;mix-blend-mode:screen;
  -webkit-mask:linear-gradient(#000,#000);animation:cbGlint 5.5s ease-in-out 1.2s infinite}
.hero-sub{font-size:clamp(17px,2.3vw,26px);font-weight:800;color:#fff;margin:0 0 16px;animation:cbRise .7s cubic-bezier(.16,.84,.24,1) .2s both}
.hero .lead{animation:cbRise .7s cubic-bezier(.16,.84,.24,1) .28s both}
.hero .btns{animation:cbRise .7s cubic-bezier(.16,.84,.24,1) .36s both}
.hero-stats{animation:cbRise .7s cubic-bezier(.16,.84,.24,1) .44s both}
@keyframes cbRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes cbShine{0%{background-position:180% 0}55%{background-position:-40% 0}100%{background-position:-40% 0}}
@keyframes cbGlint{0%{background-position:200% 0}55%{background-position:-60% 0}100%{background-position:-60% 0}}
@media(prefers-reduced-motion:reduce){
  .hero-brand{animation:none;background-position:50% 0}
  .hero-brand::after{display:none}
  .hero-eyebrow,.hero-sub,.hero .lead,.hero .btns,.hero-stats{animation:none}
}
.btn-textlink{background:transparent;border:0;color:#dbe6ee;padding:14px 8px;font-weight:700;font-size:15px}
.btn-textlink:hover{color:var(--accent)}
.hero::before{content:"";position:absolute;top:-30%;right:-10%;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(14,165,160,.16),transparent 65%);z-index:1}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding:76px 24px 84px}
.hero .badge{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.02em;color:#a7e3e0;
  border:1px solid rgba(14,165,160,.4);background:rgba(14,165,160,.1);padding:7px 15px;border-radius:6px}
.hero h1{font-size:clamp(30px,4.6vw,50px);font-weight:800;margin:22px 0 18px;letter-spacing:-.03em}
.hero h1 .accent{color:var(--accent)}
.hero p.lead{font-size:clamp(15px,1.6vw,18px);color:#b7c2cd;max-width:540px;margin:0 0 30px}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap}
.hero-fig{position:relative;display:grid;place-items:center}
.hero-fig img{max-height:460px;width:auto;filter:drop-shadow(0 24px 48px rgba(0,0,0,.5))}
.hero-stats{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}
.hero-stats .s{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:14px 18px;flex:1;min-width:120px}
.hero-stats .s b{display:block;font-size:22px;font-weight:800;color:#fff;white-space:nowrap}
.hero-stats .s span{font-size:12.5px;color:#93a4b3}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:28px;padding:48px 24px 56px}.hero-fig{order:-1}.hero-fig img{max-height:300px}}

/* trust bar */
.trust{background:var(--navy2);border-top:1px solid rgba(255,255,255,.06)}
.trust .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:20px 24px}
.trust .t{display:flex;align-items:center;gap:10px;color:#c3cdd7;font-size:14.5px;font-weight:600}
.trust .t .ic{color:var(--accent);display:flex}
.trust .t b{color:#fff}

/* sections */
section{padding:80px 0}
.sec-eye{color:var(--accent);font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.sec-title{font-size:clamp(24px,3.2vw,34px);font-weight:800;margin:10px 0 12px}
.sec-desc{color:var(--muted);font-size:16px;max-width:680px}
.sec-head{margin-bottom:44px}
.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}
.sec-head.center .sec-desc{margin:0 auto}
.bg2{background:var(--bg2)}
.dark{background:var(--navy);color:#fff}
.dark .sec-title{color:#fff}.dark .sec-desc{color:#b7c2cd}

/* generic card */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}

/* tech / product */
.tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.tech-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
.tech-card .no{display:inline-block;font-size:12px;font-weight:800;color:var(--accent);letter-spacing:.08em;background:var(--accent-soft);padding:4px 10px;border-radius:5px}
.tech-card h3{font-size:21px;margin:14px 0 4px}
.tech-card .sub{color:var(--muted);font-size:14px;margin-bottom:18px}
.tech-card ul{list-style:none;margin:0;padding:0}
.tech-card li{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.tech-card li .ic{color:var(--accent);flex-shrink:0;margin-top:2px}
.tech-card li b{display:block;font-size:15px}
.tech-card li span{font-size:13.5px;color:var(--muted)}
@media(max-width:820px){.tech-grid{grid-template-columns:1fr}}

/* targets */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.target{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;transition:.2s}
.target:hover{border-color:var(--accent);box-shadow:var(--shadow)}
.target .ic{width:46px;height:46px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:14px}
.target h4{font-size:16px;margin-bottom:6px}
.target p{margin:0;font-size:14px;color:var(--muted)}
@media(max-width:820px){.grid-3{grid-template-columns:1fr}}

/* savings */
.save-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}
.save{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;text-align:center;box-shadow:var(--shadow)}
.save .pct{font-size:30px;font-weight:800;color:var(--accent)}
.save h4{font-size:15px;margin:8px 0 6px}
.save p{margin:0;font-size:13px;color:var(--muted)}
@media(max-width:820px){.save-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.save-grid{grid-template-columns:1fr}}

/* responsive table */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}
table.tbl{width:100%;border-collapse:collapse;font-size:14.5px;min-width:520px}
table.tbl th,table.tbl td{padding:14px 18px;text-align:right;border-bottom:1px solid var(--line)}
table.tbl th:first-child,table.tbl td:first-child{text-align:left}
table.tbl thead th{background:var(--bg2);color:var(--muted);font-weight:700;font-size:13px}
table.tbl tr:last-child td{border-bottom:0}
table.tbl tr.total td{font-weight:800;background:var(--accent-soft)}
.cut{color:var(--accent-d);font-weight:700}
.disc{font-size:12.5px;color:var(--muted2);margin-top:12px}

/* process */
.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}
.proc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;box-shadow:var(--shadow)}
.proc .n{width:34px;height:34px;border-radius:8px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800;font-size:15px}
.proc h4{font-size:16px;margin:14px 0 6px}
.proc p{margin:0;font-size:13.5px;color:var(--muted)}
.share-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.share{background:var(--navy);color:#fff;border-radius:12px;padding:22px;text-align:center}
.share .tag{font-size:12px;color:#9fb0bf;font-weight:700}
.share .ratio{font-size:22px;font-weight:800;margin:8px 0;color:var(--accent)}
.share p{margin:0;font-size:12.5px;color:#b7c2cd}
@media(max-width:820px){.proc-grid{grid-template-columns:1fr 1fr}.share-grid{grid-template-columns:1fr}}
@media(max-width:520px){.proc-grid{grid-template-columns:1fr}}

/* ROI bars */
.roi{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.roi .points{list-style:none;margin:18px 0 0;padding:0}
.roi .points li{display:flex;gap:12px;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}
.roi .points li .ic{color:var(--accent);flex-shrink:0}
.roi .points li b{display:block;color:#fff}
.roi .points li span{font-size:13.5px;color:#b7c2cd}
.bars{display:flex;align-items:flex-end;gap:12px;height:220px;padding:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px}
.bars .bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:8px}
.bars .bar .fill{width:100%;max-width:46px;background:var(--accent);border-radius:6px 6px 0 0}
.bars .bar .v{font-size:12px;color:#cfe8e6;font-weight:700}
.bars .bar .yr{font-size:12px;color:#93a4b3}
@media(max-width:820px){.roi{grid-template-columns:1fr;gap:24px}}

/* IP (patents/designs) */
.ip-stat{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:34px}
.ip-stat .b{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px;text-align:center;box-shadow:var(--shadow)}
.ip-stat .b .n{font-size:42px;font-weight:800;color:var(--accent)}
.ip-stat .b.total{background:var(--navy);color:#fff}
.ip-stat .b.total .n{color:var(--accent)}
.ip-stat .b .l{color:var(--muted);font-size:14px;margin-top:2px}
.ip-stat .b.total .l{color:#b7c2cd}
.ip-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.ip-box{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ip-box .hd{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--navy);color:#fff}
.ip-box .hd b{font-size:16px}
.ip-box .hd .c{font-size:13px;color:var(--accent);font-weight:700}
.ip-list{}
.ip-row{display:flex;align-items:center;gap:12px;padding:11px 20px;border-bottom:1px solid var(--line);font-size:13.5px}
.ip-row:last-child{border-bottom:0}
.ip-row .idx{width:22px;height:22px;flex-shrink:0;border-radius:5px;background:var(--bg2);color:var(--muted);font-size:11px;font-weight:700;display:grid;place-items:center}
.ip-row .nm{flex:1;color:var(--ink);min-width:0}
.ip-row .no{color:var(--accent-d);font-weight:700;font-size:12.5px;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:820px){.ip-stat{grid-template-columns:1fr 1fr 1fr}.ip-cols{grid-template-columns:1fr}}

/* timeline */
.tl{position:relative;padding-left:26px}
.tl::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}
.tl .it{position:relative;padding:0 0 26px}
.tl .it::before{content:"";position:absolute;left:-23px;top:5px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--accent)}
.tl .yr{font-weight:800;color:var(--accent)}
.tl .tt{font-weight:600;margin-top:2px}

/* news */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.news-card{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;transition:.2s}
.news-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}
.news-card .d{font-size:13px;color:var(--accent);font-weight:700}
.news-card h4{font-size:16px;margin:10px 0 8px;line-height:1.5}
.news-card p{margin:0;font-size:13.5px;color:var(--muted)}
@media(max-width:820px){.news-grid{grid-template-columns:1fr}}

/* faq */
.faq-item{border:1px solid var(--line);border-radius:10px;margin-bottom:10px;background:#fff;overflow:hidden}
.faq-q{padding:18px 22px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:15.5px}
.faq-q .ar{color:var(--accent);transition:.2s;flex-shrink:0;font-size:20px}
.faq-item.open .faq-q .ar{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:.3s;color:var(--muted);font-size:14.5px}
.faq-item.open .faq-a{max-height:420px}
.faq-a div{padding:0 22px 20px}

/* contact */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px}
.info-row{display:flex;gap:13px;padding:15px 0;border-top:1px solid rgba(255,255,255,.1)}
.info-row .ic{color:var(--accent);flex-shrink:0}
.info-row b{display:block;font-size:12px;color:#9fb0bf;font-weight:600}
.info-row span{font-size:15px;color:#fff}
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
.ftypes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.ftype{position:relative}
.ftype input{position:absolute;opacity:0}
.ftype label{display:block;text-align:center;padding:12px 8px;border:1.5px solid var(--line2);border-radius:8px;font-size:13.5px;font-weight:700;color:var(--muted);cursor:pointer;transition:.15s;margin:0}
.ftype input:checked+label{background:var(--accent);color:#fff;border-color:var(--accent)}
.fld{margin-top:14px}
.fld label{display:block;font-size:13px;color:var(--ink);font-weight:600;margin-bottom:6px}
.fld input,.fld select,.fld textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line2);border-radius:8px;font-size:14.5px;font-family:inherit;color:var(--ink);background:#fff}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--accent)}
.fld.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.agree{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;color:var(--muted);margin:16px 0}
.agree input{margin-top:3px}
.form-card .btn-primary{width:100%;justify-content:center;font-size:16px;padding:15px}
.form-msg{padding:13px;border-radius:8px;margin-bottom:14px;font-size:14px;text-align:center}
.form-msg.ok{background:var(--accent-soft);border:1px solid var(--accent);color:var(--accent-d)}
.form-msg.err{background:#fdecec;border:1px solid #f0b4b4;color:#c0392b}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}.fld.two,.ftypes{grid-template-columns:1fr}}

/* footer */
footer{background:var(--navy3);color:#93a4b3;padding:54px 0 28px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.08)}
.foot-grid h5{color:#fff;font-size:13px;margin:0 0 14px;letter-spacing:.04em}
.foot-grid a,.foot-grid p{display:block;font-size:13.5px;color:#93a4b3;margin-bottom:9px}
.foot-grid a:hover{color:var(--accent)}
.foot-brand .logo{margin-bottom:14px}
.copy{padding-top:20px;font-size:12.5px;color:#6b7c8a;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
@media(max-width:820px){.foot-grid{grid-template-columns:1fr;gap:22px}}

/* mobile bottom bar */
.mbar{position:fixed;bottom:0;left:0;right:0;z-index:45;display:none;background:#fff;border-top:1px solid var(--line);box-shadow:0 -2px 16px rgba(0,0,0,.06)}
.mbar a{flex:1;text-align:center;padding:13px 6px;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:6px}
.mbar a.call{color:var(--ink)}
.mbar a.ask{background:var(--accent);color:#fff}
@media(max-width:900px){.mbar{display:flex}footer{padding-bottom:80px}}

/* popups */
#cb-popups{position:fixed;inset:0;z-index:60;pointer-events:none}
.cb-pop{display:none;position:fixed;pointer-events:auto;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.2)}
.cb-pop-center{top:50%;left:50%;transform:translate(-50%,-50%)}
.cb-pop-bl{left:20px;bottom:20px}.cb-pop-br{right:20px;bottom:20px}
.cb-pop-body{padding:18px}.cb-pop-title{font-weight:800;font-size:16px;margin-bottom:10px}
.cb-pop-text{font-size:13.5px;color:var(--muted);margin-top:10px}
.cb-pop-foot{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.cb-pop-foot label{display:flex;gap:6px;align-items:center;cursor:pointer}
.cb-pop-close{background:none;border:0;color:var(--ink);cursor:pointer;font-size:12.5px}
@media(max-width:600px){.cb-pop-bl,.cb-pop-br{left:50%;right:auto;transform:translateX(-50%);bottom:78px}}

/* mini section title (섹션 내부 소제목) */
.mini-title{font-size:19px;font-weight:800;margin:40px 0 18px;color:var(--ink)}
.mini-title small{font-weight:600;font-size:13.5px;color:var(--muted2)}
.mini-title.on-dark{color:#fff}
.mini-title.on-dark small{color:#9fb0bf}

/* tech grid — 3 columns + icon */
.tech-grid.three{grid-template-columns:repeat(3,1fr)}
.tech-card .tc-ic{width:48px;height:48px;border-radius:11px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:14px 0 2px}
@media(max-width:900px){.tech-grid.three{grid-template-columns:1fr}}

/* ===== POWER (발전) ===== */
.power-flow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:34px}
.power-flow .fn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#dfe8ef;font-weight:700;font-size:14px;padding:11px 16px;border-radius:9px;white-space:nowrap}
.power-flow .fn.hi{background:var(--accent);border-color:var(--accent);color:#fff}
.power-flow .fa{color:var(--accent);font-weight:800;font-size:17px}
.power-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:30px}
.power-points .pp{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:11px;padding:16px 18px}
.power-points .pp .ic{color:var(--accent);flex-shrink:0;margin-top:2px}
.power-points .pp b{display:block;color:#fff;font-size:15px}
.power-points .pp span{font-size:13px;color:#a7b6c4}
.power-headline{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;background:var(--accent);color:#fff;font-weight:800;font-size:clamp(15px,2vw,20px);padding:20px 22px;border-radius:12px;margin-bottom:10px;line-height:1.5}
.power-headline .ic{flex-shrink:0}
.cart-box{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:26px;margin-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}
.cart-box .cart-txt h3{font-size:19px;color:#fff;margin-bottom:8px}
.cart-box .cart-txt p{margin:0;color:#b7c2cd;font-size:14px}
.cart-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cart-it{background:rgba(14,165,160,.1);border:1px solid rgba(14,165,160,.3);border-radius:10px;padding:14px 16px}
.cart-it b{display:block;color:#fff;font-size:14px}
.cart-it span{font-size:12.5px;color:#a7b6c4}
@media(max-width:820px){.power-points{grid-template-columns:1fr}.cart-box{grid-template-columns:1fr;gap:18px}}
@media(max-width:520px){.cart-grid{grid-template-columns:1fr}}

/* ===== comparison table (highlight column) ===== */
.table-wrap.dark-tbl{background:transparent;border-color:rgba(255,255,255,.12)}
table.cmp{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
table.cmp th,table.cmp td{padding:13px 14px;text-align:center;border-bottom:1px solid rgba(255,255,255,.1);color:#cdd8e2;white-space:nowrap}
table.cmp td.lbl,table.cmp th:first-child{text-align:left;color:#9fb0bf;font-weight:700}
table.cmp thead th{font-size:13px;color:#fff;font-weight:800;background:rgba(255,255,255,.04)}
table.cmp th.hi{background:var(--accent);color:#fff}
table.cmp td.hi{background:rgba(14,165,160,.14);color:#fff;font-weight:800}
table.cmp tr:last-child td{border-bottom:0}
/* light variant */
table.cmp.light th,table.cmp.light td{border-bottom:1px solid var(--line);color:var(--ink)}
table.cmp.light td.lbl,table.cmp.light th:first-child{color:var(--muted)}
table.cmp.light thead th{background:var(--bg2);color:var(--ink)}
table.cmp.light th.hi{background:var(--accent);color:#fff}
table.cmp.light td.hi{background:var(--accent-soft);color:var(--accent-d);font-weight:800}

/* ===== SPEC ===== */
.spec-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:start}
table.spec-tbl{min-width:0}
table.spec-tbl th{width:44%;text-align:left;background:var(--bg2);color:var(--muted);font-weight:700;font-size:13.5px;border-bottom:1px solid var(--line)}
table.spec-tbl td{text-align:left;font-weight:600}
.spec-parts h4{font-size:16px;margin:2px 0 14px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{background:var(--accent-soft);color:var(--accent-d);border:1px solid rgba(14,165,160,.28);border-radius:20px;padding:7px 14px;font-size:13px;font-weight:700}
.spec-note{margin-top:22px;display:grid;gap:12px}
.spec-note .sn{display:flex;gap:12px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px 16px}
.spec-note .sn .ic{color:var(--accent);flex-shrink:0}
.spec-note .sn b{display:block;font-size:14px}
.spec-note .sn span{font-size:13px;color:var(--muted)}
@media(max-width:820px){.spec-wrap{grid-template-columns:1fr}}

/* ===== SAVINGS: energy comparison bars ===== */
.ecmp{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ecmp .eg{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 14px 16px;text-align:center;box-shadow:var(--shadow)}
.ecmp .ebars{display:flex;align-items:flex-end;justify-content:center;gap:14px;height:150px}
.ecmp .eb{width:38px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px}
.ecmp .eb .fill{width:100%;border-radius:6px 6px 0 0}
.ecmp .eb.old .fill{background:var(--navy)}
.ecmp .eb.new .fill{background:var(--accent)}
.ecmp .eb .v{font-size:12.5px;font-weight:800;color:var(--ink)}
.ecmp .ename{font-weight:700;margin-top:12px;font-size:14.5px}
.ecmp .ecut{color:var(--accent-d);font-weight:800;font-size:13px}
.elegend{display:flex;gap:18px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:16px;font-size:13px;color:var(--muted)}
.elegend i.lg{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.elegend i.lg.old{background:var(--navy)}
.elegend i.lg.new{background:var(--accent)}
@media(max-width:820px){.ecmp{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.ecmp{grid-template-columns:1fr}}

/* ===== REVENUE ===== */
.rev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.rev{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 22px;box-shadow:var(--shadow);overflow:hidden}
.rev .rn{position:absolute;top:14px;right:18px;font-size:30px;font-weight:800;color:var(--bg3)}
.rev .ic{width:44px;height:44px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:14px}
.rev h4{font-size:16px;margin-bottom:6px}
.rev p{margin:0;font-size:13.5px;color:var(--muted)}
@media(max-width:820px){.rev-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.rev-grid{grid-template-columns:1fr}}

/* ===== MARKET ===== */
.mkt-top{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:stretch;margin-bottom:20px}
.mkt-chart{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:22px}
.mc-head{font-size:14px;font-weight:700;color:#fff;margin-bottom:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mc-head small{color:#9fb0bf;font-weight:600}
.mc-head .cagr{margin-left:auto;background:var(--accent);color:#fff;font-size:12px;font-weight:800;padding:4px 10px;border-radius:20px}
.mkt-chart .bars{background:transparent;border:0;padding:0;height:190px}
.mkt-cards{display:grid;grid-template-columns:1fr;gap:12px}
.mkt-cards .mc{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:11px;padding:13px 16px}
.mkt-cards .mc .ic{color:var(--accent);flex-shrink:0}
.mkt-cards .mc .l{display:block;font-size:12px;color:#9fb0bf}
.mkt-cards .mc b{display:block;font-size:19px;color:#fff;line-height:1.2}
.mkt-cards .mc .d{display:block;font-size:11.5px;color:#8798a6}
.funnel{display:flex;align-items:stretch;justify-content:center;gap:12px;flex-wrap:wrap}
.funnel .fstep{flex:1;min-width:150px;text-align:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px 16px}
.funnel .fstep.s0{border-color:rgba(14,165,160,.5)}
.funnel .fstep.s1{background:rgba(14,165,160,.1);border-color:rgba(14,165,160,.5)}
.funnel .fstep.s2{background:var(--accent);border-color:var(--accent)}
.funnel .fstep .tag{display:inline-block;font-size:12px;font-weight:800;color:var(--accent);letter-spacing:.06em}
.funnel .fstep.s2 .tag{color:#fff}
.funnel .fstep b{display:block;font-size:22px;color:#fff;margin:6px 0 4px}
.funnel .fstep .d{font-size:12px;color:#a7b6c4}
.funnel .fstep.s2 .d{color:rgba(255,255,255,.85)}
.funnel .fa{align-self:center;color:var(--accent);font-weight:800;font-size:18px}
.seg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}
.seg{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:11px;padding:18px;text-align:center}
.seg .nm{display:block;font-size:14px;color:#fff;font-weight:700}
.seg .cagr{display:block;font-size:12px;color:var(--accent);font-weight:800;margin:6px 0}
.seg b{display:block;font-size:20px;color:#fff}
.seg .yr{font-size:11.5px;color:#8798a6}
@media(max-width:900px){.mkt-top{grid-template-columns:1fr}}
@media(max-width:820px){.seg-grid{grid-template-columns:1fr 1fr}.funnel .fa{display:none}}

/* ===== IP mix bars ===== */
.ipmix{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px 26px;margin-bottom:22px;box-shadow:var(--shadow)}
.ipmix .mix-title{font-weight:800;font-size:15px;margin-bottom:16px}
.mix-row{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.mix-row:last-child{margin-bottom:0}
.mix-row .ml{width:120px;flex-shrink:0;font-size:13.5px;font-weight:600;color:var(--ink)}
.mix-row .mxbar{flex:1;height:12px;background:var(--bg3);border-radius:20px;overflow:hidden}
.mix-row .mxbar .fill{height:100%;background:var(--accent);border-radius:20px}
.mix-row .mv{width:40px;text-align:right;font-weight:800;color:var(--accent-d);font-size:13px}
@media(max-width:520px){.mix-row .ml{width:92px;font-size:12.5px}}

/* ===== INVEST ===== */
.inv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.inv{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 24px;box-shadow:var(--shadow)}
.inv .ic{width:46px;height:46px;border-radius:11px;background:var(--navy);color:var(--accent);display:grid;place-items:center;margin-bottom:14px}
.inv .rn{position:absolute;top:22px;right:24px;font-size:15px;font-weight:800;color:var(--accent);background:var(--accent-soft);border-radius:6px;padding:2px 9px}
.inv h4{font-size:16.5px;margin-bottom:8px;padding-right:40px}
.inv p{margin:0;font-size:13.5px;color:var(--muted)}
@media(max-width:820px){.inv-grid{grid-template-columns:1fr}}

/* ===== ROADMAP ===== */
.rm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.rm{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:var(--shadow);border-top:3px solid var(--line2)}
.rm.done{border-top-color:var(--accent)}
.rm.now{border-top-color:var(--accent);background:var(--accent-soft)}
.rm-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.rm-hd .ph{font-weight:800;font-size:15px;color:var(--ink)}
.rm-hd .st{font-size:11px;font-weight:800;padding:3px 9px;border-radius:20px;background:var(--bg3);color:var(--muted)}
.rm.done .rm-hd .st,.rm.now .rm-hd .st{background:var(--accent);color:#fff}
.rm .yr{font-size:12.5px;color:var(--accent-d);font-weight:800;margin-bottom:4px}
.rm h4{font-size:15.5px;margin-bottom:12px}
.rm ul{list-style:none;margin:0;padding:0}
.rm ul li{position:relative;padding-left:16px;font-size:13px;color:var(--muted);margin-bottom:7px;line-height:1.5}
.rm ul li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
@media(max-width:900px){.rm-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.rm-grid{grid-template-columns:1fr}}

/* ===== 절감수익 배분 모델 / 투자구조 (영업·투자) ===== */
.rev-model{display:grid;grid-template-columns:1fr auto 1fr auto 1.2fr;gap:16px;align-items:center}
.rev-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 20px;text-align:center;box-shadow:var(--shadow)}
.rev-box.dark{background:var(--navy);border-color:var(--navy)}
.rev-box .lb{font-size:13px;color:var(--muted);font-weight:700}
.rev-box.dark .lb{color:#9fb0bf}
.rev-box .big{font-size:clamp(24px,3vw,34px);font-weight:800;color:var(--ink);line-height:1.1;margin:6px 0}
.rev-box.dark .big{color:#fff}
.rev-box .big.accent{color:var(--accent)}
.rev-box .sub{font-size:12.5px;color:var(--muted)}
.rev-box.dark .sub{color:var(--accent)}
.rev-arrow{color:var(--accent);font-weight:800;font-size:24px;text-align:center}
.rev-split{display:flex;flex-direction:column;gap:10px}
.rev-split .rs{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 16px;box-shadow:var(--shadow)}
.rev-split .rs .pct{font-size:22px;font-weight:800;color:var(--accent);width:64px;flex-shrink:0}
.rev-split .rs .who{font-weight:700;font-size:14px}
.rev-split .rs .amt{margin-left:auto;font-weight:800;color:var(--accent-d);white-space:nowrap}
.rev-split .rs .desc{display:block;font-size:12px;color:var(--muted);font-weight:400}
@media(max-width:900px){.rev-model{grid-template-columns:1fr;gap:12px}.rev-arrow{transform:rotate(90deg)}}

/* 프로젝트 흐름 (번호 스텝) */
.flow-steps{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.flow-steps .fs{flex:1;min-width:150px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:11px;padding:14px 15px;position:relative}
.flow-steps .fs .n{width:24px;height:24px;border-radius:7px;background:var(--accent);color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;margin-bottom:8px}
.flow-steps .fs.go{background:var(--accent);border-color:var(--accent)}
.flow-steps .fs.go .n{background:#fff;color:var(--accent-d)}
.flow-steps .fs.go b,.flow-steps .fs.go span{color:#fff}
.flow-steps .fs b{display:block;font-size:13.5px;color:#fff}
.flow-steps .fs span{font-size:12px;color:#9fb0bf}
/* 라이트 섹션용 흐름 */
section:not(.dark) .flow-steps .fs{background:#fff;border-color:var(--line);box-shadow:var(--shadow)}
section:not(.dark) .flow-steps .fs b{color:var(--ink)}
section:not(.dark) .flow-steps .fs span{color:var(--muted)}
@media(max-width:600px){.flow-steps .fs{min-width:0;flex-basis:calc(50% - 5px)}}

/* 투자 사용계획 바 */
.useplan{display:grid;gap:10px}
.useplan .u{display:flex;align-items:center;gap:12px}
.useplan .u .ul{width:150px;flex-shrink:0;font-size:13.5px;font-weight:600;color:var(--ink)}
.useplan .u .ub{flex:1;height:14px;background:var(--bg3);border-radius:20px;overflow:hidden}
.useplan .u .ub .fill{height:100%;background:var(--accent);border-radius:20px}
.useplan .u .uv{width:100px;text-align:right;font-size:13px;font-weight:800;color:var(--accent-d);white-space:nowrap}
@media(max-width:520px){.useplan .u .ul{width:100px;font-size:12px}.useplan .u .uv{width:80px}}

/* reveal */
.reveal{opacity:0;transform:translateY(20px);transition:.6s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* ============ MULTI-PAGE 공통 (헤더 드롭다운·페이지히어로·CTA·허브·인증서 등) ============ */
/* dropdown nav (화이트 헤더) */
.nav .grp{position:relative}
.nav .grp>.gtop{display:inline-flex;align-items:center;gap:5px;color:var(--ink);font-size:15px;font-weight:600;cursor:pointer}
.nav .grp:hover>.gtop,.nav .grp.on>.gtop,.nav a.on{color:var(--accent)}
.nav .grp .cav{font-size:9px;opacity:.6;transition:.18s}
.nav .grp:hover .cav{transform:rotate(180deg)}
.nav .grp::after{content:"";position:absolute;left:-14px;right:-14px;top:100%;height:24px}
.nav .drop{position:absolute;left:50%;top:calc(100% + 18px);transform:translateX(-50%) translateY(6px);
  background:#fff;border:1px solid var(--line);border-radius:11px;min-width:214px;padding:8px;
  box-shadow:0 22px 44px rgba(16,32,48,.16);opacity:0;visibility:hidden;transition:.16s;z-index:60}
.nav .grp:hover .drop{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.nav .drop a{display:block;padding:10px 14px;color:var(--muted);font-size:14px;font-weight:600;border-radius:7px;white-space:nowrap}
.nav .drop a:hover{background:var(--accent-soft);color:var(--accent-d)}
.foot-brand .logo img.logo-img{height:38px;width:auto}

/* page hero (서브페이지 상단) */
.page-hero{background:var(--navy);color:#fff;padding:52px 0 46px;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;top:-45%;right:-5%;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(14,165,160,.13),transparent 66%)}
.page-hero .wrap{position:relative}
.page-hero .sec-eye{color:var(--accent)}
.page-hero h1{font-size:clamp(26px,3.6vw,40px);font-weight:800;margin:10px 0 12px;letter-spacing:-.02em}
.page-hero p{color:#b7c2cd;font-size:clamp(15px,1.5vw,17px);max-width:760px;margin:0;line-height:1.7}
.page-hero .crumb{font-size:12.5px;color:#8fa0af;margin-bottom:14px}
.page-hero .crumb a{color:#8fa0af}.page-hero .crumb a:hover{color:var(--accent)}
.page-hero .crumb .sep{margin:0 8px;opacity:.5}
.page-hero .crumb .cur{color:#cfd8e0}

/* CTA band (푸터 위) */
.cta-band{background:var(--accent)}
.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:40px 24px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(20px,2.4vw,27px);font-weight:800;color:#fff}
.cta-band p{margin:6px 0 0;color:rgba(255,255,255,.92);font-size:15px}
.cta-band .cta-btns{display:flex;gap:12px;flex-wrap:wrap}
.cta-band .btn-primary{background:#fff;color:var(--accent-d);border-color:#fff}
.cta-band .btn-primary:hover{background:#eafaf9;color:var(--accent-d)}
.cta-band .btn-outline{color:#fff;border-color:rgba(255,255,255,.6)}
.cta-band .btn-outline:hover{background:rgba(255,255,255,.12);border-color:#fff}

/* hub cards (메인 → 서브페이지 유도) */
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hub{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:var(--shadow);transition:.2s}
.hub:hover{border-color:var(--accent);transform:translateY(-3px)}
.hub .ic{width:50px;height:50px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:16px}
.hub h3{font-size:18px;margin-bottom:8px}
.hub p{margin:0 0 14px;font-size:14px;color:var(--muted);line-height:1.6}
.hub .more{color:var(--accent-d);font-weight:700;font-size:14px}
@media(max-width:900px){.hub-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.hub-grid{grid-template-columns:1fr}}

/* 핵심가치 6열 반응형 */
.val-grid.val6{grid-template-columns:repeat(6,1fr)}
.val-grid.val6 .val{padding:22px 14px}
.val-grid.val6 .val .ic{width:46px;height:46px;border-radius:12px}
@media(max-width:980px){.val-grid.val6{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.val-grid.val6{grid-template-columns:repeat(2,1fr)}}

/* 사업장별 맞춤 솔루션 */
.segsol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.segcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0;overflow:hidden;box-shadow:var(--shadow);transition:.2s;border-top:3px solid var(--accent)}
.segcard:hover{transform:translateY(-3px);border-color:var(--accent)}
.segcard .ph{aspect-ratio:16/9;overflow:hidden;background:var(--navy);border-bottom:1px solid var(--line)}
.segcard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.segcard .segbody{padding:22px 24px}
.segcard .no{font-size:13px;font-weight:800;color:var(--accent);letter-spacing:.08em}
.segcard h3{font-size:19px;margin:8px 0 3px}
.segcard .rng{font-size:13px;color:var(--muted);font-weight:700;margin-bottom:14px}
.segcard ul{list-style:none;margin:0;padding:0}
.segcard ul li{position:relative;padding-left:18px;font-size:14px;color:var(--ink);margin-bottom:8px;line-height:1.55}
.segcard ul li::before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:50%;background:var(--accent)}
@media(max-width:820px){.segsol{grid-template-columns:1fr}}

/* split (텍스트 + 이미지/박스) */
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.split.rev>*:first-child{order:2}
.split .fig{border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--bg2)}
.split .fig img{width:100%;display:block}
.split h3{font-size:clamp(20px,2.4vw,26px);margin-bottom:14px}
.split p{color:var(--muted);margin:0 0 12px}
.split .pts{list-style:none;margin:16px 0 0;padding:0}
.split .pts li{display:flex;gap:10px;padding:9px 0}
.split .pts li .ic{color:var(--accent);flex-shrink:0;margin-top:2px}
.split .pts li b{display:block;font-size:15px}
.split .pts li span{font-size:13.5px;color:var(--muted)}
@media(max-width:820px){.split{grid-template-columns:1fr;gap:24px}.split.rev>*:first-child{order:0}}

/* 회사소개: 대표 인사말·미션/비전·핵심가치 */
.ceo-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start}
.ceo-card{background:var(--navy);color:#fff;border-radius:16px;padding:34px;text-align:center}
.ceo-card .em{width:64px;height:64px;border-radius:16px;background:rgba(14,165,160,.18);color:var(--accent);display:grid;place-items:center;margin:0 auto 16px}
.ceo-card h3{font-size:20px;color:#fff}
.ceo-card .role{color:#9fb0bf;font-size:13.5px;margin-top:4px}
.ceo-card .sign{margin-top:18px;font-size:14px;color:#cfe8e6}
.ceo-msg p{font-size:15.5px;color:var(--ink);line-height:1.9;margin:0 0 16px}
.ceo-msg p:first-child{font-size:19px;font-weight:800;color:var(--ink)}
@media(max-width:820px){.ceo-wrap{grid-template-columns:1fr;gap:26px}}
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.mv{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;box-shadow:var(--shadow);border-top:3px solid var(--accent)}
.mv .lb{font-size:13px;font-weight:800;color:var(--accent);letter-spacing:.1em}
.mv h3{font-size:clamp(19px,2.2vw,24px);margin-top:10px;line-height:1.5}
@media(max-width:600px){.mv-grid{grid-template-columns:1fr}}
.val-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.val{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 20px;text-align:center;box-shadow:var(--shadow)}
.val .ic{width:52px;height:52px;border-radius:14px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:0 auto 14px}
.val h4{font-size:16px;margin-bottom:6px}
.val p{margin:0;font-size:13px;color:var(--muted)}
@media(max-width:820px){.val-grid{grid-template-columns:1fr 1fr}}
/* profile table */
.prof{display:grid;grid-template-columns:1fr 1fr;gap:0}
table.prof-tbl{width:100%;border-collapse:collapse;font-size:14.5px}
table.prof-tbl th{text-align:left;width:34%;background:var(--bg2);color:var(--muted);font-weight:700;padding:14px 18px;border:1px solid var(--line);font-size:13.5px;vertical-align:top}
table.prof-tbl td{padding:14px 18px;border:1px solid var(--line);font-weight:600}
.map-embed{border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--bg2)}
.map-embed iframe,.map-embed .ph{width:100%;height:360px;border:0;display:block}
.map-embed .ph{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px;text-align:center;flex-direction:column;gap:8px}

/* 활용분야 상세 리스트 */
.applist{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.applist .ai{display:flex;gap:10px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:12px 15px;font-size:13.5px;align-items:flex-start;line-height:1.5}
.applist .ai .n{color:var(--accent);font-weight:800;flex-shrink:0;font-variant-numeric:tabular-nums}
@media(max-width:820px){.applist{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.applist{grid-template-columns:1fr}}

/* 인증서 갤러리 */
.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.cert{display:flex;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);transition:.2s;color:inherit}
.cert:hover{border-color:var(--accent);transform:translateY(-2px)}
.cert .thumb{width:148px;flex-shrink:0;background:var(--bg2);border-right:1px solid var(--line);overflow:hidden}
.cert .thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}
.cert .info{padding:20px 22px}
.cert .info .badge{display:inline-block;font-size:11px;font-weight:800;color:var(--accent-d);background:var(--accent-soft);padding:3px 10px;border-radius:5px}
.cert .info h4{font-size:15.5px;margin:11px 0 8px;line-height:1.5}
.cert .info .no{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.cert .info .more{display:inline-block;margin-top:12px;color:var(--accent-d);font-weight:700;font-size:13px}
@media(max-width:600px){.cert-grid{grid-template-columns:1fr}.cert .thumb{width:110px}}

/* 인증서 크게 보기 (원본을 그대로 노출) */
.cert-feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cert-feat{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.cert-feat .doc{background:var(--bg2);padding:22px;display:flex;justify-content:center;border-bottom:1px solid var(--line)}
.cert-feat .doc img{width:auto;max-width:100%;max-height:560px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(16,32,48,.16);border-radius:4px}
.cert-feat .cap{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.cert-feat .cap .badge{display:inline-block;font-size:11px;font-weight:800;color:var(--accent-d);background:var(--accent-soft);padding:3px 10px;border-radius:5px}
.cert-feat .cap h4{font-size:16px;margin:8px 0 4px;line-height:1.5}
.cert-feat .cap .no{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.cert-feat .cap .btn{white-space:nowrap;padding:11px 18px;font-size:14px}
@media(max-width:820px){.cert-feat-grid{grid-template-columns:1fr}.cert-feat .doc img{max-height:70vh}}

/* 인증서 갤러리 (전체 인증서 썸네일 그리드) */
.cert-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cert-gallery a{display:block;background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden;box-shadow:var(--shadow);transition:.2s}
.cert-gallery a:hover{border-color:var(--accent);transform:translateY(-4px)}
.cert-gallery .im{background:var(--bg2);aspect-ratio:3/4;overflow:hidden;border-bottom:1px solid var(--line)}
.cert-gallery .im img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.cert-gallery .cap{padding:11px 13px;font-size:13px;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:8px}
.cert-gallery .cap .zoom{color:var(--accent-d);font-size:12px;white-space:nowrap}
.cert-cat-head{display:flex;align-items:baseline;gap:10px;margin:6px 0 16px}
.cert-cat-head b{font-size:17px}
.cert-cat-head .c{font-size:13px;color:var(--accent-d);font-weight:800;background:var(--accent-soft);padding:2px 10px;border-radius:20px}
@media(max-width:820px){.cert-gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.cert-gallery{grid-template-columns:repeat(2,1fr)}}

/* 인증서 상세 뷰어 */
.cert-view{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.cert-view .imgbox{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--bg2);box-shadow:var(--shadow)}
.cert-view .imgbox img{width:100%;display:block}
.cert-view .imgbox .ph{aspect-ratio:3/4;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:12px;text-align:center;padding:30px}
.cert-view .imgbox .ph .ic{color:var(--line2)}
.cert-view .badge{display:inline-block;font-size:12px;font-weight:800;color:var(--accent-d);background:var(--accent-soft);padding:4px 12px;border-radius:6px}
.cert-view h2{font-size:clamp(20px,2.6vw,27px);margin:14px 0 18px;line-height:1.45}
.cert-nav{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.disc-box{background:var(--bg2);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:14px 16px;font-size:13px;color:var(--muted);margin-top:20px;line-height:1.7}
@media(max-width:820px){.cert-view{grid-template-columns:1fr;gap:24px}}

/* 강조 통계 스트립 */
.statstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.statstrip .st{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 20px;text-align:center;box-shadow:var(--shadow)}
.statstrip .st b{display:block;font-size:34px;font-weight:800;color:var(--accent);line-height:1.1}
.statstrip .st span{font-size:13.5px;color:var(--muted);margin-top:6px;display:block}
.statstrip.on-dark .st{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.09)}
.statstrip.on-dark .st span{color:#9fb0bf}
.statstrip.st5{grid-template-columns:repeat(5,1fr)}
@media(max-width:820px){.statstrip{grid-template-columns:1fr 1fr}.statstrip.st5{grid-template-columns:repeat(2,1fr)}}

/* 뉴스 목록(list) */
.news-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}
.news-list a{display:flex;gap:20px;padding:22px 6px;border-bottom:1px solid var(--line);align-items:baseline;transition:.15s}
.news-list a:hover{background:var(--bg2)}
.news-list .d{color:var(--accent-d);font-weight:700;font-size:13.5px;width:110px;flex-shrink:0}
.news-list .tt{font-weight:700;font-size:16px}
.news-list .ex{color:var(--muted);font-size:13.5px;margin-top:4px}
@media(max-width:600px){.news-list a{flex-direction:column;gap:4px}.news-list .d{width:auto}}

/* section 상단 여백 축소 유틸 */
.pt0{padding-top:0!important}
.section-sm{padding:56px 0}

/* ===== 인트로 스플래시 (시네마틱 로고 영상) ===== */
html.cb-intro-lock{overflow:hidden}
.cb-intro{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;
  background:#06070b;opacity:1;transition:opacity .65s ease}
.cb-intro.done{opacity:0;pointer-events:none}
.cb-intro-vid{width:100%;height:100%;object-fit:cover;background:#06070b;display:block}
.cb-intro-skip{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);
  background:rgba(0,0,0,.42);color:#fff;border:1.5px solid rgba(255,255,255,.7);border-radius:999px;
  padding:13px 34px;font-size:15px;font-weight:700;letter-spacing:.1em;cursor:pointer;z-index:3;
  backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);box-shadow:0 6px 22px rgba(0,0,0,.45);
  font-family:inherit;transition:background .2s,transform .2s,border-color .2s;opacity:0;animation:cbSkipIn .6s ease .9s forwards}
.cb-intro-skip:hover{background:rgba(14,165,160,.9);border-color:#fff;transform:translateX(-50%) scale(1.05)}
@keyframes cbSkipIn{to{opacity:1}}
/* 태블릿 세로 등 애매한 비율은 전체 표시(가로 인트로 잘림 방지) */
@media(max-aspect-ratio:1/1) and (min-width:601px){.cb-intro-vid{object-fit:contain}}
/* 모바일은 세로 인트로를 서빙하므로 꽉 채움(cover) */
@media(max-width:600px){.cb-intro-vid{object-fit:cover}.cb-intro-skip{bottom:9%;padding:12px 28px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.cb-intro{display:none}}

/* ===== 세계 최초 혁신기술 섹션 ===== */
.innov{background:linear-gradient(180deg,#ffffff 0%,#f5f7fa 100%);padding:84px 0}
.innov .sec-lead{max-width:760px;margin:0 auto;color:#5a6b7a;font-size:clamp(15px,1.6vw,17.5px);line-height:1.75}
.innov-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:8px}
.innov-card{background:#fff;border:1px solid #e6ebf1;border-radius:16px;padding:30px 30px 28px;
  box-shadow:0 1px 0 rgba(16,42,67,.02);transition:transform .25s ease,box-shadow .25s ease,border-color .25s}
.innov-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(13,27,42,.10);border-color:#cfe6e4}
.innov-top{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.innov-no{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:11px;
  background:var(--navy);color:#fff;font-weight:800;font-size:16px;letter-spacing:.02em}
.innov-ic{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:11px;
  background:rgba(14,165,160,.10);color:var(--accent-d)}
.innov-card h3{font-size:20px;font-weight:800;margin:0 0 8px;color:var(--ink)}
.innov-head{font-size:17px;font-weight:800;color:var(--accent-d);margin:0 0 10px}
.innov-body{font-size:14.5px;line-height:1.75;color:#5a6b7a;margin:0}
.innov-note{display:flex;align-items:center;gap:12px;margin-top:24px;padding:18px 22px;border-radius:14px;
  background:var(--navy);color:#dbe6ee;font-size:14.5px;line-height:1.6}
.innov-note svg{flex:0 0 auto;color:var(--accent)}
.innov-note span{font-weight:600}
@media(max-width:820px){.innov-grid{grid-template-columns:1fr}.innov{padding:60px 0}}

/* 세계최초 — 상온 vs 고온 비교 */
.innov-compare{margin-top:24px;background:#fff;border:1px solid #e6ebf1;border-radius:16px;padding:28px 26px}
.innov-compare .ic-head{text-align:center;margin-bottom:20px}
.innov-compare .ic-head h3{font-size:19px;font-weight:800;color:var(--ink);margin:0 0 6px}
.innov-compare .ic-head p{font-size:14px;color:#5a6b7a;margin:0;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.65}
.ic-row{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch}
.ic-old,.ic-new{border-radius:13px;padding:22px 20px;display:flex;flex-direction:column;gap:7px;text-align:center}
.ic-old{background:#f5f7fa;border:1px solid #e6ebf1}
.ic-new{background:var(--navy);border:1px solid var(--navy)}
.ic-tag{font-size:12.5px;font-weight:700;letter-spacing:.02em}
.ic-old .ic-tag{color:#8a99a8}.ic-new .ic-tag{color:#a7e3e0}
.ic-val{font-size:clamp(26px,4vw,38px);font-weight:800;line-height:1}
.ic-old .ic-val{color:#6b7a89}.ic-new .ic-val{color:#fff}
.ic-desc{font-size:13px;line-height:1.6}
.ic-old .ic-desc{color:#7a8896}.ic-new .ic-desc{color:#cdd9e3}
.ic-arrow{display:grid;place-items:center;font-size:26px;font-weight:800;color:var(--accent)}
@media(max-width:600px){.ic-row{grid-template-columns:1fr;gap:12px}.ic-arrow{transform:rotate(90deg)}}

/* 지사 신청 폼 — 지역 선택 칩 */
.regchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.regchip{display:inline-block;cursor:pointer}
.regchip input{display:none}
.regchip span{display:inline-block;padding:8px 14px;border:1px solid #d6dee6;border-radius:999px;font-size:14px;color:#5a6b7a;background:#fff;transition:.15s}
.regchip input:checked + span{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
.form-card input[type=file]{width:100%;box-sizing:border-box;padding:10px;border:1px dashed #cfd8e0;border-radius:10px;background:#fafcfd;font-size:14px}
.muted{color:#7a8896}

/* ===== 언어 전환기 ===== */
.langsel{position:relative;display:inline-block;margin-left:10px}
.langsel-btn{background:#fff;border:1px solid #d6dee6;border-radius:999px;padding:8px 13px;font-size:13px;color:var(--ink);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:5px}
.langsel-btn .cav{font-size:10px}
.langsel-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e6ebf1;border-radius:12px;box-shadow:0 14px 34px rgba(13,27,42,.16);padding:6px;display:none;grid-template-columns:1fr 1fr;gap:2px;min-width:300px;z-index:60}
.langsel:hover .langsel-menu,.langsel:focus-within .langsel-menu{display:grid}
.langsel-menu a{display:block;padding:9px 12px;border-radius:8px;font-size:13.5px;color:var(--ink);white-space:nowrap}
.langsel-menu a:hover{background:var(--bg2)}
.langsel-menu a.on{background:var(--accent);color:#fff;font-weight:700}
[dir=rtl] .langsel-menu{right:auto;left:0}
/* 모바일 메뉴 내 언어 */
.mlang{padding:6px 4px 12px;margin-bottom:6px;border-bottom:1px solid rgba(0,0,0,.08)}
.mlang .langsel{margin:0;display:block}
.mlang .langsel-btn{display:none}
.mlang .langsel-menu{display:grid;position:static;box-shadow:none;border:0;background:transparent;padding:0;grid-template-columns:repeat(3,1fr);min-width:0}
.mlang .langsel-menu a{padding:8px 6px;font-size:12.5px;text-align:center;border:1px solid #e6ebf1}
@media(max-width:900px){.langsel{display:none}}
/* RTL 최소 대응 */
[dir=rtl] .hero .wrap{direction:rtl}
[dir=rtl] .cta-band .wrap{direction:rtl}
[dir=rtl] .hero.has-bg::after{background:linear-gradient(270deg,rgba(13,27,42,.93) 0%,rgba(13,27,42,.66) 42%,rgba(13,27,42,.30) 100%)}

/* ===== 비교 페이지 ===== */
.cmp3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cmp3{background:#fff;border:1px solid #e6ebf1;border-radius:16px;padding:28px 24px;text-align:center;transition:transform .25s,box-shadow .25s}
.cmp3:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(13,27,42,.10)}
.cmp3-ic{width:52px;height:52px;margin:0 auto 14px;display:grid;place-items:center;border-radius:13px;background:rgba(14,165,160,.10);color:var(--accent-d)}
.cmp3-big{font-size:clamp(22px,2.8vw,30px);font-weight:800;color:var(--ink);letter-spacing:-.01em;margin-bottom:8px}
.cmp3-big span{font-size:15px;font-weight:700;color:#9fb0bf;margin:0 6px}
.cmp3 h4{font-size:16px;font-weight:800;color:var(--accent-d);margin:0 0 8px}
.cmp3 p{font-size:14px;line-height:1.7;color:#5a6b7a;margin:0}
.concl{background:var(--navy);color:#fff;border-radius:18px;padding:44px 40px;text-align:center}
.concl h2{font-size:clamp(22px,3vw,32px);font-weight:800;margin:0 0 14px;color:#fff}
.concl p{max-width:760px;margin:0 auto 24px;color:#cdd9e3;font-size:clamp(15px,1.6vw,17px);line-height:1.8}
.concl-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media(max-width:820px){.cmp3-grid{grid-template-columns:1fr}.concl{padding:34px 22px}}

/* ===== 실증 영상 임베드 ===== */
.demo-sec{background:#fff}
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}
.video-card{border:1px solid #e6ebf1;border-radius:16px;overflow:hidden;background:#0b1220;box-shadow:0 1px 0 rgba(16,42,67,.03)}
.video-card .vwrap{position:relative;width:100%;padding-top:56.25%;background:#000}
.video-card .vwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.video-cap{padding:16px 18px 18px;background:#fff}
.video-cap .vno{display:inline-block;font-size:12px;font-weight:800;color:var(--accent-d);letter-spacing:.04em;margin-bottom:6px}
.video-cap h4{font-size:16.5px;font-weight:800;color:var(--ink);margin:0 0 6px}
.video-cap p{font-size:13.5px;line-height:1.7;color:#5a6b7a;margin:0}
@media(max-width:820px){.video-grid{grid-template-columns:1fr}}

/* ===== 히어로 로고 교체 + 전기/샤이닝 효과 ===== */
.hero.has-bg .wrap{z-index:3}
.hero-logo{position:relative;display:inline-block;overflow:hidden;margin:4px 0 16px;line-height:0;
  animation:cbRise .8s cubic-bezier(.16,.84,.24,1) .12s both}
.hero-logo img{display:block;width:min(430px,74vw);height:auto;
  filter:drop-shadow(0 4px 22px rgba(14,165,160,.28))}
/* 로고 형태(마크·글자)만 따라 흐르는 전기 광택 — 로고 알파로 마스킹 */
.hero-logo-shine{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 44%,rgba(126,240,232,.9) 49%,rgba(255,255,255,1) 51%,rgba(126,240,232,.9) 53%,transparent 58%);
  background-size:260% 100%;background-position:210% 0;mix-blend-mode:screen;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;
  animation:cbLogoShine 5s ease-in-out 1s infinite}
@keyframes cbLogoShine{0%{background-position:210% 0}44%{background-position:-70% 0}100%{background-position:-70% 0}}

/* 히어로를 가로지르는 전기 스윕 */
.hero-spark{position:absolute;top:-10%;left:-35%;width:45%;height:120%;z-index:2;pointer-events:none;
  transform:skewX(-14deg);mix-blend-mode:screen;filter:blur(3px);
  background:linear-gradient(100deg,transparent 30%,rgba(120,225,255,.10) 44%,rgba(150,240,255,.42) 50%,rgba(120,225,255,.10) 56%,transparent 70%);
  animation:heroSweep 7s cubic-bezier(.5,0,.5,1) 1.2s infinite}
@keyframes heroSweep{0%{left:-35%}55%{left:135%}100%{left:135%}}

/* 제품을 '원본 이미지 밝기'로 켜는 레이어 — 같은 배경 이미지를 어둡게 덮은 오버레이 위에
   오버레이 없이(=원본 밝기) 제품 영역만 부드럽게 드러냈다가 사라짐. 가짜 글로우 아님. */
.hero-product-lit{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;
  background-size:cover;background-position:center;background-repeat:no-repeat;
  -webkit-mask:radial-gradient(42% 62% at 79% 60%, #000 46%, rgba(0,0,0,.35) 66%, transparent 100%);
          mask:radial-gradient(42% 62% at 79% 60%, #000 46%, rgba(0,0,0,.35) 66%, transparent 100%);
  animation:heroPower 7s ease-out 1.2s infinite}
/* 전원 들어오듯 살짝 깜빡였다가 확 켜지고 서서히 사라짐 */
@keyframes heroPower{0%,50%{opacity:0}55%{opacity:.6}58%{opacity:.15}62%{opacity:1}70%{opacity:.85}82%{opacity:0}100%{opacity:0}}

/* 헤더 로고 샤이닝(흰 헤더 위, 컬러 로고 밝게 스침) */
.hdr .logo{position:relative;overflow:hidden}
.logo-shine{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 45%,rgba(14,165,160,.7) 50%,rgba(126,240,232,.95) 51%,rgba(14,165,160,.7) 52%,transparent 57%);
  background-size:260% 100%;background-position:210% 0;mix-blend-mode:screen;
  -webkit-mask:url(../img/logo.png) no-repeat;mask:url(../img/logo.png) no-repeat;
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  animation:cbLogoShine 6.5s ease-in-out 2s infinite}

@media(prefers-reduced-motion:reduce){
  .hero-logo,.hero-logo-shine,.hero-spark,.hero-powerglow,.logo-shine{animation:none}
  .hero-logo-shine,.hero-spark,.hero-powerglow,.logo-shine{display:none}
}

/* ===== 메인 영상 섹션(관리자 관리) ===== */
.vsec{background:var(--navy);color:#fff}
.vsec .sec-title{color:#fff}
.vsec .sec-desc{color:#b7c2cd}
.vgrid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:8px}
.vcard{background:#0b1220;border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s}
.vcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.42);border-color:rgba(14,165,160,.5)}
.vthumb{position:relative;width:100%;aspect-ratio:9/16;background-color:#000;background-position:center;background-size:cover;background-repeat:no-repeat}
.vplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(230,33,33,.92);box-shadow:0 6px 18px rgba(0,0,0,.45);transition:transform .2s,background .2s}
.vplay::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-42%,-50%);border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #fff}
.vcard:hover .vplay{transform:translate(-50%,-50%) scale(1.1);background:#e62121}
.vmeta{padding:13px 15px}
.vmeta h4{font-size:14.5px;font-weight:800;color:#fff;margin:0 0 3px;line-height:1.35}
.vmeta p{font-size:12.5px;color:#93a4b3;margin:0;line-height:1.5}
.vthumb-logo{display:grid;place-items:center;background:linear-gradient(135deg,#0e1a2c,#0b1220)}
.vthumb-logo img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58%;max-width:180px;opacity:.45}
.vcard-empty{cursor:default}
.vcard-empty:hover{transform:none;box-shadow:none;border-color:rgba(255,255,255,.09)}
@media(max-width:900px){.vgrid4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.vgrid4{grid-template-columns:1fr}}

/* ===== 브라운가스 특징 카드 ===== */
.bgfeat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:8px}
.bgfeat{background:#fff;border:1px solid #e6ebf1;border-radius:16px;padding:24px 22px;transition:transform .2s,box-shadow .2s,border-color .2s}
.bgfeat:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(13,27,42,.1);border-color:#cfe6e4}
.bgfeat-ic{width:48px;height:48px;border-radius:12px;background:rgba(14,165,160,.1);color:var(--accent-d);display:grid;place-items:center;margin-bottom:12px}
.bgfeat h4{font-size:17px;font-weight:800;color:var(--ink);margin:0 0 10px}
.bgfeat ul{margin:0;padding:0;list-style:none}
.bgfeat li{font-size:13.5px;line-height:1.65;color:#5a6b7a;padding-left:14px;position:relative;margin-bottom:7px}
.bgfeat li::before{content:"–";position:absolute;left:0;color:var(--accent);font-weight:700}
@media(max-width:900px){.bgfeat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.bgfeat-grid{grid-template-columns:1fr}}
