/*!
 * [CONTACT-POPUP 2026-08-31] Secure contact popup. Replaces every published
 * email address on the marketing site: links carrying data-ll-contact open
 * this overlay instead of a mailto. Scoped .llcf- throughout.
 */
/* Explicit offsets alongside inset:0: Safari before 14.5 ignores inset
   and would lose the overlay geometry ([AUDIT 2026-08-31]). */
.llcf-overlay{position:fixed;inset:0;top:0;right:0;bottom:0;left:0;z-index:2147482000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,26,36,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;transition:opacity .18s ease}
.llcf-overlay.llcf-show{opacity:1}
.llcf-card{position:relative;width:100%;max-width:600px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 24px 64px rgba(10,20,30,.35);font-family:Rubik,Lato,Arial,sans-serif;color:#33434e;transform:translateY(14px);transition:transform .18s ease}
.llcf-overlay.llcf-show .llcf-card{transform:translateY(0)}
.llcf-head{padding:22px 56px 14px 26px;border-bottom:1px solid #e7edf2}
.llcf-title{margin:0;font-size:22px;line-height:28px;font-weight:600;color:#20303c}
.llcf-sub{margin:6px 0 0;font-size:14px;line-height:1.55;color:#5b6b76}
.llcf-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#5b6b76;font-size:22px;line-height:1;cursor:pointer}
.llcf-x:hover{background:#eef3f6;color:#20303c}
.llcf-body{padding:18px 26px 24px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.llcf-two{display:flex;gap:14px}
.llcf-two .llcf-field{flex:1 1 0;min-width:0}
.llcf-field{margin:0 0 14px}
.llcf-field label{display:block;margin:0 0 5px;font-size:13px;font-weight:500;color:#20303c}
.llcf-field input,.llcf-field textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #ccd7de;border-radius:8px;background:#fff;font-family:inherit;font-size:15px;color:#20303c;outline:none}
.llcf-field input:focus,.llcf-field textarea:focus{border-color:#259457;box-shadow:0 0 0 3px rgba(37,148,87,.14)}
.llcf-field textarea{min-height:110px;resize:vertical}
.llcf-field input[aria-invalid="true"],.llcf-field textarea[aria-invalid="true"]{border-color:#c8362b;box-shadow:0 0 0 3px rgba(200,54,43,.12)}
.llcf-hint{margin:5px 0 0;font-size:12px;color:#7a8893}
.llcf-attach{margin:2px 0 16px}
.llcf-attach-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px dashed #a9bac5;border-radius:8px;background:#f7fafb;font-size:14px;font-weight:500;color:#33434e;cursor:pointer}
.llcf-attach-btn:hover{border-color:#259457;color:#1d7a48}
.llcf-attach input[type="file"]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.llcf-files{list-style:none;margin:10px 0 0;padding:0}
.llcf-files li{display:flex;align-items:center;gap:10px;padding:7px 10px;margin:0 0 6px;border:1px solid #e2e9ee;border-radius:8px;background:#fbfdfe;font-size:13px;color:#33434e}
.llcf-files .llcf-fname{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.llcf-files .llcf-fsize{flex:0 0 auto;color:#7a8893}
.llcf-files .llcf-frm{flex:0 0 auto;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:#7a8893;font-size:16px;line-height:1;cursor:pointer}
.llcf-files .llcf-frm:hover{background:#fdecec;color:#b3261e}
.llcf-status{display:none;margin:0 0 14px;padding:11px 14px;border-radius:8px;font-size:14px;line-height:1.5}
.llcf-status.llcf-err{display:block;background:#fdecec;border:1px solid #f3c6c1;color:#b3261e}
.llcf-actions{display:flex;align-items:center;gap:14px}
.llcf-send{flex:0 0 auto;padding:12px 26px;border:0;border-radius:9px;background:linear-gradient(135deg,#2aa261,#1f8a50);color:#fff;font-family:inherit;font-size:15px;font-weight:600;letter-spacing:.2px;cursor:pointer;box-shadow:0 6px 16px rgba(31,138,80,.28)}
.llcf-send:hover{background:linear-gradient(135deg,#249257,#1b7a46)}
.llcf-send[disabled]{opacity:.65;cursor:default}
.llcf-note{flex:1 1 auto;font-size:12px;line-height:1.5;color:#7a8893}
.llcf-done{text-align:center;padding:26px 10px 14px}
.llcf-done-ic{width:58px;height:58px;margin:0 auto 16px;border-radius:50%;background:#e7f6ec;color:#1d7a48;font-size:30px;line-height:58px}
.llcf-done h4{margin:0 0 8px;font-size:20px;font-weight:600;color:#20303c}
.llcf-done p{margin:0 auto;max-width:400px;font-size:14.5px;line-height:1.6;color:#5b6b76}
.llcf-hp{position:absolute;left:-9999px;top:-9999px;height:0;width:0;overflow:hidden}
a[data-ll-contact]{cursor:pointer}
@media (max-width:640px){
  .llcf-overlay{padding:0;align-items:flex-end}
  .llcf-card{max-width:none;max-height:94vh;border-radius:16px 16px 0 0;transform:translateY(30px)}
  .llcf-head{padding:20px 52px 12px 20px}
  .llcf-body{padding:16px 20px 22px}
  .llcf-two{display:block}
  .llcf-actions{flex-direction:column;align-items:stretch}
  .llcf-send{width:100%}
  .llcf-note{text-align:center}
}
