/* Default */
body {
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
}

/* Typography */
p {
    margin-bottom: 0;
}
h1 {
    font-size: 24px;
    line-height: 32px;
    font-weight: 500;
}
h2 {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
}
h3 {
    font-size: 18px;
    line-height: 28px;
    font-weight: 500;
}
h4 {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
}
.bodyL {
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
}
.bodyM {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
}
.bodyS {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
}
.caption {
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
}
.label {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
}
.btn {
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
}

/* Colors */
.color-primary {
    color: rgba(63,70,72,1);
}
.color-foreground {
    color: rgba(35,35,35,1);
}
.color-brand {
    color: rgba(234,2,6,1);
}
.color-carrot {
    color: rgba(245,73,0,1);
}
.color-onion {
    color: rgba(217,143,39,1);
}
.color-leek {
    color: rgba(50,153,45,1);
}
.color-radish {
    color: rgba(134,82,0,1);
}
.color-beetroot {
    color: rgba(188,32,32,1);
}
.color-other-veg {
    color: rgba(50,153,45,1);
}


/* Icons */
.icon {
    width: 32px;
    height: 32px;
    vertical-align: middle;
    fill: currentColor;
    stroke: none;
}

.mat-icon {
    font-size: 32px;
}

.mat-btn-icon {
    font-size: 20px;            /* trochę mniejsze niż domyślne 24px */
    vertical-align: middle;     /* wyrównanie do środka linii tekstu */
    line-height: 1;             /* usuwa dodatkowy odstęp w pionie */
    margin-top: -2px;           /* ewentualne drobne przesunięcie w górę */
}


/* Components */
.badge {
    border-radius: 8px;
    padding: 6px 8px;
}
.badge-light {
    border: 1px solid white;
    color: rgba(35,35,35,1);
    background-color: white;
}
.badge.badge-sm {

}


.chips {
    padding: 8px 16px;
    border-radius: 50rem;
}
.chips.chips-light {
    background-color: rgba(252,252,252,1);
}
.chips.chips-dark {
    background-color: rgba(29,30,29,1);
}

.card {
    border-radius: 16px;
}

.card-contact .card-body {
    padding: 32px;
}

.card-topped {
    border: 0;
    height: 100%;
}
.card-topped .card-body {
    background-color: white;
    padding: 32px 12px;
}

.card-case-study {
    background-color: rgba(240,253,244,1);
    border: 1px solid rgba(185,248,207,1);
    border-radius: 14px;
}
.card-case-study .card-body {
    gap: 12px;
}
.card-case-study h1,
.card-case-study h4 {
    color: rgba(1,102,48,1);
}
.card-case-study .label {
    color: rgba(0,166,62,1);
}
.card-case-study .bodyS {
    color: rgba(0,130,54,1);
}

@media (min-width: 992px) {
  .sticky-sidebar {
    position: sticky;
    top: 2rem;
    align-self: flex-start;
    height: fit-content;
  }
}

.card-product {
    border-radius: 14px;
}
.card-product img {
    border-radius: 10px;
    background-color: rgba(247,247,247,1);
}

.card-side .card-body {
    padding: 24px;
    gap: 16px;
}

.hero-yt {
    font-family: Arial, Helvetica, sans-serif;
    width: 480px;
    background-color: rgba(255, 255, 255, 0.1);
    padding: 32px;
    border-radius: 16px;
}
.hero-yt iframe {
    border-radius: 10px;
}
.hero-yt h3 {
    font-size: 24px;
    line-height: 32px;
    font-weight: 400;
}
.hero-yt p {
    font-size: 14px !important; /* WTF?! */
    line-height: 20px !important; /* This does not work without !important clause... */
    color: rgba(255,255,255,0.7);
}

