/* ============================================================================
   BizModler — marketing site, shared shell  ("Bold Too" voice on the v3 system)
   Builds ON assets/bizmodler.css (tokens, .reveal, buttons live there).
   This file adds: the playful marketing layer — nav, footer, sections, hero
   helpers, lens cards, step flow, source/do-don't lists, and pricing.
   Prefixes:  .b-* ported from "Marketing Bold Too" · .m-* new shared bits.
   ============================================================================ */

:root{
  --cav:'Caveat', cursive;
  --pop-green:#0ea571; --pop-blue:#2563eb; --pop-gold:#e0a83b;
  --clay:var(--attn);
  --paper-line:#e7e0d0;
}

/* ── body texture (tactile paper, not gradient-slop) ───────────────────── */
body{overflow-x:hidden;}
body.m-site{
  background-image:
    radial-gradient(circle at 12% 16%, rgba(180,84,30,.045), transparent 40%),
    radial-gradient(circle at 88% 6%, rgba(37,99,235,.05), transparent 36%),
    radial-gradient(1100px 500px at 88% -12%, rgba(29,58,99,.05), transparent 60%);
  background-attachment:fixed;
}
body.m-site::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
}
.m-site main, .m-site header, .m-site footer{position:relative;z-index:1;}
.b-wrap{max-width:1180px;margin:0 auto;padding:0 28px;position:relative;z-index:1;}
.b-narrow{max-width:840px;}
section{position:relative;z-index:1;}

/* ── shared headings reset for the playful serif ───────────────────────── */
.m-site h1,.m-site h2,.m-site h3{font-family:var(--serif);font-weight:600;letter-spacing:-.02em;margin:0;}

/* ── kicker / eyebrow ──────────────────────────────────────────────────── */
.b-kicker{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--clay);}
.b-kicker::before{content:"";width:26px;height:2px;background:var(--clay);border-radius:2px;}

