/* ==========================================================
   BIZFAYD PUBLIC V2 — FINAL SHARED HEADER + PRICING + FOOTER
   build 20260919-005
   ========================================================== */

:root{
  --bf-navy:#06162e;
  --bf-navy-2:#0f2a4d;
  --bf-gold:#f5aa00;
  --bf-gold-soft:#fff4d4;
  --bf-ink:#0a1930;
  --bf-muted:#617189;
  --bf-line:#dce4ee;
  --bf-soft:#f6f9fc;
  --bf-green:#12915f;
}

/* shared public shell */

.bf-public-body{
  margin:0;
  color:var(--bf-ink);
  background:#fff;
}

.bf-public-container{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
}

.bf-public-header{
  background:#fff;
  border-bottom:1px solid var(--bf-line);
  position:sticky;
  top:0;
  z-index:50;
}

.bf-public-nav{
  min-height:74px;
  display:flex;
  align-items:center;
  gap:30px;
}

.bf-public-brand{
  display:inline-flex;
  align-items:center;
}

.bf-public-brand img{
  width:150px;
  max-height:50px;
  object-fit:contain;
  display:block;
}

.bf-public-links{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:21px;
}

.bf-public-links a{
  color:#344760;
  text-decoration:none;
  font-size:13px;
  font-weight:850;
}

.bf-public-links a:hover,
.bf-public-links a.active{
  color:var(--bf-ink);
}

.bf-public-cta{
  padding:11px 16px;
  background:var(--bf-gold);
  border-radius:9px;
  color:var(--bf-navy)!important;
}

.bf-public-menu{
  display:none;
  margin-left:auto;
  width:42px;
  height:42px;
  border:1px solid var(--bf-line);
  background:#fff;
  border-radius:10px;
  font-size:20px;
}

.bf-public-mobile-nav{
  display:none;
}

/* pricing hero */

