/* 랜딩페이지(index) 전용 — 디자인팀 index3.html(2026-09-11) 스타일을 body.lp 아래로 스코프해 다른 페이지에 영향이 없게 했다.
   원본은 :root 토큰(흰 캔버스·인디고)을 다시 정의하므로 랜딩에서만 그 토큰이 적용된다. 이미지는 static/refund/img/landing/. */
body.lp {
    
    --primary: #4B3FE4;
    --primary-deep: #392FBE;
    --primary-press: #2A2390;
    --primary-soft: #7A70F2;
    --primary-subtle: #E9E7FC;

    
    --ink: #10192B;
    --ink-secondary: #33445C;
    --ink-mute: #66748A;
    --ink-900: #0E1130;
    --ink-900-soft: #191c3f;

    
    --canvas: #ffffff;
    --canvas-soft: #F5F7FC;
    --canvas-warm: #FBF1E3;
    --hairline: #E3E7F0;
    --hairline-strong: #CBD3E3;

    
    --mesh-frost: #F4F6FD;
    --mesh-lavender: #CBC2F7;
    --mesh-sky: #6FA8F5;
    --mesh-indigo: #4B3FE4;

    
    --gold: #E4B45E;
    --gold-deep: #C4933C;
    --gold-subtle: rgba(228, 180, 94, 0.16);

    
    --mint: #14A57A;
    --mint-deep: #0E7F5D;
    --mint-subtle: #E2F6EE;
    --error: #D93A4B;
    --error-subtle: #FCEAEC;

    --on-primary: #ffffff;

    
    --r-xs: 6px;
    --r-sm: 8px;
    --r-md: 12px;
    --r-lg: 16px;
    --r-xl: 24px;
    --r-pill: 999px;

    
    --sp-1: 4px;
    --sp-2: 8px;
    --sp-3: 12px;
    --sp-4: 16px;
    --sp-6: 24px;
    --sp-8: 32px;
    --sp-12: 48px;
    --sp-16: 64px;
    --sp-24: 96px;

    
    --shadow-1: 0 1px 2px rgba(16, 25, 43, 0.05), 0 2px 6px rgba(16, 25, 43, 0.05);
    --shadow-2: 0 8px 24px rgba(16, 25, 43, 0.08), 0 2px 6px rgba(16, 25, 43, 0.04);
    --shadow-3: 0 24px 56px rgba(16, 25, 43, 0.16), 0 4px 12px rgba(16, 25, 43, 0.06);

    --container-width: 1160px;
    --transition-base: 180ms cubic-bezier(0.4, 0, 0.2, 1);
    --header-h: 68px;

    
    --color-navy: var(--ink);
    --color-blue: var(--primary);
    --color-blue-light: var(--primary-subtle);
    --color-accent: var(--mint);
    --color-accent-dark: var(--mint-deep);
    --color-accent-soft: var(--mint-subtle);
    --color-text: var(--ink);
    --color-muted: var(--ink-mute);
    --color-bg: var(--canvas);
    --color-bg-alt: var(--canvas-soft);
    --color-border: var(--hairline);
    --color-error: var(--error);
    --color-error-soft: var(--error-subtle);
    --gradient-navy: linear-gradient(135deg, var(--primary) 0%, var(--primary-press) 100%);
    --radius-sm: var(--r-sm);
    --radius-md: var(--r-md);
    --radius-lg: var(--r-lg);
    --radius-full: var(--r-pill);
    --shadow-sm: var(--shadow-1);
    --shadow-md: var(--shadow-2);
    --shadow-lg: var(--shadow-3);
    --surface-gradient: var(--canvas);
    --inset-highlight: none;
    --inset-edge: none;
    --space-section-mobile: var(--sp-16);
    --space-section-desktop: var(--sp-24);

    
    --firm-navy: var(--ink-900);
    --firm-cream: #FBF3E7;
    --firm-gold: var(--gold);
    --firm-gold-dark: var(--gold-deep);
}

@media (min-width: 640px) {body.lp { --header-h: 72px; }
}body.lp * { box-sizing: border-box; }body.lp {
    scroll-behavior: smooth;
    scroll-padding-top: 84px;
}body.lp {
    margin: 0;
    font-family: "Pretendard Variable", Pretendard, "Inter", -apple-system, BlinkMacSystemFont, "Noto Sans KR", sans-serif;
    font-feature-settings: "tnum" 0;
    color: var(--ink);
    background: var(--canvas);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: -0.01em;
    -webkit-font-smoothing: antialiased;
}body.lp h1, body.lp h2, body.lp h3 {
    color: var(--ink);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.01em;
    margin: 0 0 12px;
}body.lp h1 { font-size: 32px; }body.lp h2 { font-size: 30px; }body.lp h3 { font-size: 20px; font-weight: 700; letter-spacing: -0.005em; }body.lp p { margin: 0 0 12px; }body.lp strong { font-weight: 700; }body.lp a { color: inherit; }body.lp img, body.lp svg { max-width: 100%; }body.lp .tnum { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }

@media (min-width: 1024px) {body.lp h1 { font-size: 52px; }body.lp h2 { font-size: 40px; }
}body.lp .container {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 24px;
}body.lp .site-header {
    position: sticky;
    top: 0;
    background: rgba(255, 255, 255, 0.82);
    backdrop-filter: blur(14px) saturate(1.4);
    -webkit-backdrop-filter: blur(14px) saturate(1.4);
    border-bottom: 1px solid var(--hairline);
    z-index: 50;
    padding: 14px 0;
}body.lp .header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}body.lp .logo {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-weight: 700;
    font-size: 18px;
    color: var(--ink);
    text-decoration: none;
    letter-spacing: -0.02em;
}body.lp .logo-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: var(--r-sm);
    background: var(--primary);
    color: #ffffff;
    flex-shrink: 0;
}body.lp .logo-mark svg { width: 18px; height: 18px; }body.lp .logo-text { white-space: nowrap; }body.lp .logo-img { height: 34px; width: auto; display: block; }body.lp .nav-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}body.lp .btn-nav {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 40px;
    height: 40px;
    padding: 0;
    border-radius: var(--r-pill);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    transition: transform var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);
}body.lp .btn-nav .icon { width: 18px; height: 18px; flex-shrink: 0; }body.lp .btn-nav-label { display: none; }

