/* ============================================
   L'Atelier du Temps — atelier-du-temps.css
   Version finale — Style Luxe & Éditorial
   ============================================ */

*{margin:0;padding:0;box-sizing:border-box}
:root{
  --ivory:#FAF8F4;--ivory2:#F0ECE4;--ivory3:#E4DED4;
  --gold:#C49B3C;--gold-light:#DAAD4E;--gold-muted:rgba(196,155,60,.12);
  --noir:#1A1916;--noir2:#2A2824;--noir3:#3A3834;
  --bois:#8C7A62;--bois-light:#A89478;
  --gris:#9A9488;--gris-light:#B8B2A8;
  --white:#fff;
  --ff-display:'Libre Caslon Display',Georgia,serif;
  --ff-text:'Libre Caslon Text',Georgia,serif;
  --ff-ui:'Karla',sans-serif;
  --ff-script:'Dancing Script',cursive;
  --transition:all .45s cubic-bezier(.25,.46,.45,.94);
}

/* ============ BASE ============ */
.adt-page{font-family:var(--ff-text);color:var(--noir);background:var(--ivory);font-size:17px;line-height:1.75;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.adt-page img{max-width:100%;display:block}
.adt-page a{text-decoration:none;color:inherit}
.adt-page .img-cover{width:100%;height:100%;object-fit:cover}
.adt-page .container{max-width:1180px;margin:0 auto;padding:0 35px}

/* ============ HERO — 90vh ============ */
.adt-page .hero{max-height:90vh;height:90vh;display:grid;grid-template-columns:1fr 1.2fr;background:var(--noir);position:relative;overflow:hidden}
.adt-page .hero__text{display:flex;flex-direction:column;justify-content:center;padding:60px 55px 60px 7vw;position:relative;z-index:2}
.adt-page .hero__text::before{content:'';position:absolute;top:12%;left:40px;width:1px;height:76%;background:linear-gradient(180deg,transparent,var(--gold),transparent);opacity:.3}
.adt-page .hero__kicker{font-family:var(--ff-ui);font-size:.68rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:25px;padding-left:20px;border-left:2px solid var(--gold);animation:adt-fadeUp .8s ease both}
.adt-page .hero__title{font-family:var(--ff-display);font-size:clamp(2.4rem,4.8vw,4.4rem);font-weight:400;color:var(--ivory);line-height:1.1;margin-bottom:28px;animation:adt-fadeUp .8s ease .15s both}
.adt-page .hero__title em{font-family:var(--ff-script);font-style:normal;background:linear-gradient(90deg,var(--gold-light),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.15em}
.adt-page .hero__desc{font-family:var(--ff-text);font-size:1.05rem;color:var(--gris-light);max-width:420px;margin-bottom:40px;font-style:italic;animation:adt-fadeUp .8s ease .3s both}
.adt-page .hero__btns{display:flex;gap:14px;flex-wrap:wrap;animation:adt-fadeUp .8s ease .45s both}
.adt-page .hero__visual{position:relative;overflow:hidden}
.adt-page .hero__visual::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,25,22,.35) 0%,transparent 55%)}

/* Buttons */
.adt-page .btn-lux{font-family:var(--ff-ui);font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;padding:15px 36px;transition:var(--transition);display:inline-block;cursor:pointer}
.adt-page .btn-lux--gold{background:var(--gold);color:var(--noir);border:none}
.adt-page .btn-lux--gold:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 12px 35px rgba(196,155,60,.3)}
.adt-page .btn-lux--ghost{background:transparent;color:var(--ivory);border:1px solid rgba(250,248,244,.25)}
.adt-page .btn-lux--ghost:hover{border-color:var(--gold);color:var(--gold)}
.adt-page .btn-lux--boutique{background:transparent;color:var(--ivory);border:1px solid var(--gold)}
.adt-page .btn-lux--boutique:hover{background:var(--gold);color:var(--noir)}

