/* Tur detay — harici stil dosyası (teal aksanlar; arka plan nötr — mint gradient kaldırıldı) */

 #tour-classic.tour-detail-page { font-family: var(--site-font-sans, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif); padding: 28px 14px 40px; background: #f1f5f9; color: #1e293b; }
 #tour-classic .container { max-width: 1200px; margin: auto; background-color: #fff; border: 1px solid rgba(13, 148, 136, 0.12); border-radius: 24px; box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08), 0 1px 0 rgba(255,255,255,.9) inset; overflow: visible; }
 #tour-classic .padding-wrapper { padding: 0; }
 #tour-classic .tour-detail-intro {
   background: linear-gradient(125deg, #0d9488 0%, #0f766e 38%, #0f172a 100%);
   padding: 26px 28px 30px;
   margin: 0;
   color: #ecfdf5;
 }
 #tour-classic .tour-detail-intro .breadcrumb { color: #99f6e4; margin-bottom: 14px; font-size: 13px; }
 #tour-classic .tour-detail-intro .breadcrumb a { color: #ccfbf1; text-decoration: none; font-weight: 600; }
 #tour-classic .tour-detail-intro .breadcrumb a:hover { text-decoration: underline; color: #fff; }
 #tour-classic .header-nav {
   display: flex;
   flex-wrap: wrap;
   gap: 10px;
   padding: 16px 24px 20px;
   border-bottom: 1px solid #e2e8f0;
   background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
   position: relative;
 }
 #tour-classic .header-nav .tab-link {
   padding: 10px 18px;
   text-decoration: none;
   color: #475569;
   font-weight: 700;
   font-size: 13px;
   border: none;
   border-radius: 999px;
   background: #f1f5f9;
   cursor: pointer;
   transition: background .2s, color .2s, box-shadow .2s;
 }
 #tour-classic .header-nav .tab-link:hover { background: #e2e8f0; color: #0f172a; }
 #tour-classic .header-nav .tab-link.active {
   color: #fff !important;
   background: linear-gradient(135deg, #0d9488 0%, #0f766e 100%) !important;
   border-bottom: none !important;
   box-shadow: 0 6px 18px rgba(13, 148, 136, 0.35);
 }
 /* Eski iki sütun (flex) — yalnızca Jolly olmayan #tour-classic; Jolly’de .td-main-row flex+nowrap kullanılır */
 #tour-classic.tour-detail-page:not(.tour-detail-jolly) .main-content { display: flex; flex-wrap: wrap; gap: 28px; padding: 0 20px 32px; align-items: flex-start; }
 #tour-classic.tour-detail-page:not(.tour-detail-jolly) .tour-details { flex: 2; min-width: 300px; }
 #tour-classic.tour-detail-page:not(.tour-detail-jolly) .sidebar { flex: 1; min-width: 280px; }
 #tour-classic .breadcrumb { font-size: 13px; color: #64748b; margin-bottom: 16px; }
 #tour-classic .tour-title-section h1 { 
     font-family: inherit;
     font-size: clamp(1.2rem, 2.8vw, 1.65rem);
     color: #fff !important;
     margin: 0;
     font-weight: 800;
     display: flex;
     align-items: center;
     gap: 10px;
     letter-spacing: -0.02em;
     flex-wrap: wrap;
 }
 #tour-classic .tour-title-section .tour-code { background: rgba(255,255,255,0.18); color: #fff; padding: 6px 12px; border-radius: 10px; font-weight: 800; font-size: 14px; border: 1px solid rgba(255,255,255,0.25); }
 #tour-classic .content-tabs { margin-top:25px; }
 #tour-classic .td-tab-panel { display:none; padding-top:20px; }
 #tour-classic .td-tab-panel.active { display:block; }
 #tour-classic .program-content ul { list-style:none; padding-left:0; }
 #tour-classic .program-content ul li { margin-bottom:12px; position:relative; padding-left:20px; }
 #tour-classic .program-content ul li::before { content:'•'; color:#0d9488; font-weight:bold; position:absolute; left:0; font-size:20px; line-height:1; }
 #tour-classic .program-content h3 { font-size:18px; margin-top:25px; }
 #tour-classic .program-content p { font-size:14px; line-height:1.7; }
 #tour-classic .date-price-accordion { margin-top:10px; }
 #tour-classic .date-price-accordion .date-header { background-color: #f8fafc; padding: 15px; font-weight: 700; border: 1px solid #e2e8f0; border-top-width: 0; display: flex; justify-content: space-between; align-items: center; cursor: pointer; transition: background-color .3s; }
 #tour-classic .date-price-accordion .date-header:first-of-type { border-top-width: 1px; border-radius: 12px 12px 0 0; }
 #tour-classic .date-price-accordion .date-header:hover { background-color: #f1f5f9; }
 #tour-classic .date-price-accordion .info-icon { background: linear-gradient(135deg, #0d9488 0%, #0f766e 100%); color: #fff; border-radius: 50%; width: 22px; height: 22px; text-align: center; line-height: 22px; font-style: normal; font-weight: bold; font-size: 12px; }
 #tour-classic .date-price-accordion .price-details { border: 1px solid #e2e8f0; border-top: none; padding: 20px; display: none; flex-wrap: wrap; gap: 15px; align-items: center; background-color: #fff; border-radius: 0 0 12px 12px; }
 #tour-classic .date-price-accordion .date-header.active + .price-details { display:flex; }
 #tour-classic .price-details .hotel-info { flex-basis:100%; margin-bottom:10px; }
 #tour-classic .price-details .price-category { text-align:center; flex-grow:1; }
 #tour-classic .price-details .rezervasyon-btn { background: linear-gradient(180deg, #0d9488 0%, #0f766e 100%); color: #fff; padding: 12px 22px; text-decoration: none; border-radius: 12px; font-weight: 800; font-size: 14px; border: none; cursor: pointer; margin-left: auto; align-self: flex-start; margin-top: 10px; box-shadow: 0 4px 14px rgba(13, 148, 136, 0.35); transition: filter .2s; }
 #tour-classic .price-details .rezervasyon-btn:hover { filter: brightness(1.05); }
 #tour-classic .price-category .label { font-size: 12px; font-weight: 700; color: #64748b; }
 #tour-classic .price-category .price-val { font-size: 17px; color: #0f766e; font-weight: 800; }
 #tour-classic .rezervasyon-btn { background: linear-gradient(180deg, #0d9488 0%, #0f766e 100%); color: #fff; padding: 12px 22px; text-decoration: none; border-radius: 12px; font-weight: 800; font-size: 14px; border: none; cursor: pointer; margin-left: auto; box-shadow: 0 4px 14px rgba(13, 148, 136, 0.35); }
 #tour-classic .sidebar .price-box { background: linear-gradient(180deg, #f0fdfa 0%, #ecfdf5 100%); border: 1px solid rgba(13, 148, 136, 0.35); padding: 22px; text-align: center; border-radius: 16px; margin-bottom: 20px; box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06); }
 #tour-classic .sidebar .price-box .tour-fee-label { background: linear-gradient(135deg, #0d9488 0%, #0f766e 100%); color: #fff; padding: 12px; font-weight: 800; display: block; border-radius: 12px 12px 0 0; margin: -22px -22px 20px -22px; }
 #tour-classic .sidebar .price-box .price { font-size: 32px; font-weight: 800; color: #0f766e; }
 #tour-classic .sidebar .price-box .old-price { font-size:24px; font-weight:500; color:#999; text-decoration: line-through; margin-right: 8px; }
 #tour-classic .sidebar .price-box .price-container { display: flex; flex-direction: column; align-items: center; }
 #tour-classic .sidebar .price-box .price-container .old-price { margin-right: 0; margin-bottom: 5px; }
 #tour-classic .sidebar .price-box .price-container .new-price { font-size: 28px; }
 #tour-classic .sidebar .price-box .price-note { font-size:12px; color:#666; margin-top:5px; }
 #tour-classic .sidebar .online-reservation-btn { background: linear-gradient(180deg, #059669 0%, #047857 100%); color: #fff; text-align: center; padding: 16px; font-weight: 800; border-radius: 12px; text-decoration: none; display: block; margin-bottom: 20px; box-shadow: 0 4px 14px rgba(5, 150, 105, 0.35); transition: filter .2s; }
 #tour-classic .sidebar .online-reservation-btn:hover { filter: brightness(1.05); color: #fff; }

 /* Tur detay — slider ve sütunlar */
 #tour-classic .slider-container {
   position: relative !important;
   width: auto !important;
   margin-left: 24px !important;
   margin-right: 24px !important;
   margin-top: 8px !important;
   margin-bottom: 28px !important;
   border-radius: 18px !important;
   overflow: hidden !important;
   box-shadow: 0 12px 36px rgba(15, 23, 42, 0.14) !important;
 }
 #tour-classic .sidebar {
   position: sticky;
   top: 92px;
   padding: 12px 8px 24px 16px !important;
 }
 @media (max-width: 768px) {
   #tour-classic .sidebar { position: static !important; padding: 0 16px 24px !important; }
}
 #tour-classic .sidebar .services-box { border:1px solid #dee2e6; border-radius:5px; margin-bottom:20px; }
 #tour-classic .sidebar .services-box h4 { background-color:#f8f9fa; margin:0; padding:10px 15px; font-size:14px; border-bottom:1px solid #dee2e6; border-radius:5px 5px 0 0; }
 #tour-classic .sidebar .services-box ul { list-style:none; padding:15px; margin:0; font-size:14px; }
 #tour-classic .sidebar .services-box ul li { margin-bottom:10px; padding-left:25px; position:relative; }
 #tour-classic .sidebar .services-box.included ul li::before { content:'✓'; color:#28a745; position:absolute; left:0; font-weight:bold; }
 #tour-classic .sidebar .services-box.excluded ul li::before { content:'✕'; color:#dc3545; position:absolute; left:0; font-weight:bold; }
        #tour-classic .slider-wrapper { display:flex; transition:transform .5s ease-in-out; height:100%; }
        #tour-classic .slide { min-width:100%; box-sizing:border-box; position:relative; height:100%; }
        #tour-classic .slide img { width:100%; height:100%; display:block; object-fit:cover; }
 #tour-classic .slider-btn { position:absolute; top:50%; transform:translateY(-50%); background-color:rgba(0,0,0,.5); color:#fff; border:none; cursor:pointer; padding:10px; font-size:18px; border-radius:50%; width:40px; height:40px; line-height:20px; text-align:center; }
 #tour-classic .slider-btn.prev { left:15px; }
 #tour-classic .slider-btn.next { right:15px; }
 #tour-classic .slider-dots { position:absolute; bottom:15px; left:50%; transform:translateX(-50%); display:flex; }
 #tour-classic .dot { cursor:pointer; height:12px; width:12px; margin:0 5px; background-color:rgba(255,255,255,.6); border-radius:50%; display:inline-block; transition:background-color .3s ease; }
 #tour-classic .dot.active { background-color:#fff; }
 #tour-classic .sidebar-image { width:100%; height:auto; aspect-ratio:1/1; object-fit:cover; border-radius:5px; margin-bottom:20px; }
 #tour-classic .selection-box { border:1px solid #dee2e6; border-radius:5px; margin-bottom:20px; background-color:#fff; }
 #tour-classic .selection-box-title { padding:12px 15px; background-color:#f8f9fa; font-weight:700; font-size:14px; border-bottom:1px solid #dee2e6; color:#343a40; }
 #tour-classic .selection-box-content { padding:15px; font-size:14px; }
 #tour-classic .date-option { margin-bottom:8px; position:relative; }
 #tour-classic .date-option label { display:block; padding:12px 15px; border:1px solid #ced4da; border-radius:4px; cursor:pointer; transition:all .2s ease-in-out; padding-left:45px; }
 #tour-classic .date-option input { display:none; }
 #tour-classic .date-option label::before { content:''; position:absolute; left:15px; top:50%; transform:translateY(-50%); width:18px; height:18px; border:2px solid #adb5bd; background:#fff; }
 #tour-classic .date-option input[type="radio"] + label::before { border-radius:50%; }
 #tour-classic .date-option input[type="checkbox"] + label::before { border-radius:3px; }
 #tour-classic .date-option label::after { content:''; position:absolute; left:20px; top:50%; transform:translateY(-50%) scale(0); width:8px; height:8px; background-color:#0d9488; border-radius:50%; transition:transform .2s ease-in-out; }
 #tour-classic .date-option input[type="checkbox"] + label::after { content:'✓'; font-size:16px; color:#fff; width:20px; height:20px; left:14px; background:#0d9488; border-radius:3px; text-align:center; line-height:20px; }
 #tour-classic .date-option:hover label { border-color:#5eead4; }
 #tour-classic .date-option input:checked + label { border-color:#0d9488; background-color:#ecfdf5; color:#0f766e; font-weight:600; }
 #tour-classic .date-option input:checked + label::before { border-color:#0d9488; }
 #tour-classic .date-option input:checked + label::after { transform:translateY(-50%) scale(1); }
 #tour-classic .hotel-info-sidebar { font-size:14px; color:#218838; font-weight:500; margin-top:15px; }
 #tour-classic .hotel-info-sidebar p { margin:0; }

 /* --- MOBİL RESPONSIVE --- */
 @media (max-width: 768px) {
   #tour-classic.tour-detail-page { padding: 12px 10px 24px; }
   #tour-classic .container { margin: 0 4px; border-radius: 18px !important; }
   #tour-classic .padding-wrapper { padding: 0; }
   #tour-classic .tour-detail-intro { padding: 20px 18px 22px; }
   
   /* Header Navigation - Mobil */
   #tour-classic .header-nav { flex-wrap: wrap; justify-content: flex-start; gap: 8px; padding: 14px 16px 16px; }
   #tour-classic .header-nav .tab-link { padding: 9px 14px; font-size: 11px; flex: 1 1 calc(50% - 6px); text-align: center; min-width: 120px; }
   
   /* Main Content - Mobil (Jolly dışı eski düzen) */
   #tour-classic.tour-detail-page:not(.tour-detail-jolly) .main-content { flex-direction: column; gap: 20px; padding: 0 14px 24px !important; }
   #tour-classic.tour-detail-page:not(.tour-detail-jolly) .tour-details { flex: none; min-width: auto; }
   #tour-classic.tour-detail-page:not(.tour-detail-jolly) .sidebar { flex: none; min-width: auto; }
   
   /* Tour Title - Mobil */
   #tour-classic .tour-title-section h1 { font-size: 18px; flex-direction: column; align-items: flex-start; gap: 5px; }
   #tour-classic .tour-title-section .tour-code { font-size: 14px; padding: 4px 8px; }
   
   /* Slider - Mobil */
   #tour-classic .slider-container { height: 250px !important; margin-left: 14px !important; margin-right: 14px !important; margin-top: 4px !important; margin-bottom: 20px !important; }
   
   /* Price Details - Mobil */
   #tour-classic .date-price-accordion .price-details { flex-direction: column; gap: 10px; }
   #tour-classic .price-details .price-category { flex-basis: auto; }
   #tour-classic .price-category .label { font-size: 11px; }
   #tour-classic .price-category .price-val { font-size: 14px; }
   #tour-classic .price-details .rezervasyon-btn { margin-left: 0; margin-top: 15px; align-self: center; }
   
   /* Sidebar - Mobil */
   #tour-classic .sidebar .price-box .price { font-size: 24px; }
   #tour-classic .sidebar .online-reservation-btn { padding: 12px; font-size: 14px; }
   
   /* Services Box - Mobil */
   #tour-classic .sidebar .services-box ul { padding: 10px; }
   #tour-classic .sidebar .services-box ul li { font-size: 13px; margin-bottom: 8px; }
   
   /* Breadcrumb - Mobil */
   #tour-classic .breadcrumb { font-size: 12px; margin-bottom: 10px; }
   
   /* Program Content - Mobil */
   #tour-classic .program-content h3 { font-size: 16px; margin-top: 20px; }
   #tour-classic .program-content p { font-size: 13px; line-height: 1.6; }
   
   /* Date Options - Mobil */
   #tour-classic .date-option label { padding: 10px 12px; font-size: 13px; }
   
   /* Rezervasyon Button - Mobil */
   #tour-classic .rezervasyon-btn { padding: 8px 16px; font-size: 13px; margin-left: 0; margin-top: 10px; }
 }

 @media (max-width: 600px) {
   #tour-classic .header-nav .tab-link { font-size: 10px; padding: 8px 10px; min-width: 0; flex: 1 1 100%; }
 }

 @media (max-width: 480px) {
   #tour-classic.tour-detail-page { padding: 8px 6px 20px; }
   
   /* Header Navigation - Küçük Mobil */
   #tour-classic .header-nav { flex-direction: column; align-items: stretch; }
   #tour-classic .header-nav .tab-link { width: 100%; flex: none; margin-bottom: 0; }
   
   /* Tour Title - Küçük Mobil */
   #tour-classic .tour-title-section h1 { font-size: 16px; }
   #tour-classic .tour-title-section .tour-code { font-size: 12px; padding: 3px 6px; }
   
   /* Slider - Küçük Mobil */
   #tour-classic .slider-container { height: 200px; }
   
   /* Sidebar - Küçük Mobil */
   #tour-classic .sidebar .price-box .price { font-size: 20px; }
   #tour-classic .sidebar .online-reservation-btn { padding: 10px; font-size: 13px; }
   
   /* Services Box - Küçük Mobil */
   #tour-classic .sidebar .services-box ul { padding: 8px; }
   #tour-classic .sidebar .services-box ul li { font-size: 12px; }
   
   /* Program Content - Küçük Mobil */
   #tour-classic .program-content h3 { font-size: 15px; }
   #tour-classic .program-content p { font-size: 12px; }
 }

 /* Tur Programı ve Ek Bilgiler için Rich Text Stilleri - GÜÇLÜ VERSİYON */
 .program-text, #tour-classic .program-text {
   font-family: var(--site-font-sans, "Poppins", system-ui, sans-serif) !important;
   font-size: 14px !important;
   line-height: 1.8 !important;
   color: #333 !important;
 }

 /* Ek Bilgiler: tek sütun, düz akış (çok sütun metin bozulmasın) */
 #ek-bilgiler-content .program-content {
   display: block;
 }
 #ek-bilgiler-content .program-text {
   column-count: 1 !important;
   column-rule: none !important;
   text-align: left;
   text-align: start;
   max-width: 100%;
   word-break: break-word;
   overflow-wrap: anywhere;
 }
 
 .program-text p, #tour-classic .program-text p {
   margin-bottom: 15px !important;
   line-height: 1.7 !important;
   color: #333 !important;
   text-align: justify !important;
 }
 
 .program-text strong, #tour-classic .program-text strong {
   font-weight: 700 !important;
   color: #2c3e50 !important;
   display: block !important;
   margin: 20px 0 10px 0 !important;
   font-size: 15px !important;
 }
 
 .program-text em, #tour-classic .program-text em {
   font-style: italic !important;
   color: #555 !important;
 }
 
 .program-text ul, .program-text ol, #tour-classic .program-text ul, #tour-classic .program-text ol {
   margin: 15px 0 !important;
   padding-left: 25px !important;
 }
 
 .program-text li, #tour-classic .program-text li {
   margin-bottom: 8px !important;
   line-height: 1.6 !important;
 }
 
 .program-text h1, .program-text h2, .program-text h3, .program-text h4, 
 .program-text h5, .program-text h6, #tour-classic .program-text h1, 
 #tour-classic .program-text h2, #tour-classic .program-text h3, 
 #tour-classic .program-text h4, #tour-classic .program-text h5, 
 #tour-classic .program-text h6 {
   font-weight: 700 !important;
   color: #2c3e50 !important;
   margin: 20px 0 10px 0 !important;
 }
 
 .program-text h1, #tour-classic .program-text h1 { font-size: 20px !important; }
 .program-text h2, #tour-classic .program-text h2 { font-size: 18px !important; }
 .program-text h3, #tour-classic .program-text h3 { font-size: 16px !important; }
 .program-text h4, #tour-classic .program-text h4 { font-size: 15px !important; }
 
 .program-text blockquote, #tour-classic .program-text blockquote {
   border-left: 4px solid #0d9488 !important;
   padding-left: 15px !important;
   margin: 15px 0 !important;
   font-style: italic !important;
   color: #555 !important;
 }
 
 .program-text hr, #tour-classic .program-text hr {
   border: none !important;
   border-top: 1px solid #dee2e6 !important;
   margin: 20px 0 !important;
 }

