/*
Theme Name: TheMagazinez Child
Theme URI: https://themagazinez.co.uk
Description: v1.4 - Hidden breadcrumbs (Home > Blog). All v1.3 features included.
Author: SAM Marketing Agency
Author URI: https://sammarketingagency.com
Template: Newspaper
Version: 1.4.0
Text Domain: themagazinez-child
*/

/* =============================================
   GOOGLE FONTS
   ============================================= */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,800;0,900;1,700&family=Inter:wght@400;500;600;700;800&display=swap');


/* =============================================
   ROOT VARIABLES
   ============================================= */
:root {
  --tm-primary: #1a1a1a;
  --tm-secondary: #c9302c;
  --tm-accent: #d4af37;
  --tm-text: #222;
  --tm-text-light: #666;
  --tm-bg: #ffffff;
  --tm-border: #e5e5e5;
  --tm-grey: #f8f8f8;
}


/* =============================================
   GLOBAL TYPOGRAPHY OVERRIDES
   ============================================= */
body,
body p,
body div,
body span {
  font-family: 'Inter', sans-serif !important;
  color: var(--tm-text) !important;
  background: var(--tm-bg);
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.td-module-title,
.td-post-title,
.td-page-title,
.td_module_wrap h3,
.td-block-title {
  font-family: 'Playfair Display', serif !important;
  font-weight: 800 !important;
  color: var(--tm-primary) !important;
  letter-spacing: -0.3px !important;
}


/* =============================================
   HEADER STYLING
   ============================================= */
.td-header-style-1 .td-header-top-menu-full,
.td-header-style-1 .td-header-top-menu {
  background-color: var(--tm-primary) !important;
  border-bottom: 1px solid #333 !important;
}

.td-header-top-menu .top-header-menu li a,
.td-header-top-menu .td-social-icon-wrap a {
  color: #fff !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-weight: 600 !important;
}

.td-header-style-1 .td-header-menu-wrap-full,
.td-header-menu-wrap {
  background: #fff !important;
  border-top: 1px solid var(--tm-border) !important;
  border-bottom: 1px solid var(--tm-border) !important;
}

.td-header-sp-logo {
  text-align: center !important;
  padding: 30px 0 20px !important;
}

.td-header-sp-logo h1,
.td-header-sp-logo h1 a,
.site-title,
.site-title a {
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  font-size: 36px !important;
  color: var(--tm-primary) !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.site-description,
.td-header-sp-recs span.td-tagline,
.td-banner-wrap-full {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 4px !important;
  font-weight: 600 !important;
  color: var(--tm-text-light) !important;
  text-transform: uppercase !important;
  text-align: center !important;
  display: block !important;
  margin-top: 8px !important;
}


/* =============================================
   MAIN MENU
   ============================================= */
.sf-menu > li > a,
.td-affix .sf-menu > li > a,
.td-header-menu-wrap .sf-menu > li > a {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  color: var(--tm-primary) !important;
  padding: 14px 11px !important;
  transition: color 0.2s !important;
  white-space: nowrap !important;
}

.sf-menu,
.td-header-menu-wrap .sf-menu,
.td-main-menu ul {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
}

.sf-menu > li,
.td-header-menu-wrap .sf-menu > li {
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

@media (max-width: 1199px) {
  .sf-menu > li > a,
  .td-affix .sf-menu > li > a,
  .td-header-menu-wrap .sf-menu > li > a {
    font-size: 11px !important;
    padding: 14px 8px !important;
    letter-spacing: 0.4px !important;
  }
}

.sf-menu > li:hover > a,
.sf-menu > li.sfHover > a,
.sf-menu > li.current-menu-item > a {
  color: var(--tm-secondary) !important;
  background: transparent !important;
}

.sf-menu .sub-menu {
  background: var(--tm-primary) !important;
  border: none !important;
  padding: 8px 0 !important;
}

.sf-menu .sub-menu li a {
  color: #fff !important;
  padding: 10px 16px !important;
  font-size: 12px !important;
}

.sf-menu .sub-menu li a:hover {
  background: var(--tm-secondary) !important;
}


/* =============================================
   SEARCH BAR IN HEADER
   ============================================= */
.td-icon-search,
.td-search-wrap-mob,
.td-search-btn {
  color: var(--tm-primary) !important;
}

.td-drop-down-search {
  border: 1px solid var(--tm-border) !important;
}


/* =============================================
   ARTICLES / POSTS
   ============================================= */
.td_module_wrap,
.td_block_inner,
.td-post-content {
  background: #fff !important;
}

.entry-title a,
.td-module-title a {
  color: var(--tm-primary) !important;
  transition: color 0.2s !important;
}

.entry-title a:hover,
.td-module-title a:hover {
  color: var(--tm-secondary) !important;
}

.td-post-category,
.td-category a {
  background: var(--tm-primary) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}

.td-post-category:hover,
.td-category a:hover {
  background: var(--tm-secondary) !important;
}

.td-excerpt,
.entry-content p {
  color: var(--tm-text) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.td-post-author-name,
.td-post-date,
.td-post-comments {
  color: var(--tm-text-light) !important;
  font-size: 11px !important;
}

.td-post-author-name a {
  color: var(--tm-primary) !important;
  font-weight: 600 !important;
}


/* =============================================
   BLOCK TITLES (Most Popular, Read Now, etc.)
   ============================================= */
.td-block-title-wrap .td-block-title,
.td_block_template_1 .td-block-title > *,
.td_block_template_4 .td-block-title > *,
.td_block_template_5 .td-block-title > *,
.td_block_template_8 .td-block-title > *,
.td_block_template_9 .td-block-title > * {
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  font-size: 22px !important;
  color: var(--tm-primary) !important;
  letter-spacing: -0.5px !important;
  text-transform: none !important;
  border-bottom: 3px solid var(--tm-primary) !important;
  padding-bottom: 8px !important;
}


/* =============================================
   FOOTER STYLING
   ============================================= */
.td-footer-wrapper {
  background: var(--tm-primary) !important;
}

.td-footer-wrapper .td-pb-row,
.td-footer-wrapper * {
  color: #fff !important;
}

.td-footer-wrapper .entry-title,
.td-footer-wrapper .td-module-title,
.td-footer-wrapper h3,
.td-footer-wrapper h4 {
  color: #fff !important;
}

.td-sub-footer-container,
.td-sub-footer-menu {
  background: #0d0d0d !important;
  color: #999 !important;
  font-size: 12px !important;
  padding: 18px 0 !important;
}

.td-sub-footer-copy {
  color: #999 !important;
  font-size: 12px !important;
}


/* =============================================
   BUTTONS
   ============================================= */
.td_block_template_1 .td-read-more a,
.td-load-more-wrap a,
.btn-primary,
.tdm-btn {
  background: var(--tm-primary) !important;
  color: #fff !important;
  border: 2px solid var(--tm-primary) !important;
  padding: 12px 28px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  transition: all 0.2s !important;
  text-decoration: none !important;
}

.td_block_template_1 .td-read-more a:hover,
.td-load-more-wrap a:hover,
.btn-primary:hover {
  background: var(--tm-secondary) !important;
  border-color: var(--tm-secondary) !important;
}


/* =============================================
   SINGLE POST
   ============================================= */
.td-post-title .entry-title {
  font-size: 38px !important;
  line-height: 1.2 !important;
  margin-bottom: 16px !important;
}

.td-post-content p,
.td-post-content {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: #2a2a2a !important;
}

.td-post-content h2,
.td-post-content h3 {
  margin-top: 32px !important;
  margin-bottom: 12px !important;
}


/* =============================================
   HIDE BREADCRUMBS (Home › Blog etc.)
   ============================================= */
.entry-crumbs,
.td-crumb-container,
.td-page-meta,
.tdb_breadcrumbs,
.td-breadcrumb,
.tdb-breadcrumb,
nav.breadcrumb,
.breadcrumbs,
#breadcrumbs,
.td-category-header .entry-crumbs,
.td-archive-header .entry-crumbs,
.td-page-header .entry-crumbs,
.td-pb-row .entry-crumbs {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* =============================================
   MOBILE RESPONSIVE
   ============================================= */
@media (max-width: 767px) {
  .td-header-sp-logo h1,
  .site-title {
    font-size: 24px !important;
    letter-spacing: 1.5px !important;
  }
  
  .site-description {
    font-size: 10px !important;
    letter-spacing: 3px !important;
  }
  
  .td-post-title .entry-title {
    font-size: 26px !important;
  }
}


/* =============================================
   CUSTOM FOOTER STYLING (Light theme - black text)
   ============================================= */
.tm-footer {
  background: #ffffff !important;
  color: #111 !important;
  padding: 60px 0 0 !important;
  margin-top: 60px !important;
  font-family: 'Inter', sans-serif !important;
  border-top: 1px solid #e5e5e5 !important;
}

.tm-footer-inner {
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.tm-footer-grid {
  display: grid !important;
  grid-template-columns: 1.5fr 1fr 1fr 1.2fr !important;
  gap: 50px !important;
  padding-bottom: 50px !important;
  border-bottom: 1px solid #e5e5e5 !important;
}

.tm-footer-col h4 {
  font-family: 'Playfair Display', serif !important;
  font-weight: 800 !important;
  color: #111 !important;
  font-size: 18px !important;
  margin: 0 0 18px !important;
  letter-spacing: 0.3px !important;
  position: relative !important;
  padding-bottom: 10px !important;
}

.tm-footer-col h4::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 36px !important;
  height: 2px !important;
  background: #c9302c !important;
}

.tm-footer-col p {
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin: 0 0 14px !important;
}

.tm-footer-brand {
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  font-size: 28px !important;
  color: #111 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  margin: 0 0 12px !important;
  display: block !important;
}

.tm-footer-tagline {
  font-size: 11px !important;
  letter-spacing: 3px !important;
  font-weight: 600 !important;
  color: #c9302c !important;
  text-transform: uppercase !important;
  margin: 0 0 16px !important;
}

.tm-footer-col ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.tm-footer-col ul li {
  margin: 0 0 10px !important;
  font-size: 14px !important;
}

.tm-footer-col ul li a {
  color: #111 !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.tm-footer-col ul li a::before {
  content: "›" !important;
  color: #c9302c !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

.tm-footer-col ul li a:hover {
  color: #c9302c !important;
}

.tm-post-item {
  display: flex !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #eee !important;
}

.tm-post-item:last-child {
  border-bottom: none !important;
}

.tm-post-thumb {
  flex-shrink: 0 !important;
  width: 60px !important;
  height: 60px !important;
  overflow: hidden !important;
  background: #f5f5f5 !important;
}

.tm-post-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.tm-post-meta {
  flex: 1 !important;
  min-width: 0 !important;
}

.tm-post-title {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #111 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  display: block !important;
  margin-bottom: 4px !important;
}

.tm-post-title:hover {
  color: #c9302c !important;
}

.tm-post-date {
  font-size: 11px !important;
  color: #666 !important;
  letter-spacing: 0.5px !important;
}

.tm-subscribe-form input[type="email"] {
  width: 100% !important;
  padding: 12px 14px !important;
  background: #f8f8f8 !important;
  border: 1px solid #ddd !important;
  color: #111 !important;
  font-size: 13px !important;
  font-family: inherit !important;
  margin-bottom: 10px !important;
  box-sizing: border-box !important;
}

.tm-subscribe-form input[type="email"]:focus {
  outline: none !important;
  border-color: #111 !important;
  background: #fff !important;
}

.tm-subscribe-form input[type="submit"] {
  width: 100% !important;
  padding: 12px !important;
  background: #111 !important;
  color: #ffffff !important;
  border: none !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}

.tm-subscribe-form input[type="submit"]:hover {
  background: #c9302c !important;
}

.tm-social {
  display: flex !important;
  gap: 10px !important;
  margin-top: 16px !important;
}

.tm-social a {
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f0f0f0 !important;
  color: #111 !important;
  border-radius: 50% !important;
  transition: all 0.2s !important;
  text-decoration: none !important;
}

.tm-social a:hover {
  background: #c9302c !important;
  color: #fff !important;
}

.tm-social svg {
  width: 16px !important;
  height: 16px !important;
}

.tm-footer-bottom {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 22px 0 !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}

.tm-copyright {
  color: #111 !important;
  font-size: 12px !important;
  letter-spacing: 0.3px !important;
  font-weight: 600 !important;
}

.tm-footer-links a {
  color: #111 !important;
  font-size: 12px !important;
  text-decoration: none !important;
  margin-left: 4px !important;
  transition: color 0.2s !important;
  font-weight: 500 !important;
}

.tm-footer-links a:hover {
  color: #c9302c !important;
}

/* Hide default Newspaper footer when custom footer present */
.td-footer-wrapper,
.td-sub-footer-container {
  display: none !important;
}

@media (max-width: 991px) {
  .tm-footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
  }
}

@media (max-width: 600px) {
  .tm-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .tm-footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
  }
}
