/* RFC06 / accueil — one composition, with explicit resets for legacy styles.
   The photograph and all existing destinations are retained. */
body:not(.session-started) #vitrineAccueil.vitrine-ref-hero {
  position:relative!important;isolation:isolate!important;display:grid!important;
  grid-template-columns:minmax(0,460px) minmax(280px,1fr)!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  align-items:start!important;gap:clamp(32px,5vw,80px)!important;
  min-height:660px!important;height:auto!important;
  padding:56px 32px 32px!important;margin:0!important;
  background:#302036!important;box-sizing:border-box!important;
}
body:not(.session-started) #vitrineAccueil.vitrine-ref-hero::before {
  inset:0!important;z-index:1!important;pointer-events:none!important;
  background:linear-gradient(90deg,rgba(33,19,43,.94) 0%,rgba(43,25,52,.86) 30%,rgba(44,28,52,.37) 57%,rgba(35,24,38,.04) 82%)!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-editorial-hero-figure {
  position:absolute!important;inset:0!important;z-index:0!important;
  width:100%!important;height:100%!important;margin:0!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-editorial-hero-photo {
  width:100%!important;height:100%!important;max-height:none!important;
  object-fit:cover!important;object-position:center 42%!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-content.session-intro {
  display:block!important;position:relative!important;z-index:2!important;
  grid-column:1!important;grid-row:1!important;align-self:start!important;
  width:100%!important;max-width:460px!important;min-width:0!important;
  margin:0!important;padding:0!important;text-align:left!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-subtitle {
  margin:0 0 18px!important;color:#e6cf8c!important;
  font-size:.69rem!important;letter-spacing:.13em!important;font-weight:650!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-content h2 {
  max-width:11ch!important;margin:0!important;color:#fffdf8!important;
  font:650 clamp(48px,4.8vw,68px)/1.04 Inter,"Segoe UI",Arial,sans-serif!important;
  letter-spacing:-.045em!important;text-shadow:none!important;text-wrap:balance!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-description {
  max-width:40ch!important;margin:24px 0 0!important;
  color:#eee7ee!important;font-size:1rem!important;line-height:1.75!important;font-weight:400!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-home-actions {
  display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;
  gap:10px!important;margin:26px 0 0!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-home-actions .vitrine-ref-btn {
  min-height:46px!important;padding:12px 17px!important;border-radius:8px!important;
  font-size:.79rem!important;font-weight:650!important;box-sizing:border-box!important;
}
body:not(.session-started) #vitrineAccueil .vitrine-ref-home-actions .vitrine-ref-btn-secondary {
  background:rgba(255,255,255,.04)!important;border-color:#ffffff60!important;backdrop-filter:none!important;
}
body:not(.session-started) #vitrineAccueil .home-benefits {
  position:static!important;inset:auto!important;display:grid!important;
  grid-column:1/-1!important;grid-row:2!important;align-self:end!important;z-index:2!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;border:0!important;
  border-radius:0!important;background:none!important;box-shadow:none!important;backdrop-filter:none!important;
  font-family:Inter,"Segoe UI",Arial,sans-serif!important;
}
body:not(.session-started) #vitrineAccueil .home-benefits>span:nth-child(n) {
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:10px!important;min-width:0!important;min-height:60px!important;
  padding:11px 12px!important;border:1px solid #ffffff29!important;
  border-radius:9px!important;background:rgba(45,29,55,.86)!important;
  color:#fff9ef!important;font-size:.75rem!important;font-weight:500!important;
  line-height:1.5!important;letter-spacing:0!important;box-shadow:none!important;backdrop-filter:none!important;box-sizing:border-box!important;
}
body:not(.session-started) #vitrineAccueil .home-benefits i {
  display:grid!important;place-items:center!important;flex:0 0 24px!important;
  width:24px!important;height:28px!important;border-radius:0!important;
  background:none!important;color:#dfc98e!important;box-shadow:none!important;
}
body:not(.session-started) #vitrineAccueil .home-benefits i svg {
  width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;
  stroke-width:1.5!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
body:not(.session-started) #vitrineAccueil .home-benefits>span>span {min-width:0;overflow-wrap:break-word;}
body:not(.session-started) #vitrineAccueil .home-hero-milo-note {
  position:relative!important;inset:auto!important;z-index:2!important;display:block!important;
  grid-column:2!important;grid-row:1!important;align-self:end!important;justify-self:end!important;
  width:300px!important;max-width:100%!important;margin:0!important;padding:22px!important;
  border:1px solid #e7deeb!important;border-radius:14px!important;background:#fffdf9!important;
  color:#53415f!important;box-shadow:0 10px 28px #23172b14!important;box-sizing:border-box!important;
  text-align:left!important;font-family:Inter,"Segoe UI",Arial,sans-serif!important;
}
body:not(.session-started) #vitrineAccueil .home-hero-milo-heading {display:flex;align-items:center;gap:11px;margin-bottom:14px;}
body:not(.session-started) #vitrineAccueil .home-hero-milo-heading>img {
  display:block;width:42px;height:42px;flex:0 0 42px;object-fit:cover;object-position:center 15%;
  border:1px solid #e8dfec;border-radius:50%;background:#f2ecf7;box-sizing:border-box;
}
body:not(.session-started) #vitrineAccueil .home-hero-milo-heading>p {
  margin:0;color:#806b8d;font-size:.65rem;line-height:1.6;font-weight:650;letter-spacing:.025em;
}
body:not(.session-started) #vitrineAccueil .home-hero-milo-note>h3 {
  margin:0 0 12px!important;color:#4b2f5c!important;font:650 1.13rem/1.4 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.025em!important;
}
body:not(.session-started) #vitrineAccueil .home-hero-milo-note>p {margin:0 0 15px;color:#706076;font-size:.79rem;line-height:1.8;}
body:not(.session-started) #vitrineAccueil .home-hero-milo-note>small {display:block;padding-top:13px;border-top:1px solid #eae2ec;color:#7f6b8b;font-size:.7rem;line-height:1.7;}
@media(max-width:900px) {
  body:not(.session-started) #vitrineAccueil.vitrine-ref-hero {
    grid-template-columns:minmax(0,1fr)!important;gap:32px!important;min-height:0!important;
    grid-template-rows:auto auto auto!important;padding:44px 28px 28px!important;
  }
  body:not(.session-started) #vitrineAccueil.vitrine-ref-hero::before {
    background:linear-gradient(90deg,rgba(33,19,43,.94),rgba(43,25,52,.74) 58%,rgba(35,24,38,.35))!important;
  }
  body:not(.session-started) #vitrineAccueil .home-hero-milo-note {grid-column:1!important;grid-row:2!important;justify-self:start!important;width:460px!important;}
  body:not(.session-started) #vitrineAccueil .home-benefits {grid-row:3!important;}
}
@media(max-width:700px) {
  body:not(.session-started) #vitrineAccueil.vitrine-ref-hero {padding:36px 20px 24px!important;gap:30px!important;}
  body:not(.session-started) #vitrineAccueil .vitrine-ref-content h2 {font-size:48px!important;}
  body:not(.session-started) #vitrineAccueil .vitrine-ref-description {font-size:.93rem!important;}
  body:not(.session-started) #vitrineAccueil .home-benefits {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  body:not(.session-started) #vitrineAccueil .home-benefits>span:nth-child(n) {font-size:.71rem!important;padding:10px!important;gap:8px!important;min-height:62px!important;}
  body:not(.session-started) #vitrineAccueil .home-hero-milo-note {padding:20px!important;}
}
@media(max-width:360px) {
  body:not(.session-started) #vitrineAccueil .vitrine-ref-content h2 {font-size:43px!important;}
  body:not(.session-started) #vitrineAccueil .home-benefits>span:nth-child(n) {font-size:.68rem!important;padding:9px!important;gap:6px!important;}
}
/* Family learning / a distinct editorial invitation. Hero above is unchanged. */
body:not(.session-started) #sessionCard .home-family-learning {
  display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;
  gap:0!important;align-items:stretch!important;margin:0 0 58px!important;padding:0!important;
  overflow:hidden!important;border:1px solid #4d345c!important;border-radius:24px!important;
  background:#34203f!important;box-shadow:0 20px 48px #3f22551c!important;
  color:#f9f4fb!important;font-family:Inter,"Segoe UI",Arial,sans-serif!important;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-copy {
  min-width:0;padding:clamp(28px,3.6vw,48px);align-self:center;
  background:linear-gradient(135deg,#3c254a,#34203f);
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-kicker {
  display:flex;align-items:center;gap:12px;margin:0 0 20px;
  color:#e5cc8e;font-size:.66rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-kicker::before {
  content:"";width:28px;height:1px;flex:none;background:#d8bc77;
}
body:not(.session-started) #sessionCard .home-family-learning h3 {
  margin:0 0 22px!important;max-width:none!important;color:#fffaf2!important;
  font:700 clamp(36px,4.2vw,60px)/1.08 Inter,"Segoe UI",Arial,sans-serif!important;
  letter-spacing:-.045em!important;text-wrap:balance;
}
body:not(.session-started) #sessionCard .home-family-learning h3>span {display:block;color:#f0d790;}
body:not(.session-started) #sessionCard .home-family-learning p {
  margin:0 0 18px;color:#d8cadf;line-height:1.85;font-size:.88rem;max-width:57ch;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-intro {
  color:#f4ecf8;font-size:1.02rem;font-weight:500;line-height:1.7;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-landmarks {
  display:flex;flex-wrap:wrap;gap:10px 16px;margin:24px 0 28px;padding:19px 0 0;border-top:1px solid #ffffff24;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-landmarks>span {
  display:flex;align-items:center;gap:7px;color:#eee2f4;font-size:.69rem;font-weight:500;
}
body:not(.session-started) #sessionCard .home-family-learning svg {
  width:18px;height:18px;flex:none;fill:none;stroke:#e8cf94;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-action {
  display:inline-flex;align-items:center;justify-content:space-between;gap:22px;
  min-height:50px;max-width:100%;box-sizing:border-box;padding:12px 17px 12px 20px;
  border:1px solid #edc54e;border-radius:9px;background:var(--studio-yellow,#ffd34e);
  color:#3d264b;font-size:.85rem;font-weight:650;text-decoration:none;line-height:1.4;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-action>span {
  display:grid;place-items:center;width:26px;height:26px;flex:none;border-radius:50%;background:#ffffff55;font-size:1.05rem;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-action:hover {background:#ffe18a;border-color:#ffe18a;}
