/* FYQRO V31 — v20 Corporate Light + v30 Content
   Light base · Corporate Blue accent · Navy hero · 동일 클래스명으로 v30 HTML 호환 */
@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=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

:root{
  /* v20 코어 톤 */
  --blue:#0066cc; --navy:#0c4d98; --blue-lt:#6993ff; --blue-soft:#eaf2fc;
  --ink:#1a1f27; --gray:#5b6470; --gray-lt:#8d9399;
  --line:#e6e8ec; --bg:#ffffff; --bg-soft:#f5f7fa; --bg-tint:#eef3fb;
  --accent:#f5cc00;

  --font-sans-ko:'Pretendard','Noto Sans KR',-apple-system,sans-serif;
  --font-sans-en:'Plus Jakarta Sans','Pretendard',sans-serif;
  --sans:var(--font-sans-ko);

  /* v30 호환 alias (라이트 매핑) */
  --bg-primary:var(--bg); --bg-secondary:var(--bg-soft); --bg-tertiary:var(--bg-tint);
  --text-primary:var(--ink); --text-secondary:var(--gray); --text-muted:var(--gray-lt);
  --accent-primary:var(--blue); --accent-secondary:var(--navy); --border-color:var(--line);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.6;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px;}
::selection{background:var(--blue);color:#fff;}
h1,h2,h3,h4{font-family:var(--sans);font-weight:800;letter-spacing:-.025em;color:var(--ink);}
strong,b{color:var(--ink);font-weight:700;}

.en-eyebrow,.eyebrow{font-family:var(--font-sans-en);font-size:.82rem;font-weight:700;letter-spacing:.06em;color:var(--blue);text-transform:uppercase;margin-bottom:14px;display:block;}

/* NAV — v20 라이트 톤 + active under-line */
header,.site-nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px;}
.brand{font-weight:800;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink);}
.brand b{color:var(--blue);}
.nav-right{display:flex;gap:26px;align-items:center;}
.nav-tabs{display:flex;gap:4px;align-items:center;}
.nav-tabs a{font-family:var(--sans);font-size:.94rem;font-weight:600;color:var(--ink);padding:10px 14px;border-radius:8px;position:relative;transition:.2s;letter-spacing:-.01em;}
.nav-tabs a:hover{color:var(--blue);background:var(--blue-soft);}
.nav-tabs a.active{color:var(--blue);}
.nav-tabs a.active::after{content:'';position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--blue);border-radius:2px;}
.nav-cta{background:var(--blue)!important;color:#fff!important;padding:11px 22px!important;border-radius:8px;font-weight:700!important;font-size:.92rem!important;}
.nav-cta:hover{background:var(--navy)!important;}
.nav-cta::after{display:none!important;}
.lang{display:flex;gap:5px;font-size:.86rem;font-weight:700;color:var(--gray-lt);}
.lang button{background:none;border:none;color:var(--gray-lt);cursor:pointer;font:inherit;padding:4px 6px;}
.lang button.active{color:var(--blue);}
.burger{display:none;font-size:1.5rem;background:none;border:none;cursor:pointer;color:var(--ink);}

/* BUTTONS — v20 */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:9px;font-weight:700;font-size:.96rem;cursor:pointer;border:1.5px solid transparent;transition:.22s;font-family:var(--sans);}
.btn-primary{background:var(--blue);color:#fff;}
.btn-primary:hover{background:var(--navy);transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,102,204,.28);}
.btn-secondary,.btn-line{border-color:var(--line);color:var(--ink);background:#fff;}
.btn-secondary:hover,.btn-line:hover{border-color:var(--blue);color:var(--blue);}

/* HERO — v20 navy 그라디언트 + 텍스트만 (사진 X, v31 정직성 정합) */
.hero{position:relative;background:linear-gradient(115deg,#0a1a3d 0%,#0c4d98 60%,#1b62b8 100%);color:#fff;overflow:hidden;padding:120px 0 100px;border-bottom:1px solid var(--line);}
.hero::before{content:'';position:absolute;top:-30%;right:-10%;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle,rgba(105,147,255,.32),transparent 65%);}
.hero::after{content:'';position:absolute;bottom:-40%;left:-12%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(245,204,0,.10),transparent 70%);}
.hero .wrap{position:relative;z-index:2;}
.hero-content{max-width:880px;}
.hero .en-eyebrow{color:var(--blue-lt);}
.hero h1{font-family:var(--sans);font-size:clamp(2.4rem,4.6vw,3.8rem);font-weight:800;line-height:1.14;letter-spacing:-.03em;margin-bottom:24px;color:#fff;}
.hero h1 .b{color:var(--blue-lt);}
.hero p,.hero .sub{font-size:1.1rem;color:rgba(255,255,255,.86);line-height:1.74;margin-bottom:34px;max-width:62ch;}
.hero .btn-primary{background:#fff;color:var(--navy);}
.hero .btn-primary:hover{background:var(--blue-lt);color:#fff;transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.34);}
.hero .btn-secondary,.hero .btn-line{border-color:rgba(255,255,255,.34);color:#fff;background:transparent;}
.hero .btn-secondary:hover,.hero .btn-line:hover{border-color:#fff;background:rgba(255,255,255,.08);}
.cta-group,.hero-actions{display:flex;gap:12px;flex-wrap:wrap;}

/* HERO DIAGRAM (v30 컴포넌트 — light glass on navy) */
.hero-diagram{margin-top:60px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:38px 32px 32px;display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:14px;align-items:center;position:relative;backdrop-filter:blur(8px);}
.hero-diagram::before{content:'DATA FLOW · CHANNEL → AI ANSWER';position:absolute;top:-9px;left:24px;background:#0a1a3d;color:var(--blue-lt);font-family:var(--font-sans-en);font-size:.66rem;font-weight:700;letter-spacing:.12em;padding:0 10px;}
.hd-tile{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.20);border-radius:10px;padding:22px 16px 16px;display:flex;flex-direction:column;align-items:center;gap:12px;min-height:170px;}
.hd-lbl{font-family:var(--font-sans-en);font-size:.66rem;font-weight:700;color:var(--blue-lt);letter-spacing:.12em;text-transform:uppercase;}
.hd-cap{font-size:.78rem;color:rgba(255,255,255,.78);text-align:center;line-height:1.4;}
.hd-viz{flex:1;width:100%;display:flex;align-items:center;justify-content:center;}
.hd-arrow{font-family:var(--font-sans-en);font-size:1.2rem;color:var(--blue-lt);opacity:.7;font-weight:300;}
.hd-bars{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;height:60px;align-items:end;width:100%;padding:0 8px;}
.hd-bars span{background:var(--blue-lt);opacity:.7;border-radius:2px;}
.hd-bars span:nth-child(1){height:42%;}.hd-bars span:nth-child(2){height:74%;}.hd-bars span:nth-child(3){height:30%;}.hd-bars span:nth-child(4){height:88%;opacity:1;}.hd-bars span:nth-child(5){height:54%;}.hd-bars span:nth-child(6){height:66%;}.hd-bars span:nth-child(7){height:38%;}.hd-bars span:nth-child(8){height:60%;}
.hd-converge{position:relative;width:100%;height:64px;}
.hd-converge .cv{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--blue-lt);opacity:.8;}
.hd-converge .cv.a{top:10%;left:14%;}.hd-converge .cv.b{top:18%;right:14%;}.hd-converge .cv.c{top:46%;left:6%;}.hd-converge .cv.d{top:46%;right:6%;}.hd-converge .cv.e{top:78%;left:50%;transform:translateX(-50%);}
.hd-converge .cv.core{top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;background:#fff;opacity:1;box-shadow:0 0 0 4px rgba(105,147,255,.35);}
.hd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;width:100%;padding:0 14px;}
.hd-grid i{height:14px;background:var(--blue-lt);opacity:.7;border-radius:2px;}
.hd-grid i:nth-child(4n){opacity:1;}
.hd-pulse{position:relative;width:60px;height:60px;}
.hd-pulse span{position:absolute;inset:0;border:2px solid var(--blue-lt);border-radius:50%;opacity:0;animation:pulseRing 2.6s ease-out infinite;}
.hd-pulse .p2{animation-delay:.85s;}
.hd-pulse .p3{animation-delay:1.7s;}
@keyframes pulseRing{0%{transform:scale(.4);opacity:.85;}100%{transform:scale(1.15);opacity:0;}}
@media(max-width:920px){
  .hero-diagram{grid-template-columns:1fr;}
  .hd-arrow{transform:rotate(90deg);justify-self:center;}
}

/* SECTION 공통 — v20 라이트 + alt soft */
section.block{padding:100px 0;background:var(--bg);border-bottom:1px solid var(--line);}
section.block:last-of-type{border-bottom:none;}
section.block.alt{background:var(--bg-soft);}
.block-head{margin-bottom:54px;max-width:780px;}
.block-head h2{font-size:clamp(1.9rem,3.2vw,2.6rem);line-height:1.22;color:var(--ink);}
.block-head h2 .b{color:var(--blue);}
.block-head p{color:var(--gray);font-size:1.04rem;line-height:1.72;margin-top:18px;max-width:68ch;}

/* SUB-HERO — v20 navy gradient */
.sub-hero{background:linear-gradient(135deg,#0a1a3d 0%,#0c4d98 100%);color:#fff;padding:78px 0 64px;position:relative;overflow:hidden;border-bottom:1px solid var(--line);}
.sub-hero::before{content:'';position:absolute;top:-30%;right:-8%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(105,147,255,.28),transparent 68%);}
.sub-hero .wrap{position:relative;z-index:2;}
.sub-hero .en-eyebrow{color:var(--blue-lt);}
.sub-hero .breadcrumb{font-size:.78rem;font-weight:600;color:rgba(255,255,255,.6);margin-bottom:14px;letter-spacing:.02em;}
.sub-hero .breadcrumb a{color:rgba(255,255,255,.85);}
.sub-hero .breadcrumb a:hover{color:#fff;}
.sub-hero .breadcrumb .sep{margin:0 8px;color:rgba(255,255,255,.4);}
.sub-hero h1{font-size:clamp(2rem,3.6vw,3rem);font-weight:800;line-height:1.18;letter-spacing:-.03em;margin-bottom:14px;color:#fff;}
.sub-hero h1 .b{color:var(--blue-lt);}
.sub-hero p{font-size:1.05rem;color:rgba(255,255,255,.82);line-height:1.7;max-width:64ch;}

/* THREE PILLARS */
.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.pillar-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 30px 30px;transition:.26s;position:relative;overflow:hidden;}
.pillar-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--blue);transform:scaleY(0);transform-origin:top;transition:.3s;}
.pillar-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(12,77,152,.13);border-color:transparent;}
.pillar-card:hover::before{transform:scaleY(1);}
.pillar-card .pn{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.08em;margin-bottom:14px;text-transform:uppercase;}
.pillar-card h3{font-family:var(--sans);font-size:1.28rem;font-weight:800;color:var(--ink);margin-bottom:12px;letter-spacing:-.02em;}
.pillar-card p{color:var(--gray);font-size:.96rem;line-height:1.7;}

/* TRUST GRID */
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:30px;}
.trust-grid .tg-cell{background:#fff;padding:24px 16px;text-align:center;font-family:var(--font-sans-en);font-size:1rem;font-weight:700;color:var(--gray);min-height:74px;display:flex;align-items:center;justify-content:center;letter-spacing:-.01em;transition:.18s;}
.trust-grid .tg-cell:hover{color:var(--blue);background:var(--bg-soft);}
.trust-grid .tg-cell.sup{color:var(--blue);}

/* SCROLL-SPY 솔루션 페이지 */
.spy-section{padding:96px 0;border-bottom:1px solid var(--line);background:var(--bg);}
.spy-section:nth-of-type(even){background:var(--bg-soft);}
.spy-section:last-of-type{border-bottom:none;}
.spy-section .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;}
.spy-content h2{font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.22;color:var(--ink);margin-bottom:22px;}
.spy-content p{color:var(--gray);font-size:1.04rem;line-height:1.78;margin-bottom:18px;}
.spy-content p:last-of-type{margin-bottom:0;}
.spy-content b{color:var(--navy);}
.feature-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:26px;}
.feature-chips li{background:var(--blue-soft);border:1px solid var(--blue-soft);color:var(--navy);padding:9px 16px;border-radius:6px;font-size:.86rem;font-weight:600;font-family:var(--font-sans-en);}
.spy-visual{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;min-height:320px;display:flex;flex-direction:column;gap:14px;position:relative;}
.spy-visual::before{content:attr(data-tag);position:absolute;top:-9px;left:20px;background:var(--bg);color:var(--blue);font-family:var(--font-sans-en);font-size:.64rem;font-weight:800;letter-spacing:.12em;padding:0 8px;text-transform:uppercase;}
.spy-section:nth-of-type(even) .spy-visual::before{background:var(--bg-soft);}

/* SOLUTION ARCHITECTURE — 4 레이어 + 횡단 (v30 컴포넌트 라이트 리매핑) */
.arch{display:grid;grid-template-columns:1fr 2.2fr 1fr;gap:18px;align-items:stretch;margin-top:10px;}
.arch-side{display:flex;flex-direction:column;gap:12px;padding:14px 4px;}
.as-head{font-family:var(--font-sans-en);font-size:.7rem;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;text-align:center;padding-bottom:8px;border-bottom:1px dashed var(--line);margin-bottom:6px;}
.as-cell{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 20px;flex:1;display:flex;flex-direction:column;justify-content:center;position:relative;}
.arch-left .as-cell::after,.arch-right .as-cell::before{content:'';position:absolute;top:50%;width:18px;height:1px;background:linear-gradient(90deg,transparent,var(--blue));}
.arch-left .as-cell::after{right:-18px;}
.arch-right .as-cell::before{left:-18px;background:linear-gradient(90deg,var(--blue),transparent);}
.ak{font-family:var(--font-sans-en);font-size:.78rem;font-weight:800;color:var(--blue);letter-spacing:.06em;margin-bottom:6px;}
.as-cell p{color:var(--gray);font-size:.86rem;line-height:1.62;}
.arch-stack{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;position:relative;}
.arch-stack::before{content:'DATA FLOWS UPWARD';position:absolute;top:-9px;left:24px;background:var(--bg-soft);color:var(--blue);font-family:var(--font-sans-en);font-size:.62rem;font-weight:800;letter-spacing:.14em;padding:0 10px;}
.al{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:16px 20px 14px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:18px;align-items:start;}
.al-n{grid-row:1/3;font-family:var(--font-sans-en);font-size:1.5rem;font-weight:800;color:var(--blue);letter-spacing:-.02em;line-height:1;align-self:center;}
.al-h{font-family:var(--font-sans-en);font-size:1.02rem;font-weight:800;color:var(--ink);letter-spacing:-.01em;margin-bottom:8px;}
.al-chips{display:flex;flex-wrap:wrap;gap:6px;}
.al-chips span{background:#fff;border:1px solid var(--line);color:var(--gray);padding:5px 11px;border-radius:5px;font-family:var(--font-sans-en);font-size:.76rem;font-weight:600;}
.al-flow{text-align:center;color:var(--blue);font-size:.8rem;opacity:.7;line-height:1;}
.al-surface{border-color:var(--blue);background:linear-gradient(180deg,rgba(0,102,204,.05),var(--bg-soft));}
.al-surface .al-h{color:var(--blue);}
.al-source{border-style:dashed;}
.arch-foot{font-family:var(--font-sans-en);font-size:.92rem;color:var(--gray);text-align:center;margin-top:28px;padding-top:22px;border-top:1px dashed var(--line);letter-spacing:-.005em;line-height:1.7;}
@media(max-width:960px){
  .arch{grid-template-columns:1fr;}
  .arch-side{flex-direction:row;gap:10px;}
  .as-head{display:none;}
  .arch-left .as-cell::after,.arch-right .as-cell::before{display:none;}
}

/* AGENT ORCHESTRATION PLATFORM (라이트 리매핑) */
.orch{display:flex;flex-direction:column;gap:8px;background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:26px 22px 28px;position:relative;}
.orch::before{content:'AGENT ORCHESTRATION · ENTERPRISE PLATFORM';position:absolute;top:-9px;left:24px;background:var(--bg);color:var(--blue);font-family:var(--font-sans-en);font-size:.62rem;font-weight:800;letter-spacing:.14em;padding:0 10px;}
.or-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 22px 16px;}
.or-rowlabel{font-family:var(--font-sans-en);font-size:.7rem;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;}
.or-cells{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;}
.or-cells.four{grid-template-columns:repeat(4,1fr);}
.or-cell{background:var(--bg-soft);border:1px solid var(--line);border-radius:7px;padding:12px 14px;font-size:.86rem;color:var(--ink);font-weight:600;display:flex;flex-direction:column;gap:4px;text-align:left;}
.oc-k{font-family:var(--font-sans-en);font-size:.86rem;font-weight:800;color:var(--ink);letter-spacing:-.01em;}
.oc-l{font-size:.76rem;color:var(--gray);font-weight:400;}
.or-down{text-align:center;color:var(--blue);font-size:.85rem;opacity:.55;line-height:1;padding:2px 0;}
.or-source{border-style:dashed;}
.or-source .or-cell{text-align:center;justify-content:center;align-items:center;}
.or-refine{border-color:var(--blue);background:linear-gradient(180deg,rgba(0,102,204,.04),#fff);}
.or-core{background:linear-gradient(180deg,var(--bg-tint),#fff);border-color:var(--blue);padding:22px 24px 24px;}
.or-core-grid{display:grid;grid-template-columns:1fr 1.05fr 1fr;gap:16px;align-items:stretch;}
.or-agents{display:flex;flex-direction:column;gap:8px;}
.oa-tag{font-family:var(--font-sans-en);font-size:.66rem;font-weight:800;color:var(--gray-lt);letter-spacing:.12em;text-transform:uppercase;text-align:center;padding-bottom:6px;border-bottom:1px dashed var(--line);margin-bottom:4px;}
.oa{background:#fff;border:1px solid var(--line);border-radius:8px;padding:11px 14px;display:flex;align-items:center;gap:12px;transition:.18s;}
.oa:hover{border-color:var(--blue);}
.oa-d{font-family:var(--font-sans-en);font-size:.74rem;font-weight:800;color:var(--blue);background:var(--blue-soft);border:1px solid var(--blue-lt);width:32px;height:32px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.04em;}
.oa b{display:block;font-family:var(--sans);font-size:.9rem;color:var(--ink);font-weight:700;line-height:1.3;}
.oa em{display:block;font-style:normal;font-size:.74rem;color:var(--gray);margin-top:2px;}
.or-engine{background:#fff;border:2px solid var(--blue);border-radius:12px;padding:24px 18px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;position:relative;text-align:center;box-shadow:0 0 0 4px rgba(0,102,204,.06);}
.oe-pill{background:var(--blue);color:#fff;font-family:var(--font-sans-en);font-weight:800;padding:10px 18px;border-radius:8px;font-size:.92rem;letter-spacing:.01em;}
.oe-sub{font-size:.78rem;color:var(--gray);line-height:1.55;max-width:30ch;}
.oe-ring{position:relative;width:64px;height:64px;margin-top:10px;}
.oe-ring span{position:absolute;inset:0;border:1.5px solid var(--blue);border-radius:50%;opacity:0;animation:oeRing 3.2s ease-out infinite;}
.oe-ring .r2{animation-delay:1s;}
.oe-ring .r3{animation-delay:2s;}
@keyframes oeRing{0%{transform:scale(.35);opacity:.85;}100%{transform:scale(1.15);opacity:0;}}
.or-persona{background:var(--bg-tint);border-color:var(--line);}
.or-p{text-align:center;font-family:var(--font-sans-en);font-weight:700;color:var(--navy);justify-content:center;align-items:center;}
@media(max-width:960px){
  .or-cells,.or-cells.four{grid-template-columns:repeat(2,1fr);}
  .or-core-grid{grid-template-columns:1fr;}
  .or-engine{padding:20px 16px;order:-1;}
}

/* SOLUTIONS — 3 도식 (Master Mapping / RAG / Pipeline) */
.diagram{background:transparent;width:100%;}
.diagram-mapping{display:flex;flex-direction:column;align-items:center;gap:14px;padding:14px 4px;}
.dm-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}
.dm-pill{background:#fff;border:1px solid var(--line);color:var(--ink);padding:10px 18px;border-radius:6px;font-family:var(--font-sans-en);font-size:.86rem;font-weight:700;}
.dm-lines{display:flex;gap:60px;height:24px;align-items:center;}
.dm-lines i{width:1px;height:100%;background:linear-gradient(180deg,var(--line),var(--blue));}
.dm-lines.down{height:30px;}
.dm-center{background:var(--blue);color:#fff;font-family:var(--font-sans-en);font-weight:800;padding:14px 24px;border-radius:8px;letter-spacing:.02em;font-size:.94rem;}
.dm-target{background:var(--blue-soft);border:1.5px solid var(--blue);color:var(--navy);padding:12px 22px;border-radius:6px;font-weight:700;font-size:.94rem;}
.diagram-rag{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:10px 6px;}
.rg-step{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 18px;display:flex;align-items:center;gap:14px;color:var(--ink);font-size:.94rem;font-weight:600;}
.rg-ico{font-family:var(--font-sans-en);font-size:1.2rem;color:var(--blue);width:28px;text-align:center;font-weight:800;}
.rg-arr{align-self:center;color:var(--blue);font-size:.85rem;opacity:.7;}
.rg-tune{border-color:var(--blue);}
.rg-base{background:var(--blue-soft);border-color:var(--blue);text-align:center;font-family:var(--font-sans-en);font-size:.86rem;color:var(--navy);font-weight:700;letter-spacing:.02em;padding:18px;}
.rg-out{background:var(--blue);color:#fff;border-color:var(--blue);font-weight:700;}
.rg-out .rg-ico{color:#fff;}
.diagram-pipe{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:14px 4px;}
.dp-step{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px 8px 14px;text-align:center;position:relative;}
.dp-step:not(:last-child)::after{content:'›';position:absolute;right:-7px;top:50%;transform:translateY(-50%);color:var(--blue);font-size:1.3rem;font-weight:300;z-index:1;}
.dp-n{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.08em;margin-bottom:8px;}
.dp-l{font-size:.84rem;color:var(--ink);font-weight:700;}
.dp-final{background:var(--blue);border-color:var(--blue);}
.dp-final .dp-n,.dp-final .dp-l{color:#fff;}
@media(max-width:760px){
  .diagram-pipe{grid-template-columns:1fr 1fr;}
  .dp-step:not(:last-child)::after{display:none;}
}

/* INSIGHTS Case Article */
.case-article{padding:90px 0;border-bottom:1px solid var(--line);background:var(--bg);}
.case-article.alt{background:var(--bg-soft);}
.case-article .wrap{max-width:880px;}
.case-head{margin-bottom:38px;}
.case-tag{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.14em;text-transform:uppercase;display:inline-block;padding:6px 14px;border:1px solid var(--blue);border-radius:4px;margin-bottom:24px;background:var(--blue-soft);}
.case-head h2{font-size:clamp(1.8rem,2.8vw,2.3rem);line-height:1.22;color:var(--ink);margin-bottom:22px;}
.case-lede{color:var(--gray);font-size:1.1rem;line-height:1.78;max-width:70ch;}
.case-body{padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.case-body h3{font-family:var(--font-sans-en);font-size:.78rem;font-weight:800;color:var(--blue);letter-spacing:.14em;text-transform:uppercase;margin:24px 0 12px;}
.case-body h3:first-child{margin-top:0;}
.case-body p{color:var(--gray);font-size:1.02rem;line-height:1.86;margin-bottom:8px;}
.case-divider{height:1px;background:var(--line);max-width:1240px;margin:0 auto;}

/* Insights Case Diagram (정성 도식) */
.case-diagram{margin-top:32px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 28px;}
.cd-tag{font-family:var(--font-sans-en);font-size:.66rem;font-weight:700;color:var(--gray-lt);letter-spacing:.12em;text-transform:uppercase;border:1px dashed var(--line);padding:6px 12px;border-radius:4px;display:inline-block;margin-bottom:20px;}
.cd-row{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;}
.cd-side{background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;padding:20px 22px;text-align:center;}
.cd-side.after{border-color:var(--blue);background:var(--blue-soft);}
.cd-h{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--gray);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;}
.cd-side.after .cd-h{color:var(--blue);}
.cd-vis{display:flex;align-items:end;justify-content:center;gap:5px;height:60px;margin-bottom:14px;}
.cd-vis i{width:14px;background:var(--gray-lt);border-radius:2px;}
.cd-noise i:nth-child(1){height:72%;}.cd-noise i:nth-child(2){height:34%;}.cd-noise i:nth-child(3){height:88%;}.cd-noise i:nth-child(4){height:18%;}.cd-noise i:nth-child(5){height:64%;}.cd-noise i:nth-child(6){height:42%;}
.cd-clean i{background:var(--blue);opacity:.9;}
.cd-clean i:nth-child(1){height:54%;}.cd-clean i:nth-child(2){height:58%;}.cd-clean i:nth-child(3){height:62%;}.cd-clean i:nth-child(4){height:60%;}.cd-clean i:nth-child(5){height:64%;}.cd-clean i:nth-child(6){height:56%;}
.cd-c{font-size:.84rem;color:var(--gray);line-height:1.5;}
.cd-arrow{color:var(--blue);font-size:1.4rem;font-weight:300;}
.perimeter{border:2px dashed var(--blue);border-radius:12px;padding:26px 24px 22px;background:var(--blue-soft);}
.pm-label{font-family:var(--font-sans-en);font-size:.7rem;font-weight:800;color:var(--navy);letter-spacing:.1em;text-transform:uppercase;text-align:center;margin-bottom:18px;}
.pm-stack{display:flex;flex-direction:column;gap:8px;max-width:380px;margin:0 auto;}
.pm-layer{background:#fff;border:1px solid var(--line);border-radius:6px;padding:14px 18px;text-align:center;}
.pm-k{font-family:var(--font-sans-en);font-size:.92rem;font-weight:700;color:var(--ink);}
.pm-edge{margin-top:18px;text-align:center;}
.pm-edge span{font-family:var(--font-sans-en);font-size:.78rem;color:var(--gray);letter-spacing:.04em;border:1px solid var(--line);padding:6px 14px;border-radius:4px;background:#fff;}
@media(max-width:760px){
  .cd-row{grid-template-columns:1fr;}
  .cd-arrow{transform:rotate(90deg);justify-self:center;}
}

/* BELIEF GRID (Company) */
.belief-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;}
.belief-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 30px 30px;transition:.26s;}
.belief-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px rgba(12,77,152,.10);}
.belief-card .bn{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.12em;margin-bottom:14px;}
.belief-card h3,.belief-card h4{font-size:1.18rem;font-weight:800;color:var(--ink);margin-bottom:16px;line-height:1.36;}
.belief-card p{color:var(--gray);font-size:.96rem;line-height:1.78;}

/* COMPLIANCE GRID (Company) */
.comp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;}
.comp-cell{background:#fff;padding:30px 32px;}
.comp-cell .ck{font-family:var(--font-sans-en);font-size:.74rem;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;}
.comp-cell p{color:var(--gray);font-size:.96rem;line-height:1.72;}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:10px;max-width:880px;}
.faq-list details{background:#fff;border:1px solid var(--line);border-radius:10px;transition:.2s;}
.faq-list details[open]{border-color:var(--blue);box-shadow:0 14px 30px rgba(12,77,152,.08);}
.faq-list summary{cursor:pointer;padding:20px 24px;font-weight:700;color:var(--ink);font-size:1rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;}
.faq-list summary::-webkit-details-marker{display:none;}
.faq-list summary::after{content:'+';font-family:var(--font-sans-en);font-weight:300;font-size:1.6rem;color:var(--blue);transition:.2s;line-height:1;}
.faq-list details[open] summary::after{transform:rotate(45deg);}
.faq-list details p{padding:0 24px 22px;color:var(--gray);font-size:.96rem;line-height:1.78;}

/* CONTACT GRID */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px;max-width:880px;}
.contact-cell{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px 26px;}
.contact-cell .ck{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;}
.contact-cell .ce{font-family:var(--font-sans-en);color:var(--ink);font-size:1.04rem;font-weight:700;display:block;letter-spacing:-.01em;}
.contact-cell a.ce:hover{color:var(--blue);}

/* CTA BLOCK */
.cta-block{background:linear-gradient(135deg,#0a1a3d 0%,#0c4d98 100%);color:#fff;padding:96px 0;position:relative;overflow:hidden;border-top:1px solid var(--line);}
.cta-block::before{content:'';position:absolute;top:-40%;right:-10%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(105,147,255,.28),transparent 68%);}
.cta-block .wrap{position:relative;z-index:2;}
.cta-block .en-eyebrow{color:var(--blue-lt);}
.cta-block h2{color:#fff;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.2;margin-bottom:18px;}
.cta-block h2 .b{color:var(--blue-lt);}
.cta-block p{color:rgba(255,255,255,.86);font-size:1.06rem;line-height:1.72;margin-bottom:32px;max-width:62ch;}
.cta-block .btn-primary{background:#fff;color:var(--navy);}
.cta-block .btn-primary:hover{background:var(--blue-lt);color:#fff;}
.cta-block .btn-secondary{border-color:rgba(255,255,255,.36);color:#fff;background:transparent;}
.cta-block .btn-secondary:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff;}

/* LIVE SERVICE TABS (Demo) */
.live-tabs{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:1280px;margin:0 auto 28px;}
.live-tabs .lt{text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 26px 20px;cursor:pointer;color:var(--gray);font-family:var(--sans);transition:.22s;display:flex;flex-direction:column;gap:6px;position:relative;}
.live-tabs .lt:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 14px 28px rgba(12,77,152,.10);}
.live-tabs .lt.on{border-color:var(--blue);background:var(--blue-soft);}
.live-tabs .lt.on::after{content:'LIVE';position:absolute;top:18px;right:22px;font-family:var(--font-sans-en);font-size:.62rem;font-weight:800;letter-spacing:.14em;color:var(--blue);padding:3px 8px;border:1px solid var(--blue);border-radius:4px;background:#fff;}
.live-tabs .ln{font-family:var(--font-sans-en);font-size:.7rem;font-weight:800;color:var(--blue);letter-spacing:.14em;}
.live-tabs .lh{font-family:var(--font-sans-en);font-size:1.14rem;font-weight:800;color:var(--ink);letter-spacing:-.01em;margin-top:2px;}
.live-tabs .lp{font-size:.86rem;color:var(--gray);line-height:1.55;margin-top:4px;}
.demo-frame.hidden,.outbound-card.hidden{display:none;}
@media(max-width:760px){.live-tabs{grid-template-columns:1fr;}}

/* DEMO SHELL · iframe wrap */
.demo-shell{padding:60px 0 100px;background:var(--bg-soft);}
.demo-frame{max-width:1280px;margin:0 auto;border-radius:14px;overflow:hidden;background:#fff;border:1px solid var(--line);aspect-ratio:16/10;position:relative;box-shadow:0 14px 30px rgba(12,77,152,.10);}
.demo-frame iframe{width:100%;height:100%;border:0;display:block;background:#fff;pointer-events:none;}
.dash-cover{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:30px;background:linear-gradient(180deg,transparent 64%,rgba(10,26,61,.55));cursor:pointer;}
.dash-cta{background:var(--blue);color:#fff;padding:12px 22px;border-radius:8px;font-weight:700;font-size:.92rem;font-family:var(--font-sans-en);}

/* OUTBOUND CARD (Sportic 365) */
.outbound-card{max-width:1280px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 14px 30px rgba(12,77,152,.10);}
.outbound-card .oc-head{display:flex;justify-content:space-between;align-items:center;padding:18px 30px;background:var(--bg-soft);border-bottom:1px solid var(--line);}
.outbound-card .oc-pill{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;letter-spacing:.14em;color:var(--blue);background:var(--blue-soft);border:1px solid var(--blue);padding:5px 12px;border-radius:5px;}
.outbound-card .oc-dom{font-family:var(--font-sans-en);font-size:.88rem;color:var(--gray);}
.outbound-card .oc-body{padding:42px 48px 44px;}
.outbound-card .oc-body h2{font-family:var(--font-sans-en);font-size:clamp(1.5rem,2.3vw,2rem);font-weight:800;color:var(--ink);letter-spacing:-.02em;margin-bottom:20px;line-height:1.22;}
.outbound-card .oc-body > p{color:var(--gray);font-size:1.04rem;line-height:1.78;margin-bottom:30px;max-width:78ch;}
.outbound-card .oc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:32px;}
.outbound-card .oc-cell{background:var(--bg-soft);padding:24px 26px;}
.outbound-card .ock{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;}
.outbound-card .oc-cell p{color:var(--gray);font-size:.94rem;line-height:1.72;}
.outbound-card .oc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px;}
.outbound-card .oc-foot{font-size:.8rem;color:var(--gray-lt);border-top:1px dashed var(--line);padding-top:16px;line-height:1.6;}
@media(max-width:760px){.outbound-card .oc-body{padding:28px 24px 30px;}.outbound-card .oc-grid{grid-template-columns:1fr;}}

/* DEMO 3 KEYS + GUIDE */
.demo-keys-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1280px;margin:50px auto 0;}
.dkey{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 28px;transition:.22s;}
.dkey:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 14px 28px rgba(12,77,152,.10);}
.dkey .kl{font-family:var(--font-sans-en);font-size:.72rem;font-weight:800;color:var(--blue);letter-spacing:.1em;margin-bottom:10px;}
.dkey h4{font-size:1.1rem;color:var(--ink);margin-bottom:10px;font-weight:800;}
.dkey p{color:var(--gray);font-size:.94rem;line-height:1.66;}
.demo-guide{max-width:880px;margin:60px auto 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px 36px;}
.demo-guide h3{font-size:1.22rem;font-weight:800;color:var(--ink);margin-bottom:18px;}
.demo-list{padding-left:20px;color:var(--gray);line-height:1.84;font-size:.98rem;display:flex;flex-direction:column;gap:6px;}
.demo-list li::marker{color:var(--blue);font-family:var(--font-sans-en);font-weight:800;}
.demo-foot{font-size:.82rem;color:var(--gray-lt);margin-top:22px;border-top:1px dashed var(--line);padding-top:16px;}

/* FOOTER — v20 라이트 */
footer,.site-foot{background:var(--bg-soft);border-top:1px solid var(--line);padding:64px 0 36px;color:var(--gray);}
.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:34px;margin-bottom:44px;}
.foot-brand .brand{font-size:1.4rem;color:var(--ink);display:inline-block;margin-bottom:14px;}
.foot-brand p{color:var(--gray);font-size:.9rem;line-height:1.72;max-width:42ch;}
.foot-col h4{font-family:var(--font-sans-en);color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;}
.foot-col a{display:block;color:var(--gray);padding:5px 0;font-size:.9rem;transition:.18s;}
.foot-col a:hover{color:var(--blue);}
.foot-bottom{border-top:1px solid var(--line);padding-top:24px;font-size:.82rem;color:var(--gray-lt);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.foot-bottom span:last-child{font-family:var(--font-sans-en);color:var(--blue);letter-spacing:.04em;font-weight:600;}

/* REVEAL */
.reveal{opacity:0;transform:translateY(20px);}
.reveal.in{opacity:1;transform:none;transition:opacity .65s cubic-bezier(.2,.7,.3,1),transform .65s cubic-bezier(.2,.7,.3,1);}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;}}

/* RESPONSIVE */
@media(max-width:1100px){.nav-tabs a{padding:8px 11px;font-size:.88rem;}}
@media(max-width:960px){
  .pillar-grid,.belief-grid{grid-template-columns:1fr;}
  .spy-section .wrap{grid-template-columns:1fr;gap:30px;}
  .foot-top{grid-template-columns:1fr 1fr;}
  .demo-keys-row{grid-template-columns:1fr;}
  .comp-grid,.contact-grid{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .nav-tabs{display:none;}.burger{display:block;}
  .nav-tabs.open{display:flex;flex-direction:column;position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:14px 20px;z-index:60;}
  .foot-top{grid-template-columns:1fr;}
  .hero-diagram{grid-template-columns:1fr;}
}