footer {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    color: rgba(255,255,255,0.8);
    background-color: rgba(35,35,35,1);
    padding: 72px 24px;
}
footer a {
    color: #ccc;
    text-decoration: none;
}
footer a.nav-link {
    color: #ccc;
}
footer a.nav-link:focus,
footer a.nav-link:hover {
    color: white;
}
footer a:hover {
    text-decoration: underline;
}
footer h4 {
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: white;
}
footer .company-name {
    font-size: 24px;
    line-height: 32px;
    font-weight: bold;
    color: white;
}
footer .company-desc {
    line-height: 22.75px;
}
footer .contact {
    gap: 12px;
    color: white;
}
footer .contact a {
    color: white;
}
footer .btn-social {
    width: 40px;
    height: 40px;
    font-size: 20px;
    padding: 8px 10px;
    border: 0;
    border-radius: 10px;
    color: white;
    background-color: rgba(255,255,255,0.3);
}
footer a.call-us {
    font-size: 18px;
    line-height: 28px;
    font-weight: 700;
    color: white;
}
footer .box {
    padding: 16px;
    background-color: rgba(255,255,255,0.1);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}


/* header {background-color: #fff; border-bottom: 1px solid #eee;} */
.navbar-brand {padding-top: 0;padding-bottom: 0; margin-right: 0;}
.navbar-brand img {height: 50px;}
.hero {
    color: white;
    padding: 120px 20px;
}
.hero h1 {font-weight: 500;font-size: 24px;line-height: 32px;letter-spacing: 0;}
.hero p {font-weight: 400;font-size: 18px;line-height: 28px;letter-spacing: 0;justify-content: center;}
.btn-light {font-weight: 600;font-size: 16px;line-height: 24px;letter-spacing: 0;}
/* class="d-inline-flex mb-3 px-2 py-1 fw-semibold text-success-emphasis bg-success-subtle border border-success-subtle rounded-2" */
/* .btn-main {background-color: #000; color: #fff; border: none;} */
.step-card {border: 1px solid #e5e5e5; border-radius: 10px; overflow: hidden; background: #fff; height: 100%;}
.step-card img {width: 100%; height: 200px; object-fit: cover;}
.step-card-body {padding: 20px;}



.form-check-input:focus[type=checkbox] {
    box-shadow: none;
}
.form-check-input:checked[type=checkbox] {
    border: var(--bs-border-width) solid var(--bs-border-color);
    background-color: white;
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223%22%20d%3D%22M6%2010l3%203l6-6%22%2F%3E%3C%2Fsvg%3E");
}

.trendy-cover {
    min-height: 400px;
    background: url('/attachments/trendy.jpg') center/cover no-repeat;

    border-top-left-radius: 14px;
    border-top-right-radius: 14px;
    border-bottom-left-radius: 0;
}

.article-cover {
    min-height: 200px;
    background: url('/attachments/trendy.jpg') center/cover no-repeat;

    border-top-left-radius: 14px;
    border-top-right-radius: 14px;
}

.trendy-body {
    padding: 48px;
}

@media only screen and (min-width: 992px) {
    .trendy-cover {
        border-top-left-radius: 14px;
        border-top-right-radius: 0;
        border-bottom-left-radius: 14px;
    }

    .trendy-body {
        padding: 92px 48px;
    }
}

.trust-box {
    border: 1px solid rgba(0,0,0,0.1);
    border-radius: 16px;
}

.experts-box {
    background:
        linear-gradient(0deg, rgba(3, 2, 19, 0.8) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%),
        url('/attachments/experts.jpg') center/cover no-repeat;
}

.icon-offer {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background-color: white;

    display: flex;
    justify-content: center;
    align-items: center;
}

/* Icons */
.card-icon {
    width: 48px;
    height: 48px;
    border-radius: 33px;
    color: white;
    background-color: rgba(255,255,255,0.3);

    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
}

.card-icon-lg {
    width: 64px;
    height: 64px;
    border-radius: 10px;
    background-color: rgba(247,247,247,1);

    display: flex;
    justify-content: center;
    align-items: center;
}

.card-icon-two {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    color: red;
    background-color: rgba(247,247,247,1);

    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
}

.card-icon-three {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    color: red;
    background-color: white;

    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
}

.offer-card-icon {
    width: 56px;
    height: 56px;
    border-radius: 48px;
    padding: 16px;
    color: red;
    background-color: rgba(247,247,247,1);

    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
}

/* Badges */
.hero-badge {
    font-family: Arial, sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;

    border: 1px solid rgba(255,255,255,0.2);
    color: white;
    background-color: rgba(255,255,255,0.2);
    border-radius: 8px;
    padding: 6px 8px;
    margin-bottom: 12px;
}
.offer-badge {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;

    border: 1px solid rgba(3,2,19,1);
}
.offer-pill {
    font-size: 14px;
    line-height: 20px;
    white-space: nowrap;
    padding: 8px 16px;
    background-color: white;
    border: 1px solid rgba(0,0,0,0.1);
    border-radius: 10px;
    }
.trendy-badge {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;

    border: 0;
    color: rgba(110,17,176,1);
    background-color: rgba(243,232,255,1);
    border-radius: 8px;
    padding: 4px 8px;
}
.article-badge {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;

    border: 0;
    color: rgba(1,102,48,1);
    background-color: rgba(220,252,231,1);
    border-radius: 8px;
    padding: 4px 8px;
}
.card-img-badge {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;

    border: 0;
    color: white;
    background-color: rgba(0,0,0,0.4);
    border-radius: 8px;
    padding: 2px 8px;
}

/* Buttons */
.btn {
    padding: 12px 24px;
    border: 1px solid rgba(209,213,219,1);
    border-radius: 8px;
}
.btn.btn-lang {
    padding: 0;
    border: 0;
    color: white;
}
.btn.btn-wide {
    padding: 12px 64px;
}
.btn-cta {
    padding: 6px 12px;
}
.btn-offer-return {
    padding: 6px 12px;
    border: 0;
    gap: 12px;
}
.btn-product-pdf {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    padding: 6px 12px;
}
.btn-product-pdf > .mat-btn-icon {
    margin-right: 0.25rem;
}

/* Boxes */
.box-contact {
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 10px;
    background-color: rgba(3,2,19,0.1);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
}

.box-about {
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 10px;
    color: rgba(234,2,6,1);
    background-color: rgba(247,247,247,1);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
}

/* Dropdown */
.dropdown-menu {padding: 32px 24px;gap: 16px;border: 1px solid rgba(229,229,229,1);border-radius: 12px;}
.dropdown-menu ul {list-style: none;padding: 0;}
.dropdown-item {padding: 8px 12px;border-radius: 4px;}
.dropdown-item:hover {background: rgba(248,247,247,1);}
.dropdown-item:active {background: rgba(248,247,247,1);color: #212529;}
.dropdown-menu.lang-menu {padding: 8px;}

@media only screen and (min-width: 992px) {
    .dropdown-menu.mega.show {display: flex;}
}

/* Offer card */
.card.offer-card .card-body {
    padding: 32px 24px;
    gap: 12px;
}
.card.offer-card .card-img-top {
    max-height: 200px;
}
.card.offer-card .card-img-overlay {
    max-height: 200px;
}

.card-badge {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    color: rgba(29,30,29,1);
    border: 1px solid rgba(0,0,0,0.1);
    border-radius: 8px;
    padding: 2px 8px;
}

section.offer-single {
    padding: 72px 12px;
}

/* Offer CTA section */
section.offer-cta {
    padding-top: 72px;
    padding-bottom: 72px;
    display: flex;
    flex-direction: column;
}

section.applications {
    padding: 72px 12px;
}

section.breadcrumbs {
    height: 48px;
    padding-left: 12px;
    padding-right: 12px;
    display: flex;
    flex-direction: row;
    gap: 10px;
}

section.breadcrumbs a {
    text-decoration: none;
}

section.about .values-box {
    padding: 72px 12px;
    gap: 58px;
}

section.about .values-box img {
    border-radius: 16px;
}

section.offer-return {
    border-top: 1px solid rgba(0,0,0,0.1);
    padding: 24px 12px;
}

.mw-600 {
    max-width: 600px;
}

.no-border {
    border: 0;
}

.border-red {
    border-color: red;
}

.gradient-card {
    border: 1px solid rgba(3,2,19,0.2);
    border-radius: 14px;
    background: linear-gradient(90deg, rgba(3,2,19,0.05), rgba(236,238,242,0.1));
}

.bg-success-subtle {
    background-color: #E6F2E6 !important;
}

/* Opierać się na schemacie linii obierania cebuli */