@font-face {
    font-family: "Mulish";
    src: url("/fonts/muli-regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "MontB";
    src: url("/fonts/mont-bold.otf") format("opentype");
    font-style: normal;
}

body {
    font-family: "Mulish", sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "MontB", sans-serif;
}

.mobile {
    display: none !important;
}

.load5 {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    background-color: rgba(128, 128, 128, 0.5);
    z-index: 10000;
}

.load6{
    position: fixed;
    width: 300px;
    height: 300px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    padding: 20px;
    align-items: center;
    text-align: center;
    background-color: #FFF;
    border-radius: 15px;
    z-index: 10000;
}

.loader {
    margin: 100px auto;
    font-size: 25px;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    position: relative;
    text-indent: -9999em;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
}

.header-img {
    height: 40px;
}

.header-img-csob {
    height: 50px;
}

.filter-white {
    filter: invert(100%) brightness(150%) contrast(150%);
}

.link-btn {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    margin-right: auto;
    padding: 12px 0;
    color: #3A5DAE;
}

.btn {
    font-size: 18px;
    font-weight: 700;
    border-radius: 28px;
    padding: 12px 28px;
}

.btn.btn-primary {
    background-color: #9CD488;
    border: 2px solid #9CD488;
    color: black;
}

.btn.btn-secondary {
    background-color: white;
    border: 2px solid #3A5DAE;
    color: #3A5DAE;
}

.btn.btn-secondary-dark {
    background-color: white;
    border: 2px solid #29417A;
    color: #29417A;
}

.btn.btn-tertiary {
    background-color: #3A5DAE;
    border: 2px solid #3A5DAE;
    color: white;
}

.btn.btn-tertiary:hover {
    background-color: #263d73;
    border-color: #263d73;
}

.btn.btn-standard-link {
    color: #3A5DAE;
    text-decoration: underline;
}

.green {
    color: #2D8024 !important;

    .no-color {
        color: initial !important;
    }
}

.red {
    color: #B00020 !important;

    .no-color {
        color: initial !important;
    }
}

.dark-blue {
    color: #3A5DAE !important;

    .no-color {
        color: initial !important;
    }
}

.redicon {
    color: red;
}

.invalid-url {
    width: fit-content;
    font-style: italic;
    font-size: 1.5rem;
    margin: 2rem auto;
}

.title-block {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 32px;

    .links {
        display: flex;
        gap: 2rem;
        align-items: center;
        margin-right: 10%;

        .btn.btn-standard-link {
            font-size: 17px;
        }
    }
}

.notification-badge {
    background-color: #FF3366;
    border-radius: 50%;
    color: #fff;
    font-size: 12px;
    width: 24px;
    height: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.close-button {
    width: 48px;
    height: 48px;
    background-color: black;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    z-index: 1500;
    cursor: pointer;
}

.modal {
    position: fixed;
    left: 0%;
    top: 0%;
    right: 0%;
    bottom: 0%;
    z-index: 9999;
    display: none;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: rgba(8, 20, 32, 0.4);
    opacity: 0;
}

.close-modal {
    img {
        cursor: pointer;
    }
}

.modal p{
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    margin-bottom: 0;

}

.modal h1 {
    font-size: 32px;
    font-weight: 800;
    line-height: 34px;
    margin-bottom: 0;
}

.modal-show {
    opacity: 1;
    display: flex;
}

.modal_content-wrapper {
    padding: 32px;
    border-radius: 20px;
    background-color: #fff;
    max-height: calc(100% - 20px);
    overflow-y: auto;
    width: 640px;
    gap: 32px;
    display: flex;
    flex-direction: column;
}

.modal-actions {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.modal-actions .btn {
    padding: 16px 32px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 24px !important;
}

.toast.show {
    z-index: 999;
    right: 2rem;
    position: fixed;
    bottom: 2rem;
    width: fit-content;
}

.toast-success, .toast-success .toast-header {
    color: var(--bs-success-text-emphasis);
    background-color: var(--bs-success-bg-subtle);
    border: 1px solid var(--bs-success-border-subtle);
}

.toast-danger, .toast-danger .toast-header {
    color: var(--bs-danger-text-emphasis);
    background-color: var(--bs-danger-bg-subtle);
    border: 1px solid var(--bs-danger-border-subtle);
}

.toast-header {
    border: none !important;
    justify-content: flex-end;
}

.toast-body {
    padding-top: 0;
}

.w-widget {
    position: relative;
}

.w-widget-map {
    width: 100%;
    height: 400px;
}

.stdpage {
    max-width: 1100px;
    margin: auto;  
}

.stdpage > h2 {
    text-align: center;
    font-size: 48px;
    margin: auto auto 20px;
    max-width: 1000px; 
}

.stdpage > p {
    text-align: left;
    font-size: 20px;
    margin: auto auto 30px;
    max-width: 1000px;
}

.form-label-w-img {
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

.form-label-w-img .img-info {
    width: 1.5rem;
    cursor: pointer;
}

.claim_button_fixed {
    position: fixed;
    right: 3rem;
    bottom: 2rem;
    z-index: 1;
}

.homepage-faq, .travel-details {
    max-width: 1100px;
    margin: auto;
}

.homepage-faq > h2, .homepage-mission > h2, .travel-details > h2 {
    text-align: center;
    font-size: 48px;
    margin: auto auto 20px;
    max-width: 1000px;
}

.homepage-faq > p, .homepage-mission > p, .travel-details > p {
    text-align: center;
    font-size: 20px;
    margin: auto auto 30px;
    max-width: 1000px;
}

.homepage-faq .accordion-button, .travel-details .accordion-button {
    font-size: 20px;
    font-weight: 700;
    font-family: "Mulish", sans-serif;
    background-color: white;
    color: black;
}

.homepage-faq .accordion-item, .travel-details .accordion-item {
    border: 0;
    border-bottom: 1px solid #E3E3E3;
}

.faq-intro {
    background: white !important;
    padding-top: 10rem;
    max-width: 1100px;
    margin: auto;
    padding-bottom: 0 !important;
}

.faq-intro h1 {
    position: relative;
    z-index: 2;
    margin-bottom: .5rem !important;
}

.faq-intro .homepage-intro-circle {
    right: unset;
    left: 0;
    opacity: 0.2;
    width: 375px;
    top: -75px;
}

.faq-page {
    padding-top: 3rem;
    position: relative;
}

.faq-blocks {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    border-radius: .5rem;
}

.faq-block {
    background: white;
    box-shadow: 0px 4px 40px 0px #2826261A;
    padding: 1.5rem;
    border-radius: .5rem;
}

.faq-block h2 {
    font-size: 1.6rem;
}

.down-block {
    background: none;
    box-shadow: none;
    padding: 1.5rem;
    border-radius: .5rem;
}

.down-block hr {
    color: #E3E3E3;
    opacity: 1;
}

.down-block .collapse-box {
    padding-left: 1.5rem;
}

.down-block .collapse-item {
    margin-bottom: 1rem;
}

.down-block a {
    text-decoration: underline !important;
    font-weight: bold;
}

.claim-collapse {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.claim-collapse .claim-collapse-box {
    box-shadow: 0px 0.25rem 2.5rem 0px #2826261A;
    padding: 1.5rem 1.75rem;
    border-radius: .5rem;
}

.claim-collapse .claim-collapse-box .collapse-box > :first-child {
    margin-top: 1.5rem;
}

.claim-collapse .claim-collapse-box .collapse-box > * {
    margin-bottom: 1rem;
}

.claim-collapse .claim-collapse-box .collapse-box hr {
    margin-top: 2.5rem;
}

.claim-collapse .claim-collapse-box .collapse-box p a {
    color: inherit;
}

.claim-collapse .claim-collapse-box .collapse-box ul {
    font-size: .875rem;
}

.claim-collapse .collapse-box .link-box h5 {
    font-size: 15px;
}

.claim-collapse .collapse-box .link-box {
    margin-bottom: 0;
}

.claim-collapse .collapse-box .link-box a {
    display: inline-block;
    margin-bottom: .5rem;
    font-size: .875rem;
}

.faq-block .collapse-button, .claim-collapse .collapse-button, .signup-coverage-box .collapse-button, .down-block .collapse-button {
    display: flex;
    align-items: center;
    cursor: pointer;
    margin-bottom: 0;

    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon: url('../images/icons/angle-right-blue.svg');
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-icon-transform: rotate(90deg);
    --bs-accordion-btn-icon-active-transform: rotate(270deg);
}

.faq-block .collapse-box hr {
    margin: 1.1rem 0;
    color: #E3E3E3;
    opacity: 1;
}

.faq-block .collapse-button::after, .claim-collapse .collapse-button::after, .signup-coverage-box .collapse-button::after, .down-block .collapse-button::after {
    flex-shrink: 0;
    width: var(--bs-accordion-btn-icon-width);
    height: var(--bs-accordion-btn-icon-width);
    margin-left: auto;
    content: "";
    background-image: var(--bs-accordion-btn-icon);
    background-repeat: no-repeat;
    background-size: var(--bs-accordion-btn-icon-width);
    transition: var(--bs-accordion-btn-icon-transition);
    transform: var(--bs-accordion-btn-icon-transform);
}

.faq-block .collapse-button:not(.collapsed)::after, .claim-collapse .collapse-button:not(.collapsed)::after, .signup-coverage-box .collapse-button:not(.collapsed)::after, .down-block .collapse-button:not(.collapsed)::after {
    transform: var(--bs-accordion-btn-icon-active-transform);
}

.faq-block .collapse-item h3 {
    font-size: 1.25rem;
    margin-bottom: .75rem;
}

.faq-block .collapse-item a {
    text-decoration: none;
    color: #3A5DAE;
}

.faq-block .collapse-item a:hover {
    text-decoration: underline;
}

.faq-block .collapse-item:first-child {
    padding-top: 1.75rem;
}

.faq-cover-table {
    box-shadow: 0px .25rem 2.5rem 0px #2826261A;
    border-radius: 1rem;
    text-align: center;
    width: 100%;
    table-layout: fixed;
    margin: 1rem 0 2rem;
}

.faq-cover-table .small-col {
    width: 1rem;
}

.faq-cover-table .wide-col {
    width: calc(50% - 1rem);
}

.faq-cover-table thead tr {
    border-bottom: 1px solid #EBEFF7;
}

.faq-cover-table th, .faq-cover-table td {
    padding: 1rem 0;
    vertical-align: top;
}

.faq-cover-table th:first-child {
    font-weight: normal;
}

.faq-cover-table th:last-child {
    background-color: #3A5DAE;
    color: white;
    border-radius: 0 1rem 0 0;
}

.faq-cover-table td a {
    color: inherit;
}

.faq-cover-table td:nth-child(2) {
    padding-right: 1rem;
}

.faq-cover-table td:nth-child(3) {
    padding-left: 1rem;
}

.faq-cover-table td:nth-child(3), .faq-cover-table td:last-child {
    background-color: #EBEFF7;
}

.faq-cover-table td:nth-child(2), .faq-cover-table td:nth-child(3) {
    border-top: 1px solid #C4CEE7;
}

.faq-cover-table tbody tr:first-child td {
    border-top: none;
}

.faq-cover-table tbody tr:last-child td:last-child {
    border-radius: 0 0 1rem 0;
}

.faq-cover-table-tdflex {
    display: flex;
    gap: .5rem;
    align-items: flex-start;
}

.faq-cover-table-tdflex img {
    height: calc(1rem + 4px);
    width: auto;
    padding-top: 4px;
}

.faq-cover-table-tdflex span {
    flex-grow: 1;
}

.down-block .collapse-item:first-child {
    padding-top: 1rem;
}

.homepage-intro, .travel-intro {
    background: #EEE7FF;
    overflow: hidden;
    padding-bottom: 150px;
}

.travel-intro {
    padding-bottom: 0;
}

.homepage-why, .travel-why {
    background: linear-gradient(to bottom, #EEE7FF, white);
}

.travel-why {
    padding: 0 100px 50px;
}

.homepage-intro-dog {
    position: absolute;
    width: 65%;
    left: 45%;
    top: 56%;
    transform: translate(-50%, -40%);
}

.travel-intro-img {
    position: absolute;
    width: 415px;
    left: 45%;
    top: 56%;
    transform: translate(-50%, -40%);
}

.homepage-intro-right, .travel-intro-right {
    position: relative;
}

.homepage-intro h1, .travel-intro h1 {
    font-size: 56px;
    line-height: 58px;
    margin-bottom: 40px;
}

h2 {
    font-size: 48px;
}

.homepage-intro p, .travel-intro p {
    font-size: 24px;
    line-height: 24px;
    margin-bottom: 40px;
}

.down-intro p {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.homepage-intro-circle, .travel-intro-circle {
    position: absolute;
    top: -20px;
    right: -50px;
}

.products-intro .homepage-intro-circle {
    position: relative;
    top: unset;
    right: unset;
    width: 100% !important;
    height: auto !important;
}

.homepage-why-block, .travel-why-block {
    background-color: white;
    max-width: 1200px;
    margin: auto;
    padding: 50px;
}

.homepage-why-block h2, .travel-why-block h2 {
    text-align: center;
    margin-bottom: 50px;
}

.homepage-why-block h3, .travel-why-block h3 {
    font-family: "Mulish", sans-serif;
    font-size: 20px;
    font-weight: 700;
    padding-left: 40px;
}

.homepage-why-block p, .travel-why-block p {
    font-size: 16px;
    font-weight: 400;
    padding-left: 40px;
}

.homepage-why-item, .travel-why-item {
    position: relative;
}

.homepage-why-item svg, .travel-why-item svg {
    position: absolute;
}

.homepage-why-btn-container, .travel-why-btn-container {
    text-align: center;
    margin-top: 50px;
}

.homepage-faq-cat-container, .travel-details-cat-container {
    text-align: center;
    margin-bottom: 50px;
}

.homepage-intro-block, .travel-intro-block {
    max-width: 1200px;
    margin: auto;
}

.homepage-mission {
    background-color: #E4F6DE;
    position: relative;
}

.homepage-mission-stripe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 170px;
    background-color: white;
}

.homepage-mission-img-container {
    position: relative;
    text-align: center;
    margin-bottom: 50px;
}

.homepage-mission-img-container img {
    width: 100%;
    max-width: 1000px;
    height: 21rem;
    object-fit: cover;
    object-position: center;
}

.homepage-mission-item {
    text-align: center;
}

.homepage-mission-item h3 {
    font-size: 20px;
    font-weight: 700;
    margin-top: 30px;
}

.homepage-mission-item p {
    font-size: 14px;
    font-weight: 400;
}

.homepage-mission-items {
    max-width: 1200px;
    margin: 50px auto auto;
}

.homepage-help-block {
    max-width: 1000px;
    margin: auto;
}

.homepage-help-block-left {
    text-align: center;
    margin-bottom: 30px;
}

.homepage-intro-heading-wrap, .travel-intro-heading-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
}

.homepage-intro-heading, .travel-intro-heading {
    padding: 50px;
    z-index: 1;
}

.products-intro {
    background: #E4F6DE;
}

.products-partner {
    background-color: #EEE7FF;
}

.products-partner .homepage-mission-item, .partner-why .homepage-mission-item {
    display: flex;
    gap: 20px;
}

.products-partner .homepage-mission-item h3, .partner-why .homepage-mission-item h3 {
    margin-top: 10px;
    text-align: left;
}

.partner-intro {
    background: linear-gradient(to bottom, #EBEFF7, white);
}

.blog-intro {
    background: white;
    padding-top: 120px;
}

.blog-intro h1, .blog-intro p {
    position: relative;
    z-index: 2;
}

.partner-intro .homepage-intro-circle, .blog-intro .homepage-intro-circle {
    right: unset;
    left: -20px;
    opacity: .3;
}

.partner-intro .homepage-mission-img-container, .blog-intro .homepage-mission-img-container {
    margin-top: 50px;
    margin-bottom: 0;
}

.partner-express {
    background-color: #EBEFF7;
}

.partner-express .transparency-inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.partner-express .homepage-mission-item {
    text-align: left;
}

.breeder-support {
    background: none;
}

.picture-heading {
    display: flex;
    border-bottom: 1px solid #B0BEDF;
    justify-content: space-between;
    padding: 0 20px;
    margin-bottom: 50px;
}

.picture-heading h2 {
    display: flex;
    align-items: center;
}

.picture-heading img {
    max-width: 142px;
    object-fit: contain;
    object-position: bottom;
}

.products-why {
    background: linear-gradient(to bottom, #E4F6DE, white);
}

.products-comparison-inner {
    max-width: 900px;
    margin: auto;
}

.main.vets a, .main.refer a {
    color: #3A5DAE;
    font-weight: bold;
}

.vets-intro {
    background: linear-gradient(to bottom, #EBEFF7, white);
}

.vets-intro img, .refer-intro img {
    width: 85%;
    height: 27rem;
    object-fit: cover;
    border-radius: 16px;
    object-position: 50% 41%;
    box-shadow: 0px 4px 40px 0 #28262614;
    margin: 0 auto 4rem;
    display: block;
}

.vets-intro h1, .refer-intro h1 {
    text-align: center;
    width: 67%;
    margin: 0 auto 1rem;
    font-size: 48px;
}

.vets-intro p, .refer-intro p {
    width: 62%;
    text-align: center;
    margin: 0 auto;
    font-size: 20px;
}

.vets-searchbox-box {
    max-width: 80%;
    margin: auto;
    border-radius: 8px;
    box-shadow: 0px 2px 16px 0px #28262624;
    padding: 40px 50px;
}

.vets-searchbox-box p {
    font-size: 14px;
    margin-top: 2rem;
    margin-bottom: 0;
}

.vets-searchbox-info {
    width: fit-content;
    margin: 3rem auto 0;
}

.vets-results h2 {
    width: fit-content;
    margin: 0 auto 2rem;
}

.vets-results-swiper-box {
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
    justify-content: center;
    gap: 1rem;
}

.vets-results-swiper-box.hide-buttons {
    .swiper-button-next, .swiper-button-prev {
        display: none !important;
    }

    .vets-results-swiper-nav {
        display: none !important;
    }
}

.vets-results-swiper {
    width: calc(3*(18rem + 40px) + (2*40px));
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.vets-results-swiper-wrapper {
    align-items: stretch;
}

.vets-results-swiper-wrapper-notfound {
    text-align: center;
    width: 100%;
    font-size: 20px;
}

.vets-results-swiper-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2rem;

    .swiper-button-prev, .swiper-button-next {
        display: none;
    }
}

.vets-results-swiper-box .swiper-button-prev:hover, .vets-results-swiper-box .swiper-button-next:hover {
    background-color: unset;
}

.vets-results-swiper-pagination {
    position: relative;
    width: fit-content !important;
    left: unset !important;
    top: unset !important;
    bottom: var(--swiper-pagination-bottom, 3px) !important;
}

.vets-results-swiper-button-prev {
    margin-right: -5px;
}

.vets-results .swiper-button-prev::after, .vets-results .swiper-button-next::after{
    font-weight: bold;
    color: #222725;
}

.vets-results-swiper .swiper-pagination-bullet-active {
    background: #233868;
    width: 12px;
    height: 12px;
    margin-bottom: -2px !important;
}

.vets-results-swiper-slide {
    padding: 40px 20px;
    height: auto;
}

.vets-results-swiper-slide-box {
    box-shadow: 0px 4px 20px 0px #28262629, 0px 2px 20px 0px #2826263D;
    padding: 35px 31px 25px;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
}

.vets-results-swiper-slide-box span {
    word-break: break-word;
}

.vets-results-swiper-slide h3 {
    font-size: 20px;
    margin-bottom: 0;
}

.vets-results-swiper-slide p {
    line-height: 30px;
    font-size: 15px;
    margin-bottom: 0;
    flex-grow: 1;
}

.vets-results-swiper-slide-box hr {
    margin: 0;
}

.vets-results-swiper-slide-footer {
    display: flex;
    justify-content: space-between;
}

.vets-results-swiper-slide-footer .openModal_btn:hover {
    cursor: pointer;
}

.vets-results-small-text {
    width: 90%;
    margin: 2rem auto 1rem;
    font-style: italic;
    font-size: .875rem;
}

.vets-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    gap: 4rem;
    width: 80%;
    margin: 0 auto;
}

.vets-footer-image {
    width: 235px;
    height: 235px;
    object-fit: cover;
    border-radius: 100%;
}

.vets-footer hr {
    color: #b9b8b8;
    width: 18rem;
}

.vets-footer-phone {
    color: #3A5DAE;
    font-weight: bold;
    display: flex;
    align-items: center;
    font-size: 20px;
    gap: 1rem;
    text-decoration: none;
    width: fit-content;
    cursor: pointer;
}

.vets .close-modal {
    width: fit-content;
    display: block;
    margin-left: auto;
}

.refer {
    background: linear-gradient(180.02deg, #EBEFF7 19.16%, rgba(255, 255, 255, 0) 76.78%);
}

.refer-form, .refer-terms {
    max-width: 1200px;
    margin: auto;
}

.refer-form form {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 2.5rem;
}

.refer-form form .checkbox-box {
    grid-area: 3 / 1 / 4 / 3;
    margin-top: 1.125rem;
    margin-bottom: 2.5rem;
}

.refer-form form button {
    grid-area: 4 / 1 / 5 / 3;
    margin: 0 auto;
}

.refer-info {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.refer-info h3 {
    font-size: 1.125rem;
}

.refer-info p {
    font-size: 1.25rem;
}

.refer-terms h2 {
    text-align: center;
}

.refer-terms p {
    margin-bottom: 0;
}

.refer-terms ul {
    margin-top: 1.5rem;
}

.refer-help img {
    width: 203px;
    border-radius: 100%;
}

.products-comparison-table {
    text-align: center;
}

thead .products-comparison-right {
    width: 50%;
    background-color: #3A5DAE;
}

thead .products-comparison-right img {
    max-width: 150px;
}

thead .products-comparison-item {
    display: flex;
    align-items: center;
    justify-content: center;
}

thead .products-comparison-left .products-comparison-item {
    line-height: calc(52px - 1rem);
}

tbody .products-comparison-right {
    background-color: #EBEFF7;
}

tbody .products-comparison-item {
    display: flex;
    gap: 20px;
    padding: 0 10px;
}

tbody .products-comparison-item > div {
    text-align: center;
    width: calc(100% - 42px);
}

.products-comparison-button {
    display: block;
    width: fit-content;
    margin: 3rem auto 0;
} 

.client-section {
    min-height:  calc(100vh - 96px);
    position: relative;
    overflow: hidden;
}

.client-section p{
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}

.client-section b{
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: initial !important;
}

.client-section h1 {
    font-family: MontB, sans-serif;
    font-size: 32px;
    font-weight: 800;
    line-height: 34px;
}

.client-section h2 {
    font-family: Mulish, sans-serif;
    font-size: 26px;
    font-weight: 800;
    line-height: 30px;
}

.client-section h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 24px !important;
}

.client-section h4 {
    font-family: Mulish, sans-serif;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 22px !important;

}

.client-section-header .btn,
.client-section .btn {
    width: fit-content;
    height: fit-content;
    padding: 12px 26px;
    gap: 10px;
    border-radius: 28px;
    font-family: Mulish, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    text-align: center;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.client-section-header .btn-primary,
.client-section .btn-primary {
    background-color: #3A5DAE;
    color: #FFFFFF;
    border: none;
}

.client-section-header .btn-primary:hover,
.client-section .btn-primary:hover {
    background-color: #2C5697;
    color: #FFFFFF;
}

.client-section-header .btn-secondary,
.client-section .btn-secondary {
    background-color: #FFFFFF;
    color: #3A5DAE;
    border: 2px solid #3A5DAE;
}

.client-section-header .btn-secondary:hover,
.client-section .btn-secondary:hover {
    background-color: #E3E3E3;
    color: #2C5697;
    border-color: #2C5697;
}

.client-section-header .btn-tertiary,
.client-section .btn-tertiary {
    background-color: #896CCC;
    color: #FFFFFF;
    border: none;
}

.client-section-header .btn-tertiary:hover,
.client-section .btn-tertiary:hover {
    background-color: #7059A8;
    color: #FFFFFF;
}

.client-section .btn-standard-link {
    background-color: transparent;
    color: #3A5DAE;
    text-decoration: underline;
    border: none;
    padding: 0 5px;
}

.client-section .btn-standard-link:hover {
    color: #2C5697;
    text-decoration: underline;
}

.client-section-content-block {
    background: #FFFFFF;
    border: 1px solid #E3E3E3;
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 2px 16px 0 #28262624;
    max-width: 1158px;
}

.client-section-content-block h2 {
    margin-bottom: 32px;
}

.client-section-content-block .divider {
    width: 100%;
    height: 1px;
    background-color: #E3E3E3;
    margin-bottom: 40px;
}

.client-section-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #E4F6DE;
    color: #D3F0C8
}

.client-section-background-image {
    position: absolute;
    width: 1194px;
    height: 1176px;
    background-image: url('../images/union.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
    aspect-ratio: 1 / 1;
}

.client-section .container {
    z-index: 100;
    position: relative;
    padding: 32px 23px 85px 23px;
    max-width: 100%;
}

.client-section .container > span {
    font-family: Mulish, sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    margin-top: -32px;
}

.client-section .poledit_sector{
    width: 100%;
}

.claim-input, .claim-input input, .select2-search__field{
    background-color: #FFFFFF;
    border: 1px solid #3A5DAE !important;
    border-radius: 8px !important;
    height: 56px;
    width: 100%;
    padding-left: 16px;
}

.select_wrapper .select-arrow{
    height: 24px;
    width: 24px;
    top: auto !important;
    bottom: 16px !important;
    right: 12px;
}

.select_wrapper .select-arrow-auto {
    height: auto;
    width: auto;
    top: 33px !important;
    right: 16px;
}

.client-section .modal_content-wrapper {
    max-height: calc(100% - 240px);
}

.client-section select {
    -moz-appearance: none;
    -webkit-appearance: none;
}

.client-section-claim-form select::-ms-expand {
    display: none;
}

.client-section-claim-form .select2 {
    margin: 0 !important;
    border: none;
}

.client-section-claim-form {
    display: flex;
    gap: 16px;
    flex-direction: column;
    margin-top: 24px;
    max-width: 920px;
}

.client-section-claim-form label {
    font-family: Mulish, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    text-align: left;
    align-content: center;
    margin-bottom: 8px;
    width: 100%;
}

.client-section-claim-form h2 {
    font-family: Mulish, sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
}

.client-section-claim-form .form-section {
    display: flex;
    flex-direction: row;
    gap: 36px;
    align-items: flex-end;
}

.client-section-claim-form .client-section-content-block form{
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.client-section-buttons {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
}

.client-section-buttons .btn{
    font-family: Mulish, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    padding: 16px 32px;
}

.toggle-group {
    display: flex;
    width: 304px; /* nebo 100% */
    height: 58px;
    border-radius: 8px;
    overflow: hidden;
    background: white;
    margin-bottom: 8px;
    position: relative;
    box-sizing: border-box;
}

.toggle-group input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 50%;
    height: 58px;
    border: 1px solid #2E58A6;
    background: #fff;
    cursor: pointer;
    font-size: 16px;
    border-radius: 0;
    color: #2E58A6;
    transition: background 0.15s, color 0.15s, border 0.15s;
    box-sizing: border-box;
    margin: 0;
    position: relative;
    z-index: 1;
    display: inline-block;
}

.toggle-group input[type="radio"]:first-of-type {
    border-radius: 8px 0 0 8px;
}

.toggle-group input[type="radio"]:last-of-type {
    border-radius: 0 8px 8px 0;
}

.toggle-group input[type="radio"]:checked {
    background: #2E58A6;
    color: #fff;
    border: 2px solid #2E58A6;
    font-weight: bold;
}

/* LABEL bude uvnitř "tlačítka" */
.toggle-group label.toggle-label {
    position: absolute;
    top: 0;
    height: 58px;
    width: 50%;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    font-size: 16px;
    color: inherit;
    z-index: 2;
    background: transparent;
}

.toggle-group label.toggle-label:last-of-type {
    left: 50%;
}

.client-section-login-form, .pmt-form.w-form.form-block {
    width: 640px;
    height: 520px;
    padding: 32px;
    border-radius: 12px;
    background-color: #9CD488;
    gap: 32px;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    min-width: 327px;
    box-shadow:
            0 4px 40px 0 rgba(40, 38, 38, 0.16),
            0 2px 24px 0 rgba(40, 38, 38, 0.24);

}

.pmt-form.w-form.form-block {
    height: auto !important;
}


.client-section-login-form .btn {
    padding: 16px 32px;
    line-height: 24px;
    font-size: 18px;
}

.client-section-login-form-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height:  calc(100vh - 96px);
    margin: auto;
}

.client-section-login-form-heading {
    width: 100%;
    height: 29px;
    font-family: 'Mont', sans-serif;
    font-size: 26px;
    font-weight: 800;
    line-height: 29px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #FFFFFF;
}

.client-section-form {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 32px;
    height: 100%;
}

.client-section-login-form {
    height: auto !important;
}

.login_error_modal {
    h2 {
        margin-bottom: 0;
    }
    
    p {
        padding-left: 1rem;
        font-size: 16px;
    }

    .modal-header {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        position: relative;

        .close-modal {
            position: absolute;
            top: 0;
            right: 0;
        }
    }
}

.client-section-login-form-pin {
    gap: 20px !important;
}

.client-section-login-form-text{
    color: white;
    font-size: 1rem !important;
}

.client-section-form label, .form label {
    width: 100%;
    height: 24px;
    gap: 0;
    font-family: 'Mulish', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #FFFFFF;
}

.client-section-form div:last-child {
    align-content: end;
    flex-grow: 1;
}

.client-section-login-form .input-wrapper {
    margin-bottom: 0;
}

.client-pagination {
    display: flex;
    justify-content: space-between;
    width: 90%;
    align-items: center;
    margin: 1.5rem auto 0;
    font-size: 18px;
    color: #3A5DAE;

    span.active {
        font-weight: 700;
        font-size: 16px;
    }

    span:not(.dots):not(.active):hover {
        cursor: pointer;
        text-decoration: underline;
    }

    .client-pagination-nums {
        letter-spacing: 1px;
        display: flex;
        flex-direction: row;
        align-items: baseline;
        gap: 5px;
    }

    .client-pagination-btn {
        display: flex;
        align-items: center;
        gap: 9px;

        img {
            width: 25px;
            height: 25px;
        }

        img:hover {
            cursor: pointer;
        }

        span {
            font-weight: bold;
        }
    }

    .client-pagination-btn-disabled {
        filter: grayscale(1);

        img:hover, span:hover {
            text-decoration: none !important;
            cursor: default !important;
        }
    }
}

.client-policies-overview {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 16px;
    justify-content: flex-start;
    flex-direction: column;
}

.policy-card {
    background: #FFFFFF;
    border: 1px solid #E3E3E3;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    width: 343px; /* Fixní šířka jedné karty */
    box-sizing: border-box;
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    align-items: center;
    gap: 1.5rem;
}
.policy-card.policy-multiple {
    height: auto;
}

.client-policies-overview .policy-card .policy-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.client-policies-overview.policy-multiple {
    flex-wrap: wrap;
    justify-content: flex-start;
}

.client-policies-overview.policy-multiple .policy-card {
    flex-direction: row;
    max-width: 780px;
    width: 90%;
}

.client-policies-overview.policy-multiple .swiper-container .policy-card {
    flex-direction: column;
    width: 278px;
    margin-right: 16px;
}

.client-policies-overview.policy-multiple .policy-card .policy-content {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-grow: 1;
    align-items: center;
    flex-wrap: wrap;
    row-gap: 1rem;
    column-gap: 3rem;
}

.policy-header {
    text-align: center;
}

.client-policies-overview.policy-multiple .policy-card .policy-content .policy-header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    text-align: left;
}

.client-policies-overview.policy-multiple .slick-slide .policy-card .policy-content .policy-header {
    margin-left: 0;
    width: fit-content;
}

.client-policies-overview.policy-multiple .policy-card .policy-content .policy-details {
    display: none;
}

.client-policies-overview.policy-multiple .policy-card .policy-content .policy-incomplete {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: .5rem;
    flex-grow: 1;
    margin-bottom: 0;
}

.policy-incomplete {
    font-size: 14px;
    margin-bottom: 1rem;
}

.client-policies-overview.policy-multiple .policy-card .policy-header span {
    display: block;
}

.policy-header h2 {
    font-family: Mulish, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    text-align: center;
    margin: 0;
}

.policy-header span {
    font-family: Mulish, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    text-align: left;
    display: block;
    margin-top: 4px;
    color: #222725;
}

.policy-details {
    margin-top: 4px;
    width: 332px;
}

.policy-number {
    font-weight: 400;
    text-align: left;
    color: #222725;
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 1rem;
}

.client-policies-overview.policy-multiple .policy-card .policy-content .policy-number {
    margin-bottom: 0;
    flex-grow: 1;
}

img.policy-image {
    height: 104px;
    width: auto;
}

.policy-image, .policy-image img {
    height: auto;
    width: 100px;
    margin-bottom: 16px;
    object-fit: contain;
}

.policy-image-wrapper {
    position: relative;
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.policy-image-wrapper .policy-image {
    border-radius: 0 0 50px 50px;
    overflow: hidden;
}

.policy-image-wrapper .policy-image-dog img{
    top: 16px;
}

.policy-image-wrapper .policy-image-cat img {
    top: 28px;
    left: -6px;
}

.policy-image-wrapper .policy-image img {
    width: auto;
    height: 72px;
    position: relative;
    z-index: 2;
    object-fit: contain;
}

.policy-image-wrapper .policy-image-background {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #EBEFF7;
}

.client-policies-overview .swiper-container.slick-slider .slick-list {
    width: 100vh;
    left: -25px;
    margin-left: 16px;
}

.client-policies-overview .swiper-container.slick-slider .slick-arrow {
    background-color: #EBEFF7;
    width: 36px;
    height: 36px;
    border-radius: 50px;
    z-index: 1000;
}

.client-policies-overview .swiper-container.slick-slider .slick-arrow.slick-disabled {
    display: none !important;
}

.client-policies-overview .swiper-container.slick-slider .slick-arrow::before {
    content: none;
}

.client-policies-overview .swiper-container.slick-slider .slick-prev {
    background-image: url('../images/icons/angle-left-blue.svg');
    background-size: 18px; /* Velikost šipky */
    background-repeat: no-repeat;
    background-position: center;
    left: 25px;
}

.client-policies-overview .swiper-container.slick-slider .slick-next {
    background-image: url('../images/icons/angle-right-blue.svg');
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: center;
    right: 25px;
}

.client-policies-overview .slick-initialized .slick-slide {
    display: block;
    width: 278px !important;
    margin-right: 16px;
}

.client-policies-overview .modal .select-arrow {
    top: 42px;
}

.client-policies-overview .modal .toggle-group {
    width: 100%;
}

.client-policies-overview .modal label {
    font-family: Mulish, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    margin-bottom: 8px;
}

.client-payments {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.client-box {
    background: #FFFFFF;
    border: 1px solid #E3E3E3;
    border-radius: 16px;
    padding: 29px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    gap: 1.5rem;
    width: 90%;    
}

.client-box, .modal {
    a {
        color: #3A5DAE;
        font-weight: bold;
    }
}

.client-payments-box {

    hr {
        margin-top: -.5rem;
    }
}

.client-payments-account-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}

.client-payments-account-link {
    position: absolute;
    right: 29px;
    font-size: smaller;
}

.client-payments-billing-grid {
    display: flex;
    gap: 9rem;
}

.client-payments-payer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}

.client-payments-method-grid {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.client-payments-account-grid, .client-payments-billing-grid, .client-payments-payer-grid {
    p {
        font-size: 16px;
    }   
}

.client-payments-input_radio {
    width: 45%;
    padding: 12px 16px;
    display: flex;
    flex-direction: row;
    gap: .5rem;
    position: relative;

    *:hover {
        cursor: pointer;
    }

    label {
        flex-grow: 1;
        z-index: 1;
    }

    img {
        position: absolute;
        right: 16px;
        z-index: 0;
    }
}

.client-payments-input_radio-checked {
    outline: 1px solid #3A5DAE !important;
    border-radius: 12px;
}

.client-table {
    thead {
        background-color: #EBEFF7;
    }

    tr {
        th {
            width: calc(100% / 4);
        }

        th, td {
            padding: 5px 10px;
        }
        
        th:first-child, td:first-child {
            border-radius: 4px 0 0 4px;
        }

        th:last-child, td:last-child {
            border-radius: 0 4px 4px 0;
        }
    }

    tbody tr:nth-child(even) {
        background-color: #F7F7F7;
    }

    tbody tr:nth-child(odd) {
        background-color: white;
    }
}

.client-pets-detail-history-link {
    text-align: right;
    font-size: smaller;
}

.client-payments-modal {
    max-width: 45rem;
}


.client-payments-account-modal-edit {
    h3 {
        margin-bottom: 2rem;
    }

    > p {
        margin-bottom: 2rem;
    }

    form {
        display: flex;
        flex-direction: column;
        gap: 2rem;

        p {
            font-size: 20px;
        }

        .client-payments-form-buttons {
            display: flex;
            justify-content: flex-end;
            gap: 1rem;
        }

    }
}

.client-payments-new_method-modal {
    p {
        margin-top: 2rem;
    }

    .client-payments-new_method-form {
        .client-payments-input_radio {
            width: 100%;
            outline: 1px solid #535151;
            border-radius: 12px;
    
            input {
                display: none;
            }
        }
    
        .client-payments-form-buttons {
            margin-top: 1rem;
            display: flex;
            justify-content: flex-end;
            gap: 1rem;
        }
    }
}

#newMethodModal_confirm, #newMethodModal_info {
    .client-payments-form-buttons {
        margin-top: 2rem;
        display: flex;
        justify-content: flex-end;
        gap: 1rem;
    }
}

.client-payments-csob-modal {
    max-height: 100%;
    overflow: auto;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.client-payments-csob-modal .client-payments-csob-modal-text p {
    font-size: 1rem;
    margin-bottom: 1rem;
}

.client-payments-csob-modal .client-payments-csob-modal-text {
    min-height: 0;
    flex-grow: 1;
    overflow: auto;
    padding: 1rem 1rem;
    background-color: #f3f3f3;
    border-radius: .5rem;
}

.client-payments-csob-modal h3, .client-payments-csob-modal .client-payments-form-buttons {
    flex-shrink: 0;
}

.client-payments-csob-modal .client-payments-form-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
}

.client-pets {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;

    .client-box {
        flex-direction: row;
        justify-content: flex-start;
        gap: 1.5rem;
    }

    .client-pets-pet {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 13%;
        width: 100%;
        flex-wrap: wrap;

        .client-pets-pet-name {
            display: flex;
            flex-direction: column;

            b {
                font-size: 20px;
            }
        }

        .client-pets-pet-policy {
            display: flex;
            flex-grow: 1;
            gap: 1rem;
            align-items: baseline;
        }
    }

    .policy-image-wrapper .policy-image-cat img {
        left: 0;
    }
}

.client-pets-fixed {
    z-index: 100;
    position: fixed;
    bottom: 1rem;
    width: calc(100% - 40px);

    .btn {
        width: 100%;
        font-size: 13px !important;
    }
}

.client-pets-detail {
    .client-pets-detail-box {
        flex-direction: column;        
    }

    p {
        font-size: 16px;
    }

    .client-pets-detail-policy-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);

        p:nth-child(7) {
            grid-column: span 3 / span 3;
        }

        a {
            line-height: 27px;
        }
    }

    .client-pets-detail-policy-grid-full {
        p {
            grid-column: auto !important;
        }
    }

    .client-pets-detail-right-buttons {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        column-gap: 1rem;
        row-gap: 1rem;
        flex-wrap: wrap;
    }

    .client-pets-detail-info {
        padding: 13px 18px;
        background-color: #EBEFF7;
        border-radius: 8px;
        display: flex;
        align-items: center;
        gap: .5rem;
        margin-bottom: 10px;

        img {
            width: 20px;
            height: 20px;
            margin-right: .5rem;
        }

        p {
            margin-bottom: 0;
        }

        span {
            color: #3A5DAE;
        }
    }

    .client-pets-detail-pet-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }

    .client-pets-detail-profile-update {
        position: absolute;
        right: 29px;
        font-size: smaller;
    }
}

.client-pets-modal {
    max-width: 45rem;

    h3 {
        margin-bottom: 2rem;
    }

    .client-pets-detail-form {
        display: flex;
        flex-direction: column;
        gap: 2rem;

        .client-pets-detail-form-vets {
            display: flex;
            flex-direction: column;
            gap: .5rem;
        }

        a {
            width: fit-content;
            font-size: 18px;
        }

        a:not(.remove) {
            margin-top: -1rem;
        }

        a.remove {
            display: block;
            margin-left: auto;
        }

        .css-toggle {
            label:nth-child(2) {
                border-radius: 8px 0 0 8px;
            }

            label:nth-child(4) {
                border-radius: 0 8px 8px 0;
            }
        }

        .client-pets-detail-form-buttons {
            display: flex;
            justify-content: flex-end;
            gap: 1rem;
        }

        .select_wrapper .select-arrow{
            height: auto;
            width: auto;
            top: 33px !important;
            right: 16px;
        }
    }
}

.form-input {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;

    label {
        font-weight: bold;
        font-size: 20px;
    }

    input, select {
        width: 100%;
        padding: 12px 17px;
        border-radius: 8px;
        border: 1px solid #3A5DAE;
    }

    input:focus-visible, select:focus-visible {
        border: 1px solid black;
        outline: none;
    }
}
 
.form-input-disabled {
    --disabled-color: #535151;
    
    label, p {
        color: var(--disabled-color);
    }

    input, textarea {
        border: 1px solid var(--disabled-color);
    }

    .select2-selection {
        border: 1px solid var(--disabled-color) !important;
        background-color: rgba(239, 239, 239, 0.3) !important;
    }

    .css-toggle input + label {
        border: 1px solid var(--disabled-color);
        cursor: not-allowed;
    }

    .css-toggle input:checked + label.css-toggle-default {
        background-color: #eee;
        color: black;
    }
}

.form-input-span {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0;

    .form-input-span-text {
        display: flex;
        width: 73px;
        align-items: center;
        background-color: #2C5697;
        justify-content: center;
        border: none;
    }

    input:first-child, .form-input-span-text:first-child {
        border-radius: 8px 0 0 8px;
    }

    input:last-child, .form-input-span-text:last-child {
        border-radius: 0 8px 8px 0;
    }
}

.client-trans {
    margin-top: 1rem;
}

.form label {
    color: black;
    margin-top: 20px;
}

.signup-input, textarea {
    width: 100%;
    box-sizing: border-box;
    height: 56px;
    padding: 8px 16px;
    border: 1px solid #3A5DAE;
    border-radius: 8px;
    gap: 0;
}

textarea {
    min-height: 150px;
}

.signup-input::placeholder {
    width: 100%;
    height: 22px;
    padding: 0;
    margin: 0;
}

input[type=checkbox].signup-input {
    width: 20px;
    height: 20px;
    border-radius: 8px;
    margin-left: 12px
}

.input-wrapper, .client-section-login-form-container .form_row {
    width: 100%;
    height: auto;
    min-height: 54px;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

/* client-page –> for parts of client section out of client section div (e.g. modals) */
.client-section .wrong-input, .client-page .wrong-input {   
    border-color: red !important;
    color: red !important;
}

.input-wrapper {
    margin-bottom: 2rem;
}

.client-section-form .spacer {
    min-height: 54px;
}

.client-section-login-form-button:hover {
    background-color: #7059A8;
    color: #FFFFFF;
    opacity: 0.9;
}

section {
    padding: 50px 100px;
}

article {
    max-width: 1000px;
    margin: auto;
    text-align: center;
}

article p {
    font-size: 20px;
}

.round-shadow {
    border-radius: 16px;
    box-shadow: 0 4px 40px 0 #28262614;
    overflow: hidden;
}

.round-number {
    font-size: 24px;
    font-weight: 700;
    border: 3px solid #3A5DAE;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    line-height: 34px;
    text-align: center;
    flex-shrink: 0;
}

header.page-header {
    box-shadow: 0 4px 40px 0 #2826261A;
    position: sticky;
    top: 0;
    z-index: 999;
}

header .top-header {
    height: 44px;
    width: 100%;
    background-color: #222725;
    padding: 10px 62px;
}

header .bottom-header {
    padding: 18px 62px;
    height: 70px;
    width: 100%;
    background-color: #FFFFFF;
}

header .top-header .dropdown .dropdown-toggle {
    color: white;
    text-decoration: none;
    font-size: 14px;
    line-height: 20px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    cursor: pointer;
}

header .top-header .dropdown .dropdown-toggle svg {
    height: 14px;
}

header .top-header .dropdown .dropdown-toggle.show svg {
    transform: rotate(180deg);
}

.nav-item .nav-link {
    color: #696767;
    font-size: 16px;
}

.nav-item .dropdown-toggle svg {
    height: 18px;
    color: #3A5DAE;
}

.nav-item .dropdown-toggle.show svg {
    transform: rotate(180deg);
}

.navbar {
    width: 100%;
}

.navbar-header {
    display: flex;
    align-items: center;
}

.navbar-header-csob {
    width: 100%;
}

.navbar-brand {
    flex-grow: 1;
}

.navbar-right {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 2.5rem;
    align-items: center;
}

.navbar-phone {
    font-weight: bold;
    text-decoration: none;
    color: #222725;
    display: flex;
    width: fit-content;
    gap: .5rem;
    flex-wrap: nowrap;
    align-items: center;
}

.navbar-phone.navbar-phone-top {
    color: #A6E191;
    font-weight: normal;
    padding-right: .5rem;
    border-right: 1px solid #535151;
}

.mobile-navbar {
    display: none;
}

header .top-header .dropdown .dropdown-menu {
    background-color: #222725;
    border: 0;
    padding: 15px 20px 25px;
    margin-top: 10px !important;
    border-radius: 0 0 16px 16px;
}

header .top-header .dropdown .dropdown-menu .dropdown-item {
    color: white;
}

header .top-header .dropdown .dropdown-menu .dropdown-item:hover {
    background-color: white;
    color: black;
}

header .top-header .dropdown .dropdown-menu .dropdown-item.active {
    color: #222725;
    background-color: white;
}

header .top-header .select {
    width: 250px;
}

header .bottom-header .navbar-toggler {
    border: 0;
    padding: 10px;
    margin-right: 10px;
    margin-top: -5px;
    margin-left: -10px;
}

header .bottom-header .navbar-toggler:focus {
    box-shadow: none;
}

.dropdown-toggle::after {
    display: none;
}

.blog-item {
    text-decoration: none;
    color: black;
}

.blog-item-desc {
    padding: 20px;
}

.blog-item-img-container {
    max-height: 200px;
    overflow: hidden;
}

.blog-item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-latest, .blog-parenting {
    overflow: hidden;
}

.blog-swiper {
    overflow: unset !important;
    margin-top: 30px;
}

.blog-swiper .swiper-wrapper {
    display: flex;
    gap: 15px;
}

.link-span {
    color: #3A5DAE;
    font-size: 12px;
    text-decoration: underline;
    font-weight: bold;
}

.client-section .link-span {
    margin-bottom: 2rem;
    display: flex;
    align-items: center;
    font-size: 20px;
    text-decoration: none;
    width: fit-content;
}

.client-section .link-span::before {
    content: url(../images/icons/angle-left-blue.svg);
    height: 26px;
    width: 26px;
    margin-right: 4px;
}

.card-container {
    display: flex;
    flex-direction: column;
    gap: 0rem;
    width: 90%;
}

.card-container .card-item {

}

.claim-incident-list {
    display: flex;
    flex-direction: row;
    gap: 30px;
    flex-wrap: wrap;
    max-width: 1158px;
    justify-content: space-between;
}

.claim-incident {
    flex: 1 1 320px;
    max-width: calc(100% / 2 - 15px);
    box-sizing: border-box;
    padding: 25px 32px 15px 32px;
    background: #fff;
    border: 1px solid #ddd;
    min-width: 366px;

}

.claim-incident-placeholder {
    flex: 1 1 320px;
    max-width: 320px;
    visibility: hidden; /* Nezobrazuje se, ale zaplní místo */
}

.claim-card {
    display: flex;
    flex-direction: column;
    background: white;
    border-radius: 10px;
    padding: 16px 16px 26px 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    align-items: flex-start;
    width: 100%;
    margin: 0 auto 0 0;
    z-index: 100;
}

.claim-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
}

.claim-left {
    display: flex;
    align-items: flex-start;
    gap: 24px;
    flex-direction: row;
    width: 100%;
    padding-right: 32px;
}

.claim-card .policy-image-wrapper {
    height: 100px;
    width: 100px;
}

.claim-card .policy-image img {
    height:100px;
}

.claim-info {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

.claim-info h3 {
    font-weight: 800;
    line-height: 20px;
    font-size: 16px;
    margin-bottom: 16px;
}

.claim-info b {
    font-size: 12px;
    font-weight: 700;
    line-height: 18px;
    font-family: Mulish, sans-serif;
    text-align: end;
    width: 50%;
}

.claim-info p {
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    margin: 0;
    display: flex;
    gap: 8px;
    font-family: Mulish, sans-serif;
    text-align: start;
}

.claim-bottom {
    width:100% !important;
    margin-top:-10px;
    background-color: #e9e9e9;
    padding: 12px;
    border-radius: 0 0 10px 10px;
    padding-top: 22px;
    text-align: right;
}

.claim-right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
}

.claim-download a {
    text-decoration: none;
    padding: 12px 20px !important;
    font-size: 10px !important;
    line-height: 16px !important;
    font-weight: 700 !important;

}
.claim-details {
    white-space: nowrap;
}

.claim-details a {
    color: #3A5DAE;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 15.06px !important;
    text-align: left;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-underline-position: from-font !important;
    text-decoration-skip-ink: none !important;
}

/*.client-claims {*/
/*    gap: 24px;*/
/*    display: flex;*/
/*    flex-direction: column;*/
/*}*/

.client-claim-detail {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.client-claims {
    display: flex;
    flex-direction: row;
    gap: 30px;
    flex-wrap: wrap;
    max-width: 1158px;
    justify-content: space-between;
}

.card-container {
    flex: 1 1 320px;
    max-width: calc(100% / 2 - 15px);
    box-sizing: border-box;
    /*padding: 25px 32px 15px 32px;*/
    /*background: #fff;*/
    /*border: 1px solid #ddd;*/
    min-width: 366px;
}

.card-container-placeholder {
    flex: 1 1 320px;
    max-width: 320px;
    visibility: hidden; /* Nezobrazuje se, ale zaplní místo */
}

.claim-header {
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 20px;
    height: 120px;
    padding-left: 23px;
}
.policy-info {
    display: flex;
    align-items: center;
    flex-direction: row;
    margin-left: -85px;
    padding-left: 85px;}

.policy-info p {
    margin: 4px 0;
    font-size: 14px;
}

.claim-comments .comments-list {
    max-height: 200px;
    overflow-y: auto;
    margin-bottom: 20px;
}

.comment-input {
    width: 100%;
    height: 50px;
    padding: 8px;
    border: 1px solid #E3E3E3;
    border-radius: 8px;
}

.comment-author-send {
    margin-top: 10px;
    padding: 10px 20px;
    font-size: 14px;
    cursor: pointer;
}

.claim-status {
    display: flex;
    align-items: center;
    border-radius: 6px;
    margin-bottom: 32px;
}

.claim-status p {
    margin: 0;
    padding: 0;
}

.claim-status-label {
    padding: 8px 12px;
    gap: 8px;
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-right: 16px;
    text-wrap: nowrap;
    background: #E0F4FF;
}

.claim-status-label-dot {
    width: 16px;
    height: 16px;
    border-radius: 16px;
    background: #3498DB;
}
.claim-status-label b{
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
}

.claim-status-label.red {
    background: #FAECEC;
}

.claim-status-label.red .claim-status-label-dot {
    background: #B00020;
}

.claim-status-label.orange {
    background: #FFF9EE;
}

.claim-status-label.orange .claim-status-label-dot {
    background: #FFC658;
}

.claim-status-label.blue {
    background: #EEE7FF;
}

.claim-status-label.blue .claim-status-label-dot {
    background: #AB87FF;
}

.customer-service-info {
    display: flex;
    align-items: center;
    background: #EBEFF7;
    padding: 10px;
    border-radius: 8px;
    margin-bottom: 32px;
}

.customer-service-info p {
    margin: 0;
    padding: 0;
}

.info-icon {
    font-size: 16px;
    margin-right: 8px;
}

.check-icon {
    background-image: url('../images/icons/checkmark-blue2.svg');
    width: 15px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin-top: -3px;
}

.cross-icon {
    background-image: url('../images/icons/cross-red.svg');
    width: 15px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin-top: -3px;
}

.incident-details {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
}

.detail-row {
    display: flex;
    flex-direction: row;
}

.detail-item {
    width: 33%;
}

.uploaded-files {
    margin-bottom: 20px;
}

.uploaded-files .file-item {
    display: flex;
    justify-content: flex-start;
    padding: 8px;
    margin-top: 5px;
    gap: 16px;
}

.records-button {
    display: flex;
    justify-content:center;
    width: 100%;
    margin-top: 1rem;
}

.upload-button {
    display: flex;
    justify-content: flex-end;
    width: 100%;
}

.delete-icon {
    cursor: pointer;
    color: red;
    font-size: 16px;
}

.file-upload-box {
    background: #EBEFF7 !important;
    padding: 33px !important;
    text-align: center;
    border-radius: 8px;
    margin-bottom: 15px !important;
    border: none !important;
}

.file-upload-box p {
    font-size: 1rem;
}

.file-list {
    margin-bottom: 15px;
}

.file-list .file-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px;
    border-radius: 4px;
    margin-top: 5px;
}

.dz-default.dz-message {
    display: none !important;
}

.dz-button.btn.btn-secondary {
    background-color: transparent;
}

.file-name {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.file-link {
    display: flex;
    gap: 10px;
    background: none;
    border: none;
    font-weight: bold;
    color: #3A5DAE;;

}

.file-link:hover {
    color: black;
}

.file-size,
.delete-icon {
    margin-left: 10px;
    flex-shrink: 0;
}

.delete-icon {
    text-decoration: none;
    cursor: pointer;
}

.blog-item-desc .blog-category {
    font-size: 10px;
    font-weight: 400;
    text-transform: uppercase;
    color: #7E7D7D;
}

.blog-item-desc b {
    font-size: 16px;
}

.blog-item-desc .blog-text {
    font-size: 12px;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 48px;
    line-height: 16px;
    margin-top: 10px;
}

.blog-latest .swiper-slide {
    width: 300px;
}

.blog-parenting .swiper-slide {
    width: 200px;
}

.blog-swiper {
    .swiper-pagination-numbers {
        width: fit-content;        
        display: flex;
        align-items: center;
        margin: 0 1rem;
    }

    .swiper-pagination-bullet {
        /* width: auto;
        height: auto;
        border: none;
        background: none;
        opacity: 1;
        color: #3A5DAE; */
        background-color: #3A5DAE;
    }

    /* .swiper-pagination-bullet-active {
        font-weight: 700;
    } */

    .swiper-button-next, .swiper-button-prev {
        color: #3A5DAE;
        font-weight: 700;
    }
}

.swiper-counter {
    margin-top: 20px;
    text-align: center;
    display: flex;
    justify-content: center;
    user-select: none;
}

.swiper-counter a {
    text-decoration: none;
}

.swiper-page-number {
    margin: 0 5px;
    font-size: 14px;
    cursor: pointer;
}

.swiper-page-number.current {
    font-weight: bold;
}

.swiper-button-prev, .swiper-button-next {
    font-size: 20px;
    width: 30px !important;
    height: 30px !important;
    background-size: 20px 20px;
}

.swiper-button-prev::after, .swiper-button-next::after {
    font-size: 20px !important;
    width: 20px;
    height: 20px;
    background-size: 20px 20px;
}

.swiper-button-prev:hover, .swiper-button-next:hover {
    background-color: rgba(0, 0, 0, 0.2);
}

.swiper-button-next, .swiper-button-prev {
    position: unset !important;
    margin: 0 5px;
}

.blog-img-container {
    width: 100%;
    height: 400px;
    max-width: 1235px;
    border-radius: 16px;
    overflow: hidden;
    margin: 20px auto 50px;
    display: flex;
    box-shadow: 0px 4px 40px 0px #28262614;
}

.blog-img-container img {
    height: 100%;
    object-fit: cover;
}

.blog-img-container img:first-child {
    flex-grow: 1;
    width: auto;
    object-position: center;
    border-right: 3px solid black;
}

form.form {
    max-width: 1000px;
    margin: auto;
}

header .close-button {
    display: none;
    position: fixed;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
}

.client-section-header {
    background-color: #1a2a54;
    display: flex;
    align-items: center;
    height: 96px;
    width: 100%;
}


.client-section-header .close-button svg {
    width: 24px;
    height: 24px;
    stroke: white;
}

.client-section-header .navbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.client-section-header .hamburger {
    display: none;
}

.client-section-header .navbar-toggler {
    border: none;
}

.client-section-header .navbar-toggler:focus {
    box-shadow: none;
}

.client-section-header .navbar-brand {
    display: flex;
    align-items: center;
    width: 177px;
    height: 42px;
    margin-top: 4px;
    margin-left: 36px;
}

.client-section-header .navbar-actions {
    display: flex;
    align-items: center;
}

.client-section-header .navbar-actions .divider {
    width: 1px;
    height: 72px;
    top: 12px;
    border-right: #FFFFFF solid 1px;
}

.client-section-header .navbar-actions .account {
    width: 270px;
    justify-content: flex-start;

    .dropdown {
        width: 99%;
    }
}

.client-section-header .navbar-actions .language {
    width: 168px;
    justify-content: center;
}

.client-section-header .navbar-actions .nav-item {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 100;
    height: 95.91px;
    cursor: pointer;
    text-align: left;
    position: relative;
}

.client-section-header .navbar-actions .nav-item:hover,
.client-section-header .navbar-actions .nav-item[aria-expanded="true"] {
    background-color: #2C5697;
}

.client-section-header .navbar-actions .nav-item .icon-left {
    width: 48px;
    height: 48px;
    margin-right: 8px;
    fill: white;
    margin-left: -14px;
}

.client-section-header .navbar-actions .nav-item .account-name {
    width: 109px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-right: 22px;
    flex-grow: 1;
}

.client-section-header .navbar-actions .nav-item .dropdown-toggle.show svg {
    transform: none;
}

.client-section-header .dropdown .dropdown-toggle {
    background: none;
    border: none;
    text-decoration: none;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    gap: 12px;
}

.client-section-header .language .dropdown .dropdown-toggle {
    gap: 12px;
    padding: 45px 0 45px 0;
    width: 164px
}

.client-section-header .language .dropdown .dropdown-toggle span {
    text-align: center;
    margin-left: auto;
}

.client-section-header .language .dropdown .dropdown-toggle svg {
    margin-right: auto;
}

.client-section-header .account .dropdown .dropdown-toggle {
    gap: 0;
    padding: 33px 16px 33px 16px
}

.client-section-header .dropdown .dropdown-toggle svg {
    color: #FFFFFF;
    width: 24px;
    height: 24px;
}

.client-section-header .dropdown .dropdown-menu {
    position: absolute;
    top: 107px;
    right: 0;
    padding: 8px 12px;
    border-radius: 0 0 8px 8px;
    background-color: #FFFFFF;
    display: none;
    flex-direction: column;
    opacity: 0;
    margin-top: -2px;
    margin-right: -2px;
    box-shadow: 0 2px 16px 0 #28262624;
    border: none;
    gap: 8px;
}

.client-section-header .dropdown .dropdown-menu .close-button {
    background-color: #1D2F57;
}

.client-section-header .language .dropdown .dropdown-menu {
    width: 168px;
    height: 125px;
}

.client-section-header .account .dropdown .dropdown-menu {
    width: 270px;
    cursor: default;
}

.client-section-header .dropdown .dropdown-menu .divider {
    width: 100%;
    height: 1px;
    background-color: #E3E3E3;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item.language {
    display: none;
    width: 100%;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item.language label {
    color: #222725;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    margin-bottom: 8px;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item.language select {
    border: 1px solid #3A5DAE;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    text-align: left;
    width: 100%;
}

.client-section-header .dropdown .dropdown-toggle[aria-expanded="true"] + .dropdown-menu {
    display: flex;
    opacity: 1;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item {
    padding: 16px 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    white-space: normal;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item:last-child {
    border-bottom: none;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item,
.client-section-header .dropdown .dropdown-menu .dropdown-item a {
    color: #3A5DAE;
    text-decoration: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    display: flex;
    justify-content: space-between;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item.headline {
    color: inherit;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item .btn {
    padding-left: 0;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item.active {
    background:none;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item:hover,
.client-section-header .dropdown .dropdown-menu .dropdown-item a:hover {
    background:none;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item a:hover {
    text-decoration: underline;
}

.client-section-header .dropdown .dropdown-menu .dropdown-item img {
    width: 24px;
    height: 24px;
    margin-left: auto;
}

.client-section-sidebar {
    width: 237px;
    background-color: #111C34;
    display: none;
    flex-direction: column;
    position: fixed;
    top:96px;
    height: calc(100vh - 96px);
    z-index: 1000;
}

.client-section-sidebar .open {
    transform: translateX(0);
}

.client-section-sidebar .close-button {
    background-color: #1D2F57;
}

.client-section-sidebar .nav-item {
    height: 72px;
    width: 100%;
    display: flex;
}

.client-section-sidebar .nav-item a {
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    display: flex;
    align-items: center;
    gap: 7px;
    position: relative;
    width: 100%;
    padding: 0 8px;
}

.client-section-sidebar .nav-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    flex-grow: 1;
}

.client-section-sidebar .nav-menu .nav-item a:hover {
    background-color: #2C5697;
}

.client-section-sidebar .nav-menu .nav-item a svg {
    fill: #fff;
    flex-shrink: 0;
}

.client-section-sidebar .nav-menu .nav-item a div {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    min-width: 132px;
    max-width: 100%;
}

.client-section-sidebar .nav-menu .nav-item a .notification-badge {
    margin-left: 10px;
}

.client-section-sidebar .nav-footer {
    margin-top: auto;
    font-size: 12px;
    color: #fff;
    text-align: center;
    padding-bottom: 16px;
    position: absolute;
    bottom: 0;
}

.client-section-sidebar .nav-footer .divider {
    border-top: #2C5697 1px solid;
    height: 1px;
    width: 189px;
}

.client-section-sidebar .nav-footer .nav-item {
    width: 237px;
    height: 72px;
}

.client-section-sidebar .nav-footer .nav-item a svg {
    padding: 7px;
}

.client-section-sidebar .nav-footer p {
    margin: 0;
}

.with-sidebar {
    width: 237px;
}



select.form-select {
    font-size: 14px;
    border: 0;
    padding-top: 12px;
    padding-bottom: 12px;
    background-size: 16px 16px;
}

.select label {
    color: white;
    padding-bottom: 8px;
    font-size: 20px;
    font-weight: 400;
    font-family: "Mulish", sans-serif;
}

.select_wrapper {
    position: relative;
    width: 100%;

    .w-input {
        display: block;
        width: 100%;
        height: 38px;
        padding: 8px 12px;
        margin-bottom: 10px;
        font-size: 14px;
        line-height: 1.428571429;
    }

    .input {
        width: 100%;
        height: 55px;
        max-width: 385px;
        margin-bottom: 15px;
        padding: 13px 20px;
        font-size: 18px;
        -webkit-appearance: none;
        -moz-appearance: none;
    }

    .input::-ms-expand
    {
        display: none;
    }

    .input-full {
        max-width: unset !important;
    }
}

.select-arrow {
    position: absolute;
    left: auto;
    top: 33px;
    right: 16px;
    bottom: 0%;
    z-index: 1052;
}

.phone-blue-link {
    color: #3A5DAE;
    text-decoration: none;
    font-size: 20px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 15px;
}

.bottom-header .container-fluid {
    padding: 0;
}

.transparency-item {
    display: flex;
    gap: 20px;
}

.transparency-item h3 {
    margin-top: 10px;
}

.transparency-item .round-number {
    border-color: #9DAED7;
}

.transparency-inner {
    margin-top: 50px;
}

footer.page-footer {
    background-color: #28396F;
    color: white;
    padding: 50px;
    display: flex;
    flex-direction: column;
    gap: 30px;
    position: relative;
}

footer.page-footer a {
    text-decoration: none;
    color: white;
}

footer.page-footer h5 {
    font-family: "Mulish", sans-serif;
    font-size: 20px;
    font-weight: 700;
}

.page-footer-line {
    max-width: 1200px;
    width: 100%;
    margin: auto;
}

.client-section-footer {
    position: relative;
    bottom: 32px;
    left: 32px;
    width: 245px;
    height: 20px;
    z-index: 3;
    margin-top: -20px;
}

.client-section-footer-higher {
    bottom: 80px;
}

.client-section-footer-text {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #333;
    text-align: left;
    margin: 0;
}

.social-links {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}

.term-links {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
}

.term-links a {
    text-decoration: underline !important;
    font-size: 12px;
    font-weight: 400;
}

.footer-copy {
    font-weight: 400;
    margin: 0;
    font-size: 10px;
}

.footer-comp {
    font-weight: 400;
    margin: 0;
    font-size: 12px;
}

form.signup-form {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.signup-label {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0;
}

form .divider {
    height: 1px;
    background-color: #E3E3E3;
}

.signup-space {
    background-color: #E4F6DE;
    min-height: 90px;
}

.signup-space.signup-space-csob {
    background-color: #e4f3fc !important;
}

.signup-space-secondary {
    background-color: #FFFFFF !important;
}

.signup-space-image {
    position: absolute;
    height: 404.7px;
    left: 10%;
    top: 56%;
    transform: translate(-50%, -40%);
    z-index: 0;
    display: none;
}

.signup-new-policy-header {
    font-family: Mulish, sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    margin-top: 24px;

}

.signup-new-policy-header strong {
    font-weight: 700!important;
}

.signup-new-policy-text {
    font-family: Mulish, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

.signup-space-secondary .signup-space-image{
    display: initial;!important;
}

.signup-step-panel {
    width: 100%;
    height: 70px;
    background-color: white;
    position: sticky;
    top: 124px;
    z-index: 10;
}

.signup-button-continue-panel {
    position: sticky;
    bottom: 0;
    background-color: white;
    padding: 2rem 0;
    margin-bottom: -40px;
    box-shadow: 0 -4px 10px 0 #00000026;
    border-top: 2px solid #3A5DAE;
    z-index: 1000;
}

.signup-button-continue-panel-pricing {
    width: 80%;
    max-width: 900px;
    margin: auto;
    display: flex;
}

.signup-button-continue-panel-pricing-left, .signup-button-continue-panel-pricing-right {
    width: 50%;
}

.signup-button-continue-panel-pricing-left {
    font-size: 20px;
}

.signup-button-continue-panel-pricing-right {
    text-align: right;
    font-size: 12px;
}

.signup-button-continue-panel-pricing-right b {
    font-size: 24px;
    font-family: "MontB", sans-serif;
}

.slider-container {
    position: relative;
    margin-top: 15px;
    margin-bottom: 15px;
}

.slider-container .values {
    display: none;
}

.signup-form-sliders label {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: .5rem;
}

.signup-form-sliders label img {
    margin-left: .5rem;
    width: 1.125rem;
    cursor: pointer;
}

.value-label {
    position: absolute;
    top: -35px;
    background: #2C5697;
    color: white;
    padding: 4px 8px;
    border-radius: 5px;
    font-size: 14px;
    transform: translateX(-50%);
    /* transition: left 0.1s ease-in-out; */
    white-space: nowrap;
    display: none;
}
/* Celá lišta slideru */
input[type="range"] {
    -webkit-appearance: none;
    width: 100%;
    height: 6px;
    background: linear-gradient(to right, #2C5697 0%, #2C5697 var(--progress), #ddd var(--progress), #ddd 100%);
    border-radius: 3px;
    outline: none;
    transition: background 0.15s ease-in-out;
}


input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    background: #3A5DAE;
    border-radius: 50%;
    cursor: pointer;
    border: 3.67px solid #2C5697;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
    margin-top: -9px
}

/* Pro Firefox */
input[type="range"]::-moz-range-thumb {
    width: 24px;
    height: 24px;
    background: #2C5697;
    border-radius: 50%;
    cursor: pointer;
    border: 3.67px solid #2C5697;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}

/* Progres v liště pro Chrome, Safari, Edge */
input[type="range"]::-webkit-slider-runnable-track {
    height: 6px;
    border-radius: 3px;
    background: linear-gradient(to right, #2C5697 0%, #2C5697 var(--progress), #ddd var(--progress), #ddd 100%);
}

/* Progres v liště pro Firefox */
input[type="range"]::-moz-range-progress {
    height: 6px;
    border-radius: 3px;
    background: #2C5697;
}

/* Update slider při změně hodnoty */
input[type="range"]:focus {
    outline: none;
}

.value-label::after {
    content: "";
    position: absolute;
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 7px solid #2C5697;
}

.price-window {
    background-color: #E6DBFF;
    border-radius: 16px;
    padding: 30px;
    margin-bottom: 40px;
}

.price-window-a {
    font-weight: bold;
    font-size: 18px;
    font-family: "MontB", sans-serif;
}

.price-window-b {
    font-size: 12px;
    font-weight: bold;
    font-family: "MontB", sans-serif;
}

.price-window-b .price-window-m-wrap {
    font-size: 36px;
}

.price-window-c {
    color: #888888;
    font-size: 16px;
    font-weight: bold;
}

.signup-step-panel-inner {
    max-width: 900px;
    height: 100%;
    margin: auto;
    display: flex;
}

.signup-button-panel {
    max-width: 900px;
    margin: 1rem auto auto;
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}

.signup-step-panel-inner-right {
    flex-grow: 1;
}

.signup-step-panel-inner-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.signup-step-panel-inner-left {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
}

.signup-step-panel-numbers {
    display: flex;
    gap: 10px;
}

.signup-step-panel-number {
    display: none;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px dotted #3A5DAE;
    font-size: 18px;
    text-align: center;
}

.signup-step-panel-number.actual-step {
    display: block;
    border: 1px solid #3A5DAE;
}

.signup-step-panel-number.past-step {
    display: block;
    border: 1px solid #D8DFEF;
    background-color: #D8DFEF;
}

.signup-step-panel-number.future-step {
    display: block;
}

.signup-step-panel-name {
    font-size: 18px;
}

.signup-step-panel-name-item:not(.signup-step-panel-name-item-displayed) {
    display: none;
}

.signup-step-container {
    max-width: 950px;
    background-color: white;
    box-shadow: 0 4px 40px 0 #28262614;
    border-radius: 16px;
    margin: auto auto 40px auto;
}

.signup-step-container-w-link {
    margin: 4rem auto 40px auto;
    position: relative;
}

.signup-step-sector .link-span {
    display: flex;
    align-items: center;
    font-size: 20px;
    text-decoration: none;
    width: fit-content;
    position: absolute;
    top: -4rem;
}

.signup-step-sector .link-span:before {
    content: url(../images/icons/angle-left-blue.svg);
    height: 26px;
    width: 26px;
    margin-right: 4px;
}

.signup-step-container .form-row{
    display: flex;
    flex-direction: row;
}

.signup-step-banner {
    background-color: #A6E191;
    font-weight: bold;
    padding: 1rem 0;
    padding-left: 25vw;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    position: absolute;
    width: 100%;
    top: 0;
}

.signup-step-container-top {
    border-bottom: 1px solid #3A5DAE;
}

.signup-step-container-top, .signup-step-container-bottom {
    padding: 40px;
}

.signup-step-sector {
    padding-top: 50px;
    padding-bottom: 40px;
    position: relative;
    z-index: 5;
}

.signup-step-container h1 {
    font-size: 56px;
}

.signup-step-container h2 {
    font-size: 32px;
    font-weight: 800;
    line-height: 34px;
    margin-bottom: 24px;
}

.signup-step-container h3 {
    font-family: MontB, sans-serif;
    font-weight: 800;
    font-size: 26px;
    line-height: 30px;

}

.signup-step-container h4 {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
}

.signup-step-container-top p {
    font-size: 24px;
}

.signup-step-container-info {
    padding: 40px;
}

.signup-form .input-wrapper .info-icon {
    width: 1.25rem;
    margin-right: 0;
    margin-left: .75rem;
    cursor: pointer;
}

.sub-step-counter {
    display: flex;
    gap: 10px;
}

.signup-step-img_dog {
    position: relative;
    width: 23vw;
    bottom: 1rem;
    left: -3.5rem;
    max-width: 20rem;
    margin-top: -10rem;
}

.signup-coverage-box {
    max-width: 950px;
    background-color: white;
    border-radius: 1rem;
    margin: auto auto 2.5rem auto;
    padding: 0.75rem 1.5rem 1.5rem;
    box-shadow: 0px .25rem 2.5rem 0px #28262614;
}

.signup-coverage-box-header {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;

    .btn {
        width: 50%;
        font-weight: normal;
    }

    .btn.btn-primary {
        color: white;
    }
}

.signup-coverage-box-list {
    --bs-accordion-btn-icon-size: 1.5rem;

    margin-top: 2.25rem;
}

.signup-coverage-box-list .accordion-item {
    position: relative;
}

.signup-coverage-box-list .collapse-button::before {
    width: var(--bs-accordion-btn-icon-size);
    height: var(--bs-accordion-btn-icon-size);
    content: "";
    background-image: url("../images/icons/checkmark.svg");
    background-repeat: no-repeat;
    background-size: var(--bs-accordion-btn-icon-size);
    position: absolute;
    left: 0;
}

.signup-coverage-box-list-no .collapse-button::before {
    --bs-accordion-btn-icon-size: 1.25rem;
    
    background-image: url("../images/icons/cross.svg");
}


.signup-coverage-box-list .collapse-button {
    font-size: 1.25rem;
    padding-left: calc(var(--bs-accordion-btn-icon-size) + 1.25rem);
}

.signup-coverage-box-list hr {
    margin: 1.25rem 0 2rem;
    color: #E3E3E3;
    opacity: 1;
    width: calc(100% - (var(--bs-accordion-btn-icon-size) + 1.25rem));
    margin-left: auto;
}

.signup-coverage-box-list .accordion-collapse {
    padding-left: calc(var(--bs-accordion-btn-icon-size) + 1.25rem);
}

.signup-coverage-box-list .accordion-collapse .accordion-body {
    padding-top: 1rem;
}

.sub-step-item {
    width: 13px;
    height: 13px;
    border-radius: 8px;
    background-color: #896CCC;
}

.sub-step-item-actual {
    width: 42px;
}

.sub-step-item-future {
    background-color: #E6DBFF;
}

.css-toggle {
    display: flex;
    width: 100%;
    position: relative;
    box-sizing: border-box;
}

.css-toggle input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 50%;
    height: 64px;
    border: 1px solid #3A5DAE;
    background: #fff;
    cursor: pointer;
    font-size: 16px;
    border-radius: 0;
    color: #000;
    transition: background 0.15s, color 0.15s, border 0.15s;
    box-sizing: border-box;
    margin: 0;
    position: relative;
    z-index: 1;
    display: inline-block;

}

.css-toggle input[type="radio"]:first-of-type {
    /*border-right: none;*/
    border-radius: 8px 0 0 8px;
    /*margin-right: 0.1px;*/
}

/* Poslední tlačítko: žádný levý border */
.css-toggle input[type="radio"]:last-of-type {
    /*border-left: none;*/
    border-radius: 0 8px 8px 0;
}

.css-toggle input[type="radio"]:checked {
    background: #3A5DAE;
    color: #fff;
    border: 2px solid #3A5DAE;
    font-weight: bold;
}

/* LABEL bude uvnitř "tlačítka" */
.css-toggle label.css-toggle-default {
    position: absolute;
    top: 0;
    height: 64px;
    width: 50%;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    font-size: 16px;
    color: inherit;
    z-index: 2;
    background: transparent;
}

.css-toggle label.css-toggle-no {
    left: 50%;
}

.btn-tertiary-disabled {
    opacity: .4;
    cursor: not-allowed;
}

.select2-container {
    margin-bottom: 0 !important;
    margin-top: 8px !important;
}

.select2-container .selection .select2-selection {
    border: 1px solid #3A5DAE;
    border-radius: 6px;
    height: 56px;
    padding: 0 15px;
}

.select2-container .selection .select2-selection .select2-selection__rendered {
    line-height: 56px;
    color: black;
}

.select2-container--disabled .selection > span {
    cursor: not-allowed !important;
}

.select2-selection__rendered,
select,
input:not([type="submit"]) {
    color: #333333 !important;
}

.select2-search__field {
    height: 55px;
    padding: 13px 20px !important;
    transform: translateY(-55px);
    border-radius: 30px;
    font-size: 18px;
}

.select2-search--dropdown {
    padding: 0 !important;
    height: 0;
}

.select2-selection__arrow {
    display: none !important;
}

.select2-dropdown {
    margin-top: -7px;
}

.select2-search__field {
    border: none !important;
    outline-offset: 0;
    border-radius: 8px;
}

.select2-results__option {
    color: initial;
}

.select2-results__option--highlighted[aria-selected] {
    background-color: #3A5DAE !important;
}

@-webkit-keyframes load5 {
    0%,
    100% {
        box-shadow: 0em -2.6em 0em 0em #ffffff, 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.5), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7);
    }
    12.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.7), 1.8em -1.8em 0 0em #ffffff, 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5);
    }
    25% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.5), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7), 2.5em 0em 0 0em #ffffff,
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    37.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5), 2.5em 0em 0 0em rgba(255, 255, 255, 0.7),
            1.75em 1.75em 0 0em #ffffff, 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    50% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.5),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.7), 0em 2.5em 0 0em #ffffff, -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    62.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.5), 0em 2.5em 0 0em rgba(255, 255, 255, 0.7), -1.8em 1.8em 0 0em #ffffff,
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    75% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.5), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.7),
            -2.6em 0em 0 0em #ffffff, -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    87.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.5),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.7), -1.8em -1.8em 0 0em #ffffff;
    }
}

@keyframes load5 {
    0%,
    100% {
        box-shadow: 0em -2.6em 0em 0em #ffffff, 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.5), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7);
    }
    12.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.7), 1.8em -1.8em 0 0em #ffffff, 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5);
    }
    25% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.5), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7), 2.5em 0em 0 0em #ffffff,
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    37.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5), 2.5em 0em 0 0em rgba(255, 255, 255, 0.7),
            1.75em 1.75em 0 0em #ffffff, 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    50% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.5),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.7), 0em 2.5em 0 0em #ffffff, -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    62.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.5), 0em 2.5em 0 0em rgba(255, 255, 255, 0.7), -1.8em 1.8em 0 0em #ffffff,
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    75% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.5), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.7),
            -2.6em 0em 0 0em #ffffff, -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
    }
    87.5% {
        box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2),
            1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.5),
            -2.6em 0em 0 0em rgba(255, 255, 255, 0.7), -1.8em -1.8em 0 0em #ffffff;
    }
}

