/* ============================================================
   BOLD TONY — one stylesheet, one request.
   Order: font, tokens, reset, header, page, footer, prose.
   ============================================================ */

/* ---------- 1. TYPEFACE ----------------------------------- */
/* Drop archivo-variable.woff2 into assets/fonts/.
   See assets/fonts/README.txt for where to get it. */
@font-face{
  font-family:"Archivo";
  src:url("fonts/archivo-variable.woff2") format("woff2-variations");
  font-weight:100 900;
  font-stretch:62% 125%;
  font-style:normal;
  font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,
                U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* ---------- 2. TOKENS ------------------------------------- */
:root{
  --bt-ink:#0B0B0D;--bt-char:#16171B;--bt-paper:#FFFFFF;--bt-bone:#ECEDEF;
  --bt-slate:#6A7079;--bt-slate2:#9AA0A8;--bt-line:#D8DBDF;--bt-line-dk:#2C2F35;
  --bt-signal:#FFE500;--bt-signal-dk:#7E7000;
  --bt-sans:"Archivo",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --bt-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;
  --bt-hero:clamp(2.5rem,6.4vw,4.75rem);
  --bt-h2:clamp(1.95rem,4.4vw,3.15rem);
  --bt-h3:clamp(1.08rem,1.9vw,1.28rem);
  --bt-lead:clamp(1.06rem,1.8vw,1.3rem);
  --bt-body:1.0625rem;--bt-sm:0.9375rem;--bt-xs:0.8125rem;--bt-lab:0.72rem;
  --bt-gut:clamp(1.25rem,5vw,2.75rem);--bt-band:clamp(4rem,9.5vw,7.5rem);--bt-max:1220px;
}
@media(min-width:1560px){:root{--bt-max:1340px}}

/* ---------- 3. RESET / BASE ------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bt-paper);color:var(--bt-ink);
  font-family:var(--bt-sans);font-size:var(--bt-body);line-height:1.62;
  font-variation-settings:"wdth" 100,"wght" 400;
  -webkit-font-smoothing:antialiased;overflow-x:clip;
}
img,svg,video,iframe{max-width:100%;display:block}
figure{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
::selection{background:var(--bt-signal);color:var(--bt-ink)}
:where(div,section,article,figure,form,nav,p,h1,h2,h3,h4,ul,ol,dl,li,span,a){min-width:0}
:where(h1,h2,h3,h4){overflow-wrap:break-word}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,
select:focus-visible,textarea:focus-visible,label:focus-within{
  outline:3px solid var(--bt-signal);outline-offset:3px;
}
/* focus ring needs to be visible on the yellow band too */
.bt-band--signal a:focus-visible,.bt-band--signal button:focus-visible{outline-color:var(--bt-ink)}

.bt-skip{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--bt-ink);color:var(--bt-paper);padding:.85rem 1.25rem;
  font-size:var(--bt-sm);font-variation-settings:"wdth" 102,"wght" 700;
}
.bt-skip:focus{left:0}

.bt-wrap{max-width:var(--bt-max);margin-inline:auto;padding-inline:var(--bt-gut)}
.bt-band{padding-block:var(--bt-band)}
.bt-band--tight{padding-block-start:clamp(2rem,4vw,3rem)}
.bt-band--bone{background:var(--bt-bone)}
.bt-band--ink{background:var(--bt-ink);color:var(--bt-paper)}
.bt-band--signal{background:var(--bt-signal)}
.bt-band--ink .bt-lead,.bt-band--ink .bt-p{color:#A8AEB6}
.bt-band--ink .bt-lab{color:var(--bt-slate2)}
.bt-band--signal .bt-lab{color:var(--bt-signal-dk)}
.bt-band--signal .bt-p{color:#4A4400}

/* ============================================================
   4. HEADER
   ============================================================ */
.bt-head{
  background:var(--bt-paper);border-bottom:1px solid var(--bt-line);
  position:relative;z-index:90;
}
.bt-head__in{
  max-width:var(--bt-max);margin-inline:auto;padding:.9rem var(--bt-gut);
  display:flex;align-items:center;justify-content:space-between;gap:1.25rem;
}

.bt-head__logo{display:inline-block;line-height:0;flex:none}
.bt-head__logo img{width:clamp(132px,17vw,178px);height:auto}

.bt-head__nav{display:none}
@media(min-width:1100px){.bt-head__nav{display:block}}
.bt-head__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:clamp(1rem,2.1vw,1.9rem)}
.bt-head__link{
  color:var(--bt-ink);white-space:nowrap;
  font-size:.9375rem;font-variation-settings:"wdth" 102,"wght" 600;letter-spacing:-.005em;
  padding-block:.35rem;border-bottom:3px solid transparent;display:inline-block;
  transition:border-color .15s ease;
}
.bt-head__link:hover,.bt-head__link[aria-current]{border-bottom-color:var(--bt-signal)}
.bt-head__drawer a[aria-current]{box-shadow:inset 4px 0 0 var(--bt-signal);padding-left:.75rem}

.bt-head__acts{display:flex;align-items:center;gap:.85rem;flex:none}
.bt-head__tel{
  display:none;align-items:center;gap:.5rem;color:var(--bt-ink);
  font-family:var(--bt-mono);font-size:.875rem;font-weight:600;white-space:nowrap;
}
@media(min-width:760px){.bt-head__tel{display:inline-flex}}
.bt-head__tel svg{width:1rem;height:1rem;flex:none;color:var(--bt-signal-dk)}
.bt-head__tel:hover{color:var(--bt-signal-dk)}

.bt-head__cta{
  display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;
  background:var(--bt-signal);border:2px solid var(--bt-signal);color:var(--bt-ink);
  font-size:.875rem;font-variation-settings:"wdth" 102,"wght" 700;
  padding:.7rem 1.15rem;transition:background .15s ease,color .15s ease,transform .15s ease;
}
.bt-head__cta svg{width:1em;height:1em;flex:none}
.bt-head__cta:hover,.bt-head__cta:focus-visible{
  background:var(--bt-ink);border-color:var(--bt-ink);color:var(--bt-signal);transform:translateY(-1px);
}

/* mobile drawer, checkbox toggle, no JS required */
.bt-head__check{position:absolute;opacity:0;pointer-events:none}
.bt-head__burger{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:2.9rem;height:2.9rem;border:2px solid var(--bt-ink);background:transparent;cursor:pointer;
}
@media(min-width:1100px){.bt-head__burger{display:none}}
.bt-head__burger svg{width:1.35rem;height:1.35rem;color:var(--bt-ink)}
.bt-head__burger .bt-head__close{display:none}
.bt-head__check:checked ~ .bt-head__in .bt-head__burger .bt-head__open{display:none}
.bt-head__check:checked ~ .bt-head__in .bt-head__burger .bt-head__close{display:block}

.bt-head__drawer{display:none;border-top:1px solid var(--bt-line);background:var(--bt-paper)}
.bt-head__check:checked ~ .bt-head__drawer{display:block}
@media(min-width:1100px){.bt-head__check:checked ~ .bt-head__drawer{display:none}}
.bt-head__drawer-in{max-width:var(--bt-max);margin-inline:auto;padding:.5rem var(--bt-gut) 1.5rem}
.bt-head__drawer ul{list-style:none;margin:0;padding:0}
.bt-head__drawer li{border-bottom:1px solid var(--bt-line)}
.bt-head__drawer ul a{
  display:block;padding:1rem 0;color:var(--bt-ink);
  font-size:1.05rem;font-variation-settings:"wdth" 104,"wght" 700;letter-spacing:-.012em;
}
.bt-head__drawer ul a:hover{background:var(--bt-signal)}
.bt-head__drawer-tel{
  display:inline-flex;align-items:center;gap:.6rem;margin-top:1.25rem;white-space:nowrap;
  font-family:var(--bt-mono);font-size:1rem;font-weight:600;color:var(--bt-ink);
}
.bt-head__drawer-tel svg{width:1.1rem;height:1.1rem;color:var(--bt-signal-dk);flex:none}

/* ============================================================
   5. PAGE COMPONENTS
   ============================================================ */
.bt-lab{
  font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.16em;text-transform:uppercase;
  color:var(--bt-slate);margin:0 0 1.5rem;display:flex;align-items:center;gap:.7rem;
}
.bt-lab::before{content:"";width:1.75rem;height:4px;background:var(--bt-signal);flex:none}
.bt-band--signal .bt-lab::before{background:var(--bt-ink)}

.bt-h1{font-size:var(--bt-hero);line-height:.98;margin:0 0 1.5rem;max-width:15ch;font-variation-settings:"wdth" 112,"wght" 800;letter-spacing:-.028em}
.bt-h2{font-size:var(--bt-h2);line-height:1.04;margin:0 0 1.25rem;max-width:19ch;font-variation-settings:"wdth" 110,"wght" 800;letter-spacing:-.026em}
.bt-h3{font-size:var(--bt-h3);line-height:1.26;margin:0 0 .55rem;font-variation-settings:"wdth" 104,"wght" 700;letter-spacing:-.012em}
.bt-h1,.bt-h2,.bt-h3{color:var(--bt-ink)}
.bt-band--ink :is(.bt-h1,.bt-h2,.bt-h3){color:var(--bt-paper)}
.bt-formcard :is(.bt-h2,.bt-h3){color:var(--bt-ink)}

.bt-lead{font-size:var(--bt-lead);line-height:1.5;color:var(--bt-slate);max-width:52ch;margin:0 0 2.25rem}
.bt-p{max-width:60ch;margin:0 0 1.1rem;color:var(--bt-slate)}
.bt-p:last-child{margin-bottom:0}
.bt-mt{margin-top:2rem}

/* ---------- buttons ---------- */
.bt-acts{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}
.bt-btn{
  display:inline-flex;align-items:center;gap:.6rem;
  font-size:var(--bt-sm);font-variation-settings:"wdth" 102,"wght" 700;
  padding:1rem 1.6rem;border:2px solid var(--bt-ink);color:var(--bt-ink);background:transparent;
  transition:transform .15s ease,background .15s ease,color .15s ease,border-color .15s ease;
}
.bt-btn svg{width:1.05em;height:1.05em;flex:none}
.bt-btn--fill{background:var(--bt-signal);border-color:var(--bt-signal);color:var(--bt-ink)}
.bt-btn--fill:hover,.bt-btn--fill:focus-visible{background:var(--bt-ink);border-color:var(--bt-ink);color:var(--bt-signal);transform:translateY(-2px)}
.bt-btn--out{background:transparent;border-color:var(--bt-ink);color:var(--bt-ink)}
.bt-btn--out:hover,.bt-btn--out:focus-visible{background:var(--bt-ink);border-color:var(--bt-ink);color:var(--bt-paper);transform:translateY(-2px)}
.bt-band--ink .bt-btn--out{color:var(--bt-paper);border-color:var(--bt-line-dk)}
.bt-band--ink .bt-btn--out:hover,.bt-band--ink .bt-btn--out:focus-visible{background:var(--bt-paper);border-color:var(--bt-paper);color:var(--bt-ink)}
.bt-band--signal .bt-btn--fill{background:var(--bt-ink);border-color:var(--bt-ink);color:var(--bt-signal)}
.bt-band--signal .bt-btn--fill:hover{background:var(--bt-paper);border-color:var(--bt-paper);color:var(--bt-ink)}

/* ---------- hero ---------- */
.bt-hero{padding-block:clamp(3rem,7vw,5.25rem) clamp(2.25rem,5vw,3.25rem)}
.bt-hero__grid{display:grid;gap:clamp(2.5rem,5vw,4rem);grid-template-columns:minmax(0,1fr);align-items:center}
@media(min-width:960px){.bt-hero__grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}}
.bt-hero__trust{margin:2rem 0 0;padding-top:1.4rem;border-top:1px solid var(--bt-line)}
.bt-hero__trust p{margin:1.15rem 0 0;font-size:var(--bt-sm);color:var(--bt-slate);max-width:46ch;line-height:1.55}
.bt-hero__trust p b{color:var(--bt-ink);font-variation-settings:"wdth" 104,"wght" 700}

