/* =========================================================
   MEDIA BRIDGE CONNECT
   BLOG PAGE
   ========================================================= */

* {
   box-sizing: border-box;
}

html {
   scroll-behavior: smooth;
}

body {
   margin: 0;
   padding: 0;
   background: #E6E6FA;
   color: #111111;
   font-family: 'Poppins', Arial, sans-serif;
   font-size: 16px;
   line-height: 1.7;
}


/* =========================================================
   HEADER
   ========================================================= */

.mbc-header {
   position: relative;
   min-height: 150px;
   background: #ffffff;
   overflow: hidden;
   border-bottom: 3px solid #4169E1;
   box-shadow: 0 3px 15px rgba(0,0,0,0.08);
}

.header-shape {
   position: absolute;
   left: 0;
   top: 0;
   width: 43%;
   height: 150px;
   background: #4169E1;
   clip-path: polygon(0 0, 100% 0, 82% 100%, 0 100%);
}

.logo-link {
   position: absolute;
   left: 65px;
   top: 5px;
   z-index: 3;
   display: block;
}

.mbc-logo {
   width: 300px;
   height: 138px;
   object-fit: contain;
}

.top-navigation {
   position: absolute;
   right: 45px;
   top: 53px;
   display: flex;
   align-items: center;
   gap: 10px;
   z-index: 5;
}

.top-navigation a {
   text-decoration: none;
   color: #111111;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 14px;
   font-weight: 600;
   padding: 10px 14px;
   border-radius: 8px;
   transition: all 0.25s ease;
}

.top-navigation a:hover,
.top-navigation a.active {
   background: #4169E1;
   color: #ffffff;
   transform: translateY(-2px);
}


/* =========================================================
   HERO
   ========================================================= */

.blog-hero {
   min-height: 410px;
   display: flex;
   justify-content: center;
   align-items: center;
   text-align: center;
   padding: 65px 20px;
   background: #E6E6FA;
}

.blog-hero-content {
   max-width: 850px;
}

.blog-badge {
   display: inline-block;
   padding: 8px 18px;
   margin-bottom: 20px;
   border-radius: 30px;
   background: #ffffff;
   color: #4169E1;
   border: 1px solid rgba(65,105,225,0.25);
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 13px;
   font-weight: 700;
   letter-spacing: 2px;
}

.blog-hero h1 {
   margin: 0 0 20px;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: clamp(40px, 6vw, 65px);
   line-height: 1.1;
   font-weight: 800;
}

.blog-hero h1 span {
   color: #4169E1;
}

.blog-hero p {
   max-width: 700px;
   margin: auto;
   color: #444444;
   font-size: 18px;
}


/* =========================================================
   BLOG CONTAINER
   ========================================================= */

.blog-container {
   width: min(1100px, calc(100% - 40px));
   margin: auto;
}

.section-heading {
   display: flex;
   align-items: center;
   gap: 9px;
   color: #4169E1;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 13px;
   font-weight: 800;
   letter-spacing: 2px;
   margin-bottom: 10px;
}

.section-icon {
   font-size: 17px;
}


/* =========================================================
   FEATURED
   ========================================================= */

.featured-section {
   padding: 20px 0 70px;
}

.featured-card {
   display: grid;
   grid-template-columns: 48% 52%;
   min-height: 370px;
   margin-top: 20px;
   background: #ffffff;
   border-radius: 16px;
   overflow: hidden;
   text-decoration: none;
   color: #111111;
   box-shadow: 0 10px 35px rgba(0,0,0,0.08);
   transition: all 0.3s ease;
}

.featured-card:hover {
   transform: translateY(-5px);
   box-shadow: 0 16px 40px rgba(0,0,0,0.12);
}

.featured-image {
   min-height: 370px;
   overflow: hidden;
   background: #dcdcf2;
}

.featured-image img {
   width: 100%;
   height: 100%;
   min-height: 370px;
   display: block;
   object-fit: cover;
   transition: transform 0.4s ease;
}

.featured-card:hover .featured-image img {
   transform: scale(1.04);
}

.featured-content {
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 45px;
}

.article-category {
   display: inline-block;
   width: fit-content;
   margin-bottom: 13px;
   padding: 5px 11px;
   border-radius: 20px;
   background: #E6E6FA;
   color: #4169E1;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 11px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.7px;
}

.featured-content h2 {
   margin: 0 0 15px;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: clamp(26px, 3vw, 38px);
   line-height: 1.2;
}

.featured-content p {
   margin: 0 0 20px;
   color: #555555;
}

.article-meta {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   gap: 9px;
   color: #777777;
   font-size: 12px;
}

.read-more {
   margin-top: 25px;
   color: #4169E1;
   font-family: 'Montserrat', Arial, sans-serif;
   font-weight: 700;
   font-size: 14px;
}

