/* Gold Eight Korea — shared stylesheet
   Editorial, monochrome, bold-typography design (inspired by high-fashion
   skincare brand sites: black/white/gray palette, big lowercase display
   headlines, flat borderless imagery, generous whitespace). */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800;900&display=swap');

:root{
  --bg:#FFFFFF;
  --section:#F5F5F3;
  --title:#0A0A0A;
  --text:#454545;
  --primary:#0A0A0A;
  --gold:#767676;
  --border:#E6E6E4;
  --radius:0px;
  --radius-pill:999px;
  --shadow:none;
  --maxw:1200px;
  --display-font:'Poppins','Pretendard',Helvetica,Arial,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0;}

html{scroll-behavior:smooth;}

body{
  font-family:'Pretendard','Segoe UI',Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.7;
  font-size:15px;
}

a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

.container{max-width:var(--maxw);margin:0 auto;padding:0 32px;}

h1,h2,h3{
  color:var(--title);font-weight:800;letter-spacing:-.02em;
  font-family:var(--display-font);
  word-break:keep-all;overflow-wrap:break-word;
}
p,span,a,label{word-break:keep-all;}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:var(--bg);
  border-bottom:1px solid var(--border);
}
.header-inner{
  position:relative;
  height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.logo{font-size:18px;font-weight:700;color:var(--primary);letter-spacing:.2px;white-space:nowrap;font-family:var(--display-font);}
.logo .ko{display:block;font-size:11px;font-weight:500;color:var(--text);letter-spacing:0;margin-top:2px;}

.main-nav{display:flex;align-items:center;gap:36px;}
.main-nav a{
  font-size:13px;color:var(--text);padding-bottom:6px;border-bottom:2px solid transparent;
  white-space:nowrap;letter-spacing:.02em;
}
.main-nav a:hover{color:var(--primary);}
.main-nav a.current{color:var(--primary);border-bottom-color:var(--title);font-weight:600;}

/* ---------- Nav dropdown (e.g. About > Company Journey / CEO Message / BI) ---------- */
.nav-item{position:relative;display:flex;align-items:center;}
.nav-item .submenu-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:20px;height:20px;margin-left:1px;padding:0;border:none;background:none;cursor:pointer;flex-shrink:0;
}
.nav-item .submenu-toggle .caret{
  display:inline-block;font-size:9px;line-height:1;color:var(--text);transition:transform .15s ease;
}
.nav-item.open .submenu-toggle .caret,
.nav-item:hover .submenu-toggle .caret{transform:rotate(180deg);}
.nav-item .submenu{
  display:none;
  position:absolute;top:100%;left:0;margin-top:0;padding-top:14px;
  min-width:168px;
  background:transparent;
  z-index:60;
}
.nav-item .submenu-inner{
  background:var(--bg);
  border:1px solid var(--border);
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  padding:6px 0;
}
.nav-item .submenu a{
  display:block;padding:11px 18px;font-size:13px;color:var(--text);
  border-bottom:none;white-space:nowrap;
}
.nav-item .submenu a:hover{background:var(--section);color:var(--primary);}
.nav-item.open .submenu,
.nav-item:hover .submenu{display:block;}

.header-right{display:flex;align-items:center;gap:20px;}
.lang-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius-pill);overflow:hidden;font-size:12px;font-weight:600;}
.lang-toggle button{padding:7px 13px;border:none;background:var(--bg);color:var(--text);cursor:pointer;}
.lang-toggle button.active{background:var(--primary);color:#fff;}

/* ---------- Mobile nav toggle (hamburger) ---------- */
.nav-toggle{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  width:32px;height:32px;padding:0;border:none;background:none;cursor:pointer;flex-shrink:0;
}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--title);transition:transform .2s ease, opacity .2s ease;}
.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.active span:nth-child(2){opacity:0;}
.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

