/* Team TararBari V18.17 — stable zone layout */
.tb-contact-zone{
 display:flex!important;
 flex-wrap:wrap!important;
 gap:18px!important;
 align-items:stretch!important;
 margin-bottom:20px!important;
}
.tb-contact-zone>.tb-contact-box{
 flex:0 1 var(--tb-box-width,100%)!important;
 width:var(--tb-box-width,100%)!important;
 min-height:var(--tb-box-min-height,0px)!important;
 box-sizing:border-box!important;
}
.tb-contact-middle{
 display:flex!important;
 gap:20px!important;
 align-items:flex-start!important;
 margin-bottom:20px!important;
}
.tb-contact-column{
 display:flex!important;
 flex-direction:column!important;
 gap:18px!important;
 min-width:0!important;
}
.tb-contact-column-left{
 flex:0 1 var(--tb-left-col,38%)!important;
 width:var(--tb-left-col,38%)!important;
}
.tb-contact-column-right{
 flex:1 1 var(--tb-right-col,62%)!important;
 width:var(--tb-right-col,62%)!important;
}
.tb-contact-column>.tb-contact-box{
 width:var(--tb-box-width,100%)!important;
 max-width:100%!important;
 min-height:var(--tb-box-min-height,0px)!important;
 box-sizing:border-box!important;
 align-self:flex-start!important;
}
.tb-contact-social-box{
 padding:16px!important;
 border:1px solid rgba(148,163,184,.18)!important;
 border-radius:14px!important;
 background:color-mix(in srgb,var(--surface,#091623) 94%,transparent)!important;
 text-align:center!important;
}
.tb-contact-social-box .tb-contact-panel-head{margin-bottom:10px!important;text-align:center!important}
.tb-contact-social-inner{display:flex!important;justify-content:center!important}
.tb-contact-team-panel .tb-team-contact-list{
 display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:stretch!important
}
.tb-contact-team-panel .tb-team-contact-card{
 flex:0 1 var(--tb-member-width,100%)!important;
 width:var(--tb-member-width,100%)!important;
 min-height:var(--tb-member-min-height,0px)!important;
 box-sizing:border-box!important
}
.tb-team-contact-no-direct{
 padding:8px 9px!important;border:1px dashed rgba(148,163,184,.20)!important;border-radius:8px!important;
 color:#8297aa!important;font-size:10px!important;line-height:1.4!important
}
@media(max-width:900px){
 .tb-contact-middle{flex-direction:column!important}
 .tb-contact-column-left,.tb-contact-column-right{width:100%!important;flex-basis:100%!important}
 .tb-contact-zone>.tb-contact-box,.tb-contact-column>.tb-contact-box{width:100%!important;flex-basis:100%!important}
 .tb-contact-team-panel .tb-team-contact-card{width:100%!important;flex-basis:100%!important}
}


/* V18.18 — critical resize fix.
   In left/right columns, each box fills its column.
   This prevents old V18.16 saved widths (34%, 64%, etc.) from making
   Team Contacts, Social and Send Message extremely narrow. */
.tb-contact-column > .tb-contact-box{
 width:100%!important;
 max-width:100%!important;
 flex:0 0 100%!important;
}

/* If one middle column is empty, let the other use the full available width. */
.tb-contact-column:empty{
 display:none!important;
}
.tb-contact-middle:has(.tb-contact-column:empty) .tb-contact-column:not(:empty){
 width:100%!important;
 flex:1 1 100%!important;
}

/* Keep the recommended two-column proportion visually balanced. */
.tb-contact-middle{
 width:100%!important;
}

/* Top row remains centered and uses configured card widths. */
.tb-contact-zone-top{
 justify-content:center!important;
}

/* Social box should look compact but use the same column width as Team Contacts. */
.tb-contact-social-box{
 width:100%!important;
}

/* Message box fields must use all available width inside the right column. */
.tb-contact-message-panel .tb-contact-form,
.tb-contact-message-panel .field,
.tb-contact-message-panel input,
.tb-contact-message-panel textarea,
.tb-contact-message-panel .btn-primary{
 width:100%!important;
 box-sizing:border-box!important;
}

@media(max-width:900px){
 .tb-contact-column > .tb-contact-box{
  width:100%!important;
  flex-basis:100%!important;
 }
}
