/* 상동역 롯데캐슬 시그니처 — project-specific refinements over the isolated premium shell. */
.apt44-slcs-active {
  --dwbz-navy: #17233a;
  --dwbz-navy-deep: #090f1c;
  --dwbz-ink: #151b26;
  --dwbz-muted: #5f6570;
  --dwbz-champagne: #b79a61;
  --dwbz-champagne-light: #e2d2ac;
  --dwbz-ivory: #f6f3ed;
  --dwbz-paper: #fffefa;
  --dwbz-line: rgba(23, 35, 58, 0.14);
  --dwbz-shadow: 0 28px 76px rgba(9, 15, 28, 0.16);
  padding-bottom: 0;
  scroll-padding-top: 92px;
}

.apt44-slcs-active .dwbz-brand { min-width: 255px; }
.apt44-slcs-active .dwbz-brand__mark {
  width: 66px;
  height: 30px;
  color: #fff;
  background: #8f2335;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 1px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 12px;
  font-style: normal;
  letter-spacing: 0.08em;
}
.apt44-slcs-active .dwbz-brand__name strong { letter-spacing: 0.075em; }
.apt44-slcs-active .dwbz-nav__call,
.apt44-slcs-active .dwbz-floating-call { border-color: rgba(226, 210, 172, 0.76); }
.apt44-slcs-active .dwbz-floating-call { background: #8f2335; }
.apt44-slcs-active .dwbz-hero h1,
.apt44-slcs-active .dwbz-main h1,
.apt44-slcs-active .dwbz-main h2,
.apt44-slcs-active .dwbz-main h3,
.apt44-slcs-active .dwbz-main h4 { word-break: keep-all; overflow-wrap: normal; }
.apt44-slcs-active .dwbz-hero h1 { max-width: 1020px; font-size: clamp(42px, 5.6vw, 82px); }
.apt44-slcs-active .dwbz-hero__media img { object-position: 50% 53%; }
.apt44-slcs-active .dwbz-section { scroll-margin-top: 90px; }
.apt44-slcs-active .dwbz-split__media img { width: 100%; }
.apt44-slcs-active .dwbz-section--navy .dwbz-editorial-box {
  color: var(--dwbz-ink);
}
.apt44-slcs-active .dwbz-section--navy .dwbz-editorial-box h3 {
  color: var(--dwbz-navy-deep);
}
.apt44-slcs-active .dwbz-section--navy .dwbz-editorial-box p,
.apt44-slcs-active .dwbz-section--navy .dwbz-editorial-box li {
  color: var(--dwbz-ink);
}
.apt44-slcs-active .dwbz-section--navy .dwbz-editorial-box a {
  color: var(--dwbz-navy);
}
.apt44-slcs-active .dwbz-footer-menu a {
  min-height: 42px;
  padding: 4px 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 2px;
  animation: slcs-footer-nudge 8.4s ease-in-out infinite;
}
.apt44-slcs-active .dwbz-footer-menu a:nth-child(2n) { animation-delay: 0.35s; }
.apt44-slcs-active .dwbz-footer-menu a:nth-child(3n) { animation-delay: 0.7s; }

@keyframes slcs-footer-nudge {
  0%, 91%, 100% { transform: translateX(0); }
  94% { transform: translateX(2px); }
  97% { transform: translateX(0); }
}

/* The project name and eight text links need the compact menu slightly earlier. */
@media (max-width: 1320px) {
  .apt44-slcs-active .dwbz-header__inner { width: min(100% - 28px, 1180px); }
  .apt44-slcs-active .dwbz-menu-toggle {
    margin-left: auto;
    width: 58px;
    min-height: 48px;
    padding: 6px 8px;
    display: grid;
    grid-template-columns: 1fr 18px;
    grid-template-rows: 1fr 1fr;
    align-items: center;
    color: #fff;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 2px;
    cursor: pointer;
    animation: slcs-menu-nudge 6.8s ease-in-out infinite;
  }
  .apt44-slcs-active .dwbz-menu-toggle span { grid-row: 1 / 3; font-size: 11px; }
  .apt44-slcs-active .dwbz-menu-toggle i { display: block; width: 16px; height: 1px; background: #fff; transition: transform 180ms ease; }
  .apt44-slcs-active .dwbz-menu-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(4px) rotate(45deg); }
  .apt44-slcs-active .dwbz-menu-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-4px) rotate(-45deg); }
  .apt44-slcs-active .dwbz-nav {
    position: fixed;
    z-index: 9991;
    top: 76px;
    right: 14px;
    left: 14px;
    max-height: calc(100dvh - 94px);
    margin: 0;
    padding: 16px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    overflow-y: auto;
    color: #fff;
    background: rgba(8, 15, 28, 0.985);
    border: 1px solid rgba(226, 210, 172, 0.24);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-12px);
    transition: opacity 180ms ease, visibility 180ms ease, transform 180ms ease;
  }
  .apt44-slcs-active .dwbz-nav.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
  .apt44-slcs-active .dwbz-nav > a { justify-content: flex-start; min-height: 48px; padding: 6px 12px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .apt44-slcs-active .dwbz-nav__call { grid-column: 1 / -1; align-items: center !important; justify-content: center !important; }
}

