/*
Theme Name: BMR Cinematic
Theme URI: https://buymyrecipes.com
Author: BuyMyRecipes
Author URI: https://buymyrecipes.com
Description: Light-first tomato and cream redesign for the BuyMyRecipes marketplace. A child theme of Reign: it reskins the storefront, homepage, WooCommerce account area, and WCFM seller dashboard while inheriting all Reign / WooCommerce / WCFM / BuddyPress template compatibility from the parent. Design source of truth: the owner-approved Tomato Cream mockup (cream and white first, tomato red primary, basil accents, one wine sellers panel). This theme contains NO pricing logic, NO gateway code, NO commission code, and NO download-permission code: the Free-or-$3+ rule stays in the existing Code Snippets snippet, and money, downloads, and mail stay in WooCommerce / WCFM / WooPayments.
Version: 0.2.12
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bmr-cinematic
Template: reign-theme
Tags: woocommerce, multivendor, food, dark
*/

/* ==========================================================================
   BMR Cinematic design tokens
   Canonical palette (owner approved 2026-11-05, Tomato Cream mockup):
   cream #FFF7EC and white carry the page; tomato red #D63A1F is the primary
   selling color (buttons, prices, the Fresh Off the Stove band); basil
   #2E7D43 accents and Free badges; gold #FFC233 highlights; the ONLY dark
   section is the sellers panel in deep tomato wine #571C10. Earlier dark
   palettes (warm brown v0.1.x, basil green v0.1.2-0.1.3, burgundy mockup)
   were all rejected by the owner; light-first is the rule now.
   ========================================================================== */
:root{
  --black:#221016; --ink:#3a0d16; --coal:#571C10; --line-dark:#7a3b2a;
  --orange:#FF8A00; --orange-2:#FFB000; --orange-deep:#e85d00; --red:#e63e12; --green:#1d7a3a;
  --cream:#FFF7EC; --paper:#fffdf8; --sand:#fbeed3; --tan:#f3e3c2;
  --text:#221016; --muted:#71545E; --muted-light:#a08a90;
  /* Lifted warm surfaces + readable secondary text for DARK sections, and
     appetite accents (tomato / basil / gold) used as tints and icon color. */
  --surface-dark:#571C10; --surface-dark-2:#6d2716; --line-warm:#8a4630;
  --muted-dark:#f0d5c9;
  --tomato:#D63A1F; --tomato-deep:#B22A12; --basil:#2E7D43; --gold:#ffc233;
  --radius:18px; --radius-lg:26px;
  --shadow:0 18px 40px rgba(60,16,4,.18);
  --shadow-card:0 10px 28px rgba(60,16,4,.12);
}

/* NOTE: base resets, typography, header, and footer chrome come from the
   Reign parent on the live site (the audit confirmed there are no Elementor
   Theme Builder header/footer templates; Reign renders them). The rules below
   restyle the BMR homepage sections, WooCommerce loop cards, and shared
   components inside the parent's page shell. The demo's standalone
   header/footer CSS was intentionally not ported as templates; if a custom
   header is ever wanted, build header.php on staging from the demo markup
   and reuse the .bmr- class names below. */

.bmr-front{font-family:"Manrope",system-ui,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}
.bmr-front img{display:block;max-width:100%}
/* Headings carry an explicit color: without one, the parent theme's dark
   blue-grey heading color wins over inheritance and turns invisible on the
   dark sections (the "black part makes it hard to see" bug). Dark contexts
   below override this with cream. */
.bmr-front h1,.bmr-front h2,.bmr-front h3{font-family:"Archivo",sans-serif;margin:0;line-height:1.02;letter-spacing:-.01em;color:var(--text)}
.bmr-front .wrap{width:min(1240px,100% - 40px);margin-inline:auto}
.bmr-front .marker{font-family:"Permanent Marker",cursive;font-weight:400}
.bmr-front section{padding:64px 0}

