*{box-sizing:border-box}
:root{--bg:#070706;--gold:#c89b4e;--gold2:#eed49c;--text:#f3eee5;--muted:#aaa397;--line:rgba(200,155,78,.35);--header:72px}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Pretendard","Noto Sans KR",sans-serif}
body.lock{overflow:hidden}
a{color:inherit;text-decoration:none}

.header{position:fixed;z-index:100;inset:0 0 auto;height:var(--header);padding:0 2.7vw;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;border-bottom:1px solid transparent;transition:.3s}
.header.scrolled{background:rgba(7,7,6,.84);border-bottom-color:rgba(255,255,255,.06);backdrop-filter:blur(16px)}
.logo{display:flex;align-items:center;gap:10px}
.logo-box{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);color:var(--gold2);font:20px Georgia,serif}
.logo-copy{display:flex;flex-direction:column}
.logo-copy b{color:var(--gold2);font:500 18px Georgia,serif;letter-spacing:.13em}
.logo-copy small{color:#94733f;font-size:7px;letter-spacing:.18em}
.nav{display:flex;justify-content:center;gap:clamp(16px,2vw,34px)}
.nav a{font-size:11px;letter-spacing:.1em;color:#ded8cf}
.top-contact{display:flex;flex-direction:column;align-items:flex-end}
.top-contact span{font-size:8px;color:#8f877b;letter-spacing:.12em}
.top-contact strong{margin-top:2px;color:var(--gold2);font-size:11px}
.menu-btn{display:none;position:relative;width:40px;height:40px;border:0;background:transparent}
.menu-btn span{position:absolute;right:4px;width:24px;height:1px;background:#fff;transition:.3s}
.menu-btn span:first-child{transform:translateY(-5px)}.menu-btn span:last-child{transform:translateY(5px)}
.menu-btn.open span:first-child{transform:rotate(45deg)}.menu-btn.open span:last-child{transform:rotate(-45deg)}
.mobile-nav{position:fixed;z-index:90;inset:0;padding:100px 24px 30px;display:none;flex-direction:column;background:rgba(7,7,6,.98);opacity:0;visibility:hidden;transition:.3s}
.mobile-nav.show{opacity:1;visibility:visible}
.mobile-nav a{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08);font:28px Georgia,"Noto Serif KR",serif}

.hero{position:relative;min-height:100svh;padding:calc(var(--header) + 40px) 3.8vw 55px;display:grid;grid-template-columns:46% 54%;align-items:center;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 19% 13%,rgba(172,120,43,.22),transparent 27%),linear-gradient(120deg,#0a0907 0%,#151008 44%,#050505 100%)}
.grid{position:absolute;z-index:-2;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:54px 54px}
.hero-left{position:relative;z-index:3;width:100%;max-width:650px;padding-left:.2vw}
.hero-kicker{margin:0;color:var(--gold2);font-size:clamp(17px,1.5vw,25px);letter-spacing:.09em}
h1{margin:18px 0 0;font:400 clamp(68px,7.1vw,120px)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.055em;background:linear-gradient(180deg,#f6dfaa,#ae772f);-webkit-background-clip:text;color:transparent;white-space:nowrap}
.title-divider{width:min(300px,70%);margin:27px 0 22px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px}
.title-divider i{height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.title-divider i:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.title-divider b{width:8px;height:8px;background:var(--gold2);transform:rotate(45deg)}
.hero-en{margin:0;color:var(--gold);font-size:13px;letter-spacing:.24em}
.hero-copy{margin:19px 0 0;color:#ddd5ca;font:clamp(17px,1.35vw,22px) Georgia,"Noto Serif KR",serif}
.contact-box{width:min(350px,100%);margin-top:31px;padding:22px 24px;border:1px solid var(--line);background:rgba(5,5,4,.45)}
.contact-box>span{display:block;color:#b7aa94;font-size:11px}
.contact-box>strong{display:block;margin-top:3px;color:var(--gold2);font-size:24px}
.contact-box>a{display:block;color:#dda957;font:700 28px Georgia,serif}
.contact-box>div{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.contact-box>div a{padding:12px;text-align:center;border:1px solid var(--line);font-size:12px}
.hero-right{position:absolute;z-index:1;right:-10vw;top:-8vh;width:66vw;height:116vh}
.lounge-circle{position:absolute;inset:0;overflow:hidden;border:2px solid rgba(207,161,82,.55);border-radius:50%;box-shadow:0 0 0 10px rgba(200,155,78,.03)}
.lounge-circle:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,6,5,.18),transparent 35%,rgba(0,0,0,.1)),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.26))}
.lounge-circle img{width:100%;height:100%;object-fit:cover;object-position:69% center;filter:brightness(.78) saturate(.9) contrast(1.08)}
.scroll{position:absolute;z-index:4;left:4vw;bottom:17px;display:flex;flex-direction:column;align-items:center;gap:7px;color:#ab8951}
.scroll>span{width:22px;height:34px;border:1px solid #cfb278;border-radius:14px}.scroll>span:after{content:"";display:block;width:3px;height:6px;margin:6px auto 0;background:#cfb278;border-radius:2px;animation:wheel 1.7s infinite}
.scroll b{font-size:8px;letter-spacing:.14em}.scroll i{width:1px;height:24px;background:linear-gradient(var(--gold),transparent)}

.intro{position:relative;min-height:100svh;padding:120px 7vw;display:grid;grid-template-columns:minmax(340px,.88fr) minmax(480px,1.12fr);gap:8vw;align-items:center;background:linear-gradient(135deg,#0b0907,#151008 52%,#080706)}
.intro:before{content:"";position:absolute;inset:0;opacity:.09;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:60px 60px}
.intro-media,.intro-copy{position:relative;z-index:2}
.video-frame{position:relative;height:min(74vh,760px);overflow:hidden;border:1px solid var(--line);background:#090806}
.video-frame:before{content:"";position:absolute;z-index:3;inset:18px;border:1px solid rgba(234,210,154,.15);pointer-events:none}
.video-frame video{width:100%;height:100%;object-fit:cover}
.video-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,4,4,.78))}
.video-label{position:absolute;z-index:4;left:35px;bottom:32px;display:flex;flex-direction:column}
.video-label span{color:var(--gold2);font:26px Georgia,serif;letter-spacing:.14em}
.video-label b{margin-top:4px;color:#a99a83;font-size:9px;letter-spacing:.24em}
.section-kicker{margin:0;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.27em}
.intro h2{margin:18px 0 22px;font:400 clamp(39px,4.6vw,73px)/1.17 Georgia,"Noto Serif KR",serif}
.intro-lead{max-width:680px;margin:0;color:#bdb5aa;font-size:15px;line-height:1.9}
.feature-list{margin-top:38px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.feature-list article{min-height:118px;padding:18px;display:grid;grid-template-columns:auto 1fr;gap:14px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025)}
.feature-list article>span{color:var(--gold);font:17px Georgia,serif}
.feature-list strong{display:block;color:#eee4d4;font-size:15px}
.feature-list p{margin:7px 0 0;color:#948d82;font-size:12px;line-height:1.55}

.event{position:relative;min-height:100svh;padding:120px 7vw;display:grid;place-items:center;overflow:hidden;text-align:center;background:radial-gradient(circle at 50% 45%,rgba(181,126,42,.17),transparent 34%),#080706}
.event-ring{position:absolute;border:1px solid rgba(201,155,78,.2);border-radius:50%}.ring-one{width:720px;height:720px}.ring-two{width:1020px;height:1020px}
.event-inner{position:relative;z-index:2;width:min(820px,100%)}
.stars{margin-top:23px;color:var(--gold2);letter-spacing:.34em}
.event h2{margin:18px 0 0;font:400 clamp(47px,6.8vw,92px)/1.12 Georgia,"Noto Serif KR",serif}
.event h2 em{color:var(--gold2);font-style:normal}
.event-inner>p:last-of-type{color:#aaa298;line-height:1.8}
.manager-card{width:min(470px,100%);margin:34px auto 0;padding:23px;border:1px solid var(--line);background:rgba(0,0,0,.28)}
.manager-card small,.manager-card strong,.manager-card a{display:block}
.manager-card small{color:#8d8475;font-size:9px;letter-spacing:.2em}
.manager-card strong{margin-top:6px;color:#efdfbd;font-size:28px}
.manager-card a{color:var(--gold2);font:700 37px Georgia,serif}
.event-buttons{margin-top:17px;display:flex;justify-content:center;gap:11px}
.event-buttons a{min-width:210px;padding:16px 22px}
.event-buttons .call{background:linear-gradient(135deg,#ebd39b,#b98037);color:#090806;font-weight:800}
.event-buttons .message{border:1px solid var(--line);background:rgba(255,255,255,.025)}
.floating{position:fixed;z-index:80;right:20px;bottom:20px;padding:12px 17px;display:flex;flex-direction:column;border:1px solid rgba(234,210,154,.45);background:rgba(8,7,5,.86);backdrop-filter:blur(12px)}
.floating span{color:#9f927f;font-size:8px;letter-spacing:.15em}.floating strong{color:var(--gold2);font-size:14px}
.reveal{opacity:0;transform:translateY(30px);transition:.8s}.reveal.visible{opacity:1;transform:none}
@keyframes wheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(9px)}}

@media(max-width:1050px){.nav{display:none}.menu-btn{display:block}.mobile-nav{display:flex}.hero{grid-template-columns:1fr}.hero-right{right:-37vw;width:100vw;opacity:.76}.hero-left{z-index:4}.intro{gap:5vw}}
@media(max-width:720px){:root{--header:64px}.header{padding:0 18px}.logo-copy small,.top-contact{display:none}.hero{min-height:auto;padding:104px 21px 70px;display:flex;flex-direction:column;align-items:stretch}.hero-left{max-width:none}.hero-kicker{font-size:15px}h1{font-size:clamp(61px,19vw,90px)}.hero-copy{font-size:17px}.contact-box{padding:20px;margin-top:25px}.hero-right{position:relative;right:auto;top:auto;width:100%;height:auto;aspect-ratio:1/1;margin-top:34px;opacity:1}.lounge-circle img{object-position:72% center}.scroll{display:none}.intro{padding:95px 21px;grid-template-columns:1fr;gap:42px}.video-frame{height:68vh}.intro h2{font-size:41px}.feature-list{grid-template-columns:1fr}.event{padding:105px 21px}.event h2{font-size:47px}.event-buttons{flex-direction:column}.event-buttons a{width:100%}.ring-one{width:480px;height:480px}.ring-two{width:700px;height:700px}.floating{right:10px;bottom:10px}}


/* SEO·모바일·속도 최적화 보강 */
img, video { max-width: 100%; }
picture { display: contents; }

.mobile-bottom-bar {
  display: none;
}

@media (max-width: 720px) {
  body {
    padding-bottom: calc(68px + env(safe-area-inset-bottom));
  }

  .mobile-bottom-bar {
    position: fixed;
    z-index: 120;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 58px;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    background: rgba(7, 7, 6, .94);
    border-top: 1px solid rgba(200,155,78,.32);
    backdrop-filter: blur(14px);
  }

  .mobile-bottom-bar a {
    min-height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(200,155,78,.42);
    font-weight: 700;
  }

  .mobile-bottom-bar a:first-child {
    background: linear-gradient(135deg,#ebd39b,#b98037);
    color: #090806;
  }

  .floating {
    display: none;
  }

  .contact-box > div a,
  .event-buttons a,
  .mobile-nav a {
    min-height: 44px;
  }

  .hero,
  .intro,
  .event {
    min-height: auto;
  }

  .video-frame {
    height: min(68vh, 680px);
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
  .scroll > span:after { animation: none; }
}


/* 1페이지 최종 수정:
   왼쪽 정보 영역 + 오른쪽 대형 원형 라운지 사진 구성 */
.hero {
  grid-template-columns: 46% 54%;
}

.hero-left {
  max-width: 650px;
}

.hero-right {
  right: -10vw;
  top: -8vh;
  width: 66vw;
  height: 116vh;
}

.lounge-circle picture {
  display: block;
  width: 100%;
  height: 100%;
}

.lounge-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 55% center;
}

/* 원 안에 술집 사진 외 별도 텍스트가 올라가지 않도록 보장 */
.hero-right .top-contact,
.hero-right .contact-box,
.hero-right h1,
.hero-right p {
  display: none !important;
}

@media (max-width: 1050px) {
  .hero-right {
    right: -37vw;
    width: 100vw;
    opacity: .78;
  }
}

@media (max-width: 720px) {
  .hero-right {
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    margin-top: 34px;
    opacity: 1;
  }

  .lounge-circle img {
    object-position: 55% center;
  }
}


/* 4단계: 문의 전환율 최적화 */
.conversion-dock {
  position: fixed;
  z-index: 125;
  right: 22px;
  bottom: 22px;
  width: min(390px, calc(100vw - 44px));
  padding: 14px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 14px;
  border: 1px solid rgba(234, 210, 154, .45);
  background: rgba(7, 7, 6, .92);
  box-shadow: 0 16px 48px rgba(0, 0, 0, .42);
  backdrop-filter: blur(16px);
}

.conversion-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.conversion-copy span {
  color: #a99d8a;
  font-size: 10px;
  letter-spacing: .08em;
}

.conversion-copy strong {
  margin-top: 3px;
  overflow: hidden;
  color: var(--gold2);
  font-size: 14px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.conversion-actions {
  display: flex;
  gap: 7px;
}

.conversion-actions a {
  min-width: 82px;
  min-height: 44px;
  padding: 0 12px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  font-size: 12px;
  font-weight: 700;
}

.conversion-call {
  background: linear-gradient(135deg, #ebd39b, #b98037);
  color: #090806;
}

.conversion-sms {
  background: rgba(255, 255, 255, .03);
}

/* 기존 플로팅 버튼과 중복되지 않게 숨김 */
.floating,
.mobile-bottom-bar {
  display: none !important;
}

@media (max-width: 720px) {
  body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom));
  }

  .conversion-dock {
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
    grid-template-columns: 1fr 1.2fr;
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
  }

  .conversion-copy span {
    display: none;
  }

  .conversion-copy strong {
    font-size: 12px;
    white-space: normal;
  }

  .conversion-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .conversion-actions a {
    min-width: 0;
    padding: 0 8px;
  }
}
