/* comedii.org — comedy films catalog. Design tokens from design/specs.md */
:root{
  --brand-yellow:#FFC400;
  --brand-orange:#FF9E00;
  --brand-orange2:#fe9d00;
  --accent-green:#4CAF50;
  --accent-red:#E53935;
  --ink:#333333;
  --ink-dark:#1F1F1F;
  --muted:#636060;
  --text-muted:#757575;
  --page-bg:#F2F2F2;
  --surface:#FFFFFF;
  --border:#E2E2E2;
  --primary-deep:#775a00;
}

html{background:var(--page-bg);}
body{
  background:var(--page-bg);
  color:var(--ink);
  font-family:'Open Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:16px;
  line-height:1.6;
}
h1,h2,h3,h4,h5,h6,.site-heading,.site-brand{
  font-family:'Montserrat','Open Sans',sans-serif;
  font-weight:800;
  color:var(--ink);
}

/* ---------- Nav toggle (CSS-only burger) ---------- */
#cmNavCb{display:none;}
#cmNavMenu{display:none;}
#cmNavCb:checked ~ #cmNavMenu{display:block;}
@media(min-width:1024px){
  #cmNavMenu{display:flex !important;}
  #cmBurger{display:none;}
}

/* ---------- Masthead / nav ---------- */
.site-nav.navbar{
  background:linear-gradient(90deg,var(--brand-yellow) 0%,var(--brand-orange2) 100%);
  box-shadow:0 2px 8px rgba(0,0,0,.12);
  position:sticky;top:0;z-index:50;
  min-height:64px;
}
.site-nav .container{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1280px;}
.site-brand{
  font-size:1.9rem;font-weight:900;letter-spacing:-.02em;
  color:#3a2c00 !important;background:transparent;
}
.site-nav .navbar-end{align-items:center;}
.site-nav .navbar-item,.site-nav .navbar-link{
  color:#4a3800;font-weight:600;background:transparent;
  font-family:'Open Sans',sans-serif;
}
.site-nav a.navbar-item:hover,.site-nav .navbar-link:hover{
  color:#fff;background:rgba(255,255,255,.18);
}
.site-nav .navbar-dropdown{background:var(--surface);border-top:2px solid var(--brand-orange);}
.site-nav .navbar-dropdown a.navbar-item{color:var(--ink);}
.site-nav .navbar-dropdown a.navbar-item:hover{background:var(--page-bg);color:var(--accent-red);}
.navbar-burger{color:#4a3800;margin-left:auto;}
.navbar-burger span{background-color:#4a3800;}

/* ---------- Layout ---------- */
.site-main{padding:24px 0 48px;}
.site-container{max-width:1280px;}
.site-layout{margin-top:8px;}
.site-content{min-width:0;}

/* ---------- Search ---------- */
.site-search{background:var(--surface);padding:1.25rem;border-radius:.75rem;box-shadow:0 1px 4px rgba(0,0,0,.06);margin-bottom:1.5rem;}
.site-search__form{display:flex;gap:.75rem;flex-wrap:wrap;}
.site-search__input{flex:1 1 240px;border:1px solid var(--border);border-radius:.5rem;}
.site-search__btn{background:var(--accent-green);color:#fff;font-weight:700;border:none;border-radius:.5rem;padding:0 1.75rem;}
.site-search__btn:hover{background:#43a047;color:#fff;}

/* ---------- Section headings ---------- */
.site-prose .site-heading--1{font-size:1.9rem;color:var(--primary-deep);margin:.2em 0 .6em;text-align:center;}
.site-prose .site-heading--2{font-size:1.4rem;color:var(--brand-orange2);text-transform:uppercase;letter-spacing:.02em;border-bottom:2px solid var(--border);padding-bottom:.35em;margin:1.4em 0 .8em;}
.site-prose .site-heading--3{font-size:1.15rem;color:var(--accent-green);margin:1.1em 0 .5em;}

/* ---------- Prose / content ---------- */
.site-prose{background:var(--surface);border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 4px rgba(0,0,0,.06);}
.site-block--paragraph{margin:.6em 0;}
.site-block--image img{border-radius:.5rem;}
.site-block--image{margin:1rem 0;}
.site-block--quote{border-left:4px solid var(--brand-orange);background:var(--page-bg);padding:.8em 1em;margin:1em 0;border-radius:.25rem;}
.site-block--separator{border:0;border-top:1px solid var(--border);margin:1.2em 0;}

/* Content body link styling (scoped, do not invisible-ize editorial links) */
.site-prose a,.site-article a,.site-category__desc a,.site-block--paragraph a{
  color:var(--accent-red);
  text-decoration:underline;
  text-decoration-color:rgba(229,57,53,.4);
}
.site-prose a:hover{color:#b71c1c;text-decoration-color:#b71c1c;}

/* ---------- Poster cards (list_item) ---------- */
.site-prose .site-card{display:inline-block;width:165px;vertical-align:top;margin:.5rem;}
.site-card__link{display:block;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;overflow:hidden;transition:box-shadow .25s,transform .25s;text-decoration:none !important;color:var(--ink) !important;}
.site-card__link:hover{box-shadow:0 8px 22px rgba(0,0,0,.18);transform:translateY(-3px);}
.site-card__link:hover .site-card__title{color:var(--accent-red) !important;}
.site-card__media img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;}
.site-card__title{display:block;padding:.5rem .55rem;font-weight:700;font-size:.9rem;line-height:1.25;}

/* listing image cards */
.site-listing .site-block--image{display:inline-block;width:165px;margin:.5rem;vertical-align:top;}
.site-listing .site-block--image img{aspect-ratio:2/3;object-fit:cover;width:100%;}

/* homepage "new publications" poster images -> constrained posters */
.site-home .site-block--image{display:inline-block;width:150px;margin:.4rem;vertical-align:top;}
.site-home .site-block--image img{aspect-ratio:2/3;object-fit:cover;width:100%;border-radius:.4rem;}

/* ---------- Gallery ---------- */
.site-gallery img{border-radius:.4rem;aspect-ratio:2/3;object-fit:cover;width:100%;}

/* ---------- Article ---------- */
.site-article__main-image{max-width:33%;margin:0 0 1rem 1.25rem;}
.site-article__main-image img{border-radius:.5rem;}
.site-article__summary{font-size:1.05rem;border-left:3px solid var(--brand-orange);padding-left:1rem;color:var(--muted);margin:1rem 0;}
.site-article__dates{color:var(--text-muted);font-size:.85rem;}
@media(max-width:768px){.site-article__main-image{float:none !important;max-width:100%;margin:0 0 1rem 0;}}

/* ---------- ToC ---------- */
.site-toc{background:var(--page-bg);border-radius:.5rem;padding:1rem;margin-bottom:1rem;}
.site-toc__title{font-weight:700;font-family:'Montserrat',sans-serif;margin-bottom:.4rem;}
.site-toc--side{position:sticky;top:80px;}

/* ---------- Category cards (content_category) ---------- */
.site-card2{background:var(--surface);border:1px solid var(--border);border-radius:.5rem;overflow:hidden;height:100%;transition:box-shadow .25s;}
.site-card2:hover{box-shadow:0 8px 22px rgba(0,0,0,.15);}
.site-card2__media img{width:100%;aspect-ratio:2/3;object-fit:cover;}
.site-card2__body{padding:.75rem;}
.site-card2__title a{color:var(--ink);}
.site-card2__title a:hover{color:var(--accent-red);}
.site-card2__summary{color:var(--muted);font-size:.9rem;}
.site-card2__more.button{background:var(--accent-green);color:#fff;border:none;margin-top:.5rem;}
.site-card2--minimal{border:none;border-left:3px solid var(--brand-orange);border-radius:0;padding:.25rem 0 .25rem 1rem;}

/* ---------- Sidebar ---------- */
.site-sidebar{background:var(--surface);border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 4px rgba(0,0,0,.06);}
.site-sidebar__title{color:var(--brand-orange2);text-transform:uppercase;font-family:'Montserrat',sans-serif;}
.site-tagcloud{display:flex;flex-wrap:wrap;gap:.4rem;}
.site-tagcloud__tag{display:inline-block;background:var(--page-bg);color:var(--muted);padding:.2rem .55rem;border-radius:999px;font-size:.82rem;text-decoration:none;}
.site-tagcloud__tag:hover{background:var(--brand-yellow);color:#3a2c00;}

/* ---------- Breadcrumb ---------- */
.site-breadcrumb{margin:.5rem 0 1rem;}
.site-breadcrumb a{color:var(--brand-orange2);}

/* ---------- Footer ---------- */
.site-footer{background:#2b2b2b;color:#cfcfcf;padding:2rem 1.5rem;margin-top:2rem;}
.site-footer__links{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;margin-bottom:.75rem;}
.site-footer__links a{color:var(--brand-yellow);text-decoration:none;font-weight:600;}
.site-footer__links a:hover{color:var(--brand-orange);}
.site-footer__copy{text-align:center;color:#8a8a8a;font-size:.85rem;}

@media(max-width:1023px){
  .site-nav .navbar-menu{background:linear-gradient(180deg,var(--brand-orange2),var(--brand-yellow));padding:.5rem 1rem;}
  .site-nav .navbar-menu a.navbar-item{color:#3a2c00;}
}