.billing-options {
    display: flex;
    gap: 20px;
}

.billing-option {
    border: 2px solid #0044cc;
    padding: 24px 10px 46px 10px;
    border-radius: 10px;
    width: 50%;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s;
    position: relative;
    margin-bottom: 32px;
}

.billing-option input {
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    cursor: pointer;
}

.billing-option span {
    display: block;
    color: #0044cc;
    margin-right: 5px;
    text-align: left;
    font-family: Mulish, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0;

}

.billing-option small {
    display: block;
    color: gray;
    margin-top: 5px;
    font-family: Mulish, sans-serif;
    font-weight: 400;
    font-size: 10px;
    line-height: 16px;
    letter-spacing: 0;
    text-align: center;

}

.billing-option:hover {
    background-color: #f0f8ff;
}

.billing-option .price-label {
    display: flex;
    flex-direction: row;
}

.trans_info_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.trans_info_grid p:nth-child(5) {
    grid-area: 2 / 2 / 3 / 4;
}

.trans_info_grid p:last-child {
    margin-bottom: 0;
}

.trans_table_small {
    font-size: 12px !important;
    margin-top: 0.75rem;
    width: 90%;
    padding: 0 .5rem;

    a {
        color: #3A5DAE;
        font-weight: bold;
    }
}

