/* Contact-only styles: the existing search and service enquiry forms are untouched. */
body:has(#contact-panel[open]){overflow:hidden}
dialog.contact-panel{box-sizing:border-box;position:fixed;inset:0;width:min(1040px,calc(100vw - 40px));max-width:1040px;height:fit-content;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid #65b5e5;border-radius:16px;background:#fff;color:#071e43;box-shadow:0 24px 90px #0008;font:400 16px/1.5 Arial,"Microsoft YaHei","Yu Gothic","Malgun Gothic",sans-serif;overflow:auto;overscroll-behavior:contain}
dialog.contact-panel::backdrop{background:rgba(0,14,33,.56);backdrop-filter:blur(2px)}
.contact-panel *{box-sizing:border-box}.contact-panel [hidden]{display:none!important}.contact-panel .cp-inner{position:relative}.contact-panel .cp-heading{position:relative;padding:30px 64px 25px 36px;background:linear-gradient(110deg,#f3faff,#fff 70%);border-bottom:1px solid #e5f1f8}.contact-panel .cp-eyebrow{margin:0 0 8px;color:#5784bc;font-size:12px;font-weight:600;letter-spacing:3px}.contact-panel h2{margin:0;font-size:clamp(24px,2.3vw,34px);font-weight:700;line-height:1.3;letter-spacing:0;color:#071e43}.contact-panel h3{margin:0;font-size:21px;line-height:1.4;font-weight:700;color:#071e43}.contact-panel .cp-close{position:absolute;right:18px;top:18px;width:36px;height:36px;padding:6px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#60718c;cursor:pointer}.contact-panel .cp-close:hover{background:#e8f4ff}.contact-panel svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.contact-panel .cp-body{display:grid;grid-template-columns:39% 61%}.contact-panel .cp-methods{padding:28px 30px 26px 36px;background:linear-gradient(140deg,#edf8ff,#e4f4ff);min-width:0}.contact-panel .cp-intro{margin:10px 0 28px;font-size:14px;line-height:1.65;color:#526783}.contact-panel .cp-method{display:flex;align-items:flex-start;gap:16px;margin:0 0 28px}.contact-panel .cp-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;background:#cdeeff;border-radius:50%;color:#0870ff}.contact-panel .cp-icon svg{width:28px;height:28px}.contact-panel .cp-method>div{min-width:0;padding-top:2px}.contact-panel h4{margin:0 0 4px;font-size:15px;font-weight:700;color:#071e43}.contact-panel .cp-method a{font-size:16px;font-weight:600;color:#123778;text-decoration:none;overflow-wrap:anywhere}.contact-panel .cp-method a:hover{text-decoration:underline}.contact-panel .cp-qr-toggle{max-width:100%;padding:7px 12px;border:1px solid #1684ff;border-radius:6px;background:#faffff;color:#0067ed;font:600 13px/1.4 Arial,"Microsoft YaHei","Yu Gothic","Malgun Gothic",sans-serif;cursor:pointer}.contact-panel .cp-qr-toggle:hover{background:#daefff}.contact-panel .cp-wechat-number{margin:7px 0 0;font-size:12px;line-height:1.5;color:#3c5b80;overflow-wrap:anywhere}.contact-panel .cp-qr{width:fit-content;max-width:100%;margin:0 auto 24px;padding:10px;background:#fff;border:1px solid #dbebf7;border-radius:8px}.contact-panel .cp-qr img{display:block;max-width:100%;width:200px;height:auto;object-fit:contain;margin:0}.contact-panel .cp-brand{margin-top:30px;color:#6186b7;font-size:13px;line-height:1.6}.contact-panel .cp-brand span{display:block;width:24px;height:2px;background:#75a7d8;margin-bottom:10px}.contact-panel .cp-brand p{margin:0}.contact-panel .cp-inquiry{padding:28px 34px 24px;min-width:0;background:#fff}.contact-panel form{margin-top:17px}.contact-panel .cp-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-panel .cp-field{min-width:0}.contact-panel .cp-wide{grid-column:1/-1}.contact-panel label{display:block;font-size:14px;line-height:1.5;color:#182d4f;font-weight:500;margin:0 0 5px}.contact-panel label span{color:#d83a4c}.contact-panel :is(input,select,textarea){display:block;min-width:0;width:100%;min-height:40px;margin:0;padding:9px 11px;border:1px solid #ccdaeb;border-radius:5px;background:#fff;color:#172c4d;font:400 14px/1.45 Arial,"Microsoft YaHei","Yu Gothic","Malgun Gothic",sans-serif;box-shadow:none}.contact-panel textarea{resize:vertical;min-height:100px;max-height:240px}.contact-panel :is(input,select,textarea)::placeholder{color:#7b899d}.contact-panel .cp-actions{display:flex;gap:16px;align-items:center;margin-top:20px}.contact-panel .cp-submit{display:inline-flex;flex:none;align-items:center;justify-content:center;gap:10px;max-width:100%;padding:11px 18px;min-height:44px;border:1px solid #149dff;border-radius:9px;background:linear-gradient(105deg,#00a8ff,#0753ff);color:#fff;font:600 15px/1.4 Arial,"Microsoft YaHei","Yu Gothic","Malgun Gothic",sans-serif;cursor:pointer}.contact-panel .cp-submit:hover{background:linear-gradient(105deg,#069aff,#0347e0)}.contact-panel .cp-submit:disabled{opacity:.65;cursor:wait}.contact-panel .cp-actions>p{margin:0;font-size:11px;line-height:1.6;color:#718098}.contact-panel .cp-status{margin:12px 0 0;color:#24527b;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.contact-panel .cp-status:empty{display:none}.contact-panel :is(button,a,input,select,textarea):focus-visible{outline:2px solid #1387ec;outline-offset:3px}.contact-panel .cp-status[data-error="true"]{color:#b32b3c}
@media(max-width:720px){dialog.contact-panel{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:12px}.contact-panel .cp-heading{padding:23px 52px 20px 23px}.contact-panel h2{font-size:23px}.contact-panel h3{font-size:19px}.contact-panel .cp-eyebrow{font-size:10px;letter-spacing:2px}.contact-panel .cp-body{grid-template-columns:1fr}.contact-panel .cp-methods{padding:22px 23px}.contact-panel .cp-intro{margin:8px 0 18px}.contact-panel .cp-method{gap:13px;margin-bottom:18px}.contact-panel .cp-icon{width:43px;height:43px;flex-basis:43px}.contact-panel .cp-icon svg{width:25px;height:25px}.contact-panel .cp-brand{display:none}.contact-panel .cp-inquiry{padding:24px 23px}.contact-panel .cp-fields{gap:14px}.contact-panel .cp-actions{flex-wrap:wrap;gap:10px}.contact-panel .cp-actions>p{font-size:12px}.contact-panel :is(input,select,textarea){font-size:16px}.contact-panel .cp-submit{width:100%}.contact-panel .cp-method a{font-size:15px}}
@media(max-width:380px){.contact-panel .cp-fields{grid-template-columns:1fr}.contact-panel .cp-heading{padding-left:18px}.contact-panel .cp-methods,.contact-panel .cp-inquiry{padding-left:18px;padding-right:18px}.contact-panel .cp-method a{font-size:14px}}
