/*
Theme Name: Bigyo GeneratePress Child
Theme URI: https://bigyo.kr
Description: Bigyo mortgage site child theme for GeneratePress.
Author: Bigyo
Template: generatepress
Version: 1.0.40
Text Domain: bigyo-generatepress-child
*/

:root {
  --bg-page:#ffffff;
  --bg-card:#ffffff;
  --bg-elevated:#f8fafc;
  --bg-hero:#fbfcfe;
  --bg-callout:#f3f6fb;
  --bg-accent-tint:#eef4ff;
  --bg-hover:#f7f9fc;
  --border:#d0d5dd;
  --border-subtle:#e4e7ec;
  --border-accent:#b8c8e8;
  --border-accent-strong:#8fb2ef;
  --text-primary:#1a1a1a;
  --text-secondary:#344054;
  --text-muted:#5b6575;
  --accent:#1a56db;
  --accent-hover:#1649bd;
  --accent-ink:#123a8c;
  --text-on-accent:#ffffff;
  --accent-wash:rgba(26,86,219,.08);
  --accent-wash-strong:rgba(26,86,219,.14);
  --accent-border:rgba(26,86,219,.35);
  --accent-border-strong:rgba(26,86,219,.45);
  --button-shadow:0 9px 20px rgba(26,86,219,.16);
  --shadow:0 8px 24px rgba(16,24,40,.08);
  --shadow-dropdown:0 18px 40px rgba(16,24,40,.14);
  --shadow-float:0 10px 30px rgba(16,24,40,.16);
  --shadow-ring:0 0 0 5px rgba(26,86,219,.12);
  --fs-2xs:12px;
  --fs-xs:13px;
  --fs-sm:14px;
  --fs-base:16px;
  --fs-md:18px;
  --fs-lg:21px;
  --fs-xl:32px;
  --fs-action-icon:17px;
  --fs-stat:17px;
  --fs-home-h1-mobile:31px;
  --nav-overlay:rgba(255,255,255,.94);
  --border-overlay:rgba(31,41,55,.14);
  --shadow-overlay:rgba(16,24,40,.14);
  --accent-ring-color:rgba(26,86,219,.12);
  --accent-border-soft:rgba(26,86,219,.27);
  --on-accent-divider:rgba(255,255,255,.45);
}
body { background:var(--bg-page); color:var(--text-primary); }
.site-header, .site-footer, .main-navigation { display:none !important; }
.bigyo-nav-wrap { position:sticky; top:0; z-index:100; overflow:visible; background:var(--nav-overlay); border-bottom:1px solid var(--border); }
.bigyo-nav-inner,.bigyo-container,.bigyo-section,.bigyo-home-hero { width:min(1248px,calc(100% - 48px)); margin:auto; }
.bigyo-nav-inner,.bigyo-nav { overflow:visible; }
.bigyo-nav-inner { min-height:74px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.bigyo-brand { display:flex; align-items:center; gap:10px; color:var(--text-primary); text-decoration:none; font-weight:600; }
.bigyo-mark,.bigyo-card-symbol { display:grid; place-items:center; background:var(--accent); color:var(--accent-ink); font-weight:700; }
.bigyo-mark { width:30px; height:30px; border-radius:9px; font-size:var(--fs-2xs); }
.bigyo-nav { display:flex; gap:8px; align-items:center; }
.bigyo-nav-group { position:relative; z-index:1; }
.bigyo-nav-group:focus-within,.bigyo-nav-group:hover { z-index:120; }
.bigyo-nav-trigger { border:0; background:none; padding:13px 15px; color:var(--text-secondary); text-decoration:none; font-size:var(--fs-sm); }
.bigyo-nav-trigger span { color:var(--text-muted); margin-left:7px; }
.bigyo-nav-group:hover .bigyo-dropdown,.bigyo-nav-group:focus-within .bigyo-dropdown { display:block; }
.bigyo-dropdown { display:none; position:absolute; top:calc(100% + 8px); left:0; z-index:120; min-width:220px; padding:8px; border:1px solid var(--border); border-radius:12px; background:var(--bg-card); box-shadow:var(--shadow-dropdown); }
.bigyo-dropdown a { display:flex; justify-content:space-between; padding:11px 12px; color:var(--text-secondary); text-decoration:none; font-size:var(--fs-sm); border-radius:8px; }
.bigyo-dropdown a:hover { background:var(--bg-hover); color:var(--text-primary); }.bigyo-dropdown a span { color:var(--accent); }
.bigyo-home-hero { margin-top:54px; padding:78px 40px 40px; text-align:center; border:1px solid var(--border-subtle); border-radius:22px; background:var(--bg-hero); }
.bigyo-home-hero h1 em { color:var(--accent); font-style:normal; }.bigyo-home-hero p,.bigyo-entry-hero p { color:var(--text-secondary); font-size:var(--fs-base); line-height:1.75; }
.bigyo-button { display:inline-block; padding:11px 17px; border-radius:9px; background:var(--accent); color:var(--text-on-accent); text-decoration:none; font-size:var(--fs-sm); font-weight:600; }
.bigyo-trust-row { width:min(660px,100%); margin:54px auto 0; padding-top:22px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--border); text-align:left; color:var(--accent); }.bigyo-trust-row div { padding:0 18px; border-right:1px solid var(--border); }.bigyo-trust-row div:last-child { border:0; }.bigyo-trust-row strong,.bigyo-trust-row small { display:block; margin-left:26px; }.bigyo-trust-row strong { margin-top:-20px; color:var(--text-primary); font-size:var(--fs-xs); }.bigyo-trust-row small { margin-top:4px; color:var(--text-muted); font-size:var(--fs-2xs); }
.bigyo-section { padding:92px 0 24px; }.bigyo-section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:28px; }.bigyo-section-heading h2 { margin:9px 0 0; font-size:var(--fs-xl); letter-spacing:-.04em; }.bigyo-section-heading p { margin:0; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.6; text-align:right; }
.bigyo-hub-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.bigyo-hub-card { min-height:190px; padding:23px 24px 20px; border:1px solid var(--border); border-radius:15px; background:var(--bg-card); box-shadow:var(--shadow); }.bigyo-hub-card.priority-high { border-color:var(--border-accent); background:var(--bg-accent-tint); }.bigyo-hub-card.priority-low { opacity:.86; }.bigyo-card-symbol { width:22px; height:22px; border-radius:7px; }.bigyo-card-meta { display:flex; justify-content:space-between; align-items:center; }.bigyo-card-meta span { margin-top:14px; color:var(--text-muted); font-size:var(--fs-2xs); }.bigyo-card-meta b { margin-top:14px; padding:3px 7px; border:1px solid var(--accent-border); border-radius:5px; color:var(--accent); font-size:var(--fs-2xs); }.bigyo-hub-card h3 { margin:8px 0; font-size:var(--fs-md); }.bigyo-hub-card p { min-height:45px; margin:0 0 13px; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.6; }.bigyo-hub-card a,.bigyo-article-card a { color:var(--accent); text-decoration:none; font-size:var(--fs-sm); font-weight:600; }
.bigyo-cta-banner { margin-top:20px; padding:46px 56px; display:flex; justify-content:space-between; align-items:center; border:1px solid var(--border); border-radius:19px; background:var(--bg-card); }.bigyo-cta-banner h2 { margin:12px 0 8px; font-size:var(--fs-xl); line-height:1.3; }.bigyo-cta-banner p { max-width:500px; margin:0; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.7; }
.bigyo-cta-banner p:empty { display:none; }
.bigyo-cta-banner strong { flex:1 1 auto; margin:0; padding-right:24px; color:var(--text-primary); font-size:var(--fs-lg); font-weight:700; line-height:1.4; }
.bigyo-cta-banner p.bigyo-cta { margin:0; max-width:none; flex:0 0 auto; }
.bigyo-cta-banner p.bigyo-cta .bigyo-action-link { margin:0; }.bigyo-result-preview { padding:22px; border:1px solid var(--border-accent); border-radius:12px; background:var(--bg-accent-tint); }.bigyo-result-preview span,.bigyo-result-preview small { display:block; color:var(--text-secondary); font-size:var(--fs-2xs); }.bigyo-result-preview strong { display:block; margin:9px 0; font-size:var(--fs-lg); }
.bigyo-entry { padding-bottom:80px; }.bigyo-entry-hero { padding:70px 0; border-bottom:1px solid var(--border); }.bigyo-breadcrumb { margin-bottom:45px; color:var(--text-muted); font-size:var(--fs-xs); }.bigyo-breadcrumb a { color:var(--text-secondary); }.bigyo-summary-grid,.bigyo-article-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }.bigyo-summary-grid { padding:32px 0 48px; }.bigyo-info-card,.bigyo-article-card,.bigyo-tool-card,.bigyo-answer-box { padding:24px; border:1px solid var(--border); border-radius:14px; background:var(--bg-card); box-shadow:var(--shadow); }.bigyo-info-card>span { display:grid; place-items:center; width:35px; height:35px; border-radius:50%; background:var(--accent); color:var(--text-on-accent); }.bigyo-info-card h2 { margin:20px 0 14px; font-size:var(--fs-lg); }.bigyo-info-card ul { list-style:none; padding:0; margin:0; }.bigyo-info-card li { padding:8px 0; border-top:1px solid var(--border); color:var(--text-secondary); font-size:var(--fs-sm); }.bigyo-entry-body { max-width:820px; margin:0 auto; padding:10px 0 30px; font-size:var(--fs-md); line-height:1.8; }.bigyo-byline { display:flex; gap:16px; margin:10px 0 30px; color:var(--text-muted); font-size:var(--fs-xs); }.bigyo-answer-box { margin:25px 0; border-left:3px solid var(--accent); }.bigyo-answer-box strong { color:var(--text-primary); }.bigyo-answer-box p { margin:10px 0 0; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.7; }.bigyo-entry-body .entry-content { color:var(--text-secondary); font-size:var(--fs-base); line-height:1.85; }.bigyo-related { padding-top:40px; }.bigyo-article-grid { grid-template-columns:repeat(3,1fr); }.bigyo-article-card { min-height:155px; }.bigyo-index { color:var(--accent); font-size:var(--fs-2xs); }.bigyo-article-card h3 { margin:26px 0 18px; font-size:var(--fs-base); }.bigyo-tool-card { max-width:600px; margin:24px auto; }.bigyo-tool-card h2 { margin:0 0 8px; }.bigyo-tool-card p,.bigyo-tool-card small { color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.6; }.bigyo-tool-card label { display:block; margin:17px 0; color:var(--text-secondary); font-size:var(--fs-sm); }.bigyo-tool-card input,.bigyo-tool-card select { display:block; width:100%; margin-top:7px; padding:10px; border:1px solid var(--border); border-radius:7px; background:var(--bg-page); color:var(--text-primary); }.bigyo-tool-result { margin-top:20px; padding:18px; border:1px solid var(--border-accent); border-radius:9px; color:var(--text-muted); }.bigyo-tool-result strong { color:var(--text-primary); font-size:var(--fs-lg); }.bigyo-site-main + .site-footer { display:none; }
.bigyo-entry-body h2 { margin-top:50px; }
.bigyo-entry-body th { background:var(--bg-elevated); text-align:left; }
.bigyo-entry-body li { margin-bottom:8px; }
@media(max-width:800px){.bigyo-nav-inner,.bigyo-container,.bigyo-section,.bigyo-home-hero{width:calc(100% - 32px)}.bigyo-nav-inner{flex-wrap:wrap;padding:14px 0}.bigyo-nav{display:flex;width:100%;flex-wrap:wrap;justify-content:flex-start;gap:4px}.bigyo-nav-trigger{padding:10px 8px}.bigyo-nav-group{flex:1 1 45%}.bigyo-home-hero{margin-top:20px;padding:57px 22px 28px}.bigyo-trust-row{grid-template-columns:1fr;gap:14px}.bigyo-trust-row div{border:0;padding:0}.bigyo-section-heading{align-items:start;flex-direction:column;gap:13px}.bigyo-section-heading p{text-align:left}.bigyo-hub-grid{grid-template-columns:repeat(2,1fr)}.bigyo-cta-banner{padding:32px 24px;flex-direction:column;align-items:flex-start;gap:24px}.bigyo-cta-banner>.bigyo-button{flex:0 0 auto;width:auto;white-space:nowrap}.bigyo-result-preview{display:none}.bigyo-summary-grid,.bigyo-article-grid{grid-template-columns:1fr}.bigyo-entry-hero{padding-top:35px}}
@media(max-width:520px){.bigyo-hub-grid{grid-template-columns:1fr}.bigyo-byline{flex-wrap:wrap}}

