@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--paper: #f5efdf;--paper-strong: #fff9ed;--paper-deep: #eadbbc;--ink: #1c1812;--ink-soft: #514737;--line: rgba(79, 58, 31, .18);--line-strong: rgba(66, 45, 20, .36);--oxblood: #8f2d1a;--oxblood-deep: #692113;--brass: #c8922f;--blue-muted: #49697a;--shadow-soft: 0 18px 40px rgba(54, 35, 15, .1);--shadow-card: 0 28px 70px rgba(47, 31, 12, .14);--page-width: min(1180px, calc(100vw - 40px) )}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--ink);font-family:IBM Plex Sans,sans-serif;background:radial-gradient(circle at top left,#fff9edf2,#fff9ed00 36%),radial-gradient(circle at 80% 10%,#c8922f24,#c8922f00 30%),linear-gradient(180deg,#efe6d1 0%,var(--paper) 48%,#f8f3e8 100%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(69,48,26,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(69,48,26,.04) 1px,transparent 1px);background-size:24px 24px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 82%);mask-image:radial-gradient(circle at center,black,transparent 82%)}a{color:inherit;text-decoration:none}button{font:inherit}#root{position:relative;z-index:1}.landing-page,.map-page{width:var(--page-width);margin:0 auto}.landing-page{padding:24px 0 36px}.eyebrow,.feature-label,.guide-label{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:700}.eyebrow{color:var(--blue-muted)}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.15rem;border-radius:999px;border:1px solid transparent;font-weight:600;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background-color .14s ease}.button-link:hover{transform:translateY(-2px)}.button-link-primary{color:#fffaf4;background:linear-gradient(135deg,var(--oxblood) 0%,#a63c24 45%,#7a2215 100%);box-shadow:0 18px 28px #8f2d1a47}.button-link-secondary{color:var(--ink);background:#fff9edb8;border-color:#422d142e;box-shadow:0 10px 24px #33231014}.button-link-placeholder,.button-link-placeholder:disabled{color:#1c1812b8;background:#fffaf2c2;border-color:#422d1429;box-shadow:none;cursor:not-allowed;opacity:1}.button-link-placeholder:hover,.button-link-placeholder:disabled:hover{transform:none}.button-link-inline{margin-top:.5rem}.button-link-compact{min-height:42px;padding:.65rem .95rem}.reveal{opacity:0;transform:translateY(18px);animation:rise-in .62s ease forwards}.landing-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.5rem;position:relative;z-index:2}.brand-mark{font-family:Fraunces,serif;font-size:1.15rem;font-weight:700;letter-spacing:.04em}.nav-actions,.cta-button-row{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;justify-content:flex-end}.landing-hero{position:relative;overflow:clip;padding:1.75rem clamp(1.2rem,3vw,2.4rem) clamp(1.6rem,4vw,2.8rem);border:1px solid var(--line);border-radius:34px;background:linear-gradient(180deg,#fffbf3fa,#efe2c6f2);box-shadow:var(--shadow-card)}.landing-hero:before,.landing-hero:after{content:"";position:absolute;border-radius:999px;filter:blur(12px);pointer-events:none}.landing-hero:before{width:280px;height:280px;right:-70px;top:-70px;background:radial-gradient(circle,#c8922f59,#c8922f00 68%)}.landing-hero:after{width:240px;height:240px;left:-80px;bottom:-80px;background:radial-gradient(circle,#49697a2e,#49697a00 70%)}.hero-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.9fr);gap:clamp(1.2rem,4vw,3rem);align-items:center}.hero-copy-stack{position:relative;z-index:1}.hero-title{margin:.35rem 0 0;max-width:12ch;font-family:Fraunces,serif;font-size:clamp(3.1rem,7vw,6.2rem);line-height:.92;letter-spacing:-.04em}.hero-description,.hero-note,.section-heading p,.editorial-copy p,.feature-card p,.step-card p,.map-hero-copy,.status-text,.list-card p,.map-card p{color:var(--ink-soft)}.hero-description{margin:1.2rem 0 0;max-width:62ch;font-size:1.08rem;line-height:1.7}.hero-actions{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.85rem}.hero-note{margin:1rem 0 0;max-width:40rem;font-size:.95rem}.hero-composition{position:relative;min-height:520px}.guide-card{position:absolute;border:1px solid rgba(66,45,20,.14);border-radius:24px;background:#fffaf2eb;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.guide-card-main{top:48px;right:22px;bottom:42px;left:0;padding:1.3rem;background:linear-gradient(170deg,#fff8eefa,#f6e6cdf2)}.guide-card-main:after{content:"";position:absolute;top:20px;right:20px;bottom:20px;left:20px;border-radius:18px;border:1px solid rgba(73,105,122,.16);pointer-events:none}.guide-card-body{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-top:1.1rem}.guide-index{display:inline-block;margin-bottom:.65rem;color:var(--oxblood);font-weight:700;letter-spacing:.16em}.guide-card-main h2,.feature-card h2,.section-heading h2,.final-cta h2,.map-page-header h1,.map-card h2,.list-card h2,.step-card h3{margin:0;font-family:Fraunces,serif}.guide-card-main h2{max-width:12ch;font-size:clamp(1.8rem,2vw,2.45rem);line-height:1}.guide-card-main p,.guide-card-side span{margin:.5rem 0 0;line-height:1.6}.guide-metric{display:grid;gap:.1rem;padding:.9rem 1rem;min-width:116px;border-radius:18px;background:#49697a17}.guide-metric-value{font-family:Fraunces,serif;font-size:1.55rem}.guide-metric-label{font-size:.84rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft)}.venue-columns{display:grid;gap:.85rem;margin-top:1.15rem}.venue-chip{display:grid;gap:.2rem;padding:.95rem 1rem;border-radius:18px;background:#ffffffb8;border:1px solid rgba(66,45,20,.12)}.venue-chip-name{font-weight:700}.venue-chip-meta{color:var(--ink-soft);font-size:.92rem}.guide-card-side{right:0;width:min(240px,54%);padding:1rem 1.1rem}.guide-card-side strong{margin-top:.35rem;font-family:Fraunces,serif;font-size:1.35rem}.guide-card-side-top{top:0}.guide-card-side-bottom{bottom:0}.feature-band,.signal-band,.section-grid,.final-cta,.map-hero-panel,.map-card,.list-card{border:1px solid var(--line);border-radius:28px;background:#fff9edc7;box-shadow:var(--shadow-soft)}.feature-band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.15rem;padding:1rem}.signal-band{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(1.1rem,4vw,2rem);margin-top:1.15rem;padding:clamp(1.2rem,4vw,2rem)}.feature-card{padding:1.2rem;border-radius:22px;background:#ffffff85;border:1px solid rgba(66,45,20,.08);transition:transform .16s ease,box-shadow .16s ease}.feature-card:hover,.signal-card:hover,.step-card:hover,.list-card li:hover{transform:translateY(-4px);box-shadow:0 18px 36px #2c1c0a1a}.feature-card h2{margin-top:.55rem;font-size:1.55rem;line-height:1.05}.feature-card p{margin:.65rem 0 0;line-height:1.65}.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.signal-card{padding:1.1rem;border-radius:22px;background:#ffffff8f;border:1px solid rgba(66,45,20,.09);transition:transform .16s ease,box-shadow .16s ease}.signal-card h3{margin:.55rem 0 0;font-family:Fraunces,serif;font-size:1.32rem;line-height:1.05}.signal-card p:last-child{margin:.55rem 0 0;line-height:1.65;color:var(--ink-soft)}.section-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.2rem,4vw,2.4rem);margin-top:1.15rem;padding:clamp(1.2rem,4vw,2rem)}.section-grid-alt{background:linear-gradient(180deg,#fffbf5e0,#ebddc2e6)}.section-heading h2,.final-cta h2,.map-page-header h1{margin-top:.35rem;font-size:clamp(2rem,4vw,3.4rem);line-height:.98;letter-spacing:-.03em}.section-heading p{margin-top:.95rem;line-height:1.7}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.step-card{padding:1.1rem;border-radius:22px;background:#ffffff8f;border:1px solid rgba(66,45,20,.09);transition:transform .16s ease,box-shadow .16s ease}.step-number{display:inline-block;margin-bottom:.8rem;color:var(--oxblood);font-weight:700;letter-spacing:.16em}.step-card h3{font-size:1.35rem}.step-card p,.editorial-copy p{margin:.75rem 0 0;line-height:1.7}.editorial-copy{display:grid;align-content:start;gap:.4rem}.final-cta{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:1.15rem;padding:clamp(1.2rem,4vw,2rem);background:linear-gradient(135deg,#6e2213f5,#8f2d1af5 48%,#4d2816f5);color:#fff7ed}.final-cta .eyebrow,.final-cta p{color:#fff7edd1}.final-cta-actions{display:grid;justify-items:end;gap:.6rem}.final-cta-actions p{margin:0;max-width:20rem;text-align:right}.final-cta-note{max-width:24rem}.landing-footer{display:flex;justify-content:space-between;gap:1rem;margin:1rem 0 0;padding:0 .4rem;color:var(--ink-soft);font-size:.94rem}.route-loading{width:var(--page-width);margin:3rem auto;padding:2rem;border:1px solid var(--line);border-radius:24px;background:#fff9edcc;box-shadow:var(--shadow-soft)}.map-page{padding:24px 0 36px}.map-page-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.map-page-actions{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:flex-end}.map-hero-panel{padding:1.1rem 1.2rem;margin-bottom:1rem}.map-hero-copy,.status-text{margin:0;line-height:1.65}.status-text{margin-top:.55rem;font-weight:600}.error-box{margin:.8rem 0 0;color:var(--oxblood);font-weight:600}.map-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.95fr);gap:1rem}.map-card,.list-card{padding:.85rem}.map-card header,.list-card header{display:flex;justify-content:space-between;gap:.6rem;align-items:baseline;padding:.2rem .35rem .8rem}.map-card h2,.list-card h2{font-size:1.28rem}.map-canvas{width:100%;height:clamp(380px,58vh,680px);border-radius:18px;border:1px solid rgba(66,45,20,.12)}.list-card ol{margin:0;padding:0;list-style:none;max-height:clamp(380px,58vh,680px);overflow-y:auto;display:grid;gap:.7rem}.list-card li{display:block;gap:.7rem;padding:.8rem;border-radius:18px;border:1px solid rgba(66,45,20,.1);background:#ffffff8f;transition:transform .16s ease,box-shadow .16s ease}.list-card h3{margin:0;font-family:Fraunces,serif;font-size:1.02rem}.list-card li p{margin:.3rem 0 0}.venue-card-content{display:grid;gap:.7rem}.venue-facts,.pub-popup-grid{display:flex;flex-wrap:wrap;gap:.45rem}.info-chip{display:inline-flex;align-items:center;padding:.45rem .7rem;border-radius:999px;border:1px solid rgba(66,45,20,.12);background:#fff9eddb;color:var(--ink);font-size:.88rem;font-weight:600;line-height:1.2}.info-chip-strong{border-color:#49697a2e;background:#49697a1f}.info-chip-warm{border-color:#c8922f33;background:#c8922f24}.info-chip-muted{color:var(--ink-soft);background:#ffffff8f}.pub-popup{display:grid;gap:.55rem;min-width:min(260px,70vw)}.pub-popup strong{font-family:Fraunces,serif;font-size:1rem}.pub-popup p{margin:0;color:var(--ink-soft)}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1100px){.hero-layout,.signal-band,.section-grid,.map-layout{grid-template-columns:1fr}.hero-composition{min-height:440px}.feature-band,.signal-grid,.steps-grid{grid-template-columns:1fr}.final-cta{flex-direction:column;align-items:flex-start}.final-cta-actions{justify-items:start}.final-cta-actions p{text-align:left}}@media (max-width: 720px){:root{--page-width: min(100vw - 20px, 100%)}.landing-page,.map-page{padding-top:10px}.landing-nav,.map-page-header,.landing-footer{flex-direction:column;align-items:flex-start}.nav-actions,.cta-button-row{width:100%;justify-content:flex-start}.hero-title,.section-heading h2,.final-cta h2,.map-page-header h1{max-width:none;font-size:clamp(2.3rem,10vw,3.6rem)}.hero-composition{min-height:500px}.guide-card-main{top:70px;right:0;bottom:70px;left:0}.guide-card-side{width:72%}.map-page-actions{width:100%;justify-content:flex-start}.button-link,.button-link-compact,.button-link-placeholder{width:100%}.map-canvas{height:52vh}.list-card ol{max-height:none}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal,.button-link,.feature-card,.step-card,.list-card li{animation:none;transition:none;transform:none;opacity:1}}
