/* Shared VENUEDA language, loaded after page styles. */
.solution-cta.solution-contact-wide { position:relative; padding:0; border:0; border-radius:24px; overflow:hidden; background:#17191f; margin-bottom:80px; }
.solution-contact-wide > img { display:block; width:100%; height:auto; }
.solution-contact-copy { position:absolute; inset:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:28px 6%; background:linear-gradient(90deg,rgba(10,12,17,.3),transparent 70%); }
.solution-contact-copy h2 { color:#fff; font-size:clamp(32px,3.7vw,54px); }
.solution-contact-copy .eyebrow { color:#d2dcf1; margin-bottom:20px; }
.solution-contact-copy .button { margin-top:24px; }
.solution-contact-copy .cta-example-note { margin:20px 0 0; font-size:12px; color:#d2dcf1; }
@media(max-width:1100px){ .solution-contact-copy { position:static; padding:32px 24px; background:none; } .solution-cta.solution-contact-wide { padding:0; margin-bottom:48px; border-radius:18px; } .solution-contact-copy .button { width:100%; } }
.solution-cta.solution-full-image-cta { padding:0; border:0; border-radius:24px; overflow:hidden; background:#11131a; margin-bottom:80px; }
.solution-full-image-cta > img { display:block; width:100%; height:auto; }
.solution-full-image-copy { padding:48px 7%; }
.solution-full-image-copy h2 { color:#fff; }
.solution-full-image-copy .eyebrow { color:#d2dcf1; }
.solution-full-image-copy .cta-example-note { margin:24px 0 0; font-size:12px; color:#d2dcf1; }
@media(max-width:700px){ .solution-cta.solution-full-image-cta { padding:0; border-radius:18px; margin-bottom:48px; } .solution-full-image-copy { padding:32px 24px; } }
.solution-examples { padding:0 0 32px; }
.solution-examples .example-notice { font-size:13px; color:#626975; margin:0 0 24px; }
.solution-example-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.solution-example-grid figure { margin:0; min-width:0; }
.solution-example-grid img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; display:block; border-radius:16px; background:#f3f4f6; }
.solution-example-grid figcaption { padding-top:18px; }
.solution-example-grid h3 { margin:0 0 8px; font-size:22px; line-height:1.3; letter-spacing:-.06em; }
.solution-example-grid figcaption p { margin:0; font-size:15px; color:#626975; }
@media(max-width:700px){ .solution-example-grid { grid-template-columns:minmax(0,1fr); gap:28px; } .solution-example-grid h3 { font-size:20px; } .solution-examples { padding-bottom:20px; } }
:root { --blue:#435bff; --ink:#11131a; --muted:#626975; }
body { background:#fff; }
body:not(:has(#vd-site)) { font-family:Arial,"Pretendard","Noto Sans KR",sans-serif; }
.site-header { height:72px; background:rgba(255,255,255,.97); }
.eyebrow, .host-page .eyebrow, .inquiry-page .eyebrow { font-size:11px; font-weight:700; letter-spacing:.16em; line-height:1.5; color:#7c8089; }
.eyebrow-dot { flex:none; background:var(--blue); }
.space-search-heading h1,.space-detail-copy h1,.inquiry-intro h1,.space-additional-heading h2,
.solution-page h1,.solution-page h2 { letter-spacing:-.060em; line-height:1.21 !important; font-weight:700; word-break:keep-all; overflow-wrap:break-word; }
.solution-page h1,.space-search-heading h1 { font-size:clamp(42px,5.2vw,72px); }
.solution-page h2 { font-size:clamp(36px,4.4vw,60px); margin:0; }
.solution-page em { color:var(--blue); font-style:normal; }
.solution-page p { line-height:1.75; }
.solution-intro { padding:90px 0 64px; }
.solution-intro h1 { margin:0; }
.solution-intro > p:not(.eyebrow) { color:var(--muted); font-size:16px; margin:26px 0; }
.solution-back { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); font-size:13px; margin-bottom:20px; }
.solution-nav { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:48px; }
.solution-nav a { display:inline-flex; align-items:center; min-height:44px; padding:8px 16px; border:1px solid #dfe1e7; border-radius:9px; font-size:13px; }
.solution-nav a[aria-current] { color:#fff; background:var(--blue); border-color:var(--blue); }
.solution-directory { padding-bottom:100px; }
.solution-directory > a { display:grid; grid-template-columns:42px 1fr auto; gap:28px; padding:36px 0; border-top:1px solid #dfe1e7; align-items:center; }
.solution-directory > a:first-child { border-top-color:var(--ink); }
.solution-directory > a:last-child { border-bottom:1px solid #dfe1e7; }
.solution-directory h2 { font-size:36px; }
.solution-directory p:not(.eyebrow) { color:var(--muted); margin-bottom:0; }
.solution-directory .eyebrow { margin-bottom:12px; }
.directory-action,.row-number { color:var(--blue); font-size:13px; font-weight:700; }
.solution-directory > a:hover h2 { color:var(--blue); }
.solution-section { display:grid; grid-template-columns:1fr 1.2fr; gap:8vw; padding:70px 0; }
.solution-section > div:first-child > .eyebrow { margin:0 0 22px; line-height:16.5px; }
.solution-rows { border-top:1px solid var(--ink); margin-top:38.5px; }
.solution-rows article { display:grid; grid-template-columns:36px 1fr; gap:20px; padding:28px 0; border-bottom:1px solid #dfe1e7; }
.solution-rows h3 { margin:0 0 12px; font-size:24px; line-height:1.3; letter-spacing:-.06em; }
.solution-rows p { margin:0; color:var(--muted); font-size:15px; }
.solution-cta { margin-top:40px; padding:48px 0 100px; border-top:1px solid #dfe1e7; }
.solution-cta .button { margin-top:28px; }
.solution-directory .directory-action { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:12px 22px; border-radius:10px; background:var(--blue); color:#fff; width:max-content; }
.solution-image-cta { border:0; border-radius:24px; overflow:hidden; padding:96px 7%; margin-bottom:80px; background-image:linear-gradient(90deg,rgba(17,19,26,.86),rgba(17,19,26,.6) 55%,rgba(17,19,26,.16)),var(--cta-image); background-size:cover; background-position:center; }
.solution-image-cta h2 { color:#fff; }
.solution-image-cta .eyebrow { color:#d2dcf1; }
.solution-image-cta .cta-example-note { margin:28px 0 0; color:#e1e5ef; font-size:12px; }
.button-light { color:#fff; background:var(--blue); }
.space-detail-footer { width:var(--content); margin-inline:auto; }
.space-search-back,.space-detail-back,.footer-links a { min-height:44px; align-items:center; display:inline-flex; }
.mobile-login, .mobile-inquiry { display:none; }
/* Authentication-dependent header actions should not flash the anonymous label
   while the session cookie is being checked. Visibility keeps the header width
   stable, then the auth scripts add .vd-auth-ready when the final label is known. */
html:not(.vd-auth-ready) .site-header .header-actions,
html:not(.vd-auth-ready) .site-header .mobile-login,
html:not(.vd-auth-ready) #vd-site .vd-header .vd-actions,
html:not(.vd-auth-ready) #vd-site .vd-nav .mobile-login { visibility:hidden; }
.menu-toggle,.vd-menu { border:0; border-radius:0; box-shadow:none; }
.space-search-form { padding:12.4px; }
.space-search-form textarea { height:56px; min-height:56px; font-size:16px; padding:15px 12px; overflow-y:hidden; }
.space-search-form textarea:focus::placeholder { color:transparent; opacity:0; }
.space-search-form button { min-height:56px; }
.inquiry-intro .eyebrow { font-size:11px; }
.unified-footer { width:var(--content); margin:0 auto; padding:38px 0 36px; border-top:1px solid #dfe0e3; color:#5f6570; background:#fff; }
.unified-footer .footer-brandline { display:flex; align-items:center; gap:clamp(36px,8vw,170px); margin-bottom:28px; }
.unified-footer .footer-brand { display:inline-flex; align-items:center; gap:10px; color:var(--ink); font-size:22px; font-weight:800; letter-spacing:-.08em; white-space:nowrap; }
.unified-footer .footer-brand .brand-mark i { background:var(--ink); }
.unified-footer .footer-brandline p { margin:0; color:#747985; font-size:13px; }
.unified-footer .footer-company { display:grid; gap:9px; max-width:none; }
.unified-footer .footer-company-row { display:flex; flex-wrap:wrap; align-items:center; column-gap:36px; row-gap:5px; font-size:12px; line-height:1.7; }
.unified-footer .footer-company-row span { white-space:nowrap; }
.unified-footer .footer-company-row b { color:var(--ink); font-weight:700; }
.unified-footer > small { display:block; margin-top:13px; color:#8c9098; font-size:10px; line-height:1.7; letter-spacing:0; }
.unified-footer .footer-legal { display:flex; gap:30px; margin-top:18px; }
.unified-footer .footer-legal a { color:var(--ink); font-size:13px; font-weight:700; }
@media(max-width:960px){
 .site-header { height:70px; }
 .site-header.is-menu-open .main-nav { position:absolute; top:70px; left:0; right:0; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:8px 22px 18px; background:#fff; border-bottom:1px solid #dfe1e7; }
 .site-header.is-menu-open .main-nav a { min-height:48px; display:flex; align-items:center; }
 .site-header.is-menu-open .main-nav,#vd-site .vd-header.vd-open .vd-nav { max-height:calc(100dvh - 70px); overflow-y:auto; overscroll-behavior:contain; }
 .mobile-login, .mobile-inquiry,#vd-site .vd-nav .mobile-login,#vd-site .vd-nav .mobile-inquiry { display:flex; color:#435bff; font-weight:700; }
}
@media(max-width:700px){
 .solution-intro { padding:48px 0 40px; }
 .solution-page h1,.space-search-heading h1 { font-size:clamp(36px,10.2vw,48px); }
 .solution-page h2 { font-size:34px; }
 .solution-intro > p:not(.eyebrow) { font-size:15px; }
 .solution-intro > p br { display:none; }
 .solution-intro .button,.solution-cta .button { width:100%; }
 .solution-nav { gap:6px; margin-bottom:30px; }
 .solution-nav a { padding:8px 10px; font-size:12px; }
 .solution-directory { padding-bottom:64px; }
 .solution-directory > a { grid-template-columns:24px minmax(0,1fr); gap:12px; padding:28px 0; }
 .solution-directory h2 { font-size:28px; }
 .solution-directory p:not(.eyebrow) { font-size:15px; }
 .directory-action { grid-column:2; min-height:44px; display:flex; align-items:center; }
 .solution-section { grid-template-columns:minmax(0,1fr); gap:24px; padding:32px 0; }
 .solution-rows article { padding:22px 0; }
 .solution-rows { margin-top:0; }
 .solution-rows h3 { font-size:22px; }
 .solution-rows p { font-size:15px; }
 .solution-cta { padding-bottom:64px; }
 .solution-image-cta { padding:48px 24px; margin-bottom:48px; border-radius:18px; background-image:linear-gradient(90deg,rgba(17,19,26,.87),rgba(17,19,26,.64)),var(--cta-image); }
 .unified-footer { padding:28px 0 34px; }
 .unified-footer .footer-brandline { align-items:flex-start; flex-direction:column; gap:10px; margin-bottom:22px; }
 .unified-footer .footer-company-row { display:grid; gap:4px; }
 .unified-footer .footer-company-row span { white-space:normal; }
 .unified-footer .footer-legal { gap:22px; margin-top:17px; }
 .space-additional-item > a { min-height:48px; font-size:13px; }
 .space-search-form { padding:9px; gap:11px; }
 .space-search-form textarea { height:65px; min-height:65px; font-size:16px; padding:14px 10px; }
 .space-search-form button { min-height:45px; }
}

.rental-fields { border:0; padding:0; margin:0; min-width:0; display:grid; gap:18px; }
.rental-fields[hidden] { display:none; }
.rental-fields legend { font-size:16px; font-weight:700; margin-bottom:20px; }
.inquiry-dates { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; }
.inquiry-form .inquiry-check { display:flex; align-items:center; gap:10px; min-height:44px; margin:0; font-size:14px; font-weight:400; }
.inquiry-form .inquiry-check input { width:20px; height:20px; margin:0; flex:0 0 auto; accent-color:#435bff; }
.inquiry-form input:disabled { background:#f2f3f5; }
.inquiry-form input[readonly] { background:#f5f6ff; color:#435bff; font-weight:700; }
.selected-space-summary { padding:24px; margin-bottom:28px; background:#f5f6ff; border:1px solid #dfe3ff; border-radius:14px; overflow-wrap:anywhere; }
.selected-space-summary strong { font-size:20px; }
.selected-space-summary p { margin:12px 0; line-height:1.7; }
.selected-space-summary small { color:#626975; font-size:13px; }
.floating-contact { position:fixed; z-index:25; right:max(24px,env(safe-area-inset-right)); bottom:calc(24px + env(safe-area-inset-bottom)); display:grid; gap:8px; justify-items:stretch; }
.floating-contact[hidden] { display:none; }
.floating-contact p { padding:10px 14px; margin:0; border:1px solid #e6e7ea; border-radius:10px; background:#fff; color:#333843; font-size:13px; text-align:center; box-shadow:0 4px 18px #11131a0d; }
.floating-contact-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; border-radius:10px; color:#fff; background:#435bff; font-size:14px; font-weight:700; text-decoration:none; box-shadow:0 6px 24px #435bff30; }
.floating-contact-button[href="inquiry.html"] { padding-top:10.3px; padding-bottom:10.3px; }
.floating-contact-button:focus-visible { outline:3px solid #11131a; outline-offset:4px; }
.has-floating-contact { padding-bottom:120px; }
.has-floating-contact .vd-help { display:none !important; }
.vd-blue-button-large { min-height:44px; line-height:1.4; }

/* Official VENUEDA logo supplied by the owner. The source artwork is a
   square stacked mark, so it is kept at its original aspect ratio in every
   header/footer instead of being stretched into a wordmark. */
.site-header .brand,
.unified-footer .footer-brand,
.site-footer .brand-footer { gap:0; }
.site-header .brand .brand-mark,
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark {
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:block;
  background:url('../assets/venueda-logo.png') center / contain no-repeat;
}
.site-header .brand .brand-mark i,
.unified-footer .footer-brand .brand-mark i,
.site-footer .brand-footer .brand-mark i { display:none; }
.site-header .brand > span:not(.brand-mark),
.site-header .brand > strong,
.unified-footer .footer-brand > strong,
.site-footer .brand-footer > strong { display:none; }
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark { flex-basis:64px; width:64px; height:64px; }

/* Member screens share the same supplied logo. */
.member-brand { gap:0; }
.member-brand-mark {
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:block;
  background:url('../assets/venueda-logo.png') center / contain no-repeat;
}
.member-brand-mark i { display:none; }
.member-brand > span:not(.member-brand-mark),
.member-brand > strong,
.member-footer .footer-brand > strong { display:none; }
.member-footer .footer-brand .member-brand-mark { flex-basis:64px; width:64px; height:64px; }
@media(max-width:700px){
 .inquiry-dates { grid-template-columns:minmax(0,1fr); gap:16px; }
 .inquiry-form input:not([type=checkbox]),.inquiry-form select,.inquiry-form textarea { font-size:16px; min-width:0; width:100%; box-sizing:border-box; }
 .floating-contact { right:16px; bottom:calc(16px + env(safe-area-inset-bottom)); max-width:calc(100vw - 32px); gap:6px; }
 .floating-contact p { font-size:12px; padding:7px 10px; }
 .floating-contact-button { min-height:46px; padding:10px 16px; font-size:13px; }
 .floating-contact-button[href="inquiry.html"] { padding-top:8.35px; padding-bottom:8.35px; }
 .vd-blue-button-large { white-space:normal; overflow-wrap:break-word; }
}

/* Supplied VENUEDA symbol used by the navigation system. The homepage has a
   separate .vd-header, so this rule intentionally covers both header families. */
.site-header .brand .brand-mark,
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-brand-mark {
  flex: 0 0 34px;
  width: 34px;
  height: 24px;
  display: block;
  background: url('../assets/venueda-logo.png') center 42% / 172% auto no-repeat;
}
.site-header .brand,
.unified-footer .footer-brand,
.site-footer .brand-footer,
.member-brand,
.member-footer .footer-brand { gap: 10px; }

/* 2026-09-17: make the supplied square logo easier to recognize and give
   its home link a comfortable hit area. The padding is part of the anchor,
   so the surrounding logo whitespace also returns to the homepage. */
.site-header .brand,
.unified-footer .footer-brand,
.site-footer .brand-footer,
.member-brand,
.member-footer .footer-brand,
#vd-site .vd-brand,
#vd-site .vd-footer-brand {
  padding: 5px;
  margin: -5px;
  cursor: pointer;
}
.site-header .brand .brand-mark,
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-brand-mark,
#vd-site .vd-brand .vd-mark,
#vd-site .vd-footer-brand .vd-mark {
  flex-basis: 62px !important;
  width: 62px !important;
  height: 62px !important;
}
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-footer .footer-brand .member-brand-mark,
#vd-site .vd-footer-brand .vd-mark {
  flex-basis: 74px !important;
  width: 74px !important;
  height: 74px !important;
}
@media (max-width: 700px) {
  .site-header .brand .brand-mark,
  .unified-footer .footer-brand .brand-mark,
  .site-footer .brand-footer .brand-mark,
  .member-brand-mark,
  #vd-site .vd-brand .vd-mark,
  #vd-site .vd-footer-brand .vd-mark {
    flex-basis: 54px !important;
    width: 54px !important;
    height: 54px !important;
  }
  .unified-footer .footer-brand .brand-mark,
  .site-footer .brand-footer .brand-mark,
  .member-footer .footer-brand .member-brand-mark,
  #vd-site .vd-footer-brand .vd-mark {
    flex-basis: 64px !important;
    width: 64px !important;
    height: 64px !important;
  }
}

/* 2026-09 review: one small, semantic bridge for database-backed cards. */
:root {
  --vd-ink: #11131a;
  --vd-muted: #747985;
  --vd-line: #e6e7ea;
  --vd-paper: #fff;
  --vd-blue: #435bff;
}
.managed-photo { background: #f3f4f6; }
.managed-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.managed-space-card .vd-space-info { min-height:42px; }
.managed-hero-card .managed-photo { height:220px; }
.managed-hero-card .managed-photo span { color:#fff; text-shadow:0 2px 10px rgba(0,0,0,.42); }
.vd-catalog-state { width:100%; padding:28px 0; color:var(--vd-muted); font-size:14px; }
.space-detail-visual[data-image-state="error"]::after { content:'공간 사진을 불러오지 못했습니다.'; display:grid; place-items:center; min-height:240px; color:var(--vd-muted); font-size:14px; }
.space-detail-visual[data-image-state="error"] #space-image { display:none; }

/* The reduced-motion preference must disable CSS movement as well as the
   homepage's JS marquee startup. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  #vd-site .vd-track, #vd-site .vd-hero-track, #vd-site .vd-new-space-grid { animation: none !important; transform: none !important; }
}

/* Owner-supplied logo lockup: use the complete artwork as-is. The old
   implementation cropped the artwork and added a separate Korean wordmark,
   which made the logo appear as a different brand. */
.site-header .brand,
.unified-footer .footer-brand,
.site-footer .brand-footer,
.member-brand,
.member-footer .footer-brand,
#vd-site .vd-brand,
#vd-site .vd-footer-brand {
  gap: 0 !important;
}
.site-header .brand .brand-mark,
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-brand-mark,
#vd-site .vd-brand .vd-mark,
#vd-site .vd-footer-brand .vd-mark {
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 52px !important;
  display: block !important;
  background: url('../assets/venueda-logo.png') center / contain no-repeat !important;
}
.site-header .brand > span:not(.brand-mark),
.site-header .brand > strong,
.unified-footer .footer-brand > strong,
.site-footer .brand-footer > span:not(.brand-mark),
.site-footer .brand-footer > strong,
.member-brand > span:not(.member-brand-mark),
.member-brand > strong,
.member-footer .footer-brand > strong,
#vd-site .vd-brand > span:not(.vd-mark),
#vd-site .vd-footer-brand > strong {
  display: none !important;
}
#vd-site .vd-brand .vd-mark,
#vd-site .vd-footer-brand .vd-mark {
  background-image: url('../assets/venueda-logo.png') !important;
}

/* Card treatment: remove the old English image captions and keep the
   owner-supplied VENUEDA lockup as a quiet, centered watermark. */
#vd-site .vd-photo::after,
#vd-site .vd-art::after,
#vd-site .vd-new-space-photo::after,
.space-result-image::after {
  content: '';
  position: absolute;
  z-index: 2;
  inset: 0;
  display: block !important;
  pointer-events: none;
  background: url('../assets/venueda-logo.png') center / 31% auto no-repeat;
  opacity: .2;
  mix-blend-mode: multiply;
}
#vd-site .vd-photo > span,
#vd-site .vd-art > b,
#vd-site .vd-new-space-photo > b {
  display: none !important;
}
.space-result-image .space-result-region { z-index: 3; }

/* Managed detail photos use one hero frame plus all remaining images below it.
   Keeping the gallery outside the hero's aspect-ratio box prevents it from
   being clipped into the blank preview shown by the old layout. */
.space-detail-visual { display: grid; gap: 18px; min-width: 0; overflow: visible; background: transparent; aspect-ratio: auto; }
.space-detail-hero { overflow: hidden; border-radius: 18px; background: #e9ebee; aspect-ratio: 4 / 3; }
.space-detail-hero img { width: 100%; height: 100%; object-fit: cover; display: block; }
.managed-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 0; }
.managed-gallery img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; display: block; }
.managed-new-photo { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 780px) {
  .managed-gallery { grid-template-columns: 1fr; gap: 12px; }
}
@media (max-width: 700px) {
  .site-header .brand .brand-mark,
  .unified-footer .footer-brand .brand-mark,
  .site-footer .brand-footer .brand-mark,
  .member-brand-mark,
  #vd-site .vd-brand .vd-mark,
  #vd-site .vd-footer-brand .vd-mark {
    flex-basis: 46px !important;
    width: 46px !important;
    height: 46px !important;
  }
}
.site-header .brand .brand-mark i,
.unified-footer .footer-brand .brand-mark i,
.site-footer .brand-footer .brand-mark i,
.member-brand-mark i { display: none; }
.site-header .brand > span:not(.brand-mark),
.site-header .brand > strong,
.unified-footer .footer-brand > strong,
.site-footer .brand-footer > span,
.site-footer .brand-footer > strong,
.member-brand > span:not(.member-brand-mark),
.member-brand > strong,
.member-footer .footer-brand > strong { display: inline; }
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-footer .footer-brand .member-brand-mark {
  flex-basis: 34px;
  width: 34px;
  height: 24px;
}

/* Keep the attendee and budget controls aligned even when budget has a checkbox. */
.rental-fields .inquiry-dates { align-items: start; }
.rental-fields .inquiry-dates > .inquiry-field {
 align-self: start;
 align-content: start;
 min-width: 0;
}
.rental-fields .inquiry-dates > .inquiry-field > label:not(.inquiry-check) {
 display: flex;
 align-items: flex-start;
 min-height: 1.5em;
 line-height: 1.5;
}
.rental-fields .inquiry-dates > .inquiry-field > input {
 height: 50px;
 min-height: 50px;
 box-sizing: border-box;
}
.rental-fields .inquiry-dates > .inquiry-field > .inquiry-check { align-self: start; }

/* Main-home typography baseline for every public sub-page.
   Keep the page-specific sizes, but use the homepage's display rhythm and
   tracking so new screens do not grow a separate visual language. */
body:not(:has(#vd-site)) {
  font-family: "Pretendard", "Noto Sans KR", Arial, sans-serif;
}
.solution-page .eyebrow,
.inquiry-page .eyebrow,
.member-page .member-eyebrow,
.member-page .card-kicker {
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: .16em;
}
.solution-page .solution-intro h1,
.inquiry-page .inquiry-intro h1,
.space-search-page .space-search-heading h1,
.space-detail-page .space-detail-copy h1,
.member-page .login-intro h1,
.member-page .join-intro h1,
.member-page .dashboard-intro h1,
.member-page .space-preview-head h1 {
  font-family: inherit;
  font-size: var(--vd-title-size, clamp(48px, 7.1vw, 80px));
  font-weight: 700;
  line-height: 1.21 !important;
  letter-spacing: var(--vd-title-letter-spacing, -.075em);
  word-break: keep-all;
  overflow-wrap: normal;
}
.solution-page h2,
.inquiry-page h2,
.space-search-page h2,
.space-detail-page h2,
.member-page h2 {
  font-family: inherit;
  font-weight: 700;
  line-height: 1.21 !important;
  letter-spacing: -.075em;
}
.solution-page .solution-intro > p:not(.eyebrow),
.solution-page .solution-directory p:not(.eyebrow) {
  line-height: 1.6;
  letter-spacing: 0;
}
.inquiry-page .inquiry-intro > p:not(.eyebrow),
.solution-page .solution-rows p,
.solution-page .solution-example-grid figcaption p,
.member-page .member-lead,
.member-page .space-preview-head > p {
  line-height: 1.6;
  letter-spacing: -.02em;
}
.solution-page .solution-rows h3,
.solution-page .solution-example-grid figcaption h3 {
  line-height: 1.18;
  letter-spacing: -.06em;
}
@media(max-width:700px) {
  .solution-page .solution-intro h1,
  .inquiry-page .inquiry-intro h1,
  .member-page .login-intro h1,
  .member-page .join-intro h1,
  .member-page .dashboard-intro h1,
  .member-page .space-preview-head h1 {
    font-size: var(--vd-title-size, clamp(39px, 11.7vw, 64px));
    letter-spacing: var(--vd-title-letter-spacing, -.075em);
  }
}

/* Use the exact symbol from the owner's supplied VENUEDA logo. Keep the
   wordmark text beside it so the existing horizontal header lockup remains
   unchanged across public, member, and footer surfaces. */
.site-header .brand .brand-mark,
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-brand-mark {
  flex: 0 0 40px;
  width: 40px;
  height: 24px;
  display: block;
  background-image: url('../assets/venueda-logo.png');
  background-repeat: no-repeat;
  background-size: 172% auto;
  background-position: center 42%;
}
.site-header .brand,
.unified-footer .footer-brand,
.site-footer .brand-footer,
.member-brand,
.member-footer .footer-brand { gap: 10px; }

/* Bounded UI fixes: scale the space inquiry CTA and every VenueDA lockup
   from the currently rendered dimensions without changing page structure. */
.space-detail-cta {
  min-width: 229px;
  height: 68px;
  padding-inline: 26px;
  border-radius: 13px;
  font-size: 17px;
}
.space-detail-page .space-detail-copy .space-favorite-button {
  box-sizing: border-box;
  height: 68px;
  min-height: 68px;
}
.floating-contact-button[href="inquiry.html"] {
  box-sizing: border-box;
  width: 188px;
  height: 69px;
  min-height: 69px;
  padding: 10.3px 22px;
  font-size: 18.2px;
}
.site-header .brand .brand-mark,
.unified-footer .footer-brand .brand-mark,
.site-footer .brand-footer .brand-mark,
.member-brand-mark,
#vd-site .vd-brand .vd-mark,
#vd-site .vd-footer-brand .vd-mark {
  flex-basis: 68px !important;
  width: 68px !important;
  height: 68px !important;
}
.dashboard-intro .member-lead,
.dashboard-account h2 {
  word-break: keep-all;
  overflow-wrap: normal;
}
.dashboard-greeting-name,
.dashboard-nowrap {
  word-break: keep-all;
  overflow-wrap: normal;
}
.dashboard-greeting-name { white-space: normal; }

@media (max-width: 700px) {
  .floating-contact-button[href="inquiry.html"] {
    width: 168px;
    height: 63px;
    min-height: 63px;
    padding: 8.35px 16px;
    font-size: 18.2px;
  }
  .site-header .brand .brand-mark,
  .unified-footer .footer-brand .brand-mark,
  .site-footer .brand-footer .brand-mark,
  .member-brand-mark,
  #vd-site .vd-brand .vd-mark,
  #vd-site .vd-footer-brand .vd-mark {
    flex-basis: 60px !important;
    width: 60px !important;
    height: 60px !important;
  }
}
