:root{--linen:#F4EFE6;--navy:#1B2A4A;--mustard:#E0A526;--brick:#B5452F;--sky:#BFD7EA;--font-head:'Shippori Mincho',serif;--font-body:'Source Serif 4',serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background-color:var(--linen);background-image:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(191,215,234,.5),transparent 70%),radial-gradient(ellipse 80% 50% at 20% 100%,rgba(27,42,74,.08),transparent 70%),repeating-linear-gradient(0deg,rgba(27,42,74,.015) 0px,transparent 2px,transparent 4px);color:var(--navy);font-family:var(--font-body);font-size:16px;line-height:1.7;overflow-x:hidden}h1,h2,h3{font-family:var(--font-head);font-weight:600;margin:0 0 .5em}a{color:var(--brick);text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--mustard);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:50;background:rgba(244,239,230,.92);backdrop-filter:blur(4px);border-bottom:1px solid rgba(27,42,74,.15)}.header-inner{max-width:1100px;margin:0 auto;padding:.7rem 1.2rem;display:flex;align-items:center;gap:1rem}.brand{display:flex;align-items:center;gap:.7rem;flex:1;min-width:0}.brand-mark{position:relative;width:42px;height:42px;flex:none}.brand-logo{width:100%;height:100%;object-fit:contain;border-radius:50%}.brand-mono{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--navy);color:var(--linen);border-radius:50%;font-family:var(--font-head);font-size:1rem}.brand-name{font-family:var(--font-head);font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-vert{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.2em;font-size:.75rem;color:var(--brick);border-left:1px solid var(--brick);padding-left:.4rem;max-height:46px}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer}.menu-toggle span{width:22px;height:2px;background:var(--navy)}.site-nav ul{display:flex;gap:1.6rem;list-style:none;margin:0;padding:0}.site-nav a{font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;padding:.4rem .2rem;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav a[aria-current='page']{border-color:var(--mustard)}@media (max-width:860px){.menu-toggle{display:flex}.site-nav{position:absolute;top:100%;left:0;right:0;background:var(--linen);border-bottom:1px solid rgba(27,42,74,.15);max-height:0;overflow:hidden;transition:max-height .3s ease}body.nav-open .site-nav{max-height:400px}.site-nav ul{flex-direction:column;gap:0;padding:.5rem 1.2rem 1rem}.site-nav a{display:block;padding:.8rem 0}}.ensoscreen{position:relative;min-height:88vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.2rem}.ensowrap{position:relative;width:min(280px,70vw);height:min(280px,70vw);display:flex;align-items:center;justify-content:center}.enso{position:absolute;inset:0;width:100%;height:100%}.enso-ring{stroke:var(--navy);stroke-width:6;stroke-linecap:round;stroke-dasharray:720;stroke-dashoffset:720;animation:drawenso 2.6s ease-out forwards}@keyframes drawenso{to{stroke-dashoffset:60}}.enso-core{position:relative;width:46%;height:46%;border-radius:50%;overflow:hidden;background:var(--navy);display:flex;align-items:center;justify-content:center}.enso-logo{width:100%;height:100%;object-fit:contain}.enso-mono{color:var(--linen);font-family:var(--font-head);font-size:2rem}.org-title{margin-top:2rem;font-size:clamp(1.6rem,5vw,2.6rem)}.org-sub{color:var(--brick);letter-spacing:.15em;text-transform:uppercase;font-size:.85rem}.hanko{position:absolute;right:6%;bottom:8%;width:64px;height:64px;background:var(--brick);color:var(--linen);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-size:1.3rem;box-shadow:0 2px 6px rgba(0,0,0,.3);transform:rotate(-4deg)}.vertical-excerpt{position:absolute;top:8%;right:3%;max-width:160px;display:none}.vert-text{writing-mode:vertical-rl;font-size:.85rem;color:var(--navy);line-height:1.9;max-height:70vh}@media (min-width:1000px){.vertical-excerpt{display:block}}.brush-divider{color:var(--navy);width:min(600px,90%);margin:1rem auto;opacity:.6}.brush-divider svg{width:100%;height:20px}.brush-divider.small{width:min(300px,70%)}.section{max-width:1000px;margin:0 auto;padding:3rem 1.2rem}.section-title{font-size:clamp(1.3rem,3.5vw,1.9rem);position:relative;display:inline-block;margin-bottom:1.8rem}.section-title::after{content:'';display:block;width:50px;height:3px;background:var(--mustard);margin-top:.5rem}.page-title{font-size:clamp(1.8rem,5vw,2.6rem);text-align:center}.hero-sub{text-align:center;padding-bottom:1rem}.count-line{text-align:center;color:var(--brick)}.leaf-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.leaf-card{background:rgba(255,255,255,.5);border:1px solid rgba(27,42,74,.15);border-radius:4px;padding:1.2rem;display:flex;gap:.8rem;align-items:flex-start}.leaf-ico{flex:none;color:var(--navy)}.more-link{display:inline-block;margin-top:1.4rem;font-weight:600;letter-spacing:.06em}.steps{display:grid;gap:2rem}.step{display:flex;gap:1.2rem;align-items:flex-start}.step-circle{flex:none;width:52px;height:52px;border-radius:50%;border:2px solid var(--navy);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-size:1.3rem;background:var(--linen)}.step-text h3{margin-top:0}.philosophy-block{max-width:640px;margin:0 auto}.info-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-card{background:rgba(255,255,255,.5);border:1px solid rgba(27,42,74,.15);padding:1.2rem;border-radius:4px;text-align:center}.info-card h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--brick)}.seal-grid{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.seal-card{text-align:center}.seal-badge{width:110px;height:110px;border-radius:50%;border:3px solid var(--brick);margin:0 auto .8rem;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--sky)}.seal-badge img{width:100%;height:100%;object-fit:cover}.seal-mono{font-family:var(--font-head);font-size:1.8rem;color:var(--navy)}.seal-name{font-weight:600}.seal-pos{color:var(--brick);font-size:.9rem}.empty-state{text-align:center;color:var(--navy);opacity:.7;font-style:italic}.contact-scroll{display:flex;justify-content:center}.scroll-frame{background:linear-gradient(180deg,rgba(255,255,255,.6),rgba(255,255,255,.3));border:2px solid var(--mustard);border-radius:6px;padding:2rem;max-width:560px;width:100%;box-shadow:0 0 0 6px rgba(27,42,74,.06)}.contact-line{padding:1rem 0;border-bottom:1px dashed rgba(27,42,74,.2)}.contact-line:last-child{border-bottom:0}.contact-line h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--brick);margin-bottom:.3rem}.contact-line a{word-break:break-word;overflow-wrap:anywhere}.social-row{display:flex;gap:.7rem;flex-wrap:wrap}.social-row a{width:42px;height:42px;border-radius:50%;background:var(--navy);color:var(--linen);display:flex;align-items:center;justify-content:center}.social-row a:hover{background:var(--brick)}.social-row.large a{width:48px;height:48px}.site-footer{background:#15321f;color:var(--linen);margin-top:3rem;position:relative;padding:2.5rem 1.2rem 1.4rem}.footer-brush{height:4px;background:linear-gradient(90deg,transparent,var(--mustard),transparent);margin-bottom:1.6rem}.footer-inner{max-width:1000px;margin:0 auto;display:grid;gap:2rem;grid-template-columns:auto 1fr auto}.footer-seal{width:64px;height:64px;background:var(--brick);color:var(--linen);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-size:1.4rem;transform:rotate(-3deg);flex:none}.footer-name{font-family:var(--font-head);font-size:1.15rem;margin-bottom:.6rem}.footer-link{display:flex;gap:.5rem;align-items:center;color:var(--sky);word-break:break-word;overflow-wrap:anywhere;padding:.2rem 0}.site-footer a{color:var(--sky)}.footer-label{color:var(--mustard);font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.footer-social .social-row a{background:rgba(244,239,230,.12);color:var(--linen)}.footer-social .social-row a:hover{background:var(--mustard);color:var(--navy)}.footer-nav{display:flex;flex-direction:column;gap:.5rem}.copyright{text-align:center;margin-top:2rem;font-size:.8rem;color:rgba(244,239,230,.7)}@media (max-width:860px){.footer-inner{grid-template-columns:1fr;text-align:center}.footer-seal{margin:0 auto}.footer-link{justify-content:center}.social-row{justify-content:center}}@media (prefers-reduced-motion:reduce){.enso-ring{animation:none;stroke-dashoffset:60}*{transition:none!important;animation-duration:.01ms!important}}
