/* V8 · 아트 디렉션: 세 장의 역할 사진을 직접 탐색하는 홈 화면 */
#landing .hero-frame{grid-template-columns:minmax(0,52%) minmax(0,48%);min-height:595px;background:linear-gradient(120deg,#111310 10%,#1c1919 62%,#080a0a 100%)}
#landing .hero-copy{padding:75px 20px 65px clamp(28px,4.5vw,68px);align-self:center}
#landing .hero-copy h1{font-size:clamp(64px,7vw,112px);margin:0 0 10px}
#landing .hero-overline{margin:0 0 8px}
#landing .hero-sentence{margin:32px 0 19px}
#landing .hero-cta{margin-top:37px}
#landing .hero-art{min-width:0;min-height:595px;pointer-events:auto;isolation:isolate;transform:none!important}
#landing .hero-art::before{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background:linear-gradient(90deg,#0e100ff2 0%,#1011108c 11%,transparent 37%),linear-gradient(0deg,#0b0c0afc 0%,transparent 36%),linear-gradient(180deg,#13130f90 0%,transparent 22%)}
#landing .hero-art::after{content:"";z-index:3;position:absolute;inset:15px;border:1px solid #c6aa7f3b;pointer-events:none}
.hero-gallery{position:absolute;inset:0;isolation:isolate;overflow:hidden;background:#0c0f10;z-index:2}
.hero-gallery::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#090b0b80,transparent 24%),linear-gradient(0deg,#080908dc,transparent 42%)}
.hero-slide{margin:0;position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.045);transition:opacity .75s ease,transform 5s ease,visibility .75s;pointer-events:none}
.hero-slide.is-active{opacity:1;visibility:visible;transform:scale(1);pointer-events:auto;z-index:1}
.hero-slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 27%;filter:brightness(.80) contrast(1.045) saturate(.86)}
.hero-slide[data-role="police"] img{object-position:46% 35%}
.hero-slide[data-role="doctor"] img{object-position:50% 36%}
.hero-slide-caption{position:absolute;z-index:4;left:clamp(30px,3vw,52px);right:22px;bottom:76px;pointer-events:none;text-shadow:0 3px 14px #000b}
.hero-slide-caption strong{display:block;color:#fff0db;font:700 clamp(27px,3vw,40px) var(--serif);letter-spacing:-.04em}
.hero-slide-caption span{display:block;margin-top:5px;font-size:12px;color:#e0d6ca;line-height:1.6}
.hero-gallery-controls{position:absolute;z-index:6;bottom:24px;left:clamp(30px,3vw,52px);right:30px;display:flex;align-items:center;gap:10px;justify-content:space-between}
.hero-gallery-arrow{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;background:#080b0cce;border:1px solid #c79c795c;color:#f4e6d6;border-radius:50%;font-size:19px;line-height:1;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.hero-gallery-arrow:hover{background:#5b2527e8;border-color:#e09988;transform:scale(1.06)}
.hero-gallery-dots{display:flex;align-items:center;justify-content:center;gap:10px;margin-inline:auto}
.hero-gallery-dot{width:36px;height:22px;border:0;background:transparent;display:grid;place-items:center;padding:6px;cursor:pointer}
.hero-gallery-dot::before{content:"";width:25px;height:3px;border-radius:4px;background:#d5c8b272;transition:background .2s,transform .2s}
.hero-gallery-dot[aria-current="true"]::before{background:#ef6869;transform:scaleY(1.3);box-shadow:0 0 10px #c5293466}
.hero-gallery-counter{position:absolute;top:28px;right:32px;z-index:6;color:#e7ddd3;font:12px var(--mono);letter-spacing:2px;text-shadow:0 2px 8px #000}
.hero-gallery-counter b{color:#ffb1a5}
#landing .feature-strip{border-top:0}
#landing .hero-frame:after{z-index:7;pointer-events:none}
@media(max-width:1050px){
  #landing .hero-frame{grid-template-columns:minmax(0,54%) minmax(0,46%)}
  #landing .hero-copy{padding:44px 10px 44px 36px}
  #landing .hero-copy h1{font-size:clamp(62px,7.9vw,86px)}
  #landing .hero-sentence{font-size:26px}
  #landing .hero-art{min-height:575px}
  #landing .hero-frame{min-height:575px}
}
@media(max-width:800px){
  #landing .hero-frame{display:grid;grid-template-columns:minmax(0,1fr);min-height:0}
  #landing .hero-copy{padding:46px 28px 35px;align-self:auto}
  #landing .hero-copy h1{font-size:clamp(64px,13vw,100px)}
  #landing .hero-overline{margin:0 0 9px}
  #landing .hero-sentence{font-size:clamp(25px,5vw,34px);margin:23px 0 15px}
  #landing .hero-art{position:relative;inset:auto;min-height:420px;height:clamp(390px,60vw,580px);opacity:1;left:auto;top:auto}
  #landing .hero-art::before{background:linear-gradient(180deg,#1012118f 0%,transparent 22%),linear-gradient(0deg,#0b0c0bdf,transparent 44%)}
  #landing .hero-slide-caption{bottom:74px;left:35px}
}
@media(max-width:520px){
  #landing .hero-copy{padding:32px 22px 31px}
  #landing .hero-overline{font-size:12px}
  #landing .hero-copy h1{font-size:clamp(58px,15vw,86px);letter-spacing:-4px}
  #landing .hero-sentence{margin-top:21px;font-size:clamp(22px,6vw,28px)}
  #landing .hero-body{font-size:12px;line-height:1.9}
  #landing .hero-cta{margin-top:26px;gap:8px}
  #landing .hero-cta .button{flex:1 1 175px;min-width:0}
  #landing .hero-art{height:clamp(340px,95vw,470px);min-height:0}
  #landing .hero-slide img{object-position:50% 28%}
  #landing .hero-slide-caption{left:23px;right:18px;bottom:73px}
  #landing .hero-slide-caption strong{font-size:30px}
  #landing .hero-slide-caption span{font-size:11px}
  #landing .hero-gallery-controls{left:24px;right:24px;bottom:22px}
  #landing .hero-gallery-counter{top:25px;right:26px}
}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none!important;transform:none!important}}
body.reduce-motion .hero-slide{transition:none!important;transform:none!important}
