/************************* ******* start Layout panel-tip ****** **************************/

.panel-tip {
    display: flex;
    margin-bottom: 30px;
    background: #ECF0F3;
    padding: 15px 5px;
    text-align: left;
}

.panel-tip h2 {
    color: #0a246a;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.3;
}

.panel-tip i {
    color: #0a246a;
    font-size: 35px;
    font-weight: 400;
    padding: 15px 25px
}

.panel-tip p {
    font-size: 15px;
    color: black;
    line-height: 1.8;
    text-align: justify;
    padding: 0 15px 0 0;
}

.panel-tip-inv {
    display: flex;
    margin-bottom: 30px;
    background: #002e5d;
    padding: 15px 5px;
    text-align: left;
}

.panel-tip-inv h2 {
    color: #fff;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.3;
}

.panel-tip-inv i {
    color: #fff;
    font-size: 35px;
    font-weight: 400;
    padding: 15px 25px
}

.panel-tip-inv p {
    font-style: italic;
    font-size: 15px;
    color: white;
    line-height: 1.8;
    text-align: justify;
    padding: 0 15px 0 0;
}


.tip-p-button {
    font-size: 15px;
    height: 45px;
    padding: 10px 30px;
    font-weight: 500;
    border-color: var(--essens-blue) !important;
    float: right;
    margin-right: 15px;
}

.tip-p-button-inv {
    font-size: 15px;
    height: 45px;
    padding: 10px 30px;
    border-color: var(--essens-blue) !important;
    float: right;
    margin-right: 15px;
    background: white !important;
    color: #002e5d !important;
    font-weight: 600;
}

@media (min-width: 554px) {
    .tip-p-flex {
        margin-right: 65px;
    }
}

/************************* ******* close Layout panel-tip ****** **************************/

.lp-mainpage {
    background: white none repeat scroll 0 0;
    margin-right: auto;
    margin-left: auto;
}

.lp-mainpage ul li {
    list-style: disc !important;
}

@media (min-width: 1200px) {
    .lp-mainpage {
        width: 1190px;
    }
}

.lp-layout-heading-h1 {
    margin-top: 50px;
    color: var(--essens-blue);
    font-weight: 600;
    text-align: center;
    padding-left: 20px;
    padding-right: 20px;
}

.lp-layout-heading-h4 {
    color: #db0962;
    font-weight: 600;
    text-align: center;
    padding-left: 20px;
    padding-right: 20px;
}

.lp-layout-heading-h4-left {
    color: #db0962;
    font-weight: 600;
    text-align: left;
}

.lp-layout-panel-heading-h2 {
    display: block !important;
    margin-bottom: 30px;
    background: #ecf0f3;
    padding: 24px 5px;
    text-align: center;
    color: #0a246a;
    font-weight: bold;
}

.lp-layout-panel-heading-h3 {
    display: block !important;
    margin-bottom: 30px;
    background: #ecf0f3;
    padding: 24px 5px;
    text-align: center;
    color: #0a246a;
    font-weight: bold;
}

.lp-layout-faq .panel-default > .panel-heading {
    color: #002e5d;
    background-color: #f9f9f9;
}

.lp-layout-faq .panel-heading .accordion-toggle:after {
    color: #dc0069;
}

.lp-layout-faq .panel-default .question {
    margin: 5px 0 5px 0;
    line-height: 1.5;
    font-size: 16px;
    padding-right: 20px;
}

.lp-layout-faq .panel-body .answer {
    margin: 20px 15px;
    line-height: 2 !important;
    font-size: 16px
}

.lp-text-justify {
    text-align: justify;
}

.flex-vertical-center {
    align-items: center; /* Vertikální zarovnání */
}

@media (max-width: 992px) {
    .flex-vertical-center {
        display: block;
    }
}

@media (min-width: 992px) {
    .flex-vertical-center {
        display: flex;
    }
}

.flex-vertical-center > [class*='col-'] {
    display: block;
    flex-direction: column;
    justify-content: center; /* Volitelné: zarovná obsah uvnitř sloupce */
}

