:root{
    --ink:#FBF7EF;
    --ink-deep:#F1EAD9;
    --surface:#FFFFFF;
    --surface-2:#F3EEE2;
    --gold:#9B7415;
    --gold-bright:#C9911A;
    --signal:#178F68;
    --signal-dim:rgba(23,143,104,0.12);
    --paper:#1B1F2A;
    --muted:#6E7385;
    --line:rgba(27,31,42,0.08);
    --line-strong:rgba(27,31,42,0.16);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--ink);
    color:var(--paper);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  ::selection{background:var(--gold);color:var(--paper);}

  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}

  .wrap{
    max-width:1180px;
    margin:0 auto;
    padding:0 32px;
  }

  .eyebrow{
    font-family:'Space Mono',monospace;
    font-size:12px;
    letter-spacing:0.18em;
    text-transform:uppercase;
    color:var(--gold);
  }

  h1,h2,h3{
    font-family:'Fraunces',serif;
    font-weight:600;
    letter-spacing:-0.01em;
    line-height:1.05;
  }

  /* ---------- Skip link / focus ---------- */
  a:focus-visible, button:focus-visible{
    outline:2px solid var(--gold-bright);
    outline-offset:3px;
  }

  /* ---------- NAV ---------- */
  header.site-nav{
    position:fixed;
    top:0;left:0;right:0;
    z-index:100;
    background:rgba(251,247,239,0.75);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    max-width:1180px;
    margin:0 auto;
    padding:18px 32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .brand{
    font-family:'Fraunces',serif;
    font-weight:700;
    font-size:20px;
    letter-spacing:0.02em;
    display:flex;
    align-items:center;
    gap:10px;
  }
  .brand .dot{
    width:8px;height:8px;border-radius:50%;
    background:var(--signal);
    box-shadow:0 0 0 4px var(--signal-dim);
    animation:pulse 2.4s ease-in-out infinite;
  }
  nav.links{
    display:flex;
    gap:36px;
    font-size:14px;
    color:var(--muted);
  }
  nav.links a:hover{color:var(--paper);}
  .nav-cta{
    font-family:'Space Mono',monospace;
    font-size:12px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    border:1px solid var(--line-strong);
    padding:9px 18px;
    border-radius:2px;
    transition:border-color .2s, color .2s;
  }
  .nav-cta:hover{border-color:var(--gold);color:var(--gold-bright);}
  @media (max-width:820px){
    nav.links{display:none;}
  }

  @keyframes pulse{
    0%,100%{box-shadow:0 0 0 4px var(--signal-dim);}
    50%{box-shadow:0 0 0 8px transparent;}
  }

  /* ---------- HERO ---------- */
  .hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    padding-top:88px;
    overflow:hidden;
  }
  .hero::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
      repeating-linear-gradient(90deg, transparent, transparent 79px, var(--line) 79px, var(--line) 80px);
    -webkit-mask-image:linear-gradient(180deg, transparent, black 30%, black 70%, transparent);
    mask-image:linear-gradient(180deg, transparent, black 30%, black 70%, transparent);
    opacity:0.5;
    pointer-events:none;
  }
  .hero-grid{
    position:relative;
    width:100%;
    display:grid;
    grid-template-columns:1.3fr 0.9fr;
    gap:60px;
    align-items:center;
  }
  @media (max-width:900px){
    .hero-grid{grid-template-columns:1fr;}
  }

  .on-air-pill{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-family:'Space Mono',monospace;
    font-size:12px;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:var(--signal);
    border:1px solid rgba(23,143,104,0.35);
    background:rgba(23,143,104,0.06);
    padding:7px 14px 7px 10px;
    border-radius:100px;
    margin-bottom:28px;
  }
  .on-air-pill .rec{
    width:7px;height:7px;border-radius:50%;
    background:var(--signal);
    animation:pulse 2.4s ease-in-out infinite;
  }

  .hero h1{
    font-size:clamp(34px, 4.8vw, 58px);
    color:var(--paper);
    margin-bottom:26px;
  }
  .hero h1 em{
    font-style:italic;
    color:var(--gold-bright);
  }
  .hero p.lede{
    font-size:18px;
    line-height:1.65;
    color:var(--muted);
    max-width:520px;
    margin-bottom:38px;
  }
  .hero-ctas{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
  }
  .btn-primary{
    background:var(--gold);
    color:var(--paper);
    font-weight:600;
    padding:15px 28px;
    border-radius:2px;
    font-size:15px;
    transition:background .2s, transform .2s;
    display:inline-block;
  }
  .btn-primary:hover{background:var(--gold-bright); transform:translateY(-1px);}
  .btn-ghost{
    border:1px solid var(--line-strong);
    padding:15px 28px;
    border-radius:2px;
    font-size:15px;
    color:var(--paper);
    transition:border-color .2s;
  }
  .btn-ghost:hover{border-color:var(--gold);}

  /* Tuner dial visual */
  .dial{
    position:relative;
    aspect-ratio:1/1.05;
    border:1px solid var(--line-strong);
    border-radius:8px;
    background:linear-gradient(160deg, var(--surface), var(--ink-deep));
    padding:28px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  .dial-label{
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:var(--muted);
    display:flex;
    justify-content:space-between;
  }
  .channel-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:16px 0;
  }
  .channel-name{
    font-family:'Fraunces',serif;
    font-size:26px;
    color:var(--paper);
    line-height:1;
  }
  .channel-meta{
    font-family:'Space Mono',monospace;
    font-size:11px;
    color:var(--muted);
    letter-spacing:0.05em;
    margin-top:6px;
  }
  .channel-status{
    display:flex;
    align-items:center;
    gap:8px;
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--signal);
    white-space:nowrap;
  }
  .level-meter{
    display:flex;
    align-items:flex-end;
    gap:4px;
    height:32px;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    padding:6px 0;
  }
  .level-meter span{
    flex:1;
    background:var(--gold);
    opacity:0.75;
    border-radius:1px;
    animation:levels 1.3s ease-in-out infinite;
  }
  .level-meter span:nth-child(even){background:var(--signal);}
  .level-meter span:nth-child(1){animation-delay:0s;}
  .level-meter span:nth-child(2){animation-delay:.1s;}
  .level-meter span:nth-child(3){animation-delay:.2s;}
  .level-meter span:nth-child(4){animation-delay:.3s;}
  .level-meter span:nth-child(5){animation-delay:.15s;}
  .level-meter span:nth-child(6){animation-delay:.25s;}
  .level-meter span:nth-child(7){animation-delay:.05s;}
  .level-meter span:nth-child(8){animation-delay:.35s;}
  .level-meter span:nth-child(9){animation-delay:.2s;}
  .level-meter span:nth-child(10){animation-delay:.1s;}
  .level-meter span:nth-child(11){animation-delay:.3s;}
  .level-meter span:nth-child(12){animation-delay:0s;}
  @keyframes levels{
    0%,100%{height:18%;}
    50%{height:90%;}
  }
  .now-playing{
    font-family:'Space Mono',monospace;
    font-size:11px;
    color:var(--signal);
    text-align:center;
    letter-spacing:0.05em;
    margin-top:16px;
    line-height:1.5;
  }

  @media (prefers-reduced-motion: reduce){
    .level-meter span, .rec, .brand .dot, .waves span{animation:none;}
  }

  /* ---------- STAT STRIP ---------- */
  .stat-strip{
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:var(--surface);
  }
  .stat-strip .wrap{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
  }
  .stat{
    padding:34px 24px;
    border-left:1px solid var(--line);
  }
  .stat:first-child{border-left:none;}
  .stat .n{
    font-family:'Fraunces',serif;
    font-size:34px;
    color:var(--gold-bright);
  }
  .stat .l{
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--muted);
    margin-top:6px;
  }
  @media (max-width:820px){
    .stat-strip .wrap{grid-template-columns:repeat(2,1fr);}
    .stat:nth-child(3){border-left:none;}
  }

  /* ---------- SECTION HEADERS ---------- */
  section{padding:120px 0;}
  .section-head{
    max-width:640px;
    margin-bottom:64px;
  }
  .section-head .eyebrow{margin-bottom:16px; display:block;}
  .section-head h2{
    font-size:clamp(30px,4vw,44px);
    color:var(--paper);
    margin-bottom:18px;
  }
  .section-head p{
    color:var(--muted);
    font-size:16px;
    line-height:1.7;
  }

  /* ---------- FREQUENCIES (products) ---------- */
  .frequencies{
    background:var(--ink);
  }
  .freq-list{
    border-top:1px solid var(--line);
  }
  .freq-item{
    display:grid;
    grid-template-columns:110px 1fr 200px 28px;
    align-items:center;
    gap:28px;
    padding:28px 0;
    border-bottom:1px solid var(--line);
    transition:background .2s;
    cursor:pointer;
  }
  .freq-item:hover{background:rgba(155,116,21,0.14); border-bottom-color:var(--gold);}
  .freq-num{
    font-family:'Space Mono',monospace;
    font-size:22px;
    color:var(--gold);
    letter-spacing:-0.02em;
  }
  .freq-num sup{font-size:11px;color:var(--muted);}
  .freq-name{
    font-family:'Fraunces',serif;
    font-size:22px;
    font-weight:500;
    color:var(--paper);
    margin-bottom:6px;
  }
  .freq-desc{
    color:var(--muted);
    font-size:14.5px;
    line-height:1.6;
    max-width:520px;
  }
  .freq-tag{
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--signal);
    text-align:right;
  }
  .freq-arrow{
    font-size:18px;
    color:var(--muted);
    text-align:right;
    transition:transform .2s, color .2s;
  }
  .freq-item:hover .freq-arrow{transform:translateX(4px); color:var(--gold-bright);}
  @media (max-width:820px){
    .freq-item{grid-template-columns:60px 1fr; grid-template-areas:"num name" "desc desc" "tag arrow";}
    .freq-num{grid-area:num;}
    .freq-name{grid-area:name;}
    .freq-desc{grid-area:desc; margin-top:8px;}
    .freq-tag{grid-area:tag; text-align:left; margin-top:12px;}
    .freq-arrow{display:none;}
  }

  /* ---------- SERVICES ---------- */
  .services{
    background:var(--surface);
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }
  .service-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
  }
  .service-card{
    background:var(--surface);
    padding:36px 32px;
  }
  .service-card .idx{
    font-family:'Space Mono',monospace;
    font-size:12px;
    color:var(--gold);
    margin-bottom:20px;
  }
  .service-card h3{
    font-size:20px;
    color:var(--paper);
    margin-bottom:12px;
    font-weight:500;
  }
  .service-card p{
    color:var(--muted);
    font-size:14.5px;
    line-height:1.65;
  }
  @media (max-width:820px){
    .service-grid{grid-template-columns:1fr;}
  }

  /* ---------- ABOUT / SIGNAL ORIGIN ---------- */
  .origin{
    display:grid;
    grid-template-columns:0.85fr 1.15fr;
    gap:80px;
    align-items:center;
  }
  @media (max-width:900px){
    .origin{grid-template-columns:1fr; gap:48px;}
  }
  .origin-visual{
    position:relative;
    aspect-ratio:4/5;
    border:1px solid var(--line-strong);
    border-radius:8px;
    background:
      radial-gradient(circle at 30% 20%, rgba(155,116,21,0.12), transparent 55%),
      linear-gradient(160deg, var(--surface), var(--ink-deep));
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
  }
  .origin-visual .waves{
    display:flex;
    gap:6px;
    align-items:flex-end;
    height:80px;
  }
  .origin-visual .waves span{
    width:5px;
    background:var(--gold);
    border-radius:2px;
    animation:wave 1.6s ease-in-out infinite;
    opacity:0.85;
  }
  .origin-visual .waves span:nth-child(odd){background:var(--signal);}
  @keyframes wave{
    0%,100%{height:14px;}
    50%{height:70px;}
  }
  .origin-caption{
    position:absolute;
    bottom:24px;left:24px;right:24px;
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--muted);
    display:flex;
    justify-content:space-between;
  }
  .origin h2{
    font-size:clamp(28px,3.6vw,40px);
    color:var(--paper);
    margin-bottom:24px;
  }
  .origin p{
    color:var(--muted);
    font-size:16px;
    line-height:1.75;
    margin-bottom:20px;
  }
  .origin p strong{color:var(--paper); font-weight:500;}
  .lang-tags{
    display:flex;
    gap:10px;
    margin-top:28px;
    flex-wrap:wrap;
  }
  .lang-tags span{
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    border:1px solid var(--line-strong);
    padding:8px 14px;
    border-radius:100px;
    color:var(--muted);
  }

  /* ---------- CONTACT / SIGN-OFF ---------- */
  .signoff{
    background:var(--ink-deep);
    border-top:1px solid var(--line);
    text-align:center;
  }
  .signoff .eyebrow{display:block; margin-bottom:20px;}
  .signoff h2{
    font-size:clamp(34px,6vw,64px);
    color:var(--paper);
    max-width:760px;
    margin:0 auto 36px;
  }
  .signoff h2 em{font-style:italic; color:var(--gold-bright);}
  .signoff .btn-primary{font-size:16px; padding:17px 36px;}

  footer{
    padding:48px 0;
    border-top:1px solid var(--line);
  }
  .footer-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;
    font-size:13px;
    color:var(--muted);
  }
  .footer-inner .brand{font-size:16px;}
  .foot-links{display:flex; gap:24px;}
  .foot-links a:hover{color:var(--paper);}