.radio-circle {
    width: 20px;
    height: 20px;
    border: 2px solid gray;
    border-radius: 50%;
    display: inline-block;
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
}

.billing-option input:checked + label .radio-circle {
    background-color: #0044cc;
    border-color: #0044cc;
}

.conditions-label {
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 18px;
    letter-spacing: 0;
    width: calc(100% - 40px);
    text-align: left;
}

.summary-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 24px;
    font-family: Mulish, sans-serif;
}

.summary-item strong {
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: Auto;
}

.summary-item p {
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

.summary-item.total {
    margin-bottom: 24px;
}

.summary-price {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.purchase-summary .divider{
    margin-bottom: 24px;
}

.summary-text,
.summary-value {
    font-family: MontB, sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 20px;
}
.summary-value.currency {
    margin-left: auto;
    margin-right: 5px;
}
.payment-options {
    display: flex;
    gap: 10px;
}

.payment-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #3A5DAE;
    cursor: pointer;
    font-weight: bold;
    border-radius: 8px;
    transition: 0.3s;
    width: 50%;
}

.payment-button input {
    display: none; /* Skryje skutečný radio input */
}

.payment-button span {
    display: block;
}

.payment-button input:checked + span {
    background: #3A5DAE;
    color: white;
    border-color: #3A5DAE;
    height: 100%;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
}

#payment-form-container {
    /*display: none;*/
}

