/* =========================================================
   Digitizer responsive module
   ========================================================= */

@media (max-width: 1180px){
  .dz-grid--4,
  .dz-pricing-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
  .dz-process{grid-template-columns:repeat(3, minmax(0,1fr));}
  .dz-hero__proof{grid-template-columns:repeat(2, minmax(0,1fr));}
}

@media (max-width: 920px){
  .dz-grid--2,
  .dz-grid--3,
  .dz-grid--4,
  .dz-split,
  .dz-split--reverse,
  .dz-service-intro,
  .dz-service-block,
  .dz-portfolio-grid{
    grid-template-columns:1fr;
  }
  .dz-service-block__aside{position:relative; top:auto;}
  .dz-feature-row{grid-template-columns:1fr;}
  .dz-process{grid-template-columns:1fr;}
  .dz-title--xl{font-size:clamp(48px, 17vw, 92px);}
  .dz-title{font-size:clamp(40px, 13vw, 76px);}
}

@media (max-width: 640px){
  :root{--dz-container:calc(100vw - 28px); --dz-container-narrow:calc(100vw - 28px);}
  .dz-section{padding:72px 0;}
  .dz-hero{min-height:auto; padding:76px 0 68px;}
  .dz-hero__proof,
  .dz-pricing-grid{grid-template-columns:1fr;}
  .dz-card,
  .dz-price-card{border-radius:26px;}
  .dz-service-card{min-height:260px;}
  .dz-seo-table__row{grid-template-columns:1fr; gap:8px;}
}

/* =========================================================
   SERVICE PAGES — USE THEME TYPOGRAPHY
   Headings follow the homepage hero heading scale.
   All other text inherits the Body typography from Total Customizer.
   Buttons and CTA links are intentionally excluded.
   ========================================================= */

/* The service wrapper must inherit the font selected in Total Customizer. */
.dz-page {
  font-family: inherit !important;
}

/* Neutralise hard-coded Poppins declarations used by service modules. */
.dz-page.dz-page :is(
  h1, h2, h3, h4, h5, h6,
  p, li, span, small, em, strong, b,
  blockquote, figcaption, label,
  .dz-title, .dz-lead, .dz-text,
  .dz-question__content
) {
  font-family: inherit !important;
}

/* Main service-page headings: same treatment as .homepage-heading-font. */
.dz-page h1.dz-title.dz-title--xl,
.dz-page .dz-title.dz-title--xl {
  font-size: 46px !important;
  color: #fff;
}

@media (min-width: 601px) {
  .dz-page h1.dz-title.dz-title--xl,
  .dz-page .dz-title.dz-title--xl {
    font-size: 70px !important;
  }
}

@media (min-width: 1024px) {
  .dz-page h1.dz-title.dz-title--xl,
  .dz-page .dz-title.dz-title--xl {
    font-size: 100px !important;
  }
}

/* =========================================================
   LARGE SERVICE-PAGE HEADINGS
   Reference: Google Ads editorial/portfolio H2 (58px desktop).
   FAQ and read-more headings follow the same scale; card and manifest
   headings remain intentionally excluded.
   ========================================================= */

