/*
Theme Name: BestFishingReviews Child
Theme URI: https://bestfishingreviews.com
Description: Divi child theme for Best Fishing Reviews. Section partials live in /includes and are auto-loaded on every page — no WPCode required. Edit a file in /includes and its [shortcode] goes live.
Author: Sage + Donnie
Template: Divi
Version: 1.0.5
*/

/* prevent 100vw full-bleed sections from creating a horizontal scrollbar */
html{overflow-x:hidden;}

/* Zero Divi's default section/row/column padding around our page sections so each
   BFR section controls its own spacing (drop the shortcode into a Code module). */
.et_pb_section:has(.bfr-hero), .et_pb_section:has(.bfr-catsec),
.et_pb_section:has(.bfr-reviews-sec), .et_pb_section:has(.bfr-articles-sec),
.et_pb_section:has(.bfr-deals-sec), .et_pb_section:has(.bfr-intro-sec), .et_pb_section:has(.bfr-starthere-sec){
	padding-top:0!important;padding-bottom:0!important;
}
.et_pb_row:has(.bfr-hero), .et_pb_row:has(.bfr-catsec),
.et_pb_row:has(.bfr-reviews-sec), .et_pb_row:has(.bfr-articles-sec),
.et_pb_row:has(.bfr-deals-sec), .et_pb_row:has(.bfr-intro-sec), .et_pb_row:has(.bfr-starthere-sec){
	padding:0!important;margin-top:0!important;margin-bottom:0!important;width:100%!important;max-width:100%!important;
}
.et_pb_column:has(.bfr-hero), .et_pb_column:has(.bfr-catsec),
.et_pb_column:has(.bfr-reviews-sec), .et_pb_column:has(.bfr-articles-sec),
.et_pb_column:has(.bfr-deals-sec), .et_pb_column:has(.bfr-intro-sec), .et_pb_column:has(.bfr-starthere-sec){
	padding:0!important;
}

/* ============================================================
   Best Fishing Reviews — brand palette. Single source of truth.
   Change here and the whole site re-tints. Use as var(--bfr-*).
   ============================================================ */
:root{
	--bfr-navy-900:#0A1A2F;  /* hero base, footer, dark sections */
	--bfr-navy-950:#03121D;  /* announcement bar, category strip */
	--bfr-navy-800:#12283F;  /* card surfaces on dark */
	--bfr-blue:#1C6EE4;      /* accent headings, links, badges */
	--bfr-blue-600:#1559c0;  /* link hover */
	--bfr-orange:#F97B04;    /* CTAs / buy buttons */
	--bfr-orange-600:#e06d00;/* CTA hover */
	--bfr-gold:#F5A623;      /* rating stars */
	--bfr-green:#16a34a;     /* pros */
	--bfr-red:#dc2626;       /* cons */
	--bfr-bg:#F8F9FB;        /* page background */
	--bfr-ink:#0F1B2D;       /* primary body text */
	--bfr-ink-2:#4b5563;     /* secondary text */
	--bfr-line:#e5e8ee;      /* hairline borders */
	--bfr-white:#ffffff;

	--bfr-radius:12px;
	--bfr-radius-sm:8px;
	--bfr-shadow:0 6px 24px rgba(10,26,47,.08);
	--bfr-shadow-hover:0 14px 40px rgba(10,26,47,.16);
	--bfr-maxw:1200px;

	--bfr-font-cond:'Oswald','Inter',sans-serif;   /* condensed display */
	--bfr-font-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}

/* ---- shared layout + typography helpers (used by every section) ---- */
.bfr-wrap{max-width:var(--bfr-maxw);margin:0 auto;padding:0 24px;}
.bfr-eyebrow{font-family:var(--bfr-font-cond);text-transform:uppercase;letter-spacing:.14em;
	font-weight:600;font-size:13px;color:var(--bfr-blue);margin:0 0 6px;}