@media (min-width:821px) and (max-width:1279px){.bigyo-nav-inner{gap:16px}.bigyo-nav{gap:4px}.bigyo-nav-trigger{padding-left:10px;padding-right:10px}}
@media (min-width:801px) and (max-width:1280px){.bigyo-nav-wrap .bigyo-nav{gap:6px!important}}

/* Light-theme semantic overrides for accent surfaces. */
.bigyo-mark,.bigyo-card-symbol { color:var(--text-on-accent); }
.bigyo-card-meta b { background:var(--accent-wash); }

/* Keep the Korean hero headline readable without changing its SEO text. */
.bigyo-home-hero h1 { max-width:900px; margin:18px auto 16px; color:var(--text-primary); font-size:clamp(36px,4vw,50px); line-height:1.25; letter-spacing:-.045em; word-break:keep-all; overflow-wrap:normal; }
@media (max-width:520px){.bigyo-home-hero h1{max-width:none;font-size:var(--fs-home-h1-mobile);line-height:1.25;letter-spacing:-.05em;word-break:normal}}

/* The legacy mobile toggle is superseded by the custom grouped navigation. */
.bigyo-mobile-toggle { display:none !important; }

.bigyo-hub-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:0 0 32px; border:1px solid var(--border); border-radius:14px; background:var(--bg-elevated); box-shadow:var(--shadow); overflow:hidden; }
.bigyo-hub-stat { display:flex; flex-direction:column; min-height:132px; padding:20px; border-right:1px solid var(--border); }.bigyo-hub-stat:last-child { border-right:0; }.bigyo-hub-stat>span { display:block; margin-bottom:11px; color:var(--text-muted); font-size:var(--fs-xs); }.bigyo-hub-stat strong,.bigyo-hub-stat a { display:block; margin-bottom:12px; color:var(--text-primary); font-size:var(--fs-stat); line-height:1.4; }.bigyo-hub-stat a { color:var(--accent); text-decoration:none; font-weight:700; }.bigyo-hub-stat small { display:block; margin-top:10px; color:var(--text-secondary); font-size:var(--fs-2xs); line-height:1.5; }.bigyo-hub-stat small:first-of-type { margin-top:auto; }.bigyo-hub-stat small + small { margin-top:2px; }
.bigyo-intent-groups { padding:24px 0 28px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:44px; column-gap:16px; }.bigyo-intent-groups>.bigyo-section-heading { grid-column:1/-1; margin-bottom:0; }.bigyo-intent-group { min-width:0; margin:0; }.bigyo-intent-group>h3 { margin:0 0 16px; color:var(--text-primary); font-size:var(--fs-lg); line-height:1.4; }.bigyo-intent-group .bigyo-article-grid { grid-template-columns:1fr; }.bigyo-article-card h4 { margin:26px 0 18px; font-size:var(--fs-base); line-height:1.5; }
.bigyo-intent-group .bigyo-article-card h4 { margin-top:0; }
.bigyo-debt-notice { margin:72px 0 0; padding:24px 26px; border:1px solid var(--border); border-radius:12px; background:var(--bg-callout); }.bigyo-debt-notice h2 { margin:0 0 10px; color:var(--text-primary); font-size:var(--fs-md); }.bigyo-debt-notice p { margin:0; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.8; }
.bigyo-site-main > .bigyo-debt-notice { width:min(1248px,calc(100% - 48px)); box-sizing:border-box; margin-left:auto; margin-right:auto; }
@media(max-width:800px){.bigyo-hub-stats{grid-template-columns:repeat(2,1fr)}.bigyo-hub-stat:nth-child(2){border-right:0}.bigyo-hub-stat:nth-child(-n+2){border-bottom:1px solid var(--border)}.bigyo-intent-groups{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px;column-gap:16px}.bigyo-intent-group .bigyo-article-grid{grid-template-columns:1fr}}
@media(max-width:520px){.bigyo-hub-stats{grid-template-columns:1fr}.bigyo-hub-stat{border-right:0;border-bottom:1px solid var(--border)}.bigyo-hub-stat:last-child{border-bottom:0}.bigyo-intent-groups{grid-template-columns:1fr;gap:32px}.bigyo-intent-groups>.bigyo-section-heading{grid-column:auto}.bigyo-debt-notice{padding:20px}.bigyo-debt-notice p{font-size:var(--fs-sm)}}
.bigyo-intent-groups .bigyo-section-heading>p,
.bigyo-intent-groups .bigyo-index { display:none; }
/* Summary boxes use one neutral surface; the repeated accent bar was decorative rather than semantic. */
.bigyo-answer-box { border-left:1px solid var(--border) !important; }
.bigyo-cta-banner { background:var(--bg-card) !important; }
/* 2026-09-05: 인포그래픽이 본문 컬럼(820px) 거의 전체 폭으로 나와 히어로 배너처럼 보이던 문제 수정.
   보조 요소답게 폭을 제한하고 가운데 정렬. */
