.rezervasyon-page{padding:70px 0 30px;min-height:100vh;background:#fafafa}@media (min-width:576px){.rezervasyon-page{padding:75px 0 35px}}@media (min-width:768px){.rezervasyon-page{padding:85px 0 50px}}@media (min-width:1024px){.rezervasyon-page{padding:90px 0 60px}}.rezervasyon-page .container{padding-right:12px;padding-left:12px}@media (min-width:576px){.rezervasyon-page .container{padding-right:15px;padding-left:15px}}.page-header{text-align:center;margin-bottom:20px;padding:0 4px}@media (min-width:576px){.page-header{margin-bottom:22px}}@media (min-width:768px){.page-header{margin-bottom:28px;padding:0}}@media (min-width:1024px){.page-header{margin-bottom:32px}}.page-header__title{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.375rem;font-weight:700;color:var(--text-primary,#202125);margin-bottom:6px;line-height:1.2}@media (min-width:576px){.page-header__title{font-size:1.4375rem;margin-bottom:7px}}@media (min-width:768px){.page-header__title{font-size:1.625rem;margin-bottom:8px}}@media (min-width:1024px){.page-header__title{font-size:1.75rem}}.page-header__subtitle{font-family:var(--font-body, 'Plus Jakarta Sans', sans-serif);font-size:.875rem;color:var(--text-secondary,#202125a3);max-width:500px;margin:0 auto;line-height:1.4}@media (min-width:576px){.page-header__subtitle{font-size:.90625rem}}@media (min-width:768px){.page-header__subtitle{font-size:.9375rem}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:20px}.spinner{width:48px;height:48px;border:4px solid rgba(0,157,224,.2);border-top-color:var(--primary-500,#009de0);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{font-size:1rem;color:var(--text-secondary,#202125a3);font-weight:500}.row{display:flex;flex-wrap:wrap;margin:0;align-items:flex-start;gap:20px}.col-md-4,.col-md-8{padding:0;width:100%}@media (min-width:768px){.row{margin:0 -15px;gap:0;flex-wrap:nowrap;align-items:flex-start}.col-md-4,.col-md-8{padding:0 15px}.col-md-8{width:60%;flex:0 0 60%;max-width:60%;margin-top:0;padding-top:0}.col-md-4{width:40%;flex:0 0 40%;max-width:40%;position:relative;align-self:flex-start;height:fit-content;margin-top:0;padding-top:0}}.vehicles-section{margin-top:0;margin-bottom:30px}@media (min-width:576px){.vehicles-section{margin-bottom:35px}}@media (min-width:768px){.vehicles-section{margin-bottom:40px}}.section-title{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.375rem;font-weight:800;color:var(--text-primary,#202125);margin-bottom:18px;margin-top:0;padding:0 4px}@media (min-width:576px){.section-title{font-size:1.5rem;margin-bottom:20px}}@media (min-width:768px){.section-title{font-size:1.625rem;margin-bottom:22px;padding:0}}@media (min-width:1024px){.section-title{font-size:1.75rem;margin-bottom:24px}}.vehicles-list{display:flex;flex-direction:column;gap:14px}@media (min-width:576px){.vehicles-list{gap:15px}}@media (min-width:768px){.vehicles-list{gap:16px}}.vehicle-card{display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 3px 16px rgba(0,0,0,.08);transition:all .35s cubic-bezier(.4, 0, .2, 1);border:1px solid rgba(228,228,229,.5);position:relative}@media (min-width:768px){.vehicle-card{flex-direction:row;align-items:stretch;min-height:200px}}.vehicle-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.12);border-color:rgba(0,157,224,.4)}.vehicle-card--selected{border-color:var(--primary-500,#009de0);box-shadow:0 6px 24px rgba(0,157,224,.3)}.vehicle-card--selected::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary-500,#009de0)}.vehicle-card__image{position:relative;width:100%;aspect-ratio:16/10;background:linear-gradient(145deg,#1a1d23 0,#2a2d32 50%,#1a1d23 100%);overflow:hidden;flex-shrink:0}@media (min-width:768px){.vehicle-card__image{width:30%;aspect-ratio:auto;min-height:100%}}.vehicle-card__image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s cubic-bezier(.4, 0, .2, 1)}.vehicle-card:hover .vehicle-card__image img{transform:scale(1.05)}.vehicle-card__image::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.1) 100%);pointer-events:none}.vehicle-card__badge{position:absolute;top:14px;right:14px;background:linear-gradient(135deg,#1fc70a 0,#17a008 100%);color:#fff;padding:7px 14px;border-radius:20px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgba(31,199,10,.4);z-index:2}.vehicle-card__body{display:flex;flex-direction:column;flex:1;padding:16px;gap:10px}@media (min-width:576px){.vehicle-card__body{padding:18px;gap:11px}}@media (min-width:768px){.vehicle-card__body{padding:20px;gap:12px}}@media (min-width:1024px){.vehicle-card__body{padding:24px 28px}}.vehicle-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:2px solid rgba(228,228,229,.6)}@media (min-width:576px){.vehicle-card__header{gap:11px;padding-bottom:11px}}@media (min-width:768px){.vehicle-card__header{gap:12px;padding-bottom:12px}}.vehicle-card__name{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1rem;font-weight:800;color:var(--text-primary,#202125);line-height:1.25;margin:0;flex:1}@media (min-width:576px){.vehicle-card__name{font-size:1.0625rem}}@media (min-width:768px){.vehicle-card__name{font-size:1.125rem}}@media (min-width:1024px){.vehicle-card__name{font-size:1.25rem}}.vehicle-card__capacity{font-size:.75rem;font-weight:600;color:#71717a;font-family:var(--font-body, 'Plus Jakarta Sans', sans-serif);white-space:nowrap;flex-shrink:0;background:rgba(0,157,224,.08);padding:5px 10px;border-radius:6px}@media (min-width:576px){.vehicle-card__capacity{font-size:.78125rem;padding:5px 11px;border-radius:7px}}@media (min-width:768px){.vehicle-card__capacity{font-size:.8125rem;padding:6px 12px;border-radius:8px}}.vehicle-card__category{font-size:.8125rem;font-weight:700;color:var(--primary-500,#009de0);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.vehicle-card__features{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.vehicle-card__feature{font-size:.625rem;font-weight:500;letter-spacing:.03em;padding:4px 8px;background:linear-gradient(135deg,rgba(0,157,224,.03) 0,rgba(0,157,224,.07) 100%);border:1px solid rgba(0,157,224,.12);border-radius:3px;color:#64748b;line-height:1.3;transition:all .2s ease;position:relative;overflow:hidden}.vehicle-card__feature::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:translateX(-100%);transition:transform .4s ease}.vehicle-card:hover .vehicle-card__feature::after{transform:translateX(100%)}.vehicle-card:hover .vehicle-card__feature{border-color:rgba(0,157,224,.2);background:linear-gradient(135deg,rgba(0,157,224,.05) 0,rgba(0,157,224,.1) 100%);color:#475569}.vehicle-card__pricing{margin-top:auto;padding-top:12px;border-top:2px solid rgba(228,228,229,.6);display:flex;flex-direction:column;align-items:stretch;gap:10px}@media (min-width:576px){.vehicle-card__pricing{padding-top:14px;gap:12px}}@media (min-width:768px){.vehicle-card__pricing{flex-direction:row;align-items:center;justify-content:space-between;padding-top:16px;gap:14px}}@media (min-width:1024px){.vehicle-card__pricing{gap:16px}}.vehicle-card__discount{font-size:.75rem;font-weight:700;color:#1fc70a;padding:5px 10px;background:rgba(31,199,10,.15);border-radius:8px;display:inline-block;border:1px solid rgba(31,199,10,.3);width:fit-content}@media (min-width:576px){.vehicle-card__discount{font-size:.78125rem;padding:5px 11px;border-radius:9px}}@media (min-width:768px){.vehicle-card__discount{font-size:.8125rem;padding:6px 12px;border-radius:10px}}.vehicle-card__price{display:flex;align-items:center;justify-content:space-between;gap:12px}@media (min-width:768px){.vehicle-card__price{gap:14px}}@media (min-width:1024px){.vehicle-card__price{gap:16px}}.vehicle-card__price-value{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.25rem;font-weight:900;color:var(--primary-500,#009de0);line-height:1}@media (min-width:576px){.vehicle-card__price-value{font-size:1.375rem}}@media (min-width:768px){.vehicle-card__price-value{font-size:1.5rem}}@media (min-width:1024px){.vehicle-card__price-value{font-size:1.625rem}}.vehicle-card__button{padding:10px 18px;background:linear-gradient(135deg,#009de0 0,#0086c3 100%);color:#fff;border:none;border-radius:10px;font-size:.8125rem;font-weight:700;cursor:pointer;transition:all .35s cubic-bezier(.4, 0, .2, 1);white-space:nowrap;box-shadow:0 3px 10px rgba(0,157,224,.25)}@media (min-width:576px){.vehicle-card__button{padding:11px 20px;border-radius:11px;font-size:.84375rem}}@media (min-width:768px){.vehicle-card__button{padding:12px 22px;border-radius:12px;font-size:.875rem;box-shadow:0 4px 12px rgba(0,157,224,.25)}}.vehicle-card__button:hover{background:linear-gradient(135deg,#0086c3 0,#006fa8 100%);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,157,224,.4)}.vehicle-card__button:active{transform:translateY(0);box-shadow:0 2px 8px rgba(0,157,224,.3)}.fade-in-up{opacity:0;transform:translateY(30px);animation:fadeInUp .8s ease forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.reservation-details-sidebar{position:sticky;top:100px;display:flex;flex-direction:column;gap:16px;align-self:flex-start;max-height:none;overflow-y:visible;overflow-x:hidden;margin-top:0}@media (min-width:768px){.reservation-details-sidebar{top:120px;max-height:none;overflow-y:visible}}@media (max-width:767px){.reservation-details-sidebar{position:relative;top:0;max-height:none;overflow-y:visible}}.reservation-details-sidebar::-webkit-scrollbar{width:6px}.reservation-details-sidebar::-webkit-scrollbar-track{background:0 0}.reservation-details-sidebar::-webkit-scrollbar-thumb{background:rgba(0,157,224,.3);border-radius:10px}.reservation-details-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(0,157,224,.5)}.sidebar-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 3px 16px rgba(0,0,0,.08);border:1px solid rgba(228,228,229,.4);transition:all .3s cubic-bezier(.4, 0, .2, 1);margin-top:0}@media (min-width:576px){.sidebar-card{padding:17px;border-radius:13px}}@media (min-width:768px){.sidebar-card{padding:18px;border-radius:14px;box-shadow:0 4px 20px rgba(0,0,0,.08)}}.sidebar-card:first-child{margin-top:0}.sidebar-card:hover{box-shadow:0 6px 28px rgba(0,0,0,.12);border-color:rgba(0,157,224,.3)}.sidebar-card__title{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:.9375rem;font-weight:800;color:var(--text-primary,#202125);margin-top:0;margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid rgba(0,157,224,.15);letter-spacing:-.02em}@media (min-width:576px){.sidebar-card__title{font-size:.96875rem;margin-bottom:15px;padding-bottom:11px}}@media (min-width:768px){.sidebar-card__title{font-size:1rem;margin-bottom:16px;padding-bottom:12px}}.sidebar-route-item{display:flex;align-items:center;gap:8px;padding:10px;background:linear-gradient(135deg,#f8f9fa 0,#f1f3f5 100%);border-radius:8px;margin-bottom:8px;transition:all .3s cubic-bezier(.4, 0, .2, 1);border:1px solid rgba(228,228,229,.5)}@media (min-width:576px){.sidebar-route-item{gap:9px;padding:10px 11px;border-radius:9px;margin-bottom:9px}}@media (min-width:768px){.sidebar-route-item{gap:10px;padding:10px 12px;border-radius:10px;margin-bottom:10px}}.sidebar-route-item:last-child{margin-bottom:0}.sidebar-route-item:hover{background:linear-gradient(135deg,#e9ecef 0,#dee2e6 100%);transform:translateX(2px);box-shadow:0 2px 8px rgba(0,0,0,.06)}@media (min-width:768px){.sidebar-route-item:hover{transform:translateX(4px)}}.sidebar-route-icon{width:20px;height:20px;flex-shrink:0;color:#71717a}@media (min-width:768px){.sidebar-route-icon{width:22px;height:22px}}.sidebar-route-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}@media (min-width:768px){.sidebar-route-content{gap:5px}}.sidebar-route-label{font-size:.625rem;font-weight:700;color:#a1a1aa;text-transform:uppercase;letter-spacing:.6px}@media (min-width:576px){.sidebar-route-label{font-size:.65625rem;letter-spacing:.7px}}@media (min-width:768px){.sidebar-route-label{font-size:.6875rem;letter-spacing:.8px}}.sidebar-route-value{font-size:.8125rem;font-weight:700;color:var(--text-primary,#202125);line-height:1.3;overflow:hidden;text-overflow:ellipsis;word-break:break-word}@media (min-width:768px){.sidebar-route-value{font-size:.875rem}}.sidebar-map{width:100%;background:#f8f9fa;border-radius:12px;overflow:hidden;box-shadow:inset 0 2px 8px rgba(0,0,0,.08);min-height:200px;height:auto!important;aspect-ratio:16/10;max-height:300px}@media (max-width:575px){.sidebar-map{aspect-ratio:16/9;min-height:180px;max-height:220px}}@media (min-width:576px) and (max-width:767px){.sidebar-map{aspect-ratio:16/10;min-height:200px;max-height:260px}}@media (min-width:768px) and (max-width:991px){.sidebar-map{aspect-ratio:16/11;min-height:180px;max-height:240px}}@media (min-width:992px) and (max-width:1199px){.sidebar-map{aspect-ratio:16/10;min-height:200px;max-height:280px}}@media (min-width:1200px){.sidebar-map{aspect-ratio:16/10;min-height:220px;max-height:320px}}#sidebarVehicleSummary{display:flex;align-items:center;gap:12px;padding:12px;background:linear-gradient(135deg,rgba(0,157,224,.05) 0,rgba(0,157,224,.02) 100%);border-radius:10px;border:1px solid rgba(0,157,224,.2)}#sidebarVehicleSummary img{width:70px;height:50px;border-radius:8px;object-fit:cover;background:#f8f9fa;box-shadow:0 2px 8px rgba(0,0,0,.1)}#sidebarVehicleSummary .sidebar-vehicle-info{flex:1;min-width:0}#sidebarVehicleSummary .sidebar-vehicle-name{font-weight:800;font-size:.875rem;color:var(--text-primary,#202125);margin-bottom:4px;line-height:1.3}#sidebarVehicleSummary .sidebar-vehicle-category{font-size:.75rem;color:var(--primary-500,#009de0);font-weight:600;text-transform:uppercase;letter-spacing:.5px}#sidebarVehicleSummary .sidebar-vehicle-price{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.125rem;font-weight:900;color:var(--primary-500,#009de0);white-space:nowrap;text-align:right}#mainBookingRow{margin-top:0;padding-top:0;align-items:flex-start}@media (min-width:768px){#mainBookingRow{flex-wrap:nowrap}#mainBookingRow .col-md-8{padding-right:12px}#mainBookingRow .col-md-4{padding-left:12px}}@media (max-width:767px){#mainBookingRow{flex-direction:column}#mainBookingRow .col-md-4,#mainBookingRow .col-md-8{padding-right:15px;padding-left:15px;width:100%}}.booking-details-section{margin-top:40px;animation:fadeInUp .6s ease;scroll-margin-top:100px}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.booking-details__container{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:14px;box-shadow:0 3px 16px rgba(0,0,0,.08);overflow:hidden}@media (min-width:576px){.booking-details__container{border-radius:16px}}@media (min-width:768px){.booking-details__container{gap:20px;border-radius:18px}}@media (min-width:1024px){.booking-details__container{flex-direction:row;gap:30px;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.08)}}.booking-details__main{flex:1;padding:20px 16px}@media (min-width:576px){.booking-details__main{padding:28px 20px}}@media (min-width:768px){.booking-details__main{padding:35px 28px}}@media (min-width:1024px){.booking-details__main{padding:50px 40px}}.booking-details__sidebar{width:100%;background:linear-gradient(135deg,#fafafa 0,#f5f5f5 100%);padding:20px 16px;border-top:1px solid var(--border,#e4e4e5)}@media (min-width:576px){.booking-details__sidebar{padding:24px 20px}}@media (min-width:768px){.booking-details__sidebar{padding:28px 24px}}@media (min-width:1024px){.booking-details__sidebar{width:420px;border-top:none;border-left:1px solid var(--border,#e4e4e5);padding:40px 30px}}.booking-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--border,#e4e4e5)}.booking-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.booking-section__title{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.125rem;font-weight:700;color:var(--text-primary,#202125);margin-bottom:8px}.booking-section__subtitle{font-size:.875rem;color:var(--text-secondary,#202125a3);margin-bottom:20px}.selected-vehicle{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface,#f6f6f6);border-radius:12px}.selected-vehicle__image{width:80px;height:60px;border-radius:8px;background:#fff;object-fit:cover}.selected-vehicle__info{flex:1}.selected-vehicle__name{font-weight:700;color:var(--text-primary,#202125);margin-bottom:4px}.selected-vehicle__category{font-size:.875rem;color:var(--text-secondary,#202125a3)}.selected-vehicle__price{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.25rem;font-weight:800;color:var(--primary-500,#009de0)}.extra-services-grid{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width:576px){.extra-services-grid{grid-template-columns:repeat(2,1fr)}}.extra-service-card{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border:2px solid var(--border,#e4e4e5);border-radius:12px;cursor:pointer;transition:all .3s ease}.extra-service-card:hover{border-color:var(--primary-500,#009de0);transform:translateY(-2px)}.extra-service-card--selected{border-color:var(--primary-500,#009de0);background:rgba(0,157,224,.05)}.extra-service-card__checkbox{width:20px;height:20px;border:2px solid var(--border,#e4e4e5);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.extra-service-card--selected .extra-service-card__checkbox{background:var(--primary-500,#009de0);border-color:var(--primary-500,#009de0)}.extra-service-card__checkbox svg{width:14px;height:14px;color:#fff;display:none}.extra-service-card--selected .extra-service-card__checkbox svg{display:block}.extra-service-card__content{flex:1}.extra-service-card__name{font-weight:600;color:var(--text-primary,#202125);margin-bottom:4px}.extra-service-card__description{font-size:.75rem;color:var(--text-secondary,#202125a3);margin-bottom:6px;line-height:1.4}.extra-service-card__price{font-size:.875rem;color:var(--primary-500,#009de0);font-weight:600}.passengers-container{display:flex;flex-direction:column;gap:16px}.passenger-card{padding:16px;background:var(--surface,#f6f6f6);border-radius:12px}.passenger-card__header{font-weight:600;color:var(--text-primary,#202125);margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width:576px){.form-grid{grid-template-columns:repeat(2,1fr)}}.form-group{display:flex;flex-direction:column}.form-group--full{grid-column:1/-1}.form-label{font-size:.875rem;font-weight:600;color:var(--text-primary,#202125);margin-bottom:8px}.form-input,.form-textarea{padding:12px 16px;border:2px solid var(--border,#e4e4e5);border-radius:10px;font-family:var(--font-body, 'Plus Jakarta Sans', sans-serif);font-size:.875rem;color:var(--text-primary,#202125);transition:all .3s ease}.form-input:focus,.form-textarea:focus{outline:0;border-color:var(--primary-500,#009de0)}.form-textarea{resize:vertical;min-height:80px}.form-checkbox-group{display:flex;flex-direction:column;gap:12px}.form-checkbox{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.form-checkbox input[type=checkbox]{margin-top:2px;width:18px;height:18px;cursor:pointer}.form-checkbox span{font-size:.875rem;color:var(--text-secondary,#202125a3);line-height:1.5}.form-checkbox span a{color:var(--primary-500,#009de0);text-decoration:none;font-weight:600}.form-checkbox span a:hover{text-decoration:underline}.invoice-form{margin-top:16px;padding:20px;background:var(--surface,#f6f6f6);border-radius:12px}.payment-methods{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width:576px){.payment-methods{grid-template-columns:repeat(3,1fr)}}.payment-method{cursor:pointer}.payment-method input[type=radio]{display:none}.payment-method__content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;border:2px solid var(--border,#e4e4e5);border-radius:12px;transition:all .3s ease}.payment-method:hover .payment-method__content{border-color:var(--primary-500,#009de0);transform:translateY(-2px)}.payment-method input[type=radio]:checked+.payment-method__content{border-color:var(--primary-500,#009de0);background:rgba(0,157,224,.05)}.payment-method__content svg{width:32px;height:32px;color:var(--text-secondary,#202125a3)}.payment-method input[type=radio]:checked+.payment-method__content svg{color:var(--primary-500,#009de0)}.payment-method__content span{font-size:.875rem;font-weight:600;color:var(--text-primary,#202125)}.price-summary{background:#fff;border-radius:16px;padding:24px}.price-summary__title{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.125rem;font-weight:700;color:var(--text-primary,#202125);margin-bottom:20px}.price-summary__item{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.price-summary__item--discount .price-summary__label,.price-summary__item--discount .price-summary__value{color:#1fc70a}.price-summary__label{font-size:.875rem;color:var(--text-secondary,#202125a3)}.price-summary__value{font-weight:600;color:var(--text-primary,#202125)}.price-summary__value--discount{color:#1fc70a}.price-summary__divider{height:1px;background:var(--border,#e4e4e5);margin:16px 0}.price-summary__promo{display:flex;gap:8px;margin:16px 0}.price-summary__promo-input{flex:1;padding:10px 12px;border:2px solid var(--border,#e4e4e5);border-radius:8px;font-size:.875rem;transition:all .3s ease}.price-summary__promo-input:focus{outline:0;border-color:var(--primary-500,#009de0)}.price-summary__promo-button{padding:10px 16px;background:var(--surface,#f6f6f6);border:2px solid var(--border,#e4e4e5);border-radius:8px;font-size:.875rem;font-weight:600;color:var(--text-primary,#202125);cursor:pointer;transition:all .3s ease}.price-summary__promo-button:hover{background:var(--primary-500,#009de0);border-color:var(--primary-500,#009de0);color:#fff}.price-summary__total{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.price-summary__total-label{font-weight:700;color:var(--text-primary,#202125)}.price-summary__total-value{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.75rem;font-weight:800;color:var(--primary-500,#009de0)}.price-summary__submit{width:100%;padding:16px 24px;background:var(--primary-500,#009de0);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:24px}.price-summary__submit:hover{background:var(--primary-600,#0086c3);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,157,224,.3)}.price-summary__submit:active{transform:translateY(0)}.legal-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.legal-modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);cursor:pointer}.legal-modal__container{position:relative;width:100%;max-width:800px;max-height:90vh;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;animation:slideUp .4s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.legal-modal__header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid var(--border,#e4e4e5)}.legal-modal__title{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.5rem;font-weight:700;color:var(--text-primary,#202125);margin:0}.legal-modal__close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface,#f6f6f6);border:none;border-radius:8px;cursor:pointer;transition:all .25s ease}.legal-modal__close svg{width:20px;height:20px;stroke:var(--text-primary,#202125)}.legal-modal__close:hover{background:var(--primary-500,#009de0);transform:rotate(90deg)}.legal-modal__close:hover svg{stroke:white}.legal-modal__content{padding:28px;overflow-y:auto;flex:1}.legal-document{font-family:var(--font-body, 'Plus Jakarta Sans', sans-serif);color:var(--text-primary,#202125);line-height:1.7}.legal-document h2{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.5rem;font-weight:700;color:var(--text-primary,#202125);margin:0 0 24px 0;padding-bottom:12px;border-bottom:2px solid var(--primary-500,#009de0)}.legal-document h3{font-family:var(--font-heading, 'Outfit', sans-serif);font-size:1.125rem;font-weight:600;color:var(--text-primary,#202125);margin:28px 0 14px 0}.legal-document p{margin:0 0 16px 0;color:var(--text-secondary,#202125a3)}.legal-document ul{margin:0 0 16px 0;padding-left:24px}.legal-document li{margin:8px 0;color:var(--text-secondary,#202125a3)}.legal-document li::marker{color:var(--primary-500,#009de0)}.legal-modal__content--loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary,#202125a3)}@media (max-width:768px){.legal-modal__header{padding:20px}.legal-modal__title{font-size:1.25rem}.legal-modal__content{padding:20px}.legal-document h2{font-size:1.25rem}.legal-document h3{font-size:1rem}}