@media (min-width: 640px) {body.lp .btn-nav {
        width: auto;
        height: 40px;
        padding: 0 18px;
        font-size: 14px;
    }body.lp .btn-nav-label { display: inline; }
}body.lp .btn-nav-kakao {
    background: #FEE500;
    color: #391b1b;
}body.lp .btn-nav-kakao:hover { background: #fcda00; }body.lp .btn-nav-lookup {
    background: var(--primary);
    color: #ffffff;
}body.lp .btn-nav-lookup:hover { background: var(--primary-deep); }body.lp .section {
    padding: var(--sp-16) 0;
    position: relative;
}

@media (min-width: 1024px) {body.lp .section { padding: var(--sp-24) 0; }
}body.lp #hero { background: var(--canvas); }body.lp #who { background: var(--canvas-soft); }body.lp #experts { background: var(--primary-subtle); }body.lp #process-cost { background: var(--canvas-soft); }body.lp #faq { background: var(--canvas); }body.lp .site-footer { background: var(--primary-subtle); }body.lp .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding: 14px 30px;
    border-radius: var(--r-pill);
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -0.005em;
    text-decoration: none;
    text-align: center;
    border: none;
    cursor: pointer;
    transition: transform var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);
}body.lp .btn-primary {
    background: var(--primary);
    color: #ffffff;
    box-shadow: 0 1px 2px rgba(16, 25, 43, 0.08), 0 12px 24px -8px rgba(75, 63, 228, 0.45);
}body.lp .btn-primary:hover {
    background: var(--primary-deep);
    transform: translateY(-2px);
    box-shadow: 0 1px 2px rgba(16, 25, 43, 0.08), 0 16px 30px -8px rgba(75, 63, 228, 0.5);
}body.lp .btn-primary:active {
    transform: translateY(0);
    background: var(--primary-press);
}body.lp .btn-primary:focus-visible {
    outline: 3px solid var(--primary-soft);
    outline-offset: 2px;
}body.lp .link-secondary {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--primary);
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 600;
}body.lp .link-secondary:hover { color: var(--primary-deep); }body.lp :focus-visible {
    outline: 3px solid var(--primary-soft);
    outline-offset: 2px;
}body.lp .icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}body.lp .card-icon, body.lp .status-icon, body.lp .icon-badge {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}body.lp .card-icon {
    width: 44px;
    height: 44px;
    border-radius: var(--r-md);
    background: var(--primary-subtle);
    color: var(--primary-deep);
    margin-bottom: 16px;
}body.lp .card-icon svg { width: 22px; height: 22px; }body.lp .card-icon.accent {
    background: var(--mint-subtle);
    color: var(--mint-deep);
}body.lp .icon-badge--xs { width: 28px; height: 28px; border-radius: var(--r-sm); }body.lp .icon-badge--xs svg { width: 15px; height: 15px; }body.lp .icon-badge--sm { width: 36px; height: 36px; border-radius: var(--r-sm); }body.lp .icon-badge--sm svg { width: 19px; height: 19px; }body.lp .icon-badge--circle { border-radius: 50%; }body.lp .icon-badge--blue { background: var(--primary-subtle); color: var(--primary-deep); }body.lp .icon-badge--green { background: var(--mint-subtle); color: var(--mint-deep); }body.lp .icon-badge--navy { background: var(--primary); color: #ffffff; }body.lp {
    --primary: #292D72;
    --primary-deep: #1D2058;
    --primary-press: #171747;
    --primary-soft: #53619B;
    --primary-subtle: #ECEEF6;

    --ink: #202331;
    --ink-secondary: #202331;
    --ink-mute: #707483;
    --ink-900: #080838;
    --ink-900-soft: #12123f;

    --canvas: #ffffff;
    --canvas-soft: #F5F6FA;
    --hairline: #D9DCE6;
    --hairline-strong: #D9DCE6;

    --mesh-frost: #F5F6FA;
    --mesh-lavender: #ECEEF6;
    --mesh-sky: #53619B;
    --mesh-indigo: #292D72;

    
    --mint: #53619B;
    --mint-deep: #3F4A78;
    --mint-subtle: #ECEEF6;

    
    --container-width: 1190px;
}body.lp .section { padding: 72px 0; }
@media (min-width: 1024px) {body.lp .section { padding: 130px 0; } }

@media (min-width: 1024px) {body.lp #hero { min-height: 840px; }body.lp #who { min-height: 560px; }body.lp #experts { min-height: 880px; }body.lp #process-cost { min-height: 680px; }
}body.lp .section-head {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 60px;
}body.lp .section-heading { margin: 0 0 22px; }body.lp .section-heading-line {
    display: block;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.32;
    letter-spacing: -0.02em;
    color: var(--ink);
}

@media (min-width: 1024px) {body.lp .section-heading-line { font-size: 50px; } }body.lp .hero-heading-line strong, body.lp .section-heading-line strong {
    color: var(--primary);
    font-weight: inherit;
}body.lp .section-desc { font-size: 19px; line-height: 1.6; color: var(--ink-mute); margin: 0; }

@media (min-width: 1024px) {body.lp .section-desc { font-size: 22px; } }body.lp .lp-nav { gap: 32px; }body.lp .lp-nav-link {
    position: relative;
    font-size: 16px;
    font-weight: 600;
    color: var(--ink-secondary);
    text-decoration: none;
    white-space: nowrap;
    padding-bottom: 4px;
    transition: color var(--transition-base);
}body.lp .lp-nav-link::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    border-radius: 2px;
    background: var(--primary);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform var(--transition-base);
}body.lp .lp-nav-link:hover { color: var(--primary); }body.lp .lp-nav-link:hover::after { transform: scaleX(1); transform-origin: left; }body.lp .lp-nav-cta { min-height: 44px; padding: 0 24px; font-size: 15px; flex-shrink: 0; }

@media (max-width: 767px) {body.lp .lp-nav-link { display: none; }body.lp .lp-nav { gap: 12px; }
}body.lp .hero {
    position: relative;
    overflow: hidden;
    background: var(--canvas);
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}body.lp .hero-bg-shape {
    position: absolute;
    left: 50%;
    bottom: -22%;
    width: 1100px;
    max-width: 170%;
    aspect-ratio: 1;
    transform: translateX(-50%);
    background: var(--primary-subtle);
    border-radius: 50%;
    filter: blur(80px);
    z-index: 0;
    pointer-events: none;
}body.lp .hero-inner { position: relative; z-index: 1; max-width: 720px; margin: 0 auto; }body.lp .hero-heading { margin: 0 0 24px; }body.lp .hero-heading-line {
    display: block;
    font-size: 42px;
    font-weight: 800;
    line-height: 1.24;
    letter-spacing: -0.02em;
    color: var(--ink);
}

