@import url('styles.css');
.city-visual img,.place-card img,.place-hero{height:auto}
:root{--teal:#256e69;--ink:#122c36;--muted:#57676b;--line:#d9dfd8}
[hidden]{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer}a,button,input,select,textarea{touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--teal);outline-offset:4px}img{max-width:100%}
.site-shell{max-width:1440px;padding:0 6%}.site-header{min-height:108px;position:relative}.site-nav{display:flex;align-items:center;gap:28px;font-size:13px}.site-nav a{padding:12px 0}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--teal)}.site-nav .nav-cta{padding:13px 18px;background:var(--ink);color:#fff;border-radius:4px}.menu-toggle{display:none;border:1px solid var(--line);padding:10px 14px;background:transparent;border-radius:4px;color:var(--ink)}
.hero{grid-template-columns:.95fr 1.1fr;gap:6%;padding:60px 0 78px}.hero h1{font-size:clamp(54px,5.7vw,82px)}h1 em,h2 em{color:var(--teal)}.hero .intro{max-width:430px}.hero .eyebrow{font-size:9px}.hero-note,.quiet{font-size:12px;line-height:1.7;color:var(--muted)}.hero-note{margin-top:22px;max-width:380px}.actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.button{font-size:13px;min-height:48px}.button.secondary{background:transparent;color:var(--ink);border:1px solid #8fa29a}.button.secondary span{color:var(--teal)}.button:disabled{opacity:.6;cursor:wait}.text-link{font-size:13px}.city-visual{background:#102b35;margin:0;border-radius:10px;overflow:hidden;box-shadow:0 24px 55px -40px #102b3577}.visual-heading{padding:20px 24px;color:#d4e4df;font-size:8px;letter-spacing:1.7px;display:flex;justify-content:space-between}.visual-heading b{color:var(--lime)}.city-visual img{display:block;width:100%;aspect-ratio:1.15;object-fit:cover;object-position:48% center}.city-visual figcaption{display:flex;justify-content:space-between;padding:17px 24px;color:#d4e4df;font-size:7px;letter-spacing:1.1px;gap:12px}
.section{padding:50px 0 65px;border-top:1px solid var(--line)}.section-label{display:flex;align-items:center;gap:25px;margin-bottom:34px}.section-label .eyebrow{font-size:9px;margin:0}.section-label:after{content:'';height:1px;background:var(--line);flex:1}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.split p,.prose p{font-size:16px;line-height:1.85;color:var(--muted);margin:0 0 20px}.split .lead{color:var(--ink);font-size:19px}.section h2{font-size:clamp(34px,3.7vw,50px)}.vision-strip{display:flex;flex-wrap:wrap;gap:15px 36px;margin-top:35px;font-size:13px;letter-spacing:.3px}.vision-strip span:before{content:'↗';margin-right:13px;color:var(--teal)}
.festival{display:grid;grid-template-columns:1.3fr 1fr;gap:7%;align-items:center;padding:12px 0 72px}.festival figure{margin:0;border-radius:10px;overflow:hidden;background:var(--ink)}.festival img{width:100%;height:auto;display:block}.festival figcaption{padding:16px 22px;color:#d4e4df;font-size:8px;letter-spacing:1.5px}.festival .eyebrow{font-size:9px;margin-bottom:22px}.festival h2{font-size:clamp(34px,3.4vw,48px)}.festival p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted);margin:23px 0 10px}
.band{padding:42px 44px;border-radius:8px;background:#e4ebe2;margin:25px 0 64px;display:flex;gap:35px;align-items:center;justify-content:space-between}.band h2{font-size:36px}.band p{color:var(--muted);font-size:14px;line-height:1.8;max-width:550px}.band .button{flex-shrink:0}.page-heading{padding:56px 0 40px;max-width:850px}.page-heading .eyebrow{font-size:9px;margin-bottom:23px}.page-heading h1{font-size:clamp(46px,5.5vw,72px);letter-spacing:-3px}.page-heading p{font-size:18px;line-height:1.8;max-width:690px;color:var(--muted)}.breadcrumb{font-size:12px;color:var(--muted);padding-top:28px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:36px 0 0;gap:35px}.steps li{border-top:2px solid var(--ink);padding-top:20px}.step-number{font-size:11px;letter-spacing:1px;color:var(--teal)}.steps h3{font-size:22px;font-weight:500;letter-spacing:-.5px;margin:22px 0 12px}.steps p{font-size:15px;line-height:1.85;color:var(--muted)}.notice{border-left:3px solid var(--teal);padding:18px 22px;background:#e8eee5;font-size:14px;line-height:1.8;margin:28px 0}.notice strong{display:block;color:var(--ink)}.reading{max-width:800px;padding-bottom:60px}.reading h2{font-size:30px;letter-spacing:-1px;margin:32px 0 18px}.reading p,.reading li{color:var(--muted);font-size:16px;line-height:1.9}.reading li{margin:10px 0}.faq{max-width:880px;padding-bottom:64px}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:19px;cursor:pointer;line-height:1.6;font-weight:500}.faq p{font-size:15px;line-height:1.9;color:var(--muted);max-width:740px}.faq a,.inline-link{text-decoration:underline;text-underline-offset:4px;color:var(--teal)}
.form-layout{display:grid;grid-template-columns:1.35fr .75fr;gap:8%;padding:0 0 70px}.form-panel{padding:30px;background:#fffdf8;border:1px solid var(--line);border-radius:8px}.form-panel label{display:block;font-size:13px;font-weight:600;margin:0 0 9px}.form-panel input,.form-panel select,.form-panel textarea,.search-input{width:100%;padding:14px 13px;border:1px solid #9eafa7;border-radius:4px;background:#fffdf8;color:var(--ink);font-size:16px}.form-panel textarea{min-height:120px;resize:vertical;line-height:1.7}.form-panel .field{margin-bottom:23px}.form-panel .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-panel .hint{font-weight:400;color:var(--muted);font-size:12px;display:block;margin-top:7px;line-height:1.6}.form-panel .check{display:flex;gap:10px;align-items:start;font-size:13px;font-weight:400;line-height:1.6;margin-bottom:23px}.form-panel .check input{width:17px;height:17px;flex-shrink:0;margin-top:3px}.form-aside h2{font-size:30px}.form-aside p{font-size:14px;line-height:1.9;color:var(--muted)}.form-aside a{overflow-wrap:anywhere}.form-aside ol{padding-left:21px;color:var(--muted);font-size:14px;line-height:1.85}.form-aside li{margin-bottom:16px}.request-preview{margin-top:28px;border-top:1px solid var(--line);padding-top:25px}.request-preview h2{font-size:25px;letter-spacing:-.8px}.request-preview textarea{min-height:240px;margin:18px 0}.status{font-size:14px;line-height:1.7;color:var(--teal);min-height:24px}.small-button{background:transparent;border:1px solid #8fa29a;border-radius:4px;padding:12px 16px;color:var(--ink);min-height:44px}.private-banner{background:#132f39;color:#e9f2ea;padding:13px 6%;font-size:12px;line-height:1.6;text-align:center}.private-banner strong{color:var(--lime)}
.catalog-tools{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:22px}.search-wrap{max-width:430px}.search-wrap label{display:block;font-size:12px;margin-bottom:9px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{background:transparent;border:1px solid #9eafa7;padding:11px 16px;min-height:44px;border-radius:30px;color:var(--ink);font-size:13px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 28px;margin:24px 0 60px}.place-card{min-width:0}.place-card>a{display:block}.place-card .card-image{position:relative;border-radius:8px;overflow:hidden;background:#18313b}.place-card img{display:block;width:100%;aspect-ratio:1.7;object-fit:cover;transition:transform .25s}.place-card a:hover img{transform:scale(1.025)}.image-label{position:absolute;bottom:12px;left:13px;padding:7px 10px;background:#122c36e6;color:white;border-radius:3px;font-size:10px}.card-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:18px;font-size:11px;color:var(--teal)}.place-card h2{font-size:31px;letter-spacing:-1px;margin:12px 0 8px}.place-card p{font-size:14px;color:var(--muted);line-height:1.8;margin:0}.card-actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.card-actions .text-link{margin:0}.save-place{font-size:12px;background:transparent;border:1px solid var(--line);padding:10px 13px;border-radius:4px;min-height:42px;color:var(--ink)}.save-place[aria-pressed=true]{background:#deeadb;border-color:#8fa29a}.empty-results{padding:35px;border:1px solid var(--line);margin:28px 0 60px}.empty-results h2{font-size:28px}.place-hero{display:block;width:100%;max-height:600px;aspect-ratio:1.8;object-fit:cover;border-radius:8px}.caption{font-size:11px;color:var(--muted);margin-top:12px}.detail-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;padding:36px 0 65px}.detail-layout h2{font-size:32px;margin-bottom:20px}.detail-layout p,.detail-layout li{font-size:15px;color:var(--muted);line-height:1.85}.detail-layout ul{padding-left:20px}.visit-box{background:#e4ebe2;border-radius:8px;padding:30px}.visit-box .button{width:100%;justify-content:space-between}.visit-box .small-button{margin-top:14px;width:100%}.manual-link{display:block;width:100%;font-size:13px;padding:12px;border:1px solid #9eafa7;border-radius:4px;background:#fffdf8;color:var(--ink);margin:15px 0}.footer{display:grid;grid-template-columns:1fr auto;align-items:start;padding:30px 0 36px;gap:28px}.footer-links{display:flex;flex-wrap:wrap;gap:15px 24px;font-size:12px}.footer p{font-size:11px;line-height:1.8;margin:0;color:var(--muted)}.footer .footer-label{font-size:9px;letter-spacing:1.5px;margin-bottom:8px}
@media(max-width:1000px){.site-nav{gap:18px;font-size:12px}.brand-name{font-size:9px}.brand{gap:14px}.hero{gap:5%}.hero h1{font-size:62px}.catalog-tools{grid-template-columns:1fr}.form-layout{gap:5%}.site-shell{padding:0 5%}}
@media(max-width:760px){.site-header{min-height:88px;gap:16px;flex-wrap:wrap;padding:15px 0}.menu-toggle{display:block}.site-nav{display:flex;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line);padding:12px 0 2px}.js .site-nav:not(.is-open){display:none}.site-nav a{padding:13px 8px}.site-nav .nav-cta{text-align:center;margin-top:6px}.hero{grid-template-columns:1fr;gap:33px;padding:42px 0 50px}.hero h1{font-size:clamp(52px,13vw,75px);letter-spacing:-3px}.hero .intro{font-size:16px}.hero .eyebrow{font-size:8px}.city-visual img{aspect-ratio:1.3}.hero-note{font-size:12px}.split{grid-template-columns:1fr;gap:26px}.section{padding:35px 0 45px}.section h2{font-size:37px}.split p{font-size:15px}.split .lead{font-size:18px}.festival{grid-template-columns:1fr;gap:28px;padding:8px 0 45px}.festival h2{font-size:36px}.band{padding:30px 25px;flex-direction:column;align-items:start;margin-bottom:45px;gap:10px}.band h2{font-size:32px}.page-heading{padding:38px 0 22px}.page-heading h1{font-size:clamp(43px,11vw,64px);letter-spacing:-2px}.page-heading p{font-size:16px}.form-layout,.detail-layout{grid-template-columns:1fr;gap:35px;padding-bottom:45px}.form-panel{padding:24px 20px}.form-panel .field-grid{grid-template-columns:1fr;gap:0}.steps{grid-template-columns:1fr;gap:17px}.steps h3{margin-top:15px}.steps p{margin-bottom:10px}.catalog-grid{grid-template-columns:1fr;gap:35px}.filters{gap:6px}.filters button{font-size:12px;padding:10px 13px}.place-hero{aspect-ratio:1.25}.footer{grid-template-columns:1fr}.footer-links{gap:14px 20px}.faq summary{font-size:18px}.reading h2{font-size:28px}.visual-heading{font-size:7px;padding:18px 20px}.city-visual figcaption{font-size:6px;padding:15px 20px}}
@media(prefers-reduced-motion:reduce){.place-card img{transition:none}.place-card a:hover img{transform:none}}

/* Display lettering: an ink-and-pigment treatment, with quiet body typography. */
:root{--copper:#a34432;--plum:#704565;--teal:#1b6868}
.hero h1,.page-heading h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.04;letter-spacing:-.055em;color:#234d56;text-wrap:balance}
.hero h1{font-size:clamp(62px,6.7vw,96px)}
.page-heading h1{font-size:clamp(56px,6.4vw,88px)}
.hero h1 em,.page-heading h1 em{font-weight:400;letter-spacing:-.065em;color:var(--copper)}
.section h2,.festival h2,.band h2,.form-aside h2,.detail-layout h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;letter-spacing:-.04em;color:#234d56}
h2 em{color:var(--copper)}
.hero h1 em,.page-heading h1 em{position:relative;display:inline-block;padding-right:.06em}
.hero h1 em:after,.page-heading h1 em:after{content:'';display:block;width:72%;height:7px;margin:12px 0 0 4px;border-top:2px solid #a3443270;border-radius:50%;transform:rotate(-4deg)}
.eyebrow,.page-heading .eyebrow,.section-label .eyebrow{color:#994a38;font-weight:700;letter-spacing:2px}
.place-card h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:36px;letter-spacing:-1.5px;color:#275b63}
.step-number{color:var(--copper)}
.brand-mark .dot{color:var(--copper)}
.breadcrumb+.page-heading h1{font-style:italic;font-size:clamp(70px,9.5vw,132px);line-height:1.1;display:inline-block;padding-right:.12em;letter-spacing:-.06em}
.breadcrumb+.page-heading{max-width:100%;position:relative}
.breadcrumb+.page-heading:after{content:'';display:block;width:100px;height:9px;border-top:2px solid #a3443280;border-radius:50%;transform:rotate(-5deg);margin:22px 0 4px}
@supports(background-clip:text){
 .hero h1,.page-heading h1{background:linear-gradient(125deg,#153e4b 8%,#286e70 48%,#704565 88%);background-clip:text;-webkit-background-clip:text;color:transparent}
 .hero h1 em,.page-heading h1 em{background:linear-gradient(110deg,#b64a2c 5%,#934039 45%,#6d3e68 95%);background-clip:text;-webkit-background-clip:text;color:transparent}
 .breadcrumb+.page-heading h1{background-image:linear-gradient(110deg,#183e58 8%,#436c86 32%,#704565 57%,#ac4a33 80%,#905032 100%)}
}
@media(max-width:760px){.hero h1{font-size:clamp(58px,14.5vw,78px)}.page-heading h1{font-size:clamp(48px,12vw,66px)}.breadcrumb+.page-heading h1{font-size:clamp(64px,17vw,98px)}.hero h1 em:after,.page-heading h1 em:after{margin-top:8px}.place-card h2{font-size:34px}}
@media(forced-colors:active){.hero h1,.page-heading h1,.hero h1 em,.page-heading h1 em{background:none;color:CanvasText}}
