/* v14.86 InfraCare public restore final owner.
   Loaded after theme/plugin/foundation/contract/technical vars. */
html:not(.admin-area){
  --ic-public-bg:#070b12;
  --ic-public-bg-2:#0a111c;
  --ic-public-surface:rgba(22,29,39,.86);
  --ic-public-surface-2:rgba(35,44,57,.88);
  --ic-public-border:rgba(111,182,255,.17);
  --ic-public-border-strong:rgba(111,182,255,.30);
  --ic-public-text:#eef4fb;
  --ic-public-muted:#b2bfcd;
  --ic-public-accent:#6fb6ff;
  --ic-public-accent-2:#55d9f0;
}
html:not(.admin-area),body:not(.admin-area){
  background:
    radial-gradient(circle at 14% 18%, rgba(47,171,255,.16), transparent 30vw),
    radial-gradient(circle at 76% 8%, rgba(48,213,240,.11), transparent 28vw),
    linear-gradient(180deg, #07101a 0%, #050910 46%, #070b12 100%) !important;
  color:var(--ic-public-text)!important;
}
body:not(.admin-area)::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(111,182,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111,182,255,.055) 1px, transparent 1px),
    radial-gradient(circle at 20% 20%, rgba(111,182,255,.16) 0 2px, transparent 3px),
    radial-gradient(circle at 82% 18%, rgba(85,217,240,.16) 0 2px, transparent 3px),
    radial-gradient(circle at 68% 72%, rgba(111,182,255,.12) 0 2px, transparent 3px);
  background-size:36px 36px,36px 36px,260px 180px,340px 220px,300px 240px;
  opacity:.72;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.95), rgba(0,0,0,.55) 70%, rgba(0,0,0,.30));
}
body:not(.admin-area)::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(120deg, transparent 0 18%, rgba(111,182,255,.07) 18.2%, transparent 18.5% 52%, rgba(85,217,240,.055) 52.2%, transparent 52.5%),
    linear-gradient(30deg, transparent 0 34%, rgba(111,182,255,.045) 34.2%, transparent 34.5% 72%, rgba(85,217,240,.045) 72.2%, transparent 72.5%);
  opacity:.45;
}

/* v14.80 Background Engine compatibility: when the plugin owns the backdrop,
   keep InfraCare typography/cards but stop the restore layer from flattening motion. */
html.ic-bg-engine-enabled:not(.admin-area),
html.ic-bg-engine-enabled body:not(.admin-area){
  background:#050a11!important;
}
html.ic-bg-engine-enabled.ic-bg-scheme-light:not(.admin-area),
html.ic-bg-engine-enabled.ic-bg-scheme-light body:not(.admin-area){
  background:#efe8e5!important;
}
body.ic-bg-engine-on:not(.admin-area)::before,
body.ic-bg-engine-on:not(.admin-area)::after{
  opacity:.10!important;
}
html.ic-bg-engine-enabled.ic-bg-scheme-light body.ic-bg-engine-on:not(.admin-area)::before,
html.ic-bg-engine-enabled.ic-bg-scheme-light body.ic-bg-engine-on:not(.admin-area)::after{
  opacity:.04!important;
}
body.ic-bg-engine-on:not(.admin-area) > :is(header,main,footer,.site-header,.site-footer):not(#ic-bg-engine){
  position:relative;
  z-index:1;
}
body.ic-bg-engine-on:not(.admin-area) > :is(header,.site-header):not(#ic-bg-engine){
  z-index:60;
}


