/* =========================================================
   MAGAZINE THEME — SIDEBAR
   Editorial / Newspaper Style
========================================================= */


/* =========================================================
   SIDEBAR CONTAINER
========================================================= */

.side-card{
  position:sticky;
  top:18px;

  min-width:0;
  padding:0 !important;

  border:0 !important;
  border-radius:0 !important;

  background:transparent !important;
  box-shadow:none !important;
}

.sidebar-stack{
  display:grid;
  gap:38px;
}


/* =========================================================
   MODULES
========================================================= */

.sidebar-module{
  min-width:0;
  margin:0;
  padding:0;

  border:0;
  border-top:4px solid #111;

  background:#fff;
}

.side-title{
  position:relative;

  margin:0;
  padding:13px 0 12px 17px;

  border-bottom:1px solid #d8d8d8;

  color:#111 !important;
  background:#fff !important;

  font-family:var(
    --font-sans,
    "Inter",
    Arial,
    sans-serif
  );

  font-size:13px;
  font-weight:950;
  line-height:1.2;

  letter-spacing:.075em;
  text-transform:uppercase;
}

.side-title::before{
  content:"";

  position:absolute;
  top:12px;
  bottom:11px;
  left:0;

  width:5px;

  background:var(--mag-red, #e31b23);
}

.sidebar-module__body{
  min-width:0;
  padding:20px 16px 0;

  border:0 !important;
  border-radius:0 !important;

  color:#222;
  background:#fff !important;

  box-shadow:none !important;
}

.sidebar-module .muted{
  margin:0 0 16px;

  color:#666 !important;

  font-family:Georgia, "Times New Roman", serif;
  font-size:15px;
  line-height:1.5;
}


/* =========================================================
   BUTTONS
========================================================= */

.push-enable-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  width:100%;
  min-height:40px;

  margin:0;
  padding:10px 15px;

  border:1px solid var(--mag-red, #e31b23);
  border-radius:0;

  color:#fff !important;
  background:var(--mag-red, #e31b23) !important;

  font-family:var(
    --font-sans,
    "Inter",
    Arial,
    sans-serif
  );

  font-size:10px;
  font-weight:950;
  line-height:1;

  letter-spacing:.04em;
  text-transform:uppercase;

  cursor:pointer;

  transition:
    background .18s ease,
    color .18s ease,
    border-color .18s ease;
}

.push-enable-btn:hover{
  color:#fff !important;
  background:#111 !important;
  border-color:#111;
}

.push-enable-btn:focus-visible{
  outline:3px solid rgba(227,27,35,.22);
  outline-offset:3px;
}


/* =========================================================
   PUSH MODULE
========================================================= */

.sidebar-module--push .sidebar-module__body{
  padding-top:18px;
}

.sidebar-module--push .muted{
  position:relative;
  padding-left:20px;
}

.sidebar-module--push .muted::before{
  content:"✓";

  position:absolute;
  top:1px;
  left:0;

  color:var(--mag-red, #e31b23);

  font-family:Arial, sans-serif;
  font-weight:900;
}


/* =========================================================
   NEWSLETTER
========================================================= */

.sidebar-module--newsletter .sidebar-module__body{
  padding-top:18px;
}

.newsletter-form{
  display:grid;
  gap:10px;
}

.newsletter-form input[type="email"]{
  display:block;

  width:100%;
  height:44px;

  margin:0;
  padding:0 13px;

  border:1px solid #bcbcbc;
  border-radius:0;

  color:#111;
  background:#fff;

  font-family:var(
    --font-sans,
    "Inter",
    Arial,
    sans-serif
  );

  font-size:14px;

  box-shadow:none;
}

.newsletter-form input[type="email"]::placeholder{
  color:#888;
}

.newsletter-form input[type="email"]:focus{
  border-color:#111;
  outline:0;
  box-shadow:0 0 0 3px rgba(17,17,17,.08);
}

.newsletter-form__honeypot{
  display:none !important;
}

.newsletter-form__message{
  min-height:0;

  color:#555;
  font-size:11px;
  line-height:1.4;
}

.newsletter-form__message.success{
  color:#15803d;
}

.newsletter-form__message.error{
  color:#b91c1c;
}


/* =========================================================
   ADVERTISING
========================================================= */

.sidebar-module--ad .sidebar-module__body{
  padding-top:16px;
}

.sidebar-module--ad .site-ad,
.sidebar-module--ad .td-ad-box,
.sidebar-module--ad ins{
  max-width:100%;
}

.sidebar-module--ad .site-ad{
  overflow:hidden;
  border:1px solid #dedede;
  background:#f7f7f7;
}

.sidebar-module--ad .td-ad-box{
  display:flex;
  align-items:center;
  justify-content:center;

  width:100%;
  min-height:180px;

  margin:0;
  padding:0;

  border:0;
  border-radius:0;

  background:#f7f7f7;
  box-shadow:none;
}

.sidebar-module--ad .td-ad-box--sidebar{
    display:block;
    width:100%;
    max-width:300px;
    min-height:250px;
    margin:0 auto;
    overflow:hidden;
}

.sidebar-module--ad .td-ad-box--sidebar ins{
    display:block !important;
    width:100% !important;
    min-height:250px !important;
}

.sidebar-module--ad img{
  display:block;
  max-width:100%;
  height:auto;
}


/* =========================================================
   RECENT POSTS
========================================================= */

.sidebar-recent{
  display:grid;
  gap:0;
}

.sidebar-recent__item{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:13px;
  align-items:start;

  padding:14px 0;

  border-bottom:1px solid #dedede;

  color:#111 !important;
  background:#fff;

  text-decoration:none;
}

.sidebar-recent__item:first-child{
  padding-top:0;
}

.sidebar-recent__item:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.sidebar-recent__thumb{
  width:96px;
  height:68px;

  background:
    #e8e8e8
    center /
    cover
    no-repeat;
}

.sidebar-recent__title{
  color:#111;

  font-family:Georgia, "Times New Roman", serif;
  font-size:15px;
  font-weight:800;
  line-height:1.22;

  transition:color .18s ease;
}

.sidebar-recent__item:hover .sidebar-recent__title{
  color:var(--mag-red, #e31b23);
}

.sidebar-recent__meta{
  margin-top:7px;

  color:var(--mag-red, #e31b23);

  font-size:9px;
  font-weight:900;
  line-height:1;

  letter-spacing:.055em;
  text-transform:uppercase;
}


/* =========================================================
   HOT NOW
========================================================= */

.sidebar-hotnow-module .sidebar-module__body{
  padding-top:18px;

  border:0;
  background:#fff !important;
}

.hotnow-main{
  display:block;
  overflow:hidden;

  color:#fff !important;
  background:#111;

  text-decoration:none;
}

.hotnow-main__media{
  position:relative;

  height:165px;

  background:
    #222
    center /
    cover
    no-repeat;
}

.hotnow-main__body{
  padding:17px;
}

.hotnow-main__badge{
  color:var(--mag-red, #e31b23);

  font-size:10px;
  font-weight:950;

  letter-spacing:.055em;
  text-transform:uppercase;
}

.hotnow-main__title{
  margin-top:8px;

  color:#fff;

  font-family:Georgia, "Times New Roman", serif;
  font-size:19px;
  font-weight:800;
  line-height:1.12;
}

.hotnow-main__meta{
  margin-top:10px;

  color:rgba(255,255,255,.68);

  font-size:10px;
  line-height:1.3;
}

.hotnow-list{
  border-top:4px solid var(--mag-red, #e31b23);
}

.hotnow-row{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  align-items:start;

  padding:13px 0;

  border-bottom:1px solid #dedede;

  color:#111 !important;
  background:#fff;

  text-decoration:none;
}

.hotnow-row:last-child{
  border-bottom:0;
}

.hotnow-row__rank{
  color:var(--mag-red, #e31b23);

  font-size:14px;
  font-weight:950;
  line-height:1;
}

.hotnow-row__title{
  color:#111;

  font-family:Georgia, "Times New Roman", serif;
  font-size:15px;
  font-weight:800;
  line-height:1.22;

  transition:color .18s ease;
}

.hotnow-row:hover .hotnow-row__title{
  color:var(--mag-red, #e31b23);
}

.hotnow-row__meta{
  margin-top:6px;

  color:#777;

  font-size:9px;
  line-height:1.25;
}


/* =========================================================
   CATEGORIES
========================================================= */

.pillwrap{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.sidebar-module--categories .pill{
  display:inline-flex;
  align-items:center;

  min-height:31px;

  margin:0 !important;
  padding:0 10px;

  border:1px solid #aaa;
  border-radius:0;

  color:#111 !important;
  background:#fff !important;

  font-size:10px;
  font-weight:800;
  line-height:1;

  text-decoration:none;
  text-transform:uppercase;

  transition:
    color .18s ease,
    background .18s ease,
    border-color .18s ease;
}

.sidebar-module--categories .pill:hover{
  color:#fff !important;
  background:#111 !important;
  border-color:#111;
}


/* =========================================================
   YEARS
========================================================= */

.yearlist{
  display:grid;
}

.yearlist a{
  display:flex;
  align-items:center;
  justify-content:space-between;

  padding:11px 0;

  border-bottom:1px solid #dedede;

  color:#111 !important;
  background:#fff;

  font-size:13px;
  font-weight:850;

  text-decoration:none;
}

.yearlist a:first-child{
  padding-top:0;
}

.yearlist a:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.yearlist a:hover{
  color:var(--mag-red, #e31b23) !important;
}

.yearlist .badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-width:26px;
  height:22px;

  padding:0 7px;

  border-radius:0;

  color:#fff;
  background:#111;

  font-size:9px;
  font-weight:900;
}


/* =========================================================
   COMMUNITY
========================================================= */

.community-card__intro{
  margin:0 0 12px;

  color:#666 !important;

  font-family:Georgia, "Times New Roman", serif;
  font-size:14px;
  line-height:1.55;
}

.community-card__links{
  display:grid;
  gap:0;
}

.community-link{
  display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;

  padding:12px 0;

  border-bottom:1px solid #dedede;

  color:#111 !important;
  background:#fff;

  text-decoration:none;
}

.community-link__icon{
  display:flex;
  align-items:center;
  justify-content:flex-start;

  color:#111;
}

.community-link__icon svg{
  width:20px;
  height:20px;

  fill:currentColor;
}

.community-link__body{
  display:grid;
  gap:2px;
}

.community-link__body strong{
  color:#111;

  font-size:13px;
  font-weight:850;
}

.community-link__body small{
  color:#777;

  font-size:10px;
  line-height:1.25;
}

.community-link__cta{
  color:var(--mag-red, #e31b23);

  font-size:9px;
  font-weight:950;

  letter-spacing:.04em;
  text-transform:uppercase;
}

.community-link:hover .community-link__body strong{
  color:var(--mag-red, #e31b23);
}

.community-link__arrow{
  display:none;
}

.community-card__footer{
  display:flex;
  gap:9px;

  margin-top:15px;
  padding-top:14px;

  border-top:3px solid #111;

  color:#666 !important;

  font-family:Georgia, "Times New Roman", serif;
  font-size:14px;
  line-height:1.55;
}

.community-card__footer div{
  display:grid;
}

.community-card__footer strong{
  color:#111;
}

.community-card__footer small{
  color:#777;
}


/* =========================================================
   HTML CUSTOM MODULE
========================================================= */

.sidebar-module--html .site-footer-html{
  color:#333 !important;
  background:#fff !important;

  font-family:Georgia, "Times New Roman", serif;
  font-size:14px;
  line-height:1.55;
}

.sidebar-module:last-child{
  margin-bottom:8px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

  .side-card{
    position:static;
    top:auto;
  }

  .sidebar-stack{
    gap:32px;
  }
}


@media (max-width:700px){

  .sidebar-stack{
    gap:30px;
  }

  .sidebar-module{
    border-top-width:4px;
  }

  .side-title{
    padding-left:15px;
    font-size:12px;
  }

  .sidebar-module__body{
    padding-top:17px;
  }

  .sidebar-recent__item{
    grid-template-columns:100px minmax(0,1fr);
  }

  .sidebar-recent__thumb{
    width:100px;
    height:72px;
  }

  .hotnow-main__media{
    height:180px;
  }
}