.bf-pricing-hero{
  padding:82px 0 48px;
  text-align:center;
  background:
    radial-gradient(circle at 50% 0%, rgba(245,170,0,.08), transparent 34%),
    linear-gradient(180deg,#f6f8fc 0%,#ffffff 100%);
}

.bf-eyebrow{
  display:inline-block;
  color:#7a5600;
  letter-spacing:.12em;
  font-size:11px;
  font-weight:950;
}

.bf-pricing-hero h1{
  max-width:900px;
  margin:12px auto 14px;
  font-size:clamp(38px,5vw,58px);
  line-height:1.05;
  letter-spacing:-.04em;
  color:var(--bf-ink);
}

.bf-pricing-hero p{
  max-width:760px;
  margin:0 auto;
  color:var(--bf-muted);
  font-size:17px;
  line-height:1.65;
}

/* currency switch */

.bf-currency-switch{
  display:inline-flex;
  gap:6px;
  margin:28px auto 0;
  padding:5px;
  border:1px solid var(--bf-line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 5px 18px rgba(15,35,70,.04);
}

.bf-currency-pill{
  min-width:66px;
  padding:10px 13px;
  border-radius:9px;
  text-align:center;
  text-decoration:none;
  color:#52647a;
  font-size:13px;
  font-weight:900;
}

.bf-currency-pill:hover{
  background:#f4f7fb;
}

.bf-currency-pill.active{
  background:var(--bf-navy);
  color:#fff;
}

/* promo */

.bf-promo-banner{
  max-width:860px;
  margin:20px auto 0;
  padding:15px 17px;
  border:1px solid #efc55b;
  border-radius:14px;
  background:#fff7df;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  text-align:left;
}

.bf-promo-banner strong,
.bf-promo-banner span{
  display:block;
}

.bf-promo-banner span{
  margin-top:3px;
  color:#6a5a36;
  font-size:13px;
}

.bf-promo-badge{
  flex:0 0 auto!important;
  margin:0!important;
  padding:8px 11px;
  border-radius:999px;
  background:var(--bf-gold);
  color:var(--bf-navy)!important;
  font-size:10px!important;
  font-weight:950;
}

/* pricing cards */

.bf-pricing-section{
  padding:56px 0 66px;
}

.bf-pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.bf-pricing-card{
  position:relative;
  display:flex;
  flex-direction:column;
  padding:30px;
  border:1px solid var(--bf-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 32px rgba(12,32,65,.05);
}

.bf-pricing-card.featured{
  border:2px solid var(--bf-gold);
  box-shadow:0 18px 45px rgba(12,32,65,.09);
}

.bf-pricing-card h2{
  margin:0 0 18px;
  font-size:22px;
  color:var(--bf-ink);
}

.bf-popular-badge{
  position:absolute;
  top:18px;
  right:18px;
  padding:6px 9px;
  border-radius:999px;
  background:#fff0bd;
  color:#765400;
  font-size:9px;
  font-weight:950;
}

.bf-old-price{
  margin-top:1px;
  color:#8492a6;
  font-size:15px;
  font-weight:800;
  text-decoration:line-through;
}

.bf-old-price span,
.bf-new-price span{
  margin-left:3px;
  color:#718198;
  font-size:12px;
  font-weight:800;
}

.bf-new-price{
  margin-top:4px;
  color:var(--bf-ink);
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.04em;
  font-weight:950;
}

.bf-save-note{
  display:inline-block;
  align-self:flex-start;
  margin-top:9px;
  padding:6px 8px;
  border-radius:8px;
  background:#e9f8f0;
  color:#0e7d51;
  font-size:11px;
  font-weight:900;
}

.bf-plan-desc{
  min-height:64px;
  margin-top:20px;
  color:#465a72;
  line-height:1.55;
}

.bf-feature-list{
  list-style:none;
  padding:0;
  margin:20px 0 28px;
  display:grid;
  gap:11px;
}

.bf-feature-list li{
  display:flex;
  gap:8px;
  align-items:flex-start;
  color:#52657c;
  font-size:14px;
}

.bf-feature-list li span{
  color:var(--bf-green);
  font-weight:950;
}

.bf-plan-button{
  margin-top:auto;
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:10px;
  background:var(--bf-navy);
  color:#fff;
  text-decoration:none;
  font-weight:900;
}

.bf-plan-button.gold{
  background:var(--bf-gold);
  color:var(--bf-navy);
}

.bf-secondary-button{
  display:inline-flex;
  min-height:42px;
  padding:0 16px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--bf-line);
  border-radius:10px;
  background:#fff;
  color:var(--bf-ink);
  text-decoration:none;
  font-weight:900;
}

/* disclosure */

.bf-pricing-disclosure{
  margin-top:22px;
  padding:16px 18px;
  border:1px solid var(--bf-line);
  border-radius:13px;
  background:#f8fafc;
  color:#52647a;
  line-height:1.65;
}

.bf-pricing-disclosure strong{
  color:var(--bf-ink);
}

/* pricing CTA */

.bf-pricing-cta-section{
  padding:0 0 68px;
}

.bf-pricing-cta-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:30px;
  border:1px solid var(--bf-line);
  border-radius:18px;
  background:var(--bf-soft);
}

.bf-pricing-cta-panel h2{
  margin:8px 0 8px;
  font-size:30px;
}

.bf-pricing-cta-panel p{
  margin:0;
  color:var(--bf-muted);
}

.bf-pricing-cta-actions{
  display:flex;
  gap:10px;
  flex:0 0 auto;
}

/* homepage pricing shared styles */

.bf-home-pricing{
  padding:80px 0;
  background:#f8fafc;
  scroll-margin-top:90px;
}

.bf-pricing-heading{
  max-width:800px;
  margin:0 auto;
  text-align:center;
}

.bf-pricing-heading h2{
  margin:9px 0 12px;
  color:var(--bf-ink);
  font-size:clamp(34px,4vw,52px);
  line-height:1.05;
  letter-spacing:-.035em;
}

.bf-pricing-heading p{
  margin:0;
  color:var(--bf-muted);
  font-size:16px;
}

.bf-home-pricing .bf-pricing-grid{
  margin-top:30px;
}

.bf-pricing-bottom{
  margin-top:22px;
  text-align:center;
}

.bf-pricing-bottom a{
  color:#0c4f98;
  text-decoration:none;
  font-weight:900;
}

.bf-pricing-bottom p{
  max-width:760px;
  margin:9px auto 0;
  color:#7d8da1;
  font-size:12px;
  line-height:1.6;
}

/* footer */

.bf-main-footer{
  padding:58px 0 22px;
  background:var(--bf-navy);
  color:#dbe5f3;
}

.bf-footer-grid{
  display:grid;
  grid-template-columns:1.2fr 2fr;
  gap:50px;
}

.bf-footer-logo img{
  width:158px;
  display:block;
  filter:brightness(0) invert(1);
}

.bf-footer-brand p{
  max-width:430px;
  color:#aebed3;
  line-height:1.7;
}

.bf-footer-cta{
  margin-top:18px;
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}

.bf-footer-primary,
.bf-footer-secondary{
  display:inline-flex;
  padding:11px 15px;
  border-radius:9px;
  text-decoration:none;
  font-size:13px;
  font-weight:900;
}

.bf-footer-primary{
  background:var(--bf-gold);
  color:var(--bf-navy);
}

.bf-footer-secondary{
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
}

.bf-footer-links{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}

.bf-footer-links h3{
  margin:0 0 14px;
  color:#fff;
  font-size:14px;
}

.bf-footer-links a{
  display:block;
  margin-bottom:10px;
  color:#b3c2d5;
  text-decoration:none;
  font-size:13px;
}

.bf-footer-links a:hover{
  color:#fff;
}

.bf-footer-bottom{
  margin-top:36px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.11);
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  color:#93a6bf;
  font-size:12px;
}

