:root{
  --brand:#ff7c2e; --brand-600:#ff6f19; --brand-700:#f3630a;
  --ink:#1b1f23; --surface:#fff;
  --shadow-card:0 18px 40px rgba(0,0,0,.12);
  --closing-extra:160px;
}

/* Base */
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:'Noto Sans KR',sans-serif;font-size:15px;line-height:1.7;color:var(--ink);background:#fff}
.container{width:min(1500px,92%);margin-inline:auto}
.accent{color:var(--brand)}

/* HERO */
.hero{position:relative;min-height:100svh;overflow:hidden;background:#fff}
.hero__bg{position:absolute;inset:0;background:url('/lounge/img/hero-bg.jpg') no-repeat center/cover;filter:saturate(104%);opacity:.92}
.hero__inner{position:relative;display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:32px;height:100%;padding:96px 0}
.hero__copy{max-width:720px}
.hero__logo{display:block;width:80px;max-width:40vw;height:auto;margin-bottom:40px}
.hero__title-img{display:block;width:80%;max-width:720px;height:auto;margin:0 0 20px}
.hero__subtitle{font-size:24px;font-weight:500;margin:20px 0 32px;color:#3b3b3b}
.hero__character{
  position:absolute;bottom:20px;left:66%;transform:translateX(-50%);
  width:clamp(260px,35vw,420px);height:auto;object-fit:contain;pointer-events:none;
}
.cta-img img{max-height:84px;margin-top:20px;height:auto;display:block}

/* BENEFITS */
.benefits{position:relative;overflow:hidden;background:url('/lounge/img/benefits-bg.jpg') no-repeat center/cover;padding:100px 0 120px;color:#111}
.benefits__head{position:relative;margin-bottom:24px}
.benefits__title-img{display:block;width:80%;max-width:80%;height:auto;margin:0 0 40px}
.benefits__subtitle{font-size:35px;font-weight:500;text-align:left}
.benefits__sticker{
  position:absolute;top:134px;right:130px;
  width:min(260px,20vw);height:auto;object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.22));
}

/* Cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:56px}
.card{
  background:#fff;color:#111;border:24px solid #fff;border-radius:50px;
  box-shadow:0 10px 20px rgba(0,0,0,.32);overflow:hidden;display:flex;flex-direction:column;text-align:center
}
.card__media{width:100%;aspect-ratio:652/405}
.card__media img{width:100%;height:100%;object-fit:cover;border-radius:50px;display:block}
.card__body{padding:22px 18px}
.card__eyebrow{color:var(--brand-700);font-weight:600;font-size:24px;margin-bottom:8px;letter-spacing:-1.5px;font-family:'Noto Sans KR',sans-serif;font-style:italic}
.card__title{font-size:28px;font-weight:800;margin:0 0 6px;letter-spacing:-0.5px}
.card__text{font-size:19px;line-height:1.7;color:#4b5563;font-weight:500;letter-spacing:-1.5px;white-space:pre-line}

/* CLOSING */
.closing{
  position:relative;overflow:hidden;
  height:calc(120svh + 120px); /* 섹션 길이 살짝 축소 */
}
.closing__bg{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center top; /* 상단 기준으로 고정 */
  z-index:0
}
.closing__inner{
  position:relative;z-index:1;height:100%;
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  text-align:center;padding-top:clamp(48px,8vh,120px)
}
/* 헤드라인: 살짝 축소 + 좌우 여백 */
.closing__headline{
  font-size:clamp(48px,3.8vw,52px);letter-spacing:-1.5px;
  line-height:1.35;text-align:center;padding:0 24px;
  margin-top:66px;font-weight:600;color:#222;
}
.closing__soon{display:block;width:320px;height:auto;margin:30px auto 0}
.closing__character{
  position:absolute;bottom:0;left:clamp(16px,4vw,60px);
  width:clamp(220px,26vw,390px);height:auto;object-fit:contain;pointer-events:none;
}

/* Responsive: Benefits grid */
.benefits .cards{grid-template-columns:1fr}
@media (min-width:1025px){ .benefits .cards{grid-template-columns:repeat(3,1fr)} }

/* MOBILE (≤768px) */
@media (max-width:768px){
  .container {
    width:100% !important;
    padding-inline:8px;
  }
  /* 히어로만 원래처럼 중앙 폭(92%)로 복구 */
  .hero .container {
    width:min(1500px,92%) !important;
    padding-inline:0; /* 필요 시 16px 등으로 조절 가능 */
  }
  .hero{min-height:72svh !important;position:relative}
  .hero__inner{grid-template-columns:1fr;padding:56px 0;padding-bottom:clamp(120px,30vw,240px)}
  .hero__logo{width:60px;height:auto;margin-bottom:12px}
  .hero__title-img{width:min(80%,300px);max-width:none;height:auto;margin:0 0 12px}
  .hero__subtitle{font-size:16px;font-weight:500;line-height:1.6;margin:8px 0 16px}
  .cta-img img{max-height:54px;height:auto;display:block}
  .hero__character{
    position:absolute;bottom:12px;right:16px;left:auto;transform:none;
    width:clamp(180px,46vw,320px);height:auto;z-index:1;pointer-events:none;display:block
  }
  .hero__subtitle-en, img[src*="lounge-en.png"]{
    width:clamp(140px,48vw,200px);max-width:none;height:auto;display:block;margin:6px 0 12px
  }

  .benefits{padding-top:clamp(20px,5vw,36px) !important}
  .benefits__head{position:relative;z-index:3}
  .benefits__title-img{margin-top:26px; width:90%;max-width:90%; margin-bottom:8px !important}
  .benefits__subtitle{margin-top:16px !important;font-size:clamp(16px,3.6vw,18px);line-height:1.55}
  .benefits__sticker{
    position:absolute !important;left:50% !important;transform:translateX(-50%) !important;
    top:clamp(150px,45vw,200px) !important;width:clamp(190px,44vw,230px) !important;height:auto !important;z-index:1 !important;
  }
  .benefits .cards{margin-top:clamp(240px,38vw,360px) !important}
  .benefits .cards .card .card__title{font-size:25px !important;letter-spacing:-1.5px !important;line-height:1.3 !important}
  .benefits .cards .card .card__text{font-size:16px !important;letter-spacing:-1.5px !important;line-height:1.7 !important}

  /* Closing – 모바일 B 방식 */
  .closing__inner{
    display:flex !important;flex-direction:column !important;align-items:center !important;
    min-height:80svh !important;position:relative !important;z-index:2 !important;padding-bottom:0 !important;
  }
  .closing__headline{font-size:clamp(24px,4vw,28px) !important; margin-top:26px; padding:0 6px}
  .closing__soon{display:block;width:200px;height:auto;margin:20px auto 0}
  .closing__character{
    position:static !important;margin-top:auto !important;align-self:center !important;
    transform:translateX(-70px) !important;width:clamp(160px,46vw,300px) !important;height:auto !important;pointer-events:none !important;
  }
  .closing{height:auto;min-height:85svh}
}

/* Desktop-only */
@media (min-width:1025px){
  .hero__subtitle-en, img[src*="lounge-en.png"]{width:290px;max-width:none;height:auto;margin:6px 0 12px}
}

/* 데스크톱/태블릿 캐릭터 강제 위치 (A형) */
@media (min-width:1025px){
  html body .closing > .closing__character,
  html body .closing .closing__inner > .closing__character{
    position:absolute !important;top:auto !important;bottom:70px !important;
    left:clamp(30px,4vw,60px) !important;transform:translateX(380px) !important;
    margin:0 !important;z-index:1 !important;pointer-events:none !important;
    width:clamp(240px,20vw,360px) !important;height:auto !important;
  }
}
/* 태블릿 사이즈 보정 */
@media (min-width:769px) and (max-width:1024px){
  html body .closing > .closing__character,
  html body .closing .closing__inner > .closing__character{
    width:clamp(180px,24vw,260px) !important;
  }
}


.br-pc { display: none; }
.br-mobile { display: none; }
@media (min-width: 769px) { .br-pc { display: inline; } }
@media (max-width: 768px) { .br-mobile { display: inline; } }