/* Slider aksiyon düğmeleri */
.tour-action-buttons {
  display: flex;
  gap: 10px;
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 20;
}
.action-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 15px;
  border: none;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.94);
  color: #0f172a;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.12);
  backdrop-filter: blur(10px);
  min-width: 96px;
  justify-content: center;
}
.action-btn:hover {
  background: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.15);
}
.print-btn:hover { background: #ecfdf5 !important; color: #0f766e !important; }
.share-btn:hover { background: #ecfdf5 !important; color: #0f766e !important; }
.pdf-btn:hover { background: #fffbeb !important; color: #b45309 !important; }
.action-btn svg { width: 18px; height: 18px; }
@media (max-width: 768px) {
  .tour-action-buttons { top: 10px; right: 10px; gap: 8px; }
  .action-btn { padding: 8px 12px; font-size: 12px; min-width: 72px; }
  .action-btn span { display: none; }
  .action-btn svg { width: 16px; height: 16px; }
}

#tour-classic .sidebar .services-box { border-radius: 12px; overflow: hidden; }
#tour-classic .sidebar .services-box h4 { font-weight: 800; }
#tour-classic .selection-box { border-radius: 12px; overflow: hidden; }
#tour-classic .sidebar-image { border-radius: 12px; }

/* ========== Tur detay — Jolly referans düzeni (.tour-detail-jolly) ========== */
#tour-classic.tour-detail-jolly.tour-detail-page {
  font-family: var(--site-font-sans, "Poppins", sans-serif);
  padding: 20px 10px 48px;
  background: #f1f5f9;
  color: #1e293b;
}
#tour-classic.tour-detail-jolly .container.td-container {
  max-width: 1200px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08);
  overflow: visible;
}
#tour-classic.tour-detail-jolly .padding-wrapper {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  padding: 20px 20px 28px;
  box-sizing: border-box;
}

