/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jun 30 2026 | 05:44:09 */

  :root{
    --accent:#01a651; --accent-600:#018a43;
    --ink:#0a0e17; --ink2:#0e1422;
    --paper:#f6f6f3; --paper2:#ededea;
    --text:#14171f; --muted:#3f4654; --muted2:#5b626f; --hair:#d6d9df;
    --serif:'Newsreader','Noto Serif KR',serif;
    --mono:'Space Mono',monospace;
    --sans:'Pretendard','Pretendard Variable',-apple-system,BlinkMacSystemFont,sans-serif;
    --max:1280px;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{background:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;word-break:keep-all;line-height:1.5;color:#fff;overflow-x:hidden;}
  ::selection{background:var(--accent);color:#fff;}
  a{text-decoration:none;color:inherit;}
  img{display:block;max-width:100%;}
  section{position:relative;}

  /* ---------- reveal ---------- */
  [data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .85s cubic-bezier(.33,1,.68,1),transform .85s cubic-bezier(.33,1,.68,1);}
  [data-reveal].in{opacity:1;transform:none;}
  [data-reveal][data-d="1"]{transition-delay:.08s;}
  [data-reveal][data-d="2"]{transition-delay:.16s;}
  [data-reveal][data-d="3"]{transition-delay:.24s;}
  [data-reveal][data-d="4"]{transition-delay:.32s;}
  @media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none;}}

  @keyframes dwfloat{0%{transform:translateY(0)}100%{transform:translateY(-16px)}}
  @keyframes dwrise{0%{opacity:0;transform:translateY(26px)}100%{opacity:1;transform:translateY(0)}}

  /* ---------- nav ---------- */
  .navwrap{position:fixed;top:0;left:0;right:0;z-index:70;display:flex;justify-content:center;padding:16px 18px;pointer-events:none;}
  .nav{pointer-events:auto;width:100%;max-width:1180px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:11px 12px 11px 24px;border-radius:999px;
    background:rgba(255,255,255,.07);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 30px rgba(0,0,0,.18);
    transition:background .4s ease,color .4s ease,box-shadow .4s ease,border-color .4s ease;}
  .nav.scrolled{background:rgba(250,250,248,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#10141d;border:1px solid rgba(0,0,0,.06);box-shadow:0 14px 44px rgba(0,0,0,.13);}
  .nav .brand{display:flex;align-items:baseline;gap:2px;font-family:var(--serif);font-size:23px;font-weight:600;letter-spacing:-.01em;}
  .nav .brand b{font-weight:600;}
  .nav .menu{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:500;}
  .nav .menu a{opacity:.9;transition:opacity .2s;}
  .nav .menu a:hover{opacity:1;}
  .nav .right{display:flex;align-items:center;gap:14px;}
  .nav .kr{font-family:var(--mono);font-size:11px;letter-spacing:.08em;opacity:.7;}
  .btn-pill{display:inline-flex;align-items:center;gap:7px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;padding:9px 17px;border-radius:999px;white-space:nowrap;transition:background .25s,transform .25s;}
  .btn-pill:hover{background:var(--accent-600);transform:translateY(-1px);}
  .nav-toggle{display:none;}

  /* ---------- hero ---------- */
  .hero{position:relative;height:100vh;min-height:680px;overflow:hidden;background:var(--ink);}
  .hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
  .hero .scrim{position:absolute;inset:0;z-index:1;
    background:
      linear-gradient(180deg,rgba(10,14,23,.55) 0%,rgba(10,14,23,.18) 32%,rgba(10,14,23,.55) 70%,rgba(10,14,23,.96) 100%),
      radial-gradient(58% 62% at 72% 30%,rgba(1,166,81,.28),transparent 66%);}
  .hero .grid-lines{position:absolute;inset:0;z-index:1;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 11px);}
  .hero .ghost-year{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);font-family:var(--serif);font-style:italic;font-size:clamp(120px,30vw,460px);font-weight:300;color:rgba(255,255,255,.05);white-space:nowrap;pointer-events:none;z-index:1;}
  .hero .content{position:absolute;left:0;right:0;bottom:0;padding:0 28px 132px;z-index:2;}
  .hero .content .inner{max-width:var(--max);margin:0 auto;}
  .eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.22em;color:rgba(255,255,255,.66);margin-bottom:26px;}
  .hero h1{font-family:var(--serif);font-weight:300;color:#fff;font-size:clamp(58px,9.4vw,148px);line-height:.96;letter-spacing:-.025em;text-shadow:0 6px 40px rgba(0,0,0,.4);}
  .hero h1 .dot{color:var(--accent);}
  .hero .lead{margin-top:34px;max-width:540px;color:rgba(255,255,255,.82);font-size:17px;line-height:1.7;}
  .hero [data-anim]{animation:dwrise .9s ease both;}
  .hero .eyebrow{animation-delay:.05s;} .hero h1{animation-delay:.18s;} .hero .lead{animation-delay:.4s;}
  .ticker{position:absolute;left:0;right:0;bottom:30px;padding:0 28px;z-index:2;}
  .ticker .inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(255,255,255,.06);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:14px 16px 14px 26px;color:#fff;}
  .ticker .tag{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--accent);white-space:nowrap;}
  .ticker .sep{width:1px;height:14px;background:rgba(255,255,255,.25);}
  .ticker .feed{flex:1;min-width:0;overflow:hidden;height:20px;position:relative;}
  .ticker .feed ul{list-style:none;position:absolute;animation:tickerScroll 12s steps(3) infinite;}
  .ticker .feed li{height:20px;font-size:14px;opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  @keyframes tickerScroll{0%,28%{transform:translateY(0)}33%,61%{transform:translateY(-20px)}66%,94%{transform:translateY(-40px)}100%{transform:translateY(-60px)}}
  .ticker .arrow{width:38px;height:38px;flex:none;border-radius:999px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--mono);}
  .scrollcue{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:2;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:rgba(255,255,255,.5);display:flex;flex-direction:column;align-items:center;gap:8px;}
  .scrollcue .line{width:1px;height:34px;background:linear-gradient(rgba(255,255,255,.5),transparent);animation:cue 1.8s ease-in-out infinite;}
  @keyframes cue{0%,100%{opacity:.3;transform:scaleY(.6);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}

  /* ---------- shared layout ---------- */
  .wrap{max-width:var(--max);margin:0 auto;}
  .kicker{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:#9aa0ab;text-transform:uppercase;}
  .sec-light{background:var(--paper);color:var(--text);}
  .sec-dark{background:var(--ink);color:#fff;}
  .pad{padding:clamp(96px,11vw,150px) 28px;}

  /* ---------- stats ---------- */
  .stats{background:var(--ink);padding:74px 28px;border-top:1px solid rgba(255,255,255,.07);}
  .stats .grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
  .stat .big{font-family:var(--serif);font-weight:300;color:#fff;font-size:clamp(44px,5vw,72px);line-height:1;letter-spacing:-.02em;}
  .stat{padding-right:20px;border-right:1px solid rgba(255,255,255,.08);}
  .stat .lab{margin-top:14px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:rgba(255,255,255,.5);text-transform:uppercase;}

  /* ---------- about ---------- */
  .about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,7vw,100px);align-items:start;}
  .about h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,4.6vw,62px);line-height:1.15;letter-spacing:-.02em;}
  .about h2 em{font-style:italic;color:var(--accent);}
  .about p{font-size:16.5px;line-height:1.85;color:var(--muted);}
  .about p+p{margin-top:22px;}
  .about strong{font-weight:600;color:var(--text);}
  .chips{margin-top:34px;display:flex;gap:10px;flex-wrap:wrap;}
  .chip{font-family:var(--mono);font-size:12px;padding:8px 16px;border:1px solid #d9dce2;border-radius:999px;color:var(--muted2);}

  /* ---------- scrub (webp scroll animation) ---------- */
  .scrub{position:relative;background:#05070d;height:380vh;}
  .scrub-stage{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;}
  .scrub canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  .scrub .v{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,13,.78) 0%,rgba(5,7,13,.30) 42%,rgba(5,7,13,.10) 70%,rgba(5,7,13,.55) 100%);}
  .scrub .stage-inner{position:relative;z-index:2;max-width:var(--max);width:100%;margin:0 auto;padding:0 28px;}
  .scrub .kicker{color:rgba(255,255,255,.55);}
  .scrub-cap{position:relative;height:230px;}
  .scrub-cap .cap{position:absolute;left:0;top:0;max-width:560px;opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease;}
  .scrub-cap .cap.on{opacity:1;transform:none;}
  .scrub-cap h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5vw,68px);line-height:1.05;letter-spacing:-.02em;color:#fff;}
  .scrub-cap h2 em{font-style:italic;color:var(--accent);}
  .scrub-cap p{margin-top:18px;font-size:16.5px;line-height:1.75;color:rgba(255,255,255,.78);}
  .scrub-prog{position:absolute;left:28px;right:28px;bottom:46px;z-index:2;max-width:var(--max);margin:0 auto;}
  .scrub-prog .bar{height:2px;background:rgba(255,255,255,.16);position:relative;overflow:hidden;}
  .scrub-prog .bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);}
  .scrub-prog .meta{display:flex;justify-content:space-between;margin-top:12px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.55);}
  .scrub .loader{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:rgba(255,255,255,.6);}

  /* ---------- products ---------- */
  .prod-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:48px;}
  .prod-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(38px,5.4vw,76px);line-height:1;letter-spacing:-.02em;}
  .prod-head p{max-width:340px;font-size:15px;line-height:1.7;color:var(--muted2);}
  .prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
  .card{display:block;background:var(--paper2);padding:9px;border:1px solid #e3e3dd;border-radius:20px;transition:box-shadow .4s ease,transform .4s ease;}
  .card:hover{box-shadow:0 24px 60px rgba(0,0,0,.13);transform:translateY(-4px);}
  .card .inner{background:#fff;border:1px solid #ececec;border-radius:13px;overflow:hidden;}
  .card .ph{position:relative;height:240px;background:#e9eaec;overflow:hidden;}
  .card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
  .card:hover .ph img{transform:scale(1.05);}
  .card .num{position:absolute;left:18px;top:14px;font-family:var(--serif);font-style:italic;font-size:28px;color:rgba(255,255,255,.92);text-shadow:0 2px 12px rgba(0,0,0,.5);z-index:2;}
  .card .body{padding:24px 24px 28px;}
  .card .body h3{font-family:var(--mono);font-size:15px;font-weight:700;letter-spacing:.04em;}
  .card .body p{margin:12px 0 20px;font-size:14.5px;line-height:1.7;color:var(--muted2);}
  .card .more{font-size:13px;font-weight:600;color:var(--accent);}

  /* ---------- ev ---------- */
  .ev{overflow:hidden;}
  .ev .glow{position:absolute;inset:0;background:radial-gradient(50% 60% at 80% 30%,rgba(1,166,81,.2),transparent 66%);}
  .ev-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,84px);align-items:center;}
  .badge{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--accent);border:1px solid rgba(1,166,81,.45);padding:6px 14px;border-radius:999px;margin-bottom:28px;}
  .ev h2{font-family:var(--serif);font-weight:300;font-size:clamp(38px,5.2vw,72px);line-height:1.05;letter-spacing:-.02em;margin-bottom:26px;}
  .ev p.lead{max-width:460px;color:rgba(255,255,255,.78);font-size:16.5px;line-height:1.8;margin-bottom:40px;}
  .ev-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:480px;}
  .ev-mini .n{font-family:var(--serif);font-weight:300;font-size:40px;line-height:1;}
  .ev-mini .n small{font-size:20px;}
  .ev-mini .l{margin-top:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:rgba(255,255,255,.55);}
  .ev-visual{position:relative;height:clamp(360px,46vw,560px);border:1px solid rgba(255,255,255,.1);overflow:hidden;border-radius:6px;}
  .ev-visual img{width:100%;height:100%;object-fit:cover;}
  .ev-visual .tint{position:absolute;inset:0;background:radial-gradient(55% 55% at 50% 45%,rgba(1,166,81,.22),transparent 70%);mix-blend-mode:screen;}
  .ev-visual .fig{position:absolute;left:18px;bottom:16px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:rgba(255,255,255,.8);}
  .ev-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;}
  .ev-thumbs img{height:90px;width:100%;object-fit:cover;border-radius:4px;opacity:.85;}

  /* ---------- heritage ---------- */
  .her-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:56px;}
  .her-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(38px,5.4vw,76px);line-height:1;letter-spacing:-.02em;}
  .her-head p{max-width:320px;font-size:15px;line-height:1.7;color:var(--muted2);}
  .timeline{border-top:1px solid var(--hair);}
  .tl-row{display:grid;grid-template-columns:160px 1fr;gap:30px;padding:26px 0;border-bottom:1px solid var(--hair);position:relative;}
  .tl-row .y{font-family:var(--serif);font-weight:300;font-size:clamp(30px,3.2vw,44px);line-height:1;letter-spacing:-.01em;color:var(--text);position:relative;padding-top:14px;}
  .tl-row .y::before{content:"";position:absolute;left:0;top:0;width:46px;height:2px;background:var(--accent);}
  .tl-row ul{list-style:none;display:flex;flex-direction:column;gap:8px;padding-top:14px;}
  .tl-row li{font-size:15.5px;line-height:1.55;color:var(--muted);}
  .tl-row li b{color:var(--text);font-weight:600;}

  /* ---------- sites ---------- */
  .sites-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:14px;}
  .dwsite{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:4/3;background:var(--ink2);}
  .dwsite img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
  .dwsite:hover img{transform:scale(1.06);}
  .dwsite .cap{position:absolute;left:0;right:0;bottom:0;padding:20px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff;}
  .dwsite .cap b{display:block;font-size:17px;font-weight:600;}
  .dwsite .cap span{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:rgba(255,255,255,.7);}

  /* ---------- statement ---------- */
  .statement{text-align:center;padding:clamp(100px,13vw,170px) 28px;}
  .statement h2{font-family:var(--serif);font-weight:300;font-size:clamp(32px,4.6vw,66px);line-height:1.25;letter-spacing:-.02em;max-width:1080px;margin:36px auto 0;}
  .statement h2 em{font-style:italic;color:var(--accent);}
  .statement .kicker{color:rgba(255,255,255,.5);}

  /* ---------- esg/careers ---------- */
  .duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:320px;padding:40px;overflow:hidden;border-radius:6px;transition:box-shadow .4s ease,transform .4s ease;}
  .panel:hover{transform:translateY(-3px);}
  .panel.light{background:#fff;border:1px solid #eaeaea;}
  .panel.light:hover{box-shadow:0 18px 50px rgba(0,0,0,.08);}
  .panel.dark{background:var(--ink);color:#fff;}
  .panel.dark .glow{position:absolute;inset:0;background:radial-gradient(60% 60% at 80% 20%,rgba(1,166,81,.24),transparent 68%);}
  .panel .top{font-family:var(--mono);font-size:11px;letter-spacing:.16em;position:relative;}
  .panel.light .top{color:var(--accent);} .panel.dark .top{color:rgba(255,255,255,.65);}
  .panel h3{position:relative;font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.2vw,42px);line-height:1.1;margin-bottom:14px;}
  .panel p{position:relative;font-size:15px;line-height:1.7;max-width:380px;}
  .panel.light p{color:var(--muted2);} .panel.dark p{color:rgba(255,255,255,.74);}
  .panel .more{position:relative;display:inline-block;margin-top:22px;font-size:13px;font-weight:600;}
  .panel.light .more{color:var(--accent);} .panel.dark .more{color:#fff;}

  /* ---------- news ---------- */
  .news-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(40px,6vw,80px);align-items:start;}
  .news-grid h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,4.4vw,56px);letter-spacing:-.02em;}
  .news-head{display:flex;align-items:center;gap:18px;margin-bottom:30px;}
  .news-head span{font-family:var(--mono);font-size:12px;color:#9aa0ab;}
  .news-list{border-top:1px solid var(--text);}
  .news-list a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 4px;border-bottom:1px solid var(--hair);transition:background .25s,padding-left .25s;}
  .news-list a:hover{background:#efefe9;padding-left:12px;}
  .news-list h4{font-size:18px;font-weight:500;line-height:1.4;color:#1c2230;}
  .news-list .d{font-family:var(--mono);font-size:12px;color:#9aa0ab;white-space:nowrap;}
  .mag .label{font-family:var(--mono);font-size:12px;letter-spacing:.16em;color:#9aa0ab;margin-bottom:22px;}
  .mag .cover{position:relative;aspect-ratio:3/4;border-radius:6px;overflow:hidden;background:var(--ink2);}
  .mag .cover img{width:100%;height:100%;object-fit:cover;}
  .mag .more{display:inline-block;margin-top:20px;font-size:13px;font-weight:600;color:var(--accent);}

  /* ---------- cta ---------- */
  .cta{background:var(--accent);color:#fff;padding:clamp(70px,8vw,110px) 28px;}
  .cta .inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;}
  .cta h2{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4vw,56px);line-height:1.1;letter-spacing:-.01em;}
  .cta a{display:inline-flex;align-items:center;gap:12px;background:#fff;color:var(--accent-600);font-size:15px;font-weight:700;padding:18px 30px;border-radius:999px;white-space:nowrap;transition:transform .25s;}
  .cta a:hover{transform:translateY(-2px);}

  /* ---------- footer ---------- */
  footer{background:var(--ink);color:#fff;padding:clamp(70px,8vw,100px) 28px 50px;}
  .foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.1);}
  .foot-top .big{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5vw,64px);line-height:1.1;letter-spacing:-.02em;}
  .foot-top .big em{font-style:italic;color:var(--accent);}
  .foot-cols{display:flex;gap:60px;flex-wrap:wrap;}
  .foot-cols .h{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.45);margin-bottom:18px;}
  .foot-cols .links{display:flex;flex-direction:column;gap:12px;font-size:14px;color:rgba(255,255,255,.8);}
  .foot-cols .links a:hover{color:#fff;}
  .foot-cols .contact{font-size:14px;line-height:1.9;color:rgba(255,255,255,.8);}
  .foot-bot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:30px;}
  .foot-bot .brand{display:flex;align-items:baseline;gap:2px;font-family:var(--serif);font-size:22px;font-weight:600;}
  .foot-bot .brand b{color:var(--accent);}
  .foot-bot .copy{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:rgba(255,255,255,.4);}

  /* ---------- responsive ---------- */
  @media (max-width:1000px){
    .nav .menu{display:none;}
    .nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;}
    .about-grid,.ev-grid,.news-grid,.duo{grid-template-columns:1fr;}
    .prod-grid,.sites-grid{grid-template-columns:repeat(2,1fr);}
    .stats .grid{grid-template-columns:repeat(2,1fr);gap:30px 24px;}
    .stat:nth-child(2n){border-right:0;}
  }
  @media (max-width:640px){
    .hero .content{padding:0 22px 110px;}
    .ticker{display:none;}
    .prod-grid,.sites-grid{grid-template-columns:1fr;}
    .tl-row{grid-template-columns:1fr;gap:6px;}
    .tl-row .y{padding-top:14px;}
    .stats .grid{grid-template-columns:1fr 1fr;}
    .pad{padding:80px 22px;}
  }

