.page-container{padding:var(--space-10) var(--space-4);min-height:80vh}.page-content{max-width:1000px;margin:0 auto}.page-content--narrow{max-width:600px;margin:0 auto}.page-content--wide{max-width:1200px;margin:0 auto}.page-header{text-align:center;margin-bottom:var(--space-12)}.page-header__title{font-size:clamp(28px,5vw,36px);font-weight:300;color:var(--texte-principal);margin-bottom:var(--space-3);letter-spacing:-.02em;animation:fadeInUp .8s ease-out}.page-header__subtitle{font-size:var(--font-size-lg);color:var(--texte-secondaire);font-weight:300;line-height:1.6;animation:fadeInUp .8s ease-out .15s backwards}.page-header__divider{width:60px;height:2px;background:var(--couleur-principale);margin:var(--space-4) auto 0;animation:fadeInUp .8s ease-out .3s backwards}.card{background:var(--fond-carte);border:1px solid var(--bordure);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}.card--interactive:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card--centered{text-align:center}.card--compact{padding:var(--space-6)}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap}.badge--outline{border:1px solid var(--bordure-light);color:#ffffffb3}.badge--accent{border:1px solid var(--couleur-principale);color:var(--couleur-principale)}.badge--filled{background:#e67e2226;color:var(--couleur-principale);border:1px solid rgba(230,126,34,.3)}.badge--muted{background:#ffffff0d;color:#fff9;border:1px solid rgba(255,255,255,.1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-full);font-weight:500;font-size:var(--font-size-base);font-family:inherit;text-decoration:none;border:none;cursor:pointer;transition:all var(--transition-base);line-height:1.4}.btn--primary{background:var(--couleur-principale);color:#fff}.btn--primary:hover{background:var(--couleur-secondaire);transform:translateY(-2px);box-shadow:0 4px 12px #e67e224d}.btn--secondary{border:1px solid var(--couleur-principale);color:var(--couleur-principale);background:transparent}.btn--secondary:hover{background:#e67e221a;transform:translateY(-2px)}.btn--glass{border:1px solid rgba(255,255,255,.2);color:#ffffffe6;background:#ffffff0d;backdrop-filter:blur(10px)}.btn--glass:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-2px)}.btn--lg{padding:15px 30px;font-size:var(--font-size-lg)}.btn--sm{padding:8px 16px;font-size:var(--font-size-sm)}.btn--full-width{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.cta-section{background:var(--fond-carte);border:1px solid var(--bordure);border-radius:var(--radius-xl);padding:var(--space-10);text-align:center;margin-top:var(--space-12)}.cta-section__text{color:var(--texte-secondaire);margin-bottom:var(--space-6);font-size:var(--font-size-base);font-weight:300}.cta-section__buttons{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.grid{display:grid;gap:var(--space-8)}.grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid--cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.section-heading{font-size:var(--font-size-2xl);font-weight:500;color:var(--texte-principal);margin-bottom:var(--space-8);padding-bottom:var(--space-2);border-bottom:2px solid var(--couleur-principale);display:inline-block}.category-nav{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap;margin-bottom:var(--space-10)}.modal-overlay{display:none;position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(4px);z-index:1000;align-items:center;justify-content:center}.modal-overlay--active{display:flex}.modal-content{background:var(--fond-carte);border:1px solid var(--bordure);border-radius:var(--radius-xl);padding:var(--space-10);max-width:500px;width:90%;position:relative;box-shadow:var(--shadow-xl)}.modal-close{position:absolute;top:var(--space-4);right:var(--space-4);background:none;border:none;color:var(--texte-muted);font-size:20px;cursor:pointer;line-height:1;padding:var(--space-2);transition:color var(--transition-fast)}.modal-close:hover{color:var(--texte-principal)}.status-message{padding:var(--space-5);border-radius:var(--radius-md);margin-top:var(--space-5)}.status-message--success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:var(--succes)}.status-message--error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--erreur)}.status-message__title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--space-2)}.status-message p{font-weight:300;line-height:1.6}.info-banner{background:#e67e2214;border:1px solid rgba(230,126,34,.2);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);text-align:center}.info-banner p{color:var(--couleur-principale);font-weight:500;margin:0;font-size:var(--font-size-sm)}.empty-state{text-align:center;padding:var(--space-12) var(--space-4);color:var(--texte-secondaire)}.empty-state__icon{color:var(--texte-muted);margin-bottom:var(--space-5);opacity:.5}.empty-state__title{font-size:var(--font-size-xl);font-weight:500;margin-bottom:var(--space-3);color:var(--texte-principal)}.empty-state__text{font-weight:300}.breadcrumb{margin-bottom:var(--space-8)}.breadcrumb a{color:var(--texte-secondaire);text-decoration:none;font-weight:400;font-size:var(--font-size-sm);display:inline-flex;align-items:center;gap:var(--space-2);transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--couleur-principale)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .8s ease-out}.fade-in-up-delay-1{animation:fadeInUp .8s ease-out .15s backwards}.fade-in-up-delay-2{animation:fadeInUp .8s ease-out .3s backwards}@media(max-width:768px){.page-container{padding:var(--space-8) var(--space-3)}.card{padding:var(--space-6)}.card--compact{padding:var(--space-4)}.cta-section{padding:var(--space-8)}.cta-section__buttons{flex-direction:column;align-items:stretch}.grid--2,.grid--3,.grid--cards{grid-template-columns:1fr}.modal-content{padding:var(--space-6);width:95%}.page-header{margin-bottom:var(--space-8)}}@media(prefers-reduced-motion:reduce){.fade-in-up,.fade-in-up-delay-1,.fade-in-up-delay-2,.page-header__title,.page-header__subtitle,.page-header__divider{animation:none}}
