body {
  font-family: "Quicksand", sans-serif;
  /* background-color: #fcfcfd; */
  /* blue color: #2a64c5 */
  /* rssc brown #856A3E; */
  /* eski brown #A07832; */
}

a {
  text-decoration: none;
  color: #212529;
}

.text-small {
  font-size: 12px;
}

.text-small-md {
  font-size: 14px;
}

.text-small-lg {
  font-size: 17px;
}

.luxury-font {
  color:#936E2F;
}

.luxury-bg {
  background-color: #936E2F;
}

.silver-dark {
  background-color: #333333;
}

.rssc-bg {
  background-color: #f5f5f5;
}

.rssc-pano-bg {
  background-color: #f7f7f7cc; 
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.apple-grey {
  background-color: #f5f5f7;
}

.silver-grey {
  background-color: #e8e8e8;
}

.silver-soft-grey {
  background-color: #f7f7f7;
}

.silver-blue {
  background-color: #ddecf8;
}




/* Mega Menu Navigation */
.navbar-nav .dropdown-toggle::after {
  display: none !important;
}
.navbar-expand-xl .nav-item {
  border-right: 1px solid #ddd;
  padding: 0 15px;
}
.navbar-expand-xl .nav-item:last-child {
  border: none;
}

/* Mega Menu Bottom Rounded */
.left-right-bottom-border-round {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

/* Home is the base layer — stays in place */
.mob-view-home { transform: translateX(0); }

/* Cruise mega mobile views (Meander Kruvaziyer) */
.mob-view-gemi-turlari, .mob-view-destinasyonlar, .mob-view-kruvaziyer,
.mob-view-gemiler, .mob-view-firsatlar {
  transform: translateX(100%);
  z-index: 2;
}
#view-gemi-turlari:checked   ~ .mob-view-gemi-turlari,
#view-destinasyonlar:checked ~ .mob-view-destinasyonlar,
#view-kruvaziyer:checked     ~ .mob-view-kruvaziyer,
#view-gemiler:checked        ~ .mob-view-gemiler,
#view-firsatlar:checked      ~ .mob-view-firsatlar {
  transform: translateX(0);
}

/* Offer Link on Itinerary Pages */
.offer-link {
  color: #1f5c3d;
  padding: 0px 4px;
  border-radius: 4px;
  transition: background-color .15s ease, color .15s ease;
}
.offer-link:hover,
.offer-link:focus-visible {
  background-color: #2e6b45;
  color: #fff;
}

/* Request Price Button - Itinerary Page */
.btn.request-price-btn {
  background-color: #ef9b09;
  color: #fff;
  
}
.btn.request-price-btn:hover,
.btn.request-price-btn:focus,
.btn.request-price-btn:active {
  background-color: #e8be80;
  color: #303030;
}






/* Utility Bar Above Mobile Menu */
.d-xl-none:has(.offcanvas-menu.show) #mobileMenuToggler .navbar-toggler-icon {
  background-image: none;
  position: relative;
}

.d-xl-none:has(.offcanvas-menu.show) #mobileMenuToggler .navbar-toggler-icon::before,
.d-xl-none:has(.offcanvas-menu.show) #mobileMenuToggler .navbar-toggler-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22px;
  height: 2px;
  background-color: #333;
  transform: translate(-50%, -50%) rotate(45deg);
}

.d-xl-none:has(.offcanvas-menu.show) #mobileMenuToggler .navbar-toggler-icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media (max-width: 1199.98px) {
  .navbar.fixed-top { z-index: 1055; top: 30px !important; }
  .offcanvas-menu {
  top: 84px !important;
  height: calc(100vh - 84px) !important;
  height: calc(100dvh - 84px) !important;
}
}



/* ── Homepage hero (Silversea-style: bg image + left text, no card) ── */
.hero-scrim {
  background: linear-gradient(90deg, rgba(0,0,0,.60) 0%, rgba(0,0,0,.35) 45%, rgba(0,0,0,0) 80%);
}
.hero-title {
  font-size: clamp(2.25rem, 5.5vw, 4.5rem);
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -0.5px;
}
.hero-sub {
  font-size: clamp(1rem, 1.5vw, 1.25rem);
  line-height: 1.5;
  max-width: 34rem;
}
.hero-btn {
  transition: background-color .2s ease;
}
.hero-btn:hover,
.hero-btn:focus {
  background: transparent !important;   /* kills luxury-bg's color on hover */
  border-color: #fff !important;        /* re-assert white border on hover */
  color: #fff;                          /* keep text white */
}

.hero-section { min-height: 300px; }
.hero-row     { min-height: 34vh; }

@media (min-width: 576px) {
  .hero-section { min-height: 380px; }
  .hero-row     { min-height: 35vh; }
}

@media (min-width: 768px) {
  .hero-section { min-height: 450px; }
  .hero-row     { min-height: 60vh; }
}



/* Cruise itinerary offcanvas */
.cruise-details { --bs-offcanvas-width: min(600px, 90vw); }

@media (max-width: 1199.98px) {
  .cruise-details { z-index: 1065 !important; }
}

