/* ── Signal 섹션 ── */
#signal { padding:72px 0; background:var(--dark-section-bg); }
.signal-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(200,221,168,0.12); margin:44px 0; }
.signal-card { background:rgba(255,255,255,0.04); padding:36px 28px; text-align:center; transition:background 0.3s; }
.signal-card:hover { background:rgba(255,255,255,0.08); }
.signal-icon { font-size:28px; margin-bottom:14px; }
.signal-card h3 { font-size:15px; font-weight:500; color:var(--dark-section-text); margin-bottom:10px; line-height:1.5; }
.signal-card p { font-size:13px; color:var(--dark-section-sub); line-height:1.8; }
.signal-bottom { background:rgba(255,255,255,0.05); border:1px solid rgba(200,221,168,0.18); border-left:3px solid var(--gold); padding:18px 24px; font-size:14px; color:var(--dark-section-sub); line-height:1.85; text-align:center; margin-bottom:28px; }
.signal-bottom strong { color:var(--dark-section-text); }
.signal-num { font-family:var(--serif); font-size:42px; font-weight:300; color:var(--gold); line-height:1; margin-bottom:8px; }
.signal-label { font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:rgba(200,221,168,0.6); margin-bottom:10px; }
.signal-desc { font-size:13px; color:rgba(200,221,168,0.5); line-height:1.8; font-weight:400; }

/* ── hero headline hl ── */
.hero-headline .hl { position:relative; display:inline; }

/* ── about / why 섹션 ── */
#about { padding:100px 0; }
.why-card { background:#fff; border:1px solid rgba(196,162,74,0.12); padding:32px 36px; margin-bottom:16px; }
.why-num { font-family:var(--serif); font-size:36px; color:var(--gold); font-weight:300; margin-bottom:14px; opacity:0.7; }
.why-card h3 { font-family:var(--serif); font-size:18px; font-weight:400; color:var(--ink); margin-bottom:10px; line-height:1.5; }
.why-card p { font-size:14px; color:var(--ink3); line-height:1.9; }
:root {
  /* GPT 제안 팔레트 */
  --green:       #4a7c35;
  --green-light: #6a9e50;
  --green-dark:  #2E3A23;
  --green-pale:  #eaf0e0;
  --green-mist:  #f0f4e8;
  --gold:        #BFA46A;
  --gold-dark:   #8a6e30;
  --gold-pale:   #f5edd8;
  --bg:          #F5F5F0;
  --bg2:         #EDEAE2;
  --ink:         #1a1a16;
  --ink2:        #2e2e28;
  --ink3:        #58584e;
  --ink-faint:   #98988e;
  --dark-section-bg:   #1F2A18;
  --dark-section-text: #e8f0de;
  --dark-section-sub:  #8aaa68;
  --serif: 'Cormorant Garamond', 'Noto Serif KR', serif;
  --sans:  'Noto Sans KR', sans-serif;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--ink); font-family:var(--sans); font-weight:300; line-height:1.8; overflow-x:hidden; }
body::before {
  content:''; position:fixed; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(ellipse 70% 50% at 10% 0%, rgba(196,162,74,0.05) 0%, transparent 55%),
    radial-gradient(ellipse 50% 70% at 90% 100%, rgba(58,96,24,0.07) 0%, transparent 55%);
}

/* NAV */
nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 5%; height:68px;
  background:rgba(250,250,246,0.97); backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(196,162,74,0.18);
}
.nav-logo { text-decoration:none; display:flex; align-items:center; gap:12px; }
.nav-logo img { height:48px; width:auto; display:block; }
.nav-logo-text { font-family:var(--serif); font-size:16px; font-weight:600; color:var(--green-dark); letter-spacing:0.06em; border-left:1.5px solid rgba(196,162,74,0.28); padding-left:12px; }
.nav-links { display:flex; align-items:center; gap:24px; list-style:none; }
.nav-links a { font-size:15px; font-weight:600; color:var(--ink2); text-decoration:none; letter-spacing:0.04em; transition:color 0.2s; }
.nav-links a:hover { color:var(--gold-dark); }
.nav-cta { font-size:13px; font-weight:600; padding:10px 24px; border:none; color:#fff; background:var(--green-dark); cursor:pointer; font-family:var(--sans); letter-spacing:0.08em; transition:all 0.25s; }
.nav-cta:hover { background:var(--ink); }

/* 공통 */
section { position:relative; z-index:1; }
.section-inner { max-width:1100px; margin:0 auto; padding:0 5%; }
.section-label { font-size:13px; letter-spacing:0.16em; text-transform:uppercase; color:var(--gold-dark); font-weight:500; margin-bottom:14px; display:flex; align-items:center; gap:10px; }
.section-label::after { content:''; display:block; width:28px; height:1px; background:var(--green-dark); opacity:0.5; }
.section-title { font-family:var(--serif); font-size:clamp(26px,3.8vw,44px); font-weight:300; line-height:1.4; color:var(--ink); margin-bottom:18px; letter-spacing:0.02em; }
.section-title em { font-style:normal; color:var(--gold-dark); }
.section-sub { font-size:15px; color:var(--ink3); line-height:1.9; font-weight:300; max-width:580px; }
.green-line { width:40px; height:2px; background:var(--green-dark); opacity:0.5; margin:28px 0; }

/* 히어로 3선택지 */
.hero-choices { margin-top:28px; }
.hero-choices-label { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--ink3); margin-bottom:14px; }
.hero-choice-btns { display:flex; flex-direction:column; gap:10px; max-width:480px; }
.hero-choice-btn { display:flex; align-items:center; gap:14px; background:rgba(255,255,255,0.72); border:1px solid rgba(196,162,74,0.22); padding:14px 20px; cursor:pointer; font-family:var(--sans); font-size:14px; color:var(--ink2); font-weight:400; text-align:left; transition:all 0.2s; border-radius:2px; backdrop-filter:blur(4px); }
.hero-choice-btn:hover { background:#fff; border-color:var(--gold-dark); color:var(--ink); box-shadow:0 2px 12px rgba(196,162,74,0.1); }
.hero-choice-btn::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--green-dark); flex-shrink:0; opacity:0.7; }
.hero-choice-btn span { font-size:11px; color:var(--green-dark); margin-left:auto; flex-shrink:0; opacity:0.8; }
.divider { border:none; border-top:1px solid rgba(196,162,74,0.13); }

