/* Contact page — layout + service picker (shared EN/KO). Generic form-card/field styles live in theme.css. */
.subhero{position:relative;overflow:hidden}
.subhero .hero-bg{position:absolute;top:0;bottom:0;right:0;left:auto;width:56%;z-index:0;background:url("/assets/img/contact-hero.jpg") center center/cover;pointer-events:none}
.subhero .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(238,243,251,1) 0%,rgba(238,243,251,.98) 14%,rgba(238,243,251,.82) 26%,rgba(238,243,251,.35) 42%,rgba(238,243,251,0) 60%),linear-gradient(180deg,rgba(238,243,251,.5) 0%,rgba(238,243,251,0) 30%,rgba(238,243,251,0) 70%,rgba(238,243,251,.65) 100%)}
@media(max-width:760px){.subhero .hero-bg{width:auto;left:0;right:0;opacity:.5}.subhero .hero-bg::after{background:linear-gradient(180deg,rgba(238,243,251,.75),rgba(238,243,251,.92))}}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:36px;align-items:start}
.contact-info{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 24px 56px -34px rgba(15,35,65,.16)}
.ci-h{font-size:1.18rem;margin:0 0 6px;color:var(--ink)}
.ci-sub{font-size:.92rem;color:var(--ink-soft);margin:0 0 20px;line-height:1.55}
.ci-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.ci-list li{display:grid;gap:4px}
.ci-k{font-size:.74rem;font-weight:700;letter-spacing:.04em;color:var(--cyan-deep);text-transform:uppercase}
.ci-list a{color:var(--ink);font-weight:700;font-size:1.04rem;text-decoration:none;width:fit-content;border-bottom:1px solid transparent;transition:.18s}
.ci-list a:hover{border-bottom-color:var(--cyan)}
.ci-v{color:var(--ink-soft);font-size:.94rem;line-height:1.5}
.svc-list{display:grid;gap:10px}
.svc-opt{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid var(--line);border-radius:11px;cursor:pointer;transition:border-color .16s,background .16s;font-size:.97rem;color:var(--ink);font-weight:500}
.svc-opt:hover{border-color:var(--cyan)}
.svc-opt input{width:18px;height:18px;accent-color:var(--cyan);cursor:pointer;flex:none}
.svc-opt:has(input:checked){border-color:var(--cyan);background:rgba(14,165,233,.06)}
.pc-field{display:none;margin:2px 0 2px;padding:16px 16px 4px;border-left:2px solid var(--cyan);background:rgba(14,165,233,.04);border-radius:0 10px 10px 0}
.pc-field.show{display:block}
.pc-field label{font-size:.88rem}
.field.invalid .err-svc{display:block}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr;gap:24px}.form-card{padding:26px 22px}.contact-info{padding:24px 22px}}
