/* ==========================================================================
   CONTACT PAGE STYLES
   ========================================================================== */

.ko-contact-quick{ background:var(--paper); border-bottom:1px solid var(--line); padding:26px 0; }
.ko-contact-quick-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.ko-quick-card{
  display:flex; align-items:center; gap:14px; background:#fff; border:1px solid var(--line);
  border-radius:14px; padding:16px 18px; transition:border-color .15s, transform .15s, box-shadow .15s;
}
.ko-quick-card:hover{ border-color:rgba(200,153,46,.5); transform:translateY(-2px); box-shadow:var(--shadow-card); }
.ko-quick-card svg{ color:var(--gold-dim); flex:0 0 auto; }
.ko-quick-card span{ display:block; font-size:11px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.04em; }
.ko-quick-card strong{ display:block; font-size:14px; color:var(--navy); margin-top:2px; }
@media (max-width:860px){ .ko-contact-quick-grid{ grid-template-columns:repeat(2,1fr); } }

.ko-contact-grid{ display:grid; grid-template-columns:1.3fr .9fr; gap:44px; align-items:start; }
.ko-contact-form-card{ background:#fff; border:1px solid var(--line); border-radius:22px; padding:36px; box-shadow:var(--shadow-card); }
.ko-contact-form-card h2{ font-size:24px; margin-bottom:6px; }

.ko-contact-side{ display:flex; flex-direction:column; gap:18px; }
@media (min-width:961px){ .ko-contact-side{ position:sticky; top:130px; } }
.ko-office-card{ background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:26px; }
.ko-office-card h3{ font-size:19px; margin:10px 0 14px; }
.ko-office-card-rc{ background:linear-gradient(160deg,var(--navy),var(--navy-deep)); border:none; color:#fff; }
.ko-office-card-rc p{ font-size:13.5px; color:#c4cede; line-height:1.7; margin-top:12px; }
.ko-office-card-rc strong{ color:var(--gold-lt); font-family:'IBM Plex Mono',monospace; font-weight:600; }

@media (max-width:960px){ .ko-contact-grid{ grid-template-columns:1fr; } }

.ko-map-section{ line-height:0; border-top:1px solid var(--line); }
.ko-map-section iframe{ display:block; }


/* ---- Job Seeker / Employer tabs ---- */
.ko-tabs{ display:grid; grid-template-columns:1fr 1fr; gap:6px; background:var(--paper); border:1px solid var(--line); border-radius:14px; padding:5px; margin-bottom:28px; }
.ko-tab{ display:flex; align-items:center; justify-content:center; gap:9px; padding:13px 10px; border:0; border-radius:10px; background:transparent; font:inherit; font-size:14.5px; font-weight:700; color:var(--ink-soft); cursor:pointer; transition:background .15s, color .15s, box-shadow .15s; }
.ko-tab:hover{ color:var(--navy); }
.ko-tab svg{ flex:0 0 auto; }
.ko-tab[aria-selected="true"]{ background:var(--navy); color:#fff; box-shadow:0 10px 20px -12px rgba(14,42,74,.7); }
.ko-tab[aria-selected="true"] svg{ color:var(--gold-lt); }
.ko-tab:focus-visible{ outline:2px solid var(--gold); outline-offset:2px; }
.ko-tabpanel[hidden]{ display:none; }
.ko-form-intro{ margin:0 0 20px; font-size:13.5px; line-height:1.6; }

/* ---- extra form controls ---- */
.ko-field input[type="file"]{ padding:10px 12px; background:var(--paper); border-style:dashed; cursor:pointer; font-size:14px; }
.ko-field input[type="file"]::file-selector-button{ margin-right:12px; padding:8px 14px; border:0; border-radius:8px; background:var(--navy); color:#fff; font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.ko-field input[type="file"]:hover::file-selector-button{ background:var(--navy-mid); }
.ko-field .ko-form-note.is-error{ color:#9a2f21; font-weight:600; }
.ko-field .ko-form-note.is-ok{ color:#0d6e68; font-weight:600; }
.ko-btn-block{ width:100%; justify-content:center; }

@media (max-width:600px){
  .ko-contact-form-card{ padding:24px 18px; border-radius:18px; }
  .ko-tab{ font-size:13.5px; padding:12px 6px; }
}
@media (max-width:420px){ .ko-tab svg{ display:none; } }
