
/* =========================================================
       1) ROOT / GLOBAL
    ========================================================= */
:root {
  --bg: #0d0d0d;
  --text: #fff;
  --muted: #bbb;
  --gold: #c8ab4f;
  --green: #72e07a;
  --border: #2f2f2f;
  --grid: #303030;
  --slotBg: #d9f8cf;
  --slotText: #000;
  --inputBg: #141414;
  --inputBorder: rgba(255, 255, 255, 0.18);
}

* {
  box-sizing: border-box;
}
html {
  scroll-behavior: auto;
}

body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background-color: var(--bg);
  background-image:
    linear-gradient(rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.18)),
    url("../../Images/bg-pattern-dark.jpg");
  background-repeat: repeat;
  background-size: 420px 420px;
  background-attachment: scroll;
  color: var(--text);
  text-align: center;
  will-change: auto;
}

main {
  display: block;
}

/* =========================================================
       2) TOP BAR / HERO
    ========================================================= */
.langBar {
  max-width: 1140px;
  margin: 16px auto 0;
  padding: 0 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.langLabel {
  color: rgba(255, 255, 255, 0.9);
  font-weight: 800;
  font-size: 14px;
}

#langSelect {
  background: #0f0f0f;
  color: #fff;
  border: 1px solid rgba(200, 171, 79, 0.6);
  border-radius: 10px;
  padding: 10px 12px;
  font-weight: 900;
  font-size: 17px;
  line-height: 1.2;
  outline: none;
  cursor: pointer;
}

#langSelect option {
  font-size: 17px;
}


