/* The same header, two sidebars and content column across the theme. */
.ktp-site-layout {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr) 240px;
  gap: 20px;
  align-items: start;
}
.ktp-site-layout > .ktp-site-sidebar--left { grid-column: 1; }
.ktp-site-layout > .ktp-site-center { grid-column: 2; }
.ktp-site-layout > .ktp-site-sidebar--right { grid-column: 3; }
.ktp-site-center,
.ktp-site-sidebar,
.ktp-sidebar-extras { min-width: 0; }
.ktp-sidebar-extras { display: grid; gap: 20px; align-content: start; }
.ktp-site-sidebar--right { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.ktp-site-sidebar--right > .ktp-teacher-toolbox { height: auto; }

/* Twelve resources: three equal columns, four rows on a full desktop page. */
.ktp-site-center .ktp-post-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 16px;
}
.ktp-site-center .ktp-post-card__image { height: 160px; }
.ktp-site-center .ktp-post-card__body { padding: 15px; }
.ktp-site-center .ktp-post-card__title { font-size: clamp(18px, 1.2vw, 22px); }
.ktp-site-center .ktp-post-meta { font-size: 12px; gap: 5px 10px; }
.ktp-site-center .ktp-post-excerpt { font-size: 14px; }
.ktp-site-center .navigation { margin-block: 26px; }
.ktp-site-center .ktp-library-types { gap: 8px; }
.ktp-site-center .ktp-library-types a { min-height: 40px; font-size: 14px; padding: 8px 12px; }
.ktp-site-center .ktp-library-filters { flex-wrap: wrap; gap: 12px; }
.ktp-site-center .ktp-library-search-filter { min-width: min(220px, 100%); }
.ktp-library-filters input,
.ktp-library-filters select { box-sizing: border-box; min-width: 0; max-width: 100%; }
.ktp-site-center .ktp-filter-reset { margin-left: 0; }
.ktp-site-center .ktp-entry-content { min-width: 0; }
.ktp-site-center .ktp-entry-content > * { max-width: 100%; }
/* Keep legacy YouTube embeds proportional when their fixed width shrinks. */
.ktp-entry-content iframe[src^="https://www.youtube.com/embed/"],
.ktp-entry-content iframe[src^="https://youtube.com/embed/"],
.ktp-entry-content iframe[src^="https://www.youtube-nocookie.com/embed/"],
.ktp-entry-content iframe[src^="//www.youtube.com/embed/"] {
  aspect-ratio: 16 / 9;
  height: auto;
}
.ktp-site-center .ktp-article__lead--with-cover { grid-template-columns: minmax(0, 1fr) minmax(100px, 170px); }
.ktp-site-center .ktp-featured-image { max-width: 170px; }
.ktp-site-center .ktp-featured-image img { max-height: 150px; }

