/* assets/launch-quality.css */
/* Contact and keyboard refinements. The original animation styles remain intact. */
.bs-contact-widget{min-width:0}
.bs-contact-widget .form-required{font-size:12px;color:#62625e;margin-bottom:18px}
.bs-contact-widget .form-note{font-size:12px;line-height:1.65;color:#62625e}
.bs-contact-widget .form-note a{text-decoration:underline;text-underline-offset:3px}
.bs-contact-widget .project-choices label{min-width:0}
.bs-contact-widget .project-choices span{min-height:44px;display:flex;align-items:center;line-height:1.45}
.bs-contact-widget .form-error{padding:14px 18px;border-left:3px solid #b83c56;background:#fff0f3;color:#721b30;font-size:15px;line-height:1.5;margin-top:18px}
.bs-contact-widget [hidden]{display:none!important}
.bs-contact-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.bs-contact-widget .form-result h3:focus{outline:none}
.bs-contact-widget button[disabled]{opacity:.65;cursor:wait}
.dialog-close{width:44px;height:44px;top:12px;right:12px}
.dialog-inner>.eyebrow{padding-right:36px}
.nav-panel .panel-grid a:focus-visible{outline-offset:-4px}
.closing :focus-visible{outline-color:var(--lime)}
.bs-service-cover :focus-visible{outline-color:var(--lime)}
.bs-editorial-commerce .bs-service-cover :focus-visible{outline-color:var(--purple)}
.bs-not-found-actions{display:flex;flex-wrap:wrap;gap:16px}
.bs-contact-inline,.bs-contact-info{min-width:0}
.bs-contact-inline{scroll-margin-top:110px}
main[tabindex="-1"]:focus{outline:none}
@media(max-width:700px){
  .bs-contact-widget input:not([type=radio]),.bs-contact-widget textarea{font-size:16px;min-height:48px}
  .bs-contact-widget .form-grid{grid-template-columns:1fr;gap:18px}
  .bs-contact-widget .project-choices span,.bs-contact-inline .project-choices span{font-size:12px;padding:11px 10px}
  .bs-contact-widget form>label,.bs-contact-widget .form-grid>label,.bs-contact-widget legend{font-size:12px}
  .bs-contact-widget .form-required{margin-bottom:16px}
  .bs-contact-widget .form-result .result-copy{overflow-wrap:anywhere}
  .menu-toggle{width:44px;height:44px}
  .nav-contact{min-width:44px;min-height:44px}
  .nav-panel{max-height:calc(100dvh - 72px);overscroll-behavior:contain}
  .panel-bottom a{min-height:44px;display:flex;align-items:center;font-size:12px}
  .bs-cover-back{min-height:44px;display:inline-flex;align-items:center;margin-bottom:12px}
  .bs-contact-details a{display:inline-block;padding-block:5px}
}
@media(max-width:360px){.bs-contact-widget .project-choices{grid-template-columns:1fr}}
@media(max-width:380px){.hero-title{font-size:clamp(44px,15.7vw,60px)}}
@media(prefers-reduced-motion:reduce){.bs-scene,.reveal,.showcase,.expertise-row{opacity:1!important;visibility:visible!important;transform:none!important}}