/************************* ******* start Layout ceo-box ****** **************************/

/*.ceo-box {*/
/*    !*max-width: 600px;*!*/
/*    width: 100%;*/
/*    margin: 0 auto;*/
/*    text-align: justify;*/
/*    font-size: 15px;*/
/*}*/

/*.ceo-box .slide-read-more {*/
/*    overflow: hidden;*/
/*}*/

/*.ceo-box .slide-read-more-button {*/
/*    cursor: pointer;*/
/*    text-align: left;*/
/*    margin-top: 8px;*/
/*    color: #488A8A;*/
/*    text-decoration: underline;*/
/*    padding: 0 15px;*/
/*}*/

/*.ceo-box .box-p-init {*/
/*    position: relative;*/
/*    height: 80px;*/
/*    padding: 0 15px;*/
/*}*/

/*.ceo-box .box-p-init-shadow {*/
/*    position: absolute;*/
/*    height: 17px;*/
/*    width: 100%;*/
/*    bottom: 0;*/
/*    -moz-box-shadow: inset 0 -10px 10px -4px #fff;*/
/*    -webkit-box-shadow: inset 0 -10px 10px -4px #fff;*/
/*    box-shadow: inset 0 -10px 10px -4px #fff;*/
/*}*/


/* Kontejner */
.ceo-box {
    --min-h: 82px;
    position: relative;
    text-align: left;
    /*max-width: 720px;*/
    margin: 1rem 0;
    background: #fff;
}

/* Obsah (sbalený stav) */
.box-p-init {
    overflow: hidden;
    position: relative;
    height: auto;            /* JS nastaví při sbalení výšku na MIN_HEIGHT */
    transition: height 0.35s ease;
    line-height: 1.6;
}

.ceo-box .box-p-init { height: var(--min-h); overflow: hidden; }

/* Fade-out překryv ve sbaleném stavu */
.box-p-init::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 54px; /* výška přechodu */
    background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
    pointer-events: none;
    opacity: 1;
    transition: opacity 0.25s ease;
}

.ceo-box.expanded .box-p-init { /* při rozbalení */
    height: auto;
}

/* Při rozbalení fade zmizí */
.ceo-box.expanded .box-p-init::after {
    opacity: 0;
}

/* Tlačítka */
.slide-read-more-button {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    margin-top: .5rem;
    cursor: pointer;
    user-select: none;
    color: #7ca0d0;
    font-weight: 600;
    line-height: 1;
}

.slide-read-more-button i { font-size: 1.1em; }

/* Pro button-like chování (pokud nejsou <button>) */
.slide-read-more-button[role="button"] {
    padding: .5rem .75rem;
    border-radius: .5rem;
}
.slide-read-more-button[role="button"]:hover {
    background: rgba(10,88,202,.06);
}
.slide-read-more-button[role="button"]:focus {
    outline: 2px solid rgba(10,88,202,.35);
    outline-offset: 2px;
}

/* Volitelné – centrovat tlačítka */
.ceo-box .controls {
    display: flex;
    gap: .5rem;
    align-items: center;
    justify-content: flex-start; /* dej center, pokud chceš centrovat */
}

.ceo-box .box-more-v-init {
    height: 35px;
}

.ceo-box .icon-dropdown-arrow {
    padding-left: 5px;
}

.ceo-h1 {
    text-align: center;
    line-height: 0.9;
    padding-bottom: 10px;
}

.ceo-h1 .h1-blue, .lp-layout-heading-h1 .h1-blue {
    color: #16315b;
}

.ceo-h1 .h1-pink, .lp-layout-heading-h1 .h1-pink {
    color: #df196a;
    font-size: 20px;
}

.ceo-box .ceo-h2 {
    color: var(--essens-blue);
    font-family: 'Roboto', sans-serif;
    font-size: 26px;
    font-weight: inherit;
    margin: 0;
    text-align: left;
    text-transform: none;
    position: relative;
    z-index: 3;
}

.ceo-box .ceo-h2:before, .ceo-box .ceo-h2:after {
    display: none;
}

