:root{--gta-accent:#f28c00;--bg:#070707;--panel:#111;--panel2:#181818;--line:#303030;--text:#f3f3f3;--muted:#aaa;--max:1540px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.gtafr-site{margin:0;background:radial-gradient(circle at top,#242424 0,#0a0a0a 500px,#050505 100%);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.45}a{color:inherit}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:9999;background:#fff;color:#000;padding:.7rem}.site-header{background:#080808;border-bottom:1px solid #222}.hero{min-height:255px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;position:relative}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,.05),rgba(0,0,0,.4))}.hero__overlay{position:relative;z-index:1;text-align:center;padding:2rem}.hero__brand{text-decoration:none;display:flex;flex-direction:column;gap:.45rem}.hero__title{font-size:clamp(2rem,5vw,4.7rem);font-weight:900;letter-spacing:-.05em;text-transform:uppercase;color:#fff;text-shadow:0 4px 0 #000,0 0 12px #000}.hero__tagline{font-size:clamp(1rem,2.3vw,2rem);font-style:italic;color:#ffad3c;text-shadow:0 2px 4px #000}.main-nav{background:linear-gradient(#151515,#0b0b0b);border-top:1px solid #2d2d2d;border-bottom:2px solid var(--gta-accent)}.main-nav__inner{max-width:var(--max);margin:auto}.main-nav ul{list-style:none;margin:0;padding:0;display:flex}.main-nav li{border-right:1px solid #282828}.main-nav a{display:block;padding:1rem 1.6rem;text-decoration:none;text-transform:uppercase;font-weight:800}.main-nav a:hover,.main-nav a:focus{background:#1c1c1c;color:var(--gta-accent)}.nav-toggle{display:none;background:none;border:0;color:#fff;padding:1rem;font-weight:800}.site-shell{max-width:var(--max);margin:auto;padding:12px}.ad-slot{min-height:90px;background:linear-gradient(#1d1d1d,#101010);border:1px solid #494949;display:grid;place-items:center;color:#aaa;text-align:center;font-size:1.15rem;font-weight:800;margin-bottom:12px}.ad-slot small{font-size:.95rem}.portal-grid{display:grid;grid-template-columns:minmax(235px,285px) minmax(0,1fr) minmax(255px,315px);gap:12px;align-items:start}.sidebar,.main-column{min-width:0}.gta-game-card{display:grid;grid-template-columns:42% 58%;background:linear-gradient(135deg,#171717,#090909);border:1px solid var(--line);border-left:4px solid var(--gta-accent);margin-bottom:10px;overflow:hidden}.gta-game-card__image{width:100%;height:100%;min-height:150px;object-fit:cover}.gta-game-card__body{padding:.7rem}.gta-game-card h2{margin:0 0 .35rem;color:var(--gta-accent);font-size:1rem;text-transform:uppercase}.gta-game-card ul{list-style:none;margin:0;padding:0}.gta-game-card li{border-top:1px solid rgba(255,255,255,.08)}.gta-game-card a{display:block;padding:.28rem .1rem;text-decoration:none;font-size:.82rem}.gta-game-card a:before{content:"›";color:var(--gta-accent);margin-right:.35rem;font-weight:900}.gta-game-card a:hover{color:var(--gta-accent);padding-left:.25rem}.slider{position:relative;overflow:hidden;border:1px solid #353535;background:#000;min-height:430px}.slide{display:none;position:relative}.slide.is-active{display:block}.slide img{width:100%;height:430px;object-fit:cover;display:block}.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.88) 82%)}.slide__content{position:absolute;z-index:2;left:6%;right:6%;bottom:7%;text-align:center}.slide__content h1{font-size:clamp(1.6rem,3vw,2.8rem);margin:0 0 .4rem;text-transform:uppercase;text-shadow:0 2px 4px #000}.slide__content p{margin:.2rem auto 1rem;max-width:760px;color:#ddd}.button,.widget__button{display:inline-block;background:var(--gta-accent);color:#fff;padding:.72rem 1.3rem;text-decoration:none;text-transform:uppercase;font-weight:900;border:0}.button:hover,.widget__button:hover{filter:brightness(1.15)}.slider__prev,.slider__next{position:absolute;z-index:4;top:43%;transform:translateY(-50%);border:0;background:rgba(0,0,0,.55);color:#fff;font-size:3rem;width:45px;height:65px;cursor:pointer}.slider__prev{left:0}.slider__next{right:0}.slider__dots{position:absolute;z-index:5;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:8px}.slider__dots button{width:11px;height:11px;border-radius:50%;border:0;background:#eee;padding:0;opacity:.55}.slider__dots button.is-active{opacity:1;background:var(--gta-accent)}.content-panel,.widget,.module-card{background:var(--panel);border:1px solid var(--line);margin-top:10px}.section-heading,.widget__heading{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#1b1b1b,#101010);border-bottom:1px solid #333;padding:.65rem .8rem}.section-heading h2,.widget__heading h2{font-size:1rem;margin:0;text-transform:uppercase}.section-heading h2:before,.widget__heading h2:before{content:"◆";color:var(--gta-accent);margin-right:.45rem}.section-heading a{color:var(--gta-accent);font-size:.78rem;text-decoration:none;text-transform:uppercase;font-weight:900}.component-output{padding:1rem}.component-output img{max-width:100%;height:auto}.blog-items,.com-content-category-blog__items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.blog-item,.com-content-category-blog__item{background:#161616;border:1px solid #333;padding:.8rem}.blog-item h2,.com-content-category-blog__item h2{font-size:1.1rem}.widget__content{padding:.8rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:.75rem}.gallery-grid img{width:100%;height:72px;object-fit:cover;border:1px solid #444}.gallery-widget .widget__button,.forum-widget .widget__button{display:block;margin:0 .75rem .75rem;text-align:center;font-size:.8rem}.topic-list{list-style:none;margin:0;padding:.65rem}.topic-list li{padding:.55rem 0;border-bottom:1px solid #2d2d2d}.topic-list a{display:block;text-decoration:none;font-weight:800}.topic-list a:hover{color:var(--gta-accent)}.topic-list span{font-size:.78rem;color:var(--muted)}.popular-widget ol{margin:.6rem 0;padding:0 1rem 1rem 2.2rem}.popular-widget li{padding:.35rem 0}.popular-widget a{text-decoration:none}.popular-widget a:hover{color:var(--gta-accent)}.site-footer{margin-top:18px;background:linear-gradient(#151515,#090909);border-top:1px solid #333}.site-footer__inner{max-width:var(--max);margin:auto;padding:1.3rem;display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;color:#aaa}.site-footer strong{font-size:1.2rem;color:#fff;text-transform:uppercase}.site-footer nav{display:flex;gap:1rem}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--gta-accent)}.site-footer span{text-align:right;font-size:.85rem}.error-page,.component-only{margin:0;background:#0a0a0a;color:#fff;font-family:Arial,sans-serif;padding:2rem}.error-page main{max-width:700px;margin:15vh auto;text-align:center}.error-page h1{font-size:8rem;margin:0;color:var(--gta-accent)}
@media(max-width:1180px){.portal-grid{grid-template-columns:230px minmax(0,1fr)}.sidebar--right{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sidebar--right .gta-game-card{margin:0}.sidebar--right .widget{margin-top:0}.site-footer__inner{grid-template-columns:1fr}.site-footer span{text-align:left}}
@media(max-width:800px){.hero{min-height:180px}.nav-toggle{display:block}.main-nav__inner{display:none}.main-nav__inner.is-open{display:block}.main-nav ul{display:block}.main-nav li{border-right:0;border-top:1px solid #292929}.portal-grid{display:flex;flex-direction:column}.sidebar--left,.main-column,.sidebar--right{width:100%}.sidebar--left{order:2}.main-column{order:1}.sidebar--right{order:3;display:block}.slider,.slide img{min-height:320px;height:320px}.slide__content p{display:none}.blog-items,.com-content-category-blog__items{grid-template-columns:1fr}.gta-game-card{grid-template-columns:38% 62%}.site-footer nav{flex-wrap:wrap}}
@media(max-width:480px){.site-shell{padding:6px}.gta-game-card{grid-template-columns:1fr}.gta-game-card__image{height:125px;min-height:0}.slide__content h1{font-size:1.35rem}.main-nav a{padding:.85rem 1rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}}

/* Compatibilité avec les modules GTAFR - Jeux déjà installés */
.gta-games-list{display:grid;gap:10px}
.gta-games-list .gta-game-card{margin:0;min-height:150px}
.gta-game-card__visual{position:relative;min-height:150px;background-position:center;background-size:cover;display:flex;align-items:flex-end;padding:.8rem;overflow:hidden}
.gta-game-card__visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.88))}
.gta-game-card__visual .gta-game-card__title{position:relative;z-index:1;margin:0;color:#fff;font-size:1.05rem;text-shadow:0 2px 5px #000}
.gta-game-card__links{padding:.65rem!important;align-self:stretch;background:linear-gradient(135deg,#171717,#090909)}
.gta-game-card__visual--gta6{background-image:url('../images/games/gta6.jpg')}
.gta-game-card__visual--gta5{background-image:url('../images/games/gta5.jpg')}
.gta-game-card__visual--online{background-image:url('../images/games/online.jpg')}
.gta-game-card__visual--gta4{background-image:url('../images/games/gta4.jpg')}
.gta-game-card__visual--sanandreas{background-image:url('../images/games/sanandreas.jpg')}
.gta-game-card__visual--vicecity{background-image:url('../images/games/vicecity.jpg')}
.gta-game-card__visual--gta3{background-image:url('../images/games/gta3.jpg')}
.gta-game-card__visual--vcs{background-image:url('../images/games/vcs.jpg')}
.gta-game-card__visual--lcs{background-image:url('../images/games/lcs.jpg')}
.gta-game-card__visual--gta2{background-image:url('../images/games/gta2.jpg')}
.gta-game-card__visual--gta1{background-image:url('../images/games/gta1.jpg')}

@media(max-width:480px){.gta-game-card__visual{min-height:125px}}

/* GTAFR Complete 1.2.0 — bannière et cartes illustrées */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hero{min-height:320px;background-position:center center;background-repeat:no-repeat;background-size:cover;border-bottom:1px solid #29141e}
.hero::after{display:none}
.hero__image-link{position:absolute;inset:0;z-index:2;display:block}
.main-nav__inner{display:flex;justify-content:center;align-items:center}
.main-nav__inner>ul,.main-nav__inner .mod-menu,.main-nav ul{justify-content:center}

.gta-game-card{position:relative;display:grid!important;grid-template-columns:1fr!important;min-height:178px;isolation:isolate;background:#090909;border-left-width:4px}
.gta-game-card__visual{position:absolute!important;inset:0!important;z-index:0;min-height:0!important;padding:.75rem!important;background-position:center!important;background-size:cover!important}
.gta-game-card__visual::after{background:linear-gradient(90deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.28) 37%,rgba(0,0,0,.88) 60%,rgba(0,0,0,.96) 100%)!important}
.gta-game-card__visual .gta-game-card__title{position:absolute;left:.65rem;bottom:.55rem;max-width:48%;font-size:1rem!important;text-transform:uppercase;text-shadow:0 2px 5px #000,0 0 8px #000}
.gta-game-card__links{position:relative;z-index:2;width:52%;margin:0 0 0 auto!important;padding:.55rem .6rem!important;background:linear-gradient(90deg,rgba(8,8,8,.55),rgba(8,8,8,.94) 25%)!important;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.gta-game-card__links li{border-top:1px solid rgba(255,255,255,.09)}
.gta-game-card__links a{font-size:.79rem;padding:.22rem .05rem}
.sidebar--right .gta-game-card{min-height:168px}
.sidebar--right .gta-game-card__links{width:55%}

@media(max-width:800px){
  .hero{min-height:230px}
  .main-nav__inner{display:none}
  .main-nav__inner.is-open{display:block}
  .main-nav__inner>ul,.main-nav__inner .mod-menu,.main-nav ul{justify-content:flex-start}
}
@media(max-width:480px){
  .hero{min-height:170px}
  .gta-game-card{min-height:170px}
  .gta-game-card__links{width:56%}
  .gta-game-card__visual .gta-game-card__title{max-width:42%;font-size:.92rem!important}
}


/* GTAFR Complete 1.3.0 — clean banner, full menu, uncropped game art */
.hero{min-height:0!important;background:none!important;display:block;line-height:0;border-bottom:1px solid #29141e}
.hero__image-link{position:relative!important;display:block!important;inset:auto!important;z-index:auto!important}
.hero__img{display:block;width:100%;height:auto;max-width:1920px;margin:0 auto}
.main-nav__inner{display:flex!important;justify-content:center!important;align-items:center!important}
.main-nav__inner ul{display:flex;justify-content:center;align-items:center;gap:0;list-style:none;margin:0;padding:0;width:100%}
.main-nav__inner li{border-right:1px solid #292929}
.main-nav__inner li:first-child{border-left:1px solid #292929}
.main-nav__inner a{display:block;padding:1rem 1.55rem;text-decoration:none;text-transform:uppercase;font-weight:900;letter-spacing:.02em}
.main-nav__inner a:hover,.main-nav__inner a:focus{background:linear-gradient(#171717,#111);color:var(--gta-accent)}
/* Keep module menu hidden if user leaves one published */
nav.main-nav .mod-menu, nav.main-nav .module{display:none!important}

/* Game cards: show full artwork without cropping */
.gta-game-card{min-height:170px!important;overflow:hidden}
.gta-game-card__visual{background-size:contain!important;background-position:left center!important;background-repeat:no-repeat!important;background-color:#070707!important}
.gta-game-card__visual::after{background:linear-gradient(90deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.14) 34%,rgba(0,0,0,.78) 58%,rgba(0,0,0,.94) 100%)!important}
.gta-game-card__visual .gta-game-card__title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.gta-game-card__links{width:50%!important;background:linear-gradient(90deg,rgba(6,6,6,.18),rgba(6,6,6,.96) 24%)!important;padding:.55rem .65rem!important}
.sidebar--right .gta-game-card__links{width:52%!important}
.sidebar--left .gta-game-card,.sidebar--right .gta-game-card{margin-top:0}

@media(max-width:1180px){
  .hero__img{width:100%;height:auto}
}
@media(max-width:800px){
  .main-nav__inner{display:none!important}
  .main-nav__inner.is-open{display:block!important}
  .main-nav__inner ul{display:block;width:100%}
  .main-nav__inner li,.main-nav__inner li:first-child{border-left:0;border-right:0;border-top:1px solid #292929}
  .main-nav__inner a{padding:.95rem 1rem}
  .gta-game-card__links{width:56%!important}
}
@media(max-width:480px){
  .gta-game-card{min-height:160px!important}
  .gta-game-card__visual{background-size:cover!important;background-position:center center!important}
  .gta-game-card__links,.sidebar--right .gta-game-card__links{width:100%!important;background:linear-gradient(180deg,rgba(6,6,6,.3),rgba(6,6,6,.96) 24%)!important;padding-top:4rem!important;justify-content:flex-start!important}
}


/* GTAFR Complete 1.3.1 — alignment, mobile refinement and Kunena integration */
:root{--max:1680px}
.site-shell{padding:14px}
.portal-grid{
  grid-template-areas:"left main right";
  grid-template-columns:minmax(270px,300px) minmax(0,1fr) minmax(270px,300px);
  gap:14px;
  align-items:start;
}
.sidebar--left{grid-area:left}
.main-column{grid-area:main}
.sidebar--right{grid-area:right}
.sidebar{display:grid;gap:10px;align-content:start}
.sidebar .gta-games-list{gap:10px}
.sidebar .gta-game-card{margin:0!important;height:170px;min-height:170px!important}
.sidebar--right .gta-game-card{height:170px;min-height:170px!important}
.sidebar .widget{margin-top:0}
.main-column>*:first-child{margin-top:0}
.content-panel,.widget,.module-card,.slider,.ad-slot{border-color:#343434}
.section-heading,.widget__heading{min-height:46px}
.section-heading h2,.widget__heading h2{line-height:1.2}
.gta-game-card__links{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--gta-accent) #111}
.gta-game-card__links::-webkit-scrollbar{width:5px}
.gta-game-card__links::-webkit-scrollbar-track{background:#111}
.gta-game-card__links::-webkit-scrollbar-thumb{background:var(--gta-accent)}

/* Forum page: remove portal clutter and give Kunena the full content width */
.portal-grid--kunena{display:block;max-width:1380px;margin:0 auto}
.main-column--forum{width:100%}
.content-panel--kunena{margin-top:0;border-color:#373737;background:#0c0c0c;overflow:hidden}
.section-heading--forum{border-bottom:2px solid var(--gta-accent);padding:.85rem 1rem}
.section-heading--forum h1{margin:0;font-size:1.15rem;text-transform:uppercase;letter-spacing:.03em}
.section-heading--forum h1::before{content:"◆";color:var(--gta-accent);margin-right:.5rem}
.component-output--kunena{padding:12px;background:#0a0a0a}

/* Kunena 5/6/7 broad compatibility selectors */
body.is-kunena #kunena,
body.is-kunena #kunena.layout,
body.is-kunena .kunena,
body.is-kunena .kunena-wrapper,
body.is-kunena .kfrontend,
body.is-kunena .com-kunena{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  color:#eee!important;
  background:transparent!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
body.is-kunena #kunena a,
body.is-kunena .kunena a,
body.is-kunena .kfrontend a{color:#f1f1f1}
body.is-kunena #kunena a:hover,
body.is-kunena .kunena a:hover,
body.is-kunena .kfrontend a:hover{color:var(--gta-accent)}
body.is-kunena #kunena .kblock,
body.is-kunena #kunena .kcontainer,
body.is-kunena #kunena .card,
body.is-kunena .kunena .card,
body.is-kunena .kfrontend .card,
body.is-kunena .kunena-category,
body.is-kunena .kunena-topic,
body.is-kunena .kunena-section{
  background:#111!important;
  border:1px solid #343434!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#eee!important;
  margin-bottom:10px!important;
}
body.is-kunena #kunena .kheader,
body.is-kunena #kunena .kblock-title,
body.is-kunena #kunena .card-header,
body.is-kunena .kunena .card-header,
body.is-kunena .kfrontend .card-header,
body.is-kunena .kunena-category-header,
body.is-kunena .kunena-section-header{
  background:linear-gradient(#1d1d1d,#101010)!important;
  border:0!important;
  border-bottom:2px solid var(--gta-accent)!important;
  color:#fff!important;
  border-radius:0!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}
body.is-kunena #kunena .kbody,
body.is-kunena #kunena .card-body,
body.is-kunena .kunena .card-body,
body.is-kunena .kfrontend .card-body{background:#101010!important;color:#e7e7e7!important}
body.is-kunena #kunena table,
body.is-kunena #kunena .table,
body.is-kunena .kunena table,
body.is-kunena .kunena .table,
body.is-kunena .kfrontend table,
body.is-kunena .kfrontend .table{
  width:100%!important;
  color:#eee!important;
  background:#111!important;
  border-color:#343434!important;
}
body.is-kunena #kunena th,
body.is-kunena .kunena th,
body.is-kunena .kfrontend th{
  background:#181818!important;
  color:#fff!important;
  border-color:#3b3b3b!important;
  text-transform:uppercase!important;
  font-size:.82rem!important;
}
body.is-kunena #kunena td,
body.is-kunena .kunena td,
body.is-kunena .kfrontend td{
  background:#111!important;
  color:#ddd!important;
  border-color:#303030!important;
}
body.is-kunena #kunena tr:hover td,
body.is-kunena .kunena tr:hover td,
body.is-kunena .kfrontend tr:hover td{background:#171717!important}
body.is-kunena #kunena .nav,
body.is-kunena #kunena .nav-tabs,
body.is-kunena #kunena .navbar,
body.is-kunena .kunena .nav,
body.is-kunena .kunena .nav-tabs,
body.is-kunena .kunena .navbar,
body.is-kunena .kfrontend .nav,
body.is-kunena .kfrontend .nav-tabs,
body.is-kunena .kfrontend .navbar{
  background:#111!important;
  border-color:#343434!important;
  color:#fff!important;
}
body.is-kunena #kunena .nav-link,
body.is-kunena .kunena .nav-link,
body.is-kunena .kfrontend .nav-link{
  color:#ddd!important;
  border-radius:0!important;
  border-color:transparent!important;
}
body.is-kunena #kunena .nav-link.active,
body.is-kunena #kunena .nav-link:hover,
body.is-kunena .kunena .nav-link.active,
body.is-kunena .kunena .nav-link:hover,
body.is-kunena .kfrontend .nav-link.active,
body.is-kunena .kfrontend .nav-link:hover{
  color:#fff!important;
  background:#1b1b1b!important;
  border-bottom:2px solid var(--gta-accent)!important;
}
body.is-kunena #kunena .breadcrumb,
body.is-kunena .kunena .breadcrumb,
body.is-kunena .kfrontend .breadcrumb{
  background:#0e0e0e!important;
  color:#aaa!important;
  border:1px solid #303030!important;
  border-radius:0!important;
  padding:.65rem .8rem!important;
}
body.is-kunena #kunena .btn,
body.is-kunena #kunena button,
body.is-kunena .kunena .btn,
body.is-kunena .kunena button,
body.is-kunena .kfrontend .btn,
body.is-kunena .kfrontend button{
  border-radius:0!important;
  box-shadow:none!important;
  border-color:#454545!important;
}
body.is-kunena #kunena .btn-primary,
body.is-kunena #kunena .btn-success,
body.is-kunena .kunena .btn-primary,
body.is-kunena .kunena .btn-success,
body.is-kunena .kfrontend .btn-primary,
body.is-kunena .kfrontend .btn-success{
  background:var(--gta-accent)!important;
  border-color:var(--gta-accent)!important;
  color:#fff!important;
  font-weight:900!important;
}
body.is-kunena #kunena input,
body.is-kunena #kunena select,
body.is-kunena #kunena textarea,
body.is-kunena .kunena input,
body.is-kunena .kunena select,
body.is-kunena .kunena textarea,
body.is-kunena .kfrontend input,
body.is-kunena .kfrontend select,
body.is-kunena .kfrontend textarea{
  background:#090909!important;
  color:#eee!important;
  border:1px solid #3b3b3b!important;
  border-radius:0!important;
}
body.is-kunena #kunena input:focus,
body.is-kunena #kunena select:focus,
body.is-kunena #kunena textarea:focus,
body.is-kunena .kunena input:focus,
body.is-kunena .kunena select:focus,
body.is-kunena .kunena textarea:focus,
body.is-kunena .kfrontend input:focus,
body.is-kunena .kfrontend select:focus,
body.is-kunena .kfrontend textarea:focus{
  border-color:var(--gta-accent)!important;
  box-shadow:0 0 0 2px rgba(242,140,0,.18)!important;
  outline:0!important;
}
body.is-kunena #kunena .pagination .page-link,
body.is-kunena .kunena .pagination .page-link,
body.is-kunena .kfrontend .pagination .page-link{
  background:#111!important;
  color:#eee!important;
  border-color:#343434!important;
  border-radius:0!important;
}
body.is-kunena #kunena .pagination .active .page-link,
body.is-kunena .kunena .pagination .active .page-link,
body.is-kunena .kfrontend .pagination .active .page-link{
  background:var(--gta-accent)!important;
  border-color:var(--gta-accent)!important;
  color:#fff!important;
}
body.is-kunena #kunena img,
body.is-kunena .kunena img,
body.is-kunena .kfrontend img{max-width:100%;height:auto}

/* Tablet: content first, sidebars aligned below */
@media(max-width:1180px){
  :root{--max:1180px}
  .portal-grid{
    grid-template-areas:"main main" "left right";
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:14px;
  }
  .sidebar--right{display:grid;grid-template-columns:1fr;grid-column:auto}
  .sidebar--left,.sidebar--right{align-self:start}
  .sidebar .gta-game-card{height:168px;min-height:168px!important}
  .site-footer__inner{grid-template-columns:1fr;text-align:center}
  .site-footer nav{justify-content:center;flex-wrap:wrap}
  .site-footer span{text-align:center}
}

/* Mobile: single column, readable menu and cards */
@media(max-width:760px){
  .site-shell{padding:8px}
  .portal-grid{
    grid-template-areas:"main" "left" "right";
    grid-template-columns:minmax(0,1fr);
    gap:10px;
  }
  .nav-toggle{display:flex;width:100%;align-items:center;justify-content:center;gap:.4rem}
  .main-nav__inner{display:none!important}
  .main-nav__inner.is-open{display:block!important}
  .main-nav__inner ul{display:block!important}
  .main-nav__inner li,.main-nav__inner li:first-child{border:0;border-top:1px solid #292929}
  .main-nav__inner a{text-align:center;padding:.9rem 1rem}
  .slider,.slide img{height:clamp(245px,58vw,340px);min-height:245px}
  .slide__content{left:4%;right:4%;bottom:8%}
  .slide__content h1{font-size:clamp(1.25rem,5.6vw,1.8rem)}
  .slide__content p{display:none}
  .slider__prev,.slider__next{width:38px;height:56px;font-size:2.2rem}
  .sidebar .gta-game-card,.sidebar--right .gta-game-card{height:166px;min-height:166px!important}
  .gta-game-card__links,.sidebar--right .gta-game-card__links{width:54%!important}
  .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .component-output{padding:.7rem}
  body.is-kunena .component-output--kunena{padding:6px}
  body.is-kunena #kunena table,
  body.is-kunena .kunena table,
  body.is-kunena .kfrontend table{font-size:.84rem!important}
  body.is-kunena #kunena .table-responsive,
  body.is-kunena .kunena .table-responsive,
  body.is-kunena .kfrontend .table-responsive{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
}

@media(max-width:480px){
  .hero__img{min-height:118px;object-fit:cover;object-position:center}
  .ad-slot{min-height:70px;font-size:.95rem}
  .sidebar .gta-game-card,.sidebar--right .gta-game-card{height:158px;min-height:158px!important}
  .gta-game-card__visual{background-size:contain!important;background-position:left center!important}
  .gta-game-card__links,.sidebar--right .gta-game-card__links{
    width:58%!important;
    padding:.45rem .5rem!important;
    padding-top:.45rem!important;
    background:linear-gradient(90deg,rgba(5,5,5,.15),rgba(5,5,5,.97) 20%)!important;
  }
  .gta-game-card__links a{font-size:.75rem;padding:.18rem .02rem}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-heading{align-items:flex-start;gap:.5rem;flex-direction:column}
  .section-heading a{align-self:flex-start}
  .section-heading--forum{display:block}
  .section-heading--forum h1{font-size:1rem}
}


/* GTAFR Complete 1.3.2 — sidebars restored around Kunena + full-width banner */
:root{--max:1900px}
.hero{width:100%;max-width:none!important;overflow:hidden;background:#080808}
.hero__image-link{width:100%;max-width:none!important}
.hero__img{display:block;width:100vw!important;max-width:none!important;height:auto!important;margin:0!important;transform:none!important;object-fit:fill!important}
.site-shell{max-width:1900px}
.portal-grid--kunena{
  display:grid!important;
  grid-template-areas:"left main right"!important;
  grid-template-columns:minmax(235px,270px) minmax(0,1fr) minmax(245px,285px)!important;
  gap:14px!important;
  max-width:none!important;
  margin:0!important;
  align-items:start!important;
}
.portal-grid--kunena .sidebar--left{grid-area:left!important;display:block!important}
.portal-grid--kunena .main-column--forum{grid-area:main!important;width:auto!important;max-width:none!important;margin:0!important;min-width:0!important}
.portal-grid--kunena .sidebar--right{grid-area:right!important;display:block!important;grid-column:auto!important}
.portal-grid--kunena .content-panel--kunena{margin-top:0!important}
.portal-grid--kunena .sidebar .gta-game-card{height:168px;min-height:168px!important}
.portal-grid--kunena .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.portal-grid--kunena .gallery-grid img{height:82px}

@media(max-width:1380px){
  :root{--max:1360px}
  .portal-grid--kunena{
    grid-template-columns:minmax(205px,225px) minmax(0,1fr) minmax(215px,235px)!important;
    gap:10px!important;
  }
  .portal-grid--kunena .sidebar .gta-game-card{height:160px;min-height:160px!important}
  .portal-grid--kunena .gta-game-card__links{width:56%!important}
}

@media(max-width:1080px){
  .portal-grid--kunena{
    grid-template-areas:"main main" "left right"!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;
  }
  .portal-grid--kunena .main-column--forum{grid-column:1/-1!important}
  .portal-grid--kunena .sidebar--left,
  .portal-grid--kunena .sidebar--right{display:block!important}
}

@media(max-width:760px){
  .hero__img{width:100%!important;min-height:145px!important;object-fit:cover!important;object-position:center center!important}
  .portal-grid--kunena{
    grid-template-areas:"main" "left" "right"!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .portal-grid--kunena .main-column--forum,
  .portal-grid--kunena .sidebar--left,
  .portal-grid--kunena .sidebar--right{grid-column:1!important}
}


/* GTAFR Complete 1.3.5 — compact banner and simple game menus */
:root{--max:1680px}
.site-header{padding-top:10px}
.hero{
  width:100%!important;
  max-width:var(--max)!important;
  margin:0 auto!important;
  padding:0 14px!important;
  overflow:visible!important;
  background:transparent!important;
}
.hero__image-link{display:block!important;width:100%!important;max-width:none!important}
.hero__img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  min-height:0!important;
  object-fit:contain!important;
  margin:0!important;
  border:1px solid #2b2b2b;
}
.main-nav__inner,.site-shell,.site-footer__inner{max-width:var(--max)!important}

/* Hide Joomla front-end module editing controls and their position labels. */
.jmodedit,.jmodeditbtn,.btn.jmodedit,[class*="jmodedit"],
.module-edit,.module-editable>.btn-group,.module-position,
[data-joomla-edit-module],a[href*="task=module.edit"]{display:none!important}

/* New cards inspired by the requested classic portal menu. */
.gta-games-list--menus{display:grid;gap:10px}
.gta-menu-card{
  overflow:hidden;
  background:#050505;
  border:1px solid #343434;
  border-radius:14px 14px 0 0;
  box-shadow:0 1px 8px rgba(0,0,0,.75);
}
.gta-menu-card__header{
  min-height:68px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:4px 10px 4px 6px;
  background:linear-gradient(#262626,#141414);
  border-bottom:1px solid #373737;
}
.gta-menu-card__logo{
  display:block;
  flex:0 0 104px;
  width:104px;
  height:64px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}
.gta-menu-card__heading{display:flex;min-width:0;flex-direction:column;line-height:1.05}
.gta-menu-card__heading strong{font-size:1.22rem;color:#eee}
.gta-menu-card__heading small{margin-top:4px;color:var(--gta-accent);font-size:.68rem;font-weight:800;text-transform:uppercase;white-space:normal}
.gta-menu-card__body{padding:0 10px 10px;background:#020202}
.gta-menu-card__body h3{margin:0 -10px 7px;padding:3px 10px 5px;color:#ddd;font-size:1rem;font-weight:400;border-bottom:1px solid #222}
.gta-menu-card__body ul{list-style:none;margin:0;padding:0 0 0 15px}
.gta-menu-card__body li{position:relative;margin:0;border:0}
.gta-menu-card__body li::before{content:"■";position:absolute;left:-14px;top:.42rem;color:#b8d1e3;font-size:.48rem}
.gta-menu-card__body a{display:block;padding:.18rem 0;color:#4f9cff;text-decoration:none;font-size:.9rem;line-height:1.22}
.gta-menu-card__body a::before{display:none!important;content:none!important}
.gta-menu-card__body a:hover,.gta-menu-card__body a:focus{color:#fff;text-decoration:underline;padding-left:0}

.gta-menu-card__logo--gta6{background-image:url('../images/logos/gta6.png')}
.gta-menu-card__logo--gta5{background-image:url('../images/logos/gta5.png')}
.gta-menu-card__logo--online{background-image:url('../images/logos/online.png')}
.gta-menu-card__logo--gta4{background-image:url('../images/logos/gta4.png')}
.gta-menu-card__logo--sanandreas{background-image:url('../images/logos/sanandreas.png')}
.gta-menu-card__logo--vicecity{background-image:url('../images/logos/vicecity.png')}
.gta-menu-card__logo--gta3{background-image:url('../images/logos/gta3.png')}
.gta-menu-card__logo--vcs{background-image:url('../images/logos/vcs.png')}
.gta-menu-card__logo--lcs{background-image:url('../images/logos/lcs.png')}
.gta-menu-card__logo--gta2{background-image:url('../images/logos/gta2.png')}
.gta-menu-card__logo--gta1{background-image:url('../images/logos/gta1.png')}

@media(max-width:1180px){
  .hero{padding:0 12px!important}
  .gta-menu-card__logo{flex-basis:92px;width:92px;height:58px}
}
@media(max-width:760px){
  .site-header{padding-top:6px}
  .hero{padding:0 8px!important}
  .gta-menu-card{border-radius:10px 10px 0 0}
  .gta-menu-card__header{min-height:62px}
  .gta-menu-card__body a{font-size:.94rem;padding:.24rem 0}
}
@media(max-width:420px){
  .gta-menu-card__logo{flex-basis:82px;width:82px;height:54px}
  .gta-menu-card__heading strong{font-size:1.08rem}
  .gta-menu-card__heading small{font-size:.62rem}
}


/* GTAFR Complete 1.3.6 — no frontend edit controls + members widgets */
.jmodedit,
.jmodeditbtn,
.jmodedit-container,
.jmodedit-overlay,
.btn.jmodedit,
button.jmodedit,
a.jmodedit,
[class^="jmodedit"],
[class*=" jmodedit"],
[data-joomla-edit-module],
[data-joomla-editable],
.module-edit,
.module-editable > .btn-group,
.module-position,
a[href*="task=module.edit"],
a[href*="view=module"],
[data-content-select]{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important}

.online-widget,.member-widget{margin-top:10px}
.online-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
.online-stat{display:flex;min-height:72px;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#191919,#0b0b0b);border:1px solid #303030;text-align:center}
.online-stat strong{color:var(--gta-accent);font-size:1.75rem;line-height:1}
.online-stat span{margin-top:5px;color:#d7d7d7;font-size:.76rem;text-transform:uppercase}

.member-login-form,.member-account{padding:11px}
.member-login-form label{display:block;margin:0 0 4px;color:#d8d8d8;font-size:.78rem;font-weight:700}
.member-login-form input[type="text"],
.member-login-form input[type="password"]{display:block;width:100%;height:36px;margin:0 0 9px;padding:0 9px;background:#090909;color:#fff;border:1px solid #383838;border-radius:2px;box-sizing:border-box}
.member-login-form input[type="text"]:focus,
.member-login-form input[type="password"]:focus{outline:1px solid var(--gta-accent);border-color:var(--gta-accent)}
.member-login-form__remember{display:flex!important;align-items:center;gap:7px;margin:1px 0 10px!important;font-weight:400!important}
.member-login-form__remember input{margin:0}
.member-login-form__submit{display:block;width:100%;padding:.7rem .8rem;background:var(--gta-accent);color:#fff;border:0;font-weight:900;text-transform:uppercase;cursor:pointer}
.member-login-form__submit:hover,.member-login-form__submit:focus{filter:brightness(1.13)}
.member-login-form__links{display:flex;flex-wrap:wrap;justify-content:center;gap:5px 12px;margin-top:10px;text-align:center}
.member-login-form__links a{color:#bcbcbc;font-size:.75rem;text-decoration:none}
.member-login-form__links a:hover{color:var(--gta-accent);text-decoration:underline}
.member-account p{margin:0 0 10px;color:#ddd}

@media(max-width:1180px){
  .online-stats{grid-template-columns:1fr}
}
@media(max-width:760px){
  .online-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:380px){
  .online-stats{grid-template-columns:1fr}
}


/* GTAFR Complete 1.3.7 — approved saga banner and simplified game menus */
.gta-menu-card__body{padding-top:8px}
.gta-menu-card__body h3{display:none!important}
.gta-menu-card__body ul{padding-top:0}
.hero__img{aspect-ratio:1900/633;object-fit:contain!important;background:#070707}
@media(max-width:760px){
  .hero__img{aspect-ratio:auto;object-fit:contain!important;min-height:0!important}
}


/* GTAFR Complete 1.3.8 — game title only */
.gta-menu-card__heading{justify-content:center}
.gta-menu-card__heading strong{font-size:1.12rem;line-height:1.15;color:#f2f2f2}


/* GTAFR Complete 1.3.9 */
.gta-menu-card__logo--site{background-image:url('../images/logos/site.png')}
.gta-menu-card__logo--chinatown{background-image:url('../images/logos/chinatown.png')}
.gta-menu-card--site{border-color:#5b2d76}
.gta-menu-card--site .gta-menu-card__heading strong{color:#f29bdc;text-transform:uppercase}
.gta-menu-card--chinatown{border-color:#c33b30}

.member-login-form__links a:first-child{color:var(--gta-accent);font-weight:900}

.site-footer{position:relative;border-top:3px solid transparent;border-image:linear-gradient(90deg,#1655b5 0 33.33%,#f4f4f4 33.33% 66.66%,#df1d2f 66.66% 100%) 1;background:radial-gradient(circle at center top,#171717,#080808 70%)}
.site-footer__inner--v139{max-width:var(--max);display:grid;grid-template-columns:minmax(240px,1fr) minmax(380px,1.5fr) minmax(300px,1fr);gap:28px;align-items:center;padding:1.45rem 1.2rem}
.footer-brand{font-size:clamp(1.1rem,1.8vw,1.65rem);font-weight:1000;letter-spacing:-.04em;text-transform:lowercase;white-space:nowrap;text-shadow:0 2px 2px #000}
.footer-brand__blue{color:#2464c6}.footer-brand__white{color:#fff}.footer-brand__red{color:#e1293e}
.footer-center{text-align:center;color:#aaa}
.footer-center p{margin:.15rem 0}
.footer-copyright{color:#eee;font-weight:800}
.footer-disclaimer{font-size:.8rem}
.footer-rockstar{display:inline-block;margin-top:.45rem;color:#ddd;text-decoration:none;border-bottom:1px solid var(--gta-accent)}
.footer-rockstar:hover{color:var(--gta-accent)}
.footer-links{display:flex!important;justify-content:flex-end;gap:0!important;flex-wrap:wrap}
.footer-links a{padding:.25rem .65rem;color:#ddd;border-right:1px solid #555}
.footer-links a:last-child{border-right:0;color:var(--gta-accent);font-weight:900}
.footer-links a:hover{color:#fff}

@media(max-width:1050px){
  .site-footer__inner--v139{grid-template-columns:1fr;text-align:center;gap:12px}
  .footer-links{justify-content:center}
}
@media(max-width:480px){
  .footer-brand{white-space:normal}
  .footer-links a{width:50%;border-right:0;border-bottom:1px solid #333;text-align:center;padding:.55rem}
}


/* GTAFR Complete 1.4.0 */
/* Navigation bar aligned exactly with the three-column portal. */
.main-nav{width:calc(100% - 28px)!important;max-width:var(--max)!important;margin:0 auto!important}
.main-nav__inner{max-width:none!important;width:100%!important}

/* Game cards: logo only, centered, larger and cleaner. */
.gta-menu-card__header--game{justify-content:center!important;padding:7px!important;min-height:88px!important}
.gta-menu-card__header--game .gta-menu-card__logo{flex:0 0 150px!important;width:150px!important;height:76px!important;background-position:center!important}
.gta-menu-card__header--game .gta-menu-card__heading{display:none!important}

/* Article pages: no slider/header clutter, metadata at the bottom in one line. */
.content-panel--article{margin-top:0!important}
.component-output--article{padding:1rem 1.15rem 1.2rem!important}
.com-content-article .article-info,.com-content-article .article-info-term{display:none!important}
.gta-article-meta{display:flex;justify-content:flex-end;gap:1rem;flex-wrap:wrap;margin-top:1.4rem;padding-top:.75rem;border-top:1px solid #333;color:#aaa;font-size:.82rem}
.gta-article-meta strong,.gta-article-meta a{color:#eee}
.gta-article-meta a:hover{color:var(--gta-accent)}

/* Larger French-flag footer brand. */
.footer-brand{font-size:clamp(1.55rem,2.5vw,2.45rem)!important;line-height:1!important}

@media(max-width:760px){
  .main-nav{width:calc(100% - 16px)!important}
  .gta-menu-card__header--game{min-height:78px!important}
  .gta-menu-card__header--game .gta-menu-card__logo{flex-basis:132px!important;width:132px!important;height:68px!important}
  .gta-article-meta{justify-content:flex-start;gap:.45rem .8rem}
}


/* GTAFR Complete 1.4.1 */
.widget__heading--image{padding:0;background:none;border:none}
.widget__heading--image img{display:block;width:100%;max-width:360px;height:auto;margin:0 auto}
.gta-menu-card--site .gta-menu-card__header{justify-content:center;padding-bottom:.4rem}
.gta-menu-card--site .gta-menu-card__heading{display:none!important}
.gta-menu-card--site .gta-menu-card__logo{width:100%;max-width:280px;height:86px;margin:0 auto;background-position:center center;background-size:contain}
.topic-list li span{display:none}
.partner-rockstar{display:block;text-align:center;padding:1rem 0}
.partner-rockstar img{display:inline-block;max-width:220px;width:100%;height:auto;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0f0f0f;box-shadow:0 10px 25px rgba(0,0,0,.25)}
.partners-box{display:flex;justify-content:center;align-items:center;min-height:120px}
.gallery-widget .gallery-grid{margin-top:.35rem}
.widget.online-widget .widget__heading, .widget.member-widget .widget__heading, .widget.gallery-widget .widget__heading, .widget.forum-widget .widget__heading, .widget.partners-widget .widget__heading{margin-bottom:.7rem}


/* GTAFR Complete 1.4.2 */
.widget__heading--image{padding:0!important;background:#08080c!important;border:0!important;overflow:hidden}
.widget__heading--image img{display:block!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important}
.partners-widget{display:block!important}
.partners-box{display:flex;align-items:center;justify-content:center;padding:.8rem;min-height:140px;background:linear-gradient(180deg,#101014,#070708)}
.partner-rockstar{display:block;width:100%;text-align:center}
.partner-rockstar img{display:inline-block;width:min(100%,300px);height:auto;border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.55)}
.popular-widget{display:none!important}
.footer-brand{font-size:clamp(2.5rem,4.6vw,5.4rem)!important;line-height:.9!important;letter-spacing:-.07em!important}
.site-footer__inner--v139{grid-template-columns:minmax(410px,1.25fr) minmax(330px,1fr) minmax(300px,.85fr)!important}
.pagenavigation,.com-content-article__navigation,.pager.pagenav,.pagination.pagenavigation{display:none!important}
.topic-list li{padding:.58rem .6rem!important}
.topic-list a{display:block;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1180px){.site-footer__inner--v139{grid-template-columns:1fr!important}.footer-brand{font-size:clamp(2.8rem,8vw,5rem)!important}}


/* GTAFR Complete 1.4.3 — AdSense and final alignment */
/* Banner and navigation now share exactly the same outer width. */
.hero,.main-nav{
  width:calc(100% - 28px)!important;
  max-width:var(--max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.hero__img{width:100%!important;border-radius:0!important}
.main-nav{overflow:hidden!important}
.main-nav__inner{width:100%!important;max-width:none!important}
.main-nav__inner ul{width:100%!important;justify-content:center!important}

/* AdSense containers and GTA-style placeholders. */
.ad-slot--adsense{overflow:hidden;padding:0!important;background:#08080b!important;border-color:#3b3b3f!important}
.ad-slot--adsense ins.adsbygoogle{min-height:90px;width:100%!important}
.ad-placeholder{display:block;max-width:100%;height:auto;margin:0 auto}
.ad-placeholder--banner{width:min(100%,728px)}
.ad-placeholder--sidebar{width:min(100%,300px)}
.advertising-widget{display:block!important}
.side-ad-content{display:flex;align-items:center;justify-content:center;min-height:250px;padding:.7rem;background:linear-gradient(180deg,#101014,#070708)}
.side-ad-content ins.adsbygoogle{width:100%;min-height:250px}
.footer-ad-shell{max-width:var(--max);margin:0 auto;padding:12px 14px 18px}
.ad-slot--footer{margin:0;min-height:90px}

/* Restore a substantially larger tricolour footer signature. */
.footer-brand{font-size:clamp(3.2rem,5.4vw,6.8rem)!important;line-height:.82!important;letter-spacing:-.075em!important;white-space:nowrap!important;align-self:center}
.site-footer__inner--v139{grid-template-columns:minmax(520px,1.5fr) minmax(330px,1fr) minmax(280px,.8fr)!important}

@media(max-width:1180px){
  .site-footer__inner--v139{grid-template-columns:1fr!important}
  .footer-brand{font-size:clamp(3.4rem,8.5vw,6.2rem)!important;text-align:center;white-space:normal!important}
}
@media(max-width:760px){
  .hero,.main-nav{width:calc(100% - 16px)!important}
  .main-nav__inner ul{justify-content:flex-start!important}
  .footer-ad-shell{padding:8px 8px 14px}
  .footer-brand{font-size:clamp(2.7rem,12vw,4.5rem)!important}
}


/* GTAFR Complete 1.4.4 — GTA VI countdown and clean contact page */
.gta6-countdown{position:relative;min-height:430px;overflow:hidden;border:1px solid #353535;background:#050505;isolation:isolate}
.gta6-countdown__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-3}
.gta6-countdown__overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.46) 44%,rgba(0,0,0,.94) 100%),linear-gradient(90deg,rgba(20,0,20,.25),transparent 45%,rgba(255,105,0,.12))}
.gta6-countdown__content{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:2rem 1.2rem 2.2rem;text-align:center;text-shadow:0 3px 8px #000}
.gta6-countdown__eyebrow{margin:0 0 .35rem;color:#ff9bd9;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.gta6-countdown h1{margin:0 0 1.15rem;font-size:clamp(1.65rem,3.4vw,3.15rem);line-height:1;text-transform:uppercase;color:#fff}
.gta6-countdown__grid{display:grid;grid-template-columns:repeat(4,minmax(85px,125px));gap:.65rem;justify-content:center}
.gta6-countdown__unit{display:grid;place-items:center;min-height:92px;padding:.65rem .5rem;background:linear-gradient(180deg,rgba(22,22,22,.88),rgba(4,4,4,.92));border:1px solid rgba(255,255,255,.18);border-bottom:3px solid #ff6faf;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.gta6-countdown__unit strong{font-size:clamp(1.65rem,3vw,2.55rem);line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.gta6-countdown__unit span{margin-top:.35rem;color:#ddd;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.gta6-countdown__date{margin:.95rem 0 0;color:#fff;font-size:1rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.gta6-countdown.is-released .gta6-countdown__grid{display:none}
.gta6-countdown.is-released h1{color:#ff9bd9}

.gta-contact-form-only{max-width:900px;margin:0 auto}
.gta-contact-panel{background:var(--panel);border:1px solid var(--line)}
.section-heading--contact h1{margin:0;font-size:1.15rem;text-transform:uppercase}
.gta-contact-panel__body{padding:1.1rem}
.gta-contact-panel__body .control-group{margin-bottom:1rem}
.gta-contact-panel__body label{display:block;margin-bottom:.35rem;font-weight:800}
.gta-contact-panel__body input[type="text"],
.gta-contact-panel__body input[type="email"],
.gta-contact-panel__body textarea,
.gta-contact-panel__body select{width:100%;padding:.72rem .8rem;background:#0b0b0b;color:#fff;border:1px solid #444;border-radius:0}
.gta-contact-panel__body textarea{min-height:170px;resize:vertical}
.gta-contact-panel__body button,
.gta-contact-panel__body .btn-primary{background:var(--gta-accent);color:#fff;border:0;padding:.75rem 1.2rem;font-weight:900;text-transform:uppercase}
.gta-contact-form-only .icons,
.gta-contact-form-only .btn-group,
.gta-contact-form-only .badge,
.gta-contact-form-only .contact-name,
.gta-contact-form-only .contact-category,
.gta-contact-form-only .contact-details{display:none!important}

@media(max-width:800px){
  .gta6-countdown,.gta6-countdown__content{min-height:360px}
  .gta6-countdown__grid{grid-template-columns:repeat(2,minmax(105px,145px))}
}
@media(max-width:480px){
  .gta6-countdown,.gta6-countdown__content{min-height:400px}
  .gta6-countdown__content{padding:1.3rem .75rem 1.5rem}
  .gta6-countdown__grid{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
  .gta6-countdown__unit{min-height:78px}
}


/* GTAFR Complete 1.4.5 — footer propre et parfaitement aligné */
.footer-brand{display:none!important}
.site-footer__inner--clean{
  position:relative;
  max-width:var(--max);
  min-height:132px;
  margin:0 auto;
  padding:1.45rem 1.35rem;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#aaa;
}
.site-footer__inner--clean .footer-center{
  width:min(100%,680px);
  margin:0 auto;
  text-align:center;
}
.site-footer__inner--clean .footer-copyright{
  margin:0 0 .18rem;
  color:#fff;
  font-size:1rem;
  font-weight:900;
  line-height:1.25;
}
.site-footer__inner--clean .footer-disclaimer{
  margin:.12rem 0 .55rem;
  color:#b9b9b9;
  font-size:.83rem;
  line-height:1.35;
}
.site-footer__inner--clean .footer-rockstar{
  display:inline-block;
  color:#fff;
  border-bottom:2px solid var(--gta-accent);
  text-decoration:none;
  line-height:1.3;
}
.site-footer__inner--clean .footer-links{
  position:absolute;
  right:1.35rem;
  top:50%;
  transform:translateY(-50%);
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:nowrap;
  white-space:nowrap;
  gap:0!important;
}
.site-footer__inner--clean .footer-links a{
  display:block;
  padding:.3rem .7rem;
  color:#ededed;
  border-right:1px solid #555;
  text-decoration:none;
  line-height:1.2;
}
.site-footer__inner--clean .footer-links a:last-child{
  border-right:0;
  color:var(--gta-accent);
  font-weight:900;
}
.site-footer__inner--clean .footer-links a:hover,
.site-footer__inner--clean .footer-links a:focus{color:#fff}

@media(max-width:1280px){
  .site-footer__inner--clean{
    min-height:0;
    padding:1.25rem 1rem;
    flex-direction:column;
    gap:.85rem;
  }
  .site-footer__inner--clean .footer-links{
    position:static;
    transform:none;
    justify-content:center;
    flex-wrap:wrap;
  }
}
@media(max-width:620px){
  .site-footer__inner--clean .footer-links{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
  }
  .site-footer__inner--clean .footer-links a{
    text-align:center;
    border-right:0;
    border-bottom:1px solid #333;
    padding:.6rem .4rem;
  }
}


/* GTAFR Complete 1.4.9 — blocs harmonisés PNG 250 × 121 */
:root{
  --gta-block-image-width:250px;
  --gta-block-image-height:121px;
  --gta-block-bg:#08090c;
  --gta-block-bg-soft:#101116;
  --gta-block-border:#3a3c44;
  --gta-block-radius:12px;
}

/* Même fond, même bordure et même rayon pour tous les blocs latéraux. */
.gta-menu-card,
.sidebar--right .widget,
.online-widget,
.member-widget,
.gallery-widget,
.forum-widget,
.partners-widget,
.advertising-widget{
  overflow:hidden!important;
  background:linear-gradient(180deg,var(--gta-block-bg-soft),var(--gta-block-bg))!important;
  border:1px solid var(--gta-block-border)!important;
  border-radius:var(--gta-block-radius)!important;
  box-shadow:0 6px 18px rgba(0,0,0,.36)!important;
}

/* En-têtes image identiques : 250 × 121 px, centrés, sans découpe. */
.gta-menu-card__header,
.gta-menu-card__header--game,
.gta-menu-card--site .gta-menu-card__header,
.widget__heading--image{
  width:100%!important;
  min-height:var(--gta-block-image-height)!important;
  height:var(--gta-block-image-height)!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  background:var(--gta-block-bg)!important;
  border:0!important;
  border-bottom:1px solid var(--gta-block-border)!important;
}

.gta-menu-card__logo,
.gta-menu-card__header--game .gta-menu-card__logo,
.gta-menu-card--site .gta-menu-card__logo{
  display:block!important;
  flex:0 0 var(--gta-block-image-width)!important;
  width:var(--gta-block-image-width)!important;
  max-width:var(--gta-block-image-width)!important;
  height:var(--gta-block-image-height)!important;
  margin:0 auto!important;
  background-color:transparent!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-size:contain!important;
}

.widget__heading--image img{
  display:block!important;
  width:var(--gta-block-image-width)!important;
  max-width:var(--gta-block-image-width)!important;
  height:var(--gta-block-image-height)!important;
  margin:0 auto!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
}

/* Couleur uniforme des contenus placés sous les images. */
.gta-menu-card__body,
.online-stats,
.member-login-form,
.member-account,
.gallery-grid,
.topic-list,
.partners-box,
.side-ad-content{
  background:var(--gta-block-bg)!important;
}

.gta-menu-card__body{border-top:0!important}
.gta-menu-card--site,
.gta-menu-card--chinatown{border-color:var(--gta-block-border)!important}

/* Tous les logos de jeux utilisent désormais les fichiers PNG du même nom. */
.gta-menu-card__logo--site{background-image:url('../images/logos/site.png')!important}
.gta-menu-card__logo--gta6{background-image:url('../images/logos/gta6.png')!important}
.gta-menu-card__logo--gta5{background-image:url('../images/logos/gta5.png')!important}
.gta-menu-card__logo--online{background-image:url('../images/logos/online.png')!important}
.gta-menu-card__logo--gta4{background-image:url('../images/logos/gta4.png')!important}
.gta-menu-card__logo--sanandreas{background-image:url('../images/logos/sanandreas.png')!important}
.gta-menu-card__logo--vicecity{background-image:url('../images/logos/vicecity.png')!important}
.gta-menu-card__logo--gta3{background-image:url('../images/logos/gta3.png')!important}
.gta-menu-card__logo--gta2{background-image:url('../images/logos/gta2.png')!important}
.gta-menu-card__logo--vcs{background-image:url('../images/logos/vcs.png')!important}
.gta-menu-card__logo--lcs{background-image:url('../images/logos/lcs.png')!important}
.gta-menu-card__logo--chinatown{background-image:url('../images/logos/chinatown.png')!important}
.gta-menu-card__logo--gta1{background-image:url('../images/logos/gta1.png')!important}

@media(max-width:340px){
  :root{--gta-block-image-width:250px;--gta-block-image-height:121px}
}


/* GTAFR Complete 1.5.0 — Image du jour Phoca Gallery */
.daily-gallery-image{padding:.75rem;background:var(--gta-block-bg)!important;text-align:center}
.daily-gallery-image a{display:block;overflow:hidden;border:1px solid #3b3d45;background:#050505;text-decoration:none}
.daily-gallery-image img{display:block;width:100%;height:180px;object-fit:cover;object-position:center}
.daily-gallery-image p{margin:.55rem 0 0;color:#ddd;font-size:.82rem;font-weight:700;line-height:1.3}
.daily-gallery-image__empty{margin:0;padding:1rem .75rem;background:var(--gta-block-bg);color:#aaa;text-align:center;font-size:.82rem}
@media(max-width:480px){.daily-gallery-image img{height:160px}}


/* GTAFR Complete 1.5.1 — actualités en pleine largeur et affichage public épuré */
#latest-news .blog-items > :first-child,
#latest-news .com-content-category-blog__items > :first-child,
#latest-news .blog-featured > .items-leading,
#latest-news .items-leading,
#latest-news .items-leading > div {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
}

/* Aucun contrôle d’édition, état de publication ou bloc « Détails » côté public. */
#latest-news .icons,
#latest-news .article-info,
#latest-news .article-info-term,
#latest-news .badge,
#latest-news .btn-group,
#latest-news .dropdown-toggle,
#latest-news a[href*="task=article.edit"],
.com-content-article .icons,
.com-content-article .article-info,
.com-content-article .article-info-term,
.com-content-article .badge,
.com-content-article .btn-group,
.com-content-article .dropdown-toggle,
.com-content-article a[href*="task=article.edit"],
.gta-article-meta {
    display: none !important;
}


/* GTAFR Complete 1.5.4 — publicité suspendue.
   Le bloc latéral reste visible mais ne charge ni annonce, ni image d'attente. */
.side-ad-content--empty{
  min-height:250px!important;
  padding:0!important;
}

/* GTAFR Complete 1.5.5 — fond panoramique responsive et fixe */
body.gtafr-site{
  min-height:100vh;
  background-color:#0a0a0c!important;
  background-image:url('../images/backgrounds/los-santos-sunset.png')!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}

/* Les navigateurs mobiles gèrent souvent mal background-attachment: fixed.
   Le fond reste responsive, centré et couvrant, sans effet de saut. */
@media(max-width:900px), (hover:none) and (pointer:coarse){
  body.gtafr-site{
    background-attachment:scroll!important;
    background-position:center top!important;
    background-size:cover!important;
  }
}

/* GTAFR Complete 1.5.5 — aucun titre automatique au-dessus des articles complets */
.component-output--article .com-content-article > .page-header{
  display:none!important;
}

/* GTAFR Complete 1.5.5 — panneau profil/statut Kunena en gris foncé */
body.is-kunena #kunena .dropdown-menu,
body.is-kunena #kunena .popover,
body.is-kunena #kunena .modal-content,
body.is-kunena #kunena .offcanvas,
body.is-kunena #kunena .kprofilebox,
body.is-kunena #kunena .profilebox,
body.is-kunena #kunena .kunena-profilebox,
body.is-kunena #kunena [class*="profilebox"],
body.is-kunena #kunena [class*="profile"] .card,
body.is-kunena .kunena .dropdown-menu,
body.is-kunena .kunena .popover,
body.is-kunena .kfrontend .dropdown-menu,
body.is-kunena .kfrontend .popover{
  --bs-dropdown-bg:#24262b;
  --bs-dropdown-color:#f1f1f1;
  --bs-dropdown-link-color:#f1f1f1;
  --bs-dropdown-link-hover-color:#fff;
  --bs-dropdown-link-hover-bg:#35383f;
  --bs-popover-bg:#24262b;
  --bs-popover-body-color:#f1f1f1;
  background:#24262b!important;
  color:#f1f1f1!important;
  border-color:#4a4d55!important;
  box-shadow:0 10px 28px rgba(0,0,0,.58)!important;
}

body.is-kunena #kunena .dropdown-menu a,
body.is-kunena #kunena .dropdown-menu button,
body.is-kunena #kunena .dropdown-menu label,
body.is-kunena #kunena .dropdown-menu span,
body.is-kunena #kunena .dropdown-menu small,
body.is-kunena #kunena .popover a,
body.is-kunena #kunena .popover-body,
body.is-kunena #kunena .modal-content,
body.is-kunena .kunena .dropdown-menu a,
body.is-kunena .kfrontend .dropdown-menu a{
  color:#f1f1f1!important;
}

body.is-kunena #kunena .dropdown-item:hover,
body.is-kunena #kunena .dropdown-item:focus,
body.is-kunena #kunena .dropdown-menu a:hover,
body.is-kunena #kunena .dropdown-menu a:focus,
body.is-kunena .kunena .dropdown-item:hover,
body.is-kunena .kfrontend .dropdown-item:hover{
  background:#35383f!important;
  color:#fff!important;
}

body.is-kunena #kunena .popover-header,
body.is-kunena #kunena .modal-header,
body.is-kunena #kunena .dropdown-header{
  background:#191b1f!important;
  color:#fff!important;
  border-color:#4a4d55!important;
}

body.is-kunena #kunena .dropdown-divider,
body.is-kunena #kunena .modal-footer{
  border-color:#4a4d55!important;
}

body.is-kunena #kunena .dropdown-menu .text-muted,
body.is-kunena #kunena .popover .text-muted,
body.is-kunena #kunena [class*="profile"] .text-muted{
  color:#b9bcc3!important;
}


/* GTAFR Complete 1.5.6 — bannière alignée sur la grille et fond visible dès le haut */
.site-header{
  background:transparent!important;
  border-bottom:0!important;
  padding-top:12px!important;
}

/* La bannière et la barre de navigation suivent exactement la largeur utile
   de la grille située dans .site-shell (12 px de marge de chaque côté). */
.hero,
.main-nav{
  width:calc(100% - 24px)!important;
  max-width:calc(var(--max) - 24px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.hero{
  padding:0!important;
  overflow:hidden!important;
  background:transparent!important;
}

.hero__image-link,
.hero__img{
  width:100%!important;
  max-width:none!important;
}

/* Le shell reste en pleine largeur disponible ; son padding définit
   les mêmes bords que ceux utilisés par la bannière et le menu. */
.site-shell{
  width:100%!important;
  max-width:var(--max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:12px!important;
  padding-right:12px!important;
}

@media(max-width:760px){
  .site-header{padding-top:8px!important}
  .hero,
  .main-nav{
    width:calc(100% - 16px)!important;
    max-width:none!important;
  }
  .site-shell{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}


/* GTAFR Complete 1.5.7 — formulaire de contact et autopromotion partenaires */
.gta-contact-panel__body select#jform_contact_subject{
  appearance:auto;
  cursor:pointer;
}

.partner-gtafr{
  display:block;
  width:250px;
  max-width:100%;
  margin:0 auto;
  line-height:0;
  text-align:center;
}

.partner-gtafr img{
  display:block;
  width:250px;
  max-width:100%;
  height:auto;
  margin:0 auto;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:#09090b;
  box-shadow:0 8px 24px rgba(0,0,0,.5);
}

.partner-gtafr:hover img,
.partner-gtafr:focus-visible img{
  border-color:var(--gta-accent);
  box-shadow:0 8px 26px rgba(0,0,0,.62),0 0 0 2px rgba(242,140,0,.22);
}


/* GTAFR Complete 1.5.8 — navigation tricolore et footer unifié */
.main-nav{
  position:relative!important;
  padding-top:3px!important;
  padding-bottom:3px!important;
  border-top:0!important;
  border-bottom:0!important;
}
.main-nav::before,
.main-nav::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  z-index:3;
  height:3px;
  pointer-events:none;
  background:linear-gradient(90deg,#1655b5 0 33.333%,#f4f4f4 33.333% 66.666%,#df1d2f 66.666% 100%);
}
.main-nav::before{top:0}
.main-nav::after{bottom:0}

.site-footer__inner--clean{
  min-height:0!important;
  padding:1.35rem 1rem 1.45rem!important;
  display:block!important;
  text-align:center!important;
}
.site-footer__inner--clean .footer-center{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
}
.site-footer__inner--clean .footer-copyright{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:.3rem .45rem;
  margin:0 0 .2rem!important;
}
.footer-powered{font-weight:700;color:#d3d3d3}
.footer-joomla{
  display:inline-block;
  color:#fff!important;
  font-weight:1000;
  text-decoration:none!important;
  border-bottom:2px solid var(--gta-accent);
  padding:0 .08rem;
}
.footer-joomla:hover,
.footer-joomla:focus{color:var(--gta-accent)!important}
.site-footer__inner--clean .footer-disclaimer{
  margin:.14rem 0 0!important;
}
.site-footer__inner--clean .footer-links{
  position:static!important;
  right:auto!important;
  top:auto!important;
  transform:none!important;
  width:100%!important;
  margin:.62rem auto 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:0!important;
  white-space:normal!important;
}
.site-footer__inner--clean .footer-links a{
  width:auto!important;
  display:inline-block!important;
  padding:.25rem .68rem!important;
  color:#ededed!important;
  border-right:1px solid #555!important;
  border-bottom:0!important;
  text-align:center!important;
  line-height:1.25!important;
}
.site-footer__inner--clean .footer-links a:last-child{
  border-right:0!important;
  color:var(--gta-accent)!important;
  font-weight:900!important;
}
.site-footer__inner--clean .footer-links a:hover,
.site-footer__inner--clean .footer-links a:focus{color:#fff!important}

@media(max-width:620px){
  .site-footer__inner--clean .footer-links{
    display:flex!important;
    flex-wrap:wrap!important;
  }
  .site-footer__inner--clean .footer-links a{
    width:auto!important;
    border-bottom:0!important;
    padding:.42rem .55rem!important;
  }
}