.td-back-link {
  display: inline-block;
  margin: 8px 0 16px;
  font-size: 14px;
  font-weight: 500;
  color: #475569;
  text-decoration: none;
}
.td-back-link:hover {
  color: #2563eb;
  text-decoration: underline;
}

/* Galeri: Bootstrap / diğer stillerle çakışmayı önlemek için #tour-classic ile güçlendirildi */
#tour-classic.tour-detail-jolly .td-gallery-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 12px;
  align-items: stretch;
  margin-bottom: 8px;
  width: 100%;
  box-sizing: border-box;
}
.td-gallery-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  margin-bottom: 8px;
}
#tour-classic.tour-detail-jolly .td-gallery-main {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  min-height: 280px;
  background: #e2e8f0;
  grid-column: auto;
  grid-row: auto;
}
.td-gallery-main {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  min-height: 280px;
  background: #e2e8f0;
}
#tour-classic.tour-detail-jolly .td-gallery-main img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  display: block;
}
.td-gallery-main img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  display: block;
}
.td-gallery-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  padding: 8px 12px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  background: rgba(37, 99, 235, 0.92);
  max-width: calc(100% - 28px);
  line-height: 1.3;
}
#tour-classic.tour-detail-jolly .td-gallery-side {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-template-rows: 1fr 1fr !important;
  gap: 12px;
  min-height: 280px;
  min-width: 0;
}
.td-gallery-side {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
  min-height: 280px;
}
#tour-classic.tour-detail-jolly .td-g-cell {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: #e2e8f0;
  min-height: 120px;
  min-width: 0;
}
.td-g-cell {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: #e2e8f0;
  min-height: 0;
}
#tour-classic.tour-detail-jolly .td-g-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 120px;
}
.td-g-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 120px;
}
.td-all-photos-btn {
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border: none;
  border-radius: 999px;
  background: #fff;
  color: #1e40af;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.15);
  transition: transform 0.2s, box-shadow 0.2s;
}
.td-all-photos-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.18);
}

