:root{
--nv:#0F1E2D;
--nv2:#1A2A3A;
--bl:#2A9DF4;
--bl2:#00e2ff;
--rd:#E03131;
--rd2:#ff00ff;
--gd:#D4A03C;
--gd2:#ff0051;
--bg:#f6f7ff;
--bg2:#bbc3ff;
--tx:#1A1A2E;
--tx2:#5A5A72;
--ft:'Pretendard',sans-serif;
--hd:'SBAggro',sans-serif;
--nm:'Lato',sans-serif;
--mx:1160px;
--px:clamp(15px,4vw,50px)
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;word-break:keep-all}
html{scroll-behavior:smooth}
body{font-family:var(--ft);color:var(--tx);overflow-x:hidden;-webkit-font-smoothing:antialiased}
#certified_wrap{background:var(--bg);}

.pc { display:inline}
.mo { display:none}
@media (max-width: 480px){
  .pc { display:none}
  .mo { display:inline}
}

.blind{position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0);}
#ft{margin-top:0;}
.fix_le{
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);

  transition:
    opacity .7s ease,
    transform .7s ease,
    visibility .7s;
}

.fix_le.show{
  opacity:1;
  visibility:visible;
  transform:none;
}
.faq{background:#dae0ff;padding:2em;text-align:center;word-break:keep-all;}
.faqall{}
.faqbox{max-width:650px;}
.faq h2 {font-family:var(--hd);font-size:clamp(24px, 4vw, 35px);font-weight:900;line-height:1.35;color:var(--tx);word-break:keep-all;overflow:hidden;}
.faq h3{font-family: var(--hd);font-size: clamp(20px, 3vw, 27px); max-width:1000px;margin:auto;}
.faq h3:before{content:"Q.";font-size:1.2em;color:#2d56d266;}
.faq p{margin:10px auto 1.5em;font-size: clamp(16px, 2vw, 18px);padding:25px;background:#fff;border-radius:20px;text-align:left}
.faq p:before{content:"A.";}
@media (min-width:640px){
    .faqall{display:grid;grid-template-columns:repeat(2, 1fr);gap:20px;max-width:1000px;margin:auto;}
    .faqbox{max-width:none;}
    .faq h2{margin-bottom:20px;}
    .faq h3{max-width:400px;}
    .faq h3:before{font-size:1.3em;}
}

@media (min-width:1080px){
    .faqall{grid-template-columns:repeat(3, 1fr);gap:15px;max-width:1200px;align-items:start;}
    .faqbox{display:flex;flex-direction:column;}
	.faq h3{display: flex;height: 60px;align-items: center;text-align: left;padding-right:10px;		}
	.faq h3:before{ font-size: 45px;margin-right: 10px;}
    .faq p{flex: none;padding: 20px;height: 120px;font-size: 17px;border-radius: 10px;}
}

/* HERO — "1위는 우리가 정하는 게 아닙니다" */
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:#0a144f}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 25% 70%,rgba(42,157,244,.06),transparent),radial-gradient(ellipse 35% 35% at 75% 25%,rgba(224,49,49,.04),transparent)}
.hero::after{content:'';position:absolute;inset:0;opacity:.02;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hi{position:relative;z-index:2;max-width:var(--mx);margin:0 auto;padding: 50px 0 0px;width:100%;max-width:1200px;}
@media (max-width:1028px){.hi{  padding: 30px 10px 25px;}}
/* Small context line */
.hi-ctx{font-size:clamp(15px,1.3vw,30px);color:rgba(255,255,255,.6);font-weight:500;margin-bottom:20px;opacity:0}

/* Big title */
.hi-wrap{overflow:hidden;margin-bottom:4px}
.hi-line{display:flex;flex-wrap:wrap;overflow:hidden;font-family:var(--hd);line-height:1.08;word-break:keep-all}
.hi-line .ch{display:inline-block;transform:translateY(120%);opacity:0;will-change:transform}
.hi-l1{font-size:clamp(32px,6.5vw,70px);font-weight:900;color:rgba(255,255,255,.85)}
.hi-l2{font-size:clamp(40px,9vw,100px);font-weight:900;color:#fff;}
.hi-l2 .em{color:var(--rd2);font-size:1.16em}

/* Subtext */
.hi-sub{margin-top:10px;opacity:0;max-width:600px}
.hi-sub p{font-size:clamp(17px,1.7vw,23px);color:rgba(255,255,255,.5);line-height:1.3;word-break:keep-all}
.hi-sub strong{color:rgba(255,255,255,.8);font-weight:700}

/* Proof badges */
.hi-proof{display:flex;    align-items: center;gap:8px;flex-wrap:wrap;margin-top:28px;opacity:0}
.proof_le{color:#fff;font-weight:bold;font-size:1.5rem;font-family: var(--hd);}
.proof{padding:10px 20px;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.proof-area{font-size:20px;font-weight:800;color:var(--bl2);display:block}
.proof-detail{font-size:clamp(20px,2vw,27px);color:rgba(255,255,255,.4);font-weight:500}
.proof-detail b{color:#fff;}
/* Stats */
.hi-stats{display:flex;gap:clamp(35px,3.5vw,48px);margin-top:32px;opacity:0}
.st-n{font-family:var(--nm);font-size:clamp(30px,4.5vw,48px);font-weight:900;color:var(--bl2);line-height:1}
.st-l{font-size:clamp(12px,1vw,20px);color:rgba(255,255,255,.6);margin-top:4px;font-weight:500}
@media(max-width:640px){.hi-stats{flex-wrap:wrap;gap:20px}.hi-stats>div{width:calc(50% - 10px)}}



/**/
.certifi_bnn{display:block;background:#0a144f;padding:30px 15px 25px;max-width:1160px;margin:30px auto 0;border-radius:10px;}

.certifi_bnn:hover{background:#000;}
.certifi_bnn:hover .tx3{border-color:#00ffff;color:#00ffff;}
.ctfbn{display:flex;align-items:center;justify-content:center;gap:10px;position:relative;}
.ctfbn div{white-space:nowrap;font-family:'SBAggro',sans-serif;font-weight:bold;line-height:1;}
.ctfbn .tx1{color:#ebeaef;font-size:30px;}
.ctfbn .tx2{color:#fff;font-size:45px;}
.ctfbn .tx3{color:#fff;font-size:18px;margin-left:5px;border-radius:50px;border:1px solid #fff;display:flex;align-items:center;font-weight:400;padding:5px 9px 1px;}
.ctfbn .skyblue{color:#00ffff;}

@media (max-width:945px){   
.certifi_bnn{padding:20px 20px 15px;width: 100%;display: flex;}
.ctfbn{flex-direction:column;align-items:flex-start;gap:4px;padding-right:20px;width:100%;}
.ctfbn .tx1{font-size:20px;}
.ctfbn .tx2{font-size:35px;letter-spacing:-0.05em;}
.ctfbn .tx3{position:absolute;right:0px;top:50%;transform:translateY(-50%);padding: 3px 5px;}
}

@media (max-width:680px){
.ctfbn .tx1{font-size:15px;}
.ctfbn .tx2{font-size:21px;letter-spacing:-0.05em;}
.ctfbn .tx3{font-size:12px;}
.ctfbn .tx3 .momo{display:none}

}
/**/


/* ===== MARQUEE ===== */
.hero-mq{position:relative;z-index:2;margin-top:clamp(10px,2vw,56px);padding-bottom:clamp(32px,4vw,48px)}
.mq-lbl{gap:3px;margin-bottom:clamp(14px,1.5vw,18px);font-size:clamp(18px,1.1vw,28px);color:rgba(255,255,255,.8);font-weight:500;flex-wrap:wrap;text-align:center;padding:0 var(--px)}
.mq-lbl i{font-style:normal;color:#fff;font-weight:700}
.mq-lbl b{font-family:var(--nm);font-size:clamp(22px,1.8vw,30px);color:var(--gd2);font-weight:900;margin:0 2px}
.mr{position:relative;z-index:2}
.mr+.mr{margin-top:8px}
.mt{display:flex;width:max-content;gap:8px;animation:mqs var(--d,45s) linear infinite}
.mt:hover{animation-play-state:paused}
.mr:nth-child(even) .mt{animation-direction:reverse}
@keyframes mqs{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.mr::before,.mr::after{content:'';position:absolute;top:0;bottom:0;width:clamp(24px,5vw,80px);z-index:3;pointer-events:none}
.mr::before{left:0;background:linear-gradient(90deg,var(--nv),transparent)}
.mr::after{right:0;background:linear-gradient(-90deg,var(--nv),transparent)}
.ms{flex:0 0 auto;width:clamp(130px,15vw,240px);border-radius:9px;overflow:hidden;cursor:pointer;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.04);transition:all .3s}
.ms:hover{border-color:rgba(94,179,255,.2);transform:scale(1.04);z-index:4}
.ms img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.ms-i{padding:5px 8px;display:flex;justify-content:space-between;gap:4px;background:rgba(0,0,0,.3);backdrop-filter:blur(3px)}
.ms-s{font-size:16px;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ms-l{font-size:18px;color:rgba(255,255,255,.6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:640px){.mr+.mr{margin-top:5px}.mt{gap:5px}.ms{width:110px;border-radius:7px}.ms-i{padding:3px 5px}.ms-s{font-size:8px}.ms-l{font-size:7px}}

/* ===== "왜 어학원이 선택했을까?" ===== */
.why{padding:30px 15px 20px;text-align:center}
.why-ey{font-size:15px;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--bl);margin-bottom:12px}
.why h2{font-family:var(--hd);font-size:clamp(30px,4vw,50px);font-weight:900;color:var(--tx);margin-bottom:clamp(5px,2vw,10px);word-break:keep-all;overflow:hidden}
.why h2 .ch{display:inline-block;transform:translateY(110%);opacity:0}
.why-p{font-size:clamp(17px,1.5vw,20px);color:var(--tx2);line-height:1.3;margin:0 auto clamp(20px,4vw,30px);word-break:keep-all}
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;max-width:var(--mx);margin:0 auto}
.why-card{background:#fff;border-radius:14px;padding:clamp(24px,3vw,32px);text-align:left;box-shadow:0 1px 6px rgba(0,0,0,.05);transition:all .3s}
.why-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,.1)}
.why-card-icon{font-size:28px;margin-bottom:12px}
.why-card h3{font-family:var(--hd);font-size:clamp(20px,1.6vw,30px);font-weight:800;color:var(--tx);margin-bottom:8px}
.why-card .bic{color:#f00;font-size:1.3em;}
.why-card p{font-size:clamp(17px,1.3vw,22px);color:var(--tx2);line-height:1.6}

/* ===== SCHOOL SECTION ===== */
.sec-hd{text-align:center;padding:20px 10px}
.sec-hd .ey{font-size:11px;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--bl);margin-bottom:10px}
.sec-hd h2{font-family:var(--hd);font-size:clamp(24px,4vw,40px);font-weight:900;line-height:1.35;color:var(--tx);word-break:keep-all;overflow:hidden}
.sec-hd h2 .ch{display:inline-block;transform:translateY(110%);opacity:0}

.tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:0 var(--px) 36px;max-width:var(--mx);margin:0 auto}
.tab{border:none;background:var(--bg2);border-radius:8px;padding:10px 24px;font-size:1.2rem;font-weight:700;color:var(--tx2);cursor:pointer;transition:all .2s}
.tab:hover{background:#c397ff}
.tab.on{background:var(--nv);color:#fff}

/* SCHOOL CARDS */
.schools{max-width:var(--mx);margin:0 auto;padding:0 var(--px) 64px}
article.sc{border-radius:16px;margin-bottom:clamp(24px,3.5vw,36px);overflow:hidden;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:box-shadow .35s,transform .35s}
article.sc:hover{box-shadow:0 12px 44px rgba(0,0,0,.12);transform:translateY(-3px)}

.sc-ban{position:relative;height:clamp(250px,22vw,350px);overflow:hidden}
.sc-ban img{width:100%;height:110%;object-fit:cover;display:block;transition:transform 6s ease}
article.sc:hover .sc-ban img{transform:scale(1.05)}
.sc-ban .no-i{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a2a42,#0d1b30);color:rgba(255,255,255,.2);font-size:14px;font-weight:700}
.sc-ov{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,30,45,.88) 0%,rgba(15,30,45,.35) 55%,rgba(15,30,45,.1) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(16px,2vw,24px) clamp(5px,2.5vw,20px)}
.sc-nm{font-family:var(--hd);font-size:clamp(24px,2.2vw,40px);font-weight:900;color:#fff;margin-bottom:4px;text-shadow: 0 0 5px #000;}
.sc-meta{display:flex;align-items:center;gap:5px;margin-bottom:6px}
.sc-tg{white-space:nowrap;font-size:clamp(13px,1vw,17px);font-weight:600;color:#6679ff;background:rgba(0,0,0,.61);border:1px solid rgba(42,157,244,.1);padding:2px 9px;border-radius:4px}
.sc-rk{font-size:clamp(15px,1.1vw,17px);font-weight:800;color:#fff;padding:4px 5px;border-radius:5px;background:#3953e9;}
.sc-rk.s2{background:linear-gradient(135deg,#7a7a90,#a0a0b4);box-shadow:0 2px 8px rgba(120,120,140,.2)}
.sc-er{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sc-en{display:inline-flex;align-items:center;gap:3px;line-height:1;padding:3px 0px;border-radius:4px;font-size:clamp(16px,1.1vw,24px);font-weight:800;color:#9ebaff;/*background:rgba(212,160,60,.1);border:1px solid rgba(212,160,60,.12)*/}
.sc-en img{width:14px;height:14px}
.sc-seo{font-size:clamp(12px,1vw,15px);font-weight:700;color:#ff355c;text-shadow:0 0 10px #000;white-space:nowrap;}

.sc-bd{padding:clamp(15px,2vw,22px) clamp(13px,2.5vw,28px);display:flex;flex-direction:column;gap:10px}
.ct{display:flex;gap:3px;flex-wrap:wrap}
.ct button{font-size:11px;font-weight:700;padding:3px 12px;border-radius:14px;border:1.5px solid #ddd;background:#fff;color:#777;cursor:pointer;transition:all .2s}
.ct button.on{border-color:var(--bl);background:var(--bl);color:#fff}
.sc-desc{font-size:clamp(16px,1.35vw,18px);color:var(--tx2);line-height:1.5;word-break:keep-all}

.sc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}
@media(max-width:860px){.sc-row{grid-template-columns:1fr}}
.sc-row.nq{grid-template-columns:1fr}.sc-row.nc{grid-template-columns:1fr}
.sc-q{padding:clamp(14px,1.6vw,18px);border-radius:5px;background:linear-gradient(135deg,#f0f5ff,#e8eefb);border-left:3px solid var(--bl);display:flex;flex-direction:column;justify-content:center}
.sc-ql{font-size:.9em;font-weight:700;color:var(--bl);margin-bottom:4px;letter-spacing:.04em}
.sc-qt{font-size:clamp(17px,1.25vw,22px);font-weight:600;color:var(--nv);line-height:1.65;word-break:keep-all}
.sc-qb{text-align:right;margin-top:5px;font-size:13px;font-weight:400;color:var(--bl)}

/* Cert slider */
.cw{position:relative}
.cs{display:flex;gap:8px;overflow:hidden}
.ci{flex:0 0 calc(50% - 4px);border-radius:8px;overflow:hidden;cursor:pointer;position:relative;background:#eef1f5;box-shadow:0 1px 4px rgba(0,0,0,.05);transition:transform .3s;aspect-ratio:4/3}
.ci:hover{transform:scale(1.03)}
.ci img{width:100%;height:100%;object-fit:cover;display:block}
.ci-l{position:absolute;bottom:0;left:0;right:0;padding:3px 7px;background:linear-gradient(transparent,rgba(0,0,0,.55));color:#fff;font-size:14px;text-shadow:0 0 10px #000;font-weight:600}
.cn{position:absolute;top:50%;transform:translateY(-50%);width:33px;height:33px;border-radius:50%;border:1.5px solid rgba(0,0,0,.1);background:rgba(255,255,255,.9);color:var(--nv);font-size:25px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;transition:all .2s;box-shadow:0 1px 6px rgba(0,0,0,.08);line-height:1}
.cn:hover{border-color:var(--bl);color:var(--bl)}
.cn.p{left:-13px}.cn.n{right:-13px}
.cd{display:flex;justify-content:center;gap:4px;margin-top:5px}
.cd span{width:5px;height:5px;border-radius:50%;background:rgba(0,0,0,.1);cursor:pointer;transition:all .2s}
.cd span.on{background:var(--bl);transform:scale(1.3)}

/* CTA — "1위라고 말하는 곳은 많습니다" */
.cta{position:relative;text-align:center;overflow:hidden;background:var(--nv);padding:clamp(50px,12vw,140px) var(--px)}
.cta::before{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:200%;height:200%;border-radius:50%;background:radial-gradient(ellipse,rgba(42,157,244,.06),transparent 60%)}
.cta-in{position:relative;z-index:2;margin:0 auto}
.cta-in h2{font-family:var(--hd);font-size:clamp(22px,4vw,40px);font-weight:900;color:#fff;line-height:1.4;margin-bottom:10px;word-break:keep-all;overflow:hidden}
.cta-in h2 .ch{display:inline-block;transform:translateY(110%);opacity:0}
.cta-in .cta-sub{font-family:var(--hd);font-size:clamp(18px,3vw,32px);font-weight:900;color:var(--bl2);margin-bottom:15px;overflow:hidden}
.cta-in .cta-sub .ch{display:inline-block;transform:translateY(110%);opacity:0}
.cta-in p{font-size:clamp(13px,1.3vw,16px);color:rgba(255,255,255,.4);line-height:1.5;margin-bottom:20px;word-break:keep-all}
.cta-btn{display:inline-flex;align-items:center;gap:8px;background:var(--bl);color:#fff;font-size:15px;font-weight:700;padding:14px 40px;border-radius:8px;text-decoration:none;transition:all .2s;box-shadow:0 4px 20px rgba(42,157,244,.25)}
.cta-btn:hover{background:var(--bl2);color:var(--nv);transform:translateY(-2px)}

/* Lightbox */
.lb{display:none;position:fixed;inset:0;z-index:9999;background:rgba(15,30,45,.94);backdrop-filter:blur(14px);align-items:center;justify-content:center;padding:20px}
.lb.open{display:flex}
.lb img{max-width:90vw;max-height:85vh;border-radius:12px;box-shadow:0 8px 48px rgba(0,0,0,.5)}
.lb-x{position:absolute;top:20px;right:24px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}
.lb-x:hover{background:rgba(255,255,255,.1)}
.lb-t{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.5);font-size:12px;background:rgba(0,0,0,.3);padding:5px 14px;border-radius:8px}