@media (min-width: 1024px) {body.lp .hero-heading-line { font-size: 68px; white-space: nowrap; }body.lp .hero-heading {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        width: max-content;
    }body.lp .hero-heading[data-animate] { transform: translateX(-50%) translateY(16px); }body.lp .hero-heading[data-animate].is-visible { transform: translateX(-50%) translateY(0); }
}body.lp .hero-cta-note { font-size: 22px; font-weight: 700; color: var(--primary-soft); margin: 16px 0 32px; letter-spacing: 0.01em; }

@media (min-width: 1024px) {body.lp .hero-cta-note { font-size: 24px; } }body.lp .hero-cta-block .btn { font-size: 18px; padding: 18px 44px; min-height: 60px; }body.lp .hero-visual { position: relative; z-index: 1; margin-top: 80px; }

@media (min-width: 1024px) {body.lp .hero-visual { margin-top: 96px; } }body.lp .hub-diagram {
    position: relative;
    width: 100%;
    max-width: 860px;
    aspect-ratio: 860 / 1080;
    margin: 0 auto;
}body.lp .hub-lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }body.lp .hub-lines line { stroke: var(--hairline-strong); stroke-width: 3; }body.lp .hub-center {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 64%;
    max-width: 560px;
    z-index: 2;
}body.lp .hub-hero-image {
    width: 100%;
    height: auto;
    display: block;
}body.lp .hub-node {
    position: absolute;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: #ffffff;
    border: 1.5px solid var(--hairline);
    border-radius: 16px;
    padding: 15px 20px;
    font-size: 16px;
    font-weight: 700;
    color: var(--ink);
    white-space: nowrap;
    box-shadow: 0 12px 28px -12px rgba(8, 8, 56, 0.16);
    z-index: 2;
}body.lp .hub-node-icon {
    position: relative;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(150deg, var(--primary-soft) 0%, var(--primary) 100%);
    box-shadow: 0 6px 14px -6px rgba(41, 45, 114, 0.55);
    color: #ffffff;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}body.lp .hub-node-icon svg { position: relative; width: 60%; height: 60%; filter: drop-shadow(0 1px 1px rgba(8, 8, 56, 0.3)); }body.lp .hub-node--a { left: 6%; top: 67%; }body.lp .hub-node--c { left: 94%; top: 67%; }body.lp .hub-result-card {
    position: absolute;
    left: 50%;
    top: 88%;
    transform: translateX(-50%);
    width: 82%;
    max-width: 214px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 22px 14px;
    border-radius: 24px;
    background: linear-gradient(150deg, var(--primary-soft) 0%, var(--primary) 55%, var(--primary-press) 100%);
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.3) inset,
        0 28px 52px -18px rgba(41, 45, 114, 0.6);
    z-index: 2;
}body.lp .hub-result-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.18);
    flex-shrink: 0;
}body.lp .hub-result-icon svg { width: 32px; height: 32px; color: #ffffff; }body.lp .hub-result-text { text-align: center; }body.lp .hub-result-title { font-size: 24px; font-weight: 800; color: #ffffff; margin: 0; }

@media (max-width: 560px) {body.lp .hub-result-card { padding: 20px 22px; gap: 14px; width: 92%; }body.lp .hub-result-icon { width: 48px; height: 48px; }body.lp .hub-result-icon svg { width: 26px; height: 26px; }body.lp .hub-result-title { font-size: 20px; }
}

@media (max-width: 767px) {body.lp .hub-diagram { aspect-ratio: auto; height: auto; }body.lp .hub-lines { display: none; }body.lp .hub-center { position: static; transform: none; width: 100%; max-width: 480px; margin: 0 auto; }body.lp .hub-node {
        position: static;
        transform: none;
        display: flex;
        justify-content: center;
        width: 100%;
        max-width: 420px;
        margin: 8px auto 0;
    }body.lp .hub-result-card {
        position: static;
        transform: none;
        width: 100%;
        max-width: 420px;
        margin: 14px auto 0;
    }
}

@media (max-width: 560px) {body.lp .hub-node { font-size: 13px; padding: 11px 14px; gap: 6px; }body.lp .hub-node-icon { width: 26px; height: 26px; }
}body.lp .who-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 820px;
    margin: 0 auto;
}

@media (min-width: 640px) {body.lp .who-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
}body.lp .who-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    padding: 44px 28px;
    background: #ffffff;
    border: 1.5px solid var(--hairline);
    border-radius: 22px;
    text-align: center;
    transition: border-color var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base);
}body.lp .who-card:hover {
    border-color: var(--primary);
    transform: translateY(-3px);
    box-shadow: 0 20px 40px -22px rgba(8, 8, 56, 0.25);
}body.lp .who-card-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 68px;
    height: 68px;
    border-radius: 18px;
    background: linear-gradient(150deg, var(--primary-soft) 0%, var(--primary) 55%, var(--primary-press) 100%);
    color: #ffffff;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.35) inset,
        0 -10px 16px rgba(0, 0, 0, 0.15) inset,
        0 14px 26px -12px rgba(41, 45, 114, 0.5);
    overflow: hidden;
}body.lp .who-card-icon::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0.12) 100%);
    pointer-events: none;
}body.lp .who-card-icon svg { position: relative; width: 34px; height: 34px; filter: drop-shadow(0 2px 3px rgba(8, 8, 56, 0.3)); }body.lp .who-card:nth-child(2) .who-card-icon, body.lp .who-card:nth-child(4) .who-card-icon {
    background: linear-gradient(150deg, #6E7DB8 0%, var(--primary-soft) 55%, #3F4A78 100%);
}body.lp .who-card-label { font-size: 22px; font-weight: 800; color: var(--ink); line-height: 1.35; margin: 0; }body.lp .org-chart { text-align: center; margin: 0 auto 56px; }body.lp .org-dot {
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: linear-gradient(150deg, var(--primary-soft) 0%, var(--primary) 100%);
    box-shadow: 0 3px 8px -2px rgba(41, 45, 114, 0.6);
    margin: 0 auto;
}body.lp .org-trunk { width: 2px; height: 30px; background: rgba(83, 97, 155, 0.45); margin: 0 auto; }body.lp .org-branches {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
    position: relative;
    padding-top: 30px;
}

@media (min-width: 640px) {body.lp .org-branches {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 64px;
        flex-wrap: nowrap;
    }body.lp .org-branches::before {
        content: "";
        position: absolute;
        top: 0;
        left: calc((100% - 128px) / 6);
        right: calc((100% - 128px) / 6);
        height: 2px;
        background: rgba(83, 97, 155, 0.45);
    }body.lp .org-branch::before {
        content: "";
        position: absolute;
        top: -30px;
        left: 50%;
        width: 2px;
        height: 30px;
        background: rgba(83, 97, 155, 0.45);
        
        transform: translateX(-50%);
    }
}body.lp .org-branch { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; }body.lp .org-node {
    font-size: 19px;
    font-weight: 700;
    padding: 15px 24px;
    border-radius: 14px;
    background: #ffffff;
    border: 1.5px solid var(--hairline);
    color: var(--ink);
    white-space: nowrap;
}body.lp .experts-head { max-width: 640px; margin: 0 auto; text-align: center; }body.lp .experts-head .section-heading { margin-bottom: 18px; }body.lp .experts-scroller {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 4px 4px 8px;
    margin: 0 -4px;
    scrollbar-width: none;
}body.lp .experts-scroller::-webkit-scrollbar { display: none; }

@media (min-width: 900px) {body.lp .experts-scroller {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
        overflow: visible;
        padding: 0;
        
        margin: 0 -16px;
    }
}body.lp .expert-card {
    flex: 0 0 84%;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border: 1.5px solid var(--hairline);
    border-radius: 22px;
    overflow: hidden;
    transition: border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);
}

