/*
Theme Name: Zaptiva Child
Theme URI: https://www.zaptiva.com/
Description: Zaptiva presentation layer for Hello Elementor. Keep business content and reusable components in the Zaptiva Core plugin.
Author: Zaptiva
Version: 1.3.4
Template: hello-elementor
Text Domain: zaptiva-child
*/

:root {
  --za-ink: #101a3d;
  --za-muted: #5b6278;
  --za-blue: #1557ed;
  --za-aqua: #22b8c6;
  --za-coral: #ff725e;
  --za-violet: #7256e8;
  --za-cream: #fbfaf6;
  --za-line: #dfe4f0;
}

html { scroll-behavior: smooth; }
body { background: var(--za-cream); color: var(--za-ink); }
.site-main {
  width: 100%;
  max-width: none;
  min-height: 60vh;
  margin: 0;
  padding: 0;
}
.zaptiva-page-entry,
.zaptiva-page-entry .zaptiva-content {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
.zaptiva-content > .elementor { width: 100%; }

/* Hello Elementor applies 500/600/800/1140px page widths after this sheet. */
body.zaptiva-wordpress:not([class*="elementor-page-"]) main.site-main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

/* Hello Elementor limits generic .site-header/.site-footer to 1140px. */
body.zaptiva-wordpress > .site-header.mega-header {
  width: min(1320px, calc(100% - 32px)) !important;
  max-width: none !important;
}
body.zaptiva-wordpress > .site-footer.expanded-footer {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

@media (min-width: 901px) {
  body.zaptiva-wordpress .site-header .mega-panel.developer-panel {
    left: 50%;
    right: auto;
    transform: translateX(-50%) translateY(8px);
  }
  body.zaptiva-wordpress .site-header .mega-panel.developer-panel.open,
  body.zaptiva-wordpress .site-header .mega-item:is(:hover, .is-open) > .mega-panel.developer-panel {
    transform: translateX(-50%) translateY(0);
  }
}

.zaptiva-flexible-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:clamp(32px,6vw,96px);align-items:center;padding:clamp(110px,14vw,180px) clamp(24px,6vw,96px) clamp(70px,9vw,120px);background:linear-gradient(135deg,#eef4ff 0%,#f8f5ff 55%,#ecfbf8 100%)}
.zaptiva-flexible-hero h1{font-size:clamp(3rem,7vw,7rem);line-height:.94;letter-spacing:-.055em;margin:.6rem 0 1.3rem}
.zaptiva-flexible-hero p{max-width:720px;font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.65;color:var(--za-muted)}
.zaptiva-flexible-content{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:clamp(64px,8vw,120px) 0}
.zaptiva-flexible-content>:first-child{margin-top:0}
.zaptiva-flexible-content h2{font-size:clamp(2rem,4vw,4rem);line-height:1.05;letter-spacing:-.035em;margin:2.2em 0 .6em}
.zaptiva-flexible-content h3{font-size:clamp(1.4rem,2.2vw,2.1rem);margin:1.8em 0 .5em}
.zaptiva-flexible-content p,.zaptiva-flexible-content li{font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.75;color:var(--za-muted)}
.zaptiva-flexible-content img{max-width:100%;height:auto;border-radius:24px}

@media (max-width: 760px) {
  .zaptiva-flexible-hero{grid-template-columns:1fr;padding-inline:20px}
  .zaptiva-flexible-content{width:min(100% - 40px,1160px)}
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