/* ============ TRUST ============ */
.adt-page .trust{border-bottom:1px solid var(--ivory2);padding:20px 0}
.adt-page .trust__inner{display:flex;justify-content:center;gap:40px;flex-wrap:wrap}
.adt-page .trust__item{font-family:var(--ff-ui);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gris)}

/* ============ SECTIONS ============ */
.adt-page .section{padding:90px 0}
.adt-page .section--alt{background:var(--ivory2)}
.adt-page .slabel{font-family:var(--ff-ui);font-size:.65rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.adt-page .stitle{font-family:var(--ff-display);font-size:clamp(1.9rem,3.2vw,2.8rem);font-weight:400;color:var(--noir);line-height:1.2;margin-bottom:25px}
.adt-page .stitle em{font-style:italic;color:var(--bois)}
.adt-page .stitle .script{font-family:var(--ff-script);font-style:normal;color:var(--gold);font-size:1.2em;display:inline}
.adt-page .sheader{text-align:center;max-width:640px;margin:0 auto 60px}
.adt-page .sheader p{font-size:1rem;color:var(--gris);font-style:italic}

/* ============ SERVICES ============ */
.adt-page .svc__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.adt-page .svc{background:var(--white);overflow:hidden;transition:var(--transition);border:1px solid var(--ivory2);position:relative}
.adt-page .svc::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.adt-page .svc:hover::before{transform:scaleX(1)}
.adt-page .svc:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(0,0,0,.06)}
.adt-page .svc__img{aspect-ratio:16/10;overflow:hidden;position:relative}
.adt-page .svc__img img{transition:transform .6s ease}
.adt-page .svc:hover .svc__img img{transform:scale(1.05)}
.adt-page .svc__img-num{position:absolute;top:15px;left:18px;font-family:var(--ff-display);font-size:3.5rem;color:var(--white);opacity:.15;z-index:2;line-height:1}
.adt-page .svc__body{padding:28px 25px 30px}
.adt-page .svc__title{font-family:var(--ff-display);font-size:1.3rem;color:var(--noir);margin-bottom:10px}
.adt-page .svc__text{font-size:.9rem;color:var(--gris);line-height:1.75;margin-bottom:18px;font-style:italic}
.adt-page .svc__link{font-family:var(--ff-ui);font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);transition:var(--transition)}
.adt-page .svc__link:hover{letter-spacing:.25em}

/* ============ GALERIE ============ */
.adt-page .gal__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.adt-page .gal{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--white);overflow:hidden;border:1px solid var(--ivory2);transition:var(--transition)}
.adt-page .gal:hover{box-shadow:0 12px 40px rgba(0,0,0,.06)}
.adt-page .gal__side{aspect-ratio:1;position:relative;overflow:hidden}
.adt-page .gal__side img{transition:transform .6s ease}
.adt-page .gal:hover .gal__side img{transform:scale(1.04)}
.adt-page .gal__tag{position:absolute;top:10px;left:10px;font-family:var(--ff-ui);font-size:.55rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--white);background:var(--noir);padding:4px 12px}
.adt-page .gal__info{grid-column:1/-1;padding:14px 20px;text-align:center;border-top:1px solid var(--ivory2)}
.adt-page .gal__name{font-family:var(--ff-display);font-size:1rem;color:var(--noir)}
.adt-page .gal__desc{font-size:.8rem;color:var(--gris);font-style:italic;margin-top:2px}

