/* First Byte — lead.css
   Shared styles for the Leak Check offer: hero subline + trust line, the standard lead
   form, partner badges, client results (testimonials) and case-study pages. Loaded on every page after the page's own stylesheet. */

/* ---------- Standard lead form ---------- */
.fld select{font:inherit;font-size:18px;color:#fff;background:transparent;border:0;border-bottom:1px solid var(--line2);padding:10px 28px 12px 0;min-height:48px;outline:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 12px) 22px,calc(100% - 6px) 22px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;transition:border-color .3s;cursor:pointer;width:100%;text-overflow:ellipsis}
.fld select:focus{border-bottom-color:var(--cyan)}
.fld select:invalid{color:#5c5760}
.fld select option{background:#121014;color:#fff}

/* ---------- Hero: offer subline + trust line ---------- */
.cta-sub{margin:16px 0 0;max-width:520px;font-size:15px;line-height:1.5;color:var(--soft,#cfcad2);animation:up 1s .6s cubic-bezier(.2,.8,.2,1) both}
.trust-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:18px 0 0;font-size:14px;color:var(--muted,#8f8a93);letter-spacing:.01em;animation:up 1s .7s cubic-bezier(.2,.8,.2,1) both}
.trust-line b{color:#fff;font-weight:600}
.trust-line .sep{margin-left:10px;opacity:.5}
.g-rating{display:none;align-items:center;gap:6px}
.g-rating.on{display:inline-flex}
.g-rating .stars{color:#ffc93c;letter-spacing:2px;font-size:15px}

/* ---------- Partner logos (inside the awards bar) ---------- */
.awl .pbadge{flex-direction:column;align-items:center;justify-content:center;gap:10px;min-width:118px;min-height:72px;padding:6px 4px}
.awl .pbadge .pb-logo{display:block;height:26px!important;width:auto;max-width:132px;filter:brightness(0) invert(1);opacity:.82;transition:opacity .3s}
.awl .pbadge[data-partner="meta"] .pb-logo,.awl .pbadge[data-partner="tiktok"] .pb-logo{height:22px!important}
.awl .pbadge[data-partner="semrush"] .pb-logo{height:18px!important}
.awl .pbadge[data-partner="klaviyo"] .pb-logo{height:24px!important}
.pbadge small{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted,#8f8a93);white-space:nowrap}
.pbadge:hover .pb-logo{opacity:1}
.awl .pb-official img{height:64px!important;width:auto}

/* ---------- Client results (testimonials) ----------
   Cards marked data-status="draft" are hidden on the live site. Add ?preview=results
   to any URL to see them; flip a card to data-status="approved" once the client signs off. */
.tcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:64px}
.tc{display:flex;flex-direction:column;gap:22px;padding:30px;border:1px solid var(--line,rgba(255,255,255,.09));border-radius:22px;background:linear-gradient(160deg,rgba(1,246,242,.06),transparent 45%),rgba(255,255,255,.02);position:relative}
.tc[data-status="draft"]{display:none}
.show-drafts .tc[data-status="draft"]{display:flex;outline:2px dashed #ffb020;outline-offset:4px}
.show-drafts .tc[data-status="draft"]::before{content:"DRAFT — awaiting client approval";position:absolute;top:-12px;left:22px;padding:3px 10px;border-radius:6px;background:#ffb020;color:#1a1200;font-size:11px;font-weight:700;letter-spacing:.08em}
.tc-stat{font-family:"Funnel Display",sans-serif;font-size:clamp(40px,4.2vw,58px);font-weight:600;letter-spacing:-.04em;line-height:1;color:var(--cyan,#01f6f2)}
.tc-stat small{display:block;margin-top:10px;font-family:"Figtree",system-ui,sans-serif;font-size:14px;font-weight:500;letter-spacing:.02em;color:#fff}
.tc blockquote{margin:0;font-size:17px;line-height:1.6;color:var(--soft,#cfcad2)}
.tc-who{display:flex;align-items:center;gap:14px;margin-top:auto}
.tc-who img,.tc-mono{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:none}
.tc-mono{display:inline-flex;align-items:center;justify-content:center;background:rgba(1,246,242,.12);border:1px solid rgba(1,246,242,.35);color:var(--cyan,#01f6f2);font-weight:700;font-size:16px;letter-spacing:.04em}
.tc-who b{display:block;color:#fff;font-weight:600}
.tc-who small{display:block;margin-top:2px;color:var(--muted,#8f8a93);font-size:13px}
.has-results .qs,.has-results .dots{display:none}
@media (max-width:900px){.tcards{grid-template-columns:1fr}}

/* ---------- Case study CTA row ---------- */
.cs-ctas{display:flex;flex-wrap:wrap;gap:12px 26px;align-items:center}
.cs-more{color:var(--muted,#8f8a93);text-decoration:none;font-size:14px;font-weight:500;border-bottom:1px solid transparent;transition:color .25s,border-color .25s}
.cs-more:hover{color:#fff;border-bottom-color:var(--line2,rgba(255,255,255,.18))}


/* ---------- Case studies index ---------- */
.csl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.csl-card{display:flex;flex-direction:column;gap:14px;padding:32px;border:1px solid var(--line,rgba(255,255,255,.09));border-radius:22px;background:radial-gradient(80% 60% at 100% 0%,rgba(1,246,242,.06),transparent 60%),#121014;color:#fff;text-decoration:none;transition:border-color .3s,transform .4s cubic-bezier(.2,.8,.2,1)}
.csl-card:hover{border-color:rgba(1,246,242,.45);transform:translateY(-3px)}
.csl-card .cs-logo{height:auto!important;max-height:48px;max-width:170px;width:auto;align-self:flex-start;opacity:.9}
.csl-card svg.cs-logo{height:34px!important}
.csl-ind{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted,#8f8a93)}
.csl-card h2{margin:0;font-family:"Funnel Display",sans-serif;font-size:clamp(24px,2.4vw,32px);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.csl-stat{margin-top:8px;font-family:"Funnel Display",sans-serif;font-size:44px;font-weight:600;letter-spacing:-.03em;line-height:1;color:var(--cyan,#01f6f2)}
.csl-sl{color:var(--soft,#cfcad2);font-size:15px}
.csl-go{margin-top:auto;padding-top:10px;font-weight:600;font-size:15px}
.csl-card:hover .csl-go{color:var(--cyan,#01f6f2)}
@media (max-width:820px){.csl-grid{grid-template-columns:1fr}}

/* standalone case-study page: no tab column */
.cs.cs-solo{grid-template-columns:minmax(0,1fr)}
@media (max-width:420px){form[data-lead] button[type="submit"]{font-size:15px!important;padding:0 14px}}

/* Blog sidebar offer box: the button sits in a narrow column, so let it wrap instead of clipping */
.bp-card .btn{white-space:normal;text-align:center;line-height:1.25;padding:12px 16px;gap:8px;font-size:15px;height:auto}
.bp-tbl{overflow-x:auto;margin:28px 0 10px}.bp-tbl table{margin:0;min-width:520px}

/* ---------- Buttons: never clip or overflow their label ----------
   The theme sets .btn to nowrap + overflow:hidden, which cuts off longer labels on phones.
   Buttons may grow to fit and wrap onto two lines; rows of buttons stack when narrow. */
.btn{max-width:100%}
.mid-cta-b,.cta-row,.ct-btns{flex-wrap:wrap}
@media (max-width:767px){
  .btn{white-space:normal;text-align:center;line-height:1.25;height:auto;padding-top:12px;padding-bottom:12px}
  .cta-row .btn,.mid-cta-b .btn,.bp-inline .btn{flex:1 1 100%;justify-content:center}
  .cs-cta{white-space:normal}
}
