:root{
  --ink:#0b1220;
  --muted:#6b7280;
  --line:#e7ebf0;
  --paper:#f7f8fa;
  --white:#fff;
  --blue:#1464ff;
  --blue-2:#0f4fda;
  --blue-soft:#eaf2ff;
  --navy:#071d49;
  --green:#19a974;
  --orange:#ff6b3d;
  --radius:28px;
  --shadow:0 20px 60px rgba(21,38,79,.10);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}.section{padding:110px 0}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--blue);text-transform:uppercase}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:36px}.section-head h2{font-size:clamp(34px,4vw,58px);line-height:1.05;letter-spacing:-.045em;margin:8px 0 0}.section-head p{max-width:480px;margin:0;color:var(--muted);font-size:17px}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:13px;background:#fff}.icon{width:22px;height:22px;display:inline-block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 22px;border-radius:999px;border:1px solid var(--line);font-weight:800;transition:.25s ease;background:#fff}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(21,38,79,.12)}.btn.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.dark{background:var(--ink);color:#fff;border-color:var(--ink)}.mini-arrow{width:18px;height:18px}

/* nav */
.site-nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(231,235,240,.75)}.nav-inner{height:74px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:900;letter-spacing:-.04em}.brand-mark{width:24px;height:24px;display:grid;grid-template-columns:1fr 1fr;gap:3px;transform:skewX(-12deg)}.brand-mark i{background:var(--blue);border-radius:3px}.brand-mark i:last-child{opacity:.55}.nav-links{margin-left:auto;display:flex;gap:28px;font-size:14px;font-weight:700;color:#414b5b}.nav-actions{display:flex;align-items:center;gap:10px}.mobile-toggle{display:none;border:0;background:transparent;font-size:24px}

/* hero */
.hero{padding:22px 0 26px}.hero-shell{min-height:690px;border-radius:36px;overflow:hidden;position:relative;background:linear-gradient(120deg,#f5f9ff 0%,#e8f3ff 48%,#0b4ab2 120%);display:grid;grid-template-columns:1.02fr .98fr;isolation:isolate}.hero-copy{padding:78px 0 64px 68px;z-index:3;display:flex;flex-direction:column;justify-content:center}.hero-copy .topline{font-size:16px;color:#6b7686;margin-bottom:16px}.hero-copy h1{font-size:clamp(54px,6vw,86px);line-height:.98;letter-spacing:-.065em;margin:0;max-width:690px}.hero-copy h1 strong{color:var(--blue)}.hero-copy .sub{font-size:19px;color:#4b5563;max-width:580px;margin:26px 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-trust{display:flex;gap:34px;margin-top:44px}.hero-trust b{font-size:26px;display:block;letter-spacing:-.03em}.hero-trust span{font-size:12px;color:#6b7280}.hero-media{position:relative;min-height:690px}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.82) contrast(1.03)}.hero-media:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#eef6ff 0%,rgba(238,246,255,.35) 18%,rgba(7,29,73,.02) 100%);z-index:1}.float-card{position:absolute;z-index:4;background:rgba(255,255,255,.91);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);box-shadow:0 18px 50px rgba(8,35,82,.18);border-radius:20px;padding:16px 18px}.float-card.launch{top:68px;right:52px;width:250px}.float-card.stage{top:180px;right:28px;width:180px}.float-card.dark{bottom:84px;right:50px;background:rgba(11,18,32,.88);color:#fff;width:240px;border-color:rgba(255,255,255,.15)}.float-card .row{display:flex;align-items:center;gap:10px}.float-card small{display:block;color:#6d7786;margin-top:3px}.float-card.dark small{color:#c9d2df}.status{width:30px;height:30px;border-radius:50%;background:#dcf7ec;color:var(--green);display:grid;place-items:center}.stage-list{display:grid;gap:11px;margin-top:8px}.stage-item{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#4b5563}.dot-check{width:18px;height:18px;border-radius:50%;background:#edf4ff;color:var(--blue);display:grid;place-items:center;font-size:11px}

/* services */
.service-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:18px}.service-card{min-height:390px;border-radius:30px;overflow:hidden;position:relative;padding:30px;border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.35s ease}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.service-card.primary{background:linear-gradient(150deg,#0f64ff,#053b9a);color:#fff;border-color:transparent}.service-card.dark{background:#11161f;color:#fff;border-color:#11161f}.service-card h3{font-size:34px;line-height:1.05;margin:18px 0 10px;letter-spacing:-.04em}.service-card p{font-size:16px;color:#6b7280;max-width:320px;margin:0}.service-card.primary p,.service-card.dark p{color:rgba(255,255,255,.72)}.service-card .meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.service-card .meta span{font-size:12px;padding:7px 10px;border-radius:999px;background:#f1f4f8;color:#5c6675}.service-card.primary .meta span,.service-card.dark .meta span{background:rgba(255,255,255,.12);color:#fff}.service-visual{height:150px;border-radius:22px;margin-top:24px;position:relative;overflow:hidden;background:#edf2f8}.service-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.service-card.primary .service-visual{background:rgba(255,255,255,.12)}.service-card .round-link{position:absolute;right:24px;bottom:24px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);box-shadow:0 8px 24px rgba(0,0,0,.08)}

/* problem-solution */
.split{display:grid;grid-template-columns:1fr 1fr;border-radius:34px;overflow:hidden;background:#f2f4f6}.problem{padding:58px;position:relative;min-height:590px;color:#fff}.problem:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,18,35,.40),rgba(7,18,35,.88)),url('https://images.unsplash.com/photo-1669639070305-89ab3f711a07?auto=format&fit=crop&fm=jpg&q=78&w=1800') center/cover no-repeat}.problem>*{position:relative}.problem h3,.solution h3{font-size:44px;line-height:1.05;letter-spacing:-.045em;margin:0 0 18px}.problem p{color:rgba(255,255,255,.72);font-size:17px;max-width:420px}.pain-list{display:grid;gap:10px;margin-top:44px}.pain-item{display:flex;align-items:center;gap:12px;font-weight:700;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);padding:12px 14px;border-radius:14px;backdrop-filter:blur(8px)}.solution{padding:58px;background:linear-gradient(145deg,#ffffff,#ecf4ff);position:relative;overflow:hidden}.solution h3 strong{color:var(--blue)}.solution p{color:var(--muted);font-size:17px;max-width:430px}.solution-list{display:grid;gap:16px;margin-top:34px}.solution-item{display:flex;align-items:flex-start;gap:13px;font-weight:700}.solution-item i{width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;flex:0 0 auto}.dashboard-card{margin-top:42px;background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:20px;box-shadow:0 24px 70px rgba(28,75,145,.12);transform:rotate(-1.2deg)}.dash-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.dash-stat{font-size:34px;font-weight:900}.dash-chart{height:70px;border-radius:14px;background:linear-gradient(180deg,rgba(20,100,255,.16),rgba(20,100,255,0));position:relative;overflow:hidden}.dash-chart:after{content:"";position:absolute;left:4%;right:4%;top:38%;height:2px;background:var(--blue);transform:skewY(-6deg);box-shadow:90px -10px 0 var(--blue),180px 8px 0 var(--blue),270px -15px 0 var(--blue)}

/* process */
.process-shell{background:linear-gradient(135deg,#062c73,#0c5edc);border-radius:34px;color:#fff;padding:58px}.process-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:end}.process-head h2{font-size:48px;line-height:1.03;letter-spacing:-.05em;margin:0}.process-head p{margin:0;color:rgba(255,255,255,.72);font-size:17px}.process-track{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:42px}.step{min-height:230px;border-radius:24px;padding:22px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.10);position:relative;overflow:hidden}.step:nth-child(1),.step:nth-child(3){background:#fff;color:var(--ink)}.step-no{font-size:12px;opacity:.65}.step .step-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:rgba(255,255,255,.12);margin:32px 0 24px}.step:nth-child(1) .step-icon,.step:nth-child(3) .step-icon{background:var(--blue-soft);color:var(--blue)}.step h3{font-size:22px;margin:0 0 10px}.step p{font-size:14px;margin:0;color:inherit;opacity:.68}.step .connector{position:absolute;top:38px;right:-16px;width:32px;height:1px;background:rgba(255,255,255,.45)}

/* team */
.team-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:44px;align-items:start}.team-intro{position:sticky;top:105px}.team-intro h2{font-size:56px;line-height:1.02;letter-spacing:-.055em;margin:10px 0 18px}.team-intro p{color:var(--muted);font-size:17px}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.person{min-height:310px;border-radius:26px;border:1px solid var(--line);padding:26px;background:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.3s ease}.person:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.person:nth-child(2){background:#f2f5f9}.person:nth-child(3){background:#071d49;color:#fff;border-color:#071d49}.person:nth-child(4){background:#eaf2ff}.monogram{width:74px;height:74px;border-radius:22px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:900;letter-spacing:-.05em}.person:nth-child(3) .monogram{background:#fff;color:#071d49}.person .career{font-size:13px;font-weight:800;color:var(--blue);margin-bottom:8px}.person:nth-child(3) .career{color:#7eb1ff}.person h3{font-size:26px;margin:0 0 8px}.person p{margin:0;color:var(--muted);font-size:15px}.person:nth-child(3) p{color:#c3d2eb}.person .focus{font-size:12px;margin-top:22px;font-weight:800;opacity:.72}

/* insights */
.insight-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.feature-post{min-height:520px;border-radius:30px;background:#11161f;color:#fff;overflow:hidden;position:relative;display:flex;align-items:flex-end;padding:34px}.feature-post:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,12,24,.05),rgba(5,12,24,.88)),url('https://images.unsplash.com/photo-1669639070305-89ab3f711a07?auto=format&fit=crop&fm=jpg&q=78&w=1800') center/cover no-repeat}.feature-post>*{position:relative}.post-tag{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.14);font-size:12px;font-weight:800}.feature-post h3{font-size:38px;line-height:1.08;letter-spacing:-.04em;margin:14px 0 10px}.feature-post p{margin:0;color:rgba(255,255,255,.66)}.post-stack{display:grid;grid-template-columns:1fr 1fr;gap:16px}.post-card{border:1px solid var(--line);border-radius:26px;min-height:250px;padding:24px;background:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}.post-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.post-card.tint{background:#eaf2ff}.post-card.dark{background:#071d49;color:#fff;border-color:#071d49}.post-card h3{font-size:22px;line-height:1.18;letter-spacing:-.025em;margin:12px 0 0}.post-card .visual{height:86px;border-radius:17px;background:linear-gradient(135deg,#eef2f7,#cdd8e7);position:relative;overflow:hidden}.post-card.tint .visual{background:linear-gradient(135deg,#0e65ff,#8cb8ff)}.post-card.dark .visual{background:linear-gradient(135deg,#0d2a5c,#0f64ff)}.visual.lines:before{content:"";position:absolute;left:18px;right:18px;top:20px;height:2px;background:#fff;box-shadow:0 14px 0 rgba(255,255,255,.72),0 28px 0 rgba(255,255,255,.5)}.visual.cards:before{content:"";position:absolute;width:70px;height:48px;border-radius:11px;background:#fff;left:18px;top:18px;box-shadow:82px 10px 0 rgba(255,255,255,.55),164px -4px 0 rgba(255,255,255,.25)}.visual.lockv:before{content:"";position:absolute;width:32px;height:38px;border:3px solid #fff;border-radius:8px;left:50%;top:34%;transform:translate(-50%,-20%)}.visual.lockv:after{content:"";position:absolute;width:20px;height:18px;border:3px solid #fff;border-bottom:0;border-radius:18px 18px 0 0;left:50%;top:20%;transform:translateX(-50%)}

/* CTA */
.final-cta{padding:0 0 60px}.cta-shell{border-radius:34px;background:linear-gradient(135deg,#081426,#12356e);color:#fff;padding:62px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;position:relative;overflow:hidden}.cta-shell:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:#1464ff;filter:blur(80px);opacity:.4;right:-120px;top:-140px}.cta-shell h2{font-size:52px;line-height:1.02;letter-spacing:-.05em;margin:0 0 14px;position:relative;z-index:1}.cta-shell p{margin:0;color:#c5d0df;font-size:17px;position:relative;z-index:1}.cta-buttons{display:flex;gap:10px;position:relative;z-index:2;flex-wrap:wrap}
.footer{padding:28px 0 50px;color:#87909c;font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}

/* reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.on{opacity:1;transform:none}.reveal.delay-1{transition-delay:.08s}.reveal.delay-2{transition-delay:.16s}.reveal.delay-3{transition-delay:.24s}

/* diagnose */
.quiz-shell{max-width:900px;margin:60px auto 100px}.quiz-top{text-align:center}.quiz-top h1{font-size:56px;letter-spacing:-.055em;margin:10px 0 14px}.quiz-top p{color:var(--muted);font-size:17px}.quiz-progress{height:6px;background:#edf0f4;border-radius:99px;overflow:hidden;margin:36px 0}.quiz-progress i{display:block;height:100%;width:20%;background:var(--blue);border-radius:99px;transition:.3s}.qcard{border:1px solid var(--line);border-radius:30px;padding:38px;background:#fff;box-shadow:0 22px 60px rgba(21,38,79,.08);display:none}.qcard.active{display:block}.qno{font-size:12px;font-weight:900;color:var(--blue);letter-spacing:.1em}.qcard h2{font-size:34px;letter-spacing:-.04em;margin:10px 0 24px}.options{display:grid;gap:10px}.option{padding:16px 18px;border:1px solid var(--line);border-radius:16px;cursor:pointer;transition:.2s;font-weight:700}.option:hover,.option.selected{border-color:var(--blue);background:#f3f7ff;color:var(--blue)}.quiz-nav{display:flex;justify-content:space-between;margin-top:22px}.result{display:none;border-radius:30px;background:linear-gradient(135deg,#061c42,#0e61e9);color:#fff;padding:46px}.result h2{font-size:42px;margin:0 0 14px}.result p{color:#d3e0f4}.result .score{font-size:78px;font-weight:900;line-height:1}.result .btn{margin-top:18px}

/* blog */
.blog-hero{padding:80px 0 50px}.blog-hero h1{font-size:clamp(48px,6vw,84px);line-height:.98;letter-spacing:-.06em;margin:10px 0 20px}.blog-hero p{font-size:18px;color:var(--muted);max-width:640px}.blog-filter{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.blog-filter button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:800;cursor:pointer}.blog-filter button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.blog-feature-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-bottom:18px}.blog-feature{min-height:450px;border-radius:30px;background:#0b1220;color:#fff;padding:32px;display:flex;align-items:flex-end;position:relative;overflow:hidden}.blog-feature .bg{position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,#246cff 0,transparent 38%),linear-gradient(135deg,#071d49,#0b1220)}.blog-feature .code-lines{position:absolute;right:7%;top:16%;width:46%;height:55%;border:1px solid rgba(255,255,255,.12);border-radius:20px;transform:rotate(-5deg);background:rgba(255,255,255,.04)}.blog-feature .code-lines:before{content:"";position:absolute;left:24px;right:24px;top:28px;height:2px;background:#7eb1ff;box-shadow:0 18px 0 #b4cdf7,0 36px 0 #4d85e5,0 54px 0 #b4cdf7,0 72px 0 #356fd4}.blog-feature .content{position:relative;z-index:2;max-width:620px}.blog-feature h2{font-size:44px;line-height:1.05;letter-spacing:-.04em;margin:12px 0}.blog-side-list{display:grid;gap:14px}.blog-side-card{border:1px solid var(--line);border-radius:26px;padding:24px;background:#fff;min-height:140px;display:flex;flex-direction:column;justify-content:space-between}.blog-side-card:nth-child(2){background:#eaf2ff}.blog-side-card:nth-child(3){background:#f6f1ed}.blog-side-card h3{font-size:21px;margin:8px 0 0;line-height:1.2}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:100px}.blog-card{border:1px solid var(--line);border-radius:26px;padding:24px;min-height:250px;background:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}.blog-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.blog-card:nth-child(4n+2){background:#f2f6ff}.blog-card:nth-child(4n+3){background:#f7f4f1}.blog-card .cat{font-size:12px;font-weight:900;color:var(--blue)}.blog-card h2{font-size:23px;line-height:1.18;letter-spacing:-.03em;margin:10px 0}.blog-card p{font-size:14px;color:var(--muted);margin:0}.blog-card .read{font-size:12px;color:#7a8491;margin-top:22px}

/* article overrides */
.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.navin{width:min(1120px,calc(100% - 40px));height:72px;margin:auto;display:flex;align-items:center;justify-content:space-between}.nav .brand{font-size:20px}.nav .link{font-size:13px;font-weight:800;margin-left:18px;color:#4b5563}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--blue);margin:0 6px 4px}.articleHero{padding:72px 0 30px;background:#fff}.articleHero .wrap,.articleGrid,.footer .wrap,.hero .wrap{width:min(1120px,calc(100% - 40px));margin:auto}.articleHero .kicker{font-size:13px;font-weight:900;letter-spacing:.08em;color:var(--blue)}.articleHero h1{font-size:clamp(46px,6vw,78px);line-height:1.03;letter-spacing:-.055em;max-width:950px;margin:12px 0 18px}.articleHero .lead{font-size:19px;color:var(--muted);max-width:760px}.articleHero .meta{font-size:13px;color:#87909c;margin-top:22px}.heroImg{display:none}.articleHero:after{content:"";display:block;width:min(1120px,calc(100% - 40px));height:180px;margin:42px auto 0;border-radius:28px;background:linear-gradient(135deg,#071d49,#1464ff 62%,#8cb8ff);box-shadow:var(--shadow)}.articleGrid{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:64px;padding:45px 0 100px}.article{font-size:17px;line-height:1.78}.article h2{font-size:34px;letter-spacing:-.04em;line-height:1.15;margin:56px 0 18px}.article h3{font-size:23px;margin:36px 0 12px}.article p{margin:0 0 20px}.article ul,.article ol{padding-left:24px;margin:0 0 24px}.article li{margin-bottom:8px}.article code{background:#f2f4f7;border-radius:8px;padding:2px 6px}.article blockquote{margin:36px 0;padding:22px 24px;background:#edf4ff;border-left:4px solid var(--blue);border-radius:0 18px 18px 0}.article table{width:100%;border-collapse:collapse;margin:30px 0;font-size:15px}.article th,.article td{text-align:left;padding:14px;border-bottom:1px solid var(--line)}.article th{background:#f7f8fa}.toc{position:sticky;top:105px;height:max-content;border:1px solid var(--line);border-radius:20px;padding:18px;background:#fff}.toc b{display:block;margin-bottom:12px}.toc a{display:block;font-size:12.5px;color:#6b7280;padding:6px 0}.article .cta{margin-top:54px;border-radius:26px;background:#071d49;color:#fff;padding:30px}.article .cta h3{margin-top:0}.article .cta p{color:#c5d0df}.article .cta a{display:inline-flex;background:#fff;color:#071d49;border-radius:999px;padding:10px 16px;font-weight:800;font-size:14px}

@media(max-width:980px){.nav-links{display:none}.hero-shell{grid-template-columns:1fr}.hero-copy{padding:60px 30px 30px}.hero-media{min-height:520px}.service-grid{grid-template-columns:1fr 1fr}.service-card.primary{grid-column:1/-1}.split{grid-template-columns:1fr}.process-head{grid-template-columns:1fr}.process-track{grid-template-columns:1fr 1fr}.team-layout{grid-template-columns:1fr}.team-intro{position:static}.insight-layout{grid-template-columns:1fr}.blog-feature-grid{grid-template-columns:1fr}.blog-grid{grid-template-columns:1fr 1fr}.articleGrid{grid-template-columns:1fr}.toc{display:none}.cta-shell{grid-template-columns:1fr}}
@media(max-width:680px){.wrap{width:min(100% - 24px,1180px)}.section{padding:74px 0}.site-nav .btn{display:none}.mobile-toggle{display:block;margin-left:auto}.nav-actions{margin-left:auto}.hero{padding-top:10px}.hero-shell{border-radius:24px;min-height:auto}.hero-copy{padding:48px 22px 28px}.hero-copy h1{font-size:48px}.hero-copy .sub{font-size:16px}.hero-trust{gap:18px}.hero-trust b{font-size:20px}.hero-media{min-height:420px}.float-card.launch{top:26px;right:18px;width:210px}.float-card.stage{display:none}.float-card.dark{bottom:24px;right:18px;width:210px}.section-head{display:block}.section-head p{margin-top:16px}.service-grid{grid-template-columns:1fr}.service-card.primary{grid-column:auto}.split{border-radius:24px}.problem,.solution{padding:34px 24px}.problem h3,.solution h3{font-size:36px}.process-shell{padding:34px 22px;border-radius:24px}.process-head h2{font-size:40px}.process-track{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr}.team-intro h2{font-size:44px}.post-stack{grid-template-columns:1fr}.feature-post{min-height:430px}.cta-shell{padding:38px 24px}.cta-shell h2{font-size:40px}.blog-grid{grid-template-columns:1fr}.blog-hero{padding-top:54px}.blog-feature h2{font-size:34px}.articleHero h1{font-size:43px}.articleHero .lead{font-size:17px}.articleHero:after{height:120px}.article{font-size:16px}.article h2{font-size:29px}.quiz-top h1{font-size:44px}.qcard{padding:28px 22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important;transition:none!important}}
.articleHero.cat-dev:after{background:linear-gradient(135deg,#071d49,#1464ff 62%,#8cb8ff)}
.articleHero.cat-work:after{background:linear-gradient(135deg,#13342d,#1b9c75 58%,#bdebdc)}
.articleHero.cat-strategy:after{background:linear-gradient(135deg,#2e243d,#7457a6 58%,#ded3f2)}

/* Hero polish — 2026-09-24 */
.hero>.wrap{
  width:min(1460px,calc(100% - 32px));
  margin-inline:auto;
}
.hero-shell{
  min-height:650px;
  grid-template-columns:minmax(0,1.08fr) minmax(500px,.92fr);
  background:linear-gradient(105deg,#f4f8ff 0%,#eaf3ff 52%,#d8e9ff 100%);
}
.hero-copy{
  padding:72px 54px 58px 72px;
  min-width:0;
}
.hero-copy .topline{
  margin-bottom:22px;
  font-size:17px;
  line-height:1.4;
}
.hero-copy h1{
  max-width:none;
  font-size:clamp(58px,4.9vw,78px);
  line-height:1.02;
  letter-spacing:-.058em;
}
.hero-copy h1 .hero-title-main,
.hero-copy h1 strong{
  display:block;
}
.hero-copy h1 .hero-title-main{
  white-space:nowrap;
}
.hero-copy h1 strong{
  margin-top:8px;
}
.hero-copy .sub{
  display:grid;
  gap:5px;
  max-width:640px;
  margin:34px 0 34px;
  font-size:18px;
  line-height:1.65;
}
.hero-copy .sub span{display:block}
.hero-actions{
  gap:14px;
  align-items:center;
}
.hero-actions .btn{
  min-width:166px;
  height:56px;
  padding-inline:26px;
}
.hero-trust{
  position:relative;
  gap:0;
  margin-top:46px;
  padding-top:28px;
  border-top:1px solid rgba(109,126,153,.18);
  max-width:575px;
}
.hero-trust>div{
  min-width:0;
  padding:0 34px;
  position:relative;
}
.hero-trust>div:first-child{padding-left:0}
.hero-trust>div:last-child{padding-right:0}
.hero-trust>div+div:before{
  content:"";
  position:absolute;
  left:0;
  top:5px;
  width:1px;
  height:52px;
  background:rgba(109,126,153,.20);
}
.hero-trust b{
  font-size:30px;
  line-height:1;
  margin-bottom:10px;
}
.hero-trust span{
  font-size:13px;
  line-height:1.3;
  white-space:nowrap;
}
.hero-media{
  min-height:650px;
  overflow:hidden;
}
.hero-photo{
  object-position:44% center;
  filter:saturate(.88) contrast(1.02);
}
.hero-media:before{
  background:linear-gradient(90deg,#eaf3ff 0%,rgba(234,243,255,.22) 16%,rgba(7,29,73,0) 48%);
}
.float-card{
  border-radius:22px;
  padding:17px 19px;
  box-shadow:0 18px 52px rgba(8,35,82,.16);
}
.float-card.launch{
  top:54px;
  right:24px;
  width:278px;
}
.float-card.stage{
  top:178px;
  right:24px;
  width:205px;
}
.float-card.dark{
  right:24px;
  bottom:62px;
  width:276px;
  padding:20px 21px;
}
.float-card.launch b,.float-card.stage>b,.float-card.dark b{
  font-size:16px;
  line-height:1.35;
}
.float-card small{
  font-size:13px;
  line-height:1.45;
}
.stage-list{gap:13px;margin-top:13px}
.stage-item{font-size:14px}
.dot-check{width:20px;height:20px}

@media(max-width:1180px){
  .hero-shell{grid-template-columns:1fr 1fr}
  .hero-copy{padding:60px 34px 52px 46px}
  .hero-copy h1{font-size:clamp(50px,5vw,62px)}
  .hero-copy .sub{font-size:17px}
  .float-card.launch{width:244px;right:18px}
  .float-card.stage{width:184px;right:18px}
  .float-card.dark{width:238px;right:18px}
}
@media(max-width:1080px){
  .hero-shell{grid-template-columns:1fr}
  .hero-copy{padding:60px 46px 46px}
  .hero-copy h1{font-size:clamp(56px,8vw,76px)}
  .hero-copy h1 .hero-title-main{white-space:normal}
  .hero-media{min-height:540px}
  .hero-photo{object-position:center 38%}
}
@media(max-width:680px){
  .hero>.wrap{width:min(100% - 20px,1460px)}
  .hero-copy{padding:44px 22px 30px}
  .hero-copy .topline{font-size:14px;margin-bottom:16px}
  .hero-copy h1{font-size:clamp(42px,13vw,54px);line-height:1.04}
  .hero-copy h1 strong{margin-top:4px}
  .hero-copy .sub{font-size:15.5px;line-height:1.6;margin:25px 0 26px;gap:2px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .hero-actions .btn{min-width:0;width:100%;height:50px;padding-inline:14px}
  .hero-trust{margin-top:34px;padding-top:22px;max-width:none}
  .hero-trust>div{padding:0 15px}
  .hero-trust b{font-size:22px;margin-bottom:7px}
  .hero-trust span{font-size:11px;white-space:normal}
  .hero-media{min-height:430px}
  .float-card.launch{top:18px;right:14px;width:222px;padding:14px 15px}
  .float-card.stage{display:none}
  .float-card.dark{bottom:18px;right:14px;width:228px;padding:16px}
  .float-card.launch b,.float-card.dark b{font-size:14px}
  .float-card small{font-size:11.5px}
}

/* ===== v3.1 launch polish ===== */
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--ink);color:#fff;padding:12px 18px;border-radius:0 0 12px 0;font-weight:800}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:8px}

/* mobile navigation */
.mobile-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:0;cursor:pointer;place-items:center;gap:5px;grid-auto-flow:row}
.mobile-toggle span{display:block;width:18px;height:2px;border-radius:2px;background:var(--ink);transition:.25s ease}
.site-nav.menu-open .mobile-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.site-nav.menu-open .mobile-toggle span:nth-child(2){opacity:0}
.site-nav.menu-open .mobile-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;border-top:1px solid var(--line);background:#fff}
.mobile-menu .wrap{display:grid;gap:4px;padding:14px 0 20px}
.mobile-menu a{padding:13px 4px;font-weight:800;font-size:17px;border-bottom:1px solid var(--line)}
.mobile-menu a:last-child{border-bottom:0}
.mobile-menu .btn{margin-top:12px;width:100%}
@media(max-width:980px){
  .site-nav .nav-links{display:none}
  .mobile-toggle{display:grid}
  .site-nav.menu-open .mobile-menu{display:block}
  .nav-actions{margin-left:auto;gap:8px}
}
@media(max-width:680px){
  .site-nav .btn{display:inline-flex;height:44px;padding:0 16px;font-size:14px}
  .site-nav.has-menu .nav-actions .btn{display:none}
  .nav-inner{height:64px}
}

/* article cta actions */
.article .cta .cta-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.article .cta .cta-actions a{margin:0}
.article .cta .cta-actions a.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}

/* 404 */
.notfound{min-height:62vh;display:grid;place-items:center;text-align:center;padding:90px 0}
.notfound .code{font-size:clamp(78px,14vw,150px);font-weight:900;letter-spacing:-.06em;line-height:1;color:var(--blue)}
.notfound h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.04em;margin:14px 0 10px}
.notfound p{color:var(--muted);margin:0 0 28px}
.notfound .actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

/* korean typography + small-screen button fit */
body{word-break:keep-all;overflow-wrap:break-word}
.btn{white-space:nowrap}
@media(max-width:400px){
  .hero-actions .btn{padding:0 16px;font-size:14px}
  .hero-actions{gap:8px}
  .cta-buttons .btn{width:100%}
}

/* quiz result buttons on dark card */
.result .btn{color:var(--ink);background:#fff;border-color:#fff}
.result .btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}
.result .cta-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}

/* team cards: single unified surface */
.person,
.person:nth-child(2),
.person:nth-child(3),
.person:nth-child(4){background:#fff;color:var(--ink);border-color:var(--line)}
.person:nth-child(3) .monogram{background:var(--blue);color:#fff}
.person:nth-child(3) .career{color:var(--blue)}
.person:nth-child(3) p{color:var(--muted)}

/* buttons must never inherit a dark section's white text color */
.btn{color:var(--ink)}
.btn.primary{color:#fff}
.btn.dark{color:#fff}
.cta-shell .btn{color:var(--ink)}
.cta-shell .btn.primary{color:#fff}

/* brand logo */
.brand{gap:10px}
.brand-logo{height:30px;width:auto;display:block}
.brand-sub{font-size:15px;font-weight:800;color:var(--muted);letter-spacing:-.02em;padding-left:10px;border-left:1px solid var(--line)}
.nav .brand-logo{height:26px}
@media(max-width:680px){.brand-logo{height:26px}}

/* site footer with company info */
.footer{border-top:1px solid var(--line);padding:44px 0 56px;color:#6b7280;font-size:13.5px;line-height:1.7}
.footer-inner{display:grid;grid-template-columns:1.1fr 1.4fr;gap:34px 48px;align-items:start}
.footer-brand .brand-logo{height:28px;margin-bottom:12px}
.footer-brand p{margin:0;color:#87909c;max-width:320px}
.footer-biz{display:grid;gap:2px}
.footer-biz b{color:var(--ink);font-size:14px}
.footer-biz a{text-decoration:underline;text-underline-offset:3px}
.footer-links{display:flex;flex-wrap:wrap;gap:18px;font-weight:700;color:#4b5563;grid-column:1/-1;padding-top:22px;border-top:1px solid var(--line)}
.footer-links a:hover{color:var(--blue)}
.footer-copy{grid-column:1/-1;color:#98a1ad;font-size:12.5px}
@media(max-width:780px){.footer-inner{grid-template-columns:1fr;gap:26px}}

/* legal pages */
.legal{width:min(820px,calc(100% - 40px));margin:0 auto;padding:70px 0 100px}
.legal h1{font-size:clamp(34px,5vw,48px);letter-spacing:-.045em;margin:0 0 10px}
.legal .updated{color:var(--muted);font-size:14px;margin-bottom:38px}
.legal h2{font-size:22px;margin:42px 0 12px;letter-spacing:-.03em}
.legal h3{font-size:17px;margin:24px 0 8px}
.legal p,.legal li{font-size:15.5px;line-height:1.8;color:#3d4653}
.legal ul,.legal ol{padding-left:22px;margin:0 0 18px}
.legal li{margin-bottom:6px}
.legal table{width:100%;border-collapse:collapse;margin:18px 0;font-size:14.5px}
.legal th,.legal td{border:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
.legal th{background:var(--paper);font-weight:800}
.legal .box{border:1px solid var(--line);border-radius:18px;padding:22px 24px;background:var(--paper);margin:24px 0}
.legal .box p{margin:0}

/* ===== v3.2 fixes ===== */
/* 흰 배경 칩이 어두운 카드 안에서 글자색을 상속해 보이지 않던 문제 */
.pill{color:var(--ink)}
.service-card.primary .pill,.service-card.dark .pill{background:#fff;color:var(--ink);border-color:transparent}
.float-card.dark .pill{background:#fff;color:var(--ink)}

/* 로고 크기 상향 */
.brand-logo{height:40px}
.nav .brand-logo{height:34px}
.footer-brand .brand-logo{height:38px}
.nav-inner{height:84px}
.brand-sub{font-size:16px}
@media(max-width:680px){
  .brand-logo{height:32px}
  .nav .brand-logo{height:28px}
  .nav-inner{height:68px}
  .footer-brand .brand-logo{height:32px}
}

/* 서비스 상태 카드: 실제 SVG 차트로 교체 */
.dashboard-card{padding:22px 24px 20px}
.dash-top{align-items:flex-start}
.dash-top small{font-size:12.5px;color:var(--muted);font-weight:700}
.dash-status{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 13px;font-size:12.5px;font-weight:800;background:#e8f8f1;color:#12855c}
.dash-status i{width:7px;height:7px;border-radius:50%;background:#19a974;box-shadow:0 0 0 4px rgba(25,169,116,.18)}
.dash-graph{margin-top:16px}
.dash-graph svg{display:block;width:100%;height:92px}
.dash-axis{display:flex;justify-content:space-between;margin-top:8px;font-size:11px;color:#9aa3af;font-weight:700;letter-spacing:.02em}
.dash-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.dash-metrics div{display:grid;gap:2px}
.dash-metrics b{font-size:17px;letter-spacing:-.02em}
.dash-metrics span{font-size:11.5px;color:var(--muted)}

/* ===== 문의 폼 / 블로그 보강 ===== */
.contact-shell{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start;padding:70px 0 100px}
.contact-intro h1{font-size:clamp(36px,4.4vw,54px);line-height:1.05;letter-spacing:-.05em;margin:10px 0 18px}
.contact-intro p{color:var(--muted);font-size:16.5px;max-width:420px}
.contact-points{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:10px}
.contact-points li{position:relative;padding-left:26px;font-weight:700;font-size:15px}
.contact-points li:before{content:"";position:absolute;left:0;top:8px;width:12px;height:12px;border-radius:50%;background:var(--blue-soft);border:2px solid var(--blue)}
.contact-direct{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.contact-direct a{display:block;font-size:18px;font-weight:800;color:var(--ink);margin-top:4px}
.contact-form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:36px;box-shadow:var(--shadow)}
.contact-form .field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form .field{display:block;margin-bottom:16px}
.contact-form .field>span{display:block;font-size:13px;font-weight:800;color:#48505d;margin-bottom:7px}
.contact-form .field i{color:var(--blue);font-style:normal}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:13px 15px;border:1px solid var(--line);
  border-radius:14px;background:#fff;font-size:15px}
.contact-form textarea{resize:vertical;line-height:1.7}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid rgba(20,100,255,.32);outline-offset:1px;border-color:var(--blue)}
.contact-form .check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#4b5563;margin:4px 0 22px}
.contact-form .check input{margin-top:4px;width:auto;flex:0 0 auto}
.contact-form .check a{text-decoration:underline;text-underline-offset:3px}
.contact-form .submit{width:100%;height:56px;font-size:16px}
.form-error{background:#fdeaea;color:#b4232a;padding:13px 16px;border-radius:14px;font-size:14px;margin-bottom:20px;font-weight:700}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.done-mark{width:74px;height:74px;border-radius:50%;background:#e6f7f0;color:#12855c;display:grid;place-items:center;margin:0 auto 22px}
.done-mark .icon{width:34px;height:34px}
.notfound p a{text-decoration:underline;text-underline-offset:3px}

.crumbs{display:flex;gap:8px;align-items:center;font-size:13px;color:#8892a0;margin-bottom:18px}
.crumbs a:hover{color:var(--blue)}
.crumbs span{color:#c3cad4}
.insight-more{display:flex;justify-content:center;margin-top:34px}
.blog-empty{padding:80px 0;text-align:center;color:var(--muted)}
.blog-filter .filter{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:999px;
  padding:10px 15px;font-weight:800;font-size:14px;cursor:pointer}
.blog-filter .filter.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.related{margin-top:56px;padding-top:34px;border-top:1px solid var(--line)}
.related h3{font-size:19px;margin:0 0 18px}
.related-grid{display:grid;gap:10px}
.related-grid a{display:grid;gap:4px;border:1px solid var(--line);border-radius:18px;padding:16px 18px;transition:.25s}
.related-grid a:hover{border-color:var(--blue);transform:translateY(-2px)}
.related-grid span{font-size:12px;font-weight:800;color:var(--blue)}
.related-grid b{font-size:16px;letter-spacing:-.02em}

@media(max-width:900px){
  .contact-shell{grid-template-columns:1fr;gap:34px;padding:44px 0 80px}
  .contact-form{padding:26px 22px;border-radius:22px}
  .contact-form .field-row{grid-template-columns:1fr;gap:0}
}

/* 블로그 상세 상단의 장식용 그라디언트 배너 제거 */
.articleHero:after{display:none;content:none}
.articleHero{padding-bottom:0}
.articleGrid{padding-top:34px}
