.locations-hero{background:linear-gradient(135deg,var(--primary-purple) 0,var(--accent-magenta) 50%,var(--primary-pink) 100%);color:var(--text-white);text-align:center;padding:80px 20px 60px;margin-top:70px;position:relative;width:100%}.locations-hero-content{max-width:900px;margin:auto;position:relative;z-index:1}.locations-hero h2{font-size:4em;margin-bottom:15px;font-weight:700;text-transform:uppercase;line-height:1.1;color:var(--text-white);text-shadow:2px 2px 8px rgba(0,0,0,.5);font-family:'Bebas Neue',cursive}.locations-hero p{font-size:1.3em;margin-bottom:0;font-weight:500;color:var(--text-white);text-shadow:1px 1px 4px rgba(0,0,0,.5)}.single-location-section{background:var(--bg-section);padding:60px 20px 80px;min-height:60vh}.location-showcase-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.2fr 0.8fr;gap:50px;background:var(--bg-light);border-radius:20px;padding:40px;box-shadow:0 10px 40px rgba(0,0,0,.1)}.location-visuals{position:relative;border-radius:15px;overflow:hidden;box-shadow:0 8px 25px rgba(0,0,0,.15);height:100%}.location-carousel{position:relative;width:100%;height:100%}.carousel-track{display:flex;width:100%;height:100%;transition:transform .5s cubic-bezier(.4, 0, .2, 1)}.location-carousel .carousel-slide{min-width:100%;width:100%;height:100%;flex:0 0 100%;flex-shrink:0;position:relative;padding:0;margin:0;display:flex}.location-carousel .carousel-slide img{width:100%!important;height:100%!important;object-fit:fill!important;display:block;padding:0;margin:0;border:none;position:absolute;top:0;left:0}.carousel-nav button{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.9);border:none;width:45px;height:45px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2em;color:var(--primary-purple);box-shadow:0 4px 10px rgba(0,0,0,.2);transition:all .3s ease;z-index:10}.carousel-nav button:hover{background:var(--primary-purple);color:#fff;transform:translateY(-50%) scale(1.1)}.carousel-prev{left:20px}.carousel-next{right:20px}.carousel-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:10}.dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);border:2px solid #fff;cursor:pointer;transition:all .3s ease}.dot.active{background:#fff;transform:scale(1.2)}.location-details-container{display:flex;flex-direction:column;gap:25px}.location-info-header h2{font-size:3.5em;margin:10px 0 5px;color:var(--primary-purple);font-family:'Bebas Neue',cursive;line-height:1}.status-badge{background:#4caf50;color:#fff;padding:5px 12px;border-radius:20px;font-size:.8em;font-weight:700;text-transform:uppercase}.location-subtitle{font-size:1.2em;color:var(--text-grey);margin:0}.info-grid{display:grid;gap:20px;background:#f8f9fa;padding:25px;border-radius:15px}.info-item{display:flex;gap:15px;align-items:flex-start}.icon-box{width:40px;height:40px;background:rgba(138,0,196,.1);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--primary-purple);font-size:1.2em;flex-shrink:0}.info-item h3{margin:0 0 5px;font-size:.9em;text-transform:uppercase;color:var(--text-grey);letter-spacing:1px}.info-item p{margin:0;font-size:1.1em;font-weight:500;color:var(--text-black);line-height:1.4}.action-buttons{display:flex;gap:15px}.btn-primary,.btn-secondary{flex:1;padding:15px;border-radius:10px;text-align:center;text-decoration:none;font-weight:700;text-transform:uppercase;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px}.btn-primary{background:var(--primary-purple);color:#fff;box-shadow:0 4px 15px rgba(138,0,196,.3)}.btn-primary:hover{background:var(--primary-pink);transform:translateY(-2px)}.btn-secondary{border:2px solid var(--primary-purple);color:var(--primary-purple)}.btn-secondary:hover{background:var(--primary-purple);color:#fff}.map-container{border-radius:15px;overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,.1);height:250px}@media (max-width:992px){.location-showcase-container{grid-template-columns:1fr;gap:30px;padding:25px}.location-carousel{height:400px}}@media (max-width:768px){.single-location-section{padding:40px 15px}.location-carousel{height:300px}.location-info-header h2{font-size:2.5em}.action-buttons{flex-direction:column}}