
/* RetroAlp Modding - habillage photo des pages publiques */

.page-hero{
    position:relative;
    isolation:isolate;
    min-height:360px;
    display:flex;
    align-items:center;
    overflow:hidden;
    color:#fff;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
}
.page-hero-pricing{background-image:url("img/home/hero-repair.jpg")}
.page-hero-contact{background-image:url("img/home/hero-repair.jpg")}
.page-hero-reviews{background-image:url("img/home/hero-repair.jpg")}

.page-hero-overlay{
    position:absolute;
    z-index:-1;
    inset:0;
    background:linear-gradient(90deg,rgba(9,11,16,.96) 0%,rgba(9,11,16,.88) 50%,rgba(9,11,16,.58) 100%);
}
.page-hero-content{
    padding-top:70px;
    padding-bottom:70px;
}
.page-hero-content small{
    display:block;
    margin-bottom:12px;
    color:#ff7a45;
    font-size:12px;
    font-weight:900;
    letter-spacing:1.7px;
}
.page-hero-content h1{
    margin:0;
    max-width:780px;
    font-size:clamp(38px,6vw,68px);
    line-height:1;
}
.page-hero-content h1 em{color:#ff7a45;font-style:normal}
.page-hero-content>p{
    max-width:680px;
    margin:20px 0 0;
    color:#d8dbe2;
    font-size:17px;
    line-height:1.6;
}
.page-hero-actions,.review-form-toggle{margin-top:24px}
.page-hero-message{max-width:650px;margin-top:18px}
.page-hero-badges{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
    margin-top:24px;
}
.page-hero-badges span{
    padding:8px 11px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    background:rgba(20,22,29,.68);
    backdrop-filter:blur(7px);
    font-size:13px;
}

/* Tarifs */
.pricing-photo-page{padding-top:34px}
.pricing-visual-strip{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-bottom:28px;
}
.pricing-visual{
    position:relative;
    min-height:150px;
    overflow:hidden;
    border-radius:15px;
    border:1px solid rgba(255,255,255,.08);
}
.pricing-visual img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
.pricing-visual:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(8,10,14,.08),rgba(8,10,14,.78));
}
.pricing-visual span{
    position:absolute;
    z-index:2;
    left:15px;
    bottom:13px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

/* Contact */
.contact-photo-layout{
    position:relative;
}
.contact-workshop-photo{
    position:relative;
    grid-column:1/-1;
    min-height:260px;
    margin-bottom:4px;
    overflow:hidden;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.08);
}
.contact-workshop-photo img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
.contact-workshop-photo:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 40%,rgba(8,10,14,.88));
}
.contact-workshop-caption{
    position:absolute;
    z-index:2;
    left:20px;
    bottom:18px;
    color:#fff;
}
.contact-workshop-caption strong,.contact-workshop-caption span{display:block}
.contact-workshop-caption strong{font-size:20px}
.contact-workshop-caption span{margin-top:4px;color:#c6cad2;font-size:13px}

/* Avis */
.reviews-page{padding-top:42px}
.reviews-page .review-grid .card{
    position:relative;
    overflow:hidden;
}
.reviews-page .review-grid .card:before{
    content:"“";
    position:absolute;
    right:15px;
    top:-12px;
    color:rgba(255,122,69,.10);
    font-size:100px;
    font-family:Georgia,serif;
    line-height:1;
    pointer-events:none;
}

@media(max-width:760px){
    .page-hero{min-height:320px;background-position:62% center}
    .page-hero-overlay{background:rgba(9,11,16,.84)}
    .page-hero-content{padding-top:52px;padding-bottom:52px}
    .pricing-visual-strip{grid-template-columns:1fr}
    .pricing-visual{min-height:135px}
    .contact-workshop-photo{min-height:210px}
}
