/* assets/css/style.css */

/* Reset & Variables */
*{margin:0;padding:0;box-sizing:border-box}
:root{
    --noir-profond:#000;
    --dore-raffine:#D4AF37;
    --gris-anthracite:#1A1A1A;
    --blanc-pur:#FFF;
    --dore-chaud:#C99700;
    --gold:#D4AF37
}

/* Base */
body{
    font-family:'Inter',sans-serif;
    background-color:var(--noir-profond);
    color:var(--blanc-pur);
    line-height:1.6
}
h1,h2,h3,h4{font-family:'Playfair Display',serif}
a{text-decoration:none}

/* Header */
header{
    position:fixed;
    top:0;
    width:100%;
    background:rgba(0,0,0,.95);
    backdrop-filter:blur(10px);
    z-index:1000;
    border-bottom:1px solid rgba(212,175,55,.2)
}
nav{
    max-width:100%;
    margin:0;
    padding:1.5rem 2rem 1.5rem 0;
    display:flex;
    justify-content:space-between;
    align-items:center
}
.logo{margin:0;padding:0}
.logo img{display:block;height:80px}
.nav-links{display:flex;gap:2.5rem;list-style:none}
.nav-links a{
    color:var(--blanc-pur);
    font-size:.95rem;
    transition:color .3s;
    position:relative
}
.nav-links a::after{
    content:'';
    position:absolute;
    bottom:-5px;
    left:0;
    width:0;
    height:1px;
    background:var(--dore-raffine);
    transition:width .3s
}
.nav-links a:hover{color:var(--dore-raffine)}
.nav-links a:hover::after{width:100%}

/* Currency Switch */
.currency-switch{
    display:flex;
    gap:.5rem;
    background:var(--gris-anthracite);
    padding:.5rem;
    border-radius:25px
}
.currency-btn{
    padding:.4rem 1rem;
    border:none;
    background:transparent;
    color:var(--blanc-pur);
    cursor:pointer;
    border-radius:20px;
    font-size:.85rem;
    transition:all .3s
}
.currency-btn.active{
    background:var(--dore-raffine);
    color:var(--noir-profond)
}

/* Hamburger Menu */
.hamburger{
    display:none;
    flex-direction:column;
    cursor:pointer;
    gap:5px;
    padding:10px
}
.hamburger span{
    width:25px;
    height:3px;
    background:var(--dore-raffine);
    transition:all .3s
}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger.active span:nth-child(2){opacity:0}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}

/* Mobile Menu */
.mobile-menu{
    display:none;
    position:fixed;
    top:80px;
    left:0;
    width:100%;
    background:rgba(0,0,0,.98);
    padding:2rem;
    flex-direction:column;
    gap:1.5rem;
    border-bottom:1px solid rgba(212,175,55,.2)
}
.mobile-menu.active{display:flex}
.mobile-menu a{
    color:var(--blanc-pur);
    font-size:1.1rem;
    padding:.5rem 0;
    transition:color .3s
}
.mobile-menu a:hover{color:var(--dore-raffine)}

/* Hero - CORRIGÉ */
.hero{
    height:100vh;
    background:linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.6)),url('../images/hero.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:0 2rem
}

.hero-small{
    min-height:50vh;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:0 2rem;
    margin-top:80px;
    position:relative
}

