/*
 * Chiky Bombom Creator Academy — v0.23.0 final cross-surface parity hardening.
 * The approved celebrity-grade mockups remain the mandatory visual acceptance target.
 * This layer only hardens composition/resilience; it does not replace the core design system.
 */
.cba-final-parity-v023{
  --cba-v23-gutter:clamp(18px,3.2vw,44px);
  --cba-v23-radius:clamp(18px,2.2vw,34px);
  --cba-v23-shadow:0 24px 80px rgba(14,3,20,.18);
}
.cba-final-parity-v023,.cba-final-parity-v023 *{box-sizing:border-box}
.cba-final-parity-v023 img,.cba-final-parity-v023 picture,.cba-final-parity-v023 video,.cba-final-parity-v023 iframe{max-width:100%}
.cba-final-parity-v023 #cba-main,.cba-final-parity-v023 #cba-main>.elementor,.cba-final-parity-v023 .elementor-location-single{min-width:0;width:100%;overflow-x:clip}
.cba-final-parity-v023 .cba-shell{width:min(var(--cba-max-width),calc(100% - (var(--cba-v23-gutter) * 2)));margin-inline:auto}
.cba-final-parity-v023 h1,.cba-final-parity-v023 h2,.cba-final-parity-v023 h3{overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:balance}
.cba-final-parity-v023 p,.cba-final-parity-v023 li{overflow-wrap:anywhere}
.cba-final-parity-v023 .cba-cover-img,.cba-final-parity-v023 .cba-program-img,.cba-final-parity-v023 .cba-portrait-img{display:block;width:100%;height:100%;object-fit:cover}

