.offers .offers-list {
	padding: 2.25rem 0;
	font-size: 1em;
	width: 16em;
	margin: 0 auto;
	text-align: center;
	max-width: 80rem;
}

.offers li.offers-item {
	display: inline-block;
	text-align: center;
	width: 100%;
	padding: 0.5rem;
	margin-bottom: 4.5rem;
	vertical-align: top;
}

.offers li.offers-item:before {
	display: none;
}

.offers li.offers-item .offer {
	display: inline-block;
	max-width: 22rem;
}

.offers .offer {
	color: #222222;
}

.offers .offer a.bt:hover {
	background-color: rgba(255, 255, 255, 0.25);
	color: currentColor;
}

.offers .offer-header {
	position: relative;
	text-align: center;
	margin: 0;
	font-family: "open sans", arial;
	background-color: #383838;
	color: #FFF;
	border-radius: 0.5em;
	border: solid 1px #222222;
	font-size: 1em;
	text-transform: none;
}

.offers .offer-header .bt {
	display: block;
	color: currentColor;
}

.offers .offer-header .bt:before {
	content: '';
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 100%;
}

.offers .offer-header a.bt > i {
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
	font-size: 1.5em;
}

.offers .offer-name {
	position: absolute;
	top: 1.5em;
	font-size: 1.1em;
	line-height: 1.25;
	left: 0;
	width: 100%;
	padding: 0 1em;
	text-transform: uppercase;
	font-weight: 600;
}

.offers .offer-price {
	position: absolute;
	bottom: 3em;
	line-height: 1;
	left: 0;
	width: 100%;
	padding: 0 1em;
}

.offers .offer-price .suspended {
	font-style: italic;
	font-weight: normal;
	font-size: 0.8em;
}

.offers .offer-price-label {
	font-size: 2em;
	font-weight: 600;
}

.offers .offer-price-from {
	font-size: 0.35em;
	position: absolute;
	bottom: 100%;
	text-transform: uppercase;
}

.offers .offer-price-period {
	font-size: 0.5em;
}

.offers .offer-legend {
	position: absolute;
	bottom: 0.5em;
	left: 0;
	width: 100%;
	font-size: 0.65em;
	text-align: left;
	padding-left: 0.5em;
	font-weight: normal;
}

.offers .offer-premium {
	position: absolute;
	text-indent: -9999px;
	bottom: 0;
	left: 3em;
	color: #140002;
}

.offers .offer-premium:before {
	text-indent: 0;
	position: absolute;
	left: 50%;
	top: 50%;
	font-size: 3em;
	margin: -0.5em;
	text-shadow: 0 0 0.25em rgba(255, 255, 255, 0.25);
}

.offers .offer-taxes {
	text-align: center;
	padding: 0.25em 0 0.5em;
}

.offers .offer-taxes-label {
	color: #000000;
	text-shadow: 0 0 1em #FFFFFF;
	font-style: italic;
	font-size: 0.8em;
}

.offers .offer-action {
	background-color: #383838;
	border-radius: 0.5em;
	border: solid 1px #222222;
	color: #FFF;
}

.offers .offer-action .bt {
	color: currentColor;
	display: block;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 600;
	padding: 0.5em 1em;
}

.offers .offer-details {
	color: #222222;
	font-weight: 600;
	font-style: italic;
	font-size: 0.8em;
	padding: 1em 0 1em 0;
	height: 6em;
}

.offers .offer-details span {
	color: #222222;
	text-transform: uppercase;
	font-weight: 700;
}

.offers .offers-item.free {
	display: block;
	margin: 0 auto;
}

.offers .offers-item.free .offer-header,
.offers .offers-item.free .offer-action {
	background-color: #EEE;
}

.offers .offers-item.free .offer-details span {
	color: #000000;
	text-transform: none;
}

.offers .offers-item.free .offer-header {
	color: #666666;
	border-color: #666666;
}

.offers .offers-item.free .offer-header .bt:before {
	padding-bottom: 42%;
}

.offers .offers-item.packperf .offer-header,
.offers .offers-item.packperf .offer-action {
	border-width: 4px;
	margin: -3px;
	border-color: #FFF;
	box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.25);
}

.offers .offers-item.packperf .offer-name {
	font-size: 1.25em;
}

.offers .offers-item.packperf .offer-price {
	font-size: 1.25em;
	bottom: 2.5em;
}

.offers .offers-item.packperf .offer-header,
.offers .offers-item.packperf .offer-action {
	background-color: #222222;
}

.offers .offers-item.perf .offer-header,
.offers .offers-item.perf .offer-action,
.offers .offers-item.social .offer-header,
.offers .offers-item.social .offer-action {
	background-color: #4e4e4e;
}

