
.discovery-hero{background:#12372d;color:#fff}.discovery-hero .lead{color:#e0ece4}.discovery-hero h1{max-width:950px}.visual-gallery{padding:32px 0 12px}.visual-gallery h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.25;margin:0 0 22px}.visual-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.visual-gallery-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.visual-gallery figure{margin:0;border-radius:20px;overflow:hidden;background:#fff;border:1px solid #d6e2da}.visual-gallery figcaption{padding:15px 18px;font-weight:700;font-size:17px;line-height:1.5}.visual-gallery figcaption a{text-decoration:none}.visual-note{font-size:14px;color:#506759;line-height:1.8;max-width:1000px;margin:22px 0}.comic-frame{position:relative;overflow:hidden;aspect-ratio:1/1;background:#f3ecda}.comic-frame img{position:absolute;max-width:none!important;width:300%;height:200%;left:calc(var(--panel-x)*-100%);top:calc(var(--panel-y)*-100%);display:block}.comic-frame.culture-art{aspect-ratio:3/2}.comic-frame.culture-art img{width:200%}.comic-frame.learning-art img{height:214%;top:0}.comic-frame.learning-art.lower img{height:188%;top:-88%}.connection-card .comic-frame{width:100%;border-radius:15px;margin-bottom:8px}.festival-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.festival-card{border:1px solid #d6e2da;background:#fff;border-radius:24px;overflow:hidden;scroll-margin-top:110px}.festival-card>.comic-frame{aspect-ratio:1/1}.festival-card>.culture-art{aspect-ratio:3/2}.festival-body{padding:27px}.festival-body small{color:#567160;font-weight:700;line-height:1.6}.festival-body h2{font-family:inherit;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.15;letter-spacing:0}.festival-body h3{font-size:16px;margin-top:25px}.festival-body p{line-height:1.8}.festival-joke{font-size:20px;font-weight:650;color:#986108}.festival-body details{border-top:1px solid #d5e1d8;padding-top:20px;margin-top:22px;line-height:1.8}.festival-body summary{cursor:pointer;font-size:17px;font-weight:700}.festival-body details a{font-size:14px;overflow-wrap:anywhere}.reading-evidence{background:#e9f2ec;padding:25px;border-left:5px solid #e8aa2f;border-radius:14px;line-height:1.8}.reading-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}.reading-steps article{padding:25px;border:1px solid #d6e2da;border-radius:18px;background:#fff}.reading-steps p{line-height:1.8}.reading-step-number{font-size:28px;color:#9d690c;font-weight:700}.reading-practice{max-width:960px}.reading-practice>p{line-height:1.8}.reading-practice label{display:inline-block;font-weight:700;margin:20px 15px 20px 0}.reading-practice input{vertical-align:middle;max-width:100%;accent-color:#12372d}.reading-passage{font-size:22px;line-height:1.95;background:#fff;padding:32px;border-radius:22px;border:1px solid #cadbce;margin:15px 0;white-space:pre-wrap}.reading-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.reading-controls button:disabled{opacity:.45;cursor:default}.reading-clock{font-size:20px;padding:12px 18px;background:#fff;border-radius:14px}.reading-result{padding:22px;background:#e9f2ec;border-radius:14px;line-height:1.7}.reading-reflection{margin:28px 0;line-height:1.8}.reading-reflection summary{font-size:20px;font-weight:700;cursor:pointer}@media(max-width:850px){.reading-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-gallery-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.festival-grid{grid-template-columns:1fr}.visual-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.visual-gallery-grid figure:last-child:nth-child(odd){grid-column:1/-1;max-width:100%}.visual-gallery-grid figure:last-child:nth-child(odd) .comic-frame{max-height:260px}.visual-gallery figcaption{padding:12px;font-size:15px}.reading-steps{grid-template-columns:1fr}.reading-passage{padding:22px;line-height:1.85}.festival-body{padding:22px}.section{padding-top:60px;padding-bottom:60px}}

.discovery-links{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:600px){.discovery-links{grid-template-columns:1fr}}
