.elementor-kit-9454{--e-global-color-primary:#277A31;--e-global-color-secondary:#1A1C1F;--e-global-color-text:#343438;--e-global-color-accent:#F5F5F5;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:28px;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:600;}.elementor-kit-9454 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --ab-green:#277a31; --ab-dark:#1A1C1F; --ab-text:#343438; --ab-light:#f5f5f5; --ab-white:#ffffff; --ab-teal:#327A68; --ab-font:Poppins; }
/* Start custom CSS *//* Audiobahn: scoped helpers (only affect ab-* classes) */
summary.ab-acc-header { list-style: none; }
summary.ab-acc-header::-webkit-details-marker { display: none; }
details[open] > summary.ab-acc-header { color: #277a31; }
details[open] > summary.ab-acc-header .ab-acc-icon { transform: rotate(180deg); }
.ab-text ul { list-style-type: disc; margin: 0 0 0 2.5rem; padding: 0; }
.ab-text ol { list-style-type: decimal; margin: 0 0 0 2.5rem; padding: 0; }
.ab-text li { margin: 0 0 0.5rem; }
.ab-text li:last-child { margin-bottom: 0; }
.ab-text a, .ab-h2 a, .ab-h3 a, .ab-h4 a { color: #277a31; text-decoration: none; transition: color 0.3s; }
.ab-text a:hover, .ab-h2 a:hover, .ab-h3 a:hover, .ab-h4 a:hover { color: #1A1C1F; }
.ab-text strong, .ab-text b { font-weight: 600; }
.ab-proj-card:hover .ab-proj-img, .ab-proj-card:focus-within .ab-proj-img { opacity: 0.2; }
.ab-proj-card:hover .ab-proj-title, .ab-proj-card:hover .ab-proj-loc, .ab-proj-card:focus-within .ab-proj-title, .ab-proj-card:focus-within .ab-proj-loc { opacity: 1; transform: none; }

.ab-quote:before { content: '\201C'; display: block; font-size: 6rem; line-height: 0.8; font-family: Georgia, serif; position: absolute; inset-inline-start: 0; opacity: .5; }

.ab-metro > :nth-child(6n-3), .ab-metro > :nth-child(6n-2) { grid-column-end: span 2; grid-row-end: span 2; }
.ab-pcard:hover .ab-pcard-img { transform: translateY(-5%); }

.ab-rel-card:hover .ab-rel-img, .ab-rel-card:focus-within .ab-rel-img { opacity: 1; }
.ab-rel-card:hover .ab-rel-title, .ab-rel-card:focus-within .ab-rel-title { transform: translateY(-100%); opacity: 0; }

.ab-bg-img-9186 { background-image: linear-gradient(rgba(2,2,2,0.67), rgba(2,2,2,0.67)), url('https://www.audiobahn.net/wp-content/uploads/2026/03/7Y2A2963.jpg'); background-size: cover; background-position: center center; background-repeat: no-repeat; }

/* Transparent header over the hero on Home + Services (desktop/laptop only, like Impreza) */
@media (min-width: 1025px) {
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .elementor-location-header { position: absolute; top: 0; left: 0; right: 0; z-index: 100; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578).admin-bar .elementor-location-header { top: 32px; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr { background-color: transparent !important; box-shadow: none !important; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr-top { background-color: rgba(39,122,49,0.65) !important; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr-main, :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr-line { background-color: transparent !important; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-logo-dark { display: none !important; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-logo-white { display: block !important; height: 60px; width: auto; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr a:has(> .ab-logo-white) { order: -1; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr-nav .elementor-nav-menu--main .elementor-item,
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr-nav .elementor-nav-menu--main .elementor-item:hover { color: #ffffff !important; }
  :is(body.page-id-6635, body.page-id-15, body.page-id-9575, body.page-id-9578) .ab-hdr-nav .elementor-nav-menu--main .elementor-item:after { background-color: #ffffff !important; }
  .ab-under-header { padding-top: calc(4rem + 141px) !important; }
}
.ab-detail .elementor-heading-title strong { font-weight: 600; color: #343438; }
.ab-detail .elementor-heading-title a { color: #277a31; text-decoration: none; }
.ab-detail .elementor-heading-title ul { list-style-type: disc; margin: 0.5rem 0 0 2.5rem; padding: 0; }
.ab-detail .elementor-heading-title li { margin: 0 0 0.5rem; }
.elementor-widget-heading.ab-detail { display: list-item; list-style-type: disc; margin: 0 0 0.5rem 2.5rem; }

/* Post grids: no container padding on the loop wrappers so gaps match Impreza exactly */
[data-element_type="e-collection-loop"], [data-element_type="e-collection-loop-layout"], [data-element_type="e-collection-loop-item"] { padding: 0 !important; }

/* ===== Base styles Impreza used to provide (added for the Hello switch) ===== */
body { font-family: Poppins, sans-serif; font-weight: 300; font-size: 16px; line-height: 28px; color: #343438; background-color: #ffffff; }
body a { color: #277a31; transition: color 0.3s; }
body a:hover { color: #1A1C1F; }
b, strong { font-weight: 600; }

/* Blog post + project description content (plain WordPress content) */
.elementor-widget-theme-post-content { font-family: Poppins, sans-serif; font-weight: 300; font-size: 16px; line-height: 28px; color: #343438; }
.elementor-widget-theme-post-content :is(h1,h2,h3,h4,h5,h6) { font-family: Poppins, sans-serif; font-weight: 700; letter-spacing: -0.02em; color: #1A1C1F; margin: 0 0 1.5rem; padding-top: 1.5rem; }
.elementor-widget-theme-post-content :is(h1,h2,h3,h4,h5,h6):first-child, .elementor-widget-theme-post-content :is(h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6) { padding-top: 0; }
.elementor-widget-theme-post-content h1 { font-size: 3.5rem; line-height: 1.2; }
.elementor-widget-theme-post-content h2 { font-size: 2rem; line-height: 1.4; }
.elementor-widget-theme-post-content h3 { font-size: 1.3rem; line-height: 1; }
.elementor-widget-theme-post-content h4 { font-size: 1.5rem; line-height: 1.4; }
.elementor-widget-theme-post-content h5 { font-size: 1.4rem; line-height: 1.4; }
.elementor-widget-theme-post-content h6 { font-size: 1.2rem; line-height: 1.4; }
.elementor-widget-theme-post-content :is(p, ul, ol, blockquote, table) { margin: 0 0 1.5rem; }
.elementor-widget-theme-post-content ul { list-style-type: disc; margin-left: 2.5rem; padding: 0; }
.elementor-widget-theme-post-content ol { list-style-type: decimal; margin-left: 2.5rem; padding: 0; }
.elementor-widget-theme-post-content li { margin: 0 0 0.5rem; }
.elementor-widget-theme-post-content :is(p, ul, ol, li):last-child { margin-bottom: 0; }
.elementor-widget-theme-post-content img { max-width: 100%; height: auto; }
.elementor-widget-theme-post-content .alignright { float: right; margin: 0 0 2em 2em; }
.elementor-widget-theme-post-content .alignleft { float: left; margin: 0 2em 2em 0; }
.elementor-widget-theme-post-content .aligncenter { display: block; margin-left: auto; margin-right: auto; }
@media (max-width: 600px) { .elementor-widget-theme-post-content :is(h1,h2,h3,h4,h5,h6) { padding-top: 1rem; } .elementor-widget-theme-post-content :is(.alignright,.alignleft) { float: none; margin: 0 auto 1.5rem; } }

/* Gravity Forms (matches the Impreza field style used on the site) */
.gform_wrapper .gform_required_legend { display: none; }
.gform_wrapper.gravity-theme .gform_fields { row-gap: 16px; column-gap: 2%; }
.gform_wrapper .gfield_label { font-family: Poppins, sans-serif; font-size: 16px; font-weight: 700; line-height: 28px; color: #343438; margin-bottom: 8px; padding: 0; }
.gform_wrapper .gfield_required { color: #c02b0a; font-size: 13px; margin-left: 0; }
.gform_wrapper input:is([type=text],[type=email],[type=tel],[type=url],[type=number]), .gform_wrapper select, .gform_wrapper textarea {
  font-family: Poppins, sans-serif; font-size: 14px; font-weight: 500; line-height: 28px; color: #343438;
  background-color: #ffffff; border: 1px solid #277a31; border-radius: 0; box-shadow: 0 1px 0 0 rgba(0,0,0,0.15);
  padding: 0 14px; height: 30px; width: 100%; transition: border-color 0.2s, box-shadow 0.2s; outline: none;
}
.gform_wrapper textarea { height: 96px; padding-top: 5px; padding-bottom: 5px; }
.gform_wrapper input:is([type=text],[type=email],[type=tel],[type=url],[type=number]):focus, .gform_wrapper select:focus, .gform_wrapper textarea:focus { border-color: #1A1C1F; box-shadow: 0 0 5px 0 rgba(0,0,0,0.15); }
.gform_wrapper ::placeholder { color: #343438; opacity: 0.6; }
.gform_wrapper.gravity-theme .gform_footer { margin-top: 6px; padding: 16px 0; }
.gform_wrapper :is(input[type=submit], button[type=submit], .gform_button) {
  font-family: Poppins, sans-serif; font-size: 16px; font-weight: 600; line-height: 1; letter-spacing: 0.02em; text-transform: uppercase;
  color: #ffffff; background-color: #277a31; border: 0; border-radius: 0.3em; padding: 0.7em 1.3em; cursor: pointer; transition: background-color 0.3s; box-shadow: none;
}
.gform_wrapper :is(input[type=submit], button[type=submit], .gform_button):hover, .gform_wrapper :is(input[type=submit], button[type=submit], .gform_button):focus { background-color: #1A1C1F; color: #ffffff; }
/* Impreza showed no underline on the current menu item, only on hover */
.ab-hdr-nav .elementor-nav-menu--main .elementor-item.elementor-item-active:not(:hover):after { opacity: 0; }

.ab-hdr .ab-btn { white-space: nowrap; }/* End custom CSS */