/* Shared header / top strip styles (cached by the browser) */
  :root{--w:1180px;}
  /* Wider content on big monitors so there are no empty gaps on the sides */
  @media(min-width:1500px){:root{--w:1360px;}}
  @media(min-width:1800px){:root{--w:1560px;}}
  @media(min-width:2200px){:root{--w:1800px;}}

  /* ===== TOP STRIP ===== */
  .topbar{background:var(--tb-bg);color:var(--tb-fg);font-size:13.5px;font-weight:600;line-height:1.2;position:relative;z-index:61;}
  .topbar-in{max-width:var(--w);margin:0 auto;padding:9px 32px;display:flex;align-items:center;justify-content:space-between;gap:14px;}
  .tb-group{display:flex;align-items:center;gap:22px;min-width:0;}
  .tb-item{display:inline-flex;align-items:center;gap:8px;color:inherit;white-space:nowrap;}
  .tb-item svg{flex:none;width:15px;height:15px;fill:currentColor;}
  .tb-item:hover{opacity:.75;}
  .tb-auth a{display:inline-flex;align-items:center;color:inherit;font-weight:700;padding:3px 0;}
  .tb-auth a + a{margin-left:0;}
  .tb-sep{width:1px;height:14px;background:currentColor;opacity:.35;}
  .tb-auth{display:flex;align-items:center;gap:14px;}
  .tb-auth a:hover{text-decoration:underline;}
  @media(max-width:900px){.topbar-in{padding:8px 20px;} .tb-group{gap:16px;}}
  @media(max-width:600px){
    .topbar{font-size:12px;}
    .topbar-in{padding:7px 14px;gap:10px;}
    .tb-group{gap:12px;}
    .tb-email .tb-txt{display:none;}
    .tb-item svg{width:16px;height:16px;}
    .tb-auth{gap:10px;}
  }
  @media(max-width:360px){.tb-phone .tb-txt{font-size:11px;}}

  /* ===== MAIN HEADER ===== */
  .site-nav{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:0 8px 24px -20px rgba(14,36,34,.5);}
  .sn-in{max-width:var(--w);margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px;}
  .logo{font-weight:800;font-size:32px;letter-spacing:-.02em;display:flex;align-items:center;gap:9px;line-height:1;flex:none;}
  .logo span{color:var(--signal);}
  .logo-icon-img{height:62px;width:auto;max-width:310px;display:block;object-fit:contain;}
  @media(min-width:1600px){.logo-icon-img{height:68px;max-width:340px;}}
  @media(min-width:1400px) and (max-width:1599px){.logo-icon-img{height:56px;max-width:270px;}}
  @media(min-width:1101px) and (max-width:1399px){.logo-icon-img{height:54px;max-width:260px;}}
  @media(min-width:1101px) and (max-width:1199px){.logo-icon-img{height:46px;max-width:225px;}}
  @media(max-width:1100px){.logo-icon-img{height:62px;max-width:300px;}}
  .logo-text-fallback{display:none;}
  @media(max-width:820px){ .logo{font-size:29px;} }
  @media(max-width:640px){ .logo-icon-img{height:56px;max-width:min(260px,56vw);} }
  .nav-links{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0;gap:clamp(14px,1.45vw,26px);}
  .nav-links a,.nav-links-more-btn{font-size:16px;font-weight:600;color:var(--ink);white-space:nowrap;padding:10px 0;}
  .nav-links a:hover,.nav-links a.current,.nav-links-more-btn:hover{color:var(--signal);background:none;}
  .nav-links-more{position:relative;}
  .nav-links-more-btn{display:flex;align-items:center;gap:5px;background:none;border:none;font-family:inherit;cursor:pointer;}
  .nav-links-more-btn .chev{font-size:12px;color:inherit;}
  .nav-links-more-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:6px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 40px -20px rgba(0,0,0,.35);min-width:170px;padding:6px 0;opacity:0;visibility:hidden;transition:.15s;}
  .nav-links-more:hover .nav-links-more-menu,.nav-links-more:focus-within .nav-links-more-menu{opacity:1;visibility:visible;}
  .nav-links-more-menu a{display:block;padding:10px 18px;font-size:14.5px;font-weight:500;color:var(--steel);}
  .nav-links-more-menu a:hover{color:var(--ink);background:rgba(0,0,0,.04);}
  .nav-right{display:flex;align-items:center;gap:12px;flex:none;}
  .sn-cta{display:inline-flex;align-items:center;gap:10px;background:var(--cta-bg);color:var(--cta-fg);padding:14px 26px;font-size:15px;font-weight:800;letter-spacing:.005em;border-radius:999px;border:0;white-space:nowrap;box-shadow:0 12px 26px -12px var(--cta-bg);transition:.2s;}
  .sn-cta .tick{width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.22);display:inline-flex;align-items:center;justify-content:center;flex:none;}
  .sn-cta .tick svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;}
  .sn-cta:hover{transform:translateY(-2px);filter:brightness(.93);box-shadow:0 16px 30px -12px var(--cta-bg);}
  .hamburger{width:48px;height:48px;border:1px solid var(--line);background:var(--panel);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:none;cursor:pointer;padding:0;}
  .hamburger:hover{border-color:var(--ink);background:var(--panel);}
  .hamburger span{width:20px;height:2px;background:var(--ink);display:block;}
  @media(min-width:1101px){.hamburger{display:none;}}
  @media(max-width:1100px){.nav-links{display:none;} .sn-in{padding:12px 20px;min-height:88px;} .nav-right{margin-left:auto;}}
  @media(max-width:640px){.sn-cta{display:none;} .sn-in{padding:10px 16px;min-height:78px;}}
  @media(min-width:1101px) and (max-width:1599px){.sn-in{padding:12px 24px;gap:16px;} .nav-links{gap:clamp(12px,1.3vw,20px);} .nav-links a,.nav-links-more-btn{font-size:15px;} .sn-cta{padding:12px 18px;font-size:14px;gap:8px;} .sn-cta .tick{width:20px;height:20px;}}
  @media(min-width:1600px){.sn-in{gap:28px;}}

  /* ===== MOBILE MENU ===== */
  .nav-overlay{position:fixed;inset:0;background:var(--paper);z-index:90;opacity:0;pointer-events:none;visibility:hidden;transition:.25s;overflow:auto;}
  .nav-overlay.open{opacity:1;pointer-events:auto;visibility:visible;}
  .nav-overlay-top{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--line);}
  .nav-close{width:48px;height:48px;border:1px solid var(--line);background:var(--panel);font-size:18px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink);padding:0;}
  .nav-close:hover{background:var(--panel);color:var(--signal);border-color:var(--ink);}
  .nav-overlay-inner{max-width:720px;margin:0 auto;padding:30px 24px 80px;}
  .nav-list{display:flex;flex-direction:column;}
  .nav-item{border-bottom:1px solid var(--line);}
  .nav-item > a,.nav-group-btn{display:flex;align-items:center;justify-content:space-between;padding:17px 4px;font-size:clamp(19px,3.6vw,25px);font-weight:800;letter-spacing:-.01em;width:100%;background:none;border:none;text-align:left;color:var(--ink);font-family:inherit;border-radius:0;cursor:pointer;}
  .nav-item > a.current{color:var(--signal);}
  .nav-item > a:hover,.nav-group-btn:hover{color:var(--signal);background:none;}
  .chev{font-size:16px;color:var(--steel);transition:.2s;flex:none;}
  .nav-group.open .chev{transform:rotate(180deg);}
  .nav-sub{max-height:0;overflow:hidden;transition:.3s ease;}
  .nav-group.open .nav-sub{max-height:400px;padding-bottom:16px;}
  .nav-sub a{display:block;padding:8px 4px 8px 18px;font-size:15px;color:var(--steel);font-weight:500;border-left:2px solid var(--line);}
  .nav-sub a:hover{color:var(--ink);border-left-color:var(--signal);}
  .nav-overlay-cta{margin-top:30px;display:flex;width:100%;justify-content:center;align-items:center;gap:10px;padding:17px 22px;font-size:16px;font-weight:800;border-radius:12px;background:var(--cta-bg);color:var(--cta-fg);box-shadow:0 12px 26px -12px var(--cta-bg);}
  .nav-overlay-auth{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .nav-overlay-auth a{display:flex;justify-content:center;padding:14px 16px;border-radius:10px;background:#fff;border:1.5px solid #C9D3D0;color:var(--navy);font-weight:700;font-size:14px;}
  .nav-overlay-auth a:hover{background:var(--navy);border-color:var(--navy);color:#fff;}
  .nav-overlay-auth a:only-child{grid-column:1 / -1;}
  .nav-overlay.open .nav-overlay-cta,.nav-overlay.open .nav-overlay-auth{animation:navRise .5s ease both;}
  .nav-overlay.open .nav-overlay-auth{animation-delay:.12s;}
  @keyframes navRise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
