:root{
      --yellow:#FFD21F;
      --pink:#EC008C;
      --blue:#2B79BD;
      --mint:#55D6D6;
      --green:#35A65A;
      --orange:#FF7A1A;
      --ink:#101828;
      --text:#344054;
      --muted:#667085;
      --line:#E7EEF5;
      --cream:#FFFDF7;
      --soft:#F6FBFF;
      --shadow:0 18px 45px rgba(16,24,40,.08);
      --shadow2:0 10px 25px rgba(16,24,40,.06);
      --radius:28px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;font-family:"Pretendard","Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.68;word-break:keep-all;overflow-x:hidden}
    img{max-width:100%;display:block}
    a{text-decoration:none;color:inherit}
    .wrap{width:min(1180px,92vw);margin:0 auto}
    .section{padding:96px 0;position:relative}
    .section-head{text-align:center;margin-bottom:42px}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:950;letter-spacing:.06em;font-size:.92rem;margin-bottom:12px}
    .eyebrow:before,.eyebrow:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--yellow)}
    .title{margin:0;font-weight:950;line-height:1.15;font-size:clamp(2rem,4.2vw,4.2rem);letter-spacing:-.04em}
    .title .pink{color:var(--pink)} .title .blue{color:var(--blue)} .title .yellow{color:#F3B400}
    .subtitle{max-width:780px;margin:18px auto 0;color:var(--muted);font-size:1.08rem}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;background:var(--yellow);color:#111827;font-weight:950;padding:15px 24px;box-shadow:0 12px 26px rgba(255,210,31,.34);transition:.22s;border:0;cursor:pointer}
    .btn:hover{transform:translateY(-2px);background:var(--pink);color:#fff;box-shadow:0 14px 30px rgba(236,0,140,.22)}
    .btn.secondary{background:#fff;border:2px solid var(--line);box-shadow:none;color:var(--ink)}
    .btn.secondary:hover{border-color:var(--pink);color:var(--pink);background:#fff}
    .highlight{background:linear-gradient(transparent 55%,rgba(255,210,31,.55) 55%)}

    header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(231,238,245,.9)}
    .nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:26px}
    .brand{display:flex;align-items:center;gap:12px;font-weight:950}
    .brand img{width:112px;height:56px;object-fit:contain;object-position:left center}
    .navlinks{display:flex;align-items:center;gap:24px;font-weight:850;font-size:.94rem;color:#344054}
    .navlinks a:hover{color:var(--pink)}
    .nav-actions{display:flex;align-items:center;gap:10px}

    .hero{min-height:760px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 4% 6%,rgba(255,210,31,.35),transparent 18%),radial-gradient(circle at 95% 4%,rgba(85,214,214,.28),transparent 18%),linear-gradient(180deg,#fff 0%,#fffdf7 100%)}
    .hero:before{content:"";position:absolute;left:-120px;bottom:-160px;width:360px;height:360px;border-radius:50%;border:36px solid rgba(85,214,214,.18)}
    .hero:after{content:"";position:absolute;right:-80px;bottom:80px;width:170px;height:170px;border-radius:50%;background:rgba(236,0,140,.08)}
    .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
    .hero-logo{width:190px;height:110px;object-fit:contain;object-position:left center;margin-bottom:22px}
    .hero h1{font-size:clamp(2.7rem,5.4vw,5.8rem);line-height:1.05;margin:0 0 24px;font-weight:950;letter-spacing:-.055em}
    .hero p{font-size:1.18rem;color:#475467;max-width:640px;margin:0 0 28px}
    .hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
    .hero-visual{position:relative}
    .hero-card{background:#fff;border:1px solid var(--line);border-radius:38px;padding:34px;box-shadow:var(--shadow);transform:none;display:flex;align-items:center;justify-content:center;min-height:360px}
    .hero-card img{border-radius:28px;max-height:300px;object-fit:contain}
    .speech{position:absolute;right:8%;top:8%;background:#fff;border:3px solid var(--mint);border-radius:26px;padding:14px 18px;font-weight:950;color:#15918f;box-shadow:var(--shadow2);transform:rotate(-3deg)}
    .chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
    .chip{display:inline-flex;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:850;color:#475467}

    .reason{background:#fff}
    .reason-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}
    .reason-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow2);transition:.22s}
    .reason-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
    .icon{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;font-size:1.7rem;background:#FFF7D6;margin-bottom:18px}
    .reason-card:nth-child(2) .icon{background:#FEE7F5}.reason-card:nth-child(3) .icon{background:#E8F4FF}.reason-card:nth-child(4) .icon{background:#EAF9EF}
    .reason-card h3{margin:0 0 8px;font-size:1.24rem;letter-spacing:-.02em}
    .reason-card p{margin:0;color:var(--muted);font-size:.98rem}

    .split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
    .panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}
    .panel .title{font-size:clamp(1.9rem,3.2vw,3.2rem)}
    .panel p{color:#475467;font-size:1.05rem;margin:18px 0 0}
    .image-frame{background:#fff;border:1px solid var(--line);border-radius:34px;padding:12px;box-shadow:var(--shadow);overflow:hidden}
    .image-frame img{border-radius:24px;width:100%}
    .list{display:grid;gap:12px;margin:24px 0 0;padding:0}
    .list li{list-style:none;background:#F8FAFC;border:1px solid var(--line);border-radius:18px;padding:13px 15px;font-weight:800;color:#344054}
    .list li:before{content:"✓";color:var(--green);font-weight:950;margin-right:8px}
    .tendency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
    .tendency{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow2)}
    .tendency:nth-child(1){border-top:5px solid var(--pink)}.tendency:nth-child(2){border-top:5px solid var(--green)}.tendency:nth-child(3){border-top:5px solid var(--blue)}
    .tendency h3{font-size:1.4rem;margin:0 0 14px}
    .badges{display:flex;flex-wrap:wrap;gap:10px}
    .badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:#F8FAFC;border:1px solid var(--line);font-weight:850;color:#475467;font-size:.94rem}

    .growth{background:linear-gradient(180deg,#F7FCFF 0%,#fff 100%)}
    .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}
    .step{background:#fff;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow2);position:relative;overflow:hidden}
    .step:after{content:"";position:absolute;right:-35px;bottom:-35px;width:120px;height:120px;border-radius:50%;background:rgba(85,214,214,.12)}
    .step-num{width:48px;height:48px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-weight:950;margin-bottom:16px}
    .step h3{font-size:1.48rem;margin:0 0 8px}.step p{margin:0;color:var(--muted)}

    .workbook{background:#fffdf7}
    .curriculum{background:#fff}
    .cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:38px}
    .program-card{background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow2);transition:.22s}
    .program-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
    .program-card .pic{aspect-ratio:1.12/1;background:#F8FAFC;overflow:hidden}
    .program-card .pic img{width:100%;height:100%;object-fit:cover;transition:.3s}
    .program-card:hover .pic img{transform:scale(1.04)}
    .program-card .body{padding:20px 20px 22px}
    .program-card .num{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;background:#FFF7D6;color:#B45309;font-weight:950;font-size:.86rem;margin-bottom:10px}
    .program-card h3{font-size:1.18rem;margin:0 0 8px;letter-spacing:-.02em}
    .program-card p{margin:0;color:#667085;font-size:.94rem;line-height:1.55}

    .benefits{background:linear-gradient(180deg,#fff 0%,#F8FCFF 100%)}
    .benefit-poster{margin-top:36px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);background:#fff}
    .benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
    .benefit{background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:var(--shadow2)}
    .benefit .n{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:950;margin-bottom:15px}
    .benefit:nth-child(1) .n,.benefit:nth-child(5) .n{background:var(--orange)}.benefit:nth-child(3) .n,.benefit:nth-child(8) .n{background:var(--pink)}.benefit:nth-child(6) .n,.benefit:nth-child(7) .n{background:var(--green)}
    .benefit h3{font-size:1.18rem;margin:0 0 8px}.benefit p{font-size:.95rem;color:#667085;margin:0}

    .system{background:#fff}
    .system-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:34px}
    .system-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow2)}
    .system-card h3{font-size:1.14rem;margin:10px 0}.system-card ul{margin:0;padding-left:18px;color:#667085;font-size:.94rem}

    .community{background:linear-gradient(135deg,#FFF9D9 0%,#EFFFFF 100%)}
    .community-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}
    .flow{background:#fff;border:1px solid var(--line);border-radius:28px;text-align:center;padding:28px 22px;box-shadow:var(--shadow2)}
    .flow .flow-ico{font-size:2rem}.flow strong{display:block;font-size:1.18rem;margin:8px 0 4px}.flow span{color:#667085;font-size:.95rem}

    .faq{background:#fff}
    .faq-list{max-width:900px;margin:34px auto 0;display:grid;gap:14px}
    .faq-item{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 10px 22px rgba(16,24,40,.04)}
    .faq-q{width:100%;border:0;background:#fff;padding:22px 24px;text-align:left;font-size:1.03rem;font-weight:950;display:flex;justify-content:space-between;align-items:center;cursor:pointer;color:var(--ink)}
    .faq-a{display:none;padding:0 24px 24px;color:#667085}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span{transform:rotate(45deg)}

    .contact{background:#07111F;color:#fff;padding:86px 0 70px}
    .contact .eyebrow{color:var(--yellow)}.contact .subtitle{color:#CBD5E1}
    .contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
    .contact-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:30px;padding:30px;box-shadow:0 18px 42px rgba(0,0,0,.16)}
    .phone-label{color:#CBD5E1;font-weight:850}.phone{font-size:clamp(1.7rem,3vw,2.8rem);font-weight:950;color:var(--yellow);line-height:1.2}
    footer{background:#07111F;color:#CBD5E1;border-top:1px solid rgba(255,255,255,.10);padding:26px 0;font-size:.92rem}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
    .fixed-call{position:fixed;right:18px;bottom:18px;z-index:80;background:var(--pink);color:#fff;border-radius:999px;padding:14px 18px;font-weight:950;box-shadow:0 18px 40px rgba(236,0,140,.3)}
    .reveal{opacity:0;transform:translateY(22px);transition:.65s ease}.reveal.show{opacity:1;transform:none}

    @media(max-width:1020px){.navlinks{display:none}.hero{min-height:auto;padding:70px 0}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.reason-grid,.cards-grid,.benefit-grid{grid-template-columns:repeat(2,1fr)}.system-grid{grid-template-columns:repeat(2,1fr)}.community-flow,.steps,.tendency-grid{grid-template-columns:1fr 1fr}.hero-card{transform:none}.speech{position:static;margin:14px 0 0;display:inline-flex}}
    @media(max-width:640px){.section{padding:62px 0}.brand img{width:92px}.nav{height:66px}.nav-actions .secondary{display:none}.hero h1{font-size:2.55rem}.reason-grid,.cards-grid,.benefit-grid,.system-grid,.community-flow,.steps,.tendency-grid{grid-template-columns:1fr}.panel{padding:24px}.hero-logo{width:150px}.fixed-call{left:16px;right:16px;text-align:center}.contact-card{padding:24px}}