@media (min-width: 560px) {body.lp .expert-card { flex-basis: 46%; } }
@media (min-width: 900px) {body.lp .expert-card { flex: none; } }body.lp .expert-card:hover {
    border-color: var(--primary);
    box-shadow: 0 20px 40px -20px rgba(8, 8, 56, 0.25);
    transform: translateY(-3px);
}body.lp .expert-photo {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 4;
    background: var(--canvas-soft);
    overflow: hidden;
}body.lp .expert-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: transform 400ms cubic-bezier(0.4, 0, 0.2, 1);
}body.lp .expert-card:hover .expert-photo img { transform: scale(1.05); }body.lp .expert-body { padding: 22px 22px 24px; }body.lp .expert-name { font-size: 24px; font-weight: 800; color: var(--ink); margin: 0; line-height: 1.3; }body.lp .expert-title { font-size: 18px; font-weight: 600; color: var(--primary); margin: 0 0 16px; }body.lp .expert-role-list {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    font-size: 17px;
    color: var(--ink-mute);
    line-height: 1.8;
}body.lp .expert-role-list .role-nowrap { white-space: nowrap; }body.lp .timeline-diagram {
    display: flex;
    flex-direction: column;
    gap: 0;
    max-width: 980px;
    margin: 0 auto 72px;
}

@media (min-width: 768px) {body.lp .timeline-diagram {
        position: relative;
        flex-direction: row;
        justify-content: space-between;
    }body.lp .timeline-diagram::before {
        content: "";
        position: absolute;
        left: 12%;
        right: 12%;
        top: 32px;
        height: 3px;
        background: var(--hairline-strong);
        z-index: 0;
    }
}body.lp .timeline-step {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 20px 0;
    z-index: 1;
}

@media (min-width: 768px) {body.lp .timeline-step {
        flex: 1;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 16px;
        padding: 0;
    }
}body.lp .timeline-dot {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: linear-gradient(150deg, var(--primary-soft) 0%, var(--primary) 55%, var(--primary-press) 100%);
    color: #ffffff;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.35) inset,
        0 -10px 16px rgba(0, 0, 0, 0.15) inset,
        0 14px 26px -12px rgba(41, 45, 114, 0.5);
    flex-shrink: 0;
    overflow: hidden;
}body.lp .timeline-dot::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0.12) 100%);
    pointer-events: none;
}body.lp .timeline-step:nth-child(2) .timeline-dot, body.lp .timeline-step:nth-child(4) .timeline-dot {
    background: linear-gradient(150deg, #6E7DB8 0%, var(--primary-soft) 55%, #3F4A78 100%);
}body.lp .timeline-dot svg { position: relative; width: 28px; height: 28px; filter: drop-shadow(0 2px 3px rgba(8, 8, 56, 0.3)); }body.lp .timeline-text { display: flex; flex-direction: column; gap: 5px; align-items: flex-start; }

@media (min-width: 768px) {body.lp .timeline-text { align-items: center; } }body.lp .timeline-number {
    font-size: 14px;
    font-weight: 800;
    color: var(--ink-mute);
    letter-spacing: 0.04em;
}body.lp .timeline-label { font-size: 22px; font-weight: 800; color: var(--ink); margin: 0; }body.lp .timeline-desc { font-size: 16px; color: var(--ink-mute); margin: 2px 0 0; }

@media (max-width: 767px) {body.lp .timeline-step { border-left: 3px solid var(--hairline-strong); padding-left: 22px; margin-left: 31px; }body.lp .timeline-step:first-child { border-left-color: transparent; }body.lp .timeline-dot { margin-left: -31px; }
}body.lp .cost-card {
    max-width: 640px;
    margin: 0 auto;
    background: var(--primary-subtle);
    border-radius: 26px;
    padding: 48px 40px;
    text-align: center;
}body.lp .cost-lead {
    font-size: 27px;
    font-weight: 700;
    color: var(--ink);
    margin: 0;
}body.lp .cost-lead strong { color: var(--primary); font-weight: 800; }body.lp .cost-copy {
    margin: 14px 0 0;
    font-size: 18px;
    color: var(--ink-secondary);
    line-height: 1.6;
}body.lp .process-cost-cta { margin-top: 32px; text-align: center; }body.lp .process-cost-cta .btn { width: 100%; max-width: 300px; }body.lp .process-cost-disclaimer {
    margin: 20px 0 0;
    font-size: 15px;
    color: var(--ink-mute);
    text-align: center;
}body.lp .faq-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    max-width: 920px;
    margin: 0 auto;
}