@media (max-width: 767.98px) {
  .cruise-details {
    --bs-offcanvas-width: 100vw !important;
    max-width: none !important;
    border-left: 0 !important;
    z-index: 1065 !important;
  }
}

@media (max-width: 1199.98px) {
  .navbar.fixed-top { z-index: 1055; top: 30px !important; }
  .offcanvas-menu {
    top: 84px !important;
    height: calc(100vh - 84px) !important;
    height: calc(100dvh - 84px) !important;
  }
  /* Push in-flow hero content (detail-page cruise hero) below the fixed mobile header (30px bar + 54px navbar = 84px) so the H1 isn't clipped */
  .hero-inflow { margin-top: 84px; }
}



/* ── Single-offcanvas mobile menu: sliding view switching ── */
.mobmenu-radio { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

#offcanvasNavbar { overflow: hidden; }              /* clip the panels waiting off-screen */
#offcanvasNavbar .offcanvas-body { min-height: 0; } /* keep long island lists scrollable */

.mob-view {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  background-color: var(--bs-offcanvas-bg, #fff);
  transition: transform .3s ease-in-out;
}

#offcanvasNavbar label.nav-link-btn,
#offcanvasNavbar label.btn { cursor: pointer; }


/* Scope the button styles ONLY to the main mobile menu */
#offcanvasNavbar .nav-link-btn {
  width: 100%;
  text-align: left;
  background: transparent;
  border: none;
  padding: 0.5rem 0;
}

#offcanvasNavbar { 
  border: 0 !important; 
}

/* Scope the widths ONLY to the navigation offcanvases */
/* Full width on small screens */
#offcanvasNavbar {
  width: 100% !important;
}






/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {

}


/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
#offcanvasNavbar {
    width: 51% !important;
  }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
/* Mega Menu Bottom Rounded */
.left-right-bottom-border-round {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 30px;
}


}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
.navbar-nav {
  margin-left: -23px;
}
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
}





/* CONTACT US FORM */
.contact-us-form .form-control:focus {
    border-color: #6c757d;
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.25);
}

.contact-us-form .btn-secondary {
    background-color: #6c757d;
    border-color: #6c757d;
    padding: 12px 30px;
    font-weight: 500;
}

.contact-us-form .btn-secondary:hover {
    background-color: #5a6268;
    border-color: #545b62;
}

.contact-us-form .form-control.is-invalid {
    border-color: #6c757d !important;
}

.contact-us-form .form-control.is-invalid:focus {
    border-color: #6c757d !important;
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.25) !important;
}

.contact-us-form .form-control.is-valid {
    border-color: #ced4da !important;
    background-image: none !important;
}

.contact-us-form .form-control.is-valid:focus {
    border-color: #6c757d !important;
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.25) !important;
}

.contact-us-form .success-message {
    background-color: #0d6efd;
    border: 1px solid #0a58ca;
    color: #ffffff;
    padding: 15px;
    border-radius: 5px;
    margin-bottom: 20px;
}
/* Itinerary accordion (gemi turu detay sayfaları) */
.itinerary-thumb {
    width: 96px;
    min-height: 96px;
}

@media (min-width: 768px) {
    .itinerary-thumb {
        width: 180px;
        min-height: 120px;
    }
}

.itinerary-chevron {
    transition: transform .2s ease;
}

.itinerary-day-btn:not(.collapsed) .itinerary-chevron {
    transform: rotate(180deg);
}

/* Kabin kategorileri sekmeleri */
.cabin-tabs .nav-link {
    min-width: 150px;
    color: #212529;
    background-color: #f5f5f7;
}

.cabin-tabs .nav-link:hover {
    background-color: #e8e8e8;
}

.cabin-tabs .nav-link .cabin-tab-price {
    color: #6c757d;
}

.cabin-tabs .nav-link.active {
    color: #fff;
    background-color: #1e5aa8;
}

.cabin-tabs .nav-link.active .cabin-tab-price {
    color: rgba(255, 255, 255, .8);
}

/* Destinasyon sayfaları: sabit menünün altında kalmasın */
.port-section {
    scroll-margin-top: 140px;
}

/* Kart slider (destinasyon limanları): yatay kaydırma, kartlara oturur, kaydırma çubuğu gizli */
.port-slider {
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.port-slider::-webkit-scrollbar {
    display: none;
}

.port-slider > * {
    flex: 0 0 90%;
    scroll-snap-align: start;
}

@media (min-width: 992px) {
    .port-slider > * {
        flex-basis: calc((100% - 3rem) / 2);
    }
}

/* Lacivert buton (Bootstrap buton değişkenleriyle) */
.btn-navy {
    --bs-btn-color: #fff;
    --bs-btn-bg: #1e5aa8;
    --bs-btn-border-color: #1e5aa8;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #1a4c8f;
    --bs-btn-hover-border-color: #1a4c8f;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #164179;
    --bs-btn-active-border-color: #164179;
}

.btn-outline-navy {
    --bs-btn-color: #1e5aa8;
    --bs-btn-border-color: #1e5aa8;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #1e5aa8;
    --bs-btn-hover-border-color: #1e5aa8;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1e5aa8;
    --bs-btn-active-border-color: #1e5aa8;
}