.read-more span {
   transition: margin 0.2s ease;
}

.featured-card:hover .read-more span {
   margin-left: 6px;
}


/* =========================================================
   LATEST
   ========================================================= */

.latest-section {
   padding: 10px 0 70px;
}

.section-title-row {
   display: flex;
   justify-content: space-between;
   align-items: end;
   gap: 20px;
   margin-bottom: 28px;
}

.section-title-row h2,
.categories-section h2 {
   margin: 0;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 38px;
   line-height: 1.2;
}

.section-title-row p {
   margin: 0;
   color: #666666;
   font-size: 14px;
}


/* =========================================================
   BLOG GRID
   ========================================================= */

.blog-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 23px;
}

.blog-card {
   display: flex;
   flex-direction: column;
   background: #ffffff;
   border-radius: 13px;
   overflow: hidden;
   box-shadow: 0 7px 25px rgba(0,0,0,0.06);
   transition: all 0.25s ease;
}

.blog-card:hover {
   transform: translateY(-5px);
   box-shadow: 0 13px 30px rgba(0,0,0,0.10);
}

.blog-image {
   display: block;
   height: 210px;
   overflow: hidden;
   background: #dcdcf2;
}

.blog-image img {
   width: 100%;
   height: 100%;
   display: block;
   object-fit: cover;
   transition: transform 0.4s ease;
}

.blog-card:hover .blog-image img {
   transform: scale(1.05);
}

.blog-card-content {
   display: flex;
   flex-direction: column;
   flex: 1;
   padding: 22px;
}

.blog-card-content h3 {
   margin: 0 0 10px;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 19px;
   line-height: 1.35;
}

.blog-card-content h3 a {
   color: #111111;
   text-decoration: none;
}

.blog-card-content h3 a:hover {
   color: #4169E1;
}

.blog-card-content p {
   margin: 0;
   color: #666666;
   font-size: 13px;
   line-height: 1.6;
}

.card-bottom {
   display: flex;
   justify-content: space-between;
   align-items: center;
   gap: 10px;
   margin-top: auto;
   padding-top: 20px;
}

.article-date {
   color: #888888;
   font-size: 11px;
}

.card-read {
   color: #4169E1;
   font-size: 12px;
   font-weight: 700;
   text-decoration: none;
}

.card-read:hover {
   text-decoration: underline;
}


/* =========================================================
   PLACEHOLDER IMAGE
   ========================================================= */

.no-image {
   width: 100%;
   height: 100%;
   min-height: 210px;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   background: #E6E6FA;
   color: #4169E1;
}

.no-image span {
   font-size: 38px;
   margin-bottom: 4px;
}

.no-image strong {
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 17px;
   letter-spacing: 2px;
}

.featured-placeholder {
   min-height: 370px;
}

.featured-placeholder span {
   font-size: 55px;
}


/* =========================================================
   EMPTY BLOG
   ========================================================= */

.empty-blog {
   padding: 65px 25px;
   background: #ffffff;
   border-radius: 14px;
   text-align: center;
   box-shadow: 0 7px 25px rgba(0,0,0,0.06);
}

.empty-icon {
   font-size: 45px;
   color: #4169E1;
}

.empty-blog h2 {
   margin: 12px 0 10px;
   font-family: 'Montserrat', Arial, sans-serif;
}

.empty-blog p {
   max-width: 600px;
   margin: 0 auto 25px;
   color: #666666;
}


/* =========================================================
   CATEGORIES
   ========================================================= */

.categories-section {
   padding: 20px 0 80px;
}

.categories-section h2 {
   margin-bottom: 30px;
}

.categories-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 18px;
}

.category-card {
   display: grid;
   grid-template-columns: 45px 1fr;
   grid-template-rows: auto auto;
   column-gap: 13px;
   align-items: center;
   padding: 20px;
   background: #ffffff;
   border-radius: 11px;
   text-decoration: none;
   color: #111111;
   box-shadow: 0 6px 20px rgba(0,0,0,0.05);
   transition: all 0.25s ease;
}

.category-card:hover {
   transform: translateY(-4px);
   box-shadow: 0 11px 25px rgba(0,0,0,0.09);
}

.category-card span {
   grid-row: 1 / span 2;
   width: 45px;
   height: 45px;
   display: flex;
   align-items: center;
   justify-content: center;
   background: #E6E6FA;
   border-radius: 10px;
   font-size: 22px;
}

.category-card strong {
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 14px;
}

.category-card small {
   color: #777777;
   font-size: 11px;
}


/* =========================================================
   CTA
   ========================================================= */

.blog-cta {
   margin: 0 -0px 75px;
   padding: 65px 25px;
   background: #4169E1;
   border-radius: 16px;
   text-align: center;
   color: #ffffff;
}

.cta-symbol {
   font-size: 35px;
   margin-bottom: 8px;
}

