@font-face{font-family:Lora;font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/lora-regular.ttf') format('truetype')}
@font-face{font-family:Lora;font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/lora-medium.ttf') format('truetype')}
:root{--forest:#234c3c;--ink:#283d32;--muted:#60685b;--paper:#faf8f1;--line:#dcded0;--honey:#8b6424;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--forest);text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--honey);outline-offset:5px}input:focus{outline:2px solid var(--forest);outline-offset:2px}input{caret-color:var(--forest)}::selection{background:#e4d8b5;color:var(--forest)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-100px;left:20px;z-index:30;background:white;padding:14px}.skip:focus{top:10px}
.raffle-shell{width:min(1080px,calc(100% - 80px));margin:0 auto}.masthead{display:flex;justify-content:space-between;align-items:center;padding:28px 0 26px}.brand{font-family:Lora,Georgia,serif;font-size:32px;font-weight:500;line-height:1;text-decoration:none;letter-spacing:-.04em}.brand span{display:block;margin-top:9px;font:11px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:.015em;color:var(--muted)}.entry-link{display:inline-flex;align-items:center;gap:14px;font-size:13px;font-weight:500;text-decoration:none;padding:12px 0;border-bottom:1px solid var(--forest)}.entry-link:hover{color:var(--honey)}
.prize-artwork{aspect-ratio:1536 / 728;overflow:hidden;background:#e8e4ca}.prize-artwork img{display:block;width:100%;height:auto}.raffle-details{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:28px;margin:0;padding:23px 0;border-bottom:1px solid var(--forest)}.raffle-details div:last-child{text-align:right}.raffle-details dt{font-size:11px;color:var(--muted);margin-bottom:7px}.raffle-details dt span{color:var(--muted)}.raffle-details dd{font-size:16px;font-weight:500;margin:0;line-height:1.45}.draw-detail{text-align:center}
main{scroll-margin-top:28px}h1,h2{font-family:Lora,Georgia,serif;font-weight:400;letter-spacing:-.035em;text-wrap:balance}.entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:54px}.entry-heading h2{font-size:clamp(28px,3.2vw,38px);margin:0;line-height:1.25}.availability{font-size:12px;margin:0;color:var(--forest);font-variant-numeric:tabular-nums;white-space:nowrap}.entry-intro{margin:14px 0 30px;font-size:14px;line-height:1.6;color:var(--muted)}.notice{font-size:13px;color:#6b5527;background:#f1ead7;padding:14px 18px;line-height:1.65;margin:0 0 28px}.entry-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:50px;align-items:start}.numbers-section{min-width:0}.number-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding-top:2px}.number-toolbar p{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}.text-button{border:0;background:transparent;color:var(--forest);text-decoration:underline;text-underline-offset:4px;padding:6px 0;min-height:32px;font-size:12px}.text-button:hover{color:var(--honey)}.text-button:disabled{color:#767c70;text-decoration:none}.legend{display:flex;flex-wrap:wrap;gap:19px;padding:20px 0 23px;font-size:11px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.legend i{display:block;width:11px;height:11px;background:#fffdf7;border:1px solid #a4ad99;border-radius:1px;position:relative}.legend .key-selected{background:var(--forest);border-color:var(--forest)}.legend .key-held{background:#f0e2bc;border-color:#b4995f}.legend .key-sold{background:#e9eadf;border-color:#a4ad99}.key-sold::after{content:'';position:absolute;width:11px;top:4px;left:-1px;border-top:1px solid #66725d;transform:rotate(-45deg)}
.tickets{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;padding:2px;margin:-2px;max-height:644px;overflow:auto;scrollbar-color:#a2ae98 var(--paper);scrollbar-width:thin}.ticket{font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;min-height:46px;padding:0;border:1px solid #c4cbb9;border-radius:3px;background:#fffef9;color:var(--forest);transition:background-color .15s ease-out,border-color .15s ease-out}.ticket:hover:not(:disabled){border-color:var(--forest);background:#edf1e7}.ticket.selected,.ticket.selected:hover{background:var(--forest);border-color:var(--forest);color:#fffdf5}.ticket.sold{color:#737969;background:#eaece3;border-color:#e0e3d6;text-decoration:line-through;text-decoration-thickness:1.5px}.ticket.held{color:#77591f;border-color:#dbcba4;background:#f5ecd5}.number-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;font-size:11px;line-height:1.6;color:var(--muted)}
.entry-form{border-top:2px solid var(--forest);padding-top:22px;scroll-margin-top:30px;position:sticky;top:28px}.entry-form h2{margin:0;font-size:26px}.form-intro{color:var(--muted);font-size:13px;line-height:1.65;margin:10px 0 24px}label{display:block;font-size:12px;font-weight:500;margin:18px 0 8px}label span{color:var(--muted);font-weight:400}input{width:100%;min-height:46px;padding:12px 13px;font-size:14px;background:#fffef9;border:1px solid #c4cbb9;border-radius:3px;color:var(--ink)}input::placeholder{color:#767b70;opacity:1}.order-summary{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.summary-label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:11px;color:var(--muted)}.selected-numbers{font-size:14px;line-height:1.9;font-variant-numeric:tabular-nums;margin:10px 0 20px;min-height:26px;overflow-wrap:anywhere}.total-line{display:flex;justify-content:space-between;align-items:baseline;font-size:14px}.total-line strong{font-size:24px;font-weight:500;font-variant-numeric:tabular-nums}.pay-button{display:inline-flex;justify-content:center;align-items:center;width:100%;min-height:49px;margin-top:20px;padding:13px 18px;font-size:14px;font-weight:500;color:#fffdf5;background:var(--forest);border:1px solid var(--forest);border-radius:3px;text-decoration:none;transition:background .15s ease-out}.pay-button:hover:not(:disabled){background:#153c2e}.pay-button:disabled{background:#e4e7dc;border-color:#d4dbcc;color:#606b56}.secure-payment{display:flex;align-items:center;justify-content:center;gap:6px;margin:15px 0;font-size:10px;color:var(--muted)}.privacy-note{color:var(--muted);font-size:11px;line-height:1.7;margin:0}.form-message{color:var(--forest);font-size:12px;line-height:1.65;margin:14px 0 0}.form-message:empty{display:none}.error{color:#963f2c}
.entry-notes{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin:60px 0 0;padding:30px 0 36px;border-top:1px solid var(--line)}.entry-notes h2{font-size:22px;margin:0}.entry-notes p,.entry-notes details{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 12px;max-width:70ch}.entry-notes strong{color:var(--ink);font-weight:500}.entry-notes summary{color:var(--forest);cursor:pointer;padding:6px 0;text-underline-offset:4px}.entry-notes summary:hover{text-decoration:underline}.entry-notes ul{padding-left:18px;margin:12px 0 0}.raffle-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0 30px;border-top:1px solid var(--forest);font-size:11px;color:var(--muted)}.raffle-footer a{color:var(--muted)}.mobile-selection{display:none}.no-script{max-width:70ch;padding:20px;margin:auto}
/* Customer confirmation follows the same entry-sheet design. */
.receipt-shell{width:min(540px,calc(100% - 40px));margin:0 auto;padding-top:50px}.receipt-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:32px}.receipt-header>a:last-child{font-size:12px}.receipt{border-block:1px solid var(--forest);padding:36px 0}.receipt h1{margin:0 0 18px;font-size:34px;line-height:1.25}.receipt>p{color:var(--muted);font-size:14px;line-height:1.8}.receipt .order-summary{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:24px}.receipt .selected-numbers{font-size:20px}.receipt-reference{font-size:11px!important;overflow-wrap:anywhere}.receipt .text-button{display:block;margin:16px auto 0}.receipt-note{font-size:12px;line-height:1.75;color:var(--muted);margin:22px 0}
@media(max-width:1000px){.raffle-shell{width:calc(100% - 56px)}.entry-layout{gap:32px;grid-template-columns:minmax(0,1fr) 280px}.tickets{grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.availability{white-space:normal;text-align:right}}
@media(max-width:760px){.raffle-shell{width:calc(100% - 40px)}.masthead{padding:24px 0}.brand{font-size:29px}.brand span{font-size:10px}.entry-link{font-size:12px;gap:8px}.raffle-details{gap:15px;grid-template-columns:1fr 1fr;padding:20px 0}.raffle-details div:last-child{grid-column:2;grid-row:1;text-align:right}.raffle-details .draw-detail{grid-column:1/-1;grid-row:2;display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid var(--line);text-align:left}.raffle-details dd{font-size:15px}.draw-detail dd{font-size:13px;text-align:right}.draw-detail dt{margin-bottom:0;flex-shrink:0}.entry-heading{margin-top:36px;display:block}.entry-heading h2{font-size:32px}.availability{text-align:left;margin-top:15px;font-size:12px}.entry-intro{font-size:13px;margin:10px 0 24px}.entry-layout{grid-template-columns:1fr;gap:40px}.tickets{grid-template-columns:repeat(10,minmax(0,1fr));max-height:550px}.ticket{min-height:46px}.entry-form{position:static;padding-top:24px}.entry-form h2{font-size:28px}.entry-form input{font-size:16px}.entry-notes{grid-template-columns:1fr;gap:20px;margin-top:40px;padding-bottom:28px}.entry-notes h2{font-size:23px}.notice{padding:14px;font-size:12px}.secure-payment{font-size:11px}.mobile-selection{display:flex;position:fixed;z-index:10;bottom:0;left:0;right:0;padding:14px 20px max(14px,env(safe-area-inset-bottom));background:var(--forest);color:#fffdf5;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 -4px 20px #142f2112}.mobile-selection>div{display:flex;flex-direction:column;gap:5px}.mobile-selection span{font-size:11px;color:#dae3d3}.mobile-selection strong{font-size:19px;font-weight:500}.mobile-selection a{display:flex;align-items:center;gap:14px;padding:12px 0 12px 14px;font-size:14px;font-weight:500;text-decoration:none;color:#fffdf5}body.has-mobile-selection{padding-bottom:85px}.receipt-shell{padding-top:28px}.receipt h1{font-size:29px}}
@media(max-width:540px){.tickets{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.legend{gap:17px;font-size:10px}.ticket{min-height:46px;font-size:14px}.number-toolbar p{font-size:12px}.entry-heading h2{font-size:29px}.raffle-footer{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
