﻿/* CENTRAL_LAYOUT_SYSTEM - one source of truth for widths */
:root {
  --ia-page-max: 1360px;
  --ia-shell-max: 1280px;
  --ia-text-max: 1120px;
  --ia-page-pad: clamp(1rem, 3vw, 2rem);
  --ia-section-gap: clamp(1.4rem, 3vw, 2.4rem);
  --ia-bubble-pad-block: clamp(1.35rem, 2.4vw, 2rem);
  --ia-bubble-pad-inline: clamp(1.45rem, 3vw, 2.75rem);
  --ia-bubble-content-max: var(--ia-text-max);
  --ia-bubble-flow-gap: .9rem;
  --site-container-max: var(--ia-page-max);
  --site-content-max: var(--ia-shell-max);
  --site-shell-max: var(--ia-shell-max);
  --site-reading-max: var(--ia-text-max);
  --site-panel-text-max: var(--ia-bubble-content-max);
  --site-container-pad: var(--ia-page-pad);
}

body:not(.page-home) main#main-content > section.page-container,
body:not(.page-home) main#main-content > .page-container:not(.footer-grid) {
  box-sizing: border-box;
  width: min(calc(100% - (2 * var(--ia-page-pad))), var(--ia-page-max));
  max-width: var(--ia-page-max);
  margin-left: auto;
  margin-right: auto !important;
  padding-left: var(--ia-page-pad);
  padding-right: var(--ia-page-pad);
}

body:not(.page-home) main#main-content > section.page-container > .breadcrumbs,
body:not(.page-home) main#main-content > section.page-container > h1,
body:not(.page-home) main#main-content > section.page-container > h2,
body:not(.page-home) main#main-content > section.page-container > .page-subtitle,
body:not(.page-home) main#main-content > section.page-container > .page-subtitle--left,
body:not(.page-home) main#main-content > section.page-container > .section-local-copy,
body:not(.page-home) main#main-content > section.page-container > p:not([class]),
body:not(.page-home) main#main-content > section.page-container > .content-section,
body:not(.page-home) main#main-content > section.page-container > .section-intro-card,
body:not(.page-home) main#main-content > section.page-container > .pricing-note,
body:not(.page-home) main#main-content > section.page-container > .pricing-hero,
body:not(.page-home) main#main-content > section.page-container > .lead-form-section,
body:not(.page-home) main#main-content > section.page-container > .related-links,
body:not(.page-home) main#main-content > section.page-container > .related-links--panel,
body:not(.page-home) main#main-content > section.page-container > .related-links--premium,
body:not(.page-home) main#main-content > section.page-container > .blog-section-shell,
body:not(.page-home) main#main-content > section.page-container > .blog-related-section,
body:not(.page-home) main#main-content > section.page-container > .blog-card-grid,
body:not(.page-home) main#main-content > section.page-container > .service-grid,
body:not(.page-home) main#main-content > section.page-container > .gallery-grid,
body:not(.page-home) main#main-content > section.page-container > .project-index-section,
body:not(.page-home) main#main-content > section.page-container > .project-index-gallery-grid,
body:not(.page-home) main#main-content > .content-section.blog-internal-links,
body:not(.page-home) main#main-content > .blog-section-shell,
body:not(.page-home) main#main-content > .blog-related-section {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--ia-shell-max);
  margin-left: auto;
  margin-right: auto !important;
}

body:not(.page-home) main#main-content > section.page-container > .content-section > h1,
body:not(.page-home) main#main-content > section.page-container > .content-section > h2,
body:not(.page-home) main#main-content > section.page-container > .content-section > h3,
body:not(.page-home) main#main-content > section.page-container > .content-section > .page-subtitle,
body:not(.page-home) main#main-content > section.page-container > .content-section > .page-subtitle--left,
body:not(.page-home) main#main-content > section.page-container > .content-section > .section-local-copy,
body:not(.page-home) main#main-content > section.page-container > .content-section > p,
body:not(.page-home) main#main-content > section.page-container > .content-section > .service-grid,
body:not(.page-home) main#main-content > section.page-container > .content-section > .gallery-grid,
body:not(.page-home) main#main-content > section.page-container > .content-section > .project-index-gallery-grid,
body:not(.page-home) main#main-content > section.page-container > .content-section > .feature-list--cards,
body:not(.page-home) main#main-content > section.page-container > .content-section > .pricing-stage-grid,
body:not(.page-home) main#main-content > section.page-container > .content-section > .pricing-overview-grid,
body:not(.page-home) main#main-content > section.page-container > .content-section > .pricing-options-prices__grid,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > h2,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > p,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--ia-shell-max);
  margin-left: auto;
  margin-right: auto !important;
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  justify-content: stretch !important;
  align-items: stretch !important;
  gap: 1rem !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links > li {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
}

