:root{--ink:#1d1d1f;--muted:#5f6368;--line:#dedbd2;--paper:#f8f7f2;--white:#fff;--amber:#d59b2d;--coral:#c94f36;--teal:#276f68;--charcoal:#23242a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);letter-spacing:0;margin:0;font-family:Inter,Noto Sans JP,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.7}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.siteHeader{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8f7f2e0;border-bottom:1px solid #23242a14;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:18px 48px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;min-width:0;font-weight:700;display:inline-flex}.brandMark{border:4px solid var(--coral);background:var(--amber);width:16px;height:16px;transform:rotate(45deg)}.nav{color:var(--muted);align-items:center;gap:22px;font-size:.92rem;display:flex}.nav a{transition:color .16s}.nav a:hover{color:var(--ink)}.hero{grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);align-items:center;gap:56px;min-height:calc(100vh - 72px);padding:64px 48px 80px;display:grid;overflow:hidden}.heroCopy{max-width:640px}.eyebrow,.sectionLabel{color:var(--teal);text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:800}.hero h1{margin:0;font-size:4rem;font-weight:900;line-height:1.05}.lead{color:#36383d;max-width:580px;margin:24px 0 0;font-size:1.12rem}.heroActions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.button,.contactButton{border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 18px;font-weight:800;line-height:1.2;display:inline-flex}.button.primary{color:var(--white);background:var(--charcoal)}.button.secondary{border:1px solid var(--line);background:#ffffff8c}.heroVisual{border-radius:8px;position:relative;overflow:hidden;box-shadow:0 24px 80px #23242a33}.heroVisual img{aspect-ratio:16/10;object-fit:cover;width:100%}.aboutBand{color:var(--white);background:var(--charcoal);padding:76px 0}.sectionInner{width:min(1120px,100% - 96px);margin:0 auto}.aboutGrid,.contactGrid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:56px;display:grid}h2{margin:0;font-size:2.15rem;line-height:1.25}.aboutText p,.contactGrid p,.sectionHead p,.activityCard p{color:var(--muted);margin:0}.aboutText{gap:18px;display:grid}.aboutBand .sectionLabel{color:#f1be5f}.aboutBand .aboutText p{color:#ffffffc7}.activity{padding:88px 0 48px}.sectionHead{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:end;gap:40px;margin-bottom:34px;display:grid}.cardGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.activityCard{border:1px solid var(--line);background:var(--white);border-radius:8px;min-height:270px;padding:26px}.cardIcon{width:44px;height:44px;color:var(--white);background:var(--teal);border-radius:8px;place-items:center;margin-bottom:24px;display:grid}.activityCard:nth-child(2) .cardIcon{background:var(--coral)}.activityCard:nth-child(3) .cardIcon{background:var(--amber)}.activityCard h3{margin:0 0 12px;font-size:1.25rem;line-height:1.35}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:28px 0 90px;display:grid}.statItem{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:6px;padding:24px;display:grid}.statItem+.statItem{border-left:1px solid var(--line)}.statItem strong{color:var(--coral);font-size:1.4rem;line-height:1.2}.statItem span{color:var(--muted);font-size:.94rem}.contactBand{background:#e8ece6;padding:76px 0}.contactGrid{align-items:center}.contactGrid p{max-width:620px;margin-top:18px}.contactButton{min-width:270px;color:var(--white);background:var(--coral);justify-self:end}.footer{color:var(--muted);background:var(--white);justify-content:center;padding:28px 24px;font-size:.9rem;display:flex}@media (max-width:900px){.siteHeader{padding:16px 24px}.hero{grid-template-columns:1fr;gap:34px;min-height:auto;padding:48px 24px 64px}.hero h1{font-size:3rem}.sectionInner{width:min(100% - 48px,720px)}.aboutGrid,.sectionHead,.contactGrid{grid-template-columns:1fr;gap:28px}.cardGrid,.stats{grid-template-columns:1fr}.activityCard{min-height:auto}.statItem+.statItem{border-top:0;border-left:0}.contactButton{justify-self:stretch}}@media (max-width:560px){.siteHeader{flex-direction:column;align-items:flex-start;gap:12px}.nav{justify-content:space-between;gap:12px;width:100%}.hero h1{font-size:2.55rem}.lead{font-size:1rem}h2{font-size:1.75rem}.heroActions{flex-direction:column}.button{width:100%}}