/* ---------- Buttons ---------- */
.bmr-front .btn{display:inline-flex;align-items:center;gap:9px;border-radius:999px;font-weight:800;font-size:15px;padding:13px 24px;border:2px solid transparent;transition:transform .15s ease, background .15s ease;text-decoration:none}
.bmr-front .btn:active{transform:scale(.97)}
.bmr-front .btn-orange{background:linear-gradient(135deg,#f0562f,var(--tomato) 50%,var(--tomato-deep));color:#fff;box-shadow:0 12px 26px rgba(214,58,31,.4)}
.bmr-front .btn-orange:hover{background:linear-gradient(135deg,#ff7a3c,#f0562f 50%,var(--tomato));color:#fff}
.bmr-front .btn-outline{border-color:var(--tomato);color:var(--tomato);background:transparent}
.bmr-front .btn-outline:hover{background:rgba(214,58,31,.08);color:var(--tomato-deep)}
.bmr-front .btn-dark{background:var(--coal);color:#fff}
.bmr-front .btn-dark:hover{background:var(--ink);color:#fff}
.bmr-front .btn-sm{padding:10px 18px;font-size:14px}

/* ---------- Hero ---------- */
.bmr-hero{background:radial-gradient(1100px 520px at 85% -10%,rgba(255,176,0,.30),transparent 60%),radial-gradient(760px 420px at 0% 110%,rgba(214,58,31,.12),transparent 55%),linear-gradient(180deg,#fffaf0,var(--cream));color:var(--text);overflow:hidden;border-radius:0}
.bmr-hero h2,.bmr-hero h3{color:var(--text)}
.bmr-hero .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;padding:52px 0 0}
.bmr-hero .eyebrow{letter-spacing:.42em;font-size:12px;font-weight:800;color:var(--tomato);text-transform:uppercase}
.bmr-hero h1{font-size:clamp(38px,5.2vw,64px);font-weight:900;text-transform:uppercase;margin-top:14px;color:var(--text)}
.bmr-hero h1 .recipes{display:block;font-family:"Permanent Marker";font-weight:400;font-size:clamp(58px,8.5vw,108px);line-height:.95;background:linear-gradient(92deg,#ff7a3c,var(--tomato) 55%,var(--tomato-deep));-webkit-background-clip:text;background-clip:text;color:transparent;transform:rotate(-1.5deg);transform-origin:left center;text-transform:none;letter-spacing:0}
.bmr-hero .ribbon{display:inline-block;margin-top:16px;background:linear-gradient(90deg,var(--gold),var(--orange) 35%,var(--tomato) 80%);color:#fff;font-family:"Archivo";font-weight:900;font-style:italic;font-size:clamp(15px,2vw,20px);padding:9px 18px;transform:rotate(-1deg);border-radius:4px;box-shadow:0 10px 24px rgba(255,130,0,.5)}
.bmr-hero p.lede{color:#5f4750;font-size:17.5px;line-height:1.55;max-width:480px;margin:20px 0 26px;font-weight:500}
.bmr-hero .hero-ctas{display:flex;gap:14px;flex-wrap:wrap}
.bmr-hero .hero-ctas svg{width:19px;height:19px}
.bmr-hero .hero-stats{display:flex;gap:28px;margin-top:30px;flex-wrap:wrap}
.bmr-hero .hero-stats div b{font-family:"Archivo";font-size:21px;display:block}
.bmr-hero .hero-stats div span{font-size:12.5px;color:var(--muted);font-weight:600}
.bmr-hero .hero-media{position:relative}
.bmr-hero .hero-media::before{content:"";position:absolute;inset:4% -5% -5% 4%;background:radial-gradient(closest-side,rgba(255,150,20,.5),rgba(232,72,31,.2) 55%,transparent 76%);filter:blur(30px);border-radius:50%;z-index:0}
.bmr-hero .hero-media .frame{position:relative;z-index:1;border-radius:32px;overflow:hidden;border:6px solid rgba(255,176,0,.32);box-shadow:0 40px 80px rgba(0,0,0,.55);transform:rotate(1.2deg)}
.bmr-hero .hero-media .frame img{width:100%;height:480px;object-fit:cover}
.bmr-hero .float-card{position:absolute;z-index:2;background:#fff;color:var(--text);border-radius:16px;box-shadow:var(--shadow);padding:12px 16px;display:flex;gap:11px;align-items:center}
.bmr-hero .float-card .ic{width:38px;height:38px;border-radius:11px;background:var(--sand);display:grid;place-items:center;flex-shrink:0}
.bmr-hero .float-card .ic svg{width:20px;height:20px;stroke:var(--orange-deep)}
.bmr-hero .float-card b{font-size:14px;display:block;line-height:1.2}
.bmr-hero .float-card span{font-size:12px;color:var(--muted);font-weight:600}
.bmr-hero .fc-1{left:-26px;top:36px}
.bmr-hero .fc-2{right:-14px;bottom:44px}
.bmr-hero .trust{border-top:1px solid var(--tan);margin-top:46px}
.bmr-hero .trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:22px 0 26px}
.bmr-hero .trust-item{display:flex;gap:13px;align-items:center}
.bmr-hero .trust-item svg{width:32px;height:32px;stroke:var(--tomato);flex-shrink:0}
.bmr-hero .trust-item b{display:block;font-size:15px;font-family:"Archivo";color:var(--text)}
.bmr-hero .trust-item span{font-size:13px;color:var(--muted);font-weight:600}

/* ---------- Section heads ---------- */
.bmr-front .sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.bmr-front .sec-head h2{font-size:clamp(27px,3.4vw,38px);font-weight:900}
.bmr-front .sec-head h2 .u{box-shadow:inset 0 -10px 0 rgba(255,176,0,.55)}
.bmr-front .sec-head p{color:var(--muted);font-weight:600;margin:8px 0 0;font-size:15.5px}
.bmr-front .view-all{font-weight:800;font-size:15px;color:var(--orange-deep);display:inline-flex;gap:7px;align-items:center;white-space:nowrap;transition:gap .15s ease;text-decoration:none}
.bmr-front .view-all:hover{gap:11px}

/* ---------- Categories ---------- */
.bmr-cats{background:var(--cream)}
.bmr-cats .cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.bmr-cats .cat-card{position:relative;display:block;border-radius:var(--radius);overflow:hidden;height:132px}
.bmr-cats .cat-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease;filter:saturate(1.14)}
.bmr-cats .cat-card:hover img{transform:scale(1.07)}
.bmr-cats .cat-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(24,4,2,.78))}
/* Appetite accent bar on each tile label, cycling the food palette
   (orange / tomato / basil / gold) so the shelf feels like a food site
   without turning into a rainbow. */
.bmr-cats .cat-card span{position:absolute;left:16px;bottom:13px;z-index:2;color:#fff;font-family:"Archivo";font-weight:800;font-size:17.5px;padding-left:14px;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.bmr-cats .cat-card span::before{content:"";position:absolute;left:0;top:1px;bottom:1px;width:5px;border-radius:3px;background:var(--orange)}
.bmr-cats .cat-card:nth-child(4n+2) span::before{background:var(--tomato)}
.bmr-cats .cat-card:nth-child(4n+3) span::before{background:var(--basil)}
.bmr-cats .cat-card:nth-child(4n) span::before{background:var(--gold)}

/* ---------- Dark band ---------- */
.bmr-dark-band{background:radial-gradient(900px 420px at 82% -10%,rgba(255,176,0,.25),transparent 60%),linear-gradient(165deg,#e8491f,#c22e12 75%);color:var(--cream)}
.bmr-dark-band h2,.bmr-dark-band h3{color:var(--cream)}
.bmr-dark-band .sec-head p{color:#ffe3d6}
.bmr-dark-band .view-all{color:#ffd9a8}
.bmr-dark-band .flame{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--orange),var(--tomato));vertical-align:-9px;margin-right:10px;box-shadow:0 6px 16px rgba(255,110,0,.4)}
.bmr-dark-band .flame svg{width:22px;height:22px;stroke:#fff}

/* ---------- Recipe cards (custom loop on the homepage) ---------- */
.bmr-front .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.bmr-front .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.bmr-card{position:relative;background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column;border:1px solid #f0e3cb}
.bmr-dark-band .bmr-card{background:#fff;border-color:#f3d9c8;color:var(--text);box-shadow:0 14px 30px rgba(90,10,0,.3)}
.bmr-card .thumb{position:relative;display:block;height:172px;overflow:hidden}
.bmr-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.bmr-card:hover .thumb img{transform:scale(1.06)}
.bmr-card .badge{position:absolute;left:12px;top:12px;background:linear-gradient(135deg,var(--orange),var(--orange-deep));color:#fff;font-size:11.5px;font-weight:800;padding:5px 11px;border-radius:999px;letter-spacing:.02em;z-index:2;box-shadow:0 4px 12px rgba(0,0,0,.28)}
.bmr-card .badge.free{background:linear-gradient(135deg,#37b45c,var(--green))}
.bmr-card .body{padding:16px 17px 17px;display:flex;flex-direction:column;gap:7px;flex:1}
.bmr-card h3{font-size:17.5px;font-weight:800;line-height:1.18}
.bmr-card h3 a{text-decoration:none;color:inherit}
.bmr-card h3 a:hover{color:var(--orange-deep)}
.bmr-dark-band .bmr-card h3,.bmr-dark-band .bmr-card h3 a{color:var(--text)}
.bmr-dark-band .bmr-card h3 a:hover{color:var(--tomato)}
.bmr-card .byline{font-size:13.5px;color:var(--muted);font-weight:600}
.bmr-dark-band .bmr-card .byline{color:var(--muted)}
.bmr-card .byline b{color:var(--text)}
.bmr-dark-band .bmr-card .byline b{color:var(--text)}
.bmr-card .price-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px;gap:10px}
.bmr-card .price{font-family:"Archivo";font-weight:900;font-size:21px;color:var(--tomato)}
.bmr-dark-band .bmr-card .price{color:var(--tomato)}
.bmr-card .price del{font-size:14px;color:var(--muted);font-weight:700;margin-right:6px}
.bmr-dark-band .bmr-card .price del{color:var(--muted)}
.bmr-card .price ins{text-decoration:none}
.bmr-card .add-btn{border:0;background:var(--ink);color:#fff;font-weight:800;font-size:13.5px;padding:10px 15px;border-radius:999px;display:inline-flex;gap:7px;align-items:center;text-decoration:none}
.bmr-card .add-btn:hover{background:var(--tomato);color:#fff}
.bmr-card .add-btn.added{background:var(--green)}
/* On dark cards the near-black button disappears into the card; give it
   the warm orange gradient so it reads as the action it is. */
.bmr-dark-band .bmr-card .add-btn{background:linear-gradient(135deg,#f0562f,var(--tomato) 50%,var(--tomato-deep));color:#fff;box-shadow:0 8px 18px rgba(178,42,18,.35)}
.bmr-dark-band .bmr-card .add-btn:hover{background:linear-gradient(135deg,#ff7a3c,#f0562f 50%,var(--tomato));color:#fff}
.bmr-dark-band .bmr-card .add-btn.added{background:linear-gradient(135deg,#37b45c,var(--green))}
/* Deliberately no star-rating styles in the custom card: ratings and review
   counts are never rendered by this theme unless WooCommerce itself outputs
   real review data in its own templates. */

/* ---------- WooCommerce loop restyle (marketplace grid via [products]) --- */
.bmr-wc-grid .woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0;padding:0}
.bmr-wc-grid .woocommerce ul.products::before,.bmr-wc-grid .woocommerce ul.products::after{display:none}
.bmr-wc-grid .woocommerce ul.products li.product{float:none;width:auto;margin:0;background:#fff;border:1px solid #f0e3cb;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column;padding-bottom:17px}
.bmr-wc-grid .woocommerce ul.products li.product img{margin:0 0 14px;height:172px;object-fit:cover;width:100%}
.bmr-wc-grid .woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:"Archivo";font-size:17.5px;font-weight:800;padding:0 17px;line-height:1.18}
.bmr-wc-grid .woocommerce ul.products li.product .price{font-family:"Archivo";font-weight:900;font-size:21px;color:var(--tomato);padding:0 17px;margin-top:auto}
/* v0.2.2: the homepage is not a WooCommerce context, so css/woocommerce.css
   is not enqueued there and the v0.2.1 override never reaches this grid.
   The Reign parent's navy loop price wins without !important; settle it. */
.bmr-wc-grid .woocommerce ul.products li.product .price,
.bmr-wc-grid .woocommerce ul.products li.product .price .amount{color:var(--tomato) !important}
/* v0.2.3 card fixes (owner review on mobile): the parent loop hides the
   Add to Cart button until hover, which means no button at all on phones;
   force it visible and static. The WCFM sold-by line (store name + empty
   stars) overflows the card on mobile; wrap it under the title, keep the
   store name, and hide the star row inside loop cards only (a product with
   zero reviews should not wear five empty stars). */
.bmr-wc-grid .woocommerce ul.products li.product{min-width:0}
.bmr-wc-grid .woocommerce ul.products li.product .button{position:static !important;opacity:1 !important;visibility:visible !important;transform:none !important}
.bmr-wc-grid .wcfmmp_sold_by_container{display:block;width:100%;padding:0 17px;font-size:12.5px;color:var(--muted);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}
.bmr-wc-grid .wcfmmp_sold_by_container a{color:var(--tomato);font-weight:700}
.bmr-wc-grid ul.products li.product .star-rating,
.bmr-wc-grid .wcfmmp_sold_by_container [class*="rating"]{display:none !important}
@media (max-width:640px){.bmr-wc-grid .woocommerce ul.products{grid-template-columns:1fr}}
/* v0.2.4: settle the homepage card layout decisively. The parent lays the
   loop card out as a row and keeps the button as a hover-only absolute
   overlay; the v0.2.3 child rules did not govern the live front page.
   Every layout property that matters is declared here with !important,
   and functions.php now also enqueues css/woocommerce.css on the front
   page so both fix sheets reach these cards. */
.bmr-wc-grid ul.products li.product{display:flex !important;flex-direction:column !important;flex-wrap:nowrap !important;justify-content:flex-start !important}
/* Homepage rotation (v0.2.8+): cards past the first four are hidden by the
   rotation script via this class. The ID in the selector outranks the
   display:flex !important rule above. */
#marketplace ul.products>li.bmr-rot-hidden,.bmr-dark-band .grid-4>.bmr-rot-hidden{display:none !important}
.bmr-wc-grid ul.products li.product .woocommerce-LoopProduct-link{flex:0 0 auto !important;width:100% !important}
.bmr-wc-grid ul.products li.product .button.add_to_cart_button{position:static !important;visibility:visible !important;opacity:1 !important;transform:none !important;float:none !important;width:auto !important;height:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;order:2}
.bmr-wc-grid .wcfmmp_sold_by_container{order:3;width:100% !important;max-width:100% !important;margin-top:10px !important}
.bmr-wc-grid .wcfmmp_sold_by_wrapper{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-width:0}
.bmr-wc-grid .wcfmmp_sold_by_wrapper a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bmr-wc-grid .woocommerce ul.products li.product .button{margin:12px 17px 0;background:var(--ink);color:#fff;border-radius:999px;font-weight:800;font-size:13.5px;padding:10px 15px;text-align:center}
.bmr-wc-grid .woocommerce ul.products li.product .button:hover{background:var(--tomato)}
.bmr-wc-grid .woocommerce ul.products li.product .onsale{background:var(--red);border-radius:999px;min-height:0;line-height:1.4;padding:5px 11px;font-size:11.5px;top:12px;left:12px;right:auto}

/* ---------- How it works ---------- */
.bmr-front .steps{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.bmr-front .step-panel{border-radius:var(--radius-lg);padding:30px}
.bmr-front .step-panel.buyers{background:#fff;border:1px solid #f0e3cb;box-shadow:var(--shadow-card)}
.bmr-front .step-panel.sellers{background:linear-gradient(150deg,var(--surface-dark-2),var(--surface-dark));color:var(--cream)}
.bmr-front .step-panel h3{font-size:23px;font-weight:900;margin-bottom:6px}
.bmr-front .step-panel.sellers h3{color:var(--cream)}
.bmr-front .step-panel .sub{font-weight:600;font-size:14.5px;margin:0 0 22px}
.bmr-front .buyers .sub{color:var(--muted)} .bmr-front .sellers .sub{color:var(--muted-dark)}
.bmr-front .step{display:flex;gap:15px;padding:13px 0;border-top:1px dashed #eadfc6}
.bmr-front .sellers .step{border-top-color:var(--line-warm)}
.bmr-front .step:first-of-type{border-top:0}
.bmr-front .num{width:38px;height:38px;border-radius:999px;background:linear-gradient(135deg,#ffa51f,var(--orange-deep));color:#fff;font-family:"Archivo";font-weight:900;display:grid;place-items:center;flex-shrink:0;font-size:16px;box-shadow:0 6px 14px rgba(255,120,0,.35)}
.bmr-front .step b{display:block;font-size:16px;margin-bottom:3px}
.bmr-front .sellers .step b{color:var(--cream)}
.bmr-front .step p{margin:0;font-size:14.5px;line-height:1.5;font-weight:500}
.bmr-front .buyers .step p{color:var(--muted)} .bmr-front .sellers .step p{color:var(--muted-dark)}

/* ---------- Earnings calculator (illustration only, real 80/20 split) --- */
.bmr-calc{background:linear-gradient(140deg,#3fae5a 0%,#27954a 32%,var(--basil) 66%,#14532d 135%);border-radius:30px;color:#fff;padding:38px;display:grid;grid-template-columns:1.1fr .9fr;gap:38px;box-shadow:0 30px 60px rgba(20,83,45,.45)}
.bmr-calc h2{font-size:clamp(26px,3.2vw,36px);font-weight:900;color:#fff}
.bmr-calc p{font-weight:600;line-height:1.55;color:#dcf2e0;max-width:440px}
/* The 80% basis sits with the sliders, not buried under the result. */
.bmr-calc .calc-share{margin-top:16px;padding:11px 14px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.3);border-radius:12px;color:#fff;font-size:14px;line-height:1.5;max-width:440px}
.bmr-calc .calc-share b{color:#d7f5dc}
.bmr-calc .calc-est{display:inline-block;background:#fff;color:#14532d;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;padding:4px 11px;border-radius:999px;margin-bottom:12px}
.bmr-calc label{font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;display:flex;justify-content:space-between;margin:20px 0 8px}
.bmr-calc label output{font-size:16px;letter-spacing:0}
.bmr-calc input[type=range]{width:100%;accent-color:#fff;height:28px}
.bmr-calc .calc-out{background:rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.25);border-radius:22px;padding:24px;align-self:center}
.bmr-calc .calc-out .big{font-family:"Archivo";font-weight:900;font-size:clamp(38px,4.5vw,54px);line-height:1}
.bmr-calc .calc-out .per{font-weight:700;color:#d7f5dc;margin-top:4px}
.bmr-calc .calc-rows{margin-top:18px;border-top:1px solid rgba(255,255,255,.25);padding-top:14px;display:grid;gap:8px;font-weight:700;font-size:14.5px}
.bmr-calc .calc-rows div{display:flex;justify-content:space-between}
.bmr-calc .calc-note{font-size:12.5px;color:#d9f2df;font-weight:600;margin-top:14px;line-height:1.55}
/* Calculator CTA is the site gold, not the dark wine (owner request, 2026-11-05) */
.bmr-calc .btn-dark{background:var(--gold);color:var(--black);box-shadow:0 12px 26px rgba(0,0,0,.25)}
.bmr-calc .btn-dark:hover{background:#ffcf57;color:var(--black)}

/* ---------- Creators (real WCFM vendors only) ---------- */
.bmr-creator{background:#fff;border:1px solid #f0e3cb;border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:6px}
.bmr-creator .avatar{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;font-family:"Archivo";font-weight:900;font-size:20px;color:#fff;margin-bottom:6px;background:linear-gradient(135deg,var(--orange),var(--tomato))}
.bmr-creator h3{font-size:18px}
.bmr-creator .role{font-size:13.5px;color:var(--muted);font-weight:700}
.bmr-creator .stats{display:flex;gap:16px;margin-top:10px;padding-top:12px;border-top:1px dashed #eadfc6;font-size:13px;font-weight:700;color:var(--muted)}
.bmr-creator .stats b{color:var(--text);font-size:15px}

/* ---------- Blog cards (real posts) ---------- */
.bmr-blog-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);border:1px solid #f0e3cb}
.bmr-blog-card img{height:170px;width:100%;object-fit:cover}
.bmr-blog-card .body{padding:20px}
.bmr-blog-card .tag{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--orange-deep)}
.bmr-blog-card h3{font-size:18.5px;margin:8px 0 8px;line-height:1.25}
.bmr-blog-card h3 a{color:inherit;text-decoration:none}
.bmr-blog-card p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.55;font-weight:500}

/* ---------- FAQ ---------- */
.bmr-faq-sec{background:var(--cream)}
.bmr-faq{max-width:820px;margin-inline:auto}
.bmr-faq .faq-item{background:#fff;border:1px solid #f0e3cb;border-radius:16px;margin-bottom:12px;overflow:hidden}
.bmr-faq .faq-item button{width:100%;background:none;border:0;text-align:left;padding:19px 22px;font-family:"Archivo";font-weight:800;font-size:16.5px;display:flex;justify-content:space-between;gap:14px;align-items:center;color:var(--text);cursor:pointer}
.bmr-faq .faq-item button svg{width:19px;height:19px;flex-shrink:0;transition:transform .2s ease;stroke:var(--orange-deep)}
.bmr-faq .faq-item.open button svg{transform:rotate(45deg)}
.bmr-faq .faq-a{display:none;padding:0 22px 20px;color:var(--muted);font-weight:500;line-height:1.6;font-size:15px}
.bmr-faq .faq-item.open .faq-a{display:block}

/* ---------- Final CTA ---------- */
.bmr-final{background:radial-gradient(800px 400px at 50% -20%,rgba(255,176,0,.3),transparent 60%),linear-gradient(180deg,#fffaf0,var(--cream));color:var(--text);text-align:center}
.bmr-final h3{color:var(--text)}
.bmr-final h2{font-size:clamp(30px,4.4vw,48px);font-weight:900;text-transform:uppercase;color:var(--text)}
.bmr-final h2 .marker{text-transform:none;color:var(--tomato);font-size:1.15em}
.bmr-final p{color:var(--muted);font-weight:600;max-width:520px;margin:16px auto 28px;line-height:1.6}
.bmr-final .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}

/* ---------- Empty states ---------- */
.bmr-empty{grid-column:1/-1;text-align:center;padding:52px 20px;background:#fff;border:2px dashed var(--tan);border-radius:var(--radius-lg)}
.bmr-empty h3{font-size:21px;margin-bottom:8px}
.bmr-empty p{color:var(--muted);font-weight:600;margin:0}

/* ---------- Responsive (ported from the demo) ---------- */
@media (max-width:1020px){
  .bmr-front .grid-4{grid-template-columns:repeat(2,1fr)}
  .bmr-cats .cat-grid{grid-template-columns:repeat(2,1fr)}
  .bmr-hero .trust-row{grid-template-columns:repeat(2,1fr)}
  .bmr-hero .hero-grid{grid-template-columns:1fr;padding-top:38px}
  .bmr-hero .hero-media .frame img{height:340px}
  .bmr-hero .fc-1{left:8px}.bmr-hero .fc-2{right:8px}
  .bmr-front .steps,.bmr-calc{grid-template-columns:1fr}
  .bmr-wc-grid .woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .bmr-front .wrap{width:calc(100% - 28px)}
  .bmr-front .grid-4,.bmr-front .grid-3{grid-template-columns:1fr}
  .bmr-wc-grid .woocommerce ul.products{grid-template-columns:1fr}
  .bmr-cats .cat-grid{grid-template-columns:repeat(2,1fr)}
  .bmr-cats .cat-card{height:106px}
  .bmr-front section{padding:46px 0}
  .bmr-calc{padding:26px}
  .bmr-hero .hero-stats{gap:18px}
}
@media (prefers-reduced-motion:reduce){
  .bmr-front *{transition:none !important;scroll-behavior:auto !important}
}

/* ---------- v0.2.5: Anton display type (owner request 2026-11-05) ------
   Anton is the display voice now: big headings trade the rounded Archivo
   black for Anton's tall, condensed punch. Card titles and UI text keep
   Archivo and Manrope via their more specific rules. */
h1, h2{font-family:"Anton","Archivo",sans-serif;font-weight:400;letter-spacing:.015em}
.bmr-front h1, .bmr-front .sec-head h2, .bmr-front .band h2, .bmr-front .cta h2{text-transform:uppercase}