.bfr-h2{font-family:var(--bfr-font-body);font-weight:800;font-size:clamp(26px,3.4vw,36px);
	line-height:1.1;color:var(--bfr-ink);margin:0;}

/* SITE-WIDE contrast rule: our section headings follow their container's text
   color instead of Divi's default blue h1 — so nothing ever renders blue-on-blue.
   Dark sections set color:#fff (→ white headings); light sections default to ink.
   Coloured accents (e.g. hero "Fishing Gear") are <span>s and keep their own color. */
.bfr h1,.bfr h2,.bfr h3,.bfr h4,.bfr h5,.bfr h6{color:inherit!important;}
.bfr-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;}
.bfr-viewall{font-family:var(--bfr-font-cond);text-transform:uppercase;letter-spacing:.08em;font-weight:600;
	font-size:14px;color:var(--bfr-blue);text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;}
.bfr-viewall:hover{color:var(--bfr-blue-600);}
.bfr-viewall svg{width:16px;height:16px;}

/* ---- buttons (shared) ---- */
.bfr-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--bfr-font-cond);text-transform:uppercase;
	letter-spacing:.06em;font-weight:600;font-size:15px;padding:14px 26px;border-radius:var(--bfr-radius-sm);
	text-decoration:none;border:2px solid transparent;cursor:pointer;
	transition:transform .12s ease,background .15s ease,box-shadow .15s ease;}
