.quick-inquiry-trigger { position: fixed; z-index: 1001; right: 20px; bottom: 104px; display: flex; align-items: center; gap: 9px; min-height: 52px; padding: 13px 18px; border: 1px solid #ffc15b; border-radius: 14px; background: #f5a11d; color: #172033; font-family: inherit; font-size: 16px; font-weight: 800; cursor: pointer; box-shadow: 0 5px 22px #102b4f26; }
.quick-inquiry-trigger svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.quick-inquiry-trigger:hover { background: #ffb434; }
.quick-inquiry-trigger:focus-visible, .quick-inquiry-dialog button:focus-visible { outline: 3px solid #1d4b7c; outline-offset: 4px; }
.quick-inquiry-dialog { box-sizing: border-box; position: fixed; inset: 0; width: min(480px, calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 30px; border: 0; border-radius: 22px; background: #fff; color: #172033; overflow-y: auto; box-shadow: 0 24px 80px #071b4040; }
.quick-inquiry-dialog::backdrop { background: #091d3fb3; }
.quick-inquiry-dialog * { box-sizing: border-box; }
.quick-inquiry-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.quick-inquiry-heading p { color: #1d4b7c; font-size: 13px; font-weight: 700; margin-bottom: 5px; }
.quick-inquiry-heading h2 { font-size: 28px; font-weight: 800; line-height: 1.4; }
.quick-inquiry-close { flex: 0 0 44px; width: 44px; height: 44px; border: 0; border-radius: 50%; background: #f1f5f9; color: #334155; font-size: 30px; cursor: pointer; }
.quick-inquiry-intro { margin: 14px 0 24px; color: #64748b; font-size: 15px; line-height: 1.7; }
.quick-inquiry-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 14px; }
.quick-inquiry-fields label { display: block; min-width: 0; color: #334155; font-size: 15px; font-weight: 700; }
.quick-inquiry-fields input, .quick-inquiry-fields select { display: block; width: 100%; height: 50px; margin-top: 8px; padding: 10px 12px; border: 1px solid #cbd5e1; border-radius: 9px; background: #fff; color: #172033; font-family: inherit; font-size: 16px; font-weight: 400; }
.quick-inquiry-fields input:focus, .quick-inquiry-fields select:focus { outline: 2px solid #1d4b7c; outline-offset: 1px; }
.quick-inquiry-fields input::placeholder { color: #778497; }
.quick-inquiry-privacy { margin-top: 22px; padding: 12px 14px; background: #f5f8fb; border-radius: 9px; }
.quick-inquiry-privacy summary { min-height: 24px; color: #475569; font-size: 14px; line-height: 1.7; cursor: pointer; }
.quick-inquiry-privacy div { padding-top: 12px; }
.quick-inquiry-privacy p { margin-bottom: 7px; color: #64748b; font-size: 13px; line-height: 1.75; }
.quick-inquiry-privacy a { color: #12305f; text-decoration: underline; }
.quick-inquiry-consent { display: flex; align-items: center; gap: 10px; min-height: 48px; margin-top: 8px; font-size: 14px; line-height: 1.6; cursor: pointer; }
.quick-inquiry-consent input { flex: 0 0 20px; width: 20px; height: 20px; margin: 0; accent-color: #1d4b7c; }
.quick-inquiry-feedback { color: #b42318; font-size: 14px; line-height: 1.7; margin-bottom: 12px; }
.quick-inquiry-feedback:empty { display: none; }
.quick-inquiry-submit, .quick-inquiry-done { width: 100%; min-height: 52px; border: 0; border-radius: 10px; background: #12305f; color: #fff; font-family: inherit; font-size: 17px; font-weight: 700; cursor: pointer; }
.quick-inquiry-submit:disabled { opacity: .65; cursor: wait; }
.quick-inquiry-success { padding-top: 30px; text-align: center; }
.quick-inquiry-success strong { font-size: 22px; }
.quick-inquiry-success p { margin: 14px 0 28px; font-size: 16px; line-height: 1.7; }
.quick-inquiry-open { overflow: hidden; }
.quick-inquiry-hp { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.quick-inquiry-dialog [hidden] { display: none !important; }
@media (max-width: 767px) {
    .quick-inquiry-trigger { right: 14px; bottom: calc(86px + env(safe-area-inset-bottom)); min-height: 48px; padding: 11px 14px; font-size: 15px; }
    .quick-inquiry-dialog { width: calc(100% - 24px); max-height: calc(100dvh - 24px); padding: 22px; border-radius: 18px; }
    .quick-inquiry-fields { grid-template-columns: minmax(0, 1fr); gap: 14px; }
    .quick-inquiry-heading h2 { font-size: 25px; }
    .quick-inquiry-intro { margin-bottom: 18px; }
}
@media print { .quick-inquiry-trigger, .quick-inquiry-dialog { display: none !important; } }

/* 하단 상담 접수: 전화 영역과 구분되는 선명한 문의 버튼 */
.representative-call__link--inquiry {
    position: relative; overflow: hidden; box-sizing: border-box;
    border: 0; font-family: inherit; cursor: pointer;
    color: #172033; background: linear-gradient(115deg, #ffbc45, #f5a11d);
    box-shadow: 0 0 0 1px #ffcf72 inset;
    animation: inquiry-highlight 4s ease-in-out infinite;
}
.representative-call__link--inquiry:hover { background: #ffc45b; }
.representative-call__link--inquiry:focus-visible { outline: 3px solid #fff; outline-offset: -5px; }
.representative-call__link--inquiry .representative-call__label { color: #453009; opacity: 1; font-weight: 700; }
.representative-call__link--inquiry .representative-call__number { color: #172033; font-size: 23px; line-height: 1.4; }
.inquiry-button-arrow { display: inline-block; margin-left: 5px; animation: inquiry-arrow 2.8s ease-in-out infinite; }
.quick-inquiry-trigger { animation: inquiry-float 4s ease-in-out infinite; }
@keyframes inquiry-highlight { 0%, 100% { box-shadow: 0 0 0 1px #ffcf72 inset; } 50% { box-shadow: 0 0 0 2px #ffe2a3 inset, 0 0 18px #f5a11d55; } }
@keyframes inquiry-arrow { 0%, 70%, 100% { transform: translateX(0); } 35% { transform: translateX(4px); } }
@keyframes inquiry-float { 0%, 75%, 100% { transform: translateY(0); } 40% { transform: translateY(-3px); } }
@media (max-width: 1199px) {
    .representative-call__link--inquiry { border-top: 3px solid #ffca67; border-right: 1px solid #e89b21; }
    .representative-call__link--inquiry .representative-call__label { font-size: 11px; }
    .representative-call__link--inquiry .representative-call__number { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
    .representative-call__link--inquiry, .inquiry-button-arrow, .quick-inquiry-trigger { animation: none; }
}

#hs2 > .d_container { position: relative; }
.header-inquiry-button { position: absolute; right: 20px; top: 26px; z-index: 3; display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 48px; padding: 10px 17px; border: 1px solid #ffd184; border-radius: 10px; background: #f5a11d; color: #172033; font: 800 17px/1.4 inherit; font-family: inherit; font-size: 17px; font-weight: 800; cursor: pointer; box-shadow: 0 4px 16px #0002; animation: inquiry-highlight 4s ease-in-out infinite; }
.header-inquiry-button:hover { background: #ffc45b; }
.header-inquiry-button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (min-width: 1200px) {
    #hs2 #d_lnb { width: calc(100% - 380px); margin-right: 170px; }
    body.scroll .header-inquiry-button { top: 14px; }
}
@media (max-width: 1199px) {
    .header-inquiry-button { right: 76px; top: 10px; min-height: 40px; padding: 8px 11px; font-size: 14px; }
}
@media (max-width: 359px) {
    .header-inquiry-button { right: 66px; padding: 8px; font-size: 13px; }
    .header-inquiry-button .inquiry-button-arrow { display: none; }
}
@media (prefers-reduced-motion: reduce) { .header-inquiry-button { animation: none; } }
@media print { .header-inquiry-button { display: none; } }
