.space-home{padding:24px clamp(20px,4vw,64px) 40px;display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.space-card{border:1px solid var(--line,#d9e5df);border-radius:20px;background:#fff;padding:26px}.space-card h2{font-size:clamp(23px,2.2vw,32px);margin:12px 0}.space-card p{color:#526d6b;line-height:1.8}.space-kicker{font-size:12px;letter-spacing:.14em;color:#0e655f;font-weight:700}.space-latest{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center}.space-latest img{width:150px;height:150px;object-fit:cover;border-radius:14px}.memory-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:26px}.memory-head h2{font-size:clamp(30px,4vw,48px);margin:12px 0}.memory-head p{color:#526d6b}.memory-search{display:block;max-width:440px;margin:20px 0}.memory-search input{display:block;width:100%;margin-top:8px;border:1px solid #cbdcd7;border-radius:12px;padding:13px;background:white;font:inherit}.memory-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.memory-card{overflow:hidden;border:1px solid #d8e4df;background:#fff;border-radius:18px}.memory-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.memory-card-body{padding:24px}.memory-card h3{font-size:23px;margin:12px 0}.memory-card p{color:#526d6b;line-height:1.8}.memory-card a{color:#0e655f;font-weight:700}.memory-detail{max-width:1200px;margin:auto}.memory-detail h2{font-size:clamp(29px,4vw,48px);margin:16px 0}.memory-detail h3{font-size:23px;margin:0 0 16px}.memory-meta{color:#526d6b;font-size:14px;margin:18px 0}.memory-detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:30px;margin-top:28px}.memory-video{width:100%;max-height:65vh;border-radius:16px;background:#102f32;display:block}.memory-story{white-space:pre-line;line-height:1.95;color:#355551}.memory-panel{padding:26px;background:white;border:1px solid #d8e4df;border-radius:18px;margin-bottom:22px}.memory-phrases{display:grid;gap:14px}.memory-phrase{padding:14px;background:#eef5f1;border-radius:10px}.memory-phrase p{margin:5px 0;line-height:1.7}.memory-phrase p+ p{color:#526d6b}.memory-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.memory-photos button{padding:0;border:0;background:none;text-align:left;cursor:zoom-in;color:inherit}.memory-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.memory-photos span{display:block;font-size:13px;margin:8px 0}.memory-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.memory-share-text{width:100%;padding:12px;word-break:break-all}.memory-empty{padding:40px;background:#edf4ef;border-radius:16px}.memory-lightbox{max-width:95vw;max-height:92vh;padding:18px}.memory-lightbox img{max-width:85vw;max-height:72vh;object-fit:contain;display:block}.memory-lightbox button{float:right;margin-bottom:12px}.memory-lightbox::backdrop{background:#092824d9}.memory-detail blockquote{margin:0;padding:16px;border-left:3px solid #c8aa68;background:#f7f5ee}.space-home a:focus-visible,.memories-section a:focus-visible,.memories-section button:focus-visible{outline:3px solid #c69b42;outline-offset:4px}
@media(min-width:1101px) and (max-width:1350px){.header-inner{gap:12px}#primary-nav{gap:12px}.header-cta{display:none}}
@media(max-width:850px){.space-home,.memory-detail-layout{grid-template-columns:1fr}.memory-list{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-head{align-items:start;flex-direction:column}.memory-detail-layout{gap:12px}}
@media(max-width:540px){.memory-list{grid-template-columns:1fr}.space-latest{grid-template-columns:90px 1fr;gap:14px}.space-latest img{width:90px;height:110px}.space-card,.memory-panel{padding:20px}.space-home{padding:16px 18px 28px}.memory-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-detail h2{overflow-wrap:anywhere}.memory-actions>*{max-width:100%}}
@media print{.space-home,.memory-lightbox{display:none!important}}
/* Keep the activity-space homepage compact: useful entries follow the introduction. */
.hero{min-height:0;padding-block:36px}.hero-visual img{max-height:430px}.ribbon[data-view="home"]{display:none}.space-home{padding-top:20px}.space-home .space-card h2{font-size:24px}
@media(max-width:700px){.hero-visual{display:none}.hero{padding-block:28px}.space-home{gap:12px}.space-card h2{margin:8px 0}.space-latest{order:-1}}
.intro-practice>h3{margin-top:12px}.intro-practice>p{color:#526d6b;line-height:1.7;font-size:14px}.intro-tabs{display:flex;gap:4px;border-bottom:1px solid #d5e2dc;margin:20px 0}.intro-tabs button{flex:1;min-width:0;padding:12px 4px;border:0;border-bottom:3px solid transparent;background:none;color:#526d6b;font:inherit;font-size:13px;cursor:pointer}.intro-tabs button[aria-selected=true]{border-color:#0e655f;color:#0e655f;font-weight:700}.intro-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.intro-fields label:nth-child(3),.intro-fields label:last-child{grid-column:1/-1}.intro-practice label{font-size:13px;color:#355551;display:block}.intro-practice input,.intro-practice select,.intro-output{width:100%;min-width:0;padding:10px;border:1px solid #c7d9ce;border-radius:8px;background:#fff;font:inherit;font-size:14px;margin-top:7px}.intro-language label{display:flex;align-items:center;gap:12px}.intro-language select{width:auto;margin:0}.intro-note{font-size:12px;color:#526d6b;line-height:1.65}.intro-draft{margin:16px 0}.intro-draft summary{font-size:13px;font-weight:700;cursor:pointer}.intro-output{background:#edf4ef;line-height:1.8;resize:vertical}.intro-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.intro-actions button{font-size:13px}.intro-question{padding:20px;background:#edf4ef;border-radius:12px;margin:15px 0}.intro-question h4{font-size:20px;margin:0 0 12px;line-height:1.6}.intro-question p{line-height:1.7;margin:0;color:#526d6b}.intro-hint{padding:14px;background:#f7f0df;line-height:1.7;font-size:14px;border-radius:10px}
/* Keep each English slogan clause on its own line at every screen size. */
.hero-copy{container-type:inline-size}
html[lang] .hero h1{font-family:inherit;font-size:clamp(32px,11cqw,76px);white-space:nowrap;line-height:1.25;letter-spacing:0}
html[lang] .hero h1 span{display:block}
html[lang] .hero-english{display:block;font-size:clamp(14px,3.5cqw,20px);white-space:nowrap}
