/* Bad Guys Films — AI Voice & Speech Data landing page
   Intentionally scoped to .bgf-ai so it does not alter the active MATO theme. */

body.page-template-bgf-ai-voice-template,
body.page-template-bgf-ai-voice-template-php { background:#070707; }

.bgf-ai-template-shell { margin:0; padding:0; width:100%; overflow:hidden; background:#070707; }
.bgf-ai { --red:#e31b23; --black:#070707; --panel:#0c0c0c; --line:#252525; --soft:#b7b7b7; background:var(--black); color:#fff; width:100%; overflow:hidden; -webkit-font-smoothing:antialiased; }
.bgf-ai, .bgf-ai * { box-sizing:border-box; }
.bgf-ai a { color:inherit; text-decoration:none; }
.bgf-ai__container { width:min(1240px, calc(100% - 80px)); margin:0 auto; position:relative; z-index:2; }
.bgf-ai__section { padding:105px 0; border-top:1px solid var(--line); }
.bgf-ai h1,.bgf-ai h2,.bgf-ai h3,.bgf-ai p { margin-top:0; }
.bgf-ai h1,.bgf-ai h2,.bgf-ai h3 { color:#fff; font-family:inherit; text-transform:none; letter-spacing:-.035em; }
.bgf-ai p { color:#c5c5c5; font-size:16px; line-height:1.72; }
.bgf-ai__eyebrow { color:var(--red); font-weight:800; font-size:12px; letter-spacing:.12em; margin-bottom:23px; }
.bgf-ai__button { display:inline-flex; align-items:center; gap:22px; background:var(--red); color:#fff!important; padding:17px 23px; font-size:12px; font-weight:900; letter-spacing:.035em; transition:transform .2s ease, background .2s ease; }
.bgf-ai__button:hover { transform:translateY(-2px); background:#ff2830; }
.bgf-ai__button span { font-size:18px; line-height:1; }
.bgf-ai__image-bg { background-image:linear-gradient(120deg,#100b0b,#18110d 48%,#080808); background-image:var(--bgf-img),linear-gradient(120deg,#100b0b,#18110d 48%,#080808); background-size:cover; background-position:center; }
.bgf-ai__veil { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.76) 42%,rgba(0,0,0,.22) 72%,rgba(0,0,0,.35) 100%); z-index:1; }
.bgf-ai__veil--left { background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.7) 43%,rgba(0,0,0,.22) 74%,rgba(0,0,0,.34)); }

/* HERO */
.bgf-ai__hero { min-height:760px; display:flex; align-items:center; position:relative; isolation:isolate; }
.bgf-ai__hero:after { content:""; position:absolute; inset:auto 0 0; height:210px; z-index:1; background:linear-gradient(transparent,var(--black)); }
.bgf-ai__hero-grid { display:grid; grid-template-columns:minmax(0,1.13fr) minmax(300px,.87fr); align-items:center; gap:50px; padding-top:70px; }
.bgf-ai__hero-copy h1 { font-size:clamp(52px,6.2vw,94px); line-height:.94; font-weight:900; margin-bottom:28px; max-width:980px; }
.bgf-ai__lead { max-width:740px; font-size:18px!important; color:#ededed!important; line-height:1.58!important; margin-bottom:31px!important; }
.bgf-ai__micro { margin-top:27px; font-size:10px; letter-spacing:.17em; font-weight:800; color:#bfbfbf; }
.bgf-ai__micro b { color:var(--red); padding:0 12px; }
.bgf-ai__signal { opacity:.72; align-self:stretch; display:flex; align-items:center; justify-content:center; position:relative; min-height:430px; }
.bgf-ai__signal svg { width:100%; overflow:visible; filter:drop-shadow(0 0 12px rgba(227,27,35,.26)); }
.bgf-ai__signal polyline { fill:none; stroke:var(--red); stroke-width:3; vector-effect:non-scaling-stroke; }
.bgf-ai__mic-ring { width:260px; height:260px; border:1px solid rgba(255,255,255,.09); border-radius:50%; position:absolute; box-shadow:0 0 0 45px rgba(255,255,255,.018),0 0 0 90px rgba(255,255,255,.012); }

/* INTRO */
.bgf-ai__split { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:80px; align-items:center; }
.bgf-ai__split--intro { align-items:start; }
.bgf-ai__mega { font-size:clamp(70px,8vw,128px); line-height:.79; font-weight:950; margin:0; }
.bgf-ai__mega em { color:var(--red); font-style:normal; }
.bgf-ai__copy { max-width:660px; }
.bgf-ai__copy h3 { font-size:32px; line-height:1.08; margin-bottom:28px; }
.bgf-ai__copy p:last-child { margin-bottom:0; }
.bgf-ai__copy--large h2 { font-size:clamp(44px,5vw,76px); line-height:.92; font-weight:900; margin-bottom:30px; }
.bgf-ai__accent-text { color:#f44!important; font-weight:700; }

/* SERVICES */
.bgf-ai__services { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#090909; }
.bgf-ai__cards { display:grid; grid-template-columns:repeat(4,1fr); }
.bgf-ai__card { padding:52px 34px 58px; border-right:1px solid var(--line); min-height:390px; }
.bgf-ai__card:first-child { border-left:1px solid var(--line); }
.bgf-ai__card-num { display:flex; align-items:center; gap:16px; font-size:36px; line-height:1; font-weight:900; margin-bottom:31px; }
.bgf-ai__card-num span { display:block; width:37px; height:2px; background:var(--red); }
.bgf-ai__card h3 { font-size:25px; line-height:1.05; text-transform:uppercase; font-weight:900; min-height:76px; }
.bgf-ai__card p { font-size:14px; line-height:1.6; }

/* PHOTOS / FEATURES */
.bgf-ai__feature { padding-bottom:0; }
.bgf-ai__feature .bgf-ai__split { align-items:stretch; }
.bgf-ai__photo { min-height:560px; position:relative; background-color:#15100d; }
.bgf-ai__photo:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.68)); }
.bgf-ai__photo-tag { position:absolute; bottom:23px; left:26px; z-index:2; font-size:10px; letter-spacing:.15em; font-weight:900; }

/* WORKFLOW */
.bgf-ai__workflow { background:#090909; }
.bgf-ai__split--workflow { align-items:start; margin-bottom:74px; }
.bgf-ai__workflow h2,.bgf-ai__ethics h2,.bgf-ai__applications h2,.bgf-ai__faq h2,.bgf-ai__cta h2 { font-size:clamp(46px,5.6vw,82px); line-height:.88; font-weight:950; margin:0; }
.bgf-ai__workflow strong { color:var(--red); }
.bgf-ai__steps { display:flex; align-items:center; justify-content:space-between; gap:10px; border-top:1px solid #242424; padding-top:31px; }
.bgf-ai__step { flex:1; display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; min-width:0; }
.bgf-ai__step b { color:var(--red); font-size:22px; }
.bgf-ai__step span { font-size:11px; font-weight:900; letter-spacing:.03em; white-space:nowrap; }
.bgf-ai__step i { color:var(--red); font-style:normal; font-size:21px; }

/* STUDIO */
.bgf-ai__studio { padding-bottom:34px; }
.bgf-ai__split--studio { align-items:stretch; }
.bgf-ai__pill-row { display:flex; justify-content:space-between; align-items:center; gap:18px; padding-top:31px; font-size:11px; font-weight:900; letter-spacing:.09em; }
.bgf-ai__pill-row i { color:var(--red); font-style:normal; }

/* REMOTE */
.bgf-ai__remote { min-height:590px; position:relative; display:flex; align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.bgf-ai__remote-copy { max-width:650px; padding:110px 0; }
.bgf-ai__remote h2 { font-size:clamp(52px,6.2vw,92px); line-height:.9; font-weight:950; margin-bottom:30px; }
.bgf-ai__remote p { max-width:620px; color:#ddd; }

/* ETHICS / STATS */
.bgf-ai__ethics { background:#090909; }
.bgf-ai__stats { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#080808; }
.bgf-ai__stats-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.bgf-ai__stats-grid > div { padding:48px 28px 50px; border-right:1px solid var(--line); position:relative; }
.bgf-ai__stats-grid > div:first-child { border-left:1px solid var(--line); }
.bgf-ai__stats-grid > div:before { content:""; position:absolute; left:-1px; top:40px; width:2px; height:65px; background:var(--red); }
.bgf-ai__stats-grid b { display:block; font-size:48px; line-height:1; margin-bottom:15px; font-weight:950; }
.bgf-ai__stats-grid b em { color:var(--red); font-style:normal; }
.bgf-ai__stats-grid span { color:#c0c0c0; font-size:13px; line-height:1.45; }

/* APPLICATIONS */
.bgf-ai__applications { padding:78px 0; }
.bgf-ai__application-list { font-size:17px; line-height:1.8; letter-spacing:.08em; font-weight:900; }
.bgf-ai__application-list i { color:var(--red); font-style:normal; padding:0 8px; }

/* VOXCRAFT */
.bgf-ai__voxcraft { background:#080808; }
.bgf-ai__vox-image { min-height:500px; display:flex; align-items:center; justify-content:center; }
.bgf-ai__vox-mark { position:relative; z-index:2; font-size:42px; letter-spacing:.055em; font-weight:900; text-shadow:0 3px 18px #000; }
.bgf-ai__vox-mark em { font-style:normal; color:var(--red); }

/* FAQ */
.bgf-ai__faq { background:#090909; }
.bgf-ai__split--faq { align-items:start; }
.bgf-ai__faq-list { border-top:1px solid #2a2a2a; }
.bgf-ai__faq-item { border-bottom:1px solid #2a2a2a; }
.bgf-ai__faq-item button { width:100%; background:none!important; border:0!important; box-shadow:none!important; border-radius:0!important; color:#fff!important; display:flex; justify-content:space-between; align-items:center; text-align:left; padding:20px 0!important; font-family:inherit; font-size:15px; cursor:pointer; }
.bgf-ai__faq-item button b { font-size:24px; font-weight:300; transition:transform .2s ease; }
.bgf-ai__faq-answer { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.bgf-ai__faq-answer p { padding:0 45px 23px 0; font-size:14px; }
.bgf-ai__faq-item.is-open .bgf-ai__faq-answer { max-height:230px; }
.bgf-ai__faq-item.is-open button b { transform:rotate(45deg); }

/* CTA */
.bgf-ai__cta { padding:92px 0; border-top:1px solid var(--line); background:linear-gradient(110deg,#0a0a0a 0%,#0a0a0a 72%,#160506 100%); }
.bgf-ai__split--cta { align-items:start; }
.bgf-ai__cta-row { display:flex; align-items:center; gap:32px; margin-top:28px; font-size:13px; line-height:1.55; }
.bgf-ai__cta-row > div { color:#c9c9c9; }
.bgf-ai__cta-row > div a { color:#fff; }

/* Theme compatibility: remove common title/breadcrumb wrappers if MATO outputs them above custom template. */
body.page-template-bgf-ai-voice-template .page-title,
body.page-template-bgf-ai-voice-template-php .page-title,
body.page-template-bgf-ai-voice-template .breadcrumbs,
body.page-template-bgf-ai-voice-template-php .breadcrumbs { display:none!important; }

@media (max-width:1100px) {
  .bgf-ai__container { width:min(100% - 50px, 1100px); }
  .bgf-ai__hero-grid { grid-template-columns:1fr; }
  .bgf-ai__signal { display:none; }
  .bgf-ai__cards { grid-template-columns:repeat(2,1fr); }
  .bgf-ai__card:nth-child(3) { border-left:1px solid var(--line); border-top:1px solid var(--line); }
  .bgf-ai__card:nth-child(4) { border-top:1px solid var(--line); }
  .bgf-ai__steps { flex-wrap:wrap; justify-content:flex-start; }
  .bgf-ai__step { flex:0 0 calc(33.333% - 10px); }
  .bgf-ai__step:nth-child(3) i,.bgf-ai__step:nth-child(6) i { display:none; }
  .bgf-ai__stats-grid { grid-template-columns:repeat(2,1fr); }
  .bgf-ai__stats-grid > div:nth-child(3) { border-left:1px solid var(--line); border-top:1px solid var(--line); }
  .bgf-ai__stats-grid > div:nth-child(4) { border-top:1px solid var(--line); }
}

@media (max-width:780px) {
  .bgf-ai__container { width:calc(100% - 36px); }
  .bgf-ai__section { padding:72px 0; }
  .bgf-ai__hero { min-height:720px; }
  .bgf-ai__hero-grid { padding-top:55px; }
  .bgf-ai__hero-copy h1 { font-size:50px; }
  .bgf-ai__lead { font-size:16px!important; }
  .bgf-ai__micro { line-height:1.8; }
  .bgf-ai__split { grid-template-columns:1fr; gap:43px; }
  .bgf-ai__mega { font-size:78px; }
  .bgf-ai__cards { grid-template-columns:1fr; }
  .bgf-ai__card,.bgf-ai__card:first-child,.bgf-ai__card:nth-child(3) { border-left:0; border-right:0; border-top:1px solid var(--line); min-height:auto; }
  .bgf-ai__card:first-child { border-top:0; }
  .bgf-ai__card h3 { min-height:0; }
  .bgf-ai__photo { min-height:420px; }
  .bgf-ai__feature .bgf-ai__split { display:flex; flex-direction:column; }
  .bgf-ai__feature .bgf-ai__photo { order:-1; }
  .bgf-ai__steps { display:grid; grid-template-columns:1fr 1fr; }
  .bgf-ai__step { display:flex; flex:1 1 auto; }
  .bgf-ai__step i { display:none!important; }
  .bgf-ai__pill-row { flex-wrap:wrap; justify-content:flex-start; line-height:1.8; }
  .bgf-ai__remote { min-height:620px; background-position:65% center; }
  .bgf-ai__stats-grid { grid-template-columns:1fr; }
  .bgf-ai__stats-grid > div,.bgf-ai__stats-grid > div:first-child,.bgf-ai__stats-grid > div:nth-child(3) { border-left:0; border-right:0; border-top:1px solid var(--line); }
  .bgf-ai__stats-grid > div:first-child { border-top:0; }
  .bgf-ai__application-list { font-size:14px; }
  .bgf-ai__cta-row { align-items:flex-start; flex-direction:column; }
}

@media (max-width:460px) {
  .bgf-ai__hero-copy h1 { font-size:42px; }
  .bgf-ai__mega { font-size:65px; }
  .bgf-ai__workflow h2,.bgf-ai__ethics h2,.bgf-ai__applications h2,.bgf-ai__faq h2,.bgf-ai__cta h2 { font-size:45px; }
  .bgf-ai__steps { grid-template-columns:1fr; }
  .bgf-ai__button { width:100%; justify-content:space-between; }
}
