/* ============================================
   DAEHAN TAEKWONDO - Landing Page Styles
   Matches original site: dhtkd.co.nz
   ============================================ */

/* === HERO SLIDER === */
.hero-slider{position:relative;height:100vh;min-height:500px;overflow:hidden}
.slider-track{position:relative;width:100%;height:100%}
.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease-in-out}
.slide.active{opacity:1}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.hero-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;text-align:center;padding:20px}
.hero-title{font-family:'Montserrat',sans-serif;font-size:clamp(28px,5vw,48px);font-weight:500;color:#fff;letter-spacing:3px;line-height:1.2;margin-bottom:30px;text-transform:uppercase}
.btn-hero{display:inline-block;background:#ec3642;color:#fff;padding:12px 36px;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;letter-spacing:2px;border:none;cursor:pointer;transition:background .3s,transform .3s;text-transform:uppercase}
.btn-hero:hover{background:#d42e3a;transform:translateY(-2px)}
.slider-dots{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:10px}
.dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:background .3s}
.dot.active{background:#ec3642}

/* === WHY CHOOSE DAEHAN TKD (#805) === */
.why-choose{max-width:820px;margin:0 auto 40px;text-align:center}
/* #809: 300x206 소형 스톡 사진 → 1624x969 야외 심사 단체사진으로 교체되면서
   300px 로는 인물 식별이 안 되어 표시 폭을 넓힌다. */
.why-choose img{max-width:620px;width:100%;height:auto;margin-bottom:24px;border-radius:6px}
.why-choose p{font-size:13px;color:#555;line-height:1.9;margin:0 0 14px}
.why-choose p:last-child{margin-bottom:0}
.why-choose strong{color:#333;font-weight:700}

/* === MEET OUR LEADERSHIP TEAM (#804, 기존 OUR MASTERS #755 대체) === */
.leader-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:10px;align-items:start}
.leader-card{background:#fff;border:1px solid #eee;border-top:3px solid #ec3642;border-radius:6px;box-shadow:0 2px 12px rgba(0,0,0,.06);padding:28px 26px;transition:transform .3s,box-shadow .3s}
.leader-card:hover{transform:translateY(-5px);box-shadow:0 10px 28px rgba(0,0,0,.14)}
.leader-rank{display:inline-block;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:1.5px;color:#ec3642;margin-bottom:10px}
.leader-name{font-family:'Montserrat',sans-serif;font-size:20px;font-weight:700;color:#333;margin:0 0 6px}
.leader-role{font-size:13px;font-weight:600;color:#888;margin:0 0 14px}
.leader-desc{font-size:13px;color:#666;line-height:1.9;margin:0}
.leader-quote{margin:16px 0 0;padding:14px 16px;background:#f9f9f9;border-left:3px solid #ec3642;font-size:13px;color:#555;line-height:1.8;font-style:italic}
.leader-kr-title{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;letter-spacing:.5px;color:#333;margin:20px 0 8px;text-transform:uppercase}
.leader-kr{list-style:none;padding:0;margin:0}
.leader-kr li{font-size:13px;color:#666;line-height:1.9;position:relative;padding-left:16px}
.leader-kr li::before{content:'';position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:#ec3642}

/* Pre-Master Instructor Pathway (#804) */
.pathway{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-top:36px}
.pathway-block{background:#f9f9f9;border-left:4px solid #ec3642;padding:26px 28px}
.pathway-block h4{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:700;color:#555;margin:0 0 12px}
.pathway-block p{font-size:13px;color:#666;line-height:1.9;margin:0 0 10px}
.pathway-block p:last-child{margin-bottom:0}
.pathway-block p.pathway-names{font-family:'Montserrat',sans-serif;font-weight:700;color:#ec3642;letter-spacing:.5px}
.pathway-tagline{text-align:center;margin:28px 0 0;font-family:'Montserrat',sans-serif;font-size:15px;font-weight:700;color:#555;letter-spacing:1px}
.pathway-tagline span{display:block;font-size:13px;font-weight:400;color:#999;letter-spacing:0;margin-top:6px}

/* === OUR EXPERTISE (#804) === */
.expertise-intro{max-width:820px;margin:0 auto 36px;text-align:center;font-size:14px;color:#555;line-height:1.9}
.expertise-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
/* #812: 카드 상단에 사진을 full-bleed 로 넣기 위해 카드 padding 을 제거하고
   본문은 .expertise-body 로 감싼다. 사진은 3:2 비율로 미리 크롭해 둔 것을 사용한다. */
.expertise-card{flex:0 1 340px;background:#fff;border:1px solid #eee;border-radius:6px;box-shadow:0 2px 12px rgba(0,0,0,.06);padding:0;overflow:hidden;transition:transform .3s,box-shadow .3s}
.expertise-card:hover{transform:translateY(-5px);box-shadow:0 10px 28px rgba(0,0,0,.14)}
.expertise-photo{display:block;width:100%;height:auto}
.expertise-body{padding:22px 26px 26px}
.expertise-no{display:block;font-family:'Montserrat',sans-serif;font-size:22px;font-weight:700;color:#ec3642;opacity:.35;line-height:1}
.expertise-card h4{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#555;margin:8px 0 14px}
.expertise-card ul{list-style:none;padding:0;margin:0}
.expertise-card li{font-size:13px;color:#666;line-height:1.9;position:relative;padding-left:16px}
.expertise-card li::before{content:'';position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:#ec3642}

/* === SECTION EMBLEM next to Info titles (#761) === */
.section-emblem{display:block;height:84px;width:auto;margin:0 auto 16px}

/* === COMPACT VIDEO LIST (#756) === */
.video-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1000px;margin:0 auto}
.video-list.single{grid-template-columns:minmax(0,320px);justify-content:center}
.video-item{background:#fff;border:1px solid #eee;border-radius:6px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.06);display:flex;flex-direction:column}
.video-item .vid-frame{position:relative;padding-bottom:56.25%;height:0;background:#000}
.video-item .vid-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-item .vid-body{padding:16px}
.video-item h4{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:700;color:#555;margin:0 0 8px}
.video-item p{font-size:12px;color:#777;line-height:1.7;margin:0}
@media(max-width:768px){.video-list{grid-template-columns:1fr;max-width:420px}}

/* === BRANCH TIMETABLE & PRICE (#757) === */
.branch-timetable{text-align:center;margin:0 auto 40px}
.branch-timetable img{max-width:100%;height:auto;border:1px solid #eee;border-radius:6px;box-shadow:0 4px 18px rgba(0,0,0,.08)}
.price-wrap{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;align-items:start}
.price-wrap.single{grid-template-columns:minmax(0,640px);justify-content:center}
.price-block{background:#fff;border:1px solid #eee;border-radius:6px;box-shadow:0 2px 12px rgba(0,0,0,.06);padding:28px}
.price-title{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#ec3642;text-align:center;margin-bottom:20px;letter-spacing:1px}
.price-scroll{overflow-x:auto}
.price-table{width:100%;border-collapse:collapse;font-size:13px;color:#444}
.price-table th,.price-table td{border:1px solid #eee;padding:12px 10px;text-align:center;vertical-align:middle}
.price-table thead th{background:#2d2d2d;color:#fff;font-family:'Montserrat',sans-serif;font-weight:700;line-height:1.4}
.price-table thead th span{display:block;font-size:11px;font-weight:400;color:rgba(255,255,255,.75);margin-top:4px}
.price-table tbody th{background:#f7f7f7;font-weight:700;color:#333;text-align:left}
.price-table tbody th small{font-weight:400;color:#888}
.price-table tbody td{font-weight:600;color:#ec3642}
.price-note{font-size:11px;color:#999;margin-top:14px;line-height:1.7}

/* === UPCOMING EVENT: member badge + poster (#758) === */
.event-badge{display:inline-block;background:#ec3642;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:3px;margin-right:8px;vertical-align:middle;letter-spacing:.5px}
.event-badge i{font-size:10px;margin-right:3px}
.event-poster{margin-top:14px}
.event-poster img{max-width:300px;width:100%;border:1px solid #eee;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.08);display:block}
.event-poster-pdf{display:inline-flex;align-items:center;gap:8px;background:#f7f7f7;border:1px solid #e5e5e5;border-radius:6px;padding:8px 14px;font-size:13px;color:#c0392b;font-weight:600}
.event-poster-pdf:hover{background:#fdeaea}

/* === LANDING RESPONSIVE ===
   폭이 좁은 쪽 규칙이 뒤에 오도록 992 -> 768 -> 480 순서를 지킨다.
   (같은 특이도이므로 순서가 뒤바뀌면 넓은 쪽 규칙이 좁은 쪽을 덮어쓴다) */
@media(max-width:992px){
    .leader-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
    .hero-slider{min-height:400px;height:60vh}
    .hero-title{font-size:24px}
    .leader-grid{grid-template-columns:1fr;max-width:420px;margin:10px auto 0}
    .pathway{grid-template-columns:1fr}
    .expertise-card{flex:1 1 100%}
    .price-wrap{grid-template-columns:1fr}
}
@media(max-width:480px){
    .hero-slider{min-height:350px;height:50vh}
    .hero-title{font-size:20px}
}
