@font-face {
    font-family: 'nunitoregular';
    src: url('fonts/nunito-regular-webfont.ttf'),
    url('fonts/nunito-regular-webfont.woff2') format('woff2'),
    url('fonts/nunito-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

.hide {
    display: none !important;
}

wr-slider {
    display: block;
    width: 100%;
    height: 100%;
}

wr-slider > [wr-slide] {
    width: 100%;
    height: 100%;
    margin: auto;
    overflow: auto;
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    left: 0;
    background: #000;
    color: #fff;
}

wr-slider > [wr-slide] > .container {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
}

wr-slider > [wr-slide] > .container.container-flex {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    font-weight: bold;
    justify-content: center;
    overflow: hidden;
}

wr-slider .fill {
    object-fit: contain;
    height: 100%;
    width: 100%;
}

/** slide image **/
wr-image img {
    max-height: 100%;
    max-width: 100%;
}

/** slide vidéo **/
wr-video video {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    left: 0;
}

/** slide texte **/
wr-text .title {
    font-size: 8.1em;
}

wr-text .content {
    font-size: 2.8em;
}

wr-text .title + .content {
    margin-top: 2em;
}

/** slide météo **/
wr-slider > wr-weather[wr-slide] {
    color: #000;
    font-family: 'nunitoregular', 'Helvetica Neue', Arial, Helvetica, Geneva, sans-serif;
}

wr-slider > wr-weather[wr-slide] > .container {
    background: url('img/weather-bg.jpg') no-repeat center center fixed;
    background-size: cover;
}

wr-weather .location {
    font-size: 4.9vw;
    font-weight: bold;
    padding: 1vw;
    color: #fcfcfc;
}

wr-weather .days {
    padding: 0 2vw 2vw;
    display: flex;
    flex-direction: column;
    height: 85vh;
    justify-content: space-between;
}

wr-weather .day-title {
    font-size: 3.5vh;
    color: #fff;
    font-weight: bold;
    text-align: left;
    vertical-align: middle;
    background: rgba(90, 90, 90, 0.8);
    padding: 0.2vw;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

wr-weather .hour-moment {
    font-size: 2.8vh;
    text-align: center;
}

wr-weather .hour-blocks {
    display: flex;
    overflow: hidden;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    box-shadow: 10px 10px 30px 0 #333;
}

wr-weather .hour-block {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    flex-basis: 0;
    font-size: 4.5vh;
    background: rgba(205, 205, 205, 0.8);
    padding: 0.2vw;
    border-left: 2px #666 solid;
}

wr-weather .hour-block:first-child {
    border: none;
}

wr-weather .hour-picto {
    display: flex;
    justify-content: center;
    align-items: center;
}

wr-weather .hour-picto img {
    max-height: 9vh;
    padding-right: 0.5vw;
}

wr-weather .source {
    background-color: rgba(255, 255, 255, 0.8);
    height: 30px;
    padding: 5px 15px;
    font-size: 20px;
    text-align: right;
    bottom: 0;
    right: 0;
    position: fixed;
    color: #000;
    font-weight: bold;
    border-radius: 15px 0 0 0;
}

.weather-picto-freezing_fog {
    content: url('img/weather/freezing_fog.png');
}

.weather-picto-few_clouds {
    content: url('img/weather/few_clouds.png');
}

.weather-picto-thunderstorm {
    content: url('img/weather/thunderstorm.png');
}

.weather-picto-scattered_clouds {
    content: url('img/weather/scattered_clouds.png');
}

.weather-picto-rain {
    content: url('img/weather/rain.png');
}

.weather-picto-light_rain {
    content: url('img/weather/light_rain.png');
}

.weather-picto-moderate_snow {
    content: url('img/weather/moderate_snow.png');
}

.weather-picto-fog {
    content: url('img/weather/fog.png');
}

.weather-picto-thunder {
    content: url('img/weather/thunder.png');
}

.weather-picto-icy_rain {
    content: url('img/weather/icy_rain.png');
}

.weather-picto-cloudy {
    content: url('img/weather/cloudy.png');
}

.weather-picto-snow, .weather-picto-light_snow {
    content: url('img/weather/light_snow.png');
}

.weather-picto-broken_clouds {
    content: url('img/weather/broken_clouds.png');
}

.weather-picto-moderate_rain {
    content: url('img/weather/moderate_rain.png');
}

.weather-picto-shower_rain {
    content: url('img/weather/shower_rain.png');
}

.weather-picto-snow_shower {
    content: url('img/weather/snow_shower.png');
}

.weather-picto-grey_clouds {
    content: url('img/weather/grey_clouds.png');
}

.weather-picto-clear_sky {
    content: url('img/weather/clear_sky.png');
}

.weather-picto-strong_snow {
    content: url('img/weather/strong_snow.png');
}

/** slide page web **/
wr-webpage webview {
    width: 100%;
    height: 100%;
    border: none;
    overflow: auto;
    overflow-y: hidden;
    z-index: 10;
}

wr-webpage .hide-cursor {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    cursor: none;
    z-index: 100;
}

/** slide flux rss **/
wr-slider > wr-feed[wr-slide] {
    overflow: hidden;
}

wr-slider > wr-feed[wr-slide] > .container {
    background: url('img/feed-bg.png') no-repeat center center fixed;
    background-size: cover;
    padding: 1vw;
}

wr-feed .feed-icon {
    content: url('img/rss.png');
}

wr-feed .feed-title {
    font-size: 3vw;
    font-weight: bold;
    color: #fcfcfc;
    text-align: center;
}

wr-feed .feed-title .feed-icon {
    max-height: 86px;
    vertical-align: middle;
}

wr-feed .feed-columns {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    padding: 1vw;
}

wr-feed .feed-column {
    flex: 1;
}

wr-feed .feed-column:nth-child(odd) {
    margin-right: 1vw;
}

wr-feed .feed-column:nth-child(even) {
    margin-left: 1vw;
}

wr-feed .feed-item {
    background-color: rgba(255, 255, 255, 0.8);
    width: 100%;
    color: #25338F;
    border: 1px solid #CCC;
    border-radius: 8px;
    box-shadow: 5px 5px 20px #333;
    margin-bottom: 2vw;
    padding: 1vh;
}

wr-feed .item-title {
    margin-bottom: 0.2em;
    font-size: 3.5vh;
}

wr-feed .item-title .feed-icon {
    max-height: 50px;
    vertical-align: middle;
}

wr-feed .item-description {
    font-size: 2.6vh;
}

wr-feed .feed-error-message {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70vh;
}

wr-feed .feed-error-message > p {
    width: 95vw;
    color: #25338F;
    padding: 1vw;
    border: 1px solid #CCC;
    border-radius: 8px;
    box-shadow: 15px 15px 40px #333;
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 2.6vh;
    text-align: center;
}

wr-feed .feed-cache-message {
    text-align: center;
    font-size: 2.2em;
    color: #25338F;
    padding: 1vw 1vw 0.5vw;
}

wr-feed .feed-cache-message .feed-item {
    margin-bottom: 0;
}

/** slide horoscope **/
wr-slider > wr-horoscope[wr-slide] {
    color: #000;
    font-family: 'ABeeZee', sans-serif;
}

wr-slider > wr-horoscope[wr-slide] > .container {
    background: url('img/horoscope-bg.jpg') no-repeat center center fixed;
    background-size: cover;
}

wr-horoscope .horoscope-day-label {
    font-size: 9vh;
    font-weight: bold;
    margin-bottom: 2vh;
    padding: 0.5vh 0 0 2vw;
    color: #fcfcfc;
}

wr-horoscope .horoscope-body {
    padding: 0 25px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

wr-horoscope .horoscope-zodiac {
    min-height: 1px;
    margin: 0 5px 25px;
    width: 31vw;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 20px;
    border-radius: 15px;
}

wr-horoscope .horoscope-signe {
    height: 6vh;
    line-height: 6vh;
    font-size: 5vh;
    display: flex;
    margin: 0 0 10px;
    font-weight: bold;
}

wr-horoscope .horoscope-signe img {
    max-height: 6vh;
    max-width: 6vh;
}

wr-horoscope .horoscope-content {
    font-size: 4vh;
    letter-spacing: -2px;
}

wr-horoscope .horoscope-source {
    background-color: rgba(255, 255, 255, 0.8);
    height: 30px;
    padding: 5px 15px;
    font-size: 20px;
    text-align: right;
    bottom: 0;
    right: 0;
    position: absolute;
    color: #000;
    font-weight: bold;
    border-radius: 15px 0 0 0;
}

.horoscope-error-message {
    background-color: rgba(255, 255, 255, 0.8);
    color: #000;
    font-size: 40px;
    text-align: center;
    margin-top: 15%;
    padding: 80px 0 80px 0;
    border-radius: 15px;
    margin-left: 5%;
    width: 90%;
    height: 90%;
}

.horoscope-capricorne {
    color: #7A2093;
}

.horoscope-verseau {
    color: #0096E6;
}

.horoscope-poissons {
    color: #FFA500;
}

.horoscope-belier {
    color: #D25627;
}

.horoscope-taureau {
    color: #7A3726;
}

.horoscope-gemeaux {
    color: #005900;
}

.horoscope-cancer {
    color: #F29C1F;
}

.horoscope-lion {
    color: #E57E25;
}

.horoscope-vierge {
    color: #4FBA6F;
}

.horoscope-balance {
    color: #2FA8CC;
}

.horoscope-scorpion {
    color: #AF8066;
}

.horoscope-sagittaire {
    color: #E64C3C;
}

.horoscope-img-capricorne {
    content: url('img/horoscope/capricorne.png');
}

.horoscope-img-verseau {
    content: url('img/horoscope/verseau.png');
}

.horoscope-img-poissons {
    content: url('img/horoscope/poissons.png');
}

.horoscope-img-belier {
    content: url('img/horoscope/belier.png');
}

.horoscope-img-taureau {
    content: url('img/horoscope/taureau.png');
}

.horoscope-img-gemeaux {
    content: url('img/horoscope/gemeaux.png');
}

.horoscope-img-cancer {
    content: url('img/horoscope/cancer.png');
}

.horoscope-img-lion {
    content: url('img/horoscope/lion.png');
}

.horoscope-img-vierge {
    content: url('img/horoscope/vierge.png');
}

.horoscope-img-balance {
    content: url('img/horoscope/balance.png');
}

.horoscope-img-scorpion {
    content: url('img/horoscope/scorpion.png');
}

.horoscope-img-sagittaire {
    content: url('img/horoscope/sagittaire.png');
}

/** slide éphéméride **/
wr-slider > wr-ephemeris[wr-slide] {
    color: #000;
    font-family: 'ABeeZee', sans-serif;
    font-size: 6vh;
}

wr-slider > wr-ephemeris[wr-slide] > .container.container-flex {
    flex-direction: row;
    background: url('img/ephemeris-bg.jpg') no-repeat center center fixed;
    background-size: cover;
}

wr-ephemeris .ephemeris-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.9);
    width: 45vw;
    height: 65vh;
    margin: auto;
    border-radius: 25px;
    padding: 20px 5px;
}

wr-ephemeris .ephemeris-date-label {
    font-weight: bold;
    font-size: 8vh;
    line-height: 11vh;
}

wr-ephemeris .ephemeris-body {
    font-weight: bold;
    color: #005F00;
}

wr-ephemeris .ephemeris-dayweekyear-label {
    font-size: 6vh;
    font-weight: bold;
}

wr-ephemeris .ephemeris-moon-label {
    margin-left: 1.6vw;
}

wr-ephemeris .ephemeris-moon {
    display: flex;
}

wr-ephemeris .ephemeris-sunrise,
wr-ephemeris .ephemeris-sunset {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    font-weight: bold;
}

wr-ephemeris .ephemeris-sunrise {
    margin-bottom: 2vh;
}

.ephemeris-img-sunrise {
    content: url('img/ephemeris/sunrise.png');
    max-width: 9vw;
}

.ephemeris-img-sunset {
    content: url('img/ephemeris/sunset.png');
    max-width: 10vw;
}

.ephemeris-img-first-quarter {
    content: url('img/ephemeris/first-quarter.png');
    max-height: 7vh;
}

.ephemeris-img-full-moon {
    content: url('img/ephemeris/full-moon.png');
    max-height: 7vh;
}

.ephemeris-img-last-quarter {
    content: url('img/ephemeris/last-quarter.png');
    max-height: 7vh;
}

.ephemeris-img-new-moon {
    content: url('img/ephemeris/new-moon.png');
    max-height: 7vh;
}

.ephemeris-img-waning-crescent {
    content: url('img/ephemeris/waning-crescent.png');
    max-height: 7vh;
}

.ephemeris-img-waning-gibbous {
    content: url('img/ephemeris/waning-gibbous.png');
    max-height: 7vh;
}

.ephemeris-img-waxing-crescent {
    content: url('img/ephemeris/waxing-crescent.png');
    max-height: 7vh;
}

.ephemeris-img-waxing-gibbous {
    content: url('img/ephemeris/waxing-gibbous.png');
    max-height: 7vh;
}

/** bandeaux défilants **/
.wr-slider-ticker {
    color: #fff;
    background: #000;
    position: absolute;
    bottom: 30px;
    z-index: 1337;
    width: 100%;
    height: 90px;
    overflow: hidden;
    -webkit-transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
}

.wr-slider-ticker p {
    white-space: nowrap;
    position: relative;
    display: inline-block;
    overflow: hidden;
    top: 7px;
    font-size: 60px;
    -webkit-animation: linear infinite;
    -webkit-animation-duration: 20s;
    -webkit-animation-name: movement-smooth;
    -webkit-animation-direction: normal;
    -webkit-transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes movement-smooth {
    from {
        -webkit-transform: translateX(0%);
        left: 100%;
    }
    to {
        -webkit-transform: translateX(-100%);
        left: 0;
    }
}
