/* ============================================================
   ddoksun_home.css  v5.9
   /home SEO 허브 페이지 전용 CSS — dd- prefix
   변경: 고급 HERO (화이트/연블루 그라데이션 + 좌카피/우비주얼),
         카드 1:1 aspect-ratio 썸네일 통일, 플레이스홀더 카드,
         더보기 버튼 제거, 어두운 푸터
   ============================================================ */

/* ── CSS 변수 ────────────────────────────────────────────── */
:root {
    --dd-max:         1280px;
    --dd-pad-x:       24px;
    --dd-sec-pt:      64px;
    --dd-sec-pb:      16px;
    --dd-gap:         20px;
    --dd-radius-card: 20px;
    --dd-shadow-card: 0 4px 20px rgba(15,23,42,.06);
    --dd-shadow-hover:0 16px 40px rgba(15,23,42,.14);
    --dd-col-title:   #0f172a;
    --dd-col-text:    #374151;
    --dd-col-muted:   #6b7280;
    --dd-col-accent:  #2563eb;
    --dd-col-border:  #e5e7eb;
    --dd-transition:  .18s ease;
}

/* ── 전체 래퍼 ───────────────────────────────────────────── */
.dd-home {
    width: 100%;
    font-family: -apple-system, 'Apple SD Gothic Neo', 'Noto Sans KR', sans-serif;
    color: var(--dd-col-text);
    line-height: 1.6;
}

/* ================================================================
   HERO  —  화이트/연블루 그라데이션 + 좌카피 + 우비주얼
   ================================================================ */
.dd-hero {
    background: linear-gradient(135deg, #f0f7ff 0%, #e8f4fd 40%, #f5f0ff 100%);
    padding: 80px var(--dd-pad-x) 72px;
    overflow: hidden;
    position: relative;
}

/* 배경 장식 원 */
.dd-hero::before,
.dd-hero::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}
.dd-hero::before {
    width: 560px; height: 560px;
    background: radial-gradient(circle, rgba(37,99,235,.06) 0%, transparent 70%);
    top: -160px; right: -80px;
}
.dd-hero::after {
    width: 360px; height: 360px;
    background: radial-gradient(circle, rgba(139,92,246,.05) 0%, transparent 70%);
    bottom: -100px; left: 5%;
}

.dd-hero-inner {
    max-width: var(--dd-max);
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 48px;
    position: relative;
    z-index: 1;
}

/* 좌측 카피 */
.dd-hero-copy {
    flex: 1 1 0;
    min-width: 0;
}
.dd-hero-eyebrow {
    display: inline-block;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--dd-col-accent);
    background: rgba(37,99,235,.08);
    padding: 5px 14px;
    border-radius: 999px;
    margin-bottom: 22px;
}
.dd-hero-title {
    font-size: clamp(1.9rem, 3.8vw, 3rem);
    font-weight: 900;
    color: var(--dd-col-title);
    line-height: 1.25;
    letter-spacing: -.035em;
    margin: 0 0 18px;
}
.dd-hero-title em {
    font-style: normal;
    color: var(--dd-col-accent);
    position: relative;
}
/* 밑줄 장식 */
.dd-hero-title em::after {
    content: '';
    position: absolute;
    left: 0; bottom: -4px;
    width: 100%; height: 3px;
    background: linear-gradient(90deg, var(--dd-col-accent), #818cf8);
    border-radius: 2px;
    opacity: .5;
}
.dd-hero-desc {
    font-size: 1rem;
    color: var(--dd-col-muted);
    line-height: 1.8;
    margin: 0 0 28px;
}

/* 키워드 칩 */
.dd-hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.dd-chip {
    font-size: .82rem;
    font-weight: 600;
    color: var(--dd-col-accent);
    background: rgba(37,99,235,.08);
    padding: 6px 16px;
    border-radius: 999px;
    white-space: nowrap;
    transition: background var(--dd-transition), color var(--dd-transition);
}
.dd-chip:hover { background: rgba(37,99,235,.16); }
.dd-chip--outline {
    background: transparent;
    border: 1.5px solid var(--dd-col-accent);
    color: var(--dd-col-accent);
}
.dd-chip--outline:hover {
    background: var(--dd-col-accent);
    color: #fff;
}

/* 우측 비주얼 */
.dd-hero-visual {
    flex: 0 0 340px;
    width: 340px;
    position: relative;
    height: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 비주얼 카드 공통 */
.dd-hv-card {
    position: absolute;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 8px 32px rgba(15,23,42,.10);
    padding: 22px 24px;
}

/* 메인 카드 */
.dd-hv-card--main {
    width: 240px;
    top: 10px; left: 10px;
    z-index: 2;
    animation: ddHvFloat 4s ease-in-out infinite;
}
.dd-hv-card-tag {
    font-size: .7rem;
    font-weight: 700;
    color: var(--dd-col-accent);
    background: rgba(37,99,235,.08);
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    margin-bottom: 10px;
    letter-spacing: .04em;
}
.dd-hv-card-title {
    font-size: .92rem;
    font-weight: 800;
    color: var(--dd-col-title);
    line-height: 1.45;
    margin-bottom: 12px;
}
.dd-hv-card-row {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 14px;
}
.dd-hv-dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}
.dd-hv-dot--blue { background: var(--dd-col-accent); }
.dd-hv-dot-label {
    font-size: .76rem;
    color: var(--dd-col-muted);
    font-weight: 500;
}
.dd-hv-card-footer {
    display: flex;
    gap: 6px;
}
.dd-hv-badge {
    font-size: .68rem;
    font-weight: 700;
    background: #eff6ff;
    color: var(--dd-col-accent);
    padding: 3px 10px;
    border-radius: 999px;
}
.dd-hv-badge--pink {
    background: #fdf2f8;
    color: #ec4899;
}

/* 서브 카드 (통계) */
.dd-hv-card--sub {
    width: 120px;
    bottom: 20px; right: 0;
    text-align: center;
    z-index: 3;
    animation: ddHvFloat 4s ease-in-out .8s infinite;
    padding: 18px 16px;
}
.dd-hv-stat {
    font-size: 1.8rem;
    font-weight: 900;
    color: var(--dd-col-title);
    line-height: 1;
}
.dd-hv-stat span {
    font-size: 1.1rem;
    color: var(--dd-col-accent);
}
.dd-hv-stat-label {
    font-size: .72rem;
    color: var(--dd-col-muted);
    margin-top: 5px;
}

/* 로고 카드 */
.dd-hv-card--logo {
    width: 78px;
    top: 0; right: 20px;
    text-align: center;
    background: linear-gradient(135deg, var(--dd-col-accent) 0%, #818cf8 100%);
    z-index: 4;
    padding: 14px 12px;
    animation: ddHvFloat 4s ease-in-out 1.6s infinite;
}
.dd-hv-logo-text {
    display: block;
    font-size: 1.5rem;
    font-weight: 900;
    color: #fff;
    line-height: 1;
}
.dd-hv-logo-sub {
    display: block;
    font-size: .56rem;
    color: rgba(255,255,255,.8);
    letter-spacing: .08em;
    margin-top: 4px;
}

@keyframes ddHvFloat {
    0%, 100% { transform: translateY(0); }
    50%       { transform: translateY(-8px); }
}

/* ================================================================
   지역 섹션 (dd-section)
   ================================================================ */
.dd-section {
    max-width: var(--dd-max);
    margin: 0 auto;
    padding: var(--dd-sec-pt) var(--dd-pad-x) var(--dd-sec-pb);
}
.dd-section + .dd-section {
    border-top: 1px solid var(--dd-col-border);
}

/* 섹션 헤더 */
.dd-section-head {
    margin-bottom: 28px;
}

/* 지역명 타이틀 */
.dd-region-title {
    font-size: clamp(1.5rem, 3vw, 2.2rem);
    font-weight: 900;
    color: var(--dd-col-title);
    margin: 0;
    letter-spacing: -.03em;
    line-height: 1.2;
}

/* 빈 메시지 */
.dd-empty-msg {
    color: var(--dd-col-muted);
    font-size: .9rem;
    padding: 20px 0;
}

/* ================================================================
   카드 그리드 (dd-grid)
   ================================================================ */
.dd-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--dd-gap);
    list-style: none;
    padding: 0;
    margin: 0;
}
@media (max-width: 1100px) {
    .dd-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px) {
    .dd-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
}
@media (max-width: 480px) {
    .dd-grid { gap: 12px; }
}

/* ================================================================
   카드 (dd-card)  — 1:1 썸네일 고정, 균일 높이
   ================================================================ */
.dd-card {
    background: #fff;
    border-radius: var(--dd-radius-card);
    box-shadow: var(--dd-shadow-card);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform var(--dd-transition), box-shadow var(--dd-transition);
}
.dd-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--dd-shadow-hover);
}

.dd-card-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    color: inherit;
}
.dd-card-link:hover { text-decoration: none; color: inherit; }

/* ─── 썸네일: 1:1 정사각형 고정 ─────────────────────────── */
.dd-card-thumb {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #eef2f7;
    flex-shrink: 0;
    position: relative;
}
.dd-card-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .28s ease;
}
.dd-card:hover .dd-card-thumb img {
    transform: scale(1.05);
}

/* 플레이스홀더 */
.dd-card-ph-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eef2f7;
}
.dd-card-ph {
    font-size: 2rem;
    opacity: .35;
    pointer-events: none;
    /* aspect-ratio 컨테이너 중앙 정렬 */
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}

/* 카드 본문 — 2줄 클램프 */
.dd-card-body {
    padding: 14px 16px 16px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
    /* 카드 높이 균일화: 카드 전체 높이 = 썸네일(1:1) + 본문 고정 높이 */
    min-height: 88px;
}
.dd-card-title {
    font-size: 1rem;
    font-weight: 800;
    color: var(--dd-col-title);
    line-height: 1.45;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.dd-card-exc {
    font-size: .8rem;
    color: var(--dd-col-muted);
    line-height: 1.55;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ── 준비중 플레이스홀더 카드 ──────────────────────────── */
.dd-card--empty {
    pointer-events: none;
    opacity: .55;
    box-shadow: none;
    border: 1.5px dashed #d1d5db;
    background: #f9fafb;
}
.dd-card-empty-inner {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 20px;
    box-sizing: border-box;
}
.dd-card-empty-inner span { font-size: 2rem; opacity: .4; }
.dd-card-empty-inner p {
    font-size: .8rem;
    color: var(--dd-col-muted);
    margin: 0;
    font-weight: 600;
}

/* ================================================================
   ABOUT 섹션
   ================================================================ */
.dd-about {
    background: #f8fafc;
    padding: 64px var(--dd-pad-x) 68px;
    text-align: center;
    border-top: 1px solid var(--dd-col-border);
}
.dd-about-inner {
    max-width: 640px;
    margin: 0 auto;
}
.dd-about-title {
    font-size: clamp(1.3rem, 2.5vw, 1.6rem);
    font-weight: 800;
    color: var(--dd-col-title);
    margin: 0 0 14px;
    letter-spacing: -.02em;
}
.dd-about-desc {
    font-size: .95rem;
    color: var(--dd-col-muted);
    line-height: 1.8;
    margin: 0 0 26px;
}
.dd-about-features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 14px;
}
.dd-about-features li {
    font-size: .86rem;
    font-weight: 600;
    color: var(--dd-col-accent);
    background: #eff6ff;
    padding: 8px 18px;
    border-radius: 999px;
}

/* ================================================================
   HOME 전용 어두운 푸터 (dd-footer)
   ================================================================ */
.dd-footer {
    background: #111827;
    color: #e5e7eb;
    padding: 48px var(--dd-pad-x) 40px;
}
.dd-footer-inner {
    max-width: var(--dd-max);
    margin: 0 auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}
.dd-footer-brand {
    font-size: 1.4rem;
    font-weight: 900;
    letter-spacing: .08em;
    color: #fff;
}
.dd-footer-tagline {
    font-size: .86rem;
    color: #9ca3af;
    margin: 0;
    max-width: 460px;
    line-height: 1.7;
}
.dd-footer-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 16px;
}
.dd-footer-nav a {
    font-size: .8rem;
    color: #9ca3af;
    text-decoration: none;
    transition: color var(--dd-transition);
    white-space: nowrap;
}
.dd-footer-nav a:hover { color: #fff; text-decoration: none; }
.dd-footer-copy {
    font-size: .76rem;
    color: #6b7280;
    margin: 0;
}

/* ================================================================
   SEO 가이드 아코디언 (dd-seo-guide)
   ================================================================ */
.dd-seo-guide {
    border-top: 1px solid var(--dd-col-border);
    background: #f8fafc;
}
.dd-seo-guide-inner {
    max-width: var(--dd-max);
    margin: 0 auto;
    padding: 0 var(--dd-pad-x);
}

/* 토글 버튼 */
.dd-seo-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 22px 0;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    color: var(--dd-col-title);
    transition: opacity var(--dd-transition);
}
.dd-seo-toggle:hover { opacity: .75; }

.dd-seo-toggle-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1rem;
    font-weight: 700;
    color: var(--dd-col-title);
}
.dd-seo-toggle-icon {
    font-size: 1.1rem;
    flex-shrink: 0;
}
.dd-seo-toggle-arrow {
    font-size: .75rem;
    color: var(--dd-col-muted);
    flex-shrink: 0;
    transition: transform .25s ease;
}
.dd-seo-toggle[aria-expanded="true"] .dd-seo-toggle-arrow {
    transform: rotate(180deg);
}

/* 펼쳐지는 본문 */
.dd-seo-body {
    padding-bottom: 56px;
}
.dd-seo-body[hidden] { display: none; }

/* 본문 콘텐츠 */
.dd-seo-content {
    border-top: 1px solid var(--dd-col-border);
    padding-top: 36px;
    color: var(--dd-col-text);
    font-size: .95rem;
    line-height: 1.85;
}

/* 리드 문단 */
.dd-seo-lead {
    font-size: 1rem;
    color: var(--dd-col-muted);
    line-height: 1.9;
    margin: 0 0 32px;
    padding: 20px 24px;
    background: #fff;
    border-left: 4px solid var(--dd-col-accent);
    border-radius: 0 12px 12px 0;
}

