@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--bg-main:#050505;--bg-secondary:#0a0a0a;--bg-tertiary:#121212;--text-primary:#fff;--text-secondary:#a1a1aa;--text-tertiary:#71717a;--accent-light:#38bdf81a;--accent-main:#38bdf8;--accent-hover:#7dd3fc;--grad-start:#38bdf8;--grad-middle:#818cf8;--grad-end:#c084fc;--border-light:#ffffff14;--border-main:#ffffff26;--glass-bg-subtle:#ffffff05;--glass-bg:#ffffff0d;--glass-bg-hover:#ffffff1a;--glass-border-strong:#fff3;--nav-bg:#050505b3;--shadow-sm:0 4px 12px #00000080;--shadow-md:0 12px 32px #000c;--shadow-lg:0 24px 48px #000000e6;--shadow-glow:0 0 20px #38bdf826, 0 0 40px #818cf81a;--radius-sm:.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--radius-full:9999px;--font-heading:"Outfit", system-ui, sans-serif;--font-sans:"Inter", system-ui, sans-serif;--max-w-content:1200px}[data-theme=light]{--bg-main:#fff;--bg-secondary:#f4f4f5;--bg-tertiary:#e4e4e7;--text-primary:#09090b;--text-secondary:#52525b;--text-tertiary:#71717a;--accent-light:#0ea5e91a;--accent-main:#0ea5e9;--accent-hover:#0284c7;--grad-start:#0ea5e9;--grad-middle:#6366f1;--grad-end:#a855f7;--border-light:#00000014;--border-main:#00000026;--glass-bg-subtle:#00000005;--glass-bg:#0000000d;--glass-bg-hover:#00000014;--glass-border-strong:#0003;--nav-bg:#fffc;--shadow-sm:0 4px 12px #0000000d;--shadow-md:0 12px 32px #00000014;--shadow-lg:0 24px 48px #0000001a;--shadow-glow:0 0 20px #0ea5e926, 0 0 40px #6366f11a}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{width:100%;max-width:var(--max-w-content);margin:0 auto;padding:0 2rem}.section{z-index:10;padding:6rem 0;position:relative}.section-bg{background-color:var(--bg-secondary);border-top:1px solid var(--border-main);border-bottom:1px solid var(--border-main)}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.grid-2{grid-template-columns:repeat(2,1fr);gap:2rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:2rem;display:grid}@media (width<=992px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:4rem 0}}.text-gradient{background:linear-gradient(to right, var(--grad-start), var(--grad-middle), var(--grad-end));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn{border-radius:var(--radius-full);font-family:var(--font-heading);justify-content:center;align-items:center;gap:.75rem;padding:.875rem 2rem;font-size:1.125rem;font-weight:600;transition:all .3s;display:inline-flex}.btn-primary{background:var(--text-primary);color:var(--bg-main);transition:background .2s,color .2s,transform .2s,box-shadow .2s;box-shadow:0 0 15px #ffffff1a}.btn-primary:hover{background:var(--text-primary);color:var(--bg-main);transform:translateY(-2px);box-shadow:0 0 25px #fff3}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-main);background:#ffffff0d}.btn-secondary:hover{border-color:var(--border-light);box-shadow:var(--shadow-glow);background:#ffffff1a;transform:translateY(-2px)}.card{border-radius:var(--radius-xl);border:1px solid var(--border-main);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#ffffff05;padding:2.5rem;transition:all .4s}.card:hover{box-shadow:var(--shadow-glow);border-color:var(--border-light);background-color:#ffffff0d;transform:translateY(-5px)}.glass-panel{-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-main);box-shadow:var(--shadow-lg);border-radius:var(--radius-xl);background-color:#ffffff08;padding:2.5rem}.input-field{border-radius:var(--radius-full);border:1px solid var(--border-main);width:100%;color:var(--text-primary);background-color:#ffffff0d;padding:1rem 1.5rem;font-family:inherit;font-size:1.125rem;transition:all .3s}.input-field:focus{border-color:var(--accent-main);background-color:#ffffff14;outline:none;box-shadow:0 0 0 3px #38bdf833}.nav-glass{background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-light);z-index:50;height:5rem;position:sticky;top:0}.nav-link{font-family:var(--font-heading);color:var(--text-secondary);padding:.5rem 1rem;font-size:1.05rem;font-weight:500;transition:color .3s}.nav-link:hover{color:var(--text-primary)}.bg-grid-dark{background-image:linear-gradient(to right, var(--glass-bg) 1px, transparent 1px), linear-gradient(to bottom, var(--glass-bg) 1px, transparent 1px);pointer-events:none;background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 30%,#0000 70%);mask-image:radial-gradient(circle,#000 30%,#0000 70%)}.glow-blob{filter:blur(120px);opacity:.15;pointer-events:none;border-radius:50%;position:absolute}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.typing-cursor{background-color:var(--accent-main);width:3px;margin-left:4px;animation:1s step-end infinite blink-cursor;display:inline-block}@keyframes blink-cursor{50%{opacity:0}}html[data-font-scale=large]{font-size:118%}html[data-font-scale=xlarge]{font-size:135%}html[data-high-contrast=true]{--bg-main:#000!important;--bg-secondary:#0a0a0a!important;--card-bg:#121212!important;--glass-bg:#111!important;--text-primary:#fff!important;--text-secondary:#e2e8f0!important;--text-tertiary:#cbd5e1!important;--accent-main:#facc15!important;--border-main:#facc15!important;--border-light:#fff!important;--shadow-sm:none!important;--shadow-md:none!important;--shadow-lg:0 0 0 2px #facc15!important}html[data-high-contrast=true] .btn-primary{color:#000!important;background:#facc15!important;border:2px solid #fff!important;font-weight:800!important}html[data-high-contrast=true] .btn-secondary{color:#facc15!important;background:#000!important;border:2px solid #facc15!important;font-weight:700!important}html[data-high-contrast=true] .card,html[data-high-contrast=true] .glass-panel{background:#0a0a0a!important;border:2px solid #fff!important}:focus-visible{outline:3px solid var(--accent-main)!important;outline-offset:3px!important}@media (width<=768px){button,.btn,.nav-link,input,select,textarea{touch-action:manipulation;min-height:44px}}@media print{nav,footer,.no-print,.nav-glass,.app-layout>header,.accessibility-toolbar,.toast-container{display:none!important}body,html{color:#111827!important;background:#fff!important;font-size:12pt!important}.print-dossier-card{max-width:100%!important;max-height:none!important;box-shadow:none!important;color:#000!important;background:#fff!important;border:none!important;position:static!important}.print-content{color:#000!important;padding:0!important}}.skip-links-banner{box-shadow:0 10px 25px -5px #0006,0 8px 10px -6px #0000004d}.skip-links-banner.is-focused,.skip-links-banner:focus-within{opacity:1!important;pointer-events:auto!important;top:1rem!important}.skip-link-action:hover,.skip-link-action:focus{outline:2px solid var(--accent-hover,#7dd3fc);outline-offset:2px;transform:translateY(-1px)}[data-theme=light] .skip-links-banner{box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a;color:#0f172a!important;background:#fff!important;border-color:#0284c7!important}[data-theme=light] .skip-link-action{color:#0f172a!important}.back-to-top{z-index:900;border:1px solid var(--border-main);background:var(--bg-tertiary);width:2.75rem;height:2.75rem;color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:1.5rem;left:1.5rem;box-shadow:0 4px 12px #00000040}.back-to-top:hover{border-color:var(--accent-main);color:var(--accent-main)}.back-to-top:focus-visible{outline:2px solid var(--accent-main);outline-offset:2px}@media print{.back-to-top{display:none!important}}