.bigyo-inline-infographic { margin:28px auto; max-width:560px; text-align:center; }
.bigyo-inline-infographic img { max-width:100%; height:auto; border-radius:12px; }
.bigyo-inline-infographic figcaption { margin-top:10px; color:var(--text-muted); font-size:var(--fs-xs); }
.bigyo-inline-infographic + p.bigyo-cta { text-align:center; }
.bigyo-content-shell > .bigyo-cta .bigyo-action-link {
 color:var(--text-on-accent) !important;
}
.bigyo-content-shell > .bigyo-cta + h2 {
 margin-top:24px !important;
}
.bigyo-article-card .bigyo-card-link {
 display:inline-flex;
 align-items:center;
 gap:8px;
 padding:9px 13px;
 border:1px solid var(--accent);
 border-radius:8px;
 background:var(--accent);
 color:var(--text-on-accent) !important;
 font-size:var(--fs-sm);
 font-weight:700;
 text-decoration:none;
 line-height:1.35;
 box-shadow:var(--button-shadow);
}
.bigyo-article-card .bigyo-card-link:hover,
.bigyo-article-card .bigyo-card-link:focus-visible {
 background:var(--accent-hover);
 border-color:var(--accent-hover);
 color:var(--text-on-accent) !important;
}
.bigyo-answer-box { border-left:1px solid var(--border); }

