/* 스킨: 인테리어 · 리모델링(담솔디자인 샘플) — 뼈대 E 포트폴리오형 위.
   미색 바탕 + 브론즈 포인트 + 명조 제목, 각진 모서리(2px), 사진이 주인공인 에디토리얼 화면.
   레이아웃은 home-a.css · dwa-blocks.css · dwe.css. 여기는 색 · 글꼴 · 섹션 바탕 · 카드 모양만. */
:root {
	/* 색은 사용자 정의하기 › 색 프리셋(--dw-*)을 따라간다(10-20). 괄호 안은 담솔 기본값 */
	--dwa-accent: var(--dw-primary, #7A5C3E);   /* 작은 제목 · 강조 글자 — 미색 위 5.5:1 */
	--dwa-tint: var(--dw-bg, #F6F3EE);
	--dwa-soft: var(--dw-primary-light, #EFE7DC);
	--dwa-card-r: 2px;
	--dwe-accent: var(--dw-primary, #7A5C3E);
	--dwe-paper: var(--dw-bg, #F6F3EE);
	--dwe-r: 2px;
	--dwi-ink: var(--dw-ink, #22201D);
	--dwi-dark: var(--dw-navy, #2A2724);        /* 어두운 띠(상담 · 푸터) */
	--dwi-on-dark: #D9C3A5;                     /* 어두운 바탕 위 강조 글자 — 프리셋별 값은 skin-init.php 에서 덮음 */
	--dwi-serif: "Noto Serif KR", "Nanum Myeongjo", "AppleMyungjo", serif;
}

/* ---------- 글꼴: 큰 제목은 명조 ---------- */
body .dwa-title, body .dw-hero-title, body .dwe-single-title, body .dw-page-blocks .dw-lead, body .dw-page-blocks h2.wp-block-heading,
body .dw-page-hero-title, body .dw-page-hero h1, body .dwe-stat-value, body .dwi-person h3, body .dw-history-title, body .dw-faq-title {
	font-family: var(--dwi-serif); font-weight: 600; letter-spacing: -.02em;
}
body .dwa-title em, body .dw-page-blocks .dw-lead .dw-accent { font-style: normal; color: var(--dwa-accent); }

/* ---------- 텍스트 로고: 명조 이름 + 자간 ---------- */
body .dw-brand .dw-brand-logo { display: none; }
body .dw-brand .dw-brand-name { font-family: var(--dwi-serif); font-size: 24px; font-weight: 700; letter-spacing: .02em; line-height: 1; }
body .dw-brand:not(:has(.dw-brand-image)) .dw-brand-name::after {
	content: "DESIGN"; margin-left: 8px; font-family: inherit; font-size: 11px; font-weight: 600; letter-spacing: .32em; color: var(--dwa-accent); vertical-align: 3px;
}
body .dw-brand-footer .dw-brand-name { font-size: 22px; }
body .dw-footer .dw-brand:not(:has(.dw-brand-image)) .dw-brand-name::after { color: var(--dwi-on-dark); }
@media (max-width: 860px) { body .dw-brand .dw-brand-name { font-size: 21px; } }

/* ---------- 헤더 ---------- */
body .dw-header .dw-header-action.dw-header-action--btn, body .dw-header.is-scrolled .dw-header-action.dw-header-action--btn { color: #fff; background: var(--dwi-ink); border-color: var(--dwi-ink); color: #fff; border-radius: 2px; font-weight: 600; letter-spacing: .02em; }
body .dw-header .dw-header-action.dw-header-action--btn:hover { background: var(--dwa-accent); border-color: var(--dwa-accent); color: #fff; }
@media (min-width: 1081px) {
	body .dw-header-inner > .dw-nav { margin-left: auto; }
	body .dw-header-icons:empty { display: none; }
}

/* ---------- 메인 슬라이드: 아래쪽 어둡게, 글은 왼쪽 아래 ---------- */
body .dw-front .dw-hero-kicker {
	display: inline-flex; align-items: center; gap: 12px; padding: 0; border: 0; border-radius: 0; background: none;
	font-size: 12px; font-weight: 600; letter-spacing: .24em; text-transform: uppercase; color: rgba(255, 255, 255, .86);
}
body .dw-front .dw-hero-kicker::before { content: ""; display: inline-block; width: 36px; height: 1px; background: currentColor; }
body .dw-front .dw-hero-title { font-weight: 500; line-height: 1.24; }
body .dw-front .dw-hero-title em, body .dw-front .dw-hero-title .dw-accent { font-style: normal; color: var(--dwi-on-dark); }
body .dw-front .dw-hero-slide::after { background: linear-gradient(90deg, rgba(20, 17, 14, .72) 0%, rgba(20, 17, 14, .46) 40%, rgba(20, 17, 14, .08) 72%), linear-gradient(0deg, rgba(20, 17, 14, .45) 0%, rgba(20, 17, 14, 0) 45%); }
@media (max-width: 860px) { body .dw-front .dw-hero-slide::after { background: linear-gradient(180deg, rgba(20, 17, 14, .3) 0%, rgba(20, 17, 14, .68) 42%, rgba(20, 17, 14, .9) 100%); } }
@media (min-width: 861px) { body.dw-front .dw-hero .dw-hero-sub { max-width: 500px; } }
body .dw-front .dw-hero .wp-block-button__link, body .dw-front .dw-hero .dw-btn { border-radius: 2px; font-weight: 600; }
body .dw-front .dw-hero .wp-block-button:first-child .wp-block-button__link, body .dw-front .dw-hero .dw-btn--primary, body .dw-hero .dw-btn.dw-btn-primary { background: #fff; border-color: #fff; color: var(--dwi-ink); }
body .dw-front .dw-hero .wp-block-button:first-child .wp-block-button__link:hover, body .dw-hero .dw-btn.dw-btn-primary:hover { background: var(--dwi-on-dark); border-color: var(--dwi-on-dark); color: var(--dwi-ink); }

/* ---------- 섹션 머리: 작은 제목 앞 가는 선 ---------- */
body .dwa-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .24em; }
body .dwa-head .dwa-eyebrow::before { content: ""; display: inline-block; width: 28px; height: 1px; margin-right: 12px; background: currentColor; vertical-align: 4px; }
body .dwa-head--center .dwa-eyebrow::before { display: none; }
body .dwa-title { font-size: clamp(28px, 3.4vw, 44px); line-height: 1.3; }
body .dwa-home .dw-btn-outline, body .dwa-more .dw-btn, body .dwa-more .wp-block-button__link { border-radius: 2px; background: transparent; color: var(--dwi-ink); border: 1px solid var(--dwi-ink); font-weight: 600; }
body .dwa-home .dw-btn-outline:hover, body .dwa-more .dw-btn:hover, body .dwa-more .wp-block-button__link:hover { background: var(--dwi-ink); border-color: var(--dwi-ink); color: #fff; }

/* ---------- 섹션 바탕(순서가 바뀌어도 섹션별로 고정) ---------- */
body .dwa-sec { background: #fff; }
body .dwa-sec.dwa-stats { background: #fff; padding: clamp(48px, 6vw, 72px) 0; border-bottom: 1px solid var(--dw-line); }
body .dwa-sec.dwa-ba, body .dwa-sec.dwa-step, body .dwa-sec.dwa-news, body .dwa-sec.dwa-why, body .dwa-sec.dwa-tour { background: var(--dwa-tint); }
body .dwa-sec.dwa-works, body .dwa-sec.dwa-svc, body .dwa-sec.dwa-rev, body .dwa-sec.dwa-map, body .dwa-sec.dwa-doc { background: #fff; }

/* ---------- 숫자 띠 ---------- */
body .dwa-stats .dwe-stat-value { color: var(--dwi-ink); }

/* ---------- 대표 사례: 첫 카드 크게 ---------- */
body .dwa-works .dwe-works.is-mag .dwe-card.is-big .dwe-card-title { font-family: var(--dwi-serif); font-size: 24px; font-weight: 600; }
body .dwe-card-title { letter-spacing: -.015em; }
body .dwe-card-kind { border-radius: 1px; font-weight: 600; letter-spacing: .08em; }

/* ---------- 전후 비교: 왼쪽 글 ---------- */
body .dwe-ba-side .dwa-head { margin-bottom: 28px; }
body .dwe-ba-side .dwa-more, body .dwe-ba-side .wp-block-buttons.dwa-more { justify-content: flex-start; text-align: left; margin-top: 4px; }

/* ---------- 서비스: 선만 있는 평평한 칸 (블록 홈: 카드 = .dwa-svc-card) ---------- */
body .wp-block-group.dwa-svc-grid { gap: 0 !important; border-top: 1px solid var(--dwi-ink); }
body .dwa-svc-card { border: 0 !important; border-bottom: 1px solid var(--dw-line) !important; border-radius: 0 !important; background: transparent !important; padding: 34px 32px 30px !important; box-shadow: none !important; }
@media (min-width: 1081px) { body .dwa-svc-grid.dwa-n6 .dwa-svc-card:not(:nth-child(3n + 1)), body .dwa-svc-grid.dwa-n3 .dwa-svc-card:not(:nth-child(3n + 1)) { border-left: 1px solid var(--dw-line) !important; } }
body .dwa-svc-card.has-link:hover, body .dwa-svc-card:has(h3 a):hover { transform: none !important; background: var(--dwa-tint) !important; }
body .dwa-svc-card .dwa-svc-ico { width: auto; height: auto; border-radius: 0; background: none !important; color: var(--dwa-accent) !important; margin-bottom: 8px; place-items: start; }
body .dwa-svc-card .dwa-svc-ico svg { width: 30px; height: 30px; stroke-width: 1.4; }
body .dwa-svc-card h3 { font-family: var(--dwi-serif); font-size: 21px; font-weight: 600; }
body .dwa-svc-card:has(h3 a)::after { opacity: 1; transform: none; background: var(--dwi-ink); }
@media (min-width: 601px) and (max-width: 1080px) {
	body .wp-block-group.dwa-svc-grid.dwa-n6, body .wp-block-group.dwa-svc-grid.dwa-n3 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	body .dwa-svc-grid .dwa-svc-card { border-left: 0 !important; }
	body .dwa-svc-grid .dwa-svc-card:nth-child(even) { border-left: 1px solid var(--dw-line) !important; }
}
@media (max-width: 600px) {
	body .wp-block-group.dwa-svc-grid.dwa-n6, body .wp-block-group.dwa-svc-grid.dwa-n3 { grid-template-columns: 1fr !important; }
	body .dwa-svc-grid .dwa-svc-card:nth-child(even) { border-left: 0 !important; }
	body .dwa-svc-card { padding: 24px 0 !important; }
}

/* ---------- 진행 절차: 카드 없이 위 선 + 큰 번호 ---------- */
body .dwa-step-list.dwa-n6 { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; }
body .dwa-step-list li, body .dwa-step-list .dwa-step-item { text-align: left; padding: 26px 22px 6px 0; border: 0; border-top: 1px solid var(--dwi-ink); border-radius: 0; background: transparent; box-shadow: none; }
body .dwa-step-list li:not(:last-child)::after, body .dwa-step-list .dwa-step-item:not(:last-child)::after { display: none; }
body .dwa-step-list .dwa-step-ico { width: auto; height: auto; border-radius: 0; background: none; color: var(--dwa-accent); box-shadow: none; }
body .dwa-step-list .dwa-step-ico svg { width: 28px; height: 28px; stroke-width: 1.4; }
body .dwa-step-list .dwa-step-no { margin: 18px 0 6px; font-family: var(--dwi-serif); font-size: 14px; font-weight: 600; letter-spacing: .08em; color: var(--dwa-accent); }
body .dwa-step-list h3 { font-size: 18px; }
@media (max-width: 1080px) { body .dwa-step-list.dwa-n6 { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 28px; } }
@media (max-width: 600px) { body .dwa-step-list.dwa-n6 { grid-template-columns: 1fr; row-gap: 0; } body .dwa-step-list li, body .dwa-step-list .dwa-step-item { padding: 20px 0; display: grid; grid-template-columns: 40px 1fr; column-gap: 14px; } body .dwa-step-list .dwa-step-ico { grid-row: span 3; } body .dwa-step-list .dwa-step-no { margin: 0 0 2px; } }

/* ---------- 후기: 큰 따옴표 + 명조 ---------- */
body .dwa-rev-card { position: relative; border: 0 !important; border-top: 1px solid var(--dwi-ink) !important; border-radius: 0 !important; padding: 64px 12px 8px 0 !important; background: transparent !important; box-shadow: none !important; }
body .dwa-rev-card::before { content: "\201C"; position: absolute; top: 14px; left: 0; font-family: var(--dwi-serif); font-size: 60px; line-height: 1; color: var(--dwa-accent); }
body .dwa-rev-card p { font-family: var(--dwi-serif); font-size: 17px; line-height: 1.85; color: var(--dwi-ink); }
body .dwa-rev-card p.dwa-rev-name, body .dwa-rev-card cite { font-family: inherit; font-size: 13px; font-weight: 600; color: var(--dw-muted); }
body .wp-block-group.dwa-rev-grid { gap: clamp(24px, 3vw, 44px) !important; }

/* ---------- 소식 ---------- */
body .dwa-sec .wp-block-group.dwa-news-top { margin-bottom: clamp(32px, 4vw, 48px); align-items: flex-end; }
body .dwa-news-list a { border-radius: 2px !important; border: 0 !important; background: #fff; }
body .dwa-news-list a:hover { box-shadow: 0 18px 40px rgba(34, 32, 29, .08) !important; }
body .dwa-news-cat { border-radius: 0 !important; background: none !important; padding: 0 !important; color: var(--dwa-accent) !important; letter-spacing: .06em; }
body .dwa-news-body strong { font-weight: 600; }

/* ---------- 상담(어두운 띠) ---------- */
body .dwa-sec.dwa-rsv { background: var(--dwi-dark) !important; }
body .dwa-rsv .dwa-title em, body .dwa-rsv .dwa-eyebrow { color: var(--dwi-on-dark) !important; }
body .dwa-rsv-form { border-radius: 2px !important; }
body .dwa-rsv-form input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=file]), body .dwa-rsv-form select, body .dwa-rsv-form textarea { border-radius: 2px !important; }
body .dwa-rsv .wpcf7-submit, body .dwa-rsv .dwe-next { background: var(--dwi-ink) !important; border-color: var(--dwi-ink) !important; color: #fff !important; border-radius: 2px !important; }
body .dwa-rsv-tel, body .dwa-rsv-kakao, body .dwa-rsv-links a { border-radius: 2px !important; }
body .dwa-rsv .dwa-hours-note { color: var(--dwi-on-dark) !important; }

/* ---------- 오시는 길 ---------- */
body .dwa-map-frame, body .dwa-map-frame iframe { border-radius: 2px; }

/* ---------- 푸터 ---------- */
body .dw-footer { background: var(--dwi-dark); }

/* ---------- 하위 페이지 공통 ---------- */
body .dw-page-blocks .wp-block-button__link { border-radius: 2px; }
body .dw-page-blocks .wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--dwi-ink); color: #fff; }
body .dw-page-blocks .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: var(--dwa-accent); }
body .dw-page-blocks .dw-box { border-radius: 2px; }
body .dw-page-blocks .dw-box-icon { border-radius: 0; background: none; color: var(--dwa-accent); }
body .dw-page-blocks .dw-split-media img { border-radius: 2px; }
body .dw-page-blocks .dwe-stats-band .dwe-stats-grid { padding: 8px 0; }
body .dw-page-blocks .dwe-gallery img { border-radius: 2px; }
body .dw-page-blocks .dw-tour-gallery img { border-radius: 2px; }

/* 디자이너 카드 */
body .dwi-people { gap: clamp(20px, 3vw, 36px); }
body .dwi-person .wp-block-image { margin: 0 0 18px; }
body .dwi-person .wp-block-image img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 2px; }
body .dwi-role { margin: 0 0 4px; font-size: 13px; font-weight: 600; letter-spacing: .08em; color: var(--dwa-accent); }
body .dwi-person h3 { margin: 0 0 6px; font-size: 24px; }
body .dwi-major { margin: 0 0 14px; color: var(--dw-muted); font-size: 15px; }
body .dwi-career { margin: 0; padding: 14px 0 0 18px; border-top: 1px solid var(--dw-line); font-size: 14px; line-height: 1.8; color: var(--dw-text); }

/* 사례 상세 안 갤러리 */
body .dwe-single-content .dwe-gallery { margin: clamp(28px, 4vw, 48px) 0; }
body .dwe-single-content h3 { font-family: var(--dwi-serif); font-weight: 600; font-size: 22px; margin-top: 40px; }

/* 하위 페이지 머리 사진: 코어 기본(남색 덮개) 대신 따뜻한 어두운 덮개 */
body .dw-page-hero-main::before { background: linear-gradient(180deg, rgba(20, 17, 14, .28) 0%, rgba(20, 17, 14, .66) 100%) !important; }
/* 사례 상세 상담 버튼 */
body .dwe-spec-cta { border-radius: 2px; box-shadow: none; background: var(--dwi-ink); border-color: var(--dwi-ink); color: #fff; }
body .dwe-spec-cta:hover { background: var(--dwa-accent); border-color: var(--dwa-accent); color: #fff; }
/* 상담 폼 상자(하위 페이지) */
body .dw-formsec .wpcf7, body .dw-page-blocks .wpcf7-form { border-radius: 2px; }
/* 메인 슬라이드 제목 · 버튼 */
body .dw-hero .dw-hero-content h1 { font-family: var(--dwi-serif); font-weight: 600; letter-spacing: -.02em; line-height: 1.26; }
body .dw-hero .dw-hero-actions .dw-btn { border-radius: 2px; }

/* ===== 검증 반영 (10-19) ===== */
/* 메인 슬라이드 바탕(사진 뜨기 전) — 코어 남색 그라데이션 대신 */
body .dw-hero, body .dw-hero-slide { background: var(--dwi-dark); }
/* 한글 단어 중간 줄바꿈 방지 */
body, body p, body li, body h1, body h2, body h3 { word-break: keep-all; overflow-wrap: break-word; }
/* 2px 모서리 통일(코어 · 뼈대의 둥근 값 덮기) */
body .dw-form-card, body .dw-form-card img, body .dw-formsec img, body .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance), body .dw-note, body .dwe-chip,
body .dw-page-blocks .wp-block-button__link, body .dw-btn, body .wp-block-image img, body .wp-block-image .wp-element-caption, body .dw-map-frame, body .dw-map-ico,
body .dw-news-tab, body .dw-news-cat, body .dw-news-thumb, body .dw-news-single-media, body .dw-news-nav-link, body .dw-blog-item, body .dwe-card-img,
body .dwa-map-links a, body .dwa-mbar a, body .dw-popup, body .dw-popup-close, body .sub-menu, body .sub-menu a, body .dw-news-item, body .dw-news-item a,
body .wpcf7 form .wpcf7-response-output, body .dw-tour-gallery img, body .wp-block-gallery img, body .dw-split-media img, body .dw-box, body .dw-step-card, body .dwa-rsv-form, body .dw-history-media img { border-radius: 2px !important; }
body .wpcf7-list-item label { border-radius: 2px; }
body .dwe-chip { border-radius: 2px; }
body .dw-popup-close { border-radius: 6px !important; }
/* 쇼룸 · 갤러리 사진 설명 띠 — 남색 알약 대신 */
body .wp-block-image .wp-element-caption, body .wp-block-gallery .wp-element-caption { background: rgba(34, 32, 29, .8) !important; color: #fff; }
/* CF7: 비어 있는 응답 상자 숨김 · 라벨 뒤 줄바꿈 제거 */
body .wpcf7-response-output:empty { display: none; }
body .wpcf7 form .wpcf7-response-output { border-color: var(--dw-line) !important; }
body .dw-fl + br { display: none; }
/* 로고 옆 DESIGN — 투명 헤더 · 푸터에서는 밝게 */
body.dw-front .dw-header:not(.is-scrolled) .dw-brand:not(:has(.dw-brand-image)) .dw-brand-name::after, body .dw-footer .dw-brand:not(:has(.dw-brand-image)) .dw-brand-name::after { color: var(--dwi-on-dark); }
/* 단계 막대 번호 대비 */
body .dwe-steps-no { color: var(--dwi-ink); font-size: 13px; }
/* 휴대폰: 전후 비교는 제목 → 슬라이더 → 버튼 순서 */
@media (max-width: 960px) {
	body .dwe-ba-side, body .dwe-ba-side > .wp-block-group__inner-container { display: contents; }
	body .dwe-ba-inner .dwe-ba { order: 1; }
	body .dwe-ba-inner .dwa-more { order: 2; margin-top: 0; }
}
/* 분류 페이지: 전체 사례로 돌아가기 */
body .dwe-archive-back { display: inline-flex; align-items: center; min-height: 44px; margin: 0 0 16px; font-size: 14px; font-weight: 600; color: var(--dw-muted); text-decoration: none; }
body .dwe-archive-back:hover { color: var(--dwi-ink); }
/* 헤더: 비어 있는 아이콘 칸이 gap 24px 만큼 자리를 차지해 메뉴 끝이 본문보다 안쪽에 오던 것 */
@media (min-width: 1081px) { body .dw-header-inner > .dw-header-icons:not(:has(*)) { display: none; } }
body .dwe-wizard .wpcf7-list-item label, body .dw-page-blocks .wpcf7-list-item label { border-radius: 2px; }

/* ===== 외부 검토 반영 (10-20) ===== */
/* 메인 슬라이드 제목: 두 줄 모두 흰색(밝은 창 쪽 사진에서 베이지 둘째 줄이 약해짐), 강조는 굵기로 */
body .dw-front .dw-hero-title em, body .dw-front .dw-hero-title .dw-accent, body .dw-hero .dw-hero-content h1 em, body .dw-hero .dw-hero-content h1 .dw-accent { color: #fff; font-weight: 700; }
body .dw-hero .dw-hero-content h1 { text-shadow: 0 1px 18px rgba(20, 17, 14, .35); }
@media (min-width: 861px) {
	body .dw-front .dw-hero-slide::after { background: linear-gradient(90deg, rgba(20, 17, 14, .76) 0%, rgba(20, 17, 14, .52) 38%, rgba(20, 17, 14, .1) 70%), linear-gradient(0deg, rgba(20, 17, 14, .45) 0%, rgba(20, 17, 14, 0) 45%); }
}

/* PC 오른쪽 퀵메뉴: 사진 감상을 덜 방해하게 작고 조용하게(카톡 노랑은 식별용으로 유지) */
@media (min-width: 861px) {
	body.dwa-qm-on .dwa-mbar { gap: 6px; right: 16px; }
	body.dwa-qm-on .dwa-mbar a { width: 62px; padding: 9px 4px 8px; gap: 4px; font-size: 12px; font-weight: 600; border-radius: 2px !important; box-shadow: 0 4px 14px rgba(34, 32, 29, .08); background: rgba(255, 255, 255, .92); }
	body.dwa-qm-on .dwa-mbar a:last-child { background: var(--dwi-ink); color: #fff; }
	body.dwa-qm-on .dwa-mbar a:hover, body.dwa-qm-on .dwa-mbar a:focus-visible { background: var(--dwi-ink); color: #fff; transform: none; }
	body.dwa-qm-on .dwa-mbar a[href*="kakao"] { background: #FEE500; color: #191919; }
	body.dwa-qm-on .dwa-mbar .dwa-mbar-ico svg { width: 20px; height: 20px; }
}

/* 특징(그린 사람이 현장까지): 큰 사진 + 짧은 설명 — 카드 반복 사이 화면 전환 */
body .dwa-sec.dwa-why { background: #fff; }
body .dwa-why-list li, body .dwa-why-item { border: 0 !important; border-top: 1px solid var(--dw-line) !important; border-radius: 0 !important; background: transparent !important; padding: 18px 0 !important; box-shadow: none !important; }
body .dwa-why-media img, body .dwa-why .wp-block-image img { border-radius: 2px !important; aspect-ratio: 4 / 5; object-fit: cover; }
body .dwa-why-media::before { display: none !important; }
body .dwa-why-num { font-family: var(--dwi-serif); color: var(--dwa-accent); }
body .dwa-why-ico { color: var(--dwa-accent) !important; background: none !important; }

/* 진행 절차(홈): 짧은 설명 한 줄 */
body .dwa-step .dwa-step-item p, body .dwa-step-list p { font-size: 14px; }
@media (max-width: 600px) { body .dwa-step .dwa-step-item, body .dwa-step-list li { padding: 14px 0 !important; } }

/* 인스타그램 · 블로그 */
body .dwa-sec.dwa-sns { background: var(--dwa-tint); }
body .dwi-sns-inner { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
body .dwi-sns-inner > .wp-block-group__inner-container { display: contents; }
body .dwi-sns-handle { margin: 14px 0 0; font-weight: 600; color: var(--dwi-ink); letter-spacing: .02em; }
body .dwi-sns-side .dwa-more { justify-content: flex-start; margin-top: 24px; gap: 8px; }
body .dwi-sns-grid, body .dwi-sns-grid > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
body .dwi-sns-grid > .wp-block-group__inner-container { grid-column: 1 / -1; }
body .dwi-sns-grid .wp-block-image { margin: 0; }
body .dwi-sns-grid .wp-block-image img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; border-radius: 2px !important; }
@media (max-width: 960px) { body .dwi-sns-inner { grid-template-columns: 1fr; } body .dwi-sns-inner .dwi-sns-grid { order: 2; } }

/* 사례 상세: 문제 · 설계 선택 · 결과 */
body .dwi-story { display: grid; gap: 0; margin: 0 0 clamp(32px, 4vw, 48px); border-top: 1px solid var(--dwi-ink); }
body .dwi-story > .wp-block-group__inner-container { display: contents; }
body .dwi-story-row { display: grid; grid-template-columns: 96px 1fr; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--dw-line); }
body .dwi-story-row > .wp-block-group__inner-container { display: contents; }
body .dwi-story-k { margin: 0; font-size: 13px; font-weight: 700; letter-spacing: .06em; color: var(--dwa-accent); }
body .dwi-story-v { margin: 0; font-family: var(--dwi-serif); font-size: 17px; line-height: 1.7; color: var(--dwi-ink); }
@media (max-width: 600px) { body .dwi-story-row { grid-template-columns: 1fr; gap: 4px; } }

/* ===== 독립 검증 반영 (10-20 2차) ===== */
/* 2·3번 슬라이드 제목은 h2.dw-hero-title — main.css 가 뒤에 로드되므로 한 단계 더 구체적으로 */
body .dw-hero h2.dw-hero-title, body .dw-hero h1.dw-hero-title { text-shadow: 0 1px 18px rgba(20, 17, 14, .35); }
body .dw-hero h2.dw-hero-title .dw-accent, body .dw-hero h1.dw-hero-title .dw-accent, body .dw-hero h2.dw-hero-title em { color: #fff; font-weight: 700; }
/* 휴대폰 슬라이드 덮개 · 키커 */
@media (max-width: 860px) {
	body .dw-front .dw-hero-slide::after, body .dw-hero .dw-hero-slide::after { background: linear-gradient(180deg, rgba(20, 17, 14, .38) 0%, rgba(20, 17, 14, .48) 55%, rgba(20, 17, 14, .6) 100%) !important; }
	body .dw-front .dw-hero-kicker { color: rgba(255, 255, 255, .85); }
}
/* PC: 슬라이드 오른쪽 화살표가 퀵메뉴와 겹치지 않게 안쪽으로, 낮은 화면에선 퀵메뉴를 더 작게 */
@media (min-width: 861px) {
	body .dw-hero .dw-hero-next { right: 96px; }
	body .dw-hero .dw-hero-prev { left: 24px; }
}
@media (min-width: 861px) and (max-height: 720px) {
	body.dwa-qm-on .dwa-mbar { bottom: 24px; gap: 4px; }
	body.dwa-qm-on .dwa-mbar a { width: 56px; padding: 7px 2px 6px; font-size: 11.5px; min-height: 48px; }
	body.dwa-qm-on .dwa-mbar .dwa-mbar-ico svg { width: 18px; height: 18px; }
}
/* 표: 한글 낱말 단위 줄바꿈 + 줄무늬를 미색으로(코어 푸른 회색 덮기) */
body .dw-page-blocks .wp-block-table td, body .dw-page-blocks .wp-block-table th, body .wp-block-table .has-fixed-layout td, body .wp-block-table .has-fixed-layout th { word-break: keep-all; overflow-wrap: break-word; }
body .dw-page-blocks table tbody tr:nth-child(2n) td, body .dw-page-blocks .is-style-stripes tbody tr:nth-child(odd) td { background: var(--dwa-tint); }
body .dw-page-blocks .is-style-stripes tbody tr:nth-child(even) td { background: #fff; }
@media (max-width: 600px) { body .dw-page-blocks .wp-block-table table { min-width: 520px; } }
/* 팝업 아래 바 · 닫기 포커스 · 터치 영역 */
body .dw-popup-foot { background: var(--dwa-tint); }
body .dw-popup-close { min-height: 44px; background: var(--dwi-ink); }
body .dw-popup-close:focus-visible { outline: 2px solid var(--dwa-accent); outline-offset: 2px; }
body .dw-popup-today { min-height: 44px; }
/* 하위 페이지 카드: 카드 전체를 링크로 + 홈 카드와 같은 모양(왼쪽 정렬 · 명조 제목) */
body .dw-page-blocks .dw-box { position: relative; text-align: left; }
body .dw-page-blocks .dw-box .dw-box-icon { margin-left: 0; margin-right: auto; }
body .dw-page-blocks .dw-box h3 { font-family: var(--dwi-serif); font-weight: 600; font-size: 20px; }
body .dw-page-blocks .dw-box .dw-box-link a::after { content: ""; position: absolute; inset: 0; }
body .dw-page-blocks .dw-box:has(.dw-box-link a):hover { background: var(--dwa-tint); }
/* 홈: 특징 → 서비스 사이 구분선 */
body .dwa-sec.dwa-svc { border-top: 1px solid var(--dw-line); }
/* 사례 상세 「문제 · 설계 선택 · 결과」 본문은 본문과 같은 고딕 */
body .dwi-story-v { font-family: inherit; font-size: 16px; font-weight: 500; }
/* 휴대폰 진행 절차 간격 통일 */
@media (max-width: 600px) { body .wp-block-group.dwa-step-list, body .wp-block-group.dwa-step-list[class*="dwa-n"] { gap: 0 !important; row-gap: 0 !important; } }

/* ===== 휴대폰 펼침메뉴: 카드 상자 대신 에디토리얼 목록 (10-20) ===== */
@media (max-width: 860px) {
	body .dw-nav { background: var(--dwa-tint); width: min(340px, 90vw); box-shadow: -24px 0 60px rgba(20, 17, 14, .18); }
	/* 머리: 장식 원 없이 잉크 바탕 + 명조 브랜드 */
	body .dw-nav-head { background: var(--dwi-dark) !important; padding: 22px 22px 20px; }
	body .dw-nav-head::before, body .dw-nav-head::after { display: none !important; }
	body .dw-nav-close { border-radius: 2px !important; background: transparent !important; border: 1px solid rgba(255, 255, 255, .28) !important; width: 44px; height: 44px; }
	body .dw-nav-close:hover { background: rgba(255, 255, 255, .08) !important; }
	/* 1단 메뉴: 상자 없음 · 가는 선 · 명조 */
	body .dw-nav .dw-menu { padding: 8px 22px 24px; gap: 0; }
	body .dw-nav .dw-menu > li { position: relative; display: flex; flex-wrap: wrap; align-items: center; margin: 0; border-bottom: 1px solid var(--dw-line); }
	body .dw-nav .dw-menu > li > a { flex: 1 1 auto; padding: 18px 0; background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; font-family: var(--dwi-serif); font-size: 19px; font-weight: 600; letter-spacing: -.01em; color: var(--dwi-ink); transform: none !important; }
	body .dw-nav .dw-menu > li > a:hover { color: var(--dwa-accent); }
	body .dw-nav .dw-menu > li.current-menu-item > a, body .dw-nav .dw-menu > li.current-menu-ancestor > a, body .dw-nav .dw-menu > li.is-submenu-open > a { color: var(--dwa-accent); background: transparent !important; }
	/* 펼침 단추: 상자 없이 얇은 + / − */
	body .dw-nav .dw-submenu-toggle { width: 44px; height: 44px; margin: 0 -10px 0 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--dwi-ink) !important; position: relative; }
	body .dw-nav .dw-submenu-toggle-icon { display: none !important; }
	body .dw-nav .dw-submenu-toggle::before, body .dw-nav .dw-submenu-toggle::after { content: ""; position: absolute; left: 50%; top: 50%; width: 14px; height: 1.5px; margin: -.75px 0 0 -7px; background: currentColor; transition: transform .25s ease, opacity .25s ease; }
	body .dw-nav .dw-submenu-toggle::after { transform: rotate(90deg); }
	body .dw-nav li.is-submenu-open > .dw-submenu-toggle::after { transform: rotate(0deg); opacity: 0; }
	body .dw-nav li.is-submenu-open > .dw-submenu-toggle, body .dw-nav li.current-menu-ancestor > .dw-submenu-toggle { color: var(--dwa-accent) !important; }
	/* 2단 메뉴: 왼쪽 브론즈 선 + 작은 글자 */
	body .dw-nav .dw-menu .sub-menu { flex-basis: 100%; margin: 0 0 16px; padding: 2px 0 2px 16px; border-left: 1px solid var(--dwa-accent); }
	body .dw-nav .dw-menu .sub-menu li { margin: 0; }
	body .dw-nav .dw-menu .sub-menu a { padding: 9px 0; min-height: 44px; background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; font-family: inherit; font-size: 15px; font-weight: 500; color: var(--dw-text); }
	body .dw-nav .dw-menu .sub-menu a:hover { color: var(--dwi-ink); }
	body .dw-nav .dw-menu .sub-menu .current-menu-item > a, body .dw-nav .dw-menu .sub-menu .current_page_item > a { color: var(--dwa-accent); font-weight: 600; background: transparent !important; }
	/* 아래 버튼 줄 */
	body .dw-nav .dw-nav-foot, body .dw-nav > .dw-header-actions { background: var(--dwa-tint); border-top: 1px solid var(--dw-line); }
	/* 바깥 어둡게 */
	body .dw-nav-overlay, body .dw-nav-backdrop { background: rgba(20, 17, 14, .45) !important; backdrop-filter: blur(2px); }
}
@media (max-width: 860px) {
	body .dw-nav-head-text { display: flex; flex-direction: column-reverse; gap: 4px; }
	body .dw-nav-head-text .dw-nav-sub { font-family: var(--dwi-serif); font-weight: 600; font-size: 21px; letter-spacing: .01em; color: #fff; opacity: 1; }
	body .dw-nav-head-text .dw-nav-title { font-family: inherit; font-size: 11px; font-weight: 600; letter-spacing: .24em; color: var(--dwi-on-dark); }
	body .dw-nav .dw-nav-body { background: var(--dwa-tint); }
}
/* 재검증 반영: 키커 대비 · PC 덮개 따뜻한 톤 · 체크박스 포커스 · 퀵메뉴 상담 버튼 */
body .dw-front .dw-hero-kicker { color: rgba(255, 255, 255, .92); text-shadow: 0 1px 10px rgba(20, 17, 14, .45); }
@media (min-width: 861px) {
	body .dw-front .dw-hero-slide::after, body .dw-hero .dw-hero-slide::after { background: linear-gradient(90deg, rgba(20, 17, 14, .76) 0%, rgba(20, 17, 14, .52) 38%, rgba(20, 17, 14, .1) 70%), linear-gradient(0deg, rgba(20, 17, 14, .45) 0%, rgba(20, 17, 14, 0) 45%) !important; }
	body.dwa-qm-on .dwa-mbar a:last-child { background: var(--dwa-accent); border-color: var(--dwa-accent); color: #fff; }
}
body .dw-popup-today-input:focus-visible { outline: 2px solid var(--dwa-accent); outline-offset: 2px; }

/* ===== 3차 검증 반영 (10-20) ===== */
/* 휴대폰 메뉴 아래 전화번호: 메인(투명 헤더)의 흰 글자 규칙이 메뉴 안까지 먹던 것 */
@media (max-width: 860px) {
	body.dw-front .dw-header .dw-nav .dw-header-action--link, body .dw-nav .dw-header-action--link { color: var(--dwi-ink) !important; font-weight: 700; }
	body .dw-nav a:focus-visible, body .dw-nav button:focus-visible, body .dw-burger:focus-visible { outline: 2px solid var(--dwa-accent); outline-offset: 2px; }
	body .dw-nav .dw-nav-close:focus-visible { outline-color: var(--dwi-on-dark); }
	/* 슬라이드 위쪽(키커 자리) 덮개를 더 진하게 */
	body .dw-front .dw-hero-slide::after, body .dw-hero .dw-hero-slide::after { background: linear-gradient(180deg, rgba(20, 17, 14, .55) 0%, rgba(20, 17, 14, .5) 45%, rgba(20, 17, 14, .62) 100%) !important; }
}
/* 키커 · 슬라이드 설명: 흰색 + 진한 그림자 */
body .dw-front .dw-hero-kicker { color: #fff; text-shadow: 0 1px 8px rgba(20, 17, 14, .7), 0 0 2px rgba(20, 17, 14, .5); }
body .dw-hero .dw-hero-sub, body .dw-hero .dw-hero-content > p { color: #fff; text-shadow: 0 1px 10px rgba(20, 17, 14, .55); }
/* PC 좁은 화면(861~1023px): 메뉴 줄바꿈 · 헤더 버튼 밀림 방지 */
body .dw-header .dw-menu > li > a { white-space: nowrap; }
@media (min-width: 861px) and (max-width: 1023px) {
	body .dw-header .dw-header-actions { flex-wrap: nowrap; align-items: center; }
	body .dw-header .dw-header-actions .dw-header-action--link { display: none; }
	body .dw-header .dw-menu { gap: 2px; }
	body .dw-header .dw-menu > li > a { padding-left: 9px; padding-right: 9px; font-size: 14.5px; }
}
/* PC 퀵메뉴 상담 버튼: 어두운 섹션 위 경계 */
@media (min-width: 861px) { body.dwa-qm-on .dwa-mbar a:last-child { box-shadow: 0 0 0 1px rgba(255, 255, 255, .22), 0 4px 14px rgba(34, 32, 29, .12); } }
/* 4차 검증 반영 */
@media (max-width: 860px) {
	body .dw-nav, body .dw-nav.is-open { background: var(--dwa-tint) !important; }
	body .dw-nav.is-open { transition: transform .36s cubic-bezier(.22, 1, .36, 1), visibility 0s; }
	body .dw-front .dw-hero-slide::after, body .dw-hero .dw-hero-slide::after { background: linear-gradient(180deg, rgba(20, 17, 14, .6) 0%, rgba(20, 17, 14, .5) 45%, rgba(20, 17, 14, .62) 100%) !important; }
}
body .dw-front .dw-hero-kicker, body .dw-hero .dw-hero-sub { text-shadow: 0 1px 3px rgba(20, 17, 14, .6), 0 1px 10px rgba(20, 17, 14, .55); }
@media (min-width: 861px) { body.dwa-qm-on .dwa-mbar a:last-child { box-shadow: 0 0 0 1px rgba(255, 255, 255, .45), 0 4px 14px rgba(34, 32, 29, .12); } }
/* 숫자 띠: 아이콘 + 칸마다 가운데 정렬 (10-20) */
body .dwe-stats-grid .dwe-stat { text-align: center; padding-left: clamp(12px, 2vw, 24px) !important; padding-right: clamp(12px, 2vw, 24px); display: flex; flex-direction: column; align-items: center; }
body .dwe-stats-grid .dwe-stat > .wp-block-group__inner-container { display: flex; flex-direction: column; align-items: center; }
body .dwe-stat-ico { display: inline-grid; place-items: center; width: 48px; height: 48px; margin: 0 0 14px; color: var(--dwa-accent); border: 1px solid var(--dw-line); border-radius: 50%; }
body .dwe-stat-ico svg { width: 22px; height: 22px; stroke-width: 1.5; }
body .dwe-stat-value, body .dwe-stat-label { text-align: center; }
body .dwe-stats-note, body .dwa-stats .dw-note { text-align: center; }
@media (max-width: 760px) { body .dwe-stats-grid .dwe-stat:nth-child(odd) { padding-left: 12px !important; } }
/* ===== 외부 검토 2차 반영 (10-20) ===== */
/* 1. 등장 효과: 사진 · 카드는 처음부터 보이고 작은 움직임만(전체 캡처에서도 비어 보이지 않게) */
body.dwa-js .dwa-reveal, html.dwa-js .dwa-reveal { opacity: 1 !important; transform: translateY(8px); transition: transform .3s ease; }
html.dwa-js .dwa-reveal.is-in { transform: none; }
@media (prefers-reduced-motion: reduce) { html.dwa-js .dwa-reveal { transform: none; } }
/* 2. 서비스 · 진행 과정 · 후기 세로 여백 약 20% 줄임(사진 구간은 그대로) */
body .dwa-sec.dwa-svc, body .dwa-sec.dwa-step, body .dwa-sec.dwa-rev { padding-top: clamp(58px, 7.2vw, 96px); padding-bottom: clamp(58px, 7.2vw, 96px); }
body .dwa-svc .dwa-head, body .dwa-step .dwa-head, body .dwa-rev .dwa-head { margin-bottom: clamp(28px, 4vw, 44px); }
/* 7. 지도가 늦게 뜨거나 막힐 때: 빈 베이지 대신 쇼룸 사진 */
body .dwa-map-frame { position: relative; background: var(--dwi-dark) url("../img/showroom2.webp") center / cover no-repeat; min-height: 360px; }
body .dwa-map-frame iframe { position: relative; z-index: 1; }
/* 5차 검증: 지도 안쪽 베이지 칸이 대체 사진을 가리던 것 · 높이 통일 · 휴대폰 서비스 1열 */
body .dwa-map-frame .dw-map-frame { background: transparent !important; }
body .dwa-map-frame, body .dwa-map-frame .dw-map-frame { min-height: 380px; }
@media (max-width: 600px) { body .wp-block-group.dwa-svc-grid[class*="dwa-n"] { grid-template-columns: 1fr !important; } body .dwa-svc-grid .dwa-svc-card { border-left: 0 !important; padding-left: 0 !important; } }

/* ===== 2026-10-20 허전함 정리 (GPT 리뷰 반영) ===== */
/* 통계 띠: 미색 바탕 + 브론즈 원 아이콘 */
body .dwa-sec.dwa-stats { background: var(--dwa-tint) !important; padding: 48px 0 !important; border-bottom: 0 !important; }
body .dwe-stat-ico { width: 68px; height: 68px; margin: 0 0 16px; border: 0; background: var(--dwa-accent); color: #fff; box-shadow: 0 8px 20px color-mix(in srgb, var(--dwa-accent) 22%, transparent); }
body .dwe-stat-ico svg { width: 30px; height: 30px; stroke-width: 1.5; }
@media (max-width: 760px) {
	body .dwe-stat-ico { width: 56px; height: 56px; margin-bottom: 12px; }
	body .dwe-stat-ico svg { width: 26px; height: 26px; }
	body .dwe-stats-grid { row-gap: 0 !important; }
	body .dwe-stats-grid .dwe-stat:nth-child(-n+2) { padding-bottom: 26px; }
	body .dwe-stats-grid .dwe-stat:nth-child(n+3) { padding-top: 26px; border-top: 1px solid var(--dw-line); }
}

/* 서비스: 사진 카드(사진을 넣은 카드만 · 비우면 기존 아이콘 칸) */
body .wp-block-group.dwa-svc-grid:has(.has-img) { border-top: 0; gap: clamp(16px, 2vw, 24px) !important; }
body .dwa-svc-card.has-img { padding: 0 0 6px !important; border: 0 !important; background: transparent !important; }
body .dwa-svc-card.has-img:hover { background: transparent !important; }
body .dwa-svc-grid .dwa-svc-card.has-img, body .dwa-svc-grid .dwa-svc-card.has-img:nth-child(n) { border-left: 0 !important; border-bottom: 0 !important; padding-left: 0 !important; }
body .dwa-svc-card.has-img .dwa-svc-img { margin: 0 0 20px; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 2px; background: var(--dwa-tint); }
body .dwa-svc-card.has-img .dwa-svc-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
body .dwa-svc-card.has-img:hover .dwa-svc-img img { transform: scale(1.04); }
body .dwa-svc-card.has-img h3 { margin-top: 0; }
@media (max-width: 600px) {
	body .wp-block-group.dwa-svc-grid[class*="dwa-n"]:has(.has-img) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 24px 14px !important; }
	body .dwa-svc-card.has-img .dwa-svc-img { margin-bottom: 12px; }
	body .dwa-svc-card.has-img h3 { font-size: 16px; line-height: 1.4; }
	body .dwa-svc-card.has-img .dwa-svc-desc { font-size: 13px; }
}

/* 진행 절차: 큰 세리프 번호 + 이어지는 선과 점 */
body .dwa-step-list .dwa-step-ico { display: none !important; }
body .dwa-step-list .dwa-step-item { position: relative; border-top: 0 !important; padding: 0 22px 0 0 !important; }
body .dwa-step-list .dwa-step-item h3::before { content: counter(dwa-step, decimal-leading-zero); display: block; margin: 0 0 30px; font-family: var(--dwi-serif); font-size: 48px; font-weight: 400; line-height: 1; letter-spacing: -.02em; color: var(--dwa-accent); }
body .dwa-step-list .dwa-step-item::before { content: ""; position: absolute; left: 0; right: 0; top: 62px; height: 1px; background: var(--dw-line); }
body .dwa-step-list .dwa-step-item::after { content: "" !important; display: block !important; position: absolute; left: 0; top: 58px; width: 9px; height: 9px; border-radius: 50%; background: var(--dwa-accent); border: 0 !important; opacity: 1 !important; transform: none !important; right: auto !important; bottom: auto !important; margin: 0 !important; }
@media (max-width: 1080px) { body .dwa-step-list.dwa-n6, body .wp-block-group.dwa-step-list.dwa-n6 { row-gap: 40px !important; } }
@media (max-width: 600px) {
	body .dwa-step-list .dwa-step-item { display: block !important; padding: 18px 0 !important; border-top: 1px solid var(--dw-line) !important; }
	body .dwa-step-list .dwa-step-item:first-child { border-top: 0 !important; }
	body .dwa-step-list .dwa-step-item::before, body .dwa-step-list .dwa-step-item::after { display: none !important; }
	body .dwa-step-list .dwa-step-item h3::before { display: inline-block; margin: 0 12px 0 0; font-size: 28px; vertical-align: -3px; }
}

/* 시공 사례: PC에서 분류 탭을 제목 줄 오른쪽으로 */
@media (min-width: 1081px) {
	body .dwa-works .dw-container > .wp-block-group__inner-container { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 32px; }
	body .dwa-works .dw-container > .wp-block-group__inner-container > * { grid-column: 1 / -1; }
	body .dwa-works .dw-container > .wp-block-group__inner-container > .dwa-head { grid-column: 1; margin-bottom: 32px; }
	body .dwa-works .dw-container > .wp-block-group__inner-container > .dwe-works { display: contents; }
	body .dwa-works .dwe-works > .dwe-tabs { grid-column: 2; grid-row: 1; align-self: end; margin-bottom: 32px; }
	body .dwa-works .dwe-works > :not(.dwe-tabs) { grid-column: 1 / -1; }
}

/* 휴대폰 메인 슬라이드: 헤더 빼고 한 화면 */
@media (max-width: 860px) {
	body.dw-front .dw-hero:not(.dw-popup) .dw-hero-slide.is-active { min-height: max(520px, min(var(--dw-hero-height-pc, 100svh), calc(100svh - var(--dw-header-h, 74px)))) !important; }
}
@media (max-width: 600px) { body .dwa-step-list.dwa-n6, body .wp-block-group.dwa-step-list.dwa-n6, body .wp-block-group.dwa-step-list[class*="dwa-n"] { row-gap: 0 !important; gap: 0 !important; } }
@media (max-width: 600px) { body .dwi-sns-grid, body .dwi-sns-grid > .wp-block-group__inner-container { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 6px; } }
/* 사례 상세 「문제 · 설계 선택 · 결과」 여백 (10-20): 행 위아래 같게 · 라벨 첫 줄 기준선 맞춤 */
body .dwi-story-row { padding: 22px 0 !important; align-items: start; }
body .dwi-story-row p.dwi-story-k, body .dwi-story-row p.dwi-story-v { margin: 0 !important; }
body .dwi-story-row p.dwi-story-k { line-height: 27.2px; }
body .dwi-story-row p.dwi-story-v { line-height: 1.7; }
body .dwi-story { margin-bottom: clamp(40px, 5vw, 56px) !important; }
@media (max-width: 600px) { body .dwi-story-row { padding: 18px 0 !important; gap: 4px !important; } body .dwi-story-row p.dwi-story-k { line-height: 1.6; } }
/* GPT 전체 검증 반영 (10-20 17:07) */
/* 사례 상세: 「공간 이야기」 · 「바뀐 점」 제목 → 문단 11px → 16px */
body.single-dw_portfolio .wp-block-heading:has(+ p), body.single-dw_portfolio .wp-block-heading:has(+ ul) { margin-bottom: 16px !important; }
body.single-dw_portfolio .wp-block-heading + p, body.single-dw_portfolio .wp-block-heading + ul { margin-top: 0 !important; }
/* 진행 과정 카드: 작은 폭에서도 제목 → 설명 10px */
body .dw-step-card h3 { margin-bottom: 10px !important; }
body .dw-step-card h3 + p { margin-top: 0 !important; }
/* 태블릿(601~960) 특징 사진: 한 열일 때 세로로 너무 길지 않게 */
@media (min-width: 601px) and (max-width: 960px) { body .dwa-why-media, body .dwa-why-media img { max-height: 560px; } body .dwa-why-media img { width: 100%; height: 560px; object-fit: cover; object-position: center 40%; } }
/* 교차 검증 반영 (10-20 17:30) */
/* 소식 상세 등 일반 글 안 버튼: 워드프레스 기본 회색 바탕 + 브론즈 글자(1.96:1) → 잉크 바탕 흰 글자 */
body .dw-btn-block .wp-block-button__link { background: var(--dwi-ink); color: #fff; border-radius: 2px; }
body .dw-btn-block .wp-block-button__link:hover { background: var(--dwa-accent); color: #fff; }
/* 회사 소개 원칙 카드: 휴대폰 1열(2열은 한 줄에 몇 글자 안 들어감) */
@media (max-width: 600px) { body .dw-page-blocks .dw-grid:has(> .dw-box), body .dw-page-blocks .dw-grid:has(> .wp-block-group__inner-container > .dw-box) { grid-template-columns: 1fr !important; } }
/* 진행 과정 6단계: PC 3열 × 2줄 */
@media (min-width: 1025px) { body .dw-page-blocks .dw-steps:has(.dw-step-card:nth-child(6):last-child), body .dw-page-blocks .dw-step-grid:has(.dw-step-card:nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
/* 오시는 길 페이지 지도 앱 버튼 (홈 지도 버튼과 같은 색 · 줄맞춤) */
body .dwi-map-apps { display: flex; gap: 8px; margin-top: 20px; }
body .dwi-map-apps .wp-block-button { flex: 1; margin: 0; }
body .dw-page-blocks .dwi-map-apps .wp-block-button__link, body .dwi-map-apps .wp-block-button__link { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 12px; border-radius: 2px; font-size: 14px; font-weight: 700; line-height: 1.2; }
body .dwi-map-apps .wp-block-button__link::before { content: ""; width: 16px; height: 16px; flex: none; background: center / contain no-repeat; }
body .dwi-map-apps .dwi-map-naver .wp-block-button__link { background: #00843d; color: #fff; min-height: 44px; }
body .dwi-map-naver .wp-block-button__link::before { width: 12px; height: 12px; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23fff%22 d=%22M16.27 12.84 7.46 2H2v20h5.73V11.16L16.54 22H22V2h-5.73z%22/%3E%3C/svg%3E"); }
body .dwi-map-apps .dwi-map-kakao .wp-block-button__link { background: #fee500; color: #191600; min-height: 44px; }
body .dwi-map-kakao .wp-block-button__link::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23191600%22 d=%22M12 3C6.5 3 2 6.5 2 10.8c0 2.8 1.9 5.2 4.7 6.6l-1 3.6c-.1.3.3.6.6.4l4.3-2.8c.5.1 .9.1 1.4.1 5.5 0 10-3.5 10-7.9S17.5 3 12 3z%22/%3E%3C/svg%3E"); }
/* 교차 검증 2 (Claude 에이전트) */
/* 상담 폼 항목 제목: span 으로 된 것도 label 과 같게 */
body .dwe-wizard .dw-fl, body form .dwe-step .dw-fl, body .dwe-step span.dw-fl { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 700; line-height: 1.5; color: var(--dwi-ink); }
body .dwe-step select, body .dwe-step input[type="text"], body .dwe-step input[type="tel"], body .dwe-step input[type="email"], body .dwe-step input[type="date"] { min-height: 46px; }
/* 표: 휴대폰에서 3열 이하는 화면 폭에 맞추고, 4열 이상은 밀어 보기 안내 */
@media (max-width: 600px) {
	body figure.wp-block-table table:not(:has(tr > :nth-child(4))) { min-width: 0 !important; width: 100%; }
	body figure.wp-block-table:has(tr > :nth-child(4))::before { content: "← 표를 좌우로 밀어 보세요 →"; display: block; margin: 0 0 8px; font-size: 12px; color: var(--dw-muted); text-align: right; }
}
/* 404: 버튼과 푸터 사이 여백 */
body.error404 .dw-content-area { padding-top: 72px !important; padding-bottom: 72px !important; }
@media (max-width: 600px) { body.error404 .dw-content-area { padding-top: 52px !important; padding-bottom: 52px !important; } }
/* 휴대폰 상담 띠 전화 · 카톡 버튼: 같은 폭 · 같은 높이 */
@media (max-width: 600px) { body .dwa-rsv-links a { flex: 1 1 100%; justify-content: center; min-height: 48px; font-size: 16px; } }
/* 진행 과정 카드 · 소개 카드: 480 이하 1열 */
@media (max-width: 480px) { body .dw-page-blocks .dw-grid:has(.dw-step-card), body .dw-page-blocks .dw-steps { grid-template-columns: 1fr !important; } }
body .dw-page-blocks .dwi-map-apps .dwi-map-naver .wp-block-button__link { background: #00843d; color: #fff; }
body .dw-page-blocks .dwi-map-apps .dwi-map-kakao .wp-block-button__link { background: #fee500; color: #191600; }
/* 페이지 숫자 띠(회사 소개 등) = 홈 숫자 띠와 같은 모양 (10-20) */
body .dw-page-blocks .dwe-stats-band { background: var(--dwa-tint); padding: 48px 0 !important; margin: 0 0 clamp(48px, 6vw, 72px); }
body .dw-page-blocks .dwe-stats-band .dwe-stats-grid { padding: 0; }
body .dw-page-blocks .dwe-stats-band .dwe-stat-value { margin: 0 !important; }
body .dw-page-blocks .dwe-stats-band .dwe-stat-label { margin: 12px 0 0 !important; }
body .dw-page-blocks .dwe-stats-band .dwe-stats-note { margin: 24px 0 0 !important; padding: 0; background: none; text-align: center; font-size: 12px; color: var(--dw-muted); }
body .dwe-stats-band .dwe-stat .dw-icon-block { display: flex; justify-content: center; margin: 0 0 16px; }
body .dwe-stats-band .dwe-stat .dw-box-icon { display: inline-grid; place-items: center; width: 68px; height: 68px; margin: 0; border: 0; border-radius: 50%; background: var(--dwa-accent); color: #fff; box-shadow: 0 8px 20px color-mix(in srgb, var(--dwa-accent) 22%, transparent); }
body .dwe-stats-band .dwe-stat .dw-box-icon svg { width: 30px; height: 30px; stroke-width: 1.5; }
@media (max-width: 760px) { body .dwe-stats-band .dwe-stat .dw-box-icon { width: 56px; height: 56px; } body .dwe-stats-band .dwe-stat .dw-box-icon svg { width: 26px; height: 26px; } body .dw-page-blocks .dwe-stats-band .dwe-stats-grid { row-gap: 0 !important; } body .dw-page-blocks .dwe-stats-band .dwe-stat:nth-child(-n+2) { padding-bottom: 26px; } body .dw-page-blocks .dwe-stats-band .dwe-stat:nth-child(n+3) { padding-top: 26px; border-top: 1px solid var(--dw-line); } }
/* 페이지 안 「관련 시공 사례」: 카드 ↔ 버튼 여백, 제목 잉크색 (10-20) */
body .dw-page-blocks .dwe-works ~ .wp-block-buttons { margin-top: clamp(28px, 3vw, 40px) !important; }
body .dw-page-blocks .dwe-works .dwe-card-title { color: var(--dwi-ink); }
body .dw-page-blocks .dwe-works .dwe-card:hover .dwe-card-title { color: var(--dwa-accent); }
/* 체크 목록(.dw-check-list) — 서비스 「이런 일을 합니다」 · 사례 「바뀐 점」 등 (10-20) */
body ul.dw-check-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: clamp(20px, 3vw, 40px); border-top: 1px solid var(--dwi-ink); }
body ul.dw-check-list > li { position: relative; margin: 0; padding: 20px 0 20px 40px; border-bottom: 1px solid var(--dw-line); font-size: 16px; font-weight: 500; line-height: 1.5; color: var(--dwi-ink); }
body ul.dw-check-list > li::before { content: ""; position: absolute; left: 0; top: 50%; width: 26px; height: 26px; margin-top: -13px; border-radius: 50%; background: var(--dwa-soft); }
body ul.dw-check-list > li::after { content: ""; position: absolute; left: 9px; top: 50%; width: 8px; height: 13px; margin-top: -8.5px; border: solid var(--dwa-accent); border-width: 0 2px 2px 0; transform: rotate(45deg); }
@media (max-width: 1024px) { body ul.dw-check-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { body ul.dw-check-list { grid-template-columns: 1fr; } body ul.dw-check-list > li { padding: 16px 0 16px 40px; font-size: 15px; } }
/* 사례 상세 본문 폭(좁은 칸)에서는 2열 */
body.single-dw_portfolio ul.dw-check-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 600px) { body.single-dw_portfolio ul.dw-check-list { grid-template-columns: 1fr; } }
/* 소식: 분류별 모양 — 공지사항 = 게시판 줄(사진 없음, 날짜 앞), 인테리어 팁 = 사진 카드 (10-20) */
body .dw-news-list.is-board .dw-news-row { display: grid; grid-template-columns: 110px minmax(0, 1fr) auto; align-items: center; gap: 24px; padding: 26px 8px; }
body .dw-news-list.is-board .dw-news-date { order: -1; display: block; font-family: var(--dwi-serif); font-size: 15px; color: var(--dw-muted); }
body .dw-news-list.is-board .dw-news-date .dw-news-arrow { display: none; }
body .dw-news-list.is-board .dw-news-main { display: block; }
body .dw-news-list.is-board .dw-news-meta { display: none; }
body .dw-news-list.is-board .dw-news-title { display: block; font-size: 18px; margin: 0 0 6px; }
body .dw-news-list.is-board .dw-news-excerpt { display: block; font-size: 14px; color: var(--dw-muted); }
body .dw-news-list.is-board .dw-news-row::after { content: "→"; color: var(--dwa-accent); font-size: 18px; }
body .dw-news-list.is-board .dw-news-row:hover .dw-news-title { color: var(--dwa-accent); }
@media (max-width: 600px) { body .dw-news-list.is-board .dw-news-row { grid-template-columns: minmax(0, 1fr); gap: 6px; padding: 20px 0; } body .dw-news-list.is-board .dw-news-row::after { display: none; } body .dw-news-list.is-board .dw-news-date { font-size: 13px; } }
/* 카드형 분류 페이지에도 분류 탭 */
body .dw-blog-list > .dw-news-filter { grid-column: 1 / -1; align-self: start; align-items: flex-start; margin-bottom: 8px; }
body .dw-blog-list > .dw-news-filter .dw-news-tab { align-self: flex-start; }
/* 슬라이드 기본 효과 = 켄번스(천천히 확대). 나가는 슬라이드가 페이드아웃 동안 줌 상태를 유지하고, 다 사라진 뒤 원래 크기로 — 튀지 않게 (10-20) */
body .dw-hero-fx-kenburns .dw-hero-slide { overflow: hidden; }
body .dw-hero-fx-kenburns .dw-hero-slide .dw-hero-bg { animation: none !important; transform: scale(1); transform-origin: 60% 45%; transition: transform 0s linear .8s; will-change: transform; }
body .dw-hero-fx-kenburns.dwi-kb-on .dw-hero-slide.is-active .dw-hero-bg { transform: scale(1.12); transition: transform 9s cubic-bezier(.25, .46, .45, .94); }
@media (prefers-reduced-motion: reduce) { body .dw-hero-fx-kenburns .dw-hero-slide .dw-hero-bg, body .dw-hero-fx-kenburns .dw-hero-slide.is-active .dw-hero-bg { transform: none; transition: none; } }
/* 헤더 메뉴: 가는 꺾쇠(GPT · Claude 합의 A안) + 밑줄 = 메뉴 글자색 (10-20) */
@media (min-width: 861px) {
	body .dw-menu .dw-menu-caret { width: 6px; height: 6px; margin-left: 8px; margin-top: -4px; border-right-width: 1.25px; border-bottom-width: 1.25px; opacity: .55; transform: rotate(45deg); transform-origin: 50% 50%; transition: transform .25s ease, opacity .2s ease, color .2s ease; }
	body .dw-menu > li:hover > a .dw-menu-caret, body .dw-menu > li:focus-within > a .dw-menu-caret, body .dw-menu > li.is-open > a .dw-menu-caret { transform: rotate(225deg); margin-top: -1px; opacity: 1; color: var(--dwa-accent); }
	body .dw-menu a::after { background: currentColor !important; }
}
