/* Source: global-typography-semantic-v2.css */
/* KatVerra Global Typography semantic coverage v2
   Global controls size editorial/page headings. Compact component headings (cards, footer, navigation, badges, pricing widgets) keep their component-specific scale. */
.hero h1,.page-hero h1,.service-hero-copy h1,.service-page-hero h1{font-size:var(--kv-global-h1-desktop,48px);line-height:var(--kv-global-h1-line,1.12);font-weight:var(--kv-global-h1-weight,700)}
.service-longform h2,.service-reading>h2,.service-cta h2,.kv-longform-post .kv-longform-body h2,.kv-maintenance-layout .kv-maintenance-body h2{font-size:var(--kv-global-h2-desktop,34px);line-height:var(--kv-global-h2-line,1.18);font-weight:var(--kv-global-h2-weight,700)}
.kv-longform-post .kv-longform-body h3,.kv-maintenance-layout .kv-maintenance-body h3{font-size:var(--kv-global-h3-desktop,26px);line-height:var(--kv-global-h3-line,1.22);font-weight:var(--kv-global-h3-weight,700)}
@media(max-width:980px){
.hero h1,.page-hero h1,.service-hero-copy h1,.service-page-hero h1{font-size:var(--kv-global-h1-tablet,42px)}
.service-longform h2,.service-reading>h2,.service-cta h2,.kv-longform-post .kv-longform-body h2,.kv-maintenance-layout .kv-maintenance-body h2{font-size:var(--kv-global-h2-tablet,32px)}
.kv-longform-post .kv-longform-body h3,.kv-maintenance-layout .kv-maintenance-body h3{font-size:var(--kv-global-h3-tablet,24px)}
}
@media(max-width:620px){
.hero h1,.page-hero h1,.service-hero-copy h1,.service-page-hero h1{font-size:var(--kv-global-h1-mobile,34px)}
.service-longform h2,.service-reading>h2,.service-cta h2,.kv-longform-post .kv-longform-body h2,.kv-maintenance-layout .kv-maintenance-body h2{font-size:var(--kv-global-h2-mobile,28px)}
.kv-longform-post .kv-longform-body h3,.kv-maintenance-layout .kv-maintenance-body h3{font-size:var(--kv-global-h3-mobile,22px)}
}

/* Source: mobile-header-scroll-guard-v1.css */
/* Mobile header scroll guard. Scoped to open navigation; leaves editor and desktop unchanged. */
@media (max-width:980px){
  html.kv-mobile-nav-open .site-header{
    position:fixed!important;top:0!important;left:0!important;right:0!important;
    width:100%!important;z-index:100010!important;transform:none!important;
  }
  html.kv-mobile-nav-open .site-header .hamb{position:relative!important;z-index:100012!important;}
  html.kv-mobile-nav-open .site-header .main-nav{
    position:fixed!important;top:var(--kv-open-header-height,78px)!important;
    bottom:0!important;max-height:none!important;
    height:calc(100dvh - var(--kv-open-header-height,78px))!important;
    overflow-y:auto!important;overscroll-behavior:contain!important;
    z-index:100011!important;
  }
  html.kv-mobile-nav-open .site-header .main-nav.kv-mobile-fullscreen-overlay{
    padding-top:16px!important;
  }
}

/* Source: header-submenu-responsive-v1.css */
/* Header Editor responsive submenu controls (v1).
   Loaded after legacy header CSS in both public pages and the editor iframe.
   Only the Services submenu is affected; mobile menu, hamburger and editor layout stay intact. */
