/* IntelEye contact geometry and motion; portfolio fonts and theme colors remain. */
.vision-header nav>.contact-nav{display:flex;gap:9px;align-items:center;min-height:46px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.vision-header nav>.contact-nav:hover{color:var(--accent-ink)}
.vision-header nav>.contact-nav:focus-visible{outline:2px solid var(--accent-ink);outline-offset:6px}
.contact-popover{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:visible;background:transparent;color:var(--ink);pointer-events:none;z-index:100}
.contact-popover:not([data-open]){display:none}
.contact-popover::backdrop{background:transparent;pointer-events:none}
.contact-float{--contact-card-width:clamp(560px,calc(100vw - 720px),840px);position:absolute;left:var(--contact-x,16px);top:var(--contact-y,100px);display:flex;align-items:center;width:calc(var(--contact-card-width) + 56.5px);max-width:calc(100vw - 32px);pointer-events:auto;opacity:0;transform:translateX(-8px);transition:opacity 280ms ease,transform 280ms ease}
.contact-popover[data-visible] .contact-float{opacity:1;transform:translateX(0)}
.contact-popover[data-closing] .contact-float{opacity:0;transform:translateX(-6px);transition-duration:200ms;pointer-events:none}
.contact-card{position:relative;box-sizing:border-box;flex:1 1 auto;min-width:0;min-height:99.36px;padding:18px 32px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 36px 54px #00000059}
.contact-form{display:flex;align-items:center;min-height:61.36px;gap:32px}
.contact-form h3{flex:none;font:700 1.5rem/1.5 var(--display);letter-spacing:0;margin:0;white-space:nowrap}
.contact-field{flex:1 1 0;min-width:0;display:flex;align-items:center}
.contact-field>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.contact-field input{display:block;width:100%;min-width:0;height:44px;padding:12px 16px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:400 1rem/1.4 var(--body);box-sizing:border-box}
.contact-field input::placeholder{color:var(--muted);opacity:1}
.contact-field input:focus{outline:none;background:color-mix(in srgb,var(--ink) 4%,transparent)}
.contact-send{flex:none;display:flex;gap:.35em;justify-content:center;align-items:center;min-height:53px;margin-left:auto;padding:16px;border:0;border-radius:3px;background:none;color:var(--ink);font:400 1.125rem/1.2 var(--body);letter-spacing:.02em;white-space:nowrap;cursor:pointer;transition:color 200ms cubic-bezier(.4,0,.6,1),letter-spacing 200ms cubic-bezier(.4,0,.6,1)}
.contact-send:hover{color:var(--secondary-ink);letter-spacing:.08em}
.contact-send:focus-visible,.contact-close:focus-visible{outline:2px solid var(--secondary-ink);outline-offset:4px}
.contact-status{position:absolute;top:100%;left:0;right:0;margin:8px 0 0;padding:0;font:400 .75rem/1.4 var(--body);color:var(--muted)}
.contact-status[data-feedback]{padding:10px 14px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}
.contact-connector{flex:0 0 42.5px;width:42.5px;height:1px;margin-right:14px;background:repeating-linear-gradient(90deg,var(--ink) 0 8px,transparent 8px 14px);opacity:.7;pointer-events:none}
.contact-backdrop,.contact-close{display:none}
@media(max-width:768px){
  .vision-header nav>.contact-nav{min-height:44px;font-size:.875rem}.contact-nav>span:last-child{display:none}
  html.contact-modal-open{overflow:hidden}
  .contact-popover[data-open]{pointer-events:auto}
  .contact-backdrop{display:block;position:absolute;inset:0;background:#0000008c;backdrop-filter:blur(6px);opacity:0;transition:opacity 220ms cubic-bezier(.16,1,.3,1)}
  .contact-popover[data-visible] .contact-backdrop{opacity:1}
  .contact-popover[data-closing] .contact-backdrop{opacity:0}
  .contact-float{display:block;width:min(420px,calc(100vw - 32px));max-height:calc(var(--contact-vh,100dvh) - 32px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;border-radius:14px}
  .contact-card{min-height:0;padding:22px 22px max(22px,env(safe-area-inset-bottom));border-radius:14px;box-shadow:0 24px 48px #0000008c}
  .contact-form{flex-direction:column;align-items:stretch;min-height:0;gap:14px}
  .contact-form h3{font-size:1.25rem;line-height:1.5;white-space:normal;padding-right:35px}
  .contact-field{flex:auto}
  .contact-field input{height:46px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:8px;background:color-mix(in srgb,var(--ink) 4%,transparent)}
  .contact-send{width:100%;min-height:51px;margin-left:0;padding:14px 18px;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);border-radius:8px;background:color-mix(in srgb,var(--ink) 4%,transparent);text-align:center}
  .contact-status{position:static;margin-top:14px;font-size:.75rem}
  .contact-close{display:flex;align-items:center;justify-content:center;position:absolute;top:8px;right:8px;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:none;color:var(--muted);cursor:pointer}
  .contact-close:active{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}
  .contact-connector{display:none}
}
@media(prefers-reduced-motion:reduce){.contact-float,.contact-backdrop,.contact-send{transition:none!important}.contact-float{transform:none!important}}
