/* 파킹99 개편 미리보기 — 기존 style.css 위에 얹는 확장 스타일 */

:root {
  --v2-navy: #1F3A5F;
  --v2-navy-deep: #132B49;
  --v2-blue: #2E6DB4;
  --v2-orange: #F2711C;
  --v2-orange-soft: #FFF1E8;
  --v2-soft: #F4F7FB;
  --v2-text: #1d2b3a;
  --v2-muted: #66788b;
  --v2-line: #DCE4EE;
  --v2-shadow: 0 20px 55px rgba(31, 58, 95, .11);
  --v2-radius: 18px;
}

body.v2-body { background: #fff; color: var(--v2-text); }
body.v2-body .site-header { border-bottom-color: rgba(220, 228, 238, .85); }
body.v2-body .site-header__inner { min-height: 76px; }
body.v2-body .desktop-nav a { font-size: 13px; }
body.v2-body .brand__copy small { letter-spacing: .04em; }
.v2-only-note { color: var(--v2-orange); font-size: 12px; font-weight: 800; }
.v2-container { width: min(1120px, calc(100% - 48px)); margin: 0 auto; }
.v2-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 10px; padding: 13px 20px; border: 1px solid transparent; border-radius: 9px; font-size: 14px; font-weight: 800; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.v2-button:hover { transform: translateY(-2px); }
.v2-button--orange { background: var(--v2-orange); color: #fff; box-shadow: 0 10px 22px rgba(242, 113, 28, .2); }
.v2-button--orange:hover { background: #da5e11; box-shadow: 0 13px 26px rgba(242, 113, 28, .27); }
.v2-button--outline { border-color: var(--v2-line); background: #fff; color: var(--v2-navy); }
.v2-button--outline:hover { border-color: var(--v2-blue); color: var(--v2-blue); }
.v2-button--dark { background: var(--v2-navy); color: #fff; }
.v2-button--dark:hover { background: var(--v2-navy-deep); }
.v2-button--full { width: 100%; }
.v2-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--v2-blue); font-size: 11px; font-weight: 900; letter-spacing: .12em; }
.v2-eyebrow::before { width: 7px; height: 7px; border-radius: 50%; background: var(--v2-orange); box-shadow: 0 0 0 4px var(--v2-orange-soft); content: ''; }
.v2-eyebrow--light { color: #9fc7ed; }
.v2-eyebrow--light::before { background: var(--v2-orange); }
.v2-section { padding: 105px 0; }
.v2-section--soft { background: var(--v2-soft); }
.v2-section--dark { background: var(--v2-navy); color: #fff; }
.v2-section-heading { max-width: 700px; margin-bottom: 38px; }
.v2-section-heading--center { margin-right: auto; margin-left: auto; text-align: center; }
.v2-section-heading h2 { margin: 12px 0 12px; color: var(--v2-navy); font-size: clamp(30px, 4vw, 47px); letter-spacing: -.08em; line-height: 1.25; }
.v2-section-heading h2 span, .v2-hero h1 span, .v2-about-hero h1 span { color: var(--v2-orange); }
.v2-section-heading p:not(.v2-eyebrow) { margin: 0; color: var(--v2-muted); font-size: 16px; line-height: 1.75; }
.v2-section--dark .v2-section-heading h2 { color: #fff; }
.v2-section--dark .v2-section-heading p:not(.v2-eyebrow) { color: #bfd2e5; }

/* Hero */
.v2-hero { position: relative; overflow: hidden; background: linear-gradient(120deg, var(--v2-navy-deep), var(--v2-navy) 63%, #2a5d8d); color: #fff; }
.v2-hero::after { position: absolute; right: -170px; bottom: -250px; width: 530px; height: 530px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; content: ''; }
.v2-hero__grid { position: relative; z-index: 1; display: grid; min-height: 640px; grid-template-columns: minmax(0, 1fr) minmax(390px, .92fr); align-items: center; gap: 72px; padding-top: 75px; padding-bottom: 85px; }
.v2-hero h1 { margin: 22px 0 20px; color: #fff; font-size: clamp(40px, 5vw, 66px); letter-spacing: -.1em; line-height: 1.16; }
.v2-hero__lead { max-width: 600px; margin: 0; color: #d6e5f2; font-size: 18px; line-height: 1.8; }
.v2-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 13px; margin-top: 32px; }
.v2-hero__phone { display: inline-flex; align-items: center; gap: 9px; padding: 9px 0; color: #d7e8f7; }
.v2-hero__phone small, .v2-hero__phone strong { display: block; }
.v2-hero__phone small { color: #a8c5df; font-size: 11px; }
.v2-hero__phone strong { font-size: 14px; }
.v2-hero__proof { display: flex; flex-wrap: wrap; gap: 9px 20px; margin-top: 30px; color: #d6e7f6; font-size: 12px; font-weight: 700; }
.v2-hero__proof b { margin-right: 4px; color: #82e0a9; }
.v2-hero__visual { position: relative; min-height: 410px; }
.v2-hero__visual img { display: block; width: 100%; height: 410px; border: 1px solid rgba(255,255,255,.17); border-radius: 23px; object-fit: cover; opacity: .87; }
.v2-hero__visual::after { position: absolute; inset: 0; border-radius: 23px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.15); content: ''; pointer-events: none; }
.v2-hero-badge { position: absolute; z-index: 2; display: flex; align-items: center; gap: 9px; padding: 13px 15px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(19,43,73,.82); box-shadow: 0 18px 30px rgba(0,0,0,.18); backdrop-filter: blur(12px); font-size: 11px; font-weight: 800; }
.v2-hero-badge--top { top: 18px; right: 18px; }
.v2-hero-badge--bottom { bottom: 18px; left: 18px; }
.v2-hero-badge strong { color: #ffc28f; font-size: 26px; line-height: 1; }
.v2-hero-badge small { display: block; color: #c9dced; font-size: 10px; font-weight: 600; }
.v2-live-dot { width: 8px; height: 8px; border-radius: 50%; background: #74dda0; box-shadow: 0 0 0 5px rgba(116,221,160,.15); }

/* Strengths */
.v2-strength-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.v2-strength-card { min-height: 265px; padding: 27px 23px; border: 1px solid var(--v2-line); border-radius: var(--v2-radius); background: #fff; box-shadow: 0 7px 20px rgba(31,58,95,.04); }
.v2-strength-card--featured { border-color: #ffc6a2; box-shadow: 0 13px 30px rgba(242,113,28,.11); }
.v2-card-number { display: block; color: var(--v2-orange); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.v2-icon-box { display: grid; width: 47px; height: 47px; margin: 20px 0 18px; place-items: center; border-radius: 13px; background: var(--v2-orange-soft); color: var(--v2-orange); }
.v2-icon-box svg { width: 28px; height: 28px; }
.v2-strength-card h3 { margin: 0 0 8px; color: var(--v2-navy); font-size: 18px; letter-spacing: -.06em; }
.v2-strength-card p { margin: 0; color: var(--v2-muted); font-size: 13px; line-height: 1.7; }

/* Expertise proof */
.v2-proof-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: 65px; }
.v2-checklist { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin: 0; padding: 0; list-style: none; }
.v2-checklist li { display: flex; align-items: flex-start; gap: 10px; padding: 14px 15px; border: 1px solid var(--v2-line); border-radius: 11px; background: #fff; color: var(--v2-text); font-size: 13px; line-height: 1.4; }
.v2-checklist li::before { display: grid; width: 20px; height: 20px; flex: 0 0 20px; place-items: center; border-radius: 50%; background: var(--v2-blue); color: #fff; content: '✓'; font-size: 11px; font-weight: 900; }
.v2-proof-caption { margin: 0 0 22px; color: var(--v2-muted); font-size: 15px; line-height: 1.75; }
.v2-scenario-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 45px; }
.v2-scenario-card { display: flex; min-height: 235px; flex-direction: column; padding: 23px; border: 1px solid var(--v2-line); border-radius: 16px; background: #fff; box-shadow: 0 6px 18px rgba(31,58,95,.04); }
.v2-scenario-card__tag { color: var(--v2-orange); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.v2-scenario-card h3 { margin: 13px 0 9px; color: var(--v2-navy); font-size: 17px; letter-spacing: -.06em; line-height: 1.45; }
.v2-scenario-card p { margin: 0; color: var(--v2-muted); font-size: 13px; line-height: 1.65; }
.v2-scenario-card a { margin-top: auto; padding-top: 18px; color: var(--v2-blue); font-size: 12px; font-weight: 900; }
.v2-proposal { display: grid; min-height: 220px; grid-template-columns: minmax(0, 1fr) minmax(230px, .85fr); align-items: center; gap: 30px; margin-top: 16px; padding: 26px; border: 1px dashed #afc0d1; border-radius: 17px; background: linear-gradient(110deg, #eef5fb, #fff); }
.v2-proposal h3 { margin: 9px 0 7px; color: var(--v2-navy); font-size: 20px; letter-spacing: -.06em; }
.v2-proposal p { margin: 0; color: var(--v2-muted); font-size: 13px; line-height: 1.6; }
.v2-proposal__image { display: grid; min-height: 155px; place-items: center; border: 1px dashed #91a8bf; border-radius: 12px; background: rgba(255,255,255,.65); color: var(--v2-blue); font-size: 12px; font-weight: 800; text-align: center; }

/* Diagnostic */
.v2-diagnosis-layout { display: grid; grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr); align-items: start; gap: 70px; }
.v2-diagnosis-intro { position: sticky; top: 110px; }
.v2-diagnosis-intro h2 { margin: 12px 0 13px; color: #fff; font-size: clamp(29px, 4vw, 44px); letter-spacing: -.08em; line-height: 1.3; }
.v2-diagnosis-intro h2 span { color: #ffc294; }
.v2-diagnosis-intro > p:not(.v2-eyebrow) { margin: 0; color: #bfd2e5; font-size: 15px; line-height: 1.75; }
.v2-diagnosis-list { display: grid; gap: 10px; margin-top: 30px; padding: 0; list-style: none; }
.v2-diagnosis-list li { display: flex; align-items: center; gap: 10px; color: #d4e4f1; font-size: 12px; }
.v2-diagnosis-list li::before { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; background: rgba(255,255,255,.12); color: #9ed3ff; content: '✓'; font-size: 10px; }
.v2-diagnosis-card { padding: 31px; border-radius: 20px; background: #fff; color: var(--v2-text); box-shadow: 0 22px 55px rgba(0,0,0,.18); }
.v2-diagnosis-card__top { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 14px; border-bottom: 1px solid var(--v2-line); }
.v2-diagnosis-card__step { color: var(--v2-orange); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.v2-diagnosis-card__percent { color: var(--v2-blue); font-size: 12px; font-weight: 900; }
.v2-diagnosis-progress { height: 5px; margin-top: 12px; overflow: hidden; border-radius: 99px; background: #edf1f5; }
.v2-diagnosis-progress span { display: block; width: 16.66%; height: 100%; border-radius: inherit; background: var(--v2-orange); transition: width .2s ease; }
.v2-diagnosis-question { padding: 27px 0 21px; }
.v2-diagnosis-question h3 { margin: 0 0 6px; color: var(--v2-navy); font-size: 24px; letter-spacing: -.07em; }
.v2-diagnosis-question p { margin: 0; color: var(--v2-muted); font-size: 12px; }
.v2-diagnosis-options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; margin-top: 21px; }
.v2-diagnosis-option { min-height: 62px; padding: 12px 13px; border: 1px solid var(--v2-line); border-radius: 11px; background: #fff; color: var(--v2-navy); text-align: left; font-size: 13px; font-weight: 800; line-height: 1.4; transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.v2-diagnosis-option:hover { border-color: #9db9d5; transform: translateY(-1px); }
.v2-diagnosis-option.is-selected { border-color: var(--v2-blue); background: #eef5ff; box-shadow: 0 0 0 3px rgba(46,109,180,.1); }
.v2-diagnosis-option small { display: block; margin-top: 3px; color: var(--v2-muted); font-size: 10px; font-weight: 500; }
.v2-diagnosis-actions { display: flex; justify-content: space-between; gap: 10px; padding-top: 16px; border-top: 1px solid #edf1f5; }
.v2-diagnosis-actions button { min-height: 43px; padding: 10px 15px; border-radius: 8px; font-size: 12px; font-weight: 900; }
.v2-diagnosis-prev { background: transparent; color: var(--v2-muted); }
.v2-diagnosis-next { background: var(--v2-orange); color: #fff; }
.v2-diagnosis-next:disabled { cursor: not-allowed; opacity: .4; }
.v2-diagnosis-result { display: grid; gap: 14px; }
.v2-result-badge { color: #279253; font-size: 11px; font-weight: 900; }
.v2-diagnosis-result h3 { margin: 5px 0 0; color: var(--v2-navy); font-size: 24px; letter-spacing: -.07em; }
.v2-result-summary { display: flex; flex-wrap: wrap; gap: 6px; }
.v2-result-chip { padding: 6px 9px; border-radius: 7px; background: #eef5ff; color: var(--v2-blue); font-size: 10px; font-weight: 800; }
.v2-result-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; }
.v2-result-item { padding: 13px; border-radius: 10px; background: #f6f8fa; }
.v2-result-item small, .v2-result-item strong { display: block; }
.v2-result-item small { color: var(--v2-muted); font-size: 10px; }
.v2-result-item strong { margin-top: 3px; color: var(--v2-navy); font-size: 13px; }
.v2-result-item--remove { background: var(--v2-orange-soft); }
.v2-result-item--remove strong { color: #ae4e13; }
.v2-result-price { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 17px; border-radius: 12px; background: var(--v2-navy); color: #fff; }
.v2-result-price small { color: #b8d0e5; font-size: 10px; }
.v2-result-price strong { color: #ffd1ab; font-size: 26px; letter-spacing: -.07em; }
.v2-diagnosis-result__actions { display: flex; gap: 8px; }

/* Cases */
.v2-filter-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 25px; }
.v2-filter { padding: 9px 13px; border: 1px solid var(--v2-line); border-radius: 99px; background: #fff; color: var(--v2-muted); font-size: 12px; font-weight: 800; }
.v2-filter.is-active, .v2-filter:hover { border-color: var(--v2-blue); background: #eef5ff; color: var(--v2-blue); }
.v2-case-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.v2-case-card { overflow: hidden; border: 1px solid var(--v2-line); border-radius: 16px; background: #fff; box-shadow: 0 7px 20px rgba(31,58,95,.05); }
.v2-case-card[hidden] { display: none; }
.v2-case-card__media { display: grid; min-height: 165px; place-items: center; overflow: hidden; background: #dce9f4; }
.v2-case-card__media img { width: 100%; height: 165px; object-fit: cover; }
.v2-case-card__body { padding: 19px; }
.v2-case-card__meta { color: var(--v2-orange); font-size: 10px; font-weight: 900; }
.v2-case-card h3 { margin: 8px 0; color: var(--v2-navy); font-size: 17px; letter-spacing: -.06em; }
.v2-case-card p { margin: 0; color: var(--v2-muted); font-size: 12px; line-height: 1.6; }
.v2-case-card__detail { display: grid; gap: 5px; margin-top: 13px; padding-top: 12px; border-top: 1px solid #edf1f5; color: var(--v2-muted); font-size: 11px; line-height: 1.5; }
.v2-case-card__detail strong { color: var(--v2-navy); }
.v2-case-note { margin: 22px 0 0; color: var(--v2-muted); font-size: 11px; }

/* FAQ */
.v2-faq-layout { display: grid; grid-template-columns: minmax(250px, .78fr) minmax(0, 1.22fr); align-items: start; gap: 75px; }
.v2-faq-list { display: grid; gap: 8px; }
.v2-faq-list details { padding: 19px 20px; border: 1px solid var(--v2-line); border-radius: 11px; background: #fff; }
.v2-faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; cursor: pointer; color: var(--v2-navy); font-size: 14px; font-weight: 800; list-style: none; }
.v2-faq-list summary::-webkit-details-marker { display: none; }
.v2-faq-list summary::after { color: var(--v2-orange); content: '+'; font-size: 22px; font-weight: 400; line-height: 1; }
.v2-faq-list details[open] summary::after { content: '−'; }
.v2-faq-list details p { margin: 14px 28px 0 0; color: var(--v2-muted); font-size: 12px; line-height: 1.7; }
.v2-policy-note { margin-top: 25px; padding: 13px 15px; border-left: 3px solid var(--v2-orange); background: var(--v2-orange-soft); color: #8b4b20; font-size: 11px; line-height: 1.6; }

/* Contact / 3-step form */
.v2-contact { background: var(--v2-navy-deep); color: #fff; }
.v2-contact-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(420px, 1.2fr); align-items: start; gap: 70px; }
.v2-contact-copy h2 { margin: 13px 0 14px; color: #fff; font-size: clamp(30px, 4vw, 47px); letter-spacing: -.09em; line-height: 1.25; }
.v2-contact-copy h2 span { color: #ffc395; }
.v2-contact-copy > p:not(.v2-eyebrow) { margin: 0; color: #bfd2e5; font-size: 15px; line-height: 1.75; }
.v2-contact-facts { display: grid; gap: 12px; margin-top: 32px; }
.v2-contact-fact { display: grid; gap: 2px; }
.v2-contact-fact small { color: #96b4cf; font-size: 10px; font-weight: 800; }
.v2-contact-fact strong, .v2-contact-fact a { color: #fff; font-size: 15px; }
.v2-form-card { padding: 31px; border-radius: 20px; background: #fff; color: var(--v2-text); box-shadow: 0 20px 50px rgba(0,0,0,.2); }
.v2-form-top { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 14px; border-bottom: 1px solid var(--v2-line); }
.v2-form-top strong { color: var(--v2-navy); font-size: 18px; letter-spacing: -.05em; }
.v2-form-top span { color: var(--v2-orange); font-size: 11px; font-weight: 900; }
.v2-form-progress { height: 4px; margin-top: 11px; overflow: hidden; border-radius: 99px; background: #edf1f5; }
.v2-form-progress span { display: block; width: 33.33%; height: 100%; border-radius: inherit; background: var(--v2-orange); transition: width .2s ease; }
.v2-form-step { padding-top: 24px; }
.v2-form-step[hidden] { display: none; }
.v2-form-step h3 { margin: 0 0 6px; color: var(--v2-navy); font-size: 21px; letter-spacing: -.06em; }
.v2-form-step > p { margin: 0 0 18px; color: var(--v2-muted); font-size: 12px; }
.v2-form-fields { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.v2-field { display: grid; gap: 6px; }
.v2-field--full { grid-column: 1 / -1; }
.v2-field label { color: var(--v2-navy); font-size: 11px; font-weight: 800; }
.v2-field label span { color: var(--v2-orange); }
.v2-field input, .v2-field select, .v2-field textarea { width: 100%; border: 1px solid var(--v2-line); border-radius: 8px; background: #fff; color: var(--v2-text); font: inherit; font-size: 13px; outline: 0; }
.v2-field input, .v2-field select { height: 43px; padding: 8px 11px; }
.v2-field textarea { min-height: 105px; padding: 10px 11px; resize: vertical; }
.v2-field input:focus, .v2-field select:focus, .v2-field textarea:focus { border-color: var(--v2-blue); box-shadow: 0 0 0 3px rgba(46,109,180,.12); }
.v2-field.is-invalid input, .v2-field.is-invalid select, .v2-field.is-invalid textarea { border-color: #d64141; }
.v2-field-error { min-height: 14px; color: #c42f2f; font-size: 10px; }
.v2-step-actions { display: flex; justify-content: space-between; gap: 10px; margin-top: 20px; }
.v2-step-actions button { min-height: 44px; padding: 10px 16px; border-radius: 8px; font-size: 12px; font-weight: 900; }
.v2-step-back { border: 1px solid var(--v2-line); background: #fff; color: var(--v2-muted); }
.v2-step-next, .v2-submit { background: var(--v2-orange); color: #fff; }
.v2-consent { display: flex; align-items: flex-start; gap: 8px; margin-top: 16px; color: var(--v2-muted); font-size: 11px; line-height: 1.5; }
.v2-consent input { margin-top: 2px; accent-color: var(--v2-blue); }
.v2-consent a { color: var(--v2-blue); text-decoration: underline; }
.v2-form-status { min-height: 19px; margin: 12px 0 0; color: #c42f2f; font-size: 11px; }
.v2-form-status.is-success { color: #25874d; }
.v2-confirmation { padding: 20px 0 4px; text-align: center; }
.v2-confirmation__icon { display: grid; width: 48px; height: 48px; margin: 0 auto 14px; place-items: center; border-radius: 50%; background: #dff5e7; color: #268d51; font-size: 23px; font-weight: 900; }
.v2-confirmation h3 { margin: 0 0 8px; color: var(--v2-navy); font-size: 22px; letter-spacing: -.06em; }
.v2-confirmation p { margin: 0; color: var(--v2-muted); font-size: 12px; line-height: 1.7; }
.v2-receipt { display: inline-block; margin-top: 17px; padding: 8px 12px; border-radius: 8px; background: #f3f6f8; color: var(--v2-blue); font-size: 11px; font-weight: 900; letter-spacing: .05em; }

/* Footer / about */
.v2-footer-slogan { color: var(--v2-muted); font-size: 12px; line-height: 1.6; }
.v2-footer-todo { color: var(--v2-orange); font-size: 10px; }
.v2-subpage-hero { padding: 92px 0; background: linear-gradient(120deg, var(--v2-navy-deep), var(--v2-navy)); color: #fff; }
.v2-subpage-hero h1 { margin: 18px 0 13px; color: #fff; font-size: clamp(36px, 5vw, 58px); letter-spacing: -.1em; line-height: 1.2; }
.v2-subpage-hero p:not(.v2-eyebrow) { max-width: 640px; margin: 0; color: #c7dced; font-size: 16px; line-height: 1.8; }
.v2-subpage-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.v2-about-problem { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.v2-problem-card { padding: 25px; border: 1px solid var(--v2-line); border-radius: 15px; background: #fff; }
.v2-problem-card strong { display: block; color: var(--v2-orange); font-size: 12px; }
.v2-problem-card h3 { margin: 12px 0 7px; color: var(--v2-navy); font-size: 18px; letter-spacing: -.06em; }
.v2-problem-card p { margin: 0; color: var(--v2-muted); font-size: 13px; line-height: 1.65; }
.v2-process { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; }
.v2-process-item { position: relative; padding: 18px 15px; text-align: center; }
.v2-process-item:not(:last-child)::after { position: absolute; top: 34px; right: -8px; width: 16px; height: 1px; background: #aac0d3; content: ''; }
.v2-process-item > span { display: grid; width: 39px; height: 39px; margin: 0 auto 13px; place-items: center; border-radius: 50%; background: var(--v2-orange); color: #fff; font-size: 12px; font-weight: 900; }
.v2-process-item h3 { margin: 0 0 5px; color: var(--v2-navy); font-size: 15px; letter-spacing: -.05em; }
.v2-process-item p { margin: 0; color: var(--v2-muted); font-size: 11px; line-height: 1.5; }
.v2-method-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 55px; }
.v2-brand-list { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 25px; }
.v2-brand-list span { padding: 11px 13px; border: 1px solid var(--v2-line); border-radius: 8px; background: #fff; color: var(--v2-navy); font-size: 12px; font-weight: 800; }
.v2-company-info { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 35px; margin-top: 25px; }
.v2-company-info div { padding: 11px 0; border-bottom: 1px solid var(--v2-line); }
.v2-company-info dt { color: var(--v2-muted); font-size: 10px; }
.v2-company-info dd { margin: 3px 0 0; color: var(--v2-navy); font-size: 13px; font-weight: 800; }
.v2-pdf-placeholder { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 28px; padding: 18px 20px; border: 1px dashed #a7bbcd; border-radius: 12px; background: #f5f8fb; }
.v2-pdf-placeholder p { margin: 0; color: var(--v2-muted); font-size: 12px; }
.v2-pdf-placeholder button { min-height: 38px; padding: 8px 12px; border-radius: 7px; background: #d8e2eb; color: #7890a6; font-size: 11px; font-weight: 800; }

@media (max-width: 900px) {
  .v2-hero__grid, .v2-proof-layout, .v2-diagnosis-layout, .v2-faq-layout, .v2-contact-layout, .v2-method-layout { grid-template-columns: 1fr; gap: 35px; }
  .v2-diagnosis-intro { position: static; }
  .v2-strength-grid { grid-template-columns: repeat(2, 1fr); }
  .v2-scenario-grid { grid-template-columns: repeat(3, 1fr); }
  .v2-contact-layout { gap: 40px; }
}

@media (max-width: 640px) {
  .v2-container { width: min(100% - 32px, 560px); }
  .v2-section { padding: 72px 0; }
  .v2-hero__grid { min-height: auto; gap: 37px; padding-top: 55px; padding-bottom: 65px; }
  .v2-hero h1 { font-size: clamp(35px, 10vw, 48px); }
  .v2-hero__lead { font-size: 15px; }
  .v2-hero__visual, .v2-hero__visual img { min-height: 255px; height: 255px; }
  .v2-strength-grid, .v2-scenario-grid, .v2-case-grid, .v2-about-problem { grid-template-columns: 1fr; }
  .v2-strength-card { min-height: 0; }
  .v2-checklist, .v2-diagnosis-options, .v2-result-grid, .v2-form-fields, .v2-company-info { grid-template-columns: 1fr; }
  .v2-proposal { grid-template-columns: 1fr; }
  .v2-proposal__image { min-height: 115px; }
  .v2-diagnosis-card, .v2-form-card { padding: 22px 19px; }
  .v2-diagnosis-question h3 { font-size: 21px; }
  .v2-process { grid-template-columns: 1fr; gap: 8px; }
  .v2-process-item { display: grid; grid-template-columns: 39px 1fr; gap: 12px; padding: 10px; text-align: left; }
  .v2-process-item > span { grid-row: span 2; margin: 0; }
  .v2-process-item:not(:last-child)::after { top: auto; right: auto; bottom: -8px; left: 29px; width: 1px; height: 16px; }
  .v2-pdf-placeholder { align-items: flex-start; flex-direction: column; }
}