@media(max-width:860px){
  .main-nav{
    display:none;
    position:absolute;
    top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--bg);
    border-bottom:1px solid var(--border);
    box-shadow:0 4px 12px rgba(0,0,0,.06);
    padding:8px 32px 16px;
  }
  .main-nav.open{display:flex;}
  .main-nav a{
    padding:14px 0;border-bottom:1px solid var(--border);width:100%;
  }
  .main-nav a:last-child{border-bottom:none;}
  .nav-toggle{display:flex;}

  .nav-item{flex-direction:column;align-items:stretch;position:relative;}
  .nav-item > a{border-bottom:1px solid var(--border);}
  .nav-item.open > a{border-bottom-color:var(--border);}
  .nav-item .submenu-toggle{
    position:absolute;top:0;right:0;width:48px;height:48px;
  }
  .nav-item .submenu{
    position:static;display:none;margin:0;padding:0;
    background:var(--section);
  }
  .nav-item .submenu-inner{
    background:none;border:none;box-shadow:none;padding:0;
  }
  .nav-item.open .submenu{display:block;}
  .nav-item .submenu a{
    padding:12px 0 12px 16px;border-bottom:1px solid var(--border);font-size:13px;
  }
  .nav-item .submenu a:last-child{border-bottom:none;}
}

