@font-face{font-family:Fredoka;src:url('/assets/fredoka.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Nunito;src:url('/assets/nunito.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--ink:#143f40;--aqua:#e4f0ec;--paper:#fffdf5;--line:#bdcdc7;--space:max(28px,calc((100vw - 1120px)/2))}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px;scrollbar-color:var(--ink) var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 Nunito,Arial,sans-serif}::selection{background:#f5d35e;color:var(--ink)}a{color:inherit;text-underline-offset:5px}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}.skip{position:absolute;left:16px;top:-90px;z-index:9;background:var(--paper);padding:12px}.skip:focus{top:12px}header{padding:36px var(--space);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font:600 24px/1 Fredoka,sans-serif;text-decoration:none}.brand svg{width:36px;height:36px;fill:var(--ink)}nav{display:flex;align-items:center;gap:30px}nav>a:not(.button){text-decoration:none;font-size:15px;padding:10px 0}nav>a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:100px;text-decoration:none;background:var(--ink);color:var(--paper);font-size:16px;font-weight:bold;transition:background .2s}.button:hover{background:#245d5d}.button.small{background:transparent;color:var(--ink);border:1px solid var(--line)}.hero{padding:64px var(--space) 110px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Fredoka,sans-serif;font-weight:600;line-height:1.08;text-wrap:balance}h1{font-size:clamp(56px,6vw,82px);letter-spacing:-.03em;margin-bottom:28px}h2{font-size:42px;letter-spacing:-.02em;margin-bottom:24px}h3{font-size:26px}.hero-copy p{font-size:18px;line-height:1.7;margin-bottom:32px}.hero-photo{margin:0}.hero-photo img{display:block;width:100%;height:410px;object-fit:cover;border-radius:16px}.hero-photo figcaption{font-size:12px;text-align:right;margin-top:10px}.section{padding:90px var(--space)}.gallery{background:var(--aqua)}.gallery-heading{margin-bottom:34px}.gallery-heading h2{margin-bottom:8px}.gallery-heading p{font-size:16px;margin-bottom:0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.photo-grid figure{margin:0}.photo-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:12px;display:block}.photo-grid a:hover img{filter:brightness(.95)}.photo-grid figcaption{font-size:12px;padding:12px 0}.gallery-more{margin-top:30px}.gallery-more>summary{display:inline-block;padding-right:42px;border-bottom:1px solid var(--line)}.gallery-more[open]>.photo-grid{margin-top:32px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:110px}.visit-title p{font-size:17px}address{font-style:normal;margin:28px 0}.hours dl{margin:24px 0}.hours dl>div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.hours dd{margin:0;text-align:right;white-space:nowrap}.hours p{font-size:14px;max-width:50ch}.phone{display:inline-block;padding:10px 0;font-size:22px}.faq{padding-top:0;padding-bottom:60px}.visit-questions{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:22px 36px 22px 0;position:relative;font-size:18px;font-weight:bold}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:4px;font-size:24px;top:17px}details[open]>summary:after{content:'−'}.questions{max-width:720px;padding-bottom:24px}.questions details{border-top:1px solid var(--line)}.questions summary{font-size:16px}.questions p{font-size:16px;padding-right:28px}footer{padding:36px var(--space);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:6px 30px}.footer-brand{font:600 22px Fredoka;text-decoration:none}footer p{font-size:14px}footer div{grid-column:2;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-size:14px}footer small{grid-column:1/-1;font-size:12px;margin-top:18px}
@media(max-width:900px){.hero{gap:36px}.hero-photo img{height:360px}.visit{gap:45px}nav{gap:20px}.photo-grid{gap:20px}}@media(max-width:600px){body{font-size:16px}header{padding:26px var(--space)}.brand{font-size:21px}.brand svg{width:30px;height:30px}nav>a:not(.button){display:none}.button.small{font-size:14px;padding:10px 16px}.hero{grid-template-columns:1fr;gap:40px;padding-top:36px;padding-bottom:64px}h1{font-size:60px;margin-bottom:22px}.hero-copy p{font-size:16px;margin-bottom:26px}.hero-photo img{height:300px}.section{padding-top:64px;padding-bottom:64px}h2{font-size:34px}.photo-grid{grid-template-columns:1fr;gap:24px}.photo-grid img{aspect-ratio:1}.gallery-more[open]>.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.gallery-more[open]>.photo-grid img{aspect-ratio:1}.visit{grid-template-columns:1fr;gap:52px}.hours dl>div{font-size:15px}.faq{padding-top:0;padding-bottom:40px}footer{grid-template-columns:1fr}footer div{grid-column:1;grid-row:auto;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