.payment-btns {
    margin-bottom: 10px;
    display: flex;
    gap: 30px;
    justify-content: flex-end;
    margin-top: 80px;
}

.pay-info {
    margin-top: 35px;
    margin-bottom: 1rem;
    width: 80%;
    font-size: 12px;
    margin-left: 10%;
    text-align: center;
}

.form-header-container {
    display: flex;
    align-items: start;
    column-gap: 40px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.form-header-container .claim-status-label {
    max-width: fit-content;
    max-height: 44px;
    margin-top: -5px;
}

.payment-form-container .detail-row {
    margin-bottom: 20px;
}

.form_inner-column {
    margin-bottom: 45px;
}

/*Omezení pouze na form-section protože logika na pozadí přidává tuto třídu k více inputům*/
.form-section .wrong-input {
    border : #dd4747 3px solid;
}

.form-section input.wrong-input:focus,
.form-section textarea.wrong-input:focus,
.form-section select.wrong-input:focus {
    border: none !important;
}

#lottie-animation {
    width: 262px;
    height: 250px;
    /*margin-left: auto;*/
    margin-top: 10px;
    object-fit: contain;
    scale: 1.3;
    margin-bottom: -37px;
}

.wallet-wrapper {
    display: flex;
    gap: 10px;
    justify-content: flex-start;
    margin-bottom: 20px;
}

