/* Homepage layout only; shared organizer and campaign styles stay in styles.css. */
.invite-strip{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}.invite-strip h2{font-size:29px;margin:8px 0}.invite-strip p:not(.eyebrow){font-size:14px;max-width:660px}.invite-strip .eyebrow{font-size:10px}.home-page .hero .qr-rivalry{margin:20px 0;padding:0}.home-page .hero .comic-panel{grid-template-columns:68px minmax(0,1fr);padding:16px;gap:13px}.home-page .hero .rival-cameo img{width:64px;height:82px;border-width:4px}.home-page .hero .cameo-tag{display:none}.home-page .hero .rival-cameo>.handwritten{font-size:23px}.home-page .hero .rival-bubble{padding:15px 14px}.home-page .hero .rival-bubble h2{font-size:30px}.home-page .hero .rival-bubble .eyebrow{font-size:9px;margin-bottom:9px;line-height:1.5}.home-page .hero .rival-line{font-size:14px}.home-page .hero .rival-context{font-size:10px}.home-page .hero .rival-invitation{min-height:44px;font-size:12px}.home-page .score-tabs button,.home-page .hero-actions .text-button,.home-page .text-button{min-height:44px}.home-page #next-actions>a{min-height:44px;display:flex;align-items:center}.no-script-help{padding-top:55px;padding-bottom:55px}.no-script-help p{margin:22px 0}.no-script-help h1{width:auto}
.home-page .hero{grid-template-columns:1.35fr .85fr;gap:30px;padding-top:55px;padding-bottom:55px;overflow:visible}
.home-page h1{font-size:clamp(42px,4.7vw,60px);letter-spacing:-2.4px;line-height:1.04}
.home-page h1 em{letter-spacing:-2px;margin-top:8px}.home-page .hero .eyebrow{font-size:11px;margin-bottom:20px}
.home-page .welcome{max-width:600px;font-size:18px;line-height:1.5;font-weight:700;margin-top:23px}
.home-page .hero-description{max-width:570px;font-size:16px;margin-top:13px;line-height:1.65}
.hero-actions{display:flex;align-items:center;gap:24px;margin-top:24px}.hero-actions .button{font-size:15px}.hero-footnote{font-size:12px;color:var(--muted);margin-top:13px}
.home-page .portrait-collage{grid-row:1;align-self:center;min-height:360px}.home-page .portrait-image{height:245px}.home-page .burst{top:6px;left:7px}.home-page .collage-star{right:0;top:15px}
.how-it-works{padding-top:32px;padding-bottom:40px;border-top:1px solid var(--line)}.how-it-works h2{font-size:36px;margin-top:10px}.how-steps{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;gap:40px;margin:30px 0 0}.how-steps li{position:relative;padding-left:39px}.how-steps li>span{position:absolute;left:0;top:0;font:28px var(--hand);color:#955136}.how-steps h3{font-size:22px}.how-steps p{font-size:14px;margin-top:10px;line-height:1.6}
.home-page .game-intro{grid-template-columns:1.2fr 1fr;padding-top:32px;padding-bottom:35px;border-top:1px solid var(--line)}.home-page .allegiance{grid-column:1;grid-row:1}.home-page .scoreboard{grid-column:2;grid-row:1}.home-page .arrival-note:not([hidden]){grid-row:2;grid-column:1/-1}.choice-intro{font-size:15px;margin:12px 0}.explore-first{font-size:12px;line-height:1.7;margin:0 0 20px}.home-page .team-heading{font-size:30px}.home-page .section-line h2{font-size:32px}
.next-move{display:grid;grid-template-columns:1fr 1fr;gap:35px;background:var(--ink);color:var(--paper);padding-top:27px;padding-bottom:27px;margin-top:10px;border-radius:4px}.next-move h2{font-size:32px;margin-top:7px}.next-move p:not(.eyebrow){font-size:14px;margin-top:12px}.next-move .eyebrow{color:#f2bd88;font-size:10px}.next-move .button{background:var(--paper);color:var(--ink);border-color:var(--paper)}#next-actions{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;font-size:14px}.next-link{min-height:30px;display:flex;align-items:center}
.congratulations-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:32px;padding-top:30px;padding-bottom:30px;border-bottom:1px solid var(--line);background:#f6e5ca}.congratulations-feature h2{font-size:29px;margin-top:16px}.congratulations-feature p+p{margin-top:10px}.congratulations-feature .button{margin-top:18px;margin-right:12px;font-size:13px}.congratulations-feature .tiny{color:#414a55}.congratulations-feature>div>p:first-child{font-size:15px;font-weight:700}
.home-page .daily-section{padding-top:45px}.home-page .daily-heading h2{font-size:37px}.home-page .play-section{padding-top:35px;padding-bottom:45px}.home-page .play-heading h2{font-size:37px}.home-page #question-content>.button{margin-top:22px}.home-page .daily-card h3{margin-top:12px}.home-page .daily-card>a.button{margin-top:20px}.home-page .daily-reset{max-width:100%}
.team-spaces{padding-top:38px;padding-bottom:45px;border-top:1px solid var(--line)}.team-spaces-intro{display:grid;grid-template-columns:1fr 1fr;gap:10px 60px;margin-bottom:36px}.team-spaces-intro>.eyebrow{grid-column:1/-1}.team-spaces-intro>p:last-child{align-self:end;font-size:16px;max-width:500px}.team-spaces-intro h2{font-size:42px}.team-spaces-intro em{color:#9b4c36}
.team-space{display:grid;grid-template-columns:.7fr 1.3fr;gap:52px;padding:42px 46px;margin-top:25px;position:relative;background:#e7eff5;border-radius:4px 70px 4px 4px;border-top:5px solid #568cbd}.team-space .team-portrait{align-self:start;transform:rotate(-4deg);padding-top:12px}.team-portrait img{width:100%;height:280px;object-fit:cover;object-position:50% 15%;border:10px solid #fffdf7;box-shadow:3px 5px 0 #182c421a}.team-portrait .handwritten{display:block;margin-top:18px;text-align:center;font-size:26px}.team-space h2{font-size:43px;margin:12px 0 20px}.team-space .eyebrow{font-size:10px;letter-spacing:1px}.team-space-copy>p:not(.eyebrow){font-size:15px;line-height:1.7;margin-top:12px}.team-space-copy>p.side-score{font-size:12px;display:flex;gap:10px;align-items:center}.side-score strong{font:36px var(--serif)}.side-actions{display:flex;align-items:center;flex-wrap:wrap;gap:17px;margin:18px 0 22px}.side-actions a{font-size:13px}.team-space .business-link{display:inline-flex;align-items:center;min-height:48px;margin-top:5px;font-weight:900;font-size:15px;line-height:1.4}.side-background{border-top:1px solid #182c4230;padding-top:12px}.side-background summary{font-weight:800;font-size:15px;cursor:pointer;min-height:44px}.side-background summary span{display:block;font-weight:400;font-size:12px;margin:4px 0 10px}.side-background>p{font-size:14px;line-height:1.6;margin:10px 0}.team-update{margin-top:18px;font-size:13px}.team-update h3{font-size:22px;margin:10px 0}.team-update p{margin:10px 0;white-space:pre-line}
.melissa-space{background:#f5e5ed;border-top-color:var(--pink);border-radius:70px 4px 4px 4px;grid-template-columns:1.3fr .7fr}.melissa-space .team-portrait{grid-column:2;grid-row:1;transform:rotate(4deg)}.melissa-space .team-space-copy{grid-column:1;grid-row:1}.melissa-space .button{background:#8b3e68;border-color:#8b3e68}.jonathan-space .button{background:#305e85;border-color:#305e85}.melissa-space h2 em{color:#8b3e68}.jonathan-space h2 em{color:#305e85}.both-invitation{display:flex;align-items:center;gap:25px;margin-top:32px}.both-invitation>p{font-size:13px;flex:1}.both-invitation .handwritten{font-size:26px;max-width:190px}.both-invitation button{font-size:13px}
.events-heading{padding-top:40px;padding-bottom:28px;border-top:1px solid var(--line)}.events-heading h2{margin:12px 0 18px;font-size:40px}.events-heading>p:last-of-type{max-width:750px;font-size:16px}.home-page #saturday-invitation{padding:0;margin-top:24px;background:none;border:0}.home-page .ticket-section{padding-top:38px;padding-bottom:42px}.home-page .ticket-intro h2{font-size:38px}.home-page .ticket-layout{gap:40px}
.more-story{padding-top:45px;padding-bottom:40px}.more-story>h2{margin:10px 0 25px}.story-fold{border-top:1px solid var(--line);padding:0}.story-fold:last-child{border-bottom:1px solid var(--line)}.story-fold>summary{padding:21px 32px 21px 0;cursor:pointer;position:relative;list-style:none}.story-fold>summary::-webkit-details-marker{display:none}.story-fold>summary:after{content:'+';position:absolute;right:5px;top:22px;font-size:25px}.story-fold[open]>summary:after{content:'−'}.story-fold>summary strong{display:block;font:25px var(--serif)}.story-fold>summary span{display:block;font-size:13px;margin-top:6px;color:var(--muted)}.story-fold .wrap{padding-left:0;padding-right:0}.story-fold .saga-section,.story-fold .share-section,.story-fold .about-section{padding-top:18px;padding-bottom:30px}.story-fold .qr-rivalry{padding:18px 0 30px}.story-fold .saga-section>.section-heading{display:none}.home-page .feedback-section{padding-top:30px}.home-page .feedback-section p{font-size:15px}
.home-page [hidden]{display:none!important}.home-page section,.home-page article{scroll-margin-top:24px}.home-page details summary:focus-visible{outline:3px solid #b14f0b;outline-offset:4px}
@media(max-width:850px){.home-page .hero{gap:22px}.home-page .portrait-image{height:205px}.home-page .portrait-collage{min-height:315px}.home-page .polaroid figcaption{font-size:23px}.home-page .polaroid figcaption span{display:none}.home-page .game-intro{gap:24px}.home-page .scoreboard{padding:20px 16px}.home-page .score-top{flex-wrap:wrap}.how-steps{gap:23px}.how-steps li{padding-left:29px}.team-space{gap:30px;padding:30px}.team-portrait img{height:225px}.team-space h2{font-size:35px}.both-invitation{flex-wrap:wrap}.team-spaces-intro{gap:15px 25px}.home-page .masthead nav{gap:15px}.home-page .hero h1{font-size:46px}}
@media(max-width:600px){.home-page .wrap{padding-left:22px;padding-right:22px}.home-page .masthead{height:auto;min-height:86px;flex-wrap:wrap;justify-content:center;padding-top:13px;padding-bottom:12px;gap:9px}.home-page .masthead .wordmark{font-size:25px}.home-page .masthead nav{width:100%;justify-content:center;gap:24px;font-size:12px}.home-page .hero{display:flex;flex-direction:column;padding-top:28px;padding-bottom:28px;gap:12px}.home-page .hero h1{font-size:43px;line-height:1.05;letter-spacing:-1.8px}.home-page h1 em{letter-spacing:-1.7px}.home-page .hero .eyebrow{font-size:9px;margin-bottom:15px}.home-page .welcome{font-size:16px;margin-top:18px}.home-page .hero-description{font-size:14px;line-height:1.6}.hero-actions{gap:20px;margin-top:21px}.hero-actions .button{font-size:13px;padding:12px 15px;min-height:46px}.hero-actions .text-button{font-size:13px}.hero-footnote{font-size:11px}.home-page .portrait-collage{width:280px;min-height:235px;align-self:center;margin-top:13px}.home-page .portrait-image{height:155px}.home-page .polaroid{width:46%;bottom:2px}.home-page .melissa-photo{bottom:14px}.home-page .burst{width:74px;height:74px;font-size:16px;top:0;left:10px}.home-page .collage-star{font-size:40px}.home-page .how-it-works{padding-top:26px;padding-bottom:26px}.how-it-works h2{font-size:30px}.how-steps{grid-template-columns:1fr;gap:23px;margin-top:24px}.how-steps li{padding-left:40px}.how-steps h3{font-size:22px}.how-steps p{font-size:14px;margin-top:6px}.home-page .game-intro{display:flex;flex-direction:column;gap:26px;padding-top:25px;padding-bottom:25px;align-items:stretch}.home-page .scoreboard{order:2}.home-page .arrival-note{order:3}.home-page .section-line h2{font-size:29px}.choice-intro{font-size:14px}.home-page .team-choices{gap:12px}.home-page .team-button{font-size:13px;min-height:53px}.next-move{display:block;border-radius:0;margin-top:0;padding-top:26px;padding-bottom:26px}.next-move h2{font-size:30px}#next-actions{margin-top:20px;gap:12px}.congratulations-feature{grid-template-columns:1fr;gap:16px;padding-top:25px;padding-bottom:25px}.congratulations-feature h2{font-size:27px;margin-top:12px}.home-page .daily-heading h2,.home-page .play-heading h2{font-size:30px}.home-page .daily-section{padding-top:30px}.home-page .play-section{padding-top:30px;padding-bottom:35px}.home-page .challenge-paper{padding:24px 20px}.home-page .personal-score{gap:7px}.home-page .personal-score strong{font-size:30px}.home-page .personal-score span{font-size:9px}.home-page #question-content h3{font-size:25px}.team-spaces-intro{display:block}.team-spaces-intro h2{font-size:35px;margin:12px 0}.team-spaces-intro>p:last-child{font-size:14px}.home-page .team-spaces{padding-top:30px;padding-bottom:30px}.team-space,.melissa-space{display:flex;flex-direction:column;gap:20px;padding:25px 21px;border-radius:4px 45px 4px 4px;margin-top:25px}.team-space .team-portrait{width:62%;align-self:center;padding-top:0}.team-portrait img{height:210px;border-width:7px}.team-portrait .handwritten{font-size:23px;margin-top:12px}.team-space h2{font-size:33px;margin-bottom:17px}.team-space-copy>p:not(.eyebrow){font-size:14px}.team-space .eyebrow{font-size:9px;line-height:1.6}.team-space .business-link{font-size:14px}.side-actions{gap:12px}.side-actions .button{font-size:13px}.both-invitation{display:block;text-align:center;margin-top:28px}.both-invitation .handwritten{max-width:none}.both-invitation p{margin:12px 0 18px}.events-heading h2{font-size:31px}.events-heading>p:last-of-type{font-size:14px}.home-page .ticket-intro h2{font-size:32px}.home-page .story-fold .wrap{padding-left:0;padding-right:0}.story-fold>summary strong{font-size:23px}.story-fold>summary span{font-size:12px}.home-page .more-story{padding-top:30px}.home-page .feedback-section{padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){.home-page{scroll-behavior:auto}.home-page *{scroll-behavior:auto!important}}
/* Override the original narrow mobile hero measures for the explanatory welcome. */
.home-page h1{width:auto}.home-page h1 em{font-size:inherit;white-space:normal}.home-page .welcome{max-width:600px}.home-page .hero-copy .eyebrow{white-space:normal}.home-page .allegiance{margin-top:0}
@media(max-width:600px){.home-page .section-line{display:block}.home-page .section-line .handwritten{display:block;margin-top:8px}.home-page .hero h1{font-size:42px}.home-page .hero-copy{width:100%}}
.home-page .hero h1{font-size:clamp(38px,4.4vw,58px)}.home-page .hero .welcome{font-size:16px;margin-top:18px;max-width:600px}.hero-services{display:grid;gap:10px;margin-top:21px;max-width:570px}.hero-service{display:flex;align-items:center;justify-content:space-between;gap:15px;text-decoration:none;padding:12px 17px;border:1px solid #94b1cc;border-left:5px solid #305e85;background:#e7eff5;min-height:69px}.hero-service small{display:block;font-size:11px;font-weight:800;letter-spacing:.3px}.hero-service strong{display:block;font-size:16px;line-height:1.35;margin-top:3px}.hero-service>span:last-child{font-size:25px}.hero-service:hover{box-shadow:3px 3px 0 #182c421b}.hero-service.service-wellness{background:#f5e5ed;border-color:#c893af;border-left-color:#8b3e68}.hero-divas{font-size:14px;margin-top:18px;line-height:1.6}.hero-divas a{display:inline-block;font-weight:900;min-height:32px;margin-left:5px}.home-page .hero-description{font-size:14px;margin-top:13px}.home-page .hero-actions{margin-top:18px}.home-page .hero{padding-top:38px;padding-bottom:38px}.home-page .portrait-collage{align-self:center}
@media(max-width:600px){.home-page .hero{padding-top:22px;padding-bottom:25px}.home-page .hero h1{font-size:36px;letter-spacing:-1.4px;line-height:1.06}.home-page .hero .eyebrow{margin-bottom:12px}.home-page .hero .welcome{font-size:14px;line-height:1.5;margin-top:14px}.hero-services{margin-top:16px;gap:8px}.hero-service{padding:10px 12px;min-height:62px}.hero-service small{font-size:10px}.hero-service strong{font-size:14px;margin-top:2px}.hero-divas{font-size:13px;line-height:1.45;margin-top:13px}.hero-divas span{display:block}.hero-divas a{margin-left:0;min-height:32px}.home-page .hero-description{font-size:13px;line-height:1.5;margin-top:9px}.home-page .hero-actions{margin-top:15px}.hero-footnote{margin-top:10px;font-size:10px}.home-page .portrait-collage{margin-top:14px}}
@media(max-width:600px){.invite-strip{grid-template-columns:1fr;gap:18px}.invite-strip .button{justify-self:start}.home-page .masthead nav{gap:13px;font-size:11px}.home-page .masthead nav a{min-height:36px;display:flex;align-items:center}}
