*{margin:0;padding:0;box-sizing:border-box}
:root{--primary-color:var(--ab-rouge);--secondary-color:#1a1a1a;--accent-color:#ffffff;--dark-bg:#1a1a1a;--light-bg:#f8f8f8;--text-dark:#1a1a1a;--text-light:#555555;--border-color:#e0e0e0;--success-color:var(--ab-rouge-fonce);--spacing-unit:1rem}
html{scroll-behavior:smooth}
body{font-family:var(--ab-police);line-height:1.6;color:var(--text-dark);background-color:#ffffff}
.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-unit)}
.navbar{background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a);color:white;padding:1rem 0;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(0, 0, 0, 0.3)}
.nav-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-unit);display:flex;justify-content:space-between;align-items:center}
.logo .logo-titre{font-size:1.8rem;font-weight:bold;display:flex;align-items:center;gap:0.5rem}
.nav-menu{display:flex;list-style:none;gap:2rem;align-items:center}
.nav-menu a{color:white;text-decoration:none;font-weight:500;transition:color 0.3s, border-bottom 0.3s;padding-bottom:0.5rem;border-bottom:2px solid transparent}
.nav-menu a:hover,.nav-menu a.active{color:#ffffff;border-bottom-color:#ffffff}
.hamburger{display:none;flex-direction:column;cursor:pointer}
.hamburger span{width:25px;height:3px;background-color:white;margin:5px 0;border-radius:2px;transition:0.3s}
.hero{background:linear-gradient(135deg, #1a1a1a, #2d2d2d);color:white;padding:100px var(--spacing-unit);text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 320"><path fill="rgba(255,255,255,0.1)" d="M0,96L48,112C96,128,192,160,288,160C384,160,480,128,576,122.7C672,117,768,139,864,144C960,149,1056,139,1152,133.3C1248,128,1344,128,1392,128L1440,128L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z"></path></svg>') no-repeat bottom;background-size:cover;opacity:0.1}
.hero-content{position:relative;z-index:2}
.hero h1{font-size:3rem;margin-bottom:1rem;font-weight:bold;text-shadow:2px 2px 4px rgba(0, 0, 0, 0.3)}
.hero p{font-size:1.3rem;margin-bottom:2rem;opacity:0.95}
.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 28px;border-radius:5px;text-decoration:none;font-weight:600;font-size:1rem;transition:all 0.3s;cursor:pointer;border:none}
.btn-primary{background-color:var(--ab-rouge);color:white}
.btn-primary:hover{background-color:#c41e3a;transform:translateY(-2px);box-shadow:0 5px 15px rgba(211, 47, 47, 0.4)}
.btn-secondary{background-color:#1a1a1a;color:white}
.btn-secondary:hover{background-color:var(--ab-rouge);transform:translateY(-2px);box-shadow:0 5px 15px rgba(211, 47, 47, 0.4)}
.features{padding:60px var(--spacing-unit);background-color:#f8f8f8}
.features h2{text-align:center;font-size:2.2rem;margin-bottom:3rem;color:var(--ab-rouge)}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:2rem}
.feature-card{background:white;padding:2rem;border-radius:8px;text-align:center;box-shadow:0 4px 6px rgba(0, 0, 0, 0.1);transition:transform 0.3s, box-shadow 0.3s}
.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0, 0, 0, 0.15)}
.feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--ab-rouge)}
.feature-card p{color:var(--text-light);line-height:1.8}
.page-header{background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a);color:white;padding:50px var(--spacing-unit);text-align:center}
.page-header h1{font-size:2.5rem;margin-bottom:1rem}
.page-header p{font-size:1.1rem;opacity:0.95}
.team-section{padding:60px var(--spacing-unit)}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem}
.team-grid > .team-member{width:100%;max-width:470px;justify-self:center}
.team-member{background:white;border:1px solid var(--border-color);border-radius:8px;padding:2rem;text-align:center;transition:transform 0.3s, box-shadow 0.3s}
.team-member:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0, 0, 0, 0.15)}
.member-avatar{width:120px;height:120px;margin:0 auto 1rem;border-radius:50%;object-fit:cover;display:block}
.team-member h3{font-size:1.4rem;color:var(--ab-rouge);margin-bottom:0.5rem}
.team-member .role{color:#1a1a1a;font-weight:600;margin-bottom:1rem;font-size:1.1rem}
.team-member .description{color:var(--text-light);line-height:1.8}
.flights-section{padding:60px var(--spacing-unit);background-color:#f8f8f8}
.flight-card{background:white;border-left:5px solid var(--ab-rouge);border-radius:8px;padding:2rem;box-shadow:0 4px 6px rgba(0, 0, 0, 0.1);transition:transform 0.3s, box-shadow 0.3s}
.flight-card.completed{border-left-color:#c41e3a}
.flight-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0, 0, 0, 0.15)}
.flight-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:2px solid var(--border-color);padding-bottom:1rem}
.flight-header h3{font-size:1.6rem;color:#1a1a1a}
.status{display:inline-block;padding:5px 12px;border-radius:20px;font-size:0.9rem;font-weight:600;background-color:var(--ab-rouge);color:white}
.status.success{background-color:var(--success-color)}
.flight-details{margin:1.5rem 0}
.flight-details p{margin-bottom:0.8rem;color:#1a1a1a;font-size:0.95rem}
.flight-details strong{color:var(--ab-rouge)}
.flight-description{color:var(--text-light);font-style:italic;line-height:1.8}
.rockets-section{padding:60px var(--spacing-unit)}
.rockets-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(350px, 1fr));gap:2.5rem}
.rocket-card{background:white;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:transform 0.3s, box-shadow 0.3s}
.rocket-card:hover{transform:translateY(-8px);box-shadow:0 15px 30px rgba(0, 0, 0, 0.15)}
.rocket-image{display:block;width:100%;height:250px;object-fit:cover;object-position:center;background:linear-gradient(135deg, #f8f8f8, #e8e8e8)}
.rocket-card h3{font-size:1.7rem;color:var(--ab-rouge);padding:1.5rem 1.5rem 0.5rem}
.rocket-status{color:#1a1a1a;font-weight:600;padding:0 1.5rem;font-size:0.95rem}
.rocket-specs{padding:1.5rem;background-color:#f8f8f8;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}
.rocket-specs p{margin-bottom:0.6rem;font-size:0.95rem;color:#1a1a1a}
.rocket-specs strong{color:var(--ab-rouge)}
.rocket-description{padding:1.5rem;color:var(--text-light);line-height:1.8;font-size:0.95rem}
.rocket-features{padding:0 1.5rem 1.5rem;display:flex;flex-wrap:wrap;gap:0.8rem}
.feature{background-color:var(--ab-rouge);color:white;padding:6px 12px;border-radius:20px;font-size:0.85rem;font-weight:500}
.footer{background:linear-gradient(135deg, #1a1a1a, #2d2d2d);color:white;text-align:center;padding:2rem var(--spacing-unit);margin-top:4rem}
.footer p{margin:0.5rem 0;opacity:0.9}
.footer p:first-child{font-weight:600;margin-bottom:1rem}
@media (max-width: 768px){
  .nav-menu{display:none;position:absolute;top:60px;left:0;right:0;background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a);flex-direction:column;width:100%;gap:0;padding:1rem 0}
  .nav-menu.active{display:flex}
  .nav-menu li{width:100%}
  .nav-menu a{display:block;padding:1rem;border-bottom:1px solid rgba(255, 255, 255, 0.1)}
  .hamburger{display:flex}
  .hamburger.active span:nth-child(1){transform:rotate(-45deg) translate(-5px, 6px)}
  .hamburger.active span:nth-child(2){opacity:0}
  .hamburger.active span:nth-child(3){transform:rotate(45deg) translate(-5px, -6px)}
  .hero h1{font-size:2rem}
  .hero p{font-size:1rem}
  .hero-buttons{flex-direction:column;align-items:stretch}
  .btn{width:100%;text-align:center}
  .page-header h1{font-size:2rem}
  .features-grid,.team-grid,.rockets-grid{grid-template-columns:1fr}
  .flight-header{flex-direction:column;align-items:flex-start;gap:0.8rem}
}
@media (max-width: 480px){
  .hero{padding:60px var(--spacing-unit)}
  .hero h1{font-size:1.5rem}
  .logo .logo-titre{font-size:1.4rem}
  .page-header h1{font-size:1.5rem}
  .rocket-card h3,.flight-header h3{font-size:1.3rem}
}
.btn-video{display:inline-block;margin-top:1rem;padding:10px 20px;background-color:var(--ab-rouge);color:white;border:none;border-radius:5px;font-weight:600;cursor:pointer;transition:all 0.3s;font-size:0.95rem}
.btn-video:hover{background-color:#c41e3a;transform:translateY(-2px);box-shadow:0 5px 15px rgba(211, 47, 47, 0.4)}
.modal{display:none;position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.7);animation:fadeIn 0.3s}
.modal.show{display:flex;justify-content:center;align-items:center;padding:2rem}
@keyframes fadeIn{from{opacity: 0}to{opacity: 1}}
.modal-content{background-color:white;border-radius:10px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px rgba(0, 0, 0, 0.3);animation:slideIn 0.3s}
@keyframes slideIn{from{transform: translateY(-50px);opacity: 0}to{transform: translateY(0);opacity: 1}}
.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid var(--ab-rouge);background-color:#f8f8f8}
.modal-header h2{margin:0;color:#1a1a1a;font-size:1.8rem}
.close-btn{background:none;border:none;font-size:2rem;color:var(--ab-rouge);cursor:pointer;transition:color 0.3s;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}
.close-btn:hover{color:#c41e3a}
.video-container{padding:2rem;background-color:#1a1a1a}
.video-container video{width:100%;height:auto;border-radius:5px}
.video-container img{width:100%;max-height:400px;object-fit:contain;border-radius:5px}
.media-tabs{display:flex;justify-content:center;padding:1rem;background-color:#f8f8f8;border-bottom:1px solid #e0e0e0}
.tab-btn{padding:10px 20px;border:2px solid var(--ab-rouge);background-color:white;color:var(--ab-rouge);border-radius:5px;cursor:pointer;font-weight:600;transition:all 0.3s;margin:0 5px}
.tab-btn:hover{background-color:#f8f8f8}
.tab-btn.active{background-color:var(--ab-rouge);color:white}
.pov-selector{padding:1.5rem;border-bottom:1px solid #e0e0e0}
.pov-selector p{margin:0 0 1rem 0;color:#1a1a1a;font-weight:600}
.pov-buttons{display:flex;gap:1rem;flex-wrap:wrap}
.pov-btn{padding:8px 16px;border:2px solid var(--ab-rouge);background-color:white;color:var(--ab-rouge);border-radius:5px;cursor:pointer;font-weight:600;transition:all 0.3s}
.pov-btn:hover{background-color:#f8f8f8}
.pov-btn.active{background-color:var(--ab-rouge);color:white}
.video-info{padding:1.5rem;background-color:#f8f8f8}
.video-info p{margin:0;color:#555555;line-height:1.8}
@media (max-width: 768px){
  .modal.show{padding:1rem}
  .modal-content{max-height:95vh;border-radius:8px}
  .modal-header{flex-direction:column;align-items:flex-start;gap:1rem}
  .modal-header h2{font-size:1.5rem}
  .close-btn{align-self:flex-end}
  .video-container{padding:1rem}
  .pov-buttons{gap:0.5rem}
  .pov-btn{padding:6px 12px;font-size:0.9rem}
}
.btn-photos{display:inline-block;margin-top:1rem;padding:10px 20px;background-color:var(--ab-rouge);color:white;border:none;border-radius:5px;font-weight:600;cursor:pointer;transition:all 0.3s;font-size:0.95rem}
.btn-photos:hover{background-color:#c41e3a;transform:translateY(-2px);box-shadow:0 5px 15px rgba(211, 47, 47, 0.4)}
.photo-viewer{padding:2rem;background-color:#1a1a1a;text-align:center}
.photo-display{position:relative;max-width:800px;margin:0 auto 1rem;background-color:#000;border-radius:8px;overflow:hidden}
.photo-display img{width:100%;height:auto;display:block;max-height:500px;object-fit:contain}
.photo-counter{position:absolute;top:1rem;right:1rem;background-color:rgba(0, 0, 0, 0.7);color:white;padding:8px 12px;border-radius:5px;font-weight:600;font-size:0.9rem}
.photo-controls{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}
.nav-btn{padding:10px 20px;background-color:var(--ab-rouge);color:white;border:none;border-radius:5px;cursor:pointer;font-weight:600;transition:all 0.3s;font-size:1rem}
.nav-btn:hover{background-color:#c41e3a;transform:translateY(-2px)}
.nav-btn:disabled{background-color:#999;cursor:not-allowed;transform:none}
.photo-thumbnails{padding:1.5rem;border-bottom:1px solid #e0e0e0;background-color:white}
.photo-thumbnails p{margin:0 0 1rem 0;color:#1a1a1a;font-weight:600}
.thumbnails-container{display:flex;gap:1rem;overflow-x:auto;padding:0.5rem 0}
.thumbnail{flex-shrink:0;width:80px;height:80px;cursor:pointer;border:3px solid transparent;border-radius:5px;overflow:hidden;transition:all 0.3s;background-color:#f8f8f8}
.thumbnail img{width:100%;height:100%;object-fit:cover}
.thumbnail:hover{border-color:var(--ab-rouge);transform:scale(1.05)}
.thumbnail.active{border-color:var(--ab-rouge);box-shadow:0 0 10px rgba(211, 47, 47, 0.5)}
@media (max-width: 768px){
  .photo-display img{max-height:300px}
  .photo-controls{flex-direction:column;gap:0.5rem}
  .nav-btn{width:100%}
  .thumbnails-container{gap:0.5rem}
  .thumbnail{width:60px;height:60px}
}
@media (max-width: 480px){
  .photo-display img{max-height:200px}
  .thumbnail{width:50px;height:50px}
  .photo-counter{font-size:0.8rem;padding:6px 10px}
}
.cgu-section{padding:60px var(--spacing-unit);background-color:#fff}
.cgu-content{max-width:900px;margin:0 auto;line-height:1.8;color:var(--text-color)}
.cgu-content h2{font-size:1.6rem;color:var(--ab-rouge);margin-top:2rem;margin-bottom:1rem;border-bottom:2px solid var(--ab-rouge);padding-bottom:0.5rem}
.cgu-content h2:first-child{margin-top:0}
.cgu-content p{margin-bottom:1rem;text-align:justify}
.cgu-content ul{margin-left:2rem;margin-bottom:1rem}
.cgu-content li{margin-bottom:0.5rem;color:var(--text-light)}
.cgu-content a{color:var(--ab-rouge);text-decoration:none;transition:color 0.3s}
.cgu-content a:hover{text-decoration:underline}
.footer-link{color:var(--ab-rouge) !important;text-decoration:none;transition:color 0.3s}
.footer-link:hover{text-decoration:underline}
.frequentation-choix [hidden],.frequentation-choix[hidden]{display:none !important}
.cgu-content h3.cgu-sous-titre{font-size:1.2rem;color:var(--secondary-color);margin:1.75rem 0 0.75rem}
.frequentation-choix{margin:1rem 0 1.75rem;padding:1rem 1.25rem;border:1px solid var(--border-color);border-left:4px solid var(--primary-color);border-radius:6px;background-color:var(--light-bg)}
.cgu-content .frequentation-choix p{margin-bottom:0.85rem;text-align:left}
.portfolio-hero{background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a);color:white;padding:4rem 0;text-align:center}
.portfolio-section{padding:3rem var(--spacing-unit);background:var(--light-bg)}
.portfolio-section h2{color:var(--primary-color);text-align:center;margin-bottom:2rem;font-size:2rem}
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem;max-width:1200px;margin:0 auto}
.portfolio-card{background:white;padding:1.5rem;border-radius:8px;box-shadow:0 2px 10px rgba(0, 0, 0, 0.1);transition:transform 0.3s, box-shadow 0.3s}
.portfolio-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0, 0, 0, 0.15)}
.portfolio-card h3{color:var(--primary-color);margin-bottom:1rem}
@font-face{font-family: 'Orbitron';font-style: normal;font-weight: 700;font-display: swap;src: url('../fonts/orbitron-v35-latin-variable.woff2') format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family: 'Orbitron';font-style: normal;font-weight: 900;font-display: swap;src: url('../fonts/orbitron-v35-latin-variable.woff2') format('woff2');unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--rc-night:var(--ab-nuit);--rc-night-2:var(--ab-nuit-2);--rc-metal:var(--ab-metal);--rc-metal-light:var(--ab-metal-clair);--rc-red:var(--ab-rouge);--rc-red-bright:var(--ab-rouge-vif);--rc-gold:var(--ab-or);--rc-display:var(--ab-police-titre)}
.rc-starfield{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;pointer-events:none;will-change:opacity;background-image:radial-gradient(1.6px 1.6px at 12% 22%, rgba(255, 255, 255, 0.9), transparent), radial-gradient(1.4px 1.4px at 28% 68%, rgba(255, 255, 255, 0.7), transparent), radial-gradient(2px 2px at 45% 15%, rgba(255, 255, 255, 0.85), transparent), radial-gradient(1.3px 1.3px at 62% 48%, rgba(255, 255, 255, 0.75), transparent), radial-gradient(1.8px 1.8px at 78% 28%, rgba(255, 255, 255, 0.9), transparent), radial-gradient(1.2px 1.2px at 88% 72%, rgba(255, 255, 255, 0.7), transparent), radial-gradient(1.5px 1.5px at 8% 82%, rgba(255, 255, 255, 0.8), transparent), radial-gradient(1.3px 1.3px at 55% 88%, rgba(255, 255, 255, 0.65), transparent), radial-gradient(1.6px 1.6px at 35% 40%, rgba(255, 200, 200, 0.7), transparent), radial-gradient(1.4px 1.4px at 70% 62%, rgba(255, 255, 255, 0.6), transparent);animation:rc-twinkle 4s ease-in-out infinite alternate}
@keyframes rc-twinkle{from{opacity: 0.45}to{opacity: 1}}
.rc-badge{display:inline-block;padding:8px 18px;margin-bottom:1.5rem;border:1px solid rgba(255, 255, 255, 0.25);border-radius:30px;background-color:rgba(255, 255, 255, 0.08);font-size:0.9rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase}
.rc-title{font-family:var(--rc-display);font-size:3.2rem;line-height:1.15;font-weight:700;margin-bottom:1.5rem;text-shadow:0 4px 20px rgba(0, 0, 0, 0.55)}
.rc-title-accent{color:var(--rc-red-bright);text-shadow:0 0 25px rgba(255, 59, 48, 0.55)}
.rc-section-intro{text-align:center;color:var(--text-light);font-size:1.1rem;margin-bottom:3rem}
.rc-cta{position:relative;overflow:hidden;padding:80px var(--spacing-unit);text-align:center;color:white;background:radial-gradient(circle at 50% 50%, rgba(211, 47, 47, 0.55), transparent 65%), linear-gradient(135deg, var(--rc-night), #2a0f14)}
.rc-cta-content{position:relative;z-index:2}
.rc-cta-kicker{font-size:1rem;text-transform:uppercase;letter-spacing:0.25em;color:var(--rc-metal-light);margin-bottom:1rem}
.rc-cta-shout{font-family:var(--rc-display);font-size:4.5rem;font-weight:700;line-height:1.05;color:var(--rc-red-bright);text-shadow:0 0 30px rgba(255, 59, 48, 0.7), 0 6px 18px rgba(0, 0, 0, 0.6);animation:rc-pulse 1.8s ease-in-out infinite alternate;will-change:transform}
@keyframes rc-pulse{from{transform: scale(1)}to{transform: scale(1.04)}}
.rc-cta-sub{margin-top:1.5rem;font-size:1.15rem;color:var(--rc-metal-light)}
.rc-page .footer a{color:var(--ab-rouge-lien);text-decoration:none}
.rc-page .footer a:hover{text-decoration:underline}
@media (max-width: 768px){
  .rc-title{font-size:2rem}
  .rc-cta-shout{font-size:2.6rem}
}
@media (max-width: 480px){
  .rc-title{font-size:1.6rem}
  .rc-badge{font-size:0.78rem;padding:6px 14px}
  .rc-cta-shout{font-size:2rem}
  .rc-cta-kicker{letter-spacing:0.15em;font-size:0.85rem}
}
@media (prefers-reduced-motion: reduce){
  .rc-starfield,.rc-cta-shout{animation:none;will-change:auto}
}
.rc-page .footer{margin-top:0}
.rcv-eyebrow{font-size:0.9rem;font-weight:700;text-transform:uppercase;letter-spacing:0.22em;color:var(--rc-metal);margin-bottom:0.75rem}
.rcv-share-btn{display:inline-flex;align-items:center;gap:0.6rem;padding:12px 24px;border:none;border-radius:6px;background-color:var(--secondary-color);color:white;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:transform 0.3s, box-shadow 0.3s, background-color 0.3s}
.rcv-share-btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0, 0, 0, 0.25)}
.rcv-share-fb{background-color:#1877f2}
.rcv-share-tw{background-color:#000000}
.rcv-share-copy{background-color:var(--rc-red)}
.rcv-copy-feedback{min-height:1.5rem;margin-top:1rem;text-align:center;font-weight:600;color:var(--rc-red);opacity:0;transition:opacity 0.3s}
.rcv-copy-feedback.rcv-copy-visible{opacity:1}
@media (max-width: 768px){
  .rcv-share-btn{flex:1 1 100%;justify-content:center}
}
.rl-hero{position:relative;overflow:hidden;color:white;text-align:center;padding:90px var(--spacing-unit) 80px;background:radial-gradient(circle at 50% 0%, rgba(211, 47, 47, 0.5), transparent 60%), radial-gradient(circle at 15% 85%, rgba(56, 78, 160, 0.4), transparent 55%), linear-gradient(135deg, var(--rc-night), var(--rc-night-2))}
.rl-hero-content{position:relative;z-index:2}
.rl-badge{display:inline-flex;align-items:center;gap:0.6rem}
.rl-dot{width:10px;height:10px;border-radius:50%;background-color:var(--rc-metal);flex-shrink:0}
.rl-badge[data-etat="direct"]{border-color:rgba(255, 59, 48, 0.6);background-color:rgba(255, 59, 48, 0.18)}
.rl-badge[data-etat="direct"] .rl-dot{background-color:var(--rc-red-bright);box-shadow:0 0 0 0 rgba(255, 59, 48, 0.7);animation:rl-pulse 1.6s ease-out infinite}
.rl-badge[data-etat="termine"] .rl-dot{background-color:var(--rc-gold)}
@keyframes rl-pulse{to{box-shadow: 0 0 0 12px rgba(255, 59, 48, 0)}}
.rl-title{font-size:3rem;margin-bottom:1rem}
.rl-title span{display:block}
.rl-subtitle{max-width:640px;margin:0 auto 2.5rem;font-size:1.25rem;color:var(--rc-metal-light)}
.rl-countdown{margin-bottom:2.5rem}
.rl-countdown-label{font-size:0.9rem;text-transform:uppercase;letter-spacing:0.22em;color:var(--rc-metal);margin-bottom:1rem}
.rl-clock{display:flex;justify-content:center;align-items:flex-start;gap:0.5rem}
.rl-clock-unit{min-width:88px;padding:0.85rem 0.5rem;border:1px solid rgba(255, 255, 255, 0.15);border-radius:12px;background-color:rgba(255, 255, 255, 0.06)}
.rl-clock-unit span{display:block;font-family:var(--rc-display);font-size:2.4rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.rl-clock-unit em{display:block;margin-top:0.35rem;font-style:normal;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.15em;color:var(--rc-metal)}
.rl-clock-sep{font-family:var(--rc-display);font-size:2rem;line-height:1;padding-top:0.85rem;color:var(--rc-metal)}
.rl-t0{margin-top:1rem;font-size:0.95rem;color:var(--rc-metal-light)}
.rl-t0:first-letter{text-transform:uppercase}
.rl-live-section{padding:70px var(--spacing-unit);text-align:center;background:radial-gradient(circle at 80% 10%, rgba(56, 78, 160, 0.25), transparent 55%), linear-gradient(180deg, #0d1330, var(--ab-nuit));color:white}
.rl-live-title{font-family:var(--rc-display);font-size:2rem;font-weight:700;margin-bottom:2rem}
.rl-player{max-width:960px;margin:0 auto}
.rl-stage{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:16px;border:1px solid rgba(255, 255, 255, 0.12);background-color:#05070f;box-shadow:0 24px 60px rgba(0, 0, 0, 0.55)}
.rl-frame,.rl-frame iframe,.rl-frame video,.rl-facade,.rl-offline{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%}
.rl-frame iframe,.rl-frame video{display:block;border:0;background-color:#000;object-fit:contain}
.rl-stage [hidden]{display:none}
.rl-facade{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.75rem;padding:1rem;border:0;cursor:pointer;color:white;font-family:inherit;background:radial-gradient(circle at 50% 45%, rgba(211, 47, 47, 0.35), transparent 60%), linear-gradient(135deg, var(--ab-nuit), #1b2350)}
.rl-facade-glow{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 50%, rgba(255, 59, 48, 0.22), transparent 55%);opacity:0;transition:opacity 0.3s}
.rl-facade:hover .rl-facade-glow,.rl-facade:focus-visible .rl-facade-glow{opacity:1}
.rl-play-ring{position:relative;display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background-color:var(--rc-red);box-shadow:0 0 40px rgba(255, 59, 48, 0.55)}
.rl-play-ring::after{content:'';position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;inset:-8px;border:2px solid rgba(255, 59, 48, 0.5);border-radius:50%;animation:rl-ring 2s ease-out infinite}
@keyframes rl-ring{from{transform: scale(1);opacity: 0.8}to{transform: scale(1.35);opacity: 0}}
.rl-play-icon{font-size:2.4rem;line-height:1}
.rl-facade-label{font-family:var(--rc-display);font-size:1.4rem;font-weight:700}
.rl-facade-note{font-size:0.9rem;color:var(--rc-metal-light)}
.rl-offline{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.6rem;padding:2rem 1.5rem;text-align:center;background:linear-gradient(135deg, var(--ab-nuit), #161f42)}
.rl-offline-icon{font-size:2.6rem}
.rl-offline h3{font-family:var(--rc-display);font-size:1.3rem}
.rl-offline p{max-width:520px;color:var(--rc-metal-light);font-size:0.98rem}
.rl-player-status{margin-top:1.25rem;font-weight:700;color:var(--rc-metal-light)}
.rl-message{max-width:760px;margin:1.5rem auto 0;padding:1rem 1.25rem;border-left:4px solid var(--rc-gold);border-radius:8px;background-color:rgba(245, 182, 66, 0.12);text-align:left;color:#ffe9bd}
.rl-player-note,.rl-noscript{max-width:760px;margin:1.75rem auto 0;font-size:0.95rem;color:var(--rc-metal)}
.rl-noscript a{color:var(--ab-rouge-lien)}
.rl-follow{padding:70px var(--spacing-unit);background-color:var(--light-bg)}
.rl-follow h2{font-family:var(--rc-display);font-size:2rem;font-weight:700;text-align:center;color:var(--rc-night);margin-bottom:0.75rem}
.rl-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(270px, 1fr));gap:2rem}
.rl-card{display:block;padding:2rem 1.75rem;border:1px solid var(--border-color);border-top:4px solid var(--rc-red);border-radius:12px;background-color:white;text-decoration:none;color:var(--text-dark);transition:transform 0.3s, box-shadow 0.3s}
.rl-card:hover,.rl-card:focus-visible{transform:translateY(-6px);box-shadow:0 16px 32px rgba(11, 16, 38, 0.15)}
.rl-card-icon{display:block;font-size:2.2rem;margin-bottom:0.75rem}
.rl-card h3{font-size:1.3rem;color:var(--rc-red);margin-bottom:0.5rem}
.rl-card p{color:var(--text-light);line-height:1.8;margin-bottom:1rem}
.rl-card-link{font-weight:700;color:var(--rc-red)}
.rl-share{margin-top:3.5rem;text-align:center}
.rl-share h3{font-family:var(--rc-display);font-size:1.3rem;color:var(--rc-night);margin-bottom:1.25rem}
.rl-share-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
@media (max-width: 900px){
  .rl-title{font-size:2.2rem}
  .rl-subtitle{font-size:1.1rem}
  .rl-clock-unit{min-width:68px;padding:0.7rem 0.4rem}
  .rl-clock-unit span{font-size:1.9rem}
}
@media (max-width: 480px){
  .rl-hero{padding:60px var(--spacing-unit) 55px}
  .rl-title{font-size:1.75rem}
  .rl-clock-sep{display:none}
  .rl-clock{gap:0.4rem}
  .rl-clock-unit{min-width:0;flex:1 1 0}
  .rl-clock-unit span{font-size:1.5rem}
  .rl-clock-unit em{font-size:0.65rem;letter-spacing:0.08em}
  .rl-stage{border-radius:10px}
  .rl-play-ring{width:68px;height:68px}
  .rl-play-icon{font-size:1.8rem}
  .rl-facade-label{font-size:1.1rem}
  .rl-live-title,.rl-follow h2{font-size:1.5rem}
}
@media (prefers-reduced-motion: reduce){
  .rl-badge[data-etat="direct"] .rl-dot,.rl-play-ring::after{animation:none}
}
body.dx-page{background-color:var(--rc-night);color:var(--rc-metal-light)}
.dx-page .footer{margin-top:0}
.dx-page .footer a{color:var(--ab-rouge-lien)}
.dx-hero{position:relative;overflow:hidden;padding:80px var(--spacing-unit) 70px;text-align:center;color:white;background:radial-gradient(circle at 50% 0%, rgba(211, 47, 47, 0.5), transparent 60%), radial-gradient(circle at 15% 85%, rgba(56, 78, 160, 0.4), transparent 55%), linear-gradient(135deg, var(--rc-night), var(--rc-night-2))}
.dx-hero-content{position:relative;z-index:2}
.dx-title{font-family:var(--rc-display);font-size:3.4rem;font-weight:700;line-height:1.1;color:white;text-shadow:0 0 30px rgba(255, 59, 48, 0.45)}
.dx-subtitle{max-width:62ch;margin:1rem auto 0;font-size:1.15rem;color:var(--rc-metal-light)}
.dx-figures{display:grid;grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));gap:1.5rem;max-width:800px;margin:2.75rem auto 0}
.dx-figure{display:flex;flex-direction:column;gap:0.15rem}
.dx-figure-value{font-family:var(--rc-display);font-size:2.1rem;font-weight:700;line-height:1.1;color:var(--rc-red-bright);font-variant-numeric:tabular-nums}
.dx-figure-unit{font-size:0.95rem;font-weight:400;color:var(--rc-metal-light)}
.dx-figure-label{font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--rc-metal)}
.dx-hero .hero-buttons{margin-top:2.75rem}
.dx-section{padding:70px var(--spacing-unit);border-top:1px solid rgba(199, 206, 219, 0.14)}
.dx-section-title{font-family:var(--rc-display);font-size:2rem;color:var(--rc-red-bright);margin-bottom:0.75rem}
.dx-section-intro{max-width:78ch;color:var(--rc-metal-light);margin-bottom:2rem}
.dx-section a{color:var(--ab-rouge-lien)}
.dx-video-stage{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:16px;border:1px solid rgba(255, 255, 255, 0.12);background-color:#05070f;box-shadow:0 24px 60px rgba(0, 0, 0, 0.55)}
.dx-video-stage video{width:100%;height:100%;display:block;background-color:#000;object-fit:contain}
.dx-video-stage [hidden]{display:none}
.dx-video-fallback{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.7rem;padding:2rem 1.5rem;text-align:center;color:var(--rc-metal-light);background:linear-gradient(135deg, var(--rc-night), var(--rc-night-2))}
.dx-video-fallback-icon{font-size:2.6rem}
.dx-video-fallback h3{font-family:var(--rc-display);font-size:1.1rem;color:white}
.dx-video-fallback p{max-width:52ch;font-size:0.94rem}
.dx-video-picker{display:flex;flex-wrap:wrap;gap:0.6rem;margin-top:1.25rem}
.dx-video-btn{padding:0.55rem 1.1rem;border:1px solid rgba(199, 206, 219, 0.25);border-radius:999px;background:transparent;color:var(--rc-metal-light);font-family:inherit;font-size:0.92rem;cursor:pointer;transition:border-color 0.2s, background 0.2s, color 0.2s}
.dx-video-btn:hover{color:white;border-color:var(--rc-red-bright)}
.dx-video-btn.active{color:white;background-color:var(--rc-red);border-color:var(--rc-red)}
.dx-video-caption{margin-top:1.25rem;max-width:78ch;color:var(--rc-metal-light)}
.dx-video-caption strong{color:white}
.dx-timeline{list-style:none;max-width:760px;margin:0;padding:0;border-left:2px solid rgba(199, 206, 219, 0.2)}
.dx-timeline li{position:relative;padding:0 0 1.6rem 1.6rem}
.dx-timeline li::before{content:"";position:absolute;left:-6px;top:0.5rem;width:10px;height:10px;border-radius:50%;background-color:var(--rc-red-bright)}
.dx-timeline li:last-child{padding-bottom:0}
.dx-timeline-t{display:block;font-family:var(--rc-display);font-size:0.8rem;color:var(--rc-gold);font-variant-numeric:tabular-nums}
.dx-timeline-label{display:block;font-weight:600;color:white}
.dx-timeline p{margin-top:0.2rem;font-size:0.94rem;color:var(--rc-metal-light)}
.dx-tools{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.dx-tools-right{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}
.dx-zoom-state{font-size:0.82rem;color:var(--rc-metal);font-variant-numeric:tabular-nums}
.dx-btn-ghost{display:inline-block;border:1px solid rgba(199, 206, 219, 0.25);border-radius:6px;padding:0.45rem 0.9rem;background:transparent;color:var(--rc-metal-light);font-family:inherit;font-size:0.85rem;text-decoration:none;cursor:pointer;transition:border-color 0.2s, background 0.2s, opacity 0.2s}
.dx-btn-ghost:hover:not(:disabled){border-color:#4dd0e1;background:rgba(77, 208, 225, 0.08)}
.dx-btn-ghost:disabled{opacity:0.4;cursor:default}
.dx-links{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:1.5rem;margin-top:2.5rem}
.dx-link-card{display:block;padding:1.6rem 1.5rem;border:1px solid rgba(199, 206, 219, 0.14);border-top:3px solid var(--rc-red);border-radius:12px;background-color:var(--rc-night-2);text-decoration:none;color:var(--rc-metal-light);transition:transform 0.3s, box-shadow 0.3s}
.dx-link-card:hover,.dx-link-card:focus-visible{transform:translateY(-5px);box-shadow:0 16px 32px rgba(0, 0, 0, 0.45)}
.dx-link-card h3{font-family:var(--rc-display);font-size:1.1rem;color:white;margin-bottom:0.5rem}
.dx-link-card p{font-size:0.94rem;margin-bottom:0.75rem}
.dx-link-card span{font-weight:700;color:var(--ab-rouge-lien)}
.dx-page .message{border-radius:8px;padding:1rem 1.15rem;margin-bottom:1.5rem;border:1px solid rgba(199, 206, 219, 0.14);background:var(--rc-night-2);font-size:0.95rem}
.dx-page .message.erreur{border-color:rgba(255, 59, 48, 0.5);background:rgba(211, 47, 47, 0.14)}
.dx-page .message code{font-family:Consolas, 'Courier New', monospace;font-size:0.88em;background:rgba(0, 0, 0, 0.3);padding:0.1em 0.4em;border-radius:4px}
.dx-page .tuiles{display:grid;grid-template-columns:repeat(auto-fit, minmax(190px, 1fr));gap:0.9rem;margin-bottom:1.5rem}
.dx-page .tuile{background:var(--rc-night-2);border:1px solid rgba(199, 206, 219, 0.14);border-top:2px solid var(--rc-red);border-radius:10px;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:0.15rem}
.dx-page .tuile-alerte{border-top-color:var(--rc-gold)}
.dx-page .tuile-label{font-family:var(--rc-display);font-size:0.62rem;color:var(--rc-metal);line-height:1.4}
.dx-page .tuile-valeur{font-family:var(--rc-display);font-size:1.75rem;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums;color:white;display:flex;align-items:baseline;gap:0.28rem}
.dx-page .tuile-unite{font-size:0.85rem;font-weight:400;color:var(--rc-metal)}
.dx-page .tuile-detail{font-size:0.78rem;color:var(--rc-metal)}
.dx-page .tuile-alerte .tuile-detail{color:var(--rc-gold)}
.dx-page .avertissements{background:rgba(245, 182, 66, 0.08);border:1px solid rgba(245, 182, 66, 0.3);border-radius:10px;padding:1.1rem 1.3rem;margin-bottom:1.5rem}
.dx-page .avertissements h3{font-family:var(--rc-display);font-size:0.75rem;color:var(--rc-gold);margin-bottom:0.6rem}
.dx-page .avertissements ul{margin:0;padding-left:1.2rem}
.dx-page .avertissements li{font-size:0.9rem;color:var(--rc-metal-light);margin-bottom:0.4rem}
.dx-page .avertissements li:last-child{margin-bottom:0}
.dx-page .aide-graphiques{font-size:0.86rem;color:var(--rc-metal);margin-bottom:0.9rem;max-width:78ch}
.dx-page .legende-reperes{display:flex;flex-wrap:wrap;gap:1.1rem;margin-bottom:1.1rem;font-size:0.82rem;color:var(--rc-metal-light)}
.dx-page .repere-item{display:inline-flex;align-items:center;gap:0.4rem}
.dx-page .repere-trait{display:inline-block;width:2px;height:0.85em;background-image:linear-gradient(currentColor 50%, transparent 0);background-size:2px 5px}
.dx-page .repere-t{color:var(--rc-metal);font-variant-numeric:tabular-nums}
.dx-page .carte-graphique{background:var(--rc-night-2);border:1px solid rgba(199, 206, 219, 0.14);border-radius:12px;padding:1.1rem 1.2rem 1.2rem;margin-bottom:1.1rem}
.dx-page .carte-graphique header{display:flex;align-items:baseline;justify-content:space-between;gap:0.75rem 1.25rem;flex-wrap:wrap;margin-bottom:0.6rem}
.dx-page .carte-graphique h3{font-family:var(--rc-display);font-size:0.95rem;font-weight:700;color:white}
.dx-page .grille-graphiques{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr));gap:1.1rem}
.dx-page .grille-graphiques .carte-graphique{margin-bottom:0}
.dx-page .zone-canvas{position:relative;height:210px}
.dx-page .zone-canvas-haute{height:300px}
.dx-page .zone-canvas canvas{width:100%;height:100%;display:block;cursor:crosshair;touch-action:pan-y}
.dx-page .note-graphique{margin-top:0.7rem;font-size:0.8rem;color:var(--rc-metal);line-height:1.5;max-width:76ch}
.dx-page .legende{display:flex;flex-wrap:wrap;gap:0.35rem 0.9rem}
.dx-page .legende-item{display:inline-flex;align-items:center;gap:0.4rem;background:none;border:none;padding:0.15rem 0.2rem;border-radius:4px;color:var(--rc-metal-light);font-family:inherit;font-size:0.8rem;cursor:pointer;transition:opacity 0.15s}
.dx-page .legende-item:hover{color:white}
.dx-page .legende-item.masquee{opacity:0.38}
.dx-page .legende-pastille{width:10px;height:10px;border-radius:2px;flex-shrink:0}
.dx-page .legende-valeur{font-variant-numeric:tabular-nums;color:white;min-width:6.5ch;text-align:right}
.dx-page .legende-item.masquee .legende-valeur{color:var(--rc-metal)}
.dx-page .legende-valeur.sans-valeur{color:rgba(138, 148, 166, 0.5)}
.dx-page .dx-video-btn:focus-visible,.dx-page .dx-btn-ghost:focus-visible,.dx-page .legende-item:focus-visible{outline:2px solid #4dd0e1;outline-offset:2px}
.flight-card .btn-video + .btn-video{margin-left:0.6rem}
a.btn-video{text-decoration:none}
@media (max-width: 768px){
  .dx-title{font-size:2.2rem}
  .dx-section-title{font-size:1.5rem}
  .dx-page .zone-canvas{height:190px}
  .dx-page .zone-canvas-haute{height:230px}
  .dx-page .tuile-valeur{font-size:1.45rem}
  .flight-card .btn-video + .btn-video{margin-left:0}
}
html.i18n-attente body{visibility:hidden}
.visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}
.nav-menu{margin-left:auto}
.nav-menu a{white-space:nowrap}
.lang-switcher{position:relative;flex-shrink:0;margin-left:1.5rem}
.lang-switcher-toggle{display:inline-flex;align-items:center;gap:0.45rem;padding:0.35rem 0.7rem;font:inherit;font-size:0.9rem;font-weight:600;letter-spacing:0.03em;color:white;background:rgba(255, 255, 255, 0.1);border:1px solid rgba(255, 255, 255, 0.45);border-radius:999px;cursor:pointer;transition:background 0.2s, border-color 0.2s}
.lang-switcher-toggle:hover,.lang-switcher-toggle[aria-expanded="true"]{background:rgba(255, 255, 255, 0.22);border-color:white}
.lang-switcher-toggle:focus-visible{outline:2px solid white;outline-offset:2px}
.lang-switcher-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;transition:transform 0.2s}
.lang-switcher-toggle[aria-expanded="true"] .lang-switcher-caret{transform:rotate(180deg)}
.lang-switcher-list{position:absolute;top:calc(100% + 0.5rem);right:0;min-width:11rem;margin:0;padding:0.35rem;list-style:none;background:white;border-radius:10px;box-shadow:0 12px 30px rgba(0, 0, 0, 0.28);z-index:1100}
.lang-switcher-list[hidden]{display:none}
.lang-option{display:flex;align-items:center;gap:0.65rem;padding:0.55rem 0.7rem;color:var(--text-dark);font-weight:500;text-decoration:none;border-radius:6px}
.lang-option:hover,.lang-option:focus-visible{color:var(--ab-rouge);background:#fdecec;outline:none;box-shadow:inset 0 0 0 2px var(--ab-rouge)}
.lang-option:hover{box-shadow:none}
.lang-option[aria-current="true"]{color:var(--ab-rouge);font-weight:700}
.lang-option-check{margin-left:auto;visibility:hidden}
.lang-option[aria-current="true"] .lang-option-check{visibility:visible}
.lang-flag{display:inline-block;flex-shrink:0;width:20px;height:14px;border-radius:2px;background-position:center;background-size:cover;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.18)}
.lang-flag-fr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Cpath fill='%23002395' d='M0 0h1v2H0z'/%3E%3Cpath fill='%23fff' d='M1 0h1v2H1z'/%3E%3Cpath fill='%23ed2939' d='M2 0h1v2H2z'/%3E%3C/svg%3E")}
.lang-flag-en{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3CclipPath id='t'%3E%3Cpath d='M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z'/%3E%3C/clipPath%3E%3Cpath fill='%23012169' d='M0,0 v30 h60 v-30 z'/%3E%3Cpath stroke='%23fff' stroke-width='6' d='M0,0 L60,30 M60,0 L0,30'/%3E%3Cpath stroke='%23C8102E' stroke-width='4' clip-path='url(%23t)' d='M0,0 L60,30 M60,0 L0,30'/%3E%3Cpath stroke='%23fff' stroke-width='10' d='M30,0 v30 M0,15 h60'/%3E%3Cpath stroke='%23C8102E' stroke-width='6' d='M30,0 v30 M0,15 h60'/%3E%3C/svg%3E")}
.lang-flag-pl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 5'%3E%3Cpath fill='%23fff' d='M0 0h8v2.5H0z'/%3E%3Cpath fill='%23dc143c' d='M0 2.5h8V5H0z'/%3E%3C/svg%3E")}
.nav-menu a.nav-vote{display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 1rem;background:rgba(255, 255, 255, 0.12);border:1.5px solid rgba(255, 255, 255, 0.85);border-radius:999px;font-weight:600;transition:background 0.2s, color 0.2s, border-color 0.2s}
.nav-menu a.nav-vote:hover,.nav-menu a.nav-vote:focus-visible{color:var(--ab-rouge);background:white;border-color:white}
.btn-vote{padding:10px 26px;color:white;background:transparent;border:2px solid rgba(255, 255, 255, 0.85)}
.btn-vote:hover,.btn-vote:focus-visible{color:var(--ab-rouge);background:white;border-color:white;transform:translateY(-2px);box-shadow:0 5px 15px rgba(255, 255, 255, 0.2)}
.team-member .role-secondary{margin-top:-0.6rem;font-size:0.95rem;font-weight:500;color:var(--text-light)}
.member-avatar--vide{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a);color:white;font-size:2.6rem;font-weight:700}
.team-member .member-links{display:flex;flex-wrap:wrap;justify-content:center;gap:0.4rem 1rem;margin-top:1rem}
.nav-menu a.nav-join{display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 1rem;color:var(--ab-rouge);background:white;border:1.5px solid white;border-radius:999px;font-weight:600;transition:background 0.2s, color 0.2s}
.nav-menu a.nav-join:hover,.nav-menu a.nav-join:focus-visible{color:white;background:transparent}
@media (max-width: 1024px){
  .nav-menu a.nav-join{display:flex;justify-content:center;margin:0.75rem 1rem 0.25rem;padding:0.75rem 1rem}
}
@media (max-width: 1180px) and (min-width: 1025px){
  .logo .logo-titre{font-size:1.5rem}
  .nav-menu{gap:1.1rem}
  .nav-menu a{font-size:0.92rem}
  .lang-switcher{margin-left:1rem}
}
@media (max-width: 1024px){
  .nav-menu{display:none;position:absolute;top:60px;left:0;right:0;background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a);flex-direction:column;width:100%;gap:0;padding:1rem 0}
  .nav-menu.active{display:flex}
  .nav-menu li{width:100%}
  .nav-menu a{display:block;padding:1rem;border-bottom:1px solid rgba(255, 255, 255, 0.1)}
  .hamburger{display:flex}
  .hamburger.active span:nth-child(1){transform:rotate(-45deg) translate(-5px, 6px)}
  .hamburger.active span:nth-child(2){opacity:0}
  .hamburger.active span:nth-child(3){transform:rotate(45deg) translate(-5px, -6px)}
  .hamburger:focus-visible{outline:2px solid white;outline-offset:4px}
  .lang-switcher{margin-left:auto;margin-right:0.9rem}
  .nav-menu a.nav-vote{display:flex;justify-content:center;margin:0.75rem 1rem 0.25rem;padding:0.75rem 1rem;border:1.5px solid white;border-radius:999px}
}
@media (max-width: 768px){
  .lang-switcher-toggle{padding:0.3rem 0.55rem}
}
@media (max-width: 360px){
  .lang-switcher-caret{display:none}
}
.frequentation-avis{position:fixed;z-index:1050;left:1rem;bottom:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:0.6rem 1rem;max-width:min(32rem, calc(100vw - 2rem));padding:0.85rem 1rem;border:1px solid var(--border-color);border-left:4px solid var(--primary-color);border-radius:8px;background-color:#ffffff;color:var(--text-dark);box-shadow:0 8px 30px rgba(0, 0, 0, 0.25);font-size:0.92rem;line-height:1.45;text-align:left}
.frequentation-avis[hidden],.frequentation-avis [hidden]{display:none !important}
.frequentation-avis__texte{flex:1 1 14rem;margin:0}
.frequentation-avis__texte a{color:var(--primary-color)}
.frequentation-avis__boutons{display:flex;gap:0.5rem;margin-left:auto}
.frequentation-avis .btn{padding:8px 18px;font-size:0.9rem}
@media (max-width: 600px){
  .frequentation-avis{left:0.5rem;right:0.5rem;bottom:0.5rem;max-width:none}
}
@media print{
  .frequentation-avis{display:none !important}
}
.logo .logo-titre{white-space:nowrap}
@media (min-width: 1181px){
  .logo .logo-titre{font-size:1.6rem}
  .nav-menu{gap:1.1rem}
  .nav-menu a{font-size:0.93rem}
  .lang-switcher{margin-left:1rem}
}
@media (max-width: 1180px) and (min-width: 1025px){
  .logo .logo-titre{font-size:1.3rem}
  .nav-menu{gap:0.7rem}
  .nav-menu a{font-size:0.84rem}
  .nav-menu a.nav-join,.nav-menu a.nav-vote{padding:0.3rem 0.7rem}
  .lang-switcher{margin-left:0.7rem}
}
.news-section{display:block;padding:48px var(--spacing-unit) 60px;background-color:#f8f8f8}
.news-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:2rem}
.news-filters{display:flex;flex-wrap:wrap;gap:0.6rem;margin-bottom:2rem}
.news-filters[hidden]{display:none}
.news-filter{padding:0.45rem 1.1rem;border:1.5px solid var(--border-color);border-radius:999px;background:white;color:var(--text-dark);font:inherit;font-size:0.92rem;font-weight:600;cursor:pointer;transition:background 0.2s, color 0.2s, border-color 0.2s}
.news-filter:hover{border-color:var(--ab-rouge);color:var(--ab-rouge)}
.news-filter[aria-pressed="true"]{background:var(--ab-rouge);border-color:var(--ab-rouge);color:white}
.news-filter:focus-visible,.news-share__bouton:focus-visible{outline:3px solid rgba(211, 47, 47, 0.45);outline-offset:2px}
.news-card{position:relative;display:flex;flex-direction:column;background:white;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 4px 6px rgba(0, 0, 0, 0.06);transition:transform 0.3s, box-shadow 0.3s}
.news-card:hover,.news-card:focus-within{transform:translateY(-5px);box-shadow:0 14px 28px rgba(0, 0, 0, 0.14)}
.news-card__media{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:linear-gradient(135deg, #2d2d2d, #1a1a1a)}
.news-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
.news-card:hover .news-card__media img{transform:scale(1.04)}
.news-media--vide{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, var(--ab-rouge), #1a1a1a)}
.news-media__logo{font-size:3rem;opacity:0.85}
.news-card__corps{display:flex;flex-direction:column;flex:1 1 auto;padding:1.4rem 1.5rem 1.5rem}
.news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0.4rem 0.9rem;margin-bottom:0.7rem;color:var(--text-light);font-size:0.88rem}
.news-chip{display:inline-block;padding:0.18rem 0.7rem;border-radius:999px;background:rgba(211, 47, 47, 0.1);color:#b71c1c;font-size:0.75rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase}
.news-card__titre{font-size:1.3rem;line-height:1.3;margin-bottom:0.6rem;overflow-wrap:anywhere}
.news-card__lien{color:var(--text-dark);text-decoration:none}
.news-card__lien::after{content:"";position:absolute;inset:0;z-index:1}
.news-card__lien:hover,.news-card__lien:focus-visible{color:var(--ab-rouge)}
.news-card__lien:focus-visible{outline:none}
.news-card:focus-within{outline:3px solid rgba(211, 47, 47, 0.45);outline-offset:2px}
.news-card__resume{color:var(--text-light);line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:1rem}
.news-card__suite{margin-top:auto;color:var(--ab-rouge);font-weight:600;font-size:0.95rem}
.news-card__suite::after{content:" →";display:inline-block;margin-left:0.25em;transition:transform 0.2s}
.news-card:hover .news-card__suite::after{transform:translateX(4px)}
.news-card--une{grid-column:1 / -1}
.news-card__une{align-self:flex-start;margin-bottom:0.9rem;padding:0.25rem 0.8rem;border-radius:4px;background:#1a1a1a;color:white;font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}
@media (min-width: 900px){
  .news-card--une{flex-direction:row}
  .news-card--une .news-card__media{flex:0 0 58%;aspect-ratio:auto;min-height:340px}
  .news-card--une .news-card__media img{position:absolute;inset:0}
  .news-card--une .news-card__corps{justify-content:center;padding:2.2rem 2.4rem}
  .news-card--une .news-card__titre{font-size:1.9rem}
  .news-card--une .news-card__resume{-webkit-line-clamp:5;font-size:1.05rem}
  .news-card--une .news-card__suite{margin-top:0.5rem}
}
.news-message{max-width:640px;margin:1rem auto 2rem;padding:2.2rem 1.5rem;text-align:center;color:var(--text-light);background:white;border:1px dashed #cfcfcf;border-radius:12px}
.news-message p + *{margin-top:1.2rem}
.news-message .btn + .btn{margin-left:0.6rem}
.news-message--chargement p::before{content:"";display:inline-block;width:1em;height:1em;margin-right:0.6em;vertical-align:-0.15em;border:2px solid rgba(211, 47, 47, 0.25);border-top-color:var(--ab-rouge);border-radius:50%;animation:news-rotation 0.8s linear infinite}
@keyframes news-rotation{to{transform: rotate(360deg)}}
.news-message--erreur{border-style:solid;border-color:rgba(211, 47, 47, 0.35)}
.news-message--introuvable h1{color:var(--ab-rouge);font-size:1.8rem;margin-bottom:0.6rem}
.news-more{margin-top:2.5rem;text-align:center}
.news-more .btn[hidden]{display:none}
.news-home{padding:60px var(--spacing-unit)}
.news-home[hidden]{display:none}
.news-home__entete{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:2rem}
.news-home__entete h2{font-size:2.2rem;color:var(--ab-rouge);margin-bottom:0.3rem}
.news-home__entete p{color:var(--text-light)}
.news-grid--accueil{grid-template-columns:repeat(auto-fit, minmax(280px, 1fr))}
.news-article-section{display:block;padding:40px var(--spacing-unit) 20px}
.news-article-container{max-width:820px;margin:0 auto}
.news-breadcrumb{margin-bottom:1.5rem;font-size:0.95rem}
.news-breadcrumb a{color:var(--text-light);text-decoration:none}
.news-breadcrumb a:hover,.news-breadcrumb a:focus-visible{color:var(--ab-rouge)}
.news-article__titre{font-size:2.6rem;line-height:1.15;margin:0.4rem 0 1.1rem;overflow-wrap:anywhere}
.news-article__chapo{font-size:1.25rem;line-height:1.6;color:#333;font-weight:500;margin-bottom:1.8rem}
.news-article__image{margin:0 0 2.2rem}
.news-article__image img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:12px;box-shadow:0 10px 30px rgba(0, 0, 0, 0.15);background:#eee}
.news-article__corps{font-size:1.1rem;line-height:1.85;color:#222;overflow-wrap:break-word}
.news-article__corps > * + *{margin-top:1.2rem}
.news-article__corps h2{margin-top:2.4rem;font-size:1.55rem;line-height:1.3;color:var(--ab-rouge)}
.news-article__corps ul,.news-article__corps ol{padding-left:1.5rem}
.news-article__corps li + li{margin-top:0.4rem}
.news-article__corps blockquote{padding:1rem 1.4rem;border-left:4px solid var(--ab-rouge);background:#f8f8f8;border-radius:0 8px 8px 0;font-style:italic;color:#333}
.news-article__corps a{color:var(--ab-rouge);text-underline-offset:2px}
.news-article__pied{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}
.news-share{display:flex;align-items:center;gap:0.8rem}
.news-share__bouton{padding:0.55rem 1.3rem;border:1.5px solid #1a1a1a;border-radius:999px;background:white;color:#1a1a1a;font:inherit;font-weight:600;cursor:pointer;transition:background 0.2s, color 0.2s}
.news-share__bouton:hover{background:#1a1a1a;color:white}
.news-share__annonce{color:#2e7d32;font-size:0.92rem}
.news-article__tout{color:var(--ab-rouge);font-weight:600;text-decoration:none}
.news-article__tout:hover,.news-article__tout:focus-visible{text-decoration:underline}
.news-article__voisines{display:grid;grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:1rem;margin-top:2rem}
.news-voisine{display:flex;flex-direction:column;gap:0.3rem;padding:1.1rem 1.3rem;border:1px solid var(--border-color);border-radius:10px;background:white;color:var(--text-dark);text-decoration:none;transition:border-color 0.2s, box-shadow 0.2s}
.news-voisine:hover,.news-voisine:focus-visible{border-color:var(--ab-rouge);box-shadow:0 6px 16px rgba(0, 0, 0, 0.08)}
.news-voisine--suivante{text-align:right}
.news-voisine__sens{color:var(--text-light);font-size:0.82rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase}
.news-voisine__titre{font-weight:600;overflow-wrap:anywhere}
@media (max-width: 768px){
  .news-section,.news-home{padding:36px var(--spacing-unit) 44px}
  .news-grid{grid-template-columns:minmax(0, 1fr);gap:1.5rem}
  .news-home__entete h2{font-size:1.8rem}
  .news-article-section{padding-top:24px}
  .news-article__titre{font-size:1.9rem}
  .news-article__chapo{font-size:1.1rem}
  .news-article__corps{font-size:1.03rem}
  .news-voisine--suivante{text-align:left}
}
@media (max-width: 480px){
  .news-card__corps{padding:1.2rem}
  .news-card__titre{font-size:1.2rem}
  .news-article__titre{font-size:1.6rem}
  .news-message .btn + .btn{margin:0.6rem 0 0}
}
@media (prefers-reduced-motion: reduce){
  .news-card,.news-card__media img,.news-card__suite::after{transition:none}
  .news-card:hover,.news-card:focus-within{transform:none}
  .news-card:hover .news-card__media img{transform:none}
  .news-message--chargement p::before{animation:none}
}
.logo a{color:inherit;text-decoration:none}
.reveal{opacity:0;translate:0 20px;transition:opacity 0.6s ease-out, translate 0.6s ease-out, transform 0.3s, border-color 0.3s, box-shadow 0.3s}
.reveal.is-visible{opacity:1;translate:0 0}
.page-header{position:relative;overflow:hidden}
.page-header .container{position:relative;z-index:1}
.page-header .rc-starfield,.hero .rc-starfield{display:none}
.page-header .dx-figures{max-width:640px;margin-top:2rem}
.page-header .dx-figure-value{color:white}
.page-header .dx-figure-label{color:rgba(255, 255, 255, 0.8)}
.flights-timeline{position:relative;max-width:1040px;margin:0 auto;padding:0 0 0 2.75rem;list-style:none}
.flights-timeline::before{content:'';position:absolute;top:0.6rem;bottom:0;left:0.7rem;width:2px;background:linear-gradient(to bottom, var(--ab-rouge), rgba(211, 47, 47, 0.15))}
.flight-year{position:relative;margin:0 0 1.25rem}
.flight-year:not(:first-child){margin-top:3rem}
.flight-year::before{content:'';position:absolute;top:50%;left:-2.75rem;width:1.4rem;height:1.4rem;margin-top:-0.7rem;border:3px solid var(--ab-rouge);border-radius:50%;background:white}
.flight-year-label{font-size:1.5rem;color:var(--ab-rouge)}
.flights-timeline .flight-card{position:relative;display:grid;grid-template-columns:230px 1fr;margin:0 0 1.5rem;padding:0}
.flights-timeline .flight-card::before{content:'';position:absolute;top:2.1rem;left:calc(-2.75rem + 0.7rem - 5px);width:12px;height:12px;border-radius:50%;background:#2e7d32;box-shadow:0 0 0 4px #f8f8f8}
.flights-timeline .flight-card.is-failure::before{background:var(--ab-rouge)}
.flight-media{position:relative;overflow:hidden;background:#1a1a1a}
.flight-thumb{display:block;width:100%;height:100%;min-height:220px;object-fit:contain}
.flight-body{display:flex;flex-direction:column;padding:1.5rem 1.75rem;min-width:0}
.flights-timeline .flight-header{flex-wrap:wrap;gap:0.6rem 1rem}
.flights-timeline .flight-details{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:0.6rem;margin:0 0 1rem}
.flight-stat{padding:0.55rem 0.75rem;border:1px solid var(--border-color);border-radius:8px;background:#f8f8f8}
.flight-stat dt{font-size:0.7rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--ab-rouge);white-space:nowrap}
.flight-stat dd{margin:0;font-size:0.92rem;font-weight:600}
.status.failure{background-color:#555555}
.flight-actions,.rocket-actions{display:flex;flex-wrap:wrap;gap:0.6rem;margin-top:auto;padding-top:0.5rem}
.flight-actions .btn-video,.rocket-actions .btn-video,.rocket-actions .btn-photos{margin:0}
.btn-ghost{background-color:#1a1a1a}
.rocket-card{display:flex;flex-direction:column}
.rocket-media{position:relative;aspect-ratio:3 / 2;overflow:hidden;background:var(--ab-nuit)}
.rocket-media .rocket-image{height:100%;object-fit:contain;background:none}
.rocket-media .rocket-image--photo{object-fit:cover}
.rocket-media .rocket-status{position:absolute;top:0.85rem;left:0.85rem;padding:0.25rem 0.75rem;border-radius:999px;background:white;color:#1a1a1a;font-size:0.8rem}
.rocket-status--operational{color:#2e7d32}
.rocket-media .rocket-status--lost{color:#b26a00}
.rocket-specs strong{margin-right:0.35rem}
.rocket-actions{padding:0 1.5rem 1.5rem}
#photoModal.single-photo .photo-controls,#photoModal.single-photo .photo-thumbnails,#photoModal.single-photo .photo-counter{display:none}
.error-404{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 160px)}
.error-404-code{font-family:var(--rc-display);font-size:clamp(5rem, 18vw, 9rem);font-weight:700;line-height:1;color:transparent;-webkit-text-stroke:2px rgba(255, 59, 48, 0.8);text-shadow:0 0 40px rgba(255, 59, 48, 0.35)}
.error-404 .hero-buttons{margin-top:2.25rem}
@media (max-width: 900px){
  .flights-timeline .flight-details{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width: 768px){
  .flights-timeline{padding-left:1.75rem}
  .flights-timeline::before{left:0.35rem}
  .flight-year::before{left:-1.75rem;width:1.1rem;height:1.1rem;margin-top:-0.55rem}
  .flights-timeline .flight-card{grid-template-columns:1fr}
  .flights-timeline .flight-card::before{top:1.2rem;left:calc(-1.75rem + 0.35rem - 5px)}
  .flight-media{border-radius:0 6px 0 0}
  .flight-thumb{height:220px;min-height:0}
  .flights-timeline .flight-header{flex-direction:row;align-items:center}
  .flight-body{padding:1.25rem}
}
@media (max-width: 480px){
  .flight-actions .btn-video{width:100%;text-align:center}
}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1;translate:none;transition:none}
}
body.space-page{background-color:var(--rc-night);color:var(--rc-metal-light)}
.space-page .team-member a,.space-page .news-article__corps a{color:var(--ab-rouge-lien)}
.space-page .navbar{background:linear-gradient(120deg, var(--ab-rouge), #3a0f1c 55%, var(--rc-night));box-shadow:0 2px 20px rgba(0, 0, 0, 0.5)}
.space-page .footer{margin-top:0;border-top:1px solid rgba(199, 206, 219, 0.12);background:#070b1d;color:var(--rc-metal-light)}
.space-page .footer a,.space-page .footer-link{color:var(--ab-rouge-lien) !important}
.space-page .lang-switcher-list{border:1px solid rgba(199, 206, 219, 0.18);background:var(--rc-night-2)}
.space-page .lang-option{color:var(--rc-metal-light)}
.space-page .lang-option:hover,.space-page .lang-option:focus-visible{color:white;background:rgba(255, 59, 48, 0.18)}
.space-page .lang-option[aria-current="true"]{color:var(--ab-rouge-lien)}
.space-page .frequentation-avis{border-color:rgba(199, 206, 219, 0.2);border-left-color:var(--rc-red-bright);background:rgba(20, 28, 61, 0.96);color:var(--rc-metal-light)}
.space-page .btn-primary{background:linear-gradient(135deg, var(--rc-red-bright), var(--rc-red));box-shadow:0 6px 18px rgba(211, 47, 47, 0.3)}
.space-page .btn-secondary{border:1px solid rgba(199, 206, 219, 0.3);background:rgba(255, 255, 255, 0.06);color:white}
.space-page .btn-secondary:hover{border-color:transparent}
.space-page .btn,.space-page .btn-video,.space-page .btn-photos,.space-page .tab-btn,.space-page .pov-btn,.space-page .nav-btn{border-radius:999px}
.space-page :focus-visible{outline-color:#4dd0e1}
.space-page .page-header{padding:72px var(--spacing-unit) 60px;background:radial-gradient(circle at 50% 0%, rgba(211, 47, 47, 0.55), transparent 60%), radial-gradient(circle at 85% 90%, rgba(56, 78, 160, 0.35), transparent 55%), linear-gradient(135deg, var(--rc-night), var(--rc-night-2))}
.space-page .page-header .rc-starfield,.space-page .hero .rc-starfield{display:block}
.space-page .page-header h1{font-family:var(--rc-display);font-size:3rem;font-weight:700;line-height:1.15;color:white;text-shadow:0 0 30px rgba(255, 59, 48, 0.4)}
.space-page .page-header p{color:var(--rc-metal-light)}
.space-page .page-header .dx-figure-value{color:var(--rc-red-bright)}
.space-page .page-header .dx-figure-label{color:var(--rc-metal)}
.space-page .hero{padding:110px var(--spacing-unit) 100px;background:radial-gradient(circle at 20% 15%, rgba(211, 47, 47, 0.45), transparent 55%), radial-gradient(circle at 82% 78%, rgba(56, 78, 160, 0.4), transparent 55%), linear-gradient(135deg, var(--rc-night), var(--rc-night-2))}
.space-page .hero h1{font-family:var(--rc-display);font-size:3.2rem;font-weight:700;line-height:1.15;text-shadow:0 4px 20px rgba(0, 0, 0, 0.55), 0 0 30px rgba(255, 59, 48, 0.35)}
.space-page .hero p{color:var(--rc-metal-light)}
.space-page .features,.space-page .news-home{background:transparent}
.space-page .features{padding:70px var(--spacing-unit);border-top:1px solid rgba(199, 206, 219, 0.1)}
.space-page .features h2,.space-page .news-home__entete h2,.space-page .portfolio-section h2{font-family:var(--rc-display);font-weight:700;color:var(--rc-red-bright)}
.space-page .news-home__entete p{color:var(--rc-metal-light)}
.space-page .feature-card,.space-page .team-member,.space-page .news-card,.space-page .news-voisine,.space-page .portfolio-card,.space-page .flight-card,.space-page .rocket-card{border:1px solid rgba(199, 206, 219, 0.14);border-radius:18px;background:linear-gradient(160deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));color:var(--rc-metal-light);box-shadow:0 12px 30px rgba(0, 0, 0, 0.35);transition:transform 0.25s, border-color 0.25s, box-shadow 0.25s}
.space-page .feature-card:hover,.space-page .team-member:hover,.space-page .news-card:hover,.space-page .news-card:focus-within,.space-page .news-voisine:hover,.space-page .portfolio-card:hover,.space-page .flight-card:hover,.space-page .rocket-card:hover{transform:translateY(-5px);border-color:rgba(255, 59, 48, 0.45);box-shadow:0 18px 40px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 59, 48, 0.15)}
.space-page .feature-card h3,.space-page .portfolio-card h3{color:white}
.space-page .feature-card p,.space-page .team-member .description,.space-page .team-member .role-secondary{color:var(--rc-metal-light)}
.space-page .team-member h3{font-family:var(--rc-display);font-size:1.25rem;color:white}
.space-page .team-member .role{color:var(--ab-rouge-lien)}
.space-page .member-avatar{box-shadow:0 0 0 3px rgba(255, 59, 48, 0.5), 0 0 24px rgba(255, 59, 48, 0.25)}
.space-page .news-section,.space-page .news-article-section{background:transparent}
.space-page .news-filter{border-color:rgba(199, 206, 219, 0.3);background:rgba(255, 255, 255, 0.04);color:var(--rc-metal-light)}
.space-page .news-filter:hover{border-color:rgba(255, 255, 255, 0.6);color:white}
.space-page .news-filter[aria-pressed="true"]{border-color:var(--rc-red-bright);background:var(--rc-red-bright);color:white}
.space-page .news-card{overflow:hidden}
.space-page .news-card__media{background:#02040a}
.space-page .news-card__lien,.space-page .news-voisine,.space-page .news-voisine__titre{color:white}
.space-page .news-card__lien:hover,.space-page .news-card__lien:focus-visible,.space-page .news-card__suite,.space-page .news-article__tout,.space-page .news-breadcrumb a:hover{color:var(--ab-rouge-lien)}
.space-page .news-card__resume,.space-page .news-meta,.space-page .news-breadcrumb a,.space-page .news-voisine__sens{color:var(--rc-metal)}
.space-page .news-chip{background:rgba(255, 59, 48, 0.14);color:#ffb4ab}
.space-page .news-card__une{background:var(--rc-red-bright)}
.space-page .news-message{border-color:rgba(199, 206, 219, 0.25);background:rgba(255, 255, 255, 0.04);color:var(--rc-metal-light)}
.space-page .news-article__titre{font-family:var(--rc-display);color:white}
.space-page .news-article__chapo,.space-page .news-article__corps,.space-page .news-article__corps blockquote{color:var(--rc-metal-light)}
.space-page .news-article__corps h2,.space-page .news-message--introuvable h1{color:var(--rc-red-bright)}
.space-page .news-article__corps blockquote{border-left-color:var(--rc-red-bright);background:rgba(255, 255, 255, 0.05)}
.space-page .news-article__image img{background:#02040a}
.space-page .news-article__pied{border-top-color:rgba(199, 206, 219, 0.14)}
.space-page .news-share__bouton{border-color:rgba(199, 206, 219, 0.4);background:rgba(255, 255, 255, 0.04);color:white}
.space-page .news-share__bouton:hover{border-color:white;background:white;color:var(--rc-night)}
.space-page .news-share__annonce{color:#7cf0a8}
.space-page .cgu-section{background:transparent}
.space-page .cgu-content,.space-page .cgu-content li{color:var(--rc-metal-light)}
.space-page .cgu-content h2{font-family:var(--rc-display);font-size:1.3rem;color:var(--rc-red-bright);border-bottom-color:rgba(255, 59, 48, 0.4)}
.space-page .cgu-content h3.cgu-sous-titre,.space-page .cgu-content strong{color:white}
.space-page .cgu-content a{color:var(--ab-rouge-lien)}
.space-page .frequentation-choix{border-color:rgba(199, 206, 219, 0.18);border-left-color:var(--rc-red-bright);background:rgba(255, 255, 255, 0.04)}
.space-page .portfolio-hero{background:radial-gradient(circle at 50% 0%, rgba(211, 47, 47, 0.55), transparent 60%), linear-gradient(135deg, var(--rc-night), var(--rc-night-2))}
.space-page .portfolio-section{background:transparent}
.space-page .flights-section,.space-page .rockets-section,.space-page .team-section,.space-page .news-section,.space-page .cgu-section{background:radial-gradient(circle at 10% 0%, rgba(56, 78, 160, 0.18), transparent 40%), var(--rc-night)}
.space-page .flights-section,.space-page .rockets-section{padding:64px var(--spacing-unit) 80px}
.space-page .btn-video,.space-page .btn-photos{display:inline-flex;align-items:center;justify-content:center;gap:0.4rem;margin:0;padding:0.65rem 1.15rem;border:1px solid transparent;background:linear-gradient(135deg, var(--rc-red-bright), var(--rc-red));color:white;font-size:0.9rem;font-weight:600;line-height:1.2;text-decoration:none;box-shadow:0 6px 18px rgba(211, 47, 47, 0.3);transition:transform 0.2s, box-shadow 0.2s, background-color 0.2s, border-color 0.2s}
.space-page .btn-video:hover,.space-page .btn-photos:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(255, 59, 48, 0.4)}
.space-page .btn-ghost,.space-page .rocket-actions .btn-video{background:rgba(255, 255, 255, 0.04);border-color:rgba(199, 206, 219, 0.3);box-shadow:none}
.space-page .btn-ghost:hover,.space-page .rocket-actions .btn-video:hover{background:rgba(255, 255, 255, 0.1);border-color:rgba(255, 255, 255, 0.6);box-shadow:none}
.space-page .flights-timeline::before{background:linear-gradient(to bottom, var(--rc-red-bright), rgba(56, 78, 160, 0.6) 60%, transparent)}
.space-page .flight-year::before{border-color:var(--rc-red-bright);background:var(--rc-night);box-shadow:0 0 16px rgba(255, 59, 48, 0.6)}
.space-page .flight-year-label{font-family:var(--rc-display);font-size:1.35rem;font-weight:700;color:white}
.space-page .flights-timeline .flight-card{border-left:1px solid rgba(199, 206, 219, 0.14)}
.space-page .flights-timeline .flight-card::before{background:#5ee08f;box-shadow:0 0 0 4px var(--rc-night), 0 0 12px rgba(94, 224, 143, 0.7)}
.space-page .flights-timeline .flight-card.is-failure::before{background:var(--rc-red-bright);box-shadow:0 0 0 4px var(--rc-night), 0 0 12px rgba(255, 59, 48, 0.7)}
.space-page .flight-media{border-radius:18px 0 0 18px;background:#02040a}
.space-page .flight-thumb{transition:transform 0.4s}
.space-page .flight-card:hover .flight-thumb{transform:scale(1.04)}
.space-page .flight-body{padding:1.6rem 1.75rem 1.5rem}
.space-page .flight-header{margin:0 0 1.1rem;padding:0;border:none}
.space-page .flight-header h3{font-family:var(--rc-display);font-size:1.45rem;font-weight:700;color:white}
.space-page .status{display:inline-flex;align-items:center;gap:0.45rem;padding:0.3rem 0.8rem;border:1px solid rgba(94, 224, 143, 0.45);border-radius:999px;background:rgba(94, 224, 143, 0.12);color:#7cf0a8;font-size:0.78rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}
.space-page .status::before,.space-page .rocket-status::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
.space-page .status.failure{border-color:rgba(255, 59, 48, 0.5);background:rgba(255, 59, 48, 0.14);color:var(--ab-rouge-lien)}
.space-page .flight-stat,.space-page .rocket-specs p{border:1px solid rgba(199, 206, 219, 0.1);border-radius:10px;background:rgba(2, 4, 10, 0.35)}
.space-page .flight-stat dt,.space-page .rocket-specs strong{color:var(--rc-metal)}
.space-page .flight-stat dd{color:white}
.space-page .flight-description{margin:0 0 0.25rem;font-style:normal;font-size:0.95rem;line-height:1.7;color:var(--rc-metal-light)}
.space-page .flight-actions{padding-top:1rem}
.space-page .rockets-grid{grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));gap:2rem}
.space-page .rocket-card{overflow:hidden}
.space-page .rocket-media{background:#02040a}
.space-page .rocket-image{transition:transform 0.4s}
.space-page .rocket-card:hover .rocket-image{transform:scale(1.04)}
.space-page .rocket-media .rocket-status{display:inline-flex;align-items:center;gap:0.4rem;padding:0.3rem 0.75rem;border:1px solid rgba(199, 206, 219, 0.35);background:rgba(11, 16, 38, 0.75);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--rc-metal-light);font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}
.space-page .rocket-media .rocket-status--operational{border-color:rgba(94, 224, 143, 0.5);color:#7cf0a8}
.space-page .rocket-media .rocket-status--lost{border-color:rgba(245, 182, 66, 0.55);color:var(--rc-gold)}
.space-page .rocket-card h3{padding:1.3rem 1.5rem 0.9rem;font-family:var(--rc-display);font-size:1.45rem;font-weight:700;color:white}
.space-page .rocket-specs{display:grid;grid-template-columns:repeat(auto-fit, minmax(90px, 1fr));gap:0.5rem;margin:0 1.5rem;padding:0;border:none;background:none}
.space-page .rocket-specs p{margin:0;padding:0.55rem 0.7rem;font-size:0.88rem;font-weight:600;line-height:1.35;color:white}
.space-page .rocket-specs strong{display:block;margin:0 0 0.15rem;font-size:0.66rem;letter-spacing:0.1em;text-transform:uppercase}
.space-page .rocket-description{padding:1.1rem 1.5rem 0.9rem;font-size:0.93rem;line-height:1.7;color:var(--rc-metal-light)}
.space-page .rocket-features{gap:0.5rem;padding:0 1.5rem 1.25rem}
.space-page .feature{padding:0.3rem 0.75rem;border:1px solid rgba(255, 59, 48, 0.35);border-radius:999px;background:rgba(255, 59, 48, 0.1);color:#ffb4ab;font-size:0.8rem}
.space-page .rocket-actions{padding:1rem 1.5rem 1.5rem;border-top:1px solid rgba(199, 206, 219, 0.1)}
.space-page .modal{background-color:rgba(3, 5, 15, 0.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.space-page .modal-content{border:1px solid rgba(199, 206, 219, 0.18);border-radius:18px;background:linear-gradient(160deg, var(--rc-night-2), var(--rc-night));color:var(--rc-metal-light);box-shadow:0 30px 80px rgba(0, 0, 0, 0.6)}
.space-page .modal-header{flex-direction:row;align-items:center;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid rgba(199, 206, 219, 0.14);background:none}
.space-page .modal-header h2{font-family:var(--rc-display);font-size:1.3rem;font-weight:700;color:white}
.space-page .close-btn{flex-shrink:0;align-self:center;border:1px solid rgba(199, 206, 219, 0.3);border-radius:50%;color:white;font-size:1.6rem;line-height:1;transition:background-color 0.2s, border-color 0.2s}
.space-page .close-btn:hover{border-color:var(--rc-red-bright);background:var(--rc-red-bright);color:white}
.space-page .video-container,.space-page .photo-viewer{padding:1.25rem 1.5rem;background:#02040a}
.space-page .video-container video,.space-page .video-container img{border-radius:10px}
.space-page .video-container img{max-height:60vh}
.space-page .media-tabs{gap:0.5rem;padding:1rem 1.5rem 0;border:none;background:none}
.space-page .tab-btn,.space-page .pov-btn{margin:0;padding:0.5rem 1rem;border:1px solid rgba(199, 206, 219, 0.3);background:rgba(255, 255, 255, 0.04);color:var(--rc-metal-light);font-size:0.88rem;font-weight:600;transition:background-color 0.2s, border-color 0.2s, color 0.2s}
.space-page .tab-btn:hover,.space-page .pov-btn:hover{border-color:rgba(255, 255, 255, 0.6);background:rgba(255, 255, 255, 0.1);color:white}
.space-page .tab-btn.active,.space-page .pov-btn.active{border-color:var(--rc-red-bright);background:var(--rc-red-bright);color:white}
.space-page .pov-selector,.space-page .photo-thumbnails{padding:1rem 1.5rem;border:none;background:none}
.space-page .pov-selector p,.space-page .photo-thumbnails p{margin-bottom:0.7rem;font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--rc-metal)}
.space-page .pov-buttons{gap:0.5rem}
.space-page .video-info,.space-page .photo-info{padding:0 1.5rem 1.5rem;background:none}
.space-page .video-info p,.space-page .photo-info p{color:var(--rc-metal-light);line-height:1.7}
.space-page .video-info strong,.space-page .photo-info strong{color:white}
.space-page .photo-display{border-radius:10px;background:#000}
.space-page .photo-display img{max-height:60vh}
.space-page .photo-counter{border-radius:999px;background:rgba(11, 16, 38, 0.8)}
.space-page .photo-controls{margin:0}
.space-page .nav-btn{padding:0.55rem 1.2rem;background:var(--rc-red-bright);font-size:0.9rem;white-space:nowrap}
.space-page .nav-btn:disabled{background:rgba(255, 255, 255, 0.08);color:var(--rc-metal)}
.space-page .thumbnail{border-color:transparent;border-radius:8px;background:#02040a;opacity:0.6}
.space-page .thumbnail:hover,.space-page .thumbnail.active{border-color:var(--rc-red-bright);opacity:1}
@media (max-width: 768px){
  .space-page .page-header h1{font-size:2.1rem}
  .space-page .hero h1{font-size:2.1rem}
  .space-page .flight-media{border-radius:18px 18px 0 0}
  .space-page .flight-body{padding:1.25rem}
  .space-page .rockets-grid{grid-template-columns:1fr}
  .space-page .modal-header h2{font-size:1.05rem}
  .space-page .photo-controls{flex-direction:row}
  .space-page .nav-btn{width:auto;flex:1}
}
@media (max-width: 480px){
  .space-page .page-header h1,.space-page .hero h1{font-size:1.6rem}
}
@media (prefers-reduced-motion: reduce){
  .space-page .feature-card,.space-page .team-member,.space-page .news-card,.space-page .flight-card,.space-page .rocket-card,.space-page .flight-thumb,.space-page .rocket-image{transition:none}
  .space-page .feature-card:hover,.space-page .team-member:hover,.space-page .news-card:hover,.space-page .flight-card:hover,.space-page .rocket-card:hover,.space-page .flight-card:hover .flight-thumb,.space-page .rocket-card:hover .rocket-image{transform:none}
}
body{font-family:var(--ab-police)}
h1,h2,h3{font-family:var(--ab-police-titre)}
.lien-evitement{position:absolute;left:1rem;top:-100px;z-index:3000;padding:.7rem 1.1rem;border-radius:var(--ab-rayon);background:var(--ab-papier);color:var(--ab-encre);font-weight:600;text-decoration:none;box-shadow:0 6px 24px rgba(0,0,0,.45)}
.lien-evitement:focus{top:.75rem;outline:3px solid var(--ab-rouge-vif);outline-offset:2px}
main:focus{outline:none}
.logo a{display:inline-flex;align-items:center;gap:.6rem;color:inherit;text-decoration:none}
.logo .logo-embleme{width:2.4rem;height:2.4rem;flex:none;color:#e9ecf2}
.logo .logo-embleme .orbite,.logo .logo-embleme .etoile{color:var(--ab-rouge-vif)}
.logo .logo-titre{font-family:var(--ab-police-marque);font-size:1.45rem;font-weight:700;letter-spacing:.02em;line-height:1;margin:0}
button.hamburger{background:none;border:0;padding:.35rem;margin:0;color:inherit;font:inherit;border-radius:6px}
button.hamburger:focus-visible,.nav-menu a:focus-visible,.lang-switcher button:focus-visible{outline:3px solid var(--ab-rouge-vif);outline-offset:3px}
.texte-a-completer{color:var(--ab-or);font-style:italic}
@media (max-width:420px){.logo .logo-titre{font-size:1.15rem}.logo .logo-embleme{width:2rem;height:2rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.space-page .navbar{background:linear-gradient(120deg,var(--ab-nuit-2),var(--ab-nuit) 65%);border-bottom:2px solid var(--ab-rouge)}
.navbar .hamburger.active span:nth-child(1){transform:translateY(13px) rotate(45deg)}.navbar .hamburger.active span:nth-child(2){opacity:0}.navbar .hamburger.active span:nth-child(3){transform:translateY(-13px) rotate(-45deg)}
