/* Daruma Ueki: original visual system. Inspired by the supplied component analysis. */
:root{--paper:#fbf8f0;--ink:#28382d;--green:#315a3c;--red:#ae3d2c;--gold:#d7a64a;--line:#dde3d8;--muted:#58665b;--surface:#fff;--sage:#eaf0e4;--soft-shadow:0 2px 4px #28382d06,0 8px 24px #28382d08}
body{background-color:var(--paper);background-image:radial-gradient(#889c7712 .7px,transparent .7px);background-size:16px 16px;color:var(--ink)}
.visual-sprite{position:absolute;width:0;height:0;overflow:hidden}.ui-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle}
.draft{background:#eaf0e4;color:#435945;font-size:11px;letter-spacing:.02em}.site-header{max-width:1280px;padding:24px 40px;min-height:104px}.site-header .brand{color:var(--green)}.site-nav>a{color:var(--ink)}.header-contact{border:0;background:var(--red);box-shadow:none;border-radius:100px}.language-toggle,.menu-toggle{background:#fffdf8;border-color:#cdd7c6;border-radius:12px;color:var(--green)}.language-options{border-color:#d5ddcc;box-shadow:0 10px 32px #28382d16;border-radius:14px}
.hero{padding-top:0}.lantern-line{max-width:1180px;margin:auto;left:32px;right:32px;top:0;height:52px;opacity:.82}.lantern-line>span{border-color:#899b7d;border-width:1px}.lantern{width:25px;height:43px;animation:none}.hero-inner{max-width:1200px;padding:76px 40px 36px;grid-template-columns:1.08fr .92fr;gap:64px}.hero h1,html[lang=en] .hero h1{font-size:clamp(46px,4.5vw,64px);line-height:1.25;letter-spacing:-.04em}.hero h1>span:after{height:7px;bottom:1px;opacity:.65}.hero-eyebrow{margin-bottom:24px;gap:10px;letter-spacing:.02em}.hero-location{background:var(--sage);border-color:#d7e1ce;color:var(--green);padding:5px 12px;font-size:12px}.hero-scope{font-size:12px;color:var(--green)}.hero .lead,html[lang=en] .hero .lead{font-size:16px;line-height:1.9;margin:24px 0;color:#435346}.hero-promises,html[lang=en] .hero-promises{font-size:11px;gap:10px 16px;margin-bottom:28px;color:var(--green)}.hero-promises li:before{color:var(--green)}.hero .english-contact-note{font-size:12px;color:var(--green);margin-bottom:12px}.hero-buttons{gap:16px}.hero-buttons .button{min-height:54px;border:0;border-radius:100px;box-shadow:0 4px 0 #813b2420;padding:15px 22px;gap:10px;font-size:14px}.hero-buttons .button>span{margin-left:8px}.hero-buttons .text-link{font-size:12px;text-underline-offset:5px}.hero-area,html[lang=en] .hero-area{font-size:12px;line-height:1.8;margin-top:24px;max-width:410px}.hero-scene{padding:14px 0 22px;align-self:center}.sun-disc{width:93%;top:0;right:-13px;background:#e9eddc;border-radius:47% 53% 44% 56%;transform:rotate(8deg)}.hero-photo{padding:8px;background:#fff;border:1px solid #d5ddcc;border-radius:180px 180px 18px 18px;transform:rotate(1deg);box-shadow:0 3px 6px #28382d08,0 14px 36px #28382d0c}.hero-image{aspect-ratio:4/4.4;border-radius:170px 170px 12px 12px;object-position:center 59%}.hero-photo figcaption{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 4px 6px;font-size:11px;color:#526149;font-weight:600}.hero-photo figcaption .ui-icon{width:17px;height:17px}.hero-mascot{width:106px;left:-24px;bottom:0;filter:drop-shadow(0 3px 0 #fbf8f0)}.photo-stamp{width:79px;height:79px;right:-18px;top:22px;border:1px solid #bc7d37;background:#fff7e2;color:#7a5423;font-size:12px;line-height:1.5;transform:rotate(8deg);box-shadow:none}.hero-bottom{max-width:1120px;padding:17px 0 24px;border-bottom:1px solid #d5dfcd;font-size:12px;letter-spacing:.03em}.hero-bottom i{color:#bf9855;font-size:6px}
.task-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px;max-width:440px}.task-shortcuts>a{display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:54px;padding:9px 12px;border:1px solid #dce3d4;background:#fffdf8;border-radius:12px;font-size:11px;font-weight:600;color:var(--green);line-height:1.5}.task-shortcuts .ui-icon{width:28px;height:28px;padding:4px;box-sizing:content-box;background:var(--sage);border-radius:9px}.consult-hint{border-color:#d9e1cf;background:#f2f4e8;border-radius:12px;box-shadow:none}
.section{max-width:1200px;padding:76px 40px}.section-head{margin-bottom:32px;gap:28px}.section-head .eyebrow{color:var(--green);font-size:12px;letter-spacing:.08em}.section-head .section-title{color:var(--green)}.section-head .section-title.title-board{color:#fff8e9}.services-section .section-head-mascot{padding-right:100px}.services-section .section-mascot{width:80px;top:8px}.title-sign{padding:0;background:none;background-image:none;border:0;border-radius:0;box-shadow:none;transform:none;font-size:34px!important;line-height:1.35!important;letter-spacing:-.02em}.title-sign:before{display:none}.section-heading-icon{display:block;width:44px;height:44px;background:var(--sage);padding:9px;border-radius:14px;margin-bottom:16px;box-sizing:content-box}.services{gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.services article,.services article:nth-child(2),.services article:nth-child(3){background:#fff;border:1px solid #dde3d8;border-radius:16px;box-shadow:none;padding:26px;display:block}.service-art{margin-bottom:20px;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.service-art>.ui-icon{width:48px;height:48px;padding:10px;border-radius:15px;background:var(--sage);color:var(--green);box-sizing:content-box}.services .number{background:none;border:0;color:#62735a;font-size:12px;width:auto}.services h3{font-size:19px;line-height:1.5;color:var(--green);margin-bottom:12px}.services p{font-size:14px;line-height:1.9}.additional{background:#f0f2e7;border:1px solid #d5dfcd;border-radius:14px;padding:24px;gap:24px}.additional strong{color:var(--green)}
.latest-journal{max-width:1200px;padding:0 40px;margin:48px auto 0}.latest-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;align-items:end;margin-bottom:24px}.journal-kicker{grid-column:1/-1;display:flex;align-items:center;gap:9px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.12em;margin:0}.journal-kicker>.ui-icon{width:22px;height:22px}.latest-heading h2{color:var(--green);font-size:28px;line-height:1.3;letter-spacing:-.02em}.latest-heading>a{color:var(--green);font-size:12px;text-decoration:underline;text-underline-offset:5px}.latest-journal:not(.slider-ready) .latest-track{grid-template-columns:1fr}.latest-card{grid-template-columns:45% 55%;gap:0;background:#fff;border:1px solid #e1e5dc;border-radius:18px;padding:0;overflow:hidden;box-shadow:var(--soft-shadow);min-height:290px}.latest-card>img{display:block;width:100%;height:100%;min-height:290px;aspect-ratio:3/2;object-fit:cover;object-position:50% 45%;border-radius:0}.latest-card .article-card-copy{padding:30px 36px;align-self:center}.article-category{display:inline-flex;align-items:center;min-height:25px;padding:3px 10px;border-radius:100px;background:var(--sage);color:#46623b;font-size:10px;font-weight:600;letter-spacing:.03em}.latest-card h3{font-size:25px;line-height:1.4;color:var(--green);margin:13px 0}.latest-card p{display:block;font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 18px;max-width:50ch}.latest-card .read-more,.article-card .read-more{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:var(--green);font-weight:700;margin-top:4px}.round-arrow{width:27px;height:27px;padding:6px;background:var(--sage);border-radius:100px;box-sizing:content-box}.article-card{background:#fff;border:1px solid #dde3d8;border-radius:16px;box-shadow:var(--soft-shadow)}.article-card>img{border-radius:0;aspect-ratio:3/2}.article-card-copy{padding:24px}.article-card h3{font-size:21px;line-height:1.5;color:var(--green);margin:12px 0}.article-card p{font-size:14px;line-height:1.8}.article-page .article-grid{gap:24px}
.article-page.english-article{max-width:1040px;padding:40px 40px 72px}.article-breadcrumb{font-size:12px;gap:8px;color:var(--green);margin-bottom:20px}.article-breadcrumb .ui-icon{width:18px;height:18px}.back-arrow{transform:rotate(180deg)}.english-article article>.eyebrow{font-size:11px;color:var(--green);letter-spacing:.08em;margin-bottom:16px}.article-page.english-article h1{font-size:46px;line-height:1.25;font-weight:700;letter-spacing:-.035em;color:var(--green);max-width:27ch;margin:0 0 24px}.article-standfirst{font-size:17px;line-height:1.85;color:#526349;max-width:74ch;margin-bottom:28px}.article-cover{margin:0 0 20px}.article-cover>img{aspect-ratio:16/9;border-radius:12px;box-shadow:0 4px 12px #28382d0a}.article-cover figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:12px;max-width:80ch}.english-article .article-body{max-width:720px;margin:0 auto}.english-article .article-body p{font-size:17px;line-height:1.8;letter-spacing:normal;margin:26px 0}.english-article .article-body h2{font-size:28px;line-height:1.4;letter-spacing:-.015em;color:var(--green);margin:56px 0 20px;font-weight:700;scroll-margin-top:120px}.english-article .article-body ul{line-height:1.8;font-size:16px}.english-article .article-gallery{gap:24px;margin:32px 0}.english-article .article-gallery img{border-radius:12px}.english-article .article-gallery figcaption{font-size:12px;line-height:1.75}.article-toc{background:var(--sage);border:1px solid #d4dfca;border-radius:12px;padding:0 24px;margin:36px 0;box-shadow:none}.article-toc summary{display:list-item;list-style:disclosure-closed;padding:21px 0;min-height:44px;color:var(--green);font-size:15px;line-height:1.5}.article-toc[open] summary{list-style:disclosure-open;border-bottom:1px dashed #bbcbb0}.article-toc summary>.ui-icon{width:21px;height:21px;margin:0 8px 0 3px}.article-toc ol{margin:18px 0 22px;padding-left:23px}.article-toc li{padding-left:4px!important;margin:7px 0!important}.article-toc a{font-size:14px;line-height:1.6;padding:6px 0}
.article-share{border-color:#dde3d8;margin:36px auto 24px;max-width:720px;padding-top:24px}.article-share.share-compact{max-width:960px;margin:18px 0 32px;border-top:0;padding-top:0}.share-label{display:flex;align-items:center;gap:8px;color:var(--green);font-size:12px!important;line-height:1.5!important;margin:0 0 12px!important}.share-label .ui-icon{width:18px;height:18px}.share-note{font-size:11px!important;line-height:1.8!important;color:var(--muted)}.share-buttons{gap:8px}.share-buttons a,.share-buttons button{background:#fff;border:1px solid #c9d4c0;border-radius:9px;color:var(--green);min-height:44px;gap:8px;padding:10px 15px;font-size:12px}.share-buttons .ui-icon{width:18px;height:18px}.share-buttons button:disabled{background:#f4f5ed;color:#58694e;border-color:#d9dfd1}.share-compact .share-buttons a,.share-compact .share-buttons button{min-height:44px}.share-buttons .is-copied{background:var(--sage);border-color:var(--green)}.share-status{color:var(--green);font-size:12px!important}.share-fallback input{border-color:#bfceb2;border-radius:8px;background:#fff}
.article-contact-panel{background:#eef3e8;border:1px solid #d8e2ce;border-radius:16px;padding:24px 28px;margin:36px 0}.english-article .article-body .article-contact-heading{display:flex;align-items:center;gap:12px;font-size:20px;line-height:1.5;font-weight:700;color:var(--green);margin:0 0 20px}.article-contact-heading .ui-icon{width:30px;height:30px}.article-contact-panel .article-contact-links{margin:0;gap:12px}.article-contact-panel .article-contact-links a{background:var(--green);border:1px solid var(--green);border-radius:100px;color:#fff;text-decoration:none;padding:12px 18px;font-size:13px}.article-contact-panel .article-contact-links a:last-child{background:#fff;color:var(--green)}.english-article .article-body .article-contact-panel>p:last-child{font-size:12px;margin:18px 0 0}.article-back{font-size:13px;color:var(--green)}
@media(hover:hover) and (pointer:fine){.latest-card,.article-card{transition:box-shadow .2s,border-color .2s}.latest-card:hover,.article-card:hover{border-color:#b3c5a3;box-shadow:0 4px 8px #28382d08,0 14px 32px #28382d10}.round-arrow{transition:transform .2s}.latest-card:hover .round-arrow,.article-card:hover .round-arrow{transform:translateX(2px)}.task-shortcuts>a{transition:background .2s,border-color .2s}.task-shortcuts>a:hover{background:#f0f5e9;border-color:#a8bd98}.hero-buttons .button{transition:background .2s,transform .2s}.hero-buttons .button:hover{transform:translateY(-2px);background:#943425}.share-buttons a:hover,.share-buttons button:not(:disabled):hover{background:var(--sage)}}
@media(min-width:960px){.slider-ready .latest-card{grid-template-columns:1fr}.slider-ready .latest-card>img{min-height:0;height:auto;aspect-ratio:16/9}.slider-ready .latest-card .article-card-copy{padding:24px}.slider-ready .latest-card h3{font-size:21px}}
@media(min-width:601px) and (max-width:1000px){.hero-inner{gap:32px;padding:72px 32px 32px;grid-template-columns:1fr 1fr}.hero h1,html[lang=en] .hero h1{font-size:45px}.hero-scope{font-size:10px}.hero .lead,html[lang=en] .hero .lead{font-size:14px}.hero-photo figcaption{font-size:10px}.hero-mascot{width:90px;left:-13px}.photo-stamp{width:64px;height:64px;font-size:10px;right:-8px}.section,.latest-journal{padding-left:32px;padding-right:32px}.latest-card h3{font-size:22px}.latest-card .article-card-copy{padding:24px}.services article{padding:20px}.services h3{font-size:17px}.services p{font-size:13px}.services-section .section-head-mascot{padding-right:90px}.services-section .section-head-mascot>p{margin-top:18px}.services-section .section-mascot{width:72px}.title-sign{font-size:29px!important}}
@media(max-width:600px){.site-header{padding:18px 20px;min-height:90px}.hero-inner{padding:62px 20px 24px;grid-template-columns:1fr;gap:24px}.hero h1,html[lang=en] .hero h1{font-size:46px;line-height:1.24}.hero-eyebrow{margin-bottom:20px;gap:9px}.hero-location{font-size:10px;padding:4px 9px}.hero-scope{font-size:10px}.hero .lead,html[lang=en] .hero .lead{font-size:15px;line-height:1.9;margin:22px 0}.hero-promises,html[lang=en] .hero-promises{font-size:10px;gap:8px 12px;margin-bottom:22px}.hero-buttons .button{width:100%;font-size:13px;min-height:52px;gap:10px;border-radius:100px;padding:13px 20px}.hero-buttons .button>.ui-icon{width:21px;height:21px}.hero-buttons .text-link{font-size:12px}.hero-area,html[lang=en] .hero-area{font-size:11px;margin-top:20px;line-height:1.85}.hero .english-contact-note{font-size:11px;margin-bottom:12px}.task-shortcuts{margin-top:20px;gap:8px}.task-shortcuts>a{padding:8px 10px;font-size:11px;min-height:53px;border-radius:11px}.task-shortcuts .ui-icon{width:23px;height:23px;padding:5px;border-radius:8px}.hero-scene{margin:0 6px;padding:12px 6px 18px}.hero-photo{padding:7px;transform:rotate(1deg);border-radius:100px 100px 14px 14px}.hero-image{aspect-ratio:4/3;object-position:center 61%;border-radius:94px 94px 9px 9px}.sun-disc{width:94%;top:0;right:-7px}.hero-mascot{width:80px;left:-13px;bottom:2px}.photo-stamp{width:63px;height:63px;top:12px;right:-9px;font-size:10px}.hero-photo figcaption{font-size:10px;padding:11px 3px 4px;gap:6px}.hero-photo figcaption .ui-icon{width:15px;height:15px}.hero-bottom,html[lang=en] .hero-bottom{margin:0 20px;padding:14px 0 20px;font-size:10px;line-height:1.7;gap:4px 0}.hero-bottom i,html[lang=en] .hero-bottom i{padding:0 7px;font-size:5px}.lantern-line{left:20px;right:20px;top:0}.lantern{width:21px;height:37px}.section{padding:52px 20px}.services-section .section-head-mascot{padding-right:68px}.services-section .section-head-mascot>div{padding-top:0}.services-section .section-head-mascot .eyebrow{max-width:none;margin-bottom:16px;font-size:10px}.services-section .section-mascot{width:58px;top:2px}.services-section .title-sign{font-size:26px!important;line-height:1.4!important;padding:0;width:auto;border:0;box-shadow:none}.section-heading-icon{width:30px;height:30px;padding:9px;margin-bottom:14px;border-radius:12px}.services{grid-template-columns:1fr;gap:12px}.services article,.services article:nth-child(2),.services article:nth-child(3){padding:20px;display:grid;grid-template-columns:50px minmax(0,1fr);gap:0 16px;border-radius:14px}.service-art{grid-row:1/3;display:flex;flex-direction:column;gap:8px;margin:0}.service-art>.ui-icon{width:29px;height:29px;padding:10px;border-radius:13px}.services .number{font-size:10px;height:auto}.services h3{font-size:18px;margin:0 0 8px}.services p{font-size:13px;line-height:1.85}.additional{padding:20px;margin-top:20px}.additional strong{font-size:16px}.additional p{font-size:13px}.latest-journal{padding:0 20px;margin:32px auto 0}.latest-heading{margin-bottom:18px;gap:10px 12px}.journal-kicker{font-size:9px;gap:8px;letter-spacing:.1em}.journal-kicker>.ui-icon{width:20px;height:20px}.latest-heading h2{font-size:23px;line-height:1.35}.latest-heading>a{font-size:11px}.latest-card{grid-template-columns:1fr;min-height:0;border-radius:16px}.latest-card>img{height:auto;width:100%;min-height:0;aspect-ratio:16/9;border-radius:0;object-position:50% 45%}.latest-card .article-card-copy{padding:22px}.latest-card h3{font-size:21px;line-height:1.4;margin:12px 0}.latest-card p{font-size:13px;line-height:1.8;margin-bottom:16px}.latest-card .read-more,.article-card .read-more{font-size:12px;gap:10px}.round-arrow{width:18px;height:18px;padding:6px}.article-card-copy{padding:22px}.article-category{font-size:10px;min-height:24px}.article-page.english-article{padding:22px 20px 52px}.article-breadcrumb{font-size:11px;margin-bottom:18px}.english-article article>.eyebrow{font-size:10px;margin-bottom:16px}.article-page.english-article h1{font-size:33px;line-height:1.25;letter-spacing:-.035em;margin-bottom:22px}.article-standfirst{font-size:15px;line-height:1.8;margin-bottom:24px}.article-cover>img{aspect-ratio:3/2;border-radius:12px}.article-cover figcaption{font-size:11px;line-height:1.75;margin-top:10px}.english-article .article-body p{font-size:16px;line-height:1.8;margin:24px 0}.english-article .article-body h2{font-size:25px;line-height:1.4;margin:48px 0 20px}.english-article .article-body ul{font-size:15px;line-height:1.8}.article-toc{padding:0 20px;margin:28px 0}.article-toc summary{padding:18px 0;font-size:14px;line-height:1.5}.article-toc summary>.ui-icon{width:19px;height:19px;margin-right:7px}.article-toc a{font-size:13px;padding:8px 0}.article-share.share-compact{margin:16px 0 28px}.share-compact .share-label{display:none}.share-note{font-size:10px!important;line-height:1.8!important}.share-buttons a,.share-buttons button{padding:9px 11px;font-size:11px;gap:6px;min-height:44px}.share-buttons .ui-icon{width:17px;height:17px}.article-contact-panel{padding:22px 20px;border-radius:14px}.english-article .article-body .article-contact-heading{font-size:19px;gap:10px;margin-bottom:18px}.article-contact-heading .ui-icon{width:26px;height:26px}.article-contact-panel .article-contact-links{display:flex;flex-direction:column;align-items:stretch}.article-contact-panel .article-contact-links a{justify-content:center;text-align:center;font-size:12px;padding:12px 14px;min-height:46px}.english-article .article-body .article-contact-panel>p:last-child{font-size:11px;margin-top:16px}}
@media(max-width:360px){.site-header{padding-left:16px;padding-right:16px}.hero-inner,.section,.latest-journal,.article-page.english-article{padding-left:16px;padding-right:16px}.hero h1,html[lang=en] .hero h1{font-size:41px}.hero-location,.hero-scope{font-size:9px}.task-shortcuts>a{font-size:10px;padding:8px;gap:7px}.task-shortcuts .ui-icon{width:20px;height:20px}.hero-promises,html[lang=en] .hero-promises{gap:7px 9px;font-size:9px}.article-page.english-article h1{font-size:30px}.latest-heading h2{font-size:21px}.latest-card .article-card-copy{padding:20px}.latest-card h3{font-size:20px}.hero-bottom{margin:0 16px}}
@media(prefers-reduced-motion:reduce){.latest-card,.article-card,.round-arrow,.task-shortcuts>a,.hero-buttons .button{transition:none!important}.hero-buttons .button:hover,.latest-card:hover .round-arrow,.article-card:hover .round-arrow{transform:none!important}}