/* ============ CTA ============ */
.adt-page .cta{padding:100px 0;text-align:center;background:linear-gradient(175deg,var(--noir) 0%,var(--noir2) 100%);position:relative;overflow:hidden}
.adt-page .cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(196,155,60,.06) 0%,transparent 60%)}
.adt-page .cta__inner{max-width:650px;margin:0 auto;position:relative;z-index:2}
.adt-page .cta .slabel{color:var(--gold)}
.adt-page .cta .stitle{color:var(--ivory)}
.adt-page .cta .stitle .script{color:var(--gold-light)}
.adt-page .cta__text{font-size:1rem;color:var(--gris-light);font-style:italic;margin-bottom:40px}
.adt-page .cta__btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ============ FOOTER ============ */
.adt-page .footer{background:var(--noir);padding:50px 0 22px;color:var(--gris);border-top:1px solid rgba(196,155,60,.1)}
.adt-page .footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:45px;margin-bottom:40px}
.adt-page .footer__brand{font-family:var(--ff-display);font-size:1.4rem;color:var(--ivory);margin-bottom:12px}
.adt-page .footer__desc{font-size:.88rem;line-height:1.7;font-style:italic}
.adt-page .footer__heading{font-family:var(--ff-ui);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:15px}
.adt-page .footer__links{list-style:none}
.adt-page .footer__links li{margin-bottom:8px}
.adt-page .footer__links a{font-size:.88rem;color:var(--gris);transition:var(--transition)}
.adt-page .footer__links a:hover{color:var(--gold)}
.adt-page .footer__contact p{font-size:.88rem;margin-bottom:8px;line-height:1.6}
.adt-page .footer__bar{border-top:1px solid rgba(255,255,255,.06);padding-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:.72rem;letter-spacing:.05em}
.adt-page .footer__socials{display:flex;gap:10px}
.adt-page .footer__socials a{width:34px;height:34px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:var(--gris);font-size:.78rem;transition:var(--transition)}
.adt-page .footer__socials a:hover{border-color:var(--gold);color:var(--gold)}

/* ============ ANIMATIONS ============ */
@keyframes adt-fadeUp{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
.adt-page .reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}
.adt-page .reveal--visible{opacity:1;transform:translateY(0)}
.adt-page .reveal--d1{transition-delay:.1s}
.adt-page .reveal--d2{transition-delay:.2s}
.adt-page .reveal--d3{transition-delay:.3s}

/* ============ RESPONSIVE ============ */
@media(max-width:1024px){
  .adt-page .hero{grid-template-columns:1fr;max-height:none;height:auto}
  .adt-page .hero__visual{height:50vh;order:-1}
  .adt-page .hero__text{padding:50px 40px 60px}
  .adt-page .hero__text::before{display:none}
  .adt-page .svc__grid{grid-template-columns:1fr 1fr}
  .adt-page .footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .adt-page .svc__grid,.adt-page .gal__grid{grid-template-columns:1fr}
  .adt-page .footer__grid{grid-template-columns:1fr}
  .adt-page .footer__bar{flex-direction:column;gap:12px;text-align:center}
  .adt-page .trust__inner{gap:15px}
  .adt-page .hero__btns{flex-direction:column}
  .adt-page .hero__btns .btn-lux{text-align:center}
}
@media(max-width:480px){
  .adt-page .cta__btns{flex-direction:column;align-items:center}
  .adt-page .btn-lux{width:100%;max-width:300px;text-align:center}
  .adt-page .trust__inner{flex-direction:column;gap:8px;align-items:center}
}

/* ============================================
   PAGES INTÉRIEURES — À AJOUTER À LA FIN DE
   atelier-du-temps.css
   ============================================ */

/* ============ HERO INTÉRIEUR ============ */
.adt-page .hero-inner{position:relative;height:55vh;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.adt-page .hero-inner__bg{position:absolute;inset:0;z-index:1}
.adt-page .hero-inner__bg img{width:100%;height:100%;object-fit:cover}
.adt-page .hero-inner__overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(26,25,22,.3) 0%,rgba(26,25,22,.65) 60%,rgba(26,25,22,.85) 100%)}
.adt-page .hero-inner__content{position:relative;z-index:3;text-align:center;padding:40px 30px;max-width:750px}
.adt-page .hero-inner__label{font-family:var(--ff-ui);font-size:.65rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:15px}
.adt-page .hero-inner__title{font-family:var(--ff-display);font-size:clamp(2.2rem,4.5vw,3.8rem);font-weight:400;color:var(--ivory);line-height:1.15;margin-bottom:20px}
.adt-page .hero-inner__title em{font-family:var(--ff-script);font-style:normal;color:var(--gold-light);font-size:1.1em}
.adt-page .hero-inner__desc{font-family:var(--ff-text);font-size:1.05rem;color:var(--gris-light);font-style:italic;max-width:600px;margin:0 auto;line-height:1.8}

