@import "../fonts/din/fonts.css";
@import "../fonts/felix/fonts.css";

:root {
  --fg: #231F20;
  --fg2: #464646;
}

html, body {
  font-family: Inter, sans-serif;
  font-size: 16px;
  background-color: #FFF;
  margin: 0;
  position: relative;

  color: var(--fg);

  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
}

p, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 400;
  line-height: 1.4;
}

a {
  text-decoration: none;
  border: none;
  outline: none;
}

a:visited {
  text-decoration: none;
  border: none;
  background: transparent;
}

a:hover,
a:focus {
  text-decoration: none;
}

b, strong {
  font-weight: 600;
}

* {
  box-sizing: border-box;
}

.wrapper {
  margin: 0 auto;
  max-width: 1440px;
  /*padding: 1rem 2.5rem 0;*/
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.button {
  display: inline-flex;
  padding: 0.875rem 1.5rem;
  justify-content: center;
  align-items: center;
  font-family: Inter, sans-serif;

  color: #FFF;
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;

  border-radius: 0.5rem;
  border: none;

  background: #231F20;
}

.button:hover {
  background: #000;
}

.button.felix {
  background: #ED1C24;
}

.button.felix:hover {
  background: #BE161D;
}

.button.oneDog {
  background: #B12433;
}

.button.oneDog:hover {
  background: #8E1D29;
}

.button.oneCat {
  background: #D70067;
}

.button.oneCat:hover {
  background: #AC0052;
}

.button.oneCat.secondary {
  color: #D70067;
  border: 1px solid #D70067;
  background: transparent;
}

.button.oneCat.secondary:hover {
  color: #AC0052;
  border: 1px solid #AC0052;
}

.hero {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.hero img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.hero .textSide {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  justify-content: center;
}

.hero .textSide > :last-child {
  margin-top: 1rem;
}

.hero .title {
  font-size: clamp(1.5rem, 0.625rem + 2.000vw, 2.25rem);
  max-width: 23ch;
}

.hero .text {
  font-size: clamp(1rem, 0.417rem + 1.333vw, 1.5rem);
  color: var(--fg2);
}

.splitActionsBackground {
  background: #F9F9F9;
}

.splitActions {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  padding-top: 5rem;
  padding-bottom: 5rem;
  overflow: hidden;
}

.splitActions .heading {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  text-align: center;
}

.splitActions .heading .title {
  font-size: clamp(1.25rem, 0.375rem + 2.000vw, 2rem);
}

.splitActions .heading .text {
  font-size: clamp(1rem, 0.417rem + 1.333vw, 1.5rem);
  color: var(--fg2);
}

.splitActions .actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}

.splitActions .action {
  padding: 2rem;
  border-radius: 2rem;
  /*aspect-ratio: 1/1;*/
  display: flex;
  flex-direction: column;
  position: relative;
}

.splitActions .action .top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1rem;
}

.splitActions .action .top img {
  height: clamp(5.5rem, 3.167rem + 5.333vw, 7.5rem);
  aspect-ratio: 1/1;
  object-fit: contain;
}

.splitActions .counter {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
}

.splitActions .counter .text {
  text-align: center;
  font-size: 1.125rem;
  /*font-size: clamp(0.75rem, 0.313rem + 1.000vw, 1.125rem);*/
  font-weight: 600;
}

.splitActions .counter .items {
  display: flex;
  justify-content: center;
  gap: 0.25rem;
}

.splitActions .counter .items > * {
  color: var(--fg);
  font-weight: 500;
  line-height: 1;

  display: flex;
  justify-content: center;
  align-items: center;

  /* minimum jest przy 700px width */
  /*font-size: clamp(1.5rem, 0.917rem + 1.333vw, 2rem);*/
  /*height: clamp(2.25rem, 1.375rem + 2.000vw, 3rem);*/
  /*width: clamp(1.875rem, 1.146rem + 1.667vw, 2.5rem);*/

  /* minimum jest przy 900px width */
  font-size: clamp(1.5rem, 0.375rem + 2.000vw, 2rem);
  height: clamp(2.25rem, 0.563rem + 3.000vw, 3rem);
  width: clamp(1.875rem, 0.469rem + 2.500vw, 2.5rem);
  padding-top: 0.2em;

  border-radius: 0.5rem;
  background: #FFF;
}

.splitActions .mainText {
  text-align: center;
  line-height: 1.2;
  font-size: clamp(1.25rem, 0.375rem + 2.000vw, 2rem);
  max-width: 560px;
  margin: 0 auto;
}

.splitActions .mainImg {
  display: block;
  margin: 0 auto;
  width: 95%;
  object-fit: contain;
  /*background-position: center;*/
  /*background-repeat: no-repeat;*/
  /*background-size: contain;*/

  /*aspect-ratio: 5/3;*/
}

.splitActions .sideImg {
  position: absolute;
  right: 0;
  bottom: 0;
}

.splitActions .actionFelix {
  color: #FFF;
  position: relative;
}

.splitActions .actionFelix .counter .items > *,
.splitActions .actionFelix .mainText {
  font-family: Felix, Inter, sans-serif;
}

.splitActions .actionFelix .counter .text {
  max-width: 8em;
}

.splitActions .actionFelix > :not(.bg) {
  z-index: 1;
}

.splitActions .actionFelix .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  border-radius: 2rem;
}

