* {margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Segoe UI',sans-serif;background:linear-gradient(135deg,#ff6b35 0%,#f7931e 25%,#1a1a1a 75%,#000 100%);min-height:100vh;line-height:1.5;color:#fff;}

/* NAVBAR */
.navbar{position:fixed;top:0;width:100%;background:rgba(26,26,26,0.95);backdrop-filter:blur(10px);z-index:1000;padding:0.6rem 0;border-bottom:1px solid rgba(255,107,53,.3);}
.nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 2rem;}
.logo-container{display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit;}
.logo-img{width:55px;height:auto;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(255,107,53,0.5));}
.logo-text{display:flex;flex-direction:column;}
.logo-text strong{font-size:1.3rem;font-weight:800;background:linear-gradient(45deg,#fff,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2;}
.tagline{color:rgba(255,255,255,0.9);font-weight:500;letter-spacing:0.3px;font-size:0.7rem;line-height:1.1;margin-top:0;max-width:180px;}
.nav-links{display:flex;list-style:none;gap:2rem;}
.nav-links a{color:rgba(255,255,255,.9);text-decoration:none;padding:.5rem 1rem;border-radius:20px;transition:all .3s;font-weight:500;}
.nav-links a:hover{background:rgba(255,107,53,.2);color:#fff;}

main{padding-top:70px;padding-bottom:3rem;}
.hero{text-align:center;padding:2rem 2rem;background:rgba(0,0,0,.3);border-radius:30px;margin:1rem auto;max-width:1000px;}
h1{font-size:3rem;background:linear-gradient(45deg,#fff,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:0.5rem;}
.subtitle{font-size:1.2rem;opacity:.95;line-height:1.3;max-width:600px;margin:0 auto;}
.grid-section{padding:3rem 0;}
.container{max-width:1400px;margin:0 auto;padding:0 1rem;}
h2{font-size:2.5rem;text-align:center;margin-bottom:3rem;background:linear-gradient(45deg,#fff,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;}
.card{flex:0 0 calc(25% - 1.125rem);max-width:280px;min-height:320px;background:linear-gradient(145deg,#2a2a2a,#1a1a1a);border-radius:25px;overflow:hidden;box-shadow:0 25px 50px rgba(0,0,0,.6);transition:all .4s ease;text-decoration:none;color:inherit;border:2px solid rgba(255,107,53,.3);display:block;position:relative;}
.card:hover{transform:translateY(-15px);box-shadow:0 40px 80px rgba(0,0,0,.8);border-color:rgba(255,107,53,.6);}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#ff6b35,#f7931e,#ff6b35);}
.image-container{position:relative;height:120px;background:linear-gradient(45deg,#ff6b35,#f7931e);display:flex;align-items:center;justify-content:center;}
.image-container::before{content:attr(data-text);color:#fff;font-size:0.95rem;font-weight:700;text-align:center;padding:0.8rem 1.2rem;background:rgba(0,0,0,.92);border-radius:15px;box-shadow:0 8px 25px rgba(0,0,0,.9);border:2px solid rgba(255,255,255,.4);max-width:92%;white-space:nowrap;text-shadow:0 2px 8px #000;line-height:1.3;}
.card-content{padding:1.5rem;}
.card h3{font-size:1.25rem;color:#fff;margin-bottom:0.8rem;}
.card p{color:rgba(255,255,255,.88);font-size:0.95rem;margin-bottom:1.2rem;line-height:1.5;}
.btn{display:block;background:linear-gradient(45deg,#ff6b35,#f7931e);color:#fff;padding:0.8rem 1.2rem;border-radius:30px;font-weight:700;font-size:0.95rem;text-align:center;box-shadow:0 6px 20px rgba(255,107,53,.4);width:100%;border:none;cursor:pointer;transition:all .3s;}
.btn:hover{transform:translateY(-3px);box-shadow:0 12px 35px rgba(255,107,53,.6);}
.alt{background:linear-gradient(145deg,rgba(42,42,42,.5),rgba(26,26,26,.5));}
.contact-section{background:linear-gradient(145deg,rgba(42,42,42,.97),rgba(26,26,26,.97));border-radius:30px;margin:4rem 1rem;padding:3rem;border:2px solid rgba(255,107,53,.4);backdrop-filter:blur(20px);}
.contact-section h2{font-size:2.5rem;text-align:center;margin-bottom:2.5rem;background:linear-gradient(45deg,#fff,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;}
.form-row input,.form-row select{width:100%;padding:1.2rem 1.5rem;border-radius:20px;border:2px solid rgba(255,107,53,.3);background:rgba(255,255,255,.1);color:#fff;font-size:1.1rem;}
.form-row input::placeholder{color:rgba(255,255,255,.6);}
textarea{width:100%;padding:1.2rem 1.5rem;border-radius:20px;border:2px solid rgba(255,107,53,.3);background:rgba(255,255,255,.1);color:#fff;font-size:1.1rem;font-family:inherit;min-height:120px;}
footer{background:rgba(0,0,0,.9);color:rgba(255,255,255,.7);text-align:center;padding:3rem 2rem;border-top:2px solid rgba(255,107,53,.3);}
footer a{color:#ff6b35;text-decoration:none;}

@media (min-width: 1600px) {
    .card { flex: 0 0 calc(25% - 1.125rem); max-width: 280px; }
}
@media (min-width: 1200px) and (max-width: 1599px) {
    .card { flex: 0 0 calc(33.333% - 1rem); max-width: 300px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
    .card { flex: 0 0 calc(50% - 0.75rem); max-width: 280px; }
}
@media (max-width:768px){
    .nav-links{display:none;}
    .grid{justify-content:center;}
    .card{flex:0 0 100%;max-width:none;min-height:280px;}
    .form-row{grid-template-columns:1fr;}
    .contact-section{margin:2rem 0.5rem;padding:2rem;}
    .logo-img{width:45px;}
    .logo-text strong{font-size:1.1rem;}
    .tagline{font-size:0.65rem;}
    main{padding-top:60px;}
    .hero{padding:1.5rem 1rem;}
    h1{font-size:2.2rem;}
    .subtitle{font-size:1rem;}
    .image-container{height:100px;}
}
/* PAGE À PROPOS */
.apropos-section {
    padding: 3rem 0;
    background: linear-gradient(145deg, rgba(42,42,42,.8), rgba(26,26,26,.8));
    min-height: 80vh;
    display: flex;
    align-items: center;
}

.apropos-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.apropos-section h1 {
    font-size: 3rem;
    background: linear-gradient(45deg, #fff, #ff6b35);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-align: center;
    margin-bottom: 3rem;
}

.text-column {
    color: #fff;
}

.intro-text {
    font-size: 1.3rem;
    margin-bottom: 2rem;
    color: rgba(255,255,255,0.95);
}

.apropos-section h2 {
    font-size: 2rem;
    color: #ff6b35;
    margin: 2rem 0 1.5rem 0;
}

.apropos-section p {
    font-size: 1.1rem;
    line-height: 1.7;
    margin-bottom: 1.5rem;
    color: rgba(255,255,255,0.9);
}

blockquote {
    background: rgba(255,107,53,0.1);
    border-left: 4px solid #ff6b35;
    padding: 2rem;
    margin: 3rem 0;
    font-style: italic;
    font-size: 1.15rem;
    color: #fff;
}

.contact-cta {
    text-align: center;
    margin-top: 2rem;
}

.image-column {
    display: flex;
    justify-content: center;
}

.image-placeholder {
    width: 100%;
    height: 400px;
    background: linear-gradient(45deg, #ff6b35, #f7931e);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.image-placeholder span {
    color: #fff;
    font-size: 1.1rem;
    font-weight: 700;
    text-align: center;
    padding: 2rem;
    background: rgba(0,0,0,0.9);
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.8);
    border: 2px solid rgba(255,255,255,0.4);
    line-height: 1.4;
}

.btn-large {
    display: inline-block !important;
    max-width: none !important;
    padding: 1.2rem 2.5rem !important;
    font-size: 1.1rem !important;
}

@media (max-width: 768px) {
    .apropos-content {
        grid-template-columns: 1fr;
        gap: 2rem;
        text-align: center;
    }
    
    .apropos-section h1 {
        font-size: 2.2rem;
    }
    
    .image-placeholder {
        height: 250px;
    }
    
    .apropos-section {
        padding: 2rem 0;
    }
}
