.tour-breadcrumbs{color:#fffc;text-transform:uppercase;letter-spacing:.5px;z-index:1;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.85rem;font-weight:600;display:flex;position:relative}.tour-breadcrumbs a{color:#fff;text-decoration:none;transition:color .2s}.tour-breadcrumbs a:hover{color:var(--color-primary-light)}.tour-breadcrumbs .separator{color:#ffffff80;font-size:1.1rem;line-height:1}.tour-layout{grid-template-columns:1fr 380px;align-items:start;gap:3rem;max-width:1200px;margin:0 auto;padding-top:3rem;padding-bottom:5rem;display:grid}@media (width<=992px){.tour-layout{grid-template-columns:1fr;gap:2rem}}.tour-featured-image{-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-xl);width:100%;height:400px;box-shadow:var(--shadow-lg);margin-bottom:2rem}@media (width<=768px){.tour-featured-image{height:260px}}.tour-booking-note{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:2rem;padding:1.25rem 1.5rem}.tour-booking-note__title{color:var(--color-primary);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:1.05rem;font-weight:800;display:flex}.tour-booking-note p{color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.7}.tour-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);margin-bottom:2rem;padding:2.5rem;box-shadow:0 10px 30px #00000008}@media (width<=768px){.tour-card{border-radius:var(--radius-lg);padding:1.5rem}}.tour-description h2,.tour-section-heading{color:var(--color-text);align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:1.75rem;font-weight:800;display:flex}.tour-description p{color:var(--color-text-secondary);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.tour-highlights-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem;display:grid}@media (width<=480px){.tour-highlights-grid{grid-template-columns:1fr}}.highlight-box{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border-light);align-items:center;gap:1rem;padding:1rem;display:flex}.highlight-box.bg-green{background:var(--color-primary-light);border-color:var(--color-primary-light)}.highlight-box.bg-blue{background:#eff6ff;border-color:#dbeafe}.highlight-box.bg-red{background:#fef2f2;border-color:#fee2e2}.highlight-box.bg-yellow{background:#fefce8;border-color:#fef08a}.highlight-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.highlight-box.bg-green .highlight-icon{background:var(--color-primary-light);color:var(--color-primary-dark)}.highlight-box.bg-blue .highlight-icon{color:#2563eb;background:#dbeafe}.highlight-box.bg-red .highlight-icon{color:#dc2626;background:#fee2e2}.highlight-box.bg-yellow .highlight-icon{color:#ca8a04;background:#fef08a}[data-theme=dark] .highlight-box{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .highlight-box.bg-green .highlight-icon{color:#34d399;background:#10b98126}[data-theme=dark] .highlight-box.bg-blue .highlight-icon{color:#60a5fa;background:#3b82f626}[data-theme=dark] .highlight-box.bg-yellow .highlight-icon{color:#facc15;background:#eab30826}[data-theme=dark] .highlight-box.bg-red .highlight-icon{color:#f87171;background:#ef444426}.highlight-text{flex-direction:column;display:flex}.highlight-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:.8rem;font-weight:600}.highlight-value{color:var(--color-text);font-size:.95rem;font-weight:800}.inc-exc-grid{grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;display:grid}@media (width<=768px){.inc-exc-grid{grid-template-columns:1fr}}.inc-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.inc-list li{border-radius:var(--radius-sm);background:var(--color-surface-2);align-items:center;gap:.75rem;padding:.5rem 1rem .5rem .5rem;font-size:.95rem;font-weight:600;display:flex}.inc-list.included li{background:var(--color-primary-light);color:#065f46;border:1px solid var(--color-primary-light)}.inc-list.excluded li{color:#991b1b;background:#fef2f2;border:1px solid #fee2e2}[data-theme=dark] .inc-list.included li,[data-theme=dark] .inc-list.excluded li{background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border)}.inc-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.inc-list.included .inc-icon{background:var(--color-primary)}.inc-list.excluded .inc-icon{background:var(--color-error)}.tour-itinerary-section,.tour-faq-section{margin-top:3rem;margin-bottom:2rem}.acc-section{flex-direction:column;gap:1rem;margin-top:1.5rem;display:flex}.acc-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all .3s;overflow:hidden}.acc-header{cursor:pointer;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;transition:background .2s;display:flex}.acc-header:hover{background:var(--color-surface-2)}.acc-title-wrap{align-items:center;gap:1rem;display:flex}.acc-badge{background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);letter-spacing:.5px;text-transform:uppercase;padding:.35rem .85rem;font-size:.85rem;font-weight:800}.acc-title{color:var(--color-text);font-size:1.05rem;font-weight:700}.acc-icon-circle{background:var(--color-surface-2);width:32px;height:32px;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex}.acc-item:hover .acc-icon-circle{background:var(--color-border);color:var(--color-text)}.acc-item.active .acc-icon-circle{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.acc-icon-circle svg{width:16px;height:16px;transition:transform .3s}.acc-item.active .acc-icon-circle svg.icon-plus,.acc-item:not(.active) .acc-icon-circle svg.icon-minus{display:none}.acc-body{color:var(--color-text-secondary);border-top:1px solid var(--color-border-light);padding:0 1.5rem 1.5rem;font-size:1rem;line-height:1.8;display:none}.acc-item.active .acc-body{padding-top:1.5rem;display:block}.tour-organizer-card{margin-top:3rem;margin-bottom:2rem;padding:2rem}.tour-organizer-header{border-bottom:1px solid var(--color-border-light);justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.tour-organizer-img{-o-object-fit:cover;object-fit:cover;border:2px solid var(--color-border);width:3.5rem;height:3.5rem;box-shadow:var(--shadow-sm);border-radius:50%;flex-shrink:0}.tour-organizer-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;font-size:1.5rem;font-weight:800;display:flex}.tour-organizer-badge{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.tour-organizer-name{color:var(--color-text);margin-top:2px;font-size:1.15rem;font-weight:800}.tour-organizer-help{text-align:center}.tour-help-title{color:var(--color-text);margin-bottom:.5rem;font-size:1.25rem;font-weight:800}.tour-help-subtitle{color:var(--color-text-secondary);margin-bottom:1.25rem;font-size:.9rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.25rem;margin-top:1.5rem;display:grid}.gallery-img{-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-lg);cursor:pointer;width:100%;height:160px;transition:transform .3s,box-shadow .3s;box-shadow:0 4px 12px #0000000d}@media (hover:hover){.gallery-img:hover{transform:translateY(-4px)scale(1.02);box-shadow:0 12px 24px #0000001a}}.tour-sidebar{flex-direction:column;align-self:start;gap:1.5rem;display:flex;position:sticky;top:90px}.booking-card{border:1px solid var(--color-primary);padding:2rem;box-shadow:0 20px 40px #00a65114}.price-box{border-radius:var(--radius-lg);text-align:center;background:linear-gradient(135deg,#00a6511a,#00d97a0d);border:1px solid #00a65133;margin-bottom:1.5rem;padding:1.5rem}.price-box .label{color:var(--color-primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;font-size:.85rem;font-weight:800}.price-box .amount{color:var(--color-text);letter-spacing:-1px;font-size:2.5rem;font-weight:900}.quick-facts{margin-bottom:1.5rem}.quick-fact-item{border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.quick-fact-item:last-child{border-bottom:none}.quick-fact-item .label{color:var(--color-text-secondary);font-size:.95rem;font-weight:600}.quick-fact-item .value{color:var(--color-text);font-size:.95rem;font-weight:800}.tour-reviews-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-top:3rem;margin-bottom:2.5rem;padding:2rem 2.5rem;box-shadow:0 10px 30px #00000008}@media (width<=768px){.tour-reviews-summary{padding:1.5rem}}.tour-reviews-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.tour-reviews-verified{color:var(--color-text-secondary);align-items:center;gap:.35rem;font-size:.85rem;font-weight:500;display:inline-flex}.tour-service-chip-wrap{margin-bottom:1.5rem}.tour-rating-block{flex-wrap:wrap;align-items:center;gap:3rem;display:flex}@media (width<=640px){.tour-rating-block{gap:1.5rem}}.tour-rating-score-box{flex-direction:column;align-items:flex-start;min-width:110px;display:flex}.tour-rating-big{color:var(--color-text);letter-spacing:-1px;font-size:3.5rem;font-weight:900;line-height:1}.tour-rating-stars{color:#f59e0b;gap:2px;margin:.4rem 0;font-size:1.25rem;display:flex}.star-dim{color:var(--color-border);opacity:.7}.tour-rating-count{color:var(--color-text-secondary);font-size:.875rem;font-weight:600}.tour-rating-bars{flex-direction:column;flex:1;gap:.4rem;min-width:200px;max-width:500px;display:flex}.tour-rating-bar-row{color:var(--color-text-secondary);align-items:center;gap:.75rem;font-size:.85rem;font-weight:700;display:flex}.tour-rating-bar-num{text-align:right;width:14px}.tour-rating-bar-track{background:var(--color-border-light);border-radius:var(--radius-full);flex:1;height:8px;overflow:hidden}.tour-rating-bar-fill{background:var(--color-primary);border-radius:var(--radius-full);height:100%;transition:width .4s}.tour-review-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);margin-bottom:2.5rem;overflow:hidden;box-shadow:0 10px 30px #00000008}.tour-review-card-header{background:var(--color-surface-2);border-bottom:1px solid var(--color-border);color:var(--color-text);padding:1.25rem 2rem;font-size:1.15rem;font-weight:800}.tour-review-card-body{padding:2rem}.tour-review-form{max-width:640px;margin:0 auto}.form-group-stack{flex-direction:column;gap:1.25rem;display:flex}.form-label-bold{color:var(--color-text);margin-bottom:.4rem;font-size:.9rem;font-weight:700;display:block}.form-row-2col{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=540px){.form-row-2col{grid-template-columns:1fr}}.form-control{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;color:var(--color-text);outline:none;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #00a65126}.form-control.bg-disabled{background:var(--color-surface-2)}.tour-review-login-prompt{background:var(--color-surface-2);border-radius:var(--radius-md);text-align:center;border:1px solid var(--color-border);padding:2rem}.tour-review-login-prompt p{color:var(--color-text-secondary);margin-bottom:1.25rem;font-size:.95rem;font-weight:500}.star-rating{flex-direction:row-reverse;justify-content:flex-end;gap:.4rem;display:flex}.star-rating input{display:none}.star-rating label{cursor:pointer;color:var(--color-border);font-size:2rem;line-height:1;transition:color .2s}.star-rating label:hover,.star-rating label:hover~label,.star-rating input:checked~label{color:#f59e0b!important}.reviews-modal-overlay{z-index:1050;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;justify-content:center;align-items:flex-end;animation:.2s ease-out forwards fadeIn;display:none;position:fixed;inset:0}@media (width>=640px){.reviews-modal-overlay{align-items:center!important}}.reviews-modal-content{background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;flex-direction:column;width:100%;max-width:620px;max-height:85vh;animation:.35s cubic-bezier(.16,1,.3,1) forwards slideUp;display:flex;overflow:hidden;box-shadow:0 -10px 40px #00000040}@media (width>=640px){.reviews-modal-content{border-radius:var(--radius-lg);animation:.3s cubic-bezier(.16,1,.3,1) forwards scaleUp;box-shadow:0 25px 60px #00000059}}.reviews-modal-header{z-index:10;background:var(--color-surface);border-bottom:1px solid var(--color-border-light);position:sticky;top:0}.reviews-modal-title-row{justify-content:space-between;align-items:center;padding:1.25rem 1.5rem .75rem;display:flex}.reviews-modal-title-left{align-items:center;gap:.85rem;display:flex}.reviews-modal-avatar{border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border-light);width:2.75rem;height:2.75rem;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:flex}.reviews-modal-title{color:var(--color-text);margin:0;font-size:1.1rem;font-weight:700}.reviews-modal-subtitle{color:var(--color-text-secondary);margin-top:2px;font-size:.8rem}.reviews-modal-filters{white-space:nowrap;scrollbar-width:none;gap:.75rem;padding:.5rem 1.5rem 1rem;display:flex;overflow-x:auto}.reviews-modal-filters::-webkit-scrollbar{display:none}.reviews-filter-btn{background:var(--color-primary-light);color:var(--color-primary-dark);border-radius:var(--radius-sm);cursor:pointer;border:none;outline:none;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.85rem;font-weight:600;display:inline-flex}.reviews-select-wrap{display:inline-block;position:relative}.reviews-filter-select{appearance:none;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:.4rem 2.2rem .4rem .9rem;font-size:.85rem;font-weight:500}.select-arrow{pointer-events:none;color:var(--color-text-secondary);position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.reviews-popup-scroll{flex:1;padding:.5rem 1.5rem 2rem;overflow-y:auto}.reviews-popup-scroll::-webkit-scrollbar{width:6px}.reviews-popup-scroll::-webkit-scrollbar-track{background:var(--color-border-light);border-radius:var(--radius-sm)}.reviews-popup-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}.reviews-popup-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}[data-theme=dark] .reviews-popup-scroll::-webkit-scrollbar-track{background:var(--color-surface)}[data-theme=dark] .reviews-popup-scroll::-webkit-scrollbar-thumb{background:var(--color-border)}.reviews-list-container{flex-direction:column;display:flex}.review-item{border-bottom:1px solid var(--color-border-light);padding:1.25rem 0}.review-item:last-child{border-bottom:none}.review-item-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.review-author-wrap{align-items:center;gap:.85rem;display:flex}.review-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1rem;font-weight:700;display:flex}.review-author-name{color:var(--color-text);font-size:.95rem;font-weight:700}.review-rating-row{align-items:center;gap:.5rem;margin-top:2px;display:flex}.review-stars{color:#f59e0b;gap:2px;display:flex}.review-date{color:var(--color-text-muted);font-size:.75rem}.review-comment{color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.65}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=992px){.desktop-only{display:none!important}.mobile-booking-wrapper{margin-top:3rem;margin-bottom:2rem}.mobile-booking-wrapper .booking-card{position:static;box-shadow:0 10px 30px #00000008}}@media (width>=993px){.mobile-only{display:none!important}}