/* Hero avec images de fond spécifiques - CORRIGÉ */
.hero-index{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/hero.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.hero-services{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/services.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.hero-proprietaires{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/proprietaires.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.hero-locataires{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/locataires.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.hero-about{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/about.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.hero-contact{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/contact.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.hero-biens{
    background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.5)),url('../images/biens.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}

.hero-content h1,.hero-small h1{
    font-size:4rem;
    margin-bottom:1.5rem;
    color:var(--blanc-pur);
    animation:fadeInUp 1s ease
}
.hero-small h1{font-size:3.5rem;margin-bottom:0}
.highlight{color:var(--dore-raffine)}
.hero-content p{
    font-size:1.3rem;
    margin-bottom:3rem;
    opacity:.9;
    animation:fadeInUp 1s ease .2s both
}
.hero-small p{font-size:1.2rem;margin-top:1rem;opacity:.9}

/* Animations */
@keyframes fadeInUp{
    from{opacity:0;transform:translateY(30px)}
    to{opacity:1;transform:translateY(0)}
}

/* Buttons */
.cta-button{
    display:inline-block;
    padding:1rem 3rem;
    background:var(--dore-raffine);
    color:var(--noir-profond);
    border-radius:50px;
    font-weight:600;
    font-size:1.1rem;
    transition:all .3s;
    animation:fadeInUp 1s ease .4s both
}
.cta-button:hover{
    background:var(--dore-chaud);
    transform:translateY(-3px);
    box-shadow:0 10px 30px rgba(212,175,55,.3)
}
.submit-btn{
    width:100%;
    padding:1.2rem;
    background:var(--dore-raffine);
    color:var(--noir-profond);
    border:none;
    border-radius:50px;
    font-size:1.1rem;
    font-weight:600;
    cursor:pointer;
    transition:all .3s
}
.submit-btn:hover{
    background:var(--dore-chaud);
    transform:translateY(-2px)
}

/* Sections */
section{
    max-width:1400px;
    margin:0 auto;
    padding:6rem 2rem
}
.section-title{
    text-align:center;
    font-size:3rem;
    margin-bottom:1rem;
    color:var(--blanc-pur)
}
.section-subtitle{
    text-align:center;
    font-size:1.1rem;
    margin-bottom:5rem;
    color:var(--dore-raffine);
    font-weight:300
}
.intro-section,.intro-text{
    max-width:900px;
    margin:0 auto 4rem;
    text-align:center
}
.intro-section p,.intro-text p{
    font-size:1.2rem;
    line-height:1.9;
    margin-bottom:2rem;
    color:rgba(255,255,255,.9)
}
.intro-text h2{
    font-size:2.5rem;
    margin-bottom:2rem;
    color:var(--dore-raffine)
}

/* Contact CTA */
.contact-cta{
    background:var(--gris-anthracite);
    padding:3rem;
    border-radius:15px;
    text-align:center;
    margin:4rem auto;
    max-width:700px
}
.contact-cta h3{
    font-size:2rem;
    margin-bottom:1rem;
    color:var(--dore-raffine)
}
.contact-cta p{
    font-size:1.1rem;
    margin-bottom:2rem;
    opacity:.9
}

/* Cards */
.services-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:2.5rem;
    margin-top:3rem
}
.service-card{
    text-align:center;
    padding:2.5rem 1.5rem;
    background:var(--gris-anthracite);
    border-radius:15px;
    transition:all .3s
}
.service-card:hover{
    background:rgba(212,175,55,.05);
    border:1px solid var(--dore-raffine);
    transform:translateY(-5px)
}
.service-icon{
    font-size:3rem;
    color:var(--dore-raffine);
    margin-bottom:1.5rem
}
.service-title,.service-card h3{
    font-size:1.4rem;
    margin-bottom:1rem;
    color:var(--dore-raffine)
}
.service-description,.service-card p{
    color:rgba(255,255,255,.8);
    line-height:1.8
}

/* Realisations */
.realisations-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:2rem;
    margin-top:3rem
}
.realisation-card{
    border-radius:15px;
    overflow:hidden;
    cursor:pointer;
    transition:transform .3s
}
.realisation-card:hover{transform:translateY(-10px)}
.realisation-image{
    width:100%;
    height:300px;
    background-size:cover;
    background-position:center;
    position:relative
}
.realisation-badge{
    position:absolute;
    top:1rem;
    right:1rem;
    background:var(--dore-raffine);
    color:var(--noir-profond);
    padding:.5rem 1rem;
    border-radius:25px;
    font-size:.85rem;
    font-weight:600
}
.realisation-overlay{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    background:linear-gradient(transparent,rgba(0,0,0,.9));
    padding:2rem 1.5rem 1.5rem;
    transform:translateY(100%);
    transition:transform .3s
}
.realisation-card:hover .realisation-overlay{transform:translateY(0)}
.realisation-overlay h3{
    color:var(--blanc-pur);
    font-size:1.4rem;
    margin-bottom:.5rem
}
.realisation-overlay p{
    color:var(--dore-raffine);
    font-size:.95rem
}

/* Properties */
.properties-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:2.5rem
}
.property-card{
    background:var(--gris-anthracite);
    border-radius:15px;
    overflow:hidden;
    transition:transform .3s;
    cursor:pointer
}
.property-card:hover{transform:translateY(-10px)}
.property-image{
    width:100%;
    height:250px;
    background:linear-gradient(135deg,#1A1A1A 0%,#333 100%);
    position:relative
}
.property-badge{
    position:absolute;
    top:1rem;
    right:1rem;
    background:var(--dore-raffine);
    color:var(--noir-profond);
    padding:.5rem 1rem;
    border-radius:25px;
    font-size:.85rem;
    font-weight:600
}
.property-content{padding:1.5rem}
.property-title{font-size:1.5rem;margin-bottom:.5rem}
.property-location{color:var(--dore-raffine);font-size:.9rem;margin-bottom:1rem}
.property-price{font-size:1.8rem;font-weight:600;color:var(--dore-raffine)}

/* Stats */
.stats{
    background:var(--gris-anthracite);
    padding:6rem 2rem
}
.stats-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:3rem;
    max-width:1400px;
    margin:0 auto
}
.stat-item{text-align:center}
.stat-number{
    font-size:3.5rem;
    font-weight:700;
    color:var(--dore-raffine);
    font-family:'Playfair Display',serif
}
.stat-label{font-size:1.1rem;margin-top:.5rem;opacity:.9}

/* Forms */
.form-group{margin-bottom:1.5rem}
.form-group label{
    display:block;
    margin-bottom:.5rem;
    color:var(--dore-raffine);
    font-weight:500
}
.form-group input,
.form-group textarea,
.form-group select{
    width:100%;
    padding:1rem;
    background:var(--noir-profond);
    border:1px solid rgba(212,175,55,.3);
    border-radius:8px;
    color:var(--blanc-pur);
    font-family:'Inter',sans-serif;
    font-size:1rem;
    transition:border-color .3s
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{
    outline:none;
    border-color:var(--dore-raffine)
}
.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.5rem
}

/* Contact */
.contact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:4rem
}
.contact-form{
    background:var(--gris-anthracite);
    padding:3rem;
    border-radius:15px
}
.contact-form h2,.contact-info h2{
    font-size:2rem;
    color:var(--dore-raffine);
    margin-bottom:2rem
}
.info-card{
    background:var(--gris-anthracite);
    padding:2rem;
    border-radius:15px;
    margin-bottom:1.5rem;
    display:flex;
    align-items:flex-start;
    gap:1.5rem;
    transition:all .3s
}
.info-card:hover{
    transform:translateX(10px);
    border-left:3px solid var(--dore-raffine)
}
.info-icon{
    font-size:2rem;
    color:var(--dore-raffine);
    min-width:50px;
    height:50px;
    background:rgba(212,175,55,.1);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center
}
.info-content h4{
    color:var(--dore-raffine);
    margin-bottom:.5rem;
    font-size:1.2rem
}
.info-content p{color:rgba(255,255,255,.8);line-height:1.7}
.info-content a{color:var(--blanc-pur);transition:color .3s}
.info-content a:hover{color:var(--dore-raffine)}

/* Social Links */
.social-links{display:flex;gap:1rem;margin-top:2rem}
.social-link{
    width:50px;
    height:50px;
    background:var(--gris-anthracite);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .3s
}
.social-link:hover{
    background:var(--dore-raffine);
    transform:translateY(-5px)
}
.social-link svg{
    width:24px;
    height:24px;
    fill:var(--dore-raffine);
    transition:fill .3s
}
.social-link:hover svg{fill:var(--noir-profond)}

/* Map */
.map-section{margin-top:4rem}
.map-section h2{
    font-size:2rem;
    color:var(--dore-raffine);
    margin-bottom:2rem;
    text-align:center
}
.map-container{
    height:400px;
    background:var(--gris-anthracite);
    border-radius:15px;
    overflow:hidden
}
.map-container iframe{
    width:100%;
    height:100%;
    border:none;
    filter:grayscale(100%) invert(92%) contrast(83%)
}

/* Services List */
.services-list{
    background:var(--gris-anthracite);
    padding:3rem;
    border-radius:15px;
    margin:3rem 0
}
.services-list h3{
    font-size:2rem;
    margin-bottom:2rem;
    color:var(--dore-raffine);
    text-align:center
}
.services-list>p{
    text-align:center;
    margin-bottom:2rem;
    font-size:1.1rem
}
.services-list ul{list-style:none;max-width:800px;margin:0 auto}
.services-list li{
    padding:1rem 0 1rem 2.5rem;
    font-size:1.1rem;
    line-height:1.8;
    position:relative;
    border-bottom:1px solid rgba(212,175,55,.1)
}
.services-list li:last-child{border-bottom:none}
.services-list li::before{
    content:'✓';
    position:absolute;
    left:0;
    color:var(--dore-raffine);
    font-size:1.5rem;
    font-weight:bold
}

/* Premium Services */
.premium-services{
    background:linear-gradient(135deg,var(--gris-anthracite) 0%,rgba(212,175,55,.1) 100%);
    padding:3rem;
    border-radius:15px;
    margin:3rem 0
}
.premium-services h3,.activities-section h3{
    font-size:2rem;
    margin-bottom:2rem;
    color:var(--dore-raffine);
    text-align:center
}
.premium-services p,.activities-section p{
    font-size:1.1rem;
    line-height:1.8;
    margin-bottom:1.5rem;
    text-align:center
}
.activities-section{
    background:linear-gradient(135deg,var(--gris-anthracite) 0%,rgba(212,175,55,.1) 100%);
    padding:4rem 3rem;
    border-radius:15px;
    margin:4rem 0
}

/* Trust Grid */
.why-trust{margin:4rem 0}
.why-trust h3{
    font-size:2rem;
    margin-bottom:2rem;
    color:var(--dore-raffine);
    text-align:center
}
.trust-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:2rem;
    margin-top:3rem
}
.trust-item{
    background:var(--gris-anthracite);
    padding:2rem;
    border-radius:15px;
    text-align:center;
    transition:transform .3s
}
.trust-item:hover{
    transform:translateY(-5px);
    border:1px solid var(--dore-raffine)
}
.trust-item h4{
    font-size:1.3rem;
    margin-bottom:1rem;
    color:var(--dore-raffine)
}
.trust-item p{color:rgba(255,255,255,.8);line-height:1.7}

/* CTA Section */
.cta-section{
    background:var(--dore-raffine);
    color:var(--noir-profond);
    padding:4rem 3rem;
    border-radius:15px;
    text-align:center;
    margin:4rem 0
}
.cta-section h3{font-size:2.5rem;margin-bottom:1.5rem}
.cta-section p{font-size:1.2rem;margin-bottom:2rem}
.cta-section .cta-button{
    background:var(--noir-profond);
    color:var(--blanc-pur);
    animation:none
}
.cta-section .cta-button:hover{background:var(--gris-anthracite)}

/* Booking Form */
.booking-form{
    background:var(--gris-anthracite);
    padding:3rem;
    border-radius:15px;
    margin:4rem 0
}
.booking-form h3{
    font-size:2rem;
    margin-bottom:1rem;
    color:var(--dore-raffine);
    text-align:center
}
.booking-form>p{
    text-align:center;
    margin-bottom:2rem;
    color:rgba(255,255,255,.7)
}

/* Property Details */
.properties-section{margin-top:6rem}
.properties-section h3{
    font-size:2.5rem;
    margin-bottom:3rem;
    color:var(--dore-raffine);
    text-align:center
}
.properties-section .property-card{max-width:800px;margin:0 auto}
.properties-section .property-image{height:300px}
.properties-section .property-content{padding:2.5rem}
.properties-section .property-title{
    font-size:2rem;
    margin-bottom:1rem;
    color:var(--dore-raffine)
}
.property-details{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:1.5rem;
    margin:2rem 0
}
.detail-item{text-align:center}
.detail-label{
    font-size:.9rem;
    color:var(--dore-raffine);
    margin-bottom:.5rem
}
.detail-value{font-size:1.1rem;font-weight:500}
.property-actions{display:flex;gap:1rem;margin-top:2rem}
.btn-details,.btn-reserve{
    flex:1;
    padding:1rem;
    border:none;
    border-radius:50px;
    font-size:1rem;
    font-weight:600;
    cursor:pointer;
    transition:all .3s
}
.btn-details{
    background:transparent;
    color:var(--dore-raffine);
    border:2px solid var(--dore-raffine)
}
.btn-details:hover{
    background:var(--dore-raffine);
    color:var(--noir-profond)
}
.btn-reserve{
    background:var(--dore-raffine);
    color:var(--noir-profond)
}
.btn-reserve:hover{
    background:var(--dore-chaud);
    transform:translateY(-2px)
}

/* Timeline */
.timeline{position:relative;padding:2rem 0}
.timeline::before{
    content:'';
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    width:2px;
    height:100%;
    background:var(--dore-raffine)
}
.timeline-item{
    display:flex;
    justify-content:center;
    margin-bottom:4rem;
    position:relative
}
.timeline-item:nth-child(odd) .timeline-content{
    margin-right:50%;
    padding-right:4rem;
    text-align:right
}
.timeline-item:nth-child(even) .timeline-content{
    margin-left:50%;
    padding-left:4rem;
    text-align:left
}
.timeline-content{width:45%}
.timeline-content h3{
    font-size:1.8rem;
    color:var(--dore-raffine);
    margin-bottom:1rem
}
.timeline-content p{
    font-size:1.1rem;
    line-height:1.8;
    color:rgba(255,255,255,.8)
}
.timeline-dot{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    width:20px;
    height:20px;
    background:var(--dore-raffine);
    border-radius:50%;
    border:4px solid var(--noir-profond)
}

/* Values Grid */
.values-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:2.5rem;
    margin-top:4rem
}
.value-card{
    background:var(--gris-anthracite);
    padding:2.5rem;
    border-radius:15px;
    text-align:center;
    transition:all .3s
}
.value-card:hover{
    transform:translateY(-10px);
    border:1px solid var(--dore-raffine)
}
.value-icon{font-size:3rem;margin-bottom:1.5rem}
.value-card h4{
    font-size:1.4rem;
    color:var(--dore-raffine);
    margin-bottom:1rem
}
.value-card p{color:rgba(255,255,255,.8);line-height:1.8}