/* 버튼 */
.btn-primary { display:inline-block; font-size:13px; font-weight:500; padding:16px 32px; background:var(--green-dark); color:#FAF7F2; border:none; cursor:pointer; font-family:var(--sans); letter-spacing:0.06em; transition:all 0.25s; box-shadow:0 2px 14px rgba(28,58,24,0.18); text-decoration:none; }
.btn-primary:hover { background:var(--ink); box-shadow:0 4px 20px rgba(28,58,24,0.25); }
.btn-outline { display:inline-block; font-size:13px; font-weight:400; padding:16px 32px; border:1px solid rgba(196,162,74,0.5); color:var(--green-dark); background:transparent; cursor:pointer; font-family:var(--sans); letter-spacing:0.06em; transition:all 0.25s; text-decoration:none; }
.btn-outline:hover { background:var(--gold-pale); border-color:var(--gold-dark); }

/* ABOUT */
#about { padding:100px 0; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.about-text p { font-size:15px; color:var(--ink3); line-height:1.95; margin-bottom:18px; }
.about-text p strong { color:var(--green-dark); font-weight:500; }
.about-stat-box { background:#fff; border:1px solid rgba(196,162,74,0.18); border-top:3px solid var(--green); padding:40px; box-shadow:0 4px 24px rgba(196,162,74,0.08); }
.stat-row { display:flex; align-items:baseline; gap:12px; padding:18px 0; border-bottom:1px solid rgba(196,162,74,0.1); }
.stat-row:first-child { padding-top:0; }
.stat-row:last-child { border-bottom:none; padding-bottom:0; }
.stat-num { font-family:var(--serif); font-size:30px; color:var(--green-dark); font-weight:400; line-height:1; }
.stat-label { font-size:13px; color:var(--ink3); }

#about .section-title { font-size:clamp(22px, 3vw, 36px); white-space:nowrap; }
#why { padding:100px 0; background:var(--bg2); }
.why-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:rgba(196,162,74,0.13); margin-top:52px; }
.why-card { background:#fff; padding:40px; transition:all 0.3s; }
.why-card:hover { background:var(--bg2); box-shadow:0 4px 20px rgba(196,162,74,0.1); }
.why-num { font-size:11px; color:var(--ink-faint); letter-spacing:0.2em; margin-bottom:18px; }
.why-card h3 { font-family:var(--serif); font-size:17px; font-weight:400; color:var(--ink); margin-bottom:12px; line-height:1.55; }
.why-card p { font-size:14px; color:var(--ink3); line-height:1.9; }

/* 서비스 */
#services { padding:100px 0; }
.services-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:52px; }
.service-card { background:#fff; border:1px solid rgba(196,162,74,0.12); padding:32px 36px 36px; position:relative; overflow:hidden; transition:all 0.3s; box-shadow:0 1px 12px rgba(28,28,20,0.03); }
.service-card::before { content:''; position:absolute; top:0; left:0; width:2px; height:100%; background:var(--gold); transform:scaleY(0); transform-origin:top; transition:transform 0.3s; }
.service-card:hover { border-color:rgba(196,162,74,0.28); box-shadow:0 6px 32px rgba(28,28,20,0.07); transform:translateY(-2px); }
.service-card:hover::before { transform:scaleY(1); }
.service-tag { display:inline-block; font-size:13px; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold-dark); background:transparent; border:none; border-bottom:1px solid rgba(196,162,74,0.4); padding:0 0 4px 0; margin-bottom:14px; font-weight:500; }
.service-card h3 { font-family:var(--serif); font-size:22px; font-weight:300; color:var(--ink); margin-bottom:14px; line-height:1.35; letter-spacing:-0.01em; }
.service-card p { font-size:13.5px; color:var(--ink3); line-height:1.95; margin-bottom:20px; font-weight:300; }
.service-points { list-style:none; margin-bottom:24px; }
.service-points li { font-size:12.5px; color:var(--ink-faint); padding:7px 0; border-bottom:1px solid rgba(196,162,74,0.06); display:flex; align-items:center; gap:12px; letter-spacing:0.01em; }
.service-points li::before { content:''; width:12px; height:1px; background:var(--gold); flex-shrink:0; opacity:0.6; }
.service-cta { font-size:12px; color:var(--green-dark); letter-spacing:0.08em; text-decoration:none; display:inline-flex; align-items:center; gap:8px; cursor:pointer; background:none; border:none; font-family:var(--sans); transition:gap 0.2s; }
.service-cta::after { content:'→'; }
.service-cta:hover { gap:12px; }
.service-card.featured { background:linear-gradient(135deg, #f8f3e8 0%, #faf7f2 100%); border-color:rgba(196,162,74,0.25); grid-column:1/-1; box-shadow:0 4px 24px rgba(196,162,74,0.13); }
.service-card.featured::before { height:2px; width:100%; transform:scaleX(1); background:var(--gold); }
.service-card.featured h3 { font-size:22px; }

/* 작명소 불신 강조 블록 — 옵션 B */
.naming-doubt-block {
  margin-top:20px;
  border-top:1px solid rgba(196,162,74,0.13);
  padding-top:16px;
}
.naming-doubt-label {
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:10px;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:#8B2A20;
  font-weight:600;
  margin-bottom:10px;
}
.naming-doubt-label::before {
  content:'';
  display:inline-block;
  width:6px; height:6px;
  background:#C0392B;
  border-radius:50%;
  animation:ndBlink 1.6s ease-in-out infinite;
}
@keyframes ndBlink {
  0%,100%{opacity:1;} 50%{opacity:0.3;}
}
.naming-chips {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
  margin-bottom:10px;
}
.naming-chip {
  font-size:12px;
  color:#5C2020;
  background:#FFF8F7;
  border:1px solid rgba(192,57,43,0.18);
  border-radius:4px;
  padding:8px 10px;
  line-height:1.55;
}
.naming-diff-strip {
  background:#EAF3DC;
  border:1px solid rgba(196,162,74,0.22);
  border-left:3px solid var(--green);
  border-radius:0 4px 4px 0;
  padding:12px 14px;
  margin-bottom:24px;
}
.naming-diff-strip p {
  font-size:12px;
  color:var(--green-dark);
  line-height:1.75;
  margin:0;
}
.naming-diff-strip strong {
  font-weight:600;
}

/* 진단 */
#diagnosis { padding:64px 0 48px; background:var(--bg2); }
.diag-container { max-width:700px; margin:0 auto; }
.trust-bar { background:#fff; border:1px solid rgba(196,162,74,0.18); border-left:3px solid var(--green); padding:18px 22px; margin-bottom:28px; display:flex; align-items:flex-start; gap:14px; }
.trust-bar-icon { color:var(--gold-dark); font-size:18px; flex-shrink:0; margin-top:2px; }
.trust-bar p { font-size:13px; color:var(--ink3); line-height:1.8; }
.trust-bar p strong { color:var(--ink2); }
.diag-tabs { display:flex; border-bottom:1px solid rgba(196,162,74,0.13); margin-bottom:32px; }
.diag-tab { font-size:13px; color:var(--ink3); padding:13px 22px; cursor:pointer; border:none; background:none; font-family:var(--sans); position:relative; bottom:-1px; transition:all 0.2s; letter-spacing:0.03em; border-bottom:2px solid transparent; }
.diag-tab.active { color:var(--green-dark); border-bottom:2px solid var(--green); }
.diag-tab:hover { color:var(--ink2); }
.diag-form { display:none; }
.diag-form.active { display:block; }
.form-group { margin-bottom:18px; }
.form-label { display:block; font-size:11px; letter-spacing:0.15em; text-transform:uppercase; color:var(--green-dark); margin-bottom:8px; }
.form-input, .form-select, .form-textarea { width:100%; background:#fff; border:1px solid rgba(196,162,74,0.22); color:var(--ink); font-family:var(--sans); font-size:15px; font-weight:300; padding:13px 16px; outline:none; transition:all 0.2s; -webkit-appearance:none; box-shadow:inset 0 1px 4px rgba(44,50,32,0.04); }
.form-input:focus, .form-select:focus, .form-textarea:focus { border-color:var(--gold-dark); box-shadow:0 0 0 3px rgba(196,162,74,0.1); }
.form-input::placeholder { color:var(--ink-faint); }
.form-select option { background:#fff; }
.form-textarea { resize:vertical; min-height:80px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.diag-submit { width:100%; margin-top:6px; padding:17px; font-size:14px; font-weight:500; letter-spacing:0.08em; background:var(--green-dark); color:#fff; border:none; cursor:pointer; font-family:var(--sans); transition:background 0.2s; box-shadow:0 2px 12px rgba(196,162,74,0.2); }
.diag-submit:hover { background:var(--green-dark); }
.diag-submit:disabled { background:var(--ink-faint); cursor:not-allowed; }

/* 결과 */
#result-box { display:none; margin-top:36px; border:1px solid rgba(196,162,74,0.2); background:#fff; box-shadow:0 4px 24px rgba(44,50,32,0.08); }
.result-header { padding:24px 28px 20px; border-bottom:1px solid rgba(196,162,74,0.1); }
.result-title { font-family:var(--serif); font-size:16px; color:var(--ink3); font-weight:400; margin-bottom:14px; }
.result-grade { display:inline-block; font-size:22px; font-weight:700; letter-spacing:0.06em; padding:14px 32px; border:2px solid; border-radius:2px; font-family:var(--serif); }
.result-grade.stable { border-color:rgba(78,122,50,0.5); color:var(--green-dark); background:var(--gold-pale); }
.result-grade.caution { border-color:rgba(180,130,40,0.5); color:#7A5C10; background:#FBF5E0; }
.result-grade.review { border-color:rgba(180,70,60,0.4); color:#8B2A20; background:#FFF0EE; }
/* 등급별 왼쪽 강조 바 */
.result-grade-wrap { display:flex; align-items:center; gap:16px; margin-bottom:4px; }
.result-grade-icon { font-size:32px; }
.result-body { padding:28px; }
.result-points { list-style:none; margin-bottom:24px; }
.result-points li { font-size:14px; color:var(--ink3); padding:11px 0; border-bottom:1px solid rgba(196,162,74,0.07); display:flex; gap:12px; line-height:1.7; }
.point-icon { font-size:15px; flex-shrink:0; margin-top:2px; }
.result-blur-box { background:var(--bg2); border:1px solid rgba(196,162,74,0.1); padding:20px; margin-bottom:20px; position:relative; overflow:hidden; min-height:80px; }
.result-blur-text { font-size:14px; color:var(--ink3); line-height:1.7; filter:blur(4px); user-select:none; }
.result-blur-overlay { position:absolute; inset:0; background:linear-gradient(to bottom, transparent 0%, var(--bg2) 45%); }
.urgency-block { background:var(--bg2); border-top:1px solid rgba(196,162,74,0.13); padding:24px 28px; }
.urgency-text { font-size:14px; color:var(--ink3); line-height:1.9; margin-bottom:16px; }
.urgency-warning { background:#fff; border:1px solid rgba(196,162,74,0.13); border-left:3px solid rgba(196,162,74,0.5); padding:14px 18px; font-size:13px; color:var(--ink3); line-height:1.8; }
.urgency-warning strong { color:var(--ink2); }
.funnel-cta { background:linear-gradient(135deg, #EAF3DC 0%, #F2F7EB 100%); border-top:1px solid rgba(196,162,74,0.18); padding:28px; }
.funnel-label { font-size:11px; letter-spacing:0.15em; color:var(--ink3); text-transform:uppercase; text-align:center; margin-bottom:18px; }
.funnel-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:20px; }
.funnel-card { background:#fff; border:1px solid rgba(196,162,74,0.13); padding:16px 12px; text-align:center; box-shadow:0 1px 6px rgba(44,50,32,0.05); }
.funnel-card.featured { border:2px solid var(--green); background:var(--gold-pale); position:relative; }
.funnel-card.featured::before { content:'추천'; position:absolute; top:-10px; left:50%; transform:translateX(-50%); background:var(--green-dark); color:#fff; font-size:10px; padding:3px 10px; letter-spacing:0.06em; white-space:nowrap; }
.funnel-tier { font-size:10px; letter-spacing:0.1em; color:var(--ink3); text-transform:uppercase; margin-bottom:6px; }
.funnel-card.featured .funnel-tier { color:var(--green-dark); }
.funnel-name { font-size:13px; font-weight:500; color:var(--ink); margin-bottom:4px; line-height:1.4; }
.funnel-price { font-size:11px; color:var(--ink3); }
.funnel-card.featured .funnel-price { color:var(--green-dark); }
.funnel-btn-row { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.funnel-note { text-align:center; font-size:12px; color:var(--ink3); margin-top:12px; }

/* 블로그 카드 */
.blog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:36px; }
.blog-card { background:#fff; border:1px solid rgba(196,162,74,0.13); padding:28px 24px; display:flex; flex-direction:column; gap:12px; transition:all 0.25s; cursor:pointer; }
.blog-card:hover { border-color:rgba(196,162,74,0.38); box-shadow:0 4px 20px rgba(196,162,74,0.1); }
.blog-card.open { border-color:rgba(196,162,74,0.5); box-shadow:0 4px 24px rgba(196,162,74,0.1); }
.blog-tag { font-size:10px; letter-spacing:0.14em; color:var(--green-dark); background:var(--gold-pale); border:1px solid rgba(196,162,74,0.22); padding:3px 10px; display:inline-block; width:fit-content; }
.blog-title { font-family:var(--serif); font-size:17px; font-weight:400; color:var(--ink); line-height:1.55; }
.blog-desc { font-size:13px; color:var(--ink3); line-height:1.85; }
.blog-more { font-size:12px; color:var(--green-dark); letter-spacing:0.08em; display:inline-flex; align-items:center; gap:4px; transition:all 0.2s; margin-top:4px; user-select:none; }
.blog-card.open .blog-more { color:var(--ink3); }
.blog-expand { display:none; border-top:1px solid rgba(196,162,74,0.13); padding-top:16px; margin-top:4px; }
.blog-expand p { font-size:13px; color:var(--ink3); line-height:1.9; margin-bottom:12px; }
.blog-expand strong { color:var(--ink2); font-weight:500; }
.blog-points { list-style:none; margin-bottom:16px; }
.blog-points li { font-size:12px; color:var(--ink3); padding:5px 0; border-bottom:1px solid rgba(196,162,74,0.08); display:flex; align-items:flex-start; gap:8px; line-height:1.6; }
.blog-points li::before { content:''; width:4px; height:1px; background:var(--green-dark); flex-shrink:0; margin-top:9px; }
.blog-full-link { font-size:12px; color:var(--green-dark); letter-spacing:0.06em; text-decoration:none; display:inline-flex; align-items:center; gap:4px; border-bottom:1px solid rgba(196,162,74,0.28); padding-bottom:1px; }

/* 원장 */
#director { padding:100px 0; }
.director-grid { display:grid; grid-template-columns:340px 1fr; gap:72px; align-items:start; }
.director-photo { background:var(--bg2); border:1px solid rgba(196,162,74,0.18); aspect-ratio:3/4; display:flex; align-items:center; justify-content:center; }
.director-photo-placeholder { text-align:center; }
.initial { font-family:var(--serif); font-size:68px; color:rgba(196,162,74,0.38); display:block; }
.director-photo-placeholder p { font-size:12px; color:var(--ink-faint); letter-spacing:0.1em; margin-top:10px; }
.director-info h3 { font-family:var(--serif); font-size:26px; font-weight:400; color:var(--ink); margin-bottom:6px; }
.director-role { font-size:14px; color:var(--gold-dark); letter-spacing:0.15em; text-transform:uppercase; margin-bottom:28px; }
.director-phil { font-size:15px; color:var(--ink2); line-height:1.95; margin-bottom:28px; border-left:3px solid var(--green); padding-left:22px; font-family:var(--serif); font-style:italic; }
.director-specs { list-style:none; }
.director-specs li { font-size:13px; color:var(--ink3); padding:10px 0; border-bottom:1px solid rgba(196,162,74,0.1); display:flex; gap:16px; }
.spec-label { color:var(--gold-dark); font-size:11px; letter-spacing:0.1em; text-transform:uppercase; min-width:90px; flex-shrink:0; display:flex; align-items:flex-start; padding-top:2px; }

/* 대상 */
#target { padding:100px 0; background:var(--bg2); }
.target-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(196,162,74,0.13); margin-top:52px; }
.target-item { background:#fff; padding:32px; transition:all 0.3s; }
.target-item:hover { background:var(--gold-pale); }
.target-num { font-size:11px; color:var(--ink-faint); letter-spacing:0.2em; margin-bottom:14px; }
.target-item p { font-size:14px; color:var(--ink3); line-height:1.9; }

/* 후기 */
#reviews { padding:100px 0; }
.reviews-header-bar { display:inline-flex; align-items:center; gap:10px; background:var(--gold-pale); border:1px solid rgba(196,162,74,0.18); padding:8px 18px; margin-bottom:32px; font-size:12px; color:var(--ink3); }
.reviews-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.review-card { background:#fff; border:1px solid rgba(196,162,74,0.13); border-top:3px solid var(--gold-pale); padding:32px; box-shadow:0 2px 14px rgba(44,50,32,0.05); }
.review-type { font-size:10px; letter-spacing:0.18em; text-transform:uppercase; color:var(--green-dark); margin-bottom:14px; }
.review-text { font-family:var(--serif); font-size:15px; color:var(--ink2); line-height:1.9; font-weight:300; margin-bottom:20px; }
.review-text::before { content:'"'; color:var(--gold-dark); font-size:26px; line-height:0; vertical-align:-9px; margin-right:3px; }
.review-text::after  { content:'"'; color:var(--gold-dark); font-size:26px; line-height:0; vertical-align:-9px; margin-left:3px; }
.review-meta { display:flex; align-items:center; gap:10px; font-size:12px; color:var(--ink-faint); }
.review-dot { width:5px; height:5px; border-radius:50%; background:var(--green-dark); flex-shrink:0; }
.review-divider { grid-column:1/-1; display:flex; align-items:center; gap:16px; padding:8px 0; }
.review-divider-line { flex:1; height:1px; background:rgba(196,162,74,0.13); }
.review-divider-label { font-size:10px; letter-spacing:0.18em; color:var(--green-dark); text-transform:uppercase; white-space:nowrap; }
.review-cta-bar { grid-column:1/-1; margin-top:8px; background:var(--bg2); border:1px solid rgba(196,162,74,0.18); padding:28px 36px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; }
.review-cta-text { font-family:var(--serif); font-size:17px; color:var(--ink); line-height:1.55; }
.review-cta-text span { color:var(--green-dark); }
.review-cta-btns { display:flex; gap:10px; flex-wrap:wrap; }

/* 인생통찰 */
/* ── 인생통찰 섹션 리디자인 ── */
#insight { padding: 0; background: var(--dark-section-bg); }
.insight-hero {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 0;
  min-height: 560px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 5%;
}
.insight-hero-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-right: 64px;
  border-right: 1px solid rgba(191,164,106,0.12);
}
.insight-headline {
  font-family: var(--serif);
  font-size: clamp(28px, 3.2vw, 42px);
  font-weight: 300;
  color: var(--dark-section-text);
  line-height: 1.4;
  letter-spacing: 0.01em;
  word-break: keep-all;
  margin: 16px 0 24px;
}
.insight-headline em {
  font-style: normal;
  color: var(--gold);
  display: block;
}
.insight-lead {
  font-size: 15px;
  color: rgba(232,240,222,0.55);
  line-height: 2;
  font-weight: 300;
  margin-bottom: 36px;
}
.insight-cta {
  display: inline-block;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--dark-section-bg);
  background: var(--gold);
  padding: 16px 32px;
  text-decoration: none;
  align-self: flex-start;
  transition: background 0.2s;
}
.insight-cta:hover { background: #d4b878; }

/* 오른쪽 */
.insight-hero-right {
  padding-left: 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 40px;
}

/* 비교 카드 */
.insight-diff-card {
  border: 1px solid rgba(191,164,106,0.18);
  background: rgba(255,255,255,0.03);
}
.insight-diff-row {
  padding: 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.insight-diff-row--main {
  background: rgba(191,164,106,0.06);
  border-top: 1px solid rgba(191,164,106,0.15);
}
.insight-diff-label {
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  opacity: 0.7;
  font-weight: 500;
}
.insight-diff-row--main .insight-diff-label { opacity: 1; }
.insight-diff-desc {
  font-size: 13.5px;
  color: rgba(232,240,222,0.5);
  line-height: 1.7;
  font-weight: 300;
}
.insight-diff-row--main .insight-diff-desc { color: rgba(232,240,222,0.8); }
.insight-diff-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 24px;
  border-top: 1px solid rgba(191,164,106,0.1);
  border-bottom: 1px solid rgba(191,164,106,0.1);
  background: rgba(191,164,106,0.04);
}
.insight-diff-divider span {
  font-size: 11px;
  color: rgba(191,164,106,0.5);
  letter-spacing: 0.06em;
  padding: 8px 0;
  white-space: nowrap;
}
.insight-diff-divider::before,
.insight-diff-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: rgba(191,164,106,0.15);
}

/* 4 pillars */
.insight-pillars {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: rgba(191,164,106,0.1);
}
.insight-pillar {
  background: var(--dark-section-bg);
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.insight-pillar-num {
  font-size: 9px;
  letter-spacing: 0.2em;
  color: rgba(191,164,106,0.4);
  font-family: var(--serif);
}
.insight-pillar strong {
  font-family: var(--serif);
  font-size: 15px;
  font-weight: 400;
  color: var(--dark-section-text);
}
.insight-pillar p {
  font-size: 12px;
  color: rgba(232,240,222,0.4);
  line-height: 1.6;
  font-weight: 300;
  margin: 0;
}

@media (max-width: 900px) {
  .insight-hero { grid-template-columns: 1fr; padding: 60px 5%; }
  .insight-hero-left { padding-right: 0; border-right: none; border-bottom: 1px solid rgba(191,164,106,0.12); padding-bottom: 48px; margin-bottom: 48px; }
  .insight-hero-right { padding-left: 0; }
}

/* FAQ */
#faq { padding:100px 0; background:var(--bg2); }
.faq-list { max-width:700px; margin-top:48px; }
.faq-item { border-bottom:1px solid rgba(196,162,74,0.13); }
.faq-question { width:100%; text-align:left; background:none; border:none; color:var(--ink); font-family:var(--sans); font-size:15px; font-weight:400; padding:22px 0; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; letter-spacing:0.02em; }
.faq-icon { width:20px; height:20px; border:1px solid rgba(196,162,74,0.28); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:14px; color:var(--green-dark); transition:all 0.2s; }
.faq-item.open .faq-icon { background:var(--green-dark); color:#fff; border-color:var(--gold-dark); }
.faq-answer { font-size:14px; color:var(--ink3); line-height:1.9; max-height:0; overflow:hidden; transition:max-height 0.35s ease, padding 0.35s ease; }
.faq-item.open .faq-answer { max-height:200px; padding-bottom:22px; }

/* 최종 CTA */
#cta-final { padding:100px 0; text-align:center; background:#fff; position:relative; overflow:hidden; }
#cta-final::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 70% 60% at 50% 50%, rgba(196,162,74,0.09) 0%, transparent 70%); pointer-events:none; }
.cta-final-inner { position:relative; z-index:1; }
.cta-final-inner .section-label { justify-content:center; }
.cta-final-inner .section-label::after { display:none; }
.cta-final-inner .section-label::before { content:''; display:block; width:28px; height:1px; background:var(--green-dark); opacity:0.5; }
.cta-final-inner .section-title { max-width:600px; margin:0 auto 14px; }
.cta-final-inner .section-sub { max-width:460px; margin:0 auto 40px; text-align:center; }
.cta-btn-row { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-bottom:36px; }
.cta-note { font-size:14px; color:var(--ink3); line-height:1.9; max-width:440px; margin:0 auto; font-style:italic; font-family:var(--serif); }

/* 푸터 */
/* 소셜 아이콘 */
/* 사업자 정보 */


/* 소셜 프루프 — 밝은 배경으로 복원 (경계 강조) */
#sp-stream {
  background:#fff;
  border:1px solid rgba(90,144,32,0.2);
  border-bottom:none;
  max-width:100%;
  margin:0;
  overflow:hidden;
  max-height:220px;
}
#sp-stream-wrap {
  padding:20px 5% 0;
  background:var(--bg2);
  border-top:2px solid rgba(90,144,32,0.25);
}
.sp-stream-label {
  font-size:13px; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--green-dark); font-weight:500; margin-bottom:12px; display:flex;
  align-items:center; gap:8px;
}
.sp-stream-label::before {
  content:''; width:7px; height:7px; border-radius:50%;
  background:var(--green-dark); animation:spPulse 1.8s ease infinite;
}
#sp-list { display:flex; flex-direction:column; }
.sp-row {
  display:flex; align-items:center;
  background:rgba(232,238,216,0.6);
  border-top:1px solid rgba(196,162,74,0.1);
  padding:8px 16px;
  animation:spSlideIn 0.35s cubic-bezier(0.34,1.2,0.64,1) both;
}
.sp-row:first-child { border-top:none; }
@keyframes spSlideIn { from{transform:translateY(100%);opacity:0;} to{transform:translateY(0);opacity:1;} }
.sp-avatar { width:24px; height:24px; border-radius:50%; background:rgba(196,162,74,0.13); border:1px solid rgba(196,162,74,0.28); display:flex; align-items:center; justify-content:center; font-size:10px; color:var(--green-dark); flex-shrink:0; margin-right:10px; font-family:var(--serif); }
.sp-text { flex:1; font-size:12px; color:var(--ink3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sp-text strong { color:var(--ink2); font-weight:500; }
.sp-time { font-size:10px; color:var(--ink-faint); margin-left:12px; flex-shrink:0; }
.sp-dot { width:5px; height:5px; border-radius:50%; background:var(--green-dark); margin-left:8px; flex-shrink:0; animation:spPulse 1.8s ease infinite; }
@keyframes spPulse { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:0.3;transform:scale(0.55);} }

/* 애니메이션 */
@keyframes fadeUp { from{opacity:0;transform:translateY(18px);} to{opacity:1;transform:translateY(0);} }
.reveal { opacity:0; transform:translateY(22px); transition:opacity 0.6s ease, transform 0.6s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
.spinner { width:18px; height:18px; border:2px solid rgba(196,162,74,0.18); border-top-color:var(--gold-dark); border-radius:50%; animation:spin 0.8s linear infinite; display:inline-block; vertical-align:middle; margin-right:8px; }
@keyframes spin { to{transform:rotate(360deg);} }

/* 반응형 */
@media(max-width:900px) {
  .nav-links { display:none; }
  .about-grid, .director-grid { grid-template-columns:1fr; gap:40px; }
  .blog-grid { grid-template-columns:1fr; }
  .director-photo { aspect-ratio:1/1; max-width:300px; }
  .services-grid { grid-template-columns:1fr; }
  .service-card.featured { grid-column:auto; }
  .why-grid, .target-grid { grid-template-columns:1fr; }
  .reviews-grid { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  
  .funnel-cards { grid-template-columns:1fr; }
  .review-cta-bar { flex-direction:column; text-align:center; }
}
@media(max-width:600px) {
  .hero-cta-row { flex-direction:column; }
  .btn-primary, .btn-outline { text-align:center; }
  .diag-tabs { overflow-x:auto; }
  .diag-tab { white-space:nowrap; }
  .cta-btn-row { flex-direction:column; align-items:center; }
}

/* ── 이미지 공통 ── */
img { display:block; }

/* 히어로 배너 이미지 — 상단 전체 폭 */




#hero .section-inner { padding-top:52px; }

/* 위험신호 이미지 — 텍스트 아래 전체 폭 */




/* 서비스 카드 이미지 — 전체 폭, 자연 비율 */
.svc-img { width:calc(100% + 72px); margin:-32px -36px 28px; overflow:hidden; }
.svc-img img { width:100%; height:auto; display:block; object-fit:contain; }

/* 원장 이미지 — 전체 폭, 자연 비율 */
.director-real-photo { overflow:hidden; border-radius:2px; }
.director-real-photo img { width:100%; height:auto; display:block; object-fit:contain; }

/* 후기 상단 이미지 배너 — 전체 폭, 자연 비율 */
.reviews-img-banner {
  width:100%; margin-bottom:32px;
  position:relative; overflow:hidden; border-radius:4px;
}
.reviews-img-banner img { width:100%; height:auto; display:block; filter:brightness(0.72); }
.reviews-img-banner-text {
  position:absolute; inset:0; display:flex; align-items:center; padding:0 5%;
  font-family:var(--serif); font-size:clamp(18px,2.8vw,26px); color:#fff;
  font-weight:400; line-height:1.55;
  background:linear-gradient(to right, rgba(0,0,0,0.45) 0%, transparent 70%);
}

/* 카카오 CTA 바 */
#kakao-bar { background:#2A4D14; padding:72px 0; }
.kakao-bar-inner { display:grid; grid-template-columns:1fr 420px; gap:60px; align-items:center; }
.kakao-bar-img { overflow:hidden; border-radius:4px; }
.kakao-bar-img img { width:100%; height:auto; display:block; object-fit:contain; }

/* 최종 CTA — 이미지를 섹션 위에 전체 폭으로 배치, 텍스트는 그 아래 */
#cta-final { background:#1C3A18; padding:0 0 80px; }
#cta-final .cta-bg { width:100%; overflow:hidden; margin-bottom:52px; }
#cta-final .cta-bg img { width:100%; height:auto; display:block; opacity:0.55; }
#cta-final .cta-final-inner { position:relative; z-index:1; text-align:center; }
#cta-final { color:#fff; }
#cta-final .section-title { color:#fff; }
#cta-final .section-sub { color:rgba(255,255,255,0.78); max-width:600px; margin:0 auto 36px; }
#cta-final .cta-note { color:rgba(255,255,255,0.6); }
#cta-final .btn-outline { border-color:rgba(255,255,255,0.45); color:#fff; }
#cta-final .btn-outline:hover { background:rgba(255,255,255,0.12); }
#cta-final .section-label { justify-content:center; color:rgba(200,221,168,0.8); }

/* 반응형 */
@media(max-width:900px) {
  
  .kakao-bar-inner { grid-template-columns:1fr; }
  .kakao-bar-img { max-width:480px; }
}

/* 수리 사격 그리드 */
.suri-section-title { font-size:11px; letter-spacing:0.12em; color:var(--green-dark); font-weight:600; margin:16px 0 8px; padding-bottom:6px; border-bottom:1px solid rgba(196,162,74,0.13); grid-column:1/-1; }
.suri-section-title:first-child { margin-top:0; }
.suri-item { background:#fff; border:1px solid rgba(196,162,74,0.1); border-top:3px solid; padding:14px 10px; text-align:center; }
.suri-item.good  { border-top-color:#1a6fb5; }
.suri-item.mid   { border-top-color:#c47c00; }
.suri-item.bad   { border-top-color:#c0392b; }
.suri-label { font-size:10px; letter-spacing:0.12em; color:var(--ink3); margin-bottom:4px; }
.suri-phase { font-size:9px; color:var(--ink-faint); margin-bottom:6px; }
.suri-num { font-family:var(--serif); font-size:28px; font-weight:400; line-height:1; margin-bottom:4px; }
.suri-num.good { color:#1a6fb5; }
.suri-num.mid  { color:#c47c00; }
.suri-num.bad  { color:#c0392b; }
.suri-name { font-size:11px; font-weight:600; margin-bottom:4px; }
.suri-name.good { color:#1a6fb5; }
.suri-name.mid  { color:#c47c00; }
.suri-name.bad  { color:#c0392b; }
.suri-desc { font-size:10px; color:var(--ink3); line-height:1.5; }
/* 주역괘 */
.gua-section-title { font-size:11px; letter-spacing:0.12em; color:var(--green-dark); font-weight:600; margin:0 0 10px; padding-bottom:6px; border-bottom:1px solid rgba(196,162,74,0.13); }
.gua-cards { display:flex; flex-direction:column; gap:10px; margin-bottom:4px; }
.gua-card { display:flex; align-items:flex-start; gap:14px; background:#fff; border:1px solid rgba(196,162,74,0.1); border-left:4px solid; padding:14px 16px; }
.gua-card.good { border-left-color:#1a6fb5; }
.gua-card.mid  { border-left-color:#c47c00; }
.gua-card.bad  { border-left-color:#c0392b; }
.gua-card-sym { font-size:28px; line-height:1; flex-shrink:0; margin-top:2px; }
.gua-card-info { flex:1; }
.gua-card-top { display:flex; align-items:baseline; gap:8px; margin-bottom:4px; }
.gua-card-label { font-size:10px; color:var(--ink3); letter-spacing:0.1em; }
.gua-card-name { font-size:14px; font-weight:700; }
.gua-card-name.good { color:#1a6fb5; }
.gua-card-name.mid  { color:#c47c00; }
.gua-card-name.bad  { color:#c0392b; }
.gua-card-hanja { font-size:11px; color:var(--ink3); }
.gua-card-meaning { font-size:13px; font-weight:600; color:var(--ink2); margin-bottom:6px; }
.gua-card-desc { font-size:12px; color:var(--ink3); line-height:1.75; }
/* 오행 칩 */
.ohang-chip-diag { display:inline-flex; align-items:center; gap:4px; font-size:12px; padding:5px 12px; border-radius:2px; font-weight:500; margin:0 2px; }
.ohang-chip-diag.木 { background:#E8F5E8; color:#2d6a4f; border:1px solid rgba(45,106,79,0.3); }
.ohang-chip-diag.火 { background:#FEE8E8; color:#c0392b; border:1px solid rgba(192,57,43,0.3); }
.ohang-chip-diag.土 { background:#FBF5E0; color:#8b5e0a; border:1px solid rgba(139,94,10,0.3); }
.ohang-chip-diag.金 { background:#F0F0F8; color:#4a4a6a; border:1px solid rgba(74,74,106,0.3); }
.ohang-chip-diag.水 { background:#E8F4F8; color:#2a7f7f; border:1px solid rgba(42,127,127,0.3); }
.sanggeuk-badge { font-size:10px; color:#c0392b; font-weight:600; margin-left:6px; }
/* 운세 별점 */
.fortune-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:20px; }
.fortune-item { background:#fff; border:1px solid rgba(196,162,74,0.1); padding:14px 12px; text-align:center; border-radius:2px; }
.fortune-label { font-size:11px; color:var(--ink3); letter-spacing:0.1em; margin-bottom:8px; }
.fortune-stars { font-size:18px; line-height:1; margin-bottom:4px; letter-spacing:1px; }
.fortune-score { font-size:11px; color:var(--ink3); }
.star-full  { color:#f0a500; }
.star-half  { color:#f0a500; opacity:0.5; }
.star-empty { color:#ddd; }
/* 개명 진단 등급 */





/* ── Signal 섹션 ── */
#signal { padding:72px 0; background:var(--dark-section-bg); }
#signal .section-label { color:rgba(200,221,168,0.7); }
#signal .section-title { color:var(--dark-section-text); }
.signal-card { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.08); padding:28px 32px; }
.signal-card h3 { font-size:15px; font-weight:500; color:var(--dark-section-text); margin-bottom:10px; line-height:1.5; }
.signal-card p { font-size:13px; color:var(--dark-section-sub); line-height:1.8; font-weight:400; }
.signal-bottom { background:rgba(255,255,255,0.05); border:1px solid rgba(200,221,168,0.15); border-left:3px solid var(--dark-section-text); padding:18px 24px; font-size:14px; color:var(--dark-section-sub); line-height:1.85; text-align:center; margin-bottom:28px; }
.signal-bottom strong { color:var(--dark-section-text); }
.signal-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:36px; }

/* ── 서비스 카드 03 혼자일 때 ── */
.services-grid .service-card:nth-child(3):last-of-type { grid-column: 1 / -1; }


/* ── 히어로 ── */
#hero {
  background: #1F2A18;
  padding-top: 68px;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  min-height: 640px;
}
.hero-content {
  padding: 48px 52px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  min-height: 640px;
}
.hero-eyebrow {
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 400;
  animation: fadeUp 0.7s ease both;
}
.hero-eyebrow::before {
  content: '';
  width: 16px;
  height: 1px;
  background: var(--gold);
  flex-shrink: 0;
}
.hero-headline {
  font-family: var(--serif);
  font-size: clamp(28px, 3.8vw, 48px);
  font-weight: 300;
  color: #F5F5F0;
  line-height: 1.4;
  margin: 0;
  letter-spacing: 0.01em;
  animation: fadeUp 0.7s 0.1s ease both;
}
.hero-headline em {
  font-style: normal;
  color: var(--gold);
  display: block;
}
.hero-divider {
  width: 28px;
  height: 1px;
  background: var(--gold);
  opacity: 0.5;
  margin: 22px 0;
}
.hero-sub {
  font-size: 17px;
  color: rgba(232,240,222,0.82);
  line-height: 1.75;
  margin-bottom: 28px;
  font-weight: 400;
  font-family: var(--serif);
  animation: fadeUp 0.7s 0.15s ease both;
}
.hero-cta-row {
  display: flex;
  gap: 10px;
  margin-bottom: 32px;
  flex-wrap: wrap;
  animation: fadeUp 0.7s 0.2s ease both;
}
/* 히어로 서비스 리스트 */
.hero-content .btn-outline {
  border-color: rgba(191,164,106,0.55);
  color: rgba(232,240,222,0.8);
}
.hero-content .btn-outline:hover {
  background: rgba(191,164,106,0.12);
  border-color: var(--gold);
  color: var(--gold);
}
.hero-svc-list {
  border-top: 1px solid rgba(191,164,106,0.15);
  display: flex;
  flex-direction: column;
  animation: fadeUp 0.7s 0.25s ease both;
}
.hero-svc-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 13px 0;
  border-bottom: 1px solid rgba(191,164,106,0.08);
  cursor: pointer;
  transition: all 0.2s;
}
.hero-svc-item:last-child { border-bottom: none; }
.hero-svc-item:hover .hero-svc-ttl { color: var(--gold); }
.hero-svc-left {
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.hero-svc-num {
  font-size: 9px;
  color: rgba(191,164,106,0.45);
  letter-spacing: 0.2em;
  flex-shrink: 0;
  font-family: var(--sans);
}
.hero-svc-ttl {
  font-size: 13px;
  color: rgba(232,240,222,0.62);
  font-family: var(--serif);
  font-weight: 300;
  line-height: 1.5;
  transition: color 0.2s;
}
.hero-svc-arr {
  font-size: 10px;
  color: rgba(191,164,106,0.3);
  flex-shrink: 0;
}
/* 오른쪽 사진 */
.hero-photo {
  position: relative;
  overflow: hidden;
  background: var(--bg2);
  display: flex;
  align-items: flex-end;
}
.hero-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 100%;
  display: block;
}
.hero-photo::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(28,38,20,0.6) 0%, transparent 35%);
  z-index: 1;
}
.hero-photo-badge {
  position: absolute;
  bottom: 20px;
  left: 20px;
  z-index: 2;
  background: rgba(28,38,20,0.75);
  border: 1px solid rgba(191,164,106,0.22);
  padding: 10px 18px;
  backdrop-filter: blur(6px);
  font-size: 13px;
  color: rgba(232,240,222,0.75);
  line-height: 1.4;
  font-weight: 400;
  white-space: nowrap;
}
.hero-photo-badge strong {
  color: #F5F5F0;
  font-weight: 500;
  display: block;
  margin-bottom: 3px;
  font-size: 14px;
}

@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-content { padding: 44px 24px 36px; }
  .hero-photo img { min-height: 320px; }
  .hero-photo::before { display: none; }
}

/* ── 선택지 섹션 ── */
#user-choice { padding:36px 0; background:var(--bg2); border-top:1px solid rgba(196,162,74,0.1); }
.choice-label { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold-dark); margin-bottom:20px; text-align:center; font-weight:400; }
.choice-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; max-width:820px; margin:0 auto; }
.choice-btn { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#fff; border:1px solid rgba(196,162,74,0.18); padding:18px 20px; cursor:pointer; font-family:var(--sans); font-size:14px; color:var(--ink2); font-weight:400; text-align:left; transition:all 0.2s; }
.choice-btn:hover { border-color:var(--gold); background:var(--gold-pale); }
.choice-btn span { font-size:11px; color:var(--gold-dark); flex-shrink:0; opacity:0.8; }

/* ── 서비스 카드 강조형 ── */
.service-card--accent { border-color:rgba(192,57,43,0.18); }
.service-card--accent::before { background:#C0392B; }

/* ── 서비스 연결 노트 ── */
.svc-connect-note { font-size:12px; color:var(--gold-dark); margin:-10px 0 18px; line-height:1.7; font-weight:400; }
.svc-sub-label { font-size:14px; color:var(--ink3); font-family:var(--sans); font-weight:300; }


/* ── 인생 전략 리포트 — 전폭 독립 블록 ── */
/* outer: section-inner와 동일한 폭 제한 */
.svc-featured-outer {
  max-width: 1100px;
  margin: 16px auto 0;
  padding: 0 5%;
}
.service-card--featured-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: var(--dark-section-bg);
  border: 1px solid rgba(191,164,106,0.15);
  overflow: hidden;
  min-height: 420px;
}
.svc-featured-img {
  position: relative;
  overflow: hidden;
  min-height: 420px;
}
.svc-featured-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.svc-featured-body {
  padding: 52px 64px 52px 56px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.svc-featured-body .service-tag {
  color: var(--gold);
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(191,164,106,0.4);
  padding: 0 0 5px 0;
}
.svc-featured-body h3 {
  color: var(--dark-section-text);
  font-size: 22px;
  word-break: keep-all;
  line-height: 1.4;
  margin-bottom: 16px;
}
.svc-featured-body .svc-sub-label {
  color: rgba(232,240,222,0.45);
  font-size: 14px;
  font-family: var(--sans);
  font-weight: 300;
}
.svc-featured-body p {
  color: rgba(232,240,222,0.65);
  word-break: keep-all;
  font-size: 14px;
  line-height: 1.95;
  font-weight: 300;
}
.svc-featured-body .service-points li {
  color: rgba(232,240,222,0.5);
  border-color: rgba(255,255,255,0.06);
}
.svc-featured-body .service-points li::before {
  background: var(--gold);
  opacity: 0.5;
}
.svc-featured-body .btn-primary {
  background: var(--gold);
  color: var(--dark-section-bg);
  box-shadow: none;
  align-self: flex-start;
  margin-top: 8px;
}
.svc-featured-body .btn-primary:hover {
  background: #d4b878;
}
@media (max-width: 768px) {
  .service-card--featured-wrap {
    grid-template-columns: 1fr;
  }
  .svc-featured-img {
    min-height: 220px;
    position: relative;
  }
  .svc-featured-body {
    padding: 36px 24px;
  }
}

/* ── 프리미엄 블록 ── */
.service-premium { background:var(--dark-section-bg); padding:56px 48px; display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; position:relative; margin-top:1px; }
.service-premium::before, .service-premium::after { content:''; position:absolute; left:0; right:0; height:1px; background:linear-gradient(to right,transparent,var(--gold),transparent); }
.service-premium::before { top:0; }
.service-premium::after { bottom:0; }
.service-premium__badge { display:inline-block; font-size:10px; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); border:1px solid rgba(196,162,74,0.35); padding:4px 12px; margin-bottom:16px; font-weight:400; }
.service-premium h3 { font-family:var(--serif); font-size:clamp(22px,2.8vw,32px); font-weight:300; color:var(--bg); line-height:1.35; margin-bottom:10px; }
.service-premium__price { font-size:12px; color:var(--gold); letter-spacing:0.08em; margin-bottom:28px; font-weight:400; }
.service-premium__right p { font-size:14px; color:rgba(232,240,222,0.65); line-height:1.95; margin-bottom:24px; font-weight:400; }
.service-points--light li { color:rgba(232,240,222,0.55); border-color:rgba(255,255,255,0.06); }
.service-points--light li::before { background:var(--gold); opacity:0.5; }
.btn-premium { display:inline-block; font-size:12px; padding:13px 28px; border:1px solid rgba(196,162,74,0.45); color:var(--gold); background:transparent; cursor:pointer; font-family:var(--sans); letter-spacing:0.1em; transition:all 0.25s; }
.btn-premium:hover { background:var(--gold); color:var(--green-dark); }


/* ── 5번째 카드 비즈니스 네이밍 ── */
.service-card--premium-alt {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 0;
  padding: 0;
  overflow: visible;
  border-color: rgba(191,164,106,0.2);
}
.service-card--premium-alt .svc-img {
  height: 100%;
  min-height: 260px;
  margin: 0;
}
.service-card--premium-alt .svc-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.svc-premium-body {
  padding: 36px 40px;
}
.svc-price-note {
  font-size: 12px;
  color: var(--gold-dark);
  letter-spacing: 0.08em;
  margin-bottom: 16px;
  font-weight: 400;
}
@media (max-width: 768px) {
  .service-card--premium-alt { grid-template-columns: 1fr; }
}


.signal-img-col { margin-top:56px; border-radius:4px; overflow:hidden; max-width:720px; margin-left:auto; margin-right:auto; }
.signal-img-col img { width:100%; height:440px; object-fit:cover; display:block; border-radius:4px; }


/* ── 카드 3 전폭 가로 레이아웃 ── */
.service-card--wide {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 0;
  padding: 0;
  overflow: visible;
}
.service-card--wide .svc-img {
  height: 100%;
  min-height: 240px;
  margin: 0;
}
.service-card--wide .svc-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.svc-wide-body {
  padding: 36px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.svc-wide-body .service-points {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 24px;
}
@media (max-width: 768px) {
  .service-card--wide { grid-template-columns: 1fr; }
  .svc-wide-body .service-points { grid-template-columns: 1fr; }
}

/* ── 반응형 ── */
@media (max-width:768px) {
  .choice-grid { grid-template-columns:1fr; }
  .service-premium { grid-template-columns:1fr; padding:40px 24px; gap:32px; }
}



/* ── 인생 전략 리포트 — 전폭 독립 블록 ── */
/* outer: section-inner와 동일한 폭 제한 */
.svc-featured-outer {
  max-width: 1100px;
  margin: 16px auto 0;
  padding: 0 5%;
}
.service-card--featured-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: var(--dark-section-bg);
  border: 1px solid rgba(191,164,106,0.15);
  overflow: hidden;
  min-height: 420px;
}
.svc-featured-img {
  position: relative;
  overflow: hidden;
  min-height: 420px;
}
.svc-featured-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.svc-featured-body {
  padding: 52px 64px 52px 56px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.svc-featured-body .service-tag {
  color: var(--gold);
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(191,164,106,0.4);
  padding: 0 0 5px 0;
}
.svc-featured-body h3 {
  color: var(--dark-section-text);
  font-size: 22px;
  word-break: keep-all;
  line-height: 1.4;
  margin-bottom: 16px;
}
.svc-featured-body .svc-sub-label {
  color: rgba(232,240,222,0.45);
  font-size: 14px;
  font-family: var(--sans);
  font-weight: 300;
}
.svc-featured-body p {
  color: rgba(232,240,222,0.65);
  word-break: keep-all;
  font-size: 14px;
  line-height: 1.95;
  font-weight: 300;
}
.svc-featured-body .service-points li {
  color: rgba(232,240,222,0.5);
  border-color: rgba(255,255,255,0.06);
}
.svc-featured-body .service-points li::before {
  background: var(--gold);
  opacity: 0.5;
}
.svc-featured-body .btn-primary {
  background: var(--gold);
  color: var(--dark-section-bg);
  box-shadow: none;
  align-self: flex-start;
  margin-top: 8px;
}
.svc-featured-body .btn-primary:hover {
  background: #d4b878;
}
@media (max-width: 768px) {
  .service-card--featured-wrap {
    grid-template-columns: 1fr;
  }
  .svc-featured-img {
    min-height: 220px;
    position: relative;
  }
  .svc-featured-body {
    padding: 36px 24px;
  }
}
/* ── 인생 전략 리포트 전환 push 요소 ── */
.svc-featured-push {
  margin: 16px 0 20px;
  padding: 16px 20px;
  background: rgba(191,164,106,0.08);
  border: 1px solid rgba(191,164,106,0.2);
  border-left: 3px solid var(--gold);
}
.svc-push-price {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 12px;
}
.svc-push-price-left,
.svc-push-price-right {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.svc-push-label {
  font-size: 9px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(232,240,222,0.4);
  font-weight: 400;
}
.svc-push-original {
  font-family: var(--serif);
  font-size: 16px;
  color: rgba(232,240,222,0.3);
  text-decoration: line-through;
}
.svc-push-arrow {
  font-size: 16px;
  color: var(--gold);
  opacity: 0.6;
  margin-top: 10px;
}
.svc-push-sale {
  font-family: var(--serif);
  font-size: 26px;
  font-weight: 400;
  color: var(--gold);
  letter-spacing: -0.01em;
  line-height: 1;
}
.svc-push-badge {
  font-size: 11px;
  color: rgba(232,240,222,0.55);
  letter-spacing: 0.04em;
  padding-top: 10px;
  border-top: 1px solid rgba(191,164,106,0.1);
}
.svc-push-badge strong {
  color: var(--gold);
  font-weight: 500;
}
.svc-featured-btn {
  align-self: flex-start;
  background: var(--gold) !important;
  color: var(--dark-section-bg) !important;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.svc-featured-btn:hover {
  background: #d4b878 !important;
}
.svc-push-footnote {
  font-size: 14px !important;
  color: rgba(232,240,222,0.75) !important;
  letter-spacing: 0.06em;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}

/* ══════════════════════════════
   FOOTER — 리디자인
══════════════════════════════ */
footer {
  background: #1C2914;
}
.footer-main {
  padding: 64px 5% 52px;
  border-top: 1px solid rgba(191,164,106,0.15);
}
.footer-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.4fr;
  gap: 48px;
  align-items: flex-start;
}

/* 브랜드 컬럼 */
.footer-logo {
  height: 156px;
  width: auto;
  display: block;
  margin-bottom: 20px;
  opacity: 0.9;
}
.footer-tagline {
  font-family: var(--serif);
  font-size: 14px;
  color: rgba(232,240,222,0.7);
  line-height: 1.7;
  margin-bottom: 6px;
  font-weight: 300;
  letter-spacing: 0.02em;
}
.footer-loc {
  font-size: 12px;
  color: rgba(232,240,222,0.35);
  line-height: 1.9;
  font-weight: 300;
  margin-bottom: 24px;
}

/* 소셜 */
.footer-social {
  display: flex;
  gap: 8px;
}
.footer-social a {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(191,164,106,0.2);
  text-decoration: none;
  transition: all 0.2s;
}
.footer-social a:hover {
  border-color: rgba(191,164,106,0.5);
  background: rgba(191,164,106,0.08);
}
.footer-social svg {
  width: 15px;
  height: 15px;
  fill: rgba(232,240,222,0.45);
}

/* 네비 컬럼 */
.footer-nav-title {
  font-size: 15px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  opacity: 0.9;
  margin-bottom: 20px;
  font-weight: 600;
}
.footer-nav-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-nav-list a {
  font-size: 15px;
  color: rgba(232,240,222,0.78);
  text-decoration: none;
  font-weight: 500;
  letter-spacing: 0.02em;
  transition: color 0.2s;
}
.footer-nav-list a:hover {
  color: #fff;
}

/* CTA 컬럼 */
.footer-cta-col .footer-nav-title {
  margin-bottom: 14px;
}
.footer-cta-desc {
  font-size: 13px;
  color: rgba(232,240,222,0.65);
  line-height: 1.8;
  font-weight: 300;
  margin-bottom: 18px;
}
.footer-cta-btn {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--green-dark);
  background: var(--gold);
  padding: 11px 18px;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s;
  white-space: nowrap;
}
.footer-cta-btn:hover {
  background: #d4b878;
}

/* 사업자 정보 */
.footer-biz {
  background: #151e0e;
  padding: 18px 5%;
}
.footer-biz-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.footer-biz-left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
}
.footer-biz-left span,
.footer-biz-left a {
  font-size: 13px;
  color: rgba(232,240,222,0.75);
  text-decoration: none;
  letter-spacing: 0.04em;
  transition: color 0.2s;
}
.footer-biz-left a:hover {
  color: rgba(232,240,222,0.95);
}
.footer-biz-div {
  opacity: 0.5;
}
.footer-biz-corp {
  font-size: 13px;
  color: rgba(232,240,222,0.65);
  letter-spacing: 0.02em;
  line-height: 1.8;
  font-weight: 300;
  text-align: center;
}

@media (max-width: 900px) {
  .footer-inner {
    grid-template-columns: 1fr 1fr;
    gap: 36px;
  }
  .footer-brand-col {
    grid-column: 1 / -1;
  }
}
@media (max-width: 540px) {
  .footer-inner {
    grid-template-columns: 1fr;
  }
}

.footer-biz-email {
  color: rgba(232,240,222,0.75);
  text-decoration: none;
  transition: color 0.2s;
}
.footer-biz-email:hover {
  color: rgba(232,240,222,0.95);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ══════════════════════════════
   실시간 신청 티커 배너
══════════════════════════════ */
.realtime-ticker {
  background: var(--green-dark);
  border-bottom: 1px solid rgba(191,164,106,0.15);
  padding: 10px 0;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  z-index: 99;
  margin-top: 0;
}
.ticker-track {
  display: inline-flex;
  gap: 0;
  animation: tickerScroll 55s linear infinite;
}
.ticker-item {
  display: inline-block;
  font-size: 12px;
  color: rgba(232,240,222,0.65);
  font-weight: 300;
  letter-spacing: 0.03em;
  padding: 0 48px;
  border-right: 1px solid rgba(191,164,106,0.15);
}
.ticker-item em {
  font-style: normal;
  color: var(--gold);
  margin-left: 6px;
  font-size: 11px;
}
@keyframes tickerScroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.realtime-ticker:hover .ticker-track {
  animation-play-state: paused;
}

/* ══════════════════════════════
   실시간 토스트 알림
══════════════════════════════ */
.realtime-toast {
  position: fixed;
  bottom: 28px;
  left: 24px;
  z-index: 9999;
  background: #fff;
  border: 1px solid rgba(196,162,74,0.2);
  box-shadow: 0 8px 32px rgba(28,28,20,0.14);
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 300px;
  min-width: 240px;
}
.toast-icon {
  font-size: 20px;
  flex-shrink: 0;
  line-height: 1;
}
.toast-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
}
.toast-text strong {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: 0.01em;
}
.toast-text span {
  font-size: 11.5px;
  color: var(--ink3);
  font-weight: 300;
  line-height: 1.5;
}
.toast-close {
  background: none;
  border: none;
  font-size: 18px;
  color: var(--ink-faint);
  cursor: pointer;
  line-height: 1;
  padding: 0 2px;
  flex-shrink: 0;
  align-self: flex-start;
}
.toast-close:hover { color: var(--ink); }

@keyframes toastIn {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes toastOut {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(16px); }
}
.toast-in  { animation: toastIn  0.4s cubic-bezier(0.22,1,0.36,1) forwards; }
.toast-out { animation: toastOut 0.5s ease forwards; }

/* 중간 티커 */
.realtime-ticker--mid {
  margin-top: 0;
  background: var(--green-dark);
  border-top: 1px solid rgba(191,164,106,0.25);
  border-bottom: 1px solid rgba(191,164,106,0.25);
}
.realtime-ticker--mid .ticker-item {
  color: rgba(232,240,222,0.75);
  border-right-color: rgba(191,164,106,0.2);
}
.realtime-ticker--mid .ticker-item em {
  color: var(--gold);
}

/* ══════════════════════════════
   가격 안내 섹션
══════════════════════════════ */
#pricing { padding: 100px 0; background: var(--bg); }

.pricing-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* 기본 카드 */
.pricing-card {
  background: #fff;
  border: 1px solid rgba(196,162,74,0.15);
  padding: 36px 32px;
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  transition: box-shadow 0.25s;
}
.pricing-card:hover {
  box-shadow: 0 6px 32px rgba(28,28,20,0.07);
}
.pricing-tag {
  font-size: 20px;
  letter-spacing: 0.05em;
  text-transform: none;
  color: var(--ink);
  font-weight: 700;
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(196,162,74,0.2);
  padding-bottom: 12px;
}
.pricing-price {
  display: flex;
  align-items: baseline;
  gap: 4px;
  margin-bottom: 4px;
}
.pricing-amount {
  font-family: var(--serif);
  font-size: 36px;
  font-weight: 300;
  color: var(--ink);
  line-height: 1;
  letter-spacing: -0.02em;
}
.pricing-unit {
  font-size: 14px;
  color: var(--ink3);
  font-weight: 300;
}
.pricing-vat {
  font-size: 11px;
  color: var(--ink-faint);
  margin-bottom: 20px;
  font-weight: 300;
  letter-spacing: 0.02em;
}
.pricing-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 28px;
  flex: 1;
}
.pricing-list li {
  font-size: 13px;
  color: var(--ink3);
  font-weight: 300;
  padding-left: 14px;
  position: relative;
  line-height: 1.6;
}
.pricing-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 9px;
  width: 6px;
  height: 1px;
  background: var(--gold);
  opacity: 0.6;
}
.pricing-cta {
  display: block;
  width: 100%;
  padding: 14px;
  background: var(--green-dark);
  color: #FAF7F2;
  border: none;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.06em;
  cursor: pointer;
  font-family: var(--sans);
  transition: background 0.2s;
  text-align: center;
  text-decoration: none;
  margin-top: auto;
}
.pricing-cta:hover { background: var(--ink); }
.pricing-cta--gold {
  background: var(--gold) !important;
  color: var(--green-dark) !important;
  font-weight: 600;
}
.pricing-cta--gold:hover { background: #d4b878 !important; }

/* 작명·개명 — 3단계 티어 */
.pricing-card--wide {
  grid-column: 1 / -1;
}
.pricing-tiers {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
  margin-bottom: 24px;
}
.pricing-tier {
  background: var(--bg);
  border: 1px solid rgba(196,162,74,0.12);
  padding: 20px;
  position: relative;
}
.pricing-tier--mid {
  background: var(--green-dark);
  border-color: var(--green-dark);
}
.pricing-tier--mid .pricing-tier-name,
.pricing-tier--mid .pricing-tier-price,
.pricing-tier--mid .pricing-list li {
  color: rgba(232,240,222,0.85) !important;
}
.pricing-tier--mid .pricing-list li::before { background: var(--gold); }
.pricing-tier-badge {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--gold);
  color: var(--green-dark);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 3px 12px;
  white-space: nowrap;
}
.pricing-tier-name {
  font-size: 18px;
  letter-spacing: 0.05em;
  color: var(--ink);
  text-transform: none;
  margin-bottom: 10px;
  font-weight: 700;
}
.pricing-tier-price {
  font-family: var(--serif);
  font-size: 24px;
  font-weight: 300;
  color: var(--ink);
  margin-bottom: 14px;
  letter-spacing: -0.01em;
}
.pricing-tier-price span {
  font-size: 13px;
  color: var(--ink3);
}

/* 인생 전략 리포트 */
.pricing-card--report {
  background: var(--dark-section-bg);
  border-color: rgba(191,164,106,0.2);
}
.pricing-card--report .pricing-tag { color: var(--gold); border-color: rgba(191,164,106,0.2); }
.pricing-card--report .pricing-amount { color: var(--dark-section-text); }
.pricing-card--report .pricing-unit { color: rgba(232,240,222,0.5); }
.pricing-card--report .pricing-vat { color: rgba(232,240,222,0.4); }
.pricing-card--report .pricing-list li { color: rgba(232,240,222,0.55); }
.pricing-card--report .pricing-list li::before { background: var(--gold); }
.pricing-special-badge {
  display: inline-block;
  font-size: 11px;
  color: var(--gold);
  background: rgba(191,164,106,0.1);
  border: 1px solid rgba(191,164,106,0.25);
  padding: 4px 12px;
  letter-spacing: 0.06em;
  margin-bottom: 12px;
  font-weight: 500;
}
.pricing-price-wrap {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 4px;
}
.pricing-price--strike .pricing-amount {
  font-size: 18px;
  color: rgba(232,240,222,0.25);
  text-decoration: line-through;
}
.pricing-price--strike .pricing-unit {
  color: rgba(232,240,222,0.2);
  font-size: 12px;
}
.pricing-amount--sale {
  color: var(--gold) !important;
  font-size: 40px !important;
}

/* 비즈니스 네이밍 */
.pricing-card--biz {
  border-left: 3px solid var(--gold);
}

/* 반응형 */
@media (max-width: 768px) {
  .pricing-grid { grid-template-columns: 1fr; }
  .pricing-card--wide { grid-column: 1; }
  .pricing-tiers { grid-template-columns: 1fr; }
}