/* =================================================================
   SUB-PAGE SYSTEM (menu pages + tabs) — shares all tokens above
   ================================================================= */
.subhero{position:relative;background:var(--ink);color:#fff;padding:150px 28px 64px;overflow:hidden;}
.subhero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 85% at 80% 18%,rgba(1,166,81,.22),transparent 64%);}
.subhero::after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 11px);}
.subhero .inner{position:relative;max-width:var(--max);margin:0 auto;}
.subhero .crumb{font-family:var(--mono);font-size:12px;letter-spacing:.18em;color:rgba(255,255,255,.55);margin-bottom:22px;}
.subhero .crumb a{color:rgba(255,255,255,.55);}
.subhero .crumb a:hover{color:#fff;}
.subhero .crumb span{color:var(--accent);}
.subhero h1{font-family:var(--serif);font-weight:300;font-size:clamp(40px,6vw,84px);line-height:1;letter-spacing:-.02em;}
.subhero h1 em{font-style:italic;color:var(--accent);}
.subhero .sub{margin-top:20px;font-size:16px;color:rgba(255,255,255,.72);max-width:580px;line-height:1.7;}

.tabbar{position:sticky;top:72px;z-index:40;background:rgba(10,14,23,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1);}
.tabbar .inner{max-width:var(--max);margin:0 auto;display:flex;gap:2px;overflow-x:auto;padding:0 18px;scrollbar-width:none;}
.tabbar .inner::-webkit-scrollbar{display:none;}
.tab{flex:none;appearance:none;background:none;border:0;cursor:pointer;color:rgba(255,255,255,.6);font-family:var(--sans);font-size:14.5px;font-weight:500;padding:19px 18px;position:relative;white-space:nowrap;transition:color .25s;}
.tab:hover{color:#fff;}
.tab[aria-selected="true"]{color:#fff;}
.tab[aria-selected="true"]::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--accent);}

.panel{display:none;}
.panel.active{display:block;animation:panelIn .55s cubic-bezier(.33,1,.68,1) both;}
@keyframes panelIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.panel-pad{padding:clamp(70px,9vw,120px) 28px;}

.eyebrow-k{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:#9aa0ab;text-transform:uppercase;margin-bottom:26px;}
.section-title{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4vw,54px);line-height:1.1;letter-spacing:-.02em;}
.section-title em{font-style:italic;color:var(--accent);}
.lead-q{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(24px,3.2vw,42px);line-height:1.45;color:var(--text);letter-spacing:-.01em;}
.lead-q em{color:var(--accent);font-style:italic;}
.prose p{font-size:16.5px;line-height:1.9;color:var(--muted);}
.prose p+p{margin-top:20px;}
.prose strong{color:var(--text);font-weight:600;}
.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,6vw,90px);align-items:start;}