/* Favori / Paylaş / Yazdır — ana görselin sağ üstü */
.td-hero-actions {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 6;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  align-items: center;
  max-width: calc(100% - 24px);
  pointer-events: none;
}
.td-hero-actions .td-hero-action-btn {
  pointer-events: auto;
}
#tour-classic.tour-detail-jolly .td-hero-action-btn {
  padding: 8px 14px;
  font-size: 12px;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(226, 232, 240, 0.98);
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.14);
}
#tour-classic.tour-detail-jolly .td-hero-action-btn:hover {
  background: #fff;
  border-color: #cbd5e1;
}
#tour-classic.tour-detail-jolly .td-hero-action-btn--icon {
  padding: 10px 12px;
  border-radius: 12px;
}
@media (max-width: 576px) {
  .td-hero-action-label {
    display: none !important;
  }
  .td-hero-actions {
    top: 8px;
    right: 8px;
    gap: 6px;
  }
  #tour-classic.tour-detail-jolly .td-hero-action-btn {
    padding: 8px 10px;
  }
}

.td-title-block {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 12px;
  margin: 20px 0 4px;
}
.td-title {
  flex: 1 1 280px;
  margin: 0;
  font-size: clamp(1.15rem, 2.6vw, 1.75rem);
  font-weight: 600;
  color: #0f172a;
  letter-spacing: -0.02em;
  line-height: 1.35;
}
.td-code-pill {
  font-size: 13px;
  font-weight: 600;
  color: #334155;
  background: #f1f5f9;
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
}

