/*
 * bautomation.com — theme styles
 *
 * Loaded on the frontend and, via add_editor_style(), inside the block editor, so the editor and the
 * frontend stay in step. Anything expressible as a theme.json property belongs in theme.json instead;
 * what lives here needs selectors or properties theme.json cannot reach — pseudo-elements, sibling
 * relationships, width/display/position, masks, media queries.
 *
 * Run bin/audit-css.php after editing to see what could still move to theme.json.
 */


/* ---------------------------------------------------------------- Document / layout primitives */

html { scrollbar-gutter:stable }

/* ---------------------------------------------------------------- Page banner */

.page-banner :is(h1,
.wp-block-post-title,
.basm-subtitle) { text-shadow:0 2px 10px rgba(0,0,0,0.6) }
.page-banner .basm-subtitle { margin:.6rem 0 0 }
.page-banner .basm-subtitle:empty { display:none }
.page-banner .wp-block-post-title::after {
  content:'';
  display:block;
  width:280px;
  max-width:80%;
  height:3px;
  background:var(--wp--preset--color--orange);
  margin:14px auto 0;
}
.page-banner :is(h1,
.wp-block-post-title,
.wp-block-query-title) { text-wrap:balance }

/* ---------------------------------------------------------------- Navigation */

.wp-block-navigation .wp-block-navigation-item__content {
  color:#666666!important;
  padding:8px 12px;
  font-size:16px;
  line-height:1.5;
}

/* The editor renders submenu parents as <button class="open-on-click">, and core zeroes their padding
   with a more specific selector — so nav items run together in the editor but not on the front end. */