/* Article rhythm: keep readable text spacing explicit across the real content wrappers. */
.bigyo-entry-body>p,
.bigyo-site-main.bigyo-entry>p { margin:0 0 24px; font-size:var(--fs-md); line-height:1.8; }
.bigyo-entry-body>h2,
.bigyo-site-main.bigyo-entry>h2 { margin:50px 0 20px; line-height:1.35; }
.bigyo-entry-body>h3,
.bigyo-site-main.bigyo-entry>h3 { margin:32px 0 14px; line-height:1.45; }
.bigyo-entry-body>ul,
.bigyo-entry-body>ol,
.bigyo-site-main.bigyo-entry>ul,
.bigyo-site-main.bigyo-entry>ol { margin:0 0 24px; line-height:1.8; }
.bigyo-entry-body>ul>li,
.bigyo-entry-body>ol>li,
.bigyo-site-main.bigyo-entry>ul>li,
.bigyo-site-main.bigyo-entry>ol>li { margin-bottom:8px; font-size:var(--fs-md); line-height:1.8; }
.bigyo-entry-body table,
.bigyo-site-main.bigyo-entry table { margin-top:24px; margin-bottom:32px; }

/* HUB-BOGEUM preview presentation: keep verification data in the content,
 * but keep the compact stat strip and article body visually focused. */
