/* =========================================================
   키즈상상 KidsSangsang — style.css
   ========================================================= */

:root{
  --mint:#16c79a;
  --mint-d:#0ba680;
  --mint-l:#e6f9f3;
  --mint-xl:#f3fcf9;
  --yellow:#ffc73c;
  --coral:#ff7a59;
  --violet:#8b7bf0;
  --ink:#17232e;
  --ink-2:#3d4d5c;
  --ink-3:#71818f;
  --line:#e6ebef;
  --bg:#ffffff;
  --bg-2:#f6f9fb;
  --radius:20px;
  --shadow:0 10px 30px rgba(23,35,46,.07);
  --shadow-lg:0 22px 60px rgba(23,35,46,.12);
  --max:1180px;
  --font:"Pretendard","Pretendard Variable",-apple-system,BlinkMacSystemFont,"Malgun Gothic","맑은 고딕",sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:76px;}
body{
  margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);
  font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;
  word-break:keep-all;overflow-wrap:break-word;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{margin:0;line-height:1.32;letter-spacing:-.02em;font-weight:800;}
p{margin:0;}
ul,ol,dl,dd{margin:0;padding:0;list-style:none;}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit;}
input,select,textarea{font-family:inherit;font-size:1rem;color:inherit;}

.wrap{width:min(100% - 40px,var(--max));margin-inline:auto;}
.wrap--narrow{width:min(100% - 40px,820px);}