.figrow{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;border-top:1px solid var(--hair);padding-top:36px;}
.fig .n{font-family:var(--serif);font-weight:300;font-size:clamp(36px,4vw,58px);line-height:1;color:var(--text);letter-spacing:-.02em;}
.fig .n small{font-size:.38em;}
.fig .l{margin-top:12px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--muted2);text-transform:uppercase;}

.sashi{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.sashi .c{background:#fff;border:1px solid #e9e9e4;border-radius:12px;padding:42px 24px;text-align:center;}
.sashi .c .ko{font-family:var(--serif);font-size:32px;color:var(--accent);letter-spacing:.04em;}
.sashi .c .en{margin-top:12px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--muted2);text-transform:uppercase;}

.ceo-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,80px);align-items:start;}
.ceo-photo{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:var(--ink2);}
.ceo-photo img{width:100%;height:100%;object-fit:cover;}
.ceo-photo .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.4);background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 1px,transparent 1px 12px);}
.sign{margin-top:34px;display:flex;align-items:baseline;gap:14px;}
.sign .role{font-size:14px;color:var(--muted2);}
.sign .name{font-family:var(--serif);font-size:30px;}

.sitegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:46px;}
.sitecard{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:var(--ink2);}
.sitecard img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.sitecard:hover img{transform:scale(1.06);}
.sitecard .cap{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;}
.sitecard .cap b{display:block;font-size:16px;}
.sitecard .cap span{font-family:var(--mono);font-size:11px;color:rgba(255,255,255,.72);}
.sitelist{border-top:1px solid var(--hair);}
.sitelist .row{display:grid;grid-template-columns:190px 1fr auto;gap:24px;padding:22px 2px;border-bottom:1px solid var(--hair);align-items:baseline;}
.sitelist .row b{font-size:16.5px;}
.sitelist .row .addr{color:var(--muted);font-size:15px;line-height:1.6;}
.sitelist .row .area{font-family:var(--mono);font-size:12px;color:var(--muted2);white-space:nowrap;}
.barchart{display:flex;align-items:flex-end;gap:18px;height:240px;border-bottom:1px solid var(--hair);padding-top:10px;}
.barchart .bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:12px;height:100%;}
.barchart .bar i{width:100%;max-width:64px;background:linear-gradient(var(--accent),rgba(1,166,81,.5));border-radius:6px 6px 0 0;display:block;}
.barchart .bar .v{font-family:var(--mono);font-size:12px;color:var(--text);font-weight:700;}
.barchart .bar .yr{font-family:var(--mono);font-size:11px;color:var(--muted2);}