body:not(.page-home) main#main-content .content-section > ul:not(.feature-list--cards):not(.service-grid):not(.gallery-grid):not(.project-index-gallery-grid):not(.pricing-stage-grid):not(.pricing-overview-grid),
body:not(.page-home) main#main-content .content-section > ol,
body:not(.page-home) main#main-content .section-intro-card > h2,
body:not(.page-home) main#main-content .section-intro-card > h3,
body:not(.page-home) main#main-content .section-intro-card > p,
body:not(.page-home) main#main-content .pricing-note > h2,
body:not(.page-home) main#main-content .pricing-note > h3,
body:not(.page-home) main#main-content .pricing-note > p,
body:not(.page-home) main#main-content .blog-note > h2,
body:not(.page-home) main#main-content .blog-note > h3,
body:not(.page-home) main#main-content .blog-note > p,
body:not(.page-home) main#main-content .blog-note > ul,
body:not(.page-home) main#main-content .blog-note > ol {
  box-sizing: border-box;
  width: min(100%, var(--ia-text-max));
  max-width: var(--ia-text-max);
  margin-left: auto;
  margin-right: auto !important;
}

body.page-home main#main-content > section#kontakt {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin-left: auto;
  margin-right: auto !important;
  padding-left: 0;
  padding-right: 0;
}

body.page-home main#main-content > section#kontakt > h2,
body.page-home main#main-content > section#kontakt > .contact-section {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin-left: auto;
  margin-right: auto !important;
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links {
  box-sizing: border-box;
  width: min(calc(100% - (2 * var(--ia-page-pad))), var(--ia-page-max));
  max-width: var(--ia-page-max);
  margin-left: auto;
  margin-right: auto !important;
  padding-left: var(--ia-page-pad);
  padding-right: var(--ia-page-pad);
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links > h2,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > p,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--ia-shell-max);
  margin-left: auto;
  margin-right: auto !important;
}

body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links),
body:not(.page-home) main#main-content .section-intro-card,
body:not(.page-home) main#main-content .pricing-note,
body:not(.page-home) main#main-content .blog-note,
body:not(.page-home) main#main-content .blog-cta-inline,
body:not(.page-home) main#main-content .related-links--panel {
  box-sizing: border-box;
  padding-block: var(--ia-bubble-pad-block) !important;
  padding-inline: var(--ia-bubble-pad-inline) !important;
}

body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > h1,
body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > h2,
body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > h3,
body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > p,
body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > ul,
body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > ol,
body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > .faq-item,
body:not(.page-home) main#main-content .section-intro-card > h1,
body:not(.page-home) main#main-content .section-intro-card > h2,
body:not(.page-home) main#main-content .section-intro-card > h3,
body:not(.page-home) main#main-content .section-intro-card > p,
body:not(.page-home) main#main-content .section-intro-card > ul,
body:not(.page-home) main#main-content .section-intro-card > ol,
body:not(.page-home) main#main-content .pricing-note > h1,
body:not(.page-home) main#main-content .pricing-note > h2,
body:not(.page-home) main#main-content .pricing-note > h3,
body:not(.page-home) main#main-content .pricing-note > p,
body:not(.page-home) main#main-content .pricing-note > ul,
body:not(.page-home) main#main-content .pricing-note > ol,
body:not(.page-home) main#main-content .blog-note > h1,
body:not(.page-home) main#main-content .blog-note > h2,
body:not(.page-home) main#main-content .blog-note > h3,
body:not(.page-home) main#main-content .blog-note > p,
body:not(.page-home) main#main-content .blog-note > ul,
body:not(.page-home) main#main-content .blog-note > ol,
body:not(.page-home) main#main-content .blog-cta-inline > h1,
body:not(.page-home) main#main-content .blog-cta-inline > h2,
body:not(.page-home) main#main-content .blog-cta-inline > h3,
body:not(.page-home) main#main-content .blog-cta-inline > p,
body:not(.page-home) main#main-content .related-links--panel > h1,
body:not(.page-home) main#main-content .related-links--panel > h2,
body:not(.page-home) main#main-content .related-links--panel > h3,
body:not(.page-home) main#main-content .related-links--panel > p,
body:not(.page-home) main#main-content .related-links--panel > ul,
body:not(.page-home) main#main-content .related-links--panel > ol {
  box-sizing: border-box;
  width: min(100%, var(--ia-bubble-content-max)) !important;
  max-width: var(--ia-bubble-content-max) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