/* ---------- Brand Identity (bi.html) ---------- */
.bi-gold{--bi-gold:#D4AF37;--bi-gold-light:#F3D27A;--bi-gold-dark:#A9791E;--bi-ivory:#F9F6EF;--bi-beige:#D9C6A8;--bi-brown:#3B2F1F;--bi-black:#111111;}

.bi-hero-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.bi-title{font-size:clamp(28px,4vw,40px);font-weight:800;color:var(--title);font-family:var(--display-font);}
.bi-hero-brand{font-size:12px;letter-spacing:.14em;color:var(--text);white-space:nowrap;}
.bi-hero-rule{height:1px;background:linear-gradient(90deg,var(--bi-gold),var(--border) 60%);margin:18px 0 36px;}

.bi-hero-grid{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:start;}
.bi-num-block{margin-bottom:32px;}
.bi-num-block:last-child{margin-bottom:0;}
.bi-num-head{display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.bi-num{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:50%;flex-shrink:0;
  background:var(--bi-gold);color:#fff;font-size:12px;font-weight:700;
}
.bi-num-head h3{font-size:16px;font-weight:700;color:var(--title);display:flex;align-items:baseline;gap:8px;}
.bi-num-head h3 small{font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--bi-gold-dark);}
/* English small-caps label (MEANING / DESIGN CONCEPT / COLOR SYSTEM) is a Korean-reading aid;
   in English mode the heading already says the same word, so hide it to avoid duplication. */
html[lang="en"] .bi-num-head h3 small{display:none;}
.bi-num-block p{font-size:13.5px;color:var(--text);line-height:1.75;}

.bi-logo-panel{
  position:relative;border-radius:4px;overflow:hidden;
  background:radial-gradient(120% 120% at 20% 10%,#FFFDF8 0%,var(--bi-ivory) 55%,#EFE6D6 100%);
  padding:64px 32px;text-align:center;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;
  min-height:360px;
}
.bi-logo-panel .infinity-mark{width:min(320px,80%);height:auto;}
.bi-lockup-img{width:min(260px,72%);height:auto;display:block;}
.bi-wordmark{font-size:clamp(20px,3vw,30px);font-weight:700;letter-spacing:.12em;color:var(--bi-brown);font-family:var(--display-font);}
.bi-tagline{font-size:11px;letter-spacing:.18em;color:var(--bi-gold-dark);}

.bi-logo-variants{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.bi-variant{
  border-radius:4px;padding:36px 20px;text-align:center;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;
  min-height:180px;
}
.bi-variant .infinity-mark{width:120px;height:auto;display:block;}
.bi-variant.primary{background:var(--bi-ivory);}
.bi-variant.dark{background:var(--bi-black);}
.bi-variant.dark .bi-wordmark{color:var(--bi-ivory);}
.bi-variant.mono{background:var(--bi-ivory);}
.bi-variant .bi-wordmark{font-size:14px;letter-spacing:.1em;color:var(--bi-brown);font-weight:700;}
.bi-variant-label{font-size:12px;color:var(--text);letter-spacing:.02em;}

.bi-swatches{display:flex;gap:28px;flex-wrap:wrap;margin-top:28px;}
.bi-swatch{width:130px;text-align:center;}
.bi-swatch .circle{width:72px;height:72px;border-radius:50%;margin:0 auto 14px;border:1px solid var(--border);}
.bi-swatch .label{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--title);margin-bottom:6px;}
.bi-swatch .keywords{font-size:11.5px;color:var(--text);line-height:1.6;margin-bottom:8px;}
.bi-swatch .hex{font-size:10.5px;color:var(--gold);line-height:1.5;}

.bi-concept-row{display:flex;gap:40px;flex-wrap:wrap;margin-top:28px;}
.bi-concept-item{flex:1;min-width:150px;text-align:center;}
.bi-concept-item .infinity-mark{width:88px;height:auto;margin:0 auto 16px;display:block;}
.bi-concept-item p{font-size:12.5px;color:var(--text);line-height:1.6;}

@media(max-width:860px){
  .bi-hero-grid{grid-template-columns:1fr;gap:32px;}
  .bi-logo-variants{grid-template-columns:1fr;}
}

/* ---------- Buttons ---------- */
.btn{
  display:inline-block;padding:15px 32px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;
  cursor:pointer;border:1px solid transparent;transition:opacity .15s;
  letter-spacing:.04em;text-transform:uppercase;
}
.btn-primary{background:var(--primary);color:#fff;}
.btn-primary:hover{opacity:.82;}
.btn-secondary{background:transparent;color:var(--primary);border-color:var(--primary);}
.btn-secondary:hover{background:var(--section);}

.link-more{
  display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-weight:600;font-size:14px;margin-top:28px;
}
.link-more:hover{color:var(--gold);}

/* ---------- Layout helpers ---------- */
.section{padding:110px 0;}
.section.alt{background:var(--section);}
.section.tight{padding:64px 0;}
.section-eyebrow{
  display:inline-block;font-size:12px;font-weight:500;letter-spacing:.12em;color:var(--gold);
  text-transform:uppercase;margin-bottom:16px;
}
.section-title{font-size:30px;margin-bottom:16px;font-weight:800;}
.section-title.lg{font-size:48px;line-height:1.08;text-transform:lowercase;}
.section-text{color:var(--text);font-size:15.5px;max-width:640px;}
.center{text-align:center;margin-left:auto;margin-right:auto;}

.page-hero{padding:88px 0 64px;border-bottom:1px solid var(--border);background:var(--bg);}
.page-hero .page-title{font-size:46px;margin-bottom:10px;text-transform:lowercase;line-height:1.08;}
.page-hero .page-sub{color:var(--text);font-size:15px;}

/* ---------- Placeholder helpers ---------- */
.tag-ph{
  display:inline-block;font-size:11px;font-weight:500;letter-spacing:.12em;color:var(--gold);
  padding:0;margin-bottom:16px;text-transform:uppercase;
}
.ph-text{
  border:1px dashed var(--border);background:var(--section);padding:18px;border-radius:var(--radius);
  color:var(--text);font-size:13.5px;
}
.ph-image{
  border:1px dashed var(--border);background:var(--section);border-radius:var(--radius);
  display:flex;align-items:center;justify-content:center;color:var(--text);font-size:13px;min-height:160px;text-align:center;
}

/* ---------- CEO Message (ceo-message.html) ---------- */
.ceo-grid{display:grid;grid-template-columns:280px 1fr;gap:56px;align-items:start;}
.ceo-photo img{width:100%;height:auto;border-radius:4px;display:block;}
.ceo-lead{
  font-family:var(--display-font);font-weight:700;font-size:clamp(18px,2.2vw,23px);line-height:1.55;
  color:var(--title);margin-bottom:30px;padding-left:20px;border-left:3px solid var(--gold);
}
.ceo-body p{font-size:14px;line-height:1.9;color:var(--text);margin-bottom:18px;}
.ceo-body p:last-child{margin-bottom:0;}
.ceo-sign{margin-top:36px;padding-top:22px;border-top:1px solid var(--border);}
.ceo-sign-brand{font-family:var(--display-font);font-weight:700;letter-spacing:.12em;font-size:13px;color:var(--title);margin-bottom:4px;}
.ceo-sign-name{font-size:13.5px;color:var(--text);font-weight:600;}
@media(max-width:860px){
  .ceo-grid{grid-template-columns:1fr;gap:28px;}
  .ceo-photo{max-width:260px;margin:0 auto;}
}

/* ---------- About Philosophy (about.html) ---------- */
.phi-eyebrow{
  display:flex;align-items:center;gap:14px;font-size:12px;font-weight:700;letter-spacing:.16em;
  color:var(--title);text-transform:uppercase;margin-bottom:20px;
}
.phi-eyebrow::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--bi-gold),var(--border) 70%);}
.phi-title{font-family:var(--display-font);font-weight:800;font-size:clamp(26px,3.6vw,38px);line-height:1.3;margin-bottom:22px;}
.phi-title span{display:block;}
.phi-title .line1{color:var(--title);}
.phi-title .line2{color:var(--bi-gold-dark);}
.phi-copy p{font-size:14.5px;color:var(--text);line-height:1.85;margin-bottom:16px;}
.phi-copy p:last-child{margin-bottom:0;}

