/* CORP360 3.0.4 — contact and footer presentation only.
   Scoped to body.wx360-modern to avoid modifying Webux legacy pages.
*/
body.wx360-modern .wx360-contact-page {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(117deg, #fbfdff 0%, #f4faff 58%, #eaf6ff 100%);
  padding: 22px 0 42px;
}
body.wx360-modern .wx360-contact-page::before,
body.wx360-modern .wx360-contact-page::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  border-radius: 50%;
}
body.wx360-modern .wx360-contact-page::before {
  width: 850px; height: 850px; right: -570px; top: -175px;
  border: 125px solid rgba(137,201,255,.14);
  transform: rotate(-17deg);
}
body.wx360-modern .wx360-contact-page::after {
  width: 540px; height: 540px; left: -400px; bottom: -330px;
  background: #d9edff46;
}
body.wx360-modern .wx360-contact-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(365px, 1fr);
  align-items: start;
  gap: clamp(30px, 3vw, 54px);
}
body.wx360-modern .wx360-contact-main,
body.wx360-modern .wx360-contact-form-panel { min-width: 0; }
body.wx360-modern .wx360-contact-main .breadcrumbs {
  margin: 4px 0 30px;
  font-size: 12px;
}
body.wx360-modern .wx360-contact-eyebrow {
  color: #006bdf; font-weight: 800; letter-spacing: .15em;
  font-size: 14px; text-transform: uppercase;
  margin: 0 0 12px;
}
body.wx360-modern .wx360-contact-eyebrow::after {
  content: ""; display: block; width: 48px; height: 3px;
  background: #0069ed; margin-top: 7px; border-radius: 6px;
}
body.wx360-modern .wx360-contact-page h1 {
  margin: 0 0 10px;
  font-size: clamp(34px, 3.5vw, 51px);
  font-weight: 800;
  letter-spacing: -.04em;
  line-height: 1.13;
  color: #082c68;
}
body.wx360-modern .wx360-contact-page h1 span { color: #0673f8; }
body.wx360-modern .wx360-contact-lead {
  margin: 0;
  font-size: clamp(15px, 1.3vw, 19px);
  font-weight: 500;
  color: #254c82;
  line-height: 1.6;
}
body.wx360-modern .wx360-contact-advantages {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: clamp(16px, 2vw, 32px);
  margin: 32px 0 34px;
}
body.wx360-modern .wx360-contact-circle {
  width: 50px; height: 50px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: linear-gradient(140deg, #e5f3ff, #c8e3ff);
  color: #036af1;
  margin-bottom: 12px;
}
body.wx360-modern .wx360-contact-circle .wx360-contact-icon { width: 29px; height: 29px; }
body.wx360-modern .wx360-contact-advantage h2 {
  margin: 0 0 8px; font-size: 15px; font-weight: 750;
  color: #0b316c;
}
body.wx360-modern .wx360-contact-advantage p {
  margin: 0; color: #486c9c; font-size: 13px; line-height: 1.65;
}
body.wx360-modern .wx360-contact-information {
  display: grid; grid-template-columns: repeat(4, minmax(0,1fr));
  background: linear-gradient(115deg, #eaf5ff, #f2f9ff);
  border-radius: 12px;
  padding: 20px 15px;
  margin: 0 0 23px;
}
body.wx360-modern .wx360-contact-detail {
  min-width: 0;
  padding: 0 15px;
  overflow-wrap: anywhere;
}
body.wx360-modern .wx360-contact-detail + .wx360-contact-detail {
  border-left: 1px solid #d6e5f8;
}
body.wx360-modern .wx360-contact-detail-icon {
  display: flex; align-items: center; justify-content: center;
  width: 39px; height: 39px; flex: 0 0 39px;
  border-radius: 50%; color: #0072ed;
  background: #e1f1ff;
}
body.wx360-modern .wx360-contact-detail-icon .wx360-contact-icon {
  width: 26px; height: 26px;
}
body.wx360-modern .wx360-contact-detail h2 {
  margin: 7px 0 7px; font-size: 12px; font-weight: 750; color: #0c2d68;
}
body.wx360-modern .wx360-contact-detail p {
  margin: 0 0 3px; font-size: 11.5px; line-height: 1.65;
  color: #42689b;
}
body.wx360-modern .wx360-contact-detail a { color: inherit; }
body.wx360-modern .wx360-contact-detail a:hover { color: #0069ed; }
body.wx360-modern .wx360-contact-map {
  position: relative;
  min-height: 125px; border-radius: 12px;
  isolation: isolate; overflow: hidden;
  background: #e4f1ff;
}
body.wx360-modern .wx360-contact-map iframe {
  position: absolute; inset: 0; border: 0;
  width: 100%; height: 100%;
  opacity: .65; filter: saturate(.78);
}
body.wx360-modern .wx360-contact-map::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, #eff8ff 0%, #eff8fff5 28%, #eff8ff55 65%, transparent 100%);
}
body.wx360-modern .wx360-contact-map-note {
  position: relative; z-index: 1;
  display: flex; align-items: flex-start; gap: 13px;
  padding: 19px; max-width: 52%; pointer-events: none;
}
body.wx360-modern .wx360-contact-map-note .wx360-contact-detail-icon {
  background: #fff;
}
body.wx360-modern .wx360-contact-map-note strong {
  color: #0b2e68; font-size: 13px; display: block; margin-bottom: 7px;
}
body.wx360-modern .wx360-contact-map-note p {
  color: #436793; font-size: 12px; margin: 0; line-height: 1.5;
}
body.wx360-modern .wx360-contact-map-note a {
  display: inline-flex; align-items: center; gap: 5px;
  color: #086be5; font-size: 11px; font-weight: 700;
  pointer-events: auto; margin-top: 8px;
}
body.wx360-modern .wx360-contact-map-note a .wx360-contact-icon {width: 13px;height:13px;}
body.wx360-modern .wx360-contact-form-panel {
  background: #fff; border-radius: 14px;
  box-shadow: 0 13px 40px #075bb518;
  padding: clamp(22px, 2.4vw, 36px);
  margin-top: 23px;
}
body.wx360-modern .wx360-contact-form-panel h2 {
  margin: 0 0 10px; font-size: clamp(21px, 1.75vw, 25px);
  line-height: 1.3; font-weight: 800; color: #0a2b63;
}
body.wx360-modern .wx360-contact-form-subtitle {
  margin: 0 0 22px; font-size: 13px; line-height: 1.7; color: #50709d;
}
body.wx360-modern .wx360-contact-form-wrap .wpcf7,
body.wx360-modern .wx360-contact-form-wrap .wpcf7-form { margin: 0; }
body.wx360-modern .wx360-contact-form-wrap .wpcf7-form > p { margin: 0; }
body.wx360-modern .wx360-form-grid {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px 18px;
}
body.wx360-modern .wx360-field { min-width:0; }
body.wx360-modern .wx360-field.wide { grid-column: 1/-1; }
body.wx360-modern .wx360-field label {
  display: block; margin: 0 0 6px;
  color: #0a2b61; font-weight: 700; font-size: 12px;
}
body.wx360-modern .wx360-field .wpcf7-form-control-wrap { display:block; }
body.wx360-modern .wx360-field input:not([type="checkbox"]),
body.wx360-modern .wx360-field select,
body.wx360-modern .wx360-field textarea {
  display: block; width: 100%; margin: 0;
  border: 1px solid #cbdcf1; border-radius: 7px;
  min-height: 39px; padding: 9px 12px;
  background: #fff; color: #153764; font-size: 12px;
  outline: none; box-shadow: none;
  transition: border-color .2s, box-shadow .2s;
}
body.wx360-modern .wx360-field textarea { min-height: 85px; resize: vertical; }
body.wx360-modern .wx360-field :is(input,select,textarea):focus {
  border-color: #096be9;
  box-shadow: 0 0 0 3px #0c77f51a;
}
body.wx360-modern .wx360-field :is(input,textarea)::placeholder {
  color: #8ba2bf; opacity: 1;
}
body.wx360-modern .wx360-consent {
  margin: 13px 0 16px; color: #44618d;
  font-size: 11.5px; line-height: 1.6;
}
body.wx360-modern .wx360-consent .wpcf7-list-item { margin:0; }
body.wx360-modern .wx360-consent label {
  display: flex; gap: 7px; align-items: flex-start; cursor:pointer;
}
body.wx360-modern .wx360-consent input[type="checkbox"] {
  flex: 0 0 auto; width: 14px; height: 14px; margin-top: 3px;
  accent-color: #0069ed;
}
body.wx360-modern .wx360-submit {
  position: relative; display: flex; align-items:center; justify-content:center;
  width:100%; min-height:45px;
  background: #075bdf; border-radius: 8px; border:0;
}
body.wx360-modern .wx360-submit input[type="submit"] {
  width:100%; min-height:45px; padding: 10px 17px;
  border:0; background:transparent; color:#fff;
  font-size: 13px; font-weight:700; cursor:pointer;
}
body.wx360-modern .wx360-submit:hover { background:#034bb9; }
body.wx360-modern .wx360-submit .wx360-submit-arrow {
  color: #fff; font-size: 19px; position:absolute; right:25%;
  pointer-events:none;
}
body.wx360-modern .wpcf7-response-output {
  font-size:12px; line-height:1.5; margin:12px 0 0!important; padding:10px!important;
}
body.wx360-modern .wpcf7-not-valid-tip { font-size:11px; margin-top:3px; }
body.wx360-modern .wx360-form-help {
  padding:14px; border:1px dashed #5b95df; background:#eef6ff;
  color:#24517f; border-radius:8px; font-size:13px;
}
body.wx360-modern .wx360-form-fallback { font-size:13px; color:#305989; }
body.wx360-modern .wx360-form-fallback a { color:#0069ed; text-decoration:underline; }

/* Dark footer — also used on Home, archive, Pages and single Articles. */
body.wx360-modern .site-footer.wx360-footer-v2 {
  background: linear-gradient(110deg, #062956 0%, #082c59 47%, #041e45 100%);
  color: #e9f3ff;
  padding: 0;
  border: 0;
  margin-top: 0;
}
body.wx360-modern .wx360-footer-layout {
  display: grid;
  grid-template-columns: 1fr 1.65fr 1.3fr .8fr;
  gap: 32px;
  padding: 30px 0 26px;
}
body.wx360-modern .wx360-footer-layout > * { min-width:0; }
body.wx360-modern .wx360-footer-layout > * + * {
  border-left: 1px solid #5a7dad55;
  padding-left: 30px;
}
body.wx360-modern .wx360-footer-logo-col {
  display:flex; align-items:center;
}
body.wx360-modern .wx360-footer-logo-col a { display: inline-block; }
body.wx360-modern .wx360-footer-logo {
  max-width: 205px !important; max-height: 100px !important;
  width: auto !important; height:auto !important; object-fit:contain;
}
body.wx360-modern .wx360-footer-wordmark {
  display: inline-block; font-size: 31px; font-weight: 850;
  color: #fff !important; letter-spacing:-1.4px; line-height:1.1;
  white-space:nowrap;
}
body.wx360-modern .wx360-footer-wordmark span { color:#f79b22; }
body.wx360-modern .wx360-footer-wordmark small {
  display: block; color:#e0efff; font-size:7px;
  letter-spacing:.065em; margin-top:6px;
}
body.wx360-modern .wx360-footer-layout h2 {
  color:#fff; font-size:13px; font-weight:750;
  margin: 0 0 13px;
}
body.wx360-modern .wx360-footer-company p {
  display:flex; align-items: flex-start; gap:10px;
  color:#e1edfc; font-size:11px; line-height:1.55; margin:5px 0;
}
body.wx360-modern .wx360-footer-company .wx360-contact-icon {
  flex: 0 0 15px; width:15px; height:15px; color:#c9e1ff;
  margin-top:1px;
}
body.wx360-modern .wx360-footer-v2 a { color:inherit; }
body.wx360-modern .wx360-footer-v2 a:hover { color:#89c6ff; }
body.wx360-modern .wx360-footer-quick ul {
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns: 1fr 1fr; gap:6px 16px;
}
body.wx360-modern .wx360-footer-quick li { padding:0; margin:0; line-height:1.6; }
body.wx360-modern .wx360-footer-quick a { font-size:11px; color:#e1edfc; }
body.wx360-modern .wx360-footer-social-list { display:flex; flex-wrap:wrap; gap:10px; }
body.wx360-modern .wx360-footer-social-list a {
  display:flex; align-items:center; justify-content:center;
  width:34px; height:34px; background:#1e5793; color:#e0efff;
  border-radius:50%; transition:background .2s, transform .2s;
}
body.wx360-modern .wx360-footer-social-list a:hover {
  background:#207fe0; color:#fff; transform:translateY(-2px);
}
body.wx360-modern .wx360-footer-social-list .wx360-contact-icon {
  width:18px;height:18px;
}
body.wx360-modern .wx360-footer-base {
  display:flex; justify-content:space-between; align-items:center;
  border-top:1px solid #5c80ad55;
  gap:20px; padding:17px 0 22px;
  color:#c2d3ea; font-size:10px;
}
body.wx360-modern .wx360-footer-base ul {
  display:flex; flex-wrap:wrap; align-items:center;
  gap:0; padding:0; margin:0; list-style:none;
}
body.wx360-modern .wx360-footer-base li {margin:0;padding:0;}
body.wx360-modern .wx360-footer-base li + li::before {
  content:"|"; display:inline-block; padding:0 10px; color:#6389b1;
}
body.wx360-modern .wx360-footer-base a { font-size:10px;color:#c2d3ea; }

@media (max-width: 1100px) {
  body.wx360-modern .wx360-contact-shell { grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr); gap:24px; }
  body.wx360-modern .wx360-contact-advantages { gap:14px; }
  body.wx360-modern .wx360-contact-information { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 0; }
  body.wx360-modern .wx360-contact-detail:nth-child(3) { border-left:0; }
  body.wx360-modern .wx360-footer-layout { grid-template-columns:1fr 1.6fr; gap:24px 16px; }
  body.wx360-modern .wx360-footer-layout > *:nth-child(3) { border-left:0; padding-left:0; }
  body.wx360-modern .wx360-footer-layout > *:nth-child(4) { border-left:1px solid #5a7dad55; padding-left:24px; }
}
@media (max-width: 800px) {
  body.wx360-modern .wx360-contact-page { padding:20px 0 35px; }
  body.wx360-modern .wx360-contact-shell { grid-template-columns:1fr; }
  body.wx360-modern .wx360-contact-form-panel { margin-top:0; }
  body.wx360-modern .wx360-contact-advantages { margin:24px 0; }
  body.wx360-modern .wx360-contact-map-note { max-width:65%; }
}
@media (max-width: 600px) {
  body.wx360-modern .wx360-contact-page h1 { font-size:34px; }
  body.wx360-modern .wx360-contact-advantages { grid-template-columns:1fr; gap:17px; }
  body.wx360-modern .wx360-contact-advantage { display:grid; grid-template-columns:52px 1fr; align-items:start; gap:0 13px; }
  body.wx360-modern .wx360-contact-advantage .wx360-contact-circle { grid-row:1/3; margin:0; }
  body.wx360-modern .wx360-contact-advantage h2 { margin:2px 0 3px; }
  body.wx360-modern .wx360-contact-information { padding:18px 10px; }
  body.wx360-modern .wx360-contact-detail { padding:0 9px; }
  body.wx360-modern .wx360-contact-detail h2 { font-size:12px; }
  body.wx360-modern .wx360-contact-detail p { font-size:11px; }
  body.wx360-modern .wx360-contact-map { min-height:165px; }
  body.wx360-modern .wx360-contact-map-note { max-width:78%; padding:14px; }
  body.wx360-modern .wx360-contact-form-panel { padding:22px 18px; }
  body.wx360-modern .wx360-form-grid { grid-template-columns:1fr; gap:13px; }
  body.wx360-modern .wx360-field.wide { grid-column:auto; }
  body.wx360-modern .wx360-footer-layout { grid-template-columns:1fr 1fr; padding:28px 0 22px; gap:22px 16px; }
  body.wx360-modern .wx360-footer-layout > * + * { border-left:0!important; padding-left:0!important; }
  body.wx360-modern .wx360-footer-logo-col { grid-column:1/-1; }
  body.wx360-modern .wx360-footer-company { grid-column:1/-1; }
  body.wx360-modern .wx360-footer-base { flex-direction:column; align-items:flex-start; gap:12px; }
}
@media (prefers-reduced-motion:reduce) {
  body.wx360-modern .wx360-footer-social-list a { transition:none; }
  body.wx360-modern .wx360-footer-social-list a:hover { transform:none; }
}

/* Optional contact page featured image. Keep the whole picture visible. */
body.wx360-modern .wx360-contact-visual {margin: 20px 0 0; max-width: 100%; overflow: hidden; border-radius: 14px; background: #e9f4ff;}
body.wx360-modern .wx360-contact-photo {display: block; width: 100%; height: auto; max-height: 360px; object-fit: contain;}