/* Strong keyboard focus across both Generated and Elementor-managed surfaces. */
.cba-final-parity-v023 :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #ffd45f!important;outline-offset:3px!important;box-shadow:0 0 0 6px rgba(255,212,95,.17)!important}
.cba-final-parity-v023 .cba-skip{position:fixed;left:14px;top:14px;z-index:999999;transform:translateY(-160%);padding:10px 14px;border-radius:999px;background:#fff;color:#18081d;font-weight:900;transition:transform .18s ease}
.cba-final-parity-v023 .cba-skip:focus{transform:none}
html.cba-drawer-open body.cba-final-parity-v023{overflow:hidden}

/* Home: preserve the dramatic approved composition while making every text block intrinsically safe. */
.cba-final-parity-v023.cba-page-home .cba-hero-copy,.cba-final-parity-v023.cba-page-home .cba-hero-portrait,.cba-final-parity-v023.cba-page-home .cba-hero-meter-card{min-width:0}
.cba-final-parity-v023.cba-page-home .cba-hero h1{max-width:12ch}
.cba-final-parity-v023.cba-page-home .cba-hero h1 em{display:block;max-width:100%}
.cba-final-parity-v023.cba-page-home .cba-hero-portrait picture,.cba-final-parity-v023.cba-page-home .cba-hero-portrait img{width:100%;height:100%}
.cba-final-parity-v023.cba-page-home .cba-hero-meter-card{align-self:center}
.cba-final-parity-v023.cba-page-home .cba-hero-meter-card,.cba-final-parity-v023 .cba-meter-panel,.cba-final-parity-v023 .cba-program,.cba-final-parity-v023 .cba-story-card{box-shadow:var(--cba-v23-shadow)}
.cba-final-parity-v023 .cba-program-media{overflow:hidden}
.cba-final-parity-v023 .cba-program-media img{transition:transform .45s ease,filter .45s ease}
.cba-final-parity-v023 .cba-program:hover .cba-program-media img{transform:scale(1.035);filter:saturate(1.05)}

/* Academy / course / challenge app density. */
.cba-final-parity-v023.cba-page-academy .cba-academy-hero-grid,.cba-final-parity-v023 .cba-course-experience,.cba-final-parity-v023 .cba-challenge-layout{min-width:0}
.cba-final-parity-v023 .cba-course-sidebar,.cba-final-parity-v023 .cba-course-main,.cba-final-parity-v023 .cba-course-rail{min-width:0}
.cba-final-parity-v023 .cba-course-player,.cba-final-parity-v023 .cba-lesson-player{overflow:hidden;border-radius:var(--cba-v23-radius)}
.cba-final-parity-v023 .cba-course-tabs{overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.cba-final-parity-v023 .cba-course-tabs::-webkit-scrollbar{display:none}
.cba-final-parity-v023 .cba-course-tabs>*{flex:0 0 auto}
.cba-final-parity-v023 .cba-lesson-actions{gap:10px;flex-wrap:wrap}

/* Club / AI / Live: visual consistency with approved reference family. */
.cba-final-parity-v023.cba-page-creator-club .cba-club-v022,
.cba-final-parity-v023.cba-page-creator-ai .cba-ai-app-v022,
.cba-final-parity-v023.cba-page-live-events .cba-live-page-v022{isolation:isolate}
.cba-final-parity-v023 .cba-club-feature-grid>a,.cba-final-parity-v023 .cba-ai-compose,.cba-final-parity-v023 .cba-ai-results,.cba-final-parity-v023 .cba-event-card{min-width:0}
.cba-final-parity-v023 .cba-ai-result-cards article,.cba-final-parity-v023 .cba-feed-v3>article,.cba-final-parity-v023 .cba-event-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.cba-final-parity-v023 .cba-ai-result-cards article:hover,.cba-final-parity-v023 .cba-feed-v3>article:hover,.cba-final-parity-v023 .cba-event-card:hover{transform:translateY(-3px)}

/* Dashboard: keep the app-like approved reference, not a generic account page. */
.cba-final-parity-v023.cba-page-dashboard .cba-dashboard{min-width:0}
.cba-final-parity-v023.cba-page-dashboard .cba-dash-main,.cba-final-parity-v023.cba-page-dashboard .cba-dash-grid,.cba-final-parity-v023.cba-page-dashboard .cba-dash-bottom{min-width:0}
.cba-final-parity-v023.cba-page-dashboard .cba-dash-grid>article,.cba-final-parity-v023.cba-page-dashboard .cba-dash-bottom>article,.cba-final-parity-v023.cba-page-dashboard .cba-dash-courses{box-shadow:0 20px 62px rgba(7,2,10,.2)}

/* Elementor managed layouts: eliminate inherited theme gutters / fixed min-widths. */
.cba-final-parity-v023 .elementor-section.cba-elementor-section,
.cba-final-parity-v023 .elementor-section.cba-elementor-section>.elementor-container,
.cba-final-parity-v023 .elementor-section.cba-elementor-section .elementor-column,
.cba-final-parity-v023 .elementor-section.cba-elementor-section .elementor-widget-wrap,
.cba-final-parity-v023 .elementor-section.cba-elementor-section .elementor-widget{min-width:0!important;max-width:100%!important}
.cba-final-parity-v023 .elementor-section.cba-elementor-section{overflow:visible!important}
.cba-final-parity-v023 .elementor-widget-container{max-width:100%}

/* Progressive reveal is opt-in only after JS proves it can manage visibility. */
html.cba-motion-ready .cba-final-parity-v023 .cba-reveal-target{opacity:0;transform:translateY(18px);transition:opacity .52s ease,transform .52s ease}
html.cba-motion-ready .cba-final-parity-v023 .cba-reveal-target.is-visible{opacity:1;transform:none}
html.cba-motion-failsafe .cba-final-parity-v023 .cba-reveal-target{opacity:1!important;transform:none!important}

@media(max-width:1180px){
  .cba-final-parity-v023.cba-page-home .cba-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr)!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-meter-card{grid-column:1/-1;width:min(780px,100%);margin:0 auto 30px}
  .cba-final-parity-v023.cba-page-home .cba-hero-copy{padding-bottom:24px}
  .cba-final-parity-v023 .cba-program-grid{gap:14px}
  .cba-final-parity-v023 .cba-comparison-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .cba-final-parity-v023 .cba-compare-row{min-width:920px}
}

@media(max-width:1024px){
  .cba-final-parity-v023 .cba-shell{width:min(var(--cba-max-width),calc(100% - 36px))}
  .cba-final-parity-v023.cba-page-home .cba-hero-grid{grid-template-columns:1fr!important;padding-top:34px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-copy{order:1;padding:8px 0 4px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-portrait{order:2;width:min(650px,100%);height:620px!important;margin-inline:auto!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-meter-card{order:3;margin-top:-12px}
  .cba-final-parity-v023.cba-page-home .cba-hero h1{font-size:clamp(60px,9.4vw,88px)!important;line-height:.82!important;max-width:10.8ch!important}
  .cba-final-parity-v023.cba-page-home .cba-hero .cba-lead{max-width:720px}
  .cba-final-parity-v023 .cba-about-grid,.cba-final-parity-v023 .cba-meter-shell,.cba-final-parity-v023 .cba-manifesto-grid{gap:34px!important}
  .cba-final-parity-v023 .cba-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:768px){
  .cba-final-parity-v023{--cba-v23-gutter:16px}
  .cba-final-parity-v023 .cba-shell{width:calc(100% - 32px)!important}
  .cba-final-parity-v023 .cba-announcement{display:none!important}
  .cba-final-parity-v023 .cba-header{position:sticky!important;top:var(--wp-admin--admin-bar--height,0px)!important}
  .cba-final-parity-v023 .cba-header-mobile{height:74px!important;padding:0!important}
  .cba-final-parity-v023 .cba-header-zone-left{min-width:0;flex:1 1 auto}
  .cba-final-parity-v023 .cba-header-zone-right{flex:0 0 auto;gap:8px}
  .cba-final-parity-v023 .cba-brand{min-width:0;max-width:100%}
  .cba-final-parity-v023 .cba-wordmark{min-width:0}
  .cba-final-parity-v023 .cba-wordmark b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw;display:block}

  .cba-final-parity-v023.cba-page-home .cba-hero{min-height:0!important;padding-bottom:0!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-grid{width:calc(100% - 32px)!important;padding:32px 0 0!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-copy{max-width:100%;overflow:visible}
  .cba-final-parity-v023.cba-page-home .cba-hero h1{font-size:clamp(49px,13.5vw,72px)!important;line-height:.82!important;letter-spacing:-.045em!important;max-width:100%!important;margin:12px 0 18px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero h1 em{font-size:.98em!important;line-height:.88!important}
  .cba-final-parity-v023.cba-page-home .cba-signature-line{font-size:clamp(28px,8vw,40px)!important;max-width:100%;white-space:normal}
  .cba-final-parity-v023.cba-page-home .cba-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .cba-final-parity-v023.cba-page-home .cba-actions .cba-btn{width:100%!important;justify-content:center!important}
  .cba-final-parity-v023.cba-page-home .cba-play-link{justify-content:center!important;min-height:52px}
  .cba-final-parity-v023.cba-page-home .cba-hero-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;max-width:none!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-metrics span{min-width:0!important;padding:0 7px!important;text-align:center!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-portrait{height:min(112vw,540px)!important;border-radius:28px 28px 0 0!important;overflow:hidden}
  .cba-final-parity-v023.cba-page-home .cba-portrait-img{border-radius:28px 28px 0 0!important;object-position:center 14%!important}
  .cba-final-parity-v023.cba-page-home .cba-scribble-side{left:12px!important;top:18px!important;max-width:55%;font-size:20px!important}
  .cba-final-parity-v023.cba-page-home .cba-scribble-hero{right:12px!important;bottom:26px!important;font-size:28px!important;max-width:70%;text-align:right}
  .cba-final-parity-v023.cba-page-home .cba-hero-meter-card{width:calc(100% - 32px)!important;margin:18px auto 28px!important;padding:20px!important;border-radius:24px!important}

  .cba-final-parity-v023 .cba-program-grid{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-program{border-radius:24px!important}
  .cba-final-parity-v023 .cba-program-media{height:280px!important}
  .cba-final-parity-v023 .cba-about-grid,.cba-final-parity-v023 .cba-meter-shell,.cba-final-parity-v023 .cba-manifesto-grid{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-about-photo,.cba-final-parity-v023 .cba-media-card{height:min(118vw,520px)!important}
  .cba-final-parity-v023 .cba-section-head h2{font-size:clamp(38px,10vw,56px)!important;line-height:.94!important}

  .cba-final-parity-v023 .cba-course-experience,.cba-final-parity-v023 .cba-challenge-layout{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-course-sidebar,.cba-final-parity-v023 .cba-course-rail{position:static!important;width:100%!important;max-width:none!important}
  .cba-final-parity-v023 .cba-course-sidebar{display:flex!important;overflow-x:auto!important;gap:8px!important;padding:10px!important;scroll-snap-type:x proximity}
  .cba-final-parity-v023 .cba-course-sidebar>*{flex:0 0 min(82vw,310px);scroll-snap-align:start}
  .cba-final-parity-v023 .cba-course-main{padding-inline:0!important}

  .cba-final-parity-v023 .cba-club-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cba-final-parity-v023 .cba-club-grid,.cba-final-parity-v023 .cba-ai-workspace-v022,.cba-final-parity-v023 .cba-ai-tools-v022,.cba-final-parity-v023 .cba-live-hero-grid{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-ai-app-v022{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-app-nav{display:flex!important;overflow-x:auto!important;gap:7px!important;padding:10px 14px!important;scrollbar-width:none!important}
  .cba-final-parity-v023 .cba-app-nav>*{flex:0 0 auto}
  .cba-final-parity-v023 .cba-live-hero-photo{min-height:min(118vw,520px)!important}
  .cba-final-parity-v023 .cba-live-benefits{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cba-final-parity-v023 .cba-event-grid-v2{grid-template-columns:1fr!important}

  .cba-final-parity-v023.cba-page-dashboard .cba-dashboard{grid-template-columns:1fr!important}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-nav{display:flex!important;overflow-x:auto!important;gap:8px!important;scrollbar-width:none!important;padding:10px 14px!important}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-nav>*{flex:0 0 auto}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-main{padding:14px!important}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-welcome{min-height:360px!important;padding:22px!important;background-position:64% 16%!important}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-welcome h1{font-size:clamp(42px,11vw,60px)!important;line-height:.92!important}

  .cba-final-parity-v023 .cba-footer-grid{grid-template-columns:1fr 1fr!important;gap:28px 18px!important}
  .cba-final-parity-v023 .cba-footer-brand,.cba-final-parity-v023 .cba-footer-bombom{grid-column:1/-1!important}
}

@media(max-width:480px){
  .cba-final-parity-v023 .cba-shell{width:calc(100% - 24px)!important}
  .cba-final-parity-v023 .cba-header-mobile{height:70px!important}
  .cba-final-parity-v023 .cba-wordmark b{max-width:43vw;font-size:19px!important}
  .cba-final-parity-v023 .cba-wordmark small{font-size:5.7px!important;letter-spacing:.18em!important}
  .cba-final-parity-v023 .cba-lang{font-size:8px!important;gap:3px!important}
  .cba-final-parity-v023 .cba-burger{width:46px!important;height:46px!important;padding:10px!important}

  .cba-final-parity-v023.cba-page-home .cba-hero-grid{width:calc(100% - 24px)!important;padding-top:24px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero h1{font-size:clamp(41px,12.7vw,55px)!important;line-height:.85!important;margin-top:9px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero .cba-lead{font-size:15px!important;line-height:1.45!important}
  .cba-final-parity-v023.cba-page-home .cba-signature-line{font-size:28px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-metrics span{font-size:7px!important;line-height:1.25!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-metrics b{font-size:16px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-portrait{height:420px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-meter-card{width:calc(100% - 24px)!important;margin-top:12px!important}

  .cba-final-parity-v023 .cba-club-feature-grid,.cba-final-parity-v023 .cba-live-benefits{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-ai-modes{display:flex!important;overflow-x:auto!important;gap:6px!important;scrollbar-width:none!important}
  .cba-final-parity-v023 .cba-ai-modes button{flex:0 0 auto!important;min-width:112px!important}
  .cba-final-parity-v023 .cba-ai-compose textarea{min-height:150px!important;padding:16px 64px 16px 16px!important}
  .cba-final-parity-v023 .cba-ai-mic{width:50px!important;height:50px!important;right:10px!important;bottom:10px!important}
  .cba-final-parity-v023 .cba-footer-grid{grid-template-columns:1fr!important}
  .cba-final-parity-v023 .cba-footer-brand,.cba-final-parity-v023 .cba-footer-bombom{grid-column:auto!important}
}

@media(max-width:390px){
  .cba-final-parity-v023.cba-page-home .cba-hero h1{font-size:42px!important;line-height:.86!important}
  .cba-final-parity-v023.cba-page-home .cba-hero h1 em{font-size:.93em!important}
  .cba-final-parity-v023.cba-page-home .cba-scribble-side{font-size:17px!important;max-width:50%!important}
  .cba-final-parity-v023.cba-page-home .cba-scribble-hero{font-size:23px!important}
  .cba-final-parity-v023.cba-page-home .cba-hero-portrait{height:390px!important}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-welcome{min-height:330px!important;padding:18px!important}
  .cba-final-parity-v023.cba-page-dashboard .cba-dash-welcome h1{font-size:40px!important}
}

@media(prefers-reduced-motion:reduce){
  html.cba-motion-ready .cba-final-parity-v023 .cba-reveal-target{opacity:1!important;transform:none!important;transition:none!important}
  .cba-final-parity-v023 .cba-program-media img,.cba-final-parity-v023 .cba-ai-result-cards article,.cba-final-parity-v023 .cba-feed-v3>article,.cba-final-parity-v023 .cba-event-card{transition:none!important}
}
