/* ========================================
팀배너
======================================== */
.team-banner{
max-width: 1100px;
margin:80px auto 80px;
padding:36px;
border-radius:28px;
background:linear-gradient(135deg,#f8fbff 0%,#ffffff 100%);
border:1px solid #e6ebf2;
box-shadow:0 10px 30px rgba(15,23,42,.05);
}

.team-banner-inner{
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
}

.team-banner-text{
max-width:600px;
}

.team-banner-eyebrow{
display:inline-flex;
align-items:center;
height:30px;
padding:0 12px;
border-radius:999px;
background:#eff6ff;
border:1px solid #bfdbfe;
color:#2c7be5;
font-size:12px;
font-weight:800;
}

.team-banner-title{
margin:14px 0 10px;
font-size:26px;
font-weight:800;
color:#111;
letter-spacing:-.02em;
}

.team-banner-desc{
margin:0;
font-size:15px;
color:#667085;
line-height:1.6;
}

.team-banner-action{
flex-shrink:0;
}

.team-banner-btn{
display:inline-flex;
align-items:center;
justify-content:center;
height:54px;
padding:0 24px;
border-radius:16px;
background:#2c7be5;
color:#fff;
font-size:15px;
font-weight:800;
text-decoration:none;
transition:all .2s ease;
}

.team-banner-btn:hover{
background:#1f5fd1;
}

@media (max-width:768px){
.team-banner{
margin:60px 16px;
}

.team-banner-inner{
flex-direction:column;
align-items:flex-start;
}

.team-banner-action{
width:100%;
}

.team-banner-action .btn{
width:100%;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
height:56px;
border-radius:14px;
font-size:16px;
font-weight:700;
}
}


/* ================================
강습이력 배너
================================ */
.history-banner-wrap{
padding:72px 0;
}
.history-banner-box{
max-width:1320px;
margin:0 auto;
padding:0 24px;
}
.history-banner__inner{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(420px,560px);
gap:48px;
align-items:center;
padding:56px;
border-radius:36px;
background:#f8fafc;
border:1px solid #e2e8f0;
box-shadow:0 20px 50px rgba(15,23,42,.06);
overflow:hidden;
}
.history-banner__content{
max-width:560px;
}
.history-banner__eyebrow{
display:inline-flex;
align-items:center;
height:34px;
padding:0 14px;
border-radius:999px;
background:#eff6ff;
color:#2c7be5;
font-size:14px;
font-weight:800;
letter-spacing:-0.02em;
}
.history-banner__title{
margin:18px 0 14px;
font-size:40px;
line-height:1.2;
letter-spacing:-0.04em;
font-weight:900;
color:#111827;
word-break:keep-all;
}
.history-banner__desc{
margin:0;
font-size:18px;
line-height:1.7;
color:#64748b;
word-break:keep-all;
}
.history-banner__actions{
margin-top:30px;
display:flex;
align-items:center;
gap:12px;
}
.history-banner__btn{
display:inline-flex;
align-items:center;
justify-content:center;
height:56px;
padding:0 26px;
border-radius:16px;
background:#0f172a;
color:#fff;
font-size:17px;
font-weight:800;
text-decoration:none;
box-shadow:0 14px 30px rgba(15,23,42,.16);
transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.history-banner__btn:hover{
background:#020617;
color:#fff;
transform:translateY(-2px);
box-shadow:0 18px 34px rgba(15,23,42,.2);
}
.history-banner__visual{
position:relative;
}
.history-banner__thumb{
display:block;
padding:16px;
border-radius:30px;
background:linear-gradient(180deg,#ffffff 0%,#eef2f7 100%);
box-shadow:0 28px 60px rgba(15,23,42,.12);
text-decoration:none;
transition:transform .25s ease,box-shadow .25s ease;
}
.history-banner__thumb:hover{
transform:translateY(-4px);
box-shadow:0 34px 70px rgba(15,23,42,.18);
}
.history-banner__thumb img{
display:block;
width:100%;
height:auto;
border-radius:20px;
box-shadow:0 10px 24px rgba(15,23,42,.08);
}
@media (max-width:1024px){
.history-banner-wrap{
padding:60px 0;
}
.history-banner-box{
padding:0 24px;
}
.history-banner__inner{
grid-template-columns:1fr;
gap:28px;
padding:40px;
}
.history-banner__content{
max-width:none;
}
.history-banner__title{
font-size:36px;
}
.history-banner__desc{
font-size:17px;
}
.history-banner__visual{
max-width:760px;
width:100%;
}
}
@media (max-width:768px){
.history-banner-wrap{
padding:46px 0;
}
.history-banner-box{
padding:0 16px;
}
.history-banner__inner{
gap:22px;
padding:24px;
border-radius:24px;
}
.history-banner__eyebrow{
height:30px;
padding:0 12px;
font-size:12px;
}
.history-banner__title{
margin:14px 0 10px;
font-size:28px;
line-height:1.28;
}
.history-banner__desc{
font-size:15px;
line-height:1.65;
}
.history-banner__actions{
margin-top:22px;
}
.history-banner__btn{
width:100%;
height:50px;
padding:0 18px;
border-radius:14px;
font-size:15px;
}
.history-banner__thumb{
padding:10px;
border-radius:22px;
}
.history-banner__thumb img{
border-radius:14px;
}
}
