/* Public quest invitations. Private calendars keep their own layout. */
.quest-page{background:#faf8fc}.quest-landing{max-width:1160px;margin:0 auto 48px;color:#4e385d}
.quest-back{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-size:12px;color:#897790}.quest-back a{display:inline-flex;align-items:center;gap:10px;min-height:28px}.quest-back a:hover{color:#4f335f}
.quest-hero{display:grid;grid-template-columns:1fr 1fr;border:1px solid #eee5ed;border-radius:28px;background:#fffdfc;overflow:hidden;box-shadow:0 12px 50px #56346705}
.quest-art{position:relative;min-width:0;min-height:470px;isolation:isolate;background:#e7ddec}.quest-art>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:52% center;inset:0}.quest-art:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(155deg,#e9dfee,#f7e9db)}
.quest-art-label{position:absolute;top:22px;left:24px;display:flex;gap:12px;align-items:center;border:1px solid #ffffff9e;border-radius:30px;padding:9px 15px;color:#57465d;background:#fffcf5de;font-size:11px;letter-spacing:.03em}.quest-art-label>span{color:#b69cbe}
.quest-postcard{position:absolute;left:28px;bottom:30px;padding:20px 24px 23px;min-width:230px;transform:rotate(-5deg);background:#fffaf0f5;color:#604569;box-shadow:2px 12px 25px #3923441a;border-radius:3px}.quest-postcard>span:first-child{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8e7592}.quest-postcard p{font:36px/1.12 Georgia,'Times New Roman',serif;margin:13px 0 0;letter-spacing:-1.1px}.quest-postcard em{font-weight:400}.quest-postcard-heart{position:absolute;right:17px;top:12px;font:29px Georgia,serif;color:#af7893;transform:rotate(15deg)}.quest-art-symbol{position:absolute;inset:0;display:grid;place-items:center;font-size:160px;color:#a487b6}
.quest-invitation{min-width:0;padding:34px 38px 28px;align-self:center}.quest-kicker{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#80658b;line-height:1.6}.quest-kicker>span{padding:0 6px}.quest-invitation h1{font:italic 52px/.99 Georgia,'Times New Roman',serif;letter-spacing:-2px;color:#553b60;margin:17px 0 18px;text-wrap:balance}.quest-teaser{font-size:16px;line-height:1.6;color:#82718a;max-width:410px;margin:0 0 25px}
.quest-start-form fieldset{border:0;min-width:0;margin:0;padding:0}.quest-start-form legend{font-size:12px;color:#836f8d;margin-bottom:10px}.quest-cadences{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quest-cadences label{position:relative;cursor:pointer;min-width:0}.quest-cadences input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;margin:0}.quest-cadences label>span{display:flex;flex-direction:column;gap:5px;border:1px solid #e8dfea;border-radius:13px;padding:13px 15px;background:#fff;color:#85758d;transition:background .15s,border-color .15s}.quest-cadences strong{font-size:16px;font-weight:500;color:#695274}.quest-cadences small{font-size:11px;line-height:1.4}.quest-cadences input:checked+span{background:#f0e8f5;border-color:#aa8dbb}.quest-cadences input:checked+span strong{color:#624475}.quest-cadences input:focus-visible+span{outline:3px solid #9c7bac;outline-offset:3px}
.quest-timing{margin:9px 0 18px}.quest-timing summary{font:11px/1.5 var(--sans);color:#87758f;min-height:32px;padding:8px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none}.quest-timing summary::-webkit-details-marker,.quest-faq summary::-webkit-details-marker{display:none}.quest-timing summary>span{font-size:17px}.quest-timing[open] summary>span,.quest-faq details[open] summary>span{transform:rotate(45deg)}.quest-timing>div{padding:9px 0 8px}.quest-timing label{display:block;font-size:12px;margin-bottom:7px}.quest-timing select{width:100%;min-height:44px;min-width:0;border:1px solid #dfd2e4;border-radius:9px;background:#fff;padding:10px;font:14px var(--sans);color:#684d76}.quest-timing p{font-size:12px;line-height:1.6;margin-top:9px;color:#82708c}
.quest-actions{display:flex;gap:10px;flex-wrap:wrap}.quest-actions>.button,.quest-existing>.button{min-height:49px;font:14px/1.4 var(--sans);border-radius:13px;padding:13px 20px;justify-content:center}.quest-actions .quest-primary{flex:1}.quest-invitation .quest-primary{background:#775085;color:#fff;box-shadow:0 6px 16px #7650831a}.quest-invitation .quest-primary:hover{background:#634171}.quest-primary>span{font-size:19px;line-height:1}.quest-actions .quest-share{background:#f5eff7;color:#765785;border:1px solid #e6daec;gap:9px}.quest-share svg{width:17px;height:19px;flex-shrink:0}.quest-actions .quest-share:hover{background:#ece1f1}.quest-actions .quest-share:disabled{cursor:wait;opacity:.6}
.quest-start-note{font-size:11px;line-height:1.6;color:#796883;margin-top:12px}.quest-share-status{font-size:12px;color:#6f537d;line-height:1.5}.quest-share-status:not(:empty){margin-top:12px}.quest-share-fallback{margin-top:12px}.quest-share-fallback label{display:block;font-size:12px;margin-bottom:6px}.quest-share-fallback input{width:100%;min-width:0;padding:11px;border:1px solid #ded1e5;border-radius:8px;font:14px var(--sans);color:#695271;background:#faf7fc}.quest-existing{margin:26px 0 12px}.quest-existing p,.quest-preparing{font-size:14px;color:#8a7594;margin:0 0 14px}.quest-existing .button{width:100%}.quest-invitation [hidden]{display:none!important}.quest-invitation .errorlist{font-size:13px;line-height:1.5;margin:7px 0 12px;padding-left:18px;color:#9a4058}
.quest-details{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:45px;align-items:center;padding:35px 0 23px}.quest-how{display:grid;grid-template-columns:190px minmax(0,1fr);gap:30px}.quest-how>h2{font:27px/1.15 Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.7px;margin:1px 0;color:#644d71}.quest-how>h2 em{color:#9f7aab}.quest-how ol{list-style:none;padding:0;margin:0;display:grid;gap:18px}.quest-how li{display:flex;align-items:flex-start;gap:14px}.quest-how li>span{font-size:10px;color:#a38aad;border:1px solid #e7dbea;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;flex-shrink:0}.quest-how h3{font-size:13px;font-weight:500;line-height:1.5;letter-spacing:0;margin:0 0 4px;color:#665071}.quest-how li p{font-size:12px;line-height:1.6;color:#796883;max-width:380px}
.quest-keepsake{position:relative;display:flex;align-items:center;gap:16px;min-width:0;background:linear-gradient(130deg,#efe7f5,#f5ece7);border:1px solid #e9ddef;border-radius:20px;padding:24px 23px}.quest-badge-symbol{display:grid;place-items:center;flex-shrink:0;border:1px solid #cab2d5;border-radius:50%;width:58px;height:58px;box-shadow:0 0 0 5px #ffffff70;background:#e9dbf0;color:#93709f;font-size:32px}.quest-keepsake .quest-kicker{font-size:8px;letter-spacing:.08em}.quest-keepsake h2{font:italic 23px/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.6px;margin:9px 0}.quest-keepsake p:not(.quest-kicker){font-size:11px;color:#7b6485;line-height:1.6}.quest-badge-spark{position:absolute;top:10px;right:13px;font-size:18px;color:#b49bbf}
.quest-own-pace{font-size:11px;line-height:1.6;color:#796883;padding:18px 0 26px;border-bottom:1px solid #ebe4ee;margin:0}.quest-faq{display:grid;grid-template-columns:270px minmax(0,1fr);gap:40px;padding:25px 0 12px}.quest-faq>h2{font-size:18px;letter-spacing:-.4px;font-weight:500;line-height:1.4;color:#725a7e;margin:9px 0}.quest-faq details{border-bottom:1px solid #ebe4ee}.quest-faq summary{font:13px/1.5 var(--sans);padding:15px 0;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:22px;color:#796184;list-style:none}.quest-faq summary>span{font-size:20px;color:#ae96b8}.quest-faq details p{font-size:13px;line-height:1.7;color:#786284;padding:0 28px 17px 0}.quest-more{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;font-size:12px;color:#796883}.quest-more>span{color:#765584}.quest-landing a:focus-visible,.quest-landing button:focus-visible,.quest-landing summary:focus-visible{outline:3px solid #9c7bac;outline-offset:4px}
@media(min-width:1100px){.quest-keepsake{flex-direction:column;text-align:center;padding:26px}.quest-keepsake h2{font-size:27px}.quest-keepsake .quest-kicker{margin-top:2px}.quest-keepsake p:not(.quest-kicker){max-width:215px}.quest-details{grid-template-columns:minmax(0,1fr) 255px;gap:55px}}
@media(max-width:1000px){.quest-invitation{padding:28px}.quest-invitation h1{font-size:44px}.quest-art{min-height:480px}.quest-postcard{left:23px;bottom:27px;min-width:205px;padding:20px}.quest-postcard p{font-size:32px}.quest-details{grid-template-columns:minmax(0,1fr) 270px;gap:28px}.quest-how{display:block}.quest-how>h2{font-size:24px;margin-bottom:20px}.quest-how>h2 br{display:none}.quest-keepsake{align-items:flex-start;flex-direction:column}.quest-faq{grid-template-columns:220px minmax(0,1fr);gap:25px}}
@media(max-width:700px){.quest-page .header-search{display:none}.quest-landing{margin-bottom:25px}.quest-back{padding:12px 0;font-size:11px}.quest-back>span{font-size:10px}.quest-hero{grid-template-columns:1fr;border-radius:22px}.quest-art{min-height:0;height:190px}.quest-art>img{object-position:center 46%}.quest-art-label{top:14px;left:15px;padding:7px 10px;font-size:9px}.quest-postcard{left:auto;right:20px;bottom:18px;min-width:140px;padding:13px 15px 15px;transform:rotate(5deg)}.quest-postcard p{font-size:25px;margin-top:8px;letter-spacing:-.6px}.quest-postcard>span:first-child{font-size:7px}.quest-postcard-heart{font-size:21px;right:9px;top:7px}.quest-invitation{padding:24px}.quest-invitation h1{font-size:39px;line-height:1.02;letter-spacing:-1.5px;margin:13px 0 14px;text-wrap:initial}.quest-kicker{font-size:9px}.quest-teaser{font-size:14px;line-height:1.6;margin-bottom:20px;max-width:none}.quest-cadences label>span{padding:12px 13px}.quest-cadences strong{font-size:15px}.quest-timing{margin-bottom:14px}.quest-actions>.button{font-size:13px;padding:12px 14px;min-height:48px}.quest-start-note{font-size:10px}.quest-details{display:block;padding:27px 4px 22px}.quest-how{display:block}.quest-how>h2{font-size:27px;margin-bottom:23px}.quest-how li p{font-size:12px;max-width:none}.quest-how ol{gap:19px}.quest-keepsake{margin-top:25px;flex-direction:row;align-items:center;padding:22px;gap:20px}.quest-keepsake h2{font-size:25px}.quest-keepsake .quest-kicker{font-size:8px}.quest-own-pace{padding:0 4px 23px}.quest-faq{display:block;padding:21px 4px 8px}.quest-faq>h2{font-size:19px;margin:0 0 9px}.quest-more{padding-inline:4px;font-size:11px}.quest-share-fallback input,.quest-timing select{font-size:16px}}
@media(max-width:360px){.quest-invitation{padding:20px}.quest-invitation h1{font-size:34px}.quest-back>span{display:none}.quest-actions{gap:8px}.quest-actions>.button{padding-inline:11px}.quest-art{height:170px}}
@media(prefers-reduced-motion:reduce){.quest-cadences label>span{transition:none}}
@media(max-width:700px){.quest-page .header-favorites{display:none}.quest-page .site-header{display:flex;flex-wrap:nowrap;min-height:64px;padding-block:12px}.quest-page .header-pair{margin-left:auto}.quest-page .age{flex-shrink:0}}
@media(max-width:700px) and (max-height:720px){.quest-art{height:125px}.quest-invitation{padding:20px}.quest-invitation h1{font-size:34px}.quest-teaser{margin-bottom:15px}.quest-invitation .quest-timing{margin-bottom:10px}}

@media(max-width:700px){.quest-art-label{display:none}}
@media(max-width:360px){.quest-actions .quest-primary>span{display:none}.quest-actions .quest-primary{white-space:nowrap}}
@media(max-width:700px) and (max-height:720px){.quest-postcard{padding:10px 14px 12px;bottom:12px}.quest-postcard p{font-size:22px;margin-top:6px}.quest-postcard-heart{font-size:18px}}
