/* ===================================================================
   JACOB KOREA — Company Profile (web slide deck)
   16:9 slides · keyboard/arrow navigation · print-to-PDF friendly
   Colors inherited: Navy #0B2545 · Green #3A7D44 · Orange #E07A1F
   =================================================================== */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css');
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Montserrat:wght@600;700;800&display=swap');

:root{
  --navy:#0B2545; --navy-700:#123559; --navy-500:#1c4a7a;
  --green:#3A7D44; --green-600:#2f6a39;
  --orange:#E07A1F; --orange-600:#c76911;
  --ink:#1b2430; --muted:#5c6b7a; --line:#e4e9ef;
  --bg-soft:#f5f8fb;
  --font-ko:"Pretendard","Inter",system-ui,sans-serif;
  --font-en:"Inter","Montserrat","Pretendard",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:var(--font-ko);color:var(--ink);background:#0a1626;
  -webkit-font-smoothing:antialiased;overflow:hidden;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none}

/* lang toggle */
[data-lang-en]{display:none}
body.lang-en [data-lang-ko]{display:none}
body.lang-en [data-lang-en]{display:inline}

/* ---------- Deck / stage ---------- */
.deck{position:relative;width:100vw;height:100vh;display:grid;place-items:center}
.stage{
  position:relative;width:100%;max-width:1280px;aspect-ratio:16/9;
  background:#fff;border-radius:14px;overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.5);
}
/* each slide fills the stage */
.slide{
  position:absolute;inset:0;padding:64px 72px;
  opacity:0;visibility:hidden;transition:opacity .4s ease;
  display:flex;flex-direction:column;
}
.slide.active{opacity:1;visibility:visible}

