:root {
  --bg: #0c1020;
  --bg-2: #121735;
  --fg: #ffffff;
  --brand: #68a0ff;
  --shadow: 0 8px 20px rgba(0,0,0,.15);
  --header-h: 64px;
  --container-max: 1200px;
  --container-pad: clamp(16px, 2vw, 24px);
}
*{
box-sizing:border-box
}html,body{
margin:0;padding:0
}html{
scroll-behavior:smooth
}body{
font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Noto Sans',Arial,sans-serif; color:#0b0f1a; background:#f6f8fc
}.site-header{
background:#344966; color:var(--fg); position:-webkit-sticky; position:sticky; top:0; z-index:1000; box-shadow:var(--shadow)
}.site-header .container{
display:flex; align-items:center; gap:1rem; padding:.6rem 0
}.logo{
display:flex; align-items:center; gap:.6rem; color:var(--fg); text-decoration:none; white-space:nowrap
}.logo-mark{
font-size:1.35rem
}.logo-text{
font-weight:700; letter-spacing:.2px
}.primary-nav{
display:flex; align-items:center; gap:1rem; margin-left:auto
}.nav-toggle{
display:none; background:none; border:0; padding:.4rem; cursor:pointer
}.nav-toggle:focus-visible{
outline:2px solid var(--brand); outline-offset:2px
}.nav-toggle-box{
display:block; width:22px; height:2px; background:var(--fg); margin:4px 0
}.nav-list{
display:flex; align-items:center; list-style:none; padding:0; margin:0; gap:.5rem; flex-wrap:nowrap
}.nav-list a{
display:block; padding:.5rem .75rem; border-radius:.5rem; color:#fff; text-decoration:none; font-weight:500; white-space:nowrap
}.nav-list a:hover{
color:#000;
}.cta-row{
display:flex; align-items:center; gap:.5rem
}.btn{
display:inline-block; padding:.55rem .9rem; border-radius:.6rem; text-decoration:none; font-weight:600; border:1px solid transparent; cursor:pointer
}.btn:focus-visible{
outline:2px solid var(--brand); outline-offset:2px
}.btn-primary{
color:#fff;background:#a163f5;
}.btn-call{
background:#f5edff; border:1px solid #a163f5; color:#a163f5;
}.btn-call:hover{
background:#f5edff; border-color:#8a4de2; color:#8a4de2;
}.section{
scroll-margin-top: calc(var(--header-h) + 12px);
}.more{
position:relative
}.more > button{
background:transparent; border:1px solid rgba(255,255,255,.35); color:var(--fg)
}.more-menu{
position:absolute; right:0; top:calc(100% + .4rem); background:#fff; color:#0b0f1a; border-radius:.6rem; box-shadow:var(--shadow); min-width:180px; padding:.3rem 0; display:none
}.more[aria-expanded="true"] .more-menu{
display:block
}.more-menu a{
display:block; padding:.5rem .75rem; border-radius:0; color:#0b0f1a
}.more-menu a:hover, .more-menu a:focus-visible{
background:#f0f4ff
}@media (max-width: 900px){
.nav-toggle{display:block
}.nav-list {
position:fixed; inset:64px 0 auto 0; background:linear-gradient(0deg,var(--bg-2),var(--bg)); padding:1rem; flex-direction:column; gap:.25rem; max-height:0; overflow:hidden; transition:max-height .25s ease
}.nav-list.is-open {
max-height:70vh; overflow:auto
}.cta-row {
display:none
}}@media (prefers-reduced-motion: reduce){
.nav-list{transition:none
}}.section-anchor{
display:block;height:0;margin:0;padding:0;scroll-margin-top:calc(var(--header-h) + 12px);
}.btn-primary:hover{
background:#8a4de2;
}.site-header{
width: 100%;
}.site-header > .container{
max-width: 72rem;           
  margin-inline: auto;
  padding-inline: 1rem;
}/* === BWV: Nav logo image sizing === */
.logo-mark{
  height: 28px;       /* default on mobile */
  width: auto;
  display: block;
}@media (min-width: 900px){
  .logo-mark {
    height: 80px;     /* bigger on desktop */
  }
}

/* === Compatibility & Responsiveness Layer (non-invasive) === */
html{box-sizing:border-box}
*,*::before,*::after{box-sizing:inherit}

/* Media is fluid by default */
img,svg,video,canvas,iframe{max-width:100%;height:auto}

/* Improve touch behaviour on mobile */
:where(button,[role="button"]){touch-action:manipulation}
a,button{-webkit-tap-highlight-color:rgba(0,0,0,0)}

/* Provide safe full-bleed helpers if used */
.w-100vw,.full-bleed{width:min(100vw,100%)}

/* Add sticky fallback for older WebKit */
.sticky{position:-webkit-sticky;position:sticky}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.01ms!important;animation-iteration-count:1!important;
    transition-duration:0.01ms!important;scroll-behavior:auto!important}
}

@media (max-width: 900px){
  .nav-toggle{display:block}

  .nav-list{
    position: fixed;
    inset: var(--header-h) 0 auto 0;
    z-index: 1100;

    /* force column layout on mobile */
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;

    /* closed state: hidden and no paint */
    max-height: 0;
    overflow: hidden;
    padding: 0;
    background: transparent;
    transition: max-height .25s ease;
  }

  .nav-list.is-open{
    max-height: 70vh;
    overflow: auto;
    padding: 0.75rem 1rem;
    background: linear-gradient(0deg, var(--bg-2), var(--bg));
  }

  /* ensure vertical items with comfy tap targets */
  .nav-list li{ display:block !important; margin:0 !important; }
  .nav-list a{ display:block; padding:.75rem 0; white-space:normal; }

  /* keep CTAs out of the drawer on mobile */
  .cta-row{ display:none !important; }
}

