/* SUNGWONSA V7 — Four-photo background, exactly 5 seconds each / 20-second loop.
   Changes are isolated to the existing hero visual layer. All React typography,
   navigation, positioning, links, content and other pages remain unchanged. */
section[aria-label="메인 히어로"]{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#10243a;
}
/* Original hero image is only hidden in the homepage hero (retained in original build). */
section[aria-label="메인 히어로"] > img.absolute{visibility:hidden!important}
.sw-photo-stage{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
  background:#15202b;
}
.sw-photo-frame{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity 1.15s ease-in-out;
  will-change:opacity;
}
.sw-photo-frame.is-active{opacity:1}
.sw-photo-fill,.sw-photo-main{
  position:absolute;
  inset:0;
  background-repeat:no-repeat;
  background-position:var(--focus,center center);
  pointer-events:none;
}
/* Enlarged soft backdrop keeps the hero fully filled on narrow screens. */
.sw-photo-fill{
  background-size:cover;
  filter:blur(20px) brightness(.56);
  transform:scale(1.08);
}
.sw-photo-main{
  background-size:cover;
  filter:blur(.9px) brightness(.84);
  transform:scale(1);
}
.sw-photo-frame.is-active .sw-photo-main{
  animation:sw-cinematic-breath 5s linear both;
}
@keyframes sw-cinematic-breath{
  0%{transform:scale(1.005)}
  100%{transform:scale(1.055)}
}
/* Only the original photo overlay color is softened. No text elements are changed. */
section[aria-label="메인 히어로"] > div[aria-hidden="true"][class*="bg-gradient-to-r"]{
  background:linear-gradient(90deg,rgba(5,15,25,.59) 0%,rgba(5,15,25,.34) 58%,rgba(5,15,25,.22) 100%)!important;
  z-index:1;
}
@media(max-width:700px){
  section[aria-label="메인 히어로"]{min-height:610px!important;padding-bottom:40px!important}
  /* 16:9 originals cannot cover a portrait screen without cropping; use contain
     over a blurred full-bleed version, preserving faces and the whole warehouse. */
  .sw-photo-main{
    background-size:contain;
    background-position:center center;
    filter:blur(.35px) brightness(.9);
  }
  section[aria-label="메인 히어로"] > div[aria-hidden="true"][class*="bg-gradient-to-r"]{
    background:linear-gradient(90deg,rgba(5,15,25,.49),rgba(5,15,25,.30)),
               linear-gradient(0deg,rgba(5,15,25,.32),transparent 70%)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .sw-photo-frame{transition:none!important}
  .sw-photo-frame.is-active .sw-photo-main{animation:none!important}
}

/* Existing V3 floating Kakao contact button, unchanged. */
.sw-kakao{position:fixed;bottom:24px;right:24px;z-index:80;display:flex;align-items:center;gap:9px;padding:13px 17px;border:0;border-radius:100px;background:#fee500;color:#231f1f;box-shadow:0 9px 30px #0003;font-weight:700;font-size:13px;line-height:1;cursor:pointer;transition:transform .2s,box-shadow .2s}
.sw-kakao:hover{transform:translateY(-2px);box-shadow:0 12px 36px #0004}
.sw-kakao svg{width:22px;height:22px;fill:#302b16}
.sw-kakao-panel{position:fixed;right:24px;bottom:88px;width:min(330px,calc(100vw - 40px));z-index:81;background:#fff;color:#10243a;border-radius:14px;box-shadow:0 16px 60px #0004;overflow:hidden;font-family:inherit}
.sw-kakao-panel[hidden]{display:none}
.sw-kakao-head{background:#fee500;padding:17px 20px;font-weight:700;display:flex;justify-content:space-between;align-items:center}
.sw-kakao-close{border:0;background:transparent;font-size:23px;cursor:pointer;color:#10243a}
.sw-kakao-body{padding:20px;font-size:13px;line-height:1.75}
.sw-kakao-body p{margin:0 0 13px}
.sw-kakao-contact{display:block;text-align:center;background:#10243a;color:white!important;text-decoration:none;padding:12px;border-radius:6px;font-weight:650}
@media(max-width:700px){
 section[aria-label="메인 히어로"]{min-height:660px!important;padding-bottom:55px}
 .sw-salon-slide{background-position:58% center}
 .sw-salon-slide:nth-child(2){background-position:54% center}
 .sw-salon-controls{left:18px;bottom:18px;gap:8px}
 .sw-salon-arrow{width:34px;height:34px}
 .sw-salon-note{right:15px;bottom:67px;font-size:10px}
 .sw-salon-dot{width:18px}.sw-salon-dot[aria-current="true"]{width:29px}
 .sw-kakao{right:15px;bottom:18px;padding:12px 15px}
 .sw-kakao-panel{right:15px;bottom:79px}
}
@media(prefers-reduced-motion:reduce){.sw-salon-slide,.sw-salon-slide.is-current::before,.sw-kakao{transition:none!important;animation:none!important}}

/* V3 — 상담 버튼: PC/모바일 모두 화면 오른쪽 중앙 고정.
   하단 Powered 표시와 겹치지 않으며 스크롤 중에도 위치 유지. */
.sw-kakao {
  top: 50%;
  bottom: auto;
  right: 22px;
  transform: translateY(-50%);
  z-index: 2147483000;
}
.sw-kakao:hover,
.sw-kakao:focus-visible {
  transform: translateY(calc(-50% - 2px));
}
.sw-kakao-panel {
  top: 50%;
  bottom: auto;
  right: 130px;
  transform: translateY(-50%);
  z-index: 2147483001;
}
@media (max-width: 700px) {
  .sw-kakao {
    top: 49%;
    bottom: auto;
    right: 12px;
    padding: 11px 12px;
    font-size: 12px;
  }
  .sw-kakao-panel {
    top: 49%;
    bottom: auto;
    right: 14px;
    width: min(330px, calc(100vw - 28px));
    transform: translateY(calc(-50% + 95px));
  }
}


/* V12 — image disclosure directly under About and Salon Open photos. */
.sw-image-disclaimer{
  margin:8px 0 0;
  color:#66717b;
  font-size:11px;
  font-weight:400;
  line-height:1.55;
  text-align:right;
  letter-spacing:0;
}
@media(max-width:700px){
  .sw-image-disclaimer{font-size:10.5px}
}

/* V14: New Beauty SUNGWONSA logo (header only). Existing layout/navigation unaffected. */
header a[aria-label*="메인 페이지로 이동"] > img {
  height: 46px !important;
  width: auto !important;
  max-width: 196px;
  object-fit: contain;
}
header a[aria-label*="메인 페이지로 이동"] > span:last-child {
  display: none !important; /* avoid duplicate SUNGWONSA word beside complete logo */
}
@media (max-width: 640px) {
  header a[aria-label*="메인 페이지로 이동"] > img {
    height: 40px !important;
    max-width: 180px;
  }
}
