@import url('https://fonts.googleapis.com/css2?family=Englebert&family=Poppins:wght@200;400;500;600;800&display=swap');:root {--main-font-family: Poppins;--main-font-size: 12px;--main-bg: #fcf3d6;--main-color: #61111b;--second-bg: #fcf3d6;--third-bg: #fcf3d6;--second-color: #8c181e;--white: #ffffff;--header-home-background-color: transparent;--btn-transparent-color: #8c181e;--btn-transparent-hover-color: #ffffff;--btn-default-background: #ffffff;--btn-default-color: #8c181e;--btn-default-border-color: #ed1c24;--btn-default-border-size: 2px;--btn-default-border-radius: 48px;--btn-default-margin-x: 0px;--btn-default-margin-y: 6px;--btn-default-padding-x: 16px;--btn-default-padding-y: 12px;--btn-default-hover-background: #ed1c24;--btn-default-hover-color: #ffffff;--btn-default-hover-border-color: #ed1c24;--btn-primary-background: #61111b;--btn-primary-background-disabled: #b3887e;--btn-primary-color: #fef6e2;--btn-primary-border-color: #61111b;--btn-primary-border-size: 0px;--btn-primary-border-radius: 48px;--btn-primary-margin-x: 0px;--btn-primary-margin-y: 8px;--btn-primary-padding-x: 16px;--btn-primary-padding-y: 14px;--btn-primary-hover-background: #8c181e;--btn-primary-hover-color: #fef6e2;--btn-primary-hover-border-color: #8c181e;--day-available: #2f893a;--day-full: #ed1c24;--day-not-available: #cbac9c;--email-border-color: #ed1c24;--email-main-background: #9c0304;--email-text-font-color: #911914;--email-title-font-color: #61111b;--email-title-font-family: Englebert, Montserrat, Helvetica, Arial, sans-serif;--email-title-font-weight: 400px;--email-title-font-url: https://fonts.googleapis.com/css2?family=Englebert&display=swap;--email-button-text-color: #ffffff;--email-footer-font-color: #000000;--email-section-background: #fcf3d6;--email-copyright-font-color: #ffffff;--email-button-background-color: #61111b;}



html body {
    background: #fcf3d6 url('/custom/st-bruno/sparkles-cream.webp') center top / 380px auto repeat-y;
    font-family: 'Poppins', sans-serif;
}

html h1,
html h2,
html h3 {
    font-family: 'Englebert', sans-serif;
    font-weight: 400;
    color: #61111b;
}


html body.page-register form h2 {
    color: #e30613;
}

html h1 {
    font-size: 46px;
    line-height: 1.1;
}

html h2 {
    font-size: 30px;
}

html h2.video-year {
    border-bottom: 0;
}



html body > header[class] {
    min-height: min(53.7vw, 204px);
    margin-bottom: 0;
    background:
        url('/custom/st-bruno/sparkles-red.webp') center bottom / auto 100% repeat-x,
        radial-gradient(ellipse 110% 130% at 80% 10%, #a3060a 0%, #950204 45%, #4a0001 100%);
}

html body > header > div {
    display: none;
}


html body > header.login,
html body > header.schedules {
    margin-bottom: 45px;
}

html body > header.children {
    margin-bottom: 20px;
}

html body > header:before {
    top: 0 !important;
    height: min(73.7vw, 280px) !important;
    background-size: contain !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    z-index: 1 !important;
}

html body > header.home:before,
html body > header.welcome:before {
    background-image: url('/custom/st-bruno/santa-home.webp') !important;
}

html body > header.login:before {
    background-image: url('/custom/st-bruno/elf-login.webp') !important;
}

html body > header.schedules:before {
    background-image: url('/custom/st-bruno/santa-schedules.webp') !important;
}

html body > header.children:before {
    background-image: url('/custom/st-bruno/elf-children.webp') !important;
}


html body > header.video[class],
html body.page-register > header,
html body.page-me-edit > header,
html body.page-schedules-create > header {
    min-height: 60px;
    background: none;
}

html body > header.video:before,
html body.page-register > header:before,
html body.page-me-edit > header:before,
html body.page-schedules-create > header:before {
    display: none;
}


html body > header.video:before,
html body.page-me-edit > header:before {
    display: block;
    height: min(36.8vw, 140px) !important;
    background-image: url('/custom/st-bruno/sparkles-header.webp') !important;
}

html body:has(> header.video) #back,
html body:has(> header.video) #menu,
html body.page-register #back,
html body.page-me-edit #back,
html body.page-me-edit #menu,
html body.page-schedules-create #back,
html body.page-schedules-create #menu {
    color: #61111b;
    text-shadow: none;
}

html .container-small {
    position: relative;
    z-index: 2;
}

html #back {
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
}

