/*
Theme Name: Astra Child
Template: astra
Description: Child theme of Astra for site customizations.
Version: 1.0.0
Text Domain: astra-child
*/

/* DESIGN.md (McKinsey-style): navy ink, white canvas, single blue accent, serif headings, flat, hairlines. */
:root {
	--ast-global-color-0: #2251ff; /* primary */
	--ast-global-color-1: #1a3fd6; /* primary-hover */
	--ast-global-color-2: #051c2c; /* ink */
	--ast-global-color-3: #3f5564; /* ink-muted */
	--ast-global-color-4: #f7f8fa; /* surface-1 */
	--ast-global-color-5: #ffffff;
	--ast-global-color-6: #d8dee3; /* hairline */
	--ast-global-color-7: #051c2c;
	--ast-global-color-8: #051c2c;
	--sk-serif: Georgia, "Noto Serif KR", "Nanum Myeongjo", "Times New Roman", serif;
	--sk-sans: Inter, "Helvetica Neue", Arial, "Malgun Gothic", sans-serif;
}

body, button, input, select, textarea, .menu-link, .wp-element-button {
	font-family: var(--sk-sans);
	color: #051c2c;
}
body { font-size: 16px; line-height: 1.6; }

h1, h2, .uagb-heading-text, .entry-title, .site-title {
	font-family: var(--sk-serif);
	color: #051c2c;
	letter-spacing: -0.01em;
	font-weight: 500;
}
h1, h1.uagb-heading-text { font-size: 40px; line-height: 1.15; }
h2 { font-size: 28px; line-height: 1.25; }
h3, h4 { font-family: var(--sk-sans); font-weight: 600; font-size: 20px; line-height: 1.4; color: #051c2c; }
p, .uagb-desc-text { font-size: 16px; line-height: 1.6; color: #3f5564; max-width: 70ch; }

/* Header: slim white, hairline bottom, sans links */
.site-header, .ast-primary-header-bar { background: #fff; border-bottom: 1px solid #d8dee3; }
.main-header-menu a, .main-header-menu .menu-link { color: #051c2c; font-size: 14px; }
.main-header-menu .current-menu-item > a, .main-header-menu a:hover { color: #2251ff; }

/* Links */
.entry-content a:not(.wp-element-button) { color: #2251ff; text-decoration: underline; }

/* Buttons: flat blue, 4px radius, 44px min height, no shadow */
.wp-element-button, .wp-block-button__link, .ast-button, button, input[type=submit] {
	background: #2251ff; color: #fff; border: 1px solid #2251ff; border-radius: 4px;
	min-height: 44px; padding: 10px 24px; box-shadow: none; font-weight: 600;
}
.wp-element-button:hover, .wp-block-button__link:hover, .ast-button:hover { background: #1a3fd6; border-color: #1a3fd6; color: #fff; }
.is-style-outline .wp-block-button__link { background: transparent; color: #2251ff; }
.main-header-menu .ast-header-button-1 .ast-custom-button, .ast-header-button-1 .ast-custom-button { border-radius: 4px; }

/* Panels: surface-1, hairline border, 8px max radius, no shadow */
.has-background, .wp-block-group.has-background, .uagb-container-has-background { border-radius: 8px; box-shadow: none; }
.has-ast-global-color-4-background-color { background-color: #f7f8fa !important; border: 1px solid #d8dee3; }
img { border-radius: 4px; }
hr, .wp-block-separator { border-color: #d8dee3; }

/* Forms */
input[type=text], input[type=email], input[type=tel], textarea, select {
	border: 1px solid #aeb9c0; border-radius: 4px; background: #fff; min-height: 44px;
}
input:focus, textarea:focus, select:focus { border-color: #2251ff; outline: 1px solid #2251ff; }

/* Footer: navy closer */
.site-footer, .site-below-footer-wrap { background: #0f3a63; color: #fff; }
.site-footer a, .site-footer p { color: #fff; }

/* Flat blocks: no shadow, radius <= 8px */
.wp-block-uagb-container, .wp-block-uagb-container > *, .wp-block-uagb-image__figure img { box-shadow: none !important; }
.wp-block-uagb-container, .wp-block-uagb-image img, .wp-block-uagb-image__figure img { border-radius: 8px !important; }
.wp-block-uagb-container.alignfull, .wp-block-uagb-container.uagb-layout-grid { border-radius: 0 !important; }
.site-primary-footer-wrap, .site-below-footer-wrap { background: #0f3a63 !important; }
.site-footer .menu-link, .site-footer .copyright { color: #fff; }

/* Value-prop band: solid navy (no photo; old mycafe24 background image dropped) */
.uagb-block-43900d48 { background-image: none !important; background-color: #051c2c !important; }
.uagb-block-43900d48::before { opacity: 0 !important; }
.uagb-block-43900d48 h2, .uagb-block-43900d48 h3, .uagb-block-43900d48 p, .uagb-block-43900d48 .uagb-heading-text, .uagb-block-43900d48 .uagb-desc-text { color: #fff; }

/* Footer links on navy; tables: hairline row dividers only */
.site-footer a, .site-footer .menu-link, .site-footer .menu-item a { color: #fff !important; }
.entry-content table, .entry-content th, .entry-content td { border: 0; }
.entry-content table { border-collapse: collapse; width: 100%; }
.entry-content tr { border-bottom: 1px solid #d8dee3; }
.entry-content th, .entry-content td { padding: 12px 16px 12px 0; font-size: 14px; text-align: left; }
.entry-content th { font-weight: 600; color: #051c2c; background: transparent; }

/* Navy groups: light text, no photo band leftovers */
.wp-block-group.has-background { border-radius: 0; }
.wp-block-group[style*="#051c2c"] h1, .wp-block-group[style*="#051c2c"] h2, .wp-block-group[style*="#051c2c"] h3,
.wp-block-group[style*="#051c2c"] p { color: #fff !important; max-width: none; }
.wp-block-group[style*="#051c2c"] p:first-child { color: #aeb9c0 !important; }
.site-footer .menu, .site-footer ul.astra-footer-horizontal-menu { flex-wrap: nowrap !important; }
@media (min-width: 922px) { .site-primary-footer-inner-wrap.ast-builder-footer-grid-columns { grid-template-columns: auto 1fr !important; } }
.site-footer .menu-item, .site-footer .menu-link { white-space: nowrap; }
.site-footer .footer-widget-area[data-section="section-fb-menu-1"], .site-footer .ast-builder-grid-row > .site-footer-section { flex: 0 0 auto; }

/* Brighter deep blue for navy bands (footer, hero groups) */
.wp-block-group[style*="#051c2c"] { background-color: #0f3a63 !important; }

/* Links on navy bands */
.wp-block-group[style*="#051c2c"] a { color: #fff !important; text-decoration: underline; }
.wp-block-group[style*="#051c2c"] + .wp-block-group > .wp-block-spacer:first-child { height: 24px !important; }

/* Columns align with tables/headings */
.entry-content .wp-block-columns { padding-left: 0 !important; padding-right: 0 !important; gap: 32px; }

/* Tighter vertical rhythm (DESIGN.md 8px scale) */
.entry-content .wp-block-spacer { height: 32px !important; }
.entry-content .wp-block-group[style*="#051c2c"] { padding-top: 48px !important; padding-bottom: 48px !important; }
.entry-content .wp-block-columns { margin-bottom: 0; }
.entry-content > .wp-block-heading, .entry-content .wp-block-group > .wp-block-heading { margin-top: 0; margin-bottom: 16px; }

/* Page top air, aligned content groups */
.entry-content { padding-top: 48px; }
.entry-content > .wp-block-group:not([style*="#051c2c"]) { padding-left: 0 !important; padding-right: 0 !important; }
.entry-content > .wp-block-group:not([style*="#051c2c"]) > * { max-width: none !important; }

@media (max-width: 639px) {
	h1, h1.uagb-heading-text { font-size: 32px; }
}

/* Services tables on mobile: stacked cards instead of narrow columns */
@media (max-width: 639px) {
	.page-id-17 .entry-content table, .page-id-17 .entry-content tbody, .page-id-17 .entry-content tr, .page-id-17 .entry-content td { display: block; width: 100%; }
	.page-id-17 .entry-content thead { display: none; }
	.page-id-17 .entry-content tr { padding: 16px 0; border-bottom: 1px solid #d8dee3; }
	.page-id-17 .entry-content td { padding: 4px 0; }
	.page-id-17 .entry-content td:first-child { font-weight: 600; font-size: 16px; color: #051c2c; }
	.page-id-17 .entry-content td:nth-child(2)::before { content: "구성  "; font-weight: 600; color: #7a8a94; }
	.page-id-17 .entry-content td:nth-child(3)::before { content: "가격  "; font-weight: 600; color: #7a8a94; }
	.page-id-17 .entry-content td:nth-child(3) { color: #051c2c; font-weight: 600; }
}