/* 목차 */
.dd-seo-toc {
    background: #fff;
    border: 1px solid var(--dd-col-border);
    border-radius: 16px;
    padding: 24px 28px;
    margin: 0 0 40px;
}
.dd-seo-toc-title {
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--dd-col-muted);
    margin: 0 0 14px;
}
.dd-seo-toc-list {
    margin: 0;
    padding: 0 0 0 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px 24px;
}
.dd-seo-toc-list li {
    font-size: .88rem;
    color: var(--dd-col-text);
}
.dd-seo-toc-list a {
    color: var(--dd-col-accent);
    text-decoration: none;
    transition: opacity var(--dd-transition);
}
.dd-seo-toc-list a:hover { opacity: .7; text-decoration: underline; }

/* 섹션 구분 */
.dd-seo-section {
    margin-bottom: 44px;
    padding-bottom: 44px;
    border-bottom: 1px solid var(--dd-col-border);
}
.dd-seo-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

/* 제목 */
.dd-seo-h2 {
    font-size: clamp(1.1rem, 2vw, 1.35rem);
    font-weight: 900;
    color: var(--dd-col-title);
    margin: 0 0 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #eff6ff;
    letter-spacing: -.025em;
    line-height: 1.35;
}
.dd-seo-h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--dd-col-title);
    margin: 24px 0 10px;
}

/* 본문 단락 */
.dd-seo-section p {
    margin: 0 0 14px;
    color: var(--dd-col-text);
}