.bt-rating{display:inline-flex;align-items:center;gap:.8rem;width:fit-content;color:var(--bt-ink)}
.bt-rating__stars{display:flex;gap:.16rem;flex:none}
.bt-rating__stars svg{width:1.05rem;height:1.05rem;fill:var(--bt-signal);stroke:var(--bt-signal-dk);stroke-width:1.1}
.bt-rating__t{font-size:var(--bt-sm);line-height:1.3;font-variation-settings:"wdth" 104,"wght" 700}

.bt-proof{background:var(--bt-ink);color:var(--bt-paper);padding:clamp(1.6rem,3.5vw,2.25rem);box-shadow:0 32px 70px -30px rgba(0,0,0,.55)}
.bt-proof__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate2);margin:0 0 1.6rem}
.bt-proof__i+.bt-proof__i{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--bt-line-dk)}
.bt-proof__v{font-size:clamp(2.5rem,5.5vw,3.4rem);line-height:.9;margin:0 0 .35rem;color:var(--bt-signal);font-variation-settings:"wdth" 115,"wght" 800;letter-spacing:-.035em}
.bt-proof__t{margin:0;font-size:var(--bt-sm);font-variation-settings:"wdth" 104,"wght" 700;color:inherit}
.bt-proof__s{margin:.3rem 0 0;font-family:var(--bt-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--bt-slate)}