.wp-block-navigation .wp-block-navigation-item.open-on-click button.wp-block-navigation-item__content {
  padding:8px 12px;
}
.wp-block-navigation__submenu-icon { display:none!important }
.wp-block-navigation__container>.wp-block-navigation-item.wp-block-navigation-submenu>.wp-block-navigation-item__content::after {
  content:'';
  display:inline-block;
  width:0;
  height:0;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
  border-top:6px solid currentColor;
  margin-left:7px;
  align-self:center;
  vertical-align:middle;
  position:relative;
  top:-1px;
  opacity:0.9;
}
.wp-block-navigation__container>.wp-block-navigation-item:hover>.wp-block-navigation-item__content {
  background:#007a88!important;
  color:#ffffff!important;
}
.wp-block-navigation__container>.wp-block-navigation-item.current-menu-item>.wp-block-navigation-item__content,
.wp-block-navigation__container>.wp-block-navigation-item.current-menu-ancestor>.wp-block-navigation-item__content {
  background:#007a88!important;
  color:#ffffff!important;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item>.wp-block-navigation-item__content {
  background:#ff9a00!important;
  color:#ffffff!important;
  box-shadow:none;
}
.wp-block-navigation__submenu-container {
  background:#007a88!important;
  box-shadow:2px 4px 5px -3px rgba(0,0,0,0.85);
  border:0!important;
  left:0!important;
  width:250px!important;
  min-width:250px;
  max-width:250px;
  padding:0;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color:#ffffff!important;
  padding:6.4px 24px 6.4px 12.8px!important;
  line-height:1.4;
}
.wp-block-navigation__submenu-container .wp-block-navigation-submenu>.wp-block-navigation-item__content::after {
  content:'';
  display:inline-block;
  width:0;
  height:0;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  border-left:5px solid currentColor;
  margin-left:7px;
  margin-right:0;
  align-self:center;
  vertical-align:middle;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
  color:#ffffff!important;
  background:#ff9a00!important;
}
.wp-block-navigation__submenu-container .wp-block-navigation-submenu:hover>.wp-block-navigation-item__content {
  color:#ffffff!important;
  background:#ff9a00!important;
}
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
  background:#007a88!important;
  left:100%!important;
  top:0!important;
  min-width:250px;
}
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background:#ff9a00!important }
.wp-block-navigation__responsive-container-open {
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  color:#141f2b;
  padding:12px 4px;
  background:transparent!important;
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
}
.wp-block-navigation__responsive-container-open svg { display:none!important }
.wp-block-navigation__responsive-container-open::before {
  content:'';
  display:block;
  width:22px;
  height:2.5px;
  border-radius:2px;
  background:currentColor;
  box-shadow:0 -7px 0 currentColor,0 7px 0 currentColor;
}
.wp-block-navigation__responsive-container-open::after { content:'Menu' }
.wp-block-navigation__responsive-container-open:hover,
.wp-block-navigation__responsive-container-open:focus {
  color:#141f2b!important;
  background:transparent!important;
}
.wp-block-navigation__responsive-container-close {
  color:#141f2b;
  padding:10px;
}
.wp-block-navigation__responsive-container-close svg {
  width:26px;
  height:26px;
  fill:currentColor;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding:1.25rem 1.5rem 2.5rem!important }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
  gap:0!important;
  padding:0!important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container>.wp-block-navigation-item {
  width:100%;
  margin-top:14px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  color:#141f2b!important;
  background:transparent!important;
  padding:5px 0!important;
  font-size:17px!important;
  font-weight:600;
  display:block;
  width:100%;
  box-sizing:border-box;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container>.wp-block-navigation-item:hover>.wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu:hover>.wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover {
  background:transparent!important;
  color:#141f2b!important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
  background:transparent!important;
  box-shadow:none!important;
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  position:static!important;
  padding:2px 0 0 1.25rem!important;
  border:0!important;
  opacity:1!important;
  visibility:visible!important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { margin-top:0!important }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color:#5a6775!important;
  padding:5px 0!important;
  font-size:15px!important;
  font-weight:400;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after { display:none!important }
header .wp-block-navigation__container { margin-left:-12px }

/* Unregistered, the editor never offers this class. */
.wp-block-post-content p.is-style-pull-quote {
  max-width:26rem;
  margin-inline:auto;
  font-size:1rem;
  line-height:2;
  font-style:italic;
}

/* ---------------------------------------------------------------- Lists */

ul.wp-block-list {
  list-style:none;
  padding-left:1.4em;
}
ul.wp-block-list>li { position:relative }
ul.wp-block-list>li::before {
  content:'';
  position:absolute;
  left:-1.15em;
  top:calc(0.5lh - 4px);
  width:0;
  height:0;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  border-left:6px solid #ff9a00;
}
ul.wp-block-list>li:has(>:is(h2,h3,h4,h5,h6):first-child)::before { content:none }
ul.wp-block-list>li>:is(h2,h3,h4,h5,h6):first-child { position:relative }
ul.wp-block-list>li>:is(h2,h3,h4,h5,h6):first-child::before {
  content:'';
  position:absolute;
  left:-1.15em;
  top:calc(0.5lh - 4px);
  width:0;
  height:0;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  border-left:6px solid #ff9a00;
}
/* Unregistered, the editor never offers this class. */
ul.wp-block-list.is-style-divided {
  --basm-divide:1.5rem;
  padding-left:0;
}
ul.wp-block-list.is-style-divided>li { padding-left:1.4em }
ul.wp-block-list.is-style-divided>li::before { left:0.25em }
ul.wp-block-list.is-style-divided>li+li {
  border-top:1px solid #dbdbdb;
  margin-top:var(--basm-divide);
  padding-top:var(--basm-divide);
}
/* Divider padding pushes the marker off the item's first line. */
ul.wp-block-list.is-style-divided>li+li::before { top:calc(var(--basm-divide) + 0.5lh - 4px) }
ul.wp-block-list.is-style-divided>li:last-child {
  border-bottom:1px solid #dbdbdb;
  padding-bottom:var(--basm-divide);
}

ol.wp-block-list {
  list-style:decimal;
  padding-left:1.6em;
}
ol.wp-block-list>li { position:relative }
ol.wp-block-list>li::marker {
  color:#ff9a00;
  font-weight:700;
}
.wp-block-list>li+li { margin-top:4px }

/* ---------------------------------------------------------------- Tables */

.wp-block-table table {
  border-collapse:collapse;
  width:100%;
}
.wp-block-table th {
  background:transparent;
  border:0;
  border-bottom:2px solid #dbdbdb;
  padding:8px 12px;
  text-align:left;
  color:#333333;
}
.wp-block-table td {
  border:0;
  border-bottom:1px solid #dbdbdb;
  padding:8px 12px;
}

/* ---------------------------------------------------------------- Headings / section labels */

.wp-block-heading.is-style-section-label {
  font-size:1.3rem;
  font-weight:700;
  text-transform:uppercase;
  color:#666666;
  padding-bottom:1.35rem;
}
.wp-block-heading.is-style-section-label.has-text-align-center {
  font-size:1.5rem;
  padding-bottom:0;
}
.wp-block-heading.is-style-section-label:not(.has-text-align-center)::after {
  content:'';
  display:block;
  width:250px;
  max-width:100%;
  height:4px;
  background:var(--wp--preset--color--orange);
  margin-top:.7rem;
}
.basm-hero .wp-block-heading { text-shadow:0 2px 10px rgba(0,0,0,0.6) }

/* ---------------------------------------------------------------- Home: headlines grid */

.basm-headlines .wp-block-post-title,
.basm-headlines .wp-block-post-title a {
  color:#ffffff!important;
  text-decoration:none;
  line-height:1.5;
  text-transform:none;
  font-weight:700;
  font-size:16px;
}
.basm-headlines .wp-block-query {
  max-width:1200px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.basm-headlines .wp-block-post-template {
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:1.5rem!important;
  align-items:start;
  width:100%!important;
  max-width:100%!important;
}
.basm-headlines .wp-block-post-template>li {
  width:auto!important;
  max-width:none!important;
  text-align:center;
  min-width:0;
  position:relative;
  padding:16px;
  transition:background-color .1s ease-out;
}
.basm-headlines .wp-block-post-title a::after {
  content:'';
  position:absolute;
  inset:0;
}
.basm-headlines .wp-block-post-template>li:hover,
.basm-headlines .wp-block-post-template>li:focus-within { background:#1fb9ca }
.basm-headlines .wp-block-post-title {
  width:100%;
  word-break:normal;
}
.basm-headlines .wp-block-post-title a {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  text-overflow:ellipsis;
}
.basm-headlines .wp-block-post-template>li::before {
  content:'';
  display:block;
  width:64px;
  height:64px;
  margin:0 auto 1rem;
  background-color:#ffffff;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
}
.basm-headlines .wp-block-post-template>li:nth-child(1)::before {
  -webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='13' height='14' rx='1'/><path d='M16 8h4v9a2 2 0 0 1-2 2H5'/><path d='M6 8h7M6 11h7M6 14h5'/></svg>");
  mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='13' height='14' rx='1'/><path d='M16 8h4v9a2 2 0 0 1-2 2H5'/><path d='M6 8h7M6 11h7M6 14h5'/></svg>");
}
.basm-headlines .wp-block-post-template>li:nth-child(2)::before {
  -webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><path d='M2 5.5A2.5 2.5 0 0 1 4.5 3h9A2.5 2.5 0 0 1 16 5.5v5A2.5 2.5 0 0 1 13.5 13H8l-4 3.5V13h-.5A1.5 1.5 0 0 1 2 11.5z'/><path d='M18 8h1.5A2.5 2.5 0 0 1 22 10.5v5A2.5 2.5 0 0 1 19.5 18H19v3l-3.5-3H12a2.5 2.5 0 0 1-2.3-1.5h4.8A4.5 4.5 0 0 0 18 12z'/></svg>");
  mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><path d='M2 5.5A2.5 2.5 0 0 1 4.5 3h9A2.5 2.5 0 0 1 16 5.5v5A2.5 2.5 0 0 1 13.5 13H8l-4 3.5V13h-.5A1.5 1.5 0 0 1 2 11.5z'/><path d='M18 8h1.5A2.5 2.5 0 0 1 22 10.5v5A2.5 2.5 0 0 1 19.5 18H19v3l-3.5-3H12a2.5 2.5 0 0 1-2.3-1.5h4.8A4.5 4.5 0 0 0 18 12z'/></svg>");
}
.basm-headlines .wp-block-post-template>li:nth-child(3)::before {
  -webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='18' height='18' rx='2'/><path d='M8 12.5l3 3 5.5-6'/></svg>");
  mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='18' height='18' rx='2'/><path d='M8 12.5l3 3 5.5-6'/></svg>");
}
.basm-headlines .wp-block-post-template>li:nth-child(4)::before {
  -webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><path d='M5 3h2v18H5z'/><path d='M8 4h11l-2 4 2 4H8z'/></svg>");
  mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><path d='M5 3h2v18H5z'/><path d='M8 4h11l-2 4 2 4H8z'/></svg>");
}
.basm-headlines .wp-block-post-template>li:nth-child(5)::before {
  -webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><rect x='2' y='4' width='6' height='4' rx='1'/><rect x='10' y='4.75' width='12' height='2.5' rx='1'/><rect x='2' y='10' width='6' height='4' rx='1'/><rect x='10' y='10.75' width='12' height='2.5' rx='1'/><rect x='2' y='16' width='6' height='4' rx='1'/><rect x='10' y='16.75' width='12' height='2.5' rx='1'/></svg>");
  mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><rect x='2' y='4' width='6' height='4' rx='1'/><rect x='10' y='4.75' width='12' height='2.5' rx='1'/><rect x='2' y='10' width='6' height='4' rx='1'/><rect x='10' y='10.75' width='12' height='2.5' rx='1'/><rect x='2' y='16' width='6' height='4' rx='1'/><rect x='10' y='16.75' width='12' height='2.5' rx='1'/></svg>");
}
.basm-headlines .wp-block-post-template>li:hover::before,
.basm-headlines .wp-block-post-template>li:focus-within::before { background-color:#102237 }
.basm-headlines .basm-headline-icon {
  display:block;
  margin:0 auto 1rem;
  color:#ffffff;
  line-height:0;
}
.basm-headlines .basm-headline-icon svg {
  width:64px;
  height:64px;
  display:block;
  margin:0 auto;
  stroke-width:1.5;
}
.basm-headlines .wp-block-post-template>li:has(.basm-headline-icon)::before { display:none }
.basm-headlines .wp-block-post-template>li:hover .basm-headline-icon,
.basm-headlines .wp-block-post-template>li:focus-within .basm-headline-icon { color:#102237 }
.basm-headlines a,
.wp-block-post-title a { text-decoration:none }

/* ---------------------------------------------------------------- Home: hero, cards, tabs, quotes */

.basm-cards .wp-block-column {
  text-align:center;
  display:flex;
  flex-direction:column;
}
.basm-cards .wp-block-column .wp-block-buttons {
  justify-content:center;
  margin-top:auto;
  padding-top:1.5rem;
}
.basm-cards img {
  width:100%;
  height:175px;
  object-fit:scale-down;
  object-position:center;
}
.basm-hero .wp-block-cover__background {
  background:linear-gradient(90deg,rgba(16,35,55,0) 0%,rgba(16,35,55,0.45) 50%,rgba(16,35,55,0.78) 100%)!important;
  opacity:1!important;
}
.basm-hero .wp-block-cover__inner-container {
  max-width:620px;
  margin-left:auto;
  margin-right:0;
}
.basm-cards h3 {
  font-size:20.8px;
  font-weight:400;
  text-transform:uppercase;
  line-height:1.3;
}

/* ---------------------------------------------------------------- Header search */

.basm-header-search { max-width:300px }
.basm-header-search .wp-block-search__inside-wrapper {
  gap:11px;
  align-items:center;
}
.basm-header-search .wp-block-search__input {
  border:1px solid #dbdbdb;
  border-radius:3px;
  padding:5px 9px;
  color:#333333;
  height:36px;
  box-sizing:border-box;
  background:#ffffff;
  font-size:16px;
}
.basm-header-search .wp-block-search__button {
  background:#ff9a00;
  color:#1a1a1a;
  border:0;
  border-radius:0;
  height:36px;
  box-sizing:border-box;
  padding:0 14px;
  margin:0;
  font-weight:700;
  font-size:12.8px;
}

/* ---------------------------------------------------------------- Post meta / archives / pagination */

.wp-block-query-pagination {
  gap:8px;
  margin-top:3.5rem;
}
.wp-block-query-pagination .wp-block-query-pagination-numbers {
  display:flex;
  gap:8px;
  align-items:center;
}
.wp-block-query-pagination :is(.page-numbers,
.wp-block-query-pagination-next,
.wp-block-query-pagination-previous) {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 14px;
  box-sizing:border-box;
  border:1px solid #dbdbdb;
  border-radius:3px;
  color:#434242;
  text-decoration:none;
  font-size:15px;
  line-height:1;
  transition:background .12s ease,color .12s ease,border-color .12s ease;
}
.wp-block-query-pagination :is(a.page-numbers,
.wp-block-query-pagination-next,
.wp-block-query-pagination-previous):hover {
  background:#007a88;
  border-color:#007a88;
  color:#ffffff;
}
.wp-block-query-pagination .page-numbers.current {
  background:var(--wp--preset--color--orange);
  border-color:var(--wp--preset--color--orange);
  color:#1a1a1a;
  font-weight:700;
}
.wp-block-query-pagination .page-numbers.dots {
  border:0;
  min-width:22px;
  padding:0;
  color:#8a8a8a;
}

/* ---------------------------------------------------------------- Embeds */

.wp-block-post-content .wp-block-embed.is-type-video+p {
  margin-top:.45rem;
  font-size:15px;
  color:#5a6775;
}
.wp-block-post-content p+.wp-block-embed.is-type-video { margin-top:3rem }

.wp-has-aspect-ratio .wp-block-embed__wrapper:has(.basm-video-facade)::before {
  display:none;
}
.basm-video-facade {
  display:block;
  position:relative;
  width:100%;
  /* a poster that fails to load otherwise stretches the page */
  aspect-ratio:16/9;
  overflow:hidden;
  padding:0;
  border:0;
  background:#000;
  cursor:pointer;
  line-height:0;
}
.basm-video-facade img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  /* hqdefault is 4:3 with letterbox bars; crop back to the player's 16:9 */
  object-fit:cover;
}
.basm-video-facade__play {
  position:absolute;
  top:50%;
  left:50%;
  width:68px;
  height:48px;
  margin:-24px 0 0 -34px;
  border-radius:14%/22%;
  background:rgba(18,18,18,0.75);
  transition:background .15s ease;
}
.basm-video-facade__play::after {
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  margin:-10px 0 0 -6px;
  border-style:solid;
  border-width:10px 0 10px 17px;
  border-color:transparent transparent transparent #fff;
}
.basm-video-facade:hover .basm-video-facade__play,
.basm-video-facade:focus-visible .basm-video-facade__play {
  background:#f00;
}
.basm-video-facade:focus-visible {
  outline:2px solid #007a88;
  outline-offset:2px;
}

.wp-block-embed.is-type-video iframe { box-shadow:0 6px 14px rgba(0,0,0,0.22) }

/* ---------------------------------------------------------------- Contact Form 7 */

.wpcf7-form>.field:first-of-type>p:first-child { margin-top:0 }
.wpcf7 label {
  display:block;
  font-weight:700;
}
.wpcf7 label :is(input,select,textarea),
.wpcf7 label .wpcf7-form-control-wrap {
  display:block;
  margin-top:3px;
}
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=tel],
.wpcf7 input[type=url],
.wpcf7 input[type=number],
.wpcf7 input[type=date],
.wpcf7 select,
.wpcf7 textarea {
  box-sizing:border-box;
  width:100%;
  max-width:500px;
  font-family:inherit;
  font-size:16px;
  line-height:1.5;
  color:#333333;
  background:#ffffff;
  border:1px solid #dbdbdb;
  border-radius:3px;
  padding:5px 9px;
}
.wpcf7 textarea {
  padding:10px;
  min-height:180px;
}
.wpcf7 select {
  width:auto;
  min-width:160px;
  max-width:100%;
}
.wpcf7 input:focus-visible,
.wpcf7 select:focus-visible,
.wpcf7 textarea:focus-visible {
  outline:2px solid #007a88;
  outline-offset:1px;
  border-color:#007a88;
}
.wpcf7 .wpcf7-list-item { margin-left:0 }
.wpcf7 input[type=submit] {
  background:var(--wp--preset--color--orange);
  color:#1a1a1a;
  border:1px solid rgba(0,0,0,0.06);
  border-radius:3px;
  font-weight:400;
  text-transform:uppercase;
  font-size:16px;
  line-height:1;
  padding:10px 12px 9px;
  box-shadow:0 1px 2px rgba(0,0,0,0.15);
  cursor:pointer;
}
.wpcf7 input[type=submit]:hover {
  background:var(--wp--preset--color--amber);
  box-shadow:0 3px 7px rgba(0,0,0,0.22);
}
.wpcf7 .wpcf7-not-valid-tip {
  color:#b32d2e;
  font-size:14px;
}
.wpcf7 .wpcf7-response-output {
  border:1px solid #dbdbdb;
  border-radius:3px;
  padding:.6em 1em;
  margin:1em 0;
}
.wpcf7 input[type=submit]:active { box-shadow:inset 0 2px 4px rgba(0,0,0,0.22) }

/* ---------------------------------------------------------------- Footer */

footer.wp-block-template-part p a { text-decoration:underline }

/* ---------------------------------------------------------------- Responsive */

@keyframes basm-logo-shrink { to{width:85px }}

@supports (animation-timeline:scroll()) {
  .wp-block-site-logo img{animation:basm-logo-shrink linear both;
  animation-timeline:scroll(root);
  animation-range:0 170px;
}}

@media (max-width:781px) {
  main .wp-block-group.is-layout-constrained{padding-left:1.25rem;
  padding-right:1.25rem} header .wp-block-group:has(>.wp-block-navigation){padding-left:0!important;
  padding-right:0!important} .basm-headlines .wp-block-post-template{grid-template-columns:repeat(2,1fr)!important;
  gap:2rem 1rem!important} .basm-hero .wp-block-cover__inner-container{max-width:100%} .basm-hero .wp-block-cover__background{background:rgba(16,35,55,0.5)!important} .basm-hero .wp-block-heading{font-size:34px!important} .basm-quotes{margin:3rem auto 2.5rem} .wp-block-columns{gap:1.5rem!important} .basm-tabs__grid{flex-direction:column} .basm-tabs__grid img{flex:0 0 auto!important;
  max-width:100%!important;
  width:100%!important;
  height:auto!important} .basm-tabs__labels{flex-wrap:wrap} .wp-block-post-content .alignleft,.wp-block-post-content .alignright{float:none!important;
  max-width:100%!important;
  margin:1rem 0!important;
}}

@media (max-width:430px) { .basm-headlines .wp-block-post-template{grid-template-columns:1fr!important }}

@media (min-width:600px) and (max-width:1023px) { .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none!important }}

@media (max-width:1023px) { header .wp-block-navigation__container{margin-left:0}
  /* Below 1024 the nav is a hamburger, so a search box here sits beside the burger. */
  /* Doubled class beats core's layout display:flex, which ties on specificity. */
  .wp-block-group.basm-header-utility{display:none }}

@media (min-width:1024px) {
  .wp-block-navigation .has-child .wp-block-navigation__submenu-container{height:auto!important;
  overflow:visible!important;
  transition:opacity .15s linear .3s,visibility 0s linear .3s}.wp-block-navigation .has-child:hover>.wp-block-navigation__submenu-container,.wp-block-navigation .has-child:focus-within>.wp-block-navigation__submenu-container{transition:opacity .12s linear 0s,visibility 0s linear 0s}.wp-block-navigation__container>.wp-block-navigation-item.wp-block-navigation-submenu>.wp-block-navigation-item__content{transition:background-color .12s linear .3s,color .12s linear .3s}.wp-block-navigation__container>.wp-block-navigation-item.wp-block-navigation-submenu:hover>.wp-block-navigation-item__content,.wp-block-navigation__container>.wp-block-navigation-item.wp-block-navigation-submenu:focus-within>.wp-block-navigation-item__content{transition:background-color .1s linear 0s,color .1s linear 0s;
}}

/* ---------------------------------------------------------------- Other */

header.wp-block-template-part {
  position:sticky;
  top:0;
  z-index:100;
  box-shadow:0 3px 6px rgba(0,0,0,0.15);
}
header.wp-block-template-part+* { margin-top:0 }
header .has-header-gradient-background p { line-height:1.5 }
header .has-header-gradient-background p a {
  color:#ffffff!important;
  text-decoration:none;
}
.wp-block-post-content { display:flow-root }
.wp-block-post-content .alignleft {
  float:left;
  margin:.3rem 1.75rem 1rem 0;
  max-width:45%;
  height:auto;
}
.wp-block-post-content .alignright {
  float:right;
  margin:.3rem 0 1rem 1.75rem;
  max-width:45%;
  height:auto;
}
.wp-block-column>*:first-child { margin-top:0 }
.wp-block-post-content .wp-block-post-title a { text-decoration:none }
.wp-block-button__link { transition:background .15s ease,box-shadow .15s ease }
