.by-wrap { max-width: 46rem; }
.by-wrap-w { max-width: 66rem; }
.by-nolink { margin: 0; color: var(--ink-2); }
.by-member-note { margin: 0 0 .8rem; font-weight: 650; color: var(--sage-ink); }
.by-ic { display: inline-grid; place-items: center; flex: 0 0 auto; width: 46px; height: 46px;
  border-radius: 13px; background: var(--sage-bg); color: var(--sage-ink); }
.by-ic svg { width: 23px; height: 23px; }

.by-head { text-align: center; max-width: 46rem; margin: 0 auto clamp(1.6rem, 3vw, 2.4rem); }
.by-eyebrow { margin: 0 0 .7rem; font-size: .78rem; font-weight: 700; letter-spacing: .15em;
  text-transform: uppercase; color: var(--sage-ink); }
.by-head h2 { margin: 0; font-family: var(--display); line-height: 1.14; color: var(--ink);
  font-size: clamp(1.75rem, 1.3rem + 1.7vw, 2.6rem); text-wrap: balance; }
.by-sub { margin: .95rem auto 0; max-width: 40rem; color: var(--ink-2); font-size: 1.06rem;
  line-height: 1.6; text-wrap: pretty; }

.by-t-birds { --by-t: var(--c-birds); }
.by-t-blooms { --by-t: var(--c-blooms); }
.by-t-garden { --by-t: var(--c-garden); }
.by-t-sky { --by-t: var(--c-sky); }
.by-t-trips, .by-t-travel { --by-t: var(--c-trees); }
.by-t-alerts, .by-t-families { --by-t: var(--c-butterflies); }
.by-t-teach { --by-t: var(--c-market); }
[class*="by-t-"] > .by-ic { color: var(--by-t, var(--sage-ink));
  background: color-mix(in srgb, var(--by-t, var(--sage)) 13%, var(--surface)); }

.by-hero { position: relative; overflow: hidden; padding: clamp(1.8rem, 2vw + 1rem, 3.2rem) 0
  clamp(2.2rem, 3vw + 1rem, 3.8rem);
  background: radial-gradient(ellipse 60% 70% at 88% 35%, var(--sage-bg), transparent 70%),
    radial-gradient(ellipse 45% 50% at 5% 100%, var(--paper-2), transparent 70%), var(--paper); }
.by-hero-grid { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
  gap: clamp(1.8rem, 4vw, 4.2rem); align-items: center; }
