html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body.bt-preview { margin: 0; }
.bt { --orange:#ff7d1a; --black:#000; --gray:#646464; --line:#e4e4e0; --paper:#f6f6f2; color:var(--black); background:#fff; font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; text-align:left; }
.bt *, .bt *::before, .bt *::after { box-sizing:border-box; }
.bt :where(h1,h2,h3,p,ul,figure) { margin:0; padding:0; }
.bt :where(h1,h2,h3) { color:inherit; font-family:inherit; font-weight:600; line-height:1.08; letter-spacing:-.045em; }
.bt a { color:inherit; text-decoration:none; }
.bt button,.bt input,.bt select,.bt textarea { font:inherit; }
.bt button,.bt a { -webkit-tap-highlight-color:transparent; }
.bt button { cursor:pointer; }
.bt [hidden] { display:none !important; }
.bt :focus-visible { outline:3px solid var(--orange); outline-offset:5px; }
.bt ::selection { background:var(--orange); color:#000; }
.bt .bt-wrap { width:min(1160px,calc(100% - 96px)); margin-inline:auto; }
.bt .bt-skip { position:absolute; left:16px; top:-100px; padding:12px; background:white; z-index:100; }
.bt .bt-skip:focus { top:12px; }
.bt .bt-header { border-bottom:1px solid var(--line); background:#fff; }
.bt .bt-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:90px; }
.bt .bt-brand { display:flex; flex-direction:column; gap:0; width:174px; flex-shrink:0; }
.bt .bt-brand img { display:block; width:174px; height:auto; }
.bt .bt-brand small { font-size:9px; letter-spacing:.125em; color:var(--gray); text-align:center; margin-top:0; }
.bt .bt-nav { display:flex; align-items:center; gap:32px; font-size:13px; font-weight:500; }
.bt .bt-nav > a:not(.bt-button):hover { text-decoration:underline; text-underline-offset:5px; }
.bt .bt-button { display:inline-flex; justify-content:center; align-items:center; gap:28px; min-height:50px; padding:13px 23px; border:1px solid #000; border-radius:5px; background:#000; color:#fff; font-weight:600; font-size:14px; line-height:1.4; transition:background .18s, transform .18s; }
.bt .bt-button:hover { background:#292929; transform:translateY(-2px); }
.bt .bt-button-orange { color:#000; background:var(--orange); border-color:var(--orange); }
.bt .bt-button-orange:hover { background:#ef6e0b; }
.bt .bt-button-outline { color:#000; background:transparent; border-color:#c9c9c4; }
.bt .bt-button-outline:hover { background:var(--paper); }
.bt .bt-button span[aria-hidden] { font-size:20px; line-height:1; font-weight:400; }
.bt .bt-menu-toggle { background:white; color:#000; border:1px solid var(--line); border-radius:4px; padding:9px 12px; font-size:13px; }
.bt .bt-header .bt-menu-toggle { display:none; }
.bt .bt-eyebrow { font-size:11px; text-transform:uppercase; font-weight:600; letter-spacing:.15em; display:flex; align-items:center; gap:10px; }
.bt .bt-dot { width:6px; height:6px; flex-shrink:0; border-radius:50%; background:var(--orange); }
.bt .bt-hero { padding-top:68px; padding-bottom:48px; }
.bt .bt-hero-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:44px; align-items:center; }
.bt .bt-hero h1 { font-size:clamp(46px,5.3vw,74px); letter-spacing:-.065em; line-height:1.025; margin:27px 0 26px; max-width:650px; }
.bt .bt-hero h1 em { font-style:normal; position:relative; display:inline-block; }
.bt .bt-hero h1 em::after { content:''; position:absolute; bottom:-7px; height:5px; left:0; right:0; background:var(--orange); }
.bt .bt-hero-copy { color:var(--gray); font-size:17px; max-width:425px; line-height:1.65; }
.bt .bt-actions { display:flex; gap:24px; align-items:center; flex-wrap:wrap; margin-top:30px; }
.bt .bt-text-link { font-size:13px; font-weight:600; display:inline-flex; align-items:center; gap:16px; border-bottom:1px solid #aaa; padding:9px 0; }
.bt .bt-text-link:hover { border-color:var(--orange); }
.bt .bt-hero-art { position:relative; min-width:0; }
.bt .bt-hero-art svg { width:100%; height:auto; display:block; }
.bt .bt-art-caption { display:flex; justify-content:space-between; margin-top:15px; color:var(--gray); font:10px 'Courier New',monospace; text-transform:uppercase; letter-spacing:.06em; }
.bt .bt-trustline { display:flex; align-items:center; gap:32px; justify-content:space-between; border-top:1px solid var(--line); padding-top:25px; margin-top:48px; color:var(--gray); font-size:12px; }
.bt .bt-trustline span { display:flex; align-items:center; gap:9px; }
.bt .bt-trustline b { color:#000; font-weight:500; }
.bt .bt-trustline i { font-style:normal; color:#000; }
.bt .bt-section { padding:82px 0; }
.bt .bt-services { background:var(--paper); }
.bt .bt-section-top { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:36px; }
.bt .bt-section-top h2 { font-size:clamp(34px,3.4vw,46px); margin-top:18px; }
.bt .bt-section-top > p { max-width:310px; font-size:14px; color:var(--gray); }
.bt .bt-services-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d8d8d2; border-left:1px solid #d8d8d2; }
.bt .bt-service { padding:27px 27px 24px; border-right:1px solid #d8d8d2; border-bottom:1px solid #d8d8d2; min-height:232px; display:flex; flex-direction:column; transition:background .2s; }
.bt .bt-service:hover { background:#fff; }
.bt .bt-service-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:32px; }
.bt .bt-service-top svg { width:27px; height:27px; stroke:#000; stroke-width:1.4; fill:none; }
.bt .bt-service-top span { font:10px 'Courier New',monospace; color:var(--gray); }
.bt .bt-service h3 { font-size:21px; letter-spacing:-.035em; margin-bottom:12px; }
.bt .bt-service p { font-size:13px; line-height:1.65; color:var(--gray); max-width:285px; }
.bt .bt-service a { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:20px; font-size:11px; font-weight:600; }
.bt .bt-service a span { font-size:20px; }
.bt .bt-ai { background:#101010; color:white; }
.bt .bt-ai-top { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:end; }
.bt .bt-ai h2 { font-size:clamp(36px,4vw,52px); margin:20px 0 0; max-width:470px; }
.bt .bt-ai h2 span { color:var(--orange); }
.bt .bt-ai-intro { color:#bdbdbd; font-size:15px; max-width:420px; }
.bt .bt-ai-intro strong { color:#fff; font-weight:400; }
.bt .bt-usecases { display:flex; gap:8px; flex-wrap:wrap; margin-top:38px; }
.bt .bt-usecases button { color:#c0c0c0; background:transparent; border:1px solid #484848; border-radius:4px; padding:11px 16px; font-size:12px; }
.bt .bt-usecases button[aria-pressed="true"] { color:#000; background:var(--orange); border-color:var(--orange); }
.bt .bt-usecase-content { display:grid; grid-template-columns:1fr 1.1fr; gap:60px; margin-top:24px; padding:32px; border:1px solid #373737; border-radius:6px; align-items:center; min-height:195px; }
.bt .bt-usecase-content small { font:10px 'Courier New',monospace; text-transform:uppercase; color:#aaa; letter-spacing:.08em; }
.bt .bt-usecase-content h3 { font-size:24px; letter-spacing:-.03em; margin:12px 0; }
.bt .bt-usecase-content p { color:#bdbdbd; font-size:13px; max-width:390px; }
.bt .bt-flow { display:flex; align-items:center; gap:13px; font-size:11px; text-align:center; }
.bt .bt-flow-node { flex:1; min-width:0; padding:19px 10px; border:1px solid #555; border-radius:4px; color:#ddd; }
.bt .bt-flow-core { color:#000; background:var(--orange); border-color:var(--orange); padding:26px 10px; font-size:18px; font-weight:700; }
.bt .bt-flow-arrow { color:#aaa; }
.bt .bt-ai-foot { display:flex; justify-content:space-between; gap:24px; align-items:center; margin-top:25px; font-size:12px; color:#bdbdbd; }
.bt .bt-ai-foot a { color:#fff; }
.bt .bt-project-list { border-top:1px solid var(--line); }
.bt .bt-project { display:grid; grid-template-columns:45px 1fr 1fr auto; align-items:center; gap:24px; padding:23px 0; border-bottom:1px solid var(--line); }
.bt .bt-project > span:first-child { color:var(--gray); font:11px 'Courier New',monospace; }
.bt .bt-project h3 { font-size:21px; }
.bt .bt-project p { font-size:13px; color:var(--gray); }
.bt .bt-tag { color:var(--gray); background:var(--paper); border-radius:3px; padding:5px 10px; font-size:10px; }
.bt .bt-more-projects summary { cursor:pointer; font-size:12px; font-weight:600; padding:20px 0; width:fit-content; }
.bt .bt-more-projects summary:hover { color:var(--gray); }
.bt .bt-approach { display:grid; grid-template-columns:1.05fr 1.4fr; gap:85px; padding-top:70px; }
.bt .bt-approach h2 { font-size:36px; margin-top:18px; }
.bt .bt-steps { list-style:none; display:grid; gap:23px; }
.bt .bt-steps li { display:grid; grid-template-columns:27px 1fr; gap:18px; }
.bt .bt-step-num { font:12px 'Courier New',monospace; color:var(--gray); padding-top:4px; }
.bt .bt-steps h3 { font-size:18px; letter-spacing:-.02em; margin-bottom:7px; }
.bt .bt-steps p { font-size:13px; color:var(--gray); }
.bt .bt-contact { background:var(--paper); border-top:1px solid var(--line); }
.bt .bt-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.bt .bt-contact h2 { font-size:clamp(38px,4.5vw,58px); margin:22px 0; }
.bt .bt-contact-copy > p { max-width:355px; color:var(--gray); font-size:15px; }
.bt .bt-contact-links { margin-top:28px; display:flex; flex-direction:column; align-items:start; gap:12px; }
.bt .bt-contact-links > a:not(.bt-button) { font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.bt .bt-contact-links small { color:var(--gray); font-size:12px; max-width:330px; }
.bt .bt-location { display:flex; gap:10px; align-items:center; margin-top:34px; font-size:12px; }
.bt .bt-form { display:grid; grid-template-columns:1fr 1fr; gap:17px; margin:0; }
.bt .bt-form label { display:flex; flex-direction:column; gap:7px; font-size:12px; color:#000; }
.bt .bt-form input,.bt .bt-form select,.bt .bt-form textarea { width:100%; max-width:none; min-width:0; height:auto; padding:12px; border:1px solid #cacac5; border-radius:3px; background:#fff; color:#000; font-size:14px; box-shadow:none; }
.bt .bt-form input::placeholder,.bt .bt-form textarea::placeholder { color:#737373; }
.bt .bt-form textarea { resize:vertical; min-height:91px; }
.bt .bt-full { grid-column:1/-1; }
.bt .bt-form button { width:100%; }
.bt .bt-form button:disabled { background:#d8d8d3; border-color:#d8d8d3; color:#595959; cursor:not-allowed; transform:none; }
.bt .bt-form-note,.bt .bt-form-status { font-size:11px; line-height:1.55; color:var(--gray); }
.bt .bt-form-status:empty { display:none; }
.bt .bt-footer { padding:29px 0; background:#fff; }
.bt .bt-footer-inner { display:flex; gap:25px; justify-content:space-between; align-items:center; }
.bt .bt-footer-brand { font-size:24px; font-weight:700; letter-spacing:-.055em; }
.bt .bt-footer-brand span { color:var(--orange); }
.bt .bt-footer p,.bt .bt-footer a { font-size:11px; color:var(--gray); }
@media (min-width:1500px) { .bt .bt-hero { padding-top:90px; } }
@media (max-width:1000px) { .bt .bt-wrap { width:calc(100% - 64px); } .bt .bt-nav { gap:19px; } .bt .bt-hero-grid { gap:25px; } .bt .bt-hero h1 { font-size:clamp(45px,5.6vw,65px); } .bt .bt-contact-grid { gap:45px; } .bt .bt-ai-top { gap:40px; } .bt .bt-usecase-content { gap:28px; } .bt .bt-approach { gap:45px; } }
@media (max-width:760px) {
 .bt .bt-wrap { width:calc(100% - 40px); }
 .bt .bt-header-inner { min-height:78px; flex-wrap:wrap; gap:0; }
 .bt .bt-brand { width:147px; } .bt .bt-brand img { width:147px; } .bt .bt-brand small { font-size:8px; }
 .bt.bt-js .bt-menu-toggle { display:block; }
 .bt .bt-nav { width:100%; flex-wrap:wrap; gap:16px 24px; padding:18px 0; border-top:1px solid var(--line); }
 .bt.bt-js .bt-nav { display:none; } .bt.bt-js .bt-nav.is-open { display:flex; }
 .bt .bt-nav .bt-button { width:100%; }
 .bt .bt-hero { padding:40px 0 30px; }
 .bt .bt-hero-grid { grid-template-columns:1fr; gap:32px; }
 .bt .bt-hero h1 { font-size:clamp(43px,10.5vw,65px); max-width:560px; margin-top:22px; }
 .bt .bt-hero-copy { font-size:16px; }
 .bt .bt-hero-art { max-width:430px; margin-inline:auto; width:100%; }
 .bt .bt-hero-art svg { max-height:330px; }
 .bt .bt-trustline { flex-wrap:wrap; gap:14px 20px; padding-top:20px; margin-top:29px; font-size:11px; }
 .bt .bt-section { padding:53px 0; }
 .bt .bt-section-top { display:block; margin-bottom:27px; }
 .bt .bt-section-top > p { margin-top:19px; }
 .bt .bt-services-grid { grid-template-columns:1fr 1fr; }
 .bt .bt-service { padding:21px 18px 18px; min-height:246px; }
 .bt .bt-service h3 { font-size:19px; }
 .bt .bt-service-top { margin-bottom:25px; }
 .bt .bt-ai-top,.bt .bt-usecase-content,.bt .bt-contact-grid,.bt .bt-approach { grid-template-columns:1fr; gap:27px; }
 .bt .bt-ai h2 { max-width:440px; }
 .bt .bt-usecase-content { padding:24px 19px; }
 .bt .bt-ai-foot { align-items:start; flex-direction:column; gap:12px; }
 .bt .bt-project { grid-template-columns:26px 1fr auto; gap:12px; padding:22px 0; }
 .bt .bt-project p { grid-column:2/-1; grid-row:2; }
 .bt .bt-project h3 { font-size:19px; }
 .bt .bt-approach { padding-top:45px; gap:31px; }
 .bt .bt-contact-grid { gap:40px; }
 .bt .bt-footer-inner { flex-wrap:wrap; gap:13px 24px; }
 .bt .bt-footer-inner p { order:3; width:100%; }
}
@media (max-width:380px) { .bt .bt-services-grid { grid-template-columns:1fr; } .bt .bt-service { min-height:215px; } .bt .bt-form { grid-template-columns:1fr; } .bt .bt-flow { gap:7px; } .bt .bt-flow-node { font-size:10px; padding-inline:5px; } .bt .bt-flow-core { font-size:16px; } .bt .bt-actions { gap:16px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .bt * { transition:none !important; } }