@media (min-width: 1024px) {body.lp .faq-grid { grid-template-columns: 1fr 1fr; align-items: start; }
}body.lp .faq-item {
    border: 1.5px solid var(--hairline);
    border-radius: var(--r-lg);
    padding: 4px 28px;
    background: var(--canvas);
    transition: border-color var(--transition-base);
}body.lp .faq-item:hover { border-color: var(--primary-soft); }body.lp .faq-item[open] { border-color: var(--primary); }body.lp .faq-item summary {
    list-style: none;
    min-height: 72px;
    display: flex;
    align-items: center;
    gap: 20px;
    cursor: pointer;
    font-weight: 700;
    color: var(--ink);
    font-size: 19px;
    padding: 22px 0;
}body.lp .faq-item summary::-webkit-details-marker { display: none; }body.lp .faq-question { flex: 1; }body.lp .faq-plus { width: 26px; height: 26px; color: var(--primary); flex-shrink: 0; }body.lp .faq-plus svg { width: 100%; height: 100%; }body.lp .faq-plus-v { transition: opacity var(--transition-base); transform-origin: center; }body.lp .faq-item[open] .faq-plus-v { opacity: 0; }body.lp .faq-item p {
    margin: 0 0 26px;
    color: var(--ink-secondary);
    font-size: 18px;
    line-height: 1.7;
}body.lp .faq-cta { margin-top: 60px; text-align: center; }body.lp .lp-sticky-cta {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    background: #ffffff;
    border-top: 1px solid var(--hairline);
    padding: 12px 20px max(12px, env(safe-area-inset-bottom));
    z-index: 60;
    box-shadow: 0 -8px 24px rgba(8, 8, 56, 0.08);
}body.lp .lp-sticky-cta .btn { width: 100%; min-height: 54px; font-size: 17px; }

@media (min-width: 1024px) {body.lp .lp-sticky-cta { display: none; } }body.lp [data-animate] {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 420ms cubic-bezier(0.4, 0, 0.2, 1), transform 420ms cubic-bezier(0.4, 0, 0.2, 1);
}body.lp [data-animate].is-visible { opacity: 1; transform: translateY(0); }body.lp .hero-heading[data-animate] { transition-delay: 0ms; }body.lp .hero-cta-note[data-animate] { transition-delay: 90ms; }body.lp .hero-cta-block[data-animate] { transition-delay: 180ms; }body.lp .experts-scroller[data-animate-group] .expert-card, body.lp .who-grid[data-animate-group] .who-card {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 380ms cubic-bezier(0.4, 0, 0.2, 1), transform 380ms cubic-bezier(0.4, 0, 0.2, 1);
}body.lp .experts-scroller[data-animate-group].is-visible .expert-card, body.lp .who-grid[data-animate-group].is-visible .who-card { opacity: 1; transform: translateY(0); }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(1), body.lp .who-grid[data-animate-group].is-visible .who-card:nth-child(1) { transition-delay: 0ms; }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(2), body.lp .who-grid[data-animate-group].is-visible .who-card:nth-child(2) { transition-delay: 40ms; }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(3), body.lp .who-grid[data-animate-group].is-visible .who-card:nth-child(3) { transition-delay: 80ms; }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(4), body.lp .who-grid[data-animate-group].is-visible .who-card:nth-child(4) { transition-delay: 120ms; }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(5) { transition-delay: 160ms; }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(6) { transition-delay: 200ms; }body.lp .experts-scroller[data-animate-group].is-visible .expert-card:nth-child(7) { transition-delay: 240ms; }body.lp .faq-grid[data-animate-group] .faq-item {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 380ms cubic-bezier(0.4, 0, 0.2, 1), transform 380ms cubic-bezier(0.4, 0, 0.2, 1);
}body.lp .faq-grid[data-animate-group].is-visible .faq-item { opacity: 1; transform: translateY(0); }body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(1), body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(2) { transition-delay: 0ms; }body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(3), body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(4) { transition-delay: 60ms; }body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(5), body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(6) { transition-delay: 120ms; }body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(7), body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(8) { transition-delay: 180ms; }body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(9), body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(10) { transition-delay: 220ms; }body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(11), body.lp .faq-grid[data-animate-group].is-visible .faq-item:nth-child(12) { transition-delay: 260ms; }

@media (prefers-reduced-motion: reduce) {body.lp [data-animate], body.lp .experts-scroller[data-animate-group] .expert-card, body.lp .who-grid[data-animate-group] .who-card, body.lp .faq-grid[data-animate-group] .faq-item {
        opacity: 1;
        transform: none;
        transition: none;
    }
}body.lp .apply-container { max-width: 720px; }body.lp .apply-intro {
    text-align: center;
    max-width: 480px;
    margin: 0 auto 40px;
}body.lp .apply-title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.35;
    margin: 16px 0 14px;
    letter-spacing: -0.01em;
}

@media (min-width: 768px) {body.lp .apply-title { font-size: 36px; } }body.lp .apply-subcopy {
    font-size: 16px;
    line-height: 1.6;
    color: var(--ink-mute);
}body.lp .apply-select-heading {
    text-align: center;
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 20px;
}body.lp .apply-cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 48px;
}

@media (min-width: 640px) {body.lp .apply-cards { grid-template-columns: 1fr 1fr; }
}body.lp .apply-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background: var(--canvas);
    border: 1px solid var(--hairline);
    border-radius: var(--r-xl);
    padding: 32px 28px;
    box-shadow: var(--shadow-1);
}body.lp .apply-card-title { font-size: 20px; font-weight: 700; margin: 0 0 8px; }body.lp .apply-card-desc { font-size: 14px; color: var(--ink-mute); line-height: 1.5; margin: 0 0 24px; }body.lp .btn-kakao {
    width: 100%;
    background: #FEE500;
    color: #391b1b;
    box-shadow: var(--shadow-1);
}body.lp .btn-kakao:hover { background: #fcda00; }body.lp .btn-kakao .icon { width: 20px; height: 20px; }body.lp .apply-trust {
    text-align: center;
    background: var(--canvas-soft);
    border-radius: var(--r-xl);
    padding: 40px 28px;
    margin-bottom: 24px;
}body.lp .apply-trust-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--gold-subtle);
    color: var(--gold-deep);
    margin-bottom: 16px;
}body.lp .apply-trust-icon svg { width: 24px; height: 24px; }body.lp .apply-trust-title { font-size: 19px; font-weight: 700; margin: 0 0 12px; }body.lp .apply-trust-desc { font-size: 15px; color: var(--ink-mute); line-height: 1.6; margin: 0 0 18px; }body.lp .apply-trust-badge {
    display: inline-block;
    padding: 8px 18px;
    background: var(--primary-subtle);
    color: var(--primary-deep);
    font-weight: 600;
    font-size: 13px;
    border-radius: var(--r-pill);
    margin: 0;
}body.lp .apply-disclaimer {
    text-align: center;
    font-size: 12px;
    color: var(--ink-mute);
    line-height: 1.6;
    margin: 0;
}body.lp .flow-topbar {
    position: sticky;
    top: 0;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(14px) saturate(1.4);
    -webkit-backdrop-filter: blur(14px) saturate(1.4);
    border-bottom: 1px solid var(--hairline);
    z-index: 50;
    padding: 14px 0;
}body.lp .flow-topbar-inner {
    display: flex;
    align-items: center;
    gap: 14px;
}body.lp .flow-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: var(--ink);
    flex-shrink: 0;
    transition: background var(--transition-base);
}body.lp .flow-back:hover { background: var(--canvas-soft); }body.lp .flow-back svg { width: 20px; height: 20px; }body.lp .flow-step-label { font-weight: 600; font-size: 15px; color: var(--ink); }body.lp .auth-container { max-width: 480px; }body.lp .auth-intro { text-align: center; margin: 8px 0 40px; }body.lp .auth-title { font-size: 24px; font-weight: 700; margin: 0 0 12px; }

