/* Section 3: independent of the approved hero and learning panels. */
.vibe-ideas{position:relative;isolation:isolate;overflow:hidden;background:#f6e8d0;color:#25170e;padding:48px 5.6% 0;min-height:64vw;font-family:Georgia,'Times New Roman',serif}
.vibe-ideas::before{content:"";position:absolute;inset:0;z-index:-2;background:url('../assets/images/mastery_lab_parchment_texture_tile.webp') repeat;opacity:.3;pointer-events:none}
.vibe-ideas-copy{position:relative;z-index:1;width:51%;padding-bottom:15vw}
.vibe-ideas-label{display:flex;align-items:center;gap:18px;margin:0 0 17px;font:12px/1.5 Georgia,'Times New Roman',serif;text-transform:uppercase;letter-spacing:.25em;color:#704323}
.vibe-ideas-label::after{content:"";height:1px;flex:1;background:#b69a78}
main>section.vibe-ideas #ideas-title{margin:0 0 24px;font:400 clamp(38px,4.25vw,76px)/.99 Georgia,'Times New Roman',serif;letter-spacing:-.055em;color:#1e130c}
.vibe-ideas-body p{margin:0 0 16px;font:400 clamp(16px,1.3vw,23px)/1.35 Georgia,'Times New Roman',serif;letter-spacing:-.012em}
.vibe-ideas-body .vibe-ideas-emphasis{font-size:clamp(25px,2.6vw,42px);line-height:1.12;color:#814617;margin:18px 0 16px}
.vibe-ideas-emphasis em{color:inherit}
.vibe-ideas-emphasis span{margin-right:8px}
.vibe-ideas-picture{display:contents}
.vibe-ideas-art{position:absolute;z-index:0;bottom:0;left:0;width:100%;height:auto;max-width:none;pointer-events:none}
@media(min-width:769px) and (max-width:1100px){.vibe-ideas{padding-top:36px;min-height:85vw}.vibe-ideas-copy{width:58%;padding-bottom:19vw}.vibe-ideas-art{width:125%;left:-18%}.vibe-ideas-body p{font-size:17px}main>section.vibe-ideas #ideas-title{font-size:43px}}
@media(max-width:768px){.vibe-ideas{padding:30px 22px 0;min-height:0;display:flex;flex-direction:column}.vibe-ideas-copy{width:100%;padding:0}.vibe-ideas-label{font-size:10px;letter-spacing:.2em;margin-bottom:16px}main>section.vibe-ideas #ideas-title{font-size:clamp(37px,7.6vw,58px);line-height:1.03;margin-bottom:23px}.vibe-ideas-body p{font-size:18px;line-height:1.45;margin-bottom:18px}.vibe-ideas-body .vibe-ideas-emphasis{font-size:29px}.vibe-ideas-art{position:relative;left:auto;bottom:auto;width:calc(100% + 44px);max-width:none;margin:0 -22px 0;height:auto}}
/* One mobile journey, in the section's own flow. The transparent image shape
   reserves space around the characters rather than placing art over the copy. */
@media(max-width:768px){
  .vibe-ideas{display:flow-root;padding-bottom:28px}
  .vibe-ideas-copy,.vibe-ideas-body,.vibe-ideas-opening{display:contents}
  .vibe-ideas-art{
    position:relative;float:right;inset:auto;transform:none;
    width:min(60%,340px);height:auto;max-width:none;
    margin:80px -16px 12px 0;
    shape-outside:url('../assets/images/mastery_lab_mobile_illustration.webp');
    shape-image-threshold:.2;shape-margin:16px;
  }
  .vibe-ideas-label{display:block}
  .vibe-ideas-label::after{display:none}
  main>section.vibe-ideas #ideas-title{padding-right:0;min-height:0}
  main>section.vibe-ideas #ideas-title::after{content:none}
  .vibe-ideas-closing{clear:right;padding-top:6px}
}
/* Wide-screen composition: one cohesive editorial text block above the thread. */
@media(min-width:1101px){
  .vibe-ideas{display:block;height:100svh;min-height:0;padding:clamp(24px,4svh,44px) 5.6%}
  .vibe-ideas-copy{display:block;width:62%;padding:0}
  .vibe-ideas-body{display:block;max-width:70ch}
  .vibe-ideas-label{max-width:580px;margin-bottom:16px}
  main>section.vibe-ideas #ideas-title{font-size:clamp(38px,6svh,64px);margin-bottom:22px;text-wrap:balance}
  .vibe-ideas-body p{font-size:clamp(16px,1.95svh,20px);line-height:1.4;margin-bottom:14px;text-wrap:pretty}
  .vibe-ideas-opening{position:relative;z-index:1}
  .vibe-ideas-opening p:last-child{max-width:none}
  .vibe-ideas-art{position:absolute;left:0;bottom:5%;transform:none;width:100%;height:auto;margin:0}
  .vibe-ideas-closing{position:relative;right:auto;bottom:auto;width:auto;z-index:1;margin:20px 0 0}
  .vibe-ideas-body .vibe-ideas-emphasis{font-size:clamp(26px,3.6svh,38px);margin:0;line-height:1.15}
  .vibe-ideas-closing p:last-child{margin-bottom:0}
}
