@charset "utf-8";
/* =====================================================
   1:1 전문가 미팅 신청 — meeting/css/meeting.css
   ===================================================== */
.reveal {opacity:0; transform:translateY(28px); transition:opacity .7s ease, transform .7s ease;}
.reveal.on {opacity:1; transform:none;}

/* 스크롤 감지 없이 페이지 로드 시 바로 실행 (인트로와 함께) */
.reveal-now {animation:revealUp .7s ease both;}
@keyframes revealUp {from {opacity:0; transform:translateY(28px);} to {opacity:1; transform:none;}}

.note-line {margin:0 0 20px; font-size:var(--fs16); color:#999;}
.note-line b {color:var(--c_base1);}

/* ── 상단 인트로 (전체 폭 #f7f7f7 배경 + 내부 w1600) ── */
.mt-intro-sec {width:100%;border: 1px solid #111; padding:80px; box-shadow: 40px 40px 40px 0 rgba(0, 0, 0, 0.08);}
.mt-intro {display:flex; gap:70px; align-items:flex-start;}
.mt-intro-l {flex:0 0 260px;}
.mt-intro-l .eyebrow {display:inline-block; font-size:var(--fs14); font-weight:700; letter-spacing:.12em; color:var(--c_base1); text-transform:uppercase;}
.mt-intro-l .mt-title {font-size:var(--fs30); font-weight:800; color:#111; letter-spacing:-.02em; line-height:1.18;}
.mt-intro-l .mt-bar {display:block; width:64px; height:4px; background:var(--c_base1); margin-top:24px;}

.mt-intro-r {flex:1; min-width:0;}
.mt-intro-r .mt-desc {font-size:var(--fs16); line-height:1.85; color:#555;}
.mt-intro-r .mt-desc + .mt-desc {margin-top:14px;}

.mt-meta {margin-top:32px; padding-top:28px; border-top:1px dashed var(--border1); display:flex; flex-wrap:wrap; gap:18px 40px;}
.mt-meta-item {display:flex; align-items:center; gap:14px;}
.mt-meta-item dt {display:inline-flex; align-items:center; gap:6px; height:34px; padding:0 16px; border-radius:20px; background:var(--c_base1); color:#fff; font-size:var(--fs14); font-weight:700; flex:0 0 auto;}
.mt-meta-item dd {font-size:var(--fs16); font-weight:600; color:#111;}
.mt-meta-item .ic {width:18px; height:18px; background:center/contain no-repeat;}
.mt-meta-item .ic-time {background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 7v5l3 2'/></svg>");}
.mt-meta-item .ic-place {background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21s7-6.4 7-11a7 7 0 0 0-14 0c0 4.6 7 11 7 11z'/><circle cx='12' cy='10' r='2.5'/></svg>");}

/* ── 타임테이블 섹션 (좌: 스티키 대제목 / 우: 표) ── */
.tt-section {display:flex; gap:70px; align-items:stretch;}
.tt-left {flex:0 0 260px;}
.tt-sticky {position:sticky; top:100px;}
.tt-sticky .eyebrow {display:inline-block; font-size:var(--fs14); font-weight:700; letter-spacing:.12em; color:var(--c_base1); text-transform:uppercase;}
.tt-sticky .tt-title {margin-top:14px; font-size:var(--fs36); font-weight:800; color:#111; letter-spacing:-.02em; line-height:1.2;}
.tt-sticky .tt-bar {display:block; width:64px; height:4px; background:var(--c_base1); margin-top:24px;}
.tt-right {flex:1; min-width:0;}
.tt-right .note-line {margin-top:0;}

/* 타임테이블 */
.tt-scroll {width:100%; overflow-x:auto;}
.tt-table {min-width:920px;}
.tt-table .col-spk {width:190px; background:var(--bg1);}
.tt-table thead .col-spk {text-align:center;}
.tt-table td, .tt-table th {white-space:nowrap;}
.tt-table th.col-spk {vertical-align:middle;}
.tt-table tbody .col-spk {padding:14px 16px;}
.tt-table .spk-no {display:inline-block; width:26px; height:26px; line-height:26px; text-align:center; border-radius:50%; background:var(--c_base1); color:#fff; font-size:var(--fs13); font-weight:700; margin-right:8px;}
.tt-table .spk-nm {font-size:var(--fs15); font-weight:700; color:#1a1a1a;}
.tt-table .spk-more {display:block; margin-top:2px; font-size:var(--fs13); font-weight:600; color:#111; text-decoration:underline; text-underline-offset:2px; width: 100%;}
.tt-table .spk-more:hover {color:var(--c_base1);}

.apply-btn {display:inline-flex; align-items:center; justify-content:center;  color:#111; font-size:var(--fs14); font-weight:600; transition:all .2s;}
.apply-btn:hover {color: var(--c_base1);}
.slot-x {display:inline-block; font-size:var(--fs14); color:#bbb;}

/* 12인 전문가 소개 */
.spk-grid {display:grid; grid-template-columns:repeat(4, 1fr); gap:22px;}
.spk-card {border:1px solid var(--border1); border-radius:14px; overflow:hidden; background:#fff; transition:all .25s;}
.spk-card:hover {box-shadow:0 12px 28px rgba(0,0,0,.1); transform:translateY(-4px);}
.spk-photo {aspect-ratio:5/6; overflow:hidden; background:var(--bg1);}
.spk-photo img {width:100%; height:100%; object-fit:cover; display:block;}
.spk-body {padding:20px 22px 22px;}
.spk-country {margin-top:10px; display:inline-block; padding:4px 12px; border-radius:14px; background:var(--bg1); font-size:var(--fs14); font-weight:700; color:var(--c_base1);}
.spk-org {margin-top:12px; font-size:var(--fs14); color:#888;}
.spk-name {font-size:var(--fs20); font-weight:800; color:#1a1a1a; line-height:1.2;}
.spk-name small {font-size:var(--fs16);color:#666; font-weight:500; display:inline-block;}
.spk-more2 {margin-top:14px; font-size:var(--fs13); font-weight:600; color:#111; text-decoration:underline; text-underline-offset:2px;}
.spk-more2:hover {color:var(--c_base1);}

/* ============ 레이어팝업 ============ */
.m-dim {display:none; position:fixed; inset:0; background:rgba(0,0,0,.55); z-index:99998;}
.m-dim.on {display:block;}
.m-layer {display:none; position:fixed; left:50%; top:50%; transform:translate(-50%,-46%); width:520px; max-width:92vw; max-height:86vh; overflow:hidden; background:#fff; border-radius:10px; box-shadow:0 30px 60px rgba(0,0,0,.3); z-index:99999; opacity:0; transition:opacity .25s ease, transform .25s ease;}
.m-layer.on {display:block; transform:translate(-50%,-50%); opacity:1;}
.m-layer-head {display:flex; align-items:center; justify-content:space-between; padding:16px 24px; background:#232323; color:#fff;}
.m-layer-head span {font-size:var(--fs18); font-weight:700;}
.m-layer-head .m-close {position:relative; width:26px; height:26px;}
.m-layer-head .m-close::before, .m-layer-head .m-close::after {content:''; position:absolute; left:50%; top:50%; width:18px; height:2px; background:#fff;}
.m-layer-head .m-close::before {transform:translate(-50%,-50%) rotate(45deg);}
.m-layer-head .m-close::after {transform:translate(-50%,-50%) rotate(-45deg);}
.m-layer-body {padding:26px 28px; overflow-y:auto; max-height:calc(86vh - 66px);}

/* 연사 소개 내용 */
.ms-top {display:flex; gap:20px; align-items:center;}
.ms-photo {flex:0 0 108px; width:108px; height:130px; border-radius:10px; overflow:hidden; background:var(--bg1);}
.ms-photo img {width:100%; height:100%; object-fit:cover;}
.ms-country {display:inline-block; padding:4px 12px; border-radius:14px; background:var(--bg1); font-size:var(--fs12); font-weight:700; color:var(--c_base1);}
.ms-name {margin-top:10px; font-size:var(--fs24); font-weight:800; color:#1a1a1a;}
.ms-org {margin-top:6px; font-size:var(--fs15); color:#777;}
.ms-desc {margin-top:22px; padding-top:20px; border-top:1px solid var(--border1);}
.ms-desc p {font-size:var(--fs15); color:#666; line-height:1.7;}
.ms-tags {display:flex; flex-wrap:wrap; gap:8px; margin-top:16px;}
.ms-tags li {padding:6px 14px; border-radius:16px; background:var(--bg1); font-size:var(--fs13); font-weight:600; color:#111;}

/* 신청 폼 */
.m-apply-info {padding:14px 18px; background:var(--bg1); border-radius:10px; font-size:var(--fs15); font-weight:700; color:var(--c_base1); text-align:center;}
.m-form {margin-top:20px; display:flex; flex-direction:column; gap:16px;}
.m-form .fld {display:flex; flex-direction:column; gap:8px;}
.m-form label {font-size:var(--fs14); font-weight:700; color:#333;}
.m-form label em {color:#111; font-style:normal;}
.m-form input {height:50px; padding:0 16px; border:1px solid var(--border1); border-radius:10px; font-size:var(--fs15); color:#333; transition:border-color .2s;}
.m-form input:focus {outline:none; border-color:var(--c_base1);}
.m-form .btn {margin-top:6px;}
.privacy-box {max-height:140px; overflow-y:auto; padding:14px 16px; border:1px solid var(--border1); border-radius:10px; background:#fafafa; font-size:var(--fs13); color:#555; line-height:1.6;}
.privacy-box p {margin:0 0 10px;}
.privacy-box p:last-child {margin-bottom:0;}
.privacy-box b {display:inline-block; margin-bottom:2px; color:#222; font-weight:700;}
.privacy-agree {display:flex; align-items:center; gap:8px; margin-top:10px; cursor:pointer; font-size:var(--fs14); font-weight:600; color:#333;}
.privacy-agree input[type="checkbox"] {width:18px; height:18px; margin:0; accent-color:var(--c_base1); cursor:pointer;}
.privacy-agree span em {color:#c00; font-style:normal;}


/* ── 태블릿 (~1199px) ── */
@media screen and (max-width: 1199px) {
	/* .meeting-page {padding:100px 30px 0;} */
	.mt-intro-sec {padding:56px 30px;}
	.mt-intro {gap:40px;}
	.mt-intro-l {flex-basis:240px;}
	.mt-intro-l .mt-title {font-size:var(--fs40);}
	
	.tt-left {flex:0;}
	.tt-section {flex-direction:column; gap:24px;}
	.tt-sticky {position:static;}
	.tt-sticky .tt-title br {display:none;}
	.spk-grid {grid-template-columns:repeat(3, 1fr);}
}

/* ── 모바일 (~767px) ── */
@media screen and (max-width: 767px) {
	.mt-intro-sec {padding:44px 20px;}
	.mt-intro {flex-direction:column; gap:24px;}
	.mt-intro-l {flex-basis:auto;}
	.mt-intro-l .mt-title {font-size:var(--fs36);}
	.mt-intro-l .mt-title br {display:none;}
	.mt-intro-l .mt-bar {margin-top:18px;}
	.mt-meta {gap:14px;}
	.mt-meta-item {flex-wrap:wrap; gap:8px 12px;}
	.spk-grid {grid-template-columns:repeat(2, 1fr); gap:14px;}
	.spk-body {padding:16px;}
	.m-layer-body {padding:22px 20px;}
	.ms-top {gap:14px;}
	.ms-photo {flex-basis:88px; width:88px; height:106px;}
}