@media (max-width:900px){
  .two-col,.ceo-grid{grid-template-columns:1fr;}
  .figrow{grid-template-columns:repeat(2,1fr);}
  .sashi,.sitegrid{grid-template-columns:1fr;}
  .sitelist .row{grid-template-columns:1fr;gap:6px;}
}
/* mobile dropdown menu (hamburger) */
.nav{position:relative;}
@media (max-width:1000px){
  .nav .menu.open{display:flex;position:absolute;top:calc(100% + 8px);left:0;right:0;flex-direction:column;gap:2px;background:rgba(10,14,23,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:10px;box-shadow:0 18px 50px rgba(0,0,0,.4);}
  .nav.scrolled .menu.open{background:rgba(250,250,248,.97);border-color:rgba(0,0,0,.08);}
  .nav .menu.open a{padding:13px 16px;border-radius:10px;font-size:15px;}
  .nav .menu.open a:hover{background:rgba(255,255,255,.06);}
}

/* customers + C.I */
.custgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;}
.custgrid .c{background:#fff;border:1px solid #e8e8e4;border-radius:12px;height:104px;display:flex;align-items:center;justify-content:center;padding:20px;transition:box-shadow .3s ease,transform .3s ease;}
.custgrid .c:hover{box-shadow:0 12px 30px rgba(0,0,0,.08);transform:translateY(-2px);}
.custgrid .c img{max-height:52px;max-width:130px;object-fit:contain;}
.ci-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,80px);align-items:center;}
.ci-symbol{position:relative;border-radius:14px;overflow:hidden;background:#fff;border:1px solid #e9e9e4;padding:46px;display:flex;align-items:center;justify-content:center;}
.ci-symbol img{max-width:100%;height:auto;}
.swatch{display:inline-flex;align-items:center;gap:14px;margin-top:20px;padding:14px 18px;border:1px solid var(--hair);border-radius:12px;background:#fff;}
.swatch i{width:42px;height:42px;border-radius:8px;background:var(--accent);display:block;}
.swatch .hex{font-family:var(--mono);font-size:13px;color:var(--text);}
.swatch .nm{font-size:12px;color:var(--muted2);}
@media(max-width:900px){.ci-wrap{grid-template-columns:1fr;}}
/* ===== richer detail-page components ===== */
.panel-pad{min-height:56vh;}
.feature-band{position:relative;min-height:clamp(300px,40vw,440px);display:flex;align-items:flex-end;overflow:hidden;border-radius:16px;}
.feature-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.feature-band .ov{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,14,23,.9),rgba(10,14,23,.3) 62%,rgba(10,14,23,.05));}
.feature-band .ct{position:relative;padding:clamp(28px,4vw,48px);color:#fff;max-width:640px;}
.feature-band .ct .k{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--accent);margin-bottom:14px;}
.feature-band .ct h3{font-family:var(--serif);font-weight:300;font-size:clamp(26px,3.4vw,46px);line-height:1.08;letter-spacing:-.02em;}
.feature-band .ct p{margin-top:14px;color:rgba(255,255,255,.85);font-size:16px;line-height:1.7;max-width:480px;}

