/*
Theme Name: UROGEC 974
Theme URI: https://ogec974.re/
Author: UROGEC La Réunion
Description: Thème vitrine de l'UROGEC de La Réunion (Enseignement Catholique). Direction alignée sur le Design System officiel UROGEC 974 : palette cyan/vert, dégradé signature, typographie Nunito. En-tête et pied mutualisés, gabarits par page.
Version: 2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: urogec974
*/

/* ---- Reset & global ---- */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f6f8f9;font-family:'Nunito Sans',system-ui,-apple-system,sans-serif;color:#12222b;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:inherit}

/* Les couleurs/marges sont en styles "inline" dans les gabarits (header.php,
   footer.php, front-page.php, page-*.php), calées sur le Design System UROGEC 974.
   Ce fichier ne contient que ce qui ne peut pas être inline : resets, états
   :hover / :focus, menu déroulant et corps d'article. */

/* ---- Menu déroulant ---- */
.nav-drop{display:none}
.nav-item{position:relative}
.nav-item:hover .nav-drop{display:block}
.nav-item:hover > a{background:rgba(255,255,255,.16)}
.drop-link:hover{background:#e3f4fc !important;color:#0698D4 !important}
.hamburger{display:none}

/* ---- Menu mobile (tablette / téléphone) ---- */
@media (max-width:880px){
  .site-chrome .topbar{padding:8px 18px !important;font-size:12px !important;}
  .site-chrome .topbar .contacts{gap:8px 16px !important;}
  .site-chrome .logorow{padding:12px 16px !important;}
  .site-chrome .orgname{display:none !important;}
  .site-chrome .declogo{height:44px !important;}
  .site-chrome .urogeclogo{height:44px !important;}
  .hamburger{display:inline-flex !important;align-items:center;justify-content:center;}
  .mainnav{display:none !important;flex-direction:column;padding:0 !important;flex-wrap:nowrap !important;}
  .mainnav.open{display:flex !important;}
  .mainnav .nav-item{width:100%;border-top:1px solid rgba(255,255,255,.2);position:static;}
  .mainnav .nav-item > a{padding:14px 20px !important;justify-content:space-between;font-size:14px !important;}
  .mainnav .nav-drop{display:block !important;position:static !important;box-shadow:none !important;border-radius:0 !important;background:#e9f6fc !important;padding:4px 0 10px !important;min-width:0 !important;overflow:visible !important;}
  .mainnav .drop-link{padding:10px 20px 10px 36px !important;font-size:13.5px !important;}
  .mainnav .nav-item > a svg{display:none;}
}

/* ---- États interactifs ---- */
.lnk:hover{filter:brightness(1.1)}
.btnp{transition:transform .12s ease, filter .15s ease, box-shadow .15s ease}
.btnp:hover{filter:brightness(1.05)}
.btnp:active{transform:translateY(1px) scale(.985)}
.card-news{transition:box-shadow .18s ease, transform .18s ease}
.card-news:hover{box-shadow:0 16px 40px rgba(18,34,43,.12);transform:translateY(-3px)}
.insc-input{transition:border-color .15s ease, box-shadow .15s ease}
.insc-input:focus{outline:none;border-color:#0698D4 !important;box-shadow:0 0 0 4px rgba(6,152,212,.18)}
.sidelnk{transition:.14s}
.sidelnk:hover{background:#e3f4fc;color:#0678a8}
.dl:hover{border-color:#0698D4;background:#f2fafe}
.fld:focus{outline:none;border-color:#0698D4;box-shadow:0 0 0 4px color-mix(in srgb,#0698D4 45%,transparent)}
.res-tile:hover{border-color:#0698D4;box-shadow:0 16px 40px rgba(18,34,43,.12);transform:translateY(-3px)}

/* ---- Pages intérieures : grille responsive ---- */
.page-grid{max-width:1200px;margin:0 auto;padding:46px 40px 72px;display:grid;grid-template-columns:240px 1fr;gap:50px}
.page-aside{align-self:start;position:sticky;top:20px}
@media (max-width:880px){
  .page-grid{grid-template-columns:1fr;gap:28px;padding:36px 22px 56px}
  .page-aside{position:static}
  /* Pages intérieures */
  .ppad{padding-left:22px !important;padding-right:22px !important;}
  .pageband{padding:32px 0 36px !important;}
  .pageband h1{font-size:32px !important;}
  .cg3{grid-template-columns:1fr 1fr !important;}
  .cg2{grid-template-columns:1fr !important;}
  /* Accueil */
  .hero-fp{min-height:0 !important;}
  .hero-fp .hero-inner{padding:52px 22px !important;}
  .hero-h1{font-size:32px !important;}
  .hero-sub{font-size:16px !important;}
  .mpad{padding-left:22px !important;padding-right:22px !important;}
  .sec-intro{padding:48px 22px !important;}
  .stats-grid{grid-template-columns:repeat(2,1fr) !important;gap:16px !important;}
  .cta-formations{padding:30px 24px !important;gap:22px !important;}
  .card-news{flex:0 0 82vw !important;}
}
@media (max-width:520px){
  .hero-h1{font-size:27px !important;}
  .cg3{grid-template-columns:1fr !important;}
}
/* ---- Pied de page responsive ---- */
@media (max-width:880px){
  .foot-grid{grid-template-columns:1fr 1fr !important;padding:40px 24px 28px !important;gap:28px !important;}
  .foot-brand{grid-column:1 / -1 !important;}
  .foot-bottom{padding:14px 24px !important;}
}
@media (max-width:520px){
  .foot-grid{grid-template-columns:1fr !important;}
  .foot-bottom{flex-direction:column;align-items:flex-start;}
}
/* ---- Espace membres responsive ---- */
@media (max-width:760px){
  .login-card{grid-template-columns:1fr !important;}
  .login-promo{min-height:0 !important;padding:34px 26px !important;gap:20px;}
  .login-form{padding:34px 26px !important;}
  .login-wrap{padding:32px 16px 48px !important;}
}

/* ---- Corps d'article / contenu éditeur ---- */
.article-body{font-family:'Nunito Sans',sans-serif}
.article-body h2{font-family:'Nunito',sans-serif;font-weight:800;font-size:26px;color:#12222b;letter-spacing:-.02em;margin:30px 0 12px}
.article-body h3{font-family:'Nunito',sans-serif;font-weight:800;font-size:20px;color:#20343f;margin:24px 0 10px}
.article-body p{margin:0 0 16px}
.article-body ul,.article-body ol{margin:0 0 16px;padding-left:22px}
.article-body li{margin-bottom:6px}
.article-body a{color:#0678a8;text-decoration:underline}
.article-body img{max-width:100%;height:auto;border-radius:12px;margin:8px 0}
.article-body blockquote{margin:18px 0;padding:8px 18px;border-left:3px solid #0698D4;color:#4c6875;font-style:italic}
.article-body figure{margin:16px 0}