@media (min-width: 768px) {body.lp .auth-title { font-size: 28px; } }body.lp .auth-subcopy { font-size: 15px; color: var(--ink-mute); line-height: 1.6; }body.lp .auth-block { margin-bottom: 32px; }body.lp .form-section-heading { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0 0 16px; }body.lp .auth-method-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
}body.lp .auth-method-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    border: 1.5px solid var(--hairline);
    border-radius: var(--r-lg);
    background: var(--canvas);
    cursor: pointer;
    transition: border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);
}body.lp .auth-method-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
}body.lp .auth-method-card:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-subtle);
    box-shadow: var(--shadow-1);
}body.lp .auth-method-card:has(input:focus-visible) {
    outline: 3px solid var(--primary-soft);
    outline-offset: 2px;
}body.lp .auth-method-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--r-md);
    flex-shrink: 0;
    font-weight: 800;
    font-size: 17px;
}body.lp .auth-method-icon svg { width: 22px; height: 22px; }body.lp .auth-method-icon--kakao { background: #FEE500; color: #391b1b; }body.lp .auth-method-icon--naver { background: #03C75A; color: #ffffff; }body.lp .auth-method-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    text-align: left;
}body.lp .auth-method-text strong { font-size: 15px; color: var(--ink); }body.lp .auth-method-text span { font-size: 13px; color: var(--ink-mute); }body.lp .auth-method-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--primary);
    color: #ffffff;
    flex-shrink: 0;
    opacity: 0;
    transform: scale(0.6);
    transition: opacity var(--transition-base), transform var(--transition-base);
}body.lp .auth-method-check svg { width: 13px; height: 13px; }body.lp .auth-method-card:has(input:checked) .auth-method-check {
    opacity: 1;
    transform: scale(1);
}body.lp .form-field { margin-bottom: 18px; }body.lp .form-field label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: var(--ink);
    font-size: 14px;
}body.lp .field-required { color: var(--error); }body.lp .form-field input[type="text"], body.lp .form-field input[type="tel"], body.lp .form-field input[type="password"] {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    border: 1.5px solid var(--hairline-strong);
    border-radius: var(--r-sm);
    font-size: 16px;
    font-family: inherit;
    background: var(--canvas-soft);
    transition: border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);
}body.lp .form-field input[type="text"]:focus, body.lp .form-field input[type="tel"]:focus, body.lp .form-field input[type="password"]:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 4px var(--primary-subtle);
    background: #ffffff;
}body.lp .field-error {
    margin: 6px 0 0;
    font-size: 13px;
    color: var(--error);
    line-height: 1.4;
}body.lp .btn-block { width: 100%; }body.lp .btn:disabled {
    opacity: 0.42;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}body.lp .auth-disclaimer {
    margin: 20px 0 0;
    text-align: center;
    font-size: 12px;
    color: var(--ink-mute);
    line-height: 1.6;
}body.lp .pending-container { max-width: 440px; text-align: center; }body.lp .pending-status-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 76px;
    height: 76px;
    border-radius: 50%;
    margin: 8px 0 28px;
    font-weight: 800;
    font-size: 30px;
    box-shadow: var(--shadow-2);
}body.lp .pending-status-icon svg { width: 38px; height: 38px; }body.lp .pending-status-icon--kakao { background: #FEE500; color: #391b1b; }body.lp .pending-status-icon--naver { background: #03C75A; color: #ffffff; }body.lp .pending-status-icon--cert { background: var(--primary-subtle); color: var(--primary-deep); box-shadow: none; }body.lp .pending-note {
    font-size: 14px;
    color: var(--ink-mute);
    text-align: center;
    line-height: 1.6;
    margin: 28px 0 16px;
}body.lp .pending-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.35;
    margin: 0 0 14px;
}

@media (min-width: 768px) {body.lp .pending-title { font-size: 28px; } }body.lp .pending-subcopy {
    font-size: 15px;
    color: var(--ink-mute);
    line-height: 1.6;
    margin: 0 0 36px;
}body.lp .pending-steps {
    list-style: none;
    margin: 0 0 32px;
    padding: 24px;
    background: var(--canvas-soft);
    border-radius: var(--r-lg);
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 18px;
}body.lp .pending-step {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}body.lp .pending-step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--primary);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    flex-shrink: 0;
}body.lp .pending-step-text { font-size: 15px; color: var(--ink); line-height: 1.5; padding-top: 2px; }body.lp .pending-notice {
    margin: 0 0 20px;
    padding: 14px 16px;
    background: var(--error-subtle);
    color: var(--error);
    border-radius: var(--r-md);
    font-size: 14px;
    line-height: 1.5;
    text-align: left;
}body.lp .pending-divider {
    border: none;
    border-top: 1px solid var(--hairline);
    margin: 40px 0 28px;
}body.lp .pending-help-title { font-size: 16px; font-weight: 700; margin: 0 0 10px; }body.lp .pending-help-desc {
    font-size: 14px;
    color: var(--ink-mute);
    line-height: 1.6;
    margin: 0 0 20px;
}body.lp .btn-outline {
    background: var(--canvas);
    color: var(--primary);
    border: 1.5px solid var(--primary);
}body.lp .btn-outline:hover { background: var(--primary-subtle); }body.lp .loading-container { max-width: 400px; text-align: center; }body.lp .loading-spinner {
    width: 60px;
    height: 60px;
    margin: 0 auto 36px;
    border-radius: 50%;
    border: 5px solid var(--hairline);
    border-top-color: var(--primary);
    animation: auth-spin 0.85s linear infinite;
}

