/* Vidyanik Discovery — programme, MBA directory, and course-detail surfaces. */
.vid-discovery-page{width:100%;margin:0;background:#f4f8fc;color:#173450;font-family:"Nunito",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.vid-discovery{box-sizing:border-box;width:min(1180px,calc(100% - 40px));margin-inline:auto;padding:14px 0 64px;color:#173450;font-family:"Nunito",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.vid-discovery *{box-sizing:border-box}
.vid-discovery a{text-underline-offset:3px}
.vid-discovery svg{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vid-eyebrow{margin:0;color:#0869a8;font-size:.7rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.vid-discovery h1,.vid-discovery h2,.vid-discovery h3{color:#0b264a}
.vid-discovery h1{letter-spacing:-.035em}
.vid-discovery button,.vid-discovery input{font-family:inherit}
.vid-discovery :focus-visible{outline:3px solid rgba(11,121,183,.25);outline-offset:3px}

/* Runtime ownership for the normal WordPress /programmes/ page only. */
.vid-programme-hub-page .content-container.site-container{max-width:none!important;padding-inline:0!important}
.vid-programme-hub-page .content-wrap{display:block!important}
.vid-programme-hub-page #primary{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.vid-programme-hub-page article.entry,.vid-programme-hub-page .content-bg{background:transparent!important;box-shadow:none!important}
.vid-programme-hub-page .entry-header{display:none!important}
.vid-programme-hub-page .entry-content-wrap{padding:0!important}
.vid-programme-hub-page .entry-content{margin:0!important}

/* Programmes hub. */
.vid-programme-hub{padding-top:14px}
.vid-programme-hub__intro{max-width:760px;margin:0 0 20px}
.vid-programme-hub__intro h1{margin:6px 0 7px;font-size:clamp(2.1rem,3.8vw,2.85rem);font-weight:800;line-height:1.04}
.vid-programme-hub__intro p:last-child{margin:0;color:#50677b;font-size:.96rem;font-weight:500;line-height:1.55}
.vid-programme-hub__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.vid-programme-hub__card{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;min-height:188px;padding:22px;border:1px solid #d4e3ed;border-radius:20px;background:linear-gradient(145deg,#fff 0%,#fbfdff 70%,#f4faff 100%);color:#173450;text-decoration:none;box-shadow:0 14px 36px rgba(10,31,68,.06);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.vid-programme-hub__card::after{content:"";position:absolute;right:-48px;bottom:-68px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(8,105,168,.08),rgba(8,105,168,0) 70%);pointer-events:none}
.vid-programme-hub__card:hover{transform:translateY(-2px);border-color:#a9ccdf;box-shadow:0 18px 42px rgba(10,31,68,.085)}
.vid-programme-hub__icon{display:grid;width:56px;height:56px;place-items:center;border:1px solid #cfe4f0;border-radius:16px;background:linear-gradient(145deg,#eaf7fd,#f6fbfe);color:#0875b4;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.vid-programme-hub__icon svg{width:27px;height:27px}
.vid-programme-hub__body{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center}
.vid-programme-hub__code{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border:1px solid #dbe8f0;border-radius:999px;background:#f7fbfd;color:#587187;font-size:.67rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.vid-programme-hub__card strong{margin-top:8px;color:#0b264a;font-size:1.32rem;font-weight:800;line-height:1.2}
.vid-programme-hub__description{max-width:420px;margin-top:5px;color:#607487;font-size:.83rem;font-weight:500;line-height:1.48}
.vid-programme-hub__cta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-top:2px;padding:10px 12px;border:1px solid #cbdfe9;border-radius:12px;background:#fff;color:#0869a8;font-size:.82rem;font-weight:700}
.vid-programme-hub__cta>span{font-size:1rem}
.vid-programme-hub__shortcut{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;border:1px solid #d8e5ee;border-radius:16px;background:rgba(255,255,255,.72);box-shadow:0 8px 24px rgba(10,31,68,.035)}
.vid-programme-hub__shortcut-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#edf7fc;color:#0869a8}
.vid-programme-hub__shortcut-icon svg{width:20px;height:20px}
.vid-programme-hub__shortcut div{display:grid;gap:2px}
.vid-programme-hub__shortcut strong{color:#173450;font-size:.87rem;font-weight:700}
.vid-programme-hub__shortcut span{color:#617589;font-size:.79rem;font-weight:500;line-height:1.42}
.vid-programme-hub__shortcut>a{display:inline-flex;align-items:center;gap:6px;color:#0869a8;font-size:.8rem;font-weight:700;text-decoration:none;white-space:nowrap}

/* Shared premium compact hero. */
.vid-discovery__hero{padding:18px 20px;border:1px solid #d5e3ed;border-radius:19px;background:linear-gradient(145deg,#fff 0%,#fbfdff 100%);box-shadow:0 12px 32px rgba(10,31,68,.055)}
.vid-discovery__hero h1{max-width:920px;margin:5px 0 7px;font-size:clamp(2rem,3.3vw,2.55rem);font-weight:800;line-height:1.05}
.vid-discovery__hero>p:not(.vid-eyebrow):not(.vid-programme-meta):not(.vid-course-hero__meta){max-width:780px;margin:0;color:#50677b;font-size:.95rem;font-weight:500;line-height:1.52}
.vid-programme-meta{margin:7px 0 0!important;color:#6a7d8e;font-size:.84rem;font-weight:500;line-height:1.4}
.vid-course-directory-search{display:grid;gap:6px;max-width:660px;margin-top:12px;color:#29465f;font-size:.88rem;font-weight:600}
.vid-course-directory-search__label{display:block}
.vid-course-directory-search__field{position:relative;display:block}
.vid-course-directory-search__icon{position:absolute;z-index:1;left:13px;top:50%;display:grid;width:20px;height:20px;place-items:center;color:#6a8294;transform:translateY(-50%);pointer-events:none}
.vid-course-directory-search__icon svg{width:18px;height:18px}
.vid-course-directory-search input{width:100%;min-height:45px;padding:10px 13px 10px 42px;border:1px solid #c9dbe7;border-radius:12px;background:#fff;color:#173450;font-size:.92rem;font-weight:500;outline:none;box-shadow:inset 0 1px 2px rgba(10,31,68,.02)}
.vid-course-directory-search input::placeholder{color:#738598;opacity:1}
.vid-course-directory-search input:focus{border-color:#0b79b7;box-shadow:0 0 0 3px rgba(11,121,183,.1)}

/* Desktop directory controls. */
.vid-desktop-filters{display:block;margin-top:13px}
.vid-specialisation-filter{display:flex;flex-wrap:wrap;gap:7px}
.vid-specialisation-filter button,.vid-semester-nav a{display:inline-flex;min-height:37px;align-items:center;justify-content:center;padding:7px 11px;border:1px solid #c9dce8;border-radius:999px;background:#fff;color:#35536c;font-size:.82rem;font-weight:600;line-height:1.25;text-decoration:none;cursor:pointer;box-shadow:0 2px 8px rgba(10,31,68,.025)}
.vid-specialisation-filter button:hover,.vid-semester-nav a:hover{border-color:#8fc3dc;background:#f5fbfe;color:#0869a8}
.vid-specialisation-filter button[aria-pressed="true"]{border-color:#0869a8;background:#0869a8;color:#fff;box-shadow:0 6px 16px rgba(8,105,168,.17)}
.vid-semester-nav{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}
.vid-semester-nav [hidden]{display:none!important}
.vid-mobile-filter-toolbar,.vid-filter-sheet{display:none}
.vid-filter-sheet[hidden]{display:none!important}
body.vid-discovery-filter-open{overflow:hidden}

/* Semester and premium course cards. */
.vid-semester-group{margin-top:24px;scroll-margin-top:88px}
.vid-semester-group[hidden],.vid-course-card[hidden]{display:none!important}
.vid-semester-group__heading{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.vid-semester-group__heading::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,#dbe7ef,transparent)}
.vid-semester-group__heading h2{margin:0;font-size:1.3rem;font-weight:800;letter-spacing:-.02em}
.vid-programme-directory .vid-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vid-programme-directory .vid-course-card{display:flex;min-width:0;flex-direction:column;padding:16px;border:1px solid #d3e2ec;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(10,31,68,.045);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.vid-programme-directory .vid-course-card:hover{transform:translateY(-1px);border-color:#b8d3e2;box-shadow:0 14px 32px rgba(10,31,68,.065)}
.vid-course-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.vid-course-card__code{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid #d2e8f3;border-radius:999px;background:#eef8fc;color:#0869a8;font-size:.75rem;font-weight:700;letter-spacing:.02em}
.vid-course-card__semester{color:#6b7f90;font-size:.78rem;font-weight:500}
.vid-course-card__title{margin:10px 0 0;font-size:1.08rem;font-weight:800;line-height:1.32;letter-spacing:-.01em}
.vid-course-card__title-link{color:#0b264a;text-decoration:none}
.vid-course-card__title-link:hover{text-decoration:underline;text-decoration-thickness:1px}
.vid-course-card__meta{margin-top:4px;color:#627589;font-size:.86rem;font-weight:500;line-height:1.4}
.vid-course-card__resources{display:grid;gap:8px;width:100%;margin-top:12px}
.vid-course-card__resource-group{padding:9px;border:1px solid #e0e9ef;border-radius:12px;background:#fafcfd}
.vid-course-card__resource-group--free{border-color:#d7ebe2;background:#f7fbf9}
.vid-course-card__resource-group--vidyanik{border-color:#d9e7f0;background:#f8fbfd}
.vid-course-card__resource-group>small{display:block;margin-bottom:6px;color:#63778a;font-size:.62rem;font-weight:600;letter-spacing:.08em}
.vid-course-card__resource-group--free>small{color:#3c755f}
.vid-course-card__resource-group--vidyanik>small{color:#0869a8}
.vid-course-card__resource-actions{display:grid;gap:6px}
.vid-resource-action{display:grid;grid-template-columns:30px minmax(0,1fr) auto;min-height:48px;align-items:center;gap:9px;padding:8px 9px;border:1px solid #d9e4eb;border-radius:10px;background:#fff;color:#29465f;font-size:.82rem;font-weight:600;line-height:1.25;text-decoration:none}
.vid-resource-action__icon{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:#f2f6f9;color:#5b7184}
.vid-resource-action__icon svg{width:16px;height:16px}
.vid-resource-action__copy{display:grid;gap:2px;min-width:0}
.vid-resource-action__label{color:inherit;font-size:.95rem;font-weight:600;line-height:1.25}
.vid-resource-action__copy>small{color:#687d8e;font-size:.81rem;font-weight:500;line-height:1.25}
.vid-resource-action__chevron{color:#0869a8;font-size:.85rem;font-weight:700}
a.vid-resource-action--free{border-color:#d1e7dc;color:#2b6651}
a.vid-resource-action--free .vid-resource-action__icon{background:#edf8f2;color:#2e7358}
a.vid-resource-action--vidyanik{border-color:#d2e4ef;color:#0869a8}
a.vid-resource-action--vidyanik .vid-resource-action__icon{background:#edf7fc;color:#0869a8}
.vid-resource-action[data-resource-status="coming-soon"]{background:#f7f9fa;color:#667987}
.vid-resource-action[data-resource-status="coming-soon"] .vid-resource-action__icon{background:#edf1f4;color:#788793}
.vid-course-card__details{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:9px 11px;border:1px solid #c8dce8;border-radius:11px;background:#fff;color:#0869a8;font-size:.88rem;font-weight:700;text-decoration:none}
.vid-course-card__details:hover{border-color:#86bdd8;background:#f4fbfe}

/* Compatibility for standard programme cards. */
.vid-course-card__chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.vid-course-chip{display:inline-flex;min-height:24px;align-items:center;padding:4px 7px;border-radius:999px;font-size:.68rem;font-weight:600}
.vid-course-chip--free{border:1px solid #cfe8db;background:#f2faf6;color:#2a6851}
.vid-course-chip--vidyanik{border:1px solid #d3e6f2;background:#f3f9fd;color:#0869a8}
.vid-course-card__action-row{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:auto;padding:9px 11px;border-radius:11px;background:#0b3b68;color:#fff}
.vid-course-card__action{font-size:.8rem;font-weight:700}
.vid-course-card__arrow{font-size:.88rem;font-weight:700}
.vid-course-directory-no-results,.vid-discovery-empty{margin-top:20px;padding:15px 17px;border:1px solid #d8e5ee;border-radius:13px;background:#fff;color:#4e6377;font-size:.86rem;font-weight:500;line-height:1.5}
.vid-course-directory-no-results[hidden]{display:none!important}

/* Course detail hero and shared section surfaces. */
.vid-course-hero{padding:18px 20px;background:linear-gradient(145deg,#fff 0%,#fafdff 100%)}
.vid-course-hero h1{max-width:900px;margin-bottom:9px}
.vid-discovery__back{display:inline-flex;align-items:center;min-height:32px;margin:0 0 4px;color:#0869a8!important;font-size:.76rem;font-weight:600;text-decoration:none!important}
.vid-course-hero__meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}
.vid-course-hero__meta span{display:inline-flex;align-items:center;min-height:29px;padding:5px 9px;border:1px solid #d9e5ec;border-radius:999px;background:#f8fbfd;color:#516a7e;font-size:.72rem;font-weight:600}
.vid-section-heading h2{margin:4px 0 5px;font-size:clamp(1.3rem,2.3vw,1.75rem);font-weight:800;letter-spacing:-.025em}
.vid-section-heading p:last-child{margin:0;color:#52677a;font-size:.84rem;font-weight:500;line-height:1.5}
.vid-section-heading--compact{max-width:300px}
.vid-course-overview,.vid-free-resources,.vid-course-services,.vid-course-available{margin-top:14px;padding:18px;border:1px solid #d8e5ee;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(10,31,68,.035)}
.vid-course-overview{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.5fr);gap:28px;align-items:start}
.vid-course-overview__table-wrap{overflow:hidden;border:1px solid #dde7ee;border-radius:13px;background:#fbfdfe}
.vid-course-facts-table{width:100%;border-collapse:collapse;border-spacing:0;margin:0}
.vid-course-facts-table th,.vid-course-facts-table td{padding:11px 13px;border:0;border-bottom:1px solid #e5edf2;text-align:left;vertical-align:top;line-height:1.35}
.vid-course-facts-table tr:last-child th,.vid-course-facts-table tr:last-child td{border-bottom:0}
.vid-course-facts-table th{width:42%;background:#f8fbfd;color:#667b8e;font-size:.81rem;font-weight:600}
.vid-course-facts-table td{color:#173450;font-size:.88rem;font-weight:600}

/* Free course resources. */
.vid-course-resource-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}
.vid-course-resource-row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;min-height:94px;align-items:center;padding:13px;border:1px solid #d4e4ed;border-radius:14px;background:linear-gradient(145deg,#fff,#fbfdfe);color:#173450;text-decoration:none;box-shadow:0 5px 16px rgba(10,31,68,.025)}
.vid-course-resource-row:hover{border-color:#8fc3dc;background:#f8fcff}
.vid-course-resource-row__icon{display:grid;width:40px;height:40px;place-items:center;border-radius:11px;background:#edf8f2;color:#2f7459}
.vid-course-resource-row__icon svg{width:20px;height:20px}
.vid-course-resource-row__copy{display:grid;gap:3px;min-width:0}
.vid-course-resource-row__copy strong{color:#173450;font-size:.94rem;font-weight:700;line-height:1.3}
.vid-course-resource-row__copy small{color:#527260;font-size:.8rem;font-weight:500}
.vid-course-resource-row__action{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:9px;border-top:1px solid #e4edf2;color:#0869a8;font-size:.82rem;font-weight:700}

/* Paid Vidyanik service summary. */
.vid-course-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}
.vid-course-service-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;min-height:150px;padding:13px;border:1px solid #d7e5ee;border-radius:14px;background:#fbfdfe}
.vid-course-service-card--available{border-color:#c9dfec;background:linear-gradient(145deg,#fff,#f6fbfe)}
.vid-course-service-card__icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#edf7fc;color:#0869a8}
.vid-course-service-card__icon svg{width:21px;height:21px}
.vid-course-service-card__content{display:flex;min-width:0;flex-direction:column}
.vid-course-service-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.vid-course-service-card__heading h3{margin:2px 0 0;font-size:.94rem;font-weight:700;line-height:1.3}
.vid-course-service-card__status{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border-radius:999px;background:#edf2f5;color:#687b8b;font-size:.62rem;font-weight:600}
.vid-course-service-card--available .vid-course-service-card__status{background:#e8f6ef;color:#267054}
.vid-course-service-card__content>p{margin:7px 0 0;color:#607487;font-size:.85rem;font-weight:500;line-height:1.45}
.vid-course-service-card__actions{margin-top:auto;padding-top:10px}
.vid-course-service-card__primary,.vid-course-service-card__secondary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:8px 9px;border-radius:9px;font-size:.84rem;font-weight:700;text-decoration:none}
.vid-course-service-card__primary{background:#0b568b;color:#fff!important}
.vid-course-service-card__secondary{border:1px solid #cbdde8;background:#fff;color:#0869a8!important}
.vid-material-jumps{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.vid-material-jumps a{display:inline-flex;min-height:37px;align-items:center;padding:7px 10px;border:1px solid #c8dce8;border-radius:999px;background:#fff;color:#0869a8!important;font-size:.82rem;font-weight:600;text-decoration:none!important}
.vid-course-material-group{margin-top:22px;scroll-margin-top:88px}
.vid-course-material-group>.vid-section-heading{margin-bottom:10px}
.vid-course-resource-surface{padding:0!important;background:transparent!important}
.vid-course-resource-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

@media(min-width:1100px){
  .vid-mba-intro h1{max-width:none;white-space:nowrap;font-size:clamp(2.05rem,2.7vw,2.5rem)}
}

@media(max-width:980px){
  .vid-programme-hub__grid,.vid-programme-directory .vid-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vid-course-resource-list,.vid-course-service-grid,.vid-course-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .vid-course-overview{grid-template-columns:1fr;gap:14px}
  .vid-section-heading--compact{max-width:620px}
}

@media(max-width:680px){
  .vid-discovery{width:calc(100% - 32px);padding:12px 0 46px}
  .vid-programme-hub{padding-top:10px}
  .vid-programme-hub__intro{margin-bottom:13px}
  .vid-programme-hub__intro h1{font-size:1.86rem;line-height:1.06}
  .vid-programme-hub__intro p:last-child{font-size:.87rem;line-height:1.46}
  .vid-programme-hub__grid{grid-template-columns:1fr;gap:10px}
  .vid-programme-hub__card{grid-template-columns:48px minmax(0,1fr);gap:12px;min-height:0;padding:15px;border-radius:16px}
  .vid-programme-hub__icon{width:48px;height:48px;border-radius:13px}
  .vid-programme-hub__icon svg{width:23px;height:23px}
  .vid-programme-hub__card strong{margin-top:5px;font-size:1.12rem}
  .vid-programme-hub__description{font-size:.78rem;line-height:1.42}
  .vid-programme-hub__cta{min-height:42px;margin-top:0;font-size:.79rem}
  .vid-programme-hub__shortcut{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px 13px}
  .vid-programme-hub__shortcut-icon{width:38px;height:38px}
  .vid-programme-hub__shortcut>a{grid-column:1/-1;justify-content:space-between;min-height:40px;padding-top:8px;border-top:1px solid #e2eaf0}

  .vid-discovery__hero{padding:14px;border-radius:16px}
  .vid-discovery__hero h1{margin-top:4px;font-size:1.7rem;line-height:1.07;letter-spacing:-.03em}
  .vid-discovery__hero>p:not(.vid-eyebrow):not(.vid-programme-meta):not(.vid-course-hero__meta){font-size:.94rem;line-height:1.45}
  .vid-programme-meta{margin-top:6px!important;font-size:.82rem;line-height:1.35}
  .vid-course-directory-search{margin-top:10px;font-size:.88rem}
  .vid-course-directory-search input{min-height:44px;padding-left:40px;font-size:.88rem}

  .vid-desktop-filters{display:none}
  .vid-mobile-filter-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:8px 9px;border:1px solid #d7e4ed;border-radius:13px;background:#fff;box-shadow:0 5px 18px rgba(10,31,68,.03)}
  .vid-mobile-filter-toolbar>span{min-width:0;color:#607487;font-size:.82rem;font-weight:500;line-height:1.32}
  .vid-mobile-filter-toolbar>button{display:inline-flex;min-height:40px;align-items:center;gap:6px;padding:7px 11px;border:0;border-radius:10px;background:#0869a8;color:#fff;font-size:.84rem;font-weight:700;cursor:pointer}
  .vid-filter-sheet:not([hidden]){position:fixed;z-index:100050;inset:0;display:flex;align-items:flex-end;justify-content:center}
  .vid-filter-sheet__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(6,25,46,.48);cursor:pointer}
  .vid-filter-sheet__dialog{position:relative;z-index:1;width:100%;max-height:min(82vh,720px);overflow:auto;padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;background:#fff;box-shadow:0 -18px 50px rgba(6,25,46,.18)}
  .vid-filter-sheet__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}
  .vid-filter-sheet__head span{color:#0869a8;font-size:.61rem;font-weight:600;letter-spacing:.1em}
  .vid-filter-sheet__head h2{margin:3px 0 0;font-size:1.28rem;font-weight:800}
  .vid-filter-sheet__head>button{display:grid;width:42px;height:42px;place-items:center;border:1px solid #d7e4ed;border-radius:12px;background:#fff;color:#28465f;font-size:1.3rem;cursor:pointer}
  .vid-filter-sheet__group{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:12px 0;border:0;border-top:1px solid #e3ebf0}
  .vid-filter-sheet__group legend{width:100%;margin-bottom:3px;color:#304d65;font-size:.75rem;font-weight:600}
  .vid-filter-sheet__group button{min-height:40px;padding:7px 10px;border:1px solid #ccdde7;border-radius:999px;background:#fff;color:#405a70;font-size:.72rem;font-weight:500;cursor:pointer}
  .vid-filter-sheet__group button[aria-pressed="true"]{border-color:#0869a8;background:#edf7fc;color:#0869a8;font-weight:700}
  .vid-filter-sheet__actions{position:sticky;bottom:0;display:grid;grid-template-columns:1fr 1.5fr;gap:8px;margin:4px -2px -2px;padding-top:10px;background:#fff}
  .vid-filter-sheet__actions button{min-height:44px;border:1px solid #c9dce7;border-radius:11px;background:#fff;color:#345168;font-size:.75rem;font-weight:700;cursor:pointer}
  .vid-filter-sheet__actions button:last-child{border-color:#0869a8;background:#0869a8;color:#fff}

  .vid-semester-group{margin-top:18px;scroll-margin-top:76px}
  .vid-semester-group__heading{margin-bottom:8px}
  .vid-semester-group__heading h2{font-size:1.22rem}
  .vid-programme-directory .vid-course-grid{grid-template-columns:1fr;gap:10px}
  .vid-programme-directory .vid-course-card{padding:13px;border-radius:16px;box-shadow:0 7px 22px rgba(10,31,68,.04)}
  .vid-course-card__title{font-size:1.02rem}
  .vid-course-card__resources{gap:7px;margin-top:10px}
  .vid-course-card__resource-group{padding:8px}
  .vid-resource-action{min-height:48px;font-size:.86rem}
  .vid-resource-action__label{font-size:.95rem}
  .vid-resource-action__copy>small{font-size:.81rem}
  .vid-course-card__details{min-height:43px;font-size:.88rem}

  .vid-course-hero{padding:14px}
  .vid-course-hero h1{font-size:1.65rem;line-height:1.08}
  .vid-discovery__back{min-height:30px;font-size:.82rem}
  .vid-course-hero__meta{gap:5px;margin-top:7px}
  .vid-course-hero__meta span{min-height:27px;padding:4px 8px;font-size:.8rem;font-weight:500}
  .vid-course-overview,.vid-free-resources,.vid-course-services,.vid-course-available{margin-top:11px;padding:14px;border-radius:16px}
  .vid-section-heading h2{font-size:1.27rem}
  .vid-section-heading p:last-child{font-size:.88rem;line-height:1.45}
  .vid-course-overview{gap:12px}
  .vid-course-facts-table th,.vid-course-facts-table td{padding:10px 9px}
  .vid-course-facts-table th{width:43%;font-size:.81rem;font-weight:500}
  .vid-course-facts-table td{font-size:.88rem;font-weight:600}
  .vid-course-resource-list,.vid-course-service-grid,.vid-course-resource-grid{grid-template-columns:1fr!important}
  .vid-course-resource-row{grid-template-columns:38px minmax(0,1fr);min-height:82px;padding:11px 12px}
  .vid-course-resource-row__icon{width:38px;height:38px}
  .vid-course-resource-row__copy strong{font-size:.92rem}
  .vid-course-resource-row__action{font-size:.82rem}
  .vid-course-service-card{grid-template-columns:40px minmax(0,1fr);min-height:132px;padding:12px}
  .vid-course-service-card__icon{width:40px;height:40px}
  .vid-course-service-card__heading h3{font-size:.94rem}
  .vid-course-service-card__content>p{font-size:.85rem}
  .vid-material-jumps{display:grid;grid-template-columns:1fr;gap:7px}
  .vid-material-jumps a{justify-content:space-between}
}

@media(max-width:359px){
  .vid-discovery{width:calc(100% - 28px)}
  .vid-programme-hub__card{grid-template-columns:44px minmax(0,1fr);padding:13px}
  .vid-programme-hub__icon{width:44px;height:44px}
  .vid-course-resource-row{grid-template-columns:36px minmax(0,1fr)}
  .vid-course-service-card__heading{align-items:flex-start;flex-direction:column}
}

@media(prefers-reduced-motion:reduce){
  .vid-programme-hub__card,.vid-programme-directory .vid-course-card{transition:none}
  .vid-programme-hub__card:hover,.vid-programme-directory .vid-course-card:hover{transform:none}
}

/* Core 1.5.25: /programmes/ mobile viewport gutter root fix.
 * Kadence can expose a containing block wider than the visual viewport on this
 * managed page. Percentage widths therefore cancel the intended gutter. Keep
 * the visible Programme shell viewport-owned, like the stable commerce/catalogue
 * surfaces: 16px per side, 14px on very small phones. */
@media(max-width:719px){
  body.vid-programme-hub-page{overflow-x:clip}
  body.vid-programme-hub-page .vid-programme-hub{
    box-sizing:border-box!important;
    width:calc(100vw - 32px)!important;
    max-width:calc(100vw - 32px)!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
@media(max-width:359px){
  body.vid-programme-hub-page .vid-programme-hub{
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
  }
}
.vid-course-resource-grid--single{grid-template-columns:minmax(0,320px)!important;justify-content:start}
.vid-course-resource-grid--single>.vid-resource-card{width:100%;max-width:320px}
.vid-programme-hub__card.is-coming{cursor:default;box-shadow:0 8px 24px rgba(10,31,68,.035)}
.vid-programme-hub__card.is-coming:hover{transform:none;border-color:#d4e3ed}
.vid-programme-hub__card.is-coming .vid-programme-hub__cta{color:#6d8192;background:#f7fafc}
@media(max-width:719px){
  .vid-course-resource-grid--single{grid-template-columns:1fr!important}
  .vid-course-resource-grid--single>.vid-resource-card{max-width:none}
}