.by-pill { display: inline-flex; align-items: center; gap: .5rem; margin: 0 0 1rem;
  padding: .32rem .85rem .32rem .4rem; border-radius: 999px; background: var(--surface);
  border: 1px solid var(--line); box-shadow: var(--shadow-sm); color: var(--sage-ink);
  font-size: .76rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.by-pill .by-ic { width: 26px; height: 26px; border-radius: 50%; }
.by-pill .by-ic svg { width: 15px; height: 15px; }
.by-hero h1 { margin: 0 0 .9rem; font-family: var(--display); color: var(--ink);
  font-size: clamp(2.05rem, 1.3rem + 2.5vw, 3.15rem); line-height: 1.06; letter-spacing: -.012em;
  text-wrap: balance; }
.by-accent { padding: 0 .06em; background-repeat: no-repeat;
  background-image: linear-gradient(transparent 60%, var(--sage-bg) 60%, var(--sage-bg) 93%, transparent 93%); }
.by-lede { margin: 0 0 .9rem; max-width: 35rem; color: var(--ink-2); line-height: 1.5;
  font-size: clamp(1.06rem, 1rem + .3vw, 1.2rem); text-wrap: pretty; }
.by-hero-list { display: grid; gap: .45rem; margin: 0 0 1.1rem; padding: 0; list-style: none; }
.by-hero-list li { display: flex; align-items: center; gap: .65rem; color: var(--ink-2);
  font-size: 1.02rem; line-height: 1.3; }
.by-hero-list strong { color: var(--ink); font-weight: 700; }
.by-hero-list .by-ic { width: 32px; height: 32px; border-radius: 9px; }
.by-hero-list .by-ic svg { width: 18px; height: 18px; }
.by-deal { margin: 0 0 1.4rem; padding: .9rem 1.15rem; border-radius: var(--radius);
  background: var(--surface); border: 1px solid var(--line); border-left: 4px solid var(--sage);
  box-shadow: var(--shadow-sm); }
.by-deal-was { margin: 0; color: var(--ink-3); font-size: 1rem; }
.by-deal-was s, .by-offer-was s { text-decoration-color: var(--c-blooms); text-decoration-thickness: 2px;
  font-variant-numeric: lining-nums; }
.by-deal-was s { font-size: 1.35rem; font-weight: 700; color: var(--ink-2); }
.by-deal-now { margin: .15rem 0 0; color: var(--ink); font-size: 1.1rem; }
.by-deal-now strong { font-family: var(--display); font-size: 1.9rem; color: var(--sage-ink);
  line-height: 1.1; }
.by-deal-mo { margin: .2rem 0 0; color: var(--ink-2); font-size: .95rem; }
.by-deal-reg, .by-yours-reg, .by-offer-reg { margin: .2rem 0 0; color: var(--ink-3); font-size: .95rem; }
.by-deal-reg s, .by-yours-reg s, .by-offer-reg s { text-decoration-color: var(--c-blooms);
  text-decoration-thickness: 2px; font-weight: 700; color: var(--ink-2); }
.by-deal-found, .by-offer-found, .by-final-found { margin: .55rem 0 0; padding: .55rem .75rem;
  border-radius: 10px; background: var(--sage-bg); color: var(--sage-ink); font-size: .92rem;
  line-height: 1.45; font-weight: 600; }
.by-final-found { display: inline-block; margin: .4rem 0 .9rem; }
.by-club-t s { color: var(--ink-3); text-decoration-color: var(--c-blooms); text-decoration-thickness: 2px; }
.by-club-f { margin: .2rem 0 0; color: var(--sage-ink); font-size: .85rem; font-weight: 700; }
.by-member-in { margin: .4rem 0 0; color: var(--ink-3); font-size: .95rem; }
.by-member-in a { color: var(--sage-ink); font-weight: 600; }
.by-cta-row { display: flex; flex-wrap: wrap; align-items: center; gap: .9rem 1.5rem; margin: 0 0 1.25rem; }
.by-ghost { font-weight: 650; color: var(--sage-ink); text-decoration: underline;
  text-underline-offset: .22em; }
.by-trust { display: flex; flex-wrap: wrap; gap: .45rem 1.2rem; margin: 0; padding: 0;
  list-style: none; color: var(--ink-2); font-size: .93rem; }
.by-trust li { display: inline-flex; align-items: center; gap: .4rem; }
.by-trust .by-ic { width: 20px; height: 20px; border-radius: 50%; background: var(--sage);
  color: var(--surface); }
.by-trust .by-ic svg { width: 12px; height: 12px; }

.by-shelf { position: relative; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--radius-lg);
  border: 1px solid var(--line); box-shadow: var(--shadow);
  background: radial-gradient(ellipse 72% 58% at 50% 40%, var(--surface), transparent 74%),
    linear-gradient(180deg, var(--paper), var(--paper-3)); }
.by-cover { position: absolute; height: auto; border-radius: 4px; box-shadow: var(--shadow-lift);
  transform-origin: 50% 100%; }
.by-c1, .by-c5 { width: 29%; bottom: 31%; z-index: 1; }
.by-c1 { left: 18.5%; transform: rotate(-7deg); }
.by-c5 { right: 18.5%; transform: rotate(7deg); }
.by-c2, .by-c4 { width: 31%; bottom: 8%; z-index: 3; }
.by-c2 { left: 4.5%; transform: rotate(-4deg); }
.by-c4 { right: 4.5%; transform: rotate(4deg); }
.by-c3 { width: 34%; left: 33%; bottom: 5.5%; z-index: 5; }
.by-ledge { position: absolute; left: 6%; right: 6%; bottom: 1.5%; height: 9%; z-index: 0; border-radius: 50%;
  background: radial-gradient(closest-side, color-mix(in srgb, var(--ink) 16%, transparent), transparent); }