.ceo-box ul li {
    list-style: initial;
}

.thumbnail-new .c_onstock {
    display: none;
}

.nav-justified-new a, .h-po a {
    color: var(--essens-blue);
    text-decoration: none;
}


/************************* ******* close Layout ceo-box ****** **************************/

/************************* ******* start Layout blog-box ****** **************************/

.blog-btn-primary {
    color: var(--essens-blue);
    background: #D5E8FF;
    border-color: #D5E8FF;
    border-radius: 0;
    margin-top: 0;
    padding: 10px 30px;
    font-size: 16px;
    font-weight: 600;
}

.blog-btn-primary:hover {
    color: var(--essens-blue);
    background: #D5E8FF;
    border-color: #D5E8FF;
}

.blog-line-auth {
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    display: flex;
    text-align: center;
}

@media (max-width: 1000px) {
    .blog-line-auth {
        background: #ecf0f3;
        padding: 10px 0;
    }
}

@media (min-width: 1000px) {
    .blog-line-auth {
    padding-top: 1.5rem !important;;
    }
}

.blog-line-auth > :not(:last-child)::after {
    margin: 0 0.5rem;
}

.blog-line-auth > :not(:last-child)::after {
    content: "/";
    display: inline-block;
    margin: 0 1rem;
    color: rgb(107, 107, 107);
}

@media (min-width: 62em) {
    .blog-line-auth:not(:empty)::before {
        margin-right: 1rem;
    }
}

@media (min-width: 62em) {
    .blog-line-auth:not(:empty)::after {
        margin-left: 1rem;
    }
}

@media (min-width: 62em) {
    .blog-line-auth::before, .blog-line-auth::after {
        content: "";
        flex: 1 1 0%;
        border-bottom: 1px solid rgb(225, 225, 225);
    }
}

.blog-line-auth p, .blog-line-auth a {
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 1.25rem;
    letter-spacing: 0;
    color: black;
    margin: 0;
}

.color-pink {
    color: var(--essens-pink);
}


/************************* ******* close Layout blog-box ****** **************************/

.xmas {
    margin: 7px;
    position: relative;
    padding: 0;
    border: 0;
    background: none;
}

.btn-xmas {
    border-radius: 999px;
    padding: 14px 35px;
    color: #9e906d;
    font-family: math;
    font-weight: 600;
    border: 2px solid transparent;
    background: linear-gradient(#043468, #043468) padding-box, linear-gradient(#9e906d, #9e906d) border-box;
    box-shadow: 0 0 0 3px #043468;
}

.btn-xmas:hover {
    color: white !important;
}

.btn-xmas2 {
    border-radius: 999px;
    padding: 14px 35px;
    color: #002e5d;
    font-family: math;
    font-weight: 600;
    border: 2px solid transparent;
    background: linear-gradient(#ffffff, #ffffff) padding-box, linear-gradient(#9e906d, #9e906d) border-box;
    box-shadow: 0 0 0 1px #043468;
    font-size: 15px;
}

.btn-xmas2:hover {
    color: #9e906d !important;
}

.xmas .darek {
    position: absolute;
    left: 0;
    right: 0;
    top: -17px;
}
.xmas .darek img {
    width: 28px;
    background: #ffffff;
    border-radius: 999px;
    padding: 3px;
}

.xmas .l-hv {
    position: absolute;
    left: 3px;
    bottom: 3px;
}

.xmas .l-hv img {
    width: 25px;
}

.xmas .p-hv {
    position: absolute;
    right: 0;
    top: -5px;
}

.xmas .p-hv img {
    width: 39px;
}


.bg-img-christ-l {
    background-image: url(//static.essensworld.com/images/xmas25/bg-christ-leva.svg);
    background-repeat: repeat-y;
    background-size: 6%;
}

.bg-img-christ-r {
    background-image: url(//static.essensworld.com/images/xmas25/bg-christ-prava.svg);
    background-repeat: repeat-y;
    background-size: 6%;
    background-position-x: right;
}