:root{color-scheme:light;--ink:#263e3a;--teal:#206f62;--deep:#174f46;--paper:#fffdf7;--cream:#f7f3e8;--line:#e6e6da;--muted:#5b6d67;--yellow:#f4cf72;--radius:24px;font-family:ui-rounded,"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);line-height:1.65}a{color:var(--teal);text-underline-offset:4px}a:hover{color:var(--deep)}a:focus-visible,summary:focus-visible{outline:3px solid #9e5ea5;outline-offset:5px;border-radius:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(2.2rem,5vw,4.25rem);margin-bottom:1.15rem}h2{font-size:clamp(1.7rem,3vw,2.3rem);margin-bottom:1rem}h3{font-size:1.25rem;line-height:1.25;margin-bottom:.6rem}p{margin-bottom:1rem}header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{max-width:1230px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:18px 28px}.brand{font-size:1.55rem;font-weight:850;letter-spacing:-.07em;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:.6rem}.brand-icon{background:var(--teal);color:white;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;font-size:1.4rem}.brand small{color:var(--teal);font:inherit}.top-nav{display:flex;gap:1.4rem;align-items:center;font-size:.93rem;font-weight:650}.top-nav a{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:48px;border:1px solid var(--teal);background:var(--teal);color:white;border-radius:12px;padding:.65rem 1.1rem;text-decoration:none;font-weight:750;line-height:1.45}.button:hover{background:var(--deep);color:white}.button.secondary{background:var(--paper);color:var(--teal);border-color:var(--line)}.button.secondary:hover{background:#ecf3e9}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:5;background:white;padding:1rem}.skip-link:focus{top:1rem}main{max-width:1230px;margin:auto;padding:24px 28px 65px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:.45rem;font-size:.84rem;color:var(--muted);margin:0 0 22px;padding:0;list-style:none}.breadcrumbs li:not(:last-child)::after{content:" /";color:#99a69b;margin-left:.5rem}.breadcrumbs a{text-decoration:none}.hero{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);margin-bottom:32px}.hero-copy{padding:clamp(25px,4vw,48px)}.hero p{max-width:60ch;color:var(--muted);font-size:1.05rem}.eyebrow{font-size:.76rem;letter-spacing:.12em;font-weight:800;text-transform:uppercase;color:var(--teal);margin-bottom:1rem}.hero-art{position:relative;background:#e8eedc;min-height:320px}.hero-art img{width:100%;height:100%;object-fit:cover;position:absolute}.hero-meta,.actions,.chips{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.hero-meta{margin-bottom:1rem}.badge{border-radius:50px;background:#edf3e7;padding:.3rem .7rem;font-size:.8rem;font-weight:650;line-height:1.5}.badge.free{background:#fbefd0;color:#6f5422}.actions{margin-top:1.4rem;gap:.7rem}.quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 36px}.quick-link{border:1px solid var(--line);border-radius:18px;background:var(--paper);padding:22px;text-decoration:none;color:var(--ink)}.quick-link:hover{border-color:#79a995;box-shadow:0 7px 18px #1c50330a}.quick-link strong{display:block;font-size:1.16rem}.quick-link span{font-size:.9rem;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:16px}.section-heading h2{margin-bottom:0}.section-note{font-size:.85rem;color:var(--muted)}.chips{margin-bottom:25px}.chip{display:inline-flex;border:1px solid #d4ddd0;background:var(--paper);padding:.4rem .9rem;border-radius:50px;text-decoration:none;font-size:.86rem;color:var(--ink)}.chip:hover,.chip[aria-current=page]{background:#e4efdf;border-color:#76a390}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:38px}.card{border:1px solid var(--line);background:var(--paper);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.card-art{height:160px;overflow:hidden;background:#e9efdf;display:grid;place-items:center;font-size:3.5rem;text-decoration:none}.card-art img{width:100%;height:100%;object-fit:cover}.card-body{padding:21px;display:flex;flex-direction:column;flex:1}.card .hero-meta{gap:.35rem;margin-bottom:.7rem}.card .badge{font-size:.71rem;padding:.2rem .5rem}.card h3 a{text-decoration:none;color:var(--ink)}.card p{color:var(--muted);font-size:.93rem;margin-bottom:.8rem}.card .skill{font-size:.81rem;margin-bottom:1rem;color:#476355}.card .card-link{margin-top:auto;font-size:.88rem;font-weight:750;text-decoration:none}.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.1rem}.tag{font-size:.74rem;background:#f3f0e7;color:#6b6659;border-radius:7px;padding:.15rem .5rem}.panel{padding:clamp(22px,3vw,35px);background:var(--paper);border:1px solid var(--line);border-radius:20px;margin-bottom:28px}.panel p:last-child{margin-bottom:0}.together{background:#eaf0e4;border-color:#dce5d6}.columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr);gap:24px;align-items:start}.preview{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.preview:first-of-type{border:0;margin:0;padding:0}.preview img{border-radius:14px;margin-bottom:16px;max-height:350px;width:100%;object-fit:cover}.parent-prompt{background:#f5f2e8;padding:15px 18px;border-radius:12px;font-size:.91rem}.parent-prompt strong{color:var(--teal)}.hi{font-size:.9rem;color:var(--muted);margin-top:.4rem;letter-spacing:normal}.checklist,.rounds{padding-left:1.2rem;margin-bottom:0}.checklist li,.rounds li{margin-bottom:.85rem}.rounds li::marker{font-weight:750;color:var(--teal)}.rounds span{display:block;font-size:.88rem;color:var(--muted);margin-top:.25rem}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:0 0 1.4rem}.details-grid div{border-bottom:1px solid var(--line);padding-bottom:.55rem}.details-grid dt{font-size:.75rem;color:var(--muted)}.details-grid dd{margin:0;font-size:.94rem;font-weight:700}.reading-note{color:var(--muted);font-size:.84rem}.faq details{border-bottom:1px solid var(--line);padding:15px 0}.faq details:last-child{border-bottom:0}.faq summary{font-weight:750;cursor:pointer;padding-right:1rem;line-height:1.5}.faq details p{font-size:.94rem;color:var(--muted);margin:12px 0 0;max-width:85ch}.printable{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#f8e9c8}.printable p{margin-bottom:0}.footer{border-top:1px solid var(--line);background:var(--paper);padding:35px 28px}.footer-inner{max-width:1174px;margin:auto;display:flex;gap:20px;justify-content:space-between}.footer p{font-size:.81rem;color:var(--muted);max-width:68ch;margin-bottom:.5rem}.footer-links{display:flex;flex-wrap:wrap;gap:1rem;font-size:.83rem;align-content:start}.muted{color:var(--muted)}@media(max-width:920px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr 40%}.hero-art{min-height:300px}.top-nav{gap:1rem}.columns{grid-template-columns:1fr}.quick-links{gap:12px}}@media(max-width:650px){main{padding:20px 18px 40px}.header-inner{padding:14px 18px;flex-wrap:wrap}.brand{font-size:1.4rem}.top-nav{width:100%;justify-content:space-between;gap:.6rem;font-size:.8rem}.top-nav .button{min-height:39px;padding:.4rem .75rem}.hero{grid-template-columns:1fr}.hero-copy{padding:26px}.hero-art{min-height:220px;max-height:260px;order:2}.hero p{font-size:1rem}.grid{grid-template-columns:1fr}.card-art{height:205px}.quick-links{grid-template-columns:1fr}.quick-link{padding:17px 20px}.section-heading{align-items:start;flex-direction:column;gap:.35rem}.columns{gap:0}.printable{align-items:start;flex-direction:column}.footer{padding:28px 18px}.footer-inner{flex-direction:column}.details-grid{gap:.75rem}.breadcrumbs{font-size:.75rem}.actions .button{width:100%}}@media(prefers-reduced-motion:no-preference){.card,.quick-link{transition:box-shadow .18s,border-color .18s}.card:hover{box-shadow:0 8px 28px #233f3410}}
