

:root:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner)), .elementor a:root{
  --gs-berry:#8A014F;
  --gs-berry-bright:#A80260;
  --gs-berry-deep:#520130;
  --gs-plum:#6E1741;
  --gs-rose:#DEC7D2;
  --gs-ease:cubic-bezier(.22,.61,.36,1);
  
  --measure:52ch;        
  --measure-narrow:42ch; 
  --measure-fine:64ch;   
}


main article:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card{
  position:relative;
  transition:transform .26s var(--gs-ease),
             box-shadow .26s var(--gs-ease),
             border-color .2s ease;
}

main article:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon))::after,main .gs-card::after{
  content:"";
  position:absolute; left:0; right:0; top:0; height:3px;
  background:linear-gradient(90deg,var(--gs-berry),var(--gs-berry-bright));
  transform:scaleX(0); transform-origin:left;
  transition:transform .34s var(--gs-ease);
  pointer-events:none; border-radius:3px 3px 0 0;
}
main article:focus-within:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon))::after,main .gs-card:focus-within::after{ transform:scaleX(1); }
@media (hover: hover){main article:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon))::after,main .gs-card:hover::after{ transform:scaleX(1); }}

main article:focus-within:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card:focus-within{
  transform:translateY(-7px);
  box-shadow:0 30px 56px -30px rgba(82,1,48,.55), 0 4px 12px -6px rgba(82,1,48,.28);
  border-color:var(--gs-berry) !important;
}
@media (hover: hover){main article:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card:hover{
  transform:translateY(-7px);
  box-shadow:0 30px 56px -30px rgba(82,1,48,.55), 0 4px 12px -6px rgba(82,1,48,.28);
  border-color:var(--gs-berry) !important;
}}


main a[style*="border-radius:6px"][style*="overflow:hidden"]:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a[style*="border-radius:8px"][style*="overflow:hidden"]:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  display:block;
  transition:transform .26s var(--gs-ease), box-shadow .26s var(--gs-ease);
}
@media (hover: hover){main a[style*="border-radius:6px"][style*="overflow:hidden"]:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a[style*="border-radius:8px"][style*="overflow:hidden"]:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  transform:translateY(-7px);
  box-shadow:0 30px 56px -30px rgba(82,1,48,.5);
}}


main article img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a[style*="overflow:hidden"] img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  transition:transform .6s var(--gs-ease), filter .4s ease;
}
@media (hover: hover){main article:hover img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card:hover img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a[style*="overflow:hidden"]:hover img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  transform:scale(1.07);
  filter:saturate(1.06);
}}


main a[style*="border-radius:4px"][style*="padding:1"]:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main button[type="submit"]:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a[style*="border-radius:4px"][style*="background:#8A014F"]:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  transition:background .2s ease, color .2s ease, border-color .2s ease,
             transform .18s var(--gs-ease), box-shadow .18s var(--gs-ease);
}
@media (hover: hover){main a[style*="border-radius:4px"][style*="padding:1"]:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main button[type="submit"]:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  transform:translateY(-3px);
  box-shadow:0 16px 26px -14px rgba(82,1,48,.7);
}}
main a[style*="border-radius:4px"][style*="padding:1"]:active:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main button[type="submit"]:active:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  transform:translateY(1px) scale(.985);
  box-shadow:0 4px 8px -6px rgba(82,1,48,.6);
}


main p > a[href]:not([style*="background"]):not([style*="border:"]):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main li > a[href]:not([style*="background"]):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a.gs-link{
  background-image:linear-gradient(var(--gs-berry-bright),var(--gs-berry-bright));
  background-size:0% 2px; background-repeat:no-repeat; background-position:0 100%;
  transition:background-size .3s var(--gs-ease), color .2s ease;
  text-decoration:none; padding-bottom:1px;
}
@media (hover: hover){main p > a[href]:not([style*="background"]):not([style*="border:"]):hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main li > a[href]:not([style*="background"]):hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a.gs-link:hover{ background-size:100% 2px; }}


.gs-ar{ display:inline-block; transition:transform .24s var(--gs-ease); }
a:focus-visible .gs-ar{ transform:translateX(7px); }
@media (hover: hover){a:hover .gs-ar{ transform:translateX(7px); }}


.gs-ico{ display:inline-flex; align-items:center; justify-content:center; flex:none; vertical-align:middle; }
.gs-ico svg:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){ display:block; }

