@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Montserrat:wght@400;600&display=swap");body{font-family:Montserrat,sans-serif;color:#2a1a0f;margin:0;padding:0}.booking-container{position:relative;width:100vw;margin:0 auto;padding:4rem 1.5rem;overflow:hidden;background-color:#d9b68f;min-height:100vh}.booking-sparkle{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 20%,rgba(212,175,55,.03) 2px,transparent 4px),radial-gradient(circle at 80% 90%,rgba(212,175,55,.02) 3px,transparent 5px);background-repeat:repeat;background-size:120px 120px;z-index:0}.booking-title{position:relative;z-index:10;font-family:Playfair Display,serif;font-size:3rem;text-align:center;margin-bottom:2rem}.shimmer-text{background:linear-gradient(90deg,#ffffff,#dcbf6a,#ffffff);background-size:200% auto;color:transparent;background-clip:text;-webkit-background-clip:text;animation:shimmerMove 3s linear infinite;text-shadow:0 0 6px rgba(212,175,55,.5)}@keyframes shimmerMove{0%{background-position:0}to{background-position:200%}}.booking-subtitle{text-align:center;font-size:1.2rem;color:#4d3820;margin-bottom:1.5rem;z-index:10;position:relative}.services-container{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;width:100%;max-width:1200px;margin:0 auto;padding:0 1rem;z-index:10}.service-card{background:#fffaf3;border:2px solid transparent;border-radius:1rem;padding:1rem;cursor:pointer;text-align:center;font-family:Playfair Display,serif;box-shadow:0 5px 20px rgba(0,0,0,.08);transition:all .3s ease,border-color .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.service-card:hover{transform:translateY(-4px);border-color:#d4af37;box-shadow:0 0 18px 4px rgba(212,175,55,.5)}.category-image{width:250px;height:220px;margin:0 auto 1rem;overflow:hidden;border-radius:1rem;background:#f0e6d6;transition:transform .3s ease}.service-card:hover .category-image img{transform:scale(1.05)}.category-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.service-name{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:#2a1a0f;white-space:nowrap}.service-description{font-size:1rem;color:#4d3820}.service-list{display:flex;flex-direction:column;gap:.8rem;max-width:600px;margin:1rem auto 0;padding:0 1rem;z-index:10}.service-item{display:flex;justify-content:space-between;align-items:center;background:#fffaf3;border-left:5px solid #d4af37;border-radius:.75rem;padding:1rem 1.5rem;font-family:Playfair Display,serif;font-weight:600;font-size:1.1rem;cursor:pointer;transition:all .3s ease,box-shadow .3s ease;box-shadow:0 3px 12px rgba(0,0,0,.08)}.service-item:hover{background:#fff5e6;box-shadow:0 0 18px 4px rgba(212,175,55,.4);transform:translateX(2px)}.service-item:after{content:none}.service-price{font-weight:700;color:#d4af37;font-size:1.1rem}h2,h3,h4{color:#d4af37}.calendar-container{margin-top:2rem;display:flex;flex-direction:column;align-items:center;position:relative;z-index:10;box-shadow:0 4px 10px rgba(0,0,0,.2)}.calendar-title{font-family:Playfair Display,serif;margin-bottom:1rem;font-size:1.8rem}.time-slot:hover{box-shadow:0 0 18px 4px rgba(212,175,55,.4)}.time-slot.selected,.time-slot:hover{background:#fff5e6;transform:translateX(2px)}.time-slot.selected{box-shadow:0 0 18px 4px rgba(212,175,55,.5);color:#d4af37;font-weight:600}.booking-button{margin-top:1rem;background:linear-gradient(90deg,#ffffff,#dcbf6a,#ffffff);color:#5a3518;font-weight:700;font-family:Playfair Display,serif;font-size:1rem;padding:.5rem 2rem;border-radius:9999px;box-shadow:0 6px 25px rgba(201,161,76,.6);transition:all .3s ease;cursor:pointer}.booking-button:hover{background-position:100% 0;color:#d9a55c;filter:brightness(1.05);box-shadow:0 0 25px rgba(201,161,76,.7)}.review-button{display:block;margin:1rem auto 0;width:60%;max-width:300px;background:linear-gradient(90deg,#ffffff,#dcbf6a,#ffffff);color:#5a3518;font-weight:700;font-family:Playfair Display,serif;font-size:1.125rem;padding:.75rem 0;border-radius:9999px;box-shadow:0 6px 25px rgba(201,161,76,.6);transition:all .3s ease;cursor:pointer;text-align:center}.review-button:hover{background-position:100% 0;color:#d9a55c;filter:brightness(1.05);box-shadow:0 0 25px rgba(201,161,76,.7)}.service-card.selected{border-color:#d4af37;box-shadow:0 0 20px 6px rgba(212,175,55,.6);transform:translateY(-4px)}.service-card.selected .service-name{color:#d4af37}.service-item.selected{background:#fff5e6;border-left-color:#d4af37;box-shadow:0 0 20px 6px rgba(212,175,55,.5);transform:translateX(2px);color:#d4af37}.selected-date{font-family:Playfair Display,serif;font-size:1.2rem;color:#4d3820}.gold-text{color:#4d3820;font-weight:700}.react-calendar{border:none;border-radius:1rem;box-shadow:0 5px 20px rgba(0,0,0,.08);font-family:Montserrat,sans-serif;background:#fffaf3;width:350px;max-width:90%;transition:all .3s ease}.react-calendar__navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-family:Playfair Display,serif;font-size:1.2rem;color:#2a1a0f}.react-calendar__navigation button{background:#fffaf3;border:2px solid transparent;color:#2a1a0f;font-weight:600;border-radius:50px;padding:.5rem 1rem;cursor:pointer;transition:all .3s ease}.react-calendar__navigation button:hover{border-color:#d4af37;box-shadow:0 0 18px 4px rgba(212,175,55,.5);color:#d4af37}.react-calendar__month-view__weekdays{text-align:center;font-weight:600;color:#4d3820;margin-bottom:.5rem}.react-calendar__month-view__weekdays abbr{text-decoration:none}.react-calendar__tile{background:#fffaf3;border-radius:.75rem;text-align:center;padding:.5rem 0;font-size:1rem;transition:all .3s ease;color:#2a1a0f}.react-calendar__tile:hover{background:#fff5e6;color:#d4af37;box-shadow:0 0 18px 4px rgba(212,175,55,.4);transform:translateY(-2px)}.react-calendar__tile--active{background:linear-gradient(90deg,#ffffff,#dcbf6a,#ffffff);color:#5a3518;font-family:Playfair Display,serif;font-weight:700;box-shadow:0 0 25px rgba(201,161,76,.6);border-radius:.75rem}.react-calendar__tile--now{border:2px solid #d4af37;border-radius:.75rem}.react-calendar__navigation__arrow{color:#2a1a0f}.react-calendar__navigation__arrow:hover{color:#d4af37}