.google-wallet-button,
.apple-wallet-button {
    font-family: "Product Sans", sans-serif;
    height: 48px;
    padding: 10px;
    display: flex;
    text-decoration: none;
    color: #ffffff;
    letter-spacing: 0.03em;
    user-select: none;
}

.google-wallet-button img,
.apple-wallet-button img {
    height: 26px;
    margin-right: 10px;
}

.google-wallet-button {
    background-color: #1f1f1f;
    border: 1px solid #747775;
    border-radius: 24px;
    padding: 10px 16px;
}

.apple-wallet-button {
    background-color: #000000;
    border: 1px solid #a6a6a6;
    border-radius: 10px;
}

.wallet-btn-right .wallet-btn-top {
    font-size: 11px;
    line-height: 10px;
}

.wallet-btn-right .wallet-btn-bottom {
    font-size: 15px;
    line-height: 20px;
}

.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 16px;
    margin-top: 20px;
}

.pagination .page,
.pagination .arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    text-decoration: none;
    color: #333;
    background: white;
    border-radius: 50%;
    border: 1px solid #ccc;
    transition: background 0.3s ease;
}

.pagination .page:hover,
.pagination .arrow:hover {
    background: #e0f4ff;
}

.pagination .active {
    background: #348bce;
    color: white;
    border-color: #348bce;
}

