@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:light;--bg:#faf9f7;--surface:#ffffff;--line:#dedbd6;--ink:#181818;--muted:#66645f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#555}img{max-width:100%;display:block}button,input,textarea{font:inherit}.wrap{width:min(1100px,calc(100% - 44px));margin:auto}header{border-bottom:1px solid var(--line)}.head{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-weight:700;letter-spacing:-.06em;font-size:29px}.logo span{font-weight:400}nav{display:flex;align-items:center;gap:20px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}nav a.active{border-bottom:1px solid #111;padding-bottom:5px}.hero{padding:100px 0 90px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:var(--muted)}h1{font-size:clamp(42px,7vw,96px);letter-spacing:-.07em;line-height:1.04;margin:15px 0 25px;font-weight:500}h2{font-size:clamp(30px,4vw,53px);letter-spacing:-.05em;line-height:1.15;font-weight:500;margin:0 0 20px}.lead{font-size:clamp(18px,2vw,23px);line-height:1.5;max-width:730px;color:#55514d}.btn{display:inline-block;border:1px solid #252525;padding:11px 22px;margin:12px 12px 0 0;font-size:13px;text-transform:uppercase;letter-spacing:.08em;background:transparent;color:#111;cursor:pointer}.btn:hover{background:#111;color:white}.photo-hero{width:100%;height:auto;max-height:670px;object-fit:contain;filter:grayscale(1)}section{padding:64px 0;border-top:1px solid var(--line)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tile{background:var(--surface);overflow:hidden}.tile img{width:100%;height:auto;object-fit:contain;filter:grayscale(1)}.tile .body{padding:20px}.tile h3{margin:0 0 7px;font-weight:500;font-size:21px}.muted{color:var(--muted)}.tag{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:50px}.line-list{list-style:none;padding:0;margin:25px 0}.line-list li{padding:15px 0;border-bottom:1px solid var(--line)}.form{max-width:650px}.form label{display:block;margin:18px 0 5px}.form input,.form textarea{width:100%;padding:12px;background:white;border:1px solid #aaa;color:#111;border-radius:0}.form textarea{min-height:160px}.notice{border:1px solid #777;padding:13px;margin:20px 0}footer{border-top:1px solid var(--line);padding:32px 0;margin-top:50px;color:var(--muted);font-size:13px}footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.gallery img{aspect-ratio:4/3;height:auto}.intro{max-width:820px}.main-content{padding:65px 0;min-height:50vh}.main-content h1{font-size:clamp(42px,6vw,68px)}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;color:black;padding:5px;z-index:9}@media(max-width:800px){.head{align-items:flex-start;flex-direction:column;padding:18px 0;gap:10px}nav{flex-wrap:wrap;gap:10px 17px}.hero{padding:65px 0}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.twocol{grid-template-columns:1fr;gap:20px}}@media(max-width:500px){.grid{grid-template-columns:1fr}nav{font-size:11px}.tile img{height:260px}.hero{padding:45px 0}.photo-hero{height:280px}}

header{background:#fff}.hero{padding:85px 0 58px}.hero-photo{padding-bottom:65px}.hero-photo img{margin:auto;max-width:100%}.gallery-grid{columns:3 270px;column-gap:20px;margin:30px 0}.photo-card{break-inside:avoid;display:block;margin:0 0 22px;background:#fff;border:1px solid var(--line)}.photo-card a{display:block;padding:8px}.photo-card img{width:100%;height:auto;object-fit:contain;filter:grayscale(1);transition:filter .2s}.photo-card img:hover{filter:none}.photo-card figcaption{padding:4px 12px 13px;color:var(--muted);font-size:12px;letter-spacing:.03em}.line-list strong{font-weight:600}.tile{border:1px solid var(--line)}.tag{color:#555}footer{background:#fff}@media(max-width:500px){.gallery-grid{columns:1}.photo-hero{height:auto}.tile img{height:auto}}

/* Event galleries */
.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:32px 0 50px}.album-card{display:block;background:white;border:1px solid var(--line);color:inherit;text-decoration:none}.album-card img{display:block;width:100%;height:230px;object-fit:contain;background:#f4f3f1;filter:grayscale(1)}.album-meta{display:flex;flex-direction:column;gap:7px;padding:18px 20px}.album-meta strong{font-size:19px;font-weight:500}.album-meta small{font-size:13px;color:var(--muted)}.album-back{display:inline-block;margin-bottom:22px;text-decoration:underline;text-underline-offset:4px}@media(max-width:800px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.album-grid{grid-template-columns:1fr}}