/* ---------- BREADCRUMB / BACK ---------- */
.back-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:'Space Mono',monospace;
  font-size:12px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:36px;
  transition:color .2s;
}
.back-link:hover{color:var(--gold-bright);}

/* ---------- PRODUCT HERO ---------- */
.product-hero{
  padding:160px 0 80px;
  border-bottom:1px solid var(--line);
}
.product-kicker{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:24px;
}
.product-chip{
  font-family:'Space Mono',monospace;
  font-size:12px;
  color:var(--gold);
  border:1px solid var(--line-strong);
  padding:5px 12px;
  border-radius:100px;
}
.product-status{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Space Mono',monospace;
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--signal);
}
.product-status .rec{
  width:7px;height:7px;border-radius:50%;
  background:var(--signal);
  box-shadow:0 0 0 4px var(--signal-dim);
  animation:pulse 2.4s ease-in-out infinite;
}
.product-hero h1{
  font-size:clamp(38px,5.5vw,64px);
  color:var(--paper);
  max-width:780px;
  margin-bottom:22px;
}
.product-hero .tagline{
  font-size:18px;
  color:var(--muted);
  max-width:600px;
  line-height:1.65;
  margin-bottom:36px;
}
.product-ctas{display:flex; gap:16px; flex-wrap:wrap;}

