/* Worklance Public Unified Template R960
   Final shared presentation layer for all public pages. Business/workflow logic is untouched. */
:root{
  --wlc-brand-navy:#12365d;
  --wlc-brand-navy-2:#0f2f52;
  --wlc-brand-orange:#ff642d;
  --wlc-brand-orange-2:#ff7a25;
  --wlc-brand-blue:#2563eb;
  --wlc-text:#17365c;
  --wlc-muted:#64748b;
  --wlc-line:#dce6f0;
  --wlc-surface:#fff;
  --wlc-soft:#f7faff;
  --wlc-success:#0a7a55;
  --wlc-radius-sm:12px;
  --wlc-radius-md:16px;
  --wlc-radius-lg:22px;
  --wlc-shadow-card:0 14px 36px rgba(15,47,82,.07);
  --wlc-shadow-float:0 16px 36px rgba(18,54,93,.16);
  --wlc-container:1180px;
}

html{scroll-behavior:smooth}
body:not(.crm-body){color:var(--wlc-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body:not(.crm-body) :is(.container,.wlx-container,.wlc-footer-container){max-width:var(--wlc-container)}

/* One header language across all public routes. */
#wlcPublicHeaderR92{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(220,230,240,.9)!important;box-shadow:0 8px 26px rgba(15,47,82,.045)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
#wlcPublicHeaderR92 .wlc-r92-nav-link{border-radius:12px!important}
#wlcPublicHeaderR92 .wlc-r92-jobs{border-radius:12px!important;box-shadow:0 10px 24px rgba(255,100,45,.2)!important}

/* Shared component language. Keep page layout unique while making surfaces consistent. */
body:not(.crm-body) :is(.content-card,.wlx-panel,.wlx-job-card,.apply-main-card,.apply-summary-card,.job-detail-card,.client-service-card,.serve-card,.trust-item){border-color:var(--wlc-line)!important;box-shadow:var(--wlc-shadow-card)!important}
body:not(.crm-body) :is(.content-card,.wlx-panel,.apply-main-card,.apply-summary-card,.job-detail-card){border-radius:var(--wlc-radius-lg)!important}
body:not(.crm-body) :is(.wlx-job-card,.client-service-card,.serve-card,.trust-item){border-radius:var(--wlc-radius-md)!important}

/* Shared buttons. */
body:not(.crm-body) :is(.btn,.wlx-btn,.apply-btn,.jobs-btn){border-radius:12px!important;font-weight:800!important;min-height:46px!important;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important}
body:not(.crm-body) :is(.btn,.wlx-btn,.apply-btn,.jobs-btn):hover{transform:translateY(-1px)!important}
body:not(.crm-body) :is(.btn-outline,.wlx-btn-outline,.wlx-clear-filters){border-radius:12px!important;font-weight:800!important}

/* Shared form system. */
body:not(.crm-body) :is(.apply-form,.wlx-form) label{color:var(--wlc-text)!important;font-weight:750!important}
body:not(.crm-body) :is(.apply-form,.wlx-form) :is(input,select,textarea){border:1px solid var(--wlc-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;transition:border-color .18s ease,box-shadow .18s ease!important}
body:not(.crm-body) :is(.apply-form,.wlx-form) :is(input,select,textarea):focus{outline:none!important;border-color:#73a7ef!important;box-shadow:0 0 0 4px rgba(37,99,235,.08)!important}
body:not(.crm-body) :is(.success-box,.wlx-success){border-radius:12px!important}
body:not(.crm-body) :is(.wlx-error,.field-error,.validation-error){border-radius:10px!important}

/* One legal-consent presentation. */
.wlc-legal-consent{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;margin:8px 0 12px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;text-align:left!important}
.wlc-legal-consent input{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:2px 0 0!important;padding:0!important;accent-color:var(--wlc-brand-orange)!important}
.wlc-legal-consent span{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#36516f!important;font-size:13px!important;line-height:1.58!important;font-weight:600!important}
.wlc-legal-consent a{color:var(--wlc-brand-blue)!important;font-weight:800!important;text-underline-offset:2px!important}

/* Final job-card rule: structured metadata only; no raw/truncated JD preview. */
.wlx-job-summary{display:none!important}
.wlx-job-card .wlx-meta{margin-bottom:12px!important}
.wlx-job-card-footnote{margin-top:4px!important}

/* Contact hero: secondary labels should read as descriptive helper copy, not template placeholders. */
.wlc-r83-mini span{color:var(--wlc-muted)!important;font-size:12px!important;line-height:1.45!important}

/* Shared floating WhatsApp: exactly one component across the public site. */
.float-actions,.float-wa,.wlx-whatsapp{display:none!important}
.wlc-global-whatsapp{position:fixed!important;right:24px!important;bottom:24px!important;width:56px!important;height:56px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#25D366!important;color:#fff!important;z-index:9998!important;box-shadow:0 14px 32px rgba(18,140,73,.28),0 0 0 8px rgba(37,211,102,.08)!important;text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease!important}
.wlc-global-whatsapp svg{width:29px!important;height:29px!important;display:block!important}
@media(hover:hover) and (pointer:fine){.wlc-global-whatsapp:hover{transform:translateY(-2px) scale(1.03)!important;box-shadow:0 18px 38px rgba(18,140,73,.34),0 0 0 9px rgba(37,211,102,.09)!important}}

/* Typography/spacing normalization without flattening each page's unique layout. */
body:not(.crm-body) :is(.section-head h2,.wlc-inline-20,.wlx-panel h2){letter-spacing:-.03em}
body:not(.crm-body) :is(.section,.wlr-section){scroll-margin-top:92px}

/* Partner hero: preserve content while controlling long-title density. */
body.wlc-partner-page h1,body.wlc-partners-page h1{max-width:760px}

/* Responsive template contract. */
@media(max-width:760px){
  .wlc-global-whatsapp{right:16px!important;bottom:16px!important;width:52px!important;height:52px!important}
  .wlc-global-whatsapp svg{width:27px!important;height:27px!important}
  body:not(.crm-body) :is(.content-card,.wlx-panel,.apply-main-card,.apply-summary-card,.job-detail-card){border-radius:18px!important}
  .wlc-legal-consent{grid-template-columns:18px minmax(0,1fr)!important;gap:9px!important}
}