.dz-page .dz-editorial-hero .dz-title.dz-title--xl,
.dz-page :where(
  .dz-capability-head,
  .dz-editorial-grid,
  .dz-portfolio-head,
  .dz-pricing-clean__intro,
  .em-section-head,
  .em-editorial-grid,
  .em-portfolio-head,
  .it-section-head,
  .it-editorial-grid,
  .dw-capabilities-head,
  .dw-intro-grid,
  .dw-showcase-head,
  .dw-archive-head,
  .dw-responsive-copy,
  .dw-services-head,
  .dw-process-head,
  .dm-intro-grid,
  .dm-portfolio-head,
  .dm-process-head,
  .dz-sticky-note,
  .dz-production-team__intro,
  .smm-section-head,
  .smm-editorial-grid,
  .smm-portfolio-head,
  .vib-section-head,
  .vib-editorial-grid,
  .pc-section-head,
  .pc-portfolio-head,
  .dgf-application-head,
  .dg2-portfolio-head
) .dz-title,
.dz-page--graphic .dg3-title.dg3-title--wide,
.dz-page.dz-page .dz-container--narrow > .dz-title,
.dz-page.dz-page .dz-readmore__head .dz-title,
.dz-page--seo.dz-page--seo .dz-signal-panel h2,
.dz-page--graphic.dz-page--graphic .dgf-application-stage-text h2,
.dz-page--production.dz-page--production .dz-signal-panel h2,
.dz-page--production.dz-page--production .dz-podcast-studio__copy h2 {
  font-family: inherit !important;
  font-size: 58px !important;
  font-weight: 900 !important;
  line-height: .98 !important;
  letter-spacing: -.025em !important;
  text-transform: uppercase !important;
  color: var(--dz-text, #fff) !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  max-width: 100%;
}

/* Legacy WPBakery page supplied in ostalo.zip: page and FAQ titles. */
.services-title-text {
  font-family: inherit !important;
  font-size: 58px !important;
  font-weight: 900 !important;
  line-height: .98 !important;
  letter-spacing: -.025em !important;
  text-transform: uppercase !important;
  color: var(--dz-text, #fff) !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  max-width: 100%;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .dz-page .dz-editorial-hero .dz-title.dz-title--xl,
  .dz-page.dz-page :is(
    .dz-capability-head, .dz-editorial-grid, .dz-portfolio-head,
    .dz-pricing-clean__intro, .em-section-head, .em-editorial-grid,
    .em-portfolio-head, .it-section-head, .it-editorial-grid,
    .dw-capabilities-head, .dw-intro-grid, .dw-showcase-head,
    .dw-archive-head, .dw-responsive-copy, .dw-services-head,
    .dw-process-head, .dm-intro-grid, .dm-portfolio-head,
    .dm-process-head, .dz-sticky-note, .dz-production-team__intro,
    .smm-section-head, .smm-editorial-grid, .smm-portfolio-head,
    .vib-section-head, .vib-editorial-grid, .pc-section-head,
    .pc-portfolio-head, .dgf-application-head, .dg2-portfolio-head
  ) .dz-title,
  .dz-page--graphic .dg3-title.dg3-title--wide,
  .dz-page.dz-page .dz-container--narrow > .dz-title,
  .dz-page.dz-page .dz-readmore__head .dz-title,
  .dz-page--seo.dz-page--seo .dz-signal-panel h2,
  .dz-page--graphic.dz-page--graphic .dgf-application-stage-text h2,
  .dz-page--production.dz-page--production .dz-signal-panel h2,
  .dz-page--production.dz-page--production .dz-podcast-studio__copy h2,
  .services-title-text {
    font-size: 46.4px !important;
  }
}

@media (max-width: 767px) {
  .dz-page .dz-editorial-hero .dz-title.dz-title--xl,
  .dz-page.dz-page :is(
    .dz-capability-head, .dz-editorial-grid, .dz-portfolio-head,
    .dz-pricing-clean__intro, .em-section-head, .em-editorial-grid,
    .em-portfolio-head, .it-section-head, .it-editorial-grid,
    .dw-capabilities-head, .dw-intro-grid, .dw-showcase-head,
    .dw-archive-head, .dw-responsive-copy, .dw-services-head,
    .dw-process-head, .dm-intro-grid, .dm-portfolio-head,
    .dm-process-head, .dz-sticky-note, .dz-production-team__intro,
    .smm-section-head, .smm-editorial-grid, .smm-portfolio-head,
    .vib-section-head, .vib-editorial-grid, .pc-section-head,
    .pc-portfolio-head, .dgf-application-head, .dg2-portfolio-head
  ) .dz-title,
  .dz-page--graphic .dg3-title.dg3-title--wide,
  .dz-page.dz-page .dz-container--narrow > .dz-title,
  .dz-page.dz-page .dz-readmore__head .dz-title,
  .dz-page--seo.dz-page--seo .dz-signal-panel h2,
  .dz-page--graphic.dz-page--graphic .dgf-application-stage-text h2,
  .dz-page--production.dz-page--production .dz-signal-panel h2,
  .dz-page--production.dz-page--production .dz-podcast-studio__copy h2,
  .services-title-text {
    font-size: 37.12px !important;
  }
}

/* Explicit high-specificity fixes for page modules that also use !important. */
#google-ads.dz-page--google-ads .dz-capability-head .dz-title,
#social-media-management.dz-page--social-media #social-media-paketi .dz-pricing-clean__intro .dz-title {
  font-family: inherit !important;
  font-size: 58px !important;
  font-weight: 900 !important;
  line-height: .98 !important;
  letter-spacing: -.025em !important;
  text-transform: uppercase !important;
  color: var(--dz-text, #fff) !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  max-width: 100% !important;
}

@media (min-width: 768px) and (max-width: 1199px) {
  #google-ads.dz-page--google-ads .dz-capability-head .dz-title,
  #social-media-management.dz-page--social-media #social-media-paketi .dz-pricing-clean__intro .dz-title {
    font-size: 46.4px !important;
  }
}

@media (max-width: 767px) {
  #google-ads.dz-page--google-ads .dz-capability-head .dz-title,
  #social-media-management.dz-page--social-media #social-media-paketi .dz-pricing-clean__intro .dz-title {
    font-size: 37.12px !important;
  }
}
