/* Shared styles for per-park share pages (/p/*.html). Generated pages link to this. */
@font-face { font-family:'Fraunces'; font-style:normal; font-weight:400 600; font-display:swap;
  src:url('/assets/fonts/fraunces-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Fraunces'; font-style:normal; font-weight:400 600; font-display:swap;
  src:url('/assets/fonts/fraunces-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:'Geist'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/assets/fonts/geist-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Geist'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/assets/fonts/geist-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

:root {
  --bg:#FCFBF8; --card:#FFFFFF; --ink:#131210; --ink-secondary:#2C2A24; --muted:#6E6B62;
  --sage:#3F5A42; --sage-bg:#EEF3EC; --hairline:rgba(19,18,16,0.10);
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --bg:#14130F; --card:#1C1A15; --ink:#F4F1EA; --ink-secondary:#E4E0D6; --muted:#A7A296;
    --sage:#93B58D; --sage-bg:#20281F; --hairline:rgba(255,255,255,0.12); }
}
:root[data-theme="dark"] { --bg:#14130F; --card:#1C1A15; --ink:#F4F1EA; --ink-secondary:#E4E0D6; --muted:#A7A296;
    --sage:#93B58D; --sage-bg:#20281F; --hairline:rgba(255,255,255,0.12); }

* { box-sizing:border-box; margin:0; padding:0; }
html { -webkit-text-size-adjust:100%; }
body { font-family:var(--sans); background:var(--bg); color:var(--ink-secondary); font-size:18.5px;
  line-height:1.6; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
img { display:block; max-width:100%; }
a { color:inherit; }
:focus-visible { outline:2.5px solid var(--sage); outline-offset:3px; border-radius:4px; }

.site-head { position:sticky; top:0; z-index:10;
  background:color-mix(in srgb, var(--bg) 82%, transparent);
  backdrop-filter:saturate(1.1) blur(14px); -webkit-backdrop-filter:saturate(1.1) blur(14px);
  border-bottom:0.5px solid var(--hairline); }
.site-head .bar { max-width:960px; margin:0 auto; height:68px; padding:0 clamp(18px,5vw,32px);
  display:flex; align-items:center; gap:10px; }
.site-head .brand { display:flex; align-items:center; gap:10px; text-decoration:none; }
.site-head .brand img { height:30px; width:auto; }
.site-head .brand .name { font-weight:700; color:var(--sage); font-size:1.2rem; letter-spacing:-0.01em; }
.site-head .spacer { flex:1; }
.site-head .all { font-size:1rem; font-weight:500; color:var(--muted); text-decoration:none; }
.site-head .all:hover { color:var(--sage); }

.hero { width:100%; height:46vh; min-height:230px; max-height:460px; overflow:hidden; background:var(--sage-bg); }
.hero img { width:100%; height:100%; object-fit:cover; }

main { max-width:560px; margin:0 auto; padding:clamp(2rem,5vw,3rem) clamp(18px,5vw,24px) 4rem; }
h1 { font-family:var(--serif); font-weight:500; font-size:clamp(2.1rem,5.5vw,2.9rem);
  letter-spacing:-0.02em; color:var(--ink); line-height:1.08; margin-bottom:0.4rem; text-wrap:balance; }
.location { color:var(--muted); font-size:1.04rem; margin-bottom:2.4rem; }

.cta { display:flex; align-items:center; justify-content:center; gap:9px; width:100%;
  padding:0.95rem 1.6rem; border-radius:14px; text-decoration:none; font-weight:600; font-size:1.02rem;
  background:var(--sage); color:#fff; transition:opacity .18s ease, transform .18s ease;
  box-shadow:0 1px 2px rgba(0,0,0,0.08), 0 14px 30px -18px color-mix(in srgb,var(--sage) 60%,transparent); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .cta { color:#10130F; }
}
:root[data-theme="dark"] .cta { color:#10130F; }

.cta:hover { opacity:0.9; }
.cta:active { transform:scale(0.985); }

.secondary { text-align:center; margin-top:1.5rem; }
.app-store-badge { display:inline-flex; line-height:0; transition:opacity .2s ease; }
.app-store-badge img { height:46px; width:auto; }
.app-store-badge:hover { opacity:0.82; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .app-store-badge img { filter:invert(1); }
}
:root[data-theme="dark"] .app-store-badge img { filter:invert(1); }


footer { margin-top:4.5rem; padding-top:1.75rem; border-top:0.5px solid var(--hairline);
  color:var(--muted); font-size:0.92rem; text-align:center; }
footer a { color:var(--muted); text-decoration:underline; text-underline-offset:2px; }
footer a:hover { color:var(--sage); }