.phi-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}

.phi-diagram-wrap{position:relative;max-width:420px;width:100%;aspect-ratio:1/0.92;margin:0 auto;}
.phi-diagram-lines{position:absolute;inset:0;width:100%;height:100%;}
.phi-diagram-lines line{stroke:var(--bi-gold);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.55;}
.phi-center{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:25%;text-align:center;}
.phi-center img{width:100%;height:auto;display:block;margin:0 auto;}
.phi-node{position:absolute;transform:translate(-50%,-50%);width:38%;text-align:center;}
.phi-node.pos-top{left:50%;top:10%;}
.phi-node.pos-left{left:15%;top:80%;}
.phi-node.pos-right{left:85%;top:80%;}
.phi-node-circle{
  width:76px;height:76px;border-radius:50%;background:#fff;margin:0 auto 10px;
  display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(0,0,0,.06);
  border:1px solid var(--border);
}
.phi-node-circle svg{width:28px;height:28px;color:var(--bi-gold-dark);}
.phi-node-label{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--title);margin-bottom:4px;}
.phi-node-desc{font-size:10.5px;color:var(--text);line-height:1.5;}

.phi-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:64px;}
.phi-step{padding-top:22px;border-top:1px solid var(--border);}
.phi-step-icon{
  width:46px;height:46px;border-radius:50%;background:var(--bi-ivory);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;
}
.phi-step-icon svg{width:19px;height:19px;color:var(--bi-gold-dark);}
.phi-step-tag{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--bi-gold-dark);margin-bottom:8px;}
.phi-step-h{font-size:15px;font-weight:700;color:var(--title);margin-bottom:10px;}
.phi-step-p{font-size:12.5px;color:var(--text);line-height:1.75;}

.phi-feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:20px;}
.phi-feature{text-align:center;}
.phi-feature-icon{
  width:92px;height:92px;border-radius:50%;border:1px solid var(--bi-gold);
  display:flex;align-items:center;justify-content:center;margin:0 auto 22px;
}
.phi-feature-icon svg{width:32px;height:32px;color:var(--bi-gold-dark);}
.phi-feature-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--bi-gold-dark);margin-bottom:8px;}
.phi-feature-sub{font-size:15px;font-weight:700;color:var(--title);margin-bottom:10px;}
.phi-feature-p{font-size:12.5px;color:var(--text);line-height:1.75;max-width:260px;margin:0 auto;}

@media(max-width:860px){
  .phi-grid{grid-template-columns:1fr;gap:40px;}
  .phi-steps{grid-template-columns:repeat(2,1fr);}
  .phi-feature-row{grid-template-columns:1fr;gap:40px;}
}
@media(max-width:520px){
  .phi-steps{grid-template-columns:1fr;}
}

/* ---------- Company Journey (company-journey.html) ---------- */
.journey-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
.journey-subeyebrow{font-size:11px;letter-spacing:.2em;color:var(--bi-gold-dark);font-weight:700;margin-bottom:16px;}
.journey-copy p{font-size:14.5px;color:var(--text);line-height:1.85;margin-top:18px;max-width:440px;}
.journey-tagline{
  font-family:var(--display-font);font-style:italic;font-weight:600;font-size:15px;
  color:var(--bi-gold-dark);margin-top:18px;
}
.journey-video-frame{
  border-radius:8px;overflow:hidden;box-shadow:0 24px 54px rgba(0,0,0,.14);margin-top:30px;background:#000;
}
.journey-video-frame video{width:100%;height:auto;display:block;}

