@font-face{font-family:Arimo;src:url('assets/fonts/arimo.ttf') format('truetype');font-weight:400 700;font-display:swap}
@font-face{font-family:Yesteryear;src:url('assets/fonts/yesteryear.ttf') format('truetype');font-display:swap}
:root{--grape:#573D5D;--petal:#F2C7DE;--cream:#FBF1E5;--yellow:#F5F0C7;--ink:#22221B;--biscuit:#CDBCA7}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.6 Arimo,Arial,sans-serif}p,h1,h2,h3{margin:0}a{color:var(--grape)}a:hover{color:#3F2D44}a:focus-visible{outline:3px solid #DE8C66;outline-offset:4px}[hidden]{display:none!important}.review-banner{background:var(--grape);color:var(--cream);text-align:center;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:9px 16px}.awning-bar{height:28px;background:var(--grape)}.scallops{display:flex;height:clamp(64px,7.8vw,112px)}.scallops i{flex:1;background:var(--grape);border-radius:0 0 999px 999px}.scallops i:nth-child(even){background:var(--petal)}
.hero{padding:clamp(32px,4vw,56px) 24px clamp(56px,7vw,96px);display:flex;flex-direction:column;align-items:center;text-align:center}.meringue{width:150px;height:auto}.brand-name{margin-top:8px;color:var(--grape);font:400 clamp(64px,8vw,116px)/1.2 Yesteryear,cursive}.brand-description{margin-top:6px;font-size:clamp(17px,1.6vw,23px);letter-spacing:.12em;line-height:1.5}.brand-location{margin-top:10px;letter-spacing:.24em;line-height:1.5}.hero h1{margin-top:48px;font:400 clamp(32px,3.8vw,50px)/1.15 Georgia,'Times New Roman',serif;color:var(--grape);text-wrap:balance}.next-event{margin-top:28px;max-width:100%;background:var(--petal);border-radius:20px;padding:16px 28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 20px;color:var(--grape)}.next-label{font-size:14px;font-weight:700;letter-spacing:.12em}.next-date{font:26px/1.2 Georgia,serif}.next-info{color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 28px;background:var(--grape);color:var(--cream);font-weight:700;text-decoration:none;border-radius:999px}.button:hover{background:#3F2D44;color:var(--cream)}.hero-social{margin-top:28px}.camera,.icon-circle svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.camera{width:20px;height:20px}
.wrap{max-width:1160px;margin:auto}.events{background:var(--petal);padding:88px 24px 96px}.events h2,.contact h2{font:700 clamp(40px,5vw,68px)/1.1 Georgia,'Times New Roman',serif;color:var(--grape);text-align:center}.event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:24px;margin-top:44px}.event-card{min-width:0;background:var(--cream);border-radius:24px;padding:clamp(22px,7vw,32px);display:flex;flex-direction:column;gap:18px;overflow-wrap:anywhere}.date-header{display:flex;align-items:center;gap:16px;color:var(--grape);border-bottom:1px solid var(--biscuit);padding-bottom:18px}.date-days{font:400 min(58px,14vw)/1 Georgia,serif}.date-meta{display:flex;flex-direction:column;font-size:14px;font-weight:700;letter-spacing:.12em;line-height:1.5;text-transform:uppercase}.event-body{display:flex;flex-direction:column;gap:4px;flex-grow:1}.event-body h3{font:400 26px/1.25 Georgia,serif;color:var(--grape)}.event-note{font-weight:700;color:var(--grape)}.event-links{display:flex;flex-wrap:wrap;gap:0 24px}.event-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;text-underline-offset:3px}
.contact{padding:96px 24px}.contact-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.contact-header p{font-size:19px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:24px;margin-top:48px}.contact-card{background:var(--yellow);border-radius:24px;padding:36px clamp(22px,7vw,32px);display:flex;flex-direction:column;align-items:flex-start;gap:14px}.icon-circle{width:56px;height:56px;border-radius:50%;background:var(--grape);color:var(--cream);display:grid;place-items:center}.icon-circle svg{width:26px;height:26px}.contact-card h3{margin-top:6px;font:400 28px/1.2 Georgia,serif;color:var(--grape)}.contact-card p{flex-grow:1}.contact-card .button{margin-top:10px;padding-inline:26px}footer{min-height:80px;background:var(--grape);display:flex;align-items:center;justify-content:center;padding:12px 24px;font:30px/1.3 Yesteryear,cursive;color:var(--cream)}@media(max-width:599px){.scallops i:nth-child(n+9){display:none}}