/* ── buttons (chunky, hard drop-shadow) ────────────────────────────────── */
.b-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:700;font-size:16px;border:none;cursor:pointer;border-radius:16px;padding:16px 26px;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s;text-decoration:none;}
.b-btn:hover{text-decoration:none;}
.b-btn.solid{background:var(--brand);color:#fff;box-shadow:0 10px 0 -2px var(--brand-700),0 18px 30px -12px rgba(29,58,99,.6);}
.b-btn.solid:hover{transform:translateY(-3px);box-shadow:0 13px 0 -2px var(--brand-700),0 26px 38px -14px rgba(29,58,99,.6);}
.b-btn.solid:active{transform:translateY(2px);box-shadow:0 5px 0 -2px var(--brand-700),0 10px 18px -10px rgba(29,58,99,.6);}
.b-btn.clay{background:var(--clay);color:#fff;box-shadow:0 10px 0 -2px #8f3f13,0 18px 30px -12px rgba(180,84,30,.55);}
.b-btn.clay:hover{transform:translateY(-3px);box-shadow:0 13px 0 -2px #8f3f13,0 26px 38px -14px rgba(180,84,30,.55);}
.b-btn.clay:active{transform:translateY(2px);}
.b-btn.ghost{background:transparent;color:var(--ink);border:2px solid var(--ink);}
.b-btn.ghost:hover{background:var(--ink);color:var(--canvas);transform:translateY(-2px);}

/* ── peeled sticker badge ──────────────────────────────────────────────── */
.b-sticker{position:absolute;font-family:var(--sans);font-weight:800;font-size:13px;letter-spacing:.01em;color:#fff;padding:9px 15px;border-radius:13px;box-shadow:0 8px 18px -6px rgba(22,33,58,.4);white-space:nowrap;z-index:5;}

/* marker underline (hand-drawn) */
.mk{position:relative;font-weight:700;color:var(--ink);white-space:nowrap;}
.mk svg{position:absolute;left:-2%;right:-2%;width:104%;bottom:-7px;height:11px;}
.mk svg path{fill:none;stroke:var(--clay);stroke-width:4;stroke-linecap:round;stroke-dasharray:240;stroke-dashoffset:240;}
.reveal.in .mk svg path, .in .mk svg path{animation:mkDraw 1s ease .4s forwards;}
@keyframes mkDraw{to{stroke-dashoffset:0;}}

/* hand-written note */
.b-note{font-family:var(--cav);font-size:21px;color:var(--brand-600);transform:rotate(-1.5deg);display:inline-block;}
.b-note svg{display:inline-block;vertical-align:-4px;margin-right:4px;}

/* ════════════ NAV (injected by site.js) ════════════ */
.m-site .b-nav{position:sticky;top:0;z-index:50;background:rgba(241,238,230,.82);backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);border-bottom:1px solid transparent;transition:border-color .25s;}
.b-nav.scrolled{border-color:var(--hair);}
.b-nav .inner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 auto;max-width:1180px;padding:13px 28px;}
.b-nav .brand{display:flex;align-items:center;flex:none;position:relative;}
.b-nav .brand.active::after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2.5px;background:var(--clay);border-radius:2px;}
.b-nav .links{display:flex;align-items:center;gap:24px;}
.b-nav .links a{position:relative;font-size:14.5px;font-weight:600;color:var(--body);transition:color .15s;text-decoration:none;}
.b-nav .links a:hover{color:var(--clay);}
.b-nav .links a.active{color:var(--brand);font-weight:700;}
.b-nav .links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2.5px;background:var(--clay);border-radius:2px;}
.b-nav .right{display:flex;align-items:center;gap:12px;}
.b-nav .signin{font-size:14.5px;font-weight:700;color:var(--brand);padding:9px 6px;text-decoration:none;}
.b-nav .signin:hover{color:var(--clay);}
.b-nav .b-btn{padding:11px 18px;font-size:14.5px;border-radius:13px;box-shadow:0 6px 0 -2px var(--brand-700);}
.b-nav .b-btn:hover{transform:translateY(-2px);}
.b-nav .burger{display:none;border:none;background:none;cursor:pointer;padding:8px;color:var(--ink);}
.b-mobile{display:none;border-top:1px solid var(--hair);background:rgba(241,238,230,.96);backdrop-filter:blur(10px);}
.b-mobile.open{display:block;}
.b-mobile nav{max-width:1180px;margin:0 auto;padding:10px 24px 18px;display:flex;flex-direction:column;}
.b-mobile a{padding:11px 4px;font-size:16px;font-weight:600;color:var(--body);border-bottom:1px solid var(--hair-2);text-decoration:none;}
.b-mobile a.active{color:var(--brand);font-weight:700;box-shadow:inset 3px 0 0 var(--clay);padding-left:12px;}
.b-mobile .mrow{display:flex;gap:10px;padding-top:14px;}
.b-mobile .mrow a{flex:1;text-align:center;border:none;border-radius:12px;padding:13px;}
.b-mobile .mrow .signin{border:2px solid var(--ink);color:var(--ink);}
@media(max-width:980px){
  .b-nav .links, .b-nav .right .signin, .b-nav .right .b-btn{display:none;}
  .b-nav .burger{display:inline-flex;}
}

/* ════════════ GENERIC SUB-PAGE HERO ════════════ */
.m-hero{padding:64px 0 24px;}
.m-hero .b-wrap{max-width:920px;}
.m-hero h1{font-size:clamp(34px,5vw,56px);line-height:1.04;margin-top:18px;}
.m-hero .lede{font-size:20px;line-height:1.55;color:var(--body);margin:22px 0 0;max-width:60ch;}
.m-hero .lede .mk{font-size:inherit;}

/* ════════════ SECTION SHELL ════════════ */
.m-sec{padding:72px 0;}
.m-sec.tight{padding:48px 0;}
.m-shead{max-width:740px;margin-bottom:36px;}
.m-shead.center{margin-left:auto;margin-right:auto;text-align:center;}
.m-shead h2{font-size:clamp(28px,3.6vw,44px);line-height:1.08;margin-top:14px;text-wrap:balance;}
.m-shead p{font-size:18px;line-height:1.6;color:var(--body);margin:14px 0 0;}
.m-shead.center p{margin-left:auto;margin-right:auto;max-width:56ch;}