.jt-list{display:flex;flex-direction:column;}
.jt-row{display:grid;grid-template-columns:62px 20px 108px 1fr;gap:18px;align-items:start;padding-bottom:34px;position:relative;}
.jt-row:last-child{padding-bottom:0;}
.jt-year{font-weight:800;font-size:14.5px;color:var(--bi-gold-dark);text-align:right;padding-top:6px;white-space:nowrap;}
.jt-row.is-now .jt-year{font-size:12.5px;letter-spacing:.04em;padding-top:2px;}
.jt-dot-wrap{display:flex;flex-direction:column;align-items:center;align-self:stretch;}
.jt-dot{width:9px;height:9px;border-radius:50%;background:var(--bi-gold-dark);margin-top:10px;flex-shrink:0;}
.jt-now-badge{
  width:20px;height:20px;border-radius:50%;border:1px solid var(--bi-gold-dark);color:var(--bi-gold-dark);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.jt-now-badge svg{width:12px;height:12px;}
.jt-line{width:1px;flex:1;background:var(--border);margin-top:6px;min-height:16px;}
.jt-thumb{width:108px;height:76px;border-radius:4px;overflow:hidden;background:var(--bi-ivory);flex-shrink:0;}
.jt-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.jt-body h3{font-size:14.5px;font-weight:700;color:var(--title);margin-bottom:7px;line-height:1.4;}
.jt-body p{font-size:12.5px;color:var(--text);line-height:1.7;}

@media(max-width:860px){
  .journey-hero-grid{grid-template-columns:1fr;gap:40px;}
  .jt-row{grid-template-columns:46px 16px 1fr;}
  .jt-thumb{display:none;}
}
@media(max-width:480px){
  .jt-row{grid-template-columns:40px 14px 1fr;gap:12px;}
}

/* ---------- Minimal cards (used sparingly) ---------- */
.mini-card{
  border:none;border-top:1px solid var(--border);border-radius:0;box-shadow:none;
  padding:32px 4px;background:transparent;text-align:center;
}
.mini-card .icon-circle{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--title);color:var(--title);
  display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-weight:700;font-size:14px;
}
.mini-card h3{font-size:15px;margin-bottom:8px;font-weight:700;}
.mini-card p{font-size:13px;color:var(--text);}

.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
@media(max-width:960px){
  .grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:600px){
  .grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:1fr;}
}

/* ---------- Home: process preview flow ---------- */
.flow{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;}
.flow-step{text-align:center;}
.flow-step .num{
  width:46px;height:46px;border-radius:50%;background:var(--primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;margin:0 auto 10px;
}
.flow-step .label{font-size:13.5px;color:var(--title);font-weight:600;}
.flow-arrow{color:var(--gold);font-size:20px;}

/* ---------- Our Process page: vertical process timeline ---------- */
.proc-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:start;margin-bottom:56px;}
.proc-intro .section-eyebrow{margin-bottom:10px;}
.proc-intro .section-title{margin-bottom:18px;}
.proc-intro-lead{font-family:var(--display-font);font-weight:700;font-size:17px;color:var(--title);margin-bottom:12px;}
.proc-intro-p{color:var(--text);font-size:14.5px;line-height:1.8;max-width:520px;}
.proc-leadtime{
  background:var(--bi-ivory);border:1px solid var(--bi-beige);border-radius:8px;
  padding:28px 30px;align-self:start;
}
.proc-leadtime-eyebrow{display:block;font-size:10.5px;font-weight:700;letter-spacing:.14em;color:var(--bi-gold-dark);text-transform:uppercase;margin-bottom:14px;}
.proc-leadtime-label{font-size:13px;color:var(--text);margin-bottom:6px;}
.proc-leadtime-value{font-family:var(--display-font);font-weight:800;font-size:28px;color:var(--title);margin-bottom:14px;}
.proc-leadtime-note{font-size:12px;line-height:1.7;color:var(--text);}