/* Team Section */
.team-section{
    background:var(--gris-anthracite);
    padding:5rem 2rem;
    margin:4rem 0;
    border-radius:20px;
    text-align:center
}
.team-section h2{
    font-size:2.5rem;
    color:var(--dore-raffine);
    margin-bottom:3rem
}
.team-section p{
    font-size:1.2rem;
    max-width:700px;
    margin:0 auto;
    line-height:1.9
}

/* Legal Sections */
.legal-section{
    background:var(--gris-anthracite);
    padding:3rem;
    border-radius:15px;
    margin-bottom:2rem
}
.legal-section h2{
    font-size:1.8rem;
    color:var(--dore-raffine);
    margin-bottom:1.5rem;
    padding-bottom:1rem;
    border-bottom:1px solid rgba(212,175,55,.3)
}
.legal-section h3{
    font-size:1.3rem;
    color:var(--dore-raffine);
    margin:2rem 0 1rem
}
.legal-section p{
    font-size:1rem;
    line-height:1.9;
    margin-bottom:1rem;
    color:rgba(255,255,255,.85)
}
.legal-section ul{margin:1rem 0 1rem 2rem}
.legal-section li{margin-bottom:.5rem;color:rgba(255,255,255,.85)}
.legal-section a{color:var(--dore-raffine);transition:opacity .3s}
.legal-section a:hover{opacity:.7}
.info-box{
    background:rgba(212,175,55,.1);
    border-left:4px solid var(--dore-raffine);
    padding:1.5rem;
    margin:2rem 0;
    border-radius:0 10px 10px 0
}
.info-box p{margin:0}
.last-update{
    text-align:center;
    color:rgba(255,255,255,.5);
    font-size:.9rem;
    margin-top:3rem
}