.by-badge { position: absolute; top: 6%; left: 4.5%; z-index: 7; display: grid; place-content: center;
  width: clamp(82px, 19%, 100px); aspect-ratio: 1; margin: 0; border-radius: 50%; text-align: center;
  background: var(--sage); color: var(--surface); box-shadow: var(--shadow-lift); transform: rotate(-8deg);
  outline: 2px dashed color-mix(in srgb, var(--surface) 55%, transparent); outline-offset: -7px; }
.by-badge strong { font-family: var(--display); font-size: clamp(1.45rem, 1.1rem + 1vw, 1.95rem); line-height: 1; }
.by-badge span { margin-top: .2rem; padding: 0 .55rem; font-size: .55rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; line-height: 1.2; }
.by-shelf-cap { margin: .8rem .2rem 0; text-align: center; color: var(--ink-3); font-size: .86rem; }

.by-stats { background: var(--surface); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.by-stat-row { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); margin: 0; padding: 0;
  list-style: none; }
.by-stat-row li { padding: clamp(1.2rem, 2.4vw, 1.8rem) 1rem; text-align: center; }
.by-stat-row li + li { border-left: 1px solid var(--line-2); }
.by-stat-n { margin: 0; font-family: var(--display); color: var(--sage-ink); line-height: 1;
  font-size: clamp(2rem, 1.45rem + 1.8vw, 2.9rem); font-variant-numeric: lining-nums; }
.by-stat-l { max-width: 14.5rem; margin: .5rem auto 0; color: var(--ink-2); font-size: .93rem; line-height: 1.4;
  text-wrap: balance; }

.by-pain-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.1rem; }
.by-pain-card { padding: 1.4rem 1.3rem 1.3rem; border-radius: var(--radius); background: var(--surface);
  border: 1px solid var(--line); border-top: 3px solid var(--by-t, var(--line)); box-shadow: var(--shadow-sm); }
.by-pain-h { margin: .9rem 0 .45rem; font-family: var(--display); font-size: 1.2rem; line-height: 1.25;
  color: var(--ink); }
.by-pain-card p:last-child { margin: 0; color: var(--ink-2); line-height: 1.6; }
.by-turn { max-width: 42rem; margin: clamp(1.8rem, 3vw, 2.6rem) auto 0; text-align: center;
  font-family: var(--display); font-size: clamp(1.15rem, 1rem + .6vw, 1.4rem); line-height: 1.45;
  color: var(--ink); text-wrap: balance; }

.by-how { background: var(--paper-2); }
.by-steps3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; margin: 0;
  padding: 0; list-style: none; }
.by-steps3 li { padding: 1.5rem 1.35rem 1.35rem; border-radius: var(--radius); background: var(--surface);
  border: 1px solid var(--line); border-top: 3px solid var(--sage); box-shadow: var(--shadow-sm); }
.by-step-n { display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 50%;
  background: var(--sage); color: var(--surface); font-weight: 700; font-size: 1.02rem; }
.by-step-h { margin: .9rem 0 .4rem; font-weight: 700; font-size: 1.1rem; color: var(--ink); }
.by-steps3 p:last-child { margin: 0; color: var(--ink-2); line-height: 1.6; }

.by-ba-table { max-width: 58rem; margin: 0 auto; overflow: hidden; border-radius: var(--radius);
  border: 1px solid var(--line); background: var(--surface); box-shadow: var(--shadow-sm); }
.by-ba-heads, .by-ba-row { display: grid; grid-template-columns: 1fr 1fr; }
.by-ba-heads p { margin: 0; padding: .95rem 1.3rem; font-size: .78rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; }
.by-ba-heads p:first-child { background: var(--paper); color: var(--ink-3); }
.by-ba-heads p:last-child { background: var(--sage-bg); color: var(--sage-ink); }
.by-ba-row { border-top: 1px solid var(--line-2); }
.by-ba-was { display: flex; gap: .7rem; align-items: flex-start; margin: 0; padding: 1.05rem 1.3rem;
  color: var(--ink-3); line-height: 1.5; }
.by-ba-was .by-ic { width: 24px; height: 24px; border-radius: 50%; background: var(--paper-2);
  color: var(--ink-3); margin-top: .05rem; }
.by-ba-was .by-ic svg { width: 13px; height: 13px; }
.by-ba-now { display: flex; gap: .7rem; align-items: flex-start; margin: 0; padding: 1.05rem 1.3rem;
  color: var(--ink); font-weight: 600; line-height: 1.5;
  background: color-mix(in srgb, var(--sage-bg) 50%, var(--surface)); }