.bfr-btn svg{width:18px;height:18px;}
.bfr-btn--orange{background:var(--bfr-orange);color:#fff;}
.bfr-btn--orange:hover{background:var(--bfr-orange-600);color:#fff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(249,123,4,.35);}
.bfr-btn--outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55);}
.bfr-btn--outline-light:hover{background:rgba(255,255,255,.1);color:#fff;}
.bfr-btn--lg{padding:16px 30px;font-size:16px;}

/* ---- star rating (fractional via gradient clip) ---- */
.bfr-stars{--pct:calc(var(--rating,5)/5*100%);display:inline-block;line-height:1;font-size:16px;
	font-family:Arial,sans-serif;letter-spacing:1px;}
.bfr-stars::before{content:"\2605\2605\2605\2605\2605";
	background:linear-gradient(90deg,var(--bfr-gold) var(--pct),#d8dee9 var(--pct));
	-webkit-background-clip:text;background-clip:text;color:transparent;}
.bfr-stars--lg{font-size:22px;}
.bfr-rating-num{font-weight:700;color:var(--bfr-ink);font-size:14px;}

/* base type: let brand fonts win over Divi defaults where our sections live */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}

/* ---- WP-PageNavi (Divi blog module pagination) → match our .bfr-pager pills ---- */
.wp-pagenavi{display:flex!important;gap:8px;justify-content:center;flex-wrap:wrap;align-items:center;margin-top:34px;clear:both;}
.wp-pagenavi a,.wp-pagenavi span{min-width:40px;height:40px;display:flex!important;align-items:center;justify-content:center;
	border:1px solid var(--bfr-line)!important;background:#fff!important;border-radius:8px!important;padding:0 10px!important;margin:0!important;
	text-decoration:none!important;color:var(--bfr-ink)!important;font-weight:600!important;font-size:14px!important;line-height:1!important;}
.wp-pagenavi a:hover{border-color:var(--bfr-blue)!important;color:var(--bfr-blue)!important;}
.wp-pagenavi span.current{background:var(--bfr-blue)!important;color:#fff!important;border-color:var(--bfr-blue)!important;}
.wp-pagenavi span.pages{border:none!important;background:transparent!important;color:var(--bfr-ink-2)!important;font-weight:500!important;padding:0 6px!important;}
.wp-pagenavi span.extend{border:none!important;background:transparent!important;min-width:20px;color:var(--bfr-ink-2)!important;}

/* ============================================================
   PRODUCT REVIEW "money page" (CPT `products` + single-products.php)
   ============================================================ */
.bfr-prodpage{background:var(--bfr-bg);padding:26px 0 64px;}
.bfr-crumb{font-size:13px;color:var(--bfr-ink-2);margin-bottom:18px;}
.bfr-crumb a{color:var(--bfr-ink-2);text-decoration:none;}
.bfr-crumb a:hover{color:var(--bfr-blue);}
.bfr-crumb .sep{margin:0 8px;color:#b7c0cc;}
.bfr-review .bfr-badge{position:static;display:inline-block;margin-bottom:12px;}
.bfr-prodhero{display:grid;grid-template-columns:1fr 340px;gap:30px;align-items:center;background:#fff;border:1px solid var(--bfr-line);border-radius:var(--bfr-radius);box-shadow:var(--bfr-shadow);padding:30px;}
.bfr-prodhero__brand{font-family:var(--bfr-font-cond);text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:var(--bfr-blue);margin-bottom:4px;}
.bfr-prodhero__title{font-weight:800;font-size:clamp(24px,3vw,32px);line-height:1.1;color:var(--bfr-ink)!important;margin:0 0 8px;}
.bfr-prodhero__tag{font-size:16px;color:var(--bfr-ink-2);margin:0 0 14px;}
.bfr-prodhero__rate{display:flex;align-items:center;gap:8px;margin-bottom:14px;}
.bfr-prodhero__outof{color:var(--bfr-ink-2);font-size:13px;}
.bfr-featurelist{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:10px;}
.bfr-featurelist li{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--bfr-ink);}
.bfr-featurelist svg{color:var(--bfr-blue);width:18px;height:18px;flex:0 0 auto;margin-top:2px;}
.bfr-prodhero__media{display:flex;align-items:center;justify-content:center;}
.bfr-prodhero__media img{max-width:100%;max-height:320px;object-fit:contain;}
.bfr-prodhero__media .bfr-ph{width:100%;aspect-ratio:1;border-radius:var(--bfr-radius);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(circle at 50% 35%,#eef4fd,#d7e1f0);color:var(--bfr-blue);}
.bfr-prodhero__media .bfr-ph svg{width:54px;height:54px;}
.bfr-prodhero__media .bfr-ph small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7f8da0;font-weight:600;}
.bfr-specstrip{background:var(--bfr-navy-900);color:#fff;border-radius:var(--bfr-radius-sm);display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:22px 0;overflow:hidden;}
.bfr-specstrip__item{padding:16px;border-right:1px solid rgba(255,255,255,.1);}
.bfr-specstrip__k{font-size:11px;color:#9fb0c6;text-transform:uppercase;letter-spacing:.05em;}
.bfr-specstrip__v{font-size:13px;font-weight:600;margin-top:3px;}
.bfr-review-grid{display:grid;grid-template-columns:1fr 340px;gap:34px;align-items:start;margin-top:8px;}
.bfr-review-body{font-size:16px;line-height:1.7;color:var(--bfr-ink-2);margin-bottom:24px;}
.bfr-review-body h2,.bfr-review-body h3{color:var(--bfr-ink)!important;font-weight:800;margin:24px 0 10px;}
.bfr-review-body h2{font-size:22px;}.bfr-review-body h3{font-size:18px;}
.bfr-review-body p{margin:0 0 14px;}
.bfr-review-body ul,.bfr-review-body ol{margin:0 0 16px;padding-left:22px;}
.bfr-review-body li{margin-bottom:6px;}
.bfr-review-body a{color:var(--bfr-blue);}
.bfr-review-h3{font-weight:800;font-size:22px;color:var(--bfr-ink)!important;margin:8px 0 14px;}
.bfr-spectable{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--bfr-line);border-radius:var(--bfr-radius);overflow:hidden;margin-bottom:26px;}
.bfr-spectable td{padding:12px 16px;font-size:14px;border-bottom:1px solid var(--bfr-line);}
.bfr-spectable tr:last-child td{border-bottom:none;}
.bfr-spectable td:first-child{color:var(--bfr-ink-2);width:42%;}
.bfr-spectable td:last-child{font-weight:600;color:var(--bfr-ink);}
.bfr-spectable tr:nth-child(even){background:#fafbfc;}
.bfr-faq{margin-bottom:26px;}
.bfr-faq__item{background:#fff;border:1px solid var(--bfr-line);border-radius:var(--bfr-radius-sm);margin-bottom:10px;padding:2px 18px;}
.bfr-faq__item summary{font-weight:700;font-size:15px;color:var(--bfr-ink);cursor:pointer;padding:14px 0;list-style:none;}
.bfr-faq__item summary::-webkit-details-marker{display:none;}
.bfr-faq__item summary::after{content:"+";float:right;color:var(--bfr-blue);font-weight:700;}
.bfr-faq__item[open] summary::after{content:"–";}
.bfr-faq__item p{font-size:14px;color:var(--bfr-ink-2);line-height:1.6;margin:0 0 14px;}
.bfr-amzbar{background:var(--bfr-navy-900);border-radius:var(--bfr-radius);color:#fff;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.bfr-amzbar__l{display:flex;align-items:center;gap:16px;}
.bfr-amzbar__icon{width:48px;height:48px;border-radius:50%;background:#fff;color:var(--bfr-blue);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.bfr-amzbar b{display:block;font-size:16px;}
.bfr-amzbar span{font-size:13px;color:#c4d0e0;}
.bfr-review-rail{display:flex;flex-direction:column;gap:16px;position:sticky;top:20px;}
.bfr-verdict{background:#fff;border:1px solid var(--bfr-line);border-radius:var(--bfr-radius);box-shadow:var(--bfr-shadow);padding:22px;}
.bfr-verdict__label{font-family:var(--bfr-font-cond);text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:var(--bfr-ink-2);margin:0 0 8px;}
.bfr-verdict__score{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.bfr-verdict__num{font-weight:800;font-size:46px;line-height:1;color:var(--bfr-ink);}
.bfr-verdict__summary{font-size:14px;color:var(--bfr-ink-2);line-height:1.55;margin:0 0 16px;}
.bfr-ratingbars{display:flex;flex-direction:column;gap:12px;margin-bottom:18px;}
.bfr-ratingbar__row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:5px;}
.bfr-ratingbar__row b{color:var(--bfr-ink);font-weight:600;}
.bfr-ratingbar__track{height:6px;background:#eef1f6;border-radius:99px;overflow:hidden;}
.bfr-ratingbar__fill{height:100%;background:var(--bfr-blue);border-radius:99px;}
.bfr-commission{font-size:11.5px;color:#9aa4b2;text-align:center;margin:10px 0 0;}
.bfr-pc{background:#fff;border:1px solid var(--bfr-line);border-radius:var(--bfr-radius);box-shadow:var(--bfr-shadow);padding:20px;}
.bfr-pc__h{font-family:var(--bfr-font-cond);text-transform:uppercase;letter-spacing:.08em;font-size:13px;margin:0 0 12px;}
.bfr-pc--pros .bfr-pc__h{color:var(--bfr-green);}
.bfr-pc--cons .bfr-pc__h{color:var(--bfr-red);}
.bfr-pc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.bfr-pc li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--bfr-ink);}
.bfr-pc li svg{width:17px;height:17px;flex:0 0 auto;margin-top:2px;}
.bfr-pc--pros li svg{color:var(--bfr-green);}
.bfr-pc--cons li svg{color:var(--bfr-red);}
@media(max-width:980px){.bfr-prodhero,.bfr-review-grid{grid-template-columns:1fr;}.bfr-review-rail{position:static;}}

/* section-specific CSS stays inline in each /includes partial so sections are self-contained. */
