/* Dedicated spaces share ALCA's paper, lettering, borders and Nova artwork. */
.community-page{background:var(--paper)}
.community-page .site-nav>a[aria-current=location]{background:var(--sun)}
.community-top{background:linear-gradient(180deg,#d6efff,var(--paper));padding-bottom:34px}
.community-top.about-top{background:linear-gradient(180deg,#ffe0b4,var(--paper))}
.community-top.join-top{background:linear-gradient(180deg,#e9e1ff,var(--paper))}
.community-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center;padding:42px 0 35px}
.community-heading h1{font:400 clamp(2.8rem,5.2vw,5rem)/1.06 var(--display);letter-spacing:0;margin:22px 0;max-width:740px}
.community-heading h1 span{color:#1462a8;display:block}
.community-heading p{max-width:610px;font-size:1.125rem;line-height:1.65}
.community-heading .journey-hero-art{margin:0;transform:rotate(2deg)}
.community-heading .journey-hero-art img{aspect-ratio:1.55}
.community-heading .sun-button{margin-top:24px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
.section-heading h2,.about-copy h2,.join-intro h2,.application-form legend,.reader-sheet h2,.community-callout h2,.privacy-copy h1{font:400 clamp(1.9rem,3vw,2.75rem)/1.15 var(--display);letter-spacing:0}
.section-heading p{margin-top:12px;max-width:620px}
.library-area{padding:15px 0 80px}
.library-filters{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 16px}
.library-filter{border:2px solid var(--ink);background:var(--paper);border-radius:24px;padding:10px 19px;font:800 1rem/1.5 Nunito,Arial,sans-serif;min-height:48px;box-shadow:2px 3px 0 var(--ink)}
.library-filter[aria-pressed=true]{background:var(--sun)}
.library-filter:hover{background:#ffeaaa}
.library-count{font-size:.9375rem;color:var(--muted);min-height:1.6em;margin-bottom:25px}
.bookshelf{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 40px}
.bookshelf>li{min-width:0;padding-bottom:24px;border-bottom:7px solid var(--ink)}
.book-card{display:flex;flex-direction:column;position:relative;height:100%;background:var(--cover,#cae8ff);border:2px solid var(--ink);border-left-width:13px;border-radius:5px 20px 20px 5px;box-shadow:5px 5px 0 #fffaf0,7px 7px 0 var(--ink);padding:23px 23px 21px;transition:transform .18s,box-shadow .18s}
.book-card:hover{transform:translateY(-7px) rotate(-1deg);box-shadow:7px 10px 0 #fffaf0,9px 12px 0 var(--ink)}
.book-card h3{font:400 clamp(1.7rem,2.5vw,2.3rem)/1.08 var(--display);letter-spacing:0;margin:18px 0;min-height:2.2em}
.book-card img{width:100%;aspect-ratio:1.45;object-fit:cover;border:2px solid var(--ink);border-radius:50% 48% 44% 49%;margin:0 0 20px}
.book-label{font-size:.875rem;font-weight:800;display:flex;justify-content:space-between;gap:12px}
.book-tagline{margin:0 0 22px;font-size:1rem;line-height:1.5}
.book-open{display:flex;align-items:center;justify-content:space-between;border-top:1.5px solid var(--ink);padding-top:13px;margin-top:auto;font-weight:800}
.library-note{margin-top:40px;font-size:.9375rem;color:var(--muted);max-width:780px}
.community-callout{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#ffe79a;border:2px solid var(--ink);border-radius:30px;box-shadow:5px 6px 0 var(--ink);padding:32px;margin:0 0 75px}
.community-callout p{margin-top:12px;max-width:680px}
.community-callout .sun-button{flex-shrink:0;background:var(--paper)}
.about-copy{padding:30px 0 65px;display:grid;grid-template-columns:.65fr 1fr;gap:80px;border-bottom:2px solid var(--ink)}
.about-copy p+p{margin-top:20px}
.about-copy .section-kicker{margin-bottom:18px;display:block}
.about-values{padding:65px 0}
.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.value-card{border:2px solid var(--ink);border-radius:25px 30px 24px 28px;box-shadow:4px 5px 0 var(--ink);padding:28px;background:#d7edff}
.value-card:nth-child(2){background:#ffe1cf}.value-card:nth-child(3){background:#e6dfff}
.value-number{font:400 2rem/1 var(--display)}
.value-card h3{font:400 1.65rem/1.15 var(--display);letter-spacing:0;margin:22px 0 14px}
.value-card p{font-size:1rem}
.about-start{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;margin:10px 0 75px}
.about-start img{width:100%;border:2px solid var(--ink);border-radius:25px;box-shadow:5px 6px 0 var(--ink)}
.about-start h2{font:400 clamp(2rem,3vw,2.8rem)/1.12 var(--display);letter-spacing:0;margin:16px 0 22px}
.about-start .sun-button{margin-top:24px}
.join-layout{display:grid;grid-template-columns:.7fr 1.3fr;align-items:start;gap:60px;padding:20px 0 80px}
.join-intro{position:sticky;top:132px}
.join-intro>p{margin:18px 0}
.join-steps{list-style:none;margin:26px 0;padding:0;counter-reset:join}
.join-steps li{position:relative;padding:0 0 25px 52px;counter-increment:join;font-size:1rem}
.join-steps li:before{content:counter(join);position:absolute;left:0;top:0;width:33px;height:33px;border:2px solid var(--ink);background:var(--sun);border-radius:12px;display:grid;place-items:center;font-weight:800}
.join-steps strong{display:block;margin-bottom:5px}
.join-note{background:#e7e0ff;border:2px solid var(--ink);border-radius:22px;padding:23px}
.join-note a,.privacy-copy a,.form-consent a,.form-help a{font-weight:800;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.application-form{border:2px solid var(--ink);border-radius:28px;box-shadow:5px 6px 0 var(--ink);padding:35px;background:#fffdf8;min-width:0;scroll-margin-top:120px}
.application-form fieldset{padding:0;margin:0 0 35px;border:0;min-width:0}
.application-form legend{font-size:1.75rem;margin-bottom:23px;max-width:100%}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.form-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.form-field.full{grid-column:1/-1}
.form-field label{font-size:1rem;font-weight:800}
.form-field label span{font-weight:400;color:var(--muted);font-size:.875rem}
.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0;box-sizing:border-box;border:2px solid var(--ink);border-radius:13px;background:#fff;color:var(--ink);font:400 1rem/1.5 Nunito,Arial,sans-serif;padding:12px 14px;min-height:50px}
.form-field textarea{resize:vertical;min-height:130px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{background:#fffcdf}
.form-field small,.form-help{font-size:.875rem;color:var(--muted);line-height:1.6}
.form-consent{display:flex;align-items:start;gap:13px;font-size:.9375rem;margin:22px 0}
.form-consent input{width:21px;height:21px;flex:0 0 21px;margin-top:3px;accent-color:#1462a8}
.application-form .sun-button{width:100%;margin:10px 0 20px;cursor:pointer}
.application-form button:disabled{opacity:.65;cursor:not-allowed}
.form-status{padding:17px;border:2px solid var(--ink);border-radius:14px;background:#ffe8de;margin-bottom:22px}
.form-status:empty{display:none}
.form-status.is-success{background:#d9f2df}
.privacy-copy{max-width:760px;padding:42px 0 75px;min-height:60vh}
.privacy-copy h1{margin:22px 0 25px}
.privacy-copy h2{font:400 1.6rem/1.2 var(--display);letter-spacing:0;margin:30px 0 15px}
.privacy-copy p+p{margin-top:16px}
.reader-main{padding-bottom:75px;background:linear-gradient(180deg,var(--cover,#d7edff),var(--paper) 650px)}
.reader-heading{padding:32px 0;text-align:center;max-width:800px;margin:auto}
.reader-heading h1{font:400 clamp(2.6rem,4.7vw,4.5rem)/1.08 var(--display);letter-spacing:0;margin:18px 0}
.reader-heading p{font-size:1.0625rem}
.reader-book{max-width:1020px;margin:0 auto;display:grid;grid-template-columns:285px minmax(0,1fr);border:2px solid var(--ink);border-radius:10px 28px 28px 10px;box-shadow:6px 6px 0 var(--paper),8px 8px 0 var(--ink);background:#fffdf6;overflow:hidden}
.reader-cover{background:var(--cover,#d7edff);border-right:2px solid var(--ink);padding:30px 26px}
.reader-cover img{width:100%;aspect-ratio:1;object-fit:cover;border:2px solid var(--ink);border-radius:50%;margin:20px 0}
.reader-cover>p{font-size:.9375rem}
.reader-cover ol{padding-left:22px;font-size:1rem;margin:20px 0 0}
.reader-cover li{margin:12px 0;padding-left:4px}
.reader-cover a{text-decoration:underline;text-underline-offset:4px}
.reader-cover a[aria-current=page]{font-weight:800}
.reader-content{padding:42px;min-width:0}
.reader-sheet{scroll-margin-top:125px}
.reader-sheet+.reader-sheet{margin-top:35px}
.js .reader-sheet+.reader-sheet{margin-top:0}
.reader-sheet h2{font-size:2rem;margin:17px 0 22px}
.reader-sheet p{font-size:1.125rem;line-height:1.85;margin:18px 0}
.reader-sheet:focus{outline:none}
.reader-page-number{font-size:.875rem;font-weight:800;color:#4d5769}
.reader-controls{display:flex;justify-content:space-between;align-items:center;gap:13px;flex-wrap:wrap;border-top:1px solid var(--ink);margin-top:35px;padding-top:23px}
.reader-controls .sun-button{padding:10px 15px}
.reader-controls button:disabled{opacity:.45;box-shadow:none;cursor:default}
.reader-status{font-size:.9375rem;font-weight:800}
.reader-end{max-width:1020px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center;margin:35px auto 0}
.reader-end p{font-size:.9375rem;max-width:550px}
@media(min-width:801px) and (max-width:1100px){.community-page .header-inner{gap:15px}.community-page .site-nav{gap:7px}.community-page .site-nav>a{padding-inline:11px}}
@media(max-width:1000px){.community-heading{gap:32px}.bookshelf{gap:35px 25px}.book-card{padding:20px 16px}.join-layout{grid-template-columns:.7fr 1fr;gap:30px}.application-form{padding:26px}.form-grid{grid-template-columns:1fr}.about-copy{gap:35px}.reader-book{grid-template-columns:230px minmax(0,1fr)}.reader-content{padding:30px}}
@media(max-width:800px){.community-heading{grid-template-columns:1fr;gap:35px;padding:28px 0}.community-heading h1{font-size:clamp(2.8rem,8vw,4.5rem)}.community-heading .journey-hero-art{max-width:560px;width:100%;box-sizing:border-box}.community-heading .journey-hero-art img{aspect-ratio:2}.section-heading{align-items:start;flex-direction:column;gap:5px}.bookshelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 25px}.book-card h3{font-size:1.9rem}.values-grid{grid-template-columns:1fr}.about-copy,.about-start,.join-layout{grid-template-columns:1fr;gap:30px}.about-copy{padding-top:10px}.join-intro{position:static}.join-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.join-steps li{padding:45px 0 0}.join-note{max-width:620px}.form-grid{grid-template-columns:1fr 1fr}.community-callout{flex-direction:column;align-items:start}.reader-book{grid-template-columns:1fr}.reader-cover{border-right:0;border-bottom:2px solid var(--ink);padding:22px}.reader-cover img,.reader-cover>p{display:none}.reader-cover ol{display:flex;flex-wrap:wrap;gap:8px 26px;font-size:.9375rem;margin:12px 0 0}.reader-cover li{margin:4px 0}.reader-content{padding:30px}.reader-sheet p{font-size:1.0625rem}}
@media(max-width:520px){.bookshelf{gap:30px 16px}.book-card{padding:14px 11px;border-left-width:7px;border-radius:4px 14px 14px 4px}.book-card h3{font-size:1.55rem;min-height:3.3em;margin:15px 0}.book-card img{aspect-ratio:1.1;margin-bottom:14px}.book-label{font-size:.875rem;flex-direction:column;gap:0}.book-label>span:last-child{display:none}.book-tagline{font-size:.9375rem}.book-open{font-size:.875rem;gap:5px}.book-open .icon{width:1em}.library-filters{gap:9px}.library-filter{padding-inline:13px;font-size:.9375rem}.form-grid{grid-template-columns:1fr}.application-form{padding:23px 19px}.join-steps{grid-template-columns:1fr;gap:0}.join-steps li{padding:0 0 23px 50px}.community-callout{padding:25px}.reader-content{padding:26px 22px}.reader-controls{gap:12px}.reader-status{order:-1;width:100%;text-align:center}.reader-controls .sun-button{font-size:.9375rem}.reader-heading{text-align:left}.reader-sheet h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.book-card{transition:none}.book-card:hover{transform:none}}
@media(max-width:380px){.bookshelf{grid-template-columns:1fr}.book-card{padding:22px;border-left-width:12px}.book-card h3{font-size:2rem;min-height:0}.book-card img{aspect-ratio:1.6}.book-label{flex-direction:row}.book-label>span:last-child{display:inline}.book-tagline{font-size:1rem}}