.pagination .dots {
    padding: 0 10px;
    color: #666;
    font-size: 18px;
}

.pagination .arrow {
    font-size: 18px;
    font-weight: bold;
}

.filter-block{
    margin-bottom: 20px;
}

#policy-select {
    font-size: 16px;
    min-width:200px;
    background-color: #fff;
    border: solid 1px #ccc;
    border-radius: 10px;
    padding: 10px;
}

.comments-top {
    padding: 20px 40px;
}

.comment-text {
    border-radius: 26px;
    max-width: 800px;
    white-space: pre-wrap;
}

.comment {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.comment.comment-pex {
    align-items: flex-start;
}

.comment .comment-text {
    background: #afafaf1a;
    font-size: 14px;
    font-weight: 400;
    color: black;
    padding: 14px 28px;
}

.comment.comment-pex .comment-text {
    background: #4600980f;
}

.comment .comment-text .comment-attachment {
    display: block;
    font-size: 10px;
    padding-top: 5px;
    font-weight: 700;
}

.comment-author {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 10px;
    text-align: right;
    margin-bottom: 20px;
    margin-top: 8px;
}

.comment.comment-pex .comment-author {
    text-align: left;
    flex-direction: row;
}

.comment-author-icon {
    width: 32px;
    height: 32px;
}

.comment-author-name {
    font-size: 14px;
    color: black;
    line-height: 17px;
    font-weight: 700;
}

.comment-author-date {
    font-size: 12px;
    color: black;
    line-height: 15px;
    font-weight: 400;
}

.comments-form {
    border-top: 1px solid #afafaf80;
    display: flex;
}

.comments-form .comment-author-icon {
    padding: 24px;
    height: 80px;
    width: 80px;
}

.comment-author-send {
    border-left: 1px solid #afafaf80;
    margin-top: 8px;
    margin-bottom: 16px;
    width: 80px;
    padding: 10px 26px;
    cursor: pointer;
}

.comment-input {
    color: black;
    width: calc(100% - 160px);
    font-size: 16px;
    line-height: 20px;
    padding: 30px 20px 30px 5px;
    border: none;
}

.comment-input:focus {
    outline: none;
}

.comment-input:empty:not(:focus):before {
    content: attr(data-ph);
    color: grey;
    font-weight: 400;
    pointer-events: none;
}

/* Název incidentu */
.incident-title {
    font-size: 16px;
    margin-bottom: 8px;
}

.incident-vet {
    font-size: 14px;
    color: #333;
    margin-bottom: 12px;
}

.incident-info {
    display: flex;
    justify-content: space-between;
    padding: 4px 0;
}

.status-text {
    font-size: 14px;
    text-align: center;}

.claim-actions {
    display: flex;
    justify-content: flex-end;
    text-align: center;
    margin-top: 12px;
}

.claim-incident .incident-details {
    gap: 5px; !important;
}

.claim-incident > p {
    margin-top: -10px;
}

.claim-incident b {
    align-content: center;
}

.claim-incident .claim-status-label {
    display: block;
    padding: 15px 20px;
    max-width: 70%;
    margin-right: 0;
    text-wrap: initial;
    text-align: center;
}

.claim-incident .claim-status-label b {
    display: block; !important;
    width: 100%; !important;
    margin-right: 0;
}

.modal-content-more {
    font-family: Arial, sans-serif;
    color: #333;
}

.modal .client-section-content-table {
    width: 100%;
    overflow-x: auto;
}

.modal .client-section-content-table table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.modal .client-section-content-table thead {
    background-color: #f4f4f4;
    font-weight: bold;
}

.modal .client-section-content-table th,
.modal .client-section-content-table td {
    padding: 10px 15px;
    /*border: 1px solid #ddd;*/
    text-align: left;
}

.modal .client-section-content-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}

.modal .content-box {
    margin-top: 20px;
    padding: 15px;
    box-shadow: 0 2px 16px 0 #28262624;
    border-radius: 8px;
}

.modal .content-box div {
    display: flex;
    justify-content: space-between;
    padding: 5px 0;
}

.modal .content-box span {
    font-weight: bold;
}

.modal .content-box b {
    text-align: right;
    color: #000;
}

.modal .claim-table {
    width: 100%;
    border-collapse: collapse;
    /*margin-top: 10px;*/
}

.modal .claim-table th {
    background-color: #EBEFF7;
    text-align: left;
    padding: 12px;
}

.modal .claim-table td {
    padding: 10px;
}

.modal .claim-table tr {
    cursor: pointer;
}

.modal .claim-table tr:nth-child(even) {
    background-color: #F7F7F7;
}

.modal .claim-table tr:hover {
    background-color: #f0f3f8;
}

.modal .claim-table tr.selected {
    border: 2px solid #0052cc;
    background-color: rgba(0, 82, 204, 0.1);
}

.modal-content {
    border: none;
    max-height: 420px;
    overflow: auto;
}

.selected-claim-row {
    background-color: #f5f7fa;
    padding: 12px 16px;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    color: #212529;
}

.change-claim-link {
    display: block;
    margin-top: 6px;
    font-size: 14px;
    font-weight: 500;
    color: #0052cc;
    text-decoration: none;
    text-align: end;

}

.change-claim-link:hover {
    text-decoration: underline;
    color: black;
}

