/* ==== GT Light concept – design inspiré de l'ancien site ==== */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Lora:wght@400;700&display=swap');

:root{
  --gt-bg:#454545; --gt-dark:#000; --gt-hero-bg:#232428; --gt-footer:#090d0f;
  --gt-accent:#8c7b6e; --gt-accent-hover:#a8968a; --gt-text:#fff; --gt-link:#e0cfc1;
  --cassiopeia-color-primary:#000; --cassiopeia-color-link:#e0cfc1; --cassiopeia-color-hover:#a8968a;
  --body-bg:#454545; --body-color:#fff; --link-color:#e0cfc1; --link-hover-color:#fff;
}
body.site{background:var(--gt-bg);color:var(--gt-text);font-family:'Lora',Georgia,serif;font-size:15px;line-height:1.6;}
h1,h2,h3,h4,.page-header h1,.page-header h2{font-family:'Lora',Georgia,serif;font-weight:400;color:#fff;}

/* ---- En-tête ---- */
.container-header{background:var(--gt-dark)!important;background-image:none!important;box-shadow:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 60px;padding:18px 20px;}
.container-header .grid-child{max-width:none;margin:0;padding:0;width:auto;}
.container-header .navbar-brand{padding:0;margin:0;}
.container-header .brand-logo img{max-height:50px;width:auto;}
.container-header .container-nav{flex:0 1 auto;}
.container-header .mod-menu{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 0;margin:0;padding:0;}
.container-header .mod-menu>li>a{font-family:'Lato',Arial,sans-serif;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.3px;color:#fff;padding:8px 7px;text-decoration:none;background:none;}
.container-header .mod-menu>li>a:hover,.container-header .mod-menu>li.active>a{color:var(--gt-accent-hover);}

/* ---- Diaporama d'accueil (3 diapositives en fondu, sans JavaScript) ---- */
.gt-slider{position:relative;width:100%;aspect-ratio:1920/1024;max-height:85vh;overflow:hidden;background:var(--gt-hero-bg);}
.gt-slide{position:absolute;inset:0;display:block;opacity:0;visibility:hidden;animation:gtFade 18s infinite;color:#fff;text-decoration:none;}
.gt-slide:nth-child(2){animation-delay:6s;}
.gt-slide:nth-child(3){animation-delay:12s;}
@keyframes gtFade{0%{opacity:0;visibility:visible}5%{opacity:1}33%{opacity:1}38%{opacity:0;visibility:hidden}100%{opacity:0;visibility:hidden}}
.gt-slide img{width:100%;height:100%;object-fit:cover;display:block;}
.gt-hero-txt{position:absolute;left:50%;top:58%;transform:translate(-50%,0);width:min(90%,800px);text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;}
.gt-hero-title{font-family:'Lato',Arial,sans-serif;font-weight:700;font-size:clamp(20px,2.2vw,34px);line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,.8);}
.gt-hero-sub{font-family:'Lora',Georgia,serif;font-size:clamp(14px,1.1vw,17px);text-shadow:0 1px 6px rgba(0,0,0,.9);}
.gt-btn{display:inline-block;margin-top:6px;padding:10px 20px;background:var(--gt-accent);color:#fff;font-family:'Lato',Arial,sans-serif;font-weight:700;font-size:12px;text-transform:uppercase;border-radius:2px;transition:background .3s;}
.gt-slide:hover .gt-btn{background:var(--gt-accent-hover);}
@media (prefers-reduced-motion:reduce){.gt-slide{animation:none}.gt-slide:first-child{opacity:1;visibility:visible}}

/* ---- Bande de tuiles ---- */
.container-banner{margin:0;padding:0;}
.gt-tiles{display:grid;grid-template-columns:repeat(5,1fr);background:#fff;}
.gt-tile{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;text-decoration:none;}
.gt-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease,filter .4s;}
.gt-tile:hover img{transform:scale(1.06);filter:brightness(.8);}
.gt-tile-title{position:absolute;left:20px;right:20px;bottom:30px;color:#fff;font-family:'Lato',Arial,sans-serif;font-weight:700;font-size:clamp(16px,1.5vw,22px);line-height:1.35;text-transform:uppercase;text-shadow:0 1px 6px rgba(0,0,0,.7);}

/* ---- Contenu ---- */
.site-grid{background:var(--gt-bg);}
.container-component{color:#fff;padding-top:30px;padding-bottom:40px;width:100%;max-width:960px!important;margin-left:auto!important;margin-right:auto!important;justify-self:center;}
.item-page .page-header + .page-header{display:none;}
.container-component a{color:var(--gt-link);}
.container-component a:hover{color:#fff;}
.item-page .page-header h1,.item-page .page-header h2{font-size:24px;margin-bottom:12px;}
.gt-galerie img{box-shadow:0 2px 8px rgba(0,0,0,.4);}
.gt-galerie a:hover img{opacity:.85;}

/* ---- Pied de page ---- */
.container-footer{background:var(--gt-footer)!important;background-image:none!important;color:#8f8f8f;font-size:12px;}
.container-footer .grid-child{padding:14px 20px;justify-content:center;}
.container-footer p{margin:0;text-align:center;}
.container-footer a{color:#bfb1a5;}
.back-to-top-link{background:var(--gt-accent);}

/* ---- Mobile ---- */
@media (max-width:991px){
  .gt-tiles{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:767px){
  .gt-slider{aspect-ratio:4/3;}
  .gt-hero-txt{top:auto;bottom:20px;}
  .gt-tiles{grid-template-columns:repeat(2,1fr);}
  .gt-tile-title{left:12px;bottom:14px;}
  .container-header{gap:6px;}
  .container-component{padding-left:16px;padding-right:16px;}
}