.td-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 12px 16px;
  padding: 12px 0 0;
  margin-bottom: 0;
  border-bottom: 1px solid #e2e8f0;
}
.td-tabs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 4px;
  flex: 1;
  min-width: 0;
}
#tour-classic.tour-detail-jolly .td-tabs--menu .td-tab.tab-link {
  padding: 12px 10px 14px;
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #64748b;
  background: transparent;
  border: none;
  border-radius: 0;
  border-bottom: 3px solid transparent;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s;
  box-shadow: none;
}
#tour-classic.tour-detail-jolly .td-tabs--menu .td-tab.tab-link:hover {
  color: #0f172a;
  background: transparent;
}
#tour-classic.tour-detail-jolly .td-tabs--menu .td-tab.tab-link.active {
  color: #2563eb;
  background: transparent;
  border-bottom-color: #2563eb;
  box-shadow: none;
}
.td-btn-grup {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  margin: 0 0 4px 8px;
  background: #2563eb;
  color: #fff !important;
  text-decoration: none;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
  transition: filter 0.2s;
}
.td-btn-grup:hover {
  filter: brightness(1.06);
  color: #fff !important;
}
.td-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.td-soft-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.td-soft-btn:hover {
  background: #f8fafc;
  border-color: #94a3b8;
}
.td-soft-btn.is-fav {
  color: #dc2626;
  border-color: #fecaca;
  background: #fff5f5;
}

