@import "tailwindcss/base"; @import "tailwindcss/components"; @import "tailwindcss/utilities"; @font-face { font-family: 'Figtree'; src: url('/fonts/Figtree-VariableFont_wght.ttf') format('truetype'); font-weight: 100 900; font-style: normal; font-display: swap; } :root { font-family: 'Figtree', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; line-height: 1.5; font-weight: 400; color: #333333; background-color: #ffffff; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } html, body { height: 100%; margin: 0; padding: 0; scroll-behavior: smooth; } body { min-width: 320px; min-height: 100vh; } #app { display: flex; flex-direction: column; min-height: 100vh; } /* Aspect ratio utilities */ .aspect-w-16 { position: relative; padding-bottom: calc(var(--tw-aspect-h) / var(--tw-aspect-w) * 100%); --tw-aspect-w: 16; } .aspect-h-9 { --tw-aspect-h: 9; } .aspect-w-16 > * { position: absolute; height: 100%; width: 100%; top: 0; right: 0; bottom: 0; left: 0; } /* Animation utilities */ @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .animate-fadeIn { animation: fadeIn 0.5s ease-in-out; } /* Custom container for sections */ .container { width: 100%; max-width: 1280px; margin-left: auto; margin-right: auto; } /* Custom focus styles */ *:focus-visible { outline: 2px solid #3b82f6; outline-offset: 2px; } /* Responsive typography */ @media (max-width: 640px) { h1 { font-size: 2rem !important; } h2 { font-size: 1.5rem !important; } h3 { font-size: 1.25rem !important; } } /* Cookie consent modal styles */ .blur-effect { filter: blur(4px); pointer-events: none; user-select: none; } /* Animation pour la modal de cookies */ @keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } .cookie-modal { animation: slideUp 0.3s ease-out forwards; }