/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[3]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[4]!./assets/styles/app.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* Variables CSS personnalisées */
:root {
  --primary-color: #007bff;
  --secondary-color: #6c757d;
  --success-color: #28a745;
  --warning-color: #ffc107;
  --danger-color: #dc3545;
  --light-color: #f8f9fa;
  --dark-color: #343a40;
}

/* Styles globaux */
body {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, sans-serif;
  line-height: 1.6;
}

/* Header */
.navbar-brand {
  font-weight: bold;
  font-size: 1.5rem;
}

/* Hero section */
.hero {
  background: linear-gradient(135deg, var(--primary-color) 0%, #0056b3 100%);
  color: white;
  padding: 80px 0;
}

.hero h1 {
  font-size: 3.5rem;
  font-weight: 300;
  margin-bottom: 1.5rem;
}

.hero .lead {
  font-size: 1.25rem;
  margin-bottom: 2rem;
}

/* Cards */
.card {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.card:hover {
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.card-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  margin: 0 auto 1rem;
}

/* Pricing */
.pricing-card {
  border: 2px solid #e9ecef;
  border-radius: 10px;
  transition: all 0.3s ease;
}

.pricing-card.featured {
  border-color: var(--primary-color);
  transform: scale(1.05);
}

.pricing-card:hover {
  border-color: var(--primary-color);
  box-shadow: 0 10px 30px rgba(0, 123, 255, 0.1);
}

.price {
  font-size: 3rem;
  font-weight: 300;
  color: var(--primary-color);
}

/* Events */
.event-card {
  border-left: 4px solid var(--primary-color);
}

.event-status {
  padding: 0.25rem 0.5rem;
  border-radius: 15px;
  font-size: 0.8rem;
  font-weight: 500;
}

.event-status.open {
  background-color: #d4edda;
  color: #155724;
}

.event-status.closed {
  background-color: #f8d7da;
  color: #721c24;
}

.event-status.full {
  background-color: #fff3cd;
  color: #856404;
}

/* form */
label.required::after {
  display: inline;
  content: " *";
  color: red;
}

/* Map */
.map-container {
  height: 400px;
  border-radius: 8px;
  overflow: hidden;
}

/* Search */
.search-box {
  background: white;
  border-radius: 25px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 10px 20px;
}

.search-box input {
  border: none;
  outline: none;
  background: transparent;
}

.search-box .btn {
  border-radius: 20px;
}

/* Filters */
.filter-sidebar {
  background: #f8f9fa;
  border-radius: 8px;
  padding: 1.5rem;
}

.filter-section {
  margin-bottom: 1.5rem;
}

.filter-section h6 {
  color: var(--dark-color);
  font-weight: 600;
  margin-bottom: 0.75rem;
}

/* Footer */
.footer {
  background-color: var(--dark-color);
  color: white;
  padding: 3rem 0 1rem;
}

.footer h5 {
  color: var(--primary-color);
  margin-bottom: 1rem;
}

.footer a {
  color: #adb5bd;
  text-decoration: none;
  transition: color 0.3s;
}

.footer a:hover {
  color: white;
}

/* Responsive */
@media (max-width: 768px) {
  .hero h1 {
    font-size: 2.5rem;
  }
  .pricing-card.featured {
    transform: none;
    margin-top: 1rem;
  }
}
/* Animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade-in-up {
  animation: fadeInUp 0.6s ease-out;
}

/* Utility classes */
.text-primary-custom {
  color: var(--primary-color) !important;
}

.bg-primary-custom {
  background-color: var(--primary-color) !important;
}

.btn-primary-custom {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  color: white;
}

.btn-primary-custom:hover {
  background-color: #0056b3;
  border-color: #004085;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmMxZjljZWM2LmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUFFaEI7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7QUFDQTtFQUNJO0VBQ0E7QUFDSjs7QUFFQTtBQUNBO0VBQ0k7RUFDQTtBQUNKOztBQUVBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtBQUNKOztBQUVBO0VBQ0k7RUFDQTtBQUNKOztBQUVBO0FBQ0E7RUFDSTtBQUNKOztBQUVBO0VBQ0k7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtBQUNBO0VBQ0k7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtFQUNBO0FBQ0o7O0FBRUE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBQUNGOztBQUVBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUFDSjs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtBQUNKOztBQUVBO0VBQ0k7QUFDSjs7QUFFQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtBQUNKOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtBQUNKOztBQUVBO0VBQ0k7RUFDQTtBQUNKOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0FBQ0o7O0FBRUE7RUFDSTtBQUNKOztBQUVBO0FBQ0E7RUFDSTtJQUNJO0VBQ047RUFFRTtJQUNJO0lBQ0E7RUFBTjtBQUNGO0FBR0E7QUFDQTtFQUNJO0lBQ0k7SUFDQTtFQUROO0VBR0U7SUFDSTtJQUNBO0VBRE47QUFDRjtBQUlBO0VBQ0k7QUFGSjs7QUFLQTtBQUNBO0VBQ0k7QUFGSjs7QUFLQTtFQUNJO0FBRko7O0FBS0E7RUFDSTtFQUNBO0VBQ0E7QUFGSjs7QUFLQTtFQUNJO0VBQ0E7QUFGSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdGVhbWJlbmV2b2xlcy8uL2Fzc2V0cy9zdHlsZXMvYXBwLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIn5ib290c3RyYXAvZGlzdC9jc3MvYm9vdHN0cmFwLm1pbi5jc3NcIjtcblxuLyogVmFyaWFibGVzIENTUyBwZXJzb25uYWxpc8OpZXMgKi9cbjpyb290IHtcbiAgICAtLXByaW1hcnktY29sb3I6ICMwMDdiZmY7XG4gICAgLS1zZWNvbmRhcnktY29sb3I6ICM2Yzc1N2Q7XG4gICAgLS1zdWNjZXNzLWNvbG9yOiAjMjhhNzQ1O1xuICAgIC0td2FybmluZy1jb2xvcjogI2ZmYzEwNztcbiAgICAtLWRhbmdlci1jb2xvcjogI2RjMzU0NTtcbiAgICAtLWxpZ2h0LWNvbG9yOiAjZjhmOWZhO1xuICAgIC0tZGFyay1jb2xvcjogIzM0M2E0MDtcbn1cblxuLyogU3R5bGVzIGdsb2JhdXggKi9cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi8qIEhlYWRlciAqL1xuLm5hdmJhci1icmFuZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi8qIEhlcm8gc2VjdGlvbiAqL1xuLmhlcm8ge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLXByaW1hcnktY29sb3IpIDAlLCAjMDA1NmIzIDEwMCUpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiA4MHB4IDA7XG59XG5cbi5oZXJvIGgxIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmhlcm8gLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4vKiBDYXJkcyAqL1xuLmNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmNhcmQ6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmNhcmQtaWNvbiB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbn1cblxuLyogUHJpY2luZyAqL1xuLnByaWNpbmctY2FyZCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2U5ZWNlZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wcmljaW5nLWNhcmQuZmVhdHVyZWQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cblxuLnByaWNpbmctY2FyZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDEyMywgMjU1LCAwLjEpO1xufVxuXG4ucHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbn1cblxuLyogRXZlbnRzICovXG4uZXZlbnQtY2FyZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbn1cblxuLmV2ZW50LXN0YXR1cyB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uZXZlbnQtc3RhdHVzLm9wZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XG4gICAgY29sb3I6ICMxNTU3MjQ7XG59XG5cbi5ldmVudC1zdGF0dXMuY2xvc2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhO1xuICAgIGNvbG9yOiAjNzIxYzI0O1xufVxuXG4uZXZlbnQtc3RhdHVzLmZ1bGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gICAgY29sb3I6ICM4NTY0MDQ7XG59XG5cbi8qIGZvcm0gKi9cbmxhYmVsLnJlcXVpcmVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY29udGVudDogXCIgKlwiO1xuICBjb2xvcjogcmVkO1xufVxuXG4vKiBNYXAgKi9cbi5tYXAtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBTZWFyY2ggKi9cbi5zZWFyY2gtYm94IHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbn1cblxuLnNlYXJjaC1ib3ggaW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uc2VhcmNoLWJveCAuYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xufVxuXG4vKiBGaWx0ZXJzICovXG4uZmlsdGVyLXNpZGViYXIge1xuICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDEuNXJlbTtcbn1cblxuLmZpbHRlci1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5maWx0ZXItc2VjdGlvbiBoNiB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLyogRm9vdGVyICovXG4uZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWNvbG9yKTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogM3JlbSAwIDFyZW07XG59XG5cbi5mb290ZXIgaDUge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uZm9vdGVyIGEge1xuICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xufVxuXG4uZm9vdGVyIGE6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLyogUmVzcG9uc2l2ZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlcm8gaDEge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLnByaWNpbmctY2FyZC5mZWF0dXJlZCB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4uZmFkZS1pbi11cCB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjZzIGVhc2Utb3V0O1xufVxuXG4vKiBVdGlsaXR5IGNsYXNzZXMgKi9cbi50ZXh0LXByaW1hcnktY3VzdG9tIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLmJnLXByaW1hcnktY3VzdG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXByaW1hcnktY3VzdG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJ0bi1wcmltYXJ5LWN1c3RvbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTZiMztcbiAgICBib3JkZXItY29sb3I6ICMwMDQwODU7XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/