@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');

:root { --ink:#0e2740; --ink-deep:#0e2740; --ocean:#008cbf; --sky:#c7e7ef; --mist:#eaf3f5; --sand:#f5f2ed; --paper:#fffdfa; --gold:#b7663f; --slate:#616a70; --line:rgba(14,39,64,.15); --shadow:0 24px 70px rgba(14,39,64,.15); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,"Noto Sans KR",sans-serif; font-size:16px; line-height:1.7; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
.topline { height:35px; padding:0 max(28px, calc((100vw - 1280px)/2)); background:var(--ink-deep); color:#dbeaf0; display:flex; align-items:center; justify-content:space-between; font:500 10px/1.2 "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.topline p { margin:0; }.topline a { color:#fff; }.signal { width:7px; height:7px; display:inline-block; background:#93cab6; border-radius:50%; margin:0 8px 1px 0; box-shadow:0 0 0 4px rgba(147,202,182,.13); }
.site-header { height:90px; padding:0 max(28px, calc((100vw - 1280px)/2)); display:flex; align-items:center; gap:26px; position:relative; z-index:3; background:rgba(255,253,250,.95); border-bottom:1px solid rgba(14,39,64,.08); }
.brand { display:flex; align-items:center; gap:13px; min-width:388px; }.brand-logo { display:block; width:224px; height:auto; }.brand-identity { padding-left:13px; border-left:1px solid rgba(14,39,64,.16); }.brand-identity b { display:block; color:var(--ink); font-weight:800; font-size:11px; letter-spacing:.075em; line-height:1.15; }.brand-identity small { display:block; margin-top:3px; color:var(--slate); font:500 7px/1.4 "DM Mono",monospace; letter-spacing:.11em; }
nav { display:flex; gap:27px; margin-left:auto; } nav a { font-size:12px; font-weight:700; letter-spacing:.02em; position:relative; } nav a:after { content:""; position:absolute; bottom:-7px; left:0; width:0; height:1px; background:var(--ocean); transition:.25s; } nav a:hover:after { width:100%; }
.header-actions { display:flex; gap:12px; align-items:center; }.language-toggle { cursor:pointer; border:0; background:transparent; color:var(--ocean); font:500 10px "DM Mono",monospace; letter-spacing:.04em; padding:8px; }.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:15px 21px; border:1px solid var(--ink); color:#fff; background:var(--ink); font-size:12px; font-weight:800; line-height:1; letter-spacing:.02em; transition:.25s ease; cursor:pointer; }.button span { font-size:17px; font-weight:400; margin-top:-1px; }.button:hover { background:var(--ocean); border-color:var(--ocean); transform:translateY(-2px); }.button-small { padding:12px 15px; font-size:10px; }.hero { min-height:625px; padding:75px max(28px, calc((100vw - 1280px)/2)) 55px; display:grid; grid-template-columns:1.04fr .96fr; gap:50px; overflow:hidden; position:relative; background:linear-gradient(102deg,#f7f4ee 0%, #fbfaf6 54%,#e6f0f1 100%); }.hero-grid { position:absolute; inset:0 0 0 52%; background-image:linear-gradient(rgba(31,95,115,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(31,95,115,.075) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(90deg,transparent,black); }
.hero-copy { z-index:1; max-width:650px; align-self:center; }.eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 17px; color:var(--ocean); font:500 10px/1.4 "DM Mono",monospace; letter-spacing:.16em; text-transform:uppercase; }.eyebrow>span:first-child { display:inline-block; width:25px; height:1px; background:currentColor; }.eyebrow.light { color:#b3dce0; }.hero h1,.section h2,.app-banner h2 { margin:0; color:var(--ink); font-size:clamp(47px,5.1vw,77px); font-weight:700; line-height:1.04; letter-spacing:-.052em; }.hero h1 em,.section h2 em,.app-banner h2 em { font-family:"Playfair Display","Noto Sans KR",serif; font-weight:600; }.hero-description { max-width:520px; margin:25px 0 27px; color:#415561; font-size:16px; line-height:1.85; }.hero-buttons { display:flex; align-items:center; gap:25px; }.text-link { color:var(--ink); font-size:12px; font-weight:800; border-bottom:1px solid currentColor; padding-bottom:4px; }.text-link span { margin-left:5px; }.hero-proof { margin-top:60px; display:flex; gap:0; }.hero-proof>div { padding:0 24px; border-left:1px solid var(--line); }.hero-proof>div:first-child { padding-left:0; border:0; }.hero-proof strong { display:block; font-size:15px; }.hero-proof span { display:block; max-width:135px; color:#6d7d85; font-size:10px; line-height:1.45; }
.hero-visual { align-self:stretch; min-height:475px; position:relative; z-index:1; }.photo-frame { width:min(385px,78%); height:470px; position:absolute; top:3px; right:8%; background:#b4c9ca; box-shadow:var(--shadow); clip-path:polygon(0 5%,100% 0,95% 94%,6% 100%); overflow:hidden; }.photo-frame img { width:100%; height:100%; object-fit:cover; object-position:center 18%; filter:saturate(.84) contrast(1.04); }.photo-frame:after { content:""; position:absolute; inset:0; background:linear-gradient(160deg,rgba(255,255,255,.18),transparent 42%,rgba(11,39,53,.14)); pointer-events:none; }.orb { position:absolute; border-radius:50%; }.orb-one { width:370px; height:370px; right:-50px; top:43px; background:rgba(135,192,202,.3); }.orb-two { width:160px; height:160px; left:2%; bottom:0; border:1px solid rgba(31,95,115,.22); }.credential-card { width:210px; position:absolute; bottom:4px; left:0; background:var(--ink); padding:20px 20px 17px; color:#fff; box-shadow:0 17px 38px rgba(9,32,50,.19); }.credential-card .mini-label { display:block; margin-bottom:9px; color:#a8d7dc; font:500 8px "DM Mono",monospace; letter-spacing:.13em; }.credential-card strong { display:block; font:600 19px/1.2 "Playfair Display",serif; }.credential-card p { margin:8px 0 0; color:#d8e7e8; font-size:9px; line-height:1.55; }.compass-card { width:96px; height:110px; background:#f4eee5; position:absolute; right:0; bottom:35px; display:flex; flex-direction:column; justify-content:center; align-items:center; color:var(--ink); box-shadow:0 10px 20px rgba(9,32,50,.08); }.compass-card span { color:var(--gold); font-size:25px; line-height:1; }.compass-card small { margin-top:7px; text-align:center; font:500 7px/1.6 "DM Mono",monospace; letter-spacing:.12em; }
.intro-strip { max-width:1280px; min-height:116px; margin:auto; padding:26px max(28px, calc((100vw - 1280px)/2)); display:grid; grid-template-columns:1fr 1.1fr; align-items:center; gap:55px; }.intro-strip p { margin:0; }.intro-strip p:first-child { font:600 23px/1.35 "Playfair Display","Noto Sans KR",serif; }.intro-strip p:last-child { max-width:480px; color:#60737e; font-size:13px; }
.section { padding:110px max(28px, calc((100vw - 1280px)/2)); }.services { background:var(--mist); }.section-heading { margin-bottom:50px; }.split-heading { display:grid; grid-template-columns:1fr .72fr; gap:50px; align-items:end; }.section h2 { font-size:clamp(40px,4vw,57px); }.split-heading>p { max-width:395px; margin:0 0 4px; color:#506671; font-size:14px; }.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.service-card { min-height:345px; position:relative; padding:27px 29px; background:#fff; border:1px solid rgba(16,44,66,.06); transition:.25s; }.service-card:hover { transform:translateY(-6px); box-shadow:0 17px 35px rgba(16,44,66,.1); }.service-card.accent-card { color:#fff; background:var(--ink); }.service-number { position:absolute; top:24px; right:25px; color:#93a5ad; font:500 10px "DM Mono",monospace; }.accent-card .service-number { color:#a8d7dc; }.service-card h3 { margin:22px 0 10px; font:600 27px "Playfair Display","Noto Sans KR",serif; }.service-card p { min-height:75px; max-width:280px; margin:0; color:#60737e; font-size:12px; line-height:1.75; }.accent-card p { color:#d2e0e2; }.service-card a { position:absolute; bottom:25px; color:var(--ocean); font-size:11px; font-weight:800; border-bottom:1px solid currentColor; }.accent-card a { color:#b7e0e4; }.service-card a span { margin-left:6px; }.icon-house,.icon-renew,.icon-refinance { margin-top:12px; height:40px; width:43px; position:relative; }.icon-house:before { content:""; position:absolute; bottom:0; left:6px; width:27px; height:22px; border:2px solid currentColor; border-top:0; }.icon-house:after { content:""; position:absolute; transform:rotate(45deg); left:10px; top:0; width:24px; height:24px; border:2px solid currentColor; border-right:0; border-bottom:0; }.icon-renew { border:2px solid currentColor; border-radius:50%; width:34px; height:34px; }.icon-renew:after { content:"↗"; position:absolute; top:-12px; right:-10px; font-size:27px; }.icon-refinance:before { content:"↗"; font:500 45px/1 "Playfair Display",serif; }.icon-refinance:after { content:"$"; position:absolute; right:2px; bottom:0; width:16px; height:16px; display:grid; place-items:center; color:#fff; background:var(--ocean); border-radius:50%; font:bold 11px Arial; }.accent-card .icon-refinance:after { background:#a8d7dc; color:var(--ink); }
.calculator-section { color:#fff; background:var(--ink-deep); }.calculator-heading { display:grid; grid-template-columns:1fr .72fr; gap:50px; align-items:end; }.calculator-heading h2 { color:#fff; }.calculator-heading>p { margin:0 0 5px; color:#b9d1d6; font-size:14px; }.calculator-shell { background:#f8faf9; color:var(--ink); padding:0; }.calculator-tabs { display:flex; overflow-x:auto; background:#e2edef; border-bottom:1px solid #cddfe2; }.calc-tab { border:0; background:transparent; color:#496470; padding:18px 17px; cursor:pointer; white-space:nowrap; font-size:11px; font-weight:800; transition:.2s; }.calc-tab:hover,.calc-tab.active { color:#fff; background:var(--ocean); }.calculator-body { min-height:325px; padding:35px; display:grid; grid-template-columns:1.04fr .96fr; gap:45px; }.calc-title { margin:0 0 6px; font:600 25px/1.2 "Playfair Display","Noto Sans KR",serif; }.calc-subtitle { margin:0 0 23px; color:#687c85; font-size:11px; line-height:1.65; }.input-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.input-field { display:block; }.input-field label { display:block; margin:0 0 6px; color:#5d717a; font:500 9px "DM Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }.input-wrap { display:flex; align-items:center; height:42px; background:#fff; border:1px solid #d6e1e2; transition:.2s; }.input-wrap:focus-within { border-color:var(--ocean); box-shadow:0 0 0 3px rgba(31,95,115,.1); }.input-wrap span { padding:0 0 0 12px; color:#6d818b; font-size:12px; }.input-wrap input,.input-wrap select { min-width:0; width:100%; height:100%; padding:0 11px; border:0; outline:0; background:transparent; color:var(--ink); font-size:12px; font-weight:700; }.input-wrap select { appearance:auto; }.calc-actions { display:flex; gap:11px; align-items:center; margin-top:20px; }.calc-actions .button { padding:12px 17px; }.reset-calculator { color:#63747b; font-size:10px; border:0; background:transparent; cursor:pointer; text-decoration:underline; }.calculator-result { position:relative; display:flex; flex-direction:column; justify-content:center; padding:27px 29px; background:var(--ink); overflow:hidden; }.calculator-result:before { content:""; position:absolute; width:220px; height:220px; right:-90px; top:-90px; border:1px solid rgba(255,255,255,.15); border-radius:50%; }.result-eyebrow { z-index:1; margin:0 0 6px; color:#9bd0d5; font:500 9px "DM Mono",monospace; letter-spacing:.12em; }.result-main { z-index:1; margin:0; color:#fff; font-size:37px; font-weight:800; letter-spacing:-.05em; }.result-sub { z-index:1; max-width:260px; margin:8px 0 22px; color:#c6d8dc; font-size:11px; line-height:1.6; }.result-metrics { z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:11px; }.result-metrics div { padding-top:9px; border-top:1px solid rgba(255,255,255,.18); }.result-metrics span { display:block; color:#9fb8bd; font-size:9px; }.result-metrics strong { display:block; color:#fff; font-size:13px; }.calculator-disclaimer { padding:0 35px 23px; margin:0; color:#70828a; font-size:9px; }.tool-catalog { padding:26px 0 0; }.tool-catalog>p { margin:0 0 10px; color:#b7d3d7; font:500 10px "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }.tool-catalog div { display:flex; flex-wrap:wrap; gap:7px; }.tool-catalog span { border:1px solid rgba(183,211,215,.25); padding:7px 10px; color:#d7e5e7; font-size:10px; }
.pathways { display:grid; grid-template-columns:.82fr 1.18fr; gap:100px; align-items:center; }.pathways-copy p:not(.eyebrow) { max-width:400px; margin:22px 0 24px; color:#5d7079; font-size:14px; }.text-link.navy { color:var(--ink); }.path-list { padding:0; margin:0; list-style:none; border-top:1px solid var(--line); }.path-list li { display:grid; grid-template-columns:65px 1fr; gap:20px; padding:22px 0; border-bottom:1px solid var(--line); }.path-list li>span { color:var(--ocean); font:500 10px "DM Mono",monospace; padding-top:7px; }.path-list h3 { margin:0 0 4px; font:600 22px "Playfair Display","Noto Sans KR",serif; }.path-list p { margin:0; color:#5f737c; font-size:12px; }
.story { display:grid; grid-template-columns:.8fr 1.1fr; gap:100px; align-items:center; background:#f4f1eb; }.story-photo { min-height:540px; position:relative; }.story-photo img { width:70%; height:450px; position:absolute; z-index:1; left:10%; top:37px; object-fit:cover; object-position:center 20%; filter:saturate(.8); }.photo-outline { position:absolute; left:0; top:0; width:72%; height:455px; border:1px solid var(--gold); }.story-photo p { position:absolute; z-index:2; right:0; bottom:35px; writing-mode:vertical-rl; margin:0; color:var(--ocean); font:500 9px "DM Mono",monospace; letter-spacing:.15em; }.story-copy>p:not(.eyebrow) { max-width:565px; margin:17px 0; color:#536872; font-size:13px; line-height:1.85; }.story-tags { display:flex; flex-wrap:wrap; gap:8px; margin:25px 0; }.story-tags span { padding:6px 10px; border:1px solid #c6d0d1; color:#45616a; font-size:10px; }.button-outline { background:transparent; color:var(--ink); }.button-outline:hover { color:#fff; }
.app-banner { min-height:290px; padding:56px max(28px, calc((100vw - 1280px)/2)); display:grid; grid-template-columns:1.1fr .75fr auto; gap:45px; align-items:center; background:var(--ocean); color:#fff; position:relative; overflow:hidden; }.app-banner:after { content:""; position:absolute; width:390px; height:390px; border:1px solid rgba(255,255,255,.15); border-radius:50%; right:-120px; top:-100px; }.app-banner h2 { color:#fff; font-size:43px; }.app-banner>p { max-width:300px; margin:0; color:#e0f0f1; font-size:12px; }.button-white { z-index:1; border-color:#fff; background:#fff; color:var(--ink); }.button-white:hover { background:#d8eef0; border-color:#d8eef0; color:var(--ink); }
.compliance { padding-top:92px; padding-bottom:82px; background:var(--sand); }.compliance-heading { display:grid; grid-template-columns:1fr .8fr; gap:50px; align-items:end; margin-bottom:38px; }.compliance-heading h2 { font-size:clamp(38px,3.8vw,53px); }.compliance-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(14,39,64,.15); border:1px solid rgba(14,39,64,.15); }.compliance-grid article { min-height:235px; padding:25px 27px; background:#fffdfa; }.compliance-grid span { color:var(--ocean); font:500 10px "DM Mono",monospace; letter-spacing:.12em; }.compliance-grid h3 { margin:24px 0 8px; font:600 20px/1.2 "Playfair Display","Noto Sans KR",serif; }.compliance-grid p { margin:0; color:#536872; font-size:11px; line-height:1.75; }.privacy-note { max-width:900px; margin:20px 0 0; padding:13px 16px; border-left:3px solid var(--gold); color:#526772; background:rgba(255,255,255,.54); font-size:11px; line-height:1.7; }
.contact { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }.contact-title>p:not(.eyebrow) { max-width:440px; margin:22px 0 0; color:#59707a; font-size:14px; }.contact-card { padding:12px 30px 28px; background:var(--mist); border-top:4px solid var(--ocean); }.contact-card>a:not(.button) { display:block; padding:18px 0; border-bottom:1px solid rgba(16,44,66,.13); }.contact-card span { display:block; color:#66808a; font:500 9px "DM Mono",monospace; letter-spacing:.1em; }.contact-card strong { display:block; margin-top:2px; font-size:15px; font-weight:800; }.contact-card strong b { color:var(--ocean); }.contact-card .button { margin-top:25px; width:100%; }
footer { padding:27px max(28px, calc((100vw - 1280px)/2)); display:grid; grid-template-columns:.82fr 1fr .86fr; gap:30px; align-items:center; color:#4f626c; background:var(--sand); border-top:1px solid rgba(14,39,64,.12); font-size:9px; line-height:1.65; }.footer-brand { display:flex; align-items:center; }.footer-brand img { display:block; width:235px; max-width:100%; height:auto; mix-blend-mode:multiply; } footer p { margin:0; }
@media (max-width:900px) { .site-header{gap:14px}.site-header nav{display:none}.brand{min-width:0}.header-actions{margin-left:auto}.hero{grid-template-columns:1fr; padding-top:65px}.hero-visual{width:520px; max-width:100%; height:465px;margin:0 auto}.hero h1{font-size:60px}.intro-strip,.split-heading,.calculator-heading,.compliance-heading,.pathways,.story,.contact{grid-template-columns:1fr;gap:35px}.service-grid{grid-template-columns:repeat(3,1fr)}.service-card{padding:25px 20px}.calculator-heading>p{max-width:450px}.story{gap:10px}.story-photo{min-height:480px}.app-banner{grid-template-columns:1fr 1fr}.app-banner a{justify-self:start}.contact-card{max-width:580px}footer{grid-template-columns:1fr auto}.footer-brand{grid-row:span 2} }
@media (max-width:620px) { .topline{padding:0 17px;font-size:8px}.topline p{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-header{height:70px;padding:0 17px}.brand{min-width:0}.brand-logo{width:184px}.brand-identity{display:none}.header-actions .button{display:none}.language-toggle{padding:7px 0}.hero{padding:48px 23px 37px;min-height:0;gap:12px}.hero h1{font-size:46px}.hero-description{font-size:14px}.hero-buttons{align-items:flex-start;flex-direction:column;gap:18px}.hero-proof{margin-top:36px}.hero-proof>div{padding:0 12px}.hero-proof strong{font-size:12px}.hero-proof span{font-size:8px}.hero-visual{height:375px;min-height:375px}.photo-frame{height:355px;width:262px;right:9%}.credential-card{width:180px;padding:14px;bottom:3px}.compass-card{display:none}.orb-one{width:270px;height:270px}.intro-strip{padding:27px 23px;gap:12px}.intro-strip p:first-child{font-size:20px}.section{padding:68px 23px}.section h2{font-size:39px}.split-heading{gap:16px}.service-grid,.compliance-grid{grid-template-columns:1fr;gap:10px}.service-card{min-height:255px}.service-card p{min-height:0}.compliance{padding-top:68px;padding-bottom:58px}.compliance-grid{background:transparent;border:0}.compliance-grid article{min-height:0;border:1px solid rgba(14,39,64,.15)}.calculator-heading{gap:17px}.calculator-tabs{margin:0 -23px}.calc-tab{padding:15px 12px;font-size:10px}.calculator-body{padding:24px 18px;grid-template-columns:1fr;gap:20px}.input-grid{gap:10px}.calculator-result{min-height:245px}.calculator-disclaimer{padding:0 18px 19px}.tool-catalog{padding-top:24px}.pathways{gap:40px}.path-list li{grid-template-columns:45px 1fr}.story{padding-bottom:56px}.story-photo{min-height:380px}.story-photo img{height:340px;width:78%;left:8%;top:25px}.photo-outline{height:350px;width:80%}.story-photo p{bottom:5px}.app-banner{padding:51px 23px;grid-template-columns:1fr;gap:20px}.app-banner h2{font-size:38px}.contact{gap:35px}.contact-card{padding:12px 20px 23px}footer{padding:24px 23px;grid-template-columns:1fr;gap:12px}.footer-brand{grid-row:auto}.footer-brand img{width:230px} }

/* Light, single-typeface redesign */
body, body *, body *::before, body *::after { font-family:Inter,"Noto Sans KR",Arial,sans-serif !important; }
body { background:#fff; color:#183248; line-height:1.65; }
.topline { height:34px; background:#008cbf; color:#fff; font-size:9px; letter-spacing:.06em; }.topline a { color:#fff; font-weight:800; }.signal { background:#fff; box-shadow:none; }
.site-header { height:82px; background:#fff; border-bottom:1px solid #e7eef1; box-shadow:none; }.brand-logo { width:214px; }.brand-identity { border-color:#dbe5e9; }.brand-identity b { color:#183248; font-size:10px; }.brand-identity small { color:#687781; font-size:7px; }.site-header nav a { color:#405a69; font-size:11px; font-weight:700; }.site-header nav a:after { bottom:-9px; background:#008cbf; }.language-toggle { color:#008cbf; font-size:10px; font-weight:800; }.button { border-radius:4px; border-color:#008cbf; background:#008cbf; box-shadow:none; font-size:11px; }.button:hover { background:#006f9a; border-color:#006f9a; transform:none; }.button-small { padding:12px 15px; }
.hero { min-height:548px; padding-top:72px; padding-bottom:55px; background:#f7fbfc; gap:58px; }.hero-grid { display:none; }.hero-copy { max-width:610px; }.eyebrow { margin-bottom:14px; color:#008cbf; font-size:10px; font-weight:800; letter-spacing:.1em; }.hero h1,.section h2,.app-banner h2 { color:#183248; font-size:clamp(45px,4.7vw,68px); line-height:1.09; letter-spacing:-.04em; font-weight:800; }.hero h1 em,.section h2 em,.app-banner h2 em { color:#008cbf; font-style:normal; font-weight:800; }.hero-description { margin:22px 0 26px; color:#526975; font-size:15px; line-height:1.8; }.hero-buttons { gap:22px; }.text-link { color:#24536a; font-size:11px; border:0; text-decoration:underline; text-underline-offset:4px; }.hero-proof { margin-top:47px; }.hero-proof>div { border-color:#d9e6eb; }.hero-proof strong { color:#183248; font-size:13px; }.hero-proof span { color:#6d7e86; font-size:9px; }
.hero-visual { min-height:420px; }.photo-frame { width:min(350px,76%); height:425px; top:0; right:9%; clip-path:none; border-radius:14px; box-shadow:0 18px 45px rgba(14,39,64,.13); }.photo-frame img { filter:saturate(.94) contrast(1.01); }.orb-one { width:335px; height:335px; right:-12px; top:45px; background:#dff1f5; }.orb-two { display:none; }.credential-card { width:208px; bottom:0; background:#fff; color:#183248; border-radius:8px; box-shadow:0 15px 30px rgba(14,39,64,.13); }.credential-card .mini-label { color:#008cbf; font-size:8px; }.credential-card strong { font-size:17px; font-weight:800; }.credential-card p { color:#5d717c; font-size:9px; }.compass-card { display:none; }
.intro-strip { min-height:100px; border-bottom:1px solid #e7eef1; }.intro-strip p:first-child { color:#183248; font-size:22px; font-weight:800; }.intro-strip p:last-child { color:#687a84; }
.services { background:#fff; }.section { padding-top:92px; padding-bottom:92px; }.split-heading { align-items:start; }.section h2 { font-size:clamp(38px,3.8vw,52px); }.split-heading>p { margin-top:35px; color:#617580; }.service-grid { gap:18px; }.service-card { min-height:290px; padding:26px; border:1px solid #dfe9ed; border-radius:8px; box-shadow:none; }.service-card:hover { transform:none; box-shadow:0 8px 22px rgba(14,39,64,.07); border-color:#c7dde5; }.service-card.accent-card { color:#183248; background:#f2f9fb; }.service-number { color:#8aa0aa; }.accent-card .service-number { color:#008cbf; }.service-card h3 { margin-top:18px; color:#183248; font-size:23px; font-weight:800; }.service-card p,.accent-card p { color:#607480; font-size:12px; }.service-card a,.accent-card a { color:#008cbf; font-size:11px; }.icon-house,.icon-renew,.icon-refinance { color:#008cbf; transform:scale(.86); transform-origin:left top; }
.calculator-section { background:#f7fbfc; color:#183248; }.calculator-heading { align-items:start; }.calculator-heading h2 { color:#183248; }.calculator-heading>p { margin-top:34px; color:#617580; }.calculator-shell { background:#fff; border:1px solid #dce8ed; border-radius:8px; box-shadow:0 10px 30px rgba(14,39,64,.06); overflow:hidden; }.calculator-tabs { background:#fff; border-bottom:1px solid #e2edf1; }.calc-tab { color:#607783; font-size:10px; }.calc-tab:hover,.calc-tab.active { color:#008cbf; background:#eff8fa; box-shadow:inset 0 -2px 0 #008cbf; }.calculator-body { padding:31px; }.calc-title { color:#183248; font-size:23px; font-weight:800; }.calc-subtitle { color:#6a7e87; }.input-wrap { border-color:#d8e5e9; border-radius:4px; }.input-wrap:focus-within { border-color:#008cbf; box-shadow:0 0 0 3px rgba(0,140,191,.1); }.calculator-result { background:#183248; border-radius:7px; }.calculator-disclaimer { color:#798b93; }.tool-catalog>p { color:#5a7583; }.tool-catalog span { color:#31566a; border-color:#cddfe5; background:#fff; }
.pathways { background:#fff; }.pathways-copy p:not(.eyebrow) { color:#617580; }.path-list { border-color:#dbe7eb; }.path-list li { border-color:#dbe7eb; }.path-list li>span { color:#008cbf; }.path-list h3 { color:#183248; font-weight:800; }.path-list p { color:#637780; }
.story { background:#f7fbfc; }.story-photo img { border-radius:10px; filter:saturate(.92); }.photo-outline { border-color:#008cbf; border-radius:10px; }.story-copy>p:not(.eyebrow) { color:#586e79; }.story-tags span { border-color:#d2e1e6; color:#456470; background:#fff; }.button-outline { border-color:#183248; color:#183248; background:transparent; }.button-outline:hover { background:#183248; border-color:#183248; }
.app-banner { min-height:245px; background:#183248; }.app-banner h2 { color:#fff; font-size:39px; }.app-banner>p { color:#d3e4e9; }.button-white { color:#183248; background:#fff; border-color:#fff; }
.compliance { background:#fff; }.compliance-grid { background:#dbe7eb; border-color:#dbe7eb; }.compliance-grid article { background:#f8fbfc; }.compliance-grid h3 { color:#183248; font-weight:800; }.compliance-grid p { color:#60747e; }.privacy-note { border-color:#008cbf; background:#f2f9fb; color:#516b77; }
.contact { background:#fff; }.contact-title>p:not(.eyebrow) { color:#5c727d; }.contact-card { background:#f7fbfc; border-color:#008cbf; border-radius:8px; }.contact-card>a:not(.button) { border-color:#dbe7eb; }.contact-card span { color:#69808a; }.contact-card strong { color:#183248; }
footer { background:#fff; color:#62757e; border-top:1px solid #dce8ed; }.footer-brand img { mix-blend-mode:multiply; }
@media (max-width:900px) { .hero { gap:28px; }.compliance-heading { gap:18px; }.compliance-heading h2 { margin:0; } }
@media (max-width:620px) { .site-header { height:70px; }.brand-logo { width:178px; }.hero { padding-top:48px; }.hero h1 { font-size:44px; }.hero-visual { height:350px; min-height:350px; }.photo-frame { height:342px; width:253px; }.hero-proof { gap:0; }.hero-proof>div { padding:0 9px; }.intro-strip p:first-child { font-size:19px; }.section { padding-top:67px; padding-bottom:67px; }.calculator-body { padding:20px; }.app-banner h2 { font-size:35px; } }

/* Kyungman Kim personal palette — MA Blue stays reserved for the official logo. */
:root { --ink:#111315; --ink-deep:#111315; --ocean:#1c3147; --gold:#b7663f; --sand:#f5f2ed; --mist:#f7f5f1; }
body { color:#111315; }
.topline { background:#111315; color:#f5f2ed; }.topline a { font-size:11px; letter-spacing:.03em; }.signal { background:#b7663f; }
.site-header { border-bottom-color:#e5e1da; }.brand-identity b { color:#111315; }.brand-identity small { color:#1c3147; }.site-header nav a { color:#1c3147; }.site-header nav a:after { background:#b7663f; }.language-toggle { color:#1c3147; }
.button { background:#111315; border-color:#111315; }.button:hover { background:#b7663f; border-color:#b7663f; }.button-small { background:#1c3147; border-color:#1c3147; }.button-small:hover { background:#b7663f; border-color:#b7663f; }
.hero { background:linear-gradient(112deg,#f5f2ed 0%,#fbfaf8 59%,#edf0f1 100%); }.eyebrow { color:#b7663f; }.hero h1,.section h2 { color:#111315; }.hero h1 em,.section h2 em { color:#b7663f; }.hero-description { color:#465563; }.text-link { color:#1c3147; }.hero-proof>div { border-color:#d8d4cc; }.hero-proof strong { color:#1c3147; }.hero-proof span { color:#66707a; }
.photo-frame { box-shadow:0 20px 48px rgba(17,19,21,.16); }.orb-one { background:#dce5e8; }.credential-card { box-shadow:0 16px 34px rgba(17,19,21,.15); }.credential-card .mini-label { color:#b7663f; }.credential-card strong { color:#111315; font-size:19px; }.credential-card p { color:#425263; }
.intro-strip { background:#fff; border-bottom-color:#e5e1da; }.intro-strip p:first-child { color:#111315; }.intro-strip p:last-child { color:#596570; }
.services { background:#fff; }.split-heading>p,.calculator-heading>p,.pathways-copy p:not(.eyebrow),.story-copy>p:not(.eyebrow),.contact-title>p:not(.eyebrow) { color:#5c6872; }.service-card { border-color:#e3dfd8; }.service-card:hover { border-color:#b7663f; box-shadow:0 9px 24px rgba(28,49,71,.08); }.service-card.accent-card { color:#fff; background:#1c3147; }.service-number { color:#8b9297; }.accent-card .service-number,.accent-card h3,.accent-card p,.accent-card a { color:#fff; }.service-card h3 { color:#111315; }.service-card p { color:#5b6771; }.service-card a,.icon-house,.icon-renew,.icon-refinance { color:#b7663f; }
.calculator-section { background:#f5f2ed; }.calculator-shell { border-color:#ded9d0; box-shadow:0 10px 30px rgba(17,19,21,.06); }.calculator-tabs { border-bottom-color:#e2ddd4; }.calc-tab:hover,.calc-tab.active { color:#1c3147; background:#f7f1ec; box-shadow:inset 0 -2px 0 #b7663f; }.input-wrap:focus-within { border-color:#b7663f; box-shadow:0 0 0 3px rgba(183,102,63,.12); }.calculator-result { background:#1c3147; }.tool-catalog span { color:#1c3147; border-color:#d6d0c7; }
.path-list { border-color:#ded9d0; }.path-list li { border-color:#ded9d0; }.path-list li>span { color:#b7663f; }.path-list h3 { color:#1c3147; }.photo-outline { border-color:#b7663f; }.story { background:#f7f5f1; }.story-tags span { border-color:#ddd6cd; color:#1c3147; }.button-outline { border-color:#1c3147; color:#1c3147; }.button-outline:hover { background:#1c3147; border-color:#1c3147; }
.app-banner { background:#1c3147; }.app-banner:after { border-color:rgba(183,102,63,.42); }.app-banner h2 em { color:#d38b67; }.app-banner>p { color:#dbe3e6; }.button-white { color:#1c3147; background:#fff; border-color:#fff; }.button-white:hover { background:#e7c2af; border-color:#e7c2af; }
.compliance { background:#fff; }.compliance-grid { background:#ded9d0; border-color:#ded9d0; }.compliance-grid article { background:#fcfbf9; }.compliance-grid span { color:#b7663f; }.compliance-grid h3 { color:#1c3147; }.privacy-note { border-color:#b7663f; background:#faf4ef; color:#4e5c66; }
.contact-card { background:#f7f5f1; border-color:#b7663f; }.contact-card>a:not(.button) { border-color:#ded9d0; }.contact-card span { color:#69727a; }.contact-card strong { color:#1c3147; }.contact-card>a:first-child strong { font-size:22px; letter-spacing:.01em; }.contact-card>a:nth-child(2) strong { font-size:17px; }.contact-card strong b { color:#b7663f; }
footer { padding-top:34px; padding-bottom:30px; grid-template-columns:minmax(220px,.86fr) minmax(280px,1.2fr) minmax(220px,.78fr); background:#1c3147; color:#e9eef0; border-top:4px solid #b7663f; font-size:11px; line-height:1.65; }.footer-brand { display:block; }.footer-brand img { width:245px; max-width:100%; height:auto; mix-blend-mode:normal; }.footer-brand span { display:block; margin-top:10px; color:#d8a587; font-size:10px; font-weight:700; letter-spacing:.035em; }.footer-details p,.footer-corporate p { margin:0; }.footer-details p + p,.footer-corporate p + p { margin-top:4px; }.footer-personal { display:flex; align-items:baseline; gap:12px; margin-bottom:9px !important; }.footer-personal strong,.footer-personal a { color:#fff; font-size:16px; font-weight:800; }.footer-personal a { color:#fff; text-decoration:underline; text-decoration-color:#b7663f; text-underline-offset:4px; }.footer-corporate { color:#c9d3d7; }.footer-corporate p:first-child { color:#fff; font-size:12px; font-weight:700; }
@media (max-width:900px) { footer { grid-template-columns:1fr 1fr; gap:26px; }.footer-brand { grid-row:span 2; }.footer-corporate { align-self:end; } }
@media (max-width:620px) { footer { padding:28px 23px; grid-template-columns:1fr; gap:16px; }.footer-brand { grid-row:auto; }.footer-brand img { width:235px; }.footer-personal strong,.footer-personal a { font-size:15px; } }

/* Warm ivory foundation: light enough for clarity, softer than pure white. */
body { background:#f6f1ea; }
.site-header { background:#fcfaf6; border-bottom-color:#e6ddd1; }
.hero { background:linear-gradient(112deg,#f3ede4 0%,#faf7f2 58%,#e9eeed 100%); }
.intro-strip { background:#fbf8f3; border-bottom-color:#e6ddd1; }
.services { background:#f8f4ee; }
.service-card { background:#fffdf9; border-color:#e6ddd1; }.service-card.accent-card { background:#1c3147; }
.calculator-section { background:#f1ebe3; }.calculator-shell { background:#fffdf9; border-color:#ded4c8; }.calculator-tabs { background:#fbf8f3; }.tool-catalog span { background:#fffdf9; }
.pathways { background:#fbf8f3; }.story { background:#f3eee7; }
.story-tags span { background:#fffdf9; }.compliance { background:#f8f4ee; }.compliance-grid article { background:#fffdf9; }
.contact { background:#faf7f2; }.contact-card { background:#f2ece4; }
