@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";@tailwind base;@tailwind components;@tailwind utilities;@custom-variant dark (&:is(.dark *));:root{--background: 0 0% 98%;--foreground: 220 20% 6%;--card: 0 0% 100%;--card-foreground: 220 20% 6%;--popover: 0 0% 100%;--popover-foreground: 220 20% 6%;--primary: 220 20% 6%;--primary-foreground: 0 0% 98%;--secondary: 220 10% 96%;--secondary-foreground: 220 20% 6%;--muted: 220 10% 96%;--muted-foreground: 220 10% 40%;--accent: 245 58% 51%;--accent-foreground: 0 0% 100%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 100%;--border: 220 10% 90%;--input: 220 10% 96%;--input-background: 0 0% 100%;--ring: 245 58% 51%;--gradient-indigo: 245 58% 51%;--gradient-violet: 280 60% 60%;--gradient-cyan: 190 80% 60%;--gradient-pink: 330 70% 70%;--gradient-orange: 30 90% 65%;--radius: .5rem;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif}@theme inline{ --color-background: hsl(var(--background)); --color-foreground: hsl(var(--foreground)); --color-card: hsl(var(--card)); --color-card-foreground: hsl(var(--card-foreground)); --color-popover: hsl(var(--popover)); --color-popover-foreground: hsl(var(--popover-foreground)); --color-primary: hsl(var(--primary)); --color-primary-foreground: hsl(var(--primary-foreground)); --color-secondary: hsl(var(--secondary)); --color-secondary-foreground: hsl(var(--secondary-foreground)); --color-muted: hsl(var(--muted)); --color-muted-foreground: hsl(var(--muted-foreground)); --color-accent: hsl(var(--accent)); --color-accent-foreground: hsl(var(--accent-foreground)); --color-destructive: hsl(var(--destructive)); --color-destructive-foreground: hsl(var(--destructive-foreground)); --color-border: hsl(var(--border)); --color-input: hsl(var(--input)); --color-input-background: hsl(var(--input-background)); --color-ring: hsl(var(--ring)); --radius-sm: calc(var(--radius) - 2px); --radius-md: var(--radius); --radius-lg: calc(var(--radius) + 2px); --radius-xl: calc(var(--radius) + 4px); }@layer base{*{@apply border-border;}html{font-family:var(--font-sans);scroll-behavior:smooth}body{@apply bg-background text-foreground antialiased;font-family:var(--font-sans);font-weight:400;line-height:1.7}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:600;letter-spacing:-.025em;line-height:1.2;color:hsl(var(--foreground))}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700}h2{font-size:clamp(1.75rem,3vw,2.5rem)}h3{font-size:clamp(1.25rem,2vw,1.5rem)}h4{font-size:1.125rem}p{font-size:1rem;line-height:1.75;color:hsl(var(--muted-foreground))}a{@apply transition-colors duration-200;}::selection{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:hsl(var(--background))}::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:3px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground))}}@layer components{.btn-primary{@apply inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-lg;background:hsl(var(--foreground));color:hsl(var(--background));transition:all .2s ease}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-secondary{@apply inline-flex items-center justify-center px-6 py-3 text-sm font-medium rounded-lg;background:transparent;color:hsl(var(--foreground));border:1px solid hsl(var(--border));transition:all .2s ease}.btn-secondary:hover{border-color:hsl(var(--foreground));background:hsl(var(--secondary))}.section-spacing{@apply py-20 md:py-28 lg:py-32;}.container-narrow{@apply max-w-3xl mx-auto px-6;}.container-wide{@apply max-w-6xl mx-auto px-6;}.container-full{@apply max-w-7xl mx-auto px-6;}.text-label{@apply text-xs font-medium tracking-[.15em] uppercase;color:hsl(var(--muted-foreground))}.text-body{@apply text-base leading-relaxed;color:hsl(var(--muted-foreground))}.text-body-lg{@apply text-lg leading-relaxed;color:hsl(var(--muted-foreground))}.card-institutional{@apply p-6 md:p-8 rounded-xl bg-card border border-border;transition:all .3s ease}.card-institutional:hover{border-color:hsl(var(--accent) / .3);box-shadow:0 4px 20px hsl(var(--accent) / .08)}.gradient-bg{position:relative;overflow:hidden}.gradient-bg:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(ellipse 80% 80% at 50% 0%,hsl(var(--gradient-indigo) / .15) 0%,transparent 50%),radial-gradient(ellipse 60% 60% at 80% 20%,hsl(var(--gradient-violet) / .12) 0%,transparent 50%),radial-gradient(ellipse 70% 70% at 20% 30%,hsl(var(--gradient-cyan) / .1) 0%,transparent 50%),radial-gradient(ellipse 50% 50% at 70% 60%,hsl(var(--gradient-pink) / .08) 0%,transparent 50%);filter:blur(100px);animation:gradientShift 20s ease-in-out infinite;z-index:0}.gradient-bg>*{position:relative;z-index:1}@keyframes gradientShift{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(2%,2%) rotate(1deg)}66%{transform:translate(-2%,1%) rotate(-1deg)}}.gradient-orb{position:absolute;border-radius:50%;filter:blur(120px);opacity:.4;pointer-events:none}.gradient-orb-indigo{background:hsl(var(--gradient-indigo))}.gradient-orb-violet{background:hsl(var(--gradient-violet))}.gradient-orb-cyan{background:hsl(var(--gradient-cyan))}.gradient-orb-pink{background:hsl(var(--gradient-pink))}.gradient-orb-orange{background:hsl(var(--gradient-orange))}}@layer utilities{@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animation-delay-100{animation-delay:.1s}.animation-delay-200{animation-delay:.2s}.animation-delay-300{animation-delay:.3s}.animation-delay-400{animation-delay:.4s}.animation-delay-500{animation-delay:.5s}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
