/* ==========================================================================
   BridgeNatix — Blog Article Styles (loads after style.css)
   ========================================================================== */

body.blog-page{background:var(--bg)}

/* fixed nav is always solid on article pages */
body.blog-page nav{
  background:rgba(255,255,255,.85);
  backdrop-filter:blur(18px) saturate(1.4);
  -webkit-backdrop-filter:blur(18px) saturate(1.4);
  box-shadow:0 6px 30px rgba(16,17,20,.08);
  padding:14px 5vw;
}
.back-link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.92rem;font-weight:600;color:var(--ink);text-decoration:none;
  transition:color .3s,gap .3s;
}
.back-link:hover{color:var(--orange);gap:12px}

/* ---------- standalone article-page nav (logo + back link) — mobile ---------- */
@media (max-width: 640px){
  body.blog-page nav{
    flex-wrap:wrap;
    row-gap:10px;
    padding:16px 5vw;
  }
  body.blog-page nav .logo{font-size:1.1rem}
  body.blog-page nav .back-link{font-size:.82rem}
}
@media (max-width: 380px){
  body.blog-page nav{justify-content:center;text-align:center}
}

/* ---------- article header ---------- */
.article-hero{max-width:860px;margin:0 auto;padding:150px 5vw 10px;text-align:center}
.article-hero .b-tag{font-size:.78rem}
.article-title{
  font-family:var(--font-head);
  font-size:clamp(2.1rem,4.6vw,3.5rem);
  font-weight:800;letter-spacing:-1.5px;line-height:1.1;
  margin:10px 0 22px;
}
.article-meta{
  display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;
  color:var(--gray);font-size:.88rem;
}
.article-meta b{color:var(--ink)}
.article-meta span{display:inline-flex;align-items:center;gap:8px}
.article-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--orange)}