#langSelect {
  background-color: #0b0b0b;
  background-image:
    linear-gradient(rgba(5, 5, 5, 0.74), rgba(5, 5, 5, 0.82)),
    url("../../Images/bg-pattern-dark.jpg");
  background-repeat: no-repeat, repeat;
  background-position: center, center;
  background-size: auto, 420px 420px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 6px 20px rgba(0, 0, 0, 0.18);
}
/* Fill the available row while keeping the Menu button at its regular size. */
.siteHeader { position: relative; display: flow-root; z-index: 7000; }
.siteHeaderInner { width: min(1140px, calc(100% - 24px)); margin: 16px auto 0; }
.siteHeaderActions { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px; direction: ltr; }
#suleymanSiteHeader .langBar { max-width: none; min-width: 0; margin: 0; padding: 0; display: flex; justify-content: flex-start; align-items: center; gap: 10px; direction: ltr; }
#suleymanSiteHeader .langLabel { flex: 0 0 auto; display: inline; }
#suleymanSiteHeader #langSelect { flex: 1 1 auto; min-width: 0; max-width: 100%; }
.siteMenu { position: relative; }
.siteMenuSummary { box-sizing: border-box; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.22); border-radius: 10px; background: #101010; color: #f6f2e8; font: 850 14px/1.2 Arial, Helvetica, sans-serif; list-style: none; cursor: pointer; user-select: none; white-space: nowrap; }
.siteMenuSummary::-webkit-details-marker { display: none; }
.siteMenuSummary:hover, .siteMenuSummary:focus-visible, .siteMenu[open] > .siteMenuSummary { border-color: rgba(200,171,79,.65); background: #211d13; color: #fff; outline: none; }
.siteMenuSummary:focus-visible { box-shadow: 0 0 0 3px rgba(226,202,125,.2); }
.siteMenuIcon { width: 18px; flex: 0 0 18px; display: inline-flex; flex-direction: column; gap: 3px; }
.siteMenuIcon span { width: 100%; height: 2px; display: block; border-radius: 99px; background: currentColor; }
.siteMenuPanel { position: absolute; top: calc(100% + 9px); right: 0; box-sizing: border-box; width: max-content; max-width: min(340px, calc(100vw - 24px)); max-height: min(640px, calc(100vh - 96px)); max-height: min(640px, calc(100dvh - 96px)); overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; padding: 8px; display: grid; gap: 3px; border: 1px solid rgba(200,171,79,.32); border-radius: 15px; background: #101010; box-shadow: 0 22px 52px rgba(0,0,0,.58); text-align: start; font-family: Arial, Helvetica, sans-serif; }
[dir="rtl"] .siteMenuPanel { direction: rtl; }
.siteMenu:not([open]) > .siteMenuPanel { display: none; }
.siteMenuPanel a { min-height: 46px; max-width: 100%; display: flex; align-items: center; padding: 10px 12px; border-radius: 10px; color: rgba(246,242,232,.9); font-size: 14px; font-weight: 800; line-height: 1.35; overflow-wrap: anywhere; text-decoration: none; }
.siteMenuPanel a:hover, .siteMenuPanel a:focus-visible { background: rgba(255,255,255,.08); color: #fff; outline: none; }
.siteMenuPanel a[aria-current] { color: #f3df9b; }
#packages, #location-hours, #contact-options { scroll-margin-block-start: 18px; }
.siteFooterBusinessNameValue { display: block; margin-block-end: 12px; color: #f3df9b; overflow-wrap: anywhere; }
.siteFooterLuxurySection { min-width: 0; grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.siteFooterLuxurySection--contact { grid-template-columns: minmax(0, 1fr); }
.siteFooterContactLinks { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 0; text-align: center; }
.siteFooterContactLinks .siteFooterLuxuryLink { overflow-wrap: anywhere; }
.visuallyHidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
@media (max-width: 720px) { .siteFooterLuxurySection { grid-template-columns: 1fr; gap: 12px; } .siteFooterContactLinks { flex-direction: column; align-items: stretch; gap: 12px; } .siteFooterContactLinks .siteFooterLuxurySeparator { display: none; } }
@media (min-width: 980px) { #suleymanSiteHeader #langSelect { max-width: 260px; } }
@media (prefers-reduced-motion: reduce) { #suleymanSiteHeader * { scroll-behavior: auto; } }


.contactPageContent{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:32px 0 56px;text-align:start}
.contactPageHeading{padding:24px 0 28px}.contactPageHeading h1{margin:10px 0 0;color:#fff;font-size:20px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.contactPageHeading{container-type:inline-size}.contactPageHeading .guideEyebrow{font-size:14px;font-size:clamp(11px,5.3cqi,16px);letter-spacing:normal;white-space:normal;overflow-wrap:anywhere;word-break:normal}.contactPageGrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.contactCard{min-width:0;border:1px solid rgba(215,185,95,.34);border-radius:22px;padding:clamp(22px,4vw,34px);background:rgba(215,185,95,.045)}
.contactCard h2{margin:0 0 20px;color:#f3df9b;font-size:1.5rem;line-height:1.3}.contactCard p,.contactCard address,.contactCard dd,.contactCard dt{font-size:1rem;line-height:1.7;font-style:normal}
.contactCard dl{margin:0}.contactCard dl>div+div{margin-top:20px}.contactCard dt{color:#f3df9b;font-weight:700}.contactCard dd{margin:6px 0 0}.contactCard address{margin:6px 0 0}
.contactAction{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:18px;border:1px solid rgba(215,185,95,.4);border-radius:14px;text-decoration:none;color:#f3df9b;font-size:1rem;line-height:1.5}
.contactAction+.contactAction{margin-top:16px}.contactAction bdi{color:#fff;white-space:nowrap}.contactMapLink{display:inline-block;margin-top:18px;color:#f3df9b;font-weight:700;text-underline-offset:4px;font-size:1rem}
.contactBooking{margin-top:24px}.contactBooking .guideCtaButton{font-size:1rem;white-space:normal;text-align:center}.contactPageContent a:focus-visible{outline:2px solid #f3df9b;outline-offset:4px}.contactAction:hover{background:rgba(215,185,95,.13)}
.contactMapSection{margin-top:32px;min-width:0}.contactMapSection h2{margin:0 0 18px;color:#f3df9b;font-size:1.5rem;line-height:1.3}.contactMapFrame{overflow:hidden;border:1px solid rgba(215,185,95,.34);border-radius:22px;background:#15130d}.contactMapFrame iframe{display:block;width:100%;max-width:100%;height:clamp(320px,45vw,450px);border:0}
@media(max-width:760px){.contactPageGrid{grid-template-columns:1fr}.contactPageContent{padding-top:18px}.contactBooking .guideCtaButton{display:block}}

.guideBreadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:10px; color:#bcb7aa; font-size:14px; line-height:1.6; }
.guideBreadcrumbs a { color:#f3df9b; text-decoration:none; }
.guideBreadcrumbs a:hover { text-decoration:underline; }
.guideEyebrow { color:#f3df9b; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
.contactPageHeading h1 { overflow-wrap:anywhere; }
.contactAction { color:#f3df9b; text-decoration:none; }
.contactAction:focus-visible, .contactMapLink:focus-visible { outline:3px solid rgba(226,202,125,.5); outline-offset:3px; }
.contactMapLink { display:inline-block; margin-top:18px; color:#f3df9b; font-weight:700; text-decoration:none; }
.contactMapLink:hover { text-decoration:underline; }
.contactCard h2 { margin-top:0; }
.contactCard dt { color:#d8bd70; font-size:14px; font-weight:800; }
.contactCard dd { color:#f6f2e8; margin:8px 0 22px; font-size:16px; line-height:1.75; overflow-wrap:anywhere; }
.contactCard dd a { color:inherit; text-decoration:none; }
.contactBusinessName { display:block; margin-bottom:10px; color:#ffffff; }
.guideCtaButton { min-height:48px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #d4b45a; border-radius:12px; padding:11px 20px; background:#c8ab4f; color:#0b0b0b; font-weight:900; line-height:1.35; text-decoration:none; }
.guideCtaButton:hover, .guideCtaButton:focus-visible { background:#e2ca7d; outline:3px solid rgba(226,202,125,.26); outline-offset:2px; }
.contactCredit { margin:0 auto; padding:0 16px 26px; color:#aaa; font-size:12px; line-height:1.7; text-align:center; }

/* Keep the complete official name inside the contact-page heading. */
.contactPageHeading .guideEyebrow { min-width:0; max-width:100%; }
.contactPageHeading .guideEyebrow bdi { display:block; max-width:100%; white-space:normal; overflow-wrap:anywhere; word-break:normal; }
/* Name and address each start their own row, with the label beside its value. */
.contactDetails > .contactDetailRow { display:block; min-width:0; max-width:100%; margin:0 0 22px; white-space:normal; overflow-wrap:anywhere; }
.contactDetails .contactDetailRow dt { display:inline; margin-inline-end:8px; }
.contactDetails .contactDetailRow dd { display:inline; margin:0; white-space:normal; overflow-wrap:anywhere; }
.contactDetails .contactDetailRow .contactBusinessName { display:inline; margin:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.contactDetails .contactDetailRow a, .contactDetails .contactDetailRow bdi { white-space:normal; overflow-wrap:anywhere; }