/* WhatsApp Float */
.whatsapp-float{
    position:fixed;
    bottom:30px;
    right:30px;
    width:60px;
    height:60px;
    background:var(--dore-raffine);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 20px rgba(212,175,55,.4);
    transition:all .3s;
    z-index:999
}
.whatsapp-float:hover{
    transform:scale(1.1);
    box-shadow:0 6px 30px rgba(212,175,55,.6)
}
.whatsapp-float svg{
    width:35px;
    height:35px;
    fill:var(--noir-profond)
}

/* Footer */
footer{
    background:var(--gris-anthracite);
    padding:2rem;
    text-align:center;
    border-top:1px solid rgba(212,175,55,.2)
}
.footer-content{max-width:1400px;margin:0 auto}
.footer-links{margin-bottom:1rem}
.footer-links a{
    color:var(--dore-raffine);
    margin:0 1rem;
    transition:opacity .3s
}
.footer-links a:hover{opacity:.7}
.footer-bottom{opacity:.6}
.footer-info{margin-bottom:2rem}
.footer-info p{margin:.3rem 0;opacity:.8}
.footer-info h3{color:var(--dore-raffine);margin-bottom:1rem}

/* Témoignages */
.testimonials-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:2rem;
    margin-top:3rem
}
.testimonial-card{
    background:var(--gris-anthracite);
    padding:2.5rem;
    border-radius:15px;
    border-left:4px solid var(--dore-raffine);
    transition:all .3s
}
.testimonial-card:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 30px rgba(212,175,55,.15)
}
.testimonial-stars{
    color:var(--dore-raffine);
    font-size:1.2rem;
    margin-bottom:1rem
}
.testimonial-text{
    font-size:1.1rem;
    line-height:1.8;
    color:rgba(255,255,255,.9);
    font-style:italic;
    margin-bottom:1.5rem
}
.testimonial-author{
    font-weight:600;
    color:var(--dore-raffine);
    font-size:1rem
}
.testimonial-category{
    font-size:1.8rem;
    color:var(--dore-raffine);
    text-align:center;
    margin:3rem 0 1rem
}