body:not(.session-started) #sessionCard .home-family-learning .home-family-action:focus-visible {outline:3px solid #fff;outline-offset:5px;}
body:not(.session-started) #sessionCard .home-family-learning .home-family-photo {
  position:relative!important;min-width:0!important;min-height:460px!important;height:auto!important;
  margin:0!important;padding:0!important;overflow:hidden!important;background:#ded3c6!important;
}
body:not(.session-started) #sessionCard .home-family-learning .home-family-photo img {
  display:block!important;width:100%!important;height:100%!important;max-height:none!important;
  position:absolute!important;inset:0!important;object-fit:cover!important;object-position:75% center!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
@media(max-width:900px) {
  body:not(.session-started) #sessionCard .home-family-learning {grid-template-columns:minmax(0,1fr)!important;border-radius:20px!important;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-copy {padding:32px;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-photo {min-height:0!important;height:auto!important;aspect-ratio:16/9;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-photo img {object-position:center 40%!important;}
}
@media(max-width:520px) {
  body:not(.session-started) #sessionCard .home-family-learning {margin-bottom:40px!important;border-radius:16px!important;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-copy {padding:26px 23px;}
  body:not(.session-started) #sessionCard .home-family-learning h3 {font-size:36px!important;line-height:1.1!important;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-landmarks {gap:13px;margin:22px 0 24px;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-action {width:100%;}
  body:not(.session-started) #sessionCard .home-family-learning .home-family-photo {aspect-ratio:4/3;}
}
