/* Typography and native Gutenberg treatments restored from the original site. */
@font-face { font-family: 'Open Sans'; src: url('fonts/open-sans.ttf') format('truetype'); font-style: normal; font-weight: 300 800; font-display: swap; }
@font-face { font-family: Montserrat; src: url('fonts/montserrat.ttf') format('truetype'); font-style: normal; font-weight: 100 900; font-display: swap; }
@font-face { font-family: Raleway; src: url('fonts/raleway.ttf') format('truetype'); font-style: normal; font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'INVOID Icons'; src: url('fonts/fontawesome.woff2') format('woff2'); font-style: normal; font-weight: normal; font-display: block; }
:root { --invoid-body-font: 'Open Sans', sans-serif; --invoid-heading-font: Montserrat, sans-serif; --invoid-content: 1170px; --invoid-wide: 1170px; --invoid-ink: #333; --invoid-muted: #333; --invoid-cloud: #f5f5f5; }
body, .editor-styles-wrapper { color: #333; font-family: var(--invoid-body-font); font-size: 14px; line-height: 1.75; }
h1,h2,h3,h4,h5,h6,.wp-block-heading,.wp-block-post-title,.wp-block-query-title { color: #333; font-family: var(--invoid-heading-font); font-weight: 600; letter-spacing: -.4px; line-height: 1.3; }
.wp-block-heading { font-size: 24px; }
.wp-block-paragraph { color: inherit; }
.invoid-main,.wp-site-blocks > .wp-block-template-part,.wp-site-blocks > main { margin-block-start: 0; }
.wp-block-group.invoid-section { padding: 40px max(20px,calc((100% - 1170px)/2)); margin-block: 0; }
.invoid-section .invoid-section { padding: 20px 0; }
.invoid-section .wp-block-columns { gap: 30px; margin-block: 0; align-items: stretch; }
.invoid-section .wp-block-column { min-width: 0; }
.wp-block-group.invoid-hero-section { padding: 0; }
.wp-block-group.invoid-hero-section > .wp-block-columns { max-width: none; width: 100%; margin: 0; gap: 0; }
.invoid-hero-section > .wp-block-columns > .wp-block-column { width: 100%; flex-basis: 100%; }
.wp-block-button__link,.forminator-ui .forminator-button { border-radius: 0; font-family: var(--invoid-body-font); font-size: 14px; }
.invoid-heading > .wp-block-heading { margin: 0 0 14px; }
.invoid-heading > .wp-block-heading::after { display: block; width: 30px; height: 1px; margin-top: 12px; background: var(--invoid-blue); content: ''; }
.invoid-heading--center { text-align: center; }
.invoid-heading--center > .wp-block-heading::after { margin-inline: auto; }
.invoid-heading > p { margin: 0 0 20px; font-size: 16px; }
.invoid-services-section > .wp-block-columns > .wp-block-column > .invoid-section:first-child { padding-top: 0; }
.invoid-services-grid { padding-block: 35px 0 !important; }
.invoid-service-item { position: relative; padding-left: 50px; margin: 0 0 38px; }
.invoid-service-item::before { position: absolute; top: 2px; left: 0; width: 32px; color: var(--invoid-blue); font-family: 'INVOID Icons'; font-size: 28px; line-height: 1.2; text-align: left; transition: transform .3s; }
.invoid-service-item:hover::before { transform: translateY(-9px); }
.invoid-service-item > .wp-block-heading { margin: 0 0 20px; font-size: 17px; font-weight: 400; }
.invoid-service-item p { margin: 0 0 14px; color: #111; }
.invoid-service-item .wp-block-buttons { margin-block: 0; }
.invoid-service-item .wp-block-button__link { justify-content: flex-start; min-height: 0; padding: 0; border: 0; background: none; color: #333; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.invoid-service-item .wp-block-button__link::after { margin-left: 6px; font-family: 'INVOID Icons'; content: '\f061'; }
.invoid-service-item .wp-block-button__link:hover { color: var(--invoid-blue); transform: none; }
.invoid-services-section > .wp-block-columns > .wp-block-column > .invoid-service-item { width: calc((100% - 60px)/3); }
.invoid-more-button { margin-inline: auto; }
.invoid-more-button .wp-block-button__link { min-height: 49px; padding: 12px 22px; color: #fff; border: 0; border-radius: 0; font-size: 14px; font-weight: 700; text-transform: uppercase; }
.invoid-more-button .wp-block-button__link::before { margin-right: 16px; font-family: 'INVOID Icons'; content: '\f009'; }
.wp-block-group.invoid-features-section { padding-top: 60px; padding-bottom: 30px; }
.invoid-features-section .wp-block-column { display: flex; }
.invoid-feature-card { position: relative; flex: 1 1 0; width: 100%; margin-top: 50px; padding: 88px 40px 40px; background: #f4f4f4; text-align: center; }
.invoid-feature-card::before { position: absolute; top: -50px; left: calc(50% - 50px); display: flex; align-items: center; justify-content: center; width: 100px; height: 100px; border-radius: 50%; background: var(--invoid-accent,var(--invoid-blue)); color: #fff; font-family: 'INVOID Icons'; font-size: 48px; line-height: 1; transition: background-color .3s,transform .3s; }
.invoid-feature-card:hover::before { background: #2e3841; transform: translateY(-4px); }
.invoid-feature-card > .wp-block-heading { margin: 0 0 20px; font-size: 17px; font-weight: 400; }
.invoid-feature-card p { margin-bottom: 0; color: #333; }
.invoid-accent-3f51b5 { --invoid-accent: #3f51b5; }
.invoid-accent-673ab7 { --invoid-accent: #673ab7; }
.invoid-accent-009cff { --invoid-accent: #009cff; }
.invoid-icon-fa-wifi::before { content: '\f1eb'; }
.invoid-icon-fa-connectdevelop::before { content: '\f20e'; }
.invoid-icon-fa-lock::before { content: '\f023'; }
.invoid-icon-fa-h-square::before { content: '\f0fd'; }
.invoid-icon-fa-plug::before { content: '\f1e6'; }
.invoid-icon-fa-building::before { content: '\f1ad'; }
.invoid-icon-fa-video-camera::before { content: '\f03d'; }
.invoid-icon-fa-headphones::before { content: '\f025'; }
.invoid-icon-fa-phone-square::before { content: '\f098'; }
.invoid-icon-fa-desktop::before { content: '\f108'; }
.invoid-icon-fa-power-off::before { content: '\f011'; }
.invoid-icon-fa-check-square-o::before { content: '\f046'; }
.invoid-icon-fa-wrench::before { content: '\f0ad'; }
.wp-block-group.invoid-info-section { padding-block: 40px; }
.invoid-info-section .invoid-info-panel { padding: 0; background: #f5f5f5; border: 1px solid #eee; border-radius: 5px; overflow: hidden; }
.invoid-info-panel > .wp-block-columns { gap: 0; }
.invoid-info-panel > .wp-block-columns > .wp-block-column { flex-basis: 50%; }
.invoid-info-panel__text { padding: clamp(25px,4vw,60px); }
.invoid-info-panel__text .invoid-heading p { font-size: 16px; }
.invoid-info-panel__text .wp-block-spacer { display: none; }
.invoid-info-panel__media { display: flex; margin: 0; }
.invoid-info-panel__media > figure { width: 100%; margin: 0; }
.invoid-info-panel__media img { width: 100%; height: 100%; border-radius: 0; object-fit: cover; }
.wp-block-group.invoid-contact-band { padding-top: 30px; padding-bottom: 30px; color: #fff; background: var(--invoid-blue); }
.invoid-contact-band .wp-block-columns { align-items: center; }
.invoid-contact-band .wp-block-heading { margin: 0; color: #fff; font-size: 24px; font-weight: 400; }
.invoid-contact-band p { margin: 6px 0 0; color: #fff; }
.invoid-contact-band .wp-block-column:first-child { flex-basis: 75%; }
.invoid-contact-band .wp-block-column:last-child { flex-basis: 25%; }
.invoid-contact-band .wp-block-buttons { justify-content: flex-end; }
.invoid-contact-band .wp-block-button__link { padding: 12px 22px; border: 0; border-radius: 0; background: #222; color: #fff; font-size: 14px; }
.invoid-contact-band .wp-block-button__link:hover { background: #444; }
.invoid-site-footer { margin-block-start: 0; }
.wp-site-blocks > .wp-block-template-part:last-child { margin-block-start: 0; }
.invoid-main.invoid-search,.invoid-main.invoid-archive { padding-block: 50px; }
/* Animations never gate content visibility: all server-rendered text stays readable. */
@media (prefers-reduced-motion: no-preference) {
  .invoid-service-item,.invoid-feature-card,.invoid-heading { animation: invoid-content-enter .65s ease both; }
  @supports (animation-timeline: view()) {
    .invoid-service-item,.invoid-feature-card,.invoid-heading { animation-timeline: view(); animation-range: entry 0% entry 20%; }
  }
  @keyframes invoid-content-enter { from { transform: translateY(20px); } to { transform: translateY(0); } }
}
@media (max-width: 781px) {
  .invoid-section .wp-block-columns { flex-direction: column; }
  .invoid-services-section > .wp-block-columns > .wp-block-column > .invoid-service-item { width: 100%; }
  .invoid-feature-card { margin-top: 65px; }
  .invoid-info-panel > .wp-block-columns > .wp-block-column { flex-basis: auto; width: 100%; }
  .invoid-info-panel__media img { max-height: 430px; }
  .invoid-contact-band .wp-block-buttons { justify-content: flex-start; }
}
