/* ACADEMIA main — hero / intro / news / board / people  v1.0.0 */
.aca-sec{padding:88px 0}
.aca-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:36px}
.aca-sec-title{margin:0;font-size:40px;font-weight:800;letter-spacing:-.02em}
.aca-sec-amp{color:var(--aca-primary)}
.aca-sec-more{font-size:14px;font-weight:600;color:var(--aca-ink-soft);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.aca-sec-more:hover{color:var(--aca-primary)}
/* motion 초기 상태 (JS 미동작/reduced-motion 시 원상 노출) */
[data-aca-motion]{opacity:1;transform:none}
.aca-motion-ready [data-aca-motion]{opacity:0;transform:translateY(28px)}
/* ===== visual(hero) ===== */
.aca-visual{position:relative;display:flex;align-items:flex-end;min-height:100vh;padding:0 0 96px;background:#17181c;color:#fff;overflow:hidden}
.aca-visual-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
/* 다중 배경 슬라이드 (v1.3.0) */
.aca-visual-slide{position:absolute;inset:0;z-index:0;opacity:0;transition:opacity .6s var(--aca-ease);pointer-events:none}
.aca-visual-slide.is-active{opacity:1}
/* 우하단 좌우 화살표 + 1/N 카운터 */
.aca-visual-nav{position:absolute;right:32px;bottom:32px;z-index:3;display:flex;align-items:center;gap:12px;color:#fff}
.aca-visual-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(10,12,18,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;transition:background-color .2s,border-color .2s}
.aca-visual-nav-btn:hover,.aca-visual-nav-btn:focus{background:rgba(10,12,18,.65);border-color:rgba(255,255,255,.7)}
.aca-visual-count{min-width:44px;text-align:center;font-size:14px;font-weight:700;letter-spacing:.08em;text-shadow:0 1px 8px rgba(0,0,0,.4)}
@media (max-width:1024px){.aca-visual-nav{right:16px;bottom:16px}.aca-visual-nav-btn{width:38px;height:38px}}
/* 유튜브/비메오 임베드 배경 — 16:9 커버 스케일, 상호작용 차단 */
.aca-visual-embed{position:absolute;inset:0;z-index:0;overflow:hidden;background:#17181c center/cover no-repeat;pointer-events:none}
.aca-visual-embed iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-width:177.78vh;min-height:100vh;transform:translate(-50%,-50%);border:0;pointer-events:none}
.aca-visual-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,10,14,.35) 0%,rgba(10,10,14,.15) 45%,rgba(10,10,14,.6) 100%)}
.aca-visual-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:48px;align-items:end;width:100%}
.aca-visual-title{margin:0;font-size:clamp(44px,6.5vw,96px);font-weight:800;line-height:1.08;letter-spacing:-.03em}
.aca-vt-line{display:block}/* 캐치프레이즈 줄 단위 애니메이션 대상 */
.aca-visual-desc{margin:0 0 28px;font-size:18px;line-height:1.7;color:rgba(255,255,255,.85)}
.aca-visual-cta{display:flex;gap:12px;flex-wrap:wrap}
.aca-btn{display:inline-block;padding:14px 28px;border-radius:999px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .2s,background-color .2s,color .2s}
.aca-btn:hover{transform:translateY(-2px)}
.aca-btn-primary{background:var(--aca-primary);color:#fff}
.aca-btn-ghost{border:1px solid rgba(255,255,255,.6);color:#fff}
.aca-visual-scroll{position:absolute;left:50%;bottom:24px;z-index:2;transform:translateX(-50%);font-size:11px;letter-spacing:.3em;color:rgba(255,255,255,.7)}
.aca-visual-scroll span::after{content:'';display:block;width:1px;height:34px;margin:8px auto 0;background:linear-gradient(180deg,#fff,transparent);animation:aca-scroll-hint 1.8s infinite}
@keyframes aca-scroll-hint{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
/* ===== intro cards ===== */
.aca-intro{background:var(--aca-bg-soft)}
.aca-intro-grid{display:grid;gap:24px;margin:0;padding:0;list-style:none}
.aca-intro-n2{grid-template-columns:repeat(2,1fr)}
.aca-intro-n3{grid-template-columns:repeat(3,1fr)}
.aca-intro-n4{grid-template-columns:repeat(4,1fr)}
/* 소개 카드 (v1.4.7 시안): 원형 숫자 배지 + 필 태그, hover 시 배경 확대·배지 색 반전 */
.aca-intro-card{position:relative;min-height:540px;border-radius:16px;overflow:hidden;background:#26272b;box-shadow:0 14px 34px -20px rgba(0,0,0,.35)}
.aca-intro-link{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:540px;padding:36px 30px;color:#fff;text-decoration:none}
.aca-intro-bg{position:absolute;inset:0;z-index:0;background:#26272b center/cover no-repeat;transition:transform .6s var(--aca-ease);will-change:transform}
.aca-intro-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,12,18,.15) 30%,rgba(10,12,18,.62) 100%)}
.aca-intro-card:hover .aca-intro-bg,.aca-intro-card:focus-within .aca-intro-bg{transform:scale(1.08)}
.aca-intro-meta{position:relative;display:flex;align-items:center;gap:12px;margin-bottom:16px}
.aca-intro-num{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--aca-intro-num-bg,#fff);color:var(--aca-intro-num-c,#111);font-size:15px;font-weight:700;transition:background-color .25s,color .25s}
.aca-intro-card:hover .aca-intro-num,.aca-intro-card:focus-within .aca-intro-num{background:var(--aca-primary);color:#fff}
.aca-intro-tag{display:inline-flex;align-items:center;padding:10px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(16,18,26,.32);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-style:normal;font-size:14px;font-weight:600;color:var(--aca-intro-tag-c,#fff);letter-spacing:.01em}
.aca-intro-title{position:relative;margin:0 0 14px;font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1.2;color:var(--aca-intro-title-c,#fff)}
.aca-intro-desc{position:relative;margin:0;font-size:15px;line-height:1.7;color:var(--aca-intro-desc-c,rgba(255,255,255,.85))}
/* ===== slider common ===== */
.aca-slider-ctrl{display:flex;align-items:center;gap:16px;margin-top:28px}
.aca-slider-ctrl .swiper-pagination{position:static;text-align:left}
.swiper-pagination-bullet{background:#c8c8c8;opacity:1}
.swiper-pagination-bullet-active{background:var(--aca-primary)}
.aca-slider-pause{border:1px solid var(--aca-line);background:#fff;border-radius:50%;width:34px;height:34px;font-size:13px;line-height:1;color:var(--aca-ink-soft)}
.aca-slider-pause[aria-pressed="true"] i::before{content:'▶'}
.aca-slider-pause i{font-style:normal}
/* ===== board(공지·세미나 복합) ===== */
.aca-board{background:#fff}
/* hover 부상(-4px) 시 보더가 overflow에 잘리지 않도록 클립 안전 여백 확보 */
.aca-board-slider.swiper{padding:10px;margin:-10px}
.aca-board-slider:not(.swiper-initialized) .swiper-wrapper{display:flex;gap:20px;overflow-x:auto;padding-bottom:8px}
.aca-board-slider:not(.swiper-initialized) .swiper-slide{flex:0 0 300px}
.aca-board-slider .swiper-wrapper{margin:0;padding:0;list-style:none}
.aca-board-card a{display:flex;flex-direction:column;gap:14px;height:100%;min-height:220px;padding:26px;border:1px solid var(--aca-line);border-radius:12px;background:#fff;color:inherit;text-decoration:none;transition:border-color .2s,transform .2s}
.aca-board-card a:hover{border-color:var(--aca-primary);transform:translateY(-4px)}
.aca-board-meta{display:flex;gap:8px;align-items:center}
.aca-board-type{font-style:normal;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--aca-primary)}
.aca-board-dday{font-style:normal;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--aca-primary);color:#fff}
.aca-board-subject{font-size:18px;font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aca-board-foot{margin-top:auto;display:flex;gap:14px;font-size:13px;color:#888}
.aca-board-card.is-seminar a{background:var(--aca-bg-soft)}
.aca-board-cta a{background:#1c1c1e;border-color:#1c1c1e;color:#fff;justify-content:center;align-items:flex-start}
.aca-board-cta a:hover{border-color:var(--aca-primary);background:var(--aca-primary)}
.aca-board-cta-title{font-size:22px;font-weight:800;line-height:1.4}
.aca-board-cta-arrow{font-size:26px}
/* ===== people ===== */
.aca-people{background:var(--aca-bg-soft)}
/* ===== responsive ===== */
@media (max-width:1024px){
.aca-sec{padding:64px 0}
.aca-sec-title{font-size:30px}
.aca-visual{min-height:88vh;padding-bottom:72px}
.aca-visual-inner{grid-template-columns:1fr;align-items:start;gap:28px}
.aca-intro-n3,.aca-intro-n4{grid-template-columns:repeat(2,1fr)}
.aca-intro-card,.aca-intro-link{min-height:440px}
}
@media (max-width:640px){
.aca-intro-n2,.aca-intro-n3,.aca-intro-n4{grid-template-columns:1fr}
.aca-intro-card,.aca-intro-link{min-height:280px}
}
@media (prefers-reduced-motion:reduce){
.aca-visual-scroll span::after{animation:none}
.aca-intro-card,.aca-intro-bg,.aca-intro-num,.aca-board-card a,.aca-btn,.aca-visual-slide{transition:none}
}