/* slide chrome */
.slide .s-eyebrow{
  font-family:var(--font-en);font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  font-size:.8rem;color:var(--orange);margin-bottom:12px;
}
.slide h2.s-title{color:var(--navy);font-size:2.1rem;font-weight:800;line-height:1.2;margin-bottom:8px}
.slide .s-sub{color:var(--muted);font-size:1.02rem;margin-bottom:28px}
.slide .s-foot{position:absolute;left:72px;right:72px;bottom:26px;display:flex;align-items:center;justify-content:space-between;color:#9aa7b4;font-size:.78rem}
.slide .s-foot img{height:20px;opacity:.9}

/* ---------- Title slide (01) ---------- */
.slide.cover{padding:0;color:#fff}
.cover-bg{position:absolute;inset:0;z-index:0}
.cover-bg img{width:100%;height:100%;object-fit:cover}
.cover::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(115deg,rgba(11,37,69,.95) 0%,rgba(11,37,69,.78) 50%,rgba(11,37,69,.45) 100%)}
.cover .cover-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 72px}
.cover .logo-badge{background:#fff;border-radius:12px;padding:14px 20px;display:inline-flex;width:max-content;margin-bottom:28px}
.cover .logo-badge img{height:34px}
.cover h1{font-size:3.1rem;font-weight:800;line-height:1.15;margin-bottom:18px}
.cover .cover-slogan{font-family:var(--font-en);color:#ffb570;font-weight:700;letter-spacing:.04em;font-size:1.15rem;margin-bottom:10px}
.cover .cover-desc{color:#dbe6f2;font-size:1.1rem;max-width:620px}
.cover .cover-meta{position:absolute;left:72px;bottom:46px;z-index:2;color:#aec3da;font-size:.9rem}

/* ---------- Generic content helpers ---------- */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:38px;flex:1;align-items:center}
.two-col.wide-left{grid-template-columns:1.15fr .85fr}
.s-img{border-radius:14px;overflow:hidden;height:100%;max-height:430px;box-shadow:0 16px 40px rgba(11,37,69,.16)}
.s-img img{width:100%;height:100%;object-fit:cover}

.lead{font-size:1.08rem;color:var(--ink);line-height:1.7;margin-bottom:16px}
.lead.muted{color:var(--muted)}

/* profile table */
.p-table{width:100%;border-collapse:collapse;font-size:.98rem}
.p-table th,.p-table td{text-align:left;padding:11px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.p-table th{color:var(--navy);font-weight:700;width:34%;white-space:nowrap}
.p-table td{color:var(--ink)}

/* bullet list */
.b-list li{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;font-size:1.02rem}
.b-list li i{color:var(--orange);margin-top:5px}
.b-list li strong{color:var(--navy)}
.b-list li .d{color:var(--muted);font-size:.9rem;display:block}

/* stat row */
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:8px}
.stat{background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:20px 18px}
.stat .n{font-family:var(--font-en);font-weight:800;font-size:1.9rem;color:var(--orange);line-height:1}
.stat .l{margin-top:7px;font-weight:700;color:var(--navy);font-size:.92rem}
.stat .s{color:var(--muted);font-size:.78rem}

/* value / why cards */
.card-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;flex:1;align-content:center}
.card-row.three{grid-template-columns:repeat(3,1fr)}
.v-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 22px;box-shadow:0 10px 26px rgba(11,37,69,.07)}
.v-card .vic{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;color:#fff;font-size:1.3rem;margin-bottom:16px;background:linear-gradient(145deg,var(--navy),var(--navy-500))}
.v-card:nth-child(2) .vic{background:linear-gradient(145deg,var(--green),#4f9a5b)}
.v-card:nth-child(3) .vic{background:linear-gradient(145deg,var(--orange),#f0944a)}
.v-card:nth-child(4) .vic{background:linear-gradient(145deg,var(--navy-500),var(--green))}
.v-card h3{color:var(--navy);font-size:1.08rem;margin-bottom:8px}
.v-card p{color:var(--muted);font-size:.9rem}

/* import/export split */
.ie-split{display:grid;grid-template-columns:1fr 1fr;gap:26px;flex:1;align-content:center}
.ie-card{border-radius:16px;padding:32px 30px;color:#fff}
.ie-card.imp{background:linear-gradient(145deg,var(--navy),var(--navy-500))}
.ie-card.exp{background:linear-gradient(145deg,var(--green),#4f9a5b)}
.ie-card .ie-dir{font-family:var(--font-en);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;opacity:.85}
.ie-card h3{color:#fff;font-size:1.4rem;margin:6px 0 16px}
.ie-card li{display:flex;gap:10px;align-items:flex-start;margin-bottom:11px;font-size:.98rem;color:rgba(255,255,255,.95)}
.ie-card li i{color:#ffd9ad;margin-top:5px;font-size:.78rem}

/* network row */
.net-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;flex:1;align-content:center}
.net-chip{background:var(--bg-soft);border:1px solid var(--line);border-radius:14px;padding:22px 16px;text-align:center}
.net-chip.hub{background:rgba(224,122,31,.1);border-color:rgba(224,122,31,.35)}
.net-chip .fl{font-size:1.9rem;margin-bottom:8px}
.net-chip h4{color:var(--navy);font-size:1rem;margin-bottom:5px}
.net-chip .r{font-family:var(--font-en);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.net-chip .r.both{color:var(--orange-600)}
.net-chip .r.imp{color:var(--navy-500)}
.net-chip .r.exp{color:var(--green-600)}
.net-chip p{color:var(--muted);font-size:.8rem;margin-top:5px}

/* process timeline */
.proc-row{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;flex:1;align-content:center;counter-reset:ps}
.proc{position:relative;text-align:center;padding-top:46px}
.proc::before{counter-increment:ps;content:counter(ps,decimal-leading-zero);
  position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff;
  display:grid;place-items:center;font-family:var(--font-en);font-weight:800;font-size:.9rem}
.proc:nth-child(even)::before{background:var(--orange)}
.proc .pic{color:var(--orange);font-size:1.3rem;margin-bottom:7px}
.proc h4{color:var(--navy);font-size:.98rem;margin-bottom:4px}
.proc p{color:var(--muted);font-size:.78rem}

/* brand slide (pastel) */
.slide.brand-slide{background:linear-gradient(150deg,#fdf6ef 0%,#f3f8f3 55%,#eef4fb 100%)}
.slide.brand-slide h2.s-title{color:var(--green-600)}
.brand-two{display:grid;grid-template-columns:1fr 1fr;gap:40px;flex:1;align-items:center}
.brand-two .vlogo{height:50px;margin-bottom:18px}
.brand-two .vslo{color:var(--green-600);font-weight:700;font-size:1.15rem;margin-bottom:12px}
.brand-two p{color:#6b7566;font-size:1.02rem;margin-bottom:12px}

/* contact slide */
.slide.contact-slide{background:linear-gradient(135deg,var(--navy),var(--navy-500));color:#fff}
.slide.contact-slide h2.s-title{color:#fff}
.slide.contact-slide .s-eyebrow{color:#ffb570}
.contact-two{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;flex:1;align-items:center}
.contact-list li{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px;font-size:1.05rem;color:#dbe6f2}
.contact-list li i{color:#ffb570;margin-top:5px;width:20px;text-align:center}
.contact-list a{color:#fff;font-weight:600}
.contact-big{text-align:center}
.contact-big .logo-badge{background:#fff;border-radius:12px;padding:16px 22px;display:inline-flex;margin-bottom:22px}
.contact-big .logo-badge img{height:38px}
.contact-big .slo{color:#ffb570;font-family:var(--font-en);font-weight:700;font-size:1.1rem}

/* ---------- Navigation UI ---------- */
.nav-ui{position:fixed;z-index:50;left:0;right:0;bottom:22px;display:flex;justify-content:center;gap:14px;align-items:center}
.nav-btn{
  width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;background:rgba(255,255,255,.14);
  color:#fff;font-size:1rem;display:grid;place-items:center;transition:.2s;backdrop-filter:blur(6px);
}
.nav-btn:hover{background:rgba(255,255,255,.28)}
.nav-counter{color:#cdd8e4;font-family:var(--font-en);font-weight:600;font-size:.92rem;min-width:62px;text-align:center}

.top-ui{position:fixed;z-index:50;top:20px;right:24px;display:flex;gap:10px;align-items:center}
.lang-switch{display:flex;border:1px solid rgba(255,255,255,.25);border-radius:50px;overflow:hidden}
.lang-switch button{border:0;background:transparent;color:#cdd8e4;padding:7px 14px;font-weight:700;font-size:.8rem;cursor:pointer;font-family:var(--font-en)}
.lang-switch button.active{background:#fff;color:var(--navy)}
.top-ui .tool-btn{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;border-radius:50px;padding:8px 16px;font-size:.84rem;font-weight:600;cursor:pointer;display:inline-flex;gap:7px;align-items:center}
.top-ui .tool-btn:hover{background:rgba(255,255,255,.2)}
.home-link{position:fixed;z-index:50;top:20px;left:24px;color:#cdd8e4;font-size:.86rem;display:inline-flex;gap:7px;align-items:center}
.home-link:hover{color:#fff}

.progress{position:fixed;top:0;left:0;height:3px;background:var(--orange);z-index:60;transition:width .3s}

.hint{position:fixed;bottom:76px;left:0;right:0;text-align:center;color:#6f839a;font-size:.78rem;z-index:50}

/* ---------- Responsive (small screens show stacked, scrollable) ---------- */
@media(max-width:900px){
  body{overflow:auto}
  .deck{height:auto;min-height:100vh;padding:70px 14px 90px}
  .stage{aspect-ratio:auto;min-height:auto;max-width:720px;margin-bottom:0}
  .slide{position:relative;inset:auto;opacity:1;visibility:visible;padding:40px 30px 56px;border-bottom:8px solid var(--bg-soft)}
  .slide.active{opacity:1}
  .slide.cover{min-height:460px}
  .two-col,.ie-split,.brand-two,.contact-two{grid-template-columns:1fr;gap:24px}
  .card-row,.card-row.three,.net-row,.proc-row,.stat-row{grid-template-columns:1fr 1fr;gap:14px}
  .slide h2.s-title{font-size:1.5rem}
  .cover h1{font-size:2rem}
  .s-img{max-height:260px}
  .nav-ui,.hint{display:none}
}
@media(max-width:520px){
  .card-row,.card-row.three,.net-row,.proc-row,.stat-row{grid-template-columns:1fr}
}

/* ---------- Print to PDF (one slide per page, landscape) ---------- */
@media print{
  @page{size:1280px 720px;margin:0}
  body{background:#fff;overflow:visible}
  .deck{display:block;height:auto}
  .stage{box-shadow:none;border-radius:0;max-width:none;width:1280px;height:720px;aspect-ratio:auto}
  .slide{position:relative;inset:auto;opacity:1!important;visibility:visible!important;page-break-after:always;break-after:page;width:1280px;height:720px}
  .nav-ui,.top-ui,.home-link,.hint,.progress{display:none!important}
}
