/* BNB Tech Pro - typography + visual polish pass
   Keeps the approved Home hero typography/motion unchanged while improving
   readability, hierarchy and surface consistency across the rest of the site. */
:root{
  --font-ui:"Plus Jakarta Sans","Segoe UI",Arial,sans-serif;
  --font-hero:"Manrope","Segoe UI",Arial,sans-serif;
  --font-reading:"Source Serif 4",Georgia,"Times New Roman",serif;
  --polish-grad:linear-gradient(135deg,#1f9dfd,#0143ce);
  --polish-ink:#0b1730;
  --polish-muted:#5e7088;
  --polish-line:#dbe7f4;
  --polish-soft:#f6faff;
  --polish-shadow:0 14px 34px rgba(10,55,115,.08);
  --polish-shadow-hover:0 20px 46px rgba(7,63,145,.13);
}

/* ---------- Typography foundation ---------- */
html{font-synthesis:none;text-rendering:optimizeLegibility}
body{font-family:var(--font-ui);font-weight:500;letter-spacing:-.008em;color:var(--polish-ink)}
button,input,textarea,select{font-family:var(--font-ui)}
h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);font-weight:750;text-wrap:balance}
p,li,a,span{font-kerning:normal}

/* Hero was already approved: preserve its Manrope treatment exactly. */
.growth-hero,.growth-hero button,.growth-hero a,.growth-hero input{font-family:var(--font-hero)}
.growth-hero h1,.growth-hero h2,.growth-hero h3,.growth-hero p,.growth-hero span,.growth-hero b,.growth-hero strong,.growth-hero small{font-family:var(--font-hero)}

/* ---------- Header polish ---------- */
.client-header.site-header{padding:9px 0!important;background:rgba(247,250,255,.92)!important;border-bottom:1px solid rgba(210,226,246,.62)!important}
.client-nav-shell.nav-row{border-radius:19px!important;box-shadow:0 10px 30px rgba(3,42,93,.16)!important}
.client-nav-shell .brand{border:1px solid rgba(255,255,255,.7);box-shadow:0 5px 14px rgba(0,29,74,.07)}
.client-nav-shell .main-nav>a,.client-nav-shell .nav-dropdown-btn{font-family:var(--font-ui);font-size:13.5px!important;font-weight:700!important;letter-spacing:-.01em}
.client-nav-shell .login-btn{font-family:var(--font-ui);font-size:13px!important;font-weight:750!important}
.client-nav-shell .nav-dropdown-menu a{font-size:12.5px!important;line-height:1.35;font-weight:650!important}
.client-mobile-nav>a,.client-mobile-nav summary{font-family:var(--font-ui);font-size:13.5px!important;font-weight:700!important}
.client-mobile-nav details a{font-size:12.5px!important;line-height:1.4}

/* ---------- Section hierarchy ---------- */
.section-label,.kicker,.blog-eyebrow,.blog-tag{font-family:var(--font-ui);font-weight:800!important;letter-spacing:.10em!important}
.center-heading h2,.why-copy h2,.faq-intro h2,.section-title,.page-title{font-family:var(--font-ui);font-weight:760;letter-spacing:-.035em}
.center-heading p,.section-copy,.lead{font-family:var(--font-ui);color:var(--polish-muted)}

