/* 사례 15 LMS 온라인 강의 플랫폼 새 판 (2026-10-17) — 원본 스타일 가이드 연두 #BED730 + 검정 #1A1A1A.
   10-17 2판: 실제 화면(모니터·브라우저 틀 두 줄·휴대폰 다섯 대) + 글꼴·색 구간, 기능 고리, 주 막대 */
.c15{--lm:#bed730;--lm-d:#7d9212;--lm-l:#f5f9e0;--dk:#1a1a1a;--dk2:#2e2e2e;--ink:#1d2024;--sub:#5f646c;--gr:#f5f6f3;background:#fff;color:var(--ink)}
.c15 svg{flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.c15-in{max-width:1200px;margin:0 auto;padding:0 20px}
.c15 h1,.c15 h2,.c15 h3{margin:0;letter-spacing:-.02em}
.c15-h{font-size:46px;font-weight:800;line-height:1.25;color:var(--ink);word-break:keep-all}
.c15-d{margin:22px 0 0;font-size:17px;line-height:1.85;color:var(--sub);word-break:keep-all}
.c15 main{overflow-x:clip}
.fx-wait .c15-ek,.fx-wait .c15-hero h1,.fx-wait .c15-pb,.fx-wait .c15-prog{visibility:hidden}
.c15-sec{padding:130px 0}

/* 1 첫 화면 */
.c15-hero{position:relative;height:calc(100vh - 66px);min-height:620px;max-height:900px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(60% 60% at 50% 40%,#30353b 0,var(--dk) 70%)}
.c15-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px) 0 0/100% 64px}
.c15-hero-in{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:100%;padding:0 30px;text-align:center}
.c15-pb{display:block;width:96px;height:96px;margin-bottom:24px;color:var(--lm)}
.c15-pb svg{width:96px;height:96px;stroke-width:1.3}
.c15-ek{margin:0 0 16px;font-size:16px;font-weight:700;color:#c9e3a6}
.c15 .c15-hero h1{font-size:clamp(36px,5.8vw,86px);font-weight:800;line-height:1.22;color:#fff;word-break:keep-all}
.c15-hero h1 .ch{color:rgba(255,255,255,.2)}
.c15-prog{position:relative;display:grid;grid-template-columns:auto 1fr;gap:10px 14px;width:min(640px,90%);margin-top:44px;font-family:Poppins,sans-serif;font-size:14px;color:#aeb4bc}
.c15-prog i{grid-column:1/-1;display:block;height:8px;border-radius:4px;background:rgba(255,255,255,.12);--p:0%}
.c15-prog i::after{content:"";display:block;width:var(--p);height:100%;border-radius:4px;background:var(--lm);box-shadow:0 0 14px rgba(190,215,48,.6)}
.c15-prog span{text-align:left}
.c15-prog .r{text-align:right;font-family:inherit}
.c15-prog b{color:var(--lm)}

/* 2 정보 판 */
.c15-info{padding:120px 0 130px;background:#fff}
.c15-brand{display:flex;align-items:center;gap:20px}
.c15-mark{display:grid;place-items:center;width:76px;height:76px;border-radius:20px;background:var(--lm);color:#fff}
.c15-mark svg{width:40px;height:40px;stroke-width:1.8}
.c15 .c15-brand h2{font-size:40px;font-weight:800;word-break:keep-all}
.c15-info .c15-d{max-width:920px}
.c15-kw{display:flex;flex-wrap:wrap;gap:6px 14px;margin:20px 0 0;padding:0;list-style:none;font-size:14.5px;font-weight:600;color:var(--lm-d)}
.c15-kw li::before{content:"#"}
.c15-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:56px 0 0}
.c15-meta div{padding:22px 22px 24px;border-radius:18px;background:var(--lm-l)}
.c15-meta dt{font-size:13.5px;font-weight:700;color:var(--lm-d)}
.c15-meta dd{margin:8px 0 0;font-size:17px;font-weight:800;word-break:keep-all}

/* 3 웹툰 */
.c15-toon{background:var(--gr)}
.c15-toon .c15-in{max-width:1040px}
.c15-toon .c15-h{text-align:center}
.tn{display:grid;gap:22px;margin-top:56px;text-align:left}
.tn-c{position:relative;border:3px solid var(--ink);border-radius:14px;overflow:hidden;background:#fff}
.tn-c img{display:block;width:100%;height:auto}
.tn-cap{display:inline-flex;align-items:center;gap:8px;margin:0;padding:8px 14px 8px 8px;border-radius:8px;background:var(--ink);font-size:15px;font-weight:800;color:#fff}
.tn-cap svg{width:28px;height:28px;padding:6px;box-sizing:border-box;border-radius:6px;background:var(--lm);color:#fff;stroke-width:2}
.tn-cap b{color:#c9e3a6;font-size:13px}
.tn-c>.tn-cap{position:absolute;z-index:2}
.tb{position:absolute;z-index:3;margin:0;padding:13px 17px;border:2.5px solid var(--ink);border-radius:18px;background:#fff;font-size:15.5px;line-height:1.55;font-weight:700;letter-spacing:-.02em;color:var(--ink);word-break:keep-all;box-shadow:3px 3px 0 var(--ink)}
.tb span{display:block;margin-bottom:3px;font-size:12px;font-weight:800;color:var(--sub)}
.tb-p{background:var(--lm-l)}.tb-p span{color:var(--lm-d)}
.tb-d{border-color:var(--lm-d);box-shadow:3px 3px 0 var(--lm)}
.tb::after{content:"";position:absolute;width:16px;height:16px;background:inherit;border:2.5px solid var(--ink);border-width:0 2.5px 2.5px 0}
.tb-d::after{border-color:var(--lm-d)}
.tk-d::after{bottom:-10px;left:var(--tx,50%);margin-left:-8px;transform:rotate(45deg)}
.tk-u::after{top:-10px;left:var(--tx,50%);margin-left:-8px;transform:rotate(-135deg)}
.tk-tall .tn-c{width:600px;max-width:100%;margin:0 auto}

/* 4 기능 고리 */
.c15-chain{padding:120px 0;background:var(--dk);color:#fff}
.c15-chain .c15-h{color:#fff;text-align:center}
.c15-links{--p:1;position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:64px 0 0;padding:0;list-style:none}
.c15-links::before{content:"";position:absolute;left:7%;right:7%;top:36px;height:4px;border-radius:2px;background:repeating-linear-gradient(90deg,var(--lm) 0 18px,transparent 18px 26px);transform-origin:0 50%;transform:scaleX(var(--p))}
.c15-links li{position:relative;display:grid;justify-items:center;gap:6px;text-align:center}
.c15-links svg{width:72px;height:72px;padding:19px;box-sizing:border-box;border-radius:50%;background:var(--dk2);color:var(--lm);box-shadow:0 0 0 4px var(--dk),0 0 0 6px rgba(190,215,48,.5)}
.c15-links li:nth-child(5) svg{background:var(--lm);color:var(--dk)}
.c15-links b{margin-top:8px;font-size:17px}
.c15-links small{font-size:13px;color:#a7adb5;word-break:keep-all}

/* 4 메인 화면 모니터 */
.c15-mon{padding:130px 0 150px;background:linear-gradient(#fff 0 55%,var(--gr) 55%)}
.c15-lb{margin:0 0 14px;font-family:Poppins,sans-serif;font-size:15px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--lm-d)}
.c15-mon .c15-in,.c15-pdv .c15-in,.c15-resp .c15-in,.c15-col .c15-in{text-align:center}
.c15-imac{position:relative;width:min(980px,100%);margin:64px auto 0}
.c15-imac .scr{padding:2.2%;border-radius:22px 22px 0 0;background:#1a1a1a;box-shadow:0 50px 90px -40px rgba(0,0,0,.45)}
.c15-imac .vp{aspect-ratio:16/10;overflow:hidden;border-radius:4px;background:#fff}
.c15-imac img,.c15-phones img,.c15-grid img{display:block;width:100%;height:auto}
.c15-imac .chin{display:block;height:min(56px,6vw);border-radius:0 0 22px 22px;background:linear-gradient(#e9eaec,#cfd1d4)}
.c15-imac .neck{display:block;width:18%;height:min(90px,9vw);margin:0 auto;background:linear-gradient(90deg,#c5c7ca,#e6e7e9 50%,#c5c7ca);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%)}
.c15-imac .foot{display:block;width:30%;height:10px;margin:0 auto;border-radius:3px 3px 8px 8px;background:#cfd1d4}

/* 5 상세 화면 */
.c15-pdv{background:var(--gr);padding-top:40px}
.c15-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;margin:72px 0 0;text-align:left}
.c15-grid .cl:last-child{padding-top:160px}
.c15-grid .bw{margin:0 0 56px;padding-top:30px;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px #e3e5df,0 40px 70px -40px rgba(0,0,0,.35);position:relative}
.c15-grid .bw::before{content:"";position:absolute;left:14px;top:11px;width:9px;height:9px;border-radius:50%;background:#ff6058;box-shadow:15px 0 #ffbd2e,30px 0 #28c840}
.c15-grid .bw.ft img{margin-bottom:-24.7%}
.c15-grid figcaption{position:relative;background:#fff;padding:16px 20px 18px;border-top:1px solid #eceee9;font-size:15.5px;font-weight:800}

/* 6 반응형 휴대폰 */
.c15-resp{padding:130px 0 150px;background:var(--dk);color:#fff;overflow:hidden}
.c15-resp .c15-h{color:#fff}
.c15-resp .c15-lb{color:var(--lm)}
.c15-phones{display:flex;justify-content:center;align-items:flex-end;gap:24px;margin:72px 0 0}
.c15-phones .ph{flex:0 1 220px;margin:0;padding:10px;border-radius:34px;background:#0b0b0c;box-shadow:0 0 0 2px #3a3d42,0 40px 70px -30px rgba(0,0,0,.8)}
.c15-phones .ph:nth-child(2),.c15-phones .ph:nth-child(4){margin-bottom:40px}
.c15-phones .mid{flex-basis:250px;margin-bottom:80px}
.c15-phones .pv{aspect-ratio:9/19.5;overflow:hidden;border-radius:26px;background:#fff}

/* 7 글꼴 */
.c15-font{background:#fff}
.c15-font,.c15-fs,.c15-wt{font-family:"Nanum Gothic",sans-serif}
.c15-font .c15-h{font-family:inherit}
.c15-fs{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin:60px 0 0}
.c15-fs>div{padding:40px 40px 44px;border-radius:20px;background:var(--gr)}
.c15-fs>div:last-child{background:var(--dk);color:#fff}
.c15-fs small{display:block;font-size:14px;font-weight:700;color:var(--lm-d)}
.c15-fs>div:last-child small{color:var(--lm)}
.c15-fs b{display:block;margin:16px 0 0;font-size:64px;font-weight:800;line-height:1.1;letter-spacing:-.02em}
.c15-fs b.big{font-size:60px}
.c15-fs p{margin:18px 0 0;font-size:17px;line-height:1.7;word-break:break-all;color:var(--sub)}
.c15-fs>div:last-child p{color:#a7adb5}
.c15-wt{margin:20px 0 0;padding:0;list-style:none;border-top:2px solid var(--ink)}
.c15-wt li{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid #e5e8e1}
.c15-wt span{font-family:Poppins,sans-serif;font-size:14px;font-weight:700;color:var(--lm-d)}
.c15-wt p{margin:0;font-size:24px;word-break:keep-all}
.c15-wt p.b{font-weight:800}
.c15-wt p.s{font-size:16px;font-weight:700}

/* 8 색 */
.c15-col{padding:130px 0;background:var(--gr)}
.c15-pal{display:grid;grid-template-columns:2fr repeat(7,1fr);gap:10px;height:320px;margin:60px 0 0;padding:0;list-style:none;text-align:left}
.c15-pal li{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:18px 16px;border-radius:16px;background:var(--c);color:var(--ink)}
.c15-pal li.dk{color:#fff}
.c15-pal li.wh{box-shadow:inset 0 0 0 1px #dfe2da}
.c15-pal b{font-family:Poppins,sans-serif;font-size:16px}
.c15-pal small{font-family:Poppins,sans-serif;font-size:13px;opacity:.8}
.c15-pal li:first-child b{font-size:26px}

/* 9 이관 · 전환 막대 */
.c15-mig{background:var(--gr)}
.c15-mig .c15-h{text-align:center}
.c15-bars{position:relative;height:260px;max-width:1000px;margin:56px auto 0}
.c15-bars p{position:absolute;left:var(--s);width:var(--w);display:flex;flex-direction:column;justify-content:center;gap:4px;height:56px;margin:0;padding:0 16px;box-sizing:border-box;border-radius:12px;background:var(--dk);color:#fff;white-space:nowrap;overflow:hidden}
.c15-bars p:nth-child(1){top:0}.c15-bars p:nth-child(2){top:66px;background:#3a3f45}.c15-bars p:nth-child(3){top:132px;background:var(--lm-d)}.c15-bars p:nth-child(4){top:198px;background:var(--lm);color:var(--dk)}
.c15-bars b{font-size:15px}
.c15-bars span{font-size:12.5px;opacity:.85}
.c15-stack{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:36px 0 0;padding:0;list-style:none}
.c15-stack li{display:flex;align-items:center;gap:8px;padding:10px 18px 10px 12px;border-radius:999px;background:#fff;font-size:15px;font-weight:800;box-shadow:inset 0 0 0 1.5px #dfe3d8}
.c15-stack svg{width:20px;height:20px;color:var(--lm-d)}

/* 적합, FAQ, 문의, 관련 */
.c15-fit{background:#fff}
.c15-fit .c15-h{text-align:center}
.c15-fit-list{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:48px 0 0;padding:0}
.c15-fit-list li{padding:26px 20px;border-radius:18px;background:var(--gr);font-size:16px;font-weight:700;line-height:1.55;word-break:keep-all}
.c15-fit-list svg{display:block;width:44px;height:44px;margin-bottom:16px;padding:10px;box-sizing:border-box;border-radius:12px;background:var(--lm);color:#fff}
.c15-faq{background:#fff;padding-top:40px}
.c15-faq .c15-h{text-align:center}
.c15-faq-list{max-width:880px;margin:40px auto 0}
.c15-faq-list h3{margin:36px 0 6px;font-size:14px;font-weight:800;color:var(--lm-d)}
.c15-faq details{border-bottom:1px solid #e5e8e1}
.c15-faq summary{position:relative;list-style:none;cursor:pointer;padding:22px 44px 22px 0;font-size:17.5px;font-weight:700}
.c15-faq summary::-webkit-details-marker{display:none}
.c15-faq summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:400;color:var(--lm-d)}
.c15-faq details[open] summary::after{content:"−"}
.c15-faq details p{margin:0;padding:0 44px 22px 0;font-size:16px;line-height:1.75;color:var(--sub)}
.c15-end{background:var(--dk);text-align:center;padding:112px 0}
.c15-end .c15-h{color:#fff}
.c15-end-act{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:36px}
.c15-btn{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 30px;border-radius:999px;background:var(--lm);color:var(--dk);font-size:16.5px;font-weight:800;text-decoration:none}
.c15-btn-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.c15-rel{padding:96px 0}
.c15-rel h2{font-size:26px}
.c15-rel-in{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}
.c15-rel a{display:block;text-decoration:none;color:var(--ink)}
.c15-rel img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:14px}
.c15-rel span{display:block;margin-top:14px;font-size:17px;font-weight:700}

@media (max-width:1100px){
  .c15-fit-list{grid-template-columns:repeat(3,1fr)}
  .c15-links small{font-size:12px}
}
@media (max-width:860px){
  .c15-h{font-size:27px;line-height:1.3}
  .c15-sec{padding:70px 0}
  .c15-hero{height:calc(100svh - 110px);min-height:520px}
  .c15-pb,.c15-pb svg{width:66px;height:66px}
  .c15-ek{font-size:13px;margin-bottom:12px}
  .c15 .c15-hero h1{font-size:clamp(27px,8vw,40px)}
  .c15-prog{margin-top:30px;font-size:12.5px}
  .c15-info{padding:60px 0 70px}
  .c15-mark{width:54px;height:54px;border-radius:14px}
  .c15-mark svg{width:28px;height:28px}
  .c15 .c15-brand h2{font-size:24px}
  .c15-d{font-size:15.5px}
  .c15-meta{grid-template-columns:1fr 1fr;gap:10px;margin-top:36px}
  .c15-meta div{padding:16px}
  .c15-meta dd{font-size:14.5px}
  .tn{gap:34px;margin-top:36px}
  .tn-c{border-width:2px;border-radius:12px;overflow:visible}
  .tn-c img{border-radius:10px 10px 0 0}
  .tb{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;font-size:14.5px;padding:11px 14px;box-shadow:2px 2px 0 var(--ink)}
  .tb-d{box-shadow:2px 2px 0 var(--lm)}
  .tb::after{display:none}
  .tn-c>.tb{margin:10px}
  .tb-c{margin-right:14%!important}.tb-p{margin-left:14%!important}
  .tn-c>.tn-cap{left:10px!important;top:10px!important;right:auto!important;bottom:auto!important;font-size:13px;padding:6px 10px 6px 6px}
  .tk-tall .tn-c{width:auto}
  .c15-chain{padding:70px 0}
  .c15-links{grid-template-columns:1fr;gap:12px;margin-top:36px;justify-items:start}
  .c15-links::before{left:27px;right:auto;top:20px;bottom:20px;width:4px;height:auto;transform-origin:50% 0;transform:scaleY(var(--p));background:repeating-linear-gradient(180deg,var(--lm) 0 14px,transparent 14px 22px)}
  .c15-links li{grid-template-columns:56px auto;justify-items:start;column-gap:14px;text-align:left}
  .c15-links svg{grid-row:span 2;width:56px;height:56px;padding:15px}
  .c15-links b{margin:0;font-size:16px;align-self:end}
  .c15-links small{align-self:start}
  .c15-pg li{font-size:14px}
  .c15-my-in{grid-template-columns:1fr;gap:36px}
  .c15-bars{height:auto;display:grid;gap:8px;margin-top:36px}
  .c15-bars p{position:static;width:auto;height:54px}
  .c15-stack li{font-size:13.5px}
  .c15-fit-list{grid-template-columns:1fr;gap:10px}
  .c15-fit-list li{display:flex;align-items:center;gap:14px;padding:18px}
  .c15-fit-list svg{margin:0}
  .c15-faq summary{font-size:16px}
  .c15-rel-in{grid-template-columns:1fr}
}

@media (max-width:1100px){
  .c15-pal{grid-template-columns:repeat(4,1fr);height:auto}
  .c15-pal li{height:150px}
  .c15-pal li:first-child{grid-column:span 4}
}
@media (max-width:900px){
  .c15-grid{gap:24px}
  .c15-grid .bw{margin-bottom:28px}
  .c15-grid .cl:last-child{padding-top:80px}
  .c15-phones{gap:12px}
  .c15-phones .ph{padding:6px;border-radius:22px}
  .c15-phones .pv{border-radius:17px}
  .c15-phones .ph:nth-child(1),.c15-phones .ph:nth-child(5){display:none}
  .c15-fs{grid-template-columns:1fr}
}
@media (max-width:640px){
  .c15-mon{padding:90px 0 100px}
  .c15-imac .scr{border-radius:12px 12px 0 0}
  .c15-imac .chin{border-radius:0 0 12px 12px}
  .c15-grid{grid-template-columns:1fr;gap:0;margin-top:48px}
  .c15-grid .cl:last-child{padding-top:0}
  .c15-grid figcaption{font-size:14.5px;padding:12px 16px}
  .c15-resp,.c15-col{padding:90px 0}
  .c15-phones{margin-top:48px;gap:8px}
  .c15-phones .ph:nth-child(2),.c15-phones .ph:nth-child(4){margin-bottom:20px}
  .c15-phones .mid{margin-bottom:40px}
  .c15-fs>div{padding:26px 22px 28px}
  .c15-fs b,.c15-fs b.big{font-size:40px}
  .c15-wt li{grid-template-columns:1fr;gap:6px;padding:18px 0}
  .c15-wt p{font-size:19px}
  .c15-pal{grid-template-columns:repeat(2,1fr)}
  .c15-pal li{height:110px}
  .c15-pal li:first-child,.c15-pal li:last-child{grid-column:span 2}
}
