@font-face{font-family:RunaSerif;src:url('/assets/serif.ttf')}@font-face{font-family:RunaSans;src:url('/assets/sans.ttf')}
*{box-sizing:border-box}body{margin:0;color:#eeece1;background:#171817;font-family:RunaSans,sans-serif;line-height:1.7}main{max-width:440px;min-height:100svh;margin:auto;padding:32px 26px 45px}.logo{width:94px;margin-bottom:36px}h1{font-family:RunaSerif,Georgia,serif;font-size:43px;font-weight:400;line-height:1.1;letter-spacing:-1.2px;margin:20px 0 27px}.eyebrow{color:#c3c4b5;font-size:10px;letter-spacing:2px;text-transform:uppercase}article{margin:28px -8px 32px;background:#191a18;overflow:hidden}.reading-art{display:block;width:100%;height:330px;object-fit:cover;object-position:center 28%;mask-image:linear-gradient(transparent,#000 8%,#000 87%,transparent)}.reading-art.threshold{object-position:center 46%}.reading-copy{padding:5px 17px 12px}.card-question{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid #c3c4b533;color:#cccfa1;font-size:11px;letter-spacing:1px;text-transform:uppercase}.card-question span{font-size:22px}p{font-size:14px;color:#aaaca3}.note,footer{font-size:11px;color:#a5a79f}label{display:block;font-size:12px;margin:20px 0;color:#d0d1c7}label span{color:#a5a79f}input{display:block;width:100%;background:#1b1d1b;border:1px solid #c3c4b53d;border-radius:3px;color:#eeece1;padding:14px;margin-top:8px;font:inherit;font-size:16px}button,.button{display:block;cursor:pointer;width:100%;background:#2553e1;color:#eeece1;font:inherit;font-size:14px;border:1px solid #ffffff20;border-radius:3px;padding:17px;text-align:center;text-decoration:none;margin:10px 0;transition:background .18s}button:hover,.button:hover{background:#3263ef}button.secondary{background:transparent;color:#c3c4b5;border-color:#c3c4b53d}footer{text-align:center;margin-top:45px}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #eeece1;outline-offset:4px}@media(max-width:350px){main{padding:25px 20px}h1{font-size:36px}.reading-art{height:280px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.reading-art.night-table{object-position:center 65%}

@font-face{font-family:RunaDisplay;src:url('/assets/display.ttf');font-style:normal;font-weight:400;font-display:swap}
h1{font-family:RunaDisplay,Georgia,serif;font-synthesis:none}
.result-heading{padding:23px 17px 0}
.result-heading h2{font:400 clamp(36px,10vw,58px)/.94 RunaDisplay,Georgia,serif;letter-spacing:-1.4px;margin:7px 0 0;font-synthesis:none;overflow-wrap:anywhere}
.reading-art.quiz-result{height:370px;object-fit:contain;object-position:center;background:#171817}
.result-card{background:#171817}
.result-card h1{font-size:36px;line-height:1.12;letter-spacing:-.7px}
@media(max-width:350px){.reading-art.quiz-result{height:330px}.result-card h1{font-size:32px}}

textarea{display:block;width:100%;resize:vertical;min-height:120px;background:#1b1d1b;border:1px solid #c3c4b53d;border-radius:3px;color:#eeece1;padding:14px;margin-top:8px;font:inherit;font-size:16px}textarea:focus-visible{outline:2px solid #eeece1;outline-offset:4px}

/* Find our night: celestial letterpress, with real radio controls and no script dependency. */
.gathering .night-headline{font-size:clamp(44px,13vw,62px);line-height:.95;letter-spacing:-1.6px;margin-bottom:0}
.invitation-thread{display:block;width:100%;height:92px;color:#cccfa1;margin:0;overflow:visible}
.gathering-art{display:block;width:100%;height:285px;object-fit:contain;margin:-16px 0 14px;mask-image:linear-gradient(transparent,#000 7%,#000 92%,transparent)}
.gathering .invitation-line{font:400 29px/1.15 RunaSerif,Georgia,serif;color:#eeece1;letter-spacing:-.5px;margin:22px 0}
.gathering h2{font:400 31px/1.12 RunaDisplay,Georgia,serif;letter-spacing:-.5px;margin:14px 0;color:#eeece1;overflow-wrap:anywhere}
.night-option{min-width:0;padding:25px 0 30px;border:0;border-top:1px solid #c3c4b533;margin:26px 0 0}
.night-option legend{display:flex;align-items:center;gap:17px;width:100%;padding:0;color:#eeece1;font-size:13px;line-height:1.5}
.night-number{font:400 42px/1 RunaDisplay,Georgia,serif;color:#cccfa1}
.night-option legend small{display:block;font-size:10px;color:#a5a79f;overflow-wrap:anywhere}
.gathering .sky-fact{font-size:11px;color:#cccfa1;margin:12px 0}
.availability-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:20px}
.availability-choices label{position:relative;margin:0;min-width:0}
.availability-choices input{appearance:none;position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:1px solid #c3c4b54d;border-radius:2px;background:transparent;cursor:pointer}
.availability-choices span{display:block;padding:14px 0;text-align:center;color:#eeece1;pointer-events:none;font-size:13px}
.availability-choices input:checked{background:#2553e13d;border-color:#cccfa1;box-shadow:inset 0 -2px #cccfa1}
.availability-choices input:checked+span{color:#eeece1}
.gathering .chosen-date{font-size:17px;color:#cccfa1}
.secondary-link{display:block;text-align:center;color:#c3c4b5;font-size:13px;padding:14px 0}
.saved-answer{border-left:1px solid #cccfa1;padding-left:14px;color:#cccfa1}
@media(prefers-reduced-motion:no-preference){.invitation-thread>path:first-child{stroke-dasharray:420;animation:thread-arrive 1.1s ease-out both}.saved-answer{animation:answer-arrive .4s ease-out both}@keyframes thread-arrive{from{stroke-dashoffset:420}to{stroke-dashoffset:0}}@keyframes answer-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}

.app-handoff{margin-top:32px;padding-top:20px;border-top:1px solid #c3c4b533}.app-handoff .secondary-link{text-align:left;padding:0;min-height:44px;display:flex;align-items:center}
