.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-1197 .elementor-element.elementor-element-e6df106:not(.elementor-motion-effects-element-type-background), .elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F2F6F9;}.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-background-overlay{background-image:url("https://vita.biz.ua/wp-content/uploads/Pattern_img.png");background-position:center center;background-repeat:no-repeat;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-container{max-width:1280px;}.elementor-1197 .elementor-element.elementor-element-e6df106{overflow:hidden;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-shape-bottom svg{width:calc(100% + 1.3px);height:95px;transform:translateX(-50%) rotateY(180deg);}.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-shape-bottom{z-index:2;pointer-events:none;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1197 .elementor-element.elementor-element-c949b97{text-align:start;}.elementor-1197 .elementor-element.elementor-element-c949b97 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:48px;color:#000000;}.elementor-bc-flex-widget .elementor-1197 .elementor-element.elementor-element-b0aa6d9.elementor-column .elementor-widget-wrap{align-items:flex-end;}.elementor-1197 .elementor-element.elementor-element-b0aa6d9.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-end;align-items:flex-end;}.elementor-1197 .elementor-element.elementor-element-b0aa6d9 > .elementor-element-populated{margin:0px 0px -10px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-background-overlay{background-image:url("https://vita.biz.ua/wp-content/uploads/Pattern_img.png");background-position:center center;background-repeat:no-repeat;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2{overflow:hidden;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-shape-bottom svg{width:calc(100% + 1.3px);height:95px;transform:translateX(-50%) rotateY(180deg);}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-shape-bottom{z-index:2;pointer-events:none;}.elementor-1197 .elementor-element.elementor-element-a95878d{text-align:start;}.elementor-1197 .elementor-element.elementor-element-a95878d .elementor-heading-title{font-family:"Roboto", Sans-serif;color:#000000;}.elementor-1197 .elementor-element.elementor-element-07e5b36{--display:flex;}@media(min-width:768px){.elementor-1197 .elementor-element.elementor-element-07e5b36{--content-width:1280px;}}@media(max-width:1024px){.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-background-overlay{background-size:cover;}.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-shape-bottom svg{height:65px;}.elementor-1197 .elementor-element.elementor-element-e6df106{padding:0em 1em 0em 1em;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-background-overlay{background-size:cover;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-shape-bottom svg{height:65px;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2{padding:0em 1em 0em 1em;}.elementor-1197 .elementor-element.elementor-element-a95878d{text-align:center;}.elementor-1197 .elementor-element.elementor-element-a95878d .elementor-heading-title{font-size:28px;}}@media(max-width:767px){.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-background-overlay{background-size:contain;}.elementor-1197 .elementor-element.elementor-element-e6df106 > .elementor-shape-bottom svg{height:55px;}.elementor-1197 .elementor-element.elementor-element-e6df106{padding:2em 0em 0em 0em;}.elementor-1197 .elementor-element.elementor-element-bc836fb > .elementor-element-populated{padding:1em 2em 1em 2em;}.elementor-1197 .elementor-element.elementor-element-c949b97{text-align:center;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-background-overlay{background-size:contain;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2 > .elementor-shape-bottom svg{height:55px;}.elementor-1197 .elementor-element.elementor-element-1c0f1f2{padding:2em 0em 0em 0em;}.elementor-1197 .elementor-element.elementor-element-4e38c19 > .elementor-element-populated{padding:1em 2em 1em 2em;}.elementor-1197 .elementor-element.elementor-element-a95878d{text-align:center;}}/* Start custom CSS for html, class: .elementor-element-a9435b0 */.breed-calc,
  .breed-calc * {
    box-sizing: border-box;
  }

  .breed-calc,
  .breed-calc__left,
  .elementor-widget-container,
  .elementor-column,
  .elementor-section,
  .elementor-container,
  .elementor-row {
    overflow: visible !important;
  }

  .breed-calc {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 28px;
    display: flex;
    align-items: flex-start;
    gap: 48px;
    font-family: Arial, Helvetica, sans-serif;
    color: #1f1f1f;
    background: #f5f7fa;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
  }

  .breed-calc__left {
    width: 280px;
    flex: 0 0 280px;
    padding: 22px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
    position: relative;
    z-index: 2;
  }

  .breed-calc__group {
    margin-bottom: 22px;
  }

  .breed-calc__group:last-child {
    margin-bottom: 0;
  }

  .breed-calc__group--date,
  .breed-calc__group--result {
    margin-top: 0;
  }

  .breed-calc__label {
    display: block;
    margin: 0 0 10px;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    color: #111827;
  }

  .breed-calc__select-wrap,
  .breed-calc__date-wrap {
    position: relative;
    width: 100%;
  }

  .breed-calc__select {
    width: 100%;
    height: 54px;
    padding: 0 44px 0 16px;
    border: 1px solid #d5dbe3;
    border-radius: 16px;
    background: #fff;
    color: #374151;
    font-size: 16px;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
    cursor: pointer;
  }

  .breed-calc__select:focus,
  .breed-calc__date:focus {
    border-color: #8fb3ff !important;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.10) !important;
  }

  .breed-calc__select-wrap::after {
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    width: 10px;
    height: 6px;
    transform: translateY(-50%);
    pointer-events: none;
    background-repeat: no-repeat;
    background-size: 10px 6px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%23666' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  }

  .breed-calc__date {
    width: 100% !important;
    height: 54px !important;
    padding: 0 52px 0 16px !important;
    border: 1px solid #d5dbe3 !important;
    border-radius: 16px !important;
    background: #fff !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    outline: none !important;
    box-shadow: none !important;
    line-height: 52px !important;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  }

  .breed-calc__date-btn {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none !important;
    border-radius: 50%;
    background: #f1f3f5 !important;
    cursor: pointer;
    padding: 0;
    transition: none !important;
  }

  .breed-calc__date-btn svg {
    width: 24px;
    height: 24px;
    fill: #7b8794;
    display: block;
  }

  .breed-calc__date-btn:hover {
    background: #e5e7eb !important;
    transform: translateY(-50%) !important;
  }

  .breed-calc__result {
    display: inline-flex;
    align-items: center;
    min-height: 54px;
    padding: 0 18px;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #0b84ea;
    background: #eef7ff;
    border: 1px solid #cfe7ff;
    border-radius: 16px;
  }

  .breed-calc__right {
    flex: 1 1 auto;
    min-width: 0;
    border-radius: 20px;
    overflow: hidden;
  }

  .breed-calc__image {
    display: block;
    width: 100%;
    height: 472px;
    object-fit: cover;
    border: 1px solid #dbe3ec;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  }

  /* ===== КАЛЕНДАРЬ DESKTOP ===== */
  .breed-calendar {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    width: 560px;
    max-width: min(560px, calc(100vw - 40px));
    padding: 18px;
    background: #fff;
    border: 1px solid #dde3ea;
    border-radius: 24px;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.14);
    z-index: 9999;
  }

  .breed-calendar.is-open {
    display: block;
  }

  .breed-calendar__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 18px;
  }

  .breed-calendar__nav {
    min-width: 108px;
    padding: 10px 14px;
    background: #f9fafb !important;
    color: #111827 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px;
    cursor: pointer;
    transition: background .2s ease;
  }

  .breed-calendar__nav:hover {
    background: #f3f4f6 !important;
  }

  .breed-calendar__controls {
    display: flex;
    gap: 10px;
    align-items: center;
    flex: 1 1 auto;
    justify-content: center;
  }

  .breed-calendar__select {
    min-width: 110px;
    padding: 10px 12px;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px;
    outline: none !important;
    box-shadow: none !important;
    background: #fff;
    color: #111827;
  }

  .breed-calendar__weekdays,
  .breed-calendar__days {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
  }

  .breed-calendar__weekdays {
    margin-bottom: 10px;
  }

  .breed-calendar__weekdays div {
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    color: #6b7280;
    padding: 8px 0;
  }

  .breed-calendar__empty,
  .breed-calendar__day {
    width: 100%;
    min-height: 42px;
    border-radius: 12px;
    background: #fff !important;
    color: #111827 !important;
    border: 1px solid #edf1f5 !important;
  }

  .breed-calendar__day {
    outline: none !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, transform .15s ease;
  }

  .breed-calendar__day:hover {
    background: #f7f8fa !important;
    border-color: #dbe3ec !important;
  }

  .breed-calendar__day.is-selected {
    background: #e8f2ff !important;
    color: #0b84ea !important;
    border-color: #b9d7ff !important;
    font-weight: 700;
  }

  /* ===== ПЛАНШЕТ ===== */
  @media (max-width: 1024px) {
    .breed-calc {
      gap: 24px;
      padding: 20px;
      align-items: stretch;
    }

    .breed-calc__left {
      width: 320px;
      flex: 0 0 320px;
      padding: 18px;
    }

    .breed-calc__image {
      height: auto;
      aspect-ratio: 650 / 472;
    }

    .breed-calendar {
      width: min(460px, calc(100vw - 48px));
      padding: 16px;
      border-radius: 20px;
    }

    .breed-calendar__head {
      gap: 12px;
    }

    .breed-calendar__nav {
      min-width: 96px;
      padding: 10px 12px;
      font-size: 15px;
    }

    .breed-calendar__controls {
      gap: 8px;
    }

    .breed-calendar__select {
      min-width: 0;
      flex: 1 1 0;
      font-size: 15px;
    }

    .breed-calendar__weekdays,
    .breed-calendar__days {
      gap: 6px;
    }

    .breed-calendar__empty,
    .breed-calendar__day {
      min-height: 40px;
      font-size: 15px;
    }
  }

  /* ===== МОБИЛКА ===== */
  @media (max-width: 767px) {
    .breed-calc {
      flex-direction: column;
      gap: 18px;
      padding: 14px;
      border-radius: 18px;
    }

    .breed-calc__left,
    .breed-calc__right {
      width: 100%;
      flex: 1 1 auto;
    }

    .breed-calc__left {
      padding: 14px;
      border-radius: 18px;
    }

    .breed-calc__label {
      font-size: 15px;
      margin-bottom: 8px;
    }

    .breed-calc__select,
    .breed-calc__date {
      height: 50px !important;
      font-size: 15px !important;
      border-radius: 14px !important;
    }

    .breed-calc__date {
      line-height: 48px !important;
      padding-right: 50px !important;
    }

    .breed-calc__date-btn {
      width: 36px;
      height: 36px;
      right: 7px;
    }

    .breed-calc__date-btn svg {
      width: 20px;
      height: 20px;
    }

    .breed-calc__result {
      width: 100%;
      justify-content: center;
      text-align: center;
      min-height: 50px;
      font-size: 17px;
      padding: 10px 14px;
      border-radius: 14px;
    }

    .breed-calc__image {
      border-radius: 18px;
      aspect-ratio: 16 / 10;
      height: auto;
    }

    /* Календарь на мобилке открывается по центру и не вылазит за экран */
    .breed-calendar {
      left: 50%;
      right: auto;
      transform: translateX(-50%);
      top: calc(100% + 8px);
      width: min(340px, calc(100vw - 24px));
      max-width: calc(100vw - 24px);
      padding: 12px;
      border-radius: 18px;
    }

    .breed-calendar__head {
      flex-direction: column;
      align-items: stretch;
      gap: 10px;
      margin-bottom: 12px;
    }

    .breed-calendar__nav {
      width: 100%;
      min-width: 0;
      min-height: 44px;
      border-radius: 14px;
      font-size: 15px;
    }

    .breed-calendar__controls {
      width: 100%;
      justify-content: space-between;
      gap: 8px;
    }

    .breed-calendar__select {
      flex: 1 1 0;
      min-width: 0;
      height: 42px;
      font-size: 15px;
      border-radius: 12px;
      padding: 8px 10px;
    }

    .breed-calendar__weekdays,
    .breed-calendar__days {
      gap: 6px;
    }

    .breed-calendar__weekdays div {
      font-size: 13px;
      padding: 6px 0;
    }

    .breed-calendar__empty,
    .breed-calendar__day {
      min-height: 38px;
      font-size: 14px;
      border-radius: 12px;
    }
  }

  /* ===== ОЧЕНЬ УЗКИЕ ЭКРАНЫ ===== */
  @media (max-width: 390px) {
    .breed-calc {
      padding: 12px;
    }

    .breed-calc__left {
      padding: 12px;
    }

    .breed-calendar {
      width: calc(100vw - 16px);
      max-width: calc(100vw - 16px);
      padding: 10px;
      border-radius: 16px;
    }

    .breed-calendar__weekdays,
    .breed-calendar__days {
      gap: 4px;
    }

    .breed-calendar__empty,
    .breed-calendar__day {
      min-height: 34px;
      font-size: 13px;
    }

    .breed-calendar__weekdays div {
      font-size: 12px;
    }
  }

  .breed-calendar__nav:focus,
  .breed-calendar__select:focus,
  .breed-calendar__day:focus,
  .breed-calc__date-btn:focus {
    outline: none !important;
    box-shadow: none !important;
  }

  .breed-calc,
  .breed-calc__left,
  .breed-calc__image,
  .breed-calendar,
  .breed-calc__select:focus,
  .breed-calc__date:focus,
  .breed-calendar__nav:focus,
  .breed-calendar__select:focus,
  .breed-calendar__day:focus,
  .breed-calc__date-btn:focus {
    box-shadow: none !important;
  }/* End custom CSS */