@keyframes auth-spin {
    to { transform: rotate(360deg); }
}body.lp .app-header {
    position: sticky;
    top: 0;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(14px) saturate(1.4);
    -webkit-backdrop-filter: blur(14px) saturate(1.4);
    border-bottom: 1px solid var(--hairline);
    z-index: 50;
    padding: 14px 0;
}body.lp .app-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}body.lp .app-header-actions {
    display: flex;
    align-items: center;
    gap: 20px;
}body.lp .app-header-actions a {
    font-size: 14px;
    font-weight: 600;
    color: var(--ink-mute);
    text-decoration: none;
    white-space: nowrap;
    transition: color var(--transition-base);
}body.lp .app-header-actions a:hover { color: var(--ink); }body.lp .app-header-actions a[aria-disabled="true"] { opacity: 0.5; cursor: default; }

@media (max-width: 479px) {body.lp .app-header-actions { gap: 10px; }body.lp .app-header-actions a { font-size: 12px; }
}body.lp .app-tabbar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    background: var(--canvas);
    border-top: 1px solid var(--hairline);
    box-shadow: 0 -6px 20px rgba(16, 25, 43, 0.06);
    z-index: 60;
    padding: 6px 0 max(6px, env(safe-area-inset-bottom));
}body.lp .app-tab {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 8px 4px;
    text-decoration: none;
    color: var(--ink-mute);
    font-size: 11px;
    font-weight: 600;
}body.lp .app-tab svg { width: 22px; height: 22px; }body.lp .app-tab.is-active { color: var(--primary); }body.lp .app-tab[aria-disabled="true"] { opacity: 0.5; }body.lp .result-container { max-width: 560px; padding-bottom: 110px; }body.lp .result-intro { text-align: center; margin: 28px 0 28px; }body.lp .result-title { font-size: 22px; font-weight: 700; line-height: 1.4; margin: 0 0 8px; }

@media (min-width: 768px) {body.lp .result-title { font-size: 26px; } }body.lp .result-date { font-size: 13px; color: var(--ink-mute); margin: 0; }body.lp .result-total-card {
    background: linear-gradient(150deg, var(--primary-soft) 0%, var(--primary) 55%, var(--primary-press) 100%);
    color: #ffffff;
    border-radius: var(--r-xl);
    padding: 32px 28px;
    text-align: center;
    margin-bottom: 14px;
    box-shadow: var(--shadow-2);
}body.lp .result-total-label { font-size: 14px; font-weight: 500; opacity: 0.82; margin: 0 0 10px; }body.lp .result-total-amount {
    font-size: 38px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.02em;
    margin: 0 0 10px;
    line-height: 1.1;
}