body.page-id-150 .bigyo-hub-stat:not(:last-child) small,
body.page-id-150 .bigyo-byline,
body.page-id-150 .source-note { display:none; }
body.page-id-150 .bigyo-entry-body,
body.page-id-150 .bigyo-entry-body h2,
body.page-id-150 .bigyo-entry-body h3,
body.page-id-150 .bigyo-entry-body p,
body.page-id-150 .bigyo-entry-body ul,
body.page-id-150 .bigyo-entry-body ol,
body.page-id-150 .bigyo-entry-body table { text-align:left; }
body.page-id-150 .bigyo-entry-body ul,
body.page-id-150 .bigyo-entry-body ol { padding-left:1.5em; list-style-position:outside; }
body.page-id-150 .bigyo-entry-body table { margin-left:0; margin-right:0; }
body.page-id-150 .bigyo-site-main.bigyo-entry,
body.page-id-150 .bigyo-site-main.bigyo-entry h2,
body.page-id-150 .bigyo-site-main.bigyo-entry h3,
body.page-id-150 .bigyo-site-main.bigyo-entry p,
body.page-id-150 .bigyo-site-main.bigyo-entry ul,
body.page-id-150 .bigyo-site-main.bigyo-entry ol,
body.page-id-150 .bigyo-site-main.bigyo-entry table { text-align:left; }
body.page-id-150 .bigyo-site-main.bigyo-entry ul,
body.page-id-150 .bigyo-site-main.bigyo-entry ol { padding-left:1.5em; list-style-position:outside; }
body.page-id-150 .bigyo-site-main.bigyo-entry table { margin-left:0; margin-right:0; }
body.page-id-150 .bigyo-site-main.bigyo-entry table th:first-child,
body.page-id-150 .bigyo-site-main.bigyo-entry table td:first-child { width:120px; min-width:120px; box-sizing:border-box; }
/* Keep the page-150 reading column centered without inheriting the desktop
 * fixed width on narrow screens. */
body.page-id-150 .bigyo-site-main.bigyo-entry {
 width:calc(100% - 32px);
 max-width:820px;
 box-sizing:border-box;
 margin-left:auto;
 margin-right:auto;
}

/* Action-oriented internal links: preserve the sitemap anchor text while making
 * the next step visibly clickable in hub cards and generated article content. */
.bigyo-action-link {
 display:inline-flex;
 align-items:center;
 gap:8px;
 margin-top:4px;
 padding:9px 13px;
 border:1px solid var(--accent);
 border-radius:8px;
 background:var(--accent);
 color:var(--text-on-accent) !important;
 font-size:var(--fs-sm);
 font-family:inherit;
 font-weight:700;
 letter-spacing:-.02em;
 text-decoration:none;
 white-space:normal;
 line-height:1.35;
 box-shadow:var(--button-shadow);
}
.bigyo-action-link:hover,
.bigyo-action-link:focus-visible {
 background:var(--accent-hover);
 border-color:var(--accent-hover);
 color:var(--text-on-accent) !important;
}
.bigyo-action-link span { color:var(--text-on-accent) !important; font-size:var(--fs-action-icon); font-weight:700; line-height:1; }
.bigyo-entry-body .bigyo-action-link { margin:8px 0; }
.bigyo-infographic figcaption { display:none; }
.bigyo-button {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:8px;
 font-family:inherit;
 font-size:var(--fs-sm);
 font-weight:700;
 letter-spacing:-.02em;
 line-height:21px;
 min-height:46px;
 color:var(--text-on-accent) !important;
}
.bigyo-button span { margin-left:0; color:var(--text-on-accent) !important; font-size:var(--fs-action-icon); font-weight:700; line-height:1; }
@media(max-width:520px){
 .bigyo-button { padding:10px 15px; }
 .bigyo-action-link { max-width:100%; padding:9px 11px; gap:6px; }
}