/* navy full-bleed panel */
.m-navy{background:var(--brand);color:#fff;padding:92px 0;}
.m-navy h2,.m-navy h3{color:#fff;}
.m-navy .b-kicker{color:#f2c9b0;}
.m-navy .b-kicker::before{background:#f2c9b0;}
.m-navy .m-shead p{color:var(--brand-100);}

/* ════════════ EDITORIAL BLOCK (a hairline rule, never a boxed card) ════════════ */
.m-card{background:none;border:none;border-radius:0;box-shadow:none;padding:2px 0 2px 26px;border-left:2px solid var(--hair);}
.m-card.paper{border-left-color:var(--hair-2);}
.m-card.accent{border-left:3px solid var(--brand);}
.m-card h3{font-size:21px;margin-bottom:9px;}
.m-card p{font-size:16px;line-height:1.68;color:var(--body);margin:0;max-width:66ch;}
.m-card p+p{margin-top:12px;}

/* flowing prose (founder story, notes) — no rule, no box */
.m-prose{max-width:68ch;}
.m-prose p{font-size:17px;line-height:1.74;color:var(--body);margin:0 0 17px;}
.m-prose p:last-child{margin-bottom:0;}
.m-prose .lead{font-size:19.5px;color:var(--ink);}
.m-prose .pull{font-family:var(--serif);font-weight:600;font-size:clamp(22px,2.5vw,29px);line-height:1.26;color:var(--ink);border-left:3px solid var(--clay);padding-left:22px;margin:28px 0;max-width:60ch;}
.m-grid{display:grid;gap:20px;}
.m-grid.two{grid-template-columns:1fr 1fr;}
.m-grid.three{grid-template-columns:repeat(3,1fr);}
@media(max-width:820px){.m-grid.two,.m-grid.three{grid-template-columns:1fr;}}

/* ════════════ THREE LENSES ════════════ */
.m-lenses{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink);}
.m-lens{background:none;border-radius:0;padding:26px 32px 10px;box-shadow:none;border-top:none;border-right:1px solid var(--hair);position:relative;}
.m-lens:first-child{padding-left:0;}
.m-lens:last-child{border-right:none;padding-right:0;}
.m-lens::before{content:"";position:absolute;top:-2px;left:0;width:56px;height:2px;background:var(--ln,var(--brand));}
.m-lens:first-child::before{left:0;}
.m-lens .ic{width:46px;height:46px;border-radius:0;display:grid;place-items:center;background:none;color:var(--ln,var(--brand));margin:0 0 14px -3px;}
.m-lens .tag{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ln,var(--brand));}
.m-lens h3{font-size:23px;margin:4px 0 10px;}
.m-lens p{font-size:15px;line-height:1.6;color:var(--body);margin:0;}
.m-lens.hopeful{--ln:var(--pop-green);--ln-soft:var(--f-green-50);}
.m-lens.worried{--ln:var(--clay);--ln-soft:var(--attn-50);}
.m-lens.balanced{--ln:var(--brand);--ln-soft:var(--brand-50);}
.m-lens .scrawl{font-family:var(--cav);font-size:19px;color:var(--ln,var(--brand));margin-top:14px;transform:rotate(-1deg);}
@media(max-width:820px){.m-lenses{grid-template-columns:1fr;border-top:none;}.m-lens{border-right:none;border-top:2px solid var(--ink);padding:22px 0 8px;}.m-lens::before{width:56px;}}

/* ════════════ STEP FLOW ════════════ */
.m-steps{display:flex;flex-direction:column;gap:0;}
.m-step{display:flex;gap:28px;align-items:flex-start;background:none!important;border-radius:0;padding:28px 0;box-shadow:none;border:none!important;border-bottom:1px solid var(--hair)!important;}
.m-step:last-child{border-bottom:none!important;}
.m-step .n{flex:none;min-width:54px;width:auto;height:auto;border-radius:0;display:block;font-family:var(--serif);font-weight:600;font-size:46px;line-height:.86;background:none;color:var(--clay);}
.m-step h3{font-size:21px;margin-bottom:7px;}
.m-step p{font-size:15.5px;line-height:1.64;color:var(--body);margin:0;max-width:64ch;}
/* steps on the navy panel */
.m-navy .m-step{border-bottom-color:rgba(255,255,255,.16)!important;}
.m-navy .m-step .n{color:var(--clay);}
.m-navy .m-step h3{color:#fff;}
.m-navy .m-step p{color:var(--brand-100);}

/* ════════════ DO / DON'T / SOURCE LISTS ════════════ */
.m-list{display:flex;flex-direction:column;gap:2px;}
.m-li{display:flex;gap:16px;align-items:flex-start;padding:20px 4px;border-bottom:1px solid var(--hair);}
.m-li:last-child{border-bottom:none;}
.m-li .mark{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;margin-top:1px;}
.m-li .mark.ok{background:var(--f-green-50);color:var(--f-green-d);}
.m-li .mark.no{background:var(--attn-50);color:var(--clay);}
.m-li .mark.dot{background:var(--brand-50);color:var(--brand);}
.m-li h3{font-size:18px;margin-bottom:4px;}
.m-li p{font-size:15px;line-height:1.58;color:var(--body);margin:0;}
.m-li .small{font-size:13.5px;color:var(--muted);}

/* two-column do/don't */
.m-split{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.m-split .col-card{background:none;border-radius:0;padding:4px 0 4px 44px;box-shadow:none;border:none;}
.m-split .col-card:first-child{padding:4px 44px 4px 0;border-right:1px solid var(--hair);}
.m-split .col-card.good,.m-split .col-card.bad{border-top:none;}
.m-split .col-card h3{font-size:21px;margin-bottom:16px;display:flex;align-items:center;gap:11px;}
.m-split .col-card.good h3::before{content:"";flex:none;width:11px;height:11px;border-radius:50%;background:var(--pop-green);}
.m-split .col-card.bad h3::before{content:"";flex:none;width:11px;height:11px;border-radius:50%;background:var(--clay);}
.m-split ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;}
.m-split li{font-size:15px;line-height:1.5;color:var(--body);display:flex;gap:10px;align-items:flex-start;}
.m-split li::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;margin-top:8px;background:var(--soft);}
.m-split .good li::before{background:var(--pop-green);}
.m-split .bad li::before{background:var(--clay);}
@media(max-width:820px){.m-split{grid-template-columns:1fr;}.m-split .col-card:first-child{padding:0 0 24px;border-right:none;border-bottom:1px solid var(--hair);}.m-split .col-card{padding:24px 0 4px;}}

/* ════════════ PRICING (flowing, non-boxy) ════════════ */
.m-price{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:start;max-width:1060px;margin:0 auto;}
.m-plan{position:relative;padding:38px 30px 34px;border-radius:26px;transition:transform .2s var(--ease);}
.m-plan.feat{background:linear-gradient(180deg,rgba(180,84,30,.055),transparent 72%);transform:translateY(-10px);z-index:2;}
.m-plan.feat::after{content:"";position:absolute;top:0;left:20px;right:20px;height:3px;border-radius:3px;background:var(--clay);opacity:.7;pointer-events:none;}
.m-plan .nm{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--ink);}
.m-plan.feat .nm{color:var(--clay);}
.m-plan .price{display:flex;align-items:baseline;gap:4px;margin:14px 0 4px;}
.m-plan .price .amt{font-family:var(--serif);font-weight:600;font-size:56px;line-height:1;color:var(--ink);letter-spacing:-.02em;}
.m-plan .price .per{font-size:15px;font-weight:600;color:var(--muted);}
.m-plan .ccy{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--soft);text-transform:uppercase;}
.m-plan .tagline{font-size:14.5px;color:var(--body);margin:10px 0 0;min-height:42px;}
.m-plan .feats{list-style:none;margin:22px 0 0;padding:22px 0 0;border-top:1px solid var(--hair);display:flex;flex-direction:column;gap:12px;}
.m-plan .feats li{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;line-height:1.4;color:var(--body);}
.m-plan .feats li .ti{flex:none;width:20px;height:20px;margin-top:1px;}
.m-plan .feats li.off{color:var(--soft);}
.m-plan .feats li b{color:var(--ink);font-weight:700;}
.m-plan .pcta{margin-top:26px;}
.m-plan .pcta .b-btn{width:100%;justify-content:center;font-size:15px;padding:15px 20px;border-radius:14px;}
.m-plan .b-sticker.most{position:absolute;top:-15px;left:50%;transform:translateX(-50%) rotate(-2.5deg);background:var(--clay);}
.m-plan .ribbon-mk{display:block;height:10px;margin-top:6px;}
.m-plan .ribbon-mk path{fill:none;stroke:var(--clay);stroke-width:4;stroke-linecap:round;}
.m-plan .current{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);border:1.5px dashed var(--brand-100);border-radius:999px;padding:4px 12px;margin-top:6px;}
.m-meter{height:7px;border-radius:5px;background:var(--hair-2);overflow:hidden;margin:16px 0 7px;}
.m-meter-fill{display:block;height:100%;border-radius:5px;background:var(--clay);width:0;transition:width 1s cubic-bezier(.4,0,.2,1);}
.reveal.in .m-meter-fill{width:var(--mw,30%);}
.m-meter-cap{font-size:12.5px;font-weight:700;color:var(--muted);}
.m-plan .preview-flag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--brand);background:var(--brand-50);border:1px solid var(--brand-100);border-radius:999px;padding:4px 11px;margin-top:10px;}
@media(prefers-reduced-motion:reduce){.m-meter-fill{transition:none;}}
@media(max-width:880px){
  .m-price{grid-template-columns:1fr;gap:18px;max-width:460px;}
  .m-plan{background:var(--surface);box-shadow:0 20px 44px -30px rgba(22,33,58,.4);border:1px solid var(--hair);}
  .m-plan.feat{transform:none;}
}