/* ---------- PRODUCT BODY ---------- */
.product-body{
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:80px;
  padding:80px 0;
}
@media (max-width:900px){
  .product-body{grid-template-columns:1fr; gap:48px;}
}
.product-body h2{
  font-size:26px;
  color:var(--paper);
  margin-bottom:20px;
}
.product-body p{
  color:var(--muted);
  font-size:16px;
  line-height:1.75;
  margin-bottom:20px;
}
.feature-list{list-style:none;}
.feature-list li{
  display:flex;
  gap:14px;
  padding:16px 0;
  border-top:1px solid var(--line);
  font-size:15px;
  color:var(--paper);
}
.feature-list li:last-child{border-bottom:1px solid var(--line);}
.feature-list li .mark{color:var(--gold); font-family:'Space Mono',monospace;}

.product-panel{
  border:1px solid var(--line-strong);
  border-radius:8px;
  background:linear-gradient(160deg, var(--surface), var(--ink-deep));
  padding:32px;
  align-self:start;
  position:sticky;
  top:110px;
}
.panel-row{
  display:flex;
  justify-content:space-between;
  padding:14px 0;
  border-bottom:1px solid var(--line);
  font-size:14px;
}
.panel-row:last-of-type{border-bottom:none;}
.panel-row .k{color:var(--muted); font-family:'Space Mono',monospace; font-size:12px; text-transform:uppercase; letter-spacing:0.05em;}
.panel-row .v{color:var(--paper); text-align:right;}
.product-panel .btn-primary{width:100%; text-align:center; margin-top:24px;}
.product-panel .btn-ghost{width:100%; text-align:center; margin-top:12px;}

