/* Character worlds and launch-information pages. Keep the stories spacious, warm and easy to scan. */
.world-page,.info-page{min-height:78vh;background:var(--paper);color:var(--ink);padding:clamp(26px,5vw,64px) clamp(18px,7vw,110px) 110px}
.world-back{display:inline-block;color:#5e4b56;border-bottom:1px solid #241720;padding-bottom:4px;font:700 10px "DM Sans",sans-serif;letter-spacing:.12em}
.world-hero{max-width:1180px;margin:0 auto;padding:34px 0 92px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:clamp(36px,7vw,100px);align-items:center}
.world-hero-art{background:#ffdce5;border-radius:34px;overflow:hidden;box-shadow:0 18px 42px rgba(57,21,64,.10)}
.world-hero-art img{width:100%;aspect-ratio:1.72;object-fit:cover}
.turtle-art img{object-position:center}
.cat-family-hero .world-hero-art{background:#ffd2de}
.world-hero-copy{max-width:500px}
.world-hero-copy .eyebrow{color:var(--pink);margin:0 0 18px}
.world-hero-copy h1{font:700 clamp(64px,8.5vw,112px)/.78 "Caveat",cursive;letter-spacing:-.06em;color:#241720;margin:0}
.world-hero-copy h1 em{font:700 1em "Caveat",cursive;color:var(--pink);font-style:normal}
.world-lede{font:500 clamp(18px,2vw,24px)/1.5 "DM Sans",sans-serif;color:#66505b;max-width:430px;margin:28px 0 30px}
.world-hero-copy .button{font:700 11px "DM Sans",sans-serif;letter-spacing:.07em}
.world-hero-copy .button span{margin-left:10px;font-size:15px}
.world-intro{max-width:780px;margin:0 auto;padding:78px 20px 84px;text-align:center}
.world-intro .eyebrow{color:var(--pink);margin:0 0 18px}
.world-intro h2{font:700 clamp(42px,5.5vw,74px)/.92 "Caveat",cursive;letter-spacing:-.055em;color:#241720;margin:0}
.world-intro h2 em{font:700 1em "Caveat",cursive;color:var(--pink);font-style:normal}
.world-intro>p:last-child{max-width:650px;margin:26px auto 0;font:500 17px/1.7 "DM Sans",sans-serif;color:#66505b}
.world-steps{max-width:1180px;margin:0 auto 86px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ead8dc;border-bottom:1px solid #ead8dc}
.world-steps article{padding:28px 26px 32px;border-right:1px solid #ead8dc}
.world-steps article:last-child{border-right:0}
.world-steps article>span,.cat-family-cards article>span{font:700 10px "DM Sans",sans-serif;letter-spacing:.14em;color:var(--pink)}
.world-steps h3{font:700 30px/1 "Caveat",cursive;letter-spacing:-.03em;margin:24px 0 10px;color:#241720}
.world-steps p,.cat-family-cards p{margin:0;font:500 15px/1.6 "DM Sans",sans-serif;color:#66505b}
.world-diary{max-width:1180px;margin:0 auto 62px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,6vw,86px);align-items:center;background:#d7f4f0;border-radius:34px;padding:clamp(18px,3vw,34px)}
.world-diary-image{border-radius:22px;overflow:hidden;background:#fff5e9}
.world-diary-image img{width:100%;aspect-ratio:1.2;object-fit:cover}
.world-diary-copy{padding:18px 10px 18px 0;max-width:520px}
.world-diary-copy .eyebrow{color:var(--pink);margin:0 0 18px}
.world-diary-copy h2{font:700 clamp(38px,5vw,64px)/.9 "Caveat",cursive;letter-spacing:-.05em;color:#241720;margin:0}
.world-diary-copy h2 em{font:700 1em "Caveat",cursive;color:var(--pink);font-style:normal}
.world-diary-copy>p:not(.eyebrow){font:500 16px/1.7 "DM Sans",sans-serif;color:#66505b;margin:24px 0}
.world-diary-copy .text-link{font:700 11px "DM Sans",sans-serif;letter-spacing:.1em}
.world-next{display:block;width:max-content;max-width:100%;margin:0 auto;color:#241720;border-bottom:1px solid currentColor;padding-bottom:5px;font:700 11px "DM Sans",sans-serif;letter-spacing:.12em;text-align:center}
.cat-family-page{background:#fff7f9}
.cat-intro{padding-bottom:62px}
.cat-family-cards{max-width:1180px;margin:0 auto 86px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cat-family-cards article{min-height:230px;padding:28px 24px;background:#fffdf9;border:1px solid #ead8dc;border-radius:24px}
.cat-family-cards article:nth-child(2){background:#ffe8ef}
.cat-family-cards article:nth-child(3){background:#d7f4f0}
.cat-family-cards h3{font:700 clamp(28px,3vw,39px)/.95 "Caveat",cursive;letter-spacing:-.04em;color:#241720;margin:24px 0 12px}
.cat-diary{background:#ffe1e9}
.cat-diary .world-diary-image{order:2}
.cat-club-invite{max-width:760px;margin:0 auto 66px;padding:48px 26px;text-align:center;background:#ff477e;color:#fff;border-radius:30px}
.cat-club-invite .eyebrow{color:#fff;opacity:.85;margin:0 0 14px}
.cat-club-invite h2{font:700 clamp(36px,5vw,62px)/.92 "Caveat",cursive;letter-spacing:-.05em;margin:0}
.cat-club-invite h2 b{color:#fff5e9;font-size:.7em}
.cat-club-invite>p:not(.eyebrow){max-width:540px;margin:20px auto 26px;font:500 16px/1.6 "DM Sans",sans-serif}
.cat-club-invite .button{font:700 11px "DM Sans",sans-serif;letter-spacing:.08em;background:#241720}
.info-page{background:#fffdf9}
.info-head{max-width:980px;margin:0 auto;padding:38px 0 72px;display:grid;grid-template-columns:1fr .65fr;gap:35px;align-items:end}
.info-head .eyebrow{grid-column:1/-1;color:var(--pink);margin:0}
.info-head h1{font:700 clamp(58px,8vw,104px)/.82 "Caveat",cursive;letter-spacing:-.06em;color:#241720;margin:0}
.info-head h1 em{font:700 1em "Caveat",cursive;color:var(--pink);font-style:normal}
.info-head>p:last-child{font:500 18px/1.6 "DM Sans",sans-serif;color:#66505b;max-width:400px;margin:0 0 6px}
.info-grid{max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ead8dc;border-bottom:1px solid #ead8dc}
.info-grid article{padding:28px 24px 34px;border-right:1px solid #ead8dc}
.info-grid article:last-child{border-right:0}
.info-grid article>span{font:700 10px "DM Sans",sans-serif;letter-spacing:.14em;color:var(--pink)}
.info-grid h2{font:700 clamp(29px,3vw,42px)/.94 "Caveat",cursive;letter-spacing:-.04em;color:#241720;margin:24px 0 12px}
.info-grid p{margin:0;font:500 15px/1.65 "DM Sans",sans-serif;color:#66505b}
.info-footnote{max-width:980px;margin:30px auto 0;color:#75656c;font:500 13px/1.6 "DM Sans",sans-serif}
.faq-page{background:#fff7f9}
.faq-list{max-width:980px;margin:0 auto;border-top:1px solid #ead8dc}
.faq-list details{border-bottom:1px solid #ead8dc;padding:0 4px}
.faq-list summary{cursor:pointer;list-style:none;padding:23px 40px 23px 0;position:relative;font:700 24px/1.1 "Caveat",cursive;color:#241720}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';position:absolute;right:8px;top:18px;color:var(--pink);font:400 25px "DM Sans",sans-serif}
.faq-list details[open] summary:after{content:'−'}
.faq-list details p{max-width:760px;margin:0 0 24px;font:500 15px/1.65 "DM Sans",sans-serif;color:#66505b}
.legal-page{background:#fffdf9}
.legal-copy{max-width:760px;margin:0 auto}
.legal-copy h2{font:700 clamp(28px,3vw,40px)/1 "Caveat",cursive;color:#241720;margin:0 0 10px;padding-top:23px;border-top:1px solid #ead8dc}
.legal-copy p{font:500 15px/1.7 "DM Sans",sans-serif;color:#66505b;margin:0 0 30px}
@media(max-width:760px){
 .world-page,.info-page{padding:24px 16px 76px}
 .world-hero{grid-template-columns:1fr;gap:30px;padding:26px 0 58px}
 .world-hero-art{border-radius:18px}
 .world-hero-art img{aspect-ratio:1.28;object-fit:cover}
 .world-hero-copy h1{font-size:70px}
 .world-lede{font-size:18px;margin:20px 0 24px}
 .world-intro{padding:48px 8px 54px}
 .world-intro h2{font-size:48px}
 .world-intro>p:last-child{font-size:15px}
 .world-steps,.cat-family-cards,.info-grid{grid-template-columns:1fr;margin-bottom:58px}
 .world-steps article,.info-grid article{border-right:0;border-bottom:1px solid #ead8dc;padding:24px 18px}
 .world-steps article:last-child,.info-grid article:last-child{border-bottom:0}
 .world-steps h3{margin:14px 0 8px}
 .world-diary{grid-template-columns:1fr;gap:22px;border-radius:20px;padding:12px;margin-bottom:40px}
 .world-diary-copy{padding:8px 8px 18px}
 .world-diary-copy h2{font-size:46px}
 .cat-diary .world-diary-image{order:0}
 .cat-family-cards article{min-height:0;padding:24px 20px}
 .cat-family-cards h3{margin:16px 0 8px}
 .cat-club-invite{padding:36px 20px;border-radius:22px;margin-bottom:48px}
 .info-head{display:block;padding:28px 0 48px}
 .info-head h1{font-size:70px}
 .info-head>p:last-child{font-size:16px;margin-top:24px}
 .info-grid{display:block}
 .info-grid h2{margin:15px 0 10px}
 .faq-list summary{font-size:22px;padding:20px 34px 20px 0}
 .faq-list summary:after{top:16px;right:4px}
 .legal-copy h2{font-size:34px}
}