.by-ba-now .by-ic { width: 24px; height: 24px; border-radius: 50%; background: var(--sage);
  color: var(--surface); margin-top: .05rem; }
.by-ba-now .by-ic svg { width: 14px; height: 14px; }

.by-stackband { background: var(--sage-bg); }
.by-stack-card { max-width: 54rem; margin: 0 auto; overflow: hidden; border-radius: var(--radius-lg);
  background: var(--surface); border: 1px solid var(--line); box-shadow: var(--shadow); }
.by-items { margin: 0; padding: .4rem 0; list-style: none; }
.by-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 1.1rem; align-items: center;
  padding: 1.05rem 1.6rem; }
.by-item + .by-item { border-top: 1px dashed var(--line); }
.by-item-h { margin: 0 0 .25rem; font-weight: 700; color: var(--ink); font-size: 1.04rem; }
.by-item-n { display: inline-block; margin-left: .5rem; padding: .1rem .6rem; border-radius: 999px;
  background: var(--paper-2); color: var(--ink-2); font-size: .76rem; font-weight: 600;
  vertical-align: .12em; white-space: nowrap; }
.by-item-body p:last-child { margin: 0; color: var(--ink-2); font-size: .96rem; line-height: 1.5; }
.by-item-v { margin: 0; font-weight: 700; color: var(--ink); white-space: nowrap;
  font-variant-numeric: tabular-nums; font-size: 1.05rem; }
.by-item-note { color: var(--sage-ink); font-size: .86rem; font-weight: 650; }
.by-total { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem;
  padding: 1.15rem 1.6rem; background: var(--paper); border-top: 2px solid var(--line); }
.by-total p { margin: 0; color: var(--ink-2); font-weight: 600; }
.by-total .by-total-v { font-family: var(--display); font-size: 1.7rem; color: var(--ink); }
.by-yours { padding: 2rem 1.6rem 2.2rem; text-align: center; border-top: 1px solid var(--line);
  background: linear-gradient(180deg, var(--surface), var(--sage-bg)); }
.by-yours-h { margin: 0; font-size: .8rem; font-weight: 700; letter-spacing: .15em;
  text-transform: uppercase; color: var(--sage-ink); }
.by-yours-v { margin: .25rem 0 .5rem; font-family: var(--display); line-height: 1; color: var(--ink);
  font-size: clamp(3rem, 2.2rem + 3.2vw, 4.4rem); }
.by-yours-per { font-family: var(--sans); font-size: 1.05rem; color: var(--ink-2); }
.by-yours-note { max-width: 31rem; margin: 0 auto 1.1rem; color: var(--ink-2); line-height: 1.55; }
.by-math { max-width: 33rem; margin: 0 auto 1.4rem; padding: .85rem 1.1rem; border-radius: var(--radius-sm);
  background: var(--surface); border: 1px dashed var(--sage); color: var(--ink); line-height: 1.55;
  font-size: .98rem; text-wrap: pretty; }
.by-math strong { color: var(--sage-ink); }

.by-inside { background: var(--paper-3); }
.by-proof { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: start;
  gap: clamp(1.4rem, 3.2vw, 2.8rem); max-width: 62rem; margin: 0 auto; }
.by-proof-big, .by-zoom { margin: 0; }
.by-page-frame { padding: 7px; border-radius: 6px; background: var(--surface); box-shadow: var(--shadow-lift);
  transform: rotate(-1deg); }
.by-proof-img { display: block; width: 100%; height: auto; border-radius: 3px; }
.by-proof-big figcaption { max-width: 30rem; margin: 1.1rem auto 0; text-align: center; color: var(--ink-2);
  font-size: .93rem; line-height: 1.5; text-wrap: balance; }
.by-zooms { display: grid; gap: 1.1rem; }
.by-zoom { padding: 9px 9px 0; border-radius: var(--radius); background: var(--surface);
  border: 1px solid var(--line); box-shadow: var(--shadow); }
.by-zoom-win { position: relative; overflow: hidden; aspect-ratio: 16 / 7; border-radius: 6px;
  background: var(--surface); }
