/* ============================================================
   Foundation Repair — Fayetteville, NC
   SITE-WIDE STYLESHEET (deeper/bolder palette, colored backgrounds + links)
   Paste into: Appearance → Customize → Additional CSS  (GeneratePress)
   ONE identity across all site pages — never restyle a single page.
   ============================================================ */

:root{
  --fr-navy:#0f2947;        /* primary deep navy — headers, dark bands */
  --fr-navy-2:#0a1f38;      /* darker still — footer, hover */
  --fr-steel:#1b6ca8;       /* bold steel blue — links, accents */
  --fr-steel-2:#12507e;     /* link hover / darker steel */
  --fr-band:#eaf1f7;        /* soft steel tint — alternating light bands */
  --fr-band-2:#dce8f2;      /* slightly deeper tint */
  --fr-clay:#d1521a;        /* bold clay-orange — CTA / action */
  --fr-clay-2:#a83c0f;      /* clay hover */
  --fr-gold:#f0a500;        /* warm highlight for phone emphasis */
  --fr-ink:#17222e;         /* body text */
  --fr-ink-soft:#3f4c59;
  --fr-white:#ffffff;
  --fr-radius:8px;
  --fr-maxw:1150px;
  --fr-shadow:0 10px 30px rgba(10,31,56,.18);
}