/* Réseaux sociaux */
.social-section{
    text-align:center;
    padding:4rem 2rem;
    background:var(--gris-anthracite)
}
.social-section h3{
    font-size:1.8rem;
    color:var(--dore-raffine);
    margin-bottom:2rem
}
.social-links{
    display:flex;
    justify-content:center;
    gap:2rem
}
.social-link{
    width:50px;
    height:50px;
    background:var(--noir-profond);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .3s
}
.social-link svg{
    width:24px;
    height:24px;
    fill:var(--dore-raffine)
}
.social-link:hover{
    background:var(--dore-raffine);
    transform:translateY(-3px)
}
.social-link:hover svg{
    fill:var(--noir-profond)
}

/* Services grid 3 colonnes */
.services-grid-3{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:2rem;
    margin-top:3rem
}

/* Trust grid 3 colonnes */
.trust-grid-3{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:2rem;
    margin-top:3rem
}

/* Moyens de paiement */
.payment-methods{
    margin-top:2rem
}
.payment-methods p{
    font-size:.9rem;
    color:rgba(255,255,255,.6);
    margin-bottom:1rem
}
.payment-icons{
    display:flex;
    justify-content:center;
    gap:1rem;
    flex-wrap:wrap
}
.payment-icons img{
    height:30px;
    opacity:.8;
    transition:opacity .3s
}
.payment-icons img:hover{
    opacity:1
}