#tour-classic.tour-detail-jolly .td-content-wrap {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 16px 16px 0 0;
  padding: 24px 18px 32px;
  margin-top: 0;
}
#tour-classic.tour-detail-jolly .td-tab-panel {
  padding-top: 24px;
}

/* main = blok; iki sütun .td-main-row: flex+nowrap (masaüstünde yan panel alta sarmaz) */
#tour-classic.tour-detail-jolly .main-content.td-main {
  display: block !important;
  flex-direction: unset !important;
  flex-wrap: unset !important;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 12px 28px !important;
}
#tour-classic.tour-detail-jolly .td-main-row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 24px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
#tour-classic.tour-detail-jolly .td-main-row .tour-details.td-content-wrap {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: none !important;
  width: auto !important;
}
#tour-classic.tour-detail-jolly .td-main-row .sidebar {
  flex: 0 0 min(300px, 32vw) !important;
  width: min(300px, 32vw) !important;
  max-width: min(300px, 32vw) !important;
  min-width: 0;
  box-sizing: border-box;
  position: sticky;
  top: 88px;
  align-self: flex-start;
}
/* Üstte galeri varken yan sütundaki tekrar büyük görseli kaldır */
#tour-classic.tour-detail-jolly .sidebar .sidebar-image {
  display: none !important;
}
#tour-classic.tour-detail-jolly .td-grup-below-main {
  width: 100%;
  max-width: 720px;
  margin: 0 auto 32px;
  padding: 0 12px;
  box-sizing: border-box;
}
/* Dar ekranda tek sütun */
@media (max-width: 768px) {
  #tour-classic.tour-detail-jolly .main-content.td-main {
    padding: 0 14px 24px !important;
  }
  #tour-classic.tour-detail-jolly .td-main-row {
    flex-direction: column !important;
    flex-wrap: wrap !important;
    gap: 20px;
  }
  #tour-classic.tour-detail-jolly .td-main-row .tour-details.td-content-wrap {
    flex: 1 1 auto !important;
    width: 100% !important;
  }
  #tour-classic.tour-detail-jolly .td-main-row .sidebar {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: none !important;
    position: static;
  }
}