/* tick / cross glyphs (friendly, never harsh red) */
.ti-ok{stroke:var(--pop-green);}
.ti-no{stroke:var(--soft);}

/* ════════════ FAQ / disclosure ════════════ */
.m-faq{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:2px;}
.m-q{border-bottom:1px solid var(--hair);}
.m-q summary{list-style:none;cursor:pointer;padding:22px 4px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--serif);font-weight:600;font-size:20px;color:var(--ink);}
.m-q summary::-webkit-details-marker{display:none;}
.m-q summary .pl{flex:none;width:26px;height:26px;border-radius:8px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;font-size:18px;transition:transform .25s var(--ease);}
.m-q[open] summary .pl{transform:rotate(45deg);}
.m-q .a{padding:0 4px 22px;font-size:15.5px;line-height:1.65;color:var(--body);max-width:64ch;}

/* ════════════ CTA strip ════════════ */
.m-cta{text-align:center;padding:90px 0 36px;}
.m-cta h2{font-size:clamp(32px,4.6vw,56px);line-height:1.04;}
.m-cta h2 em{font-style:normal;color:var(--clay);}
.m-cta p{font-size:19px;color:var(--body);margin:18px auto 0;max-width:46ch;}
.m-cta .b-btn{margin-top:30px;font-size:18px;padding:19px 34px;}
.m-cta .micro{margin-top:16px;font-family:var(--cav);font-size:20px;color:var(--brand-600);}

