/* Prépa Bac shares the layout, typography and spacing of the Seconde pages. */
.pb-main{--pb-purple:#7026ff;--pb-soft:#f5f2ff}
.pb-main .s2-session-actions{--stage-detail-bg:#ede8ff;--stage-detail-hover:#ddd5ff;--stage-detail-text:#5a1fcf;--stage-primary-bg:#000000;--stage-primary-hover:#111111}
.pb-hero{background:linear-gradient(135deg,#956dfb 0%,#804ffc 35%,#7036fb 72%,#834bfc 100%)}
.pb-hero .s2-hero__waves{stroke:#c2a1ff;stroke-width:85;stroke-linecap:round;opacity:.22}
.pb-hero .s2-hero__inner{min-height:380px}
.pb-hero .s2-hero__copy{width:55%}
.pb-eyebrow{display:inline-block;border:1px solid #ffffffc7;border-radius:30px;padding:7px 17px;font-size:14px;font-weight:650;text-transform:uppercase;letter-spacing:.3px}
.pb-hero .s2-hero__portrait{right:4%;height:100%;width:53%;object-position:bottom}
.pb-hero .s2-hero__note{right:0;top:24px;font-size:26px;transform:rotate(-12deg)}
.pb-hero .s2-hero__note:after{content:'';display:block;border-top:3px solid white;border-radius:50%;height:9px;margin:8px 5px 0;transform:rotate(-5deg)}
.pb-hero .s2-hero__sticker{top:auto;bottom:30px;right:-9px;padding:24px 20px;font-size:18px}
.pb-hero .s2-hero__spark--top{top:137px;right:9%;width:36px!important;height:44px!important}
.pb-hero .s2-periods a{min-width:125px}
.pb-facts{background:#f6f3ff}
.pb-main .pb-facts li .ml-icon,.pb-facts strong{color:var(--pb-purple)}
.pb-facts strong{font-size:26px}
.pb-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-top:24px}
.pb-level{--level-color:#7026ff;--level-soft:#eae3ff;--level-tint:#f5f3ff;background:var(--level-tint);border-radius:15px;padding:clamp(16px,1.7vw,22px) clamp(18px,1.9vw,25px);display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.pb-level--warm{--level-color:#ff4d19;--level-soft:#ffe5db;--level-tint:#fff5f1}
.pb-level__intro{display:flex;align-items:center;gap:clamp(14px,1.5vw,20px);width:100%;min-width:0}
.pb-level__intro>div{flex:1;min-width:0}
.pb-level__intro .s2-icon-circle{width:clamp(54px,5.8vw,68px);height:clamp(54px,5.8vw,68px);background:var(--level-soft);color:var(--level-color)}
.pb-level__intro .ml-icon{width:clamp(32px,3.4vw,42px);height:clamp(32px,3.4vw,42px)}
.pb-level h3{font-size:clamp(24px,2.55vw,30px);font-weight:800;letter-spacing:-.8px;line-height:1.15;margin-bottom:8px}
.pb-level h3 sup{font-size:.55em}
.pb-level p{font-size:clamp(12px,1.275vw,15px);line-height:1.4;letter-spacing:-.2px}
.pb-topics{display:flex;flex-wrap:wrap;gap:5px;list-style:none;margin:8px 0 12px;padding:0;max-width:100%}
.pb-topics li{background:var(--level-soft);color:var(--level-color);border-radius:24px;padding:7px 8px;font-size:clamp(12px,1.28vw,14px);line-height:1.25;font-weight:650}
.pb-topics li button{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;font-weight:inherit;text-align:left;transition:color .15s}
.pb-topics li:has(button:hover){background:var(--level-color);color:#fff}
.pb-levels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-top:24px;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--pb-purple) #ece8ff}
.pb-level{scroll-snap-align:start;flex:0 0 clamp(220px,38%,320px);min-width:0}
.pb-button{background:var(--level-color,var(--pb-purple));color:white;min-height:44px;min-width:clamp(190px,20vw,216px);padding:11px 24px;font-size:16px;margin-top:auto}
.pb-button:hover{background:color-mix(in srgb,var(--level-color,var(--pb-purple)),#000 15%)}
.pb-main .s2-session .ml-icon{color:var(--pb-purple)}
.pb-main .s2-session .s2-session-date{color:var(--pb-purple)}
.pb-main .s2-session{border-color:#e7e0f5}
.pb-main .s2-results{scrollbar-color:var(--pb-purple) #f2effa}
.pb-main .s2-carousel__controls button:hover:not(:disabled){background:#eee7ff;border-color:var(--pb-purple)}
.pb-conversion>section:first-child{background:#fff5f3}
@media(max-width:1100px){
  .pb-hero .s2-hero__note{font-size:22px;right:-10px}
  .pb-hero .s2-hero__sticker{font-size:15px;right:-12px;padding:23px 17px}
}
@media(max-width:900px) and (min-width:701px){
  .pb-hero .s2-hero__inner{min-height:340px}
  .pb-hero .s2-hero__portrait{right:1%;width:52%;height:94%}
  .pb-hero .s2-hero__note{font-size:18px;right:-15px}
  .pb-hero .s2-hero__spark--top{top:98px;right:4%}
  .pb-facts strong{font-size:23px}
  .pb-level{padding:16px}
  .pb-level__intro{align-items:flex-start}
  .pb-level__intro .s2-icon-circle{width:50px;height:50px}
  .pb-level__intro .ml-icon{width:30px;height:30px}
  .pb-level h3{font-size:22px}
  .pb-level p{font-size:13px}
}
@media(max-width:700px){
  .pb-hero .s2-hero__inner{min-height:472px}
  .pb-hero .s2-hero__copy{width:100%}
  .pb-eyebrow{font-size:12px;padding:7px 14px}
  .pb-hero .s2-hero__lead{max-width:330px}
  .pb-hero .s2-periods a{min-width:115px;font-size:14px}
  .pb-hero .s2-hero__portrait{width:100%;height:285px;right:-33%;bottom:0}
  .pb-hero .s2-hero__note{top:auto;bottom:88px;left:0;right:auto;font-size:19px}
  .pb-hero .s2-hero__sticker{top:auto;bottom:42px;left:0;right:auto;font-size:13px;padding:19px 14px}
  .pb-hero .s2-hero__spark--top{top:auto;bottom:220px;right:-2px}
  .pb-facts strong{font-size:23px}
  .pb-level{flex:0 0 85%}
  .pb-level{padding:20px 18px}
  .pb-level h3{font-size:24px}
  .pb-level__intro .s2-icon-circle{width:52px;height:52px}
  .pb-level__intro .ml-icon{width:32px;height:32px}
  .pb-level p{font-size:14px}
  .pb-topics{margin-block:14px}
  .pb-topics li{padding:7px 10px;font-size:12px}
  .pb-button{font-size:15px}
}
@media(max-width:370px){
  .mock-header .mock-header__inner{gap:8px}
  .mock-header .mock-logo img{width:90px;height:auto}
  .mock-header .mock-actions .mock-btn--red{padding-inline:10px;gap:6px}
}
@media(prefers-reduced-motion:no-preference){
  .pb-hero .s2-hero__copy{animation:pb-enter .45s ease-out both}
  .pb-hero .s2-hero__portrait{animation:pb-enter .65s .1s ease-out both}
  .pb-level{transition:transform .2s,box-shadow .2s}
  .pb-level:has(.pb-button:hover){transform:translateY(-3px);box-shadow:0 12px 25px #3112750b}
  @keyframes pb-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
}
