.drawer-map-art{aspect-ratio:1/1;isolation:isolate;background:#0b1725}.drawer-map-art>svg{width:100%;height:100%}.drawer-map-art .drawer-pin{display:none}.drawer-atlas{background:#111c27}.drawer-map-title{position:relative;padding:19px 18px 37px;color:#beae8d;font-size:6px}.map-zoom-toggle{position:absolute;right:15px;bottom:9px;background:none;border:0;color:#d4bd8a;font:8px Arial;cursor:pointer;padding:2px 0}.drawer-body{grid-template-columns:minmax(350px,.8fr) minmax(0,1fr)}.drawer-top .preview-stamp{font-size:6px;letter-spacing:1.4px;color:#a28d68;margin:9px 0 0}.drawer-top{background:#0d151c}.real-landmark{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent;padding:0;z-index:3;color:#f0e4ce;cursor:pointer;display:flex;align-items:center;gap:4px}.landmark-beacon{width:12px;height:12px;border:1px solid #e4c98d;border-radius:50%;box-shadow:0 0 0 3px #111a2266;position:relative;flex:none;background:#132336aa}.landmark-beacon:after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#edca82;left:3.5px;top:3.5px}.landmark-label{font:8px Georgia;white-space:nowrap;text-shadow:0 1px 4px #000;padding:4px 6px;background:#101b27dd;border:1px solid #d9bc742b;backdrop-filter:blur(3px);transition:background .2s}.real-landmark:hover .landmark-label,.real-landmark[aria-pressed=true] .landmark-label{background:#d9bb7d;color:#14212a;text-shadow:none}.real-landmark[aria-pressed=true] .landmark-beacon{background:#d9bb7d}.landmark-topkapi .landmark-label{font-size:8px}.landmark-blue .landmark-label{position:absolute;right:18px}.landmark-hagia .landmark-label{position:absolute;left:18px}.landmark-galata .landmark-label{position:absolute;right:18px}.landmark-dolmabahce .landmark-label{position:absolute;left:18px}.landmark-galataport .landmark-label{position:absolute;right:18px}.bosphorus-label{position:absolute;left:70%;top:32%;transform:rotate(-69deg);font:italic 19px Georgia;background:none;border:0;color:#c7d9e2;letter-spacing:2px;text-shadow:0 1px 5px #000;cursor:pointer}.drawer-map-hint{font-size:7px;color:#b3b8b4}.drawer-districts{background:#111b25}.drawer-districts button{font-size:8px;color:#c2cbd0}.drawer-map-note{color:#6e838f;font-size:6px}.landmark-focus{padding:18px;background:#c7a66e0d;border:1px solid #a88b573b;border-left:2px solid #bfa16e;margin-bottom:25px}.landmark-focus>p{font:6px Arial;letter-spacing:1.4px;color:#bda77f;margin:0 0 10px}.landmark-focus h4{font:25px/1.05 Georgia;letter-spacing:-.5px;margin:0 0 13px;color:#eee2c9}.landmark-focus>div{font:11px/1.8 Arial;color:#a8b5b2}.landmark-focus>a{font:8px Arial;display:inline-block;margin-top:14px;color:#d4b77a;border-bottom:1px solid #826e45;padding-bottom:5px}.map-preview-ribbon{background:#202d34;color:#c7b58d;text-align:center;font:7px Arial;letter-spacing:2px;padding:8px}.city-map-drawer.map-enlarged{width:100vw}.map-enlarged .drawer-body{grid-template-columns:minmax(550px,1.5fr) minmax(350px,.8fr)}.map-enlarged .landmark-label{font-size:11px}.map-enlarged .bosphorus-label{font-size:26px}.map-enlarged .drawer-atlas{max-height:none}.map-enlarged .drawer-map-art{max-width:850px;margin:auto}.map-enlarged .drawer-districts{grid-template-columns:repeat(4,1fr)}.map-enlarged .drawer-map-note{display:none}
@media(max-width:760px){.drawer-body,.map-enlarged .drawer-body{display:block}.drawer-map-art{max-width:620px;margin:auto}.drawer-map-title{padding-bottom:34px}.landmark-label{font-size:8px}.landmark-topkapi .landmark-label{font-size:7px}.bosphorus-label{font-size:17px}.drawer-districts button{font-size:10px}.drawer-atlas{max-height:none}.map-zoom-toggle{display:none}.drawer-map-note{font-size:7px}.landmark-focus>div{font-size:12px}.map-enlarged .drawer-districts{grid-template-columns:1fr 1fr}}

/* Quiet labels and neighbourhood selection. */
.landmark-label{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s}
.real-landmark:hover .landmark-label,.real-landmark:focus-visible .landmark-label{opacity:1;visibility:visible}
.real-landmark{width:30px;height:30px;justify-content:center}
.landmark-beacon{width:8px;height:8px;box-shadow:none;background:#17232a99;border-color:#d5bd85aa}
.landmark-beacon:after{width:2px;height:2px;left:2px;top:2px}
.drawer-map-art .drawer-pin{display:none}
.drawer-map-art .drawer-pin[aria-pressed=true]{display:block;z-index:5}
.drawer-pin[aria-pressed=true]>span{opacity:1;font:11px Georgia;background:#111d28e8;color:#e9dbbe;border:1px solid #ac95644d}
.drawer-pin[data-district="0"]>span,.drawer-pin[data-district="1"]>span,.drawer-pin[data-district="2"]>span,.drawer-pin[data-district="5"]>span{left:auto;right:34px}
.drawer-districts{border-bottom:1px solid #a88b5733;padding:10px 12px;gap:2px}
.drawer-districts button{font-size:10px;padding:10px 8px}
.buyukada-inset{position:absolute;right:3%;bottom:2%;width:31%;height:20%;z-index:1;border:1px solid #b99b633b;background:#0b1c2bd9;padding:8px;box-sizing:border-box;pointer-events:none}
.buyukada-inset svg{position:absolute;inset:15% 4% 16%;width:92%;height:65%}
.island-caption{font:5px Arial;letter-spacing:1px;color:#83969f;position:relative;z-index:1}
.island-name{position:absolute;left:9px;bottom:9px;color:#dfcda8;font:11px Georgia}
.island-name small{display:block;font:5px Arial;margin-top:4px;color:#96a3a8}
.map-enlarged .island-caption,.map-enlarged .island-name small{font-size:7px}
.map-enlarged .island-name{font-size:15px}
@media(max-width:760px){.drawer-districts button{font-size:10px}.buyukada-inset{width:34%}.drawer-pin[aria-pressed=true]>span{font-size:10px}}

/* Detailed island and a single, quiet ferry journey. */
.drawer-map-art .drawer-pin[data-district="5"]{display:none}
.island-voyage{background:#091724;border-top:1px solid #9b845534}
.voyage-heading{display:flex;justify-content:space-between;align-items:center;padding:16px 18px 8px;gap:10px}
.voyage-heading span{font:6px Arial;letter-spacing:1.7px;color:#a69573}
.voyage-heading h4{font:normal 20px Georgia;margin:6px 0;color:#e1d7c4}
.voyage-toggle{border:1px solid #95816066;background:none;color:#c9b68e;font:8px Arial;padding:7px 9px;cursor:pointer;white-space:nowrap}
.voyage-sea{position:relative;height:230px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#152d3d,#0b1b29 75%)}
.voyage-island{position:absolute;right:-2%;top:-3%;width:78%;height:100%;object-fit:contain;transform:scaleX(-1);mask-image:linear-gradient(90deg,transparent,#000 15%,#000 90%,transparent);pointer-events:none}
.voyage-departure{position:absolute;left:5%;top:72%;font:7px Arial;letter-spacing:1.4px;color:#b7ad97}
.voyage-departure span{display:block;font:italic 10px Georgia;letter-spacing:0;margin-top:5px;color:#7e959e}
.vapur-traveller{position:absolute;left:0;top:0;width:20%;height:24%;offset-path:path('M 30 163 C 65 153 100 135 142 105');offset-rotate:0deg;animation:vapur-crossing 32s cubic-bezier(.3,.1,.55,1) infinite;filter:drop-shadow(0 6px 4px #0006);z-index:3;pointer-events:none}
.vapur-traveller>img{width:100%;height:100%;object-fit:contain;animation:vapur-roll 4s ease-in-out infinite}
.vapur-wake{position:absolute;right:85%;top:70%;width:65%;height:9%;transform:rotate(-12deg);background:linear-gradient(90deg,transparent,#99c1cd55);border-radius:50%;filter:blur(2px);animation:wake-shimmer 2.8s ease-in-out infinite}
.island-destination{position:absolute;right:5%;bottom:26%;background:#0c1a25df;border:1px solid #baa06c55;padding:9px 12px;color:#e2cfaa;font:18px Georgia;cursor:pointer;z-index:4;text-align:left}
.island-destination span{display:block;font:7px Arial;letter-spacing:.7px;margin-top:5px;color:#9eaeb1}
.island-destination[aria-pressed=true]{border-color:#dcc48e;background:#27332d}
.voyage-caption{position:absolute;bottom:5%;left:5%;right:5%;text-align:center;font:italic 11px Georgia;color:#a3b0b0;margin:0}
.voyage-note{font:6px Arial;letter-spacing:.6px;color:#718690;padding:0 18px 12px;margin:0}
.journey-paused .vapur-traveller,.journey-paused .vapur-traveller>img,.journey-paused .vapur-wake{animation-play-state:paused}
@keyframes vapur-crossing{0%{offset-distance:0%;opacity:0}5%{opacity:1}84%{opacity:1}94%,100%{offset-distance:100%;opacity:0}}
@keyframes vapur-roll{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(1px) rotate(1deg)}}
@keyframes wake-shimmer{0%,100%{opacity:.25;transform:scaleY(.7) rotate(-12deg)}50%{opacity:.55;transform:scaleY(1.2) rotate(-12deg)}}
@media(prefers-reduced-motion:reduce){.vapur-traveller,.vapur-traveller>img,.vapur-wake{animation:none}.vapur-traveller{offset-distance:40%;opacity:1}}
@media(max-width:760px){.voyage-sea{height:230px}.voyage-heading h4{font-size:22px}}

/* Büyükada appears only for the selected island chapter. */
.island-voyage[hidden]{display:none!important}
.vapur-traveller{width:7%;height:auto;aspect-ratio:2/1;offset-rotate:auto -15deg;animation:vapur-crossing 46s linear infinite;filter:drop-shadow(0 2px 1px #0005);will-change:offset-distance;isolation:isolate}
.vapur-traveller>img{display:block;width:100%;height:100%;object-fit:contain;animation:vapur-roll 6.8s ease-in-out infinite;position:relative;z-index:2}
.vapur-wake{position:absolute;right:78%;top:36%;width:185%;height:52%;background:none;transform:none;border-radius:0;filter:none;overflow:visible;animation:wake-shimmer 4.6s ease-in-out infinite;z-index:1}
.vapur-wake path{fill:none;stroke:#b8d5dc;stroke-width:.8;stroke-linecap:round;opacity:.25}
.vapur-wake path:nth-child(2){stroke-width:1.1;opacity:.19}.vapur-wake path:nth-child(3){stroke-width:3;opacity:.1}
@keyframes vapur-crossing{0%{offset-distance:0%;opacity:0}3%{opacity:1}12%{offset-distance:5%}78%{offset-distance:92%}90%{offset-distance:100%;opacity:1}96%,100%{offset-distance:100%;opacity:0}}
@keyframes vapur-roll{0%,100%{transform:translateY(0) rotate(-.12deg)}45%{transform:translateY(.35px) rotate(.18deg)}70%{transform:translateY(-.2px) rotate(0)}}
@keyframes wake-shimmer{0%,100%{opacity:.65;transform:scaleY(.95)}50%{opacity:.85;transform:scaleY(1.05)}}
@media(prefers-reduced-motion:reduce){.vapur-traveller,.vapur-traveller>img,.vapur-wake{animation:none}.vapur-traveller{offset-distance:40%;opacity:1}}

/* One scroll surface per desktop column; one continuous surface on phones. */
.drawer-body{overscroll-behavior:contain;scroll-behavior:smooth;scrollbar-gutter:stable}
@media(min-width:761px){
.city-map-drawer .drawer-body{overflow:hidden;align-items:stretch;grid-template-rows:minmax(0,1fr)}
.city-map-drawer .drawer-atlas,.city-map-drawer .drawer-story{position:relative;top:auto;align-self:stretch;min-height:0;height:100%;max-height:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:#796a4d #111b25}
}
@media(max-width:760px){
.city-map-drawer .drawer-body{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}
.city-map-drawer .drawer-atlas,.city-map-drawer .drawer-story{position:static;height:auto;max-height:none;overflow:visible}
}
@media(prefers-reduced-motion:reduce){.drawer-body,.city-map-drawer .drawer-atlas,.city-map-drawer .drawer-story{scroll-behavior:auto}}

.voyage-heading h4{font-size:clamp(15px,1.6vw,20px)}.island-destination{max-width:64%;font-size:15px}.drawer-districts button{min-width:0;line-height:1.4}

/* Legible, crisp monument captions without glass blur or text glow. */
.real-landmark:hover,.real-landmark:focus-visible{z-index:8}
.real-landmark .landmark-label,.map-enlarged .real-landmark .landmark-label{position:absolute;left:22px;right:auto;top:50%;bottom:auto;transform:translateY(-50%);font:500 13px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.15px;white-space:nowrap;padding:8px 11px;background:#101d27;color:#f5ead4;text-shadow:none;backdrop-filter:none;border:1px solid #bca273;border-radius:3px;box-shadow:0 3px 10px #0004;transition:opacity .15s ease;}
.real-landmark.landmark-hagia .landmark-label,.real-landmark.landmark-topkapi .landmark-label{left:auto;right:22px}
.real-landmark:hover .landmark-label,.real-landmark:focus-visible .landmark-label,.real-landmark[aria-pressed=true] .landmark-label{background:#101d27;color:#f5ead4;text-shadow:none}
@media(max-width:760px){.real-landmark .landmark-label{font-size:12px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){.real-landmark .landmark-label{transition:none}}

/* Restrained map controls and an even typographic hierarchy. */
.drawer-top>#close-city-map{display:grid;place-items:center;box-sizing:border-box;width:40px;height:40px;min-width:40px;flex-shrink:0;padding:0;margin:0;border:1px solid #a69b7c66;border-radius:50%;background:transparent;color:#d9d1c0;font-size:0;line-height:0;transition:background .18s,border-color .18s,color .18s}
#close-city-map svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.drawer-top>#close-city-map:hover{background:#c5ae7c0d;border-color:#c5ae7c;color:#f1e7d3}
.real-landmark .landmark-label,.map-enlarged .real-landmark .landmark-label{font:400 11px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.1px;padding:5px 8px;border-color:#aa94665c;border-radius:2px;box-shadow:0 2px 6px #0003;color:#e8dfcc}
.landmark-focus{padding:16px 18px;margin-bottom:24px;background:#bda36c05;border:1px solid #a88b5729;border-left:1px solid #bfa16e88}
.landmark-focus>p{font:7px/1.4 Arial;letter-spacing:1.2px;color:#a89673;margin:0 0 9px}
.landmark-focus h4{font:normal 21px/1.2 Georgia;letter-spacing:-.25px;color:#e6ddca;margin:0 0 11px}
.landmark-focus>div{font:11px/1.75 Arial;color:#a8b3af;max-width:48ch}
.landmark-focus>a{font:8px/1.5 Arial;letter-spacing:.2px;margin-top:13px;padding-bottom:3px;border-color:#826e4566}
.drawer-story .explore-stop h3{font-size:21px;line-height:1.25;letter-spacing:-.2px}
@media(max-width:760px){.drawer-top>#close-city-map{width:40px;height:40px}.landmark-focus{padding:15px}.landmark-focus h4{font-size:20px}.landmark-focus>div{font-size:11px}.real-landmark .landmark-label{font-size:11px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.drawer-top>#close-city-map{transition:none}}
