*{box-sizing:border-box}html,body{margin:0!important;padding:0!important;background:#fff!important;color:#123b59}html{overscroll-behavior-y:none}body{font-family:Inter,Arial,sans-serif;overflow-x:hidden;min-height:100vh}.site{position:relative;width:min(100%,1440px);margin:0 auto;background:#fff;line-height:0}.site.careers-site{width:min(100%,1460px)}.artwork{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}.hotspot{position:absolute;display:block;z-index:80;background:transparent!important;border:0!important;padding:0!important;margin:0!important;cursor:pointer;text-decoration:none;line-height:normal}.hotspot:hover{background:rgba(15,126,164,.055)!important;border-radius:6px}.hotspot:focus-visible{outline:3px solid #19a9bd!important;outline-offset:2px;border-radius:6px}.nav-hit{z-index:110}.action-hit{z-index:90}
/* Optional alignment diagnostic: add ?debug=1 to any page */body.debug .hotspot{background:rgba(255,0,0,.18)!important;outline:1px solid red!important}
/* Modal */.modal-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(0,31,53,.55);display:none;align-items:center;justify-content:center;padding:24px;line-height:normal}.modal-backdrop.open{display:flex}.modal{width:min(620px,92vw);max-height:80vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.28);padding:28px;position:relative}.modal h2{font:700 26px/1.2 'Plus Jakarta Sans',Inter,sans-serif;color:#0c4d70;margin:0 42px 14px 0}.modal ul{padding-left:22px;margin:0;color:#273e50;font-size:16px;line-height:1.8}.modal-close{position:absolute;top:15px;right:15px;width:36px;height:36px;border-radius:50%;border:0;background:#eef6f8;color:#0c4d70;font-size:22px;cursor:pointer}
/* Partner carousel: original proportions; no stretching */.partner-strip{position:absolute;left:0;top:84.2%;width:100%;height:5.2%;background:#fff;overflow:hidden;z-index:55;display:flex;align-items:center;line-height:normal}.partner-track{display:flex;align-items:center;width:max-content;animation:partner-scroll 30s linear infinite}.partner-track img{display:block;width:1390px;height:125px;object-fit:contain;flex:none;margin-right:40px}.partner-strip:hover .partner-track{animation-play-state:paused}@keyframes partner-scroll{from{transform:translateX(0)}to{transform:translateX(-1430px)}}
/* Crisp live form overlays the intentionally soft artwork form card */.live-contact{position:absolute;left:4.55%;top:57.45%;width:47.7%;height:21.1%;z-index:70;background:#f3f9fd;border:1px solid #e3eef6;border-radius:12px;padding:1.25% 1.45%;line-height:1.25;color:#194b69;box-shadow:0 4px 18px rgba(31,86,122,.08);font-family:Inter,Arial,sans-serif}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.live-contact label{display:block;font-size:14px;font-weight:700;color:#174c6b}.live-contact b{color:#d22;font-weight:700}.live-contact input,.live-contact textarea{display:block;width:100%;margin-top:6px;border:1px solid #c9dce8;background:#fff;color:#1e3443;font:400 14px/1.3 Inter,Arial,sans-serif;border-radius:6px;padding:10px 12px;outline:none}.live-contact input{height:42px}.live-contact textarea{height:112px;resize:none}.live-contact input:focus,.live-contact textarea:focus{border-color:#1b9bc9;box-shadow:0 0 0 2px rgba(27,155,201,.14)}.message-label{margin-top:14px}.form-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:16px}.human{display:flex!important;align-items:center;gap:9px!important;background:#fff;border:1px solid #c9dce8;border-radius:6px;padding:8px 12px!important;font-weight:500!important;min-width:210px}.human input{width:20px!important;height:20px!important;margin:0!important}.form-actions button{height:44px;min-width:210px;border:0;border-radius:6px;background:#1689c4;color:#fff;font:700 14px Inter,Arial,sans-serif;cursor:pointer}.form-actions button:hover{filter:brightness(.96)}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:10000;background:#0d5a73;color:#fff;padding:12px 18px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.2);display:none;line-height:normal}.toast.show{display:block}
@media(max-width:900px){.site,.site.careers-site{min-width:900px}.modal-backdrop{padding:12px}}

/* V20 interaction precision + overscroll underlay */
html,body{background:#fff!important;overscroll-behavior:none!important}body{position:relative;min-height:100svh}body:before{content:"";position:fixed;inset:0;background:#fff;z-index:-1000}
.hotspot{touch-action:manipulation}
.nav-hit{top:2.35%!important;height:3.15%!important;border-radius:2px}
/* completely mask the baked-in partner logo row before rendering the animated row */
.partner-strip{top:83.95%!important;height:6.15%!important;background:#fff!important;overflow:hidden!important;align-items:center!important}
.partner-track{gap:44px}
.partner-track img{width:1390px!important;height:125px!important;object-fit:contain!important;margin:0!important;flex:0 0 1390px!important}
/* admin/contact helpers */
.admin-note{font-size:13px;color:#5d7180}
@media(max-width:900px){.site,.site.careers-site{min-width:900px}}

/* V21 exact product-partner cleanup + footer interactions */
/* Cover the entire baked-in partner-logo row, including tall logos, while leaving the heading and CTA banner untouched. */
.partner-strip{top:82.55%!important;height:5.95%!important;background:#fff!important;z-index:65!important;overflow:hidden!important;display:flex!important;align-items:center!important}
.partner-track{height:100%!important;display:flex!important;align-items:center!important;gap:42px!important;animation:partner-scroll-v21 34s linear infinite!important;will-change:transform}
.partner-track img{width:1390px!important;height:125px!important;object-fit:contain!important;object-position:center!important;flex:0 0 1390px!important;margin:0!important;max-width:none!important}
@keyframes partner-scroll-v21{from{transform:translateX(0)}to{transform:translateX(-1432px)}}
/* Exact bottom CTA artwork supplied by the user, replacing any stale/incorrect baked footer appearance. */
.product-bottom-banner{position:absolute;left:0;top:88.35%;width:100%;height:11.65%;object-fit:fill;display:block;z-index:60;pointer-events:none}
.product-cta-hit{z-index:95!important}
/* Contact footer: use live text exactly on the visible words, not offset invisible hotspots. */
.contact-footer-links{position:absolute;left:57.8%;top:93.15%;width:40.5%;height:2.15%;z-index:120;background:#fff;display:flex;align-items:center;justify-content:center;gap:11px;line-height:1;font-family:Inter,Arial,sans-serif;font-size:12.5px;font-weight:500;white-space:nowrap}
.contact-footer-links a{color:#476a80;text-decoration:none;padding:8px 3px;display:inline-flex;align-items:center;height:100%;cursor:pointer}
.contact-footer-links a:hover{color:#0f7397;text-decoration:underline}
.contact-footer-links span{color:#aab8c1;pointer-events:none}
.contact-social{z-index:125!important;top:95.35%!important;height:1.75%!important;border-radius:4px}
.linkedin-hit{left:76.8%!important;width:2.5%!important}
.whatsapp-hit{left:79.4%!important;width:2.5%!important}
body.debug .contact-footer-links{outline:1px solid #d00;background:rgba(255,255,255,.92)}
body.debug .contact-social{background:rgba(255,0,0,.2)!important;outline:1px solid red!important}


/* V23 — laptop/desktop responsive normalization */
html,body{width:100%;max-width:100%;overflow-x:hidden!important;background:#fff!important}
.site,.site.careers-site{width:100%!important;max-width:none!important;margin:0!important;background:#fff!important;overflow:hidden}
.artwork{width:100%!important;max-width:none!important;height:auto!important;display:block!important}
/* Prevent old fixed-width mobile fallback from affecting laptop-sized windows. */
@media (min-width:901px){
  .site,.site.careers-site{min-width:0!important;width:100vw!important;max-width:100vw!important}
}
/* Temporary small-screen safety until dedicated phone artwork is incorporated. */
@media (max-width:900px){
  .site,.site.careers-site{min-width:900px!important;width:900px!important;max-width:none!important}
}

/* V25 dedicated phone implementation — authoritative 412×917 phone artwork */
.mobile-actions,.mobile-nav,.mobile-partner-strip{display:none}
@media (max-width:767px){
 html,body{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;background:#fff!important;overflow-x:hidden!important;overscroll-behavior:none!important}
 body{min-height:100svh!important}
 .site,.site.careers-site{position:relative!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;background:#fff!important;overflow:hidden!important;line-height:0!important}
 .artwork{display:block!important;width:100%!important;height:auto!important;max-width:none!important}
 .hotspot{display:none!important}
 .mobile-actions,.mobile-nav{display:block!important}
 .mobile-hit{position:absolute!important;display:block!important;z-index:410!important;background:transparent!important;border:0!important;padding:0!important;margin:0!important;cursor:pointer!important;line-height:1!important;text-decoration:none!important;touch-action:manipulation!important}
 .mobile-hit:focus-visible{outline:2px solid #18a6bd!important;outline-offset:1px}
 body.debug .mobile-hit{background:rgba(255,0,0,.18)!important;outline:1px solid red!important}
 /* Product partner animation: mask only the static logo row, keep the heading and footer artwork visible. */
 .partner-strip,.product-bottom-banner,.contact-footer-links{display:none!important}
 .mobile-partner-strip{display:block!important;position:absolute!important;left:0!important;top:76.35%!important;width:100%!important;height:4.35%!important;background:#fff!important;overflow:hidden!important;z-index:380!important;line-height:0!important}
 .mobile-partner-track{display:flex!important;align-items:center!important;height:100%!important;width:max-content!important;animation:mobile-partners-scroll 19s linear infinite!important;will-change:transform}
 .mobile-partner-track img{display:block!important;height:100%!important;width:auto!important;max-width:none!important;object-fit:contain!important;flex:none!important;margin-right:22px!important}
 .mobile-partner-strip:hover .mobile-partner-track{animation-play-state:paused!important}
 @keyframes mobile-partners-scroll{from{transform:translateX(0)}to{transform:translateX(-434px)}}
 /* Crisp mobile contact form aligned to the supplied phone layout */
 .live-contact{left:4.55%!important;top:47.1%!important;width:50.8%!important;height:15.8%!important;z-index:390!important;background:#f4f9fd!important;border:1px solid #dbeaf4!important;border-radius:4px!important;padding:1.4%!important;box-shadow:none!important;line-height:1.15!important;overflow:hidden!important}
 .field-grid{grid-template-columns:1fr 1fr!important;gap:3px 4px!important}
 .live-contact label{font-size:5.6px!important;line-height:1.1!important;font-weight:700!important;color:#174c6b!important}
 .live-contact input,.live-contact textarea{margin-top:1px!important;border-radius:2px!important;padding:2px 3px!important;font-size:6px!important;line-height:1.15!important;border:1px solid #cbdce7!important}
 .live-contact input{height:15px!important}.live-contact textarea{height:26px!important;resize:none!important}
 .message-label{margin-top:3px!important}.form-actions{margin-top:3px!important;gap:3px!important}
 .human{min-width:0!important;padding:2px 3px!important;border-radius:2px!important;font-size:5.4px!important;gap:3px!important}
 .human input{width:8px!important;height:8px!important;margin:0!important}
 .form-actions button{height:18px!important;min-width:64px!important;border-radius:2px!important;font-size:5.8px!important;padding:0 5px!important}
 .modal-backdrop{padding:10px!important}.modal{width:92vw!important;max-height:76vh!important;padding:20px!important;border-radius:14px!important}.modal h2{font-size:20px!important}.modal ul{font-size:14px!important;line-height:1.6!important}
 .toast{max-width:88vw!important;text-align:center!important;font-size:13px!important}
}

/* V26 updated phone artwork + stable interaction layer */
@media (max-width:767px){
  .mobile-hit{-webkit-tap-highlight-color:transparent!important;outline:none!important}
  .mobile-hit:focus,.mobile-hit:active{outline:none!important;box-shadow:none!important;background:transparent!important}
  /* updated artwork already contains all bottom banners/footers */
  .artwork{background:#fff!important}
  /* ensure carousel is visible above the updated product artwork without exposing the static row */
  .mobile-partner-strip{top:74.95%!important;height:5.25%!important;background:#fff!important}
  .mobile-partner-track{animation-duration:16s!important}
  .mobile-partner-track img{height:100%!important;width:auto!important;max-width:none!important;margin-right:18px!important}
  /* keep the live contact form crisp and within its artwork card */
  .live-contact{top:46.8%!important;left:4.2%!important;width:51.5%!important;height:16.1%!important}
}

/* V28 — exact V26 mobile layout, high-density artwork only. No layout redesign. */
@media (max-width:767px){
  .artwork{image-rendering:auto!important;-webkit-transform:translateZ(0);transform:translateZ(0)}
  .mobile-partner-track img{image-rendering:auto!important}
}

/* V29 — mobile-only cleanup from QA notes. Desktop rules remain unchanged. */
@media (max-width:767px){
  /* Interaction layers must be completely invisible: the approved artwork supplies all visible labels/buttons. */
  .mobile-hit,.mobile-actions,.mobile-nav{
    color:transparent!important;
    font-size:0!important;
    text-indent:-9999px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    text-decoration:none!important;
    outline:0!important;
    opacity:1!important;
    -webkit-appearance:none!important;
    appearance:none!important;
  }
  .mobile-hit::before,.mobile-hit::after,.mobile-actions::before,.mobile-actions::after{
    content:none!important;
    display:none!important;
  }
  /* Desktop/footer live UI must never be painted over the phone artwork. */
  .contact-footer-links,.contact-social,.product-bottom-banner,.partner-strip{
    display:none!important;
    visibility:hidden!important;
  }
  /* Keep exactly one approved footer/banner from the phone artwork on every page. */
  .site>.artwork{z-index:1!important;position:relative!important}
  .mobile-actions{z-index:410!important}
  /* Product icons/cards come only from the approved phone artwork; only the logo carousel is a visible overlay. */
  .mobile-partner-strip{z-index:380!important}
  /* Contact form remains the one intentional live overlay; prevent any inherited desktop duplication. */
  .live-contact{z-index:390!important}
}


/* V30 — high-resolution native mobile rendering while preserving approved mobile section order/layout. Desktop unchanged. */
.mobile-page{display:none}
@media (max-width:767px){
  html,body{margin:0!important;padding:0!important;background:#fff!important;color:#153f59!important;overflow-x:hidden!important;-webkit-text-size-adjust:100%;overscroll-behavior:none!important}
  body>.site{display:none!important}
  .mobile-page{display:block!important;width:100%!important;max-width:100%!important;background:#fff!important;line-height:1.3!important;overflow:hidden!important;font-family:Inter,Arial,sans-serif!important}
  .mobile-header{background:#fff!important}
  .mobile-export{height:34px;display:flex;align-items:center;justify-content:center;background:#1d5f7f;color:#fff;font-size:13px;font-style:italic;letter-spacing:.15px}
  .mobile-topnav{height:50px;display:grid;grid-template-columns:70px repeat(5,1fr);align-items:center;background:#f4f4f2;border-bottom:1px solid #e8ecee;padding:0 4px;gap:0}
  .mobile-topnav a{display:flex;align-items:center;justify-content:center;height:50px;color:#151515;text-decoration:underline;text-underline-offset:2px;font-size:10px;font-weight:600;white-space:nowrap;-webkit-tap-highlight-color:transparent}
  .mobile-topnav a.active{background:#edf2f3;color:#0d5670}.mobile-logo img{width:58px;height:42px;object-fit:contain;display:block}
  .mobile-hero-img{display:block;width:100%;height:auto;image-rendering:auto}
  .mobile-hero-wrap{position:relative}.hero-action{position:absolute;left:2.5%;bottom:13%;min-height:25px;padding:0 8px;border:1px solid #18566e;border-radius:3px;background:#fff;color:#184d66;text-decoration:none;font-size:8px;font-weight:700;display:flex;align-items:center;justify-content:center}
  .m-section{padding:18px 14px;background:#fff}.m-section+.m-section{padding-top:8px}.m-section h2{margin:0 0 12px;text-align:center;color:#16536e;font-size:19px;line-height:1.1;font-weight:800}.m-section h2.left{text-align:left;margin-bottom:6px}.eyebrow{display:block;color:#0a8fa4;font-size:10px;font-weight:700;margin-bottom:2px}.m-section p{margin:0 0 10px;color:#355b6f;font-size:10px;line-height:1.45}
  .static-partners{width:100%;overflow:hidden}.static-partners img{display:block;width:100%;height:auto;object-fit:contain}.mobile-strip-img{display:block;width:100%;height:auto;margin:7px auto 12px;object-fit:contain;image-rendering:auto}.life-at-nova-img{margin-top:0!important;margin-bottom:8px!important}
  .mobile-about-snapshot{display:grid;grid-template-columns:38% 1fr;gap:12px;align-items:center;padding-top:10px!important}.mobile-about-snapshot>div:first-child{align-self:center;text-align:center}.m-about-logo{display:block;width:92%;height:auto;object-fit:contain;margin:0 auto 6px}.m-btn{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:0 9px;border-radius:15px;font-size:8px;font-weight:700;text-decoration:none;color:#17546c}.m-btn.outline{border:1px solid #17546c;background:#fff}.mobile-about-snapshot h2{text-align:left;font-size:16px;margin-bottom:5px}.mobile-about-snapshot p{font-size:9px;margin-bottom:7px}.m-mini-cards{display:grid;grid-template-columns:1fr 1fr;gap:4px}.m-mini-cards div{background:#0f5e7d;color:#fff;border-radius:5px;padding:5px;font-size:6.7px;line-height:1.18}.m-mini-cards div:last-child{grid-column:1/-1;width:54%;justify-self:center}.m-mini-cards b,.m-mini-cards span{display:block}.m-mini-cards b{margin-bottom:2px}
  .mobile-cta-img{display:block;background:#073e99}.mobile-cta-img img{display:block;width:100%;height:auto;image-rendering:auto}
  .m-cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.m-cat-card{min-height:92px;border:1.25px solid #7696a4;background:#fff;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#174d68;text-decoration:none;padding:7px 5px;gap:3px;font-family:inherit}.m-cat-card b{font-size:10px;line-height:1.12}.m-cat-card span{font-size:7.5px}.m-cat-icon-img{width:31px;height:31px;object-fit:cover;border-radius:50%;display:block}.catalogue-card{background:#f8f8ff;border-color:#e7e8f0}
  .m-partner-window{width:100%;height:48px;overflow:hidden;display:flex;align-items:center;background:#fff}.m-partner-track{display:flex;align-items:center;width:max-content;height:48px;animation:v30Partner 18s linear infinite;will-change:transform}.m-partner-track img{height:48px;width:auto;max-width:none;flex:none;margin-right:18px;object-fit:contain}@keyframes v30Partner{from{transform:translateX(0)}to{transform:translateX(-1408px)}}
  .job-card{width:52%;margin:0 auto 12px;border:1px solid #8a9ca5;border-radius:9px;padding:9px;text-align:center;color:#174d68}.job-card b,.job-card span,.job-card a{display:block}.job-card b{font-size:11px}.job-card span{font-size:7px;margin:2px 0 5px}.job-card a{font-size:8px;font-weight:700;color:#174d68}
  .hiring{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.hiring li{text-align:center;color:#194f69;font-size:6.4px}.hiring li:before{content:counter(list-item);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;margin:0 auto 3px;background:#edf5fb;color:#4669ac;font-weight:800}.hiring b,.hiring span{display:block}.hiring b{font-size:6.4px}.hiring span{font-size:5.4px;color:#657d8b;margin-top:2px}
  .contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.contact-cards>div{border:1.25px solid #78919c;border-radius:10px;min-height:84px;padding:8px 4px;text-align:center;color:#174e69}.contact-cards b,.contact-cards span{display:block}.contact-cards b{font-size:8.5px;margin-bottom:5px}.contact-cards span{font-size:6.6px;line-height:1.28}
  .m-contact-form{background:#f2f8fc;border:1px solid #dbe8f1;border-radius:7px;padding:9px;margin-top:9px;color:#164d68;box-shadow:0 3px 9px rgba(20,74,105,.06)}.m-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.m-contact-form label{display:block;font-size:7.5px;font-weight:700}.m-contact-form b{color:#c93333}.m-contact-form input,.m-contact-form textarea{display:block;width:100%;margin-top:2px;border:1px solid #b9cfdb;border-radius:3px;background:#fff;color:#223b49;padding:5px;font:400 8.5px/1.2 Inter,Arial,sans-serif}.m-contact-form textarea{height:50px;resize:none}.m-contact-form>label{margin-top:6px}.m-form-actions{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:6px}.m-human{display:flex!important;align-items:center;gap:4px;font-weight:500!important;background:#fff;border:1px solid #b9cfdb;padding:4px 5px;border-radius:3px}.m-human input{width:12px;height:12px;margin:0}.m-form-actions button{border:0;background:#178fc4;color:#fff;border-radius:3px;min-height:24px;padding:0 8px;font:700 8px Inter,Arial,sans-serif}.support-points{margin-top:9px;display:grid;grid-template-columns:1fr;gap:4px}.support-points div{padding-left:24px;position:relative}.support-points div:before{content:'✓';position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:#eef8fc;color:#3f69b0;display:grid;place-items:center;font-weight:800;font-size:9px}.support-points b,.support-points span{display:block}.support-points b{font-size:7.5px}.support-points span{font-size:6px;color:#718691}
  .find-us{display:grid;grid-template-columns:1.15fr .85fr;gap:9px;align-items:center}.find-us h3{font-size:9px;margin:0 0 4px}.find-us p{font-size:7px}.map-tile{height:105px;border-radius:8px;background:linear-gradient(135deg,#eef3e7,#d6eef1);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#1b607e}.map-tile span{font-size:28px}.map-tile small{margin-top:3px;font-size:6px;font-weight:700}
  .mobile-footer{position:relative;background:#fff;line-height:normal}.mobile-footer>img{display:block;width:100%;height:auto;image-rendering:auto}.mobile-footer-links{position:absolute;left:44%;right:5%;bottom:23%;display:flex;justify-content:center;gap:4px;flex-wrap:wrap}.mobile-footer-links a{font-size:5.6px;color:#2f5c74;text-decoration:none}.mobile-social{position:absolute;left:63%;bottom:11%;display:flex;gap:6px}.mobile-social a{width:15px;height:15px;border-radius:3px;background:#1f5d7a;color:#fff;display:grid;place-items:center;text-decoration:none;font-size:7px;font-weight:800}
  .modal-backdrop{line-height:normal!important}.modal{width:min(92vw,420px)!important}.modal h2{font-size:19px!important}.modal ul{font-size:13px!important}
}

/* V31 mobile-only corrections — desktop remains unchanged */
@media (max-width:767px){
 html,body{overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:auto!important}
 .mobile-page{overflow-x:hidden!important;overflow-y:visible!important;touch-action:pan-y!important;min-height:0!important}
 .mobile-logo{background:#fff!important}.mobile-logo img,.m-about-logo{background:#fff!important}
 .mobile-image-hit{position:absolute!important;display:block!important;z-index:35!important;background:transparent!important;border:0!important;box-shadow:none!important;text-decoration:none!important;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important}
 .home-hero-wrap{position:relative!important}.home-explore-hit{left:4.2%!important;top:66.8%!important;width:16.4%!important;height:9.2%!important}.home-contact-hit{left:21.2%!important;top:66.8%!important;width:17.5%!important;height:9.2%!important}
 .m-cat-icon-img{width:31px!important;height:31px!important;object-fit:contain!important;object-position:center!important;border-radius:50%!important;display:block!important;flex:none!important}
 .career-resume-hit{left:2.1%!important;top:70%!important;width:24.5%!important;height:11.5%!important}.hero-action{display:none!important}
 .life-at-nova-img{width:100%!important;margin:8px 0 10px!important;display:block!important}
 .mobile-footer{position:relative!important;margin:0!important;padding:0!important;line-height:0!important}.mobile-footer>img{width:100%!important;height:auto!important;display:block!important;margin:0!important}
 .mobile-footer-links{position:absolute!important;left:36.5%!important;right:3.5%!important;bottom:30.5%!important;height:20%!important;display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:0!important;z-index:50!important;opacity:1!important}
 .mobile-footer-links a{display:block!important;width:100%!important;height:100%!important;opacity:0!important;color:transparent!important;background:transparent!important;text-indent:-9999px!important;overflow:hidden!important}
 .mobile-social{position:absolute!important;left:54.2%!important;bottom:17.5%!important;width:14.5%!important;height:12%!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8%!important;z-index:55!important;opacity:1!important}
 .mobile-social a{display:block!important;width:100%!important;height:100%!important;opacity:0!important;color:transparent!important;background:transparent!important;text-indent:-9999px!important;overflow:hidden!important}
 .mobile-home .mobile-cta-img,.mobile-home .mobile-cta-img img{margin:0!important;padding:0!important;display:block!important}.mobile-home{padding-bottom:0!important;margin-bottom:0!important}
}

/* V35 mobile footer social fix: real, crisp, clickable SVG icons */
@media (max-width: 767px){
  .mobile-footer .mobile-social{
    position:absolute!important;
    left:54.2%!important;
    bottom:17.5%!important;
    width:14.5%!important;
    height:12%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8%!important;
    z-index:80!important;
    opacity:1!important;
    line-height:normal!important;
  }
  .mobile-footer .mobile-social a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    opacity:1!important;
    color:#fff!important;
    background:#1f5d7a!important;
    border-radius:5px!important;
    text-indent:0!important;
    overflow:visible!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    box-sizing:border-box!important;
  }
  .mobile-footer .mobile-social a svg{
    display:block!important;
    width:68%!important;
    height:68%!important;
    fill:currentColor!important;
    pointer-events:none!important;
  }
}

/* V36: visible mobile LinkedIn + WhatsApp controls.
   Scoped to mobile only; desktop is untouched. */
@media (max-width: 767px) {
  .mobile-footer { position: relative !important; }

  .mobile-social-v36 {
    position: absolute !important;
    left: 54.5% !important;
    bottom: 13.8% !important;
    width: 15.5% !important;
    height: 10.5% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12% !important;
    z-index: 999 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .mobile-social-v36 a {
    flex: 0 0 44% !important;
    aspect-ratio: 1 / 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    background: #1f5d7a !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    overflow: hidden !important;
    -webkit-tap-highlight-color: rgba(0,0,0,0) !important;
  }

  .social-linkedin-v36 span {
    display: block !important;
    color: #fff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    font-size: clamp(17px, 5.4vw, 27px) !important;
    line-height: 1 !important;
    letter-spacing: -1px !important;
  }

  .social-whatsapp-v36 svg {
    display: block !important;
    width: 70% !important;
    height: 70% !important;
    color: #fff !important;
    overflow: visible !important;
    pointer-events: none !important;
  }
}


/* V38 — exact approved mobile bottom banner/footer.
   ONLY Products, Careers and Contact Us use this block.
   Desktop is untouched. */
@media (max-width: 767px) {
  .mobile-footer-approved-v38 {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .mobile-footer-approved-img-v38 {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  .mobile-footer-hotspots-v38 {
    position: absolute !important;
    inset: 0 !important;
    z-index: 100 !important;
    pointer-events: none !important;
  }

  .mobile-footer-hotspots-v38 a {
    position: absolute !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  /* Hotspots mapped directly to the approved visible labels/icons. */
  .f-home-v38      { left: 37.7% !important; top: 51.0% !important; width: 7.5% !important; height: 12.5% !important; }
  .f-about-v38     { left: 46.5% !important; top: 51.0% !important; width: 9.5% !important; height: 12.5% !important; }
  .f-products-v38  { left: 57.3% !important; top: 51.0% !important; width: 9.7% !important; height: 12.5% !important; }
  .f-career-v38    { left: 68.8% !important; top: 51.0% !important; width: 8.4% !important; height: 12.5% !important; }
  .f-downloads-v38 { left: 78.5% !important; top: 51.0% !important; width: 13.5% !important; height: 12.5% !important; }

  .f-linkedin-v38  { left: 52.6% !important; top: 71.0% !important; width: 6.8% !important; height: 15.0% !important; }
  .f-whatsapp-v38  { left: 60.9% !important; top: 71.0% !important; width: 6.8% !important; height: 15.0% !important; }
}


/* V39 — mobile footer viewport-fit correction ONLY.
   Keeps the approved V38 footer artwork and interactions unchanged. */
@media (max-width: 767px) {
  .mobile-footer-approved-v38 {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    overflow: hidden !important;
    contain: layout paint !important;
  }

  .mobile-footer-approved-img-v38 {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center top !important;
  }

  .mobile-footer-hotspots-v38 {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }
}


/* V40 — ONLY Careers mobile hero "Submit Your Resume" hotspot correction. */
@media (max-width: 767px) {
  .mobile-page .mobile-hero-wrap .career-resume-hit {
    left: 2.1% !important;
    top: 56.7% !important;
    width: 16.8% !important;
    height: 10.0% !important;
    z-index: 120 !important;
    pointer-events: auto !important;
  }
}


/* V46 — mobile-only final fixes: pinch zoom + identical approved footer fit */
@media (max-width: 767px) {
  html, body {
    touch-action: pan-x pan-y pinch-zoom !important;
  }
  .mobile-page,
  .site,
  .careers-site {
    touch-action: pan-x pan-y pinch-zoom !important;
  }

  .mobile-footer-approved-v38 {
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    overflow: hidden !important;
    contain: none !important;
  }

  .mobile-footer-approved-img-v38 {
    box-sizing: border-box !important;
    display: block !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center top !important;
  }

  .mobile-footer-hotspots-v38 {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
}