.article-cover{
  max-width:1080px;margin:40px auto 0;padding:0 5vw;
}
.article-cover .frame{
  border-radius:28px;overflow:hidden;aspect-ratio:21/9;
  box-shadow:0 30px 70px rgba(16,17,20,.18);
}
.article-cover img{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- article body ---------- */
.article-body{max-width:780px;margin:56px auto 70px;padding:0 5vw}
.article-body p{color:#3c3f45;line-height:1.9;font-size:1.02rem;margin-bottom:22px}
.article-body h2{
  font-family:var(--font-head);font-size:1.6rem;font-weight:800;
  letter-spacing:-.6px;margin:44px 0 16px;
}
.article-body h2 em{font-style:normal;color:var(--orange)}
.article-body ul{margin:0 0 24px;list-style:none}
.article-body li{
  color:#3c3f45;line-height:1.8;font-size:1rem;
  padding:6px 0 6px 26px;position:relative;
}
.article-body li::before{
  content:"";position:absolute;left:4px;top:17px;
  width:8px;height:8px;border-radius:50%;background:var(--orange);
}
.article-body blockquote{
  border-left:4px solid var(--orange);
  background:var(--white);border-radius:0 20px 20px 0;
  padding:26px 30px;margin:34px 0;
  font-style:italic;color:#3c3f45;line-height:1.85;font-size:1.04rem;
  box-shadow:0 16px 40px rgba(16,17,20,.07);
}
.article-body .stats-callout{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
  background:var(--peach);border-radius:22px;padding:34px 26px;margin:38px 0;
  text-align:center;
}
.article-body .stats-callout .v{
  font-family:var(--font-head);font-size:2rem;font-weight:800;letter-spacing:-1px;
}
.article-body .stats-callout .v em{font-style:normal;color:var(--orange)}
.article-body .stats-callout small{display:block;color:#6c5a52;font-size:.8rem;margin-top:4px}

/* ---------- article CTA ---------- */
.article-cta{
  max-width:780px;margin:0 auto 90px;padding:0 5vw;
}
.article-cta .box{
  background:linear-gradient(135deg,var(--orange-soft) 0%,var(--orange) 55%,#d63c0e 100%);
  border-radius:28px;padding:48px 40px;text-align:center;color:#fff;
  box-shadow:0 30px 70px rgba(244,81,30,.35);
}
.article-cta h3{font-family:var(--font-head);font-size:1.7rem;font-weight:800;letter-spacing:-.6px;margin-bottom:12px}
.article-cta p{color:rgba(243, 243, 239, 0.92);margin-bottom:26px;line-height:1.7}
.article-cta .btn{background:#fff;color:var(--orange);box-shadow:0 12px 30px rgba(120,30,0,.3)}
.article-cta .btn:hover{background:var(--ink);color:#fff}

/* ---------- more posts ---------- */
.more-posts{max-width:1080px;margin:0 auto 90px;padding:0 5vw}
.more-posts h3{font-family:var(--font-head);font-size:1.4rem;font-weight:800;letter-spacing:-.5px;margin-bottom:24px}
.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.more-card{
  display:flex;gap:18px;align-items:center;
  background:var(--white);border:1px solid rgba(16,17,20,.07);
  border-radius:20px;padding:18px;text-decoration:none;
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease;
}
.more-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(16,17,20,.12)}
.more-card img{width:92px;height:70px;object-fit:cover;border-radius:12px;flex-shrink:0}
.more-card b{color:var(--ink);font-size:.95rem;line-height:1.45;display:block}
.more-card small{color:var(--orange);font-size:.72rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}

/* ---------- mini footer ---------- */
.article-footer{
  background:#0c0d10;color:#7c7f88;text-align:center;
  padding:26px 5vw;font-size:.85rem;
  border-radius:28px 28px 0 0;
}
.article-footer a{color:var(--orange);text-decoration:none}

@media(max-width:760px){
  .article-body .stats-callout{grid-template-columns:1fr 1fr}
  .more-grid{grid-template-columns:1fr}
  .article-cover .frame{aspect-ratio:16/9}
}

/* standalone article pages: give the title extra clearance in case the
   simple logo + back-link nav wraps to two lines on very small screens */
@media(max-width:480px){
  body.blog-page .article-hero{padding-top:175px}
}


/* Card Base Background & Custom Asymmetric Radius */
.card-custom-bg { 
  background-color: #f5f5f5; 
  transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.card-custom-radius { 
  border-radius: 24px 0 24px 24px; /* Top-Right set to 0 */
}

.blog-card {
  border: 1px solid rgba(0, 0, 0, 0.03);
  min-height: 420px;
}

/* Hover Lift & Elevation */
.blog-card-link:hover .blog-card {
  transform: translateY(-8px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.08) !important;
  background-color: #ffffff;
}

/* Stroke Outline Number (Default Light) */
.faded-num {
  top: 15px;
  right: 20px;
  font-size: 3.8rem;
  font-weight: 800;
  color: transparent;
  -webkit-text-stroke: 1.5px rgba(0, 0, 0, 0.12);
  transition: all 0.35s ease;
}

/* Number Turns Orange/Red on Hover */
.blog-card-link:hover .faded-num {
  -webkit-text-stroke: 1.5px var(--orange, #ff4500);
  color: rgba(255, 69, 0, 0.08);
}

/* Arch Image Styling & Hover Zoom */
.blog-arch-img {
  width: 100%;
  max-width: 200px;
  height: 130px;
  border-radius: 60px 60px 16px 16px;
  overflow: hidden;
}

.blog-arch-img img {
  transition: transform 0.4s ease;
}

.blog-card-link:hover .blog-arch-img img {
  transform: scale(1.08);
}

/* Responsive Fixes */
@media (max-width: 768px) {
  .blog-card {
    min-height: auto;
    padding: 1.5rem !important;
  }
}
@media (max-width: 480px) {

  #nav {
    min-height: 64px !important;
    height: auto !important;
    padding: 10px 18px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  #nav .logo img {
    max-width: 150px !important;
    height: auto;
  }

  #burger {
    width: 29px !important;
    height: 20px !important;
    min-width: 24px;
    min-height: 20px;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: visible !important;
  }

  #navLinks {
    top: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }
}
/* FINAL MOBILE ARTICLE TITLE FIX */

.article-hero {
  width: 100%;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  overflow: visible !important;
}

.article-title {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;

  overflow: visible !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;

  text-align: center;
}

@media (max-width: 768px) {

  .article-hero {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .article-title {
    font-size: 2rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.5px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    transform: none !important;
  }
}

@media (max-width: 420px) {

  .article-title {
    font-size: 1.85rem !important;
    line-height: 1.1 !important;
    letter-spacing: -0.3px !important;
  }
}
.cta-quote-btn,
.cta-quote-btn:link,
.cta-quote-btn:visited {
  background: #ffffff !important;
  color: #f4511e !important;
  border: 2px solid #ffffff !important;
  font-weight: 700;
}

.cta-quote-btn .arrow {
  color: #f4511e !important;
}

.cta-quote-btn:hover {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}

.cta-quote-btn:hover .arrow {
  color: #ffffff !important;
}
