/* Boundlearn native-wide responsive system.
   Pages opt in with .bl-native-wide; every rule remains isolated above 1800px. */
@media (min-width:1800px) {
  .bl-native-wide {
    --bl-wide-canvas:min(88vw,3360px);
    --bl-wide-edge:max(72px,calc((100vw - var(--bl-wide-canvas))/2));
    --bl-wide-gap:clamp(32px,1.8vw,48px);
    --bl-wide-section-y:clamp(148px,8.5vw,218px);
    --bl-wide-display:clamp(108px,6.1vw,148px);
    --bl-wide-h2:clamp(72px,4.4vw,106px);
    --bl-wide-body:clamp(17px,.82vw,20px);
    --bl-wide-label:clamp(11px,.48vw,13px);
  }

  .bl-native-wide .bl-wide-grid {
    width:var(--bl-wide-canvas);
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:var(--bl-wide-gap);
    margin-inline:auto;
  }

  .bl-native-wide .bl-content-header,
  .bl-native-wide .bl-source-boundlearn-header,
  .bl-native-wide .bl-hub-desktop-menu-shell {
    padding-inline:var(--bl-wide-edge)!important;
  }

  html body.bl-native-wide.bl-boundlearn-home #bl-sticky.bl-source-boundlearn-header,
  html body.bl-native-wide.bl-boundlearn-home #bl-hdr-row.bl-source-boundlearn-header {
    padding-right:var(--bl-wide-edge)!important;
    padding-left:var(--bl-wide-edge)!important;
  }

  .bl-native-wide .bl-content-header,
  .bl-native-wide .bl-source-boundlearn-header {
    min-height:clamp(82px,4.2vw,108px);
    padding-block:clamp(15px,.9vw,22px);
  }

  .bl-native-wide .bl-outcomes-brand img,
  .bl-native-wide .bl-hub-desktop-logo-slot img,
  .bl-native-wide .bl-hub-desktop-menu-logo img {
    width:auto!important;
    height:clamp(25px,1.12vw,29px)!important;
  }

  .bl-native-wide .bl-outcomes-header .bl-desktop-nav,
  .bl-native-wide .bl-hub-desktop-actions,
  .bl-native-wide .bl-hub-desktop-menu-actions {
    gap:clamp(31px,1.65vw,42px)!important;
  }

  .bl-native-wide .bl-hub-desktop-action {
    min-height:clamp(44px,2.05vw,52px);
    font-size:clamp(12px,.56vw,14px);
  }

  .bl-native-wide .bl-hub-desktop-apply {
    min-width:clamp(112px,5.25vw,132px);
    padding-inline:clamp(24px,1.3vw,32px);
  }

  .bl-native-wide .bl-outcomes-header .bl-desktop-nav a {
    font-size:clamp(14px,.66vw,16px);
  }

  .bl-native-wide .bl-outcomes-header .bl-desktop-nav .bl-outcomes-apply {
    min-width:clamp(112px,5.25vw,132px);
    min-height:clamp(44px,2.05vw,52px);
    padding-inline:clamp(24px,1.3vw,32px);
  }

  .bl-native-wide .bl-hub-desktop-menu-body {
    width:var(--bl-wide-canvas);
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:var(--bl-wide-gap);
  }

  .bl-native-wide .bl-hub-desktop-menu-nav {
    grid-column:1 / span 7;
  }

  .bl-native-wide .bl-hub-desktop-menu-side {
    grid-column:9 / -1;
  }

  .bl-native-wide .bl-hub-desktop-menu-nav a,
  .bl-native-wide .bl-hub-desktop-menu-nav summary {
    font-size:clamp(58px,3.2vw,82px);
  }

  .bl-native-wide .bl-hub-desktop-programs-panel {
    width:clamp(440px,23vw,800px);
  }

  .bl-native-wide .bl-hub-desktop-menu-nav .bl-hub-desktop-programs-panel a {
    font-size:clamp(18px,.78vw,30px);
    line-height:1.25;
    white-space:nowrap;
  }

  .bl-native-wide .bl-boundlearn-footer {
    padding-top:clamp(82px,4.5vw,112px)!important;
    padding-right:var(--bl-wide-edge)!important;
    padding-bottom:clamp(52px,2.8vw,70px)!important;
    padding-left:var(--bl-wide-edge)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__inner {
    width:100%!important;
    max-width:none!important;
    margin-inline:0!important;
  }

  .bl-native-wide .bl-boundlearn-footer__grid {
    grid-template-columns:minmax(420px,1.45fr) repeat(2,minmax(230px,.62fr))!important;
    column-gap:clamp(64px,4vw,104px)!important;
    row-gap:48px!important;
    padding-bottom:clamp(48px,2.5vw,64px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__brand img[src*="boundlearn_logo_vector"],
  .bl-native-wide .bl-boundlearn-footer__brand img[alt="Boundlearn"] {
    height:clamp(27px,1.22vw,31px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__brand [data-bl-footer-copy] {
    max-width:46ch!important;
    font-size:clamp(15px,.7vw,17px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__links a {
    font-size:clamp(14.5px,.66vw,16px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__bottom > * {
    font-size:clamp(13px,.58vw,14.5px)!important;
  }
}

@media (min-width:3200px) {
  .bl-native-wide {
    --bl-wide-canvas:min(88vw,3360px);
    --bl-wide-edge:max(120px,calc((100vw - var(--bl-wide-canvas))/2));
    --bl-wide-gap:clamp(52px,1.8vw,72px);
    --bl-wide-section-y:clamp(238px,7.4vw,296px);
    --bl-wide-display:clamp(168px,4.9vw,192px);
    --bl-wide-h2:clamp(118px,3.55vw,138px);
    --bl-wide-body:clamp(21px,.64vw,25px);
    --bl-wide-label:clamp(14px,.4vw,16px);
  }

  .bl-native-wide .bl-content-header,
  .bl-native-wide .bl-source-boundlearn-header {
    min-height:clamp(112px,3.25vw,128px);
    padding-block:clamp(22px,.75vw,30px);
  }

  .bl-native-wide .bl-outcomes-brand img,
  .bl-native-wide .bl-hub-desktop-logo-slot img,
  .bl-native-wide .bl-hub-desktop-menu-logo img {
    height:clamp(32px,.95vw,38px)!important;
  }

  .bl-native-wide .bl-hub-desktop-action {
    min-height:clamp(58px,1.65vw,66px);
    font-size:clamp(15px,.43vw,17px);
  }

  .bl-native-wide .bl-hub-desktop-apply {
    min-width:clamp(148px,4.2vw,168px);
    padding-inline:clamp(32px,1vw,40px);
  }

  .bl-native-wide .bl-hub-desktop-menu-nav a,
  .bl-native-wide .bl-hub-desktop-menu-nav summary {
    font-size:clamp(96px,2.8vw,112px);
  }

  .bl-native-wide .bl-boundlearn-footer {
    padding-top:clamp(146px,4vw,164px)!important;
    padding-bottom:clamp(88px,2.5vw,102px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__grid {
    grid-template-columns:minmax(720px,1.45fr) repeat(2,minmax(360px,.62fr))!important;
    column-gap:clamp(112px,3.4vw,136px)!important;
    row-gap:72px!important;
    padding-bottom:clamp(82px,2.3vw,94px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__brand img[src*="boundlearn_logo_vector"],
  .bl-native-wide .bl-boundlearn-footer__brand img[alt="Boundlearn"] {
    height:clamp(40px,1.12vw,45px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__brand [data-bl-footer-copy] {
    max-width:50ch!important;
    font-size:clamp(20px,.58vw,23px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__links a {
    font-size:clamp(19px,.55vw,22px)!important;
  }

  .bl-native-wide .bl-boundlearn-footer__bottom > * {
    font-size:clamp(17px,.47vw,19px)!important;
  }
}
