/* Exact fonts and colors from the wedding website. Change these tokens to reskin. */
@font-face{font-family:WeddingHeading;src:url('/fonts/la-luxes-serif.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:WeddingText;src:url('/fonts/NotoSerifDisplay-Italic.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--background:#f1ece1;--text:#612429;--accent:#bc8d3a;--border:rgba(97,36,41,.3);--font:WeddingText,Arial,sans-serif;--heading:WeddingHeading,Arial,sans-serif}
*{box-sizing:border-box}html{background:var(--background);color:var(--text)}body{margin:0;font:16px/1.6 var(--font);color:var(--text);background:var(--background)}
.site-header{padding:30px 40px;text-align:center}.site-header a{display:inline-block;line-height:0}.site-header img{display:block;width:326px;height:175px;object-fit:contain}
main{width:min(100% - 80px,620px);margin:0 auto;padding:22px 0 60px}h1,h2,h3,legend{font-family:var(--heading);font-weight:400}h1{font-size:39px;line-height:1.3;text-align:center;margin:0 0 42px}h2{font-size:30px;line-height:1.3}p{margin:0 0 18px}.muted{opacity:.75}.small{font-size:13px}
label{display:block;margin:0 0 24px}input,textarea,button{font:inherit;color:inherit}input:not([type=checkbox]),textarea{display:block;width:100%;min-width:0;padding:7px 0;margin-top:5px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;font-size:18px;line-height:1.6;outline:none;transition:border-color .2s}input:not([type=checkbox]){height:44px}textarea{resize:vertical;min-height:78px}input:not([type=checkbox]):focus,textarea:focus{border-bottom-color:var(--text);box-shadow:0 1px 0 var(--text)}button:focus-visible,a:focus-visible,input[type=checkbox]:focus-visible{outline:2px solid var(--text);outline-offset:5px}
.columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}fieldset{border:0;padding:0;margin:6px 0 0;min-width:0}legend{font-size:21px;line-height:1.3;padding:0;margin-bottom:14px}.checkbox{display:flex;align-items:center;gap:12px;font-size:15px;margin-bottom:24px}.checkbox input{appearance:none;flex:0 0 18px;width:18px;height:18px;border:1px solid var(--border);border-radius:0;background:transparent;display:grid;place-content:center;margin:0;cursor:pointer}.checkbox input:checked{background:var(--text);border-color:var(--text)}.checkbox input:checked:after{content:'';width:8px;height:4px;border-left:1.5px solid var(--background);border-bottom:1.5px solid var(--background);transform:translateY(-1px) rotate(-45deg)}
button{display:block;min-width:160px;min-height:44px;margin:30px auto 0;padding:5px 26px;font:15px/30px var(--font);text-align:center;border:1px solid var(--accent);border-radius:0;background:none;cursor:pointer;transition:opacity .3s}button:hover{opacity:.65}button:disabled{opacity:.35;cursor:wait}a{color:inherit;text-underline-offset:4px}.form-footer{text-align:center;margin-top:36px;font-size:15px}.form-footer p{margin-bottom:12px}#status{text-align:center;margin-top:16px}#status:empty{display:none}#success{text-align:center;padding:12px 0 30px}#reference{overflow-wrap:anywhere}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}[hidden]{display:none!important}
.admin{width:min(100% - 48px,1250px);padding-top:50px}.admin #login{max-width:500px;margin:auto}.admin nav{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 24px}.admin nav button{margin:0}.admin #status{text-align:left}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border);white-space:pre-wrap}th{font-weight:400;font-family:var(--heading);font-size:18px}
@media(max-width:768px){.site-header{padding:28px 24px 22px}.site-header img{width:210px;height:113px}main{width:calc(100% - 48px);max-width:620px;padding-top:20px}h1{font-size:34px;margin-bottom:34px}.columns{gap:22px}}
@media(max-width:380px){.columns{grid-template-columns:1fr;gap:0}h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.block-info{text-align:center;margin:0 0 36px;padding:0 0 28px;border-bottom:1px solid var(--border)}.block-info p:last-child{margin-bottom:0}