/* Give desktop navigation labels a small, consistent breathing space. */
@media (min-width:801px){
 .bigyo-nav-wrap .bigyo-nav { gap:8px !important; }
 .bigyo-nav-wrap .bigyo-nav-trigger { padding-left:7px !important; padding-right:7px !important; }
}

/* The legacy inline navigation override used 13px on desktop. Keep the
 * mobile value intact, but make the desktop label size follow the type scale. */
@media (min-width:801px){
 .bigyo-nav-wrap .bigyo-nav-trigger { font-size:var(--fs-sm) !important; }
}

/* At wide desktop widths, keep the larger labels within the nav column. */
@media (min-width:1281px){
 .bigyo-nav-wrap .bigyo-nav { gap:4px !important; }
 .bigyo-nav-wrap .bigyo-nav-trigger { padding-left:6px !important; padding-right:6px !important; }
}

/* At 1280px all nine groups can be visible, so use the compact desktop
 * spacing needed to keep the larger labels inside the available column. */
@media (min-width:801px) and (max-width:1280px){
 body .bigyo-nav-wrap .bigyo-nav { gap:4px !important; }
 .bigyo-nav-wrap .bigyo-nav-trigger { padding-left:4px !important; padding-right:4px !important; }
}

/* Internal hub/detail titles: keep long Korean action-keyword H1s readable
 * without changing the homepage H1 scale. */
.bigyo-entry-hero h1 {
 max-width:820px;
 margin:15px 0;
 font-size:clamp(30px,3vw,40px);
 line-height:1.3;
 letter-spacing:-.045em;
 word-break:keep-all;
 overflow-wrap:normal;
}

/* MAIN draft: keep the entry hero centered while the reading column below
 * remains left-aligned for comfortable scanning. */
body.page-id-149 .bigyo-entry-hero { text-align:center; }
body.page-id-149 .bigyo-entry-hero .bigyo-breadcrumb { text-align:center; }
body.page-id-149 .bigyo-entry-hero h1 { margin-left:auto; margin-right:auto; }
body.page-id-149 .bigyo-entry-hero .bigyo-button {
 display:flex;
 width:max-content;
 max-width:100%;
 margin-left:auto;
 margin-right:auto;
 box-sizing:border-box;
}
@media(max-width:520px){
 .bigyo-entry-hero h1 {
  line-height:1.3;
  letter-spacing:-.04em;
 }
}

/* At 375px the wrapped navigation is about 132px tall. Keep the entry hero
 * below that mobile header so the first action is not covered on load. */
@media(max-width:380px){
 .bigyo-entry-hero { padding-top:132px; }
}

/* Shared content-template defaults. Generated HTML must use these classes
 * instead of inline layout, color, or button styles. */
.bigyo-content-shell {
 width:100%;
 max-width:820px;
 margin:0 auto;
 text-align:left;
}
.bigyo-content-shell .bigyo-infographic { width:100%; max-width:720px; margin:0 auto 24px; }
.bigyo-content-shell .bigyo-infographic img { display:block; width:100%; height:auto; }

/* 본문에 페이지별 인포그래픽을 사용하는 bigyo 글은 GeneratePress의
 * 자동 대표 이미지 헤더를 함께 출력하지 않는다. 대표 이미지와 본문
 * 인포그래픽의 중복을 막고, 본문 이미지 1개만 검색·접근성 대상으로 둔다. */
