/* =========================================================
   BIGFOOT MEDIA FOUNDRY — PRICING PAGE
   PAGE-SPECIFIC STYLES
   Loaded AFTER css/styles.css
   ========================================================= */

.pricing-page{
  background:#050505;
}

/* HERO */
.pricing-hero{
  min-height:680px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,
      rgba(0,0,0,.97) 0%,
      rgba(0,0,0,.88) 42%,
      rgba(0,0,0,.48) 72%,
      rgba(0,0,0,.24) 100%),
    url("../images/bigfoot-hero-image.png") center center/cover no-repeat;
  border-bottom:9px solid var(--lime);
}

.pricing-hero-inner{
  padding-top:100px;
  padding-bottom:110px;
}

.pricing-hero h1{
  max-width:1220px;
  margin:0 0 30px;
  color:#fff;
  font-size:clamp(4.2rem,6.4vw,7rem);
  line-height:.9;
  letter-spacing:-.05em;
  font-weight:900;
  text-transform:uppercase;
}

.pricing-hero h1 span{
  color:var(--lime);
}

.pricing-lede{
  max-width:900px;
  margin-bottom:34px;
  color:#eee;
  font-size:clamp(1.25rem,1.55vw,1.6rem);
  line-height:1.5;
}

/* SHARED */
.pricing-section{
  padding:145px 0;
}

.pricing-black{
  background:#050505;
  color:#fff;
}

.pricing-light{
  background:#f2f0ea;
  color:#111;
}

.pricing-heading{
  max-width:1120px;
  margin:0 auto 75px;
}

.pricing-heading h2{
  margin-bottom:25px;
  font-size:clamp(3.8rem,5.7vw,6rem);
  line-height:.91;
}

.pricing-heading>p:not(.kicker){
  max-width:900px;
  color:#cfcfcf;
  font-size:1.25rem;
}

.pricing-heading-dark h2{
  color:#111;
}

.pricing-heading-dark>p:not(.kicker){
  color:#333;
}

/* MAIN PRICE CARDS */
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
}

.price-card{
  position:relative;
  min-height:590px;
  padding:42px 38px;
  background:#111;
  border-top:6px solid var(--lime);
  display:flex;
  flex-direction:column;
}

.price-card.featured{
  background:#181818;
  transform:translateY(-18px);
  box-shadow:0 24px 65px rgba(0,0,0,.28);
}

.price-number{
  margin:0 0 18px;
  color:var(--lime);
  font-size:3rem;
  font-weight:900;
  line-height:1;
}

.popular-label{
  position:absolute;
  top:18px;
  right:20px;
  margin:0;
  padding:7px 10px;
  background:var(--lime);
  color:#050505;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.price-card h3{
  color:#fff;
  font-size:1.75rem;
}

.price-placeholder{
  margin:28px 0 0;
  color:#fff;
  font-size:clamp(2.7rem,4vw,4.2rem);
  font-weight:900;
  letter-spacing:-.03em;
}

.price-unit{
  margin:4px 0 28px;
  color:var(--lime);
  font-size:.82rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.price-card ul{
  margin:0 0 35px;
  padding:0;
  list-style:none;
}

.price-card li{
  position:relative;
  padding:11px 0 11px 23px;
  color:#d0d0d0;
  border-bottom:1px solid #282828;
}

.price-card li::before{
  content:"•";
  position:absolute;
  left:0;
  color:var(--lime);
  font-weight:900;
}

.price-card .button{
  margin-top:auto;
}

/* COST BREAKDOWN */
.cost-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}

.cost-card{
  min-height:310px;
  padding:34px 30px;
  background:#fff;
  border-top:5px solid var(--lime);
  box-shadow:0 12px 35px rgba(0,0,0,.11);
}

.cost-card span{
  display:block;
  margin-bottom:22px;
  color:#5e8d00;
  font-size:2.8rem;
  font-weight:900;
}

.cost-card h3{
  color:#111;
  font-size:1.35rem;
}

.cost-card p{
  color:#444;
}

.cost-card strong{
  display:block;
  margin-top:28px;
  color:#111;
  font-size:1.7rem;
}

/* ROUTE STRIP */
.pricing-strip{
  padding:125px 0;
  background:var(--lime);
  color:#050505;
}

.pricing-strip-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:110px;
  align-items:center;
}

.pricing-strip .kicker{
  color:#050505;
}

.pricing-strip h2{
  margin:0;
  color:#050505;
  font-size:clamp(4rem,6vw,6.3rem);
  line-height:.9;
}

.pricing-strip h2 span{
  color:#050505;
}

.pricing-strip-grid>div:last-child>p{
  color:#111;
  font-size:clamp(1.45rem,1.9vw,1.95rem);
  line-height:1.38;
}

