/*
 ActionNooz.com — rebuilt from the archived 2011 "Zine Style" WordPress theme (cmdesignlounge, 3 columns).
 Same structure and measurements: 970px page on the grey checkered background, 36px dark menu bar, 89px pale-blue
 gradient header with the Georgia uppercase logo, 557px content (featured box + 290px post list + 225px category
 boxes), 360px sidebar of bordered widgets, the three-box "nicefoot" with pink headings.
 Readability polish: Noto Sans instead of 12px Verdana, Gelasio (Georgia metrics) for the logo, link blue #759CE5 ->
 #3566c4 and pink #ff0055 -> #c70046 for WCAG AA contrast, grey meta #C0C0C0 -> #666.
*/
html { margin-bottom: 1px; }
body {
  margin: 0; padding: 0;
  color: #222;
  font: 15px/1.6 "Noto Sans", Verdana, Geneva, sans-serif;
  background: #f4f4f4 url(/theme/body_bg.gif?v=d3280e2b);
}
form { margin: 0; padding: 0; }
img { max-width: 100%; }
a { text-decoration: none; color: #3566c4; }
a:hover { text-decoration: underline; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #c70046; outline-offset: 2px; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip-link { position: absolute; left: -9999px; top: 0; background: #000; color: #fff; padding: 8px 12px; z-index: 10; }
.skip-link:focus { left: 8px; top: 8px; }

/* ---------- page shell ---------- */
#page {
  margin: 15px auto 0; padding: 0;
  width: 970px;
  background: #fff;
  border: 1px solid #c5c5c5;
}
.cols::after { content: ""; display: block; clear: both; }

/* ---------- menu bar ---------- */
#nav {
  background: #202731 url(/theme/nav_bg.gif?v=a7aff769) repeat-x top left;
  min-height: 36px;
}
#nav ul { list-style: none; margin: 0; padding: 0; overflow: hidden; }
#nav li {
  display: block; float: left;
  background: url(/theme/nav_li.gif?v=b0e47a40) no-repeat top right;
}
#nav li a {
  color: #fff; display: block;
  padding: 0 17px 0 15px; line-height: 36px;
  font-size: 14px; font-weight: 600;
}
#nav li a:hover, #nav li.current_page_item a {
  text-decoration: none;
  background: #000 url(/theme/nav_li.gif?v=b0e47a40) no-repeat top right;
}