.site-header .main-nav .has-menu .mega a{
  box-sizing:border-box;
  min-width:0;
  align-items:stretch!important;
}
.site-header .main-nav .has-menu .mega a strong,
.site-header .main-nav .has-menu .mega a small{
  display:block!important;
  box-sizing:border-box;
  width:100%!important;
  min-width:0;
  align-self:stretch!important;
}
@media (min-width:981px){
 .site-header .main-nav .has-menu .mega{width:var(--kv-submenu-width-desktop,var(--kv-submenu-width,760px))!important;gap:var(--kv-submenu-item-gap-desktop,10px)!important}
 .site-header .main-nav .has-menu .mega a{padding:var(--kv-submenu-item-padding-desktop,14px 16px)!important}
 .site-header .main-nav .has-menu .mega a strong{text-align:var(--kv-submenu-title-align-desktop,var(--kv-submenu-title-align,left))!important;font-size:var(--kv-submenu-font-desktop,15px)!important}
 .site-header .main-nav .has-menu .mega a small{text-align:var(--kv-submenu-desc-align-desktop,var(--kv-submenu-desc-align,left))!important;font-size:var(--kv-submenu-desc-font-desktop,12px)!important}
}
@media (min-width:621px) and (max-width:980px){
 .site-header .main-nav .has-menu .mega{width:var(--kv-submenu-width-tablet,100%)!important;max-width:100%!important;gap:var(--kv-submenu-item-gap-tablet,8px)!important}
 .site-header .main-nav .has-menu .mega a{padding:var(--kv-submenu-item-padding-tablet,14px 18px)!important}
 .site-header .main-nav .has-menu .mega a strong{text-align:var(--kv-submenu-title-align-tablet,var(--kv-submenu-title-align,left))!important;font-size:var(--kv-submenu-font-tablet,14px)!important}
 .site-header .main-nav .has-menu .mega a small{text-align:var(--kv-submenu-desc-align-tablet,var(--kv-submenu-desc-align,left))!important;font-size:var(--kv-submenu-desc-font-tablet,12px)!important}
}
@media (max-width:620px){
 .site-header .main-nav .has-menu .mega{width:var(--kv-submenu-width-mobile,100%)!important;max-width:100%!important;gap:var(--kv-submenu-item-gap-mobile,8px)!important}
 .site-header .main-nav .has-menu .mega a{padding:var(--kv-submenu-item-padding-mobile,15px 20px)!important}
 .site-header .main-nav .has-menu .mega a strong{text-align:var(--kv-submenu-title-align-mobile,var(--kv-submenu-title-align,left))!important;font-size:var(--kv-submenu-font-mobile,14px)!important}
 .site-header .main-nav .has-menu .mega a small{text-align:var(--kv-submenu-desc-align-mobile,var(--kv-submenu-desc-align,left))!important;font-size:var(--kv-submenu-desc-font-mobile,12px)!important}
}

/* Source: katverra-premium-sitewide-v1.css */
/* KatVerra Premium Sitewide Visual Layer v1 — 2026-10-05
   VISUAL/CRO ONLY. Does not alter SEO metadata, URLs, headings, schema or copy.
   local-seo-citations is deliberately excluded because it is the approved reference design. */