/* ---------- marquee ---------- */
.bt-mq{overflow:hidden;background:var(--bt-ink);color:var(--bt-paper);padding-block:1.15rem}
.bt-mq__in{display:flex;width:max-content;animation:bt-slide 40s linear infinite}
.bt-mq__grp{display:flex;align-items:center;gap:2.5rem;padding-right:2.5rem}
.bt-mq__i{font-family:var(--bt-mono);font-size:var(--bt-xs);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;display:flex;align-items:center;gap:.7rem;color:#B4BAC2}
.bt-mq__i::before{content:"";width:6px;height:6px;background:var(--bt-signal);flex:none}
@keyframes bt-slide{to{transform:translateX(-50%)}}

/* ---------- services ---------- */
.bt-svc{margin-top:3rem;border-top:1px solid var(--bt-line)}
.bt-svc__i{
  display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;
  padding-block:2rem;border-bottom:1px solid var(--bt-line);
}
@media(min-width:840px){
  .bt-svc__i{grid-template-columns:3.5rem minmax(0,1.1fr) minmax(0,1.4fr) auto;gap:2.5rem;align-items:start}
}
.bt-svc__i--lead{border-left:5px solid var(--bt-signal);padding-left:1.5rem;background:#FFFDF0}
@media(min-width:840px){.bt-svc__i--lead{padding-left:2rem}}
.bt-svc__ico{width:3rem;height:3rem;color:var(--bt-ink)}
.bt-svc__h{margin:0 0 .3rem;font-size:1.35rem;font-variation-settings:"wdth" 108,"wght" 800;letter-spacing:-.022em;line-height:1.1;color:var(--bt-ink)}
.bt-svc__tag{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.13em;text-transform:uppercase;color:var(--bt-signal-dk);display:block;margin-bottom:.5rem}
.bt-svc__p{margin:0;color:var(--bt-slate);font-size:var(--bt-sm);line-height:1.6}
.bt-svc__go{
  font-family:var(--bt-mono);font-size:var(--bt-xs);letter-spacing:.1em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;color:var(--bt-ink);
  font-weight:600;border-bottom:2px solid var(--bt-signal);padding-bottom:2px;
}
.bt-svc__go svg{width:1rem;height:1rem}
.bt-svc__go:hover{background:var(--bt-signal)}

/* ---------- comparison ---------- */
.bt-cmp{margin-top:2.75rem;border:1px solid var(--bt-line);background:var(--bt-paper)}
.bt-cmp__row{display:grid;grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--bt-line)}
.bt-cmp__row:last-child{border-bottom:0}
@media(min-width:900px){.bt-cmp__row{grid-template-columns:minmax(0,.8fr) minmax(0,1.1fr) minmax(0,1.1fr)}}
.bt-cmp__c{padding:1.15rem 1.25rem;border-bottom:1px solid var(--bt-line)}
.bt-cmp__c:last-child{border-bottom:0}
@media(min-width:900px){.bt-cmp__c{border-bottom:0;border-left:1px solid var(--bt-line)}.bt-cmp__c:first-child{border-left:0}}
.bt-cmp__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.13em;text-transform:uppercase;color:var(--bt-slate);margin:0}
.bt-cmp__h{margin:0;font-size:var(--bt-sm);font-variation-settings:"wdth" 104,"wght" 700}
.bt-cmp__t{margin:0;font-size:var(--bt-sm);line-height:1.5;color:var(--bt-slate)}
.bt-cmp__row--head .bt-cmp__c{background:var(--bt-bone)}
.bt-cmp__row--head .bt-cmp__c:last-child{background:var(--bt-signal)}
.bt-cmp__c--win{background:#FFFDF0}
.bt-cmp__c--win .bt-cmp__t{color:var(--bt-ink)}

/* ---------- founders ---------- */
.bt-fnd__pic{margin:clamp(2rem,4vw,3rem) 0 0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;background:var(--bt-signal);line-height:0}
.bt-fnd__pic img{width:100%;height:auto;display:block}
.bt-fnd__names{display:grid;gap:1.75rem;grid-template-columns:minmax(0,1fr);margin-top:clamp(1.5rem,3vw,2.25rem)}
@media(min-width:620px){
  .bt-fnd__pic{grid-template-columns:1fr 1fr;gap:16px}
  .bt-fnd__names{grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.25rem)}
}
.bt-fnd__n{border-top:2px solid var(--bt-ink);padding-top:.9rem}
.bt-fnd__n h3{margin:0 0 .1rem;font-size:1.05rem;font-variation-settings:"wdth" 106,"wght" 700}
.bt-fnd__role{font-family:var(--bt-mono);font-size:var(--bt-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--bt-slate);display:block;margin-bottom:.6rem}
.bt-fnd__n p{margin:0;font-size:var(--bt-sm);color:var(--bt-slate);line-height:1.55}
.bt-fnd__dir{margin-top:2.25rem;padding-top:1.5rem;border-top:1px solid var(--bt-line);font-family:var(--bt-mono);font-size:var(--bt-sm)}
.bt-fnd__dir a{font-weight:600}
.bt-fnd__dir a:hover{background:var(--bt-signal)}

/* ---------- testimonials ---------- */
.bt-quotes{display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr);margin-top:3rem}
@media(min-width:860px){.bt-quotes{grid-template-columns:1fr 1fr;gap:3.25rem}}
.bt-quote{margin:0;border-left:4px solid var(--bt-signal);padding:.15rem 0 .15rem 1.6rem;max-width:60ch}
.bt-quote blockquote{margin:0 0 1.35rem;font-size:clamp(1.1rem,2.1vw,1.32rem);line-height:1.45;font-variation-settings:"wdth" 104,"wght" 600;letter-spacing:-.014em}
.bt-quote figcaption{display:flex;align-items:center;gap:.85rem}
.bt-quote__av{
  width:2.75rem;height:2.75rem;border-radius:50%;flex:none;object-fit:cover;
  background:var(--bt-bone);border:1px solid var(--bt-line);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--bt-mono);font-size:.72rem;font-weight:600;color:var(--bt-slate);letter-spacing:.04em;
}
.bt-band--ink .bt-quote__av{background:var(--bt-char);border-color:var(--bt-line-dk);color:var(--bt-slate2)}
.bt-quote__who b{display:block;font-size:var(--bt-sm);font-variation-settings:"wdth" 104,"wght" 700}
.bt-quote__who span{display:block;font-family:var(--bt-mono);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--bt-slate);margin-top:.2rem}
.bt-band--ink .bt-quote__who span{color:var(--bt-slate2)}

/* ---------- fit filter ---------- */
.bt-chk{list-style:none;margin:0;padding:0;display:grid;gap:.9rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:720px){.bt-chk--2{grid-template-columns:1fr 1fr;column-gap:3rem}}
.bt-chk li{display:flex;gap:.8rem;align-items:flex-start;font-size:var(--bt-sm);line-height:1.55;padding-bottom:.9rem;border-bottom:1px solid var(--bt-line)}
.bt-band--ink .bt-chk li{border-color:var(--bt-line-dk)}
.bt-band--signal .bt-chk li{border-color:rgba(11,11,13,.18)}
.bt-chk li svg{width:1.15rem;height:1.15rem;flex:none;margin-top:.24rem;color:var(--bt-ink)}
.bt-band--ink .bt-chk li svg{color:var(--bt-signal)}
.bt-chk b{font-variation-settings:"wdth" 102,"wght" 700}
.bt-filter{display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr);margin-top:3rem}
@media(min-width:780px){.bt-filter{grid-template-columns:1fr 1fr;gap:3.5rem}}