.by-zoom-img { display: block; width: 152%; max-width: none; height: auto; margin: -2% 0 0 -5%; }
.by-zoom-win::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 32%;
  background: linear-gradient(transparent, var(--surface)); }
.by-zoom figcaption { padding: .65rem .35rem .8rem; color: var(--ink-2); font-size: .9rem; line-height: 1.4; }

.by-who-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.1rem; }
.by-who-card { flex: 0 1 calc((100% - 3.3rem) / 4); padding: 1.35rem 1.3rem 1.25rem;
  border-radius: var(--radius); background: var(--surface); border: 1px solid var(--line);
  border-top: 3px solid var(--by-t, var(--sage)); box-shadow: var(--shadow-sm); }
.by-who-h { margin: .85rem 0 .35rem; font-weight: 700; font-size: 1.08rem; color: var(--ink); }
.by-who-card p:last-child { margin: 0; color: var(--ink-2); line-height: 1.55; }
.by-noyard { max-width: 48rem; margin: clamp(1.6rem, 3vw, 2.2rem) auto 0; padding: 1.15rem 1.5rem;
  text-align: center; border-radius: var(--radius); background: var(--paper-2); border: 1px solid var(--line);
  color: var(--ink-2); font-size: 1.06rem; line-height: 1.65; text-wrap: pretty; }
.by-mid-cta { margin-top: clamp(1.5rem, 3vw, 2rem); text-align: center; }
.by-noyard strong { color: var(--ink); }

.by-now { background: var(--paper-2); }
.by-now-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: start;
  gap: clamp(1.1rem, 2.6vw, 2rem); max-width: 62rem; margin: 0 auto; }
.by-now-grid.by-now-one { grid-template-columns: minmax(0, 1fr); max-width: 46rem; }
.by-month { padding: clamp(1.3rem, 2.6vw, 1.9rem); border-radius: var(--radius); background: var(--surface);
  border: 1px solid var(--line); border-top: 4px solid var(--sage); box-shadow: var(--shadow); }
.by-month-k { margin: 0 0 .7rem; font-family: var(--display); font-size: clamp(1.35rem, 1.1rem + .9vw, 1.7rem);
  line-height: 1.2; color: var(--ink); }
.by-month-t { margin: 0 0 1.1rem; color: var(--ink-2); font-size: 1.06rem; line-height: 1.65; text-wrap: pretty; }
.by-month-a { font-weight: 650; color: var(--sage-ink); text-decoration: underline; text-underline-offset: .2em; }
.by-now-k { margin: 0 0 .8rem; font-size: .8rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  color: var(--c-sky); }
.by-now-note { margin: .85rem 0 0; color: var(--ink-3); font-size: .88rem; line-height: 1.5; }
.by-nights { display: grid; gap: .85rem; max-width: 46rem; margin: 0 auto; padding: 0; list-style: none; }
.by-now-sky .by-nights { max-width: none; }
.by-nights li { display: grid; grid-template-columns: 7.2rem minmax(0, 1fr); gap: 1.1rem; align-items: center;
  padding: 1.05rem 1.3rem; border-radius: var(--radius); background: var(--surface);
  border: 1px solid var(--line); border-left: 4px solid var(--c-sky); box-shadow: var(--shadow-sm); }
.by-night-d { margin: 0; font-family: var(--display); font-size: 1.25rem; line-height: 1.1; color: var(--c-sky); }
.by-night-h { margin: 0 0 .2rem; font-weight: 700; color: var(--ink); }
.by-nights li div p:last-child { margin: 0; color: var(--ink-2); line-height: 1.5; }

.by-sources { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; max-width: 56rem;
  margin: 0 auto; padding: 0; list-style: none; }
.by-sources li { display: flex; gap: .95rem; align-items: flex-start; padding: 1.15rem 1.25rem;
  border-radius: var(--radius); background: var(--surface); border: 1px solid var(--line); }
.by-sources span { color: var(--ink-2); line-height: 1.6; }
.by-sources li:last-child:nth-child(odd) { grid-column: 1 / -1; }

.by-promises { background: var(--paper-2); }
.by-promise-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; }
.by-promise { padding: 1.7rem 1.4rem 1.5rem; text-align: center; border-radius: var(--radius);
  background: var(--surface); border: 1px solid var(--line); box-shadow: var(--shadow-sm); }
