/* css/vitrine.css — page d'accueil publique (vitrine.php), en complément de accueil-eleve.css */
.acc-vt-cnx, .acc-vt-ins { display:flex; align-items:center; gap:8px; height:44px; box-sizing:border-box; padding:0 16px; border-radius:11px; font-size:14.5px; font-weight:800; text-decoration:none; white-space:nowrap }
.acc-vt-cnx { background:#0891B2; border:1px solid #0891B2; color:#FFFFFF; box-shadow:0 8px 18px -10px rgba(8,145,178,.9) }
.acc-vt-cnx:hover { background:#0E7490 }
.acc-vt-ins { background:#EEF2F6; border:1px solid #AEBACB; color:#0F172A }
.acc-vt-ins:hover { background:#E2E8F0 }
.acc-vt-cnx i, .acc-vt-ins i { font-size:18px }
.acc-vt-hero { display:grid; grid-template-columns:minmax(0, 1fr) 340px; gap:24px; align-items:center; padding:28px 30px; border-radius:22px;
  background:radial-gradient(900px 260px at 0% 0%, color-mix(in srgb, #22D3EE 16%, #DCE3EB), transparent 65%), #DCE3EB; border:1px solid #AEBACB; color:#0F172A;
  box-shadow:0 14px 30px -20px rgba(15,23,42,.7) }
.acc-vt-k { display:inline-flex; align-items:center; gap:6px; font-size:14px; font-weight:700; color:#0E7490 }
.acc-vt-hero h1 { margin:10px 0 8px; font-size:42px; line-height:1.1; font-weight:900; letter-spacing:-0.025em }
.acc-vt-hero h1 span { background:linear-gradient(135deg, #22D3EE, #0891B2); -webkit-background-clip:text; background-clip:text; color:transparent }
.acc-vt-hero p { margin:0 0 16px; font-size:17px; color:#334155 }
.acc-vt-hero .acc-chip { background:#EEF2F6; border-color:#AEBACB; color:#0F172A }
.acc-vt-hero .acc-chip.lien { text-decoration:none; display:inline-flex; align-items:center; gap:6px; border-color:#67E8F9; background:#CFFAFE; color:#155E75 }
.acc-vt-acces { display:flex; flex-direction:column; gap:10px; padding:20px; border-radius:18px; background:#1E293B; color:#FFFFFF }
.acc-vt-acces > b { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#67E8F9 }
.acc-vt-btn { display:flex; align-items:center; justify-content:center; gap:10px; padding:14px 16px; border-radius:13px; font-size:17px; font-weight:800; text-decoration:none }
.acc-vt-btn.cnx { background:#22D3EE; color:#0F172A } .acc-vt-btn.cnx:hover { background:#67E8F9 }
.acc-vt-btn.ins { background:transparent; border:1px solid #475569; color:#FFFFFF } .acc-vt-btn.ins:hover { background:#334155 }
.acc-vt-acces small { font-size:13px; line-height:1.45; color:#CBD5E1 }
.acc-vt-pour { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:20px }
.acc-vt-c { display:grid; grid-template-columns:44px minmax(0, 1fr); gap:6px 14px; padding:16px 18px 18px; align-items:start }
.acc-vt-c .ic { width:44px; height:44px; border-radius:13px; display:grid; place-items:center; font-size:22px; color:#FFFFFF; background:color-mix(in srgb, var(--c) 70%, #1E293B) }
.acc-vt-c p { margin:0; font-size:14px; line-height:1.5; color:#334155 } .acc-vt-c p b { display:block; font-size:16px; color:#0F172A; margin-bottom:2px }
.acc-vt-c a { grid-column:2; justify-self:start; margin-top:6px; font-size:14px; font-weight:800; color:color-mix(in srgb, var(--t) 80%, #0F172A); text-decoration:none }
.acc-vt-c a:hover { text-decoration:underline }
a.acc-tuile.verrou { cursor:pointer }
@media (max-width:1000px) { .acc-vt-hero { grid-template-columns:1fr } .acc-vt-pour { grid-template-columns:1fr } }
@media (max-width:760px) { .acc-vt-hero { padding:20px } .acc-vt-hero h1 { font-size:30px } .acc-vt-ins span { display:none } .acc-vt-ins { padding:0; width:44px; justify-content:center } }
.acc-vitrine a.acc-tuile.verrou { background:color-mix(in srgb, var(--c) 50%, #1E293B); box-shadow:none }
.acc-vitrine a.acc-tuile.verrou:hover { transform:translateY(-3px) } .acc-vitrine a.acc-tuile.verrou .wm { opacity:.14 }
.acc-vitrine a.acc-tuile.verrou .ic { background:rgba(15,23,42,.35) }