.other-channels{
  border-top:1px solid var(--line);
  padding:80px 0 100px;
}
.other-channels h3{
  font-size:22px;
  color:var(--paper);
  margin-bottom:32px;
}
.chip-row{display:flex; flex-wrap:wrap; gap:12px;}
.chip-link{
  font-family:'Space Mono',monospace;
  font-size:12px;
  letter-spacing:0.05em;
  border:1px solid var(--line-strong);
  padding:10px 16px;
  border-radius:100px;
  color:var(--muted);
  transition:border-color .2s, color .2s;
}
.chip-link:hover{border-color:var(--gold); color:var(--gold-bright);}

/* ---------- CONTACT PAGE ---------- */
.contact-page{
  padding:160px 0 120px;
}
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
}
@media (max-width:900px){
  .contact-grid{grid-template-columns:1fr; gap:56px;}
}
.contact-page h1{
  font-size:clamp(36px,5vw,58px);
  color:var(--paper);
  margin-bottom:20px;
}
.contact-page .lede{color:var(--muted); font-size:17px; line-height:1.7; margin-bottom:40px; max-width:480px;}
.contact-detail{
  display:flex;
  gap:18px;
  padding:20px 0;
  border-top:1px solid var(--line);
}
.contact-detail:last-child{border-bottom:1px solid var(--line);}
.contact-detail .k{
  font-family:'Space Mono',monospace;
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--gold);
  width:120px;
  flex-shrink:0;
  padding-top:2px;
}
.contact-detail .v{color:var(--paper); font-size:15px; line-height:1.6;}
.contact-detail a:hover{color:var(--gold-bright);}

