.homepage{color:var(--foreground);background:var(--background);line-height:1.5}.homepage .container{width:100%;max-width:1160px;margin:0 auto;padding:0 1.25rem}.homepage main{overflow-x:clip}.homepage header{position:sticky;top:0;z-index:70;background:rgba(247,248,250,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle)}.homepage .header-content{height:5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.homepage .logo{width:auto;height:3.25rem}.homepage .desktop-nav{display:none;gap:1.5rem;align-items:center}.homepage .desktop-nav a{color:var(--text-muted);text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s ease}.homepage .desktop-nav a:hover{color:var(--foreground)}.homepage .header-buttons{display:flex;gap:.5rem;align-items:center}.homepage .btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;border-radius:999px;border:1px solid var(--foreground);background:var(--foreground);color:var(--primary-contrast);text-decoration:none;font-weight:600;font-size:.9rem;padding:0 1.1rem;transition:transform .2s ease,opacity .2s ease}.homepage .btn-primary:hover{transform:translateY(-1px);opacity:.92}.homepage .mobile-menu-button{background:none;border:none;color:var(--foreground);display:inline-flex;align-items:center;gap:.35rem;font-weight:600;padding:.45rem .55rem;border-radius:10px}.homepage .mobile-menu-button:hover{background:#eef2f7}.homepage .mobile-menu-overlay{position:fixed;inset:0;background:rgba(15,23,42,.32);z-index:71}.homepage .mobile-menu{position:fixed;top:5.5rem;right:1.1rem;z-index:72;width:min(88vw,280px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 18px 40px rgba(15,23,42,.12);padding:.8rem}.homepage .mobile-nav{display:grid;gap:.55rem}.homepage .menu-item-button{width:100%;border:1px solid var(--border-subtle);border-radius:10px;background:#fafcff;text-align:left;color:#1f2937;text-decoration:none;padding:0}.homepage .menu-item-button a,.homepage .menu-item-button>div{display:block;padding:.8rem .95rem}.homepage .user-menu-container{position:relative}.homepage .user-avatar-button{display:inline-flex;align-items:center;gap:.45rem;background:transparent;border:none;border-radius:999px;padding:.2rem}.homepage .user-avatar-button:hover{background:#edf2f8}.homepage .user-avatar-image,.homepage .user-avatar-placeholder{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-subtle)}.homepage .user-avatar-placeholder{display:grid;place-items:center;background:#dbeafe;color:#1e3a8a;font-size:.82rem;font-weight:700}.homepage .chevron-icon{color:#64748b;transition:transform .2s ease}.homepage .chevron-icon.open{transform:rotate(180deg)}.homepage .user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:248px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 16px 36px rgba(15,23,42,.12);overflow:hidden}.homepage .user-dropdown-header{padding:.9rem;background:#f8fafc}.homepage .user-name{font-size:.88rem;font-weight:700}.homepage .user-email{font-size:.74rem;color:var(--text-muted)}.homepage .user-dropdown-divider{height:1px;background:var(--border-subtle)}.homepage .user-dropdown-nav{display:grid;gap:.2rem;padding:.4rem}.homepage .user-dropdown-item{display:inline-flex;align-items:center;gap:.55rem;color:#334155;text-decoration:none;border:none;background:transparent;width:100%;border-radius:8px;padding:.65rem .7rem;font-size:.85rem;cursor:pointer}.homepage .user-dropdown-item:hover{background:#f1f5f9}.homepage .user-dropdown-item.logout-item{color:#991b1b}.homepage .hero{padding:2.5rem 0 1.8rem}.homepage .hero-main{margin-top:.5rem}.homepage .hero-banner-container{position:relative;border:1px solid var(--border-subtle);background:linear-gradient(180deg,#ffffff,#f8fafc);border-radius:24px;min-height:500px;overflow:hidden}.homepage .hero-banner-slider{position:absolute;inset:0;z-index:0}.homepage .hero-banner-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}.homepage .hero-banner-slide.active{opacity:.16}.homepage .hero-banner-slide img{object-fit:cover}.homepage .hero-content{position:relative;z-index:1;max-width:760px;margin:0 auto;text-align:center;padding:4.8rem 1.5rem 4rem}.homepage .badge{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--border-subtle);background:rgba(255,255,255,.92);color:#334155;border-radius:999px;padding:.35rem .7rem;font-size:.78rem;font-weight:600;margin-bottom:1.15rem}.homepage .hero h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.08;letter-spacing:-.02em;font-weight:750;margin:0 0 1rem}.homepage .hero p{margin:0 auto;max-width:640px;font-size:1.07rem;color:var(--text-muted)}.homepage .hero-buttons{margin-top:1.7rem;display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem}.homepage .btn-lg{min-height:2.85rem;border-radius:999px;padding:0 1.2rem;display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;font-weight:600;border:1px solid var(--border-subtle)}.homepage .btn-primary-lg{background:var(--foreground);border-color:var(--foreground);color:var(--primary-contrast)}.homepage .btn-primary-lg:hover{opacity:.92}.homepage .btn-outline{background:rgba(255,255,255,.92);color:#1f2937}.homepage .btn-outline:hover{background:#ffffff}.homepage .stats{margin-top:1.7rem;border:1px solid var(--border-subtle);background:var(--surface);border-radius:var(--radius-lg);padding:1rem 1.2rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.homepage .stat{text-align:center}.homepage .stat-number{font-size:1.45rem;line-height:1.1;font-weight:750;color:#0f172a}.homepage .stat-label{margin-top:.22rem;font-size:.82rem;color:#64748b}@media (min-width:960px){.homepage .desktop-nav{display:inline-flex}.homepage .mobile-menu,.homepage .mobile-menu-button{display:none}}@media (max-width:959px){.homepage .desktop-nav{display:none}}@media (max-width:768px){.homepage .container{padding:0 1rem}.homepage .header-content{height:4.4rem}.homepage .logo{height:2.7rem}.homepage .hero-banner-container{min-height:450px;border-radius:18px}.homepage .hero-content{padding:3.4rem 1rem 2.8rem}.homepage .stats{grid-template-columns:1fr}}