.tdmi-shop-catalogue{padding-bottom:80px}.tdmi-shop-section-heading{margin-top:26px;padding-top:8px}.tdmi-shop-section-heading span{display:inline-block;color:#073054;font-size:24px;font-weight:800;border-bottom:4px solid #FDD13B;padding-bottom:6px}.tdmi-shop-section-heading--list{width:100%;margin-top:26px}.tdmi-shop-product-card{margin-top:30px;background:var(--tdmi-product-card-bg,#0B3156);color:#fff;height:calc(100% - 30px);display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(7,48,84,.08)}.tdmi-shop-product-image{display:flex;align-items:center;justify-content:center;background:#fff;aspect-ratio:270/170;overflow:hidden;padding:14px}.tdmi-shop-product-image img{width:100%;height:100%;object-fit:contain;object-position:center}.tdmi-shop-product-content{padding:24px;display:flex;flex:1;flex-direction:column}.tdmi-shop-product-category{color:inherit!important;font-weight:500;margin-bottom:8px}.tdmi-shop-product-content h3{font-size:22px;line-height:1.25;margin:0}.tdmi-shop-product-content h3 a{color:inherit!important}.tdmi-shop-product-rule{height:1px;background:currentColor;opacity:.75;margin:8px 0 10px}.tdmi-shop-product-meta{display:flex;justify-content:space-between;gap:12px;align-items:center}.tdmi-shop-product-price{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:800;margin:0}.tdmi-product-old-price{text-decoration:line-through;opacity:.7;font-size:12px}.tdmi-shop-product-more{color:inherit!important;font-size:14px;white-space:nowrap}.tdmi-product-instalments{font-size:12px;color:inherit;opacity:.9;margin:8px 0 0}.tdmi-shop-product-button{display:block;width:100%;background:#FDD13B;color:#073054!important;text-align:center;font-weight:800;padding:11px 14px;margin-top:20px;border:2px solid #073054;cursor:pointer}.tdmi-shop-product-button:hover:not(:disabled){background:#63BCEB;color:#fff!important}.tdmi-shop-product-button:disabled{opacity:.65;cursor:not-allowed}.tdmi-shop-product-card--list{display:grid;grid-template-columns:minmax(220px,320px) 1fr;height:auto}.tdmi-shop-product-card--list .tdmi-shop-product-image{aspect-ratio:auto;min-height:280px}.tdmi-shop-product-card--list .tdmi-shop-product-content{justify-content:center}
.tdmi-product-detail{padding:70px 0 90px}.tdmi-product-detail-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:54px;align-items:start}.tdmi-product-main-image{background:#eef2f5;border:1px solid #dde5eb;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden}.tdmi-product-main-image img{width:100%;height:100%;object-fit:contain}.tdmi-product-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}.tdmi-product-thumb{border:1px solid #d8e0e7;background:#fff;padding:0;aspect-ratio:1/1;overflow:hidden}.tdmi-product-thumb img{width:100%;height:100%;object-fit:cover}.tdmi-product-category-label{color:#1288c8;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px}.tdmi-product-detail h2{font-size:38px;color:#073054;margin:10px 0 16px}.tdmi-product-detail-price{font-size:30px;font-weight:800;color:#073054;margin:0 0 10px}.tdmi-product-detail-short{font-size:17px;line-height:1.7;color:#5d6974;margin-bottom:20px}.tdmi-product-meta{border-top:1px solid #e0e5e9;border-bottom:1px solid #e0e5e9;padding:14px 0;margin:20px 0}.tdmi-product-meta p{margin:5px 0}.tdmi-product-detail .tdmi-product-cart-placeholder{width:100%;min-height:52px;background:#FDD13B;border:2px solid #111;color:#073054;font-weight:800;opacity:1;cursor:pointer}.tdmi-product-detail .tdmi-product-cart-placeholder:hover:not(:disabled){background:#63BCEB;color:#fff}.tdmi-product-detail .tdmi-product-cart-placeholder:disabled{opacity:.65;cursor:not-allowed}.tdmi-product-long{margin-top:50px}.tdmi-product-long h3{font-size:27px;color:#073054;margin-bottom:18px}.tdmi-product-long p,.tdmi-product-long li{line-height:1.75;color:#495764}@media(max-width:991px){.tdmi-product-detail-grid{grid-template-columns:1fr}.tdmi-shop-product-card--list{grid-template-columns:1fr}.tdmi-shop-product-card--list .tdmi-shop-product-image{min-height:220px}}@media(max-width:767px){.tdmi-product-detail{padding:45px 0 65px}.tdmi-product-detail h2{font-size:30px}.tdmi-product-thumbs{grid-template-columns:repeat(4,1fr)}}

/* Batch 2 refinement: Shop is the single public catalogue. */
.tdmi-shop-type-filter{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:30px 0 18px;padding:14px 16px;background:#f4f7f9;border:1px solid #e0e6eb}.tdmi-shop-type-filter__label{color:#073054;font-weight:800;font-size:15px}.tdmi-shop-type-filter__buttons{display:flex;flex-wrap:wrap;gap:8px}.tdmi-shop-type-button{min-width:96px;padding:10px 18px;border:1px solid #cbd6df;background:#fff;color:#073054;font-weight:800;transition:background .2s ease,color .2s ease,border-color .2s ease}.tdmi-shop-type-button:hover,.tdmi-shop-type-button.active{background:#073054;color:#fff;border-color:#073054}.tdmi-shop-catalogue + .tdmi-course-cta{margin-top:0}@media(max-width:767px){.tdmi-shop-type-filter{align-items:flex-start;flex-direction:column}.tdmi-shop-type-filter__buttons{width:100%}.tdmi-shop-type-button{flex:1 1 calc(33.333% - 6px);min-width:0;padding:10px 8px}}

/* Batch 2 layout refinement: the item-type control governs the full catalogue,
   and the Shop category list scrolls naturally instead of using the global Course sidebar sticky rule. */
.tdmi-shop-catalogue .tdmi-shop-type-filter{width:100%;margin:30px 0 0;}
.tdmi-shop-catalogue .courses-sidebar{position:static;top:auto;z-index:auto;align-self:auto;}
@media(max-width:991px){.tdmi-shop-catalogue .tdmi-shop-type-filter{margin-top:24px;}}

/* WEB-04 Batch 4 Product card text colour */
.tdmi-shop-product-card{color:var(--tdmi-product-card-text,#FFFFFF)}.tdmi-shop-product-category,.tdmi-shop-product-content h3,.tdmi-shop-product-content h3 a,.tdmi-shop-product-more,.tdmi-shop-product-price,.tdmi-product-instalments{color:inherit!important}.tdmi-shop-product-button{color:#073054!important}

/* WEB-04 final Product-card alignment refinement.
   Reuse the Course-card flex pattern without changing Course cards or Product title wrapping. */
.tdmi-shop-product-card:not(.tdmi-shop-product-card--list) .tdmi-shop-product-rule{
  margin-top:auto;
}
.tdmi-shop-product-card:not(.tdmi-shop-product-card--list) .tdmi-product-instalments{
  min-height:24px;
  line-height:24px;
  text-align:center;
}
.tdmi-shop-product-card:not(.tdmi-shop-product-card--list) .tdmi-shop-product-meta + .tdmi-card-add-wrap::before{
  content:"";
  display:block;
  height:32px;
}