body:not(.page-home) main#main-content .content-section > .heading-with-icon,
body:not(.page-home) main#main-content .section-intro-card > .heading-with-icon,
body:not(.page-home) main#main-content .pricing-note > .heading-with-icon,
body:not(.page-home) main#main-content .blog-note > .heading-with-icon,
body:not(.page-home) main#main-content .blog-cta-inline > .heading-with-icon,
body:not(.page-home) main#main-content .related-links--panel > .heading-with-icon {
  justify-content: flex-start !important;
}

body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > * + *,
body:not(.page-home) main#main-content .section-intro-card > * + *,
body:not(.page-home) main#main-content .pricing-note > * + *,
body:not(.page-home) main#main-content .blog-note > * + *,
body:not(.page-home) main#main-content .related-links--panel > * + * {
  margin-top: var(--ia-bubble-flow-gap) !important;
}

body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links),
body:not(.page-home) main#main-content .content-section.blog-internal-links,
body:not(.page-home) main#main-content .section-intro-card,
body:not(.page-home) main#main-content .pricing-note,
body:not(.page-home) main#main-content .blog-note,
body:not(.page-home) main#main-content .blog-cta-inline,
body:not(.page-home) main#main-content .related-links--panel {
  display: flex;
  flex-direction: column;
  gap: var(--ia-bubble-flow-gap);
}

body:not(.page-home) main#main-content .content-section:not(:has(.service-grid)):not(:has(.gallery-grid)):not(:has(.project-index-gallery-grid)):not(:has(.feature-list--cards)):not(:has(.pricing-stage-grid)):not(:has(.pricing-overview-grid)):not(:has(.pricing-options-prices__grid)):not(:has(.lead-form-section)):not(:has(form)):not(.blog-internal-links) > *,
body:not(.page-home) main#main-content .content-section.blog-internal-links > *,
body:not(.page-home) main#main-content .section-intro-card > *,
body:not(.page-home) main#main-content .pricing-note > *,
body:not(.page-home) main#main-content .blog-note > *,
body:not(.page-home) main#main-content .blog-cta-inline > *,
body:not(.page-home) main#main-content .related-links--panel > * {
  margin-block: 0 !important;
}

body:not(.page-home) main#main-content .blog-cta-inline {
  align-items: center;
  justify-content: center;
  text-align: center;
}

body:not(.page-home) main#main-content .blog-cta-inline > h1,
body:not(.page-home) main#main-content .blog-cta-inline > h2,
body:not(.page-home) main#main-content .blog-cta-inline > h3,
body:not(.page-home) main#main-content .blog-cta-inline > p {
  box-sizing: border-box;
  width: min(100%, var(--ia-bubble-content-max)) !important;
  max-width: var(--ia-bubble-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

body:not(.page-home) main#main-content .blog-cta-inline .cta-button {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 768px) {
  body:not(.page-home) main#main-content .blog-cta-inline > h1,
  body:not(.page-home) main#main-content .blog-cta-inline > h2,
  body:not(.page-home) main#main-content .blog-cta-inline > h3,
  body:not(.page-home) main#main-content .blog-cta-inline > p {
    text-align: left !important;
  }
}

@media (max-width: 700px) {
  :root {
    --ia-page-pad: 1rem;
  }

  body:not(.page-home) main#main-content > section.page-container,
  body:not(.page-home) main#main-content > .page-container:not(.footer-grid) {
    width: 100%;
  }
}

/* CENTRAL_LINK_PANEL_FINAL - blog-internal-links behaves like a normal content bubble */
body:not(.page-home) main#main-content > .content-section.blog-internal-links {
  box-sizing: border-box !important;
  width: min(calc(100% - (2 * var(--ia-page-pad))), var(--ia-shell-max)) !important;
  max-width: var(--ia-shell-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: var(--ia-section-gap) !important;
  margin-bottom: var(--ia-section-gap) !important;
  padding-block: var(--ia-bubble-pad-block) !important;
  padding-inline: var(--ia-bubble-pad-inline) !important;
  border: 1px solid rgba(16, 24, 40, .08) !important;
  border-radius: var(--radius-lg, 24px) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(246, 248, 252, .92)) !important;
  box-shadow: var(--shadow-card, 0 18px 44px rgba(15, 23, 40, .07)) !important;
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links > h2,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > p,
body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  padding: 0 !important;
  list-style: none !important;
}

body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links > li {
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 900px) {
  body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body:not(.page-home) main#main-content > .content-section.blog-internal-links > .feature-list--links {
    grid-template-columns: 1fr !important;
  }
}
 .service-card>.text-link{align-self:center;max-width:24ch;text-align:center;line-height:1.25;text-wrap:balance;white-space:normal}