.field-group{margin-bottom:22px;}
.field-group label{
  display:block;
  font-family:'Space Mono',monospace;
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:8px;
}
.field-group input, .field-group textarea{
  width:100%;
  background:var(--surface);
  border:1px solid var(--line-strong);
  border-radius:3px;
  padding:14px 16px;
  color:var(--paper);
  font-family:'Inter',sans-serif;
  font-size:15px;
}
.field-group input:focus, .field-group textarea:focus{
  outline:none;
  border-color:var(--gold);
}
.field-group textarea{min-height:130px; resize:vertical;}
.contact-form button{
  font-family:'Inter',sans-serif;
  font-weight:600;
  background:var(--gold);
  color:var(--paper);
  border:none;
  padding:15px 28px;
  border-radius:2px;
  font-size:15px;
  cursor:pointer;
  transition:background .2s;
}
.contact-form button:hover{background:var(--gold-bright);}

.lang-btn{
  font-family:'Space Mono',monospace;
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  border:1px solid var(--line-strong);
  background:transparent;
  padding:8px 14px;
  border-radius:100px;
  color:var(--muted);
  cursor:pointer;
  transition:border-color .2s, color .2s, background .2s;
}
.lang-btn:hover{border-color:var(--gold); color:var(--gold-bright);}
.lang-btn.active{
  border-color:var(--gold);
  background:rgba(155,116,21,0.12);
  color:var(--gold-bright);
}
html[dir="rtl"] .hero-grid, html[dir="rtl"] .origin, html[dir="rtl"] .product-body{
  direction:rtl;
}
html[dir="rtl"] .freq-item{
  direction:rtl;
}