/* ---------- client tiles ---------- */
.bt-logos__grid{display:grid;gap:10px;margin-top:2.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:560px){.bt-logos__grid{gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:900px){.bt-logos__grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.bt-logos__grid img{
  width:100%;aspect-ratio:1/1;object-fit:cover;display:block;
  border:1px solid var(--bt-line);filter:grayscale(1);opacity:.82;
  transition:opacity .18s ease,transform .18s ease;
}
.bt-logos__grid img:hover{opacity:1;transform:translateY(-3px)}
.bt-logos__n{margin:1.75rem 0 0;font-size:var(--bt-xs);color:var(--bt-slate);line-height:1.55;max-width:64ch}

/* ---------- lead form ---------- */
.bt-cta__grid{display:grid;gap:clamp(2.25rem,5vw,4.5rem);grid-template-columns:minmax(0,1fr)}
@media(min-width:940px){.bt-cta__grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start}}
.bt-form{display:grid;gap:1rem}
.bt-formcard{background:var(--bt-paper);color:var(--bt-ink);padding:clamp(1.4rem,3.2vw,2.1rem);border-top:5px solid var(--bt-signal);box-shadow:0 32px 70px -30px rgba(0,0,0,.65)}
.bt-form__promise{display:flex;gap:.65rem;align-items:flex-start;margin:0 0 .4rem;padding-bottom:1.05rem;border-bottom:1px solid var(--bt-line);font-size:var(--bt-sm);line-height:1.45;color:var(--bt-ink);font-variation-settings:"wdth" 102,"wght" 600}
.bt-form__promise svg{width:1.15rem;height:1.15rem;flex:none;margin-top:.16rem;color:var(--bt-signal-dk)}
.bt-f{display:grid;gap:.4rem}
.bt-f label{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.11em;text-transform:uppercase;color:var(--bt-slate)}
.bt-f input,.bt-f select,.bt-f textarea{
  font-family:inherit;font-size:var(--bt-body);padding:.9rem 1rem;
  border:1px solid var(--bt-line);background:#FAFBFC;color:var(--bt-ink);width:100%;border-radius:0;
}
.bt-f input:hover,.bt-f select:hover,.bt-f textarea:hover{border-color:#B9BEC6}
.bt-f ::placeholder{color:var(--bt-slate2)}
.bt-f textarea{min-height:6.5rem;resize:vertical}
.bt-f2{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:580px){.bt-f2{grid-template-columns:1fr 1fr}}
.bt-turnstile{margin:.25rem 0;min-height:65px}
.bt-formcard :focus-visible{outline:3px solid var(--bt-ink);outline-offset:2px}
.bt-form__n{font-size:var(--bt-sm);color:var(--bt-slate);margin:.3rem 0 0;line-height:1.5}
.bt-form button[disabled]{opacity:.6;cursor:progress}
.bt-hp{position:absolute;left:-9999px}

.bt-direct{display:grid;gap:.85rem;margin-top:2.25rem;padding-top:2.25rem;border-top:1px solid var(--bt-line-dk)}
.bt-direct a{font-family:var(--bt-mono);font-size:var(--bt-sm);font-weight:600;display:inline-flex;align-items:center;gap:.7rem;width:fit-content;color:var(--bt-paper)}
.bt-direct a svg{width:1.1rem;height:1.1rem;color:var(--bt-signal)}
.bt-direct a:hover,.bt-direct a:focus-visible{color:var(--bt-signal)}

/* ============================================================
   6. BLOG / PROSE
   ============================================================ */
.bt-post{padding-block:clamp(2.75rem,6vw,4.5rem) var(--bt-band)}
.bt-post__head{max-width:66ch;margin:0 0 clamp(2rem,4vw,3rem)}
.bt-post__meta{font-family:var(--bt-mono);font-size:var(--bt-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--bt-slate);margin:1.25rem 0 0}
.bt-post__hero{margin:0 0 clamp(2rem,4vw,3rem)}
.bt-post__hero img{width:100%;height:auto}

.bt-prose{max-width:68ch;font-size:1.09rem;line-height:1.68}
.bt-prose > *:first-child{margin-top:0}
.bt-prose p{margin:0 0 1.35rem;color:var(--bt-char)}
.bt-prose h2{font-size:clamp(1.55rem,3.2vw,2.05rem);line-height:1.1;margin:2.75rem 0 1rem;font-variation-settings:"wdth" 108,"wght" 800;letter-spacing:-.022em}
.bt-prose h3{font-size:clamp(1.18rem,2.2vw,1.4rem);line-height:1.2;margin:2.25rem 0 .75rem;font-variation-settings:"wdth" 104,"wght" 700;letter-spacing:-.014em}
.bt-prose h4{font-size:1.05rem;margin:1.85rem 0 .6rem;font-variation-settings:"wdth" 104,"wght" 700}
.bt-prose ul,.bt-prose ol{margin:0 0 1.35rem;padding-left:1.35rem;display:grid;gap:.55rem}
.bt-prose li{color:var(--bt-char)}
.bt-prose li::marker{color:var(--bt-signal-dk)}
.bt-prose a{color:var(--bt-ink);text-decoration:underline;text-decoration-color:var(--bt-signal);text-decoration-thickness:3px;text-underline-offset:3px}
.bt-prose a:hover{background:var(--bt-signal)}
.bt-prose strong,.bt-prose b{font-variation-settings:"wdth" 102,"wght" 700}
.bt-prose blockquote{margin:2rem 0;padding:.15rem 0 .15rem 1.5rem;border-left:4px solid var(--bt-signal);font-size:1.18rem;line-height:1.45;font-variation-settings:"wdth" 104,"wght" 600}
.bt-prose blockquote p:last-child{margin-bottom:0}
.bt-prose figure{margin:2rem 0}
.bt-prose img{width:100%;height:auto}
.bt-prose figcaption{font-family:var(--bt-mono);font-size:var(--bt-xs);color:var(--bt-slate);margin-top:.6rem}
.bt-prose hr{border:0;border-top:1px solid var(--bt-line);margin:2.75rem 0}
.bt-prose code{font-family:var(--bt-mono);font-size:.9em;background:var(--bt-bone);padding:.15em .4em}
.bt-prose pre{background:var(--bt-ink);color:#E6E8EB;padding:1.25rem;overflow-x:auto;margin:2rem 0}
.bt-prose pre code{background:none;padding:0;color:inherit}
.bt-prose table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:var(--bt-sm)}
.bt-prose th,.bt-prose td{border:1px solid var(--bt-line);padding:.7rem .85rem;text-align:left}
.bt-prose th{background:var(--bt-bone);font-variation-settings:"wdth" 104,"wght" 700}

/* archive cards */
.bt-feed{display:grid;gap:2rem;grid-template-columns:minmax(0,1fr);margin-top:3rem}
@media(min-width:720px){.bt-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}}
@media(min-width:1060px){.bt-feed{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bt-card{display:flex;flex-direction:column;border-top:2px solid var(--bt-ink);padding-top:1.1rem}
.bt-card__thumb{margin:0 0 1.1rem;aspect-ratio:16/10;overflow:hidden;background:var(--bt-bone)}
.bt-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.bt-card:hover .bt-card__thumb img{transform:scale(1.03)}
.bt-card__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.12em;text-transform:uppercase;color:var(--bt-slate);margin:0 0 .55rem}
.bt-card__h{font-size:1.22rem;line-height:1.16;margin:0 0 .55rem;font-variation-settings:"wdth" 106,"wght" 700;letter-spacing:-.018em}
.bt-card__h a:hover{background:var(--bt-signal)}
.bt-card__x{margin:0;font-size:var(--bt-sm);color:var(--bt-slate);line-height:1.55}

.bt-pager{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:clamp(2.5rem,5vw,4rem)}
.bt-pager .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;height:2.75rem;
  padding:0 .75rem;border:1px solid var(--bt-line);font-family:var(--bt-mono);font-size:var(--bt-sm);
}
.bt-pager .page-numbers:hover{border-color:var(--bt-ink)}
.bt-pager .page-numbers.current{background:var(--bt-signal);border-color:var(--bt-signal);font-weight:700}

/* 404 / search */
.bt-mini{padding-block:clamp(4rem,10vw,8rem);text-align:left}
.bt-mini .bt-h1{max-width:20ch}

/* ============================================================
   7. FOOTER
   ============================================================ */
.bt-foot{
  background:var(--bt-ink);color:#A8AEB6;
  font-family:var(--bt-sans);font-size:var(--bt-sm);line-height:1.6;
  font-variation-settings:"wdth" 100,"wght" 400;
}
.bt-foot__wrap{max-width:var(--bt-max);margin-inline:auto;padding-inline:var(--bt-gut)}

.bt-foot__cta{border-bottom:1px solid var(--bt-line-dk);padding-block:clamp(2.5rem,5vw,3.5rem)}
.bt-foot__cta-in{display:grid;gap:1.75rem;grid-template-columns:minmax(0,1fr);align-items:center}
@media(min-width:840px){.bt-foot__cta-in{grid-template-columns:minmax(0,1fr) auto;gap:3rem}}
.bt-foot__h{
  margin:0 0 .6rem;color:var(--bt-paper);
  font-size:clamp(1.5rem,3.2vw,2.15rem);line-height:1.08;
  font-variation-settings:"wdth" 110,"wght" 800;letter-spacing:-.024em;max-width:22ch;
}
.bt-foot__sub{margin:0;max-width:52ch;line-height:1.55}
.bt-foot__acts{display:flex;flex-wrap:wrap;gap:.75rem}
.bt-foot__btn{
  display:inline-flex;align-items:center;gap:.55rem;white-space:nowrap;
  font-size:var(--bt-sm);font-variation-settings:"wdth" 102,"wght" 700;
  padding:.95rem 1.5rem;border:2px solid var(--bt-signal);
  background:var(--bt-signal);color:var(--bt-ink);
  transition:background .15s ease,color .15s ease,transform .15s ease;
}
.bt-foot__btn svg{width:1.05em;height:1.05em;flex:none}
.bt-foot__btn--out{background:transparent;border-color:var(--bt-line-dk);color:var(--bt-paper)}
.bt-foot__btn:hover,.bt-foot__btn:focus-visible{background:var(--bt-paper);border-color:var(--bt-paper);color:var(--bt-ink);transform:translateY(-2px)}

.bt-foot__main{padding-block:clamp(2.75rem,5vw,4rem)}
.bt-foot__cols{display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:620px){.bt-foot__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.75rem}}
@media(min-width:980px){.bt-foot__cols{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:3rem}}