/* ---------- Home services ---------- */
.pdf-service-card{border-radius:20px!important;padding:28px!important;border-color:#dce8f6!important;background:linear-gradient(145deg,#fff 0%,#fbfdff 100%)!important;box-shadow:0 10px 28px rgba(20,70,137,.055)!important}
.pdf-service-card:hover{transform:translateY(-5px)!important;box-shadow:var(--polish-shadow-hover)!important;border-color:#bdd8fa!important}
.pdf-service-card:before{height:4px!important;background:var(--polish-grad)!important;opacity:.85!important}
.service-card-head h3{font-family:var(--font-ui);font-size:19px!important;font-weight:750!important;letter-spacing:-.02em}
.service-card-head p{font-family:var(--font-ui);font-size:12px!important;line-height:1.45!important;color:#51647d!important;font-weight:650!important}
.service-description{font-family:var(--font-ui);font-size:13px!important;line-height:1.7!important;color:#5b6d83!important}
.service-list span{font-family:var(--font-ui);font-size:12px!important;line-height:1.5!important;font-weight:650!important;color:#34465e!important}
.mini-gradient-btn{font-family:var(--font-ui);font-size:11.5px!important;font-weight:750!important;border-radius:9px!important}

/* ---------- SEO + Web Design benefits ---------- */
.why-copy>p{font-size:13.5px!important;line-height:1.72!important;color:#5c6e83!important}
.benefit-four>div{border:1px solid #e2ebf6;border-radius:14px;background:rgba(255,255,255,.82);padding:14px 13px;transition:.25s ease}
.benefit-four>div:hover{border-color:#c8dcf8;background:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(7,63,145,.07)}
.benefit-four strong{font-size:12px!important;font-weight:750!important;line-height:1.35!important}
.benefit-four p{font-size:11px!important;line-height:1.5!important;color:#6a7a8f!important}

/* ---------- Process: client explicitly requested better readability ---------- */
.process-track{border-radius:22px!important;border:1px solid #dbe8f7!important;background:linear-gradient(135deg,#fbfdff,#f1f7ff)!important;box-shadow:0 12px 34px rgba(12,59,122,.055)!important}
.process-step b{font-family:var(--font-ui);font-size:13.5px!important;font-weight:750!important;line-height:1.38!important;color:#14253d!important}
.process-step p{font-family:var(--font-ui);font-size:12.5px!important;line-height:1.58!important;color:#607188!important;max-width:188px!important}
.process-icon{box-shadow:0 8px 20px rgba(1,67,206,.12)}

/* ---------- Growth benefits ---------- */
.growth-benefits-grid{border-radius:22px!important;box-shadow:0 12px 34px rgba(12,59,122,.05)!important}
.growth-benefits-grid article{padding:26px 18px!important}
.growth-benefits-grid h3{font-family:var(--font-ui);font-size:13.5px!important;font-weight:750!important;line-height:1.38!important;color:#15263d!important}
.growth-benefits-grid p{font-family:var(--font-ui);font-size:11.5px!important;line-height:1.58!important;color:#687990!important;max-width:180px!important}

/* ---------- Why choose / contributor ---------- */
.choose-layout{border-radius:24px!important;border:1px solid #dce8f6!important;box-shadow:0 12px 34px rgba(9,60,130,.06)!important;overflow:hidden}
.choose-copy h2,.contributor-copy h2{font-family:var(--font-ui);font-weight:760!important;letter-spacing:-.025em}
.choose-copy li{font-size:12.5px!important;line-height:1.45!important;font-weight:600!important}
.contributor-copy p{font-size:13px!important;line-height:1.7!important;color:#5f7187!important}

/* ---------- CTA ---------- */
.final-cta{border-radius:24px!important;box-shadow:0 20px 48px rgba(1,67,206,.17)!important}
.cta-copy h2{font-family:var(--font-ui);font-weight:780!important;letter-spacing:-.035em!important}
.cta-copy p{font-family:var(--font-ui);line-height:1.65!important}
.cta-white,.cta-outline{font-family:var(--font-ui);font-weight:750!important}

/* ---------- Home editorial posts ---------- */
.editorial-post.home-post{border-radius:20px!important;border-color:#dce7f4!important;box-shadow:0 9px 25px rgba(12,55,109,.06)!important}
.editorial-post.home-post:hover{box-shadow:var(--polish-shadow-hover)!important;border-color:#c3daf7!important}
.editorial-body{padding:19px 19px 17px!important}
.editorial-meta{font-family:var(--font-ui);font-size:10.5px!important;font-weight:600!important}
.editorial-post h3{font-family:var(--font-ui);font-size:18px!important;line-height:1.4!important;font-weight:750!important;letter-spacing:-.025em}
.editorial-post p{font-family:var(--font-ui);font-size:12.5px!important;line-height:1.68!important;color:#607188!important}
.editorial-footer{font-family:var(--font-ui);font-size:10.5px!important}
.editorial-footer>a{font-size:10px!important;font-weight:750!important}

/* ---------- FAQ ---------- */
.faq-item{border-radius:14px!important;border-color:#dfe8f3!important;background:#fff;box-shadow:0 5px 16px rgba(10,55,115,.035)}
.faq-item button,.faq-q{font-family:var(--font-ui);font-size:13px!important;font-weight:700!important;line-height:1.45!important}
.faq-answer,.faq-a{font-family:var(--font-ui);font-size:12.5px!important;line-height:1.65!important;color:#607188!important}

/* ---------- Blog page ---------- */
.client-blog-banner h1{font-family:var(--font-ui);font-weight:780!important;letter-spacing:-.045em!important}
.client-blog-banner p{font-family:var(--font-ui);font-size:13.5px!important;line-height:1.75!important}
.blog-stats{border:1px solid #dce8f6!important;box-shadow:0 16px 40px rgba(9,57,125,.09)!important}
.blog-stats-title{font-family:var(--font-ui);font-weight:760!important;letter-spacing:-.025em!important}
.blog-stat small{font-family:var(--font-ui);font-size:10.5px!important;font-weight:650!important;color:#73849a!important}
.blog-stat strong{font-family:var(--font-ui);font-weight:800!important;letter-spacing:-.035em!important}
.popular-blog-row h2{font-family:var(--font-ui);font-weight:780!important;letter-spacing:-.035em!important}
.popular-blog-row p{font-family:var(--font-ui);font-size:13.5px!important;line-height:1.55!important}
.compact-search input,.popular-tools select{font-family:var(--font-ui);font-size:11.5px!important}
.blog-category-title h2,.blog-featured h2,.blog-posts-section h2{font-family:var(--font-ui);font-weight:760!important;letter-spacing:-.03em}
.blog-category-chip{font-family:var(--font-ui);font-weight:650!important}
.blog-post-card,.blog-featured-card{border-color:#dce7f4!important;box-shadow:0 9px 26px rgba(11,55,111,.055)!important}
.blog-post-card:hover{box-shadow:var(--polish-shadow-hover)!important}

/* ---------- Blog detail: modern editorial pairing ---------- */
.client-detail-hero h1{font-family:var(--font-ui);font-weight:780!important;letter-spacing:-.045em!important}
.article-breadcrumb,.article-author,.article-meta,.article-toc,.article-share-line,.article-faq{font-family:var(--font-ui)}
.article-body{font-family:var(--font-reading)!important;font-size:16.5px!important;line-height:1.9!important;color:#26384d!important;letter-spacing:0!important}
.article-body p{margin-bottom:21px!important}
.article-body h2,.article-body h3{font-family:var(--font-ui)!important;font-weight:760!important;letter-spacing:-.028em!important}
.article-body h2{font-size:26px!important;line-height:1.28!important;border-radius:14px!important;padding:19px 21px!important}
.article-body h3{font-size:20px!important}
.article-callout,.article-prompt{font-family:var(--font-ui)!important;font-size:12.5px!important;line-height:1.72!important;border-radius:13px!important}
.article-toc h3{font-size:13px!important;font-weight:800!important}
.article-toc nav a{font-family:var(--font-ui);font-size:11.5px!important;line-height:1.45!important;font-weight:550!important}
.article-toc nav a.active{font-weight:700!important}
.toc-mobile-toggle{font-family:var(--font-ui);font-size:12.5px!important}

/* ---------- About / Contact ---------- */
.page-hero .page-title{font-family:var(--font-ui);font-weight:780;letter-spacing:-.045em}
.page-hero .lead{font-size:17px;line-height:1.75}
.story-copy h2,.mv-card h3,.cover-item h3,.form-card h2,.info-panel h2{font-family:var(--font-ui);font-weight:760}
.story-copy p{font-family:var(--font-ui);font-size:16px!important;line-height:1.78!important}
.mv-card,.cover-item,.form-card,.info-panel{border-color:#dce7f4!important;box-shadow:0 10px 28px rgba(16,63,125,.055)!important}
.mv-card{border-radius:22px!important}
.cover-item{border-radius:18px!important;transition:.25s ease}
.cover-item:hover{transform:translateY(-3px);border-color:#c4daf7!important;box-shadow:0 14px 30px rgba(10,62,137,.09)!important}
.cover-item p{font-size:13.5px!important;line-height:1.65!important}
.field label{font-family:var(--font-ui);font-size:12.5px!important;font-weight:750!important}
.field input,.field textarea{font-size:14px!important;background:#fcfdff!important;border-color:#dbe7f4!important}
.contact-item span{font-size:13.5px!important;line-height:1.6!important}

/* ---------- Footer polish ---------- */
.client-footer.site-footer,.client-footer{background:linear-gradient(118deg,#041f3b 0%,#052b52 52%,#063968 100%)!important}
.client-footer-grid.footer-grid{gap:28px!important;padding-bottom:32px!important}
.client-footer .footer-about p{font-family:var(--font-ui);font-size:12px!important;line-height:1.7!important;color:#bfd0e2!important}
.client-footer .footer-col h3{font-family:var(--font-ui);margin-bottom:14px!important;padding:9px 11px!important;border-radius:10px!important;background:rgba(255,255,255,.96)!important;color:#123c6b!important;font-size:11.5px!important;font-weight:780!important;letter-spacing:-.005em}
.client-footer .footer-col>a,.client-footer .footer-col>span{font-family:var(--font-ui);font-size:11.5px!important;line-height:1.55!important;color:#c6d5e6!important;padding:4.5px 2px!important}
.client-footer .footer-bottom .container{font-family:var(--font-ui);font-size:10.5px!important;color:#9bb1c8!important}

/* ---------- Responsive typography / density ---------- */
@media (max-width:960px){
  .client-nav-shell .main-nav>a,.client-nav-shell .nav-dropdown-btn{font-size:13px!important}
  .process-step p{font-size:12px!important;max-width:210px!important}
  .growth-benefits-grid p{font-size:11.25px!important}
}

@media (max-width:700px){
  /* Keep Home hero untouched except inherited approved rules. */
  .pdf-service-card{padding:19px!important;border-radius:16px!important}
  .service-card-head h3{font-size:17px!important}.service-card-head p{font-size:11px!important}
  .service-description{font-size:13px!important}.service-list span{font-size:11.5px!important}
  .why-copy>p{font-size:13px!important}
  .benefit-four strong{font-size:11.5px!important}.benefit-four p{font-size:10.5px!important}
  .process-step b{font-size:12.5px!important}.process-step p{font-size:11.5px!important;line-height:1.55!important;max-width:none!important}
  .growth-benefits-grid h3{font-size:12.5px!important}.growth-benefits-grid p{font-size:10.75px!important;line-height:1.55!important;max-width:190px!important}
  .choose-copy li{font-size:12px!important}.contributor-copy p{font-size:12.5px!important}
  .editorial-post h3{font-size:14px!important}.editorial-meta{font-size:9.5px!important}.editorial-post p{font-size:11.5px!important}
  .client-blog-banner h1{font-size:30px!important}.client-blog-banner p{font-size:12.5px!important}
  .popular-blog-row h2{font-size:27px!important}.popular-blog-row p{font-size:12.5px!important}
  .article-body{font-size:16px!important;line-height:1.84!important}.article-body h2{font-size:24px!important}.article-body h3{font-size:19px!important}
  .client-footer .footer-col h3{font-size:11.5px!important}.client-footer .footer-col>a,.client-footer .footer-col>span{font-size:11.5px!important}
}

@media (max-width:480px){
  .growth-benefits-grid article{padding:16px 9px!important}
  .growth-benefits-grid h3{font-size:12px!important}.growth-benefits-grid p{font-size:10.25px!important}
  .process-step b{font-size:12px!important}.process-step p{font-size:11px!important}
  .article-body{font-size:15.75px!important;line-height:1.82!important}
  .article-toc nav a{font-size:11px!important}
  .page-hero .lead{font-size:15px!important}
}

@media (hover:none) and (pointer:coarse){
  .benefit-four>div:hover,.cover-item:hover{transform:none;box-shadow:none}
}