/* ---------- CHAT WIDGET ---------- */
#bbtekChatBubble{
  position:fixed;
  bottom:24px;
  right:24px;
  width:58px;
  height:58px;
  border-radius:50%;
  background:var(--gold);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 20px rgba(0,0,0,0.15);
  z-index:999;
  transition:transform .2s;
}
#bbtekChatBubble:hover{transform:scale(1.06);}
#bbtekChatBubble svg{width:26px; height:26px;}

#bbtekChatPanel{
  position:fixed;
  bottom:96px;
  right:24px;
  width:360px;
  max-width:calc(100vw - 32px);
  height:480px;
  max-height:calc(100vh - 140px);
  background:var(--surface);
  border:1px solid var(--line-strong);
  border-radius:12px;
  box-shadow:0 12px 40px rgba(0,0,0,0.18);
  display:none;
  flex-direction:column;
  overflow:hidden;
  z-index:999;
}
#bbtekChatPanel.open{display:flex;}

#bbtekChatHeader{
  background:var(--ink-deep);
  padding:16px 18px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
}
#bbtekChatHeader .title{
  font-family:'Fraunces',serif;
  font-size:16px;
  color:var(--paper);
  display:flex;
  align-items:center;
  gap:8px;
}
#bbtekChatHeader .title .dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--signal);
  box-shadow:0 0 0 3px var(--signal-dim);
}
#bbtekChatClose{
  background:none; border:none; color:var(--muted);
  cursor:pointer; font-size:18px; line-height:1;
}
#bbtekChatClose:hover{color:var(--paper);}

#bbtekChatMessages{
  flex:1;
  overflow-y:auto;
  padding:16px 18px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.bbtek-msg{
  font-size:14px;
  line-height:1.55;
  padding:10px 14px;
  border-radius:10px;
  max-width:85%;
}
.bbtek-msg.bot{
  background:var(--surface-2);
  color:var(--paper);
  align-self:flex-start;
  border-bottom-left-radius:2px;
}
.bbtek-msg.user{
  background:var(--gold);
  color:var(--paper);
  align-self:flex-end;
  border-bottom-right-radius:2px;
}
.bbtek-msg.typing{
  color:var(--muted);
  font-family:'Space Mono',monospace;
  font-size:12px;
}

#bbtekChatForm{
  display:flex;
  gap:8px;
  padding:14px;
  border-top:1px solid var(--line);
}
#bbtekChatInput{
  flex:1;
  background:var(--surface);
  border:1px solid var(--line-strong);
  border-radius:100px;
  padding:10px 16px;
  color:var(--paper);
  font-family:'Inter',sans-serif;
  font-size:14px;
}
#bbtekChatInput:focus{outline:none; border-color:var(--gold);}
#bbtekChatSend{
  background:var(--gold);
  border:none;
  border-radius:50%;
  width:38px; height:38px;
  flex-shrink:0;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .2s;
}
#bbtekChatSend:hover{background:var(--gold-bright);}
#bbtekChatSend:disabled{opacity:0.5; cursor:default;}

@media (max-width:480px){
  #bbtekChatPanel{
    right:16px; left:16px; width:auto;
    bottom:88px;
  }
  #bbtekChatBubble{right:16px; bottom:16px;}
}

/* ---------- HERO TAGLINE ---------- */
.hero-tagline{
  margin-top:32px;
  padding-top:24px;
  border-top:1px solid var(--line);
  max-width:480px;
  font-family:'Fraunces',serif;
  font-size:22px;
  font-weight:600;
  line-height:1.35;
  color:var(--paper);
}
.hero-tagline em{
  font-style:italic;
  color:var(--gold-bright);
}