#dzsubmit{
    padding: 16px 32px;
    line-height: 24px;
    font-size: 18px;
    background-color: #896CCC;
    color: #FFFFFF;
    border: none;
    border-radius: 28px;
}

#select-claim-modal #modal_content-wrapper {
    overflow-x: auto;
    max-width: 100%;
}

.claim-table {
    width: 100%;
    border-collapse: collapse;
}

.claim-table th, .claim-table td {
    padding: 10px;
    text-align: left;
    white-space: nowrap; /* Zabráni zalamovaniu textu */
}

#signup-policy-modal .modal_content-wrapper {
    width: 70% !important;
    height: 80%; !important;
}
#signup-policy-modal iframe,
#signup-policy-modal .modal-content {
    height: 100%; !important;
    max-height: 100%;
}

.info-box {
    background-color: #D3F0C8;
    padding: 20px;
    border-radius: 10px;
    width: 80%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.info-box-red {
    background-color: #FAECEC;
    padding: 20px;
    border-radius: 10px;
    width: 80%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.info-box h3 {
    margin-top: 0;
    font-size: 18px;
}
.info-box p {
    font-size: 14px;
    color: #333;
}
.info-box-red p {
    color: #B00020;
}
.info-box ul {
    padding-left: 20px;
}
.info-box li {
    font-size: 14px;
    margin-bottom: 24px;
}
.info-box a {
    display: inline-block;
    margin-top: 15px;
    background-color: #3366cc;
    color: white;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 20px;
    font-size: 14px;
    text-align: center;
}
.info-box a:hover {
    background-color: #2554a8;
}
.info-box-red a {
    display: inline;
    margin-top: 0;
    background-color: transparent;
    color: inherit;
    padding: 0;
    text-decoration: underline;
    border-radius: unset;
    font-size: inherit;
    text-align: unset;
    font-weight: bold;
}
.info-box-red a:hover {
    background-color: transparent;
}

.client-section-flash-msg,
.flash-msg {
    position: sticky;
    padding: 15px 20px;
    display: flex;
    align-items: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    color: #000000;
    font-weight: bold;
    font-size: 14px;
    z-index: 998;
    min-height: 66px;
    top: -66px;
    transition: top 0.8s ease-in-out, margin-top 0.8s ease-in-out;
    margin-top: -66px;

}

.client-section-flash-msg.show {
    top: 96px;
    margin-top: 0;
}

.flash-msg.show {
    top: 114px;
    margin-top: 0;
}

.client-section-flash-msg p,
.flash-msg p {
    margin-bottom: 0 !important;
    font-family: Mulish, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0;
}

.flash-success { background-color: #A6E191; }
.flash-error { background-color: #B00020; color: #FFFFFF !important; }
.flash-warning { background-color: #ff9800; }
.flash-ok {background-color: #E6DBFF;}
.flash-icon {
    width: auto;
    height: 18.2px;
    margin-right: 10px;
}

.flash-close {
    background: none;
    border: none;
    color: #000000;
    font-size: 18px;
    cursor: pointer;
    margin-left: auto;
}

#claim-form-success-container .claim-actions, #claim-form-error-container .claim-actions {
    width: 80% !important;
    gap: 1rem;
}

.dz-error-mark, .dz-success-mark {
    display: none;!important;
}

#pincode-modal {
    color: white;
}

#pincode-modal label {
    color: white;
}

#dzsubmit {
    margin-left: auto;
}


#limits-section {
    margin-top: -35px;
    padding: 15px;
    background: #EBEFF7;
    border-radius: 16px;
    /*box-shadow: 0 4px 40px 0 #28262614;*/
}

#limits-section h3 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #333;
    margin-left: 10px;
}

#limits-section .info-icon {
    margin-left: 10px;
    background-image: url('../images/icons/info-blue.svg');
    width: 25px;
    height: 25px;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin-top: -3px;
    cursor: pointer;
}

#limits-section .info-icon:hover {
    background-image: url('../images/icons/info-black.svg');
}

.limits-table {
    width: 100%;
    border-collapse: collapse;
}

.limits-table tr {
    border-bottom: 1px solid #ddd;
}

.limits-table tr:last-child {
    border-bottom: none;
}

.limits-table td {
    padding: 12px;
    font-size: 14px;
    color: black;
    vertical-align: middle;
}

.limits-table .limit-value {
    font-weight: bold;
    color: black;
    text-align: right;
}

.limits-table tr[style="display: none;"] {
    display: none !important;
}

.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 25px;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
    border-radius: 20px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 19px;
    width: 19px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .slider {
    background-color: #2C5697;
}

/* Posunutí kolečka při zapnutí */
input:checked + .slider:before {
    transform: translateX(25px);
}

/* Přepínač zarovnaný doprava */
.limits-table td:last-child {
    min-width: 60px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    margin-right: 50px;
}

#limit-info-modal .modal_content-wrapper {
    max-width: 80% !important;
    width: 100%;
}

#limit-info-modal .modal-content {
    gap: 25px !important;
}

.pdf_hide {
    margin-top: 1.5rem;
}

.signup-offer {
    width: 100%;
    display: flex;
    justify-content: center;
}

.pdf-offer-button {
    margin-bottom: 40px;
    font-family: "MontB", sans-serif;
    font-weight: 800;
    font-size: 26px;
    line-height: 28px;
    text-align: center;
    height: 58px;
    min-width: 502px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 55px;
}

.pdf-offer-button {
    background-color: #896CCC;
    color: #FFFFFF;
    border: none;
}

.pdf-offer-button:hover {
    background-color: #7059A8;
    color: #FFFFFF;
}

.pdf-offer-modal .modal-content {
    display: flex;
    flex-direction: column;
}

.pdf-offer-modal .modal_content-wrapper {
    width: 725px;
}

#pdfEmailInput {
    margin-bottom: 30px;
}

@media (max-width: 1200px) {
    .claim-incident {
        max-width: 100%;
    }

    .signup-space-image {
        position: relative;
        margin-top: 140px;
        left: 38%;
    }
}

@media (max-width: 992px) {
    #limits-section {
        margin-top: 5px !important;
    }

    .travel-intro-circle {
        position: relative;
    }

    .travel-why {
        margin-top: -50px;
        position: relative;
    }
    .price-window-wrapper {
        display: flex;
        justify-content: center;
    }

    .price-window {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        background: none;

    }

    .price-window-b .price-window-m-wrap {
        font-size: 48px;
    }

    .pdf-offer-button {
        min-width: 0;
    }
}

@media (max-width: 768px) {
    .swiper-button-prev, .swiper-button-next {
        font-size: 16px;
        width: 25px;
        height: 25px;
    }

    .swiper-button-prev::after, .swiper-button-next::after {
        font-size: 16px;
        width: 16px;
        height: 16px;
    }

    .blog-img-container {
        height: 200px;
    }
}

