@font-face{font-family:Barlow;src:url('fonts/Barlow-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url('fonts/Barlow-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'EB Garamond';src:url('fonts/EBGaramond.woff2') format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:'EB Garamond';src:url('fonts/EBGaramond-Italic.woff2') format('woff2');font-weight:400 800;font-style:italic;font-display:swap}
:root{color-scheme:light;--paper:#f5f2eb;--ink:#223345;--muted:#666a6b;--gold:#8a6a39;--line:#ddd8ce;--serif:'EB Garamond',Georgia,serif;--sans:Barlow,system-ui,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:5px}
button,input,textarea{font:inherit}
button,a,input,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:wait;opacity:.6}
:focus-visible{outline:3px solid #a67931;outline-offset:4px}
.skip-link{position:absolute;left:16px;top:-80px;padding:12px;background:var(--ink);color:#fff;z-index:10}
.skip-link:focus{top:12px}
.site-header,.site-footer,main{width:min(1200px,calc(100% - 96px));margin-inline:auto}
.site-header{min-height:102px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}
.wordmark{font:27px var(--serif);text-decoration:none;white-space:nowrap}
.wordmark-icon{color:var(--gold);padding-right:7px;font-size:31px}
.site-header nav{display:flex;align-items:center;gap:28px;font-size:14px}
.site-header nav>a{text-decoration:none}
.site-header nav>a:hover,.text-link:hover{text-decoration:underline}
.account-button{border:1px solid #c6c4bd;background:transparent;color:var(--ink);border-radius:5px;min-height:42px;padding:8px 16px;font-size:14px}
.account-button:hover{background:#eae6dc}
.suggest-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.91fr);gap:100px;padding:65px 0 78px}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:2.2px;color:var(--gold);margin:0 0 16px;line-height:1.6}
.eyebrow>span{font-size:19px;margin-right:7px;vertical-align:-1px}
h1,h2,p{margin-top:0}
h1{font:400 clamp(48px,5vw,70px)/.98 var(--serif);letter-spacing:-1.8px;margin-bottom:24px}
h1 em,.hall-copy h2 em{font-weight:400;color:#7d653e}
.intro{font-size:18px;line-height:1.6;max-width:480px;margin-bottom:16px}
.invitation{color:var(--muted);font-size:15px;line-height:1.7;margin-bottom:29px;max-width:495px}
.suggestion-card{padding:28px 30px 24px;background:#fffefa;border:1px solid var(--line);border-radius:8px;box-shadow:0 5px 22px #343b4010}
fieldset{border:0;padding:0;margin:0;min-width:0}
legend{font:400 28px/1.2 var(--serif);padding:0;margin-bottom:7px}
.form-intro{font-size:14px;color:var(--muted);margin-bottom:23px}
label{display:block;font-weight:600;font-size:14px;margin:0 0 8px}
.optional,.required-note{font-size:12px;font-weight:400;color:var(--muted);margin-left:6px}
input,textarea{display:block;width:100%;border:1px solid #cbc9c0;border-radius:4px;background:#fff;color:var(--ink);padding:11px 12px;font-size:15px;line-height:1.5;margin-bottom:21px}
input::placeholder,textarea::placeholder{color:#787b7b;opacity:1}
textarea{resize:vertical;min-height:98px;margin-bottom:7px}
input:focus,textarea:focus{border-color:#a17e46}
.field-hint{font-size:12px;color:var(--muted);margin-bottom:16px}
.auth-status{font-size:13px;color:var(--muted);margin:17px 0 11px;overflow-wrap:anywhere}
.primary-button{border:1px solid var(--ink);background:var(--ink);color:#fffef8;padding:13px 18px;border-radius:4px;width:100%;font-size:15px;font-weight:600;min-height:50px}
.primary-button:hover{background:#314b65}
.form-status{font-size:14px;margin:12px 0 0;overflow-wrap:anywhere}
.form-status:empty{display:none}
.form-status[data-state=error]{color:#923b30;background:#fcf0ed;border-left:3px solid #b9664e;padding:10px 12px}
.form-footnote{font-size:12px;line-height:1.5;color:var(--muted);text-align:center;margin:13px 0 0}
.suggestion-success{text-align:center;padding:13px 0 4px}
.success-mark{display:inline-grid;place-items:center;border:1px solid #b8c4b4;border-radius:50%;height:45px;width:45px;color:#50674a;font-size:25px;margin-bottom:18px}
.suggestion-success h2{font:400 34px/1.15 var(--serif);margin-bottom:13px;overflow-wrap:anywhere}
.suggestion-success p{color:var(--muted);font-size:15px}
.text-link{display:inline-block;margin-top:18px;font-size:14px;text-decoration:none}
.hall-column{padding-top:4px}
.hall-image{position:relative;height:432px;overflow:hidden;border-radius:220px 220px 5px 5px;background:#25384c}
.hall-image img{display:block;height:100%;width:100%;object-fit:cover;object-position:50% 50%}
.hall-image::after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#152033b3);pointer-events:none}
.image-caption{position:absolute;bottom:23px;left:0;width:100%;text-align:center;font-size:10px;letter-spacing:2px;color:#fff4d9;z-index:1}
.hall-copy{padding:28px 23px 0}
.hall-copy .eyebrow{font-size:10px;letter-spacing:1.7px;margin-bottom:13px}
.hall-copy h2{font:400 46px/1.02 var(--serif);letter-spacing:-.7px;margin-bottom:17px}
.hall-copy>p:not(.eyebrow){font-size:15px;line-height:1.7;color:var(--muted);max-width:390px;margin-bottom:17px}
.hall-link{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #b7aa91;font-size:16px;text-decoration:none;font-weight:600}
.hall-link:hover{color:var(--gold)}
.hall-copy>p.hall-note{font-size:12px;margin-top:10px}
.community-note{display:flex;gap:16px;border-top:1px solid var(--line);padding:23px 23px 0;margin-top:28px}
.community-note>span{font:36px/1.3 var(--serif);color:var(--gold)}
.community-note p{font-size:13px;line-height:1.8;color:var(--muted)}
.community-note strong{font-weight:600;color:var(--ink)}
.requests-section{margin-top:32px}
.requests-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;padding-bottom:11px;border-bottom:1px solid var(--line)}
.requests-heading h2{font:27px var(--serif);margin:0}
.requests-heading>span{font-size:8px;letter-spacing:1.2px;color:var(--muted)}
.requests-list{list-style:none;padding:0;margin:0}
.request-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:17px 0;border-bottom:1px solid var(--line)}
.request-details{min-width:0;overflow-wrap:anywhere}
.request-title{font-size:16px;font-weight:600;margin:0}
.request-meta,.request-note{font-size:13px;color:var(--muted);margin:3px 0 0}
.request-status{flex-shrink:0;font-size:11px;background:#e7e5dd;border-radius:20px;padding:3px 9px;white-space:nowrap}
.request-status[data-status=approved],.request-status[data-status=fulfilled]{background:#e1eadd;color:#3d5a36}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0 32px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.site-footer>span{font:italic 19px var(--serif)}
.site-footer>div{display:flex;gap:26px}
.site-footer a{text-decoration:none}
@media(min-width:1500px){.suggest-layout{gap:130px}}
@media(max-width:1050px){.suggest-layout{gap:55px}.site-header,main,.site-footer{width:calc(100% - 64px)}.hall-image{height:380px}.suggestion-card{padding:24px}.hall-copy{padding-inline:8px}.community-note{padding-inline:8px}}
@media(max-width:760px){.site-header,main,.site-footer{width:calc(100% - 40px)}.site-header{min-height:82px;gap:12px}.wordmark{font-size:23px}.wordmark-icon{font-size:24px}.site-header nav{gap:12px}.site-header nav>a{display:none}.account-button{max-width:145px;font-size:12px;padding:8px 12px}.suggest-layout{grid-template-columns:1fr;gap:46px;padding-top:38px;padding-bottom:44px}.eyebrow{font-size:10px;letter-spacing:1.7px}h1{font-size:clamp(46px,13vw,59px)}.intro{font-size:17px;max-width:none}.invitation{max-width:none}.suggestion-card{padding:25px 22px}.hall-column{max-width:520px;margin:auto}.hall-image{height:380px}.hall-copy{padding:26px 10px 0}.hall-copy h2{font-size:43px}.hall-copy>p:not(.eyebrow){max-width:none}.community-note{margin-top:22px}.site-footer{align-items:flex-start}.site-footer>div{gap:14px}.site-footer>span{font-size:17px}.requests-heading>span{display:none}}
@media(max-width:370px){h1{font-size:46px}.wordmark{font-size:20px}.wordmark-icon{display:none}.suggestion-card{padding:22px 17px}.site-footer{flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

#piece-email{margin-bottom:7px}
@media(max-width:760px){.request-row{flex-wrap:wrap}}