.gs-ico-plate{
  width:46px; height:46px; border-radius:10px;
  background:rgba(138,1,79,.09); color:var(--gs-berry);
  display:inline-flex; align-items:center; justify-content:center;
  transition:background .28s ease, color .28s ease,
             transform .34s var(--gs-ease), box-shadow .28s ease;
}
@media (hover: hover){main article:hover .gs-ico-plate,main .gs-card:hover .gs-ico-plate{
  background:var(--gs-berry); color:#FAF6EF;
  transform:translateY(-2px) scale(1.08) rotate(-4deg);
  box-shadow:0 12px 20px -10px rgba(82,1,48,.6);
}}
.gs-ico-plate--on-dark{ background:rgba(255,255,244,.14); color:var(--gs-rose); }
@media (hover: hover){main article:hover .gs-ico-plate--on-dark,main .gs-card:hover .gs-ico-plate--on-dark{ background:#FAF6EF; color:var(--gs-plum); }}


.gs-step{
  display:inline-flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:50%;
  border:1.5px solid rgba(138,1,79,.4); color:var(--gs-berry);
  font-size:13px; font-weight:700;
  transition:background .26s ease, color .26s ease, border-color .26s ease, transform .3s var(--gs-ease);
}
@media (hover: hover){main article:hover .gs-step,main .gs-card:hover .gs-step{
  background:var(--gs-berry); border-color:var(--gs-berry); color:#FAF6EF; transform:scale(1.1);
}}



@keyframes gsRise{ from{ opacity:0; transform:translateY(18px) } to{ opacity:1; transform:none } }
.gs-stagger.gs-on > *:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){ animation:gsRise .55s var(--gs-ease) backwards; }
.gs-stagger.gs-on > *:nth-child(1):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.05s }
.gs-stagger.gs-on > *:nth-child(2):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.12s }
.gs-stagger.gs-on > *:nth-child(3):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.19s }
.gs-stagger.gs-on > *:nth-child(4):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.26s }
.gs-stagger.gs-on > *:nth-child(5):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.33s }
.gs-stagger.gs-on > *:nth-child(6):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.40s }
.gs-stagger.gs-on > *:nth-child(7):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.47s }
.gs-stagger.gs-on > *:nth-child(8):where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon,.gs-copy)){ animation-delay:.54s }


.gs-rule{ display:inline-block; height:1px; width:28px; background:currentColor;
  transition:width .55s var(--gs-ease); }
.gs-on .gs-rule,[data-reveal].gs-on .gs-rule{ width:52px; }



.gs-halo{ position:relative; }
.gs-halo::before{
  content:""; position:absolute; inset:-14% -10% auto auto;
  width:56%; aspect-ratio:1; border-radius:50%;
  background:radial-gradient(circle, rgba(138,1,79,.13), transparent 68%);
  z-index:0; pointer-events:none;
}
.gs-halo > *:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){ position:relative; z-index:1; }


.gs-div{ display:flex; align-items:center; justify-content:center; gap:10px; }
.gs-div::before,.gs-div::after{
  content:""; height:1px; flex:1; max-width:120px;
  background:linear-gradient(90deg,transparent,rgba(138,1,79,.35));
}
.gs-div::after{ background:linear-gradient(90deg,rgba(138,1,79,.35),transparent); }


.gs-stat{ transition:transform .3s var(--gs-ease), color .3s ease; display:inline-block; }
@media (hover: hover){main article:hover .gs-stat,main .gs-card:hover .gs-stat{ transform:scale(1.05); }}


.gs-pill{ transition:background .2s ease, border-color .2s ease, transform .2s var(--gs-ease); }
@media (hover: hover){.gs-pill:hover{ transform:translateY(-2px); }}



:focus-visible:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner)), .elementor a:focus-visible{
  outline:3px solid #FAF6EF;
  outline-offset:2px;
  box-shadow:0 0 0 6px #6E1741;
  border-radius:3px;
}

main input:focus:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main textarea:focus:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
  border-color:var(--gs-berry) !important;
  box-shadow:0 0 0 3px rgba(138,1,79,.18);
}


@media (prefers-reduced-motion:reduce){
  main article:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card,main article img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),.gs-ar,.gs-ico-plate,.gs-step,.gs-rule,.gs-stat,.gs-pill,main a:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main button:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){
    transition:none !important; transform:none !important;
  }
  main article:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon))::after,main .gs-card::after{ transition:none !important; transform:scaleX(1); }
  @media (hover: hover){main article:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card:hover,main a[style*="overflow:hidden"]:hover:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){ transform:none !important; }}
  @media (hover: hover){main article:hover img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main .gs-card:hover img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)),main a[style*="overflow:hidden"]:hover img:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){ transform:none !important; filter:none !important; }}
  .gs-stagger.gs-on > *:where(:not(.elementor-element,.elementor-widget-container,.e-con-inner,.elementor-heading-title,.elementor-button,.elementor-button-wrapper,.elementor-button-content-wrapper,.elementor-button-text,.elementor-icon-wrapper,.elementor-icon)){ animation:none !important; opacity:1 !important; }
}
