*, *::before, *::after { box-sizing:border-box; }html, body {max-width:100vw;overflow-x:hidden;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;display:flex;flex-direction:column;}:focus:not(:focus-visible) { outline:none; }:focus-visible {outline:2px solid #4f46e5;outline-offset:2px;border-radius:4px;}h1 { font-size:clamp(1.75rem, 5vw, 4rem); line-height:1.1; }h2 { font-size:clamp(1.5rem, 4vw, 3rem); line-height:1.15; }h3 { font-size:clamp(1.25rem, 3vw, 2rem); line-height:1.2; }h4 { font-size:clamp(1.1rem, 2.5vw, 1.5rem); }p{ font-size:clamp(0.9rem, 2vw, 1.125rem); }img, video, iframe, embed, object {max-width:100%;height:auto;display:block;}img[loading="lazy"] { background:linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);background-size:400% 100%;animation:shimmer 1.5s infinite;}@keyframes shimmer {0% { background-position:100% 0; }100% { background-position:-100% 0; }}.table-responsive {display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:1rem;}table {min-width:100%;border-collapse:collapse;}.table-container {width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:1rem;border-radius:0.75rem;}@media (max-width:767px) {.table-responsive::after {content:'';position:absolute;right:0; top:0; bottom:0;width:32px;background:linear-gradient(to left, rgba(255,255,255,0.8), transparent);pointer-events:none;border-radius:0 1rem 1rem 0;}}input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="tel"], input[type="url"],select, textarea {width:100%;max-width:100%;}input, select, textarea, button {font-size:1rem; }@media (max-width:640px) {input, select, textarea {font-size:16px !important; }}input:focus, textarea:focus, select:focus {outline:none;box-shadow:0 0 0 3px rgba(79, 70, 229, 0.25);}.glass {background:rgba(255, 255, 255, 0.05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255, 255, 255, 0.1);}.dark .glass {background:rgba(15, 23, 42, 0.7);border:1px solid rgba(255, 255, 255, 0.05);}@keyframes blob {0% { transform:translate(0px, 0px) scale(1); }33%{ transform:translate(30px, -50px) scale(1.1); }66%{ transform:translate(-20px, 20px) scale(0.9); }100% { transform:translate(0px, 0px) scale(1); }}.animate-blob { animation:blob 7s infinite; }.animation-delay-2000 { animation-delay:2s; }.animation-delay-4000 { animation-delay:4s; }@keyframes float {0% { transform:translateY(0px); }50%{ transform:translateY(-8px); }100% { transform:translateY(0px); }}.animate-float { animation:float 3s ease-in-out infinite; }.reveal {position:relative;transform:translateY(40px);opacity:0;transition:0.8s all cubic-bezier(0.16, 1, 0.3, 1);}.reveal.active {transform:translateY(0);opacity:1;}@media (prefers-reduced-motion:reduce) {.reveal, .animate-blob, .animate-float {animation:none !important;transform:none !important;opacity:1 !important;transition:none !important;}}.text-gradient {background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;}.hover-lift {transition:transform 0.3s ease, box-shadow 0.3s ease;}.hover-lift:hover {transform:translateY(-4px);box-shadow:0 12px 30px -8px rgba(0, 0, 0, 0.12);}::-webkit-scrollbar { width:6px; height:6px; }::-webkit-scrollbar-track { background:transparent; }::-webkit-scrollbar-thumb {background:#c7d2fe;border-radius:6px;}.dark ::-webkit-scrollbar-thumb { background:#475569; }::-webkit-scrollbar-thumb:hover { background:#818cf8; }.custom-scrollbar::-webkit-scrollbar { width:4px; }#mobile-menu {-webkit-overflow-scrolling:touch;}#mobile-menu a, #mobile-menu button {min-height:44px;display:flex;align-items:center;}.cards-grid {display:grid;grid-template-columns:repeat(1, 1fr);gap:1rem;}@media (min-width:768px){ .cards-grid { grid-template-columns:repeat(2, 1fr); gap:1.5rem; } }@media (min-width:1024px) { .cards-grid { grid-template-columns:repeat(3, 1fr); } }.main-content-layout {flex:1;width:100%;max-width:80rem; margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;}.section-py {padding-top:clamp(3rem, 8vw, 6rem);padding-bottom:clamp(3rem, 8vw, 6rem);}.section-px {padding-left:clamp(1rem, 4vw, 2rem);padding-right:clamp(1rem, 4vw, 2rem);}@media (max-width:640px) {.hero-title { font-size:clamp(2rem, 8vw, 3.5rem) !important; }.hero-sub { font-size:clamp(0.95rem, 4vw, 1.2rem) !important; }}@media (max-width:767px) {.admin-table-wrap {display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}}@media (max-width:640px) {.form-grid {display:block !important;}.form-grid > * {width:100% !important;margin-bottom:1rem;}}button, [role="button"], a.btn, input[type="submit"] {min-height:44px;touch-action:manipulation;}@media print {nav, footer, #mobile-menu, .no-print { display:none !important; }body { background:white !important; color:black !important; }a[href]::after { content:" (" attr(href) ")"; font-size:10px; color:#666; }}.skip-link {position:absolute;top:-100%;left:0;background:#4f46e5;color:white;padding:0.5rem 1rem;z-index:9999;font-weight:bold;border-radius:0 0 0.5rem 0;transition:top 0.2s;}.skip-link:focus { top:0; }@media (max-width:640px) {.internship-card {border-radius:1.5rem !important;padding:1.5rem !important;}}