/* Homepage finish layered over the original BONBONS design. */
.bb-vivid-home{background-color:#f8faff!important}
.bb-vivid-home .premium-hero{
 background:radial-gradient(ellipse at 78% 48%,#c6ff3d26,transparent 34%),radial-gradient(ellipse at 5% 28%,#0047ff14,transparent 43%),linear-gradient(125deg,#fff 5%,#f2f6ff 68%,#f8ffe9)!important;
}
.bb-vivid-home .hero-mesh{
 background-image:linear-gradient(#0047ff06 1px,transparent 1px),linear-gradient(90deg,#0047ff06 1px,transparent 1px),radial-gradient(#0047ff24 .65px,transparent .85px)!important;
 background-size:64px 64px,64px 64px,8px 8px!important;opacity:.64!important;
}
.bb-vivid-home .hero h1{font-weight:800;text-wrap:balance}
.bb-vivid-home .hero-text{line-height:1.75}
.bb-vivid-home .phone{box-shadow:0 42px 90px #0b153538,0 0 0 1px #ffffff80}
.bb-vivid-home .circle{background:linear-gradient(145deg,#0047ff,#1745f5 56%,#092cb8)!important;box-shadow:0 30px 100px #0047ff3b,inset 0 1px 0 #ffffff66}
.bb-vivid-home .float-card{border:1px solid #ffffffd9;box-shadow:0 16px 45px #102b6e17;background:#ffffffed}
.bb-vivid-home .stats{background:linear-gradient(115deg,#0b1535,#092973 66%,#0047ff)!important}
.bb-vivid-home #decouvrir{
 background:radial-gradient(ellipse at 4% 78%,#c6ff3d30,transparent 37%),radial-gradient(ellipse at 97% 22%,#0047ff12,transparent 35%),#f8faff!important;
}
.bb-vivid-home .card{border:1px solid #fff!important;box-shadow:0 8px 30px #0b153507,0 22px 65px #0047ff08,inset 0 1px 0 #fff!important}
.bb-vivid-home #decouvrir .card:nth-child(1){background:linear-gradient(145deg,#fff,#eaf0ff)!important}
.bb-vivid-home #decouvrir .card:nth-child(2){background:linear-gradient(145deg,#fff,#efffcd)!important}
.bb-vivid-home #decouvrir .card:nth-child(3){background:linear-gradient(145deg,#fff,#fff0e9)!important}
.bb-vivid-home .student-section{
 background:radial-gradient(ellipse at 95% 0%,#5d80ff 0%,transparent 45%),radial-gradient(ellipse at 0% 100%,#062da4,transparent 60%),linear-gradient(125deg,#0047ff,#164eff)!important;
}
.bb-vivid-home .student-section .label{background:#ffffff14;border-color:#ffffff33;color:#d0ff68}
.bb-vivid-home .student-section .feature{background:#fffffff5;border:1px solid #fff;box-shadow:0 16px 35px #001b7830}
.bb-vivid-home .student-section .feature:nth-child(2){background:#f5ffe6}
.bb-vivid-home .student-section .feature:nth-child(3){background:#fff0e9}
.bb-vivid-home .student-section .feature:nth-child(4){background:#f1edff}
.bb-vivid-home .founding{background:radial-gradient(ellipse at 92% 18%,#0047ff80,transparent 52%),linear-gradient(120deg,#0b1535,#102451)!important;border:1px solid #4664a240}
.bb-vivid-home .heading h2,.bb-vivid-home .campus-copy h2,.bb-vivid-home .download h2{text-wrap:balance}
.bb-vivid-home .btn-blue{background:linear-gradient(135deg,#0047ff,#174bf0);box-shadow:0 8px 22px #0047ff24}
.bb-vivid-home .btn-lime{background:linear-gradient(135deg,#d4ff70,#b8f72d);box-shadow:0 8px 22px #a4d92d20}
.bb-vivid-home .btn:focus-visible,.bb-vivid-home a:focus-visible,.bb-vivid-home button:focus-visible{outline:3px solid #ff6b5b;outline-offset:4px}
.bb-vivid-home .final{background:radial-gradient(ellipse at 95% 20%,#0047ffb3,transparent 48%),radial-gradient(ellipse at 8% 100%,#ff6b5b25,transparent 40%),#0b1535!important}
@media(prefers-reduced-motion:reduce){.bb-vivid-home *{animation:none!important;scroll-behavior:auto!important}}

/* Matched cards: photo windows preserve proportions; live text aligns content. */
.bb-vivid-home #decouvrir>.container{width:min(1280px,94%)}
.bb-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.bb-audience-card{display:flex;flex-direction:column;min-width:0;border-radius:26px;overflow:hidden;background:linear-gradient(150deg,#fff,#edf2ff);box-shadow:0 18px 45px #0b153510;transition:transform .25s}
.bb-audience-card:nth-child(2){background:linear-gradient(150deg,#fff,#f0ffd6)}
.bb-audience-card:nth-child(3){background:linear-gradient(150deg,#fff,#fff0e9)}
.bb-audience-card:hover{transform:translateY(-5px)}
.bb-audience-card picture{display:block;position:relative;overflow:hidden;aspect-ratio:1.55;background:#eef3ff;flex:none}
.bb-audience-card img{display:block;position:absolute;max-width:none;width:134.5324%;height:auto;left:-17.2662%;top:-4.4%}
.bb-audience-card:nth-child(2) img{width:135.8354%;left:-18.0387%;top:-5%}
.bb-audience-card:nth-child(3) img{width:118.2297%;left:-9.0622%;top:-7.8%}
.bb-audience-content{display:flex;flex-direction:column;flex:1;padding:24px 26px 28px}
.bb-audience-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#e4ebff;font-size:23px;margin-bottom:15px}
.bb-audience-card:nth-child(2) .bb-audience-icon{background:#eaffc5}
.bb-audience-card:nth-child(3) .bb-audience-icon{background:#ffe3dd}
.bb-audience-content h3{font-size:24px;line-height:1.2;letter-spacing:-.8px;min-height:58px;margin:0 0 12px}
.bb-audience-content p{font-size:13px;line-height:1.65;color:#536078;min-height:65px;margin:0 0 18px}
.bb-audience-content ul{list-style:none;margin:0 0 26px;padding:0}
.bb-audience-content li{font-size:13px;line-height:1.55;padding-left:23px;position:relative;margin:0 0 9px}
.bb-audience-content li:before{content:'✓';position:absolute;left:0;color:#0047ff;font-weight:800}
.bb-audience-cta{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;background:#0047ff;color:white;font-size:13px;font-weight:800;padding:12px;margin-top:auto;text-align:center}
.bb-audience-card:nth-child(2) .bb-audience-cta{background:#c6ff3d;color:#0b1535}
@media(max-width:1000px) and (min-width:601px){.bb-audience-content{padding:20px 17px}.bb-audience-content h3{font-size:20px}.bb-audience-grid{gap:16px}}
@media(max-width:600px){.bb-audience-grid{grid-template-columns:1fr;max-width:410px;margin:auto;gap:28px}.bb-audience-content h3,.bb-audience-content p{min-height:0}}
@media(prefers-reduced-motion:reduce){.bb-audience-card{transition:none}.bb-audience-card:hover{transform:none}}

/* Animated uploaded journey illustration; scroll locally on smaller screens. */
.bb-journey{padding:55px 0!important;overflow:hidden}
.bb-journey-scroll{width:min(1600px,96%);margin:auto;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#0047ff #eaf0ff;padding:12px 0 20px;overscroll-behavior-inline:contain}
.bb-journey-art{display:block;position:relative;isolation:isolate;border-radius:26px;overflow:hidden;animation:bbJourneyFloat 7s ease-in-out infinite;transition:box-shadow .3s}
.bb-journey-art picture,.bb-journey-art img{display:block;width:100%;height:auto}
.bb-journey-art:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,#ffffff50 49%,transparent 63%);transform:translateX(-110%);animation:bbJourneyShine 10s ease-in-out infinite}
.bb-journey-art:hover{animation-play-state:paused;box-shadow:0 16px 45px #0047ff15}
@keyframes bbJourneyFloat{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes bbJourneyShine{0%,65%{transform:translateX(-110%)}90%,100%{transform:translateX(110%)}}
@media(max-width:760px){.bb-journey{padding:28px 0!important}.bb-journey-art{min-width:1100px}}
@media(prefers-reduced-motion:reduce){.bb-journey-art,.bb-journey-art:after{animation:none!important}}

.bb-campus-visual{display:block;min-width:0;overflow:hidden;border-radius:26px;box-shadow:0 22px 65px #0047ff18}
.bb-campus-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}

.bb-merged-benefits .container{position:relative;z-index:1}
.bb-merged-benefits .features{grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.bb-benefit{display:flex;flex-direction:column;min-width:0;min-height:250px}
.bb-benefit h3{font-size:18px;line-height:1.3;margin-bottom:12px}
.bb-benefit p{font-size:12px;line-height:1.75;margin-bottom:20px}
.bb-benefit small{display:block;margin-top:auto;color:#0047ff;font-size:12px;font-weight:800}
.bb-vivid-home .student-section .feature:nth-child(5){background:#fff8da}
.bb-anchor{position:absolute;top:0;scroll-margin-top:100px}
@media(max-width:1100px){.bb-merged-benefits .features{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.bb-merged-benefits .features{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-benefit{min-height:240px}}
@media(max-width:420px){.bb-merged-benefits .features{grid-template-columns:1fr}.bb-benefit{min-height:0}}

/* Larger, simpler audience-card typography. */
.bb-audience-content{padding:28px}
.bb-audience-content h3{font-size:30px;line-height:1.2;min-height:72px;letter-spacing:-.9px;margin-bottom:18px}
.bb-audience-content p{font-size:16px;line-height:1.65;min-height:80px;margin-bottom:24px}
.bb-audience-content li{font-size:16px;line-height:1.6;margin-bottom:10px}
.bb-audience-cta{font-size:15px;min-height:52px}
@media(max-width:1000px) and (min-width:601px){.bb-audience-content{padding:22px 18px}.bb-audience-content h3{font-size:24px;min-height:87px}.bb-audience-content p{font-size:15px;min-height:125px}.bb-audience-content li{font-size:15px}}
@media(max-width:600px){.bb-audience-content{padding:26px}.bb-audience-content h3{font-size:29px;min-height:0}.bb-audience-content p{min-height:0}}

.bb-enterprise-section{background:transparent!important}
.bb-enterprise-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:42px}
.bb-enterprise-art,.bb-enterprise-art picture{display:block;min-width:0;background:transparent}
.bb-enterprise-art img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;filter:drop-shadow(0 20px 22px #0047ff12);transition:transform .35s}
.bb-enterprise-art:hover img{transform:translateY(-5px)}
.bb-enterprise-copy h2{font-size:clamp(30px,3vw,42px);line-height:1.12;letter-spacing:-1.7px;margin:16px 0 22px}
.bb-enterprise-copy h2 span{color:#0047ff}
.bb-enterprise-copy p{font-size:16px;line-height:1.8;color:#536078;margin:0 0 28px}
@media(max-width:900px){.bb-enterprise-layout{grid-template-columns:1fr;gap:24px}.bb-enterprise-art{max-width:700px;justify-self:center}.bb-enterprise-copy{max-width:620px}}
@media(prefers-reduced-motion:reduce){.bb-enterprise-art img{transition:none}.bb-enterprise-art:hover img{transform:none}}

.bb-recruiter-section{background:transparent!important}
.bb-recruiter-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:32px;align-items:center}
.bb-recruiter-copy h2{font-size:clamp(30px,3vw,42px);line-height:1.12;letter-spacing:-1.6px;margin:16px 0 22px}
.bb-recruiter-copy h2 span{color:#0047ff}
.bb-recruiter-copy p{font-size:16px;line-height:1.8;color:#536078;margin:0 0 28px}
.bb-recruiter-links{display:flex;gap:10px;flex-wrap:wrap}
.bb-recruiter-art,.bb-recruiter-art picture{display:block;min-width:0;background:transparent}
.bb-recruiter-art img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 20px #0047ff12);transition:transform .3s}
.bb-recruiter-art:hover img{transform:translateY(-5px)}
@media(max-width:900px){.bb-recruiter-layout{grid-template-columns:1fr;gap:30px}.bb-recruiter-art{grid-row:1;max-width:760px;justify-self:center}}
@media(prefers-reduced-motion:reduce){.bb-recruiter-art img{transition:none}.bb-recruiter-art:hover img{transform:none}}

/* Four compact, equal audience cards. */
.bb-audience-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bb-audience-card picture{aspect-ratio:1.7}
.bb-audience-content{padding:22px 20px}
.bb-audience-content h3{font-size:25px;line-height:1.2;min-height:60px;margin-bottom:12px;letter-spacing:-.6px}
.bb-audience-content p{font-size:15px;line-height:1.6;min-height:72px;margin-bottom:16px}
.bb-audience-content ul{margin-bottom:20px}
.bb-audience-content li{font-size:14px;line-height:1.5;margin-bottom:8px}
.bb-audience-cta{font-size:13px;min-height:46px}
.bb-audience-card:nth-child(4){background:linear-gradient(150deg,#fff,#f0eaff)}
.bb-audience-card.bb-organizer-card img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center 39%}
@media(max-width:1100px){.bb-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.bb-audience-content h3{font-size:27px;min-height:65px}.bb-audience-content p{min-height:72px}}
@media(max-width:600px){.bb-audience-grid{grid-template-columns:1fr;max-width:410px}.bb-audience-content h3{min-height:0;font-size:27px}.bb-audience-content p{min-height:0}.bb-audience-content{padding:22px 24px}}

/* Compact mobile benefit tiles: keep all five visible without tall cards. */
@media(max-width:760px){
  .bb-merged-benefits .features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .bb-merged-benefits .bb-benefit{min-height:0;padding:15px 14px;border-radius:16px;gap:0}
  .bb-merged-benefits .bb-benefit>span{font-size:24px;margin-bottom:8px;line-height:1.2}
  .bb-merged-benefits .bb-benefit h3{font-size:15px;line-height:1.25;margin:0 0 7px;min-height:0}
  .bb-merged-benefits .bb-benefit p{font-size:11px;line-height:1.5;margin:0 0 10px}
  .bb-merged-benefits .bb-benefit small{font-size:11px}
}
@media(max-width:420px){
  .bb-merged-benefits .features{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .bb-merged-benefits .bb-benefit{padding:13px 12px;border-radius:15px}
  .bb-merged-benefits .bb-benefit h3{font-size:14px}
  .bb-merged-benefits .bb-benefit p{font-size:10.5px;line-height:1.45}
  .bb-merged-benefits .bb-benefit:last-child{grid-column:1/-1;display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center}
  .bb-merged-benefits .bb-benefit:last-child>span{grid-row:1/4;margin:0;align-self:center}
  .bb-merged-benefits .bb-benefit:last-child h3,.bb-merged-benefits .bb-benefit:last-child p,.bb-merged-benefits .bb-benefit:last-child small{grid-column:2}
  .bb-merged-benefits .bb-benefit:last-child p{margin:2px 0 6px}
}

/* Last-pass mobile UX: concise audience cards and breathing room. */
@media(max-width:760px){
 #decouvrir .bb-audience-grid{gap:12px}
 #decouvrir .bb-audience-content{padding:18px 19px}
 #decouvrir .bb-audience-content h3{font-size:22px;min-height:0;line-height:1.2;letter-spacing:-.4px;margin:0 0 9px}
 #decouvrir .bb-audience-content p{font-size:13px;line-height:1.55;margin:0 0 10px}
 #decouvrir .bb-audience-content ul{margin:8px 0 10px}
 #decouvrir .bb-audience-content li{line-height:1.4}
 #decouvrir .bb-audience-cta{margin-top:7px}
}