/* v14.86 Background Engine layer fix.
   The animated layer is page-anchored and scrolls with the document. Public
   sections use light translucent veils only; fixed chat/lang controls stay
   fixed and are never caught by broad body-child positioning. */
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) #ic-bg-engine{
  display:block!important;
  visibility:visible!important;
  position:absolute!important;
  inset:0 auto auto 0!important;
  width:100%!important;
  min-height:100vh!important;
  height:var(--ic-bg-engine-doc-height, 100vh)!important;
  z-index:0!important;
  opacity:var(--ic-bg-engine-effective-opacity,var(--ic-bg-engine-opacity,.70))!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area)::before,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area)::after{
  opacity:0!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area),
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) main.ic-public-page.ic-public-page,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) main.home-v13.home-v13,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-public-page.ic-public-page{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .hero-v13.hero-v13{
  background:
    radial-gradient(circle at 18% 14%, rgba(111,182,255,.16), transparent 34vw),
    linear-gradient(180deg, rgba(8,15,24,.12), rgba(9,15,23,.20))!important;
  background-color:rgba(8,14,22,.14)!important;
  box-shadow:inset 0 -1px 0 rgba(111,182,255,.08)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .section-v13.section-v13,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .ic-public-section.ic-public-section,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) section.ic-public-section.ic-public-section,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) section.ic-public-surface.ic-public-surface,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .section-v13.section-v13.ic-public-section,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .hero-v13.hero-v13.ic-public-section,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-hero-surface.home-hero-surface{
  background:
    linear-gradient(180deg, rgba(15,22,32,.16), rgba(12,18,27,.24))!important;
  background-color:rgba(14,20,29,.18)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    inset 0 -1px 0 rgba(0,0,0,.20)!important;
  backdrop-filter:blur(3px)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .section-v13.section-v13:nth-of-type(even),
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .ic-public-section.ic-public-section:nth-of-type(even){
  background:
    linear-gradient(180deg, rgba(12,18,27,.18), rgba(10,16,24,.26))!important;
  background-color:rgba(12,18,27,.20)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .hero-v13.hero-v13::before,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .hero-v13.hero-v13::after,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .section-v13.section-v13::before,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .section-v13.section-v13::after,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) section.ic-public-section.ic-public-section::before,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) section.ic-public-section.ic-public-section::after{
  opacity:.10!important;
  animation:none!important;
  filter:none!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .section-v13.section-v13{
  padding-top:clamp(46px,5vw,76px)!important;
  padding-bottom:clamp(46px,5vw,76px)!important;
  border-top:1px solid rgba(111,182,255,.095)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .home-v13.home-v13 > .hero-v13.hero-v13 + .section-v13.section-v13{
  padding-top:clamp(42px,4.6vw,68px)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) > :is(header,main,footer,.site-header,.site-footer):not(#ic-bg-engine){
  position:relative!important;
  z-index:1!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) > :is(header,.site-header):not(#ic-bg-engine){
  z-index:60!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) > :is(.chat-widget,.chat-widget-v15,.ic-lang-switcher,.ic-lang-switcher-plugin,.ic-lang-switcher-server,.ic-lang-switcher-deepl){
  position:fixed!important;
}

body:not(.admin-area) :is(main,.ic-public-page,.home-v13,.ic-public-section,.ic-public-surface,.hero-v13,.home-hero-surface){
  background:transparent!important;
  background-color:transparent!important;
}
body:not(.admin-area) .site-header{
  background:rgba(16,22,30,.88)!important;
  border-bottom:1px solid rgba(111,182,255,.15)!important;
  backdrop-filter:blur(12px)!important;
}
body:not(.admin-area) .site-header .bar{min-height:58px!important;padding-block:6px!important;}
body:not(.admin-area) .brand-data-logo{width:min(174px,28vw)!important;max-height:42px!important;}
body:not(.admin-area) .site-nav a,
body:not(.admin-area) .btn.secondary{
  background:rgba(43,51,65,.72)!important;
  border:1px solid rgba(148,163,184,.16)!important;
  color:#eef4fb!important;
  box-shadow:none!important;
}
body:not(.admin-area) .site-nav a:is(.is-current,[aria-current="page"]),
body:not(.admin-area) .btn.primary{
  background:var(--ic-public-accent)!important;
  border-color:color-mix(in srgb,var(--ic-public-accent) 80%,#fff 10%)!important;
  color:#07111d!important;
}
body:not(.admin-area) :is(.ic-public-card,.panel,.card,.s-card,.pkg-card,.service-card-v13,.pricing-card-v1437,.price-card-v13,.process-card-v28,.case-post,.review-post-v15,.channel-card-v65,.home-summary-card){
  background:var(--ic-public-surface)!important;
  border-color:var(--ic-public-border)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.22)!important;
}
body:not(.admin-area) :is(h1,h2,h3,h4,strong,b,.hero-v13__copy h1,.hero-title){color:var(--ic-public-text)!important;}
body:not(.admin-area) :is(p,li,small,span,.muted,.hero-v13__lead,.hero-subtitle,.section__lead){color:var(--ic-public-muted);}
body:not(.admin-area) .section__eyebrow{color:var(--ic-public-accent)!important;}
body:not(.admin-area) .hero-v13{min-height:calc(100dvh - 70px)!important;display:flex!important;align-items:center!important;}
body:not(.admin-area) .hero-v13__grid{grid-template-columns:minmax(0,1.05fr) minmax(340px,.88fr)!important;gap:clamp(28px,5vw,72px)!important;}
body:not(.admin-area) .hero-v13__copy h1{font-size:clamp(42px,5.2vw,72px)!important;line-height:1.05!important;letter-spacing:-.055em!important;}
body:not(.admin-area) .hero-summary-v28{border-radius:18px!important;}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-lang-switcher,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-lang-switcher-plugin,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-lang-switcher-server,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-lang-switcher-deepl,
body:not(.admin-area) .ic-lang-switcher,
body:not(.admin-area) .ic-lang-switcher-plugin,
body:not(.admin-area) .ic-lang-switcher-server,
body:not(.admin-area) .ic-lang-switcher-deepl{
  position:fixed!important;
  right:18px!important;
  bottom:18px!important;
  z-index:1400!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:6px!important;
  border-radius:999px!important;
  border:1px solid rgba(111,182,255,.20)!important;
  background:rgba(10,17,28,.92)!important;
  backdrop-filter:blur(12px)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.34)!important;
}
body:not(.admin-area) .ic-lang-switcher :is(a,button){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:36px!important;
  min-height:32px!important;
  padding:0 10px!important;
  border:0!important;
  border-radius:10px!important;
  background:rgba(148,163,184,.12)!important;
  color:#dcecff!important;
  font:800 12px/1 Inter,system-ui,sans-serif!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
body:not(.admin-area) .ic-lang-switcher .ic-lang-title{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:28px!important;color:#7fd3ff!important;}
body:not(.admin-area) .ic-lang-switcher :is(a,button).is-active{background:var(--ic-public-accent)!important;color:#07111d!important;}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .chat-widget,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .chat-widget-v15,
body:not(.admin-area) .chat-widget,
body:not(.admin-area) .chat-widget-v15{position:fixed!important;right:18px!important;bottom:76px!important;z-index:1390!important;}
@media(max-width:960px){
  body:not(.admin-area) .hero-v13{min-height:auto!important;padding-block:56px!important;}
  body:not(.admin-area) .hero-v13__grid{grid-template-columns:1fr!important;}
  body:not(.admin-area) .hero-v13__copy h1{font-size:clamp(36px,9vw,58px)!important;}
}
@media(max-width:640px){
  body:not(.admin-area) .ic-lang-switcher{right:12px!important;bottom:12px!important;}
  body:not(.admin-area) .chat-widget,body:not(.admin-area) .chat-widget-v15{right:12px!important;bottom:72px!important;}
}

/* === v14.87 sectional Hirotach final owner ===
   The old page-level wallpaper is explicitly retired. Background is applied
   per section: hero = animated Hirotach, then mesh/solid alternating sections. */
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) #ic-bg-engine{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area)::before,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area)::after{
  opacity:0!important;
  display:none!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) > :is(header,.site-header,main,footer,.site-footer){
  position:relative!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) > :is(header,.site-header){z-index:60!important;}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) > :is(main,footer,.site-footer){z-index:1!important;}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) :is(.chat-widget,.chat-widget-v15,.ic-lang-switcher,.ic-lang-switcher-plugin,.ic-lang-switcher-server,.ic-lang-switcher-deepl){
  position:fixed!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-owner.ic-bg-section-owner{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background-image:none!important;
  box-shadow:inset 0 1px 0 rgba(111,182,255,.055), inset 0 -1px 0 rgba(0,0,0,.42)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-owner.ic-bg-section-owner > :not(.ic-bg-sectional-layer){
  position:relative!important;
  z-index:1!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-sectional-layer.ic-bg-sectional-layer{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  contain:layout paint style;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-sectional-layer__grid,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-sectional-layer__aurora,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-sectional-layer canvas{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-hero.ic-bg-section-hero{
  background:
    radial-gradient(circle at 17% 16%, color-mix(in srgb,var(--ic-bg-engine-accent,#6fb6ff) 20%, transparent), transparent 34vw),
    radial-gradient(circle at 80% 10%, color-mix(in srgb,var(--ic-bg-engine-accent-2,#55d9f0) 14%, transparent), transparent 34vw),
    linear-gradient(180deg,#07131f 0%,#07101a 48%,#050a11 100%)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-hero.ic-bg-section-hero .ic-bg-sectional-layer{
  opacity:var(--ic-bg-engine-hero-opacity,.76)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-mesh.ic-bg-section-mesh{
  background:
    radial-gradient(circle at 16% 10%, color-mix(in srgb,var(--ic-bg-engine-accent,#6fb6ff) 12%, transparent), transparent 30vw),
    radial-gradient(circle at 84% 22%, color-mix(in srgb,var(--ic-bg-engine-accent-2,#55d9f0) 9%, transparent), transparent 34vw),
    linear-gradient(180deg,#08111c 0%,#060d16 58%,#050a11 100%)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-mesh.ic-bg-section-mesh .ic-bg-sectional-layer{
  display:block!important;
  opacity:var(--ic-bg-engine-mesh-opacity,.58)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-solid.ic-bg-section-solid{
  background:linear-gradient(180deg,#060a10 0%,#050910 100%)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-solid.ic-bg-section-solid .ic-bg-sectional-layer{
  display:none!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-owner.ic-bg-section-owner::before,
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-owner.ic-bg-section-owner::after{
  opacity:0!important;
  display:none!important;
  animation:none!important;
  filter:none!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-owner.ic-bg-section-owner:is(.section-v13,.section-v15,.ic-public-section,.ic-public-surface){
  padding-top:clamp(46px,5vw,76px)!important;
  padding-bottom:clamp(46px,5vw,76px)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-hero.ic-bg-section-hero + .ic-bg-section-owner.ic-bg-section-owner{
  padding-top:clamp(42px,4.6vw,68px)!important;
}
html.ic-bg-engine-enabled body.ic-bg-engine-on:not(.admin-area) .ic-bg-section-solid.ic-bg-section-solid :is(.ic-public-card,.panel,.card,.s-card,.pkg-card,.service-card-v13,.pricing-card-v1437,.price-card-v13,.process-card-v28,.case-post,.review-post-v15,.channel-card-v65,.home-summary-card){
  background:rgba(20,27,37,.88)!important;
}