.bt-foot__mark{display:inline-block;margin-bottom:1rem;line-height:0}
.bt-foot__mark img{width:150px;height:auto}
.bt-foot__blurb{margin:0 0 1.5rem;max-width:34ch;line-height:1.6}

.bt-foot__k{
  font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;
  color:var(--bt-slate2);margin:0 0 1.15rem;display:flex;align-items:center;gap:.6rem;
}
.bt-foot__k::before{content:"";width:1.25rem;height:3px;background:var(--bt-signal);flex:none}

.bt-foot__list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.bt-foot__list a{color:#B4BAC2;transition:color .15s ease}
.bt-foot__list a:hover{color:var(--bt-signal)}

.bt-foot__contact{display:grid;gap:.75rem;margin:0 0 1.5rem;padding:0;list-style:none}
.bt-foot__contact a,.bt-foot__contact span{
  font-family:var(--bt-mono);font-size:var(--bt-sm);font-weight:600;
  color:var(--bt-paper);display:inline-flex;align-items:flex-start;gap:.65rem;
}
.bt-foot__contact svg{width:1.05rem;height:1.05rem;color:var(--bt-signal);flex:none;margin-top:.18rem}
.bt-foot__contact a:hover{color:var(--bt-signal)}
.bt-foot__addr{font-style:normal;font-family:var(--bt-mono);font-size:var(--bt-xs);line-height:1.7;color:var(--bt-slate2);letter-spacing:.03em}

.bt-foot__rating{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.25rem}
.bt-foot__stars{display:flex;gap:.14rem;flex:none}
.bt-foot__stars svg{width:.95rem;height:.95rem;fill:var(--bt-signal);stroke:var(--bt-signal-dk);stroke-width:1.1}
.bt-foot__rating span{font-size:var(--bt-xs);color:var(--bt-paper);font-variation-settings:"wdth" 104,"wght" 700}
.bt-foot__rating:hover span{color:var(--bt-signal)}

.bt-foot__bar{border-top:1px solid var(--bt-line-dk);padding-block:1.5rem}
.bt-foot__bar-in{display:flex;flex-wrap:wrap;gap:.75rem 1.75rem;align-items:center;justify-content:space-between}
.bt-foot__legal{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}
.bt-foot__bar,.bt-foot__bar a{font-size:var(--bt-xs);color:var(--bt-slate2)}
.bt-foot__bar a:hover{color:var(--bt-signal)}
.bt-foot__bar p{margin:0}

/* ============================================================
   8. SHARED COMPONENTS ADDED BY THE GOOGLE ADS PAGE
   Kept here rather than in a page section because these are
   generic and the service pages will reuse them.
   ============================================================ */

/* ---------- feature grid ---------- */
.bt-grid{display:grid;gap:clamp(2rem,4vw,3rem) clamp(2rem,4vw,3.25rem);grid-template-columns:minmax(0,1fr);margin-top:3.25rem}
@media(min-width:680px){.bt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1020px){.bt-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bt-feat__ico{width:3rem;height:3rem;margin-bottom:1.15rem;color:var(--bt-ink)}
.bt-band--ink .bt-feat__ico{color:var(--bt-paper)}
.bt-feat p{margin:0;color:var(--bt-slate);font-size:var(--bt-sm);line-height:1.62;max-width:36ch}
.bt-band--ink .bt-feat p{color:#A8AEB6}

/* ---------- numbered process ---------- */
.bt-steps{margin-top:3rem;border-top:1px solid var(--bt-line)}
.bt-step{
  display:grid;grid-template-columns:2.75rem minmax(0,1fr);
  column-gap:1rem;row-gap:.5rem;
  padding-block:1.6rem;border-bottom:1px solid var(--bt-line);
}
.bt-step__n{grid-column:1;grid-row:1;font-family:var(--bt-mono);font-size:var(--bt-sm);color:var(--bt-slate);font-weight:600;padding-top:.12rem}
.bt-step__h{grid-column:2;grid-row:1;margin:0;font-size:1.1rem;font-variation-settings:"wdth" 106,"wght" 700;letter-spacing:-.014em;text-wrap:balance}
.bt-step__p{grid-column:2;grid-row:2;margin:0;color:var(--bt-slate);font-size:var(--bt-sm);line-height:1.6}
@media(min-width:880px){
  .bt-step{grid-template-columns:4.5rem minmax(0,1fr) minmax(0,1.3fr);column-gap:2.5rem;row-gap:0;align-items:baseline}
  .bt-step__n{padding-top:0}
  .bt-step__p{grid-column:3;grid-row:1}
}

/* ---------- price columns ---------- */
.bt-price{display:grid;gap:1px;background:var(--bt-ink);border:1px solid var(--bt-ink);margin-top:3rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.bt-price{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:940px){.bt-price{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* two cards rather than three: without this the third track stays empty
   and the ink gap colour shows through as a black slab */
@media(min-width:760px){.bt-price--2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:940px){.bt-price--2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bt-price__c{background:var(--bt-paper);padding:clamp(1.6rem,3.5vw,2.1rem)}
.bt-price__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate);margin:0 0 .8rem}
.bt-price__v{font-size:clamp(1.75rem,3.6vw,2.35rem);font-variation-settings:"wdth" 112,"wght" 800;letter-spacing:-.03em;line-height:1;margin:0}
.bt-price__n{font-size:var(--bt-sm);color:var(--bt-slate);margin:.85rem 0 0;line-height:1.55}

/* ---------- FAQ accordion ---------- */
.bt-faq{margin-top:3rem;border-top:1px solid var(--bt-line)}
.bt-faq details{border-bottom:1px solid var(--bt-line)}
.bt-faq summary{
  cursor:pointer;list-style:none;padding-block:1.4rem;
  font-size:1.04rem;font-variation-settings:"wdth" 104,"wght" 700;letter-spacing:-.012em;
  display:flex;justify-content:space-between;align-items:center;gap:1.5rem;
}
.bt-faq summary::-webkit-details-marker{display:none}
.bt-faq summary::after{content:"+";font-family:var(--bt-mono);font-weight:400;font-size:1.45rem;color:var(--bt-slate);flex:none;line-height:1}
.bt-faq details[open] summary::after{content:"\2212";transform:translateY(-2px)}
.bt-faq__a{padding-bottom:1.6rem;margin:0;color:var(--bt-slate);font-size:var(--bt-sm);line-height:1.65;max-width:64ch}

/* ---------- results panels ---------- */
.bt-res{display:grid;gap:1px;background:var(--bt-line-dk);border:1px solid var(--bt-line-dk);margin-top:3rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:820px){.bt-res{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bt-res__c{background:var(--bt-ink);padding:clamp(1.9rem,4vw,2.75rem);display:flex;flex-direction:column}
.bt-res__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate2);margin:0 0 1.5rem}
.bt-res__v{font-size:clamp(3.25rem,7.5vw,5rem);line-height:.88;margin:0 0 .55rem;color:var(--bt-signal);font-variation-settings:"wdth" 115,"wght" 800;letter-spacing:-.035em}
.bt-res__vs{font-size:var(--bt-body);color:var(--bt-paper);font-variation-settings:"wdth" 104,"wght" 700;margin:0 0 1.15rem;line-height:1.3}
.bt-res__p{font-size:var(--bt-sm);color:#A8AEB6;line-height:1.6;margin:0 0 1.75rem}
.bt-res__f{
  margin:auto 0 0;padding-top:1.1rem;border-top:1px solid var(--bt-line-dk);
  font-family:var(--bt-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--bt-slate);line-height:1.7;
}
/* Dark note block. .bt-res__honest is the original name from the ads page;
   .bt-note is the one to use on anything new. */
.bt-note,.bt-res__honest{
  margin-top:2rem;padding:1.35rem 1.5rem;border-left:4px solid var(--bt-signal);background:var(--bt-char);
  font-size:var(--bt-sm);line-height:1.65;color:#C4CAD2;max-width:70ch;
}
.bt-note b,.bt-res__honest b{color:var(--bt-paper);font-variation-settings:"wdth" 104,"wght" 700}

/* ---------- feedback loop ---------- */
.bt-loop{margin-top:3rem}
.bt-loop__track{display:grid;gap:1px;background:var(--bt-line);border:1px solid var(--bt-line);grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.bt-loop__track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.bt-loop__track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1180px){.bt-loop__track{grid-template-columns:repeat(5,minmax(0,1fr))}}
.bt-loop__s{background:var(--bt-paper);padding:1.35rem 1.25rem}
.bt-loop__s--you{background:#FFFDF0}
.bt-loop__n{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;color:var(--bt-slate);display:block;margin-bottom:.85rem}
.bt-loop__h{margin:0 0 .35rem;font-size:.98rem;line-height:1.22;font-variation-settings:"wdth" 104,"wght" 700}
.bt-loop__p{margin:0;font-size:var(--bt-xs);color:var(--bt-slate);line-height:1.55}
.bt-loop__back{
  display:flex;align-items:center;gap:.9rem;background:var(--bt-signal);
  padding:1rem 1.35rem;border:1px solid var(--bt-ink);border-top:0;
  font-size:var(--bt-sm);line-height:1.45;font-variation-settings:"wdth" 102,"wght" 600;
}
.bt-loop__back svg{width:1.35rem;height:1.35rem;flex:none;color:var(--bt-ink)}

/* ---------- problem / fix columns ---------- */
.bt-waste{display:grid;gap:1px;background:var(--bt-line);border:1px solid var(--bt-line);margin-top:3rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.bt-waste{grid-template-columns:1fr 1fr}}
.bt-waste__c{background:var(--bt-paper);padding:clamp(1.5rem,3vw,2rem)}
.bt-waste__c--good{background:var(--bt-ink);color:var(--bt-paper)}
.bt-waste__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;margin:0 0 1.25rem;color:var(--bt-slate)}
.bt-waste__c--good .bt-waste__k{color:var(--bt-signal)}
.bt-waste ul{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.bt-waste li{display:flex;gap:.75rem;font-size:var(--bt-sm);line-height:1.5;color:var(--bt-slate)}
.bt-waste__c--good li{color:#C4CAD2}
.bt-waste li svg{width:1.05rem;height:1.05rem;flex:none;margin-top:.28rem;color:var(--bt-slate)}
.bt-waste__c--good li svg{color:var(--bt-signal)}

/* ---------- cross link ---------- */
.bt-xlink{
  display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr);align-items:center;
  margin-top:3rem;padding:clamp(1.75rem,3.5vw,2.5rem);border:2px solid var(--bt-ink);
}
@media(min-width:800px){.bt-xlink{grid-template-columns:minmax(0,1fr) auto;gap:2.5rem}}
.bt-xlink h3{margin:0 0 .5rem;font-size:1.25rem;font-variation-settings:"wdth" 108,"wght" 800;letter-spacing:-.02em}
.bt-xlink p{margin:0;font-size:var(--bt-sm);color:var(--bt-slate);line-height:1.6;max-width:56ch}
.bt-band--ink .bt-xlink{border-color:var(--bt-line-dk)}
.bt-band--ink .bt-xlink h3{color:var(--bt-paper)}
.bt-band--ink .bt-xlink p{color:#A8AEB6}

/* ---------- search result mock ---------- */
.bt-serp{border:1px solid var(--bt-line);background:var(--bt-paper);box-shadow:0 24px 60px -24px rgba(11,11,13,.28),0 2px 6px rgba(11,11,13,.05)}
.bt-serp__bar{display:flex;align-items:center;gap:.6rem;padding:.75rem .9rem;border-bottom:1px solid var(--bt-line);background:#F7F8F9}
.bt-serp__q{
  flex:1 1 0;min-width:0;background:var(--bt-paper);border:1px solid var(--bt-line);border-radius:999px;
  padding:.4rem .85rem;font-size:var(--bt-xs);color:var(--bt-ink);
  display:flex;align-items:center;gap:.5rem;
}
.bt-serp__q svg{width:.85rem;height:.85rem;color:var(--bt-slate);flex:none}
.bt-serp__body{padding:1.25rem 1.4rem 1.5rem}
.bt-serp__ad{border-left:4px solid var(--bt-signal);padding-left:.9rem;margin-bottom:1.4rem}
.bt-serp__tag{font-family:var(--bt-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate);display:block;margin-bottom:.3rem}
.bt-serp__t{font-size:1rem;line-height:1.25;color:#1B4CB8;font-variation-settings:"wdth" 102,"wght" 600;margin:0 0 .2rem}
.bt-serp__u{font-family:var(--bt-mono);font-size:.66rem;color:#3F8A4E;margin:0 0 .4rem}
.bt-serp__t,.bt-serp__u{overflow-wrap:anywhere}
.bt-serp__d{font-size:var(--bt-xs);color:var(--bt-slate);line-height:1.45;margin:0}
.bt-serp__rest{display:grid;gap:.9rem;opacity:.4}
.bt-serp__rest div{display:grid;gap:5px}
.bt-serp__rest i{display:block;height:6px;background:var(--bt-line)}
.bt-serp__rest i:first-child{background:#C6D2EA;width:62%;height:8px}
.bt-serp__rest i:nth-child(2){width:88%}
.bt-serp__rest i:nth-child(3){width:70%}

/* ============================================================
   9. COMPONENTS ADDED BY THE WEBSITES & HOSTING PAGE
   ============================================================ */

/* ---------- browser mock ---------- */
.bt-frame{position:relative;padding-bottom:2.5rem;padding-right:.5rem}
.bt-brow{
  border:1px solid var(--bt-line);background:var(--bt-paper);
  box-shadow:0 24px 60px -24px rgba(11,11,13,.28),0 2px 6px rgba(11,11,13,.05);
}
.bt-brow__bar{display:flex;align-items:center;gap:.65rem;padding:.7rem .85rem;border-bottom:1px solid var(--bt-line);background:#F7F8F9}
.bt-brow__dots{display:flex;gap:.35rem;flex:none}
.bt-brow__dots i{width:9px;height:9px;border-radius:50%;background:var(--bt-line);display:block}
.bt-brow__url{
  flex:1 1 0;min-width:0;background:var(--bt-paper);border:1px solid var(--bt-line);border-radius:999px;
  padding:.3rem .75rem;font-family:var(--bt-mono);font-size:.68rem;color:var(--bt-slate);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.45rem;
}
.bt-brow__url svg{width:.7rem;height:.7rem;flex:none;color:#3F8A4E}
.bt-brow__body{padding:1.4rem 1.5rem 1.75rem}
.bt-brow__eyebrow{font-family:var(--bt-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bt-slate);margin:0 0 .7rem}
.bt-brow__h{font-size:clamp(1.05rem,2.2vw,1.4rem);line-height:1.1;font-variation-settings:"wdth" 110,"wght" 800;letter-spacing:-.026em;margin:0 0 .9rem}
.bt-brow__lines{display:grid;gap:6px;margin-bottom:1.15rem}
.bt-brow__lines i{display:block;height:6px;background:var(--bt-line)}
.bt-brow__lines i:nth-child(1){width:92%}
.bt-brow__lines i:nth-child(2){width:78%}
.bt-brow__lines i:nth-child(3){width:85%}
.bt-brow__row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1.15rem}
.bt-brow__fld{border:1px solid var(--bt-line);height:30px;background:#FAFBFB}
.bt-brow__btn{
  background:var(--bt-signal);height:38px;display:flex;align-items:center;justify-content:center;
  font-size:.72rem;font-variation-settings:"wdth" 104,"wght" 700;color:var(--bt-ink);
}
.bt-brow__meta{display:flex;flex-wrap:wrap;gap:1.1rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--bt-line)}
.bt-brow__meta span{font-family:var(--bt-mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--bt-slate)}

.bt-ping{
  position:absolute;left:0;bottom:0;background:var(--bt-ink);color:var(--bt-paper);
  padding:.85rem 1.1rem;display:flex;gap:.75rem;align-items:flex-start;max-width:min(19rem,100%);
  box-shadow:0 18px 40px -18px rgba(11,11,13,.55);
}
.bt-ping svg{width:1.1rem;height:1.1rem;color:var(--bt-signal);flex:none;margin-top:.15rem}
.bt-ping b{display:block;font-size:var(--bt-sm);font-variation-settings:"wdth" 104,"wght" 700}
.bt-ping span{display:block;font-family:var(--bt-mono);font-size:.66rem;letter-spacing:.08em;color:var(--bt-slate2);margin-top:.2rem}

/* ---------- path strip ---------- */
.bt-path{border-top:1px solid var(--bt-line);margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:clamp(2rem,4vw,2.75rem)}
.bt-path__track{display:grid;gap:1.5rem 2rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:600px){.bt-path__track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.bt-path__track{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}}
.bt-node{position:relative}
@media(min-width:1000px){
  .bt-node{padding:0 1.5rem}
  .bt-node:first-child{padding-left:0}
  .bt-node:last-child{padding-right:0}
  .bt-node+.bt-node{border-left:1px solid var(--bt-line)}
}
.bt-node__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate);display:block;margin-bottom:.5rem}
.bt-node__t{margin:0;font-size:var(--bt-sm);line-height:1.45;font-variation-settings:"wdth" 102,"wght" 600}
.bt-node--ours .bt-node__k{color:var(--bt-ink)}
.bt-node--ours .bt-node__k::after{content:" \25CF";color:var(--bt-signal-dk)}
.bt-path__note{
  margin:1.75rem 0 0;padding-top:1.25rem;border-top:4px solid var(--bt-signal);
  font-size:var(--bt-sm);line-height:1.55;max-width:62ch;
}
.bt-path__note b{font-variation-settings:"wdth" 106,"wght" 700}

/* ---------- cascade ---------- */
.bt-casc{display:grid;gap:1px;background:var(--bt-line);border:1px solid var(--bt-line);margin-top:3rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.bt-casc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.bt-casc{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bt-casc__s{background:var(--bt-paper);padding:clamp(1.3rem,2.6vw,1.8rem)}
.bt-casc__s--end{background:var(--bt-signal)}
.bt-casc__n{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;color:var(--bt-slate);display:block;margin-bottom:1rem}
.bt-casc__h{margin:0 0 .4rem;font-size:1rem;line-height:1.24;font-variation-settings:"wdth" 104,"wght" 700}
.bt-casc__p{margin:0;font-size:var(--bt-sm);color:var(--bt-slate);line-height:1.55}
.bt-casc__s--end .bt-casc__n,.bt-casc__s--end .bt-casc__p{color:var(--bt-ink)}

/* ============================================================
   10. COMPONENTS ADDED BY THE LOCAL SEO PAGE
   ============================================================ */

/* ---------- map pack mock ---------- */
.bt-map{border:1px solid var(--bt-line);background:var(--bt-paper);box-shadow:0 24px 60px -24px rgba(11,11,13,.28),0 2px 6px rgba(11,11,13,.05)}
.bt-map__bar{display:flex;align-items:center;gap:.6rem;padding:.75rem .9rem;border-bottom:1px solid var(--bt-line);background:#F7F8F9}
.bt-map__q{flex:1 1 0;min-width:0;background:var(--bt-paper);border:1px solid var(--bt-line);border-radius:999px;padding:.4rem .85rem;font-size:var(--bt-xs);display:flex;align-items:center;gap:.5rem}
.bt-map__q svg{width:.85rem;height:.85rem;color:var(--bt-slate);flex:none}
.bt-map__body{padding:1.1rem 1.25rem 1.4rem}
.bt-map__strip{height:76px;background:linear-gradient(135deg,#E8EBE6 0%,#DDE3DA 50%,#E5E9E2 100%);border:1px solid var(--bt-line);position:relative;margin-bottom:1.1rem}
.bt-map__pin{position:absolute;width:14px;height:14px;background:var(--bt-signal);border:2px solid var(--bt-ink);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}
.bt-map__row{display:flex;gap:.8rem;padding:.7rem 0;border-bottom:1px solid var(--bt-line);align-items:flex-start}
.bt-map__row:last-child{border-bottom:0}
.bt-map__row--you{background:#FFFDF0;box-shadow:inset 4px 0 0 var(--bt-signal);padding-left:.8rem}
.bt-map__rank{font-family:var(--bt-mono);font-size:.66rem;color:var(--bt-slate);flex:none;padding-top:.15rem;width:1rem}
.bt-map__name{font-size:var(--bt-sm);font-variation-settings:"wdth" 102,"wght" 700;margin:0 0 .15rem;line-height:1.25}
.bt-map__row--you .bt-map__name{color:var(--bt-ink)}
.bt-map__meta{font-size:.7rem;color:var(--bt-slate);margin:0;font-family:var(--bt-mono);letter-spacing:.04em}
.bt-map__stars{display:inline-flex;gap:.08rem;vertical-align:middle;margin-right:.35rem}
.bt-map__stars svg{width:.62rem;height:.62rem;fill:#E8A600}

/* ---------- service by area matrix ----------
   Column count comes from --bt-mx-cols on the grid, set per page:
   one label column plus one per area. */
.bt-mx{margin-top:3rem;overflow-x:auto;-webkit-overflow-scrolling:touch}
.bt-mx__grid{display:grid;gap:1px;background:var(--bt-line);border:1px solid var(--bt-line);min-width:640px;grid-template-columns:repeat(var(--bt-mx-cols,7),minmax(0,1fr))}
.bt-mx__c{background:var(--bt-paper);padding:.85rem .75rem;font-size:var(--bt-xs);text-align:center}
.bt-mx__c--h{background:var(--bt-bone);font-family:var(--bt-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.64rem;color:var(--bt-slate)}
.bt-mx__c--r{background:var(--bt-bone);text-align:left;font-variation-settings:"wdth" 102,"wght" 700;font-size:var(--bt-xs);color:var(--bt-ink);white-space:nowrap}
.bt-mx__c--corner{background:var(--bt-ink)}
.bt-mx__dot{width:11px;height:11px;background:var(--bt-signal);border:1px solid var(--bt-signal-dk);margin-inline:auto;display:block}
.bt-mx__note{margin:1.5rem 0 0;font-size:var(--bt-sm);color:var(--bt-slate);line-height:1.6;max-width:64ch}
.bt-mx__note b{color:var(--bt-ink);font-variation-settings:"wdth" 104,"wght" 700}

/* ---------- two-panel timeline ---------- */
.bt-when{display:grid;gap:1px;background:var(--bt-line-dk);border:1px solid var(--bt-line-dk);margin-top:3rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:820px){.bt-when{grid-template-columns:1fr 1fr}}
.bt-when__c{background:var(--bt-ink);padding:clamp(1.75rem,4vw,2.5rem)}
.bt-when__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate2);margin:0 0 1.2rem}
.bt-when__v{font-size:clamp(1.9rem,4vw,2.6rem);line-height:.95;margin:0 0 .8rem;color:var(--bt-signal);font-variation-settings:"wdth" 113,"wght" 800;letter-spacing:-.032em}
.bt-when__p{margin:0;font-size:var(--bt-sm);color:#A8AEB6;line-height:1.6}

/* ---------- case note ---------- */
.bt-case{border-left:5px solid var(--bt-signal);padding:.25rem 0 .25rem 1.75rem;margin-top:3rem;max-width:68ch}
.bt-case__k{font-family:var(--bt-mono);font-size:var(--bt-lab);letter-spacing:.14em;text-transform:uppercase;color:var(--bt-slate);margin:0 0 1rem}
.bt-case p{margin:0 0 1rem;color:var(--bt-slate);line-height:1.65}
.bt-case p:last-child{margin-bottom:0}
.bt-case b{color:var(--bt-ink);font-variation-settings:"wdth" 104,"wght" 700}

/* ============================================================
   11. COMPONENTS ADDED BY THE OUR WORK PAGE
   ============================================================ */

/* A listing page carries more blocks than a sales page, so it runs a
   slightly tighter scale. Overriding the tokens on the wrapper keeps
   every component consistent without touching a single component rule. */
.bt-page--work{
  --bt-hero:clamp(2.4rem,5.8vw,4.25rem);
  --bt-h2:clamp(1.85rem,4vw,2.9rem);
  --bt-band:clamp(3.5rem,8vw,6.5rem);
}
.bt-page--work .bt-h1{max-width:16ch}
.bt-page--work .bt-h2{max-width:21ch}
.bt-page--work .bt-lead{max-width:54ch}

/* ---------- hero stat row ---------- */
.bt-hero__stats{display:grid;gap:1px;background:var(--bt-line);border:1px solid var(--bt-line);margin-top:2.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:760px){.bt-hero__stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bt-hero__s{background:var(--bt-paper);padding:clamp(1.15rem,2.6vw,1.6rem)}
.bt-hero__v{font-size:clamp(1.6rem,3.4vw,2.2rem);line-height:1;margin:0 0 .35rem;font-variation-settings:"wdth" 113,"wght" 800;letter-spacing:-.03em}
.bt-hero__t{margin:0;font-size:var(--bt-xs);color:var(--bt-slate);line-height:1.5;font-family:var(--bt-mono);letter-spacing:.04em}

/* ---------- project entries ---------- */
.bt-proj{border-top:1px solid var(--bt-line);padding-block:clamp(2.5rem,5vw,3.5rem)}
.bt-proj:first-of-type{border-top:0;padding-top:0}
.bt-proj__grid{display:grid;gap:clamp(1.75rem,4vw,3rem);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.bt-proj__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start}}
.bt-proj__shot{margin:0;border:1px solid var(--bt-line);background:var(--bt-bone);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem;overflow:hidden}
.bt-proj__shot img{width:100%;height:100%;object-fit:cover;object-position:top center}
.bt-proj__shot p{font-family:var(--bt-mono);font-size:var(--bt-xs);color:var(--bt-slate);letter-spacing:.06em;line-height:1.7;margin:0;max-width:26ch}
.bt-proj__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none}
.bt-proj__tags li{font-family:var(--bt-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--bt-line);padding:.32rem .6rem;color:var(--bt-slate)}
.bt-proj__tags li.is-live{border-color:var(--bt-ink);background:var(--bt-signal);color:var(--bt-ink);font-weight:600}
.bt-proj__h{margin:0 0 .3rem;font-size:clamp(1.4rem,2.8vw,1.85rem);line-height:1.1;font-variation-settings:"wdth" 110,"wght" 800;letter-spacing:-.024em;color:var(--bt-ink)}
.bt-proj__sub{margin:0 0 1.15rem;font-family:var(--bt-mono);font-size:var(--bt-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--bt-slate)}
.bt-proj__p{margin:0 0 1rem;color:var(--bt-slate);font-size:var(--bt-sm);line-height:1.65;max-width:56ch}
.bt-proj__p:last-of-type{margin-bottom:1.35rem}
.bt-proj__p strong{color:var(--bt-ink);font-variation-settings:"wdth" 102,"wght" 700}
.bt-proj__list{list-style:none;margin:0 0 1.35rem;padding:0;display:grid;gap:.6rem}
.bt-proj__list li{display:flex;gap:.7rem;font-size:var(--bt-sm);line-height:1.5;color:var(--bt-slate)}
.bt-proj__list svg{width:1.05rem;height:1.05rem;flex:none;margin-top:.22rem;color:var(--bt-signal-dk)}
.bt-proj__go{
  font-family:var(--bt-mono);font-size:var(--bt-xs);letter-spacing:.1em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.5rem;color:var(--bt-ink);
  font-weight:600;border-bottom:2px solid var(--bt-signal);padding-bottom:2px;
}
.bt-proj__go svg{width:1rem;height:1rem}
.bt-proj__go:hover{background:var(--bt-signal)}

/* ---------- inline pull quote ---------- */
.bt-pull{
  margin:0 0 1.35rem;border-left:4px solid var(--bt-signal);padding:.1rem 0 .1rem 1.15rem;
  color:var(--bt-ink);font-size:var(--bt-sm);line-height:1.6;max-width:56ch;
}
.bt-pull cite{
  display:block;margin-top:.5rem;font-style:normal;font-family:var(--bt-mono);
  font-size:var(--bt-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--bt-slate);
}

/* ---------- also worked with ---------- */
.bt-also{display:grid;gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2.5rem}
@media(min-width:760px){.bt-also{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bt-also__c{border:1px solid var(--bt-line);padding:1.25rem}
.bt-also__n{margin:0 0 .25rem;font-size:1rem;font-variation-settings:"wdth" 106,"wght" 700}
.bt-also__d{margin:0;font-size:var(--bt-xs);color:var(--bt-slate);line-height:1.5;font-family:var(--bt-mono);letter-spacing:.04em}

/* ---------- simple two-column CTA (no form) ---------- */
.bt-cta{display:grid;gap:1.75rem;grid-template-columns:minmax(0,1fr);align-items:center}
@media(min-width:840px){.bt-cta{grid-template-columns:minmax(0,1fr) auto;gap:3rem}}

/* ============================================================
   12. REDUCED MOTION
   ============================================================ */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important}
  .bt-btn:hover,.bt-head__cta:hover,.bt-foot__btn:hover,.bt-logos__grid img:hover{transform:none!important}
}