body{font-family:Playfair Display,serif}body,html{height:100%;margin:0}body{display:flex;flex-direction:column;min-height:100vh}main{flex:1 0 auto}footer{flex-shrink:0}ul{list-style-type:none}.bg-gold{background-color:#b98d75}.btn.bg-gold:hover{background-color:#fff}.btn.bg-gold:hover,.btn.btn-outline-gold{border:1px solid #b98d75;color:#b98d75}.btn.btn-outline-gold:hover{background-color:#b98d75;color:#fff}.gold{color:#b98d75}.white{color:#fff}.dropdown-item:active{background-color:var(--bs-light)!important;color:var(--bs-dark)!important}header{box-shadow:0 4px 12px rgba(0,0,0,.08);position:relative;z-index:10}.social-icons a{color:#4a3e39;font-size:18px;transition:color .4s ease,transform .4s cubic-bezier(.25,1,.5,1)}.social-icons a:hover{color:#b98d75;transform:scale(1.2)}.nav-link{color:#4a3e39}.nav-link.active,.nav-link:hover{color:#b98d75}footer{box-shadow:0 4px 12px rgba(0,0,0,.08);position:relative;z-index:10}footer a{color:#4a3e39;text-decoration:none;transition:color .3s ease}footer a:hover{color:#b98d75;text-decoration:none}footer .social-icons i{font-size:18px;transition:color .3s ease,transform .3s ease}footer .social-icons i:hover{color:#b98d75;transform:scale(1.2)}.members{border:1px solid #ccc;border-radius:16px;box-shadow:0 6px 20px rgba(0,0,0,.1);display:inline-block;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.bureau-photo{border-radius:0;display:block;height:auto;margin:0 auto;max-width:500px;width:100%}.event-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 8px rgba(0,0,0,.1);color:#000;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:transform .2s ease;width:220px}.event-card:hover{transform:translateY(-5px)}.event-card img{height:300px;object-fit:cover;width:100%}.event-caption{align-items:center;height:100px;padding:1rem;text-align:center}.event-caption,.form-container{display:flex;justify-content:center}.form-container{flex-direction:column;min-height:60vh}.form-wrapper{background-color:#f8f9fa;border-radius:10px;box-shadow:0 .5rem 1rem rgba(0,0,0,.15);padding:2rem}.input-group-text{padding:10.8px 12px}.form-group{margin:10px 0}.btn-inscrire{background-color:#0d5298;color:#fff;margin-top:1.5rem;width:100%}.btn-inscrire:hover{background-color:#fff;border:2px solid #0d5298;color:#0d5298;width:100%}.form-control,.login-error{margin-bottom:1rem}.login-error{color:#dc3545;text-align:center}.card-title{font-family:Playfair Display,serif;font-size:1.1rem}.card-body{padding:1.25rem}.card-img-top{border-radius:12px;height:auto;margin:0 auto;width:97%!important}.card{border-radius:12px;transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 10px 20px rgba(0,0,0,.1);transform:translateY(-4px)}.cart-page{align-items:center;display:flex;flex-direction:column;width:100%}.item-image img{height:auto;width:100px}.cart-items{align-items:center;width:75%}.cart-item{align-items:center;background-color:#e0e0e0;display:flex;height:120px;justify-content:space-between;margin:60px 0;padding:10px 20px;width:100%}.item-price{font-size:22px;font-weight:700}.item-actions,.item-details{align-items:center;display:flex;justify-content:space-evenly;margin:0 auto;width:100%}.btn-remove{background-color:#e73439;border:none;border-radius:10px;color:#fff;cursor:pointer;padding:10px;width:140px}.quantity-controls{align-items:center;display:flex;margin-right:15px}.btn-quantity{align-items:center;background:#f0f0f0;border:1px solid #ddd;border-radius:50%;cursor:pointer;display:flex;height:25px;justify-content:center;width:25px}.item-quantity{font-weight:500;margin:0 8px}.d-inline{display:inline-block}.product-page-container{display:block!important;margin:0 auto!important;max-width:90%!important}.product-fiche{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-sizing:border-box;padding:40px;width:100%}.product-info{padding-right:30px}.product-title{color:#2c3e50;font-size:2rem;font-weight:600;line-height:1.3;margin-bottom:20px}.product-category .badge{border:1px solid #dee2e6;font-size:.9rem;padding:8px 12px}.product-description{color:#495057;font-size:1.1rem;line-height:1.6;margin-bottom:30px}.price-section{border-top:2px solid #f8f9fa;padding-top:20px}.current-price{color:#28a745;display:block;font-size:2.5rem;font-weight:700}.price-note{font-size:.85rem;margin-top:5px}.product-gallery{text-align:center}.img-product-main{border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.1);height:auto;max-width:450px;transition:transform .3s ease;width:100%}.img-product-main:hover{transform:scale(1.02)}.img-product-secondary{border:2px solid #e9ecef;border-radius:6px;cursor:pointer;height:120px;object-fit:cover;width:120px}.order-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;padding:30px}.product-order-line{align-items:center;display:flex;flex-wrap:wrap;gap:30px;justify-content:center}@media (max-width:992px){.product-info{margin-bottom:30px;padding-right:0}.product-title{font-size:1.75rem}.current-price{font-size:2rem}}@media (max-width:768px){.product-fiche{padding:25px 20px}.product-order-line{flex-direction:column;gap:20px}.order-section{padding:25px 20px}.product-title{font-size:1.5rem}.current-price{font-size:1.8rem}}.breadcrumb-container{margin-bottom:2rem;padding:0;width:100%}.breadcrumb{background:transparent;border-radius:0;margin:0;padding:.75rem 0}.breadcrumb-item+.breadcrumb-item:before{color:#6c757d;content:"›";margin:0 .5rem}.breadcrumb-item a{color:#6c757d;text-decoration:none}.breadcrumb-item a:hover{color:#b98d75;text-decoration:underline}.breadcrumb-item.active{color:#b98d75}.order-section .badge{align-items:center;background-color:#28a745;border:2px solid #28a745;border-radius:8px;box-shadow:0 2px 5px rgba(0,0,0,.1);color:#fff;display:inline-flex;font-size:1rem;font-weight:600;height:60px;justify-content:center;width:180px}.order-section form{align-items:center;display:flex;gap:10px;justify-content:space-between}.order-section .quantity-selector{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.order-section .quantity-selector .form-label{color:#495057;font-size:1rem;font-weight:600;line-height:1;margin:0;text-align:center}.order-section .quantity-selector .input-group{align-items:center;background:#fff;border:1px solid #b98d75;border-radius:8px;display:flex;flex-wrap:nowrap;height:40px;justify-content:space-between;margin:0;overflow:hidden;padding:0;width:160px}.order-section .btn-outline-secondary{align-items:center;background-color:#b98d75;border:none;box-sizing:border-box;color:#fff;display:flex;flex:0 0 40px;font-size:.9rem;font-weight:600;height:40px;justify-content:center;line-height:1;padding:0;transition:all .3s ease}.order-section .btn-outline-secondary:hover{background-color:#fff;border:1px solid #b98d75;color:#b98d75}.order-section .quantity-selector .input-group>.form-control{background:#fff;border:1px solid #b98d75;border-bottom:none;border-top:none;color:#495057;flex:0 0 auto;font-size:.9rem;font-weight:600;height:40px;margin:0;outline:none;padding:0;text-align:center;width:80px}.order-section .form-control::-webkit-inner-spin-button,.order-section .form-control::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.order-section .form-control{appearance:textfield;-moz-appearance:textfield;-webkit-appearance:none}@media (max-width:768px){.badge,.btn-primary,.quantity-selector .input-group{width:100%}}.custom-age-alert{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;display:inline-block;font-weight:700;margin-bottom:10px;padding:10px 15px}.img1-responsive{border-radius:12px;bottom:-70px;box-shadow:0 10px 25px rgba(0,0,0,.2);position:absolute;right:-30px;width:60%;z-index:2}.text-container{height:300px}@media (max-width:768px){.img1-responsive{box-shadow:none;margin-bottom:50px;margin-top:20px;position:static;width:100%}.text-container{height:auto}}.gallery-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.gallery-item img{border-radius:0!important;display:block;height:auto;object-fit:cover;transition:filter .3s ease;width:100%}.gallery-item img:hover{cursor:pointer;filter:brightness(.7)}.gallery-caption{color:#4a3e39;font-size:.95rem;margin-top:.5rem;text-align:center}@media (max-width:576px){.gallery-grid{gap:20px;grid-template-columns:1fr}}.quantity-btn{align-items:center;background-color:transparent;border:2px solid #b98d75;border-radius:50%;color:#b98d75;display:flex;font-size:1rem;height:32px;justify-content:center;padding:0;transition:.2s ease;width:32px}.quantity-btn:hover{background-color:#b98d75;color:#fff}.quantity-input{font-size:1rem;height:32px;max-width:60px;padding:0 .5rem}.image-hover-effect{border-radius:0!important;object-fit:cover;transition:.3s ease}.image-hover-effect:hover{cursor:pointer;filter:brightness(.7)}.card-img-left{border-radius:0!important}.toast-container{bottom:20px;gap:10px;right:20px;z-index:2000}.alert{border:none;border-radius:10px;box-shadow:0 8px 20px rgba(0,0,0,.15);font-weight:500;max-width:350px;min-width:280px;opacity:0;padding:1rem 1.25rem;pointer-events:auto;transform:translateX(100%);transition:all .5s ease}.alert.show{opacity:1;transform:translateX(0)}.alert-success{background:linear-gradient(135deg,#b98d75,#d6b29e);color:#fff}.alert-warning{background:linear-gradient(135deg,#fff3cd,#ffe69c);color:#856404}.alert-danger{background:linear-gradient(135deg,#f8d7da,#f1aeb5);color:#842029}.alert .btn-close{filter:invert(1);opacity:.7}.alert .btn-close:hover{opacity:1}.toast-container{align-items:flex-end;bottom:30px;display:flex;flex-direction:column;gap:12px;pointer-events:none;position:fixed;right:30px;z-index:3000}.toast-container .alert{align-items:center;backdrop-filter:blur(8px);background:hsla(0,0%,100%,.8);border:1px solid hsla(21,33%,59%,.3);border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.15);color:#4a3e39;display:flex;font-weight:500;gap:10px;max-width:360px;min-width:320px;opacity:0;padding:1rem 1.25rem;pointer-events:auto;transform:translateX(100%);transition:all .5s ease}.toast-container .alert.show{opacity:1;transform:translateX(0)}.toast-container .alert .btn-close{filter:invert(.4);margin-left:auto;opacity:.8}.toast-container .alert .btn-close:hover{opacity:1}.toast-container .alert-success{background:linear-gradient(135deg,rgba(40,167,69,.15),hsla(0,0%,100%,.8));border-left:6px solid #28a745}.toast-container .alert-warning{background:linear-gradient(135deg,rgba(255,193,7,.15),hsla(0,0%,100%,.8));border-left:6px solid #ffc107}.toast-container .alert-danger{background:linear-gradient(135deg,rgba(220,53,69,.15),hsla(0,0%,100%,.8));border-left:6px solid #dc3545}.toast-container .alert:before{content:"";display:inline-block;font-size:1.2rem;margin-right:8px}.toast-container .alert-success:before{content:"✅"}.toast-container .alert-warning:before{content:"⚠️"}.toast-container .alert-danger:before{content:"❌"}.toast-container .alert:hover{transform:scale(1.03);transition:all .3s ease}.text-gold{color:#b98d75!important}.btn.bg-gold{border-radius:.7rem;box-shadow:0 6px 16px hsla(21,33%,59%,.25)}.summary-card{position:sticky;top:6.5rem}.cart-line{align-items:flex-start;display:flex;gap:1rem}.cart-thumb{align-items:center;background:#f8f9fa;border:1px solid #eee;border-radius:.75rem;display:flex;flex:0 0 84px;height:84px;justify-content:center;overflow:hidden;width:84px}.cart-thumb img{max-height:100%;max-width:100%;object-fit:cover}.section-dot{background:#b98d75;border-radius:50%;display:inline-block;height:.6rem;width:.6rem}.breadcrumb-elegant{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.05);padding:.75rem 1.25rem}.breadcrumb-elegant .breadcrumb-item+.breadcrumb-item:before{color:#b98d75;content:"›";font-weight:600;margin:0 .5rem}.breadcrumb-elegant .breadcrumb-item a{color:#4a3e39;text-decoration:none;transition:all .25s ease}.breadcrumb-elegant .breadcrumb-item a:hover{color:#b98d75;text-decoration:underline}.breadcrumb-elegant .breadcrumb-item.active{color:#b98d75;font-weight:600}.delivery-container{background:#faf9f7;min-height:80vh;padding:4rem 0}.delivery-container .card{background:#fff;border:none;border-radius:1rem;box-shadow:0 6px 16px rgba(0,0,0,.08)}.delivery-container h2{color:#b98d75;font-weight:600;letter-spacing:.5px}.zoomable{cursor:zoom-in}