/* PROMISE theme, Contact page styles (page-specific additions).
   Reuses .phero/.crumb/.sec/.shead/.card/.grid4/.eyebrow/.btn from services-shared.css
   and style.css. Enqueued only on the Contact page. No sub-nav, no CTA band on this page,
   the enquiry form is the conversion action. */

#contact-hero.phero{min-height:50vh}

/* ===== two-column body: form left, direct contact + availability right ===== */
.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:start}

.cform-intro{color:var(--grey);font-size:16px;margin:14px 0 28px}

.cform{display:flex;flex-direction:column;gap:20px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cfield{display:flex;flex-direction:column;gap:8px}
.cfield label{font-family:'Montserrat';font-weight:600;font-size:13.5px;color:var(--green)}
.cfield .req{color:var(--acc)}
.cfield input,.cfield select,.cfield textarea{font-family:'Inter';font-size:15px;color:var(--black);border:1.5px solid var(--line);border-radius:10px;padding:13px 16px;background:#fff;transition:.2s;width:100%}
.cfield input:focus,.cfield select:focus,.cfield textarea:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px rgba(62,142,90,.15)}
.cfield textarea{resize:vertical;min-height:120px}

/* honeypot: visually hidden from sighted users, left in the tab order only via tabindex=-1 on the input */
.cf-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

.consent{color:var(--grey);font-size:13px;margin:0}

.cf-consent{gap:0}
.consent-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:13px;color:var(--grey);line-height:1.55;font-family:'Inter';font-weight:400}
.consent-check input{margin:3px 0 0;width:16px;height:16px;flex-shrink:0;accent-color:var(--green);cursor:pointer}
.consent-check a{color:var(--mid);text-decoration:underline}
.consent-check.cf-invalid{color:#8A1F11}
.consent-check.cf-invalid input{outline:2px solid #8A1F11;outline-offset:2px;border-radius:3px}

.cform .btn[disabled]{opacity:.6;cursor:not-allowed}

.cform-msg{border-radius:10px;padding:16px 20px;font-size:14.5px}
.cform-error{background:#FCEBEA;color:#8A1F11;border:1px solid #F1C0BB}

.cform-thanks{background:var(--tint);border-radius:16px;padding:34px 32px}
.cform-thanks h3{color:var(--green);font-size:22px;margin-bottom:10px}
.cform-thanks p{color:#2c332d;font-size:15.5px}
.cform-thanks a{color:var(--green);font-weight:600;text-decoration:underline}

/* Riyadh office card: city name + inline "Headquarters" badge, one line */
.hq-title{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;white-space:nowrap}
.hq-badge{display:inline-block;flex-shrink:0;background:var(--tint);color:var(--green);
font-family:'Montserrat',sans-serif;font-size:10px;font-weight:700;letter-spacing:.04em;
text-transform:uppercase;padding:3px 9px;border-radius:20px;white-space:nowrap}

.reach-panel,.avail-panel{background:var(--paper);border-radius:16px;padding:32px}
.reach-panel{margin-bottom:24px}
.reach-panel h3,.avail-panel h3{color:var(--green);font-size:20px;margin-bottom:18px}
.reach-list{list-style:none;display:flex;flex-direction:column;gap:16px}
.reach-list li{display:flex;flex-direction:column;gap:4px;font-size:15px}
.rl-label{font-family:'Montserrat';font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mid)}
.reach-list a{color:var(--green);font-weight:600}
.reach-list a:hover{text-decoration:underline}
.avail-panel p{color:var(--grey);font-size:15px}

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