@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/Alegreya-500-latin.54077b15.woff2') format('woff2');unicode-range:U+0,U+D,U+20-7E,U+A0-148,U+14A-17F,U+18F,U+192,U+1A0-1A1,U+1AF-1B0,U+1B7,U+1C4-1DC,U+1E4-1EB,U+1EE-1EF,U+1FA-21B,U+21E-21F,U+22A-22D,U+230-233,U+237,U+1E08-1E09,U+1E0C-1E0F,U+1E14-1E17,U+1E1C-1E1D,U+1E20-1E21,U+1E24-1E25,U+1E2A-1E2B,U+1E2E-1E2F,U+1E36-1E37,U+1E3A-1E3B,U+1E42-1E49,U+1E4C-1E53,U+1E5A-1E5B,U+1E5E-1E69,U+1E6C-1E6F,U+1E78-1E7B,U+1E80-1E85,U+1E8E-1E8F,U+1E92-1E93,U+1E97,U+1E9E,U+1EA0-1EF9,U+2007-200B,U+2010,U+2012-2015,U+2018-201A,U+201C-201E,U+2020-2022,U+2024-2026,U+2030,U+2032-2033,U+2039-203A,U+2044,U+2052,U+20A1,U+20A3-20A4,U+20A6-20A7,U+20A9,U+20AB-20AE,U+20B1-20B2,U+20B4-20B5,U+20B8-20BA,U+20BC-20BD,U+2113,U+2122,U+2191,U+2193,U+2212;}@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/Alegreya-500-cyrillic.6a884996.woff2') format('woff2');unicode-range:U+400-45F,U+462-463,U+46A-46B,U+472-475,U+490-49D,U+4A0-4A5,U+4AA-4AB,U+4AE-4B3,U+4B6-4BB,U+4C0-4C2,U+4C9-4CC,U+4CF-4D9,U+4DC-4DF,U+4E2-4E9,U+4EE-4F9,U+51A-51D,U+524-525;}@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/Alegreya-500-greek.6867cf3a.woff2') format('woff2');unicode-range:U+374-375,U+37A,U+37E,U+384-38A,U+38C,U+38E-3A1,U+3A3-3CF,U+3D1,U+3D5-3D7,U+3F0,U+1F00-1F15,U+1F18-1F1D,U+1F20-1F45,U+1F48-1F4D,U+1F50-1F57,U+1F59,U+1F5B,U+1F5D,U+1F5F-1F7D,U+1F80-1FB4,U+1FB6-1FC4,U+1FC6-1FD3,U+1FD6-1FDB,U+1FDD-1FEF,U+1FF2-1FF4,U+1FF6-1FFE;}@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/Alegreya-700-latin.07e5f6b4.woff2') format('woff2');unicode-range:U+0,U+D,U+20-7E,U+A0-148,U+14A-17F,U+18F,U+192,U+1A0-1A1,U+1AF-1B0,U+1B7,U+1C4-1DC,U+1E4-1EB,U+1EE-1EF,U+1FA-21B,U+21E-21F,U+22A-22D,U+230-233,U+237,U+1E08-1E09,U+1E0C-1E0F,U+1E14-1E17,U+1E1C-1E1D,U+1E20-1E21,U+1E24-1E25,U+1E2A-1E2B,U+1E2E-1E2F,U+1E36-1E37,U+1E3A-1E3B,U+1E42-1E49,U+1E4C-1E53,U+1E5A-1E5B,U+1E5E-1E69,U+1E6C-1E6F,U+1E78-1E7B,U+1E80-1E85,U+1E8E-1E8F,U+1E92-1E93,U+1E97,U+1E9E,U+1EA0-1EF9,U+2007-200B,U+2010,U+2012-2015,U+2018-201A,U+201C-201E,U+2020-2022,U+2024-2026,U+2030,U+2032-2033,U+2039-203A,U+2044,U+2052,U+20A1,U+20A3-20A4,U+20A6-20A7,U+20A9,U+20AB-20AE,U+20B1-20B2,U+20B4-20B5,U+20B8-20BA,U+20BC-20BD,U+2113,U+2122,U+2191,U+2193,U+2212;}@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/Alegreya-700-cyrillic.a1764cbb.woff2') format('woff2');unicode-range:U+400-45F,U+462-463,U+46A-46B,U+472-475,U+490-49D,U+4A0-4A5,U+4AA-4AB,U+4AE-4B3,U+4B6-4BB,U+4C0-4C2,U+4C9-4CC,U+4CF-4D9,U+4DC-4DF,U+4E2-4E9,U+4EE-4F9,U+51A-51D,U+524-525;}@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/Alegreya-700-greek.e8306de4.woff2') format('woff2');unicode-range:U+374-375,U+37A,U+37E,U+384-38A,U+38C,U+38E-3A1,U+3A3-3CF,U+3D1,U+3D5-3D7,U+3F0,U+1F00-1F15,U+1F18-1F1D,U+1F20-1F45,U+1F48-1F4D,U+1F50-1F57,U+1F59,U+1F5B,U+1F5D,U+1F5F-1F7D,U+1F80-1FB4,U+1FB6-1FC4,U+1FC6-1FD3,U+1FD6-1FDB,U+1FDD-1FEF,U+1FF2-1FF4,U+1FF6-1FFE;}@font-face{font-family:'TGB title punctuation';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts-critical/Alegreya-700-punctuation.72761114.woff2') format('woff2');unicode-range:U+20-40,U+5B-60,U+7B-BF,U+2000-206F,U+20A0-20CF}html:is([lang=bg],[lang=ru],[lang=uk],[lang=el]){--font-title:'TGB title punctuation','Alegreya','TGB title fallback',serif}
:root{color-scheme:light;--bg:#F4F0E8;--surface:#FBF8F2;--elevated:#FFF;--text:#1C1714;--secondary:#6B6159;--tertiary:#756C62;--border:#D2C5AE;--primary:#0E6A4F;--brand-deep:#0C4F3C;--on-primary:#FBF8F2;--scrim:#14100D;--soft:#E3EEE8;--warning:#A9691C;--danger:#B3372A;--culture:#8C4A2F;--nature:#5E7A3A;--beach:#2E7E93;--food:#8D2F4A;--hike:#6A5A2E;--viewpoint:#2C55A8;--hidden:#5B4B78;--family:#8C4A2F;--wellness:#2E7E93;--active:#6A5A2E;--stage:#5B4B78;--curiosity:#8D2F4A;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s6:24px;--s8:32px;--s12:48px;--r-chip:8px;--r-button:12px;--r-card:18px;--r-sheet:28px;--page:20px;--quick:180ms ease-out;--standard:360ms cubic-bezier(.2,.8,.2,1);--spring:linear(0,.15,.48,.77,.96,1.04,1.05,1.03,1.01,1);--display:clamp(34px,4vw,56px);--title:clamp(22px,2.4vw,28px);--name:clamp(17px,1.6vw,19px);--font-ui:'Alegreya Sans','TGB UI fallback',sans-serif;--font-title:'Alegreya','TGB title fallback',serif}
[data-theme=dark]{color-scheme:dark;--bg:#0E1210;--surface:#181D1A;--elevated:#222925;--text:#F2EDE4;--secondary:#A79C90;--tertiary:#8A8177;--border:#2C332E;--primary:#3FA87C;--brand-deep:#07231C;--on-primary:#08231B;--soft:#222F27;--warning:#D3A051;--danger:#D95A45;--culture:#D08A63;--nature:#A8BE72;--beach:#6FB6C9;--food:#D0748C;--hike:#BFA860;--viewpoint:#7FA5E8;--hidden:#A392C4;--family:#D08A63;--wellness:#6FB6C9;--active:#BFA860;--stage:#A392C4;--curiosity:#D0748C}
@font-face{font-family:'TGB UI fallback';src:local('Arial');font-weight:400;size-adjust:85.85%;ascent-override:104.835%;descent-override:34.945%;line-gap-override:0%}@font-face{font-family:'TGB UI fallback';src:local('Arial');font-weight:500;size-adjust:86.84%;ascent-override:103.638%;descent-override:34.546%;line-gap-override:0%}@font-face{font-family:'TGB UI fallback';src:local('Arial Bold');font-weight:700;size-adjust:82.084%;ascent-override:109.643%;descent-override:36.548%;line-gap-override:0%}@font-face{font-family:'TGB title fallback';src:local('Georgia');size-adjust:91%;ascent-override:106%;descent-override:28%;line-gap-override:0%}
:root{--type-chip:.9375rem;--type-card-name:1.125rem;--type-shelf-title:1.25rem;--type-romanisation:.875rem;font-size:100%;--type-min:.75rem;--type-caption:.8125rem;--type-secondary:.9375rem;--type-body:1.0625rem;--type-headline:1.1875rem;--type-lead:1.0625rem;--type-title:1.1875rem;--type-large:1.875rem;--type-hero:1.875rem;--type-count:4rem;--type-display:1.875rem;--type-show:clamp(2.125rem,7vw,5rem);--type-player:clamp(2.75rem,8vw,6.25rem);--type-dial:clamp(2.75rem,9vh,6rem);--type-launch-word:1.6875rem;--type-launch-tag:1.25rem;--display:var(--type-display);--title:var(--type-title);--name:var(--type-headline)}
@media(min-width:760px){:root{--type-body:1.125rem;--type-secondary:1rem;--type-caption:.875rem}}
@media(min-width:1100px){:root{--type-body:1.1875rem;--type-secondary:1.0625rem;--type-caption:.9375rem;--type-headline:1.3125rem;--type-lead:1.0625rem;--type-title:1.375rem;--type-display:2.5rem;--type-hero:2.5rem}}
:root{--section-gap:24px;--section-title-gap:12px;--content-max:1320px;--control-h:52px;--control-h-compact:44px;--type-setting-title:1.0625rem;--type-hint:.875rem;--type-breadcrumb:.875rem}
@media(min-width:760px){:root{--section-gap:32px;--type-title:1.375rem;--type-display:2.5rem;--type-hero:2.5rem}}
:root{--page:16px;--type-title:1.25rem}
@media(min-width:760px){:root{--page:24px;--type-title:1.5rem}}
@media(min-width:1100px){:root{--page:32px}}
:root{--type-audio-title:1.0625rem;--type-audio-subtitle:.8125rem;--type-player-title:1.5rem;--surface-elevated:var(--elevated);--floating-shadow:0 8px 32px rgb(20 16 13 / .18),0 2px 8px rgb(20 16 13 / .1)}
[data-theme=dark]{--floating-shadow:0 8px 32px rgb(0 0 0 / .45),0 2px 8px rgb(0 0 0 / .3)}
@media(min-width:760px) and (max-width:1099px){:root{--type-hero:2.125rem}}
:root{--r-md:10px}
:root{--type-brand-name:1.1875rem;--type-brand-country:.75rem;--type-brand-phone:1.0625rem;--type-nav:1rem;--type-nav-compact:.75rem;--type-locale:.8125rem;--type-nav-count:.78125rem;--shell-ink:#4A413B;--shell-active:var(--brand-deep);--shell-hover:color-mix(in srgb,var(--text) 6%,transparent);--shell-press:color-mix(in srgb,var(--text) 12%,transparent);--brand-shadow:0 1px 1px rgb(12 79 60/.25),0 3px 8px rgb(12 79 60/.18);--brand-phone-shadow:0 1px 1px rgb(12 79 60/.12),0 3px 8px rgb(12 79 60/.09);--brand-highlight:inset 0 1px 0 rgb(255 255 255/.16)}
[data-theme=dark]{--shell-ink:#CFC6BA;--shell-active:var(--primary);--brand-shadow:0 0 0 1px rgb(242 237 228/.14);--brand-phone-shadow:var(--brand-shadow);--brand-highlight:inset -1px 0 0 rgb(242 237 228/.04)}
:root{
--ink-4:color-mix(in srgb,var(--text) 4%,transparent);--ink-6:color-mix(in srgb,var(--text) 6%,transparent);--ink-8:color-mix(in srgb,var(--text) 8%,transparent);--ink-12:color-mix(in srgb,var(--text) 12%,transparent);--ink-22:color-mix(in srgb,var(--text) 22%,transparent);--ink-45:color-mix(in srgb,var(--text) 45%,transparent);--ink-55:color-mix(in srgb,var(--text) 55%,transparent);--ink-70:color-mix(in srgb,var(--text) 70%,transparent);
--border-strong:#B9AC97;--text-2:#4A413B;--tertiary:#8A8075;--inverse:#24201C;--on-inverse:#F4F0E8;--inverse-accent:#7ED3AE;--inverse-danger:#F0A08F;
--warning-tint:rgb(169 105 28/.10);--warning-ink:#6B4310;--danger-tint:rgb(179 55 42/.08);--danger-fill:#B3372A;--danger-hover:#9E3026;--danger-press:#87291F;--on-danger:#FFF;--locate:#2F6FDE;
--r-xs:6px;--r-sm:8px;--r-md:10px;--r-lg:12px;--r-xl:14px;--r-card:18px;--r-sheet:20px;--r-segment:9px;--r-pill:999px;--r-round:50%;
--lift-1:0 1px 2px rgb(20 16 13/.08);--lift-2:0 4px 12px rgb(20 16 13/.10);--lift-3:0 2px 4px rgb(20 16 13/.06),0 16px 40px rgb(20 16 13/.16);--lift-4:0 24px 64px rgb(20 16 13/.28);
--ring:0 0 0 2px var(--bg),0 0 0 4px var(--primary);--ring-inverse:0 0 0 2px var(--inverse),0 0 0 4px var(--inverse-accent);--ring-inner:inset 0 0 0 2px var(--bg),inset 0 0 0 4px var(--primary);--halo:0 0 0 4px color-mix(in srgb,var(--primary) 16%,transparent);--scrim:rgb(20 16 13/.40);--glass:color-mix(in srgb,var(--surface) 92%,transparent);--photo-btn:rgb(20 16 13/.38);
--edge-primary:inset 0 1px 0 rgb(255 255 255/.16),inset 0 -2px 0 rgb(0 0 0/.16);--primary-hover:#127657;--primary-press:#0C5A43;--primary-lift:0 6px 14px -6px rgb(12 79 60/.5);--primary-pressed-shadow:inset 0 2px 3px rgb(0 0 0/.2);
--secondary-edge:var(--ink-55);--control-hover:color-mix(in srgb,var(--primary) 5%,var(--surface));--control-press:color-mix(in srgb,var(--primary) 12%,var(--surface));--control-selected:var(--brand-deep);--track:var(--ink-6);--thumb:var(--elevated);--thumb-shadow:0 0 0 1px var(--ink-12),0 1px 2px rgb(20 16 13/.10);--switch-thumb:#FFF;--switch-off-thumb:#FFF;--switch-shadow:0 1px 3px rgb(0 0 0/.25);--selection-bg:rgb(14 106 79/.22);--selection-ink:var(--brand-deep);
--control-h:48px;--control-h-compact:44px;--control-h-small:36px;--type-button-l:1rem;--type-button-m:.9375rem;--type-button-s:.875rem;--type-control-caption:.8125rem;--type-control-label:1rem;--type-language-title:1.25rem;--type-stat:.9375rem;
--ease-out:cubic-bezier(.2,.8,.2,1);--ease-in:cubic-bezier(.4,0,1,1);
}
[data-theme=dark]{
--border-strong:#59625B;--text-2:#CFC6BA;--tertiary:#8A8177;--inverse:#ECE6DB;--on-inverse:#14100D;--inverse-accent:#0E6A4F;--inverse-danger:#B3372A;--warning-tint:rgb(211 160 81/.12);--warning-ink:#E8C48A;--danger-tint:rgb(217 90 69/.12);--locate:#6E9EF0;
--lift-3:0 0 0 1px rgb(242 237 228/.12),0 16px 40px rgb(0 0 0/.5);--lift-4:0 0 0 1px rgb(242 237 228/.10),0 24px 64px rgb(0 0 0/.6);--halo:0 0 0 4px rgb(63 168 124/.22);--scrim:rgb(0 0 0/.55);
--edge-primary:inset 0 1px 0 rgb(255 255 255/.22),inset 0 -2px 0 rgb(0 0 0/.25);--primary-hover:#4BB487;--primary-press:#3FA87C;--primary-lift:none;--secondary-edge:rgb(242 237 228/.30);--control-selected:var(--primary);--track:rgb(242 237 228/.08);--thumb:#2C352F;--switch-thumb:#F2EDE4;--switch-off-thumb:#A79C90;--selection-bg:rgb(63 168 124/.32);--selection-ink:#F2EDE4;
}
:root{--hero-chip-bg:rgb(20 16 13/.55);--hero-chip-ink:#F2EDE4;--hero-chip-edge:rgb(242 237 228/.5)}
:root{--control-edge-1:inset 0 0 0 1.5px var(--primary);--control-edge-2:inset 0 0 0 1.5px var(--danger);--control-edge-3:inset 0 0 0 1.5px var(--ink-22);--control-edge-4:inset 0 0 0 1.5px var(--ink-45);--control-edge-5:inset 0 0 0 1.5px var(--primary);--control-edge-6:inset 0 0 0 1.5px var(--primary),var(--halo);--control-edge-7:inset 0 0 0 1.5px var(--secondary-edge);--control-edge-8:inset 0 0 0 1px var(--ink-22);--control-edge-9:inset 0 0 0 1px var(--hero-chip-edge);--control-edge-10:inset 0 0 0 1px var(--ink-12);--control-edge-11:inset 0 0 0 1px var(--ink-12),var(--lift-1);--control-edge-12:inset 0 0 0 1px var(--ink-22);--control-edge-13:inset 0 0 0 1px var(--ink-45);--control-edge-14:var(--thumb-shadow),inset 0 0 0 1px var(--primary);}
:root{--type-footer-name:1.1875rem;--type-footer-name-phone:1.0625rem;--type-footer-link:.9375rem;--type-footer-web:1rem;--footer-web:#0F5E46;--footer-web-hover:#12704F}
:root{--photo-hero-scrim:linear-gradient(to top,rgb(20 16 13/.78),rgb(20 16 13/.35) 45%,transparent 72%);--photo-ink:#F2EDE4;--photo-hover:rgb(20 16 13/.78);--photo-press:rgb(20 16 13/.92);--map-glass:color-mix(in srgb,var(--surface) 92%,transparent)}
:root{--category-cover-tint:12%;--category-cover-end:3%;--type-cover-initial:2rem}
[data-theme=dark]{--category-cover-tint:18%;--category-cover-end:6%}
:root{--photo-selection-bg:rgb(255 255 255/.3)}
:root{--type-home-hero:1.75rem;--type-home-count:3.5rem;--type-home-section:1.375rem}
@media(min-width:760px){:root{--type-home-hero:2.5rem;--type-home-section:1.625rem}}
:root{--type-map-count:.8125rem}
main[data-page=phrasebook]{--type-phrase:1.375rem;--type-phrase-full:clamp(40px,min(14vw,11dvh),120px);--type-phrase-translation:1.25rem}
main[data-page=practical]{--type-emergency:2.5rem}
main[data-page=help]{--type-help-name:1.0625rem}
main[data-page=about]{--type-about-stat:2.5rem;--type-tier-count:2rem;--type-about-label:.9375rem;--type-author-name:1.25rem}
main[data-page=credits]{--type-credit-author:.875rem;--type-credit-licence:.75rem;--type-credit-place:1.25rem}
main[data-page=search]{--type-search-input:1rem;--type-search-name:1.125rem;--type-search-meta:.8125rem}
main[data-page="404"]{--type-search-input:1rem;--type-error-title:2rem}
@media(min-width:1100px){main[data-page="404"]{--type-error-title:2.75rem}}
:root{--type-ag-caption:500 9.5px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--type-ag-title:500 17px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--badge-hover:#161616}
:root{--type-topic-title:1.25rem;--type-article-stat:2rem}
:root{--editorial-alert:var(--danger)}
[data-theme=dark]{--editorial-alert:#F0A08F}
*{box-sizing:border-box}html{scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--text);font:var(--type-body)/1.5 var(--font-ui);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure,dl{margin:0}h1,h2,h3{font-family:var(--font-title);font-weight:700;line-height:1.12;text-wrap:balance;overflow-wrap:break-word;hyphens:auto}h1{font-size:var(--display)}h2{font-size:var(--title)}h3{font-size:var(--name)}p{max-width:68ch}p+p{margin-top:16px}a{color:inherit;text-decoration:none}p a,.text-link{color:var(--primary);text-decoration:underline;text-underline-offset:4px}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,input,select{border:1px solid var(--border);background:var(--surface);border-radius:var(--r-button);min-height:44px;padding:8px 12px}input,select{max-width:100%;min-width:0}input[type=range]{padding:0}:focus-visible{outline:3px solid var(--primary);outline-offset:4px}svg[role=none]{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}img{display:block;max-width:100%;height:auto}picture{display:block}ul,ol{padding-left:22px}li+li{margin-top:8px}hr{border:0;border-top:1px solid var(--border);margin:24px 0}[hidden]{display:none!important}.sprite{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:100;left:16px;top:-100px;padding:12px;background:var(--surface);border:2px solid var(--primary)}.skip:focus{top:12px}.eyebrow{font:700 var(--type-min)/1.4 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--primary)}.caption,figcaption{font-size:var(--type-caption);line-height:1.35;color:var(--secondary)}.muted{color:var(--secondary)}.data{font-variant-numeric:tabular-nums lining-nums;font-size:var(--type-secondary)}.brand-tile{width:40px;height:40px;flex:none;border-radius:10px;view-transition-name:brand}.brand-lockup{display:flex;align-items:center;gap:12px;min-width:0}.wordmark{font:700 var(--type-lead)/1.08 var(--font-title)}.actions,.chips,.segmented{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}.actions>*{min-height:44px}.chip svg[role=none]{width:18px;height:18px;color:var(--hue,var(--primary))}.panel{padding:20px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}.stack>*+*{margin-top:20px}.section{margin-top:48px}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:20px}.section-head>a{font-size:var(--type-secondary);color:var(--primary);flex:none}.page-heading{margin-bottom:32px}.page-heading>*+*{margin-top:12px}.page-heading .lead{font-size:var(--type-lead);color:var(--secondary);max-width:58ch}.page-wrap{max-width:1280px;margin:auto;padding:32px 32px 48px;min-width:0}.reading{max-width:680px}.reading h2{margin-top:32px;margin-bottom:16px}.reading h3{margin-top:24px;margin-bottom:12px}.reading p{white-space:pre-line}.site-shell{position:fixed;inset:0 auto 0 0;width:248px;background:var(--surface);border-right:1px solid var(--border);padding:28px 20px 20px;display:flex;flex-direction:column;z-index:20;overflow-y:auto}.site-shell nav{display:grid;gap:4px;margin:32px -20px 24px}.nav-link{display:flex;gap:16px;align-items:center;min-height:48px;padding:10px 24px;border-left:3px solid transparent;color:var(--secondary);line-height:1.25}.nav-link[aria-current=page]{color:var(--primary);border-left-color:var(--primary);font-weight:700}.nav-link[aria-current=page] svg[role=none]{fill:currentColor;fill-opacity:.14}.nav-link:hover{background:var(--bg)}.shell-search{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;font-size:var(--type-body);color:var(--secondary)}.shell-tools{display:grid;gap:12px;margin-top:20px}.shell-tools label{display:grid;gap:4px}.language-menu{position:relative}.language-menu summary{cursor:pointer;display:flex;align-items:center;gap:8px;min-height:44px;font-size:var(--type-body)}.language-menu ul{list-style:none;margin:0;padding:8px;background:var(--elevated);border:1px solid var(--border);border-radius:12px;max-height:300px;overflow:auto}.language-menu li+li{margin:0}.language-menu a{display:block;padding:8px 10px;min-height:44px}.language-menu [aria-current=true]{color:var(--primary);font-weight:700}.store-plate{margin-top:auto;padding-top:24px}.store-plate>p{font-size:var(--type-secondary);margin-bottom:12px}.badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.badges a{display:flex;align-items:center;min-height:44px}.badges img{height:40px;width:auto;max-width:140px;object-fit:contain}.store-plate .badges{display:grid;gap:4px}.store-plate .caption{display:block;margin-top:12px}.shell-content{margin-left:248px;min-width:0}.mobile-header{display:none}.site-footer{border-top:1px solid var(--border);background:var(--surface);padding:32px}.footer-inner{max-width:1216px;margin:auto}.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}.promo-tile{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-content:start}.promo-tile>img{border-radius:12px;width:56px;height:56px}.promo-tile h3{font-size:var(--type-headline)}.promo-tile .badges{grid-column:1/-1}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:24px;border-top:1px solid var(--border);font-size:var(--type-secondary)}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.suggestion,.android-promo{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px}.suggestion a{color:var(--primary)}#tgb-audio-root:empty{display:none}.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:var(--type-caption);color:var(--secondary);margin-bottom:20px}.breadcrumbs a{min-height:28px;display:inline-flex;align-items:center}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.place-card{min-width:0;border:1px solid var(--border);border-radius:18px;background:var(--surface);overflow:hidden;transition:border-color var(--quick),transform var(--quick)}.place-card:hover{border-color:var(--primary)}.card-photo{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--border)}.card-photo picture,.card-photo img{width:100%;height:100%;object-fit:cover}.card-photo img{transition:transform 360ms ease-out}.place-card:hover .card-photo img{transform:scale(1.02)}.card-photo .photo-caption{position:absolute;inset:auto 0 0;padding:28px 12px 12px;color:#F2EDE4;background:linear-gradient(transparent,rgba(20,16,13,.84))}.card-body{padding:16px}.card-body>*+*{margin-top:8px}.card-body h3{overflow-wrap:break-word;hyphens:auto}.card-summary{font-size:var(--type-body);color:var(--secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.credit{display:block;padding:6px 12px;font-size:var(--type-min);line-height:1.4;color:var(--secondary);overflow-wrap:anywhere}.credit a{text-decoration:underline;text-underline-offset:2px}.row-card{display:flex;align-items:center;gap:16px;border:1px solid var(--border);border-radius:18px;padding:12px;background:var(--surface);min-width:0;transition:border-color var(--quick)}.row-card:hover{border-color:var(--primary)}.row-card .row-photo{width:96px;flex:none;align-self:flex-start}.row-photo picture,.row-photo img{width:96px;height:72px;object-fit:cover;border-radius:12px}.row-photo .credit{font-size:var(--type-min);padding:4px 0}.row-text{min-width:0;flex:1}.row-text h3{margin-bottom:4px}.row-text p{font-size:var(--type-body);color:var(--secondary)}.row-text .data{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.row-text .data span+span{border-left:1px solid var(--border);padding-left:8px}.arrow{color:var(--primary);flex:none}.home-hero{position:relative;min-height:280px;border-radius:18px;overflow:hidden;margin-bottom:32px;background:var(--border)}.home-hero picture,.home-hero>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home-hero-copy{position:relative;padding:48px 32px 32px;min-height:280px;display:flex;flex-direction:column;justify-content:flex-end;color:#F2EDE4;background:linear-gradient(transparent,rgba(20,16,13,.84))}.home-hero-copy p{font-size:var(--type-lead);max-width:40ch}.home-hero-copy h1{margin:8px 0 12px}.home-hero figcaption{position:absolute;right:12px;top:12px;background:rgba(20,16,13,.74);color:#F2EDE4;border-radius:8px;max-width:50%;padding:4px 8px;font-size:var(--type-min)}.home-top{display:grid;grid-template-columns:3fr 2fr;gap:24px;align-items:start}.origin-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:20px}.origin-line h2{font-size:var(--type-large)}.dial{position:relative;text-align:center;margin:24px 0 16px}.dial-arc{width:100%;height:100px;display:block;color:var(--border)}.dial-detents{display:flex;gap:4px;justify-content:space-between;margin-top:-24px;position:relative}.dial-detents span{font-size:var(--type-secondary);padding:8px;border-radius:8px}.dial-count{font-size:var(--type-count);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;margin:20px 0 4px}.dial-budget .segmented{justify-content:center;margin:20px 0}.budget-list{display:grid;gap:8px}.map-poster{position:relative;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--surface)}.map-poster img{width:100%;height:auto}.map-poster .dark-poster{display:none}[data-theme=dark] .map-poster .dark-poster{display:block}[data-theme=dark] .map-poster .light-poster{display:none}.map-poster .map-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-100%);width:24px;height:24px;border-radius:50% 50% 50% 0;background:var(--primary);border:3px solid var(--surface);rotate:-45deg}.map-poster .map-pin.origin{background:var(--surface);border-color:var(--primary)}.map-attribution{position:relative;font-size:var(--type-min);text-align:right;padding:4px 8px;background:var(--surface);color:var(--secondary)}.map-link{display:block;padding:12px;color:var(--primary);text-align:center;border-top:1px solid var(--border)}.home-map{position:sticky;top:24px}.home-map .rosette{width:72px;height:72px;margin:20px auto 8px;color:var(--primary)}.map-note{text-align:center;padding:12px 20px 20px;font-size:var(--type-secondary)}.place-hero{position:relative;border-radius:18px;overflow:hidden;background:var(--border);margin-bottom:32px}.place-hero>picture,.place-hero>picture img{width:100%;height:clamp(320px,38vw,520px);object-fit:cover}.hero-title{position:absolute;inset:auto 0 0;padding:80px 32px 40px;background:linear-gradient(transparent,rgba(20,16,13,.84));color:#F2EDE4}.hero-title h1{max-width:20ch;margin-top:12px;font-size:var(--type-display)}.hero-title .eyebrow{color:#F2EDE4}.hero-title .chips{margin-top:16px}.hero-title .chip{background:rgba(20,16,13,.35);border-color:rgba(242,237,228,.5);color:#F2EDE4}.place-hero figcaption{position:absolute;bottom:8px;right:12px;max-width:65%;text-align:right;font-size:var(--type-min);color:#F2EDE4}.place-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:32px;align-items:start}.place-side{position:sticky;top:24px;display:grid;gap:24px}.place-side .actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.place-side .actions button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:var(--type-secondary);line-height:1.25;padding:8px 4px}.fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.fact-grid>div{min-width:0}.fact-grid dt{display:flex;gap:6px;align-items:center;font-size:var(--type-min);text-transform:uppercase;letter-spacing:.1em;color:var(--secondary);margin-bottom:4px}.fact-grid svg[role=none]{width:16px;height:16px}.fact-grid dd{margin:0;font-size:var(--type-body);font-variant-numeric:tabular-nums;overflow-wrap:break-word}.fact-grid .wide{grid-column:1/-1}.prose-block{scroll-margin-top:84px;margin-bottom:32px}.prose-block h2{margin-bottom:16px}.prose-block p{white-space:pre-line}.why{font-size:var(--type-lead);line-height:1.5}.prose-block .eyebrow{margin-bottom:12px}.facts-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--border)}.facts-list>div{padding:12px 12px 12px 0;border-bottom:1px solid var(--border)}.facts-list dt{font-size:var(--type-caption);color:var(--secondary)}.facts-list dd{margin:4px 0 0;font-variant-numeric:tabular-nums}.source-list{display:flex;flex-wrap:wrap;gap:8px}.source-list a{overflow-wrap:break-word;max-width:100%}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px}.context-promo{padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;gap:16px;align-items:center;margin-top:32px}.context-promo img{width:56px;height:56px;border-radius:12px}.context-promo p{font-size:var(--type-secondary);color:var(--secondary);margin-top:6px}.list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.link-card{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.link-card svg[role=none]{color:var(--primary)}.link-card div{flex:1;min-width:0}.link-card p{font-size:var(--type-body);color:var(--secondary);margin-top:8px}.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.collection-cover{position:relative;aspect-ratio:3/2;border-radius:18px;overflow:hidden;background:var(--surface);border:1px solid var(--border)}.collection-cover>picture,.collection-cover img{width:100%;height:100%;object-fit:cover}.collection-cover .hero-title{padding:40px 16px 16px}.collection-cover .hero-title h2{font-size:var(--type-title)}.collection-cover .credit{position:absolute;top:4px;right:4px;color:#F2EDE4;background:rgba(20,16,13,.74);border-radius:8px;max-width:80%;font-size:var(--type-min);padding:4px 6px}.ordered-places{padding:0;list-style:none;counter-reset:places;display:grid;gap:12px}.ordered-places>li{counter-increment:places;display:flex;align-items:center;gap:16px;margin:0}.ordered-places>li:before{content:counter(places,decimal-leading-zero);font-size:var(--type-title);color:var(--tertiary);width:30px;flex:none;font-variant-numeric:tabular-nums}.ordered-places .row-card{flex:1;min-width:0}.phrase-group{margin-top:40px}.phrase-group h2{margin-bottom:16px}.phrase-row{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--border)}.phrase-bg{font-size:var(--type-title)}.phrase-row .latin{font-size:var(--type-secondary);color:var(--secondary)}dialog{border:1px solid var(--border);border-radius:28px;max-width:min(880px,calc(100% - 32px));background:var(--surface);color:var(--text);padding:32px}dialog::backdrop{background:rgba(20,16,13,.65)}.show-phrase{font:700 var(--type-show)/1.2 var(--font-title);margin:24px 0}.credit-list{columns:2;column-gap:32px}.credit-item{break-inside:avoid;padding:12px 0;border-bottom:1px solid var(--border);font-size:var(--type-secondary)}.credit-item a{overflow-wrap:anywhere}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-grid label{display:grid;gap:8px}.utility-mount{margin-top:24px}.settings-group{padding:24px 0;border-bottom:1px solid var(--border)}.settings-group h2{margin-bottom:20px}.hours-record{white-space:pre-wrap;font:var(--type-secondary)/1.6 var(--font-ui)}.article .lead{font-size:var(--type-title)}.article p{margin:20px 0}.trails-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.trail{padding:16px;border:1px solid var(--border);border-radius:12px}.trail h3{margin-bottom:8px}.status-seal{display:inline-flex;gap:8px;align-items:center;color:var(--primary)}.status-seal svg[role=none]{width:18px;height:18px}
@media(min-width:1600px){.card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:760px) and (max-width:1099px){.site-shell{width:88px;padding:20px 8px}.site-shell .wordmark,.shell-search,.shell-tools,.store-plate{display:none}.site-shell .brand-lockup{justify-content:center}.site-shell nav{margin:28px -8px}.nav-link{flex-direction:column;gap:4px;padding:12px 4px;font-size:var(--type-min);border-left-width:3px}.shell-content{margin-left:88px}.page-wrap{padding:28px 24px 40px}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.place-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px}.home-top{grid-template-columns:1fr 1fr;gap:16px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-grid{grid-template-columns:1fr}.promo-tile{grid-template-columns:56px 1fr auto}.promo-tile .badges{grid-column:auto;max-width:160px}.place-side .actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){html{scroll-padding-top:72px}.site-shell{inset:auto 0 0;width:100%;padding:0 4px env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(20px) saturate(1.4);overflow:visible}.site-shell>.brand-lockup,.shell-search,.shell-tools,.store-plate{display:none}.site-shell nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0}.nav-link{flex-direction:column;justify-content:center;gap:3px;min-height:64px;font-size:var(--type-min);line-height:1.15;padding:8px 1px;border:0;border-top:2px solid transparent;text-align:center}.nav-link svg[role=none]{width:26px;height:26px}.nav-link[aria-current=page]{border-top-color:var(--primary);border-left:0}.shell-content{margin-left:0;padding-bottom:calc(64px + env(safe-area-inset-bottom))}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--border);position:sticky;top:0;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(20px);z-index:15;gap:12px;min-height:65px}.mobile-header .header-title{font:700 var(--type-headline)/1.1 var(--font-title);flex:1;min-width:0}.mobile-header .brand-tile{width:32px;height:32px;border-radius:8px}.mobile-header .language-menu summary{font-size:var(--type-caption);min-height:44px}.mobile-header .language-menu ul{position:absolute;right:0;width:180px;z-index:30}.mobile-header .language-menu svg[role=none]{width:20px}.page-wrap{padding:20px 20px 32px}.page-heading{margin-bottom:24px}.page-heading .lead{font-size:var(--type-headline)}.home-hero{margin:0 -20px 24px;border-radius:0;min-height:320px}.home-hero-copy{padding:64px 20px 24px;min-height:320px}.home-hero-copy h1{font-size:var(--type-hero)}.home-hero-copy p{font-size:var(--type-headline)}.home-hero figcaption{right:8px;top:8px;font-size:var(--type-min);max-width:60%}.home-top,.place-grid{grid-template-columns:1fr}.home-map{position:static}.home-map .map-poster{display:none}.home-map{display:none}.dial-budget{padding:16px}.origin-line h2{font-size:var(--type-title)}.dial-detents span{font-size:var(--type-caption);padding:8px 4px}.dial-arc{height:80px}.dial-count{font-size:var(--type-display)}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-body{padding:12px}.card-photo .photo-caption{padding:24px 10px 10px}.card-photo h3{font-size:var(--type-headline)}.card-body .card-summary{font-size:var(--type-secondary)}.card-grid .chip{font-size:var(--type-min);min-height:28px;padding:4px 6px}.credit{font-size:var(--type-min);padding:6px 10px}.section{margin-top:32px}.section-head{margin-bottom:16px;gap:8px}.section-head h2{font-size:var(--type-title)}.section-head>a{font-size:var(--type-caption)}.place-hero{margin:0 -20px 24px;border-radius:0}.place-hero>picture,.place-hero>picture img{height:auto;aspect-ratio:4/3;min-height:320px;object-fit:cover}.hero-title{padding:60px 20px 40px}.hero-title h1{font-size:var(--type-display);max-width:20ch}.hero-title .chip{font-size:var(--type-caption);min-height:28px;padding:4px 8px}.hero-title .chips{gap:4px;margin-top:12px}.place-hero figcaption{font-size:var(--type-min);right:8px;max-width:90%}.place-side{position:static;grid-row:1}.place-side .actions{grid-template-columns:repeat(3,minmax(0,1fr))}.place-side .nearby-side{display:none}.place-grid{gap:24px}.place-side .map-poster{display:none}.place-grid .why{font-size:var(--type-headline)}.facts-list{grid-template-columns:1fr}.gallery{gap:12px}.list-grid,.collection-grid,.form-grid,.trails-list{grid-template-columns:1fr}.phrase-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.phrase-row>div:first-child{grid-column:1/-1}.phrase-bg{font-size:var(--type-title)}.phrase-row .actions{flex-wrap:nowrap}.credit-list{columns:1}.site-footer{padding:28px 20px}.promo-grid{grid-template-columns:1fr;gap:28px}.promo-tile .badges{padding-left:68px}.footer-bottom{display:grid}.ordered-places>li{gap:8px}.ordered-places>li:before{font-size:var(--type-body);width:22px}.row-card{gap:12px;padding:12px}.row-card .row-photo{width:80px}.row-photo picture,.row-photo img{width:80px;height:60px}.row-text h3{font-size:var(--type-headline)}.row-text p{font-size:var(--type-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.row-text .data{gap:6px;font-size:var(--type-caption)}.row-card .arrow{display:none}.breadcrumbs{font-size:var(--type-min);margin-bottom:12px}}
@media(max-width:359px){.page-wrap{padding-left:20px;padding-right:20px}.card-grid{grid-template-columns:1fr}.place-side .actions{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-title h1{font-size:var(--type-large)}.home-hero-copy h1{font-size:var(--type-display)}.promo-tile .badges{padding-left:0}.origin-line{align-items:start}.origin-line .chip{font-size:var(--type-caption)}.mobile-header{padding:8px 12px}.mobile-header .header-title{font-size:var(--type-body)}.dial-detents{flex-wrap:wrap}.dial-detents span{width:calc(50% - 4px)}}
@media(prefers-reduced-motion:no-preference){.place-hero>picture img{animation:hero-settle 1.2s ease-out both}@keyframes hero-settle{from{transform:scale(1.04)}to{transform:scale(1)}}::view-transition-old(root){animation:page-out 180ms ease-out}::view-transition-new(root){animation:page-in 180ms ease-out}@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}@keyframes page-in{from{opacity:0;transform:translateY(8px)}}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}::view-transition-group(*){animation-duration:0s!important}}
@media print{.site-shell,.mobile-header,.site-footer,.actions,.suggestion{display:none}.shell-content{margin:0}.page-wrap{max-width:none;padding:0}.place-grid{display:block}.place-side{position:static}.place-hero>picture img{max-height:300px}.place-hero{break-inside:avoid}a{text-decoration:underline}.panel{break-inside:avoid}body{background:#fff;color:#000}}
.place-hero .credit,.home-hero .credit{color:inherit;padding:0}.hours-day{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid var(--border)}.filters h2{font-size:var(--type-lead);margin:24px 0 12px}.filters h2:first-child{margin-top:0}.empty-state{padding:40px 24px;text-align:center;border:1px solid var(--border);border-radius:18px}.empty-state>svg[role=none]{width:48px;height:48px;color:var(--primary);margin-bottom:16px}.empty-state p{margin:12px auto 20px;max-width:45ch}.about-head{display:flex;align-items:center;gap:24px}.about-head .brand-tile{width:76px;height:76px;border-radius:18px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:24px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:32px 0}.stats strong{display:block;font:700 var(--type-large)/1 var(--font-ui);font-variant-numeric:tabular-nums}.stats span{font-size:var(--type-secondary);color:var(--secondary)}.map-nojs-list{columns:2;column-gap:32px}.map-nojs-list section{break-inside:avoid;margin-top:24px}.map-nojs-list h2{margin-bottom:12px}.map-nojs-list li{font-size:var(--type-body)}.map-nojs-list a{color:var(--primary)}.nojs-note{padding:12px 16px;border:1px solid var(--border);border-radius:12px;margin:16px 0}.collection-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}.collection-heading figure{border-radius:18px;overflow:hidden}.collection-heading img{width:100%;aspect-ratio:3/2;object-fit:cover}.article-layout{display:grid;grid-template-columns:minmax(0,680px) minmax(180px,1fr);gap:48px}.article-aside{position:sticky;top:24px}.article-aside a{display:block;padding:12px 0;border-bottom:1px solid var(--border)}.phrase-nav{position:sticky;top:0;background:var(--bg);padding:12px 0;z-index:2}.credits-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:24px 0}.utility-links{margin-top:32px}
@media(max-width:1099px){.collection-heading{gap:24px}.article-layout{grid-template-columns:1fr}.article-aside{position:static}}
@media(max-width:759px){.collection-heading{grid-template-columns:1fr}.collection-heading h1{margin-top:16px}.map-nojs-list{columns:1}.about-head{align-items:start;gap:16px}.about-head h1{font-size:var(--type-large)}.stats{gap:12px}.stats strong{font-size:var(--type-title)}.stats span{font-size:var(--type-caption)}.phrase-nav{top:65px}}
.about-head .brand-tile{view-transition-name:none}
@media(max-width:759px){main[data-page=places] .page-wrap{padding-top:0}main[data-page=places] .breadcrumbs{display:none}.mobile-header[data-place=true]{position:fixed;top:0;left:0;width:100%}.mobile-header[data-over-photo=true]{background:transparent;border-color:transparent;backdrop-filter:none;color:#F2EDE4}.mobile-header .language-menu ul{color:var(--text)}.mobile-header[data-over-photo=true] .icon-button{background:transparent;color:#F2EDE4}.place-side .map-poster{display:block}main[data-page=places] .suggestion{margin-top:20px}.place-hero .hero-title{padding-top:100px}}
.suggestion,.android-promo{position:fixed;z-index:35;right:24px;bottom:24px;width:min(360px,calc(100vw - 40px));margin:0}.android-promo{bottom:104px}@media(max-width:759px){.suggestion{bottom:calc(80px + env(safe-area-inset-bottom));right:20px}.android-promo{bottom:calc(160px + env(safe-area-inset-bottom));right:20px}main[data-page=places] .suggestion{margin:0}}
@media(max-width:759px){.place-hero{min-height:320px}.place-hero>picture{position:absolute;inset:0;height:100%}.place-hero>picture img{height:100%;min-height:0;aspect-ratio:auto}.place-hero .hero-title{position:relative;inset:auto;min-height:320px;padding:100px 20px 40px;display:flex;flex-direction:column;justify-content:flex-end}.card-photo .photo-caption{padding:20px 10px 10px}.card-photo h3{font-size:var(--type-body);line-height:1.12}}
.theme-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.suggestion,.android-promo{min-height:44px;padding:0 8px 0 16px;align-items:center;gap:8px;font-size:var(--type-secondary)}.suggestion .icon-button,.android-promo .icon-button{border:0;background:none;flex:none}.suggestion svg[role=none],.android-promo svg[role=none]{width:18px;height:18px}.android-promo>a{display:flex;align-items:center;gap:10px;min-width:0;white-space:nowrap}.android-promo img{height:20px;width:auto}.android-promo{bottom:24px}.suggestion a{white-space:nowrap}.home-search{display:none!important}.origin-choose{font-size:var(--type-secondary);white-space:nowrap}.time-heading{margin-top:24px}.all-budget{display:flex;margin-top:16px}.home-desktop-headline{display:inline}.home-wordmark,.home-phone-count{display:none}.home-hero,.home-hero-copy{min-height:260px;height:260px}.home-hero-copy{padding:32px}.home-headline{font-size:var(--type-display);max-width:30ch;margin:12px 0 0}.home-hero figcaption{top:auto;right:12px;bottom:8px;background:none;padding:0;color:rgba(242,237,228,.72);font-size:var(--type-min);max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-hero figcaption .credit{font-size:inherit}.place-hero figcaption{color:rgba(242,237,228,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 24px)}
.home-top{align-items:stretch}.home-map{position:relative;top:auto;align-self:stretch}.home-map .map-poster{position:sticky;top:24px;display:flex;flex-direction:column;height:640px;max-height:calc(100vh - 48px);min-height:480px}.home-map-crop>svg{width:100%;height:100%;flex:1;min-height:0}.home-map-crop .map-attribution,.home-map-crop .map-link{flex:none}.home-map .rosette,.home-map .map-note{display:none}.budget-summary{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:12px;text-align:center}.budget-summary .rosette{width:220px;height:220px;color:var(--primary)}.dial-count{font-size:var(--type-count);margin:0 0 8px}.budget-summary .caption{margin-top:8px}.dial-track{position:relative;height:120px;margin:24px 0 0}.dial-track .dial-arc{height:100%;color:var(--border)}.dial-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--primary);transform:translate(-50%,-50%)}.dial-thumb{position:absolute;width:28px;height:28px;border:3px solid var(--primary);background:var(--surface);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 2px 5px #14100d18}.dial-detents{margin-top:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.dial-detents>span{font-size:var(--type-secondary);font-weight:500;line-height:1.2;padding:8px 2px}.dial-detents .selected{background:none;color:var(--primary);font-weight:700}.dial-budget .segmented{margin:16px 0}.dial-budget .segmented .chip{min-height:44px}.dial-budget .dial{margin-bottom:20px}
.place-card,.row-photo,.collection-card,.gallery-photo{position:relative}.card-main-link{position:absolute;inset:0;z-index:1;border-radius:18px}.card-main-link:focus-visible{outline-offset:3px}.credit-toggle{position:absolute;z-index:2;right:0;bottom:0;min-height:44px;width:44px;padding:12px;border:0!important;background:none!important;border-radius:50%;display:flex;align-items:center;justify-content:center}.credit-toggle>span{width:20px;height:20px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(20,16,13,.3);color:rgba(242,237,228,.6)}.credit-toggle svg[role=none]{width:18px;height:18px}.photo-credit-popover{position:fixed;inset:auto;margin:0;max-width:min(320px,calc(100vw - 32px));padding:12px 16px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:12px;overflow-wrap:anywhere}.photo-credit-popover .credit{display:block;padding:0;font-size:var(--type-caption);color:var(--text);line-height:1.5}.photo-credit-popover a{display:inline-block;min-height:28px}.gallery{display:flex;flex-direction:column;gap:12px}.gallery-row{display:flex;gap:12px;align-items:start}.gallery-photo{flex:var(--ratio,1) 1 0%;min-width:0;overflow:visible}.gallery img{width:100%;height:auto;aspect-ratio:var(--ratio);object-fit:contain;border-radius:18px}.gallery figcaption{position:absolute;right:0;bottom:0}.place-side .actions[data-place-actions]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.place-side .actions .action-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:64px;height:64px;padding:4px;font-size:var(--type-caption);line-height:1.15;border-radius:12px;text-align:center}.action-tile svg[role=none]{width:20px;height:20px}.directions-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.directions-links .button{min-height:44px;padding:8px 6px;font-size:var(--type-secondary);white-space:nowrap;gap:3px}.maps-word{margin-left:-2px}.coordinate-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.coordinate-row .data{font-variant-numeric:tabular-nums}.coordinate-row .icon-button{border:0;background:none}.contact-row{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;border-bottom:1px solid var(--border);color:var(--primary)}.contact-row span:first-of-type{flex:1;overflow-wrap:break-word}.contact-row svg[role=none]{width:20px;height:20px}.sources-extra{margin-top:12px}.sources-extra summary{min-height:44px;cursor:pointer;color:var(--primary)}.sources-extra .source-list{margin-top:8px}.nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nearby-grid .row-card{align-items:start;gap:12px}.nearby-grid .row-photo{width:72px}.nearby-grid .row-photo picture,.nearby-grid .row-photo img{width:72px;height:54px}.nearby-grid .row-text h3{font-size:var(--type-body)}.nearby-grid .row-text p{font-size:var(--type-secondary)}.nearby-grid .arrow{display:none}.level-tabs{position:sticky;top:12px;z-index:3;background:var(--bg);isolation:isolate}@media(min-width:760px){.place-hero.lowres{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;background:var(--surface);border:1px solid var(--border);padding:24px}.place-hero.lowres>picture,.place-hero.lowres>picture img{height:auto;max-height:440px;width:100%;object-fit:contain;border-radius:18px}.place-hero.lowres .hero-title{position:static;padding:0;background:none;color:var(--text)}.place-hero.lowres .hero-title h1{font-size:var(--type-display)}.place-hero.lowres .hero-title .eyebrow{color:var(--primary)}.place-hero.lowres .chip{background:var(--bg);color:var(--text);border-color:var(--border)}.place-hero.lowres figcaption{position:static;grid-column:1/-1;color:var(--secondary);justify-self:end}}.category-dark{display:none}[data-theme=dark] .category-light{display:none}[data-theme=dark] .category-dark{display:block}
@media(min-width:760px) and (max-width:1099px){.budget-summary{grid-template-columns:minmax(0,1fr) 120px}.budget-summary .rosette{width:120px;height:120px}.home-map .map-poster{height:640px;min-height:440px}.place-hero.lowres{gap:20px;padding:20px}.place-hero.lowres .hero-title h1{font-size:var(--type-large)}.nearby-grid{grid-template-columns:1fr}}
@media(max-width:759px){.suggestion,.android-promo,main[data-page=places] .suggestion{top:65px;right:0;left:0;bottom:auto;min-height:44px;height:44px;width:100%;border-width:0 0 1px;border-radius:0;padding:0 12px 0 20px;margin:0}.suggestion .icon-button,.android-promo .icon-button{min-height:44px;height:44px}.suggestion a{line-height:1.1}.home-hero,.home-hero-copy{height:auto;min-height:320px}.home-wordmark{display:inline}.home-desktop-headline{display:none}.home-phone-count{display:block}.home-headline{font-size:var(--type-hero)}.home-hero-copy{padding:64px 20px 28px}.home-hero figcaption{top:auto;right:8px;bottom:6px;max-width:calc(100% - 16px);font-size:var(--type-min)}.home-hero-copy .home-phone-count{font-size:var(--type-headline)}.home-hero-copy{padding-bottom:44px}.home-search{display:flex!important}.origin-line{display:block}.origin-line .origin-choose{display:flex;width:100%;margin-top:16px;min-height:44px;white-space:nowrap}.budget-summary{grid-template-columns:minmax(0,1fr) 120px;gap:8px}.budget-summary .rosette{width:120px;height:120px}.dial-count{font-size:var(--type-hero)}.dial-track{height:100px}.dial-detents>span{font-size:var(--type-secondary)}.dial-detents{flex-wrap:nowrap}.dial-detents span{width:auto}.place-side .actions[data-place-actions]{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:0 -20px;padding:0 20px 4px;scrollbar-width:none}.place-side .actions[data-place-actions]::-webkit-scrollbar{display:none}.place-side .actions .action-tile{flex:0 0 72px;min-width:72px;width:72px;min-height:64px;height:64px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-row{display:contents}.gallery img{height:100%;aspect-ratio:4/3;object-fit:cover}.gallery-odd .gallery-row:last-child .gallery-photo:last-child{grid-column:1/-1}.gallery-odd .gallery-row:last-child .gallery-photo:last-child img{max-height:320px;object-fit:contain;background:var(--surface)}.nearby-grid{grid-template-columns:1fr}.level-tabs{top:65px;position:static}.mobile-header[data-over-photo=true].lowres-header{background:var(--surface);color:var(--text);border-bottom-color:var(--border)}}
@media(max-width:359px){.maps-word{display:none}.directions-links .button{font-size:var(--type-secondary)}.home-headline{font-size:var(--type-display)}.budget-summary{grid-template-columns:minmax(0,1fr) 100px}.budget-summary .rosette{width:100px;height:100px}.suggestion a{font-size:var(--type-caption)}}
@media(prefers-reduced-motion:reduce){}
@media print{.credit-toggle,.theme-segments,.photo-credit-popover,.home-map{display:none!important}.place-hero.lowres{break-inside:avoid}.level-tabs{position:static}}
@media(min-width:760px){.place-hero.lowres>picture{max-width:var(--natural-width);justify-self:center}}.home-headline .home-desktop-headline{font-family:var(--font-title);font-weight:700;font-size:inherit;line-height:inherit}.home-wordmark{font:inherit}.card-photo .photo-caption{pointer-events:none}@media(max-width:759px){.budget-summary{grid-template-columns:minmax(0,1fr) 160px}.budget-summary .rosette{width:160px;height:160px}}@media(max-width:359px){.budget-summary{grid-template-columns:minmax(0,1fr) 120px}.budget-summary .rosette{width:120px;height:120px}}
@media(prefers-reduced-motion:no-preference){.place-card:has(.card-main-link:active),.row-card:has(.row-text>a:active){transform:scale(.98)}}
.headline-number{font-family:var(--font-ui);font-variant-numeric:tabular-nums lining-nums}
.card-photo .photo-caption{padding-right:32px}
.home-map-crop .overview-image,.home-map-crop .overview-image picture,.home-map-crop .overview-image img{width:1600px;height:1046px;max-width:none;aspect-ratio:auto;object-fit:fill}.maps-word{margin-left:0}
@media(min-width:760px){.place-hero.lowres>picture img{aspect-ratio:var(--image-ratio)}}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.place-reading{grid-column:1;grid-row:1}.place-side{grid-column:2;grid-row:1}@media(max-width:759px){.place-side{grid-column:1;grid-row:1}.place-reading{grid-column:1;grid-row:2}}
.directions-block{container-type:inline-size}@container(max-width:300px){.directions-links .maps-word{display:none}}
@media(min-width:760px){.place-side{max-height:calc(100vh - 48px);overflow:auto;scrollbar-gutter:stable;scrollbar-width:thin;overscroll-behavior:contain}}@media print{.place-side{max-height:none;overflow:visible}}
.nearby-row{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:12px 0;border-bottom:1px solid var(--border)}.nearby-row>span:first-child{font-family:var(--font-title);font-size:var(--type-headline)}.nearby-row .data{flex:none;color:var(--secondary)}.nearby-row:hover{color:var(--primary)}.footer-stores a{font-size:var(--type-caption);color:var(--primary)}
.skeleton-hero{height:clamp(320px,38vw,520px)}.skeleton-line{height:20px;max-width:100%;background:var(--border);border-radius:4px;margin:12px 0}.skeleton-line.short{width:40%}.skeleton-line.title{height:60px;width:80%}.skeleton-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.skeleton-actions>span{height:64px;background:var(--border);border-radius:12px}.skeleton-tabs{height:52px}.client-skeleton .prose-block{padding-top:24px}@media(max-width:759px){.skeleton-hero{height:320px}.skeleton-actions{display:flex;overflow:hidden;flex-wrap:nowrap}.skeleton-actions>span{flex:0 0 72px}}
.compact-card{position:relative;padding:0;display:block}.row-link{display:flex;align-items:start;gap:16px;padding:12px}.compact-card .credit-toggle{left:64px;right:auto;bottom:auto;top:40px}.compact-card .photo-credit-popover{position:fixed}.compact-card .row-photo{flex:none}.compact-card .row-text .data:empty{display:none}
.credits-controls{min-height:44px}
[hidden]{display:none!important}.live-place-status{min-height:24px;margin-bottom:8px}.live-place-status[data-state=closingSoon]{color:var(--warning)}.action-tile[aria-pressed=true]{color:var(--primary);border-color:var(--primary);background:var(--soft)}.action-tile[aria-pressed=true] svg[role=none]{fill:currentColor}.action-tile[data-place-action=visited][aria-pressed=true] svg[role=none]{fill:none;stroke-width:2.5}.state-pop svg[role=none]{animation:save-pop 500ms var(--spring)}.state-pop[data-place-action=visited] svg[role=none]{animation:seal-stamp 500ms var(--spring)}
@keyframes save-pop{0%{transform:scale(.65)}60%{transform:scale(1.2)}100%{transform:scale(1)}}@keyframes seal-stamp{0%{transform:rotate(-12deg) scale(1.35);opacity:.4}65%{transform:rotate(6deg) scale(.94)}100%{transform:rotate(0) scale(1);opacity:1}}
.saved-badge{font:700 var(--type-caption) var(--font-ui);font-variant-numeric:tabular-nums;margin-left:auto;min-width:20px;text-align:center;color:var(--primary)}.continue-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:12px;margin-bottom:16px}.continue-row a{min-width:0}.choice-group{gap:8px}
#tgb-toast{position:fixed;z-index:200;bottom:100px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 40px);padding:12px 20px;background:var(--text);color:var(--bg);border-radius:12px;pointer-events:none}
.tgb-sheet{margin:auto;max-width:min(520px,calc(100vw - 32px));width:520px;max-height:85dvh;background:var(--elevated);color:var(--text);border:1px solid var(--border);border-radius:28px;padding:20px;animation:sheet-open 360ms var(--spring);overflow:auto}.tgb-sheet::backdrop{background:#0000004d}.tgb-sheet header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.tgb-sheet header h2{margin:0}.tgb-sheet input{width:100%;box-sizing:border-box}.tgb-sheet form{margin-top:20px}.drag-handle{width:36px;height:5px;border-radius:3px;background:var(--border);margin:0 auto 16px}.sheet-body .directions-links{display:flex;flex-direction:column}.tgb-sheet.anchored{position:fixed;margin:0;border-radius:18px;box-shadow:0 2px 8px #0002,0 12px 32px #0002}.tgb-sheet.anchored .drag-handle{display:none}
@keyframes sheet-open{from{transform:translateY(60px);opacity:0}to{transform:translateY(0);opacity:1}}
.photo-open{overflow:hidden}.photo-browser{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;padding:0;margin:0;border:0;border-radius:0;background:#000;color:#F4F0E8;overflow:hidden;grid-template-rows:auto minmax(0,1fr) auto}.photo-browser[open]{display:grid}.photo-browser::backdrop{background:#000}.photo-browser header{padding:12px max(16px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between}.photo-browser footer{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:center;padding:12px 16px max(20px,env(safe-area-inset-bottom));background:#000;z-index:1}.photo-browser button{background:#000;color:#F4F0E8;border-color:#ffffff40;min-width:44px;width:44px;height:44px}.photo-browser [data-browser-credit]{overflow-wrap:anywhere;font-size:var(--type-caption);color:#f4f0e8cc;text-align:center;line-height:1.35}.photo-browser .credit{font:inherit;color:inherit}.photo-browser a{color:inherit;text-decoration:underline}.browser-stage{overflow:hidden;touch-action:none;display:grid;place-items:center}.browser-frame{width:100%;height:100%;will-change:transform;pointer-events:none}.browser-frame picture{width:100%;height:100%;display:grid;place-items:center}.browser-frame img{width:100%;height:100%;object-fit:contain;max-height:100%;background:transparent!important}.photo-browser header{z-index:1}.place-hero picture[role=button]{cursor:zoom-in}
.library-section h2{margin-bottom:16px}.library-section{min-width:0}.library-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px solid var(--border);border-radius:18px;margin-bottom:12px}.library-row h3{margin:0}.library-row a{min-width:0}.library-row small{display:block;color:var(--secondary)}
@media(max-width:759px){.tgb-sheet{margin:auto 0 0;max-width:100%;width:100%;border-radius:28px 28px 0 0;padding:16px 20px max(24px,env(safe-area-inset-bottom))}.saved-badge{position:absolute;top:3px;right:8px;margin:0;font-size:var(--type-min)}.nav-link{position:relative}.photo-browser footer{padding-bottom:max(24px,env(safe-area-inset-bottom))}}
@media(min-width:1100px){#tgb-toast{left:calc(50% + 124px);bottom:24px}}
@media(prefers-reduced-motion:reduce){.state-pop svg[role=none],.tgb-sheet{animation:none}}
.search-result[data-focus=true]{outline:2px solid var(--primary);background:var(--soft)}mark{background:var(--soft);color:var(--text);text-decoration:underline;text-decoration-color:var(--primary)}.search-result{min-height:64px}.browse-credit{position:relative;z-index:2}.browse-credit a{text-decoration:underline}.card-main-link:focus-visible{outline-offset:2px}
.collection-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(220px,26vw,320px);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.collection-card{scroll-snap-align:start;min-width:0}.history-stories{margin:-16px 0 24px}.history-stories .chip{white-space:normal}
.map-active main>.page-wrap{max-width:none;padding:0}.map-active main .page-heading,.map-active main .breadcrumbs,.map-active main [data-dismissible],.map-active .map-nojs-list,.map-active .site-footer{display:none}.map-active.map-failed .map-nojs-list{display:block;padding:20px}.map-active #map-root{position:relative;height:100dvh;min-height:480px;overflow:hidden;background:var(--bg)}.map-canvas{position:absolute;inset:0 0 0 380px}.map-filters{position:absolute;top:12px;left:392px;right:12px;padding:8px;display:flex;flex-wrap:wrap;gap:6px;max-height:112px;overflow:auto;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:18px;z-index:2}.map-filters .chip{min-height:44px;flex-shrink:0}.map-filters [aria-pressed=true] svg[role=none]{color:inherit}.map-controls{position:absolute;right:16px;top:150px;display:grid;gap:8px;z-index:2;justify-items:end}.map-controls button{width:48px;height:48px;display:grid;place-items:center;padding:8px;background:var(--elevated);box-shadow:0 2px 8px #0002,0 8px 24px #0001;font:500 var(--type-title) var(--font-ui)}.map-count{max-width:150px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;font-size:var(--type-caption);line-height:1.2;font-variant-numeric:tabular-nums;text-align:right}.map-panel{position:absolute;inset:0 auto 0 0;width:380px;background:var(--surface);border-right:1px solid var(--border);z-index:3;display:flex;flex-direction:column}.map-sheet-handle{display:none}.map-panel-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px;flex:1}.map-panel-body>h2{margin:16px 0}.map-panel-body>.chips{margin:12px 0}.map-panel-heading{display:flex;align-items:center;gap:12px;justify-content:space-between;min-height:44px;margin-bottom:12px}.map-panel-heading h2{font-size:var(--type-title)}.map-card-photo{margin:0}.map-card-photo picture{overflow:hidden;border-radius:18px;aspect-ratio:16/10}.map-card-photo img{width:100%;height:100%;object-fit:cover}.map-card-photo figcaption{font-size:var(--type-min);padding-top:6px}.map-card-photo a{text-decoration:underline}.map-card-actions{margin:16px 0}.map-card-summary{margin-top:16px}.map-virtual{position:relative}.map-window{position:absolute;inset:0 0 auto}.map-list-row{display:flex;align-items:center;gap:12px;width:100%;height:88px;border:0;border-radius:0;border-bottom:1px solid var(--border);text-align:left;padding:12px 0;min-width:0}.map-list-row>svg[role=none]{color:var(--hue);width:28px;height:28px}.map-list-row>span:nth-child(2){min-width:0;flex:1}.map-list-row strong{display:block;font:700 var(--type-headline)/1.1 var(--font-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-list-row small{font-size:var(--type-caption);color:var(--secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.map-list-row[data-hover=true]{background:var(--soft);border-bottom-color:var(--primary)}.map-load-status:empty{display:none}.map-load-status{position:absolute;bottom:30px;right:20px;max-width:min(340px,75%);padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;z-index:5}.map-dimmer{position:absolute;inset:0;background:#0000004d;border:0;border-radius:0;z-index:3}.maplibregl-ctrl-attrib{font:var(--type-min)/1.4 var(--font-ui)!important}.map-active .maplibregl-canvas:focus-visible{outline-offset:-4px}.map-active .maplibregl-ctrl-bottom-right{bottom:4px}.map-active .maplibregl-ctrl-attrib-button{min-height:24px}
@media(max-width:1099px){.map-active #map-root{height:100dvh}.map-canvas{left:0}.map-filters{left:12px;flex-wrap:nowrap;overflow-x:auto;max-height:none;right:12px}.map-panel{top:120px;bottom:0;left:0;right:0;width:auto;border-radius:28px 28px 0 0;border:1px solid var(--border);border-bottom:0;transform:translateY(calc(100% - 286px));transition:transform 360ms var(--spring);box-shadow:0 -2px 12px #0001}.map-panel[data-detent=large]{transform:translateY(0)}.map-panel.dragging{transition:none}.map-sheet-handle{display:grid;place-items:center;flex:none;width:100%;height:32px;min-height:32px;border:0;background:transparent;touch-action:none;padding:0;border-radius:28px 28px 0 0}.map-sheet-handle>span{width:36px;height:5px;border-radius:3px;background:var(--border)}.map-panel-body{padding:0 20px 20px}.map-controls{top:90px}.map-count{max-width:130px}.map-card-photo picture{aspect-ratio:2.8}.map-panel[data-detent=large] .map-card-photo picture{aspect-ratio:16/9}.map-active .maplibregl-ctrl-bottom-right{bottom:286px}.map-card-photo figcaption{line-height:1.2}.map-panel-heading{margin-bottom:8px}.map-panel-body>h2{margin:12px 0}.map-panel-body .map-card-summary{margin-top:12px}}
@media(max-width:759px){.map-active #map-root{height:calc(100dvh - 64px - 68px - env(safe-area-inset-bottom));min-height:0}.map-controls{right:12px;gap:4px}.map-filters{top:8px;left:8px;right:8px;padding:6px;border-radius:12px}.map-count{font-size:var(--type-min)}.map-panel{top:80px}.map-card-photo picture{aspect-ratio:3.2}.map-panel-body>h2{font-size:var(--type-title)}.map-panel-body .chips{margin:8px 0}.map-panel-body .map-panel-heading{min-height:36px}.map-panel-heading .icon-button{min-height:36px;height:36px}.map-panel-body .map-card-summary{display:none}.map-panel[data-detent=large] .map-card-summary{display:block}}
@media(min-width:1100px){.map-dimmer{display:none}.map-panel-body{animation:map-card-in 360ms var(--spring)}}
@keyframes map-card-in{from{transform:translateX(-16px);opacity:.5}to{transform:translateX(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.map-panel{transition:none}.map-panel-body{animation:none}}
.mini-map-canvas{position:absolute;inset:0;border-radius:inherit;overflow:hidden}.mini-map-activate{position:absolute;left:12px;top:12px;z-index:2;max-width:calc(100% - 24px);background:var(--surface);font-size:var(--type-secondary)}.map-poster[data-mini-ready=true]>.light-poster,.map-poster[data-mini-ready=true]>.dark-poster,.map-poster[data-mini-ready=true]>.map-pin{visibility:hidden}.map-poster>.map-link,.map-poster>.map-attribution{z-index:2}.mini-map-canvas .maplibregl-canvas{position:absolute}.map-poster .map-attribution{pointer-events:none}
#tgb-audio-root{position:fixed;z-index:24;left:248px;right:0;bottom:0}.audio-bar{position:relative;height:64px;display:flex;align-items:center;gap:12px;background:var(--elevated);border-top:1px solid var(--border);padding:8px 20px}.audio-rule{position:absolute;inset:0 0 auto;height:3px;background:var(--soft)}.audio-rule:after{content:'';display:block;width:100%;height:100%;background:var(--primary);transform:scaleX(var(--progress,0));transform-origin:left;transition:transform 180ms linear}.audio-title{display:flex;align-items:center;gap:12px;min-width:0;flex:1;text-align:left;border:0;background:transparent;padding:0;border-radius:0}.audio-title>span:last-child{min-width:0}.audio-title strong{font:700 var(--type-headline) var(--font-title);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-title small{font-size:var(--type-caption);color:var(--secondary);display:block}.audio-level-bars{display:flex;align-items:center;gap:3px;height:24px;color:var(--primary)}.audio-level-bars i{width:3px;height:12px;background:currentColor;transform-origin:center}.audio-level-bars i:nth-child(2){height:22px}.audio-level-bars i:nth-child(3){height:16px}.audio-bar[data-speaking=true] .audio-level-bars i{animation:voice-bars 700ms ease-in-out infinite alternate}.audio-level-bars i:nth-child(2){animation-delay:-.3s!important}.audio-level-bars i:nth-child(3){animation-delay:-.5s!important}.audio-desktop{display:flex;gap:8px;align-items:center}.audio-scrubber{width:110px;accent-color:var(--primary)}.audio-toggle{min-width:48px;font-size:var(--type-title);padding:0 8px}.has-audio .site-footer{padding-bottom:100px}.has-audio.map-active #map-root{height:calc(100dvh - 64px)}.narration-sheet{width:680px;max-width:min(680px,calc(100vw - 32px))}.narration-levels{margin:16px 0}.narration-text{line-height:1.8;margin:16px 0;max-width:68ch}.narration-sentence{display:inline;padding:0;border:0;border-radius:0;background:transparent;min-height:0;font:inherit;text-align:start;color:var(--text);margin-right:.25em;box-decoration-break:clone}.narration-sentence[data-active=true]{background:linear-gradient(var(--primary),var(--primary)) left bottom/calc(max(.05,var(--spoken))*100%) 2px no-repeat;color:var(--primary)}.narration-sheet>.sheet-body>.actions{position:sticky;bottom:-20px;padding:12px 0;background:var(--elevated)}
@keyframes voice-bars{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@media(min-width:760px) and (max-width:1099px){#tgb-audio-root{left:88px}.audio-desktop{display:none}}
@media(max-width:759px){#tgb-audio-root{left:0;bottom:calc(68px + env(safe-area-inset-bottom))}.audio-bar{padding:8px 12px;gap:8px;height:64px}.audio-desktop{display:none}.audio-title strong{font-size:var(--type-body)}.has-audio .page-wrap{padding-bottom:90px}.has-audio.map-active #map-root{height:calc(100dvh - 64px - 68px - env(safe-area-inset-bottom) - 64px)}.narration-sheet{width:100%;max-width:100%}}
@media(prefers-reduced-motion:reduce){.audio-bar .audio-level-bars i{animation:none!important}.audio-rule:after{transition:none}.narration-sentence[data-active=true]{background-size:100% 2px}}
.state-pop[data-place-action=save][aria-pressed=true] svg[role=none] use{animation:bookmark-fill 500ms var(--spring)}
@keyframes bookmark-fill{from{clip-path:inset(100% 0 0)}to{clip-path:inset(0 0 0)}}
@media(prefers-reduced-motion:reduce){.state-pop[data-place-action=save] svg[role=none] use{animation:none}}
.map-card-intro>h2{margin:16px 0}
@media(max-width:1099px){.map-card-intro{display:grid;grid-template-columns:96px minmax(0,1fr);gap:6px 12px;align-items:center}.map-card-intro .map-card-photo{display:contents}.map-card-intro picture{grid-column:1;grid-row:1;width:96px;height:76px;aspect-ratio:auto}.map-card-intro>h2{grid-column:2;grid-row:1;font-size:var(--type-title);margin:0;overflow-wrap:break-word}.map-card-intro figcaption{grid-column:1/-1;grid-row:2;min-width:0}.map-panel[data-detent=large] .map-card-intro{display:block}.map-panel[data-detent=large] .map-card-intro .map-card-photo{display:block}.map-panel[data-detent=large] .map-card-intro picture{width:100%;height:auto;aspect-ratio:16/9}.map-panel[data-detent=large] .map-card-intro>h2{margin-top:16px}.map-panel-body[data-selected=true] .map-panel-heading{min-height:32px;margin-bottom:4px}.map-panel-body[data-selected=true]>.caption{font-size:var(--type-caption)}.map-panel-body[data-selected=true]>.chips .chip{min-height:30px;font-size:var(--type-caption);padding:4px 8px}.map-card-actions{margin:10px 0}.map-card-actions>*{flex:1}}
.map-canvas.maplibregl-map,.mini-map-canvas.maplibregl-map{position:absolute}
@media(max-width:1099px){.map-panel-body[data-selected=true] .map-panel-heading{position:absolute;right:12px;top:0;z-index:1;margin:0}.map-panel-body[data-selected=true] .map-panel-heading>p{display:none}.map-panel-body[data-selected=true] .map-panel-heading button{min-height:44px;height:44px;transform:rotate(0);border:0;background:transparent}.map-panel-body[data-selected=true] .map-card-intro{padding-top:4px}}
.mini-map-canvas{opacity:0}.map-poster[data-mini-ready=true]>.mini-map-canvas{opacity:1}.map-poster:not([data-mini-ready=true])>.mini-map-activate{visibility:hidden}
@media(max-width:1099px){.map-panel[data-detent=peek] .map-card-intro>h2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
.map-count{overflow:hidden}.map-count-digit{display:inline-block}
#map-root .map-preview{position:relative;height:500px;background:var(--bg)}.map-preview-frame{position:absolute;inset:20px;display:grid;place-items:center}.map-preview-country{position:relative;width:100%;aspect-ratio:1600/1046;max-height:100%}.map-preview-country>div,.map-preview-country picture,.map-preview-country img{width:100%;height:100%}.map-preview-country>div{position:absolute;inset:0}.map-preview-country img{object-fit:fill}.map-preview-country>.dark-poster{display:none}[data-theme=dark] .map-preview-country>.dark-poster{display:block}[data-theme=dark] .map-preview-country>.light-poster{display:none}.preview-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:2px solid #F4F0E8;color:#F4F0E8;background:#0D5A44;font:700 var(--type-caption) var(--font-ui);font-variant-numeric:tabular-nums}
.js main[data-page=map]>.page-wrap{max-width:none;padding:0}.js main[data-page=map] .page-heading,.js main[data-page=map] .breadcrumbs,.js main[data-page=map] .map-nojs-list{display:none}.js body:has(main[data-page=map]) .site-footer{display:none}.js main[data-page=map] #map-root{position:relative;height:100dvh;overflow:hidden;background:var(--bg)}.js #map-root .map-preview{position:absolute;inset:0 0 0 380px;height:auto;transition:opacity 300ms ease-out}.js #map-root .map-preview-frame{inset:130px 30px 40px}.js #map-root .map-preview-country{width:min(100%,calc((100dvh - 170px)*1.52964))}.map-canvas.maplibregl-map{opacity:0;transition:opacity 300ms ease-out}#map-root[data-tiles-ready=true] .map-canvas.maplibregl-map{opacity:1}#map-root[data-tiles-ready=true]>.map-preview{opacity:0;pointer-events:none}.map-card-primary{margin-top:16px}.map-card-primary>a{width:100%;height:52px}.map-card-actions{display:flex;flex-wrap:nowrap;gap:8px;margin:8px 0 0}.map-card-actions>*{flex:1;min-width:0;height:44px;min-height:44px;padding:6px;font-size:var(--type-secondary);line-height:1.05;gap:4px}.map-card-actions svg[role=none]{width:18px;height:18px}.map-card-actions span{overflow-wrap:break-word}.map-card-actions [aria-pressed=true] svg[role=none]{fill:currentColor}.map-card-actions [data-place-action=visited] svg[role=none]{fill:none}.map-panel [data-map-open]{display:flex;align-items:center;gap:4px;margin-top:8px}.map-panel [data-map-open] svg[role=none]{width:16px;height:16px}
@media(max-width:1099px){.js #map-root .map-preview{left:0}.js #map-root .map-preview-frame{inset:150px 20px 306px}.js #map-root .map-preview-country{width:min(100%,calc((100dvh - 456px)*1.52964))}.map-card-primary{margin-top:8px}.map-panel-body[data-selected=true]>.chips{margin:6px 0}.map-card-actions>*{font-size:var(--type-caption)}}
@media(max-width:759px){.js main[data-page=map] #map-root{height:calc(100dvh - 132px - env(safe-area-inset-bottom))}.js #map-root .map-preview-country{width:min(100%,calc((100dvh - 588px - env(safe-area-inset-bottom))*1.52964))}.map-panel-body[data-selected=true] .map-card-primary{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.map-canvas.maplibregl-map,.js #map-root .map-preview{transition:none}}
.map-preview-attribution{position:absolute;bottom:4px;right:4px;padding:4px 8px;border-radius:8px;background:var(--surface);font-size:var(--type-min);color:var(--secondary)}
.js .map-active.map-failed .map-nojs-list{display:block}
.map-card-skeleton{height:120px;border-radius:18px;background:var(--soft);margin-top:16px}
.js .has-audio.map-active #map-root{height:calc(100dvh - 64px)}
@media(max-width:759px){#tgb-audio-root{bottom:calc(65px + env(safe-area-inset-bottom))}.js main[data-page=map] #map-root{height:calc(100dvh - 130px - env(safe-area-inset-bottom))}.js .has-audio.map-active #map-root{height:calc(100dvh - 194px - env(safe-area-inset-bottom))}}
.map-controls [data-map-control=north]{font-size:var(--type-body);white-space:nowrap;line-height:1}
.library-place{position:relative;margin-block:12px;padding-right:44px}.library-place .row-photo{position:relative}.library-place>.credit-toggle{left:56px;right:auto;top:60px;bottom:auto}.library-place>[data-unshelf]{position:absolute;right:0;top:16px}.category-caption{display:inline-flex;align-items:center;gap:4px;color:var(--secondary);font-size:var(--type-caption)}.category-caption svg[role=none]{width:16px;height:16px}.library-place .card-summary{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.skeleton-row{height:120px;padding:20px}.search-result{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.actions:has([data-library-sort])>[data-export]{margin-left:auto}[data-library-sort] button:disabled{opacity:.5;cursor:help}
.js [data-trail-controls]{min-height:44px}
.walks-loading{display:none}.js .walks-nojs{display:none}.js .walks-loading{display:grid}
.help-loading{display:none}.js .help-loading{display:grid;gap:16px}.js [data-help-mount]{min-height:100dvh}
.js [data-client-place]{min-height:100dvh}@media(max-width:759px){main[data-page=place] .page-wrap{padding-top:0}main[data-page=place] .breadcrumbs{display:none}}
[data-map-origin]{min-height:61px}[data-offline-mount] [data-storage-estimate]{min-height:1.5em}[data-offline-status]:empty{display:none}.js [data-offline-groups]{min-height:100dvh}
#map-root .map-preview picture[data-preview] img{opacity:1;transition:none}
.photo-credit-popover a{display:inline-flex;align-items:center;vertical-align:middle;min-width:44px;min-height:44px}
.place-card{--card-photo-ratio:1.5}.place-card .card-photo{display:grid;aspect-ratio:auto}.place-card .card-photo::before{content:'';grid-area:1/1;padding-top:calc(100% / var(--card-photo-ratio));pointer-events:none}.place-card .card-photo>picture{position:absolute;inset:0}.place-card .card-photo .photo-caption{position:relative;inset:auto;align-self:end;grid-area:1/1;padding-right:12px}.place-card .card-photo:has(.credit-toggle) .photo-caption{padding-right:48px}.place-card .card-photo h3{overflow-wrap:break-word;hyphens:auto}.place-card .card-photo:has(.image-kind) .photo-caption{padding-top:48px}.image-kind{max-width:calc(100% - 16px);overflow-wrap:break-word;line-height:1.25}.walks-grid .card-photo{min-height:150px}@supports(grid-template-rows:subgrid){.card-grid>.place-card{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0}}@media(min-width:1100px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}.walks-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.chips[data-overflow-y=true],.segmented[data-overflow-y=true],.map-filters[data-overflow-y=true]{mask-image:linear-gradient(#000 calc(100% - 24px),transparent)}
.place-card .card-photo .photo-caption{background:linear-gradient(transparent,rgba(20,16,13,.72) 20px,rgba(20,16,13,.84))}
.trip-entry-loading{display:none}.js .trips-pending .trip-entry-loading{display:grid;gap:24px;min-height:100dvh;align-content:start;padding-top:32px}.trips-pending [data-planner-toolbar],.trips-pending [data-trips-mount],.trips-pending .trip-entries{display:none}
.trips-detail-active [data-trips-mount]{margin-top:0}[data-trips-back]{display:inline-flex;align-items:center;gap:4px;min-height:44px}.trips-detail-active .trip-entry-loading{padding-top:0}
.js picture[data-preview]:has(img[fetchpriority=high]) img{opacity:1;transition:none}
.row-text h3,.trip-stop-link h3,.player-copy h2{overflow-wrap:break-word;hyphens:auto}
.audio-scrubber{appearance:none;-webkit-appearance:none;min-height:48px;height:48px;padding:0;border:0;border-radius:0;background:transparent;cursor:pointer}
.audio-scrubber::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:var(--border)}
.audio-scrubber::-webkit-slider-thumb{box-sizing:border-box;appearance:none;-webkit-appearance:none;width:24px;height:24px;border:2px solid var(--surface);border-radius:50%;background:var(--primary);margin-top:-10px}
.audio-scrubber::-moz-range-track{height:4px;border-radius:2px;background:var(--border)}
.audio-scrubber::-moz-range-thumb{box-sizing:border-box;width:24px;height:24px;border:2px solid var(--surface);border-radius:50%;background:var(--primary)}
.narration-sentence{display:inline-block;min-height:52px;min-width:44px;max-width:100%;padding:8px 0;vertical-align:baseline}
.rolling-digit{display:inline-block;font-variant-numeric:tabular-nums}.dial-count{overflow:hidden}.place-hero{overflow:hidden}.place-hero>picture{transform-origin:center}.js picture[data-preview]{display:block;contain:paint;isolation:isolate;background-color:var(--placeholder,var(--surface));background-image:var(--preview);background-size:cover;background-position:center;overflow:hidden}.js picture[data-preview] img{opacity:.01;transition:opacity 360ms ease-out}.js picture[data-preview] img.photo-decoded{opacity:1}.js picture[data-preview][data-preview-ready=true]{background-image:none}@media(prefers-reduced-motion:reduce){.js picture[data-preview] img{opacity:1;transition:none}}
.origin-line-button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;padding:8px 0;color:var(--secondary);min-height:44px}.origin-line-button svg[role=none]{color:var(--primary)}.origin-sheet{width:420px}.origin-picker{gap:12px}.origin-results{max-height:300px;overflow:auto}.origin-results>button{width:100%;display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:10px;background:none}.origin-results small{color:var(--secondary)}.origin-pick-map{height:350px;position:relative}.origin-pick-map>[data-origin-map]{position:absolute;inset:0}.centre-pin{pointer-events:none;position:absolute;left:50%;top:50%;color:var(--primary);transform:translate(-50%,-100%);transition:transform .28s var(--spring)}.centre-pin svg[role=none]{width:40px;height:40px;fill:var(--surface)}.pin-lift .centre-pin{transform:translate(-50%,-130%)}#tgb-location-live{position:fixed;top:8px;right:8px;z-index:200;background:var(--primary);color:var(--on-primary);border:0}.locating:before{content:"";display:inline-block;width:12px;height:12px;border:2px solid var(--primary);border-radius:50%;margin-right:8px;animation:locate-breathe 1s ease-in-out infinite alternate}@keyframes locate-breathe{to{opacity:.4;transform:scale(.86)}}@media(max-width:759px){.origin-sheet{width:100%}}@media(prefers-reduced-motion:reduce){.locating:before{animation:none}}
.weather-strip{min-height:84px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 0;border-block:1px solid var(--border);margin:12px 0;font-size:var(--type-secondary)}.weather-strip>div{display:flex;gap:8px;align-items:center}.weather-strip small{width:100%;color:var(--secondary)}[data-time-dial]{display:grid;grid-template-columns:repeat(4,1fr);gap:0}[data-time-dial] button{padding:6px 2px;border:0;background:none;border-radius:8px;font-size:var(--type-secondary);font-weight:500;line-height:1.1}[data-time-dial] button[aria-pressed=true]{color:var(--primary);font-weight:700;background:var(--soft)}.dial-track{touch-action:pan-y;cursor:grab}.dial-thumb{width:28px;height:28px;background:#F4F0E8;border:3px solid var(--primary);box-shadow:0 3px 12px #0002}.dial-dot{width:10px;height:10px}.rosette-wrap{text-align:center;flex:none}.live-rosette{width:220px;height:220px;max-width:none;color:var(--primary)}.rosette-petal{transform-origin:110px 110px}.rosette-wrap p{margin:0}.rosette-wrap button{font-size:var(--type-caption);max-width:220px}.budget-summary{align-items:center}.dial-count{font-size:var(--type-count);font-weight:700}.home-map .map-attribution{z-index:2}.nearby-active>.page-wrap>:not([data-nearby]){display:none!important}[data-nearby-results]{max-width:850px}[data-nearby-controls] .choice-group{max-width:100%;overflow:auto;flex-wrap:nowrap}[data-nearby-controls] button{flex-shrink:0}.rosette-wrap [data-bearing-distance]{max-width:220px}@media(max-width:759px){.live-rosette{width:160px;height:160px}.dial-count{font-size:var(--type-hero)}.budget-summary{display:flex;flex-direction:column-reverse}.rosette-wrap [data-bearing-distance]{max-width:160px}.home-top .dial-budget{padding:16px}.weather-strip{min-height:104px}.origin-line{flex-wrap:wrap;gap:8px}.origin-line>[data-origin-slot]{flex:1 1 100%}}
.planner-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.planner-toolbar h2{flex-basis:100%;margin:0}.planner-toolbar [data-plan-time]{flex-basis:100%}.trip-detail-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,2fr);gap:32px}.trip-detail-grid aside{position:sticky;top:24px;height:520px}.route-map{height:420px;position:relative;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--soft)}.route-pin,.stop-number{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--primary);color:var(--on-primary);font:700 var(--type-secondary) var(--font-ui)}.trip-timeline{list-style:none;margin:24px 0;padding:0}.trip-timeline>li{display:grid;grid-template-columns:48px 28px minmax(0,1fr);gap:8px;position:relative;padding-bottom:24px}.trip-timeline>li:before{content:"";position:absolute;top:28px;left:69px;bottom:0;width:2px;background:var(--primary)}.trip-timeline>li:last-child:before{display:none}.trip-timeline time{font-variant-numeric:tabular-nums;font-weight:700;padding-top:4px}.trip-timeline .library-place{margin:0;padding:0}.trip-timeline .row-link{padding-top:0}.trip-timeline .row-photo{width:64px;height:64px}.trip-timeline .row-link{grid-template-columns:64px minmax(0,1fr)}.trip-timeline .credit-toggle{left:24px;top:26px}.trip-timeline .card-summary{display:none}.trip-timeline .actions{gap:4px}.trip-timeline .actions button{padding:6px 10px}.trip-timeline>li.dragging{opacity:.6;transform:scale(1.02);background:var(--surface)}.trip-tile{position:relative}.trip-tile>.place-card{pointer-events:none}.trip-tile>.place-card .credit-toggle{pointer-events:auto}.trip-tile>a{position:relative;display:block;min-height:44px}.print-map{display:none}.trip-title{font-size:var(--display)}@media(max-width:1099px){.trip-detail-grid{grid-template-columns:1fr}.trip-detail-grid aside{position:static;height:auto}.route-map{height:320px}.trip-timeline .row-link{display:block}.trip-timeline .row-photo{display:none}.trip-timeline .credit-toggle{display:none}.trip-timeline .library-place{padding:0}}@media print{.site-shell,.mobile-header,.site-footer,#tgb-audio-root,.no-print,.breadcrumbs,.origin-line-button,#navigation-status,.trip-detail-grid .route-map,[data-trip-days],.planner-toolbar{display:none!important}.shell-content{margin:0!important}.page-wrap{padding:0!important}.trip-detail-grid{display:block}.trip-detail-grid aside{height:auto;position:static}.print-map{display:block;max-width:100%;max-height:200px;object-fit:contain}.trip-timeline>li{break-inside:avoid;padding-bottom:6px}.trip-timeline .row-photo,.trip-timeline .credit-toggle,.trip-timeline .category-caption{display:none}.trip-timeline .row-link{display:block}.trip-timeline h3{font-size:var(--type-body);margin:0}.trip-timeline time,.trip-timeline p{font-size:var(--type-min)}.trip-title{font-size:var(--type-title)}.trip-summary{font-size:var(--type-caption)}body{background:white;color:black}.trip-detail-grid aside{break-inside:avoid}@page{size:A4;margin:12mm}}
.walk-player{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0;background:#0E1210;color:#F2EDE4;padding:0;--surface:#181D1A;--elevated:#222925;--border:#2C332E;--text:#F2EDE4;--secondary:#A79C90;--primary:#3FA87C}.walk-player header{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:linear-gradient(#14100dd6,transparent)}.walk-player header button{color:#F2EDE4;background:#181D1A}.walk-player progress{width:120px;accent-color:#3FA87C}.player-photo{height:45dvh;position:relative;margin:0;overflow:hidden}.player-photo picture,.player-photo img{width:100%;height:100%;object-fit:cover;display:block}.player-photo:after{content:"";position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#0E1210);pointer-events:none}.player-photo figcaption{position:absolute;right:20px;bottom:24px;z-index:2}.player-copy{max-width:680px;margin:auto;padding:0 20px 24px}.player-copy h2{font:700 var(--type-large) var(--font-title);margin:12px 0}.player-copy .player-distance{font:700 var(--type-hero) var(--font-ui);margin:4px 0}.player-copy p{color:#A79C90}.player-copy .player-distance{color:#F2EDE4}.player-controls{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:20px auto 0;max-width:380px}.player-controls>button{width:64px;height:64px;border-radius:50%;font-size:var(--type-title);color:#F2EDE4;background:#222925}.player-controls>button:nth-child(2){background:#0E6A4F}.player-controls svg[role=none]{width:28px;height:28px}.walk-detail-grid{display:grid;grid-template-columns:3fr 2fr;gap:24px;margin-top:24px}.walk-detail-grid ol{padding-left:24px}.walk-detail-grid .route-map{position:sticky;top:24px}.walks-grid .card-body{min-height:120px}@media(max-width:1099px){.walk-detail-grid{display:block}}@media(min-width:1100px){.walk-player .player-photo{width:48%;height:100dvh;position:absolute;left:0;top:0}.walk-player .player-copy{margin-left:52%;margin-top:80px;padding:40px;max-width:620px}.walk-player header{left:50%}.walk-player .player-copy h2{font-size:var(--type-hero)}.walk-player .player-controls{margin-top:48px}}
#tgb-offline-badge{position:fixed;top:0;left:248px;right:0;z-index:300;margin:0;padding:8px 20px;background:var(--surface);border-bottom:1px solid var(--border);font-size:var(--type-secondary);text-align:center}.offline-group{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:8px;padding:12px 0;border-bottom:1px solid var(--border);align-items:center}.offline-group output{grid-column:1/-1;font-size:var(--type-caption);color:var(--secondary)}[data-offline-mount] progress{width:100%;height:16px;accent-color:var(--primary)}@media(max-width:1099px){#tgb-offline-badge{left:88px}}@media(max-width:759px){#tgb-offline-badge{left:0}}.language-row{width:100%;margin-bottom:12px}
.help-row{margin:12px 0;padding:16px}.help-row h3{margin-top:0}.waymark{display:flex;align-items:center;gap:12px}.waymark svg{width:34px;height:34px;flex:none}.waymark small{font-size:var(--type-secondary);color:var(--secondary)}#phrase-dialog{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0;background:#fff;color:#101510;display:none;padding:32px}#phrase-dialog[open]{display:flex;flex-direction:column;justify-content:center;align-items:center}#phrase-dialog form{position:absolute;top:16px;right:16px}#phrase-dialog .show-phrase{font:700 var(--type-player)/1.2 var(--font-title);text-align:center;max-width:90vw;overflow-wrap:break-word;color:#101510}#phrase-dialog .context-promo{max-width:550px;margin-top:40px}#phrase-dialog .actions{justify-content:center}#phrase-dialog .caption{color:#474f48}main[data-page=map]>.page-wrap>.origin-line-button{position:absolute;z-index:8;left:400px;top:76px;width:calc(100% - 520px);max-width:420px;background:var(--surface);padding:4px 12px;border-radius:12px;border:1px solid var(--border)}@media(max-width:1099px){main[data-page=map]>.page-wrap>.origin-line-button{left:20px;top:84px;max-width:calc(100% - 90px);width:auto}}@media(orientation:landscape){#phrase-dialog .show-phrase{font-size:var(--type-dial);margin:0 0 16px}}
.reach-label{position:absolute;top:12px;left:12px;right:12px;margin:0;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;z-index:2;font-variant-numeric:tabular-nums;font-size:var(--type-secondary)}
.trip-timeline .row-photo picture,.trip-timeline .row-photo img{width:100%;height:100%;object-fit:cover}.trip-timeline .row-link{display:grid}.library-place .row-link{flex:1;min-width:0}.library-place .row-text{min-width:0}.trips-detail-active>.page-wrap>.page-heading,.trips-detail-active>.page-wrap>.list-grid{display:none}.route-preview{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.home-map-crop [data-reach-label]{z-index:2}[data-home-mount]>.origin-line{display:flex;align-items:center;gap:12px}[data-home-mount]>.origin-line>[data-origin-slot]{flex:1}
.js picture[data-preview]:not([data-preview-ready=true]):before{content:"";position:absolute;inset:0;background-image:var(--preview);background-size:cover;background-position:center;filter:blur(24px);pointer-events:none}.js picture[data-preview] img{isolation:isolate}@media(prefers-reduced-motion:reduce){.js picture[data-preview]:before{display:none}}
main:focus-visible{outline:none}.print-map-credit{display:none}@media print{.print-map-credit{display:block;font-size:var(--type-min)}}
@media print{.skip{display:none!important}.trip-timeline .row-link{display:block!important;padding:4px 8px!important}.trip-timeline .row-card{display:block;border:0;padding:0;margin:0}.trip-timeline .row-text h3{font-size:var(--type-body);margin:0;line-height:1.1}.trip-timeline .row-text .data{margin:3px 0;font-size:var(--type-min)}.trip-timeline>li{padding-bottom:8px}.trip-timeline{margin:12px 0}.trip-detail-grid aside{height:auto!important;min-height:0!important}.print-map{height:180px;width:auto;max-width:100%;margin:auto}.trip-summary{margin:8px 0}.trip-title{margin:8px 0}}
.bearing-arrow{display:inline-block;transform-origin:center;font-size:var(--type-headline);line-height:1;vertical-align:middle}
[data-shell-origin-slot]{display:none}main:is([data-page=trips],[data-page="trips/road"],[data-page=walks],[data-page=help],[data-page=places],[data-page=place],[data-page=saved]) [data-shell-origin-slot]{display:block;min-height:44px}main[data-page=map] [data-shell-origin-slot]{display:contents}main[data-page=map] [data-shell-origin-slot]>.origin-line-button{position:absolute;z-index:8;left:400px;top:76px;width:calc(100% - 520px);max-width:420px;background:var(--surface);padding:4px 12px;border-radius:12px;border:1px solid var(--border)}.trip-tile>a{position:static}.trip-tile>a:after{content:"";position:absolute;inset:0;z-index:2}.trip-tile .credit-toggle{z-index:3}@media(max-width:1099px){main[data-page=map] [data-shell-origin-slot]>.origin-line-button{left:20px;top:84px;max-width:calc(100% - 90px);width:auto}}@media print{[data-shell-origin-slot]{display:none!important}}
.language-toggle{display:flex;align-items:center;gap:8px;min-height:44px;border:0;background:none;padding:4px 0;font-size:var(--type-secondary)}.mobile-header .language-toggle{font-size:var(--type-secondary)}
.js[data-has-origin=true] main[data-page=home]:not([data-home-ready]) .budget-list>*,.js[data-has-origin=true] main[data-page=home]:not([data-home-ready]) [data-home-shelf] .card-grid>*,.js[data-has-origin=true] main[data-page=home]:not([data-home-ready]) .dial-count{visibility:hidden}.js[data-has-origin=true] main[data-page=home]:not([data-home-ready]) .budget-list,.js[data-has-origin=true] main[data-page=home]:not([data-home-ready]) [data-home-shelf] .card-grid{background:var(--soft);border-radius:18px}
.locating:before{display:none}.locating{display:flex;align-items:center;gap:8px}.locating-rosette{width:24px;height:24px;flex:none;fill:none;stroke:var(--primary);stroke-width:.65}.locating-rosette ellipse{transform-origin:12px 12px;animation:origin-petal-breathe 900ms calc(var(--i)*28ms) ease-in-out infinite alternate}@keyframes origin-petal-breathe{to{opacity:.4;scale:.86}}@media(prefers-reduced-motion:reduce){.locating-rosette ellipse{animation:none}}
.help-row .actions{margin-top:12px}
.route-label-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.route-label-lines,.route-leaders{stroke:var(--primary);stroke-width:2;fill:var(--primary)}.route-map .route-pin{z-index:2;font-variant-numeric:lining-nums tabular-nums}
.suggestion,.android-promo,main[data-page=places] .suggestion{position:relative;inset:auto;width:auto;height:auto;min-height:44px;margin:0 0 20px;border:1px solid var(--border);border-radius:12px}body:has(#tgb-resume-offer) [data-dismissible]{display:none!important}
#tgb-resume-offer{margin-bottom:20px;gap:8px;align-items:center}#tgb-resume-offer>[data-resume]{text-align:left;flex:1}
.weather-strip .weather-unavailable{font-size:var(--type-caption);color:var(--tertiary,var(--secondary))}.weather-strip:has(.weather-unavailable){min-height:44px;border:0}
.origin-sheet{width:520px;max-width:calc(100vw - 40px);max-height:86dvh;margin:auto;overflow:hidden;display:flex;flex-direction:column}.origin-sheet:not([open]){display:none}.origin-sheet>header{flex:none}.origin-sheet>.sheet-body{min-height:0;overflow:auto;overscroll-behavior:contain}.origin-results{max-height:none;overflow:visible}.origin-results>button{min-height:52px;padding:6px 0}.origin-results strong{font:700 var(--type-lead)/1.15 var(--font-title)}.origin-results small{font-size:var(--type-caption)}.origin-point-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.origin-point-actions button{height:auto;min-height:44px;line-height:1.1;font-size:var(--type-secondary)}.origin-point-actions svg[role=none]{width:18px;height:18px}.origin-recents{display:grid;gap:0}.origin-recents:empty,[data-location-status]:empty{display:none}.origin-recents .library-row{min-height:52px;margin:0;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:6px 0;text-align:left;justify-content:flex-start}.origin-recents strong{font:700 var(--type-lead)/1.15 var(--font-title);display:block}.origin-recents small{font-size:var(--type-caption)}
@media(max-width:759px){.origin-sheet{width:100%;max-width:none;margin:auto 0 0;max-height:86dvh}.origin-sheet>.drag-handle{cursor:ns-resize;touch-action:none;flex:none}.origin-sheet[data-detent=large]{height:86dvh}.origin-sheet[data-detent=peek]{height:65dvh}}
.mini-map-activate{top:auto;bottom:58px;left:50%;transform:translateX(-50%);white-space:normal;width:max-content;max-width:calc(100% - 32px);opacity:0;pointer-events:none;transition:opacity 180ms ease-out}.mini-map-activate:active{transform:translateX(-50%) scale(.98)}.map-poster:hover>.mini-map-activate,.map-poster:focus-within>.mini-map-activate,.mini-map-activate:focus-visible{opacity:1;pointer-events:auto}.mini-map-activate:focus-visible{outline-offset:4px}.home-map .map-link{bottom:12px}.region-map{margin:24px 0}.region-map .map-poster{height:420px}.region-map .map-poster>div:not(.mini-map-canvas){height:100%}.region-map .map-poster picture,.region-map .map-poster img{height:100%;object-fit:cover}
[data-map-origin]{flex:none;padding:8px 20px;border-bottom:1px solid var(--border)}[data-map-origin] [data-shell-origin-slot]{display:block!important}[data-map-origin] .origin-line-button{position:static!important;inset:auto!important;width:100%!important;max-width:none!important;padding:4px 0!important;border:0!important;background:transparent!important;font-size:var(--type-secondary)}.map-card-photo{position:relative}.map-card-photo
.credit-toggle{position:absolute;right:4px;bottom:4px;top:auto}.map-panel-body>.map-card-actions{margin-bottom:0}.map-card-actions span{overflow-wrap:normal}
@media(min-width:760px){.map-panel{inset:0 auto 0 0;transform:none!important;border-radius:0;border-top:0;border-bottom:0;box-shadow:none;transition:none}.map-sheet-handle{display:none}.map-dimmer{display:none!important}.map-card-intro{display:block}.map-card-intro .map-card-photo{display:block}.map-card-intro picture,.map-panel[data-detent=large] .map-card-intro picture{width:100%;height:auto;aspect-ratio:16/10}.map-card-intro>h2,.map-panel[data-detent=peek] .map-card-intro>h2{display:block;overflow:visible;margin:16px 0}.map-panel-body[data-selected=true] .map-panel-heading{position:static;min-height:44px;margin-bottom:12px}.map-panel-body[data-selected=true] .map-panel-heading>p{display:block}.map-card-summary{display:block}.map-panel-body{padding:20px}.js #map-root .map-preview-frame{inset:130px 30px 40px}.map-filters{flex-wrap:wrap;max-height:112px;overflow:auto}.map-active .maplibregl-ctrl-bottom-left{bottom:4px;left:4px}.map-panel-body[data-selected=true]>.chips .chip{min-height:36px;font-size:var(--type-secondary)}.map-panel-body[data-selected=true]>.caption{font-size:var(--type-secondary)}}
@media(min-width:760px) and (max-width:1099px){.map-panel{width:320px}.map-canvas,.js #map-root .map-preview{left:320px}.map-filters{left:332px;right:12px}.map-controls{top:150px}.js #map-root .map-preview-country{width:100%}.map-card-actions span{font-size:var(--type-caption)}}
@media(max-width:759px){.mini-map-activate{opacity:1;pointer-events:auto;bottom:56px;left:12px;transform:none;font-size:var(--type-caption)}.mini-map-activate:active{transform:scale(.98)}.region-map .map-poster{height:260px}.map-panel{transform:translateY(calc(100% - var(--sheet-peek,286px)))}.map-panel[data-detent=large]{transform:translateY(0)}.map-panel-body{padding:0 16px 12px}.map-card-primary>a{height:44px;min-height:44px}.map-card-actions{gap:4px}.map-card-actions>*{font-size:var(--type-caption);gap:3px}.map-card-actions svg[role=none]{width:16px;height:16px}.map-count{position:absolute;right:auto;left:12px;top:78px;text-align:left;max-width:170px}.map-controls{position:static}.map-controls>button{position:absolute;right:12px;z-index:2}.map-controls [data-map-control=location]{top:78px}.map-controls [data-map-control=in]{top:130px}.map-controls [data-map-control=out]{top:182px}.map-controls [data-map-control=north]{top:234px}.map-controls [data-map-control=layers]{top:286px}.map-active .maplibregl-ctrl-bottom-left{bottom:calc(var(--sheet-peek,286px) + 4px);left:0}.map-active .maplibregl-ctrl-attrib{max-width:240px}.map-active .maplibregl-ctrl-attrib-button{width:24px;height:24px;min-height:24px;padding:0}.map-panel[data-detent=peek] .map-panel-body{overflow:auto}.map-panel-body[data-selected=true] .map-panel-heading{display:none}.map-card-intro{padding:8px 0 0!important;grid-template-columns:76px minmax(0,1fr);gap:8px}.map-card-intro picture{width:76px;height:64px}.map-card-intro>h2{font-size:var(--type-title)}.map-panel [data-map-open]{margin-top:6px;line-height:1.15}.map-panel-body[data-selected=true]>.chips{margin:6px 0}.map-panel-body[data-selected=true]>.chips .chip{min-height:26px;padding:2px 6px;font-size:var(--type-min)}.map-panel-body[data-selected=true]>.chips svg[role=none]{width:15px;height:15px}}
@media(prefers-reduced-motion:reduce){.mini-map-activate{transition:none}}
.trip-timeline>li{grid-template-columns:52px 28px minmax(0,1fr);gap:6px}.trip-timeline>li:before{left:71px}.trip-timeline>li>div{min-width:0}.trip-stop-card{position:relative;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:60px 12px 12px;min-width:0}.trip-stop-actions{position:absolute;top:6px;right:6px;display:flex;gap:0}.trip-stop-actions button{height:44px;min-height:44px;width:44px;padding:8px;border:0;background:none}.trip-stop-link{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center}.trip-stop-link h3{font-size:var(--type-title);text-wrap:wrap;overflow-wrap:normal}.trip-stop-photo{width:64px;height:64px;overflow:hidden;border-radius:12px}.trip-stop-photo picture,.trip-stop-photo img{width:64px;height:64px;object-fit:cover}.trip-stop-card>.category-caption{display:flex;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--type-caption);margin:10px 0 6px}.trip-stop-card>.data{font-size:var(--type-caption);line-height:1.4}.trip-stop-card>.credit-toggle{left:14px;right:auto;top:84px;bottom:auto}#tgb-toast{display:flex;align-items:center;gap:12px}#tgb-toast button{background:var(--surface);color:var(--primary);white-space:nowrap}.trip-entries{margin-top:32px}.planner-toolbar{margin-top:20px}.trips-detail-active .trip-entries{display:none}
@media(max-width:759px){.trip-detail-grid{margin-inline:-8px}.trip-timeline>li{gap:4px}.trip-stop-link{gap:8px}.trip-stop-link h3{font-size:var(--type-lead)}.trip-timeline time{font-size:var(--type-caption)}.trip-stop-card{padding-inline:10px}.trip-stop-card>.category-caption{font-size:var(--type-caption)}.trip-stop-card>.data{font-size:var(--type-caption)}}
@media(min-width:1100px){.phrase-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.phrase-cards .phrase-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:20px;margin:0}.phrase-row>div:first-child{grid-column:1/-1}.phrase-row .phrase-bg{font-family:var(--font-title);font-size:var(--type-title)}.phrase-row>.actions{align-self:center;flex-wrap:nowrap}}
@media print{.trip-stop-actions{display:none!important}.trip-stop-card{border:0;padding:0}.trip-stop-link{display:block}.trip-stop-link h3{font-size:var(--type-body)}.trip-stop-photo,.trip-stop-card>.credit-toggle{display:none}.trip-stop-card>.category-caption{display:none}.trip-stop-card>.data{font-size:var(--type-min)}}
.map-poster .map-pin{border-radius:50%;width:28px;height:28px;background:var(--hue,var(--primary));border:2px solid #F4F0E8;display:grid;place-items:center;transform:translate(-50%,-50%)}.map-poster .map-pin svg[role=none]{width:20px;height:20px;color:#fff}
.origin-picker{display:flex;flex-direction:column;gap:12px}.origin-picker>*{margin:0!important;flex-shrink:0}.origin-picker>label,[data-coordinate-fields]>label{display:grid;gap:6px}.origin-picker input{width:100%}
.origin-sheet>.drag-handle{display:none}@media(max-width:759px){.origin-sheet>.drag-handle{display:grid;place-items:center;width:100%;height:44px;min-height:44px;background:none;margin:0}.origin-sheet>.drag-handle:before{content:'';width:36px;height:5px;border-radius:3px;background:var(--border)}}
@media(max-width:759px){.map-card-intro{position:relative}.map-card-intro .map-card-photo>.credit-toggle{left:36px;right:auto;top:28px;bottom:auto;z-index:2}}
.credit-toggle{color:rgba(242,237,228,.6)}.credit-toggle:before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;background:rgba(20,16,13,.3);pointer-events:none}.credit-toggle>svg[role=none]{position:relative;z-index:1}.photo-credit-popover{font-size:var(--type-caption);line-height:1.5}
@media(max-width:759px){.map-controls [data-map-control=layers]{display:none}}
.origin-point-actions button{height:44px;min-height:44px;padding:4px 8px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:var(--type-caption);line-height:1.05}.origin-results>button{height:52px;min-height:52px;justify-content:center}.origin-results strong{line-height:1.1}.origin-results small,.origin-recents small{line-height:1.1}
.level-tabs a[aria-selected=true]{color:var(--primary)!important}
.credit-toggle{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:8px!important}
.credit-toggle svg[role=none]{width:28px!important;height:28px!important}
.icon-button{min-width:44px;min-height:44px}.audio-bar button,.player-controls button{min-width:48px;min-height:48px}
.audio-toggle svg[role=none],.player-controls svg[role=none]{width:24px;height:24px}
.icon-back svg[role=none]{transform:rotate(180deg)}.icon-up svg[role=none]{transform:rotate(-90deg)}.icon-down svg[role=none]{transform:rotate(90deg)}
.text-link svg[role=none],a>svg[role=none]:last-child{vertical-align:middle}
.maplibregl-ctrl-attrib,.maplibregl-ctrl-scale{font-size:var(--type-min)!important}
.maplibregl-ctrl-attrib a{min-height:24px;display:inline-flex;align-items:center}
.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{background:var(--surface);bottom:var(--map-info-bottom,0px)!important}
.maplibregl-ctrl-bottom-left{left:0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl,.maplibregl-ctrl-bottom-right .maplibregl-ctrl{margin:0;padding:4px 8px}
.map-filters[data-overflow=true]{mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent)}
.chips[data-overflow=true],.segmented[data-overflow=true]{mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent);padding-right:32px}
.map-panel-heading .icon-button{height:44px;min-height:44px}
@media(max-width:1099px){.maplibregl-ctrl-bottom-left{left:0}}
@media(max-width:759px){.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{bottom:var(--map-info-bottom,0px)!important}
}
.image-kind{position:absolute;left:8px;top:8px;padding:4px 8px;border-radius:8px;background:var(--surface);color:var(--secondary);font-size:var(--type-caption);z-index:3}.row-photo{position:relative}
small{font-size:var(--type-caption)}.chip svg[role=none],.fact-grid svg[role=none],.category-caption svg[role=none],.map-card-actions svg[role=none]{width:20px;height:20px}
.credit-toggle{color:#F2EDE4!important}.credit-toggle svg[role=none]{background:rgba(20,16,13,.62);border-radius:50%;padding:4px}
.maplibregl-ctrl-attrib-button{width:44px!important;height:44px!important;min-width:44px;min-height:44px}.maplibregl-ctrl-attrib.maplibregl-compact{min-height:44px;padding-right:44px}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{z-index:3}.maplibregl-ctrl-scale{max-width:100px;min-height:24px}.map-sheet-handle{min-height:44px}
.map-active .maplibregl-ctrl-bottom-left{left:0;max-width:calc(100% - 112px)}.map-active .maplibregl-ctrl-attrib{max-width:100%;white-space:normal;box-sizing:border-box}
.image-kind{pointer-events:none}
summary{min-height:44px;align-content:center;cursor:pointer}
.audio-bar{height:68px}.js .has-audio.map-active #map-root{height:calc(100dvh - 68px)}
@media(max-width:759px){.audio-bar{height:72px}.js .has-audio.map-active #map-root{height:calc(100dvh - 202px - env(safe-area-inset-bottom))}}
svg[role=none]:where(:not(.category-cover>svg)){width:20px!important;height:20px!important}.nav-link svg[role=none],.icon-button svg[role=none],.map-controls svg[role=none],.audio-toggle svg[role=none],.player-controls svg[role=none]{width:24px!important;height:24px!important}.credit-toggle svg[role=none]{width:28px!important;height:28px!important}
summary{display:flex;align-items:center;gap:8px;list-style:none}summary::-webkit-details-marker{display:none}summary::marker{content:''}summary>svg[role=none]{transition:transform var(--quick)}details:not(.maplibregl-ctrl-attrib)[open]>summary>svg[role=none]{transform:rotate(90deg)}
.mobile-header>a:first-child{display:grid;place-items:center;min-width:44px;min-height:44px}.mobile-header .header-title{display:flex;align-items:center;min-height:44px}.site-shell>.brand-lockup{min-height:44px}.breadcrumbs a{min-height:44px}.section-head>a{display:inline-flex;align-items:center;gap:6px;min-height:44px}.footer-links a{display:inline-flex;align-items:center;min-height:44px}
button{min-width:44px}
button{line-height:1.25}
main:is([data-page=places],[data-page=place])>.page-wrap>[data-shell-origin-slot]{display:none}
.maplibregl-ctrl-attrib-button{background:none!important;padding:0;place-items:center}.maplibregl-compact .maplibregl-ctrl-attrib-button{display:grid}.maplibregl-ctrl-attrib.maplibregl-compact{padding:0!important;min-width:44px}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:0 44px 0 8px!important}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:0 8px 0 44px!important}.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:flex;align-items:center;min-height:44px}
.js .place-detail[data-level=quick] .place-reading :is(#story,#deep),.js .place-detail[data-level=story] .place-reading :is(#quick,#deep),.js .place-detail[data-level=deep] .place-reading :is(#quick,#story){display:none}
[data-phrase-voice-note]{margin:0;min-height:calc(var(--type-caption)*2.7)}[data-phrase-voice-note]+.phrase-group{margin-top:max(4px,calc(40px - var(--type-caption)*2.7))}.phrase-row>.actions{min-width:148px;justify-content:flex-end}.js .phrase-row>.actions:not([data-ready]){visibility:hidden}
.tgb-sheet{max-height:calc(100dvh - 32px);overflow:hidden}
.tgb-sheet[open]{display:flex;flex-direction:column}
.tgb-sheet>.drag-handle,.tgb-sheet>header{flex:none}
.tgb-sheet>header{align-items:flex-start}
.tgb-sheet>header>h2{min-width:0;overflow-wrap:break-word}
.tgb-sheet [data-sheet-close],.dialog-close-row .icon-button,[data-player-close]{inline-size:44px;block-size:44px;min-block-size:44px;flex:none}
.tgb-sheet>.sheet-body{min-height:0;overflow:auto;overscroll-behavior:contain}
#phrase-dialog{max-height:calc(100dvh - 32px);overflow:auto;padding-top:0}
.dialog-close-row{position:sticky;top:0;display:flex;justify-content:flex-end;background:var(--surface);padding-block:12px;z-index:2}
.photo-browser header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center}
.photo-browser [data-close]{grid-column:3;grid-row:1}
.photo-browser [data-counter]{grid-column:2;grid-row:1;text-align:center}
.photo-browser [data-zoom]{grid-column:1;grid-row:1}
.walk-player>header{position:sticky;top:0;z-index:3;background:var(--surface)}
.walk-player [data-player-close]{margin-left:auto;padding:8px}
.guide-capabilities{margin-block:24px}
.guide-promises{display:grid;gap:16px;margin-top:16px}
.guide-promises>div{display:flex;align-items:flex-start;gap:12px;min-width:0}
.guide-promises svg{color:var(--primary);margin-top:4px}
.guide-promises h3{font:700 var(--type-body)/1.25 var(--font-ui)}
.guide-promises p{font-size:var(--type-secondary);margin-top:4px}
@media(min-width:1100px){.guide-promises{grid-template-columns:repeat(2,minmax(0,1fr))}}
.walk-player>header{left:0;gap:8px;padding:12px 16px}
.walk-player>header>progress{flex:1;min-width:20px;width:auto}
.walk-player [data-end]{min-width:0;max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.page-wrap{max-width:var(--content-max);padding-top:24px}
.page-heading{margin-bottom:24px}
.page-heading>*+*{margin-top:8px}
.page-heading h1{font-size:var(--type-display)}
.page-heading .lead{font-size:var(--type-lead);line-height:1.4}
.breadcrumbs{font-size:var(--type-breadcrumb);margin-bottom:12px}
.breadcrumbs a{min-height:28px}
.section,.phrase-group{margin-top:var(--section-gap)}
.section-head{margin-bottom:var(--section-title-gap)}
.prose-block{margin-bottom:var(--section-gap)}
.prose-block h2,.phrase-group h2{margin-bottom:var(--section-title-gap)}
.reading h2{margin-top:24px;margin-bottom:12px}
.panel,.link-card{padding:16px}
.stack>*+*{margin-top:16px}
.empty-state{padding:24px 16px}
.utility-links{margin-top:24px}
.settings-grid{max-width:none;column-gap:16px}
main[data-page=settings] button{appearance:none;-webkit-appearance:none}
.settings-group{break-inside:avoid;padding:16px;margin:0 0 16px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
.settings-group h2{font:700 var(--type-setting-title)/1.25 var(--font-ui);margin:0 0 12px}
.settings-group p{font-size:var(--type-hint);line-height:1.35;margin-block:8px 12px}
.settings-group .chips{gap:8px;overflow:visible;max-height:none;mask-image:none;padding:0;flex-wrap:wrap}
.settings-group :is(.chips button,.chip){display:inline-flex;align-items:center;justify-content:center;block-size:var(--control-h-compact);min-height:0;padding-block:0;font-size:var(--type-hint);white-space:nowrap}
.settings-group .actions>button{display:inline-flex;align-items:center;justify-content:center;block-size:var(--control-h);min-height:0;max-width:100%;padding-block:0;font-size:var(--type-hint)}
.settings-group .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.settings-grid>.utility-links{break-inside:avoid;margin:0 0 16px;display:grid;gap:12px}
.settings-grid>.utility-links>*{margin:0}
.settings-grid .link-card h3{font:700 var(--type-setting-title)/1.25 var(--font-ui)}
.utility-grid,.about-groups{display:grid;gap:16px;align-items:start}
.about-groups>.prose-block{margin:0;border:1px solid var(--border);border-radius:var(--r-card);padding:16px;background:var(--surface);min-width:0}
.about-groups h2{margin:0 0 12px}
.about-groups h3{margin:20px 0 8px}
.about-groups p{font-size:var(--type-secondary)}
.about-groups p+p{margin-top:12px}
.stats{margin-block:24px;gap:16px}
.utility-grid>section{min-width:0}
.utility-grid>section>*:first-child{margin-top:0}
.credit-list{column-gap:16px}
.credit-item{padding:16px;border:1px solid var(--border);border-radius:var(--r-card);margin-bottom:16px;background:var(--surface)}
@media(min-width:1100px){
.settings-grid{columns:2}
.utility-grid,.about-groups{grid-template-columns:repeat(2,minmax(0,1fr))}
[data-help-mount]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
[data-help-mount]>p{grid-column:1/-1}
[data-help-mount]>.section{margin:0}
main[data-page=trips]:not(.trips-detail-active)>.page-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
main[data-page=trips]>.page-wrap>*{grid-column:1/-1}
main[data-page=trips]:not(.trips-detail-active)>.page-wrap>:is(.planner-toolbar,[data-trips-mount]){grid-column:auto;margin-top:0}
[data-trips-mount]>.empty-state{height:100%;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
}
@media(min-width:1600px){
.settings-grid{columns:3}
.utility-grid,.about-groups,main[data-page=saved] .list-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.credit-list{columns:3}
}
@media(max-width:759px){
.page-wrap{padding-top:24px;padding-inline:20px}
.page-heading{margin-bottom:24px}
.panel,.link-card,.about-groups>.prose-block{padding:12px}
.credit-list{columns:1}
.settings-group{padding:16px}
}
.settings-group{container-type:inline-size}
@container(max-width:400px){.settings-group .actions{grid-template-columns:1fr}}
[data-road-results]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
[data-road-results] .row-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:0;padding:12px}
[data-road-results] .row-link{width:100%;padding:0;gap:12px}
[data-road-results] .row-photo,[data-road-results] .row-photo picture,[data-road-results] .row-photo img{width:72px;height:72px;object-fit:cover;flex:none}
[data-road-results] .row-card>.credit-toggle{left:40px;top:40px}
[data-road-results] [data-road-trip]{margin-top:auto;width:100%}
.route-map:has(>.route-preview) .maplibregl-canvas-container{visibility:hidden}
@media(max-width:759px){[data-road-results]{grid-template-columns:minmax(0,1fr)}}
.icon-button{width:44px}.actions{align-items:stretch}.place-side .actions .action-tile{height:44px;min-height:44px}.directions-links .button{height:44px;min-height:44px}
.collection-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.collection-actions .button{height:44px;min-height:44px}.collection-actions p{margin:0}
.context-promo{margin-top:var(--section-gap)}
.place-card .card-body>h3{font-size:var(--type-card-name);line-height:1.2;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;min-height:2lh;text-wrap:pretty}
.card-grid .place-card .card-body>h3{-webkit-line-clamp:unset;overflow:visible}
@media(min-width:760px) and (max-width:1099px){.shelf-frame .place-card .card-body>h3{-webkit-line-clamp:unset;overflow:visible}}
.card-body .card-summary{min-height:2.7em}
.home-map>.map-poster{position:absolute;inset:0;max-height:none}
.dial-detents button{height:44px;min-height:44px}
.site-footer{padding:8px 32px}.footer-inner{max-width:1256px}.promo-grid{display:grid;grid-template-columns:1fr;gap:0;margin:8px 0 0}.promo-tile{grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:12px;padding:4px 0;min-height:64px}.promo-tile+.promo-tile{border-top:1px solid var(--border)}.promo-tile h3{font-size:var(--type-card-name)}.promo-tile .caption{font-size:var(--type-romanisation);line-height:1.2}.promo-tile .badges{grid-column:auto;max-width:none;display:flex;flex-wrap:nowrap;gap:8px;align-items:center;padding:0;overflow:visible}.badge-wrap{position:relative;flex:none}.footer-stores a,.footer-stores .unavailable-badge{display:flex;align-items:center;height:40px;min-height:40px}.footer-stores img{height:40px;width:auto;max-width:none}.web-badge{gap:6px;border:1px solid var(--border);border-radius:6px;padding:2px 8px;white-space:nowrap;line-height:1}.web-badge small{display:block;font-size:var(--type-min)}.web-badge b{display:block;font-size:var(--type-chip);margin-top:2px}.web-badge>svg{width:24px!important;height:24px!important}.unavailable-badge{opacity:.45}.soon-pill{position:absolute;top:-8px;right:-6px;background:var(--warning);color:var(--surface);border-radius:8px;height:20px;padding:0 6px;font:700 var(--type-min)/20px var(--font-ui);white-space:nowrap;transform:translateY(-6px)}.footer-bottom{min-height:44px;padding:0;align-items:center;gap:12px;font-size:var(--type-romanisation);flex-wrap:nowrap}.footer-bottom>div:first-child{display:flex;gap:12px;align-items:center}.footer-bottom>div:first-child>a:first-child{display:none}.footer-links{gap:16px;flex-wrap:nowrap}.footer-links a{display:flex;align-items:center;min-height:44px}.site-footer>.footer-inner>.eyebrow{font-size:var(--type-min);line-height:18px}
.phrase-nav+[data-phrase-voice-note]{min-height:0;margin:0}.phrase-nav+[data-phrase-voice-note][aria-hidden=true]{display:none}[data-phrase-voice-note]+.phrase-group{margin-top:var(--section-gap)}
@media(max-width:759px){.site-footer{padding:16px}.promo-tile{grid-template-columns:56px minmax(0,1fr);padding:12px 0;gap:8px 12px}.promo-tile .footer-stores{grid-column:1/-1;overflow-x:auto;overflow-y:visible;padding-top:16px;padding-bottom:4px;scrollbar-width:none;mask-image:linear-gradient(to right,#000 calc(100% - 8px),transparent)}.footer-stores a,.footer-stores .unavailable-badge,.footer-stores img{height:36px;min-height:36px}.web-badge small{display:none}.footer-bottom{display:flex;flex-wrap:wrap;gap:0 12px}.footer-links{gap:12px}.footer-bottom>div:first-child{min-height:44px}}
.page-wrap{padding:32px 32px 32px;max-width:var(--content-max)}
.page-heading{margin-bottom:24px}.page-heading .lead{margin-top:8px;max-width:76ch}
.breadcrumbs>*{min-width:0;line-height:1.25}
.breadcrumbs svg[role=none]{width:12px!important;height:12px!important;color:var(--secondary);flex:none}.phone-breadcrumb{display:none}
.section,.phrase-group{margin-top:var(--section-gap)}.section-head{margin-bottom:12px;align-items:center;min-height:44px}.section-head h2{font-size:var(--type-title)}
.site-shell{padding-top:24px;padding-bottom:16px}.site-shell nav{margin:24px -8px 16px;gap:4px}.nav-link{min-height:44px;padding:8px 12px;border-radius:8px;border-left:0;gap:12px}
.shell-search{height:44px;white-space:nowrap;min-width:0;padding:0 12px;gap:8px}.shell-search>span{overflow:hidden;text-overflow:ellipsis}.shell-search kbd{margin-left:auto;font:inherit;font-size:var(--type-caption);border:1px solid var(--border);background:var(--bg);border-radius:4px;padding:0 6px;line-height:24px}
.shell-tools{gap:8px;margin-top:16px}.shell-tools>.button{min-height:44px;height:44px}.store-plate{padding-top:24px}.store-plate>p{margin-bottom:8px}.store-plate .badges{display:flex;flex-wrap:nowrap;gap:8px}.store-plate .badges img{height:36px;max-width:none;min-width:0;width:100%;object-fit:contain}.store-plate .badges a{flex:1;min-width:0;min-height:44px}.store-plate .caption{margin-top:8px}
.collection-grid,[data-carousel]{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:4px;max-height:none;mask-image:none}
[data-carousel]::-webkit-scrollbar{display:none}[data-carousel]>*{flex:0 0 300px;scroll-snap-align:start;min-width:0}
.collection-card{aspect-ratio:16/10;border:1px solid var(--border);border-radius:18px;overflow:hidden}.collection-cover,.collection-cover picture,.collection-cover img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover}.collection-cover{position:relative}
.collection-cover .hero-title{inset:auto 0 0;padding:48px 16px 16px}.collection-cover h2{font-size:var(--type-shelf-title);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.15}
.collection-card>.credit-toggle,.card-photo>.credit-toggle{top:12px;right:12px;bottom:auto;left:auto}
.shelf-frame{position:relative;min-width:0}.shelf-frame:before,.shelf-frame:after{content:'';position:absolute;inset:0 auto 4px 0;width:48px;z-index:3;pointer-events:none;opacity:0;background:linear-gradient(to right,var(--bg),transparent)}.shelf-frame:after{left:auto;right:0;rotate:180deg}.shelf-frame[data-start=true]:before,.shelf-frame[data-end=true]:after{opacity:1}.shelf-controls{display:flex;gap:8px;margin-left:auto;flex:none}.shelf-controls button{width:44px;height:44px;min-height:44px;border-radius:50%;padding:8px}.shelf-controls button:disabled{opacity:.35}
.place-card{display:flex;flex-direction:column}.card-photo{aspect-ratio:16/10;flex:none}.card-photo .photo-caption{padding:24px 12px 12px}.card-photo h3{font-size:var(--type-card-name);line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-body{display:flex;flex-direction:column;flex:1;gap:8px;padding:16px}.card-body>*+*{margin-top:0}.card-body .data{margin-top:auto}.card-body .chip{font-size:var(--type-chip);min-height:0;line-height:1.2}.card-summary{font-size:var(--type-secondary);line-height:1.35}
.home-hero{min-height:0;height:200px;margin-bottom:24px}.home-hero-copy{min-height:0;height:200px;padding:24px 24px 20px;justify-content:flex-end}.home-hero-copy .eyebrow{display:none}.home-hero-copy h1{font-size:var(--type-display);margin:0 0 8px}.home-top{gap:24px;align-items:stretch}.home-map{position:relative;top:0;display:flex}.home-map>.map-poster{width:100%;height:100%;min-height:0}.home-map .home-map-crop{aspect-ratio:auto}.home-map-crop>svg{height:100%;position:absolute;inset:0}.home-map .map-link{position:absolute;bottom:0;width:100%;background:var(--surface)}.home-map .map-attribution{position:absolute;bottom:44px;width:100%}.home-top .origin-line{padding-bottom:12px}.home-top .dial{margin-top:16px}.home-top .panel{min-width:0}
.home-top+.section{margin-top:32px}[data-home-shelf] [data-carousel]>.place-card{flex-basis:calc((100% - 56px)/4.5)}.region-toggle{margin-top:8px}
.collection-heading{display:block;position:relative;min-height:0}.collection-heading>figure{display:none}.collection-heading .lead{margin-top:8px!important}.collection-heading .data{margin-top:8px!important}.collection-heading .button{margin-top:12px!important}.ordered-places{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;counter-reset:places;list-style:none;margin:0}.ordered-places>li{position:relative;display:block;margin:0;min-width:0}.ordered-places>li:before{position:absolute;z-index:2;left:12px;top:12px;font:700 var(--type-caption)/24px var(--font-ui);width:24px;height:24px;text-align:center;border-radius:8px;background:var(--surface);color:var(--text)}.ordered-places .row-card{height:100%}.ordered-places .row-link{display:block;height:100%;padding:0}.ordered-places .row-photo,.ordered-places .row-photo picture,.ordered-places .row-photo img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:18px 18px 0 0}.ordered-places .row-text{padding:12px}.ordered-places .row-text h3{font-size:var(--type-card-name)}.ordered-places .credit-toggle{left:auto;right:12px;top:12px;bottom:auto}.region-composition{display:grid;grid-template-columns:3fr 2fr;gap:24px;align-items:start}.region-composition .ordered-places{grid-template-columns:repeat(2,minmax(0,1fr))}.region-map{position:sticky;top:16px;margin:0}.region-map .map-poster{height:360px}.region-map picture,.region-map img{height:100%;width:100%;object-fit:cover}.region-map .map-link{position:absolute;bottom:0;width:100%;background:var(--surface)}.region-map .map-attribution{position:absolute;bottom:44px;width:100%}
.place-hero{max-height:420px;margin-bottom:32px}.place-hero:not(.lowres)>picture,.place-hero:not(.lowres)>picture img{height:420px}.place-grid{grid-template-columns:minmax(0,680px) 340px;gap:24px;justify-content:space-between}.place-side{grid-column:2;grid-row:1}.place-reading{grid-column:1;grid-row:1;min-width:0;width:100%}.fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-row{height:180px}.gallery-photo{height:180px}.gallery-photo picture,.gallery-photo img{height:180px;width:100%;object-fit:cover}.nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.phrase-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.phrase-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:16px;margin:0;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.phrase-row>div:first-child{grid-column:1/-1;font-size:var(--type-chip)}.phrase-row .phrase-bg{font-size:var(--type-shelf-title);font-family:var(--font-title)}.phrase-row .latin{font-size:var(--type-romanisation)}.phrase-row>.actions{min-width:96px;gap:8px}.phrase-row .icon-button{width:44px;height:44px;min-height:44px}.phrase-nav{position:static}.article-layout{grid-template-columns:minmax(0,680px) 260px;gap:24px;justify-content:space-between;align-items:start}.article-aside{top:16px}.article-aside a{font-size:var(--type-secondary);min-height:44px}.related-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.related-articles .link-card{height:100%}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));columns:auto;gap:16px;align-items:start}.settings-group{margin:0}.settings-grid>.utility-links{margin:0}.settings-grid>[data-storage-notice]{grid-column:1/-1}
@media(min-width:760px) and (max-width:1099px){.page-wrap{padding:24px}.site-shell nav{margin:24px 0}.nav-link{padding:8px 0;gap:4px}.home-top{grid-template-columns:3fr 2fr;gap:16px}.place-grid{grid-template-columns:minmax(0,1fr) 300px;gap:16px}.ordered-places{grid-template-columns:repeat(2,minmax(0,1fr))}.region-composition{grid-template-columns:3fr 2fr;gap:16px}.region-composition .ordered-places{grid-template-columns:1fr}.article-layout{grid-template-columns:minmax(0,1fr) 220px;gap:16px}[data-home-shelf] [data-carousel]>.place-card{flex-basis:calc((100% - 40px)/3.5)}}
@media(max-width:759px){.page-wrap{padding:16px 16px 24px}.phone-breadcrumb{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-bottom:12px;color:var(--secondary);font-size:var(--type-breadcrumb)}.phone-breadcrumb svg{width:16px!important;height:16px!important}.section-head{min-height:44px}.page-heading h1{font-size:var(--type-display)}.page-heading{margin-bottom:24px}.site-shell{padding:0 4px env(safe-area-inset-bottom)}.site-shell nav{margin:0;gap:0}.nav-link{height:64px;gap:3px;padding:8px 1px;border-radius:0}.home-hero{height:160px;min-height:0;margin:0 0 24px;border-radius:18px}.home-hero-copy{height:160px;min-height:0;padding:16px}.home-hero-copy p{font-size:var(--type-lead)}.home-hero .home-headline{font-size:var(--type-display);margin:0 0 8px}.home-top{display:block}.home-map{display:none}.home-top+.section{margin-top:24px}[data-home-shelf] [data-carousel]>.place-card{flex-basis:78%}.collection-card{flex-basis:280px}.card-body{padding:12px}.ordered-places,.region-composition,.region-composition .ordered-places{display:grid;grid-template-columns:1fr}.region-map{position:relative;top:0;grid-row:2}.region-map .map-poster{height:280px}.place-grid{display:flex;flex-direction:column;gap:24px}.place-side,.place-reading{width:100%;max-width:none}.place-hero{margin:0 0 24px;max-height:none;border-radius:18px;aspect-ratio:4/3;min-height:0}.place-hero>picture,.place-hero>picture img{height:100%;min-height:0}.place-hero .hero-title{position:absolute;inset:auto 0 0;min-height:0;padding:64px 16px 40px}.place-hero .hero-title h1{font-size:var(--type-display)}.gallery-row,.gallery-photo,.gallery-photo picture,.gallery-photo img{height:140px}.nearby-grid,.phrase-cards,.article-layout,.related-articles,.settings-grid{grid-template-columns:1fr}.phrase-row{padding:12px}.article-aside{position:static}.settings-grid{display:grid;columns:auto}.shelf-controls{gap:4px}.section-head>a{max-width:35%;text-align:right;flex:initial}.section-head>div:first-child{min-width:0}.section-head h2{text-wrap:wrap}}
.place-hero .hero-title{padding:64px 24px 24px}.place-hero .hero-title h1{margin-top:8px;max-width:30ch}.place-hero .hero-title .chips{margin-top:12px}.place-hero .hero-title .chip{height:auto;min-height:28px;padding:4px 8px;font-size:var(--type-caption)}
@media(max-width:759px){.place-hero .hero-title{padding:64px 16px 32px}.place-hero .hero-title h1{margin-top:4px}}.directions-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.directions-links .button:last-child{grid-column:1/-1}
.nearby-card{position:relative;min-width:0;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.nearby-card:hover{border-color:var(--primary)}.nearby-card .nearby-row{display:flex;align-items:start;gap:12px;border:0;padding:12px;height:100%;min-height:96px}.nearby-thumb{display:block;width:72px;height:72px;flex:none;border-radius:12px;overflow:hidden;background:var(--soft)}.nearby-thumb picture,.nearby-thumb img{width:72px;height:72px;object-fit:cover}.nearby-copy{display:block;min-width:0}.nearby-copy strong{font:700 var(--type-card-name)/1.2 var(--font-title);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.nearby-copy .data{display:block;margin-top:8px}.nearby-card>.credit-toggle{top:24px;left:40px;right:auto;bottom:auto}.row-text h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(min-width:1100px){.region-composition .ordered-places{grid-template-columns:repeat(3,minmax(0,1fr))}}
.nearby-card .nearby-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:4px 12px;align-content:start}.nearby-row>span:first-child{grid-row:1/3;display:block;width:72px;height:72px;overflow:hidden;border-radius:12px;background:var(--soft)}.nearby-row>span:first-child picture,.nearby-row>span:first-child img{width:72px;height:72px;object-fit:cover}.nearby-row>strong{font:700 var(--type-card-name)/1.2 var(--font-title);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.nearby-row>small{font-size:var(--type-secondary);font-variant-numeric:tabular-nums;color:var(--secondary)}.footer-stores>*{flex:none;position:relative}.promo-tile h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-tile .caption{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:759px){.promo-tile h3{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.promo-tile .caption{-webkit-line-clamp:2}}
.card-body .chip{height:28px;min-height:28px;padding:4px 8px}.card-body .chips{min-height:28px}
.collection-cover{display:block}.card-body,.card-body>h3,.card-body>.chips{min-width:0;max-width:100%}.card-body{width:100%}@media(min-width:760px){.promo-tile{height:64px;min-height:64px;padding-block:0;align-content:center}}
@media(min-width:1100px){[data-search-mount]>section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;align-content:start}[data-search-mount]>section>h2{grid-column:1/-1;margin-bottom:12px}}
.search-result{display:flex;flex-direction:column;justify-content:center;min-height:72px;padding:12px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}
.place-card>.card-photo{min-width:0;min-height:0;width:100%;max-width:100%}.origin-line-button{height:44px;min-height:44px;min-width:0;justify-content:flex-start;white-space:nowrap;overflow:hidden;padding-block:0}.origin-line-button>span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-body .chip{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px}.card-body .chip svg[role=none]{display:inline-block;vertical-align:-4px;margin-inline-end:4px}
.origin-line>[data-home-origin]{height:52px;min-height:52px;flex:none;white-space:nowrap}
.map-controls>button{min-height:48px}.card-body .data{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-home-mount]>.origin-line{flex-wrap:wrap;row-gap:8px}[data-home-mount]>.origin-line>[data-origin-slot]{flex:1 1 180px;min-width:0}[data-home-mount]>.origin-line>[data-home-origin]{max-width:100%}
.mini-map-activate{height:52px;min-height:52px;padding:8px 12px;font-size:var(--type-hint);line-height:1.2}
.js main[data-page=home]:not([data-home-ready]) .dial-count{position:relative;visibility:hidden}
.js main[data-page=home]:not([data-home-ready]) .dial-count:after{content:attr(data-pending);position:absolute;inset:0;display:flex;align-items:center;font:400 var(--type-secondary)/1.2 var(--font-ui);visibility:visible;color:var(--secondary)}
.home-top .origin-line{padding-bottom:0}.home-top .time-heading{margin-top:12px}
.trip-timeline>li:last-child{padding-bottom:0}
@media(min-width:760px){.settings-grid,.about-groups{display:block;columns:2;column-gap:16px}.settings-grid>.settings-group,.settings-grid>.utility-links,.about-groups>.prose-block{break-inside:avoid;margin:0 0 16px}.settings-grid>[data-storage-notice]{column-span:all}}
.mobile-place-back{display:none}
@media(max-width:759px){.mobile-header[data-place=true]>.mobile-brand,.mobile-header[data-place=true]>.header-title{display:none}.mobile-header[data-place=true]>.mobile-place-back{display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;flex:1;font-size:var(--type-secondary);color:inherit}.mobile-place-back>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-place-back svg{width:20px!important;height:20px!important;flex:none}main:is([data-page=places],[data-page=place]) .phone-breadcrumb{display:none}}
.place-side .actions[data-place-actions]{grid-template-columns:repeat(2,minmax(0,1fr))}.place-side .actions .action-tile{flex-direction:row;gap:8px;padding:4px 8px}.place-side .action-tile>span{min-width:0}
@media(max-width:759px){.place-side .actions[data-place-actions]{margin-inline:0;padding-inline:0;gap:8px}.place-side .actions .action-tile{flex:0 0 auto;width:auto;min-width:88px;flex-direction:column;gap:4px;padding:4px 12px;white-space:nowrap}}
.place-hero .hero-title h1{max-width:680px}
.place-card>.card-photo{aspect-ratio:16/10}
.place-hero .hero-title h1{font-size:var(--type-hero)}
.card-grid[data-carousel]>.place-card{display:flex;grid-template-rows:none;grid-row:auto}
.collection-heading,.collection-heading h1{margin-top:0}
.walk-player [data-end]{flex:none;max-width:calc(100% - 112px);height:52px;padding:4px 12px;white-space:normal;overflow:visible}
.walks-grid>.place-card{display:flex;grid-template-rows:none;grid-row:auto}.walks-grid .card-photo{display:block;aspect-ratio:16/10}.walks-grid .card-photo:before{display:none}.walks-grid .card-photo .photo-caption{position:absolute;inset:auto 0 0;padding:24px 12px 12px}.walks-grid .card-photo:has(.credit-toggle) .photo-caption{padding-inline-end:12px}.walks-grid .card-body{min-height:0}
@media(max-width:759px){.walks-grid{grid-template-columns:1fr}}
.js main:is([data-page=trips],[data-page="trips/road"],[data-page=walks],[data-page=help]) [data-shell-origin-slot]{min-height:52px}main[data-page=saved] [data-shell-origin-slot]{display:none}[data-walks-mount]>.walks-loading{margin-top:0}
.offline-group output:empty{display:none}
@media(min-width:760px){[data-offline-mount]{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}[data-offline-mount]>section:last-child{grid-column:1/-1}[data-offline-groups]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}}
.place-side>.live-place-status{margin:0}.place-side>.actions[data-place-actions]{margin-top:-12px}
.mobile-place-back{border-radius:12px;transition:background var(--quick),opacity var(--quick)}.mobile-place-back:hover{background:color-mix(in srgb,currentColor 10%,transparent)}.mobile-place-back:active{opacity:.72}
@media(max-width:759px){.level-tabs{position:relative}.mobile-header[data-place=true]{position:sticky;top:0}.mobile-header[data-over-photo=true],.mobile-header[data-over-photo=true].lowres-header{background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);color:var(--text)}.mobile-header[data-over-photo=true] .icon-button,.mobile-header[data-over-photo=true] .language-toggle{color:var(--text)}main:is([data-page=places],[data-page=place]) .page-wrap{padding-top:12px}}
.filter-section-heading .region-toggle{flex:none}
[data-trail-live]{display:none}
.trail>.text-link{display:flex;align-items:center;min-height:44px}
.trail>.waymark{min-height:48px;margin-bottom:8px}
.trail>.waymark small{line-height:1.35}
.js .trail[data-marked]:not(:has(>.waymark)):before{content:'';display:block;width:34px;height:48px;margin-bottom:8px;background:var(--soft);clip-path:inset(calc((48px - 34px)/2) 0 round 4px)}
.trail>[data-trail-distance]{margin-top:8px;line-height:1.5;min-height:1.5em}
.trail>[data-trail-map]{display:flex;height:52px;margin-top:8px}
.js [data-trail-live]{display:block;position:relative;height:calc(var(--type-secondary)*1.5 + 68px)}
[data-trail-live]:before{content:'';position:absolute;left:0;top:12px;width:50%;height:12px;border-radius:4px;background:var(--soft)}
[data-trail-live]:after{content:'';position:absolute;inset:auto 0 0;height:52px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}
.road-entry-loading{display:none;grid-column:1/-1}
.road-pending [data-road-initial]{display:none}
.road-pending .road-entry-loading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body:has(main.road-pending) .site-footer{visibility:hidden}
.offline-map-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
.offline-map-heading h2{flex:none}
.offline-map-heading [data-map-state]{min-width:0}
.offline-map-copy{display:grid;grid-template-columns:9ch minmax(0,1fr);gap:12px;align-items:start}
.offline-map-copy>p{margin:0}
.offline-map-copy [data-map-size]{white-space:nowrap}
[data-offline-mount] .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
[data-offline-mount] .actions>button{min-width:0;height:48px;padding:0 8px}
[data-offline-mount] .actions:has([data-map-cancel]:not([hidden])) [data-persist]{display:none}
@media(max-width:1099px){[data-offline-mount] .actions{grid-template-columns:1fr}}
@media(max-width:759px){.road-pending .road-entry-loading{grid-template-columns:1fr}}
.road-pending [data-road-summary]{min-height:1.5em}
.js .map-poster picture[data-preview] img{opacity:1;transition:none}
.offline-map-heading{position:relative}
[data-offline-mount] .offline-map-heading progress{position:absolute;inset:auto 0 0;height:4px}
@media(min-width:760px){.ordered-places .row-text h3{min-height:2.24em}.home-map{display:block}.home-map>.map-poster{display:block;position:sticky;inset:auto;top:16px;height:auto;aspect-ratio:500/650;max-height:min(640px,calc(100dvh - 32px));min-height:0}}
#tgb-offline-badge{top:auto;bottom:0;height:52px;max-width:none;display:flex;align-items:center;justify-content:center;border-top:1px solid var(--border);border-bottom:0;font-size:var(--type-caption);line-height:1.3;text-wrap:balance}
body:has(#tgb-offline-badge:not([hidden])) .shell-content:after{content:'';display:block;height:52px}
.has-audio #tgb-offline-badge{bottom:calc(var(--player-h,72px) + 32px)}
@media(max-width:759px){#tgb-offline-badge{bottom:calc(64px + env(safe-area-inset-bottom))}.has-audio #tgb-offline-badge{bottom:calc(var(--player-h,64px) + 80px + env(safe-area-inset-bottom))}}
.js .map-active:has(#tgb-offline-badge:not([hidden])) main[data-page=map] #map-root{height:calc(100dvh - 52px)}
.js .has-audio.map-active:has(#tgb-offline-badge:not([hidden])) main[data-page=map] #map-root{height:calc(100dvh - var(--player-h,72px) - 84px)}
@media(max-width:759px){.js .map-active:has(#tgb-offline-badge:not([hidden])) main[data-page=map] #map-root{height:calc(100dvh - 182px - env(safe-area-inset-bottom))}.js .has-audio.map-active:has(#tgb-offline-badge:not([hidden])) main[data-page=map] #map-root{height:calc(100dvh - var(--player-h,64px) - 200px - env(safe-area-inset-bottom))}}
.map-active:has(#tgb-offline-badge:not([hidden])) #map-root .maplibregl-ctrl-bottom-right{right:auto;left:8px;bottom:calc(var(--map-info-bottom,0px) + 44px)!important}
body:has(#tgb-offline-badge:not([hidden])) #tgb-toast{bottom:64px}
body.has-audio:has(#tgb-offline-badge:not([hidden])) #tgb-toast{bottom:calc(var(--player-h,72px) + 96px)}
@media(max-width:759px){body:has(#tgb-offline-badge:not([hidden])) #tgb-toast{bottom:calc(128px + env(safe-area-inset-bottom))}body.has-audio:has(#tgb-offline-badge:not([hidden])) #tgb-toast{bottom:calc(var(--player-h,64px) + 144px + env(safe-area-inset-bottom))}}
@media(min-width:1100px){.site-shell{width:248px;position:sticky;top:0;height:100dvh;overflow-y:auto;padding:0 16px 16px;align-self:start}.brand-lockup{min-height:64px;height:64px;gap:8px}.brand-lockup .brand-tile{width:36px;height:36px}.wordmark{font-size:var(--type-setting-title);line-height:1.1}.site-shell nav{margin:8px 0 12px;gap:2px}.nav-link{height:44px;padding-block:0;white-space:nowrap}.shell-tools{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:8px 4px;margin-top:12px}.shell-tools>.language-toggle{max-width:100%;padding:0 4px;gap:4px;font-size:var(--type-hint);min-width:0}.shell-tools>.language-toggle span{overflow:hidden;text-overflow:ellipsis}.shell-tools .theme-segments{height:44px;gap:0;align-items:center}.shell-tools .theme-button{width:36px;height:36px;min-height:36px;padding:4px}.shell-tools>.button{grid-column:1/-1;justify-content:flex-start;border:0;background:transparent;padding:0 12px}.store-plate{margin-top:auto;padding-top:16px}.store-plate>p{font-size:var(--type-caption);margin-bottom:8px}.store-plate .badges>a{height:36px;min-height:36px}.store-plate .caption{font-size:var(--type-hint);white-space:nowrap}}
.promo-icon{display:block;width:56px;height:56px;position:relative;z-index:2}.footer-stores,.context-promo .actions,.context-promo a,.promo-tile h3 a{position:relative;z-index:2}.footer-stores{isolation:isolate}.footer-stores .soon-pill{pointer-events:none}.footer-stores .web-badge{flex:none}.reading-offer{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px;border:1px solid var(--border);border-radius:14px;margin-bottom:24px;background:var(--surface)}.reading-offer .icon-button{margin-left:auto}.continue-row{max-width:100%;min-width:0}.continue-row>button:first-child{min-width:0;flex:1;justify-content:flex-start}.continue-row>button:first-child span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes offer-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:759px){.reading-offer>button:not(.icon-button){flex:1 1 100%}.reading-offer .icon-button{position:absolute;right:12px;top:12px}.reading-offer{position:relative;padding-right:60px}.row-photo,.row-photo picture,.row-photo img{width:88px;height:88px;object-fit:cover}.row-link{gap:12px;padding:12px}.row-text h3{font-size:var(--type-setting-title)}.row-text p{font-size:var(--type-secondary)}.row-card{margin-bottom:8px}.card-photo img{object-fit:cover}}
@media(min-width:1600px){.about-groups{columns:3}[data-help-mount]{grid-template-columns:repeat(3,minmax(0,1fr))}}
:is(.place-card,.row-card,.link-card,.nearby-card,.search-result){border:1px solid var(--border);background:var(--surface);border-radius:var(--r-card);box-shadow:none}
:is(a,button,[role=button]):focus-visible{outline:2px solid var(--primary);outline-offset:2px}
:is(button,.button,.nav-link,.chip,.web-badge,.badges a){transition:background var(--quick),border-color var(--quick),opacity var(--quick),transform var(--quick)}
:is(button,.button,.nav-link,.chip,.web-badge,.badges a):hover{border-color:var(--primary)}
:is(button,.button,.chip,.web-badge,.badges a):active{opacity:.8}
:is(h1,h2,h3){text-wrap:balance}p{text-wrap:pretty}.data{font-variant-numeric:tabular-nums lining-nums}
@media(min-width:760px){.region-composition{align-items:stretch}.region-map{align-self:start}}
::view-transition,::view-transition-group(*),::view-transition-image-pair(*),::view-transition-old(*),::view-transition-new(*){pointer-events:none}
html[data-language-offer=true] [data-language-offer-slot]{min-height:184px}
@media(max-width:759px){html[data-language-offer=true] [data-language-offer-slot]{min-height:252px}}
@media(min-width:1100px){.site-shell nav{gap:4px}}
main{overflow-anchor:none}
@media(min-width:1100px){body{display:grid;grid-template-columns:248px minmax(0,1fr);align-items:start}.site-shell{grid-column:1;grid-row:1}.shell-content{margin-left:0;min-width:0;grid-column:2;grid-row:1}}
[data-reading-offer-slot]{display:flow-root}html[data-reading-offer=true] [data-reading-offer-slot]{min-height:94px}
.shell-content.reading-collapsing{overflow:clip}
@media(max-width:759px){html[data-reading-offer=true] [data-reading-offer-slot]{min-height:146px}.reading-offer .chip{font-size:var(--type-hint);white-space:nowrap}}
[data-narration-resume-slot]:empty{display:none}html[data-resume-pending] [data-narration-resume-slot]{display:flow-root;min-height:86px}
#tgb-resume-offer{position:relative;padding-inline-end:60px;margin-bottom:16px}#tgb-resume-offer>[data-forget]{position:absolute;right:8px;top:12px}
.home-guide-count{font-size:var(--type-lead);line-height:1.4;margin-top:8px}
html,main{view-transition-name:none}
[data-home-mount] [data-orientation]{display:none}
@media(max-width:759px){html.js[data-orientation-capable=true] [data-home-mount] [data-orientation]:not([hidden]){display:inline-flex}}
.directory-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:24px}
.directory-card{align-items:start;padding:16px;gap:16px}
.directory-card>div{min-width:0;display:flex;flex-direction:column;gap:8px;align-self:stretch}
.directory-card h2{font-size:var(--type-card-name);line-height:1.2;margin:0;overflow-wrap:break-word;text-wrap:balance}
.directory-card p{font-size:var(--type-secondary);line-height:1.4;margin:0;color:var(--secondary)}
.directory-count{margin-top:auto;font-size:var(--type-caption);color:var(--secondary);font-variant-numeric:lining-nums tabular-nums}
.directory-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-md);background:var(--soft);color:var(--primary);flex:none}
.directory-icon>svg[role=none]{width:24px!important;height:24px!important;padding:0}
.directory-card>svg[role=none]:last-child{margin-top:8px;flex:none}
@media(hover:hover) and (pointer:fine){.directory-card:hover{background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-color:var(--primary)}}
.directory-card:active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));transform:scale(.98)}
@media(min-width:760px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.directory-card:active{transform:none}}
html[data-route-motion=native] .place-hero>picture img{animation:none}
.category-cover{--hue:var(--primary);display:grid;place-items:center;position:relative;inline-size:100%;block-size:100%;min-block-size:72px;aspect-ratio:3/2;background:linear-gradient(135deg,color-mix(in srgb,var(--hue) var(--category-cover-tint),var(--surface)),color-mix(in srgb,var(--hue) var(--category-cover-end),var(--surface)));color:var(--hue)}
.category-cover>svg[role=none]{width:42px;height:42px;max-width:70%;max-height:70%;stroke-width:1.4}
.category-cover::after{content:attr(data-initial);position:absolute;inset:auto 16px 10px auto;font:700 var(--type-cover-initial)/1 var(--font-title);pointer-events:none}
.card-photo:has(>.category-cover){display:flex;flex-direction:column;height:auto;min-height:0;aspect-ratio:auto;background:var(--surface)}
.card-photo>.category-cover{height:auto;flex:none;aspect-ratio:16/10}
.card-photo:has(>.category-cover)::before,.card-photo:has(>.category-cover)::after{content:none}
.card-photo:has(>.category-cover) .photo-caption{position:static;background:var(--surface);color:var(--text);padding:16px}
.card-photo:has(>.category-cover) h3{color:var(--text);text-shadow:none}
.place-hero.hero-category{background:var(--surface);color:var(--text);max-height:none;aspect-ratio:auto}
.place-hero.hero-category>.category-cover{height:180px;min-height:180px;aspect-ratio:auto}
.place-hero.hero-category::before,.place-hero.hero-category::after{content:none}
.place-hero.hero-category .hero-title{position:relative;inset:auto;background:var(--surface);color:var(--text);padding:24px;min-height:0;text-shadow:none}
.place-hero.hero-category .hero-title :is(h1,p,.eyebrow){color:var(--text);text-shadow:none}
.row-photo>.category-cover{aspect-ratio:auto;min-block-size:72px}
:is(.row-photo,.nearby-thumb,.nearby-row>span:first-child)>.category-cover::after{inset:auto 4px 4px auto;font-size:var(--type-min)}
:is(.row-photo,.nearby-thumb,.nearby-row>span:first-child)>.category-cover>svg[role=none]{width:32px;height:32px}
.map-card-photo>.category-cover{aspect-ratio:16/10;height:100%}
@media(max-width:1099px){
.map-panel:not([data-detent=large]) .map-card-photo>.category-cover::after{inset:auto 4px 4px auto;font-size:var(--type-min)}
.map-panel:not([data-detent=large]) .map-card-photo>.category-cover>svg[role=none]{width:32px;height:32px}
}
.no-photo .row-link{align-items:center;min-height:44px}
.no-photo .row-text{min-width:0}
.row-card.no-photo .row-photo{flex:none}
.no-photo .row-text :is(h3,.card-summary){display:block;-webkit-line-clamp:unset;overflow:visible;white-space:normal;text-overflow:clip}
.ordered-places>li:has(.no-photo)::before{pointer-events:none}
.hours-record code{white-space:normal;overflow-wrap:break-word;font:inherit;color:var(--secondary)}
.place-hero.hero-category .hero-title .chip{background:var(--ink-6);color:var(--text);border-color:var(--border)}
.collection-card:has(.collection-cover>.category-cover){aspect-ratio:auto}
.collection-cover:has(>.category-cover){height:auto;aspect-ratio:auto}
.collection-cover>.category-cover{height:auto;aspect-ratio:16/10}
.collection-cover:has(>.category-cover) .hero-title{position:static;inset:auto;background:var(--surface);color:var(--text);padding:16px}
.collection-cover:has(>.category-cover) .hero-title h2{color:var(--text);display:block;-webkit-line-clamp:unset;overflow:visible;text-shadow:none}
main[data-page=trips]:not(.trips-detail-active)>.page-wrap{display:block}
main[data-page=trips] [data-shell-origin-slot]{display:none}
main[data-page=trips] .planner-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px;align-items:stretch;margin:0}
.planner-copy{display:flex;flex-direction:column;gap:20px;min-width:0}
.planner-copy>[data-origin-slot]{min-height:44px}
.planner-toolbar>.planning-preview{width:100%}
.planner-copy h2{font-size:var(--type-title);margin:0}
.planner-copy .origin-line-button{width:100%;justify-content:flex-start;text-align:left;height:auto;min-height:44px;white-space:normal}
.planner-choice{min-width:0}
.planner-choice p{font-size:var(--type-secondary);font-weight:600;margin:0 0 8px}
.planner-copy .segmented{--control-fill:1;display:flex;width:100%;height:auto;min-height:44px}
.planner-copy .segmented>button{height:auto;min-height:38px;white-space:normal;padding:6px;line-height:1.2}
.planner-copy .segmented>button::after{inset:-3px 0}
.planner-actions{display:flex;gap:12px;margin-top:auto;align-items:stretch;flex-wrap:wrap}
.planner-actions>button{height:auto;min-height:48px;white-space:normal;flex:1 1 150px;padding:10px 12px}
.planner-actions>button>span{min-width:0}
.planning-preview{position:relative;aspect-ratio:4/3;min-width:0;min-height:280px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--soft);isolation:isolate;align-self:stretch}
.planning-preview>:is(.light-poster,.dark-poster),[data-planning-canvas]{position:absolute;inset:0;border-radius:inherit}
.planning-preview picture,.planning-preview picture img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.planning-preview .maplibregl-canvas-container{border-radius:inherit}
.planning-diagram{position:absolute;inset:0;width:100%;height:100%;fill:var(--soft);stroke:var(--primary);stroke-width:2;stroke-dasharray:4 4;pointer-events:none}
.planning-diagram circle{fill:var(--primary);stroke:var(--surface);stroke-dasharray:none;stroke-width:3}
.planning-preview[data-ready=true] .planning-diagram{visibility:hidden}
.planning-map-label{position:absolute;inset:12px 12px auto;margin:0;z-index:2;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-pill);padding:6px 12px;font-size:var(--type-caption);width:fit-content;max-width:calc(100% - 24px);font-variant-numeric:lining-nums tabular-nums}
.planning-map-credit{position:absolute;bottom:8px;left:8px;z-index:2;background:var(--surface);margin:0;padding:4px 8px;font-size:var(--type-min);border-radius:var(--r-sm)}
.planning-preview a:hover{color:var(--primary);text-decoration:underline}
main[data-page=trips] [data-trips-mount]>.trip-empty{height:auto;min-height:0;border:0;background:transparent;padding:32px 16px}
.trip-empty-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:var(--r-pill);background:var(--soft);color:var(--primary);margin:0 auto 16px}
.trip-empty-icon svg[role=none]{width:28px;height:28px}
.trip-empty h2{font-size:var(--type-title);margin:0 0 8px}
.trip-empty p{margin:0 auto;color:var(--secondary)}
.trip-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.trip-entry{display:grid;grid-template-columns:1fr auto;grid-template-rows:44px auto 1fr;gap:12px;padding:20px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);text-decoration:none;color:var(--text);transition:background var(--quick),border-color var(--quick),transform var(--quick)}
.trip-entry-icon{display:grid;place-items:center;width:40px;height:40px;background:var(--soft);color:var(--primary);border-radius:var(--r-md)}
.trip-entry-icon svg[role=none]{width:24px;height:24px}
.trip-entry>svg{align-self:center;color:var(--primary)}
.trip-entry h2{grid-column:1/-1;font-size:var(--type-shelf-title);margin:0;line-height:1.2;overflow-wrap:break-word}
.trip-entry p{grid-column:1/-1;margin:0;font-size:var(--type-secondary);color:var(--secondary)}
@media(hover:hover) and (pointer:fine){.trip-entry:hover{background:var(--soft);border-color:var(--primary)}}
.trip-entry:active{transform:scale(.98)}
.trip-entry:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
@media(max-width:1099px){main[data-page=trips] .planner-toolbar{gap:20px;padding:20px;grid-template-columns:minmax(0,1fr)}.planner-toolbar .planning-preview{min-height:0;max-height:360px;aspect-ratio:4/3;width:100%}}
@media(max-width:759px){.planner-toolbar .planning-preview{aspect-ratio:4/3;max-height:260px}.trip-entries{grid-template-columns:minmax(0,1fr)}}
main[data-page="trips/road"] [data-shell-origin-slot]{display:none}
.road-planner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px}
.road-controls{display:flex;flex-direction:column;gap:24px;min-width:0}
.road-fields{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:center}
button.road-field{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;gap:12px;align-items:center;width:100%;height:auto;min-height:64px;padding:10px 12px;text-align:left;white-space:normal;background:var(--elevated);border-radius:var(--r-lg);box-shadow:var(--control-edge-3);grid-column:1}
.road-field>span{display:grid;gap:4px;min-width:0}
.road-field-caption{font-size:var(--type-caption);color:var(--secondary);font-weight:600}
.road-field-value{font-size:var(--type-body);color:var(--text);overflow-wrap:break-word;line-height:1.25}
.road-field>svg:first-child{color:var(--primary)}
[data-road-swap]{grid-column:2;grid-row:1/3;align-self:center}
.road-detour>p{margin:0 0 8px;font-size:var(--type-secondary);font-weight:600}
.road-detour .segmented{display:flex;width:100%;height:auto;min-height:44px}
.road-detour .segmented>button{height:auto;min-height:38px;padding:6px 4px;white-space:normal}
.road-detour .segmented>button::after{inset:-3px 0}
.road-empty-hint{margin:auto 0 0;color:var(--secondary);font-size:var(--type-secondary)}
.road-results{margin-top:24px}
[data-road-summary]:empty{margin:0}
main[data-page="trips/road"] [data-road-results] .row-text h3{overflow-wrap:break-word;hyphens:auto;white-space:normal;min-height:0;-webkit-line-clamp:unset;overflow:visible}
main[data-page="trips/road"] [data-road-results] .card-summary{display:block;overflow:visible;-webkit-line-clamp:unset;white-space:normal}
main[data-page="trips/road"] [data-road-results] .row-link{align-items:center}
main[data-page="trips/road"] [data-road-trip]{height:auto;min-height:44px;padding-block:8px;white-space:normal}
@media(hover:hover) and (pointer:fine){button.road-field:hover{background:var(--soft);box-shadow:var(--control-edge-6)}}
button.road-field:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
@media(max-width:1099px){.road-planner{grid-template-columns:minmax(0,1fr);padding:20px;gap:20px}.road-planner .planning-preview{min-height:220px;max-height:360px}}
@media(min-width:1600px){.road-fields{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}.road-fields [data-to]{grid-column:3;grid-row:1}[data-road-swap]{grid-row:1}}
.planner-copy .segmented,.road-detour .segmented{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
.planner-copy .segmented>button,.road-detour .segmented>button{min-width:0;width:100%}
.planner-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.planning-preview [data-planning-canvas]{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit}
.planning-preview>.dark-poster{display:none}
[data-theme=dark] .planning-preview>.dark-poster{display:block}
[data-theme=dark] .planning-preview>.light-poster{display:none}
main[data-page=trips] .trip-stop-link h3{overflow-wrap:break-word;hyphens:auto;-webkit-line-clamp:unset;overflow:visible;font-size:var(--type-lead);line-height:1.25;margin:0;padding-block:2px}
main[data-page=trips] .trip-stop-card>.category-caption{white-space:normal;overflow:visible;line-height:1.3}
main[data-page=trips] .trip-stop-card>.data{white-space:normal}
main[data-page=trips] .trip-detail-grid aside{height:auto;align-self:start}
main[data-page=trips] .trip-detail-grid>*{min-width:0}
main[data-page=trips] .trip-detail-grid>.trip-route-aside{position:sticky}
.trip-route-aside .planning-preview{width:100%}
main[data-page=trips] .trip-timeline time{font-variant-numeric:lining-nums tabular-nums;font-size:var(--type-caption);line-height:1.3}
.trip-next-day{display:block;margin-top:4px;color:var(--danger);font-size:var(--type-min)}
.trip-day-warning{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-radius:var(--r-lg);background:var(--warning-tint);color:var(--warning-ink);margin:16px 0}
.trip-day-warning p{margin:0;flex:1 1 240px}
.trip-day-warning button{white-space:normal;height:auto;min-height:44px;padding-block:8px}
main[data-page=trips] .trip-stop-actions button:disabled{opacity:.4}
[data-theme=dark] main[data-page=trips] [data-delete-trip]{color:color-mix(in srgb,var(--danger) 90%,var(--text))}
main[data-page=trips] .trip-stop-actions button:focus-visible{box-shadow:var(--ring-inner)}
main[data-page=trips] .trip-stop-link{padding:4px;border-radius:var(--r-sm)}
main[data-page=trips] .trip-tile h3{overflow-wrap:break-word}
@media(hover:hover) and (pointer:fine){main[data-page=trips] .trip-stop-link:hover{background:var(--soft);color:var(--text)}main[data-page=trips] .trip-stop-actions button:hover:not(:disabled){background:var(--soft);color:var(--primary)}}
@media(max-width:759px){main[data-page=trips] .trip-detail-grid{margin-inline:0}.trip-stop-photo{width:48px;height:48px}.trip-stop-photo picture,.trip-stop-photo img{width:48px;height:48px}.trip-stop-link{grid-template-columns:48px minmax(0,1fr)}.trip-timeline>li{grid-template-columns:48px 24px minmax(0,1fr)}.trip-timeline>li:before{left:63px}.stop-number{width:24px;height:24px}.trip-stop-card{padding-top:56px}}
main[data-page=trips] .trip-tile{border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);min-width:0;position:relative}
.trip-tile-photo{position:relative;aspect-ratio:16/10;border-radius:var(--r-card) var(--r-card) 0 0}
.trip-tile-photo picture,.trip-tile-photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.trip-tile-glyph{display:grid;place-items:center;height:80px;background:var(--soft);color:var(--primary);border-radius:var(--r-card) var(--r-card) 0 0}
main[data-page=trips] .trip-tile>a{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:8px;padding:16px;border-radius:var(--r-card)}
.trip-tile>a h3{font-size:var(--type-title);margin:0;padding-block:2px;grid-column:1}
.trip-tile>a p{margin:0;grid-column:1;color:var(--secondary)}
.trip-tile>a>svg{grid-column:2;grid-row:1/3;align-self:center;color:var(--primary)}
.trip-tile .credit-toggle{position:absolute;z-index:3;right:8px;top:8px}
main[data-page=trips] .trip-tile:has(a:focus-visible){box-shadow:var(--ring)}
@media(hover:hover) and (pointer:fine){main[data-page=trips] .trip-tile:hover{border-color:var(--primary);background:var(--soft)}}
main[data-page=trips] .trip-tile:active{transform:scale(.98)}
@media print{main[data-page=trips] .planning-preview{display:none}main[data-page=trips] .trip-route-aside{position:static}.trip-day-warning button{display:none}.trip-day-warning{break-inside:avoid}}
main[data-page="trips/road"] [data-road-results] .row-text h3{font-size:var(--type-lead);line-height:1.25;padding-block:3px}
main[data-page="trips/road"] [data-road-results] .row-link{padding:4px}
@media(min-width:1100px){.road-fields{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}.road-fields [data-to]{grid-column:3;grid-row:1}.road-fields [data-road-swap]{grid-row:1}}
main[data-page=trips] .trip-title{margin:16px 0;font-size:var(--type-display)}
.planner-copy h2{flex:0 0 auto}
.road-fields{align-items:stretch}
.road-preview{display:flex;flex-direction:column;gap:16px;min-width:0}
.road-preview .road-empty-hint{margin:0}
main[data-page=trips] .trip-stop-actions{gap:6px;top:8px;right:8px}
main[data-page=trips] .trip-stop-card{padding-top:64px}
@media(hover:hover) and (pointer:fine){main[data-page=trips] .trip-timeline>li:hover{background:var(--ink-6);border-radius:var(--r-md)}}
@media(max-width:1099px){main[data-page=trips] .trip-detail-grid>.trip-route-aside{position:static}}
@media(max-width:759px){
main[data-page=trips]:not(.trips-detail-active) .phone-breadcrumb{float:right;margin:0 0 8px 12px}
main[data-page=trips]:not(.trips-detail-active) .page-heading{margin-bottom:12px}
main[data-page=trips]:not(.trips-detail-active) .page-heading h1{display:flex;align-items:center;min-height:44px;margin:0}
main[data-page=trips]:not(.trips-detail-active) .page-heading .lead{clear:both}
main[data-page=trips] .planner-toolbar{padding:12px}
main[data-page=trips] .planner-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center;gap:8px}
main[data-page=trips] .planner-copy>:is(.planner-choice,.planner-actions){grid-column:1/-1}
main[data-page=trips] .planner-copy .origin-line-button{padding:4px 8px;gap:8px}
main[data-page=trips] .planner-copy .origin-line-button>span{white-space:normal;overflow:visible;text-overflow:clip}
main[data-page=trips] .planner-choice p{margin-bottom:4px}
main[data-page=trips] .planner-actions>button{padding-block:8px}
}
.planning-preview [data-planning-canvas]{visibility:hidden}
.planning-preview[data-ready=true] [data-planning-canvas]{visibility:visible}
.planning-preview[data-ready=true]>.planning-map-credit{visibility:hidden}
.planning-preview>.planning-style-snapshot{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:inherit;z-index:1;pointer-events:none}
[data-trips-back]{padding-inline:8px;margin-inline:-8px;border-radius:var(--r-md);transition:background var(--quick),color var(--quick),transform var(--quick)}
@media(hover:hover) and (pointer:fine){[data-trips-back]:hover{background:var(--soft);color:var(--primary)}}
[data-trips-back]:active{transform:scale(.98)}
.planning-route .maplibregl-canvas{cursor:grab}
@media(hover:hover) and (pointer:fine){.planning-route .maplibregl-canvas:hover{outline:2px solid var(--primary);outline-offset:-2px}}
.planning-route .maplibregl-canvas:active{cursor:grabbing}
.planning-route .maplibregl-canvas:focus-visible{outline:2px solid var(--primary);outline-offset:-4px;box-shadow:var(--ring-inner)}
.walk-method{margin:0 0 16px;color:var(--secondary)}
[data-walks-mount] .walks-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.walk-card{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);transition:border-color var(--quick),transform var(--quick)}
.walk-cover{position:relative;flex:none;aspect-ratio:16/10;background:var(--soft);color:var(--primary);border-radius:var(--r-card) var(--r-card) 0 0}
.walk-cover svg{display:block;position:absolute;inset:0;width:100%;height:100%}
.walk-card-body{padding:16px;display:flex;flex:1;flex-direction:column;gap:12px}
.walk-card-body h3{font:700 var(--type-title)/1.2 var(--font-title);margin:0;overflow-wrap:break-word;hyphens:auto}
.walk-stats{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:var(--type-secondary);font-variant-numeric:lining-nums tabular-nums}
.walk-stats>span{display:inline-flex;align-items:center;gap:6px;max-width:100%}
.walk-stats svg{flex:none;width:18px;height:18px;color:var(--primary)}
.walk-card:has(a:focus-visible){box-shadow:var(--ring)}
.walk-card:active{transform:scale(.98)}
@media(hover:hover) and (pointer:fine){.walk-card:hover{border-color:var(--primary);background:var(--soft)}}
@media(min-width:1100px){[data-walks-mount] .walks-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:599px){[data-walks-mount] .walks-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.walk-card{transition:none}.walk-card:active{transform:none}}
.trails-honesty{margin-bottom:24px}
.trails-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;align-items:start}
.trails-results{min-width:0;grid-column:1;grid-row:1}
[data-trail-controls]{margin-bottom:16px}
[data-trail-controls] .chips{flex-wrap:wrap;gap:8px}
[data-trail-controls] button{white-space:normal;text-align:start}
.trail-count{margin-bottom:12px}
.trails-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.trails-list>.trail{display:flex;flex-direction:column;gap:8px;min-width:0;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
.trails-list>.trail[hidden]{display:none}
.trail-heading{display:flex;align-items:flex-start;gap:8px}
.trail-heading h3{font:700 var(--type-headline)/1.25 var(--font-title);margin:0;overflow-wrap:break-word;hyphens:auto}
.trail-heading .waymark{display:inline-flex;flex:none;margin:4px 0 0;min-height:0}
.trail-heading .waymark svg{display:block;width:28px;height:20px}
.trail-endpoints{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:var(--type-secondary)}
.trail-endpoints svg{width:16px;height:16px;flex:none}
.trail-network{color:var(--secondary);overflow-wrap:break-word}
.trail-stats{display:flex;flex-wrap:wrap;gap:8px;font-size:var(--type-secondary);font-variant-numeric:lining-nums tabular-nums}
.trail-stats>span{display:inline-flex;align-items:center;gap:6px}
.trail-stats svg{width:18px;height:18px;flex:none}
.trail-actions{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:8px}
.trail-actions .button{white-space:normal;flex:1}
.trail-actions .icon-button{flex:none}
.trail[aria-current=true]{border-color:var(--primary);background:var(--soft)}
[data-trail-more]{width:100%;margin-top:16px}
.trails-map{grid-column:2;grid-row:1;position:sticky;top:24px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:16px}
.trails-map-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.trails-map-heading h2{font-size:var(--type-title)}
.trail-map-stage{height:520px;position:relative;background:var(--soft);border-radius:var(--r-lg);overflow:clip}
.trail-map-poster,[data-trail-map-canvas]{position:absolute;inset:0}
.trail-map-poster{z-index:1;pointer-events:none}
.trail-map-poster picture,.trail-map-poster img{display:block;width:100%;height:100%;object-fit:contain}
.trail-map-poster>div{height:100%}
.trail-map-poster .dark-poster{display:none}
[data-theme=dark] .trail-map-poster .dark-poster{display:block}
[data-theme=dark] .trail-map-poster .light-poster{display:none}
.trail-map-stage>.map-attribution{position:absolute;bottom:12px;left:12px;margin:0;border-radius:var(--r-sm);z-index:2}
.trail-map-stage[data-ready=true] :is(.trail-map-poster,.map-attribution){visibility:hidden}
[data-trail-map-label]{margin-top:12px;color:var(--secondary)}
[data-trail-map-canvas] .maplibregl-ctrl-scale{font-size:var(--type-min)}
@media(max-width:1279px){.trails-list{grid-template-columns:1fr}}
@media(max-width:1099px){.trails-layout{grid-template-columns:1fr}.trails-map{position:static;grid-column:1;grid-row:1}.trails-results{grid-column:1;grid-row:2}.trail-map-stage{height:300px}.trails-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.trails-list{grid-template-columns:1fr}.trails-map{padding:12px}.trail-map-stage{height:280px}.trails-map{scroll-margin-top:72px}}
.trail-map-controls{position:absolute;top:12px;right:12px;z-index:3;display:grid;gap:8px}
[data-trail-map-canvas].maplibregl-map{position:absolute;width:100%;height:100%;z-index:0}
.walk-player{--control-hover:color-mix(in srgb,var(--primary) 5%,var(--surface));--control-press:color-mix(in srgb,var(--primary) 12%,var(--surface))}
.walk-player .player-copy{display:flex;flex-direction:column;gap:12px;min-height:0}
.player-text{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.walk-player .player-controls{flex:none;width:100%;margin:0 auto}
.walk-player [data-player-location]{flex:none;align-self:start}
@media(min-width:1100px){.walk-player .player-copy{margin:0 0 0 50%;height:calc(100dvh - 76px);max-width:none;padding:24px 40px}.walk-player .player-controls{margin-top:0}}
@media(max-width:1099px){.walk-player[open]{display:flex;flex-direction:column}.walk-player>header{flex:none}.walk-player .player-photo{height:26dvh;max-height:260px;flex:none}.walk-player .player-copy{flex:1;width:100%;max-width:none;margin:0;padding:12px 20px 20px}.walk-player .player-copy h2{font-size:var(--type-title);margin:0 0 8px}.walk-player .player-copy .player-distance{font-size:var(--type-title)}.walk-player [data-player-location]{width:100%}}
.walk-player .player-photo figcaption{top:8px;right:8px;bottom:auto;width:44px;height:44px}
.walk-player .player-photo figcaption>.credit-toggle{position:relative;inset:auto}
@media(min-width:1100px){.walk-player .player-photo figcaption{top:84px}}
.walk-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:4px 8px;margin-bottom:8px;border-radius:var(--r-lg)}
.walk-back:active{background:var(--soft)}
@media(hover:hover) and (pointer:fine){.walk-back:hover{background:var(--soft)}}
.walk-detail-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;align-items:start;margin-top:24px}
.walk-detail-grid>ol{list-style:none;padding:0;margin:0;min-width:0;display:grid;gap:12px}
.walk-detail-grid>ol>li{margin:0;min-width:0}
.walk-detail-grid .row-card{display:block;padding:0;margin:0;min-width:0}
.walk-detail-grid .row-link{width:100%;padding:12px;gap:12px;align-items:start}
.walk-detail-grid .row-text :is(h3,.card-summary){display:block;-webkit-line-clamp:unset;overflow:visible;white-space:normal;text-overflow:clip;max-height:none;overflow-wrap:break-word;hyphens:auto}
.walk-detail-grid [data-walk-route]{position:sticky;top:24px;min-width:0;height:420px}
@media(max-width:1099px){.walk-detail-grid{grid-template-columns:1fr}.walk-detail-grid [data-walk-route]{position:relative;top:auto;grid-row:1;height:320px}}
main[data-page=saved] .library-toolbar{margin-bottom:24px;gap:12px}
main[data-page=saved] .library-section>h2{display:flex;align-items:center;gap:12px;margin-bottom:16px}
main[data-page=saved] .library-place h3{display:block;overflow:visible;-webkit-line-clamp:unset}
main[data-page=saved] .library-place .card-summary{hyphens:auto;overflow-wrap:break-word}
main[data-page=saved] .empty-state{height:auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:24px 16px;gap:12px}
main[data-page=saved] .empty-state p{max-width:36ch;margin:0}
main[data-page=saved] .library-empty-icon{width:64px;height:64px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--primary)}
main[data-page=saved] .library-empty-icon svg{width:28px!important;height:28px!important}
main[data-page=saved] .library-utilities>h2{margin-bottom:16px}
main[data-page=saved] .library-utilities .link-card>svg[role=none]:first-child{width:40px!important;height:40px!important;padding:9px}
main[data-page=saved] .library-utilities .link-card>div{min-width:0}
main[data-page=saved] .library-utilities h3{overflow-wrap:break-word;hyphens:auto;text-wrap:pretty}
@media(min-width:1100px){main[data-page=saved] .library-utilities .utility-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:759px){main[data-page=saved] [data-library-sort]{width:100%}main[data-page=saved] .library-toolbar>[data-export]{margin-left:0}}
main[data-page=phrasebook] .phrase-row{align-content:start;align-items:start;grid-template-columns:minmax(0,1fr);gap:8px 12px}
main[data-page=phrasebook] .phrase-row>div:first-child{grid-column:auto}
main[data-page=phrasebook] .phrase-row .phrase-bg{font:500 var(--type-phrase)/1.3 var(--font-title);overflow-wrap:break-word}
main[data-page=phrasebook] .phrase-row .latin{margin-top:4px}
main[data-page=phrasebook] .phrase-row>.actions{align-self:start;justify-content:flex-end;min-width:0;width:100%;margin-top:8px}
main[data-page=phrasebook] .phrase-listen{flex:1;white-space:normal;height:auto;min-height:44px}
main[data-page=phrasebook] .phrase-nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:8px;margin:0 0 24px;padding:8px 0;background:var(--bg);border-bottom:1px solid var(--border)}
.phrase-nav-track{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px 4px;min-width:0;width:100%;padding:4px;background:var(--track);border-radius:var(--r-lg)}
.phrase-nav-track>a{display:inline-flex;align-items:center;justify-content:center;position:relative;flex:0 1 auto;min-width:0;max-width:100%;min-height:36px;padding:8px 12px;border-radius:var(--r-segment);color:var(--text-2);font:500 var(--type-button-s)/1.2 var(--font-ui);white-space:normal}
.phrase-nav-track>a::after{content:'';position:absolute;inset:-4px 0;border-radius:inherit}
.phrase-nav-track>a[aria-current=location]{background:var(--thumb);color:var(--text);font-weight:600;box-shadow:var(--thumb-shadow)}
.phrase-nav-track>a:active{background:var(--ink-12);transform:scale(.98)}
main[data-page=phrasebook] .phrase-group{scroll-margin-top:var(--phrase-anchor-offset,0px)}
main[data-page=phrasebook]>.page-wrap>.context-promo{padding:16px;border-radius:var(--r-card);transition:background-color var(--quick)}
main[data-page=phrasebook] .context-promo:active{background:var(--ink-12)}
main[data-page=phrasebook] .context-promo:active p{color:var(--text)}
@media(hover:hover) and (pointer:fine){.phrase-nav-track>a:hover{background:var(--ink-6);color:var(--text)}main[data-page=phrasebook] .context-promo:hover{background:var(--soft);color:var(--text)}}
html:has(#phrase-dialog[open]){overflow:hidden;scrollbar-gutter:auto}
main[data-page=phrasebook] #phrase-dialog{inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:0;border:0;border-radius:0;overflow:hidden;align-items:stretch;justify-content:flex-start}
#phrase-dialog .phrase-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;width:100%;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));border-bottom:1px solid var(--border);background:var(--surface)}
#phrase-dialog .phrase-dialog-header>p{font-size:var(--type-control-label)}
#phrase-dialog .phrase-dialog-header form{position:static;flex:none}
#phrase-dialog .phrase-dialog-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:center;padding:24px 20px max(24px,env(safe-area-inset-bottom));gap:20px}
#phrase-dialog .show-phrase{margin:auto 0 0;flex:none;max-width:100%;overflow-wrap:break-word;hyphens:auto}
#phrase-dialog .phrase-dialog-body>.context-promo{flex:none;width:min(550px,100%);margin:12px 0 auto;padding:16px;border-radius:var(--r-card)}
#phrase-dialog .phrase-dialog-body>.caption{margin:0;text-align:center}
#phrase-dialog .actions{width:100%;flex:none;gap:12px}
#phrase-dialog .actions>button{white-space:normal;height:auto;min-height:44px}
@media(min-width:1280px){main[data-page=phrasebook] .phrase-row{grid-template-columns:minmax(0,1fr) auto}main[data-page=phrasebook] .phrase-translation{grid-column:1}main[data-page=phrasebook] .phrase-text{grid-column:1}main[data-page=phrasebook] .phrase-row>.actions{grid-column:2;grid-row:1/3;width:auto;margin:0}main[data-page=phrasebook] .phrase-listen{flex:none;width:44px;padding:0}main[data-page=phrasebook] .phrase-listen>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media(max-width:759px){main[data-page=phrasebook] .phrase-nav{top:calc(56px + env(safe-area-inset-top))}main[data-page=phrasebook] .phrase-group{scroll-margin-top:var(--phrase-anchor-offset,160px)}}
main[data-page=phrasebook] #phrase-dialog{background:var(--surface);color:var(--text);color-scheme:inherit}
#phrase-dialog .phrase-dialog-header>p{color:var(--secondary);font-size:var(--type-caption)}
#phrase-dialog .phrase-dialog-header .icon-button{border-radius:50%;background:var(--ink-6);box-shadow:none}
#phrase-dialog .phrase-dialog-body{display:grid;place-items:center}
#phrase-dialog .phrase-dialog-copy{min-width:0;width:100%;text-align:center}
#phrase-dialog .show-phrase{font:700 var(--type-phrase-full)/1.15 var(--font-title);color:var(--text);text-wrap:balance;margin:0;max-width:none}
#phrase-dialog :is(.phrase-full-latin,.phrase-full-translation){font:500 var(--type-phrase-translation)/1.35 var(--font-ui);color:var(--secondary);margin:16px auto 0}
#phrase-dialog .phrase-dialog-footer{flex:none;padding:12px 20px max(16px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border)}
#phrase-dialog .phrase-dialog-footer .caption{margin:0 auto 12px;text-align:center}
#phrase-dialog .phrase-dialog-footer .actions{max-width:640px;margin:auto;justify-content:center;flex-wrap:nowrap}
#phrase-dialog .phrase-dialog-footer .primary{flex:1}
#phrase-dialog .phrase-dialog-footer .icon-button{width:48px;min-height:48px;height:48px}
@media(min-aspect-ratio:3/2) and (max-height:600px){main[data-page=phrasebook] #phrase-dialog[open]{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,30%);grid-template-rows:auto minmax(0,1fr)}#phrase-dialog .phrase-dialog-header{grid-column:1/-1}#phrase-dialog .phrase-dialog-body{height:100%}#phrase-dialog .phrase-dialog-footer{align-self:center;border:0;padding:16px}#phrase-dialog .phrase-dialog-footer .actions{flex-wrap:wrap}#phrase-dialog .phrase-dialog-footer .primary{flex-basis:100%}}
#phrase-dialog .phrase-dialog-header .icon-button:focus-visible{box-shadow:var(--ring-inner)}
main[data-page=practical] .practical-emergency{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;padding:24px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
.practical-emergency .emergency-number{font:700 var(--type-emergency)/1 var(--font-ui);font-variant-numeric:lining-nums tabular-nums;color:var(--danger)}
.practical-emergency h2{margin:0 0 4px}.practical-emergency p{margin:0;color:var(--secondary)}
.practical-emergency .emergency-actions{display:grid;justify-items:start;gap:8px;max-width:30ch}
.practical-emergency .text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;line-height:1.3}
.practical-emergency .text-link svg{flex:none}
.practical-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.practical-topic{display:grid;grid-template-columns:44px minmax(0,1fr) 16px;align-content:start;align-items:start;gap:12px;padding:20px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);color:var(--text);text-decoration:none;transition:background var(--quick),border-color var(--quick),transform var(--quick)}
.practical-topic .topic-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-lg);background:var(--soft);color:var(--primary)}
.practical-topic .topic-icon svg{width:22px;height:22px}
.practical-topic>svg{width:16px;height:16px;margin-top:14px;color:var(--secondary)}
.practical-topic h3{font:600 var(--type-setting-title)/1.25 var(--font-ui);margin:0 0 8px;line-height:1.2;text-wrap:balance;overflow-wrap:break-word;hyphens:manual}
.practical-topic p{margin:0;color:var(--secondary);font-size:var(--type-secondary);line-height:1.4}
@media(hover:hover) and (pointer:fine){.practical-topic:hover{border-color:var(--primary);background:var(--control-hover)}.practical-emergency .text-link:hover{color:var(--primary);text-decoration:underline;text-underline-offset:4px}}
.practical-topic:active{background:var(--control-press);transform:scale(.98)}
.practical-topic:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
@media(min-width:1280px){.practical-topics{grid-template-columns:repeat(3,minmax(0,1fr))}.practical-topic{grid-template-columns:minmax(0,1fr) 16px}.practical-topic .topic-icon{grid-column:1}.practical-topic>div{grid-column:1/-1}.practical-topic>svg{grid-column:2;grid-row:1}}
@media(max-width:759px){main[data-page=practical] .practical-emergency{grid-template-columns:auto minmax(0,1fr);gap:16px;padding:16px}.practical-emergency .emergency-actions{grid-column:1/-1;max-width:none;justify-items:stretch}.practical-emergency .text-link{justify-content:center}.practical-topics{grid-template-columns:1fr;gap:12px}.practical-topic{padding:16px}}
@media(prefers-reduced-motion:reduce){.practical-topic:active{transform:none}}
main[data-page=practical-article] .article-heading{max-width:680px}
.article-intro{display:flex;align-items:flex-start;gap:16px;margin-top:16px}
.article-intro .topic-icon{display:grid;place-items:center;width:44px;height:44px;flex:none;background:var(--soft);color:var(--primary);border-radius:var(--r-lg)}
.article-intro .topic-icon svg{width:22px;height:22px}.article-intro .lead{margin:0}
main[data-page=practical-article] .article-layout{grid-template-columns:minmax(0,680px) 240px;gap:32px;align-items:start}
main[data-page=practical-article] .article-main{min-width:0}
main[data-page=practical-article] .article-aside{position:sticky;top:16px;min-width:0}
main[data-page=practical-article] .article-aside h2{font:600 var(--type-control-label)/1.25 var(--font-ui);margin:0 12px 12px}
main[data-page=practical-article] .article-aside nav{display:grid;gap:4px}
main[data-page=practical-article] .article-aside a{display:grid;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:0;border-radius:var(--r-md);color:var(--secondary);font-size:var(--type-button-m);line-height:1.3;text-decoration:none;transition:background var(--quick),color var(--quick)}
main[data-page=practical-article] .article-aside a svg{width:18px;height:18px}
main[data-page=practical-article] .article-aside a svg:last-child{width:16px;height:16px}
main[data-page=practical-article] .article-aside a[aria-current]{background:var(--soft);color:var(--control-selected);font-weight:600}
main[data-page=practical-article] .article-toc{border-block:1px solid var(--border);padding:0;margin:0 0 24px}
.article-toc summary{min-height:44px;padding:12px 8px;border-radius:var(--r-md);font:600 var(--type-control-label)/1.3 var(--font-ui);cursor:pointer}
.article-toc nav{padding:4px 0 12px;display:grid;gap:4px}
.article-toc nav a{display:grid;grid-template-columns:24px minmax(0,1fr) 16px;gap:8px;align-items:start;min-height:44px;padding:12px 8px;border-radius:var(--r-md);color:var(--text-2);font-size:var(--type-secondary);line-height:1.35;text-decoration:none;transition:background var(--quick),color var(--quick)}
.article-toc nav a svg{width:16px;height:16px;margin-top:2px}.article-toc .toc-number{font-variant-numeric:lining-nums tabular-nums;color:var(--primary);font-weight:600}
main[data-page=practical-article] .article p{margin:0 0 24px;text-wrap:pretty}
main[data-page=practical-article] .article p strong{font-weight:600}
.article-related>h2{margin-bottom:12px}
.article-related .related-articles{margin-top:0}
@media(hover:hover) and (pointer:fine){main[data-page=practical-article] .article-aside a:hover,.article-toc nav a:hover,.article-toc summary:hover{background:var(--ink-8);color:var(--text)}}
main[data-page=practical-article] .article-aside a:active,.article-toc nav a:active,.article-toc summary:active{background:var(--ink-12);color:var(--text)}
@media(min-width:760px) and (max-width:1099px){main[data-page=practical-article] .article-layout{grid-template-columns:minmax(0,1fr) 208px;gap:24px}}
@media(max-width:759px){main[data-page=practical-article] .article-layout{grid-template-columns:minmax(0,1fr);gap:24px}main[data-page=practical-article] .article-aside{position:static;border-top:1px solid var(--border);padding-top:24px}main[data-page=practical-article] .article-aside nav{grid-template-columns:repeat(2,minmax(0,1fr))}main[data-page=practical-article] .article-aside a{padding:8px;grid-template-columns:minmax(0,1fr) 16px}main[data-page=practical-article] .article-aside a>svg:first-child{display:none}.article-related .related-articles{grid-template-columns:1fr}}
main[data-page=help] .help-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:24px}
main[data-page=help] .help-toolbar [data-origin-slot]{min-width:0;flex:1}
main[data-page=help] .help-toolbar .origin-line-button{margin:0;max-width:100%;height:auto;min-height:48px;justify-content:flex-start;text-align:left;white-space:normal;padding:8px 12px}
main[data-page=help] [data-help-mount]{display:block;min-height:0;margin:0}
.help-filter-bar{position:sticky;top:0;z-index:5;background:var(--bg);padding:8px 0 12px;margin-bottom:16px}
.help-filter-bar .help-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;height:auto;gap:2px;max-width:760px}
.help-filter-bar .help-filters>button{min-width:0;min-height:44px;height:auto;padding:8px 10px;gap:8px;white-space:normal;line-height:1.25}
.help-filter-bar .help-filters>button::after{inset:0}
.help-count{font-size:var(--type-control-caption);font-variant-numeric:lining-nums tabular-nums}
#help-results>h2{display:flex;align-items:center;gap:8px;margin:0 0 16px}
.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
main[data-page=help] .help-row{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:16px;margin:0;min-width:0}
main[data-page=help] .help-row h3{font:600 var(--type-help-name)/1.3 var(--font-ui);margin:0;overflow-wrap:break-word;hyphens:manual;text-wrap:pretty}
.help-facts{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px}
.help-facts .stat-chip{display:inline-flex;gap:6px;align-items:center;font-variant-numeric:lining-nums tabular-nums}
.help-facts .stat-chip svg{width:16px;height:16px;flex:none}
.help-facts .status-pill{max-width:100%;font-variant-numeric:lining-nums tabular-nums}
.casualty-badge{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 10px;border-radius:var(--r-sm);background:var(--danger-tint);color:var(--danger);font:600 var(--type-control-caption)/1.25 var(--font-ui)}
.casualty-badge svg{width:16px;height:16px;flex:none}
main[data-page=help] .help-row .actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:4px}
main[data-page=help] .help-row .button{width:100%;min-width:0;justify-content:center;gap:8px}
.help-row .button span{min-width:0;font-variant-numeric:lining-nums tabular-nums}
.help-further{margin-top:32px;max-width:680px}
.help-empty{grid-column:1/-1;max-width:360px;justify-self:center;border:0;padding:24px 8px}
.help-empty h3{margin:12px 0 16px}.help-empty-icon{display:grid;place-items:center;width:56px;height:56px;margin:auto;border-radius:var(--r-card);background:var(--soft);color:var(--primary)}
.help-empty-icon svg{width:28px;height:28px}
@media(min-width:1280px){.help-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:759px){main[data-page=help] .help-toolbar{align-items:stretch;flex-direction:column;gap:8px}main[data-page=help] .help-toolbar .origin-line-button{width:100%;padding-inline:0}.help-filter-bar{top:56px}.help-filter-bar .help-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.help-grid{grid-template-columns:1fr;gap:12px}main[data-page=help] .help-row .actions{flex-direction:row;flex-wrap:wrap}main[data-page=help] .help-row .button{width:auto;flex:1 1 100%}}
.js main[data-page=help] [data-shell-origin-slot]:empty{min-height:0}
.help-filter-bar .help-filters>button{margin:0}
.help-filter-bar .help-filters>button::before{inset:0}
@media(max-width:759px){main[data-page=help] .help-toolbar{margin-bottom:12px}.help-filter-bar{padding-top:4px}}
main[data-page=help] .help-row h3{font-variant-numeric:lining-nums}
.casualty-badge svg{color:var(--danger)}
[data-theme=dark] .casualty-badge{color:var(--text)}
.article-toc summary{display:flex;align-items:center;justify-content:space-between;gap:12px}
.article-toc summary svg{width:20px;height:20px;flex:none;transition:transform var(--quick)}
.article-toc[open] summary svg{transform:rotate(180deg)}
main[data-page=settings] .settings-grid{display:grid;columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
main[data-page=settings] .settings-group{margin:0;padding:16px;container-type:normal;min-width:0}
main[data-page=settings] .settings-group h2{margin:0 0 8px;color:var(--secondary);font-size:var(--type-caption);font-weight:700;letter-spacing:.05em}
main[data-page=settings] .setting-row{display:flex;align-items:center;gap:12px;min-height:56px;width:100%;min-width:0;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none;padding:8px 0;text-align:left;white-space:normal;font-size:var(--type-secondary);font-weight:500;color:var(--text)}
main[data-page=settings] .setting-row>span{min-width:0}
main[data-page=settings] button.setting-row{height:auto}
main[data-page=settings] .setting-label{font-weight:600;flex:1}
main[data-page=settings] .setting-row>svg{width:20px;height:20px;flex:none;color:var(--primary)}
main[data-page=settings] .setting-row>svg:last-child{margin-left:auto;color:var(--tertiary);width:16px}
main[data-page=settings] .setting-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--soft);color:var(--primary);flex:none}
main[data-page=settings] button.setting-row:focus-visible,main[data-page=settings] .settings-links>a:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:8px}
main[data-page=settings] button.setting-row:active{background:var(--ink-8)}
main[data-page=settings] .unit-row{gap:8px;flex-wrap:wrap}
main[data-page=settings] :is(.unit-row,.speed-row)>.setting-label{flex:1 0 auto;min-width:max-content}
main[data-page=settings] .unit-row .segmented{flex:none;max-width:100%}
main[data-page=settings] :is(.unit-row,.speed-row) .segmented{--control-fill:1;width:min(100%,280px);grid-template-columns:repeat(4,minmax(0,1fr))}
main[data-page=settings] .unit-row .segmented{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}
main[data-page=settings] [data-unit-region]{min-height:2lh}
main[data-page=settings] .voice-loading{display:flex;align-items:center;min-height:56px;padding:8px 0;border-bottom:1px solid var(--border);font-size:var(--type-secondary)}
main[data-page=settings] :is(.settings-units,.settings-narration){container-type:inline-size}
@container(max-width:400px){.setting-row:is(.unit-row,.speed-row){display:grid;grid-template-columns:minmax(0,1fr);gap:8px}}
main[data-page=settings] .setting-hint{margin:12px 0 0;font-size:var(--type-caption)}
main[data-page=settings] .theme-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0 48px}
main[data-page=settings] .theme-picker>button{display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;justify-items:stretch;align-content:start;height:auto;min-height:120px;gap:8px;border:0;padding:4px;background:transparent;box-shadow:none;white-space:normal;min-width:0;border-radius:12px;color:var(--text);font-size:var(--type-caption)}
.theme-preview{display:flex;flex-direction:column;gap:8px;align-items:start;height:86px;border:1px solid var(--border);border-radius:10px;padding:12px;background:#f4f0e8;position:relative}
.theme-preview-dark{background:#0e1210}.theme-preview-system{background:linear-gradient(125deg,#f4f0e8 50%,#0e1210 50%)}
.theme-preview i{display:block;width:70%;height:6px;border-radius:2px;background:#4a413b}.theme-preview i:nth-child(2){width:90%;height:1px;background:#d2c5ae}.theme-preview i:nth-child(3){width:45%;height:16px;background:#0f6b50}.theme-preview-dark i{background:#f2ede4}.theme-preview-dark i:nth-child(3){background:#3fa87c}
.theme-label{display:flex;gap:6px;align-items:center;font-weight:600}.theme-label>i{display:block;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--ink-45);flex:none}
main[data-page=settings] .theme-picker>button{container-type:inline-size}
@container(max-width:100px){.theme-label{flex-direction:column;align-items:center;gap:4px;text-align:center}}
[data-theme-option][aria-checked=true] .theme-preview{outline:2px solid var(--primary);outline-offset:2px}[data-theme-option][aria-checked=true] .theme-label>i{border:5px solid var(--primary);background:var(--surface)}
main[data-page=settings] .theme-picker>button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
main[data-page=settings] .theme-picker>button:active{transform:scale(.98)}
main[data-page=settings] .speed-row{flex-wrap:wrap;gap:12px;border:0}
main[data-page=settings] [data-voice-choices] summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:8px 0;border:0;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;white-space:normal;font-size:var(--type-secondary)}
main[data-page=settings] [data-voice-choices] .chips{padding-block:12px}
main[data-page=settings] [data-voice-choices] button{white-space:normal;height:auto;min-height:44px;text-align:left}
main[data-page=settings] .setting-delete{color:var(--danger)}
main[data-page=settings] .setting-delete b{font-weight:600}main[data-page=settings] .setting-delete small{display:block;color:var(--secondary);font-size:var(--type-caption);font-weight:400;margin-top:4px}
main[data-page=settings] .setting-delete{container-type:inline-size}
@container(max-width:400px){.setting-delete small{min-height:2lh}}
main[data-page=settings] .setting-delete>svg{color:var(--danger)}
main[data-page=settings] .setting-delete:disabled{opacity:1;color:var(--secondary);background:var(--ink-4);cursor:default}
main[data-page=settings] .setting-delete:disabled>svg{color:var(--secondary)}
main[data-page=settings] .settings-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:12px}
main[data-page=settings] .settings-links>a{display:flex;align-items:center;gap:8px;min-height:44px;font-size:var(--type-secondary);border-radius:8px}
main[data-page=settings] .settings-links svg{width:18px;height:18px}
@media(hover:hover){main[data-page=settings] button.setting-row:hover:not(:disabled),main[data-page=settings] [data-voice-choices] summary:hover,main[data-page=settings] .settings-links>a:hover{background:var(--ink-6);border-radius:8px}main[data-page=settings] .theme-picker>button:hover{background:var(--ink-6)}}
@media(max-width:1099px){main[data-page=settings] .settings-grid{grid-template-columns:1fr}main[data-page=settings] .theme-picker{margin-left:0}}
main[data-page=offline] .offline-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
main[data-page=offline] .offline-layout>.offline-group-card{grid-column:auto}
main[data-page=offline] .panel{padding:20px;min-width:0;margin:0}
main[data-page=offline] h2{margin:0 0 12px}
main[data-page=offline] .offline-map-heading{align-items:start;min-height:0;flex-wrap:wrap}
main[data-page=offline] .offline-map-heading h2{display:flex;align-items:center;gap:8px}
main[data-page=offline] .offline-map-heading h2 svg{width:24px;height:24px;color:var(--primary)}
main[data-page=offline] [data-map-size]{font-size:var(--type-title);font-weight:600;margin:0 0 8px}
main[data-page=offline] .offline-map-card>.caption{margin:0 0 16px}
main[data-page=offline] .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
main[data-page=offline] .offline-map-card>.actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
main[data-page=offline] .actions>button{min-height:44px;height:auto;padding:10px 12px;flex:1 1 140px;white-space:normal}
main[data-page=offline] [data-map-cancel]{flex-basis:100%}
main[data-page=offline] .offline-explanation{display:flex;gap:16px}
main[data-page=offline] .offline-explanation>div{min-width:0}
main[data-page=offline] .offline-explanation .setting-icon{display:grid;place-items:center;background:var(--soft);color:var(--primary);width:40px;height:40px;flex:none;border-radius:12px}
main[data-page=offline] .offline-explanation p{margin:0 0 12px}
main[data-page=offline] .offline-explanation p:last-child{margin-bottom:0}
main[data-page=offline] [data-offline-groups]{display:block;min-height:0}
main[data-page=offline] .offline-group{display:grid;grid-template-columns:48px minmax(0,1fr) 44px;gap:8px 12px;padding:12px 0;border-bottom:1px solid var(--border);align-items:center;position:relative}
main[data-page=offline] .offline-group:last-child{border:0;padding-bottom:0}
main[data-page=offline] .offline-group>a{grid-column:1/3;display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;min-width:0;min-height:48px;border-radius:8px;color:var(--text);text-decoration:none;transition:background 160ms var(--ease-out)}
main[data-page=offline] .offline-group>a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
main[data-page=offline] .offline-group>a:active{background:var(--ink-8)}
main[data-page=offline] .offline-thumb{width:48px;height:48px;border-radius:8px;object-fit:cover;background:var(--soft);display:grid;place-items:center;color:var(--primary)}
main[data-page=offline] .offline-thumb>svg{width:24px;height:24px}
main[data-page=offline] .offline-group-name{display:block;font-size:var(--type-secondary);font-weight:600;line-height:1.25;overflow-wrap:break-word;hyphens:auto}
main[data-page=offline] .offline-group-meta{display:block;font-size:var(--type-caption);color:var(--secondary);margin-top:4px;font-variant-numeric:tabular-nums}
main[data-page=offline] .offline-group>button{grid-column:3;width:44px;height:44px;min-width:44px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;position:relative;white-space:normal}
main[data-page=offline] .offline-group>button svg{width:20px;height:20px}
main[data-page=offline] .offline-group>[data-delete-group]{grid-row:2;align-self:start;color:var(--danger);border-color:var(--danger)}
main[data-page=offline] .offline-group>[data-save-group]{grid-row:1}
main[data-page=offline] .offline-group>[data-save-group][data-ready=true]{color:var(--primary);background:var(--soft);box-shadow:inset 0 0 0 1px var(--primary)}
main[data-page=offline] .offline-group>output{grid-column:1/3;grid-row:2;min-width:0;line-height:1.3;font-size:var(--type-caption)}
main[data-page=offline] .offline-storage{margin-top:16px}
main[data-page=offline] [data-storage-estimate]{margin:0 0 8px;min-height:2lh}
main[data-page=offline] meter{display:block;width:100%;height:8px;border:0;border-radius:4px;background:var(--track);appearance:none}
main[data-page=offline] meter::-webkit-meter-bar{height:8px;background:var(--track);border:0;border-radius:4px}
main[data-page=offline] meter::-webkit-meter-optimum-value{background:var(--primary);border-radius:4px}
main[data-page=offline] meter::-moz-meter-bar{background:var(--primary);border-radius:4px}
main[data-page=offline] progress{position:static;height:8px;margin-top:12px}
@media(hover:hover){main[data-page=offline] .offline-group>a:hover{background:var(--ink-6)}main[data-page=offline] [data-save-group][data-ready=true]:hover{background:var(--ink-8)}}
@media(max-width:1099px){main[data-page=offline] .offline-layout{grid-template-columns:1fr}}
main[data-page=about] .about-intro{display:grid;gap:24px;align-items:start}
main[data-page=about] .about-intro-copy{display:grid;gap:16px;align-content:start}
main[data-page=about] .about-intro-copy .brand-tile{width:64px;height:64px;border-radius:14px;view-transition-name:none}
main[data-page=about] h1{margin:0;font-size:var(--type-display)}
main[data-page=about] .about-intro-copy p{margin:0}
main[data-page=about] .about-cover{position:relative;margin:0;min-width:0;align-self:stretch}
main[data-page=about] .about-cover picture,main[data-page=about] .about-cover img{width:100%;height:100%;min-height:280px;object-fit:cover;border-radius:var(--r-card)}
main[data-page=about] .about-cover figcaption{position:absolute;bottom:12px;left:12px;right:12px;width:fit-content;max-width:calc(100% - 24px);padding:8px 12px;background:var(--hero-chip-bg);color:var(--hero-chip-ink);border-radius:8px;font-size:var(--type-caption)}
main[data-page=about] .about-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
main[data-page=about] .about-stats>div{border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);padding:16px;display:grid;gap:8px;align-content:start}
main[data-page=about] .about-stats strong{font:700 var(--type-about-stat)/1 var(--font-ui);font-variant-numeric:lining-nums tabular-nums}
main[data-page=about] .about-stats span{font-size:var(--type-about-label);color:var(--secondary)}
main[data-page=about] .about-features{display:grid;gap:16px;margin-top:16px}
main[data-page=about] .about-features>div{display:grid;grid-template-columns:44px 1fr;gap:8px 12px;padding-block:16px;border-bottom:1px solid var(--border);align-content:start}
main[data-page=about] .about-feature-icon{grid-row:span 2;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--soft);color:var(--primary)}
main[data-page=about] .about-features h3{font:700 var(--type-setting-title)/1.3 var(--font-ui);margin:0}
main[data-page=about] .about-features p{margin:0;font-size:var(--type-secondary);color:var(--secondary)}
main[data-page=about] .about-tiers{display:grid;gap:16px;margin-top:16px}
main[data-page=about] .about-tier{padding:20px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);min-width:0}
main[data-page=about] .about-tier-heading{display:grid;gap:12px}
main[data-page=about] .about-tier strong{font:700 var(--type-tier-count)/1 var(--font-ui);font-variant-numeric:lining-nums tabular-nums}
main[data-page=about] .about-tier h3,main[data-page=about] .status-seal{font:700 var(--type-setting-title)/1.3 var(--font-ui);margin:0}
main[data-page=about] .about-tier p{font-size:var(--type-secondary);margin:12px 0 0}
main[data-page=about] .about-proportion{height:8px;border-radius:4px;background:var(--ink-8);margin-top:16px}
main[data-page=about] .about-proportion span{display:block;height:8px;min-width:2px;border-radius:4px;background:var(--primary)}
main[data-page=about] .about-sources{display:grid;gap:0 32px;margin:24px 0 0}
main[data-page=about] .about-sources>div{min-width:0;padding:16px 0;border-bottom:1px solid var(--border)}
main[data-page=about] .about-sources dt{font-weight:700;margin-bottom:8px}
main[data-page=about] .about-sources dd{margin:0;color:var(--secondary);font-size:var(--type-secondary)}
main[data-page=about] .text-link{min-height:44px;display:inline-flex;align-items:center;gap:8px;padding-block:8px;border-radius:8px}
main[data-page=about] .text-link:hover{background:var(--soft);color:var(--primary)}
main[data-page=about] .text-link:active{background:var(--ink-12);color:var(--text)}
main[data-page=about] .about-bottom{display:grid;gap:24px}
main[data-page=about] .about-bottom p{margin:12px 0}
main[data-page=about] .about-author{padding:20px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
main[data-page=about] .about-author h2{font:700 var(--type-author-name)/1.2 var(--font-title)}
main[data-page=about] .about-author>p:first-of-type{font-size:var(--type-about-label);color:var(--secondary)}
@media(min-width:760px){main[data-page=about] .about-intro{grid-template-columns:7fr 5fr}main[data-page=about] .about-stats{grid-template-columns:repeat(4,minmax(0,1fr))}main[data-page=about] .about-features,main[data-page=about] .about-sources,main[data-page=about] .about-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){main[data-page=about] .about-tiers,main[data-page=about] .about-features{grid-template-columns:repeat(3,minmax(0,1fr))}}
main[data-page=credits] .credit-list{columns:auto;display:grid;grid-template-columns:1fr;gap:24px;align-items:start}
main[data-page=credits] .credit-tile{display:grid;grid-template-columns:1fr;grid-template-rows:subgrid;grid-row:span 6;row-gap:8px;min-width:0;margin:0;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
main[data-page=credits] .credit-tile>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-card) var(--r-card) 0 0;background:var(--soft)}
main[data-page=credits] .credit-tile-copy{min-width:0;display:grid;grid-row:span 5;grid-template-rows:subgrid;justify-items:start;align-content:start;gap:8px;padding:12px 16px 16px}
main[data-page=credits] .credit-item h2{font-size:var(--type-credit-place);margin:0;max-width:100%;text-wrap:wrap;hyphens:none}
main[data-page=credits] .credit-item h2>a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;width:100%;max-width:100%;border-radius:var(--r-sm);padding-block:8px;text-decoration:none}
main[data-page=credits] .credit-item h2 svg{width:18px;height:18px;flex:none}
main[data-page=credits] .credit-tile-copy p{margin:0;overflow-wrap:break-word;font-size:var(--type-credit-author)}
main[data-page=credits] .credit-tile a{display:inline-flex;align-items:center;gap:4px;min-height:44px;max-width:100%;border-radius:var(--r-sm);padding:8px;overflow-wrap:break-word;text-decoration:underline;text-underline-offset:.2em}
main[data-page=credits] .credit-licence{min-width:44px;justify-content:center;font-size:var(--type-credit-licence);background:var(--soft);color:var(--primary);padding:8px;border-radius:var(--r-sm)}
main[data-page=credits] .credit-source{font-size:var(--type-credit-author);flex-wrap:wrap}
main[data-page=credits] .credit-source svg{width:14px;height:14px}
main[data-page=credits] .credit-item a:hover{background:var(--soft);color:var(--primary)}
main[data-page=credits] .credit-item a:active{background:var(--ink-12);color:var(--text);transform:scale(.98)}
main[data-page=credits] .credits-controls{gap:8px;position:relative;scroll-margin-top:80px}
main[data-page=credits] .credits-controls button{min-width:44px;height:44px;padding:0 8px}
main[data-page=credits] .credits-controls [aria-current=page]{background:var(--soft);color:var(--primary);font-weight:700;box-shadow:var(--control-edge-1)}
main[data-page=credits] .credit-jump{position:relative}
main[data-page=credits] .credit-jump summary{list-style:none;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;cursor:pointer;box-shadow:var(--control-edge-7)}
main[data-page=credits] .credit-jump summary::-webkit-details-marker{display:none}
main[data-page=credits] .credit-jump summary:hover{background:var(--soft)}
main[data-page=credits] .credit-jump form{position:fixed;z-index:5;width:220px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--lift-3);display:grid;gap:12px}
main[data-page=credits] .credit-jump label{display:grid;gap:8px}
main[data-page=credits] .credit-jump input{width:100%;height:44px}
main[data-page=credits] .credit-jump p{margin:0}
@media(min-width:760px){main[data-page=credits] .credit-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){main[data-page=credits] .credit-list{grid-template-columns:repeat(4,minmax(0,1fr))}}
main:is([data-page=search],[data-page="404"]) .search-field{display:flex;align-items:center;position:relative;gap:8px;height:48px;border-radius:12px;background:var(--elevated);box-shadow:inset 0 0 0 1.5px var(--ink-22);padding:0 4px 0 14px}
main:is([data-page=search],[data-page="404"]) .search-field>svg{width:20px;height:20px;color:var(--secondary);flex:none}
main:is([data-page=search],[data-page="404"]) .search-field input{flex:1;min-width:0;width:100%;height:48px;border:0;outline:0;box-shadow:none;background:transparent;padding:0;color:var(--text);font:400 var(--type-search-input)/1.2 var(--font-ui)}
main:is([data-page=search],[data-page="404"]) .search-field input::-webkit-search-cancel-button{appearance:none}
main:is([data-page=search],[data-page="404"]) .search-field:focus-within{box-shadow:inset 0 0 0 1.5px var(--primary),var(--halo)}
main:is([data-page=search],[data-page="404"]) .search-field:has(input:hover):not(:focus-within){box-shadow:inset 0 0 0 1.5px var(--ink-45)}
main:is([data-page=search],[data-page="404"]) .search-field button{box-shadow:none;flex:none}
main:is([data-page=search],[data-page="404"]) .search-field[data-loading=true]::after{content:'';position:absolute;bottom:1px;left:12px;right:12px;height:2px;background:var(--primary);transform-origin:left;animation:search-loading 1.2s ease-in-out infinite alternate}
@keyframes search-loading{from{transform:scaleX(.1)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){main:is([data-page=search],[data-page="404"]) .search-field[data-loading=true]::after{animation:none}}
main[data-page=search] .search-popular>.chips{gap:12px;margin-top:16px}
main[data-page=search] .search-popular button{height:auto;min-height:44px;white-space:normal;text-align:start}
@media(min-width:760px) and (max-width:1099px){main[data-page=search] .search-popular>.chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}main[data-page=search] .search-popular button{min-width:0}}
main[data-page=search] .search-collections{display:grid;gap:12px;margin-top:16px}
main[data-page=search] .search-collections article{position:relative;min-width:0;border-radius:12px;border:1px solid var(--border);background:var(--surface)}
main[data-page=search] .search-collections article>a{display:flex;align-items:center;gap:12px;min-height:96px;border-radius:12px;padding-right:44px}
main[data-page=search] .search-collections picture,main[data-page=search] .search-collections img{width:96px;height:96px;object-fit:cover;border-radius:12px 0 0 12px;flex:none}
main[data-page=search] .search-collections article>a>span{font:700 var(--type-setting-title)/1.25 var(--font-title);padding-block:12px;min-width:0}
main[data-page=search] .search-collections .credit-toggle{top:0;right:0}
main[data-page=search] .search-collections article>a:hover{background:var(--soft);color:var(--text)}
main[data-page=search] .search-collections article>a:active{background:var(--ink-12)}
main[data-page=search] [data-search-recents]{margin-bottom:24px}
main[data-page=search] .search-recent-list{display:grid;gap:8px}
main[data-page=search] .search-recent-row{display:flex;gap:8px;border-bottom:1px solid var(--border)}
main[data-page=search] .search-recent-query{flex:1;min-width:0;justify-content:flex-start;text-align:start;height:auto;min-height:44px;padding:8px;font-size:var(--type-search-input);gap:12px}
main[data-page=search] .search-recent-query:hover{background:var(--soft)}
main[data-page=search] [data-search-mount]>section{margin-bottom:24px;display:grid;grid-template-columns:minmax(0,1fr);gap:8px 16px}
main[data-page=search] [data-search-mount]>section>h2{grid-column:1/-1;margin:0 0 8px}
main[data-page=search] .search-row{position:relative;min-width:0}
main[data-page=search] .search-result{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;min-height:88px;padding:8px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none;text-decoration:none}
main[data-page=search] .search-result-visual,main[data-page=search] .search-result-visual picture,main[data-page=search] .search-result-visual img,main[data-page=search] .search-glyph,main[data-page=search] .search-result-visual .category-cover{width:72px;height:72px;border-radius:10px;object-fit:cover;aspect-ratio:1}
main[data-page=search] .search-glyph{display:grid;place-items:center;background:var(--soft);color:var(--primary)}
main[data-page=search] .search-glyph svg{width:28px;height:28px}
main[data-page=search] .search-result-copy{min-width:0;display:grid;gap:8px;align-content:center}
main[data-page=search] .search-result strong{font:500 var(--type-search-name)/1.2 var(--font-ui);overflow-wrap:break-word;hyphens:auto}
main[data-page=search] .search-result small{font-size:var(--type-search-meta);color:var(--secondary);line-height:1.3}
main[data-page=search] .search-result mark{background:transparent;color:var(--text);font-weight:700;text-decoration:none}
main[data-page=search] .search-result:hover,main[data-page=search] .search-result[data-focus=true]{background:var(--soft);border-radius:12px;outline:none}
main[data-page=search] .search-result:focus-visible{box-shadow:var(--ring-inner);border-radius:12px;outline:none}
main[data-page=search] .search-row>.credit-toggle{left:36px;right:auto;top:36px}
main[data-page=search] .search-empty{padding:32px 0;text-align:center;display:grid;justify-items:center;gap:16px}
main[data-page=search] .search-empty h2,main[data-page=search] .search-empty p{margin:0}
main[data-page=search] .search-empty-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:var(--soft);color:var(--primary)}
main[data-page=search] .search-empty .chips{justify-content:center;gap:12px}
main[data-page=search] .search-empty .chip{height:auto;min-height:44px;white-space:normal}
@media(min-width:760px){main[data-page=search] .search-collections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){main[data-page=search] .search-collections{grid-template-columns:repeat(3,minmax(0,1fr))}main[data-page=search] [data-search-mount]>section{grid-template-columns:repeat(2,minmax(0,1fr))}}
.shell-content:has(main[data-page="404"]){min-height:100dvh;display:flex;flex-direction:column}
main[data-page="404"]{flex:1}
main[data-page="404"] .not-found{display:grid;gap:24px;padding-top:24px;align-items:start}
main[data-page="404"] .lost-mark{width:96px;height:96px;justify-self:center}
main[data-page="404"] .lost-needle{transform-origin:481.53125px 512px;animation:lost-search 1.4s var(--spring) both}
@keyframes lost-search{0%{transform:rotate(-30deg)}60%{transform:rotate(20deg)}100%{transform:rotate(0)}}
main[data-page="404"] .not-found-copy{min-width:0}
main[data-page="404"] h1{font-size:var(--type-error-title);line-height:1.05;margin:12px 0 16px}
main[data-page="404"] .not-found-copy>.lead{margin:0 0 24px;max-width:60ch}
main[data-page="404"] .not-found-actions{display:grid;gap:12px}
main[data-page="404"] .not-found-actions form{min-width:0}
main[data-page="404"] .not-found-popular{margin-top:24px}
main[data-page="404"] .not-found-popular>.chips{margin-top:16px;gap:12px}
main[data-page="404"] .not-found-popular .chip{min-height:44px;height:auto;white-space:normal;text-align:start}
main[data-page="404"] .not-found-grid{display:grid;gap:16px;margin-top:16px}
main[data-page="404"] .row-card .row-text p.card-summary{display:block;overflow:visible;-webkit-line-clamp:unset}
main[data-page="404"] .not-found-grid .row-link{align-items:start}
@media(min-width:760px){main[data-page="404"] .not-found{grid-template-columns:160px minmax(0,1fr);gap:40px;padding-top:56px}main[data-page="404"] .lost-mark{width:160px;height:160px}main[data-page="404"] .not-found-actions{display:flex;gap:8px}main[data-page="404"] .not-found-actions form{flex:1;max-width:600px}main[data-page="404"] .not-found-grid{grid-template-columns:repeat(3,minmax(0,1fr))}main[data-page="404"] .not-found-grid .row-link{flex-direction:column}}
@media(min-width:1100px){main[data-page="404"] .not-found{grid-template-columns:200px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){main[data-page="404"] .lost-needle{animation:none}}
main[data-page=credits] .credits-controls [aria-current=page]:focus-visible{box-shadow:var(--ring)}
main:is([data-page=search],[data-page="404"]) .search-field input:is(:hover,:focus){box-shadow:none;outline:none}
main[data-page="404"] .not-found-grid .row-text h3{display:block;overflow:visible;-webkit-line-clamp:unset;min-height:0}
main[data-page=credits] .credits-controls>a.button{min-width:44px;height:44px;padding:0 8px}
@media(hover:hover) and (pointer:fine){main[data-page=credits] .credits-controls [aria-current=page]:hover:not(:focus-visible){background:var(--ink-12);color:var(--text)}main[data-page=credits] .credit-item a.credit-licence:hover{background:var(--primary);color:var(--on-primary)}}
main[data-page=credits] .credit-item a.credit-licence:active{background:var(--control-press);color:var(--text);transform:scale(.98)}
main[data-page=credits] .credits-controls>:is(button,a){height:36px;min-height:36px}
main[data-page=credits] .credit-jump>summary.button-s{position:relative;height:36px;min-height:36px}
main[data-page=credits] .credit-tile-copy>p{min-width:0;max-width:100%;width:100%}
#tgb-audio-root{left:264px;right:16px;bottom:16px;container-type:inline-size;z-index:24}
.audio-bar{height:auto;min-height:72px;border:1px solid var(--border);border-radius:18px;padding:8px 12px;gap:16px;background:var(--surface-elevated);box-shadow:var(--floating-shadow);display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,240px) auto;align-items:center;position:relative}
.audio-title{height:auto;min-height:52px;min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:12px;border:0;background:transparent;text-align:start;padding:0;border-radius:12px;overflow:visible}
.audio-thumb{width:48px;height:48px;border-radius:12px;overflow:hidden;flex:none}.audio-thumb img{width:100%;height:100%;object-fit:cover}.audio-copy{min-width:0;flex:1}.audio-copy strong{font:700 var(--type-audio-title)/1.25 var(--font-title);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;hyphens:auto;display:block}.audio-copy small{font:400 var(--type-audio-subtitle)/1.25 var(--font-ui);color:var(--secondary);white-space:normal;display:block;font-variant-numeric:tabular-nums}
.audio-centre{min-width:0;align-self:center;display:grid;grid-template-rows:52px 44px}.audio-transport{display:flex;align-items:center;justify-content:center;gap:8px;height:52px}.audio-bar .icon-button{height:44px;min-height:44px;width:44px;min-width:44px;padding:8px;border:0;background:transparent}.audio-play{display:block;position:relative;width:52px;min-width:52px;height:52px;min-height:52px;padding:0;border:0;border-radius:50%;background:var(--primary);color:var(--on-primary)}.audio-play>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:opacity 120ms ease-out}.audio-play svg{width:24px!important;height:24px!important}.audio-play .audio-pause-icon{opacity:0}.audio-play[data-playing=true] .audio-pause-icon{opacity:1}.audio-play[data-playing=true] .audio-play-icon{opacity:0}.audio-play:active{transform:scale(.96)}
.audio-right{display:flex;align-items:center;gap:8px}.audio-right>button,.audio-right>.button,.audio-popover>button,.audio-popover>.button{height:44px;min-height:44px;white-space:nowrap;font-size:var(--type-chip);padding:0 12px}.audio-speed{border-radius:24px;min-width:52px;font-variant-numeric:tabular-nums}.audio-right .audio-secondary{display:inline-flex;align-items:center;gap:8px}.audio-more-toggle,.audio-phone-play{display:none!important}.audio-rule{display:none}
.audio-progress{appearance:none;-webkit-appearance:none;display:block;width:100%;min-width:44px;height:44px;min-height:44px;border:0;border-radius:0;padding:0;margin:0;background:transparent;cursor:pointer;--progress:0}
.audio-centre>.audio-progress{position:static;height:44px;min-height:44px}.audio-progress::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,var(--primary) calc(var(--progress)*100%),var(--border) 0);box-shadow:none}.audio-progress::-moz-range-track{height:4px;border-radius:4px;background:var(--border)}.audio-progress::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;height:14px;width:14px;border-radius:50%;margin-top:-5px;background:var(--primary);opacity:0;transition:opacity 120ms}.audio-progress::-moz-range-thumb{height:14px;width:14px;border:0;border-radius:50%;background:var(--primary)}.audio-progress:is(:hover,:active,:focus-visible)::-webkit-slider-thumb{opacity:1}.audio-progress:focus-visible{outline-offset:0}.audio-progress::-moz-range-progress{height:4px;background:var(--primary)}
.audio-popover{position:fixed;inset:auto;margin:0;width:260px;max-width:calc(100vw - 16px);padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--elevated);color:var(--text);box-shadow:var(--floating-shadow)}.audio-popover .chips{display:flex;flex-wrap:nowrap;gap:4px}.audio-popover .chips button{flex:1;min-width:44px;padding:0 4px;height:44px;min-height:44px;font-size:var(--type-chip)}.audio-popover>button,.audio-popover>.button{width:100%;margin:0 0 4px}
.audio-player-sheet{width:680px;max-height:calc(100dvh - 32px)}.audio-player-sheet>.sheet-body{display:flex;flex-direction:column;overflow:hidden;min-height:0}.player-scroll{min-height:0;overflow:auto;overscroll-behavior:contain}.audio-player-sheet .player-photo{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:18px;max-height:300px;margin-bottom:16px}.audio-player-sheet .player-photo img{height:100%;width:100%;object-fit:cover}.audio-player-sheet .player-photo .credit-toggle{top:12px;right:12px;bottom:auto}.player-name{font-size:var(--type-player-title);line-height:1.2}.audio-player-sheet .narration-levels{margin:12px 0}.audio-player-sheet .narration-levels .chips{flex-wrap:nowrap}.audio-player-sheet .narration-levels button{flex:1;height:44px;min-height:44px;font-size:var(--type-chip)}.audio-player-sheet .narration-text{margin:12px 0;font-size:var(--type-body);line-height:1.6}.audio-player-sheet .narration-sentence{display:inline;min-height:0;height:auto;border-radius:0;padding:0;line-height:inherit;box-decoration-break:clone}.player-dock{flex:none;padding-top:8px;background:var(--surface);border-top:1px solid var(--border)}.player-dock>.data{font-size:var(--type-audio-subtitle);margin:0;text-align:center}.player-transport{display:flex;align-items:center;justify-content:center;gap:24px;margin:8px 0}.player-transport .icon-button{width:56px;height:56px;min-height:56px;border:0;background:transparent}.player-transport .audio-play{height:72px;min-height:72px;width:72px;min-width:72px}.player-preferences{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.player-preferences>.chips{gap:4px;flex-wrap:nowrap}.player-preferences .chips button{height:44px;min-height:44px;padding:0 8px;font-size:var(--type-chip)}.player-voices{position:relative;font-size:var(--type-chip)}.player-voices summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 8px;border:1px solid var(--border);border-radius:12px}.player-voices>div{position:absolute;right:0;bottom:48px;z-index:3;max-height:240px;overflow:auto;width:260px;padding:12px;background:var(--elevated);border:1px solid var(--border);border-radius:12px}.player-voices .chips{display:grid}.player-voices button{white-space:normal;text-align:start;height:auto;min-height:44px}.player-open{width:100%;height:52px;min-height:52px}.audio-bar button:focus-visible,.audio-player-sheet button:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.audio-title:hover,.audio-bar .icon-button:hover{background:var(--soft)}.audio-play:hover{filter:brightness(1.08)}
@container(max-width:1000px){.audio-right .audio-secondary{display:none}.audio-right .audio-more-toggle{display:inline-flex!important}.audio-bar{grid-template-columns:minmax(240px,1fr) minmax(160px,200px) auto;gap:12px}}
@media(min-width:760px) and (max-width:1099px){#tgb-audio-root{left:104px}}
@media(max-width:759px){#tgb-audio-root{left:8px;right:8px;bottom:calc(72px + env(safe-area-inset-bottom) + var(--vv-bottom,0px))}.audio-bar{display:flex;height:auto;min-height:64px;border-radius:18px;padding:8px;gap:8px;overflow:visible}.audio-title{flex:1;height:auto;min-height:48px;gap:8px}.audio-thumb{width:40px;height:40px;border-radius:8px}.audio-copy small{font-size:var(--type-audio-subtitle)}.audio-copy strong{font-size:var(--type-audio-title)}.audio-centre,.audio-speed,.audio-more-toggle,.audio-right .audio-more-toggle{display:none!important}.audio-phone-play{display:block!important}.audio-phone-play .audio-play{width:48px;min-width:48px;height:48px;min-height:48px}.audio-right{gap:4px}.audio-right>.icon-button{height:44px;min-height:44px}.audio-rule{display:block;inset:0 12px auto;height:2px}.audio-player-sheet{inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));margin:0}.audio-player-sheet>.drag-handle{display:none}.audio-player-sheet>header{padding-bottom:8px;min-height:44px;align-items:center}.audio-player-sheet>header h2{font-size:var(--type-chip)}.audio-player-sheet>.sheet-body{padding:0}.audio-player-sheet .player-photo{max-height:none;margin-bottom:12px}.player-transport{margin:4px 0;gap:24px}.player-preferences{margin-bottom:8px}.has-audio .site-footer{padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){.audio-play>span,.audio-progress::-webkit-slider-thumb{transition:none}.audio-play:active{transform:none}}
.audio-bar{padding-block:4px}
.audio-player-sheet .narration-sentence{display:block;width:100%;min-height:44px;padding:8px 0;margin:0;text-align:start}
.audio-progress::-webkit-slider-runnable-track{background-image:repeating-linear-gradient(90deg,transparent 0 calc(100% / var(--sentences,1) - 1px),color-mix(in srgb,var(--text) 16%,transparent) 0 calc(100% / var(--sentences,1))),linear-gradient(to right,var(--primary) calc(var(--progress)*100%),var(--border) 0)}
.has-audio .site-footer{padding-bottom:8px}.has-audio .shell-content{padding-bottom:calc(var(--player-h,72px) + 32px)}
@media(max-width:759px){.has-audio .site-footer{padding-bottom:16px}.has-audio .page-wrap{padding-bottom:24px}.has-audio .shell-content{padding-bottom:calc(var(--player-h,64px) + 100px + env(safe-area-inset-bottom))}}
.player-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.player-heading h3{min-width:0}.player-desktop-credit{position:relative;flex:none}.player-desktop-credit .credit-toggle{position:relative;inset:auto;color:var(--text)!important}.audio-player-sheet .player-photo{display:none}.player-desktop-credit .credit-toggle svg{background:var(--primary)}
@media(max-width:759px){.audio-player-sheet .player-photo{display:block;width:100%;max-height:none}.player-desktop-credit{display:none}}
#tgb-audio-root{max-width:1288px;margin-inline:auto}
.audio-player-sheet .player-photo{height:auto;aspect-ratio:16/10;position:relative;flex:none}.audio-player-sheet .player-photo:after{display:none}.audio-player-sheet .player-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.audio-player-sheet .player-photo>.credit-toggle{z-index:2}
.js .has-audio.map-active #map-root{height:calc(100dvh - var(--player-h,72px) - 32px)}
@media(max-width:759px){.js .has-audio.map-active #map-root{height:calc(100dvh - var(--player-h,64px) - 140px - env(safe-area-inset-bottom))}}
.js main[data-page=map] .phone-breadcrumb{display:none}
#tgb-resume-offer{height:70px;min-height:70px;margin-bottom:16px}
#tgb-resume-offer>[data-resume]{min-width:0;flex:1;height:52px;justify-content:flex-start}
#tgb-resume-offer>[data-resume]>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-resume-pending] main[data-page=home] [data-continue-slot]{min-height:86px}
.voice-fallback-actions{gap:12px;margin-top:12px}
@media(max-width:759px){.voice-fallback-actions{flex-direction:column}.voice-fallback-actions>button{width:100%}}
.has-audio #tgb-toast{bottom:calc(var(--player-h,72px) + 32px)}
@media(max-width:759px){.has-audio #tgb-toast{bottom:calc(var(--player-h,64px) + 84px + env(safe-area-inset-bottom))}}
.brand-frame{position:relative;display:block;flex:none;border-radius:9px;box-shadow:var(--brand-shadow);width:40px;height:40px}
.brand-frame::after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:var(--brand-highlight);pointer-events:none}
.brand-frame .brand-tile{width:100%;height:100%;border-radius:inherit}
.brand-lockup{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:8px;height:56px;min-height:56px;margin:8px 0;border-radius:14px;transition:background-color var(--quick),transform var(--quick)}
.wordmark{display:grid;gap:3px;font:700 var(--type-brand-name)/20px var(--font-title);letter-spacing:-.2px;color:var(--text)}
.wordmark>small{font:700 var(--type-brand-country)/14px var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--primary)}
.brand-lockup:hover,.mobile-brand:hover{background:var(--shell-hover)}
.brand-lockup:active,.mobile-brand:active{background:var(--shell-press);transform:scale(.98)}
.brand-lockup:active .wordmark>small{color:var(--text)}
:is(.brand-lockup,.mobile-brand,.nav-link,.shell-search):focus-visible{outline:none;box-shadow:var(--ring)}
.nav-link{border:0;position:relative;color:var(--shell-ink);font-size:var(--type-nav);font-weight:500;border-radius:10px;gap:12px}
.nav-link svg[role=none]{width:20px!important;height:20px!important}
.nav-link:hover{background:var(--shell-hover);color:var(--text)}
.nav-link:active{background:var(--shell-press);transform:scale(.985);opacity:1}
.nav-link[aria-current=page]{background:var(--soft);color:var(--shell-active);font-weight:700;border:0}
.nav-link[aria-current=page] svg{color:var(--primary)}
.nav-link[aria-current=page]:hover{background:color-mix(in srgb,var(--primary) 18%,var(--surface));color:var(--text)}
.nav-link .saved-badge{margin:0 0 0 auto;min-width:22px;height:22px;padding:0 7px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;background:var(--shell-hover);color:var(--text);font:700 var(--type-nav-count)/1 var(--font-ui);font-variant-numeric:tabular-nums lining-nums}
.nav-link[aria-current=page] .saved-badge{background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--shell-active)}
[data-theme=dark] .nav-link[aria-current=page] .saved-badge{color:var(--text)}
@media(min-width:760px){
.site-shell{padding:0 16px 16px;background:var(--surface);box-shadow:var(--brand-highlight)}
.site-shell nav{position:relative;margin:8px 0 12px;padding-top:9px;gap:4px}
.site-shell nav::before{content:'';height:1px;background:var(--border);position:absolute;top:0;left:0;right:0}
.nav-link{height:44px;min-height:44px;padding:0 12px}
.shell-search:hover{background:var(--shell-hover);color:var(--text)}
}
@media(min-width:760px) and (max-width:1099px){
.site-shell{display:flex;flex-direction:column;height:100dvh;padding:0 8px 12px}
.site-shell .brand-lockup{display:flex;justify-content:center;padding:8px;margin:8px 0}
.site-shell nav{margin:8px 0 12px}
.nav-link{width:72px;min-height:56px;height:auto;gap:4px;padding:6px 0;border-radius:12px;font-size:var(--type-nav-compact);font-weight:600;line-height:1.2}
.nav-link svg[role=none]{width:22px!important;height:22px!important}
.site-shell .shell-search{display:flex;width:44px;height:44px;min-height:44px;padding:0;margin:auto auto 6px;justify-content:center}
.site-shell .shell-search span,.site-shell .shell-search kbd{display:none}
.site-shell .shell-tools{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0;padding:0}
.shell-tools>.button{order:2;width:44px;min-height:44px;padding:0;justify-content:center}
.shell-tools>.button span{display:none}
.shell-tools .language-toggle{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0;width:72px;font:700 var(--type-locale)/1 var(--font-ui)}
.shell-tools .language-toggle svg[role=none]{width:20px;height:20px}
.nav-link .saved-badge{position:absolute;top:3px;left:calc(50% + 7px);margin:0;min-width:16px;height:16px;padding:0 4px;font-size:var(--type-min);background:var(--primary);color:var(--on-primary)}
}
@media(max-width:759px){
.site-shell{background:var(--surface);backdrop-filter:none}
.shell-content{padding-bottom:0}
.site-footer{padding-bottom:calc(64px + env(safe-area-inset-bottom) + 24px)}
.site-shell nav{align-items:stretch}
.nav-link{height:auto;min-height:64px;gap:3px;padding:5px 1px 7px;border-radius:0;font-size:var(--type-nav-compact);font-weight:600;line-height:1.2}
.nav-link::before{content:'';position:absolute;top:5px;left:calc(50% - 28px);width:56px;height:32px;border-radius:16px;pointer-events:none}
.nav-link svg[role=none]{position:relative;margin:4px 0}
.nav-link svg[role=none]{width:24px!important;height:24px!important}
.nav-link[aria-current=page]{background:transparent;color:var(--text)}
.nav-link[aria-current=page]::before{background:var(--soft)}
.nav-link[aria-current=page]:hover{background:var(--shell-hover)}
.nav-link>span{max-width:100%;overflow-wrap:break-word}
.nav-link .saved-badge{position:absolute;left:calc(50% + 7px);top:5px;margin:0;min-width:16px;height:16px;padding:0 4px;background:var(--primary);color:var(--on-primary);font-size:var(--type-min);box-shadow:0 0 0 2px var(--surface)}
.mobile-header{position:sticky;top:0;min-height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0;gap:4px;background:var(--surface);color:var(--text);backdrop-filter:none;border-bottom:1px solid transparent}
.mobile-header[data-scrolled=true]{border-bottom-color:var(--border)}
.mobile-header>a.mobile-brand{display:flex;align-items:center;gap:10px;min-width:0;min-height:44px;flex:1;border-radius:10px}
.mobile-header .brand-frame{width:32px;height:32px;border-radius:7px;box-shadow:var(--brand-phone-shadow)}
.mobile-header .header-title{min-width:0;overflow-wrap:break-word;hyphens:manual;text-wrap:balance;font:700 var(--type-brand-phone)/20px var(--font-title);white-space:normal;letter-spacing:-.15px}
.brand-short{display:none}
.mobile-header>.language-toggle,.mobile-header>.icon-button{flex:none}
.mobile-header .language-toggle{padding:0 8px;gap:4px;min-width:44px;font:700 var(--type-locale)/1 var(--font-ui);letter-spacing:.04em;border:0;background:transparent;color:var(--text)}
.mobile-header .language-toggle svg[role=none]{width:20px;height:20px}
.mobile-header .icon-button{padding:0;border:0;background:transparent;color:var(--text)}
.mobile-header :is(.language-toggle,.icon-button):hover{background:var(--shell-hover)}
.mobile-header :is(.language-toggle,.icon-button):active{background:var(--shell-press);transform:scale(.98)}
.mobile-header :is(.language-toggle,.icon-button):focus-visible{outline:none;box-shadow:var(--ring)}
}
@media(max-width:359px){.brand-full{display:none}.brand-short{display:inline}}
.shell-tools .language-toggle{border-radius:12px;font-weight:700;font-variant-numeric:lining-nums;transition:background-color var(--quick),transform var(--quick)}
.shell-tools .language-toggle:hover{background:var(--shell-hover)}
.shell-tools .language-toggle:active{background:var(--shell-press);transform:scale(.98)}
.shell-tools .language-toggle:focus-visible{outline:none;box-shadow:var(--ring)}
.skip:hover{background:var(--primary-hover);color:var(--on-primary)}
.skip:active{background:var(--primary-press);color:var(--on-primary);transform:scale(.98)}
.shell-tools>.button:hover{background:var(--shell-hover);color:var(--text)}
.store-plate>p>a,.store-plate>a.caption{display:flex;align-items:center;min-height:44px}
.store-plate>p>a:hover,.store-plate>a.caption:hover{background:var(--shell-hover);color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.store-plate .badges a{height:44px;min-height:44px;justify-content:center}
.store-plate .badges a:hover{filter:brightness(1.15);outline:1px solid var(--primary);outline-offset:1px}
@media(min-width:1100px){
.shell-tools{grid-template-columns:minmax(0,1fr) 132px}
}
html{background:var(--bg)}
@media(max-width:759px){.site-shell{bottom:var(--vv-bottom,0px)}}
html{-webkit-tap-highlight-color:transparent}
::selection{background:var(--selection-bg);color:var(--selection-ink)}
button,.button{--button-height:44px;--button-type:var(--type-button-m);--button-pad:16px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--button-height);height:var(--button-height);min-width:44px;max-width:100%;padding:0 var(--button-pad);border:0;border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:none;font:600 var(--button-type)/1.15 var(--font-ui);text-decoration:none;white-space:normal;cursor:pointer;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out),box-shadow 160ms var(--ease-out),transform 160ms var(--ease-out)}
:is([data-control],.button,.icon-button,.action-tile,.region-toggle,.mini-map-activate,.audio-play,.audio-speed,.audio-secondary){box-shadow:var(--control-edge-7);white-space:nowrap}
button>svg,.button>svg{width:18px;height:18px;flex:none}
.button.primary,button.primary{--button-height:48px;--button-type:var(--type-button-l);--button-pad:20px;min-width:120px;font-weight:700;letter-spacing:.01em;background:var(--primary);color:var(--on-primary);box-shadow:var(--edge-primary),var(--lift-1)}
[data-theme=dark] :is(.button.primary,button.primary){box-shadow:var(--edge-primary)}
.button.primary>svg,button.primary>svg{width:20px;height:20px}
.button.quiet,button.quiet{background:transparent;color:var(--text);box-shadow:none}
.button.danger,button.danger,:is([data-delete-local],[data-delete-group],[data-map-delete],[data-delete-trip]){color:var(--danger);box-shadow:var(--control-edge-2)}
dialog .danger.primary{--primary:var(--danger-fill);--primary-hover:var(--danger-hover);--primary-press:var(--danger-press);--on-primary:var(--on-danger);background:var(--primary);color:var(--on-primary)}
.button.button-s,button.button-s{--button-height:36px;--button-type:var(--type-button-s);--button-pad:12px;gap:6px;border-radius:var(--r-md);min-width:44px}
.button-s::after{content:'';position:absolute;inset:-4px 0;border-radius:inherit}
.button-s>svg{width:16px;height:16px}
.button.button-m,button.button-m{--button-height:44px;--button-type:var(--type-button-m);--button-pad:16px}
.icon-button{display:inline-flex;align-items:center;justify-content:center;--button-pad:0;min-width:44px;width:44px;height:44px;min-height:44px;flex:none}
.icon-button>svg{width:20px!important;height:20px!important}
.actions{gap:8px;align-items:stretch;flex-wrap:wrap}
.actions:has(>.primary)>:is(button,.button){height:48px;min-height:48px}
.actions:has(>.primary)>.icon-button{width:48px}
.directions-links .button,.collection-actions .button{height:44px;min-height:44px}
:is([data-control],.button,.icon-button,.action-tile,.region-toggle,.mini-map-activate,.audio-play,.audio-speed,.audio-secondary)[aria-pressed=true]:where(:not(.primary):not([role=switch]):not([role=radio]):not(.chip):not(.filters button):not([data-budget])){background:var(--soft);color:var(--control-selected);box-shadow:var(--control-edge-5)}
:is(button,.button):is(:active,[data-pressed]):not(:disabled):not([aria-disabled=true]){transform:scale(.97);opacity:1;transition-duration:90ms}
:is(button,.button):is(:active,[data-pressed]):not(:disabled):not([aria-disabled=true]):where(:not(.primary),.danger){background:var(--control-press);color:var(--text)}
:is(.button.primary,button.primary):is(:active,[data-pressed]):not(:disabled):not([aria-disabled=true]){background:var(--primary-press);color:var(--on-primary);box-shadow:var(--primary-pressed-shadow)}
:is(button,.button):is(:disabled,[aria-disabled=true]):not([aria-busy=true]):not([data-success=true]){opacity:1;background:var(--ink-6);color:var(--secondary);box-shadow:var(--control-edge-8);cursor:not-allowed;transform:none}
:is(button,.button)[aria-busy=true]{opacity:1;cursor:progress;pointer-events:none;font-variant-numeric:lining-nums tabular-nums}
:is(button,.button)[data-success=true]>.control-success-icon{color:var(--primary)}
:is(button,.button).primary[data-success=true]>.control-success-icon{color:var(--on-primary)}
.control-success-icon[role=none]{stroke-width:2.4}
.control-success-icon use{stroke-dasharray:32;animation:control-check 180ms var(--ease-out) both}
@keyframes control-check{from{stroke-dashoffset:32}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.control-success-icon use{animation:none}}
:focus:not(:focus-visible){outline:none}
@media(hover:hover) and (pointer:fine){
:is(button,.button):hover:where(:not(:disabled):not([aria-disabled=true]):not(:active):not([data-pressed])){background:var(--control-hover);color:var(--text)}
:is([data-control],.button,.icon-button,.action-tile,.region-toggle,.mini-map-activate,.audio-play,.audio-speed,.audio-secondary):hover:where(:not(:disabled):not([aria-disabled=true]):not(:active):not([data-pressed])){box-shadow:var(--control-edge-5)}
:is(.button.primary,button.primary):hover:not(:disabled):not([aria-disabled=true]):where(:not(:active):not([data-pressed])){background:var(--primary-hover);color:var(--on-primary);box-shadow:var(--edge-primary),var(--primary-lift);transform:translateY(-1px)}
:is(button.quiet,.button.quiet):hover:where(:not(:disabled):not([aria-disabled=true]):not(:active):not([data-pressed])){background:var(--ink-6);color:var(--text);box-shadow:none}
:is(.danger,[data-delete-local],[data-delete-group],[data-map-delete],[data-delete-trip]):hover:not(:disabled):not([aria-disabled=true]):where(:not(:active):not([data-pressed])){background:var(--danger-tint);color:var(--danger);box-shadow:var(--control-edge-2)}
}
.chip,.filters :is(.chip,button),.map-filters .chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;position:relative;height:36px;min-height:36px;min-width:44px;padding:0 14px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--text);box-shadow:var(--control-edge-12);font:500 var(--type-button-s)/1.15 var(--font-ui);white-space:nowrap}
:is(a,button).chip::after,.filters button::after{content:'';position:absolute;inset:-4px 0;border-radius:inherit}
.chips,.map-filters{gap:8px}
.chip svg[role=none]{width:16px;height:16px;color:var(--hue,var(--primary))}
.chip:is(.active,[aria-pressed=true]),.filters button[aria-pressed=true]{background:var(--soft);color:var(--control-selected);font-weight:600;box-shadow:var(--control-edge-5)}
.chip[aria-pressed=true] .filter-category{display:none}
.chip .filter-check{display:none}
.chip[aria-pressed=true] .filter-check{display:block;color:var(--primary)}
:is(span,p).chip,.stat-chip{height:auto;min-height:32px;min-width:0;padding:6px 10px;border-radius:var(--r-sm);background:var(--ink-6);color:var(--text-2);box-shadow:none;font:600 var(--type-stat)/1.25 var(--font-ui);white-space:normal}
.card-body .chip,.explore-layout .card-body .chip{display:inline-flex;align-self:flex-start;justify-content:flex-start;text-align:start;max-width:100%;height:auto;overflow:visible;text-overflow:clip;white-space:normal;min-height:28px;line-height:1.25;font-size:var(--type-control-caption)}
.hero-title .chip{height:auto;min-height:28px;white-space:normal}
@media(hover:hover) and (pointer:fine){:is(a,button).chip:hover,.filters button:hover{background:var(--elevated);color:var(--text);box-shadow:var(--control-edge-13)}}
.segmented,.settings-group .segmented,.level-tabs{display:inline-flex;flex-wrap:nowrap;align-items:stretch;gap:2px;position:relative;max-width:100%;width:max-content;height:40px;min-height:40px;padding:3px;border:0;border-radius:var(--r-lg);background:var(--track);overflow:visible;mask-image:none}
.segmented>button,.settings-group .segmented>button,.level-tabs>a{position:relative;flex:1 1 0;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;height:34px;min-height:34px;min-width:44px;padding:0 10px;margin:0;border:0;border-radius:var(--r-segment);background:transparent;color:var(--secondary)!important;box-shadow:none;font:500 var(--type-button-s)/1.15 var(--font-ui);white-space:nowrap;text-decoration:none}
.segmented>button::after,.level-tabs>a::after{content:'';position:absolute;inset:-5px 0;border-radius:inherit}
.segmented>button:is([aria-pressed=true],[aria-checked=true]),.level-tabs>a[aria-selected=true]{--segment-bg:var(--thumb);--segment-shadow:var(--thumb-shadow);color:var(--text)!important;font-weight:600}
.level-tabs{width:max-content;max-width:360px;margin-bottom:24px}
.level-tabs::after{content:none}
.level-tabs:not([role=tablist])>a:first-child{--segment-bg:var(--thumb);--segment-shadow:var(--thumb-shadow);color:var(--text)!important}
.settings-group .segmented{height:36px;min-height:36px;padding:2px}
.settings-group .segmented>button{height:32px;min-height:32px;padding-inline:10px}
.settings-group .segmented>button::after{inset:-6px 0}
.choice-group:not(.segmented){gap:8px;flex-wrap:wrap;overflow:visible;mask-image:none}
.choice-group:not(.segmented)>button{font-size:var(--type-button-s)}
.dial-budget [data-transport]{margin:16px 0;text-align:center}
.dial-budget [data-transport]>.segmented{margin:0}
@media(hover:hover) and (pointer:fine){
.segmented>button:hover:not(:disabled),.settings-group .segmented>button:hover,.level-tabs>a:hover{--segment-bg:var(--ink-6);--segment-shadow:none;color:var(--text)!important}
.segmented>button[aria-pressed=true]:hover,.level-tabs>a[aria-selected=true]:hover{--segment-bg:var(--thumb);--segment-shadow:var(--control-edge-14)}
}
@media(max-width:759px){.level-tabs{width:100%}.segmented>button{padding-inline:8px}}
@media(max-width:379px){.level-tabs>a{font-size:var(--type-control-caption)}}
input:where(:not([type=range]):not([type=checkbox]):not([type=radio])),select{height:44px;min-height:44px;border:0;border-radius:var(--r-lg);padding:0 14px;background:var(--elevated);color:var(--text);box-shadow:var(--control-edge-3);font:400 var(--type-control-label)/1.25 var(--font-ui);transition:box-shadow var(--quick)}
input::placeholder{color:var(--secondary);opacity:1}
input[type=search]::-webkit-search-cancel-button{appearance:none}
input:not([type=range]):focus,select:focus{outline:none;box-shadow:var(--control-edge-6)}
input[aria-invalid=true]{box-shadow:var(--control-edge-2);background:var(--danger-tint)}
.explore-search form{height:48px;border:0;background:var(--elevated);box-shadow:var(--control-edge-3)}
.explore-search form:focus-within{box-shadow:var(--control-edge-6)}
.explore-search input[type=search]{height:44px;box-shadow:none;padding:0;background:transparent}
.explore-search input:focus{box-shadow:none}
.explore-search svg{width:20px;height:20px;color:var(--secondary)}
@media(hover:hover) and (pointer:fine){input:not([type=range]):hover:not(:focus){box-shadow:var(--control-edge-4)}}
button[role=switch]{display:flex;justify-content:space-between;gap:16px;min-height:44px;height:auto;padding:8px 0;background:transparent;color:var(--text);box-shadow:none;white-space:normal;text-align:start}
.switch-track{position:relative;display:block;flex:none;width:48px;height:28px;border-radius:var(--r-xl);background:var(--ink-22);transition:background-color 200ms var(--ease-out)}
.switch-thumb{position:absolute;left:2px;top:2px;display:grid;place-items:center;width:24px;height:24px;border-radius:var(--r-round);background:var(--switch-off-thumb);color:var(--primary);box-shadow:var(--switch-shadow);transition:transform 200ms var(--ease-out),width 90ms}
.switch-thumb svg{width:12px;height:12px;opacity:0}
[role=switch][aria-checked=true] .switch-track{background:var(--primary)}
[role=switch][aria-checked=true] .switch-thumb{transform:translateX(20px);background:var(--switch-thumb)}
[role=switch][aria-checked=true] .switch-thumb svg{opacity:1}
[role=switch]:active .switch-thumb{width:30px}
[role=switch][aria-checked=true]:active .switch-thumb{transform:translateX(14px)}
@media(hover:hover) and (pointer:fine){button[role=switch]:hover{background:var(--ink-4);color:var(--text);box-shadow:none}}
.link-card{min-height:64px;gap:12px;padding:12px 16px;border-radius:var(--r-card)}
.link-card>svg:first-child{width:40px;height:40px;flex:none;padding:9px;border-radius:var(--r-md);background:var(--soft);color:var(--primary)}
.link-card h3{font:600 var(--type-control-label)/1.25 var(--font-ui)}
.link-card p{font-size:var(--type-control-caption);margin-top:4px}
.link-card>svg:last-child:not(:first-child){width:20px;height:20px;flex:none;color:var(--tertiary)}
.link-card:active{background:var(--ink-8);transform:scale(.995)}
@media(hover:hover) and (pointer:fine){.link-card:hover{background:var(--control-hover);border-color:var(--primary);box-shadow:none;transform:none}}
.status-pill,[data-live-status]{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:6px 10px;border-radius:var(--r-pill);background:var(--ink-6);color:var(--secondary);font:600 var(--type-control-caption)/1.25 var(--font-ui)}
.status-pill::before,[data-live-status]::before{content:'';width:8px;height:8px;flex:none;border-radius:var(--r-round);background:var(--tertiary)}
:is(.status-pill,[data-live-status])[data-state=open]{background:var(--soft);color:var(--control-selected)}
:is(.status-pill,[data-live-status])[data-state=open]::before{background:var(--primary)}
:is(.status-pill,[data-live-status])[data-state=soon]{background:var(--warning-tint);color:var(--warning-ink)}
:is(.status-pill,[data-live-status])[data-state=soon]::before{background:var(--warning)}
.text-link,.tertiary-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--primary);font-weight:700;text-decoration:none}
.text-link svg{width:16px;height:16px}
@media(hover:hover) and (pointer:fine){.text-link:hover,.tertiary-link:hover{color:var(--control-selected);text-decoration:underline;text-underline-offset:3px}}
.continue-row>a{display:flex;flex:1;align-items:center;gap:8px;min-width:0;min-height:44px;padding:4px 8px;border-radius:var(--r-sm);color:var(--text);white-space:normal;overflow-wrap:break-word;hyphens:auto}
.continue-row>a>span{min-width:0}
.continue-row>a:hover{background:var(--soft);color:var(--text)}
.continue-row>a:active{background:var(--control-press);color:var(--text)}
.breadcrumbs{display:flex;align-items:center;gap:6px;min-height:44px;height:auto;flex-wrap:wrap;margin-bottom:8px;font:500 var(--type-breadcrumb)/1.25 var(--font-ui)}
.breadcrumbs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;color:var(--secondary);text-decoration:underline;text-decoration-color:var(--ink-22);text-underline-offset:3px}
.breadcrumbs [aria-current=page]{font-weight:600;color:var(--text);max-width:28ch;white-space:normal;overflow:visible;text-overflow:clip}
.breadcrumbs svg[role=none]{width:14px!important;height:14px!important}
.breadcrumbs a:active{color:var(--primary)}
@media(hover:hover) and (pointer:fine){.breadcrumbs a:hover{color:var(--text);text-decoration-color:currentColor;background:var(--ink-4)}}
@media(max-width:759px){.breadcrumbs{display:none}}
@media(prefers-reduced-motion:reduce){button,.button{transition:none;transform:none!important}}
.language-toggle{height:44px;min-height:44px;padding:0 10px 0 12px;gap:6px;font:700 var(--type-button-m)/1 var(--font-ui);letter-spacing:.04em;border:0;border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:var(--control-edge-3)}
.language-toggle>svg{width:18px;height:18px}
.language-chevron{display:flex}
.language-chevron svg{width:16px;height:16px;transition:transform var(--quick)}
.language-toggle[aria-expanded=true]{background:var(--soft);color:var(--control-selected);box-shadow:var(--control-edge-5)}
.language-toggle[aria-expanded=true] .language-chevron svg{transform:rotate(180deg)}
.language-options{position:fixed;inset:auto;z-index:500;box-sizing:border-box;margin:0;width:408px;max-width:calc(100vw - 32px);max-height:min(560px,calc(100dvh - 32px));padding:8px;overflow:visible;border:0;border-radius:var(--r-xl);background:var(--elevated);color:var(--text);box-shadow:var(--lift-3);isolation:isolate}
.language-options[open]{display:flex;flex-direction:column;animation:language-enter 160ms var(--ease-out)}
.language-header{display:flex;align-items:center;gap:12px;min-height:40px;flex:none;padding:0 4px 4px}
.language-header h2{font:700 var(--type-button-m)/1.2 var(--font-ui);margin:0;flex:none}
.language-header p{font:500 var(--type-control-caption)/1.2 var(--font-ui);color:var(--secondary);margin:0;text-align:end}
.language-header button{display:none}
.language-handle,.language-phone-label,.language-all{display:none}
.language-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.language-scroll ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;list-style:none;margin:0;padding:0}
.language-scroll li{margin:0;min-width:0}
.language-options [data-language-choice]{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;padding:6px 12px;border-radius:var(--r-md);color:var(--text);background:transparent;text-decoration:none;overflow:visible}
.language-options [data-language-native]{display:block;font:600 var(--type-control-label)/1.15 var(--font-ui)}
.language-options [data-language-caption]{display:block;margin-top:3px;font:500 var(--type-control-caption)/1.2 var(--font-ui);color:var(--secondary)}
.language-options [aria-current=true]{background:var(--soft);color:var(--control-selected)}
.language-options [aria-current=true] [data-language-native]{font-weight:700}
.language-options [aria-current=true] [data-language-caption]{color:var(--primary)}
.language-check{display:none;flex:none;color:var(--primary)}
.language-check svg{width:20px;height:20px}
.language-options [aria-current=true] .language-check,.language-options [data-chosen=true] .language-check{display:flex}
.language-options [data-language-choice]:focus-visible{outline:none;box-shadow:var(--ring-inner)}
.language-options [data-language-choice]:active{background:var(--ink-12)}
.language-options [data-chosen=true]{background:var(--soft);box-shadow:var(--control-edge-5)}
.language-highlight{position:absolute;left:0;top:0;z-index:-1;pointer-events:none;background:var(--ink-6);border-radius:var(--r-md);transition:transform 120ms var(--ease-out)}
@media(pointer:coarse){.language-highlight{display:none}}
[data-language-browser]{padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--border)}
.language-browser-label{padding:8px 12px 6px;font:700 var(--type-min)/1.2 var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--secondary)}
[data-browser-row]>a{min-height:56px}
[data-browser-row]>a>svg{width:20px;height:20px;flex:none}
.language-options::backdrop{background:var(--scrim)}
.shell-tools{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px}
.shell-tools>.language-toggle{max-width:none;padding:0 10px 0 12px;gap:6px}
.shell-tools>.button{grid-column:auto;width:44px;height:44px;min-width:44px;padding:0;justify-content:center;box-shadow:none}
.shell-tools>.button span{display:none}
.shell-tools .theme-cycle{height:44px;width:44px;min-width:44px;padding:0}
.shell-tools .theme-cycle>svg{width:20px;height:20px}
@media(hover:hover) and (pointer:fine){
.language-toggle:hover{background:var(--ink-6);color:var(--text)}
.language-toggle:hover>svg{transform:rotate(20deg)}
.language-options [data-language-choice]:hover{color:var(--text)}
}
.language-toggle>svg{transition:transform var(--quick)}
.language-toggle:active{background:var(--ink-12);transform:scale(.97)}
@media(min-width:760px) and (max-width:1099px){
.site-shell .shell-tools{display:flex;flex-direction:column;align-items:center;gap:6px}
.shell-tools>.language-toggle{width:72px;flex-direction:column;padding:0;gap:2px;font-size:var(--type-locale)}
.shell-tools .language-toggle>svg{width:20px;height:20px}
.language-chevron{display:none}
.shell-tools>.button{order:2}
.shell-tools .theme-cycle{order:3}
}
@media(max-width:759px){
.shell-tools{display:none}
.mobile-header .language-toggle{background:transparent;color:var(--text);box-shadow:none;font-size:var(--type-locale);padding:0 8px}
.language-chevron{display:none}
.language-options{inset:auto 0 0!important;width:100%;max-width:100%;max-height:calc(100dvh - env(safe-area-inset-top) - 24px)!important;padding:0 8px calc(16px + env(safe-area-inset-bottom));border-radius:var(--r-sheet) var(--r-sheet) 0 0;background:var(--surface);box-shadow:var(--lift-4)}
.language-handle{display:block;flex:none;width:36px;height:5px;border-radius:var(--r-pill);background:var(--ink-22);margin:8px auto 0}
.language-header{min-height:52px;padding:0 8px;justify-content:space-between}
.language-header h2{font:700 var(--type-language-title)/1.2 var(--font-title)}
.language-header p{display:none}
.language-header button{display:inline-flex}
.language-scroll ul{grid-template-columns:1fr}
.language-options [data-language-choice]{min-height:56px}
.language-options [data-language-native]{font-size:var(--type-body)}
.language-all{display:block;padding:12px 12px 8px;font:700 var(--type-min)/1.2 var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--secondary)}
.language-browser-label{padding-top:12px}
.language-desktop-label{display:none}
.language-phone-label{display:inline}
[data-browser-row]>a{min-height:60px;background:var(--elevated);box-shadow:var(--control-edge-10)}
[data-language-browser]{margin-bottom:0;border-bottom:0}
}
@keyframes language-enter{from{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.language-options[open]{animation:none}.language-highlight{transition:none}}
[data-language-offer-slot]{min-height:0}
html[data-language-offer=true] [data-language-offer-slot]{min-height:64px;margin-bottom:16px}
.language-offer{display:grid;grid-template-columns:36px minmax(0,1fr) 44px;gap:14px;align-items:center;padding:10px 8px 10px 14px;border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--control-edge-11)}
.language-offer>svg{width:36px;height:36px;padding:8px;background:var(--soft);color:var(--primary);border-radius:var(--r-md)}
.language-offer>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;align-items:center}
.language-offer p{margin:0;font:500 var(--type-control-caption)/1.25 var(--font-ui);color:var(--secondary)}
.language-offer p:first-child{font-size:var(--type-control-label);color:var(--text)}
.language-offer-actions{grid-column:2;grid-row:1/3;display:flex;gap:8px}
.language-offer .icon-button{width:44px;height:44px;min-height:44px;padding:0}
.language-offer-phone{display:none}
@media(max-width:1099px){.language-offer>div{display:block}.language-offer-actions{margin-top:8px}}
@media(max-width:759px){
html[data-language-offer=true] [data-language-offer-slot]{min-height:132px}
.language-offer{grid-template-columns:28px minmax(0,1fr) 36px;gap:10px;padding:12px 8px 12px 14px;align-items:start}
.language-offer>svg{width:28px;height:28px;padding:4px}
.language-offer>div{display:contents}
.language-offer p{grid-column:2}
.language-offer p:first-child{grid-row:1}
.language-offer p:nth-child(2){grid-row:2}
.language-offer-actions{grid-column:1/-1;grid-row:3;display:flex;margin-top:0;gap:8px}
.language-offer-actions :is(button,.button){flex:1;min-width:0;height:auto;min-height:36px;padding:8px;font-size:var(--type-button-s);white-space:normal;box-sizing:border-box}
.language-offer>[data-language-close]{grid-column:3;grid-row:1/3;width:36px;height:36px;min-height:36px}
.language-offer>[data-language-close]::after{content:'';position:absolute;inset:-4px;border-radius:inherit}
.language-offer-desktop{display:none}.language-offer-phone{display:inline}
}
.mobile-header :is(.language-toggle,.icon-button){box-shadow:none}
.hero-title .chip{background:var(--hero-chip-bg);color:var(--hero-chip-ink);box-shadow:var(--control-edge-9)}
@media(min-width:760px){.place-hero.lowres .chip{background:var(--bg);color:var(--text);box-shadow:var(--control-edge-12)}}
.segmented>button,.settings-group .segmented>button,.level-tabs>a{--segment-bg:transparent;--segment-shadow:none;isolation:isolate;height:44px;min-height:44px;margin-block:-5px;padding-block:5px;background:transparent;box-shadow:none}
.segmented>button::before,.level-tabs>a::before{content:'';position:absolute;inset:5px 0;z-index:-1;border-radius:inherit;background:var(--segment-bg);box-shadow:var(--segment-shadow);pointer-events:none}
.segmented>button::after,.level-tabs>a::after{content:none}
.settings-group .segmented>button{height:44px;min-height:44px;margin-block:-6px;padding-block:6px}
.settings-group .segmented>button::before{inset:6px 0}
.segmented>button:is([aria-pressed=true],[aria-checked=true]),.level-tabs>a[aria-selected=true],.level-tabs:not([role=tablist])>a:first-child{--segment-bg:var(--thumb);--segment-shadow:var(--thumb-shadow)}
.segmented>button:active,.level-tabs>a:active{--segment-bg:var(--ink-12);background:transparent}
:is(a,button).chip,.filters :is(.chip,button),.map-filters .chip{--chip-bg:var(--surface);--chip-edge:var(--ink-22);height:44px;min-height:44px;padding-block:4px;background:transparent;box-shadow:none;isolation:isolate}
:is(a,button).chip::before,.filters button::before{content:'';position:absolute;inset:4px 0;z-index:-1;border-radius:inherit;background:var(--chip-bg);box-shadow:var(--chip-ring,var(--control-edge-8));pointer-events:none}
:is(a,button).chip::after,.filters button::after{content:none}
.chip:is(.active,[aria-pressed=true]),.filters button[aria-pressed=true]{--chip-bg:var(--soft);--chip-edge:var(--primary);background:transparent;box-shadow:none}
.chip:is(.active,[aria-pressed=true])::before,.filters button[aria-pressed=true]::before{box-shadow:var(--control-edge-1)}
@media(hover:hover) and (pointer:fine){
.segmented>button:hover:not(:disabled),.settings-group .segmented>button:hover,.level-tabs>a:hover{--segment-bg:var(--ink-6);background:transparent;box-shadow:none}
.segmented>button[aria-pressed=true]:hover,.level-tabs>a[aria-selected=true]:hover{--segment-bg:var(--thumb);--segment-shadow:var(--control-edge-14)}
:is(a,button).chip:hover,.filters button:hover{--chip-bg:var(--elevated);--chip-edge:var(--ink-45);--chip-ring:var(--control-edge-13);background:transparent;box-shadow:none}
}
.control-spinner{display:none;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;animation:control-spin 700ms linear infinite}
.control-spinner circle{stroke-dasharray:75 25}
[data-loading=true]>.control-spinner{display:block}
:is(button,.button)[data-loading=true]>svg:not(.control-progress):not(.control-spinner){display:none}
.control-progress{display:none;color:var(--primary);transform:rotate(-90deg)}
.primary>.control-progress{color:var(--on-primary)}
[data-loading=true]>.control-progress{display:block}
.control-progress circle{fill:none;stroke:currentColor;stroke-width:2.4}
.control-progress-track{opacity:.22}
.control-progress-value{stroke-dasharray:100;stroke-dashoffset:100;stroke-linecap:round}
@media(prefers-reduced-motion:reduce){.control-spinner{animation:none}}
:is(button,.button)[data-loading=true]>.button-busy-label{visibility:hidden}
:is(button,.button)[data-loading=true]:has(>.button-busy-label)>.control-spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);animation:none}
:is(button,.button)[data-loading=true]:has(>.button-busy-label)>.control-spinner circle{transform-origin:center;animation:control-spin 700ms linear infinite}
@media(prefers-reduced-motion:reduce){:is(button,.button)[data-loading=true]:has(>.button-busy-label)>.control-spinner circle{animation:none}}
@keyframes control-spin{to{transform:rotate(1turn)}}
@media(min-width:1100px){.site-shell .shell-tools{margin-top:auto}.site-shell .store-plate{margin-top:12px}}
.language-toggle[aria-expanded=true]:hover{background:var(--soft);color:var(--control-selected)}
.place-side .actions .action-tile{height:44px;min-height:44px;flex-direction:row;font-size:var(--type-button-m);font-weight:600}
.origin-results>button{height:auto;min-height:60px;white-space:normal}
.button:where(:not(.primary):not(.icon-button):not(.chip):not(.button-s)){min-width:88px}
.dial-detents button{box-shadow:none;background:transparent;color:var(--secondary)}
.dial-detents button[aria-pressed=true]{box-shadow:none;background:var(--soft);color:var(--primary)}
.origin-line-button{box-shadow:none;background:transparent}
.explore-search input[type=search]:is(:hover,:focus){box-shadow:none;outline:none;background:transparent}
@media(hover:hover) and (pointer:fine){
.origin-line-button:hover,.dial-detents button:hover{box-shadow:none;background:var(--ink-6);color:var(--text)}
.mobile-header .language-toggle:hover{box-shadow:none}
}
.filters button .filter-check{display:none}
.filters button[aria-pressed=true] .filter-check{display:block;width:16px;height:16px;color:var(--primary)}
.segmented[data-proportional=true]>button{flex:1 0 auto;min-width:64px}
.segmented[data-control-rows=true],.settings-group .segmented[data-control-rows=true]{display:grid;grid-template-columns:repeat(var(--control-columns),minmax(0,1fr));height:auto;row-gap:2px}
.segmented[data-control-rows=true]>button,.settings-group .segmented[data-control-rows=true]>button{margin-block:0;min-width:0;height:44px;min-height:44px}
.settings-group .actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
[data-voice-choices] summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:var(--control-edge-7);font:600 var(--type-button-m)/1.2 var(--font-ui);cursor:pointer;list-style:none}
[data-voice-choices] summary::-webkit-details-marker{display:none}
[data-voice-choices] summary svg{width:16px;height:16px;flex:none;transition:transform var(--quick)}
[data-voice-choices] details[open] summary svg{transform:rotate(180deg)}
[data-voice-choices] summary:active{background:var(--control-press);transform:scale(.98)}
@media(hover:hover) and (pointer:fine){[data-voice-choices] summary:hover{background:var(--control-hover);color:var(--text);box-shadow:var(--control-edge-5)}}
.planner-toolbar [data-plan-mode]{flex-basis:100%;min-width:0}
.planner-toolbar>button{--button-height:48px;--button-type:var(--type-button-l);--button-pad:20px;height:48px;min-height:48px}
.rolling-digit{vertical-align:top;font-variant-numeric:lining-nums tabular-nums}
.place-side .actions .action-tile{white-space:normal;height:auto;min-height:44px;padding:4px 8px;line-height:1.15;text-wrap:balance;overflow-wrap:break-word;hyphens:none}
.place-side .action-tile>span{min-width:0;max-width:100%}
@media(max-width:759px){
.place-side .actions[data-place-actions]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible;margin-inline:0;padding-inline:0}
.place-side .actions .action-tile{width:100%;min-width:0;min-height:76px;padding:8px;flex-direction:column;justify-content:center;gap:6px}
}
#tgb-toast{display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 32px);background:var(--inverse);color:var(--on-inverse);font-size:var(--type-secondary);line-height:1.35;pointer-events:none}
#tgb-toast[hidden]{display:none}
#tgb-toast .toast-message{min-width:0;overflow-wrap:break-word}
#tgb-toast button{pointer-events:auto;flex:none;white-space:normal;height:auto;min-height:44px;max-width:100%;padding:8px 16px;background:var(--on-inverse);color:var(--inverse);box-shadow:none;line-height:1.2;overflow-wrap:break-word}
#tgb-toast button:active{background:var(--inverse-accent);color:var(--inverse)}
#tgb-toast button:focus-visible{outline-color:var(--inverse-accent)}
@media(hover:hover) and (pointer:fine){#tgb-toast button:hover{background:var(--inverse-accent);color:var(--inverse)}}
@media(max-width:759px){#tgb-toast{flex-direction:column;align-items:stretch;text-align:center;padding:12px 16px;gap:8px}#tgb-toast button{width:100%}}
#tgb-map-progress{position:fixed;z-index:180;right:16px;top:16px;display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:44px;padding:8px 16px;border-radius:var(--r-pill);background:var(--primary);color:var(--on-primary);box-shadow:var(--edge-primary),var(--lift-1);font:600 var(--type-button-m)/1.2 var(--font-ui);font-variant-numeric:lining-nums tabular-nums}
#tgb-map-progress[hidden]{display:none}
#tgb-map-progress:active{background:var(--primary-press);transform:scale(.98)}
@media(hover:hover) and (pointer:fine){#tgb-map-progress:hover{background:var(--primary-hover);transform:translateY(-1px)}}
@media(max-width:759px){#tgb-map-progress{top:calc(64px + env(safe-area-inset-top))}}
.tgb-sheet>.sheet-body{padding:4px;margin:-4px}
html:root :is(a,button,summary,[role=button]):focus-visible{outline:none;box-shadow:var(--ring)}
html:root :is(.button.primary,button.primary):focus-visible:not(:disabled){box-shadow:var(--ring)}
:is(.row-card:has(>.row-link:focus-visible),.nearby-card:has(>.nearby-row:focus-visible),.collection-card:has(>.collection-cover:focus-visible),.place-card:has(>.card-main-link:focus-visible)){box-shadow:var(--ring)}
html:root :is(.row-link,.nearby-row,.collection-cover,.card-main-link):focus-visible{outline:none;box-shadow:none}
html:root .map-link:focus-visible{outline:2px solid var(--primary);outline-offset:-4px;box-shadow:var(--ring-inner)}
:root .place-hero>picture[role=button]:focus-visible{outline:none;box-shadow:none}
:root .place-hero:has(>picture[role=button]:focus-visible)::before{content:'';position:absolute;inset:0;z-index:5;pointer-events:none;border-radius:inherit;box-shadow:var(--ring-inner)}
:root .language-options [data-language-choice]:focus-visible{box-shadow:var(--ring-inner)}
:root #tgb-toast button:focus-visible{box-shadow:var(--ring-inverse)}
#tgb-map-progress:focus-visible{box-shadow:var(--ring)}
.place-side .actions,.coordinate-row{overflow:visible}
.skip{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:0;border-radius:var(--r-lg);background:var(--primary);color:var(--on-primary);font:600 var(--type-button-m)/1.15 var(--font-ui)}
.skip:focus{top:16px}
.home-hero ::selection,.place-hero ::selection{background:var(--photo-selection-bg);color:var(--photo-ink)}
html:root :is(button,.button,input,select,textarea,.chip,.stat-chip,.status-pill,.data,.cap,.count,.dial-count,.dial-detents,.segmented,.level-tabs,.saved-badge,.map-count,.map-marker,.map-cluster,.maplibregl-ctrl-scale,.home-guide-count,.reach-label,.headline-number,output,kbd,time,table,[data-live-status]){font-variant-numeric:lining-nums tabular-nums}
html:root :is(.fact-grid dd,.facts-list dd,.stats strong,.preview-pin,.walk-stats,.trail-stats,.offline-group-meta),.ordered-places>li::before{font-variant-numeric:lining-nums tabular-nums}
.site-footer{padding:32px var(--page) 24px;background:var(--surface);border-top:1px solid var(--border)}
.footer-inner{max-width:var(--content-max);margin-inline:auto}
.footer-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}
.footer-head .eyebrow{margin:0;color:var(--primary);font:700 var(--type-min)/1.3 var(--font-ui);letter-spacing:.14em}
.footer-head>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;flex:none;font:600 var(--type-footer-link)/1.2 var(--font-ui);color:var(--primary);border-radius:8px;padding-inline:4px}
.footer-head>a svg{width:16px;height:16px;transition:transform var(--quick)}
.site-footer .promo-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:4px 0}
.site-footer .promo-tile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;align-content:center;gap:16px;padding:0;min-height:64px;height:auto}
.site-footer .promo-tile+.promo-tile{border-top:1px solid var(--border)}
.site-footer .promo-icon{display:block;width:48px;height:48px;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px var(--ink-12),var(--lift-1);transition:filter var(--quick),box-shadow var(--quick),transform var(--quick)}
.site-footer .promo-icon img{display:block;width:100%;height:100%;border-radius:inherit;background:var(--soft)}
.promo-info{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:16px;min-height:60px;min-width:0;border-radius:12px;transition:background-color var(--quick),transform var(--quick)}
.promo-copy{min-width:0;padding:0}
.site-footer .promo-tile h3{margin:0;font:700 var(--type-footer-name)/1.15 var(--font-title);white-space:normal;overflow:visible;display:block;-webkit-line-clamp:unset;hyphens:none;text-wrap:pretty}
.site-footer .promo-copy>p{margin:2px 0 0;font:400 var(--type-footer-link)/1.2 var(--font-ui);color:var(--secondary);white-space:normal;overflow:visible;display:block;text-wrap:pretty}
.site-footer .promo-tile .promo-stores{display:flex;grid-column:auto;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:8px;max-width:none;padding:0;overflow:visible;mask-image:none}
.site-footer .promo-stores>a{position:relative;display:flex;align-items:center;justify-content:center;flex:none;height:44px;min-height:44px;border:0;padding:2px 0;border-radius:10px;box-sizing:border-box;transition:filter var(--quick),transform var(--quick),background-color var(--quick)}
.promo-stores .store-badge{width:136px;background:none;isolation:isolate}
.promo-stores .store-badge::before{content:'';position:absolute;inset:2px 0;background:#000;border-radius:8px;box-shadow:inset 0 0 0 1px #A6A6A6;z-index:-1}
.site-footer .promo-stores .store-badge>img{height:30px;width:116px;max-width:116px;object-fit:contain}
.site-footer .promo-stores>.promo-web{display:grid;grid-template-columns:max-content;grid-template-rows:auto auto;align-content:center;justify-content:start;width:max-content;min-width:136px;gap:1px;background:none;color:#FFF;padding:2px 14px 2px 46px;white-space:nowrap;line-height:1;text-decoration:none;isolation:isolate}
.promo-stores>.promo-web::before{content:'';position:absolute;inset:2px 0;background:var(--footer-web);border-radius:8px;box-shadow:inset 0 0 0 1px rgb(0 0 0/.18);z-index:-1;transition:background-color var(--quick)}
.promo-web::after{content:'';position:absolute;left:14px;top:50%;width:22px;height:22px;transform:translateY(-50%);background:currentColor;mask:url('/assets/footer-browser.d67fd650.svg') center/contain no-repeat}
.site-footer .promo-web small{display:block;font:500 var(--type-min)/1.1 var(--font-ui);color:#FFF}
.site-footer .promo-web b{display:block;margin:0;font:700 var(--type-footer-web)/1.1 var(--font-ui);color:#FFF}
.site-footer .store-coming{display:flex;align-items:center;gap:8px;flex:none;min-width:136px;height:40px;padding:0 12px;border:1px dashed var(--ink-45);border-radius:8px;color:var(--secondary);background:var(--surface);line-height:1.1}
.site-footer .promo-stores .store-soon-icon{display:block;width:22px;height:24px;min-height:0;flex:none;object-fit:contain;opacity:.7;filter:grayscale(1)}
.store-soon-icon svg{width:22px;height:22px;fill:currentColor}
.store-coming small,.store-coming b{display:block;font:600 var(--type-min)/1.1 var(--font-ui);white-space:nowrap}
.store-coming b{font:700 var(--type-footer-link)/1.1 var(--font-ui)}
.promo-current{flex:none;display:inline-flex;align-items:center;min-height:28px;padding:4px 8px;border-radius:8px;background:var(--soft);color:var(--control-selected);font:600 var(--type-control-caption)/1.2 var(--font-ui);white-space:nowrap}
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;min-height:48px;padding:0;gap:16px;border-top:1px solid var(--border);font:400 var(--type-footer-link)/1.2 var(--font-ui)}
.footer-author{display:flex;gap:4px;align-items:center;min-height:44px;flex:none;color:var(--secondary);border-radius:8px;padding-inline:4px}
.footer-author b{font-weight:500;color:var(--text)}
.site-footer .footer-links{display:flex;align-items:center;gap:16px;flex-wrap:nowrap}
.footer-links>a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding-inline:4px;border-radius:8px;color:var(--text)}
.footer-bottom>.language-toggle{flex:none;display:flex;min-height:44px;align-items:center;padding:0 8px;gap:6px;border-radius:10px;color:var(--text);background:transparent;font:700 var(--type-footer-link)/1 var(--font-ui);font-variant-numeric:lining-nums tabular-nums}
.footer-bottom>.language-toggle::after{content:'';display:block;width:16px;height:16px;background:currentColor;mask:url('/assets/footer-chevron.462cfe9f.svg') center/contain no-repeat;transition:transform var(--quick)}
.footer-bottom>.language-toggle[aria-expanded=true]::after{transform:rotate(180deg)}
.site-footer .footer-data{margin:0;font:400 var(--type-control-caption)/1.3 var(--font-ui);color:var(--secondary)}
.site-footer :is(a,button):focus-visible{outline:none;box-shadow:var(--ring)}
.site-footer :is(a,button):active{transform:scale(.98)}
.site-footer :is(a,button)[aria-disabled=true]{background:var(--ink-6);color:var(--secondary);cursor:default;transform:none;filter:none}
@media(hover:hover) and (pointer:fine){
.site-footer .promo-info:hover .promo-icon{filter:brightness(1.12);box-shadow:0 0 0 2px var(--primary)}
.site-footer :is(.promo-info,.footer-head>a,.footer-links>a,.footer-author,.language-toggle):hover{background:var(--ink-6);color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.site-footer .promo-info:hover{text-decoration:none}
.promo-info:hover h3{text-decoration:underline;text-underline-offset:3px}
.footer-head>a:hover svg{transform:translateX(3px)}
.site-footer .promo-stores .store-badge:hover{filter:brightness(1.2);transform:translateY(-1px)}
.site-footer .store-badge:hover::before{box-shadow:inset 0 0 0 2px #FFF}
.site-footer .promo-stores>.promo-web:hover{transform:translateY(-1px);text-decoration:none}
.promo-stores>.promo-web:hover::before{background:var(--footer-web-hover)}
}
[data-theme=dark] .store-badge::before{box-shadow:inset 0 0 0 1px rgb(242 237 228/.28)}
[data-theme=dark] .promo-web::before{box-shadow:inset 0 0 0 1px rgb(242 237 228/.7)}
@media(min-width:760px) and (max-width:1099px){
.site-footer .promo-tile{grid-template-columns:minmax(0,1fr);padding-block:8px;gap:4px 16px}
.site-footer .promo-tile .promo-stores{grid-column:1;padding-left:64px;justify-content:flex-start;flex-wrap:wrap}
.site-footer .footer-bottom{flex-wrap:wrap;gap:0 16px}
.site-footer .footer-links{order:3;flex-basis:100%;justify-content:space-between}
}
@media(max-width:759px){
.site-footer{padding:24px var(--page) calc(88px + env(safe-area-inset-bottom))}
.footer-head{align-items:flex-start;flex-direction:column;gap:4px}
.site-footer .promo-tile{grid-template-columns:minmax(0,1fr);padding-block:12px;gap:8px 16px}
.site-footer .promo-tile h3{font-size:var(--type-footer-name-phone)}
.site-footer .promo-copy>p{font-size:var(--type-control-caption)}
.site-footer .promo-tile .promo-stores{grid-column:1;padding-left:64px;flex-wrap:wrap;justify-content:flex-start;gap:4px 8px}
.site-footer .footer-bottom{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding-top:12px}
.site-footer .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
.footer-links>a{justify-content:flex-start}
.footer-bottom>.language-toggle::after{display:none}
.footer-bottom>.language-toggle{justify-content:center;width:100%;background:var(--ink-6)}
.footer-author{align-self:flex-start}
.has-audio .shell-content{padding-bottom:0}
.has-audio .site-footer{padding-bottom:calc(var(--player-h,64px) + 104px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.site-footer :is(a,button):is(:hover,:active),.footer-head>a:hover svg{transform:none;transition:none}}
.badges>a.store-badge{position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:136px;height:44px;min-height:44px;padding:2px 0;border-radius:10px;isolation:isolate;transition:filter var(--quick),transform var(--quick)}
.badges>.store-badge::before{content:'';position:absolute;inset:2px 0;background:#000;border-radius:8px;box-shadow:inset 0 0 0 1px #A6A6A6;z-index:-1}
.badges>.store-badge>img{width:116px;max-width:116px;height:30px;object-fit:contain}
.store-plate .badges{display:grid;grid-template-columns:136px;justify-content:start;gap:4px}
.about-stores{margin:16px 0 24px}
:is(.badges,.promo-stores)>a.badge-ag{padding-left:38px;padding-right:12px;justify-content:flex-start;color:#FFF;text-decoration:none;white-space:nowrap}
.badge-ag>svg[role=none]{position:absolute;left:9px;top:50%;width:22px!important;height:22px!important;stroke:none;transform:translateY(-50%)}
.badge-ag>span{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center;gap:1px;text-align:left;line-height:1}
.badge-ag small{display:block;font:var(--type-ag-caption);letter-spacing:.01em;color:#FFF;white-space:nowrap}
.badge-ag b{display:block;font:var(--type-ag-title);letter-spacing:-.02em;color:#FFF}
.badges>a.store-badge:focus-visible{outline:none;box-shadow:var(--ring)}
.badges>a.store-badge:active{transform:scale(.98)}
@media(hover:hover) and (pointer:fine){
.badges>a.store-badge:hover{filter:brightness(1.2);transform:translateY(-1px);outline:none}
.badges>a.store-badge:hover::before{box-shadow:inset 0 0 0 2px #FFF}
}
.site-footer .promo-stores>.store-badge:active,.badges>a.store-badge:active{transform:scale(.98)}
[data-theme=dark] .badges>.store-badge::before{box-shadow:inset 0 0 0 1px rgb(242 237 228/.28)}
@media(min-width:1100px) and (max-width:1279px){
.site-footer .promo-tile{grid-template-columns:minmax(0,1fr);padding-block:8px;gap:4px 16px}
.site-footer .promo-tile .promo-stores{grid-column:1;padding-left:64px;justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:399px){.site-footer .promo-tile .promo-stores{padding-left:0}}
@media(prefers-reduced-motion:reduce){.badges>a.store-badge{transition:none}.site-footer .promo-stores>.store-badge:is(:hover,:active),.badges>a.store-badge:is(:hover,:active){transform:none;transition:none}}
.android-promo>a{min-height:44px;border-radius:8px;background:transparent;color:var(--text);transition:background-color var(--quick),transform var(--quick)}
@media(hover:hover) and (pointer:fine){.android-promo>a:hover{background:var(--ink-6);color:var(--text);text-decoration:underline;text-underline-offset:3px}}
.android-promo>a:active{background:var(--ink-12);transform:scale(.98)}
.android-promo>a:focus-visible{outline:none;box-shadow:var(--ring-inner)}
@media(prefers-reduced-motion:reduce){.android-promo>a{transition:none}.android-promo>a:active{transform:none}}
@media(hover:hover) and (pointer:fine){
:is(.badges,.promo-stores)>a.badge-ag:hover{filter:none}
:is(.badges,.promo-stores)>a.badge-ag:hover::before{background:var(--badge-hover)}
}
.section-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:16px}
.section-head>h2,.section-head>div:first-child{min-width:0;margin:0}
.section-head>a{grid-column:2;align-self:end;justify-self:end;min-width:max-content;width:max-content;max-width:none;overflow-wrap:normal;word-break:normal;align-items:flex-end;gap:6px;padding-bottom:3px;white-space:nowrap;font-weight:600;font-variant-numeric:lining-nums tabular-nums;text-decoration:none}
.section-head>.shelf-controls{grid-column:3;margin:0;align-self:end}
.section-head>a:hover{text-decoration:underline;text-underline-offset:4px}
.section-head>a:active{color:var(--text)}
.shelf-controls button{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:var(--r-md);position:relative}
.shelf-controls button::after{content:'';position:absolute;inset:-4px;border-radius:inherit}
.shelf-controls button>svg{width:18px;height:18px}
@media not all and (hover:hover) and (pointer:fine){.section-head .shelf-controls{display:none}}
@media(max-width:759px){.section-head{grid-template-columns:minmax(0,1fr) auto;gap:12px}.section-head .shelf-controls{display:none}}
.row-card,.row-photo,.card-photo,.gallery-photo,.collection-card{container-type:inline-size}
.row-card>.credit-toggle{display:none}
.ordered-places .row-card>.credit-toggle{display:flex}
.credit-toggle,.collection-card>.credit-toggle,.card-photo>.credit-toggle,.row-photo>.credit-toggle,.gallery-photo .credit-toggle,.place-hero .credit-toggle,.home-hero .credit-toggle{top:0;right:0;left:auto;bottom:auto;width:44px;height:44px;min-height:44px;padding:8px;border-radius:var(--r-round)}
.credit-toggle::before{content:none}
.credit-toggle>span{width:28px;height:28px;background:var(--photo-btn);color:var(--photo-ink);backdrop-filter:blur(8px)}
.credit-toggle>span>svg{width:18px;height:18px}
.credit-toggle:hover>span{background:var(--photo-hover);color:var(--photo-ink)}
.credit-toggle:active>span{background:var(--photo-press);color:var(--photo-ink)}
.gallery figcaption{position:static}
.home-hero figcaption,.place-hero figcaption{position:static;overflow:visible;white-space:normal;max-width:none}
.photo-credit-popover{box-shadow:var(--lift-3);border-radius:var(--r-xl);max-height:calc(100dvh - 32px);overflow:auto;width:min(320px,calc(100vw - 32px));bottom:auto}
.photo-credit-popover a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;padding:4px;border-radius:var(--r-xs);text-decoration:underline;text-underline-offset:3px}
.photo-credit-popover a:hover{background:var(--control-hover);color:var(--primary)}
.photo-credit-popover a:active{background:var(--control-press);color:var(--control-selected)}
@container(max-width:159px){.credit-toggle,.ordered-places .row-card>.credit-toggle{display:none}}
.home-hero,.place-hero,.collection-cover{isolation:isolate}
.home-hero::after,.place-hero:not(.hero-category):not(.lowres)::after,.collection-cover:has(>picture)::after{content:'';position:absolute;inset:0;z-index:0;background:var(--photo-hero-scrim);pointer-events:none;border-radius:inherit}
.home-hero .home-hero-copy,.place-hero:not(.hero-category):not(.lowres) .hero-title,.collection-cover:has(>picture) .hero-title{background:none;z-index:1;color:var(--photo-ink)}
.home-hero .credit-toggle,.place-hero .credit-toggle{z-index:3}
.reach-label{background:var(--map-glass);color:var(--text);border:1px solid var(--border);border-radius:var(--r-pill);backdrop-filter:blur(8px)}
.maplibregl-control-container .maplibregl-ctrl-bottom-left>.map-credit{margin:0 0 12px 12px;padding:0;box-shadow:none;background:transparent;max-width:calc(100vw - 48px)}
.map-credit-text{display:flex;align-items:center;gap:4px;width:max-content;max-width:100%;min-height:28px;padding:0 8px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--map-glass);backdrop-filter:blur(8px);color:var(--text);font:500 var(--type-min)/1.4 var(--font-ui)}
.map-credit-text a{position:relative;display:inline-flex;align-items:center;min-height:28px;color:var(--text);text-decoration:underline;text-underline-offset:3px}
.map-credit-text a::after{content:'';position:absolute;inset:-8px 0}
.map-credit-text a:hover{background:var(--control-hover);color:var(--primary)}
.map-credit-text a:active{background:var(--control-press);color:var(--control-selected)}
.map-credit-toggle{display:none}
.maplibregl-ctrl-bottom-left:has(>.map-credit){background:transparent}
.mini-map-canvas{--map-info-bottom:44px}
.map-poster>.mini-map-activate{top:12px;bottom:auto}
.mini-map-canvas .maplibregl-ctrl-bottom-left{bottom:44px;z-index:3}
.mini-map-canvas .map-credit{pointer-events:auto}
.map-poster>.map-link{position:absolute;bottom:0;left:0;width:100%;height:44px;min-height:44px;padding:0 12px;display:flex;align-items:center;justify-content:center;gap:8px;z-index:3;background:var(--surface);color:var(--primary)}
@media(max-width:759px){
.maplibregl-control-container .maplibregl-ctrl-bottom-left>.map-credit{position:relative;margin:0 0 4px 4px}
.map-credit-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:8px;border:0;background:transparent;box-shadow:none;color:var(--text);border-radius:var(--r-round)}
.map-credit-toggle>span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:var(--r-round);background:var(--map-glass);backdrop-filter:blur(8px)}
.map-credit-toggle svg{width:18px;height:18px}
.map-credit-toggle:hover>span{background:var(--control-hover);color:var(--primary)}
.map-credit-toggle:active>span{background:var(--control-press);color:var(--control-selected)}
.map-credit-text{position:absolute;bottom:52px;left:8px;max-width:calc(100vw - 48px);flex-wrap:wrap}
}
.place-hero.hero-category .hero-title{background:var(--surface);color:var(--text)}
.place-card .card-photo:has(>.category-cover) .photo-caption{align-self:stretch;padding:14px 12px 2px}
.place-card .card-photo:has(>.category-cover) .photo-caption h3,.row-card.no-photo h3{min-height:0}
.row-card.no-photo .row-link{align-items:center}
.credit-item h3 a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;line-height:1.4}
.credit-item a:hover{background:var(--soft);color:var(--control-selected);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.credit-item a:active{background:var(--control-press);color:var(--control-selected)}
.map-poster>.map-attribution{position:absolute;bottom:56px;left:12px;right:auto;top:auto;width:max-content;max-width:calc(100% - 24px);margin:0;z-index:3;pointer-events:auto;text-align:left}
.place-hero.hero-category .hero-title .eyebrow{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word}
.offline-group>a{min-width:0;hyphens:auto}
.maplibregl-map .maplibregl-ctrl-scale{font-size:var(--type-min)}
.gallery-photo>a:hover{filter:brightness(1.08)}
.gallery-photo>a:active{filter:brightness(.94)}
.prose-block.wikipedia .caption a:hover{background:var(--control-hover);color:var(--primary);text-decoration:underline;text-decoration-thickness:2px}
.prose-block.wikipedia .caption a:active{color:var(--control-selected);background:var(--control-press)}
.place-hero .hero-title{pointer-events:none}
.place-hero .hero-title :is(a,button){pointer-events:auto}
.place-hero>picture[role=button]{cursor:zoom-in;transition:filter var(--quick)}
@media(hover:hover) and (pointer:fine){.place-hero>picture[role=button]:hover{filter:brightness(.92)}}
.place-hero>picture[role=button]:active{filter:brightness(.86)}
@media(prefers-reduced-motion:reduce){.place-hero>picture[role=button]{transition:none}}
.map-poster>.map-link:hover{background:var(--control-hover);color:var(--control-selected)}
.map-poster>.map-link:active{background:var(--control-press);color:var(--control-selected)}
@media(max-width:759px){
.place-hero.lowres::after{content:'';position:absolute;inset:0;z-index:0;background:var(--photo-hero-scrim);pointer-events:none;border-radius:inherit}
.place-hero:not(.hero-category){display:block;padding:0;border:0;aspect-ratio:auto;background:var(--border)}
.place-hero:not(.hero-category)>picture{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border-radius:0}
.place-hero:not(.hero-category)>picture img{width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;object-fit:cover;border-radius:0}
.place-hero:not(.hero-category):not(.lowres) .hero-title,
.place-hero.lowres:not(.hero-category) .hero-title{position:relative;inset:auto;min-height:calc((100vw - 32px)*.75);padding:56px 16px 32px;background:linear-gradient(180deg,rgb(20 16 13/0) 0,rgb(20 16 13/.6) 32%,rgb(20 16 13/.88) 100%);z-index:1;color:var(--photo-ink)}
html[data-language-offer=true] main[data-page=places] .place-hero:not(.hero-category) .hero-title,
main[data-page=places] .place-hero.language-entry-hero:not(.hero-category) .hero-title{min-height:clamp(160px,calc((100vw - 32px)*.75 - 40px),240px);padding:32px 16px 24px}
.place-hero.phone-title-scrim:not(.hero-category)::after{content:none}
.place-hero.phone-title-scrim:not(.hero-category) .hero-title{background:linear-gradient(180deg,rgb(20 16 13/0) 0,rgb(20 16 13/.7) 16%,rgb(20 16 13/.88) 100%)}
.place-hero.phone-standard-scrim:not(.hero-category) .hero-title{background:linear-gradient(180deg,rgb(20 16 13/0) 0,rgb(20 16 13/.6) 32%,rgb(20 16 13/.88) 100%)}
.place-hero:not(.hero-category) .hero-title :is(h1,p,.eyebrow){color:var(--photo-ink)}
.place-hero:not(.hero-category) .hero-title h1{font-size:var(--type-large)}
.place-hero:not(.hero-category) .chip{background:var(--hero-chip-bg);color:var(--hero-chip-ink);border-color:transparent;box-shadow:none}
.place-hero:not(.hero-category) figcaption{padding:0}
}
[data-home-shelf] .place-card:has(.category-cover){align-self:flex-start;height:auto}
[data-home-shelf] .place-card:has(.category-cover) .card-photo{height:64px;aspect-ratio:auto}
[data-home-shelf] .card-photo>.category-cover{display:flex;align-items:center;justify-content:flex-start;height:64px;min-height:0;aspect-ratio:auto;padding:0 16px;background:color-mix(in srgb,var(--hue) 14%,var(--surface))}
[data-home-shelf] .card-photo>.category-cover>svg[role=none]{width:32px;height:32px;min-width:0;min-height:0}
[data-home-shelf] .place-card:has(.category-cover) .card-body{flex:0 0 auto}
[data-home-shelf] .place-card:has(.category-cover) h3{display:block;min-height:0;overflow:visible;-webkit-line-clamp:unset}
[data-home-shelf] .place-card:has(.category-cover) .card-summary{min-height:0;-webkit-line-clamp:6}
[data-home-shelf] .place-card:has(.category-cover) .chip{display:inline-flex;align-items:center;align-self:flex-start;width:fit-content;height:auto;min-height:28px;white-space:normal;overflow:visible;text-overflow:clip}
.map-list-row{height:auto;min-height:88px;padding-inline:12px;background:none;white-space:normal;box-shadow:none}
.map-list-row strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;hyphens:auto}
.map-list-row:is(:hover,[data-hover=true],[aria-pressed=true]){background:var(--soft);border-radius:var(--r-md);box-shadow:none}
.map-list-row:focus-visible{outline-offset:-2px}
button.library-row,button.narration-sentence{height:auto;white-space:normal}
.credit-toggle,.credit-toggle:hover:not(:focus-visible){box-shadow:none}
html:root :is(.credit-toggle,[data-credit-toggle],.map-sheet-handle):focus-visible{box-shadow:var(--ring-inner)}
@media(max-width:759px){
.map-poster>.mini-map-canvas{inset:0;width:100%;height:100%;--map-info-bottom:8px}
.map-poster>.map-link{left:auto;right:12px;bottom:12px;width:auto;height:44px;min-height:44px;padding:0 16px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--lift-2)}
.mini-map-canvas .maplibregl-ctrl-bottom-left{bottom:8px;left:8px}
.mini-map-canvas .map-credit{margin:0}
.map-poster>.map-attribution{top:12px;bottom:auto;left:12px}
}
.home-hero{height:auto;min-height:212px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:32px;margin:0 0 24px;border-radius:var(--r-card)}
.home-hero .home-hero-copy{position:relative;inset:auto;height:auto;min-height:0;padding:0;display:block;z-index:1}
.home-hero .home-headline{font-variant-numeric:lining-nums;margin:0;font-size:var(--type-home-hero);line-height:1.08;max-width:24ch;text-wrap:balance}
.home-hero .home-lead{font-size:var(--type-lead);line-height:1.35;margin:12px 0 0;color:var(--photo-ink);max-width:48ch}
.home-hero>figcaption{position:absolute;inset:0;pointer-events:none}
.home-hero>figcaption>*{pointer-events:auto}
.home-hero-actions{position:relative;z-index:1;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.home-hero-actions .button{height:48px;min-height:48px;white-space:normal;text-align:center}
.home-hero-actions .photo-secondary{background:var(--hero-chip-bg);color:var(--photo-ink);box-shadow:var(--control-edge-9)}
.home-hero-actions .photo-secondary:hover{background:var(--photo-hover);color:var(--photo-ink);box-shadow:var(--control-edge-9)}
.home-hero-actions .photo-secondary:active{background:var(--photo-press);color:var(--photo-ink)}
.home-hero-actions .button:focus-visible{box-shadow:var(--ring-inverse)}
.home-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px;align-items:stretch}
.home-top .dial-budget{padding:20px;min-width:0}
[data-home-mount] .origin-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:0}
[data-home-mount] .origin-line>[data-origin-slot]{min-width:0}
[data-home-mount] .origin-line-button{width:100%;height:auto;min-height:44px;max-width:none;justify-content:flex-start;padding:0 4px;font-size:var(--type-button-m)}
[data-home-mount] .origin-line-button>span{white-space:normal;overflow:visible;text-overflow:clip}
[data-home-mount] .origin-line>[data-home-origin]{height:44px;min-height:44px;max-width:none;font-size:var(--type-button-m)}
.home-top .time-heading{margin:16px 0 0;min-height:0}
.home-top .time-heading h2{font-size:var(--type-home-section);text-wrap:balance}
.home-top .dial{margin:8px 0 0}
.dial-scale{position:relative;height:172px}
.home-top .dial-track{height:120px;width:100%;margin:0;border-radius:var(--r-lg);transition:background-color var(--quick)}
.home-top .dial-track:hover{background:var(--ink-4)}
.home-top .dial-track:active{background:var(--ink-6);cursor:grabbing}
.home-top .dial-track:focus-visible{box-shadow:var(--ring-inner)}
.home-top .dial-arc{height:120px;width:100%}
[data-home-mount] .dial-detents{position:absolute;inset:0;margin:0;display:block;pointer-events:none}
[data-home-mount] .dial-detents>button{position:absolute;top:40px;left:34.16%;transform:translateX(-50%);height:44px;min-height:44px;width:24%;padding:2px;background:none;box-shadow:none;color:var(--secondary);border:0;border-radius:var(--r-sm);font-size:var(--type-button-s);white-space:normal;line-height:1.15;pointer-events:auto;font-weight:600}
[data-home-mount] .dial-detents>button:first-child{left:12.412%;top:122px}
[data-home-mount] .dial-detents>button:nth-child(3){left:65.84%}
[data-home-mount] .dial-detents>button:last-child{left:87.588%;top:122px}
[data-home-mount] .dial-detents>button[aria-pressed=true]{background:none;color:var(--primary);font-weight:700}
[data-home-mount] .dial-detents>button[aria-pressed=true]::after{content:'';position:absolute;left:calc(50% - 2px);bottom:0;width:4px;height:4px;border-radius:var(--r-round);background:var(--primary)}
[data-home-mount] .dial-detents>button:hover{background:var(--control-hover);color:var(--text)}
[data-home-mount] .dial-detents>button[data-budget]:active{background:var(--control-press);transform:translateX(-50%) scale(.97)}
[data-home-mount] .dial-detents>button:focus-visible{box-shadow:var(--ring-inner)}
.home-top [data-transport]>.segmented{margin:0;width:100%;max-width:none}
.home-top .budget-summary{display:grid;grid-template-columns:minmax(0,1fr) 144px;align-items:start;gap:16px;text-align:left;margin-top:16px}
.budget-count-line{display:flex;align-items:center;gap:12px}
.home-top .dial-count{font-size:var(--type-home-count);line-height:1.05;min-width:0;margin:0;flex:none}
.budget-count-label{font-size:var(--type-lead);line-height:1.25;min-width:0;max-width:none}
.budget-copy>[data-budget-radius]{font-size:var(--type-caption);margin:12px 0 0}
.home-top .rosette-wrap{position:relative;min-width:0;display:grid;justify-items:center}
.home-top .budget-summary .rosette{width:144px;height:144px}
.home-top .rosette-wrap .bearing-nearest{position:relative;min-width:44px;min-height:44px;max-width:100%;display:flex;align-items:center;gap:6px;font-size:var(--type-caption);line-height:1.25;color:var(--primary);padding:4px;text-align:center;text-wrap:pretty;overflow-wrap:break-word}
.bearing-nearest>svg{width:16px;height:16px}
.bearing-nearest:hover{background:var(--control-hover);text-decoration:underline;text-underline-offset:3px;border-radius:var(--r-sm)}
.bearing-nearest:active{background:var(--control-press)}
.home-top .rosette-wrap [data-orientation]{position:absolute;top:0;right:0;width:44px;height:44px;min-height:44px;padding:0;background:var(--surface);box-shadow:var(--control-edge-7)}
.home-top .home-map{position:relative;inset:auto;display:block;align-self:stretch;min-width:0;min-height:0}
.home-top .home-map>.map-poster{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;min-height:0;max-height:none;display:block}
.home-map .reach-label{top:12px;left:12px;right:auto;max-width:calc(100% - 24px);min-height:32px;margin:0;padding:6px 12px;font-size:var(--type-caption);font-weight:600;line-height:1.3;width:fit-content}
.home-recommendations{margin-top:24px}
.home-recommendations .section-head{grid-template-columns:minmax(0,1fr) auto;align-items:last baseline}
.home-recommendations .all-budget{display:flex;margin:0;min-width:44px;justify-content:center;align-self:last baseline;align-items:baseline;flex-wrap:wrap;align-content:flex-end}
.home-recommendations .budget-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;max-height:none}
.home-recommendations .compact-card{padding:12px;margin:0;display:flex;align-items:flex-start;container-type:normal;min-width:0}
.home-recommendations .row-link{display:flex;align-items:flex-start;gap:12px;min-width:0;width:100%;padding:4px 0;margin-block:-4px}
.home-recommendations .row-photo,.home-recommendations .row-photo picture,.home-recommendations .row-photo img{width:88px;height:88px;border-radius:var(--r-lg);object-fit:cover;flex:none;container-type:normal}
.home-recommendations .row-text{min-width:0}
.home-recommendations .row-text h3{font-size:var(--type-card-name);line-height:1.2;min-height:0;display:block;overflow:visible;-webkit-line-clamp:unset}
.home-recommendations .row-text p{display:block;overflow:visible;-webkit-line-clamp:unset;font-size:var(--type-caption);line-height:1.35;margin:6px 0 0}
.home-recommendations .category-caption{display:flex;align-items:center;gap:4px;font-size:var(--type-min);line-height:1.3;color:var(--secondary);margin-top:4px}
.home-recommendations .category-caption>svg{width:16px;height:16px}
main[data-page=home] .section-head>a{min-width:44px}
main[data-page=home] [data-carousel]{transition:background-color var(--quick)}
@media(hover:hover) and (pointer:fine){main[data-page=home] [data-carousel]:hover{background-color:var(--ink-4)}}
@media(min-width:760px) and (max-width:1099px){
.home-hero{grid-template-columns:minmax(0,1fr);padding:24px;gap:16px}
.home-top{gap:16px}
[data-home-mount] .origin-line{grid-template-columns:minmax(0,1fr)}
[data-home-mount] .origin-line>[data-home-origin]{width:100%}
.home-top .budget-summary{grid-template-columns:minmax(0,1fr);gap:8px}
.home-top .rosette-wrap{grid-template-columns:100px minmax(0,1fr);align-items:center}
.home-top .budget-summary .rosette{width:100px;height:100px}
.home-recommendations .budget-list{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:759px){
.home-hero{display:flex;align-items:flex-end;height:auto;min-height:160px;padding:44px 16px 16px}
.home-hero .home-headline{font-size:var(--type-home-hero);max-width:26ch}
.home-hero .home-lead{font-size:var(--type-secondary);margin-top:6px;line-height:1.25}
.home-hero-actions{display:none}
.home-top{display:block}
.home-top .dial-budget{padding:16px}
[data-home-mount] .origin-line{grid-template-columns:minmax(0,1fr);gap:8px}
[data-home-mount] .origin-line>[data-home-origin]{width:100%}
.home-top .home-map{display:none}
.home-top .budget-summary{grid-template-columns:minmax(0,1fr) 120px;gap:8px;margin-top:16px}
.home-top .budget-summary .rosette{width:120px;height:120px}
.budget-count-line{display:block}
.budget-count-label{font-size:var(--type-secondary);margin-top:8px;max-width:none}
.home-top .dial-count{font-size:var(--type-home-count)}
.home-recommendations .budget-list{grid-template-columns:minmax(0,1fr);gap:12px}
.home-top .rosette-wrap .bearing-nearest{font-size:var(--type-min)}
}
@media(prefers-reduced-motion:reduce){.home-top .dial-track,main[data-page=home] [data-carousel]{transition:none}}
.home-map .mini-map-activate{top:52px;bottom:auto}
[data-home-mount] [data-orientation][aria-pressed=true]{background:var(--soft);color:var(--control-selected);box-shadow:var(--control-edge-5)}
@media(hover:hover) and (pointer:fine){[data-home-mount] [data-orientation]:hover{background:var(--control-hover);color:var(--control-selected);box-shadow:var(--control-edge-5)}}
[data-home-mount] [data-orientation]:focus-visible{box-shadow:var(--ring)}
main[data-page=home] .collection-card{transition:border-color var(--quick),transform var(--quick)}
main[data-page=home] .collection-card img{transition:transform var(--quick),filter var(--quick)}
@media(hover:hover) and (pointer:fine){
main[data-page=home] .collection-card:hover{border-color:var(--primary)}
main[data-page=home] .collection-card:hover img{transform:scale(1.02)}
}
main[data-page=home] .collection-card:active{transform:scale(.98);border-color:var(--primary);transition-duration:90ms}
main[data-page=home] .collection-card:active img{filter:brightness(.94)}
@media(prefers-reduced-motion:reduce){
main[data-page=home] .collection-card,main[data-page=home] .collection-card img{transition:none}
main[data-page=home] .collection-card:hover img,main[data-page=home] .collection-card:active{transform:none}
}
.place-side{position:static;max-height:none;overflow:visible;scrollbar-gutter:auto;overscroll-behavior:auto;min-width:0}
.place-actions-block{position:static;top:auto;z-index:4;background:var(--bg);padding-bottom:12px}
@media(min-width:1100px){
.place-side{align-self:stretch;align-content:start}
.place-actions-block{position:sticky;top:24px}
}
.place-actions-block .live-place-status{display:flex;align-items:center;height:48px;min-height:48px;margin:0 0 8px;padding:4px 12px;font-size:var(--type-control-caption);line-height:1.3;white-space:normal}
.place-actions-block .actions[data-place-actions]{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0;padding:0;overflow:visible}
.place-actions-block .actions>[data-place-action=listen]{width:100%;height:48px;min-height:48px;flex-direction:row;font-size:var(--type-button-l)}
.place-toggle-row,.place-secondary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}
.place-secondary-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.place-actions-block .place-toggle-row>.action-tile{width:100%;height:44px;min-height:44px;padding:4px 6px;flex-direction:row;gap:6px;white-space:nowrap;font-size:var(--type-button-s);line-height:1.15}
.place-actions-block .place-secondary-row>.button{flex-direction:row;min-width:0;padding-inline:8px;font-size:var(--type-button-m)}
.place-actions-block .place-toggle-row>.place-more{display:none}
.place-side #plan>.fact-grid{margin:0}
.fact-grid dt{font-size:var(--type-control-caption);text-transform:none;letter-spacing:normal;line-height:1.3;align-items:flex-start}
.fact-grid dd,.facts-list dd{overflow-wrap:break-word;hyphens:auto}
.facts-missing{color:var(--secondary);line-height:1.4}
.place-hero .hero-title h1{overflow-wrap:break-word;text-wrap:balance;hyphens:none}
.place-hero .hero-title>.chips{align-items:flex-start;gap:8px}
.place-hero .hero-title{pointer-events:none}
.place-hero .hero-title :is(a,button){pointer-events:auto}
.place-intro .level-tabs{position:relative;top:auto;width:max-content;max-width:min(100%,360px);margin-bottom:24px}
.place-intro .level-tabs>a{flex:1 0 auto}
.place-intro>.prose-block:last-child{margin-bottom:0}
.place-intro{margin-bottom:32px}
.place-mini-map .map-poster{height:280px}
.place-mini-map .mini-map-canvas{inset:0;width:100%;height:100%}
.place-mini-map .mini-map-activate{top:12px;bottom:auto}
.place-detail .directions-links{gap:8px}
.place-detail .directions-links .button{min-width:0;padding-inline:12px;font-size:var(--type-button-s);gap:4px;white-space:normal}
.place-detail .directions-links .button svg{width:16px;height:16px}
.source-list{gap:12px;align-items:flex-start}
.source-list>.button{white-space:normal;height:auto;min-height:36px;overflow-wrap:break-word;text-align:start}
.source-group{max-width:100%;min-width:0}
.source-group summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:4px 12px;border-radius:var(--r-md);box-shadow:var(--control-edge-7);font:600 var(--type-button-s)/1.3 var(--font-ui);cursor:pointer;list-style:none;overflow-wrap:break-word}
.source-group summary::-webkit-details-marker{display:none}
.source-group summary svg{width:16px;height:16px;flex:none}
.source-group ul{padding:12px 0 0 20px;max-width:100%}
.source-group li{margin-block:8px}
.source-group a{display:inline-block;min-height:44px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.source-group a svg{width:16px;height:16px}
.source-group summary:active{background:var(--control-press)}
@media(hover:hover) and (pointer:fine){.source-group summary:hover,.source-group a:hover{background:var(--control-hover);color:var(--primary)}}
.report-problem{margin-top:12px}
.place-reading .gallery{display:flex;flex-direction:column;gap:12px}
.place-reading .gallery-row{display:flex;height:auto;gap:12px;align-items:flex-start}
.place-reading .gallery-photo{flex:0 1 calc(var(--ratio)*180px);height:auto;max-width:100%;aspect-ratio:var(--ratio);min-width:0}
.place-reading .gallery-photo>a,.place-reading .gallery-photo picture,.place-reading .gallery-photo img{display:block;width:100%;height:100%;aspect-ratio:var(--ratio);object-fit:cover;border-radius:var(--r-card)}
.place-reading .gallery-photo figcaption{position:static}
.nearby-grid{column-gap:32px;row-gap:12px}
.nearby-card .nearby-row{column-gap:12px}
.nearby-row>strong{display:block;-webkit-line-clamp:unset;overflow:visible;overflow-wrap:break-word;hyphens:auto;line-height:1.25}
.nearby-row>small{align-self:start}
.place-menu{position:fixed;inset:auto;margin:0;padding:8px;width:320px;max-width:calc(100vw - 24px);border:1px solid var(--border);border-radius:var(--r-xl);background:var(--elevated);color:var(--text);box-shadow:var(--lift-3);z-index:100}
.place-menu:popover-open{display:grid;gap:4px}
.place-menu .button,.place-menu button{display:flex;justify-content:flex-start;min-height:48px;height:auto;white-space:normal;border-radius:var(--r-md);box-shadow:none;padding:10px 12px}
.place-menu .button>svg:last-child{margin-left:auto}
.place-menu .place-menu-copy{border-top:1px solid var(--border);border-radius:0}
.place-miss{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;align-items:start;padding:32px 0}
.place-miss>img{width:160px;height:160px;border-radius:var(--r-sheet)}
.place-miss h1{font-size:var(--type-display);margin-bottom:16px}
.place-miss p{margin-bottom:20px;max-width:50ch}
.place-miss form{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.place-miss input{flex:1;min-width:0}
.place-miss .place-suggestions{display:flex;flex-wrap:wrap;gap:8px}
@media(min-width:760px) and (max-width:1279px){
.place-actions-block .place-toggle-row>.action-tile{flex-direction:column;height:64px;min-height:64px;gap:4px}
.place-detail .directions-links{grid-template-columns:1fr}
.place-detail .directions-links .maps-word{display:inline}
.nearby-grid{grid-template-columns:1fr}
}
@media(max-width:759px){
.place-grid{display:flex;flex-direction:column;gap:24px}
.place-grid>.place-side,.place-grid>.place-reading{display:contents}
.place-grid .place-actions-block{order:0;position:static;padding:0;width:100%}
.place-grid .place-intro{order:1;width:100%;margin:0}
.place-grid #plan{order:2;width:100%}
.place-grid #directions{order:3;width:100%}
.place-grid>.place-reading>.prose-block,.place-grid>.place-reading>.history-context{order:4;width:100%;margin:0}
.place-grid .place-mini-map{order:5;width:100%}
.place-grid #sources{order:6}
.place-grid .nearby-main{order:7;width:100%;margin:0}
.place-actions-block .live-place-status{height:48px;min-height:48px;margin-bottom:8px}
.place-actions-block .actions[data-place-actions]{gap:12px}
.place-toggle-row{grid-template-columns:repeat(4,minmax(0,1fr))}
.place-actions-block .place-toggle-row>.action-tile{display:flex;flex-direction:column;gap:4px;height:auto;min-height:64px;padding:8px 4px;white-space:normal;font-size:var(--type-control-caption);text-wrap:balance}
.place-actions-block .place-secondary-row{display:none}
.place-intro .level-tabs{display:flex;width:100%;max-width:100%;top:auto;margin-bottom:24px}
.place-intro .level-tabs>a{flex:1 1 0;min-width:0;padding-inline:6px}
.place-intro .prose-block{margin-bottom:0}
.place-reading .gallery-photo{flex-basis:calc(var(--ratio)*140px)}
.place-reading .gallery-row{flex-wrap:wrap}
.place-reading .gallery-odd .gallery-row:last-child .gallery-photo:last-child img{max-height:none;object-fit:cover}
.place-detail .directions-links{grid-template-columns:repeat(3,minmax(0,1fr))}
.place-miss{grid-template-columns:1fr;gap:24px;text-align:center;padding:24px 0}
.place-miss>img{width:96px;height:96px;margin:auto}
.place-miss form{display:grid}
.place-miss .place-suggestions{justify-content:center}
}
@media(max-width:379px){.place-intro .level-tabs>a{font-size:var(--type-control-caption)}}
@media print{.place-actions-block{display:none}.place-grid>.place-side,.place-grid>.place-reading{display:block}.place-mini-map{break-inside:avoid}}
.reading-offer .reading-primary{background:var(--soft);color:var(--control-selected);box-shadow:var(--control-edge-5)}
.place-menu-rows{display:grid;gap:8px}
.place-menu-rows :is(.button,button){width:100%;height:auto;min-height:48px;justify-content:flex-start;white-space:normal}
.place-menu-rows .button svg:last-child{margin-left:auto}
.place-actions-block [data-live-status][data-state=closingSoon]{background:var(--warning-tint);color:var(--warning-ink)}
.place-actions-block [data-live-status][data-state=closingSoon]::before{background:var(--warning)}
@media(max-width:759px){.mobile-place-back>span{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.15}}
.missing-popular{margin-top:24px}
.reading-offer{display:grid;grid-template-columns:minmax(0,1fr) max-content 44px;align-items:stretch;gap:8px;padding:12px}
.reading-offer>button:not(.icon-button){min-width:0;height:44px;min-height:44px;padding:0 8px;gap:6px;font-size:var(--type-button-s);white-space:nowrap}
.reading-offer .icon-button{position:static;width:44px;height:44px;min-height:44px;margin:0}
html[data-reading-offer=true] [data-reading-offer-slot]{min-height:94px}
.place-detail .directions-links{grid-template-columns:repeat(3,minmax(0,1fr))}
.place-detail .directions-links .button:last-child{grid-column:auto}
.place-detail .directions-links .route-service{flex:1;min-width:0;white-space:normal;line-height:1.1;overflow-wrap:normal;hyphens:none;text-align:center}
.place-detail .directions-links .button>span[aria-hidden]{display:flex;flex:none;width:16px}
.source-group summary{font-variant-numeric:lining-nums tabular-nums}
@media(min-width:760px) and (max-width:1279px){.place-detail .directions-links{grid-template-columns:1fr}}
.place-detail #plan summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px;border-radius:var(--r-md);cursor:pointer}
.place-detail #plan summary>span{min-width:0;flex:1}
.place-detail #plan summary>svg{width:18px;height:18px;flex:none}
@media(hover:hover) and (pointer:fine){
.place-detail #plan summary:hover,.place-detail .contact-row:hover{background:var(--control-hover);color:var(--primary);border-radius:var(--r-md)}
.place-detail .contact-row:hover{border-bottom-color:var(--primary)}
}
.place-detail #plan summary:active,.place-detail .contact-row:active{background:var(--control-press);color:var(--control-selected)}
#map-root{--map-panel-width:380px;--map-info-bottom:0px}
#map-root .map-canvas{left:var(--map-panel-width)}
#map-root .map-panel{width:var(--map-panel-width);top:0;border-radius:0;box-shadow:none;transform:none;overflow:visible}
#map-root .map-filter-bar{position:absolute;top:8px;left:calc(var(--map-panel-width) + 12px);right:12px;height:52px;z-index:4;display:grid;grid-template-columns:var(--filter-prev,0px) minmax(0,var(--filter-window,1fr)) var(--filter-next,0px);align-items:center;justify-content:start;pointer-events:none}
#map-root .map-filter-bar[data-start=true]{--filter-prev:52px}
#map-root .map-filter-bar[data-end=true]{--filter-next:52px}
#map-root .map-filters{grid-column:2;grid-row:1;min-width:0;position:static;display:flex;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;height:52px;max-height:none;padding:4px 0;border:0;border-radius:0;background:none;backdrop-filter:none;overflow:auto hidden;scrollbar-width:none;pointer-events:auto;mask-image:none}
#map-root .map-filters::-webkit-scrollbar{display:none}
#map-root .map-filters .chip{flex:none;box-shadow:0 1px 3px rgb(20 16 13 / .16)}
#map-root .map-filters .chip::before{background:var(--surface)}
#map-root .map-filters .chip[aria-pressed=true]::before{background:var(--soft)}
#map-root .map-filter-bar[data-end=true] .map-filters{mask-image:linear-gradient(to right,#000 calc(100% - 8px),transparent)}
#map-root .map-filter-bar[data-start=true] .map-filters{mask-image:linear-gradient(to right,transparent,#000 8px)}
#map-root .map-filter-bar[data-start=true][data-end=true] .map-filters{mask-image:linear-gradient(to right,transparent,#000 8px,#000 calc(100% - 8px),transparent)}
#map-root :is(.map-filter-prev,.map-filter-next){position:relative;grid-row:1;top:auto;width:44px;height:44px;border-radius:var(--r-round);background:var(--elevated);box-shadow:var(--lift-2);pointer-events:auto}
#map-root .map-filter-prev{grid-column:1;left:auto;justify-self:start}#map-root .map-filter-next{grid-column:3;left:auto;right:auto;justify-self:end}
#map-root .map-controls{position:absolute;right:16px;top:76px;z-index:5;display:grid;gap:12px}
#map-root .map-controls button{position:relative;inset:auto;display:grid;place-items:center;opacity:1;width:44px;height:44px;min-height:44px;padding:10px;border:0;background:var(--elevated);color:var(--text);box-shadow:var(--lift-2),0 0 0 1px var(--ink-12)}
#map-root .map-zoom{border-radius:var(--r-md);box-shadow:var(--lift-2),0 0 0 1px var(--ink-12);background:var(--elevated)}
#map-root .map-zoom button{box-shadow:none;border-radius:var(--r-md) var(--r-md) 0 0}
#map-root .map-zoom button+button{border-radius:0 0 var(--r-md) var(--r-md)}
#map-root .map-zoom button+button::before{content:'';position:absolute;inset:0 8px auto;height:1px;background:var(--ink-12)}
#map-root .map-controls button:disabled{color:var(--tertiary);background:var(--ink-6);opacity:1;cursor:default}
#map-root [data-map-control=north]{border-radius:var(--r-round)}
#map-root .map-locate{position:absolute;inset:auto 12px calc(var(--map-info-bottom) + 12px) auto;z-index:5;width:48px;height:48px;min-height:48px;padding:12px;border:0;border-radius:var(--r-round);background:var(--elevated);color:var(--locate,var(--primary));box-shadow:var(--lift-2),0 0 0 1px var(--ink-12)}
#map-root :is(.map-controls button,.map-locate,.map-filter-prev,.map-filter-next):focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:var(--ring-inner)}
#map-root :is(.map-controls button,.map-locate,.map-filter-prev,.map-filter-next):active:not(:disabled){background:var(--control-press);color:var(--control-selected);transform:scale(.98)}
#map-root .map-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;min-height:60px;padding:8px 16px;border-bottom:1px solid var(--border)}
#map-root .map-panel-head h2{display:flex;align-items:center;gap:8px;font:600 var(--type-secondary)/1.1 var(--font-ui);white-space:nowrap}
#map-root .map-count{position:static;padding:0;border:0;border-radius:0;background:none;max-width:none;font:inherit;font-variant-numeric:lining-nums tabular-nums;color:var(--secondary)}
.map-preview-peek{display:none}
#map-root .map-origin{min-height:44px;min-width:44px;max-width:65%;padding:4px 8px;font-size:var(--type-caption);white-space:normal;text-align:left}
#map-root [data-map-origin]{border:0}
#map-root .map-panel-body{padding:0 12px 12px}
#map-root .map-window{position:static;transform:none}
#map-root .map-list-row{display:grid;grid-template-columns:56px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:80px;height:auto;padding:12px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:none;box-shadow:none;white-space:normal}
#map-root .map-row-photo{width:56px;height:56px;min-width:0;border-radius:10px;overflow:clip;align-self:center;background:var(--soft)}
#map-root .map-row-photo :is(picture,img,.category-cover){display:block;width:56px;height:56px;aspect-ratio:1;object-fit:cover}
#map-root .map-row-photo .category-cover{display:grid;padding:0;place-items:center;min-height:0}
#map-root .map-row-photo .category-cover::after{content:none}
#map-root .map-row-photo .category-cover>svg{width:28px;height:28px}
#map-root .map-row-copy{min-width:0}
#map-root .map-row-copy strong{display:block;font:700 var(--type-setting-title)/1.2 var(--font-title);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;hyphens:auto;text-wrap:pretty}
#map-root .map-row-copy small{display:flex;align-items:center;gap:4px;margin-top:4px;font:500 var(--type-min)/1.2 var(--font-ui);color:var(--secondary);overflow:visible;white-space:normal}
#map-root .map-row-copy small svg{width:14px;height:14px;color:var(--hue)}
#map-root .map-row-arrow svg{width:20px;height:20px;color:var(--primary)}
#map-root .map-list-row[data-hover=true]{background:var(--soft);border-radius:var(--r-md);border-bottom-color:transparent}
#map-root .map-list-row:focus-visible{outline:2px solid var(--primary);outline-offset:-3px;box-shadow:none;background:var(--soft);border-radius:var(--r-md)}
#map-root .map-list-row:active{background:var(--control-press);color:var(--control-selected)}
#map-root .map-panel-body[data-selected=true]{padding:16px}
#map-root .map-panel-body[data-selected=true] .map-panel-heading{min-height:44px}
#map-root .map-panel-heading .icon-button{width:44px;height:44px;min-height:44px}
#map-root .map-empty{display:grid;justify-items:start;gap:12px;padding:16px}
#map-root .maplibregl-canvas:hover{box-shadow:inset 0 0 0 2px var(--ink-22)}
#map-root .maplibregl-canvas:focus-visible{outline:2px solid var(--primary);outline-offset:-4px;box-shadow:var(--ring-inner)}
#map-root .maplibregl-control-container .maplibregl-ctrl-bottom-left{left:12px;bottom:calc(var(--map-info-bottom) + 12px);display:flex;align-items:center;gap:8px}
#map-root .maplibregl-control-container .maplibregl-ctrl-bottom-left>.map-credit{margin:0}
#map-root .maplibregl-ctrl-scale{margin:0;min-height:28px;padding:2px 8px;border:1px solid var(--ink-22);border-bottom:2px solid var(--secondary);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:600 var(--type-min)/1.5 var(--font-ui);font-variant-numeric:lining-nums tabular-nums}
#map-root .map-credit-text{background:var(--surface);backdrop-filter:none}
@media(hover:hover) and (pointer:fine){
#map-root .map-list-row:hover{background:var(--soft);border-radius:var(--r-md);border-bottom-color:transparent}
#map-root :is(.map-controls button,.map-locate,.map-filter-prev,.map-filter-next):hover:not(:disabled){background:var(--control-hover);color:var(--primary)}
}
@media(min-width:760px) and (max-width:1099px){#map-root{--map-panel-width:320px}}
@media(min-width:760px){#map-root .map-panel[data-selected=true] .map-origin{display:none}}
@media(max-width:759px){
#map-root{--map-panel-width:0px;--map-info-bottom:140px}
.js #map-root .map-preview-peek{display:block;position:absolute;inset:auto 0 0;height:140px;border-top:1px solid var(--border);border-radius:20px 20px 0 0;background:var(--surface)}
.map-preview-handle{height:22px;display:grid;place-items:center}
.map-preview-handle>span{width:36px;height:5px;border-radius:3px;background:var(--ink-22)}
.map-preview-row{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;height:72px;padding:8px 16px}
.map-preview-row>span{height:56px;border-radius:10px;background:var(--soft)}
.map-preview-row>div{display:grid;gap:8px}
.map-preview-row>div>span{height:12px;width:75%;border-radius:4px;background:var(--soft)}
.map-preview-row>div>span+span{width:50%}
#map-root .map-filter-bar{left:12px;right:12px;top:4px}
#map-root .map-zoom{display:none}
#map-root .map-controls{top:68px;right:12px}
#map-root .map-controls [data-map-control=north]{width:44px;height:44px}
#map-root .map-panel{inset:64px 0 0;width:100%;border:0;border-top:1px solid var(--border);border-radius:20px 20px 0 0;box-shadow:0 -8px 24px rgb(20 16 13 / .08);transform:translateY(calc(100% - var(--sheet-visible,140px)));transition:transform 220ms ease-out}
#map-root .map-panel.dragging{transition:none}
#map-root .map-sheet-handle{position:relative;display:grid;place-items:center;flex:none;width:100%;height:22px;min-height:22px;padding:0;border:0;border-radius:20px 20px 0 0;box-shadow:none;background:transparent;touch-action:none}
#map-root .map-sheet-handle::after{content:'';position:absolute;inset:-22px 25% 0}
#map-root .map-sheet-handle>span{width:36px;height:5px;border-radius:3px;background:var(--ink-22)}
#map-root .map-sheet-handle:focus-visible{outline-offset:-4px;box-shadow:var(--ring-inner)}
#map-root .map-panel-head{min-height:46px;padding:0 16px}
#map-root .map-list-row{min-height:72px;padding:8px 0}
#map-root .map-panel-body{padding:0 16px 12px}
#map-root .map-panel-body[data-selected=true]{padding:0 16px 16px}
#map-root .map-panel-body[data-selected=true] .map-panel-heading{display:flex;margin:0}
#map-root .map-panel[data-selected=true] .map-panel-head{display:none}
#map-root .map-card-intro{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;padding:0}
#map-root .map-card-photo,#map-root .map-card-intro picture,#map-root .map-card-intro img,#map-root .map-card-photo>.category-cover{width:72px;height:72px;aspect-ratio:1;border-radius:12px;object-fit:cover}
#map-root .map-card-intro>h2{display:block;overflow:visible;margin:0;font-size:var(--type-setting-title);overflow-wrap:break-word;hyphens:auto}
#map-root .map-card-summary{display:none}
#map-root .map-panel[data-detent=large] .map-card-summary{display:block}
#map-root .map-card-actions{flex-wrap:wrap;gap:8px}
#map-root .map-card-actions>*{height:auto;min-height:44px;padding:8px;white-space:normal;line-height:1.2}
#map-root .map-card-actions span{overflow-wrap:break-word}
#map-root .map-locate{bottom:calc(var(--map-info-bottom,140px) + 12px)}
#map-root .map-credit-toggle>span{background:var(--surface);backdrop-filter:none}
#map-root .map-credit-text{bottom:52px;left:0}
}
@media(pointer:coarse){#map-root .map-zoom{display:none}}
@media(prefers-reduced-motion:reduce){#map-root .map-panel{transition:none}}
@media(hover:hover) and (pointer:fine){#map-root .map-sheet-handle:hover>span{background:var(--primary)}}
#map-root .map-sheet-handle:active>span{background:var(--primary)}
#map-root .map-selected-caption{position:absolute;z-index:1;transform:translateX(-50%);max-width:220px;pointer-events:none;text-align:center;font:700 var(--type-map-count)/1.2 var(--font-ui);color:var(--text)}
#map-root .map-selected-caption>svg{display:block;width:12px;height:10px;margin:0 auto;fill:var(--hue)}
#map-root .map-selected-caption>span{display:block;padding:6px 8px;background:var(--surface);border:1px solid var(--ink-12);border-radius:8px;box-shadow:var(--lift-1)}
@media(max-width:759px){
#map-root .map-canvas,.js #map-root .map-preview{bottom:var(--map-info-bottom,140px)}
#map-root .maplibregl-control-container .maplibregl-ctrl-bottom-left{bottom:16px}
}
#map-root .map-filters .chip::before{background:var(--chip-bg,var(--surface))}
#map-root .map-filters .chip:focus-visible{outline:2px solid var(--primary);outline-offset:-3px;box-shadow:var(--ring-inner)}
@media(max-width:759px){#map-root .map-card-actions>*{flex-direction:column;gap:4px}#map-root .map-card-actions span{min-width:0;white-space:normal}}
#map-root .map-card-actions>*{flex-direction:column;gap:4px;height:auto;min-height:64px;padding:6px;font-size:var(--type-button-s)}
#map-root .map-card-actions span{min-width:0;white-space:normal}
#map-root .map-filters{position:relative;inset:auto}
#map-root .map-locate:disabled{opacity:1;color:var(--secondary);cursor:progress}
#map-root .map-locate[data-locating=true]::after{content:'';position:absolute;inset:4px;border:2px solid var(--primary);border-right-color:transparent;border-radius:50%;animation:map-locating 1s linear infinite}
#map-root .map-locate[data-location-error=true]::before{content:'';position:absolute;right:5px;top:5px;width:8px;height:8px;border:2px solid var(--elevated);border-radius:50%;background:var(--danger)}
@keyframes map-locating{to{rotate:360deg}}
@media(prefers-reduced-motion:reduce){#map-root .map-locate[data-locating=true]::after{animation:none}}
.js #map-root .map-preview-frame{inset:0;overflow:clip;container-type:size}
.js #map-root .map-preview-country{max-height:none;width:max(100cqw,152.964cqh);height:max(65.375cqw,100cqh)}
#map-root .maplibregl-control-container{--map-info-bottom:12px}
@media(max-width:759px){#map-root .maplibregl-control-container{--map-info-bottom:16px}}
.explore-discovery-bar{margin-bottom:24px}
.explore-search{position:relative;top:auto;padding:0;margin:0}
.explore-search form{height:48px;transition:box-shadow 160ms var(--ease-out),background-color 160ms var(--ease-out)}
.explore-search input[type=search]{height:44px;min-height:44px;transition:background-color 160ms var(--ease-out);border-radius:var(--r-sm)}
.explore-search form:focus-within{box-shadow:var(--ring)}
.explore-toolbar{display:flex;justify-content:space-between;gap:12px;min-height:44px;align-items:center;flex-wrap:wrap;row-gap:12px;margin:0 0 16px;scroll-margin-top:180px}
.explore-toolbar h2{font:700 var(--type-chip)/1.35 var(--font-ui);min-width:0;flex:1 1 140px;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.35}
.explore-sort{flex:0 1 auto;margin:0;max-width:100%;width:auto;height:auto;min-height:40px;align-items:stretch}
.explore-sort:not([data-proportional]){display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;width:max-content}
.explore-sort>button{height:auto;min-height:44px;white-space:normal;text-wrap:balance;line-height:1.2;padding:8px 10px}
.explore-layout{display:grid;grid-template-columns:1fr;gap:24px;margin-top:32px;align-items:start}
.explore-layout .card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
main[data-page=explore] .place-card{--card-photo-ratio:1.6}
main[data-page=explore] .place-card .card-body>h3{display:block;-webkit-line-clamp:unset;overflow:visible;text-overflow:clip;min-height:2lh;overflow-wrap:break-word;hyphens:auto}
main[data-page=explore] .filters .chips{gap:8px;flex-wrap:wrap;max-height:none;overflow:visible;padding:0;mask-image:none}
main[data-page=explore] .filters :is(.chip,button){height:auto;min-height:44px;white-space:normal;text-wrap:pretty;padding-block:8px;line-height:1.25;max-width:100%}
main[data-page=explore] .filters h2{font:600 var(--type-button-m)/1.3 var(--font-ui);margin:24px 0 12px}
main[data-page=explore] .filters .filter-section-heading h2{margin:0}
main[data-page=explore] .filters .filter-section-heading{display:flex;min-height:44px;margin-bottom:12px;align-items:center;gap:8px}
main[data-page=explore] .filters .region-toggle{flex:none;margin:0}
.explore-layout>.filters{position:static;top:16px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;mask-image:none;padding:16px;scrollbar-gutter:stable}
main[data-page=explore] .filters [data-clear-filters]{width:100%;margin-top:8px;box-shadow:none;color:var(--primary)}
main[data-page=explore] .filters [data-clear-filters]::before{content:none}
.explore-mobile-filters{display:none}
main[data-page=explore] .collection-card{transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out)}
main[data-page=explore] .collection-cover{background:var(--surface);transition:filter 160ms var(--ease-out)}
main[data-page=explore] .collection-cover:active{filter:brightness(.88)}
main[data-page=explore] .collection-grid:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
.explore-filter-sheet{padding:0;max-width:calc(100% - 24px)}
.explore-filter-sheet>footer{padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface)}
.explore-filter-sheet>footer button{width:100%;height:auto;min-height:48px;padding-block:12px;white-space:normal}
.explore-filter-sheet .filters{border:0;box-shadow:none;padding:0;max-height:none;overflow:visible;mask-image:none}
.explore-filter-sheet .filter-section-heading{margin-top:4px}
@media(hover:hover) and (pointer:fine){
.explore-search input[type=search]:hover{background:var(--ink-6)}
.explore-search form:hover:not(:focus-within){box-shadow:var(--control-edge-5)}
main[data-page=explore] .collection-cover:hover{filter:brightness(1.10)}
main[data-page=explore] .collection-grid:hover{background:var(--ink-4)}
main[data-page=explore] .filters [data-clear-filters]:hover{background:var(--ink-6);box-shadow:none}
}
@media(min-width:1100px){
.explore-layout{grid-template-columns:248px minmax(0,1fr)}
.explore-layout>.filters{position:sticky}
}
@media(min-width:760px) and (max-width:1099px){
main[data-page=explore] .filters .regions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow-y:auto;scrollbar-gutter:stable}
main[data-page=explore] .filters .chips:has(>[data-category]){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.js main[data-page=explore] .regions:not([data-expanded]){max-height:148px}
}
@media(max-width:759px){
.explore-discovery-bar{position:sticky;top:calc(56px + env(safe-area-inset-top));z-index:10;background:var(--bg);margin:0 -16px 24px;padding:8px 16px;border-bottom:1px solid var(--border)}
.js .explore-mobile-filters{display:flex;align-items:center;gap:12px;margin-top:8px;min-width:0}
main[data-page=explore] [data-open-explore-filters]{flex:none;max-width:60%;height:44px;padding-inline:12px}
main[data-page=explore] .filter-count{font-variant-numeric:lining-nums tabular-nums;color:var(--primary)}
.explore-active-filters{display:flex;gap:8px;min-width:0;flex:1;overflow-x:auto;scrollbar-width:none;mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent);padding-block:4px}
.explore-active-filters::-webkit-scrollbar{display:none}
.explore-active-filters>.chip{flex:none;max-width:none}
main[data-page=explore] .active-filter-chip>svg{width:16px;height:16px}
.js .explore-layout>.filters{display:none}
.explore-layout{display:block;margin-top:24px}
.explore-results-column{margin-top:24px}
.explore-layout .card-grid{grid-template-columns:minmax(0,1fr)}
.explore-sort{flex:0 0 100%;width:100%;margin-left:auto}
.explore-filter-sheet[open]{display:flex;flex-direction:column;inset:auto 0 0;width:100%;max-width:100%;max-height:calc(100dvh - env(safe-area-inset-top) - 24px);margin:0;border-radius:var(--r-sheet) var(--r-sheet) 0 0;background:var(--surface)}
.explore-filter-sheet .sheet-body{padding:0 16px 16px;min-height:0;overflow-y:auto}
.explore-filter-sheet>header, .explore-filter-sheet>footer{flex:none}
.explore-filter-sheet>header{padding-inline:16px}
.explore-filter-sheet .filters .chip{justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){main[data-page=explore] :is(.collection-card,.collection-cover,.explore-search form,.explore-search input){transition:none}}
.explore-search{min-width:0;z-index:6}
.explore-search form{display:flex;align-items:center;border-radius:var(--r-lg);padding:0 4px 0 16px;gap:8px}
.explore-search input{flex:1;width:100%;min-width:0;border:0;background:transparent;padding:0;font-size:var(--type-lead)}
.explore-search input::-webkit-search-cancel-button{display:none}
.explore-search button{width:44px;min-height:44px;height:44px}
.explore-suggestions{position:absolute;inset:56px 0 auto;max-height:min(500px,60dvh);overflow-y:auto;background:var(--elevated);border:1px solid var(--border);border-radius:var(--r-lg);padding:12px}
.explore-suggestions h3{font:700 var(--type-chip)/1.3 var(--font-ui);color:var(--secondary);margin:8px}
.explore-suggestions a{display:flex;align-items:center;min-height:44px;padding:8px;border-radius:var(--r-sm);font-size:var(--type-secondary)}
.explore-suggestions [aria-selected=true]{background:var(--soft)}
.explore-suggestions [data-show-matches]{width:100%;margin-top:8px}
.explore-empty{grid-column:1/-1}
.explore-more{display:flex;justify-content:center;margin-top:24px}
@media(hover:hover) and (pointer:fine){.explore-suggestions a:hover{background:var(--soft)}}
@media(hover:none),(pointer:coarse){
main[data-page=explore] .place-card:hover{border-color:var(--border)}
main[data-page=explore] .place-card:hover .card-photo img{transform:none}
}
.directory-heading{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px;align-items:start;margin-bottom:32px}
.directory-heading h1{font-size:var(--type-display);margin:0;overflow-wrap:break-word;text-wrap:balance}
.directory-heading .lead{margin:16px 0 0;max-width:60ch}
.directory-stats{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:16px}
.directory-stats .button{height:auto;min-height:44px;white-space:normal}
.directory-head-photo{position:relative;margin:0;border-radius:var(--r-card);aspect-ratio:16/10;max-height:280px}
.directory-head-photo :is(picture,img){display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}
.directory-head-photo .credit-toggle{top:8px;right:8px}
.directory-members{min-width:0}
.directory-members h2{margin:0 0 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.directory-highlights{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.directory-highlights>li{min-width:0;margin:0}
.directory-place{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);transition:border-color 160ms var(--ease-out),background-color 160ms var(--ease-out)}
.directory-place-link{display:block;border-radius:inherit;height:100%}
.directory-photo{position:relative;aspect-ratio:16/10;border-radius:var(--r-card) var(--r-card) 0 0}
.directory-photo :is(picture,img){display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.directory-number{position:absolute;left:8px;top:8px;display:grid;place-items:center;min-width:28px;height:28px;padding:0 4px;background:var(--surface);color:var(--text);border-radius:8px;font:700 var(--type-caption)/1 var(--font-ui);font-variant-numeric:lining-nums tabular-nums}
.directory-place>.credit-toggle{top:8px;right:8px}
.directory-copy{padding:16px}
.directory-copy h3{font:700 var(--type-card-name)/1.2 var(--font-title);margin:0;overflow-wrap:break-word;hyphens:auto;text-wrap:balance}
.directory-copy p{margin:12px 0 0;font-size:var(--type-secondary);line-height:1.4}
.directory-copy .data{font-size:var(--type-caption)}
.directory-copy .directory-distance{display:block;margin-top:8px}
.directory-more{margin-top:32px}
.directory-remainder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:8px}
.directory-remainder>li{min-width:0;border-bottom:1px solid var(--border);margin:0}
.directory-row{display:flex;gap:12px;align-items:center;min-height:56px;padding:12px 8px;border-radius:var(--r-md);transition:background-color 160ms var(--ease-out)}
.directory-row-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.directory-row-name{font:600 var(--type-body)/1.3 var(--font-ui);overflow-wrap:break-word;hyphens:auto}
.directory-town,.directory-distance{font-size:var(--type-caption);color:var(--secondary);line-height:1.3;overflow-wrap:break-word}
.directory-row-icon{color:var(--hue);display:grid;place-items:center;flex:none;width:24px}
.directory-row>svg{flex:none;width:16px;height:16px;color:var(--secondary)}
.directory-place:has(.directory-place-link:focus-visible){box-shadow:var(--ring)}
.directory-place-link:focus-visible{outline:0;box-shadow:none}
.directory-row:focus-visible{box-shadow:var(--ring-inner);outline:0}
.directory-place-link:active,.directory-row:active{background:var(--ink-8);transform:scale(.98)}
.directory-region{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;align-items:start}
.directory-region .directory-highlights,.directory-region .directory-remainder{grid-template-columns:repeat(2,minmax(0,1fr))}
.directory-region-map{position:sticky;top:24px;min-width:0}
.directory-region-map .map-poster{height:clamp(280px,55dvh,520px)}
@media(hover:hover) and (pointer:fine){.directory-place:hover{border-color:var(--primary);background:var(--soft)}.directory-row:hover{background:var(--soft)}}
@media(max-width:1099px){.directory-highlights,.directory-remainder{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-region .directory-highlights,.directory-region .directory-remainder{grid-template-columns:minmax(0,1fr)}}
@media(max-width:759px){.directory-heading{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:24px}.directory-heading h1{font-size:var(--type-display)}.directory-head-photo{max-height:240px}.directory-highlights,.directory-remainder,.directory-region{grid-template-columns:minmax(0,1fr)}.directory-region-map{position:relative;top:auto;grid-row:1;margin-bottom:8px}.directory-region-map .map-poster{height:280px}.directory-remainder{gap:8px}.directory-region .directory-highlights,.directory-region .directory-remainder{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.directory-place,.directory-row{transition:none}.directory-place-link:active,.directory-row:active{transform:none}}
.directory-region-map .region-static-map{display:block;width:100%;height:100%;background:var(--surface)}
.region-static-map .dark-poster{display:none}
[data-theme=dark] .region-static-map .dark-poster{display:block}
[data-theme=dark] .region-static-map .light-poster{display:none}
.region-poster[data-mini-ready=true]>.region-static-map{visibility:hidden}
.directory-region-map .map-poster>.map-link{left:auto;right:12px;bottom:12px;width:auto;border-radius:var(--r-pill);padding:0 16px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--lift-1)}
.directory-region-map .mini-map-canvas .maplibregl-ctrl-bottom-left{left:8px;bottom:8px}
@media(max-width:759px){.directory-region-map .mini-map-canvas{--map-info-bottom:12px}.directory-region-map .mini-map-canvas .maplibregl-ctrl-bottom-left{left:12px}}
.directory-region-map .mini-map-canvas .map-credit{margin:0}
.directory-region-map .map-poster>.map-attribution{bottom:auto;top:12px;left:12px;max-width:calc(100% - 24px);width:auto;pointer-events:auto}
.directory-region-map .mini-map-activate{height:auto;min-height:44px;max-width:calc(100% - 24px);white-space:normal}
.directory-heading:not(:has(figure)){grid-template-columns:minmax(0,1fr)}
.directory-cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.directory-cover-card{position:relative;min-width:0;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out)}
.directory-cover-link{display:block;border-radius:inherit}
.directory-cover-photo{aspect-ratio:16/10;border-radius:var(--r-card) var(--r-card) 0 0}
.directory-cover-photo :is(picture,img){display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.directory-cover-card>.credit-toggle{top:8px;right:8px}
.directory-cover-copy{padding:16px}
.directory-cover-copy h2{font-size:var(--type-card-name);line-height:1.2;margin:0;overflow-wrap:break-word;hyphens:auto;text-wrap:balance}
.directory-cover-copy p{font-size:var(--type-secondary);line-height:1.4;margin:12px 0 0}
.directory-cover-copy .stat-chip{margin-top:16px}
.directory-cover-card:has(.directory-cover-link:focus-visible){box-shadow:var(--ring)}
.directory-cover-link:focus-visible{box-shadow:none;outline:0}
.directory-cover-link:active{transform:scale(.98);background:var(--ink-8)}
.directory-country{position:relative;margin:0 0 32px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);padding:16px}
.directory-country>svg{display:block;width:100%;max-height:420px}
.directory-country-ground{fill:var(--soft)}
.directory-country-border{fill:none;stroke:var(--primary);stroke-width:2;pointer-events:none;vector-effect:non-scaling-stroke}
.region-area{fill:var(--primary);fill-opacity:.06;stroke:var(--primary);stroke-opacity:.45;stroke-width:1.5;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill-opacity 160ms var(--ease-out),stroke-width 160ms var(--ease-out)}
.region-area[data-active]{fill-opacity:.28;stroke-opacity:1;stroke-width:3}
.directory-country .caption{margin:12px 0 0;max-width:68ch}
.directory-country .caption a{display:inline-flex;align-items:center;min-height:44px;color:var(--primary);border-radius:var(--r-sm);padding-inline:4px}
.directory-area-label{position:absolute;left:28px;top:24px;font:600 var(--type-body)/1.3 var(--font-ui);margin:0;max-width:calc(100% - 56px);background:var(--surface);padding:8px 12px;border-radius:var(--r-md);pointer-events:none}
.directory-cover-card[data-active]{border-color:var(--primary);background:var(--soft)}
@media(hover:hover) and (pointer:fine){.directory-cover-card:hover{border-color:var(--primary);background:var(--soft)}.directory-country .caption a:hover{background:var(--soft)}}
@media(max-width:1099px){.directory-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){.directory-cover-grid{grid-template-columns:minmax(0,1fr);gap:16px}.directory-country{padding:12px}.directory-area-label{position:static;padding:0;margin:12px 0 0;max-width:100%;min-height:2lh}.directory-country .caption{font-size:var(--type-caption)}}
@media(prefers-reduced-motion:reduce){.directory-cover-card,.region-area{transition:none}.directory-cover-link:active{transform:none}}
.directory-cover-grid,.directory-highlights{align-items:stretch}
.directory-place,.directory-cover-card{height:100%}
.directory-cover-link{display:flex;flex-direction:column;height:100%}
.directory-cover-photo{flex:none}
.directory-cover-copy{display:flex;flex-direction:column;flex:1;gap:12px}
.directory-cover-copy .stat-chip{margin:4px 0 0;align-self:flex-start}
@media(min-width:1100px){.directory-hub-region{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;align-items:start}.directory-hub-region>.directory-country{grid-column:2;grid-row:1;position:sticky;top:24px;margin:0}.directory-hub-region>.directory-cover-grid{grid-column:1;grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr))}}
.directory-cover-photo{position:relative;min-height:0;min-width:0}
.directory-cover-photo>picture{position:absolute;inset:0}
.directory-cover-photo img{aspect-ratio:auto}
.directory-cover-map{display:block;width:100%;height:100%;border-radius:inherit;background:var(--surface)}
.directory-cover-photo>.directory-cover-map{position:absolute;inset:0}
.directory-cover-map .dark-poster{display:none}
[data-theme=dark] .directory-cover-map .light-poster{display:none}
[data-theme=dark] .directory-cover-map .dark-poster{display:block}
[data-has-origin=true] .directory-distance{min-height:1.3em}
[data-has-origin=true] .directory-distance[hidden]{display:block!important;visibility:hidden}
[data-has-origin=true] [data-directory-nearest]{min-width:min(200px,100%);min-height:32px}
[data-has-origin=true] [data-directory-nearest][hidden]{display:inline-flex!important;visibility:hidden}
main[data-page=trips] .planner-toolbar{grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:24px;padding:24px}
main[data-page=trips] .planner-copy{display:flex;gap:16px}
main[data-page=trips] .planner-actions{display:grid;grid-template-columns:minmax(0,1fr)}
main[data-page=trips] .planner-actions>button{min-height:48px}
.day-preview{min-width:0;display:flex;flex-direction:column;gap:12px}
.day-preview header h2{font-size:var(--type-title);margin:0}
.day-preview header p{margin:4px 0 0;min-height:24px;color:var(--secondary)}
.day-preview>.caption{margin:0;color:var(--secondary)}
.day-preview-stops{display:grid;gap:12px}
.day-preview-stop{position:relative;display:grid;grid-template-columns:120px minmax(0,1fr);min-width:0;border-radius:var(--r-lg);background:var(--elevated);border:1px solid var(--border);transition:background var(--quick),border-color var(--quick)}
.day-preview-photo{position:relative;min-width:0;height:96px}
.day-preview-photo picture,.day-preview-photo img,.trip-sample-photo picture,.trip-sample-photo img,.trip-entry-image picture,.trip-entry-image img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.day-preview-photo{border-radius:var(--r-lg) 0 0 var(--r-lg)}
.day-preview-link{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:12px;text-decoration:none;color:var(--text);min-width:0}
.day-preview-link:after{content:"";position:absolute;inset:0;border-radius:var(--r-lg)}
.day-preview-link h3{font-size:var(--type-lead);line-height:1.2;margin:0;hyphens:manual;overflow-wrap:break-word}
.day-preview-link p{margin:0;font-size:var(--type-caption);color:var(--secondary)}
.day-preview-stop .credit-toggle{z-index:2;left:4px;right:auto;bottom:4px}
.day-preview-stop:has(:focus-visible){outline:2px solid var(--primary);outline-offset:2px}
.day-preview-link:focus-visible{outline:none}
.trip-ideas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.trip-sample{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
.trip-sample-photo{position:relative;aspect-ratio:16/9;border-radius:var(--r-card) var(--r-card) 0 0}
.trip-sample-photo>picture,.trip-entry-image>picture{position:absolute;inset:0}
.trip-sample-body{padding:16px;display:flex;flex-direction:column;gap:12px;flex:1}
.trip-sample-body h3{font-size:var(--type-title);margin:0}
.trip-sample-body p{margin:0;color:var(--secondary);font-size:var(--type-caption);min-height:24px}
.trip-sample-body ol{padding-left:24px;margin:0 0 4px;flex:1;font-size:var(--type-secondary);line-height:1.4}
.trip-sample-body li+li{margin-top:6px}
.trip-sample-body button{width:100%;min-height:44px;height:auto;white-space:normal}
.trip-library-note{margin:0;color:var(--secondary);max-width:68ch}
.trip-entry-photo{position:relative;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);display:flex;flex-direction:column;min-width:0}
.trip-entry-image{position:relative;aspect-ratio:21/9;border-radius:var(--r-card) var(--r-card) 0 0}
.trip-entry-photo .trip-entry{border:0;border-radius:0 0 var(--r-card) var(--r-card);flex:1}
.trip-entry-photo .trip-entry:after{content:"";position:absolute;inset:0;border-radius:var(--r-card)}
.trip-entry-photo .credit-toggle{z-index:2}
.trip-entry-photo:has(:focus-visible){outline:2px solid var(--primary);outline-offset:2px}
.trip-entry-photo .trip-entry:focus-visible{outline:none}
.trips-detail-active .trip-ideas{display:none}
@media(hover:hover) and (pointer:fine){.day-preview-stop:hover,.trip-entry-photo:hover{background:var(--soft);border-color:var(--primary)}.day-preview-stop:hover h3,.trip-entry-photo:hover h2{text-decoration:underline;text-underline-offset:4px}}
.day-preview-stop:active,.trip-entry-photo:active{transform:scale(.98)}
@media(min-width:1600px){.day-preview-stops{grid-template-columns:repeat(3,minmax(0,1fr));flex:1;align-items:stretch}.day-preview-stop{display:flex;flex-direction:column}.day-preview-photo{height:auto;aspect-ratio:16/10;border-radius:var(--r-lg) var(--r-lg) 0 0}.day-preview-link{justify-content:flex-start;flex:1}.day-preview-link p{margin-top:auto}}
@media(max-width:1199px){main[data-page=trips] .planner-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:16px;gap:16px}.day-preview-stop{grid-template-columns:88px minmax(0,1fr)}.day-preview-photo{height:104px}.day-preview-link{padding:12px}}
@media(max-width:759px){main[data-page=trips] .planner-toolbar{grid-template-columns:minmax(0,1fr);padding:12px;gap:24px}main[data-page=trips] .planner-copy{gap:8px;align-items:stretch;text-align:start}main[data-page=trips] .planner-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}.day-preview-stop{grid-template-columns:96px minmax(0,1fr)}.day-preview-photo{height:104px}.trip-ideas-grid{grid-template-columns:minmax(0,1fr)}.trip-sample-body ol{min-height:0}.trip-entry-image{aspect-ratio:16/9}}
.road-planner{grid-template-columns:minmax(0,420px) minmax(0,1fr);padding:0;border:0;background:none;align-items:start}
.road-planner .road-controls{padding:24px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
.road-planner .road-detour .segmented{--control-fill:1}
.road-planner .road-fields{grid-template-columns:minmax(0,1fr) 44px}
.road-planner .road-fields [data-to]{grid-column:1;grid-row:2}
.road-planner [data-road-swap]{grid-column:2;grid-row:1/3}
.road-planner .planning-preview{height:clamp(280px,46dvh,480px);min-height:0;max-height:none;aspect-ratio:auto}
.road-destination-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.road-destination{position:relative;min-width:0;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);transition:background var(--quick),border-color var(--quick),transform var(--quick)}
.road-destination-photo{position:relative;aspect-ratio:16/10;border-radius:var(--r-card) var(--r-card) 0 0}
.road-destination-photo picture{position:absolute;inset:0}
.road-destination-photo picture,.road-destination-photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.road-destination>button{display:flex;justify-content:space-between;gap:8px;text-align:left;white-space:normal;min-height:64px;height:auto;width:100%;padding:12px 16px;border:0;box-shadow:none;background:transparent;color:var(--text);border-radius:0 0 var(--r-card) var(--r-card);font-family:var(--font-title);font-size:var(--type-title);line-height:1.2}
.road-destination>button>span{min-width:0;overflow-wrap:break-word}
.road-destination>button>svg{flex-shrink:0;color:var(--primary)}
.road-destination>button:after{content:"";position:absolute;inset:0;border-radius:var(--r-card)}
.road-destination .credit-toggle{z-index:2}
.road-destination:has(:focus-visible){outline:2px solid var(--primary);outline-offset:2px}
.road-destination>button:focus-visible{outline:none}
.road-destination:has([aria-pressed=true]){background:var(--soft);border-color:var(--primary)}
.road-destination:active{transform:scale(.98)}
main[data-page="trips/road"] [data-road-results] .row-card{position:relative}
main[data-page="trips/road"] [data-road-results] .row-card>.credit-toggle{display:flex;left:12px;top:12px;right:auto;bottom:auto}
@media(hover:hover) and (pointer:fine){.road-destination:hover{background:var(--soft);border-color:var(--primary)}.road-destination:hover>button>span{text-decoration:underline;text-underline-offset:4px}}
@media(max-width:1099px){.road-planner{grid-template-columns:minmax(0,1fr);padding:0}.road-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){.road-destination-grid{gap:12px}.road-destination>button{font-size:var(--type-lead);padding:12px;min-height:72px}.road-planner .planning-preview{height:clamp(220px,34dvh,320px)}}
.planner-time-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.planner-time-heading>p{min-width:0;flex:1}
.planner-time-heading>[data-plan-start]{max-width:56%;min-width:44px;white-space:normal;height:auto;min-height:44px;padding:4px 8px}
@media(max-width:759px){main[data-page=trips] .planner-actions{margin-top:0}}
.practical-hero{height:280px;position:relative;isolation:isolate;border-radius:var(--r-card);margin-bottom:24px;background:var(--surface);color:var(--photo-ink)}
.practical-hero-photo{position:absolute;inset:0;z-index:-2;border-radius:inherit;overflow:clip}
.practical-hero-photo picture,.practical-hero-photo img{width:100%;height:100%;object-fit:cover}
.practical-hero:after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--photo-hero-scrim)}
.practical-hero-copy{position:absolute;inset:auto 60px 24px 24px;max-width:680px;text-shadow:0 1px 3px rgb(0 0 0/.5)}
.practical-hero-copy h1{font:700 var(--type-display)/1.1 var(--font-title);margin:0 0 12px;color:inherit}
.practical-hero-copy p{margin:0;color:inherit;font-size:var(--type-body);line-height:1.35}
.practical-hero>.credit-toggle{z-index:2}
main[data-page=practical] .practical-emergency{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:0 24px 0 0;border-inline-start:4px solid var(--danger);background:var(--surface)}
.emergency-feature{display:flex;align-items:center;gap:24px;padding:24px;color:var(--text);text-decoration:none;border-radius:var(--r-lg);transition:background var(--quick),transform var(--quick)}
.emergency-feature>div{flex:1;min-width:0}.emergency-feature>svg{width:24px;height:24px;flex:none}
.practical-emergency .emergency-actions{gap:8px;max-width:32ch}
.practical-emergency .emergency-actions .button{background:var(--danger-fill);color:var(--on-danger);border-color:var(--danger-fill);box-shadow:none}
.practical-emergency .text-link{gap:8px;padding:4px 8px;color:var(--text);border-radius:var(--r-md)}
.practical-topics{gap:24px}
.practical-topic{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;gap:0;padding:0;position:relative;isolation:isolate;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--border);text-decoration:none;transition:background var(--quick),border-color var(--quick),transform var(--quick)}
.topic-link{position:absolute;inset:0;z-index:1;border-radius:inherit}
.topic-photo{aspect-ratio:16/9;position:relative;min-width:0;border-radius:var(--r-card) var(--r-card) 0 0;overflow:clip}
.topic-photo picture,.topic-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform var(--quick)}
.topic-photo .credit-toggle{z-index:2}
.practical-topic .topic-copy{display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:12px;padding:20px;min-width:0}
.practical-topic h3{font:700 var(--type-topic-title)/1.2 var(--font-title);margin:0;text-wrap:balance;hyphens:manual}
.practical-topic p{margin:0;line-height:1.4;font-size:var(--type-secondary);color:var(--secondary);text-wrap:pretty}
.topic-time{display:flex;align-items:center;gap:8px;color:var(--secondary);font-size:var(--type-caption);line-height:1.3}
.topic-time svg{width:18px;height:18px;flex:none}.topic-time svg:last-child{margin-inline-start:auto;color:var(--primary)}
.practical-topics,.article-related .related-articles{grid-auto-rows:auto;align-items:stretch}
.practical-topics>.practical-topic,.related-articles>.practical-topic{grid-row:span 4;grid-template-rows:subgrid}
@media(hover:hover) and (pointer:fine){.practical-topic:hover{border-color:var(--primary);background:var(--control-hover)}.practical-topic:hover img{transform:scale(1.02)}.emergency-feature:hover{background:var(--ink-8);color:var(--text)}.practical-emergency .emergency-actions .button:hover{background:var(--danger-hover);color:var(--on-danger)}.practical-emergency .text-link:hover{background:var(--ink-8);color:var(--text)}}
.practical-topic:has(.topic-link:active),.emergency-feature:active{transform:scale(.98);background:var(--control-press)}
.practical-emergency .emergency-actions .button:active{background:var(--danger-press);color:var(--on-danger)}
.topic-link:focus-visible,.emergency-feature:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
@media(min-width:1280px){.practical-topics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:759px){.practical-hero-copy{inset:auto 52px 20px 20px}.practical-hero{margin-bottom:24px}.practical-topics{gap:20px}.practical-topic .topic-copy{padding:16px}.practical-topic{grid-template-columns:minmax(0,1fr)}main[data-page=practical] .practical-emergency{grid-template-columns:minmax(0,1fr);gap:0;padding:0}.emergency-feature{gap:16px;padding:16px;min-height:112px}.emergency-feature>svg{width:20px;height:20px}.practical-emergency .emergency-actions{display:flex;align-items:center;justify-content:space-between;max-width:none;padding:0 16px 16px;flex-wrap:wrap;gap:8px}.article-related .related-articles{gap:20px}}
@media(prefers-reduced-motion:reduce){.practical-topic:has(.topic-link:active),.emergency-feature:active,.practical-topic:hover img{transform:none}}
.practical-emergency .emergency-number{color:var(--editorial-alert)}
.article-reading{display:flex;align-items:center;gap:8px;color:var(--secondary);font-size:var(--type-caption);margin:0 0 12px}.article-reading svg{width:20px;height:20px}
main[data-page=practical-article] .article-layout{max-width:1032px;grid-template-columns:minmax(0,680px) 320px;gap:32px;justify-content:start}
main[data-page=practical-article] .article-aside{position:sticky;top:16px;display:grid;gap:24px}
.article-illustration{position:relative;aspect-ratio:16/9;border-radius:var(--r-card);overflow:clip}
.article-illustration picture,.article-illustration img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
main[data-page=practical-article] .article-aside h2{margin:0 0 12px;font:700 var(--type-control-label)/1.3 var(--font-ui)}
.article-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.article-stat{display:flex;align-items:center;flex-direction:column;gap:4px;text-align:center;min-width:0}
.article-stat strong{font:700 var(--type-article-stat)/1 var(--font-ui);font-variant-numeric:tabular-nums lining-nums;color:var(--text)}
.article-stat small{font-size:var(--type-caption);color:var(--secondary)}
.article-stat span{font-size:var(--type-secondary);line-height:1.25;color:var(--secondary)}
.article-stat.speed strong{display:grid;place-items:center;width:76px;height:76px;border:4px solid var(--danger);border-radius:50%;background:var(--surface)}
.article-stat:not(.speed){grid-column:1/-1;align-items:flex-start;text-align:start;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface)}
.article-stat.emergency strong{color:var(--editorial-alert)}
main[data-page=practical-article] .article-aside nav{padding-top:16px;border-top:1px solid var(--border);gap:4px}
main[data-page=practical-article] .article-aside nav a{color:var(--text-2)}
.article-related{max-width:1032px}
@media(min-width:760px) and (max-width:1099px){main[data-page=practical-article] .article-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}}
@media(max-width:759px){main[data-page=practical-article] .article-layout{grid-template-columns:minmax(0,1fr);gap:24px}main[data-page=practical-article] .article-aside{position:static;border:0;padding:0}main[data-page=practical-article] .article-aside nav{grid-template-columns:repeat(2,minmax(0,1fr))}main[data-page=practical-article] .article-aside nav h2{grid-column:1/-1}}
.article-rail-summary{font-size:var(--type-body);color:var(--text-2);line-height:1.45;margin:0;text-wrap:pretty}
.emergency-feature h2{font:700 var(--type-topic-title)/1.2 var(--font-title);hyphens:none;overflow-wrap:normal}
@media(max-width:759px){.emergency-feature{position:relative}.emergency-feature>svg{position:absolute;inset-inline-end:16px;bottom:16px}.emergency-feature p{padding-inline-end:24px}}
.search-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start;margin-top:16px;min-height:calc(100dvh - 200px)}
.search-results-column{min-width:0}
.search-query-loading{display:none}
.search-query-entry [data-search-discovery]{display:none}
.search-query-entry .search-query-loading{display:grid;gap:12px;padding-top:48px}
.search-loading-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;min-height:88px;align-items:center}
.search-loading-row>span{height:72px;background:var(--ink-6);border-radius:var(--r-md)}
.search-loading-row>div{display:grid;gap:12px}
.search-loading-row i{display:block;height:16px;width:80%;background:var(--ink-6);border-radius:var(--r-xs)}
.search-loading-row i+i{width:55%}
.search-count{font-weight:700;color:var(--secondary);min-height:24px;margin:0 0 16px}
.search-map-aside{min-width:0;grid-row:2;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
.search-map-aside>header{padding:16px;display:grid;gap:4px;min-height:88px}
.search-map-aside h2{font-size:var(--type-title);margin:0}
.search-map-aside header p{margin:0;color:var(--secondary)}
.search-map{position:relative;isolation:isolate;height:clamp(200px,28dvh,280px);border-radius:0 0 var(--r-card) var(--r-card);background:var(--soft)}
.search-map>:is(.light-poster,.dark-poster),.search-map picture,.search-map picture img,.search-map-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.search-map>.dark-poster{display:none}
[data-theme=dark] .search-map>.dark-poster{display:block}
[data-theme=dark] .search-map>.light-poster{display:none}
.search-map-canvas{opacity:0;transition:opacity var(--quick)}
.search-map[data-ready=true] .search-map-canvas{opacity:1}
.search-map-controls{position:absolute;right:12px;top:12px;display:grid;gap:8px}
.search-map-controls button{background:var(--surface);color:var(--text);box-shadow:var(--control-edge-3)}
.search-map-controls button:hover{background:var(--soft);color:var(--text)}
.search-map-controls button:active{background:var(--ink-12)}
.search-map-fallback-credit{position:absolute;left:8px;bottom:0;margin:0;padding:8px;background:var(--surface);color:var(--text);font-size:var(--type-min)}
.search-map-fallback-credit a{display:inline-flex;align-items:center;min-height:44px}
.search-map[data-ready=true] .search-map-fallback-credit{visibility:hidden}
main[data-page=search] [data-search-mount]>section{display:block;margin-bottom:24px}
main[data-page=search] [data-search-mount]>section>h2{font:700 var(--type-title)/1.2 var(--font-title);margin:0 0 8px;padding-block:8px}
main[data-page=search] .search-result{grid-template-columns:72px minmax(0,1fr);gap:16px;padding:8px 0;min-height:88px;transition:background var(--quick),transform var(--quick)}
main[data-page=search] .search-result-copy{gap:4px;padding-right:8px}
main[data-page=search] .search-result strong{font-weight:700;hyphens:none;font-size:var(--type-search-name);line-height:1.2}
main[data-page=search] .search-result mark{color:var(--control-selected);background:var(--soft);border-radius:var(--r-xs)}
main[data-page=search] .search-result-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}
main[data-page=search] .search-result-meta .search-category{display:inline-flex;align-items:center;gap:4px;background:var(--ink-6);border-radius:var(--r-xs);padding:2px 6px;font-size:var(--type-min);color:var(--text)}
.search-category svg{width:14px;height:14px;flex:none}
main[data-page=search] .search-result-facts{color:var(--text-2)}
main[data-page=search] .search-row>.credit-toggle{left:28px;right:auto;top:auto;bottom:8px;z-index:2}
main[data-page=search] .search-result:active{background:var(--ink-12);transform:scale(.99)}
main[data-page=search] .search-row[data-map-active=true] .search-result{background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-radius:var(--r-lg)}
main[data-page=search] .search-result:hover,main[data-page=search] .search-result[data-focus=true]{background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--text);border-radius:var(--r-lg)}
@media(min-width:760px){.search-loading-row{grid-template-columns:120px minmax(0,1fr)}.search-loading-row>span{height:80px}main[data-page=search] .search-result{grid-template-columns:120px minmax(0,1fr);padding-block:4px}main[data-page=search] .search-result-visual,main[data-page=search] .search-result-visual picture,main[data-page=search] .search-result-visual img,main[data-page=search] .search-glyph,main[data-page=search] .search-result-visual .category-cover{width:120px;height:80px;aspect-ratio:3/2}main[data-page=search] .search-row>.credit-toggle{left:76px;bottom:4px}main[data-page=search] .search-collections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.search-layout{grid-template-columns:minmax(0,3fr) minmax(260px,2fr)}.search-map-aside{position:sticky;top:24px;grid-column:2;grid-row:1}.search-results-column{grid-column:1;grid-row:1}.search-map{height:clamp(320px,60dvh,680px)}}
@media(min-width:1600px){.search-layout{grid-template-columns:minmax(0,760px) minmax(280px,1fr)}}
@media(prefers-reduced-motion:reduce){.search-map-canvas,main[data-page=search] .search-result{transition:none}}
.walks-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}
.walks-layout .walks-grid{margin:0}
.walks-layout .walk-card{transition:background var(--quick),border-color var(--quick),transform var(--quick)}
.walks-layout .walk-card-heading{display:flex;align-items:baseline;gap:12px;min-height:calc(var(--type-title) * 1.2)}
.walks-layout .walk-card-heading h3{hyphens:none}
.walk-index{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-sm);background:var(--soft);color:var(--control-selected);font-size:var(--type-caption);font-weight:700}
.walks-layout .walk-stats{gap:8px 12px;min-height:24px;color:var(--text-2)}
.walks-layout .walk-stats>span{white-space:nowrap}
.walks-layout .walk-cover{aspect-ratio:16/10}
.walk-photo-cover>picture,.walk-photo-cover>picture img{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--r-card) var(--r-card) 0 0}
.walk-photo-cover>picture{position:absolute;inset:0}
.walk-paper-cover{background:var(--soft);color:var(--primary)}
.walk-route-preview{position:absolute;inset:0;pointer-events:none}
.walk-route-preview svg{width:100%;height:100%;position:static;display:block}
.walk-route-preview text{font-family:var(--font-ui);font-size:var(--type-min);font-weight:700;font-variant-numeric:tabular-nums lining-nums}
.walk-route-preview .route-leaders{fill:var(--primary);stroke:var(--primary);stroke-width:1}
.walk-cover .walk-route-inset{inset:auto 12px 12px auto;width:64px;height:64px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--primary);z-index:2}
.walk-photo-cover>.credit-toggle{top:8px;right:8px;z-index:3}
.walks-map-aside{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
.walks-map-aside>h2{margin:0;padding:16px;font-size:var(--type-title)}
.walks-map-aside>p{margin:0;padding:16px;color:var(--secondary)}
.walks-overview{position:relative;height:clamp(260px,42dvh,400px);background:var(--soft);isolation:isolate}
.walks-map-canvas,.walk-overview-preview{position:absolute;inset:0;width:100%;height:100%}
.walk-overview-preview{color:var(--primary);padding:16px;pointer-events:none}
.walk-overview-preview svg{width:100%;height:100%}
.walks-map-canvas{opacity:0;transition:opacity var(--quick)}
.walks-overview[data-ready=true] .walks-map-canvas{opacity:1}
.walks-overview[data-ready=true] .walk-overview-preview{visibility:hidden}
.walk-map-controls{position:absolute;top:12px;right:12px;display:grid;gap:8px}
.walk-map-controls button{background:var(--surface);color:var(--text);box-shadow:var(--control-edge-3)}
.walk-map-controls button:hover{background:var(--soft);color:var(--text)}
.walk-map-controls button:active{background:var(--ink-12)}
.walks-overview .walk-map-pin{min-width:44px;min-height:44px;width:44px;height:44px;padding:0;border-radius:var(--r-xl);background:var(--surface);color:var(--control-selected);border:2px solid var(--primary);font-size:var(--type-headline);font-weight:700;box-shadow:var(--lift-2)}
.walks-overview .walk-map-pin:hover,.walks-overview .walk-map-pin[data-active=true]{background:var(--primary);color:var(--on-primary)}
.walks-overview .walk-map-pin:active{background:var(--primary-press);color:var(--on-primary)}
.walks-overview .walk-map-pin:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.walks-layout .walk-card[data-map-active=true]{background:var(--soft);border-color:var(--primary)}
@media(min-width:1000px){.walks-layout{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}.walks-map-aside{position:sticky;top:24px}.walks-overview{height:clamp(320px,52dvh,580px)}[data-walks-mount] .walks-layout .walks-grid{grid-template-columns:minmax(0,1fr)}}
@media(min-width:1440px){[data-walks-mount] .walks-layout .walks-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){.walks-layout .walk-card-heading,.walks-layout .walk-stats{min-height:0}[data-walks-mount] .walks-layout .walks-grid{grid-template-columns:1fr}.walks-overview{height:clamp(220px,32dvh,300px)}}
@media(hover:hover) and (pointer:fine){.walks-layout .walk-card:hover{background:var(--soft);border-color:var(--primary)}}
@media(prefers-reduced-motion:reduce){.walks-layout .walk-card,.walks-map-canvas{transition:none}}
.walks-loading .walk-card-heading>.skeleton-line{margin-top:8px}.walks-layout.walks-loading{display:none}.js .walks-layout.walks-loading{display:grid}
@media(min-width:1440px){main[data-page=walks]>.page-wrap{max-width:none}.walks-layout{grid-template-columns:minmax(0,1056px) minmax(300px,1fr)}}
.walk-map-pin i{position:absolute;left:calc(50% - 1px);top:100%;width:2px;height:14px;background:var(--primary);pointer-events:none}
.walks-map-canvas>.maplibregl-canvas-container{width:100%;height:100%;outline:2px solid transparent;outline-offset:0}
.walks-map-canvas:has(>.maplibregl-canvas-container:hover){outline:2px solid var(--primary);outline-offset:0}
.walks-map-canvas:has(>.maplibregl-canvas-container:focus-visible){outline:3px solid var(--primary);outline-offset:2px}
.trail-defs{position:absolute;width:0;height:0;pointer-events:none}
.trails-layout{grid-template-columns:minmax(0,3fr) minmax(300px,2fr)}
.trails-results .trails-list{grid-template-columns:minmax(0,1fr);gap:8px}
.trails-list>.trail{display:grid;grid-template-columns:minmax(0,1fr) 96px auto;grid-template-rows:auto;align-items:center;gap:0 16px;min-height:96px;padding:12px 16px;border-radius:var(--r-md);transition:background var(--quick),border-color var(--quick)}
.trail .trail-heading{grid-column:1;grid-row:1;align-items:center;gap:12px;min-width:0}
.trail-heading>div{min-width:0}
.trail .trail-heading h3{font-size:var(--type-body);line-height:1.2;hyphens:none;overflow-wrap:break-word}
.trail-blaze{display:block;width:40px;height:40px;flex:none}
.trail .trail-network{margin-top:4px;color:var(--text-2);font-size:var(--type-caption);line-height:1.25}
.trail .trail-endpoints{grid-column:1;grid-row:2;padding-left:52px;margin:0;font-size:var(--type-caption);color:var(--text-2)}
.trail-extent{grid-column:2;grid-row:1 / span 3;width:96px;height:64px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--soft);color:var(--primary)}
.trail-extent rect{fill:var(--soft);fill-opacity:.3;stroke:var(--primary);stroke-width:1.5}
.trail-extent circle{fill:none;stroke:var(--primary);stroke-width:1.5}
.trail-extent{--trail-map-light:block;--trail-map-dark:none}
[data-theme=dark] .trail-extent{--trail-map-light:none;--trail-map-dark:block}
.trail-mini-light{display:var(--trail-map-light,block)}
.trail-mini-dark{display:var(--trail-map-dark,none)}
.trail [data-trail-distance]{grid-column:1;grid-row:3;padding-left:52px;color:var(--text-2)}
.trail .trail-actions{grid-column:3;grid-row:1 / span 3;flex-direction:row;gap:8px;margin:0;padding:0}
.trail .trail-actions .button{flex:none;min-height:36px;height:36px;padding:0 12px;font-size:var(--type-caption);position:relative}
.trail .trail-actions .button:after{content:'';position:absolute;inset:-4px 0}
.trail-source{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;font-size:var(--type-caption);color:var(--text-2);border-radius:var(--r-sm);padding:0 4px;text-decoration:underline;text-underline-offset:3px}
.trail-source:hover{background:var(--soft);color:var(--control-selected)}
.trail-source:active{background:var(--ink-12);color:var(--text);transform:scale(.98)}
.trail-source:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.trail:hover{background:var(--soft);border-color:var(--primary)}
.trail[aria-current=true]{border-color:var(--primary);background:var(--soft)}
.trails-map{position:sticky;top:24px}
.trail-map-stage{height:clamp(320px,55dvh,580px)}
[data-trail-map-canvas]:hover{outline:2px solid var(--primary);outline-offset:-2px}
.trail-map-stage:has(canvas:focus-visible){outline:3px solid var(--primary);outline-offset:2px}
.trail-map-controls .icon-button{background:var(--surface);color:var(--text)}
.trail-map-controls .icon-button:hover{background:var(--soft);color:var(--text)}
.trail-map-controls .icon-button:active{background:var(--ink-12)}
.trail-map-controls .icon-button:disabled{background:var(--surface);color:var(--secondary);cursor:default}
@media(max-width:1279px){.trails-list>.trail{grid-template-columns:minmax(0,1fr) 96px}.trail .trail-actions{grid-row:4;grid-column:1 / -1;flex-direction:row;justify-content:flex-end}.trail-extent{grid-row:1 / span 3}}
@media(min-width:1000px) and (max-width:1099px){.trails-results{grid-column:1;grid-row:1}.trails-map{grid-column:2;grid-row:1}}
@media(max-width:999px){.trails-layout{grid-template-columns:1fr}.trails-map{position:static;grid-column:1;grid-row:1}.trails-results{grid-column:1;grid-row:2}.trail-map-stage{height:300px}}
@media(max-width:759px){.trail-map-stage{height:260px}.trails-list>.trail{gap:8px 12px;padding:12px}.trail .trail-heading{gap:8px}.trail .trail-endpoints,.trail [data-trail-distance]{padding-left:48px}.trail-extent{align-self:start}.trail .trail-actions{justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){.trails-list>.trail{transition:none}}
.trail-paint{color:var(--text-2);font-size:var(--type-min);line-height:1.25;margin:4px 0 0}
@media(max-width:759px){.trail .trail-heading{grid-column:1 / -1}.trail .trail-endpoints{grid-column:1 / -1;grid-row:2}.trail-extent{grid-column:1;grid-row:4}.trail .trail-actions{grid-column:2;grid-row:4;align-self:center}.trail [data-trail-distance]{grid-column:1 / -1;grid-row:3}.trails-list>.trail{grid-template-columns:minmax(0,1fr) auto}}
main[data-page=help] .help-filter-bar{position:relative;top:auto;z-index:1;padding:0;margin:0 0 24px}
.help-filter-bar .help-filters{max-width:none;gap:4px}
.help-filter-bar .help-filters>button{gap:8px}
.help-filters svg{width:20px;height:20px;flex:none}
.help-layout{display:grid;grid-template-columns:minmax(0,520px) minmax(0,1fr);gap:32px;align-items:start}
.help-layout #help-results{grid-column:1;grid-row:1;min-width:0}
.help-layout .help-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.help-layout .help-map{grid-column:2;grid-row:1;position:sticky;top:24px;min-width:0}
.help-map-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;min-height:44px}
.help-map-heading h2{margin:0}
.help-map-stage{position:relative;height:clamp(320px,55dvh,580px);border:1px solid var(--border);border-radius:var(--r-card);background:var(--soft);isolation:isolate}
.help-map-stage:has(canvas:focus-visible){outline:3px solid var(--primary);outline-offset:2px}
.help-map-poster,.help-map-poster>div,.help-map-poster picture,.help-map-poster img,[data-help-map]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.help-map-poster>.dark-poster{display:none}
[data-theme=dark] .help-map-poster>.dark-poster{display:block}
[data-theme=dark] .help-map-poster>.light-poster{display:none}
.help-map-stage[data-ready=true]>.help-map-poster,.help-map-stage[data-ready=true]>.map-attribution{visibility:hidden;pointer-events:none}
[data-help-map]:hover{outline:2px solid var(--primary);outline-offset:-2px}
.help-map-controls{position:absolute;top:12px;right:12px;z-index:2;display:grid;gap:8px}
.help-map-controls .icon-button{background:var(--surface);color:var(--text);box-shadow:var(--lift-2)}
.help-map-controls .icon-button:hover{background:var(--soft);color:var(--text)}
.help-map-controls .icon-button:active{background:var(--ink-12);color:var(--text)}
.help-map-controls .icon-button:disabled{background:var(--surface);color:var(--secondary);cursor:default;box-shadow:none}
.help-map-stage>.map-attribution{position:absolute;inset:auto 0 0;padding:8px 12px;margin:0;background:var(--surface);border-radius:0 0 var(--r-card) var(--r-card)}
.help-map [data-help-map-label]{margin:12px 0 4px;min-height:24px;color:var(--text-2)}
.help-full-map{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:var(--type-caption)}
.help-full-map svg{width:16px;height:16px}
.help-hours-note{display:flex;gap:8px;align-items:flex-start;color:var(--text-2);margin:0 0 16px;line-height:1.35;max-width:60ch}
.help-hours-note svg{width:18px;height:18px;flex:none;margin-top:2px}
main[data-page=help] .help-row{gap:12px;padding:16px;border-radius:var(--r-lg);transition:background var(--quick),border-color var(--quick)}
.help-row:hover,.help-row[data-active=true]{background:var(--soft);border-color:var(--primary)}
.help-row[aria-current=true]{border-color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}
.help-row-heading{display:flex;gap:12px;align-items:flex-start;min-width:0}
.help-row-heading>div{min-width:0;flex:1}
:is(.help-row,.help-map-pin)[data-kind=hospital]{--help-color:var(--culture)}
:is(.help-row,.help-map-pin)[data-kind=pharmacy]{--help-color:var(--primary)}
:is(.help-row,.help-map-pin)[data-kind=police]{--help-color:var(--viewpoint)}
:is(.help-row,.help-map-pin)[data-kind=embassy]{--help-color:var(--hidden)}
.help-kind-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--r-md);background:color-mix(in srgb,var(--help-color) 10%,var(--surface));color:var(--help-color);border:1px solid color-mix(in srgb,var(--help-color) 40%,var(--border))}
.help-kind-icon svg{width:24px;height:24px}
.help-row .help-facts{gap:8px;margin-top:8px;color:var(--text-2);font-size:var(--type-caption);line-height:1.3}
.help-distance{font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
main[data-page=help] .help-row .actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px 8px;padding:4px 0;margin:0 0 0 52px}
main[data-page=help] .help-row .button{position:relative;flex:1 0 auto;width:auto;min-height:36px;height:auto;padding:6px 10px;font-size:var(--type-button-s);line-height:1.25}
main[data-page=help] .help-row .button::after{content:'';position:absolute;inset:-4px 0}
.help-row .button svg{width:18px;height:18px;flex:none}
.help-map-pin{display:grid;place-items:center;min-width:44px;min-height:44px;width:44px;height:44px;padding:0;border-radius:var(--r-lg);border:2px solid var(--help-color);background:var(--surface);color:var(--help-color);box-shadow:var(--lift-2);cursor:pointer}
.help-map-pin svg{width:24px;height:24px;pointer-events:none}
.help-map-pin:hover,.help-map-pin[data-active=true]{background:var(--soft);color:var(--text);border-color:var(--text);z-index:2}
.help-map-pin[aria-pressed=true]{background:var(--soft);color:var(--text);border-color:var(--primary);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--primary)}
.help-map-pin:active{background:var(--ink-12);color:var(--text);border-color:var(--text)}
.help-map-pin:focus-visible{outline:3px solid var(--text);outline-offset:3px;z-index:3}
@media(min-width:1000px) and (max-width:1399px){.help-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}main[data-page=help] .help-row .actions{margin-left:0}}
@media(max-width:999px){.help-layout{grid-template-columns:minmax(0,1fr);gap:24px}.help-layout .help-map{grid-column:1;grid-row:1;position:static}.help-layout #help-results{grid-row:2}.help-map-stage{height:34dvh}.help-map{scroll-margin-top:72px}}
@media(max-width:759px){main[data-page=help] .help-filter-bar{margin-bottom:16px}.help-filter-bar .help-filters>button{justify-content:flex-start}.help-filter-bar .help-count{margin-left:auto}.help-map-heading{margin-bottom:8px}.help-layout{gap:16px}main[data-page=help] .help-row{padding:12px}.help-row-heading{gap:8px}main[data-page=help] .help-row .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0}.help-row .actions .help-phone{grid-column:1 / -1}.help-map [data-help-map-label]{margin-top:8px}}
@media(prefers-reduced-motion:reduce){main[data-page=help] .help-row{transition:none}}
.help-map-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;fill:none;stroke:currentColor;stroke-width:1.5}
.help-map-leaders circle{fill:var(--surface)}
.help-map .help-map-pin{z-index:1}
.help-map .help-map-pin:is(:hover,[data-active=true]){z-index:2}
.help-map .help-map-pin:focus-visible{z-index:3}
[data-help-map].maplibregl-map{position:absolute}
.help-filter-bar .help-filters{--control-fill:1}
.help-layout #help-results>h2{min-height:44px;margin-bottom:12px}
main[data-page=offline] .offline-top-band{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);padding:24px}
main[data-page=offline] .offline-top-band>section,main[data-page=offline] .offline-top-band>aside{margin:0;min-width:0;padding:0;border:0;background:none}
main[data-page=offline] .offline-top-band>.offline-explanation{padding-left:24px;border-left:1px solid var(--border);border-radius:0}
main[data-page=offline] .offline-explanation h2{margin-bottom:12px}
main[data-page=offline] .offline-group{grid-template-columns:96px minmax(0,1fr) 44px;gap:8px 12px;padding-block:16px}
main[data-page=offline] .offline-group>a{grid-template-columns:96px minmax(0,1fr);gap:12px;min-height:64px}
main[data-page=offline] .offline-thumb{width:96px;height:64px;border-radius:var(--r-md)}
main[data-page=offline] .offline-map-thumb{overflow:clip}
main[data-page=offline] .offline-map-thumb .directory-cover-map{width:96px;height:64px;display:block}
main[data-page=offline] .offline-group-name{font-size:var(--type-body);hyphens:none}
main[data-page=offline] .offline-group-meta{line-height:1.4}
main[data-page=offline] .offline-photo-credits{grid-column:1/-1;margin:0}
main[data-page=offline] .offline-photo-credits>summary{min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:var(--r-sm)}
main[data-page=offline] .offline-photo-credits>summary:hover{background:var(--soft);color:var(--text)}
main[data-page=offline] .offline-photo-credits>summary:active{background:var(--ink-12);color:var(--text)}
@media(max-width:1099px){main[data-page=offline] .offline-top-band{grid-template-columns:1fr}main[data-page=offline] .offline-top-band>.offline-explanation{padding:24px 0 0;border-left:0;border-top:1px solid var(--border)}}
@media(max-width:759px){main[data-page=offline] .offline-top-band{padding:20px}main[data-page=offline] .offline-group-card{padding-inline:12px}main[data-page=offline] .offline-group{gap:8px}main[data-page=offline] .offline-group>a{gap:8px}}
main[data-page=saved] .library-empty{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px;border-block:1px solid var(--border);background:var(--surface)}
main[data-page=saved] .library-empty h2{margin:0 0 8px}
main[data-page=saved] .library-empty p{margin:0;max-width:60ch;color:var(--secondary)}
main[data-page=saved] .library-vacant{padding:16px 0;color:var(--secondary);margin:0}
.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px;align-items:stretch}
.discovery-item{min-width:0;display:grid;grid-template-rows:1fr auto;gap:12px}
.discovery-item>.button{width:100%;height:44px;min-height:44px}
.discovery-grid .place-card{min-width:0;--card-photo-ratio:1.6;display:grid;grid-template-rows:auto 1fr;height:100%}
.discovery-grid .place-card .card-body{display:grid;align-content:start;gap:12px}
.discovery-grid .place-card .card-body>h3{display:block;overflow:visible;-webkit-line-clamp:unset;min-height:2lh;margin:0;hyphens:none;overflow-wrap:break-word}
.discovery-grid .place-card .card-body>.chips{margin:0}
.discovery-grid .place-card .card-summary{margin:0}
.discovery-grid .place-card .card-body>.data{margin:0;align-self:end}
@media(min-width:760px){.discovery-grid{grid-auto-rows:auto}.discovery-item{grid-row:span 6;grid-template-rows:subgrid;gap:12px}.discovery-item>.place-card{grid-row:span 5;grid-template-rows:subgrid;gap:0}.discovery-item .card-body{grid-row:span 4;grid-template-rows:subgrid;row-gap:12px;padding-top:16px;padding-bottom:16px}.discovery-item>.button{grid-row:6}}
@media(max-width:1099px){.discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){main[data-page=saved] .library-empty{grid-template-columns:64px minmax(0,1fr);padding:20px 16px;gap:16px}main[data-page=saved] .library-empty>.button{grid-column:1/-1;justify-self:start}.discovery-grid{grid-template-columns:1fr;gap:24px}.discovery-grid .place-card .card-body>h3{min-height:0}}
.discovery-grid .place-card .card-summary{display:block;overflow:visible;-webkit-line-clamp:unset}
.discovery-grid .place-card .card-body>.chip{justify-self:start}
.discovery-grid[data-origin-pending] .skeleton-line{margin:0}
main[data-page=about] .about-intro{align-items:stretch;gap:32px;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
main[data-page=about] .about-intro-copy{align-content:center}
main[data-page=about] .about-cover{min-height:280px}
main[data-page=about] .about-cover picture,main[data-page=about] .about-cover img{position:absolute;inset:0;min-height:0;width:100%;height:100%;object-fit:cover}
main[data-page=about] .about-cover .credit-toggle{z-index:2}
main[data-page=about] .about-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
main[data-page=about] .about-stats>div{padding:24px}
main[data-page=about] .about-features{gap:16px;align-items:stretch}
main[data-page=about] .about-features>div{border:1px solid var(--border);border-radius:var(--r-card);padding:20px;background:var(--surface);min-width:0}
main[data-page=about] .about-features h3{hyphens:none;overflow-wrap:break-word}
main[data-page=about] .about-sources{grid-template-columns:1fr;margin-top:24px}
main[data-page=about] .about-sources>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,3fr);gap:24px;padding:20px 0}
main[data-page=about] .about-sources dt{margin:0}
main[data-page=about] .about-sources dd{max-width:68ch}
@media(max-width:759px){main[data-page=about] .about-intro{padding:16px;gap:24px}main[data-page=about] .about-cover{min-height:0;height:clamp(180px,28dvh,260px);grid-row:1}main[data-page=about] .about-stats{gap:8px}main[data-page=about] .about-stats>div{padding:16px 8px}main[data-page=about] .about-stats strong{font-size:var(--type-tier-count)}main[data-page=about] .about-stats span{font-size:var(--type-caption)}main[data-page=about] .about-sources>div{grid-template-columns:1fr;gap:8px}}
@media(min-width:760px){main[data-page=about] .about-features>div{grid-row:span 2;grid-template-rows:subgrid;row-gap:8px}}
main[data-page="404"] .not-found{display:grid;grid-template-columns:1fr;gap:24px;padding-top:24px;max-width:720px;margin-inline:auto;text-align:center}
main[data-page="404"] .not-found-photo{position:relative;width:min(100%,480px);margin:0 auto}
main[data-page="404"] .not-found-photo picture,main[data-page="404"] .not-found-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-card)}
main[data-page="404"] .not-found-photo figcaption{margin-top:8px;color:var(--secondary);font-size:var(--type-caption)}
main[data-page="404"] .not-found-copy>.lead{margin-inline:auto;margin-bottom:16px}
main[data-page="404"] .not-found-copy form{max-width:560px;margin-inline:auto}
main[data-page="404"] .not-found-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
main[data-page="404"] .not-found-actions>.button{width:100%;height:48px;min-height:48px}
main[data-page="404"] .not-found-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
main[data-page="404"] .not-found-places>h2{margin-bottom:16px}
@media(max-width:1099px){main[data-page="404"] .not-found-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:759px){main[data-page="404"] .not-found{padding-top:0}main[data-page="404"] .not-found-photo picture,main[data-page="404"] .not-found-photo img{max-height:28dvh}main[data-page="404"] .not-found-grid{grid-template-columns:1fr}}
@media(min-width:760px){main[data-page="404"] .not-found-grid>.place-card{grid-row:span 6;grid-template-rows:subgrid;gap:0}main[data-page="404"] .not-found-grid .card-body{grid-row:span 5;grid-template-rows:subgrid;row-gap:12px;padding-block:16px}}
@media(max-width:759px) and (max-height:700px){main[data-page="404"] .not-found-photo picture,main[data-page="404"] .not-found-photo img{max-height:20dvh}}