@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{--bg:#f3f5fc;--ink:#171720;--navy:#0c0624;--muted:#53575d;--yellow:#ffda76;--sage:#a9ae99}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e8e8e8;color:var(--ink);font:15px/1.85 'Noto Sans JP',system-ui,sans-serif}a{color:inherit}button,select,input,textarea{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}.site-header,main,.footer{max-width:1100px;margin:auto}.site-header{background:var(--bg);display:flex;align-items:center;justify-content:space-between;padding:20px 5%;position:relative;z-index:5;min-height:84px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-size:15px;font-weight:700}.brand-icon{font-size:31px;line-height:1;border-bottom:1px solid}.header-actions{display:flex;align-items:center;gap:15px}#lang{background:transparent;border:1px solid #bfc4cc;padding:5px 8px;border-radius:4px;font-size:12px}.menu-toggle{border:0;background:none;font-size:25px}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 13px 20px #0002;padding:16px 5%;gap:13px;flex-direction:column}.site-nav.open{display:flex}.site-nav a{text-decoration:none;padding:7px 0;font-weight:600}.site-nav a:hover,.footer a:hover{text-decoration:underline}main{min-height:420px;background:var(--bg);padding-bottom:44px}.container{padding:30px 6%}.section{padding:24px 6% 36px}.section h2,.container h1{margin:0 0 16px;font-size:clamp(21px,2.5vw,29px);line-height:1.4}.section p{margin:0 auto 22px;max-width:760px}.center{text-align:center}.hero{background:var(--yellow);min-height:235px;display:grid;place-items:center;padding:45px 20px;text-align:center}.hero h1{font-size:clamp(22px,3.5vw,38px);line-height:1.65;max-width:720px;margin:0}.banner{min-height:220px;display:grid;place-items:center;padding:32px;text-align:center;position:relative;background-color:#adb19d;background-image:linear-gradient(112deg,transparent 34%,#f7f7e49a 34.3%,#f7f7e49a 34.7%,transparent 35%),linear-gradient(18deg,transparent 57%,#f7f7e499 57.2%,#f7f7e499 57.6%,transparent 58%),linear-gradient(167deg,#c7c9b6,#a3aa99 46%,#c1c3af 47%,#969e8e);overflow:hidden}.banner:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(140deg,#ffffff1c,transparent 55%)}.banner>*{position:relative;z-index:1}.banner a{text-decoration:none;font-weight:700}.banner:hover{filter:brightness(1.035)}.banner.large{min-height:360px}.banner.light{background-color:#e5e2de;background-image:linear-gradient(135deg,#e4e0db 40%,#c6c1bd 40%,#e1dedb 70%)}.banner.cover{color:#fff;text-shadow:0 1px 5px #0005}.intro{padding:45px 7%}.intro p{max-width:700px;margin:0 auto;font-weight:500}.project-grid,.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-tile{min-height:180px;display:flex;align-items:center;justify-content:center;color:#171720;text-decoration:none;font-weight:700;text-align:center;padding:15px}.project-tile:hover{transform:translateY(-3px);transition:.2s}.small{font-size:12px}.footer{color:#fff;background:var(--navy)}.footer-inner{padding:40px 6%;display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:34px}.footer h2,.footer h3{font-size:16px;margin:0 0 15px}.footer h3{font-size:12px}.footer a{display:block;text-decoration:none;font-size:12px;margin-bottom:9px}.footer p{font-size:12px;color:#d2cce1}.copyright{text-align:center;padding:10px;background:#08031d;color:#a8a4b8;font-size:10px}.page-title{padding:15px 6% 35px}.page-title h1{font-size:28px;margin:0}.body-copy{max-width:800px;margin:40px auto;white-space:pre-line;text-align:center;font-weight:500}.split{display:grid;grid-template-columns:1fr 2.3fr;gap:35px;align-items:start;margin:30px 0}.portrait{min-height:250px;background:#dedbd4;display:grid;place-items:center;color:#5c6062;font-size:13px}.placeholder{min-height:170px;background:linear-gradient(140deg,#f1efed 0%,#c9c9c7 51%,#eee 52%);display:grid;place-items:center;color:#777;font-size:12px}.text-block{white-space:pre-line}.timeline{padding-left:20px}.timeline li{margin:7px 0}.info-table{width:100%;border-collapse:collapse}.info-table td{padding:10px;border-bottom:1px solid #dce0e8;vertical-align:top}.info-table td:first-child{font-weight:700;width:140px}.feature{padding:32px 0;scroll-margin-top:15px}.feature h2{font-size:21px;margin-bottom:8px}.feature p{margin:0 0 14px}.feature .banner{min-height:235px}.people{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.person{text-align:center}.person .portrait{min-height:145px}.donation-options{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.donation-choice{border:2px solid #d4d8df;background:#fff;padding:20px 8px;text-align:center;min-width:0}.donation-choice.active{border-color:#4e604d;background:#e3e9df}.donation-choice strong{display:block;font-size:24px}.donate-panel{max-width:720px;margin:20px auto;text-align:center}.segmented{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-bottom:20px}.segmented button{padding:10px 16px;border:1px solid #bdc2ca;background:#fff}.segmented button.active{background:var(--navy);color:#fff}.button{display:inline-block;border:0;background:var(--navy);color:white;text-decoration:none;font-weight:700;padding:14px 34px;margin:15px 0;text-align:center}.button:hover{background:#2a2050}.notice{color:#575b64;font-size:13px}.voice{display:grid;grid-template-columns:120px 1fr;gap:22px;margin:24px 0;align-items:center}.voice .placeholder{min-height:120px}.form-wrap{max-width:750px;margin:auto}.form-row{margin:18px 0}.form-row label{display:block;font-weight:600;margin-bottom:6px}.form-row input,.form-row textarea,.form-row select{background:#fff;border:1px solid #a9b0ba;padding:12px;width:100%;border-radius:3px}.form-row textarea{min-height:160px}.form-hint{font-size:12px;color:#555a62}.radio-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.radio-card{border:1px solid #bbc2c9;padding:16px;background:#fff}.radio-card:has(input:checked){border:2px solid #62755c;background:#e7eee4}.status{padding:12px;margin-top:13px;background:#ffefce}.safety{background:#fff9eb;padding:18px;border-left:4px solid #e7b64b;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:680px){body{font-size:14px}.site-header{padding:13px 5%;min-height:65px}.hero{min-height:230px}.banner.large{min-height:270px}.project-grid,.activity-grid{gap:12px}.project-tile{min-height:132px;font-size:12px}.footer-inner{grid-template-columns:repeat(2,1fr);gap:22px}.split{grid-template-columns:1fr}.portrait{min-height:180px}.people{grid-template-columns:repeat(2,1fr)}.donation-options{gap:7px}.donation-choice strong{font-size:18px}.donation-choice{padding:12px 4px}.voice{grid-template-columns:75px 1fr;gap:12px}.voice .placeholder{min-height:80px}.radio-pair{grid-template-columns:1fr}.info-table td:first-child{width:100px}.container{padding:26px 5%}}
/* Tonarite original watercolor artwork */
main{background:#fffaf5 url('assets/site-watercolor-bg.webp') center top/100% auto repeat-y;}
.section,.container,.page-title{background:rgba(255,255,255,.48)}
.hero{background:linear-gradient(100deg,rgba(255,230,176,.82),rgba(255,246,228,.77)),url('assets/about-landscape.webp') center 52%/cover;}
.banner{background-color:#f3e9df;background-image:url('assets/about-landscape.webp');background-position:center;background-size:cover;}
.banner::after{background:rgba(255,250,246,.19)}
.banner a,.banner strong{display:inline-block;padding:8px 13px;background:rgba(255,251,247,.76);border-radius:4px;text-shadow:none;color:#27212b;}
.about-image{background-image:url('assets/about-landscape.webp')}
.donation-image{background-image:url('assets/donation-hands.webp')}
.recruit-image{background-image:url('assets/recruit-workspace.webp')}
.contact-image{background-image:url('assets/watercolor-florals.webp')}
.tile-1{background-image:url('assets/night-consultation.webp')}
.tile-2{background-image:url('assets/safe-room.webp')}
.tile-3{background-image:url('assets/living-support.webp')}
.tile-4{background-image:url('assets/expert-support.webp')}
.banner.project-tile{background-size:cover;background-position:center;}
.portrait-floral{background:#f7eee8 url('assets/watercolor-florals.webp') center/cover no-repeat;color:transparent}
.watercolor-story{background:#f7eee8 url('assets/new-beginnings.webp') center/cover no-repeat;color:transparent}
.person:nth-child(even) .portrait-floral{background-image:url('assets/recruit-workspace.webp')}
.banner.cover{color:var(--ink);text-shadow:none}
.banner.light{background-image:url('assets/donation-hands.webp')}
@media(max-width:680px){main{background-size:100% auto}.banner{min-height:165px}}

/* 2026-10-25 content revisions */
.project-copy,.history-copy{white-space:pre-line}.history-copy{line-height:2.15}.text-block{line-height:2}.impact-section{max-width:920px;margin:38px auto 26px}.impact-section>h2{text-align:left;font-size:clamp(20px,3vw,27px);margin-bottom:25px}.impact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.impact-card{min-width:0;text-align:center;background:rgba(255,255,255,.7);padding:16px;border-radius:12px}.impact-card h3{font-size:clamp(22px,3vw,29px);margin:0 0 14px}.impact-card img{display:block;width:100%;aspect-ratio:1.35;object-fit:cover;border-radius:6px}.impact-card p{font-size:16px;font-weight:700;margin:13px auto 0}.impact-foot,.tax-note{font-size:12px;color:#575968}.frequency-help{font-weight:700;margin-top:22px!important}.tax-note{margin-top:-8px!important}.body-copy{line-height:2.2}@media(max-width:680px){.impact-grid{gap:9px}.impact-card{padding:8px}.impact-card p{font-size:12px}.impact-card h3{font-size:21px}.impact-section{margin:28px auto}}

/* News & stories: watercolor theme */
.news-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.news-heading h2{margin:0}.news-more,.article-back{font-weight:700;text-underline-offset:4px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.article-card{display:block;overflow:hidden;border-radius:14px;background:rgba(255,255,255,.85);text-decoration:none;box-shadow:0 8px 30px #1a183112;transition:transform .2s ease,box-shadow .2s ease}.article-card:hover{transform:translateY(-3px);box-shadow:0 12px 34px #1a18311e}.article-card img{width:100%;height:175px;object-fit:cover;display:block}.article-card-copy{padding:17px}.article-card h3{margin:6px 0 8px;font-size:18px;line-height:1.5}.article-card p{font-size:13px;line-height:1.8;color:#55556b}.article-category{color:#66705e;font-size:12px;font-weight:700;letter-spacing:.04em}.article-next{font-size:13px;font-weight:700}.article-lead{font-size:16px}.article-demo-note{background:#fff9e9;border-left:3px solid #cfb777;padding:10px 13px;font-size:12px;line-height:1.6;color:#5a5146}.article-filter{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}.article-filter button{padding:7px 15px;border:1px solid #bac5ae;border-radius:99px;background:#ffffffc7;font-size:13px}.article-filter button.active{background:#849678;color:white;border-color:#849678}.article-detail{max-width:850px;margin:0 auto;padding:40px clamp(20px,6vw,65px) 80px}.article-detail h1{font-size:clamp(23px,4vw,36px);line-height:1.5;margin:10px 0 30px}.article-feature-image{display:block;width:100%;aspect-ratio:1.8;object-fit:cover;border-radius:12px}.article-content{font-size:16px;line-height:2.15;margin:30px 0}.article-content p{margin:0 0 1.5em}.article-back{display:inline-block;margin:15px 0}.article-detail .article-category{margin-top:20px}@media(max-width:800px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.article-grid{grid-template-columns:1fr}.article-card img{height:190px}.news-heading{align-items:flex-start}.news-more{font-size:12px}}

/* Mobile only: compact swipeable latest articles on the homepage.
   The full article listing and desktop three-column layout are unchanged. */
@media (max-width: 560px) {
  .news-preview { padding-right: 0; overflow: hidden; }
  .news-preview .news-heading { padding-right: 6%; align-items: center; }
  .news-preview .news-heading h2 { font-size: 20px; }
  .news-preview #latest-articles {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0 20px;
    padding: 4px 20px 18px 0;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }
  .news-preview #latest-articles .article-card {
    flex: 0 0 min(62vw, 220px);
    min-width: 0;
    scroll-snap-align: start;
  }
  .news-preview #latest-articles .article-card img { height: 104px; }
  .news-preview #latest-articles .article-card-copy { padding: 10px 12px 12px; }
  .news-preview #latest-articles .article-card h3 {
    font-size: 13px;
    line-height: 1.5;
    margin: 4px 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .news-preview #latest-articles .article-card p { display: none; }
  .news-preview #latest-articles .article-category,
  .news-preview #latest-articles .article-next { font-size: 10px; }
}

/* Information disclosure page — watercolor variant */
.disclosure-section{padding-top:28px;padding-bottom:80px}.disclosure-lead{margin:0 auto 30px;max-width:780px;text-align:center;font-size:16px}.disclosure-grid{max-width:870px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.disclosure-card{background:rgba(255,255,255,.86);border:1px solid #eee6df;box-shadow:0 9px 30px rgba(77,62,73,.07);border-radius:14px;padding:28px 20px;min-height:265px;display:flex;flex-direction:column}.disclosure-card h2{font-size:20px;line-height:1.5;margin:10px 0}.disclosure-card p{font-size:13px;color:#595963;line-height:1.8}.disclosure-overline{color:#8e997d;font-size:11px;letter-spacing:.08em;font-weight:700}.disclosure-card [data-pdf]{margin-top:auto;padding-top:14px}.disclosure-pending{font-size:13px;color:#797881;background:#f6f3ef;padding:9px 14px;display:inline-block;border-radius:4px}.disclosure-button{display:inline-block;padding:10px 13px;background:#0c0624;color:#fff;text-decoration:none;font-size:13px;font-weight:700;border-radius:4px}.disclosure-button:hover{background:#383050}@media(max-width:760px){.disclosure-grid{grid-template-columns:1fr}.disclosure-card{min-height:210px}.disclosure-section{padding-bottom:48px}}


/* Tonarite approved house-and-hands logo on every page */
.site-header .brand{display:inline-flex;align-items:center;flex-shrink:0;line-height:1;}
.site-header .brand-logo{width:90px;height:78px;object-fit:contain;display:block;}
.site-header{min-height:104px;}
.footer-logo-link{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:10px;padding:7px;margin-bottom:14px;}
.footer-logo{width:124px;height:109px;object-fit:contain;display:block;}
@media(max-width:680px){.site-header{min-height:78px}.site-header .brand-logo{width:66px;height:62px}.footer-logo{width:100px;height:88px}}

/* White footer: blend seamlessly with the white logo background */
.footer{background:#ffffff;color:#171720;}
.footer-inner{background:#ffffff;}
.footer h2,.footer h3,.footer a{color:#171720;}
.footer p{color:#53575d;}
.footer-logo-link{background:#ffffff;border-radius:0;padding:0;}
.footer .copyright,.copyright{background:#ffffff;color:#6d6872;border-top:1px solid #ece8e8;}
.footer a:hover{color:#b95b7b;}
