.promotions-page main{flex-direction:column;padding:2rem 0;display:flex}.promotions-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:2rem;display:grid}.promotion-item{cursor:pointer;background:#fff;border-radius:1.25rem;flex-direction:column;align-items:flex-start;padding:1rem;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #00000014}.promotion-item:hover{transform:translateY(-4px)scale(1.02);box-shadow:0 8px 32px #00000029}.promotion-item .promo-image{object-fit:cover;border-radius:.75rem;width:100%;height:180px;margin-bottom:1rem}.promotion-item h2{color:#1a2233;margin:0 0 .5rem;font-size:1.4rem;font-weight:700}.promotion-item p{color:#444;margin:0 0 .5rem;font-size:1rem}.promotion-item strong{color:#0a7d4d}.promotion-item:before{content:"";opacity:.08;z-index:0;background:linear-gradient(135deg,#0a7d4d 0%,#1a2233 100%);border-radius:50%;width:120px;height:120px;position:absolute;top:-40px;right:-40px}.promotion-booking-form .promo-items{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}.promotion-booking-form .promo-items .item{background:var(--light-beige);border:1px solid var(--border);border-radius:8px;padding:1.25rem;transition:all .2s}.promotion-booking-form .promo-items .item:hover{border-color:var(--primary);box-shadow:0 2px 8px #0278441a}.promotion-booking-form .promo-items .item h4{text-transform:uppercase;color:var(--gray);letter-spacing:.5px;margin:0 0 .5rem;font-size:.875rem;font-weight:600}.promotion-booking-form .promo-items .item>p{color:var(--foreground);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.promotion-booking-form .promo-items .item .pricing{flex-direction:column;gap:.75rem;display:flex}.promotion-booking-form .promo-items .item .pricing .discount-badge{background:var(--secondary);color:var(--foreground);letter-spacing:.5px;border-radius:4px;align-self:flex-start;margin-bottom:.5rem;padding:.25rem .625rem;font-size:.75rem;font-weight:700}.promotion-booking-form .promo-items .item .pricing .pricing-category{border:1px solid var(--border);background:#ffffffb3;border-radius:6px;margin-bottom:.5rem;padding:.75rem}.promotion-booking-form .promo-items .item .pricing .pricing-category:last-child{margin-bottom:0}.promotion-booking-form .promo-items .item .pricing .pricing-category h5{text-transform:uppercase;color:var(--primary);letter-spacing:.5px;border-bottom:1px solid var(--border);margin:0 0 .5rem;padding-bottom:.25rem;font-size:.8rem;font-weight:600}.promotion-booking-form .promo-items .item .pricing .pricing-category .price-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.promotion-booking-form .promo-items .item .pricing .pricing-category .price-row .original-price{color:#666;background:#ff00001a;border-radius:4px;padding:.2rem .5rem;font-size:.875rem;text-decoration:line-through}.promotion-booking-form .promo-items .item .pricing .pricing-category .price-row .discounted-price{color:var(--primary);background:#0278441a;border-radius:4px;padding:.2rem .5rem;font-size:1rem;font-weight:700}.promotion-booking-form .promo-items .item .pricing p{margin:0}.promotion-booking-form .promo-items .item .pricing .original-price:not(.price-row .original-price){color:#666;font-size:.875rem;text-decoration:line-through}.promotion-booking-form .promo-items .item .pricing .discounted-price:not(.price-row .discounted-price){color:var(--primary);font-size:1.25rem;font-weight:700}@media screen and (max-width:768px){.promotion-booking-form .promo-items .item .pricing .pricing-category .price-row{flex-direction:column;align-items:flex-start;gap:.5rem}.promotion-booking-form .promo-items .item .pricing .pricing-category .price-row .original-price,.promotion-booking-form .promo-items .item .pricing .pricing-category .price-row .discounted-price{text-align:center;width:100%}.promotion-booking-form .promo-items .item .pricing:not(.pricing-category){flex-direction:column;align-items:flex-start;gap:.5rem}}
