/* Critical CSS - Above the fold styles */
html{color-scheme: light}
:root{--accent:#fff40c;--dark:#1f1f1f;--white:#ffffff;--muted:#6b6b6b;--transition:all .3s cubic-bezier(.25,.46,.45,.94);--shadow-sm:0 2px 8px rgba(0,0,0,.1);--shadow-md:0 8px 20px rgba(0,0,0,.15);--border-radius:8px;--header-height:84px;--border-color:#e9ecef}*{box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;margin:0;color:var(--dark);background:var(--white);line-height:1.5;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none;transition:var(--transition)}

  /* Header Critical */
  header{border-bottom:1px solid #eee;background:rgba(255,255,255,.95);position:sticky;top:0;z-index:50;backdrop-filter:blur(10px)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.brand{display:flex;align-items:center;gap:12px;cursor:pointer;transition:var(--transition);padding:8px;border-radius:var(--border-radius);user-select:none}.brand img{height:60px;transition:var(--transition)}nav{display:flex;gap:16px;align-items:center}.menu a{padding:8px 12px;border-radius:6px;transition:var(--transition);color:var(--dark);text-decoration:none}.menu a:hover{background:rgba(255,244,12,0.1);transform:translateY(-1px)}.cta-primary{background:var(--dark);color:var(--accent);padding:10px 14px;border-radius:var(--border-radius);font-weight:600;transition:var(--transition);border:2px solid var(--dark);text-decoration:none}.cta-primary:hover{background:var(--accent);color:var(--dark);transform:translateY(-2px)}

  /* Hero Cover Critical */
  .hero-cover{position:relative;height:clamp(320px,60vh,720px);width:100%;padding:0;border-top:none;overflow:hidden;scroll-margin-top:var(--header-height)}.hero-cover video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;opacity:0;transition:opacity .8s ease}.hero-cover video.loaded{opacity:1}.hero-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 6vw;padding-top:calc(env(safe-area-inset-top) + 0px);background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.15) 40%,rgba(0,0,0,.35) 100%)}

  /* Loading Spinner Critical */
  .hero-loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:20px}.spinner-ring{width:60px;height:60px;border:4px solid transparent;border-top:4px solid var(--accent);border-radius:50%;animation:spin 1.2s linear infinite}.spinner-ring:nth-child(2){width:45px;height:45px;border-top-color:var(--dark);animation-delay:-.3s}.spinner-ring:nth-child(3){width:30px;height:30px;border-top-color:var(--accent);animation-delay:-.6s}.spinner-text{color:#fff;font-size:16px;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:1px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.hero-loading-spinner.hidden{opacity:0;visibility:hidden;transition:all .5s ease}

/* Container (scoped to .site to avoid Bootstrap conflicts) */
.site .container{max-width:1200px;margin:0 auto;padding:0 20px}

/* Footer links */
footer a{color:var(--muted);text-decoration:none;transition:var(--transition)}footer a:hover{color:var(--dark)}

/* Performance optimizations */
.rotating-text-item,.team-photo,.hero-loading-spinner{will-change:transform}img.lazy{opacity:0;transition:opacity .3s ease}img.lazy-loaded{opacity:1}img[loading="lazy"]{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}

  /* Mobile Critical */
  @media (max-width:900px){.hero-cover{height:auto}.hero-cover video{position:static;inset:auto;width:100%;height:auto;display:block;object-fit:contain}.brand img{height:64px}.brand>div{display:none}header .menu{display:none}:root{--header-height:90px}}

/* Modal theming with site palette */
.modal-content{border-radius:var(--border-radius-lg, var(--border-radius));box-shadow:var(--shadow-md);border:1px solid var(--border-color, #e9ecef)}
.modal-header{background:var(--dark);color:var(--accent);border-bottom:1px solid rgba(255,255,255,.12)}
.modal-header .btn-close{filter:invert(1) brightness(1.2)}
.modal-title{font-weight:700}
.modal-body{background:var(--white, #ffffff)}

/* Tabs palette */
.modal .nav-tabs{border-bottom:1px solid var(--border-color, #e9ecef)}
.modal .nav-tabs .nav-link{color:var(--muted)}
.modal .nav-tabs .nav-link:hover{color:var(--dark)}
.modal .nav-tabs .nav-link.active{color:var(--dark);font-weight:600;border-color:var(--accent) var(--accent) transparent}

/* Inputs focus */
.modal .form-control:focus{border-color:var(--accent);box-shadow:0 0 0 .2rem rgba(255,244,12,.25)}

/* Buttons inside modal */
.modal .btn-primary{background:var(--dark);border-color:var(--dark);color:var(--accent)}
.modal .btn-primary:hover{background:var(--accent);color:var(--dark);border-color:var(--accent)}
.modal .btn-success{background:var(--accent);border-color:var(--accent);color:var(--dark);font-weight:700}
.modal .btn-success:hover{filter:brightness(.95)}
.modal .btn-warning{background:#ffc107;border-color:#ffc107;color:#1f1f1f}

/* Password eye toggle */
.input-with-toggle{position:relative}
.input-with-toggle input.form-control{padding-right:44px}
.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--muted);padding:6px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer}
.password-toggle:hover{color:var(--dark);background:rgba(0,0,0,.03)}