.res-poster{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;padding:18px 20px;text-align:left;color:#fff;background:linear-gradient(135deg,#0F2A5F 0%,#1B4B9B 70%,#2F6FE4 100%)}
.res-poster::before{content:"";position:absolute;right:-30px;top:-30px;width:150px;height:150px;border-radius:50%;background:rgba(255,198,41,.16)}
.res-poster::after{background:none}
.res-poster.rp-up{background:linear-gradient(135deg,#7A2E00 0%,#C24E00 60%,#EB6100 100%)}
.rp-tag{position:relative;display:inline-block;padding:4px 12px;border-radius:999px;background:var(--yellow);color:var(--navy);font-size:12px;font-weight:800}
.rp-big{position:relative;font-size:44px;line-height:1.1;font-weight:800;letter-spacing:-1px;color:#fff;font-variant-numeric:tabular-nums}
.rp-big small{font-size:16px;font-weight:700;letter-spacing:0;color:#DCE7FF;margin-right:2px}
.rp-big i{font-style:normal;color:var(--yellow);margin:0 4px}
.rp-sub{position:relative;font-size:13px;line-height:1.5;color:#DCE7FF;max-width:78%}
.res-poster .vid-play{left:auto;right:18px;top:auto;bottom:18px;margin:0;width:52px;height:52px}
.res-poster .vid-play::before{left:21px;top:15px;border-left-width:16px;border-top-width:11px;border-bottom-width:11px}
.res-poster .vid-time{display:none}

.res-row{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px;align-items:stretch}
.res-board{margin:0;border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(18,48,107,.10);overflow:hidden;display:flex;flex-direction:column}
.res-board img{display:block;width:100%;height:auto;background:#111}
.res-board figcaption{padding:14px 18px 18px;font-size:15px;font-weight:800;color:var(--navy)}
.res-board figcaption span{font-size:13px;font-weight:500;color:var(--sub2)}
.res-news{display:grid;grid-template-rows:1fr 1fr;gap:20px;min-width:0}
.res-card{display:flex;flex-direction:column;gap:6px;justify-content:center;padding:20px 22px;border-radius:18px;background:var(--sky2);min-width:0}
.res-card .tag{align-self:flex-start;font-size:12px;font-weight:800;color:var(--navy);background:var(--yellow);border-radius:999px;padding:3px 11px}
.res-card h3{margin:0;font-size:19px;line-height:1.4;font-weight:800;color:var(--navy)}
.res-card p{font-size:14px;line-height:1.7;color:var(--sub)}
.res-card b{font-size:14px;color:var(--blue)}
.res-pass{background:linear-gradient(135deg,#FFF6D6,#FFFBEA)}
.res-link{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}
.res-note{margin:0;font-size:13px;line-height:1.8;color:var(--sub2)}

@media (hover:hover){
  .res-link:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(18,48,107,.16)}
  .res-poster:hover .rp-big{transform:scale(1.04)}
  .res-board:hover img{transform:none}
}
.rp-big{transition:transform .35s cubic-bezier(.2,.7,.2,1);transform-origin:left center}

@media (max-width:1000px){.res-row{grid-template-columns:1fr}.res-news{grid-template-rows:none;grid-template-columns:1fr 1fr}}
@media (max-width:760px){
  .res-news{grid-template-columns:1fr}
  .rp-big{font-size:38px}
  .res-poster{padding:16px 18px}
  .res-board figcaption{font-size:14px}
}

/* 태블릿 폭: 메뉴 항목이 늘어도 한 줄에 들어가도록 */
@media (min-width:761px) and (max-width:1060px){
  .header-in{gap:6px 10px;padding:8px 14px;flex-wrap:nowrap!important}
  .logo{gap:6px;flex:none}
  .logo b{font-size:20px}
  .logo span{font-size:12px}
  .nav{gap:0;font-size:14px;flex-wrap:nowrap}
  .nav a{padding:0 8px;white-space:nowrap}
  .nav a.cta{padding:0 14px;margin-left:4px}
}
