/* Busan branch: editorial photography, live type, and restrained warm accents. */
.busan-banner{--bb-ink:#102b3c;--bb-cream:#fffaf2;--bb-accent:#e9b17d;position:relative;isolation:isolate;display:block;overflow:hidden;width:100%;box-sizing:border-box;background:#102b3c;border:1px solid #ffffff24;border-radius:18px;text-align:left;color:var(--bb-cream);font-family:inherit;box-shadow:0 8px 24px #102b3c12}
.busan-banner *, .busan-banner *::before,.busan-banner *::after{box-sizing:border-box}
.busan-banner .busan-banner__image{position:absolute;inset:0;z-index:-3;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.busan-banner__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(9,30,45,.93) 0%,rgba(9,30,45,.76) 41%,rgba(9,30,45,.25) 75%,rgba(9,30,45,.09) 100%)}
.busan-banner__copy{position:relative;z-index:1;padding:38px 44px 60px;max-width:77%}
.busan-banner .busan-banner__eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 18px;color:#f1d6b9;font-size:11px;line-height:1.5;font-weight:600;letter-spacing:.09em}
.busan-banner__eyebrow>span{display:inline-block;flex:0 0 17px;width:17px;height:2px;background:var(--bb-accent)}
.busan-banner .busan-banner__title{margin:0;color:#fffaf2;font-size:clamp(30px,3.5vw,46px);font-weight:750;line-height:1.2;letter-spacing:-.055em;word-break:keep-all;text-shadow:none}
.busan-banner__period{color:var(--bb-accent)}
.busan-banner .busan-banner__description{margin:16px 0 0;color:#f1ece5;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:-.015em;word-break:keep-all}
.busan-banner__mobile-break{display:none}
.busan-banner__actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 17px;margin-top:24px}
.busan-banner .busan-banner__action{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:42px;padding:10px 15px;border:1px solid #f4e3d1;border-radius:7px;background:#fffaf2;color:#173347;font-size:12px;line-height:1.5;font-weight:650;text-decoration:none;transition:background .15s,color .15s}
.busan-banner .busan-banner__action:hover{background:#f1d6b9;color:#102b3c}
.busan-banner .busan-banner__action--quiet{padding:10px 0;border-color:transparent;background:transparent;color:#fffaf2}
.busan-banner .busan-banner__action--quiet:hover{background:transparent;color:#f1d6b9}
.busan-banner .busan-banner__action:focus-visible{outline:3px solid #fff;outline-offset:4px}
.busan-banner__signature{position:absolute;bottom:18px;left:44px;right:30px;display:flex;justify-content:space-between;align-items:center;padding-top:11px;border-top:1px solid #fff3;color:#e8e3dd;font-size:9px;line-height:1.4;letter-spacing:.13em;z-index:1}
.mainSwiper .busan-banner--hero{min-height:366px;border-radius:18px}
.mainSwiper .slideItem:has(>.busan-banner--hero){border:0!important;border-radius:18px;background:transparent}
.kvWrap:has(.busan-banner--hero){border:0!important;border-radius:18px;box-shadow:none}
.mainSwiper:has(.busan-banner--hero){border:0!important;border-radius:18px}
.busan-banner--board{min-height:204px;margin:0 0 26px;border-radius:14px}
.busan-banner--board .busan-banner__image{object-position:center 56%}
.busan-banner--board .busan-banner__shade{background:linear-gradient(90deg,rgba(10,33,49,.97),rgba(10,33,49,.85) 45%,rgba(10,33,49,.31) 100%)}
.busan-banner--board .busan-banner__copy{padding:29px 34px 47px;max-width:86%}
.busan-banner--board .busan-banner__eyebrow{margin-bottom:12px;font-size:10px;letter-spacing:.15em}
.busan-banner--board .busan-banner__title{font-size:32px;line-height:1.25;letter-spacing:-.04em}
.busan-banner--board .busan-banner__description{margin-top:12px;font-size:13px;line-height:1.7}
.busan-banner__branch{position:absolute;left:34px;bottom:15px;color:#e9c8a4;font-size:10px;line-height:1.5;z-index:1}
@media(max-width:768px){
 .busan-banner,.mainSwiper .busan-banner--hero,.mainSwiper:has(.busan-banner--hero),.kvWrap:has(.busan-banner--hero){border-radius:13px}
 .mainSwiper .busan-banner--hero{min-height:365px}
 .busan-banner .busan-banner__image{object-position:65% center}
 .busan-banner__shade{background:linear-gradient(90deg,rgba(9,30,45,.92),rgba(9,30,45,.68) 68%,rgba(9,30,45,.38))}
 .busan-banner__copy{max-width:100%;padding:29px 25px 63px}
 .busan-banner .busan-banner__eyebrow{font-size:10px;letter-spacing:.025em;margin-bottom:19px;gap:7px}
 .busan-banner .busan-banner__title{font-size:clamp(28px,7.5vw,39px);line-height:1.23;letter-spacing:-.045em}
 .busan-banner .busan-banner__description{font-size:13px;line-height:1.75;margin-top:15px;max-width:85%}
 .busan-banner__mobile-break{display:block}
 .busan-banner__actions{margin-top:20px;gap:8px 13px}
 .busan-banner .busan-banner__action{font-size:11px;gap:13px;min-height:40px;padding:9px 12px}
 .busan-banner .busan-banner__action--quiet{padding-left:0;padding-right:0}
 .busan-banner__signature{left:25px;right:25px;bottom:16px;font-size:8px;letter-spacing:.06em}
 .busan-banner--board{min-height:190px;margin-bottom:20px}
 .busan-banner--board .busan-banner__copy{padding:25px 24px 46px;max-width:100%}
 .busan-banner--board .busan-banner__eyebrow{font-size:9px;margin-bottom:12px}
 .busan-banner--board .busan-banner__title{font-size:28px}
 .busan-banner--board .busan-banner__description{max-width:90%;font-size:12px;line-height:1.7;margin-top:11px}
 .busan-banner__branch{left:24px;bottom:14px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.busan-banner .busan-banner__action{transition:none}}

/* The existing transparent logo is 1064x206. Reuse its exact alpha edges
   only in the lower-center wordmark area; SK, Busan and ON stay untouched.
   A future administrator-uploaded logo does not match this selector. */
.header .logo-image:has(>img[src*="/data/logo/logo_1769691549.png"]){position:relative}
html[data-theme="dark"] .header .logo-image:has(>img[src*="/data/logo/logo_1769691549.png"])::after{
 content:"";position:absolute;inset:0;pointer-events:none;background:#fffaf2;
 clip-path:inset(61% 22% 0 20%);
 -webkit-mask-image:url('/data/logo/logo_1769691549.png');
 -webkit-mask-position:center;-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat;
 mask-image:url('/data/logo/logo_1769691549.png');mask-mode:alpha;
 mask-position:center;mask-size:100% 100%;mask-repeat:no-repeat;
}