.by-promise .by-ic { width: 56px; height: 56px; border-radius: 50%; }
.by-promise .by-ic svg { width: 27px; height: 27px; }
.by-promise-h { margin: .95rem 0 .45rem; font-family: var(--display); font-size: 1.25rem; color: var(--ink); }
.by-promise p:last-child { margin: 0; color: var(--ink-2); line-height: 1.6; }

.by-offer { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); max-width: 60rem;
  margin: 0 auto; overflow: hidden; border-radius: var(--radius-lg); background: var(--surface);
  border: 2px solid var(--sage); box-shadow: var(--shadow-lift); }
.by-offer > .by-member-note { grid-column: 1 / -1; margin: 0; padding: .9rem 1.5rem; text-align: center;
  background: var(--paper-2); }
.by-offer-l { padding: clamp(1.6rem, 3vw, 2.6rem); }
.by-offer-h { margin: .1rem 0 1.25rem; font-family: var(--display); line-height: 1.15; color: var(--ink);
  font-size: clamp(1.65rem, 1.3rem + 1.3vw, 2.3rem); text-wrap: balance; }
.by-offer-recap { display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; }
.by-offer-recap li { display: flex; gap: .65rem; align-items: flex-start; line-height: 1.45; color: var(--ink); }
.by-offer-recap .by-ic { width: 24px; height: 24px; border-radius: 50%; background: var(--sage);
  color: var(--surface); margin-top: .05rem; }
.by-offer-recap .by-ic svg { width: 14px; height: 14px; }
.by-offer-r { display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: clamp(1.6rem, 3vw, 2.4rem); text-align: center; background: var(--paper);
  border-left: 1px solid var(--line); }
.by-offer-was { margin: 0; color: var(--ink-3); font-size: .95rem; }
.by-price-amt { margin: .35rem 0 .3rem; font-family: var(--display); line-height: 1; color: var(--ink);
  font-size: clamp(3rem, 2.2rem + 2.8vw, 4.2rem); }
.by-price-amt span { font-family: var(--sans); font-size: 1.05rem; color: var(--ink-2); }
.by-offer-per { margin: 0 0 1.3rem; color: var(--ink-2); }
.by-join-btn { max-width: 100%; }
.by-offer .by-join-btn, .by-yours .by-join-btn { width: 100%; max-width: 25rem; }
.by-trust-col { flex-direction: column; align-items: flex-start; gap: .55rem; margin: 1.2rem 0 0; }
.by-offer-legal { grid-column: 1 / -1; padding: 1.1rem clamp(1.6rem, 3vw, 2.6rem) 1.3rem;
  border-top: 1px solid var(--line-2); background: var(--surface); }
.by-renew { margin: 0; color: var(--ink-2); font-size: .93rem; line-height: 1.55; }
.by-offer-legal .fineprint { margin: .5rem 0 0; }

.by-faqband { background: var(--paper-2); }
.by-faq { display: grid; gap: .6rem; margin-bottom: 1.2rem; }
.by-q { border-radius: var(--radius-sm); background: var(--surface); border: 1px solid var(--line);
  transition: box-shadow .2s ease, border-color .2s ease; }
.by-q[open] { border-color: var(--sage); box-shadow: var(--shadow-sm); }
.by-q summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 1rem 1.2rem; cursor: pointer; list-style: none; font-weight: 650; color: var(--ink); }
.by-q summary::-webkit-details-marker { display: none; }
.by-q summary::after { content: ""; flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%;
  background: linear-gradient(var(--sage-ink), var(--sage-ink)) center / 11px 2px no-repeat,
    linear-gradient(var(--sage-ink), var(--sage-ink)) center / 2px 11px no-repeat, var(--paper-2);
  transition: transform .2s ease; }
.by-q[open] summary::after { transform: rotate(45deg); }
.by-q summary:focus-visible { outline: none; box-shadow: var(--ring); border-radius: var(--radius-sm); }
.by-q p { margin: 0; padding: 0 1.2rem 1.1rem; color: var(--ink-2); line-height: 1.6; }

.by-final { padding: clamp(2.6rem, 5vw, 4.4rem) 0; text-align: center; background: var(--sage);
  color: var(--surface); }