/* ---------- Base ---------- */
body{
  color:var(--fr-ink);
  background:var(--fr-white);
  font-size:18px;
  line-height:1.72;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.gb-headline,h1,h2,h3{color:var(--fr-navy);line-height:1.22;font-weight:800;letter-spacing:-.01em;}
h1{font-size:2.35rem;margin:.1em 0 .55em;}
h2{font-size:1.65rem;margin:1.5em 0 .5em;}
h3{font-size:1.22rem;margin:1.3em 0 .4em;}
p{margin:0 0 1.1em;}

/* Colored links — bold steel, clay on hover */
.entry-content a{color:var(--fr-steel);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;font-weight:600;}
.entry-content a:hover{color:var(--fr-clay);}

.site-content .container,.inside-article{max-width:var(--fr-maxw);}
.wp-block-list{margin:0 0 1.2em 1.2em;}
.wp-block-list li{margin-bottom:.55em;}

/* ===== SECTION CONTAINERS — alternating colored backgrounds ===== */
.gb-container{margin:0;padding-block:2.4rem;}
.gb-container > *{max-width:var(--fr-maxw);margin-left:auto;margin-right:auto;padding-inline:20px;}

.band-light{background:var(--fr-white);}
.band-tint{background:var(--fr-band);}
.band-tint-2{background:var(--fr-band-2);}
.band-dark{background:var(--fr-navy);}
.band-dark .gb-headline,.band-dark h2,.band-dark h3{color:#fff;}
.band-dark p{color:#dce7f2;}
.band-dark a{color:#8fd0ff;}
.band-dark a:hover{color:#fff;}

/* ===== HERO CTA (top of every page) ===== */
.fr-hero{
  background:linear-gradient(150deg,var(--fr-navy) 0%,var(--fr-navy-2) 100%);
  color:#fff;padding:3rem 1.5rem 3.2rem;border-bottom:5px solid var(--fr-clay);
}
.fr-hero .gb-headline,.fr-hero h1{color:#fff;margin-top:0;}
.fr-hero p{color:#e6eef7;font-size:1.12rem;max-width:760px;}
.fr-hero .fr-phone-line{font-size:1.25rem;font-weight:800;color:#fff;margin:.2em 0 1em;}
.fr-hero .fr-phone-line a{color:var(--fr-gold);text-decoration:none;}
.fr-hero .fr-phone-line a:hover{color:#fff;}

/* ===== CTA BANDS + BUTTONS ===== */
.cta-band{
  background:linear-gradient(135deg,var(--fr-clay) 0%,var(--fr-clay-2) 100%);
  color:#fff;padding:2.6rem 1.5rem;box-shadow:var(--fr-shadow);
}
.cta-band .gb-headline,.cta-band h2{color:#fff;margin-top:0;}
.cta-band p{color:#fff6f0;}
.cta-band a{color:#fff;}

.cta-band-navy{
  background:linear-gradient(135deg,var(--fr-navy) 0%,var(--fr-navy-2) 100%);
  color:#fff;padding:2.6rem 1.5rem;box-shadow:var(--fr-shadow);
}
.cta-band-navy .gb-headline,.cta-band-navy h2{color:#fff;margin-top:0;}
.cta-band-navy p{color:#dce7f2;}

.gb-buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.3rem;}
.gb-button{
  display:inline-flex;align-items:center;justify-content:center;
  padding:1rem 1.9rem;border-radius:var(--fr-radius);
  font-weight:800;font-size:1.05rem;text-decoration:none;line-height:1.1;
  transition:transform .05s ease, background .15s ease;
}
.gb-button:active{transform:translateY(1px);}
.gb-button.btn-phone{background:var(--fr-gold);color:var(--fr-navy);}
.gb-button.btn-phone:hover{background:#ffce4d;color:var(--fr-navy);}
.gb-button.btn-inspect{background:#fff;color:var(--fr-clay-2);border:2px solid #fff;}
.gb-button.btn-inspect:hover{background:transparent;color:#fff;}
.cta-band .gb-button.btn-phone{background:var(--fr-navy);color:#fff;}
.cta-band .gb-button.btn-phone:hover{background:var(--fr-navy-2);color:#fff;}
.fr-hero .gb-button.btn-phone{background:var(--fr-clay);color:#fff;}
.fr-hero .gb-button.btn-phone:hover{background:var(--fr-clay-2);}
.fr-hero .gb-button.btn-inspect{background:#fff;color:var(--fr-navy);border-color:#fff;}
.fr-hero .gb-button.btn-inspect:hover{background:rgba(255,255,255,.12);color:#fff;}

/* ===== EMBEDDED CONTACT FORM WRAPPER (WPForms) ===== */
.fr-form-wrap{
  background:#fff;color:var(--fr-ink);border-radius:var(--fr-radius);
  padding:1.6rem 1.6rem .4rem;margin-top:1.4rem;box-shadow:var(--fr-shadow);max-width:640px;
}
.fr-form-wrap .wpforms-field-label{color:var(--fr-navy);font-weight:700;}
.fr-form-wrap .wpforms-submit{
  background:var(--fr-clay) !important;color:#fff !important;border:0 !important;
  border-radius:var(--fr-radius) !important;padding:.9rem 1.8rem !important;
  font-weight:800 !important;font-size:1.05rem !important;
}
.fr-form-wrap .wpforms-submit:hover{background:var(--fr-clay-2) !important;}

/* ===== IMAGES ===== */
.fr-figure{margin:1.6rem auto;max-width:var(--fr-maxw);}
.fr-figure img{width:100%;height:auto;border-radius:var(--fr-radius);box-shadow:var(--fr-shadow);display:block;}
.fr-figure figcaption{font-size:.9rem;color:var(--fr-ink-soft);margin-top:.5rem;text-align:center;}
.image-placeholder{
  background:repeating-linear-gradient(45deg,var(--fr-band),var(--fr-band) 14px,var(--fr-band-2) 14px,var(--fr-band-2) 28px);
  border:2px dashed var(--fr-steel);border-radius:var(--fr-radius);
  color:var(--fr-steel-2);font-weight:600;padding:1.4rem;text-align:center;
  margin:1.6rem auto;max-width:var(--fr-maxw);
}

/* ===== HEADER / NAV ===== */
.site-header{background:var(--fr-navy);border-bottom:3px solid var(--fr-clay);}
.main-title a,.site-title a{color:#fff !important;font-weight:800;}
.main-navigation,.main-navigation ul li a{background:var(--fr-navy);color:#fff;}
.main-navigation .current-menu-item a{color:#fff;box-shadow:inset 0 -3px 0 var(--fr-clay);}
.main-navigation a:hover{color:#fff;background:var(--fr-navy-2);}
.header-phone{color:#fff;font-weight:800;font-size:1.15rem;}
.header-phone a{color:var(--fr-gold);text-decoration:none;}
.header-phone a:hover{color:#fff;}

/* Sticky mobile call bar */
.fr-callbar{display:none;}
@media (max-width:768px){
  .fr-callbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:999;background:var(--fr-clay);}
  .fr-callbar a{flex:1;text-align:center;padding:.9rem;color:#fff;font-weight:800;text-decoration:none;font-size:1.05rem;}
  .fr-callbar a+a{border-left:1px solid rgba(255,255,255,.35);}
  body{padding-bottom:3.4rem;}
}

/* ===== FOOTER ===== */
.site-footer,.footer-widgets{background:var(--fr-navy-2);color:#c3d2e2;}
.site-footer a,.footer-widgets a{color:#fff;}
.site-info{background:#07172b;color:#8ea3ba;}

/* ===== RESPONSIVE ===== */
@media (max-width:600px){
  body{font-size:17px;}
  h1{font-size:1.85rem;}
  h2{font-size:1.4rem;}
  .gb-buttons{flex-direction:column;}
  .gb-button{width:100%;}
  .gb-container{padding-block:1.9rem;}
}

/* Referral disclosure and intentionally inactive form */
.fr-referral-disclosure{
  max-width:1200px;margin:1rem auto;padding:1rem 1.25rem;
  border-left:4px solid var(--fr-clay);background:#fff8f3;
  color:var(--fr-navy);font-size:.95rem;line-height:1.55;
}
.fr-form-placeholder{
  margin-top:1rem;padding:1.25rem;border:2px dashed rgba(255,255,255,.7);
  border-radius:8px;text-align:center;
}

/* ===== APPROVED SITE POLISH — v2.1 ===== */
.fr-referral-disclosure,
.page .entry-header,
.fr-hero .fr-phone-line,
.image-placeholder,
.fr-form-placeholder{
  display:none !important;
}

.main-navigation .main-nav ul li a,
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items{
  color:#fff !important;
}
.main-navigation .main-nav ul li.current-menu-item > a,
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li a:focus{
  color:#ffb703 !important;
}
.main-navigation .main-nav ul ul{
  background-color:#102a4a !important;
}
.main-navigation .main-nav ul ul li a{
  color:#fff !important;
}
.main-navigation .main-nav ul ul li a:hover{
  background-color:#1d4f7a !important;
  color:#fff !important;
}

@media (min-width:769px){
  .site-header .inside-header{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }
  .site-header .site-branding,
  .site-header .site-logo{
    display:none !important;
  }
  .site-header .main-navigation{
    float:none !important;
    width:auto !important;
    margin:0 !important;
  }
  .site-header .main-navigation .inside-navigation,
  .site-header .main-navigation .main-nav > ul{
    display:flex !important;
    justify-content:center !important;
  }
}

/* Pricing guide */
.fr-price-notice{
  max-width:var(--fr-maxw);margin:0 auto 1.5rem;padding:1.1rem 1.25rem;
  border-left:5px solid var(--fr-clay);background:#fff4eb;
  color:var(--fr-navy);line-height:1.6;
}
.fr-price-notice.neutral{
  border-left-color:var(--fr-steel);background:var(--fr-band);
}
.fr-pricing-table-wrap{
  width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.fr-pricing-table{
  width:100%;min-width:760px;border-collapse:collapse;background:#fff;
}
.fr-pricing-table th,
.fr-pricing-table td{
  padding:.9rem 1rem;border:1px solid #c8d4df;text-align:left;vertical-align:top;
}
.fr-pricing-table th{
  background:var(--fr-navy);color:#fff;font-weight:800;
}
.fr-pricing-table tbody tr:nth-child(even){
  background:var(--fr-band);
}

.fr-figure{
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
}
.fr-figure img,
.fr-figure svg{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
}

.footer-widgets .inside-footer-widgets{
  display:block !important;
}
.footer-widgets .footer-widget-1{
  width:100% !important;
  text-align:center !important;
}
.footer-links{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:12px 28px;
}
.footer-links a{
  color:#fff !important;
  font-weight:600;
  text-decoration:none;
}
.footer-links a:hover,
.footer-links a:focus{
  color:#ffb703 !important;
  text-decoration:underline;
}

@media (max-width:768px){
  .site-header .inside-header{
    display:block !important;
  }
  .site-header .main-navigation{
    width:100% !important;
    margin:0 !important;
  }
  .site-header .main-navigation .main-nav > ul{
    display:none !important;
  }
  .site-header .main-navigation.toggled .main-nav > ul{
    display:block !important;
  }
  .site-header .main-navigation .menu-toggle{
    display:block !important;
    width:100% !important;
    color:#fff !important;
  }
  .mobile-menu-control-wrapper{
    display:none !important;
  }
}
