:root{font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;line-height:1.6;font-weight:400;color:#1b1f3b;background-color:#f4f6fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background-color:inherit}#root{height:100%;overflow:hidden}a{color:inherit}.employee-company-heading{margin:1px 0 -1px;font-weight:600;color:#121a3a;font-size:clamp(.85rem,.9vw + .5rem,1.05rem)}.employee-company-subheading{margin:1px 0 3px;color:#121a3a;font-weight:500;font-size:clamp(.8rem,.8vw + .45rem,.95rem)}.app-shell{height:100%;display:flex;flex-direction:column;background:#f4f6fb;color:#1b1f3b;overflow:hidden}.app-shell__main{flex:1;display:flex;justify-content:center;align-items:stretch;padding:0;overflow:hidden;min-height:0}.page{width:100%;display:flex;flex-direction:column;gap:1.5rem;background:#fff;box-shadow:0 24px 64px #0f172a14;padding:clamp(1.5rem,4vw,2.5rem);overflow:hidden}.page--employee{width:100%;height:100%;padding:0;border-radius:0;overflow:hidden}.page h2{margin:0;font-size:clamp(1.25rem,1.5vw + 1rem,1.75rem)}.employee-lookup{display:flex;flex-direction:column;gap:.75rem}.employee-lookup__label{font-weight:600}.employee-lookup__controls{display:flex;flex-direction:column;gap:.75rem}.employee-lookup input{padding:.75rem 1rem;border-radius:.6rem;border:1px solid #d0d7f0;font-size:1rem}.employee-lookup button{align-self:flex-start;background:#0b5cff;color:#fff;border:none;border-radius:.6rem;padding:.6rem 1.4rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease}.employee-lookup button:hover,.employee-lookup button:focus-visible{background:#0847c1;transform:translateY(-1px)}.employee-name-heading{margin:0;font-size:clamp(1.25rem,1.5vw + .8rem,1.85rem);font-weight:700;color:#121a3a}.employee-title-heading{margin:-3px 0 -7px;font-weight:600;color:#121a3a;font-size:clamp(1rem,1.1vw + .6rem,1.35rem)}.employee-office-heading{margin:-1px 0 -5px;font-weight:500;color:#121a3a;font-size:clamp(.85rem,.9vw + .5rem,1.05rem)}.employee-portrait{align-self:flex-start;margin-bottom:4px}.employee-portrait--card{margin-top:-190px}.employee-portrait img{width:clamp(170px,28vw,260px);height:clamp(170px,28vw,260px);object-fit:cover;border-radius:50%;border:4px solid #ffffff;box-shadow:0 12px 24px #0f172a2e}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.employee-details{display:grid;gap:1rem}.employee-details__row{display:grid;gap:.25rem}.employee-details__row--paired{grid-template-columns:minmax(0,1fr);gap:clamp(1rem,4vw,1.5rem)}.employee-details__field{display:grid;gap:.25rem}.employee-details__value{display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap}.employee-details__icon{display:inline-flex;align-items:center;justify-content:center;width:calc(1.5rem + 2px);height:calc(1.5rem + 2px)}.employee-details__icon svg{width:100%;height:100%}.employee-details__field--email,.employee-details__field--business,.employee-details__field--mobile,.employee-details__field--fax{grid-column:1}@media(min-width:768px){.employee-details__row--paired{grid-template-columns:repeat(2,minmax(200px,1fr))}.employee-details__field--email{grid-column:1;grid-row:1}.employee-details__field--business{grid-column:1;grid-row:2}.employee-details__field--mobile{grid-column:2;grid-row:1}.employee-details__field--fax{grid-column:2;grid-row:2}}.employee-details__row dt{font-size:clamp(.7rem,.7vw + .35rem,.8rem);letter-spacing:.04em;text-transform:uppercase;color:#5e6ea7}.employee-details__row dd{margin:0;font-size:clamp(.9rem,1vw + .5rem,1.1rem);font-weight:600}.message{border-radius:.75rem;padding:1rem 1.25rem;background:#ecf1ff;border:1px solid #cbd7ff;color:#102152;font-size:calc(1rem + 2px)}.message--error{background:#ffe9e9;border-color:#f7b4b4;color:#7c1a1a}.loader{display:inline-flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ecf1ff;border-radius:999px;color:#0b5cff;font-weight:600;font-size:calc(1rem + 2px)}.loader__spinner{width:1rem;height:1rem;border:3px solid rgba(11,92,255,.2);border-top-color:#0b5cff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(min-width:720px){.employee-lookup__controls{flex-direction:row;align-items:center}.employee-lookup input{flex:1}.employee-lookup button{align-self:flex-start}}.employee-card{display:flex;flex-direction:column;height:100%}.employee-card__header{background:#013f7c;padding:clamp(.5rem,1.25vw,.9rem) clamp(1.6rem,5vw,3rem);padding-bottom:clamp(.85rem,2.25vw,1.5rem);display:flex;justify-content:flex-end;align-items:center}.employee-card__logo{max-width:min(300px,45vw);height:auto}.employee-card__content{display:flex;flex-direction:column;gap:clamp(.75rem,2vw,1.25rem);padding:clamp(1rem,3vw,2rem);padding-left:clamp(2rem,6vw,3.5rem);padding-right:clamp(1.75rem,5vw,3rem);padding-top:clamp(.75rem,2vw,1.2rem);padding-bottom:clamp(.2rem,1vw,.5rem);position:relative;flex:1;min-height:0;justify-content:center}.employee-card__text{display:flex;flex-direction:column;gap:calc(.2rem - 1px)}.employee-card__actions{display:flex;justify-content:flex-end;padding:0 clamp(1.75rem,5vw,3rem) clamp(1rem,2vw,1.5rem);margin-top:auto}.save-contact-button{background:#0b5cff;color:#fff;border:none;border-radius:999px;padding:.6rem 1.4rem;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 30px #0b5cff38;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.save-contact-button:hover,.save-contact-button:focus-visible{background:#0847c1;transform:translateY(-1px);box-shadow:0 16px 36px #0847c147}@media(max-width:480px){.employee-card__header{padding:.6rem 1.1rem 1.35rem}.employee-card__logo{max-width:200px}.employee-card__content{align-items:stretch;padding:.85rem 1.15rem .5rem;gap:.8rem;position:relative;flex:1;min-height:0;justify-content:center}.employee-portrait{align-self:flex-start;margin-bottom:.1rem}.employee-portrait--card{margin-top:-85px}.employee-portrait img{width:140px;height:140px}.employee-card__text{width:100%}.employee-details__value{gap:.5rem}.employee-card__actions{padding:0 1.05rem 1rem;margin-top:auto}.save-contact-button{width:auto;padding:.5rem 1.1rem;font-size:.82rem}}
