/* 의정부역 센트럴 아이파크 (3차) — official IPARK-inspired isolated skin. */
.apt44-uip3-active {
  --dwbz-navy: #172232;
  --dwbz-navy-deep: #0d1520;
  --dwbz-ink: #151b24;
  --dwbz-muted: #5c6672;
  --dwbz-champagne: #d7193f;
  --dwbz-champagne-light: #ff7b91;
  --dwbz-ivory: #f3f5f7;
  --dwbz-paper: #ffffff;
  --dwbz-line: rgba(20, 31, 46, 0.14);
  --dwbz-shadow: 0 28px 80px rgba(7, 17, 30, 0.16);
  background: #fff;
}

.apt44-uip3-active .dwbz-header {
  background: rgba(11, 20, 32, 0.9);
  border-bottom-color: rgba(255, 255, 255, 0.16);
}
.apt44-uip3-active .dwbz-header.is-scrolled { background: rgba(9, 17, 27, 0.98); }
.apt44-uip3-active .dwbz-header__inner { width: min(1540px, calc(100% - 38px)); gap: 20px; }
.apt44-uip3-active .dwbz-brand { min-width: 262px; }
.apt44-uip3-active .dwbz-brand__mark {
  width: 70px;
  height: 31px;
  color: #fff;
  background: #d7193f;
  border-radius: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.apt44-uip3-active .dwbz-brand__name strong {
  font-family: Pretendard, "Noto Sans KR", sans-serif;
  font-size: 15px;
  font-weight: 750;
  letter-spacing: -0.03em;
}
.apt44-uip3-active .dwbz-nav { gap: clamp(7px, 0.85vw, 16px); }
.apt44-uip3-active .dwbz-nav > a { font-size: 12px; }
.apt44-uip3-active .dwbz-nav > a:not(.dwbz-nav__call)::after { background: #f43a5f; }
.apt44-uip3-active .dwbz-nav__call { min-width: 130px; border-color: rgba(244, 58, 95, 0.7); }
.apt44-uip3-active .dwbz-nav__call small { color: #ff91a6; }

.apt44-uip3-active .dwbz-hero { min-height: min(850px, calc(100vh - 76px)); }
.apt44-uip3-active .dwbz-hero__media img { object-position: 50% 46%; }
.apt44-uip3-active .dwbz-hero::before {
  background:
    linear-gradient(90deg, rgba(7, 16, 28, 0.85) 0%, rgba(7, 16, 28, 0.46) 43%, rgba(7, 16, 28, 0.06) 74%),
    linear-gradient(0deg, rgba(6, 14, 24, 0.78) 0%, transparent 58%);
}
.apt44-uip3-active .dwbz-main h1,
.apt44-uip3-active .dwbz-main h2,
.apt44-uip3-active .dwbz-main h3 {
  word-break: keep-all;
  overflow-wrap: normal;
}
.apt44-uip3-active .dwbz-kicker,
.apt44-uip3-active .dwbz-eyebrow,
.apt44-uip3-active .dwbz-stat small,
.apt44-uip3-active .dwbz-card small { color: #d7193f; font-family: Arial, Helvetica, sans-serif; }
.apt44-uip3-active .dwbz-hero .dwbz-kicker { color: #ff8aa0; }
.apt44-uip3-active .dwbz-hero h1,
.apt44-uip3-active .dwbz-section-title,
.apt44-uip3-active .dwbz-split__copy h2,
.apt44-uip3-active .dwbz-child-intro h1 {
  font-family: "Noto Serif KR", "Nanum Myeongjo", Georgia, serif;
}
.apt44-uip3-active .dwbz-hero h1 { max-width: 960px; font-size: clamp(40px, 5.8vw, 82px); }
.apt44-uip3-active .dwbz-hero__lead { max-width: 740px; }
.apt44-uip3-active .dwbz-hero__facts {
  gap: 10px 22px;
  padding-left: 18px;
  border-left: 3px solid #ef3156;
}
.apt44-uip3-active .dwbz-hero__facts li {
  min-height: auto;
  padding: 0;
  gap: 8px;
  color: rgba(255, 255, 255, 0.9);
  background: transparent;
  border: 0;
  backdrop-filter: none;
  cursor: default;
}
.apt44-uip3-active .dwbz-hero__facts li::before {
  width: 5px;
  height: 5px;
  flex: 0 0 5px;
  content: "";
  background: #ef3156;
  border-radius: 50%;
}
.apt44-uip3-active .dwbz-image-credit { max-width: 820px; }

.apt44-uip3-active .dwbz-main .wp-block-button__link {
  color: #fff !important;
  background: #b51238 !important;
  border: 2px solid #b51238 !important;
  font-weight: 800;
  text-decoration: none;
}
.apt44-uip3-active .dwbz-main .wp-block-button__link:hover,
.apt44-uip3-active .dwbz-main .wp-block-button__link:focus-visible {
  color: #fff !important;
  background: #870a29 !important;
  border-color: #870a29 !important;
}
.apt44-uip3-active .dwbz-main .is-style-outline > .wp-block-button__link {
  color: #10253d !important;
  background: #fff !important;
  border-color: #10253d !important;
}
.apt44-uip3-active .dwbz-main .is-style-outline > .wp-block-button__link:hover,
.apt44-uip3-active .dwbz-main .is-style-outline > .wp-block-button__link:focus-visible {
  color: #fff !important;
  background: #10253d !important;
  border-color: #10253d !important;
}

.uip3-vr {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: #0b1320;
}
.uip3-vr::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 75% 10%, rgba(215, 25, 63, 0.18), transparent 36%);
}
.uip3-vr .dwbz-section__inner { position: relative; }
.uip3-vr .dwbz-eyebrow { display: inline-flex; width: auto; }
.uip3-vr h2 { max-width: 880px; color: #fff; }
.uip3-vr .dwbz-section-lead { max-width: 820px; color: rgba(255, 255, 255, 0.72); }
.uip3-vr-frame {
  width: 100%;
  margin-top: 34px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #080c12;
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
}
.uip3-vr-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.uip3-vr-fallback { margin: 14px 0 0 !important; color: rgba(255, 255, 255, 0.66); font-size: 12px; }
.uip3-vr-fallback a { color: #fff; }
.uip3-hero--compact { min-height: 420px !important; }
.uip3-hero--compact .dwbz-hero__content { padding-top: 92px; padding-bottom: 44px; }
.uip3-hero--compact h1 { font-size: clamp(38px, 4.6vw, 64px) !important; }
.uip3-vr--compact { padding-top: 44px; padding-bottom: 44px; }
.uip3-vr--compact .uip3-vr-frame { max-height: 430px; margin-top: 24px; }
.uip3-vr--compact .uip3-vr-fallback { margin-top: 10px !important; }

.uip3-fact-grid,
.uip3-news-grid,
.uip3-check-grid {
  margin-top: 38px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.uip3-fact,
.uip3-news-card,
.uip3-check-card {
  min-height: 180px;
  padding: clamp(24px, 3vw, 38px);
  background: #fff;
  border: 1px solid var(--dwbz-line);
  box-shadow: 0 15px 44px rgba(14, 24, 39, 0.06);
}
.uip3-fact small,
.uip3-news-card small,
.uip3-check-card small { display: block; margin-bottom: 14px; color: #d7193f; font-weight: 800; letter-spacing: 0.08em; }
.uip3-fact strong { display: block; color: #101927; font-size: clamp(24px, 3vw, 38px); line-height: 1.25; }
.uip3-fact p,
.uip3-news-card p,
.uip3-check-card p { margin: 13px 0 0 !important; color: var(--dwbz-muted); }

.uip3-project-image { overflow: hidden; background: #eef1f4; box-shadow: var(--dwbz-shadow); }
.uip3-project-image img { width: 100%; }
.uip3-location-image img { aspect-ratio: 48 / 17; object-fit: cover; }
.uip3-community-image img { aspect-ratio: 4 / 1; object-fit: cover; }
.uip3-site-plan img { width: min(980px, 100%); margin: 0 auto; }
.uip3-source-note { margin-top: 16px !important; color: var(--dwbz-muted); font-size: 12px; }

.uip3-unit-grid {
  width: 100%;
  max-width: none !important;
  margin-top: 42px;
  display: block;
}
.uip3-unit-grid > .wp-block-group__inner-container {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.uip3-unit-card {
  width: auto !important;
  min-width: 0;
  overflow: hidden;
  background: #121820;
  border: 1px solid rgba(255, 255, 255, 0.12);
}
.uip3-unit-card .wp-block-image { margin: 0 !important; }
.uip3-unit-card img { width: 100%; aspect-ratio: 2336 / 1524; object-fit: contain; }
.uip3-unit-card__copy { padding: 24px; background: #fff; }
.uip3-unit-card__copy h3 { margin: 0 !important; }
.uip3-unit-card__copy p { margin: 10px 0 0 !important; color: var(--dwbz-muted); }

.uip3-toc {
  margin-top: 28px;
  padding: 26px;
  background: #fff;
  border-top: 3px solid #d7193f;
  box-shadow: 0 16px 44px rgba(14, 24, 39, 0.07);
}
.uip3-toc strong { display: block; color: #111a27; }
.uip3-toc ol { margin: 14px 0 0; padding-left: 1.4em; columns: 2; column-gap: 36px; }
.uip3-toc li { margin: 7px 0; break-inside: avoid; }
.uip3-toc a { color: #263548; }
.uip3-answer {
  margin: 0 !important;
  padding: 24px 26px;
  color: #fff;
  background: #142235;
  border-left: 4px solid #d7193f;
}
.uip3-experience { padding: 18px 20px; background: #fff5f7; border: 1px solid rgba(215, 25, 63, 0.25); }
.uip3-price-note { color: #6d3541; font-size: 13px; }
.uip3-hashtags { color: #6f2635; font-weight: 700; word-spacing: 0.35em; }
.uip3-search-audit { border-left: 3px solid #d7193f; }

.apt44-uip3-active .dwbz-button { background: #16283c; border-color: #16283c; }
.apt44-uip3-active .dwbz-button:hover,
.apt44-uip3-active .dwbz-button:focus-visible { background: #d7193f; border-color: #d7193f; }
.apt44-uip3-active .dwbz-button--outline { color: #16283c !important; background: transparent; }
.apt44-uip3-active .dwbz-table-scroll th { background: #17283b; }
.apt44-uip3-active .dwbz-table-scroll td { background: #fff; }
.apt44-uip3-active .dwbz-table-scroll:focus-visible { outline-color: rgba(215, 25, 63, 0.55); }
.apt44-uip3-active .dwbz-child-intro {
  background:
    radial-gradient(circle at 84% 12%, rgba(215, 25, 63, 0.23), transparent 30%),
    linear-gradient(135deg, #0c1521, #1b2d41);
}
.apt44-uip3-active .dwbz-child-intro::after { border-color: rgba(255, 123, 145, 0.32); }
.apt44-uip3-active .dwbz-footer { background: #080e17; }
.apt44-uip3-active .dwbz-footer__eyebrow { color: #ff879d; }
.apt44-uip3-active .dwbz-footer-menu a:nth-child(3n + 1) { animation: uip3-footer-nudge 5.8s ease-in-out infinite; }
.apt44-uip3-active .dwbz-floating-call {
  background: #d7193f;
  border-color: rgba(255, 255, 255, 0.35);
  box-shadow: 0 18px 52px rgba(150, 8, 38, 0.38);
  animation: uip3-call-pulse 3.2s ease-in-out infinite;
}
.apt44-uip3-active .dwbz-floating-call small { color: #fff; }
.apt44-uip3-active .dwbz-shell :focus-visible { outline-color: #ff7891; }

@media (min-width: 601px) {
  .apt44-uip3-active .dwbz-floating-call {
    right: 8px;
    width: 52px;
    min-width: 52px;
    min-height: 52px;
    padding: 6px;
    border-radius: 50%;
  }
  .apt44-uip3-active .dwbz-floating-call small { display: none; }
  .apt44-uip3-active .dwbz-floating-call strong {
    font-size: 0;
    line-height: 1;
  }
  .apt44-uip3-active .dwbz-floating-call strong::before {
    content: "☎";
    display: block;
    font-size: 20px;
    line-height: 1;
  }
  .apt44-uip3-active .dwbz-floating-call strong::after {
    content: "전화";
    display: block;
    margin-top: 3px;
    font-size: 10px;
    line-height: 1;
  }
}

@media (min-width: 601px) and (max-width: 1318px) {
  .uip3-vr-frame {
    width: calc(100% - 64px);
    margin-right: 64px;
  }
}

@keyframes uip3-call-pulse {
  0%, 72%, 100% { transform: translateY(0); }
  79% { transform: translateY(-4px); }
  86% { transform: translateY(0); }
  92% { transform: translateY(-2px); }
}
@keyframes uip3-footer-nudge {
  0%, 78%, 100% { transform: translateX(0); }
  84% { transform: translateX(3px); }
  90% { transform: translateX(0); }
}

@media (max-width: 1320px) {
  .apt44-uip3-active .dwbz-header__inner { min-height: 68px; }
  .apt44-uip3-active .dwbz-header { min-height: 68px; }
  .apt44-uip3-active .dwbz-main { margin-top: 68px; }
  .apt44-uip3-active .dwbz-menu-toggle {
    margin-left: auto;
    flex: 0 0 72px;
    min-width: 72px;
    min-height: 46px;
    padding: 7px 12px;
    display: grid;
    grid-template-columns: 1fr 18px;
    align-items: center;
    gap: 2px 8px;
    color: #fff;
    background: rgba(215, 25, 63, 0.92);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 0;
    font-weight: 800;
    animation: uip3-menu-invite 5s ease-in-out infinite;
  }
  .apt44-uip3-active .dwbz-menu-toggle span { grid-row: 1 / 3; white-space: nowrap; word-break: keep-all; }
  .apt44-uip3-active .dwbz-menu-toggle i { display: block; width: 18px; height: 2px; background: #fff; }
  .apt44-uip3-active .dwbz-nav {
    position: fixed;
    z-index: 9991;
    top: 68px;
    right: 0;
    bottom: auto;
    height: calc(100dvh - 68px) !important;
    min-height: calc(100dvh - 68px) !important;
    max-height: calc(100dvh - 68px) !important;
    width: min(390px, 88vw);
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    overflow-y: auto;
    color: #fff;
    background: rgba(8, 15, 24, 0.99);
    box-shadow: -25px 0 70px rgba(0, 0, 0, 0.34);
    pointer-events: none;
    transform: none;
    clip-path: inset(0 0 0 100%);
    visibility: hidden;
    transition: clip-path 220ms ease, visibility 220ms step-end;
  }
  .apt44-uip3-active .dwbz-nav.is-open { pointer-events: auto; clip-path: inset(0); visibility: visible; transition: clip-path 220ms ease; }
  .apt44-uip3-active .dwbz-nav > a { min-height: 52px; justify-content: flex-start; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 15px; }
  .apt44-uip3-active .dwbz-nav__call { margin-top: 18px; align-items: flex-start !important; border: 1px solid rgba(255, 123, 145, 0.6) !important; padding: 12px 16px !important; }
  .uip3-menu-open { overflow: hidden; }
  .uip3-menu-open .dwbz-floating-call { opacity: 0; pointer-events: none; }
}
@keyframes uip3-menu-invite {
  0%, 78%, 100% { transform: translateY(0); }
  84% { transform: translateY(-3px); }
  90% { transform: translateY(0); }
}

@media (max-width: 860px) {
  .uip3-fact-grid,
  .uip3-news-grid,
  .uip3-check-grid { grid-template-columns: 1fr 1fr; }
  .uip3-location-image img { aspect-ratio: 16 / 8; }
  .uip3-community-image img { aspect-ratio: 16 / 5; }
  .uip3-vr-frame { aspect-ratio: 4 / 3; }
}

@media (max-width: 600px) {
  .apt44-uip3-active .dwbz-header__inner { width: calc(100% - 24px); }
  .apt44-uip3-active .dwbz-brand { min-width: 0; gap: 8px; }
  .apt44-uip3-active .dwbz-brand__mark { width: 58px; font-size: 12px; }
  .apt44-uip3-active .dwbz-brand__name strong { max-width: 132px; font-size: 12px; }
  .apt44-uip3-active .dwbz-brand__name small { display: none; }
  .apt44-uip3-active .dwbz-menu-toggle { min-width: 68px; }
  .apt44-uip3-active .dwbz-hero { min-height: max(690px, calc(100svh - 68px)); }
  .apt44-uip3-active .dwbz-hero__media img { object-position: 51% 50%; }
  .apt44-uip3-active .dwbz-hero__content { width: calc(100% - 36px); padding-bottom: 54px; }
  .apt44-uip3-active .dwbz-hero h1 { font-size: clamp(34px, 10.5vw, 48px); }
  .apt44-uip3-active .dwbz-hero__facts { display: flex; padding-left: 14px; }
  .apt44-uip3-active .dwbz-hero__facts li { justify-content: flex-start; text-align: left; }
  .uip3-fact-grid,
  .uip3-news-grid,
  .uip3-check-grid,
  .uip3-unit-grid > .wp-block-group__inner-container { grid-template-columns: 1fr; }
  .uip3-fact,
  .uip3-news-card,
  .uip3-check-card { min-height: auto; padding: 24px 20px; }
  .uip3-vr-frame { width: calc(100% - 48px); margin-right: 48px; aspect-ratio: auto; height: min(68vh, 520px); min-height: 390px; }
  .uip3-hero--compact { min-height: max(690px, calc(100svh - 68px)) !important; }
  .uip3-hero--compact .dwbz-hero__content { padding-top: 82px; padding-bottom: 40px; }
  .uip3-hero--compact h1 { font-size: clamp(32px, 9.4vw, 43px) !important; }
  .uip3-vr--compact { padding-top: 34px; padding-bottom: 34px; }
  .uip3-vr--compact .uip3-vr-frame { height: 310px; min-height: 310px; }
  .uip3-toc ol { columns: 1; }
  .uip3-location-image img { aspect-ratio: 4 / 3; object-position: 49% 50%; }
  .uip3-community-image img { aspect-ratio: 16 / 9; }
  .uip3-site-plan { overflow-x: auto; }
  .uip3-site-plan img { width: 760px; max-width: none; }
  .apt44-uip3-active .dwbz-floating-call {
    right: 12px;
    left: auto;
    bottom: max(10px, env(safe-area-inset-bottom));
    min-width: 164px;
    min-height: 56px;
    padding: 9px 18px;
  }
  .uip3-vr-in-view .apt44-uip3-active .dwbz-floating-call {
    right: 6px;
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    padding: 4px;
    border-radius: 50%;
  }
  .uip3-vr-in-view .apt44-uip3-active .dwbz-floating-call small { display: none; }
  .uip3-vr-in-view .apt44-uip3-active .dwbz-floating-call strong { font-size: 0; line-height: 1; }
  .uip3-vr-in-view .apt44-uip3-active .dwbz-floating-call strong::before { content: "☎"; display: block; font-size: 17px; line-height: 1; }
  .uip3-vr-in-view .apt44-uip3-active .dwbz-floating-call strong::after { content: "전화"; display: block; margin-top: 2px; font-size: 9px; line-height: 1; }
}

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