*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:#f7f4eb;color:#303e35;font:17px/1.65 system-ui,sans-serif}a{color:inherit;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a34e33;outline-offset:5px}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}p+p{margin-top:1rem}.masthead,main,footer{width:min(90%,1600px);margin:auto}.masthead{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 0;border-bottom:1px solid #c5c8b7}.masthead>a{display:inline-flex;align-items:center;min-height:44px;font-weight:800;text-decoration:none;letter-spacing:.08em}.masthead>a span{font-weight:400;letter-spacing:0}.demo-label{font-size:.75rem;border:1px solid #aebaa5;padding:.4rem .8rem;border-radius:2rem}.hero-split{display:grid;gap:2rem;padding:2.5rem 0}.hero-copy{align-self:center}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.7rem;font-weight:700;color:#746044;margin-bottom:1.2rem}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.07;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.5vw,6.8rem)}h1 em{display:block;font-weight:400;color:#9b533d;font-size:1.35em;margin:.25em 0}h2{font-size:clamp(2rem,3.2vw,3.8rem)}h3{font-size:1.05rem;margin:.3rem 0}.intro{max-width:36ch}.hosts{margin:1.5rem 0}.button{display:inline-flex;justify-content:center;align-items:center;gap:1rem;background:#354b3c;color:#fff;border:0;border-radius:3px;padding:.9rem 1.2rem;text-decoration:none;min-height:48px;max-width:100%;text-align:center}.button:hover{background:#263a2d}.fine{font-size:.75rem;margin-top:1rem;color:#626b5e}.hero-art img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:45% 45% 3px 3px}.hero-art figcaption,figcaption{font-size:.75rem;padding-top:.7rem;color:#65654f}.section{border-top:1px solid #c5c8b7;padding:3rem 0}.section-intro>p:last-child{margin-top:1.3rem;max-width:36ch}.event-grid{display:grid;gap:2rem}.event-details{display:grid;gap:1.5rem}.event-details article{border-top:1px solid #bca77e;padding-top:1rem}.number{color:#94663c;font-size:.75rem}small{display:block;font-size:.8rem;line-height:1.6;margin-top:.5rem}.gallery{display:grid;gap:1.5rem}.gallery-heading p:last-child{margin-top:1rem}.gallery img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:3px}.response-grid{display:grid;gap:2rem}.rsvp{background:#e5e9dc;padding:clamp(1.3rem,3vw,3rem);border-radius:4px}.rsvp>p:not(.eyebrow){margin:1.5rem 0}.rsvp #confirmation{font-size:.85rem;margin-bottom:0;min-height:3em}.qr-panel{border:1px solid #bca77e;padding:clamp(1.3rem,3vw,3rem);display:grid;gap:1.5rem;align-content:center}.qr-panel p:not(.eyebrow){margin:1.2rem 0}.qr-panel img{width:200px;max-width:100%;justify-self:center;image-rendering:pixelated}.qr-panel a{display:inline-block;padding:.5rem 0;min-height:44px}footer{border-top:1px solid #c5c8b7;padding:2rem 0 3rem;font-size:.85rem;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}footer p:first-child{flex-basis:100%;font:1.6rem Georgia,serif}footer p{margin:0}footer a{min-height:44px}footer span{font-size:.7rem}.skip{position:absolute;left:1rem;top:-100px;background:#fff;padding:1rem;z-index:10}.skip:focus{top:1rem}@media(min-width:700px){.hero-split{grid-template-columns:1.05fr 1fr;gap:3rem;padding:3rem 0}.event-details{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.gallery-heading{grid-column:1/-1}.response-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.hero-art{align-self:center}.section{padding:4rem 0}}@media(min-width:1100px){.hero-split{grid-template-columns:1.1fr 1fr;gap:6%;padding:3.5rem 0}.hero-copy{padding-left:4%}.hero-art img{max-height:760px}.event-grid{grid-template-columns:.8fr 1.4fr;gap:7%}.section{padding:5rem 0}.gallery{grid-template-columns:.7fr 1fr 1fr;align-items:center}.gallery-heading{grid-column:auto}.response-grid{grid-template-columns:1fr 1.1fr;gap:2rem}.qr-panel{grid-template-columns:1fr auto;align-items:center}.qr-panel img{width:180px}}@media(min-width:1700px){.hero-split{gap:8%}.section{padding:6rem 0}.qr-panel img{width:220px}}@media(max-width:399px){.masthead{align-items:flex-start;flex-direction:column}.demo-label{font-size:.7rem}body{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}