/* Final Academy catalogue polish: real product hierarchy, trustworthy empty states and responsive course cards. */
:root{
  --ab-ink:#0b2f33;
  --ab-muted:#5d7477;
  --ab-teal:#078f86;
  --ab-teal-dark:#006b64;
  --ab-gold:#e5a51f;
  --ab-surface:#ffffff;
  --ab-soft:#f3faf8;
  --ab-line:#d9e8e4;
  --ab-shadow:0 22px 60px rgba(7,50,53,.1);
}

body[data-academy-page="catalogue"]{background:linear-gradient(180deg,#fbfefd 0,#fff 36%,#f7fbfa 100%);color:var(--ab-ink)}
body[data-academy-page="catalogue"] main{overflow:hidden}

body[data-academy-page="catalogue"] .academy-nav{
  min-height:76px;
  padding-inline:clamp(18px,4vw,64px);
  border-bottom:1px solid rgba(205,228,223,.8);
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 7px 24px rgba(10,54,57,.04);
}
body[data-academy-page="catalogue"] .academy-brand img{box-shadow:0 10px 24px rgba(5,60,60,.16)}
body[data-academy-page="catalogue"] .academy-nav nav a{position:relative;font-weight:800}
body[data-academy-page="catalogue"] .academy-nav nav a[aria-current="page"]::after{content:"";position:absolute;left:14px;right:14px;bottom:-10px;height:3px;border-radius:99px;background:var(--ab-teal)}

body[data-academy-page="catalogue"] .academy-hero{
  position:relative;
  width:min(1240px,calc(100% - 36px));
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
  gap:clamp(30px,5vw,76px);
  align-items:center;
  margin:0 auto;
  padding:clamp(54px,7vw,92px) 0 50px;
}
body[data-academy-page="catalogue"] .academy-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:520px;
  height:520px;
  right:-260px;
  top:-170px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(7,143,134,.12),rgba(7,143,134,0) 70%);
}
body[data-academy-page="catalogue"] .academy-hero-copy{max-width:700px}
body[data-academy-page="catalogue"] .academy-hero .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #cce5df;border-radius:999px;background:#f7fcfb;color:var(--ab-teal-dark);font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
body[data-academy-page="catalogue"] .academy-hero .eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ab-gold);box-shadow:0 0 0 5px rgba(229,165,31,.12)}
body[data-academy-page="catalogue"] .academy-hero h1{max-width:720px;margin:22px 0 18px;color:var(--ab-ink);font-size:clamp(44px,5.2vw,72px);line-height:.98;letter-spacing:-.055em}
body[data-academy-page="catalogue"] .academy-hero h1 em{color:var(--ab-teal);font-style:normal}
body[data-academy-page="catalogue"] .academy-hero-copy>p{max-width:650px;margin:0;color:var(--ab-muted);font-size:clamp(17px,1.65vw,21px);line-height:1.65}
body[data-academy-page="catalogue"] .academy-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
body[data-academy-page="catalogue"] .academy-hero-actions a{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border-radius:15px;font-size:14px;font-weight:950;text-decoration:none}
body[data-academy-page="catalogue"] .academy-hero-actions .primary{background:linear-gradient(135deg,#078f86,#006a64);color:#fff;box-shadow:0 14px 30px rgba(7,143,134,.22)}
body[data-academy-page="catalogue"] .academy-hero-actions .secondary{border:1px solid #cfe2de;background:#fff;color:var(--ab-ink)}

body[data-academy-page="catalogue"] .academy-search{max-width:700px;display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:25px;padding:8px;border:1px solid #d7e8e4;border-radius:18px;background:#fff;box-shadow:0 14px 36px rgba(7,48,51,.08)}
body[data-academy-page="catalogue"] .academy-search input{min-width:0;height:48px;padding:0 16px;border:0;background:transparent;color:var(--ab-ink);font:inherit;font-size:15px;outline:none}
body[data-academy-page="catalogue"] .academy-search input::placeholder{color:#849496}
body[data-academy-page="catalogue"] .academy-search button{min-height:48px;padding:0 18px;border:0;border-radius:12px;background:#0c3538;color:#fff;font:inherit;font-size:13px;font-weight:900;cursor:pointer}
body[data-academy-page="catalogue"] .hero-meta{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px;color:#5b7274;font-size:12px;font-weight:750}
body[data-academy-page="catalogue"] .hero-meta span{display:inline-flex;align-items:center;gap:7px}
body[data-academy-page="catalogue"] .hero-meta span::before{content:"✓";width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#e7f6f2;color:var(--ab-teal-dark);font-size:10px;font-weight:950}

body[data-academy-page="catalogue"] .academy-app-showcase{
  position:relative;
  min-height:500px;
  overflow:hidden;
  padding:28px;
  border:1px solid rgba(188,222,215,.9);
  border-radius:32px;
  background:linear-gradient(145deg,#073f3d 0,#096f68 58%,#0f9a8e 100%);
  color:#fff;
  box-shadow:0 28px 80px rgba(5,61,59,.24);
  isolation:isolate;
}
body[data-academy-page="catalogue"] .academy-app-showcase::before{content:"";position:absolute;z-index:-1;width:330px;height:330px;right:-110px;top:-120px;border-radius:50%;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 42px rgba(255,255,255,.04),0 0 0 84px rgba(255,255,255,.025)}
body[data-academy-page="catalogue"] .academy-app-showcase::after{content:"";position:absolute;z-index:-1;inset:auto -50px -95px 80px;height:230px;border-radius:50%;background:rgba(3,34,35,.25);filter:blur(4px);transform:rotate(-8deg)}
body[data-academy-page="catalogue"] .app-showcase-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
body[data-academy-page="catalogue"] .app-showcase-brand{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
body[data-academy-page="catalogue"] .app-showcase-brand img{width:48px;height:48px;border-radius:15px;border:1px solid rgba(255,255,255,.24);box-shadow:0 10px 24px rgba(0,0,0,.18)}
body[data-academy-page="catalogue"] .app-showcase-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.1);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
body[data-academy-page="catalogue"] .academy-app-showcase h2{max-width:430px;margin:34px 0 12px;color:#fff;font-size:clamp(34px,4vw,48px);line-height:1.04;letter-spacing:-.04em}
body[data-academy-page="catalogue"] .academy-app-showcase>p{max-width:460px;margin:0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.65}
body[data-academy-page="catalogue"] .app-learning-path{display:grid;gap:10px;margin:26px 0}
body[data-academy-page="catalogue"] .app-learning-path span{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:11px;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.08);font-size:13px;font-weight:800;backdrop-filter:blur(8px)}
body[data-academy-page="catalogue"] .app-learning-path b{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#f1bd4e;color:#17383a;font-size:11px}
body[data-academy-page="catalogue"] .app-showcase-action{position:relative;z-index:2;min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 17px;border-radius:14px;background:#fff;color:#0a3b3d;font-size:13px;font-weight:950;text-decoration:none;box-shadow:0 14px 30px rgba(0,0,0,.14)}
body[data-academy-page="catalogue"] .app-showcase-action span:last-child{font-size:20px}

body[data-academy-page="catalogue"] .academy-proof-strip{width:min(1240px,calc(100% - 36px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 auto 34px}
body[data-academy-page="catalogue"] .academy-proof-strip article{min-height:112px;padding:19px;border:1px solid var(--ab-line);border-radius:20px;background:rgba(255,255,255,.86);box-shadow:0 10px 32px rgba(7,50,53,.045)}
body[data-academy-page="catalogue"] .academy-proof-strip strong{display:block;margin-bottom:6px;color:var(--ab-ink);font-size:14px}
body[data-academy-page="catalogue"] .academy-proof-strip span{color:var(--ab-muted);font-size:12px;line-height:1.55}

body[data-academy-page="catalogue"] .academy-section{width:min(1240px,calc(100% - 36px));margin-inline:auto}
body[data-academy-page="catalogue"] .academy-section#courses{padding-top:52px}
body[data-academy-page="catalogue"] .academy-section#courses .section-head{align-items:end;gap:28px;margin-bottom:20px}
body[data-academy-page="catalogue"] .academy-section#courses .section-head h2{margin-top:8px;font-size:clamp(34px,4vw,50px);letter-spacing:-.04em}
body[data-academy-page="catalogue"] .catalogue-filters{display:flex;align-items:end;gap:8px;padding:8px;border:1px solid var(--ab-line);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(8,47,52,.05)}
body[data-academy-page="catalogue"] .catalogue-filters label:not(.check){min-width:142px;color:#5f7476;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
body[data-academy-page="catalogue"] .catalogue-filters select{height:40px;margin-top:5px;border-radius:11px;background:#f7faf9;color:var(--ab-ink);font-size:12px;font-weight:800}
body[data-academy-page="catalogue"] .catalogue-filters .check{min-height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:11px;background:#f3f8f7;color:var(--ab-ink);font-size:12px;font-weight:850;white-space:nowrap}
body[data-academy-page="catalogue"] [data-catalogue-status]{margin-bottom:18px}
body[data-academy-page="catalogue"] .course-grid{gap:24px}
body[data-academy-page="catalogue"] .course-card-v4{border-radius:24px;box-shadow:0 18px 45px rgba(7,47,50,.09)}
body[data-academy-page="catalogue"] .course-card-v4 .course-body{padding:20px}
body[data-academy-page="catalogue"] .course-card-v4 .course-body h3{font-size:23px}
body[data-academy-page="catalogue"] .course-card-v4 .course-body>p{color:#5d7375}
body[data-academy-page="catalogue"] .course-card-v4 .course-bottom strong{font-size:19px}

body[data-academy-page="catalogue"] .catalogue-empty{
  grid-column:1/-1;
  min-height:300px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
  padding:clamp(26px,5vw,54px);
  border:1px solid var(--ab-line);
  border-radius:28px;
  background:linear-gradient(135deg,#f8fcfb,#eef8f5);
  box-shadow:0 18px 48px rgba(8,47,52,.06);
}
body[data-academy-page="catalogue"] .catalogue-empty-copy{max-width:680px}
body[data-academy-page="catalogue"] .catalogue-empty .eyebrow{display:inline-flex;padding:7px 10px;border-radius:999px;background:#e4f5f1;color:var(--ab-teal-dark);font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
body[data-academy-page="catalogue"] .catalogue-empty h3{margin:14px 0 10px;font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.04em}
body[data-academy-page="catalogue"] .catalogue-empty p{margin:0;color:var(--ab-muted);font-size:15px;line-height:1.65}
body[data-academy-page="catalogue"] .catalogue-empty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:21px}
body[data-academy-page="catalogue"] .catalogue-empty-actions a{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 15px;border-radius:12px;font-size:12px;font-weight:900;text-decoration:none}
body[data-academy-page="catalogue"] .catalogue-empty-actions .primary{background:var(--ab-teal);color:#fff}
body[data-academy-page="catalogue"] .catalogue-empty-actions .secondary{border:1px solid #c9e0da;background:#fff;color:var(--ab-ink)}
body[data-academy-page="catalogue"] .catalogue-empty-mark{width:150px;height:150px;display:grid;place-items:center;border-radius:36px;background:linear-gradient(145deg,#0c514e,#0b9488);color:#fff;font-size:64px;font-weight:900;box-shadow:0 24px 48px rgba(7,111,104,.22);transform:rotate(3deg)}

body[data-academy-page="catalogue"] .soft{margin-top:34px;border-radius:30px;background:#f2f8f6}
body[data-academy-page="catalogue"] .steps article{border:1px solid #dce9e5;border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(7,47,50,.04)}
body[data-academy-page="catalogue"] .instructor-callout{margin-top:36px;margin-bottom:50px;padding:clamp(28px,5vw,52px);border-radius:30px;background:linear-gradient(135deg,#0a3538,#0a5c58);color:#fff;box-shadow:var(--ab-shadow)}
body[data-academy-page="catalogue"] .instructor-callout h2{color:#fff;font-size:clamp(32px,4vw,48px)}
body[data-academy-page="catalogue"] .instructor-callout p{max-width:720px;color:rgba(255,255,255,.75)}
body[data-academy-page="catalogue"] .instructor-callout .link-button{background:#fff;color:#0b4f4d}

@media(max-width:1060px){
  body[data-academy-page="catalogue"] .academy-hero{grid-template-columns:1fr;gap:34px}
  body[data-academy-page="catalogue"] .academy-hero-copy{max-width:820px}
  body[data-academy-page="catalogue"] .academy-app-showcase{min-height:auto}
  body[data-academy-page="catalogue"] .academy-proof-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-academy-page="catalogue"] .academy-section#courses .section-head{align-items:stretch;flex-direction:column}
  body[data-academy-page="catalogue"] .catalogue-filters{width:100%}
}

@media(max-width:720px){
  body[data-academy-page="catalogue"] .academy-nav{padding-inline:15px}
  body[data-academy-page="catalogue"] .academy-hero{width:min(100% - 28px,1240px);padding-top:38px}
  body[data-academy-page="catalogue"] .academy-hero h1{font-size:clamp(39px,12vw,56px)}
  body[data-academy-page="catalogue"] .academy-hero-copy>p{font-size:16px}
  body[data-academy-page="catalogue"] .academy-search{grid-template-columns:1fr}
  body[data-academy-page="catalogue"] .academy-search button{width:100%}
  body[data-academy-page="catalogue"] .academy-app-showcase{padding:22px;border-radius:25px}
  body[data-academy-page="catalogue"] .academy-app-showcase h2{font-size:36px}
  body[data-academy-page="catalogue"] .academy-proof-strip{width:min(100% - 28px,1240px);grid-template-columns:1fr}
  body[data-academy-page="catalogue"] .academy-section{width:min(100% - 28px,1240px)}
  body[data-academy-page="catalogue"] .catalogue-filters{display:grid;grid-template-columns:1fr 1fr}
  body[data-academy-page="catalogue"] .catalogue-filters label:not(.check){min-width:0}
  body[data-academy-page="catalogue"] .catalogue-filters .check{grid-column:1/-1}
  body[data-academy-page="catalogue"] .catalogue-empty{grid-template-columns:1fr;min-height:0}
  body[data-academy-page="catalogue"] .catalogue-empty-mark{display:none}
}

@media(max-width:460px){
  body[data-academy-page="catalogue"] .academy-hero-actions{display:grid}
  body[data-academy-page="catalogue"] .academy-hero-actions a{width:100%}
  body[data-academy-page="catalogue"] .catalogue-filters{grid-template-columns:1fr}
  body[data-academy-page="catalogue"] .catalogue-filters .check{grid-column:auto}
  body[data-academy-page="catalogue"] .app-showcase-top{align-items:flex-start;flex-direction:column}
}

@media(prefers-reduced-motion:reduce){
  body[data-academy-page="catalogue"] *{scroll-behavior:auto!important}
}