/* Styles pour les alertes du formulaire de contact */
.form-alert {
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 1.5;
}
.alert-success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}
.alert-error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}
.submit-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Responsive */
@media(max-width:992px){
    .services-grid-3{grid-template-columns:repeat(2,1fr)}
    .trust-grid-3{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:768px){
    .hero-content h1{font-size:2.5rem}
    .hero-small h1{font-size:2rem}
    .hero-small{min-height:40vh}
    .nav-links{display:none}
    .hamburger{display:flex}
    .currency-switch{display:none}
    .contact-grid{grid-template-columns:1fr}
    .form-row{grid-template-columns:1fr}
    .trust-grid{grid-template-columns:1fr}
    .property-actions{flex-direction:column}
    .realisations-grid{grid-template-columns:1fr}
    .timeline::before{left:20px}
    .timeline-item:nth-child(odd) .timeline-content,
    .timeline-item:nth-child(even) .timeline-content{
        margin-left:60px;
        margin-right:0;
        padding-left:0;
        padding-right:0;
        text-align:left;
        width:calc(100% - 60px)
    }
    .timeline-dot{left:20px}
}

@media(max-width:576px){
    .services-grid-3{grid-template-columns:1fr}
    .trust-grid-3{grid-template-columns:1fr}
    .testimonials-grid{grid-template-columns:1fr}
}
