html {
overflow-x: hidden;
}
body {
	background-color: #fdf3ff;
	font-family: "Lato", serif;
	overflow-x: hidden;
}
a {
	color: #311F16;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
font-weight: 700;
}
.h1, h1 {
font-size: 2.1rem;
}
.h2, h2 {
font-size: 1.75rem;
}
.btn-group-lg > .btn, .btn-lg {
--bs-btn-padding-y: 1rem;
--bs-btn-padding-x: 1.25rem;
--bs-btn-font-size: 1.5rem;
}
.btn-primary {
	background: linear-gradient(180deg, #ecb1dd 0%, #c44994 50%, #ffa3b5 100%);
	color: #fff;
	border: 2px solid #d795c9;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25), 0 4px 18px rgba(200, 150, 60, 0.25);
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.3);
	font-weight: 600;
	transition: all 0.25s ease-in-out;
}

.btn-primary:hover {
  background: linear-gradient(180deg, #ffa3b5 0%, #c44994 50%, #ecb1dd 100%);
  border-color: #d795c9;
  box-shadow:
    0 0 0 2px rgba(255, 245, 200, 0.4),
    0 6px 26px rgba(210, 160, 60, 0.4),
    inset 0 0 0 1px rgba(255, 255, 255, 0.4);
  transform: scale(1.06);
  color: #fff;
  text-shadow: none;
}

#dynamic-el .btn-primary {
	font-size: 1.25rem;
}
p, ol, #legal ul, summary {
	font-size: 1.2rem;
}
.form-check-input:checked {
background-color: #45a801;
border-color: #45a801;
}
.text-primary {
	color: #240d4b !important;
}
.bg-secondary {
	background-color: #ede6ff !important;
}
header {
background: url('../img/header.webp') center center no-repeat scroll;
background-size: cover;
height: 300px;
overflow: hidden;
}
header p {
	font-size: 1.5rem;
	position:relative;
  z-index: 1;
}
.navbar-brand {
width: 350px;
position:relative;
  z-index: 1;
}
.navbar-brand::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 200%;
	height: 400%;
	transform: translate(-50%, -50%);
	background: radial-gradient(circle, rgba(0, 0, 0, 0.6) 0%, transparent 70%);
	z-index: -1;
	pointer-events: none;
}
#porteur {
	position: absolute;
	width: 500px !important;
	top: -150px;
	left: 50px;
}
#right {
max-width: 410px;
}
#form {
	background: linear-gradient(135deg, #815c89, #5a2e70);
	padding: .5rem 1rem 1rem;
}
#form::before {
content: '';
background: url("../img/deco.webp") center TOP no-repeat scroll;
background-size: cover;
width: 100%;
height: 400px;
position: absolute;
top: -40px;
left: 0;
z-index: -1;
}
#form.shadow-lg {
	box-shadow: 0 0 30px rgb(192, 178, 222) !important;
}
#form .btn.shadow {
	box-shadow: 0 .5rem 1rem rgb(35, 13, 74) !important;
}
.form-label {
font-size: 1.2rem;
}
.form-select {
	padding-right: 2rem;
}
li .bi {
position: relative;
bottom: -2px;
}
#testimonials img {
max-width: 50px;
}
#testimonials .bi-quote {
opacity: .4;
top: 10px;
right: 20px;
}
.stars {
color: #ffc107;
}
#dynamic-el {
width: 100%;
bottom: 0;
left: 0;
z-index: 1050;
display:none;
}
.deco::after {
content: '';
position: absolute;
background: url("../img/surlignage.webp") center top no-repeat scroll;
width: 300px;
height: 10px;
bottom: -8px;
left: 10px;
}
#legal .card {
--bs-card-bg: #ffffff7d !important;
}
#testimonials .card {
	border: 3px solid #e0e2e2 !important;
}
.card-body {
background: rgba(255,255,255,.05);
}
#testimonials .card-body {
	background: #f9f7ff;
}
summary  {
font-weight: bold;
}
.photo {
float: left;
max-width: 150px;
margin-right: 15px;
}
.form-select-lg, .form-control-lg {
	font-size: 1.15rem;
}
.popover {
	position: absolute;
	top: 20px !important;
	left: 0 !important;
	width: 175px;
	font-size: .7rem;
  z-index: 9999;
}
.popover.show {
	z-index: 1;
}
#text-request {
	max-width: 530px;
	margin: 0 auto;
}
#btn-messagerie {
	font-size: 1.25rem;
	width: 100%;
	max-width: 298px;
}
#btn-messagerie img {
	border-radius: 50%;
	width: 30px;
	height: 30px;
	padding: 5px;
	background: #dbdbdb;
}
footer {
padding-bottom: 100px;
}
.gift {
	max-width: 400px;
}
.lead {
	font-weight: 500;
}
#infoIcon {
	cursor: pointer;
	color:white !important;
  position: relative;
  z-index: 999;
  pointer-events: auto;
}


/* Media queries */
@media (min-width: 1400px) {
.container {
max-width: 1200px;
}
header .container{
max-width: 1320px;
}
}
@media (max-width: 1399px) {
#porteur {
width: 450px !important;
left: 0;
}
}
@media (max-width: 1199px) {
header {
background: url('../img/header.webp') center bottom no-repeat scroll;
background-size:cover;
}
#porteur {
width: 400px !important;
left: -50px;
}
}
@media (max-width: 991px) {
#porteur {
width: 300px !important;
left: -80px;
top: -100px;
}
#form::before {
top: -20px;
}
.h1, h1 {
font-size: 1.75rem;
}
.h2, h2 {
font-size: 1.5rem;
}
#form h2 {
font-size: 2rem;
}
p, ol, #legal ul, summary {
	font-size: 1.05rem;
}
.deco::after {
display:none;
}
.photo {
max-width: 110px;
}
#right {
max-width: 100%;
}
.navbar-brand::before {
	top: 50%;
}
}
@media (max-width: 767px) {
header {
height: 200px;
}
#porteur {
width: 200px !important;
left: -40px;
top: -40px;
}	
header p {
	font-size: 1.15rem;
	width: 350px;
}
}
@media (max-width: 480px) {
.navbar-brand, header p {
	width: 240px;
}
header {
height: 150px;
}
#form {
padding: .5rem 0 0;
}
}
@media (max-width: 414px) {
.navbar-brand, header p {
	width: 220px;
}
}