.td-panel-inner {
  max-width: 100%;
}
.td-overview-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}
.td-overview-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 20px;
}
.td-card-title {
  font-size: 1.05rem;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 14px;
}
.td-dl {
  margin: 0;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px 20px;
  font-size: 14px;
  line-height: 1.5;
}
.td-dl dt {
  margin: 0;
  color: #64748b;
  font-weight: 500;
}
.td-dl dd {
  margin: 0;
  color: #0f172a;
}
.td-body-text {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: #334155;
}
.td-lead {
  margin: 16px 0 0;
  font-size: 15px;
  line-height: 1.65;
  color: #334155;
}
.td-section-title {
  font-size: 1.1rem;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 14px;
}
.td-mt {
  margin-top: 28px;
}
.td-muted {
  color: #64748b;
  font-size: 14px;
}
.td-rich {
  font-size: 14px;
  line-height: 1.7;
  color: #334155;
}
.td-rich p {
  margin-bottom: 12px;
}
.td-grup-section {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid #e2e8f0;
}
.td-grup-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 20px;
  max-width: 560px;
}

/* Galeri modal */
.td-gallery-modal[hidden] {
  display: none !important;
}
.td-gallery-modal:not([hidden]) {
  display: block;
}
.td-gallery-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
}
.td-gallery-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.65);
}
.td-gallery-modal__panel {
  position: relative;
  margin: 4vh auto;
  max-width: 960px;
  max-height: 92vh;
  overflow: auto;
  background: #fff;
  border-radius: 16px;
  padding: 20px 20px 24px;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.2);
}
.td-gallery-modal__close {
  position: absolute;
  top: 12px;
  right: 16px;
  border: none;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  color: #64748b;
  cursor: pointer;
}
.td-gallery-modal__close:hover {
  color: #0f172a;
}
.td-gallery-modal__title {
  margin: 0 0 16px;
  font-size: 1.15rem;
  font-weight: 600;
  color: #0f172a;
  padding-right: 40px;
}
.td-gallery-modal__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 10px;
}
.td-gallery-modal__grid img {
  width: 100%;
  height: 120px;
  object-fit: cover;
  border-radius: 8px;
}