@keyframes slcs-menu-nudge {
  0%, 88%, 100% { transform: translateY(0); }
  93% { transform: translateY(-2px); }
  96% { transform: translateY(0); }
}

@media (max-width: 600px) {
  .apt44-slcs-active { padding-bottom: 82px; }
  .apt44-slcs-active .dwbz-brand { min-width: 0; }
  .apt44-slcs-active .dwbz-brand__mark { width: 54px; height: 25px; font-size: 10px; }
  .apt44-slcs-active .dwbz-hero h1 { font-size: clamp(35px, 11.5vw, 52px); }
  .apt44-slcs-active .dwbz-hero__media img { object-position: 50% 58%; }
  .apt44-slcs-active .dwbz-nav { top: 68px; grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .apt44-slcs-active .dwbz-menu-toggle,
  .apt44-slcs-active .dwbz-footer-menu a { animation: none !important; }
}

@media print {
  .apt44-slcs-active { padding-bottom: 0; }
}

/* Verified official cyber-tour, added after the project published its viewer. */
.apt44-slcs-active .slcs-vr-section {
  color: #f8f5ee;
  background:
    radial-gradient(circle at 82% 12%, rgba(194, 158, 89, 0.19), transparent 31%),
    linear-gradient(145deg, #0a1220 0%, #111c2c 58%, #0a1019 100%);
}

.apt44-slcs-active .slcs-vr-section .dwbz-section__inner {
  width: min(100% - 40px, 1240px);
}

.apt44-slcs-active .slcs-vr-section .dwbz-eyebrow,
.apt44-slcs-active .slcs-vr-section .dwbz-section-title,
.apt44-slcs-active .slcs-vr-section .dwbz-section-lead {
  color: inherit;
}

.apt44-slcs-active .slcs-vr-frame {
  display: block;
  width: 100%;
  height: clamp(620px, 72vw, 760px);
  margin-top: clamp(24px, 4vw, 44px);
  border: 1px solid rgba(226, 210, 172, 0.32);
  border-radius: 4px;
  background: #05080d;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.34);
}

.apt44-slcs-active .slcs-vr-fallback {
  margin: 16px 0 0;
  color: rgba(248, 245, 238, 0.76);
  font-size: 14px;
}

.apt44-slcs-active .slcs-vr-fallback a { color: #ead8ad; }

@media (max-width: 600px) {
  .apt44-slcs-active .slcs-vr-section .dwbz-section__inner { width: min(100% - 24px, 1240px); }
  .apt44-slcs-active .slcs-vr-frame { height: 680px; }
}