/* 리스트 */
.dd-seo-list {
    margin: 12px 0 16px;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.dd-seo-list li {
    padding: 14px 18px;
    background: #fff;
    border: 1px solid var(--dd-col-border);
    border-radius: 12px;
    font-size: .9rem;
    line-height: 1.7;
    color: var(--dd-col-text);
}
.dd-seo-list li strong {
    color: var(--dd-col-title);
    display: block;
    margin-bottom: 4px;
}

/* 비교표 */
.dd-seo-table-wrap {
    overflow-x: auto;
    margin: 16px 0;
    border-radius: 12px;
    border: 1px solid var(--dd-col-border);
}
.dd-seo-table {
    width: 100%;
    border-collapse: collapse;
    font-size: .88rem;
    background: #fff;
}
.dd-seo-table thead tr {
    background: #eff6ff;
}
.dd-seo-table th {
    padding: 12px 16px;
    text-align: left;
    font-weight: 700;
    color: var(--dd-col-title);
    white-space: nowrap;
    border-bottom: 1px solid var(--dd-col-border);
}
.dd-seo-table td {
    padding: 11px 16px;
    color: var(--dd-col-text);
    border-bottom: 1px solid #f1f5f9;
    vertical-align: top;
    line-height: 1.6;
}
.dd-seo-table tr:last-child td { border-bottom: none; }
.dd-seo-table tbody tr:hover td { background: #f8fafc; }

/* FAQ */
.dd-seo-faq {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin: 0;
}
.dd-seo-faq-item {
    background: #fff;
    border: 1px solid var(--dd-col-border);
    border-radius: 14px;
    overflow: hidden;
}
.dd-seo-faq-q {
    font-size: .92rem;
    font-weight: 700;
    color: var(--dd-col-title);
    padding: 16px 20px;
    background: #f8fafc;
    border-bottom: 1px solid var(--dd-col-border);
    margin: 0;
    line-height: 1.5;
}
.dd-seo-faq-a {
    font-size: .88rem;
    color: var(--dd-col-text);
    padding: 16px 20px;
    margin: 0;
    line-height: 1.75;
}

/* 핵심 요약 카드 그리드 */
.dd-seo-summary {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin: 20px 0 24px;
}
.dd-seo-summary-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background: #fff;
    border: 1px solid var(--dd-col-border);
    border-radius: 14px;
    padding: 18px 16px;
}
.dd-seo-summary-num {
    font-size: 1.1rem;
    font-weight: 900;
    color: var(--dd-col-accent);
    background: #eff6ff;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    letter-spacing: -.03em;
}
.dd-seo-summary-item strong {
    display: block;
    font-size: .88rem;
    font-weight: 700;
    color: var(--dd-col-title);
    margin-bottom: 5px;
}
.dd-seo-summary-item p {
    font-size: .8rem;
    color: var(--dd-col-muted);
    margin: 0;
    line-height: 1.6;
}

/* 면책 고지 */
.dd-seo-disclaimer {
    font-size: .8rem;
    color: var(--dd-col-muted);
    background: #f1f5f9;
    border-radius: 10px;
    padding: 14px 18px;
    margin: 0;
    line-height: 1.7;
}

/* ================================================================
   반응형 보정
   ================================================================ */
/* SEO 가이드 반응형 */
@media (max-width: 900px) {
    .dd-seo-toc-list {
        grid-template-columns: 1fr;
    }
    .dd-seo-summary {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .dd-seo-toggle-title { font-size: .92rem; }
    .dd-seo-summary { grid-template-columns: 1fr; }
    .dd-seo-table th,
    .dd-seo-table td { padding: 9px 12px; font-size: .82rem; }
    .dd-seo-faq-q { font-size: .86rem; padding: 13px 16px; }
    .dd-seo-faq-a { font-size: .84rem; padding: 13px 16px; }
}

/* HERO: 모바일에서 1열 수직 스택 */
@media (max-width: 900px) {
    .dd-hero-inner {
        flex-direction: column;
        gap: 40px;
    }
    .dd-hero-visual {
        flex: none;
        width: 100%;
        max-width: 320px;
        height: 280px;
        margin: 0 auto;
    }
}
@media (max-width: 768px) {
    :root {
        --dd-sec-pt: 44px;
        --dd-pad-x: 16px;
        --dd-gap: 14px;
    }
    .dd-hero { padding: 52px var(--dd-pad-x) 48px; }
    .dd-section-head { margin-bottom: 18px; }
}
@media (max-width: 480px) {
    .dd-hero { padding: 40px 14px 40px; }
    .dd-hero-visual { display: none; } /* 극소형 화면에서 비주얼 숨김 */
    .dd-card-title { font-size: .92rem; }
    .dd-footer-nav { gap: 5px 10px; }
}


/* =========================================================
   v6.0 권역별 진료과 필터 탭
   - 메인: 권역 → 진료과 → 허브 진입 구조
   ========================================================= */
.dd-dept-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:18px 0 26px;
}
.dd-dept-tab{
    appearance:none;
    border:1px solid #dbe6f3;
    background:#fff;
    color:#475569;
    border-radius:999px;
    padding:9px 14px;
    font-size:14px;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    transition:all .18s ease;
}
.dd-dept-tab:hover{
    border-color:#93c5fd;
    color:#1d4ed8;
    box-shadow:0 8px 20px rgba(37,99,235,.08);
}
.dd-dept-tab.is-active{
    background:#1d4ed8;
    border-color:#1d4ed8;
    color:#fff;
    box-shadow:0 10px 24px rgba(37,99,235,.18);
}
.dd-section[data-dd-empty-filter="Y"] .dd-grid::after{
    content:"해당 진료과 콘텐츠를 준비중입니다.";
    display:block;
    grid-column:1/-1;
    padding:36px 20px;
    border-radius:22px;
    background:#f8fafc;
    border:1px dashed #cbd5e1;
    color:#64748b;
    text-align:center;
    font-weight:700;
}
@media(max-width:768px){
    .dd-dept-tabs{
        gap:7px;
        margin:14px 0 20px;
    }
    .dd-dept-tab{
        padding:8px 11px;
        font-size:13px;
    }
}


/* ============================================================
   SEO 가이드 details/summary 아코디언
   - display:none 대신 브라우저 기본 접힘 구조 사용
   - 메인/모바일 접근성 안정화
   ============================================================ */
.dd-seo-details {
    display: block;
}
.dd-seo-details > summary {
    list-style: none;
    cursor: pointer;
}
.dd-seo-details > summary::-webkit-details-marker {
    display: none;
}
.dd-seo-details[open] .dd-seo-toggle-arrow {
    transform: rotate(180deg);
}
.dd-seo-toggle-arrow {
    transition: transform .18s ease;
}
.dd-seo-body {
    display: block;
}


/* SEARCHDOC separated main hero v1 */
.sd-hero2{
    max-width:1840px;
    margin:26px auto 48px;
    padding:0 42px;
    position:relative;
}

.sd-hero2-inner{
    min-height:760px;
    display:grid;
    grid-template-columns:47% 53%;
    align-items:center;
    gap:20px;
    padding:64px 64px 112px;
    border-radius:42px;
    border:1px solid #dce9fb;
    background:
        radial-gradient(circle at 72% 18%, rgba(255,255,255,.96) 0, rgba(255,255,255,0) 28%),
        linear-gradient(135deg,#f3f8ff 0%,#eaf4ff 45%,#eef3ff 100%);
    box-shadow:0 18px 48px rgba(30,85,190,.10);
    overflow:hidden;
}

.sd-hero2-copy{
    position:relative;
    z-index:4;
}

.sd-hero2-title{
    margin:0 0 28px;
    font-size:72px;
    line-height:1.12;
    letter-spacing:-0.07em;
    font-weight:950;
    color:#071631;
}

.sd-hero2-title em{
    display:inline-block;
    color:#1764ff;
    font-style:normal;
}

.sd-hero2-desc{
    margin:0 0 34px;
    font-size:23px;
    line-height:1.75;
    letter-spacing:-0.04em;
    color:#17233b;
    font-weight:650;
}

.sd-hero2-desc strong{
    color:#1264ff;
    font-weight:900;
}

.sd-hero2-feature{
    display:flex;
    gap:20px;
    margin-bottom:26px;
    flex-wrap:wrap;
}

.sd-hero2-feature-card{
    min-width:330px;
    display:flex;
    align-items:center;
    gap:20px;
    padding:24px 28px;
    border-radius:22px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(214,226,246,.95);
    box-shadow:0 14px 28px rgba(31,82,174,.10);
    backdrop-filter:blur(8px);
}

.sd-hero2-feature-icon{
    width:72px;
    height:72px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:35px;
    font-weight:900;
}

.sd-hero2-feature-icon.sd-blue{
    color:#fff;
    background:linear-gradient(180deg,#69a6ff,#1764ff);
    box-shadow:0 12px 24px rgba(27,102,255,.22);
}

.sd-hero2-feature-icon.sd-pink{
    color:#fff;
    background:linear-gradient(180deg,#ff9cc6,#ff3f86);
    box-shadow:0 12px 24px rgba(255,63,134,.20);
}

.sd-hero2-feature-card strong,
.sd-hero2-feature-card span{
    display:block;
    letter-spacing:-0.04em;
}

.sd-hero2-feature-card strong{
    font-size:24px;
    line-height:1.35;
    font-weight:950;
    color:#111b31;
}

.sd-hero2-feature-card div > span{
    font-size:22px;
    line-height:1.35;
    font-weight:850;
    color:#111b31;
}

.sd-hero2-depts{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.sd-hero2-dept{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-width:150px;
    height:70px;
    padding:0 24px;
    border-radius:18px;
    background:#fff;
    border:1px solid #d8e4f6;
    color:#17223a;
    font-size:22px;
    font-weight:850;
    letter-spacing:-0.04em;
    text-decoration:none;
    box-shadow:0 10px 22px rgba(38,84,180,.09);
}

.sd-hero2-dept:hover{
    color:#1764ff;
    border-color:#b8cffb;
    transform:translateY(-2px);
    text-decoration:none;
}

.sd-hero2-dept span{
    color:#1764ff;
    font-weight:900;
}

.sd-hero2-visual{
    min-height:660px;
    position:relative;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    z-index:2;
}

.sd-hero2-character{
    position:relative;
    z-index:5;
    width:min(760px,100%);
    max-height:700px;
    object-fit:contain;
    filter:drop-shadow(0 24px 34px rgba(25,84,190,.13));
}

.sd-deco{
    position:absolute;
    z-index:2;
    pointer-events:none;
}

.sd-deco-cloud{
    top:40px;
    left:120px;
    width:130px;
    height:58px;
    background:rgba(255,255,255,.9);
    border-radius:999px;
    box-shadow:0 12px 24px rgba(65,113,190,.07);
}

.sd-deco-cloud:before,
.sd-deco-cloud:after{
    content:"";
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,.92);
}

.sd-deco-cloud:before{
    width:62px;
    height:62px;
    left:18px;
    top:-24px;
}

.sd-deco-cloud:after{
    width:72px;
    height:72px;
    right:14px;
    top:-32px;
}

.sd-deco-star{
    color:#a9c4ff;
    text-shadow:0 8px 18px rgba(43,96,233,.12);
}

.sd-star1{
    top:155px;
    left:32px;
    font-size:34px;
}

.sd-star2{
    top:210px;
    left:105px;
    font-size:28px;
}

.sd-deco-heart{
    top:78px;
    right:260px;
    width:100px;
    height:84px;
    border-radius:28px;
    background:linear-gradient(145deg,#ffb4d0,#ff4f8f);
    color:#fff;
    font-size:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 16px 30px rgba(255,76,139,.22);
    transform:rotate(8deg);
}

.sd-deco-pin{
    top:132px;
    right:58px;
    width:86px;
    height:86px;
    border-radius:50% 50% 50% 8px;
    background:linear-gradient(180deg,#58a4ff,#1764ff);
    transform:rotate(-45deg);
    box-shadow:0 14px 28px rgba(23,100,255,.22);
}

.sd-deco-pin:after{
    content:"";
    position:absolute;
    width:28px;
    height:28px;
    border-radius:50%;
    background:#dcecff;
    left:29px;
    top:29px;
}

.sd-deco-pill{
    right:220px;
    bottom:52px;
    width:78px;
    height:36px;
    border-radius:999px;
    background:linear-gradient(90deg,#fff 0 48%,#ff5578 49% 100%);
    transform:rotate(-28deg);
    box-shadow:0 14px 24px rgba(255,85,120,.18);
}

.sd-deco-orbit{
    right:20px;
    bottom:115px;
    width:650px;
    height:300px;
    border:3px solid rgba(255,255,255,.72);
    border-left-color:transparent;
    border-bottom-color:transparent;
    border-radius:50%;
    transform:rotate(-17deg);
    z-index:1;
}

.sd-hero2-bottom{
    width:calc(100% - 180px);
    margin:-92px auto 0;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:rgba(255,255,255,.86);
    border:1px solid rgba(220,232,248,.95);
    border-radius:28px;
    box-shadow:0 18px 38px rgba(32,82,180,.10);
    backdrop-filter:blur(10px);
    position:relative;
    z-index:8;
    overflow:hidden;
}

.sd-hero2-bottom-item{
    display:flex;
    align-items:center;
    gap:20px;
    padding:30px 34px;
    position:relative;
}

.sd-hero2-bottom-item:not(:last-child):after{
    content:"";
    position:absolute;
    right:0;
    top:28px;
    width:1px;
    height:62px;
    background:#dce6f4;
}

.sd-hero2-bottom-icon{
    width:72px;
    height:72px;
    flex:0 0 72px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(180deg,#eef6ff,#f9fcff);
    color:#1764ff;
    font-size:34px;
    box-shadow:inset 0 2px 8px rgba(255,255,255,.85), 0 10px 20px rgba(43,96,233,.10);
}

.sd-hero2-bottom-item strong{
    display:block;
    margin-bottom:8px;
    font-size:23px;
    font-weight:950;
    letter-spacing:-0.05em;
    color:#111c33;
}

.sd-hero2-bottom-item p{
    margin:0;
    font-size:17px;
    color:#68748a;
    letter-spacing:-0.03em;
}

@media(max-width:1280px){
    .sd-hero2{padding:0 22px;}
    .sd-hero2-inner{
        grid-template-columns:1fr;
        padding:48px 34px 110px;
    }
    .sd-hero2-title{font-size:56px;}
    .sd-hero2-visual{min-height:520px;}
    .sd-hero2-character{max-width:640px;}
    .sd-hero2-bottom{
        width:calc(100% - 80px);
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){
    .sd-hero2{
        margin:16px auto 30px;
        padding:0 12px;
    }
    .sd-hero2-inner{
        border-radius:28px;
        padding:30px 20px 34px;
    }
    .sd-hero2-title{font-size:40px;}
    .sd-hero2-desc{font-size:17px;}
    .sd-hero2-feature-card{
        min-width:100%;
        padding:18px;
    }
    .sd-hero2-feature-icon{
        width:58px;
        height:58px;
        font-size:28px;
    }
    .sd-hero2-feature-card strong,
    .sd-hero2-feature-card div > span{
        font-size:18px;
    }
    .sd-hero2-dept{
        min-width:calc(50% - 8px);
        height:58px;
        font-size:17px;
    }
    .sd-hero2-visual{min-height:360px;}
    .sd-deco-heart,
    .sd-deco-pin,
    .sd-deco-orbit{
        opacity:.45;
        transform:scale(.72);
    }
    .sd-hero2-bottom{
        width:100%;
        margin:18px auto 0;
        grid-template-columns:1fr;
        border-radius:22px;
    }
    .sd-hero2-bottom-item{padding:20px;}
    .sd-hero2-bottom-item:not(:last-child):after{display:none;}
}

/* SEARCHDOC hero v2 soft size + decoration fix */
.sd-hero2{
    max-width:1540px !important;
    margin:22px auto 42px !important;
    padding:0 34px !important;
}

.sd-hero2-inner{
    min-height:560px !important;
    grid-template-columns:50% 50% !important;
    padding:46px 54px 92px !important;
    border-radius:36px !important;
    background:
        radial-gradient(circle at 76% 32%, rgba(255,255,255,.95) 0, rgba(255,255,255,0) 34%),
        linear-gradient(135deg,#f4f8ff 0%,#edf6ff 48%,#f5f7ff 100%) !important;
}

.sd-hero2-title{
    font-size:56px !important;
    line-height:1.13 !important;
    margin-bottom:22px !important;
}

.sd-hero2-desc{
    font-size:20px !important;
    line-height:1.65 !important;
    margin-bottom:26px !important;
}

.sd-hero2-feature{
    gap:14px !important;
    margin-bottom:22px !important;
}

.sd-hero2-feature-card{
    min-width:250px !important;
    padding:18px 20px !important;
    border-radius:20px !important;
}

.sd-hero2-feature-icon{
    width:56px !important;
    height:56px !important;
    font-size:25px !important;
    border-radius:50% !important;
}

.sd-hero2-feature-card strong{
    font-size:19px !important;
}

.sd-hero2-feature-card div > span{
    font-size:18px !important;
}

.sd-hero2-dept{
    min-width:128px !important;
    height:58px !important;
    padding:0 18px !important;
    border-radius:16px !important;
    font-size:18px !important;
}

.sd-hero2-visual{
    min-height:500px !important;
    align-items:center !important;
    justify-content:center !important;
}

.sd-hero2-character{
    width:min(500px,88%) !important;
    max-height:500px !important;
    object-fit:contain !important;
    filter:drop-shadow(0 18px 28px rgba(25,84,190,.12)) !important;
}

/* 장식 공통: 네모 느낌 제거 */
.sd-deco{
    box-sizing:border-box !important;
}

/* 구름 작게 */
.sd-deco-cloud{
    top:38px !important;
    left:120px !important;
    width:104px !important;
    height:46px !important;
    opacity:.82 !important;
}

.sd-deco-cloud:before{
    width:48px !important;
    height:48px !important;
    left:14px !important;
    top:-18px !important;
}

.sd-deco-cloud:after{
    width:56px !important;
    height:56px !important;
    right:12px !important;
    top:-24px !important;
}

/* 별 위치 정리 */
.sd-star1{
    top:118px !important;
    left:48px !important;
    font-size:28px !important;
}

.sd-star2{
    top:176px !important;
    left:108px !important;
    font-size:22px !important;
}

/* 하트: 네모 박스 느낌 제거하고 둥근 말랑 카드로 */
.sd-deco-heart{
    top:72px !important;
    right:220px !important;
    width:72px !important;
    height:72px !important;
    border-radius:50% !important;
    background:linear-gradient(145deg,#ffb8d4,#ff4f8f) !important;
    color:#fff !important;
    font-size:34px !important;
    line-height:72px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 14px 26px rgba(255,76,139,.18) !important;
    transform:rotate(8deg) !important;
}

/* 지도핀: 사각형처럼 보이지 않게 더 작고 둥글게 */
.sd-deco-pin{
    top:118px !important;
    right:78px !important;
    width:58px !important;
    height:58px !important;
    border-radius:50% 50% 50% 14px !important;
    background:linear-gradient(180deg,#6aafff,#1764ff) !important;
    transform:rotate(-45deg) !important;
    box-shadow:0 12px 22px rgba(23,100,255,.17) !important;
}

.sd-deco-pin:after{
    width:20px !important;
    height:20px !important;
    left:19px !important;
    top:19px !important;
    background:#eef6ff !important;
}

/* 알약 장식 작게 */
.sd-deco-pill{
    right:184px !important;
    bottom:76px !important;
    width:58px !important;
    height:28px !important;
    opacity:.88 !important;
    box-shadow:0 10px 18px rgba(255,85,120,.14) !important;
}

/* 궤도선 너무 튀지 않게 */
.sd-deco-orbit{
    right:18px !important;
    bottom:110px !important;
    width:470px !important;
    height:220px !important;
    border-width:2px !important;
    opacity:.72 !important;
}

/* 하단 정보바 작게 */
.sd-hero2-bottom{
    width:calc(100% - 140px) !important;
    margin:-70px auto 0 !important;
    border-radius:24px !important;
}

.sd-hero2-bottom-item{
    padding:22px 24px !important;
    gap:14px !important;
}

.sd-hero2-bottom-icon{
    width:54px !important;
    height:54px !important;
    flex-basis:54px !important;
    font-size:25px !important;
}

.sd-hero2-bottom-item strong{
    font-size:18px !important;
    margin-bottom:5px !important;
}

.sd-hero2-bottom-item p{
    font-size:14px !important;
}

.sd-hero2-bottom-item:not(:last-child):after{
    top:22px !important;
    height:46px !important;
}

/* 모바일 보정 */
@media(max-width:1280px){
    .sd-hero2-inner{
        min-height:auto !important;
        grid-template-columns:1fr !important;
        padding:42px 30px 76px !important;
    }

    .sd-hero2-visual{
        min-height:420px !important;
    }

    .sd-hero2-character{
        width:min(430px,90%) !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 70px) !important;
        grid-template-columns:repeat(2,1fr) !important;
    }
}

@media(max-width:768px){
    .sd-hero2{
        padding:0 12px !important;
        margin:14px auto 28px !important;
    }

    .sd-hero2-inner{
        padding:28px 18px 28px !important;
        border-radius:26px !important;
    }

    .sd-hero2-title{
        font-size:36px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature-card{
        min-width:100% !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:300px !important;
    }

    .sd-hero2-character{
        width:min(300px,92%) !important;
    }

    .sd-deco-heart{
        width:50px !important;
        height:50px !important;
        font-size:24px !important;
        top:40px !important;
        right:68px !important;
    }

    .sd-deco-pin{
        width:44px !important;
        height:44px !important;
        top:92px !important;
        right:24px !important;
    }

    .sd-deco-pin:after{
        width:14px !important;
        height:14px !important;
        left:15px !important;
        top:15px !important;
    }

    .sd-deco-pill,
    .sd-deco-orbit{
        display:none !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item{
        padding:18px !important;
    }
}

/* SEARCHDOC HERO FINAL CLEAN FIX */

/* 상단 로고 왼쪽 정렬 복구 */
.ddp-header{
    height:76px !important;
    background:#fff !important;
    border-bottom:1px solid #edf1f7 !important;
}

.ddp-header-inner{
    max-width:1600px !important;
    margin:0 auto !important;
    padding:0 42px !important;
    height:76px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.ddp-logo{
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
}

.ddp-logo-img{
    width:42px !important;
    height:auto !important;
}

.ddp-logo-text{
    font-size:28px !important;
    font-weight:900 !important;
    color:#1264ff !important;
    letter-spacing:-0.06em !important;
}

/* 햄버거 메뉴 임시 숨김 */
.ddp-menu-toggle{
    display:none !important;
}

/* 히어로 전체 크기 재정리 */
.sd-hero2{
    max-width:1600px !important;
    margin:24px auto 48px !important;
    padding:0 36px !important;
}

.sd-hero2-inner{
    min-height:660px !important;
    display:grid !important;
    grid-template-columns:48% 52% !important;
    align-items:center !important;
    gap:10px !important;
    padding:58px 64px 110px !important;
    border-radius:34px !important;
    border:1px solid #dce9fb !important;
    background:
        radial-gradient(circle at 78% 32%, rgba(255,255,255,.92) 0, rgba(255,255,255,0) 36%),
        linear-gradient(135deg,#f5f9ff 0%,#edf6ff 45%,#f4f7ff 100%) !important;
    box-shadow:0 18px 48px rgba(30,85,190,.08) !important;
    overflow:hidden !important;
}

/* 왼쪽 문구 */
.sd-hero2-copy{
    position:relative !important;
    z-index:5 !important;
}

.sd-hero2-title{
    margin:0 0 24px !important;
    font-size:62px !important;
    line-height:1.12 !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    margin:0 0 30px !important;
    font-size:21px !important;
    line-height:1.7 !important;
    letter-spacing:-0.04em !important;
    color:#1b2a44 !important;
    font-weight:650 !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:900 !important;
}

/* 중간 카드 */
.sd-hero2-feature{
    display:flex !important;
    gap:18px !important;
    margin-bottom:24px !important;
}

.sd-hero2-feature-card{
    min-width:260px !important;
    height:96px !important;
    padding:0 22px !important;
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid rgba(220,231,247,.95) !important;
    box-shadow:0 12px 26px rgba(38,84,180,.08) !important;
}

/* 기존 네모/이모지 느낌 완화 */
.sd-hero2-feature-icon{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:0 !important;
    color:#fff !important;
}

.sd-hero2-feature-icon.sd-blue{
    background:linear-gradient(180deg,#6fb0ff,#1764ff) !important;
    box-shadow:0 10px 20px rgba(23,100,255,.18) !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓";
    font-size:28px;
    font-weight:900;
}

.sd-hero2-feature-icon.sd-pink{
    background:linear-gradient(180deg,#ff9cc6,#ff4f8f) !important;
    box-shadow:0 10px 20px rgba(255,79,143,.18) !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥";
    font-size:28px;
    font-weight:900;
}

.sd-hero2-feature-card strong{
    display:block !important;
    font-size:20px !important;
    line-height:1.35 !important;
    font-weight:950 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

.sd-hero2-feature-card div > span{
    display:block !important;
    font-size:19px !important;
    line-height:1.35 !important;
    font-weight:850 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

/* 진료과 버튼 */
.sd-hero2-depts{
    display:flex !important;
    gap:14px !important;
    flex-wrap:wrap !important;
}

.sd-hero2-dept{
    min-width:136px !important;
    height:58px !important;
    padding:0 20px !important;
    border-radius:17px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:9px !important;
    background:#fff !important;
    border:1px solid #d9e5f7 !important;
    box-shadow:0 8px 18px rgba(38,84,180,.07) !important;
    color:#17223a !important;
    font-size:18px !important;
    font-weight:850 !important;
    letter-spacing:-0.04em !important;
    text-decoration:none !important;
}

.sd-hero2-dept span{
    font-size:14px !important;
    color:#1764ff !important;
}

/* 캐릭터 영역 */
.sd-hero2-visual{
    min-height:560px !important;
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:2 !important;
}

.sd-hero2-character{
    width:min(610px,92%) !important;
    max-height:610px !important;
    object-fit:contain !important;
    position:relative !important;
    z-index:5 !important;
    transform:translate(8px,8px) !important;
    filter:drop-shadow(0 20px 30px rgba(25,84,190,.12)) !important;
}

/* 장식 너무 유치하게 보이는 것 최소화 */
.sd-deco{
    position:absolute !important;
    pointer-events:none !important;
    z-index:2 !important;
}

/* 구름 */
.sd-deco-cloud{
    top:52px !important;
    left:150px !important;
    width:110px !important;
    height:46px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.88) !important;
    box-shadow:0 10px 22px rgba(65,113,190,.06) !important;
}

.sd-deco-cloud:before{
    width:50px !important;
    height:50px !important;
    left:16px !important;
    top:-20px !important;
}

.sd-deco-cloud:after{
    width:58px !important;
    height:58px !important;
    right:12px !important;
    top:-26px !important;
}

/* 별 */
.sd-star1{
    top:150px !important;
    left:70px !important;
    font-size:26px !important;
    color:#a8c2ff !important;
}

.sd-star2{
    top:205px !important;
    left:128px !important;
    font-size:20px !important;
    color:#b9cdfc !important;
}

/* 하트는 작은 동그라미로 */
.sd-deco-heart{
    top:92px !important;
    right:240px !important;
    width:70px !important;
    height:70px !important;
    border-radius:50% !important;
    background:linear-gradient(145deg,#ffb4d0,#ff4f8f) !important;
    color:#fff !important;
    font-size:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 14px 24px rgba(255,76,139,.18) !important;
    transform:rotate(8deg) !important;
}

.sd-deco-heart:before{
    content:"♥";
    font-size:34px;
    line-height:1;
}

/* 핀은 너무 튀어서 동그란 위치 아이콘 느낌 */
.sd-deco-pin{
    top:130px !important;
    right:76px !important;
    width:66px !important;
    height:66px !important;
    border-radius:50% !important;
    background:linear-gradient(180deg,#69a9ff,#1764ff) !important;
    transform:none !important;
    box-shadow:0 14px 24px rgba(23,100,255,.16) !important;
}

.sd-deco-pin:before{
    content:"";
    position:absolute;
    left:22px;
    top:18px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#eef6ff;
}

.sd-deco-pin:after{
    content:"";
    position:absolute;
    left:29px !important;
    top:39px !important;
    width:8px !important;
    height:16px !important;
    border-radius:0 0 8px 8px !important;
    background:#eef6ff !important;
}

/* 알약 */
.sd-deco-pill{
    right:200px !important;
    bottom:78px !important;
    width:62px !important;
    height:28px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#fff 0 48%,#ff5578 49% 100%) !important;
    transform:rotate(-28deg) !important;
    opacity:.9 !important;
    box-shadow:0 10px 18px rgba(255,85,120,.14) !important;
}

/* 궤도선 */
.sd-deco-orbit{
    right:10px !important;
    bottom:125px !important;
    width:560px !important;
    height:260px !important;
    border:2px solid rgba(255,255,255,.72) !important;
    border-left-color:transparent !important;
    border-bottom-color:transparent !important;
    border-radius:50% !important;
    transform:rotate(-16deg) !important;
    opacity:.75 !important;
    z-index:1 !important;
}

/* 하단 정보바 */
.sd-hero2-bottom{
    width:calc(100% - 150px) !important;
    margin:-80px auto 0 !important;
    grid-template-columns:repeat(4,1fr) !important;
    border-radius:25px !important;
    background:rgba(255,255,255,.90) !important;
    border:1px solid rgba(220,232,248,.95) !important;
    box-shadow:0 16px 34px rgba(32,82,180,.08) !important;
}

.sd-hero2-bottom-item{
    padding:24px 28px !important;
    gap:16px !important;
}

.sd-hero2-bottom-icon{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    font-size:25px !important;
    background:linear-gradient(180deg,#eef6ff,#f9fcff) !important;
    border-radius:50% !important;
}

.sd-hero2-bottom-item strong{
    font-size:19px !important;
    margin-bottom:6px !important;
}

.sd-hero2-bottom-item p{
    font-size:14px !important;
}

.sd-hero2-bottom-item:not(:last-child):after{
    top:24px !important;
    height:50px !important;
}

/* 모바일 */
@media(max-width:1280px){
    .ddp-header-inner{
        padding:0 24px !important;
    }

    .sd-hero2-inner{
        grid-template-columns:1fr !important;
        padding:44px 34px 80px !important;
    }

    .sd-hero2-title{
        font-size:52px !important;
    }

    .sd-hero2-visual{
        min-height:430px !important;
    }

    .sd-hero2-character{
        width:min(460px,90%) !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 70px) !important;
        grid-template-columns:repeat(2,1fr) !important;
        margin:-56px auto 0 !important;
    }
}

@media(max-width:768px){
    .ddp-header{
        height:64px !important;
    }

    .ddp-header-inner{
        height:64px !important;
        padding:0 16px !important;
    }

    .ddp-logo-img{
        width:34px !important;
    }

    .ddp-logo-text{
        font-size:23px !important;
    }

    .sd-hero2{
        padding:0 12px !important;
        margin:14px auto 28px !important;
    }

    .sd-hero2-inner{
        border-radius:26px !important;
        padding:28px 18px 26px !important;
    }

    .sd-hero2-title{
        font-size:36px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:320px !important;
    }

    .sd-hero2-character{
        width:min(320px,92%) !important;
        transform:none !important;
    }

    .sd-deco-orbit,
    .sd-deco-pill,
    .sd-deco-cloud{
        display:none !important;
    }

    .sd-deco-heart{
        width:48px !important;
        height:48px !important;
        top:34px !important;
        right:64px !important;
    }

    .sd-deco-heart:before{
        font-size:24px !important;
    }

    .sd-deco-pin{
        width:46px !important;
        height:46px !important;
        top:82px !important;
        right:18px !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item{
        padding:18px !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}

/* SEARCHDOC HERO FINAL CLEAN FIX */

/* 상단 로고 왼쪽 정렬 복구 */
.ddp-header{
    height:76px !important;
    background:#fff !important;
    border-bottom:1px solid #edf1f7 !important;
}

.ddp-header-inner{
    max-width:1600px !important;
    margin:0 auto !important;
    padding:0 42px !important;
    height:76px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.ddp-logo{
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
}

.ddp-logo-img{
    width:42px !important;
    height:auto !important;
}

.ddp-logo-text{
    font-size:28px !important;
    font-weight:900 !important;
    color:#1264ff !important;
    letter-spacing:-0.06em !important;
}

/* 햄버거 메뉴 임시 숨김 */
.ddp-menu-toggle{
    display:none !important;
}

/* 히어로 전체 크기 재정리 */
.sd-hero2{
    max-width:1600px !important;
    margin:24px auto 48px !important;
    padding:0 36px !important;
}

.sd-hero2-inner{
    min-height:660px !important;
    display:grid !important;
    grid-template-columns:48% 52% !important;
    align-items:center !important;
    gap:10px !important;
    padding:58px 64px 110px !important;
    border-radius:34px !important;
    border:1px solid #dce9fb !important;
    background:
        radial-gradient(circle at 78% 32%, rgba(255,255,255,.92) 0, rgba(255,255,255,0) 36%),
        linear-gradient(135deg,#f5f9ff 0%,#edf6ff 45%,#f4f7ff 100%) !important;
    box-shadow:0 18px 48px rgba(30,85,190,.08) !important;
    overflow:hidden !important;
}

/* 왼쪽 문구 */
.sd-hero2-copy{
    position:relative !important;
    z-index:5 !important;
}

.sd-hero2-title{
    margin:0 0 24px !important;
    font-size:62px !important;
    line-height:1.12 !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    margin:0 0 30px !important;
    font-size:21px !important;
    line-height:1.7 !important;
    letter-spacing:-0.04em !important;
    color:#1b2a44 !important;
    font-weight:650 !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:900 !important;
}

/* 중간 카드 */
.sd-hero2-feature{
    display:flex !important;
    gap:18px !important;
    margin-bottom:24px !important;
}

.sd-hero2-feature-card{
    min-width:260px !important;
    height:96px !important;
    padding:0 22px !important;
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid rgba(220,231,247,.95) !important;
    box-shadow:0 12px 26px rgba(38,84,180,.08) !important;
}

/* 기존 네모/이모지 느낌 완화 */
.sd-hero2-feature-icon{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:0 !important;
    color:#fff !important;
}

.sd-hero2-feature-icon.sd-blue{
    background:linear-gradient(180deg,#6fb0ff,#1764ff) !important;
    box-shadow:0 10px 20px rgba(23,100,255,.18) !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓";
    font-size:28px;
    font-weight:900;
}

.sd-hero2-feature-icon.sd-pink{
    background:linear-gradient(180deg,#ff9cc6,#ff4f8f) !important;
    box-shadow:0 10px 20px rgba(255,79,143,.18) !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥";
    font-size:28px;
    font-weight:900;
}

.sd-hero2-feature-card strong{
    display:block !important;
    font-size:20px !important;
    line-height:1.35 !important;
    font-weight:950 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

.sd-hero2-feature-card div > span{
    display:block !important;
    font-size:19px !important;
    line-height:1.35 !important;
    font-weight:850 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

/* 진료과 버튼 */
.sd-hero2-depts{
    display:flex !important;
    gap:14px !important;
    flex-wrap:wrap !important;
}

.sd-hero2-dept{
    min-width:136px !important;
    height:58px !important;
    padding:0 20px !important;
    border-radius:17px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:9px !important;
    background:#fff !important;
    border:1px solid #d9e5f7 !important;
    box-shadow:0 8px 18px rgba(38,84,180,.07) !important;
    color:#17223a !important;
    font-size:18px !important;
    font-weight:850 !important;
    letter-spacing:-0.04em !important;
    text-decoration:none !important;
}

.sd-hero2-dept span{
    font-size:14px !important;
    color:#1764ff !important;
}

/* 캐릭터 영역 */
.sd-hero2-visual{
    min-height:560px !important;
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:2 !important;
}

.sd-hero2-character{
    width:min(610px,92%) !important;
    max-height:610px !important;
    object-fit:contain !important;
    position:relative !important;
    z-index:5 !important;
    transform:translate(8px,8px) !important;
    filter:drop-shadow(0 20px 30px rgba(25,84,190,.12)) !important;
}

/* 장식 너무 유치하게 보이는 것 최소화 */
.sd-deco{
    position:absolute !important;
    pointer-events:none !important;
    z-index:2 !important;
}

/* 구름 */
.sd-deco-cloud{
    top:52px !important;
    left:150px !important;
    width:110px !important;
    height:46px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.88) !important;
    box-shadow:0 10px 22px rgba(65,113,190,.06) !important;
}

.sd-deco-cloud:before{
    width:50px !important;
    height:50px !important;
    left:16px !important;
    top:-20px !important;
}

.sd-deco-cloud:after{
    width:58px !important;
    height:58px !important;
    right:12px !important;
    top:-26px !important;
}

/* 별 */
.sd-star1{
    top:150px !important;
    left:70px !important;
    font-size:26px !important;
    color:#a8c2ff !important;
}

.sd-star2{
    top:205px !important;
    left:128px !important;
    font-size:20px !important;
    color:#b9cdfc !important;
}

/* 하트는 작은 동그라미로 */
.sd-deco-heart{
    top:92px !important;
    right:240px !important;
    width:70px !important;
    height:70px !important;
    border-radius:50% !important;
    background:linear-gradient(145deg,#ffb4d0,#ff4f8f) !important;
    color:#fff !important;
    font-size:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 14px 24px rgba(255,76,139,.18) !important;
    transform:rotate(8deg) !important;
}

.sd-deco-heart:before{
    content:"♥";
    font-size:34px;
    line-height:1;
}

/* 핀은 너무 튀어서 동그란 위치 아이콘 느낌 */
.sd-deco-pin{
    top:130px !important;
    right:76px !important;
    width:66px !important;
    height:66px !important;
    border-radius:50% !important;
    background:linear-gradient(180deg,#69a9ff,#1764ff) !important;
    transform:none !important;
    box-shadow:0 14px 24px rgba(23,100,255,.16) !important;
}

.sd-deco-pin:before{
    content:"";
    position:absolute;
    left:22px;
    top:18px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#eef6ff;
}

.sd-deco-pin:after{
    content:"";
    position:absolute;
    left:29px !important;
    top:39px !important;
    width:8px !important;
    height:16px !important;
    border-radius:0 0 8px 8px !important;
    background:#eef6ff !important;
}

/* 알약 */
.sd-deco-pill{
    right:200px !important;
    bottom:78px !important;
    width:62px !important;
    height:28px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#fff 0 48%,#ff5578 49% 100%) !important;
    transform:rotate(-28deg) !important;
    opacity:.9 !important;
    box-shadow:0 10px 18px rgba(255,85,120,.14) !important;
}

/* 궤도선 */
.sd-deco-orbit{
    right:10px !important;
    bottom:125px !important;
    width:560px !important;
    height:260px !important;
    border:2px solid rgba(255,255,255,.72) !important;
    border-left-color:transparent !important;
    border-bottom-color:transparent !important;
    border-radius:50% !important;
    transform:rotate(-16deg) !important;
    opacity:.75 !important;
    z-index:1 !important;
}

/* 하단 정보바 */
.sd-hero2-bottom{
    width:calc(100% - 150px) !important;
    margin:-80px auto 0 !important;
    grid-template-columns:repeat(4,1fr) !important;
    border-radius:25px !important;
    background:rgba(255,255,255,.90) !important;
    border:1px solid rgba(220,232,248,.95) !important;
    box-shadow:0 16px 34px rgba(32,82,180,.08) !important;
}

.sd-hero2-bottom-item{
    padding:24px 28px !important;
    gap:16px !important;
}

.sd-hero2-bottom-icon{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    font-size:25px !important;
    background:linear-gradient(180deg,#eef6ff,#f9fcff) !important;
    border-radius:50% !important;
}

.sd-hero2-bottom-item strong{
    font-size:19px !important;
    margin-bottom:6px !important;
}

.sd-hero2-bottom-item p{
    font-size:14px !important;
}

.sd-hero2-bottom-item:not(:last-child):after{
    top:24px !important;
    height:50px !important;
}

/* 모바일 */
@media(max-width:1280px){
    .ddp-header-inner{
        padding:0 24px !important;
    }

    .sd-hero2-inner{
        grid-template-columns:1fr !important;
        padding:44px 34px 80px !important;
    }

    .sd-hero2-title{
        font-size:52px !important;
    }

    .sd-hero2-visual{
        min-height:430px !important;
    }

    .sd-hero2-character{
        width:min(460px,90%) !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 70px) !important;
        grid-template-columns:repeat(2,1fr) !important;
        margin:-56px auto 0 !important;
    }
}

@media(max-width:768px){
    .ddp-header{
        height:64px !important;
    }

    .ddp-header-inner{
        height:64px !important;
        padding:0 16px !important;
    }

    .ddp-logo-img{
        width:34px !important;
    }

    .ddp-logo-text{
        font-size:23px !important;
    }

    .sd-hero2{
        padding:0 12px !important;
        margin:14px auto 28px !important;
    }

    .sd-hero2-inner{
        border-radius:26px !important;
        padding:28px 18px 26px !important;
    }

    .sd-hero2-title{
        font-size:36px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:320px !important;
    }

    .sd-hero2-character{
        width:min(320px,92%) !important;
        transform:none !important;
    }

    .sd-deco-orbit,
    .sd-deco-pill,
    .sd-deco-cloud{
        display:none !important;
    }

    .sd-deco-heart{
        width:48px !important;
        height:48px !important;
        top:34px !important;
        right:64px !important;
    }

    .sd-deco-heart:before{
        font-size:24px !important;
    }

    .sd-deco-pin{
        width:46px !important;
        height:46px !important;
        top:82px !important;
        right:18px !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item{
        padding:18px !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}

/* SEARCHDOC HERO FINAL CLEAN FIX */

/* 상단 로고 왼쪽 정렬 복구 */
.ddp-header{
    height:76px !important;
    background:#fff !important;
    border-bottom:1px solid #edf1f7 !important;
}

.ddp-header-inner{
    max-width:1600px !important;
    margin:0 auto !important;
    padding:0 42px !important;
    height:76px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.ddp-logo{
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
}

.ddp-logo-img{
    width:42px !important;
    height:auto !important;
}

.ddp-logo-text{
    font-size:28px !important;
    font-weight:900 !important;
    color:#1264ff !important;
    letter-spacing:-0.06em !important;
}

/* 햄버거 메뉴 임시 숨김 */
.ddp-menu-toggle{
    display:none !important;
}

/* 히어로 전체 크기 재정리 */
.sd-hero2{
    max-width:1600px !important;
    margin:24px auto 48px !important;
    padding:0 36px !important;
}

.sd-hero2-inner{
    min-height:660px !important;
    display:grid !important;
    grid-template-columns:48% 52% !important;
    align-items:center !important;
    gap:10px !important;
    padding:58px 64px 110px !important;
    border-radius:34px !important;
    border:1px solid #dce9fb !important;
    background:
        radial-gradient(circle at 78% 32%, rgba(255,255,255,.92) 0, rgba(255,255,255,0) 36%),
        linear-gradient(135deg,#f5f9ff 0%,#edf6ff 45%,#f4f7ff 100%) !important;
    box-shadow:0 18px 48px rgba(30,85,190,.08) !important;
    overflow:hidden !important;
}

/* 왼쪽 문구 */
.sd-hero2-copy{
    position:relative !important;
    z-index:5 !important;
}

.sd-hero2-title{
    margin:0 0 24px !important;
    font-size:62px !important;
    line-height:1.12 !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    margin:0 0 30px !important;
    font-size:21px !important;
    line-height:1.7 !important;
    letter-spacing:-0.04em !important;
    color:#1b2a44 !important;
    font-weight:650 !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:900 !important;
}

/* 중간 카드 */
.sd-hero2-feature{
    display:flex !important;
    gap:18px !important;
    margin-bottom:24px !important;
}

.sd-hero2-feature-card{
    min-width:260px !important;
    height:96px !important;
    padding:0 22px !important;
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid rgba(220,231,247,.95) !important;
    box-shadow:0 12px 26px rgba(38,84,180,.08) !important;
}

/* 기존 네모/이모지 느낌 완화 */
.sd-hero2-feature-icon{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:0 !important;
    color:#fff !important;
}

.sd-hero2-feature-icon.sd-blue{
    background:linear-gradient(180deg,#6fb0ff,#1764ff) !important;
    box-shadow:0 10px 20px rgba(23,100,255,.18) !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓";
    font-size:28px;
    font-weight:900;
}

.sd-hero2-feature-icon.sd-pink{
    background:linear-gradient(180deg,#ff9cc6,#ff4f8f) !important;
    box-shadow:0 10px 20px rgba(255,79,143,.18) !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥";
    font-size:28px;
    font-weight:900;
}

.sd-hero2-feature-card strong{
    display:block !important;
    font-size:20px !important;
    line-height:1.35 !important;
    font-weight:950 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

.sd-hero2-feature-card div > span{
    display:block !important;
    font-size:19px !important;
    line-height:1.35 !important;
    font-weight:850 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

/* 진료과 버튼 */
.sd-hero2-depts{
    display:flex !important;
    gap:14px !important;
    flex-wrap:wrap !important;
}

.sd-hero2-dept{
    min-width:136px !important;
    height:58px !important;
    padding:0 20px !important;
    border-radius:17px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:9px !important;
    background:#fff !important;
    border:1px solid #d9e5f7 !important;
    box-shadow:0 8px 18px rgba(38,84,180,.07) !important;
    color:#17223a !important;
    font-size:18px !important;
    font-weight:850 !important;
    letter-spacing:-0.04em !important;
    text-decoration:none !important;
}

.sd-hero2-dept span{
    font-size:14px !important;
    color:#1764ff !important;
}

/* 캐릭터 영역 */
.sd-hero2-visual{
    min-height:560px !important;
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:2 !important;
}

.sd-hero2-character{
    width:min(610px,92%) !important;
    max-height:610px !important;
    object-fit:contain !important;
    position:relative !important;
    z-index:5 !important;
    transform:translate(8px,8px) !important;
    filter:drop-shadow(0 20px 30px rgba(25,84,190,.12)) !important;
}

/* 장식 너무 유치하게 보이는 것 최소화 */
.sd-deco{
    position:absolute !important;
    pointer-events:none !important;
    z-index:2 !important;
}

/* 구름 */
.sd-deco-cloud{
    top:52px !important;
    left:150px !important;
    width:110px !important;
    height:46px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.88) !important;
    box-shadow:0 10px 22px rgba(65,113,190,.06) !important;
}

.sd-deco-cloud:before{
    width:50px !important;
    height:50px !important;
    left:16px !important;
    top:-20px !important;
}

.sd-deco-cloud:after{
    width:58px !important;
    height:58px !important;
    right:12px !important;
    top:-26px !important;
}

/* 별 */
.sd-star1{
    top:150px !important;
    left:70px !important;
    font-size:26px !important;
    color:#a8c2ff !important;
}

.sd-star2{
    top:205px !important;
    left:128px !important;
    font-size:20px !important;
    color:#b9cdfc !important;
}

/* 하트는 작은 동그라미로 */
.sd-deco-heart{
    top:92px !important;
    right:240px !important;
    width:70px !important;
    height:70px !important;
    border-radius:50% !important;
    background:linear-gradient(145deg,#ffb4d0,#ff4f8f) !important;
    color:#fff !important;
    font-size:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 14px 24px rgba(255,76,139,.18) !important;
    transform:rotate(8deg) !important;
}

.sd-deco-heart:before{
    content:"♥";
    font-size:34px;
    line-height:1;
}

/* 핀은 너무 튀어서 동그란 위치 아이콘 느낌 */
.sd-deco-pin{
    top:130px !important;
    right:76px !important;
    width:66px !important;
    height:66px !important;
    border-radius:50% !important;
    background:linear-gradient(180deg,#69a9ff,#1764ff) !important;
    transform:none !important;
    box-shadow:0 14px 24px rgba(23,100,255,.16) !important;
}

.sd-deco-pin:before{
    content:"";
    position:absolute;
    left:22px;
    top:18px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#eef6ff;
}

.sd-deco-pin:after{
    content:"";
    position:absolute;
    left:29px !important;
    top:39px !important;
    width:8px !important;
    height:16px !important;
    border-radius:0 0 8px 8px !important;
    background:#eef6ff !important;
}

/* 알약 */
.sd-deco-pill{
    right:200px !important;
    bottom:78px !important;
    width:62px !important;
    height:28px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#fff 0 48%,#ff5578 49% 100%) !important;
    transform:rotate(-28deg) !important;
    opacity:.9 !important;
    box-shadow:0 10px 18px rgba(255,85,120,.14) !important;
}

/* 궤도선 */
.sd-deco-orbit{
    right:10px !important;
    bottom:125px !important;
    width:560px !important;
    height:260px !important;
    border:2px solid rgba(255,255,255,.72) !important;
    border-left-color:transparent !important;
    border-bottom-color:transparent !important;
    border-radius:50% !important;
    transform:rotate(-16deg) !important;
    opacity:.75 !important;
    z-index:1 !important;
}

/* 하단 정보바 */
.sd-hero2-bottom{
    width:calc(100% - 150px) !important;
    margin:-80px auto 0 !important;
    grid-template-columns:repeat(4,1fr) !important;
    border-radius:25px !important;
    background:rgba(255,255,255,.90) !important;
    border:1px solid rgba(220,232,248,.95) !important;
    box-shadow:0 16px 34px rgba(32,82,180,.08) !important;
}

.sd-hero2-bottom-item{
    padding:24px 28px !important;
    gap:16px !important;
}

.sd-hero2-bottom-icon{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    font-size:25px !important;
    background:linear-gradient(180deg,#eef6ff,#f9fcff) !important;
    border-radius:50% !important;
}

.sd-hero2-bottom-item strong{
    font-size:19px !important;
    margin-bottom:6px !important;
}

.sd-hero2-bottom-item p{
    font-size:14px !important;
}

.sd-hero2-bottom-item:not(:last-child):after{
    top:24px !important;
    height:50px !important;
}

/* 모바일 */
@media(max-width:1280px){
    .ddp-header-inner{
        padding:0 24px !important;
    }

    .sd-hero2-inner{
        grid-template-columns:1fr !important;
        padding:44px 34px 80px !important;
    }

    .sd-hero2-title{
        font-size:52px !important;
    }

    .sd-hero2-visual{
        min-height:430px !important;
    }

    .sd-hero2-character{
        width:min(460px,90%) !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 70px) !important;
        grid-template-columns:repeat(2,1fr) !important;
        margin:-56px auto 0 !important;
    }
}

@media(max-width:768px){
    .ddp-header{
        height:64px !important;
    }

    .ddp-header-inner{
        height:64px !important;
        padding:0 16px !important;
    }

    .ddp-logo-img{
        width:34px !important;
    }

    .ddp-logo-text{
        font-size:23px !important;
    }

    .sd-hero2{
        padding:0 12px !important;
        margin:14px auto 28px !important;
    }

    .sd-hero2-inner{
        border-radius:26px !important;
        padding:28px 18px 26px !important;
    }

    .sd-hero2-title{
        font-size:36px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:320px !important;
    }

    .sd-hero2-character{
        width:min(320px,92%) !important;
        transform:none !important;
    }

    .sd-deco-orbit,
    .sd-deco-pill,
    .sd-deco-cloud{
        display:none !important;
    }

    .sd-deco-heart{
        width:48px !important;
        height:48px !important;
        top:34px !important;
        right:64px !important;
    }

    .sd-deco-heart:before{
        font-size:24px !important;
    }

    .sd-deco-pin{
        width:46px !important;
        height:46px !important;
        top:82px !important;
        right:18px !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item{
        padding:18px !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}

/* SEARCHDOC HERO REAL FIX - logo visible + hero balanced */

/* 상단 로고 영역 다시 크게 */
.ddp-header{
    height:92px !important;
    background:#fff !important;
    border-bottom:1px solid #eef2f7 !important;
}

.ddp-header-inner{
    max-width:1540px !important;
    width:100% !important;
    height:92px !important;
    margin:0 auto !important;
    padding:0 36px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.ddp-logo{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    margin:0 !important;
    transform:none !important;
    text-decoration:none !important;
}

.ddp-logo-img{
    width:52px !important;
    max-width:52px !important;
    height:auto !important;
    display:block !important;
    object-fit:contain !important;
}

.ddp-logo-text{
    display:inline-block !important;
    font-size:34px !important;
    line-height:1 !important;
    font-weight:950 !important;
    color:#1764ff !important;
    letter-spacing:-0.07em !important;
}

.ddp-menu-toggle{
    display:none !important;
}

/* 히어로를 더 넓고 시원하게 */
.sd-hero2{
    max-width:1720px !important;
    margin:26px auto 58px !important;
    padding:0 36px !important;
}

.sd-hero2-inner{
    min-height:720px !important;
    grid-template-columns:48% 52% !important;
    padding:64px 72px 118px !important;
    border-radius:38px !important;
    background:
        radial-gradient(circle at 78% 35%, rgba(255,255,255,.92) 0, rgba(255,255,255,0) 34%),
        linear-gradient(135deg,#f3f8ff 0%,#eaf4ff 48%,#f5f7ff 100%) !important;
    border:1px solid #dbe8fb !important;
    box-shadow:0 22px 58px rgba(30,85,190,.09) !important;
}

/* 왼쪽 글자 크기 정리 */
.sd-hero2-title{
    font-size:68px !important;
    line-height:1.1 !important;
    margin:0 0 28px !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    font-size:22px !important;
    line-height:1.72 !important;
    margin:0 0 34px !important;
    color:#17233b !important;
    font-weight:700 !important;
    letter-spacing:-0.045em !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:950 !important;
}

/* 중간 카드 크기 균형 */
.sd-hero2-feature{
    gap:18px !important;
    margin-bottom:26px !important;
}

.sd-hero2-feature-card{
    min-width:286px !important;
    height:104px !important;
    padding:0 26px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.95) !important;
    border:1px solid #dfe9f8 !important;
    box-shadow:0 14px 30px rgba(38,84,180,.09) !important;
}

.sd-hero2-feature-icon{
    width:64px !important;
    height:64px !important;
    flex:0 0 64px !important;
    border-radius:50% !important;
    font-size:0 !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓" !important;
    font-size:30px !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥" !important;
    font-size:30px !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-card strong{
    font-size:22px !important;
    line-height:1.35 !important;
}

.sd-hero2-feature-card div > span{
    font-size:21px !important;
    line-height:1.35 !important;
}

/* 진료과 버튼 */
.sd-hero2-dept{
    min-width:150px !important;
    height:62px !important;
    font-size:19px !important;
    border-radius:18px !important;
}

/* 캐릭터를 다시 크게 */
.sd-hero2-visual{
    min-height:620px !important;
    align-items:center !important;
    justify-content:center !important;
}

.sd-hero2-character{
    width:min(720px,96%) !important;
    max-height:700px !important;
    transform:translate(12px,10px) !important;
    object-fit:contain !important;
    filter:drop-shadow(0 24px 36px rgba(25,84,190,.13)) !important;
}

/* 장식은 유치하면 차라리 약하게 */
.sd-deco-cloud{
    top:48px !important;
    left:150px !important;
    opacity:.8 !important;
}

.sd-star1{
    top:158px !important;
    left:74px !important;
    opacity:.8 !important;
}

.sd-star2{
    top:220px !important;
    left:128px !important;
    opacity:.7 !important;
}

/* 하트와 핀은 캐릭터 주변에서 작게 */
.sd-deco-heart{
    top:92px !important;
    right:250px !important;
    width:72px !important;
    height:72px !important;
    border-radius:50% !important;
    font-size:0 !important;
    background:linear-gradient(145deg,#ffb3d2,#ff4f8f) !important;
    box-shadow:0 14px 26px rgba(255,76,139,.18) !important;
}

.sd-deco-heart:before{
    content:"♥" !important;
    font-size:34px !important;
    color:#fff !important;
    line-height:1 !important;
}

.sd-deco-pin{
    top:134px !important;
    right:76px !important;
    width:68px !important;
    height:68px !important;
    border-radius:50% !important;
    transform:none !important;
    background:linear-gradient(180deg,#6eafff,#1764ff) !important;
    box-shadow:0 14px 26px rgba(23,100,255,.16) !important;
}

.sd-deco-pin:before{
    content:"" !important;
    position:absolute !important;
    width:24px !important;
    height:24px !important;
    left:22px !important;
    top:20px !important;
    border-radius:50% !important;
    background:#eef6ff !important;
}

.sd-deco-pin:after{
    content:"" !important;
    position:absolute !important;
    width:8px !important;
    height:15px !important;
    left:30px !important;
    top:42px !important;
    border-radius:0 0 8px 8px !important;
    background:#eef6ff !important;
}

.sd-deco-pill{
    right:210px !important;
    bottom:78px !important;
}

.sd-deco-orbit{
    right:8px !important;
    bottom:132px !important;
    width:620px !important;
    height:290px !important;
    opacity:.68 !important;
}

/* 하단 정보바도 조금 더 넓게 */
.sd-hero2-bottom{
    width:calc(100% - 160px) !important;
    margin:-86px auto 0 !important;
    border-radius:26px !important;
}

.sd-hero2-bottom-item{
    padding:26px 30px !important;
}

.sd-hero2-bottom-icon{
    width:62px !important;
    height:62px !important;
    flex:0 0 62px !important;
}

.sd-hero2-bottom-item strong{
    font-size:20px !important;
}

.sd-hero2-bottom-item p{
    font-size:15px !important;
}

/* 반응형 */
@media(max-width:1280px){
    .ddp-header-inner{
        padding:0 24px !important;
    }

    .sd-hero2-inner{
        grid-template-columns:1fr !important;
        padding:48px 34px 84px !important;
    }

    .sd-hero2-title{
        font-size:54px !important;
    }

    .sd-hero2-visual{
        min-height:460px !important;
    }

    .sd-hero2-character{
        width:min(520px,92%) !important;
        transform:none !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 80px) !important;
        grid-template-columns:repeat(2,1fr) !important;
        margin:-58px auto 0 !important;
    }
}

@media(max-width:768px){
    .ddp-header{
        height:68px !important;
    }

    .ddp-header-inner{
        height:68px !important;
        padding:0 16px !important;
    }

    .ddp-logo-img{
        width:38px !important;
        max-width:38px !important;
    }

    .ddp-logo-text{
        font-size:25px !important;
    }

    .sd-hero2{
        padding:0 12px !important;
        margin:16px auto 30px !important;
    }

    .sd-hero2-inner{
        border-radius:26px !important;
        padding:30px 20px 28px !important;
    }

    .sd-hero2-title{
        font-size:38px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:330px !important;
    }

    .sd-hero2-character{
        width:min(340px,94%) !important;
    }

    .sd-deco-cloud,
    .sd-deco-pill,
    .sd-deco-orbit{
        display:none !important;
    }

    .sd-deco-heart{
        width:48px !important;
        height:48px !important;
        top:34px !important;
        right:62px !important;
    }

    .sd-deco-heart:before{
        font-size:24px !important;
    }

    .sd-deco-pin{
        width:46px !important;
        height:46px !important;
        top:84px !important;
        right:20px !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}

/* SEARCHDOC HERO REAL FIX - logo visible + hero balanced */

/* 상단 로고 영역 다시 크게 */
.ddp-header{
    height:92px !important;
    background:#fff !important;
    border-bottom:1px solid #eef2f7 !important;
}

.ddp-header-inner{
    max-width:1540px !important;
    width:100% !important;
    height:92px !important;
    margin:0 auto !important;
    padding:0 36px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.ddp-logo{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    margin:0 !important;
    transform:none !important;
    text-decoration:none !important;
}

.ddp-logo-img{
    width:52px !important;
    max-width:52px !important;
    height:auto !important;
    display:block !important;
    object-fit:contain !important;
}

.ddp-logo-text{
    display:inline-block !important;
    font-size:34px !important;
    line-height:1 !important;
    font-weight:950 !important;
    color:#1764ff !important;
    letter-spacing:-0.07em !important;
}

.ddp-menu-toggle{
    display:none !important;
}

/* 히어로를 더 넓고 시원하게 */
.sd-hero2{
    max-width:1720px !important;
    margin:26px auto 58px !important;
    padding:0 36px !important;
}

.sd-hero2-inner{
    min-height:720px !important;
    grid-template-columns:48% 52% !important;
    padding:64px 72px 118px !important;
    border-radius:38px !important;
    background:
        radial-gradient(circle at 78% 35%, rgba(255,255,255,.92) 0, rgba(255,255,255,0) 34%),
        linear-gradient(135deg,#f3f8ff 0%,#eaf4ff 48%,#f5f7ff 100%) !important;
    border:1px solid #dbe8fb !important;
    box-shadow:0 22px 58px rgba(30,85,190,.09) !important;
}

/* 왼쪽 글자 크기 정리 */
.sd-hero2-title{
    font-size:68px !important;
    line-height:1.1 !important;
    margin:0 0 28px !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    font-size:22px !important;
    line-height:1.72 !important;
    margin:0 0 34px !important;
    color:#17233b !important;
    font-weight:700 !important;
    letter-spacing:-0.045em !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:950 !important;
}

/* 중간 카드 크기 균형 */
.sd-hero2-feature{
    gap:18px !important;
    margin-bottom:26px !important;
}

.sd-hero2-feature-card{
    min-width:286px !important;
    height:104px !important;
    padding:0 26px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.95) !important;
    border:1px solid #dfe9f8 !important;
    box-shadow:0 14px 30px rgba(38,84,180,.09) !important;
}

.sd-hero2-feature-icon{
    width:64px !important;
    height:64px !important;
    flex:0 0 64px !important;
    border-radius:50% !important;
    font-size:0 !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓" !important;
    font-size:30px !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥" !important;
    font-size:30px !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-card strong{
    font-size:22px !important;
    line-height:1.35 !important;
}

.sd-hero2-feature-card div > span{
    font-size:21px !important;
    line-height:1.35 !important;
}

/* 진료과 버튼 */
.sd-hero2-dept{
    min-width:150px !important;
    height:62px !important;
    font-size:19px !important;
    border-radius:18px !important;
}

/* 캐릭터를 다시 크게 */
.sd-hero2-visual{
    min-height:620px !important;
    align-items:center !important;
    justify-content:center !important;
}

.sd-hero2-character{
    width:min(720px,96%) !important;
    max-height:700px !important;
    transform:translate(12px,10px) !important;
    object-fit:contain !important;
    filter:drop-shadow(0 24px 36px rgba(25,84,190,.13)) !important;
}

/* 장식은 유치하면 차라리 약하게 */
.sd-deco-cloud{
    top:48px !important;
    left:150px !important;
    opacity:.8 !important;
}

.sd-star1{
    top:158px !important;
    left:74px !important;
    opacity:.8 !important;
}

.sd-star2{
    top:220px !important;
    left:128px !important;
    opacity:.7 !important;
}

/* 하트와 핀은 캐릭터 주변에서 작게 */
.sd-deco-heart{
    top:92px !important;
    right:250px !important;
    width:72px !important;
    height:72px !important;
    border-radius:50% !important;
    font-size:0 !important;
    background:linear-gradient(145deg,#ffb3d2,#ff4f8f) !important;
    box-shadow:0 14px 26px rgba(255,76,139,.18) !important;
}

.sd-deco-heart:before{
    content:"♥" !important;
    font-size:34px !important;
    color:#fff !important;
    line-height:1 !important;
}

.sd-deco-pin{
    top:134px !important;
    right:76px !important;
    width:68px !important;
    height:68px !important;
    border-radius:50% !important;
    transform:none !important;
    background:linear-gradient(180deg,#6eafff,#1764ff) !important;
    box-shadow:0 14px 26px rgba(23,100,255,.16) !important;
}

.sd-deco-pin:before{
    content:"" !important;
    position:absolute !important;
    width:24px !important;
    height:24px !important;
    left:22px !important;
    top:20px !important;
    border-radius:50% !important;
    background:#eef6ff !important;
}

.sd-deco-pin:after{
    content:"" !important;
    position:absolute !important;
    width:8px !important;
    height:15px !important;
    left:30px !important;
    top:42px !important;
    border-radius:0 0 8px 8px !important;
    background:#eef6ff !important;
}

.sd-deco-pill{
    right:210px !important;
    bottom:78px !important;
}

.sd-deco-orbit{
    right:8px !important;
    bottom:132px !important;
    width:620px !important;
    height:290px !important;
    opacity:.68 !important;
}

/* 하단 정보바도 조금 더 넓게 */
.sd-hero2-bottom{
    width:calc(100% - 160px) !important;
    margin:-86px auto 0 !important;
    border-radius:26px !important;
}

.sd-hero2-bottom-item{
    padding:26px 30px !important;
}

.sd-hero2-bottom-icon{
    width:62px !important;
    height:62px !important;
    flex:0 0 62px !important;
}

.sd-hero2-bottom-item strong{
    font-size:20px !important;
}

.sd-hero2-bottom-item p{
    font-size:15px !important;
}

/* 반응형 */
@media(max-width:1280px){
    .ddp-header-inner{
        padding:0 24px !important;
    }

    .sd-hero2-inner{
        grid-template-columns:1fr !important;
        padding:48px 34px 84px !important;
    }

    .sd-hero2-title{
        font-size:54px !important;
    }

    .sd-hero2-visual{
        min-height:460px !important;
    }

    .sd-hero2-character{
        width:min(520px,92%) !important;
        transform:none !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 80px) !important;
        grid-template-columns:repeat(2,1fr) !important;
        margin:-58px auto 0 !important;
    }
}

@media(max-width:768px){
    .ddp-header{
        height:68px !important;
    }

    .ddp-header-inner{
        height:68px !important;
        padding:0 16px !important;
    }

    .ddp-logo-img{
        width:38px !important;
        max-width:38px !important;
    }

    .ddp-logo-text{
        font-size:25px !important;
    }

    .sd-hero2{
        padding:0 12px !important;
        margin:16px auto 30px !important;
    }

    .sd-hero2-inner{
        border-radius:26px !important;
        padding:30px 20px 28px !important;
    }

    .sd-hero2-title{
        font-size:38px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:330px !important;
    }

    .sd-hero2-character{
        width:min(340px,94%) !important;
    }

    .sd-deco-cloud,
    .sd-deco-pill,
    .sd-deco-orbit{
        display:none !important;
    }

    .sd-deco-heart{
        width:48px !important;
        height:48px !important;
        top:34px !important;
        right:62px !important;
    }

    .sd-deco-heart:before{
        font-size:24px !important;
    }

    .sd-deco-pin{
        width:46px !important;
        height:46px !important;
        top:84px !important;
        right:20px !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}

/* SEARCHDOC HERO REAL CLEAN FINAL */

/* 헤더: 로고 왼쪽 고정 */
.ddp-header{
    height:86px !important;
    background:#fff !important;
    border-bottom:1px solid #edf1f7 !important;
}

.ddp-header-inner{
    max-width:none !important;
    width:100% !important;
    height:86px !important;
    margin:0 !important;
    padding:0 0 0 56px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

/* 로고는 이미지 하나만 사용 */
.ddp-logo{
    display:flex !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 !important;
    text-decoration:none !important;
}

/* /files/ddoksun_logo.png 자체가 서치닥 로고라면 이 크기로 */
.ddp-logo-img{
    display:block !important;
    width:148px !important;
    max-width:148px !important;
    height:auto !important;
    object-fit:contain !important;
}

/* 중복 텍스트 제거 */
.ddp-logo-text{
    display:none !important;
}

.ddp-menu-toggle{
    display:none !important;
}

/* 메인 히어로: 더 넓게 */
.sd-hero2{
    max-width:1740px !important;
    margin:24px auto 60px !important;
    padding:0 42px !important;
}

/* 히어로 박스 크기 재조정 */
.sd-hero2-inner{
    min-height:720px !important;
    grid-template-columns:47% 53% !important;
    align-items:center !important;
    padding:64px 74px 118px !important;
    border-radius:38px !important;
    background:
        radial-gradient(circle at 78% 40%, rgba(255,255,255,.95) 0, rgba(255,255,255,0) 35%),
        linear-gradient(135deg,#f3f8ff 0%,#eaf4ff 48%,#f4f7ff 100%) !important;
    border:1px solid #dbe8fb !important;
    box-shadow:0 22px 58px rgba(30,85,190,.09) !important;
    overflow:hidden !important;
}

/* 왼쪽 텍스트 */
.sd-hero2-title{
    font-size:70px !important;
    line-height:1.08 !important;
    margin:0 0 28px !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    font-size:22px !important;
    line-height:1.72 !important;
    margin:0 0 34px !important;
    color:#17233b !important;
    font-weight:700 !important;
    letter-spacing:-0.045em !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:950 !important;
}

/* 중간 카드 */
.sd-hero2-feature{
    display:flex !important;
    gap:18px !important;
    margin-bottom:26px !important;
}

.sd-hero2-feature-card{
    min-width:286px !important;
    height:104px !important;
    padding:0 26px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.96) !important;
    border:1px solid #dfe9f8 !important;
    box-shadow:0 14px 30px rgba(38,84,180,.09) !important;
}

.sd-hero2-feature-icon{
    width:64px !important;
    height:64px !important;
    flex:0 0 64px !important;
    border-radius:50% !important;
    font-size:0 !important;
}

.sd-hero2-feature-icon.sd-blue{
    background:linear-gradient(180deg,#6fb0ff,#1764ff) !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓" !important;
    font-size:30px !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-icon.sd-pink{
    background:linear-gradient(180deg,#ff9cc6,#ff4f8f) !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥" !important;
    font-size:30px !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-card strong{
    font-size:22px !important;
    line-height:1.35 !important;
}

.sd-hero2-feature-card div > span{
    font-size:21px !important;
    line-height:1.35 !important;
}

/* 진료과 버튼 */
.sd-hero2-dept{
    min-width:150px !important;
    height:62px !important;
    font-size:19px !important;
    border-radius:18px !important;
}

/* 캐릭터 크게 */
.sd-hero2-visual{
    min-height:620px !important;
    align-items:center !important;
    justify-content:center !important;
}

.sd-hero2-character{
    width:min(760px,100%) !important;
    max-height:720px !important;
    transform:translate(24px,8px) !important;
    object-fit:contain !important;
    filter:drop-shadow(0 24px 36px rgba(25,84,190,.13)) !important;
}

/* 장식은 일단 최소화 */
.sd-deco-cloud,
.sd-deco-heart,
.sd-deco-pin,
.sd-deco-pill,
.sd-deco-orbit,
.sd-deco-star{
    opacity:.35 !important;
}

/* 하트와 핀은 너무 튀면 숨김 */
.sd-deco-heart,
.sd-deco-pin{
    display:none !important;
}

/* 하단 정보바 */
.sd-hero2-bottom{
    width:calc(100% - 160px) !important;
    margin:-86px auto 0 !important;
    grid-template-columns:repeat(4,1fr) !important;
    border-radius:26px !important;
    background:rgba(255,255,255,.92) !important;
    border:1px solid rgba(220,232,248,.95) !important;
    box-shadow:0 16px 34px rgba(32,82,180,.08) !important;
}

.sd-hero2-bottom-item{
    padding:26px 30px !important;
}

.sd-hero2-bottom-icon{
    width:62px !important;
    height:62px !important;
    flex:0 0 62px !important;
}

.sd-hero2-bottom-item strong{
    font-size:20px !important;
}

.sd-hero2-bottom-item p{
    font-size:15px !important;
}

/* 반응형 */
@media(max-width:1280px){
    .ddp-header-inner{
        padding-left:28px !important;
    }

    .ddp-logo-img{
        width:136px !important;
        max-width:136px !important;
    }

    .sd-hero2-inner{
        grid-template-columns:1fr !important;
        padding:48px 34px 84px !important;
    }

    .sd-hero2-title{
        font-size:54px !important;
    }

    .sd-hero2-visual{
        min-height:460px !important;
    }

    .sd-hero2-character{
        width:min(560px,94%) !important;
        transform:none !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 80px) !important;
        grid-template-columns:repeat(2,1fr) !important;
        margin:-58px auto 0 !important;
    }
}

@media(max-width:768px){
    .ddp-header{
        height:68px !important;
    }

    .ddp-header-inner{
        height:68px !important;
        padding-left:16px !important;
    }

    .ddp-logo-img{
        width:116px !important;
        max-width:116px !important;
    }

    .sd-hero2{
        padding:0 12px !important;
        margin:16px auto 30px !important;
    }

    .sd-hero2-inner{
        border-radius:26px !important;
        padding:30px 20px 28px !important;
    }

    .sd-hero2-title{
        font-size:38px !important;
    }

    .sd-hero2-desc{
        font-size:16px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:54px !important;
        font-size:16px !important;
    }

    .sd-hero2-visual{
        min-height:330px !important;
    }

    .sd-hero2-character{
        width:min(350px,94%) !important;
        transform:none !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:16px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}

/* =========================================================
   SEARCHDOC HERO FINAL CSS
   - 로고 왼쪽 정렬
   - 히어로 높이 압축
   - 캐릭터 크게
   - 진료과 버튼 클릭 방지
   - 캐릭터 주변 말랑 장식 정리
   ========================================================= */

/* ---------- HEADER LOGO ---------- */
.ddp-header{
    height:72px !important;
    background:#fff !important;
    border-bottom:1px solid #edf1f7 !important;
}

.ddp-header-inner{
    width:100% !important;
    max-width:1680px !important;
    height:72px !important;
    margin:0 auto !important;
    padding:0 42px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.ddp-logo{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    text-decoration:none !important;
    transform:none !important;
}

.ddp-logo-img{
    display:block !important;
    width:136px !important;
    max-width:136px !important;
    height:auto !important;
    object-fit:contain !important;
}

.ddp-logo-text{
    display:none !important;
}

.ddp-menu-toggle{
    display:none !important;
}


/* ---------- HERO WRAP ---------- */
.sd-hero2{
    max-width:1680px !important;
    margin:18px auto 40px !important;
    padding:0 36px !important;
    position:relative !important;
}

.sd-hero2-inner{
    min-height:520px !important;
    display:grid !important;
    grid-template-columns:48% 52% !important;
    align-items:center !important;
    gap:8px !important;
    padding:42px 64px 76px !important;
    border-radius:34px !important;
    border:1px solid #dbe8fb !important;
    background:
        radial-gradient(circle at 75% 42%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.55) 28%, rgba(255,255,255,0) 48%),
        radial-gradient(circle at 94% 22%, rgba(198,220,255,.50) 0%, rgba(198,220,255,0) 28%),
        linear-gradient(135deg,#f5f9ff 0%,#eaf4ff 48%,#f4f7ff 100%) !important;
    box-shadow:0 18px 46px rgba(30,85,190,.08) !important;
    overflow:hidden !important;
}


/* ---------- LEFT COPY ---------- */
.sd-hero2-copy{
    position:relative !important;
    z-index:10 !important;
}

.sd-hero2-title{
    margin:0 0 18px !important;
    font-size:58px !important;
    line-height:1.08 !important;
    letter-spacing:-0.075em !important;
    font-weight:950 !important;
    color:#071631 !important;
}

.sd-hero2-title em{
    color:#1764ff !important;
    font-style:normal !important;
}

.sd-hero2-desc{
    margin:0 0 22px !important;
    font-size:19px !important;
    line-height:1.58 !important;
    letter-spacing:-0.045em !important;
    color:#17233b !important;
    font-weight:700 !important;
}

.sd-hero2-desc strong{
    color:#1264ff !important;
    font-weight:950 !important;
}


/* ---------- FEATURE CARDS ---------- */
.sd-hero2-feature{
    display:flex !important;
    gap:14px !important;
    margin:0 0 18px !important;
    flex-wrap:wrap !important;
}

.sd-hero2-feature-card{
    min-width:250px !important;
    height:78px !important;
    padding:0 20px !important;
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
    border-radius:20px !important;
    background:rgba(255,255,255,.96) !important;
    border:1px solid #dfe9f8 !important;
    box-shadow:0 12px 26px rgba(38,84,180,.08) !important;
    backdrop-filter:blur(8px) !important;
}

.sd-hero2-feature-icon{
    width:50px !important;
    height:50px !important;
    flex:0 0 50px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:50% !important;
    font-size:0 !important;
    color:#fff !important;
}

.sd-hero2-feature-icon.sd-blue{
    background:linear-gradient(180deg,#6fb0ff,#1764ff) !important;
    box-shadow:0 10px 20px rgba(23,100,255,.18) !important;
}

.sd-hero2-feature-icon.sd-blue:before{
    content:"✓" !important;
    font-size:25px !important;
    line-height:1 !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-icon.sd-pink{
    background:linear-gradient(180deg,#ff9cc6,#ff4f8f) !important;
    box-shadow:0 10px 20px rgba(255,79,143,.18) !important;
}

.sd-hero2-feature-icon.sd-pink:before{
    content:"♥" !important;
    font-size:25px !important;
    line-height:1 !important;
    color:#fff !important;
    font-weight:950 !important;
}

.sd-hero2-feature-card strong{
    display:block !important;
    font-size:18px !important;
    line-height:1.32 !important;
    font-weight:950 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}

.sd-hero2-feature-card div > span{
    display:block !important;
    font-size:17px !important;
    line-height:1.32 !important;
    font-weight:850 !important;
    letter-spacing:-0.05em !important;
    color:#111b31 !important;
}


/* ---------- DEPARTMENT CHIPS ---------- */
.sd-hero2-depts{
    display:flex !important;
    gap:12px !important;
    flex-wrap:wrap !important;
}

.sd-hero2-dept{
    min-width:128px !important;
    height:48px !important;
    padding:0 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:15px !important;
    background:#fff !important;
    border:1px solid #d9e5f7 !important;
    box-shadow:0 7px 16px rgba(38,84,180,.06) !important;
    color:#17223a !important;
    font-size:16px !important;
    font-weight:850 !important;
    letter-spacing:-0.04em !important;
    text-decoration:none !important;
    cursor:default !important;
    pointer-events:none !important;
}

.sd-hero2-dept span{
    color:#1764ff !important;
    font-size:13px !important;
    font-weight:900 !important;
}


/* ---------- RIGHT VISUAL ---------- */
.sd-hero2-visual{
    min-height:430px !important;
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:visible !important;
    z-index:2 !important;
}

/* 캐릭터 뒤 큰 글로우 */
.sd-hero2-visual:before{
    content:"" !important;
    position:absolute !important;
    width:430px !important;
    height:430px !important;
    right:86px !important;
    top:8px !important;
    border-radius:50% !important;
    background:
        radial-gradient(circle, rgba(255,255,255,.98) 0%, rgba(255,255,255,.75) 42%, rgba(255,255,255,0) 72%) !important;
    filter:blur(3px) !important;
    z-index:1 !important;
}

/* 작은 말랑 도트 묶음 */
.sd-hero2-visual:after{
    content:"" !important;
    position:absolute !important;
    width:14px !important;
    height:14px !important;
    right:115px !important;
    bottom:138px !important;
    border-radius:50% !important;
    background:#a9c6ff !important;
    opacity:.75 !important;
    box-shadow:
        -415px -115px 0 2px rgba(160,190,255,.78),
        -350px -70px 0 -1px rgba(160,190,255,.62),
        -100px -195px 0 5px rgba(255,196,220,.70),
        -25px 80px 0 6px rgba(255,196,220,.62),
        42px -72px 0 3px rgba(160,190,255,.62) !important;
    z-index:2 !important;
}

.sd-hero2-character{
    position:relative !important;
    z-index:6 !important;
    width:min(610px,98%) !important;
    max-height:540px !important;
    object-fit:contain !important;
    transform:translate(16px,4px) !important;
    filter:drop-shadow(0 22px 34px rgba(25,84,190,.13)) !important;
}


/* ---------- CUTE DECO ---------- */
.sd-deco{
    position:absolute !important;
    pointer-events:none !important;
    box-sizing:border-box !important;
}

/* orbit */
.sd-deco-orbit{
    display:block !important;
    right:8px !important;
    bottom:86px !important;
    width:520px !important;
    height:230px !important;
    border:2px solid rgba(255,255,255,.78) !important;
    border-left-color:transparent !important;
    border-bottom-color:transparent !important;
    border-radius:50% !important;
    transform:rotate(-16deg) !important;
    opacity:.88 !important;
    z-index:1 !important;
}

/* cloud */
.sd-deco-cloud{
    display:block !important;
    top:26px !important;
    left:142px !important;
    width:96px !important;
    height:40px !important;
    background:rgba(255,255,255,.90) !important;
    border-radius:999px !important;
    opacity:.92 !important;
    box-shadow:0 10px 22px rgba(65,113,190,.06) !important;
    z-index:2 !important;
}

.sd-deco-cloud:before{
    content:"" !important;
    position:absolute !important;
    width:44px !important;
    height:44px !important;
    left:14px !important;
    top:-18px !important;
    background:rgba(255,255,255,.94) !important;
    border-radius:50% !important;
}

.sd-deco-cloud:after{
    content:"" !important;
    position:absolute !important;
    width:52px !important;
    height:52px !important;
    right:10px !important;
    top:-24px !important;
    background:rgba(255,255,255,.94) !important;
    border-radius:50% !important;
}

/* stars */
.sd-deco-star{
    display:block !important;
    color:#9ebcff !important;
    opacity:.86 !important;
    text-shadow:0 8px 18px rgba(43,96,233,.12) !important;
    z-index:3 !important;
}

.sd-star1{
    top:128px !important;
    left:52px !important;
    font-size:28px !important;
}

.sd-star2{
    top:182px !important;
    left:112px !important;
    font-size:21px !important;
}

/* heart */
.sd-deco-heart{
    display:flex !important;
    top:66px !important;
    right:220px !important;
    width:66px !important;
    height:66px !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:50% !important;
    background:linear-gradient(145deg,#ffb6d3,#ff4f8f) !important;
    box-shadow:0 16px 28px rgba(255,76,139,.18) !important;
    transform:rotate(8deg) !important;
    opacity:1 !important;
    font-size:0 !important;
    z-index:3 !important;
}

.sd-deco-heart:before{
    content:"♥" !important;
    color:#fff !important;
    font-size:31px !important;
    line-height:1 !important;
}

/* pin */
.sd-deco-pin{
    display:block !important;
    top:110px !important;
    right:70px !important;
    width:62px !important;
    height:62px !important;
    border-radius:50% 50% 50% 14px !important;
    background:linear-gradient(180deg,#6db0ff,#1764ff) !important;
    transform:rotate(-45deg) !important;
    box-shadow:0 14px 26px rgba(23,100,255,.17) !important;
    opacity:1 !important;
    z-index:3 !important;
}

.sd-deco-pin:before{
    content:"" !important;
    position:absolute !important;
    width:22px !important;
    height:22px !important;
    left:20px !important;
    top:20px !important;
    border-radius:50% !important;
    background:#eef6ff !important;
}

.sd-deco-pin:after{
    display:none !important;
}

/* pill */
.sd-deco-pill{
    display:block !important;
    right:178px !important;
    bottom:48px !important;
    width:58px !important;
    height:28px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#fff 0 48%,#ff5578 49% 100%) !important;
    transform:rotate(-28deg) !important;
    opacity:.95 !important;
    box-shadow:0 10px 18px rgba(255,85,120,.14) !important;
    z-index:3 !important;
}


/* ---------- BOTTOM BAR ---------- */
.sd-hero2-bottom{
    width:calc(100% - 140px) !important;
    margin:-54px auto 0 !important;
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.92) !important;
    border:1px solid rgba(220,232,248,.95) !important;
    box-shadow:0 16px 34px rgba(32,82,180,.08) !important;
    backdrop-filter:blur(10px) !important;
    overflow:hidden !important;
    position:relative !important;
    z-index:12 !important;
}

.sd-hero2-bottom-item{
    display:flex !important;
    align-items:center !important;
    gap:13px !important;
    padding:17px 24px !important;
    position:relative !important;
}

.sd-hero2-bottom-icon{
    width:46px !important;
    height:46px !important;
    flex:0 0 46px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:50% !important;
    background:linear-gradient(180deg,#eef6ff,#f9fcff) !important;
    font-size:20px !important;
    box-shadow:inset 0 2px 8px rgba(255,255,255,.85), 0 8px 16px rgba(43,96,233,.08) !important;
}

.sd-hero2-bottom-item strong{
    display:block !important;
    margin:0 0 3px !important;
    font-size:16px !important;
    line-height:1.25 !important;
    font-weight:950 !important;
    letter-spacing:-0.05em !important;
    color:#111c33 !important;
}

.sd-hero2-bottom-item p{
    margin:0 !important;
    font-size:13px !important;
    line-height:1.35 !important;
    color:#68748a !important;
    letter-spacing:-0.03em !important;
}

.sd-hero2-bottom-item:not(:last-child):after{
    content:"" !important;
    position:absolute !important;
    right:0 !important;
    top:17px !important;
    width:1px !important;
    height:38px !important;
    background:#dce6f4 !important;
}


/* ---------- TABLET ---------- */
@media(max-width:1280px){
    .ddp-header-inner{
        padding:0 24px !important;
    }

    .ddp-logo-img{
        width:122px !important;
        max-width:122px !important;
    }

    .sd-hero2{
        padding:0 22px !important;
    }

    .sd-hero2-inner{
        min-height:auto !important;
        grid-template-columns:1fr !important;
        padding:36px 30px 62px !important;
    }

    .sd-hero2-title{
        font-size:48px !important;
    }

    .sd-hero2-visual{
        min-height:360px !important;
    }

    .sd-hero2-character{
        width:min(430px,92%) !important;
        transform:none !important;
    }

    .sd-hero2-bottom{
        width:calc(100% - 70px) !important;
        margin:-42px auto 0 !important;
        grid-template-columns:repeat(2,1fr) !important;
    }
}


/* ---------- MOBILE ---------- */
@media(max-width:768px){
    .ddp-header{
        height:64px !important;
    }

    .ddp-header-inner{
        height:64px !important;
        padding:0 16px !important;
    }

    .ddp-logo-img{
        width:108px !important;
        max-width:108px !important;
    }

    .sd-hero2{
        margin:12px auto 24px !important;
        padding:0 12px !important;
    }

    .sd-hero2-inner{
        padding:24px 18px 22px !important;
        border-radius:24px !important;
    }

    .sd-hero2-title{
        font-size:34px !important;
        margin-bottom:14px !important;
    }

    .sd-hero2-desc{
        font-size:15px !important;
        margin-bottom:18px !important;
    }

    .sd-hero2-feature{
        flex-direction:column !important;
    }

    .sd-hero2-feature-card{
        width:100% !important;
        min-width:0 !important;
        height:72px !important;
    }

    .sd-hero2-dept{
        min-width:calc(50% - 8px) !important;
        height:46px !important;
        font-size:15px !important;
    }

    .sd-hero2-visual{
        min-height:260px !important;
    }

    .sd-hero2-visual:before{
        width:250px !important;
        height:250px !important;
        right:50% !important;
        top:12px !important;
        transform:translateX(50%) !important;
    }

    .sd-hero2-visual:after{
        display:none !important;
    }

    .sd-hero2-character{
        width:min(280px,92%) !important;
        transform:none !important;
    }

    .sd-deco-cloud,
    .sd-deco-orbit,
    .sd-deco-pill{
        display:none !important;
    }

    .sd-deco-heart{
        width:44px !important;
        height:44px !important;
        top:22px !important;
        right:56px !important;
    }

    .sd-deco-heart:before{
        font-size:22px !important;
    }

    .sd-deco-pin{
        width:42px !important;
        height:42px !important;
        top:72px !important;
        right:18px !important;
    }

    .sd-deco-pin:before{
        width:14px !important;
        height:14px !important;
        left:14px !important;
        top:14px !important;
    }

    .sd-hero2-bottom{
        width:100% !important;
        margin:14px auto 0 !important;
        grid-template-columns:1fr !important;
    }

    .sd-hero2-bottom-item{
        padding:15px 18px !important;
    }

    .sd-hero2-bottom-item:not(:last-child):after{
        display:none !important;
    }
}


/* =========================================================
   SEARCHDOC HERO CENTER FILL FIX
   - 가운데 빈 공간 보강
   - 캐릭터 왼쪽 이동
   - 중앙 플로팅 카드 추가
   ========================================================= */

/* 히어로 내부 기준점 */
.sd-hero2-inner{
    position:relative !important;
}

/* 캐릭터를 왼쪽으로 당겨서 중앙 빈 공간 줄이기 */
.sd-hero2-visual{
    justify-content:flex-start !important;
}

.sd-hero2-character{
    width:min(650px,100%) !important;
    transform:translate(-38px,4px) !important;
}

/* 가운데 연결용 작은 글래스 카드 1 */
.sd-hero2-inner:before{
    content:"상담 전 체크";
    position:absolute;
    left:52%;
    top:205px;
    z-index:7;
    padding:12px 20px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(194,214,248,.78);
    box-shadow:0 14px 28px rgba(45,92,180,.08);
    backdrop-filter:blur(10px);
    color:#1764ff;
    font-size:15px;
    font-weight:900;
    letter-spacing:-0.04em;
    white-space:nowrap;
}

/* 가운데 연결용 작은 글래스 카드 2 */
.sd-hero2-inner:after{
    content:"지역별 의료정보";
    position:absolute;
    left:50.5%;
    top:285px;
    z-index:7;
    padding:12px 20px;
    border-radius:999px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(194,214,248,.72);
    box-shadow:0 14px 28px rgba(45,92,180,.07);
    backdrop-filter:blur(10px);
    color:#0d1b3d;
    font-size:15px;
    font-weight:900;
    letter-spacing:-0.04em;
    white-space:nowrap;
}

/* 중앙 도트 라인 */
.sd-hero2-copy:after{
    content:"";
    position:absolute;
    left:calc(100% + 34px);
    top:244px;
    width:170px;
    height:2px;
    z-index:2;
    background:linear-gradient(90deg, rgba(23,100,255,.18), rgba(23,100,255,0));
    box-shadow:
        26px -42px 0 5px rgba(160,190,255,.55),
        88px -16px 0 3px rgba(255,196,220,.55),
        130px 34px 0 5px rgba(160,190,255,.45),
        58px 58px 0 2px rgba(23,100,255,.30);
    border-radius:999px;
}

/* 캐릭터 뒤 글로우도 중앙 쪽으로 확장 */
.sd-hero2-visual:before{
    width:500px !important;
    height:500px !important;
    right:145px !important;
    top:-8px !important;
    background:
        radial-gradient(circle, rgba(255,255,255,.98) 0%, rgba(255,255,255,.72) 42%, rgba(209,226,255,.24) 60%, rgba(255,255,255,0) 76%) !important;
}

/* 궤도선 중앙까지 더 길게 */
.sd-deco-orbit{
    right:70px !important;
    bottom:74px !important;
    width:620px !important;
    height:250px !important;
    opacity:.82 !important;
}

/* 구름 위치 살짝 중앙으로 */
.sd-deco-cloud{
    left:70px !important;
    top:30px !important;
}

/* 하트와 핀 위치 재배치 */
.sd-deco-heart{
    right:265px !important;
    top:72px !important;
}

.sd-deco-pin{
    right:120px !important;
    top:105px !important;
}

.sd-deco-pill{
    right:235px !important;
    bottom:42px !important;
}

/* 별을 중앙 쪽으로 조금 이동 */
.sd-star1{
    left:0 !important;
    top:122px !important;
}

.sd-star2{
    left:68px !important;
    top:180px !important;
}

/* 태블릿에서는 중앙 카드 숨김 */
@media(max-width:1280px){
    .sd-hero2-inner:before,
    .sd-hero2-inner:after,
    .sd-hero2-copy:after{
        display:none !important;
    }

    .sd-hero2-visual{
        justify-content:center !important;
    }

    .sd-hero2-character{
        transform:none !important;
    }
}

/* 모바일에서도 숨김 */
@media(max-width:768px){
    .sd-hero2-inner:before,
    .sd-hero2-inner:after,
    .sd-hero2-copy:after{
        display:none !important;
    }
}


/* =========================================================
   SEARCHDOC HERO OUTER BG + HEADER LINE REMOVE
   ========================================================= */

/* 바깥 전체 배경 */
html, body{
    background:linear-gradient(180deg,#f7fbff 0%, #eef4ff 48%, #f6f9ff 100%) !important;
}

/* 메인 바깥 영역도 흰색 고정 안 되게 */
#rx-root,
#body,
.content,
.site-body,
.ddp-page,
.ddp-wrap,
.ddp-container{
    background:transparent !important;
}

/* 헤더 아래 선 제거 */
header,
.ddp-header,
.ddp-topbar,
.ddp-header-wrap,
.ddp-site-header,
.ddp-navbar,
.ddp-nav,
.sd-topbar{
    border-bottom:none !important;
    box-shadow:none !important;
}

/* 로고 주변에 생기는 밑줄/경계 제거 */
.ddp-logo,
.ddp-logo:link,
.ddp-logo:visited,
.ddp-logo:hover,
.ddp-logo:active,
.sd-logo,
.sd-logo:link,
.sd-logo:visited,
.sd-logo:hover{
    border-bottom:none !important;
    box-shadow:none !important;
    text-decoration:none !important;
}

/* 헤더 자체를 조금 더 깔끔하게 */
.ddp-header,
.ddp-topbar,
.ddp-header-wrap{
    background:rgba(255,255,255,.78) !important;
    backdrop-filter:blur(10px);
}

/* 로고 영역 정렬 보정 */
.ddp-logo{
    display:inline-flex !important;
    align-items:center !important;
    gap:10px !important;
}

/* 히어로 바깥 여백과 배경 어울리게 */
.sd-hero2-section{
    background:transparent !important;
    padding-top:18px !important;
    padding-bottom:28px !important;
}

/* 히어로 박스 그림자 약간 추가해서 바깥 배경과 분리 */
.sd-hero2-inner{
    box-shadow:
        0 18px 40px rgba(95,133,212,.10),
        0 2px 0 rgba(255,255,255,.65) inset !important;
}


/* SEARCHDOC logo bottom strip fix */
.ddp-header{
    height:72px !important;
    background:#fff !important;
    border-bottom:none !important;
    box-shadow:none !important;
}

.ddp-header-inner{
    height:72px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    padding-left:42px !important;
    background:#fff !important;
}

.ddp-logo{
    width:150px !important;
    height:54px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    overflow:hidden !important;
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    text-decoration:none !important;
}

.ddp-logo-img{
    width:150px !important;
    max-width:150px !important;
    height:auto !important;
    display:block !important;
    transform:translateY(-2px) !important;
    background:transparent !important;
}

.ddp-logo-text{
    display:none !important;
}

/* 혹시 로고 이미지 아래 잔여 라인이 남으면 살짝 더 자름 */
.ddp-logo-img{
    clip-path:inset(0 0 6px 0) !important;
}


/* SEARCHDOC center floating text front fix */

/* 가운데 카드 글씨는 최상단 */
.sd-hero2-inner:before,
.sd-hero2-inner:after{
    z-index:30 !important;
    background:rgba(255,255,255,.92) !important;
    border:1px solid rgba(190,213,255,.95) !important;
    box-shadow:0 10px 22px rgba(45,92,180,.10) !important;
    color:#1264ff !important;
}

/* 두 번째 카드 글씨는 더 진하게 */
.sd-hero2-inner:after{
    color:#071631 !important;
}

/* 중앙 연결선은 뒤로 */
.sd-hero2-copy:after{
    z-index:4 !important;
    opacity:.55 !important;
}

/* 캐릭터보다 앞에 글씨 카드가 오도록 */
.sd-hero2-visual,
.sd-hero2-character{
    z-index:10 !important;
}

/* 장식은 카드보다 뒤 */
.sd-deco,
.sd-deco-orbit,
.sd-deco-cloud,
.sd-deco-heart,
.sd-deco-pin,
.sd-deco-pill,
.sd-deco-star{
    z-index:3 !important;
}

/* 캐릭터 뒤 글로우도 뒤 */
.sd-hero2-visual:before,
.sd-hero2-visual:after{
    z-index:2 !important;
}


/* =========================================================
   SEARCHDOC MOBILE LOGO LINE FIX
   - 모바일 로고 세로 정렬
   - 로고 아래 삐져 보이는 라인 제거
   - 헤더 밑줄 제거
   ========================================================= */

@media(max-width:768px){

    html,
    body{
        background:#f6f9ff !important;
    }

    .ddp-header{
        height:60px !important;
        min-height:60px !important;
        background:#fff !important;
        border-bottom:none !important;
        box-shadow:none !important;
        display:flex !important;
        align-items:center !important;
    }

    .ddp-header-inner{
        height:60px !important;
        min-height:60px !important;
        padding:0 0 0 16px !important;
        margin:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        background:#fff !important;
        border-bottom:none !important;
        box-shadow:none !important;
    }

    .ddp-logo{
        width:118px !important;
        height:42px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        overflow:hidden !important;
        margin:0 !important;
        padding:0 !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        text-decoration:none !important;
        line-height:1 !important;
    }

    .ddp-logo-img{
        width:118px !important;
        max-width:118px !important;
        height:auto !important;
        display:block !important;
        object-fit:contain !important;
        transform:translateY(-1px) !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        clip-path:inset(0 0 5px 0) !important;
    }

    .ddp-logo-text{
        display:none !important;
    }

    .ddp-menu-toggle{
        display:none !important;
    }
}

@media(max-width:420px){

    .ddp-header,
    .ddp-header-inner{
        height:58px !important;
        min-height:58px !important;
    }

    .ddp-logo{
        width:112px !important;
        height:40px !important;
    }

    .ddp-logo-img{
        width:112px !important;
        max-width:112px !important;
        transform:translateY(-1px) !important;
        clip-path:inset(0 0 5px 0) !important;
    }
}

