@charset "UTF-8";
:root{--paper:#f7f5ef;--ink:#253f35;--muted:#667167;--line:#d9dcd0;--gold:#947044;--white:#fffef9}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #aa762d;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,5vw,5rem);margin-bottom:28px}h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:.35em}h3{font-size:1.8rem}em{font-weight:400;color:#6d7755}p{margin-bottom:24px}.container{max-width:1240px;margin:auto;padding-left:40px;padding-right:40px}.portal-header{justify-content:center;min-height:0}.site-header{max-width:1440px;margin:auto;min-height:118px;padding:24px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,serif;font-size:26px;letter-spacing:3px;line-height:1.2}.brand small{display:block;text-align:center;font:10px/2.5 system-ui,sans-serif;letter-spacing:5px}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav a{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:16px 24px;border:1px solid var(--ink);background:var(--ink);color:var(--white);font-size:13px;text-decoration:none;cursor:pointer;border-radius:2px}.button:hover{background:#385647}.button.small{padding:12px 20px}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.logo{display:block;height:68px;width:auto}.hero{position:relative;display:flex;align-items:center;min-height:clamp(620px,44vw,860px);padding:60px max(40px,5vw) 110px;overflow:hidden;background:#bcc5b2}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%}.hero-panel{position:relative;max-width:620px;padding:48px 52px 44px;background:rgba(247,245,239,.8);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:3px;box-shadow:0 10px 40px rgba(20,40,30,.15)}.hero-panel .intro{color:#4a5449}.hero-panel .actions{margin:30px 0 32px}.hero-note{margin-bottom:0;color:#4f5a50}.eyebrow,.number{font-size:10px;letter-spacing:2px;font-weight:650}.eyebrow{margin-bottom:25px}.intro{max-width:530px;font-size:16px;color:#5e685d;line-height:1.85}.actions{display:flex;align-items:center;gap:25px;margin:34px 0 52px}.text-link{font-size:12px}.hero-note{font-size:9px;letter-spacing:2px;color:var(--muted)}.art-caption{position:absolute;bottom:28px;right:max(40px,5vw);text-align:right;color:#fff8e8;text-shadow:0 1px 8px rgba(0,0,0,.45);display:flex;flex-direction:column}.art-caption span:first-child{font-size:9px;letter-spacing:2px}.art-caption span:last-child{font-family:Georgia,serif;font-style:italic;font-size:25px}.statement{padding:52px 25px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.statement>span{font-size:9px;letter-spacing:2px}.statement p{font:38px/1.2 Georgia,serif;margin:20px 0 0}.section{padding-top:85px;padding-bottom:80px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cards article{padding:34px 28px;border:1px solid var(--line)}.cards .number{display:block;margin-bottom:38px}.cards h3{font-size:29px}.cards p{font-size:14px}.cards a{font-size:12px}.cards .featured{background:#e8eadf}.approach{padding-top:55px;padding-bottom:95px;border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps span{font:italic 28px Georgia,serif;color:var(--gold)}.steps h3{font-size:24px;margin:20px 0 16px}.steps p{font-size:14px;color:var(--muted)}.cta{background:var(--ink);color:var(--paper);padding:75px 25px;text-align:center}.cta h2{font-size:clamp(2.6rem,4vw,4rem)}.cta p{font-size:13px}.cta .button+p{margin:20px 0 0;font-size:11px;color:#c1c9bd}footer{max-width:1440px;padding:55px 48px 25px;margin:auto}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-top p{font:italic 20px Georgia,serif;margin:0}.footer-top>a:last-child{font-size:12px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;margin-top:42px;font-size:10px;color:var(--muted)}.page-heading{padding-top:75px;padding-bottom:80px}.page-heading>.eyebrow{margin-top:25px}.narrow{max-width:740px}.prose{max-width:850px;padding-bottom:100px}.prose h2{margin-top:35px}.service-list{padding-bottom:65px}.service-list article{display:grid;grid-template-columns:100px 1fr;gap:25px;border-top:1px solid var(--line);padding:45px 0}.service-list p{max-width:750px}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;padding-top:70px;padding-bottom:90px}.form-layout h1{font-size:60px}.form-layout aside>p{max-width:350px}.panel{padding:32px;background:var(--white);border:1px solid var(--line);margin-bottom:24px}.panel h2{font-size:30px}.panel p{font-size:14px}.progress{padding-left:22px;margin:35px 0}.progress li{padding:10px 0;color:var(--muted)}.progress [aria-current]{color:var(--ink);font-weight:700}.muted{color:var(--muted);font-size:12px!important}.panel label,form>p>label{display:block;font-weight:600;font-size:13px;margin-bottom:7px}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{width:100%;padding:11px 12px;background:var(--paper);border:1px solid #aeb7a8;color:var(--ink);border-radius:2px}select,input[type=time]{min-height:calc(1.7em + 24px)}select{-webkit-appearance:none;appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23253f35' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer}textarea{resize:vertical}input[type=checkbox]{accent-color:var(--ink);width:17px;height:17px;margin-right:8px}.panel label:has(input[type=checkbox]){font-weight:400;margin:10px 0}.errorlist{color:#9e3627;padding-left:22px;font-size:14px}.helptext{font-size:12px;color:var(--muted)}.back-link{display:inline-block;margin-top:20px;font-size:13px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin:25px 0}.calendar-heading a{padding:7px 14px;text-decoration:none;border:1px solid var(--line)}.calendar{width:100%;table-layout:fixed;border-collapse:collapse;margin-bottom:18px}.calendar th{font-size:11px;font-weight:500;color:var(--muted);padding:6px}.calendar td{text-align:center;padding:3px}.calendar button{width:100%;min-height:40px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;font-size:14px}.calendar button:hover:not(:disabled){background:var(--ink);color:white}.calendar button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--white);font-weight:700}input[type=text][readonly]{background:var(--white);cursor:default}.calendar button:disabled{color:#91978c;background:transparent;border-color:transparent;cursor:default;text-decoration:line-through}.badge{display:inline-block;background:#e7ebdf;padding:5px 12px;font-size:12px}.portal-tools{display:flex;gap:25px;align-items:center;margin-bottom:25px;font-size:13px}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:5px;cursor:pointer;color:var(--ink)}.quote-subhead{font-size:20px;margin:22px 0 10px}.document-links{padding-left:20px;font-size:14px}.payment-list{list-style:none;padding:0;margin:18px 0 0;border-top:1px solid var(--line);font-size:14px}.payment-list li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.checkout-dialog{overflow-x:hidden;box-sizing:border-box;width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:0;border-radius:4px;background:var(--white);color:var(--ink);box-shadow:0 20px 60px rgba(15,25,20,.35)}.checkout-dialog:focus{outline:none}.checkout-dialog::backdrop{background:rgba(20,32,26,.6)}.checkout-dialog-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--white);border-bottom:1px solid var(--line)}.checkout-dialog-header h2{font-size:22px;margin:0}#checkout{padding:20px 24px 24px;min-height:300px;overflow-x:hidden}#checkout>*,#checkout iframe{max-width:100%}.venue-field{position:relative}.venue-suggestions{position:absolute;left:0;right:0;z-index:20;list-style:none;margin:2px 0 0;padding:4px 0;background:var(--white);border:1px solid #aeb7a8;border-radius:3px;box-shadow:0 8px 24px rgba(20,32,26,.15);max-height:320px;overflow-y:auto}.venue-suggestions li{display:flex;flex-direction:column;padding:8px 12px;cursor:pointer;line-height:1.35}.venue-suggestions li span{font-size:13px;color:var(--muted)}.venue-suggestions li[aria-selected=true],.venue-suggestions li:hover{background:#eef0e8}.time-select{display:grid;grid-template-columns:1fr 110px;gap:8px;max-width:360px}.duration-note{margin:-8px 0 18px;font-size:14px;font-weight:600;color:var(--ink)}.duration-note.warning{color:#9e3627}.step-pending{padding:10px 14px;background:#f3ecdf;border-radius:3px}.venmo-option{margin-top:6px}.or-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin:18px 0}.or-divider::before,.or-divider::after{content:"";flex:1;border-top:1px solid var(--line)}.venmo-button{background:#008cff;border-color:#008cff}.venmo-button:hover{background:#0074d4}.venmo-option .button.light{margin-top:2px}.event-card{position:relative;transition:border-color .15s,box-shadow .15s,transform .15s}.event-card:hover{border-color:var(--ink);box-shadow:0 6px 18px rgba(20,32,26,.08);transform:translateY(-1px)}.event-card:focus-within{outline:3px solid #aa762d;outline-offset:3px}.event-card .card-link::after{content:"";position:absolute;inset:0}.event-card .card-link:focus-visible{outline:none}.planning-section{font-size:22px;margin:26px 0 8px;padding-top:16px;border-top:1px solid var(--line)}.planning-form>.planning-section:first-of-type{border-top:0;padding-top:0;margin-top:10px}.planning-question{margin-bottom:18px}.planning-question>label{display:block;font-weight:600;font-size:14px;margin-bottom:4px}.planning-question .helptext{margin:-2px 0 6px}.planning-question div>div,.planning-question ul{list-style:none;padding:0;margin:0}.planning-question label:has(input[type=radio]),.planning-question label:has(input[type=checkbox]){display:flex;align-items:center;gap:8px;font-weight:400;font-size:15px;margin:6px 0}input[type=radio]{accent-color:var(--ink);width:17px;height:17px}.portal-event-title{font-size:clamp(2rem,3.2vw,3rem);margin-bottom:8px}.portal-event-venue{color:var(--muted);margin-bottom:0}.portal-steps{display:grid;grid-template-columns:270px 1fr;gap:28px;align-items:start;margin-top:30px}.step-nav{position:sticky;top:20px}.step-nav [role=tablist]{display:flex;flex-direction:column;gap:8px}.step-tab{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink);text-decoration:none;line-height:1.3}a.step-tab:hover{border-color:#aeb7a8}.step-tab[aria-selected=true]{border-color:var(--ink);box-shadow:inset 4px 0 0 var(--ink)}.step-tab.upcoming{background:transparent;opacity:.5;cursor:not-allowed}.step-marker{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid #aeb7a8;font-size:13px;background:var(--white)}.step-tab.done .step-marker{background:var(--ink);border-color:var(--ink);color:var(--white)}.step-tab.current .step-marker{border:2px solid var(--ink);box-shadow:0 0 0 4px #e7ebdf;font-weight:700}.step-text strong{display:block;font-size:15px}.step-text small{font-size:12px;color:var(--muted)}.step-tab.current .step-text small{color:var(--ink);font-weight:600}.step-divider{border:0;border-top:1px solid var(--line);margin:6px 0;width:100%}.step-panel{margin:0}.step-panel:focus-visible{outline:3px solid #aa762d;outline-offset:2px}.step-done{padding:10px 14px;background:#e7ebdf;border-radius:3px}.detail-list{margin:18px 0}.detail-list div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.detail-list dt{font-size:13px;color:var(--muted)}.detail-list dd{margin:0}.booking-progress{margin:28px 0 4px}.booking-progress .eyebrow{margin-bottom:22px}.milestones{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);padding:0;margin:0 0 26px;counter-reset:milestone}.milestones li{position:relative;padding:42px 8px 0;text-align:center;font-size:13px;line-height:1.35;color:var(--muted);counter-increment:milestone}.milestones li::before{content:counter(milestone);position:absolute;top:0;left:50%;transform:translateX(-50%);width:30px;height:30px;border-radius:50%;border:1px solid #aeb7a8;background:var(--white);display:grid;place-items:center;font-size:12px;z-index:1}.milestones li::after{content:"";position:absolute;top:14px;right:50%;width:100%;height:2px;background:var(--line)}.milestones li:first-child::after{display:none}.milestones .done{color:var(--ink)}.milestones .done::before{content:"\2713";background:var(--ink);border-color:var(--ink);color:var(--white)}.milestones .done::after,.milestones .current::after{background:var(--ink)}.milestones .current{color:var(--ink);font-weight:650}.milestones .current::before{border:2px solid var(--ink);box-shadow:0 0 0 5px #e7ebdf}.booking-progress .milestone-next{margin:0;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.milestone-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:4px 0 10px}.milestone-bar span{height:6px;border-radius:3px;background:var(--line)}.milestone-bar .done{background:var(--ink)}.milestone-bar .current{background:#8fa08f}.cards .milestone-summary{font-size:12px;font-weight:600;margin-bottom:18px}.event-columns{display:grid;grid-template-columns:1fr 1.2fr;gap:25px;margin-top:20px}.price{font:40px Georgia,serif!important}.messages{margin-top:20px}.messages p{padding:15px;border:1px solid var(--line);background:#e7ebdf}.skip{position:absolute;left:20px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.site-header{padding:24px}.brand{font-size:22px}nav{gap:18px}.hero{padding:50px 30px 110px}.hero-panel{padding:40px 36px}.logo{height:56px}.actions{align-items:start;flex-direction:column;gap:15px}.form-layout{gap:35px}.cards article{padding:25px 20px}.footer-top{flex-wrap:wrap}}
@media(max-width:700px){.site-header{flex-direction:column;gap:20px;padding:22px 16px}nav{width:100%;justify-content:center;gap:16px;flex-wrap:wrap;font-size:12px}nav .small{padding:9px 13px}.container{padding-left:22px;padding-right:22px}.hero{min-height:0;padding:32px 16px 96px}.hero-panel{padding:30px 22px 28px;background:rgba(247,245,239,.86)}.logo{height:52px}.hero h1{font-size:48px}.actions{flex-direction:row;align-items:center;gap:20px;margin:25px 0 30px}.hero-note{font-size:8px}.hero-bg{object-position:62% center}.art-caption{right:20px;left:20px;bottom:20px}.art-caption span:last-child{font-size:21px}.statement{padding:35px 20px}.statement p{font-size:32px}.statement>span{font-size:8px}.section{padding-top:50px;padding-bottom:45px}.section-heading{display:block}.section-heading>p{margin-top:20px}.cards,.steps,.event-columns,.form-layout{grid-template-columns:1fr}.cards .number{margin-bottom:25px}.steps{gap:20px}.approach{padding-top:40px;padding-bottom:45px}.cta{padding:50px 20px}footer{padding:35px 24px 20px}.footer-top,.footer-bottom{flex-direction:column;align-items:start;gap:16px}.footer-bottom{margin-top:25px}.page-heading{padding-top:45px;padding-bottom:45px}.service-list article{grid-template-columns:35px 1fr;gap:15px}.form-layout{padding-top:40px;gap:20px}.form-layout h1{font-size:48px}.form-layout aside>p{max-width:none}.progress{font-size:12px;display:flex;gap:25px;flex-wrap:wrap}.panel{padding:24px 20px}.calendar td{padding:2px}.calendar button{min-height:38px}.portal-tools{flex-wrap:wrap}.portal-steps{grid-template-columns:1fr;gap:18px}.step-nav{position:static;margin:0;padding:0;overflow:visible}.step-nav [role=tablist]{flex-direction:row;flex-wrap:wrap;gap:12px 0}.step-tab:not(.extra){flex:0 0 20%;min-width:0;flex-direction:column;align-items:center;gap:6px;padding:2px 0;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:center;position:relative;opacity:1}.step-tab:not(.extra)::before{content:"";position:absolute;top:17px;right:50%;width:100%;height:2px;background:var(--line);z-index:0}.step-tab:not(.extra):first-child::before{display:none}.step-tab.done::before,.step-tab.current::before{background:var(--ink)}.step-tab:not(.extra) .step-marker{position:relative;z-index:1}.step-tab.upcoming .step-marker,.step-tab.upcoming .step-text{opacity:.45}.step-tab:not(.extra) .step-text small{display:none}.step-tab:not(.extra) .step-text strong{font-size:11px;font-weight:500;letter-spacing:.2px}.step-tab:not(.extra)[aria-selected=true]{box-shadow:none}.step-tab:not(.extra)[aria-selected=true] .step-marker{box-shadow:0 0 0 3px var(--paper),0 0 0 5px var(--gold)}.step-tab:not(.extra)[aria-selected=true] .step-text strong{font-weight:700}.step-tab.extra{flex:1 1 100%;padding:10px 12px}.step-tab.extra .step-marker{width:26px;height:26px}.step-divider{display:none}.detail-list div{grid-template-columns:1fr;gap:2px}.milestones li{font-size:10px;padding:38px 3px 0}.milestones li::before{width:26px;height:26px}.milestones li::after{top:12px}#checkout{padding:16px 16px 20px}.checkout-dialog-header{padding:14px 16px}}
@media(min-width:1280px){.textured::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(rgba(20,28,22,.18),rgba(20,28,22,.18)),#6b6a5e url("stone-wall.f39beb018073.jpg") center/cover}.textured main{max-width:1240px;margin:0 auto;background:var(--paper);box-shadow:0 0 45px rgba(15,20,15,.4)}.textured .site-header,.textured footer{position:relative;z-index:1;background:var(--paper);box-shadow:0 0 0 100vmax var(--paper);clip-path:inset(0 -100vmax)}}
/* Song requests */
.request-list{list-style:none;margin:0;padding:0}.request-list li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid rgba(37,63,53,.15)}
.request-state{font-size:13px;white-space:nowrap;color:#667167}
.request-share{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin:0 0 18px}.request-share .qr svg{width:150px;height:150px;display:block}
.request-share .share-link{word-break:break-all}
.request-actions{display:flex;gap:6px;flex-wrap:wrap}.request-actions form{margin:0}
.request-meta{display:block;font-size:13px;color:#667167}.request-flag{display:block;font-size:13px;color:#9e3627;font-weight:600}
