/* ─────────────────────────────────────────────────────────────────────────
   Zirve — SEO / digital marketing agency theme
   Palette: purple #5d3cea · yellow #ffc400 · ink #000 · text #222 · light #f9faff · line #e9e7f5
   Type: Urbanist (800 headings, purple <em> highlight in HTML text blocks).
   Section partials are styled through their partials.css classes; the ids are the seed's stable hooks.
   ───────────────────────────────────────────────────────────────────────── */
:root {
  --zv-purple: #5d3cea;
  --zv-purple-dark: #4a2ec9;
  --zv-yellow: #ffc400;
  --zv-ink: #000000;
  --zv-text: #222222;
  --zv-muted: #69727d;
  --zv-light: #f9faff;
  --zv-lilac: #ece8fd;
  --zv-line: #e9e7f5;
  --zv-font: 'Urbanist', 'Inter', system-ui, sans-serif;
}

body.theme-zirve { font-family: var(--zv-font); color: var(--zv-text); line-height: 1.7; }
.theme-zirve h1, .theme-zirve h2, .theme-zirve h3, .theme-zirve h4 { font-family: var(--zv-font); color: var(--zv-ink); font-weight: 800; line-height: 1.15; letter-spacing: -0.01em; }
.theme-zirve h1 em, .theme-zirve h2 em { font-style: normal; color: var(--zv-purple); }
.theme-zirve a { color: var(--zv-purple); }
.theme-zirve .page-content { opacity: 1 !important; color: var(--zv-text); }