/* Jolly: teal aksanları maviye çevir */
#tour-classic.tour-detail-jolly .sidebar .price-box {
  background: linear-gradient(180deg, #eff6ff 0%, #fff 100%);
  border: 1px solid rgba(37, 99, 235, 0.28);
}
#tour-classic.tour-detail-jolly .sidebar .price-box .tour-fee-label {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
}
#tour-classic.tour-detail-jolly .sidebar .price-box .price {
  color: #1d4ed8;
}
#tour-classic.tour-detail-jolly .sidebar .online-reservation-btn {
  background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
}
#tour-classic.tour-detail-jolly .sidebar .online-reservation-btn:hover {
  filter: brightness(1.05);
  color: #fff;
}
#tour-classic.tour-detail-jolly .date-price-accordion .info-icon {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
}
#tour-classic.tour-detail-jolly .price-details .rezervasyon-btn {
  background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
}
#tour-classic.tour-detail-jolly .price-details .rezervasyon-btn:hover {
  filter: brightness(1.05);
}
#tour-classic.tour-detail-jolly .price-category .price-val {
  color: #1d4ed8;
}
#tour-classic.tour-detail-jolly .program-content ul li::before {
  color: #2563eb;
}
#tour-classic.tour-detail-jolly .date-option input:checked + label {
  border-color: #2563eb;
  background-color: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
}
#tour-classic.tour-detail-jolly .date-option input:checked + label::before {
  border-color: #2563eb;
}
#tour-classic.tour-detail-jolly .date-option label::after {
  background-color: #2563eb;
}
#tour-classic.tour-detail-jolly .date-option input[type="checkbox"] + label::after {
  background: #2563eb;
}
#tour-classic.tour-detail-jolly .rezervasyon-btn {
  background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
}
#tour-classic.tour-detail-jolly .program-text blockquote {
  border-left-color: #2563eb !important;
}

@media (max-width: 900px) {
  #tour-classic.tour-detail-jolly .td-gallery-grid {
    grid-template-columns: 1fr !important;
  }
  .td-gallery-grid {
    grid-template-columns: 1fr;
  }
  #tour-classic.tour-detail-jolly .td-gallery-side {
    min-height: 200px;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto auto !important;
  }
  .td-gallery-side {
    min-height: 200px;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
  }
  #tour-classic.tour-detail-jolly .td-gallery-main,
  .td-gallery-main {
    min-height: 220px;
  }
  #tour-classic.tour-detail-jolly .td-gallery-main img,
  .td-gallery-main img {
    min-height: 220px;
  }
}
@media (max-width: 768px) {
  #tour-classic.tour-detail-jolly.tour-detail-page {
    padding: 12px 8px 32px;
  }
  .td-overview-grid {
    grid-template-columns: 1fr;
  }
  .td-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
  .td-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }
  #tour-classic.tour-detail-jolly .td-tabs--menu .td-tab.tab-link {
    flex: 0 0 auto;
    font-size: 10px;
    padding: 10px 8px 12px;
  }
}