.proc-timeline{display:flex;flex-direction:column;}
.proc-step{
  display:grid;grid-template-columns:70px 20px 56px 1fr;gap:20px;align-items:start;
  padding-bottom:36px;position:relative;
}
.proc-step:last-child{padding-bottom:0;}
.proc-step-num{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--bi-gold-dark);text-align:right;padding-top:12px;white-space:nowrap;}
.proc-dot-wrap{display:flex;flex-direction:column;align-items:center;align-self:stretch;}
.proc-dot{width:11px;height:11px;border-radius:50%;background:var(--bi-gold-dark);margin-top:16px;flex-shrink:0;}
.proc-line{width:1px;flex:1;background:var(--border);margin-top:6px;min-height:20px;}
.proc-icon{
  width:56px;height:56px;border-radius:50%;background:var(--bi-ivory);border:1px solid var(--bi-beige);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.proc-icon svg{width:24px;height:24px;color:var(--bi-gold-dark);}
.proc-step-body{padding-top:8px;}
.proc-step-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px;}
.proc-step-head h3{font-size:17px;font-weight:700;color:var(--title);}
.proc-dur{
  font-size:11.5px;font-weight:700;color:var(--bi-gold-dark);background:var(--bi-ivory);
  border:1px solid var(--bi-beige);border-radius:20px;padding:3px 12px;white-space:nowrap;
}
.proc-step-body p{font-size:13.5px;color:var(--text);line-height:1.75;max-width:560px;}

.proc-benefits{
  display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:60px;padding-top:40px;border-top:1px solid var(--border);
}
.proc-benefit{text-align:center;}
.proc-benefit-icon{
  width:50px;height:50px;border-radius:50%;background:var(--bi-ivory);border:1px solid var(--bi-beige);
  display:flex;align-items:center;justify-content:center;margin:0 auto 14px;
}
.proc-benefit-icon svg{width:21px;height:21px;color:var(--bi-gold-dark);}
.proc-benefit h4{font-size:14px;font-weight:700;color:var(--title);margin-bottom:6px;}
.proc-benefit p{font-size:12.5px;color:var(--text);line-height:1.6;}

@media(max-width:860px){
  .proc-hero{grid-template-columns:1fr;gap:28px;}
  .proc-step{grid-template-columns:50px 16px 46px 1fr;gap:14px;}
  .proc-icon{width:46px;height:46px;}
  .proc-icon svg{width:20px;height:20px;}
  .proc-benefits{grid-template-columns:1fr;gap:28px;}
}
@media(max-width:520px){
  .proc-step{grid-template-columns:14px 40px 1fr;gap:10px;}
  .proc-step-num{display:none;}
  .proc-step-head{flex-direction:column;align-items:flex-start;gap:6px;}
}

/* ---------- Services page: list rows ---------- */
.service-row{
  display:grid;grid-template-columns:56px 1fr;gap:24px;padding:32px 0;border-bottom:1px solid var(--border);
  align-items:start;
}
.service-row:last-child{border-bottom:none;}
.service-row .icon-circle{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--title);color:var(--title);
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;
}
.service-row h3{font-size:17px;margin-bottom:10px;}

/* ---------- Product categories ---------- */
.category-card{border:none;border-radius:0;overflow:hidden;text-align:center;background:transparent;}
.category-card .ph-image{border:none;border-radius:0;min-height:120px;}
.category-card .cc-image{width:100%;height:150px;object-fit:cover;display:block;}
.category-card h3{font-size:14px;padding:16px 4px;font-weight:600;letter-spacing:.02em;}

/* ---------- Company info table (About) ---------- */
.info-table{width:100%;border-collapse:collapse;}
.info-table tr{border-bottom:1px solid var(--border);}
.info-table tr:last-child{border-bottom:none;}
.info-table td{padding:16px 4px;font-size:14px;vertical-align:top;}
.info-table td:first-child{width:200px;font-weight:700;color:var(--title);}

.why-list{display:flex;flex-direction:column;gap:0;}
.why-row{display:grid;grid-template-columns:32px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid var(--border);}
.why-row:last-child{border-bottom:none;}
.why-row .mark{color:var(--title);font-weight:700;}
.why-row h3{font-size:17px;margin-bottom:6px;color:var(--title);font-weight:700;}
.why-row p{font-size:14px;color:var(--text);margin:0;}

