/*
 * tbf-reset.css
 * Scoped CSS reset & conflict-prevention for The Brand Fly homepage template.
 * Strictly applies inside .tbf-template-wrap to eliminate conflicts
 * with the Seomy parent theme, Bootstrap, or third-party plugin CSS.
 */

/* ── 0. Full Width Page & Container Neutralisation ─────────────────── */
body.tbf-full-page,
body.tbf-full-page #page,
body.tbf-full-page #content,
body.tbf-full-page #primary,
body.tbf-full-page main,
body.tbf-full-page article,
body.tbf-full-page .site-content,
body.tbf-full-page .entry-content,
body.tbf-full-page .entry-content-wrap,
body.tbf-full-page .post-inner {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  overflow-x: hidden;
}

/* ── 1. Root Stacking Context & Baseline Fonts ────────────────────── */
.tbf-template-wrap {
  display: block !important;
  font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  color: #14103A !important;
  background-color: #ffffff !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
  text-align: left !important;
  position: relative !important;
  width: 100% !important;
  clear: both !important;
}

/* ── 2. Box Model & Inherited Reset for All Child Elements ───────── */
.tbf-template-wrap *,
.tbf-template-wrap *::before,
.tbf-template-wrap *::after {
  box-sizing: border-box !important;
}

/* ── 3. Strict Typography Overrides ───────────────────────────────── */
.tbf-template-wrap h1,
.tbf-template-wrap h2,
.tbf-template-wrap h3,
.tbf-template-wrap h4,
.tbf-template-wrap h5,
.tbf-template-wrap h6 {
  font-family: "Bricolage Grotesque", "Plus Jakarta Sans", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #14103A !important;
  text-transform: none !important;
  border: none !important;
  background: none !important;
  box-shadow: none !important;
}

.tbf-template-wrap h1 { font-size: clamp(2.3rem, 5.4vw, 3.8rem) !important; letter-spacing: -0.035em !important; }
.tbf-template-wrap h2 { font-size: clamp(1.85rem, 3.8vw, 2.85rem) !important; }
.tbf-template-wrap h3 { font-size: clamp(1.12rem, 2vw, 1.35rem) !important; line-height: 1.25 !important; }
.tbf-template-wrap h4 { font-size: 1rem !important; }

.tbf-template-wrap p {
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: inherit;
  line-height: inherit;
}

.tbf-template-wrap a {
  color: inherit;
  text-decoration: none !important;
  box-shadow: none !important;
  border: none;
  background: none;
}

.tbf-template-wrap img {
  max-width: 100% !important;
  height: auto;
  display: block;
  border: none !important;
  border-radius: 0;
  box-shadow: none;
}

.tbf-template-wrap button {
  font-family: inherit !important;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  box-shadow: none;
  border-radius: 0;
}

.tbf-template-wrap ul,
.tbf-template-wrap ol,
.tbf-template-wrap li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.tbf-template-wrap blockquote,
.tbf-template-wrap figure {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* ── 4. Accordion Summary Marker Neutralisation ───────────────────── */
.tbf-template-wrap summary {
  list-style: none !important;
  cursor: pointer;
}
.tbf-template-wrap summary::-webkit-details-marker {
  display: none !important;
}

/* ── 5. Neutralise Bootstrap & Theme Grids inside Wrapper ─────────── */
.tbf-template-wrap .container,
.tbf-template-wrap .container-fluid,
.tbf-template-wrap .row,
.tbf-template-wrap [class*="col-"] {
  width: auto;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
  float: none;
  flex: none;
}

/* ── 6. Form Controls Reset ────────────────────────────────────────── */
.tbf-template-wrap input,
.tbf-template-wrap select,
.tbf-template-wrap textarea {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 0.95rem !important;
  color: #14103A !important;
  outline: none;
  box-shadow: none;
}

/* ── 7. Focus & Accessibility ──────────────────────────────────────── */
.tbf-template-wrap :focus-visible {
  outline: 3px solid #6A2BF5 !important;
  outline-offset: 3px !important;
  border-radius: 6px !important;
}

/* ── 8. Universal Header Clearance ─────────────────────────────────── */
.tbf-template-wrap .tbf__hero,
.tbf-template-wrap .hero,
.tbf .tbf__hero {
  padding-top: clamp(140px, 13vw, 180px) !important;
}

