/* Shared Avals UI primitives. Page-specific styles may extend these classes. */
:root{
  --color-bg:#fff;
  --color-surface:#f5f5f7;
  --color-text:#1d1d1f;
  --color-muted:#86868b;
  --color-accent:#0071e3;
  --color-accent-hover:#0062c7;
  --radius-sm:12px;
  --radius-md:20px;
  --content-width:1200px;
}

*,*::before,*::after{box-sizing:border-box}
body.menu-open{overflow:hidden}
.container{width:min(100% - 48px,var(--content-width));margin-inline:auto}
.section{padding-block:5rem}
.card{background:var(--color-bg);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius-md);padding:2rem}
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-accent);border-radius:999px;background:var(--color-accent);color:#fff;padding:.7rem 1.6rem;font:inherit;font-size:.9rem;font-weight:500;line-height:1.5;text-decoration:none;cursor:pointer;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}
.btn:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,113,227,.3)}
.btn:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
.btn--secondary{background:transparent;color:var(--color-accent)}
.btn--secondary:hover{color:#fff}
:is(a,button,input,textarea,select):focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
.trust-strip{background:#fff;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06)}
.trust-strip .container{display:flex;align-items:center;justify-content:center;min-height:76px}
.trust-item{display:flex;align-items:center;justify-content:center;gap:.65rem;padding:0 2rem;color:var(--color-muted);font-size:.9rem;text-align:center}
.trust-item + .trust-item{border-left:1px solid rgba(0,0,0,.1)}
.trust-item strong{color:var(--color-text);font-weight:600}.trust-item a{color:inherit;text-decoration:none}.trust-item a:hover{color:var(--color-accent)}.trust-mark{color:var(--color-accent);font-size:1.15rem;line-height:1}
body.home .stats-grid{grid-template-columns:repeat(3,1fr)!important;max-width:900px;margin-inline:auto}

@media (max-width:768px){.container{width:min(100% - 32px,var(--content-width))}.section{padding-block:3.5rem}}
@media (max-width:640px){.trust-strip .container{min-height:58px;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:0}.trust-strip .container::-webkit-scrollbar{display:none}.trust-item{flex:0 0 auto;scroll-snap-align:start;padding:.75rem 1rem;font-size:.83rem}.trust-item + .trust-item{border-left:1px solid rgba(0,0,0,.1);border-top:none}.trust-mark{display:none}}
@media (max-width:768px){body.home .stats-grid{grid-template-columns:1fr!important;max-width:none}}

/* Shared mobile and tablet navigation */
@media (min-width:981px){.site-header .logo{display:none}}
.site-header .logo a{display:block;line-height:0}
.site-header .logo img{display:block;width:180px;height:auto}
@media (max-width:980px){
  .site-header{padding:.5rem 0!important}
  .header-inner{position:relative;flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important}
  .site-header .logo{position:absolute;left:50%;transform:translateX(-50%)}
  .site-header .logo img{width:135px}
  .nav-toggle{display:inline-flex!important;width:48px;min-height:48px;align-items:center;justify-content:center;padding:0!important;margin-left:auto;margin-right:-24px!important;background:transparent!important;border:0!important;border-radius:50%!important}
  .nav-toggle .nav-toggle-icon{display:flex!important;flex-direction:column;justify-content:center;gap:4px;width:18px!important;height:auto!important;background:transparent!important}
  .nav-toggle .nav-toggle-icon span{display:block;width:18px!important;height:2px!important;background:currentColor!important;border-radius:2px;transition:transform .3s ease,opacity .3s ease}
  .nav-toggle.open > .nav-toggle-icon{transform:none!important;opacity:1!important}
  .nav-toggle.open .nav-toggle-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .nav-toggle.open .nav-toggle-icon span:nth-child(2){opacity:0}
  .nav-toggle.open .nav-toggle-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .site-header .nav{position:fixed!important;top:0!important;right:-110%!important;left:auto!important;transform:none!important;width:min(84vw,360px)!important;height:100dvh!important;margin:0!important;padding:6rem 1.5rem 2.5rem!important;background:rgba(255,255,255,.97)!important;box-shadow:-20px 0 50px rgba(0,0,0,.12)!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;z-index:1300!important}
  .site-header .nav.open{right:0!important}.site-header .nav>li{width:100%!important;align-self:stretch!important;text-align:left!important}.site-header .nav>li>a{display:block;padding:.9rem 1rem;font-size:1.05rem}.site-header .nav .dd>a{display:flex;justify-content:space-between;align-items:center}.nav .dd::after{display:none}
  .nav .dd-menu{position:static!important;transform:none!important;min-width:0!important;border:none!important;box-shadow:none!important;background:none!important;padding:6px 0 0 14px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;max-height:0;overflow:hidden}.site-header .nav .dd.open .dd-menu{max-height:none!important;overflow:visible!important}.nav .dd-menu a{white-space:normal!important;padding:.6rem .9rem!important}
  .site-header .nav .lang{display:flex!important;justify-content:flex-start!important;align-items:center!important;gap:6px!important;width:100%!important;margin:1rem 0 0!important;padding:0 1rem!important;box-sizing:border-box!important}
  .site-header .nav .lang a{display:grid!important;place-items:center!important;width:30px!important;min-width:30px!important;height:30px!important;padding:0!important;border:1px solid var(--bg-secondary)!important;border-radius:6px!important;line-height:1!important}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
