/*
Theme Name: FameFile Child
Theme URI: https://famefile.co.uk/
Description: Child theme for the Newspaper (tagDiv) theme. Custom header logo + menu styling (Solid Magazine inspired), distinct footer logo treatment, and a new site icon. Built for famefile.co.uk.
Author: SAM Marketing Agency
Author URI: https://famefile.co.uk/
Template: Newspaper
Version: 1.0.0
Text Domain: famefile-child
*/

/* =========================================================
   FameFile Child Theme
   Base: Newspaper (tagDiv). Most layout is controlled by the
   Theme Panel + tagDiv Composer. This file only overrides
   look/feel: header logo, menu, and a custom footer logo.
   ========================================================= */

:root{
  --ff-red:#c8102e;
  --ff-red-bright:#ff3b4f;
  --ff-ink:#15171a;
  --ff-muted:#6b7280;
  --ff-footer-bg:#15171a;
}

/* ---------- HEADER : logo + magazine-style top look ---------- */

/* Make the main logo crisp + nicely sized like Solid Magazine */
.td-header-logo-wrap .td-main-logo img,
.td-logo-wrap-full .td-main-logo img{
  max-height:60px !important;
  width:auto !important;
}

/* Header background clean white, subtle bottom rule (Solid Magazine vibe) */
.td-header-wrap .td-header-menu-wrap-full,
.td-header-style-1 .td-header-menu-wrap,
.td-header-template-wrap{
  background:#ffffff;
  border-bottom:1px solid #ececec;
}

/* Top date/social bar – slim and understated */
.td-header-sp-top-menu,
.td-header-sp-top-widget{
  font-size:11px;
  letter-spacing:.4px;
}

/* ---------- MAIN NAV MENU (Solid Magazine inspired) ---------- */

/* Uppercase, spaced, bold menu items */
.sf-menu > li > a,
.td-header-menu-wrap .sf-menu > li > a{
  text-transform:uppercase;
  font-weight:700;
  font-size:13px;
  letter-spacing:.6px;
}

/* Red underline on hover / active item */
.sf-menu > li > a:hover,
.sf-menu > .current-menu-item > a,
.sf-menu > .current-category-ancestor > a,
.td-header-menu-wrap .sf-menu > li:hover > a{
  color:var(--ff-red) !important;
}
.sf-menu > li{
  position:relative;
}
.sf-menu > li > a::after{
  content:"";
  position:absolute;
  left:14px; right:14px; bottom:8px;
  height:2px;
  background:var(--ff-red);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .22s ease;
}
.sf-menu > li:hover > a::after,
.sf-menu > .current-menu-item > a::after{
  transform:scaleX(1);
}

/* Search / mobile icons in brand red on hover */
.td-icon-search:hover,
.td-search-opener:hover .td-icon-search{
  color:var(--ff-red);
}

/* Hide "Write For Us" wherever the parent theme outputs it */
.menu-item a[href*="write-for-us"],
.td-subfooter-menu a[href*="write-for-us"],
.sf-menu a[href*="write-for-us"]{
  display:none !important;
}

/* ---------- ARTICLE / MODULE ACCENTS ---------- */

/* Category labels + post titles use brand red on hover */
a.td-post-category:hover,
.entry-title a:hover,
.td-module-title a:hover{
  color:var(--ff-red);
}

/* Section block headers (Latest, Most Popular, etc.) red underline */
.td-block-title-wrap .td-block-title,
.block-title > span,
.block-title > a{
  border-color:var(--ff-red);
}

/* ---------- FOOTER : custom FAMEFILE footer ---------- */

/* Hide the parent (Newspaper) footer so only our footer shows */
.td-footer-wrapper,
.td-footer-template-wrap,
.td-sub-footer-container{
  display:none !important;
}

/* Our footer shell */
.ff-footer{
  background:var(--ff-footer-bg);
  color:#c9ccd1;
  padding:0;
  font-family:Arial, Helvetica, sans-serif;
}
.ff-footer-inner{
  max-width:1200px;
  margin:0 auto;
  padding:54px 24px 30px;
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1.2fr;
  gap:40px;
}
.ff-footer .ff-col-title{
  color:#fff;
  font-size:14px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  margin:0 0 20px;
  padding-bottom:12px;
  border-bottom:2px solid var(--ff-red);
  display:inline-block;
}