.by-final h2 { margin: 0 0 .7rem; font-family: var(--display); color: var(--surface); line-height: 1.12;
  font-size: clamp(1.9rem, 1.3rem + 2.2vw, 3rem); text-wrap: balance; }
.by-final p { max-width: 34rem; margin: 0 auto 1.5rem; color: var(--sage-bg); font-size: 1.06rem;
  text-wrap: balance; }
.by-final .by-join-btn { background: var(--surface); border-color: var(--surface); color: var(--sage-ink); }
.by-final .by-nolink { color: var(--sage-bg); }
.by-final .by-trust { justify-content: center; margin-top: 1.2rem; color: var(--sage-bg); }
.by-final .by-trust .by-ic { background: var(--surface); color: var(--sage-ink); }
.by-later-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center;
  gap: clamp(1.2rem, 3vw, 2.6rem); max-width: 60rem; margin: 0 auto; padding: clamp(1.4rem, 3vw, 2.4rem);
  border-radius: var(--radius-lg); background: var(--surface); border: 1px solid var(--line);
  box-shadow: var(--shadow-sm); }
.by-later-copy h2 { margin: 0 0 .6rem; font-family: var(--display); line-height: 1.15; color: var(--ink);
  font-size: clamp(1.5rem, 1.2rem + 1.1vw, 2rem); text-wrap: balance; }
.by-later-copy p:last-child { margin: 0; color: var(--ink-2); line-height: 1.6; }
.by-later .ck-form { display: block; }
.by-later .form-state { margin-top: 12px; }
.by-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: flex;
  align-items: center; justify-content: space-between; gap: .9rem;
  padding: .65rem 1rem calc(.65rem + env(safe-area-inset-bottom));
  background: var(--surface); border-top: 1px solid var(--line); box-shadow: var(--shadow-lift);
  transform: translateY(115%); transition: transform .25s ease; }
.by-sticky.on { transform: none; }
.by-sticky p { margin: 0; line-height: 1.25; font-size: .95rem; color: var(--ink); }
.by-sticky span { display: block; color: var(--ink-2); font-size: .8rem; }
.by-sticky .by-join-btn { width: auto; padding: .7rem 1.4rem; font-size: 1rem; }
@media (min-width: 900px) { .by-sticky { display: none; } }

.by-club { max-width: 44rem; margin: clamp(1.4rem, 3vw, 2rem) auto; padding: 1.2rem 1.3rem 1.1rem;
  border-radius: var(--radius); background: var(--sage-bg); border: 1px solid var(--line); }
.by-club-head { display: flex; align-items: center; gap: .85rem; margin-bottom: .85rem; }
.by-club-head .by-ic { background: var(--surface); }
.by-club-k { margin: 0; font-size: .78rem; font-weight: 700; letter-spacing: .13em;
  text-transform: uppercase; color: var(--sage-ink); }
.by-club-t { margin: .15rem 0 0; color: var(--ink); font-size: 1.04rem; }
.by-club-t strong { color: var(--sage-ink); }
.by-club-list { display: grid; gap: .45rem; margin: 0 0 .9rem; padding: 0; list-style: none;
  color: var(--ink-2); }
.by-club-list li { display: flex; gap: .55rem; align-items: flex-start; line-height: 1.45; }
.by-club-list .by-ic { width: 21px; height: 21px; border-radius: 50%; background: var(--sage);
  color: var(--surface); margin-top: .1rem; }
.by-club-list .by-ic svg { width: 12px; height: 12px; }
.by-club-a { display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem 1rem; margin: 0; }
.by-club-a a { font-weight: 700; color: var(--sage-ink); text-decoration: underline;
  text-underline-offset: .2em; }
.by-club-a span { color: var(--ink-3); font-size: .88rem; }

.shop-member { margin: .35rem 0 .2rem; color: var(--ink-2); font-size: .95rem; }
.shop-member a { font-weight: 700; color: var(--sage-ink); text-decoration: underline;
  text-underline-offset: .18em; }