@media (min-width: 1800px) {
  .ktp-site-layout { grid-template-columns: 260px minmax(0, 1fr) 280px; gap: 22px; }
  .ktp-site-center .ktp-post-card__image { height: 180px; }
  .ktp-site-center .ktp-post-card__body { padding: 18px; }
}
@media (min-width: 1101px) and (max-width: 1350px) {
  .ktp-site-layout { grid-template-columns: 210px minmax(0, 1fr) 215px; gap: 17px; }
  .ktp-site-center .ktp-post-card__image { height: 140px; }
  .ktp-site-center .ktp-post-card__body { padding: 12px; }
  .ktp-site-center .ktp-post-card__title { font-size: 18px; }
  .ktp-site-center .ktp-post-excerpt { font-size: 13px; }
  .ktp-site-center .ktp-post-card .ktp-text-link { font-size: 14px; }
  .ktp-site-center .ktp-library-types a { font-size: 13px; padding-inline: 10px; }
}
@media (min-width: 681px) and (max-width: 1100px) {
  .ktp-site-sidebar--right > .ktp-teacher-toolbox { grid-column: 1 / -1; }
}
@media (min-width: 921px) and (max-width: 1100px) {
  .ktp-site-layout { grid-template-columns: 210px minmax(0, 1fr); gap: 18px; }
  .ktp-content-layout.ktp-site-layout,
  .ktp-home-layout.ktp-site-layout:not(.ktp-home-layout--with-learning) {
    grid-template-areas: 'grades center' 'teacher teacher';
  }
  .ktp-content-layout > .ktp-site-sidebar--left { grid-area: grades; }
  .ktp-content-layout > .ktp-site-center { grid-area: center; }
  .ktp-site-layout > .ktp-site-sidebar--right { grid-area: teacher; grid-column: 1 / -1; }
  .ktp-site-center .ktp-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ktp-site-sidebar--right { grid-template-columns: minmax(0, 1fr) 210px; }
}
@media (max-width: 920px) {
  .ktp-site-layout {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .ktp-site-layout > * { width: 100%; }
  .ktp-site-layout > .ktp-site-sidebar--left { order: 0; }
  .ktp-site-layout > .ktp-site-center { order: 1; }
  .ktp-site-layout > .ktp-home-learning { order: 2; }
  .ktp-site-layout > .ktp-sidebar-extras { order: 3; }
  .ktp-site-layout > .ktp-site-sidebar--right { order: 4; }
  .ktp-site-layout > .ktp-home-toolbox { order: 5; }
  .ktp-sidebar-extras { gap: 16px; }
  .ktp-site-center .ktp-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ktp-site-center .ktp-post-card__image { height: 160px; }
  .ktp-site-center .ktp-page-title { font-size: clamp(26px, 4.2vw, 33px); }
}
@media (min-width: 681px) and (max-width: 920px) {
  .ktp-site-layout > .ktp-sidebar-extras { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ktp-site-sidebar--right { grid-template-columns: minmax(0, 1fr) 190px; }
}
@media (max-width: 680px) {
  .ktp-site-center .ktp-post-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .ktp-site-center .ktp-post-card__image { height: 160px; }
  .ktp-site-center .ktp-post-card__body { padding: 15px; }
  .ktp-site-center .ktp-post-card__title { font-size: 20px; }
  .ktp-site-center .ktp-library-grade-filter { flex: 1 1 100%; }
  .ktp-site-center .ktp-library-search-filter { flex: 1 1 100%; }
  .ktp-site-center .ktp-library-filters .ktp-button { min-height: 42px; }
  .ktp-site-center .ktp-library-types a { font-size: 13px; padding: 7px 10px; }
  .ktp-site-center .ktp-article__lead--with-cover { grid-template-columns: minmax(0, 1fr); }
  .ktp-site-center .ktp-featured-image { max-width: 140px; }
  .ktp-site-center .ktp-featured-image img { max-height: 110px; }
  .ktp-site-center .page-numbers { min-width: 38px; min-height: 40px; padding: 7px 10px; font-size: 14px; }
  .ktp-site-center .ktp-library-pagination ul.page-numbers { padding: 0; }
  .ktp-site-sidebar--right { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 430px) {
  .ktp-site-center .ktp-post-card--with-image { grid-template-columns: 100px minmax(0, 1fr); }
  .ktp-site-center .ktp-post-card--with-image .ktp-post-card__image { width: 88px; height: 106px; margin: 14px 0 0 12px; }
  .ktp-site-center .ktp-post-card--with-image .ktp-post-card__body { padding: 13px; }
  .ktp-site-center .ktp-post-card--with-image .ktp-post-card__title { font-size: 18px; }
  .ktp-site-center .ktp-post-card--with-image .ktp-post-meta { font-size: 10px; }
  .ktp-site-center .ktp-post-card--with-image .ktp-post-excerpt { font-size: 13px; }
}
@media print {
  .ktp-site-layout { display: block; }
  .ktp-site-sidebar, .ktp-sidebar-extras, .ktp-home-toolbox { display: none !important; }
  .ktp-site-center { width: 100%; }
  .ktp-site-center .ktp-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