:root{--kv-premium-navy:#07111e;--kv-premium-navy2:#111f36;--kv-premium-cyan:#19c6d6;--kv-premium-violet:#8b5cf6;--kv-premium-ink:#101827;--kv-premium-copy:#5d6677;--kv-premium-line:#dfe7f1;--kv-premium-soft:#f6f8fc}

/* Shared visual rhythm */
body:not(.kv-route-local-seo-citations) #kv-main-content .section{position:relative}
body:not(.kv-route-local-seo-citations) #kv-main-content .card{border:1px solid #e1e8f1;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(18,23,34,.045);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;overflow:hidden}
body:not(.kv-route-local-seo-citations) #kv-main-content .card:hover{transform:translateY(-4px);border-color:#cbdbe8;box-shadow:0 22px 48px rgba(18,23,34,.09)}
body:not(.kv-route-local-seo-citations) #kv-main-content .btn{border-radius:13px;min-height:48px;font-weight:800;box-shadow:0 10px 24px rgba(8,127,139,.12)}
body:not(.kv-route-local-seo-citations) #kv-main-content .btn.primary{background:linear-gradient(135deg,#12aeba,#7c5ce5)}

/* Premium inner-page hero. Existing H1/copy remain untouched. */
.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child{position:relative;isolation:isolate;overflow:hidden;min-height:350px;display:flex;align-items:center;padding:78px 0!important;background:radial-gradient(circle at 13% 18%,rgba(25,198,214,.20),transparent 29%),radial-gradient(circle at 88% 76%,rgba(139,92,246,.17),transparent 30%),linear-gradient(135deg,#07111e 0%,#0d1a2d 57%,#111b31 100%)!important;color:#fff!important;text-align:left!important}
.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(5,13,24,.98) 0%,rgba(5,13,24,.88) 45%,rgba(5,13,24,.36) 72%,rgba(5,13,24,.18) 100%)}
.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child:after{content:"";position:absolute;z-index:-3;right:0;top:0;width:48%;height:100%;background-image:var(--kv-premium-hero-image,linear-gradient(145deg,rgba(25,198,214,.12),rgba(139,92,246,.16)));background-size:cover;background-position:center;opacity:.82;filter:saturate(.88) contrast(1.03)}
.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child>.container{position:relative;z-index:2;width:min(92%,1160px);margin-inline:auto}
.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child h1{max-width:720px;margin:0 0 18px!important;color:#fff!important;text-align:left!important;letter-spacing:-.032em}
.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child p{max-width:680px;margin:0!important;color:#d5dfed!important;text-align:left!important;font-size:18px;line-height:1.72}

/* Page-relevant existing image assets — visual only, no SEO content replacement. */
.kv-route-about{--kv-premium-hero-image:url('/images/homepage/hero-slide-operations-stilllife-phase58-2a2.webp')}
.kv-route-portfolio{--kv-premium-hero-image:url('/images/portfolio-samples/01-web-design-realistic-phase31-7-2.png')}
.kv-route-services{--kv-premium-hero-image:url('/images/homepage/hero-slide-workflow-stilllife-phase58-2a2.webp')}
.kv-route-contact{--kv-premium-hero-image:url('/images/homepage/hero-slide-operations-stilllife-phase58-2a2.webp')}
.kv-route-blog{--kv-premium-hero-image:url('/images/homepage/hero-slide-creative-stilllife-phase58-2a2.webp')}
.kv-route-virtual-assistance,.kv-route-administrative-support{--kv-premium-hero-image:url('/images/homepage/service-va.jpg')}
.kv-route-local-citation-services,.kv-route-local-citation-services-v243,.kv-route-white-label-citation-building{--kv-premium-hero-image:url('/images/seo/local-seo-visibility-framework.webp')}
.kv-route-web-design-development,.kv-route-small-business-wordpress-design,.kv-route-divi-web-design,.kv-route-wordpress-maintenance-services,.kv-route-wordpress-virtual-assistant{--kv-premium-hero-image:url('/images/portfolio-samples/01-web-design-realistic-phase31-7-2.png')}
.kv-route-canva-virtual-assistant,.kv-route-graphics-branding{--kv-premium-hero-image:url('/images/homepage/service-canva.jpg')}
.kv-route-marketing-support,.kv-route-marketing-virtual-assistant,.kv-route-seo-virtual-assistant{--kv-premium-hero-image:url('/images/homepage/service-marketing.jpg')}
.kv-route-data-analysis-reporting,.kv-route-excel-dashboard-services{--kv-premium-hero-image:url('/images/portfolio-samples/05-dashboard-realistic-phase31-7-2.png')}
.kv-route-automation-workflow-support,.kv-route-ai-business-support{--kv-premium-hero-image:url('/images/homepage/service-automation.jpg')}
.kv-route-presentation-design-services{--kv-premium-hero-image:url('/images/portfolio-samples/04-presentation-realistic-phase31-7-2.png')}

/* Homepage: preserve existing slider images and copy, elevate the composition. */
.kv-page-home #kv-home-hero{min-height:610px;display:flex;align-items:center;padding:92px 0!important}
.kv-page-home #kv-home-hero .hero-grid{gap:54px;align-items:center}
.kv-page-home #kv-home-hero h1{letter-spacing:-.038em;max-width:760px}
.kv-page-home #kv-home-hero p{max-width:700px;font-size:18px;line-height:1.72;color:#dbe5f2}
.kv-page-home #kv-home-hero .hero-card{border:1px solid rgba(255,255,255,.15);border-radius:26px;background:linear-gradient(145deg,rgba(9,25,43,.78),rgba(19,35,59,.62));box-shadow:0 28px 70px rgba(0,0,0,.28);backdrop-filter:blur(13px);padding:30px}
.kv-page-home #kv-home-hero .hero-card h2{margin-top:0;color:#fff}
.kv-page-home #kv-home-hero .hero-card p,.kv-page-home #kv-home-hero .hero-card li{color:#cbd7e7}
.kv-page-home #kv-home-hero .trust-row{gap:10px;flex-wrap:wrap}
.kv-page-home #kv-home-hero .trust-row span{padding:7px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.06);font-size:12px}

/* Service / portfolio / blog grids get the same approved visual language without changing their content. */
body:not(.kv-route-local-seo-citations) #kv-main-content .service-grid,
body:not(.kv-route-local-seo-citations) #kv-main-content .blog-grid{gap:20px}
body:not(.kv-route-local-seo-citations) #kv-main-content .service-grid .card,
body:not(.kv-route-local-seo-citations) #kv-main-content .blog-grid .card{padding:0 0 24px}
body:not(.kv-route-local-seo-citations) #kv-main-content .service-grid .card img,
body:not(.kv-route-local-seo-citations) #kv-main-content .blog-grid .card img{width:100%;aspect-ratio:16/10;object-fit:cover}
body:not(.kv-route-local-seo-citations) #kv-main-content .service-grid .card>:not(img),
body:not(.kv-route-local-seo-citations) #kv-main-content .blog-grid .card>:not(img){margin-left:24px;margin-right:24px}

/* Legal/transactional pages stay restrained: no decorative hero image needed. */
.kv-route-privacy-policy,.kv-route-terms-conditions,.kv-route-payment-success,.kv-route-checkout-start{--kv-premium-hero-image:none}
.kv-route-privacy-policy #kv-main-content>.page-hero:first-child:after,.kv-route-terms-conditions #kv-main-content>.page-hero:first-child:after,.kv-route-payment-success #kv-main-content>.page-hero:first-child:after,.kv-route-checkout-start #kv-main-content>.page-hero:first-child:after{display:none}

@media(max-width:980px){
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child{min-height:320px;padding:66px 0!important}
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child:before{background:linear-gradient(90deg,rgba(5,13,24,.97),rgba(5,13,24,.76))}
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child:after{width:55%;opacity:.56}
 .kv-page-home #kv-home-hero{min-height:560px;padding:76px 0!important}
}
@media(max-width:650px){
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child{min-height:0;padding:54px 0!important;text-align:center!important}
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child:before{background:linear-gradient(180deg,rgba(5,13,24,.84),rgba(5,13,24,.96))}
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child:after{inset:0;width:100%;height:100%;opacity:.34}
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child h1,.kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child p{max-width:100%;text-align:center!important;margin-left:auto!important;margin-right:auto!important}
 .kv-page-inner:not(.kv-route-local-seo-citations) #kv-main-content>.page-hero:first-child p{font-size:16px}
 .kv-page-home #kv-home-hero{min-height:0;padding:58px 0!important}
 .kv-page-home #kv-home-hero .hero-grid{gap:28px}
 .kv-page-home #kv-home-hero .hero-card{padding:22px;border-radius:20px}
 body:not(.kv-route-local-seo-citations) #kv-main-content .card{border-radius:18px}
}