/* ════════════ FOOTER (injected) ════════════ */
.b-foot{margin-top:0;border-top:2px solid var(--hair);padding:54px 0 46px;}
.b-foot .grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:30px;}
.b-foot .blurb{color:var(--muted);font-size:14px;line-height:1.6;margin:16px 0 0;max-width:32ch;}
.b-foot h4{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--clay);font-weight:800;margin:0 0 14px;}
.b-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.b-foot a{color:var(--body);font-size:14px;text-decoration:none;}
.b-foot a:hover{color:var(--clay);}
.b-foot .legal{border-top:1px solid var(--hair);margin-top:40px;padding-top:22px;font-size:12.5px;color:var(--muted);line-height:1.6;}
.b-foot .legal strong{color:var(--ink);}
.b-foot .legal .base{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:14px;color:var(--soft);}
@media(max-width:860px){.b-foot .grid{grid-template-columns:1fr 1fr;gap:26px;}.b-foot .brand-col{grid-column:1/-1;}}

/* reveal delays (engine lives in bizmodler.css) */
.reveal[data-d="1"]{transition-delay:.08s;}
.reveal[data-d="2"]{transition-delay:.16s;}
.reveal[data-d="3"]{transition-delay:.24s;}
.reveal[data-d="4"]{transition-delay:.32s;}

/* misc helpers */
.m-srcline{font-size:12px;color:var(--muted);line-height:1.6;margin-top:26px;}
.m-pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.m-pillx{font-size:13px;font-weight:700;color:var(--ink);background:var(--surface);border:1.5px solid var(--hair);border-radius:999px;padding:7px 15px;}

/* inline content links — clear, clickable affordance (clay = look here) */
.m-li p a,.m-card p a,.m-prose a,.m-shead p a,.m-q .a a,.m-step p a{color:var(--clay);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;font-weight:600;}
.m-li p a:hover,.m-card p a:hover,.m-prose a:hover,.m-shead p a:hover,.m-q .a a:hover,.m-step p a:hover{color:var(--brand);}