.cta-band{position:relative;background:var(--ink);color:#fff;padding:clamp(64px,8vw,104px) 28px;overflow:hidden;}
.cta-band::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 95% at 82% 28%,rgba(1,166,81,.22),transparent 62%);}
.cta-band::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 11px);}
.cta-band .inner{position:relative;z-index:1;max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;}
.cta-band .k{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:rgba(255,255,255,.55);margin-bottom:16px;}
.cta-band h2{font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.6vw,52px);line-height:1.12;letter-spacing:-.02em;}
.cta-band h2 em{font-style:italic;color:var(--accent);}
.btn-lg{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#fff;font-size:15px;font-weight:700;padding:17px 30px;border-radius:999px;white-space:nowrap;transition:transform .25s,background .25s;}
.btn-lg:hover{background:var(--accent-600);transform:translateY(-2px);}

/* value card top accent + info band */
.sashi .c{position:relative;overflow:hidden;}
.sashi .c::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--accent),transparent);}
.infoband{position:relative;background:var(--ink);color:#fff;border-radius:16px;padding:clamp(34px,5vw,56px);overflow:hidden;}
.infoband::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 85% 20%,rgba(1,166,81,.2),transparent 64%);}
.infoband .inner{position:relative;}
.infoband .figrow{border-top-color:rgba(255,255,255,.14);}
.infoband .fig .n{color:#fff;}
.infoband .fig .l{color:rgba(255,255,255,.55);}
@media(max-width:640px){.feature-band .ct p{display:none;}}
/* ===== brand logo ===== */
.brand{align-items:center;gap:10px;}
.brand-mark{height:26px;width:auto;display:block;flex:none;}
.foot-logo{height:38px;width:auto;display:block;opacity:.95;}
/* full logo swap (dark/light nav) */
.brand .logo{height:30px;width:auto;aspect-ratio:1285/274;flex:none;display:block;}
.brand .logo-dark{display:none;}
.nav.scrolled .brand .logo-light{display:none;}
.nav.scrolled .brand .logo-dark{display:block;}
@media(max-width:640px){.brand .logo{height:24px;}}
/* ===== charts (경영현황) ===== */
.revchart{display:flex;align-items:flex-end;gap:14px;height:300px;border-bottom:1px solid var(--hair);padding-top:10px;}
.revchart .col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;height:100%;}
.revchart .col .bar{width:100%;max-width:74px;background:linear-gradient(180deg,var(--accent),rgba(1,166,81,.5));border-radius:7px 7px 0 0;min-height:4px;display:flex;align-items:flex-start;justify-content:center;transition:height .9s cubic-bezier(.33,1,.68,1);}
.revchart .col .bar span{color:#fff;font-family:var(--mono);font-size:12px;font-weight:700;margin-top:10px;white-space:nowrap;}
.revchart .col.fc .bar{background:linear-gradient(180deg,#94a3b8,rgba(148,163,184,.45));}
.revchart .col .yr{font-family:var(--mono);font-size:11px;color:var(--muted2);text-align:center;}
.revchart .col.fc .yr{color:var(--accent);}
.donuts{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:24px;}
.donut-card h4{font-size:15px;font-weight:600;color:var(--text);margin-bottom:22px;}
.donut-wrap{display:flex;align-items:center;gap:28px;flex-wrap:wrap;}
.donut{width:168px;height:168px;border-radius:50%;flex:none;position:relative;}
.donut::after{content:"";position:absolute;inset:27%;background:var(--paper);border-radius:50%;}
.legend{display:flex;flex-direction:column;gap:10px;font-size:13.5px;min-width:190px;flex:1;}
.legend .li{display:flex;align-items:center;gap:9px;color:var(--muted);}
.legend .li i{width:11px;height:11px;border-radius:3px;flex:none;}
.legend .li b{color:var(--text);margin-left:auto;font-family:var(--mono);font-size:12.5px;}
@media(max-width:900px){.donuts{grid-template-columns:1fr;}}
@media(max-width:640px){.revchart{gap:5px;height:220px;}.revchart .col .bar span{font-size:9px;margin-top:6px;}}
/* ===== nav dropdown ===== */
.menu .m{position:relative;display:flex;align-items:center;}
.dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(6px);padding-top:16px;min-width:186px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,transform .22s ease;z-index:80;}
.menu .m:hover .dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);}
.dropdown-inner{background:rgba(12,16,26,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:8px;box-shadow:0 22px 54px rgba(0,0,0,.45);display:flex;flex-direction:column;gap:1px;}
.dropdown a{display:block;padding:10px 16px;border-radius:9px;font-size:13.5px;font-weight:500;color:rgba(255,255,255,.82)!important;opacity:1!important;white-space:nowrap;transition:background .18s,color .18s;}
.dropdown a:hover{background:rgba(1,166,81,.18);color:#fff!important;}
@media(max-width:1000px){.dropdown{display:none!important;}.menu .m{display:block;}}
/* ===== youtube facade ===== */
.ytfacade{position:relative;cursor:pointer;}
.ytfacade>img{width:100%;height:100%;object-fit:cover;display:block;}
.ytfacade::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.35));transition:background .3s;}
.ytfacade:hover::after{background:linear-gradient(rgba(0,0,0,.05),rgba(0,0,0,.2));}
.ytfacade.loaded{cursor:default;}
.ytfacade.loaded::after{content:none;}
.ytplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:80px;height:80px;border-radius:50%;background:rgba(1,166,81,.94);display:flex;align-items:center;justify-content:center;z-index:2;transition:transform .3s ease,background .3s;box-shadow:0 12px 34px rgba(0,0,0,.45);}
.ytfacade:hover .ytplay{transform:translate(-50%,-50%) scale(1.09);background:var(--accent);}
.ytplay svg{width:30px;height:30px;margin-left:5px;fill:#fff;}

/* ===== lightbox ===== */
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(5,7,13,.92);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:28px;}
.lightbox.open{display:flex;animation:lbfade .25s ease;}
@keyframes lbfade{from{opacity:0}to{opacity:1}}
.lb-inner{position:relative;max-width:940px;width:100%;background:#fff;border-radius:18px;overflow:hidden;display:grid;grid-template-columns:1.15fr .85fr;max-height:88vh;}
.lb-img{background:#eef0ec;display:flex;align-items:center;justify-content:center;padding:24px;min-height:340px;}
.lb-img img{max-width:100%;max-height:78vh;object-fit:contain;}
.lb-info{padding:44px 40px;display:flex;flex-direction:column;justify-content:center;}
.lb-info .k{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--accent);margin-bottom:14px;}
.lb-info h3{font-family:var(--serif);font-weight:300;font-size:clamp(26px,3vw,38px);line-height:1.15;color:var(--text);}
.lb-info p{margin-top:18px;font-size:15.5px;line-height:1.8;color:var(--muted);}
.lb-info .tags{margin-top:22px;display:flex;gap:8px;flex-wrap:wrap;}
.lb-close{position:absolute;top:18px;right:20px;width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.5);border:0;color:#fff;font-size:20px;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.lb-close:hover{background:rgba(0,0,0,.75);}
.card[data-lb]{cursor:pointer;}
.card[data-lb] .ph::after{content:"⤢ 자세히 보기";position:absolute;left:0;right:0;bottom:0;padding:10px;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.55));opacity:0;transition:opacity .3s;}
.card[data-lb]:hover .ph::after{opacity:1;}
@media(max-width:760px){.lb-inner{grid-template-columns:1fr;max-height:90vh;overflow:auto;}.lb-img{min-height:240px;}}
/* lightbox thumbnails (제품/절개 전환) */
.lb-thumbs{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap;}
.lb-thumb{padding:0;border:2px solid var(--hair);border-radius:10px;overflow:hidden;cursor:pointer;background:#fff;width:88px;transition:border-color .2s;}
.lb-thumb.on{border-color:var(--accent);}
.lb-thumb img{width:100%;height:54px;object-fit:cover;display:block;}
.lb-thumb span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--muted2);padding:5px 0;text-align:center;}
.lb-thumb.on span{color:var(--accent);}
/* ===== material icons ===== */
.material-symbols-outlined{font-family:'Material Symbols Outlined';font-weight:normal;font-style:normal;font-size:24px;line-height:1;display:inline-block;white-space:nowrap;direction:ltr;font-variation-settings:'FILL' 0,'wght' 300,'GRAD' 0,'opsz' 40;}
.icon-circle{width:58px;height:58px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:rgba(1,166,81,.1);color:var(--accent);margin-bottom:22px;}
.icon-circle .material-symbols-outlined{font-size:30px;}
.icard{background:#fff;border:1px solid #eaeaea;border-radius:16px;padding:34px;transition:box-shadow .35s ease,transform .35s ease;}
.icard:hover{box-shadow:0 18px 44px rgba(0,0,0,.08);transform:translateY(-3px);}
.icard h3{font-family:var(--serif);font-weight:300;font-size:22px;color:var(--text);margin-bottom:12px;}
.icard p{font-size:14.5px;line-height:1.7;color:var(--muted2);}
.icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media(max-width:900px){.icon-grid{grid-template-columns:1fr;}}
.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.cert-card{background:#fff;border:1px solid #e6e6e2;border-radius:12px;overflow:hidden;}
.cert-card .pic{background:#f0f0ec;display:flex;align-items:center;justify-content:center;padding:16px;}
.cert-card .pic img{max-width:100%;height:300px;object-fit:contain;}
.cert-card .cap{padding:16px 20px;border-top:1px solid #eee;}
.cert-card .cap b{display:block;font-size:15px;color:var(--text);}
.cert-card .cap span{font-family:var(--mono);font-size:11px;color:var(--muted2);}
@media(max-width:640px){.cert-grid{grid-template-columns:1fr;}}
/* ===== 제품개요 editorial layout (주요제품 카드와 다르게) ===== */
.po-list{display:flex;flex-direction:column;}
.po-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,72px);align-items:center;padding:46px 0;border-top:1px solid var(--hair);}
.po-row:last-child{border-bottom:1px solid var(--hair);}
.po-row:nth-child(even) .po-img{order:2;}
.po-img{background:#fff;border:1px solid #ececec;border-radius:16px;height:300px;display:flex;align-items:center;justify-content:center;padding:30px;}
.po-img img{max-width:100%;max-height:100%;object-fit:contain;}
.po-num{font-family:var(--serif);font-style:italic;font-size:50px;color:var(--accent);line-height:1;opacity:.45;margin-bottom:8px;}
.po-txt h3{font-family:var(--serif);font-weight:300;font-size:clamp(26px,3.2vw,42px);line-height:1.1;letter-spacing:-.01em;margin-bottom:16px;}
.po-txt p{font-size:16.5px;line-height:1.8;color:var(--muted);max-width:480px;}
.po-txt .tag{display:inline-block;margin-top:18px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--muted2);border:1px solid var(--hair);border-radius:999px;padding:6px 14px;}
@media(max-width:760px){.po-row{grid-template-columns:1fr;gap:18px;padding:34px 0;}.po-row:nth-child(even) .po-img{order:0;}.po-img{height:220px;}}

/* patent thumbnails */
.patent-grid{display:flex;gap:14px;flex-wrap:wrap;}
.patent-grid .p{background:#fff;border:1px solid #e6e6e2;border-radius:8px;padding:8px;width:110px;}
.patent-grid .p img{width:100%;height:130px;object-fit:contain;}
.patent-grid .p span{display:block;text-align:center;font-family:var(--mono);font-size:10px;color:var(--muted2);margin-top:6px;}
/* 윤리헌장 */
.charter{display:flex;flex-direction:column;border-top:1px solid var(--hair);}
.ch-item{display:flex;gap:22px;align-items:flex-start;padding:22px 2px;border-bottom:1px solid var(--hair);}
.ch-no{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--accent);line-height:1.1;flex:none;min-width:46px;}
.ch-item p{font-size:16px;line-height:1.7;color:var(--muted);padding-top:4px;margin:0;}
/* ===== 사업장안내 site blocks (사진+지도 상단 나란히, 정보 하단 전체폭) ===== */
.site-blocks{display:flex;flex-direction:column;gap:24px;}
.site-block{display:block;border:1px solid var(--hair);border-radius:16px;overflow:hidden;background:#fff;}
.site-media{display:grid;grid-template-columns:1fr 1fr;background:var(--ink2);}
.site-media img{width:100%;height:clamp(230px,25vw,310px);object-fit:cover;display:block;}
.site-media iframe{width:100%;height:clamp(230px,25vw,310px);border:0;display:block;filter:grayscale(.12);}
.site-media.nomap{grid-template-columns:1fr;}
.site-media.nomap iframe{height:clamp(260px,27vw,360px);}
.site-info{padding:clamp(24px,3vw,36px);display:grid;grid-template-columns:1fr 1fr;column-gap:48px;align-content:start;}
.site-info .nm{grid-column:1 / -1;font-family:var(--serif);font-weight:300;font-size:clamp(22px,2.4vw,30px);margin-bottom:12px;}
.site-info .nm small{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--accent);display:block;margin-top:6px;}
.site-info .row{display:flex;gap:14px;padding:9px 0;font-size:14.5px;border-bottom:1px solid #f1f1ec;}
.site-info .row:first-of-type{grid-column:1 / -1;}
.site-info .row b{flex:none;width:60px;color:var(--muted2);font-weight:600;font-family:var(--mono);font-size:11px;letter-spacing:.06em;padding-top:2px;}
.site-info .row span{color:var(--muted);line-height:1.6;}
@media(max-width:760px){.site-media{grid-template-columns:1fr;}.site-info{grid-template-columns:1fr;}.site-media img,.site-media iframe{height:230px;}}
/* ===== 생산설비 카테고리 (구분별) ===== */
.fac-cat{margin-top:50px;}
.fac-cat:first-of-type{margin-top:40px;}
.fac-cat-head{display:flex;gap:18px;align-items:flex-start;margin-bottom:18px;}
.fac-cat-head .fc-no{font-family:var(--mono);font-size:13px;color:var(--accent);letter-spacing:.08em;padding-top:7px;flex:none;}
.fac-cat-head h3{font-family:var(--serif);font-weight:300;font-size:clamp(21px,2.4vw,30px);line-height:1.1;letter-spacing:-.01em;}
.fac-cat-head h3 em{font-style:normal;color:var(--muted2);font-size:.6em;letter-spacing:0;}
.fac-cat-head p{font-size:14px;line-height:1.6;color:var(--muted2);margin:5px 0 0;max-width:620px;}
.fac-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.fac-cat-grid figure{margin:0;border-radius:12px;overflow:hidden;background:var(--ink2);border:1px solid #e9e9e4;}
.fac-cat-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .6s ease;}
.fac-cat-grid figure:hover img{transform:scale(1.05);}
@media(max-width:760px){.fac-cat-grid{grid-template-columns:1fr 1fr;gap:10px;}.fac-cat-head h3{font-size:20px;}}
/* ===== 연구성과 표 ===== */
.rd-table-wrap{overflow-x:auto;border:1px solid #e6e6e0;border-radius:14px;}
.rd-table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:560px;background:#fff;}
.rd-table thead th{background:var(--ink);color:#fff;font-family:var(--mono);font-size:11.5px;letter-spacing:.07em;font-weight:500;text-align:left;padding:15px 20px;}
.rd-table tbody td{padding:15px 20px;border-top:1px solid #eee;color:var(--muted);line-height:1.62;vertical-align:top;}
.rd-table tbody tr:nth-child(even){background:#fafaf7;}
.rd-table tbody td:first-child{font-family:var(--mono);color:var(--accent);font-size:13px;white-space:nowrap;}
.rd-table b{color:var(--text);font-weight:600;}
@media(max-width:640px){.rd-table thead th,.rd-table tbody td{padding:12px 14px;}}
/* ===== 구동모터 코어 작동원리 (rnd EV 다크섹션) ===== */
.motor-figure{margin-top:24px;background:#fff;border-radius:16px;padding:clamp(20px,3vw,42px);display:flex;justify-content:center;}
.motor-figure img{max-width:780px;width:100%;height:auto;display:block;}
.motor-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px;}
.mstep{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:26px;}
.mstep .mno{font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.12em;}
.mstep h4{font-family:var(--serif);font-weight:300;font-size:21px;color:#fff;margin:10px 0;}
.mstep p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.7);margin:0;}
.mstep .mtag{display:inline-block;margin-top:14px;font-family:var(--mono);font-size:10px;letter-spacing:.07em;color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:5px 11px;}
@media(max-width:760px){.motor-steps{grid-template-columns:1fr;}}
/* 회사연혁 월 표기 (초록 배지) */
.tl-row li .mo{display:inline-block;min-width:34px;text-align:center;font-family:var(--mono);font-size:12px;font-weight:600;color:var(--accent);background:rgba(1,166,81,.10);border:1px solid rgba(1,166,81,.22);border-radius:6px;padding:3px 9px;margin-right:13px;letter-spacing:.01em;position:relative;top:-1px;}
/* ===== 이미지 줌 오버레이 (특허·인증서·EV 클릭 확대) ===== */
.imgzoom{position:fixed;inset:0;z-index:240;background:rgba(5,7,13,.93);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:32px;cursor:zoom-out;}
.imgzoom.open{display:flex;animation:lbfade .25s ease;}
.imgzoom img{max-width:94vw;max-height:90vh;object-fit:contain;border-radius:8px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.6);}
.iz-close{position:absolute;top:22px;right:24px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.iz-close:hover{background:rgba(255,255,255,.22);}
img.zoomable{cursor:zoom-in;}
.patent-grid .p{transition:transform .3s,box-shadow .3s;}
.patent-grid .p:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.1);}
.patent-grid .p img,.cert-card .pic img,.ev-visual img,.ev-thumbs img{transition:transform .4s ease;}
.cert-card{transition:box-shadow .3s,transform .3s;}
.cert-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(0,0,0,.1);}
.cert-card:hover .pic img{transform:scale(1.05);}
.ev-thumbs img:hover{transform:scale(1.06);opacity:1;}
/* ===== 채용 전형 단계 (애니메이션) ===== */
.recruit-flow{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:28px;}
.recruit-flow .rstep{position:relative;background:#fff;border:1px solid #eaeaea;border-radius:16px;padding:28px 14px;text-align:center;opacity:0;transition:transform .3s,box-shadow .3s,border-color .3s;}
.recruit-flow.in .rstep{animation:dwrise .55s ease both;}
.recruit-flow.in .rstep:nth-child(1){animation-delay:.04s;}
.recruit-flow.in .rstep:nth-child(2){animation-delay:.10s;}
.recruit-flow.in .rstep:nth-child(3){animation-delay:.16s;}
.recruit-flow.in .rstep:nth-child(4){animation-delay:.22s;}
.recruit-flow.in .rstep:nth-child(5){animation-delay:.28s;}
.recruit-flow.in .rstep:nth-child(6){animation-delay:.34s;}
.recruit-flow .rstep:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.1);border-color:rgba(1,166,81,.45);}
.recruit-flow .rstep .rnum{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.1em;color:var(--accent);margin-bottom:14px;}
.recruit-flow .rstep .ricon{width:54px;height:54px;margin:0 auto;border-radius:14px;background:rgba(1,166,81,.1);color:var(--accent);display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s;}
.recruit-flow .rstep:hover .ricon{background:var(--accent);color:#fff;}
.recruit-flow .rstep .ricon .material-symbols-outlined{font-size:28px;}
.recruit-flow .rstep .rlabel{margin-top:14px;font-size:14px;font-weight:600;color:var(--text);line-height:1.4;}
.recruit-flow .rstep::after{content:"";position:absolute;right:-10px;top:50%;width:14px;height:2px;background:rgba(1,166,81,.4);transform:translateY(-50%);z-index:2;}
.recruit-flow .rstep:last-child::after{display:none;}
@media(max-width:860px){.recruit-flow{grid-template-columns:repeat(3,1fr);}.recruit-flow .rstep:nth-child(3)::after{display:none;}}
@media(max-width:520px){.recruit-flow{grid-template-columns:repeat(2,1fr);}.recruit-flow .rstep:nth-child(2n)::after{display:none;}}
@media(prefers-reduced-motion:reduce){.recruit-flow .rstep{opacity:1;animation:none;}}
/* 안전보건경영방침 원칙 칩 */
.she-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.she-chips span{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 15px;}
.she-chips span .material-symbols-outlined{font-size:17px;color:var(--accent);}

/* ===== footer legal links (added 2026-06-29) ===== */
.foot-bot-r{display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.foot-legal{display:flex;gap:12px;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.03em;}
.foot-legal a{color:rgba(255,255,255,.62);transition:color .2s;}
.foot-legal a:hover{color:#fff;}
.foot-legal .sep{color:rgba(255,255,255,.22);}
@media(max-width:640px){.foot-bot-r{align-items:flex-start;}}

/* ===== legal document pages ===== */
.legal-doc{max-width:900px;}
.legal-doc .intro{font-size:16px;line-height:1.85;color:var(--text);margin-bottom:34px;}
.legal-doc h2{font-family:var(--serif);font-weight:400;font-size:clamp(19px,2.2vw,25px);color:var(--text);margin:40px 0 14px;padding-top:22px;border-top:1px solid var(--hair);}
.legal-doc h2:first-of-type{border-top:0;padding-top:0;margin-top:0;}
.legal-doc h3{font-size:15px;font-weight:700;color:var(--text);margin:20px 0 8px;}
.legal-doc p{font-size:14.5px;line-height:1.85;color:var(--muted);}
.legal-doc p+p{margin-top:10px;}
.legal-doc ul{margin:10px 0 10px 20px;}
.legal-doc li{font-size:14.5px;line-height:1.8;color:var(--muted);margin-bottom:5px;}
.legal-doc strong{color:var(--text);font-weight:600;}
.legal-doc .ltable{width:100%;border-collapse:collapse;margin:14px 0;font-size:13.5px;}
.legal-doc .ltable th,.legal-doc .ltable td{border:1px solid var(--hair);padding:10px 12px;text-align:left;color:var(--muted);vertical-align:top;}
.legal-doc .ltable th{background:var(--paper2);color:var(--text);font-weight:600;white-space:nowrap;}
.legal-doc .effective{margin-top:34px;font-size:13.5px;color:var(--muted2);font-family:var(--mono);}

/* ===== report process steps (사이버신문고) ===== */
.steprow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0;}
.steprow .st{position:relative;background:#fff;border:1px solid #eaeaea;border-radius:12px;padding:24px 16px;text-align:center;}
.steprow .st .no{font-family:var(--mono);font-size:12px;color:var(--accent);font-weight:700;}
.steprow .st .nm{margin-top:10px;font-size:15px;font-weight:600;color:var(--text);}
.steprow .st:not(:last-child)::after{content:"\2192";position:absolute;right:-11px;top:50%;transform:translateY(-50%);color:var(--accent);font-weight:700;z-index:2;}
@media(max-width:720px){.steprow{grid-template-columns:repeat(2,1fr);}.steprow .st:not(:last-child)::after{content:none;}}

/* ===== privacy consent box (form) ===== */
.consent-box{background:#fafaf8;border:1px solid #e2e2dc;border-radius:9px;padding:14px 16px;max-height:150px;overflow-y:auto;font-size:12.5px;line-height:1.75;color:var(--muted2);}
.consent-box b{color:var(--text);}
.consent-row{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);margin-top:4px;}
.consent-row input{width:16px;height:16px;accent-color:var(--accent);flex:none;}
.consent-row .req{color:#d23;font-weight:600;}

/* ===== 장식 오버레이 클릭 통과 (버튼 클릭 막힘 방지, 2026-06-30) ===== */
.cta-band::before,.cta-band::after,.feature-band .ov,.subhero::before,.hero .scrim,.hero .grid-lines,.hero .ghost-year,.ev .glow,.panel.dark .glow,.cta-band::before{pointer-events:none;}

/* ===== 워드프레스 테마 기본 헤더/푸터 숨김 (자체 헤더·푸터 사용, 2026-06-30) ===== */
.wp-block-template-part,.site-footer,#colophon,.site-info,.footer-widgets,.ast-small-footer,.site-footer-section{display:none!important;}



/* ===== WordPress 전용: 테마 본문 폭 제한 해제 (full-bleed, safe) ===== */
.entry-content,.wp-block-post-content,.is-layout-constrained,.wp-block-group,.wp-block-html,
.ast-container,.ast-container-fluid,.site-content,.content-area,main,article{max-width:none !important;}
.is-layout-constrained > *,.entry-content > *,.wp-block-post-content > *{max-width:none !important;}
.subhero,.tabbar,section.panel,section.sec-light,section.sec-dark,.cta-band,footer{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
