
/* MobileFixPro V9.3 — Premium Editorial Polish
 * Final polish for footer, author bio and related posts.
 * Intentionally scoped to avoid changing the rest of the theme.
 */

.mfp-author-box,
.author-box,
.author-bio,
.single-author-box {
  background: var(--mfp-surface, #f7f8fa);
  border: 1px solid rgba(20, 28, 38, .10);
  border-radius: 18px;
  padding: 24px;
  margin: 34px 0;
  box-shadow: 0 10px 28px rgba(20, 28, 38, .07);
  color: var(--mfp-text, #202630);
}

.mfp-author-box p,
.author-box p,
.author-bio p,
.single-author-box p {
  color: #4b5563;
  line-height: 1.75;
}

.mfp-author-box h3,
.author-box h3,
.author-bio h3,
.single-author-box h3,
.mfp-author-box .author-name,
.author-box .author-name {
  color: #17202a;
  font-weight: 750;
}

.mfp-author-box a,
.author-box a,
.author-bio a,
.single-author-box a {
  color: var(--mfp-accent, #0b7cff);
}

.mfp-author-avatar,
.author-box img,
.author-bio img {
  border-radius: 50%;
  border: 3px solid rgba(11,124,255,.12);
  box-shadow: 0 5px 16px rgba(20,28,38,.10);
}

.mfp-related-posts,
.related-posts,
.related-articles {
  margin: 42px 0;
}

.mfp-related-posts h2,
.mfp-related-posts h3,
.related-posts h2,
.related-posts h3,
.related-articles h2,
.related-articles h3 {
  color: #17202a;
  letter-spacing: -.015em;
  margin-bottom: 20px;
}

.mfp-related-grid,
.related-posts .posts,
.related-posts .post-grid,
.related-articles .post-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.mfp-related-card,
.related-posts article,
.related-articles article {
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(20,28,38,.09);
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(20,28,38,.055);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mfp-related-card:hover,
.related-posts article:hover,
.related-articles article:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 32px rgba(20,28,38,.10);
  border-color: rgba(11,124,255,.20);
}

.mfp-related-card img,
.related-posts article img,
.related-articles article img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.mfp-related-card .entry-content,
.related-posts article .entry-content,
.related-articles article .entry-content {
  padding: 17px 18px 19px;
}

.mfp-related-card a,
.related-posts article a,
.related-articles article a {
  color: #17202a;
  text-decoration: none;
}

.mfp-related-card .entry-title,
.related-posts article .entry-title,
.related-articles article .entry-title {
  font-size: 1.02rem;
  line-height: 1.42;
  font-weight: 720;
}

.mfp-related-card .cat-links,
.related-posts .cat-links,
.related-articles .cat-links {
  color: var(--mfp-accent, #0b7cff);
  font-size: .76rem;
  font-weight: 750;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.site-footer,
footer {
  color: rgba(255,255,255,.78);
}

.site-footer a,
footer a {
  color: rgba(255,255,255,.90);
  text-decoration: none;
}

.site-footer a:hover,
footer a:hover {
  color: #fff;
}

.mfp-footer-premium {
  text-align: center;
  padding: 42px 20px 24px;
  border-top: 1px solid rgba(255,255,255,.10);
}

.mfp-footer-premium .footer-nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin: 18px 0 24px;
}

.mfp-footer-premium .footer-nav a {
  font-size: .92rem;
  font-weight: 650;
}

.mfp-footer-premium .footer-copy {
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: .82rem;
  opacity: .72;
}

@media (max-width: 820px) {
  .mfp-related-grid,
  .related-posts .posts,
  .related-posts .post-grid,
  .related-articles .post-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .mfp-author-box,
  .author-box,
  .author-bio,
  .single-author-box {
    padding: 19px;
    border-radius: 15px;
  }

  .mfp-related-grid,
  .related-posts .posts,
  .related-posts .post-grid,
  .related-articles .post-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .mfp-footer-premium {
    padding-top: 34px;
  }

  .mfp-footer-premium .footer-nav {
    gap: 10px 18px;
  }
}


/* =========================================================
   V9.3 FINAL PREMIUM POLISH
   Footer + Author + Related Guides + Brand Grid
   ========================================================= */

/* --- Author card: clean editorial profile --- */
.mfp-author-box{
  position:relative;
  display:flex;
  align-items:center;
  gap:18px;
  margin:38px 0 42px;
  padding:22px 24px;
  background:linear-gradient(135deg,#f8fbfe 0%,#ffffff 72%);
  border:1px solid #dfe8f1;
  border-radius:18px;
  box-shadow:0 10px 30px rgba(15,36,58,.07);
}
.mfp-author-box:before{
  content:"";
  position:absolute;
  left:0;top:18px;bottom:18px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:var(--mfp-blue,#168df4);
}
.mfp-author-avatar{
  width:72px;height:72px;flex:0 0 72px;
  display:grid;place-items:center;
}
.mfp-author-avatar img,
.mfp-author-photo{
  width:72px!important;height:72px!important;
  object-fit:cover;
  border-radius:50%;
  border:3px solid #fff;
  box-shadow:0 5px 18px rgba(15,36,58,.14);
}
.mfp-author-content{min-width:0}
.mfp-author-kicker{
  display:block;
  margin-bottom:5px;
  color:#1685d9!important;
  font-size:9px!important;
  line-height:1.2;
  font-weight:900;
  letter-spacing:1.3px;
  text-transform:uppercase;
}
.mfp-author-name{
  margin:0 0 6px!important;
  color:#14263a!important;
  font-size:18px!important;
  line-height:1.2;
  font-weight:850;
}
.mfp-author-bio{
  margin:0!important;
  max-width:720px;
  color:#586879!important;
  font-size:12px!important;
  line-height:1.72;
}
.mfp-author-link{
  display:inline-flex;
  align-items:center;
  margin-top:9px!important;
  color:#0878d1!important;
  font-size:11px!important;
  font-weight:850;
  text-decoration:none!important;
}
.mfp-author-link:hover{color:#055da4!important}

/* --- Related guides: stronger magazine cards --- */
.mfp-related{
  margin:44px 0 12px!important;
  padding-top:0!important;
}
.mfp-related-head{
  margin-bottom:18px!important;
  padding-left:14px!important;
  border-left:3px solid var(--mfp-blue,#168df4)!important;
}
.mfp-related-head h2{
  color:#152638!important;
  font-size:23px!important;
  font-weight:850;
  letter-spacing:-.45px;
}
.mfp-related-head p{
  color:#748395!important;
  font-size:11px!important;
}
.mfp-related-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.mfp-related-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  background:#fff!important;
  border:1px solid #dfe7ef!important;
  border-radius:16px!important;
  box-shadow:0 7px 22px rgba(16,38,61,.055)!important;
}
.mfp-related-card:hover{
  transform:translateY(-4px)!important;
  border-color:#c8dced!important;
  box-shadow:0 15px 32px rgba(16,38,61,.11)!important;
}
.mfp-related-thumb{
  flex:0 0 auto;
  aspect-ratio:16/9!important;
  background:#edf2f7!important;
}
.mfp-related-thumb img{
  transition:transform .28s ease,filter .28s ease!important;
}
.mfp-related-card:hover .mfp-related-thumb img{
  transform:scale(1.045)!important;
  filter:saturate(1.04);
}
.mfp-related-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:16px 17px 15px!important;
}
.mfp-related-card .mfp-label{
  color:#0878d1!important;
  font-size:9px!important;
  font-weight:900;
  letter-spacing:.55px;
}
.mfp-related-card h3{
  margin:7px 0 10px!important;
  font-size:15px!important;
  line-height:1.38!important;
  font-weight:800;
}
.mfp-related-card h3 a{
  color:#17283a!important;
}
.mfp-related-card h3 a:hover{color:#0878d1!important}
.mfp-related-meta{
  margin-top:auto;
  padding-top:10px;
  border-top:1px solid #edf1f5;
  color:#8491a0!important;
  font-size:9px!important;
}
.mfp-related-arrow{color:#0878d1!important}

/* --- Phone brands: compact premium directory --- */
.mfp-brands{
  gap:11px!important;
}
.mfp-brands .mfp-brand{
  position:relative;
  min-height:70px;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:13px 8px!important;
  background:#fff!important;
  border:1px solid #e1e8ef!important;
  border-radius:12px!important;
  color:#1b2d40!important;
  box-shadow:0 5px 16px rgba(16,38,61,.035);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.mfp-brands .mfp-brand:hover{
  transform:translateY(-2px);
  border-color:#c7dced!important;
  box-shadow:0 10px 22px rgba(16,38,61,.08);
}
.mfp-brands .mfp-brand span{
  margin-top:4px!important;
  color:#8794a2!important;
  font-size:9px!important;
  font-weight:550;
}

/* --- Footer: premium, calm and centered --- */
.mfp-footer{
  background:
    radial-gradient(circle at 12% 0%,rgba(39,157,255,.12),transparent 28%),
    radial-gradient(circle at 88% 100%,rgba(92,77,190,.08),transparent 28%),
    #040a12!important;
  border-top:1px solid #1c3045!important;
}
.mfp-footer:after{
  content:"";
  position:absolute;
  left:50%;top:0;
  width:min(520px,70%);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(54,174,255,.65),transparent);
  pointer-events:none;
}
.mfp-footer-shell{
  width:min(1180px,calc(100% - 40px))!important;
}
.mfp-footer-top{
  grid-template-columns:1.55fr 1fr 1fr 1fr!important;
  gap:42px!important;
  padding:48px 0 38px!important;
}
.mfp-footer-brand-copy p{
  max-width:390px!important;
  color:#91a2b5!important;
  font-size:12px!important;
  line-height:1.78!important;
}
.mfp-footer-badges span{
  color:#7f95aa!important;
}
.mfp-footer-col h3{
  color:#eef5fc!important;
  font-size:11px!important;
  letter-spacing:.75px!important;
  text-transform:uppercase;
}
.mfp-footer-col h3:after{
  width:22px!important;
  height:2px!important;
  background:#35a8ff!important;
}
.mfp-footer-col a{
  color:#91a2b5!important;
  font-size:11px!important;
  margin:8px 0!important;
}
.mfp-footer-col a:hover{
  color:#fff!important;
}
.mfp-footer-bottom{
  background:#02070d!important;
  border-top:1px solid #18293b!important;
}
.mfp-footer-bottom-inner{
  min-height:56px!important;
  justify-content:center!important;
  padding:13px 0!important;
  gap:8px 24px!important;
}
.mfp-footer-copyright{
  color:#71859a!important;
}
.mfp-footer-copyright strong{
  color:#b8c7d5!important;
}
.mfp-footer-bottom-links{
  display:flex!important;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px 19px!important;
}
.mfp-footer-bottom-links a{
  color:#8ea0b3!important;
  font-size:9px!important;
}
.mfp-footer-bottom-links a:hover{color:#fff!important}

/* Focus states for accessibility */
.mfp-footer a:focus-visible,
.mfp-author-link:focus-visible,
.mfp-related-card a:focus-visible,
.mfp-brand:focus-visible{
  outline:2px solid #35a8ff;
  outline-offset:3px;
  border-radius:4px;
}

/* Responsive final pass */
@media(max-width:900px){
  .mfp-footer-top{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:30px 34px!important;
  }
  .mfp-footer-brand-copy{
    grid-column:1/-1;
  }
  .mfp-related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  .mfp-author-box{
    align-items:flex-start!important;
    gap:14px!important;
    padding:20px 18px!important;
    border-radius:15px!important;
  }
  .mfp-author-avatar,
  .mfp-author-avatar img,
  .mfp-author-photo{
    width:58px!important;height:58px!important;
    flex-basis:58px;
  }
  .mfp-author-name{font-size:16px!important}
  .mfp-author-bio{font-size:11px!important}
  .mfp-related-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .mfp-related-head h2{font-size:21px!important}
  .mfp-footer-top{
    grid-template-columns:1fr 1fr!important;
    gap:26px 20px!important;
    padding:38px 0 30px!important;
  }
  .mfp-footer-brand-copy{
    grid-column:1/-1;
  }
  .mfp-footer-shell{
    width:min(100% - 28px,1180px)!important;
  }
}
@media(max-width:420px){
  .mfp-footer-top{
    grid-template-columns:1fr!important;
    text-align:center;
  }
  .mfp-footer-col{
    align-items:center!important;
    text-align:center!important;
  }
  .mfp-footer-col h3:after{
    left:50%!important;
    transform:translateX(-50%);
  }
  .mfp-footer-col a{
    text-align:center!important;
  }
  .mfp-footer-bottom-inner{
    display:flex!important;
    flex-direction:column;
    gap:7px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .mfp-related-card,
  .mfp-related-thumb img,
  .mfp-brands .mfp-brand{
    transition:none!important;
  }
}