/* Buttons: purple 6px + outlined twin; eyebrow labels */
.theme-zirve .cms-section-btn, .theme-zirve .zv-btn { font-family: var(--zv-font); font-weight: 700; font-size: 0.95rem; border-radius: 6px; padding: 0.75rem 1.6rem; transition: background 0.2s ease, color 0.2s ease; }
.theme-zirve a.cms-section-btn { color: var(--site-btn-text-color, #fff); }
.theme-zirve .cms-section-btn:hover { background: var(--zv-purple-dark) !important; border-color: var(--zv-purple-dark) !important; color: #fff !important; }
.theme-zirve .zv-btn { display: inline-block; background: var(--zv-purple); color: #fff; text-decoration: none; border: 1px solid var(--zv-purple); }
.theme-zirve .zv-btn:hover { background: var(--zv-purple-dark); color: #fff; }
.theme-zirve .zv-btn.is-outline { background: transparent; color: var(--zv-purple); }
.theme-zirve .zv-btn.is-outline:hover { background: var(--zv-purple); color: #fff; }
.theme-zirve .zv-actions { display: flex; gap: 0.8rem; flex-wrap: wrap; margin-top: 1.8rem; }
.theme-zirve .zv-eyebrow { display: block; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--zv-ink); margin-bottom: 0.8rem; }
.theme-zirve .zv-h1 { font-size: clamp(2.6rem, 4.8vw, 3.6rem); margin: 0 0 1rem; }
.theme-zirve .zv-h2 { font-size: clamp(2.2rem, 3.8vw, 3.1rem); margin: 0 0 1rem; }
.theme-zirve .zv-head { text-align: center; max-width: 720px; margin: 0 auto; }
.theme-zirve .zv-list { list-style: none; padding: 0; margin: 1.4rem 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.6rem 2rem; }
.theme-zirve .zv-list li { position: relative; padding-left: 1.2rem; }
.theme-zirve .zv-list li::before { content: ''; position: absolute; left: 0; top: 0.65em; width: 8px; height: 8px; border-radius: 50%; background: var(--zv-purple); }

/* ── Header: white, purple when scrolled ───────────────────────────────── */
.zv-header { background: var(--header-bg-normal, #fff); position: relative; z-index: 40; transition: background 0.3s ease, box-shadow 0.3s ease; }
.zv-header.is-sticky { position: sticky; top: 0; }
.zv-header.is-scrolled { background: var(--zv-purple); box-shadow: 0 8px 30px rgba(93, 60, 234, 0.25); }
.zv-header-inner { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 2rem; min-height: 90px; }
.zv-header-logo .site-logo img { display: block; max-height: var(--header-logo-height, 56px); width: auto; transition: filter 0.3s ease; }
.zv-header.is-scrolled .site-logo img { filter: brightness(0) invert(1); }
.zv-header-logo .site-logo-text { color: var(--zv-ink); font-weight: 800; font-size: 1.6rem; }
.zv-header-nav { display: flex; align-items: center; justify-content: center; }
.zv-header-nav .nav-link { font-family: var(--zv-font); font-weight: 600; font-size: 1.05rem; color: var(--zv-ink); padding: 0.5rem 1.4rem; white-space: nowrap; transition: color 0.2s ease; }
.zv-header-nav .nav-link:hover, .zv-header-nav .nav-link.is-active { color: var(--zv-purple); }
.zv-header.is-scrolled .nav-link, .zv-header.is-scrolled .locale-btn, .zv-header.is-scrolled .header-search-toggle, .zv-header.is-scrolled .mobile-menu-btn, .zv-header.is-scrolled .site-logo-text { color: #fff !important; }
.zv-header.is-scrolled .nav-link:hover, .zv-header.is-scrolled .nav-link.is-active { color: rgba(255, 255, 255, 0.75) !important; }
.zv-header-nav .nav-dropdown-menu { background: #fff; border: 1px solid var(--zv-line); border-radius: 12px; }
.zv-header-nav .nav-dropdown-item { color: var(--zv-ink); }
.zv-header-actions { display: flex; align-items: center; gap: 1rem; }
.zv-header-actions .header-search-toggle { background: transparent !important; border: 0 !important; color: var(--zv-ink) !important; padding: 0.3rem !important; font-size: 1.1rem; }
.zv-header-actions .locale-btn { color: var(--zv-ink); font-weight: 700; font-size: 0.85rem; }
.zv-header-actions a[class*="btn"] { border-radius: 6px !important; font-weight: 700; padding: 0.8rem 1.6rem; background: var(--zv-purple) !important; color: #fff !important; white-space: nowrap; transition: background 0.3s ease, color 0.3s ease; }
.zv-header.is-scrolled .zv-header-actions a[class*="btn"] { background: #fff !important; color: var(--zv-purple) !important; }
.zv-header-actions .mobile-menu-btn { color: var(--zv-ink); }

/* ── Section furniture: uppercase eyebrow + 800 heading ─────────────────── */
.theme-zirve .cms-section-head { text-align: center; margin-bottom: 3rem; }
.theme-zirve .cms-section-head::before { display: block; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--zv-ink); margin-bottom: 0.8rem; }
.theme-zirve .cms-section-heading { font-size: clamp(2.2rem, 3.8vw, 3.1rem); color: var(--zv-ink); margin: 0 auto; max-width: 640px; }
.theme-zirve .cms-section-heading-link { color: inherit; text-decoration: none; }
html[lang="tr"] .section-grid:has(#sec_home_services) .cms-section-head::before, html[lang="tr"] .section-grid:has(#sec_services_grid) .cms-section-head::before { content: 'Hizmetlerimiz'; }
html[lang="en"] .section-grid:has(#sec_home_services) .cms-section-head::before, html[lang="en"] .section-grid:has(#sec_services_grid) .cms-section-head::before { content: 'Our services'; }
html[lang="tr"] .section-grid:has(#sec_home_team) .cms-section-head::before, html[lang="tr"] .section-grid:has(#sec_about_team) .cms-section-head::before { content: 'Ekibimiz'; }
html[lang="en"] .section-grid:has(#sec_home_team) .cms-section-head::before, html[lang="en"] .section-grid:has(#sec_about_team) .cms-section-head::before { content: 'Our team'; }
html[lang="tr"] .section-carousel:has(#sec_home_testimonials) .cms-section-head::before, html[lang="tr"] .section-carousel:has(#sec_about_testimonials) .cms-section-head::before { content: 'Referanslar'; }
html[lang="en"] .section-carousel:has(#sec_home_testimonials) .cms-section-head::before, html[lang="en"] .section-carousel:has(#sec_about_testimonials) .cms-section-head::before { content: 'Testimonial'; }
html[lang="tr"] .section-carousel:has(#sec_home_blog) .cms-section-head::before, html[lang="tr"] .section-grid:has(#sec_blog_grid) .cms-section-head::before { content: 'Blog'; }
html[lang="en"] .section-carousel:has(#sec_home_blog) .cms-section-head::before, html[lang="en"] .section-grid:has(#sec_blog_grid) .cms-section-head::before { content: 'Our blog'; }

/* ── Hero: copy | photo with floating stat cards ────────────────────────── */
#sec_home_hero { align-items: center; }
#sec_home_hero .section-text, #sec_home_hero .section-image { padding: 0 !important; }
#sec_home_hero .columns-col:last-child { position: relative; padding-bottom: 3rem; }
#sec_home_hero .section-image img { width: 88%; margin: 0 0 0 auto; border-radius: 18px !important; display: block; }
.section-grid:has(#sec_home_hero_stats) { padding: 0 !important; position: absolute; left: 0; bottom: 0; width: 100%; pointer-events: none; }
#sec_home_hero_stats { display: flex !important; justify-content: space-between; align-items: flex-end; }
.section-grid:has(#sec_home_hero_stats) .cms-grid-card { background: #fff !important; border: 1px solid var(--zv-line); border-radius: 12px !important; box-shadow: 0 20px 50px rgba(93, 60, 234, 0.12); text-align: center; padding: 1.2rem 1.4rem; width: 40%; pointer-events: auto; }
.section-grid:has(#sec_home_hero_stats) .cms-grid-card:first-child { transform: translateY(-9rem); width: 34%; }
.section-grid:has(#sec_home_hero_stats) .cms-grid-card-body { padding: 0; }
.section-grid:has(#sec_home_hero_stats) .cms-grid-card-title { font-size: 2.2rem; font-weight: 800; color: var(--zv-purple); margin: 0; }
.section-grid:has(#sec_home_hero_stats) .cms-grid-card-desc { font-size: 0.85rem; color: var(--zv-text); }

/* ── Strip: five ruled service cells ───────────────────────────────────── */
.section-grid:has(#sec_home_strip), .section-grid:has(#sec_services_strip) { border-top: 1px solid var(--zv-line); border-bottom: 1px solid var(--zv-line); }
.section-grid:has(#sec_home_strip) .cms-grid, .section-grid:has(#sec_services_strip) .cms-grid { gap: 0 !important; }
.section-grid:has(#sec_home_strip) .cms-grid-card, .section-grid:has(#sec_services_strip) .cms-grid-card { background: transparent !important; border: 0; border-right: 1px solid var(--zv-line); border-radius: 0 !important; box-shadow: none; text-align: left; padding: 2.4rem 1.8rem; }
.section-grid:has(#sec_home_strip) .cms-grid-card:last-child, .section-grid:has(#sec_services_strip) .cms-grid-card:last-child { border-right: 0; }
.section-grid:has(#sec_home_strip) .cms-grid-card-icon, .section-grid:has(#sec_services_strip) .cms-grid-card-icon { width: auto; height: auto; background: transparent; margin: 0 0 1.6rem; }
.section-grid:has(#sec_home_strip) .cms-grid-card-icon-glyph, .section-grid:has(#sec_services_strip) .cms-grid-card-icon-glyph { color: var(--zv-purple) !important; font-size: 3rem; }
.section-grid:has(#sec_home_strip) .cms-grid-card-body, .section-grid:has(#sec_services_strip) .cms-grid-card-body { padding: 0; }
.section-grid:has(#sec_home_strip) .cms-grid-card-title, .section-grid:has(#sec_services_strip) .cms-grid-card-title { font-size: 1.3rem; }

/* ── Blocks ────────────────────────────────────────────────────────────── */
#sec_home_about img, #sec_about_intro img, #sec_home_process img, #sec_services_process img { border-radius: 18px !important; }
#sec_home_about .cms-section-btn, #sec_about_intro .cms-section-btn { display: none; }

/* ── Process steps: first step purple, the rest light ───────────────────── */
#sec_home_process, #sec_services_process { align-items: center; }
#sec_home_process .section-image, #sec_services_process .section-image { padding: 0 !important; }
#sec_home_process .section-image img, #sec_services_process .section-image img { width: 100%; border-radius: 18px !important; display: block; }
.section-grid:has(#sec_home_process_steps), .section-grid:has(#sec_services_process_steps) { padding: 0 !important; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card, .section-grid:has(#sec_services_process_steps) .cms-grid-card { background: var(--zv-light) !important; border: 0; box-shadow: none; border-radius: 12px !important; text-align: left; padding: 1.5rem 1.8rem; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card:first-child, .section-grid:has(#sec_services_process_steps) .cms-grid-card:first-child { background: var(--zv-purple) !important; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card:first-child *, .section-grid:has(#sec_services_process_steps) .cms-grid-card:first-child * { color: #fff !important; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card:not(:first-child) .cms-grid-card-desc, .section-grid:has(#sec_services_process_steps) .cms-grid-card:not(:first-child) .cms-grid-card-desc { display: none; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card-body, .section-grid:has(#sec_services_process_steps) .cms-grid-card-body { padding: 0; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card-title, .section-grid:has(#sec_services_process_steps) .cms-grid-card-title { font-size: 1.3rem; margin: 0; }
.section-grid:has(#sec_home_process_steps) .cms-grid-card:first-child .cms-grid-card-title, .section-grid:has(#sec_services_process_steps) .cms-grid-card:first-child .cms-grid-card-title { margin-bottom: 0.6rem; }

/* ── Grid cards (shared) ───────────────────────────────────────────────── */
.theme-zirve .cms-grid-card { border-radius: 16px !important; }
.theme-zirve .cms-grid-card-title { font-family: var(--zv-font); font-weight: 800; font-size: 1.35rem; color: var(--zv-ink); }
.theme-zirve .cms-grid-card-desc { color: var(--zv-text); line-height: 1.65; }

/* services on a lilac gradient */
.section-grid:has(#sec_home_services), .section-grid:has(#sec_services_grid) { background: linear-gradient(180deg, var(--zv-light) 0%, var(--zv-lilac) 100%); }
.section-grid:has(#sec_home_services) .cms-grid-card, .section-grid:has(#sec_services_grid) .cms-grid-card { background: rgba(255, 255, 255, 0.7) !important; border: 1px solid #d9d2fb; box-shadow: none; text-align: left; padding: 2rem 1.8rem; }
.section-grid:has(#sec_home_services) .cms-grid-card-icon, .section-grid:has(#sec_services_grid) .cms-grid-card-icon { width: auto; height: auto; background: transparent; margin: 0 0 1rem; }
.section-grid:has(#sec_home_services) .cms-grid-card-icon-glyph, .section-grid:has(#sec_services_grid) .cms-grid-card-icon-glyph { color: var(--zv-ink) !important; font-size: 2.6rem; }
.section-grid:has(#sec_home_services) .cms-grid-card-body, .section-grid:has(#sec_services_grid) .cms-grid-card-body { padding: 0; }

/* team: portrait tiles with a caption band at the bottom */
.section-grid:has(#sec_home_team) .cms-grid-card, .section-grid:has(#sec_about_team) .cms-grid-card { background: transparent !important; border: 0; box-shadow: none; position: relative; overflow: hidden; }
.section-grid:has(#sec_home_team) .cms-grid-card-media, .section-grid:has(#sec_about_team) .cms-grid-card-media { aspect-ratio: 278 / 340; overflow: hidden; border-radius: 16px; }
.section-grid:has(#sec_home_team) .cms-grid-card-media img, .section-grid:has(#sec_about_team) .cms-grid-card-media img { width: 100%; height: 100%; object-fit: cover; }
.section-grid:has(#sec_home_team) .cms-grid-card-body, .section-grid:has(#sec_about_team) .cms-grid-card-body { position: absolute; left: 0; right: 0; bottom: 0; padding: 2.4rem 1rem 1rem; text-align: center; background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.7)); border-radius: 0 0 16px 16px; display: flex; flex-direction: column-reverse; }
.section-grid:has(#sec_home_team) .cms-grid-card-title, .section-grid:has(#sec_about_team) .cms-grid-card-title { color: #fff; font-size: 1.15rem; margin: 0; }
.section-grid:has(#sec_home_team) .cms-grid-card-desc, .section-grid:has(#sec_about_team) .cms-grid-card-desc { color: rgba(255, 255, 255, 0.85); font-size: 0.85rem; }

/* ── Testimonials: framed carousel + partner logos ──────────────────────── */
.section-carousel:has(#sec_home_testimonials), .section-carousel:has(#sec_about_testimonials) { padding-bottom: 0 !important; }
.section-carousel:has(#sec_home_testimonials) .container, .section-carousel:has(#sec_about_testimonials) .container { border: 1px solid var(--zv-line); border-bottom: 0; border-radius: 24px 24px 0 0; padding-top: 3.5rem; padding-bottom: 1rem; }
.theme-zirve .section-carousel .carousel-item-card { background: transparent; border: 0; box-shadow: none; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 1rem 2rem; }
.theme-zirve .section-carousel .carousel-item-media { width: 70px; height: 70px; border-radius: 50%; overflow: hidden; aspect-ratio: 1; margin: 0 0 1.2rem; }
.theme-zirve .section-carousel .carousel-item-media img { width: 100%; height: 100%; object-fit: cover; }
.theme-zirve .section-carousel .carousel-item-body { padding: 0; display: flex; flex-direction: column; align-items: center; max-width: 560px; }
.theme-zirve .section-carousel .carousel-item-desc { display: contents; }
.theme-zirve .section-carousel .carousel-item-heading { order: 2; font-size: 1.1rem; font-weight: 700; margin: 0.6rem 0 0; }
.theme-zirve .zv-quote { order: 1; margin: 0; color: var(--zv-text); }
.theme-zirve .zv-stars { order: 3; display: block; color: var(--zv-yellow); letter-spacing: 0.1em; font-size: 1.1rem; margin-top: 0.6rem; }
.theme-zirve .section-carousel .cms-carousel-arrow { background: #fff; border: 1px solid var(--zv-line); border-radius: 50%; color: var(--zv-ink); }
#sec_home_partners .container, #sec_about_partners .container { border: 1px solid var(--zv-line); border-top: 0; border-radius: 0 0 24px 24px; padding-bottom: 3rem; }
.theme-zirve .zv-partners { display: grid; grid-template-columns: 1fr 3fr; align-items: center; gap: 2rem; border-top: 1px solid var(--zv-line); padding-top: 2.5rem; margin: 0 8%; }
.theme-zirve .zv-partners h3 { font-size: 1.3rem; margin: 0; padding-right: 2rem; border-right: 1px solid var(--zv-line); }
.theme-zirve .zv-logos { list-style: none; margin: 0; padding: 0; display: flex; justify-content: space-around; gap: 1rem; }
.theme-zirve .zv-logos li { font-weight: 800; font-size: 1.4rem; color: #c6c6c6; }
.theme-zirve .zv-logos li::before { content: '\25C6'; margin-right: 0.4rem; font-size: 1rem; }

/* ── Think band + newsletter call ──────────────────────────────────────── */
.theme-zirve .zv-think { text-align: center; max-width: 720px; margin: 0 auto; }
.theme-zirve .zv-think .zv-avatars { display: flex; justify-content: center; gap: 1rem; margin-bottom: 1.6rem; }
.theme-zirve .zv-think .zv-avatars span { width: 88px; height: 88px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 2.4rem; }
.theme-zirve .zv-think .zv-avatars span:nth-child(1) { background: #cfe2ff; }
.theme-zirve .zv-think .zv-avatars span:nth-child(2) { background: #ffd6e8; }
.theme-zirve .zv-think .zv-avatars span:nth-child(3) { background: #ded4ff; }
.theme-zirve .zv-think h2 { font-size: clamp(2.2rem, 3.8vw, 3.1rem); margin: 0; }
#sec_home_newsletter { background: var(--zv-light); }
.theme-zirve .zv-news { text-align: center; max-width: 640px; margin: 0 auto; }
.theme-zirve .zv-news h2 { font-size: clamp(2.2rem, 3.8vw, 3.1rem); margin: 0 0 1.4rem; }

/* ── Blog cards (carousel on home, grid on blog page) ───────────────────── */
.section-carousel:has(#sec_home_blog) .carousel-item-card, .section-grid:has(#sec_blog_grid) .cms-grid-card { background: #fff !important; border: 1px solid #d9d2fb; box-shadow: none; border-radius: 16px; overflow: hidden; text-align: left; align-items: stretch; padding: 0; }
.section-carousel:has(#sec_home_blog) .carousel-item-media, .section-grid:has(#sec_blog_grid) .cms-grid-card-media { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 0; margin: 0; }
.section-carousel:has(#sec_home_blog) .carousel-item-body, .section-grid:has(#sec_blog_grid) .cms-grid-card-body { padding: 1.4rem 1.8rem 1.8rem; align-items: flex-start; text-align: left; max-width: none; }
.section-carousel:has(#sec_home_blog) .carousel-item-heading, .section-grid:has(#sec_blog_grid) .cms-grid-card-title { order: 1; font-size: 1.25rem; margin: 0 0 1rem; }
.theme-zirve .zv-link { order: 2; font-weight: 700; color: var(--zv-purple); text-decoration: underline; text-underline-offset: 4px; }

/* ── Contact ───────────────────────────────────────────────────────────── */
.theme-zirve .zv-contact-info { background: var(--zv-light); border: 1px solid var(--zv-line); border-radius: 16px; padding: 2rem; height: 100%; }
.theme-zirve .zv-contact-info h3 { font-size: 1.1rem; margin: 0 0 0.2rem; }
.theme-zirve .zv-contact-info p { margin: 0 0 1.2rem; }
.theme-zirve .zv-contact-info a { color: var(--zv-text); text-decoration: none; }
.theme-zirve .section-contact-form .container > div { border-radius: 16px !important; border-color: var(--zv-line) !important; }
.theme-zirve .cms-form-control { border-radius: 8px !important; }

/* ── Inner page hero ───────────────────────────────────────────────────── */
.zv-page-hero { background: var(--zv-light); padding: 4rem 0 3.5rem; text-align: center; }
.zv-page-hero h1 { font-size: clamp(2.4rem, 4.8vw, 3.6rem); margin: 0.4rem 0 0; }
.zv-breadcrumb { display: flex; justify-content: center; gap: 0.6rem; font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--zv-muted); }
.zv-breadcrumb a { color: var(--zv-ink); text-decoration: none; }
.zv-breadcrumb span:last-child { color: var(--zv-purple); }
.zv-page-lead { max-width: 560px; margin: 0.8rem auto 0; }

/* ── Footer ────────────────────────────────────────────────────────────── */
.zv-footer { padding: 4.5rem 0 0; }
.zv-footer .footer-heading, .zv-footer .footer-col-title { font-family: var(--zv-font); color: var(--zv-ink); font-size: 1.35rem; font-weight: 800; text-transform: none; letter-spacing: 0; margin-bottom: 1.4rem; }
.zv-footer .footer-logo-text { font-weight: 800; color: var(--zv-ink); }
.zv-footer .footer-link { color: var(--zv-text); transition: color 0.2s ease; }
.zv-footer .footer-link:hover { color: var(--zv-purple); }
.zv-footer .search-input, .zv-footer input[type="email"] { background: #fff !important; border: 1px solid var(--zv-line) !important; color: var(--zv-ink) !important; border-radius: 8px; }
.zv-footer .btn, .zv-footer button { background: var(--zv-purple) !important; color: #fff !important; border: 0 !important; border-radius: 8px !important; font-weight: 700; }
.zv-footer .footer-social .social-icon { width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; background: var(--zv-purple); color: #fff; }
.zv-footer-bar { background: var(--zv-purple); color: #fff; margin-top: 4rem; }
.zv-footer-bar .footer-bottom { border: 0; margin: 0; padding: 1.2rem 0; text-align: center; color: #fff; font-size: 0.95rem; }
.zv-footer-bar .footer-bottom a, .zv-footer-bar .footer-social .social-icon { color: #fff; background: transparent; }

/* ── Responsive ────────────────────────────────────────────────────────── */
@media (max-width: 1023px) {
  .zv-header-inner { grid-template-columns: auto 1fr; min-height: 72px; }
  /* the core mobile menu is the same .main-nav shown under the header — never hide its wrapper */
  .zv-header-nav, .zv-header-nav .header-slot-menu { display: contents; }
  .zv-header-nav .main-nav { background: #fff; flex-direction: column; align-items: stretch; padding: 0.5rem 0 0.75rem; border-top: 1px solid var(--zv-line); }
  .zv-header.is-scrolled .main-nav { background: var(--zv-purple); }
  .zv-header-nav .main-nav > * { width: 100%; }
  .zv-header-nav .nav-link { display: block; width: 100%; padding: 0.9rem 1.5rem; border-bottom: 1px solid var(--zv-line); }
  .zv-header-actions { justify-content: flex-end; }
  .zv-header-actions a[class*="btn"] { display: none; }
  #sec_home_hero .section-image img { width: 100%; margin: 0; }
  .section-grid:has(#sec_home_hero_stats) { position: static; margin-top: 1rem; }
  .section-grid:has(#sec_home_hero_stats) .cms-grid-card, .section-grid:has(#sec_home_hero_stats) .cms-grid-card:first-child { transform: none; width: 48%; }
  #sec_home_hero .columns-col:last-child { padding-bottom: 0; }
  .section-grid:has(#sec_home_strip) .cms-grid-card, .section-grid:has(#sec_services_strip) .cms-grid-card { border-right: 0; border-bottom: 1px solid var(--zv-line); }
  .theme-zirve .zv-partners { grid-template-columns: 1fr; margin: 0 1rem; }
  .theme-zirve .zv-partners h3 { border: 0; padding: 0; }
  .theme-zirve .zv-logos { flex-wrap: wrap; justify-content: flex-start; }
}
@media (max-width: 640px) {
  .theme-zirve .cms-section-head { margin-bottom: 1.75rem; }
  .theme-zirve .zv-list { grid-template-columns: 1fr; }
  .zv-page-hero { padding: 2.5rem 0; }
}
