/* Consultation page: form-first layout with a compact channel directory. */
.iho-contact-page{color:var(--iho-ink);overflow:hidden}
.iho-contact-container{width:min(1180px,calc(100% - 96px));margin-inline:auto}
.iho-contact-hero{min-height:335px;display:flex;align-items:center;padding:64px 0;background-color:#102738;background-image:linear-gradient(90deg,#102738f2,#102738d8 57%,#102738c5),url('assets/urban-walkway.webp');background-position:center 57%;background-size:cover;color:#fff}
.iho-contact-eyebrow{margin:0;color:#b6ccd4;font-size:12px;font-weight:700;letter-spacing:.16em;line-height:1.5}
.iho-contact-hero .iho-contact-container{animation:iho-contact-enter .65s ease-out both}
.iho-contact-hero h1{margin:16px 0 15px;color:#fff;font-size:clamp(40px,4.6vw,62px);line-height:1.22;font-weight:650;letter-spacing:-.055em}
.iho-contact-hero p:last-child{margin:0;color:#e2ebee;font-size:clamp(17px,1.7vw,20px);line-height:1.75}
@keyframes iho-contact-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.iho-contact-body{padding:86px 0 112px;background:#f5f8f8}
.iho-contact-layout{display:grid;grid-template-columns:minmax(0,1.54fr) minmax(310px,.8fr);align-items:start;gap:48px}
.iho-contact-form-column{min-width:0;background:#fff;border:1px solid #dce5e8;padding:43px 45px 49px}
.iho-contact-section-title .iho-contact-eyebrow{color:#557c89}
.iho-contact-section-title h2{margin:0 0 10px;color:var(--iho-navy);font-size:clamp(30px,3vw,39px);font-weight:650;line-height:1.3;letter-spacing:-.05em}
.iho-contact-section-title>p:last-child{margin:0;color:#536a74;font-size:15px;line-height:1.75}
.iho-contact-form-column .iho-notice{margin:26px 0 0;padding:15px 18px;border:0;border-left:3px solid #7c9baa;background:#f0f5f7;font-size:13px;line-height:1.65}
.iho-contact-form-column .iho-notice strong{display:block;color:#244554;font-weight:650}
.iho-contact-form-column .iho-notice p{margin:3px 0 0;color:#536a74}
.iho-contact-form-column .iho-form{margin:0}
.iho-contact-form-column .iho-required-note{margin:25px 0 0;color:#627680;font-size:13px}
.iho-contact-form-column .iho-required-note span,.iho-contact-form-column .iho-field label>span{color:#ae5845}
.iho-form-section{padding:37px 0 38px;border-bottom:1px solid #dbe4e7}
.iho-form-section-head{display:flex;align-items:baseline;gap:15px;margin:0 0 23px}
.iho-form-section-head>span{color:#638391;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
.iho-form-section-head h3{margin:0;color:var(--iho-navy);font-size:22px;font-weight:650;letter-spacing:-.04em}
.iho-contact-form-column .iho-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 18px}
.iho-contact-form-column .iho-field-full{grid-column:1/-1}
.iho-contact-form-column .iho-field label{margin-bottom:8px;color:#263c48;font-size:14px;font-weight:600}
.iho-contact-form-column .iho-field label small{font-size:12px;font-weight:400;color:#607984}
.iho-contact-form-column .iho-field input,.iho-contact-form-column .iho-field select,.iho-contact-form-column .iho-field textarea{display:block;width:100%;min-width:0;min-height:48px;padding:11px 13px;border:1px solid #b9c9cf;border-radius:2px;background:#fff;color:var(--iho-ink);font-size:15px;line-height:1.5;box-shadow:none}
.iho-contact-form-column .iho-field textarea{min-height:155px;resize:vertical}
.iho-contact-form-column .iho-field input:hover,.iho-contact-form-column .iho-field select:hover,.iho-contact-form-column .iho-field textarea:hover{border-color:#6f929f}
.iho-contact-form-column .iho-field input:focus,.iho-contact-form-column .iho-field select:focus,.iho-contact-form-column .iho-field textarea:focus{border-color:#3a7183;outline:2px solid #bfd5de;outline-offset:1px}
.iho-contact-form-column .iho-field>small{display:block;margin-top:8px;color:#607580;font-size:12px;line-height:1.55}
.iho-referral{min-width:0;margin:0;padding:10px 0 28px;border:0;border-bottom:1px solid #dbe4e7}
.iho-referral legend{padding:0;margin:0!important;color:var(--iho-navy);font-size:18px;font-weight:650;letter-spacing:-.025em}
.iho-referral legend small{font-size:12px;font-weight:400;color:#607984}
.iho-referral-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:6px}
.iho-referral-options label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid #d4e0e3;border-radius:2px;background:#fff;color:#344d59;font-size:13px;line-height:1.4;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}
.iho-referral-options label:hover,.iho-referral-options label:focus-within{background:#eef5f6;border-color:#8baab4}
.iho-referral-options label:has(input:checked){background:#e7f0f3;border-color:#688d9d;color:var(--iho-navy)}
.iho-referral-options input{width:17px;height:17px;flex:none;margin:0;accent-color:#28576b}
.iho-referral-other{margin-top:15px}
.iho-referral-other[hidden]{display:none}
.iho-form-privacy{margin:0 0 24px;padding:21px 22px;background:#f3f7f8;border-left:2px solid #86a6b2;color:#4d6671;font-size:13px;line-height:1.65}
.iho-form-privacy h3{margin:0 0 12px;color:var(--iho-navy);font-size:16px;font-weight:650}
.iho-form-privacy dl{margin:0 0 11px}
.iho-form-privacy dl>div{display:grid;grid-template-columns:72px 1fr;gap:12px;padding:5px 0}
.iho-form-privacy dt{color:#314e5b;font-weight:650}
.iho-form-privacy dd{margin:0}
.iho-form-privacy p{margin:8px 0 7px;color:inherit}
.iho-form-privacy a{color:#22546b;font-weight:650}
.iho-form-consent-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin:22px 0 19px}
.iho-form-consent{display:flex;align-items:flex-start;gap:9px;margin:0;color:var(--iho-navy);font-size:14px;font-weight:500;line-height:1.6;cursor:pointer}
.iho-form-consent:hover,.iho-form-consent:focus-within{border-color:#698f9f;background:#f7fafb}
.iho-form-consent input{flex:none;width:19px;height:19px;margin:2px 0 0;accent-color:#28576b}
.iho-form-consent strong{color:#9a4436;font-weight:700}
.iho-privacy-open{min-height:32px;padding:4px 9px;border:1px solid #a9c0c9;border-radius:2px;background:#fff;color:#28576b;font-size:12px;font-weight:600;line-height:1.4;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}
.iho-privacy-open:hover,.iho-privacy-open:focus-visible{background:#eaf2f4;border-color:#628999}
.iho-privacy-dialog{width:min(760px,calc(100% - 32px));max-width:none;max-height:84dvh;margin:auto;padding:0;border:1px solid #c8d6dc;border-radius:3px;overflow:hidden;background:#fff;color:var(--iho-ink);box-shadow:0 28px 70px #0b233950}
.iho-privacy-dialog::backdrop{background:#102738b8}
.iho-privacy-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 22px;border-bottom:1px solid #d7e2e5;background:#fff}
.iho-privacy-dialog-head h2{margin:0;color:var(--iho-navy);font-size:21px;font-weight:650;line-height:1.4}
.iho-privacy-dialog .iho-privacy-close{display:grid;place-items:center;flex:none;width:35px;height:35px;padding:0;border:1px solid #b7cbd2;background:#fff;color:#102738;font-size:27px;line-height:1;cursor:pointer}
.iho-privacy-dialog .iho-privacy-close:hover,.iho-privacy-dialog .iho-privacy-close:focus-visible{background:#eaf2f4;color:#102738}
.iho-privacy-dialog-content{max-height:calc(84dvh - 70px);overflow-y:auto;padding:23px 27px 35px;overscroll-behavior:contain}
.iho-privacy-draft-label{margin:18px 0 22px;padding:10px 12px;border-left:2px solid #9bb5bf;background:#f4f8f9;color:#506975;font-size:13px;line-height:1.65}
.iho-privacy-document h2{margin:30px 0 11px;color:var(--iho-navy);font-size:22px;line-height:1.45}
.iho-privacy-document h3{margin:28px 0 9px;padding-top:16px;border-top:1px solid #dce6e9;color:var(--iho-navy);font-size:18px;line-height:1.5}
.iho-privacy-document h4{margin:19px 0 7px;color:var(--iho-navy);font-size:15px;line-height:1.5}
.iho-privacy-document p{margin:0 0 9px;color:#435963;font-size:14px;line-height:1.76;overflow-wrap:anywhere}
.iho-contact-form-column .iho-form-submit{width:100%;min-height:54px;background:var(--iho-navy);color:#fff;font-size:15px;font-weight:650;transition:background-color .18s ease}
.iho-contact-form-column .iho-form-submit:hover,.iho-contact-form-column .iho-form-submit:focus-visible{background:#275064}
.iho-submit-dialog{width:min(440px,calc(100% - 32px));max-width:none;margin:auto;padding:34px 30px 30px;border:1px solid #d5e0e4;border-radius:14px;background:#fff;color:var(--iho-navy);text-align:center;box-shadow:0 24px 70px #0b23394a}
.iho-submit-dialog::backdrop{background:#102738b8}
.iho-submit-dialog-mark{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 19px;border-radius:50%;background:#eaf2f4;color:#28576b;font-size:27px;line-height:1}
.iho-submit-dialog p{margin:0;color:var(--iho-navy);font-size:18px;font-weight:600;line-height:1.7;word-break:keep-all}
.iho-submit-dialog-close{min-width:122px;min-height:44px;margin-top:25px;padding:9px 21px;border:0;border-radius:7px;background:var(--iho-navy);color:#fff;font-size:14px;font-weight:650;cursor:pointer;transition:background-color .18s ease,box-shadow .18s ease}
.iho-submit-dialog-close:hover,.iho-submit-dialog-close:focus-visible{background:#28576b;box-shadow:0 5px 15px #10273824}
.iho-contact-channels{position:sticky;top:118px;padding:36px 30px 30px;background:#173141;color:#fff}
.iho-contact-channels .iho-contact-eyebrow{color:#abc5cf}
.iho-contact-channels h2{margin:0 0 13px;color:#fff;font-size:clamp(27px,2.5vw,34px);font-weight:650;line-height:1.35;letter-spacing:-.045em}
.iho-contact-channels-intro{margin:0 0 22px;color:#c8d9df;font-size:14px;line-height:1.75}
.iho-contact-channel-list{border-top:1px solid #63808b70}
.iho-contact-channel{display:grid;grid-template-columns:44px minmax(0,1fr) 14px;align-items:center;gap:12px;width:100%;min-height:86px;padding:13px 2px;border:0;border-bottom:1px solid #63808b70;background:none;color:#fff;text-align:left;cursor:pointer;transition:background-color .18s ease,padding-inline .18s ease}
.iho-contact-channel:hover,.iho-contact-channel:focus-visible{padding-inline:10px;background:#ffffff12}
.iho-contact-channel-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#edf4f6;color:#1d4556}
.iho-contact-channel-icon svg{width:27px;height:27px}
.iho-contact-channel-kakao{background:#fce99c;color:#503b17}
.iho-contact-channel-whatsapp{background:#d5efdb;color:#1c6c3d}
.iho-contact-channel-text{display:flex;flex-direction:column;min-width:0}
.iho-contact-channel-text small{color:#abc4ce;font-size:10px;line-height:1.4;letter-spacing:.12em;font-weight:650}
.iho-contact-channel-text strong{color:#fff;font-size:16px;line-height:1.45;font-weight:650;overflow-wrap:anywhere}
.iho-contact-channel-text>span{color:#c1d1d7;font-size:12px;line-height:1.5}
.iho-contact-channel-end{align-self:center;color:#b2cbd4;font-size:18px;transition:transform .18s ease}
.iho-contact-channel:hover .iho-contact-channel-end,.iho-contact-channel:focus-visible .iho-contact-channel-end{transform:translate(2px,-2px)}
.iho-contact-channel-foot{margin:21px 0 0;color:#adc3cb;font-size:12px;line-height:1.65}
@media(max-width:1000px){.iho-contact-container{width:calc(100% - 64px)}.iho-contact-layout{gap:28px;grid-template-columns:minmax(0,1.35fr) minmax(275px,.8fr)}.iho-contact-form-column{padding:34px 31px 39px}.iho-referral-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.iho-contact-hero{min-height:310px;padding:53px 0}.iho-contact-body{padding:50px 0 74px}.iho-contact-layout{grid-template-columns:1fr;gap:28px}.iho-contact-channels{position:static}.iho-contact-channel-list{display:grid;grid-template-columns:1fr 1fr}.iho-contact-channel:nth-child(odd){padding-right:12px}.iho-contact-channel:nth-child(even){padding-left:12px}}
@media(max-width:520px){.iho-contact-container{width:calc(100% - 36px)}.iho-contact-hero{min-height:285px}.iho-contact-hero h1{font-size:40px}.iho-contact-hero p:last-child{font-size:16px}.iho-contact-body{padding:36px 0 60px}.iho-contact-form-column{padding:29px 20px 34px}.iho-contact-form-column .iho-form-grid{grid-template-columns:1fr;gap:18px}.iho-form-section{padding:30px 0}.iho-form-section-head h3{font-size:20px}.iho-referral-options{gap:8px}.iho-referral-options label{font-size:12px;padding:8px}.iho-privacy-dialog-content{padding:18px 18px 28px}.iho-form-privacy{padding:17px 16px}.iho-form-privacy dl>div{grid-template-columns:1fr;gap:0;padding:5px 0}.iho-submit-dialog{padding:28px 22px 25px}.iho-submit-dialog p{font-size:16px}.iho-contact-channels{padding:29px 22px}.iho-contact-channel-list{display:block}.iho-contact-channel:nth-child(n){padding-inline:2px}.iho-contact-channel:hover,.iho-contact-channel:focus-visible{padding-inline:8px}}
@media(prefers-reduced-motion:reduce){.iho-contact-hero .iho-contact-container{animation:none}.iho-contact-channel,.iho-contact-channel-end,.iho-referral-options label,.iho-contact-form-column .iho-form-submit{transition:none}}

/* Channel marks use tiny SVG tiles based on the supplied visual references. */
.iho-contact-channel-icon{background-position:center;background-size:cover;overflow:hidden}
.iho-contact-channel-icon svg{display:none}
.iho-contact-channel-phone{background-image:url('assets/contact-phone.svg')}
.iho-contact-channel-kakao{background-image:url('assets/contact-kakao.svg')}
.iho-contact-channel-whatsapp{background-image:url('assets/contact-whatsapp.svg')}
