/* Earnings module (pairs with /js/pib-earn.js). Tokens from /brand/brand.css. Replaces every revenue estimator.
   1440: max 1120, A+B 5/12, C card 7/12 (radius 20, sticky 96), gap 48, section padding 96. 390: one column, padding 64. */
.em-sec{padding:var(--s-9) 0}
.em{max-width:1120px;margin:0 auto;padding:0 var(--s-5);color:var(--t1);font-family:var(--sans)}
.em-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s-7);align-items:start}
.em-grid--c,.em-grid--one{grid-template-columns:minmax(0,1fr);max-width:760px;margin:0 auto}
.em-l{display:grid;gap:var(--s-7);align-content:start}
.em-h{font-family:var(--display);font-size:clamp(28px,3.2vw,40px);line-height:1.1;letter-spacing:-.01em;margin:0 0 var(--s-4);color:var(--t1)}
.em-stmt{font-size:18px;line-height:1.6;color:var(--t1);margin:0}
/* factors diagram: the four inputs feed one plan */
.em-fx{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2);margin-top:var(--s-5);padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:linear-gradient(160deg,rgba(232,155,42,.08),rgba(255,255,255,.015) 60%)}
.em-fx-n{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border-radius:12px;background:var(--cocoa-rise);border:1px solid var(--line);font-size:14px;font-weight:600;color:var(--t1)}
.em-fx-i{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(232,155,42,.14);color:var(--amber)}
.em-fx-i svg{width:16px;height:16px}
.em-fx-plan{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;margin-top:var(--s-2);border-radius:var(--r-pill);background:var(--amber);color:#0a0a0a;font-weight:700;font-size:14px;position:relative}
.em-fx-plan::before{content:"";position:absolute;left:50%;top:-14px;width:2px;height:12px;background:linear-gradient(var(--line),var(--amber));transform:translateX(-50%)}
.em-fx-dot{width:8px;height:8px;border-radius:50%;background:#0a0a0a;box-shadow:0 0 0 3px rgba(10,10,10,.18)}
/* interactive factors: hover/tap a node to light it and its word in the statement */
.em-fx-n{transition:opacity .2s,border-color .2s,background-color .2s,transform .2s;cursor:default;-webkit-tap-highlight-color:transparent}
.em-fx.is-on .em-fx-n{opacity:.45}
.em-fx.is-on .em-fx-n.is-on{opacity:1;border-color:var(--amber);background:rgba(232,155,42,.12);transform:translateY(-1px)}
.em-fx.is-on .em-fx-n.is-on .em-fx-i{background:var(--amber);color:#0a0a0a}
.em-fx.is-on .em-fx-plan{box-shadow:0 0 0 4px rgba(232,155,42,.18)}
.em-k{border-radius:4px;transition:color .2s,background-color .2s,box-shadow .2s}
.em-a.is-fx .em-k.is-on{color:var(--amber);background:rgba(232,155,42,.12);box-shadow:0 0 0 3px rgba(232,155,42,.12)}
@media (prefers-reduced-motion:reduce){.em-fx-n,.em-k{transition:none}.em-fx.is-on .em-fx-n.is-on{transform:none}}
.em-bh{font-family:var(--sans);font-size:18px;font-weight:700;margin:0 0 var(--s-4);color:var(--t1)}
.em-traits{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2)}
.em-traits li{display:flex;align-items:center;gap:var(--s-3);font-size:16px;line-height:1.45;color:var(--t1);padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.025);border:1px solid var(--line)}
.em-ti{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(232,155,42,.12);color:var(--amber)}
.em-ti svg{width:18px;height:18px}
.em-niche{font-size:16px;line-height:1.55;color:var(--t2);margin:var(--s-4) 0 0}
.em-ng{font-size:15px;line-height:1.5;color:var(--t1);margin:var(--s-3) 0 0}
.em-link{margin:var(--s-5) 0 0;font-weight:700}
.em-link a{color:var(--amber);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.em-link a:hover,.em-link a:focus-visible{text-decoration:underline}
/* Block C */
.em-c{position:sticky;top:96px;scroll-margin-top:96px;outline:none}
.em-card{background:var(--cocoa-rise);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--s-6);box-shadow:0 24px 60px -30px rgba(0,0,0,.8);position:relative;overflow:hidden}
.em-card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--amber),rgba(232,155,42,0))}
.em-ch{font-family:var(--display);font-size:clamp(26px,2.6vw,34px);line-height:1.1;margin:0 0 var(--s-2);color:var(--t1)}
.em-ci{font-size:16px;line-height:1.55;color:var(--t2);margin:0 0 var(--s-5)}
.em-fail{color:var(--t2);font-size:15px}
.em-fail a,.em-ok a:not(.btn){color:var(--amber)}
/* general mode wraps the homepage builder */
.em .pbb .card.bld{background:transparent;border:0;box-shadow:none;padding:0}
.em .pbb .res{grid-area:auto;margin-top:var(--s-4);width:100%;transform:none}
/* page modes (createPage markup) */
.em-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-4)}
.em-stepx{margin:0;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--t3)}
.em-prog{display:flex;gap:6px;flex:1;max-width:220px}
.em-prog i{flex:1;height:6px;border-radius:3px;background:var(--line);transition:background .3s}
.em-prog i.is-done{background:rgba(232,155,42,.55)}
.em-prog i.is-cur{background:var(--amber)}
.em-form{display:grid;gap:var(--s-5)}
.em-q{border:0;margin:0;padding:0;min-width:0;display:grid;gap:var(--s-3)}
.em-q[hidden]{display:none}
.em-ql{font-size:17px;font-weight:700;color:var(--t1);padding:0;margin:0 0 var(--s-1);outline:none}
.em-chips{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.em-chip{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--cocoa);color:var(--t1);font-size:15px;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s}
.em-chip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.em-chip:hover{border-color:rgba(232,155,42,.6)}
.em-chip:has(input:checked){background:rgba(232,155,42,.16);border-color:var(--amber);color:var(--t1)}
.em-chip:has(input:focus-visible){outline:2px solid var(--amber);outline-offset:2px}
.em-contact{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-3)}
.em-contact .em-ql{grid-column:1/-1}
.em-f{display:grid;gap:6px;grid-column:1/-1;align-content:start}
.em-f.em-half{grid-column:auto}
.em-hint,.em-opt{font-weight:400;font-size:13px;color:var(--t3)}
.em-q.bad .em-chip,.em-f.bad input{border-color:#ffb4a8}
.em-f label{font-size:14px;font-weight:600;color:var(--t2)}
.em-f input{min-height:48px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--cocoa);color:var(--t1);font:inherit;font-size:16px}
.em-f input:focus-visible{outline:2px solid var(--amber);outline-offset:1px;border-color:var(--amber)}
.em-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.em-err{color:#ffb4a8;font-size:14px;margin:0}
.em-err:empty{display:none}
.em-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}
.em-back{background:none;border:0;color:var(--t2);font:inherit;font-weight:600;min-height:44px;padding:0 var(--s-2);cursor:pointer}
.em-back[hidden]{display:none}
.em-back:hover{color:var(--t1)}
.em-next{margin-left:auto}
.em-spin{display:none;width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:emspin .8s linear infinite;margin-left:8px}
.em-next[aria-busy=true] .em-spin{display:inline-block}
@keyframes emspin{to{transform:rotate(360deg)}}
.em-fail{margin:0}.em-fail:empty{display:none}
.em-ok{display:grid;gap:var(--s-4)}
.em-ok{outline:none}
.em-ok-h{font-size:17px;font-weight:700;color:var(--t1);margin:0;display:flex;align-items:center;gap:10px}
.em-ok-i{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--amber);color:#0a0a0a}
.em-ok-i svg{width:14px;height:14px}
.em-offer{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-5);background:var(--cocoa);display:grid;gap:var(--s-3)}
.em-offer-k{margin:0;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.em-offer-k i{font-style:normal}
.em-offer-n{margin:0;font-size:20px;line-height:1.25;color:var(--t1)}
.em-offer-tk{font-weight:500;font-size:15px;color:var(--t2)}
.em-offer-w{margin:0;color:var(--t2);font-size:15px;line-height:1.55}
.em-offer .btn{justify-self:start}
/* keep-away: once the plan is in (it can carry a Buy button), Blocks A and B leave the section */
.em.is-done .em-l{display:none}
.em.is-done .em-grid{grid-template-columns:minmax(0,1fr);max-width:760px;margin:0 auto}
.em.is-done .em-c{position:static}
@media (max-width:900px){
  .em-sec{padding:var(--s-8) 0}
  .em{padding:0 var(--s-4)}
  .em-grid{grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
  .em-c{position:static}
  .em-card{padding:var(--s-5) var(--s-4)}
  .em-stmt{font-size:16px}
  .em-contact{grid-template-columns:minmax(0,1fr)}
  .em-f.em-half{grid-column:1/-1}
  .em-nav .btn{flex:1}
}
@media (prefers-reduced-motion:reduce){.em-spin{animation:none}.em-prog i,.em-chip{transition:none}}
.wrap>.em{padding:0}
.em--stack .em-grid{grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
.em--stack .em-c{position:static}
.em--stack{padding:0;margin:var(--s-7) 0}
/* learning-center articles (site.css only): scoped brand tokens + article-body resets */
.pib-lc-earn{--t1:var(--cream,#f5ecd6);--t2:rgba(245,236,214,.72);--t3:rgba(245,236,214,.60);--line:rgba(245,236,214,.08);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--r-md:14px;--r-card:20px;--r-pill:999px;margin:var(--s-7) 0;padding:var(--s-6);border:1px solid rgba(245,236,214,.1);border-radius:var(--r-card);background:#141414}
.pib-lc-earn .em{padding:0}
.pib-lc-earn .em-grid{max-width:none}
.lch-v2 .v2-article-body .pib-lc-earn h3.em-bh{margin:0 0 var(--s-4);font-size:18px}
.lch-v2 .v2-article-body .pib-lc-earn ul.em-traits{margin:0;padding:0}
.lch-v2 .v2-article-body .pib-lc-earn ul.em-traits li{margin:0}
.lch-v2 .v2-article-body .pib-lc-earn p.em-ng{margin:var(--s-3) 0 0}
.lch-v2 .v2-article-body .pib-lc-earn p.em-link{margin:var(--s-5) 0 0}
.lch-v2 .v2-article-body .pib-lc-earn .em-link a{color:var(--amber,#e89b2a);text-decoration:none}
@media (max-width:640px){.pib-lc-earn{padding:var(--s-5)}}

/* t492u-t495u: extra page links, violations detail, optional website */
.em-f[hidden],.em-more [hidden],.em-add[hidden]{display:none}
.em-more{grid-column:1/-1;display:grid;gap:var(--s-2)}
.em-more__l{display:grid;gap:var(--s-2)}
.em-add{justify-self:start;background:none;border:0;padding:0;min-height:44px;font:inherit;font-weight:600;font-size:15px;color:var(--amber);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.em-add::before{content:"+";text-decoration:none;display:inline-block;margin-right:8px}
.em-detail{margin-top:var(--s-1)}

/* t507u: illustrated plan form. Cream icon tiles on every card (dark pages and the orange panel), step trail, option cards with art.
   Tokens are local to .em-card so the learning-center embeds and the dark niche pages keep working. */
.em-card{--em-ink:#17110a;--em-ac:#f0a22e;--em-tile:#fff7e8;--em-tileb:rgba(10,10,10,.16);--em-on:#0a0a0a;--em-pop:0 8px 16px -10px rgba(0,0,0,.55)}
.em-g{display:block;width:100%;height:100%;fill:none;stroke:var(--em-ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.em-g .s,.em-g .a{fill:var(--em-ac)}
.em-g .o{stroke-opacity:.42}
.em-g .f{fill:var(--em-ink);stroke:none}
.em-g .t{fill:var(--em-tile)}
.em-g .x{stroke:var(--em-on)}
.em-qrow{display:flex;align-items:center;gap:14px}
.em-qt{min-width:0;font-size:inherit;line-height:1.28}
.em-qt .em-hint{display:block;margin-top:2px}
.em-qi,.em-ico{flex:none;display:grid;place-items:center;background:var(--em-tile);border:1px solid var(--em-tileb);box-shadow:var(--em-pop)}
.em-qi{width:54px;height:54px;padding:9px;border-radius:16px;position:relative}
.em-qi::after{content:"";position:absolute;inset:3px;border-radius:13px;border:1px solid rgba(10,10,10,.07);pointer-events:none}
.em-ico{width:38px;height:38px;padding:6px;border-radius:11px;transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.em-ico--mk{width:auto;min-width:38px;gap:3px;padding:6px 7px;display:flex;align-items:center;justify-content:center}
.em-mk{display:block;width:22px;height:22px}
.em-mk--yahoo{color:#6001d2}
.em-chips{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.em-chip{width:100%;min-width:0;min-height:58px;padding:9px 12px 9px 9px;gap:11px;border-radius:15px;font-size:15px;line-height:1.2;box-shadow:0 1px 0 rgba(255,255,255,.04) inset}
.em-ct{min-width:0;overflow-wrap:break-word}
.em-chips--t{gap:8px}
.em-chips--t.em-chips--n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.em-chips--t.em-chips--n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.em-chips--t .em-chip{flex-direction:column;justify-content:center;gap:8px;text-align:center;min-height:98px;padding:12px 4px 10px;font-size:14px}
.em-chips--t .em-ico{width:46px;height:46px;padding:7px;border-radius:13px}
.em-chip:hover .em-ico{transform:translateY(-1px) scale(1.04)}
.em-chip::after{content:"";position:absolute;top:-7px;right:-7px;width:20px;height:20px;border-radius:50%;border:2px solid var(--cocoa-rise,#1a1410);background:var(--em-ac) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%230a0a0a' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat;opacity:0;transform:scale(.3);transition:opacity .18s,transform .22s cubic-bezier(.2,.9,.3,1.4);pointer-events:none}
.em-chip:has(input:checked)::after{opacity:1;transform:scale(1)}
.em-chip:has(input:checked) .em-ico{border-color:var(--em-ac);box-shadow:0 0 0 2px var(--em-ac),var(--em-pop)}
.em-q:has(+ .em-q){padding-bottom:var(--s-4);border-bottom:1px solid var(--line)}
/* step trail */
.em-top{display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:start;gap:10px;margin-bottom:var(--s-5)}
.em-prog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;max-width:none;flex:none}
.em-prog--n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.em-pn{position:relative;display:grid;justify-items:start;gap:7px;min-width:0}
.em-pn::after{content:"";position:absolute;left:36px;right:8px;top:13px;height:2px;border-radius:2px;background:var(--line);transition:background .3s}
.em-pn:last-child::after{display:none}
.em-pd{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--line);background:transparent;color:var(--t3);font:700 12.5px/1 var(--sans);transition:background .25s,border-color .25s,color .25s,box-shadow .25s}
.em-pd svg{width:14px;height:14px}
.em-pl{max-width:100%;font-size:12px;font-weight:600;line-height:1.2;color:var(--t3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.em-pn.is-done::after{background:var(--em-ac)}
.em-pn.is-done .em-pd{background:var(--em-ac);border-color:var(--em-ac);color:#0a0a0a}
.em-pn.is-cur .em-pd{background:var(--t1);border-color:var(--t1);color:var(--cocoa,#14110e);box-shadow:0 0 0 4px rgba(240,162,46,.28)}
.em-pn.is-cur .em-pl,.em-pn.is-done .em-pl{color:var(--t1)}
/* card header art */
.em-card--art .em-ch,.em-card--art .em-ci{padding-right:84px}
.em-cart{position:absolute;top:24px;right:24px;width:68px;height:68px;pointer-events:none}
.em-cart svg{display:block;width:100%;height:100%;overflow:visible}
.em-cart .c{fill:var(--em-tile);stroke:var(--em-ink);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.em-cart .d{fill:none;stroke:var(--em-ink);stroke-opacity:.4;stroke-width:1.8;stroke-linejoin:round}
.em-cart .a{fill:var(--em-ac);stroke:var(--em-ink);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.em-cart .l{fill:none;stroke:var(--em-ink);stroke-width:1.8;stroke-linecap:round}
.em-form{animation:emIn .34s cubic-bezier(.2,.7,.2,1)}
@keyframes emIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:900px){
  .em-qi{width:48px;height:48px;padding:8px;border-radius:14px}
  .em-qrow{gap:12px}
  .em-cart{top:18px;right:16px;width:54px;height:54px}
  .em-card--art .em-ch,.em-card--art .em-ci{padding-right:64px}
}
@media (max-width:480px){.em-chips--r{grid-template-columns:minmax(0,1fr)}.em-chips--r .em-chip{min-height:54px}}
@media (max-width:360px){.em-pl{font-size:10.5px}.em-chips--t .em-chip{font-size:12.5px}}
@media (max-width:420px){
  .em-chips{gap:8px}
  .em-chip{padding:8px 8px 8px 8px;gap:8px;font-size:14px}
  .em-ico{width:34px;height:34px;padding:5px;border-radius:10px}
  .em-chips--t .em-chip{min-height:92px;font-size:13px;padding:10px 2px 8px}
  .em-chips--t .em-ico{width:42px;height:42px}
}
@media (prefers-reduced-motion:reduce){.em-form{animation:none}.em-chip::after,.em-ico,.em-pd,.em-pn::after{transition:none}.em-chip:hover .em-ico{transform:none}}
.em-f{min-width:0}
.em-f input{width:100%;min-width:0;box-sizing:border-box}
