﻿:root{
  --ge-primary:#01A3A2;
  --ge-link:#000F8E;

  /* автоматическое затемнение */
  --ge-primary-d1:color-mix(in srgb, var(--ge-primary) 85%, white);
  --ge-primary-d2:color-mix(in srgb, var(--ge-primary) 70%, white);
  --ge-link-d1:color-mix(in srgb, var(--ge-link) 85%, white);
  --ge-link-d2:color-mix(in srgb, var(--ge-link) 70%, white);

  --ge-white:#fff;      --ge-white-d1:#f2f2f2;
  --ge-black:#222;      --ge-black-d1:#000;
  --ge-gray:#dbdbdb;    --ge-dark:#363636;
  --ge-text-on-dark:#fff; --ge-border:rgba(0,0,0,.15);
}

/* База */
.elementor .elementor-widget-button a.elementor-button{
  display:inline-flex; align-items:center; justify-content:center; gap:.5em;
  position:relative; vertical-align:top; 
  font-weight: normal;
  font-size: .9rem;
  padding: .78em 1.5em;
  border:1px solid var(--ge-border); background-color:#fff; 
  color:#363636;
  border-radius:20px; 
  cursor:pointer;
  text-decoration:none !important;
  transition: background-color .15s, border-color .15s, color .15s,
              box-shadow .15s, transform .02s;
}
.elementor .elementor-widget-button a.elementor-button:hover{ filter:brightness(98%); }
.elementor .elementor-widget-button a.elementor-button:active{ transform:translateY(1px); }
.elementor .elementor-widget-button a.elementor-button:focus{ outline:2px solid transparent; box-shadow:0 0 0 .125em rgba(50,115,220,.25); }

/* === Размеры === */
.elementor .elementor-widget-button.is-xsmall a.elementor-button{ min-height:34px; font-size:14px; padding:0 0.75em; border-radius:.25rem; }
.elementor .elementor-widget-button.is-small  a.elementor-button{ min-height:36px; font-size:16px; padding:0 0.9em; }
.elementor .elementor-widget-button.is-normal a.elementor-button{ min-height:44px; font-size:20px; padding:0 1em; }
.elementor .elementor-widget-button.is-medium a.elementor-button{ min-height:54px; font-size:20px; padding:0 1.1em; }
.elementor .elementor-widget-button.is-large  a.elementor-button{ min-height:60px; font-size:24px; padding:0 1.25em; }

@media (max-width: 767px) {
	.elementor .elementor-widget-button.is-xsmall a.elementor-button{ min-height:26px; font-size:12px; padding:0 0.75em; border-radius:.25rem; }
	.elementor .elementor-widget-button.is-small  a.elementor-button{ min-height:28px; font-size:14px; padding:0 0.9em; }
	.elementor .elementor-widget-button.is-normal a.elementor-button{ min-height:32px; font-size:14px; padding:0 1em; }
	.elementor .elementor-widget-button.is-medium a.elementor-button{ min-height:38px; font-size:15px; padding:0 1.1em; }
	.elementor .elementor-widget-button.is-large  a.elementor-button{ min-height:44px; font-size:18px; padding:0 1.25em; }
}
/* Скругление */
.elementor .elementor-widget-button.is-rounded a.elementor-button{ border-radius:9999px; }

/* === Primary === */
.elementor .elementor-widget-button.is-primary:not(.is-outlined) a.elementor-button{
  background-color:var(--ge-primary); border-color:var(--ge-primary); color:var(--ge-text-on-dark);
}
.elementor .elementor-widget-button.is-primary:not(.is-outlined) a.elementor-button:hover{
  background-color:var(--ge-primary-d1); border-color:var(--ge-primary-d1);
}
.elementor .elementor-widget-button.is-primary.is-outlined a.elementor-button{
  background-color:transparent; color:var(--ge-primary); border-color:var(--ge-primary);
}
.elementor .elementor-widget-button.is-primary.is-outlined a.elementor-button:hover{
  background-color:color-mix(in srgb, var(--ge-primary) 15%, transparent);
}

/* === Link === */
.elementor .elementor-widget-button.is-link:not(.is-outlined) a.elementor-button{
  background-color:var(--ge-link); border-color:var(--ge-link); color:var(--ge-text-on-dark);
}
.elementor .elementor-widget-button.is-link:not(.is-outlined) a.elementor-button:hover{
  background-color:var(--ge-link-d1); border-color:var(--ge-link-d1);
}
.elementor .elementor-widget-button.is-link.is-outlined a.elementor-button{
  background-color:transparent; color:var(--ge-link); border-color:var(--ge-link);
}
.elementor .elementor-widget-button.is-link.is-outlined a.elementor-button:hover{
  background-color:color-mix(in srgb, var(--ge-link) 15%, transparent);
}

/* === White === */
.elementor .elementor-widget-button.is-white:not(.is-outlined) a.elementor-button{
  background-color:var(--ge-white); border-color:var(--ge-gray); color:var(--ge-dark);
}
.elementor .elementor-widget-button.is-white:not(.is-outlined) a.elementor-button:hover{
  background-color:var(--ge-white-d1);
}
.elementor .elementor-widget-button.is-white.is-outlined a.elementor-button{
  background-color:transparent; border-color:var(--ge-gray); color:var(--ge-dark);
}
.elementor .elementor-widget-button.is-white.is-outlined a.elementor-button:hover{
  background-color:rgba(0,0,0,.05);
}

/* === Black === */
.elementor .elementor-widget-button.is-black:not(.is-outlined) a.elementor-button{
  background-color:var(--ge-black); border-color:var(--ge-black); color:var(--ge-white);
}
.elementor .elementor-widget-button.is-black:not(.is-outlined) a.elementor-button:hover{
  background-color:var(--ge-black-d1);
}
.elementor .elementor-widget-button.is-black.is-outlined a.elementor-button{
  background-color:transparent; border-color:var(--ge-black); color:var(--ge-black);
}
.elementor .elementor-widget-button.is-black.is-outlined a.elementor-button:hover{
  background-color:rgba(0,0,0,.08);
}

/* Disabled */
.elementor .elementor-widget-button a.elementor-button[disabled],
.elementor .elementor-widget-button a.elementor-button.is-disabled{
  opacity:.5; cursor:not-allowed; pointer-events:none; box-shadow:none; transform:none;
}