.blog-cta h2 {
   margin: 0 0 13px;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: clamp(28px, 4vw, 40px);
}

.blog-cta p {
   max-width: 650px;
   margin: 0 auto 25px;
   color: rgba(255,255,255,0.9);
}

.cta-buttons {
   display: flex;
   justify-content: center;
   gap: 13px;
   flex-wrap: wrap;
}

.btn {
   display: inline-block;
   padding: 12px 23px;
   border-radius: 8px;
   text-decoration: none;
   font-family: 'Montserrat', Arial, sans-serif;
   font-size: 13px;
   font-weight: 700;
   transition: all 0.25s ease;
}

.btn-primary {
   background: #ffffff;
   color: #4169E1;
   border: 2px solid #ffffff;
}

.btn-primary:hover {
   transform: translateY(-2px);
   background: #f5f5f5;
}

.btn-white {
   background: transparent;
   color: #ffffff;
   border: 2px solid #ffffff;
}

.btn-white:hover {
   background: #ffffff;
   color: #4169E1;
}


/* =========================================================
   FOOTER
   ========================================================= */

.mbc-footer {
   background: #ffffff;
   border-top: 3px solid #4169E1;
   padding: 40px 20px 25px;
   text-align: center;
}

.footer-logo img {
   width: 210px;
   max-width: 80%;
   height: auto;
}

.footer-tagline {
   color: #555555;
   margin: 5px 0 20px;
   font-size: 14px;
}

.footer-links {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   gap: 20px;
   margin-bottom: 18px;
}

.footer-links a {
   color: #4169E1;
   text-decoration: none;
   font-size: 14px;
   font-weight: 600;
}

.footer-links a:hover {
   text-decoration: underline;
}

.footer-email {
   font-size: 14px;
   color: #333333;
   margin: 10px 0;
}

.copyright {
   margin: 20px 0 0;
   padding-top: 18px;
   border-top: 1px solid #eeeeee;
   color: #777777;
   font-size: 12px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media only screen and (max-width: 900px) {

   .header-shape {
      width: 50%;
   }

   .logo-link {
      left: 25px;
   }

   .top-navigation {
      right: 20px;
      gap: 2px;
   }

   .top-navigation a {
      font-size: 12px;
      padding: 8px 9px;
   }

   .featured-card {
      grid-template-columns: 45% 55%;
   }

   .featured-content {
      padding: 30px;
   }

   .blog-grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .categories-grid {
      grid-template-columns: repeat(2, 1fr);
   }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media only screen and (max-width: 700px) {

   .mbc-header {
      min-height: 210px;
   }

   .header-shape {
      width: 100%;
      height: 100px;
      clip-path: none;
   }

   .logo-link {
      left: 50%;
      top: 0;
      transform: translateX(-50%);
   }

   .mbc-logo {
      width: 230px;
      height: 100px;
   }

   .top-navigation {
      left: 10px;
      right: 10px;
      top: 115px;
      justify-content: center;
      flex-wrap: wrap;
      gap: 3px;
   }

   .top-navigation a {
      font-size: 11px;
      padding: 7px 8px;
   }

   .blog-hero {
      min-height: 390px;
      padding: 50px 20px;
   }

   .blog-hero h1 {
      font-size: 40px;
   }

   .blog-hero p {
      font-size: 15px;
   }

   .blog-container {
      width: calc(100% - 30px);
   }

   .featured-card {
      display: block;
   }

   .featured-image {
      min-height: 230px;
      height: 230px;
   }

   .featured-image img {
      min-height: 230px;
   }

   .featured-placeholder {
      min-height: 230px;
   }

   .featured-content {
      padding: 28px 23px;
   }

   .section-title-row {
      display: block;
   }

   .section-title-row h2,
   .categories-section h2 {
      font-size: 30px;
   }

   .section-title-row p {
      margin-top: 8px;
   }

   .blog-grid {
      grid-template-columns: 1fr;
   }

   .categories-grid {
      grid-template-columns: 1fr;
   }

   .blog-cta {
      margin-bottom: 50px;
   }

   .cta-buttons .btn {
      width: 100%;
      text-align: center;
   }

}


/* =========================================================
   SMALL PHONES — 480px
   ========================================================= */

@media only screen and (max-width: 480px) {

   body {
      font-size: 15px;
   }

   .mbc-header {
      min-height: 220px;
   }

   .top-navigation {
      top: 112px;
   }

   .top-navigation a {
      font-size: 10px;
      padding: 7px 6px;
   }

   .blog-hero h1 {
      font-size: 34px;
   }

   .featured-content h2 {
      font-size: 26px;
   }

   .section-title-row h2,
   .categories-section h2 {
      font-size: 28px;
   }

   .blog-image {
      height: 200px;
   }

   .footer-links {
      flex-direction: column;
      gap: 9px;
   }

}