:root {
  --guide-green:#0b3028; --guide-deep:#061e19; --guide-ink:#0c3029; --guide-cream:#f7f2e8;
  --guide-paper:#fcfaf5; --guide-muted:#5e6d68; --guide-line:rgba(12,48,41,.16); --guide-gold:#c5a56e;
  --guide-serif:"Iowan Old Style",Baskerville,"Times New Roman",serif;
  --guide-sans:"Avenir Next","Segoe UI",Arial,sans-serif;
  --guide-shell:min(1540px,calc(100vw - 72px));
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:104px; }
body.guide-page { margin:0; overflow-x:hidden; color:var(--guide-ink); background:var(--guide-paper); font-family:var(--guide-sans); }
.guide-page img { display:block; max-width:100%; }
.guide-page a { color:inherit; }
.guide-shell { width:var(--guide-shell); margin-inline:auto; }

.guide-header { position:sticky; top:0; z-index:100; color:var(--guide-ink); background:rgba(252,250,245,.94); border-bottom:1px solid var(--guide-line); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); }
.guide-header-inner { width:min(1700px,calc(100vw - 36px)); min-height:86px; margin:auto; display:flex; align-items:center; gap:18px; }
.guide-brand { flex:0 0 auto; display:block; }
.guide-brand img { width:clamp(150px,12vw,210px); height:auto; }
.guide-brand-divider { width:1px; height:36px; background:var(--guide-line); }
.guide-name { display:flex; flex-direction:column; gap:6px; min-width:130px; text-decoration:none; line-height:1; }
.guide-name small { color:#91764d; font-size:.52rem; font-weight:750; letter-spacing:.21em; }
.guide-name strong { font-size:.74rem; letter-spacing:.08em; }
.guide-nav { margin-left:auto; display:flex; align-items:center; gap:clamp(18px,2.5vw,40px); }
.guide-nav a { font-size:.74rem; font-weight:700; letter-spacing:.04em; text-decoration:none; white-space:nowrap; }
.guide-nav a:hover { color:#9a7744; }
.guide-language { display:flex; padding:5px; border:1px solid var(--guide-line); border-radius:999px; }
.guide-language button { min-width:47px; height:34px; padding:0 7px; display:flex; align-items:center; justify-content:center; gap:5px; border:0; border-radius:999px; color:var(--guide-muted); background:transparent; cursor:pointer; }
.guide-language button::before { display:none !important; content:none !important; }
.guide-language button.is-active { color:white; background:var(--guide-green); }
.guide-language button span { display:block !important; width:16px; height:11px; border-radius:2px; background:center/cover no-repeat; box-shadow:0 0 0 1px #0001; }
.guide-language button[data-lang="tr"] span { width:20px; height:13px; background-image:url('/images/ui/flag-tr.svg'); }
.guide-language button[data-lang="en"] span { background-image:url('/images/ui/flag-gb.svg'); }
.guide-language button[data-lang="ar"] span { background-image:url('/images/ui/flag-ar.svg'); }
.guide-language button b { font-size:.58rem; letter-spacing:.03em; }
.guide-header-booking {
  min-height:50px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; gap:10px;
  color:#072e1d; background:#25d366; border:1px solid #25d366; border-radius:3px; text-decoration:none;
  font-size:.66rem; font-weight:800; letter-spacing:.075em; text-transform:uppercase; white-space:nowrap;
  box-shadow:0 12px 28px rgba(21,126,67,.18); transition:background .22s ease,transform .22s ease,box-shadow .22s ease;
}
.guide-header-booking::before { content:""; width:19px; height:19px; flex:0 0 auto; background:currentColor; -webkit-mask:url('/images/ui/whatsapp.svg') center/contain no-repeat; mask:url('/images/ui/whatsapp.svg') center/contain no-repeat; }
.guide-header-booking:hover { background:#36df75; border-color:#36df75; transform:translateY(-2px); box-shadow:0 16px 34px rgba(21,126,67,.25); }
.guide-menu-toggle { display:none; width:42px; height:42px; padding:0; border:1px solid var(--guide-line); border-radius:50%; background:transparent; }
.guide-menu-toggle span { display:block; width:17px; height:1px; margin:5px auto; background:currentColor; transition:.25s ease; }
.guide-mobile-nav { display:none; }

.guide-hero { min-height:calc(100svh - 86px); display:grid; align-items:center; padding:clamp(72px,7vw,116px) 0; background:radial-gradient(circle at 8% 10%,rgba(197,165,110,.13),transparent 30%),linear-gradient(180deg,#faf7ef,#ece5d9); }
.guide-hero-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(510px,1.2fr); align-items:center; gap:clamp(54px,8vw,130px); }
.guide-eyebrow { margin:0; color:#806b4a; font:750 .62rem/1.4 var(--guide-sans); letter-spacing:.22em; text-transform:uppercase; }
.guide-eyebrow::before { content:""; display:inline-block; width:28px; height:1px; margin-right:12px; vertical-align:middle; background:currentColor; }
.guide-hero h1,.guide-section-head h2,.guide-stay h2 { margin:30px 0; font:400 clamp(4.4rem,7vw,8rem)/.87 var(--guide-serif); letter-spacing:-.055em; text-wrap:balance; }
.guide-hero-lead { max-width:660px; margin:0; color:var(--guide-muted); font-size:clamp(1rem,1.15vw,1.16rem); line-height:1.8; }
.guide-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.guide-button { min-height:52px; padding:0 23px; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; text-decoration:none; font-size:.69rem; font-weight:750; letter-spacing:.1em; text-transform:uppercase; transition:.25s ease; }
.guide-button-primary { color:white !important; background:var(--guide-green); }
.guide-button-primary:hover { background:#174a3f; transform:translateY(-2px); }
.guide-button-quiet { border-color:var(--guide-line); background:rgba(255,255,255,.36); }
.guide-note { max-width:610px; margin:24px 0 0; color:#74817d; font-size:.76rem; line-height:1.6; }
.guide-hero-collage { position:relative; min-height:clamp(520px,52vw,760px); }
.guide-hero-photo { position:absolute; margin:0; overflow:hidden; box-shadow:0 36px 88px rgba(12,48,41,.18); }
.guide-hero-photo img { width:100%; height:100%; object-fit:cover; }
.guide-hero-photo-main { inset:0 14% 8% 0; }
.guide-hero-photo-side { right:0; bottom:0; width:42%; height:43%; border:11px solid #ece5d9; }
.guide-hero-seal { position:absolute; top:6%; right:4%; width:124px; height:124px; display:grid; place-content:center; border-radius:50%; color:white; background:var(--guide-green); text-align:center; box-shadow:0 22px 55px rgba(11,48,40,.28); }
.guide-hero-seal strong { font:400 2.6rem/1 var(--guide-serif); }
.guide-hero-seal span { max-width:70px; margin-top:7px; font-size:.53rem; font-weight:750; line-height:1.25; letter-spacing:.13em; }

.guide-intro { padding:clamp(90px,10vw,160px) 0; background:var(--guide-paper); }
.guide-section-head { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(300px,.45fr); gap:clamp(52px,9vw,150px); align-items:end; margin-bottom:54px; }
.guide-section-head h2 { max-width:900px; margin:27px 0 0; font-size:clamp(3.6rem,6.1vw,6.8rem); line-height:.92; }
.guide-section-head > p { margin:0; padding-left:28px; border-left:1px solid var(--guide-line); color:var(--guide-muted); line-height:1.8; }
.guide-toolbar { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:30px; padding:14px 0; border-top:1px solid var(--guide-line); border-bottom:1px solid var(--guide-line); }
.guide-filters { display:flex; flex-wrap:wrap; gap:8px; }
.guide-filters button { min-height:38px; padding:0 16px; border:1px solid var(--guide-line); border-radius:999px; color:var(--guide-ink); background:transparent; font:700 .65rem/1 var(--guide-sans); letter-spacing:.06em; cursor:pointer; }
.guide-filters button.is-active,.guide-filters button:hover { color:white; background:var(--guide-green); border-color:var(--guide-green); }
.guide-sort { display:flex; align-items:center; gap:10px; color:var(--guide-muted); font-size:.66rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.guide-sort select { min-height:40px; padding:0 34px 0 13px; border:1px solid var(--guide-line); border-radius:2px; color:var(--guide-ink); background:#fff; font:650 .7rem var(--guide-sans); }
.places-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:16px; }
.place-card { grid-column:span 4; min-height:560px; position:relative; display:flex; flex-direction:column; overflow:hidden; color:white; background:var(--guide-green); isolation:isolate; }
.place-card:nth-child(1),.place-card:nth-child(5) { grid-column:span 8; }
.place-card:nth-child(1) { min-height:650px; }
.place-card-image { position:absolute; inset:0; z-index:-2; }
.place-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .75s cubic-bezier(.22,1,.36,1); }
.place-card::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(2,18,15,.04) 20%,rgba(2,18,15,.92) 88%); }
.place-card:hover .place-card-image img { transform:scale(1.035); }
.place-card-top { display:flex; justify-content:space-between; gap:12px; padding:22px; }
.place-index,.place-category { font-size:.58rem; font-weight:750; letter-spacing:.14em; text-transform:uppercase; }
.place-category { padding:8px 10px; border:1px solid rgba(255,255,255,.35); background:rgba(0,0,0,.12); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.place-card-body { margin-top:auto; padding:26px 26px 28px; }
.place-card h3 { margin:0 0 11px; font:400 clamp(2rem,2.5vw,3.1rem)/.98 var(--guide-serif); letter-spacing:-.035em; }
.place-card p { max-width:620px; margin:0; color:rgba(255,255,255,.8); font-size:.85rem; line-height:1.65; }
.place-meta { display:flex; flex-wrap:wrap; gap:7px; margin-top:18px; }
.place-meta span { padding:7px 9px; border:1px solid rgba(255,255,255,.25); color:rgba(255,255,255,.86); font-size:.59rem; font-weight:700; letter-spacing:.06em; }
.place-actions { display:flex; gap:9px; margin-top:20px; }
.place-actions a { min-height:42px; padding:0 15px; display:inline-flex; align-items:center; border:1px solid rgba(255,255,255,.3); text-decoration:none; font-size:.62rem; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.place-actions a:first-child { color:var(--guide-ink); background:#f6f0e4; border-color:#f6f0e4; }
.place-actions a:hover { border-color:var(--guide-gold); }
.place-card.is-hidden { display:none; }

.route-section { padding:clamp(92px,10vw,160px) 0; color:white; background:var(--guide-green); }
.guide-eyebrow-light { color:#cbb98e; }
.route-heading > p { color:rgba(255,255,255,.67); border-color:rgba(255,255,255,.22); }
.route-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); }
.route-card { min-height:390px; padding:28px; display:flex; flex-direction:column; border-right:1px solid rgba(255,255,255,.22); }
.route-card:last-child { border-right:0; }
.route-number { color:#cbb98e; font-size:.6rem; font-weight:750; letter-spacing:.16em; }
.route-card h3 { margin:58px 0 18px; font:400 clamp(1.9rem,2.3vw,2.8rem)/1 var(--guide-serif); }
.route-card > p { margin:0; color:rgba(255,255,255,.68); font-size:.82rem; line-height:1.65; }
.route-stops { margin:24px 0 0; padding:0; list-style:none; }
.route-stops li { position:relative; padding:9px 0 9px 17px; border-top:1px solid rgba(255,255,255,.13); font-size:.7rem; }
.route-stops li::before { content:""; position:absolute; left:0; top:15px; width:5px; height:5px; border:1px solid #cbb98e; border-radius:50%; }
.route-card a { margin-top:auto; padding-top:25px; color:#e5d3a9; font-size:.62rem; font-weight:750; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }

.guide-stay { padding:clamp(78px,9vw,132px) 0; color:white; background:#071f1a url('/images/ui/platform-atmosphere-v2.png') center/cover no-repeat; position:relative; isolation:isolate; }
.guide-stay::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(3,20,17,.88),rgba(3,20,17,.62)); }
.guide-stay-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:60px; align-items:end; }
.guide-stay h2 { max-width:820px; margin:25px 0 20px; font-size:clamp(3.5rem,5.5vw,6.4rem); }
.guide-stay p { max-width:660px; color:rgba(255,255,255,.72); line-height:1.7; }
.guide-stay-actions { display:flex; flex-wrap:wrap; gap:10px; }
.guide-button-cream { color:var(--guide-ink) !important; background:var(--guide-cream); border-color:var(--guide-cream); }
.guide-button-outline { color:white !important; border-color:rgba(255,255,255,.52); background:rgba(255,255,255,.08); }
.guide-button-cream:hover { color:#fff !important; background:#a7854d; border-color:#a7854d; }
.guide-button-outline:hover { background:rgba(255,255,255,.16); border-color:#d8bd8d; }

.guide-footer { padding:72px 0 26px; color:rgba(255,255,255,.72); background:var(--guide-deep); }
.guide-footer-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:clamp(40px,7vw,110px); }
.guide-footer img { width:190px; height:auto; margin-bottom:22px; }
.guide-footer strong { display:block; margin-bottom:15px; color:white; font-size:.71rem; letter-spacing:.09em; text-transform:uppercase; }
.guide-footer p { margin:0 0 15px; font-size:.78rem; line-height:1.75; }
.guide-footer a { color:#d8bd8d; font-size:.67rem; font-weight:700; letter-spacing:.05em; }
.guide-footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:54px; padding-top:22px; border-top:1px solid rgba(255,255,255,.13); font-size:.66rem; }

html[dir="rtl"] body.guide-page { font-family:Tahoma,"Segoe UI",Arial,sans-serif; }
html[dir="rtl"] .guide-hero h1,html[dir="rtl"] .guide-section-head h2,html[dir="rtl"] .guide-stay h2,html[dir="rtl"] .place-card h3,html[dir="rtl"] .route-card h3 { font-family:Tahoma,"Segoe UI",Arial,sans-serif; letter-spacing:0; line-height:1.18; }
html[dir="rtl"] .guide-hero h1 { font-size:clamp(3.8rem,5.2vw,6rem); }
html[dir="rtl"] .guide-nav { margin-left:0; margin-right:auto; }
html[dir="rtl"] .guide-eyebrow { letter-spacing:.04em; }
html[dir="rtl"] .guide-eyebrow::before { margin-right:0; margin-left:12px; }
html[dir="rtl"] .guide-section-head > p { padding-left:0; padding-right:28px; border-left:0; border-right:1px solid var(--guide-line); }
html[dir="rtl"] .route-heading > p { border-color:rgba(255,255,255,.22); }
html[dir="rtl"] .route-card { border-right:0; border-left:1px solid rgba(255,255,255,.22); }
html[dir="rtl"] .route-card:last-child { border-left:0; }
html[dir="rtl"] .route-stops li { padding-left:0; padding-right:17px; }
html[dir="rtl"] .route-stops li::before { left:auto; right:0; }

@media (max-width:1200px) {
  .guide-nav { display:none; }
  .guide-menu-toggle { display:block; }
  .guide-mobile-nav.is-open { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; padding:0 18px 14px; }
  .guide-mobile-nav a { padding:15px; background:#f0ebe1; text-align:center; text-decoration:none; font-size:.68rem; font-weight:700; }
  .guide-hero-grid { grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr); gap:54px; }
  .places-grid .place-card { grid-column:span 6; }
  .places-grid .place-card:nth-child(1),.places-grid .place-card:nth-child(5) { grid-column:span 6; }
  .route-grid { grid-template-columns:repeat(2,1fr); }
  .route-card:nth-child(2) { border-right:0; }
  .route-card:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.22); }
}

@media (max-width:820px) {
  :root { --guide-shell:calc(100vw - 28px); }
  html { scroll-padding-top:82px; }
  .guide-header-inner { width:calc(100vw - 20px); min-height:76px; gap:9px; }
  .guide-brand img { width:118px; }
  .guide-brand-divider,.guide-name { display:none; }
  .guide-language { margin-left:auto; padding:3px; }
  .guide-language button { min-width:36px; height:31px; padding:0 4px; }
  .guide-language button b { display:none; }
  .guide-language button span { width:15px; height:10px; }
  .guide-language button[data-lang="tr"] span { width:18px; height:12px; }
  .guide-menu-toggle { width:39px; height:39px; }
  .guide-header-booking { width:39px; min-width:39px; height:39px; min-height:39px; padding:0; border-radius:50%; font-size:0; }
  .guide-header-booking::before { width:18px; height:18px; }
  .guide-mobile-nav.is-open { grid-template-columns:1fr 1fr; padding:0 10px 10px; }
  .guide-mobile-booking { grid-column:1/-1; color:#fff !important; background:var(--guide-green) !important; }
  .guide-hero { min-height:auto; padding:68px 0 78px; }
  .guide-hero-grid { grid-template-columns:1fr; gap:48px; }
  .guide-hero h1 { font-size:clamp(3.8rem,16vw,6rem); }
  .guide-hero-collage { min-height:min(118vw,600px); }
  .guide-hero-photo-main { right:10%; }
  .guide-hero-photo-side { width:48%; height:40%; border-width:7px; }
  .guide-hero-seal { width:88px; height:88px; }
  .guide-hero-seal strong { font-size:1.9rem; }
  .guide-hero-seal span { font-size:.45rem; }
  .guide-section-head { grid-template-columns:1fr; gap:27px; margin-bottom:34px; }
  .guide-section-head h2 { font-size:clamp(3.15rem,14vw,5rem); }
  .guide-section-head > p { padding:22px 0 0; border-left:0; border-top:1px solid var(--guide-line); }
  html[dir="rtl"] .guide-section-head > p { padding:22px 0 0; border-right:0; border-top:1px solid var(--guide-line); }
  .guide-toolbar { align-items:flex-start; flex-direction:column; }
  .guide-sort { width:100%; justify-content:space-between; }
  .places-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .places-grid .place-card,.places-grid .place-card:nth-child(1),.places-grid .place-card:nth-child(5) { grid-column:span 1; min-height:470px; }
  .place-card h3 { font-size:clamp(1.8rem,7vw,2.5rem); }
  .place-card-body { padding:20px; }
  .place-actions { flex-direction:column; align-items:stretch; }
  .place-actions a { justify-content:center; }
  .route-grid { grid-template-columns:1fr; }
  .route-card { min-height:340px; border-right:0; border-bottom:1px solid rgba(255,255,255,.22); }
  .route-card:last-child { border-bottom:0; }
  .route-card h3 { margin-top:38px; font-size:2.35rem; }
  .guide-stay-inner { grid-template-columns:1fr; align-items:start; gap:30px; }
  .guide-stay h2 { font-size:clamp(3.1rem,14vw,5rem); }
  .guide-footer-grid { grid-template-columns:1fr; gap:38px; }
}

@media (max-width:520px) {
  .guide-hero h1 { font-size:clamp(3.35rem,15.5vw,4.8rem); }
  .guide-hero-actions,.guide-stay-actions { flex-direction:column; align-items:stretch; }
  .guide-button { width:100%; text-align:center; }
  .guide-hero-collage { min-height:116vw; }
  .guide-section-head h2 { font-size:clamp(2.9rem,13.5vw,4rem); }
  .guide-filters { display:grid; grid-template-columns:repeat(3,1fr); width:100%; }
  .guide-filters button { padding:0 6px; }
  .places-grid { grid-template-columns:1fr; }
  .places-grid .place-card,.places-grid .place-card:nth-child(1),.places-grid .place-card:nth-child(5) { min-height:520px; }
  .place-card h3 { font-size:2.45rem; }
  .guide-footer-bottom { flex-direction:column; }
}

@media (max-width:340px) {
  .guide-header-inner { gap:6px; }
  .guide-brand img { width:92px; }
  .guide-language button { min-width:27px; }
  .guide-header-booking,.guide-menu-toggle { width:36px; min-width:36px; height:36px; min-height:36px; }
  .guide-filters { grid-template-columns:1fr 1fr; }
}
