/* UI ICONS */
/* ICONS */
.stack-carac-cp {
  position: relative;
  padding: 100px 0 40px 0px; }
  .stack-carac-cp__image-container {
    width: 100%;
    position: absolute;
    top: 120px;
    right: auto;
    bottom: auto;
    left: 0; }
    .stack-carac-cp__image-container > img {
      min-width: 100%; }
    @media (min-width: 768px) {
      .stack-carac-cp__image-container {
        width: auto;
        position: absolute;
        top: 100px;
        left: 50%;
        transform: translateX(-100%); } }
    @media (min-width: 1500px) {
      .stack-carac-cp__image-container {
        position: absolute;
        top: 100px;
        left: 0;
        transform: translateX(0); } }
  .stack-carac-cp__image-on {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0; }
  .stack-carac-cp__panel-container {
    margin-top: 250px; }
    @media (min-width: 768px) {
      .stack-carac-cp__panel-container {
        margin-top: 40px; } }
  .stack-carac-cp__panel {
    position: relative; }
    .stack-carac-cp__panel:not(:first-child)::before {
      content: '';
      width: 100%;
      height: 3px;
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      background-color: #444444;
      border-radius: 2px; }
    .stack-carac-cp__panel h3 {
      text-transform: inherit; }
  .stack-carac-cp__opener {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 21px 0 18px;
    cursor: pointer; }
    @media (min-width: 768px) {
      .stack-carac-cp__opener {
        padding: 24px 0 21px; } }
  .stack-carac-cp__panel-state {
    width: 20px;
    height: 20px;
    position: relative; }
    .stack-carac-cp__panel-state > * {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .stack-carac-cp__panel-content {
    overflow: hidden;
    height: 0; }
    .stack-carac-cp__panel-content > * {
      padding-bottom: 16px; }
  .stack-carac-cp__switch {
    width: 46px;
    height: 46px;
    position: absolute;
    top: 0;
    right: 100px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-image: linear-gradient(to right, #871d81 0%, #e2001a 100%);
    cursor: pointer; }
    .stack-carac-cp__switch svg {
      position: relative; }
    .stack-carac-cp__switch::before {
      content: '';
      display: block;
      width: 42px;
      height: 42px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      background-color: #170717;
      border-radius: 50%;
      transition: opacity 0.3s ease-out; }
    .stack-carac-cp__switch.activated::before {
      opacity: 0; }

@media (min-width: 768px) {
  .stack-carac-box {
    height: 758px; } }

@media (min-width: 768px) {
  .stack-carac-modem {
    height: 758px; } }