.by-form { margin: 14px 0; }
.by-form label { display: block; font-weight: 650; margin-bottom: 6px; }
.by-row { display: flex; gap: 8px; flex-wrap: wrap; }
.by-row input { flex: 1 1 14rem; min-width: 0; padding: 11px 13px; border: 1px solid var(--line);
  border-radius: var(--radius-sm); background: var(--surface); font: inherit; color: var(--ink); }
.by-row input:focus { outline: none; box-shadow: var(--ring); }
.by-link { background: none; border: 0; padding: 0; color: var(--sage-ink); text-decoration: underline;
  cursor: pointer; font: inherit; }
.by-card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: clamp(16px, 2.4vw, 22px); margin: 16px 0; box-shadow: var(--shadow-sm); }
.by-card h2 { margin-top: 0; font-size: 1.25rem; }
.by-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.by-files { list-style: none; padding: 0; margin: 12px 0 0; display: grid; gap: 8px; }
.by-files li { padding: 10px 12px; border: 1px solid var(--line-2); border-radius: var(--radius-sm);
  background: var(--paper); }
.by-files li strong { display: block; margin-bottom: 4px; }
.by-files a { display: inline-block; margin: 2px 14px 2px 0; }
.by-card select { padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--radius-sm);
  background: var(--surface); font: inherit; color: var(--ink); max-width: 100%; }
.by-data-out { white-space: pre-wrap; background: var(--paper); border: 1px solid var(--line-2);
  border-radius: var(--radius-sm); padding: 12px; font-size: .88rem; overflow-x: auto; }
.by-del { margin-top: 14px; }
.by-del summary { cursor: pointer; color: var(--ink-2); }
.by-steps { padding-left: 1.2em; display: grid; gap: 10px; margin: 14px 0 22px; }
#by-feed-url { word-break: break-all; }

@media (max-width: 1080px) {
  .by-pain-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .by-who-card { flex-basis: calc((100% - 2.2rem) / 3); }
}
@media (max-width: 900px) {
  .by-hero-grid { grid-template-columns: minmax(0, 1fr); }
  .by-hero-art { max-width: 34rem; width: 100%; margin: 0 auto; }
  .by-steps3, .by-promise-grid { grid-template-columns: minmax(0, 1fr); }
  .by-pain-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .by-who-card { flex-basis: calc((100% - 1.1rem) / 2); }
  .by-now-grid { grid-template-columns: minmax(0, 1fr); max-width: 40rem; }
  .by-sources { grid-template-columns: minmax(0, 1fr); }
  .by-proof { grid-template-columns: minmax(0, 1fr); max-width: 34rem; }
  .by-offer { grid-template-columns: minmax(0, 1fr); max-width: 36rem; }
  .by-offer-r { border-left: 0; border-top: 1px solid var(--line); }
  .by-later-card { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 700px) {
  .by-stat-row { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .by-stat-row li + li { border-left: 0; }
  .by-stat-row li:nth-child(even) { border-left: 1px solid var(--line-2); }
  .by-stat-row li:nth-child(n+3) { border-top: 1px solid var(--line-2); }
}
@media (max-width: 560px) {
  .by-row .btn { width: 100%; }
  .by-hero .by-join-btn, .by-mid-cta .by-join-btn { width: 100%; }
  .by-cta-row { gap: .7rem; }
  .by-ghost { width: 100%; text-align: center; }
  .by-ba-heads { display: none; }
  .by-ba-row { grid-template-columns: minmax(0, 1fr); }
  .by-ba-was { padding-bottom: .15rem; font-size: .92rem; }
  .by-ba-now { padding-top: .5rem; background: none; }
  .by-item { grid-template-columns: auto minmax(0, 1fr); padding: 1rem 1.1rem; gap: .85rem; }
  .by-item .by-item-v { grid-column: 2; }
  .by-item-n { margin: .3rem 0 0; }
  .by-total { padding: 1rem 1.1rem; }
  .by-pain-grid { grid-template-columns: minmax(0, 1fr); }
  .by-who-card { flex-basis: 100%; }
  .by-hero-list li { font-size: 1rem; }
  .by-nights li { grid-template-columns: minmax(0, 1fr); gap: .25rem; }
  .by-zoom-win { aspect-ratio: 4 / 3; }
  .by-zoom-img { width: 175%; }
  .by-later .form-row .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .by-sticky, .by-q, .by-q summary::after { transition: none; }
}
