/**
 * Contact page styles
 * From kaliebo-contact.html — for page-contact.php
 */

/* ================================================================
   CONTACT PAGE — 深色联系面板 + 询盘表单 + 地址地图
   ================================================================ */
.contact-grid{display:grid; grid-template-columns:1fr 1.2fr; gap:44px; align-items:start;}

/* 左：深色联系面板（沿用 CTA 里的 cc-* 行样式） */
.contact-panel{background:var(--ink); color:var(--paper); padding:34px 32px 30px;}
.contact-panel h3{
  font-family:'Barlow Condensed',sans-serif;
  font-size:27px; font-weight:600; line-height:1.1;
  margin-bottom:6px;
}
.cp-sub{font-size:13px; color:rgba(234,239,243,0.72); margin-bottom:18px;}
.cp-sub.dark{color:var(--steel);}
.cp-qr-title{
  font-size:11px; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase;
  color:rgba(234,239,243,0.6);
  margin:20px 0 12px; padding-top:16px;
}
.contact-panel .cc-qrs{margin-bottom:0;}
.contact-panel .cc-plate{width:118px; height:118px;}

/* 右：询盘表单 */
.form-card{background:var(--paper); border:1px solid var(--line-dark); padding:32px 30px 28px;}
.form-card h3{
  font-family:'Barlow Condensed',sans-serif;
  font-size:27px; font-weight:600; line-height:1.1;
  margin-bottom:6px;
}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.form-field{display:flex; flex-direction:column; gap:8px;}
.form-field.full{grid-column:1 / -1;}
.form-field label{
  font-size:11.5px; font-weight:600;
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--steel);
}
.form-field .wpcf7-form-control-wrap{display:block; width:100%;}
.form-field input,
.form-field select,
.form-field textarea{
  font-family:'Inter',sans-serif; font-size:14.5px; color:var(--ink);
  width:100%;
  box-sizing:border-box;
  background:#fff;
  border:1px solid var(--line-dark);
  padding:13px 14px;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.form-field select{
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  padding-right:42px;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%235C7186' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.2 6 6.2 11 1.2'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 18px center;
  background-size:12px 8px;
}
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
  border-color:var(--rust);
  box-shadow:0 0 0 3px rgba(29,111,209,0.12);
  outline:none;
}
.form-field textarea{min-height:140px; resize:vertical;}
.form-actions{
  grid-column:1 / -1;
  display:flex; align-items:center; gap:18px; flex-wrap:wrap;
  margin-top:6px;
}
.form-submit{position:relative; display:inline-flex; align-items:center; flex:0 0 auto;}
.form-card .wpcf7-spinner{
  position:absolute;
  top:50%;
  left:calc(100% + 10px);
  margin:0;
  transform:translateY(-50%);
}
.form-card form.submitting .form-note{margin-left:22px;}
.form-note{font-size:12.5px; color:var(--steel);}
@media (max-width:980px){ .contact-grid{grid-template-columns:1fr; gap:28px;} }
@media (max-width:620px){ .form-grid{grid-template-columns:1fr;} .form-card{padding:24px 20px;} .contact-panel{padding:26px 22px;} }

/* 地址 / 地图 */
.map-strip{display:grid; grid-template-columns:1fr 1.3fr; gap:44px; align-items:center;}
.map-strip.is-text-only{grid-template-columns:1fr;}
.map-editor{min-width:0;}
.map-editor > *:first-child{margin-top:0;}
.map-editor > *:last-child{margin-bottom:0;}
.map-editor img,
.map-editor video{max-width:100%; height:auto; display:block;}
.map-editor iframe{width:100%; max-width:100%; height:auto; aspect-ratio:16/9; border:0; display:block;}
.map-strip h3{
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(24px,2.6vw,32px); font-weight:600;
  margin-bottom:14px;
}
.addr-list{list-style:none; margin:0 0 16px;}
.addr-list li{
  position:relative; padding-left:18px;
  font-size:14.5px; color:#26374A; margin-bottom:9px;
}
.addr-list li::before{
  content:""; position:absolute; left:0; top:8px;
  width:7px; height:7px; background:var(--rust); transform:rotate(45deg);
}
.map-box{
  position:relative;
  aspect-ratio:16/9;
  background:#C9D4DD;
  border:1px solid var(--line-dark);
  overflow:hidden;
}
.map-box img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;}
.map-box .map-ph{
  position:absolute; inset:0;
  display:none; align-items:center; justify-content:center;
  text-align:center; padding:10px;
  color:var(--steel); font-size:13px; letter-spacing:.04em;
  border:1px dashed rgba(14,28,41,0.25); margin:10px;
}
.map-box.noimg .map-ph{display:flex;}
.map-box:not(.noimg) .map-ph{display:none;}
@media (max-width:980px){ .map-strip{grid-template-columns:1fr; gap:24px;} }

/* Contact Form 7 放进右侧卡片时，对齐静态表单 */
.form-card .wpcf7-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.form-card .wpcf7-form p{
  margin:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.form-card .wpcf7-form p:has(textarea),
.form-card .wpcf7-form p:has(.wpcf7-submit),
.form-card .wpcf7-form .wpcf7-response-output{
  grid-column:1 / -1;
}
.form-card .wpcf7-form label{
  font-size:11.5px; font-weight:600;
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--steel);
}
.form-card .wpcf7-form input:not([type="submit"]),
.form-card .wpcf7-form textarea{
  font-family:'Inter',sans-serif; font-size:14.5px; color:var(--ink);
  width:100%;
  background:#fff;
  border:1px solid var(--line-dark);
  padding:13px 14px;
}
.form-card .wpcf7-form textarea{min-height:140px; resize:vertical;}
.form-card .wpcf7-form input[type="submit"]{
  display:inline-flex; align-items:center;
  background:var(--rust); color:var(--paper);
  border:1px solid var(--rust);
  font-size:14px; font-weight:600;
  padding:15px 30px; cursor:pointer;
}
.form-card .wpcf7-form input[type="submit"]:hover{background:var(--rust-dark); border-color:var(--rust-dark);}
@media (max-width:620px){
  .form-card .wpcf7-form{grid-template-columns:1fr;}
  .form-field input,
  .form-field select,
  .form-field textarea,
  .form-card .wpcf7-form input:not([type="submit"]),
  .form-card .wpcf7-form textarea,
  .form-card .wpcf7-form select{
    font-size:16px;
  }
  .form-card .wpcf7-spinner{
    position:static;
    transform:none;
    margin:8px 0 0;
    display:inline-block;
  }
  .form-card form.submitting .form-note{margin-left:0;}
  .contact-panel .cc-plate{width:96px; height:96px;}
  .contact-panel .cc-qrs{flex-wrap:wrap;}
}