body.page .featured-image.page-header-image,
body.single-post .featured-image.page-header-image { display:none; }
.bigyo-content-shell p { margin:0 0 24px; font-size:var(--fs-md); line-height:1.8; }
.bigyo-content-shell h2 { margin:50px 0 20px; line-height:1.35; }
.bigyo-content-shell h3 { margin:32px 0 14px; line-height:1.45; }
.bigyo-content-shell ul,.bigyo-content-shell ol { margin:0 0 24px; padding-left:1.5em; list-style-position:outside; line-height:1.8; }
.bigyo-content-shell li { margin-bottom:8px; }
.bigyo-table-scroll { width:100%; margin:24px 0 32px; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.bigyo-comparison-table { width:100%; min-width:640px; border-collapse:collapse; background:var(--bg-card); }
.bigyo-comparison-table caption { margin:0 0 8px; padding:0; color:var(--text-muted); font-size:var(--fs-xs); font-weight:700; text-align:left; caption-side:top; }
.bigyo-comparison-table th,.bigyo-comparison-table td { padding:8px 12px; border:1px solid var(--border-subtle); text-align:left; vertical-align:top; line-height:1.45; }
.bigyo-comparison-table:has(th:nth-child(2):last-child) th:first-child,.bigyo-comparison-table:has(th:nth-child(2):last-child) td:first-child { width:180px; min-width:180px; }
.bigyo-rate-benchmark-table { table-layout:fixed; min-width:0; max-width:480px; }
.bigyo-rate-benchmark-table th:nth-child(1),.bigyo-rate-benchmark-table td:nth-child(1),.bigyo-rate-benchmark-table th:nth-child(3),.bigyo-rate-benchmark-table td:nth-child(3) { width:115px; }
.bigyo-rate-benchmark-table th:nth-child(2),.bigyo-rate-benchmark-table td:nth-child(2),.bigyo-rate-benchmark-table th:nth-child(4),.bigyo-rate-benchmark-table td:nth-child(4) { width:auto; }
.bigyo-rate-benchmark-table th,.bigyo-rate-benchmark-table td { vertical-align:middle; }
.bigyo-rate-benchmark-table td:empty { border:none; background:transparent; }
/* 2026-09-05: 이 폭 규칙은 '항목|금액' 2열 계산표(HUB-LEASE)에 맞춘 것이다.
   열 개수를 가리지 않고 걸리면 3열 계산표(예: 확인 항목|확인할 내용|다음 행동)에서
   첫 열이 250px를 먹고 나머지가 85px씩으로 찌그러져 셀 높이가 40px -> 87px로 늘어난다.
   2열일 때만 적용되도록 스코프한다. 3열 이상은 기본 .bigyo-comparison-table 규칙이 지배한다. */
.bigyo-calculation-table:has(th:nth-child(2):last-child) { table-layout:fixed; width:min(100%,420px); min-width:0; }
.bigyo-calculation-table:has(th:nth-child(2):last-child) th:first-child,.bigyo-calculation-table:has(th:nth-child(2):last-child) td:first-child { width:250px !important; min-width:0 !important; }
.bigyo-calculation-table:has(th:nth-child(2):last-child) th:last-child,.bigyo-calculation-table:has(th:nth-child(2):last-child) td:last-child { width:auto !important; }
.bigyo-comparison-table th { background:var(--bg-elevated); color:var(--text-primary); }
.bigyo-comparison-table th:first-child,.bigyo-comparison-table td:first-child { width:120px; min-width:120px; box-sizing:border-box; }
.bigyo-content-shell .bigyo-action-link { margin:0 0 24px; }

/* Gutenberg buttons must use the site's blue action treatment rather than the
 * WordPress default charcoal button. Keep the block itself responsible for
 * spacing so an action does not inherit a second paragraph-sized gap. */
.bigyo-content-shell .wp-block-buttons { margin:16px 0 24px; }
.bigyo-content-shell > p + .wp-block-buttons { margin-top:4px; }
.bigyo-content-shell > .wp-block-buttons + h2 { margin-top:32px; }
.bigyo-content-shell > h2 + .bigyo-table-scroll { margin-top:4px; }
.bigyo-content-shell > h2:has(+ .bigyo-table-scroll) { margin-bottom:4px; }
.bigyo-content-shell > .wp-block-buttons + h2 { margin-top:24px; }
.bigyo-content-shell > .bigyo-table-scroll:has(+ .wp-block-buttons) { margin-bottom:16px; }
.bigyo-content-shell > .bigyo-table-scroll + .wp-block-buttons { margin-top:0; }
.bigyo-content-shell .wp-block-button__link.bigyo-action-link,
.bigyo-content-shell .wp-block-button.bigyo-action-link .wp-block-button__link {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:46px;
 box-sizing:border-box;
 margin:0;
 padding:11px 17px;
 border:1px solid var(--accent) !important;
 border-radius:9px;
 background:var(--accent) !important;
 color:var(--text-on-accent) !important;
 box-shadow:var(--button-shadow);
 font-family:inherit;
 font-size:var(--fs-sm);
 font-weight:700;
 line-height:1.35;
 text-decoration:none;
}
.bigyo-content-shell .wp-block-button__link.bigyo-action-link:hover,
.bigyo-content-shell .wp-block-button__link.bigyo-action-link:focus-visible,
.bigyo-content-shell .wp-block-button.bigyo-action-link .wp-block-button__link:hover,
.bigyo-content-shell .wp-block-button.bigyo-action-link .wp-block-button__link:focus-visible {
 background:var(--accent-hover) !important;
 border-color:var(--accent-hover) !important;
 color:var(--text-on-accent) !important;
}

/* When a table or image directly follows the paragraph that introduces it,
 * avoid stacking the paragraph bottom margin and block top margin. */
.bigyo-content-shell > p + .bigyo-table-scroll,
.bigyo-content-shell > p + .bigyo-infographic,
.bigyo-content-shell > p + figure.wp-block-image { margin-top:4px; }
.bigyo-content-shell > p:has(+ .bigyo-table-scroll),
.bigyo-content-shell > p:has(+ .bigyo-infographic),
.bigyo-content-shell > p:has(+ figure.wp-block-image) { margin-bottom:4px; }
.bigyo-content-shell > .bigyo-table-scroll:has(+ p),
.bigyo-content-shell > .bigyo-infographic:has(+ p),
.bigyo-content-shell > figure.wp-block-image:has(+ p) { margin-bottom:4px; }

/* 2026-09-05: 위 규칙이 문단(p)에만 적용돼 있어서, 표 바로 뒤에 체크리스트(ul/ol)가 오거나
 * 다음 섹션 h2가 바로 오는 경우 표의 하단 32px와 그 다음 요소의 상단 마진이 그대로 더해져
 * 공백이 과도하게 벌어지는 문제 확인. 같은 원칙(중복 마진 제거)을 두 케이스에도 확장한다. */
.bigyo-content-shell > .bigyo-table-scroll + ul,
.bigyo-content-shell > .bigyo-table-scroll + ol { margin-top:4px; }
.bigyo-content-shell > .bigyo-table-scroll:has(+ ul),
.bigyo-content-shell > .bigyo-table-scroll:has(+ ol) { margin-bottom:4px; }
/* 표 바로 다음이 새 섹션 제목(h2)이면, h2 자체의 상단 50px만으로 구분이 충분하므로
 * 표의 하단 마진은 0으로 둔다(50+32=82px로 겹쳐 벌어지지 않게). */
.bigyo-content-shell > .bigyo-table-scroll:has(+ h2) { margin-bottom:0; }
.bigyo-content-shell .bigyo-table-scroll + h2 { margin-top:24px; }

/* The approved compact rhythm is a shared template default, not a page-only patch. */
.bigyo-entry-hero { padding-bottom:32px; }
.bigyo-hub-stats { margin-bottom:16px; }

/* Keep every Page/Post reading surface centered inside GeneratePress's
 * flex content area; headings and prose inside remain left-aligned. */
.bigyo-site-main.bigyo-entry {
 width:min(820px,calc(100% - 32px));
 max-width:820px;
 box-sizing:border-box;
 margin-left:auto;
 margin-right:auto;
}

/* Responsive nav layout for the canonical 9-slot menu. */
@media (min-width:801px){
 .bigyo-nav { min-width:0; flex:1; justify-content:flex-start; overflow:visible; }
 .bigyo-nav-item,.bigyo-nav-more { flex:0 0 auto; flex-shrink:0; }
 .bigyo-nav-more { display:none; }
 .bigyo-nav-more.is-visible { display:block; }
 .bigyo-nav-item.is-folded { display:none; }
}
@media (max-width:800px){ .bigyo-nav-more { display:none !important; } }
.bigyo-summary-grid { padding:16px 0 32px; }

/* Lead form: the form is rendered only on the draft /apply/ page until the
 * privacy, cron, and operational checks are complete. */
.bigyo-lead-form {
 width:min(620px,100%);
 margin:0 auto;
 padding:28px;
 border:1px solid var(--border);
 border-radius:14px;
 background:var(--bg-card);
 box-shadow:var(--shadow);
}
.bigyo-lead-form h2 { margin:0 0 10px; font-size:var(--fs-lg); line-height:1.4; }
.bigyo-lead-form>p { margin:0 0 20px; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.7; }
.bigyo-lead-form label:not(.bigyo-lead-consent) { display:block; margin:16px 0 6px; color:var(--text-primary); font-size:var(--fs-sm); font-weight:600; }
.bigyo-lead-form input[type=text],
.bigyo-lead-form input[type=tel],
.bigyo-lead-form select { width:100%; box-sizing:border-box; padding:11px 12px; border:1px solid var(--border); border-radius:8px; background:var(--bg-page); color:var(--text-primary); font:inherit; font-size:var(--fs-base); }
.bigyo-lead-form input:focus,
.bigyo-lead-form select:focus { border-color:var(--accent); outline:2px solid var(--accent-wash); outline-offset:1px; }
.bigyo-lead-consent { display:flex; align-items:flex-start; gap:8px; margin:18px 0; color:var(--text-secondary); font-size:var(--fs-sm); line-height:1.7; }
.bigyo-lead-consent input { flex:0 0 auto; margin-top:5px; }
.bigyo-lead-consent a { color:var(--accent); }
.bigyo-lead-form .bigyo-button { border:0; cursor:pointer; }
.bigyo-lead-message { padding:10px 12px; border-radius:8px; }
.bigyo-lead-message.is-success { background:var(--bg-accent-tint); color:var(--accent-ink); }
.bigyo-lead-message.is-error { background:var(--bg-callout); color:var(--text-primary); }
.bigyo-lead-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:520px){.bigyo-lead-form{padding:22px 18px}.bigyo-lead-consent{font-size:var(--fs-sm)}}
