:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f4ee;--ink:#17130d;--muted:#6d6558;--line:#17130d29;--paper:#fffdf8;--accent:#d9482e;--accent-ink:#fff8ef;--green:#217a57;--blue:#2f68a8;--gray:#8a8174;--shadow:0 18px 50px #221b111f;--content:1120px;--form:920px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);background-image:linear-gradient(90deg,#17130d0a 1px,#0000 1px),linear-gradient(#17130d0a 1px,#0000 1px);background-size:48px 48px;background-attachment:fixed;margin:0;line-height:1.5}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}:focus-visible{outline-offset:3px;outline:3px solid #d9482e73}.skip-link{z-index:10;background:var(--ink);color:#fff;padding:10px 14px;position:absolute;top:12px;left:16px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:5;min-height:72px;padding-block:14px;padding-inline:max(16px, calc((100vw - var(--content)) / 2));border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f4eee6;justify-content:space-between;align-items:center;gap:24px;display:flex;position:sticky;top:0}.brand,.site-nav,.today-actions,.calendar-toolbar,.calendar-legend{align-items:center;display:flex}.brand{gap:10px;min-width:0;font-weight:800;text-decoration:none}.brand-mark{color:#000;flex:none;width:36px;height:36px}.site-nav{color:var(--muted);gap:18px;font-size:14px}.site-nav a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.site-nav a:hover{color:var(--ink)}.site-nav .social-link{border:1px solid var(--rule,currentColor);min-height:32px;color:var(--ink);border-radius:999px;padding:6px 8px}.site-nav .social-link:hover{background:var(--ink);color:var(--paper,#fff)}.today-shell{place-items:center;gap:24px;min-height:calc(100svh - 72px);padding:40px clamp(16px,5vw,56px) 32px;display:grid}.today-panel{text-align:center;width:min(760px,100%)}.eyebrow{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.sponsor-lockup{aspect-ratio:2.8;border:1px solid var(--line);background:var(--paper);width:min(360px,72vw);box-shadow:var(--shadow);place-items:center;margin:0 auto 24px;display:grid}.sponsor-lockup span{letter-spacing:0;font-size:clamp(40px,10vw,88px);font-weight:900}.sponsor-lockup img,.sponsor-logo-image{object-fit:contain;width:100%;height:100%;padding:18px;display:block}.date-line,.countdown{font-variant-numeric:tabular-nums}.date-line{color:var(--muted);text-transform:uppercase;margin:0 0 12px;font-weight:700}h1,h2,h3,p{text-wrap:balance}h1{letter-spacing:0;margin:0;font-size:clamp(44px,10vw,112px);line-height:.92}.sponsor-quote{max-width:720px;margin:28px auto}.sponsor-quote p{margin:0 0 8px;font-size:clamp(22px,4vw,38px);line-height:1.15}.sponsor-quote cite{color:var(--muted);font-style:normal;font-weight:800}.primary-action,.today-actions a,.icon-button{border:1px solid var(--line);cursor:pointer;min-height:44px;text-decoration:none}.primary-action{background:var(--accent);color:var(--accent-ink);border-color:#0000;justify-content:center;align-items:center;padding:13px 18px;font-weight:800;display:inline-flex}.primary-action:hover{background:#bd3825}.primary-action:disabled{cursor:wait;opacity:.7}.countdown{color:var(--muted);margin:18px 0 0}.countdown span:first-child{color:var(--ink);font-weight:900}.today-actions{flex-wrap:wrap;justify-content:center;gap:12px}.today-actions a{background:#fffdf8c7;justify-content:center;align-items:center;min-width:180px;padding:11px 16px;font-weight:800;display:inline-flex}.section{border-top:1px solid var(--line);padding:72px clamp(16px,5vw,56px)}.page-section{align-content:start;justify-items:center;min-height:calc(100svh - 129px);display:grid}.section-heading{text-align:center;width:min(760px,100%);margin:0 auto 32px}.section-heading h1,.section-heading h2{letter-spacing:0;margin:0;font-size:clamp(32px,6vw,64px);line-height:1}.section-heading p:last-child{max-width:620px;color:var(--muted);margin-left:auto;margin-right:auto;font-size:18px}.calendar-toolbar{width:min(100%, var(--content));justify-content:space-between;gap:16px;margin-bottom:16px}.calendar-toolbar h2,.calendar-toolbar h3{margin:0;font-size:24px}.icon-button{background:var(--paper);width:44px;color:var(--ink);font-size:28px;line-height:1}.calendar-legend{width:min(100%, var(--content));color:var(--muted);flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:16px;font-size:14px}.calendar-legend span{align-items:center;gap:7px;display:inline-flex}.status-dot{background:var(--gray);border-radius:50%;width:10px;height:10px}.status-available{background:var(--green)}.status-unavailable{background:var(--line)}.status-booked{background:var(--blue)}.status-today{background:var(--accent)}.status-lived{background:var(--gray)}.calendar-grid{width:min(100%, var(--content));background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid}.calendar-cell{background:var(--paper);text-align:left;min-height:112px;color:var(--ink);border:0;padding:10px}.calendar-cell.is-empty{background:#fffdf873}.calendar-cell:not(.is-empty){cursor:pointer}.calendar-cell:not(.is-empty):hover{background:#fff7e8}.calendar-cell:disabled{cursor:not-allowed;opacity:.58}.calendar-cell:disabled:hover{background:var(--paper)}.date-available{border-top:4px solid var(--green)}.date-unavailable{border-top:4px solid var(--line);color:var(--muted)}.date-booked{border-top:4px solid var(--blue)}.date-today{border-top:4px solid var(--accent)}.date-lived{border-top:4px solid var(--gray)}.weekday{background:var(--ink);min-height:38px;color:var(--bg);text-transform:uppercase;place-items:center;font-size:12px;font-weight:800;display:grid}.cell-top{font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-weight:900;display:flex}.cell-status{color:var(--muted);text-transform:uppercase;font-size:11px}.cell-sponsor{color:var(--muted);overflow-wrap:anywhere;margin-top:20px;font-size:13px;display:block}.booking-form{width:min(100%, var(--form));background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 auto;padding:clamp(20px,3vw,32px);display:grid}.booking-form label,.booking-form .form-field{align-content:start;align-self:start;gap:7px;min-width:0;font-weight:800;display:grid}.booking-form .field-wide,.booking-form .logo-field,.booking-form .primary-action,.form-status{grid-column:1/-1}.booking-form .primary-action{width:100%}input,textarea{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fffaf0;border-radius:0;padding:11px 14px;font-size:16px}textarea{resize:vertical;min-height:144px}.date-field{position:relative}.date-trigger,.file-picker{border:1px solid var(--line);width:100%;min-height:56px;color:var(--ink);cursor:pointer;background:#fffaf0;border-radius:0;align-items:center;padding:11px 14px;display:grid}.date-trigger{text-align:left;grid-template-columns:minmax(0,1fr) auto;gap:16px}.date-trigger strong,.file-picker strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.date-trigger span,.file-picker span{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:900}.date-popover{z-index:4;border:1px solid var(--line);background:var(--paper);width:min(360px,100%);box-shadow:var(--shadow);padding:14px;position:absolute;top:calc(100% - 4px);left:0}.date-popover-header{text-align:center;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;margin-bottom:12px;display:grid}.date-popover-header button,.date-day{min-width:40px;min-height:40px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;font-weight:900}.date-popover-header button:hover,.date-day:hover{border-color:var(--line);background:#fffaf0}.date-day:disabled{color:var(--muted);cursor:not-allowed;opacity:.45}.date-day:disabled:hover{background:0 0;border-color:#0000}.date-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.date-weekday{min-height:28px;color:var(--muted);text-transform:uppercase;place-items:center;font-size:11px;font-weight:900;display:grid}.date-day,.date-day-placeholder{place-items:center;display:grid}.date-day.is-selected{background:var(--accent);color:var(--accent-ink)}.file-picker{grid-template-columns:auto minmax(0,1fr);gap:14px}.native-file-input{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.file-picker:focus-within{outline-offset:3px;outline:3px solid #d9482e73}input[type=file]:not(.native-file-input){align-items:center;display:flex}input[type=file]:not(.native-file-input)::file-selector-button{border:1px solid var(--line);background:var(--paper);min-height:34px;color:var(--ink);cursor:pointer;margin-right:12px;font-weight:800}small,.field-error{color:var(--muted);font-weight:500}.field-error:not(:empty){color:#a32116}.form-status{min-height:24px;color:var(--green);margin:0;font-weight:800}.share-kit{width:min(100%, var(--content));gap:18px;margin-top:24px;display:grid}.share-kit>div:first-child{text-align:center}.share-kit h2,.share-kit h3{margin:0;font-size:clamp(24px,4vw,40px);line-height:1.05}.share-previews{grid-template-columns:1fr .72fr 1.2fr;align-items:stretch;gap:16px;display:grid}.share-card,.certificate{border:1px solid var(--line);background:var(--paper);overflow-wrap:anywhere;min-width:0}.share-card{color:#fff;align-content:space-between;min-height:280px;padding:18px;display:grid}.share-square{aspect-ratio:1;background:linear-gradient(135deg,#17130d2e,#17130d00),#217a57}.share-story{aspect-ratio:9/16;background:linear-gradient(160deg,#fffdf829,#fffdf800),#2f68a8}.share-card span,.certificate span{letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:900}.share-card strong{font-size:clamp(34px,6vw,62px);line-height:.95;display:block}.share-card p{margin:0;font-size:18px}.certificate{background:linear-gradient(90deg, transparent 22px, #ad741f42 22px, #ad741f42 24px, transparent 24px), var(--paper);align-content:space-between;min-height:280px;padding:22px;display:grid}.certificate strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5vw,54px);line-height:1;display:block}.certificate p{color:var(--muted);margin:0;font-size:18px}.archive-list{width:min(100%, var(--content));grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.archive-card{background:var(--paper);border:1px solid var(--line);align-content:space-between;min-height:190px;padding:18px;display:grid}.archive-card time{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:800}.archive-card h2,.archive-card h3{overflow-wrap:anywhere;margin:18px 0 8px;font-size:28px;line-height:1}.archive-card p{color:var(--muted);margin:0}.archive-empty{background:var(--paper);border:1px solid var(--line);min-height:160px;color:var(--muted);grid-column:1/-1;place-items:center;padding:24px;font-weight:800;display:grid}.site-footer{padding-block:28px;padding-inline:max(16px, calc((100vw - var(--content)) / 2));color:var(--muted);border-top:1px solid var(--line)}.secondary-action,.admin-actions button{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;padding:10px 14px;font-weight:800;text-decoration:none;display:inline-flex}.secondary-action:hover,.admin-actions button:hover:not(:disabled){background:#fff7e8}.secondary-action:disabled,.admin-actions button:disabled{cursor:not-allowed;opacity:.55}.admin-page{width:min(100%,1280px);min-height:100svh;margin:0 auto;padding:32px clamp(16px,5vw,56px) 56px}.admin-login{align-content:center;max-width:520px;min-height:calc(100svh - 88px);margin:0 auto;display:grid}.admin-login h1,.admin-header h1{margin:0;font-size:clamp(44px,8vw,88px)}.admin-login-form{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);gap:16px;margin-top:28px;padding:24px;display:grid}.admin-login-form label{gap:7px;font-weight:800;display:grid}.admin-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.admin-table-shell{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);overflow-x:auto}.admin-empty{color:var(--muted);padding:32px;font-weight:800}.admin-table{border-collapse:collapse;width:100%;min-width:980px}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:14px}.admin-table th{background:var(--ink);color:var(--bg);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.admin-table td{overflow-wrap:anywhere}.admin-table td:nth-child(3){max-width:360px}.admin-table strong,.admin-table a,.admin-email{display:block}.admin-table a,.admin-email{color:var(--muted);margin-top:4px;font-size:13px}.admin-logo-link{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px;margin:8px 0;text-decoration:none;display:grid}.admin-logo-link img{border:1px solid var(--line);object-fit:contain;background:#fffaf0;width:44px;height:44px}.admin-logo-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-status{border:1px solid var(--line);text-transform:uppercase;align-items:center;min-height:28px;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.admin-status-pending_moderation,.admin-status-checkout_pending,.admin-status-paid_pending_moderation{background:#fff4d8}.success-section{align-content:center;display:grid}.checkout-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.upcoming-actions{flex-direction:column;align-items:center;gap:12px;margin-top:24px;display:flex}.upcoming-actions .primary-action,.upcoming-actions .secondary-action{justify-content:center;width:100%;max-width:360px}.mock-checkout-form{flex-wrap:wrap;align-items:center;gap:12px;max-width:720px;margin:0 auto;display:flex}.mock-checkout-form .form-status{flex-basis:100%}.admin-status-approved{background:#e4f4ec}.admin-status-rejected{background:#f8dfd9}.admin-status-rejected_refund_needed{background:#ffe4c2}.admin-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-actions input{min-width:220px;min-height:44px}.rules-grid{width:min(100%, var(--content));grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.rules-grid article{background:var(--paper);border:1px solid var(--line);min-height:180px;padding:20px}.rules-grid h2{margin:0 0 12px;font-size:26px;line-height:1}.rules-grid p{color:var(--muted);margin:0}.archive-page{min-height:100svh;padding:24px clamp(16px,5vw,56px) 56px}.archive-brand{width:fit-content;margin-bottom:48px}.certificate-page{text-align:center;justify-items:center;gap:22px;max-width:840px;margin:0 auto;display:grid}.certificate-page>p:not(.eyebrow,.date-line){max-width:680px;color:var(--muted);margin:0;font-size:clamp(22px,4vw,36px);line-height:1.2}.archive-certificate{text-align:left;width:min(640px,100%)}@media (max-width:760px){.site-header{flex-direction:column;align-items:flex-start;gap:8px}.site-nav{justify-content:space-between;gap:8px;width:100%}.today-shell{min-height:auto}.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weekday{display:none}.calendar-cell{min-height:104px}.booking-form,.archive-list,.share-previews,.rules-grid{grid-template-columns:1fr}.date-popover{width:100%;box-shadow:none;margin-top:4px;position:static}.date-trigger,.file-picker{grid-template-columns:1fr;gap:6px}.share-story{aspect-ratio:4/5}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
