:root{--ink:#143229;--green:#18392f;--lime:#d8e45c;--cream:#f3ebd9;--paper:#fbf7ed;--coral:#e66f4c;--line:rgba(20,50,41,.2);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit}button{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;max-width:var(--max);margin:auto;padding:0 30px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;line-height:.85}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--ink);border-radius:50%;font-family:Georgia,serif;font-size:26px;font-style:italic}.brand strong,.brand em{display:block}.brand strong{text-transform:uppercase;letter-spacing:.08em;font-size:13px}.brand em{font-family:Georgia,serif;font-size:22px;font-weight:400}nav{display:flex;gap:28px}nav a{text-decoration:none;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em}nav a:hover{text-decoration:underline;text-underline-offset:5px}.hero{min-height:680px;max-width:var(--max);margin:auto;padding:80px 30px;display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:800;margin:0 0 22px}.hero h1,.section h2,.hours h2,.contact h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.95;letter-spacing:-.045em;margin:0}.hero h1{font-size:clamp(62px,8vw,112px)}.hero h1 span{font-style:italic;color:var(--coral)}.intro{font-size:20px;max-width:600px;margin:32px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;text-decoration:none;padding:15px 20px;border-radius:3px;font-weight:700}.button-primary{background:var(--green);color:#fff}.button-quiet{border:1px solid var(--line)}.hero-art{height:500px;position:relative;overflow:hidden;background:var(--lime);border-radius:210px 210px 8px 8px}.hero-art:before,.hero-art:after{content:"";position:absolute;background:var(--green);bottom:-100px;width:420px;height:300px;border-radius:50%}.hero-art:before{left:-190px}.hero-art:after{right:-190px}.sun{position:absolute;width:110px;height:110px;background:var(--coral);border-radius:50%;top:70px;left:50%;transform:translateX(-50%)}.arch{position:absolute;bottom:70px;width:105px;height:190px;background:var(--paper);border-radius:55px 55px 0 0}.arch-one{left:28%}.arch-two{right:28%}.hero-art p{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:bold;z-index:2}.ticker{background:var(--green);color:#fff;padding:18px 24px;display:flex;justify-content:center;align-items:center;gap:34px;text-transform:uppercase;letter-spacing:.1em;font-size:13px;font-weight:700}.ticker i{color:var(--lime);font-style:normal}.section{max-width:var(--max);margin:auto;padding:130px 30px}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.section h2,.hours h2,.contact h2{font-size:clamp(50px,6vw,82px)}.body-copy{font-size:20px;max-width:540px}.body-copy p:first-child{margin-top:3px}.cards{display:grid;grid-template-columns:repeat(3,1fr);max-width:var(--max);margin:auto;padding:0 30px 130px}.card{min-height:470px;padding:28px;display:flex;flex-direction:column;justify-content:space-between}.card-green{background:var(--green);color:#fff}.card-cream{background:var(--cream)}.card-coral{background:var(--coral);color:#2d1c16}.card-number{font-family:Georgia,serif;font-style:italic;font-size:22px}.card h3{font-family:Georgia,serif;font-weight:400;font-size:58px;margin:0}.card p:last-child{max-width:250px}.hours{background:var(--lime);padding:120px max(30px,calc((100vw - var(--max))/2 + 30px));display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.hours-heading>p:last-child{margin-top:25px}.hours dl{margin:0}.hours dl div{display:grid;grid-template-columns:1fr auto;gap:20px;padding:25px 0;border-top:1px solid rgba(20,50,41,.3);font-size:19px}.hours dl div:last-child{border-bottom:1px solid rgba(20,50,41,.3)}.hours dt{font-weight:700}.hours dd{margin:0}.hours .open dd{font-weight:800}.contact{max-width:var(--max);margin:auto;padding:130px 30px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.contact address{font-style:normal;border-top:1px solid var(--line)}.contact address p{display:grid;grid-template-columns:110px 1fr;padding:23px 0;margin:0;border-bottom:1px solid var(--line)}.contact address span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.contact address a{font-size:20px;text-decoration:none}.contact address a:hover{text-decoration:underline;text-underline-offset:4px}footer{min-height:180px;background:var(--green);color:#fff;padding:44px max(30px,calc((100vw - var(--max))/2 + 30px));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px}.brand-footer .brand-mark{border-color:#fff}.brand-footer{justify-self:start}footer>p{font-size:13px;text-align:center}footer>div{justify-self:end;display:flex;gap:18px}.footer-link{border:0;background:none;color:#fff;padding:0;text-decoration:underline;cursor:pointer}dialog{width:min(680px,calc(100% - 32px));max-height:85vh;border:0;border-radius:4px;padding:44px;color:var(--ink);background:var(--paper);box-shadow:0 20px 80px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(10,30,25,.75)}dialog h2{font-family:Georgia,serif;font-size:48px;font-weight:400;margin:0 0 25px}dialog .close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:34px;cursor:pointer}dialog a{overflow-wrap:anywhere}@media(max-width:800px){.site-header{height:76px;padding:0 18px}nav{display:none}.hero{min-height:auto;padding:60px 18px 80px;grid-template-columns:1fr;gap:55px}.hero h1{font-size:clamp(53px,17vw,78px)}.intro{font-size:18px}.hero-art{height:390px;max-width:430px;width:100%;margin:auto}.ticker{justify-content:flex-start;overflow:hidden;white-space:nowrap}.split,.hours,.contact{grid-template-columns:1fr;gap:45px}.section,.contact{padding:90px 18px}.cards{grid-template-columns:1fr;padding:0 18px 90px}.card{min-height:360px}.hours{padding:90px 18px}.hours dl div{font-size:16px}.contact address p{grid-template-columns:1fr;gap:8px}.contact address a{font-size:18px}footer{grid-template-columns:1fr;justify-items:start;padding:45px 18px}footer>p{text-align:left}footer>div{justify-self:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero-photo{height:500px;position:relative;overflow:hidden;margin:0;border-radius:210px 210px 8px 8px;background:var(--green)}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.82) contrast(1.04)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,35,28,.65))}.hero-photo figcaption{position:absolute;z-index:2;left:24px;right:24px;bottom:20px;color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800}.gallery{max-width:var(--max);margin:0 auto;padding:0 30px 130px;display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:240px 240px;gap:14px}.gallery figure{margin:0;overflow:hidden;background:var(--cream)}.gallery-wide{grid-row:1/3}.gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery figure:hover img{transform:scale(1.025)}
@media(max-width:800px){.hero-photo{height:390px;max-width:430px;width:100%;margin:auto}.gallery{grid-template-columns:1fr;grid-template-rows:320px 230px 230px;padding:0 18px 90px}.gallery-wide{grid-row:auto}}