.offers-section {
	position: relative;
	margin: 0 -1.5rem;
}

.offers-section::after {
	clear: both;
	content: "";
	display: table;
}

.offers-section.perfSocial:before {
	background-image: url("../../../images/offres-01.jpg");
}

.offers-section.homeBoxes:before {
	background-image: url("../../../images/offres-03.jpg");
}

.offers-section.campPub:before {
	background-image: url("../../../images/offres-04.jpg");
}

.offers-section.part:before {
	background-image: url("../../../images/offres-02.jpg");
}

.offers-section.reportage:before {
	background-image: url("../../../images/offres-29.jpg");
}

.offers-section.newsletter:before {
	background-image: url("../../../images/offres-42.jpg");
}

.offers-section.netlinking:before {
	background-image: url("../../../images/offres-35.jpg");
}

.offers-section:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-size: cover;
	background-position: center center;
	opacity: 0.25;
}

.offers-section:nth-child(2n+1):before {
	display: none;
}

.offers-section-content {
	position: relative;
	max-width: 78rem;
	margin: 0 auto;
	padding: 2.25rem 1.5rem;
}

.offers-section-content .offer-punchline {
	color: #000000;
}

.offers-section-content .offer-punchline p {
	text-align: center;
	line-height: 1.25;
	font-weight: 600;
	font-size: 1em;
}

.offers-section-content .offer-punchline p > span {
	text-transform: uppercase;
	font-weight: 700;
}

.offers-section-content .offer {
	width: 15em;
	margin: 0 auto;
}

.offers-section-content .offer.new .offer-header:before {
	position: absolute;
	color: #222222;
	background: #FFFFFF;
	font-size: 0.8em;
	font-weight: normal;
	text-transform: uppercase;
	padding: 0.25em 0.5em;
	border-radius: 0.25em;
	top: 0;
	right: 0;
	box-shadow: 0 0.25em 0.25em 0 rgba(0, 0, 0, 0.15);
	transform: translate(25%, 25%) rotate(5deg);
}

html[lang=fr] .offers-section-content .offer.new .offer-header:before {
	content: 'Nouveau';
}

html[lang=en] .offers-section-content .offer.new .offer-header:before {
	content: 'New';
}

html[lang=es] .offers-section-content .offer.new .offer-header:before {
	content: 'Nuevo';
}

@media only print, only screen and (min-width: 30.063em) {

.offers .offers-list {
	width: auto;
	font-size: 3vw;
}

.offers li.offers-item {
	width: 50%;
	margin-bottom: 2.25rem;
}

.offers .offers-item.perf {
	float: left;
}

.offers-section-content .offer-punchline p {
	font-size: 1.5em;
}

.offers-section-content .offer-punchline .button {
	font-size: 0.8em;
}

.offers-section-content .offer {
	width: auto;
	max-width: 21rem;
	font-size: 1.25rem;
}

}

@media only print, only screen and (min-width: 48.063em) {

.offers .offers-list {
	font-size: 1.5rem;
}

.offers .offer-header a.bt > i {
	font-size: 1em;
}

.offers-section-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1.5rem 3rem;
}

.offers-section-content .offer-punchline {
	width: 75%;
	order: 2;
	padding-bottom: 2rem;
}

.offers-section-content .offer {
	font-size: 2vw;
	width: 50%;
	order: 1;
	margin: 0 3rem 0 0;
}

.perfSocial .offers-section-content .offer,
.campPub .offers-section-content .offer,
.reportage .offers-section-content .offer,
.netlinking .offers-section-content .offer {
	order: 3;
	margin: 0 0 0 3rem;
}

}

@media only print, only screen and (min-width: 60.063em) {

.offers .offers-list {
	font-size: 2vw;
}

.offers li.offers-item {
	width: 33.3333%;
}

.offers .offer-legend {
	font-size: 0.8rem;
}

.offers .offers-item.perf .offer-header,
.offers .offers-item.perf .offer-action,
.offers .offers-item.social .offer-header,
.offers .offers-item.social .offer-action {
	transform: scale(0.95);
}

.offers-section:not(.offers-essentials):before {
	display: block !important;
	top: 4.5rem;
	bottom: 7.5rem;
}

}

@media only print, only screen and (min-width: 75.063em) {

.offers .offers-list {
	font-size: 1.5rem;
}

.offers-section-content .offer {
	font-size: 1.5rem;
}

}

@media only print, only screen and (min-width: 100.063em) {

.offers-section {
	width: 100vw;
	margin: 0;
	margin-left: calc((100vw - 100em) / -2 - 1rem);
}

}

