/*
Theme Name: In-Vidia Child
Description: Child theme for In-Vidia.it frontend customizations.
Author: In-Vidia
Template: in-vidia
Version: 1.0.0
Text Domain: invidia-child
*/

/* BEGIN INVIDIA BRAND SYSTEM v1.0.0 */
/* In-Vidia Brand System v1.0.0
   Direction: Bold Violet + restrained magenta accent
   Scope: visual layer only. No content/layout/data changes.
*/

:root{
  --iv-violet:#6D28D9;
  --iv-violet-2:#7C3AED;
  --iv-violet-dark:#4C1D95;
  --iv-magenta:#EC4899;
  --iv-pink:#FF6BBD;
  --iv-ink:#111827;
  --iv-muted:#667085;
  --iv-soft:#F8F7FC;
  --iv-soft-violet:#F3EEFF;
  --iv-border:#E7E0F4;
  --iv-white:#FFFFFF;
  --iv-success:#087A2F;
  --iv-gradient:linear-gradient(135deg,#6D28D9 0%,#7C3AED 58%,#EC4899 100%);
  --iv-shadow:0 14px 38px rgba(76,29,149,.10);
}

/* Global interaction layer */
html{accent-color:var(--iv-violet)}
::selection{background:rgba(124,58,237,.20);color:var(--iv-ink)}
a{transition:color .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}
a:hover{color:var(--iv-violet)}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(124,58,237,.28)!important;outline-offset:2px}

/* Standard WordPress buttons */
.wp-element-button,
.wp-block-button__link,
button[type="submit"],
input[type="submit"]{
  border-color:transparent!important;
  background:var(--iv-gradient)!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(109,40,217,.18);
}
.wp-element-button:hover,
.wp-block-button__link:hover,
button[type="submit"]:hover,
input[type="submit"]:hover{
  color:#fff!important;
  box-shadow:0 10px 28px rgba(109,40,217,.26);
  filter:saturate(1.05) brightness(.98);
}

/* Header/navigation accents – intentionally conservative */
.current-menu-item>a,
.current_page_item>a,
.current-menu-ancestor>a,
.current_page_ancestor>a{color:var(--iv-violet)!important}
.site-header a:hover,
header a:hover{color:var(--iv-violet)}

/* Common content/UI surfaces */
.wp-block-quote,
.wp-block-table,
.wp-block-group.is-style-default,
.wp-block-details,
.wp-block-code{border-color:var(--iv-border)}
.wp-block-quote{border-left-color:var(--iv-violet)!important}
.wp-block-separator{border-color:var(--iv-border)!important;color:var(--iv-border)!important}

/* Form controls */
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
select,textarea{
  border-color:#D8D0E7!important;
}
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus,
select:focus,textarea:focus{
  border-color:var(--iv-violet)!important;
  box-shadow:0 0 0 3px rgba(124,58,237,.10)!important;
}