/* ============ INTRO SERVICE ============ */
.adt-page .svc-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}
.adt-page .svc-intro__desc{font-size:1rem;color:var(--noir3);line-height:1.85;margin-bottom:18px;font-style:italic}
.adt-page .svc-intro__img{position:relative;aspect-ratio:3/4;overflow:hidden}
.adt-page .svc-intro__img img{border-radius:0}
.adt-page .svc-intro__img::before{content:'';position:absolute;top:0;right:0;width:70px;height:70px;border-top:2px solid var(--gold);border-right:2px solid var(--gold);z-index:2}
.adt-page .svc-intro__img::after{content:'';position:absolute;bottom:0;left:0;width:70px;height:70px;border-bottom:2px solid var(--gold);border-left:2px solid var(--gold);z-index:2}

.adt-page .svc-intro__highlights{display:flex;flex-direction:column;gap:18px;margin-top:30px;padding-top:25px;border-top:1px solid var(--ivory3)}
.adt-page .svc-intro__hl{display:flex;gap:15px;align-items:flex-start}
.adt-page .svc-intro__hl-icon{font-size:.9rem;color:var(--gold);margin-top:4px;flex-shrink:0}
.adt-page .svc-intro__hl strong{font-family:var(--ff-ui);font-size:.85rem;font-weight:600;color:var(--noir);letter-spacing:.03em}
.adt-page .svc-intro__hl span{font-size:.85rem;color:var(--gris);font-style:italic}

/* ============ GRILLE TECHNIQUES ============ */
.adt-page .tech__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.adt-page .tech{background:var(--white);padding:35px 28px;border:1px solid var(--ivory2);transition:var(--transition);position:relative}
.adt-page .tech::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.adt-page .tech:hover::before{transform:scaleX(1)}
.adt-page .tech:hover{transform:translateY(-4px);box-shadow:0 15px 40px rgba(0,0,0,.05)}
.adt-page .tech__icon{font-family:var(--ff-display);font-size:2rem;color:var(--gold);opacity:.35;margin-bottom:15px;line-height:1}
.adt-page .tech__title{font-family:var(--ff-display);font-size:1.15rem;color:var(--noir);margin-bottom:10px}
.adt-page .tech__text{font-size:.88rem;color:var(--gris);line-height:1.75;font-style:italic}

/* ============ FAQ ============ */
.adt-page .faq{max-width:800px;margin:0 auto}
.adt-page .faq__item{border-bottom:1px solid var(--ivory3);overflow:hidden}
.adt-page .faq__item:first-child{border-top:1px solid var(--ivory3)}
.adt-page .faq__q{
  font-family:var(--ff-display);font-size:1.1rem;color:var(--noir);
  padding:22px 45px 22px 0;cursor:pointer;list-style:none;
  position:relative;transition:color .3s ease;
}
.adt-page .faq__q::-webkit-details-marker{display:none}
.adt-page .faq__q::after{
  content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);
  font-family:var(--ff-ui);font-size:1.4rem;font-weight:300;color:var(--gold);
  transition:transform .3s ease;
}
.adt-page .faq__item[open] .faq__q::after{content:'−'}
.adt-page .faq__item[open] .faq__q{color:var(--gold)}
.adt-page .faq__a{
  font-size:.92rem;color:var(--gris);line-height:1.8;font-style:italic;
  padding:0 0 22px;max-width:700px;
}

/* ============ RESPONSIVE PAGES INTÉRIEURES ============ */
@media(max-width:1024px){
  .adt-page .tech__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .adt-page .svc-intro{grid-template-columns:1fr;gap:35px}
  .adt-page .svc-intro__img{order:-1}
  .adt-page .tech__grid{grid-template-columns:1fr}
  .adt-page .hero-inner{height:45vh;min-height:320px}
}