.splitActions .actionFelix .sideImg {
  /*width: clamp(10rem, 0.083rem + 22.667vw, 18.5rem);*/
  width: clamp(14rem, 5.000rem + 16.000vw, 18rem);
  /* 1300 do 900px */
  transform: translateX(-3%) translateY(21%);
}

.splitActions .actionOneDog {
  background: #E4CDB9;
}

.splitActions .actionOneDog .counter .items > *,
.splitActions .actionOneDog .mainText {
  font-family: "DIN Next LT Pro", Inter, sans-serif;
}

.splitActions .actionOneDog .counter .text {
  max-width: 9em;
}

.splitActions .actionOneDog .sideImg {
  /*width: clamp(7.5rem, -1.396rem + 20.333vw, 15.125rem);*/
  width: clamp(11.25rem, 2.531rem + 15.500vw, 15.3rem);
  transform: translateX(22%) translateY(17%);
}

.actionOneCat {
  display: grid;
  grid-template-columns: 0.54fr 0.46fr;
}

.actionOneCat.oneDesktop {
  margin: 5rem 0;
  border-radius: 2rem;
  background: #F2F5FE;
  padding: 2rem;
  overflow: hidden;
}

.actionOneCat.oneMobile {
  margin: 2.5rem 0;
  grid-template-columns: 1fr;
  gap: 1rem;
}

.actionOneCat.oneMobile .card {
  padding: 1rem;
  border-radius: 1rem;
  background: #F2F5FE;
}

.actionOneCat.oneMobile .buttons {
  margin-top: 1rem;
}

.actionOneCat .textContainer {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem
}

.actionOneCat .textContainer > * {
  z-index: 1;
}

.actionOneCat .buttons {
  display: flex;
  gap: 0.5rem;
}

.actionOneCat .title {
  font-size: clamp(1.25rem, 0.958rem + 0.667vw, 1.5rem);
  max-width: 24rem;
}

.actionOneCat .text {
  font-size: clamp(1rem, 0.854rem + 0.333vw, 1.125rem);
  max-width: 24rem;
  color: var(--fg2);
}

.actionOneCat .imgs {
  position: relative;
}

.actionOneCat.oneDesktop .photo {
  position: absolute;
  top: -2rem;
  /*right: calc();*/
  right: -2rem;
  height: calc(100% + 4rem);
  /*transform: translateX(30%) translateY(-60%);*/
  z-index: 0;
}

.actionOneCat.oneDesktop .imgs .logo {
  position: absolute;
  width: 7.5rem;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.actionOneCat.oneDesktop .imgs .packshot {
  position: absolute;
  /*top: -2rem;*/
  /*height: calc(100% + 4rem);*/
  /*bottom: -2rem;*/
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: calc(100% - 7rem);
}

.actionOneCat.oneMobile .imgs .whole {
  max-width: 600px;
  width: 100%;
  margin: 0 auto;
  object-fit: contain;
}

.actionOneCat.oneMobile .textContainer > * {
  margin: 0 auto;
}

.actionOneCat.oneMobile .title {
  max-width: 21em;
}

.actionOneCat.oneMobile .text {
  max-width: 20em;
}

@media (min-width: 900px) {
  .oneMobile {
    display: none !important;
  }
}

@media (max-width: 900px) {
  .splitActions {
    gap: 1.5rem;
  }

  .splitActions .actions {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .splitActions .action {
    aspect-ratio: unset;
  }

  .splitActions .counter .text {
    font-size: 1rem;
  }

  .actionOneCat {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .actionOneCat .title {
    max-width: unset;
  }

  .actionOneCat .text {
    max-width: unset;
  }

  .actionOneCat .buttons {
    justify-content: center;
  }

  .oneDesktop {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .mobile {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .wrapper {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .desktop {
    display: none !important;
  }

  .mobileNewLine {
    display: block;
  }

  .hero {
    grid-template-columns: 1fr;
    grid-template: "text" "img" "button";
    text-align: center;
    gap: 1rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .hero img {
    grid-area: img;
    object-position: 70%;
    object-fit: cover;
    aspect-ratio: 1/1;
  }

  .hero .mobile {
    grid-area: button;
  }

  .hero .button {
    width: 100%;
  }

  .hero .textSide {
    align-items: center;
    grid-area: text;
    gap: 1rem;
  }

  .splitActions {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .splitActions .heading > * {
    margin: 0 auto;
  }

  .splitActions .heading .title {
    max-width: 16em;
  }

  .splitActions .heading .text {
    max-width: 16em;
  }

  .splitActions .action {
    padding: 1rem;
  }

  .splitActions .action, .splitActions .actionFelix .bg {
    border-radius: 1rem;
  }

  .splitActions .mainImg {
    margin: 0.8rem auto 1.75rem;
  }

  .splitActions .counter .text {
    /*font-size: 1rem;*/
    font-size: clamp(0.75rem, 0.125rem + 2.000vw, 1rem);
  }

  .splitActions .actionFelix .sideImg {
    width: clamp(10rem, 0.000rem + 32.000vw, 14rem);
  }

  .splitActions .actionOneDog .sideImg {
    width: clamp(7.45rem, -1.875rem + 30.000vw, 11.25rem);
  }

  .actionOneCat.oneDesktop {
    padding: 1rem;
  }

  .actionOneCat .buttons {
    flex-direction: column;
  }
}
