/* Cashbook Finance v2.10.4 — premium header, portal app bar and floating controls */
:root{
  --cb-header-radius:22px;
  --cb-header-height:72px;
  --cb-control-size:50px;
  --cb-ease:cubic-bezier(.2,.75,.25,1);
}

/* ---------- Primary site header ---------- */
header.nav{
  padding:14px clamp(14px,2vw,28px)!important;
  transition:padding .28s var(--cb-ease),transform .28s var(--cb-ease)!important;
}
header.nav .nav-in{
  position:relative!important;
  isolation:isolate;
  width:min(1480px,100%)!important;
  min-height:var(--cb-header-height)!important;
  padding:8px 10px 8px 18px!important;
  gap:14px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:var(--cb-header-radius)!important;
  background:
    radial-gradient(90% 190% at 0 0,rgba(61,155,233,.15),transparent 48%),
    linear-gradient(135deg,rgba(6,25,44,.91),rgba(7,31,54,.84))!important;
  box-shadow:
    0 24px 60px -34px rgba(0,0,0,.78),
    inset 0 1px 0 rgba(255,255,255,.1),
    inset 0 -1px 0 rgba(255,255,255,.025)!important;
  -webkit-backdrop-filter:blur(22px) saturate(160%)!important;
  backdrop-filter:blur(22px) saturate(160%)!important;
  transition:min-height .28s var(--cb-ease),padding .28s var(--cb-ease),background .28s ease,border-color .28s ease,box-shadow .28s ease!important;
}
header.nav .nav-in::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:-1;
  border-radius:inherit;
  padding:1px;
  pointer-events:none;
  background:linear-gradient(110deg,rgba(137,211,255,.54),rgba(255,255,255,.06) 33%,rgba(255,255,255,.06) 68%,rgba(61,155,233,.36));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.72;
}
body.nav-solid header.nav,
body.nav-compact header.nav{padding-top:9px!important;padding-bottom:9px!important}
body.nav-solid header.nav .nav-in,
body.nav-compact header.nav .nav-in{
  min-height:64px!important;
  background:
    radial-gradient(80% 160% at 0 0,rgba(38,155,231,.08),transparent 48%),
    rgba(255,255,255,.91)!important;
  border-color:rgba(196,215,230,.8)!important;
  box-shadow:0 20px 48px -30px rgba(5,34,59,.42),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
html[data-theme="dark"] body.nav-solid header.nav .nav-in,
html[data-theme="dark"] body.nav-compact header.nav .nav-in{
  background:linear-gradient(135deg,rgba(5,22,38,.94),rgba(8,33,56,.9))!important;
  border-color:rgba(121,188,231,.2)!important;
  box-shadow:0 24px 56px -34px rgba(0,0,0,.86),inset 0 1px 0 rgba(255,255,255,.07)!important;
}

header.nav .brand{
  min-width:178px!important;
  display:flex!important;
  align-items:center!important;
  position:relative;
  border-radius:12px;
  transition:transform .25s var(--cb-ease),filter .25s ease!important;
}
header.nav .brand::after{
  content:"";
  position:absolute;
  left:2px;
  right:30px;
  bottom:-7px;
  height:1px;
  background:linear-gradient(90deg,rgba(82,182,241,.8),transparent);
  opacity:0;
  transform:scaleX(.65);
  transform-origin:left;
  transition:opacity .22s ease,transform .25s var(--cb-ease);
}
header.nav .brand:hover{transform:translateY(-1px);filter:drop-shadow(0 7px 14px rgba(54,166,235,.18))}
header.nav .brand:hover::after{opacity:1;transform:scaleX(1)}
header.nav .brand img{height:32px!important;width:auto!important}

header.nav nav.links{
  flex:1 1 auto!important;
  justify-content:center!important;
  gap:2px!important;
  margin:0 4px 0 16px!important;
  padding:4px!important;
  min-width:0!important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:15px;
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
body.nav-solid header.nav nav.links,
body.nav-compact header.nav nav.links{background:rgba(229,240,248,.66);border-color:rgba(182,207,225,.48)}
html[data-theme="dark"] body.nav-solid header.nav nav.links,
html[data-theme="dark"] body.nav-compact header.nav nav.links{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.07)}

header.nav nav.links>a{
  position:relative;
  min-height:38px!important;
  padding:0 10px!important;
  border-radius:11px!important;
  color:rgba(233,244,252,.78)!important;
  font-size:13px!important;
  font-weight:690!important;
  letter-spacing:-.012em!important;
  line-height:1!important;
  white-space:nowrap;
  transition:color .2s ease,background .2s ease,box-shadow .22s ease,transform .22s var(--cb-ease)!important;
}
header.nav nav.links>a::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:5px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#39a8eb,#81d1ff);
  transform:scaleX(0);
  transform-origin:center;
  opacity:0;
  transition:transform .22s var(--cb-ease),opacity .22s ease;
}
header.nav nav.links>a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.075)!important;
  transform:translateY(-1px);
}
header.nav nav.links>a:hover::after{transform:scaleX(.62);opacity:.8}
header.nav nav.links>a[aria-current="page"],
header.nav nav.links>a.is-current{
  color:#fff!important;
  background:linear-gradient(135deg,rgba(0,125,215,.88),rgba(61,165,235,.86))!important;
  box-shadow:0 9px 20px -12px rgba(22,147,226,.9),inset 0 1px 0 rgba(255,255,255,.24)!important;
}
header.nav nav.links>a[aria-current="page"]::after,
header.nav nav.links>a.is-current::after{display:none}
body.nav-solid header.nav nav.links>a,
body.nav-compact header.nav nav.links>a{color:#31536d!important}
body.nav-solid header.nav nav.links>a:hover,
body.nav-compact header.nav nav.links>a:hover{color:#0a3554!important;background:rgba(255,255,255,.82)!important}
body.nav-solid header.nav nav.links>a[aria-current="page"],
body.nav-compact header.nav nav.links>a[aria-current="page"],
body.nav-solid header.nav nav.links>a.is-current,
body.nav-compact header.nav nav.links>a.is-current{color:#fff!important}
html[data-theme="dark"] body.nav-solid header.nav nav.links>a,
html[data-theme="dark"] body.nav-compact header.nav nav.links>a{color:#c4d9e8!important}
html[data-theme="dark"] body.nav-solid header.nav nav.links>a:hover,
html[data-theme="dark"] body.nav-compact header.nav nav.links>a:hover{color:#fff!important;background:rgba(255,255,255,.07)!important}

header.nav .nav-cta{gap:8px!important;margin-left:auto!important}
header.nav .nav-phone{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;padding:0!important;display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.11)!important;border-radius:13px!important;background:rgba(255,255,255,.05)!important;color:#cde8f8!important}
header.nav .nav-phone svg{width:18px;height:18px}
header.nav .nav-phone span{display:none!important}
header.nav .nav-phone:hover{color:#fff!important;background:rgba(255,255,255,.1)!important;border-color:rgba(111,198,248,.34)!important;transform:translateY(-1px)}
body.nav-solid header.nav .nav-phone,
body.nav-compact header.nav .nav-phone{color:#176caa!important;background:#edf6fc!important;border-color:#d0e3f0!important}
html[data-theme="dark"] body.nav-solid header.nav .nav-phone,
html[data-theme="dark"] body.nav-compact header.nav .nav-phone{color:#a9ddfb!important;background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.09)!important}

header.nav .portal-nav-link{
  position:relative;
  height:44px!important;
  min-height:44px!important;
  padding:0 13px!important;
  border-radius:13px!important;
  border:1px solid rgba(101,196,250,.3)!important;
  background:linear-gradient(135deg,rgba(0,120,215,.22),rgba(85,187,245,.08))!important;
  color:#e8f7ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
header.nav .portal-nav-link::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(105deg,transparent 22%,rgba(255,255,255,.16) 48%,transparent 72%);
  transform:translateX(-120%);
  transition:transform .6s var(--cb-ease);
  pointer-events:none;
}
header.nav .portal-nav-link:hover::before{transform:translateX(120%)}
header.nav .portal-nav-link:hover{transform:translateY(-2px)!important;border-color:rgba(121,211,255,.62)!important;background:linear-gradient(135deg,rgba(0,126,220,.36),rgba(85,187,245,.14))!important}
header.nav .portal-status-dot{width:7px!important;height:7px!important;background:#54e0ac!important;box-shadow:0 0 0 4px rgba(84,224,172,.11),0 0 16px rgba(84,224,172,.45)!important}
body.nav-solid header.nav .portal-nav-link,
body.nav-compact header.nav .portal-nav-link{color:#0b588d!important;background:#edf8ff!important;border-color:#c6e3f4!important}
html[data-theme="dark"] body.nav-solid header.nav .portal-nav-link,
html[data-theme="dark"] body.nav-compact header.nav .portal-nav-link{color:#dff4ff!important;background:rgba(0,121,210,.15)!important;border-color:rgba(100,194,245,.25)!important}

header.nav .nav-apply{
  position:relative;
  overflow:hidden;
  height:46px!important;
  min-height:46px!important;
  padding:0 19px!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#087fd1 0%,#2aa7ea 55%,#4ab7ef 100%)!important;
  box-shadow:0 14px 30px -17px rgba(0,137,221,.88),inset 0 1px 0 rgba(255,255,255,.32)!important;
  color:#fff!important;
  font-weight:820!important;
  letter-spacing:-.015em!important;
  transition:transform .22s var(--cb-ease),box-shadow .22s ease,filter .22s ease!important;
}
header.nav .nav-apply::after{content:"→";margin-left:9px;font-size:17px;transition:transform .22s var(--cb-ease)}
header.nav .nav-apply::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.3) 48%,transparent 76%);
  transform:translateX(-130%);
  transition:transform .68s var(--cb-ease);
}
header.nav .nav-apply:hover{transform:translateY(-2px)!important;box-shadow:0 18px 36px -18px rgba(0,137,221,.94),inset 0 1px 0 rgba(255,255,255,.38)!important;filter:saturate(1.08)}
header.nav .nav-apply:hover::before{transform:translateX(130%)}
header.nav .nav-apply:hover::after{transform:translateX(3px)}

header.nav .burger{
  position:relative;
  width:46px!important;height:46px!important;min-width:46px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
header.nav .burger:hover{background:rgba(255,255,255,.13)!important;border-color:rgba(114,203,251,.38)!important;transform:translateY(-1px)}
header.nav .burger i{height:2px!important;border-radius:999px!important;background:currentColor!important;transition:transform .28s var(--cb-ease),top .28s var(--cb-ease),opacity .2s ease!important}
body.nav-solid header.nav .burger,
body.nav-compact header.nav .burger{background:#eff6fb!important;border-color:#d2e2ed!important;color:#174b70!important}
html[data-theme="dark"] body.nav-solid header.nav .burger,
html[data-theme="dark"] body.nav-compact header.nav .burger{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.1)!important;color:#e9f6ff!important}

/* ---------- Mobile navigation sheet ---------- */
@media(max-width:1320px){
  header.nav .nav-phone{display:none!important}
  header.nav nav.links{display:none!important}
  header.nav .burger{display:block!important}
  header.nav .nav-in{gap:10px!important}
}
.mobile-menu{
  padding:104px clamp(18px,5vw,34px) 30px!important;
  gap:5px!important;
  background:
    radial-gradient(70% 45% at 95% 0,rgba(48,165,235,.28),transparent 62%),
    radial-gradient(50% 40% at 0 100%,rgba(0,114,200,.17),transparent 68%),
    linear-gradient(160deg,#061827 0%,#08233d 56%,#092b49 100%)!important;
  -webkit-backdrop-filter:blur(24px)!important;
  backdrop-filter:blur(24px)!important;
}
.mobile-menu::before{
  content:"Menu";
  display:block;
  margin:0 0 13px;
  color:#7dbfe9;
  font-size:11px;
  font-weight:850;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.mobile-menu>a:not(.btn):not(.m-call):not(.portal-mobile-link){
  position:relative;
  min-height:51px!important;
  padding:10px 44px 10px 12px!important;
  border:0!important;
  border-radius:13px!important;
  color:#d7e9f6!important;
  font-size:18px!important;
  font-weight:690!important;
  transition:background .2s ease,color .2s ease,transform .2s var(--cb-ease)!important;
}
.mobile-menu>a:not(.btn):not(.m-call):not(.portal-mobile-link)::after{
  content:"→";
  position:absolute;
  right:15px;
  top:50%;
  transform:translateY(-50%);
  color:#75c9f7;
  font-size:18px;
  opacity:.72;
}
.mobile-menu>a:not(.btn):not(.m-call):not(.portal-mobile-link):hover,
.mobile-menu>a:not(.btn):not(.m-call):not(.portal-mobile-link)[aria-current="page"],
.mobile-menu>a:not(.btn):not(.m-call):not(.portal-mobile-link).is-current{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(28,139,211,.23),rgba(255,255,255,.035))!important;
  transform:translateX(3px);
}
.mobile-menu>a[aria-current="page"]::before,
.mobile-menu>a.is-current::before{
  content:"";
  position:absolute;
  left:0;top:12px;bottom:12px;width:3px;
  border-radius:999px;
  background:linear-gradient(#42b4f0,#88d7ff);
  box-shadow:0 0 16px rgba(70,183,241,.45);
}
.mobile-menu .m-call{
  border:1px solid rgba(126,199,240,.2)!important;
  background:rgba(255,255,255,.055)!important;
  color:#e7f5fd!important;
}
.mobile-menu .mobile-apply{
  border-radius:15px!important;
  box-shadow:0 18px 34px -20px rgba(0,139,224,.85)!important;
}
.mobile-menu .portal-mobile-link{
  border-radius:17px!important;
  background:
    radial-gradient(110% 150% at 0 0,rgba(76,190,248,.23),transparent 48%),
    linear-gradient(135deg,rgba(0,116,204,.31),rgba(255,255,255,.045))!important;
}

/* ---------- Dedicated portal header ---------- */
body[data-page="portal"]>header.nav,
body[data-page="portal"]>.mobile-menu,
body[data-page="portal-success"]>header.nav,
body[data-page="portal-success"]>.mobile-menu{display:none!important}
.portal-appbar{
  position:sticky!important;
  top:0;
  z-index:1300!important;
  border:0!important;
  border-bottom:1px solid rgba(121,199,244,.17)!important;
  background:
    radial-gradient(60% 180% at 0 0,rgba(44,165,236,.17),transparent 52%),
    linear-gradient(135deg,rgba(4,20,35,.97),rgba(7,32,54,.95))!important;
  box-shadow:0 20px 50px -34px rgba(0,0,0,.86),inset 0 -1px 0 rgba(255,255,255,.025)!important;
  -webkit-backdrop-filter:blur(24px) saturate(150%)!important;
  backdrop-filter:blur(24px) saturate(150%)!important;
}
.portal-appbar::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(65,183,245,.72),transparent);
  opacity:.55;
}
.portal-appbar-in{
  max-width:1500px!important;
  min-height:82px!important;
  padding:10px clamp(16px,3vw,38px)!important;
  gap:20px!important;
}
.portal-appbrand{gap:15px!important}
.portal-logo-link{
  width:178px!important;
  min-height:52px!important;
  padding:7px 11px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.045)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 13px 30px -22px rgba(0,0,0,.8)!important;
  transition:transform .22s var(--cb-ease),background .22s ease,border-color .22s ease!important;
}
.portal-logo-link:hover{transform:translateY(-1px);background:rgba(255,255,255,.075)!important;border-color:rgba(113,202,251,.24)!important}
.portal-logo-link img{width:154px!important;height:auto!important}
.portal-appbrand::after{
  content:"";
  width:1px;height:30px;
  background:linear-gradient(transparent,rgba(255,255,255,.18),transparent);
  margin-left:1px;
}
.portal-appname{
  position:relative;
  min-height:46px!important;
  padding:0 15px 0 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  border:1px solid rgba(103,195,247,.23)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,rgba(0,121,211,.19),rgba(255,255,255,.035))!important;
  color:#e5f5ff!important;
  font-size:13px!important;
  font-weight:790!important;
  letter-spacing:-.01em;
}
.portal-appname svg{
  width:30px!important;height:30px!important;padding:6px;
  border-radius:10px;
  color:#fff;
  background:linear-gradient(135deg,#087fd1,#3eafea);
  box-shadow:0 10px 22px -14px rgba(28,157,231,.92),inset 0 1px 0 rgba(255,255,255,.28);
}
.portal-appname::after{
  content:"Secure";
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:0 7px;
  border-radius:999px;
  background:rgba(72,221,167,.1);
  border:1px solid rgba(72,221,167,.2);
  color:#7ee3ba;
  font-size:10px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.portal-appmeta{
  justify-self:center!important;
  color:#91adc1!important;
  font-size:12px!important;
  font-weight:680!important;
  letter-spacing:.04em!important;
  text-transform:uppercase;
}
.portal-appactions{gap:9px!important}
.portal-help-link,
.portal-exit-link{
  min-height:44px!important;
  border-radius:13px!important;
  transition:transform .2s var(--cb-ease),background .2s ease,border-color .2s ease,color .2s ease!important;
}
.portal-help-link{
  padding:0 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.045)!important;
  color:#c8deec!important;
  font-size:13px!important;
  font-weight:700!important;
}
.portal-help-link::before{content:"?";display:grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:50%;background:rgba(91,190,245,.12);color:#88d2fa;font-weight:900}
.portal-help-link:hover{transform:translateY(-1px);background:rgba(255,255,255,.075)!important;border-color:rgba(111,202,249,.22)!important;color:#fff!important}
.portal-exit-link{
  padding:0 14px!important;
  border:1px solid rgba(112,198,245,.23)!important;
  background:linear-gradient(135deg,rgba(0,123,214,.17),rgba(255,255,255,.035))!important;
  color:#d9effb!important;
}
.portal-exit-link:hover{transform:translateY(-1px);background:linear-gradient(135deg,rgba(0,133,225,.27),rgba(255,255,255,.055))!important;border-color:rgba(112,198,245,.42)!important;color:#fff!important}
body[data-page="portal"] .subhero{min-height:calc(100svh - 82px)!important}

/* ---------- Floating utility controls ---------- */
.theme-toggle,
.back-to-top{
  --control-progress:0;
  position:fixed!important;
  top:auto!important;
  bottom:clamp(16px,2vw,24px)!important;
  z-index:1350!important;
  width:var(--cb-control-size)!important;
  min-width:var(--cb-control-size)!important;
  height:var(--cb-control-size)!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  border:0!important;
  border-radius:17px!important;
  color:#eaf7ff!important;
  background:conic-gradient(from 210deg,#2da7e9 calc(var(--control-progress)*1%),rgba(111,193,239,.18) 0)!important;
  box-shadow:0 18px 42px -22px rgba(3,25,44,.72),0 8px 20px -16px rgba(18,137,207,.65)!important;
  -webkit-backdrop-filter:blur(16px) saturate(160%)!important;
  backdrop-filter:blur(16px) saturate(160%)!important;
  transform-origin:center;
  transition:opacity .2s ease,visibility .2s ease,transform .24s var(--cb-ease),box-shadow .24s ease!important;
}
.theme-toggle{left:clamp(16px,2vw,24px)!important;right:auto!important;background:linear-gradient(145deg,#0c3555,#0a263f)!important}
.back-to-top{right:clamp(16px,2vw,24px)!important;left:auto!important}
.theme-toggle::before,
.back-to-top::before{
  content:"";
  position:absolute;
  inset:2px;
  border-radius:15px;
  background:
    radial-gradient(90% 110% at 20% 0,rgba(107,207,255,.18),transparent 52%),
    linear-gradient(145deg,rgba(10,42,68,.98),rgba(5,27,47,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),inset 0 -1px 0 rgba(255,255,255,.025);
  pointer-events:none;
}
.theme-toggle::after,
.back-to-top::after{
  position:absolute;
  bottom:calc(100% + 10px);
  min-width:max-content;
  padding:7px 10px;
  border:1px solid rgba(126,198,239,.17);
  border-radius:9px;
  background:rgba(5,25,43,.94);
  color:#e8f6ff;
  box-shadow:0 12px 28px -18px rgba(0,0,0,.8);
  font-size:11px;
  font-weight:760;
  letter-spacing:.01em;
  opacity:0;
  visibility:hidden;
  transform:translateY(5px);
  transition:opacity .18s ease,visibility .18s ease,transform .18s var(--cb-ease);
  pointer-events:none;
  white-space:nowrap;
}
.theme-toggle::after{content:attr(title);left:0}
.back-to-top::after{content:"Back to top";right:0}
.theme-toggle:hover::after,
.back-to-top:hover::after{opacity:1;visibility:visible;transform:translateY(0)}
.theme-toggle:hover,
.back-to-top:hover{transform:translateY(-4px) scale(1.03)!important;box-shadow:0 24px 48px -22px rgba(3,25,44,.82),0 13px 28px -18px rgba(28,157,229,.82)!important}
.theme-toggle:active,
.back-to-top:active{transform:translateY(-1px) scale(.96)!important}
.theme-toggle:focus-visible,
.back-to-top:focus-visible{outline:3px solid rgba(75,185,244,.36)!important;outline-offset:4px!important}
.theme-toggle .theme-toggle-icon,
.theme-toggle svg,
.back-to-top svg{position:relative!important;z-index:2!important;width:20px!important;height:20px!important}
.theme-toggle .icon-sun,.theme-toggle .icon-moon{filter:drop-shadow(0 4px 7px rgba(0,0,0,.22))}
.back-to-top svg{stroke-width:2.3!important;filter:drop-shadow(0 3px 6px rgba(0,0,0,.2))}
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .back-to-top{color:#f2f9fd!important}
html[data-theme="light"] .theme-toggle .icon-moon{color:#90d5ff}
html[data-theme="dark"] .theme-toggle .icon-sun{color:#ffd36d}

@media(max-width:1440px){
  header.nav .nav-phone{display:none!important}
  header.nav nav.links>a{font-size:12.4px!important;padding-inline:8px!important}
  header.nav .portal-nav-link{padding-inline:11px!important}
  header.nav .nav-apply{padding-inline:15px!important;font-size:13px!important}
}
@media(max-width:760px){
  :root{--cb-control-size:46px}
  header.nav{padding:9px 11px!important}
  body.nav-solid header.nav,body.nav-compact header.nav{padding:7px 11px!important}
  header.nav .nav-in{min-height:62px!important;padding:7px 8px 7px 13px!important;border-radius:18px!important}
  header.nav .brand{min-width:0!important}
  header.nav .brand img{height:28px!important}
  header.nav .portal-nav-link{display:none!important}
  header.nav .nav-apply{display:none!important}
  header.nav .burger{width:46px!important;height:46px!important}
  .mobile-menu{padding-top:92px!important}
  .portal-appbar-in{min-height:70px!important;padding:8px 12px!important;grid-template-columns:minmax(0,1fr) auto!important}
  .portal-logo-link{width:145px!important;min-height:48px!important;padding:6px 9px!important;border-radius:13px!important}
  .portal-logo-link img{width:128px!important}
  .portal-appbrand{gap:8px!important}
  .portal-appbrand::after,.portal-appname,.portal-appmeta,.portal-help-link{display:none!important}
  .portal-exit-link{width:44px!important;height:44px!important;padding:0!important;justify-content:center!important;border-radius:13px!important}
  .portal-exit-link span{display:none!important}
  body[data-page="portal"] .subhero{min-height:calc(100svh - 70px)!important}
  .theme-toggle{left:max(12px,env(safe-area-inset-left))!important}
  .back-to-top{right:max(12px,env(safe-area-inset-right))!important}
  .theme-toggle,.back-to-top{bottom:max(12px,env(safe-area-inset-bottom))!important;border-radius:15px!important}
  .theme-toggle::before,.back-to-top::before{border-radius:13px!important}
  .theme-toggle::after,.back-to-top::after{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  header.nav *,header.nav *::before,header.nav *::after,.portal-appbar *,
  .theme-toggle,.back-to-top{transition-duration:.01ms!important;animation:none!important}
}
/* Keep navigation labels visually consistent; active state provides the route cue. */
header.nav .nav-arrow,.mobile-menu .nav-arrow{display:none!important}

/* ---------- v2.10.5 header geometry, product navigation and appearance-control correction ---------- */
@media(min-width:1321px){
  header.nav{
    padding-inline:clamp(10px,1.25vw,22px)!important;
  }
  header.nav .nav-in{
    width:min(1760px,100%)!important;
    max-width:none!important;
    display:grid!important;
    grid-template-columns:144px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    padding:7px 9px 7px 14px!important;
  }
  header.nav .brand{
    min-width:0!important;
    width:144px!important;
  }
  header.nav .brand img{height:29px!important;max-width:142px!important}
  header.nav nav.links{
    width:100%!important;
    margin:0!important;
    padding:3px 5px!important;
    gap:1px!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  header.nav nav.links>a{
    min-height:38px!important;
    padding-inline:8px!important;
    font-size:12.35px!important;
    flex:0 0 auto!important;
  }
  header.nav nav.links>a.nav-product{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    padding:4px 9px 4px 5px!important;
    border-color:rgba(115,199,248,.1)!important;
  }
  header.nav .nav-product-icon{
    width:29px;
    height:29px;
    flex:0 0 29px;
    display:grid;
    place-items:center;
    border:1px solid rgba(111,202,252,.16);
    border-radius:9px;
    color:#87d4ff;
    background:linear-gradient(145deg,rgba(49,166,232,.18),rgba(255,255,255,.035));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
    transition:color .2s ease,background .2s ease,border-color .2s ease,transform .22s var(--cb-ease);
  }
  header.nav .nav-product-icon svg{width:17px;height:17px}
  header.nav a.nav-product:hover .nav-product-icon,
  header.nav a.nav-product[aria-current="page"] .nav-product-icon,
  header.nav a.nav-product.is-current .nav-product-icon{
    color:#fff;
    border-color:rgba(152,220,255,.35);
    background:linear-gradient(145deg,#148cd5,#44b3ed);
    transform:translateY(-1px);
  }
  body.nav-solid header.nav .nav-product-icon,
  body.nav-compact header.nav .nav-product-icon{
    color:#087fc9;
    border-color:#c8e4f5;
    background:linear-gradient(145deg,#f7fbfe,#e8f5fd);
  }
  body.nav-solid header.nav a.nav-product:hover .nav-product-icon,
  body.nav-compact header.nav a.nav-product:hover .nav-product-icon,
  body.nav-solid header.nav a.nav-product[aria-current="page"] .nav-product-icon,
  body.nav-compact header.nav a.nav-product[aria-current="page"] .nav-product-icon,
  body.nav-solid header.nav a.nav-product.is-current .nav-product-icon,
  body.nav-compact header.nav a.nav-product.is-current .nav-product-icon{color:#fff;border-color:rgba(255,255,255,.45);background:linear-gradient(145deg,#087fce,#42afea)}
  html[data-theme="dark"] body.nav-solid header.nav .nav-product-icon,
  html[data-theme="dark"] body.nav-compact header.nav .nav-product-icon{color:#86d5ff;border-color:rgba(119,202,247,.18);background:rgba(70,174,233,.1)}
  header.nav nav.links>.nav-section-divider{
    align-self:center;
    width:1px;
    height:25px;
    margin:0 8px 0 7px;
    flex:0 0 1px;
    border-radius:999px;
    background:linear-gradient(transparent,rgba(132,203,242,.38),transparent);
    box-shadow:0 0 14px rgba(75,181,238,.12);
  }
  body.nav-solid header.nav nav.links>.nav-section-divider,
  body.nav-compact header.nav nav.links>.nav-section-divider{background:linear-gradient(transparent,rgba(52,111,151,.25),transparent);box-shadow:none}
  html[data-theme="dark"] body.nav-solid header.nav nav.links>.nav-section-divider,
  html[data-theme="dark"] body.nav-compact header.nav nav.links>.nav-section-divider{background:linear-gradient(transparent,rgba(132,203,242,.3),transparent)}

  header.nav .nav-cta{
    min-width:0!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
  }
  header.nav .nav-phone{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;border-radius:12px!important}
  header.nav .portal-nav-link{height:42px!important;min-height:42px!important;padding-inline:11px!important;border-radius:12px!important;font-size:12.5px!important}
  header.nav .portal-nav-link svg{width:18px!important;height:18px!important}
  header.nav .nav-apply{height:42px!important;min-height:42px!important;padding-inline:14px!important;border-radius:12px!important;font-size:12.5px!important}
  header.nav .nav-apply::after{font-size:15px!important;margin-left:7px!important}

  /* Compact search control. Activating it opens a deliberate popover below the header. */
  header.nav .desktop-site-search{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    z-index:20;
  }
  header.nav .desktop-site-search .site-search-form{
    position:absolute!important;
    top:0!important;
    right:0!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.11)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.05)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.055)!important;
    transition:width .24s var(--cb-ease),top .24s var(--cb-ease),padding .24s var(--cb-ease),background .2s ease,border-color .2s ease,box-shadow .2s ease!important;
    cursor:text;
  }
  header.nav .desktop-site-search .site-search-icon{
    position:relative!important;
    inset:auto!important;
    width:18px!important;
    height:18px!important;
    flex:0 0 18px!important;
    margin:0!important;
    color:#b8d9ec!important;
    pointer-events:none;
  }
  header.nav .desktop-site-search .site-search-input{
    width:0!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    opacity:0!important;
    pointer-events:none!important;
    color:#eaf6fd!important;
    transition:width .22s var(--cb-ease),opacity .16s ease,margin .22s var(--cb-ease)!important;
  }
  header.nav .desktop-site-search .site-search-form:focus-within{
    top:calc(100% + 14px)!important;
    width:286px!important;
    padding:0 13px!important;
    justify-content:flex-start!important;
    border-color:rgba(104,198,249,.38)!important;
    background:linear-gradient(145deg,rgba(8,36,59,.98),rgba(5,26,45,.98))!important;
    box-shadow:0 24px 50px -25px rgba(0,0,0,.82),inset 0 1px 0 rgba(255,255,255,.1)!important;
    overflow:visible!important;
  }
  header.nav .desktop-site-search .site-search-form:focus-within .site-search-input{
    width:224px!important;
    margin-left:9px!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  header.nav .desktop-site-search .site-search-results{min-width:286px!important;right:0!important;left:auto!important}
  body.nav-solid header.nav .desktop-site-search .site-search-form,
  body.nav-compact header.nav .desktop-site-search .site-search-form{background:#edf6fc!important;border-color:#d0e3f0!important}
  body.nav-solid header.nav .desktop-site-search .site-search-icon,
  body.nav-compact header.nav .desktop-site-search .site-search-icon{color:#176caa!important}
  body.nav-solid header.nav .desktop-site-search .site-search-form:focus-within,
  body.nav-compact header.nav .desktop-site-search .site-search-form:focus-within{background:rgba(255,255,255,.98)!important;border-color:#a9d6f0!important;box-shadow:0 24px 50px -25px rgba(8,50,80,.38),inset 0 1px 0 #fff!important}
  body.nav-solid header.nav .desktop-site-search .site-search-input,
  body.nav-compact header.nav .desktop-site-search .site-search-input{color:#163b56!important}
  html[data-theme="dark"] body.nav-solid header.nav .desktop-site-search .site-search-form,
  html[data-theme="dark"] body.nav-compact header.nav .desktop-site-search .site-search-form{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.09)!important}
  html[data-theme="dark"] body.nav-solid header.nav .desktop-site-search .site-search-icon,
  html[data-theme="dark"] body.nav-compact header.nav .desktop-site-search .site-search-icon{color:#b8d9ec!important}
  html[data-theme="dark"] body.nav-solid header.nav .desktop-site-search .site-search-form:focus-within,
  html[data-theme="dark"] body.nav-compact header.nav .desktop-site-search .site-search-form:focus-within{background:linear-gradient(145deg,rgba(8,36,59,.98),rgba(5,26,45,.98))!important;border-color:rgba(104,198,249,.38)!important}
  html[data-theme="dark"] body.nav-solid header.nav .desktop-site-search .site-search-input,
  html[data-theme="dark"] body.nav-compact header.nav .desktop-site-search .site-search-input{color:#eaf6fd!important}
}

/* Product icons and group divider in the mobile navigation sheet. */
@media(max-width:1320px){
  .mobile-menu>a.nav-product{
    display:flex!important;
    align-items:center!important;
    gap:11px!important;
    padding-left:8px!important;
  }
  .mobile-menu .nav-product-icon{
    width:36px;
    height:36px;
    flex:0 0 36px;
    display:grid;
    place-items:center;
    border:1px solid rgba(112,202,250,.18);
    border-radius:11px;
    color:#88d5ff;
    background:linear-gradient(145deg,rgba(44,160,227,.2),rgba(255,255,255,.04));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  }
  .mobile-menu .nav-product-icon svg{width:19px;height:19px}
  .mobile-menu>a.nav-product[aria-current="page"] .nav-product-icon,
  .mobile-menu>a.nav-product.is-current .nav-product-icon{color:#fff;background:linear-gradient(145deg,#0d85d0,#45b5ee);border-color:rgba(157,223,255,.36)}
  .mobile-menu>.nav-section-divider{
    display:block;
    width:100%;
    height:1px;
    margin:10px 0 8px;
    background:linear-gradient(90deg,transparent,rgba(116,199,245,.28) 14%,rgba(116,199,245,.28) 86%,transparent);
  }
}

/* Appearance control: force true optical centring in both modes and keep it on-brand. */
.theme-toggle{
  color:#8ed8ff!important;
  background:linear-gradient(145deg,#0d3d62,#082c49)!important;
  border:1px solid rgba(105,197,246,.34)!important;
}
.theme-toggle::before{
  background:radial-gradient(90% 100% at 28% 8%,rgba(91,194,248,.22),transparent 55%),linear-gradient(145deg,rgba(10,46,75,.99),rgba(5,29,49,.99))!important;
}
.theme-toggle .theme-toggle-icon{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
.theme-toggle .theme-toggle-icon svg,
.theme-toggle svg{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:21px!important;
  height:21px!important;
  margin:0!important;
  transform-origin:50% 50%!important;
  color:#8ed8ff!important;
  filter:drop-shadow(0 4px 8px rgba(28,160,228,.22))!important;
}
.theme-toggle .icon-moon{
  opacity:1!important;
  transform:translate(-50%,-50%) rotate(0deg) scale(1)!important;
}
.theme-toggle .icon-sun{
  opacity:0!important;
  transform:translate(-50%,-50%) rotate(-28deg) scale(.72)!important;
}
html[data-theme="dark"] .theme-toggle{
  color:#79cffb!important;
  background:linear-gradient(145deg,#0b4169,#062c49)!important;
  border-color:rgba(111,203,251,.48)!important;
}
html[data-theme="dark"] .theme-toggle::before{
  background:radial-gradient(90% 100% at 28% 8%,rgba(72,183,241,.27),transparent 56%),linear-gradient(145deg,rgba(8,51,83,.99),rgba(4,28,48,.99))!important;
}
html[data-theme="dark"] .theme-toggle .icon-moon{
  opacity:0!important;
  transform:translate(-50%,-50%) rotate(28deg) scale(.72)!important;
}
html[data-theme="dark"] .theme-toggle .icon-sun{
  opacity:1!important;
  color:#69c9f7!important;
  transform:translate(-50%,-50%) rotate(0deg) scale(1)!important;
}
.theme-toggle:hover{border-color:rgba(135,218,255,.72)!important}

@media(max-width:1440px) and (min-width:1321px){
  header.nav .nav-in{grid-template-columns:136px minmax(0,1fr) auto!important;gap:8px!important;padding-left:12px!important}
  header.nav .brand{width:136px!important}
  header.nav .brand img{height:27px!important;max-width:134px!important}
  header.nav nav.links>a{font-size:11.75px!important;padding-inline:6px!important}
  header.nav nav.links>a.nav-product{gap:5px!important;padding-right:7px!important}
  header.nav .nav-product-icon{width:27px;height:27px;flex-basis:27px}
  header.nav nav.links>.nav-section-divider{margin-inline:5px!important}
  header.nav .portal-nav-link{padding-inline:9px!important}
  header.nav .nav-apply{padding-inline:11px!important;font-size:11.8px!important}
}