@media (max-width: 767.98px) {
    section {
        padding: 50px 20px;
    }

    .mobile {
        display: initial !important;
    }
    
    .desktop {
        display: none !important;
    }

    .title-block {
        .links {
            margin-right: 0;

            .btn.desktop {
                display: none;
            }

            .btn.btn-standard-link {
                font-size: 14px;
            }
        }
    }

    .modal_content-wrapper {
        width: 100%;
        margin: auto 24px;
    }

    #limit-info-modal .modal_content-wrapper {
        max-width: unset !important;
        gap: 1rem;
    }

    #limit-info-modal .modal_content-wrapper h2 {
        font-size: 1.5rem;
        margin-bottom: 0;
    }

    #limit-info-modal .modal_content-wrapper p {
        font-size: 1rem;
    }

    .toast.show {
        bottom: 1rem;
        right: unset;
        width: 90%;
        margin: 0 auto;
    }
    
    header.page-header.page-header-no-shadow {
        box-shadow: none;
    }

    header .top-header {
        padding: 10px 20px;
    }

    header .bottom-header {
        padding: 0 20px;
        height: 56px;
    }

    .header-img {
        height: 35px;
    }

    .homepage-intro-circle {
        width: 50vw;
        height: 50vw;
    }

    .travel-intro-circle {
        width: 56vw;
        height: 56vw;
    }

    .btn {
        font-size: 12px;
        padding: 10px 20px;
    }

    .input-wrapper {
        margin-bottom: 1rem;
    }

    .navbar-collapse {
        display: none;
    }    

    .mobile-navbar {
        display: flex;
        flex-direction: column;
        position: fixed;
        height: calc(100vh - 100px);
        width: 100%;
        background-color: white;
        left: -100%;
        transition: left 1s ease;
        padding: 2rem 1rem;

        hr {
            margin: .75rem 0;
        }

        .nav-item {
            padding: .5rem 2rem;
        }

        .nav-item-flex {
            display: flex;
            justify-content: space-between;
        }

        .nav-item-accordion {
            padding-left: 4rem;
        }

        .nav-link {
            color: #3A5DAE;
            font-weight: bold;
        }

        .nav-link-acordion {
            background: none;
            outline: none;
            border: none;

            img {
                transform: rotate(90deg);
                transition: transform .5s;
            }
        }

        .nav-link-acordion.collapsed {
            img {
                transform: rotate(270deg);
            }
        }

        .nav-button {
            position: fixed;
            bottom: 32px;
            align-self: center;
            margin-top: auto;

            img {
                cursor: pointer;
            }
        }
    }

    .mobile-navbar.show {
        left: 0;
    }

    .form-label-w-img {
        justify-content: space-between;
    }

    .claim_button_fixed {
        right: 1rem;
        bottom: 1rem;
    }

    .homepage-intro h1, .travel-intro h1 {
        font-size: 36px;
        line-height: 38px;
        margin-bottom: 10px;
    }

    .homepage-intro p, .travel-intro p {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .homepage-intro-heading, .travel-intro-heading {
        padding: 0;
    }

    .homepage-intro {
        padding-bottom: 220px;
    }
    .products-intro {
        padding: 50px 20px 15px;
    }

    .travel-intro {
        padding-bottom: 155px;
    }

    .homepage-intro-circle, .travel-intro-circle {
        right: 0px;
    }

    .travel-intro-circle {
        position: absolute;
    } 

    .homepage-why {
        padding-top: 30px;
    }

    .travel-why {
        padding: 0 20px 50px;
        margin-top: 0;
    }

    .homepage-why.products-why {
        padding: 15px 20px 50px;
    }

    .homepage-why-block h3, .travel-why-block h3 {
        font-size: 1rem;
    }

    .homepage-why-block p, .travel-why-block p {
        font-size: 14px;
    }

    .homepage-intro-right, .travel-intro-right {
        width: calc(50% + 100px);
        display: block;
        margin: 0 -50px 0 auto;
    }

    .homepage-intro-right-be {
        margin-top: 14%;
    }

    .products-comparison-button {
        margin-top: 2rem;
    }

    thead .products-comparison-left .products-comparison-item {
        line-height: normal;
        font-size: .875rem;
    }

    tbody .products-comparison-item {
        padding: 5px 10px 0 10px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: .75rem;
    }
    
    tbody .products-comparison-item > div {
        font-size: .875rem;
        width: 95%;
    }

    tbody .products-comparison-left, tbody .products-comparison-right {
        padding: 0.5rem 0.5rem 1rem;
    }

    .products-comparison-header.products-comparison-left {
        padding: .75rem .5rem;
    }

    .travel-intro-right {
        margin: 0px -36px 0 auto;
    }

    .homepage-intro-dog {
        left: 43%;
        top: 55%;
        width: 60%;
        transform: translate(-50%, -20%) !important;
    }

    .travel-intro-img {
        left: 52%;
        width: 68%;
        transform: translate(-50%, 9%) !important;
        top: auto;
    }

    .homepage-why-block, .travel-why-block {
        padding: 30px;
    }

    .homepage-why-block h2, .travel-why-block h2 {
        margin-bottom: 30px;
    }

    h2 {
        font-size: 32px;
    }

    .homepage-why-btn-container, .travel-why-btn-container {
        margin-top: 30px;
    }

    .homepage-mission-stripe {
        height: 126px;
    }

    .homepage-mission-img-container {
        margin-bottom: 35px;
    }

    .homepage-mission-img-container img {
        height: 10rem;
    }

    .homepage-faq-cat-container img, .travel-details-cat-container img {
        width: 30%;
    } 

    .homepage-faq > h2, .homepage-mission > h2, .travel-details > h2 {
        font-size: 32px;
    }

    .homepage-faq > p, .homepage-mission > p, .travel-details > p {
        font-size: 16px;
    }

    .homepage-faq .accordion-button, .travel-details .accordion-button {
        font-size: 16px;
    }

    .homepage-faq .accordion-body, .travel-details .accordion-body {
        font-size: 12px;
    }

    .faq-intro {
        padding-top: 4rem;
    }

    .faq-intro .homepage-intro-circle {
        width: 200px;
        top: 4rem;
        left: -2rem;
        height: auto;
    }

    .faq-page {
        padding-top: 2.5rem;
    }

    .faq-blocks {
        gap: 1.5rem;
    }

    .faq-block {
        padding: 1.3rem;
    }

    .faq-block h2 {
        font-size: 1.25rem;
    }

    .faq-block .collapse-item h3 {
        font-size: 1rem;
    }

    .faq-block .collapse-item p {
        font-size: .9rem;
    }

    .faq-cover-table span {
        font-size: 14px;
    }

    .claim-collapse .claim-collapse-box {
        padding: 1.5rem 1rem;
    }

    .claim-collapse .collapse-box h5 {
        font-size: 15px;
    }

    .claim-collapse .collapse-box .link-box a {
        font-size: 0.75rem;
    }

    .faq-cover-table-tdflex {
        align-items: center;
        flex-direction: column;
        gap: .75rem;
    }

    .faq-cover-table-tdflex img {
        height: 1rem;
        padding-top: 0;
    }

    .blog-img-container img:first-child {
        border-right: none;
    }
    
    .blog-img-container img:last-child {
        display: none;
    }

    .vets section, .refer section {
        padding: 30px 20px;
    }

    .vets-intro, .refer-intro {
        padding-top: 60px;
    }

    .vets-intro img, .refer-intro img {
        width: 100%;
        height: 10rem;
        margin: 0 0 2rem;
    }

    .vets-intro h1, .refer-intro h1 {
        font-size: 32px;
        width: 100%;
        margin: 0 0 .5rem;
    }

    .vets-intro p, .refer-intro p {
        width: 100%;
        font-size: 14px;
    }

    .vets-searchbox-box {
        max-width: unset;
        padding: 16px;
    }

    .vets-searchbox-box input {
        font-size: 14px;
    }

    .vets-searchbox-box p {
        margin-top: 1.5rem;
        font-size: 12px;
    }

    .vets-searchbox-info {
        margin-top: 2rem;
        font-size: 14px;
    }

    .vets-results h2 {
        margin-bottom: 0;
    }

    .vets-results-swiper {
        width: auto;
    }

    .vets-results-swiper-wrapper-notfound  {
        margin-top: 2rem;
        font-size: 16px;
    }

    .vets-results-swiper-slide {
        padding: 40px 27px;
    }

    .vets-results-swiper-slide-box {
        box-shadow: 0px 4px 22px 0px #28262629, 0px 2px 27px 0px #2826263D;
    }

    .vets-results-swiper-nav {
        width: calc(100% - (2 * 60px));
        margin: 0 auto;
    }

    .vets-results-swiper-box .swiper-button-next, .vets-results-swiper-box .swiper-button-prev {
        position: absolute !important;
        inset: auto;
    }

    .vets-results-swiper-box .swiper-button-next {
        bottom: 0;
        right: 20px;
    }

    .vets-results-swiper-box .swiper-button-prev {
        bottom: 0;
        left: 20px;
    }

    .vets-results-swiper-box.hide-buttons {
        .swiper-button-next, .swiper-button-prev {
            display: none !important;
        }

        .vets-results-swiper-nav {
            display: none !important;
        }
    }

    .vets-results-swiper-box .swiper-button-prev:hover, .vets-results-swiper-box .swiper-button-next:hover {
        background-color: unset;
    }

    .vets-results-small-text {
        width: 100%;
        font-size: .75rem;
        margin: 2rem 0 -1rem;
    }

    .vets-footer {
        flex-direction: column;
        width: 100%;
        gap: 2rem;
        margin: 3rem 0 2rem;
    }

    .vets-footer div {
        max-width: 100%;
    }

    .vets-footer-image {
        max-width: 100%;
    }

    .vets-footer hr {
        max-width: 18rem;
    }

    .vets-footer-phone {
        font-size: 14px;
    }

    .refer-form form {
        grid-template-columns: 1fr;
    }
    
    .refer-form form .checkbox-box {
        grid-area: auto;
    }

    .refer-form form button {
        grid-area: auto;
    }

    .refer-info p {
        font-size: 0.875rem;
    }

    .refer-help img {
        width: 100%;
    }

    .client-section-header {
        height: 66px;
    }

    .client-section {
        padding: 20px;
        min-height:  calc(100vh - 66px);
    }

    .client-section .container {
        padding: 32px 0 85px 0;
    }

    .client-policies-overview .btn {
        padding: 12px 24px;
        font-size: 10px;
        line-height: 16px;
        font-weight: 700;
    }

    .client-policies-overview.policy-multiple .policy-card .policy-content {
        flex-direction: column;
        justify-content: flex-start;
        gap: .5rem;
    }

    .client-policies-overview.policy-multiple .policy-card .policy-content .policy-number {
        margin-bottom: .75rem;
    }

    .client-policies-overview.policy-multiple .policy-card .policy-content .policy-incomplete {
        margin-bottom: .75rem;
    }

    .client-section .link-span {
        margin-bottom: 1rem;
    }

    .client-section-login-form, .pmt-form.w-form.form-block {
        width: 100%;
        padding: 24px;
        gap: 24px;
        height: auto;
    }

    .client-section-form {
        gap: 16px;
    }

    .client-section-background-image {
        width: 656px;
        height: auto;
        margin-top: -61px;
    }

    .client-section-login-form-heading {
        font-size: 20px;
        line-height: 24px;
    }

    .client-section-form .signup-input {
        height: 48px;
    }

    .client-section-form label {
        font-size: 16px;
        line-height: 22px;
    }

    .client-section-form .spacer {
        display: none;
    }

    .client-section-footer {
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
        width: 100%;
    }

    .client-section-footer-text {
        text-align: center;
    }
    .client-section-header {
        height: 66px;
    }

    header .close-button {
        display: flex;
    }

    .client-section-sidebar {
        display: none;
        width: 100vh;
        top: 66px;
        height: calc(100vh - 66px);
    }

    .client-section-header .navbar-brand {
        height: 42px;
        margin-top: 11px;
        margin-left: 62px;
    }

    .client-section-header .navbar .hamburger {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 24px;
        margin-left: 20px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .client-section-header .navbar-actions > .divider,
    .client-section-header .navbar-actions .language,
    .client-section-header .navbar-actions .account .account-name,
    .client-section-header .navbar-actions .account .dropdown-toggle svg:last-child {
        display: none;
    }

    .client-section-header .navbar-actions .account {
        .dropdown {
            width: auto;
        }
    }

    .client-section-header .account .dropdown .dropdown-menu {
        width: 100%;
        height: 100%;
        left: 0;
        position: fixed;
        top: 68px;
    }

    .client-section-header .dropdown .dropdown-menu .dropdown-item.language {
        display: block;
    }

    .client-section-sidebar .nav-item {
        text-align: center;
    }

    .client-section-sidebar .nav-item a {
        padding-left: 33px;
    }

    .client-section-sidebar .nav-footer {
        bottom: auto;
        width: 100%;
    }

    .client-section-sidebar .nav-footer .divider {
        display: none;
    }

    .client-section-sidebar .nav-footer .nav-item {
        width: 100%;
    }

    .client-section-sidebar .nav-footer .nav-item:hover {
        width: 100%;
        background-color: #2C5697;
    }

    .client-section-header .navbar-actions .account {
        justify-content: flex-end;
        width: 88px;
    }

    .client-section-header .navbar-actions .nav-item {
        height: 66px;
    }

    .client-section-header .navbar-actions .account .dropdown-toggle {
        padding: 0 10px;
    }

    .client-section-header .navbar-actions .account .notification-badge {
        left: auto;
        right: 10px;
    }
    .hide-on-mobile {
        display: none !important; /* Skryje obrázek pro desktop verzi */
    }

    .detail-row {
        flex-direction: column;
    }

    .detail-item {
        width: 100%;
    }

    .client-pagination {
        width: 100%;
        justify-content: space-evenly;
        margin-top: 2rem;

        .client-pagination-btn {
            span {
                display: none;
            }
        }

        span.active {
            font-size: 18px;
        }
    }
    
    .client-policies-overview {
        display: block;

        .slick-track {
            padding-bottom: 15px;
        }
    }

    .policy-card {
        flex-direction: column;
        width: 343px;
        height: fit-content;
        text-align: center;
        height: 100%;
    }

    .claim-incident {
        max-width: 100% !important;
    }

    .client-box {
        gap: .75rem;
        width: 100%;
        padding: 22px 20px;
    }

    .client-payments-account-grid {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: unset;
    }

    .client-payments-account-link {
        position: relative;
        right: unset;
        align-self: flex-end;
    }

    .client-payments-billing-grid {
        flex-direction: column;
        gap: 0;
    }

    .client-payments-payer-grid {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: unset;
    }

    .client-payments-method-grid {
        gap: 0.5rem;
    }

    .client-payments-input_radio {
        width: 100%;
    }

    .client-payments-method-link {
        text-align: center;
    }

    .client-table {
        th, td {
            font-size: 14px;
        }
    }

    .client-payments-form-buttons {
        justify-content: center;
    }

    .client-payments-new_method-modal {
        p {
            margin-top: 1rem;
        }
    }

    .client-payments-new_method-form {
        gap: 1rem;
    }

    .client-pets {
        .client-box {
            gap: 1rem;
            align-items: center;
        }

        .client-pets-pet {
            gap: 9px;
            flex-direction: column;
            align-items: flex-start;

            .client-pets-pet-name {
                b {
                    font-size: 22px;
                }

                h3 {
                    margin-bottom: 0;
                }
            }

            .client-pets-pet-policy {
                flex-direction: column;
                gap: 0;
                flex-grow: unset;
                word-break: break-word;
            }

            .client-pets-more {
                width: 100%;
                font-size: 13px;
                display: flex;
                align-items: center;
                justify-content: flex-end;

                a.mobile {
                    gap: 8px;
                }
            }
        }

        .policy-image-wrapper {
            width: 85px;
            height: 85px;

            .policy-image {
                width: 85px;

                img {
                    height: 87px;
                }
            }
        }
    }

    .client-pets-detail {
        .client-pets-detail-box {
            align-items: flex-start;
            gap: .75rem
        }

        .client-pets-detail-policy-grid {
            grid-template-columns: repeat(1, 1fr);

            p:nth-child(7) {
                grid-column: auto;
            }

            a {
                line-height: 33px;
            }
        }

        .client-pets-detail-info {
            align-items: flex-start;
            gap: .25rem;
            padding: 10px 13px 10px 18px;

            p {
                font-size: 11px;
            }
        }

        .client-pets-detail-pet-grid {
            grid-template-columns: repeat(1, 1fr);
        }

        .client-pets-detail-profile-update {
            position: relative;
            right: unset;
            align-self: flex-end;
        }
    }

    .w-50, .w-75 {
        width: 100% !important;
    }

    .client-section-claim-form .form-section {
        flex-direction: column;
    }

    .client-section-claim-form .toggle-group {
        width: 100%;
    }

    .trans_info_grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .trans_info_grid p:nth-child(5) {
        grid-column: auto;
    }

    /* .trans_info_grid p:last-child {
        margin-bottom: 0;
    } */

    .signup-step-container-w-link {
        margin-top: 2rem;
    }

    .signup-step-sector .link-span {
        top: -3rem;
    }

    .signup-step-container, .signup-button-panel {
        margin-left: 16px;
        margin-right: 16px;
    }

    .signup-step-container .signup-button-panel {
        margin-left: auto;
        margin-right: auto;
    }

    .signup-step-panel {
        top: 0;
        z-index: 998;
    }

    .signup-step-panel-inner {
        padding: 0 1rem;
    }
        
    .signup-coverage-box {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .signup-coverage-box-list .collapse-button {
        font-size: 1rem;
    }

    .signup-coverage-box-list {
        --bs-accordion-btn-icon-size: 1.125rem;
    }

    .signup-coverage-box-list-no .collapse-button::before {
        --bs-accordion-btn-icon-size: 1rem;
    }

    .signup-coverage-box-list hr {
        margin: 1.125rem 0;
        margin-left: auto;
    }

    .signup-coverage-box-list .accordion-collapse .accordion-body {
        font-size: .875rem;
    }

    .signup-button-panel-edit {
        margin: 2rem 2.5rem 0;
        justify-content: flex-start;
    }

    .signup-step-container-top-edit {
        padding-bottom: 0;
    }

    .signup-step-container h1 {
        font-family: MontB, sans-serif;
        font-weight: 800 !important;
        font-size: 36px !important;;
        line-height: 38px !important;;
        letter-spacing: 0;
    }

    .signup-step-container-top p {
        font-family: Mulish, sans-serif;
        font-weight: 400;
        font-size: 16px;
        line-height: 22px;
        letter-spacing: 0;

    }

    .signup-step-container-edit {
        box-shadow: none;
        margin: 0 !important;
    }

    .signup-step-banner {
        padding-left: 2rem;
    }

    .signup-step-img_dog {
        display: none;
    }

    .signup-label {
        font-weight: 700;
        font-size: 16px;
        line-height: 22px;
    }

    .signup-form-sliders label {
        font-weight: bold;
        margin-bottom: 3.5rem;
        gap: 1rem;
    }

    .signup-form-sliders label b {
        display: none;
    }

    .signup-form-sliders label img {
        display: initial;
        width: 20px;
        cursor: pointer;
        margin-left: unset;
        width: auto;
    }

    .signup-button-continue-panel {
        position: fixed;
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        padding: .75rem 1rem;
        margin: 0;
        align-items: center;
    }

    .signup-button-continue-panel .signup-button-continue-panel-pricing {
        width: fit-content;
        margin: 0;
    }

    .signup-button-continue-panel .signup-button-panel {
        margin: 0;
        width: fit-content;
        max-width: unset;
    }

    .signup-button-continue-panel .signup-button-continue-panel-pricing-left {
        display: none;
    }

    .signup-button-continue-panel .signup-button-continue-panel-pricing-right {
        width: 100%;
    }

    .signup-button-continue-panel .signup-button-continue-panel-pricing-right #year_span {
        clear: both;
        display: block;
        text-align: left;
    }

    .slider-container .values {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        margin-top: .75rem;
        font-weight: bold;
    }

    .value-label {
        display: block;
        top: -46px;
    }

    .flash-msg {
        top: -52px;
    }

    .info-box {
        width: 100%;
    }

    #claim-form-success-container .claim-actions, #claim-form-error-container .claim-actions {
        width: 100% !important;
    }

    #lottie-animation {
        width: 176px;
        height: 173px;
    }

    .pdf_hide {
        margin-top: 2rem
    }

    .client-section-flash-msg.show {
        top: 66px; !important;
        margin-top: 0; !important;
    }

    .flash-msg.show {
        top: 100px; !important;
        margin-top: 0; !important;
    }

    .pet-coverage {
        width: 100%;
    }
}

@media (min-width: 767px) {
    .hide-on-desktop {
        display: none !important;
    }
}


@media (max-width: 600px) {
    .claim-table th, .claim-table td {
        padding: 8px;
        font-size: 14px;
    }

    .signup-space-secondary .signup-button-panel {
        flex-direction: column-reverse;
    }

    .signup-space-secondary .signup-button-panel {
        .btn {
            margin: auto;
        }

        .link-btn {
            margin: auto;
        }

        .btn-tertiary {
            min-width: 215px;
        }

        .btn-secondary {
            min-width: 185px;
        }
    }

}

@media (max-width: 400px) {
    .claim-table th, .claim-table td {
        font-size: 12px;
        padding: 6px;
    }
}

.carousel-viewport {
    position: relative;
    overflow: hidden;
    margin-bottom: 40px;
}

.carousel-viewport::before,
.carousel-viewport::after {
    content: '';
    position: absolute;
    top: 0;
    width: 40px;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.carousel-viewport::before {
    left: 0;
    background: linear-gradient(to right, white 0%, rgba(255,255,255,0) 100%);
}

.carousel-viewport::after {
    right: 0;
    background: linear-gradient(to left, white 0%, rgba(255,255,255,0) 100%);
}

.pet-coverage {
    padding: 30px;
    text-align: center;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
.coverage-card {
    border-radius: 12px;
    padding: 20px;
    min-width: 260px;
    margin: 10px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
    text-align: left;
}
.coverage-card ul {
    list-style: none;
    padding-left: 0;
    font-size: 14px;
    margin-top: 10px;
    margin-left: 17px;
}
.bg-light-green {
    background-color: #e9fce6;
}
.bg-light-purple {
    background-color: #f0eaff;
}
.center-btn {
    margin-top: 15px;
}

.carousel-arrows {
    margin-top: 10px;
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 50px;
}

.carousel-arrows button {
    background: none;
    border: none;
    font-size: 50px;
    cursor: pointer;
    color: #2f2f80;
}

.slick-dog, .slick-cat {
    .slick-slide {
        margin-right: 16px;
    }
    .coverage-card {
        height: 257px !important;
        width: 234px !important;
    }

    .coverage-card li {
        list-style-type: disc;
        margin-bottom: 10px;
    }
}

.scroll-btn {
    background: #e0e0e0;
    border: none;
    width: 100%;
    padding: 6px 0;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.2s;
}
.scroll-btn.up {
    border-radius: 16px 16px 0 0;
    margin-bottom: -32px;
}

.scroll-btn.down {
    border-radius: 0 0 16px 16px;
    margin-top: -32px;
}

.scroll-btn:active,
.scroll-btn:focus {
    background: #c0c0c0;
}
