/* Compact case-study rows: content defines height, with no empty grid tracks. */
.projects-page .quest-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
.projects-page .quest-card { grid-column:auto; padding:26px 28px; min-width:0; }
.projects-page .quest-card-title { max-width:calc(100% - 55px); }
.projects-page .case-study { grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.projects-page .quest-card--latest::after { display:none; }
.projects-page .quest-card-footer { gap:12px; flex-wrap:wrap; }
.projects-page .quest-card-org { line-height:1.6; }
.language-switch { position:absolute;right:24px;top:22px;z-index:40; }
.page-header { padding-right:140px; }
.language-switch,.site-setting-btn { text-decoration:none; }
.language-switch:focus-visible { outline:3px solid #64edff;outline-offset:4px; }
.about-page .scene-about { --glow-x:80%;--glow-y:20%; }
.about-page .scene-about::after { background:linear-gradient(90deg,#000820a6,#01102b38 72%),linear-gradient(0deg,#00082266,transparent 65%); }
.about-page .about-block { background:linear-gradient(105deg,#010b28ed,#02143abb);backdrop-filter:none; }
html[lang="fr"] .menu-item-label { letter-spacing:1px; }
html[lang="fr"] .chapter-nav a { letter-spacing:1px; }
html[lang="fr"] .menu-side::before { content:'CHOISIR'; }
@media(max-width:768px) {
  .projects-page .case-study { grid-template-columns:1fr;gap:14px; }
  .projects-page .quest-card { padding:20px; }
  .language-switch { right:14px;top:16px; }
  .page-header { padding-right:102px; }
  .site-setting-btn { min-height:40px; }
}
@media(max-width:420px) {
  .site-controls { flex-wrap:wrap;justify-content:flex-end; }
  .site-setting-btn { font-size:10px;letter-spacing:.6px; }
}
@media(prefers-reduced-motion:reduce) { .scene-background { will-change:auto; } }
html[data-motion="reduced"] .scene-background { will-change:auto; }

/* Work experience is the primary proof section: give its chapter row a clear
   focus state without changing the accordion's existing interaction model. */
.experience-page .list-row[data-target="workDetail"] {
  border: 1px solid rgba(89, 226, 255, .78);
  background:
    linear-gradient(108deg, rgba(11, 54, 133, .96), rgba(3, 18, 65, .92));
  box-shadow:
    0 0 0 1px rgba(255, 75, 160, .28),
    0 0 24px rgba(48, 207, 255, .2),
    inset 0 0 28px rgba(63, 145, 255, .14);
  transform: translateX(6px);
  isolation: isolate;
  overflow: hidden;
}
.experience-page .list-row[data-target="workDetail"]::before {
  content: 'FOCUS';
  position: absolute;
  top: 0;
  right: 18px;
  padding: 3px 8px 2px;
  color: #071338;
  background: #62eaff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1;
  clip-path: polygon(8px 0, 100% 0, calc(100% - 8px) 100%, 0 100%);
}
.experience-page .list-row[data-target="workDetail"]::after {
  content: '◆';
  position: absolute;
  right: 20px;
  bottom: 12px;
  color: #ff5c9a;
  font-size: 11px;
  animation: workBeacon 2.2s ease-in-out infinite;
}
.experience-page .list-row[data-target="workDetail"]:hover,
.experience-page .list-row[data-target="workDetail"][aria-expanded="true"] {
  background:
    linear-gradient(108deg, rgba(18, 73, 163, .98), rgba(5, 26, 84, .96));
  box-shadow:
    0 0 0 1px rgba(255, 92, 154, .48),
    0 0 32px rgba(48, 207, 255, .28),
    inset 0 0 32px rgba(82, 161, 255, .18);
}
.experience-page .exp-detail#workDetail {
  border-left: 2px solid rgba(98, 234, 255, .72);
  margin-left: 6px;
  box-shadow: inset 14px 0 24px rgba(43, 144, 255, .05);
}
@keyframes workBeacon {
  0%, 100% { opacity: .42; transform: scale(.82) rotate(0deg); }
  50% { opacity: 1; transform: scale(1.18) rotate(45deg); }
}
@media(max-width:768px) {
  .experience-page .list-row[data-target="workDetail"] { transform: none; }
  .experience-page .list-row[data-target="workDetail"]::before { right: 12px; font-size: 9px; }
  .experience-page .list-row[data-target="workDetail"]::after { right: 14px; }
  .experience-page .exp-detail#workDetail { margin-left: 0; }
}
@media(prefers-reduced-motion:reduce) {
  .experience-page .list-row[data-target="workDetail"]::after { animation: none; }
}
html[data-motion="reduced"] .experience-page .list-row[data-target="workDetail"]::after { animation: none; }
