/* A quieter service UI: one accent color, flatter surfaces, clearer hierarchy. */
:root {
  --ink: #201d29;
  --muted: #686575;
  --paper: #fff;
  --white: #fff;
  --line: #e8e6ec;
  --teal: #6336d6;
  --teal-dark: #5028b9;
  --mint: #f1edfb;
  --lime: #f1edfb;
  --sand: #f8f7fa;
  --orange: #6336d6;
  --shadow: none;
}

body { background:#fff; color:var(--ink); line-height:1.65; }
.container { width:min(1160px,calc(100% - 48px)); }
.site-header { background:#fff; border-bottom:1px solid var(--line); backdrop-filter:none; }
.nav { min-height:72px; gap:20px; }
.brand { font-size:1.2rem; letter-spacing:-.055em; }
.brand-mark { width:32px; height:32px; border-radius:9px; background:#6336d6; box-shadow:none; font-size:1.15rem; }
.nav-links { gap:20px; color:#3d3948; font-size:.82rem; }
.nav-links a { display:inline-flex; align-items:center; min-height:72px; border-bottom:2px solid transparent; }
.nav-links a:hover,.nav-links a[aria-current="page"] { color:var(--teal); border-bottom-color:var(--teal); }
.nav-cta { padding:10px 16px; border-radius:9px; background:var(--teal); box-shadow:none; font-size:.8rem; }
.nav-cta:hover,.btn-primary:hover { background:var(--teal-dark); transform:none; }
.btn { min-height:48px; padding:11px 18px; border-radius:9px; box-shadow:none; font-size:.87rem; transition:background .15s,border-color .15s,color .15s; }
.btn-primary { background:var(--teal); color:#fff; box-shadow:none; }
.btn-secondary { background:#fff; color:#3d2a77; border-color:#d9d0ea; }
.btn-secondary:hover { border-color:var(--teal); transform:none; }
.text-link { color:var(--teal); }
.eyebrow { color:var(--teal); font-size:.75rem; letter-spacing:0; text-transform:none; }
.eyebrow:before { display:none; }

/* Home: give the choice a purpose instead of decorative artwork. */
.hero { padding:66px 0 70px; overflow:visible; background:#f6f4fb; color:var(--ink); isolation:auto; }
.hero:before,.hero:after { display:none; }
.hero-grid { grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr); gap:70px; align-items:center; }
.hero-copy { z-index:auto; }
.hero-pill { display:block; padding:0; border:0; border-radius:0; background:none; color:var(--teal); font-size:.8rem; letter-spacing:0; backdrop-filter:none; }
.pill-spark { display:none; }
.hero h1 { margin:17px 0 20px; color:var(--ink); font-size:clamp(2.75rem,3.65vw,3.85rem); line-height:1.2; letter-spacing:-.075em; text-shadow:none; }
.hero h1 em { color:var(--teal); white-space:normal; }
.hero .lead { max-width:570px; color:#5f5b6b; font-size:.97rem; line-height:1.8; }
.hero-actions { margin-top:27px; }
.hero .btn-primary { color:#fff; background:var(--teal); box-shadow:none; }
.hero .btn-primary:hover { color:#fff; background:var(--teal-dark); }
.hero .btn-secondary { color:#35245f; background:#fff; border-color:#ddd7e8; backdrop-filter:none; }
.hero .btn-secondary:hover { background:#fff; border-color:var(--teal); }
.hero-guide { overflow:hidden; background:#fff; border:1px solid #e4dfed; border-radius:16px; }
.hero-guide-head { padding:26px 28px 18px; }
.hero-guide-head span { display:block; margin-bottom:7px; color:var(--teal); font-size:.74rem; font-weight:800; }
.hero-guide-head strong { display:block; font-size:1.25rem; letter-spacing:-.05em; }
.hero-guide a { display:grid; grid-template-columns:28px 1fr 18px; align-items:center; gap:12px; padding:18px 28px; border-top:1px solid var(--line); transition:background .15s; }
.hero-guide a:hover { background:#f8f6fc; }
.hero-guide a>span:nth-child(2) { display:grid; gap:2px; }
.hero-guide a strong { font-size:.91rem; letter-spacing:-.03em; }
.hero-guide a small { color:var(--muted); font-size:.76rem; }
.hero-guide a>span:last-child { color:var(--teal); font-size:1.1rem; }
.guide-num { color:var(--teal); font:700 .78rem 'DM Sans',sans-serif; }
.hero-guide p { margin:0; padding:16px 28px; border-top:1px solid var(--line); background:#fbfafd; color:#746f80; font-size:.73rem; line-height:1.6; }
.quickbar { position:static; width:min(1160px,calc(100% - 48px)); margin:0 auto; border:0; border-bottom:1px solid var(--line); border-radius:0; box-shadow:none; background:#fff; }
.quickbar a { min-height:69px; padding:13px 15px; gap:9px; font-size:.83rem; }
.quickbar a+a { border-left:1px solid var(--line); }
.quickbar a:hover { background:#f8f6fc; }
.quickbar .num { color:var(--teal); font-size:.72rem; }

/* Finder: calm background and one clear interaction surface. */
.triage-section { padding:75px 0 82px; background:#fff; color:var(--ink); }
.triage-layout { grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); align-items:start; gap:62px; }
.triage-intro { padding-top:20px; }
.triage-label { padding:0; border:0; border-radius:0; background:none; color:var(--teal); font-size:.78rem; }
.triage-intro h2 { margin:14px 0 14px; font-size:clamp(2rem,2.8vw,2.7rem); line-height:1.3; letter-spacing:-.065em; }
.triage-intro h2 em { color:var(--ink); }
.triage-intro p { color:var(--muted); font-size:.92rem; line-height:1.75; }
.triage-intro>a { color:var(--teal); }
.triage-trust span { border:0; background:#f5f3f8; color:#666172; }
.triage-widget { padding:30px; border:1px solid #dedbe6; border-radius:16px; box-shadow:none; }
.triage-top strong { font-size:1.12rem; }
.triage-top>b { color:var(--teal); background:#f2edfa; }
.triage-progress { background:#efedf3; }
.triage-progress i { background:var(--teal); }
.triage-alert { background:#f8f6fc; border:1px solid #e8e0f4; border-left:3px solid var(--teal); border-radius:8px; }
.triage-alert strong { color:#38236d; }
.triage-options span { background:#fff; border-color:#ddd9e6; border-radius:8px; }
.triage-options label:hover span { border-color:#a693d3; transform:none; }
.triage-options input:checked+span { background:#f2ecfc; border-color:var(--teal); color:#4a27a6; box-shadow:none; }
.triage-question legend span { background:#f2ecfc; color:var(--teal); border-radius:8px; }
.triage-widget .result { background:#faf9fc; border-color:#ded5ed; box-shadow:none; }

/* Content: flatter sections and consistent spacing. */
.section { padding:79px 0; }
.section-tight { padding:68px 0; }
.section-white { background:#faf9fb; }
.section-head { margin-bottom:30px; }
.section-head h2 { margin:9px 0 12px; font-size:clamp(1.85rem,2.6vw,2.55rem); line-height:1.35; }
.section-head p { font-size:.91rem; }
.process-intro { align-items:end; }
.process-grid { grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.process-item { min-height:168px; padding:23px; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); border-radius:0; background:transparent; box-shadow:none; }
.process-item:hover { transform:none; box-shadow:none; background:#f6f4fa; }
.process-item b { width:auto; height:auto; display:block; margin-bottom:15px; background:none; color:var(--teal); font-size:.79rem; }
.process-item span { font-size:1rem; color:var(--ink); }
.process-item p { font-size:.8rem; color:var(--muted); }
.steps { gap:12px; }
.step { border-color:var(--line); border-radius:12px; }
.step b { background:#f1edfb; color:var(--teal); border-radius:8px; }
.note-band { background:#f7f5fa; border:1px solid #e9e5ef; color:#5d5669; border-radius:10px; }
.note-band strong { color:var(--ink); }
.faq-list summary { font-size:.94rem; }
.faq-list summary:after { color:var(--teal); }
.cta-panel { padding:39px; border:1px solid #e3def0; border-radius:15px; background:#f5f2fb; color:var(--ink); box-shadow:none; }
.cta-panel h2 { color:var(--ink); }
.cta-panel p { color:var(--muted); }
.cta-panel .eyebrow { color:var(--teal)!important; }
.cta-panel .btn { background:var(--teal); color:#fff; }
.cta-panel .btn:hover { background:var(--teal-dark); transform:none; }
.cta-panel .btn-ghost { background:#fff; color:#4b3296; border-color:#dcd3ec; }
.cta-panel .btn-ghost:hover { background:#fff; border-color:var(--teal); }
.site-footer { padding:44px 0 25px; border-top:1px solid var(--line); background:#f8f8fa; color:var(--ink); }
.footer-grid .brand { color:var(--ink); }
.footer-grid p,.footer-grid a { color:#696573; }
.footer-grid a:hover { color:var(--teal); }
.footer-title { color:var(--ink); }
.footer-bottom { border-color:#e2e0e7; color:#8a8791; }

/* Guides and plans follow the same service language. */
.article-hero,.plan-hero { padding:53px 0 48px; background:#f7f6fa; }
.article-hero:after { display:none; }
.article-head { max-width:none; }
.article-head h1 { max-width:880px; margin:12px 0 16px; color:var(--ink); font-size:clamp(2.1rem,3.25vw,3.35rem); line-height:1.28; letter-spacing:-.065em; }
.article-head .lead { max-width:760px; color:var(--muted); font-size:.96rem; line-height:1.8; }
.breadcrumbs { margin-bottom:24px; color:#807b8a; }
.article-layout { gap:58px; padding-top:59px; padding-bottom:81px; }
.article-aside { top:94px; padding:23px; border-color:var(--line); border-radius:12px; box-shadow:none; }
.article-aside a:not(.btn) { color:#625c6d; }
.prose h2 { margin:55px 0 18px; font-size:1.57rem; line-height:1.42; }
.prose h3 { color:var(--ink); }
.prose p,.prose li { color:#56515f; font-size:.91rem; line-height:1.8; }
.prose a:not(.btn) { color:var(--teal); }
.prose th { background:#f5f3f8; color:#413750; }
.prose td { color:#5c5765; }
.callout,.callout.warning { padding:20px 22px; background:#f7f5fa; border-left:3px solid var(--teal); border-radius:0 8px 8px 0; color:#50495b; }
.route-cards { gap:12px; }
.route-cards>div { padding:23px; border-color:var(--line); border-radius:12px; background:#fff; box-shadow:none; }
.route-cards b { color:#392a5b; }
.how-checklist div,.how-step { border-color:var(--line); border-radius:11px; }
.how-step { padding:23px; }
.how-step>strong { border-radius:9px; background:#f1edfb; color:var(--teal); }
.how-checklist b { color:var(--teal); }
.prep-visuals figure { border-color:var(--line); border-radius:11px; }
.prep-visuals img { background:#f8f7fa; }
.plan-section { padding-top:60px; }
.plan-notice { border-color:#e4deee; border-left:3px solid var(--teal); border-radius:9px; background:#f8f6fc; }
.plan-block { border-color:var(--line); border-radius:14px; box-shadow:none; }
.plan-block-head,.plan-block.lg .plan-block-head { padding:26px 30px; background:#f6f4f9; color:var(--ink); }
.plan-block-head span { color:var(--teal); opacity:1; }
.plan-block-head p { color:var(--muted); }
.plan-block-head>b { border-color:#d9d0e9; color:var(--teal); border-radius:9px; }
.plan-row>b,.plan-block.lg .plan-row>b { color:var(--teal); }
.plan-bottom { border:1px solid #e6e0ee; border-radius:12px; background:#f7f5fa; }
.plan-chips a { color:var(--teal); }

@media(max-width:1050px) {
  .nav-links { gap:12px; font-size:.75rem; }
  .hero-grid { gap:35px; }
  .triage-layout { gap:35px; }
}
@media(max-width:900px) {
  .hero { padding:51px 0 57px; }
  .hero-grid { grid-template-columns:1fr; gap:32px; }
  .hero h1 { font-size:clamp(2.65rem,5.2vw,3.25rem); }
  .hero-guide { max-width:630px; }
  .quickbar { grid-template-columns:repeat(2,1fr); }
  .quickbar a:nth-child(3) { border-left:0; border-top:1px solid var(--line); }
  .quickbar a:nth-child(4) { border-top:1px solid var(--line); }
  .triage-layout { grid-template-columns:1fr; gap:24px; }
  .triage-intro { padding-top:0; }
  .triage-section { padding:63px 0; }
  .process-grid { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:680px) {
  .container,.quickbar { width:calc(100% - 32px); }
  .nav { min-height:62px; }
  .nav-links { top:62px; background:#fff; }
  .nav-links a { min-height:43px; border-bottom:0; }
  .nav-links a[aria-current="page"] { border-bottom:0; }
  .hero { padding:39px 0 44px; }
  .hero h1 { font-size:clamp(2.13rem,9vw,2.55rem); line-height:1.25; margin:11px 0 16px; }
  .hero .lead { font-size:.85rem; line-height:1.7; }
  .hero-actions { margin-top:22px; }
  .hero-actions .btn { min-height:48px; font-size:.76rem; }
  .hero-guide { margin-top:2px; }
  .hero-guide-head { padding:20px 20px 12px; }
  .hero-guide-head strong { font-size:1.12rem; }
  .hero-guide a { padding:14px 20px; }
  .hero-guide p { padding:13px 20px; }
  .quickbar { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .quickbar a { min-height:58px; padding:10px 8px; gap:5px; font-size:.73rem; }
  .quickbar a:nth-child(2) { border-top:0; }
  .quickbar a:nth-child(3) { border-left:0; }
  .quickbar a:nth-child(4) { border-top:1px solid var(--line); }
  .quickbar .num { font-size:.65rem; }
  .triage-section { padding:52px 0 61px; }
  .triage-layout { gap:19px; }
  .triage-intro h2 { margin:10px 0 8px; font-size:1.85rem; }
  .triage-intro p { font-size:.82rem; }
  .triage-trust,.triage-intro>a { display:none; }
  .triage-widget { padding:21px 17px; border-radius:12px; }
  .triage-alert { padding:11px 13px; }
  .section { padding:59px 0; }
  .section-head h2 { font-size:1.85rem; }
  .process-grid { grid-template-columns:1fr; }
  .process-item { min-height:auto; padding:18px; }
  .process-item b { margin-bottom:6px; }
  .steps { grid-template-columns:1fr; }
  .cta-panel { padding:25px; }
  .article-hero,.plan-hero { padding:38px 0; }
  .article-head h1 { font-size:clamp(1.9rem,8vw,2.4rem); }
  .article-head .lead { font-size:.87rem; }
  .article-layout { padding-top:42px; padding-bottom:61px; }
  .prose h2 { font-size:1.4rem; }
  .route-cards { grid-template-columns:1fr; }
  .plan-block-head { padding:21px; }
}

/* Service-led home layout inspired by direct mobile sign-up flows. */
.site-header { box-shadow:0 1px 0 rgba(39,28,64,.03); }
.nav-links { gap:22px; }
.nav-links a { font-weight:800; }
.nav-cta { border-radius:10px; }
.hero { padding:58px 0 56px; background:linear-gradient(110deg,#fbfaff 0%,#f5f0ff 72%,#eee6ff 100%); }
.hero-grid { grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr); gap:56px; }
.hero h1 { font-size:clamp(2.55rem,3.55vw,3.68rem); margin:14px 0 17px; line-height:1.24; }
.hero h1 em { color:#632fe1; }
.hero .lead { max-width:550px; margin-bottom:0; }
.hero-actions { margin-top:24px; }
.hero-guide { border-color:#e5ddf2; border-radius:20px; box-shadow:0 18px 42px rgba(52,28,112,.08); }
.hero-guide-head { padding:25px 28px 21px; background:#602bdb; color:#fff; }
.hero-guide-head span { color:#ded0ff; letter-spacing:.08em; font-size:.67rem; }
.hero-guide-head strong { color:#fff; font-size:1.3rem; }
.hero-guide .hero-guide-head p { padding:0; margin:7px 0 0; border:0; background:none; color:#e7dcff; font-size:.78rem; }
.hero-guide a { grid-template-columns:25px 1fr 18px; min-height:77px; }
.hero-guide .guide-foot { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:15px 28px; border-top:1px solid var(--line); background:#fbfaff; font-size:.75rem; color:#6c6478; }
.hero-guide .guide-foot a { display:inline; min-height:0; padding:0; border:0; color:#5d2bcf; font-size:.75rem; font-weight:900; white-space:nowrap; }
.hero-guide .guide-foot a:hover { background:none; text-decoration:underline; text-underline-offset:3px; }
.quickbar { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; width:min(1160px,calc(100% - 48px)); margin:20px auto 0; border:0; overflow:visible; }
.quickbar a,.quickbar a+a { min-height:92px; padding:15px 17px; gap:12px; border:1px solid #e9e5ef; border-radius:13px; background:#fff; }
.quickbar a:hover { border-color:#cbb9ee; background:#fcfaff; }
.quickbar .quick-icon { display:grid; place-items:center; flex:none; width:42px; height:42px; border-radius:12px; background:#f1ecfc; color:#6430db; font:900 1.03rem 'DM Sans',sans-serif; }
.quickbar .quick-copy { display:grid; min-width:0; gap:1px; }
.quickbar .quick-copy strong { font-size:.84rem; color:#282231; line-height:1.35; }
.quickbar .quick-copy small { color:#77717e; font-size:.7rem; font-weight:500; line-height:1.35; white-space:nowrap; }
.quickbar .quick-arrow { margin-left:auto; align-self:flex-start; color:#9d8cc7; font-size:.85rem; }
.triage-section { padding-top:62px; padding-bottom:74px; }
.triage-widget { background:#fff; }
.plan-preview { padding:73px 0 77px; background:#f8f6fc; }
.preview-head { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:26px; }
.preview-head h2 { margin:8px 0 7px; font-size:clamp(1.9rem,2.6vw,2.55rem); line-height:1.3; letter-spacing:-.065em; }
.preview-head p { margin:0; color:#696273; font-size:.9rem; }
.preview-head .text-link { flex:none; margin:0 0 6px; }
.preview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.preview-card { display:flex; flex-direction:column; min-height:248px; padding:25px; border:1px solid #e3deeb; border-radius:15px; background:#fff; }
.preview-card.is-featured { border-color:#8f68e8; box-shadow:0 10px 24px rgba(79,36,176,.07); }
.preview-card-top { display:flex; align-items:center; gap:9px; margin-bottom:18px; color:#7b7482; font-size:.73rem; font-weight:700; }
.network-badge { padding:4px 8px; border-radius:6px; background:#efebfb; color:#5a2cc4; font-size:.71rem; font-weight:900; }
.preview-card h3 { margin:0 0 7px; font-size:1.28rem; letter-spacing:-.05em; line-height:1.3; }
.preview-card p { margin:0; color:#65606d; font-size:.8rem; line-height:1.65; }
.preview-card-bottom { display:flex; align-items:end; justify-content:space-between; gap:10px; margin-top:auto; padding-top:20px; }
.preview-card-bottom strong { color:#5725cd; font:900 1.64rem 'DM Sans','Noto Sans KR',sans-serif; letter-spacing:-.045em; white-space:nowrap; }
.preview-card-bottom strong small { margin-left:1px; font-size:.78rem; }
.preview-card-bottom a { color:#5a30be; font-size:.74rem; font-weight:800; white-space:nowrap; }
.preview-card-bottom a:hover { text-decoration:underline; text-underline-offset:3px; }
.preview-note { margin:18px 0 0; color:#817b88; font-size:.72rem; }
@media(max-width:1050px) {
  .hero-grid { gap:32px; }
  .quickbar { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:900px) {
  .hero { padding:45px 0 47px; }
  .hero-grid { grid-template-columns:1fr; gap:28px; }
  .hero h1 { font-size:clamp(2.5rem,5vw,3.1rem); }
  .hero-guide { max-width:690px; }
  .preview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:680px) {
  .container,.quickbar { width:calc(100% - 32px); }
  .hero { padding:33px 0 35px; }
  .hero h1 { margin:10px 0 13px; font-size:clamp(2.02rem,8.3vw,2.55rem); }
  .hero .lead { font-size:.84rem; }
  .hero-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:18px; }
  .hero-actions .btn { padding:10px 8px; font-size:.75rem; }
  .hero-guide-head { padding:20px; }
  .hero-guide a { min-height:67px; padding:13px 20px; }
  .hero-guide .guide-foot { padding:13px 20px; }
  .quickbar { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:12px; border:0; border-radius:0; }
  .quickbar a,.quickbar a+a,.quickbar a:nth-child(2),.quickbar a:nth-child(3),.quickbar a:nth-child(4) { min-height:84px; padding:12px; gap:8px; border:1px solid #e9e5ef; border-radius:11px; }
  .quickbar .quick-icon { width:34px; height:34px; border-radius:9px; font-size:.87rem; }
  .quickbar .quick-copy strong { font-size:.75rem; }
  .quickbar .quick-copy small { font-size:.64rem; white-space:normal; }
  .quickbar .quick-arrow { display:none; }
  .triage-section { padding-top:43px; }
  .plan-preview { padding:56px 0 58px; }
  .preview-head { align-items:start; flex-direction:column; gap:12px; }
  .preview-head h2 { font-size:1.8rem; }
  .preview-grid { grid-template-columns:1fr; gap:9px; }
  .preview-card { min-height:185px; padding:20px; }
  .preview-card-top { margin-bottom:12px; }
  .preview-card-bottom { padding-top:14px; }
}
