@font-face{font-family:SCDream;src:url(SCDream4.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:SCDream;src:url(SCDream5.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:SCDream;src:url(SCDream6.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:SCDream;src:url(SCDream7.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:SCDream;src:url(SCDream8.woff2) format("woff2");font-weight:800;font-display:swap}

:root{
  --brand:#1d3fbb;
  --brand-hover:#16329a;
  --brand-soft:#eaf0ff;
  --sky:#7fb0ff;
  --ink:#000;
  --text:#1a1a1a;
  --muted:#4f5b68;
  --muted-dark:rgba(255,255,255,.8);
  --line:#e4e6eb;
  --fs-sec:50px;
  --fs-card:26px;
  --fs-body:17px;
  --fs-label:16px;
  --bg:#f4f5f7;
  --r-xl:32px;
  --r-l:28px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font-family:SCDream,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-weight:400;line-height:1.6;word-break:keep-all}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
.wrap{width:min(1200px,100% - 32px);margin-inline:auto}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid rgba(0,0,0,.06)}
.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.brand img{width:36px;height:36px}
.gnb{display:flex;gap:36px;font-size:17px;font-weight:500;color:#333}
.gnb a{padding:10px 0;transition:color .2s}
.gnb a:hover{color:var(--brand)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:58px;padding:0 32px;border-radius:999px;font-size:18px;font-weight:600;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s}
.btn svg{width:18px;height:18px}
.btn-sm{height:44px;padding:0 22px;font-size:16px}
.btn-dark{background:#000;color:#fff}
.btn-dark:hover{background:#2b2b2b}
.btn-white{background:#fff;color:#000}
.btn-white:hover{background:#e6ecfa}
.btn-ghost{border-color:rgba(255,255,255,.45);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1)}

.hero{padding-top:16px}
.hero-card{position:relative;overflow:hidden;border-radius:var(--r-xl);color:#fff;background:radial-gradient(90% 120% at 82% 18%,#4373ff 0%,#1d3fbb 32%,#0b1a5c 64%,#040818 100%);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:24px;padding:48px 56px 112px}
.hero-copy{position:relative;z-index:1}
.hero-badge{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-size:var(--fs-label);font-weight:600}
.hero-badge i{width:7px;height:7px;border-radius:50%;background:var(--sky)}
.hero h1{font-size:clamp(58px,6vw,77px);line-height:1.16;font-weight:800;letter-spacing:-.05em;margin:22px 0 20px}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,#b4d0ff,#6f9bff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-desc{font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted-dark);max-width:520px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:28px;font-size:var(--fs-label);font-weight:600;color:var(--muted-dark)}
.hero-facts span{display:inline-flex;align-items:center;gap:6px}
.hero-facts svg{width:18px;height:18px;color:var(--sky)}

.hero-visual{position:relative;height:500px;display:flex;align-items:center;justify-content:center}
.glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(79,139,255,.5),rgba(79,139,255,0) 65%)}
.ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14)}
.ring-1{width:420px;height:420px}
.ring-2{width:600px;height:600px}

.banner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:16px}
.banner-frame{position:relative;width:360px;aspect-ratio:401/500;border-radius:24px;overflow:hidden;background:#8a9aa8;box-shadow:0 40px 80px rgba(0,0,0,.45)}
.banner-frame img{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .6s ease}
.banner-frame img.is-active{opacity:1}
.banner-dots{display:flex;gap:2px}
.banner-dots button{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;background:none;cursor:pointer;transition:width .3s}
.banner-dots button::before{content:"";width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.4);transition:width .3s,background .3s}
.banner-dots button.is-active{width:36px}
.banner-dots button.is-active::before{width:24px;background:#fff}
.banner-dots button:focus-visible{outline:2px solid #8fb0ff;outline-offset:2px;border-radius:999px}

.quick{position:relative;z-index:2;margin-top:-80px}
.quick-card{width:min(1100px,100%);margin-inline:auto;background:#fff;border-radius:var(--r-l);box-shadow:0 24px 60px rgba(10,20,60,.12),0 2px 6px rgba(10,20,60,.06);padding:32px 36px;display:grid;grid-template-columns:270px 1fr;gap:32px;align-items:center}
.quick-head .eyebrow{margin-bottom:8px}
.quick-head h2{font-size:var(--fs-card);line-height:1.3;font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.quick-head p{margin-top:8px;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted)}

.crm-mobile{display:none}

.section{padding:48px 0}
.section-gray{background:var(--bg)}
.eyebrow{display:block;font-size:var(--fs-label);font-weight:600;color:var(--brand);letter-spacing:.02em;margin-bottom:12px}
.sec-head{margin-bottom:42px}
.sec-head h2{font-size:var(--fs-sec);line-height:1.2;font-weight:800;letter-spacing:-.06em;color:var(--ink)}
.sec-head p{margin-top:12px;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted)}
.sec-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}

.bento{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:24px}
.tile{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:250px;padding:40px;border-radius:var(--r-l);background:#fff}
.tile-tag{align-self:flex-start;display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:var(--fs-label);font-weight:600}
.tile h3{margin-top:18px;font-size:var(--fs-card);line-height:1.3;font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.tile p{margin-top:12px;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted)}
.tile p strong{font-weight:700;color:var(--ink)}
.tile-a{grid-row:1 / span 2;min-height:540px}
.tile-a,.tile-dark{background:linear-gradient(160deg,#18298f 0%,#0a1240 72%);color:#fff}
.tile-a .tile-tag,.tile-dark .tile-tag{background:rgba(255,255,255,.14);color:#fff}
.tile-a h3,.tile-dark h3{color:#fff}
.tile-a p,.tile-dark p{color:var(--muted-dark)}
.tile-dark p strong{color:#fff}
.tile-art{margin-top:auto;padding-top:28px}
.tile-art svg{width:100%;max-width:340px;margin-inline:auto}
.tile-b{grid-column:2 / span 2}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:24px}
.chips span{display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:999px;background:var(--bg);font-size:var(--fs-label);font-weight:600;color:#222}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0;list-style:none}
.step{padding:40px;border-radius:var(--r-l);background:var(--bg)}
.step-ico{display:grid;place-items:center;width:56px;height:56px;margin:18px 0 24px;border-radius:18px;background:#fff;color:var(--brand);box-shadow:0 6px 16px rgba(20,40,120,.08)}
.step-ico svg{width:26px;height:26px}
.step h3{font-size:var(--fs-card);line-height:1.3;font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.step p{margin-top:12px;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted)}
.review-head{display:flex;align-items:center;gap:16px}
.review-head .step-ico{margin:0}
.review p{margin-top:18px}

.duo{display:grid;grid-template-columns:1fr 1fr;gap:24px}

.split{display:grid;grid-template-columns:380px 1fr;gap:56px;align-items:start}
.split .sec-head{margin-bottom:0}
.spec{margin:0;padding:8px 40px;border-radius:var(--r-l);background:#fff}
.spec-row{display:grid;grid-template-columns:170px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}
.spec-row:last-child{border-bottom:0}
.spec-row dt{font-size:var(--fs-body);font-weight:700;color:var(--ink)}
.spec-row dd{margin:0;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted)}
.spec-row dd strong{font-weight:700;color:var(--brand)}
.spec-note{margin-top:16px;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted)}
.section:not(.section-gray) .spec{background:var(--bg)}

.apply{position:relative;overflow:hidden;padding:55px 0;background:#000;color:#fff}
.apply::before{content:"";position:absolute;left:50%;top:-560px;width:900px;height:900px;margin-left:-450px;border-radius:50%;background:radial-gradient(circle,rgba(45,95,255,.45),rgba(45,95,255,0) 62%)}
.apply-inner{position:relative;text-align:center}
.apply .eyebrow{color:var(--sky)}
.apply h2{font-size:var(--fs-sec);line-height:1.2;font-weight:800;letter-spacing:-.06em}
.apply .lead{margin-top:14px;font-size:var(--fs-body);line-height:1.7;letter-spacing:-.02em;color:var(--muted-dark)}
.apply-card{max-width:960px;margin:32px auto 0;padding:36px;border-radius:var(--r-l);background:#fff;color:var(--text);text-align:left}
.apply-card.crm-mobile{max-width:460px}

.form-skin .crm-wrap{border:0;padding:0;background:transparent;border-radius:0}
.form-skin .crm-wrap input[type=text],.form-skin .crm-wrap input[type=tel],.form-skin .crm-wrap select{border:1.5px solid #dfe3ea;border-radius:14px;background-color:#f7f8fa}
.form-skin .crm-wrap input:focus,.form-skin .crm-wrap select:focus{border-color:var(--brand);background-color:#fff;box-shadow:0 0 0 4px rgba(29,63,187,.12)}
.form-skin .crm-wrap .crm-sub{border-radius:999px;background:var(--brand)}
.form-skin .crm-wrap .crm-sub:hover{background:var(--brand-hover)}
.form-skin .crm-wrap .crm-ag input[type=checkbox]{accent-color:var(--brand)}
.form-skin .crm-wrap .crm-pb{color:var(--brand)}

.site-footer{padding:30px 0 36px;background:var(--bg);color:#4f5b68}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px;margin-bottom:12px;border-bottom:1px solid #dfe2e8}
.footer-top .brand{font-size:20px}
.footer-top .brand img{width:30px;height:30px}
.to-top{display:inline-flex;align-items:center;height:42px;padding:0 20px;border-radius:999px;background:#fff;font-size:16px;font-weight:500;color:#333}
.legal p{margin-top:10px;font-size:18px;line-height:1.7;letter-spacing:-.03em}
.legal .warn{color:#d0021b;font-weight:600}
.legal a{color:var(--brand);text-decoration:underline}

.m-cta{display:none}

a:focus-visible{outline:3px solid #8fb0ff;outline-offset:3px;border-radius:8px}

@media (max-width:1100px){
  .hero-card{padding:48px 44px 112px}
  .quick-card{grid-template-columns:1fr;gap:20px}
  .split{grid-template-columns:1fr;gap:36px}
}

@media (max-width:1023px){
  :root{--fs-sec:44px;--fs-card:24px}
  .hero-card{grid-template-columns:1fr;text-align:center;padding:48px 36px 0;gap:0}
  .hero-desc{margin-inline:auto}
  .hero-actions,.hero-facts{justify-content:center}
  .hero-visual{height:auto;margin-top:36px;padding-bottom:88px;overflow:hidden}
  .banner-frame{width:340px}
  .quick{margin-top:-64px}
  .bento{grid-template-columns:1fr 1fr;gap:20px}
  .tile-a{grid-row:auto;grid-column:1 / -1;min-height:0}
  .tile-a .tile-art svg{max-width:300px}
  .tile-b{grid-column:1 / -1}
  .tile{padding:32px 28px}
  .steps{grid-template-columns:1fr;gap:16px}
  .step{padding:30px 28px 32px}
  .sec-head-row{display:block}
  .quick-card,.apply-card{padding:28px 24px}
  .form-skin .crm-s2 input[type=text],.form-skin .crm-s2 input[type=tel],.form-skin .crm-s2 select{font-size:15px;padding-left:12px}
}

@media (max-width:900px){
  .gnb{display:none}
}

@media (max-width:767px){
  :root{--fs-sec:40px;--fs-body:16px}
  .wrap{width:calc(100% - 24px)}
  .header-inner{height:64px}
  .brand{font-size:20px}
  .brand img{width:30px;height:30px}
  .btn-sm{height:40px;padding:0 18px;font-size:15px}
  .gnb{display:none}
  html{scroll-padding-top:76px}

  .hero{padding-top:10px}
  .hero-card{border-radius:var(--r-l);padding:36px 18px 0}
  .hero-badge{height:36px;padding:0 14px}
  .hero h1{font-size:40px;line-height:1.2;margin:16px 0 14px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:24px}
  .hero-actions .btn{height:54px;padding:0 10px;font-size:17px}
  .hero-facts{gap:6px 14px;margin-top:20px}
  .hero-visual{margin-top:28px;padding-bottom:72px}
  .banner{width:100%}
  .banner-frame{width:min(300px,100%);border-radius:20px}
  .ring-2{display:none}

  .quick{margin-top:-48px}
  .quick-card{padding:26px 18px;border-radius:24px}
  .quick-head{text-align:center}
  .crm-desktop{display:none}
  .crm-mobile{display:block}
  .quick-card.crm-mobile{display:grid}

  .section{padding:44px 0}
  .sec-head{margin-bottom:28px;text-align:center}
  .sec-head-row{display:block}
  .sec-head p{margin-top:10px}
  .sec-head p br{display:none}
  .eyebrow{margin-bottom:8px}

  .bento{grid-template-columns:1fr;gap:16px}
  .tile{min-height:0;padding:30px 24px;border-radius:24px;text-align:center}
  .tile-tag{align-self:center}
  .chips{justify-content:center}
  .chips span{height:40px;padding:0 16px}

  .steps{grid-template-columns:1fr;gap:16px}
  .step{padding:30px 24px;border-radius:24px;text-align:center}
  .step-ico{width:50px;height:50px;margin:14px 0 18px;border-radius:16px}
  .review-head{justify-content:center;gap:14px}
  .review p{margin-top:16px}
  .duo{grid-template-columns:1fr;gap:16px}

  .spec{padding:4px 22px;border-radius:24px}
  .spec-row{grid-template-columns:1fr;gap:4px;padding:16px 0;text-align:center}
  .spec-note{text-align:center}

  .apply{padding:48px 0}
  .apply-card{margin-top:26px;padding:24px 18px;border-radius:24px}

  .site-footer{padding:22px 0 104px}
  .footer-top{flex-direction:column;gap:12px;padding-bottom:16px}
  .legal{text-align:center}
  .legal p{font-size:15px;line-height:25px}

  .m-cta{display:flex;align-items:center;justify-content:center;gap:8px;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;height:58px;border-radius:999px;background:var(--brand);color:#fff;font-size:18px;font-weight:700;box-shadow:0 12px 28px rgba(29,63,187,.35)}
  .m-cta svg{width:20px;height:20px}
}

@media (max-width:374px){
  .wrap{width:calc(100% - 20px)}
  :root{--fs-sec:34px}
  .hero h1{font-size:35px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn,.gnb a{transition:none}
  .banner-frame img,.banner-dots button,.banner-dots button::before{transition:none}
}
