/* Shared navigation for the homepage, projects and both calculators. */
.plusline-site-header { box-sizing: border-box; position: relative; z-index: 50; display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; height: 100px; padding: 0 5%; background: #101b56; color: #fff; border-bottom: 1px solid #ffffff25; font-family: Arial, Helvetica, sans-serif; }
.plusline-site-header .site-brand { display: block; flex: 0 0 98px; width: 98px; height: 76px; padding: 0; margin: 0; }
.plusline-site-header .site-brand img { display: block; width: 100%; height: 100%; object-fit: contain; filter: brightness(0) invert(1); pointer-events: none; user-select: none; }
.plusline-site-header nav { display: flex; align-items: center; gap: 28px; margin: 0; padding: 0; font-size: 14px; line-height: 20px; }
.plusline-site-header nav a { display: inline-flex; align-items: center; gap: 8px; padding: 0; margin: 0; border: 0; background: transparent; color: #fff; text-decoration: none; white-space: nowrap; font-weight: 400; letter-spacing: normal; }
.plusline-site-header nav a:hover { opacity: .75; }
.plusline-site-header nav a.site-account { display: block; max-width: 180px; overflow: hidden; text-overflow: ellipsis; }
.plusline-site-header nav a[aria-current="page"], .plusline-site-header nav .site-contact { padding: 11px 16px; border: 1px solid #fff; background: #fff; color: #101b56; }
.plusline-site-header nav .site-contact { margin-left: 10px; gap: 24px; }
.plusline-site-header .site-menu { display: none; }
.plusline-site-header a:focus-visible, .plusline-site-header button:focus-visible { outline: 3px solid #83a8ff; outline-offset: 4px; }
@media (max-width: 1100px) { .plusline-site-header nav { gap: 18px; } .plusline-site-header nav .site-contact { margin-left: 0; gap: 12px; } }
@media (max-width: 900px) {
  .plusline-site-header { height: 80px; }
  .plusline-site-header .site-brand { flex-basis: 79px; width: 79px; height: 62px; }
  .plusline-site-header .site-menu { display: flex; align-items: center; gap: 20px; padding: 10px 14px; background: #fff; color: #101b56; border: 1px solid #fff; border-radius: 0; font: 14px/20px Arial, Helvetica, sans-serif; cursor: pointer; }
  .plusline-site-header nav { display: none; position: absolute; top: 80px; left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 24px; padding: 25px 5%; background: #101b56; border-bottom: 1px solid #ffffff25; }
  .plusline-site-header nav.open { display: flex; }
  .plusline-site-header nav a[aria-current="page"] { align-self: flex-start; }
  .plusline-site-header nav .site-contact { justify-content: space-between; }
  .plusline-site-header nav a.site-account { box-sizing: border-box; width: 100%; max-width: none; padding: 11px 16px; border: 1px solid #fff; background: #fff; color: #101b56; }
}
@media print { .plusline-site-header { display: none !important; } }

.floating-whatsapp{position:fixed;right:24px;bottom:24px;z-index:60;display:inline-flex;align-items:center;gap:10px;padding:14px 19px;background:#101b56;color:#fff!important;border:1px solid #ffffff70;border-bottom:3px solid #ed1c35;border-radius:30px;box-shadow:0 5px 20px #101b5630;text-decoration:none;font:600 13px/1.2 Arial,Helvetica,sans-serif;transition:background .15s,transform .15s}
.floating-whatsapp svg{flex-shrink:0}.floating-whatsapp:hover{background:#24356f;transform:translateY(-2px)}.floating-whatsapp:focus-visible{outline:3px solid #ed1c35;outline-offset:4px}
@media(max-width:600px){.floating-whatsapp{right:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:12px 15px;font-size:12px}}
@media print{.floating-whatsapp{display:none!important}}

.floating-whatsapp{width:54px;height:54px;padding:0;justify-content:center;gap:0;border-radius:50%}@media(max-width:600px){.floating-whatsapp{width:50px;height:50px;padding:0}}