.pricing-routes{
  margin-top:32px;
  color:#050505;
  font-size:clamp(1.45rem,2vw,2.1rem);
  line-height:1.35;
  font-weight:900;
  text-align:center;
}

.pricing-routes div{
  white-space:normal;
}

.pricing-routes span{
  padding:0 10px;
}

/* OPTIONS */
.options-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.options-grid article{
  min-height:280px;
  padding:38px;
  background:#111;
  border-left:5px solid var(--lime);
}

.options-grid h3{
  color:#fff;
  font-size:1.5rem;
}

.options-grid p{
  color:#c8c8c8;
  font-size:1.06rem;
  line-height:1.6;
}

.options-grid .option-price{
  margin-top:25px;
  color:var(--lime);
  font-size:1.7rem;
  font-weight:900;
}

/* FACTORS */
.factors-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.factors-grid div{
  min-height:110px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:#fff;
  border:1px solid #d4d1c9;
  color:#111;
  text-align:center;
  font-weight:900;
}

.pricing-note{
  max-width:1050px;
  margin:45px auto 0;
  color:#444;
  font-size:1rem;
  line-height:1.6;
  text-align:center;
}

/* CTA */
.pricing-cta{
  padding:125px 0;
  background:var(--lime);
  color:#050505;
}

.pricing-cta-inner{
  text-align:center;
}

.pricing-cta .kicker{
  color:#050505;
}

.pricing-cta h2{
  margin-bottom:28px;
  color:#050505;
  font-size:clamp(4rem,6vw,6.4rem);
  line-height:.9;
}

.pricing-cta p:not(.kicker){
  max-width:900px;
  margin:0 auto 34px;
  color:#111;
  font-size:1.35rem;
}

.pricing-black-button{
  min-height:62px;
  padding:0 36px;
  background:#050505;
  border-color:#050505;
  color:#fff;
  font-size:1rem;
}

/* FOOTER */
.pricing-page .site-footer{
  background:#030303;
  padding:65px 0 28px;
}

.pricing-page .footer-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
}

.pricing-page .footer-logo{
  width:auto;
  height:90px;
}

.pricing-page .footer-contact{
  display:flex;
  gap:28px;
  color:#ddd;
  font-size:.9rem;
}

.pricing-page .footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:40px;
  margin-top:42px;
  padding-top:22px;
  border-top:1px solid #222;
  color:#777;
  font-size:.75rem;
}

.pricing-page .footer-seo{
  max-width:650px;
  text-align:right;
}

/* RESPONSIVE */
@media(max-width:1100px){
  .pricing-grid{
    grid-template-columns:1fr;
  }

  .price-card.featured{
    transform:none;
  }

  .cost-grid,
  .factors-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .pricing-strip-grid{
    grid-template-columns:1fr;
    gap:45px;
  }
}

@media(max-width:760px){
  .pricing-hero{
    min-height:auto;
  }

  .pricing-hero-inner{
    padding-top:80px;
    padding-bottom:85px;
  }

  .pricing-hero h1{
    font-size:clamp(3rem,12vw,4.8rem);
  }

  .pricing-section{
    padding:90px 0;
  }

  .pricing-heading{
    margin-bottom:50px;
  }

  .cost-grid,
  .options-grid,
  .factors-grid{
    grid-template-columns:1fr;
  }

  .pricing-strip{
    padding:90px 0;
  }

  .pricing-routes{
    font-size:1.2rem;
  }

  .pricing-routes div{
    white-space:normal;
  }

  .pricing-page .footer-main,
  .pricing-page .footer-bottom{
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .pricing-page .footer-contact{
    flex-direction:column;
    align-items:center;
  }

  .pricing-page .footer-seo{
    text-align:center;
  }
}
/* PRICING HERO — EXACT THREE-LINE HEADLINE */

.pricing-main-headline{
  width: 100% !important;
  max-width: 1400px !important;
}

.pricing-main-headline span{
  display: block !important;
}

.pricing-main-headline .headline-white{
  color: #ffffff !important;
}

.pricing-main-headline .headline-lime{
  color: #A7FF00 !important;
}
/* Keep GET A QUOTE on one line */
.price-card:nth-child(2) .price-placeholder{
  font-size:clamp(2.2rem,3.2vw,3.2rem) !important;
}
/* Shorten Optional Services cards and green vertical lines */
.options-grid article{
  min-height: 0 !important;
  height: auto !important;
  padding: 32px 38px !important;
}
/* Pricing factors — Bigfoot green boxes */
.factors-grid div{
  background: #A7FF00 !important;
  border-color: #A7FF00 !important;
  color: #050505 !important;
}
.factors-grid div{
  font-size: 1.5rem !important;
  font-weight: 900 !important;
}