/* ---------- header ---------- */
#header {
  height: 89px;
  padding: 20px;
  background: #fff url(/theme/header_bg.gif?v=3338e96f) repeat-x top left;
  border-bottom: 1px solid #c5c5c5;
}
.feed { float: right; }
.feed img { display: block; }
#logo { float: left; }
.logo-title {
  margin: 0; padding: 0;
  font: 400 50px/1.15 Gelasio, Georgia, "Times New Roman", Times, serif;
  text-transform: uppercase;
}
.logo-title a { color: #333; }
.logo-title a:hover { text-decoration: none; color: #000; }
.description { font-size: 14px; color: #333; margin-top: 2px; }

/* ---------- content column ---------- */
#content {
  padding: 15px;
  float: left;
  width: 557px;
}
body.single #content { width: 585px; padding: 15px 0 15px 12px; }

.featured {
  background: #eee;
  border: 1px solid #c0c0c0;
  min-height: 225px;
  display: flex;
}
.featured .feat-img { flex: none; display: block; }
.featured .feat-img img { display: block; width: 350px; height: 225px; object-fit: cover; padding: 0 5px 0 0; }
.feat-text { padding: 10px 12px 8px 8px; min-width: 0; }
.feat-kicker { margin: 0; font-size: 13px; font-weight: 700; color: #555; text-transform: uppercase; letter-spacing: .05em; }
.featured h2 { margin: 3px 0 6px; font: 700 17px/1.3 "Noto Sans", Verdana, sans-serif; }
.feat-ex { margin: 0 0 6px; font-size: 14px; line-height: 1.5; color: #2b2b2b; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }

.content-cols { margin-top: 15px; overflow: hidden; }
.content-left {
  width: 290px;
  float: left;
  border-right: 1px dotted #b6b6b6;
}
.content-right {
  padding: 0 10px;
  float: right;
  width: 225px;
}
.post { padding: 10px 10px 0 10px; }
.post-sep { border-top: 1px dotted #b6b6b6; margin: 8px 10px 0; }
.post-title { margin: 0; padding: 0; font: 700 16px/1.35 "Noto Sans", Verdana, sans-serif; }
.posted { color: #666; font-size: 13px; margin: 3px 0 6px; }
.posted a { color: #215985; text-decoration: underline; }
.excerpt { margin: 0 0 6px; font-size: 15px; line-height: 1.55; }
p.more { margin: 0 0 10px; }
.read-more {
  padding-right: 15px;
  background: url(/theme/more.gif?v=e1aa8ec6) no-repeat center right;
  font-size: 14px; font-weight: 600;
}

/* homepage category boxes (original .content-right divs) */
.cbox { padding: 10px 0; border-bottom: 1px dotted #b6b6b6; overflow: hidden; }
.content-right h2 {
  text-transform: uppercase;
  font-size: 13px; letter-spacing: .05em;
  margin: 0; padding: 0 0 5px;
  color: #333;
}
.cthumb img {
  float: left;
  width: 56px; height: 56px; object-fit: cover;
  border: 1px solid #000; padding: 3px;
  margin: 2px 8px 4px 0;
}
.content-right h3 { font-size: 14px; line-height: 1.35; margin: 0 0 4px; padding: 0; }
.content-right p { font-size: 14px; line-height: 1.5; margin: 0 0 4px; color: #333; }
.content-right p.cmore { font-size: 13px; margin: 2px 0 0; clear: left; }
.content-right .cmore a { text-decoration: underline; }

.navigation {
  display: block; clear: both;
  text-align: center;
  margin: 20px 0 5px;
  font-size: 13px; font-weight: 600;
  text-transform: uppercase;
}
.navigation a { color: #222; text-decoration: underline; }

/* lists: category pages and the archive (theme .post with the 157x115 .thumb) */
.archive-head h1 { font: 700 22px/1.3 "Noto Sans", Verdana, sans-serif; color: #333; margin: 2px 0 6px; }
.cat-intro { margin: 0 0 8px; font-size: 15px; color: #333; }
.search-status { background: #eee; border: 1px solid #c0c0c0; padding: 6px 10px; font-size: 14px; margin: 0 0 6px; }
body.cat .post, body.archive .post { overflow: hidden; border-bottom: 1px dotted #b6b6b6; padding: 12px 0 6px; }
.thumb { float: left; margin: 4px 12px 7px 0; width: 157px; height: 115px; object-fit: cover; }
.month-title {
  font-size: 14px; text-transform: uppercase; letter-spacing: .05em; color: #333;
  background: #ececec; border: 1px solid #c0c0c0;
  padding: 4px 8px; margin: 18px 0 2px;
}
.archive .post-title { font-size: 16px; }

/* ---------- single post & pages ---------- */
.post.single, .post.page { padding: 4px 4px 0 0; }
.single h1, .page h1 {
  margin: 0 0 4px; padding: 0;
  font: 700 24px/1.3 "Noto Sans", Verdana, sans-serif;
  color: #3566c4;
}
.page h1 { color: #333; margin-bottom: 12px; }
.post-image { margin: 12px 0 16px; }
.post-image img { display: block; width: 100%; height: auto; max-height: 380px; object-fit: cover; }
.post-image figcaption { font-size: 13px; color: #555; line-height: 1.45; margin-top: 5px; }
.entry { font-size: 17px; line-height: 1.7; color: #2a2a2a; max-width: 72ch; }
.entry p { margin: 0 0 1em; }
.entry h2 { font-size: 20px; line-height: 1.35; margin: 1.4em 0 .5em; color: #222; }
.entry ul, .entry ol { margin: 0 0 1em; padding-left: 1.4em; }
.entry li { margin: 0 0 .4em; }
.entry a { text-decoration: underline; }
.entry em { color: #3a3a3a; }
.entry table { border-collapse: collapse; width: 100%; font-size: 15px; line-height: 1.45; margin: 0 0 1.2em; }
.entry th, .entry td { border: 1px solid #c0c0c0; padding: 6px 8px; text-align: left; vertical-align: top; }
.entry th { background: #ececec; }
.tags { font-size: 14px; color: #444; border-top: 1px dotted #b6b6b6; padding-top: 8px; margin: 18px 0 0; }
#postart { border: 1px solid #c0c0c0; background: #f7f7f7; margin: 15px 0 10px; padding: 6px 14px 4px; }
#postart h2 { color: #c70046; font-size: 18px; font-weight: 800; margin: 4px 0 6px; }
#postart ul { margin: 0 0 8px; padding-left: 1.2em; }
#postart li { margin: 0 0 5px; font-size: 15px; }

/* contact form */
.contact-form label { display: block; font-weight: 600; font-size: 15px; margin-bottom: 3px; }
.contact-form input, .contact-form select, .contact-form textarea {
  width: 100%; max-width: 460px; box-sizing: border-box;
  font: 15px "Noto Sans", Verdana, sans-serif; color: #222;
  padding: 8px 10px; border: 1px solid #8a8a8a; background: #fff;
}
.contact-form textarea { max-width: 100%; }
.contact-form button, #srcbtn {
  font: 600 15px "Noto Sans", Verdana, sans-serif;
  color: #fff; background: #2a303b; border: 1px solid #171c22;
  padding: 8px 18px; cursor: pointer;
}
.contact-form button:hover, #srcbtn:hover { background: #000; }
.contact-form .hp { display: none; }

/* ---------- sidebar ---------- */
#sidebar {
  color: #333;
  float: right;
  width: 360px;
  padding: 15px 10px 0 0;
}
body.single #sidebar { width: 350px; padding: 15px 15px 0 0; }
#search {
  display: flex; gap: 5px;
}
#search input#s {
  flex: 1; min-width: 0;
  padding: 9px 10px 9px 34px;
  border: 1px solid #a0a0a0;
  background: #fff url(/theme/search.gif?v=936cd631) no-repeat 3px center;
  font: 14px "Noto Sans", Verdana, sans-serif; color: #333;
}
#srcbtn { padding: 6px 12px; font-size: 14px; }
.widget { border: 1px solid #c0c0c0; padding: 0; margin-top: 10px; }
.widget .inner { border: 6px solid #fafafa; text-align: left; padding: 0 8px 4px; }
#sidebar h2 {
  color: #333;
  font-size: 13px; letter-spacing: .05em;
  margin: 5px 0; padding: 5px 0;
  border-bottom: 1px dotted #b6b6b6;
  text-align: left; text-transform: uppercase;
}
#sidebar ul { list-style: none; margin: 8px 0 8px 4px; padding: 0; text-align: left; overflow: hidden; }
#sidebar li {
  padding: 4px 0 4px 12px; margin: 0;
  font-size: 14px; line-height: 1.45;
  background: url(/theme/sidebar_li.gif?v=810efc1a) no-repeat 0 12px;
}
#sidebar ul.cats li, #sidebar ul.archives li { float: left; width: 150px; box-sizing: border-box; }
.count { color: #555; font-size: 13px; }
#sidebar ul.popular li { background: none; padding: 5px 0; border-bottom: 1px solid #eee; }
#sidebar ul.popular li:last-child { border-bottom: 0; }
.popular a { display: flex; gap: 10px; align-items: flex-start; }
.popular img { flex: none; width: 60px; height: 45px; object-fit: cover; border: 1px solid #c0c0c0; }
.feat-pic { display: block; margin: 6px 0 4px; font-weight: 700; font-size: 14px; line-height: 1.4; }
.feat-pic img { display: block; width: 100%; height: 200px; object-fit: cover; margin-bottom: 6px; }
.w-text { font-size: 14px; line-height: 1.55; margin: 6px 0 8px; }
.nlinksstylehead { border-top: 1px solid #c70046; margin: 0 0 0 3px; }
#sidebar .nlinksstylehead h2 { font-size: 18px; color: #c70046; border: 0; text-transform: none; letter-spacing: 0; margin: 4px 0 0; padding: 2px 0; }
#sidebar ul.nlinksstyle { margin: 0 0 8px 3px; }
#sidebar ul.nlinksstyle li { background: none; padding: 7px 0; border-bottom: 1px solid #e4e4e4; font-size: 15px; }
.nlinksstyle a { display: flex; gap: 10px; align-items: flex-start; font-weight: 600; }
.nlinksstyle img { flex: none; width: 130px; height: 80px; object-fit: cover; }

/* ---------- nicefoot ---------- */
#nicefoot {
  margin: 0 auto; padding: 0;
  width: 970px;
  border: 1px solid #c5c5c5;
  background-color: #fff;
  display: flex;
  box-sizing: content-box;
}
.nf-box { width: 270px; flex: none; }
.nf-media { width: 430px; }
.nicefoothat, .nicemediahat { background-color: #ececec; border: 1px solid #c0c0c0; min-height: 28px; }
#nicefoot p.fh { color: #c70046; font-size: 18px; font-weight: 900; padding: 2px 2px 1px 6px; margin: 0; line-height: 26px; }
.ncbox, .ncmediabox { border: 1px solid #c0c0c0; min-height: 230px; padding: 8px 10px; font-size: 14px; line-height: 1.5; box-sizing: border-box; height: calc(100% - 30px); }
.ncbox p { margin: 0 0 8px; }
.mail { font-weight: 600; overflow-wrap: anywhere; }
.indep { font-size: 13px; color: #444; }
.nicefootcol { width: 50%; float: left; font-weight: 600; list-style: none; margin: 0; padding: 0; }
.nicefootcol li { margin: 0 0 7px; padding-right: 6px; }
.vthumbs { list-style: none; display: flex; gap: 8px; margin: 0; padding: 0; }
.vthumbs li { width: 130px; }
.vthumbs a { display: block; font-size: 13px; font-weight: 600; line-height: 1.4; }
.vthumbs img { display: block; width: 130px; height: 98px; object-fit: cover; margin-bottom: 5px; }

#footer { padding: 10px; width: 970px; margin: 0 auto 10px; color: #333; font-size: 13px; box-sizing: border-box; }
#footer p { margin: 0; }
#footer i { margin-left: 4px; }

/* ---------- responsive (the 2011 theme was fixed-width; these rules only apply below 1000px) ---------- */
@media (max-width: 1000px) {
  #page, #nicefoot, #footer { width: auto; margin-left: 10px; margin-right: 10px; }
  #page { margin-top: 10px; }
  #content, body.single #content { float: none; width: auto; padding: 15px; }
  #sidebar, body.single #sidebar { float: none; width: auto; padding: 0 15px 15px; }
  .content-cols { display: flex; gap: 15px; }
  .content-left { float: none; width: auto; flex: 1; min-width: 0; }
  .content-right { float: none; width: 225px; flex: none; }
  #nicefoot { flex-wrap: wrap; }
  .nf-box { width: 50%; }
  .nf-media { width: 100%; }
  .ncbox, .ncmediabox { min-height: 0; height: auto; }
  .entry { max-width: none; }
}
@media (max-width: 640px) {
  #page, #nicefoot, #footer { margin-left: 0; margin-right: 0; }
  #page { margin-top: 0; border-left: 0; border-right: 0; }
  #nav li a { padding: 0 13px 0 11px; line-height: 40px; }
  #header { height: auto; padding: 14px 16px; overflow: hidden; }
  .feed img { width: 40px; height: auto; }
  .logo-title { font-size: 31px; }
  .description { font-size: 13px; }
  #content, body.single #content { padding: 12px 16px; }
  #sidebar, body.single #sidebar { padding: 0 16px 16px; }
  .featured { flex-direction: column; }
  .featured .feat-img img { width: 100%; height: 190px; padding: 0; }
  .feat-text { padding: 10px 12px; }
  .feat-ex { -webkit-line-clamp: unset; display: block; }
  .content-cols { display: block; }
  .content-left { border-right: 0; }
  .post { padding: 10px 0 0; }
  .post-sep { margin: 8px 0 0; }
  .content-right { width: auto; padding: 0; border-top: 1px dotted #b6b6b6; margin-top: 12px; }
  .thumb { width: 110px; height: 82px; margin-right: 10px; }
  .single h1, .page h1 { font-size: 22px; }
  .entry { font-size: 17px; }
  .entry table { font-size: 14px; }
  .entry th, .entry td { padding: 5px 6px; }
  #sidebar ul.cats li, #sidebar ul.archives li { width: 50%; }
  .nlinksstyle img { width: 100px; height: 64px; }
  .nf-box, .nf-media { width: 100%; }
  .vthumbs { flex-wrap: wrap; }
  .vthumbs li { width: calc(33.333% - 6px); }
  .vthumbs img { width: 100%; height: 76px; }
  #footer { padding: 10px 16px; }
}