/* ---------- Contact form (kept functional) ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:start;}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;}}
.contact-info-box{border:none;border-top:1px solid var(--border);border-radius:0;padding:28px 0 0;}
.contact-info-box .row{margin-bottom:16px;font-size:14px;}
.contact-info-box .row .label{display:block;font-size:12px;font-weight:600;color:var(--title);margin-bottom:2px;}

form.inquiry-form{border:none;border-top:1px solid var(--border);border-radius:0;padding:28px 0 0;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:600px){.form-grid{grid-template-columns:1fr;}}
.field{margin-bottom:16px;}
.field.full{grid-column:1/-1;}
label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--title);}
label .req{color:var(--gold);}
input,select,textarea{
  width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:0;
  font-size:14px;font-family:inherit;background:var(--section);color:var(--text);
}
input:focus,select:focus,textarea:focus{outline:1px solid var(--title);outline-offset:1px;}
textarea{resize:vertical;min-height:90px;}
.submit-row button{
  width:100%;padding:15px;border:none;border-radius:var(--radius-pill);
  background:var(--primary);color:#fff;font-size:13px;font-weight:700;cursor:pointer;
  letter-spacing:.04em;text-transform:uppercase;
}
.submit-row button:hover{opacity:.85;}
.form-note{font-size:11.5px;color:var(--text);margin-top:12px;text-align:center;}
.form-status{margin-top:14px;font-size:13.5px;text-align:center;display:none;padding:10px;border-radius:0;}
.form-status.ok{display:block;background:#eaf3ec;color:#2a6e3f;}
.form-status.err{display:block;background:#f9eaea;color:#a23b3b;}

/* ---------- Key Figures / stat cards ---------- */
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:none;border-top:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;overflow:hidden;}
.stat-card{background:var(--bg);padding:36px 20px;text-align:center;}
.stat-card .stat-num{font-size:32px;font-weight:800;color:var(--title);font-family:var(--display-font);}
.stat-card .stat-num .gold{color:var(--title);}
.stat-card .stat-divider{width:28px;height:2px;background:var(--title);margin:14px auto 16px;}
.stat-card h3{font-size:13.5px;margin-bottom:8px;color:var(--title);font-weight:700;}
.stat-card p{font-size:12.5px;color:var(--text);}
@media(max-width:760px){
  .stat-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:460px){
  .stat-grid{grid-template-columns:1fr;}
}
.fact-check-note{font-size:11.5px;color:var(--text);opacity:.7;margin-top:14px;font-style:italic;}

/* ---------- Timeline (Our Journey) ---------- */
.timeline{display:flex;flex-direction:column;}
.timeline-item{display:grid;grid-template-columns:110px 24px 1fr;gap:20px;padding:22px 0;}
.timeline-item .t-year{font-weight:700;color:var(--primary);font-size:15px;padding-top:2px;}
.timeline-item .t-dot-wrap{display:flex;flex-direction:column;align-items:center;}
.timeline-item .t-dot{width:12px;height:12px;border-radius:50%;background:var(--title);flex-shrink:0;}
.timeline-item .t-line{flex:1;width:1px;background:var(--border);margin-top:4px;}
.timeline-item:last-child .t-line{display:none;}
.timeline-item h3{font-size:15.5px;margin-bottom:6px;}
.timeline-item p{font-size:13px;color:var(--text);}
@media(max-width:640px){
  .timeline-item{grid-template-columns:70px 20px 1fr;gap:12px;}
}

/* ---------- Expertise cards (Experience Behind Every Project) ---------- */
.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.expertise-card{border:none;border-top:1px solid var(--border);border-radius:0;padding:24px 0 0;}
.expertise-card .exp-eyebrow{font-size:11px;font-weight:600;color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;}
.expertise-card h3{font-size:16px;margin-bottom:10px;font-weight:700;}
.expertise-card p{font-size:13px;color:var(--text);}
@media(max-width:960px){.expertise-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.expertise-grid{grid-template-columns:1fr;}}

/* ---------- Career category cards (현장에서 시작된 전문성) ---------- */
.category-highlight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.category-highlight-card{border:none;border-radius:0;overflow:hidden;background:transparent;}
.category-highlight-card .ph-image{border:none;border-radius:0;min-height:160px;}
.category-highlight-card .chc-image{width:100%;height:220px;object-fit:cover;display:block;}
.category-highlight-card .chc-body{padding:20px 0 0;}
.category-highlight-card h3{font-size:16.5px;margin-bottom:8px;font-weight:700;}
.category-highlight-card p{font-size:13px;color:var(--text);}
@media(max-width:760px){.category-highlight-grid{grid-template-columns:1fr;}}