/* Column 1 : brand */
.ff-col-brand .ff-footer-brand{ display:inline-block; }
.ff-col-brand .ff-footer-brand img{
  max-width:190px;
  height:auto;
  filter:drop-shadow(0 6px 18px rgba(255,59,79,.18));
}
.ff-footer-tagline{
  margin:14px 0 10px;
  color:var(--ff-red-bright);
  font-size:13px;
  letter-spacing:.5px;
  font-style:italic;
}
.ff-footer-about{
  margin:0 0 18px;
  font-size:13px;
  line-height:1.7;
  color:#9aa0a8;
  max-width:320px;
}
.ff-social{ display:flex; flex-wrap:wrap; gap:8px; }
.ff-social-link{
  font-size:11px;
  font-weight:700;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:#c9ccd1 !important;
  border:1px solid #2c2f34;
  padding:6px 12px;
  border-radius:999px;
  transition:all .2s ease;
}
.ff-social-link:hover{
  color:#fff !important;
  background:var(--ff-red);
  border-color:var(--ff-red);
}

/* Post lists (Latest / Most Popular) */
.ff-post-list{ list-style:none; margin:0; padding:0; }
.ff-post-list li{
  padding:0 0 14px;
  margin:0 0 14px;
  border-bottom:1px solid #23262b;
}
.ff-post-list li:last-child{ border-bottom:0; }
.ff-post-list a{
  color:#e7e9ec !important;
  font-size:14px;
  font-weight:600;
  line-height:1.45;
  display:block;
  transition:color .2s ease;
}
.ff-post-list a:hover{ color:var(--ff-red-bright) !important; }
.ff-post-list .ff-date{
  display:block;
  margin-top:5px;
  font-size:11px;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:#7a7f87;
}
.ff-empty{ color:#7a7f87; font-size:13px; }

/* Column 4 : Subscribe — distinct boxed/card style */
.ff-col-subscribe{
  background:linear-gradient(160deg,#1d2024,#15171a);
  border:1px solid #2a2d33;
  border-radius:16px;
  padding:24px 22px;
  align-self:start;
}
.ff-col-subscribe .ff-col-title{ border-bottom-color:var(--ff-red-bright); }
.ff-sub-text{ font-size:13px; color:#9aa0a8; margin:0 0 16px; line-height:1.6; }
.ff-sub-box{ display:flex; flex-direction:column; gap:10px; }
.ff-sub-input{
  background:#0e1013;
  border:1px solid #33373d;
  border-radius:10px;
  padding:12px 14px;
  color:#fff;
  font-size:14px;
  outline:none;
  transition:border-color .2s ease;
}
.ff-sub-input::placeholder{ color:#6b7077; }
.ff-sub-input:focus{ border-color:var(--ff-red-bright); }
.ff-sub-btn{
  background:linear-gradient(135deg,var(--ff-red-bright),var(--ff-red));
  color:#fff;
  border:0;
  border-radius:10px;
  padding:13px 16px;
  font-size:13px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(255,59,79,.25);
  transition:transform .2s ease, box-shadow .2s ease;
}
.ff-sub-btn:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(255,59,79,.4); }
.ff-sub-btn:disabled{ opacity:.7; cursor:default; transform:none; }
.ff-sub-consent{
  display:flex; align-items:flex-start; gap:8px;
  margin-top:14px; font-size:11.5px; color:#8a9099; line-height:1.5;
}
.ff-sub-consent input{ margin-top:2px; accent-color:var(--ff-red-bright); }
.ff-sub-consent a{ color:var(--ff-red-bright) !important; }

/* Bottom bar */
.ff-footer-bottom{
  border-top:1px solid #23262b;
  text-align:center;
  padding:18px 16px;
  font-size:12.5px;
  color:#7a7f87;
}

/* ---------- SIDEBAR : Latest Articles widget ---------- */
.ff-sidebar-latest .ff-sb-title{
  font-size:15px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  margin:0 0 16px;
  padding-bottom:10px;
  border-bottom:2px solid var(--ff-red);
}
.ff-sb-list{ list-style:none; margin:0; padding:0; }
.ff-sb-item{ margin-bottom:14px; }
.ff-sb-link{ display:flex; gap:12px; align-items:center; }
.ff-sb-thumb{
  flex:0 0 64px;
  width:64px; height:64px;
  border-radius:8px;
  background-size:cover;
  background-position:center;
}
.ff-sb-post-title{
  display:block;
  font-size:14px;
  font-weight:600;
  line-height:1.4;
  color:var(--ff-ink);
}
.ff-sidebar-latest .ff-sb-link:hover .ff-sb-post-title{ color:var(--ff-red); }
.ff-sb-date{
  display:block;
  margin-top:4px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.5px;
  color:var(--ff-muted);
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:980px){
  .ff-footer-inner{ grid-template-columns:1fr 1fr; gap:30px; }
}
@media (max-width:767px){
  .td-header-logo-wrap .td-main-logo img,
  .td-logo-wrap-full .td-main-logo img{
    max-height:44px !important;
  }
  .ff-footer-inner{ grid-template-columns:1fr; gap:28px; padding:36px 18px 24px; }
}
