@import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');

:root {
    --bs-primary: #0D826E/* #564EC9; */;
    --bs-primary-border: #1ca18b/* #847BFB; */;
    --bs-primary-rgb: 13, 130, 110; /* RGB value of #473BF0 */
    --bs-primary-text-emphasis: #092729; /* Darker, contrasting color for emphasis */
    --bs-primary-bg-subtle: #DAFBF6; /* Light background, slightly off-white */
    --bs-primary-border-subtle: #1b8371; /* Slightly darker border to match */
    --bs-box-shadow: 0 0.1875rem 0.5rem 0 rgba(34, 48, 62, 0.055);
    --bs-border-hover: #c0c0c0;
    --bs-bg-secondary: #f8f8f8;
    --bs-btn-group-border-color: #e4e6e8;
    --bs-bg-white-hover: #ececec;
    --bs-card-bg: #FFFFFF;
    --bs-light-rgb: #ededed;
    --bs-btn-outline-secondary-border: #e5e5e5;
    --bs-menu-hover-color: #000000;
    --bs-paper-bg: #fafafa;
    --bs-jmp-btn-active-bg: #fafafa;
    --bs-body-secondary: #505050;
    --bs-body-tertiary: #f5f5f5;
    --bs-input-color: #393a5a;
    --bs-nav-tabs-link-active-color: #647DF6/* #847BFB; */;
    --bs-secondary-contrast: #575757;
    --bs-border-color-hover: #c0c0c0;
    --bs-light-bg-subtle: #f4f5f6;
    --bs-placeholder: #bebebe;
    --bs-secondary-rgb: 248, 248, 248;
    --bs-body-bg: #F6F6F3;
}

body {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.manrope-light {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}

.manrope-regular {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.manrope-medium {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.manrope-semibold {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

.manrope-bold {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.manrope-extrabold {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}



.dominant-icon {
    font-family: "Material Symbols Outlined";
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    font-size: 24px !important;
    font-weight: 400;
    width: 1em;
    height: 1em;
    line-height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    text-transform: none;
    overflow: hidden;
}
.dominant-icon-xs {
    font-size: 16px !important;
}

/** Fixes grouped floating inputs **/
.form-floating > .form-select {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.form-floating > .form-control {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.form-floating > .form-control:focus {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.form-floating > .form-control:focus-within {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.input-group:has(button) .form-control {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
/* (Optional) If you want to keep the focus-within behavior for input-groups */
html:not([dir='rtl']) .input-group .form-select {
    padding: calc(0.543rem - 2px) calc(0.9375rem - 2px);
}
[dir='rtl'] .input-group .form-select {
    padding: calc(0.543rem - 2px) calc(0.9375rem - 2px);
}
.flatpickr-calendar.open {
    z-index: 1090 !important;
}
.bbd-btn-icon {
    block-size: calc(2.2505001rem + calc(var(--bs-border-width)* 2));
    inline-size: calc(2.2505001rem + calc(var(--bs-border-width)* 2));
    padding:0;
}

.fp-logo {
    width: auto;
    height: 36px;
}

.fp-transition {
    transition: all 0.3s ease;
}

/* Frontpage category cards */
/* Frontpage category cards */
/* Frontpage category cards */


.fp-category-card {
    padding: 1rem;
    background-color: rgba(255, 255, 255, 0);
    color: var(--bs-body-secondary);
    width: auto;
    transition: all 0.3s ease-in-out;
}

.fp-category-card, .fp-category-card .dominant-icon {
    transition: all 0.3s ease-in-out;
}

.fp-category-card:hover {
    background-color: var(--bs-bg-white-hover);
    border-color: var(--bs-border-color-hover);
    color: var(--bs-menu-hover-color);
}

.fp-category-card:hover .dominant-icon {
    color: var(--bs-primary);
}

.fp-category-swiper .swiper-slide {
    width: auto !important;
}

.fp-category-swiper .swiper-wrapper .swiper-slide:last-child {
    padding-right: 24px;
}

.fp-category-swiper .swiper-wrapper .swiper-slide:first-child {
    padding-left: 24px;
}

.fp-category-swiper .swiper-button-prev, .fp-category-swiper .swiper-button-next {
    opacity: 1;
    transition: opacity 0.3s ease;
}
.fp-category-swiper .swiper-button-disabled, .fp-category-swiper .swiper-button-disabled {
    opacity: 0;
}

.fp-category-swiper .swiper-button-next {
    right: 42px;
    left: auto;
}

.fp-category-swiper .swiper-button-prev {
    left: 42px;
    right: auto;
}

.fp-category-swiper {
    overflow: hidden;

    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0,
        #000 40px,
        #000 calc(100% - 60px),
        transparent 100%
    );
    mask-image: linear-gradient(
        to right,
        transparent 0,
        #000 40px,
        #000 calc(100% - 60px),
        transparent 100%
    );
}

/* / Frontpage category cards */
/* / Frontpage category cards */
/* / Frontpage category cards */

.fd-tilbud-title {
    font-size: 2rem;
    font-weight: 600;
}

@media (max-width: 1200px) {
    .fd-tilbud-title {
        font-size: 1.5rem;
        font-weight: 600;
    }
}

@media (max-width: 1000px) {
    .fd-tilbud-title {
        font-size: 1.25rem;
        font-weight: 600;
    }
}

@media (max-width: 768px) {
    .fd-tilbud-title {
        font-size: 1.00rem;
        font-weight: 600;
    }
}


.fd-tilbud-card-title {
    font-size: 1.1rem;
    font-weight: 600;
}

@media (max-width: 1200px) {
    .fd-tilbud-card-title {
        font-size: 1.0rem;
        font-weight: 600;
    }
}

@media (max-width: 1000px) {
    .fd-tilbud-card-title {
        font-size: 1rem;
        font-weight: 600;
    }
}

@media (max-width: 768px) {
    .fd-tilbud-card-title {
        font-size: 1.00rem;
        font-weight: 600;
    }
}

.swiper-button-prev, .swiper-button-next {
    color: var(--bs-primary);
    padding: 16px;
    background-color: var(--bs-body-bg);
    width: 36px;
    height: 36px;
    border-radius: var(--bs-border-radius);
    border: var(--bs-border-color-hover) var(--bs-border-width) solid;
}

.swiper-button-prev::after, .swiper-button-next::after {
    font-size: 24px;
    font-weight: 500;
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--bs-primary));
}

.heart {
  width: 100px;
  height: 100px;
  background: url("/assets/bilbodog/img/heart-animation.png") no-repeat;
  background-position: 0 0;
  cursor: pointer;
  transition: background-position 1s steps(28);
  transition-duration: 0s;
  transform: scale(0.85);
  
  &.is-active {
    transition-duration: 1s;
    background-position: -2800px 0; /* goes through all frames */
  }
}

.fd-like-wrapper {
    transition: 200ms ease-in-out all;
    right: -10px;
    top: -10px;
}

.fd-like-wrapper:hover {
    transform: scale(1.1);
}

.offer-slide-img {
    aspect-ratio: 5 / 3;
}

.offer-card {
    width: calc(25% - 0.9375rem);
}


.offer-badge {
    top: 0px;
    left: 0px;
    background-color: #DD803E;
    padding: 0.25rem 0.45rem;
    border-radius: var(--bs-border-radius);
    font-size: 0.75rem;
    color: var(--bs-white);
}

.border-hover {
    transition: 200ms ease-in-out all;
}

.border-hover:hover {
    border-color: var(--bs-border-color-hover) !important;
}