html #back span {
    font-weight: 200;
}

html #menu {
    font-weight: 200;
}


html body.page-main .container-small > img.img-responsive,
html body.page-home .container-small > img.img-responsive {
    position: relative;
    margin-top: -1.5rem !important;
}


html .container-small img[src*="/custom/st-bruno/images/pere-rdv"] {
    display: block;
    width: min(64.7vw, 246px) !important;
    margin-left: auto;
    margin-right: auto;
}


html .btn-default,
html .btn-primary {
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

html .btn-default {
    border-width: 1px;
}

html .btn-primary {
    max-width: 240px;
    margin-left: auto;
    margin-right: auto;
}

html .page-login .btn-primary,
html body:has(> header.children) .btn-primary {
    background: #2f893a;
    border-color: #2f893a;
}

html .page-login .btn-primary:hover,
html body:has(> header.children) .btn-primary:hover {
    background: #25702e;
    border-color: #25702e;
    color: #fef6e2;
}

html .btn-transparent {
    color: #61111b;
}


html .form-control,
html .select2 {
    border: 1px solid #43266b;
    color: #61111b;
    padding: 10px 20px;
    font-size: 14px;
    text-align: center;
    text-align-last: center;
}

html .form-control::placeholder {
    color: #8c181e;
    opacity: 0.35;
}


html select.form-control:has(> option[value=""]:checked) {
    color: rgba(140, 24, 30, 0.35);
}

html select.form-control option {
    color: #61111b;
}

html .form-control:focus {
    border-color: #61111b;
    box-shadow: 0 0 0 3px rgba(97, 17, 27, 0.15);
}

html .page-login a,
html .page-login label {
    color: #61111b;
}

html .page-login form + a {
    font-weight: 500;
}


html .dates button {
    width: calc((100% / 3) - 10px);
    height: auto;
    margin: 4px 5px;
    padding: 4px 0;
    font-size: 18px;
    border: 1px solid #ed1c24;
    border-radius: 50px;
    background: #fff;
    color: #61111b;
}

html .dates button:hover:not([disabled]),
html .dates button.active {
    background: #61111b;
    border-color: #61111b;
    color: #fff;
}

html .dates button:focus:not([disabled]),
html .dates button.active {
    transform: none;
}

html .dates button.disabled,
html .dates button:disabled,
html .dates button:disabled.reserved {
    background: #cbac9c;
    border-color: #cbac9c;
    color: #ead9cc;
}


html .child,
html .schedule {
    border: 1px solid #ed1c24;
    border-radius: 16px;
    color: #61111b;
    font-size: 16px;
    text-align: left;
    text-align-last: auto;
}

html .child:hover,
html .schedule:hover {
    background: #fff;
    color: #61111b;
    border-color: #61111b;
}

html .schedule h3,
html .child h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 22px;
}


html .video {
    padding-top: 0;
}

html .video small {
    position: static;
    display: block;
    background: none;
    color: #61111b;
    padding: 0 0 8px;
}

html .video video,
html .video-js,
html .video-js .vjs-control-bar,
html .video-js .vjs-poster,
html .video-js .vjs-tech {
    border-radius: 20px;
}

html .video-js {
    overflow: hidden;
}

html .photo img {
    border-radius: 20px;
}

html .video .btn-default,
html .photo ~ div .btn-default,
html .share-btn {
    width: auto;
    padding: 8px 18px;
    font-size: 15px;
}


html nav {
    background: #0e5c0b url('/custom/st-bruno/menu-bg.webp') center / cover no-repeat;
}

html nav a.close {
    font-family: 'Poppins', sans-serif;
    font-weight: 200;
}

html nav .content a.btn.btn-default {
    font-size: 26px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
}

html nav .content a.btn.btn-default:hover {
    transform: scale(1.1);
}
