:root{--bg: #0b1116;--bg-raise: #121b22;--text: #eaf3fa;--text-dim: #b6c6d5;--accent: #7cf0da;--cat-orange: #f7a25e;--cat-purple: #bf9cfa;--cat-teal: #7cf0da;--border: rgba(182, 198, 213, .16);--radius: 18px;--w-list: 1040px;--w-article: 720px;--font-serif: Georgia, "Times New Roman", serif;--font-sans: "Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}.site-bg{position:fixed;inset:0;z-index:-1;background-image:linear-gradient(180deg,#0b1116d1,#0b1116f0 55%,#0b1116),var(--bg-image, url(/assets/background.svg));background-size:cover;background-position:center;filter:blur(2px);transform:scale(1.02)}h1,h2,h3{font-family:var(--font-serif);line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(2rem,5vw,2.9rem);letter-spacing:.01em}h2{font-size:clamp(1.45rem,3vw,1.8rem);margin-top:2.2em}h3{font-size:1.2rem;margin-top:1.6em}p{margin:0 0 1.1em}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--text)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ext-icon{display:inline-block;width:.72em;height:.72em;margin-left:.22em;vertical-align:.05em;opacity:.65}a:hover .ext-icon{opacity:1}img{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--w-list);margin:0 auto;padding:0 1.25rem}.wrap-article{max-width:var(--w-article);margin:0 auto;padding:0 1.25rem}.site-header{position:sticky;top:0;z-index:10;backdrop-filter:blur(10px);background:#0b1116b8;border-bottom:1px solid var(--border)}.site-header nav{max-width:var(--w-list);margin:0 auto;padding:.8rem 1.25rem;display:flex;align-items:baseline;gap:1.4rem}.site-header a{color:var(--text-dim);text-decoration:none;font-size:.95rem}.site-header a:hover,.site-header a[aria-current=page]{color:var(--text)}.site-header .brand{font-family:var(--font-serif);font-size:1.05rem;color:var(--text);margin-right:auto}.card-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));margin:2rem 0 3rem;padding:0;list-style:none}.place-card{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--card-color, var(--border));box-shadow:0 0 0 1px #00000059,0 18px 40px -22px #000c;background:var(--bg-raise);aspect-ratio:4 / 5}.place-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}.place-card:hover img{transform:scale(1.03);filter:brightness(1.08)}.place-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b111647,#0b111600 35%,#0b11160f 55%,#070b0fe0);pointer-events:none}.place-card .card-top{position:absolute;top:.9rem;left:.9rem;right:.9rem;display:flex;justify-content:space-between;gap:.5rem;z-index:2}.place-card .card-text{position:absolute;left:1.1rem;right:1.1rem;bottom:1rem;z-index:2}.place-card .card-text h3{font-size:1.35rem;margin:0 0 .2rem}.place-card .card-text h3 a{color:var(--text);text-decoration:none}.place-card .card-text h3 a:after{content:"";position:absolute;inset:0}.place-card .card-text p{color:var(--text-dim);font-size:.92rem;margin:0}.badge{display:inline-block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .6rem;border-radius:8px;background:#070b0fc7;color:var(--badge-color, var(--text-dim));border:1px solid rgba(182,198,213,.14)}.motif-badges{display:flex;flex-wrap:wrap;gap:.45rem;margin:.8rem 0 0;padding:0;list-style:none}.motif-badges li{font-size:.8rem;color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:.18rem .7rem}.breadcrumbs{font-size:.88rem;color:var(--text-dim);margin:1.6rem 0 .4rem}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0}.breadcrumbs li+li:before{content:"›";margin-right:.4rem;color:var(--text-dim)}.breadcrumbs a{color:var(--text-dim);text-decoration:none}.breadcrumbs a:hover{color:var(--accent)}.page-meta{color:var(--text-dim);font-size:.9rem;margin:.4rem 0 1.4rem}.hero-figure{margin:1.4rem 0 2rem}.hero-figure img{border-radius:var(--radius);border:1px solid var(--border);width:100%}figcaption{font-size:.88rem;color:var(--text-dim);margin-top:.55rem}.photo-data{color:var(--accent);opacity:.85}.quick-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.9rem;margin:0 0 1.2rem;padding:0}.quick-facts div{background:var(--bg-raise);border:1px solid var(--border);border-radius:12px;padding:.75rem .9rem}.quick-facts dt{font-size:.78rem;color:var(--text-dim);margin-bottom:.15rem}.quick-facts dd{margin:0;font-size:.98rem}.month-strip{margin:0 0 1.2rem}.month-strip .months{display:grid;grid-template-columns:repeat(12,1fr);gap:4px}.month-strip span{text-align:center;font-size:.72rem;padding:.42rem 0;border-radius:7px;background:var(--bg-raise);color:var(--text-dim);border:1px solid var(--border)}.month-strip .best{background:#7cf0da21;color:var(--accent);border-color:#7cf0da66}.month-strip .strip-label{font-size:.78rem;color:var(--text-dim);margin-bottom:.4rem}@media(max-width:560px){.month-strip .months{grid-template-columns:repeat(6,1fr)}}.photo-facts{border:1px solid rgba(124,240,218,.28);background:linear-gradient(180deg,#7cf0da0d,#121b2299);border-radius:var(--radius);padding:1.1rem 1.25rem .6rem;margin:0 0 2rem}.photo-facts h2{font-size:1.05rem;margin:0 0 .8rem;font-family:var(--font-sans);color:var(--accent)}.photo-facts dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.55rem 1.4rem;margin:0 0 .6rem}.photo-facts div{display:flex;gap:.5rem;align-items:baseline}.photo-facts dt{font-size:.85rem;color:var(--text-dim);white-space:nowrap}.photo-facts dt:after{content:":"}.photo-facts dd{margin:0;font-size:.92rem}.toc{border-left:2px solid var(--border);padding:.2rem 0 .2rem 1.1rem;margin:0 0 2.4rem}.toc p{font-size:.82rem;color:var(--text-dim);margin:0 0 .35rem}.toc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.toc a{color:var(--text-dim);text-decoration:none;font-size:.94rem}.toc a:hover{color:var(--accent)}.article-body ul{padding-left:1.2rem}.article-body li{margin-bottom:.5rem}.article-figure{margin:1.8rem 0}.article-figure img{border-radius:14px;border:1px solid var(--border)}.callout{border:1px solid var(--border);border-left:3px solid var(--cat-orange);background:var(--bg-raise);border-radius:12px;padding:1rem 1.2rem .4rem;margin:1.8rem 0}.callout h2{font-size:1.1rem;margin:0 0 .5rem}.faq details{border:1px solid var(--border);border-radius:12px;background:var(--bg-raise);margin-bottom:.7rem;padding:0 1.1rem}.faq summary{cursor:pointer;padding:.85rem 1.6rem .85rem 0;font-weight:600;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:.2rem;color:var(--accent);font-size:1.1rem}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--text-dim);margin:0 0 1rem}.gallery{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:1.2rem 0}.gallery figure{margin:0}.gallery button{display:block;width:100%;padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:none;cursor:zoom-in}.gallery img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.license-note{font-size:.86rem;color:var(--text-dim);border-top:1px solid var(--border);padding-top:.8rem;margin-top:1.4rem}dialog.lightbox{border:none;background:transparent;padding:0;max-width:min(96vw,1400px)}dialog.lightbox::backdrop{background:#05080beb}dialog.lightbox img{max-height:82vh;width:auto;max-width:100%;margin:0 auto;border-radius:10px}dialog.lightbox figcaption{text-align:center}dialog.lightbox .close{position:fixed;top:1rem;right:1.2rem;background:#121b22cc;color:var(--text);border:1px solid var(--border);border-radius:999px;width:2.4rem;height:2.4rem;font-size:1.1rem;cursor:pointer}.coord-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:.4rem 0 1.6rem}.coord-actions a,.coord-actions button{font:inherit;font-size:.92rem;color:var(--text);background:var(--bg-raise);border:1px solid rgba(124,240,218,.35);border-radius:999px;padding:.45rem 1.05rem;text-decoration:none;cursor:pointer}.coord-actions a:hover,.coord-actions button:hover{border-color:var(--accent);color:var(--accent)}.related{margin:3rem 0 1rem}.related .card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}.related .place-card .card-text h3{font-size:1.1rem}.author-line{display:flex;gap:.8rem;align-items:center;border-top:1px solid var(--border);margin-top:3rem;padding-top:1.2rem;color:var(--text-dim);font-size:.92rem}.site-footer{border-top:1px solid var(--border);margin-top:4rem;padding:2rem 0 2.6rem;color:var(--text-dim);font-size:.9rem}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.site-footer a{color:var(--text-dim)}.back-link{display:inline-block;margin:2.2rem 0 0;font-size:.95rem}.home-hero{padding:3.2rem 0 .6rem}.home-hero h1{font-size:clamp(2.4rem,6vw,3.4rem)}.home-hero p{color:var(--text-dim);max-width:60ch}.section-intro{color:var(--text-dim);max-width:68ch}.sample-banner{background:#f7a25e1f;border-bottom:1px solid rgba(247,162,94,.35);color:var(--cat-orange);text-align:center;font-size:.85rem;padding:.45rem 1rem}