/* ---------- 버튼 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:13px 26px;border-radius:999px;font-weight:700;font-size:.98rem;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
  white-space:nowrap;
}
.btn--primary{background:var(--mint);color:#fff;box-shadow:0 8px 22px rgba(22,199,154,.32);}
.btn--primary:hover{background:var(--mint-d);transform:translateY(-2px);}
.btn--ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line);}
.btn--ghost:hover{border-color:var(--mint);color:var(--mint-d);transform:translateY(-2px);}
.btn--lg{padding:17px 34px;font-size:1.05rem;}
.btn--sm{padding:10px 20px;font-size:.9rem;}
.btn--block{width:100%;}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none;}

/* ---------- 헤더 ---------- */
.hdr{
  position:fixed;inset:0 0 auto;z-index:100;height:72px;
  background:rgba(255,255,255,.88);backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;transition:border-color .25s,box-shadow .25s;
}
.hdr.is-stuck{border-bottom-color:var(--line);box-shadow:0 4px 24px rgba(23,35,46,.05);}
.hdr__inner{display:flex;align-items:center;gap:24px;height:72px;}
.logo{display:flex;align-items:center;gap:10px;flex:none;}
.logo__mark{
  width:38px;height:38px;border-radius:12px;flex:none;display:block;
  box-shadow:0 6px 16px rgba(22,199,154,.35);
}
.logo__txt{font-weight:900;font-size:1.15rem;letter-spacing:-.03em;line-height:1.1;}
.logo__txt em{display:block;font-style:normal;font-size:.6rem;font-weight:700;letter-spacing:.18em;color:var(--mint-d);}
.gnb{display:flex;gap:4px;margin-left:auto;}
.gnb a{padding:8px 12px;border-radius:999px;font-size:.92rem;font-weight:600;color:var(--ink-2);transition:.18s;white-space:nowrap;}
.gnb a:hover,.gnb a.is-on{background:var(--mint-l);color:var(--mint-d);}
.hdr__cta{flex:none;}
.hdr__burger{display:none;width:42px;height:42px;flex:none;flex-direction:column;justify-content:center;gap:5px;padding:0 9px;}
.hdr__burger span{display:block;height:2px;background:var(--ink);border-radius:2px;transition:.25s;}
.hdr__burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hdr__burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.hdr__burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---------- 하위 페이지 : 현재 위치 ---------- */
.crumb{padding:96px 0 0;background:var(--mint-xl);}
.crumb .wrap{display:flex;align-items:center;gap:9px;font-size:.88rem;color:var(--ink-3);padding-bottom:8px;}
.crumb a{font-weight:600;transition:color .18s;}
.crumb a:hover{color:var(--mint-d);}
.crumb span{color:#b9c6ce;}
.crumb b{color:var(--ink);font-weight:800;}
.crumb + .sec{padding-top:44px;}
.crumb + .sec--tint{background:linear-gradient(180deg,var(--mint-xl) 0,var(--bg-2) 90px);}
.crumb + .price{background:linear-gradient(180deg,var(--mint-xl) 0,#fff 120px,var(--mint-xl) 100%);}
.crumb + .apply{padding-top:44px;}

/* ---------- 하위 페이지 : 하단 CTA ---------- */
.pcta{
  padding:84px 0;text-align:center;
  background:linear-gradient(135deg,var(--mint) 0%,#3ad0b6 60%,#5fd3ff 100%);color:#fff;
}
.pcta__eyebrow{font-size:.85rem;font-weight:800;letter-spacing:.16em;opacity:.85;margin-bottom:12px;}
.pcta h2{font-size:clamp(1.6rem,2.8vw,2.3rem);font-weight:900;letter-spacing:-.035em;}
.pcta__desc{margin:16px 0 26px;opacity:.92;}
.pcta__btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.pcta .btn--primary{background:#fff;color:var(--mint-d);box-shadow:0 10px 26px rgba(0,0,0,.16);}
.pcta .btn--primary:hover{background:#f2fffb;}
.pcta .btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.pcta .btn--ghost:hover{background:rgba(255,255,255,.14);color:#fff;border-color:#fff;}

/* ---------- 히어로 ---------- */
.hero{padding:118px 0 92px;background:linear-gradient(180deg,var(--mint-xl) 0%,#fff 88%);overflow:hidden;}
.hero__inner{display:grid;grid-template-columns:1fr .95fr;gap:40px;align-items:center;}
.hero__eyebrow{font-size:.95rem;font-weight:700;color:var(--ink-2);margin-bottom:14px;}
.hero__eyebrow b{color:var(--mint-d);}
.hero__title{font-size:clamp(2.1rem,4.4vw,3.35rem);font-weight:900;letter-spacing:-.035em;}
.hero__title .hl{color:var(--mint-d);}
.hero__title strong{font-weight:900;}
.hero__title .chip{
  display:inline-block;background:linear-gradient(120deg,#9ff0d5,#c9f5a8);
  padding:0 14px;border-radius:6px 16px 6px 16px;transform:rotate(-2deg);
}
.hero__desc{margin:20px 0 24px;color:var(--ink-2);font-size:1.05rem;}
.hero__badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px;}
.hero__badges li{
  display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);
  padding:7px 14px;border-radius:999px;font-size:.88rem;font-weight:600;color:var(--ink-2);
  box-shadow:0 2px 8px rgba(23,35,46,.04);
}
.hero__badges i{font-style:normal;color:var(--mint);font-weight:900;}
.hero__btns{display:flex;flex-wrap:wrap;gap:10px;}
.hero__visual img{filter:drop-shadow(0 24px 40px rgba(23,35,46,.12));}

/* ---------- 섹션 공통 ---------- */
.sec{padding:104px 0;}
.sec--tint{background:var(--bg-2);}
.sec__head{text-align:center;max-width:720px;margin:0 auto 52px;}
.sec__head--sub{margin-top:72px;margin-bottom:26px;}
.sec__eyebrow{font-size:.85rem;font-weight:800;letter-spacing:.16em;color:var(--mint-d);margin-bottom:12px;text-transform:uppercase;}
.sec__eyebrow b{color:var(--coral);}
.sec__title{font-size:clamp(1.7rem,3vw,2.5rem);font-weight:900;letter-spacing:-.035em;}
.sec__title--sm{font-size:clamp(1.3rem,2.2vw,1.75rem);}
.sec__desc{margin-top:16px;color:var(--ink-2);font-size:1.02rem;}

/* ---------- 고민 ---------- */
.worry{padding:130px 0 100px;}
.worry__inner{display:grid;grid-template-columns:.95fr 1fr;gap:52px;align-items:center;}
.worry__img{background:var(--mint-l);border-radius:28px;padding-top:22px;overflow:hidden;}
.worry .sec__eyebrow{text-align:left;letter-spacing:0;text-transform:none;font-size:1rem;color:var(--ink-2);}
.worry .sec__title{text-align:left;margin-bottom:26px;}
.worry__list li{
  display:flex;gap:12px;align-items:flex-start;padding:13px 18px;margin-bottom:8px;
  background:#fff;border:1px solid var(--line);border-radius:14px;font-size:.98rem;color:var(--ink-2);
}
.worry__list span{
  flex:none;width:26px;height:26px;border-radius:8px;background:var(--mint-l);color:var(--mint-d);
  font-size:.72rem;font-weight:800;display:grid;place-items:center;margin-top:3px;
}
.worry__list b{color:var(--ink);font-weight:700;}
.worry__answer{
  margin-top:24px;padding:22px 24px;border-radius:16px;
  background:linear-gradient(120deg,var(--mint),#3ad0b6);color:#fff;font-weight:600;
  box-shadow:0 12px 30px rgba(22,199,154,.28);
}
.worry__answer b{font-weight:900;}

/* ---------- WHY ---------- */
.why__points{display:grid;gap:16px;margin-bottom:56px;}
.why__points figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);}
.why__detail{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);margin-bottom:56px;}
.why__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.why__cards li{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 26px 28px;transition:transform .22s,box-shadow .22s,border-color .22s;
}
.why__cards li:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:transparent;}
.why__cards b{
  display:grid;place-items:center;width:42px;height:42px;border-radius:13px;
  background:var(--mint-l);color:var(--mint-d);font-size:.9rem;font-weight:900;margin-bottom:16px;
}
.why__cards h3{font-size:1.12rem;margin-bottom:9px;}
.why__cards p{color:var(--ink-2);font-size:.95rem;}

/* ---------- 영상 ---------- */
.player{
  position:relative;background:#0d1418;border-radius:var(--radius);overflow:hidden;
  aspect-ratio:16/9;box-shadow:var(--shadow-lg);
}
.player video{width:100%;height:100%;object-fit:contain;background:#0d1418;display:block;}
.player__big{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(13,20,24,.32);transition:opacity .25s;
}
.player__big span{
  width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.94);
  display:grid;place-items:center;box-shadow:0 10px 34px rgba(0,0,0,.35);
  transition:transform .2s;
}
.player__big span::after{
  content:"";border-left:22px solid var(--mint-d);
  border-top:14px solid transparent;border-bottom:14px solid transparent;margin-left:6px;
}
.player__big:hover span{transform:scale(1.08);}
.player.is-playing .player__big{opacity:0;pointer-events:none;}
.player__loading{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  color:#fff;font-size:.9rem;font-weight:600;opacity:0;transition:.2s;pointer-events:none;
}
.player.is-loading .player__loading{opacity:1;}
.player.is-loading .player__big{opacity:0;}
.player__bar{
  position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;
  padding:14px 16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.75));
  opacity:0;transform:translateY(8px);transition:.25s;
}
.player:hover .player__bar,.player.is-paused .player__bar{opacity:1;transform:none;}
.player__btn{color:#fff;font-size:1rem;width:32px;height:32px;border-radius:8px;transition:background .18s;}
.player__btn:hover{background:rgba(255,255,255,.18);}
.player__time{color:#fff;font-size:.78rem;font-variant-numeric:tabular-nums;min-width:38px;text-align:center;opacity:.9;}
.player__track{position:relative;flex:1;height:5px;border-radius:99px;background:rgba(255,255,255,.28);cursor:pointer;}
.player__track::before{content:"";position:absolute;inset:-9px 0;}
.player__fill{height:100%;width:0;border-radius:99px;background:var(--mint);}
.player__knob{
  position:absolute;top:50%;left:0;width:13px;height:13px;border-radius:50%;background:#fff;
  transform:translate(-50%,-50%);box-shadow:0 2px 6px rgba(0,0,0,.4);pointer-events:none;
}
.player__note{margin-top:12px;font-size:.85rem;color:var(--ink-3);text-align:center;}
.video__yt{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg);background:#0d1418;}
.video__yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

.video__lecture{
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:20px;
  padding:28px 32px;box-shadow:var(--shadow);
}
.video__lecture b{display:block;font-size:1.15rem;font-weight:800;margin-bottom:6px;}
.video__lecture p{font-size:.94rem;color:var(--ink-2);}
.video__lecture p b{display:inline;font-size:inherit;color:var(--mint-d);}

/* ---------- 프로그램 ---------- */
.tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:36px;}
.tabs__btn{
  padding:12px 30px;border-radius:999px;font-weight:800;font-size:1rem;
  background:var(--bg-2);color:var(--ink-3);border:1.5px solid transparent;transition:.2s;
}
.tabs__btn:hover{color:var(--mint-d);}
.tabs__btn.is-on{background:var(--mint);color:#fff;box-shadow:0 8px 20px rgba(22,199,154,.3);}
.panel{display:none;animation:fade .35s ease;}
.panel.is-on{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

.panel__top{
  display:grid;grid-template-columns:1.15fr 1fr;gap:44px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:26px;padding:40px;box-shadow:var(--shadow);
}
.panel__label{
  display:inline-block;padding:5px 14px;border-radius:999px;background:var(--mint-l);
  color:var(--mint-d);font-size:.82rem;font-weight:800;margin-bottom:14px;
}
.panel__top h3{font-size:clamp(1.5rem,2.6vw,2.1rem);margin-bottom:16px;}
.panel__lead{color:var(--ink-2);font-size:1rem;margin-bottom:22px;}
.panel__spec{border-top:1px solid var(--line);padding-top:16px;}
.panel__spec div{display:flex;gap:14px;padding:6px 0;font-size:.95rem;}
.panel__spec dt{flex:none;width:44px;font-weight:800;color:var(--mint-d);}
.panel__spec dd{color:var(--ink-2);}
.panel__img{margin:0;background:var(--bg-2);border-radius:18px;padding:22px;}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px;}
.steps li{
  position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 22px;
}
.steps li::after{
  content:"";position:absolute;right:-12px;top:50%;width:10px;height:10px;
  border-top:2px solid var(--line);border-right:2px solid var(--line);
  transform:translateY(-50%) rotate(45deg);
}
.steps li:last-child::after{display:none;}
.steps b{font-size:.74rem;font-weight:900;letter-spacing:.1em;color:var(--mint);}
.steps h4{font-size:1.02rem;margin:8px 0 8px;}
.steps p{font-size:.9rem;color:var(--ink-2);}

.panel__extra{margin-top:22px;background:var(--mint-xl);border-radius:18px;padding:26px 30px;}
.panel__extra h4{font-size:1.05rem;margin-bottom:12px;}
.panel__extra li{display:flex;gap:12px;align-items:baseline;padding:7px 0;color:var(--ink-2);font-size:.96rem;border-top:1px dashed #cfeee4;}
.panel__extra li:first-child{border-top:0;}
.panel__extra span{
  flex:none;min-width:58px;text-align:center;padding:3px 10px;border-radius:999px;
  background:#fff;color:var(--mint-d);font-size:.78rem;font-weight:800;
}

.program__plus{margin-top:60px;text-align:center;}
.program__plus h3{font-size:1.3rem;margin-bottom:22px;}
.program__plus ul{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;text-align:left;}
.program__plus li{background:var(--bg-2);border-radius:16px;padding:22px 20px;}
.program__plus b{display:block;font-size:1rem;margin-bottom:6px;}
.program__plus span{font-size:.88rem;color:var(--ink-2);}

/* ---------- 로드맵 ---------- */
.roadmap__img{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:34px;}
.roadmap__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.roadmap__grid article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow);}
.tag{display:inline-block;padding:5px 15px;border-radius:999px;font-size:.82rem;font-weight:800;color:#fff;margin-bottom:14px;}
.tag--a{background:var(--yellow);}
.tag--b{background:var(--mint);}
.tag--c{background:var(--violet);}
.roadmap__grid h3{font-size:1.12rem;margin-bottom:12px;}
.roadmap__grid li{position:relative;padding-left:18px;font-size:.94rem;color:var(--ink-2);margin-bottom:6px;}
.roadmap__grid li::before{content:"✓";position:absolute;left:0;color:var(--mint);font-weight:900;font-size:.85rem;}

/* ---------- HOW ---------- */
.how__list{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;counter-reset:s;}
.how__list li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 22px;position:relative;}
.how__list b{
  display:grid;place-items:center;width:40px;height:40px;border-radius:50%;
  background:var(--mint);color:#fff;font-size:.88rem;font-weight:900;margin-bottom:14px;
}
.how__list h3{font-size:1.02rem;margin-bottom:8px;}
.how__list p{font-size:.9rem;color:var(--ink-2);}
.how__ready{margin-top:34px;background:var(--mint-xl);border-radius:var(--radius);padding:34px 36px;text-align:center;}
.how__ready h3{font-size:1.2rem;margin-bottom:20px;}
.how__ready ul{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.how__ready li{background:#fff;border-radius:16px;padding:22px;}
.how__ready i{font-style:normal;font-size:1.7rem;display:block;margin-bottom:8px;}
.how__ready b{display:block;font-size:1rem;margin-bottom:4px;}
.how__ready span{font-size:.88rem;color:var(--ink-3);}

/* ---------- 수업료 ---------- */
.price{background:linear-gradient(180deg,#fff 0%,var(--mint-xl) 100%);}
.price__grid{display:grid;grid-template-columns:1fr;gap:20px;}
.pcard{display:grid;grid-template-columns:300px 1fr;align-items:stretch;}
.pcard__head{display:flex;flex-direction:column;justify-content:center;}
.pcard__rows{padding:14px 34px;display:flex;flex-direction:column;justify-content:center;}
.pcard__note{grid-column:2;padding:0 34px 22px;margin-top:-6px;}
.pcard{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);}
.pcard__head{padding:30px 34px;}
.pcard__head--kids{background:linear-gradient(135deg,#fff6e0,#fffdf6);}
.pcard__head--elem{background:linear-gradient(135deg,#e6f9f3,#f6fdfb);}
.pcard__head h3{font-size:1.4rem;margin-bottom:4px;}
.pcard__head p{font-size:.9rem;color:var(--ink-3);font-weight:600;}
.pcard__rows li{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:18px 0;border-top:1px solid var(--line);
}
.pcard__rows li:first-child{border-top:0;}
.pcard__rows b{display:block;font-size:1.05rem;font-weight:800;}
.pcard__rows em{font-style:normal;font-size:.85rem;color:var(--ink-3);}
.pcard__rows strong{font-size:1.4rem;font-weight:900;letter-spacing:-.03em;white-space:nowrap;}
.pcard__rows strong span{font-size:.82rem;font-weight:700;color:var(--ink-3);margin-left:3px;}
.pcard__rows .is-best b::after{
  content:"기본";margin-left:8px;padding:2px 9px;border-radius:999px;vertical-align:2px;
  background:var(--mint);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.02em;
}
.pcard__rows .is-best strong{color:var(--mint-d);}
.pcard__note{font-size:.85rem;color:var(--ink-3);}

.price__info{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px;}
.price__info li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;}
.price__info b{display:block;font-size:.95rem;color:var(--mint-d);margin-bottom:5px;}
.price__info span{font-size:.88rem;color:var(--ink-2);}
.price__cta{text-align:center;margin-top:34px;}
.price__cta p{color:var(--ink-2);margin-bottom:18px;font-weight:600;}

/* ---------- 선생님 ---------- */
.teacher__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.tcard{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;
  box-shadow:var(--shadow);transition:transform .22s,box-shadow .22s;
}
.tcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);}
.tcard__top{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
.tcard__ava{
  width:56px;height:56px;border-radius:18px;flex:none;display:grid;place-items:center;
  font-size:1.3rem;font-weight:900;color:#fff;
}
.tcard__name{font-size:1.1rem;font-weight:800;}
.tcard__name em{font-style:normal;font-size:.82rem;font-weight:600;color:var(--ink-3);margin-left:6px;}
.tcard__sub{font-size:.85rem;font-weight:700;color:var(--mint-d);}
.tcard__desc{font-size:.94rem;color:var(--ink-2);margin-bottom:14px;}
.tcard__tags{display:flex;flex-wrap:wrap;gap:6px;}
.tcard__tags span{background:var(--bg-2);color:var(--ink-2);font-size:.78rem;font-weight:600;padding:4px 11px;border-radius:999px;}

.teacher__promise{margin-top:34px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 36px;box-shadow:var(--shadow);}
.teacher__promise h3{font-size:1.2rem;text-align:center;margin-bottom:20px;}
.teacher__promise ul{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.teacher__promise li{background:var(--mint-xl);border-radius:16px;padding:22px 24px;}
.teacher__promise b{display:block;color:var(--mint-d);font-size:1rem;margin-bottom:6px;}
.teacher__promise span{font-size:.92rem;color:var(--ink-2);}

/* ---------- 후기 ---------- */
.review__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.review__grid blockquote{
  margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 28px;box-shadow:var(--shadow);display:flex;flex-direction:column;
}
.stars{color:var(--yellow);font-size:.95rem;letter-spacing:2px;margin-bottom:12px;}
.review__grid h3{font-size:1.1rem;margin-bottom:12px;}
.review__grid p{font-size:.94rem;color:var(--ink-2);flex:1;}
.review__grid cite{
  margin-top:18px;padding-top:14px;border-top:1px solid var(--line);
  font-style:normal;font-size:.86rem;font-weight:700;color:var(--ink-3);
}

/* ---------- FAQ ---------- */
.acc details{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:10px;overflow:hidden;transition:box-shadow .2s;}
.acc details[open]{box-shadow:var(--shadow);border-color:transparent;}
.acc summary{
  list-style:none;cursor:pointer;padding:20px 56px 20px 24px;position:relative;
  font-weight:700;font-size:1rem;
}
.acc summary::-webkit-details-marker{display:none;}
.acc summary::before{content:"Q";margin-right:10px;color:var(--mint);font-weight:900;}
.acc summary::after{
  content:"";position:absolute;right:26px;top:50%;width:9px;height:9px;
  border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);
  transform:translateY(-70%) rotate(45deg);transition:transform .25s;
}
.acc details[open] summary::after{transform:translateY(-30%) rotate(-135deg);}
.acc details[open] summary{color:var(--mint-d);}
.acc div{padding:0 24px 22px 46px;color:var(--ink-2);font-size:.96rem;}

/* ---------- 신청 ---------- */
.apply{background:linear-gradient(160deg,var(--mint-xl),#fff 60%);}
.apply__inner{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;}
.apply .sec__eyebrow,.apply .sec__title{text-align:left;}
.apply__desc{margin:18px 0 20px;color:var(--ink-2);}
.apply__points li{font-size:.96rem;color:var(--ink-2);font-weight:600;padding:4px 0;}
.apply__contact{display:grid;grid-template-columns:1.25fr 1fr;gap:12px;margin-top:28px;}
.apply__tel,.apply__kakao{
  display:block;background:#fff;border:1px solid var(--line);
  border-radius:18px;padding:22px 24px;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;
}
.apply__tel:hover,.apply__kakao:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);}
.apply__tel span{font-size:.85rem;font-weight:700;color:var(--mint-d);}
.apply__tel b{display:block;font-size:1.65rem;font-weight:900;letter-spacing:-.03em;}
.apply__tel em{font-style:normal;font-size:.84rem;color:var(--ink-3);display:block;margin-top:4px;line-height:1.55;}
.apply__tel em i{font-style:normal;color:var(--mint-d);font-weight:700;}
.apply__kakao{background:#FEE500;border-color:#FEE500;}
.apply__kakao i{display:block;color:#3C1E1E;margin-bottom:6px;}
.apply__kakao span{font-size:.85rem;font-weight:700;color:#6b4a1a;}
.apply__kakao b{display:block;font-size:1.15rem;font-weight:900;color:#3C1E1E;letter-spacing:-.02em;}

.apply__form{background:#fff;border:1px solid var(--line);border-radius:26px;padding:36px;box-shadow:var(--shadow-lg);}
.apply__form h3{font-size:1.25rem;margin-bottom:22px;}
.field{margin-bottom:16px;}
.field label,.field .label{display:block;font-size:.88rem;font-weight:700;margin-bottom:7px;color:var(--ink-2);}
.field i{font-style:normal;color:var(--coral);}
.field input,.field select,.field textarea{
  width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:12px;
  background:#fff;transition:border-color .18s,box-shadow .18s;resize:vertical;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--mint);box-shadow:0 0 0 4px rgba(22,199,154,.13);
}
.field input.is-err,.field select.is-err{border-color:var(--coral);}
.field--half{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.field--half>div{margin:0;}
.field__zip{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:8px;}
.field__zip .btn{padding:0 18px;flex:none;}
.field #fAddr{margin-bottom:8px;}
.field__hint{margin-top:7px;font-size:.8rem;color:var(--ink-3);}
.chips{display:flex;flex-wrap:wrap;gap:8px;}
.chips input{position:absolute;opacity:0;width:0;height:0;}
.chips label{margin:0;}
.chips span{
  display:inline-block;padding:9px 18px;border-radius:999px;border:1.5px solid var(--line);
  font-size:.9rem;font-weight:600;cursor:pointer;transition:.18s;color:var(--ink-2);
}
.chips input:checked+span{background:var(--mint);border-color:var(--mint);color:#fff;}
.chips input:focus-visible+span{box-shadow:0 0 0 4px rgba(22,199,154,.2);}
.agree{display:flex;gap:9px;align-items:flex-start;font-size:.88rem;color:var(--ink-2);margin:6px 0 18px;cursor:pointer;}
.agree input{margin-top:4px;accent-color:var(--mint);width:16px;height:16px;flex:none;}
.agree a{color:var(--mint-d);text-decoration:underline;}
.apply__msg{margin-top:14px;font-size:.92rem;font-weight:700;text-align:center;min-height:22px;}
.apply__msg.ok{color:var(--mint-d);}
.apply__msg.err{color:var(--coral);}

/* ---------- 푸터 ---------- */
.ftr{background:var(--ink);color:#9fb0bd;padding:64px 0 40px;font-size:.9rem;}
.ftr__inner{display:grid;gap:34px;}
.ftr__brand{display:flex;gap:14px;align-items:center;}
.ftr__brand b{color:#fff;font-size:1.05rem;display:block;}
.ftr__brand p{margin-top:5px;font-size:.86rem;}
.ftr__cols{display:grid;grid-template-columns:repeat(3,minmax(0,220px));gap:24px;}
.ftr__cols h4{color:#fff;font-size:.94rem;margin-bottom:12px;}
.ftr__cols a,.ftr__cols span{display:block;padding:3px 0;font-size:.88rem;transition:color .18s;}
.ftr__cols a:hover{color:var(--mint);}
.ftr__privacy{border-top:1px solid rgba(255,255,255,.1);padding-top:26px;}
.ftr__privacy h4{color:#fff;font-size:.9rem;margin-bottom:10px;}
.ftr__privacy p{font-size:.82rem;line-height:1.9;color:#7d8f9d;}
.ftr__copy{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;font-size:.82rem;color:#6d7f8d;}

/* =========================================================
   지역 × 연령 랜딩 페이지
   ========================================================= */
.lp-hero{padding:24px 0 66px;background:linear-gradient(180deg,var(--mint-xl),#fff);}
.lp-hero__inner{display:grid;grid-template-columns:1fr .85fr;gap:44px;align-items:center;}
.lp-hero__tag{
  display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;
  padding:6px 16px;font-size:.85rem;font-weight:700;color:var(--mint-d);margin-bottom:16px;
}
.lp-hero h1{font-size:clamp(1.75rem,3.4vw,2.7rem);font-weight:900;letter-spacing:-.035em;}
.lp-hero h1 span{display:block;margin-top:10px;font-size:.52em;font-weight:700;color:var(--ink-2);letter-spacing:-.02em;}
.lp-hero__desc{margin:18px 0 24px;color:var(--ink-2);font-weight:600;}
.lp-hero__btns{display:flex;flex-wrap:wrap;gap:10px;}
.lp-hero__hours{margin-top:14px;font-size:.85rem;color:var(--ink-3);}
.lp-hero figure{margin:0;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-lg);}

.lp-h1{font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:900;letter-spacing:-.035em;margin-bottom:18px;}
.lp-h2{font-size:clamp(1.3rem,2.4vw,1.85rem);font-weight:900;letter-spacing:-.03em;margin-bottom:20px;}
.lp-h2--group{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font-size:1.2rem;color:var(--mint-d);}
.lp-body{color:var(--ink-2);font-size:1.02rem;line-height:1.85;}
.lp-body b{color:var(--ink);font-weight:800;}
.lp-body a{color:var(--mint-d);font-weight:700;text-decoration:underline;}
.lp-note{margin-top:16px;font-size:.86rem;color:var(--ink-3);}

.lp-sum{padding-top:76px;padding-bottom:76px;}
.lp-sum__list{background:var(--mint-xl);border-radius:20px;padding:26px 30px;}
.lp-sum__list li{position:relative;padding:9px 0 9px 30px;color:var(--ink-2);font-size:1rem;}
.lp-sum__list li::before{
  content:"✓";position:absolute;left:0;top:9px;width:20px;height:20px;border-radius:50%;
  background:var(--mint);color:#fff;font-size:.7rem;font-weight:900;display:grid;place-items:center;
}
.lp-sum__list b{color:var(--ink);font-weight:800;}

.lp-points{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px;}
.lp-points article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 26px;}
.lp-points b{
  display:grid;place-items:center;width:34px;height:34px;border-radius:11px;
  background:var(--mint-l);color:var(--mint-d);font-size:.8rem;font-weight:900;margin-bottom:12px;
}
.lp-points h3{font-size:1.05rem;margin-bottom:7px;}
.lp-points p{font-size:.93rem;color:var(--ink-2);}

.lp-steps{display:grid;gap:12px;}
.lp-steps li{
  display:grid;grid-template-columns:110px 1fr;gap:22px;align-items:start;
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 28px;
}
.lp-steps span{
  display:inline-block;background:var(--mint);color:#fff;border-radius:999px;
  padding:5px 0;text-align:center;font-size:.82rem;font-weight:800;
}
.lp-steps h3{font-size:1.05rem;margin-bottom:6px;}
.lp-steps p{font-size:.94rem;color:var(--ink-2);}

.lp-check{margin-top:24px;display:grid;gap:9px;}
.lp-check li{
  position:relative;padding:14px 20px 14px 46px;background:#fff;border:1px solid var(--line);
  border-radius:14px;font-size:.96rem;color:var(--ink-2);
}
.lp-check li::before{
  content:"✓";position:absolute;left:18px;top:15px;color:var(--mint);font-weight:900;
}
.lp-check b{color:var(--ink);font-weight:800;}

.lp-signs{display:grid;gap:10px;}
.lp-signs li{
  position:relative;padding:18px 22px 18px 54px;border-radius:16px;
  background:var(--mint-xl);font-size:1rem;font-weight:600;color:var(--ink-2);
}
.lp-signs li::before{
  content:"!";position:absolute;left:20px;top:18px;width:22px;height:22px;border-radius:50%;
  background:var(--coral);color:#fff;font-size:.78rem;font-weight:900;display:grid;place-items:center;
}

.lp-price{max-width:100%;}
.lp-award__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.lp-award__grid img{
  width:100%;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;
}

.lp-links__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;}
.lp-links__grid a{
  display:block;padding:13px 18px;background:#fff;border:1px solid var(--line);
  border-radius:12px;font-size:.92rem;font-weight:600;color:var(--ink-2);transition:.18s;
}
.lp-links__grid a:hover{border-color:var(--mint);color:var(--mint-d);transform:translateY(-2px);}
.lp-links__grid--big{grid-template-columns:repeat(2,1fr);gap:12px;}
.lp-links__grid--big a{padding:20px 24px;border-radius:16px;}
.lp-links__grid--big b{display:block;font-size:1.02rem;color:var(--ink);margin-bottom:4px;}
.lp-links__grid--big span{font-size:.87rem;color:var(--ink-3);font-weight:500;}
.lp-links__grid--big a:hover b{color:var(--mint-d);}

@media (max-width:900px){
  .lp-hero__inner{grid-template-columns:1fr;gap:28px;}
  .lp-hero figure{order:-1;}
  .lp-award__grid{grid-template-columns:repeat(2,1fr);}
  .lp-links__grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:620px){
  .lp-points,.lp-links__grid,.lp-links__grid--big,.lp-award__grid{grid-template-columns:1fr;}
  .lp-steps li{grid-template-columns:1fr;gap:10px;padding:20px 22px;}
  .lp-steps span{justify-self:start;padding:5px 16px;}
  .lp-sum__list{padding:20px 22px;}
}

/* =========================================================
   긴 홍보 섹션 (지역 페이지 안)
   ========================================================= */
.promo{background:#fff;padding:0 0 70px;}
.promo__band{
  background:#dff0a8;text-align:center;padding:44px 20px;margin-bottom:56px;
}
.promo__band p{font-size:clamp(1.1rem,2.4vw,1.7rem);font-weight:900;color:#5d4a1f;letter-spacing:-.03em;}
.promo__band h2{font-size:clamp(1.7rem,4vw,2.9rem);font-weight:900;color:#1d3557;letter-spacing:-.04em;margin-top:6px;}

.promo__lead{text-align:center;margin-bottom:44px;}
.promo__lead h3{font-size:clamp(1.4rem,3vw,2.2rem);font-weight:900;color:#3d3226;letter-spacing:-.035em;line-height:1.4;}

.promo__note{
  background:#fff;border:3px solid #eef1f4;border-radius:26px;
  padding:38px 34px;box-shadow:0 12px 34px rgba(23,35,46,.08);position:relative;margin-bottom:60px;
}
.promo__note::before,.promo__note::after{
  content:"";position:absolute;top:-22px;width:22px;height:40px;border-radius:11px;background:#c9a961;
}
.promo__note::before{left:9%;}
.promo__note::after{right:9%;}
.promo__note li{
  font-size:clamp(1.15rem,2.6vw,1.85rem);font-weight:900;color:#1d3557;
  letter-spacing:-.035em;text-align:center;padding:11px 0;
}
.promo__note li span{color:#16a37f;}

.promo__h{text-align:center;margin-bottom:26px;}
.promo__h em{display:block;font-style:normal;font-size:1rem;font-weight:600;color:var(--ink-3);margin-bottom:8px;}
.promo__h b{font-size:clamp(1.35rem,2.8vw,2rem);font-weight:900;letter-spacing:-.035em;}
.promo__h i{
  display:block;width:120px;height:4px;border-radius:2px;margin:14px auto 0;
  background:linear-gradient(90deg,#6ee7a5,#22c9c0);
}

.promo__teacher{margin-bottom:56px;}
.promo__teacher li{
  display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:start;
  padding:22px 26px;font-size:1rem;font-weight:700;color:#2b3948;line-height:1.75;
  border-bottom:1px solid #eef1f4;
}
.promo__teacher li:nth-child(even){background:#eef8f2;}
.promo__teacher li b{
  display:grid;place-items:center;width:30px;height:30px;border-radius:50%;
  background:#1d3557;color:#fff;font-size:.85rem;
}

.promo__tel{
  display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
  background:linear-gradient(120deg,#1fb87a,#25c98d);color:#fff;
  border-radius:22px;padding:34px 38px;margin-bottom:56px;
}
.promo__tel small{display:block;font-size:.95rem;opacity:.85;font-weight:700;margin-bottom:8px;}
.promo__tel strong{display:block;font-size:clamp(1.3rem,2.8vw,1.9rem);font-weight:900;letter-spacing:-.035em;line-height:1.35;}
.promo__tel a{
  display:inline-block;margin-top:14px;background:#12332a;color:#fff;
  padding:12px 24px;border-radius:999px;font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:900;
  transition:transform .2s;
}
.promo__tel a:hover{transform:translateY(-2px);}
.promo__tel div:last-child{
  background:#fff;color:#1d3557;border-radius:50%;width:132px;height:132px;
  display:grid;place-content:center;text-align:center;line-height:1.45;flex:none;
}
.promo__tel div:last-child span{font-size:.82rem;color:var(--ink-3);font-weight:700;}
.promo__tel div:last-child em{font-style:normal;font-size:1rem;font-weight:900;}

.promo__flow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:56px;}
.promo__flow li{position:relative;text-align:center;}
.promo__flow span{
  display:grid;place-content:center;width:132px;height:132px;border-radius:50%;margin:0 auto;
  color:#fff;font-weight:900;font-size:1rem;line-height:1.45;letter-spacing:-.03em;
}
.promo__flow li:nth-child(odd) span{background:#1a8f7a;}
.promo__flow li:nth-child(even) span{background:#7ab648;}
.promo__flow li::after{
  content:"›";position:absolute;right:-8px;top:50%;transform:translateY(-60%);
  color:#f59e0b;font-size:2rem;font-weight:900;
}
.promo__flow li:last-child::after{display:none;}

.promo__points{background:#eef8dd;border-radius:24px;padding:34px 30px;margin-bottom:56px;}
.promo__points h4{
  background:#7ab648;color:#fff;border-radius:999px;padding:10px 30px;
  display:inline-block;font-size:1.05rem;margin:0 auto 22px;
}
.promo__points .inner{background:#fff;border-radius:20px;padding:28px 30px;}
.promo__points li{
  display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:center;
  padding:11px 0;font-size:clamp(1rem,2.2vw,1.2rem);font-weight:700;color:#2f7d4f;
}
.promo__points li b{
  display:grid;place-items:center;width:26px;height:26px;border-radius:50%;
  background:#f59e0b;color:#fff;font-size:.78rem;
}

.promo__age{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.promo__age article{border:2px solid #eef1f4;border-radius:20px;overflow:hidden;}
.promo__age h4{background:#2b3948;color:#fff;padding:14px 24px;font-size:1.1rem;}
.promo__age ul{padding:22px 26px;}
.promo__age li{
  position:relative;padding:9px 0 9px 30px;font-size:1rem;font-weight:700;color:#2b3948;
}
.promo__age li::before{
  content:"☑";position:absolute;left:0;color:#e0463a;font-size:1.05rem;
}

@media (max-width:900px){
  .promo__flow{grid-template-columns:repeat(2,1fr);gap:18px 8px;}
  .promo__flow li:nth-child(2)::after{display:none;}
  .promo__tel{grid-template-columns:1fr;text-align:center;}
  .promo__tel div:last-child{margin:0 auto;}
}
@media (max-width:620px){
  .promo__band{padding:32px 16px;margin-bottom:40px;}
  .promo__note{padding:26px 20px;}
  .promo__note::before,.promo__note::after{display:none;}
  .promo__age,.promo__flow{grid-template-columns:1fr;}
  .promo__flow li::after{display:none;}
  .promo__tel{padding:26px 22px;}
  .promo__teacher li{grid-template-columns:30px 1fr;gap:10px;padding:18px 16px;font-size:.95rem;}
}

/* ---------- FAB ---------- */
.fab{
  position:fixed;right:22px;bottom:22px;z-index:90;display:flex;align-items:center;gap:10px;
  opacity:0;transform:translateY(20px);pointer-events:none;transition:.3s;
}
.fab.is-on{opacity:1;transform:none;pointer-events:auto;}
.fab__kakao{
  display:grid;place-items:center;width:54px;height:54px;border-radius:50%;flex:none;
  background:#FEE500;color:#3C1E1E;box-shadow:0 10px 26px rgba(0,0,0,.18);
  transition:transform .2s,box-shadow .2s;
}
.fab__kakao:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.24);}
.fab__apply{
  background:var(--coral);color:#fff;font-weight:800;font-size:.95rem;
  padding:16px 26px;border-radius:999px;box-shadow:0 12px 30px rgba(255,122,89,.42);
  transition:background .2s,transform .2s;
}
.fab__apply:hover{background:#f4643f;transform:translateY(-3px);}

/* ---------- 등장 애니메이션 ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease;}
.reveal.is-in{opacity:1;transform:none;}

/* =========================================================
   반응형
   ========================================================= */
@media (max-width:1080px){
  .why__cards,.roadmap__grid,.teacher__grid,.review__grid,.teacher__promise ul{grid-template-columns:repeat(2,1fr);}
  .price__info{grid-template-columns:repeat(2,1fr);}
  .how__list{grid-template-columns:repeat(3,1fr);}
  .steps{grid-template-columns:repeat(2,1fr);}
  .steps li::after{display:none;}
  .program__plus ul{grid-template-columns:repeat(2,1fr);}
}

@media (max-width:900px){
  html{scroll-padding-top:68px;}
  .hdr,.hdr__inner{height:64px;}
  .hdr__burger{display:flex;order:3;}
  .hdr__cta{display:none;}
  .gnb{
    position:fixed;inset:64px 0 auto;flex-direction:column;gap:0;margin:0;
    background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 20px;
    box-shadow:0 20px 40px rgba(23,35,46,.1);
    max-height:0;overflow:hidden;transition:max-height .32s ease,padding .32s ease;padding-top:0;padding-bottom:0;
  }
  .gnb.is-open{max-height:70vh;padding-top:10px;padding-bottom:20px;overflow:auto;}
  .gnb a{padding:13px 12px;border-radius:12px;font-size:1rem;}

  .hero{padding:96px 0 64px;}
  .hero__inner{grid-template-columns:1fr;gap:28px;text-align:center;}
  .hero__badges,.hero__btns{justify-content:center;}
  .hero__visual{max-width:460px;margin:0 auto;}

  .sec{padding:76px 0;}
  .worry{padding:110px 0 76px;}
  .worry__inner{grid-template-columns:1fr;gap:30px;}
  .worry__img{max-width:480px;margin:0 auto;}
  .worry .sec__title{text-align:left;}

  .pcard{grid-template-columns:1fr;}
  .pcard__head{padding:26px 24px 22px;}
  .pcard__rows{padding:4px 24px 20px;}
  .pcard__note{grid-column:1;padding:0 24px 22px;}
  .panel__top{grid-template-columns:1fr;gap:26px;padding:28px 24px;}
  .panel__img{order:-1;}
  .apply__inner{grid-template-columns:1fr;gap:32px;}
  .apply__form{padding:28px 22px;}
  .ftr__cols{grid-template-columns:repeat(2,1fr);}
}

@media (max-width:620px){
  body{font-size:15px;}
  .wrap{width:min(100% - 32px,var(--max));}
  .why__cards,.roadmap__grid,.teacher__grid,.review__grid,
  .how__list,.steps,.program__plus ul,.how__ready ul,.teacher__promise ul,
  .ftr__cols,.field--half,.price__grid,.price__info{grid-template-columns:1fr;}
  .pcard__rows strong{font-size:1.2rem;}
  .hero__title{font-size:2rem;}
  .tabs__btn{padding:10px 20px;font-size:.94rem;flex:1 1 40%;}
  .why__detail{padding:14px;}
  .roadmap__img{padding:12px;}
  .how__ready,.teacher__promise,.panel__extra{padding:24px 20px;}
  .acc summary{padding:17px 46px 17px 18px;font-size:.95rem;}
  .acc div{padding:0 18px 20px 18px;}
  .player__bar{opacity:1;transform:none;padding:10px 12px;}
  .player__big span{width:64px;height:64px;}
  .apply__contact{grid-template-columns:1fr;}
  .fab{right:14px;bottom:14px;gap:8px;}
  .fab__apply{padding:14px 20px;font-size:.9rem;}
  .fab__kakao{width:48px;height:48px;}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important;}
  html{scroll-behavior:auto;}
  .reveal{opacity:1;transform:none;}
}