/* Digital Score – preserve behavior, rebrand only */
.invidia-ds{
  --ids-border:var(--iv-border)!important;
  --ids-muted:var(--iv-muted)!important;
  --ids-bg:#fff!important;
}
.invidia-ds .ids-card{border-color:var(--iv-border)!important;box-shadow:var(--iv-shadow)!important}
.invidia-ds .ids-primary,
.invidia-ds .ids-buy{
  background:var(--iv-gradient)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(109,40,217,.18)!important;
}
.invidia-ds .ids-primary:hover,.invidia-ds .ids-buy:hover{filter:saturate(1.05) brightness(.98)}
.invidia-ds .ids-progress span,
.invidia-ds .ids-bar i{background:var(--iv-gradient)!important}
.invidia-ds .ids-option:hover,
.invidia-ds .ids-option.is-selected{
  border-color:var(--iv-violet)!important;
  box-shadow:0 0 0 1px var(--iv-violet) inset!important;
  background:var(--iv-soft-violet)!important;
}
.invidia-ds .ids-option.is-selected span{background:var(--iv-violet)!important;color:#fff!important}
.invidia-ds .ids-score,.invidia-ds .ids-kicker,.invidia-ds .ids-priority{color:var(--iv-violet-dark)}
.invidia-ds .ids-solution,
.invidia-ds .ids-report-action,
.invidia-ds .ids-premium{background:var(--iv-soft-violet)!important}
.invidia-ds .ids-report-tags span{background:var(--iv-soft-violet)!important;color:var(--iv-violet-dark)!important}
.invidia-ds-site-cta{
  border-color:var(--iv-border)!important;
  background:linear-gradient(135deg,#fff 0%,var(--iv-soft-violet) 100%)!important;
  box-shadow:0 10px 30px rgba(76,29,149,.07);
}
.invidia-ds-site-cta strong{color:var(--iv-ink)!important}
.invidia-ds-site-cta a{
  background:var(--iv-gradient)!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(109,40,217,.18)!important;
}

/* PRO – keep all logic/layout, swap design tokens */
.ivpro{
  --p:var(--iv-violet)!important;
  --t:var(--iv-ink)!important;
  --m:var(--iv-muted)!important;
  --b:var(--iv-border)!important;
  --bg:var(--iv-soft)!important;
  --ok:var(--iv-success)!important;
}
.ivpro-shell{border-color:var(--iv-border)!important;box-shadow:var(--iv-shadow)!important}
.ivpro-hero{background:linear-gradient(135deg,#fff 0%,var(--iv-soft-violet) 100%)!important}
.ivpro-badge{border-color:#CDBEF1!important;color:var(--iv-violet-dark)!important;background:rgba(255,255,255,.72)}
.ivpro-tabs button.is-active{color:var(--iv-violet-dark)!important}
.ivpro-tabs button.is-active::after{background:var(--iv-gradient)!important}
.ivpro-section-head>span,
.ivpro-module-card>span,
.ivpro-ranked b{background:var(--iv-gradient)!important;box-shadow:0 7px 18px rgba(109,40,217,.18)!important}
.ivpro-primary{
  background:var(--iv-gradient)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(109,40,217,.18)!important;
}
.ivpro-primary:hover{filter:saturate(1.05) brightness(.98)}
.ivpro-module-card,
.ivpro-tool,
.ivpro-loop,
.ivpro-pricing,
.ivpro-check,
.ivpro-result,
.ivpro-kpi-list details{border-color:var(--iv-border)!important}
.ivpro-result,.ivpro-ready-score,.ivpro-loop span{background:var(--iv-soft)!important}
.ivpro-field input:focus,
.ivpro-check select:focus,
.ivpro-priority-row input:focus{border-color:var(--iv-violet)!important;box-shadow:0 0 0 3px rgba(124,58,237,.10)!important;outline:0!important}
.ivpro-copy-output code{background:linear-gradient(135deg,#171026,#241441)!important}

/* Glossary / accordions / generic pills, where current theme classes vary */
:where(.tag,.badge,.pill,[class*="tag"],[class*="badge"]){--iv-local-accent:var(--iv-violet)}

/* Dark footer/header surfaces get a subtle violet undertone without changing structure. */
.site-footer,footer.site-footer,[class*="footer"]{
  --iv-footer-accent:var(--iv-violet-2);
}
.site-footer a:hover,footer.site-footer a:hover,[class*="footer"] a:hover{color:#C4A7FF}

/* Mobile: keep touch targets clean; no layout changes. */
@media(max-width:720px){
  .wp-element-button,.wp-block-button__link,button[type="submit"],input[type="submit"]{min-height:44px}
}
/* END INVIDIA BRAND SYSTEM */









/* BEGIN INVIDIA BRAND SYSTEM */
/* Version: 1.2.6 */
/* In-Vidia Brand System v1.1.1
   Bold Violet + Magenta / persistent child-theme layer
*/
:root{
  --iv-violet:#6D28D9;
  --iv-violet-2:#7C3AED;
  --iv-violet-dark:#4C1D95;
  --iv-magenta:#EC4899;
  --iv-pink:#FF6BBD;
  --iv-ink:#111827;
  --iv-muted:#667085;
  --iv-soft:#F8F7FC;
  --iv-soft-violet:#F3EEFF;
  --iv-border:#E7E0F4;
  --iv-white:#FFFFFF;
  --iv-success:#087A2F;
  --iv-gradient:linear-gradient(135deg,#6D28D9 0%,#7C3AED 58%,#EC4899 100%);
  --iv-shadow:0 14px 38px rgba(76,29,149,.10);
}
html{accent-color:var(--iv-violet)}
::selection{background:rgba(124,58,237,.20);color:var(--iv-ink)}
a{transition:color .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}
a:hover{color:var(--iv-violet)}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(124,58,237,.28)!important;outline-offset:2px}

/* Generic buttons */
.wp-element-button,.wp-block-button__link,button[type="submit"],input[type="submit"],
.site-main a.button,.site-main .button,.site-main [class*="btn-primary"],.site-main [class*="button-primary"]{
  border-color:transparent!important;background:var(--iv-gradient)!important;color:#fff!important;
  box-shadow:0 8px 22px rgba(109,40,217,.18)!important;
}
.wp-element-button:hover,.wp-block-button__link:hover,button[type="submit"]:hover,input[type="submit"]:hover,
.site-main a.button:hover,.site-main .button:hover{color:#fff!important;box-shadow:0 10px 28px rgba(109,40,217,.26)!important;filter:saturate(1.05) brightness(.98)}

/* Homepage custom CTAs - explicit fallback for current custom hero */
body.home a[href*="/contatti"],
body.home a[href*="/contact"]{
  background:var(--iv-gradient)!important;color:#fff!important;border-color:transparent!important;
  box-shadow:0 10px 26px rgba(109,40,217,.22)!important;
}
body.home a[href*="/servizi"],
body.home a[href*="/services"]{
  color:var(--iv-violet-dark)!important;border-color:var(--iv-violet)!important;background:#fff!important;
}
body.home :is(main,#primary,.site-main) :is(.eyebrow,.kicker,.overline,[class*="eyebrow"],[class*="kicker"],[class*="overline"],[class*="suptitle"]){color:var(--iv-violet)!important}

/* Navigation */
.current-menu-item>a,.current_page_item>a,.current-menu-ancestor>a,.current_page_ancestor>a{color:var(--iv-violet)!important}
.site-header a:hover,header a:hover{color:var(--iv-violet)!important}

/* Surfaces and accents */
.wp-block-quote,.wp-block-table,.wp-block-group.is-style-default,.wp-block-details,.wp-block-code{border-color:var(--iv-border)}
.wp-block-quote{border-left-color:var(--iv-violet)!important}
.wp-block-separator{border-color:var(--iv-border)!important;color:var(--iv-border)!important}

/* Inputs */
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),select,textarea{border-color:#D8D0E7!important}
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus,select:focus,textarea:focus{border-color:var(--iv-violet)!important;box-shadow:0 0 0 3px rgba(124,58,237,.10)!important}

/* Digital Score */
.invidia-ds{--ids-border:var(--iv-border)!important;--ids-muted:var(--iv-muted)!important;--ids-bg:#fff!important}
.invidia-ds .ids-card{border-color:var(--iv-border)!important;box-shadow:var(--iv-shadow)!important}
.invidia-ds .ids-primary,.invidia-ds .ids-buy{background:var(--iv-gradient)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 8px 22px rgba(109,40,217,.18)!important}
.invidia-ds .ids-progress span,.invidia-ds .ids-bar i{background:var(--iv-gradient)!important}
.invidia-ds .ids-option:hover,.invidia-ds .ids-option.is-selected{border-color:var(--iv-violet)!important;box-shadow:0 0 0 1px var(--iv-violet) inset!important;background:var(--iv-soft-violet)!important}
.invidia-ds .ids-option.is-selected span{background:var(--iv-violet)!important;color:#fff!important}
.invidia-ds .ids-score,.invidia-ds .ids-kicker,.invidia-ds .ids-priority{color:var(--iv-violet-dark)!important}
.invidia-ds .ids-solution,.invidia-ds .ids-report-action,.invidia-ds .ids-premium{background:var(--iv-soft-violet)!important}
.invidia-ds .ids-report-tags span{background:var(--iv-soft-violet)!important;color:var(--iv-violet-dark)!important}
.invidia-ds-site-cta{border-color:var(--iv-border)!important;background:linear-gradient(135deg,#fff 0%,var(--iv-soft-violet) 100%)!important;box-shadow:0 10px 30px rgba(76,29,149,.07)!important}
.invidia-ds-site-cta a{background:var(--iv-gradient)!important;color:#fff!important;box-shadow:0 8px 22px rgba(109,40,217,.18)!important}

/* PRO */
.ivpro{--p:var(--iv-violet)!important;--t:var(--iv-ink)!important;--m:var(--iv-muted)!important;--b:var(--iv-border)!important;--bg:var(--iv-soft)!important;--ok:var(--iv-success)!important}
.ivpro-shell{border-color:var(--iv-border)!important;box-shadow:var(--iv-shadow)!important}
.ivpro-hero{background:linear-gradient(135deg,#fff 0%,var(--iv-soft-violet) 100%)!important}
.ivpro-badge{border-color:#CDBEF1!important;color:var(--iv-violet-dark)!important;background:rgba(255,255,255,.72)!important}
.ivpro-tabs button.is-active{color:var(--iv-violet-dark)!important}
.ivpro-tabs button.is-active::after{background:var(--iv-gradient)!important}
.ivpro-section-head>span,.ivpro-module-card>span,.ivpro-ranked b{background:var(--iv-gradient)!important;box-shadow:0 7px 18px rgba(109,40,217,.18)!important}
.ivpro-primary{background:var(--iv-gradient)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 8px 22px rgba(109,40,217,.18)!important}
.ivpro-module-card,.ivpro-tool,.ivpro-loop,.ivpro-pricing,.ivpro-check,.ivpro-result,.ivpro-kpi-list details{border-color:var(--iv-border)!important}
.ivpro-result,.ivpro-ready-score,.ivpro-loop span{background:var(--iv-soft)!important}
.ivpro-field input:focus,.ivpro-check select:focus,.ivpro-priority-row input:focus{border-color:var(--iv-violet)!important;box-shadow:0 0 0 3px rgba(124,58,237,.10)!important;outline:0!important}
.ivpro-copy-output code{background:linear-gradient(135deg,#171026,#241441)!important}

.site-footer,footer.site-footer,[class*="footer"]{--iv-footer-accent:var(--iv-violet-2)}
.site-footer a:hover,footer.site-footer a:hover,[class*="footer"] a:hover{color:#C4A7FF!important}
@media(max-width:720px){.wp-element-button,.wp-block-button__link,button[type="submit"],input[type="submit"]{min-height:44px}}


/* v1.0.5 — legacy blue cleanup, Home + bilingual equivalents */
/* Hero/action groups: stronger than legacy child-theme selectors but scoped to Home. */
body.home :is([class*="hero"],[class*="Hero"],[class*="cta"],[class*="CTA"],[class*="action"],[class*="Action"]) :is(a,button):not([class*="lang"]):not([aria-label*="menu"]),
body.home main :is(a,button)[class*="primary"],
body.home main :is(a,button)[class*="Primary"]{
  background:var(--iv-gradient)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(109,40,217,.22)!important;
}
/* Secondary hero/action button stays white but uses violet outline/text. */
body.home :is([class*="hero"],[class*="Hero"],[class*="cta"],[class*="CTA"],[class*="action"],[class*="Action"]) :is(a,button):nth-of-type(2),
body.home main :is(a,button)[class*="secondary"],
body.home main :is(a,button)[class*="Secondary"]{
  background:#fff!important;
  color:var(--iv-violet-dark)!important;
  border-color:var(--iv-violet)!important;
  box-shadow:none!important;
}
/* Explicit current hero copy fallbacks, including hash/contact variants. */
body.home main a[href*="contatt"],
body.home main a[href*="contact"],
body.home main a[href^="#"]:is([class*="btn"],[class*="button"],[class*="cta"]){
  background:var(--iv-gradient)!important;
  border-color:transparent!important;
  color:#fff!important;
}
body.home main a[href*="serviz"],
body.home main a[href*="service"]{
  background:#fff!important;
  color:var(--iv-violet-dark)!important;
  border-color:var(--iv-violet)!important;
}
/* Legacy blue charts/progress bars in the Home illustration and KPI blocks. */
body.home main :is([class*="progress"],[class*="Progress"],[class*="bar"],[class*="Bar"]) > :is(span,i,b,div),
body.home main :is([class*="progress"],[class*="Progress"]):before,
body.home main :is([class*="progress"],[class*="Progress"]):after{
  background:var(--iv-gradient)!important;
  border-color:var(--iv-violet)!important;
}
/* Common SVG/chart primitives when the current component exposes semantic classes. */
body.home main :is([class*="chart"],[class*="Chart"],[class*="kpi"],[class*="KPI"]) svg :is(path,line,polyline,rect)[stroke]:not([stroke="none"]){stroke:var(--iv-violet)!important}
body.home main :is([class*="chart"],[class*="Chart"],[class*="kpi"],[class*="KPI"]) svg :is(path,rect,circle)[fill]:not([fill="none"]):not([fill="white"]):not([fill="#fff"]):not([fill="#ffffff"]){fill:var(--iv-violet)!important}
/* Keep text/nav/logo navy: brand energy lives in interactive and data accents. */
body.home h1,body.home h2,body.home h3,body.home .site-title,body.home .site-branding{color:var(--iv-ink)}

/* v1.0.6 — final legacy blue cleanup and component consistency */
/* Home/service-card inline discovery links: text links, never highlighter-style buttons. */
body.home main :is(
  a[href*="consulenza-ecommerce"],
  a[href*="digital-strategy"],
  a[href*="omnichannel"],
  a[href*="cro-performance"],
  a[href*="temporary-ecommerce"],
  a[href*="digitalizzazione"],
  a[href*="training"]
){
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-height:0!important;
  padding:0!important;
  margin-top:.35rem!important;
  background:transparent!important;
  background-image:none!important;
  color:var(--iv-violet)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  font-weight:800!important;
}
body.home main :is(
  a[href*="consulenza-ecommerce"],
  a[href*="digital-strategy"],
  a[href*="omnichannel"],
  a[href*="cro-performance"],
  a[href*="temporary-ecommerce"],
  a[href*="digitalizzazione"],
  a[href*="training"]
):hover{
  color:var(--iv-magenta)!important;
  background:transparent!important;
  box-shadow:none!important;
  text-decoration:underline!important;
  text-underline-offset:.2em;
}

/* Home editorial/navigation text links that still inherited the old electric blue. */
body.home main :is(
  a[href*="come-lavoro"],
  a[href*="investiment"],
  a[href*="/blog"],
  a[href*="linkedin.com"]
):not(.wp-block-button__link):not(.button):not([class*="btn"]){
  color:var(--iv-violet)!important;
  text-decoration-color:rgba(109,40,217,.42)!important;
}
body.home main :is(
  a[href*="come-lavoro"],
  a[href*="investiment"],
  a[href*="/blog"],
  a[href*="linkedin.com"]
):not(.wp-block-button__link):not(.button):not([class*="btn"]):hover{
  color:var(--iv-magenta)!important;
  text-decoration-color:var(--iv-magenta)!important;
}

/* Service/process numeric markers: replace legacy blue circles/squares with brand gradient. */
body.home main :is(
  .step-number,.step__number,.process-number,.process__number,.service-number,.service__number,
  [class*="step-number"],[class*="step_number"],[class*="process-number"],[class*="process_number"],
  [class*="service-number"],[class*="service_number"],[class*="card-number"],[class*="card_number"]
){
  background:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 7px 18px rgba(109,40,217,.15)!important;
}
/* Common numbered chips in current Home markup. */
body.home main :is(.steps,.process,.services,[class*="steps"],[class*="process"],[class*="services"]) :is(span,b,strong):where([class*="num"],[class*="index"],[class*="badge"]){
  background:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
}

/* Blog/category pills, both Home cards and archive/listing cards. */
body :is(
  .post-categories a,.cat-links a,.entry-categories a,.entry-category a,.post-category a,
  [class*="post-category"] a,[class*="post_category"] a,[class*="category-badge"],[class*="category_badge"],
  [class*="cat-badge"],[class*="cat_badge"]
){
  background:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 6px 16px rgba(109,40,217,.14)!important;
}
body :is(
  .post-categories a,.cat-links a,.entry-categories a,.entry-category a,.post-category a,
  [class*="post-category"] a,[class*="post_category"] a
):hover{color:#fff!important;filter:brightness(.97) saturate(1.05)}

/* Current article-card category chips sometimes arrive as generic taxonomy links. */
body :is(.blog,.archive,.home) main article :is(header,.entry-meta,[class*="meta"],[class*="tax"],[class*="cat"]) a[href*="categor"]{
  background:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
}

/* Checkmarks / positive list accents: violet, while semantic PASS states remain green in admin/tools. */
body.home main :is(.check,.checks,.checklist,[class*="check-list"],[class*="checklist"]) li::marker{color:var(--iv-violet)!important}
body.home main :is(.check,.checks,.checklist,[class*="check-list"],[class*="checklist"]) :is(span,i,svg){
  color:var(--iv-violet)!important;
}
body.home main :is(.check,.checks,.checklist,[class*="check-list"],[class*="checklist"]) svg :is(path,polyline){
  stroke:var(--iv-violet)!important;
}


/* Strong fallbacks for the current custom Home markup. */
body :is(.home,.blog,.archive) main a[href*="/category/"],
body :is(.home,.blog,.archive) main a[href*="/categoria/"]{
  background:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 6px 16px rgba(109,40,217,.14)!important;
}
body.home main :is([class*="service-card"],[class*="service_card"],[class*="process-step"],[class*="process_step"],[class*="method-step"],[class*="method_step"],[class*="timeline-step"],[class*="timeline_step"],[class*="step-card"],[class*="step_card"]) :is(.number,.num,.index,.badge,[class*="number"],[class*="index"]){
  background:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 7px 18px rgba(109,40,217,.15)!important;
}

/* Footer headings need readable contrast on the navy surface. */
.site-footer :is(h2,h3,h4,h5,h6,.widget-title,[class*="footer-title"],[class*="footer_title"],[class*="column-title"],[class*="column_title"]),
footer.site-footer :is(h2,h3,h4,h5,h6,.widget-title,[class*="footer-title"],[class*="footer_title"],[class*="column-title"],[class*="column_title"]),
footer :is(.footer-widgets,.site-info,[class*="footer-inner"],[class*="footer_inner"]) :is(h2,h3,h4,h5,h6,.widget-title){
  color:#E9DFFF!important;
  opacity:1!important;
}
.site-footer a,footer.site-footer a{color:#F8F5FF}
.site-footer a:hover,footer.site-footer a:hover{color:#D8C4FF!important}

/* Accent labels and non-button blue chips/markers across the current Home. */
body.home main :is(.eyebrow,.kicker,.overline,[class*="eyebrow"],[class*="kicker"],[class*="overline"],[class*="suptitle"]){
  color:var(--iv-violet)!important;
}

/* Do not recolor embedded raster illustrations: their internal blues are image pixels, not CSS.
   Those assets can be regenerated/replaced separately without touching layout. */


/* v1.0.7 — rendered-component normalization classes.
   These classes are assigned by the tiny persisted runtime only when an existing legacy component is detected. */
.ivb-inline-link,
.ivb-inline-link:visited{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-height:0!important;
  padding:0!important;
  margin-top:.35rem!important;
  background:transparent!important;
  background-image:none!important;
  color:var(--iv-violet)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  font-weight:800!important;
}
.ivb-inline-link *{
  background:transparent!important;
  background-image:none!important;
  color:inherit!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  text-decoration:inherit!important;
}
.ivb-inline-link:hover,.ivb-inline-link:hover *{color:var(--iv-magenta)!important;background:transparent!important;text-decoration:underline!important;text-underline-offset:.2em}

.ivb-number-marker{
  background:var(--iv-gradient)!important;
  background-image:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 7px 18px rgba(109,40,217,.15)!important;
}
.ivb-number-marker *{color:#fff!important}

.ivb-category-pill,.ivb-category-pill:visited{
  background:var(--iv-gradient)!important;
  background-image:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 6px 16px rgba(109,40,217,.14)!important;
}
.ivb-category-pill *{color:#fff!important;background:transparent!important}
.ivb-category-pill:hover{color:#fff!important;filter:brightness(.97) saturate(1.05)}

.ivb-legacy-link,.ivb-legacy-link:visited{color:var(--iv-violet)!important;border-color:var(--iv-violet)!important;text-decoration-color:rgba(109,40,217,.42)!important}
.ivb-legacy-link:hover{color:var(--iv-magenta)!important;border-color:var(--iv-magenta)!important;text-decoration-color:var(--iv-magenta)!important}
.ivb-secondary-action{background:#fff!important;background-image:none!important;color:var(--iv-violet-dark)!important;border-color:var(--iv-violet)!important;box-shadow:none!important}
.ivb-secondary-action *{color:inherit!important;background:transparent!important}
.ivb-checkmark{color:var(--iv-violet)!important}
.ivb-checkmark :is(path,polyline,line){stroke:var(--iv-violet)!important}


/* v1.0.8 — definitive micro-CTA shape reset.
   The legacy child theme used higher-specificity !important backgrounds/pseudo-elements.
   Once runtime marks a discovery link, it is always rendered as a clean inline text link. */
body.home :is(main,#primary,.site-main) a.ivb-inline-link,
body.home :is(main,#primary,.site-main) a.ivb-inline-link:link,
body.home :is(main,#primary,.site-main) a.ivb-inline-link:visited,
body.home :is(main,#primary,.site-main) a.ivb-inline-link:hover,
body.home :is(main,#primary,.site-main) a.ivb-inline-link:focus,
body.home :is(main,#primary,.site-main) a.ivb-inline-link:active{
  display:inline!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  margin:.35rem 0 0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  color:var(--iv-violet)!important;
  border:0!important;
  border-width:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
  text-decoration:none!important;
  font-weight:800!important;
  line-height:1.35!important;
  -webkit-box-decoration-break:slice!important;
  box-decoration-break:slice!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
body.home :is(main,#primary,.site-main) a.ivb-inline-link *,
body.home :is(main,#primary,.site-main) a.ivb-inline-link *:hover,
body.home :is(main,#primary,.site-main) a.ivb-inline-link *:focus{
  display:inline!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  color:inherit!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
  text-decoration:inherit!important;
  -webkit-box-decoration-break:slice!important;
  box-decoration-break:slice!important;
}
body.home :is(main,#primary,.site-main) a.ivb-inline-link::before,
body.home :is(main,#primary,.site-main) a.ivb-inline-link::after,
body.home :is(main,#primary,.site-main) a.ivb-inline-link *::before,
body.home :is(main,#primary,.site-main) a.ivb-inline-link *::after{
  content:none!important;
  display:none!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
body.home :is(main,#primary,.site-main) a.ivb-inline-link:hover,
body.home :is(main,#primary,.site-main) a.ivb-inline-link:focus-visible{
  color:var(--iv-magenta)!important;
  text-decoration:underline!important;
  text-decoration-thickness:2px!important;
  text-underline-offset:.2em!important;
}

/* v1.1.0 — FULL-SITE BRAND SWEEP
   Covers legacy blue UI across every public template: profile/about, services,
   case studies/timelines, blog/archive, process/method pages, glossary, contacts,
   Digital Score and PRO. Navy remains the editorial/structural ink. */

/* Primary actions that the runtime identifies as legacy electric-blue buttons. */
main a.ivb-primary-action,
main button.ivb-primary-action,
#primary a.ivb-primary-action,
.site-main a.ivb-primary-action{
  background:var(--iv-gradient)!important;
  background-image:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 10px 26px rgba(109,40,217,.20)!important;
}
main .ivb-primary-action *,#primary .ivb-primary-action *,.site-main .ivb-primary-action *{
  color:#fff!important;
  background:transparent!important;
}
main .ivb-primary-action:hover,#primary .ivb-primary-action:hover,.site-main .ivb-primary-action:hover{
  color:#fff!important;
  filter:brightness(.98) saturate(1.06)!important;
}

/* Small editorial labels / company names / overlines that are still legacy blue. */
main .ivb-accent-text,#primary .ivb-accent-text,.site-main .ivb-accent-text{
  color:var(--iv-violet)!important;
  border-color:var(--iv-violet)!important;
  text-decoration-color:rgba(109,40,217,.35)!important;
}

/* Timeline nodes, empty circular markers and other blue decorative UI primitives. */
main .ivb-accent-marker,#primary .ivb-accent-marker,.site-main .ivb-accent-marker{
  color:#fff!important;
  border-color:var(--iv-violet)!important;
  background:var(--iv-gradient)!important;
  background-image:var(--iv-gradient)!important;
  box-shadow:0 6px 16px rgba(109,40,217,.16)!important;
}
main .ivb-accent-marker::before,#primary .ivb-accent-marker::before,.site-main .ivb-accent-marker::before,
main .ivb-accent-marker::after,#primary .ivb-accent-marker::after,.site-main .ivb-accent-marker::after{
  border-color:var(--iv-violet)!important;
  background:var(--iv-violet)!important;
}

/* Outline/text actions left blue on profile, case studies and service templates. */
main a.ivb-secondary-action,#primary a.ivb-secondary-action,.site-main a.ivb-secondary-action{
  background:#fff!important;
  background-image:none!important;
  color:var(--iv-violet-dark)!important;
  border-color:var(--iv-violet)!important;
  box-shadow:none!important;
}

/* Taxonomy/article pills are branded consistently site-wide. */
main a.ivb-category-pill,#primary a.ivb-category-pill,.site-main a.ivb-category-pill{
  background:var(--iv-gradient)!important;
  background-image:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
}

/* Legacy numbered cards that are text-only (01,02...) can remain light surfaces,
   but their blue number text becomes the brand violet unless the runtime marked the
   whole object as a filled number marker. */
main .ivb-index-text,#primary .ivb-index-text,.site-main .ivb-index-text{
  color:var(--iv-violet)!important;
  border-color:rgba(109,40,217,.18)!important;
}

/* Legacy blue checkmarks and text links across About/Profile and content templates. */
main .ivb-checkmark,#primary .ivb-checkmark,.site-main .ivb-checkmark{color:var(--iv-violet)!important}
main .ivb-checkmark :is(path,polyline,line),#primary .ivb-checkmark :is(path,polyline,line),.site-main .ivb-checkmark :is(path,polyline,line){stroke:var(--iv-violet)!important}
main a.ivb-legacy-link,#primary a.ivb-legacy-link,.site-main a.ivb-legacy-link{
  color:var(--iv-violet)!important;
  border-color:var(--iv-violet)!important;
  text-decoration-color:rgba(109,40,217,.38)!important;
}
main a.ivb-legacy-link:hover,#primary a.ivb-legacy-link:hover,.site-main a.ivb-legacy-link:hover{
  color:var(--iv-magenta)!important;
  border-color:var(--iv-magenta)!important;
}

/* Timeline vertical strokes are often pseudo-elements on wrapper classes and cannot
   be reliably inferred by color alone. Cover common semantic names, without touching images. */
main :is([class*="timeline"],[class*="Timeline"],[class*="career"],[class*="Career"],[class*="experience"],[class*="Experience"])::before,
main :is([class*="timeline"],[class*="Timeline"],[class*="career"],[class*="Career"],[class*="experience"],[class*="Experience"])::after{
  border-color:rgba(109,40,217,.20)!important;
}

/* Footer stays navy; violet is accent, not a wholesale recolor. */
.site-footer :is(.widget-title,[class*="title"],[class*="heading"]),
footer.site-footer :is(.widget-title,[class*="title"],[class*="heading"]){color:#E9DFFF!important}


/* v1.1.1 — full-site refinement for pricing, filter pills and loose numeric indexes. */
.ivb-price-accent{
  color:var(--iv-violet)!important;
  border-color:var(--iv-violet)!important;
  text-decoration-color:rgba(109,40,217,.34)!important;
}
.ivb-card-accent{
  border-top-color:var(--iv-violet)!important;
}
.ivb-filter-pill,
.ivb-filter-pill:visited{
  background:var(--iv-gradient)!important;
  background-image:var(--iv-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 6px 16px rgba(109,40,217,.14)!important;
}
.ivb-filter-pill *{color:#fff!important;background:transparent!important}
.ivb-filter-pill:hover{color:#fff!important;filter:brightness(.97) saturate(1.05)!important}

/* Current pricing cards expose legacy blue top rules and price text. */
main :is(.ivb-card-accent,[class*="price"],[class*="pricing"],[class*="investment"],[class*="cost"]){
  --iv-card-accent:var(--iv-violet);
}
main :is(.ivb-card-accent,[class*="price"],[class*="pricing"]):where(div,article,section,li){
  border-top-color:var(--iv-card-accent)!important;
}

/* Loose 01/02/03/04 indexes that are not boxed still use violet. */
main .ivb-index-text,#primary .ivb-index-text,.site-main .ivb-index-text{
  color:var(--iv-violet)!important;
}

/* Editorial read-more links should never remain legacy blue. */
main a.ivb-read-more,#primary a.ivb-read-more,.site-main a.ivb-read-more{
  color:var(--iv-violet)!important;
  border-color:var(--iv-violet)!important;
  text-decoration-color:rgba(109,40,217,.38)!important;
}
main a.ivb-read-more:hover,#primary a.ivb-read-more:hover,.site-main a.ivb-read-more:hover{
  color:var(--iv-magenta)!important;
  border-color:var(--iv-magenta)!important;
}


/* v1.2.0 — site-wide closure: glossary/editorial callouts and semantic content accents. */
html.ivb-glossary-page main .ivb-glossary-callout,
html.ivb-glossary-page #primary .ivb-glossary-callout,
html.ivb-glossary-page .site-main .ivb-glossary-callout{
  border-left-color:var(--iv-violet)!important;
  border-top-color:rgba(109,40,217,.16)!important;
  border-right-color:rgba(109,40,217,.16)!important;
  border-bottom-color:rgba(109,40,217,.16)!important;
  background:#F7F3FF!important;
  background-image:none!important;
  box-shadow:none!important;
}
html.ivb-glossary-page main .ivb-glossary-callout :is(.ivb-glossary-label,[class*="label"],[class*="eyebrow"],[class*="kicker"]),
html.ivb-glossary-page #primary .ivb-glossary-callout :is(.ivb-glossary-label,[class*="label"],[class*="eyebrow"],[class*="kicker"]),
html.ivb-glossary-page .site-main .ivb-glossary-callout :is(.ivb-glossary-label,[class*="label"],[class*="eyebrow"],[class*="kicker"]){
  color:var(--iv-violet)!important;
}
html.ivb-glossary-page main .ivb-glossary-accent,
html.ivb-glossary-page #primary .ivb-glossary-accent,
html.ivb-glossary-page .site-main .ivb-glossary-accent{
  color:var(--iv-violet)!important;
  border-color:var(--iv-violet)!important;
}

/* Generic editorial callouts that inherited the old teal/blue accent. */
main .ivb-editorial-callout,#primary .ivb-editorial-callout,.site-main .ivb-editorial-callout{
  border-left-color:var(--iv-violet)!important;
  background:#F7F3FF!important;
  background-image:none!important;
}
main .ivb-editorial-callout :is(strong,b,[class*="label"],[class*="eyebrow"]),
#primary .ivb-editorial-callout :is(strong,b,[class*="label"],[class*="eyebrow"]),
.site-main .ivb-editorial-callout :is(strong,b,[class*="label"],[class*="eyebrow"]){
  border-color:var(--iv-violet)!important;
}

/* v1.2.3 — timeline closure: long company labels + real vertical rail elements. */
main .ivb-timeline-company,
#primary .ivb-timeline-company,
.site-main .ivb-timeline-company{
  color:var(--iv-violet)!important;
  border-color:var(--iv-violet)!important;
  text-decoration-color:rgba(109,40,217,.35)!important;
}
main .ivb-timeline-line,
#primary .ivb-timeline-line,
.site-main .ivb-timeline-line{
  background:rgba(109,40,217,.16)!important;
  background-color:rgba(109,40,217,.16)!important;
  background-image:none!important;
  border-color:rgba(109,40,217,.18)!important;
  box-shadow:none!important;
}
main .ivb-timeline-line::before,
main .ivb-timeline-line::after,
#primary .ivb-timeline-line::before,
#primary .ivb-timeline-line::after,
.site-main .ivb-timeline-line::before,
.site-main .ivb-timeline-line::after{
  background:rgba(109,40,217,.16)!important;
  border-color:rgba(109,40,217,.18)!important;
}

/* v1.2.4 — method/process card closure: remove the last legacy electric-blue top rules. */
main .ivb-method-card-accent,
#primary .ivb-method-card-accent,
.site-main .ivb-method-card-accent{
  border-top-color:var(--iv-violet)!important;
}
main .ivb-horizontal-rule,
#primary .ivb-horizontal-rule,
.site-main .ivb-horizontal-rule{
  background:var(--iv-violet)!important;
  background-color:var(--iv-violet)!important;
  background-image:none!important;
  border-color:var(--iv-violet)!important;
  box-shadow:none!important;
}
main .ivb-method-pseudo-before::before,
#primary .ivb-method-pseudo-before::before,
.site-main .ivb-method-pseudo-before::before,
main .ivb-method-pseudo-after::after,
#primary .ivb-method-pseudo-after::after,
.site-main .ivb-method-pseudo-after::after{
  background:var(--iv-violet)!important;
  background-color:var(--iv-violet)!important;
  background-image:none!important;
  border-color:var(--iv-violet)!important;
}

/* v1.2.6 — global legacy structural top-rule closure.
   Runtime applies these only to sizeable content cards/bars whose computed legacy color is blue. */
main .ivb-global-top-rule,
#primary .ivb-global-top-rule,
.site-main .ivb-global-top-rule{
  border-top-color:var(--iv-violet)!important;
}
main .ivb-global-horizontal-rule,
#primary .ivb-global-horizontal-rule,
.site-main .ivb-global-horizontal-rule{
  background:var(--iv-violet)!important;
  background-color:var(--iv-violet)!important;
  background-image:none!important;
  border-color:var(--iv-violet)!important;
  box-shadow:none!important;
}
/* END INVIDIA BRAND SYSTEM */
