body { color: #212529; font-size: 1.1em; font-weight: 300; }
article { min-height: 600px; }
h1 { font-size: 2em; text-transform: uppercase; text-align: center; line-height: 1.3em; margin-top: 30px; margin-bottom: 30px; color: #000; }
h2 { font-size: 1.5em; text-transform: uppercase; margin-top: 50px; margin-bottom: 30px; }
h3 { font-size: 1.1em; text-transform: uppercase; margin-top: 20px; margin-bottom: 20px; }
li { line-height: 1.8em; }
strong { font-weight: 500; }
.source-caption { font-size: 0.8em; line-height: 0.5em; }
p.section-title { font-size: 1em; text-transform: uppercase; font-weight: bold; }
p.txt-white { color: #FFF; }

/* Backgrounds */
.grey-bg { background-color: #777; }
.image-hero-100 { min-height: 100px; }
.image-hero-100 img { max-height: 300px; }

/* Header (navbar) */
.navbar { background-color: #E1432C; }
.nav-item { text-transform: uppercase; font-weight: bold; }
.nav-item a, .nav-item a:hover, .nav-item a:focus, .nav-item a:visited { color: #FFF; }

/* Footer */
footer { margin-top: 50px; background-color: #E1432C; color: #FFF; padding-top: 50px; padding-bottom: 50px; }

/* Links */
a { color: #E1432C; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s; text-decoration: underline; font-weight: 600; }
a.unstyled { text-decoration: none; }
a:focus, a:hover { color: #E1432C; }
a.txt-white { color: #FFF; text-decoration: underline; }
a.txt-white:focus, a.txt-white:hover { color: #FFF; }
h1 a.unstyled { color: #000; text-decoration: none; }

/* Links with pill design */
/*.keyword-pill-container { display: inline-grid; overflow-x: scroll; overflow-y: auto; }*/
.keyword-pill-row { display: inline-flex; flex-wrap: wrap; overflow-y: hidden; flex-direction: row; }
a.keyword-pill { display: inline-flex; color: #777; font-size: 0.7em; text-transform: uppercase; font-weight: bold; border: 1px solid #777; border-radius: 50rem; padding: 0.5em 1em; margin-top: 5px; margin-left: 3px; }
a.keyword-pill:focus, a.keyword-pill:hover { background-color: #E1432C; border-color: #E1432C; color: #FFF; }

/* Circle logos listing */
.listing .list-inline-item:nth-child(1n+2) { margin-left: -2em; }

/* Buttons */
.btn, .btn:hover, .btn:focus, .btn:visited { background-color: #E1432C; color: #FFF; text-transform: uppercase; font-weight: bold; line-height: 2em; padding: 10px; }
.btn-lined, .btn-lined:hover, .btn-lined:focus, .btn-lined:visited { border: 5px solid #E1432C; color: #E1432C; text-transform: uppercase; font-weight: bold; line-height: 2em; padding: 10px; border-radius: 10px; }
.cta-box-btn, .cta-box-btn:hover, .cta-box-btn:focus, .cta-box-btn:visited { background-color: #FFF !important; color: #E1432C !important; text-transform: uppercase; font-weight: bold; line-height: 2em; padding: 10px; }

/* Highlights */
.highlight { background-image: linear-gradient(120deg, #f1b0a5 0%, #f1b0a5 40%); background-repeat: no-repeat; background-size: 100% 0.4em; background-position: 0 90%; padding: 0 5px 0 5px; }

/* Tables */ 
.table-borderless td, .table-borderless th { border: none; }

/* List groups */
.list-group-unstyle li { border: none !important;}

/* Margin & Padding */ 
.mg-bt-20 { margin-bottom: 20px; }
.mg-top-20 { margin-top: 20px; }
.mg-all-10 { margin: 10px; }
.mg-all-20 { margin: 20px; }
.mg-left-20 { margin-left: 20px; }
.mg-right-20 { margin-right: 20px; }
.no-mg { margin: 0 !important;}
.mg-bt-100 { margin-bottom: 100px; }
.mg-top-100 { margin-top: 100px; }

.pd-bt-20 { padding-bottom: 20px; }
.pd-top-20 { padding-top: 20px; }
.pd-all-20 { padding: 20px; }

/* Accordions */
.accordion-header button { color: #212529 !important; text-transform: uppercase; font-weight: 500; }
.accordion-button, .accordion-button:not(.collapsed) { background-color: #EEE; }

/* Carousel */
.carousel-indicators button { background-color: #E1432C !important; }

/* Cards */
.card { border: 5px solid #EEE; }
.card-recommanded { border: 5px solid #E1432C; }
.card-title { font-size: 1em; font-weight: bold; text-transform: uppercase; color: #E1432C; }
.card-text { font-size: 0.9em; font-weight: normal; }

.shop-card { min-height: 330px !important; }

.cluster-card { color: #FFF !important; font-weight: bold; padding: 1em; border-radius: 0.5em; }
.cluster-card h3 { color: #FFF !important; padding-bottom: 1em; }

.author-card { border: 5px solid #E1432C; background-color: #E1432C; }
.author-card img { border: 5px solid #EEE; }

.grey-bg-card { border: 5px solid #EEE; background-color: #EEE; }
.grey-bg-card img { border: 5px solid #EEE; }

.review-rate-card { border: 5px solid #E1432C; background-color: #E1432C; color: #EEE; }
.review-rate-card .rate-label { font-size: 0.8em; font-weight: 500; text-transform: uppercase; }
.review-rate-card .rate-score { font-size: 1.4em; font-weight: 700; line-height: 1.1em; }

.product-card .card-title { width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.product-card .card-text { height: 9em; overflow: hidden; text-overflow: ellipsis; }

/* Images */
.img-rounded { border-radius: 1rem; }
.img-circle { border-radius: 50rem; }
.related-pill { width: 80px; height: 80px; -webkit-border-radius: 80px; -webkit-background-clip: padding-box; -moz-border-radius: 80px; -moz-background-clip: padding; border-radius: 80px; border: 5px solid #E1432C; background-clip: padding-box; margin-left: auto; margin-right: auto; float: left; background-size: cover; background-position: center center;
}

/* Badges */
.badge-partner { background-color: #E1432C; }
.badge-partner-white { background-color: #FFF; color: #E1432C; }
.badge-recommandation { background-color: #E1432C; position: absolute; top: 10px; left: 10px; }
.badge-opening-hours { color: #212529; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.opened-circle { margin-right: 5px; border-radius: 99px; height: 8px; width: 8px; background-color: rgb(108, 155, 125); display: inline-flex; flex-shrink: 0; }
.closed-circle { margin-right: 5px; border-radius: 99px; height: 8px; width: 8px; background-color: #E1432C; display: inline-flex; flex-shrink: 0; }
.badge-categories { color: #212529; font-size: 0.8em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; background-color: #EEE; padding: 5px; }

/* CTA Box */
.cta-box { background-color: #E1432C; color: #FFF; border-radius: 8px; padding: 20px; }
.cta-box-title { font-size: 1.5em; text-transform: uppercase; }


/* Bonus Button */
#actionButton { display: none; font-size: 24px; }