/* ---------- Global experience project cards ---------- */
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.project-card{border:none;border-radius:0;overflow:hidden;background:transparent;}
.project-card .ph-image{border:none;border-radius:0;min-height:150px;}
.project-card .pc-image{width:100%;height:200px;object-fit:cover;display:block;}
.project-card .pc-body{padding:18px 0 0;}
.project-card .pc-country{font-size:11px;font-weight:600;color:var(--gold);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px;}
.project-card h3{font-size:15px;margin-bottom:6px;font-weight:700;}
.project-card p{font-size:12.5px;color:var(--text);}
.project-card .pc-caption{font-size:11px;color:var(--text);opacity:.75;margin-top:10px;}
@media(max-width:960px){.project-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.project-grid{grid-template-columns:1fr;}}

.country-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.country-tag{font-size:12px;border:1px solid var(--border);padding:6px 14px;border-radius:var(--radius-pill);color:var(--text);}

/* ---------- MOU / Partnerships ---------- */
.mou-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.mou-card{border:none;border-radius:0;overflow:hidden;background:transparent;text-align:center;}
.mou-card .ph-image{border:none;border-radius:0;min-height:130px;}
.mou-card .mou-image{width:100%;height:170px;object-fit:cover;display:block;}
.mou-card p{font-size:12px;color:var(--text);padding:12px 0 0;}
@media(max-width:900px){.mou-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:500px){.mou-grid{grid-template-columns:1fr;}}

/* ---------- Photo gallery ---------- */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.gallery-item .ph-image{min-height:170px;}
.gallery-item .gallery-image{width:100%;height:200px;object-fit:cover;display:block;border-radius:0;}
.gallery-caption{font-size:12px;color:var(--text);margin-top:10px;text-align:center;}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.gallery-grid{grid-template-columns:1fr;}}

/* ---------- Index tiles (Home) ---------- */
.grid-7{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
@media(max-width:900px){.grid-7{grid-template-columns:repeat(3,1fr);}}
@media(max-width:600px){.grid-7{grid-template-columns:repeat(2,1fr);}}
@media(max-width:420px){.grid-7{grid-template-columns:1fr;}}

/* ---------- Fade-in on scroll (respects reduced motion) ---------- */
.fade-in{opacity:0;transform:translateY(12px);transition:opacity .5s ease, transform .5s ease;}
.fade-in.is-visible{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){
  .fade-in{opacity:1;transform:none;transition:none;}
}

/* ---------- Editorial story blocks (image + big lowercase headline) ---------- */
.story-block{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.story-block.reverse{grid-template-columns:1fr 1fr;}
.story-block.reverse .story-media{order:2;}
.story-block.reverse .story-copy{order:1;}
.story-media{position:relative;}
.story-media img{width:100%;height:520px;object-fit:cover;display:block;}
.story-media .story-overlay-title{
  position:absolute;left:24px;bottom:24px;
  font-family:var(--display-font);font-weight:800;font-size:34px;line-height:1.05;
  color:#fff;text-transform:lowercase;max-width:80%;
  text-shadow:0 2px 18px rgba(0,0,0,.35);
}
.story-copy .story-title{font-size:40px;text-transform:lowercase;line-height:1.08;margin-bottom:20px;}
.story-copy p{font-size:15.5px;color:var(--text);margin-bottom:16px;}
.story-copy p:last-child{margin-bottom:0;}
@media(max-width:860px){
  .story-block,.story-block.reverse{grid-template-columns:1fr;gap:28px;}
  .story-block.reverse .story-media{order:1;}
  .story-block.reverse .story-copy{order:2;}
  .story-media img{height:340px;}
  .story-copy .story-title{font-size:30px;}
}

/* ---------- Footer ---------- */
footer{background:var(--primary);color:#c9c9c9;padding:48px 0;}
.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.footer-inner .logo{color:#fff;}
.footer-inner .logo .ko{color:#c9c9c9;}
.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;}
.footer-links a:hover{color:#fff;}
.footer-bottom{
  margin-top:24px;padding-top:20px;border-top:1px solid #333333;font-size:12px;color:#9a9a9a;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
}