/* tablet */

@media(max-width:950px){

  .bf-public-links{
    display:none;
  }

  .bf-public-menu{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  .bf-public-mobile-nav{
    display:none;
    padding:0 16px 16px;
    background:#fff;
    border-top:1px solid var(--bf-line);
  }

  .bf-public-mobile-nav.open{
    display:grid;
  }

  .bf-public-mobile-nav a{
    padding:11px 0;
    color:#344760;
    text-decoration:none;
    font-weight:850;
  }

  .bf-public-mobile-nav .bf-public-cta{
    width:max-content;
    padding:10px 14px;
  }

  .bf-pricing-grid{
    grid-template-columns:1fr;
  }

  .bf-pricing-cta-panel{
    flex-direction:column;
    align-items:stretch;
  }

  .bf-footer-grid{
    grid-template-columns:1fr;
  }

  .bf-footer-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* phone */

@media(max-width:600px){

  .bf-public-container{
    width:min(100% - 22px,1180px);
  }

  .bf-pricing-hero{
    padding:52px 0 36px;
  }

  .bf-pricing-hero h1{
    font-size:36px;
  }

  .bf-pricing-hero p{
    font-size:15px;
  }

  .bf-currency-switch{
    width:100%;
    box-sizing:border-box;
    display:grid;
    grid-template-columns:repeat(2,1fr);
  }

  .bf-currency-pill{
    text-align:center;
  }

  .bf-promo-banner{
    flex-direction:column;
    align-items:flex-start;
  }

  .bf-pricing-card{
    padding:23px;
  }

  .bf-new-price{
    font-size:36px;
  }

  .bf-pricing-cta-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .bf-plan-button,
  .bf-secondary-button{
    width:100%;
    box-sizing:border-box;
  }

  .bf-footer-links{
    grid-template-columns:1fr;
  }

  .bf-footer-bottom{
    display:grid;
  }
}
