.hero-art img{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}.hero-art img:first-child{opacity:1}.hero-art.is-ready img{opacity:0}.hero-art.is-ready img.is-active{opacity:1}.hero-controls{display:flex;align-items:center;gap:9px;margin-top:30px;position:relative;z-index:3;width:max-content;max-width:100%;padding:5px 8px;background:#f5f7fcee;border:1px solid #d9e3f0}.hero-controls[hidden]{display:none}.hero-controls>button{min-height:38px;min-width:38px;font-size:19px}.hero-controls>button:hover{color:var(--red);background:#e7effa}#hero-count{font-size:13px;letter-spacing:.05em;font-variant-numeric:tabular-nums;white-space:nowrap}#hero-dots{display:flex;align-items:center;gap:1px;padding:0 6px;border-left:1px solid var(--line)}#hero-dots button{width:27px;height:36px;display:grid;place-items:center;padding:0}#hero-dots button::before{content:'';width:6px;height:6px;border:1px solid #6f7e9c;border-radius:50%;transition:width .2s}#hero-dots button[aria-current=true]::before{width:20px;border-radius:5px;background:var(--red);border-color:var(--red)}#hero-pause{font-size:12px;min-width:66px;border-left:1px solid var(--line);padding:0 9px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-copy h1{min-height:2.9em}#hero-description{min-height:3.8em}.hero .vertical-note{display:none}
@media(max-width:560px){.hero-controls{gap:3px;margin-top:20px;padding:3px 4px}#hero-dots{padding:0 3px}#hero-count{font-size:12px}#hero-pause{min-width:62px;font-size:12px}.hero-art{top:325px}.hero,.hero-inner{min-height:675px}}
@media(prefers-reduced-motion:reduce){.hero-art img,#hero-dots button::before{transition:none}}
/* Full-width rolling banner: imagery fills the viewport, copy overlays it. */
.hero{background:#292663;min-height:clamp(560px,42vw,720px);color:#fff}.hero-inner{min-height:clamp(560px,42vw,720px);align-items:center}.hero .hero-art{inset:0;opacity:1}.hero .hero-art img{width:100%;height:100%;object-fit:cover}.hero .hero-art::after{background:linear-gradient(90deg,rgba(18,22,55,.78) 0%,rgba(18,22,55,.58) 35%,rgba(18,22,55,.13) 72%,rgba(18,22,55,.05) 100%)}.hero-copy{width:58%;padding:62px 0;max-width:730px}.hero-copy>.eyebrow{color:#f2f5fc}.hero .red-line{background:#93dafa}.hero-copy h1{color:#fff;text-shadow:0 2px 16px #0002}.hero-copy h1 em{color:#93dafa}.hero-copy>p{color:#f1f5fc}.hero .text-link{color:white;border-bottom-color:#ffffff80}.hero-controls{color:white;background:#29266380;border-color:#ffffff50;backdrop-filter:blur(8px)}.hero-controls>button:hover{background:#ffffff20;color:white}#hero-dots,#hero-pause{border-left-color:#ffffff40}#hero-dots button::before{border-color:#ffffffa0}#hero-dots button[aria-current=true]::before{background:#fff;border-color:#fff}
@media(max-width:850px){.hero,.hero-inner{min-height:570px}.hero-copy{width:80%;padding:50px 0}.hero .hero-art::after{background:linear-gradient(90deg,#121637cc,#12163755)}}
@media(max-width:560px){.hero,.hero-inner{min-height:610px}.hero-copy{width:100%;padding:45px 0}.hero .hero-art{inset:0}.hero .hero-art::after{background:linear-gradient(90deg,#121637d9,#12163780)}.hero-copy h1{font-size:41px}.hero-copy>p{font-size:15px}.hero-controls{margin-top:28px}}
.hero.content-driven .hero-copy h1{font-size:clamp(28px,3.2vw,46px);line-height:1.5;word-break:keep-all;overflow-wrap:anywhere;letter-spacing:-.04em}.hero.content-driven .hero-copy{max-width:780px;width:64%}.hero.content-driven .hero-copy>.eyebrow{font-size:15px;letter-spacing:.1em}.hero.content-driven .hero-copy>p:not(.eyebrow){font-size:16px}
@media(max-width:650px){.hero.content-driven .hero-copy{width:100%}.hero.content-driven .hero-copy h1{font-size:28px}.hero.content-driven .hero-copy>p:not(.eyebrow){font-size:14px}}

/* Hero title typography, shared by automatic and manual slides. */
.hero .hero-copy #hero-title{font-family:"Noto Sans KR",sans-serif;font-weight:700;font-size:clamp(28px,3.2vw,46px);line-height:1.45;word-break:keep-all;overflow-wrap:anywhere;letter-spacing:-.035em}
.hero[data-title-font="serif"] .hero-copy #hero-title{font-family:"Noto Serif KR",serif}
.hero[data-title-size="small"] .hero-copy #hero-title{font-size:clamp(25px,2.8vw,38px)}
.hero[data-title-size="large"] .hero-copy #hero-title{font-size:clamp(32px,4vw,56px)}
.hero .hero-copy #hero-title em{font-family:inherit;font-weight:inherit;font-style:normal}
@media(max-width:650px){.hero .hero-copy #hero-title{font-size:28px}.hero[data-title-size="small"] .hero-copy #hero-title{font-size:25px}.hero[data-title-size="large"] .hero-copy #hero-title{font-size:32px}}

