* { font-family: 'Inter', sans-serif; } html { scroll-behavior: smooth; } .hero-gradient { background: linear-gradient(0deg, rgba(88,40,115,1) 0%, rgba(168,10,110,1) 25%, rgba(174,10,70,1) 35%, rgba(0,0,0,0) 65%, rgba(0,0,0,0) 100%); } .section-headline span { display: inline-block; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.15em; color: #a80a6e; margin-bottom: 0.5rem; } .section-headline { font-size: 2.5rem; font-weight: 700; line-height: 1.15; } @media (min-width: 768px) { .section-headline { font-size: 3rem; } } .charm-card { padding: 1.25rem; border-radius: 0.75rem; transition: all 0.3s ease; cursor: pointer; position: relative; overflow: hidden; } .charm-card::before { content: ''; position: absolute; inset: 0; border-radius: 0.75rem; opacity: 0; transition: opacity 0.3s ease; background: linear-gradient(135deg, rgba(168,10,110,0.08), rgba(88,40,115,0.08)); } .charm-card:hover::before { opacity: 1; } .charm-card:hover { transform: translateY(-3px); box-shadow: 0 12px 40px rgba(88,40,115,0.12); } .charm-card h4 b { font-weight: 700; } .charm-card:hover h4 b { color: #a80a6e; } .nav-link { transition: color 0.2s; } .nav-link:hover { color: #a80a6e; } .btn-primary { background: linear-gradient(135deg, #a80a6e, #882873); color: white; padding: 0.75rem 2rem; border-radius: 9999px; font-weight: 600; transition: all 0.3s; display: inline-block; } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(168,10,110,0.35); } .footer-link { transition: color 0.2s; } .footer-link:hover { color: #e8a0d0; } .scroll-indicator { animation: bounce-down 2s infinite; } @keyframes bounce-down { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(8px); } } .scroll-track { display: flex; gap: 4rem; width: max-content; animation: scroll-left 40s linear infinite; } .scroll-track-right { display: flex; gap: 4rem; width: max-content; animation: scroll-right 40s linear infinite; } @keyframes scroll-left { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } } @keyframes scroll-right { 0% { transform: translateX(-50%); } 100% { transform: translateX(0); } } .scroll-container { overflow: hidden; mask-image: linear-gradient(to right, transparent 0%, black 5%, black 95%, transparent 100%); -webkit-mask-image: linear-gradient(to right, transparent 0%, black 5%, black 95%, transparent 100%); } .team-card { transition: all 0.3s ease; } .team-card:hover { transform: translateY(-6px); } .team-card .team-img { transition: transform 0.5s ease; } .team-card:hover .team-img { transform: scale(1.08); } .about-card { transition: all 0.3s ease; } .about-card:hover { transform: translateY(-6px); box-shadow: 0 12px 40px rgba(88,40,115,0.15); background: white; } .study-card { transition: all 0.3s ease; } .study-card:hover { transform: translateY(-6px); box-shadow: 0 12px 40px rgba(88,40,115,0.15); } .sidebar-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 999; opacity: 0; pointer-events: none; transition: opacity 0.3s ease; } .sidebar-overlay.open { opacity: 1; pointer-events: auto; } .study-sidebar { position: fixed; top: 0; right: -480px; width: 480px; max-width: 100vw; height: 100vh; background: white; z-index: 1000; overflow-y: auto; transition: right 0.35s cubic-bezier(0.4,0,0.2,1); box-shadow: -4px 0 40px rgba(0,0,0,0.12); } .study-sidebar.open { right: 0; } .study-sidebar::-webkit-scrollbar { width: 6px; } .study-sidebar::-webkit-scrollbar-thumb { background: #d0a0c0; border-radius: 3px; } .zebra-overlay { position: absolute; inset: 0; overflow: hidden; pointer-events: none; opacity: 0.06; } .zebra-overlay::before { content: ''; position: absolute; inset: -200px; background: repeating-linear-gradient( 120deg, #a80a6e 0px, #a80a6e 60px, transparent 60px, transparent 180px ); }