@media (min-width: 768px) {body.lp .result-total-amount { font-size: 44px; } }body.lp .result-total-unit { font-size: 0.5em; font-weight: 600; margin-left: 2px; }body.lp .result-total-summary { font-size: 13px; opacity: 0.85; margin: 0; }body.lp .result-disclaimer {
    text-align: center;
    font-size: 12px;
    color: var(--ink-mute);
    line-height: 1.6;
    margin: 0 0 40px;
}body.lp .biz-section { margin-bottom: 36px; }body.lp .biz-section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin: 0 0 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--hairline);
}body.lp .biz-section-title { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0; }body.lp .biz-section-count { color: var(--ink-mute); font-weight: 600; }body.lp .biz-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 14px;
}body.lp .biz-card {
    background: var(--canvas);
    border: 1px solid var(--hairline);
    border-radius: var(--r-xl);
    padding: 24px 22px;
    box-shadow: var(--shadow-1);
}body.lp .biz-card-type {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 11px;
    border-radius: var(--r-pill);
    margin-bottom: 12px;
}body.lp .biz-card-type--individual { background: var(--primary-subtle); color: var(--primary-deep); }body.lp .biz-card-type--corporate { background: var(--mint-subtle); color: var(--mint-deep); }body.lp .biz-card-name { font-size: 17px; font-weight: 700; color: var(--ink); margin: 0 0 4px; }body.lp .biz-card-regno {
    font-size: 13px;
    color: var(--ink-mute);
    font-variant-numeric: tabular-nums;
    margin: 0 0 18px;
}body.lp .biz-card-amount-label { font-size: 13px; color: var(--ink-mute); margin: 0 0 4px; }body.lp .biz-card-amount {
    font-size: 26px;
    font-weight: 800;
    color: var(--ink);
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.01em;
    margin: 0 0 18px;
}body.lp .biz-card-amount-unit { font-size: 0.55em; font-weight: 600; margin-left: 2px; }body.lp .biz-progress-label { font-size: 12px; font-weight: 600; color: var(--ink-mute); margin: 0 0 8px; }body.lp .biz-progress {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0 0 16px;
    font-size: 13px;
}body.lp .biz-progress-item { color: var(--ink-mute); font-weight: 600; }body.lp .biz-progress-item.is-current {
    color: #ffffff;
    background: var(--primary);
    padding: 4px 11px;
    border-radius: var(--r-pill);
    font-weight: 700;
}body.lp .biz-progress-arrow { color: var(--hairline-strong); font-size: 12px; }body.lp .biz-card-meta { font-size: 12px; color: var(--ink-mute); margin: 0 0 18px; }body.lp .biz-card-actions { display: flex; gap: 10px; }body.lp .biz-cta { flex: 1; min-height: 48px; padding: 12px 16px; font-size: 14px; }body.lp .btn[aria-disabled="true"] {
    opacity: 0.55;
    pointer-events: none;
    cursor: default;
}body.lp .biz-add-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 50px;
    border: 1.5px dashed var(--hairline-strong);
    border-radius: var(--r-pill);
    background: none;
    color: var(--ink-mute);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    cursor: pointer;
    transition: border-color var(--transition-base), color var(--transition-base);
}body.lp .biz-add-btn:hover { border-color: var(--primary-soft); color: var(--primary-deep); }body.lp .biz-add-btn .icon { width: 16px; height: 16px; }body.lp .result-aux-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}body.lp .result-aux-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 20px 22px;
    background: var(--canvas-soft);
    border-radius: var(--r-lg);
    text-decoration: none;
    color: inherit;
    transition: background var(--transition-base);
}body.lp .result-aux-card:hover { background: var(--primary-subtle); }body.lp .result-aux-card-title { font-size: 14px; font-weight: 600; color: var(--ink); }body.lp .result-aux-card-link {
    font-size: 13px;
    font-weight: 700;
    color: var(--primary);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}body.lp .floating-consult-btn {
    position: fixed;
    right: 18px;
    bottom: 22px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 20px;
    border-radius: var(--r-pill);
    background: var(--ink-900);
    color: #ffffff;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    box-shadow: var(--shadow-3);
    z-index: 70;
    transition: transform var(--transition-base), box-shadow var(--transition-base);
}body.lp .floating-consult-btn:hover { transform: translateY(-2px); }body.lp .floating-consult-btn .icon { width: 18px; height: 18px; }body.lp .history-container { max-width: 520px; padding-bottom: 96px; }body.lp .history-title { font-size: 22px; font-weight: 700; margin: 28px 0 8px; }body.lp .history-subcopy { font-size: 14px; color: var(--ink-mute); margin: 0 0 28px; }body.lp .history-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}body.lp .history-card {
    display: block;
    padding: 22px 22px;
    background: var(--canvas);
    border: 1px solid var(--hairline);
    border-radius: var(--r-xl);
    text-decoration: none;
    color: inherit;
    box-shadow: var(--shadow-1);
    transition: border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);
}body.lp .history-card:hover {
    border-color: var(--primary-soft);
    box-shadow: var(--shadow-2);
    transform: translateY(-1px);
}body.lp .history-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}body.lp .history-card-date { font-size: 13px; color: var(--ink-mute); font-weight: 600; }body.lp .history-status {
    display: inline-block;
    padding: 5px 12px;
    border-radius: var(--r-pill);
    font-size: 12px;
    font-weight: 700;
}body.lp .history-status--pending { background: var(--primary-subtle); color: var(--primary-deep); }body.lp .history-status--done { background: var(--mint-subtle); color: var(--mint-deep); }body.lp .history-card-amount {
    font-size: 24px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.01em;
    margin: 0 0 4px;
    color: var(--ink);
}body.lp .history-card-unit { font-size: 0.55em; font-weight: 600; margin-left: 2px; }body.lp .history-card-meta { font-size: 13px; color: var(--ink-mute); margin: 0; }body.lp .corp-method-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 28px;
}body.lp .corp-method-card {
    position: relative;
    display: block;
    padding: 22px 52px 22px 22px;
    border: 1.5px solid var(--hairline);
    border-radius: var(--r-lg);
    background: var(--canvas);
    cursor: pointer;
    transition: border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);
}body.lp .corp-method-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
}body.lp .corp-method-card:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-subtle);
    box-shadow: var(--shadow-1);
}body.lp .corp-method-card:has(input:focus-visible) {
    outline: 3px solid var(--primary-soft);
    outline-offset: 2px;
}body.lp .corp-method-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: var(--r-md);
    background: var(--primary-subtle);
    color: var(--primary-deep);
    margin-bottom: 14px;
}body.lp .corp-method-card:has(input:checked) .corp-method-icon { background: var(--canvas); }body.lp .corp-method-icon svg { width: 22px; height: 22px; }body.lp .corp-method-body { display: block; }body.lp .corp-method-body strong { display: block; font-size: 16px; font-weight: 700; color: var(--ink); margin-bottom: 6px; }body.lp .corp-method-body span { display: block; font-size: 13px; color: var(--ink-mute); line-height: 1.5; }body.lp .corp-method-radio {
    position: absolute;
    right: 20px;
    bottom: 20px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid var(--hairline-strong);
    background: var(--canvas);
}body.lp .corp-method-card:has(input:checked) .corp-method-radio {
    border-color: var(--primary);
    background: var(--primary);
    box-shadow: inset 0 0 0 4px var(--canvas);
}body.lp .password-field-wrap { position: relative; }body.lp .password-field-wrap input { padding-right: 44px; }body.lp .password-toggle-btn {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    color: var(--ink-mute);
    cursor: pointer;
    border-radius: var(--r-sm);
}body.lp .password-toggle-btn:hover { color: var(--ink); background: var(--canvas-soft); }body.lp .password-toggle-btn svg { width: 20px; height: 20px; }body.lp .password-toggle-btn .icon-hide { display: none; }body.lp .password-toggle-btn.is-visible .icon-show { display: none; }body.lp .password-toggle-btn.is-visible .icon-hide { display: inline-flex; }body.lp .ssn-row {
    display: flex;
    align-items: center;
    gap: 10px;
}body.lp .ssn-row input {
    flex: 1;
    min-width: 0;
    text-align: center;
    letter-spacing: 0.08em;
}body.lp .ssn-dash { color: var(--ink-mute); font-weight: 600; flex-shrink: 0; }body.lp .status-container {
    text-align: center;
    max-width: 520px;
    margin: 0 auto;
    background: var(--canvas);
    border: 1px solid var(--hairline);
    border-radius: var(--r-lg);
    padding: 48px 32px;
    box-shadow: var(--shadow-2);
}body.lp .status-icon {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    margin: 0 auto 24px;
}body.lp .status-icon svg { width: 32px; height: 32px; }body.lp .status-icon.success { background: var(--mint-subtle); color: var(--mint-deep); }body.lp .status-icon.error { background: var(--error-subtle); color: var(--error); }body.lp .status-icon.neutral { background: var(--primary-subtle); color: var(--primary-deep); }body.lp .status-container p { color: var(--ink-mute); line-height: 1.6; }body.lp .status-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin-top: 24px;
}body.lp .mobile-cta-bar {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    background: var(--ink-900);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 20px;
    z-index: 60;
    box-shadow: var(--shadow-3);
}body.lp .mobile-cta-bar span { font-weight: 600; font-size: 15px; }body.lp .mobile-cta-bar .btn-primary {
    min-height: 44px;
    padding: 10px 22px;
    box-shadow: none;
}

@media (min-width: 1024px) {body.lp .mobile-cta-bar { display: none; } }body.lp .mobile-cta-bar.is-hidden { display: none; }body.lp .site-footer {
    padding: var(--sp-8) 0 96px;
    background: var(--canvas);
    border-top: 1px solid var(--hairline);
}

@media (min-width: 1024px) {body.lp .site-footer { padding-bottom: 32px; }
}

@media (prefers-reduced-motion: reduce) {body.lp { scroll-behavior: auto; }body.lp * {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
    }
}

